@voxket-ai/voxket-live 1.0.33 → 1.0.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hooks/useConnectionDetails.d.ts +1 -0
- package/dist/hooks/useSessionLogging.d.ts +2 -1
- package/dist/index.cjs +24 -24
- package/dist/index.js +1563 -1560
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
}
|
|
9
9
|
})();
|
|
10
10
|
|
|
11
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("react"),Ym=require("react-dom"),ta=require("class-variance-authority"),Jm=require("clsx");function Xm(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:()=>t[n]})}}return e.default=t,Object.freeze(e)}const
|
|
11
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("react"),Ym=require("react-dom"),ta=require("class-variance-authority"),Jm=require("clsx");function Xm(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:()=>t[n]})}}return e.default=t,Object.freeze(e)}const p=Xm(B),na=Xm(Ym);function SS(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ns={exports:{}},Ir={};/**
|
|
12
12
|
* @license React
|
|
13
13
|
* react-jsx-runtime.production.js
|
|
14
14
|
*
|
|
@@ -24,13 +24,13 @@
|
|
|
24
24
|
*
|
|
25
25
|
* This source code is licensed under the MIT license found in the
|
|
26
26
|
* LICENSE file in the root directory of this source tree.
|
|
27
|
-
*/var nf;function kS(){return nf||(nf=1,process.env.NODE_ENV!=="production"&&function(){function t(
|
|
27
|
+
*/var nf;function kS(){return nf||(nf=1,process.env.NODE_ENV!=="production"&&function(){function t(I){if(I==null)return null;if(typeof I=="function")return I.$$typeof===S?null:I.displayName||I.name||null;if(typeof I=="string")return I;switch(I){case f:return"Fragment";case v:return"Profiler";case y:return"StrictMode";case b:return"Suspense";case w:return"SuspenseList";case _:return"Activity"}if(typeof I=="object")switch(typeof I.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),I.$$typeof){case g:return"Portal";case T:return(I.displayName||"Context")+".Provider";case C:return(I._context.displayName||"Context")+".Consumer";case k:var j=I.render;return I=I.displayName,I||(I=j.displayName||j.name||"",I=I!==""?"ForwardRef("+I+")":"ForwardRef"),I;case x:return j=I.displayName||null,j!==null?j:t(I.type)||"Memo";case R:j=I._payload,I=I._init;try{return t(I(j))}catch{}}return null}function e(I){return""+I}function n(I){try{e(I);var j=!1}catch{j=!0}if(j){j=console;var W=j.error,Y=typeof Symbol=="function"&&Symbol.toStringTag&&I[Symbol.toStringTag]||I.constructor.name||"Object";return W.call(j,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",Y),e(I)}}function i(I){if(I===f)return"<>";if(typeof I=="object"&&I!==null&&I.$$typeof===R)return"<...>";try{var j=t(I);return j?"<"+j+">":"<...>"}catch{return"<...>"}}function r(){var I=A.A;return I===null?null:I.getOwner()}function s(){return Error("react-stack-top-frame")}function o(I){if(O.call(I,"key")){var j=Object.getOwnPropertyDescriptor(I,"key").get;if(j&&j.isReactWarning)return!1}return I.key!==void 0}function a(I,j){function W(){se||(se=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",j))}W.isReactWarning=!0,Object.defineProperty(I,"key",{get:W,configurable:!0})}function c(){var I=t(this.type);return Q[I]||(Q[I]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),I=this.props.ref,I!==void 0?I:null}function l(I,j,W,Y,J,re,oe,V){return W=re.ref,I={$$typeof:m,type:I,key:j,props:re,_owner:J},(W!==void 0?W:null)!==null?Object.defineProperty(I,"ref",{enumerable:!1,get:c}):Object.defineProperty(I,"ref",{enumerable:!1,value:null}),I._store={},Object.defineProperty(I._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(I,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(I,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:oe}),Object.defineProperty(I,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:V}),Object.freeze&&(Object.freeze(I.props),Object.freeze(I)),I}function u(I,j,W,Y,J,re,oe,V){var q=j.children;if(q!==void 0)if(Y)if(z(q)){for(Y=0;Y<q.length;Y++)d(q[Y]);Object.freeze&&Object.freeze(q)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else d(q);if(O.call(j,"key")){q=t(I);var te=Object.keys(j).filter(function(ae){return ae!=="key"});Y=0<te.length?"{key: someKey, "+te.join(": ..., ")+": ...}":"{key: someKey}",ce[q+Y]||(te=0<te.length?"{"+te.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
|
|
28
28
|
let props = %s;
|
|
29
29
|
<%s {...props} />
|
|
30
30
|
React keys must be passed directly to JSX without using spread:
|
|
31
31
|
let props = %s;
|
|
32
|
-
<%s key={someKey} {...props} />`,Z,q,te,q),ce[q+Z]=!0)}if(q=null,W!==void 0&&(n(W),q=""+W),o(j)&&(n(j.key),q=""+j.key),"key"in j){W={};for(var ee in j)ee!=="key"&&(W[ee]=j[ee])}else W=j;return q&&a(W,typeof A=="function"?A.displayName||A.name||"Unknown":A),l(A,q,re,J,r(),W,oe,V)}function d(A){typeof A=="object"&&A!==null&&A.$$typeof===p&&A._store&&(A._store.validated=1)}var h=B,p=Symbol.for("react.transitional.element"),g=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),v=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),T=Symbol.for("react.context"),k=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),w=Symbol.for("react.suspense_list"),x=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),_=Symbol.for("react.activity"),S=Symbol.for("react.client.reference"),I=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N=Object.prototype.hasOwnProperty,z=Array.isArray,K=console.createTask?console.createTask:function(){return null};h={"react-stack-bottom-frame":function(A){return A()}};var se,Q={},Y=h["react-stack-bottom-frame"].bind(h,s)(),F=K(i(s)),ce={};_r.Fragment=f,_r.jsx=function(A,j,W,Z,J){var re=1e4>I.recentlyCreatedOwnerStacks++;return u(A,j,W,!1,Z,J,re?Error("react-stack-top-frame"):Y,re?K(i(A)):F)},_r.jsxs=function(A,j,W,Z,J){var re=1e4>I.recentlyCreatedOwnerStacks++;return u(A,j,W,!0,Z,J,re?Error("react-stack-top-frame"):Y,re?K(i(A)):F)}}()),_r}var rf;function CS(){return rf||(rf=1,process.env.NODE_ENV==="production"?Ns.exports=TS():Ns.exports=kS()),Ns.exports}var E=CS();function wS(t,e){return e.forEach(function(n){n&&typeof n!="string"&&!Array.isArray(n)&&Object.keys(n).forEach(function(i){if(i!=="default"&&!(i in t)){var r=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(t,i,r.get?r:{enumerable:!0,get:function(){return n[i]}})}})}),Object.freeze(t)}var xS=Object.defineProperty,ES=(t,e,n)=>e in t?xS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sf=(t,e,n)=>ES(t,typeof e!="symbol"?e+"":e,n);let ft=class{constructor(){sf(this,"_locking"),sf(this,"_locks"),this._locking=Promise.resolve(),this._locks=0}isLocked(){return this._locks>0}lock(){this._locks+=1;let e;const n=new Promise(r=>e=()=>{this._locks-=1,r()}),i=this._locking.then(()=>e);return this._locking=this._locking.then(()=>n),i}};function Fe(t,e){if(!t)throw new Error(e)}const PS=34028234663852886e22,RS=-34028234663852886e22,AS=4294967295,IS=2147483647,_S=-2147483648;function ro(t){if(typeof t!="number")throw new Error("invalid int 32: "+typeof t);if(!Number.isInteger(t)||t>IS||t<_S)throw new Error("invalid int 32: "+t)}function Bc(t){if(typeof t!="number")throw new Error("invalid uint 32: "+typeof t);if(!Number.isInteger(t)||t>AS||t<0)throw new Error("invalid uint 32: "+t)}function Qm(t){if(typeof t!="number")throw new Error("invalid float 32: "+typeof t);if(Number.isFinite(t)&&(t>PS||t<RS))throw new Error("invalid float 32: "+t)}const eg=Symbol("@bufbuild/protobuf/enum-type");function MS(t){const e=t[eg];return Fe(e,"missing enum type on enum object"),e}function tg(t,e,n,i){t[eg]=ng(e,n.map(r=>({no:r.no,name:r.name,localName:t[r.no]})))}function ng(t,e,n){const i=Object.create(null),r=Object.create(null),s=[];for(const o of e){const a=ig(o);s.push(a),i[o.name]=a,r[o.no]=a}return{typeName:t,values:s,findName(o){return i[o]},findNumber(o){return r[o]}}}function OS(t,e,n){const i={};for(const r of e){const s=ig(r);i[s.localName]=s.no,i[s.no]=s.localName}return tg(i,t,e),i}function ig(t){return"localName"in t?t:Object.assign(Object.assign({},t),{localName:t.name})}class gu{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,n){const i=this.getType(),r=i.runtime.bin,s=r.makeReadOptions(n);return r.readMessage(this,s.readerFactory(e),e.byteLength,s),this}fromJson(e,n){const i=this.getType(),r=i.runtime.json,s=r.makeReadOptions(n);return r.readMessage(i,e,s,this),this}fromJsonString(e,n){let i;try{i=JSON.parse(e)}catch(r){throw new Error("cannot decode ".concat(this.getType().typeName," from JSON: ").concat(r instanceof Error?r.message:String(r)))}return this.fromJson(i,n)}toBinary(e){const n=this.getType(),i=n.runtime.bin,r=i.makeWriteOptions(e),s=r.writerFactory();return i.writeMessage(this,s,r),s.finish()}toJson(e){const n=this.getType(),i=n.runtime.json,r=i.makeWriteOptions(e);return i.writeMessage(this,r)}toJsonString(e){var n;const i=this.toJson(e);return JSON.stringify(i,null,(n=e==null?void 0:e.prettySpaces)!==null&&n!==void 0?n:0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}}function DS(t,e,n,i){var r;const s=(r=i==null?void 0:i.localName)!==null&&r!==void 0?r:e.substring(e.lastIndexOf(".")+1),o={[s]:function(a){t.util.initFields(this),t.util.initPartial(a,this)}}[s];return Object.setPrototypeOf(o.prototype,new gu),Object.assign(o,{runtime:t,typeName:e,fields:t.util.newFieldList(n),fromBinary(a,c){return new o().fromBinary(a,c)},fromJson(a,c){return new o().fromJson(a,c)},fromJsonString(a,c){return new o().fromJsonString(a,c)},equals(a,c){return t.util.equals(o,a,c)}}),o}function NS(){let t=0,e=0;for(let i=0;i<28;i+=7){let r=this.buf[this.pos++];if(t|=(r&127)<<i,(r&128)==0)return this.assertBounds(),[t,e]}let n=this.buf[this.pos++];if(t|=(n&15)<<28,e=(n&112)>>4,(n&128)==0)return this.assertBounds(),[t,e];for(let i=3;i<=31;i+=7){let r=this.buf[this.pos++];if(e|=(r&127)<<i,(r&128)==0)return this.assertBounds(),[t,e]}throw new Error("invalid varint")}function La(t,e,n){for(let s=0;s<28;s=s+7){const o=t>>>s,a=!(!(o>>>7)&&e==0),c=(a?o|128:o)&255;if(n.push(c),!a)return}const i=t>>>28&15|(e&7)<<4,r=e>>3!=0;if(n.push((r?i|128:i)&255),!!r){for(let s=3;s<31;s=s+7){const o=e>>>s,a=!!(o>>>7),c=(a?o|128:o)&255;if(n.push(c),!a)return}n.push(e>>>31&1)}}const so=4294967296;function of(t){const e=t[0]==="-";e&&(t=t.slice(1));const n=1e6;let i=0,r=0;function s(o,a){const c=Number(t.slice(o,a));r*=n,i=i*n+c,i>=so&&(r=r+(i/so|0),i=i%so)}return s(-24,-18),s(-18,-12),s(-12,-6),s(-6),e?sg(i,r):vu(i,r)}function LS(t,e){let n=vu(t,e);const i=n.hi&2147483648;i&&(n=sg(n.lo,n.hi));const r=rg(n.lo,n.hi);return i?"-"+r:r}function rg(t,e){if({lo:t,hi:e}=VS(t,e),e<=2097151)return String(so*e+t);const n=t&16777215,i=(t>>>24|e<<8)&16777215,r=e>>16&65535;let s=n+i*6777216+r*6710656,o=i+r*8147497,a=r*2;const c=1e7;return s>=c&&(o+=Math.floor(s/c),s%=c),o>=c&&(a+=Math.floor(o/c),o%=c),a.toString()+af(o)+af(s)}function VS(t,e){return{lo:t>>>0,hi:e>>>0}}function vu(t,e){return{lo:t|0,hi:e|0}}function sg(t,e){return e=~e,t?t=~t+1:e+=1,vu(t,e)}const af=t=>{const e=String(t);return"0000000".slice(e.length)+e};function cf(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t=t>>>7;e.push(t)}else{for(let n=0;n<9;n++)e.push(t&127|128),t=t>>7;e.push(1)}}function FS(){let t=this.buf[this.pos++],e=t&127;if((t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<7,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<14,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<21,(t&128)==0)return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let n=5;(t&128)!==0&&n<10;n++)t=this.buf[this.pos++];if((t&128)!=0)throw new Error("invalid varint");return this.assertBounds(),e>>>0}function jS(){const t=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){const r=BigInt("-9223372036854775808"),s=BigInt("9223372036854775807"),o=BigInt("0"),a=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(c){const l=typeof c=="bigint"?c:BigInt(c);if(l>s||l<r)throw new Error("int64 invalid: ".concat(c));return l},uParse(c){const l=typeof c=="bigint"?c:BigInt(c);if(l>a||l<o)throw new Error("uint64 invalid: ".concat(c));return l},enc(c){return t.setBigInt64(0,this.parse(c),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},uEnc(c){return t.setBigInt64(0,this.uParse(c),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},dec(c,l){return t.setInt32(0,c,!0),t.setInt32(4,l,!0),t.getBigInt64(0,!0)},uDec(c,l){return t.setInt32(0,c,!0),t.setInt32(4,l,!0),t.getBigUint64(0,!0)}}}const n=r=>Fe(/^-?[0-9]+$/.test(r),"int64 invalid: ".concat(r)),i=r=>Fe(/^[0-9]+$/.test(r),"uint64 invalid: ".concat(r));return{zero:"0",supported:!1,parse(r){return typeof r!="string"&&(r=r.toString()),n(r),r},uParse(r){return typeof r!="string"&&(r=r.toString()),i(r),r},enc(r){return typeof r!="string"&&(r=r.toString()),n(r),of(r)},uEnc(r){return typeof r!="string"&&(r=r.toString()),i(r),of(r)},dec(r,s){return LS(r,s)},uDec(r,s){return rg(r,s)}}}const _e=jS();var $;(function(t){t[t.DOUBLE=1]="DOUBLE",t[t.FLOAT=2]="FLOAT",t[t.INT64=3]="INT64",t[t.UINT64=4]="UINT64",t[t.INT32=5]="INT32",t[t.FIXED64=6]="FIXED64",t[t.FIXED32=7]="FIXED32",t[t.BOOL=8]="BOOL",t[t.STRING=9]="STRING",t[t.BYTES=12]="BYTES",t[t.UINT32=13]="UINT32",t[t.SFIXED32=15]="SFIXED32",t[t.SFIXED64=16]="SFIXED64",t[t.SINT32=17]="SINT32",t[t.SINT64=18]="SINT64"})($||($={}));var Wn;(function(t){t[t.BIGINT=0]="BIGINT",t[t.STRING=1]="STRING"})(Wn||(Wn={}));function Dn(t,e,n){if(e===n)return!0;if(t==$.BYTES){if(!(e instanceof Uint8Array)||!(n instanceof Uint8Array)||e.length!==n.length)return!1;for(let i=0;i<e.length;i++)if(e[i]!==n[i])return!1;return!0}switch(t){case $.UINT64:case $.FIXED64:case $.INT64:case $.SFIXED64:case $.SINT64:return e==n}return!1}function lr(t,e){switch(t){case $.BOOL:return!1;case $.UINT64:case $.FIXED64:case $.INT64:case $.SFIXED64:case $.SINT64:return e==0?_e.zero:"0";case $.DOUBLE:case $.FLOAT:return 0;case $.BYTES:return new Uint8Array(0);case $.STRING:return"";default:return 0}}function og(t,e){switch(t){case $.BOOL:return e===!1;case $.STRING:return e==="";case $.BYTES:return e instanceof Uint8Array&&!e.byteLength;default:return e==0}}var He;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(He||(He={}));class US{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let r=0;r<this.chunks.length;r++)e+=this.chunks[r].length;let n=new Uint8Array(e),i=0;for(let r=0;r<this.chunks.length;r++)n.set(this.chunks[r],i),i+=this.chunks[r].length;return this.chunks=[],n}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),n=this.stack.pop();if(!n)throw new Error("invalid state, fork stack empty");return this.chunks=n.chunks,this.buf=n.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,n){return this.uint32((e<<3|n)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Bc(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return ro(e),cf(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let n=this.textEncoder.encode(e);return this.uint32(n.byteLength),this.raw(n)}float(e){Qm(e);let n=new Uint8Array(4);return new DataView(n.buffer).setFloat32(0,e,!0),this.raw(n)}double(e){let n=new Uint8Array(8);return new DataView(n.buffer).setFloat64(0,e,!0),this.raw(n)}fixed32(e){Bc(e);let n=new Uint8Array(4);return new DataView(n.buffer).setUint32(0,e,!0),this.raw(n)}sfixed32(e){ro(e);let n=new Uint8Array(4);return new DataView(n.buffer).setInt32(0,e,!0),this.raw(n)}sint32(e){return ro(e),e=(e<<1^e>>31)>>>0,cf(e,this.buf),this}sfixed64(e){let n=new Uint8Array(8),i=new DataView(n.buffer),r=_e.enc(e);return i.setInt32(0,r.lo,!0),i.setInt32(4,r.hi,!0),this.raw(n)}fixed64(e){let n=new Uint8Array(8),i=new DataView(n.buffer),r=_e.uEnc(e);return i.setInt32(0,r.lo,!0),i.setInt32(4,r.hi,!0),this.raw(n)}int64(e){let n=_e.enc(e);return La(n.lo,n.hi,this.buf),this}sint64(e){let n=_e.enc(e),i=n.hi>>31,r=n.lo<<1^i,s=(n.hi<<1|n.lo>>>31)^i;return La(r,s,this.buf),this}uint64(e){let n=_e.uEnc(e);return La(n.lo,n.hi,this.buf),this}}class BS{constructor(e,n){this.varint64=NS,this.uint32=FS,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=n??new TextDecoder}tag(){let e=this.uint32(),n=e>>>3,i=e&7;if(n<=0||i<0||i>5)throw new Error("illegal tag: field no "+n+" wire type "+i);return[n,i]}skip(e,n){let i=this.pos;switch(e){case He.Varint:for(;this.buf[this.pos++]&128;);break;case He.Bit64:this.pos+=4;case He.Bit32:this.pos+=4;break;case He.LengthDelimited:let r=this.uint32();this.pos+=r;break;case He.StartGroup:for(;;){const[s,o]=this.tag();if(o===He.EndGroup){if(n!==void 0&&s!==n)throw new Error("invalid end group tag");break}this.skip(o,s)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(i,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return _e.dec(...this.varint64())}uint64(){return _e.uDec(...this.varint64())}sint64(){let[e,n]=this.varint64(),i=-(e&1);return e=(e>>>1|(n&1)<<31)^i,n=n>>>1^i,_e.dec(e,n)}bool(){let[e,n]=this.varint64();return e!==0||n!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return _e.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return _e.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),n=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(n,n+e)}string(){return this.textDecoder.decode(this.bytes())}}function $S(t,e,n,i){let r;return{typeName:e,extendee:n,get field(){if(!r){const s=typeof i=="function"?i():i;s.name=e.split(".").pop(),s.jsonName="[".concat(e,"]"),r=t.util.newFieldList([s]).list()[0]}return r},runtime:t}}function ag(t){const e=t.field.localName,n=Object.create(null);return n[e]=HS(t),[n,()=>n[e]]}function HS(t){const e=t.field;if(e.repeated)return[];if(e.default!==void 0)return e.default;switch(e.kind){case"enum":return e.T.values[0].no;case"scalar":return lr(e.T,e.L);case"message":const n=e.T,i=new n;return n.fieldWrapper?n.fieldWrapper.unwrapField(i):i;case"map":throw"map fields are not allowed to be extensions"}}function zS(t,e){if(!e.repeated&&(e.kind=="enum"||e.kind=="scalar")){for(let n=t.length-1;n>=0;--n)if(t[n].no==e.no)return[t[n]];return[]}return t.filter(n=>n.no===e.no)}let vn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),ia=[];for(let t=0;t<vn.length;t++)ia[vn[t].charCodeAt(0)]=t;ia[45]=vn.indexOf("+");ia[95]=vn.indexOf("/");const cg={dec(t){let e=t.length*3/4;t[t.length-2]=="="?e-=2:t[t.length-1]=="="&&(e-=1);let n=new Uint8Array(e),i=0,r=0,s,o=0;for(let a=0;a<t.length;a++){if(s=ia[t.charCodeAt(a)],s===void 0)switch(t[a]){case"=":r=0;case`
|
|
33
|
-
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(r){case 0:o=s,r=1;break;case 1:n[i++]=o<<2|(s&48)>>4,o=s,r=2;break;case 2:n[i++]=(o&15)<<4|(s&60)>>2,o=s,r=3;break;case 3:n[i++]=(o&3)<<6|s,r=0;break}}if(r==1)throw Error("invalid base64 string.");return n.subarray(0,i)},enc(t){let e="",n=0,i,r=0;for(let s=0;s<t.length;s++)switch(i=t[s],n){case 0:e+=vn[i>>2],r=(i&3)<<4,n=1;break;case 1:e+=vn[r|i>>4],r=(i&15)<<2,n=2;break;case 2:e+=vn[r|i>>6],e+=vn[i&63],n=0;break}return n&&(e+=vn[r],e+="=",n==1&&(e+="=")),e}};function WS(t,e,n){ug(e,t);const i=e.runtime.bin.makeReadOptions(n),r=zS(t.getType().runtime.bin.listUnknownFields(t),e.field),[s,o]=ag(e);for(const a of r)e.runtime.bin.readField(s,i.readerFactory(a.data),e.field,a.wireType,i);return o()}function qS(t,e,n,i){ug(e,t);const r=e.runtime.bin.makeReadOptions(i),s=e.runtime.bin.makeWriteOptions(i);if(lg(t,e)){const l=t.getType().runtime.bin.listUnknownFields(t).filter(u=>u.no!=e.field.no);t.getType().runtime.bin.discardUnknownFields(t);for(const u of l)t.getType().runtime.bin.onUnknownField(t,u.no,u.wireType,u.data)}const o=s.writerFactory();let a=e.field;!a.opt&&!a.repeated&&(a.kind=="enum"||a.kind=="scalar")&&(a=Object.assign(Object.assign({},e.field),{opt:!0})),e.runtime.bin.writeField(a,n,o,s);const c=r.readerFactory(o.finish());for(;c.pos<c.len;){const[l,u]=c.tag(),d=c.skip(u,l);t.getType().runtime.bin.onUnknownField(t,l,u,d)}}function lg(t,e){const n=t.getType();return e.extendee.typeName===n.typeName&&!!n.runtime.bin.listUnknownFields(t).find(i=>i.no==e.field.no)}function ug(t,e){Fe(t.extendee.typeName==e.getType().typeName,"extension ".concat(t.typeName," can only be applied to message ").concat(t.extendee.typeName))}function dg(t,e){const n=t.localName;if(t.repeated)return e[n].length>0;if(t.oneof)return e[t.oneof.localName].case===n;switch(t.kind){case"enum":case"scalar":return t.opt||t.req?e[n]!==void 0:t.kind=="enum"?e[n]!==t.T.values[0].no:!og(t.T,e[n]);case"message":return e[n]!==void 0;case"map":return Object.keys(e[n]).length>0}}function lf(t,e){const n=t.localName,i=!t.opt&&!t.req;if(t.repeated)e[n]=[];else if(t.oneof)e[t.oneof.localName]={case:void 0};else switch(t.kind){case"map":e[n]={};break;case"enum":e[n]=i?t.T.values[0].no:void 0;break;case"scalar":e[n]=i?lr(t.T,t.L):void 0;break;case"message":e[n]=void 0;break}}function yn(t,e){if(t===null||typeof t!="object"||!Object.getOwnPropertyNames(gu.prototype).every(i=>i in t&&typeof t[i]=="function"))return!1;const n=t.getType();return n===null||typeof n!="function"||!("typeName"in n)||typeof n.typeName!="string"?!1:e===void 0?!0:n.typeName==e.typeName}function fg(t,e){return yn(e)||!t.fieldWrapper?e:t.fieldWrapper.wrapField(e)}$.DOUBLE,$.FLOAT,$.INT64,$.UINT64,$.INT32,$.UINT32,$.BOOL,$.STRING,$.BYTES;const uf={ignoreUnknownFields:!1},df={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function GS(t){return t?Object.assign(Object.assign({},uf),t):uf}function KS(t){return t?Object.assign(Object.assign({},df),t):df}const _o=Symbol(),oo=Symbol();function ZS(){return{makeReadOptions:GS,makeWriteOptions:KS,readMessage(t,e,n,i){if(e==null||Array.isArray(e)||typeof e!="object")throw new Error("cannot decode message ".concat(t.typeName," from JSON: ").concat(Zt(e)));i=i??new t;const r=new Map,s=n.typeRegistry;for(const[o,a]of Object.entries(e)){const c=t.fields.findJsonName(o);if(c){if(c.oneof){if(a===null&&c.kind=="scalar")continue;const l=r.get(c.oneof);if(l!==void 0)throw new Error("cannot decode message ".concat(t.typeName,' from JSON: multiple keys for oneof "').concat(c.oneof.name,'" present: "').concat(l,'", "').concat(o,'"'));r.set(c.oneof,o)}ff(i,a,c,n,t)}else{let l=!1;if(s!=null&&s.findExtension&&o.startsWith("[")&&o.endsWith("]")){const u=s.findExtension(o.substring(1,o.length-1));if(u&&u.extendee.typeName==t.typeName){l=!0;const[d,h]=ag(u);ff(d,a,u.field,n,u),qS(i,u,h(),n)}}if(!l&&!n.ignoreUnknownFields)throw new Error("cannot decode message ".concat(t.typeName,' from JSON: key "').concat(o,'" is unknown'))}}return i},writeMessage(t,e){const n=t.getType(),i={};let r;try{for(r of n.fields.byNumber()){if(!dg(r,t)){if(r.req)throw"required field not set";if(!e.emitDefaultValues||!JS(r))continue}const o=r.oneof?t[r.oneof.localName].value:t[r.localName],a=hf(r,o,e);a!==void 0&&(i[e.useProtoFieldName?r.name:r.jsonName]=a)}const s=e.typeRegistry;if(s!=null&&s.findExtensionFor)for(const o of n.runtime.bin.listUnknownFields(t)){const a=s.findExtensionFor(n.typeName,o.no);if(a&&lg(t,a)){const c=WS(t,a,e),l=hf(a.field,c,e);l!==void 0&&(i[a.field.jsonName]=l)}}}catch(s){const o=r?"cannot encode field ".concat(n.typeName,".").concat(r.name," to JSON"):"cannot encode message ".concat(n.typeName," to JSON"),a=s instanceof Error?s.message:String(s);throw new Error(o+(a.length>0?": ".concat(a):""))}return i},readScalar(t,e,n){return Zr(t,e,n??Wn.BIGINT,!0)},writeScalar(t,e,n){if(e!==void 0&&(n||og(t,e)))return ao(t,e)},debug:Zt}}function Zt(t){if(t===null)return"null";switch(typeof t){case"object":return Array.isArray(t)?"array":"object";case"string":return t.length>100?"string":'"'.concat(t.split('"').join('\\"'),'"');default:return String(t)}}function ff(t,e,n,i,r){let s=n.localName;if(n.repeated){if(Fe(n.kind!="map"),e===null)return;if(!Array.isArray(e))throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e)));const o=t[s];for(const a of e){if(a===null)throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(a)));switch(n.kind){case"message":o.push(n.T.fromJson(a,i));break;case"enum":const c=Va(n.T,a,i.ignoreUnknownFields,!0);c!==oo&&o.push(c);break;case"scalar":try{o.push(Zr(n.T,a,n.L,!0))}catch(l){let u="cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(a));throw l instanceof Error&&l.message.length>0&&(u+=": ".concat(l.message)),new Error(u)}break}}}else if(n.kind=="map"){if(e===null)return;if(typeof e!="object"||Array.isArray(e))throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e)));const o=t[s];for(const[a,c]of Object.entries(e)){if(c===null)throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: map value null"));let l;try{l=YS(n.K,a)}catch(u){let d="cannot decode map key for field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e));throw u instanceof Error&&u.message.length>0&&(d+=": ".concat(u.message)),new Error(d)}switch(n.V.kind){case"message":o[l]=n.V.T.fromJson(c,i);break;case"enum":const u=Va(n.V.T,c,i.ignoreUnknownFields,!0);u!==oo&&(o[l]=u);break;case"scalar":try{o[l]=Zr(n.V.T,c,Wn.BIGINT,!0)}catch(d){let h="cannot decode map value for field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e));throw d instanceof Error&&d.message.length>0&&(h+=": ".concat(d.message)),new Error(h)}break}}}else switch(n.oneof&&(t=t[n.oneof.localName]={case:s},s="value"),n.kind){case"message":const o=n.T;if(e===null&&o.typeName!="google.protobuf.Value")return;let a=t[s];yn(a)?a.fromJson(e,i):(t[s]=a=o.fromJson(e,i),o.fieldWrapper&&!n.oneof&&(t[s]=o.fieldWrapper.unwrapField(a)));break;case"enum":const c=Va(n.T,e,i.ignoreUnknownFields,!1);switch(c){case _o:lf(n,t);break;case oo:break;default:t[s]=c;break}break;case"scalar":try{const l=Zr(n.T,e,n.L,!1);switch(l){case _o:lf(n,t);break;default:t[s]=l;break}}catch(l){let u="cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e));throw l instanceof Error&&l.message.length>0&&(u+=": ".concat(l.message)),new Error(u)}break}}function YS(t,e){if(t===$.BOOL)switch(e){case"true":e=!0;break;case"false":e=!1;break}return Zr(t,e,Wn.BIGINT,!0).toString()}function Zr(t,e,n,i){if(e===null)return i?lr(t,n):_o;switch(t){case $.DOUBLE:case $.FLOAT:if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""||typeof e=="string"&&e.trim().length!==e.length||typeof e!="string"&&typeof e!="number")break;const r=Number(e);if(Number.isNaN(r)||!Number.isFinite(r))break;return t==$.FLOAT&&Qm(r),r;case $.INT32:case $.FIXED32:case $.SFIXED32:case $.SINT32:case $.UINT32:let s;if(typeof e=="number"?s=e:typeof e=="string"&&e.length>0&&e.trim().length===e.length&&(s=Number(e)),s===void 0)break;return t==$.UINT32||t==$.FIXED32?Bc(s):ro(s),s;case $.INT64:case $.SFIXED64:case $.SINT64:if(typeof e!="number"&&typeof e!="string")break;const o=_e.parse(e);return n?o.toString():o;case $.FIXED64:case $.UINT64:if(typeof e!="number"&&typeof e!="string")break;const a=_e.uParse(e);return n?a.toString():a;case $.BOOL:if(typeof e!="boolean")break;return e;case $.STRING:if(typeof e!="string")break;try{encodeURIComponent(e)}catch{throw new Error("invalid UTF8")}return e;case $.BYTES:if(e==="")return new Uint8Array(0);if(typeof e!="string")break;return cg.dec(e)}throw new Error}function Va(t,e,n,i){if(e===null)return t.typeName=="google.protobuf.NullValue"?0:i?t.values[0].no:_o;switch(typeof e){case"number":if(Number.isInteger(e))return e;break;case"string":const r=t.findName(e);if(r!==void 0)return r.no;if(n)return oo;break}throw new Error("cannot decode enum ".concat(t.typeName," from JSON: ").concat(Zt(e)))}function JS(t){return t.repeated||t.kind=="map"?!0:!(t.oneof||t.kind=="message"||t.opt||t.req)}function hf(t,e,n){if(t.kind=="map"){Fe(typeof e=="object"&&e!=null);const i={},r=Object.entries(e);switch(t.V.kind){case"scalar":for(const[o,a]of r)i[o.toString()]=ao(t.V.T,a);break;case"message":for(const[o,a]of r)i[o.toString()]=a.toJson(n);break;case"enum":const s=t.V.T;for(const[o,a]of r)i[o.toString()]=Fa(s,a,n.enumAsInteger);break}return n.emitDefaultValues||r.length>0?i:void 0}if(t.repeated){Fe(Array.isArray(e));const i=[];switch(t.kind){case"scalar":for(let r=0;r<e.length;r++)i.push(ao(t.T,e[r]));break;case"enum":for(let r=0;r<e.length;r++)i.push(Fa(t.T,e[r],n.enumAsInteger));break;case"message":for(let r=0;r<e.length;r++)i.push(e[r].toJson(n));break}return n.emitDefaultValues||i.length>0?i:void 0}switch(t.kind){case"scalar":return ao(t.T,e);case"enum":return Fa(t.T,e,n.enumAsInteger);case"message":return fg(t.T,e).toJson(n)}}function Fa(t,e,n){var i;if(Fe(typeof e=="number"),t.typeName=="google.protobuf.NullValue")return null;if(n)return e;const r=t.findNumber(e);return(i=r==null?void 0:r.name)!==null&&i!==void 0?i:e}function ao(t,e){switch(t){case $.INT32:case $.SFIXED32:case $.SINT32:case $.FIXED32:case $.UINT32:return Fe(typeof e=="number"),e;case $.FLOAT:case $.DOUBLE:return Fe(typeof e=="number"),Number.isNaN(e)?"NaN":e===Number.POSITIVE_INFINITY?"Infinity":e===Number.NEGATIVE_INFINITY?"-Infinity":e;case $.STRING:return Fe(typeof e=="string"),e;case $.BOOL:return Fe(typeof e=="boolean"),e;case $.UINT64:case $.FIXED64:case $.INT64:case $.SFIXED64:case $.SINT64:return Fe(typeof e=="bigint"||typeof e=="string"||typeof e=="number"),e.toString();case $.BYTES:return Fe(e instanceof Uint8Array),cg.enc(e)}}const Ii=Symbol("@bufbuild/protobuf/unknown-fields"),pf={readUnknownFields:!0,readerFactory:t=>new BS(t)},mf={writeUnknownFields:!0,writerFactory:()=>new US};function XS(t){return t?Object.assign(Object.assign({},pf),t):pf}function QS(t){return t?Object.assign(Object.assign({},mf),t):mf}function eT(){return{makeReadOptions:XS,makeWriteOptions:QS,listUnknownFields(t){var e;return(e=t[Ii])!==null&&e!==void 0?e:[]},discardUnknownFields(t){delete t[Ii]},writeUnknownFields(t,e){const i=t[Ii];if(i)for(const r of i)e.tag(r.no,r.wireType).raw(r.data)},onUnknownField(t,e,n,i){const r=t;Array.isArray(r[Ii])||(r[Ii]=[]),r[Ii].push({no:e,wireType:n,data:i})},readMessage(t,e,n,i,r){const s=t.getType(),o=r?e.len:e.pos+n;let a,c;for(;e.pos<o&&([a,c]=e.tag(),!(r===!0&&c==He.EndGroup));){const l=s.fields.find(a);if(!l){const u=e.skip(c,a);i.readUnknownFields&&this.onUnknownField(t,a,c,u);continue}gf(t,e,l,c,i)}if(r&&(c!=He.EndGroup||a!==n))throw new Error("invalid end group tag")},readField:gf,writeMessage(t,e,n){const i=t.getType();for(const r of i.fields.byNumber()){if(!dg(r,t)){if(r.req)throw new Error("cannot encode field ".concat(i.typeName,".").concat(r.name," to binary: required field not set"));continue}const s=r.oneof?t[r.oneof.localName].value:t[r.localName];vf(r,s,e,n)}return n.writeUnknownFields&&this.writeUnknownFields(t,e),e},writeField(t,e,n,i){e!==void 0&&vf(t,e,n,i)}}}function gf(t,e,n,i,r){let{repeated:s,localName:o}=n;switch(n.oneof&&(t=t[n.oneof.localName],t.case!=o&&delete t.value,t.case=o,o="value"),n.kind){case"scalar":case"enum":const a=n.kind=="enum"?$.INT32:n.T;let c=Mo;if(n.kind=="scalar"&&n.L>0&&(c=nT),s){let h=t[o];if(i==He.LengthDelimited&&a!=$.STRING&&a!=$.BYTES){let g=e.uint32()+e.pos;for(;e.pos<g;)h.push(c(e,a))}else h.push(c(e,a))}else t[o]=c(e,a);break;case"message":const l=n.T;s?t[o].push(co(e,new l,r,n)):yn(t[o])?co(e,t[o],r,n):(t[o]=co(e,new l,r,n),l.fieldWrapper&&!n.oneof&&!n.repeated&&(t[o]=l.fieldWrapper.unwrapField(t[o])));break;case"map":let[u,d]=tT(n,e,r);t[o][u]=d;break}}function co(t,e,n,i){const r=e.getType().runtime.bin,s=i==null?void 0:i.delimited;return r.readMessage(e,t,s?i.no:t.uint32(),n,s),e}function tT(t,e,n){const i=e.uint32(),r=e.pos+i;let s,o;for(;e.pos<r;){const[a]=e.tag();switch(a){case 1:s=Mo(e,t.K);break;case 2:switch(t.V.kind){case"scalar":o=Mo(e,t.V.T);break;case"enum":o=e.int32();break;case"message":o=co(e,new t.V.T,n,void 0);break}break}}if(s===void 0&&(s=lr(t.K,Wn.BIGINT)),typeof s!="string"&&typeof s!="number"&&(s=s.toString()),o===void 0)switch(t.V.kind){case"scalar":o=lr(t.V.T,Wn.BIGINT);break;case"enum":o=t.V.T.values[0].no;break;case"message":o=new t.V.T;break}return[s,o]}function nT(t,e){const n=Mo(t,e);return typeof n=="bigint"?n.toString():n}function Mo(t,e){switch(e){case $.STRING:return t.string();case $.BOOL:return t.bool();case $.DOUBLE:return t.double();case $.FLOAT:return t.float();case $.INT32:return t.int32();case $.INT64:return t.int64();case $.UINT64:return t.uint64();case $.FIXED64:return t.fixed64();case $.BYTES:return t.bytes();case $.FIXED32:return t.fixed32();case $.SFIXED32:return t.sfixed32();case $.SFIXED64:return t.sfixed64();case $.SINT64:return t.sint64();case $.UINT32:return t.uint32();case $.SINT32:return t.sint32()}}function vf(t,e,n,i){Fe(e!==void 0);const r=t.repeated;switch(t.kind){case"scalar":case"enum":let s=t.kind=="enum"?$.INT32:t.T;if(r)if(Fe(Array.isArray(e)),t.packed)rT(n,s,t.no,e);else for(const o of e)Yr(n,s,t.no,o);else Yr(n,s,t.no,e);break;case"message":if(r){Fe(Array.isArray(e));for(const o of e)yf(n,i,t,o)}else yf(n,i,t,e);break;case"map":Fe(typeof e=="object"&&e!=null);for(const[o,a]of Object.entries(e))iT(n,i,t,o,a);break}}function iT(t,e,n,i,r){t.tag(n.no,He.LengthDelimited),t.fork();let s=i;switch(n.K){case $.INT32:case $.FIXED32:case $.UINT32:case $.SFIXED32:case $.SINT32:s=Number.parseInt(i);break;case $.BOOL:Fe(i=="true"||i=="false"),s=i=="true";break}switch(Yr(t,n.K,1,s),n.V.kind){case"scalar":Yr(t,n.V.T,2,r);break;case"enum":Yr(t,$.INT32,2,r);break;case"message":Fe(r!==void 0),t.tag(2,He.LengthDelimited).bytes(r.toBinary(e));break}t.join()}function yf(t,e,n,i){const r=fg(n.T,i);n.delimited?t.tag(n.no,He.StartGroup).raw(r.toBinary(e)).tag(n.no,He.EndGroup):t.tag(n.no,He.LengthDelimited).bytes(r.toBinary(e))}function Yr(t,e,n,i){Fe(i!==void 0);let[r,s]=hg(e);t.tag(n,r)[s](i)}function rT(t,e,n,i){if(!i.length)return;t.tag(n,He.LengthDelimited).fork();let[,r]=hg(e);for(let s=0;s<i.length;s++)t[r](i[s]);t.join()}function hg(t){let e=He.Varint;switch(t){case $.BYTES:case $.STRING:e=He.LengthDelimited;break;case $.DOUBLE:case $.FIXED64:case $.SFIXED64:e=He.Bit64;break;case $.FIXED32:case $.SFIXED32:case $.FLOAT:e=He.Bit32;break}const n=$[t].toLowerCase();return[e,n]}function sT(){return{setEnumType:tg,initPartial(t,e){if(t===void 0)return;const n=e.getType();for(const i of n.fields.byMember()){const r=i.localName,s=e,o=t;if(o[r]!=null)switch(i.kind){case"oneof":const a=o[r].case;if(a===void 0)continue;const c=i.findField(a);let l=o[r].value;c&&c.kind=="message"&&!yn(l,c.T)?l=new c.T(l):c&&c.kind==="scalar"&&c.T===$.BYTES&&(l=Mr(l)),s[r]={case:a,value:l};break;case"scalar":case"enum":let u=o[r];i.T===$.BYTES&&(u=i.repeated?u.map(Mr):Mr(u)),s[r]=u;break;case"map":switch(i.V.kind){case"scalar":case"enum":if(i.V.T===$.BYTES)for(const[p,g]of Object.entries(o[r]))s[r][p]=Mr(g);else Object.assign(s[r],o[r]);break;case"message":const h=i.V.T;for(const p of Object.keys(o[r])){let g=o[r][p];h.fieldWrapper||(g=new h(g)),s[r][p]=g}break}break;case"message":const d=i.T;if(i.repeated)s[r]=o[r].map(h=>yn(h,d)?h:new d(h));else{const h=o[r];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?s[r]=Mr(h):s[r]=h:s[r]=yn(h,d)?h:new d(h)}break}}},equals(t,e,n){return e===n?!0:!e||!n?!1:t.fields.byMember().every(i=>{const r=e[i.localName],s=n[i.localName];if(i.repeated){if(r.length!==s.length)return!1;switch(i.kind){case"message":return r.every((o,a)=>i.T.equals(o,s[a]));case"scalar":return r.every((o,a)=>Dn(i.T,o,s[a]));case"enum":return r.every((o,a)=>Dn($.INT32,o,s[a]))}throw new Error("repeated cannot contain ".concat(i.kind))}switch(i.kind){case"message":let o=r,a=s;return i.T.fieldWrapper&&(o!==void 0&&!yn(o)&&(o=i.T.fieldWrapper.wrapField(o)),a!==void 0&&!yn(a)&&(a=i.T.fieldWrapper.wrapField(a))),i.T.equals(o,a);case"enum":return Dn($.INT32,r,s);case"scalar":return Dn(i.T,r,s);case"oneof":if(r.case!==s.case)return!1;const c=i.findField(r.case);if(c===void 0)return!0;switch(c.kind){case"message":return c.T.equals(r.value,s.value);case"enum":return Dn($.INT32,r.value,s.value);case"scalar":return Dn(c.T,r.value,s.value)}throw new Error("oneof cannot contain ".concat(c.kind));case"map":const l=Object.keys(r).concat(Object.keys(s));switch(i.V.kind){case"message":const u=i.V.T;return l.every(h=>u.equals(r[h],s[h]));case"enum":return l.every(h=>Dn($.INT32,r[h],s[h]));case"scalar":const d=i.V.T;return l.every(h=>Dn(d,r[h],s[h]))}break}})},clone(t){const e=t.getType(),n=new e,i=n;for(const r of e.fields.byMember()){const s=t[r.localName];let o;if(r.repeated)o=s.map(Ls);else if(r.kind=="map"){o=i[r.localName];for(const[a,c]of Object.entries(s))o[a]=Ls(c)}else r.kind=="oneof"?o=r.findField(s.case)?{case:s.case,value:Ls(s.value)}:{case:void 0}:o=Ls(s);i[r.localName]=o}for(const r of e.runtime.bin.listUnknownFields(t))e.runtime.bin.onUnknownField(i,r.no,r.wireType,r.data);return n}}}function Ls(t){if(t===void 0)return t;if(yn(t))return t.clone();if(t instanceof Uint8Array){const e=new Uint8Array(t.byteLength);return e.set(t),e}return t}function Mr(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function oT(t,e,n){return{syntax:t,json:ZS(),bin:eT(),util:Object.assign(Object.assign({},sT()),{newFieldList:e,initFields:n}),makeMessageType(i,r,s){return DS(this,i,r,s)},makeEnum:OS,makeEnumType:ng,getEnumType:MS,makeExtension(i,r,s){return $S(this,i,r,s)}}}class aT{constructor(e,n){this._fields=e,this._normalizer=n}findJsonName(e){if(!this.jsonNames){const n={};for(const i of this.list())n[i.jsonName]=n[i.name]=i;this.jsonNames=n}return this.jsonNames[e]}find(e){if(!this.numbers){const n={};for(const i of this.list())n[i.no]=i;this.numbers=n}return this.numbers[e]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((e,n)=>e.no-n.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];const e=this.members;let n;for(const i of this.list())i.oneof?i.oneof!==n&&(n=i.oneof,e.push(n)):e.push(i)}return this.members}}function pg(t,e){const n=mg(t);return e?n:hT(fT(n))}function cT(t){return pg(t,!1)}const lT=mg;function mg(t){let e=!1;const n=[];for(let i=0;i<t.length;i++){let r=t.charAt(i);switch(r){case"_":e=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(r),e=!1;break;default:e&&(e=!1,r=r.toUpperCase()),n.push(r);break}}return n.join("")}const uT=new Set(["constructor","toString","toJSON","valueOf"]),dT=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),gg=t=>"".concat(t,"$"),fT=t=>dT.has(t)?gg(t):t,hT=t=>uT.has(t)?gg(t):t;class pT{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=cT(e)}addField(e){Fe(e.oneof===this,"field ".concat(e.name," not one of ").concat(this.name)),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let n=0;n<this.fields.length;n++)this._lookup[this.fields[n].localName]=this.fields[n]}return this._lookup[e]}}function mT(t,e){var n,i,r,s,o,a;const c=[];let l;for(const u of typeof t=="function"?t():t){const d=u;if(d.localName=pg(u.name,u.oneof!==void 0),d.jsonName=(n=u.jsonName)!==null&&n!==void 0?n:lT(u.name),d.repeated=(i=u.repeated)!==null&&i!==void 0?i:!1,u.kind=="scalar"&&(d.L=(r=u.L)!==null&&r!==void 0?r:Wn.BIGINT),d.delimited=(s=u.delimited)!==null&&s!==void 0?s:!1,d.req=(o=u.req)!==null&&o!==void 0?o:!1,d.opt=(a=u.opt)!==null&&a!==void 0?a:!1,u.packed===void 0&&(d.packed=u.kind=="enum"||u.kind=="scalar"&&u.T!=$.BYTES&&u.T!=$.STRING),u.oneof!==void 0){const h=typeof u.oneof=="string"?u.oneof:u.oneof.name;(!l||l.name!=h)&&(l=new pT(h)),d.oneof=l,l.addField(d)}c.push(d)}return c}const D=oT("proto3",t=>new aT(t,e=>mT(e)),t=>{for(const e of t.getType().fields.byMember()){if(e.opt)continue;const n=e.localName,i=t;if(e.repeated){i[n]=[];continue}switch(e.kind){case"oneof":i[n]={case:void 0};break;case"enum":i[n]=0;break;case"map":i[n]={};break;case"scalar":i[n]=lr(e.T,e.L);break}}});class dt extends gu{constructor(e){super(),this.seconds=_e.zero,this.nanos=0,D.util.initPartial(e,this)}fromJson(e,n){if(typeof e!="string")throw new Error("cannot decode google.protobuf.Timestamp from JSON: ".concat(D.json.debug(e)));const i=e.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);if(!i)throw new Error("cannot decode google.protobuf.Timestamp from JSON: invalid RFC 3339 string");const r=Date.parse(i[1]+"-"+i[2]+"-"+i[3]+"T"+i[4]+":"+i[5]+":"+i[6]+(i[8]?i[8]:"Z"));if(Number.isNaN(r))throw new Error("cannot decode google.protobuf.Timestamp from JSON: invalid RFC 3339 string");if(r<Date.parse("0001-01-01T00:00:00Z")||r>Date.parse("9999-12-31T23:59:59Z"))throw new Error("cannot decode message google.protobuf.Timestamp from JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive");return this.seconds=_e.parse(r/1e3),this.nanos=0,i[7]&&(this.nanos=parseInt("1"+i[7]+"0".repeat(9-i[7].length))-1e9),this}toJson(e){const n=Number(this.seconds)*1e3;if(n<Date.parse("0001-01-01T00:00:00Z")||n>Date.parse("9999-12-31T23:59:59Z"))throw new Error("cannot encode google.protobuf.Timestamp to JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive");if(this.nanos<0)throw new Error("cannot encode google.protobuf.Timestamp to JSON: nanos must not be negative");let i="Z";if(this.nanos>0){const r=(this.nanos+1e9).toString().substring(1);r.substring(3)==="000000"?i="."+r.substring(0,3)+"Z":r.substring(6)==="000"?i="."+r.substring(0,6)+"Z":i="."+r+"Z"}return new Date(n).toISOString().replace(".000Z",i)}toDate(){return new Date(Number(this.seconds)*1e3+Math.ceil(this.nanos/1e6))}static now(){return dt.fromDate(new Date)}static fromDate(e){const n=e.getTime();return new dt({seconds:_e.parse(Math.floor(n/1e3)),nanos:n%1e3*1e6})}static fromBinary(e,n){return new dt().fromBinary(e,n)}static fromJson(e,n){return new dt().fromJson(e,n)}static fromJsonString(e,n){return new dt().fromJsonString(e,n)}static equals(e,n){return D.util.equals(dt,e,n)}}dt.runtime=D;dt.typeName="google.protobuf.Timestamp";dt.fields=D.util.newFieldList(()=>[{no:1,name:"seconds",kind:"scalar",T:3},{no:2,name:"nanos",kind:"scalar",T:5}]);const gT=D.makeMessageType("livekit.MetricsBatch",()=>[{no:1,name:"timestamp_ms",kind:"scalar",T:3},{no:2,name:"normalized_timestamp",kind:"message",T:dt},{no:3,name:"str_data",kind:"scalar",T:9,repeated:!0},{no:4,name:"time_series",kind:"message",T:vT,repeated:!0},{no:5,name:"events",kind:"message",T:bT,repeated:!0}]),vT=D.makeMessageType("livekit.TimeSeriesMetric",()=>[{no:1,name:"label",kind:"scalar",T:13},{no:2,name:"participant_identity",kind:"scalar",T:13},{no:3,name:"track_sid",kind:"scalar",T:13},{no:4,name:"samples",kind:"message",T:yT,repeated:!0},{no:5,name:"rid",kind:"scalar",T:13}]),yT=D.makeMessageType("livekit.MetricSample",()=>[{no:1,name:"timestamp_ms",kind:"scalar",T:3},{no:2,name:"normalized_timestamp",kind:"message",T:dt},{no:3,name:"value",kind:"scalar",T:2}]),bT=D.makeMessageType("livekit.EventMetric",()=>[{no:1,name:"label",kind:"scalar",T:13},{no:2,name:"participant_identity",kind:"scalar",T:13},{no:3,name:"track_sid",kind:"scalar",T:13},{no:4,name:"start_timestamp_ms",kind:"scalar",T:3},{no:5,name:"end_timestamp_ms",kind:"scalar",T:3,opt:!0},{no:6,name:"normalized_start_timestamp",kind:"message",T:dt},{no:7,name:"normalized_end_timestamp",kind:"message",T:dt,opt:!0},{no:8,name:"metadata",kind:"scalar",T:9},{no:9,name:"rid",kind:"scalar",T:13}]),vg=D.makeEnum("livekit.BackupCodecPolicy",[{no:0,name:"PREFER_REGRESSION"},{no:1,name:"SIMULCAST"},{no:2,name:"REGRESSION"}]),Ut=D.makeEnum("livekit.TrackType",[{no:0,name:"AUDIO"},{no:1,name:"VIDEO"},{no:2,name:"DATA"}]),Ge=D.makeEnum("livekit.TrackSource",[{no:0,name:"UNKNOWN"},{no:1,name:"CAMERA"},{no:2,name:"MICROPHONE"},{no:3,name:"SCREEN_SHARE"},{no:4,name:"SCREEN_SHARE_AUDIO"}]),yu=D.makeEnum("livekit.VideoQuality",[{no:0,name:"LOW"},{no:1,name:"MEDIUM"},{no:2,name:"HIGH"},{no:3,name:"OFF"}]),Hr=D.makeEnum("livekit.ConnectionQuality",[{no:0,name:"POOR"},{no:1,name:"GOOD"},{no:2,name:"EXCELLENT"},{no:3,name:"LOST"}]),rs=D.makeEnum("livekit.ClientConfigSetting",[{no:0,name:"UNSET"},{no:1,name:"DISABLED"},{no:2,name:"ENABLED"}]),$t=D.makeEnum("livekit.DisconnectReason",[{no:0,name:"UNKNOWN_REASON"},{no:1,name:"CLIENT_INITIATED"},{no:2,name:"DUPLICATE_IDENTITY"},{no:3,name:"SERVER_SHUTDOWN"},{no:4,name:"PARTICIPANT_REMOVED"},{no:5,name:"ROOM_DELETED"},{no:6,name:"STATE_MISMATCH"},{no:7,name:"JOIN_FAILURE"},{no:8,name:"MIGRATION"},{no:9,name:"SIGNAL_CLOSE"},{no:10,name:"ROOM_CLOSED"},{no:11,name:"USER_UNAVAILABLE"},{no:12,name:"USER_REJECTED"},{no:13,name:"SIP_TRUNK_FAILURE"},{no:14,name:"CONNECTION_TIMEOUT"},{no:15,name:"MEDIA_FAILURE"}]),_i=D.makeEnum("livekit.ReconnectReason",[{no:0,name:"RR_UNKNOWN"},{no:1,name:"RR_SIGNAL_DISCONNECTED"},{no:2,name:"RR_PUBLISHER_FAILED"},{no:3,name:"RR_SUBSCRIBER_FAILED"},{no:4,name:"RR_SWITCH_CANDIDATE"}]),ST=D.makeEnum("livekit.SubscriptionError",[{no:0,name:"SE_UNKNOWN"},{no:1,name:"SE_CODEC_UNSUPPORTED"},{no:2,name:"SE_TRACK_NOTFOUND"}]),et=D.makeEnum("livekit.AudioTrackFeature",[{no:0,name:"TF_STEREO"},{no:1,name:"TF_NO_DTX"},{no:2,name:"TF_AUTO_GAIN_CONTROL"},{no:3,name:"TF_ECHO_CANCELLATION"},{no:4,name:"TF_NOISE_SUPPRESSION"},{no:5,name:"TF_ENHANCED_NOISE_CANCELLATION"},{no:6,name:"TF_PRECONNECT_BUFFER"}]),ra=D.makeMessageType("livekit.Room",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"name",kind:"scalar",T:9},{no:3,name:"empty_timeout",kind:"scalar",T:13},{no:14,name:"departure_timeout",kind:"scalar",T:13},{no:4,name:"max_participants",kind:"scalar",T:13},{no:5,name:"creation_time",kind:"scalar",T:3},{no:15,name:"creation_time_ms",kind:"scalar",T:3},{no:6,name:"turn_password",kind:"scalar",T:9},{no:7,name:"enabled_codecs",kind:"message",T:Oo,repeated:!0},{no:8,name:"metadata",kind:"scalar",T:9},{no:9,name:"num_participants",kind:"scalar",T:13},{no:11,name:"num_publishers",kind:"scalar",T:13},{no:10,name:"active_recording",kind:"scalar",T:8},{no:13,name:"version",kind:"message",T:Ig}]),Oo=D.makeMessageType("livekit.Codec",()=>[{no:1,name:"mime",kind:"scalar",T:9},{no:2,name:"fmtp_line",kind:"scalar",T:9}]),TT=D.makeMessageType("livekit.ParticipantPermission",()=>[{no:1,name:"can_subscribe",kind:"scalar",T:8},{no:2,name:"can_publish",kind:"scalar",T:8},{no:3,name:"can_publish_data",kind:"scalar",T:8},{no:9,name:"can_publish_sources",kind:"enum",T:D.getEnumType(Ge),repeated:!0},{no:7,name:"hidden",kind:"scalar",T:8},{no:8,name:"recorder",kind:"scalar",T:8},{no:10,name:"can_update_metadata",kind:"scalar",T:8},{no:11,name:"agent",kind:"scalar",T:8},{no:12,name:"can_subscribe_metrics",kind:"scalar",T:8}]),yi=D.makeMessageType("livekit.ParticipantInfo",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"identity",kind:"scalar",T:9},{no:3,name:"state",kind:"enum",T:D.getEnumType(Xi)},{no:4,name:"tracks",kind:"message",T:Hi,repeated:!0},{no:5,name:"metadata",kind:"scalar",T:9},{no:6,name:"joined_at",kind:"scalar",T:3},{no:17,name:"joined_at_ms",kind:"scalar",T:3},{no:9,name:"name",kind:"scalar",T:9},{no:10,name:"version",kind:"scalar",T:13},{no:11,name:"permission",kind:"message",T:TT},{no:12,name:"region",kind:"scalar",T:9},{no:13,name:"is_publisher",kind:"scalar",T:8},{no:14,name:"kind",kind:"enum",T:D.getEnumType(bi)},{no:15,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}},{no:16,name:"disconnect_reason",kind:"enum",T:D.getEnumType($t)},{no:18,name:"kind_details",kind:"enum",T:D.getEnumType(kT),repeated:!0}]),Xi=D.makeEnum("livekit.ParticipantInfo.State",[{no:0,name:"JOINING"},{no:1,name:"JOINED"},{no:2,name:"ACTIVE"},{no:3,name:"DISCONNECTED"}]),bi=D.makeEnum("livekit.ParticipantInfo.Kind",[{no:0,name:"STANDARD"},{no:1,name:"INGRESS"},{no:2,name:"EGRESS"},{no:3,name:"SIP"},{no:4,name:"AGENT"}]),kT=D.makeEnum("livekit.ParticipantInfo.KindDetail",[{no:0,name:"CLOUD_AGENT"},{no:1,name:"FORWARDED"}]),yt=D.makeEnum("livekit.Encryption.Type",[{no:0,name:"NONE"},{no:1,name:"GCM"},{no:2,name:"CUSTOM"}]),CT=D.makeMessageType("livekit.SimulcastCodecInfo",()=>[{no:1,name:"mime_type",kind:"scalar",T:9},{no:2,name:"mid",kind:"scalar",T:9},{no:3,name:"cid",kind:"scalar",T:9},{no:4,name:"layers",kind:"message",T:pi,repeated:!0}]),Hi=D.makeMessageType("livekit.TrackInfo",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"type",kind:"enum",T:D.getEnumType(Ut)},{no:3,name:"name",kind:"scalar",T:9},{no:4,name:"muted",kind:"scalar",T:8},{no:5,name:"width",kind:"scalar",T:13},{no:6,name:"height",kind:"scalar",T:13},{no:7,name:"simulcast",kind:"scalar",T:8},{no:8,name:"disable_dtx",kind:"scalar",T:8},{no:9,name:"source",kind:"enum",T:D.getEnumType(Ge)},{no:10,name:"layers",kind:"message",T:pi,repeated:!0},{no:11,name:"mime_type",kind:"scalar",T:9},{no:12,name:"mid",kind:"scalar",T:9},{no:13,name:"codecs",kind:"message",T:CT,repeated:!0},{no:14,name:"stereo",kind:"scalar",T:8},{no:15,name:"disable_red",kind:"scalar",T:8},{no:16,name:"encryption",kind:"enum",T:D.getEnumType(yt)},{no:17,name:"stream",kind:"scalar",T:9},{no:18,name:"version",kind:"message",T:Ig},{no:19,name:"audio_features",kind:"enum",T:D.getEnumType(et),repeated:!0},{no:20,name:"backup_codec_policy",kind:"enum",T:D.getEnumType(vg)}]),pi=D.makeMessageType("livekit.VideoLayer",()=>[{no:1,name:"quality",kind:"enum",T:D.getEnumType(yu)},{no:2,name:"width",kind:"scalar",T:13},{no:3,name:"height",kind:"scalar",T:13},{no:4,name:"bitrate",kind:"scalar",T:13},{no:5,name:"ssrc",kind:"scalar",T:13}]),ut=D.makeMessageType("livekit.DataPacket",()=>[{no:1,name:"kind",kind:"enum",T:D.getEnumType(fe)},{no:4,name:"participant_identity",kind:"scalar",T:9},{no:5,name:"destination_identities",kind:"scalar",T:9,repeated:!0},{no:2,name:"user",kind:"message",T:bg,oneof:"value"},{no:3,name:"speaker",kind:"message",T:wT,oneof:"value"},{no:6,name:"sip_dtmf",kind:"message",T:Sg,oneof:"value"},{no:7,name:"transcription",kind:"message",T:xT,oneof:"value"},{no:8,name:"metrics",kind:"message",T:gT,oneof:"value"},{no:9,name:"chat_message",kind:"message",T:$c,oneof:"value"},{no:10,name:"rpc_request",kind:"message",T:Tg,oneof:"value"},{no:11,name:"rpc_ack",kind:"message",T:kg,oneof:"value"},{no:12,name:"rpc_response",kind:"message",T:Cg,oneof:"value"},{no:13,name:"stream_header",kind:"message",T:zc,oneof:"value"},{no:14,name:"stream_chunk",kind:"message",T:Wc,oneof:"value"},{no:15,name:"stream_trailer",kind:"message",T:qc,oneof:"value"},{no:16,name:"sequence",kind:"scalar",T:13},{no:17,name:"participant_sid",kind:"scalar",T:9}]),fe=D.makeEnum("livekit.DataPacket.Kind",[{no:0,name:"RELIABLE"},{no:1,name:"LOSSY"}]),wT=D.makeMessageType("livekit.ActiveSpeakerUpdate",()=>[{no:1,name:"speakers",kind:"message",T:yg,repeated:!0}]),yg=D.makeMessageType("livekit.SpeakerInfo",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"level",kind:"scalar",T:2},{no:3,name:"active",kind:"scalar",T:8}]),bg=D.makeMessageType("livekit.UserPacket",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:5,name:"participant_identity",kind:"scalar",T:9},{no:2,name:"payload",kind:"scalar",T:12},{no:3,name:"destination_sids",kind:"scalar",T:9,repeated:!0},{no:6,name:"destination_identities",kind:"scalar",T:9,repeated:!0},{no:4,name:"topic",kind:"scalar",T:9,opt:!0},{no:8,name:"id",kind:"scalar",T:9,opt:!0},{no:9,name:"start_time",kind:"scalar",T:4,opt:!0},{no:10,name:"end_time",kind:"scalar",T:4,opt:!0},{no:11,name:"nonce",kind:"scalar",T:12}]),Sg=D.makeMessageType("livekit.SipDTMF",()=>[{no:3,name:"code",kind:"scalar",T:13},{no:4,name:"digit",kind:"scalar",T:9}]),xT=D.makeMessageType("livekit.Transcription",()=>[{no:2,name:"transcribed_participant_identity",kind:"scalar",T:9},{no:3,name:"track_id",kind:"scalar",T:9},{no:4,name:"segments",kind:"message",T:ET,repeated:!0}]),ET=D.makeMessageType("livekit.TranscriptionSegment",()=>[{no:1,name:"id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"start_time",kind:"scalar",T:4},{no:4,name:"end_time",kind:"scalar",T:4},{no:5,name:"final",kind:"scalar",T:8},{no:6,name:"language",kind:"scalar",T:9}]),$c=D.makeMessageType("livekit.ChatMessage",()=>[{no:1,name:"id",kind:"scalar",T:9},{no:2,name:"timestamp",kind:"scalar",T:3},{no:3,name:"edit_timestamp",kind:"scalar",T:3,opt:!0},{no:4,name:"message",kind:"scalar",T:9},{no:5,name:"deleted",kind:"scalar",T:8},{no:6,name:"generated",kind:"scalar",T:8}]),Tg=D.makeMessageType("livekit.RpcRequest",()=>[{no:1,name:"id",kind:"scalar",T:9},{no:2,name:"method",kind:"scalar",T:9},{no:3,name:"payload",kind:"scalar",T:9},{no:4,name:"response_timeout_ms",kind:"scalar",T:13},{no:5,name:"version",kind:"scalar",T:13}]),kg=D.makeMessageType("livekit.RpcAck",()=>[{no:1,name:"request_id",kind:"scalar",T:9}]),Cg=D.makeMessageType("livekit.RpcResponse",()=>[{no:1,name:"request_id",kind:"scalar",T:9},{no:2,name:"payload",kind:"scalar",T:9,oneof:"value"},{no:3,name:"error",kind:"message",T:wg,oneof:"value"}]),wg=D.makeMessageType("livekit.RpcError",()=>[{no:1,name:"code",kind:"scalar",T:13},{no:2,name:"message",kind:"scalar",T:9},{no:3,name:"data",kind:"scalar",T:9}]),xg=D.makeMessageType("livekit.ParticipantTracks",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"track_sids",kind:"scalar",T:9,repeated:!0}]),Eg=D.makeMessageType("livekit.ServerInfo",()=>[{no:1,name:"edition",kind:"enum",T:D.getEnumType(Pg)},{no:2,name:"version",kind:"scalar",T:9},{no:3,name:"protocol",kind:"scalar",T:5},{no:4,name:"region",kind:"scalar",T:9},{no:5,name:"node_id",kind:"scalar",T:9},{no:6,name:"debug_info",kind:"scalar",T:9},{no:7,name:"agent_protocol",kind:"scalar",T:5}]),Pg=D.makeEnum("livekit.ServerInfo.Edition",[{no:0,name:"Standard"},{no:1,name:"Cloud"}]),PT=D.makeMessageType("livekit.ClientInfo",()=>[{no:1,name:"sdk",kind:"enum",T:D.getEnumType(Rg)},{no:2,name:"version",kind:"scalar",T:9},{no:3,name:"protocol",kind:"scalar",T:5},{no:4,name:"os",kind:"scalar",T:9},{no:5,name:"os_version",kind:"scalar",T:9},{no:6,name:"device_model",kind:"scalar",T:9},{no:7,name:"browser",kind:"scalar",T:9},{no:8,name:"browser_version",kind:"scalar",T:9},{no:9,name:"address",kind:"scalar",T:9},{no:10,name:"network",kind:"scalar",T:9},{no:11,name:"other_sdks",kind:"scalar",T:9}]),Rg=D.makeEnum("livekit.ClientInfo.SDK",[{no:0,name:"UNKNOWN"},{no:1,name:"JS"},{no:2,name:"SWIFT"},{no:3,name:"ANDROID"},{no:4,name:"FLUTTER"},{no:5,name:"GO"},{no:6,name:"UNITY"},{no:7,name:"REACT_NATIVE"},{no:8,name:"RUST"},{no:9,name:"PYTHON"},{no:10,name:"CPP"},{no:11,name:"UNITY_WEB"},{no:12,name:"NODE"},{no:13,name:"UNREAL"}]),Ag=D.makeMessageType("livekit.ClientConfiguration",()=>[{no:1,name:"video",kind:"message",T:bf},{no:2,name:"screen",kind:"message",T:bf},{no:3,name:"resume_connection",kind:"enum",T:D.getEnumType(rs)},{no:4,name:"disabled_codecs",kind:"message",T:RT},{no:5,name:"force_relay",kind:"enum",T:D.getEnumType(rs)}]),bf=D.makeMessageType("livekit.VideoConfiguration",()=>[{no:1,name:"hardware_encoder",kind:"enum",T:D.getEnumType(rs)}]),RT=D.makeMessageType("livekit.DisabledCodecs",()=>[{no:1,name:"codecs",kind:"message",T:Oo,repeated:!0},{no:2,name:"publish",kind:"message",T:Oo,repeated:!0}]),Ig=D.makeMessageType("livekit.TimedVersion",()=>[{no:1,name:"unix_micro",kind:"scalar",T:3},{no:2,name:"ticks",kind:"scalar",T:5}]),Hc=D.makeEnum("livekit.DataStream.OperationType",[{no:0,name:"CREATE"},{no:1,name:"UPDATE"},{no:2,name:"DELETE"},{no:3,name:"REACTION"}]),_g=D.makeMessageType("livekit.DataStream.TextHeader",()=>[{no:1,name:"operation_type",kind:"enum",T:D.getEnumType(Hc)},{no:2,name:"version",kind:"scalar",T:5},{no:3,name:"reply_to_stream_id",kind:"scalar",T:9},{no:4,name:"attached_stream_ids",kind:"scalar",T:9,repeated:!0},{no:5,name:"generated",kind:"scalar",T:8}],{localName:"DataStream_TextHeader"}),Mg=D.makeMessageType("livekit.DataStream.ByteHeader",()=>[{no:1,name:"name",kind:"scalar",T:9}],{localName:"DataStream_ByteHeader"}),zc=D.makeMessageType("livekit.DataStream.Header",()=>[{no:1,name:"stream_id",kind:"scalar",T:9},{no:2,name:"timestamp",kind:"scalar",T:3},{no:3,name:"topic",kind:"scalar",T:9},{no:4,name:"mime_type",kind:"scalar",T:9},{no:5,name:"total_length",kind:"scalar",T:4,opt:!0},{no:7,name:"encryption_type",kind:"enum",T:D.getEnumType(yt)},{no:8,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}},{no:9,name:"text_header",kind:"message",T:_g,oneof:"content_header"},{no:10,name:"byte_header",kind:"message",T:Mg,oneof:"content_header"}],{localName:"DataStream_Header"}),Wc=D.makeMessageType("livekit.DataStream.Chunk",()=>[{no:1,name:"stream_id",kind:"scalar",T:9},{no:2,name:"chunk_index",kind:"scalar",T:4},{no:3,name:"content",kind:"scalar",T:12},{no:4,name:"version",kind:"scalar",T:5},{no:5,name:"iv",kind:"scalar",T:12,opt:!0}],{localName:"DataStream_Chunk"}),qc=D.makeMessageType("livekit.DataStream.Trailer",()=>[{no:1,name:"stream_id",kind:"scalar",T:9},{no:2,name:"reason",kind:"scalar",T:9},{no:3,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}}],{localName:"DataStream_Trailer"}),Bt=D.makeEnum("livekit.SignalTarget",[{no:0,name:"PUBLISHER"},{no:1,name:"SUBSCRIBER"}]),Gc=D.makeEnum("livekit.StreamState",[{no:0,name:"ACTIVE"},{no:1,name:"PAUSED"}]),AT=D.makeEnum("livekit.CandidateProtocol",[{no:0,name:"UDP"},{no:1,name:"TCP"},{no:2,name:"TLS"}]),IT=D.makeMessageType("livekit.SignalRequest",()=>[{no:1,name:"offer",kind:"message",T:Si,oneof:"message"},{no:2,name:"answer",kind:"message",T:Si,oneof:"message"},{no:3,name:"trickle",kind:"message",T:bu,oneof:"message"},{no:4,name:"add_track",kind:"message",T:Zc,oneof:"message"},{no:5,name:"mute",kind:"message",T:Su,oneof:"message"},{no:6,name:"subscription",kind:"message",T:sa,oneof:"message"},{no:7,name:"track_setting",kind:"message",T:Og,oneof:"message"},{no:8,name:"leave",kind:"message",T:oa,oneof:"message"},{no:10,name:"update_layers",kind:"message",T:Ng,oneof:"message"},{no:11,name:"subscription_permission",kind:"message",T:jg,oneof:"message"},{no:12,name:"sync_state",kind:"message",T:Ug,oneof:"message"},{no:13,name:"simulate",kind:"message",T:Kt,oneof:"message"},{no:14,name:"ping",kind:"scalar",T:3,oneof:"message"},{no:15,name:"update_metadata",kind:"message",T:Lg,oneof:"message"},{no:16,name:"ping_req",kind:"message",T:Hg,oneof:"message"},{no:17,name:"update_audio_track",kind:"message",T:Dg,oneof:"message"},{no:18,name:"update_video_track",kind:"message",T:NT,oneof:"message"}]),Sf=D.makeMessageType("livekit.SignalResponse",()=>[{no:1,name:"join",kind:"message",T:_T,oneof:"message"},{no:2,name:"answer",kind:"message",T:Si,oneof:"message"},{no:3,name:"offer",kind:"message",T:Si,oneof:"message"},{no:4,name:"trickle",kind:"message",T:bu,oneof:"message"},{no:5,name:"update",kind:"message",T:DT,oneof:"message"},{no:6,name:"track_published",kind:"message",T:Tu,oneof:"message"},{no:8,name:"leave",kind:"message",T:oa,oneof:"message"},{no:9,name:"mute",kind:"message",T:Su,oneof:"message"},{no:10,name:"speakers_changed",kind:"message",T:LT,oneof:"message"},{no:11,name:"room_update",kind:"message",T:VT,oneof:"message"},{no:12,name:"connection_quality",kind:"message",T:jT,oneof:"message"},{no:13,name:"stream_state_update",kind:"message",T:BT,oneof:"message"},{no:14,name:"subscribed_quality_update",kind:"message",T:HT,oneof:"message"},{no:15,name:"subscription_permission_update",kind:"message",T:zT,oneof:"message"},{no:16,name:"refresh_token",kind:"scalar",T:9,oneof:"message"},{no:17,name:"track_unpublished",kind:"message",T:OT,oneof:"message"},{no:18,name:"pong",kind:"scalar",T:3,oneof:"message"},{no:19,name:"reconnect",kind:"message",T:MT,oneof:"message"},{no:20,name:"pong_resp",kind:"message",T:qT,oneof:"message"},{no:21,name:"subscription_response",kind:"message",T:ZT,oneof:"message"},{no:22,name:"request_response",kind:"message",T:YT,oneof:"message"},{no:23,name:"track_subscribed",kind:"message",T:JT,oneof:"message"},{no:24,name:"room_moved",kind:"message",T:WT,oneof:"message"}]),Kc=D.makeMessageType("livekit.SimulcastCodec",()=>[{no:1,name:"codec",kind:"scalar",T:9},{no:2,name:"cid",kind:"scalar",T:9}]),Zc=D.makeMessageType("livekit.AddTrackRequest",()=>[{no:1,name:"cid",kind:"scalar",T:9},{no:2,name:"name",kind:"scalar",T:9},{no:3,name:"type",kind:"enum",T:D.getEnumType(Ut)},{no:4,name:"width",kind:"scalar",T:13},{no:5,name:"height",kind:"scalar",T:13},{no:6,name:"muted",kind:"scalar",T:8},{no:7,name:"disable_dtx",kind:"scalar",T:8},{no:8,name:"source",kind:"enum",T:D.getEnumType(Ge)},{no:9,name:"layers",kind:"message",T:pi,repeated:!0},{no:10,name:"simulcast_codecs",kind:"message",T:Kc,repeated:!0},{no:11,name:"sid",kind:"scalar",T:9},{no:12,name:"stereo",kind:"scalar",T:8},{no:13,name:"disable_red",kind:"scalar",T:8},{no:14,name:"encryption",kind:"enum",T:D.getEnumType(yt)},{no:15,name:"stream",kind:"scalar",T:9},{no:16,name:"backup_codec_policy",kind:"enum",T:D.getEnumType(vg)},{no:17,name:"audio_features",kind:"enum",T:D.getEnumType(et),repeated:!0}]),bu=D.makeMessageType("livekit.TrickleRequest",()=>[{no:1,name:"candidateInit",kind:"scalar",T:9},{no:2,name:"target",kind:"enum",T:D.getEnumType(Bt)},{no:3,name:"final",kind:"scalar",T:8}]),Su=D.makeMessageType("livekit.MuteTrackRequest",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"muted",kind:"scalar",T:8}]),_T=D.makeMessageType("livekit.JoinResponse",()=>[{no:1,name:"room",kind:"message",T:ra},{no:2,name:"participant",kind:"message",T:yi},{no:3,name:"other_participants",kind:"message",T:yi,repeated:!0},{no:4,name:"server_version",kind:"scalar",T:9},{no:5,name:"ice_servers",kind:"message",T:Vg,repeated:!0},{no:6,name:"subscriber_primary",kind:"scalar",T:8},{no:7,name:"alternative_url",kind:"scalar",T:9},{no:8,name:"client_configuration",kind:"message",T:Ag},{no:9,name:"server_region",kind:"scalar",T:9},{no:10,name:"ping_timeout",kind:"scalar",T:5},{no:11,name:"ping_interval",kind:"scalar",T:5},{no:12,name:"server_info",kind:"message",T:Eg},{no:13,name:"sif_trailer",kind:"scalar",T:12},{no:14,name:"enabled_publish_codecs",kind:"message",T:Oo,repeated:!0},{no:15,name:"fast_publish",kind:"scalar",T:8}]),MT=D.makeMessageType("livekit.ReconnectResponse",()=>[{no:1,name:"ice_servers",kind:"message",T:Vg,repeated:!0},{no:2,name:"client_configuration",kind:"message",T:Ag},{no:3,name:"server_info",kind:"message",T:Eg},{no:4,name:"last_message_seq",kind:"scalar",T:13}]),Tu=D.makeMessageType("livekit.TrackPublishedResponse",()=>[{no:1,name:"cid",kind:"scalar",T:9},{no:2,name:"track",kind:"message",T:Hi}]),OT=D.makeMessageType("livekit.TrackUnpublishedResponse",()=>[{no:1,name:"track_sid",kind:"scalar",T:9}]),Si=D.makeMessageType("livekit.SessionDescription",()=>[{no:1,name:"type",kind:"scalar",T:9},{no:2,name:"sdp",kind:"scalar",T:9},{no:3,name:"id",kind:"scalar",T:13}]),DT=D.makeMessageType("livekit.ParticipantUpdate",()=>[{no:1,name:"participants",kind:"message",T:yi,repeated:!0}]),sa=D.makeMessageType("livekit.UpdateSubscription",()=>[{no:1,name:"track_sids",kind:"scalar",T:9,repeated:!0},{no:2,name:"subscribe",kind:"scalar",T:8},{no:3,name:"participant_tracks",kind:"message",T:xg,repeated:!0}]),Og=D.makeMessageType("livekit.UpdateTrackSettings",()=>[{no:1,name:"track_sids",kind:"scalar",T:9,repeated:!0},{no:3,name:"disabled",kind:"scalar",T:8},{no:4,name:"quality",kind:"enum",T:D.getEnumType(yu)},{no:5,name:"width",kind:"scalar",T:13},{no:6,name:"height",kind:"scalar",T:13},{no:7,name:"fps",kind:"scalar",T:13},{no:8,name:"priority",kind:"scalar",T:13}]),Dg=D.makeMessageType("livekit.UpdateLocalAudioTrack",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"features",kind:"enum",T:D.getEnumType(et),repeated:!0}]),NT=D.makeMessageType("livekit.UpdateLocalVideoTrack",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"width",kind:"scalar",T:13},{no:3,name:"height",kind:"scalar",T:13}]),oa=D.makeMessageType("livekit.LeaveRequest",()=>[{no:1,name:"can_reconnect",kind:"scalar",T:8},{no:2,name:"reason",kind:"enum",T:D.getEnumType($t)},{no:3,name:"action",kind:"enum",T:D.getEnumType(Qi)},{no:4,name:"regions",kind:"message",T:GT}]),Qi=D.makeEnum("livekit.LeaveRequest.Action",[{no:0,name:"DISCONNECT"},{no:1,name:"RESUME"},{no:2,name:"RECONNECT"}]),Ng=D.makeMessageType("livekit.UpdateVideoLayers",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"layers",kind:"message",T:pi,repeated:!0}]),Lg=D.makeMessageType("livekit.UpdateParticipantMetadata",()=>[{no:1,name:"metadata",kind:"scalar",T:9},{no:2,name:"name",kind:"scalar",T:9},{no:3,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}},{no:4,name:"request_id",kind:"scalar",T:13}]),Vg=D.makeMessageType("livekit.ICEServer",()=>[{no:1,name:"urls",kind:"scalar",T:9,repeated:!0},{no:2,name:"username",kind:"scalar",T:9},{no:3,name:"credential",kind:"scalar",T:9}]),LT=D.makeMessageType("livekit.SpeakersChanged",()=>[{no:1,name:"speakers",kind:"message",T:yg,repeated:!0}]),VT=D.makeMessageType("livekit.RoomUpdate",()=>[{no:1,name:"room",kind:"message",T:ra}]),FT=D.makeMessageType("livekit.ConnectionQualityInfo",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"quality",kind:"enum",T:D.getEnumType(Hr)},{no:3,name:"score",kind:"scalar",T:2}]),jT=D.makeMessageType("livekit.ConnectionQualityUpdate",()=>[{no:1,name:"updates",kind:"message",T:FT,repeated:!0}]),UT=D.makeMessageType("livekit.StreamStateInfo",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"track_sid",kind:"scalar",T:9},{no:3,name:"state",kind:"enum",T:D.getEnumType(Gc)}]),BT=D.makeMessageType("livekit.StreamStateUpdate",()=>[{no:1,name:"stream_states",kind:"message",T:UT,repeated:!0}]),ku=D.makeMessageType("livekit.SubscribedQuality",()=>[{no:1,name:"quality",kind:"enum",T:D.getEnumType(yu)},{no:2,name:"enabled",kind:"scalar",T:8}]),$T=D.makeMessageType("livekit.SubscribedCodec",()=>[{no:1,name:"codec",kind:"scalar",T:9},{no:2,name:"qualities",kind:"message",T:ku,repeated:!0}]),HT=D.makeMessageType("livekit.SubscribedQualityUpdate",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"subscribed_qualities",kind:"message",T:ku,repeated:!0},{no:3,name:"subscribed_codecs",kind:"message",T:$T,repeated:!0}]),Fg=D.makeMessageType("livekit.TrackPermission",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"all_tracks",kind:"scalar",T:8},{no:3,name:"track_sids",kind:"scalar",T:9,repeated:!0},{no:4,name:"participant_identity",kind:"scalar",T:9}]),jg=D.makeMessageType("livekit.SubscriptionPermission",()=>[{no:1,name:"all_participants",kind:"scalar",T:8},{no:2,name:"track_permissions",kind:"message",T:Fg,repeated:!0}]),zT=D.makeMessageType("livekit.SubscriptionPermissionUpdate",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"track_sid",kind:"scalar",T:9},{no:3,name:"allowed",kind:"scalar",T:8}]),WT=D.makeMessageType("livekit.RoomMovedResponse",()=>[{no:1,name:"room",kind:"message",T:ra},{no:2,name:"token",kind:"scalar",T:9},{no:3,name:"participant",kind:"message",T:yi},{no:4,name:"other_participants",kind:"message",T:yi,repeated:!0}]),Ug=D.makeMessageType("livekit.SyncState",()=>[{no:1,name:"answer",kind:"message",T:Si},{no:2,name:"subscription",kind:"message",T:sa},{no:3,name:"publish_tracks",kind:"message",T:Tu,repeated:!0},{no:4,name:"data_channels",kind:"message",T:$g,repeated:!0},{no:5,name:"offer",kind:"message",T:Si},{no:6,name:"track_sids_disabled",kind:"scalar",T:9,repeated:!0},{no:7,name:"datachannel_receive_states",kind:"message",T:Bg,repeated:!0}]),Bg=D.makeMessageType("livekit.DataChannelReceiveState",()=>[{no:1,name:"publisher_sid",kind:"scalar",T:9},{no:2,name:"last_seq",kind:"scalar",T:13}]),$g=D.makeMessageType("livekit.DataChannelInfo",()=>[{no:1,name:"label",kind:"scalar",T:9},{no:2,name:"id",kind:"scalar",T:13},{no:3,name:"target",kind:"enum",T:D.getEnumType(Bt)}]),Kt=D.makeMessageType("livekit.SimulateScenario",()=>[{no:1,name:"speaker_update",kind:"scalar",T:5,oneof:"scenario"},{no:2,name:"node_failure",kind:"scalar",T:8,oneof:"scenario"},{no:3,name:"migration",kind:"scalar",T:8,oneof:"scenario"},{no:4,name:"server_leave",kind:"scalar",T:8,oneof:"scenario"},{no:5,name:"switch_candidate_protocol",kind:"enum",T:D.getEnumType(AT),oneof:"scenario"},{no:6,name:"subscriber_bandwidth",kind:"scalar",T:3,oneof:"scenario"},{no:7,name:"disconnect_signal_on_resume",kind:"scalar",T:8,oneof:"scenario"},{no:8,name:"disconnect_signal_on_resume_no_messages",kind:"scalar",T:8,oneof:"scenario"},{no:9,name:"leave_request_full_reconnect",kind:"scalar",T:8,oneof:"scenario"}]),Hg=D.makeMessageType("livekit.Ping",()=>[{no:1,name:"timestamp",kind:"scalar",T:3},{no:2,name:"rtt",kind:"scalar",T:3}]),qT=D.makeMessageType("livekit.Pong",()=>[{no:1,name:"last_ping_timestamp",kind:"scalar",T:3},{no:2,name:"timestamp",kind:"scalar",T:3}]),GT=D.makeMessageType("livekit.RegionSettings",()=>[{no:1,name:"regions",kind:"message",T:KT,repeated:!0}]),KT=D.makeMessageType("livekit.RegionInfo",()=>[{no:1,name:"region",kind:"scalar",T:9},{no:2,name:"url",kind:"scalar",T:9},{no:3,name:"distance",kind:"scalar",T:3}]),ZT=D.makeMessageType("livekit.SubscriptionResponse",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"err",kind:"enum",T:D.getEnumType(ST)}]),YT=D.makeMessageType("livekit.RequestResponse",()=>[{no:1,name:"request_id",kind:"scalar",T:13},{no:2,name:"reason",kind:"enum",T:D.getEnumType(Cu)},{no:3,name:"message",kind:"scalar",T:9}]),Cu=D.makeEnum("livekit.RequestResponse.Reason",[{no:0,name:"OK"},{no:1,name:"NOT_FOUND"},{no:2,name:"NOT_ALLOWED"},{no:3,name:"LIMIT_EXCEEDED"}]),JT=D.makeMessageType("livekit.TrackSubscribed",()=>[{no:1,name:"track_sid",kind:"scalar",T:9}]);function XT(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var lo={exports:{}},QT=lo.exports,Tf;function ek(){return Tf||(Tf=1,function(t){(function(e,n){t.exports?t.exports=n():e.log=n()})(QT,function(){var e=function(){},n="undefined",i=typeof window!==n&&typeof window.navigator!==n&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],s={},o=null;function a(f,y){var v=f[y];if(typeof v.bind=="function")return v.bind(f);try{return Function.prototype.bind.call(v,f)}catch{return function(){return Function.prototype.apply.apply(v,[f,arguments])}}}function c(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function l(f){return f==="debug"&&(f="log"),typeof console===n?!1:f==="trace"&&i?c:console[f]!==void 0?a(console,f):console.log!==void 0?a(console,"log"):e}function u(){for(var f=this.getLevel(),y=0;y<r.length;y++){var v=r[y];this[v]=y<f?e:this.methodFactory(v,f,this.name)}if(this.log=this.debug,typeof console===n&&f<this.levels.SILENT)return"No console available for logging"}function d(f){return function(){typeof console!==n&&(u.call(this),this[f].apply(this,arguments))}}function h(f,y,v){return l(f)||d.apply(this,arguments)}function p(f,y){var v=this,C,T,k,b="loglevel";typeof f=="string"?b+=":"+f:typeof f=="symbol"&&(b=void 0);function w(I){var N=(r[I]||"silent").toUpperCase();if(!(typeof window===n||!b)){try{window.localStorage[b]=N;return}catch{}try{window.document.cookie=encodeURIComponent(b)+"="+N+";"}catch{}}}function x(){var I;if(!(typeof window===n||!b)){try{I=window.localStorage[b]}catch{}if(typeof I===n)try{var N=window.document.cookie,z=encodeURIComponent(b),K=N.indexOf(z+"=");K!==-1&&(I=/^([^;]+)/.exec(N.slice(K+z.length+1))[1])}catch{}return v.levels[I]===void 0&&(I=void 0),I}}function R(){if(!(typeof window===n||!b)){try{window.localStorage.removeItem(b)}catch{}try{window.document.cookie=encodeURIComponent(b)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}function _(I){var N=I;if(typeof N=="string"&&v.levels[N.toUpperCase()]!==void 0&&(N=v.levels[N.toUpperCase()]),typeof N=="number"&&N>=0&&N<=v.levels.SILENT)return N;throw new TypeError("log.setLevel() called with invalid level: "+I)}v.name=f,v.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},v.methodFactory=y||h,v.getLevel=function(){return k??T??C},v.setLevel=function(I,N){return k=_(I),N!==!1&&w(k),u.call(v)},v.setDefaultLevel=function(I){T=_(I),x()||v.setLevel(I,!1)},v.resetLevel=function(){k=null,R(),u.call(v)},v.enableAll=function(I){v.setLevel(v.levels.TRACE,I)},v.disableAll=function(I){v.setLevel(v.levels.SILENT,I)},v.rebuild=function(){if(o!==v&&(C=_(o.getLevel())),u.call(v),o===v)for(var I in s)s[I].rebuild()},C=_(o?o.getLevel():"WARN");var S=x();S!=null&&(k=_(S)),u.call(v)}o=new p,o.getLogger=function(y){if(typeof y!="symbol"&&typeof y!="string"||y==="")throw new TypeError("You must supply a name when creating a logger.");var v=s[y];return v||(v=s[y]=new p(y,o.methodFactory)),v};var g=typeof window!==n?window.log:void 0;return o.noConflict=function(){return typeof window!==n&&window.log===o&&(window.log=g),o},o.getLoggers=function(){return s},o.default=o,o})}(lo)),lo.exports}var aa=ek(),Yc;(function(t){t[t.trace=0]="trace",t[t.debug=1]="debug",t[t.info=2]="info",t[t.warn=3]="warn",t[t.error=4]="error",t[t.silent=5]="silent"})(Yc||(Yc={}));var zt;(function(t){t.Default="livekit",t.Room="livekit-room",t.Participant="livekit-participant",t.Track="livekit-track",t.Publication="livekit-track-publication",t.Engine="livekit-engine",t.Signal="livekit-signal",t.PCManager="livekit-pc-manager",t.PCTransport="livekit-pc-transport",t.E2EE="lk-e2ee"})(zt||(zt={}));let me=aa.getLogger("livekit");const tk=Object.values(zt).map(t=>aa.getLogger(t));me.setDefaultLevel(Yc.info);function Cn(t){const e=aa.getLogger(t);return e.setDefaultLevel(me.getLevel()),e}function nk(t,e){for(const n of tk)n.setLevel(t)}const ik=aa.getLogger("lk-e2ee"),Or=7e3,rk=[0,300,2*2*300,3*3*300,4*4*300,Or,Or,Or,Or,Or];class sk{constructor(e){this._retryDelays=e!==void 0?[...e]:rk}nextRetryDelayInMs(e){if(e.retryCount>=this._retryDelays.length)return null;const n=this._retryDelays[e.retryCount];return e.retryCount<=1?n:n+Math.random()*1e3}}function ok(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n}function P(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(u){try{l(i.next(u))}catch(d){o(d)}}function c(u){try{l(i.throw(u))}catch(d){o(d)}}function l(u){u.done?s(u.value):r(u.value).then(a,c)}l((i=i.apply(t,e||[])).next())})}function kf(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],i=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function bn(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof kf=="function"?kf(t):t[Symbol.iterator](),n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n);function i(s){n[s]=t[s]&&function(o){return new Promise(function(a,c){o=t[s](o),r(a,c,o.done,o.value)})}}function r(s,o,a,c){Promise.resolve(c).then(function(l){s({value:l,done:a})},o)}}var Vs={exports:{}},Cf;function ak(){if(Cf)return Vs.exports;Cf=1;var t=typeof Reflect=="object"?Reflect:null,e=t&&typeof t.apply=="function"?t.apply:function(b,w,x){return Function.prototype.apply.call(b,w,x)},n;t&&typeof t.ownKeys=="function"?n=t.ownKeys:Object.getOwnPropertySymbols?n=function(b){return Object.getOwnPropertyNames(b).concat(Object.getOwnPropertySymbols(b))}:n=function(b){return Object.getOwnPropertyNames(b)};function i(k){console&&console.warn&&console.warn(k)}var r=Number.isNaN||function(b){return b!==b};function s(){s.init.call(this)}Vs.exports=s,Vs.exports.once=v,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var o=10;function a(k){if(typeof k!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof k)}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(k){if(typeof k!="number"||k<0||r(k))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+k+".");o=k}}),s.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},s.prototype.setMaxListeners=function(b){if(typeof b!="number"||b<0||r(b))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+b+".");return this._maxListeners=b,this};function c(k){return k._maxListeners===void 0?s.defaultMaxListeners:k._maxListeners}s.prototype.getMaxListeners=function(){return c(this)},s.prototype.emit=function(b){for(var w=[],x=1;x<arguments.length;x++)w.push(arguments[x]);var R=b==="error",_=this._events;if(_!==void 0)R=R&&_.error===void 0;else if(!R)return!1;if(R){var S;if(w.length>0&&(S=w[0]),S instanceof Error)throw S;var I=new Error("Unhandled error."+(S?" ("+S.message+")":""));throw I.context=S,I}var N=_[b];if(N===void 0)return!1;if(typeof N=="function")e(N,this,w);else for(var z=N.length,K=g(N,z),x=0;x<z;++x)e(K[x],this,w);return!0};function l(k,b,w,x){var R,_,S;if(a(w),_=k._events,_===void 0?(_=k._events=Object.create(null),k._eventsCount=0):(_.newListener!==void 0&&(k.emit("newListener",b,w.listener?w.listener:w),_=k._events),S=_[b]),S===void 0)S=_[b]=w,++k._eventsCount;else if(typeof S=="function"?S=_[b]=x?[w,S]:[S,w]:x?S.unshift(w):S.push(w),R=c(k),R>0&&S.length>R&&!S.warned){S.warned=!0;var I=new Error("Possible EventEmitter memory leak detected. "+S.length+" "+String(b)+" listeners added. Use emitter.setMaxListeners() to increase limit");I.name="MaxListenersExceededWarning",I.emitter=k,I.type=b,I.count=S.length,i(I)}return k}s.prototype.addListener=function(b,w){return l(this,b,w,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(b,w){return l(this,b,w,!0)};function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(k,b,w){var x={fired:!1,wrapFn:void 0,target:k,type:b,listener:w},R=u.bind(x);return R.listener=w,x.wrapFn=R,R}s.prototype.once=function(b,w){return a(w),this.on(b,d(this,b,w)),this},s.prototype.prependOnceListener=function(b,w){return a(w),this.prependListener(b,d(this,b,w)),this},s.prototype.removeListener=function(b,w){var x,R,_,S,I;if(a(w),R=this._events,R===void 0)return this;if(x=R[b],x===void 0)return this;if(x===w||x.listener===w)--this._eventsCount===0?this._events=Object.create(null):(delete R[b],R.removeListener&&this.emit("removeListener",b,x.listener||w));else if(typeof x!="function"){for(_=-1,S=x.length-1;S>=0;S--)if(x[S]===w||x[S].listener===w){I=x[S].listener,_=S;break}if(_<0)return this;_===0?x.shift():f(x,_),x.length===1&&(R[b]=x[0]),R.removeListener!==void 0&&this.emit("removeListener",b,I||w)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(b){var w,x,R;if(x=this._events,x===void 0)return this;if(x.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):x[b]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete x[b]),this;if(arguments.length===0){var _=Object.keys(x),S;for(R=0;R<_.length;++R)S=_[R],S!=="removeListener"&&this.removeAllListeners(S);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(w=x[b],typeof w=="function")this.removeListener(b,w);else if(w!==void 0)for(R=w.length-1;R>=0;R--)this.removeListener(b,w[R]);return this};function h(k,b,w){var x=k._events;if(x===void 0)return[];var R=x[b];return R===void 0?[]:typeof R=="function"?w?[R.listener||R]:[R]:w?y(R):g(R,R.length)}s.prototype.listeners=function(b){return h(this,b,!0)},s.prototype.rawListeners=function(b){return h(this,b,!1)},s.listenerCount=function(k,b){return typeof k.listenerCount=="function"?k.listenerCount(b):p.call(k,b)},s.prototype.listenerCount=p;function p(k){var b=this._events;if(b!==void 0){var w=b[k];if(typeof w=="function")return 1;if(w!==void 0)return w.length}return 0}s.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]};function g(k,b){for(var w=new Array(b),x=0;x<b;++x)w[x]=k[x];return w}function f(k,b){for(;b+1<k.length;b++)k[b]=k[b+1];k.pop()}function y(k){for(var b=new Array(k.length),w=0;w<b.length;++w)b[w]=k[w].listener||k[w];return b}function v(k,b){return new Promise(function(w,x){function R(S){k.removeListener(b,_),x(S)}function _(){typeof k.removeListener=="function"&&k.removeListener("error",R),w([].slice.call(arguments))}T(k,b,_,{once:!0}),b!=="error"&&C(k,R,{once:!0})})}function C(k,b,w){typeof k.on=="function"&&T(k,"error",b,w)}function T(k,b,w,x){if(typeof k.on=="function")x.once?k.once(b,w):k.on(b,w);else if(typeof k.addEventListener=="function")k.addEventListener(b,function R(_){x.once&&k.removeEventListener(b,R),w(_)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof k)}return Vs.exports}var ln=ak();let zg=!0,Wg=!0;function zr(t,e,n){const i=t.match(e);return i&&i.length>=n&&parseFloat(i[n],10)}function Ri(t,e,n){if(!t.RTCPeerConnection)return;const i=t.RTCPeerConnection.prototype,r=i.addEventListener;i.addEventListener=function(o,a){if(o!==e)return r.apply(this,arguments);const c=l=>{const u=n(l);u&&(a.handleEvent?a.handleEvent(u):a(u))};return this._eventMap=this._eventMap||{},this._eventMap[e]||(this._eventMap[e]=new Map),this._eventMap[e].set(a,c),r.apply(this,[o,c])};const s=i.removeEventListener;i.removeEventListener=function(o,a){if(o!==e||!this._eventMap||!this._eventMap[e])return s.apply(this,arguments);if(!this._eventMap[e].has(a))return s.apply(this,arguments);const c=this._eventMap[e].get(a);return this._eventMap[e].delete(a),this._eventMap[e].size===0&&delete this._eventMap[e],Object.keys(this._eventMap).length===0&&delete this._eventMap,s.apply(this,[o,c])},Object.defineProperty(i,"on"+e,{get(){return this["_on"+e]},set(o){this["_on"+e]&&(this.removeEventListener(e,this["_on"+e]),delete this["_on"+e]),o&&this.addEventListener(e,this["_on"+e]=o)},enumerable:!0,configurable:!0})}function ck(t){return typeof t!="boolean"?new Error("Argument type: "+typeof t+". Please use a boolean."):(zg=t,t?"adapter.js logging disabled":"adapter.js logging enabled")}function lk(t){return typeof t!="boolean"?new Error("Argument type: "+typeof t+". Please use a boolean."):(Wg=!t,"adapter.js deprecation warnings "+(t?"disabled":"enabled"))}function qg(){if(typeof window=="object"){if(zg)return;typeof console<"u"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function wu(t,e){Wg&&console.warn(t+" is deprecated, please use "+e+" instead.")}function uk(t){const e={browser:null,version:null};if(typeof t>"u"||!t.navigator||!t.navigator.userAgent)return e.browser="Not a browser.",e;const{navigator:n}=t;if(n.userAgentData&&n.userAgentData.brands){const i=n.userAgentData.brands.find(r=>r.brand==="Chromium");if(i)return{browser:"chrome",version:parseInt(i.version,10)}}if(n.mozGetUserMedia)e.browser="firefox",e.version=parseInt(zr(n.userAgent,/Firefox\/(\d+)\./,1));else if(n.webkitGetUserMedia||t.isSecureContext===!1&&t.webkitRTCPeerConnection)e.browser="chrome",e.version=parseInt(zr(n.userAgent,/Chrom(e|ium)\/(\d+)\./,2));else if(t.RTCPeerConnection&&n.userAgent.match(/AppleWebKit\/(\d+)\./))e.browser="safari",e.version=parseInt(zr(n.userAgent,/AppleWebKit\/(\d+)\./,1)),e.supportsUnifiedPlan=t.RTCRtpTransceiver&&"currentDirection"in t.RTCRtpTransceiver.prototype,e._safariVersion=zr(n.userAgent,/Version\/(\d+(\.?\d+))/,1);else return e.browser="Not a supported browser.",e;return e}function wf(t){return Object.prototype.toString.call(t)==="[object Object]"}function Gg(t){return wf(t)?Object.keys(t).reduce(function(e,n){const i=wf(t[n]),r=i?Gg(t[n]):t[n],s=i&&!Object.keys(r).length;return r===void 0||s?e:Object.assign(e,{[n]:r})},{}):t}function Jc(t,e,n){!e||n.has(e.id)||(n.set(e.id,e),Object.keys(e).forEach(i=>{i.endsWith("Id")?Jc(t,t.get(e[i]),n):i.endsWith("Ids")&&e[i].forEach(r=>{Jc(t,t.get(r),n)})}))}function xf(t,e,n){const i=n?"outbound-rtp":"inbound-rtp",r=new Map;if(e===null)return r;const s=[];return t.forEach(o=>{o.type==="track"&&o.trackIdentifier===e.id&&s.push(o)}),s.forEach(o=>{t.forEach(a=>{a.type===i&&a.trackId===o.id&&Jc(t,a,r)})}),r}const Ef=qg;function Kg(t,e){const n=t&&t.navigator;if(!n.mediaDevices)return;const i=function(a){if(typeof a!="object"||a.mandatory||a.optional)return a;const c={};return Object.keys(a).forEach(l=>{if(l==="require"||l==="advanced"||l==="mediaSource")return;const u=typeof a[l]=="object"?a[l]:{ideal:a[l]};u.exact!==void 0&&typeof u.exact=="number"&&(u.min=u.max=u.exact);const d=function(h,p){return h?h+p.charAt(0).toUpperCase()+p.slice(1):p==="deviceId"?"sourceId":p};if(u.ideal!==void 0){c.optional=c.optional||[];let h={};typeof u.ideal=="number"?(h[d("min",l)]=u.ideal,c.optional.push(h),h={},h[d("max",l)]=u.ideal,c.optional.push(h)):(h[d("",l)]=u.ideal,c.optional.push(h))}u.exact!==void 0&&typeof u.exact!="number"?(c.mandatory=c.mandatory||{},c.mandatory[d("",l)]=u.exact):["min","max"].forEach(h=>{u[h]!==void 0&&(c.mandatory=c.mandatory||{},c.mandatory[d(h,l)]=u[h])})}),a.advanced&&(c.optional=(c.optional||[]).concat(a.advanced)),c},r=function(a,c){if(e.version>=61)return c(a);if(a=JSON.parse(JSON.stringify(a)),a&&typeof a.audio=="object"){const l=function(u,d,h){d in u&&!(h in u)&&(u[h]=u[d],delete u[d])};a=JSON.parse(JSON.stringify(a)),l(a.audio,"autoGainControl","googAutoGainControl"),l(a.audio,"noiseSuppression","googNoiseSuppression"),a.audio=i(a.audio)}if(a&&typeof a.video=="object"){let l=a.video.facingMode;l=l&&(typeof l=="object"?l:{ideal:l});const u=e.version<66;if(l&&(l.exact==="user"||l.exact==="environment"||l.ideal==="user"||l.ideal==="environment")&&!(n.mediaDevices.getSupportedConstraints&&n.mediaDevices.getSupportedConstraints().facingMode&&!u)){delete a.video.facingMode;let d;if(l.exact==="environment"||l.ideal==="environment"?d=["back","rear"]:(l.exact==="user"||l.ideal==="user")&&(d=["front"]),d)return n.mediaDevices.enumerateDevices().then(h=>{h=h.filter(g=>g.kind==="videoinput");let p=h.find(g=>d.some(f=>g.label.toLowerCase().includes(f)));return!p&&h.length&&d.includes("back")&&(p=h[h.length-1]),p&&(a.video.deviceId=l.exact?{exact:p.deviceId}:{ideal:p.deviceId}),a.video=i(a.video),Ef("chrome: "+JSON.stringify(a)),c(a)})}a.video=i(a.video)}return Ef("chrome: "+JSON.stringify(a)),c(a)},s=function(a){return e.version>=64?a:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[a.name]||a.name,message:a.message,constraint:a.constraint||a.constraintName,toString(){return this.name+(this.message&&": ")+this.message}}},o=function(a,c,l){r(a,u=>{n.webkitGetUserMedia(u,c,d=>{l&&l(s(d))})})};if(n.getUserMedia=o.bind(n),n.mediaDevices.getUserMedia){const a=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(c){return r(c,l=>a(l).then(u=>{if(l.audio&&!u.getAudioTracks().length||l.video&&!u.getVideoTracks().length)throw u.getTracks().forEach(d=>{d.stop()}),new DOMException("","NotFoundError");return u},u=>Promise.reject(s(u))))}}}function Zg(t){t.MediaStream=t.MediaStream||t.webkitMediaStream}function Yg(t){if(typeof t=="object"&&t.RTCPeerConnection&&!("ontrack"in t.RTCPeerConnection.prototype)){Object.defineProperty(t.RTCPeerConnection.prototype,"ontrack",{get(){return this._ontrack},set(n){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=n)},enumerable:!0,configurable:!0});const e=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){return this._ontrackpoly||(this._ontrackpoly=i=>{i.stream.addEventListener("addtrack",r=>{let s;t.RTCPeerConnection.prototype.getReceivers?s=this.getReceivers().find(a=>a.track&&a.track.id===r.track.id):s={track:r.track};const o=new Event("track");o.track=r.track,o.receiver=s,o.transceiver={receiver:s},o.streams=[i.stream],this.dispatchEvent(o)}),i.stream.getTracks().forEach(r=>{let s;t.RTCPeerConnection.prototype.getReceivers?s=this.getReceivers().find(a=>a.track&&a.track.id===r.id):s={track:r};const o=new Event("track");o.track=r,o.receiver=s,o.transceiver={receiver:s},o.streams=[i.stream],this.dispatchEvent(o)})},this.addEventListener("addstream",this._ontrackpoly)),e.apply(this,arguments)}}else Ri(t,"track",e=>(e.transceiver||Object.defineProperty(e,"transceiver",{value:{receiver:e.receiver}}),e))}function Jg(t){if(typeof t=="object"&&t.RTCPeerConnection&&!("getSenders"in t.RTCPeerConnection.prototype)&&"createDTMFSender"in t.RTCPeerConnection.prototype){const e=function(r,s){return{track:s,get dtmf(){return this._dtmf===void 0&&(s.kind==="audio"?this._dtmf=r.createDTMFSender(s):this._dtmf=null),this._dtmf},_pc:r}};if(!t.RTCPeerConnection.prototype.getSenders){t.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};const r=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addTrack=function(a,c){let l=r.apply(this,arguments);return l||(l=e(this,a),this._senders.push(l)),l};const s=t.RTCPeerConnection.prototype.removeTrack;t.RTCPeerConnection.prototype.removeTrack=function(a){s.apply(this,arguments);const c=this._senders.indexOf(a);c!==-1&&this._senders.splice(c,1)}}const n=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(s){this._senders=this._senders||[],n.apply(this,[s]),s.getTracks().forEach(o=>{this._senders.push(e(this,o))})};const i=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(s){this._senders=this._senders||[],i.apply(this,[s]),s.getTracks().forEach(o=>{const a=this._senders.find(c=>c.track===o);a&&this._senders.splice(this._senders.indexOf(a),1)})}}else if(typeof t=="object"&&t.RTCPeerConnection&&"getSenders"in t.RTCPeerConnection.prototype&&"createDTMFSender"in t.RTCPeerConnection.prototype&&t.RTCRtpSender&&!("dtmf"in t.RTCRtpSender.prototype)){const e=t.RTCPeerConnection.prototype.getSenders;t.RTCPeerConnection.prototype.getSenders=function(){const i=e.apply(this,[]);return i.forEach(r=>r._pc=this),i},Object.defineProperty(t.RTCRtpSender.prototype,"dtmf",{get(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function Xg(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender&&t.RTCRtpReceiver))return;if(!("getStats"in t.RTCRtpSender.prototype)){const n=t.RTCPeerConnection.prototype.getSenders;n&&(t.RTCPeerConnection.prototype.getSenders=function(){const s=n.apply(this,[]);return s.forEach(o=>o._pc=this),s});const i=t.RTCPeerConnection.prototype.addTrack;i&&(t.RTCPeerConnection.prototype.addTrack=function(){const s=i.apply(this,arguments);return s._pc=this,s}),t.RTCRtpSender.prototype.getStats=function(){const s=this;return this._pc.getStats().then(o=>xf(o,s.track,!0))}}if(!("getStats"in t.RTCRtpReceiver.prototype)){const n=t.RTCPeerConnection.prototype.getReceivers;n&&(t.RTCPeerConnection.prototype.getReceivers=function(){const r=n.apply(this,[]);return r.forEach(s=>s._pc=this),r}),Ri(t,"track",i=>(i.receiver._pc=i.srcElement,i)),t.RTCRtpReceiver.prototype.getStats=function(){const r=this;return this._pc.getStats().then(s=>xf(s,r.track,!1))}}if(!("getStats"in t.RTCRtpSender.prototype&&"getStats"in t.RTCRtpReceiver.prototype))return;const e=t.RTCPeerConnection.prototype.getStats;t.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof t.MediaStreamTrack){const i=arguments[0];let r,s,o;return this.getSenders().forEach(a=>{a.track===i&&(r?o=!0:r=a)}),this.getReceivers().forEach(a=>(a.track===i&&(s?o=!0:s=a),a.track===i)),o||r&&s?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):r?r.getStats():s?s.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return e.apply(this,arguments)}}function Qg(t){t.RTCPeerConnection.prototype.getLocalStreams=function(){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(o=>this._shimmedLocalStreams[o][0])};const e=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addTrack=function(o,a){if(!a)return e.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};const c=e.apply(this,arguments);return this._shimmedLocalStreams[a.id]?this._shimmedLocalStreams[a.id].indexOf(c)===-1&&this._shimmedLocalStreams[a.id].push(c):this._shimmedLocalStreams[a.id]=[a,c],c};const n=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(o){this._shimmedLocalStreams=this._shimmedLocalStreams||{},o.getTracks().forEach(l=>{if(this.getSenders().find(d=>d.track===l))throw new DOMException("Track already exists.","InvalidAccessError")});const a=this.getSenders();n.apply(this,arguments);const c=this.getSenders().filter(l=>a.indexOf(l)===-1);this._shimmedLocalStreams[o.id]=[o].concat(c)};const i=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(o){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[o.id],i.apply(this,arguments)};const r=t.RTCPeerConnection.prototype.removeTrack;t.RTCPeerConnection.prototype.removeTrack=function(o){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},o&&Object.keys(this._shimmedLocalStreams).forEach(a=>{const c=this._shimmedLocalStreams[a].indexOf(o);c!==-1&&this._shimmedLocalStreams[a].splice(c,1),this._shimmedLocalStreams[a].length===1&&delete this._shimmedLocalStreams[a]}),r.apply(this,arguments)}}function e0(t,e){if(!t.RTCPeerConnection)return;if(t.RTCPeerConnection.prototype.addTrack&&e.version>=65)return Qg(t);const n=t.RTCPeerConnection.prototype.getLocalStreams;t.RTCPeerConnection.prototype.getLocalStreams=function(){const u=n.apply(this);return this._reverseStreams=this._reverseStreams||{},u.map(d=>this._reverseStreams[d.id])};const i=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(u){if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},u.getTracks().forEach(d=>{if(this.getSenders().find(p=>p.track===d))throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[u.id]){const d=new t.MediaStream(u.getTracks());this._streams[u.id]=d,this._reverseStreams[d.id]=u,u=d}i.apply(this,[u])};const r=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(u){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},r.apply(this,[this._streams[u.id]||u]),delete this._reverseStreams[this._streams[u.id]?this._streams[u.id].id:u.id],delete this._streams[u.id]},t.RTCPeerConnection.prototype.addTrack=function(u,d){if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");const h=[].slice.call(arguments,1);if(h.length!==1||!h[0].getTracks().find(f=>f===u))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");if(this.getSenders().find(f=>f.track===u))throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};const g=this._streams[d.id];if(g)g.addTrack(u),Promise.resolve().then(()=>{this.dispatchEvent(new Event("negotiationneeded"))});else{const f=new t.MediaStream([u]);this._streams[d.id]=f,this._reverseStreams[f.id]=d,this.addStream(f)}return this.getSenders().find(f=>f.track===u)};function s(l,u){let d=u.sdp;return Object.keys(l._reverseStreams||[]).forEach(h=>{const p=l._reverseStreams[h],g=l._streams[p.id];d=d.replace(new RegExp(g.id,"g"),p.id)}),new RTCSessionDescription({type:u.type,sdp:d})}function o(l,u){let d=u.sdp;return Object.keys(l._reverseStreams||[]).forEach(h=>{const p=l._reverseStreams[h],g=l._streams[p.id];d=d.replace(new RegExp(p.id,"g"),g.id)}),new RTCSessionDescription({type:u.type,sdp:d})}["createOffer","createAnswer"].forEach(function(l){const u=t.RTCPeerConnection.prototype[l],d={[l](){const h=arguments;return arguments.length&&typeof arguments[0]=="function"?u.apply(this,[g=>{const f=s(this,g);h[0].apply(null,[f])},g=>{h[1]&&h[1].apply(null,g)},arguments[2]]):u.apply(this,arguments).then(g=>s(this,g))}};t.RTCPeerConnection.prototype[l]=d[l]});const a=t.RTCPeerConnection.prototype.setLocalDescription;t.RTCPeerConnection.prototype.setLocalDescription=function(){return!arguments.length||!arguments[0].type?a.apply(this,arguments):(arguments[0]=o(this,arguments[0]),a.apply(this,arguments))};const c=Object.getOwnPropertyDescriptor(t.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(t.RTCPeerConnection.prototype,"localDescription",{get(){const l=c.get.apply(this);return l.type===""?l:s(this,l)}}),t.RTCPeerConnection.prototype.removeTrack=function(u){if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!u._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");if(!(u._pc===this))throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{};let h;Object.keys(this._streams).forEach(p=>{this._streams[p].getTracks().find(f=>u.track===f)&&(h=this._streams[p])}),h&&(h.getTracks().length===1?this.removeStream(this._reverseStreams[h.id]):h.removeTrack(u.track),this.dispatchEvent(new Event("negotiationneeded")))}}function Xc(t,e){!t.RTCPeerConnection&&t.webkitRTCPeerConnection&&(t.RTCPeerConnection=t.webkitRTCPeerConnection),t.RTCPeerConnection&&e.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(n){const i=t.RTCPeerConnection.prototype[n],r={[n](){return arguments[0]=new(n==="addIceCandidate"?t.RTCIceCandidate:t.RTCSessionDescription)(arguments[0]),i.apply(this,arguments)}};t.RTCPeerConnection.prototype[n]=r[n]})}function t0(t,e){Ri(t,"negotiationneeded",n=>{const i=n.target;if(!((e.version<72||i.getConfiguration&&i.getConfiguration().sdpSemantics==="plan-b")&&i.signalingState!=="stable"))return n})}var Pf=Object.freeze({__proto__:null,fixNegotiationNeeded:t0,shimAddTrackRemoveTrack:e0,shimAddTrackRemoveTrackWithNative:Qg,shimGetSendersWithDtmf:Jg,shimGetUserMedia:Kg,shimMediaStream:Zg,shimOnTrack:Yg,shimPeerConnection:Xc,shimSenderReceiverGetStats:Xg});function n0(t,e){const n=t&&t.navigator,i=t&&t.MediaStreamTrack;if(n.getUserMedia=function(r,s,o){wu("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(r).then(s,o)},!(e.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){const r=function(o,a,c){a in o&&!(c in o)&&(o[c]=o[a],delete o[a])},s=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(o){return typeof o=="object"&&typeof o.audio=="object"&&(o=JSON.parse(JSON.stringify(o)),r(o.audio,"autoGainControl","mozAutoGainControl"),r(o.audio,"noiseSuppression","mozNoiseSuppression")),s(o)},i&&i.prototype.getSettings){const o=i.prototype.getSettings;i.prototype.getSettings=function(){const a=o.apply(this,arguments);return r(a,"mozAutoGainControl","autoGainControl"),r(a,"mozNoiseSuppression","noiseSuppression"),a}}if(i&&i.prototype.applyConstraints){const o=i.prototype.applyConstraints;i.prototype.applyConstraints=function(a){return this.kind==="audio"&&typeof a=="object"&&(a=JSON.parse(JSON.stringify(a)),r(a,"autoGainControl","mozAutoGainControl"),r(a,"noiseSuppression","mozNoiseSuppression")),o.apply(this,[a])}}}}function dk(t,e){t.navigator.mediaDevices&&"getDisplayMedia"in t.navigator.mediaDevices||t.navigator.mediaDevices&&(t.navigator.mediaDevices.getDisplayMedia=function(i){if(!(i&&i.video)){const r=new DOMException("getDisplayMedia without video constraints is undefined");return r.name="NotFoundError",r.code=8,Promise.reject(r)}return i.video===!0?i.video={mediaSource:e}:i.video.mediaSource=e,t.navigator.mediaDevices.getUserMedia(i)})}function i0(t){typeof t=="object"&&t.RTCTrackEvent&&"receiver"in t.RTCTrackEvent.prototype&&!("transceiver"in t.RTCTrackEvent.prototype)&&Object.defineProperty(t.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function Qc(t,e){if(typeof t!="object"||!(t.RTCPeerConnection||t.mozRTCPeerConnection))return;!t.RTCPeerConnection&&t.mozRTCPeerConnection&&(t.RTCPeerConnection=t.mozRTCPeerConnection),e.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(r){const s=t.RTCPeerConnection.prototype[r],o={[r](){return arguments[0]=new(r==="addIceCandidate"?t.RTCIceCandidate:t.RTCSessionDescription)(arguments[0]),s.apply(this,arguments)}};t.RTCPeerConnection.prototype[r]=o[r]});const n={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},i=t.RTCPeerConnection.prototype.getStats;t.RTCPeerConnection.prototype.getStats=function(){const[s,o,a]=arguments;return i.apply(this,[s||null]).then(c=>{if(e.version<53&&!o)try{c.forEach(l=>{l.type=n[l.type]||l.type})}catch(l){if(l.name!=="TypeError")throw l;c.forEach((u,d)=>{c.set(d,Object.assign({},u,{type:n[u.type]||u.type}))})}return c}).then(o,a)}}function r0(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender)||t.RTCRtpSender&&"getStats"in t.RTCRtpSender.prototype)return;const e=t.RTCPeerConnection.prototype.getSenders;e&&(t.RTCPeerConnection.prototype.getSenders=function(){const r=e.apply(this,[]);return r.forEach(s=>s._pc=this),r});const n=t.RTCPeerConnection.prototype.addTrack;n&&(t.RTCPeerConnection.prototype.addTrack=function(){const r=n.apply(this,arguments);return r._pc=this,r}),t.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}function s0(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender)||t.RTCRtpSender&&"getStats"in t.RTCRtpReceiver.prototype)return;const e=t.RTCPeerConnection.prototype.getReceivers;e&&(t.RTCPeerConnection.prototype.getReceivers=function(){const i=e.apply(this,[]);return i.forEach(r=>r._pc=this),i}),Ri(t,"track",n=>(n.receiver._pc=n.srcElement,n)),t.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}function o0(t){!t.RTCPeerConnection||"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(n){wu("removeStream","removeTrack"),this.getSenders().forEach(i=>{i.track&&n.getTracks().includes(i.track)&&this.removeTrack(i)})})}function a0(t){t.DataChannel&&!t.RTCDataChannel&&(t.RTCDataChannel=t.DataChannel)}function c0(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.addTransceiver;e&&(t.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];let i=arguments[1]&&arguments[1].sendEncodings;i===void 0&&(i=[]),i=[...i];const r=i.length>0;r&&i.forEach(o=>{if("rid"in o&&!/^[a-z0-9]{0,16}$/i.test(o.rid))throw new TypeError("Invalid RID value provided.");if("scaleResolutionDownBy"in o&&!(parseFloat(o.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in o&&!(parseFloat(o.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});const s=e.apply(this,arguments);if(r){const{sender:o}=s,a=o.getParameters();(!("encodings"in a)||a.encodings.length===1&&Object.keys(a.encodings[0]).length===0)&&(a.encodings=i,o.sendEncodings=i,this.setParametersPromises.push(o.setParameters(a).then(()=>{delete o.sendEncodings}).catch(()=>{delete o.sendEncodings})))}return s})}function l0(t){if(!(typeof t=="object"&&t.RTCRtpSender))return;const e=t.RTCRtpSender.prototype.getParameters;e&&(t.RTCRtpSender.prototype.getParameters=function(){const i=e.apply(this,arguments);return"encodings"in i||(i.encodings=[].concat(this.sendEncodings||[{}])),i})}function u0(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.createOffer;t.RTCPeerConnection.prototype.createOffer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>e.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):e.apply(this,arguments)}}function d0(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.createAnswer;t.RTCPeerConnection.prototype.createAnswer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>e.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):e.apply(this,arguments)}}var Rf=Object.freeze({__proto__:null,shimAddTransceiver:c0,shimCreateAnswer:d0,shimCreateOffer:u0,shimGetDisplayMedia:dk,shimGetParameters:l0,shimGetUserMedia:n0,shimOnTrack:i0,shimPeerConnection:Qc,shimRTCDataChannel:a0,shimReceiverGetStats:s0,shimRemoveStream:o0,shimSenderGetStats:r0});function f0(t){if(!(typeof t!="object"||!t.RTCPeerConnection)){if("getLocalStreams"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in t.RTCPeerConnection.prototype)){const e=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addStream=function(i){this._localStreams||(this._localStreams=[]),this._localStreams.includes(i)||this._localStreams.push(i),i.getAudioTracks().forEach(r=>e.call(this,r,i)),i.getVideoTracks().forEach(r=>e.call(this,r,i))},t.RTCPeerConnection.prototype.addTrack=function(i){for(var r=arguments.length,s=new Array(r>1?r-1:0),o=1;o<r;o++)s[o-1]=arguments[o];return s&&s.forEach(a=>{this._localStreams?this._localStreams.includes(a)||this._localStreams.push(a):this._localStreams=[a]}),e.apply(this,arguments)}}"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(n){this._localStreams||(this._localStreams=[]);const i=this._localStreams.indexOf(n);if(i===-1)return;this._localStreams.splice(i,1);const r=n.getTracks();this.getSenders().forEach(s=>{r.includes(s.track)&&this.removeTrack(s)})})}}function h0(t){if(!(typeof t!="object"||!t.RTCPeerConnection)&&("getRemoteStreams"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in t.RTCPeerConnection.prototype))){Object.defineProperty(t.RTCPeerConnection.prototype,"onaddstream",{get(){return this._onaddstream},set(n){this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=n),this.addEventListener("track",this._onaddstreampoly=i=>{i.streams.forEach(r=>{if(this._remoteStreams||(this._remoteStreams=[]),this._remoteStreams.includes(r))return;this._remoteStreams.push(r);const s=new Event("addstream");s.stream=r,this.dispatchEvent(s)})})}});const e=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){const i=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(r){r.streams.forEach(s=>{if(i._remoteStreams||(i._remoteStreams=[]),i._remoteStreams.indexOf(s)>=0)return;i._remoteStreams.push(s);const o=new Event("addstream");o.stream=s,i.dispatchEvent(o)})}),e.apply(i,arguments)}}}function p0(t){if(typeof t!="object"||!t.RTCPeerConnection)return;const e=t.RTCPeerConnection.prototype,n=e.createOffer,i=e.createAnswer,r=e.setLocalDescription,s=e.setRemoteDescription,o=e.addIceCandidate;e.createOffer=function(l,u){const d=arguments.length>=2?arguments[2]:arguments[0],h=n.apply(this,[d]);return u?(h.then(l,u),Promise.resolve()):h},e.createAnswer=function(l,u){const d=arguments.length>=2?arguments[2]:arguments[0],h=i.apply(this,[d]);return u?(h.then(l,u),Promise.resolve()):h};let a=function(c,l,u){const d=r.apply(this,[c]);return u?(d.then(l,u),Promise.resolve()):d};e.setLocalDescription=a,a=function(c,l,u){const d=s.apply(this,[c]);return u?(d.then(l,u),Promise.resolve()):d},e.setRemoteDescription=a,a=function(c,l,u){const d=o.apply(this,[c]);return u?(d.then(l,u),Promise.resolve()):d},e.addIceCandidate=a}function m0(t){const e=t&&t.navigator;if(e.mediaDevices&&e.mediaDevices.getUserMedia){const n=e.mediaDevices,i=n.getUserMedia.bind(n);e.mediaDevices.getUserMedia=r=>i(g0(r))}!e.getUserMedia&&e.mediaDevices&&e.mediaDevices.getUserMedia&&(e.getUserMedia=(function(i,r,s){e.mediaDevices.getUserMedia(i).then(r,s)}).bind(e))}function g0(t){return t&&t.video!==void 0?Object.assign({},t,{video:Gg(t.video)}):t}function v0(t){if(!t.RTCPeerConnection)return;const e=t.RTCPeerConnection;t.RTCPeerConnection=function(i,r){if(i&&i.iceServers){const s=[];for(let o=0;o<i.iceServers.length;o++){let a=i.iceServers[o];a.urls===void 0&&a.url?(wu("RTCIceServer.url","RTCIceServer.urls"),a=JSON.parse(JSON.stringify(a)),a.urls=a.url,delete a.url,s.push(a)):s.push(i.iceServers[o])}i.iceServers=s}return new e(i,r)},t.RTCPeerConnection.prototype=e.prototype,"generateCertificate"in e&&Object.defineProperty(t.RTCPeerConnection,"generateCertificate",{get(){return e.generateCertificate}})}function y0(t){typeof t=="object"&&t.RTCTrackEvent&&"receiver"in t.RTCTrackEvent.prototype&&!("transceiver"in t.RTCTrackEvent.prototype)&&Object.defineProperty(t.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function b0(t){const e=t.RTCPeerConnection.prototype.createOffer;t.RTCPeerConnection.prototype.createOffer=function(i){if(i){typeof i.offerToReceiveAudio<"u"&&(i.offerToReceiveAudio=!!i.offerToReceiveAudio);const r=this.getTransceivers().find(o=>o.receiver.track.kind==="audio");i.offerToReceiveAudio===!1&&r?r.direction==="sendrecv"?r.setDirection?r.setDirection("sendonly"):r.direction="sendonly":r.direction==="recvonly"&&(r.setDirection?r.setDirection("inactive"):r.direction="inactive"):i.offerToReceiveAudio===!0&&!r&&this.addTransceiver("audio",{direction:"recvonly"}),typeof i.offerToReceiveVideo<"u"&&(i.offerToReceiveVideo=!!i.offerToReceiveVideo);const s=this.getTransceivers().find(o=>o.receiver.track.kind==="video");i.offerToReceiveVideo===!1&&s?s.direction==="sendrecv"?s.setDirection?s.setDirection("sendonly"):s.direction="sendonly":s.direction==="recvonly"&&(s.setDirection?s.setDirection("inactive"):s.direction="inactive"):i.offerToReceiveVideo===!0&&!s&&this.addTransceiver("video",{direction:"recvonly"})}return e.apply(this,arguments)}}function S0(t){typeof t!="object"||t.AudioContext||(t.AudioContext=t.webkitAudioContext)}var Af=Object.freeze({__proto__:null,shimAudioContext:S0,shimCallbacksAPI:p0,shimConstraints:g0,shimCreateOfferLegacy:b0,shimGetUserMedia:m0,shimLocalStreamsAPI:f0,shimRTCIceServerUrls:v0,shimRemoteStreamsAPI:h0,shimTrackEventTransceiver:y0}),ja={exports:{}},If;function fk(){return If||(If=1,function(t){const e={};e.generateIdentifier=function(){return Math.random().toString(36).substring(2,12)},e.localCName=e.generateIdentifier(),e.splitLines=function(n){return n.trim().split(`
|
|
32
|
+
<%s key={someKey} {...props} />`,Y,q,te,q),ce[q+Y]=!0)}if(q=null,W!==void 0&&(n(W),q=""+W),o(j)&&(n(j.key),q=""+j.key),"key"in j){W={};for(var ee in j)ee!=="key"&&(W[ee]=j[ee])}else W=j;return q&&a(W,typeof I=="function"?I.displayName||I.name||"Unknown":I),l(I,q,re,J,r(),W,oe,V)}function d(I){typeof I=="object"&&I!==null&&I.$$typeof===m&&I._store&&(I._store.validated=1)}var h=B,m=Symbol.for("react.transitional.element"),g=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),v=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),T=Symbol.for("react.context"),k=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),w=Symbol.for("react.suspense_list"),x=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),_=Symbol.for("react.activity"),S=Symbol.for("react.client.reference"),A=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,O=Object.prototype.hasOwnProperty,z=Array.isArray,K=console.createTask?console.createTask:function(){return null};h={"react-stack-bottom-frame":function(I){return I()}};var se,Q={},Z=h["react-stack-bottom-frame"].bind(h,s)(),F=K(i(s)),ce={};_r.Fragment=f,_r.jsx=function(I,j,W,Y,J){var re=1e4>A.recentlyCreatedOwnerStacks++;return u(I,j,W,!1,Y,J,re?Error("react-stack-top-frame"):Z,re?K(i(I)):F)},_r.jsxs=function(I,j,W,Y,J){var re=1e4>A.recentlyCreatedOwnerStacks++;return u(I,j,W,!0,Y,J,re?Error("react-stack-top-frame"):Z,re?K(i(I)):F)}}()),_r}var rf;function CS(){return rf||(rf=1,process.env.NODE_ENV==="production"?Ns.exports=TS():Ns.exports=kS()),Ns.exports}var E=CS();function wS(t,e){return e.forEach(function(n){n&&typeof n!="string"&&!Array.isArray(n)&&Object.keys(n).forEach(function(i){if(i!=="default"&&!(i in t)){var r=Object.getOwnPropertyDescriptor(n,i);Object.defineProperty(t,i,r.get?r:{enumerable:!0,get:function(){return n[i]}})}})}),Object.freeze(t)}var xS=Object.defineProperty,ES=(t,e,n)=>e in t?xS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sf=(t,e,n)=>ES(t,typeof e!="symbol"?e+"":e,n);let ft=class{constructor(){sf(this,"_locking"),sf(this,"_locks"),this._locking=Promise.resolve(),this._locks=0}isLocked(){return this._locks>0}lock(){this._locks+=1;let e;const n=new Promise(r=>e=()=>{this._locks-=1,r()}),i=this._locking.then(()=>e);return this._locking=this._locking.then(()=>n),i}};function Fe(t,e){if(!t)throw new Error(e)}const PS=34028234663852886e22,RS=-34028234663852886e22,AS=4294967295,IS=2147483647,_S=-2147483648;function ro(t){if(typeof t!="number")throw new Error("invalid int 32: "+typeof t);if(!Number.isInteger(t)||t>IS||t<_S)throw new Error("invalid int 32: "+t)}function Bc(t){if(typeof t!="number")throw new Error("invalid uint 32: "+typeof t);if(!Number.isInteger(t)||t>AS||t<0)throw new Error("invalid uint 32: "+t)}function Qm(t){if(typeof t!="number")throw new Error("invalid float 32: "+typeof t);if(Number.isFinite(t)&&(t>PS||t<RS))throw new Error("invalid float 32: "+t)}const eg=Symbol("@bufbuild/protobuf/enum-type");function MS(t){const e=t[eg];return Fe(e,"missing enum type on enum object"),e}function tg(t,e,n,i){t[eg]=ng(e,n.map(r=>({no:r.no,name:r.name,localName:t[r.no]})))}function ng(t,e,n){const i=Object.create(null),r=Object.create(null),s=[];for(const o of e){const a=ig(o);s.push(a),i[o.name]=a,r[o.no]=a}return{typeName:t,values:s,findName(o){return i[o]},findNumber(o){return r[o]}}}function OS(t,e,n){const i={};for(const r of e){const s=ig(r);i[s.localName]=s.no,i[s.no]=s.localName}return tg(i,t,e),i}function ig(t){return"localName"in t?t:Object.assign(Object.assign({},t),{localName:t.name})}class gu{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,n){const i=this.getType(),r=i.runtime.bin,s=r.makeReadOptions(n);return r.readMessage(this,s.readerFactory(e),e.byteLength,s),this}fromJson(e,n){const i=this.getType(),r=i.runtime.json,s=r.makeReadOptions(n);return r.readMessage(i,e,s,this),this}fromJsonString(e,n){let i;try{i=JSON.parse(e)}catch(r){throw new Error("cannot decode ".concat(this.getType().typeName," from JSON: ").concat(r instanceof Error?r.message:String(r)))}return this.fromJson(i,n)}toBinary(e){const n=this.getType(),i=n.runtime.bin,r=i.makeWriteOptions(e),s=r.writerFactory();return i.writeMessage(this,s,r),s.finish()}toJson(e){const n=this.getType(),i=n.runtime.json,r=i.makeWriteOptions(e);return i.writeMessage(this,r)}toJsonString(e){var n;const i=this.toJson(e);return JSON.stringify(i,null,(n=e==null?void 0:e.prettySpaces)!==null&&n!==void 0?n:0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}}function DS(t,e,n,i){var r;const s=(r=i==null?void 0:i.localName)!==null&&r!==void 0?r:e.substring(e.lastIndexOf(".")+1),o={[s]:function(a){t.util.initFields(this),t.util.initPartial(a,this)}}[s];return Object.setPrototypeOf(o.prototype,new gu),Object.assign(o,{runtime:t,typeName:e,fields:t.util.newFieldList(n),fromBinary(a,c){return new o().fromBinary(a,c)},fromJson(a,c){return new o().fromJson(a,c)},fromJsonString(a,c){return new o().fromJsonString(a,c)},equals(a,c){return t.util.equals(o,a,c)}}),o}function NS(){let t=0,e=0;for(let i=0;i<28;i+=7){let r=this.buf[this.pos++];if(t|=(r&127)<<i,(r&128)==0)return this.assertBounds(),[t,e]}let n=this.buf[this.pos++];if(t|=(n&15)<<28,e=(n&112)>>4,(n&128)==0)return this.assertBounds(),[t,e];for(let i=3;i<=31;i+=7){let r=this.buf[this.pos++];if(e|=(r&127)<<i,(r&128)==0)return this.assertBounds(),[t,e]}throw new Error("invalid varint")}function La(t,e,n){for(let s=0;s<28;s=s+7){const o=t>>>s,a=!(!(o>>>7)&&e==0),c=(a?o|128:o)&255;if(n.push(c),!a)return}const i=t>>>28&15|(e&7)<<4,r=e>>3!=0;if(n.push((r?i|128:i)&255),!!r){for(let s=3;s<31;s=s+7){const o=e>>>s,a=!!(o>>>7),c=(a?o|128:o)&255;if(n.push(c),!a)return}n.push(e>>>31&1)}}const so=4294967296;function of(t){const e=t[0]==="-";e&&(t=t.slice(1));const n=1e6;let i=0,r=0;function s(o,a){const c=Number(t.slice(o,a));r*=n,i=i*n+c,i>=so&&(r=r+(i/so|0),i=i%so)}return s(-24,-18),s(-18,-12),s(-12,-6),s(-6),e?sg(i,r):vu(i,r)}function LS(t,e){let n=vu(t,e);const i=n.hi&2147483648;i&&(n=sg(n.lo,n.hi));const r=rg(n.lo,n.hi);return i?"-"+r:r}function rg(t,e){if({lo:t,hi:e}=VS(t,e),e<=2097151)return String(so*e+t);const n=t&16777215,i=(t>>>24|e<<8)&16777215,r=e>>16&65535;let s=n+i*6777216+r*6710656,o=i+r*8147497,a=r*2;const c=1e7;return s>=c&&(o+=Math.floor(s/c),s%=c),o>=c&&(a+=Math.floor(o/c),o%=c),a.toString()+af(o)+af(s)}function VS(t,e){return{lo:t>>>0,hi:e>>>0}}function vu(t,e){return{lo:t|0,hi:e|0}}function sg(t,e){return e=~e,t?t=~t+1:e+=1,vu(t,e)}const af=t=>{const e=String(t);return"0000000".slice(e.length)+e};function cf(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t=t>>>7;e.push(t)}else{for(let n=0;n<9;n++)e.push(t&127|128),t=t>>7;e.push(1)}}function FS(){let t=this.buf[this.pos++],e=t&127;if((t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<7,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<14,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<21,(t&128)==0)return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let n=5;(t&128)!==0&&n<10;n++)t=this.buf[this.pos++];if((t&128)!=0)throw new Error("invalid varint");return this.assertBounds(),e>>>0}function jS(){const t=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){const r=BigInt("-9223372036854775808"),s=BigInt("9223372036854775807"),o=BigInt("0"),a=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(c){const l=typeof c=="bigint"?c:BigInt(c);if(l>s||l<r)throw new Error("int64 invalid: ".concat(c));return l},uParse(c){const l=typeof c=="bigint"?c:BigInt(c);if(l>a||l<o)throw new Error("uint64 invalid: ".concat(c));return l},enc(c){return t.setBigInt64(0,this.parse(c),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},uEnc(c){return t.setBigInt64(0,this.uParse(c),!0),{lo:t.getInt32(0,!0),hi:t.getInt32(4,!0)}},dec(c,l){return t.setInt32(0,c,!0),t.setInt32(4,l,!0),t.getBigInt64(0,!0)},uDec(c,l){return t.setInt32(0,c,!0),t.setInt32(4,l,!0),t.getBigUint64(0,!0)}}}const n=r=>Fe(/^-?[0-9]+$/.test(r),"int64 invalid: ".concat(r)),i=r=>Fe(/^[0-9]+$/.test(r),"uint64 invalid: ".concat(r));return{zero:"0",supported:!1,parse(r){return typeof r!="string"&&(r=r.toString()),n(r),r},uParse(r){return typeof r!="string"&&(r=r.toString()),i(r),r},enc(r){return typeof r!="string"&&(r=r.toString()),n(r),of(r)},uEnc(r){return typeof r!="string"&&(r=r.toString()),i(r),of(r)},dec(r,s){return LS(r,s)},uDec(r,s){return rg(r,s)}}}const _e=jS();var $;(function(t){t[t.DOUBLE=1]="DOUBLE",t[t.FLOAT=2]="FLOAT",t[t.INT64=3]="INT64",t[t.UINT64=4]="UINT64",t[t.INT32=5]="INT32",t[t.FIXED64=6]="FIXED64",t[t.FIXED32=7]="FIXED32",t[t.BOOL=8]="BOOL",t[t.STRING=9]="STRING",t[t.BYTES=12]="BYTES",t[t.UINT32=13]="UINT32",t[t.SFIXED32=15]="SFIXED32",t[t.SFIXED64=16]="SFIXED64",t[t.SINT32=17]="SINT32",t[t.SINT64=18]="SINT64"})($||($={}));var Wn;(function(t){t[t.BIGINT=0]="BIGINT",t[t.STRING=1]="STRING"})(Wn||(Wn={}));function Dn(t,e,n){if(e===n)return!0;if(t==$.BYTES){if(!(e instanceof Uint8Array)||!(n instanceof Uint8Array)||e.length!==n.length)return!1;for(let i=0;i<e.length;i++)if(e[i]!==n[i])return!1;return!0}switch(t){case $.UINT64:case $.FIXED64:case $.INT64:case $.SFIXED64:case $.SINT64:return e==n}return!1}function lr(t,e){switch(t){case $.BOOL:return!1;case $.UINT64:case $.FIXED64:case $.INT64:case $.SFIXED64:case $.SINT64:return e==0?_e.zero:"0";case $.DOUBLE:case $.FLOAT:return 0;case $.BYTES:return new Uint8Array(0);case $.STRING:return"";default:return 0}}function og(t,e){switch(t){case $.BOOL:return e===!1;case $.STRING:return e==="";case $.BYTES:return e instanceof Uint8Array&&!e.byteLength;default:return e==0}}var He;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(He||(He={}));class US{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let r=0;r<this.chunks.length;r++)e+=this.chunks[r].length;let n=new Uint8Array(e),i=0;for(let r=0;r<this.chunks.length;r++)n.set(this.chunks[r],i),i+=this.chunks[r].length;return this.chunks=[],n}fork(){return this.stack.push({chunks:this.chunks,buf:this.buf}),this.chunks=[],this.buf=[],this}join(){let e=this.finish(),n=this.stack.pop();if(!n)throw new Error("invalid state, fork stack empty");return this.chunks=n.chunks,this.buf=n.buf,this.uint32(e.byteLength),this.raw(e)}tag(e,n){return this.uint32((e<<3|n)>>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Bc(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return ro(e),cf(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let n=this.textEncoder.encode(e);return this.uint32(n.byteLength),this.raw(n)}float(e){Qm(e);let n=new Uint8Array(4);return new DataView(n.buffer).setFloat32(0,e,!0),this.raw(n)}double(e){let n=new Uint8Array(8);return new DataView(n.buffer).setFloat64(0,e,!0),this.raw(n)}fixed32(e){Bc(e);let n=new Uint8Array(4);return new DataView(n.buffer).setUint32(0,e,!0),this.raw(n)}sfixed32(e){ro(e);let n=new Uint8Array(4);return new DataView(n.buffer).setInt32(0,e,!0),this.raw(n)}sint32(e){return ro(e),e=(e<<1^e>>31)>>>0,cf(e,this.buf),this}sfixed64(e){let n=new Uint8Array(8),i=new DataView(n.buffer),r=_e.enc(e);return i.setInt32(0,r.lo,!0),i.setInt32(4,r.hi,!0),this.raw(n)}fixed64(e){let n=new Uint8Array(8),i=new DataView(n.buffer),r=_e.uEnc(e);return i.setInt32(0,r.lo,!0),i.setInt32(4,r.hi,!0),this.raw(n)}int64(e){let n=_e.enc(e);return La(n.lo,n.hi,this.buf),this}sint64(e){let n=_e.enc(e),i=n.hi>>31,r=n.lo<<1^i,s=(n.hi<<1|n.lo>>>31)^i;return La(r,s,this.buf),this}uint64(e){let n=_e.uEnc(e);return La(n.lo,n.hi,this.buf),this}}class BS{constructor(e,n){this.varint64=NS,this.uint32=FS,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=n??new TextDecoder}tag(){let e=this.uint32(),n=e>>>3,i=e&7;if(n<=0||i<0||i>5)throw new Error("illegal tag: field no "+n+" wire type "+i);return[n,i]}skip(e,n){let i=this.pos;switch(e){case He.Varint:for(;this.buf[this.pos++]&128;);break;case He.Bit64:this.pos+=4;case He.Bit32:this.pos+=4;break;case He.LengthDelimited:let r=this.uint32();this.pos+=r;break;case He.StartGroup:for(;;){const[s,o]=this.tag();if(o===He.EndGroup){if(n!==void 0&&s!==n)throw new Error("invalid end group tag");break}this.skip(o,s)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(i,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return _e.dec(...this.varint64())}uint64(){return _e.uDec(...this.varint64())}sint64(){let[e,n]=this.varint64(),i=-(e&1);return e=(e>>>1|(n&1)<<31)^i,n=n>>>1^i,_e.dec(e,n)}bool(){let[e,n]=this.varint64();return e!==0||n!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return _e.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return _e.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),n=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(n,n+e)}string(){return this.textDecoder.decode(this.bytes())}}function $S(t,e,n,i){let r;return{typeName:e,extendee:n,get field(){if(!r){const s=typeof i=="function"?i():i;s.name=e.split(".").pop(),s.jsonName="[".concat(e,"]"),r=t.util.newFieldList([s]).list()[0]}return r},runtime:t}}function ag(t){const e=t.field.localName,n=Object.create(null);return n[e]=HS(t),[n,()=>n[e]]}function HS(t){const e=t.field;if(e.repeated)return[];if(e.default!==void 0)return e.default;switch(e.kind){case"enum":return e.T.values[0].no;case"scalar":return lr(e.T,e.L);case"message":const n=e.T,i=new n;return n.fieldWrapper?n.fieldWrapper.unwrapField(i):i;case"map":throw"map fields are not allowed to be extensions"}}function zS(t,e){if(!e.repeated&&(e.kind=="enum"||e.kind=="scalar")){for(let n=t.length-1;n>=0;--n)if(t[n].no==e.no)return[t[n]];return[]}return t.filter(n=>n.no===e.no)}let vn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),ia=[];for(let t=0;t<vn.length;t++)ia[vn[t].charCodeAt(0)]=t;ia[45]=vn.indexOf("+");ia[95]=vn.indexOf("/");const cg={dec(t){let e=t.length*3/4;t[t.length-2]=="="?e-=2:t[t.length-1]=="="&&(e-=1);let n=new Uint8Array(e),i=0,r=0,s,o=0;for(let a=0;a<t.length;a++){if(s=ia[t.charCodeAt(a)],s===void 0)switch(t[a]){case"=":r=0;case`
|
|
33
|
+
`:case"\r":case" ":case" ":continue;default:throw Error("invalid base64 string.")}switch(r){case 0:o=s,r=1;break;case 1:n[i++]=o<<2|(s&48)>>4,o=s,r=2;break;case 2:n[i++]=(o&15)<<4|(s&60)>>2,o=s,r=3;break;case 3:n[i++]=(o&3)<<6|s,r=0;break}}if(r==1)throw Error("invalid base64 string.");return n.subarray(0,i)},enc(t){let e="",n=0,i,r=0;for(let s=0;s<t.length;s++)switch(i=t[s],n){case 0:e+=vn[i>>2],r=(i&3)<<4,n=1;break;case 1:e+=vn[r|i>>4],r=(i&15)<<2,n=2;break;case 2:e+=vn[r|i>>6],e+=vn[i&63],n=0;break}return n&&(e+=vn[r],e+="=",n==1&&(e+="=")),e}};function WS(t,e,n){ug(e,t);const i=e.runtime.bin.makeReadOptions(n),r=zS(t.getType().runtime.bin.listUnknownFields(t),e.field),[s,o]=ag(e);for(const a of r)e.runtime.bin.readField(s,i.readerFactory(a.data),e.field,a.wireType,i);return o()}function qS(t,e,n,i){ug(e,t);const r=e.runtime.bin.makeReadOptions(i),s=e.runtime.bin.makeWriteOptions(i);if(lg(t,e)){const l=t.getType().runtime.bin.listUnknownFields(t).filter(u=>u.no!=e.field.no);t.getType().runtime.bin.discardUnknownFields(t);for(const u of l)t.getType().runtime.bin.onUnknownField(t,u.no,u.wireType,u.data)}const o=s.writerFactory();let a=e.field;!a.opt&&!a.repeated&&(a.kind=="enum"||a.kind=="scalar")&&(a=Object.assign(Object.assign({},e.field),{opt:!0})),e.runtime.bin.writeField(a,n,o,s);const c=r.readerFactory(o.finish());for(;c.pos<c.len;){const[l,u]=c.tag(),d=c.skip(u,l);t.getType().runtime.bin.onUnknownField(t,l,u,d)}}function lg(t,e){const n=t.getType();return e.extendee.typeName===n.typeName&&!!n.runtime.bin.listUnknownFields(t).find(i=>i.no==e.field.no)}function ug(t,e){Fe(t.extendee.typeName==e.getType().typeName,"extension ".concat(t.typeName," can only be applied to message ").concat(t.extendee.typeName))}function dg(t,e){const n=t.localName;if(t.repeated)return e[n].length>0;if(t.oneof)return e[t.oneof.localName].case===n;switch(t.kind){case"enum":case"scalar":return t.opt||t.req?e[n]!==void 0:t.kind=="enum"?e[n]!==t.T.values[0].no:!og(t.T,e[n]);case"message":return e[n]!==void 0;case"map":return Object.keys(e[n]).length>0}}function lf(t,e){const n=t.localName,i=!t.opt&&!t.req;if(t.repeated)e[n]=[];else if(t.oneof)e[t.oneof.localName]={case:void 0};else switch(t.kind){case"map":e[n]={};break;case"enum":e[n]=i?t.T.values[0].no:void 0;break;case"scalar":e[n]=i?lr(t.T,t.L):void 0;break;case"message":e[n]=void 0;break}}function yn(t,e){if(t===null||typeof t!="object"||!Object.getOwnPropertyNames(gu.prototype).every(i=>i in t&&typeof t[i]=="function"))return!1;const n=t.getType();return n===null||typeof n!="function"||!("typeName"in n)||typeof n.typeName!="string"?!1:e===void 0?!0:n.typeName==e.typeName}function fg(t,e){return yn(e)||!t.fieldWrapper?e:t.fieldWrapper.wrapField(e)}$.DOUBLE,$.FLOAT,$.INT64,$.UINT64,$.INT32,$.UINT32,$.BOOL,$.STRING,$.BYTES;const uf={ignoreUnknownFields:!1},df={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function GS(t){return t?Object.assign(Object.assign({},uf),t):uf}function KS(t){return t?Object.assign(Object.assign({},df),t):df}const _o=Symbol(),oo=Symbol();function ZS(){return{makeReadOptions:GS,makeWriteOptions:KS,readMessage(t,e,n,i){if(e==null||Array.isArray(e)||typeof e!="object")throw new Error("cannot decode message ".concat(t.typeName," from JSON: ").concat(Zt(e)));i=i??new t;const r=new Map,s=n.typeRegistry;for(const[o,a]of Object.entries(e)){const c=t.fields.findJsonName(o);if(c){if(c.oneof){if(a===null&&c.kind=="scalar")continue;const l=r.get(c.oneof);if(l!==void 0)throw new Error("cannot decode message ".concat(t.typeName,' from JSON: multiple keys for oneof "').concat(c.oneof.name,'" present: "').concat(l,'", "').concat(o,'"'));r.set(c.oneof,o)}ff(i,a,c,n,t)}else{let l=!1;if(s!=null&&s.findExtension&&o.startsWith("[")&&o.endsWith("]")){const u=s.findExtension(o.substring(1,o.length-1));if(u&&u.extendee.typeName==t.typeName){l=!0;const[d,h]=ag(u);ff(d,a,u.field,n,u),qS(i,u,h(),n)}}if(!l&&!n.ignoreUnknownFields)throw new Error("cannot decode message ".concat(t.typeName,' from JSON: key "').concat(o,'" is unknown'))}}return i},writeMessage(t,e){const n=t.getType(),i={};let r;try{for(r of n.fields.byNumber()){if(!dg(r,t)){if(r.req)throw"required field not set";if(!e.emitDefaultValues||!JS(r))continue}const o=r.oneof?t[r.oneof.localName].value:t[r.localName],a=hf(r,o,e);a!==void 0&&(i[e.useProtoFieldName?r.name:r.jsonName]=a)}const s=e.typeRegistry;if(s!=null&&s.findExtensionFor)for(const o of n.runtime.bin.listUnknownFields(t)){const a=s.findExtensionFor(n.typeName,o.no);if(a&&lg(t,a)){const c=WS(t,a,e),l=hf(a.field,c,e);l!==void 0&&(i[a.field.jsonName]=l)}}}catch(s){const o=r?"cannot encode field ".concat(n.typeName,".").concat(r.name," to JSON"):"cannot encode message ".concat(n.typeName," to JSON"),a=s instanceof Error?s.message:String(s);throw new Error(o+(a.length>0?": ".concat(a):""))}return i},readScalar(t,e,n){return Zr(t,e,n??Wn.BIGINT,!0)},writeScalar(t,e,n){if(e!==void 0&&(n||og(t,e)))return ao(t,e)},debug:Zt}}function Zt(t){if(t===null)return"null";switch(typeof t){case"object":return Array.isArray(t)?"array":"object";case"string":return t.length>100?"string":'"'.concat(t.split('"').join('\\"'),'"');default:return String(t)}}function ff(t,e,n,i,r){let s=n.localName;if(n.repeated){if(Fe(n.kind!="map"),e===null)return;if(!Array.isArray(e))throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e)));const o=t[s];for(const a of e){if(a===null)throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(a)));switch(n.kind){case"message":o.push(n.T.fromJson(a,i));break;case"enum":const c=Va(n.T,a,i.ignoreUnknownFields,!0);c!==oo&&o.push(c);break;case"scalar":try{o.push(Zr(n.T,a,n.L,!0))}catch(l){let u="cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(a));throw l instanceof Error&&l.message.length>0&&(u+=": ".concat(l.message)),new Error(u)}break}}}else if(n.kind=="map"){if(e===null)return;if(typeof e!="object"||Array.isArray(e))throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e)));const o=t[s];for(const[a,c]of Object.entries(e)){if(c===null)throw new Error("cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: map value null"));let l;try{l=YS(n.K,a)}catch(u){let d="cannot decode map key for field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e));throw u instanceof Error&&u.message.length>0&&(d+=": ".concat(u.message)),new Error(d)}switch(n.V.kind){case"message":o[l]=n.V.T.fromJson(c,i);break;case"enum":const u=Va(n.V.T,c,i.ignoreUnknownFields,!0);u!==oo&&(o[l]=u);break;case"scalar":try{o[l]=Zr(n.V.T,c,Wn.BIGINT,!0)}catch(d){let h="cannot decode map value for field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e));throw d instanceof Error&&d.message.length>0&&(h+=": ".concat(d.message)),new Error(h)}break}}}else switch(n.oneof&&(t=t[n.oneof.localName]={case:s},s="value"),n.kind){case"message":const o=n.T;if(e===null&&o.typeName!="google.protobuf.Value")return;let a=t[s];yn(a)?a.fromJson(e,i):(t[s]=a=o.fromJson(e,i),o.fieldWrapper&&!n.oneof&&(t[s]=o.fieldWrapper.unwrapField(a)));break;case"enum":const c=Va(n.T,e,i.ignoreUnknownFields,!1);switch(c){case _o:lf(n,t);break;case oo:break;default:t[s]=c;break}break;case"scalar":try{const l=Zr(n.T,e,n.L,!1);switch(l){case _o:lf(n,t);break;default:t[s]=l;break}}catch(l){let u="cannot decode field ".concat(r.typeName,".").concat(n.name," from JSON: ").concat(Zt(e));throw l instanceof Error&&l.message.length>0&&(u+=": ".concat(l.message)),new Error(u)}break}}function YS(t,e){if(t===$.BOOL)switch(e){case"true":e=!0;break;case"false":e=!1;break}return Zr(t,e,Wn.BIGINT,!0).toString()}function Zr(t,e,n,i){if(e===null)return i?lr(t,n):_o;switch(t){case $.DOUBLE:case $.FLOAT:if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""||typeof e=="string"&&e.trim().length!==e.length||typeof e!="string"&&typeof e!="number")break;const r=Number(e);if(Number.isNaN(r)||!Number.isFinite(r))break;return t==$.FLOAT&&Qm(r),r;case $.INT32:case $.FIXED32:case $.SFIXED32:case $.SINT32:case $.UINT32:let s;if(typeof e=="number"?s=e:typeof e=="string"&&e.length>0&&e.trim().length===e.length&&(s=Number(e)),s===void 0)break;return t==$.UINT32||t==$.FIXED32?Bc(s):ro(s),s;case $.INT64:case $.SFIXED64:case $.SINT64:if(typeof e!="number"&&typeof e!="string")break;const o=_e.parse(e);return n?o.toString():o;case $.FIXED64:case $.UINT64:if(typeof e!="number"&&typeof e!="string")break;const a=_e.uParse(e);return n?a.toString():a;case $.BOOL:if(typeof e!="boolean")break;return e;case $.STRING:if(typeof e!="string")break;try{encodeURIComponent(e)}catch{throw new Error("invalid UTF8")}return e;case $.BYTES:if(e==="")return new Uint8Array(0);if(typeof e!="string")break;return cg.dec(e)}throw new Error}function Va(t,e,n,i){if(e===null)return t.typeName=="google.protobuf.NullValue"?0:i?t.values[0].no:_o;switch(typeof e){case"number":if(Number.isInteger(e))return e;break;case"string":const r=t.findName(e);if(r!==void 0)return r.no;if(n)return oo;break}throw new Error("cannot decode enum ".concat(t.typeName," from JSON: ").concat(Zt(e)))}function JS(t){return t.repeated||t.kind=="map"?!0:!(t.oneof||t.kind=="message"||t.opt||t.req)}function hf(t,e,n){if(t.kind=="map"){Fe(typeof e=="object"&&e!=null);const i={},r=Object.entries(e);switch(t.V.kind){case"scalar":for(const[o,a]of r)i[o.toString()]=ao(t.V.T,a);break;case"message":for(const[o,a]of r)i[o.toString()]=a.toJson(n);break;case"enum":const s=t.V.T;for(const[o,a]of r)i[o.toString()]=Fa(s,a,n.enumAsInteger);break}return n.emitDefaultValues||r.length>0?i:void 0}if(t.repeated){Fe(Array.isArray(e));const i=[];switch(t.kind){case"scalar":for(let r=0;r<e.length;r++)i.push(ao(t.T,e[r]));break;case"enum":for(let r=0;r<e.length;r++)i.push(Fa(t.T,e[r],n.enumAsInteger));break;case"message":for(let r=0;r<e.length;r++)i.push(e[r].toJson(n));break}return n.emitDefaultValues||i.length>0?i:void 0}switch(t.kind){case"scalar":return ao(t.T,e);case"enum":return Fa(t.T,e,n.enumAsInteger);case"message":return fg(t.T,e).toJson(n)}}function Fa(t,e,n){var i;if(Fe(typeof e=="number"),t.typeName=="google.protobuf.NullValue")return null;if(n)return e;const r=t.findNumber(e);return(i=r==null?void 0:r.name)!==null&&i!==void 0?i:e}function ao(t,e){switch(t){case $.INT32:case $.SFIXED32:case $.SINT32:case $.FIXED32:case $.UINT32:return Fe(typeof e=="number"),e;case $.FLOAT:case $.DOUBLE:return Fe(typeof e=="number"),Number.isNaN(e)?"NaN":e===Number.POSITIVE_INFINITY?"Infinity":e===Number.NEGATIVE_INFINITY?"-Infinity":e;case $.STRING:return Fe(typeof e=="string"),e;case $.BOOL:return Fe(typeof e=="boolean"),e;case $.UINT64:case $.FIXED64:case $.INT64:case $.SFIXED64:case $.SINT64:return Fe(typeof e=="bigint"||typeof e=="string"||typeof e=="number"),e.toString();case $.BYTES:return Fe(e instanceof Uint8Array),cg.enc(e)}}const Ii=Symbol("@bufbuild/protobuf/unknown-fields"),pf={readUnknownFields:!0,readerFactory:t=>new BS(t)},mf={writeUnknownFields:!0,writerFactory:()=>new US};function XS(t){return t?Object.assign(Object.assign({},pf),t):pf}function QS(t){return t?Object.assign(Object.assign({},mf),t):mf}function eT(){return{makeReadOptions:XS,makeWriteOptions:QS,listUnknownFields(t){var e;return(e=t[Ii])!==null&&e!==void 0?e:[]},discardUnknownFields(t){delete t[Ii]},writeUnknownFields(t,e){const i=t[Ii];if(i)for(const r of i)e.tag(r.no,r.wireType).raw(r.data)},onUnknownField(t,e,n,i){const r=t;Array.isArray(r[Ii])||(r[Ii]=[]),r[Ii].push({no:e,wireType:n,data:i})},readMessage(t,e,n,i,r){const s=t.getType(),o=r?e.len:e.pos+n;let a,c;for(;e.pos<o&&([a,c]=e.tag(),!(r===!0&&c==He.EndGroup));){const l=s.fields.find(a);if(!l){const u=e.skip(c,a);i.readUnknownFields&&this.onUnknownField(t,a,c,u);continue}gf(t,e,l,c,i)}if(r&&(c!=He.EndGroup||a!==n))throw new Error("invalid end group tag")},readField:gf,writeMessage(t,e,n){const i=t.getType();for(const r of i.fields.byNumber()){if(!dg(r,t)){if(r.req)throw new Error("cannot encode field ".concat(i.typeName,".").concat(r.name," to binary: required field not set"));continue}const s=r.oneof?t[r.oneof.localName].value:t[r.localName];vf(r,s,e,n)}return n.writeUnknownFields&&this.writeUnknownFields(t,e),e},writeField(t,e,n,i){e!==void 0&&vf(t,e,n,i)}}}function gf(t,e,n,i,r){let{repeated:s,localName:o}=n;switch(n.oneof&&(t=t[n.oneof.localName],t.case!=o&&delete t.value,t.case=o,o="value"),n.kind){case"scalar":case"enum":const a=n.kind=="enum"?$.INT32:n.T;let c=Mo;if(n.kind=="scalar"&&n.L>0&&(c=nT),s){let h=t[o];if(i==He.LengthDelimited&&a!=$.STRING&&a!=$.BYTES){let g=e.uint32()+e.pos;for(;e.pos<g;)h.push(c(e,a))}else h.push(c(e,a))}else t[o]=c(e,a);break;case"message":const l=n.T;s?t[o].push(co(e,new l,r,n)):yn(t[o])?co(e,t[o],r,n):(t[o]=co(e,new l,r,n),l.fieldWrapper&&!n.oneof&&!n.repeated&&(t[o]=l.fieldWrapper.unwrapField(t[o])));break;case"map":let[u,d]=tT(n,e,r);t[o][u]=d;break}}function co(t,e,n,i){const r=e.getType().runtime.bin,s=i==null?void 0:i.delimited;return r.readMessage(e,t,s?i.no:t.uint32(),n,s),e}function tT(t,e,n){const i=e.uint32(),r=e.pos+i;let s,o;for(;e.pos<r;){const[a]=e.tag();switch(a){case 1:s=Mo(e,t.K);break;case 2:switch(t.V.kind){case"scalar":o=Mo(e,t.V.T);break;case"enum":o=e.int32();break;case"message":o=co(e,new t.V.T,n,void 0);break}break}}if(s===void 0&&(s=lr(t.K,Wn.BIGINT)),typeof s!="string"&&typeof s!="number"&&(s=s.toString()),o===void 0)switch(t.V.kind){case"scalar":o=lr(t.V.T,Wn.BIGINT);break;case"enum":o=t.V.T.values[0].no;break;case"message":o=new t.V.T;break}return[s,o]}function nT(t,e){const n=Mo(t,e);return typeof n=="bigint"?n.toString():n}function Mo(t,e){switch(e){case $.STRING:return t.string();case $.BOOL:return t.bool();case $.DOUBLE:return t.double();case $.FLOAT:return t.float();case $.INT32:return t.int32();case $.INT64:return t.int64();case $.UINT64:return t.uint64();case $.FIXED64:return t.fixed64();case $.BYTES:return t.bytes();case $.FIXED32:return t.fixed32();case $.SFIXED32:return t.sfixed32();case $.SFIXED64:return t.sfixed64();case $.SINT64:return t.sint64();case $.UINT32:return t.uint32();case $.SINT32:return t.sint32()}}function vf(t,e,n,i){Fe(e!==void 0);const r=t.repeated;switch(t.kind){case"scalar":case"enum":let s=t.kind=="enum"?$.INT32:t.T;if(r)if(Fe(Array.isArray(e)),t.packed)rT(n,s,t.no,e);else for(const o of e)Yr(n,s,t.no,o);else Yr(n,s,t.no,e);break;case"message":if(r){Fe(Array.isArray(e));for(const o of e)yf(n,i,t,o)}else yf(n,i,t,e);break;case"map":Fe(typeof e=="object"&&e!=null);for(const[o,a]of Object.entries(e))iT(n,i,t,o,a);break}}function iT(t,e,n,i,r){t.tag(n.no,He.LengthDelimited),t.fork();let s=i;switch(n.K){case $.INT32:case $.FIXED32:case $.UINT32:case $.SFIXED32:case $.SINT32:s=Number.parseInt(i);break;case $.BOOL:Fe(i=="true"||i=="false"),s=i=="true";break}switch(Yr(t,n.K,1,s),n.V.kind){case"scalar":Yr(t,n.V.T,2,r);break;case"enum":Yr(t,$.INT32,2,r);break;case"message":Fe(r!==void 0),t.tag(2,He.LengthDelimited).bytes(r.toBinary(e));break}t.join()}function yf(t,e,n,i){const r=fg(n.T,i);n.delimited?t.tag(n.no,He.StartGroup).raw(r.toBinary(e)).tag(n.no,He.EndGroup):t.tag(n.no,He.LengthDelimited).bytes(r.toBinary(e))}function Yr(t,e,n,i){Fe(i!==void 0);let[r,s]=hg(e);t.tag(n,r)[s](i)}function rT(t,e,n,i){if(!i.length)return;t.tag(n,He.LengthDelimited).fork();let[,r]=hg(e);for(let s=0;s<i.length;s++)t[r](i[s]);t.join()}function hg(t){let e=He.Varint;switch(t){case $.BYTES:case $.STRING:e=He.LengthDelimited;break;case $.DOUBLE:case $.FIXED64:case $.SFIXED64:e=He.Bit64;break;case $.FIXED32:case $.SFIXED32:case $.FLOAT:e=He.Bit32;break}const n=$[t].toLowerCase();return[e,n]}function sT(){return{setEnumType:tg,initPartial(t,e){if(t===void 0)return;const n=e.getType();for(const i of n.fields.byMember()){const r=i.localName,s=e,o=t;if(o[r]!=null)switch(i.kind){case"oneof":const a=o[r].case;if(a===void 0)continue;const c=i.findField(a);let l=o[r].value;c&&c.kind=="message"&&!yn(l,c.T)?l=new c.T(l):c&&c.kind==="scalar"&&c.T===$.BYTES&&(l=Mr(l)),s[r]={case:a,value:l};break;case"scalar":case"enum":let u=o[r];i.T===$.BYTES&&(u=i.repeated?u.map(Mr):Mr(u)),s[r]=u;break;case"map":switch(i.V.kind){case"scalar":case"enum":if(i.V.T===$.BYTES)for(const[m,g]of Object.entries(o[r]))s[r][m]=Mr(g);else Object.assign(s[r],o[r]);break;case"message":const h=i.V.T;for(const m of Object.keys(o[r])){let g=o[r][m];h.fieldWrapper||(g=new h(g)),s[r][m]=g}break}break;case"message":const d=i.T;if(i.repeated)s[r]=o[r].map(h=>yn(h,d)?h:new d(h));else{const h=o[r];d.fieldWrapper?d.typeName==="google.protobuf.BytesValue"?s[r]=Mr(h):s[r]=h:s[r]=yn(h,d)?h:new d(h)}break}}},equals(t,e,n){return e===n?!0:!e||!n?!1:t.fields.byMember().every(i=>{const r=e[i.localName],s=n[i.localName];if(i.repeated){if(r.length!==s.length)return!1;switch(i.kind){case"message":return r.every((o,a)=>i.T.equals(o,s[a]));case"scalar":return r.every((o,a)=>Dn(i.T,o,s[a]));case"enum":return r.every((o,a)=>Dn($.INT32,o,s[a]))}throw new Error("repeated cannot contain ".concat(i.kind))}switch(i.kind){case"message":let o=r,a=s;return i.T.fieldWrapper&&(o!==void 0&&!yn(o)&&(o=i.T.fieldWrapper.wrapField(o)),a!==void 0&&!yn(a)&&(a=i.T.fieldWrapper.wrapField(a))),i.T.equals(o,a);case"enum":return Dn($.INT32,r,s);case"scalar":return Dn(i.T,r,s);case"oneof":if(r.case!==s.case)return!1;const c=i.findField(r.case);if(c===void 0)return!0;switch(c.kind){case"message":return c.T.equals(r.value,s.value);case"enum":return Dn($.INT32,r.value,s.value);case"scalar":return Dn(c.T,r.value,s.value)}throw new Error("oneof cannot contain ".concat(c.kind));case"map":const l=Object.keys(r).concat(Object.keys(s));switch(i.V.kind){case"message":const u=i.V.T;return l.every(h=>u.equals(r[h],s[h]));case"enum":return l.every(h=>Dn($.INT32,r[h],s[h]));case"scalar":const d=i.V.T;return l.every(h=>Dn(d,r[h],s[h]))}break}})},clone(t){const e=t.getType(),n=new e,i=n;for(const r of e.fields.byMember()){const s=t[r.localName];let o;if(r.repeated)o=s.map(Ls);else if(r.kind=="map"){o=i[r.localName];for(const[a,c]of Object.entries(s))o[a]=Ls(c)}else r.kind=="oneof"?o=r.findField(s.case)?{case:s.case,value:Ls(s.value)}:{case:void 0}:o=Ls(s);i[r.localName]=o}for(const r of e.runtime.bin.listUnknownFields(t))e.runtime.bin.onUnknownField(i,r.no,r.wireType,r.data);return n}}}function Ls(t){if(t===void 0)return t;if(yn(t))return t.clone();if(t instanceof Uint8Array){const e=new Uint8Array(t.byteLength);return e.set(t),e}return t}function Mr(t){return t instanceof Uint8Array?t:new Uint8Array(t)}function oT(t,e,n){return{syntax:t,json:ZS(),bin:eT(),util:Object.assign(Object.assign({},sT()),{newFieldList:e,initFields:n}),makeMessageType(i,r,s){return DS(this,i,r,s)},makeEnum:OS,makeEnumType:ng,getEnumType:MS,makeExtension(i,r,s){return $S(this,i,r,s)}}}class aT{constructor(e,n){this._fields=e,this._normalizer=n}findJsonName(e){if(!this.jsonNames){const n={};for(const i of this.list())n[i.jsonName]=n[i.name]=i;this.jsonNames=n}return this.jsonNames[e]}find(e){if(!this.numbers){const n={};for(const i of this.list())n[i.no]=i;this.numbers=n}return this.numbers[e]}list(){return this.all||(this.all=this._normalizer(this._fields)),this.all}byNumber(){return this.numbersAsc||(this.numbersAsc=this.list().concat().sort((e,n)=>e.no-n.no)),this.numbersAsc}byMember(){if(!this.members){this.members=[];const e=this.members;let n;for(const i of this.list())i.oneof?i.oneof!==n&&(n=i.oneof,e.push(n)):e.push(i)}return this.members}}function pg(t,e){const n=mg(t);return e?n:hT(fT(n))}function cT(t){return pg(t,!1)}const lT=mg;function mg(t){let e=!1;const n=[];for(let i=0;i<t.length;i++){let r=t.charAt(i);switch(r){case"_":e=!0;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":n.push(r),e=!1;break;default:e&&(e=!1,r=r.toUpperCase()),n.push(r);break}}return n.join("")}const uT=new Set(["constructor","toString","toJSON","valueOf"]),dT=new Set(["getType","clone","equals","fromBinary","fromJson","fromJsonString","toBinary","toJson","toJsonString","toObject"]),gg=t=>"".concat(t,"$"),fT=t=>dT.has(t)?gg(t):t,hT=t=>uT.has(t)?gg(t):t;class pT{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=cT(e)}addField(e){Fe(e.oneof===this,"field ".concat(e.name," not one of ").concat(this.name)),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let n=0;n<this.fields.length;n++)this._lookup[this.fields[n].localName]=this.fields[n]}return this._lookup[e]}}function mT(t,e){var n,i,r,s,o,a;const c=[];let l;for(const u of typeof t=="function"?t():t){const d=u;if(d.localName=pg(u.name,u.oneof!==void 0),d.jsonName=(n=u.jsonName)!==null&&n!==void 0?n:lT(u.name),d.repeated=(i=u.repeated)!==null&&i!==void 0?i:!1,u.kind=="scalar"&&(d.L=(r=u.L)!==null&&r!==void 0?r:Wn.BIGINT),d.delimited=(s=u.delimited)!==null&&s!==void 0?s:!1,d.req=(o=u.req)!==null&&o!==void 0?o:!1,d.opt=(a=u.opt)!==null&&a!==void 0?a:!1,u.packed===void 0&&(d.packed=u.kind=="enum"||u.kind=="scalar"&&u.T!=$.BYTES&&u.T!=$.STRING),u.oneof!==void 0){const h=typeof u.oneof=="string"?u.oneof:u.oneof.name;(!l||l.name!=h)&&(l=new pT(h)),d.oneof=l,l.addField(d)}c.push(d)}return c}const N=oT("proto3",t=>new aT(t,e=>mT(e)),t=>{for(const e of t.getType().fields.byMember()){if(e.opt)continue;const n=e.localName,i=t;if(e.repeated){i[n]=[];continue}switch(e.kind){case"oneof":i[n]={case:void 0};break;case"enum":i[n]=0;break;case"map":i[n]={};break;case"scalar":i[n]=lr(e.T,e.L);break}}});class dt extends gu{constructor(e){super(),this.seconds=_e.zero,this.nanos=0,N.util.initPartial(e,this)}fromJson(e,n){if(typeof e!="string")throw new Error("cannot decode google.protobuf.Timestamp from JSON: ".concat(N.json.debug(e)));const i=e.match(/^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(?:Z|\.([0-9]{3,9})Z|([+-][0-9][0-9]:[0-9][0-9]))$/);if(!i)throw new Error("cannot decode google.protobuf.Timestamp from JSON: invalid RFC 3339 string");const r=Date.parse(i[1]+"-"+i[2]+"-"+i[3]+"T"+i[4]+":"+i[5]+":"+i[6]+(i[8]?i[8]:"Z"));if(Number.isNaN(r))throw new Error("cannot decode google.protobuf.Timestamp from JSON: invalid RFC 3339 string");if(r<Date.parse("0001-01-01T00:00:00Z")||r>Date.parse("9999-12-31T23:59:59Z"))throw new Error("cannot decode message google.protobuf.Timestamp from JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive");return this.seconds=_e.parse(r/1e3),this.nanos=0,i[7]&&(this.nanos=parseInt("1"+i[7]+"0".repeat(9-i[7].length))-1e9),this}toJson(e){const n=Number(this.seconds)*1e3;if(n<Date.parse("0001-01-01T00:00:00Z")||n>Date.parse("9999-12-31T23:59:59Z"))throw new Error("cannot encode google.protobuf.Timestamp to JSON: must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive");if(this.nanos<0)throw new Error("cannot encode google.protobuf.Timestamp to JSON: nanos must not be negative");let i="Z";if(this.nanos>0){const r=(this.nanos+1e9).toString().substring(1);r.substring(3)==="000000"?i="."+r.substring(0,3)+"Z":r.substring(6)==="000"?i="."+r.substring(0,6)+"Z":i="."+r+"Z"}return new Date(n).toISOString().replace(".000Z",i)}toDate(){return new Date(Number(this.seconds)*1e3+Math.ceil(this.nanos/1e6))}static now(){return dt.fromDate(new Date)}static fromDate(e){const n=e.getTime();return new dt({seconds:_e.parse(Math.floor(n/1e3)),nanos:n%1e3*1e6})}static fromBinary(e,n){return new dt().fromBinary(e,n)}static fromJson(e,n){return new dt().fromJson(e,n)}static fromJsonString(e,n){return new dt().fromJsonString(e,n)}static equals(e,n){return N.util.equals(dt,e,n)}}dt.runtime=N;dt.typeName="google.protobuf.Timestamp";dt.fields=N.util.newFieldList(()=>[{no:1,name:"seconds",kind:"scalar",T:3},{no:2,name:"nanos",kind:"scalar",T:5}]);const gT=N.makeMessageType("livekit.MetricsBatch",()=>[{no:1,name:"timestamp_ms",kind:"scalar",T:3},{no:2,name:"normalized_timestamp",kind:"message",T:dt},{no:3,name:"str_data",kind:"scalar",T:9,repeated:!0},{no:4,name:"time_series",kind:"message",T:vT,repeated:!0},{no:5,name:"events",kind:"message",T:bT,repeated:!0}]),vT=N.makeMessageType("livekit.TimeSeriesMetric",()=>[{no:1,name:"label",kind:"scalar",T:13},{no:2,name:"participant_identity",kind:"scalar",T:13},{no:3,name:"track_sid",kind:"scalar",T:13},{no:4,name:"samples",kind:"message",T:yT,repeated:!0},{no:5,name:"rid",kind:"scalar",T:13}]),yT=N.makeMessageType("livekit.MetricSample",()=>[{no:1,name:"timestamp_ms",kind:"scalar",T:3},{no:2,name:"normalized_timestamp",kind:"message",T:dt},{no:3,name:"value",kind:"scalar",T:2}]),bT=N.makeMessageType("livekit.EventMetric",()=>[{no:1,name:"label",kind:"scalar",T:13},{no:2,name:"participant_identity",kind:"scalar",T:13},{no:3,name:"track_sid",kind:"scalar",T:13},{no:4,name:"start_timestamp_ms",kind:"scalar",T:3},{no:5,name:"end_timestamp_ms",kind:"scalar",T:3,opt:!0},{no:6,name:"normalized_start_timestamp",kind:"message",T:dt},{no:7,name:"normalized_end_timestamp",kind:"message",T:dt,opt:!0},{no:8,name:"metadata",kind:"scalar",T:9},{no:9,name:"rid",kind:"scalar",T:13}]),vg=N.makeEnum("livekit.BackupCodecPolicy",[{no:0,name:"PREFER_REGRESSION"},{no:1,name:"SIMULCAST"},{no:2,name:"REGRESSION"}]),Ut=N.makeEnum("livekit.TrackType",[{no:0,name:"AUDIO"},{no:1,name:"VIDEO"},{no:2,name:"DATA"}]),Ge=N.makeEnum("livekit.TrackSource",[{no:0,name:"UNKNOWN"},{no:1,name:"CAMERA"},{no:2,name:"MICROPHONE"},{no:3,name:"SCREEN_SHARE"},{no:4,name:"SCREEN_SHARE_AUDIO"}]),yu=N.makeEnum("livekit.VideoQuality",[{no:0,name:"LOW"},{no:1,name:"MEDIUM"},{no:2,name:"HIGH"},{no:3,name:"OFF"}]),Hr=N.makeEnum("livekit.ConnectionQuality",[{no:0,name:"POOR"},{no:1,name:"GOOD"},{no:2,name:"EXCELLENT"},{no:3,name:"LOST"}]),rs=N.makeEnum("livekit.ClientConfigSetting",[{no:0,name:"UNSET"},{no:1,name:"DISABLED"},{no:2,name:"ENABLED"}]),$t=N.makeEnum("livekit.DisconnectReason",[{no:0,name:"UNKNOWN_REASON"},{no:1,name:"CLIENT_INITIATED"},{no:2,name:"DUPLICATE_IDENTITY"},{no:3,name:"SERVER_SHUTDOWN"},{no:4,name:"PARTICIPANT_REMOVED"},{no:5,name:"ROOM_DELETED"},{no:6,name:"STATE_MISMATCH"},{no:7,name:"JOIN_FAILURE"},{no:8,name:"MIGRATION"},{no:9,name:"SIGNAL_CLOSE"},{no:10,name:"ROOM_CLOSED"},{no:11,name:"USER_UNAVAILABLE"},{no:12,name:"USER_REJECTED"},{no:13,name:"SIP_TRUNK_FAILURE"},{no:14,name:"CONNECTION_TIMEOUT"},{no:15,name:"MEDIA_FAILURE"}]),_i=N.makeEnum("livekit.ReconnectReason",[{no:0,name:"RR_UNKNOWN"},{no:1,name:"RR_SIGNAL_DISCONNECTED"},{no:2,name:"RR_PUBLISHER_FAILED"},{no:3,name:"RR_SUBSCRIBER_FAILED"},{no:4,name:"RR_SWITCH_CANDIDATE"}]),ST=N.makeEnum("livekit.SubscriptionError",[{no:0,name:"SE_UNKNOWN"},{no:1,name:"SE_CODEC_UNSUPPORTED"},{no:2,name:"SE_TRACK_NOTFOUND"}]),et=N.makeEnum("livekit.AudioTrackFeature",[{no:0,name:"TF_STEREO"},{no:1,name:"TF_NO_DTX"},{no:2,name:"TF_AUTO_GAIN_CONTROL"},{no:3,name:"TF_ECHO_CANCELLATION"},{no:4,name:"TF_NOISE_SUPPRESSION"},{no:5,name:"TF_ENHANCED_NOISE_CANCELLATION"},{no:6,name:"TF_PRECONNECT_BUFFER"}]),ra=N.makeMessageType("livekit.Room",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"name",kind:"scalar",T:9},{no:3,name:"empty_timeout",kind:"scalar",T:13},{no:14,name:"departure_timeout",kind:"scalar",T:13},{no:4,name:"max_participants",kind:"scalar",T:13},{no:5,name:"creation_time",kind:"scalar",T:3},{no:15,name:"creation_time_ms",kind:"scalar",T:3},{no:6,name:"turn_password",kind:"scalar",T:9},{no:7,name:"enabled_codecs",kind:"message",T:Oo,repeated:!0},{no:8,name:"metadata",kind:"scalar",T:9},{no:9,name:"num_participants",kind:"scalar",T:13},{no:11,name:"num_publishers",kind:"scalar",T:13},{no:10,name:"active_recording",kind:"scalar",T:8},{no:13,name:"version",kind:"message",T:Ig}]),Oo=N.makeMessageType("livekit.Codec",()=>[{no:1,name:"mime",kind:"scalar",T:9},{no:2,name:"fmtp_line",kind:"scalar",T:9}]),TT=N.makeMessageType("livekit.ParticipantPermission",()=>[{no:1,name:"can_subscribe",kind:"scalar",T:8},{no:2,name:"can_publish",kind:"scalar",T:8},{no:3,name:"can_publish_data",kind:"scalar",T:8},{no:9,name:"can_publish_sources",kind:"enum",T:N.getEnumType(Ge),repeated:!0},{no:7,name:"hidden",kind:"scalar",T:8},{no:8,name:"recorder",kind:"scalar",T:8},{no:10,name:"can_update_metadata",kind:"scalar",T:8},{no:11,name:"agent",kind:"scalar",T:8},{no:12,name:"can_subscribe_metrics",kind:"scalar",T:8}]),yi=N.makeMessageType("livekit.ParticipantInfo",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"identity",kind:"scalar",T:9},{no:3,name:"state",kind:"enum",T:N.getEnumType(Xi)},{no:4,name:"tracks",kind:"message",T:Hi,repeated:!0},{no:5,name:"metadata",kind:"scalar",T:9},{no:6,name:"joined_at",kind:"scalar",T:3},{no:17,name:"joined_at_ms",kind:"scalar",T:3},{no:9,name:"name",kind:"scalar",T:9},{no:10,name:"version",kind:"scalar",T:13},{no:11,name:"permission",kind:"message",T:TT},{no:12,name:"region",kind:"scalar",T:9},{no:13,name:"is_publisher",kind:"scalar",T:8},{no:14,name:"kind",kind:"enum",T:N.getEnumType(bi)},{no:15,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}},{no:16,name:"disconnect_reason",kind:"enum",T:N.getEnumType($t)},{no:18,name:"kind_details",kind:"enum",T:N.getEnumType(kT),repeated:!0}]),Xi=N.makeEnum("livekit.ParticipantInfo.State",[{no:0,name:"JOINING"},{no:1,name:"JOINED"},{no:2,name:"ACTIVE"},{no:3,name:"DISCONNECTED"}]),bi=N.makeEnum("livekit.ParticipantInfo.Kind",[{no:0,name:"STANDARD"},{no:1,name:"INGRESS"},{no:2,name:"EGRESS"},{no:3,name:"SIP"},{no:4,name:"AGENT"}]),kT=N.makeEnum("livekit.ParticipantInfo.KindDetail",[{no:0,name:"CLOUD_AGENT"},{no:1,name:"FORWARDED"}]),yt=N.makeEnum("livekit.Encryption.Type",[{no:0,name:"NONE"},{no:1,name:"GCM"},{no:2,name:"CUSTOM"}]),CT=N.makeMessageType("livekit.SimulcastCodecInfo",()=>[{no:1,name:"mime_type",kind:"scalar",T:9},{no:2,name:"mid",kind:"scalar",T:9},{no:3,name:"cid",kind:"scalar",T:9},{no:4,name:"layers",kind:"message",T:pi,repeated:!0}]),Hi=N.makeMessageType("livekit.TrackInfo",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"type",kind:"enum",T:N.getEnumType(Ut)},{no:3,name:"name",kind:"scalar",T:9},{no:4,name:"muted",kind:"scalar",T:8},{no:5,name:"width",kind:"scalar",T:13},{no:6,name:"height",kind:"scalar",T:13},{no:7,name:"simulcast",kind:"scalar",T:8},{no:8,name:"disable_dtx",kind:"scalar",T:8},{no:9,name:"source",kind:"enum",T:N.getEnumType(Ge)},{no:10,name:"layers",kind:"message",T:pi,repeated:!0},{no:11,name:"mime_type",kind:"scalar",T:9},{no:12,name:"mid",kind:"scalar",T:9},{no:13,name:"codecs",kind:"message",T:CT,repeated:!0},{no:14,name:"stereo",kind:"scalar",T:8},{no:15,name:"disable_red",kind:"scalar",T:8},{no:16,name:"encryption",kind:"enum",T:N.getEnumType(yt)},{no:17,name:"stream",kind:"scalar",T:9},{no:18,name:"version",kind:"message",T:Ig},{no:19,name:"audio_features",kind:"enum",T:N.getEnumType(et),repeated:!0},{no:20,name:"backup_codec_policy",kind:"enum",T:N.getEnumType(vg)}]),pi=N.makeMessageType("livekit.VideoLayer",()=>[{no:1,name:"quality",kind:"enum",T:N.getEnumType(yu)},{no:2,name:"width",kind:"scalar",T:13},{no:3,name:"height",kind:"scalar",T:13},{no:4,name:"bitrate",kind:"scalar",T:13},{no:5,name:"ssrc",kind:"scalar",T:13}]),ut=N.makeMessageType("livekit.DataPacket",()=>[{no:1,name:"kind",kind:"enum",T:N.getEnumType(fe)},{no:4,name:"participant_identity",kind:"scalar",T:9},{no:5,name:"destination_identities",kind:"scalar",T:9,repeated:!0},{no:2,name:"user",kind:"message",T:bg,oneof:"value"},{no:3,name:"speaker",kind:"message",T:wT,oneof:"value"},{no:6,name:"sip_dtmf",kind:"message",T:Sg,oneof:"value"},{no:7,name:"transcription",kind:"message",T:xT,oneof:"value"},{no:8,name:"metrics",kind:"message",T:gT,oneof:"value"},{no:9,name:"chat_message",kind:"message",T:$c,oneof:"value"},{no:10,name:"rpc_request",kind:"message",T:Tg,oneof:"value"},{no:11,name:"rpc_ack",kind:"message",T:kg,oneof:"value"},{no:12,name:"rpc_response",kind:"message",T:Cg,oneof:"value"},{no:13,name:"stream_header",kind:"message",T:zc,oneof:"value"},{no:14,name:"stream_chunk",kind:"message",T:Wc,oneof:"value"},{no:15,name:"stream_trailer",kind:"message",T:qc,oneof:"value"},{no:16,name:"sequence",kind:"scalar",T:13},{no:17,name:"participant_sid",kind:"scalar",T:9}]),fe=N.makeEnum("livekit.DataPacket.Kind",[{no:0,name:"RELIABLE"},{no:1,name:"LOSSY"}]),wT=N.makeMessageType("livekit.ActiveSpeakerUpdate",()=>[{no:1,name:"speakers",kind:"message",T:yg,repeated:!0}]),yg=N.makeMessageType("livekit.SpeakerInfo",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"level",kind:"scalar",T:2},{no:3,name:"active",kind:"scalar",T:8}]),bg=N.makeMessageType("livekit.UserPacket",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:5,name:"participant_identity",kind:"scalar",T:9},{no:2,name:"payload",kind:"scalar",T:12},{no:3,name:"destination_sids",kind:"scalar",T:9,repeated:!0},{no:6,name:"destination_identities",kind:"scalar",T:9,repeated:!0},{no:4,name:"topic",kind:"scalar",T:9,opt:!0},{no:8,name:"id",kind:"scalar",T:9,opt:!0},{no:9,name:"start_time",kind:"scalar",T:4,opt:!0},{no:10,name:"end_time",kind:"scalar",T:4,opt:!0},{no:11,name:"nonce",kind:"scalar",T:12}]),Sg=N.makeMessageType("livekit.SipDTMF",()=>[{no:3,name:"code",kind:"scalar",T:13},{no:4,name:"digit",kind:"scalar",T:9}]),xT=N.makeMessageType("livekit.Transcription",()=>[{no:2,name:"transcribed_participant_identity",kind:"scalar",T:9},{no:3,name:"track_id",kind:"scalar",T:9},{no:4,name:"segments",kind:"message",T:ET,repeated:!0}]),ET=N.makeMessageType("livekit.TranscriptionSegment",()=>[{no:1,name:"id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"start_time",kind:"scalar",T:4},{no:4,name:"end_time",kind:"scalar",T:4},{no:5,name:"final",kind:"scalar",T:8},{no:6,name:"language",kind:"scalar",T:9}]),$c=N.makeMessageType("livekit.ChatMessage",()=>[{no:1,name:"id",kind:"scalar",T:9},{no:2,name:"timestamp",kind:"scalar",T:3},{no:3,name:"edit_timestamp",kind:"scalar",T:3,opt:!0},{no:4,name:"message",kind:"scalar",T:9},{no:5,name:"deleted",kind:"scalar",T:8},{no:6,name:"generated",kind:"scalar",T:8}]),Tg=N.makeMessageType("livekit.RpcRequest",()=>[{no:1,name:"id",kind:"scalar",T:9},{no:2,name:"method",kind:"scalar",T:9},{no:3,name:"payload",kind:"scalar",T:9},{no:4,name:"response_timeout_ms",kind:"scalar",T:13},{no:5,name:"version",kind:"scalar",T:13}]),kg=N.makeMessageType("livekit.RpcAck",()=>[{no:1,name:"request_id",kind:"scalar",T:9}]),Cg=N.makeMessageType("livekit.RpcResponse",()=>[{no:1,name:"request_id",kind:"scalar",T:9},{no:2,name:"payload",kind:"scalar",T:9,oneof:"value"},{no:3,name:"error",kind:"message",T:wg,oneof:"value"}]),wg=N.makeMessageType("livekit.RpcError",()=>[{no:1,name:"code",kind:"scalar",T:13},{no:2,name:"message",kind:"scalar",T:9},{no:3,name:"data",kind:"scalar",T:9}]),xg=N.makeMessageType("livekit.ParticipantTracks",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"track_sids",kind:"scalar",T:9,repeated:!0}]),Eg=N.makeMessageType("livekit.ServerInfo",()=>[{no:1,name:"edition",kind:"enum",T:N.getEnumType(Pg)},{no:2,name:"version",kind:"scalar",T:9},{no:3,name:"protocol",kind:"scalar",T:5},{no:4,name:"region",kind:"scalar",T:9},{no:5,name:"node_id",kind:"scalar",T:9},{no:6,name:"debug_info",kind:"scalar",T:9},{no:7,name:"agent_protocol",kind:"scalar",T:5}]),Pg=N.makeEnum("livekit.ServerInfo.Edition",[{no:0,name:"Standard"},{no:1,name:"Cloud"}]),PT=N.makeMessageType("livekit.ClientInfo",()=>[{no:1,name:"sdk",kind:"enum",T:N.getEnumType(Rg)},{no:2,name:"version",kind:"scalar",T:9},{no:3,name:"protocol",kind:"scalar",T:5},{no:4,name:"os",kind:"scalar",T:9},{no:5,name:"os_version",kind:"scalar",T:9},{no:6,name:"device_model",kind:"scalar",T:9},{no:7,name:"browser",kind:"scalar",T:9},{no:8,name:"browser_version",kind:"scalar",T:9},{no:9,name:"address",kind:"scalar",T:9},{no:10,name:"network",kind:"scalar",T:9},{no:11,name:"other_sdks",kind:"scalar",T:9}]),Rg=N.makeEnum("livekit.ClientInfo.SDK",[{no:0,name:"UNKNOWN"},{no:1,name:"JS"},{no:2,name:"SWIFT"},{no:3,name:"ANDROID"},{no:4,name:"FLUTTER"},{no:5,name:"GO"},{no:6,name:"UNITY"},{no:7,name:"REACT_NATIVE"},{no:8,name:"RUST"},{no:9,name:"PYTHON"},{no:10,name:"CPP"},{no:11,name:"UNITY_WEB"},{no:12,name:"NODE"},{no:13,name:"UNREAL"}]),Ag=N.makeMessageType("livekit.ClientConfiguration",()=>[{no:1,name:"video",kind:"message",T:bf},{no:2,name:"screen",kind:"message",T:bf},{no:3,name:"resume_connection",kind:"enum",T:N.getEnumType(rs)},{no:4,name:"disabled_codecs",kind:"message",T:RT},{no:5,name:"force_relay",kind:"enum",T:N.getEnumType(rs)}]),bf=N.makeMessageType("livekit.VideoConfiguration",()=>[{no:1,name:"hardware_encoder",kind:"enum",T:N.getEnumType(rs)}]),RT=N.makeMessageType("livekit.DisabledCodecs",()=>[{no:1,name:"codecs",kind:"message",T:Oo,repeated:!0},{no:2,name:"publish",kind:"message",T:Oo,repeated:!0}]),Ig=N.makeMessageType("livekit.TimedVersion",()=>[{no:1,name:"unix_micro",kind:"scalar",T:3},{no:2,name:"ticks",kind:"scalar",T:5}]),Hc=N.makeEnum("livekit.DataStream.OperationType",[{no:0,name:"CREATE"},{no:1,name:"UPDATE"},{no:2,name:"DELETE"},{no:3,name:"REACTION"}]),_g=N.makeMessageType("livekit.DataStream.TextHeader",()=>[{no:1,name:"operation_type",kind:"enum",T:N.getEnumType(Hc)},{no:2,name:"version",kind:"scalar",T:5},{no:3,name:"reply_to_stream_id",kind:"scalar",T:9},{no:4,name:"attached_stream_ids",kind:"scalar",T:9,repeated:!0},{no:5,name:"generated",kind:"scalar",T:8}],{localName:"DataStream_TextHeader"}),Mg=N.makeMessageType("livekit.DataStream.ByteHeader",()=>[{no:1,name:"name",kind:"scalar",T:9}],{localName:"DataStream_ByteHeader"}),zc=N.makeMessageType("livekit.DataStream.Header",()=>[{no:1,name:"stream_id",kind:"scalar",T:9},{no:2,name:"timestamp",kind:"scalar",T:3},{no:3,name:"topic",kind:"scalar",T:9},{no:4,name:"mime_type",kind:"scalar",T:9},{no:5,name:"total_length",kind:"scalar",T:4,opt:!0},{no:7,name:"encryption_type",kind:"enum",T:N.getEnumType(yt)},{no:8,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}},{no:9,name:"text_header",kind:"message",T:_g,oneof:"content_header"},{no:10,name:"byte_header",kind:"message",T:Mg,oneof:"content_header"}],{localName:"DataStream_Header"}),Wc=N.makeMessageType("livekit.DataStream.Chunk",()=>[{no:1,name:"stream_id",kind:"scalar",T:9},{no:2,name:"chunk_index",kind:"scalar",T:4},{no:3,name:"content",kind:"scalar",T:12},{no:4,name:"version",kind:"scalar",T:5},{no:5,name:"iv",kind:"scalar",T:12,opt:!0}],{localName:"DataStream_Chunk"}),qc=N.makeMessageType("livekit.DataStream.Trailer",()=>[{no:1,name:"stream_id",kind:"scalar",T:9},{no:2,name:"reason",kind:"scalar",T:9},{no:3,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}}],{localName:"DataStream_Trailer"}),Bt=N.makeEnum("livekit.SignalTarget",[{no:0,name:"PUBLISHER"},{no:1,name:"SUBSCRIBER"}]),Gc=N.makeEnum("livekit.StreamState",[{no:0,name:"ACTIVE"},{no:1,name:"PAUSED"}]),AT=N.makeEnum("livekit.CandidateProtocol",[{no:0,name:"UDP"},{no:1,name:"TCP"},{no:2,name:"TLS"}]),IT=N.makeMessageType("livekit.SignalRequest",()=>[{no:1,name:"offer",kind:"message",T:Si,oneof:"message"},{no:2,name:"answer",kind:"message",T:Si,oneof:"message"},{no:3,name:"trickle",kind:"message",T:bu,oneof:"message"},{no:4,name:"add_track",kind:"message",T:Zc,oneof:"message"},{no:5,name:"mute",kind:"message",T:Su,oneof:"message"},{no:6,name:"subscription",kind:"message",T:sa,oneof:"message"},{no:7,name:"track_setting",kind:"message",T:Og,oneof:"message"},{no:8,name:"leave",kind:"message",T:oa,oneof:"message"},{no:10,name:"update_layers",kind:"message",T:Ng,oneof:"message"},{no:11,name:"subscription_permission",kind:"message",T:jg,oneof:"message"},{no:12,name:"sync_state",kind:"message",T:Ug,oneof:"message"},{no:13,name:"simulate",kind:"message",T:Kt,oneof:"message"},{no:14,name:"ping",kind:"scalar",T:3,oneof:"message"},{no:15,name:"update_metadata",kind:"message",T:Lg,oneof:"message"},{no:16,name:"ping_req",kind:"message",T:Hg,oneof:"message"},{no:17,name:"update_audio_track",kind:"message",T:Dg,oneof:"message"},{no:18,name:"update_video_track",kind:"message",T:NT,oneof:"message"}]),Sf=N.makeMessageType("livekit.SignalResponse",()=>[{no:1,name:"join",kind:"message",T:_T,oneof:"message"},{no:2,name:"answer",kind:"message",T:Si,oneof:"message"},{no:3,name:"offer",kind:"message",T:Si,oneof:"message"},{no:4,name:"trickle",kind:"message",T:bu,oneof:"message"},{no:5,name:"update",kind:"message",T:DT,oneof:"message"},{no:6,name:"track_published",kind:"message",T:Tu,oneof:"message"},{no:8,name:"leave",kind:"message",T:oa,oneof:"message"},{no:9,name:"mute",kind:"message",T:Su,oneof:"message"},{no:10,name:"speakers_changed",kind:"message",T:LT,oneof:"message"},{no:11,name:"room_update",kind:"message",T:VT,oneof:"message"},{no:12,name:"connection_quality",kind:"message",T:jT,oneof:"message"},{no:13,name:"stream_state_update",kind:"message",T:BT,oneof:"message"},{no:14,name:"subscribed_quality_update",kind:"message",T:HT,oneof:"message"},{no:15,name:"subscription_permission_update",kind:"message",T:zT,oneof:"message"},{no:16,name:"refresh_token",kind:"scalar",T:9,oneof:"message"},{no:17,name:"track_unpublished",kind:"message",T:OT,oneof:"message"},{no:18,name:"pong",kind:"scalar",T:3,oneof:"message"},{no:19,name:"reconnect",kind:"message",T:MT,oneof:"message"},{no:20,name:"pong_resp",kind:"message",T:qT,oneof:"message"},{no:21,name:"subscription_response",kind:"message",T:ZT,oneof:"message"},{no:22,name:"request_response",kind:"message",T:YT,oneof:"message"},{no:23,name:"track_subscribed",kind:"message",T:JT,oneof:"message"},{no:24,name:"room_moved",kind:"message",T:WT,oneof:"message"}]),Kc=N.makeMessageType("livekit.SimulcastCodec",()=>[{no:1,name:"codec",kind:"scalar",T:9},{no:2,name:"cid",kind:"scalar",T:9}]),Zc=N.makeMessageType("livekit.AddTrackRequest",()=>[{no:1,name:"cid",kind:"scalar",T:9},{no:2,name:"name",kind:"scalar",T:9},{no:3,name:"type",kind:"enum",T:N.getEnumType(Ut)},{no:4,name:"width",kind:"scalar",T:13},{no:5,name:"height",kind:"scalar",T:13},{no:6,name:"muted",kind:"scalar",T:8},{no:7,name:"disable_dtx",kind:"scalar",T:8},{no:8,name:"source",kind:"enum",T:N.getEnumType(Ge)},{no:9,name:"layers",kind:"message",T:pi,repeated:!0},{no:10,name:"simulcast_codecs",kind:"message",T:Kc,repeated:!0},{no:11,name:"sid",kind:"scalar",T:9},{no:12,name:"stereo",kind:"scalar",T:8},{no:13,name:"disable_red",kind:"scalar",T:8},{no:14,name:"encryption",kind:"enum",T:N.getEnumType(yt)},{no:15,name:"stream",kind:"scalar",T:9},{no:16,name:"backup_codec_policy",kind:"enum",T:N.getEnumType(vg)},{no:17,name:"audio_features",kind:"enum",T:N.getEnumType(et),repeated:!0}]),bu=N.makeMessageType("livekit.TrickleRequest",()=>[{no:1,name:"candidateInit",kind:"scalar",T:9},{no:2,name:"target",kind:"enum",T:N.getEnumType(Bt)},{no:3,name:"final",kind:"scalar",T:8}]),Su=N.makeMessageType("livekit.MuteTrackRequest",()=>[{no:1,name:"sid",kind:"scalar",T:9},{no:2,name:"muted",kind:"scalar",T:8}]),_T=N.makeMessageType("livekit.JoinResponse",()=>[{no:1,name:"room",kind:"message",T:ra},{no:2,name:"participant",kind:"message",T:yi},{no:3,name:"other_participants",kind:"message",T:yi,repeated:!0},{no:4,name:"server_version",kind:"scalar",T:9},{no:5,name:"ice_servers",kind:"message",T:Vg,repeated:!0},{no:6,name:"subscriber_primary",kind:"scalar",T:8},{no:7,name:"alternative_url",kind:"scalar",T:9},{no:8,name:"client_configuration",kind:"message",T:Ag},{no:9,name:"server_region",kind:"scalar",T:9},{no:10,name:"ping_timeout",kind:"scalar",T:5},{no:11,name:"ping_interval",kind:"scalar",T:5},{no:12,name:"server_info",kind:"message",T:Eg},{no:13,name:"sif_trailer",kind:"scalar",T:12},{no:14,name:"enabled_publish_codecs",kind:"message",T:Oo,repeated:!0},{no:15,name:"fast_publish",kind:"scalar",T:8}]),MT=N.makeMessageType("livekit.ReconnectResponse",()=>[{no:1,name:"ice_servers",kind:"message",T:Vg,repeated:!0},{no:2,name:"client_configuration",kind:"message",T:Ag},{no:3,name:"server_info",kind:"message",T:Eg},{no:4,name:"last_message_seq",kind:"scalar",T:13}]),Tu=N.makeMessageType("livekit.TrackPublishedResponse",()=>[{no:1,name:"cid",kind:"scalar",T:9},{no:2,name:"track",kind:"message",T:Hi}]),OT=N.makeMessageType("livekit.TrackUnpublishedResponse",()=>[{no:1,name:"track_sid",kind:"scalar",T:9}]),Si=N.makeMessageType("livekit.SessionDescription",()=>[{no:1,name:"type",kind:"scalar",T:9},{no:2,name:"sdp",kind:"scalar",T:9},{no:3,name:"id",kind:"scalar",T:13}]),DT=N.makeMessageType("livekit.ParticipantUpdate",()=>[{no:1,name:"participants",kind:"message",T:yi,repeated:!0}]),sa=N.makeMessageType("livekit.UpdateSubscription",()=>[{no:1,name:"track_sids",kind:"scalar",T:9,repeated:!0},{no:2,name:"subscribe",kind:"scalar",T:8},{no:3,name:"participant_tracks",kind:"message",T:xg,repeated:!0}]),Og=N.makeMessageType("livekit.UpdateTrackSettings",()=>[{no:1,name:"track_sids",kind:"scalar",T:9,repeated:!0},{no:3,name:"disabled",kind:"scalar",T:8},{no:4,name:"quality",kind:"enum",T:N.getEnumType(yu)},{no:5,name:"width",kind:"scalar",T:13},{no:6,name:"height",kind:"scalar",T:13},{no:7,name:"fps",kind:"scalar",T:13},{no:8,name:"priority",kind:"scalar",T:13}]),Dg=N.makeMessageType("livekit.UpdateLocalAudioTrack",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"features",kind:"enum",T:N.getEnumType(et),repeated:!0}]),NT=N.makeMessageType("livekit.UpdateLocalVideoTrack",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"width",kind:"scalar",T:13},{no:3,name:"height",kind:"scalar",T:13}]),oa=N.makeMessageType("livekit.LeaveRequest",()=>[{no:1,name:"can_reconnect",kind:"scalar",T:8},{no:2,name:"reason",kind:"enum",T:N.getEnumType($t)},{no:3,name:"action",kind:"enum",T:N.getEnumType(Qi)},{no:4,name:"regions",kind:"message",T:GT}]),Qi=N.makeEnum("livekit.LeaveRequest.Action",[{no:0,name:"DISCONNECT"},{no:1,name:"RESUME"},{no:2,name:"RECONNECT"}]),Ng=N.makeMessageType("livekit.UpdateVideoLayers",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"layers",kind:"message",T:pi,repeated:!0}]),Lg=N.makeMessageType("livekit.UpdateParticipantMetadata",()=>[{no:1,name:"metadata",kind:"scalar",T:9},{no:2,name:"name",kind:"scalar",T:9},{no:3,name:"attributes",kind:"map",K:9,V:{kind:"scalar",T:9}},{no:4,name:"request_id",kind:"scalar",T:13}]),Vg=N.makeMessageType("livekit.ICEServer",()=>[{no:1,name:"urls",kind:"scalar",T:9,repeated:!0},{no:2,name:"username",kind:"scalar",T:9},{no:3,name:"credential",kind:"scalar",T:9}]),LT=N.makeMessageType("livekit.SpeakersChanged",()=>[{no:1,name:"speakers",kind:"message",T:yg,repeated:!0}]),VT=N.makeMessageType("livekit.RoomUpdate",()=>[{no:1,name:"room",kind:"message",T:ra}]),FT=N.makeMessageType("livekit.ConnectionQualityInfo",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"quality",kind:"enum",T:N.getEnumType(Hr)},{no:3,name:"score",kind:"scalar",T:2}]),jT=N.makeMessageType("livekit.ConnectionQualityUpdate",()=>[{no:1,name:"updates",kind:"message",T:FT,repeated:!0}]),UT=N.makeMessageType("livekit.StreamStateInfo",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"track_sid",kind:"scalar",T:9},{no:3,name:"state",kind:"enum",T:N.getEnumType(Gc)}]),BT=N.makeMessageType("livekit.StreamStateUpdate",()=>[{no:1,name:"stream_states",kind:"message",T:UT,repeated:!0}]),ku=N.makeMessageType("livekit.SubscribedQuality",()=>[{no:1,name:"quality",kind:"enum",T:N.getEnumType(yu)},{no:2,name:"enabled",kind:"scalar",T:8}]),$T=N.makeMessageType("livekit.SubscribedCodec",()=>[{no:1,name:"codec",kind:"scalar",T:9},{no:2,name:"qualities",kind:"message",T:ku,repeated:!0}]),HT=N.makeMessageType("livekit.SubscribedQualityUpdate",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"subscribed_qualities",kind:"message",T:ku,repeated:!0},{no:3,name:"subscribed_codecs",kind:"message",T:$T,repeated:!0}]),Fg=N.makeMessageType("livekit.TrackPermission",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"all_tracks",kind:"scalar",T:8},{no:3,name:"track_sids",kind:"scalar",T:9,repeated:!0},{no:4,name:"participant_identity",kind:"scalar",T:9}]),jg=N.makeMessageType("livekit.SubscriptionPermission",()=>[{no:1,name:"all_participants",kind:"scalar",T:8},{no:2,name:"track_permissions",kind:"message",T:Fg,repeated:!0}]),zT=N.makeMessageType("livekit.SubscriptionPermissionUpdate",()=>[{no:1,name:"participant_sid",kind:"scalar",T:9},{no:2,name:"track_sid",kind:"scalar",T:9},{no:3,name:"allowed",kind:"scalar",T:8}]),WT=N.makeMessageType("livekit.RoomMovedResponse",()=>[{no:1,name:"room",kind:"message",T:ra},{no:2,name:"token",kind:"scalar",T:9},{no:3,name:"participant",kind:"message",T:yi},{no:4,name:"other_participants",kind:"message",T:yi,repeated:!0}]),Ug=N.makeMessageType("livekit.SyncState",()=>[{no:1,name:"answer",kind:"message",T:Si},{no:2,name:"subscription",kind:"message",T:sa},{no:3,name:"publish_tracks",kind:"message",T:Tu,repeated:!0},{no:4,name:"data_channels",kind:"message",T:$g,repeated:!0},{no:5,name:"offer",kind:"message",T:Si},{no:6,name:"track_sids_disabled",kind:"scalar",T:9,repeated:!0},{no:7,name:"datachannel_receive_states",kind:"message",T:Bg,repeated:!0}]),Bg=N.makeMessageType("livekit.DataChannelReceiveState",()=>[{no:1,name:"publisher_sid",kind:"scalar",T:9},{no:2,name:"last_seq",kind:"scalar",T:13}]),$g=N.makeMessageType("livekit.DataChannelInfo",()=>[{no:1,name:"label",kind:"scalar",T:9},{no:2,name:"id",kind:"scalar",T:13},{no:3,name:"target",kind:"enum",T:N.getEnumType(Bt)}]),Kt=N.makeMessageType("livekit.SimulateScenario",()=>[{no:1,name:"speaker_update",kind:"scalar",T:5,oneof:"scenario"},{no:2,name:"node_failure",kind:"scalar",T:8,oneof:"scenario"},{no:3,name:"migration",kind:"scalar",T:8,oneof:"scenario"},{no:4,name:"server_leave",kind:"scalar",T:8,oneof:"scenario"},{no:5,name:"switch_candidate_protocol",kind:"enum",T:N.getEnumType(AT),oneof:"scenario"},{no:6,name:"subscriber_bandwidth",kind:"scalar",T:3,oneof:"scenario"},{no:7,name:"disconnect_signal_on_resume",kind:"scalar",T:8,oneof:"scenario"},{no:8,name:"disconnect_signal_on_resume_no_messages",kind:"scalar",T:8,oneof:"scenario"},{no:9,name:"leave_request_full_reconnect",kind:"scalar",T:8,oneof:"scenario"}]),Hg=N.makeMessageType("livekit.Ping",()=>[{no:1,name:"timestamp",kind:"scalar",T:3},{no:2,name:"rtt",kind:"scalar",T:3}]),qT=N.makeMessageType("livekit.Pong",()=>[{no:1,name:"last_ping_timestamp",kind:"scalar",T:3},{no:2,name:"timestamp",kind:"scalar",T:3}]),GT=N.makeMessageType("livekit.RegionSettings",()=>[{no:1,name:"regions",kind:"message",T:KT,repeated:!0}]),KT=N.makeMessageType("livekit.RegionInfo",()=>[{no:1,name:"region",kind:"scalar",T:9},{no:2,name:"url",kind:"scalar",T:9},{no:3,name:"distance",kind:"scalar",T:3}]),ZT=N.makeMessageType("livekit.SubscriptionResponse",()=>[{no:1,name:"track_sid",kind:"scalar",T:9},{no:2,name:"err",kind:"enum",T:N.getEnumType(ST)}]),YT=N.makeMessageType("livekit.RequestResponse",()=>[{no:1,name:"request_id",kind:"scalar",T:13},{no:2,name:"reason",kind:"enum",T:N.getEnumType(Cu)},{no:3,name:"message",kind:"scalar",T:9}]),Cu=N.makeEnum("livekit.RequestResponse.Reason",[{no:0,name:"OK"},{no:1,name:"NOT_FOUND"},{no:2,name:"NOT_ALLOWED"},{no:3,name:"LIMIT_EXCEEDED"}]),JT=N.makeMessageType("livekit.TrackSubscribed",()=>[{no:1,name:"track_sid",kind:"scalar",T:9}]);function XT(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var lo={exports:{}},QT=lo.exports,Tf;function ek(){return Tf||(Tf=1,function(t){(function(e,n){t.exports?t.exports=n():e.log=n()})(QT,function(){var e=function(){},n="undefined",i=typeof window!==n&&typeof window.navigator!==n&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],s={},o=null;function a(f,y){var v=f[y];if(typeof v.bind=="function")return v.bind(f);try{return Function.prototype.bind.call(v,f)}catch{return function(){return Function.prototype.apply.apply(v,[f,arguments])}}}function c(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function l(f){return f==="debug"&&(f="log"),typeof console===n?!1:f==="trace"&&i?c:console[f]!==void 0?a(console,f):console.log!==void 0?a(console,"log"):e}function u(){for(var f=this.getLevel(),y=0;y<r.length;y++){var v=r[y];this[v]=y<f?e:this.methodFactory(v,f,this.name)}if(this.log=this.debug,typeof console===n&&f<this.levels.SILENT)return"No console available for logging"}function d(f){return function(){typeof console!==n&&(u.call(this),this[f].apply(this,arguments))}}function h(f,y,v){return l(f)||d.apply(this,arguments)}function m(f,y){var v=this,C,T,k,b="loglevel";typeof f=="string"?b+=":"+f:typeof f=="symbol"&&(b=void 0);function w(A){var O=(r[A]||"silent").toUpperCase();if(!(typeof window===n||!b)){try{window.localStorage[b]=O;return}catch{}try{window.document.cookie=encodeURIComponent(b)+"="+O+";"}catch{}}}function x(){var A;if(!(typeof window===n||!b)){try{A=window.localStorage[b]}catch{}if(typeof A===n)try{var O=window.document.cookie,z=encodeURIComponent(b),K=O.indexOf(z+"=");K!==-1&&(A=/^([^;]+)/.exec(O.slice(K+z.length+1))[1])}catch{}return v.levels[A]===void 0&&(A=void 0),A}}function R(){if(!(typeof window===n||!b)){try{window.localStorage.removeItem(b)}catch{}try{window.document.cookie=encodeURIComponent(b)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}function _(A){var O=A;if(typeof O=="string"&&v.levels[O.toUpperCase()]!==void 0&&(O=v.levels[O.toUpperCase()]),typeof O=="number"&&O>=0&&O<=v.levels.SILENT)return O;throw new TypeError("log.setLevel() called with invalid level: "+A)}v.name=f,v.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},v.methodFactory=y||h,v.getLevel=function(){return k??T??C},v.setLevel=function(A,O){return k=_(A),O!==!1&&w(k),u.call(v)},v.setDefaultLevel=function(A){T=_(A),x()||v.setLevel(A,!1)},v.resetLevel=function(){k=null,R(),u.call(v)},v.enableAll=function(A){v.setLevel(v.levels.TRACE,A)},v.disableAll=function(A){v.setLevel(v.levels.SILENT,A)},v.rebuild=function(){if(o!==v&&(C=_(o.getLevel())),u.call(v),o===v)for(var A in s)s[A].rebuild()},C=_(o?o.getLevel():"WARN");var S=x();S!=null&&(k=_(S)),u.call(v)}o=new m,o.getLogger=function(y){if(typeof y!="symbol"&&typeof y!="string"||y==="")throw new TypeError("You must supply a name when creating a logger.");var v=s[y];return v||(v=s[y]=new m(y,o.methodFactory)),v};var g=typeof window!==n?window.log:void 0;return o.noConflict=function(){return typeof window!==n&&window.log===o&&(window.log=g),o},o.getLoggers=function(){return s},o.default=o,o})}(lo)),lo.exports}var aa=ek(),Yc;(function(t){t[t.trace=0]="trace",t[t.debug=1]="debug",t[t.info=2]="info",t[t.warn=3]="warn",t[t.error=4]="error",t[t.silent=5]="silent"})(Yc||(Yc={}));var zt;(function(t){t.Default="livekit",t.Room="livekit-room",t.Participant="livekit-participant",t.Track="livekit-track",t.Publication="livekit-track-publication",t.Engine="livekit-engine",t.Signal="livekit-signal",t.PCManager="livekit-pc-manager",t.PCTransport="livekit-pc-transport",t.E2EE="lk-e2ee"})(zt||(zt={}));let me=aa.getLogger("livekit");const tk=Object.values(zt).map(t=>aa.getLogger(t));me.setDefaultLevel(Yc.info);function Cn(t){const e=aa.getLogger(t);return e.setDefaultLevel(me.getLevel()),e}function nk(t,e){for(const n of tk)n.setLevel(t)}const ik=aa.getLogger("lk-e2ee"),Or=7e3,rk=[0,300,2*2*300,3*3*300,4*4*300,Or,Or,Or,Or,Or];class sk{constructor(e){this._retryDelays=e!==void 0?[...e]:rk}nextRetryDelayInMs(e){if(e.retryCount>=this._retryDelays.length)return null;const n=this._retryDelays[e.retryCount];return e.retryCount<=1?n:n+Math.random()*1e3}}function ok(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n}function P(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(u){try{l(i.next(u))}catch(d){o(d)}}function c(u){try{l(i.throw(u))}catch(d){o(d)}}function l(u){u.done?s(u.value):r(u.value).then(a,c)}l((i=i.apply(t,e||[])).next())})}function kf(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],i=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function bn(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof kf=="function"?kf(t):t[Symbol.iterator](),n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n);function i(s){n[s]=t[s]&&function(o){return new Promise(function(a,c){o=t[s](o),r(a,c,o.done,o.value)})}}function r(s,o,a,c){Promise.resolve(c).then(function(l){s({value:l,done:a})},o)}}var Vs={exports:{}},Cf;function ak(){if(Cf)return Vs.exports;Cf=1;var t=typeof Reflect=="object"?Reflect:null,e=t&&typeof t.apply=="function"?t.apply:function(b,w,x){return Function.prototype.apply.call(b,w,x)},n;t&&typeof t.ownKeys=="function"?n=t.ownKeys:Object.getOwnPropertySymbols?n=function(b){return Object.getOwnPropertyNames(b).concat(Object.getOwnPropertySymbols(b))}:n=function(b){return Object.getOwnPropertyNames(b)};function i(k){console&&console.warn&&console.warn(k)}var r=Number.isNaN||function(b){return b!==b};function s(){s.init.call(this)}Vs.exports=s,Vs.exports.once=v,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var o=10;function a(k){if(typeof k!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof k)}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(k){if(typeof k!="number"||k<0||r(k))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+k+".");o=k}}),s.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},s.prototype.setMaxListeners=function(b){if(typeof b!="number"||b<0||r(b))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+b+".");return this._maxListeners=b,this};function c(k){return k._maxListeners===void 0?s.defaultMaxListeners:k._maxListeners}s.prototype.getMaxListeners=function(){return c(this)},s.prototype.emit=function(b){for(var w=[],x=1;x<arguments.length;x++)w.push(arguments[x]);var R=b==="error",_=this._events;if(_!==void 0)R=R&&_.error===void 0;else if(!R)return!1;if(R){var S;if(w.length>0&&(S=w[0]),S instanceof Error)throw S;var A=new Error("Unhandled error."+(S?" ("+S.message+")":""));throw A.context=S,A}var O=_[b];if(O===void 0)return!1;if(typeof O=="function")e(O,this,w);else for(var z=O.length,K=g(O,z),x=0;x<z;++x)e(K[x],this,w);return!0};function l(k,b,w,x){var R,_,S;if(a(w),_=k._events,_===void 0?(_=k._events=Object.create(null),k._eventsCount=0):(_.newListener!==void 0&&(k.emit("newListener",b,w.listener?w.listener:w),_=k._events),S=_[b]),S===void 0)S=_[b]=w,++k._eventsCount;else if(typeof S=="function"?S=_[b]=x?[w,S]:[S,w]:x?S.unshift(w):S.push(w),R=c(k),R>0&&S.length>R&&!S.warned){S.warned=!0;var A=new Error("Possible EventEmitter memory leak detected. "+S.length+" "+String(b)+" listeners added. Use emitter.setMaxListeners() to increase limit");A.name="MaxListenersExceededWarning",A.emitter=k,A.type=b,A.count=S.length,i(A)}return k}s.prototype.addListener=function(b,w){return l(this,b,w,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(b,w){return l(this,b,w,!0)};function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(k,b,w){var x={fired:!1,wrapFn:void 0,target:k,type:b,listener:w},R=u.bind(x);return R.listener=w,x.wrapFn=R,R}s.prototype.once=function(b,w){return a(w),this.on(b,d(this,b,w)),this},s.prototype.prependOnceListener=function(b,w){return a(w),this.prependListener(b,d(this,b,w)),this},s.prototype.removeListener=function(b,w){var x,R,_,S,A;if(a(w),R=this._events,R===void 0)return this;if(x=R[b],x===void 0)return this;if(x===w||x.listener===w)--this._eventsCount===0?this._events=Object.create(null):(delete R[b],R.removeListener&&this.emit("removeListener",b,x.listener||w));else if(typeof x!="function"){for(_=-1,S=x.length-1;S>=0;S--)if(x[S]===w||x[S].listener===w){A=x[S].listener,_=S;break}if(_<0)return this;_===0?x.shift():f(x,_),x.length===1&&(R[b]=x[0]),R.removeListener!==void 0&&this.emit("removeListener",b,A||w)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(b){var w,x,R;if(x=this._events,x===void 0)return this;if(x.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):x[b]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete x[b]),this;if(arguments.length===0){var _=Object.keys(x),S;for(R=0;R<_.length;++R)S=_[R],S!=="removeListener"&&this.removeAllListeners(S);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(w=x[b],typeof w=="function")this.removeListener(b,w);else if(w!==void 0)for(R=w.length-1;R>=0;R--)this.removeListener(b,w[R]);return this};function h(k,b,w){var x=k._events;if(x===void 0)return[];var R=x[b];return R===void 0?[]:typeof R=="function"?w?[R.listener||R]:[R]:w?y(R):g(R,R.length)}s.prototype.listeners=function(b){return h(this,b,!0)},s.prototype.rawListeners=function(b){return h(this,b,!1)},s.listenerCount=function(k,b){return typeof k.listenerCount=="function"?k.listenerCount(b):m.call(k,b)},s.prototype.listenerCount=m;function m(k){var b=this._events;if(b!==void 0){var w=b[k];if(typeof w=="function")return 1;if(w!==void 0)return w.length}return 0}s.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]};function g(k,b){for(var w=new Array(b),x=0;x<b;++x)w[x]=k[x];return w}function f(k,b){for(;b+1<k.length;b++)k[b]=k[b+1];k.pop()}function y(k){for(var b=new Array(k.length),w=0;w<b.length;++w)b[w]=k[w].listener||k[w];return b}function v(k,b){return new Promise(function(w,x){function R(S){k.removeListener(b,_),x(S)}function _(){typeof k.removeListener=="function"&&k.removeListener("error",R),w([].slice.call(arguments))}T(k,b,_,{once:!0}),b!=="error"&&C(k,R,{once:!0})})}function C(k,b,w){typeof k.on=="function"&&T(k,"error",b,w)}function T(k,b,w,x){if(typeof k.on=="function")x.once?k.once(b,w):k.on(b,w);else if(typeof k.addEventListener=="function")k.addEventListener(b,function R(_){x.once&&k.removeEventListener(b,R),w(_)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof k)}return Vs.exports}var ln=ak();let zg=!0,Wg=!0;function zr(t,e,n){const i=t.match(e);return i&&i.length>=n&&parseFloat(i[n],10)}function Ri(t,e,n){if(!t.RTCPeerConnection)return;const i=t.RTCPeerConnection.prototype,r=i.addEventListener;i.addEventListener=function(o,a){if(o!==e)return r.apply(this,arguments);const c=l=>{const u=n(l);u&&(a.handleEvent?a.handleEvent(u):a(u))};return this._eventMap=this._eventMap||{},this._eventMap[e]||(this._eventMap[e]=new Map),this._eventMap[e].set(a,c),r.apply(this,[o,c])};const s=i.removeEventListener;i.removeEventListener=function(o,a){if(o!==e||!this._eventMap||!this._eventMap[e])return s.apply(this,arguments);if(!this._eventMap[e].has(a))return s.apply(this,arguments);const c=this._eventMap[e].get(a);return this._eventMap[e].delete(a),this._eventMap[e].size===0&&delete this._eventMap[e],Object.keys(this._eventMap).length===0&&delete this._eventMap,s.apply(this,[o,c])},Object.defineProperty(i,"on"+e,{get(){return this["_on"+e]},set(o){this["_on"+e]&&(this.removeEventListener(e,this["_on"+e]),delete this["_on"+e]),o&&this.addEventListener(e,this["_on"+e]=o)},enumerable:!0,configurable:!0})}function ck(t){return typeof t!="boolean"?new Error("Argument type: "+typeof t+". Please use a boolean."):(zg=t,t?"adapter.js logging disabled":"adapter.js logging enabled")}function lk(t){return typeof t!="boolean"?new Error("Argument type: "+typeof t+". Please use a boolean."):(Wg=!t,"adapter.js deprecation warnings "+(t?"disabled":"enabled"))}function qg(){if(typeof window=="object"){if(zg)return;typeof console<"u"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function wu(t,e){Wg&&console.warn(t+" is deprecated, please use "+e+" instead.")}function uk(t){const e={browser:null,version:null};if(typeof t>"u"||!t.navigator||!t.navigator.userAgent)return e.browser="Not a browser.",e;const{navigator:n}=t;if(n.userAgentData&&n.userAgentData.brands){const i=n.userAgentData.brands.find(r=>r.brand==="Chromium");if(i)return{browser:"chrome",version:parseInt(i.version,10)}}if(n.mozGetUserMedia)e.browser="firefox",e.version=parseInt(zr(n.userAgent,/Firefox\/(\d+)\./,1));else if(n.webkitGetUserMedia||t.isSecureContext===!1&&t.webkitRTCPeerConnection)e.browser="chrome",e.version=parseInt(zr(n.userAgent,/Chrom(e|ium)\/(\d+)\./,2));else if(t.RTCPeerConnection&&n.userAgent.match(/AppleWebKit\/(\d+)\./))e.browser="safari",e.version=parseInt(zr(n.userAgent,/AppleWebKit\/(\d+)\./,1)),e.supportsUnifiedPlan=t.RTCRtpTransceiver&&"currentDirection"in t.RTCRtpTransceiver.prototype,e._safariVersion=zr(n.userAgent,/Version\/(\d+(\.?\d+))/,1);else return e.browser="Not a supported browser.",e;return e}function wf(t){return Object.prototype.toString.call(t)==="[object Object]"}function Gg(t){return wf(t)?Object.keys(t).reduce(function(e,n){const i=wf(t[n]),r=i?Gg(t[n]):t[n],s=i&&!Object.keys(r).length;return r===void 0||s?e:Object.assign(e,{[n]:r})},{}):t}function Jc(t,e,n){!e||n.has(e.id)||(n.set(e.id,e),Object.keys(e).forEach(i=>{i.endsWith("Id")?Jc(t,t.get(e[i]),n):i.endsWith("Ids")&&e[i].forEach(r=>{Jc(t,t.get(r),n)})}))}function xf(t,e,n){const i=n?"outbound-rtp":"inbound-rtp",r=new Map;if(e===null)return r;const s=[];return t.forEach(o=>{o.type==="track"&&o.trackIdentifier===e.id&&s.push(o)}),s.forEach(o=>{t.forEach(a=>{a.type===i&&a.trackId===o.id&&Jc(t,a,r)})}),r}const Ef=qg;function Kg(t,e){const n=t&&t.navigator;if(!n.mediaDevices)return;const i=function(a){if(typeof a!="object"||a.mandatory||a.optional)return a;const c={};return Object.keys(a).forEach(l=>{if(l==="require"||l==="advanced"||l==="mediaSource")return;const u=typeof a[l]=="object"?a[l]:{ideal:a[l]};u.exact!==void 0&&typeof u.exact=="number"&&(u.min=u.max=u.exact);const d=function(h,m){return h?h+m.charAt(0).toUpperCase()+m.slice(1):m==="deviceId"?"sourceId":m};if(u.ideal!==void 0){c.optional=c.optional||[];let h={};typeof u.ideal=="number"?(h[d("min",l)]=u.ideal,c.optional.push(h),h={},h[d("max",l)]=u.ideal,c.optional.push(h)):(h[d("",l)]=u.ideal,c.optional.push(h))}u.exact!==void 0&&typeof u.exact!="number"?(c.mandatory=c.mandatory||{},c.mandatory[d("",l)]=u.exact):["min","max"].forEach(h=>{u[h]!==void 0&&(c.mandatory=c.mandatory||{},c.mandatory[d(h,l)]=u[h])})}),a.advanced&&(c.optional=(c.optional||[]).concat(a.advanced)),c},r=function(a,c){if(e.version>=61)return c(a);if(a=JSON.parse(JSON.stringify(a)),a&&typeof a.audio=="object"){const l=function(u,d,h){d in u&&!(h in u)&&(u[h]=u[d],delete u[d])};a=JSON.parse(JSON.stringify(a)),l(a.audio,"autoGainControl","googAutoGainControl"),l(a.audio,"noiseSuppression","googNoiseSuppression"),a.audio=i(a.audio)}if(a&&typeof a.video=="object"){let l=a.video.facingMode;l=l&&(typeof l=="object"?l:{ideal:l});const u=e.version<66;if(l&&(l.exact==="user"||l.exact==="environment"||l.ideal==="user"||l.ideal==="environment")&&!(n.mediaDevices.getSupportedConstraints&&n.mediaDevices.getSupportedConstraints().facingMode&&!u)){delete a.video.facingMode;let d;if(l.exact==="environment"||l.ideal==="environment"?d=["back","rear"]:(l.exact==="user"||l.ideal==="user")&&(d=["front"]),d)return n.mediaDevices.enumerateDevices().then(h=>{h=h.filter(g=>g.kind==="videoinput");let m=h.find(g=>d.some(f=>g.label.toLowerCase().includes(f)));return!m&&h.length&&d.includes("back")&&(m=h[h.length-1]),m&&(a.video.deviceId=l.exact?{exact:m.deviceId}:{ideal:m.deviceId}),a.video=i(a.video),Ef("chrome: "+JSON.stringify(a)),c(a)})}a.video=i(a.video)}return Ef("chrome: "+JSON.stringify(a)),c(a)},s=function(a){return e.version>=64?a:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[a.name]||a.name,message:a.message,constraint:a.constraint||a.constraintName,toString(){return this.name+(this.message&&": ")+this.message}}},o=function(a,c,l){r(a,u=>{n.webkitGetUserMedia(u,c,d=>{l&&l(s(d))})})};if(n.getUserMedia=o.bind(n),n.mediaDevices.getUserMedia){const a=n.mediaDevices.getUserMedia.bind(n.mediaDevices);n.mediaDevices.getUserMedia=function(c){return r(c,l=>a(l).then(u=>{if(l.audio&&!u.getAudioTracks().length||l.video&&!u.getVideoTracks().length)throw u.getTracks().forEach(d=>{d.stop()}),new DOMException("","NotFoundError");return u},u=>Promise.reject(s(u))))}}}function Zg(t){t.MediaStream=t.MediaStream||t.webkitMediaStream}function Yg(t){if(typeof t=="object"&&t.RTCPeerConnection&&!("ontrack"in t.RTCPeerConnection.prototype)){Object.defineProperty(t.RTCPeerConnection.prototype,"ontrack",{get(){return this._ontrack},set(n){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=n)},enumerable:!0,configurable:!0});const e=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){return this._ontrackpoly||(this._ontrackpoly=i=>{i.stream.addEventListener("addtrack",r=>{let s;t.RTCPeerConnection.prototype.getReceivers?s=this.getReceivers().find(a=>a.track&&a.track.id===r.track.id):s={track:r.track};const o=new Event("track");o.track=r.track,o.receiver=s,o.transceiver={receiver:s},o.streams=[i.stream],this.dispatchEvent(o)}),i.stream.getTracks().forEach(r=>{let s;t.RTCPeerConnection.prototype.getReceivers?s=this.getReceivers().find(a=>a.track&&a.track.id===r.id):s={track:r};const o=new Event("track");o.track=r,o.receiver=s,o.transceiver={receiver:s},o.streams=[i.stream],this.dispatchEvent(o)})},this.addEventListener("addstream",this._ontrackpoly)),e.apply(this,arguments)}}else Ri(t,"track",e=>(e.transceiver||Object.defineProperty(e,"transceiver",{value:{receiver:e.receiver}}),e))}function Jg(t){if(typeof t=="object"&&t.RTCPeerConnection&&!("getSenders"in t.RTCPeerConnection.prototype)&&"createDTMFSender"in t.RTCPeerConnection.prototype){const e=function(r,s){return{track:s,get dtmf(){return this._dtmf===void 0&&(s.kind==="audio"?this._dtmf=r.createDTMFSender(s):this._dtmf=null),this._dtmf},_pc:r}};if(!t.RTCPeerConnection.prototype.getSenders){t.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};const r=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addTrack=function(a,c){let l=r.apply(this,arguments);return l||(l=e(this,a),this._senders.push(l)),l};const s=t.RTCPeerConnection.prototype.removeTrack;t.RTCPeerConnection.prototype.removeTrack=function(a){s.apply(this,arguments);const c=this._senders.indexOf(a);c!==-1&&this._senders.splice(c,1)}}const n=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(s){this._senders=this._senders||[],n.apply(this,[s]),s.getTracks().forEach(o=>{this._senders.push(e(this,o))})};const i=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(s){this._senders=this._senders||[],i.apply(this,[s]),s.getTracks().forEach(o=>{const a=this._senders.find(c=>c.track===o);a&&this._senders.splice(this._senders.indexOf(a),1)})}}else if(typeof t=="object"&&t.RTCPeerConnection&&"getSenders"in t.RTCPeerConnection.prototype&&"createDTMFSender"in t.RTCPeerConnection.prototype&&t.RTCRtpSender&&!("dtmf"in t.RTCRtpSender.prototype)){const e=t.RTCPeerConnection.prototype.getSenders;t.RTCPeerConnection.prototype.getSenders=function(){const i=e.apply(this,[]);return i.forEach(r=>r._pc=this),i},Object.defineProperty(t.RTCRtpSender.prototype,"dtmf",{get(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function Xg(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender&&t.RTCRtpReceiver))return;if(!("getStats"in t.RTCRtpSender.prototype)){const n=t.RTCPeerConnection.prototype.getSenders;n&&(t.RTCPeerConnection.prototype.getSenders=function(){const s=n.apply(this,[]);return s.forEach(o=>o._pc=this),s});const i=t.RTCPeerConnection.prototype.addTrack;i&&(t.RTCPeerConnection.prototype.addTrack=function(){const s=i.apply(this,arguments);return s._pc=this,s}),t.RTCRtpSender.prototype.getStats=function(){const s=this;return this._pc.getStats().then(o=>xf(o,s.track,!0))}}if(!("getStats"in t.RTCRtpReceiver.prototype)){const n=t.RTCPeerConnection.prototype.getReceivers;n&&(t.RTCPeerConnection.prototype.getReceivers=function(){const r=n.apply(this,[]);return r.forEach(s=>s._pc=this),r}),Ri(t,"track",i=>(i.receiver._pc=i.srcElement,i)),t.RTCRtpReceiver.prototype.getStats=function(){const r=this;return this._pc.getStats().then(s=>xf(s,r.track,!1))}}if(!("getStats"in t.RTCRtpSender.prototype&&"getStats"in t.RTCRtpReceiver.prototype))return;const e=t.RTCPeerConnection.prototype.getStats;t.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof t.MediaStreamTrack){const i=arguments[0];let r,s,o;return this.getSenders().forEach(a=>{a.track===i&&(r?o=!0:r=a)}),this.getReceivers().forEach(a=>(a.track===i&&(s?o=!0:s=a),a.track===i)),o||r&&s?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):r?r.getStats():s?s.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return e.apply(this,arguments)}}function Qg(t){t.RTCPeerConnection.prototype.getLocalStreams=function(){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(o=>this._shimmedLocalStreams[o][0])};const e=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addTrack=function(o,a){if(!a)return e.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};const c=e.apply(this,arguments);return this._shimmedLocalStreams[a.id]?this._shimmedLocalStreams[a.id].indexOf(c)===-1&&this._shimmedLocalStreams[a.id].push(c):this._shimmedLocalStreams[a.id]=[a,c],c};const n=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(o){this._shimmedLocalStreams=this._shimmedLocalStreams||{},o.getTracks().forEach(l=>{if(this.getSenders().find(d=>d.track===l))throw new DOMException("Track already exists.","InvalidAccessError")});const a=this.getSenders();n.apply(this,arguments);const c=this.getSenders().filter(l=>a.indexOf(l)===-1);this._shimmedLocalStreams[o.id]=[o].concat(c)};const i=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(o){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[o.id],i.apply(this,arguments)};const r=t.RTCPeerConnection.prototype.removeTrack;t.RTCPeerConnection.prototype.removeTrack=function(o){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},o&&Object.keys(this._shimmedLocalStreams).forEach(a=>{const c=this._shimmedLocalStreams[a].indexOf(o);c!==-1&&this._shimmedLocalStreams[a].splice(c,1),this._shimmedLocalStreams[a].length===1&&delete this._shimmedLocalStreams[a]}),r.apply(this,arguments)}}function e0(t,e){if(!t.RTCPeerConnection)return;if(t.RTCPeerConnection.prototype.addTrack&&e.version>=65)return Qg(t);const n=t.RTCPeerConnection.prototype.getLocalStreams;t.RTCPeerConnection.prototype.getLocalStreams=function(){const u=n.apply(this);return this._reverseStreams=this._reverseStreams||{},u.map(d=>this._reverseStreams[d.id])};const i=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(u){if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},u.getTracks().forEach(d=>{if(this.getSenders().find(m=>m.track===d))throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[u.id]){const d=new t.MediaStream(u.getTracks());this._streams[u.id]=d,this._reverseStreams[d.id]=u,u=d}i.apply(this,[u])};const r=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(u){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},r.apply(this,[this._streams[u.id]||u]),delete this._reverseStreams[this._streams[u.id]?this._streams[u.id].id:u.id],delete this._streams[u.id]},t.RTCPeerConnection.prototype.addTrack=function(u,d){if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");const h=[].slice.call(arguments,1);if(h.length!==1||!h[0].getTracks().find(f=>f===u))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");if(this.getSenders().find(f=>f.track===u))throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};const g=this._streams[d.id];if(g)g.addTrack(u),Promise.resolve().then(()=>{this.dispatchEvent(new Event("negotiationneeded"))});else{const f=new t.MediaStream([u]);this._streams[d.id]=f,this._reverseStreams[f.id]=d,this.addStream(f)}return this.getSenders().find(f=>f.track===u)};function s(l,u){let d=u.sdp;return Object.keys(l._reverseStreams||[]).forEach(h=>{const m=l._reverseStreams[h],g=l._streams[m.id];d=d.replace(new RegExp(g.id,"g"),m.id)}),new RTCSessionDescription({type:u.type,sdp:d})}function o(l,u){let d=u.sdp;return Object.keys(l._reverseStreams||[]).forEach(h=>{const m=l._reverseStreams[h],g=l._streams[m.id];d=d.replace(new RegExp(m.id,"g"),g.id)}),new RTCSessionDescription({type:u.type,sdp:d})}["createOffer","createAnswer"].forEach(function(l){const u=t.RTCPeerConnection.prototype[l],d={[l](){const h=arguments;return arguments.length&&typeof arguments[0]=="function"?u.apply(this,[g=>{const f=s(this,g);h[0].apply(null,[f])},g=>{h[1]&&h[1].apply(null,g)},arguments[2]]):u.apply(this,arguments).then(g=>s(this,g))}};t.RTCPeerConnection.prototype[l]=d[l]});const a=t.RTCPeerConnection.prototype.setLocalDescription;t.RTCPeerConnection.prototype.setLocalDescription=function(){return!arguments.length||!arguments[0].type?a.apply(this,arguments):(arguments[0]=o(this,arguments[0]),a.apply(this,arguments))};const c=Object.getOwnPropertyDescriptor(t.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(t.RTCPeerConnection.prototype,"localDescription",{get(){const l=c.get.apply(this);return l.type===""?l:s(this,l)}}),t.RTCPeerConnection.prototype.removeTrack=function(u){if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!u._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");if(!(u._pc===this))throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{};let h;Object.keys(this._streams).forEach(m=>{this._streams[m].getTracks().find(f=>u.track===f)&&(h=this._streams[m])}),h&&(h.getTracks().length===1?this.removeStream(this._reverseStreams[h.id]):h.removeTrack(u.track),this.dispatchEvent(new Event("negotiationneeded")))}}function Xc(t,e){!t.RTCPeerConnection&&t.webkitRTCPeerConnection&&(t.RTCPeerConnection=t.webkitRTCPeerConnection),t.RTCPeerConnection&&e.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(n){const i=t.RTCPeerConnection.prototype[n],r={[n](){return arguments[0]=new(n==="addIceCandidate"?t.RTCIceCandidate:t.RTCSessionDescription)(arguments[0]),i.apply(this,arguments)}};t.RTCPeerConnection.prototype[n]=r[n]})}function t0(t,e){Ri(t,"negotiationneeded",n=>{const i=n.target;if(!((e.version<72||i.getConfiguration&&i.getConfiguration().sdpSemantics==="plan-b")&&i.signalingState!=="stable"))return n})}var Pf=Object.freeze({__proto__:null,fixNegotiationNeeded:t0,shimAddTrackRemoveTrack:e0,shimAddTrackRemoveTrackWithNative:Qg,shimGetSendersWithDtmf:Jg,shimGetUserMedia:Kg,shimMediaStream:Zg,shimOnTrack:Yg,shimPeerConnection:Xc,shimSenderReceiverGetStats:Xg});function n0(t,e){const n=t&&t.navigator,i=t&&t.MediaStreamTrack;if(n.getUserMedia=function(r,s,o){wu("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),n.mediaDevices.getUserMedia(r).then(s,o)},!(e.version>55&&"autoGainControl"in n.mediaDevices.getSupportedConstraints())){const r=function(o,a,c){a in o&&!(c in o)&&(o[c]=o[a],delete o[a])},s=n.mediaDevices.getUserMedia.bind(n.mediaDevices);if(n.mediaDevices.getUserMedia=function(o){return typeof o=="object"&&typeof o.audio=="object"&&(o=JSON.parse(JSON.stringify(o)),r(o.audio,"autoGainControl","mozAutoGainControl"),r(o.audio,"noiseSuppression","mozNoiseSuppression")),s(o)},i&&i.prototype.getSettings){const o=i.prototype.getSettings;i.prototype.getSettings=function(){const a=o.apply(this,arguments);return r(a,"mozAutoGainControl","autoGainControl"),r(a,"mozNoiseSuppression","noiseSuppression"),a}}if(i&&i.prototype.applyConstraints){const o=i.prototype.applyConstraints;i.prototype.applyConstraints=function(a){return this.kind==="audio"&&typeof a=="object"&&(a=JSON.parse(JSON.stringify(a)),r(a,"autoGainControl","mozAutoGainControl"),r(a,"noiseSuppression","mozNoiseSuppression")),o.apply(this,[a])}}}}function dk(t,e){t.navigator.mediaDevices&&"getDisplayMedia"in t.navigator.mediaDevices||t.navigator.mediaDevices&&(t.navigator.mediaDevices.getDisplayMedia=function(i){if(!(i&&i.video)){const r=new DOMException("getDisplayMedia without video constraints is undefined");return r.name="NotFoundError",r.code=8,Promise.reject(r)}return i.video===!0?i.video={mediaSource:e}:i.video.mediaSource=e,t.navigator.mediaDevices.getUserMedia(i)})}function i0(t){typeof t=="object"&&t.RTCTrackEvent&&"receiver"in t.RTCTrackEvent.prototype&&!("transceiver"in t.RTCTrackEvent.prototype)&&Object.defineProperty(t.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function Qc(t,e){if(typeof t!="object"||!(t.RTCPeerConnection||t.mozRTCPeerConnection))return;!t.RTCPeerConnection&&t.mozRTCPeerConnection&&(t.RTCPeerConnection=t.mozRTCPeerConnection),e.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(r){const s=t.RTCPeerConnection.prototype[r],o={[r](){return arguments[0]=new(r==="addIceCandidate"?t.RTCIceCandidate:t.RTCSessionDescription)(arguments[0]),s.apply(this,arguments)}};t.RTCPeerConnection.prototype[r]=o[r]});const n={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},i=t.RTCPeerConnection.prototype.getStats;t.RTCPeerConnection.prototype.getStats=function(){const[s,o,a]=arguments;return i.apply(this,[s||null]).then(c=>{if(e.version<53&&!o)try{c.forEach(l=>{l.type=n[l.type]||l.type})}catch(l){if(l.name!=="TypeError")throw l;c.forEach((u,d)=>{c.set(d,Object.assign({},u,{type:n[u.type]||u.type}))})}return c}).then(o,a)}}function r0(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender)||t.RTCRtpSender&&"getStats"in t.RTCRtpSender.prototype)return;const e=t.RTCPeerConnection.prototype.getSenders;e&&(t.RTCPeerConnection.prototype.getSenders=function(){const r=e.apply(this,[]);return r.forEach(s=>s._pc=this),r});const n=t.RTCPeerConnection.prototype.addTrack;n&&(t.RTCPeerConnection.prototype.addTrack=function(){const r=n.apply(this,arguments);return r._pc=this,r}),t.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}function s0(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender)||t.RTCRtpSender&&"getStats"in t.RTCRtpReceiver.prototype)return;const e=t.RTCPeerConnection.prototype.getReceivers;e&&(t.RTCPeerConnection.prototype.getReceivers=function(){const i=e.apply(this,[]);return i.forEach(r=>r._pc=this),i}),Ri(t,"track",n=>(n.receiver._pc=n.srcElement,n)),t.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}function o0(t){!t.RTCPeerConnection||"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(n){wu("removeStream","removeTrack"),this.getSenders().forEach(i=>{i.track&&n.getTracks().includes(i.track)&&this.removeTrack(i)})})}function a0(t){t.DataChannel&&!t.RTCDataChannel&&(t.RTCDataChannel=t.DataChannel)}function c0(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.addTransceiver;e&&(t.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];let i=arguments[1]&&arguments[1].sendEncodings;i===void 0&&(i=[]),i=[...i];const r=i.length>0;r&&i.forEach(o=>{if("rid"in o&&!/^[a-z0-9]{0,16}$/i.test(o.rid))throw new TypeError("Invalid RID value provided.");if("scaleResolutionDownBy"in o&&!(parseFloat(o.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in o&&!(parseFloat(o.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});const s=e.apply(this,arguments);if(r){const{sender:o}=s,a=o.getParameters();(!("encodings"in a)||a.encodings.length===1&&Object.keys(a.encodings[0]).length===0)&&(a.encodings=i,o.sendEncodings=i,this.setParametersPromises.push(o.setParameters(a).then(()=>{delete o.sendEncodings}).catch(()=>{delete o.sendEncodings})))}return s})}function l0(t){if(!(typeof t=="object"&&t.RTCRtpSender))return;const e=t.RTCRtpSender.prototype.getParameters;e&&(t.RTCRtpSender.prototype.getParameters=function(){const i=e.apply(this,arguments);return"encodings"in i||(i.encodings=[].concat(this.sendEncodings||[{}])),i})}function u0(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.createOffer;t.RTCPeerConnection.prototype.createOffer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>e.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):e.apply(this,arguments)}}function d0(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.createAnswer;t.RTCPeerConnection.prototype.createAnswer=function(){return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(()=>e.apply(this,arguments)).finally(()=>{this.setParametersPromises=[]}):e.apply(this,arguments)}}var Rf=Object.freeze({__proto__:null,shimAddTransceiver:c0,shimCreateAnswer:d0,shimCreateOffer:u0,shimGetDisplayMedia:dk,shimGetParameters:l0,shimGetUserMedia:n0,shimOnTrack:i0,shimPeerConnection:Qc,shimRTCDataChannel:a0,shimReceiverGetStats:s0,shimRemoveStream:o0,shimSenderGetStats:r0});function f0(t){if(!(typeof t!="object"||!t.RTCPeerConnection)){if("getLocalStreams"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in t.RTCPeerConnection.prototype)){const e=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addStream=function(i){this._localStreams||(this._localStreams=[]),this._localStreams.includes(i)||this._localStreams.push(i),i.getAudioTracks().forEach(r=>e.call(this,r,i)),i.getVideoTracks().forEach(r=>e.call(this,r,i))},t.RTCPeerConnection.prototype.addTrack=function(i){for(var r=arguments.length,s=new Array(r>1?r-1:0),o=1;o<r;o++)s[o-1]=arguments[o];return s&&s.forEach(a=>{this._localStreams?this._localStreams.includes(a)||this._localStreams.push(a):this._localStreams=[a]}),e.apply(this,arguments)}}"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(n){this._localStreams||(this._localStreams=[]);const i=this._localStreams.indexOf(n);if(i===-1)return;this._localStreams.splice(i,1);const r=n.getTracks();this.getSenders().forEach(s=>{r.includes(s.track)&&this.removeTrack(s)})})}}function h0(t){if(!(typeof t!="object"||!t.RTCPeerConnection)&&("getRemoteStreams"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in t.RTCPeerConnection.prototype))){Object.defineProperty(t.RTCPeerConnection.prototype,"onaddstream",{get(){return this._onaddstream},set(n){this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=n),this.addEventListener("track",this._onaddstreampoly=i=>{i.streams.forEach(r=>{if(this._remoteStreams||(this._remoteStreams=[]),this._remoteStreams.includes(r))return;this._remoteStreams.push(r);const s=new Event("addstream");s.stream=r,this.dispatchEvent(s)})})}});const e=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){const i=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(r){r.streams.forEach(s=>{if(i._remoteStreams||(i._remoteStreams=[]),i._remoteStreams.indexOf(s)>=0)return;i._remoteStreams.push(s);const o=new Event("addstream");o.stream=s,i.dispatchEvent(o)})}),e.apply(i,arguments)}}}function p0(t){if(typeof t!="object"||!t.RTCPeerConnection)return;const e=t.RTCPeerConnection.prototype,n=e.createOffer,i=e.createAnswer,r=e.setLocalDescription,s=e.setRemoteDescription,o=e.addIceCandidate;e.createOffer=function(l,u){const d=arguments.length>=2?arguments[2]:arguments[0],h=n.apply(this,[d]);return u?(h.then(l,u),Promise.resolve()):h},e.createAnswer=function(l,u){const d=arguments.length>=2?arguments[2]:arguments[0],h=i.apply(this,[d]);return u?(h.then(l,u),Promise.resolve()):h};let a=function(c,l,u){const d=r.apply(this,[c]);return u?(d.then(l,u),Promise.resolve()):d};e.setLocalDescription=a,a=function(c,l,u){const d=s.apply(this,[c]);return u?(d.then(l,u),Promise.resolve()):d},e.setRemoteDescription=a,a=function(c,l,u){const d=o.apply(this,[c]);return u?(d.then(l,u),Promise.resolve()):d},e.addIceCandidate=a}function m0(t){const e=t&&t.navigator;if(e.mediaDevices&&e.mediaDevices.getUserMedia){const n=e.mediaDevices,i=n.getUserMedia.bind(n);e.mediaDevices.getUserMedia=r=>i(g0(r))}!e.getUserMedia&&e.mediaDevices&&e.mediaDevices.getUserMedia&&(e.getUserMedia=(function(i,r,s){e.mediaDevices.getUserMedia(i).then(r,s)}).bind(e))}function g0(t){return t&&t.video!==void 0?Object.assign({},t,{video:Gg(t.video)}):t}function v0(t){if(!t.RTCPeerConnection)return;const e=t.RTCPeerConnection;t.RTCPeerConnection=function(i,r){if(i&&i.iceServers){const s=[];for(let o=0;o<i.iceServers.length;o++){let a=i.iceServers[o];a.urls===void 0&&a.url?(wu("RTCIceServer.url","RTCIceServer.urls"),a=JSON.parse(JSON.stringify(a)),a.urls=a.url,delete a.url,s.push(a)):s.push(i.iceServers[o])}i.iceServers=s}return new e(i,r)},t.RTCPeerConnection.prototype=e.prototype,"generateCertificate"in e&&Object.defineProperty(t.RTCPeerConnection,"generateCertificate",{get(){return e.generateCertificate}})}function y0(t){typeof t=="object"&&t.RTCTrackEvent&&"receiver"in t.RTCTrackEvent.prototype&&!("transceiver"in t.RTCTrackEvent.prototype)&&Object.defineProperty(t.RTCTrackEvent.prototype,"transceiver",{get(){return{receiver:this.receiver}}})}function b0(t){const e=t.RTCPeerConnection.prototype.createOffer;t.RTCPeerConnection.prototype.createOffer=function(i){if(i){typeof i.offerToReceiveAudio<"u"&&(i.offerToReceiveAudio=!!i.offerToReceiveAudio);const r=this.getTransceivers().find(o=>o.receiver.track.kind==="audio");i.offerToReceiveAudio===!1&&r?r.direction==="sendrecv"?r.setDirection?r.setDirection("sendonly"):r.direction="sendonly":r.direction==="recvonly"&&(r.setDirection?r.setDirection("inactive"):r.direction="inactive"):i.offerToReceiveAudio===!0&&!r&&this.addTransceiver("audio",{direction:"recvonly"}),typeof i.offerToReceiveVideo<"u"&&(i.offerToReceiveVideo=!!i.offerToReceiveVideo);const s=this.getTransceivers().find(o=>o.receiver.track.kind==="video");i.offerToReceiveVideo===!1&&s?s.direction==="sendrecv"?s.setDirection?s.setDirection("sendonly"):s.direction="sendonly":s.direction==="recvonly"&&(s.setDirection?s.setDirection("inactive"):s.direction="inactive"):i.offerToReceiveVideo===!0&&!s&&this.addTransceiver("video",{direction:"recvonly"})}return e.apply(this,arguments)}}function S0(t){typeof t!="object"||t.AudioContext||(t.AudioContext=t.webkitAudioContext)}var Af=Object.freeze({__proto__:null,shimAudioContext:S0,shimCallbacksAPI:p0,shimConstraints:g0,shimCreateOfferLegacy:b0,shimGetUserMedia:m0,shimLocalStreamsAPI:f0,shimRTCIceServerUrls:v0,shimRemoteStreamsAPI:h0,shimTrackEventTransceiver:y0}),ja={exports:{}},If;function fk(){return If||(If=1,function(t){const e={};e.generateIdentifier=function(){return Math.random().toString(36).substring(2,12)},e.localCName=e.generateIdentifier(),e.splitLines=function(n){return n.trim().split(`
|
|
34
34
|
`).map(i=>i.trim())},e.splitSections=function(n){return n.split(`
|
|
35
35
|
m=`).map((r,s)=>(s>0?"m="+r:r).trim()+`\r
|
|
36
36
|
`)},e.getDescription=function(n){const i=e.splitSections(n);return i&&i[0]},e.getMediaSections=function(n){const i=e.splitSections(n);return i.shift(),i},e.matchPrefix=function(n,i){return e.splitLines(n).filter(r=>r.indexOf(i)===0)},e.parseCandidate=function(n){let i;n.indexOf("a=candidate:")===0?i=n.substring(12).split(" "):i=n.substring(10).split(" ");const r={foundation:i[0],component:{1:"rtp",2:"rtcp"}[i[1]]||i[1],protocol:i[2].toLowerCase(),priority:parseInt(i[3],10),ip:i[4],address:i[4],port:parseInt(i[5],10),type:i[7]};for(let s=8;s<i.length;s+=2)switch(i[s]){case"raddr":r.relatedAddress=i[s+1];break;case"rport":r.relatedPort=parseInt(i[s+1],10);break;case"tcptype":r.tcpType=i[s+1];break;case"ufrag":r.ufrag=i[s+1],r.usernameFragment=i[s+1];break;default:r[i[s]]===void 0&&(r[i[s]]=i[s+1]);break}return r},e.writeCandidate=function(n){const i=[];i.push(n.foundation);const r=n.component;r==="rtp"?i.push(1):r==="rtcp"?i.push(2):i.push(r),i.push(n.protocol.toUpperCase()),i.push(n.priority),i.push(n.address||n.ip),i.push(n.port);const s=n.type;return i.push("typ"),i.push(s),s!=="host"&&n.relatedAddress&&n.relatedPort&&(i.push("raddr"),i.push(n.relatedAddress),i.push("rport"),i.push(n.relatedPort)),n.tcpType&&n.protocol.toLowerCase()==="tcp"&&(i.push("tcptype"),i.push(n.tcpType)),(n.usernameFragment||n.ufrag)&&(i.push("ufrag"),i.push(n.usernameFragment||n.ufrag)),"candidate:"+i.join(" ")},e.parseIceOptions=function(n){return n.substring(14).split(" ")},e.parseRtpMap=function(n){let i=n.substring(9).split(" ");const r={payloadType:parseInt(i.shift(),10)};return i=i[0].split("/"),r.name=i[0],r.clockRate=parseInt(i[1],10),r.channels=i.length===3?parseInt(i[2],10):1,r.numChannels=r.channels,r},e.writeRtpMap=function(n){let i=n.payloadType;n.preferredPayloadType!==void 0&&(i=n.preferredPayloadType);const r=n.channels||n.numChannels||1;return"a=rtpmap:"+i+" "+n.name+"/"+n.clockRate+(r!==1?"/"+r:"")+`\r
|
|
@@ -47,7 +47,7 @@ a=ice-pwd:`+n.password+`\r
|
|
|
47
47
|
`,r+=`c=IN IP4 0.0.0.0\r
|
|
48
48
|
`,r+=`a=rtcp:9 IN IP4 0.0.0.0\r
|
|
49
49
|
`,i.codecs.forEach(o=>{r+=e.writeRtpMap(o),r+=e.writeFmtp(o),r+=e.writeRtcpFb(o)});let s=0;return i.codecs.forEach(o=>{o.maxptime>s&&(s=o.maxptime)}),s>0&&(r+="a=maxptime:"+s+`\r
|
|
50
|
-
`),i.headerExtensions&&i.headerExtensions.forEach(o=>{r+=e.writeExtmap(o)}),r},e.parseRtpEncodingParameters=function(n){const i=[],r=e.parseRtpParameters(n),s=r.fecMechanisms.indexOf("RED")!==-1,o=r.fecMechanisms.indexOf("ULPFEC")!==-1,a=e.matchPrefix(n,"a=ssrc:").map(h=>e.parseSsrcMedia(h)).filter(h=>h.attribute==="cname"),c=a.length>0&&a[0].ssrc;let l;const u=e.matchPrefix(n,"a=ssrc-group:FID").map(h=>h.substring(17).split(" ").map(g=>parseInt(g,10)));u.length>0&&u[0].length>1&&u[0][0]===c&&(l=u[0][1]),r.codecs.forEach(h=>{if(h.name.toUpperCase()==="RTX"&&h.parameters.apt){let
|
|
50
|
+
`),i.headerExtensions&&i.headerExtensions.forEach(o=>{r+=e.writeExtmap(o)}),r},e.parseRtpEncodingParameters=function(n){const i=[],r=e.parseRtpParameters(n),s=r.fecMechanisms.indexOf("RED")!==-1,o=r.fecMechanisms.indexOf("ULPFEC")!==-1,a=e.matchPrefix(n,"a=ssrc:").map(h=>e.parseSsrcMedia(h)).filter(h=>h.attribute==="cname"),c=a.length>0&&a[0].ssrc;let l;const u=e.matchPrefix(n,"a=ssrc-group:FID").map(h=>h.substring(17).split(" ").map(g=>parseInt(g,10)));u.length>0&&u[0].length>1&&u[0][0]===c&&(l=u[0][1]),r.codecs.forEach(h=>{if(h.name.toUpperCase()==="RTX"&&h.parameters.apt){let m={ssrc:c,codecPayloadType:parseInt(h.parameters.apt,10)};c&&l&&(m.rtx={ssrc:l}),i.push(m),s&&(m=JSON.parse(JSON.stringify(m)),m.fec={ssrc:c,mechanism:o?"red+ulpfec":"red"},i.push(m))}}),i.length===0&&c&&i.push({ssrc:c});let d=e.matchPrefix(n,"b=");return d.length&&(d[0].indexOf("b=TIAS:")===0?d=parseInt(d[0].substring(7),10):d[0].indexOf("b=AS:")===0?d=parseInt(d[0].substring(5),10)*1e3*.95-50*40*8:d=void 0,i.forEach(h=>{h.maxBitrate=d})),i},e.parseRtcpParameters=function(n){const i={},r=e.matchPrefix(n,"a=ssrc:").map(a=>e.parseSsrcMedia(a)).filter(a=>a.attribute==="cname")[0];r&&(i.cname=r.value,i.ssrc=r.ssrc);const s=e.matchPrefix(n,"a=rtcp-rsize");i.reducedSize=s.length>0,i.compound=s.length===0;const o=e.matchPrefix(n,"a=rtcp-mux");return i.mux=o.length>0,i},e.writeRtcpParameters=function(n){let i="";return n.reducedSize&&(i+=`a=rtcp-rsize\r
|
|
51
51
|
`),n.mux&&(i+=`a=rtcp-mux\r
|
|
52
52
|
`),n.ssrc!==void 0&&n.cname&&(i+="a=ssrc:"+n.ssrc+" cname:"+n.cname+`\r
|
|
53
53
|
`),i},e.parseMsid=function(n){let i;const r=e.matchPrefix(n,"a=msid:");if(r.length===1)return i=r[0].substring(7).split(" "),{stream:i[0],track:i[1]};const s=e.matchPrefix(n,"a=ssrc:").map(o=>e.parseSsrcMedia(o)).filter(o=>o.attribute==="msid");if(s.length>0)return i=s[0].value.split(" "),{stream:i[0],track:i[1]}},e.parseSctpDescription=function(n){const i=e.parseMLine(n),r=e.matchPrefix(n,"a=max-message-size:");let s;r.length>0&&(s=parseInt(r[0].substring(19),10)),isNaN(s)&&(s=65536);const o=e.matchPrefix(n,"a=sctp-port:");if(o.length>0)return{port:parseInt(o[0].substring(12),10),protocol:i.fmt,maxMessageSize:s};const a=e.matchPrefix(n,"a=sctpmap:");if(a.length>0){const c=a[0].substring(10).split(" ");return{port:parseInt(c[0],10),protocol:c[1],maxMessageSize:s}}},e.writeSctpDescription=function(n,i){let r=[];return n.protocol!=="DTLS/SCTP"?r=["m="+n.kind+" 9 "+n.protocol+" "+i.protocol+`\r
|
|
@@ -64,9 +64,9 @@ t=0 0\r
|
|
|
64
64
|
`},e.getDirection=function(n,i){const r=e.splitLines(n);for(let s=0;s<r.length;s++)switch(r[s]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return r[s].substring(2)}return i?e.getDirection(i):"sendrecv"},e.getKind=function(n){return e.splitLines(n)[0].split(" ")[0].substring(2)},e.isRejected=function(n){return n.split(" ",2)[1]==="0"},e.parseMLine=function(n){const r=e.splitLines(n)[0].substring(2).split(" ");return{kind:r[0],port:parseInt(r[1],10),protocol:r[2],fmt:r.slice(3).join(" ")}},e.parseOLine=function(n){const r=e.matchPrefix(n,"o=")[0].substring(2).split(" ");return{username:r[0],sessionId:r[1],sessionVersion:parseInt(r[2],10),netType:r[3],addressType:r[4],address:r[5]}},e.isValidSDP=function(n){if(typeof n!="string"||n.length===0)return!1;const i=e.splitLines(n);for(let r=0;r<i.length;r++)if(i[r].length<2||i[r].charAt(1)!=="=")return!1;return!0},t.exports=e}(ja)),ja.exports}var T0=fk(),er=XT(T0),hk=wS({__proto__:null,default:er},[T0]);function uo(t){if(!t.RTCIceCandidate||t.RTCIceCandidate&&"foundation"in t.RTCIceCandidate.prototype)return;const e=t.RTCIceCandidate;t.RTCIceCandidate=function(i){if(typeof i=="object"&&i.candidate&&i.candidate.indexOf("a=")===0&&(i=JSON.parse(JSON.stringify(i)),i.candidate=i.candidate.substring(2)),i.candidate&&i.candidate.length){const r=new e(i),s=er.parseCandidate(i.candidate);for(const o in s)o in r||Object.defineProperty(r,o,{value:s[o]});return r.toJSON=function(){return{candidate:r.candidate,sdpMid:r.sdpMid,sdpMLineIndex:r.sdpMLineIndex,usernameFragment:r.usernameFragment}},r}return new e(i)},t.RTCIceCandidate.prototype=e.prototype,Ri(t,"icecandidate",n=>(n.candidate&&Object.defineProperty(n,"candidate",{value:new t.RTCIceCandidate(n.candidate),writable:"false"}),n))}function el(t){!t.RTCIceCandidate||t.RTCIceCandidate&&"relayProtocol"in t.RTCIceCandidate.prototype||Ri(t,"icecandidate",e=>{if(e.candidate){const n=er.parseCandidate(e.candidate.candidate);n.type==="relay"&&(e.candidate.relayProtocol={0:"tls",1:"tcp",2:"udp"}[n.priority>>24])}return e})}function fo(t,e){if(!t.RTCPeerConnection)return;"sctp"in t.RTCPeerConnection.prototype||Object.defineProperty(t.RTCPeerConnection.prototype,"sctp",{get(){return typeof this._sctp>"u"?null:this._sctp}});const n=function(a){if(!a||!a.sdp)return!1;const c=er.splitSections(a.sdp);return c.shift(),c.some(l=>{const u=er.parseMLine(l);return u&&u.kind==="application"&&u.protocol.indexOf("SCTP")!==-1})},i=function(a){const c=a.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(c===null||c.length<2)return-1;const l=parseInt(c[1],10);return l!==l?-1:l},r=function(a){let c=65536;return e.browser==="firefox"&&(e.version<57?a===-1?c=16384:c=2147483637:e.version<60?c=e.version===57?65535:65536:c=2147483637),c},s=function(a,c){let l=65536;e.browser==="firefox"&&e.version===57&&(l=65535);const u=er.matchPrefix(a.sdp,"a=max-message-size:");return u.length>0?l=parseInt(u[0].substring(19),10):e.browser==="firefox"&&c!==-1&&(l=2147483637),l},o=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,e.browser==="chrome"&&e.version>=76){const{sdpSemantics:c}=this.getConfiguration();c==="plan-b"&&Object.defineProperty(this,"sctp",{get(){return typeof this._sctp>"u"?null:this._sctp},enumerable:!0,configurable:!0})}if(n(arguments[0])){const c=i(arguments[0]),l=r(c),u=s(arguments[0],c);let d;l===0&&u===0?d=Number.POSITIVE_INFINITY:l===0||u===0?d=Math.max(l,u):d=Math.min(l,u);const h={};Object.defineProperty(h,"maxMessageSize",{get(){return d}}),this._sctp=h}return o.apply(this,arguments)}}function ho(t){if(!(t.RTCPeerConnection&&"createDataChannel"in t.RTCPeerConnection.prototype))return;function e(i,r){const s=i.send;i.send=function(){const a=arguments[0],c=a.length||a.size||a.byteLength;if(i.readyState==="open"&&r.sctp&&c>r.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+r.sctp.maxMessageSize+" bytes)");return s.apply(i,arguments)}}const n=t.RTCPeerConnection.prototype.createDataChannel;t.RTCPeerConnection.prototype.createDataChannel=function(){const r=n.apply(this,arguments);return e(r,this),r},Ri(t,"datachannel",i=>(e(i.channel,i.target),i))}function tl(t){if(!t.RTCPeerConnection||"connectionState"in t.RTCPeerConnection.prototype)return;const e=t.RTCPeerConnection.prototype;Object.defineProperty(e,"connectionState",{get(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(e,"onconnectionstatechange",{get(){return this._onconnectionstatechange||null},set(n){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),n&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=n)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(n=>{const i=e[n];e[n]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=r=>{const s=r.target;if(s._lastConnectionState!==s.connectionState){s._lastConnectionState=s.connectionState;const o=new Event("connectionstatechange",r);s.dispatchEvent(o)}return r},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),i.apply(this,arguments)}})}function nl(t,e){if(!t.RTCPeerConnection||e.browser==="chrome"&&e.version>=71||e.browser==="safari"&&e._safariVersion>=13.1)return;const n=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(r){if(r&&r.sdp&&r.sdp.indexOf(`
|
|
65
65
|
a=extmap-allow-mixed`)!==-1){const s=r.sdp.split(`
|
|
66
66
|
`).filter(o=>o.trim()!=="a=extmap-allow-mixed").join(`
|
|
67
|
-
`);t.RTCSessionDescription&&r instanceof t.RTCSessionDescription?arguments[0]=new t.RTCSessionDescription({type:r.type,sdp:s}):r.sdp=s}return n.apply(this,arguments)}}function po(t,e){if(!(t.RTCPeerConnection&&t.RTCPeerConnection.prototype))return;const n=t.RTCPeerConnection.prototype.addIceCandidate;!n||n.length===0||(t.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?(e.browser==="chrome"&&e.version<78||e.browser==="firefox"&&e.version<68||e.browser==="safari")&&arguments[0]&&arguments[0].candidate===""?Promise.resolve():n.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}function mo(t,e){if(!(t.RTCPeerConnection&&t.RTCPeerConnection.prototype))return;const n=t.RTCPeerConnection.prototype.setLocalDescription;!n||n.length===0||(t.RTCPeerConnection.prototype.setLocalDescription=function(){let r=arguments[0]||{};if(typeof r!="object"||r.type&&r.sdp)return n.apply(this,arguments);if(r={type:r.type,sdp:r.sdp},!r.type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":r.type="offer";break;default:r.type="answer";break}return r.sdp||r.type!=="offer"&&r.type!=="answer"?n.apply(this,[r]):(r.type==="offer"?this.createOffer:this.createAnswer).apply(this).then(o=>n.apply(this,[o]))})}var pk=Object.freeze({__proto__:null,removeExtmapAllowMixed:nl,shimAddIceCandidateNullOrEmpty:po,shimConnectionState:tl,shimMaxMessageSize:fo,shimParameterlessSetLocalDescription:mo,shimRTCIceCandidate:uo,shimRTCIceCandidateRelayProtocol:el,shimSendThrowTypeError:ho});function mk(){let{window:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0};const n=qg,i=uk(t),r={browserDetails:i,commonShim:pk,extractVersion:zr,disableLog:ck,disableWarnings:lk,sdp:hk};switch(i.browser){case"chrome":if(!Pf||!Xc||!e.shimChrome)return n("Chrome shim is not included in this adapter release."),r;if(i.version===null)return n("Chrome shim can not determine version, not shimming."),r;n("adapter.js shimming chrome."),r.browserShim=Pf,po(t,i),mo(t),Kg(t,i),Zg(t),Xc(t,i),Yg(t),e0(t,i),Jg(t),Xg(t),t0(t,i),uo(t),el(t),tl(t),fo(t,i),ho(t),nl(t,i);break;case"firefox":if(!Rf||!Qc||!e.shimFirefox)return n("Firefox shim is not included in this adapter release."),r;n("adapter.js shimming firefox."),r.browserShim=Rf,po(t,i),mo(t),n0(t,i),Qc(t,i),i0(t),o0(t),r0(t),s0(t),a0(t),c0(t),l0(t),u0(t),d0(t),uo(t),tl(t),fo(t,i),ho(t);break;case"safari":if(!Af||!e.shimSafari)return n("Safari shim is not included in this adapter release."),r;n("adapter.js shimming safari."),r.browserShim=Af,po(t,i),mo(t),v0(t),b0(t),p0(t),f0(t),h0(t),y0(t),m0(t),S0(t),uo(t),el(t),fo(t,i),ho(t),nl(t,i);break;default:n("Unsupported browser!");break}return r}mk({window:typeof window>"u"?void 0:window});const gk=10,Dr="lk_e2ee",vk="LKFrameEncryptionKey",yk={sharedKey:!1,ratchetSalt:vk,ratchetWindowSize:8,failureTolerance:gk,keyringSize:16};var $n;(function(t){t.SetKey="setKey",t.RatchetRequest="ratchetRequest",t.KeyRatcheted="keyRatcheted"})($n||($n={}));var _f;(function(t){t.KeyRatcheted="keyRatcheted"})(_f||(_f={}));var Bn;(function(t){t.ParticipantEncryptionStatusChanged="participantEncryptionStatusChanged",t.EncryptionError="encryptionError"})(Bn||(Bn={}));var Mf;(function(t){t.Error="cryptorError"})(Mf||(Mf={}));function bk(){return Sk()||il()}function il(){return typeof window.RTCRtpScriptTransform<"u"}function Sk(){return typeof window.RTCRtpSender<"u"&&typeof window.RTCRtpSender.prototype.createEncodedStreams<"u"}class eN extends ln.EventEmitter{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};super(),this.onKeyRatcheted=(n,i,r)=>{me.debug("key ratcheted event received",{ratchetResult:n,participantId:i,keyIndex:r})},this.keyInfoMap=new Map,this.options=Object.assign(Object.assign({},yk),e),this.on($n.KeyRatcheted,this.onKeyRatcheted)}onSetEncryptionKey(e,n,i){const r={key:e,participantIdentity:n,keyIndex:i};if(!this.options.sharedKey&&!n)throw new Error("participant identity needs to be passed for encryption key if sharedKey option is false");this.keyInfoMap.set("".concat(n??"shared","-").concat(i??0),r),this.emit($n.SetKey,r)}getKeys(){return Array.from(this.keyInfoMap.values())}getOptions(){return this.options}ratchetKey(e,n){this.emit($n.RatchetRequest,e,n)}}class ei extends Error{constructor(e,n){super(n||"an error has occured"),this.name="LiveKitError",this.code=e}}var ge;(function(t){t[t.NotAllowed=0]="NotAllowed",t[t.ServerUnreachable=1]="ServerUnreachable",t[t.InternalError=2]="InternalError",t[t.Cancelled=3]="Cancelled",t[t.LeaveRequest=4]="LeaveRequest",t[t.Timeout=5]="Timeout"})(ge||(ge={}));class Re extends ei{constructor(e,n,i,r){super(1,e),this.name="ConnectionError",this.status=i,this.reason=n,this.context=r,this.reasonName=ge[n]}}class xu extends ei{constructor(e){super(21,e??"device is unsupported"),this.name="DeviceUnsupportedError"}}class Sn extends ei{constructor(e){super(20,e??"track is invalid"),this.name="TrackInvalidError"}}class Tk extends ei{constructor(e){super(10,e??"unsupported server"),this.name="UnsupportedServer"}}class Je extends ei{constructor(e){super(12,e??"unexpected connection state"),this.name="UnexpectedConnectionState"}}class rl extends ei{constructor(e){super(13,e??"unable to negotiate"),this.name="NegotiationError"}}class Of extends ei{constructor(e,n){super(15,e),this.name="PublishTrackError",this.status=n}}class Df extends ei{constructor(e,n){super(15,e),this.reason=n,this.reasonName=typeof n=="string"?n:Cu[n]}}var Do;(function(t){t.PermissionDenied="PermissionDenied",t.NotFound="NotFound",t.DeviceInUse="DeviceInUse",t.Other="Other"})(Do||(Do={}));(function(t){function e(n){if(n&&"name"in n)return n.name==="NotFoundError"||n.name==="DevicesNotFoundError"?t.NotFound:n.name==="NotAllowedError"||n.name==="PermissionDeniedError"?t.PermissionDenied:n.name==="NotReadableError"||n.name==="TrackStartError"?t.DeviceInUse:t.Other}t.getFailure=e})(Do||(Do={}));var Nf;(function(t){t[t.InvalidKey=0]="InvalidKey",t[t.MissingKey=1]="MissingKey",t[t.InternalError=2]="InternalError"})(Nf||(Nf={}));var O;(function(t){t.Connected="connected",t.Reconnecting="reconnecting",t.SignalReconnecting="signalReconnecting",t.Reconnected="reconnected",t.Disconnected="disconnected",t.ConnectionStateChanged="connectionStateChanged",t.Moved="moved",t.MediaDevicesChanged="mediaDevicesChanged",t.ParticipantConnected="participantConnected",t.ParticipantDisconnected="participantDisconnected",t.TrackPublished="trackPublished",t.TrackSubscribed="trackSubscribed",t.TrackSubscriptionFailed="trackSubscriptionFailed",t.TrackUnpublished="trackUnpublished",t.TrackUnsubscribed="trackUnsubscribed",t.TrackMuted="trackMuted",t.TrackUnmuted="trackUnmuted",t.LocalTrackPublished="localTrackPublished",t.LocalTrackUnpublished="localTrackUnpublished",t.LocalAudioSilenceDetected="localAudioSilenceDetected",t.ActiveSpeakersChanged="activeSpeakersChanged",t.ParticipantMetadataChanged="participantMetadataChanged",t.ParticipantNameChanged="participantNameChanged",t.ParticipantAttributesChanged="participantAttributesChanged",t.ParticipantActive="participantActive",t.RoomMetadataChanged="roomMetadataChanged",t.DataReceived="dataReceived",t.SipDTMFReceived="sipDTMFReceived",t.TranscriptionReceived="transcriptionReceived",t.ConnectionQualityChanged="connectionQualityChanged",t.TrackStreamStateChanged="trackStreamStateChanged",t.TrackSubscriptionPermissionChanged="trackSubscriptionPermissionChanged",t.TrackSubscriptionStatusChanged="trackSubscriptionStatusChanged",t.AudioPlaybackStatusChanged="audioPlaybackChanged",t.VideoPlaybackStatusChanged="videoPlaybackChanged",t.MediaDevicesError="mediaDevicesError",t.ParticipantPermissionsChanged="participantPermissionsChanged",t.SignalConnected="signalConnected",t.RecordingStatusChanged="recordingStatusChanged",t.ParticipantEncryptionStatusChanged="participantEncryptionStatusChanged",t.EncryptionError="encryptionError",t.DCBufferStatusChanged="dcBufferStatusChanged",t.ActiveDeviceChanged="activeDeviceChanged",t.ChatMessage="chatMessage",t.LocalTrackSubscribed="localTrackSubscribed",t.MetricsReceived="metricsReceived"})(O||(O={}));var U;(function(t){t.TrackPublished="trackPublished",t.TrackSubscribed="trackSubscribed",t.TrackSubscriptionFailed="trackSubscriptionFailed",t.TrackUnpublished="trackUnpublished",t.TrackUnsubscribed="trackUnsubscribed",t.TrackMuted="trackMuted",t.TrackUnmuted="trackUnmuted",t.LocalTrackPublished="localTrackPublished",t.LocalTrackUnpublished="localTrackUnpublished",t.ParticipantMetadataChanged="participantMetadataChanged",t.ParticipantNameChanged="participantNameChanged",t.DataReceived="dataReceived",t.SipDTMFReceived="sipDTMFReceived",t.TranscriptionReceived="transcriptionReceived",t.IsSpeakingChanged="isSpeakingChanged",t.ConnectionQualityChanged="connectionQualityChanged",t.TrackStreamStateChanged="trackStreamStateChanged",t.TrackSubscriptionPermissionChanged="trackSubscriptionPermissionChanged",t.TrackSubscriptionStatusChanged="trackSubscriptionStatusChanged",t.MediaDevicesError="mediaDevicesError",t.AudioStreamAcquired="audioStreamAcquired",t.ParticipantPermissionsChanged="participantPermissionsChanged",t.PCTrackAdded="pcTrackAdded",t.AttributesChanged="attributesChanged",t.LocalTrackSubscribed="localTrackSubscribed",t.ChatMessage="chatMessage",t.Active="active"})(U||(U={}));var X;(function(t){t.TransportsCreated="transportsCreated",t.Connected="connected",t.Disconnected="disconnected",t.Resuming="resuming",t.Resumed="resumed",t.Restarting="restarting",t.Restarted="restarted",t.SignalResumed="signalResumed",t.SignalRestarted="signalRestarted",t.Closing="closing",t.MediaTrackAdded="mediaTrackAdded",t.ActiveSpeakersUpdate="activeSpeakersUpdate",t.DataPacketReceived="dataPacketReceived",t.RTPVideoMapUpdate="rtpVideoMapUpdate",t.DCBufferStatusChanged="dcBufferStatusChanged",t.ParticipantUpdate="participantUpdate",t.RoomUpdate="roomUpdate",t.SpeakersChanged="speakersChanged",t.StreamStateChanged="streamStateChanged",t.ConnectionQualityUpdate="connectionQualityUpdate",t.SubscriptionError="subscriptionError",t.SubscriptionPermissionUpdate="subscriptionPermissionUpdate",t.RemoteMute="remoteMute",t.SubscribedQualityUpdate="subscribedQualityUpdate",t.LocalTrackUnpublished="localTrackUnpublished",t.LocalTrackSubscribed="localTrackSubscribed",t.Offline="offline",t.SignalRequestResponse="signalRequestResponse",t.SignalConnected="signalConnected",t.RoomMoved="roomMoved"})(X||(X={}));var G;(function(t){t.Message="message",t.Muted="muted",t.Unmuted="unmuted",t.Restarted="restarted",t.Ended="ended",t.Subscribed="subscribed",t.Unsubscribed="unsubscribed",t.UpdateSettings="updateSettings",t.UpdateSubscription="updateSubscription",t.AudioPlaybackStarted="audioPlaybackStarted",t.AudioPlaybackFailed="audioPlaybackFailed",t.AudioSilenceDetected="audioSilenceDetected",t.VisibilityChanged="visibilityChanged",t.VideoDimensionsChanged="videoDimensionsChanged",t.VideoPlaybackStarted="videoPlaybackStarted",t.VideoPlaybackFailed="videoPlaybackFailed",t.ElementAttached="elementAttached",t.ElementDetached="elementDetached",t.UpstreamPaused="upstreamPaused",t.UpstreamResumed="upstreamResumed",t.SubscriptionPermissionChanged="subscriptionPermissionChanged",t.SubscriptionStatusChanged="subscriptionStatusChanged",t.SubscriptionFailed="subscriptionFailed",t.TrackProcessorUpdate="trackProcessorUpdate",t.AudioTrackFeatureUpdate="audioTrackFeatureUpdate",t.TranscriptionReceived="transcriptionReceived",t.TimeSyncUpdate="timeSyncUpdate",t.PreConnectBufferFlushed="preConnectBufferFlushed"})(G||(G={}));function kk(t){return typeof t>"u"?t:typeof structuredClone=="function"?typeof t=="object"&&t!==null?structuredClone(Object.assign({},t)):structuredClone(t):JSON.parse(JSON.stringify(t))}const Ck=/version\/(\d+(\.?_?\d+)+)/i;let Ua;function Tt(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(typeof navigator>"u")return;const n=navigator.userAgent.toLowerCase();if(Ua===void 0||e){const i=wk.find(r=>{let{test:s}=r;return s.test(n)});Ua=i==null?void 0:i.describe(n)}return Ua}const wk=[{test:/firefox|iceweasel|fxios/i,describe(t){return{name:"Firefox",version:go(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,t),os:t.toLowerCase().includes("fxios")?"iOS":void 0,osVersion:Ba(t)}}},{test:/chrom|crios|crmo/i,describe(t){return{name:"Chrome",version:go(/(?:chrome|chromium|crios|crmo)\/(\d+(\.?_?\d+)+)/i,t),os:t.toLowerCase().includes("crios")?"iOS":void 0,osVersion:Ba(t)}}},{test:/safari|applewebkit/i,describe(t){return{name:"Safari",version:go(Ck,t),os:t.includes("mobile/")?"iOS":"macOS",osVersion:Ba(t)}}}];function go(t,e){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1;const i=e.match(t);return i&&i.length>=n&&i[n]||""}function Ba(t){return t.includes("mac os")?go(/\(.+?(\d+_\d+(:?_\d+)?)/,t,1).replace(/_/g,"."):void 0}var xk="2.13.8";const Ek=xk,Pk=16;class rt{}rt.setTimeout=function(){return setTimeout(...arguments)};rt.setInterval=function(){return setInterval(...arguments)};rt.clearTimeout=function(){return clearTimeout(...arguments)};rt.clearInterval=function(){return clearInterval(...arguments)};const Rk=5e3,Nr=[];var At;(function(t){t[t.LOW=0]="LOW",t[t.MEDIUM=1]="MEDIUM",t[t.HIGH=2]="HIGH"})(At||(At={}));class M extends ln.EventEmitter{constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r;super(),this.attachedElements=[],this.isMuted=!1,this.streamState=M.StreamState.Active,this.isInBackground=!1,this._currentBitrate=0,this.log=me,this.appVisibilityChangedListener=()=>{this.backgroundTimeout&&clearTimeout(this.backgroundTimeout),document.visibilityState==="hidden"?this.backgroundTimeout=setTimeout(()=>this.handleAppVisibilityChanged(),Rk):this.handleAppVisibilityChanged()},this.log=Cn((r=i.loggerName)!==null&&r!==void 0?r:zt.Track),this.loggerContextCb=i.loggerContextCb,this.setMaxListeners(100),this.kind=n,this._mediaStreamTrack=e,this._mediaStreamID=e.id,this.source=M.Source.Unknown}get logContext(){var e;return Object.assign(Object.assign({},(e=this.loggerContextCb)===null||e===void 0?void 0:e.call(this)),he(this))}get currentBitrate(){return this._currentBitrate}get mediaStreamTrack(){return this._mediaStreamTrack}get mediaStreamID(){return this._mediaStreamID}attach(e){let n="audio";this.kind===M.Kind.Video&&(n="video"),this.attachedElements.length===0&&this.kind===M.Kind.Video&&this.addAppVisibilityListener(),e||(n==="audio"&&(Nr.forEach(s=>{s.parentElement===null&&!e&&(e=s)}),e&&Nr.splice(Nr.indexOf(e),1)),e||(e=document.createElement(n))),this.attachedElements.includes(e)||this.attachedElements.push(e),zi(this.mediaStreamTrack,e);const i=e.srcObject.getTracks(),r=i.some(s=>s.kind==="audio");return e.play().then(()=>{this.emit(r?G.AudioPlaybackStarted:G.VideoPlaybackStarted)}).catch(s=>{s.name==="NotAllowedError"?this.emit(r?G.AudioPlaybackFailed:G.VideoPlaybackFailed,s):s.name==="AbortError"?me.debug("".concat(r?"audio":"video"," playback aborted, likely due to new play request")):me.warn("could not playback ".concat(r?"audio":"video"),s),r&&e&&i.some(o=>o.kind==="video")&&s.name==="NotAllowedError"&&(e.muted=!0,e.play().catch(()=>{}))}),this.emit(G.ElementAttached,e),e}detach(e){try{if(e){tr(this.mediaStreamTrack,e);const i=this.attachedElements.indexOf(e);return i>=0&&(this.attachedElements.splice(i,1),this.recycleElement(e),this.emit(G.ElementDetached,e)),e}const n=[];return this.attachedElements.forEach(i=>{tr(this.mediaStreamTrack,i),n.push(i),this.recycleElement(i),this.emit(G.ElementDetached,i)}),this.attachedElements=[],n}finally{this.attachedElements.length===0&&this.removeAppVisibilityListener()}}stop(){this.stopMonitor(),this._mediaStreamTrack.stop()}enable(){this._mediaStreamTrack.enabled=!0}disable(){this._mediaStreamTrack.enabled=!1}stopMonitor(){this.monitorInterval&&clearInterval(this.monitorInterval),this.timeSyncHandle&&cancelAnimationFrame(this.timeSyncHandle)}updateLoggerOptions(e){e.loggerName&&(this.log=Cn(e.loggerName)),e.loggerContextCb&&(this.loggerContextCb=e.loggerContextCb)}recycleElement(e){if(e instanceof HTMLAudioElement){let n=!0;e.pause(),Nr.forEach(i=>{i.parentElement||(n=!1)}),n&&Nr.push(e)}}handleAppVisibilityChanged(){return P(this,void 0,void 0,function*(){this.isInBackground=document.visibilityState==="hidden",!this.isInBackground&&this.kind===M.Kind.Video&&setTimeout(()=>this.attachedElements.forEach(e=>e.play().catch(()=>{})),0)})}addAppVisibilityListener(){ht()?(this.isInBackground=document.visibilityState==="hidden",document.addEventListener("visibilitychange",this.appVisibilityChangedListener)):this.isInBackground=!1}removeAppVisibilityListener(){ht()&&document.removeEventListener("visibilitychange",this.appVisibilityChangedListener)}}function zi(t,e){let n;e.srcObject instanceof MediaStream?n=e.srcObject:n=new MediaStream;let i;t.kind==="audio"?i=n.getAudioTracks():i=n.getVideoTracks(),i.includes(t)||(i.forEach(r=>{n.removeTrack(r)}),n.addTrack(t)),(!Ti()||!(e instanceof HTMLVideoElement))&&(e.autoplay=!0),e.muted=n.getAudioTracks().length===0,e instanceof HTMLVideoElement&&(e.playsInline=!0),e.srcObject!==n&&(e.srcObject=n,(Ti()||ur())&&e instanceof HTMLVideoElement&&setTimeout(()=>{e.srcObject=n,e.play().catch(()=>{})},0))}function tr(t,e){if(e.srcObject instanceof MediaStream){const n=e.srcObject;n.removeTrack(t),n.getTracks().length>0?e.srcObject=n:e.srcObject=null}}(function(t){let e;(function(l){l.Audio="audio",l.Video="video",l.Unknown="unknown"})(e=t.Kind||(t.Kind={}));let n;(function(l){l.Camera="camera",l.Microphone="microphone",l.ScreenShare="screen_share",l.ScreenShareAudio="screen_share_audio",l.Unknown="unknown"})(n=t.Source||(t.Source={}));let i;(function(l){l.Active="active",l.Paused="paused",l.Unknown="unknown"})(i=t.StreamState||(t.StreamState={}));function r(l){switch(l){case e.Audio:return Ut.AUDIO;case e.Video:return Ut.VIDEO;default:return Ut.DATA}}t.kindToProto=r;function s(l){switch(l){case Ut.AUDIO:return e.Audio;case Ut.VIDEO:return e.Video;default:return e.Unknown}}t.kindFromProto=s;function o(l){switch(l){case n.Camera:return Ge.CAMERA;case n.Microphone:return Ge.MICROPHONE;case n.ScreenShare:return Ge.SCREEN_SHARE;case n.ScreenShareAudio:return Ge.SCREEN_SHARE_AUDIO;default:return Ge.UNKNOWN}}t.sourceToProto=o;function a(l){switch(l){case Ge.CAMERA:return n.Camera;case Ge.MICROPHONE:return n.Microphone;case Ge.SCREEN_SHARE:return n.ScreenShare;case Ge.SCREEN_SHARE_AUDIO:return n.ScreenShareAudio;default:return n.Unknown}}t.sourceFromProto=a;function c(l){switch(l){case Gc.ACTIVE:return i.Active;case Gc.PAUSED:return i.Paused;default:return i.Unknown}}t.streamStateFromProto=c})(M||(M={}));class xe{constructor(e,n,i,r,s){if(typeof e=="object")this.width=e.width,this.height=e.height,this.aspectRatio=e.aspectRatio,this.encoding={maxBitrate:e.maxBitrate,maxFramerate:e.maxFramerate,priority:e.priority};else if(n!==void 0&&i!==void 0)this.width=e,this.height=n,this.aspectRatio=e/n,this.encoding={maxBitrate:i,maxFramerate:r,priority:s};else throw new TypeError("Unsupported options: provide at least width, height and maxBitrate")}get resolution(){return{width:this.width,height:this.height,frameRate:this.encoding.maxFramerate,aspectRatio:this.aspectRatio}}}const Ak=["vp8","h264"],Ik=["vp8","h264","vp9","av1"];function _k(t){return!!Ak.find(e=>e===t)}var Lf;(function(t){t[t.PREFER_REGRESSION=0]="PREFER_REGRESSION",t[t.SIMULCAST=1]="SIMULCAST",t[t.REGRESSION=2]="REGRESSION"})(Lf||(Lf={}));var sl;(function(t){t.telephone={maxBitrate:12e3},t.speech={maxBitrate:24e3},t.music={maxBitrate:48e3},t.musicStereo={maxBitrate:64e3},t.musicHighQuality={maxBitrate:96e3},t.musicHighQualityStereo={maxBitrate:128e3}})(sl||(sl={}));const ss={h90:new xe(160,90,9e4,20),h180:new xe(320,180,16e4,20),h216:new xe(384,216,18e4,20),h360:new xe(640,360,45e4,20),h540:new xe(960,540,8e5,25),h720:new xe(1280,720,17e5,30),h1080:new xe(1920,1080,3e6,30),h1440:new xe(2560,1440,5e6,30),h2160:new xe(3840,2160,8e6,30)},ol={h120:new xe(160,120,7e4,20),h180:new xe(240,180,125e3,20),h240:new xe(320,240,14e4,20),h360:new xe(480,360,33e4,20),h480:new xe(640,480,5e5,20),h540:new xe(720,540,6e5,25),h720:new xe(960,720,13e5,30),h1080:new xe(1440,1080,23e5,30),h1440:new xe(1920,1440,38e5,30)},Eu={h360fps3:new xe(640,360,2e5,3,"medium"),h360fps15:new xe(640,360,4e5,15,"medium"),h720fps5:new xe(1280,720,8e5,5,"medium"),h720fps15:new xe(1280,720,15e5,15,"medium"),h720fps30:new xe(1280,720,2e6,30,"medium"),h1080fps15:new xe(1920,1080,25e5,15,"medium"),h1080fps30:new xe(1920,1080,5e6,30,"medium"),original:new xe(0,0,7e6,30,"medium")},Mk="|",Vf="https://aomediacodec.github.io/av1-rtp-spec/#dependency-descriptor-rtp-header-extension";function Ok(t){const e=t.split(Mk);return e.length>1?[e[0],t.substr(e[0].length+1)]:[t,""]}function mt(t){return P(this,void 0,void 0,function*(){return new Promise(e=>rt.setTimeout(e,t))})}function al(){return"addTransceiver"in RTCPeerConnection.prototype}function cl(){return"addTrack"in RTCPeerConnection.prototype}function Dk(){if(!("getCapabilities"in RTCRtpSender)||Ti())return!1;const t=RTCRtpSender.getCapabilities("video");let e=!1;if(t){for(const n of t.codecs)if(n.mimeType==="video/AV1"){e=!0;break}}return e}function Nk(){if(!("getCapabilities"in RTCRtpSender)||ur())return!1;if(Ti()){const n=Tt();if(n!=null&&n.version&&qn(n.version,"16")<0)return!1}const t=RTCRtpSender.getCapabilities("video");let e=!1;if(t){for(const n of t.codecs)if(n.mimeType==="video/VP9"){e=!0;break}}return e}function kn(t){return t==="av1"||t==="vp9"}function ll(t){return document?(t||(t=document.createElement("audio")),"setSinkId"in t):!1}function Lk(){return typeof RTCPeerConnection>"u"?!1:al()||cl()}function ur(){var t;return((t=Tt())===null||t===void 0?void 0:t.name)==="Firefox"}function Ti(){var t;return((t=Tt())===null||t===void 0?void 0:t.name)==="Safari"}function Ff(){const t=Tt();return(t==null?void 0:t.name)==="Safari"||(t==null?void 0:t.os)==="iOS"}function Vk(){const t=Tt();return(t==null?void 0:t.name)==="Safari"&&t.version.startsWith("17.")}function Fk(t){return t||(t=Tt()),(t==null?void 0:t.name)==="Safari"&&qn(t.version,"18.3")>0}function k0(){var t,e;return ht()?(e=(t=navigator.userAgentData)===null||t===void 0?void 0:t.mobile)!==null&&e!==void 0?e:/Tablet|iPad|Mobile|Android|BlackBerry/.test(navigator.userAgent):!1}function jk(){const t=Tt(),e="17.2";if(t)return t.name!=="Safari"&&t.os!=="iOS"||t.os==="iOS"&&t.osVersion&&qn(e,t.osVersion)>=0?!0:t.name==="Safari"&&qn(e,t.version)>=0}function ht(){return typeof document<"u"}function on(){return navigator.product=="ReactNative"}function ul(t){return t.hostname.endsWith(".livekit.cloud")||t.hostname.endsWith(".livekit.run")}function C0(){if(global&&global.LiveKitReactNativeGlobal)return global.LiveKitReactNativeGlobal}function w0(){if(!on())return;let t=C0();if(t)return t.platform}function jf(){if(ht())return window.devicePixelRatio;if(on()){let t=C0();if(t)return t.devicePixelRatio}return 1}function qn(t,e){const n=t.split("."),i=e.split("."),r=Math.min(n.length,i.length);for(let s=0;s<r;++s){const o=parseInt(n[s],10),a=parseInt(i[s],10);if(o>a)return 1;if(o<a)return-1;if(s===r-1&&o===a)return 0}return t===""&&e!==""?-1:e===""?1:n.length==i.length?0:n.length<i.length?-1:1}function Uk(t){for(const e of t)e.target.handleResize(e)}function Bk(t){for(const e of t)e.target.handleVisibilityChanged(e)}let $a=null;const Uf=()=>($a||($a=new ResizeObserver(Uk)),$a);let Ha=null;const Bf=()=>(Ha||(Ha=new IntersectionObserver(Bk,{root:null,rootMargin:"0px"})),Ha);function $k(){var t;const e=new PT({sdk:Rg.JS,protocol:Pk,version:Ek});return on()&&(e.os=(t=w0())!==null&&t!==void 0?t:""),e}function $f(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:16,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:16,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;const r=document.createElement("canvas");r.width=t,r.height=e;const s=r.getContext("2d");s==null||s.fillRect(0,0,r.width,r.height),i&&s&&(s.beginPath(),s.arc(t/2,e/2,50,0,Math.PI*2,!0),s.closePath(),s.fillStyle="grey",s.fill());const o=r.captureStream(),[a]=o.getTracks();if(!a)throw Error("Could not get empty media stream video track");return a.enabled=n,a}let Lr;function za(){if(!Lr){const t=new AudioContext,e=t.createOscillator(),n=t.createGain();n.gain.setValueAtTime(0,0);const i=t.createMediaStreamDestination();if(e.connect(n),n.connect(i),e.start(),[Lr]=i.stream.getAudioTracks(),!Lr)throw Error("Could not get empty media stream audio track");Lr.enabled=!1}return Lr.clone()}class Wi{constructor(e,n){this.onFinally=n,this.promise=new Promise((i,r)=>P(this,void 0,void 0,function*(){this.resolve=i,this.reject=r,e&&(yield e(i,r))})).finally(()=>{var i;return(i=this.onFinally)===null||i===void 0?void 0:i.call(this)})}}function Hk(t,e){const n=Object.assign({cloneTrack:!1,fftSize:2048,smoothingTimeConstant:.8,minDecibels:-100,maxDecibels:-80},e),i=Ru();if(!i)throw new Error("Audio Context not supported on this browser");const r=n.cloneTrack?t.mediaStreamTrack.clone():t.mediaStreamTrack,s=i.createMediaStreamSource(new MediaStream([r])),o=i.createAnalyser();o.minDecibels=n.minDecibels,o.maxDecibels=n.maxDecibels,o.fftSize=n.fftSize,o.smoothingTimeConstant=n.smoothingTimeConstant,s.connect(o);const a=new Uint8Array(o.frequencyBinCount);return{calculateVolume:()=>{o.getByteFrequencyData(a);let u=0;for(const h of a)u+=Math.pow(h/255,2);return Math.sqrt(u/a.length)},analyser:o,cleanup:()=>P(this,void 0,void 0,function*(){yield i.close(),n.cloneTrack&&r.stop()})}}function zk(t){return Ik.includes(t)}function Hn(t){if(typeof t=="string"||typeof t=="number")return t;if(Array.isArray(t))return t[0];if(t.exact)return Array.isArray(t.exact)?t.exact[0]:t.exact;if(t.ideal)return Array.isArray(t.ideal)?t.ideal[0]:t.ideal;throw Error("could not unwrap constraint")}function Wk(t){return t.startsWith("http")?t.replace(/^(http)/,"ws"):t}function dl(t){return t.startsWith("ws")?t.replace(/^(ws)/,"http"):t}function qk(t,e){return t.segments.map(n=>{let{id:i,text:r,language:s,startTime:o,endTime:a,final:c}=n;var l;const u=(l=e.get(i))!==null&&l!==void 0?l:Date.now(),d=Date.now();return c?e.delete(i):e.set(i,u),{id:i,text:r,startTime:Number.parseInt(o.toString()),endTime:Number.parseInt(a.toString()),final:c,language:s,firstReceivedTime:u,lastReceivedTime:d}})}function Gk(t){const{id:e,timestamp:n,message:i,editTimestamp:r}=t;return{id:e,timestamp:Number.parseInt(n.toString()),editTimestamp:r?Number.parseInt(r.toString()):void 0,message:i}}function Hf(t){switch(t.reason){case ge.LeaveRequest:return t.context;case ge.Cancelled:return $t.CLIENT_INITIATED;case ge.NotAllowed:return $t.USER_REJECTED;case ge.ServerUnreachable:return $t.JOIN_FAILURE;default:return $t.UNKNOWN_REASON}}function vo(t){return t!==void 0?Number(t):void 0}function ui(t){return t!==void 0?BigInt(t):void 0}function nr(t){return!!t&&!(t instanceof MediaStreamTrack)&&t.isLocal}function en(t){return!!t&&t.kind==M.Kind.Audio}function vr(t){return!!t&&t.kind==M.Kind.Video}function Nn(t){return nr(t)&&vr(t)}function mn(t){return nr(t)&&en(t)}function fl(t){return!!t&&!t.isLocal}function Kk(t){return!!t&&!t.isLocal}function Wa(t){return fl(t)&&vr(t)}function Zk(t){return t.isLocal}function Yk(t,e){const n=[];let i=new TextEncoder().encode(t);for(;i.length>e;){let r=e;for(;r>0;){const s=i[r];if(s!==void 0&&(s&192)!==128)break;r--}n.push(i.slice(0,r)),i=i.slice(r)}return i.length>0&&n.push(i),n}function x0(t,e,n){var i,r,s,o;const{optionsWithoutProcessor:a,audioProcessor:c,videoProcessor:l}=P0(t??{}),u=e==null?void 0:e.processor,d=n==null?void 0:n.processor,h=a??{};return h.audio===!0&&(h.audio={}),h.video===!0&&(h.video={}),h.audio&&(hl(h.audio,e),(i=(s=h.audio).deviceId)!==null&&i!==void 0||(s.deviceId={ideal:"default"}),(c||u)&&(h.audio.processor=c??u)),h.video&&(hl(h.video,n),(r=(o=h.video).deviceId)!==null&&r!==void 0||(o.deviceId={ideal:"default"}),(l||d)&&(h.video.processor=l??d)),h}function hl(t,e){return Object.keys(e).forEach(n=>{t[n]===void 0&&(t[n]=e[n])}),t}function Pu(t){var e,n,i,r;const s={};if(t.video)if(typeof t.video=="object"){const o={},a=o,c=t.video;Object.keys(c).forEach(l=>{switch(l){case"resolution":hl(a,c.resolution);break;default:a[l]=c[l]}}),s.video=o,(e=(i=s.video).deviceId)!==null&&e!==void 0||(i.deviceId={ideal:"default"})}else s.video=t.video?{deviceId:{ideal:"default"}}:!1;else s.video=!1;return t.audio?typeof t.audio=="object"?(s.audio=t.audio,(n=(r=s.audio).deviceId)!==null&&n!==void 0||(r.deviceId={ideal:"default"})):s.audio={deviceId:{ideal:"default"}}:s.audio=!1,s}function E0(t){return P(this,arguments,void 0,function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:200;return function*(){const i=Ru();if(i){const r=i.createAnalyser();r.fftSize=2048;const s=r.frequencyBinCount,o=new Uint8Array(s);i.createMediaStreamSource(new MediaStream([e.mediaStreamTrack])).connect(r),yield mt(n),r.getByteTimeDomainData(o);const c=o.some(l=>l!==128&&l!==0);return i.close(),!c}return!1}()})}function Ru(){var t;const e=typeof window<"u"&&(window.AudioContext||window.webkitAudioContext);if(e){const n=new e({latencyHint:"interactive"});if(n.state==="suspended"&&typeof window<"u"&&(!((t=window.document)===null||t===void 0)&&t.body)){const i=()=>P(this,void 0,void 0,function*(){var r;try{n.state==="suspended"&&(yield n.resume())}catch(s){console.warn("Error trying to auto-resume audio context",s)}(r=window.document.body)===null||r===void 0||r.removeEventListener("click",i)});window.document.body.addEventListener("click",i)}return n}}function Jk(t){return t==="audioinput"?M.Source.Microphone:t==="videoinput"?M.Source.Camera:M.Source.Unknown}function pl(t){return t===M.Source.Microphone?"audioinput":t===M.Source.Camera?"videoinput":void 0}function Xk(t){var e,n;let i=(e=t.video)!==null&&e!==void 0?e:!0;return t.resolution&&t.resolution.width>0&&t.resolution.height>0&&(i=typeof i=="boolean"?{}:i,Ti()?i=Object.assign(Object.assign({},i),{width:{max:t.resolution.width},height:{max:t.resolution.height},frameRate:t.resolution.frameRate}):i=Object.assign(Object.assign({},i),{width:{ideal:t.resolution.width},height:{ideal:t.resolution.height},frameRate:t.resolution.frameRate})),{audio:(n=t.audio)!==null&&n!==void 0?n:!1,video:i,controller:t.controller,selfBrowserSurface:t.selfBrowserSurface,surfaceSwitching:t.surfaceSwitching,systemAudio:t.systemAudio,preferCurrentTab:t.preferCurrentTab}}function yo(t){return t.split("/")[1].toLowerCase()}function Qk(t){const e=[];return t.forEach(n=>{n.track!==void 0&&e.push(new Tu({cid:n.track.mediaStreamID,track:n.trackInfo}))}),e}function he(t){return"mediaStreamTrack"in t?{trackID:t.sid,source:t.source,muted:t.isMuted,enabled:t.mediaStreamTrack.enabled,kind:t.kind,streamID:t.mediaStreamID,streamTrackID:t.mediaStreamTrack.id}:{trackID:t.trackSid,enabled:t.isEnabled,muted:t.isMuted,trackInfo:Object.assign({mimeType:t.mimeType,name:t.trackName,encrypted:t.isEncrypted,kind:t.kind,source:t.source},t.track?he(t.track):{})}}function eC(){return typeof RTCRtpReceiver<"u"&&"getSynchronizationSources"in RTCRtpReceiver}function tC(t,e){var n;t===void 0&&(t={}),e===void 0&&(e={});const i=[...Object.keys(e),...Object.keys(t)],r={};for(const s of i)t[s]!==e[s]&&(r[s]=(n=e[s])!==null&&n!==void 0?n:"");return r}function P0(t){const e=Object.assign({},t);let n,i;return typeof e.audio=="object"&&e.audio.processor&&(n=e.audio.processor,e.audio=Object.assign(Object.assign({},e.audio),{processor:void 0})),typeof e.video=="object"&&e.video.processor&&(i=e.video.processor,e.video=Object.assign(Object.assign({},e.video),{processor:void 0})),{audioProcessor:n,videoProcessor:i,optionsWithoutProcessor:kk(e)}}function nC(t){switch(t){case Ge.CAMERA:return M.Source.Camera;case Ge.MICROPHONE:return M.Source.Microphone;case Ge.SCREEN_SHARE:return M.Source.ScreenShare;case Ge.SCREEN_SHARE_AUDIO:return M.Source.ScreenShareAudio;default:return M.Source.Unknown}}class iC extends ln.EventEmitter{constructor(e){super(),this.onWorkerMessage=n=>{var i,r;const{kind:s,data:o}=n.data;switch(s){case"error":me.error(o.error.message),this.emit(Bn.EncryptionError,o.error);break;case"initAck":o.enabled&&this.keyProvider.getKeys().forEach(a=>{this.postKey(a)});break;case"enable":if(o.enabled&&this.keyProvider.getKeys().forEach(a=>{this.postKey(a)}),this.encryptionEnabled!==o.enabled&&o.participantIdentity===((i=this.room)===null||i===void 0?void 0:i.localParticipant.identity))this.emit(Bn.ParticipantEncryptionStatusChanged,o.enabled,this.room.localParticipant),this.encryptionEnabled=o.enabled;else if(o.participantIdentity){const a=(r=this.room)===null||r===void 0?void 0:r.getParticipantByIdentity(o.participantIdentity);if(!a)throw TypeError("couldn't set encryption status, participant not found".concat(o.participantIdentity));this.emit(Bn.ParticipantEncryptionStatusChanged,o.enabled,a)}break;case"ratchetKey":this.keyProvider.emit($n.KeyRatcheted,o.ratchetResult,o.participantIdentity,o.keyIndex);break}},this.onWorkerError=n=>{me.error("e2ee worker encountered an error:",{error:n.error}),this.emit(Bn.EncryptionError,n.error)},this.keyProvider=e.keyProvider,this.worker=e.worker,this.encryptionEnabled=!1}setup(e){if(!bk())throw new xu("tried to setup end-to-end encryption on an unsupported browser");if(me.info("setting up e2ee"),e!==this.room){this.room=e,this.setupEventListeners(e,this.keyProvider);const n={kind:"init",data:{keyProviderOptions:this.keyProvider.getOptions(),loglevel:ik.getLevel()}};this.worker&&(me.info("initializing worker",{worker:this.worker}),this.worker.onmessage=this.onWorkerMessage,this.worker.onerror=this.onWorkerError,this.worker.postMessage(n))}}setParticipantCryptorEnabled(e,n){me.debug("set e2ee to ".concat(e," for participant ").concat(n)),this.postEnable(e,n)}setSifTrailer(e){!e||e.length===0?me.warn("ignoring server sent trailer as it's empty"):this.postSifTrailer(e)}setupEngine(e){e.on(X.RTPVideoMapUpdate,n=>{this.postRTPMap(n)})}setupEventListeners(e,n){e.on(O.TrackPublished,(i,r)=>this.setParticipantCryptorEnabled(i.trackInfo.encryption!==yt.NONE,r.identity)),e.on(O.ConnectionStateChanged,i=>{i===pe.Connected&&e.remoteParticipants.forEach(r=>{r.trackPublications.forEach(s=>{this.setParticipantCryptorEnabled(s.trackInfo.encryption!==yt.NONE,r.identity)})})}).on(O.TrackUnsubscribed,(i,r,s)=>{var o;const a={kind:"removeTransform",data:{participantIdentity:s.identity,trackId:i.mediaStreamID}};(o=this.worker)===null||o===void 0||o.postMessage(a)}).on(O.TrackSubscribed,(i,r,s)=>{this.setupE2EEReceiver(i,s.identity,r.trackInfo)}).on(O.SignalConnected,()=>{if(!this.room)throw new TypeError("expected room to be present on signal connect");n.getKeys().forEach(i=>{this.postKey(i)}),this.setParticipantCryptorEnabled(this.room.localParticipant.isE2EEEnabled,this.room.localParticipant.identity)}),e.localParticipant.on(U.LocalTrackPublished,i=>P(this,void 0,void 0,function*(){this.setupE2EESender(i.track,i.track.sender)})),n.on($n.SetKey,i=>this.postKey(i)).on($n.RatchetRequest,(i,r)=>this.postRatchetRequest(i,r))}postRatchetRequest(e,n){if(!this.worker)throw Error("could not ratchet key, worker is missing");const i={kind:"ratchetRequest",data:{participantIdentity:e,keyIndex:n}};this.worker.postMessage(i)}postKey(e){let{key:n,participantIdentity:i,keyIndex:r}=e;var s;if(!this.worker)throw Error("could not set key, worker is missing");const o={kind:"setKey",data:{participantIdentity:i,isPublisher:i===((s=this.room)===null||s===void 0?void 0:s.localParticipant.identity),key:n,keyIndex:r}};this.worker.postMessage(o)}postEnable(e,n){if(this.worker){const i={kind:"enable",data:{enabled:e,participantIdentity:n}};this.worker.postMessage(i)}else throw new ReferenceError("failed to enable e2ee, worker is not ready")}postRTPMap(e){var n;if(!this.worker)throw TypeError("could not post rtp map, worker is missing");if(!(!((n=this.room)===null||n===void 0)&&n.localParticipant.identity))throw TypeError("could not post rtp map, local participant identity is missing");const i={kind:"setRTPMap",data:{map:e,participantIdentity:this.room.localParticipant.identity}};this.worker.postMessage(i)}postSifTrailer(e){if(!this.worker)throw Error("could not post SIF trailer, worker is missing");const n={kind:"setSifTrailer",data:{trailer:e}};this.worker.postMessage(n)}setupE2EEReceiver(e,n,i){if(e.receiver){if(!(i!=null&&i.mimeType)||i.mimeType==="")throw new TypeError("MimeType missing from trackInfo, cannot set up E2EE cryptor");this.handleReceiver(e.receiver,e.mediaStreamID,n,e.kind==="video"?yo(i.mimeType):void 0)}}setupE2EESender(e,n){if(!nr(e)||!n){n||me.warn("early return because sender is not ready");return}this.handleSender(n,e.mediaStreamID,void 0)}handleReceiver(e,n,i,r){return P(this,void 0,void 0,function*(){if(this.worker){if(il()){const s={kind:"decode",participantIdentity:i,trackId:n,codec:r};e.transform=new RTCRtpScriptTransform(this.worker,s)}else{if(Dr in e&&r){const c={kind:"updateCodec",data:{trackId:n,codec:r,participantIdentity:i}};this.worker.postMessage(c);return}let s=e.writableStream,o=e.readableStream;if(!s||!o){const c=e.createEncodedStreams();e.writableStream=c.writable,s=c.writable,e.readableStream=c.readable,o=c.readable}const a={kind:"decode",data:{readableStream:o,writableStream:s,trackId:n,codec:r,participantIdentity:i,isReuse:Dr in e}};this.worker.postMessage(a,[o,s])}e[Dr]=!0}})}handleSender(e,n,i){var r;if(!(Dr in e||!this.worker)){if(!(!((r=this.room)===null||r===void 0)&&r.localParticipant.identity)||this.room.localParticipant.identity==="")throw TypeError("local identity needs to be known in order to set up encrypted sender");if(il()){me.info("initialize script transform");const s={kind:"encode",participantIdentity:this.room.localParticipant.identity,trackId:n,codec:i};e.transform=new RTCRtpScriptTransform(this.worker,s)}else{me.info("initialize encoded streams");const s=e.createEncodedStreams(),o={kind:"encode",data:{readableStream:s.readable,writableStream:s.writable,codec:i,trackId:n,participantIdentity:this.room.localParticipant.identity,isReuse:!1}};this.worker.postMessage(o,[s.readable,s.writable])}e[Dr]=!0}}}const qa="default";class tt{constructor(){this._previousDevices=[]}static getInstance(){return this.instance===void 0&&(this.instance=new tt),this.instance}get previousDevices(){return this._previousDevices}getDevices(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var s;if(((s=tt.userMediaPromiseMap)===null||s===void 0?void 0:s.size)>0){me.debug("awaiting getUserMedia promise");try{n?yield tt.userMediaPromiseMap.get(n):yield Promise.all(tt.userMediaPromiseMap.values())}catch{me.warn("error waiting for media permissons")}}let o=yield navigator.mediaDevices.enumerateDevices();if(r&&!(Ti()&&i.hasDeviceInUse(n))&&(o.filter(c=>c.kind===n).length===0||o.some(c=>{const l=c.label==="",u=n?c.kind===n:!0;return l&&u}))){const c={video:n!=="audioinput"&&n!=="audiooutput",audio:n!=="videoinput"&&{deviceId:{ideal:"default"}}},l=yield navigator.mediaDevices.getUserMedia(c);o=yield navigator.mediaDevices.enumerateDevices(),l.getTracks().forEach(u=>{u.stop()})}return i._previousDevices=o,n&&(o=o.filter(a=>a.kind===n)),o}()})}normalizeDeviceId(e,n,i){return P(this,void 0,void 0,function*(){if(n!==qa)return n;const r=yield this.getDevices(e),s=r.find(a=>a.deviceId===qa);if(!s){me.warn("could not reliably determine default device");return}const o=r.find(a=>a.deviceId!==qa&&a.groupId===(i??s.groupId));if(!o){me.warn("could not reliably determine default device");return}return o==null?void 0:o.deviceId})}hasDeviceInUse(e){return e?tt.userMediaPromiseMap.has(e):tt.userMediaPromiseMap.size>0}}tt.mediaDeviceKinds=["audioinput","audiooutput","videoinput"];tt.userMediaPromiseMap=new Map;var Jr;(function(t){t[t.WAITING=0]="WAITING",t[t.RUNNING=1]="RUNNING",t[t.COMPLETED=2]="COMPLETED"})(Jr||(Jr={}));class rC{constructor(){this.pendingTasks=new Map,this.taskMutex=new ft,this.nextTaskIndex=0}run(e){return P(this,void 0,void 0,function*(){const n={id:this.nextTaskIndex++,enqueuedAt:Date.now(),status:Jr.WAITING};this.pendingTasks.set(n.id,n);const i=yield this.taskMutex.lock();try{return n.executedAt=Date.now(),n.status=Jr.RUNNING,yield e()}finally{n.status=Jr.COMPLETED,this.pendingTasks.delete(n.id),i()}})}flush(){return P(this,void 0,void 0,function*(){return this.run(()=>P(this,void 0,void 0,function*(){}))})}snapshot(){return Array.from(this.pendingTasks.values())}}function sC(t,e){const n=new URL(Wk(t));return e.forEach((i,r)=>{n.searchParams.set(r,i)}),R0(n,"rtc")}function oC(t){const e=new URL(dl(t));return R0(e,"validate")}function aC(t){return t.endsWith("/")?t:"".concat(t,"/")}function R0(t,e){return t.pathname="".concat(aC(t.pathname)).concat(e),t.toString()}const cC=["syncState","trickle","offer","answer","simulate","leave"];function lC(t){const e=cC.indexOf(t.case)>=0;return me.trace("request allowed to bypass queue:",{canPass:e,req:t}),e}var Ae;(function(t){t[t.CONNECTING=0]="CONNECTING",t[t.CONNECTED=1]="CONNECTED",t[t.RECONNECTING=2]="RECONNECTING",t[t.DISCONNECTING=3]="DISCONNECTING",t[t.DISCONNECTED=4]="DISCONNECTED"})(Ae||(Ae={}));class Au{get currentState(){return this.state}get isDisconnected(){return this.state===Ae.DISCONNECTING||this.state===Ae.DISCONNECTED}get isEstablishingConnection(){return this.state===Ae.CONNECTING||this.state===Ae.RECONNECTING}getNextRequestId(){return this._requestId+=1,this._requestId}constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var i;this.rtt=0,this.state=Ae.DISCONNECTED,this.log=me,this._requestId=0,this.resetCallbacks=()=>{this.onAnswer=void 0,this.onLeave=void 0,this.onLocalTrackPublished=void 0,this.onLocalTrackUnpublished=void 0,this.onNegotiateRequested=void 0,this.onOffer=void 0,this.onRemoteMuteChanged=void 0,this.onSubscribedQualityUpdate=void 0,this.onTokenRefresh=void 0,this.onTrickle=void 0,this.onClose=void 0},this.log=Cn((i=n.loggerName)!==null&&i!==void 0?i:zt.Signal),this.loggerContextCb=n.loggerContextCb,this.useJSON=e,this.requestQueue=new rC,this.queuedRequests=[],this.closingLock=new ft,this.connectionLock=new ft,this.state=Ae.DISCONNECTED}get logContext(){var e,n;return(n=(e=this.loggerContextCb)===null||e===void 0?void 0:e.call(this))!==null&&n!==void 0?n:{}}join(e,n,i,r){return P(this,void 0,void 0,function*(){return this.state=Ae.CONNECTING,this.options=i,yield this.connect(e,n,i,r)})}reconnect(e,n,i,r){return P(this,void 0,void 0,function*(){if(!this.options){this.log.warn("attempted to reconnect without signal options being set, ignoring",this.logContext);return}return this.state=Ae.RECONNECTING,this.clearPingInterval(),yield this.connect(e,n,Object.assign(Object.assign({},this.options),{reconnect:!0,sid:i,reconnectReason:r}))})}connect(e,n,i,r){this.connectOptions=i;const s=$k(),o=uC(n,s,i),a=sC(e,o),c=oC(a);return new Promise((l,u)=>P(this,void 0,void 0,function*(){const d=yield this.connectionLock.lock();try{const h=()=>P(this,void 0,void 0,function*(){this.close(),clearTimeout(p),u(new Re("room connection has been cancelled (signal)",ge.Cancelled))}),p=setTimeout(()=>{this.close(),u(new Re("room connection has timed out (signal)",ge.ServerUnreachable))},i.websocketTimeout);r!=null&&r.aborted&&h(),r==null||r.addEventListener("abort",h);const g=new URL(a);g.searchParams.has("access_token")&&g.searchParams.set("access_token","<redacted>"),this.log.debug("connecting to ".concat(g),Object.assign({reconnect:i.reconnect,reconnectReason:i.reconnectReason},this.logContext)),this.ws&&(yield this.close(!1)),this.ws=new WebSocket(a),this.ws.binaryType="arraybuffer",this.ws.onopen=()=>{clearTimeout(p)},this.ws.onerror=f=>P(this,void 0,void 0,function*(){if(this.state!==Ae.CONNECTED){this.state=Ae.DISCONNECTED,clearTimeout(p);try{const y=yield fetch(c);if(y.status.toFixed(0).startsWith("4")){const v=yield y.text();u(new Re(v,ge.NotAllowed,y.status))}else u(new Re("Encountered unknown websocket error during connection: ".concat(f.toString()),ge.InternalError,y.status))}catch(y){u(new Re(y instanceof Error?y.message:"server was not reachable",ge.ServerUnreachable))}return}this.handleWSError(f)}),this.ws.onmessage=f=>P(this,void 0,void 0,function*(){var y,v,C;let T;if(typeof f.data=="string"){const k=JSON.parse(f.data);T=Sf.fromJson(k,{ignoreUnknownFields:!0})}else if(f.data instanceof ArrayBuffer)T=Sf.fromBinary(new Uint8Array(f.data));else{this.log.error("could not decode websocket message: ".concat(typeof f.data),this.logContext);return}if(this.state!==Ae.CONNECTED){let k=!1;if(((y=T.message)===null||y===void 0?void 0:y.case)==="join"?(this.state=Ae.CONNECTED,r==null||r.removeEventListener("abort",h),this.pingTimeoutDuration=T.message.value.pingTimeout,this.pingIntervalDuration=T.message.value.pingInterval,this.pingTimeoutDuration&&this.pingTimeoutDuration>0&&(this.log.debug("ping config",Object.assign(Object.assign({},this.logContext),{timeout:this.pingTimeoutDuration,interval:this.pingIntervalDuration})),this.startPingInterval()),l(T.message.value)):this.state===Ae.RECONNECTING&&T.message.case!=="leave"?(this.state=Ae.CONNECTED,r==null||r.removeEventListener("abort",h),this.startPingInterval(),((v=T.message)===null||v===void 0?void 0:v.case)==="reconnect"?l(T.message.value):(this.log.debug("declaring signal reconnected without reconnect response received",this.logContext),l(void 0),k=!0)):this.isEstablishingConnection&&T.message.case==="leave"?u(new Re("Received leave request while trying to (re)connect",ge.LeaveRequest,void 0,T.message.value.reason)):i.reconnect||u(new Re("did not receive join response, got ".concat((C=T.message)===null||C===void 0?void 0:C.case," instead"),ge.InternalError)),!k)return}this.signalLatency&&(yield mt(this.signalLatency)),this.handleSignalResponse(T)}),this.ws.onclose=f=>{this.isEstablishingConnection&&u(new Re("Websocket got closed during a (re)connection attempt",ge.InternalError)),this.log.warn("websocket closed",Object.assign(Object.assign({},this.logContext),{reason:f.reason,code:f.code,wasClean:f.wasClean,state:this.state})),this.handleOnClose(f.reason)}}finally{d()}}))}close(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){const i=yield e.closingLock.lock();try{if(e.clearPingInterval(),n&&(e.state=Ae.DISCONNECTING),e.ws){e.ws.onmessage=null,e.ws.onopen=null,e.ws.onclose=null;const r=new Promise(s=>{e.ws?e.ws.onclose=()=>{s()}:s()});e.ws.readyState<e.ws.CLOSING&&(e.ws.close(),yield Promise.race([r,mt(250)])),e.ws=void 0}}finally{n&&(e.state=Ae.DISCONNECTED),i()}}()})}sendOffer(e,n){this.log.debug("sending offer",Object.assign(Object.assign({},this.logContext),{offerSdp:e.sdp})),this.sendRequest({case:"offer",value:No(e,n)})}sendAnswer(e,n){return this.log.debug("sending answer",Object.assign(Object.assign({},this.logContext),{answerSdp:e.sdp})),this.sendRequest({case:"answer",value:No(e,n)})}sendIceCandidate(e,n){return this.log.debug("sending ice candidate",Object.assign(Object.assign({},this.logContext),{candidate:e})),this.sendRequest({case:"trickle",value:new bu({candidateInit:JSON.stringify(e),target:n})})}sendMuteTrack(e,n){return this.sendRequest({case:"mute",value:new Su({sid:e,muted:n})})}sendAddTrack(e){return this.sendRequest({case:"addTrack",value:e})}sendUpdateLocalMetadata(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return function*(){const a=s.getNextRequestId();return yield s.sendRequest({case:"updateMetadata",value:new Lg({requestId:a,metadata:i,name:r,attributes:o})}),a}()})}sendUpdateTrackSettings(e){this.sendRequest({case:"trackSetting",value:e})}sendUpdateSubscription(e){return this.sendRequest({case:"subscription",value:e})}sendSyncState(e){return this.sendRequest({case:"syncState",value:e})}sendUpdateVideoLayers(e,n){return this.sendRequest({case:"updateLayers",value:new Ng({trackSid:e,layers:n})})}sendUpdateSubscriptionPermissions(e,n){return this.sendRequest({case:"subscriptionPermission",value:new jg({allParticipants:e,trackPermissions:n})})}sendSimulateScenario(e){return this.sendRequest({case:"simulate",value:e})}sendPing(){return Promise.all([this.sendRequest({case:"ping",value:_e.parse(Date.now())}),this.sendRequest({case:"pingReq",value:new Hg({timestamp:_e.parse(Date.now()),rtt:_e.parse(this.rtt)})})])}sendUpdateLocalAudioTrack(e,n){return this.sendRequest({case:"updateAudioTrack",value:new Dg({trackSid:e,features:n})})}sendLeave(){return this.sendRequest({case:"leave",value:new oa({reason:$t.CLIENT_INITIATED,action:Qi.DISCONNECT})})}sendRequest(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return function*(){if(!r&&!lC(n)&&i.state===Ae.RECONNECTING){i.queuedRequests.push(()=>P(i,void 0,void 0,function*(){yield this.sendRequest(n,!0)}));return}if(r||(yield i.requestQueue.flush()),i.signalLatency&&(yield mt(i.signalLatency)),!i.ws||i.ws.readyState!==i.ws.OPEN){i.log.error("cannot send signal request before connected, type: ".concat(n==null?void 0:n.case),i.logContext);return}const o=new IT({message:n});try{i.useJSON?i.ws.send(o.toJsonString()):i.ws.send(o.toBinary())}catch(a){i.log.error("error sending signal message",Object.assign(Object.assign({},i.logContext),{error:a}))}}()})}handleSignalResponse(e){var n,i;const r=e.message;if(r==null){this.log.debug("received unsupported message",this.logContext);return}let s=!1;if(r.case==="answer"){const o=zf(r.value);this.onAnswer&&this.onAnswer(o,r.value.id)}else if(r.case==="offer"){const o=zf(r.value);this.onOffer&&this.onOffer(o,r.value.id)}else if(r.case==="trickle"){const o=JSON.parse(r.value.candidateInit);this.onTrickle&&this.onTrickle(o,r.value.target)}else r.case==="update"?this.onParticipantUpdate&&this.onParticipantUpdate((n=r.value.participants)!==null&&n!==void 0?n:[]):r.case==="trackPublished"?this.onLocalTrackPublished&&this.onLocalTrackPublished(r.value):r.case==="speakersChanged"?this.onSpeakersChanged&&this.onSpeakersChanged((i=r.value.speakers)!==null&&i!==void 0?i:[]):r.case==="leave"?this.onLeave&&this.onLeave(r.value):r.case==="mute"?this.onRemoteMuteChanged&&this.onRemoteMuteChanged(r.value.sid,r.value.muted):r.case==="roomUpdate"?this.onRoomUpdate&&r.value.room&&this.onRoomUpdate(r.value.room):r.case==="connectionQuality"?this.onConnectionQuality&&this.onConnectionQuality(r.value):r.case==="streamStateUpdate"?this.onStreamStateUpdate&&this.onStreamStateUpdate(r.value):r.case==="subscribedQualityUpdate"?this.onSubscribedQualityUpdate&&this.onSubscribedQualityUpdate(r.value):r.case==="subscriptionPermissionUpdate"?this.onSubscriptionPermissionUpdate&&this.onSubscriptionPermissionUpdate(r.value):r.case==="refreshToken"?this.onTokenRefresh&&this.onTokenRefresh(r.value):r.case==="trackUnpublished"?this.onLocalTrackUnpublished&&this.onLocalTrackUnpublished(r.value):r.case==="subscriptionResponse"?this.onSubscriptionError&&this.onSubscriptionError(r.value):r.case==="pong"||(r.case==="pongResp"?(this.rtt=Date.now()-Number.parseInt(r.value.lastPingTimestamp.toString()),this.resetPingTimeout(),s=!0):r.case==="requestResponse"?this.onRequestResponse&&this.onRequestResponse(r.value):r.case==="trackSubscribed"?this.onLocalTrackSubscribed&&this.onLocalTrackSubscribed(r.value.trackSid):r.case==="roomMoved"?(this.onTokenRefresh&&this.onTokenRefresh(r.value.token),this.onRoomMoved&&this.onRoomMoved(r.value)):this.log.debug("unsupported message",Object.assign(Object.assign({},this.logContext),{msgCase:r.case})));s||this.resetPingTimeout()}setReconnected(){for(;this.queuedRequests.length>0;){const e=this.queuedRequests.shift();e&&this.requestQueue.run(e)}}handleOnClose(e){return P(this,void 0,void 0,function*(){if(this.state===Ae.DISCONNECTED)return;const n=this.onClose;yield this.close(),this.log.debug("websocket connection closed: ".concat(e),Object.assign(Object.assign({},this.logContext),{reason:e})),n&&n(e)})}handleWSError(e){this.log.error("websocket error",Object.assign(Object.assign({},this.logContext),{error:e}))}resetPingTimeout(){if(this.clearPingTimeout(),!this.pingTimeoutDuration){this.log.warn("ping timeout duration not set",this.logContext);return}this.pingTimeout=rt.setTimeout(()=>{this.log.warn("ping timeout triggered. last pong received at: ".concat(new Date(Date.now()-this.pingTimeoutDuration*1e3).toUTCString()),this.logContext),this.handleOnClose("ping timeout")},this.pingTimeoutDuration*1e3)}clearPingTimeout(){this.pingTimeout&&rt.clearTimeout(this.pingTimeout)}startPingInterval(){if(this.clearPingInterval(),this.resetPingTimeout(),!this.pingIntervalDuration){this.log.warn("ping interval duration not set",this.logContext);return}this.log.debug("start ping interval",this.logContext),this.pingInterval=rt.setInterval(()=>{this.sendPing()},this.pingIntervalDuration*1e3)}clearPingInterval(){this.log.debug("clearing ping interval",this.logContext),this.clearPingTimeout(),this.pingInterval&&rt.clearInterval(this.pingInterval)}}function zf(t){const e={type:"offer",sdp:t.sdp};switch(t.type){case"answer":case"offer":case"pranswer":case"rollback":e.type=t.type;break}return e}function No(t,e){return new Si({sdp:t.sdp,type:t.type,id:e})}function uC(t,e,n){var i;const r=new URLSearchParams;return r.set("access_token",t),n.reconnect&&(r.set("reconnect","1"),n.sid&&r.set("sid",n.sid)),r.set("auto_subscribe",n.autoSubscribe?"1":"0"),r.set("sdk",on()?"reactnative":"js"),r.set("version",e.version),r.set("protocol",e.protocol.toString()),e.deviceModel&&r.set("device_model",e.deviceModel),e.os&&r.set("os",e.os),e.osVersion&&r.set("os_version",e.osVersion),e.browser&&r.set("browser",e.browser),e.browserVersion&&r.set("browser_version",e.browserVersion),n.adaptiveStream&&r.set("adaptive_stream","1"),n.reconnectReason&&r.set("reconnect_reason",n.reconnectReason.toString()),!((i=navigator.connection)===null||i===void 0)&&i.type&&r.set("network",navigator.connection.type),r}class Wf{constructor(){this.buffer=[],this._totalSize=0}push(e){this.buffer.push(e),this._totalSize+=e.data.byteLength}pop(){const e=this.buffer.shift();return e&&(this._totalSize-=e.data.byteLength),e}getAll(){return this.buffer.slice()}popToSequence(e){for(;this.buffer.length>0&&this.buffer[0].sequence<=e;)this.pop()}alignBufferedAmount(e){for(;this.buffer.length>0;){const n=this.buffer[0];if(this._totalSize-n.data.byteLength<=e)break;this.pop()}}get length(){return this.buffer.length}}class dC{constructor(e){this._map=new Map,this._lastCleanup=0,this.ttl=e}set(e,n){const i=Date.now();i-this._lastCleanup>this.ttl/2&&this.cleanup();const r=i+this.ttl;return this._map.set(e,{value:n,expiresAt:r}),this}get(e){const n=this._map.get(e);if(n){if(n.expiresAt<Date.now()){this._map.delete(e);return}return n.value}}has(e){const n=this._map.get(e);return n?n.expiresAt<Date.now()?(this._map.delete(e),!1):!0:!1}delete(e){return this._map.delete(e)}clear(){this._map.clear()}cleanup(){const e=Date.now();for(const[n,i]of this._map.entries())i.expiresAt<e&&this._map.delete(n);this._lastCleanup=e}get size(){return this.cleanup(),this._map.size}forEach(e){this.cleanup();for(const[n,i]of this._map.entries())i.expiresAt>=Date.now()&&e(i.value,n,this.asValueMap())}map(e){this.cleanup();const n=[],i=this.asValueMap();for(const[r,s]of i.entries())n.push(e(s,r,i));return n}asValueMap(){const e=new Map;for(const[n,i]of this._map.entries())i.expiresAt>=Date.now()&&e.set(n,i.value);return e}}var Nt={},Ga={},Ka={exports:{}},qf;function Iu(){if(qf)return Ka.exports;qf=1;var t=Ka.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return e.address!=null?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%s trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return e.subtype!=null?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:["value","direction","encrypt-uri","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+(e["encrypt-uri"]?" %s":"%v")+" %s"+(e.config?" %s":"")}},{name:"extmapAllowMixed",reg:/^(extmap-allow-mixed)/},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return e.sessionConfig!=null?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"connectionType",reg:/^connection:(new|existing)/,format:"connection:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*(?:\.\d*)*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*(?:\.\d*)*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var n="candidate:%s %d %s %d %s %d typ %s";return n+=e.raddr!=null?" raddr %s rport %d":"%v%v",n+=e.tcptype!=null?" tcptype %s":"%v",e.generation!=null&&(n+=" generation %d"),n+=e["network-id"]!=null?" network-id %d":"%v",n+=e["network-cost"]!=null?" network-cost %d":"%v",n}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var n="ssrc:%d";return e.attribute!=null&&(n+=" %s",e.value!=null&&(n+=":%s")),n}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return e.maxMessageSize!=null?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{name:"sourceFilter",reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:["filterMode","netType","addressTypes","destAddress","srcList"],format:"source-filter: %s %s %s %s %s"},{name:"bundleOnly",reg:/^(bundle-only)/},{name:"label",reg:/^label:(.+)/,format:"label:%s"},{name:"sctpPort",reg:/^sctp-port:(\d+)$/,format:"sctp-port:%s"},{name:"maxMessageSize",reg:/^max-message-size:(\d+)$/,format:"max-message-size:%s"},{push:"tsRefClocks",reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:["clksrc","clksrcExt"],format:function(e){return"ts-refclk:%s"+(e.clksrcExt!=null?"=%s":"")}},{name:"mediaClk",reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:["id","mediaClockName","mediaClockValue","rateNumerator","rateDenominator"],format:function(e){var n="mediaclk:";return n+=e.id!=null?"id=%s %s":"%v%s",n+=e.mediaClockValue!=null?"=%s":"",n+=e.rateNumerator!=null?" rate=%s":"",n+=e.rateDenominator!=null?"/%s":"",n}},{name:"keywords",reg:/^keywds:(.+)$/,format:"keywds:%s"},{name:"content",reg:/^content:(.+)/,format:"content:%s"},{name:"bfcpFloorCtrl",reg:/^floorctrl:(c-only|s-only|c-s)/,format:"floorctrl:%s"},{name:"bfcpConfId",reg:/^confid:(\d+)/,format:"confid:%s"},{name:"bfcpUserId",reg:/^userid:(\d+)/,format:"userid:%s"},{name:"bfcpFloorId",reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:["id","mStream"],format:"floorid:%s mstrm:%s"},{push:"invalid",names:["value"]}]};return Object.keys(t).forEach(function(e){var n=t[e];n.forEach(function(i){i.reg||(i.reg=/(.*)/),i.format||(i.format="%s")})}),Ka.exports}var Gf;function fC(){return Gf||(Gf=1,function(t){var e=function(a){return String(Number(a))===a?Number(a):a},n=function(a,c,l,u){if(u&&!l)c[u]=e(a[1]);else for(var d=0;d<l.length;d+=1)a[d+1]!=null&&(c[l[d]]=e(a[d+1]))},i=function(a,c,l){var u=a.name&&a.names;a.push&&!c[a.push]?c[a.push]=[]:u&&!c[a.name]&&(c[a.name]={});var d=a.push?{}:u?c[a.name]:c;n(l.match(a.reg),d,a.names,a.name),a.push&&c[a.push].push(d)},r=Iu(),s=RegExp.prototype.test.bind(/^([a-z])=(.*)/);t.parse=function(a){var c={},l=[],u=c;return a.split(/(\r\n|\r|\n)/).filter(s).forEach(function(d){var h=d[0],p=d.slice(2);h==="m"&&(l.push({rtp:[],fmtp:[]}),u=l[l.length-1]);for(var g=0;g<(r[h]||[]).length;g+=1){var f=r[h][g];if(f.reg.test(p))return i(f,u,p)}}),c.media=l,c};var o=function(a,c){var l=c.split(/=(.+)/,2);return l.length===2?a[l[0]]=e(l[1]):l.length===1&&c.length>1&&(a[l[0]]=void 0),a};t.parseParams=function(a){return a.split(/;\s?/).reduce(o,{})},t.parseFmtpConfig=t.parseParams,t.parsePayloads=function(a){return a.toString().split(" ").map(Number)},t.parseRemoteCandidates=function(a){for(var c=[],l=a.split(" ").map(e),u=0;u<l.length;u+=3)c.push({component:l[u],ip:l[u+1],port:l[u+2]});return c},t.parseImageAttributes=function(a){return a.split(" ").map(function(c){return c.substring(1,c.length-1).split(",").reduce(o,{})})},t.parseSimulcastStreamList=function(a){return a.split(";").map(function(c){return c.split(",").map(function(l){var u,d=!1;return l[0]!=="~"?u=e(l):(u=e(l.substring(1,l.length)),d=!0),{scid:u,paused:d}})})}}(Ga)),Ga}var Za,Kf;function hC(){if(Kf)return Za;Kf=1;var t=Iu(),e=/%[sdv%]/g,n=function(o){var a=1,c=arguments,l=c.length;return o.replace(e,function(u){if(a>=l)return u;var d=c[a];switch(a+=1,u){case"%%":return"%";case"%s":return String(d);case"%d":return Number(d);case"%v":return""}})},i=function(o,a,c){var l=a.format instanceof Function?a.format(a.push?c:c[a.name]):a.format,u=[o+"="+l];if(a.names)for(var d=0;d<a.names.length;d+=1){var h=a.names[d];a.name?u.push(c[a.name][h]):u.push(c[a.names[d]])}else u.push(c[a.name]);return n.apply(null,u)},r=["v","o","s","i","u","e","p","c","b","t","r","z","a"],s=["i","c","b","a"];return Za=function(o,a){a=a||{},o.version==null&&(o.version=0),o.name==null&&(o.name=" "),o.media.forEach(function(d){d.payloads==null&&(d.payloads="")});var c=a.outerOrder||r,l=a.innerOrder||s,u=[];return c.forEach(function(d){t[d].forEach(function(h){h.name in o&&o[h.name]!=null?u.push(i(d,h,o)):h.push in o&&o[h.push]!=null&&o[h.push].forEach(function(p){u.push(i(d,h,p))})})}),o.media.forEach(function(d){u.push(i("m",t.m[0],d)),l.forEach(function(h){t[h].forEach(function(p){p.name in d&&d[p.name]!=null?u.push(i(h,p,d)):p.push in d&&d[p.push]!=null&&d[p.push].forEach(function(g){u.push(i(h,p,g))})})})}),u.join(`\r
|
|
67
|
+
`);t.RTCSessionDescription&&r instanceof t.RTCSessionDescription?arguments[0]=new t.RTCSessionDescription({type:r.type,sdp:s}):r.sdp=s}return n.apply(this,arguments)}}function po(t,e){if(!(t.RTCPeerConnection&&t.RTCPeerConnection.prototype))return;const n=t.RTCPeerConnection.prototype.addIceCandidate;!n||n.length===0||(t.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?(e.browser==="chrome"&&e.version<78||e.browser==="firefox"&&e.version<68||e.browser==="safari")&&arguments[0]&&arguments[0].candidate===""?Promise.resolve():n.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}function mo(t,e){if(!(t.RTCPeerConnection&&t.RTCPeerConnection.prototype))return;const n=t.RTCPeerConnection.prototype.setLocalDescription;!n||n.length===0||(t.RTCPeerConnection.prototype.setLocalDescription=function(){let r=arguments[0]||{};if(typeof r!="object"||r.type&&r.sdp)return n.apply(this,arguments);if(r={type:r.type,sdp:r.sdp},!r.type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":r.type="offer";break;default:r.type="answer";break}return r.sdp||r.type!=="offer"&&r.type!=="answer"?n.apply(this,[r]):(r.type==="offer"?this.createOffer:this.createAnswer).apply(this).then(o=>n.apply(this,[o]))})}var pk=Object.freeze({__proto__:null,removeExtmapAllowMixed:nl,shimAddIceCandidateNullOrEmpty:po,shimConnectionState:tl,shimMaxMessageSize:fo,shimParameterlessSetLocalDescription:mo,shimRTCIceCandidate:uo,shimRTCIceCandidateRelayProtocol:el,shimSendThrowTypeError:ho});function mk(){let{window:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0};const n=qg,i=uk(t),r={browserDetails:i,commonShim:pk,extractVersion:zr,disableLog:ck,disableWarnings:lk,sdp:hk};switch(i.browser){case"chrome":if(!Pf||!Xc||!e.shimChrome)return n("Chrome shim is not included in this adapter release."),r;if(i.version===null)return n("Chrome shim can not determine version, not shimming."),r;n("adapter.js shimming chrome."),r.browserShim=Pf,po(t,i),mo(t),Kg(t,i),Zg(t),Xc(t,i),Yg(t),e0(t,i),Jg(t),Xg(t),t0(t,i),uo(t),el(t),tl(t),fo(t,i),ho(t),nl(t,i);break;case"firefox":if(!Rf||!Qc||!e.shimFirefox)return n("Firefox shim is not included in this adapter release."),r;n("adapter.js shimming firefox."),r.browserShim=Rf,po(t,i),mo(t),n0(t,i),Qc(t,i),i0(t),o0(t),r0(t),s0(t),a0(t),c0(t),l0(t),u0(t),d0(t),uo(t),tl(t),fo(t,i),ho(t);break;case"safari":if(!Af||!e.shimSafari)return n("Safari shim is not included in this adapter release."),r;n("adapter.js shimming safari."),r.browserShim=Af,po(t,i),mo(t),v0(t),b0(t),p0(t),f0(t),h0(t),y0(t),m0(t),S0(t),uo(t),el(t),fo(t,i),ho(t),nl(t,i);break;default:n("Unsupported browser!");break}return r}mk({window:typeof window>"u"?void 0:window});const gk=10,Dr="lk_e2ee",vk="LKFrameEncryptionKey",yk={sharedKey:!1,ratchetSalt:vk,ratchetWindowSize:8,failureTolerance:gk,keyringSize:16};var $n;(function(t){t.SetKey="setKey",t.RatchetRequest="ratchetRequest",t.KeyRatcheted="keyRatcheted"})($n||($n={}));var _f;(function(t){t.KeyRatcheted="keyRatcheted"})(_f||(_f={}));var Bn;(function(t){t.ParticipantEncryptionStatusChanged="participantEncryptionStatusChanged",t.EncryptionError="encryptionError"})(Bn||(Bn={}));var Mf;(function(t){t.Error="cryptorError"})(Mf||(Mf={}));function bk(){return Sk()||il()}function il(){return typeof window.RTCRtpScriptTransform<"u"}function Sk(){return typeof window.RTCRtpSender<"u"&&typeof window.RTCRtpSender.prototype.createEncodedStreams<"u"}class eN extends ln.EventEmitter{constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};super(),this.onKeyRatcheted=(n,i,r)=>{me.debug("key ratcheted event received",{ratchetResult:n,participantId:i,keyIndex:r})},this.keyInfoMap=new Map,this.options=Object.assign(Object.assign({},yk),e),this.on($n.KeyRatcheted,this.onKeyRatcheted)}onSetEncryptionKey(e,n,i){const r={key:e,participantIdentity:n,keyIndex:i};if(!this.options.sharedKey&&!n)throw new Error("participant identity needs to be passed for encryption key if sharedKey option is false");this.keyInfoMap.set("".concat(n??"shared","-").concat(i??0),r),this.emit($n.SetKey,r)}getKeys(){return Array.from(this.keyInfoMap.values())}getOptions(){return this.options}ratchetKey(e,n){this.emit($n.RatchetRequest,e,n)}}class ei extends Error{constructor(e,n){super(n||"an error has occured"),this.name="LiveKitError",this.code=e}}var ge;(function(t){t[t.NotAllowed=0]="NotAllowed",t[t.ServerUnreachable=1]="ServerUnreachable",t[t.InternalError=2]="InternalError",t[t.Cancelled=3]="Cancelled",t[t.LeaveRequest=4]="LeaveRequest",t[t.Timeout=5]="Timeout"})(ge||(ge={}));class Re extends ei{constructor(e,n,i,r){super(1,e),this.name="ConnectionError",this.status=i,this.reason=n,this.context=r,this.reasonName=ge[n]}}class xu extends ei{constructor(e){super(21,e??"device is unsupported"),this.name="DeviceUnsupportedError"}}class Sn extends ei{constructor(e){super(20,e??"track is invalid"),this.name="TrackInvalidError"}}class Tk extends ei{constructor(e){super(10,e??"unsupported server"),this.name="UnsupportedServer"}}class Je extends ei{constructor(e){super(12,e??"unexpected connection state"),this.name="UnexpectedConnectionState"}}class rl extends ei{constructor(e){super(13,e??"unable to negotiate"),this.name="NegotiationError"}}class Of extends ei{constructor(e,n){super(15,e),this.name="PublishTrackError",this.status=n}}class Df extends ei{constructor(e,n){super(15,e),this.reason=n,this.reasonName=typeof n=="string"?n:Cu[n]}}var Do;(function(t){t.PermissionDenied="PermissionDenied",t.NotFound="NotFound",t.DeviceInUse="DeviceInUse",t.Other="Other"})(Do||(Do={}));(function(t){function e(n){if(n&&"name"in n)return n.name==="NotFoundError"||n.name==="DevicesNotFoundError"?t.NotFound:n.name==="NotAllowedError"||n.name==="PermissionDeniedError"?t.PermissionDenied:n.name==="NotReadableError"||n.name==="TrackStartError"?t.DeviceInUse:t.Other}t.getFailure=e})(Do||(Do={}));var Nf;(function(t){t[t.InvalidKey=0]="InvalidKey",t[t.MissingKey=1]="MissingKey",t[t.InternalError=2]="InternalError"})(Nf||(Nf={}));var D;(function(t){t.Connected="connected",t.Reconnecting="reconnecting",t.SignalReconnecting="signalReconnecting",t.Reconnected="reconnected",t.Disconnected="disconnected",t.ConnectionStateChanged="connectionStateChanged",t.Moved="moved",t.MediaDevicesChanged="mediaDevicesChanged",t.ParticipantConnected="participantConnected",t.ParticipantDisconnected="participantDisconnected",t.TrackPublished="trackPublished",t.TrackSubscribed="trackSubscribed",t.TrackSubscriptionFailed="trackSubscriptionFailed",t.TrackUnpublished="trackUnpublished",t.TrackUnsubscribed="trackUnsubscribed",t.TrackMuted="trackMuted",t.TrackUnmuted="trackUnmuted",t.LocalTrackPublished="localTrackPublished",t.LocalTrackUnpublished="localTrackUnpublished",t.LocalAudioSilenceDetected="localAudioSilenceDetected",t.ActiveSpeakersChanged="activeSpeakersChanged",t.ParticipantMetadataChanged="participantMetadataChanged",t.ParticipantNameChanged="participantNameChanged",t.ParticipantAttributesChanged="participantAttributesChanged",t.ParticipantActive="participantActive",t.RoomMetadataChanged="roomMetadataChanged",t.DataReceived="dataReceived",t.SipDTMFReceived="sipDTMFReceived",t.TranscriptionReceived="transcriptionReceived",t.ConnectionQualityChanged="connectionQualityChanged",t.TrackStreamStateChanged="trackStreamStateChanged",t.TrackSubscriptionPermissionChanged="trackSubscriptionPermissionChanged",t.TrackSubscriptionStatusChanged="trackSubscriptionStatusChanged",t.AudioPlaybackStatusChanged="audioPlaybackChanged",t.VideoPlaybackStatusChanged="videoPlaybackChanged",t.MediaDevicesError="mediaDevicesError",t.ParticipantPermissionsChanged="participantPermissionsChanged",t.SignalConnected="signalConnected",t.RecordingStatusChanged="recordingStatusChanged",t.ParticipantEncryptionStatusChanged="participantEncryptionStatusChanged",t.EncryptionError="encryptionError",t.DCBufferStatusChanged="dcBufferStatusChanged",t.ActiveDeviceChanged="activeDeviceChanged",t.ChatMessage="chatMessage",t.LocalTrackSubscribed="localTrackSubscribed",t.MetricsReceived="metricsReceived"})(D||(D={}));var U;(function(t){t.TrackPublished="trackPublished",t.TrackSubscribed="trackSubscribed",t.TrackSubscriptionFailed="trackSubscriptionFailed",t.TrackUnpublished="trackUnpublished",t.TrackUnsubscribed="trackUnsubscribed",t.TrackMuted="trackMuted",t.TrackUnmuted="trackUnmuted",t.LocalTrackPublished="localTrackPublished",t.LocalTrackUnpublished="localTrackUnpublished",t.ParticipantMetadataChanged="participantMetadataChanged",t.ParticipantNameChanged="participantNameChanged",t.DataReceived="dataReceived",t.SipDTMFReceived="sipDTMFReceived",t.TranscriptionReceived="transcriptionReceived",t.IsSpeakingChanged="isSpeakingChanged",t.ConnectionQualityChanged="connectionQualityChanged",t.TrackStreamStateChanged="trackStreamStateChanged",t.TrackSubscriptionPermissionChanged="trackSubscriptionPermissionChanged",t.TrackSubscriptionStatusChanged="trackSubscriptionStatusChanged",t.MediaDevicesError="mediaDevicesError",t.AudioStreamAcquired="audioStreamAcquired",t.ParticipantPermissionsChanged="participantPermissionsChanged",t.PCTrackAdded="pcTrackAdded",t.AttributesChanged="attributesChanged",t.LocalTrackSubscribed="localTrackSubscribed",t.ChatMessage="chatMessage",t.Active="active"})(U||(U={}));var X;(function(t){t.TransportsCreated="transportsCreated",t.Connected="connected",t.Disconnected="disconnected",t.Resuming="resuming",t.Resumed="resumed",t.Restarting="restarting",t.Restarted="restarted",t.SignalResumed="signalResumed",t.SignalRestarted="signalRestarted",t.Closing="closing",t.MediaTrackAdded="mediaTrackAdded",t.ActiveSpeakersUpdate="activeSpeakersUpdate",t.DataPacketReceived="dataPacketReceived",t.RTPVideoMapUpdate="rtpVideoMapUpdate",t.DCBufferStatusChanged="dcBufferStatusChanged",t.ParticipantUpdate="participantUpdate",t.RoomUpdate="roomUpdate",t.SpeakersChanged="speakersChanged",t.StreamStateChanged="streamStateChanged",t.ConnectionQualityUpdate="connectionQualityUpdate",t.SubscriptionError="subscriptionError",t.SubscriptionPermissionUpdate="subscriptionPermissionUpdate",t.RemoteMute="remoteMute",t.SubscribedQualityUpdate="subscribedQualityUpdate",t.LocalTrackUnpublished="localTrackUnpublished",t.LocalTrackSubscribed="localTrackSubscribed",t.Offline="offline",t.SignalRequestResponse="signalRequestResponse",t.SignalConnected="signalConnected",t.RoomMoved="roomMoved"})(X||(X={}));var G;(function(t){t.Message="message",t.Muted="muted",t.Unmuted="unmuted",t.Restarted="restarted",t.Ended="ended",t.Subscribed="subscribed",t.Unsubscribed="unsubscribed",t.UpdateSettings="updateSettings",t.UpdateSubscription="updateSubscription",t.AudioPlaybackStarted="audioPlaybackStarted",t.AudioPlaybackFailed="audioPlaybackFailed",t.AudioSilenceDetected="audioSilenceDetected",t.VisibilityChanged="visibilityChanged",t.VideoDimensionsChanged="videoDimensionsChanged",t.VideoPlaybackStarted="videoPlaybackStarted",t.VideoPlaybackFailed="videoPlaybackFailed",t.ElementAttached="elementAttached",t.ElementDetached="elementDetached",t.UpstreamPaused="upstreamPaused",t.UpstreamResumed="upstreamResumed",t.SubscriptionPermissionChanged="subscriptionPermissionChanged",t.SubscriptionStatusChanged="subscriptionStatusChanged",t.SubscriptionFailed="subscriptionFailed",t.TrackProcessorUpdate="trackProcessorUpdate",t.AudioTrackFeatureUpdate="audioTrackFeatureUpdate",t.TranscriptionReceived="transcriptionReceived",t.TimeSyncUpdate="timeSyncUpdate",t.PreConnectBufferFlushed="preConnectBufferFlushed"})(G||(G={}));function kk(t){return typeof t>"u"?t:typeof structuredClone=="function"?typeof t=="object"&&t!==null?structuredClone(Object.assign({},t)):structuredClone(t):JSON.parse(JSON.stringify(t))}const Ck=/version\/(\d+(\.?_?\d+)+)/i;let Ua;function Tt(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(typeof navigator>"u")return;const n=navigator.userAgent.toLowerCase();if(Ua===void 0||e){const i=wk.find(r=>{let{test:s}=r;return s.test(n)});Ua=i==null?void 0:i.describe(n)}return Ua}const wk=[{test:/firefox|iceweasel|fxios/i,describe(t){return{name:"Firefox",version:go(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,t),os:t.toLowerCase().includes("fxios")?"iOS":void 0,osVersion:Ba(t)}}},{test:/chrom|crios|crmo/i,describe(t){return{name:"Chrome",version:go(/(?:chrome|chromium|crios|crmo)\/(\d+(\.?_?\d+)+)/i,t),os:t.toLowerCase().includes("crios")?"iOS":void 0,osVersion:Ba(t)}}},{test:/safari|applewebkit/i,describe(t){return{name:"Safari",version:go(Ck,t),os:t.includes("mobile/")?"iOS":"macOS",osVersion:Ba(t)}}}];function go(t,e){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1;const i=e.match(t);return i&&i.length>=n&&i[n]||""}function Ba(t){return t.includes("mac os")?go(/\(.+?(\d+_\d+(:?_\d+)?)/,t,1).replace(/_/g,"."):void 0}var xk="2.13.8";const Ek=xk,Pk=16;class rt{}rt.setTimeout=function(){return setTimeout(...arguments)};rt.setInterval=function(){return setInterval(...arguments)};rt.clearTimeout=function(){return clearTimeout(...arguments)};rt.clearInterval=function(){return clearInterval(...arguments)};const Rk=5e3,Nr=[];var At;(function(t){t[t.LOW=0]="LOW",t[t.MEDIUM=1]="MEDIUM",t[t.HIGH=2]="HIGH"})(At||(At={}));class M extends ln.EventEmitter{constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r;super(),this.attachedElements=[],this.isMuted=!1,this.streamState=M.StreamState.Active,this.isInBackground=!1,this._currentBitrate=0,this.log=me,this.appVisibilityChangedListener=()=>{this.backgroundTimeout&&clearTimeout(this.backgroundTimeout),document.visibilityState==="hidden"?this.backgroundTimeout=setTimeout(()=>this.handleAppVisibilityChanged(),Rk):this.handleAppVisibilityChanged()},this.log=Cn((r=i.loggerName)!==null&&r!==void 0?r:zt.Track),this.loggerContextCb=i.loggerContextCb,this.setMaxListeners(100),this.kind=n,this._mediaStreamTrack=e,this._mediaStreamID=e.id,this.source=M.Source.Unknown}get logContext(){var e;return Object.assign(Object.assign({},(e=this.loggerContextCb)===null||e===void 0?void 0:e.call(this)),he(this))}get currentBitrate(){return this._currentBitrate}get mediaStreamTrack(){return this._mediaStreamTrack}get mediaStreamID(){return this._mediaStreamID}attach(e){let n="audio";this.kind===M.Kind.Video&&(n="video"),this.attachedElements.length===0&&this.kind===M.Kind.Video&&this.addAppVisibilityListener(),e||(n==="audio"&&(Nr.forEach(s=>{s.parentElement===null&&!e&&(e=s)}),e&&Nr.splice(Nr.indexOf(e),1)),e||(e=document.createElement(n))),this.attachedElements.includes(e)||this.attachedElements.push(e),zi(this.mediaStreamTrack,e);const i=e.srcObject.getTracks(),r=i.some(s=>s.kind==="audio");return e.play().then(()=>{this.emit(r?G.AudioPlaybackStarted:G.VideoPlaybackStarted)}).catch(s=>{s.name==="NotAllowedError"?this.emit(r?G.AudioPlaybackFailed:G.VideoPlaybackFailed,s):s.name==="AbortError"?me.debug("".concat(r?"audio":"video"," playback aborted, likely due to new play request")):me.warn("could not playback ".concat(r?"audio":"video"),s),r&&e&&i.some(o=>o.kind==="video")&&s.name==="NotAllowedError"&&(e.muted=!0,e.play().catch(()=>{}))}),this.emit(G.ElementAttached,e),e}detach(e){try{if(e){tr(this.mediaStreamTrack,e);const i=this.attachedElements.indexOf(e);return i>=0&&(this.attachedElements.splice(i,1),this.recycleElement(e),this.emit(G.ElementDetached,e)),e}const n=[];return this.attachedElements.forEach(i=>{tr(this.mediaStreamTrack,i),n.push(i),this.recycleElement(i),this.emit(G.ElementDetached,i)}),this.attachedElements=[],n}finally{this.attachedElements.length===0&&this.removeAppVisibilityListener()}}stop(){this.stopMonitor(),this._mediaStreamTrack.stop()}enable(){this._mediaStreamTrack.enabled=!0}disable(){this._mediaStreamTrack.enabled=!1}stopMonitor(){this.monitorInterval&&clearInterval(this.monitorInterval),this.timeSyncHandle&&cancelAnimationFrame(this.timeSyncHandle)}updateLoggerOptions(e){e.loggerName&&(this.log=Cn(e.loggerName)),e.loggerContextCb&&(this.loggerContextCb=e.loggerContextCb)}recycleElement(e){if(e instanceof HTMLAudioElement){let n=!0;e.pause(),Nr.forEach(i=>{i.parentElement||(n=!1)}),n&&Nr.push(e)}}handleAppVisibilityChanged(){return P(this,void 0,void 0,function*(){this.isInBackground=document.visibilityState==="hidden",!this.isInBackground&&this.kind===M.Kind.Video&&setTimeout(()=>this.attachedElements.forEach(e=>e.play().catch(()=>{})),0)})}addAppVisibilityListener(){ht()?(this.isInBackground=document.visibilityState==="hidden",document.addEventListener("visibilitychange",this.appVisibilityChangedListener)):this.isInBackground=!1}removeAppVisibilityListener(){ht()&&document.removeEventListener("visibilitychange",this.appVisibilityChangedListener)}}function zi(t,e){let n;e.srcObject instanceof MediaStream?n=e.srcObject:n=new MediaStream;let i;t.kind==="audio"?i=n.getAudioTracks():i=n.getVideoTracks(),i.includes(t)||(i.forEach(r=>{n.removeTrack(r)}),n.addTrack(t)),(!Ti()||!(e instanceof HTMLVideoElement))&&(e.autoplay=!0),e.muted=n.getAudioTracks().length===0,e instanceof HTMLVideoElement&&(e.playsInline=!0),e.srcObject!==n&&(e.srcObject=n,(Ti()||ur())&&e instanceof HTMLVideoElement&&setTimeout(()=>{e.srcObject=n,e.play().catch(()=>{})},0))}function tr(t,e){if(e.srcObject instanceof MediaStream){const n=e.srcObject;n.removeTrack(t),n.getTracks().length>0?e.srcObject=n:e.srcObject=null}}(function(t){let e;(function(l){l.Audio="audio",l.Video="video",l.Unknown="unknown"})(e=t.Kind||(t.Kind={}));let n;(function(l){l.Camera="camera",l.Microphone="microphone",l.ScreenShare="screen_share",l.ScreenShareAudio="screen_share_audio",l.Unknown="unknown"})(n=t.Source||(t.Source={}));let i;(function(l){l.Active="active",l.Paused="paused",l.Unknown="unknown"})(i=t.StreamState||(t.StreamState={}));function r(l){switch(l){case e.Audio:return Ut.AUDIO;case e.Video:return Ut.VIDEO;default:return Ut.DATA}}t.kindToProto=r;function s(l){switch(l){case Ut.AUDIO:return e.Audio;case Ut.VIDEO:return e.Video;default:return e.Unknown}}t.kindFromProto=s;function o(l){switch(l){case n.Camera:return Ge.CAMERA;case n.Microphone:return Ge.MICROPHONE;case n.ScreenShare:return Ge.SCREEN_SHARE;case n.ScreenShareAudio:return Ge.SCREEN_SHARE_AUDIO;default:return Ge.UNKNOWN}}t.sourceToProto=o;function a(l){switch(l){case Ge.CAMERA:return n.Camera;case Ge.MICROPHONE:return n.Microphone;case Ge.SCREEN_SHARE:return n.ScreenShare;case Ge.SCREEN_SHARE_AUDIO:return n.ScreenShareAudio;default:return n.Unknown}}t.sourceFromProto=a;function c(l){switch(l){case Gc.ACTIVE:return i.Active;case Gc.PAUSED:return i.Paused;default:return i.Unknown}}t.streamStateFromProto=c})(M||(M={}));class xe{constructor(e,n,i,r,s){if(typeof e=="object")this.width=e.width,this.height=e.height,this.aspectRatio=e.aspectRatio,this.encoding={maxBitrate:e.maxBitrate,maxFramerate:e.maxFramerate,priority:e.priority};else if(n!==void 0&&i!==void 0)this.width=e,this.height=n,this.aspectRatio=e/n,this.encoding={maxBitrate:i,maxFramerate:r,priority:s};else throw new TypeError("Unsupported options: provide at least width, height and maxBitrate")}get resolution(){return{width:this.width,height:this.height,frameRate:this.encoding.maxFramerate,aspectRatio:this.aspectRatio}}}const Ak=["vp8","h264"],Ik=["vp8","h264","vp9","av1"];function _k(t){return!!Ak.find(e=>e===t)}var Lf;(function(t){t[t.PREFER_REGRESSION=0]="PREFER_REGRESSION",t[t.SIMULCAST=1]="SIMULCAST",t[t.REGRESSION=2]="REGRESSION"})(Lf||(Lf={}));var sl;(function(t){t.telephone={maxBitrate:12e3},t.speech={maxBitrate:24e3},t.music={maxBitrate:48e3},t.musicStereo={maxBitrate:64e3},t.musicHighQuality={maxBitrate:96e3},t.musicHighQualityStereo={maxBitrate:128e3}})(sl||(sl={}));const ss={h90:new xe(160,90,9e4,20),h180:new xe(320,180,16e4,20),h216:new xe(384,216,18e4,20),h360:new xe(640,360,45e4,20),h540:new xe(960,540,8e5,25),h720:new xe(1280,720,17e5,30),h1080:new xe(1920,1080,3e6,30),h1440:new xe(2560,1440,5e6,30),h2160:new xe(3840,2160,8e6,30)},ol={h120:new xe(160,120,7e4,20),h180:new xe(240,180,125e3,20),h240:new xe(320,240,14e4,20),h360:new xe(480,360,33e4,20),h480:new xe(640,480,5e5,20),h540:new xe(720,540,6e5,25),h720:new xe(960,720,13e5,30),h1080:new xe(1440,1080,23e5,30),h1440:new xe(1920,1440,38e5,30)},Eu={h360fps3:new xe(640,360,2e5,3,"medium"),h360fps15:new xe(640,360,4e5,15,"medium"),h720fps5:new xe(1280,720,8e5,5,"medium"),h720fps15:new xe(1280,720,15e5,15,"medium"),h720fps30:new xe(1280,720,2e6,30,"medium"),h1080fps15:new xe(1920,1080,25e5,15,"medium"),h1080fps30:new xe(1920,1080,5e6,30,"medium"),original:new xe(0,0,7e6,30,"medium")},Mk="|",Vf="https://aomediacodec.github.io/av1-rtp-spec/#dependency-descriptor-rtp-header-extension";function Ok(t){const e=t.split(Mk);return e.length>1?[e[0],t.substr(e[0].length+1)]:[t,""]}function mt(t){return P(this,void 0,void 0,function*(){return new Promise(e=>rt.setTimeout(e,t))})}function al(){return"addTransceiver"in RTCPeerConnection.prototype}function cl(){return"addTrack"in RTCPeerConnection.prototype}function Dk(){if(!("getCapabilities"in RTCRtpSender)||Ti())return!1;const t=RTCRtpSender.getCapabilities("video");let e=!1;if(t){for(const n of t.codecs)if(n.mimeType==="video/AV1"){e=!0;break}}return e}function Nk(){if(!("getCapabilities"in RTCRtpSender)||ur())return!1;if(Ti()){const n=Tt();if(n!=null&&n.version&&qn(n.version,"16")<0)return!1}const t=RTCRtpSender.getCapabilities("video");let e=!1;if(t){for(const n of t.codecs)if(n.mimeType==="video/VP9"){e=!0;break}}return e}function kn(t){return t==="av1"||t==="vp9"}function ll(t){return document?(t||(t=document.createElement("audio")),"setSinkId"in t):!1}function Lk(){return typeof RTCPeerConnection>"u"?!1:al()||cl()}function ur(){var t;return((t=Tt())===null||t===void 0?void 0:t.name)==="Firefox"}function Ti(){var t;return((t=Tt())===null||t===void 0?void 0:t.name)==="Safari"}function Ff(){const t=Tt();return(t==null?void 0:t.name)==="Safari"||(t==null?void 0:t.os)==="iOS"}function Vk(){const t=Tt();return(t==null?void 0:t.name)==="Safari"&&t.version.startsWith("17.")}function Fk(t){return t||(t=Tt()),(t==null?void 0:t.name)==="Safari"&&qn(t.version,"18.3")>0}function k0(){var t,e;return ht()?(e=(t=navigator.userAgentData)===null||t===void 0?void 0:t.mobile)!==null&&e!==void 0?e:/Tablet|iPad|Mobile|Android|BlackBerry/.test(navigator.userAgent):!1}function jk(){const t=Tt(),e="17.2";if(t)return t.name!=="Safari"&&t.os!=="iOS"||t.os==="iOS"&&t.osVersion&&qn(e,t.osVersion)>=0?!0:t.name==="Safari"&&qn(e,t.version)>=0}function ht(){return typeof document<"u"}function on(){return navigator.product=="ReactNative"}function ul(t){return t.hostname.endsWith(".livekit.cloud")||t.hostname.endsWith(".livekit.run")}function C0(){if(global&&global.LiveKitReactNativeGlobal)return global.LiveKitReactNativeGlobal}function w0(){if(!on())return;let t=C0();if(t)return t.platform}function jf(){if(ht())return window.devicePixelRatio;if(on()){let t=C0();if(t)return t.devicePixelRatio}return 1}function qn(t,e){const n=t.split("."),i=e.split("."),r=Math.min(n.length,i.length);for(let s=0;s<r;++s){const o=parseInt(n[s],10),a=parseInt(i[s],10);if(o>a)return 1;if(o<a)return-1;if(s===r-1&&o===a)return 0}return t===""&&e!==""?-1:e===""?1:n.length==i.length?0:n.length<i.length?-1:1}function Uk(t){for(const e of t)e.target.handleResize(e)}function Bk(t){for(const e of t)e.target.handleVisibilityChanged(e)}let $a=null;const Uf=()=>($a||($a=new ResizeObserver(Uk)),$a);let Ha=null;const Bf=()=>(Ha||(Ha=new IntersectionObserver(Bk,{root:null,rootMargin:"0px"})),Ha);function $k(){var t;const e=new PT({sdk:Rg.JS,protocol:Pk,version:Ek});return on()&&(e.os=(t=w0())!==null&&t!==void 0?t:""),e}function $f(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:16,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:16,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;const r=document.createElement("canvas");r.width=t,r.height=e;const s=r.getContext("2d");s==null||s.fillRect(0,0,r.width,r.height),i&&s&&(s.beginPath(),s.arc(t/2,e/2,50,0,Math.PI*2,!0),s.closePath(),s.fillStyle="grey",s.fill());const o=r.captureStream(),[a]=o.getTracks();if(!a)throw Error("Could not get empty media stream video track");return a.enabled=n,a}let Lr;function za(){if(!Lr){const t=new AudioContext,e=t.createOscillator(),n=t.createGain();n.gain.setValueAtTime(0,0);const i=t.createMediaStreamDestination();if(e.connect(n),n.connect(i),e.start(),[Lr]=i.stream.getAudioTracks(),!Lr)throw Error("Could not get empty media stream audio track");Lr.enabled=!1}return Lr.clone()}class Wi{constructor(e,n){this.onFinally=n,this.promise=new Promise((i,r)=>P(this,void 0,void 0,function*(){this.resolve=i,this.reject=r,e&&(yield e(i,r))})).finally(()=>{var i;return(i=this.onFinally)===null||i===void 0?void 0:i.call(this)})}}function Hk(t,e){const n=Object.assign({cloneTrack:!1,fftSize:2048,smoothingTimeConstant:.8,minDecibels:-100,maxDecibels:-80},e),i=Ru();if(!i)throw new Error("Audio Context not supported on this browser");const r=n.cloneTrack?t.mediaStreamTrack.clone():t.mediaStreamTrack,s=i.createMediaStreamSource(new MediaStream([r])),o=i.createAnalyser();o.minDecibels=n.minDecibels,o.maxDecibels=n.maxDecibels,o.fftSize=n.fftSize,o.smoothingTimeConstant=n.smoothingTimeConstant,s.connect(o);const a=new Uint8Array(o.frequencyBinCount);return{calculateVolume:()=>{o.getByteFrequencyData(a);let u=0;for(const h of a)u+=Math.pow(h/255,2);return Math.sqrt(u/a.length)},analyser:o,cleanup:()=>P(this,void 0,void 0,function*(){yield i.close(),n.cloneTrack&&r.stop()})}}function zk(t){return Ik.includes(t)}function Hn(t){if(typeof t=="string"||typeof t=="number")return t;if(Array.isArray(t))return t[0];if(t.exact)return Array.isArray(t.exact)?t.exact[0]:t.exact;if(t.ideal)return Array.isArray(t.ideal)?t.ideal[0]:t.ideal;throw Error("could not unwrap constraint")}function Wk(t){return t.startsWith("http")?t.replace(/^(http)/,"ws"):t}function dl(t){return t.startsWith("ws")?t.replace(/^(ws)/,"http"):t}function qk(t,e){return t.segments.map(n=>{let{id:i,text:r,language:s,startTime:o,endTime:a,final:c}=n;var l;const u=(l=e.get(i))!==null&&l!==void 0?l:Date.now(),d=Date.now();return c?e.delete(i):e.set(i,u),{id:i,text:r,startTime:Number.parseInt(o.toString()),endTime:Number.parseInt(a.toString()),final:c,language:s,firstReceivedTime:u,lastReceivedTime:d}})}function Gk(t){const{id:e,timestamp:n,message:i,editTimestamp:r}=t;return{id:e,timestamp:Number.parseInt(n.toString()),editTimestamp:r?Number.parseInt(r.toString()):void 0,message:i}}function Hf(t){switch(t.reason){case ge.LeaveRequest:return t.context;case ge.Cancelled:return $t.CLIENT_INITIATED;case ge.NotAllowed:return $t.USER_REJECTED;case ge.ServerUnreachable:return $t.JOIN_FAILURE;default:return $t.UNKNOWN_REASON}}function vo(t){return t!==void 0?Number(t):void 0}function ui(t){return t!==void 0?BigInt(t):void 0}function nr(t){return!!t&&!(t instanceof MediaStreamTrack)&&t.isLocal}function en(t){return!!t&&t.kind==M.Kind.Audio}function vr(t){return!!t&&t.kind==M.Kind.Video}function Nn(t){return nr(t)&&vr(t)}function mn(t){return nr(t)&&en(t)}function fl(t){return!!t&&!t.isLocal}function Kk(t){return!!t&&!t.isLocal}function Wa(t){return fl(t)&&vr(t)}function Zk(t){return t.isLocal}function Yk(t,e){const n=[];let i=new TextEncoder().encode(t);for(;i.length>e;){let r=e;for(;r>0;){const s=i[r];if(s!==void 0&&(s&192)!==128)break;r--}n.push(i.slice(0,r)),i=i.slice(r)}return i.length>0&&n.push(i),n}function x0(t,e,n){var i,r,s,o;const{optionsWithoutProcessor:a,audioProcessor:c,videoProcessor:l}=P0(t??{}),u=e==null?void 0:e.processor,d=n==null?void 0:n.processor,h=a??{};return h.audio===!0&&(h.audio={}),h.video===!0&&(h.video={}),h.audio&&(hl(h.audio,e),(i=(s=h.audio).deviceId)!==null&&i!==void 0||(s.deviceId={ideal:"default"}),(c||u)&&(h.audio.processor=c??u)),h.video&&(hl(h.video,n),(r=(o=h.video).deviceId)!==null&&r!==void 0||(o.deviceId={ideal:"default"}),(l||d)&&(h.video.processor=l??d)),h}function hl(t,e){return Object.keys(e).forEach(n=>{t[n]===void 0&&(t[n]=e[n])}),t}function Pu(t){var e,n,i,r;const s={};if(t.video)if(typeof t.video=="object"){const o={},a=o,c=t.video;Object.keys(c).forEach(l=>{switch(l){case"resolution":hl(a,c.resolution);break;default:a[l]=c[l]}}),s.video=o,(e=(i=s.video).deviceId)!==null&&e!==void 0||(i.deviceId={ideal:"default"})}else s.video=t.video?{deviceId:{ideal:"default"}}:!1;else s.video=!1;return t.audio?typeof t.audio=="object"?(s.audio=t.audio,(n=(r=s.audio).deviceId)!==null&&n!==void 0||(r.deviceId={ideal:"default"})):s.audio={deviceId:{ideal:"default"}}:s.audio=!1,s}function E0(t){return P(this,arguments,void 0,function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:200;return function*(){const i=Ru();if(i){const r=i.createAnalyser();r.fftSize=2048;const s=r.frequencyBinCount,o=new Uint8Array(s);i.createMediaStreamSource(new MediaStream([e.mediaStreamTrack])).connect(r),yield mt(n),r.getByteTimeDomainData(o);const c=o.some(l=>l!==128&&l!==0);return i.close(),!c}return!1}()})}function Ru(){var t;const e=typeof window<"u"&&(window.AudioContext||window.webkitAudioContext);if(e){const n=new e({latencyHint:"interactive"});if(n.state==="suspended"&&typeof window<"u"&&(!((t=window.document)===null||t===void 0)&&t.body)){const i=()=>P(this,void 0,void 0,function*(){var r;try{n.state==="suspended"&&(yield n.resume())}catch(s){console.warn("Error trying to auto-resume audio context",s)}(r=window.document.body)===null||r===void 0||r.removeEventListener("click",i)});window.document.body.addEventListener("click",i)}return n}}function Jk(t){return t==="audioinput"?M.Source.Microphone:t==="videoinput"?M.Source.Camera:M.Source.Unknown}function pl(t){return t===M.Source.Microphone?"audioinput":t===M.Source.Camera?"videoinput":void 0}function Xk(t){var e,n;let i=(e=t.video)!==null&&e!==void 0?e:!0;return t.resolution&&t.resolution.width>0&&t.resolution.height>0&&(i=typeof i=="boolean"?{}:i,Ti()?i=Object.assign(Object.assign({},i),{width:{max:t.resolution.width},height:{max:t.resolution.height},frameRate:t.resolution.frameRate}):i=Object.assign(Object.assign({},i),{width:{ideal:t.resolution.width},height:{ideal:t.resolution.height},frameRate:t.resolution.frameRate})),{audio:(n=t.audio)!==null&&n!==void 0?n:!1,video:i,controller:t.controller,selfBrowserSurface:t.selfBrowserSurface,surfaceSwitching:t.surfaceSwitching,systemAudio:t.systemAudio,preferCurrentTab:t.preferCurrentTab}}function yo(t){return t.split("/")[1].toLowerCase()}function Qk(t){const e=[];return t.forEach(n=>{n.track!==void 0&&e.push(new Tu({cid:n.track.mediaStreamID,track:n.trackInfo}))}),e}function he(t){return"mediaStreamTrack"in t?{trackID:t.sid,source:t.source,muted:t.isMuted,enabled:t.mediaStreamTrack.enabled,kind:t.kind,streamID:t.mediaStreamID,streamTrackID:t.mediaStreamTrack.id}:{trackID:t.trackSid,enabled:t.isEnabled,muted:t.isMuted,trackInfo:Object.assign({mimeType:t.mimeType,name:t.trackName,encrypted:t.isEncrypted,kind:t.kind,source:t.source},t.track?he(t.track):{})}}function eC(){return typeof RTCRtpReceiver<"u"&&"getSynchronizationSources"in RTCRtpReceiver}function tC(t,e){var n;t===void 0&&(t={}),e===void 0&&(e={});const i=[...Object.keys(e),...Object.keys(t)],r={};for(const s of i)t[s]!==e[s]&&(r[s]=(n=e[s])!==null&&n!==void 0?n:"");return r}function P0(t){const e=Object.assign({},t);let n,i;return typeof e.audio=="object"&&e.audio.processor&&(n=e.audio.processor,e.audio=Object.assign(Object.assign({},e.audio),{processor:void 0})),typeof e.video=="object"&&e.video.processor&&(i=e.video.processor,e.video=Object.assign(Object.assign({},e.video),{processor:void 0})),{audioProcessor:n,videoProcessor:i,optionsWithoutProcessor:kk(e)}}function nC(t){switch(t){case Ge.CAMERA:return M.Source.Camera;case Ge.MICROPHONE:return M.Source.Microphone;case Ge.SCREEN_SHARE:return M.Source.ScreenShare;case Ge.SCREEN_SHARE_AUDIO:return M.Source.ScreenShareAudio;default:return M.Source.Unknown}}class iC extends ln.EventEmitter{constructor(e){super(),this.onWorkerMessage=n=>{var i,r;const{kind:s,data:o}=n.data;switch(s){case"error":me.error(o.error.message),this.emit(Bn.EncryptionError,o.error);break;case"initAck":o.enabled&&this.keyProvider.getKeys().forEach(a=>{this.postKey(a)});break;case"enable":if(o.enabled&&this.keyProvider.getKeys().forEach(a=>{this.postKey(a)}),this.encryptionEnabled!==o.enabled&&o.participantIdentity===((i=this.room)===null||i===void 0?void 0:i.localParticipant.identity))this.emit(Bn.ParticipantEncryptionStatusChanged,o.enabled,this.room.localParticipant),this.encryptionEnabled=o.enabled;else if(o.participantIdentity){const a=(r=this.room)===null||r===void 0?void 0:r.getParticipantByIdentity(o.participantIdentity);if(!a)throw TypeError("couldn't set encryption status, participant not found".concat(o.participantIdentity));this.emit(Bn.ParticipantEncryptionStatusChanged,o.enabled,a)}break;case"ratchetKey":this.keyProvider.emit($n.KeyRatcheted,o.ratchetResult,o.participantIdentity,o.keyIndex);break}},this.onWorkerError=n=>{me.error("e2ee worker encountered an error:",{error:n.error}),this.emit(Bn.EncryptionError,n.error)},this.keyProvider=e.keyProvider,this.worker=e.worker,this.encryptionEnabled=!1}setup(e){if(!bk())throw new xu("tried to setup end-to-end encryption on an unsupported browser");if(me.info("setting up e2ee"),e!==this.room){this.room=e,this.setupEventListeners(e,this.keyProvider);const n={kind:"init",data:{keyProviderOptions:this.keyProvider.getOptions(),loglevel:ik.getLevel()}};this.worker&&(me.info("initializing worker",{worker:this.worker}),this.worker.onmessage=this.onWorkerMessage,this.worker.onerror=this.onWorkerError,this.worker.postMessage(n))}}setParticipantCryptorEnabled(e,n){me.debug("set e2ee to ".concat(e," for participant ").concat(n)),this.postEnable(e,n)}setSifTrailer(e){!e||e.length===0?me.warn("ignoring server sent trailer as it's empty"):this.postSifTrailer(e)}setupEngine(e){e.on(X.RTPVideoMapUpdate,n=>{this.postRTPMap(n)})}setupEventListeners(e,n){e.on(D.TrackPublished,(i,r)=>this.setParticipantCryptorEnabled(i.trackInfo.encryption!==yt.NONE,r.identity)),e.on(D.ConnectionStateChanged,i=>{i===pe.Connected&&e.remoteParticipants.forEach(r=>{r.trackPublications.forEach(s=>{this.setParticipantCryptorEnabled(s.trackInfo.encryption!==yt.NONE,r.identity)})})}).on(D.TrackUnsubscribed,(i,r,s)=>{var o;const a={kind:"removeTransform",data:{participantIdentity:s.identity,trackId:i.mediaStreamID}};(o=this.worker)===null||o===void 0||o.postMessage(a)}).on(D.TrackSubscribed,(i,r,s)=>{this.setupE2EEReceiver(i,s.identity,r.trackInfo)}).on(D.SignalConnected,()=>{if(!this.room)throw new TypeError("expected room to be present on signal connect");n.getKeys().forEach(i=>{this.postKey(i)}),this.setParticipantCryptorEnabled(this.room.localParticipant.isE2EEEnabled,this.room.localParticipant.identity)}),e.localParticipant.on(U.LocalTrackPublished,i=>P(this,void 0,void 0,function*(){this.setupE2EESender(i.track,i.track.sender)})),n.on($n.SetKey,i=>this.postKey(i)).on($n.RatchetRequest,(i,r)=>this.postRatchetRequest(i,r))}postRatchetRequest(e,n){if(!this.worker)throw Error("could not ratchet key, worker is missing");const i={kind:"ratchetRequest",data:{participantIdentity:e,keyIndex:n}};this.worker.postMessage(i)}postKey(e){let{key:n,participantIdentity:i,keyIndex:r}=e;var s;if(!this.worker)throw Error("could not set key, worker is missing");const o={kind:"setKey",data:{participantIdentity:i,isPublisher:i===((s=this.room)===null||s===void 0?void 0:s.localParticipant.identity),key:n,keyIndex:r}};this.worker.postMessage(o)}postEnable(e,n){if(this.worker){const i={kind:"enable",data:{enabled:e,participantIdentity:n}};this.worker.postMessage(i)}else throw new ReferenceError("failed to enable e2ee, worker is not ready")}postRTPMap(e){var n;if(!this.worker)throw TypeError("could not post rtp map, worker is missing");if(!(!((n=this.room)===null||n===void 0)&&n.localParticipant.identity))throw TypeError("could not post rtp map, local participant identity is missing");const i={kind:"setRTPMap",data:{map:e,participantIdentity:this.room.localParticipant.identity}};this.worker.postMessage(i)}postSifTrailer(e){if(!this.worker)throw Error("could not post SIF trailer, worker is missing");const n={kind:"setSifTrailer",data:{trailer:e}};this.worker.postMessage(n)}setupE2EEReceiver(e,n,i){if(e.receiver){if(!(i!=null&&i.mimeType)||i.mimeType==="")throw new TypeError("MimeType missing from trackInfo, cannot set up E2EE cryptor");this.handleReceiver(e.receiver,e.mediaStreamID,n,e.kind==="video"?yo(i.mimeType):void 0)}}setupE2EESender(e,n){if(!nr(e)||!n){n||me.warn("early return because sender is not ready");return}this.handleSender(n,e.mediaStreamID,void 0)}handleReceiver(e,n,i,r){return P(this,void 0,void 0,function*(){if(this.worker){if(il()){const s={kind:"decode",participantIdentity:i,trackId:n,codec:r};e.transform=new RTCRtpScriptTransform(this.worker,s)}else{if(Dr in e&&r){const c={kind:"updateCodec",data:{trackId:n,codec:r,participantIdentity:i}};this.worker.postMessage(c);return}let s=e.writableStream,o=e.readableStream;if(!s||!o){const c=e.createEncodedStreams();e.writableStream=c.writable,s=c.writable,e.readableStream=c.readable,o=c.readable}const a={kind:"decode",data:{readableStream:o,writableStream:s,trackId:n,codec:r,participantIdentity:i,isReuse:Dr in e}};this.worker.postMessage(a,[o,s])}e[Dr]=!0}})}handleSender(e,n,i){var r;if(!(Dr in e||!this.worker)){if(!(!((r=this.room)===null||r===void 0)&&r.localParticipant.identity)||this.room.localParticipant.identity==="")throw TypeError("local identity needs to be known in order to set up encrypted sender");if(il()){me.info("initialize script transform");const s={kind:"encode",participantIdentity:this.room.localParticipant.identity,trackId:n,codec:i};e.transform=new RTCRtpScriptTransform(this.worker,s)}else{me.info("initialize encoded streams");const s=e.createEncodedStreams(),o={kind:"encode",data:{readableStream:s.readable,writableStream:s.writable,codec:i,trackId:n,participantIdentity:this.room.localParticipant.identity,isReuse:!1}};this.worker.postMessage(o,[s.readable,s.writable])}e[Dr]=!0}}}const qa="default";class tt{constructor(){this._previousDevices=[]}static getInstance(){return this.instance===void 0&&(this.instance=new tt),this.instance}get previousDevices(){return this._previousDevices}getDevices(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var s;if(((s=tt.userMediaPromiseMap)===null||s===void 0?void 0:s.size)>0){me.debug("awaiting getUserMedia promise");try{n?yield tt.userMediaPromiseMap.get(n):yield Promise.all(tt.userMediaPromiseMap.values())}catch{me.warn("error waiting for media permissons")}}let o=yield navigator.mediaDevices.enumerateDevices();if(r&&!(Ti()&&i.hasDeviceInUse(n))&&(o.filter(c=>c.kind===n).length===0||o.some(c=>{const l=c.label==="",u=n?c.kind===n:!0;return l&&u}))){const c={video:n!=="audioinput"&&n!=="audiooutput",audio:n!=="videoinput"&&{deviceId:{ideal:"default"}}},l=yield navigator.mediaDevices.getUserMedia(c);o=yield navigator.mediaDevices.enumerateDevices(),l.getTracks().forEach(u=>{u.stop()})}return i._previousDevices=o,n&&(o=o.filter(a=>a.kind===n)),o}()})}normalizeDeviceId(e,n,i){return P(this,void 0,void 0,function*(){if(n!==qa)return n;const r=yield this.getDevices(e),s=r.find(a=>a.deviceId===qa);if(!s){me.warn("could not reliably determine default device");return}const o=r.find(a=>a.deviceId!==qa&&a.groupId===(i??s.groupId));if(!o){me.warn("could not reliably determine default device");return}return o==null?void 0:o.deviceId})}hasDeviceInUse(e){return e?tt.userMediaPromiseMap.has(e):tt.userMediaPromiseMap.size>0}}tt.mediaDeviceKinds=["audioinput","audiooutput","videoinput"];tt.userMediaPromiseMap=new Map;var Jr;(function(t){t[t.WAITING=0]="WAITING",t[t.RUNNING=1]="RUNNING",t[t.COMPLETED=2]="COMPLETED"})(Jr||(Jr={}));class rC{constructor(){this.pendingTasks=new Map,this.taskMutex=new ft,this.nextTaskIndex=0}run(e){return P(this,void 0,void 0,function*(){const n={id:this.nextTaskIndex++,enqueuedAt:Date.now(),status:Jr.WAITING};this.pendingTasks.set(n.id,n);const i=yield this.taskMutex.lock();try{return n.executedAt=Date.now(),n.status=Jr.RUNNING,yield e()}finally{n.status=Jr.COMPLETED,this.pendingTasks.delete(n.id),i()}})}flush(){return P(this,void 0,void 0,function*(){return this.run(()=>P(this,void 0,void 0,function*(){}))})}snapshot(){return Array.from(this.pendingTasks.values())}}function sC(t,e){const n=new URL(Wk(t));return e.forEach((i,r)=>{n.searchParams.set(r,i)}),R0(n,"rtc")}function oC(t){const e=new URL(dl(t));return R0(e,"validate")}function aC(t){return t.endsWith("/")?t:"".concat(t,"/")}function R0(t,e){return t.pathname="".concat(aC(t.pathname)).concat(e),t.toString()}const cC=["syncState","trickle","offer","answer","simulate","leave"];function lC(t){const e=cC.indexOf(t.case)>=0;return me.trace("request allowed to bypass queue:",{canPass:e,req:t}),e}var Ae;(function(t){t[t.CONNECTING=0]="CONNECTING",t[t.CONNECTED=1]="CONNECTED",t[t.RECONNECTING=2]="RECONNECTING",t[t.DISCONNECTING=3]="DISCONNECTING",t[t.DISCONNECTED=4]="DISCONNECTED"})(Ae||(Ae={}));class Au{get currentState(){return this.state}get isDisconnected(){return this.state===Ae.DISCONNECTING||this.state===Ae.DISCONNECTED}get isEstablishingConnection(){return this.state===Ae.CONNECTING||this.state===Ae.RECONNECTING}getNextRequestId(){return this._requestId+=1,this._requestId}constructor(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var i;this.rtt=0,this.state=Ae.DISCONNECTED,this.log=me,this._requestId=0,this.resetCallbacks=()=>{this.onAnswer=void 0,this.onLeave=void 0,this.onLocalTrackPublished=void 0,this.onLocalTrackUnpublished=void 0,this.onNegotiateRequested=void 0,this.onOffer=void 0,this.onRemoteMuteChanged=void 0,this.onSubscribedQualityUpdate=void 0,this.onTokenRefresh=void 0,this.onTrickle=void 0,this.onClose=void 0},this.log=Cn((i=n.loggerName)!==null&&i!==void 0?i:zt.Signal),this.loggerContextCb=n.loggerContextCb,this.useJSON=e,this.requestQueue=new rC,this.queuedRequests=[],this.closingLock=new ft,this.connectionLock=new ft,this.state=Ae.DISCONNECTED}get logContext(){var e,n;return(n=(e=this.loggerContextCb)===null||e===void 0?void 0:e.call(this))!==null&&n!==void 0?n:{}}join(e,n,i,r){return P(this,void 0,void 0,function*(){return this.state=Ae.CONNECTING,this.options=i,yield this.connect(e,n,i,r)})}reconnect(e,n,i,r){return P(this,void 0,void 0,function*(){if(!this.options){this.log.warn("attempted to reconnect without signal options being set, ignoring",this.logContext);return}return this.state=Ae.RECONNECTING,this.clearPingInterval(),yield this.connect(e,n,Object.assign(Object.assign({},this.options),{reconnect:!0,sid:i,reconnectReason:r}))})}connect(e,n,i,r){this.connectOptions=i;const s=$k(),o=uC(n,s,i),a=sC(e,o),c=oC(a);return new Promise((l,u)=>P(this,void 0,void 0,function*(){const d=yield this.connectionLock.lock();try{const h=()=>P(this,void 0,void 0,function*(){this.close(),clearTimeout(m),u(new Re("room connection has been cancelled (signal)",ge.Cancelled))}),m=setTimeout(()=>{this.close(),u(new Re("room connection has timed out (signal)",ge.ServerUnreachable))},i.websocketTimeout);r!=null&&r.aborted&&h(),r==null||r.addEventListener("abort",h);const g=new URL(a);g.searchParams.has("access_token")&&g.searchParams.set("access_token","<redacted>"),this.log.debug("connecting to ".concat(g),Object.assign({reconnect:i.reconnect,reconnectReason:i.reconnectReason},this.logContext)),this.ws&&(yield this.close(!1)),this.ws=new WebSocket(a),this.ws.binaryType="arraybuffer",this.ws.onopen=()=>{clearTimeout(m)},this.ws.onerror=f=>P(this,void 0,void 0,function*(){if(this.state!==Ae.CONNECTED){this.state=Ae.DISCONNECTED,clearTimeout(m);try{const y=yield fetch(c);if(y.status.toFixed(0).startsWith("4")){const v=yield y.text();u(new Re(v,ge.NotAllowed,y.status))}else u(new Re("Encountered unknown websocket error during connection: ".concat(f.toString()),ge.InternalError,y.status))}catch(y){u(new Re(y instanceof Error?y.message:"server was not reachable",ge.ServerUnreachable))}return}this.handleWSError(f)}),this.ws.onmessage=f=>P(this,void 0,void 0,function*(){var y,v,C;let T;if(typeof f.data=="string"){const k=JSON.parse(f.data);T=Sf.fromJson(k,{ignoreUnknownFields:!0})}else if(f.data instanceof ArrayBuffer)T=Sf.fromBinary(new Uint8Array(f.data));else{this.log.error("could not decode websocket message: ".concat(typeof f.data),this.logContext);return}if(this.state!==Ae.CONNECTED){let k=!1;if(((y=T.message)===null||y===void 0?void 0:y.case)==="join"?(this.state=Ae.CONNECTED,r==null||r.removeEventListener("abort",h),this.pingTimeoutDuration=T.message.value.pingTimeout,this.pingIntervalDuration=T.message.value.pingInterval,this.pingTimeoutDuration&&this.pingTimeoutDuration>0&&(this.log.debug("ping config",Object.assign(Object.assign({},this.logContext),{timeout:this.pingTimeoutDuration,interval:this.pingIntervalDuration})),this.startPingInterval()),l(T.message.value)):this.state===Ae.RECONNECTING&&T.message.case!=="leave"?(this.state=Ae.CONNECTED,r==null||r.removeEventListener("abort",h),this.startPingInterval(),((v=T.message)===null||v===void 0?void 0:v.case)==="reconnect"?l(T.message.value):(this.log.debug("declaring signal reconnected without reconnect response received",this.logContext),l(void 0),k=!0)):this.isEstablishingConnection&&T.message.case==="leave"?u(new Re("Received leave request while trying to (re)connect",ge.LeaveRequest,void 0,T.message.value.reason)):i.reconnect||u(new Re("did not receive join response, got ".concat((C=T.message)===null||C===void 0?void 0:C.case," instead"),ge.InternalError)),!k)return}this.signalLatency&&(yield mt(this.signalLatency)),this.handleSignalResponse(T)}),this.ws.onclose=f=>{this.isEstablishingConnection&&u(new Re("Websocket got closed during a (re)connection attempt",ge.InternalError)),this.log.warn("websocket closed",Object.assign(Object.assign({},this.logContext),{reason:f.reason,code:f.code,wasClean:f.wasClean,state:this.state})),this.handleOnClose(f.reason)}}finally{d()}}))}close(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){const i=yield e.closingLock.lock();try{if(e.clearPingInterval(),n&&(e.state=Ae.DISCONNECTING),e.ws){e.ws.onmessage=null,e.ws.onopen=null,e.ws.onclose=null;const r=new Promise(s=>{e.ws?e.ws.onclose=()=>{s()}:s()});e.ws.readyState<e.ws.CLOSING&&(e.ws.close(),yield Promise.race([r,mt(250)])),e.ws=void 0}}finally{n&&(e.state=Ae.DISCONNECTED),i()}}()})}sendOffer(e,n){this.log.debug("sending offer",Object.assign(Object.assign({},this.logContext),{offerSdp:e.sdp})),this.sendRequest({case:"offer",value:No(e,n)})}sendAnswer(e,n){return this.log.debug("sending answer",Object.assign(Object.assign({},this.logContext),{answerSdp:e.sdp})),this.sendRequest({case:"answer",value:No(e,n)})}sendIceCandidate(e,n){return this.log.debug("sending ice candidate",Object.assign(Object.assign({},this.logContext),{candidate:e})),this.sendRequest({case:"trickle",value:new bu({candidateInit:JSON.stringify(e),target:n})})}sendMuteTrack(e,n){return this.sendRequest({case:"mute",value:new Su({sid:e,muted:n})})}sendAddTrack(e){return this.sendRequest({case:"addTrack",value:e})}sendUpdateLocalMetadata(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return function*(){const a=s.getNextRequestId();return yield s.sendRequest({case:"updateMetadata",value:new Lg({requestId:a,metadata:i,name:r,attributes:o})}),a}()})}sendUpdateTrackSettings(e){this.sendRequest({case:"trackSetting",value:e})}sendUpdateSubscription(e){return this.sendRequest({case:"subscription",value:e})}sendSyncState(e){return this.sendRequest({case:"syncState",value:e})}sendUpdateVideoLayers(e,n){return this.sendRequest({case:"updateLayers",value:new Ng({trackSid:e,layers:n})})}sendUpdateSubscriptionPermissions(e,n){return this.sendRequest({case:"subscriptionPermission",value:new jg({allParticipants:e,trackPermissions:n})})}sendSimulateScenario(e){return this.sendRequest({case:"simulate",value:e})}sendPing(){return Promise.all([this.sendRequest({case:"ping",value:_e.parse(Date.now())}),this.sendRequest({case:"pingReq",value:new Hg({timestamp:_e.parse(Date.now()),rtt:_e.parse(this.rtt)})})])}sendUpdateLocalAudioTrack(e,n){return this.sendRequest({case:"updateAudioTrack",value:new Dg({trackSid:e,features:n})})}sendLeave(){return this.sendRequest({case:"leave",value:new oa({reason:$t.CLIENT_INITIATED,action:Qi.DISCONNECT})})}sendRequest(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return function*(){if(!r&&!lC(n)&&i.state===Ae.RECONNECTING){i.queuedRequests.push(()=>P(i,void 0,void 0,function*(){yield this.sendRequest(n,!0)}));return}if(r||(yield i.requestQueue.flush()),i.signalLatency&&(yield mt(i.signalLatency)),!i.ws||i.ws.readyState!==i.ws.OPEN){i.log.error("cannot send signal request before connected, type: ".concat(n==null?void 0:n.case),i.logContext);return}const o=new IT({message:n});try{i.useJSON?i.ws.send(o.toJsonString()):i.ws.send(o.toBinary())}catch(a){i.log.error("error sending signal message",Object.assign(Object.assign({},i.logContext),{error:a}))}}()})}handleSignalResponse(e){var n,i;const r=e.message;if(r==null){this.log.debug("received unsupported message",this.logContext);return}let s=!1;if(r.case==="answer"){const o=zf(r.value);this.onAnswer&&this.onAnswer(o,r.value.id)}else if(r.case==="offer"){const o=zf(r.value);this.onOffer&&this.onOffer(o,r.value.id)}else if(r.case==="trickle"){const o=JSON.parse(r.value.candidateInit);this.onTrickle&&this.onTrickle(o,r.value.target)}else r.case==="update"?this.onParticipantUpdate&&this.onParticipantUpdate((n=r.value.participants)!==null&&n!==void 0?n:[]):r.case==="trackPublished"?this.onLocalTrackPublished&&this.onLocalTrackPublished(r.value):r.case==="speakersChanged"?this.onSpeakersChanged&&this.onSpeakersChanged((i=r.value.speakers)!==null&&i!==void 0?i:[]):r.case==="leave"?this.onLeave&&this.onLeave(r.value):r.case==="mute"?this.onRemoteMuteChanged&&this.onRemoteMuteChanged(r.value.sid,r.value.muted):r.case==="roomUpdate"?this.onRoomUpdate&&r.value.room&&this.onRoomUpdate(r.value.room):r.case==="connectionQuality"?this.onConnectionQuality&&this.onConnectionQuality(r.value):r.case==="streamStateUpdate"?this.onStreamStateUpdate&&this.onStreamStateUpdate(r.value):r.case==="subscribedQualityUpdate"?this.onSubscribedQualityUpdate&&this.onSubscribedQualityUpdate(r.value):r.case==="subscriptionPermissionUpdate"?this.onSubscriptionPermissionUpdate&&this.onSubscriptionPermissionUpdate(r.value):r.case==="refreshToken"?this.onTokenRefresh&&this.onTokenRefresh(r.value):r.case==="trackUnpublished"?this.onLocalTrackUnpublished&&this.onLocalTrackUnpublished(r.value):r.case==="subscriptionResponse"?this.onSubscriptionError&&this.onSubscriptionError(r.value):r.case==="pong"||(r.case==="pongResp"?(this.rtt=Date.now()-Number.parseInt(r.value.lastPingTimestamp.toString()),this.resetPingTimeout(),s=!0):r.case==="requestResponse"?this.onRequestResponse&&this.onRequestResponse(r.value):r.case==="trackSubscribed"?this.onLocalTrackSubscribed&&this.onLocalTrackSubscribed(r.value.trackSid):r.case==="roomMoved"?(this.onTokenRefresh&&this.onTokenRefresh(r.value.token),this.onRoomMoved&&this.onRoomMoved(r.value)):this.log.debug("unsupported message",Object.assign(Object.assign({},this.logContext),{msgCase:r.case})));s||this.resetPingTimeout()}setReconnected(){for(;this.queuedRequests.length>0;){const e=this.queuedRequests.shift();e&&this.requestQueue.run(e)}}handleOnClose(e){return P(this,void 0,void 0,function*(){if(this.state===Ae.DISCONNECTED)return;const n=this.onClose;yield this.close(),this.log.debug("websocket connection closed: ".concat(e),Object.assign(Object.assign({},this.logContext),{reason:e})),n&&n(e)})}handleWSError(e){this.log.error("websocket error",Object.assign(Object.assign({},this.logContext),{error:e}))}resetPingTimeout(){if(this.clearPingTimeout(),!this.pingTimeoutDuration){this.log.warn("ping timeout duration not set",this.logContext);return}this.pingTimeout=rt.setTimeout(()=>{this.log.warn("ping timeout triggered. last pong received at: ".concat(new Date(Date.now()-this.pingTimeoutDuration*1e3).toUTCString()),this.logContext),this.handleOnClose("ping timeout")},this.pingTimeoutDuration*1e3)}clearPingTimeout(){this.pingTimeout&&rt.clearTimeout(this.pingTimeout)}startPingInterval(){if(this.clearPingInterval(),this.resetPingTimeout(),!this.pingIntervalDuration){this.log.warn("ping interval duration not set",this.logContext);return}this.log.debug("start ping interval",this.logContext),this.pingInterval=rt.setInterval(()=>{this.sendPing()},this.pingIntervalDuration*1e3)}clearPingInterval(){this.log.debug("clearing ping interval",this.logContext),this.clearPingTimeout(),this.pingInterval&&rt.clearInterval(this.pingInterval)}}function zf(t){const e={type:"offer",sdp:t.sdp};switch(t.type){case"answer":case"offer":case"pranswer":case"rollback":e.type=t.type;break}return e}function No(t,e){return new Si({sdp:t.sdp,type:t.type,id:e})}function uC(t,e,n){var i;const r=new URLSearchParams;return r.set("access_token",t),n.reconnect&&(r.set("reconnect","1"),n.sid&&r.set("sid",n.sid)),r.set("auto_subscribe",n.autoSubscribe?"1":"0"),r.set("sdk",on()?"reactnative":"js"),r.set("version",e.version),r.set("protocol",e.protocol.toString()),e.deviceModel&&r.set("device_model",e.deviceModel),e.os&&r.set("os",e.os),e.osVersion&&r.set("os_version",e.osVersion),e.browser&&r.set("browser",e.browser),e.browserVersion&&r.set("browser_version",e.browserVersion),n.adaptiveStream&&r.set("adaptive_stream","1"),n.reconnectReason&&r.set("reconnect_reason",n.reconnectReason.toString()),!((i=navigator.connection)===null||i===void 0)&&i.type&&r.set("network",navigator.connection.type),r}class Wf{constructor(){this.buffer=[],this._totalSize=0}push(e){this.buffer.push(e),this._totalSize+=e.data.byteLength}pop(){const e=this.buffer.shift();return e&&(this._totalSize-=e.data.byteLength),e}getAll(){return this.buffer.slice()}popToSequence(e){for(;this.buffer.length>0&&this.buffer[0].sequence<=e;)this.pop()}alignBufferedAmount(e){for(;this.buffer.length>0;){const n=this.buffer[0];if(this._totalSize-n.data.byteLength<=e)break;this.pop()}}get length(){return this.buffer.length}}class dC{constructor(e){this._map=new Map,this._lastCleanup=0,this.ttl=e}set(e,n){const i=Date.now();i-this._lastCleanup>this.ttl/2&&this.cleanup();const r=i+this.ttl;return this._map.set(e,{value:n,expiresAt:r}),this}get(e){const n=this._map.get(e);if(n){if(n.expiresAt<Date.now()){this._map.delete(e);return}return n.value}}has(e){const n=this._map.get(e);return n?n.expiresAt<Date.now()?(this._map.delete(e),!1):!0:!1}delete(e){return this._map.delete(e)}clear(){this._map.clear()}cleanup(){const e=Date.now();for(const[n,i]of this._map.entries())i.expiresAt<e&&this._map.delete(n);this._lastCleanup=e}get size(){return this.cleanup(),this._map.size}forEach(e){this.cleanup();for(const[n,i]of this._map.entries())i.expiresAt>=Date.now()&&e(i.value,n,this.asValueMap())}map(e){this.cleanup();const n=[],i=this.asValueMap();for(const[r,s]of i.entries())n.push(e(s,r,i));return n}asValueMap(){const e=new Map;for(const[n,i]of this._map.entries())i.expiresAt>=Date.now()&&e.set(n,i.value);return e}}var Nt={},Ga={},Ka={exports:{}},qf;function Iu(){if(qf)return Ka.exports;qf=1;var t=Ka.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return e.address!=null?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%s trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return e.subtype!=null?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:["value","direction","encrypt-uri","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+(e["encrypt-uri"]?" %s":"%v")+" %s"+(e.config?" %s":"")}},{name:"extmapAllowMixed",reg:/^(extmap-allow-mixed)/},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return e.sessionConfig!=null?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"connectionType",reg:/^connection:(new|existing)/,format:"connection:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*(?:\.\d*)*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*(?:\.\d*)*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var n="candidate:%s %d %s %d %s %d typ %s";return n+=e.raddr!=null?" raddr %s rport %d":"%v%v",n+=e.tcptype!=null?" tcptype %s":"%v",e.generation!=null&&(n+=" generation %d"),n+=e["network-id"]!=null?" network-id %d":"%v",n+=e["network-cost"]!=null?" network-cost %d":"%v",n}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var n="ssrc:%d";return e.attribute!=null&&(n+=" %s",e.value!=null&&(n+=":%s")),n}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return e.maxMessageSize!=null?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{name:"sourceFilter",reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:["filterMode","netType","addressTypes","destAddress","srcList"],format:"source-filter: %s %s %s %s %s"},{name:"bundleOnly",reg:/^(bundle-only)/},{name:"label",reg:/^label:(.+)/,format:"label:%s"},{name:"sctpPort",reg:/^sctp-port:(\d+)$/,format:"sctp-port:%s"},{name:"maxMessageSize",reg:/^max-message-size:(\d+)$/,format:"max-message-size:%s"},{push:"tsRefClocks",reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:["clksrc","clksrcExt"],format:function(e){return"ts-refclk:%s"+(e.clksrcExt!=null?"=%s":"")}},{name:"mediaClk",reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:["id","mediaClockName","mediaClockValue","rateNumerator","rateDenominator"],format:function(e){var n="mediaclk:";return n+=e.id!=null?"id=%s %s":"%v%s",n+=e.mediaClockValue!=null?"=%s":"",n+=e.rateNumerator!=null?" rate=%s":"",n+=e.rateDenominator!=null?"/%s":"",n}},{name:"keywords",reg:/^keywds:(.+)$/,format:"keywds:%s"},{name:"content",reg:/^content:(.+)/,format:"content:%s"},{name:"bfcpFloorCtrl",reg:/^floorctrl:(c-only|s-only|c-s)/,format:"floorctrl:%s"},{name:"bfcpConfId",reg:/^confid:(\d+)/,format:"confid:%s"},{name:"bfcpUserId",reg:/^userid:(\d+)/,format:"userid:%s"},{name:"bfcpFloorId",reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:["id","mStream"],format:"floorid:%s mstrm:%s"},{push:"invalid",names:["value"]}]};return Object.keys(t).forEach(function(e){var n=t[e];n.forEach(function(i){i.reg||(i.reg=/(.*)/),i.format||(i.format="%s")})}),Ka.exports}var Gf;function fC(){return Gf||(Gf=1,function(t){var e=function(a){return String(Number(a))===a?Number(a):a},n=function(a,c,l,u){if(u&&!l)c[u]=e(a[1]);else for(var d=0;d<l.length;d+=1)a[d+1]!=null&&(c[l[d]]=e(a[d+1]))},i=function(a,c,l){var u=a.name&&a.names;a.push&&!c[a.push]?c[a.push]=[]:u&&!c[a.name]&&(c[a.name]={});var d=a.push?{}:u?c[a.name]:c;n(l.match(a.reg),d,a.names,a.name),a.push&&c[a.push].push(d)},r=Iu(),s=RegExp.prototype.test.bind(/^([a-z])=(.*)/);t.parse=function(a){var c={},l=[],u=c;return a.split(/(\r\n|\r|\n)/).filter(s).forEach(function(d){var h=d[0],m=d.slice(2);h==="m"&&(l.push({rtp:[],fmtp:[]}),u=l[l.length-1]);for(var g=0;g<(r[h]||[]).length;g+=1){var f=r[h][g];if(f.reg.test(m))return i(f,u,m)}}),c.media=l,c};var o=function(a,c){var l=c.split(/=(.+)/,2);return l.length===2?a[l[0]]=e(l[1]):l.length===1&&c.length>1&&(a[l[0]]=void 0),a};t.parseParams=function(a){return a.split(/;\s?/).reduce(o,{})},t.parseFmtpConfig=t.parseParams,t.parsePayloads=function(a){return a.toString().split(" ").map(Number)},t.parseRemoteCandidates=function(a){for(var c=[],l=a.split(" ").map(e),u=0;u<l.length;u+=3)c.push({component:l[u],ip:l[u+1],port:l[u+2]});return c},t.parseImageAttributes=function(a){return a.split(" ").map(function(c){return c.substring(1,c.length-1).split(",").reduce(o,{})})},t.parseSimulcastStreamList=function(a){return a.split(";").map(function(c){return c.split(",").map(function(l){var u,d=!1;return l[0]!=="~"?u=e(l):(u=e(l.substring(1,l.length)),d=!0),{scid:u,paused:d}})})}}(Ga)),Ga}var Za,Kf;function hC(){if(Kf)return Za;Kf=1;var t=Iu(),e=/%[sdv%]/g,n=function(o){var a=1,c=arguments,l=c.length;return o.replace(e,function(u){if(a>=l)return u;var d=c[a];switch(a+=1,u){case"%%":return"%";case"%s":return String(d);case"%d":return Number(d);case"%v":return""}})},i=function(o,a,c){var l=a.format instanceof Function?a.format(a.push?c:c[a.name]):a.format,u=[o+"="+l];if(a.names)for(var d=0;d<a.names.length;d+=1){var h=a.names[d];a.name?u.push(c[a.name][h]):u.push(c[a.names[d]])}else u.push(c[a.name]);return n.apply(null,u)},r=["v","o","s","i","u","e","p","c","b","t","r","z","a"],s=["i","c","b","a"];return Za=function(o,a){a=a||{},o.version==null&&(o.version=0),o.name==null&&(o.name=" "),o.media.forEach(function(d){d.payloads==null&&(d.payloads="")});var c=a.outerOrder||r,l=a.innerOrder||s,u=[];return c.forEach(function(d){t[d].forEach(function(h){h.name in o&&o[h.name]!=null?u.push(i(d,h,o)):h.push in o&&o[h.push]!=null&&o[h.push].forEach(function(m){u.push(i(d,h,m))})})}),o.media.forEach(function(d){u.push(i("m",t.m[0],d)),l.forEach(function(h){t[h].forEach(function(m){m.name in d&&d[m.name]!=null?u.push(i(h,m,d)):m.push in d&&d[m.push]!=null&&d[m.push].forEach(function(g){u.push(i(h,m,g))})})})}),u.join(`\r
|
|
68
68
|
`)+`\r
|
|
69
|
-
`},Za}var Zf;function pC(){if(Zf)return Nt;Zf=1;var t=fC(),e=hC(),n=Iu();return Nt.grammar=n,Nt.write=e,Nt.parse=t.parse,Nt.parseParams=t.parseParams,Nt.parseFmtpConfig=t.parseFmtpConfig,Nt.parsePayloads=t.parsePayloads,Nt.parseRemoteCandidates=t.parseRemoteCandidates,Nt.parseImageAttributes=t.parseImageAttributes,Nt.parseSimulcastStreamList=t.parseSimulcastStreamList,Nt}var Vn=pC();function _u(t,e,n){var i,r,s;e===void 0&&(e=50),n===void 0&&(n={});var o=(i=n.isImmediate)!=null&&i,a=(r=n.callback)!=null&&r,c=n.maxWait,l=Date.now(),u=[];function d(){if(c!==void 0){var p=Date.now()-l;if(p+e>=c)return c-p}return e}var h=function(){var p=[].slice.call(arguments),g=this;return new Promise(function(f,y){var v=o&&s===void 0;if(s!==void 0&&clearTimeout(s),s=setTimeout(function(){if(s=void 0,l=Date.now(),!o){var T=t.apply(g,p);a&&a(T),u.forEach(function(k){return(0,k.resolve)(T)}),u=[]}},d()),v){var C=t.apply(g,p);return a&&a(C),f(C)}u.push({resolve:f,reject:y})})};return h.cancel=function(p){s!==void 0&&clearTimeout(s),u.forEach(function(g){return(0,g.reject)(p)}),u=[]},h}const mC=.7,gC=20,ir={NegotiationStarted:"negotiationStarted",NegotiationComplete:"negotiationComplete",RTPVideoPayloadTypes:"rtpVideoPayloadTypes"};class Yf extends ln.EventEmitter{get pc(){return this._pc||(this._pc=this.createPC()),this._pc}constructor(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var i;super(),this.log=me,this.ddExtID=0,this.latestOfferId=0,this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate=!1,this.trackBitrates=[],this.remoteStereoMids=[],this.remoteNackMids=[],this.negotiate=_u(r=>P(this,void 0,void 0,function*(){this.emit(ir.NegotiationStarted);try{yield this.createAndSendOffer()}catch(s){if(r)r(s);else throw s}}),gC),this.close=()=>{this._pc&&(this._pc.close(),this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,this._pc.onicegatheringstatechange=null,this._pc.ondatachannel=null,this._pc.onnegotiationneeded=null,this._pc.onsignalingstatechange=null,this._pc.onicecandidate=null,this._pc.ondatachannel=null,this._pc.ontrack=null,this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,this._pc=null)},this.log=Cn((i=n.loggerName)!==null&&i!==void 0?i:zt.PCTransport),this.loggerOptions=n,this.config=e,this._pc=this.createPC()}createPC(){const e=new RTCPeerConnection(this.config);return e.onicecandidate=n=>{var i;n.candidate&&((i=this.onIceCandidate)===null||i===void 0||i.call(this,n.candidate))},e.onicecandidateerror=n=>{var i;(i=this.onIceCandidateError)===null||i===void 0||i.call(this,n)},e.oniceconnectionstatechange=()=>{var n;(n=this.onIceConnectionStateChange)===null||n===void 0||n.call(this,e.iceConnectionState)},e.onsignalingstatechange=()=>{var n;(n=this.onSignalingStatechange)===null||n===void 0||n.call(this,e.signalingState)},e.onconnectionstatechange=()=>{var n;(n=this.onConnectionStateChange)===null||n===void 0||n.call(this,e.connectionState)},e.ondatachannel=n=>{var i;(i=this.onDataChannel)===null||i===void 0||i.call(this,n)},e.ontrack=n=>{var i;(i=this.onTrack)===null||i===void 0||i.call(this,n)},e}get logContext(){var e,n;return Object.assign({},(n=(e=this.loggerOptions).loggerContextCb)===null||n===void 0?void 0:n.call(e))}get isICEConnected(){return this._pc!==null&&(this.pc.iceConnectionState==="connected"||this.pc.iceConnectionState==="completed")}addIceCandidate(e){return P(this,void 0,void 0,function*(){if(this.pc.remoteDescription&&!this.restartingIce)return this.pc.addIceCandidate(e);this.pendingCandidates.push(e)})}setRemoteDescription(e,n){return P(this,void 0,void 0,function*(){var i;if(e.type==="answer"&&this.latestOfferId>0&&n>0&&n!==this.latestOfferId)return this.log.warn("ignoring answer for old offer",Object.assign(Object.assign({},this.logContext),{offerId:n,latestOfferId:this.latestOfferId})),!1;let r;if(e.type==="offer"){let{stereoMids:s,nackMids:o}=vC(e);this.remoteStereoMids=s,this.remoteNackMids=o}else if(e.type==="answer"){const s=Vn.parse((i=e.sdp)!==null&&i!==void 0?i:"");s.media.forEach(o=>{o.type==="audio"&&this.trackBitrates.some(a=>{if(!a.transceiver||o.mid!=a.transceiver.mid)return!1;let c=0;if(o.rtp.some(u=>u.codec.toUpperCase()===a.codec.toUpperCase()?(c=u.payload,!0):!1),c===0)return!0;let l=!1;for(const u of o.fmtp)if(u.payload===c){u.config=u.config.split(";").filter(d=>!d.includes("maxaveragebitrate")).join(";"),a.maxbr>0&&(u.config+=";maxaveragebitrate=".concat(a.maxbr*1e3)),l=!0;break}return l||a.maxbr>0&&o.fmtp.push({payload:c,config:"maxaveragebitrate=".concat(a.maxbr*1e3)}),!0})}),r=Vn.write(s)}return yield this.setMungedSDP(e,r,!0),this.pendingCandidates.forEach(s=>{this.pc.addIceCandidate(s)}),this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate?(this.renegotiate=!1,yield this.createAndSendOffer()):e.type==="answer"&&(this.emit(ir.NegotiationComplete),e.sdp&&Vn.parse(e.sdp).media.forEach(o=>{o.type==="video"&&this.emit(ir.RTPVideoPayloadTypes,o.rtp)})),!0})}createAndSendOffer(e){return P(this,void 0,void 0,function*(){var n;const i=this.latestOfferId+1;if(this.latestOfferId=i,this.onOffer===void 0)return;if(e!=null&&e.iceRestart&&(this.log.debug("restarting ICE",this.logContext),this.restartingIce=!0),this._pc&&this._pc.signalingState==="have-local-offer"){const o=this._pc.remoteDescription;if(e!=null&&e.iceRestart&&o)yield this._pc.setRemoteDescription(o);else{this.renegotiate=!0;return}}else if(!this._pc||this._pc.signalingState==="closed"){this.log.warn("could not createOffer with closed peer connection",this.logContext);return}this.log.debug("starting to negotiate",this.logContext);const r=yield this.pc.createOffer(e);this.log.debug("original offer",Object.assign({sdp:r.sdp},this.logContext));const s=Vn.parse((n=r.sdp)!==null&&n!==void 0?n:"");if(s.media.forEach(o=>{Xf(o),o.type==="audio"?Jf(o,[],[]):o.type==="video"&&this.trackBitrates.some(a=>{if(!o.msid||!a.cid||!o.msid.includes(a.cid))return!1;let c=0;if(o.rtp.some(u=>u.codec.toUpperCase()===a.codec.toUpperCase()?(c=u.payload,!0):!1),c===0||(kn(a.codec)&&this.ensureVideoDDExtensionForSVC(o,s),a.codec!=="av1"))return!0;const l=Math.round(a.maxbr*mC);for(const u of o.fmtp)if(u.payload===c){u.config.includes("x-google-start-bitrate")||(u.config+=";x-google-start-bitrate=".concat(l));break}return!0})}),this.latestOfferId>i){this.log.warn("latestOfferId mismatch",Object.assign(Object.assign({},this.logContext),{latestOfferId:this.latestOfferId,offerId:i}));return}yield this.setMungedSDP(r,Vn.write(s)),this.onOffer(r,this.latestOfferId)})}createAndSetAnswer(){return P(this,void 0,void 0,function*(){var e;const n=yield this.pc.createAnswer(),i=Vn.parse((e=n.sdp)!==null&&e!==void 0?e:"");return i.media.forEach(r=>{Xf(r),r.type==="audio"&&Jf(r,this.remoteStereoMids,this.remoteNackMids)}),yield this.setMungedSDP(n,Vn.write(i)),n})}createDataChannel(e,n){return this.pc.createDataChannel(e,n)}addTransceiver(e,n){return this.pc.addTransceiver(e,n)}addTrack(e){if(!this._pc)throw new Je("PC closed, cannot add track");return this._pc.addTrack(e)}setTrackCodecBitrate(e){this.trackBitrates.push(e)}setConfiguration(e){var n;if(!this._pc)throw new Je("PC closed, cannot configure");return(n=this._pc)===null||n===void 0?void 0:n.setConfiguration(e)}canRemoveTrack(){var e;return!!(!((e=this._pc)===null||e===void 0)&&e.removeTrack)}removeTrack(e){var n;return(n=this._pc)===null||n===void 0?void 0:n.removeTrack(e)}getConnectionState(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.connectionState)!==null&&n!==void 0?n:"closed"}getICEConnectionState(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.iceConnectionState)!==null&&n!==void 0?n:"closed"}getSignallingState(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.signalingState)!==null&&n!==void 0?n:"closed"}getTransceivers(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.getTransceivers())!==null&&n!==void 0?n:[]}getSenders(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.getSenders())!==null&&n!==void 0?n:[]}getLocalDescription(){var e;return(e=this._pc)===null||e===void 0?void 0:e.localDescription}getRemoteDescription(){var e;return(e=this.pc)===null||e===void 0?void 0:e.remoteDescription}getStats(){return this.pc.getStats()}getConnectedAddress(){return P(this,void 0,void 0,function*(){var e;if(!this._pc)return;let n="";const i=new Map,r=new Map;if((yield this._pc.getStats()).forEach(a=>{switch(a.type){case"transport":n=a.selectedCandidatePairId;break;case"candidate-pair":n===""&&a.selected&&(n=a.id),i.set(a.id,a);break;case"remote-candidate":r.set(a.id,"".concat(a.address,":").concat(a.port));break}}),n==="")return;const o=(e=i.get(n))===null||e===void 0?void 0:e.remoteCandidateId;if(o!==void 0)return r.get(o)})}setMungedSDP(e,n,i){return P(this,void 0,void 0,function*(){if(n){const r=e.sdp;e.sdp=n;try{this.log.debug("setting munged ".concat(i?"remote":"local"," description"),this.logContext),i?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e);return}catch(s){this.log.warn("not able to set ".concat(e.type,", falling back to unmodified sdp"),Object.assign(Object.assign({},this.logContext),{error:s,sdp:n})),e.sdp=r}}try{i?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e)}catch(r){let s="unknown error";r instanceof Error?s=r.message:typeof r=="string"&&(s=r);const o={error:s,sdp:e.sdp};throw!i&&this.pc.remoteDescription&&(o.remoteSdp=this.pc.remoteDescription),this.log.error("unable to set ".concat(e.type),Object.assign(Object.assign({},this.logContext),{fields:o})),new rl(s)}})}ensureVideoDDExtensionForSVC(e,n){var i,r;if(!((i=e.ext)===null||i===void 0?void 0:i.some(o=>o.uri===Vf))){if(this.ddExtID===0){let o=0;n.media.forEach(a=>{var c;a.type==="video"&&((c=a.ext)===null||c===void 0||c.forEach(l=>{l.value>o&&(o=l.value)}))}),this.ddExtID=o+1}(r=e.ext)===null||r===void 0||r.push({value:this.ddExtID,uri:Vf})}}}function Jf(t,e,n){let i=0;t.rtp.some(r=>r.codec==="opus"?(i=r.payload,!0):!1),i>0&&(t.rtcpFb||(t.rtcpFb=[]),n.includes(t.mid)&&!t.rtcpFb.some(r=>r.payload===i&&r.type==="nack")&&t.rtcpFb.push({payload:i,type:"nack"}),e.includes(t.mid)&&t.fmtp.some(r=>r.payload===i?(r.config.includes("stereo=1")||(r.config+=";stereo=1"),!0):!1))}function vC(t){var e;const n=[],i=[],r=Vn.parse((e=t.sdp)!==null&&e!==void 0?e:"");let s=0;return r.media.forEach(o=>{var a;o.type==="audio"&&(o.rtp.some(c=>c.codec==="opus"?(s=c.payload,!0):!1),!((a=o.rtcpFb)===null||a===void 0)&&a.some(c=>c.payload===s&&c.type==="nack")&&i.push(o.mid),o.fmtp.some(c=>c.payload===s?(c.config.includes("sprop-stereo=1")&&n.push(o.mid),!0):!1))}),{stereoMids:n,nackMids:i}}function Xf(t){if(t.connection){const e=t.connection.ip.indexOf(":")>=0;(t.connection.version===4&&e||t.connection.version===6&&!e)&&(t.connection.ip="0.0.0.0",t.connection.version=4)}}const ml="vp8",yC={audioPreset:sl.music,dtx:!0,red:!0,forceStereo:!1,simulcast:!0,screenShareEncoding:Eu.h1080fps15.encoding,stopMicTrackOnMute:!1,videoCodec:ml,backupCodec:!0,preConnectBuffer:!1},A0={deviceId:{ideal:"default"},autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0,voiceIsolation:!0},I0={deviceId:{ideal:"default"},resolution:ss.h720.resolution},bC={adaptiveStream:!1,dynacast:!1,stopLocalTrackOnUnpublish:!0,reconnectPolicy:new sk,disconnectOnPageLeave:!0,webAudioMix:!1},Mu={autoSubscribe:!0,maxRetries:1,peerConnectionTimeout:15e3,websocketTimeout:15e3};var Ve;(function(t){t[t.NEW=0]="NEW",t[t.CONNECTING=1]="CONNECTING",t[t.CONNECTED=2]="CONNECTED",t[t.FAILED=3]="FAILED",t[t.CLOSING=4]="CLOSING",t[t.CLOSED=5]="CLOSED"})(Ve||(Ve={}));class SC{get needsPublisher(){return this.isPublisherConnectionRequired}get needsSubscriber(){return this.isSubscriberConnectionRequired}get currentState(){return this.state}constructor(e,n,i){var r;this.peerConnectionTimeout=Mu.peerConnectionTimeout,this.log=me,this.updateState=()=>{var s;const o=this.state,a=this.requiredTransports.map(c=>c.getConnectionState());a.every(c=>c==="connected")?this.state=Ve.CONNECTED:a.some(c=>c==="failed")?this.state=Ve.FAILED:a.some(c=>c==="connecting")?this.state=Ve.CONNECTING:a.every(c=>c==="closed")?this.state=Ve.CLOSED:a.some(c=>c==="closed")?this.state=Ve.CLOSING:a.every(c=>c==="new")&&(this.state=Ve.NEW),o!==this.state&&(this.log.debug("pc state change: from ".concat(Ve[o]," to ").concat(Ve[this.state]),this.logContext),(s=this.onStateChange)===null||s===void 0||s.call(this,this.state,this.publisher.getConnectionState(),this.subscriber.getConnectionState()))},this.log=Cn((r=i.loggerName)!==null&&r!==void 0?r:zt.PCManager),this.loggerOptions=i,this.isPublisherConnectionRequired=!n,this.isSubscriberConnectionRequired=n,this.publisher=new Yf(e,i),this.subscriber=new Yf(e,i),this.publisher.onConnectionStateChange=this.updateState,this.subscriber.onConnectionStateChange=this.updateState,this.publisher.onIceConnectionStateChange=this.updateState,this.subscriber.onIceConnectionStateChange=this.updateState,this.publisher.onSignalingStatechange=this.updateState,this.subscriber.onSignalingStatechange=this.updateState,this.publisher.onIceCandidate=s=>{var o;(o=this.onIceCandidate)===null||o===void 0||o.call(this,s,Bt.PUBLISHER)},this.subscriber.onIceCandidate=s=>{var o;(o=this.onIceCandidate)===null||o===void 0||o.call(this,s,Bt.SUBSCRIBER)},this.subscriber.onDataChannel=s=>{var o;(o=this.onDataChannel)===null||o===void 0||o.call(this,s)},this.subscriber.onTrack=s=>{var o;(o=this.onTrack)===null||o===void 0||o.call(this,s)},this.publisher.onOffer=(s,o)=>{var a;(a=this.onPublisherOffer)===null||a===void 0||a.call(this,s,o)},this.state=Ve.NEW,this.connectionLock=new ft,this.remoteOfferLock=new ft}get logContext(){var e,n;return Object.assign({},(n=(e=this.loggerOptions).loggerContextCb)===null||n===void 0?void 0:n.call(e))}requirePublisher(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.isPublisherConnectionRequired=e,this.updateState()}requireSubscriber(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.isSubscriberConnectionRequired=e,this.updateState()}createAndSendPublisherOffer(e){return this.publisher.createAndSendOffer(e)}setPublisherAnswer(e,n){return this.publisher.setRemoteDescription(e,n)}removeTrack(e){return this.publisher.removeTrack(e)}close(){return P(this,void 0,void 0,function*(){if(this.publisher&&this.publisher.getSignallingState()!=="closed"){const e=this.publisher;for(const n of e.getSenders())try{e.canRemoveTrack()&&e.removeTrack(n)}catch(i){this.log.warn("could not removeTrack",Object.assign(Object.assign({},this.logContext),{error:i}))}}yield Promise.all([this.publisher.close(),this.subscriber.close()]),this.updateState()})}triggerIceRestart(){return P(this,void 0,void 0,function*(){this.subscriber.restartingIce=!0,this.needsPublisher&&(yield this.createAndSendPublisherOffer({iceRestart:!0}))})}addIceCandidate(e,n){return P(this,void 0,void 0,function*(){n===Bt.PUBLISHER?yield this.publisher.addIceCandidate(e):yield this.subscriber.addIceCandidate(e)})}createSubscriberAnswerFromOffer(e,n){return P(this,void 0,void 0,function*(){this.log.debug("received server offer",Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type,sdp:e.sdp,signalingState:this.subscriber.getSignallingState().toString()}));const i=yield this.remoteOfferLock.lock();try{return(yield this.subscriber.setRemoteDescription(e,n))?yield this.subscriber.createAndSetAnswer():void 0}finally{i()}})}updateConfiguration(e,n){this.publisher.setConfiguration(e),this.subscriber.setConfiguration(e),n&&this.triggerIceRestart()}ensurePCTransportConnection(e,n){return P(this,void 0,void 0,function*(){var i;const r=yield this.connectionLock.lock();try{this.isPublisherConnectionRequired&&this.publisher.getConnectionState()!=="connected"&&this.publisher.getConnectionState()!=="connecting"&&(this.log.debug("negotiation required, start negotiating",this.logContext),this.publisher.negotiate()),yield Promise.all((i=this.requiredTransports)===null||i===void 0?void 0:i.map(s=>this.ensureTransportConnected(s,e,n)))}finally{r()}})}negotiate(e){return P(this,void 0,void 0,function*(){return new Promise((n,i)=>P(this,void 0,void 0,function*(){const r=setTimeout(()=>{i("negotiation timed out")},this.peerConnectionTimeout),s=()=>{clearTimeout(r),i("negotiation aborted")};e.signal.addEventListener("abort",s),this.publisher.once(ir.NegotiationStarted,()=>{e.signal.aborted||this.publisher.once(ir.NegotiationComplete,()=>{clearTimeout(r),n()})}),yield this.publisher.negotiate(o=>{clearTimeout(r),i(o)})}))})}addPublisherTransceiver(e,n){return this.publisher.addTransceiver(e,n)}addPublisherTrack(e){return this.publisher.addTrack(e)}createPublisherDataChannel(e,n){return this.publisher.createDataChannel(e,n)}getConnectedAddress(e){return e===Bt.PUBLISHER?this.publisher.getConnectedAddress():e===Bt.SUBSCRIBER?this.publisher.getConnectedAddress():this.requiredTransports[0].getConnectedAddress()}get requiredTransports(){const e=[];return this.isPublisherConnectionRequired&&e.push(this.publisher),this.isSubscriberConnectionRequired&&e.push(this.subscriber),e}ensureTransportConnected(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.peerConnectionTimeout;return function*(){if(i.getConnectionState()!=="connected")return new Promise((c,l)=>P(s,void 0,void 0,function*(){const u=()=>{this.log.warn("abort transport connection",this.logContext),rt.clearTimeout(d),l(new Re("room connection has been cancelled",ge.Cancelled))};r!=null&&r.signal.aborted&&u(),r==null||r.signal.addEventListener("abort",u);const d=rt.setTimeout(()=>{r==null||r.signal.removeEventListener("abort",u),l(new Re("could not establish pc connection",ge.InternalError))},o);for(;this.state!==Ve.CONNECTED;)if(yield mt(50),r!=null&&r.signal.aborted){l(new Re("room connection has been cancelled",ge.Cancelled));return}rt.clearTimeout(d),r==null||r.signal.removeEventListener("abort",u),c()}))}()})}}class je extends Error{constructor(e,n,i){super(n),this.code=e,this.message=Qf(n,je.MAX_MESSAGE_BYTES),this.data=i?Qf(i,je.MAX_DATA_BYTES):void 0}static fromProto(e){return new je(e.code,e.message,e.data)}toProto(){return new wg({code:this.code,message:this.message,data:this.data})}static builtIn(e,n){return new je(je.ErrorCode[e],je.ErrorMessage[e],n)}}je.MAX_MESSAGE_BYTES=256;je.MAX_DATA_BYTES=15360;je.ErrorCode={APPLICATION_ERROR:1500,CONNECTION_TIMEOUT:1501,RESPONSE_TIMEOUT:1502,RECIPIENT_DISCONNECTED:1503,RESPONSE_PAYLOAD_TOO_LARGE:1504,SEND_FAILED:1505,UNSUPPORTED_METHOD:1400,RECIPIENT_NOT_FOUND:1401,REQUEST_PAYLOAD_TOO_LARGE:1402,UNSUPPORTED_SERVER:1403,UNSUPPORTED_VERSION:1404};je.ErrorMessage={APPLICATION_ERROR:"Application error in method handler",CONNECTION_TIMEOUT:"Connection timeout",RESPONSE_TIMEOUT:"Response timeout",RECIPIENT_DISCONNECTED:"Recipient disconnected",RESPONSE_PAYLOAD_TOO_LARGE:"Response payload too large",SEND_FAILED:"Failed to send",UNSUPPORTED_METHOD:"Method not supported at destination",RECIPIENT_NOT_FOUND:"Recipient not found",REQUEST_PAYLOAD_TOO_LARGE:"Request payload too large",UNSUPPORTED_SERVER:"RPC not supported by server",UNSUPPORTED_VERSION:"Unsupported RPC version"};const _0=15360;function Ou(t){return new TextEncoder().encode(t).length}function Qf(t,e){if(Ou(t)<=e)return t;let n=0,i=t.length;const r=new TextEncoder;for(;n<i;){const s=Math.floor((n+i+1)/2);r.encode(t.slice(0,s)).length<=e?n=s:i=s-1}return t.slice(0,n)}const Du=2e3;function ca(t,e){if(!e)return 0;let n,i;return"bytesReceived"in t?(n=t.bytesReceived,i=e.bytesReceived):"bytesSent"in t&&(n=t.bytesSent,i=e.bytesSent),n===void 0||i===void 0||t.timestamp===void 0||e.timestamp===void 0?0:(n-i)*8*1e3/(t.timestamp-e.timestamp)}const Nu=typeof MediaRecorder<"u";class TC{constructor(){throw new Error("MediaRecorder is not available in this environment")}}const kC=Nu?MediaRecorder:TC;class CC extends kC{constructor(e,n){if(!Nu)throw new Error("MediaRecorder is not available in this environment");super(new MediaStream([e.mediaStreamTrack]),n);let i,r;const s=()=>r===void 0,o=()=>{this.removeEventListener("dataavailable",i),this.removeEventListener("stop",o),this.removeEventListener("error",a),r==null||r.close(),r=void 0},a=c=>{r==null||r.error(c),this.removeEventListener("dataavailable",i),this.removeEventListener("stop",o),this.removeEventListener("error",a),r=void 0};this.byteStream=new ReadableStream({start:c=>{r=c,i=l=>P(this,void 0,void 0,function*(){const u=yield l.data.arrayBuffer();s()||c.enqueue(new Uint8Array(u))}),this.addEventListener("dataavailable",i)},cancel:()=>{o()}}),this.addEventListener("stop",o),this.addEventListener("error",a)}}function wC(){return Nu}const xC=1e3,EC=1e4;class M0 extends M{get sender(){return this._sender}set sender(e){this._sender=e}get constraints(){return this._constraints}get hasPreConnectBuffer(){return!!this.localTrackRecorder}constructor(e,n,i){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,s=arguments.length>4?arguments[4]:void 0;super(e,n,s),this.manuallyStopped=!1,this._isUpstreamPaused=!1,this.handleTrackMuteEvent=()=>this.debouncedTrackMuteHandler().catch(()=>this.log.debug("track mute bounce got cancelled by an unmute event",this.logContext)),this.debouncedTrackMuteHandler=_u(()=>P(this,void 0,void 0,function*(){yield this.pauseUpstream()}),5e3),this.handleTrackUnmuteEvent=()=>P(this,void 0,void 0,function*(){this.debouncedTrackMuteHandler.cancel("unmute"),yield this.resumeUpstream()}),this.handleEnded=()=>{this.isInBackground&&(this.reacquireTrack=!0),this._mediaStreamTrack.removeEventListener("mute",this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener("unmute",this.handleTrackUnmuteEvent),this.emit(G.Ended,this)},this.reacquireTrack=!1,this.providedByUser=r,this.muteLock=new ft,this.pauseUpstreamLock=new ft,this.processorLock=new ft,this.restartLock=new ft,this.setMediaStreamTrack(e,!0),this._constraints=e.getConstraints(),i&&(this._constraints=i)}get id(){return this._mediaStreamTrack.id}get dimensions(){if(this.kind!==M.Kind.Video)return;const{width:e,height:n}=this._mediaStreamTrack.getSettings();if(e&&n)return{width:e,height:n}}get isUpstreamPaused(){return this._isUpstreamPaused}get isUserProvided(){return this.providedByUser}get mediaStreamTrack(){var e,n;return(n=(e=this.processor)===null||e===void 0?void 0:e.processedTrack)!==null&&n!==void 0?n:this._mediaStreamTrack}get isLocal(){return!0}getSourceTrackSettings(){return this._mediaStreamTrack.getSettings()}setMediaStreamTrack(e,n){return P(this,void 0,void 0,function*(){var i;if(e===this._mediaStreamTrack&&!n)return;this._mediaStreamTrack&&(this.attachedElements.forEach(s=>{tr(this._mediaStreamTrack,s)}),this.debouncedTrackMuteHandler.cancel("new-track"),this._mediaStreamTrack.removeEventListener("ended",this.handleEnded),this._mediaStreamTrack.removeEventListener("mute",this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener("unmute",this.handleTrackUnmuteEvent)),this.mediaStream=new MediaStream([e]),e&&(e.addEventListener("ended",this.handleEnded),e.addEventListener("mute",this.handleTrackMuteEvent),e.addEventListener("unmute",this.handleTrackUnmuteEvent),this._constraints=e.getConstraints());let r;if(this.processor&&e){const s=yield this.processorLock.lock();try{if(this.log.debug("restarting processor",this.logContext),this.kind==="unknown")throw TypeError("cannot set processor on track of unknown kind");this.processorElement&&(zi(e,this.processorElement),this.processorElement.muted=!0),yield this.processor.restart({track:e,kind:this.kind,element:this.processorElement}),r=this.processor.processedTrack}finally{s()}}this.sender&&((i=this.sender.transport)===null||i===void 0?void 0:i.state)!=="closed"&&(yield this.sender.replaceTrack(r??e)),!this.providedByUser&&this._mediaStreamTrack!==e&&this._mediaStreamTrack.stop(),this._mediaStreamTrack=e,e&&(this._mediaStreamTrack.enabled=!this.isMuted,yield this.resumeUpstream(),this.attachedElements.forEach(s=>{zi(r??e,s)}))})}waitForDimensions(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:xC;return function*(){var i;if(e.kind===M.Kind.Audio)throw new Error("cannot get dimensions for audio tracks");((i=Tt())===null||i===void 0?void 0:i.os)==="iOS"&&(yield mt(10));const r=Date.now();for(;Date.now()-r<n;){const s=e.dimensions;if(s)return s;yield mt(50)}throw new Sn("unable to get track dimensions after timeout")}()})}setDeviceId(e){return P(this,void 0,void 0,function*(){return this._constraints.deviceId===e&&this._mediaStreamTrack.getSettings().deviceId===Hn(e)||(this._constraints.deviceId=e,this.isMuted)?!0:(yield this.restartTrack(),Hn(e)===this._mediaStreamTrack.getSettings().deviceId)})}getDeviceId(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){if(e.source===M.Source.ScreenShare)return;const{deviceId:i,groupId:r}=e._mediaStreamTrack.getSettings(),s=e.kind===M.Kind.Audio?"audioinput":"videoinput";return n?tt.getInstance().normalizeDeviceId(s,i,r):i}()})}mute(){return P(this,void 0,void 0,function*(){return this.setTrackMuted(!0),this})}unmute(){return P(this,void 0,void 0,function*(){return this.setTrackMuted(!1),this})}replaceTrack(e,n){return P(this,void 0,void 0,function*(){if(!this.sender)throw new Sn("unable to replace an unpublished track");let i,r;return typeof n=="boolean"?i=n:n!==void 0&&(i=n.userProvidedTrack,r=n.stopProcessor),this.providedByUser=i??!0,this.log.debug("replace MediaStreamTrack",this.logContext),yield this.setMediaStreamTrack(e),r&&this.processor&&(yield this.stopProcessor()),this})}restart(e){return P(this,void 0,void 0,function*(){this.manuallyStopped=!1;const n=yield this.restartLock.lock();try{e||(e=this._constraints);const{deviceId:i,facingMode:r}=e,s=ok(e,["deviceId","facingMode"]);this.log.debug("restarting track with constraints",Object.assign(Object.assign({},this.logContext),{constraints:e}));const o={audio:!1,video:!1};this.kind===M.Kind.Video?o.video=i||r?{deviceId:i,facingMode:r}:!0:o.audio=i?{deviceId:i}:!0,this.attachedElements.forEach(l=>{tr(this.mediaStreamTrack,l)}),this._mediaStreamTrack.removeEventListener("ended",this.handleEnded),this._mediaStreamTrack.stop();const c=(yield navigator.mediaDevices.getUserMedia(o)).getTracks()[0];return yield c.applyConstraints(s),c.addEventListener("ended",this.handleEnded),this.log.debug("re-acquired MediaStreamTrack",this.logContext),yield this.setMediaStreamTrack(c),this._constraints=e,this.emit(G.Restarted,this),this.manuallyStopped&&(this.log.warn("track was stopped during a restart, stopping restarted track",this.logContext),this.stop()),this}finally{n()}})}setTrackMuted(e){this.log.debug("setting ".concat(this.kind," track ").concat(e?"muted":"unmuted"),this.logContext),!(this.isMuted===e&&this._mediaStreamTrack.enabled!==e)&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?G.Muted:G.Unmuted,this))}get needsReAcquisition(){return this._mediaStreamTrack.readyState!=="live"||this._mediaStreamTrack.muted||!this._mediaStreamTrack.enabled||this.reacquireTrack}handleAppVisibilityChanged(){const e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return P(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),k0()&&(this.log.debug("visibility changed, is in Background: ".concat(this.isInBackground),this.logContext),!this.isInBackground&&this.needsReAcquisition&&!this.isUserProvided&&!this.isMuted&&(this.log.debug("track needs to be reacquired, restarting ".concat(this.source),this.logContext),yield this.restart(),this.reacquireTrack=!1))})}stop(){var e;this.manuallyStopped=!0,super.stop(),this._mediaStreamTrack.removeEventListener("ended",this.handleEnded),this._mediaStreamTrack.removeEventListener("mute",this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener("unmute",this.handleTrackUnmuteEvent),(e=this.processor)===null||e===void 0||e.destroy(),this.processor=void 0}pauseUpstream(){return P(this,void 0,void 0,function*(){var e;const n=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!0)return;if(!this.sender){this.log.warn("unable to pause upstream for an unpublished track",this.logContext);return}this._isUpstreamPaused=!0,this.emit(G.UpstreamPaused,this);const i=Tt();if((i==null?void 0:i.name)==="Safari"&&qn(i.version,"12.0")<0)throw new xu("pauseUpstream is not supported on Safari < 12.");((e=this.sender.transport)===null||e===void 0?void 0:e.state)!=="closed"&&(yield this.sender.replaceTrack(null))}finally{n()}})}resumeUpstream(){return P(this,void 0,void 0,function*(){var e;const n=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!1)return;if(!this.sender){this.log.warn("unable to resume upstream for an unpublished track",this.logContext);return}this._isUpstreamPaused=!1,this.emit(G.UpstreamResumed,this),((e=this.sender.transport)===null||e===void 0?void 0:e.state)!=="closed"&&(yield this.sender.replaceTrack(this.mediaStreamTrack))}finally{n()}})}getRTCStatsReport(){return P(this,void 0,void 0,function*(){var e;return!((e=this.sender)===null||e===void 0)&&e.getStats?yield this.sender.getStats():void 0})}setProcessor(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var s;const o=yield i.processorLock.lock();try{i.log.debug("setting up processor",i.logContext);const a=document.createElement(i.kind),c={kind:i.kind,track:i._mediaStreamTrack,element:a,audioContext:i.audioContext};if(yield n.init(c),i.log.debug("processor initialized",i.logContext),i.processor&&(yield i.stopProcessor()),i.kind==="unknown")throw TypeError("cannot set processor on track of unknown kind");if(zi(i._mediaStreamTrack,a),a.muted=!0,a.play().catch(l=>i.log.error("failed to play processor element",Object.assign(Object.assign({},i.logContext),{error:l}))),i.processor=n,i.processorElement=a,i.processor.processedTrack){for(const l of i.attachedElements)l!==i.processorElement&&r&&(tr(i._mediaStreamTrack,l),zi(i.processor.processedTrack,l));yield(s=i.sender)===null||s===void 0?void 0:s.replaceTrack(i.processor.processedTrack)}i.emit(G.TrackProcessorUpdate,i.processor)}finally{o()}}()})}getProcessor(){return this.processor}stopProcessor(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var i,r;e.processor&&(e.log.debug("stopping processor",e.logContext),(i=e.processor.processedTrack)===null||i===void 0||i.stop(),yield e.processor.destroy(),e.processor=void 0,n||((r=e.processorElement)===null||r===void 0||r.remove(),e.processorElement=void 0),yield e._mediaStreamTrack.applyConstraints(e._constraints),yield e.setMediaStreamTrack(e._mediaStreamTrack,!0),e.emit(G.TrackProcessorUpdate))}()})}startPreConnectBuffer(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:100;if(!wC()){this.log.warn("MediaRecorder is not available, cannot start preconnect buffer",this.logContext);return}if(!this.localTrackRecorder)this.localTrackRecorder=new CC(this,{mimeType:"audio/webm;codecs=opus"});else{this.log.warn("preconnect buffer already started");return}this.localTrackRecorder.start(e),this.autoStopPreConnectBuffer=setTimeout(()=>{this.log.warn("preconnect buffer timed out, stopping recording automatically",this.logContext),this.stopPreConnectBuffer()},EC)}stopPreConnectBuffer(){clearTimeout(this.autoStopPreConnectBuffer),this.localTrackRecorder&&(this.localTrackRecorder.stop(),this.localTrackRecorder=void 0)}getPreConnectBuffer(){var e;return(e=this.localTrackRecorder)===null||e===void 0?void 0:e.byteStream}}class Lo extends M0{get enhancedNoiseCancellation(){return this.isKrispNoiseFilterEnabled}constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0,s=arguments.length>4?arguments[4]:void 0;super(e,M.Kind.Audio,n,i,s),this.stopOnMute=!1,this.isKrispNoiseFilterEnabled=!1,this.monitorSender=()=>P(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let o;try{o=yield this.getSenderStats()}catch(a){this.log.error("could not get audio sender stats",Object.assign(Object.assign({},this.logContext),{error:a}));return}o&&this.prevStats&&(this._currentBitrate=ca(o,this.prevStats)),this.prevStats=o}),this.handleKrispNoiseFilterEnable=()=>{this.isKrispNoiseFilterEnabled=!0,this.log.debug("Krisp noise filter enabled",this.logContext),this.emit(G.AudioTrackFeatureUpdate,this,et.TF_ENHANCED_NOISE_CANCELLATION,!0)},this.handleKrispNoiseFilterDisable=()=>{this.isKrispNoiseFilterEnabled=!1,this.log.debug("Krisp noise filter disabled",this.logContext),this.emit(G.AudioTrackFeatureUpdate,this,et.TF_ENHANCED_NOISE_CANCELLATION,!1)},this.audioContext=r,this.checkForSilence()}mute(){const e=Object.create(null,{mute:{get:()=>super.mute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug("Track already muted",this.logContext),this):(this.source===M.Source.Microphone&&this.stopOnMute&&!this.isUserProvided&&(this.log.debug("stopping mic track",this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{n()}})}unmute(){const e=Object.create(null,{unmute:{get:()=>super.unmute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{if(!this.isMuted)return this.log.debug("Track already unmuted",this.logContext),this;const i=this._constraints.deviceId&&this._mediaStreamTrack.getSettings().deviceId!==Hn(this._constraints.deviceId);return this.source===M.Source.Microphone&&(this.stopOnMute||this._mediaStreamTrack.readyState==="ended"||i)&&!this.isUserProvided&&(this.log.debug("reacquiring mic track",this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this}finally{n()}})}restartTrack(e){return P(this,void 0,void 0,function*(){let n;if(e){const i=Pu({audio:e});typeof i.audio!="boolean"&&(n=i.audio)}yield this.restart(n)})}restart(e){const n=Object.create(null,{restart:{get:()=>super.restart}});return P(this,void 0,void 0,function*(){const i=yield n.restart.call(this,e);return this.checkForSilence(),i})}startMonitor(){ht()&&(this.monitorInterval||(this.monitorInterval=setInterval(()=>{this.monitorSender()},Du)))}setProcessor(e){return P(this,void 0,void 0,function*(){var n;const i=yield this.processorLock.lock();try{if(!on()&&!this.audioContext)throw Error("Audio context needs to be set on LocalAudioTrack in order to enable processors");this.processor&&(yield this.stopProcessor());const r={kind:this.kind,track:this._mediaStreamTrack,audioContext:this.audioContext};this.log.debug("setting up audio processor ".concat(e.name),this.logContext),yield e.init(r),this.processor=e,this.processor.processedTrack&&(yield(n=this.sender)===null||n===void 0?void 0:n.replaceTrack(this.processor.processedTrack),this.processor.processedTrack.addEventListener("enable-lk-krisp-noise-filter",this.handleKrispNoiseFilterEnable),this.processor.processedTrack.addEventListener("disable-lk-krisp-noise-filter",this.handleKrispNoiseFilterDisable)),this.emit(G.TrackProcessorUpdate,this.processor)}finally{i()}})}setAudioContext(e){this.audioContext=e}getSenderStats(){return P(this,void 0,void 0,function*(){var e;if(!(!((e=this.sender)===null||e===void 0)&&e.getStats))return;const n=yield this.sender.getStats();let i;return n.forEach(r=>{r.type==="outbound-rtp"&&(i={type:"audio",streamId:r.id,packetsSent:r.packetsSent,packetsLost:r.packetsLost,bytesSent:r.bytesSent,timestamp:r.timestamp,roundTripTime:r.roundTripTime,jitter:r.jitter})}),i})}checkForSilence(){return P(this,void 0,void 0,function*(){const e=yield E0(this);return e&&(this.isMuted||this.log.warn("silence detected on local audio track",this.logContext),this.emit(G.AudioSilenceDetected)),e})}}function PC(t,e,n){switch(t.kind){case"audio":return new Lo(t,e,!1,void 0,n);case"video":return new Vo(t,e,!1,n);default:throw new Sn("unsupported track type: ".concat(t.kind))}}const RC=Object.values(ss),AC=Object.values(ol),IC=Object.values(Eu),_C=[ss.h180,ss.h360],MC=[ol.h180,ol.h360],OC=t=>[{scaleResolutionDownBy:2,fps:t.encoding.maxFramerate}].map(n=>{var i,r;return new xe(Math.floor(t.width/n.scaleResolutionDownBy),Math.floor(t.height/n.scaleResolutionDownBy),Math.max(15e4,Math.floor(t.encoding.maxBitrate/(Math.pow(n.scaleResolutionDownBy,2)*(((i=t.encoding.maxFramerate)!==null&&i!==void 0?i:30)/((r=n.fps)!==null&&r!==void 0?r:30))))),n.fps,t.encoding.priority)}),gl=["q","h","f"];function vl(t,e,n,i){var r,s;let o=i==null?void 0:i.videoEncoding;t&&(o=i==null?void 0:i.screenShareEncoding);const a=i==null?void 0:i.simulcast,c=i==null?void 0:i.scalabilityMode,l=i==null?void 0:i.videoCodec;if(!o&&!a&&!c||!e||!n)return[{}];o||(o=NC(t,e,n,l),me.debug("using video encoding",o));const u=o.maxFramerate,d=new xe(e,n,o.maxBitrate,o.maxFramerate,o.priority);if(c&&kn(l)){const g=new O0(c),f=[];if(g.spatial>3)throw new Error("unsupported scalabilityMode: ".concat(c));const y=Tt();if(Ti()||on()||(y==null?void 0:y.name)==="Chrome"&&qn(y==null?void 0:y.version,"113")<0){const v=g.suffix=="h"?2:3,C=Fk(y);for(let T=0;T<g.spatial;T+=1)f.push({rid:gl[2-T],maxBitrate:o.maxBitrate/Math.pow(v,T),maxFramerate:d.encoding.maxFramerate,scaleResolutionDownBy:C?Math.pow(2,T):void 0});f[0].scalabilityMode=c}else f.push({maxBitrate:o.maxBitrate,maxFramerate:d.encoding.maxFramerate,scalabilityMode:c});return d.encoding.priority&&(f[0].priority=d.encoding.priority,f[0].networkPriority=d.encoding.priority),me.debug("using svc encoding",{encodings:f}),f}if(!a)return[o];let h=[];t?h=(r=th(i==null?void 0:i.screenShareSimulcastLayers))!==null&&r!==void 0?r:eh(t,d):h=(s=th(i==null?void 0:i.videoSimulcastLayers))!==null&&s!==void 0?s:eh(t,d);let p;if(h.length>0){const g=h[0];h.length>1&&([,p]=h);const f=Math.max(e,n);if(f>=960&&p)return Ya(e,n,[g,p,d],u);if(f>=480)return Ya(e,n,[g,d],u)}return Ya(e,n,[d])}function DC(t,e,n){var i,r,s,o;if(!n.backupCodec||n.backupCodec===!0||n.backupCodec.codec===n.videoCodec)return;e!==n.backupCodec.codec&&me.warn("requested a different codec than specified as backup",{serverRequested:e,backup:n.backupCodec.codec}),n.videoCodec=e,n.videoEncoding=n.backupCodec.encoding;const a=t.mediaStreamTrack.getSettings(),c=(i=a.width)!==null&&i!==void 0?i:(r=t.dimensions)===null||r===void 0?void 0:r.width,l=(s=a.height)!==null&&s!==void 0?s:(o=t.dimensions)===null||o===void 0?void 0:o.height;return t.source===M.Source.ScreenShare&&n.simulcast&&(n.simulcast=!1),vl(t.source===M.Source.ScreenShare,c,l,n)}function NC(t,e,n,i){const r=LC(t,e,n);let{encoding:s}=r[0];const o=Math.max(e,n);for(let a=0;a<r.length;a+=1){const c=r[a];if(s=c.encoding,c.width>=o)break}if(i)switch(i){case"av1":s=Object.assign({},s),s.maxBitrate=s.maxBitrate*.7;break;case"vp9":s=Object.assign({},s),s.maxBitrate=s.maxBitrate*.85;break}return s}function LC(t,e,n){if(t)return IC;const i=e>n?e/n:n/e;return Math.abs(i-16/9)<Math.abs(i-4/3)?RC:AC}function eh(t,e){if(t)return OC(e);const{width:n,height:i}=e,r=n>i?n/i:i/n;return Math.abs(r-16/9)<Math.abs(r-4/3)?_C:MC}function Ya(t,e,n,i){const r=[];if(n.forEach((s,o)=>{if(o>=gl.length)return;const a=Math.min(t,e),l={rid:gl[o],scaleResolutionDownBy:Math.max(1,a/Math.min(s.width,s.height)),maxBitrate:s.encoding.maxBitrate},u=i&&s.encoding.maxFramerate?Math.min(i,s.encoding.maxFramerate):s.encoding.maxFramerate;u&&(l.maxFramerate=u);const d=ur()||o===0;s.encoding.priority&&d&&(l.priority=s.encoding.priority,l.networkPriority=s.encoding.priority),r.push(l)}),on()&&w0()==="ios"){let s;r.forEach(a=>{s?a.maxFramerate&&a.maxFramerate>s&&(s=a.maxFramerate):s=a.maxFramerate});let o=!0;r.forEach(a=>{var c;a.maxFramerate!=s&&(o&&(o=!1,me.info("Simulcast on iOS React-Native requires all encodings to share the same framerate.")),me.info('Setting framerate of encoding "'.concat((c=a.rid)!==null&&c!==void 0?c:"",'" to ').concat(s)),a.maxFramerate=s)})}return r}function th(t){if(t)return t.sort((e,n)=>{const{encoding:i}=e,{encoding:r}=n;return i.maxBitrate>r.maxBitrate?1:i.maxBitrate<r.maxBitrate?-1:i.maxBitrate===r.maxBitrate&&i.maxFramerate&&r.maxFramerate?i.maxFramerate>r.maxFramerate?1:-1:0})}class O0{constructor(e){const n=e.match(/^L(\d)T(\d)(h|_KEY|_KEY_SHIFT){0,1}$/);if(!n)throw new Error("invalid scalability mode");if(this.spatial=parseInt(n[1]),this.temporal=parseInt(n[2]),n.length>3)switch(n[3]){case"h":case"_KEY":case"_KEY_SHIFT":this.suffix=n[3]}}toString(){var e;return"L".concat(this.spatial,"T").concat(this.temporal).concat((e=this.suffix)!==null&&e!==void 0?e:"")}}function VC(t){return t.source===M.Source.ScreenShare||t.constraints.height&&Hn(t.constraints.height)>=1080?"maintain-resolution":"balanced"}const FC=5e3;class Vo extends M0{get sender(){return this._sender}set sender(e){this._sender=e,this.degradationPreference&&this.setDegradationPreference(this.degradationPreference)}constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0;super(e,M.Kind.Video,n,i,r),this.simulcastCodecs=new Map,this.degradationPreference="balanced",this.monitorSender=()=>P(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let s;try{s=yield this.getSenderStats()}catch(a){this.log.error("could not get audio sender stats",Object.assign(Object.assign({},this.logContext),{error:a}));return}const o=new Map(s.map(a=>[a.rid,a]));if(this.prevStats){let a=0;o.forEach((c,l)=>{var u;const d=(u=this.prevStats)===null||u===void 0?void 0:u.get(l);a+=ca(c,d)}),this._currentBitrate=a}this.prevStats=o}),this.senderLock=new ft}get isSimulcast(){return!!(this.sender&&this.sender.getParameters().encodings.length>1)}startMonitor(e){var n;if(this.signalClient=e,!ht())return;const i=(n=this.sender)===null||n===void 0?void 0:n.getParameters();i&&(this.encodings=i.encodings),!this.monitorInterval&&(this.monitorInterval=setInterval(()=>{this.monitorSender()},Du))}stop(){this._mediaStreamTrack.getConstraints(),this.simulcastCodecs.forEach(e=>{e.mediaStreamTrack.stop()}),super.stop()}pauseUpstream(){const e=Object.create(null,{pauseUpstream:{get:()=>super.pauseUpstream}});return P(this,void 0,void 0,function*(){var n,i,r,s,o;yield e.pauseUpstream.call(this);try{for(var a=!0,c=bn(this.simulcastCodecs.values()),l;l=yield c.next(),n=l.done,!n;a=!0)s=l.value,a=!1,yield(o=s.sender)===null||o===void 0?void 0:o.replaceTrack(null)}catch(u){i={error:u}}finally{try{!a&&!n&&(r=c.return)&&(yield r.call(c))}finally{if(i)throw i.error}}})}resumeUpstream(){const e=Object.create(null,{resumeUpstream:{get:()=>super.resumeUpstream}});return P(this,void 0,void 0,function*(){var n,i,r,s,o;yield e.resumeUpstream.call(this);try{for(var a=!0,c=bn(this.simulcastCodecs.values()),l;l=yield c.next(),n=l.done,!n;a=!0){s=l.value,a=!1;const u=s;yield(o=u.sender)===null||o===void 0?void 0:o.replaceTrack(u.mediaStreamTrack)}}catch(u){i={error:u}}finally{try{!a&&!n&&(r=c.return)&&(yield r.call(c))}finally{if(i)throw i.error}}})}mute(){const e=Object.create(null,{mute:{get:()=>super.mute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug("Track already muted",this.logContext),this):(this.source===M.Source.Camera&&!this.isUserProvided&&(this.log.debug("stopping camera track",this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{n()}})}unmute(){const e=Object.create(null,{unmute:{get:()=>super.unmute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{return this.isMuted?(this.source===M.Source.Camera&&!this.isUserProvided&&(this.log.debug("reacquiring camera track",this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this):(this.log.debug("Track already unmuted",this.logContext),this)}finally{n()}})}setTrackMuted(e){super.setTrackMuted(e);for(const n of this.simulcastCodecs.values())n.mediaStreamTrack.enabled=!e}getSenderStats(){return P(this,void 0,void 0,function*(){var e;if(!(!((e=this.sender)===null||e===void 0)&&e.getStats))return[];const n=[],i=yield this.sender.getStats();return i.forEach(r=>{var s;if(r.type==="outbound-rtp"){const o={type:"video",streamId:r.id,frameHeight:r.frameHeight,frameWidth:r.frameWidth,framesPerSecond:r.framesPerSecond,framesSent:r.framesSent,firCount:r.firCount,pliCount:r.pliCount,nackCount:r.nackCount,packetsSent:r.packetsSent,bytesSent:r.bytesSent,qualityLimitationReason:r.qualityLimitationReason,qualityLimitationDurations:r.qualityLimitationDurations,qualityLimitationResolutionChanges:r.qualityLimitationResolutionChanges,rid:(s=r.rid)!==null&&s!==void 0?s:r.id,retransmittedPacketsSent:r.retransmittedPacketsSent,targetBitrate:r.targetBitrate,timestamp:r.timestamp},a=i.get(r.remoteId);a&&(o.jitter=a.jitter,o.packetsLost=a.packetsLost,o.roundTripTime=a.roundTripTime),n.push(o)}}),n.sort((r,s)=>{var o,a;return((o=s.frameWidth)!==null&&o!==void 0?o:0)-((a=r.frameWidth)!==null&&a!==void 0?a:0)}),n})}setPublishingQuality(e){const n=[];for(let i=At.LOW;i<=At.HIGH;i+=1)n.push(new ku({quality:i,enabled:i<=e}));this.log.debug("setting publishing quality. max quality ".concat(e),this.logContext),this.setPublishingLayers(kn(this.codec),n)}restartTrack(e){return P(this,void 0,void 0,function*(){var n,i,r,s,o;let a;if(e){const d=Pu({video:e});typeof d.video!="boolean"&&(a=d.video)}yield this.restart(a);try{for(var c=!0,l=bn(this.simulcastCodecs.values()),u;u=yield l.next(),n=u.done,!n;c=!0){s=u.value,c=!1;const d=s;d.sender&&((o=d.sender.transport)===null||o===void 0?void 0:o.state)!=="closed"&&(d.mediaStreamTrack=this.mediaStreamTrack.clone(),yield d.sender.replaceTrack(d.mediaStreamTrack))}}catch(d){i={error:d}}finally{try{!c&&!n&&(r=l.return)&&(yield r.call(l))}finally{if(i)throw i.error}}})}setProcessor(e){const n=Object.create(null,{setProcessor:{get:()=>super.setProcessor}});return P(this,arguments,void 0,function(i){var r=this;let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var o,a,c,l,u,d;if(yield n.setProcessor.call(r,i,s),!((u=r.processor)===null||u===void 0)&&u.processedTrack)try{for(var h=!0,p=bn(r.simulcastCodecs.values()),g;g=yield p.next(),o=g.done,!o;h=!0)l=g.value,h=!1,yield(d=l.sender)===null||d===void 0?void 0:d.replaceTrack(r.processor.processedTrack)}catch(f){a={error:f}}finally{try{!h&&!o&&(c=p.return)&&(yield c.call(p))}finally{if(a)throw a.error}}}()})}setDegradationPreference(e){return P(this,void 0,void 0,function*(){if(this.degradationPreference=e,this.sender)try{this.log.debug("setting degradationPreference to ".concat(e),this.logContext);const n=this.sender.getParameters();n.degradationPreference=e,this.sender.setParameters(n)}catch(n){this.log.warn("failed to set degradationPreference",Object.assign({error:n},this.logContext))}})}addSimulcastTrack(e,n){if(this.simulcastCodecs.has(e)){this.log.error("".concat(e," already added, skipping adding simulcast codec"),this.logContext);return}const i={codec:e,mediaStreamTrack:this.mediaStreamTrack.clone(),sender:void 0,encodings:n};return this.simulcastCodecs.set(e,i),i}setSimulcastTrackSender(e,n){const i=this.simulcastCodecs.get(e);i&&(i.sender=n,setTimeout(()=>{this.subscribedCodecs&&this.setPublishingCodecs(this.subscribedCodecs)},FC))}setPublishingCodecs(e){return P(this,void 0,void 0,function*(){var n,i,r,s,o,a,c;if(this.log.debug("setting publishing codecs",Object.assign(Object.assign({},this.logContext),{codecs:e,currentCodec:this.codec})),!this.codec&&e.length>0)return yield this.setPublishingLayers(kn(e[0].codec),e[0].qualities),[];this.subscribedCodecs=e;const l=[];try{for(n=!0,i=bn(e);r=yield i.next(),s=r.done,!s;n=!0){c=r.value,n=!1;const u=c;if(!this.codec||this.codec===u.codec)yield this.setPublishingLayers(kn(u.codec),u.qualities);else{const d=this.simulcastCodecs.get(u.codec);if(this.log.debug("try setPublishingCodec for ".concat(u.codec),Object.assign(Object.assign({},this.logContext),{simulcastCodecInfo:d})),!d||!d.sender){for(const h of u.qualities)if(h.enabled){l.push(u.codec);break}}else d.encodings&&(this.log.debug("try setPublishingLayersForSender ".concat(u.codec),this.logContext),yield nh(d.sender,d.encodings,u.qualities,this.senderLock,kn(u.codec),this.log,this.logContext))}}}catch(u){o={error:u}}finally{try{!n&&!s&&(a=i.return)&&(yield a.call(i))}finally{if(o)throw o.error}}return l})}setPublishingLayers(e,n){return P(this,void 0,void 0,function*(){this.log.debug("setting publishing layers",Object.assign(Object.assign({},this.logContext),{qualities:n})),!(!this.sender||!this.encodings)&&(yield nh(this.sender,this.encodings,n,this.senderLock,e,this.log,this.logContext))})}handleAppVisibilityChanged(){const e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return P(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),k0()&&this.isInBackground&&this.source===M.Source.Camera&&(this._mediaStreamTrack.enabled=!1)})}}function nh(t,e,n,i,r,s,o){return P(this,void 0,void 0,function*(){const a=yield i.lock();s.debug("setPublishingLayersForSender",Object.assign(Object.assign({},o),{sender:t,qualities:n,senderEncodings:e}));try{const c=t.getParameters(),{encodings:l}=c;if(!l)return;if(l.length!==e.length){s.warn("cannot set publishing layers, encodings mismatch",Object.assign(Object.assign({},o),{encodings:l,senderEncodings:e}));return}let u=!1;!1&&l[0].scalabilityMode||(r&&n.some(p=>p.enabled)&&n.forEach(p=>p.enabled=!0),l.forEach((h,p)=>{var g;let f=(g=h.rid)!==null&&g!==void 0?g:"";f===""&&(f="q");const y=D0(f),v=n.find(C=>C.quality===y);v&&h.active!==v.enabled&&(u=!0,h.active=v.enabled,s.debug("setting layer ".concat(v.quality," to ").concat(h.active?"enabled":"disabled"),o),ur()&&(v.enabled?(h.scaleResolutionDownBy=e[p].scaleResolutionDownBy,h.maxBitrate=e[p].maxBitrate,h.maxFrameRate=e[p].maxFrameRate):(h.scaleResolutionDownBy=4,h.maxBitrate=10,h.maxFrameRate=2)))})),u&&(c.encodings=l,s.debug("setting encodings",Object.assign(Object.assign({},o),{encodings:c.encodings})),yield t.setParameters(c))}finally{a()}})}function D0(t){switch(t){case"f":return At.HIGH;case"h":return At.MEDIUM;case"q":return At.LOW;default:return At.HIGH}}function ih(t,e,n,i){if(!n)return[new pi({quality:At.HIGH,width:t,height:e,bitrate:0,ssrc:0})];if(i){const r=n[0].scalabilityMode,s=new O0(r),o=[],a=s.suffix=="h"?1.5:2,c=s.suffix=="h"?2:3;for(let l=0;l<s.spatial;l+=1)o.push(new pi({quality:Math.min(At.HIGH,s.spatial-1)-l,width:Math.ceil(t/Math.pow(a,l)),height:Math.ceil(e/Math.pow(a,l)),bitrate:n[0].maxBitrate?Math.ceil(n[0].maxBitrate/Math.pow(c,l)):0,ssrc:0}));return o}return n.map(r=>{var s,o,a;const c=(s=r.scaleResolutionDownBy)!==null&&s!==void 0?s:1;let l=D0((o=r.rid)!==null&&o!==void 0?o:"");return new pi({quality:l,width:Math.ceil(t/c),height:Math.ceil(e/c),bitrate:(a=r.maxBitrate)!==null&&a!==void 0?a:0,ssrc:0})})}const rh="_lossy",sh="_reliable",jC=2*1e3,Ja="leave-reconnect",UC=3e4;var Lt;(function(t){t[t.New=0]="New",t[t.Connected=1]="Connected",t[t.Disconnected=2]="Disconnected",t[t.Reconnecting=3]="Reconnecting",t[t.Closed=4]="Closed"})(Lt||(Lt={}));class BC extends ln.EventEmitter{get isClosed(){return this._isClosed}get pendingReconnect(){return!!this.reconnectTimeout}constructor(e){var n;super(),this.options=e,this.rtcConfig={},this.peerConnectionTimeout=Mu.peerConnectionTimeout,this.fullReconnectOnNext=!1,this.latestRemoteOfferId=0,this.subscriberPrimary=!1,this.pcState=Lt.New,this._isClosed=!0,this.pendingTrackResolvers={},this.reconnectAttempts=0,this.reconnectStart=0,this.attemptingReconnect=!1,this.joinAttempts=0,this.maxJoinAttempts=1,this.shouldFailNext=!1,this.log=me,this.reliableDataSequence=1,this.reliableMessageBuffer=new Wf,this.reliableReceivedState=new dC(UC),this.handleDataChannel=i=>P(this,[i],void 0,function(r){var s=this;let{channel:o}=r;return function*(){if(o){if(o.label===sh)s.reliableDCSub=o;else if(o.label===rh)s.lossyDCSub=o;else return;s.log.debug("on data channel ".concat(o.id,", ").concat(o.label),s.logContext),o.onmessage=s.handleDataMessage}}()}),this.handleDataMessage=i=>P(this,void 0,void 0,function*(){var r,s;const o=yield this.dataProcessLock.lock();try{let a;if(i.data instanceof ArrayBuffer)a=i.data;else if(i.data instanceof Blob)a=yield i.data.arrayBuffer();else{this.log.error("unsupported data type",Object.assign(Object.assign({},this.logContext),{data:i.data}));return}const c=ut.fromBinary(new Uint8Array(a));if(c.sequence>0&&c.participantSid!==""){const l=this.reliableReceivedState.get(c.participantSid);if(l&&c.sequence<=l)return;this.reliableReceivedState.set(c.participantSid,c.sequence)}((r=c.value)===null||r===void 0?void 0:r.case)==="speaker"?this.emit(X.ActiveSpeakersUpdate,c.value.value.speakers):(((s=c.value)===null||s===void 0?void 0:s.case)==="user"&&HC(c,c.value.value),this.emit(X.DataPacketReceived,c))}finally{o()}}),this.handleDataError=i=>{const s=i.currentTarget.maxRetransmits===0?"lossy":"reliable";if(i instanceof ErrorEvent&&i.error){const{error:o}=i.error;this.log.error("DataChannel error on ".concat(s,": ").concat(i.message),Object.assign(Object.assign({},this.logContext),{error:o}))}else this.log.error("Unknown DataChannel error on ".concat(s),Object.assign(Object.assign({},this.logContext),{event:i}))},this.handleBufferedAmountLow=i=>{const s=i.currentTarget.maxRetransmits===0?fe.LOSSY:fe.RELIABLE;this.updateAndEmitDCBufferStatus(s)},this.handleDisconnect=(i,r)=>{if(this._isClosed)return;this.log.warn("".concat(i," disconnected"),this.logContext),this.reconnectAttempts===0&&(this.reconnectStart=Date.now());const s=c=>{this.log.warn("could not recover connection after ".concat(this.reconnectAttempts," attempts, ").concat(c,"ms. giving up"),this.logContext),this.emit(X.Disconnected),this.close()},o=Date.now()-this.reconnectStart;let a=this.getNextRetryDelay({elapsedMs:o,retryCount:this.reconnectAttempts});if(a===null){s(o);return}i===Ja&&(a=0),this.log.debug("reconnecting in ".concat(a,"ms"),this.logContext),this.clearReconnectTimeout(),this.token&&this.regionUrlProvider&&this.regionUrlProvider.updateToken(this.token),this.reconnectTimeout=rt.setTimeout(()=>this.attemptReconnect(r).finally(()=>this.reconnectTimeout=void 0),a)},this.waitForRestarted=()=>new Promise((i,r)=>{this.pcState===Lt.Connected&&i();const s=()=>{this.off(X.Disconnected,o),i()},o=()=>{this.off(X.Restarted,s),r()};this.once(X.Restarted,s),this.once(X.Disconnected,o)}),this.updateAndEmitDCBufferStatus=i=>{const r=this.isBufferStatusLow(i);typeof r<"u"&&r!==this.dcBufferStatus.get(i)&&(this.dcBufferStatus.set(i,r),this.emit(X.DCBufferStatusChanged,r,i))},this.isBufferStatusLow=i=>{const r=this.dataChannelForKind(i);if(r)return i===fe.RELIABLE&&this.reliableMessageBuffer.alignBufferedAmount(r.bufferedAmount),r.bufferedAmount<=r.bufferedAmountLowThreshold},this.handleBrowserOnLine=()=>{this.client.currentState===Ae.RECONNECTING&&(this.clearReconnectTimeout(),this.attemptReconnect(_i.RR_SIGNAL_DISCONNECTED))},this.log=Cn((n=e.loggerName)!==null&&n!==void 0?n:zt.Engine),this.loggerOptions={loggerName:e.loggerName,loggerContextCb:()=>this.logContext},this.client=new Au(void 0,this.loggerOptions),this.client.signalLatency=this.options.expSignalLatency,this.reconnectPolicy=this.options.reconnectPolicy,this.registerOnLineListener(),this.closingLock=new ft,this.dataProcessLock=new ft,this.dcBufferStatus=new Map([[fe.LOSSY,!0],[fe.RELIABLE,!0]]),this.client.onParticipantUpdate=i=>this.emit(X.ParticipantUpdate,i),this.client.onConnectionQuality=i=>this.emit(X.ConnectionQualityUpdate,i),this.client.onRoomUpdate=i=>this.emit(X.RoomUpdate,i),this.client.onSubscriptionError=i=>this.emit(X.SubscriptionError,i),this.client.onSubscriptionPermissionUpdate=i=>this.emit(X.SubscriptionPermissionUpdate,i),this.client.onSpeakersChanged=i=>this.emit(X.SpeakersChanged,i),this.client.onStreamStateUpdate=i=>this.emit(X.StreamStateChanged,i),this.client.onRequestResponse=i=>this.emit(X.SignalRequestResponse,i)}get logContext(){var e,n,i,r,s,o;return{room:(n=(e=this.latestJoinResponse)===null||e===void 0?void 0:e.room)===null||n===void 0?void 0:n.name,roomID:(r=(i=this.latestJoinResponse)===null||i===void 0?void 0:i.room)===null||r===void 0?void 0:r.sid,participant:(o=(s=this.latestJoinResponse)===null||s===void 0?void 0:s.participant)===null||o===void 0?void 0:o.identity,pID:this.participantSid}}join(e,n,i,r){return P(this,void 0,void 0,function*(){this.url=e,this.token=n,this.signalOpts=i,this.maxJoinAttempts=i.maxRetries;try{this.joinAttempts+=1,this.setupSignalClientCallbacks();const s=yield this.client.join(e,n,i,r);return this._isClosed=!1,this.latestJoinResponse=s,this.subscriberPrimary=s.subscriberPrimary,this.pcManager||(yield this.configure(s)),(!this.subscriberPrimary||s.fastPublish)&&this.negotiate(),this.clientConfiguration=s.clientConfiguration,this.emit(X.SignalConnected,s),s}catch(s){if(s instanceof Re&&s.reason===ge.ServerUnreachable&&(this.log.warn("Couldn't connect to server, attempt ".concat(this.joinAttempts," of ").concat(this.maxJoinAttempts),this.logContext),this.joinAttempts<this.maxJoinAttempts))return this.join(e,n,i,r);throw s}})}close(){return P(this,void 0,void 0,function*(){const e=yield this.closingLock.lock();if(this.isClosed){e();return}try{this._isClosed=!0,this.joinAttempts=0,this.emit(X.Closing),this.removeAllListeners(),this.deregisterOnLineListener(),this.clearPendingReconnect(),yield this.cleanupPeerConnections(),yield this.cleanupClient()}finally{e()}})}cleanupPeerConnections(){return P(this,void 0,void 0,function*(){var e;yield(e=this.pcManager)===null||e===void 0?void 0:e.close(),this.pcManager=void 0;const n=i=>{i&&(i.close(),i.onbufferedamountlow=null,i.onclose=null,i.onclosing=null,i.onerror=null,i.onmessage=null,i.onopen=null)};n(this.lossyDC),n(this.lossyDCSub),n(this.reliableDC),n(this.reliableDCSub),this.lossyDC=void 0,this.lossyDCSub=void 0,this.reliableDC=void 0,this.reliableDCSub=void 0,this.reliableMessageBuffer=new Wf,this.reliableDataSequence=1,this.reliableReceivedState.clear()})}cleanupClient(){return P(this,void 0,void 0,function*(){yield this.client.close(),this.client.resetCallbacks()})}addTrack(e){if(this.pendingTrackResolvers[e.cid])throw new Sn("a track with the same ID has already been published");return new Promise((n,i)=>{const r=setTimeout(()=>{delete this.pendingTrackResolvers[e.cid],i(new Re("publication of local track timed out, no response from server",ge.Timeout))},1e4);this.pendingTrackResolvers[e.cid]={resolve:s=>{clearTimeout(r),n(s)},reject:()=>{clearTimeout(r),i(new Error("Cancelled publication by calling unpublish"))}},this.client.sendAddTrack(e)})}removeTrack(e){if(e.track&&this.pendingTrackResolvers[e.track.id]){const{reject:n}=this.pendingTrackResolvers[e.track.id];n&&n(),delete this.pendingTrackResolvers[e.track.id]}try{return this.pcManager.removeTrack(e),!0}catch(n){this.log.warn("failed to remove track",Object.assign(Object.assign({},this.logContext),{error:n}))}return!1}updateMuteStatus(e,n){this.client.sendMuteTrack(e,n)}get dataSubscriberReadyState(){var e;return(e=this.reliableDCSub)===null||e===void 0?void 0:e.readyState}getConnectedServerAddress(){return P(this,void 0,void 0,function*(){var e;return(e=this.pcManager)===null||e===void 0?void 0:e.getConnectedAddress()})}setRegionUrlProvider(e){this.regionUrlProvider=e}configure(e){return P(this,void 0,void 0,function*(){var n,i;if(this.pcManager&&this.pcManager.currentState!==Ve.NEW)return;this.participantSid=(n=e.participant)===null||n===void 0?void 0:n.sid;const r=this.makeRTCConfiguration(e);this.pcManager=new SC(r,e.subscriberPrimary,this.loggerOptions),this.emit(X.TransportsCreated,this.pcManager.publisher,this.pcManager.subscriber),this.pcManager.onIceCandidate=(s,o)=>{this.client.sendIceCandidate(s,o)},this.pcManager.onPublisherOffer=(s,o)=>{this.client.sendOffer(s,o)},this.pcManager.onDataChannel=this.handleDataChannel,this.pcManager.onStateChange=(s,o,a)=>P(this,void 0,void 0,function*(){if(this.log.debug("primary PC state changed ".concat(s),this.logContext),["closed","disconnected","failed"].includes(o)&&(this.publisherConnectionPromise=void 0),s===Ve.CONNECTED){const u=this.pcState===Lt.New;this.pcState=Lt.Connected,u&&this.emit(X.Connected,e)}else s===Ve.FAILED&&this.pcState===Lt.Connected&&(this.pcState=Lt.Disconnected,this.handleDisconnect("peerconnection failed",a==="failed"?_i.RR_SUBSCRIBER_FAILED:_i.RR_PUBLISHER_FAILED));const c=this.client.isDisconnected||this.client.currentState===Ae.RECONNECTING,l=[Ve.FAILED,Ve.CLOSING,Ve.CLOSED].includes(s);c&&l&&!this._isClosed&&this.emit(X.Offline)}),this.pcManager.onTrack=s=>{this.emit(X.MediaTrackAdded,s.track,s.streams[0],s.receiver)},$C((i=e.serverInfo)===null||i===void 0?void 0:i.protocol)||this.createDataChannels()})}setupSignalClientCallbacks(){this.client.onAnswer=(e,n)=>P(this,void 0,void 0,function*(){this.pcManager&&(this.log.debug("received server answer",Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type})),yield this.pcManager.setPublisherAnswer(e,n))}),this.client.onTrickle=(e,n)=>{this.pcManager&&(this.log.debug("got ICE candidate from peer",Object.assign(Object.assign({},this.logContext),{candidate:e,target:n})),this.pcManager.addIceCandidate(e,n))},this.client.onOffer=(e,n)=>P(this,void 0,void 0,function*(){if(this.latestRemoteOfferId=n,!this.pcManager)return;const i=yield this.pcManager.createSubscriberAnswerFromOffer(e,n);i&&this.client.sendAnswer(i,n)}),this.client.onLocalTrackPublished=e=>{var n;if(this.log.debug("received trackPublishedResponse",Object.assign(Object.assign({},this.logContext),{cid:e.cid,track:(n=e.track)===null||n===void 0?void 0:n.sid})),!this.pendingTrackResolvers[e.cid]){this.log.error("missing track resolver for ".concat(e.cid),Object.assign(Object.assign({},this.logContext),{cid:e.cid}));return}const{resolve:i}=this.pendingTrackResolvers[e.cid];delete this.pendingTrackResolvers[e.cid],i(e.track)},this.client.onLocalTrackUnpublished=e=>{this.emit(X.LocalTrackUnpublished,e)},this.client.onLocalTrackSubscribed=e=>{this.emit(X.LocalTrackSubscribed,e)},this.client.onTokenRefresh=e=>{this.token=e},this.client.onRemoteMuteChanged=(e,n)=>{this.emit(X.RemoteMute,e,n)},this.client.onSubscribedQualityUpdate=e=>{this.emit(X.SubscribedQualityUpdate,e)},this.client.onRoomMoved=e=>{var n;this.participantSid=(n=e.participant)===null||n===void 0?void 0:n.sid,this.latestJoinResponse&&(this.latestJoinResponse.room=e.room),this.emit(X.RoomMoved,e)},this.client.onClose=()=>{this.handleDisconnect("signal",_i.RR_SIGNAL_DISCONNECTED)},this.client.onLeave=e=>{switch(this.log.debug("client leave request",Object.assign(Object.assign({},this.logContext),{reason:e==null?void 0:e.reason})),e.regions&&this.regionUrlProvider&&(this.log.debug("updating regions",this.logContext),this.regionUrlProvider.setServerReportedRegions(e.regions)),e.action){case Qi.DISCONNECT:this.emit(X.Disconnected,e==null?void 0:e.reason),this.close();break;case Qi.RECONNECT:this.fullReconnectOnNext=!0,this.handleDisconnect(Ja);break;case Qi.RESUME:this.handleDisconnect(Ja)}}}makeRTCConfiguration(e){var n;const i=Object.assign({},this.rtcConfig);if(!((n=this.signalOpts)===null||n===void 0)&&n.e2eeEnabled&&(this.log.debug("E2EE - setting up transports with insertable streams",this.logContext),i.encodedInsertableStreams=!0),e.iceServers&&!i.iceServers){const r=[];e.iceServers.forEach(s=>{const o={urls:s.urls};s.username&&(o.username=s.username),s.credential&&(o.credential=s.credential),r.push(o)}),i.iceServers=r}return e.clientConfiguration&&e.clientConfiguration.forceRelay===rs.ENABLED&&(i.iceTransportPolicy="relay"),i.sdpSemantics="unified-plan",i.continualGatheringPolicy="gather_continually",i}createDataChannels(){this.pcManager&&(this.lossyDC&&(this.lossyDC.onmessage=null,this.lossyDC.onerror=null),this.reliableDC&&(this.reliableDC.onmessage=null,this.reliableDC.onerror=null),this.lossyDC=this.pcManager.createPublisherDataChannel(rh,{ordered:!1,maxRetransmits:0}),this.reliableDC=this.pcManager.createPublisherDataChannel(sh,{ordered:!0}),this.lossyDC.onmessage=this.handleDataMessage,this.reliableDC.onmessage=this.handleDataMessage,this.lossyDC.onerror=this.handleDataError,this.reliableDC.onerror=this.handleDataError,this.lossyDC.bufferedAmountLowThreshold=65535,this.reliableDC.bufferedAmountLowThreshold=65535,this.lossyDC.onbufferedamountlow=this.handleBufferedAmountLow,this.reliableDC.onbufferedamountlow=this.handleBufferedAmountLow)}createSender(e,n,i){return P(this,void 0,void 0,function*(){if(al())return yield this.createTransceiverRTCRtpSender(e,n,i);if(cl())return this.log.warn("using add-track fallback",this.logContext),yield this.createRTCRtpSender(e.mediaStreamTrack);throw new Je("Required webRTC APIs not supported on this device")})}createSimulcastSender(e,n,i,r){return P(this,void 0,void 0,function*(){if(al())return this.createSimulcastTransceiverSender(e,n,i,r);if(cl())return this.log.debug("using add-track fallback",this.logContext),this.createRTCRtpSender(e.mediaStreamTrack);throw new Je("Cannot stream on this device")})}createTransceiverRTCRtpSender(e,n,i){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("publisher is closed");const r=[];e.mediaStream&&r.push(e.mediaStream),vr(e)&&(e.codec=n.videoCodec);const s={direction:"sendonly",streams:r};return i&&(s.sendEncodings=i),(yield this.pcManager.addPublisherTransceiver(e.mediaStreamTrack,s)).sender})}createSimulcastTransceiverSender(e,n,i,r){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("publisher is closed");const s={direction:"sendonly"};r&&(s.sendEncodings=r);const o=yield this.pcManager.addPublisherTransceiver(n.mediaStreamTrack,s);if(i.videoCodec)return e.setSimulcastTrackSender(i.videoCodec,o.sender),o.sender})}createRTCRtpSender(e){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("publisher is closed");return this.pcManager.addPublisherTrack(e)})}attemptReconnect(e){return P(this,void 0,void 0,function*(){var n,i,r;if(!this._isClosed){if(this.attemptingReconnect){me.warn("already attempting reconnect, returning early",this.logContext);return}(((n=this.clientConfiguration)===null||n===void 0?void 0:n.resumeConnection)===rs.DISABLED||((r=(i=this.pcManager)===null||i===void 0?void 0:i.currentState)!==null&&r!==void 0?r:Ve.NEW)===Ve.NEW)&&(this.fullReconnectOnNext=!0);try{this.attemptingReconnect=!0,this.fullReconnectOnNext?yield this.restartConnection():yield this.resumeConnection(e),this.clearPendingReconnect(),this.fullReconnectOnNext=!1}catch(s){this.reconnectAttempts+=1;let o=!0;s instanceof Je?(this.log.debug("received unrecoverable error",Object.assign(Object.assign({},this.logContext),{error:s})),o=!1):s instanceof Mi||(this.fullReconnectOnNext=!0),o?this.handleDisconnect("reconnect",_i.RR_UNKNOWN):(this.log.info("could not recover connection after ".concat(this.reconnectAttempts," attempts, ").concat(Date.now()-this.reconnectStart,"ms. giving up"),this.logContext),this.emit(X.Disconnected),yield this.close())}finally{this.attemptingReconnect=!1}}})}getNextRetryDelay(e){try{return this.reconnectPolicy.nextRetryDelayInMs(e)}catch(n){this.log.warn("encountered error in reconnect policy",Object.assign(Object.assign({},this.logContext),{error:n}))}return null}restartConnection(e){return P(this,void 0,void 0,function*(){var n,i,r;try{if(!this.url||!this.token)throw new Je("could not reconnect, url or token not saved");this.log.info("reconnecting, attempt: ".concat(this.reconnectAttempts),this.logContext),this.emit(X.Restarting),this.client.isDisconnected||(yield this.client.sendLeave()),yield this.cleanupPeerConnections(),yield this.cleanupClient();let s;try{if(!this.signalOpts)throw this.log.warn("attempted connection restart, without signal options present",this.logContext),new Mi;s=yield this.join(e??this.url,this.token,this.signalOpts)}catch(o){throw o instanceof Re&&o.reason===ge.NotAllowed?new Je("could not reconnect, token might be expired"):new Mi}if(this.shouldFailNext)throw this.shouldFailNext=!1,new Error("simulated failure");if(this.client.setReconnected(),this.emit(X.SignalRestarted,s),yield this.waitForPCReconnected(),this.client.currentState!==Ae.CONNECTED)throw new Mi("Signal connection got severed during reconnect");(n=this.regionUrlProvider)===null||n===void 0||n.resetAttempts(),this.emit(X.Restarted)}catch(s){const o=yield(i=this.regionUrlProvider)===null||i===void 0?void 0:i.getNextBestRegionUrl();if(o){yield this.restartConnection(o);return}else throw(r=this.regionUrlProvider)===null||r===void 0||r.resetAttempts(),s}})}resumeConnection(e){return P(this,void 0,void 0,function*(){var n;if(!this.url||!this.token)throw new Je("could not reconnect, url or token not saved");if(!this.pcManager)throw new Je("publisher and subscriber connections unset");this.log.info("resuming signal connection, attempt ".concat(this.reconnectAttempts),this.logContext),this.emit(X.Resuming);let i;try{this.setupSignalClientCallbacks(),i=yield this.client.reconnect(this.url,this.token,this.participantSid,e)}catch(r){let s="";throw r instanceof Error&&(s=r.message,this.log.error(r.message,Object.assign(Object.assign({},this.logContext),{error:r}))),r instanceof Re&&r.reason===ge.NotAllowed?new Je("could not reconnect, token might be expired"):r instanceof Re&&r.reason===ge.LeaveRequest?r:new Mi(s)}if(this.emit(X.SignalResumed),i){const r=this.makeRTCConfiguration(i);this.pcManager.updateConfiguration(r),this.latestJoinResponse&&(this.latestJoinResponse.serverInfo=i.serverInfo)}else this.log.warn("Did not receive reconnect response",this.logContext);if(this.shouldFailNext)throw this.shouldFailNext=!1,new Error("simulated failure");if(yield this.pcManager.triggerIceRestart(),yield this.waitForPCReconnected(),this.client.currentState!==Ae.CONNECTED)throw new Mi("Signal connection got severed during reconnect");this.client.setReconnected(),((n=this.reliableDC)===null||n===void 0?void 0:n.readyState)==="open"&&this.reliableDC.id===null&&this.createDataChannels(),i!=null&&i.lastMessageSeq&&this.resendReliableMessagesForResume(i.lastMessageSeq),this.emit(X.Resumed)})}waitForPCInitialConnection(e,n){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("PC manager is closed");yield this.pcManager.ensurePCTransportConnection(n,e)})}waitForPCReconnected(){return P(this,void 0,void 0,function*(){this.pcState=Lt.Reconnecting,this.log.debug("waiting for peer connection to reconnect",this.logContext);try{if(yield mt(jC),!this.pcManager)throw new Je("PC manager is closed");yield this.pcManager.ensurePCTransportConnection(void 0,this.peerConnectionTimeout),this.pcState=Lt.Connected}catch(e){throw this.pcState=Lt.Disconnected,new Re("could not establish PC connection, ".concat(e.message),ge.InternalError)}})}publishRpcResponse(e,n,i,r){return P(this,void 0,void 0,function*(){const s=new ut({destinationIdentities:[e],kind:fe.RELIABLE,value:{case:"rpcResponse",value:new Cg({requestId:n,value:r?{case:"error",value:r.toProto()}:{case:"payload",value:i??""}})}});yield this.sendDataPacket(s,fe.RELIABLE)})}publishRpcAck(e,n){return P(this,void 0,void 0,function*(){const i=new ut({destinationIdentities:[e],kind:fe.RELIABLE,value:{case:"rpcAck",value:new kg({requestId:n})}});yield this.sendDataPacket(i,fe.RELIABLE)})}sendDataPacket(e,n){return P(this,void 0,void 0,function*(){yield this.ensurePublisherConnected(n),n===fe.RELIABLE&&(e.sequence=this.reliableDataSequence,this.reliableDataSequence+=1);const i=e.toBinary(),r=this.dataChannelForKind(n);if(r){if(n===fe.RELIABLE&&this.reliableMessageBuffer.push({data:i,sequence:e.sequence}),this.attemptingReconnect)return;r.send(i)}this.updateAndEmitDCBufferStatus(n)})}resendReliableMessagesForResume(e){return P(this,void 0,void 0,function*(){yield this.ensurePublisherConnected(fe.RELIABLE);const n=this.dataChannelForKind(fe.RELIABLE);n&&(this.reliableMessageBuffer.popToSequence(e),this.reliableMessageBuffer.getAll().forEach(i=>{n.send(i.data)})),this.updateAndEmitDCBufferStatus(fe.RELIABLE)})}waitForBufferStatusLow(e){return new Promise((n,i)=>P(this,void 0,void 0,function*(){if(this.isBufferStatusLow(e))n();else{const r=()=>i("Engine closed");for(this.once(X.Closing,r);!this.dcBufferStatus.get(e);)yield mt(10);this.off(X.Closing,r),n()}}))}ensureDataTransportConnected(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.subscriberPrimary;return function*(){var s;if(!i.pcManager)throw new Je("PC manager is closed");const o=r?i.pcManager.subscriber:i.pcManager.publisher,a=r?"Subscriber":"Publisher";if(!o)throw new Re("".concat(a," connection not set"),ge.InternalError);let c=!1;!r&&!i.dataChannelForKind(n,r)&&(i.createDataChannels(),c=!0),!c&&!r&&!i.pcManager.publisher.isICEConnected&&i.pcManager.publisher.getICEConnectionState()!=="checking"&&(c=!0),c&&i.negotiate();const l=i.dataChannelForKind(n,r);if((l==null?void 0:l.readyState)==="open")return;const u=new Date().getTime()+i.peerConnectionTimeout;for(;new Date().getTime()<u;){if(o.isICEConnected&&((s=i.dataChannelForKind(n,r))===null||s===void 0?void 0:s.readyState)==="open")return;yield mt(50)}throw new Re("could not establish ".concat(a," connection, state: ").concat(o.getICEConnectionState()),ge.InternalError)}()})}ensurePublisherConnected(e){return P(this,void 0,void 0,function*(){this.publisherConnectionPromise||(this.publisherConnectionPromise=this.ensureDataTransportConnected(e,!1)),yield this.publisherConnectionPromise})}verifyTransport(){return!(!this.pcManager||this.pcManager.currentState!==Ve.CONNECTED||!this.client.ws||this.client.ws.readyState===WebSocket.CLOSED)}negotiate(){return P(this,void 0,void 0,function*(){return new Promise((e,n)=>P(this,void 0,void 0,function*(){if(!this.pcManager){n(new rl("PC manager is closed"));return}this.pcManager.requirePublisher(),this.pcManager.publisher.getTransceivers().length==0&&!this.lossyDC&&!this.reliableDC&&this.createDataChannels();const i=new AbortController,r=()=>{i.abort(),this.log.debug("engine disconnected while negotiation was ongoing",this.logContext),e()};this.isClosed&&n("cannot negotiate on closed engine"),this.on(X.Closing,r),this.pcManager.publisher.once(ir.RTPVideoPayloadTypes,s=>{const o=new Map;s.forEach(a=>{const c=a.codec.toLowerCase();zk(c)&&o.set(a.payload,c)}),this.emit(X.RTPVideoMapUpdate,o)});try{yield this.pcManager.negotiate(i),e()}catch(s){s instanceof rl&&(this.fullReconnectOnNext=!0),this.handleDisconnect("negotiation",_i.RR_UNKNOWN),n(s)}finally{this.off(X.Closing,r)}}))})}dataChannelForKind(e,n){if(n){if(e===fe.LOSSY)return this.lossyDCSub;if(e===fe.RELIABLE)return this.reliableDCSub}else{if(e===fe.LOSSY)return this.lossyDC;if(e===fe.RELIABLE)return this.reliableDC}}sendSyncState(e,n){var i,r;if(!this.pcManager){this.log.warn("sync state cannot be sent without peer connection setup",this.logContext);return}const s=this.pcManager.subscriber.getLocalDescription(),o=this.pcManager.subscriber.getRemoteDescription(),a=(r=(i=this.signalOpts)===null||i===void 0?void 0:i.autoSubscribe)!==null&&r!==void 0?r:!0,c=new Array,l=new Array;e.forEach(u=>{u.isDesired!==a&&c.push(u.trackSid),u.isEnabled||l.push(u.trackSid)}),this.client.sendSyncState(new Ug({answer:s?No({sdp:s.sdp,type:s.type}):void 0,offer:o?No({sdp:o.sdp,type:o.type}):void 0,subscription:new sa({trackSids:c,subscribe:!a,participantTracks:[]}),publishTracks:Qk(n),dataChannels:this.dataChannelsInfo(),trackSidsDisabled:l,datachannelReceiveStates:this.reliableReceivedState.map((u,d)=>new Bg({publisherSid:d,lastSeq:u}))}))}failNext(){this.shouldFailNext=!0}dataChannelsInfo(){const e=[],n=(i,r)=>{(i==null?void 0:i.id)!==void 0&&i.id!==null&&e.push(new $g({label:i.label,id:i.id,target:r}))};return n(this.dataChannelForKind(fe.LOSSY),Bt.PUBLISHER),n(this.dataChannelForKind(fe.RELIABLE),Bt.PUBLISHER),n(this.dataChannelForKind(fe.LOSSY,!0),Bt.SUBSCRIBER),n(this.dataChannelForKind(fe.RELIABLE,!0),Bt.SUBSCRIBER),e}clearReconnectTimeout(){this.reconnectTimeout&&rt.clearTimeout(this.reconnectTimeout)}clearPendingReconnect(){this.clearReconnectTimeout(),this.reconnectAttempts=0}registerOnLineListener(){ht()&&window.addEventListener("online",this.handleBrowserOnLine)}deregisterOnLineListener(){ht()&&window.removeEventListener("online",this.handleBrowserOnLine)}}class Mi extends Error{}function $C(t){return t!==void 0&&t>13}function HC(t,e){const n=t.participantIdentity?t.participantIdentity:e.participantIdentity;t.participantIdentity=n,e.participantIdentity=n;const i=t.destinationIdentities.length!==0?t.destinationIdentities:e.destinationIdentities;t.destinationIdentities=i,e.destinationIdentities=i}class yl{constructor(e,n){this.lastUpdateAt=0,this.settingsCacheTime=3e3,this.attemptedRegions=[],this.serverUrl=new URL(e),this.token=n}updateToken(e){this.token=e}isCloud(){return ul(this.serverUrl)}getServerUrl(){return this.serverUrl}getNextBestRegionUrl(e){return P(this,void 0,void 0,function*(){if(!this.isCloud())throw Error("region availability is only supported for LiveKit Cloud domains");(!this.regionSettings||Date.now()-this.lastUpdateAt>this.settingsCacheTime)&&(this.regionSettings=yield this.fetchRegionSettings(e));const n=this.regionSettings.regions.filter(i=>!this.attemptedRegions.find(r=>r.url===i.url));if(n.length>0){const i=n[0];return this.attemptedRegions.push(i),me.debug("next region: ".concat(i.region)),i.url}else return null})}resetAttempts(){this.attemptedRegions=[]}fetchRegionSettings(e){return P(this,void 0,void 0,function*(){const n=yield fetch("".concat(zC(this.serverUrl),"/regions"),{headers:{authorization:"Bearer ".concat(this.token)},signal:e});if(n.ok){const i=yield n.json();return this.lastUpdateAt=Date.now(),i}else throw new Re("Could not fetch region settings: ".concat(n.statusText),n.status===401?ge.NotAllowed:ge.InternalError,n.status)})}setServerReportedRegions(e){this.regionSettings=e,this.lastUpdateAt=Date.now()}}function zC(t){return"".concat(t.protocol.replace("ws","http"),"//").concat(t.host,"/settings")}class N0{get info(){return this._info}constructor(e,n,i){this.reader=n,this.totalByteSize=i,this._info=e,this.bytesReceived=0}}class WC extends N0{handleChunkReceived(e){var n;this.bytesReceived+=e.content.byteLength;const i=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(n=this.onProgress)===null||n===void 0||n.call(this,i)}[Symbol.asyncIterator](){const e=this.reader.getReader();return{next:()=>P(this,void 0,void 0,function*(){try{const{done:n,value:i}=yield e.read();return n?{done:!0,value:void 0}:(this.handleChunkReceived(i),{done:!1,value:i.content})}catch{return{done:!0,value:void 0}}}),return(){return P(this,void 0,void 0,function*(){return e.releaseLock(),{done:!0,value:void 0}})}}}readAll(){return P(this,void 0,void 0,function*(){var e,n,i,r;let s=new Set;try{for(var o=!0,a=bn(this),c;c=yield a.next(),e=c.done,!e;o=!0){r=c.value,o=!1;const l=r;s.add(l)}}catch(l){n={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(n)throw n.error}}return Array.from(s)})}}class qC extends N0{constructor(e,n,i){super(e,n,i),this.receivedChunks=new Map}handleChunkReceived(e){var n;const i=vo(e.chunkIndex),r=this.receivedChunks.get(i);if(r&&r.version>e.version)return;this.receivedChunks.set(i,e),this.bytesReceived+=e.content.byteLength;const s=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(n=this.onProgress)===null||n===void 0||n.call(this,s)}[Symbol.asyncIterator](){const e=this.reader.getReader(),n=new TextDecoder;return{next:()=>P(this,void 0,void 0,function*(){try{const{done:i,value:r}=yield e.read();return i?{done:!0,value:void 0}:(this.handleChunkReceived(r),{done:!1,value:n.decode(r.content)})}catch{return{done:!0,value:void 0}}}),return(){return P(this,void 0,void 0,function*(){return e.releaseLock(),{done:!0,value:void 0}})}}}readAll(){return P(this,void 0,void 0,function*(){var e,n,i,r;let s="";try{for(var o=!0,a=bn(this),c;c=yield a.next(),e=c.done,!e;o=!0)r=c.value,o=!1,s+=r}catch(l){n={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(n)throw n.error}}return s})}}class L0{constructor(e,n,i){this.writableStream=e,this.defaultWriter=e.getWriter(),this.onClose=i,this.info=n}write(e){return this.defaultWriter.write(e)}close(){return P(this,void 0,void 0,function*(){var e;yield this.defaultWriter.close(),this.defaultWriter.releaseLock(),(e=this.onClose)===null||e===void 0||e.call(this)})}}class GC extends L0{}class KC extends L0{}class V0 extends M{constructor(e,n,i,r,s){super(e,i,s),this.sid=n,this.receiver=r}get isLocal(){return!1}setMuted(e){this.isMuted!==e&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?G.Muted:G.Unmuted,this))}setMediaStream(e){this.mediaStream=e;const n=i=>{i.track===this._mediaStreamTrack&&(e.removeEventListener("removetrack",n),this.receiver&&"playoutDelayHint"in this.receiver&&(this.receiver.playoutDelayHint=void 0),this.receiver=void 0,this._currentBitrate=0,this.emit(G.Ended,this))};e.addEventListener("removetrack",n)}start(){this.startMonitor(),super.enable()}stop(){this.stopMonitor(),super.disable()}getRTCStatsReport(){return P(this,void 0,void 0,function*(){var e;return!((e=this.receiver)===null||e===void 0)&&e.getStats?yield this.receiver.getStats():void 0})}setPlayoutDelay(e){this.receiver?"playoutDelayHint"in this.receiver?this.receiver.playoutDelayHint=e:this.log.warn("Playout delay not supported in this browser"):this.log.warn("Cannot set playout delay, track already ended")}getPlayoutDelay(){if(this.receiver){if("playoutDelayHint"in this.receiver)return this.receiver.playoutDelayHint;this.log.warn("Playout delay not supported in this browser")}else this.log.warn("Cannot get playout delay, track already ended");return 0}startMonitor(){this.monitorInterval||(this.monitorInterval=setInterval(()=>this.monitorReceiver(),Du)),eC()&&this.registerTimeSyncUpdate()}registerTimeSyncUpdate(){const e=()=>{var n;this.timeSyncHandle=requestAnimationFrame(()=>e());const i=(n=this.receiver)===null||n===void 0?void 0:n.getSynchronizationSources()[0];if(i){const{timestamp:r,rtpTimestamp:s}=i;s&&this.rtpTimestamp!==s&&(this.emit(G.TimeSyncUpdate,{timestamp:r,rtpTimestamp:s}),this.rtpTimestamp=s)}};e()}}class F0 extends V0{constructor(e,n,i,r,s,o){super(e,n,M.Kind.Audio,i,o),this.monitorReceiver=()=>P(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}const a=yield this.getReceiverStats();a&&this.prevStats&&this.receiver&&(this._currentBitrate=ca(a,this.prevStats)),this.prevStats=a}),this.audioContext=r,this.webAudioPluginNodes=[],s&&(this.sinkId=s.deviceId)}setVolume(e){var n;for(const i of this.attachedElements)this.audioContext?(n=this.gainNode)===null||n===void 0||n.gain.setTargetAtTime(e,0,.1):i.volume=e;on()&&this._mediaStreamTrack._setVolume(e),this.elementVolume=e}getVolume(){if(this.elementVolume)return this.elementVolume;if(on())return 1;let e=0;return this.attachedElements.forEach(n=>{n.volume>e&&(e=n.volume)}),e}setSinkId(e){return P(this,void 0,void 0,function*(){this.sinkId=e,yield Promise.all(this.attachedElements.map(n=>{if(ll(n))return n.setSinkId(e)}))})}attach(e){const n=this.attachedElements.length===0;return e?super.attach(e):e=super.attach(),this.sinkId&&ll(e)&&e.setSinkId(this.sinkId).catch(i=>{this.log.error("Failed to set sink id on remote audio track",i,this.logContext)}),this.audioContext&&n&&(this.log.debug("using audio context mapping",this.logContext),this.connectWebAudio(this.audioContext,e),e.volume=0,e.muted=!0),this.elementVolume&&this.setVolume(this.elementVolume),e}detach(e){let n;return e?(n=super.detach(e),this.audioContext&&(this.attachedElements.length>0?this.connectWebAudio(this.audioContext,this.attachedElements[0]):this.disconnectWebAudio())):(n=super.detach(),this.disconnectWebAudio()),n}setAudioContext(e){this.audioContext=e,e&&this.attachedElements.length>0?this.connectWebAudio(e,this.attachedElements[0]):e||this.disconnectWebAudio()}setWebAudioPlugins(e){this.webAudioPluginNodes=e,this.attachedElements.length>0&&this.audioContext&&this.connectWebAudio(this.audioContext,this.attachedElements[0])}connectWebAudio(e,n){this.disconnectWebAudio(),this.sourceNode=e.createMediaStreamSource(n.srcObject);let i=this.sourceNode;this.webAudioPluginNodes.forEach(r=>{i.connect(r),i=r}),this.gainNode=e.createGain(),i.connect(this.gainNode),this.gainNode.connect(e.destination),this.elementVolume&&this.gainNode.gain.setTargetAtTime(this.elementVolume,0,.1),e.state!=="running"&&e.resume().then(()=>{e.state!=="running"&&this.emit(G.AudioPlaybackFailed,new Error("Audio Context couldn't be started automatically"))}).catch(r=>{this.emit(G.AudioPlaybackFailed,r)})}disconnectWebAudio(){var e,n;(e=this.gainNode)===null||e===void 0||e.disconnect(),(n=this.sourceNode)===null||n===void 0||n.disconnect(),this.gainNode=void 0,this.sourceNode=void 0}getReceiverStats(){return P(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;const e=yield this.receiver.getStats();let n;return e.forEach(i=>{i.type==="inbound-rtp"&&(n={type:"audio",streamId:i.id,timestamp:i.timestamp,jitter:i.jitter,bytesReceived:i.bytesReceived,concealedSamples:i.concealedSamples,concealmentEvents:i.concealmentEvents,silentConcealedSamples:i.silentConcealedSamples,silentConcealmentEvents:i.silentConcealmentEvents,totalAudioEnergy:i.totalAudioEnergy,totalSamplesDuration:i.totalSamplesDuration})}),n})}}const Xa=100;class ZC extends V0{constructor(e,n,i,r,s){super(e,n,M.Kind.Video,i,s),this.elementInfos=[],this.monitorReceiver=()=>P(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}const o=yield this.getReceiverStats();o&&this.prevStats&&this.receiver&&(this._currentBitrate=ca(o,this.prevStats)),this.prevStats=o}),this.debouncedHandleResize=_u(()=>{this.updateDimensions()},Xa),this.adaptiveStreamSettings=r}get isAdaptiveStream(){return this.adaptiveStreamSettings!==void 0}get mediaStreamTrack(){return this._mediaStreamTrack}setMuted(e){super.setMuted(e),this.attachedElements.forEach(n=>{e?tr(this._mediaStreamTrack,n):zi(this._mediaStreamTrack,n)})}attach(e){if(e?super.attach(e):e=super.attach(),this.adaptiveStreamSettings&&this.elementInfos.find(n=>n.element===e)===void 0){const n=new YC(e);this.observeElementInfo(n)}return e}observeElementInfo(e){this.adaptiveStreamSettings&&this.elementInfos.find(n=>n===e)===void 0?(e.handleResize=()=>{this.debouncedHandleResize()},e.handleVisibilityChanged=()=>{this.updateVisibility()},this.elementInfos.push(e),e.observe(),this.debouncedHandleResize(),this.updateVisibility()):this.log.warn("visibility resize observer not triggered",this.logContext)}stopObservingElementInfo(e){if(!this.isAdaptiveStream){this.log.warn("stopObservingElementInfo ignored",this.logContext);return}const n=this.elementInfos.filter(i=>i===e);for(const i of n)i.stopObserving();this.elementInfos=this.elementInfos.filter(i=>i!==e),this.updateVisibility(),this.debouncedHandleResize()}detach(e){let n=[];if(e)return this.stopObservingElement(e),super.detach(e);n=super.detach();for(const i of n)this.stopObservingElement(i);return n}getDecoderImplementation(){var e;return(e=this.prevStats)===null||e===void 0?void 0:e.decoderImplementation}getReceiverStats(){return P(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;const e=yield this.receiver.getStats();let n,i="",r=new Map;return e.forEach(s=>{s.type==="inbound-rtp"?(i=s.codecId,n={type:"video",streamId:s.id,framesDecoded:s.framesDecoded,framesDropped:s.framesDropped,framesReceived:s.framesReceived,packetsReceived:s.packetsReceived,packetsLost:s.packetsLost,frameWidth:s.frameWidth,frameHeight:s.frameHeight,pliCount:s.pliCount,firCount:s.firCount,nackCount:s.nackCount,jitter:s.jitter,timestamp:s.timestamp,bytesReceived:s.bytesReceived,decoderImplementation:s.decoderImplementation}):s.type==="codec"&&r.set(s.id,s)}),n&&i!==""&&r.get(i)&&(n.mimeType=r.get(i).mimeType),n})}stopObservingElement(e){const n=this.elementInfos.filter(i=>i.element===e);for(const i of n)this.stopObservingElementInfo(i)}handleAppVisibilityChanged(){const e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return P(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),this.isAdaptiveStream&&this.updateVisibility()})}updateVisibility(){var e,n;const i=this.elementInfos.reduce((a,c)=>Math.max(a,c.visibilityChangedAt||0),0),r=!((n=(e=this.adaptiveStreamSettings)===null||e===void 0?void 0:e.pauseVideoInBackground)!==null&&n!==void 0)||n?this.isInBackground:!1,s=this.elementInfos.some(a=>a.pictureInPicture),o=this.elementInfos.some(a=>a.visible)&&!r||s;if(this.lastVisible!==o){if(!o&&Date.now()-i<Xa){rt.setTimeout(()=>{this.updateVisibility()},Xa);return}this.lastVisible=o,this.emit(G.VisibilityChanged,o,this)}}updateDimensions(){var e,n;let i=0,r=0;const s=this.getPixelDensity();for(const o of this.elementInfos){const a=o.width()*s,c=o.height()*s;a+c>i+r&&(i=a,r=c)}((e=this.lastDimensions)===null||e===void 0?void 0:e.width)===i&&((n=this.lastDimensions)===null||n===void 0?void 0:n.height)===r||(this.lastDimensions={width:i,height:r},this.emit(G.VideoDimensionsChanged,this.lastDimensions,this))}getPixelDensity(){var e;const n=(e=this.adaptiveStreamSettings)===null||e===void 0?void 0:e.pixelDensity;return n==="screen"?jf():n||(jf()>2?2:1)}}class YC{get visible(){return this.isPiP||this.isIntersecting}get pictureInPicture(){return this.isPiP}constructor(e,n){this.onVisibilityChanged=i=>{var r;const{target:s,isIntersecting:o}=i;s===this.element&&(this.isIntersecting=o,this.isPiP=Vr(this.element),this.visibilityChangedAt=Date.now(),(r=this.handleVisibilityChanged)===null||r===void 0||r.call(this))},this.onEnterPiP=()=>{var i,r,s;(r=(i=window.documentPictureInPicture)===null||i===void 0?void 0:i.window)===null||r===void 0||r.addEventListener("pagehide",this.onLeavePiP),this.isPiP=Vr(this.element),(s=this.handleVisibilityChanged)===null||s===void 0||s.call(this)},this.onLeavePiP=()=>{var i;this.isPiP=Vr(this.element),(i=this.handleVisibilityChanged)===null||i===void 0||i.call(this)},this.element=e,this.isIntersecting=n??bl(e),this.isPiP=ht()&&Vr(e),this.visibilityChangedAt=0}width(){return this.element.clientWidth}height(){return this.element.clientHeight}observe(){var e,n,i;this.isIntersecting=bl(this.element),this.isPiP=Vr(this.element),this.element.handleResize=()=>{var r;(r=this.handleResize)===null||r===void 0||r.call(this)},this.element.handleVisibilityChanged=this.onVisibilityChanged,Bf().observe(this.element),Uf().observe(this.element),this.element.addEventListener("enterpictureinpicture",this.onEnterPiP),this.element.addEventListener("leavepictureinpicture",this.onLeavePiP),(e=window.documentPictureInPicture)===null||e===void 0||e.addEventListener("enter",this.onEnterPiP),(i=(n=window.documentPictureInPicture)===null||n===void 0?void 0:n.window)===null||i===void 0||i.addEventListener("pagehide",this.onLeavePiP)}stopObserving(){var e,n,i,r,s;(e=Bf())===null||e===void 0||e.unobserve(this.element),(n=Uf())===null||n===void 0||n.unobserve(this.element),this.element.removeEventListener("enterpictureinpicture",this.onEnterPiP),this.element.removeEventListener("leavepictureinpicture",this.onLeavePiP),(i=window.documentPictureInPicture)===null||i===void 0||i.removeEventListener("enter",this.onEnterPiP),(s=(r=window.documentPictureInPicture)===null||r===void 0?void 0:r.window)===null||s===void 0||s.removeEventListener("pagehide",this.onLeavePiP)}}function Vr(t){var e,n;return document.pictureInPictureElement===t?!0:!((e=window.documentPictureInPicture)===null||e===void 0)&&e.window?bl(t,(n=window.documentPictureInPicture)===null||n===void 0?void 0:n.window):!1}function bl(t,e){const n=e||window;let i=t.offsetTop,r=t.offsetLeft;const s=t.offsetWidth,o=t.offsetHeight,{hidden:a}=t,{display:c}=getComputedStyle(t);for(;t.offsetParent;)t=t.offsetParent,i+=t.offsetTop,r+=t.offsetLeft;return i<n.pageYOffset+n.innerHeight&&r<n.pageXOffset+n.innerWidth&&i+o>n.pageYOffset&&r+s>n.pageXOffset&&!a&&c!=="none"}class gn extends ln.EventEmitter{constructor(e,n,i,r){var s;super(),this.metadataMuted=!1,this.encryption=yt.NONE,this.log=me,this.handleMuted=()=>{this.emit(G.Muted)},this.handleUnmuted=()=>{this.emit(G.Unmuted)},this.log=Cn((s=r==null?void 0:r.loggerName)!==null&&s!==void 0?s:zt.Publication),this.loggerContextCb=this.loggerContextCb,this.setMaxListeners(100),this.kind=e,this.trackSid=n,this.trackName=i,this.source=M.Source.Unknown}setTrack(e){this.track&&(this.track.off(G.Muted,this.handleMuted),this.track.off(G.Unmuted,this.handleUnmuted)),this.track=e,e&&(e.on(G.Muted,this.handleMuted),e.on(G.Unmuted,this.handleUnmuted))}get logContext(){var e;return Object.assign(Object.assign({},(e=this.loggerContextCb)===null||e===void 0?void 0:e.call(this)),he(this))}get isMuted(){return this.metadataMuted}get isEnabled(){return!0}get isSubscribed(){return this.track!==void 0}get isEncrypted(){return this.encryption!==yt.NONE}get audioTrack(){if(en(this.track))return this.track}get videoTrack(){if(vr(this.track))return this.track}updateInfo(e){this.trackSid=e.sid,this.trackName=e.name,this.source=M.sourceFromProto(e.source),this.mimeType=e.mimeType,this.kind===M.Kind.Video&&e.width>0&&(this.dimensions={width:e.width,height:e.height},this.simulcasted=e.simulcast),this.encryption=e.encryption,this.trackInfo=e,this.log.debug("update publication info",Object.assign(Object.assign({},this.logContext),{info:e}))}}(function(t){(function(e){e.Desired="desired",e.Subscribed="subscribed",e.Unsubscribed="unsubscribed"})(t.SubscriptionStatus||(t.SubscriptionStatus={})),function(e){e.Allowed="allowed",e.NotAllowed="not_allowed"}(t.PermissionStatus||(t.PermissionStatus={}))})(gn||(gn={}));class Sl extends gn{get isUpstreamPaused(){var e;return(e=this.track)===null||e===void 0?void 0:e.isUpstreamPaused}constructor(e,n,i,r){super(e,n.sid,n.name,r),this.track=void 0,this.handleTrackEnded=()=>{this.emit(G.Ended)},this.updateInfo(n),this.setTrack(i)}setTrack(e){this.track&&this.track.off(G.Ended,this.handleTrackEnded),super.setTrack(e),e&&e.on(G.Ended,this.handleTrackEnded)}get isMuted(){return this.track?this.track.isMuted:super.isMuted}get audioTrack(){return super.audioTrack}get videoTrack(){return super.videoTrack}get isLocal(){return!0}mute(){return P(this,void 0,void 0,function*(){var e;return(e=this.track)===null||e===void 0?void 0:e.mute()})}unmute(){return P(this,void 0,void 0,function*(){var e;return(e=this.track)===null||e===void 0?void 0:e.unmute()})}pauseUpstream(){return P(this,void 0,void 0,function*(){var e;yield(e=this.track)===null||e===void 0?void 0:e.pauseUpstream()})}resumeUpstream(){return P(this,void 0,void 0,function*(){var e;yield(e=this.track)===null||e===void 0?void 0:e.resumeUpstream()})}getTrackFeatures(){var e;if(en(this.track)){const n=this.track.getSourceTrackSettings(),i=new Set;return n.autoGainControl&&i.add(et.TF_AUTO_GAIN_CONTROL),n.echoCancellation&&i.add(et.TF_ECHO_CANCELLATION),n.noiseSuppression&&i.add(et.TF_NOISE_SUPPRESSION),n.channelCount&&n.channelCount>1&&i.add(et.TF_STEREO),!((e=this.options)===null||e===void 0)&&e.dtx||i.add(et.TF_NO_DTX),this.track.enhancedNoiseCancellation&&i.add(et.TF_ENHANCED_NOISE_CANCELLATION),Array.from(i.values())}else return[]}}function la(t,e){return P(this,void 0,void 0,function*(){t??(t={});let n=!1;const{audioProcessor:i,videoProcessor:r,optionsWithoutProcessor:s}=P0(t);let o=s.audio,a=s.video;if(i&&typeof s.audio=="object"&&(s.audio.processor=i),r&&typeof s.video=="object"&&(s.video.processor=r),t.audio&&typeof s.audio=="object"&&typeof s.audio.deviceId=="string"){const d=s.audio.deviceId;s.audio.deviceId={exact:d},n=!0,o=Object.assign(Object.assign({},s.audio),{deviceId:{ideal:d}})}if(s.video&&typeof s.video=="object"&&typeof s.video.deviceId=="string"){const d=s.video.deviceId;s.video.deviceId={exact:d},n=!0,a=Object.assign(Object.assign({},s.video),{deviceId:{ideal:d}})}(s.audio===!0||typeof s.audio=="object"&&!s.audio.deviceId)&&(s.audio={deviceId:"default"}),s.video===!0?s.video={deviceId:"default"}:typeof s.video=="object"&&!s.video.deviceId&&(s.video.deviceId="default");const c=x0(s,A0,I0),l=Pu(c),u=navigator.mediaDevices.getUserMedia(l);s.audio&&(tt.userMediaPromiseMap.set("audioinput",u),u.catch(()=>tt.userMediaPromiseMap.delete("audioinput"))),s.video&&(tt.userMediaPromiseMap.set("videoinput",u),u.catch(()=>tt.userMediaPromiseMap.delete("videoinput")));try{const d=yield u;return yield Promise.all(d.getTracks().map(h=>P(this,void 0,void 0,function*(){const p=h.kind==="audio";let g=p?c.audio:c.video;(typeof g=="boolean"||!g)&&(g={});let f;const y=p?l.audio:l.video;typeof y!="boolean"&&(f=y);const v=h.getSettings().deviceId;f!=null&&f.deviceId&&Hn(f.deviceId)!==v?f.deviceId=v:f||(f={deviceId:v});const C=PC(h,f,e);return C.kind===M.Kind.Video?C.source=M.Source.Camera:C.kind===M.Kind.Audio&&(C.source=M.Source.Microphone),C.mediaStream=d,en(C)&&i?yield C.setProcessor(i):vr(C)&&r&&(yield C.setProcessor(r)),C})))}catch(d){if(!n)throw d;return la(Object.assign(Object.assign({},t),{audio:o,video:a}),e)}})}function JC(t){return P(this,void 0,void 0,function*(){return(yield la({audio:!1,video:!0}))[0]})}function XC(t){return P(this,void 0,void 0,function*(){return(yield la({audio:!0,video:!1}))[0]})}var Un;(function(t){t.Excellent="excellent",t.Good="good",t.Poor="poor",t.Lost="lost",t.Unknown="unknown"})(Un||(Un={}));function QC(t){switch(t){case Hr.EXCELLENT:return Un.Excellent;case Hr.GOOD:return Un.Good;case Hr.POOR:return Un.Poor;case Hr.LOST:return Un.Lost;default:return Un.Unknown}}class j0 extends ln.EventEmitter{get logContext(){var e,n;return Object.assign({},(n=(e=this.loggerOptions)===null||e===void 0?void 0:e.loggerContextCb)===null||n===void 0?void 0:n.call(e))}get isEncrypted(){return this.trackPublications.size>0&&Array.from(this.trackPublications.values()).every(e=>e.isEncrypted)}get isAgent(){var e;return((e=this.permissions)===null||e===void 0?void 0:e.agent)||this.kind===bi.AGENT}get isActive(){var e;return((e=this.participantInfo)===null||e===void 0?void 0:e.state)===Xi.ACTIVE}get kind(){return this._kind}get attributes(){return Object.freeze(Object.assign({},this._attributes))}constructor(e,n,i,r,s,o){let a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:bi.STANDARD;var c;super(),this.audioLevel=0,this.isSpeaking=!1,this._connectionQuality=Un.Unknown,this.log=me,this.log=Cn((c=o==null?void 0:o.loggerName)!==null&&c!==void 0?c:zt.Participant),this.loggerOptions=o,this.setMaxListeners(100),this.sid=e,this.identity=n,this.name=i,this.metadata=r,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this._kind=a,this._attributes=s??{}}getTrackPublications(){return Array.from(this.trackPublications.values())}getTrackPublication(e){for(const[,n]of this.trackPublications)if(n.source===e)return n}getTrackPublicationByName(e){for(const[,n]of this.trackPublications)if(n.trackName===e)return n}waitUntilActive(){return this.isActive?Promise.resolve():this.activeFuture?this.activeFuture.promise:(this.activeFuture=new Wi,this.once(U.Active,()=>{var e,n;(n=(e=this.activeFuture)===null||e===void 0?void 0:e.resolve)===null||n===void 0||n.call(e),this.activeFuture=void 0}),this.activeFuture.promise)}get connectionQuality(){return this._connectionQuality}get isCameraEnabled(){var e;const n=this.getTrackPublication(M.Source.Camera);return!(!((e=n==null?void 0:n.isMuted)!==null&&e!==void 0)||e)}get isMicrophoneEnabled(){var e;const n=this.getTrackPublication(M.Source.Microphone);return!(!((e=n==null?void 0:n.isMuted)!==null&&e!==void 0)||e)}get isScreenShareEnabled(){return!!this.getTrackPublication(M.Source.ScreenShare)}get isLocal(){return!1}get joinedAt(){return this.participantInfo?new Date(Number.parseInt(this.participantInfo.joinedAt.toString())*1e3):new Date}updateInfo(e){var n;return this.participantInfo&&this.participantInfo.sid===e.sid&&this.participantInfo.version>e.version?!1:(this.identity=e.identity,this.sid=e.sid,this._setName(e.name),this._setMetadata(e.metadata),this._setAttributes(e.attributes),e.state===Xi.ACTIVE&&((n=this.participantInfo)===null||n===void 0?void 0:n.state)!==Xi.ACTIVE&&this.emit(U.Active),e.permission&&this.setPermissions(e.permission),this.participantInfo=e,!0)}_setMetadata(e){const n=this.metadata!==e,i=this.metadata;this.metadata=e,n&&this.emit(U.ParticipantMetadataChanged,i)}_setName(e){const n=this.name!==e;this.name=e,n&&this.emit(U.ParticipantNameChanged,e)}_setAttributes(e){const n=tC(this.attributes,e);this._attributes=e,Object.keys(n).length>0&&this.emit(U.AttributesChanged,n)}setPermissions(e){var n,i,r,s,o,a;const c=this.permissions,l=e.canPublish!==((n=this.permissions)===null||n===void 0?void 0:n.canPublish)||e.canSubscribe!==((i=this.permissions)===null||i===void 0?void 0:i.canSubscribe)||e.canPublishData!==((r=this.permissions)===null||r===void 0?void 0:r.canPublishData)||e.hidden!==((s=this.permissions)===null||s===void 0?void 0:s.hidden)||e.recorder!==((o=this.permissions)===null||o===void 0?void 0:o.recorder)||e.canPublishSources.length!==this.permissions.canPublishSources.length||e.canPublishSources.some((u,d)=>{var h;return u!==((h=this.permissions)===null||h===void 0?void 0:h.canPublishSources[d])})||e.canSubscribeMetrics!==((a=this.permissions)===null||a===void 0?void 0:a.canSubscribeMetrics);return this.permissions=e,l&&this.emit(U.ParticipantPermissionsChanged,c),l}setIsSpeaking(e){e!==this.isSpeaking&&(this.isSpeaking=e,e&&(this.lastSpokeAt=new Date),this.emit(U.IsSpeakingChanged,e))}setConnectionQuality(e){const n=this._connectionQuality;this._connectionQuality=QC(e),n!==this._connectionQuality&&this.emit(U.ConnectionQualityChanged,this._connectionQuality)}setDisconnected(){var e,n;this.activeFuture&&((n=(e=this.activeFuture).reject)===null||n===void 0||n.call(e,new Error("Participant disconnected")),this.activeFuture=void 0)}setAudioContext(e){this.audioContext=e,this.audioTrackPublications.forEach(n=>en(n.track)&&n.track.setAudioContext(e))}addTrackPublication(e){e.on(G.Muted,()=>{this.emit(U.TrackMuted,e)}),e.on(G.Unmuted,()=>{this.emit(U.TrackUnmuted,e)});const n=e;switch(n.track&&(n.track.sid=e.trackSid),this.trackPublications.set(e.trackSid,e),e.kind){case M.Kind.Audio:this.audioTrackPublications.set(e.trackSid,e);break;case M.Kind.Video:this.videoTrackPublications.set(e.trackSid,e);break}}}function ew(t){var e,n,i;if(!t.participantSid&&!t.participantIdentity)throw new Error("Invalid track permission, must provide at least one of participantIdentity and participantSid");return new Fg({participantIdentity:(e=t.participantIdentity)!==null&&e!==void 0?e:"",participantSid:(n=t.participantSid)!==null&&n!==void 0?n:"",allTracks:(i=t.allowAll)!==null&&i!==void 0?i:!1,trackSids:t.allowedTrackSids||[]})}const oh=15e3;class tw extends j0{constructor(e,n,i,r,s){super(e,n,void 0,void 0,void 0,{loggerName:r.loggerName,loggerContextCb:()=>this.engine.logContext}),this.pendingPublishing=new Set,this.pendingPublishPromises=new Map,this.participantTrackPermissions=[],this.allParticipantsAllowedToSubscribe=!0,this.encryptionType=yt.NONE,this.enabledPublishVideoCodecs=[],this.pendingAcks=new Map,this.pendingResponses=new Map,this.handleReconnecting=()=>{this.reconnectFuture||(this.reconnectFuture=new Wi)},this.handleReconnected=()=>{var o,a;(a=(o=this.reconnectFuture)===null||o===void 0?void 0:o.resolve)===null||a===void 0||a.call(o),this.reconnectFuture=void 0,this.updateTrackSubscriptionPermissions()},this.handleDisconnected=()=>{var o,a,c,l,u,d;this.reconnectFuture&&(this.reconnectFuture.promise.catch(h=>this.log.warn(h.message,this.logContext)),(a=(o=this.reconnectFuture)===null||o===void 0?void 0:o.reject)===null||a===void 0||a.call(o,"Got disconnected during reconnection attempt"),this.reconnectFuture=void 0),this.signalConnectedFuture&&((l=(c=this.signalConnectedFuture).reject)===null||l===void 0||l.call(c,"Got disconnected without signal connected"),this.signalConnectedFuture=void 0),(d=(u=this.activeAgentFuture)===null||u===void 0?void 0:u.reject)===null||d===void 0||d.call(u,"Got disconnected without active agent present"),this.activeAgentFuture=void 0,this.firstActiveAgent=void 0},this.handleSignalConnected=o=>{var a,c;o.participant&&this.updateInfo(o.participant),this.signalConnectedFuture||(this.signalConnectedFuture=new Wi),(c=(a=this.signalConnectedFuture).resolve)===null||c===void 0||c.call(a)},this.handleSignalRequestResponse=o=>{const{requestId:a,reason:c,message:l}=o,u=this.pendingSignalRequests.get(a);u&&(c!==Cu.OK&&u.reject(new Df(l,c)),this.pendingSignalRequests.delete(a))},this.handleDataPacket=o=>{switch(o.value.case){case"rpcResponse":let a=o.value.value,c=null,l=null;a.value.case==="payload"?c=a.value.value:a.value.case==="error"&&(l=je.fromProto(a.value.value)),this.handleIncomingRpcResponse(a.requestId,c,l);break;case"rpcAck":let u=o.value.value;this.handleIncomingRpcAck(u.requestId);break}},this.updateTrackSubscriptionPermissions=()=>{this.log.debug("updating track subscription permissions",Object.assign(Object.assign({},this.logContext),{allParticipantsAllowed:this.allParticipantsAllowedToSubscribe,participantTrackPermissions:this.participantTrackPermissions})),this.engine.client.sendUpdateSubscriptionPermissions(this.allParticipantsAllowedToSubscribe,this.participantTrackPermissions.map(o=>ew(o)))},this.onTrackUnmuted=o=>{this.onTrackMuted(o,o.isUpstreamPaused)},this.onTrackMuted=(o,a)=>{if(a===void 0&&(a=!0),!o.sid){this.log.error("could not update mute status for unpublished track",Object.assign(Object.assign({},this.logContext),he(o)));return}this.engine.updateMuteStatus(o.sid,a)},this.onTrackUpstreamPaused=o=>{this.log.debug("upstream paused",Object.assign(Object.assign({},this.logContext),he(o))),this.onTrackMuted(o,!0)},this.onTrackUpstreamResumed=o=>{this.log.debug("upstream resumed",Object.assign(Object.assign({},this.logContext),he(o))),this.onTrackMuted(o,o.isMuted)},this.onTrackFeatureUpdate=o=>{const a=this.audioTrackPublications.get(o.sid);if(!a){this.log.warn("Could not update local audio track settings, missing publication for track ".concat(o.sid),this.logContext);return}this.engine.client.sendUpdateLocalAudioTrack(a.trackSid,a.getTrackFeatures())},this.handleSubscribedQualityUpdate=o=>P(this,void 0,void 0,function*(){var a,c,l,u,d;if(!(!((d=this.roomOptions)===null||d===void 0)&&d.dynacast))return;const h=this.videoTrackPublications.get(o.trackSid);if(!h){this.log.warn("received subscribed quality update for unknown track",Object.assign(Object.assign({},this.logContext),{trackSid:o.trackSid}));return}if(!h.videoTrack)return;const p=yield h.videoTrack.setPublishingCodecs(o.subscribedCodecs);try{for(var g=!0,f=bn(p),y;y=yield f.next(),a=y.done,!a;g=!0){u=y.value,g=!1;const v=u;_k(v)&&(this.log.debug("publish ".concat(v," for ").concat(h.videoTrack.sid),Object.assign(Object.assign({},this.logContext),he(h))),yield this.publishAdditionalCodecForTrack(h.videoTrack,v,h.options))}}catch(v){c={error:v}}finally{try{!g&&!a&&(l=f.return)&&(yield l.call(f))}finally{if(c)throw c.error}}}),this.handleLocalTrackUnpublished=o=>{const a=this.trackPublications.get(o.trackSid);if(!a){this.log.warn("received unpublished event for unknown track",Object.assign(Object.assign({},this.logContext),{trackSid:o.trackSid}));return}this.unpublishTrack(a.track)},this.handleTrackEnded=o=>P(this,void 0,void 0,function*(){if(o.source===M.Source.ScreenShare||o.source===M.Source.ScreenShareAudio)this.log.debug("unpublishing local track due to TrackEnded",Object.assign(Object.assign({},this.logContext),he(o))),this.unpublishTrack(o);else if(o.isUserProvided)yield o.mute();else if(mn(o)||Nn(o))try{if(ht())try{const a=yield navigator==null?void 0:navigator.permissions.query({name:o.source===M.Source.Camera?"camera":"microphone"});if(a&&a.state==="denied")throw this.log.warn("user has revoked access to ".concat(o.source),Object.assign(Object.assign({},this.logContext),he(o))),a.onchange=()=>{a.state!=="denied"&&(o.isMuted||o.restartTrack(),a.onchange=null)},new Error("GetUserMedia Permission denied")}catch{}o.isMuted||(this.log.debug("track ended, attempting to use a different device",Object.assign(Object.assign({},this.logContext),he(o))),mn(o)?yield o.restartTrack({deviceId:"default"}):yield o.restartTrack())}catch{this.log.warn("could not restart track, muting instead",Object.assign(Object.assign({},this.logContext),he(o))),yield o.mute()}}),this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this.engine=i,this.roomOptions=r,this.setupEngine(i),this.activeDeviceMap=new Map([["audioinput","default"],["videoinput","default"],["audiooutput","default"]]),this.pendingSignalRequests=new Map,this.rpcHandlers=s}get lastCameraError(){return this.cameraError}get lastMicrophoneError(){return this.microphoneError}get isE2EEEnabled(){return this.encryptionType!==yt.NONE}getTrackPublication(e){const n=super.getTrackPublication(e);if(n)return n}getTrackPublicationByName(e){const n=super.getTrackPublicationByName(e);if(n)return n}setupEngine(e){this.engine=e,this.engine.on(X.RemoteMute,(n,i)=>{const r=this.trackPublications.get(n);!r||!r.track||(i?r.mute():r.unmute())}),this.engine.on(X.Connected,this.handleReconnected).on(X.SignalConnected,this.handleSignalConnected).on(X.SignalRestarted,this.handleReconnected).on(X.SignalResumed,this.handleReconnected).on(X.Restarting,this.handleReconnecting).on(X.Resuming,this.handleReconnecting).on(X.LocalTrackUnpublished,this.handleLocalTrackUnpublished).on(X.SubscribedQualityUpdate,this.handleSubscribedQualityUpdate).on(X.Disconnected,this.handleDisconnected).on(X.SignalRequestResponse,this.handleSignalRequestResponse).on(X.DataPacketReceived,this.handleDataPacket),this.signalConnectedFuture=void 0}setMetadata(e){return P(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({metadata:e})})}setName(e){return P(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({name:e})})}setAttributes(e){return P(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({attributes:e})})}requestMetadataUpdate(e){return P(this,arguments,void 0,function(n){var i=this;let{metadata:r,name:s,attributes:o}=n;return function*(){return new Promise((a,c)=>P(i,void 0,void 0,function*(){var l,u;try{let d=!1;const h=yield this.engine.client.sendUpdateLocalMetadata((l=r??this.metadata)!==null&&l!==void 0?l:"",(u=s??this.name)!==null&&u!==void 0?u:"",o),p=performance.now();for(this.pendingSignalRequests.set(h,{resolve:a,reject:g=>{c(g),d=!0},values:{name:s,metadata:r,attributes:o}});performance.now()-p<5e3&&!d;){if((!s||this.name===s)&&(!r||this.metadata===r)&&(!o||Object.entries(o).every(g=>{let[f,y]=g;return this.attributes[f]===y||y===""&&!this.attributes[f]}))){this.pendingSignalRequests.delete(h),a();return}yield mt(50)}c(new Df("Request to update local metadata timed out","TimeoutError"))}catch(d){d instanceof Error&&c(d)}}))}()})}setCameraEnabled(e,n,i){return this.setTrackEnabled(M.Source.Camera,e,n,i)}setMicrophoneEnabled(e,n,i){return this.setTrackEnabled(M.Source.Microphone,e,n,i)}setScreenShareEnabled(e,n,i){return this.setTrackEnabled(M.Source.ScreenShare,e,n,i)}setPermissions(e){const n=this.permissions,i=super.setPermissions(e);return i&&n&&this.emit(U.ParticipantPermissionsChanged,n),i}setE2EEEnabled(e){return P(this,void 0,void 0,function*(){this.encryptionType=e?yt.GCM:yt.NONE,yield this.republishAllTracks(void 0,!1)})}setTrackEnabled(e,n,i,r){return P(this,void 0,void 0,function*(){var s,o;this.log.debug("setTrackEnabled",Object.assign(Object.assign({},this.logContext),{source:e,enabled:n})),this.republishPromise&&(yield this.republishPromise);let a=this.getTrackPublication(e);if(n)if(a)yield a.unmute();else{let c;if(this.pendingPublishing.has(e)){const l=yield this.waitForPendingPublicationOfSource(e);return l||this.log.info("waiting for pending publication promise timed out",Object.assign(Object.assign({},this.logContext),{source:e})),yield l==null?void 0:l.unmute(),l}this.pendingPublishing.add(e);try{switch(e){case M.Source.Camera:c=yield this.createTracks({video:(s=i)!==null&&s!==void 0?s:!0});break;case M.Source.Microphone:c=yield this.createTracks({audio:(o=i)!==null&&o!==void 0?o:!0});break;case M.Source.ScreenShare:c=yield this.createScreenTracks(Object.assign({},i));break;default:throw new Sn(e)}}catch(l){throw c==null||c.forEach(u=>{u.stop()}),l instanceof Error&&this.emit(U.MediaDevicesError,l,pl(e)),this.pendingPublishing.delete(e),l}for(const l of c)e===M.Source.Microphone&&en(l)&&(r!=null&&r.preConnectBuffer)&&(this.log.info("starting preconnect buffer for microphone",Object.assign({},this.logContext)),l.startPreConnectBuffer());try{const l=[];for(const d of c)this.log.info("publishing track",Object.assign(Object.assign({},this.logContext),he(d))),l.push(this.publishTrack(d,r));[a]=yield Promise.all(l)}catch(l){throw c==null||c.forEach(u=>{u.stop()}),l}finally{this.pendingPublishing.delete(e)}}else if(!(a!=null&&a.track)&&this.pendingPublishing.has(e)&&(a=yield this.waitForPendingPublicationOfSource(e),a||this.log.info("waiting for pending publication promise timed out",Object.assign(Object.assign({},this.logContext),{source:e}))),a&&a.track)if(e===M.Source.ScreenShare){a=yield this.unpublishTrack(a.track);const c=this.getTrackPublication(M.Source.ScreenShareAudio);c&&c.track&&this.unpublishTrack(c.track)}else yield a.mute();return a})}enableCameraAndMicrophone(){return P(this,void 0,void 0,function*(){if(!(this.pendingPublishing.has(M.Source.Camera)||this.pendingPublishing.has(M.Source.Microphone))){this.pendingPublishing.add(M.Source.Camera),this.pendingPublishing.add(M.Source.Microphone);try{const e=yield this.createTracks({audio:!0,video:!0});yield Promise.all(e.map(n=>this.publishTrack(n)))}finally{this.pendingPublishing.delete(M.Source.Camera),this.pendingPublishing.delete(M.Source.Microphone)}}})}createTracks(e){return P(this,void 0,void 0,function*(){var n,i;e??(e={});const r=x0(e,(n=this.roomOptions)===null||n===void 0?void 0:n.audioCaptureDefaults,(i=this.roomOptions)===null||i===void 0?void 0:i.videoCaptureDefaults);try{return(yield la(r,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext})).map(a=>(en(a)&&(this.microphoneError=void 0,a.setAudioContext(this.audioContext),a.source=M.Source.Microphone,this.emit(U.AudioStreamAcquired)),vr(a)&&(this.cameraError=void 0,a.source=M.Source.Camera),a))}catch(s){throw s instanceof Error&&(e.audio&&(this.microphoneError=s),e.video&&(this.cameraError=s)),s}})}createScreenTracks(e){return P(this,void 0,void 0,function*(){if(e===void 0&&(e={}),navigator.mediaDevices.getDisplayMedia===void 0)throw new xu("getDisplayMedia not supported");e.resolution===void 0&&!Vk()&&(e.resolution=Eu.h1080fps30.resolution);const n=Xk(e),i=yield navigator.mediaDevices.getDisplayMedia(n),r=i.getVideoTracks();if(r.length===0)throw new Sn("no video track found");const s=new Vo(r[0],void 0,!1,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});s.source=M.Source.ScreenShare,e.contentHint&&(s.mediaStreamTrack.contentHint=e.contentHint);const o=[s];if(i.getAudioTracks().length>0){this.emit(U.AudioStreamAcquired);const a=new Lo(i.getAudioTracks()[0],void 0,!1,this.audioContext,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});a.source=M.Source.ScreenShareAudio,o.push(a)}return o})}publishTrack(e,n){return P(this,void 0,void 0,function*(){return this.publishOrRepublishTrack(e,n)})}publishOrRepublishTrack(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return function*(){var a,c,l,u;mn(i)&&i.setAudioContext(s.audioContext),yield(a=s.reconnectFuture)===null||a===void 0?void 0:a.promise,s.republishPromise&&!o&&(yield s.republishPromise),nr(i)&&s.pendingPublishPromises.has(i)&&(yield s.pendingPublishPromises.get(i));let d;if(i instanceof MediaStreamTrack)d=i.getConstraints();else{d=i.constraints;let v;switch(i.source){case M.Source.Microphone:v="audioinput";break;case M.Source.Camera:v="videoinput"}v&&s.activeDeviceMap.has(v)&&(d=Object.assign(Object.assign({},d),{deviceId:s.activeDeviceMap.get(v)}))}if(i instanceof MediaStreamTrack)switch(i.kind){case"audio":i=new Lo(i,d,!0,s.audioContext,{loggerName:s.roomOptions.loggerName,loggerContextCb:()=>s.logContext});break;case"video":i=new Vo(i,d,!0,{loggerName:s.roomOptions.loggerName,loggerContextCb:()=>s.logContext});break;default:throw new Sn("unsupported MediaStreamTrack kind ".concat(i.kind))}else i.updateLoggerOptions({loggerName:s.roomOptions.loggerName,loggerContextCb:()=>s.logContext});let h;if(s.trackPublications.forEach(v=>{v.track&&v.track===i&&(h=v)}),h)return s.log.warn("track has already been published, skipping",Object.assign(Object.assign({},s.logContext),he(h))),h;const p="channelCount"in i.mediaStreamTrack.getSettings()&&i.mediaStreamTrack.getSettings().channelCount===2||i.mediaStreamTrack.getConstraints().channelCount===2,g=(c=r==null?void 0:r.forceStereo)!==null&&c!==void 0?c:p;g&&(r||(r={}),r.dtx===void 0&&s.log.info("Opus DTX will be disabled for stereo tracks by default. Enable them explicitly to make it work.",Object.assign(Object.assign({},s.logContext),he(i))),r.red===void 0&&s.log.info("Opus RED will be disabled for stereo tracks by default. Enable them explicitly to make it work."),(l=r.dtx)!==null&&l!==void 0||(r.dtx=!1),(u=r.red)!==null&&u!==void 0||(r.red=!1));const f=Object.assign(Object.assign({},s.roomOptions.publishDefaults),r);!jk()&&s.roomOptions.e2ee&&(s.log.info("End-to-end encryption is set up, simulcast publishing will be disabled on Safari versions and iOS browsers running iOS < v17.2",Object.assign({},s.logContext)),f.simulcast=!1),f.source&&(i.source=f.source);const y=new Promise((v,C)=>P(s,void 0,void 0,function*(){try{if(this.engine.client.currentState!==Ae.CONNECTED){this.log.debug("deferring track publication until signal is connected",Object.assign(Object.assign({},this.logContext),{track:he(i)}));const T=setTimeout(()=>{C(new Of("publishing rejected as engine not connected within timeout",408))},15e3);yield this.waitUntilEngineConnected(),clearTimeout(T);const k=yield this.publish(i,f,g);v(k)}else try{const T=yield this.publish(i,f,g);v(T)}catch(T){C(T)}}catch(T){C(T)}}));s.pendingPublishPromises.set(i,y);try{return yield y}catch(v){throw v}finally{s.pendingPublishPromises.delete(i)}}()})}waitUntilEngineConnected(){return this.signalConnectedFuture||(this.signalConnectedFuture=new Wi),this.signalConnectedFuture.promise}hasPermissionsToPublish(e){if(!this.permissions)return this.log.warn("no permissions present for publishing track",Object.assign(Object.assign({},this.logContext),he(e))),!1;const{canPublish:n,canPublishSources:i}=this.permissions;return n&&(i.length===0||i.map(r=>nC(r)).includes(e.source))?!0:(this.log.warn("insufficient permissions to publish",Object.assign(Object.assign({},this.logContext),he(e))),!1)}publish(e,n,i){return P(this,void 0,void 0,function*(){var r,s,o,a,c,l,u,d,h,p;if(!this.hasPermissionsToPublish(e))throw new Of("failed to publish track, insufficient permissions",403);Array.from(this.trackPublications.values()).find(_=>nr(e)&&_.source===e.source)&&e.source!==M.Source.Unknown&&this.log.info("publishing a second track with the same source: ".concat(e.source),Object.assign(Object.assign({},this.logContext),he(e))),n.stopMicTrackOnMute&&en(e)&&(e.stopOnMute=!0),e.source===M.Source.ScreenShare&&ur()&&(n.simulcast=!1),n.videoCodec==="av1"&&!Dk()&&(n.videoCodec=void 0),n.videoCodec==="vp9"&&!Nk()&&(n.videoCodec=void 0),n.videoCodec===void 0&&(n.videoCodec=ml),this.enabledPublishVideoCodecs.length>0&&(this.enabledPublishVideoCodecs.some(_=>n.videoCodec===yo(_.mime))||(n.videoCodec=yo(this.enabledPublishVideoCodecs[0].mime)));const f=n.videoCodec;e.on(G.Muted,this.onTrackMuted),e.on(G.Unmuted,this.onTrackUnmuted),e.on(G.Ended,this.handleTrackEnded),e.on(G.UpstreamPaused,this.onTrackUpstreamPaused),e.on(G.UpstreamResumed,this.onTrackUpstreamResumed),e.on(G.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate);const y=[],v=!(!((r=n.dtx)!==null&&r!==void 0)||r),C=e.getSourceTrackSettings();C.autoGainControl&&y.push(et.TF_AUTO_GAIN_CONTROL),C.echoCancellation&&y.push(et.TF_ECHO_CANCELLATION),C.noiseSuppression&&y.push(et.TF_NOISE_SUPPRESSION),C.channelCount&&C.channelCount>1&&y.push(et.TF_STEREO),v&&y.push(et.TF_NO_DTX),mn(e)&&e.hasPreConnectBuffer&&y.push(et.TF_PRECONNECT_BUFFER);const T=new Zc({cid:e.mediaStreamTrack.id,name:n.name,type:M.kindToProto(e.kind),muted:e.isMuted,source:M.sourceToProto(e.source),disableDtx:v,encryption:this.encryptionType,stereo:i,disableRed:this.isE2EEEnabled||!(!((s=n.red)!==null&&s!==void 0)||s),stream:n==null?void 0:n.stream,backupCodecPolicy:n==null?void 0:n.backupCodecPolicy,audioFeatures:y});let k;if(e.kind===M.Kind.Video){let _={width:0,height:0};try{_=yield e.waitForDimensions()}catch{const I=(a=(o=this.roomOptions.videoCaptureDefaults)===null||o===void 0?void 0:o.resolution)!==null&&a!==void 0?a:ss.h720.resolution;_={width:I.width,height:I.height},this.log.error("could not determine track dimensions, using defaults",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{dims:_}))}T.width=_.width,T.height=_.height,Nn(e)&&(kn(f)&&(e.source===M.Source.ScreenShare&&(n.scalabilityMode="L1T3","contentHint"in e.mediaStreamTrack&&(e.mediaStreamTrack.contentHint="motion",this.log.info("forcing contentHint to motion for screenshare with SVC codecs",Object.assign(Object.assign({},this.logContext),he(e))))),n.scalabilityMode=(c=n.scalabilityMode)!==null&&c!==void 0?c:"L3T3_KEY"),T.simulcastCodecs=[new Kc({codec:f,cid:e.mediaStreamTrack.id})],n.backupCodec===!0&&(n.backupCodec={codec:ml}),n.backupCodec&&f!==n.backupCodec.codec&&T.encryption===yt.NONE&&(this.roomOptions.dynacast||(this.roomOptions.dynacast=!0),T.simulcastCodecs.push(new Kc({codec:n.backupCodec.codec,cid:""})))),k=vl(e.source===M.Source.ScreenShare,T.width,T.height,n),T.layers=ih(T.width,T.height,k,kn(n.videoCodec))}else e.kind===M.Kind.Audio&&(k=[{maxBitrate:(l=n.audioPreset)===null||l===void 0?void 0:l.maxBitrate,priority:(d=(u=n.audioPreset)===null||u===void 0?void 0:u.priority)!==null&&d!==void 0?d:"high",networkPriority:(p=(h=n.audioPreset)===null||h===void 0?void 0:h.priority)!==null&&p!==void 0?p:"high"}]);if(!this.engine||this.engine.isClosed)throw new Je("cannot publish track when not connected");const b=()=>P(this,void 0,void 0,function*(){var _,S,I;if(!this.engine.pcManager)throw new Je("pcManager is not ready");if(e.sender=yield this.engine.createSender(e,n,k),Nn(e)&&((_=n.degradationPreference)!==null&&_!==void 0||(n.degradationPreference=VC(e)),e.setDegradationPreference(n.degradationPreference)),k)if(ur()&&e.kind===M.Kind.Audio){let N;for(const z of this.engine.pcManager.publisher.getTransceivers())if(z.sender===e.sender){N=z;break}N&&this.engine.pcManager.publisher.setTrackCodecBitrate({transceiver:N,codec:"opus",maxbr:!((S=k[0])===null||S===void 0)&&S.maxBitrate?k[0].maxBitrate/1e3:0})}else e.codec&&kn(e.codec)&&(!((I=k[0])===null||I===void 0)&&I.maxBitrate)&&this.engine.pcManager.publisher.setTrackCodecBitrate({cid:T.cid,codec:e.codec,maxbr:k[0].maxBitrate/1e3});yield this.engine.negotiate()});let w;const x=new Promise((_,S)=>P(this,void 0,void 0,function*(){var I;try{w=yield this.engine.addTrack(T),_(w)}catch(N){e.sender&&(!((I=this.engine.pcManager)===null||I===void 0)&&I.publisher)&&(this.engine.pcManager.publisher.removeTrack(e.sender),yield this.engine.negotiate().catch(z=>{this.log.error("failed to negotiate after removing track due to failed add track request",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{error:z}))})),S(N)}}));if(this.enabledPublishVideoCodecs.length>0)w=(yield Promise.all([x,b()]))[0];else{w=yield x;let _;if(w.codecs.forEach(S=>{_===void 0&&(_=S.mimeType)}),_&&e.kind===M.Kind.Video){const S=yo(_);S!==f&&(this.log.debug("falling back to server selected codec",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{codec:S})),n.videoCodec=S,k=vl(e.source===M.Source.ScreenShare,T.width,T.height,n))}yield b()}const R=new Sl(e.kind,w,e,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});if(R.options=n,e.sid=w.sid,this.log.debug("publishing ".concat(e.kind," with encodings"),Object.assign(Object.assign({},this.logContext),{encodings:k,trackInfo:w})),Nn(e)?e.startMonitor(this.engine.client):mn(e)&&e.startMonitor(),this.addTrackPublication(R),this.emit(U.LocalTrackPublished,R),mn(e)&&w.audioFeatures.includes(et.TF_PRECONNECT_BUFFER)){const _=e.getPreConnectBuffer();this.on(U.LocalTrackSubscribed,S=>{if(S.trackSid===w.sid){if(!e.hasPreConnectBuffer){this.log.warn("subscribe event came to late, buffer already closed",this.logContext);return}this.log.debug("finished recording preconnect buffer",Object.assign(Object.assign({},this.logContext),he(e))),e.stopPreConnectBuffer()}}),_&&new Promise((I,N)=>P(this,void 0,void 0,function*(){var z,K,se,Q,Y,F;try{this.log.debug("waiting for agent",Object.assign(Object.assign({},this.logContext),he(e)));const W=setTimeout(()=>{N(new Error("agent not active within 10 seconds"))},1e4),Z=yield this.waitUntilActiveAgentPresent();clearTimeout(W),this.log.debug("sending preconnect buffer",Object.assign(Object.assign({},this.logContext),he(e)));const J=yield this.streamBytes({name:"preconnect-buffer",mimeType:"audio/opus",topic:"lk.agent.pre-connect-audio-buffer",destinationIdentities:[Z.identity],attributes:{trackId:R.trackSid,sampleRate:String((Y=C.sampleRate)!==null&&Y!==void 0?Y:"48000"),channels:String((F=C.channelCount)!==null&&F!==void 0?F:"1")}});try{for(var ce=!0,A=bn(_),j;j=yield A.next(),z=j.done,!z;ce=!0){Q=j.value,ce=!1;const re=Q;yield J.write(re)}}catch(re){K={error:re}}finally{try{!ce&&!z&&(se=A.return)&&(yield se.call(A))}finally{if(K)throw K.error}}yield J.close(),I()}catch(W){N(W)}})).then(()=>{this.log.debug("preconnect buffer sent successfully",Object.assign(Object.assign({},this.logContext),he(e)))}).catch(I=>{this.log.error("error sending preconnect buffer",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{error:I}))})}return R})}get isLocal(){return!0}publishAdditionalCodecForTrack(e,n,i){return P(this,void 0,void 0,function*(){var r;if(this.encryptionType!==yt.NONE)return;let s;if(this.trackPublications.forEach(p=>{p.track&&p.track===e&&(s=p)}),!s)throw new Sn("track is not published");if(!Nn(e))throw new Sn("track is not a video track");const o=Object.assign(Object.assign({},(r=this.roomOptions)===null||r===void 0?void 0:r.publishDefaults),i),a=DC(e,n,o);if(!a){this.log.info("backup codec has been disabled, ignoring request to add additional codec for track",Object.assign(Object.assign({},this.logContext),he(e)));return}const c=e.addSimulcastTrack(n,a);if(!c)return;const l=new Zc({cid:c.mediaStreamTrack.id,type:M.kindToProto(e.kind),muted:e.isMuted,source:M.sourceToProto(e.source),sid:e.sid,simulcastCodecs:[{codec:o.videoCodec,cid:c.mediaStreamTrack.id}]});if(l.layers=ih(l.width,l.height,a),!this.engine||this.engine.isClosed)throw new Je("cannot publish track when not connected");const u=()=>P(this,void 0,void 0,function*(){yield this.engine.createSimulcastSender(e,c,o,a),yield this.engine.negotiate()}),h=(yield Promise.all([this.engine.addTrack(l),u()]))[0];this.log.debug("published ".concat(n," for track ").concat(e.sid),Object.assign(Object.assign({},this.logContext),{encodings:a,trackInfo:h}))})}unpublishTrack(e,n){return P(this,void 0,void 0,function*(){var i,r;if(nr(e)){const l=this.pendingPublishPromises.get(e);l&&(this.log.info("awaiting publish promise before attempting to unpublish",Object.assign(Object.assign({},this.logContext),he(e))),yield l)}const s=this.getPublicationForTrack(e),o=s?he(s):void 0;if(this.log.debug("unpublishing track",Object.assign(Object.assign({},this.logContext),o)),!s||!s.track){this.log.warn("track was not unpublished because no publication was found",Object.assign(Object.assign({},this.logContext),o));return}e=s.track,e.off(G.Muted,this.onTrackMuted),e.off(G.Unmuted,this.onTrackUnmuted),e.off(G.Ended,this.handleTrackEnded),e.off(G.UpstreamPaused,this.onTrackUpstreamPaused),e.off(G.UpstreamResumed,this.onTrackUpstreamResumed),e.off(G.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate),n===void 0&&(n=(r=(i=this.roomOptions)===null||i===void 0?void 0:i.stopLocalTrackOnUnpublish)!==null&&r!==void 0?r:!0),n?e.stop():e.stopMonitor();let a=!1;const c=e.sender;if(e.sender=void 0,this.engine.pcManager&&this.engine.pcManager.currentState<Ve.FAILED&&c)try{for(const l of this.engine.pcManager.publisher.getTransceivers())l.sender===c&&(l.direction="inactive",a=!0);if(this.engine.removeTrack(c)&&(a=!0),Nn(e)){for(const[,l]of e.simulcastCodecs)l.sender&&(this.engine.removeTrack(l.sender)&&(a=!0),l.sender=void 0);e.simulcastCodecs.clear()}}catch(l){this.log.warn("failed to unpublish track",Object.assign(Object.assign(Object.assign({},this.logContext),o),{error:l}))}switch(this.trackPublications.delete(s.trackSid),s.kind){case M.Kind.Audio:this.audioTrackPublications.delete(s.trackSid);break;case M.Kind.Video:this.videoTrackPublications.delete(s.trackSid);break}return this.emit(U.LocalTrackUnpublished,s),s.setTrack(void 0),a&&(yield this.engine.negotiate()),s})}unpublishTracks(e){return P(this,void 0,void 0,function*(){return(yield Promise.all(e.map(i=>this.unpublishTrack(i)))).filter(i=>!!i)})}republishAllTracks(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){i.republishPromise&&(yield i.republishPromise),i.republishPromise=new Promise((s,o)=>P(i,void 0,void 0,function*(){try{const a=[];this.trackPublications.forEach(c=>{c.track&&(n&&(c.options=Object.assign(Object.assign({},c.options),n)),a.push(c))}),yield Promise.all(a.map(c=>P(this,void 0,void 0,function*(){const l=c.track;yield this.unpublishTrack(l,!1),r&&!l.isMuted&&l.source!==M.Source.ScreenShare&&l.source!==M.Source.ScreenShareAudio&&(mn(l)||Nn(l))&&!l.isUserProvided&&(this.log.debug("restarting existing track",Object.assign(Object.assign({},this.logContext),{track:c.trackSid})),yield l.restartTrack()),yield this.publishOrRepublishTrack(l,c.options,!0)}))),s()}catch(a){o(a)}finally{this.republishPromise=void 0}})),yield i.republishPromise}()})}publishData(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return function*(){const s=r.reliable?fe.RELIABLE:fe.LOSSY,o=r.destinationIdentities,a=r.topic,c=new ut({kind:s,value:{case:"user",value:new bg({participantIdentity:i.identity,payload:n,destinationIdentities:o,topic:a})}});yield i.engine.sendDataPacket(c,s)}()})}publishDtmf(e,n){return P(this,void 0,void 0,function*(){const i=new ut({kind:fe.RELIABLE,value:{case:"sipDtmf",value:new Sg({code:e,digit:n})}});yield this.engine.sendDataPacket(i,fe.RELIABLE)})}sendChatMessage(e,n){return P(this,void 0,void 0,function*(){const i={id:crypto.randomUUID(),message:e,timestamp:Date.now(),attachedFiles:n==null?void 0:n.attachments},r=new ut({value:{case:"chatMessage",value:new $c(Object.assign(Object.assign({},i),{timestamp:_e.parse(i.timestamp)}))}});return yield this.engine.sendDataPacket(r,fe.RELIABLE),this.emit(U.ChatMessage,i),i})}editChatMessage(e,n){return P(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},n),{message:e,editTimestamp:Date.now()}),r=new ut({value:{case:"chatMessage",value:new $c(Object.assign(Object.assign({},i),{timestamp:_e.parse(i.timestamp),editTimestamp:_e.parse(i.editTimestamp)}))}});return yield this.engine.sendDataPacket(r,fe.RELIABLE),this.emit(U.ChatMessage,i),i})}sendText(e,n){return P(this,void 0,void 0,function*(){var i;const r=crypto.randomUUID(),o=new TextEncoder().encode(e).byteLength,a=(i=n==null?void 0:n.attachments)===null||i===void 0?void 0:i.map(()=>crypto.randomUUID()),c=new Array(a?a.length+1:1).fill(0),l=(d,h)=>{var p;c[h]=d;const g=c.reduce((f,y)=>f+y,0);(p=n==null?void 0:n.onProgress)===null||p===void 0||p.call(n,g)},u=yield this.streamText({streamId:r,totalSize:o,destinationIdentities:n==null?void 0:n.destinationIdentities,topic:n==null?void 0:n.topic,attachedStreamIds:a,attributes:n==null?void 0:n.attributes});return yield u.write(e),l(1,0),yield u.close(),n!=null&&n.attachments&&a&&(yield Promise.all(n.attachments.map((d,h)=>P(this,void 0,void 0,function*(){return this._sendFile(a[h],d,{topic:n.topic,mimeType:d.type,onProgress:p=>{l(p,h+1)}})})))),u.info})}streamText(e){return P(this,void 0,void 0,function*(){var n,i;const r=(n=e==null?void 0:e.streamId)!==null&&n!==void 0?n:crypto.randomUUID(),s={id:r,mimeType:"text/plain",timestamp:Date.now(),topic:(i=e==null?void 0:e.topic)!==null&&i!==void 0?i:"",size:e==null?void 0:e.totalSize,attributes:e==null?void 0:e.attributes},o=new zc({streamId:r,mimeType:s.mimeType,topic:s.topic,timestamp:ui(s.timestamp),totalLength:ui(e==null?void 0:e.totalSize),attributes:s.attributes,contentHeader:{case:"textHeader",value:new _g({version:e==null?void 0:e.version,attachedStreamIds:e==null?void 0:e.attachedStreamIds,replyToStreamId:e==null?void 0:e.replyToStreamId,operationType:(e==null?void 0:e.type)==="update"?Hc.UPDATE:Hc.CREATE})}}),a=e==null?void 0:e.destinationIdentities,c=new ut({destinationIdentities:a,value:{case:"streamHeader",value:o}});yield this.engine.sendDataPacket(c,fe.RELIABLE);let l=0;const u=this,d=new WritableStream({write(g){return P(this,void 0,void 0,function*(){for(const f of Yk(g,oh)){yield u.engine.waitForBufferStatusLow(fe.RELIABLE);const y=new Wc({content:f,streamId:r,chunkIndex:ui(l)}),v=new ut({destinationIdentities:a,value:{case:"streamChunk",value:y}});yield u.engine.sendDataPacket(v,fe.RELIABLE),l+=1}})},close(){return P(this,void 0,void 0,function*(){const g=new qc({streamId:r}),f=new ut({destinationIdentities:a,value:{case:"streamTrailer",value:g}});yield u.engine.sendDataPacket(f,fe.RELIABLE)})},abort(g){console.log("Sink error:",g)}});let h=()=>P(this,void 0,void 0,function*(){yield p.close()});u.engine.once(X.Closing,h);const p=new GC(d,s,()=>this.engine.off(X.Closing,h));return p})}sendFile(e,n){return P(this,void 0,void 0,function*(){const i=crypto.randomUUID();return yield this._sendFile(i,e,n),{id:i}})}_sendFile(e,n,i){return P(this,void 0,void 0,function*(){var r;const s=yield this.streamBytes({streamId:e,totalSize:n.size,name:n.name,mimeType:(r=i==null?void 0:i.mimeType)!==null&&r!==void 0?r:n.type,topic:i==null?void 0:i.topic,destinationIdentities:i==null?void 0:i.destinationIdentities}),o=n.stream().getReader();for(;;){const{done:a,value:c}=yield o.read();if(a)break;yield s.write(c)}return yield s.close(),s.info})}streamBytes(e){return P(this,void 0,void 0,function*(){var n,i,r,s,o;const a=(n=e==null?void 0:e.streamId)!==null&&n!==void 0?n:crypto.randomUUID(),c=e==null?void 0:e.destinationIdentities,l={id:a,mimeType:(i=e==null?void 0:e.mimeType)!==null&&i!==void 0?i:"application/octet-stream",topic:(r=e==null?void 0:e.topic)!==null&&r!==void 0?r:"",timestamp:Date.now(),attributes:e==null?void 0:e.attributes,size:e==null?void 0:e.totalSize,name:(s=e==null?void 0:e.name)!==null&&s!==void 0?s:"unknown"},u=new zc({totalLength:ui((o=l.size)!==null&&o!==void 0?o:0),mimeType:l.mimeType,streamId:a,topic:l.topic,timestamp:ui(Date.now()),attributes:l.attributes,contentHeader:{case:"byteHeader",value:new Mg({name:l.name})}}),d=new ut({destinationIdentities:c,value:{case:"streamHeader",value:u}});yield this.engine.sendDataPacket(d,fe.RELIABLE);let h=0;const p=new ft,g=this.engine,f=this.log,y=new WritableStream({write(C){return P(this,void 0,void 0,function*(){const T=yield p.lock();let k=0;try{for(;k<C.byteLength;){const b=C.slice(k,k+oh);yield g.waitForBufferStatusLow(fe.RELIABLE);const w=new ut({destinationIdentities:c,value:{case:"streamChunk",value:new Wc({content:b,streamId:a,chunkIndex:ui(h)})}});yield g.sendDataPacket(w,fe.RELIABLE),h+=1,k+=b.byteLength}}finally{T()}})},close(){return P(this,void 0,void 0,function*(){const C=new qc({streamId:a}),T=new ut({destinationIdentities:c,value:{case:"streamTrailer",value:C}});yield g.sendDataPacket(T,fe.RELIABLE)})},abort(C){f.error("Sink error:",C)}});return new KC(y,l)})}performRpc(e){return P(this,arguments,void 0,function(n){var i=this;let{destinationIdentity:r,method:s,payload:o,responseTimeout:a=1e4}=n;return function*(){return new Promise((l,u)=>P(i,void 0,void 0,function*(){var d,h,p,g;if(Ou(o)>_0){u(je.builtIn("REQUEST_PAYLOAD_TOO_LARGE"));return}if(!((h=(d=this.engine.latestJoinResponse)===null||d===void 0?void 0:d.serverInfo)===null||h===void 0)&&h.version&&qn((g=(p=this.engine.latestJoinResponse)===null||p===void 0?void 0:p.serverInfo)===null||g===void 0?void 0:g.version,"1.8.0")<0){u(je.builtIn("UNSUPPORTED_SERVER"));return}const f=crypto.randomUUID();yield this.publishRpcRequest(r,f,s,o,a-2e3);const y=setTimeout(()=>{this.pendingAcks.delete(f),u(je.builtIn("CONNECTION_TIMEOUT")),this.pendingResponses.delete(f),clearTimeout(v)},2e3);this.pendingAcks.set(f,{resolve:()=>{clearTimeout(y)},participantIdentity:r});const v=setTimeout(()=>{this.pendingResponses.delete(f),u(je.builtIn("RESPONSE_TIMEOUT"))},a);this.pendingResponses.set(f,{resolve:(C,T)=>{clearTimeout(v),this.pendingAcks.has(f)&&(console.warn("RPC response received before ack",f),this.pendingAcks.delete(f),clearTimeout(y)),T?u(T):l(C??"")},participantIdentity:r})}))}()})}registerRpcMethod(e,n){this.rpcHandlers.has(e)&&this.log.warn("you're overriding the RPC handler for method ".concat(e,", in the future this will throw an error")),this.rpcHandlers.set(e,n)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}setTrackSubscriptionPermissions(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];this.participantTrackPermissions=n,this.allParticipantsAllowedToSubscribe=e,this.engine.client.isDisconnected||this.updateTrackSubscriptionPermissions()}handleIncomingRpcAck(e){const n=this.pendingAcks.get(e);n?(n.resolve(),this.pendingAcks.delete(e)):console.error("Ack received for unexpected RPC request",e)}handleIncomingRpcResponse(e,n,i){const r=this.pendingResponses.get(e);r?(r.resolve(n,i),this.pendingResponses.delete(e)):console.error("Response received for unexpected RPC request",e)}publishRpcRequest(e,n,i,r,s){return P(this,void 0,void 0,function*(){const o=new ut({destinationIdentities:[e],kind:fe.RELIABLE,value:{case:"rpcRequest",value:new Tg({id:n,method:i,payload:r,responseTimeoutMs:s,version:1})}});yield this.engine.sendDataPacket(o,fe.RELIABLE)})}handleParticipantDisconnected(e){for(const[n,{participantIdentity:i}]of this.pendingAcks)i===e&&this.pendingAcks.delete(n);for(const[n,{participantIdentity:i,resolve:r}]of this.pendingResponses)i===e&&(r(null,je.builtIn("RECIPIENT_DISCONNECTED")),this.pendingResponses.delete(n))}setEnabledPublishCodecs(e){this.enabledPublishVideoCodecs=e.filter(n=>n.mime.split("/")[0].toLowerCase()==="video")}updateInfo(e){return super.updateInfo(e)?(e.tracks.forEach(n=>{var i,r;const s=this.trackPublications.get(n.sid);if(s){const o=s.isMuted||((r=(i=s.track)===null||i===void 0?void 0:i.isUpstreamPaused)!==null&&r!==void 0?r:!1);o!==n.muted&&(this.log.debug("updating server mute state after reconcile",Object.assign(Object.assign(Object.assign({},this.logContext),he(s)),{mutedOnServer:o})),this.engine.client.sendMuteTrack(n.sid,o))}}),!0):!1}setActiveAgent(e){var n,i,r,s;this.firstActiveAgent=e,e&&!this.firstActiveAgent&&(this.firstActiveAgent=e),e?(i=(n=this.activeAgentFuture)===null||n===void 0?void 0:n.resolve)===null||i===void 0||i.call(n,e):(s=(r=this.activeAgentFuture)===null||r===void 0?void 0:r.reject)===null||s===void 0||s.call(r,"Agent disconnected"),this.activeAgentFuture=void 0}waitUntilActiveAgentPresent(){return this.firstActiveAgent?Promise.resolve(this.firstActiveAgent):(this.activeAgentFuture||(this.activeAgentFuture=new Wi),this.activeAgentFuture.promise)}getPublicationForTrack(e){let n;return this.trackPublications.forEach(i=>{const r=i.track;r&&(e instanceof MediaStreamTrack?(mn(r)||Nn(r))&&r.mediaStreamTrack===e&&(n=i):e===r&&(n=i))}),n}waitForPendingPublicationOfSource(e){return P(this,void 0,void 0,function*(){const i=Date.now();for(;Date.now()<i+1e4;){const r=Array.from(this.pendingPublishPromises.entries()).find(s=>{let[o]=s;return o.source===e});if(r)return r[1];yield mt(20)}})}}class Fo extends gn{constructor(e,n,i,r){super(e,n.sid,n.name,r),this.track=void 0,this.allowed=!0,this.disabled=!1,this.currentVideoQuality=At.HIGH,this.handleEnded=s=>{this.setTrack(void 0),this.emit(G.Ended,s)},this.handleVisibilityChange=s=>{this.log.debug("adaptivestream video visibility ".concat(this.trackSid,", visible=").concat(s),this.logContext),this.disabled=!s,this.emitTrackUpdate()},this.handleVideoDimensionsChange=s=>{this.log.debug("adaptivestream video dimensions ".concat(s.width,"x").concat(s.height),this.logContext),this.videoDimensions=s,this.emitTrackUpdate()},this.subscribed=i,this.updateInfo(n)}setSubscribed(e){const n=this.subscriptionStatus,i=this.permissionStatus;this.subscribed=e,e&&(this.allowed=!0);const r=new sa({trackSids:[this.trackSid],subscribe:this.subscribed,participantTracks:[new xg({participantSid:"",trackSids:[this.trackSid]})]});this.emit(G.UpdateSubscription,r),this.emitSubscriptionUpdateIfChanged(n),this.emitPermissionUpdateIfChanged(i)}get subscriptionStatus(){return this.subscribed===!1?gn.SubscriptionStatus.Unsubscribed:super.isSubscribed?gn.SubscriptionStatus.Subscribed:gn.SubscriptionStatus.Desired}get permissionStatus(){return this.allowed?gn.PermissionStatus.Allowed:gn.PermissionStatus.NotAllowed}get isSubscribed(){return this.subscribed===!1?!1:super.isSubscribed}get isDesired(){return this.subscribed!==!1}get isEnabled(){return!this.disabled}get isLocal(){return!1}setEnabled(e){!this.isManualOperationAllowed()||this.disabled===!e||(this.disabled=!e,this.emitTrackUpdate())}setVideoQuality(e){!this.isManualOperationAllowed()||this.currentVideoQuality===e||(this.currentVideoQuality=e,this.videoDimensions=void 0,this.emitTrackUpdate())}setVideoDimensions(e){var n,i;this.isManualOperationAllowed()&&(((n=this.videoDimensions)===null||n===void 0?void 0:n.width)===e.width&&((i=this.videoDimensions)===null||i===void 0?void 0:i.height)===e.height||(Wa(this.track)&&(this.videoDimensions=e),this.currentVideoQuality=void 0,this.emitTrackUpdate()))}setVideoFPS(e){this.isManualOperationAllowed()&&Wa(this.track)&&this.fps!==e&&(this.fps=e,this.emitTrackUpdate())}get videoQuality(){return this.currentVideoQuality}setTrack(e){const n=this.subscriptionStatus,i=this.permissionStatus,r=this.track;r!==e&&(r&&(r.off(G.VideoDimensionsChanged,this.handleVideoDimensionsChange),r.off(G.VisibilityChanged,this.handleVisibilityChange),r.off(G.Ended,this.handleEnded),r.detach(),r.stopMonitor(),this.emit(G.Unsubscribed,r)),super.setTrack(e),e&&(e.sid=this.trackSid,e.on(G.VideoDimensionsChanged,this.handleVideoDimensionsChange),e.on(G.VisibilityChanged,this.handleVisibilityChange),e.on(G.Ended,this.handleEnded),this.emit(G.Subscribed,e)),this.emitPermissionUpdateIfChanged(i),this.emitSubscriptionUpdateIfChanged(n))}setAllowed(e){const n=this.subscriptionStatus,i=this.permissionStatus;this.allowed=e,this.emitPermissionUpdateIfChanged(i),this.emitSubscriptionUpdateIfChanged(n)}setSubscriptionError(e){this.emit(G.SubscriptionFailed,e)}updateInfo(e){super.updateInfo(e);const n=this.metadataMuted;this.metadataMuted=e.muted,this.track?this.track.setMuted(e.muted):n!==e.muted&&this.emit(e.muted?G.Muted:G.Unmuted)}emitSubscriptionUpdateIfChanged(e){const n=this.subscriptionStatus;e!==n&&this.emit(G.SubscriptionStatusChanged,n,e)}emitPermissionUpdateIfChanged(e){this.permissionStatus!==e&&this.emit(G.SubscriptionPermissionChanged,this.permissionStatus,e)}isManualOperationAllowed(){return this.kind===M.Kind.Video&&this.isAdaptiveStream?(this.log.warn("adaptive stream is enabled, cannot change video track settings",this.logContext),!1):this.isDesired?!0:(this.log.warn("cannot update track settings when not subscribed",this.logContext),!1)}get isAdaptiveStream(){return Wa(this.track)&&this.track.isAdaptiveStream}emitTrackUpdate(){const e=new Og({trackSids:[this.trackSid],disabled:this.disabled,fps:this.fps});this.videoDimensions?(e.width=Math.ceil(this.videoDimensions.width),e.height=Math.ceil(this.videoDimensions.height)):this.currentVideoQuality!==void 0?e.quality=this.currentVideoQuality:e.quality=At.HIGH,this.emit(G.UpdateSettings,e)}}class jo extends j0{static fromParticipantInfo(e,n,i){return new jo(e,n.sid,n.identity,n.name,n.metadata,n.attributes,i,n.kind)}get logContext(){return Object.assign(Object.assign({},super.logContext),{rpID:this.sid,remoteParticipant:this.identity})}constructor(e,n,i,r,s,o,a){let c=arguments.length>7&&arguments[7]!==void 0?arguments[7]:bi.STANDARD;super(n,i||"",r,s,o,a,c),this.signalClient=e,this.trackPublications=new Map,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.volumeMap=new Map}addTrackPublication(e){super.addTrackPublication(e),e.on(G.UpdateSettings,n=>{this.log.debug("send update settings",Object.assign(Object.assign({},this.logContext),he(e))),this.signalClient.sendUpdateTrackSettings(n)}),e.on(G.UpdateSubscription,n=>{n.participantTracks.forEach(i=>{i.participantSid=this.sid}),this.signalClient.sendUpdateSubscription(n)}),e.on(G.SubscriptionPermissionChanged,n=>{this.emit(U.TrackSubscriptionPermissionChanged,e,n)}),e.on(G.SubscriptionStatusChanged,n=>{this.emit(U.TrackSubscriptionStatusChanged,e,n)}),e.on(G.Subscribed,n=>{this.emit(U.TrackSubscribed,n,e)}),e.on(G.Unsubscribed,n=>{this.emit(U.TrackUnsubscribed,n,e)}),e.on(G.SubscriptionFailed,n=>{this.emit(U.TrackSubscriptionFailed,e.trackSid,n)})}getTrackPublication(e){const n=super.getTrackPublication(e);if(n)return n}getTrackPublicationByName(e){const n=super.getTrackPublicationByName(e);if(n)return n}setVolume(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:M.Source.Microphone;this.volumeMap.set(n,e);const i=this.getTrackPublication(n);i&&i.track&&i.track.setVolume(e)}getVolume(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:M.Source.Microphone;const n=this.getTrackPublication(e);return n&&n.track?n.track.getVolume():this.volumeMap.get(e)}addSubscribedMediaTrack(e,n,i,r,s,o){let a=this.getTrackPublicationBySid(n);if(a||n.startsWith("TR")||this.trackPublications.forEach(u=>{!a&&e.kind===u.kind.toString()&&(a=u)}),!a){if(o===0){this.log.error("could not find published track",Object.assign(Object.assign({},this.logContext),{trackSid:n})),this.emit(U.TrackSubscriptionFailed,n);return}o===void 0&&(o=20),setTimeout(()=>{this.addSubscribedMediaTrack(e,n,i,r,s,o-1)},150);return}if(e.readyState==="ended"){this.log.error("unable to subscribe because MediaStreamTrack is ended. Do not call MediaStreamTrack.stop()",Object.assign(Object.assign({},this.logContext),he(a))),this.emit(U.TrackSubscriptionFailed,n);return}const c=e.kind==="video";let l;return c?l=new ZC(e,n,r,s):l=new F0(e,n,r,this.audioContext,this.audioOutput),l.source=a.source,l.isMuted=a.isMuted,l.setMediaStream(i),l.start(),a.setTrack(l),this.volumeMap.has(a.source)&&fl(l)&&en(l)&&l.setVolume(this.volumeMap.get(a.source)),a}get hasMetadata(){return!!this.participantInfo}getTrackPublicationBySid(e){return this.trackPublications.get(e)}updateInfo(e){if(!super.updateInfo(e))return!1;const n=new Map,i=new Map;return e.tracks.forEach(r=>{var s,o;let a=this.getTrackPublicationBySid(r.sid);if(a)a.updateInfo(r);else{const c=M.kindFromProto(r.type);if(!c)return;a=new Fo(c,r,(s=this.signalClient.connectOptions)===null||s===void 0?void 0:s.autoSubscribe,{loggerContextCb:()=>this.logContext,loggerName:(o=this.loggerOptions)===null||o===void 0?void 0:o.loggerName}),a.updateInfo(r),i.set(r.sid,a);const l=Array.from(this.trackPublications.values()).find(u=>u.source===(a==null?void 0:a.source));l&&a.source!==M.Source.Unknown&&this.log.debug("received a second track publication for ".concat(this.identity," with the same source: ").concat(a.source),Object.assign(Object.assign({},this.logContext),{oldTrack:he(l),newTrack:he(a)})),this.addTrackPublication(a)}n.set(r.sid,a)}),this.trackPublications.forEach(r=>{n.has(r.trackSid)||(this.log.trace("detected removed track on remote participant, unpublishing",Object.assign(Object.assign({},this.logContext),he(r))),this.unpublishTrack(r.trackSid,!0))}),i.forEach(r=>{this.emit(U.TrackPublished,r)}),!0}unpublishTrack(e,n){const i=this.trackPublications.get(e);if(!i)return;const{track:r}=i;switch(r&&(r.stop(),i.setTrack(void 0)),this.trackPublications.delete(e),i.kind){case M.Kind.Audio:this.audioTrackPublications.delete(e);break;case M.Kind.Video:this.videoTrackPublications.delete(e);break}n&&this.emit(U.TrackUnpublished,i)}setAudioOutput(e){return P(this,void 0,void 0,function*(){this.audioOutput=e;const n=[];this.audioTrackPublications.forEach(i=>{var r;en(i.track)&&fl(i.track)&&n.push(i.track.setSinkId((r=e.deviceId)!==null&&r!==void 0?r:"default"))}),yield Promise.all(n)})}emit(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return this.log.trace("participant event",Object.assign(Object.assign({},this.logContext),{event:e,args:i})),super.emit(e,...i)}}var pe;(function(t){t.Disconnected="disconnected",t.Connecting="connecting",t.Connected="connected",t.Reconnecting="reconnecting",t.SignalReconnecting="signalReconnecting"})(pe||(pe={}));const nw=4*1e3;class wn extends ln.EventEmitter{constructor(e){var n,i,r,s;if(super(),n=this,this.state=pe.Disconnected,this.activeSpeakers=[],this.isE2EEEnabled=!1,this.audioEnabled=!0,this.isVideoPlaybackBlocked=!1,this.log=me,this.bufferedEvents=[],this.isResuming=!1,this.byteStreamControllers=new Map,this.textStreamControllers=new Map,this.byteStreamHandlers=new Map,this.textStreamHandlers=new Map,this.rpcHandlers=new Map,this.connect=(o,a,c)=>P(this,void 0,void 0,function*(){var l;if(!Lk())throw on()?Error("WebRTC isn't detected, have you called registerGlobals?"):Error("LiveKit doesn't seem to be supported on this browser. Try to update your browser and make sure no browser extensions are disabling webRTC.");const u=yield this.disconnectLock.lock();if(this.state===pe.Connected)return this.log.info("already connected to room ".concat(this.name),this.logContext),u(),Promise.resolve();if(this.connectFuture)return u(),this.connectFuture.promise;this.setAndEmitConnectionState(pe.Connecting),((l=this.regionUrlProvider)===null||l===void 0?void 0:l.getServerUrl().toString())!==o&&(this.regionUrl=void 0,this.regionUrlProvider=void 0),ul(new URL(o))&&(this.regionUrlProvider===void 0?this.regionUrlProvider=new yl(o,a):this.regionUrlProvider.updateToken(a),this.regionUrlProvider.fetchRegionSettings().then(p=>{var g;(g=this.regionUrlProvider)===null||g===void 0||g.setServerReportedRegions(p)}).catch(p=>{this.log.warn("could not fetch region settings",Object.assign(Object.assign({},this.logContext),{error:p}))}));const d=(p,g,f)=>P(this,void 0,void 0,function*(){var y,v;this.abortController&&this.abortController.abort();const C=new AbortController;this.abortController=C,u==null||u();try{yield this.attemptConnection(f??o,a,c,C),this.abortController=void 0,p()}catch(T){if(this.regionUrlProvider&&T instanceof Re&&T.reason!==ge.Cancelled&&T.reason!==ge.NotAllowed){let k=null;try{k=yield this.regionUrlProvider.getNextBestRegionUrl((y=this.abortController)===null||y===void 0?void 0:y.signal)}catch(b){if(b instanceof Re&&(b.status===401||b.reason===ge.Cancelled)){this.handleDisconnect(this.options.stopLocalTrackOnUnpublish),g(b);return}}k&&!(!((v=this.abortController)===null||v===void 0)&&v.signal.aborted)?(this.log.info("Initial connection failed with ConnectionError: ".concat(T.message,". Retrying with another region: ").concat(k),this.logContext),this.recreateEngine(),yield d(p,g,k)):(this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,Hf(T)),g(T))}else{let k=$t.UNKNOWN_REASON;T instanceof Re&&(k=Hf(T)),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,k),g(T)}}}),h=this.regionUrl;return this.regionUrl=void 0,this.connectFuture=new Wi((p,g)=>{d(p,g,h)},()=>{this.clearConnectionFutures()}),this.connectFuture.promise}),this.connectSignal=(o,a,c,l,u,d)=>P(this,void 0,void 0,function*(){var h,p,g;const f=yield c.join(o,a,{autoSubscribe:l.autoSubscribe,adaptiveStream:typeof u.adaptiveStream=="object"?!0:u.adaptiveStream,maxRetries:l.maxRetries,e2eeEnabled:!!this.e2eeManager,websocketTimeout:l.websocketTimeout},d.signal);let y=f.serverInfo;if(y||(y={version:f.serverVersion,region:f.serverRegion}),this.serverInfo=y,this.log.debug("connected to Livekit Server ".concat(Object.entries(y).map(v=>{let[C,T]=v;return"".concat(C,": ").concat(T)}).join(", ")),{room:(h=f.room)===null||h===void 0?void 0:h.name,roomSid:(p=f.room)===null||p===void 0?void 0:p.sid,identity:(g=f.participant)===null||g===void 0?void 0:g.identity}),!y.version)throw new Tk("unknown server version");return y.version==="0.15.1"&&this.options.dynacast&&(this.log.debug("disabling dynacast due to server version",this.logContext),u.dynacast=!1),f}),this.applyJoinResponse=o=>{const a=o.participant;if(this.localParticipant.sid=a.sid,this.localParticipant.identity=a.identity,this.localParticipant.setEnabledPublishCodecs(o.enabledPublishCodecs),this.options.e2ee&&this.e2eeManager)try{this.e2eeManager.setSifTrailer(o.sifTrailer)}catch(c){this.log.error(c instanceof Error?c.message:"Could not set SifTrailer",Object.assign(Object.assign({},this.logContext),{error:c}))}this.handleParticipantUpdates([a,...o.otherParticipants]),o.room&&this.handleRoomUpdate(o.room)},this.attemptConnection=(o,a,c,l)=>P(this,void 0,void 0,function*(){var u,d;this.state===pe.Reconnecting||this.isResuming||!((u=this.engine)===null||u===void 0)&&u.pendingReconnect?(this.log.info("Reconnection attempt replaced by new connection attempt",this.logContext),this.recreateEngine()):this.maybeCreateEngine(),!((d=this.regionUrlProvider)===null||d===void 0)&&d.isCloud()&&this.engine.setRegionUrlProvider(this.regionUrlProvider),this.acquireAudioContext(),this.connOptions=Object.assign(Object.assign({},Mu),c),this.connOptions.rtcConfig&&(this.engine.rtcConfig=this.connOptions.rtcConfig),this.connOptions.peerConnectionTimeout&&(this.engine.peerConnectionTimeout=this.connOptions.peerConnectionTimeout);try{const h=yield this.connectSignal(o,a,this.engine,this.connOptions,this.options,l);this.applyJoinResponse(h),this.setupLocalParticipantEvents(),this.emit(O.SignalConnected)}catch(h){yield this.engine.close(),this.recreateEngine();const p=new Re("could not establish signal connection",ge.ServerUnreachable);throw h instanceof Error&&(p.message="".concat(p.message,": ").concat(h.message)),h instanceof Re&&(p.reason=h.reason,p.status=h.status),this.log.debug("error trying to establish signal connection",Object.assign(Object.assign({},this.logContext),{error:h})),p}if(l.signal.aborted)throw yield this.engine.close(),this.recreateEngine(),new Re("Connection attempt aborted",ge.Cancelled);try{yield this.engine.waitForPCInitialConnection(this.connOptions.peerConnectionTimeout,l)}catch(h){throw yield this.engine.close(),this.recreateEngine(),h}ht()&&this.options.disconnectOnPageLeave&&(window.addEventListener("pagehide",this.onPageLeave),window.addEventListener("beforeunload",this.onPageLeave)),ht()&&document.addEventListener("freeze",this.onPageLeave),this.setAndEmitConnectionState(pe.Connected),this.emit(O.Connected),this.registerConnectionReconcile()}),this.disconnect=function(){for(var o=arguments.length,a=new Array(o),c=0;c<o;c++)a[c]=arguments[c];return P(n,[...a],void 0,function(){var l=this;let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var d,h,p,g;const f=yield l.disconnectLock.lock();try{if(l.state===pe.Disconnected){l.log.debug("already disconnected",l.logContext);return}l.log.info("disconnect from room",Object.assign({},l.logContext)),(l.state===pe.Connecting||l.state===pe.Reconnecting||l.isResuming)&&(l.log.warn("abort connection attempt",l.logContext),(d=l.abortController)===null||d===void 0||d.abort(),(p=(h=l.connectFuture)===null||h===void 0?void 0:h.reject)===null||p===void 0||p.call(h,new Re("Client initiated disconnect",ge.Cancelled)),l.connectFuture=void 0),!((g=l.engine)===null||g===void 0)&&g.client.isDisconnected||(yield l.engine.client.sendLeave()),l.engine&&(yield l.engine.close()),l.handleDisconnect(u,$t.CLIENT_INITIATED),l.engine=void 0}finally{f()}}()})},this.onPageLeave=()=>P(this,void 0,void 0,function*(){this.log.info("Page leave detected, disconnecting",this.logContext),yield this.disconnect()}),this.startAudio=()=>P(this,void 0,void 0,function*(){const o=[],a=Tt();if(a&&a.os==="iOS"){const c="livekit-dummy-audio-el";let l=document.getElementById(c);if(!l){l=document.createElement("audio"),l.id=c,l.autoplay=!0,l.hidden=!0;const u=za();u.enabled=!0;const d=new MediaStream([u]);l.srcObject=d,document.addEventListener("visibilitychange",()=>{l&&(l.srcObject=document.hidden?null:d,document.hidden||(this.log.debug("page visible again, triggering startAudio to resume playback and update playback status",this.logContext),this.startAudio()))}),document.body.append(l),this.once(O.Disconnected,()=>{l==null||l.remove(),l=null})}o.push(l)}this.remoteParticipants.forEach(c=>{c.audioTrackPublications.forEach(l=>{l.track&&l.track.attachedElements.forEach(u=>{o.push(u)})})});try{yield Promise.all([this.acquireAudioContext(),...o.map(c=>(c.muted=!1,c.play()))]),this.handleAudioPlaybackStarted()}catch(c){throw this.handleAudioPlaybackFailed(c),c}}),this.startVideo=()=>P(this,void 0,void 0,function*(){const o=[];for(const a of this.remoteParticipants.values())a.videoTrackPublications.forEach(c=>{var l;(l=c.track)===null||l===void 0||l.attachedElements.forEach(u=>{o.includes(u)||o.push(u)})});yield Promise.all(o.map(a=>a.play())).then(()=>{this.handleVideoPlaybackStarted()}).catch(a=>{a.name==="NotAllowedError"?this.handleVideoPlaybackFailed():this.log.warn("Resuming video playback failed, make sure you call `startVideo` directly in a user gesture handler",this.logContext)})}),this.handleRestarting=()=>{this.clearConnectionReconcile(),this.isResuming=!1;for(const o of this.remoteParticipants.values())this.handleParticipantDisconnected(o.identity,o);this.setAndEmitConnectionState(pe.Reconnecting)&&this.emit(O.Reconnecting)},this.handleSignalRestarted=o=>P(this,void 0,void 0,function*(){this.log.debug("signal reconnected to server, region ".concat(o.serverRegion),Object.assign(Object.assign({},this.logContext),{region:o.serverRegion})),this.bufferedEvents=[],this.applyJoinResponse(o);try{yield this.localParticipant.republishAllTracks(void 0,!0)}catch(a){this.log.error("error trying to re-publish tracks after reconnection",Object.assign(Object.assign({},this.logContext),{error:a}))}try{yield this.engine.waitForRestarted(),this.log.debug("fully reconnected to server",Object.assign(Object.assign({},this.logContext),{region:o.serverRegion}))}catch{return}this.setAndEmitConnectionState(pe.Connected),this.emit(O.Reconnected),this.registerConnectionReconcile(),this.emitBufferedEvents()}),this.handleParticipantUpdates=o=>{o.forEach(a=>{var c;if(a.identity===this.localParticipant.identity){this.localParticipant.updateInfo(a);return}a.identity===""&&(a.identity=(c=this.sidToIdentity.get(a.sid))!==null&&c!==void 0?c:"");let l=this.remoteParticipants.get(a.identity);a.state===Xi.DISCONNECTED?this.handleParticipantDisconnected(a.identity,l):l=this.getOrCreateParticipant(a.identity,a)})},this.handleActiveSpeakersUpdate=o=>{const a=[],c={};o.forEach(l=>{if(c[l.sid]=!0,l.sid===this.localParticipant.sid)this.localParticipant.audioLevel=l.level,this.localParticipant.setIsSpeaking(!0),a.push(this.localParticipant);else{const u=this.getRemoteParticipantBySid(l.sid);u&&(u.audioLevel=l.level,u.setIsSpeaking(!0),a.push(u))}}),c[this.localParticipant.sid]||(this.localParticipant.audioLevel=0,this.localParticipant.setIsSpeaking(!1)),this.remoteParticipants.forEach(l=>{c[l.sid]||(l.audioLevel=0,l.setIsSpeaking(!1))}),this.activeSpeakers=a,this.emitWhenConnected(O.ActiveSpeakersChanged,a)},this.handleSpeakersChanged=o=>{const a=new Map;this.activeSpeakers.forEach(l=>{const u=this.remoteParticipants.get(l.identity);u&&u.sid!==l.sid||a.set(l.sid,l)}),o.forEach(l=>{let u=this.getRemoteParticipantBySid(l.sid);l.sid===this.localParticipant.sid&&(u=this.localParticipant),u&&(u.audioLevel=l.level,u.setIsSpeaking(l.active),l.active?a.set(l.sid,u):a.delete(l.sid))});const c=Array.from(a.values());c.sort((l,u)=>u.audioLevel-l.audioLevel),this.activeSpeakers=c,this.emitWhenConnected(O.ActiveSpeakersChanged,c)},this.handleStreamStateUpdate=o=>{o.streamStates.forEach(a=>{const c=this.getRemoteParticipantBySid(a.participantSid);if(!c)return;const l=c.getTrackPublicationBySid(a.trackSid);if(!l||!l.track)return;const u=M.streamStateFromProto(a.state);u!==l.track.streamState&&(l.track.streamState=u,c.emit(U.TrackStreamStateChanged,l,l.track.streamState),this.emitWhenConnected(O.TrackStreamStateChanged,l,l.track.streamState,c))})},this.handleSubscriptionPermissionUpdate=o=>{const a=this.getRemoteParticipantBySid(o.participantSid);if(!a)return;const c=a.getTrackPublicationBySid(o.trackSid);c&&c.setAllowed(o.allowed)},this.handleSubscriptionError=o=>{const a=Array.from(this.remoteParticipants.values()).find(l=>l.trackPublications.has(o.trackSid));if(!a)return;const c=a.getTrackPublicationBySid(o.trackSid);c&&c.setSubscriptionError(o.err)},this.handleDataPacket=o=>{const a=this.remoteParticipants.get(o.participantIdentity);if(o.value.case==="user")this.handleUserPacket(a,o.value.value,o.kind);else if(o.value.case==="transcription")this.handleTranscription(a,o.value.value);else if(o.value.case==="sipDtmf")this.handleSipDtmf(a,o.value.value);else if(o.value.case==="chatMessage")this.handleChatMessage(a,o.value.value);else if(o.value.case==="metrics")this.handleMetrics(o.value.value,a);else if(o.value.case==="streamHeader")this.handleStreamHeader(o.value.value,o.participantIdentity);else if(o.value.case==="streamChunk")this.handleStreamChunk(o.value.value);else if(o.value.case==="streamTrailer")this.handleStreamTrailer(o.value.value);else if(o.value.case==="rpcRequest"){const c=o.value.value;this.handleIncomingRpcRequest(o.participantIdentity,c.id,c.method,c.payload,c.responseTimeoutMs,c.version)}},this.handleUserPacket=(o,a,c)=>{this.emit(O.DataReceived,a.payload,o,c,a.topic),o==null||o.emit(U.DataReceived,a.payload,c)},this.handleSipDtmf=(o,a)=>{this.emit(O.SipDTMFReceived,a,o),o==null||o.emit(U.SipDTMFReceived,a)},this.bufferedSegments=new Map,this.handleTranscription=(o,a)=>{const c=a.transcribedParticipantIdentity===this.localParticipant.identity?this.localParticipant:this.getParticipantByIdentity(a.transcribedParticipantIdentity),l=c==null?void 0:c.trackPublications.get(a.trackId),u=qk(a,this.transcriptionReceivedTimes);l==null||l.emit(G.TranscriptionReceived,u),c==null||c.emit(U.TranscriptionReceived,u,l),this.emit(O.TranscriptionReceived,u,c,l)},this.handleChatMessage=(o,a)=>{const c=Gk(a);this.emit(O.ChatMessage,c,o)},this.handleMetrics=(o,a)=>{this.emit(O.MetricsReceived,o,a)},this.handleAudioPlaybackStarted=()=>{this.canPlaybackAudio||(this.audioEnabled=!0,this.emit(O.AudioPlaybackStatusChanged,!0))},this.handleAudioPlaybackFailed=o=>{this.log.warn("could not playback audio",Object.assign(Object.assign({},this.logContext),{error:o})),this.canPlaybackAudio&&(this.audioEnabled=!1,this.emit(O.AudioPlaybackStatusChanged,!1))},this.handleVideoPlaybackStarted=()=>{this.isVideoPlaybackBlocked&&(this.isVideoPlaybackBlocked=!1,this.emit(O.VideoPlaybackStatusChanged,!0))},this.handleVideoPlaybackFailed=()=>{this.isVideoPlaybackBlocked||(this.isVideoPlaybackBlocked=!0,this.emit(O.VideoPlaybackStatusChanged,!1))},this.handleDeviceChange=()=>P(this,void 0,void 0,function*(){var o;((o=Tt())===null||o===void 0?void 0:o.os)!=="iOS"&&(yield this.selectDefaultDevices()),this.emit(O.MediaDevicesChanged)}),this.handleRoomUpdate=o=>{const a=this.roomInfo;this.roomInfo=o,a&&a.metadata!==o.metadata&&this.emitWhenConnected(O.RoomMetadataChanged,o.metadata),(a==null?void 0:a.activeRecording)!==o.activeRecording&&this.emitWhenConnected(O.RecordingStatusChanged,o.activeRecording)},this.handleConnectionQualityUpdate=o=>{o.updates.forEach(a=>{if(a.participantSid===this.localParticipant.sid){this.localParticipant.setConnectionQuality(a.quality);return}const c=this.getRemoteParticipantBySid(a.participantSid);c&&c.setConnectionQuality(a.quality)})},this.onLocalParticipantMetadataChanged=o=>{this.emit(O.ParticipantMetadataChanged,o,this.localParticipant)},this.onLocalParticipantNameChanged=o=>{this.emit(O.ParticipantNameChanged,o,this.localParticipant)},this.onLocalAttributesChanged=o=>{this.emit(O.ParticipantAttributesChanged,o,this.localParticipant)},this.onLocalTrackMuted=o=>{this.emit(O.TrackMuted,o,this.localParticipant)},this.onLocalTrackUnmuted=o=>{this.emit(O.TrackUnmuted,o,this.localParticipant)},this.onTrackProcessorUpdate=o=>{var a;(a=o==null?void 0:o.onPublish)===null||a===void 0||a.call(o,this)},this.onLocalTrackPublished=o=>P(this,void 0,void 0,function*(){var a,c,l,u,d,h;(a=o.track)===null||a===void 0||a.on(G.TrackProcessorUpdate,this.onTrackProcessorUpdate),(c=o.track)===null||c===void 0||c.on(G.Restarted,this.onLocalTrackRestarted),(d=(u=(l=o.track)===null||l===void 0?void 0:l.getProcessor())===null||u===void 0?void 0:u.onPublish)===null||d===void 0||d.call(u,this),this.emit(O.LocalTrackPublished,o,this.localParticipant),mn(o.track)&&(yield o.track.checkForSilence())&&this.emit(O.LocalAudioSilenceDetected,o);const p=yield(h=o.track)===null||h===void 0?void 0:h.getDeviceId(!1),g=pl(o.source);g&&p&&p!==this.localParticipant.activeDeviceMap.get(g)&&(this.localParticipant.activeDeviceMap.set(g,p),this.emit(O.ActiveDeviceChanged,g,p))}),this.onLocalTrackUnpublished=o=>{var a,c;(a=o.track)===null||a===void 0||a.off(G.TrackProcessorUpdate,this.onTrackProcessorUpdate),(c=o.track)===null||c===void 0||c.off(G.Restarted,this.onLocalTrackRestarted),this.emit(O.LocalTrackUnpublished,o,this.localParticipant)},this.onLocalTrackRestarted=o=>P(this,void 0,void 0,function*(){const a=yield o.getDeviceId(!1),c=pl(o.source);c&&a&&a!==this.localParticipant.activeDeviceMap.get(c)&&(this.log.debug("local track restarted, setting ".concat(c," ").concat(a," active"),this.logContext),this.localParticipant.activeDeviceMap.set(c,a),this.emit(O.ActiveDeviceChanged,c,a))}),this.onLocalConnectionQualityChanged=o=>{this.emit(O.ConnectionQualityChanged,o,this.localParticipant)},this.onMediaDevicesError=(o,a)=>{this.emit(O.MediaDevicesError,o,a)},this.onLocalParticipantPermissionsChanged=o=>{this.emit(O.ParticipantPermissionsChanged,o,this.localParticipant)},this.onLocalChatMessageSent=o=>{this.emit(O.ChatMessage,o,this.localParticipant)},this.setMaxListeners(100),this.remoteParticipants=new Map,this.sidToIdentity=new Map,this.options=Object.assign(Object.assign({},bC),e),this.log=Cn((i=this.options.loggerName)!==null&&i!==void 0?i:zt.Room),this.transcriptionReceivedTimes=new Map,this.options.audioCaptureDefaults=Object.assign(Object.assign({},A0),e==null?void 0:e.audioCaptureDefaults),this.options.videoCaptureDefaults=Object.assign(Object.assign({},I0),e==null?void 0:e.videoCaptureDefaults),this.options.publishDefaults=Object.assign(Object.assign({},yC),e==null?void 0:e.publishDefaults),this.maybeCreateEngine(),this.disconnectLock=new ft,this.localParticipant=new tw("","",this.engine,this.options,this.rpcHandlers),this.options.videoCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set("videoinput",Hn(this.options.videoCaptureDefaults.deviceId)),this.options.audioCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set("audioinput",Hn(this.options.audioCaptureDefaults.deviceId)),!((r=this.options.audioOutput)===null||r===void 0)&&r.deviceId&&this.switchActiveDevice("audiooutput",Hn(this.options.audioOutput.deviceId)).catch(o=>this.log.warn("Could not set audio output: ".concat(o.message),this.logContext)),this.options.e2ee&&this.setupE2EE(),ht()){const o=new AbortController;(s=navigator.mediaDevices)===null||s===void 0||s.addEventListener("devicechange",this.handleDeviceChange,{signal:o.signal}),wn.cleanupRegistry&&wn.cleanupRegistry.register(this,()=>{o.abort()})}}registerTextStreamHandler(e,n){if(this.textStreamHandlers.has(e))throw new TypeError('A text stream handler for topic "'.concat(e,'" has already been set.'));this.textStreamHandlers.set(e,n)}unregisterTextStreamHandler(e){this.textStreamHandlers.delete(e)}registerByteStreamHandler(e,n){if(this.byteStreamHandlers.has(e))throw new TypeError('A byte stream handler for topic "'.concat(e,'" has already been set.'));this.byteStreamHandlers.set(e,n)}unregisterByteStreamHandler(e){this.byteStreamHandlers.delete(e)}registerRpcMethod(e,n){if(this.rpcHandlers.has(e))throw Error("RPC handler already registered for method ".concat(e,", unregisterRpcMethod before trying to register again"));this.rpcHandlers.set(e,n)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}handleIncomingRpcRequest(e,n,i,r,s,o){return P(this,void 0,void 0,function*(){if(yield this.engine.publishRpcAck(e,n),o!==1){yield this.engine.publishRpcResponse(e,n,null,je.builtIn("UNSUPPORTED_VERSION"));return}const a=this.rpcHandlers.get(i);if(!a){yield this.engine.publishRpcResponse(e,n,null,je.builtIn("UNSUPPORTED_METHOD"));return}let c=null,l=null;try{const u=yield a({requestId:n,callerIdentity:e,payload:r,responseTimeout:s});Ou(u)>_0?(c=je.builtIn("RESPONSE_PAYLOAD_TOO_LARGE"),console.warn("RPC Response payload too large for ".concat(i))):l=u}catch(u){u instanceof je?c=u:(console.warn("Uncaught error returned by RPC handler for ".concat(i,". Returning APPLICATION_ERROR instead."),u),c=je.builtIn("APPLICATION_ERROR"))}yield this.engine.publishRpcResponse(e,n,l,c)})}setE2EEEnabled(e){return P(this,void 0,void 0,function*(){if(this.e2eeManager)yield Promise.all([this.localParticipant.setE2EEEnabled(e)]),this.localParticipant.identity!==""&&this.e2eeManager.setParticipantCryptorEnabled(e,this.localParticipant.identity);else throw Error("e2ee not configured, please set e2ee settings within the room options")})}setupE2EE(){var e;this.options.e2ee&&("e2eeManager"in this.options.e2ee?this.e2eeManager=this.options.e2ee.e2eeManager:this.e2eeManager=new iC(this.options.e2ee),this.e2eeManager.on(Bn.ParticipantEncryptionStatusChanged,(n,i)=>{Zk(i)&&(this.isE2EEEnabled=n),this.emit(O.ParticipantEncryptionStatusChanged,n,i)}),this.e2eeManager.on(Bn.EncryptionError,n=>this.emit(O.EncryptionError,n)),(e=this.e2eeManager)===null||e===void 0||e.setup(this))}get logContext(){var e;return{room:this.name,roomID:(e=this.roomInfo)===null||e===void 0?void 0:e.sid,participant:this.localParticipant.identity,pID:this.localParticipant.sid}}get isRecording(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.activeRecording)!==null&&n!==void 0?n:!1}getSid(){return P(this,void 0,void 0,function*(){return this.state===pe.Disconnected?"":this.roomInfo&&this.roomInfo.sid!==""?this.roomInfo.sid:new Promise((e,n)=>{const i=r=>{r.sid!==""&&(this.engine.off(X.RoomUpdate,i),e(r.sid))};this.engine.on(X.RoomUpdate,i),this.once(O.Disconnected,()=>{this.engine.off(X.RoomUpdate,i),n("Room disconnected before room server id was available")})})})}get name(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.name)!==null&&n!==void 0?n:""}get metadata(){var e;return(e=this.roomInfo)===null||e===void 0?void 0:e.metadata}get numParticipants(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.numParticipants)!==null&&n!==void 0?n:0}get numPublishers(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.numPublishers)!==null&&n!==void 0?n:0}maybeCreateEngine(){this.engine&&!this.engine.isClosed||(this.engine=new BC(this.options),this.engine.on(X.ParticipantUpdate,this.handleParticipantUpdates).on(X.RoomUpdate,this.handleRoomUpdate).on(X.SpeakersChanged,this.handleSpeakersChanged).on(X.StreamStateChanged,this.handleStreamStateUpdate).on(X.ConnectionQualityUpdate,this.handleConnectionQualityUpdate).on(X.SubscriptionError,this.handleSubscriptionError).on(X.SubscriptionPermissionUpdate,this.handleSubscriptionPermissionUpdate).on(X.MediaTrackAdded,(e,n,i)=>{this.onTrackAdded(e,n,i)}).on(X.Disconnected,e=>{this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,e)}).on(X.ActiveSpeakersUpdate,this.handleActiveSpeakersUpdate).on(X.DataPacketReceived,this.handleDataPacket).on(X.Resuming,()=>{this.clearConnectionReconcile(),this.isResuming=!0,this.log.info("Resuming signal connection",this.logContext),this.setAndEmitConnectionState(pe.SignalReconnecting)&&this.emit(O.SignalReconnecting)}).on(X.Resumed,()=>{this.registerConnectionReconcile(),this.isResuming=!1,this.log.info("Resumed signal connection",this.logContext),this.updateSubscriptions(),this.emitBufferedEvents(),this.setAndEmitConnectionState(pe.Connected)&&this.emit(O.Reconnected)}).on(X.SignalResumed,()=>{this.bufferedEvents=[],(this.state===pe.Reconnecting||this.isResuming)&&this.sendSyncState()}).on(X.Restarting,this.handleRestarting).on(X.SignalRestarted,this.handleSignalRestarted).on(X.Offline,()=>{this.setAndEmitConnectionState(pe.Reconnecting)&&this.emit(O.Reconnecting)}).on(X.DCBufferStatusChanged,(e,n)=>{this.emit(O.DCBufferStatusChanged,e,n)}).on(X.LocalTrackSubscribed,e=>{const n=this.localParticipant.getTrackPublications().find(i=>{let{trackSid:r}=i;return r===e});if(!n){this.log.warn("could not find local track subscription for subscribed event",this.logContext);return}this.localParticipant.emit(U.LocalTrackSubscribed,n),this.emitWhenConnected(O.LocalTrackSubscribed,n,this.localParticipant)}).on(X.RoomMoved,e=>{this.log.debug("room moved",e),e.room&&this.handleRoomUpdate(e.room),this.remoteParticipants.forEach((n,i)=>{this.handleParticipantDisconnected(i,n)}),this.emit(O.Moved,e.room.name),e.participant?this.handleParticipantUpdates([e.participant,...e.otherParticipants]):this.handleParticipantUpdates(e.otherParticipants)}),this.localParticipant&&this.localParticipant.setupEngine(this.engine),this.e2eeManager&&this.e2eeManager.setupEngine(this.engine))}static getLocalDevices(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return tt.getInstance().getDevices(e,n)}prepareConnection(e,n){return P(this,void 0,void 0,function*(){if(this.state===pe.Disconnected){this.log.debug("prepareConnection to ".concat(e),this.logContext);try{if(ul(new URL(e))&&n){this.regionUrlProvider=new yl(e,n);const i=yield this.regionUrlProvider.getNextBestRegionUrl();i&&this.state===pe.Disconnected&&(this.regionUrl=i,yield fetch(dl(i),{method:"HEAD"}),this.log.debug("prepared connection to ".concat(i),this.logContext))}else yield fetch(dl(e),{method:"HEAD"})}catch(i){this.log.warn("could not prepare connection",Object.assign(Object.assign({},this.logContext),{error:i}))}}})}getParticipantByIdentity(e){return this.localParticipant.identity===e?this.localParticipant:this.remoteParticipants.get(e)}clearConnectionFutures(){this.connectFuture=void 0}simulateScenario(e,n){return P(this,void 0,void 0,function*(){let i=()=>{},r;switch(e){case"signal-reconnect":yield this.engine.client.handleOnClose("simulate disconnect");break;case"speaker":r=new Kt({scenario:{case:"speakerUpdate",value:3}});break;case"node-failure":r=new Kt({scenario:{case:"nodeFailure",value:!0}});break;case"server-leave":r=new Kt({scenario:{case:"serverLeave",value:!0}});break;case"migration":r=new Kt({scenario:{case:"migration",value:!0}});break;case"resume-reconnect":this.engine.failNext(),yield this.engine.client.handleOnClose("simulate resume-disconnect");break;case"disconnect-signal-on-resume":i=()=>P(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose("simulate resume-disconnect")}),r=new Kt({scenario:{case:"disconnectSignalOnResume",value:!0}});break;case"disconnect-signal-on-resume-no-messages":i=()=>P(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose("simulate resume-disconnect")}),r=new Kt({scenario:{case:"disconnectSignalOnResumeNoMessages",value:!0}});break;case"full-reconnect":this.engine.fullReconnectOnNext=!0,yield this.engine.client.handleOnClose("simulate full-reconnect");break;case"force-tcp":case"force-tls":r=new Kt({scenario:{case:"switchCandidateProtocol",value:e==="force-tls"?2:1}}),i=()=>P(this,void 0,void 0,function*(){const s=this.engine.client.onLeave;s&&s(new oa({reason:$t.CLIENT_INITIATED,action:Qi.RECONNECT}))});break;case"subscriber-bandwidth":if(n===void 0||typeof n!="number")throw new Error("subscriber-bandwidth requires a number as argument");r=new Kt({scenario:{case:"subscriberBandwidth",value:ui(n)}});break;case"leave-full-reconnect":r=new Kt({scenario:{case:"leaveRequestFullReconnect",value:!0}})}r&&(yield this.engine.client.sendSimulateScenario(r),yield i())})}get canPlaybackAudio(){return this.audioEnabled}get canPlaybackVideo(){return!this.isVideoPlaybackBlocked}getActiveDevice(e){return this.localParticipant.activeDeviceMap.get(e)}switchActiveDevice(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return function*(){var a,c,l,u,d,h,p;let g=!0,f=!1;const y=o?{exact:r}:r;if(i==="audioinput"){f=s.localParticipant.audioTrackPublications.size===0;const v=(a=s.getActiveDevice(i))!==null&&a!==void 0?a:s.options.audioCaptureDefaults.deviceId;s.options.audioCaptureDefaults.deviceId=y;const C=Array.from(s.localParticipant.audioTrackPublications.values()).filter(k=>k.source===M.Source.Microphone);try{g=(yield Promise.all(C.map(k=>{var b;return(b=k.audioTrack)===null||b===void 0?void 0:b.setDeviceId(y)}))).every(k=>k===!0)}catch(k){throw s.options.audioCaptureDefaults.deviceId=v,k}const T=C.some(k=>{var b,w;return(w=(b=k.track)===null||b===void 0?void 0:b.isMuted)!==null&&w!==void 0?w:!1});g&&T&&(f=!0)}else if(i==="videoinput"){f=s.localParticipant.videoTrackPublications.size===0;const v=(c=s.getActiveDevice(i))!==null&&c!==void 0?c:s.options.videoCaptureDefaults.deviceId;s.options.videoCaptureDefaults.deviceId=y;const C=Array.from(s.localParticipant.videoTrackPublications.values()).filter(T=>T.source===M.Source.Camera);try{g=(yield Promise.all(C.map(T=>{var k;return(k=T.videoTrack)===null||k===void 0?void 0:k.setDeviceId(y)}))).every(T=>T===!0)}catch(T){throw s.options.videoCaptureDefaults.deviceId=v,T}}else if(i==="audiooutput"){if(f=!0,!ll()&&!s.options.webAudioMix||s.options.webAudioMix&&s.audioContext&&!("setSinkId"in s.audioContext))throw new Error("cannot switch audio output, setSinkId not supported");s.options.webAudioMix&&(r=(l=yield tt.getInstance().normalizeDeviceId("audiooutput",r))!==null&&l!==void 0?l:""),(u=(p=s.options).audioOutput)!==null&&u!==void 0||(p.audioOutput={});const v=(d=s.getActiveDevice(i))!==null&&d!==void 0?d:s.options.audioOutput.deviceId;s.options.audioOutput.deviceId=r;try{s.options.webAudioMix&&((h=s.audioContext)===null||h===void 0||h.setSinkId(r)),yield Promise.all(Array.from(s.remoteParticipants.values()).map(C=>C.setAudioOutput({deviceId:r})))}catch(C){throw s.options.audioOutput.deviceId=v,C}}return f&&(s.localParticipant.activeDeviceMap.set(i,r),s.emit(O.ActiveDeviceChanged,i,r)),g}()})}setupLocalParticipantEvents(){this.localParticipant.on(U.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).on(U.ParticipantNameChanged,this.onLocalParticipantNameChanged).on(U.AttributesChanged,this.onLocalAttributesChanged).on(U.TrackMuted,this.onLocalTrackMuted).on(U.TrackUnmuted,this.onLocalTrackUnmuted).on(U.LocalTrackPublished,this.onLocalTrackPublished).on(U.LocalTrackUnpublished,this.onLocalTrackUnpublished).on(U.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).on(U.MediaDevicesError,this.onMediaDevicesError).on(U.AudioStreamAcquired,this.startAudio).on(U.ChatMessage,this.onLocalChatMessageSent).on(U.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged)}recreateEngine(){var e;(e=this.engine)===null||e===void 0||e.close(),this.engine=void 0,this.isResuming=!1,this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.bufferedEvents=[],this.maybeCreateEngine()}onTrackAdded(e,n,i){if(this.state===pe.Connecting||this.state===pe.Reconnecting){const u=()=>{this.onTrackAdded(e,n,i),d()},d=()=>{this.off(O.Reconnected,u),this.off(O.Connected,u),this.off(O.Disconnected,d)};this.once(O.Reconnected,u),this.once(O.Connected,u),this.once(O.Disconnected,d);return}if(this.state===pe.Disconnected){this.log.warn("skipping incoming track after Room disconnected",this.logContext);return}if(e.readyState==="ended"){this.log.info("skipping incoming track as it already ended",this.logContext);return}const r=Ok(n.id),s=r[0];let o=r[1],a=e.id;if(o&&o.startsWith("TR")&&(a=o),s===this.localParticipant.sid){this.log.warn("tried to create RemoteParticipant for local participant",this.logContext);return}const c=Array.from(this.remoteParticipants.values()).find(u=>u.sid===s);if(!c){this.log.error("Tried to add a track for a participant, that's not present. Sid: ".concat(s),this.logContext);return}let l;this.options.adaptiveStream&&(typeof this.options.adaptiveStream=="object"?l=this.options.adaptiveStream:l={}),c.addSubscribedMediaTrack(e,a,n,i,l)}handleDisconnect(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,n=arguments.length>1?arguments[1]:void 0;var i;if(this.clearConnectionReconcile(),this.isResuming=!1,this.bufferedEvents=[],this.transcriptionReceivedTimes.clear(),this.state!==pe.Disconnected){this.regionUrl=void 0;try{this.remoteParticipants.forEach(r=>{r.trackPublications.forEach(s=>{r.unpublishTrack(s.trackSid)})}),this.localParticipant.trackPublications.forEach(r=>{var s,o,a;r.track&&this.localParticipant.unpublishTrack(r.track,e),e?((s=r.track)===null||s===void 0||s.detach(),(o=r.track)===null||o===void 0||o.stop()):(a=r.track)===null||a===void 0||a.stopMonitor()}),this.localParticipant.off(U.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).off(U.ParticipantNameChanged,this.onLocalParticipantNameChanged).off(U.AttributesChanged,this.onLocalAttributesChanged).off(U.TrackMuted,this.onLocalTrackMuted).off(U.TrackUnmuted,this.onLocalTrackUnmuted).off(U.LocalTrackPublished,this.onLocalTrackPublished).off(U.LocalTrackUnpublished,this.onLocalTrackUnpublished).off(U.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).off(U.MediaDevicesError,this.onMediaDevicesError).off(U.AudioStreamAcquired,this.startAudio).off(U.ChatMessage,this.onLocalChatMessageSent).off(U.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged),this.localParticipant.trackPublications.clear(),this.localParticipant.videoTrackPublications.clear(),this.localParticipant.audioTrackPublications.clear(),this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.activeSpeakers=[],this.audioContext&&typeof this.options.webAudioMix=="boolean"&&(this.audioContext.close(),this.audioContext=void 0),ht()&&(window.removeEventListener("beforeunload",this.onPageLeave),window.removeEventListener("pagehide",this.onPageLeave),window.removeEventListener("freeze",this.onPageLeave),(i=navigator.mediaDevices)===null||i===void 0||i.removeEventListener("devicechange",this.handleDeviceChange))}finally{this.setAndEmitConnectionState(pe.Disconnected),this.emit(O.Disconnected,n)}}}handleParticipantDisconnected(e,n){var i;this.remoteParticipants.delete(e),n&&(n.trackPublications.forEach(r=>{n.unpublishTrack(r.trackSid,!0)}),this.emit(O.ParticipantDisconnected,n),n.setDisconnected(),(i=this.localParticipant)===null||i===void 0||i.handleParticipantDisconnected(n.identity))}handleStreamHeader(e,n){return P(this,void 0,void 0,function*(){var i;if(e.contentHeader.case==="byteHeader"){const r=this.byteStreamHandlers.get(e.topic);if(!r){this.log.debug("ignoring incoming byte stream due to no handler for topic",e.topic);return}let s;const o={id:e.streamId,name:(i=e.contentHeader.value.name)!==null&&i!==void 0?i:"unknown",mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:vo(e.timestamp),attributes:e.attributes},a=new ReadableStream({start:c=>{s=c,this.byteStreamControllers.set(e.streamId,{info:o,controller:s,startTime:Date.now()})}});r(new WC(o,a,vo(e.totalLength)),{identity:n})}else if(e.contentHeader.case==="textHeader"){const r=this.textStreamHandlers.get(e.topic);if(!r){this.log.debug("ignoring incoming text stream due to no handler for topic",e.topic);return}let s;const o={id:e.streamId,mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:Number(e.timestamp),attributes:e.attributes},a=new ReadableStream({start:c=>{s=c,this.textStreamControllers.set(e.streamId,{info:o,controller:s,startTime:Date.now()})}});r(new qC(o,a,vo(e.totalLength)),{identity:n})}})}handleStreamChunk(e){const n=this.byteStreamControllers.get(e.streamId);n&&e.content.length>0&&n.controller.enqueue(e);const i=this.textStreamControllers.get(e.streamId);i&&e.content.length>0&&i.controller.enqueue(e)}handleStreamTrailer(e){const n=this.textStreamControllers.get(e.streamId);n&&(n.info.attributes=Object.assign(Object.assign({},n.info.attributes),e.attributes),n.controller.close(),this.textStreamControllers.delete(e.streamId));const i=this.byteStreamControllers.get(e.streamId);i&&(i.info.attributes=Object.assign(Object.assign({},i.info.attributes),e.attributes),i.controller.close(),this.byteStreamControllers.delete(e.streamId))}selectDefaultDevices(){return P(this,void 0,void 0,function*(){var e,n,i;const r=tt.getInstance().previousDevices,s=yield tt.getInstance().getDevices(void 0,!1),o=Tt();if((o==null?void 0:o.name)==="Chrome"&&o.os!=="iOS")for(let c of s){const l=r.find(u=>u.deviceId===c.deviceId);l&&l.label!==""&&l.kind===c.kind&&l.label!==c.label&&this.getActiveDevice(c.kind)==="default"&&this.emit(O.ActiveDeviceChanged,c.kind,c.deviceId)}const a=["audiooutput","audioinput","videoinput"];for(let c of a){const l=Jk(c),u=this.localParticipant.getTrackPublication(l);if(u&&(!((e=u.track)===null||e===void 0)&&e.isUserProvided))continue;const d=s.filter(p=>p.kind===c),h=this.getActiveDevice(c);if(h===((n=r.filter(p=>p.kind===c)[0])===null||n===void 0?void 0:n.deviceId)&&d.length>0&&((i=d[0])===null||i===void 0?void 0:i.deviceId)!==h){yield this.switchActiveDevice(c,d[0].deviceId);continue}c==="audioinput"&&!Ff()||c==="videoinput"||d.length>0&&!d.find(p=>p.deviceId===this.getActiveDevice(c))&&(c!=="audiooutput"||!Ff())&&(yield this.switchActiveDevice(c,d[0].deviceId))}})}acquireAudioContext(){return P(this,void 0,void 0,function*(){var e,n;if(typeof this.options.webAudioMix!="boolean"&&this.options.webAudioMix.audioContext?this.audioContext=this.options.webAudioMix.audioContext:(!this.audioContext||this.audioContext.state==="closed")&&(this.audioContext=(e=Ru())!==null&&e!==void 0?e:void 0),this.options.webAudioMix&&this.remoteParticipants.forEach(r=>r.setAudioContext(this.audioContext)),this.localParticipant.setAudioContext(this.audioContext),this.audioContext&&this.audioContext.state==="suspended")try{yield Promise.race([this.audioContext.resume(),mt(200)])}catch(r){this.log.warn("Could not resume audio context",Object.assign(Object.assign({},this.logContext),{error:r}))}const i=((n=this.audioContext)===null||n===void 0?void 0:n.state)==="running";i!==this.canPlaybackAudio&&(this.audioEnabled=i,this.emit(O.AudioPlaybackStatusChanged,i))})}createParticipant(e,n){var i;let r;return n?r=jo.fromParticipantInfo(this.engine.client,n,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}):r=new jo(this.engine.client,"",e,void 0,void 0,void 0,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}),this.options.webAudioMix&&r.setAudioContext(this.audioContext),!((i=this.options.audioOutput)===null||i===void 0)&&i.deviceId&&r.setAudioOutput(this.options.audioOutput).catch(s=>this.log.warn("Could not set audio output: ".concat(s.message),this.logContext)),r}getOrCreateParticipant(e,n){if(this.remoteParticipants.has(e)){const r=this.remoteParticipants.get(e);return n&&r.updateInfo(n)&&this.sidToIdentity.set(n.sid,n.identity),r}const i=this.createParticipant(e,n);return this.remoteParticipants.set(e,i),this.sidToIdentity.set(n.sid,n.identity),this.emitWhenConnected(O.ParticipantConnected,i),i.on(U.TrackPublished,r=>{this.emitWhenConnected(O.TrackPublished,r,i)}).on(U.TrackSubscribed,(r,s)=>{r.kind===M.Kind.Audio?(r.on(G.AudioPlaybackStarted,this.handleAudioPlaybackStarted),r.on(G.AudioPlaybackFailed,this.handleAudioPlaybackFailed)):r.kind===M.Kind.Video&&(r.on(G.VideoPlaybackFailed,this.handleVideoPlaybackFailed),r.on(G.VideoPlaybackStarted,this.handleVideoPlaybackStarted)),this.emit(O.TrackSubscribed,r,s,i)}).on(U.TrackUnpublished,r=>{this.emit(O.TrackUnpublished,r,i)}).on(U.TrackUnsubscribed,(r,s)=>{this.emit(O.TrackUnsubscribed,r,s,i)}).on(U.TrackMuted,r=>{this.emitWhenConnected(O.TrackMuted,r,i)}).on(U.TrackUnmuted,r=>{this.emitWhenConnected(O.TrackUnmuted,r,i)}).on(U.ParticipantMetadataChanged,r=>{this.emitWhenConnected(O.ParticipantMetadataChanged,r,i)}).on(U.ParticipantNameChanged,r=>{this.emitWhenConnected(O.ParticipantNameChanged,r,i)}).on(U.AttributesChanged,r=>{this.emitWhenConnected(O.ParticipantAttributesChanged,r,i)}).on(U.ConnectionQualityChanged,r=>{this.emitWhenConnected(O.ConnectionQualityChanged,r,i)}).on(U.ParticipantPermissionsChanged,r=>{this.emitWhenConnected(O.ParticipantPermissionsChanged,r,i)}).on(U.TrackSubscriptionStatusChanged,(r,s)=>{this.emitWhenConnected(O.TrackSubscriptionStatusChanged,r,s,i)}).on(U.TrackSubscriptionFailed,(r,s)=>{this.emit(O.TrackSubscriptionFailed,r,i,s)}).on(U.TrackSubscriptionPermissionChanged,(r,s)=>{this.emitWhenConnected(O.TrackSubscriptionPermissionChanged,r,s,i)}).on(U.Active,()=>{this.emitWhenConnected(O.ParticipantActive,i),i.kind===bi.AGENT&&this.localParticipant.setActiveAgent(i)}),n&&i.updateInfo(n),i}sendSyncState(){const e=Array.from(this.remoteParticipants.values()).reduce((i,r)=>(i.push(...r.getTrackPublications()),i),[]),n=this.localParticipant.getTrackPublications();this.engine.sendSyncState(e,n)}updateSubscriptions(){for(const e of this.remoteParticipants.values())for(const n of e.videoTrackPublications.values())n.isSubscribed&&Kk(n)&&n.emitTrackUpdate()}getRemoteParticipantBySid(e){const n=this.sidToIdentity.get(e);if(n)return this.remoteParticipants.get(n)}registerConnectionReconcile(){this.clearConnectionReconcile();let e=0;this.connectionReconcileInterval=rt.setInterval(()=>{!this.engine||this.engine.isClosed||!this.engine.verifyTransport()?(e++,this.log.warn("detected connection state mismatch",Object.assign(Object.assign({},this.logContext),{numFailures:e,engine:this.engine?{closed:this.engine.isClosed,transportsConnected:this.engine.verifyTransport()}:void 0})),e>=3&&(this.recreateEngine(),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,$t.STATE_MISMATCH))):e=0},nw)}clearConnectionReconcile(){this.connectionReconcileInterval&&rt.clearInterval(this.connectionReconcileInterval)}setAndEmitConnectionState(e){return e===this.state?!1:(this.state=e,this.emit(O.ConnectionStateChanged,this.state),!0)}emitBufferedEvents(){this.bufferedEvents.forEach(e=>{let[n,i]=e;this.emit(n,...i)}),this.bufferedEvents=[]}emitWhenConnected(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];if(this.state===pe.Reconnecting||this.isResuming||!this.engine||this.engine.pendingReconnect)this.bufferedEvents.push([e,i]);else if(this.state===pe.Connected)return this.emit(e,...i);return!1}simulateParticipants(e){return P(this,void 0,void 0,function*(){var n,i;const r=Object.assign({audio:!0,video:!0,useRealTracks:!1},e.publish),s=Object.assign({count:9,audio:!1,video:!0,aspectRatios:[1.66,1.7,1.3]},e.participants);if(this.handleDisconnect(),this.roomInfo=new ra({sid:"RM_SIMULATED",name:"simulated-room",emptyTimeout:0,maxParticipants:0,creationTime:_e.parse(new Date().getTime()),metadata:"",numParticipants:1,numPublishers:1,turnPassword:"",enabledCodecs:[],activeRecording:!1}),this.localParticipant.updateInfo(new yi({identity:"simulated-local",name:"local-name"})),this.setupLocalParticipantEvents(),this.emit(O.SignalConnected),this.emit(O.Connected),this.setAndEmitConnectionState(pe.Connected),r.video){const o=new Sl(M.Kind.Video,new Hi({source:Ge.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO,name:"video-dummy"}),new Vo(r.useRealTracks?(yield window.navigator.mediaDevices.getUserMedia({video:!0})).getVideoTracks()[0]:$f(160*((n=s.aspectRatios[0])!==null&&n!==void 0?n:1),160,!0,!0),void 0,!1,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(o),this.localParticipant.emit(U.LocalTrackPublished,o)}if(r.audio){const o=new Sl(M.Kind.Audio,new Hi({source:Ge.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO}),new Lo(r.useRealTracks?(yield navigator.mediaDevices.getUserMedia({audio:!0})).getAudioTracks()[0]:za(),void 0,!1,this.audioContext,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(o),this.localParticipant.emit(U.LocalTrackPublished,o)}for(let o=0;o<s.count-1;o+=1){let a=new yi({sid:Math.floor(Math.random()*1e4).toString(),identity:"simulated-".concat(o),state:Xi.ACTIVE,tracks:[],joinedAt:_e.parse(Date.now())});const c=this.getOrCreateParticipant(a.identity,a);if(s.video){const l=$f(160*((i=s.aspectRatios[o%s.aspectRatios.length])!==null&&i!==void 0?i:1),160,!1,!0),u=new Hi({source:Ge.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO});c.addSubscribedMediaTrack(l,u.sid,new MediaStream([l]),new RTCRtpReceiver),a.tracks=[...a.tracks,u]}if(s.audio){const l=za(),u=new Hi({source:Ge.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO});c.addSubscribedMediaTrack(l,u.sid,new MediaStream([l]),new RTCRtpReceiver),a.tracks=[...a.tracks,u]}c.updateInfo(a)}})}emit(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];if(e!==O.ActiveSpeakersChanged&&e!==O.TranscriptionReceived){const s=U0(i).filter(o=>o!==void 0);this.log.debug("room event ".concat(e),Object.assign(Object.assign({},this.logContext),{event:e,args:s}))}return super.emit(e,...i)}}wn.cleanupRegistry=typeof FinalizationRegistry<"u"&&new FinalizationRegistry(t=>{t()});function U0(t){return t.map(e=>{if(e)return Array.isArray(e)?U0(e):typeof e=="object"?"logContext"in e?e.logContext:void 0:e})}var jt;(function(t){t[t.IDLE=0]="IDLE",t[t.RUNNING=1]="RUNNING",t[t.SKIPPED=2]="SKIPPED",t[t.SUCCESS=3]="SUCCESS",t[t.FAILED=4]="FAILED"})(jt||(jt={}));class ti extends ln.EventEmitter{constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(),this.status=jt.IDLE,this.logs=[],this.options={},this.url=e,this.token=n,this.name=this.constructor.name,this.room=new wn(i.roomOptions),this.connectOptions=i.connectOptions,this.options=i}run(e){return P(this,void 0,void 0,function*(){if(this.status!==jt.IDLE)throw Error("check is running already");this.setStatus(jt.RUNNING);try{yield this.perform()}catch(n){n instanceof Error&&(this.options.errorsAsWarnings?this.appendWarning(n.message):this.appendError(n.message))}return yield this.disconnect(),yield new Promise(n=>setTimeout(n,500)),this.status!==jt.SKIPPED&&this.setStatus(this.isSuccess()?jt.SUCCESS:jt.FAILED),e&&e(),this.getInfo()})}isSuccess(){return!this.logs.some(e=>e.level==="error")}connect(e){return P(this,void 0,void 0,function*(){return this.room.state===pe.Connected?this.room:(e||(e=this.url),yield this.room.connect(e,this.token,this.connectOptions),this.room)})}disconnect(){return P(this,void 0,void 0,function*(){this.room&&this.room.state!==pe.Disconnected&&(yield this.room.disconnect(),yield new Promise(e=>setTimeout(e,500)))})}skip(){this.setStatus(jt.SKIPPED)}switchProtocol(e){return P(this,void 0,void 0,function*(){let n=!1,i=!1;if(this.room.on(O.Reconnecting,()=>{n=!0}),this.room.once(O.Reconnected,()=>{i=!0}),this.room.simulateScenario("force-".concat(e)),yield new Promise(s=>setTimeout(s,1e3)),!n)return;const r=Date.now()+1e4;for(;Date.now()<r;){if(i)return;yield mt(100)}throw new Error("Could not reconnect using ".concat(e," protocol after 10 seconds"))})}appendMessage(e){this.logs.push({level:"info",message:e}),this.emit("update",this.getInfo())}appendWarning(e){this.logs.push({level:"warning",message:e}),this.emit("update",this.getInfo())}appendError(e){this.logs.push({level:"error",message:e}),this.emit("update",this.getInfo())}setStatus(e){this.status=e,this.emit("update",this.getInfo())}get engine(){var e;return(e=this.room)===null||e===void 0?void 0:e.engine}getInfo(){return{logs:this.logs,name:this.name,status:this.status,description:this.description}}}class iw extends ti{get description(){return"Cloud regions"}perform(){return P(this,void 0,void 0,function*(){const e=new yl(this.url,this.token);if(!e.isCloud()){this.skip();return}const n=[],i=new Set;for(let s=0;s<3;s++){const o=yield e.getNextBestRegionUrl();if(!o)break;if(i.has(o))continue;i.add(o);const a=yield this.checkCloudRegion(o);this.appendMessage("".concat(a.region," RTT: ").concat(a.rtt,"ms, duration: ").concat(a.duration,"ms")),n.push(a)}n.sort((s,o)=>(s.duration-o.duration)*.5+(s.rtt-o.rtt)*.5);const r=n[0];this.bestStats=r,this.appendMessage("best Cloud region: ".concat(r.region))})}getInfo(){const e=super.getInfo();return e.data=this.bestStats,e}checkCloudRegion(e){return P(this,void 0,void 0,function*(){var n,i;yield this.connect(e),this.options.protocol==="tcp"&&(yield this.switchProtocol("tcp"));const r=(n=this.room.serverInfo)===null||n===void 0?void 0:n.region;if(!r)throw new Error("Region not found");const s=yield this.room.localParticipant.streamText({topic:"test"}),o=1e3,c=1e6/o,l="A".repeat(o),u=Date.now();for(let g=0;g<c;g++)yield s.write(l);yield s.close();const d=Date.now(),h=yield(i=this.room.engine.pcManager)===null||i===void 0?void 0:i.publisher.getStats(),p={region:r,rtt:1e4,duration:d-u};return h==null||h.forEach(g=>{g.type==="candidate-pair"&&g.nominated&&(p.rtt=g.currentRoundTripTime*1e3)}),yield this.disconnect(),p})}}const Qa=1e4;class rw extends ti{get description(){return"Connection via UDP vs TCP"}perform(){return P(this,void 0,void 0,function*(){const e=yield this.checkConnectionProtocol("udp"),n=yield this.checkConnectionProtocol("tcp");this.bestStats=e,e.qualityLimitationDurations.bandwidth-n.qualityLimitationDurations.bandwidth>.5||(e.packetsLost-n.packetsLost)/e.packetsSent>.01?(this.appendMessage("best connection quality via tcp"),this.bestStats=n):this.appendMessage("best connection quality via udp");const i=this.bestStats;this.appendMessage("upstream bitrate: ".concat((i.bitrateTotal/i.count/1e3/1e3).toFixed(2)," mbps")),this.appendMessage("RTT: ".concat((i.rttTotal/i.count*1e3).toFixed(2)," ms")),this.appendMessage("jitter: ".concat((i.jitterTotal/i.count*1e3).toFixed(2)," ms")),i.packetsLost>0&&this.appendWarning("packets lost: ".concat((i.packetsLost/i.packetsSent*100).toFixed(2),"%")),i.qualityLimitationDurations.bandwidth>1&&this.appendWarning("bandwidth limited ".concat((i.qualityLimitationDurations.bandwidth/(Qa/1e3)*100).toFixed(2),"%")),i.qualityLimitationDurations.cpu>0&&this.appendWarning("cpu limited ".concat((i.qualityLimitationDurations.cpu/(Qa/1e3)*100).toFixed(2),"%"))})}getInfo(){const e=super.getInfo();return e.data=this.bestStats,e}checkConnectionProtocol(e){return P(this,void 0,void 0,function*(){yield this.connect(),e==="tcp"?yield this.switchProtocol("tcp"):yield this.switchProtocol("udp");const n=document.createElement("canvas");n.width=1280,n.height=720;const i=n.getContext("2d");if(!i)throw new Error("Could not get canvas context");let r=0;const s=()=>{r=(r+1)%360,i.fillStyle="hsl(".concat(r,", 100%, 50%)"),i.fillRect(0,0,n.width,n.height),requestAnimationFrame(s)};s();const a=n.captureStream(30).getVideoTracks()[0],l=(yield this.room.localParticipant.publishTrack(a,{simulcast:!1,degradationPreference:"maintain-resolution",videoEncoding:{maxBitrate:2e6}})).track,u={protocol:e,packetsLost:0,packetsSent:0,qualityLimitationDurations:{},rttTotal:0,jitterTotal:0,bitrateTotal:0,count:0},d=setInterval(()=>P(this,void 0,void 0,function*(){const h=yield l.getRTCStatsReport();h==null||h.forEach(p=>{p.type==="outbound-rtp"?(u.packetsSent=p.packetsSent,u.qualityLimitationDurations=p.qualityLimitationDurations,u.bitrateTotal+=p.targetBitrate,u.count++):p.type==="remote-inbound-rtp"&&(u.packetsLost=p.packetsLost,u.rttTotal+=p.roundTripTime,u.jitterTotal+=p.jitter)})}),1e3);return yield new Promise(h=>setTimeout(h,Qa)),clearInterval(d),a.stop(),n.remove(),yield this.disconnect(),u})}}class sw extends ti{get description(){return"Can publish audio"}perform(){return P(this,void 0,void 0,function*(){var e;const n=yield this.connect(),i=yield XC();if(yield E0(i,1e3))throw new Error("unable to detect audio from microphone");this.appendMessage("detected audio from microphone"),n.localParticipant.publishTrack(i),yield new Promise(a=>setTimeout(a,3e3));const s=yield(e=i.sender)===null||e===void 0?void 0:e.getStats();if(!s)throw new Error("Could not get RTCStats");let o=0;if(s.forEach(a=>{a.type==="outbound-rtp"&&(a.kind==="audio"||!a.kind&&a.mediaType==="audio")&&(o=a.packetsSent)}),o===0)throw new Error("Could not determine packets are sent");this.appendMessage("published ".concat(o," audio packets"))})}}class ow extends ti{get description(){return"Can publish video"}perform(){return P(this,void 0,void 0,function*(){var e;const n=yield this.connect(),i=yield JC();yield this.checkForVideo(i.mediaStreamTrack),n.localParticipant.publishTrack(i),yield new Promise(o=>setTimeout(o,5e3));const r=yield(e=i.sender)===null||e===void 0?void 0:e.getStats();if(!r)throw new Error("Could not get RTCStats");let s=0;if(r.forEach(o=>{o.type==="outbound-rtp"&&(o.kind==="video"||!o.kind&&o.mediaType==="video")&&(s+=o.packetsSent)}),s===0)throw new Error("Could not determine packets are sent");this.appendMessage("published ".concat(s," video packets"))})}checkForVideo(e){return P(this,void 0,void 0,function*(){const n=new MediaStream;n.addTrack(e.clone());const i=document.createElement("video");i.srcObject=n,i.muted=!0,yield new Promise(r=>{i.onplay=()=>{setTimeout(()=>{var s,o,a,c;const l=document.createElement("canvas"),u=e.getSettings(),d=(o=(s=u.width)!==null&&s!==void 0?s:i.videoWidth)!==null&&o!==void 0?o:1280,h=(c=(a=u.height)!==null&&a!==void 0?a:i.videoHeight)!==null&&c!==void 0?c:720;l.width=d,l.height=h;const p=l.getContext("2d");p.drawImage(i,0,0);const f=p.getImageData(0,0,l.width,l.height).data;let y=!0;for(let v=0;v<f.length;v+=4)if(f[v]!==0||f[v+1]!==0||f[v+2]!==0){y=!1;break}y?this.appendError("camera appears to be producing only black frames"):this.appendMessage("received video frames"),r()},1e3)},i.play()}),n.getTracks().forEach(r=>r.stop()),i.remove()})}}class aw extends ti{get description(){return"Resuming connection after interruption"}perform(){return P(this,void 0,void 0,function*(){var e;const n=yield this.connect();let i=!1,r=!1,s;const o=new Promise(l=>{setTimeout(l,5e3),s=l}),a=()=>{i=!0};n.on(O.SignalReconnecting,a).on(O.Reconnecting,a).on(O.Reconnected,()=>{r=!0,s(!0)}),(e=n.engine.client.ws)===null||e===void 0||e.close();const c=n.engine.client.onClose;if(c&&c(""),yield o,i){if(!r||n.state!==pe.Connected)throw this.appendWarning("reconnection is only possible in Redis-based configurations"),new Error("Not able to reconnect")}else throw new Error("Did not attempt to reconnect")})}}class cw extends ti{get description(){return"Can connect via TURN"}perform(){return P(this,void 0,void 0,function*(){var e,n;const i=new Au,r=yield i.join(this.url,this.token,{autoSubscribe:!0,maxRetries:0,e2eeEnabled:!1,websocketTimeout:15e3});let s=!1,o=!1,a=!1;for(let c of r.iceServers)for(let l of c.urls)l.startsWith("turn:")?(o=!0,a=!0):l.startsWith("turns:")&&(o=!0,a=!0,s=!0),l.startsWith("stun:")&&(a=!0);a?o&&!s&&this.appendWarning("TURN is configured server side, but TURN/TLS is unavailable."):this.appendWarning("No STUN servers configured on server side."),yield i.close(),!((n=(e=this.connectOptions)===null||e===void 0?void 0:e.rtcConfig)===null||n===void 0)&&n.iceServers||o?yield this.room.connect(this.url,this.token,{rtcConfig:{iceTransportPolicy:"relay"}}):(this.appendWarning("No TURN servers configured."),this.skip(),yield new Promise(c=>setTimeout(c,0)))})}}class lw extends ti{get description(){return"Establishing WebRTC connection"}perform(){return P(this,void 0,void 0,function*(){let e=!1,n=!1;this.room.on(O.SignalConnected,()=>{const i=this.room.engine.client.onTrickle;this.room.engine.client.onTrickle=(r,s)=>{if(r.candidate){const o=new RTCIceCandidate(r);let a="".concat(o.protocol," ").concat(o.address,":").concat(o.port," ").concat(o.type);o.address&&(uw(o.address)?a+=" (private)":o.protocol==="tcp"&&o.tcpType==="passive"?(e=!0,a+=" (passive)"):o.protocol==="udp"&&(n=!0)),this.appendMessage(a)}i&&i(r,s)},this.room.engine.pcManager&&(this.room.engine.pcManager.subscriber.onIceCandidateError=r=>{r instanceof RTCPeerConnectionIceErrorEvent&&this.appendWarning("error with ICE candidate: ".concat(r.errorCode," ").concat(r.errorText," ").concat(r.url))})});try{yield this.connect(),me.info("now the room is connected")}catch(i){throw this.appendWarning("ports need to be open on firewall in order to connect."),i}e||this.appendWarning("Server is not configured for ICE/TCP"),n||this.appendWarning("No public IPv4 UDP candidates were found. Your server is likely not configured correctly")})}}function uw(t){const e=t.split(".");if(e.length===4){if(e[0]==="10")return!0;if(e[0]==="192"&&e[1]==="168")return!0;if(e[0]==="172"){const n=parseInt(e[1],10);if(n>=16&&n<=31)return!0}}return!1}class dw extends ti{get description(){return"Connecting to signal connection via WebSocket"}perform(){return P(this,void 0,void 0,function*(){var e,n,i;(this.url.startsWith("ws:")||this.url.startsWith("http:"))&&this.appendWarning("Server is insecure, clients may block connections to it");let r=new Au;const s=yield r.join(this.url,this.token,{autoSubscribe:!0,maxRetries:0,e2eeEnabled:!1,websocketTimeout:15e3});this.appendMessage("Connected to server, version ".concat(s.serverVersion,".")),((e=s.serverInfo)===null||e===void 0?void 0:e.edition)===Pg.Cloud&&(!((n=s.serverInfo)===null||n===void 0)&&n.region)&&this.appendMessage("LiveKit Cloud: ".concat((i=s.serverInfo)===null||i===void 0?void 0:i.region)),yield r.close()})}}class tN extends ln.EventEmitter{constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(),this.options={},this.checkResults=new Map,this.url=e,this.token=n,this.options=i}getNextCheckId(){const e=this.checkResults.size;return this.checkResults.set(e,{logs:[],status:jt.IDLE,name:"",description:""}),e}updateCheck(e,n){this.checkResults.set(e,n),this.emit("checkUpdate",e,n)}isSuccess(){return Array.from(this.checkResults.values()).every(e=>e.status!==jt.FAILED)}getResults(){return Array.from(this.checkResults.values())}createAndRunCheck(e){return P(this,void 0,void 0,function*(){const n=this.getNextCheckId(),i=new e(this.url,this.token,this.options),r=o=>{this.updateCheck(n,o)};i.on("update",r);const s=yield i.run();return i.off("update",r),s})}checkWebsocket(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(dw)})}checkWebRTC(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(lw)})}checkTURN(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(cw)})}checkReconnect(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(aw)})}checkPublishAudio(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(sw)})}checkPublishVideo(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(ow)})}checkConnectionProtocol(){return P(this,void 0,void 0,function*(){const e=yield this.createAndRunCheck(rw);if(e.data&&"protocol"in e.data){const n=e.data;this.options.protocol=n.protocol}return e})}checkCloudRegion(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(iw)})}}const Lu=B.createContext({});function Vu(t){const e=B.useRef(null);return e.current===null&&(e.current=t()),e.current}const Fu=typeof window<"u",B0=Fu?B.useLayoutEffect:B.useEffect,ua=B.createContext(null),ju=B.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});function $0(t){return typeof t=="object"&&t!==null}function Uu(t){return $0(t)&&"offsetHeight"in t}class fw extends m.Component{getSnapshotBeforeUpdate(e){const n=this.props.childRef.current;if(n&&e.isPresent&&!this.props.isPresent){const i=n.offsetParent,r=Uu(i)&&i.offsetWidth||0,s=this.props.sizeRef.current;s.height=n.offsetHeight||0,s.width=n.offsetWidth||0,s.top=n.offsetTop,s.left=n.offsetLeft,s.right=r-s.width-s.left}return null}componentDidUpdate(){}render(){return this.props.children}}function hw({children:t,isPresent:e,anchorX:n}){const i=B.useId(),r=B.useRef(null),s=B.useRef({width:0,height:0,top:0,left:0,right:0}),{nonce:o}=B.useContext(ju);return B.useInsertionEffect(()=>{const{width:a,height:c,top:l,left:u,right:d}=s.current;if(e||!r.current||!a||!c)return;const h=n==="left"?`left: ${u}`:`right: ${d}`;r.current.dataset.motionPopId=i;const p=document.createElement("style");return o&&(p.nonce=o),document.head.appendChild(p),p.sheet&&p.sheet.insertRule(`
|
|
69
|
+
`},Za}var Zf;function pC(){if(Zf)return Nt;Zf=1;var t=fC(),e=hC(),n=Iu();return Nt.grammar=n,Nt.write=e,Nt.parse=t.parse,Nt.parseParams=t.parseParams,Nt.parseFmtpConfig=t.parseFmtpConfig,Nt.parsePayloads=t.parsePayloads,Nt.parseRemoteCandidates=t.parseRemoteCandidates,Nt.parseImageAttributes=t.parseImageAttributes,Nt.parseSimulcastStreamList=t.parseSimulcastStreamList,Nt}var Vn=pC();function _u(t,e,n){var i,r,s;e===void 0&&(e=50),n===void 0&&(n={});var o=(i=n.isImmediate)!=null&&i,a=(r=n.callback)!=null&&r,c=n.maxWait,l=Date.now(),u=[];function d(){if(c!==void 0){var m=Date.now()-l;if(m+e>=c)return c-m}return e}var h=function(){var m=[].slice.call(arguments),g=this;return new Promise(function(f,y){var v=o&&s===void 0;if(s!==void 0&&clearTimeout(s),s=setTimeout(function(){if(s=void 0,l=Date.now(),!o){var T=t.apply(g,m);a&&a(T),u.forEach(function(k){return(0,k.resolve)(T)}),u=[]}},d()),v){var C=t.apply(g,m);return a&&a(C),f(C)}u.push({resolve:f,reject:y})})};return h.cancel=function(m){s!==void 0&&clearTimeout(s),u.forEach(function(g){return(0,g.reject)(m)}),u=[]},h}const mC=.7,gC=20,ir={NegotiationStarted:"negotiationStarted",NegotiationComplete:"negotiationComplete",RTPVideoPayloadTypes:"rtpVideoPayloadTypes"};class Yf extends ln.EventEmitter{get pc(){return this._pc||(this._pc=this.createPC()),this._pc}constructor(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var i;super(),this.log=me,this.ddExtID=0,this.latestOfferId=0,this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate=!1,this.trackBitrates=[],this.remoteStereoMids=[],this.remoteNackMids=[],this.negotiate=_u(r=>P(this,void 0,void 0,function*(){this.emit(ir.NegotiationStarted);try{yield this.createAndSendOffer()}catch(s){if(r)r(s);else throw s}}),gC),this.close=()=>{this._pc&&(this._pc.close(),this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,this._pc.onicegatheringstatechange=null,this._pc.ondatachannel=null,this._pc.onnegotiationneeded=null,this._pc.onsignalingstatechange=null,this._pc.onicecandidate=null,this._pc.ondatachannel=null,this._pc.ontrack=null,this._pc.onconnectionstatechange=null,this._pc.oniceconnectionstatechange=null,this._pc=null)},this.log=Cn((i=n.loggerName)!==null&&i!==void 0?i:zt.PCTransport),this.loggerOptions=n,this.config=e,this._pc=this.createPC()}createPC(){const e=new RTCPeerConnection(this.config);return e.onicecandidate=n=>{var i;n.candidate&&((i=this.onIceCandidate)===null||i===void 0||i.call(this,n.candidate))},e.onicecandidateerror=n=>{var i;(i=this.onIceCandidateError)===null||i===void 0||i.call(this,n)},e.oniceconnectionstatechange=()=>{var n;(n=this.onIceConnectionStateChange)===null||n===void 0||n.call(this,e.iceConnectionState)},e.onsignalingstatechange=()=>{var n;(n=this.onSignalingStatechange)===null||n===void 0||n.call(this,e.signalingState)},e.onconnectionstatechange=()=>{var n;(n=this.onConnectionStateChange)===null||n===void 0||n.call(this,e.connectionState)},e.ondatachannel=n=>{var i;(i=this.onDataChannel)===null||i===void 0||i.call(this,n)},e.ontrack=n=>{var i;(i=this.onTrack)===null||i===void 0||i.call(this,n)},e}get logContext(){var e,n;return Object.assign({},(n=(e=this.loggerOptions).loggerContextCb)===null||n===void 0?void 0:n.call(e))}get isICEConnected(){return this._pc!==null&&(this.pc.iceConnectionState==="connected"||this.pc.iceConnectionState==="completed")}addIceCandidate(e){return P(this,void 0,void 0,function*(){if(this.pc.remoteDescription&&!this.restartingIce)return this.pc.addIceCandidate(e);this.pendingCandidates.push(e)})}setRemoteDescription(e,n){return P(this,void 0,void 0,function*(){var i;if(e.type==="answer"&&this.latestOfferId>0&&n>0&&n!==this.latestOfferId)return this.log.warn("ignoring answer for old offer",Object.assign(Object.assign({},this.logContext),{offerId:n,latestOfferId:this.latestOfferId})),!1;let r;if(e.type==="offer"){let{stereoMids:s,nackMids:o}=vC(e);this.remoteStereoMids=s,this.remoteNackMids=o}else if(e.type==="answer"){const s=Vn.parse((i=e.sdp)!==null&&i!==void 0?i:"");s.media.forEach(o=>{o.type==="audio"&&this.trackBitrates.some(a=>{if(!a.transceiver||o.mid!=a.transceiver.mid)return!1;let c=0;if(o.rtp.some(u=>u.codec.toUpperCase()===a.codec.toUpperCase()?(c=u.payload,!0):!1),c===0)return!0;let l=!1;for(const u of o.fmtp)if(u.payload===c){u.config=u.config.split(";").filter(d=>!d.includes("maxaveragebitrate")).join(";"),a.maxbr>0&&(u.config+=";maxaveragebitrate=".concat(a.maxbr*1e3)),l=!0;break}return l||a.maxbr>0&&o.fmtp.push({payload:c,config:"maxaveragebitrate=".concat(a.maxbr*1e3)}),!0})}),r=Vn.write(s)}return yield this.setMungedSDP(e,r,!0),this.pendingCandidates.forEach(s=>{this.pc.addIceCandidate(s)}),this.pendingCandidates=[],this.restartingIce=!1,this.renegotiate?(this.renegotiate=!1,yield this.createAndSendOffer()):e.type==="answer"&&(this.emit(ir.NegotiationComplete),e.sdp&&Vn.parse(e.sdp).media.forEach(o=>{o.type==="video"&&this.emit(ir.RTPVideoPayloadTypes,o.rtp)})),!0})}createAndSendOffer(e){return P(this,void 0,void 0,function*(){var n;const i=this.latestOfferId+1;if(this.latestOfferId=i,this.onOffer===void 0)return;if(e!=null&&e.iceRestart&&(this.log.debug("restarting ICE",this.logContext),this.restartingIce=!0),this._pc&&this._pc.signalingState==="have-local-offer"){const o=this._pc.remoteDescription;if(e!=null&&e.iceRestart&&o)yield this._pc.setRemoteDescription(o);else{this.renegotiate=!0;return}}else if(!this._pc||this._pc.signalingState==="closed"){this.log.warn("could not createOffer with closed peer connection",this.logContext);return}this.log.debug("starting to negotiate",this.logContext);const r=yield this.pc.createOffer(e);this.log.debug("original offer",Object.assign({sdp:r.sdp},this.logContext));const s=Vn.parse((n=r.sdp)!==null&&n!==void 0?n:"");if(s.media.forEach(o=>{Xf(o),o.type==="audio"?Jf(o,[],[]):o.type==="video"&&this.trackBitrates.some(a=>{if(!o.msid||!a.cid||!o.msid.includes(a.cid))return!1;let c=0;if(o.rtp.some(u=>u.codec.toUpperCase()===a.codec.toUpperCase()?(c=u.payload,!0):!1),c===0||(kn(a.codec)&&this.ensureVideoDDExtensionForSVC(o,s),a.codec!=="av1"))return!0;const l=Math.round(a.maxbr*mC);for(const u of o.fmtp)if(u.payload===c){u.config.includes("x-google-start-bitrate")||(u.config+=";x-google-start-bitrate=".concat(l));break}return!0})}),this.latestOfferId>i){this.log.warn("latestOfferId mismatch",Object.assign(Object.assign({},this.logContext),{latestOfferId:this.latestOfferId,offerId:i}));return}yield this.setMungedSDP(r,Vn.write(s)),this.onOffer(r,this.latestOfferId)})}createAndSetAnswer(){return P(this,void 0,void 0,function*(){var e;const n=yield this.pc.createAnswer(),i=Vn.parse((e=n.sdp)!==null&&e!==void 0?e:"");return i.media.forEach(r=>{Xf(r),r.type==="audio"&&Jf(r,this.remoteStereoMids,this.remoteNackMids)}),yield this.setMungedSDP(n,Vn.write(i)),n})}createDataChannel(e,n){return this.pc.createDataChannel(e,n)}addTransceiver(e,n){return this.pc.addTransceiver(e,n)}addTrack(e){if(!this._pc)throw new Je("PC closed, cannot add track");return this._pc.addTrack(e)}setTrackCodecBitrate(e){this.trackBitrates.push(e)}setConfiguration(e){var n;if(!this._pc)throw new Je("PC closed, cannot configure");return(n=this._pc)===null||n===void 0?void 0:n.setConfiguration(e)}canRemoveTrack(){var e;return!!(!((e=this._pc)===null||e===void 0)&&e.removeTrack)}removeTrack(e){var n;return(n=this._pc)===null||n===void 0?void 0:n.removeTrack(e)}getConnectionState(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.connectionState)!==null&&n!==void 0?n:"closed"}getICEConnectionState(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.iceConnectionState)!==null&&n!==void 0?n:"closed"}getSignallingState(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.signalingState)!==null&&n!==void 0?n:"closed"}getTransceivers(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.getTransceivers())!==null&&n!==void 0?n:[]}getSenders(){var e,n;return(n=(e=this._pc)===null||e===void 0?void 0:e.getSenders())!==null&&n!==void 0?n:[]}getLocalDescription(){var e;return(e=this._pc)===null||e===void 0?void 0:e.localDescription}getRemoteDescription(){var e;return(e=this.pc)===null||e===void 0?void 0:e.remoteDescription}getStats(){return this.pc.getStats()}getConnectedAddress(){return P(this,void 0,void 0,function*(){var e;if(!this._pc)return;let n="";const i=new Map,r=new Map;if((yield this._pc.getStats()).forEach(a=>{switch(a.type){case"transport":n=a.selectedCandidatePairId;break;case"candidate-pair":n===""&&a.selected&&(n=a.id),i.set(a.id,a);break;case"remote-candidate":r.set(a.id,"".concat(a.address,":").concat(a.port));break}}),n==="")return;const o=(e=i.get(n))===null||e===void 0?void 0:e.remoteCandidateId;if(o!==void 0)return r.get(o)})}setMungedSDP(e,n,i){return P(this,void 0,void 0,function*(){if(n){const r=e.sdp;e.sdp=n;try{this.log.debug("setting munged ".concat(i?"remote":"local"," description"),this.logContext),i?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e);return}catch(s){this.log.warn("not able to set ".concat(e.type,", falling back to unmodified sdp"),Object.assign(Object.assign({},this.logContext),{error:s,sdp:n})),e.sdp=r}}try{i?yield this.pc.setRemoteDescription(e):yield this.pc.setLocalDescription(e)}catch(r){let s="unknown error";r instanceof Error?s=r.message:typeof r=="string"&&(s=r);const o={error:s,sdp:e.sdp};throw!i&&this.pc.remoteDescription&&(o.remoteSdp=this.pc.remoteDescription),this.log.error("unable to set ".concat(e.type),Object.assign(Object.assign({},this.logContext),{fields:o})),new rl(s)}})}ensureVideoDDExtensionForSVC(e,n){var i,r;if(!((i=e.ext)===null||i===void 0?void 0:i.some(o=>o.uri===Vf))){if(this.ddExtID===0){let o=0;n.media.forEach(a=>{var c;a.type==="video"&&((c=a.ext)===null||c===void 0||c.forEach(l=>{l.value>o&&(o=l.value)}))}),this.ddExtID=o+1}(r=e.ext)===null||r===void 0||r.push({value:this.ddExtID,uri:Vf})}}}function Jf(t,e,n){let i=0;t.rtp.some(r=>r.codec==="opus"?(i=r.payload,!0):!1),i>0&&(t.rtcpFb||(t.rtcpFb=[]),n.includes(t.mid)&&!t.rtcpFb.some(r=>r.payload===i&&r.type==="nack")&&t.rtcpFb.push({payload:i,type:"nack"}),e.includes(t.mid)&&t.fmtp.some(r=>r.payload===i?(r.config.includes("stereo=1")||(r.config+=";stereo=1"),!0):!1))}function vC(t){var e;const n=[],i=[],r=Vn.parse((e=t.sdp)!==null&&e!==void 0?e:"");let s=0;return r.media.forEach(o=>{var a;o.type==="audio"&&(o.rtp.some(c=>c.codec==="opus"?(s=c.payload,!0):!1),!((a=o.rtcpFb)===null||a===void 0)&&a.some(c=>c.payload===s&&c.type==="nack")&&i.push(o.mid),o.fmtp.some(c=>c.payload===s?(c.config.includes("sprop-stereo=1")&&n.push(o.mid),!0):!1))}),{stereoMids:n,nackMids:i}}function Xf(t){if(t.connection){const e=t.connection.ip.indexOf(":")>=0;(t.connection.version===4&&e||t.connection.version===6&&!e)&&(t.connection.ip="0.0.0.0",t.connection.version=4)}}const ml="vp8",yC={audioPreset:sl.music,dtx:!0,red:!0,forceStereo:!1,simulcast:!0,screenShareEncoding:Eu.h1080fps15.encoding,stopMicTrackOnMute:!1,videoCodec:ml,backupCodec:!0,preConnectBuffer:!1},A0={deviceId:{ideal:"default"},autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0,voiceIsolation:!0},I0={deviceId:{ideal:"default"},resolution:ss.h720.resolution},bC={adaptiveStream:!1,dynacast:!1,stopLocalTrackOnUnpublish:!0,reconnectPolicy:new sk,disconnectOnPageLeave:!0,webAudioMix:!1},Mu={autoSubscribe:!0,maxRetries:1,peerConnectionTimeout:15e3,websocketTimeout:15e3};var Ve;(function(t){t[t.NEW=0]="NEW",t[t.CONNECTING=1]="CONNECTING",t[t.CONNECTED=2]="CONNECTED",t[t.FAILED=3]="FAILED",t[t.CLOSING=4]="CLOSING",t[t.CLOSED=5]="CLOSED"})(Ve||(Ve={}));class SC{get needsPublisher(){return this.isPublisherConnectionRequired}get needsSubscriber(){return this.isSubscriberConnectionRequired}get currentState(){return this.state}constructor(e,n,i){var r;this.peerConnectionTimeout=Mu.peerConnectionTimeout,this.log=me,this.updateState=()=>{var s;const o=this.state,a=this.requiredTransports.map(c=>c.getConnectionState());a.every(c=>c==="connected")?this.state=Ve.CONNECTED:a.some(c=>c==="failed")?this.state=Ve.FAILED:a.some(c=>c==="connecting")?this.state=Ve.CONNECTING:a.every(c=>c==="closed")?this.state=Ve.CLOSED:a.some(c=>c==="closed")?this.state=Ve.CLOSING:a.every(c=>c==="new")&&(this.state=Ve.NEW),o!==this.state&&(this.log.debug("pc state change: from ".concat(Ve[o]," to ").concat(Ve[this.state]),this.logContext),(s=this.onStateChange)===null||s===void 0||s.call(this,this.state,this.publisher.getConnectionState(),this.subscriber.getConnectionState()))},this.log=Cn((r=i.loggerName)!==null&&r!==void 0?r:zt.PCManager),this.loggerOptions=i,this.isPublisherConnectionRequired=!n,this.isSubscriberConnectionRequired=n,this.publisher=new Yf(e,i),this.subscriber=new Yf(e,i),this.publisher.onConnectionStateChange=this.updateState,this.subscriber.onConnectionStateChange=this.updateState,this.publisher.onIceConnectionStateChange=this.updateState,this.subscriber.onIceConnectionStateChange=this.updateState,this.publisher.onSignalingStatechange=this.updateState,this.subscriber.onSignalingStatechange=this.updateState,this.publisher.onIceCandidate=s=>{var o;(o=this.onIceCandidate)===null||o===void 0||o.call(this,s,Bt.PUBLISHER)},this.subscriber.onIceCandidate=s=>{var o;(o=this.onIceCandidate)===null||o===void 0||o.call(this,s,Bt.SUBSCRIBER)},this.subscriber.onDataChannel=s=>{var o;(o=this.onDataChannel)===null||o===void 0||o.call(this,s)},this.subscriber.onTrack=s=>{var o;(o=this.onTrack)===null||o===void 0||o.call(this,s)},this.publisher.onOffer=(s,o)=>{var a;(a=this.onPublisherOffer)===null||a===void 0||a.call(this,s,o)},this.state=Ve.NEW,this.connectionLock=new ft,this.remoteOfferLock=new ft}get logContext(){var e,n;return Object.assign({},(n=(e=this.loggerOptions).loggerContextCb)===null||n===void 0?void 0:n.call(e))}requirePublisher(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.isPublisherConnectionRequired=e,this.updateState()}requireSubscriber(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;this.isSubscriberConnectionRequired=e,this.updateState()}createAndSendPublisherOffer(e){return this.publisher.createAndSendOffer(e)}setPublisherAnswer(e,n){return this.publisher.setRemoteDescription(e,n)}removeTrack(e){return this.publisher.removeTrack(e)}close(){return P(this,void 0,void 0,function*(){if(this.publisher&&this.publisher.getSignallingState()!=="closed"){const e=this.publisher;for(const n of e.getSenders())try{e.canRemoveTrack()&&e.removeTrack(n)}catch(i){this.log.warn("could not removeTrack",Object.assign(Object.assign({},this.logContext),{error:i}))}}yield Promise.all([this.publisher.close(),this.subscriber.close()]),this.updateState()})}triggerIceRestart(){return P(this,void 0,void 0,function*(){this.subscriber.restartingIce=!0,this.needsPublisher&&(yield this.createAndSendPublisherOffer({iceRestart:!0}))})}addIceCandidate(e,n){return P(this,void 0,void 0,function*(){n===Bt.PUBLISHER?yield this.publisher.addIceCandidate(e):yield this.subscriber.addIceCandidate(e)})}createSubscriberAnswerFromOffer(e,n){return P(this,void 0,void 0,function*(){this.log.debug("received server offer",Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type,sdp:e.sdp,signalingState:this.subscriber.getSignallingState().toString()}));const i=yield this.remoteOfferLock.lock();try{return(yield this.subscriber.setRemoteDescription(e,n))?yield this.subscriber.createAndSetAnswer():void 0}finally{i()}})}updateConfiguration(e,n){this.publisher.setConfiguration(e),this.subscriber.setConfiguration(e),n&&this.triggerIceRestart()}ensurePCTransportConnection(e,n){return P(this,void 0,void 0,function*(){var i;const r=yield this.connectionLock.lock();try{this.isPublisherConnectionRequired&&this.publisher.getConnectionState()!=="connected"&&this.publisher.getConnectionState()!=="connecting"&&(this.log.debug("negotiation required, start negotiating",this.logContext),this.publisher.negotiate()),yield Promise.all((i=this.requiredTransports)===null||i===void 0?void 0:i.map(s=>this.ensureTransportConnected(s,e,n)))}finally{r()}})}negotiate(e){return P(this,void 0,void 0,function*(){return new Promise((n,i)=>P(this,void 0,void 0,function*(){const r=setTimeout(()=>{i("negotiation timed out")},this.peerConnectionTimeout),s=()=>{clearTimeout(r),i("negotiation aborted")};e.signal.addEventListener("abort",s),this.publisher.once(ir.NegotiationStarted,()=>{e.signal.aborted||this.publisher.once(ir.NegotiationComplete,()=>{clearTimeout(r),n()})}),yield this.publisher.negotiate(o=>{clearTimeout(r),i(o)})}))})}addPublisherTransceiver(e,n){return this.publisher.addTransceiver(e,n)}addPublisherTrack(e){return this.publisher.addTrack(e)}createPublisherDataChannel(e,n){return this.publisher.createDataChannel(e,n)}getConnectedAddress(e){return e===Bt.PUBLISHER?this.publisher.getConnectedAddress():e===Bt.SUBSCRIBER?this.publisher.getConnectedAddress():this.requiredTransports[0].getConnectedAddress()}get requiredTransports(){const e=[];return this.isPublisherConnectionRequired&&e.push(this.publisher),this.isSubscriberConnectionRequired&&e.push(this.subscriber),e}ensureTransportConnected(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.peerConnectionTimeout;return function*(){if(i.getConnectionState()!=="connected")return new Promise((c,l)=>P(s,void 0,void 0,function*(){const u=()=>{this.log.warn("abort transport connection",this.logContext),rt.clearTimeout(d),l(new Re("room connection has been cancelled",ge.Cancelled))};r!=null&&r.signal.aborted&&u(),r==null||r.signal.addEventListener("abort",u);const d=rt.setTimeout(()=>{r==null||r.signal.removeEventListener("abort",u),l(new Re("could not establish pc connection",ge.InternalError))},o);for(;this.state!==Ve.CONNECTED;)if(yield mt(50),r!=null&&r.signal.aborted){l(new Re("room connection has been cancelled",ge.Cancelled));return}rt.clearTimeout(d),r==null||r.signal.removeEventListener("abort",u),c()}))}()})}}class je extends Error{constructor(e,n,i){super(n),this.code=e,this.message=Qf(n,je.MAX_MESSAGE_BYTES),this.data=i?Qf(i,je.MAX_DATA_BYTES):void 0}static fromProto(e){return new je(e.code,e.message,e.data)}toProto(){return new wg({code:this.code,message:this.message,data:this.data})}static builtIn(e,n){return new je(je.ErrorCode[e],je.ErrorMessage[e],n)}}je.MAX_MESSAGE_BYTES=256;je.MAX_DATA_BYTES=15360;je.ErrorCode={APPLICATION_ERROR:1500,CONNECTION_TIMEOUT:1501,RESPONSE_TIMEOUT:1502,RECIPIENT_DISCONNECTED:1503,RESPONSE_PAYLOAD_TOO_LARGE:1504,SEND_FAILED:1505,UNSUPPORTED_METHOD:1400,RECIPIENT_NOT_FOUND:1401,REQUEST_PAYLOAD_TOO_LARGE:1402,UNSUPPORTED_SERVER:1403,UNSUPPORTED_VERSION:1404};je.ErrorMessage={APPLICATION_ERROR:"Application error in method handler",CONNECTION_TIMEOUT:"Connection timeout",RESPONSE_TIMEOUT:"Response timeout",RECIPIENT_DISCONNECTED:"Recipient disconnected",RESPONSE_PAYLOAD_TOO_LARGE:"Response payload too large",SEND_FAILED:"Failed to send",UNSUPPORTED_METHOD:"Method not supported at destination",RECIPIENT_NOT_FOUND:"Recipient not found",REQUEST_PAYLOAD_TOO_LARGE:"Request payload too large",UNSUPPORTED_SERVER:"RPC not supported by server",UNSUPPORTED_VERSION:"Unsupported RPC version"};const _0=15360;function Ou(t){return new TextEncoder().encode(t).length}function Qf(t,e){if(Ou(t)<=e)return t;let n=0,i=t.length;const r=new TextEncoder;for(;n<i;){const s=Math.floor((n+i+1)/2);r.encode(t.slice(0,s)).length<=e?n=s:i=s-1}return t.slice(0,n)}const Du=2e3;function ca(t,e){if(!e)return 0;let n,i;return"bytesReceived"in t?(n=t.bytesReceived,i=e.bytesReceived):"bytesSent"in t&&(n=t.bytesSent,i=e.bytesSent),n===void 0||i===void 0||t.timestamp===void 0||e.timestamp===void 0?0:(n-i)*8*1e3/(t.timestamp-e.timestamp)}const Nu=typeof MediaRecorder<"u";class TC{constructor(){throw new Error("MediaRecorder is not available in this environment")}}const kC=Nu?MediaRecorder:TC;class CC extends kC{constructor(e,n){if(!Nu)throw new Error("MediaRecorder is not available in this environment");super(new MediaStream([e.mediaStreamTrack]),n);let i,r;const s=()=>r===void 0,o=()=>{this.removeEventListener("dataavailable",i),this.removeEventListener("stop",o),this.removeEventListener("error",a),r==null||r.close(),r=void 0},a=c=>{r==null||r.error(c),this.removeEventListener("dataavailable",i),this.removeEventListener("stop",o),this.removeEventListener("error",a),r=void 0};this.byteStream=new ReadableStream({start:c=>{r=c,i=l=>P(this,void 0,void 0,function*(){const u=yield l.data.arrayBuffer();s()||c.enqueue(new Uint8Array(u))}),this.addEventListener("dataavailable",i)},cancel:()=>{o()}}),this.addEventListener("stop",o),this.addEventListener("error",a)}}function wC(){return Nu}const xC=1e3,EC=1e4;class M0 extends M{get sender(){return this._sender}set sender(e){this._sender=e}get constraints(){return this._constraints}get hasPreConnectBuffer(){return!!this.localTrackRecorder}constructor(e,n,i){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,s=arguments.length>4?arguments[4]:void 0;super(e,n,s),this.manuallyStopped=!1,this._isUpstreamPaused=!1,this.handleTrackMuteEvent=()=>this.debouncedTrackMuteHandler().catch(()=>this.log.debug("track mute bounce got cancelled by an unmute event",this.logContext)),this.debouncedTrackMuteHandler=_u(()=>P(this,void 0,void 0,function*(){yield this.pauseUpstream()}),5e3),this.handleTrackUnmuteEvent=()=>P(this,void 0,void 0,function*(){this.debouncedTrackMuteHandler.cancel("unmute"),yield this.resumeUpstream()}),this.handleEnded=()=>{this.isInBackground&&(this.reacquireTrack=!0),this._mediaStreamTrack.removeEventListener("mute",this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener("unmute",this.handleTrackUnmuteEvent),this.emit(G.Ended,this)},this.reacquireTrack=!1,this.providedByUser=r,this.muteLock=new ft,this.pauseUpstreamLock=new ft,this.processorLock=new ft,this.restartLock=new ft,this.setMediaStreamTrack(e,!0),this._constraints=e.getConstraints(),i&&(this._constraints=i)}get id(){return this._mediaStreamTrack.id}get dimensions(){if(this.kind!==M.Kind.Video)return;const{width:e,height:n}=this._mediaStreamTrack.getSettings();if(e&&n)return{width:e,height:n}}get isUpstreamPaused(){return this._isUpstreamPaused}get isUserProvided(){return this.providedByUser}get mediaStreamTrack(){var e,n;return(n=(e=this.processor)===null||e===void 0?void 0:e.processedTrack)!==null&&n!==void 0?n:this._mediaStreamTrack}get isLocal(){return!0}getSourceTrackSettings(){return this._mediaStreamTrack.getSettings()}setMediaStreamTrack(e,n){return P(this,void 0,void 0,function*(){var i;if(e===this._mediaStreamTrack&&!n)return;this._mediaStreamTrack&&(this.attachedElements.forEach(s=>{tr(this._mediaStreamTrack,s)}),this.debouncedTrackMuteHandler.cancel("new-track"),this._mediaStreamTrack.removeEventListener("ended",this.handleEnded),this._mediaStreamTrack.removeEventListener("mute",this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener("unmute",this.handleTrackUnmuteEvent)),this.mediaStream=new MediaStream([e]),e&&(e.addEventListener("ended",this.handleEnded),e.addEventListener("mute",this.handleTrackMuteEvent),e.addEventListener("unmute",this.handleTrackUnmuteEvent),this._constraints=e.getConstraints());let r;if(this.processor&&e){const s=yield this.processorLock.lock();try{if(this.log.debug("restarting processor",this.logContext),this.kind==="unknown")throw TypeError("cannot set processor on track of unknown kind");this.processorElement&&(zi(e,this.processorElement),this.processorElement.muted=!0),yield this.processor.restart({track:e,kind:this.kind,element:this.processorElement}),r=this.processor.processedTrack}finally{s()}}this.sender&&((i=this.sender.transport)===null||i===void 0?void 0:i.state)!=="closed"&&(yield this.sender.replaceTrack(r??e)),!this.providedByUser&&this._mediaStreamTrack!==e&&this._mediaStreamTrack.stop(),this._mediaStreamTrack=e,e&&(this._mediaStreamTrack.enabled=!this.isMuted,yield this.resumeUpstream(),this.attachedElements.forEach(s=>{zi(r??e,s)}))})}waitForDimensions(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:xC;return function*(){var i;if(e.kind===M.Kind.Audio)throw new Error("cannot get dimensions for audio tracks");((i=Tt())===null||i===void 0?void 0:i.os)==="iOS"&&(yield mt(10));const r=Date.now();for(;Date.now()-r<n;){const s=e.dimensions;if(s)return s;yield mt(50)}throw new Sn("unable to get track dimensions after timeout")}()})}setDeviceId(e){return P(this,void 0,void 0,function*(){return this._constraints.deviceId===e&&this._mediaStreamTrack.getSettings().deviceId===Hn(e)||(this._constraints.deviceId=e,this.isMuted)?!0:(yield this.restartTrack(),Hn(e)===this._mediaStreamTrack.getSettings().deviceId)})}getDeviceId(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){if(e.source===M.Source.ScreenShare)return;const{deviceId:i,groupId:r}=e._mediaStreamTrack.getSettings(),s=e.kind===M.Kind.Audio?"audioinput":"videoinput";return n?tt.getInstance().normalizeDeviceId(s,i,r):i}()})}mute(){return P(this,void 0,void 0,function*(){return this.setTrackMuted(!0),this})}unmute(){return P(this,void 0,void 0,function*(){return this.setTrackMuted(!1),this})}replaceTrack(e,n){return P(this,void 0,void 0,function*(){if(!this.sender)throw new Sn("unable to replace an unpublished track");let i,r;return typeof n=="boolean"?i=n:n!==void 0&&(i=n.userProvidedTrack,r=n.stopProcessor),this.providedByUser=i??!0,this.log.debug("replace MediaStreamTrack",this.logContext),yield this.setMediaStreamTrack(e),r&&this.processor&&(yield this.stopProcessor()),this})}restart(e){return P(this,void 0,void 0,function*(){this.manuallyStopped=!1;const n=yield this.restartLock.lock();try{e||(e=this._constraints);const{deviceId:i,facingMode:r}=e,s=ok(e,["deviceId","facingMode"]);this.log.debug("restarting track with constraints",Object.assign(Object.assign({},this.logContext),{constraints:e}));const o={audio:!1,video:!1};this.kind===M.Kind.Video?o.video=i||r?{deviceId:i,facingMode:r}:!0:o.audio=i?{deviceId:i}:!0,this.attachedElements.forEach(l=>{tr(this.mediaStreamTrack,l)}),this._mediaStreamTrack.removeEventListener("ended",this.handleEnded),this._mediaStreamTrack.stop();const c=(yield navigator.mediaDevices.getUserMedia(o)).getTracks()[0];return yield c.applyConstraints(s),c.addEventListener("ended",this.handleEnded),this.log.debug("re-acquired MediaStreamTrack",this.logContext),yield this.setMediaStreamTrack(c),this._constraints=e,this.emit(G.Restarted,this),this.manuallyStopped&&(this.log.warn("track was stopped during a restart, stopping restarted track",this.logContext),this.stop()),this}finally{n()}})}setTrackMuted(e){this.log.debug("setting ".concat(this.kind," track ").concat(e?"muted":"unmuted"),this.logContext),!(this.isMuted===e&&this._mediaStreamTrack.enabled!==e)&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?G.Muted:G.Unmuted,this))}get needsReAcquisition(){return this._mediaStreamTrack.readyState!=="live"||this._mediaStreamTrack.muted||!this._mediaStreamTrack.enabled||this.reacquireTrack}handleAppVisibilityChanged(){const e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return P(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),k0()&&(this.log.debug("visibility changed, is in Background: ".concat(this.isInBackground),this.logContext),!this.isInBackground&&this.needsReAcquisition&&!this.isUserProvided&&!this.isMuted&&(this.log.debug("track needs to be reacquired, restarting ".concat(this.source),this.logContext),yield this.restart(),this.reacquireTrack=!1))})}stop(){var e;this.manuallyStopped=!0,super.stop(),this._mediaStreamTrack.removeEventListener("ended",this.handleEnded),this._mediaStreamTrack.removeEventListener("mute",this.handleTrackMuteEvent),this._mediaStreamTrack.removeEventListener("unmute",this.handleTrackUnmuteEvent),(e=this.processor)===null||e===void 0||e.destroy(),this.processor=void 0}pauseUpstream(){return P(this,void 0,void 0,function*(){var e;const n=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!0)return;if(!this.sender){this.log.warn("unable to pause upstream for an unpublished track",this.logContext);return}this._isUpstreamPaused=!0,this.emit(G.UpstreamPaused,this);const i=Tt();if((i==null?void 0:i.name)==="Safari"&&qn(i.version,"12.0")<0)throw new xu("pauseUpstream is not supported on Safari < 12.");((e=this.sender.transport)===null||e===void 0?void 0:e.state)!=="closed"&&(yield this.sender.replaceTrack(null))}finally{n()}})}resumeUpstream(){return P(this,void 0,void 0,function*(){var e;const n=yield this.pauseUpstreamLock.lock();try{if(this._isUpstreamPaused===!1)return;if(!this.sender){this.log.warn("unable to resume upstream for an unpublished track",this.logContext);return}this._isUpstreamPaused=!1,this.emit(G.UpstreamResumed,this),((e=this.sender.transport)===null||e===void 0?void 0:e.state)!=="closed"&&(yield this.sender.replaceTrack(this.mediaStreamTrack))}finally{n()}})}getRTCStatsReport(){return P(this,void 0,void 0,function*(){var e;return!((e=this.sender)===null||e===void 0)&&e.getStats?yield this.sender.getStats():void 0})}setProcessor(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var s;const o=yield i.processorLock.lock();try{i.log.debug("setting up processor",i.logContext);const a=document.createElement(i.kind),c={kind:i.kind,track:i._mediaStreamTrack,element:a,audioContext:i.audioContext};if(yield n.init(c),i.log.debug("processor initialized",i.logContext),i.processor&&(yield i.stopProcessor()),i.kind==="unknown")throw TypeError("cannot set processor on track of unknown kind");if(zi(i._mediaStreamTrack,a),a.muted=!0,a.play().catch(l=>i.log.error("failed to play processor element",Object.assign(Object.assign({},i.logContext),{error:l}))),i.processor=n,i.processorElement=a,i.processor.processedTrack){for(const l of i.attachedElements)l!==i.processorElement&&r&&(tr(i._mediaStreamTrack,l),zi(i.processor.processedTrack,l));yield(s=i.sender)===null||s===void 0?void 0:s.replaceTrack(i.processor.processedTrack)}i.emit(G.TrackProcessorUpdate,i.processor)}finally{o()}}()})}getProcessor(){return this.processor}stopProcessor(){return P(this,arguments,void 0,function(){var e=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var i,r;e.processor&&(e.log.debug("stopping processor",e.logContext),(i=e.processor.processedTrack)===null||i===void 0||i.stop(),yield e.processor.destroy(),e.processor=void 0,n||((r=e.processorElement)===null||r===void 0||r.remove(),e.processorElement=void 0),yield e._mediaStreamTrack.applyConstraints(e._constraints),yield e.setMediaStreamTrack(e._mediaStreamTrack,!0),e.emit(G.TrackProcessorUpdate))}()})}startPreConnectBuffer(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:100;if(!wC()){this.log.warn("MediaRecorder is not available, cannot start preconnect buffer",this.logContext);return}if(!this.localTrackRecorder)this.localTrackRecorder=new CC(this,{mimeType:"audio/webm;codecs=opus"});else{this.log.warn("preconnect buffer already started");return}this.localTrackRecorder.start(e),this.autoStopPreConnectBuffer=setTimeout(()=>{this.log.warn("preconnect buffer timed out, stopping recording automatically",this.logContext),this.stopPreConnectBuffer()},EC)}stopPreConnectBuffer(){clearTimeout(this.autoStopPreConnectBuffer),this.localTrackRecorder&&(this.localTrackRecorder.stop(),this.localTrackRecorder=void 0)}getPreConnectBuffer(){var e;return(e=this.localTrackRecorder)===null||e===void 0?void 0:e.byteStream}}class Lo extends M0{get enhancedNoiseCancellation(){return this.isKrispNoiseFilterEnabled}constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0,s=arguments.length>4?arguments[4]:void 0;super(e,M.Kind.Audio,n,i,s),this.stopOnMute=!1,this.isKrispNoiseFilterEnabled=!1,this.monitorSender=()=>P(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let o;try{o=yield this.getSenderStats()}catch(a){this.log.error("could not get audio sender stats",Object.assign(Object.assign({},this.logContext),{error:a}));return}o&&this.prevStats&&(this._currentBitrate=ca(o,this.prevStats)),this.prevStats=o}),this.handleKrispNoiseFilterEnable=()=>{this.isKrispNoiseFilterEnabled=!0,this.log.debug("Krisp noise filter enabled",this.logContext),this.emit(G.AudioTrackFeatureUpdate,this,et.TF_ENHANCED_NOISE_CANCELLATION,!0)},this.handleKrispNoiseFilterDisable=()=>{this.isKrispNoiseFilterEnabled=!1,this.log.debug("Krisp noise filter disabled",this.logContext),this.emit(G.AudioTrackFeatureUpdate,this,et.TF_ENHANCED_NOISE_CANCELLATION,!1)},this.audioContext=r,this.checkForSilence()}mute(){const e=Object.create(null,{mute:{get:()=>super.mute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug("Track already muted",this.logContext),this):(this.source===M.Source.Microphone&&this.stopOnMute&&!this.isUserProvided&&(this.log.debug("stopping mic track",this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{n()}})}unmute(){const e=Object.create(null,{unmute:{get:()=>super.unmute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{if(!this.isMuted)return this.log.debug("Track already unmuted",this.logContext),this;const i=this._constraints.deviceId&&this._mediaStreamTrack.getSettings().deviceId!==Hn(this._constraints.deviceId);return this.source===M.Source.Microphone&&(this.stopOnMute||this._mediaStreamTrack.readyState==="ended"||i)&&!this.isUserProvided&&(this.log.debug("reacquiring mic track",this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this}finally{n()}})}restartTrack(e){return P(this,void 0,void 0,function*(){let n;if(e){const i=Pu({audio:e});typeof i.audio!="boolean"&&(n=i.audio)}yield this.restart(n)})}restart(e){const n=Object.create(null,{restart:{get:()=>super.restart}});return P(this,void 0,void 0,function*(){const i=yield n.restart.call(this,e);return this.checkForSilence(),i})}startMonitor(){ht()&&(this.monitorInterval||(this.monitorInterval=setInterval(()=>{this.monitorSender()},Du)))}setProcessor(e){return P(this,void 0,void 0,function*(){var n;const i=yield this.processorLock.lock();try{if(!on()&&!this.audioContext)throw Error("Audio context needs to be set on LocalAudioTrack in order to enable processors");this.processor&&(yield this.stopProcessor());const r={kind:this.kind,track:this._mediaStreamTrack,audioContext:this.audioContext};this.log.debug("setting up audio processor ".concat(e.name),this.logContext),yield e.init(r),this.processor=e,this.processor.processedTrack&&(yield(n=this.sender)===null||n===void 0?void 0:n.replaceTrack(this.processor.processedTrack),this.processor.processedTrack.addEventListener("enable-lk-krisp-noise-filter",this.handleKrispNoiseFilterEnable),this.processor.processedTrack.addEventListener("disable-lk-krisp-noise-filter",this.handleKrispNoiseFilterDisable)),this.emit(G.TrackProcessorUpdate,this.processor)}finally{i()}})}setAudioContext(e){this.audioContext=e}getSenderStats(){return P(this,void 0,void 0,function*(){var e;if(!(!((e=this.sender)===null||e===void 0)&&e.getStats))return;const n=yield this.sender.getStats();let i;return n.forEach(r=>{r.type==="outbound-rtp"&&(i={type:"audio",streamId:r.id,packetsSent:r.packetsSent,packetsLost:r.packetsLost,bytesSent:r.bytesSent,timestamp:r.timestamp,roundTripTime:r.roundTripTime,jitter:r.jitter})}),i})}checkForSilence(){return P(this,void 0,void 0,function*(){const e=yield E0(this);return e&&(this.isMuted||this.log.warn("silence detected on local audio track",this.logContext),this.emit(G.AudioSilenceDetected)),e})}}function PC(t,e,n){switch(t.kind){case"audio":return new Lo(t,e,!1,void 0,n);case"video":return new Vo(t,e,!1,n);default:throw new Sn("unsupported track type: ".concat(t.kind))}}const RC=Object.values(ss),AC=Object.values(ol),IC=Object.values(Eu),_C=[ss.h180,ss.h360],MC=[ol.h180,ol.h360],OC=t=>[{scaleResolutionDownBy:2,fps:t.encoding.maxFramerate}].map(n=>{var i,r;return new xe(Math.floor(t.width/n.scaleResolutionDownBy),Math.floor(t.height/n.scaleResolutionDownBy),Math.max(15e4,Math.floor(t.encoding.maxBitrate/(Math.pow(n.scaleResolutionDownBy,2)*(((i=t.encoding.maxFramerate)!==null&&i!==void 0?i:30)/((r=n.fps)!==null&&r!==void 0?r:30))))),n.fps,t.encoding.priority)}),gl=["q","h","f"];function vl(t,e,n,i){var r,s;let o=i==null?void 0:i.videoEncoding;t&&(o=i==null?void 0:i.screenShareEncoding);const a=i==null?void 0:i.simulcast,c=i==null?void 0:i.scalabilityMode,l=i==null?void 0:i.videoCodec;if(!o&&!a&&!c||!e||!n)return[{}];o||(o=NC(t,e,n,l),me.debug("using video encoding",o));const u=o.maxFramerate,d=new xe(e,n,o.maxBitrate,o.maxFramerate,o.priority);if(c&&kn(l)){const g=new O0(c),f=[];if(g.spatial>3)throw new Error("unsupported scalabilityMode: ".concat(c));const y=Tt();if(Ti()||on()||(y==null?void 0:y.name)==="Chrome"&&qn(y==null?void 0:y.version,"113")<0){const v=g.suffix=="h"?2:3,C=Fk(y);for(let T=0;T<g.spatial;T+=1)f.push({rid:gl[2-T],maxBitrate:o.maxBitrate/Math.pow(v,T),maxFramerate:d.encoding.maxFramerate,scaleResolutionDownBy:C?Math.pow(2,T):void 0});f[0].scalabilityMode=c}else f.push({maxBitrate:o.maxBitrate,maxFramerate:d.encoding.maxFramerate,scalabilityMode:c});return d.encoding.priority&&(f[0].priority=d.encoding.priority,f[0].networkPriority=d.encoding.priority),me.debug("using svc encoding",{encodings:f}),f}if(!a)return[o];let h=[];t?h=(r=th(i==null?void 0:i.screenShareSimulcastLayers))!==null&&r!==void 0?r:eh(t,d):h=(s=th(i==null?void 0:i.videoSimulcastLayers))!==null&&s!==void 0?s:eh(t,d);let m;if(h.length>0){const g=h[0];h.length>1&&([,m]=h);const f=Math.max(e,n);if(f>=960&&m)return Ya(e,n,[g,m,d],u);if(f>=480)return Ya(e,n,[g,d],u)}return Ya(e,n,[d])}function DC(t,e,n){var i,r,s,o;if(!n.backupCodec||n.backupCodec===!0||n.backupCodec.codec===n.videoCodec)return;e!==n.backupCodec.codec&&me.warn("requested a different codec than specified as backup",{serverRequested:e,backup:n.backupCodec.codec}),n.videoCodec=e,n.videoEncoding=n.backupCodec.encoding;const a=t.mediaStreamTrack.getSettings(),c=(i=a.width)!==null&&i!==void 0?i:(r=t.dimensions)===null||r===void 0?void 0:r.width,l=(s=a.height)!==null&&s!==void 0?s:(o=t.dimensions)===null||o===void 0?void 0:o.height;return t.source===M.Source.ScreenShare&&n.simulcast&&(n.simulcast=!1),vl(t.source===M.Source.ScreenShare,c,l,n)}function NC(t,e,n,i){const r=LC(t,e,n);let{encoding:s}=r[0];const o=Math.max(e,n);for(let a=0;a<r.length;a+=1){const c=r[a];if(s=c.encoding,c.width>=o)break}if(i)switch(i){case"av1":s=Object.assign({},s),s.maxBitrate=s.maxBitrate*.7;break;case"vp9":s=Object.assign({},s),s.maxBitrate=s.maxBitrate*.85;break}return s}function LC(t,e,n){if(t)return IC;const i=e>n?e/n:n/e;return Math.abs(i-16/9)<Math.abs(i-4/3)?RC:AC}function eh(t,e){if(t)return OC(e);const{width:n,height:i}=e,r=n>i?n/i:i/n;return Math.abs(r-16/9)<Math.abs(r-4/3)?_C:MC}function Ya(t,e,n,i){const r=[];if(n.forEach((s,o)=>{if(o>=gl.length)return;const a=Math.min(t,e),l={rid:gl[o],scaleResolutionDownBy:Math.max(1,a/Math.min(s.width,s.height)),maxBitrate:s.encoding.maxBitrate},u=i&&s.encoding.maxFramerate?Math.min(i,s.encoding.maxFramerate):s.encoding.maxFramerate;u&&(l.maxFramerate=u);const d=ur()||o===0;s.encoding.priority&&d&&(l.priority=s.encoding.priority,l.networkPriority=s.encoding.priority),r.push(l)}),on()&&w0()==="ios"){let s;r.forEach(a=>{s?a.maxFramerate&&a.maxFramerate>s&&(s=a.maxFramerate):s=a.maxFramerate});let o=!0;r.forEach(a=>{var c;a.maxFramerate!=s&&(o&&(o=!1,me.info("Simulcast on iOS React-Native requires all encodings to share the same framerate.")),me.info('Setting framerate of encoding "'.concat((c=a.rid)!==null&&c!==void 0?c:"",'" to ').concat(s)),a.maxFramerate=s)})}return r}function th(t){if(t)return t.sort((e,n)=>{const{encoding:i}=e,{encoding:r}=n;return i.maxBitrate>r.maxBitrate?1:i.maxBitrate<r.maxBitrate?-1:i.maxBitrate===r.maxBitrate&&i.maxFramerate&&r.maxFramerate?i.maxFramerate>r.maxFramerate?1:-1:0})}class O0{constructor(e){const n=e.match(/^L(\d)T(\d)(h|_KEY|_KEY_SHIFT){0,1}$/);if(!n)throw new Error("invalid scalability mode");if(this.spatial=parseInt(n[1]),this.temporal=parseInt(n[2]),n.length>3)switch(n[3]){case"h":case"_KEY":case"_KEY_SHIFT":this.suffix=n[3]}}toString(){var e;return"L".concat(this.spatial,"T").concat(this.temporal).concat((e=this.suffix)!==null&&e!==void 0?e:"")}}function VC(t){return t.source===M.Source.ScreenShare||t.constraints.height&&Hn(t.constraints.height)>=1080?"maintain-resolution":"balanced"}const FC=5e3;class Vo extends M0{get sender(){return this._sender}set sender(e){this._sender=e,this.degradationPreference&&this.setDegradationPreference(this.degradationPreference)}constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=arguments.length>3?arguments[3]:void 0;super(e,M.Kind.Video,n,i,r),this.simulcastCodecs=new Map,this.degradationPreference="balanced",this.monitorSender=()=>P(this,void 0,void 0,function*(){if(!this.sender){this._currentBitrate=0;return}let s;try{s=yield this.getSenderStats()}catch(a){this.log.error("could not get audio sender stats",Object.assign(Object.assign({},this.logContext),{error:a}));return}const o=new Map(s.map(a=>[a.rid,a]));if(this.prevStats){let a=0;o.forEach((c,l)=>{var u;const d=(u=this.prevStats)===null||u===void 0?void 0:u.get(l);a+=ca(c,d)}),this._currentBitrate=a}this.prevStats=o}),this.senderLock=new ft}get isSimulcast(){return!!(this.sender&&this.sender.getParameters().encodings.length>1)}startMonitor(e){var n;if(this.signalClient=e,!ht())return;const i=(n=this.sender)===null||n===void 0?void 0:n.getParameters();i&&(this.encodings=i.encodings),!this.monitorInterval&&(this.monitorInterval=setInterval(()=>{this.monitorSender()},Du))}stop(){this._mediaStreamTrack.getConstraints(),this.simulcastCodecs.forEach(e=>{e.mediaStreamTrack.stop()}),super.stop()}pauseUpstream(){const e=Object.create(null,{pauseUpstream:{get:()=>super.pauseUpstream}});return P(this,void 0,void 0,function*(){var n,i,r,s,o;yield e.pauseUpstream.call(this);try{for(var a=!0,c=bn(this.simulcastCodecs.values()),l;l=yield c.next(),n=l.done,!n;a=!0)s=l.value,a=!1,yield(o=s.sender)===null||o===void 0?void 0:o.replaceTrack(null)}catch(u){i={error:u}}finally{try{!a&&!n&&(r=c.return)&&(yield r.call(c))}finally{if(i)throw i.error}}})}resumeUpstream(){const e=Object.create(null,{resumeUpstream:{get:()=>super.resumeUpstream}});return P(this,void 0,void 0,function*(){var n,i,r,s,o;yield e.resumeUpstream.call(this);try{for(var a=!0,c=bn(this.simulcastCodecs.values()),l;l=yield c.next(),n=l.done,!n;a=!0){s=l.value,a=!1;const u=s;yield(o=u.sender)===null||o===void 0?void 0:o.replaceTrack(u.mediaStreamTrack)}}catch(u){i={error:u}}finally{try{!a&&!n&&(r=c.return)&&(yield r.call(c))}finally{if(i)throw i.error}}})}mute(){const e=Object.create(null,{mute:{get:()=>super.mute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{return this.isMuted?(this.log.debug("Track already muted",this.logContext),this):(this.source===M.Source.Camera&&!this.isUserProvided&&(this.log.debug("stopping camera track",this.logContext),this._mediaStreamTrack.stop()),yield e.mute.call(this),this)}finally{n()}})}unmute(){const e=Object.create(null,{unmute:{get:()=>super.unmute}});return P(this,void 0,void 0,function*(){const n=yield this.muteLock.lock();try{return this.isMuted?(this.source===M.Source.Camera&&!this.isUserProvided&&(this.log.debug("reacquiring camera track",this.logContext),yield this.restartTrack()),yield e.unmute.call(this),this):(this.log.debug("Track already unmuted",this.logContext),this)}finally{n()}})}setTrackMuted(e){super.setTrackMuted(e);for(const n of this.simulcastCodecs.values())n.mediaStreamTrack.enabled=!e}getSenderStats(){return P(this,void 0,void 0,function*(){var e;if(!(!((e=this.sender)===null||e===void 0)&&e.getStats))return[];const n=[],i=yield this.sender.getStats();return i.forEach(r=>{var s;if(r.type==="outbound-rtp"){const o={type:"video",streamId:r.id,frameHeight:r.frameHeight,frameWidth:r.frameWidth,framesPerSecond:r.framesPerSecond,framesSent:r.framesSent,firCount:r.firCount,pliCount:r.pliCount,nackCount:r.nackCount,packetsSent:r.packetsSent,bytesSent:r.bytesSent,qualityLimitationReason:r.qualityLimitationReason,qualityLimitationDurations:r.qualityLimitationDurations,qualityLimitationResolutionChanges:r.qualityLimitationResolutionChanges,rid:(s=r.rid)!==null&&s!==void 0?s:r.id,retransmittedPacketsSent:r.retransmittedPacketsSent,targetBitrate:r.targetBitrate,timestamp:r.timestamp},a=i.get(r.remoteId);a&&(o.jitter=a.jitter,o.packetsLost=a.packetsLost,o.roundTripTime=a.roundTripTime),n.push(o)}}),n.sort((r,s)=>{var o,a;return((o=s.frameWidth)!==null&&o!==void 0?o:0)-((a=r.frameWidth)!==null&&a!==void 0?a:0)}),n})}setPublishingQuality(e){const n=[];for(let i=At.LOW;i<=At.HIGH;i+=1)n.push(new ku({quality:i,enabled:i<=e}));this.log.debug("setting publishing quality. max quality ".concat(e),this.logContext),this.setPublishingLayers(kn(this.codec),n)}restartTrack(e){return P(this,void 0,void 0,function*(){var n,i,r,s,o;let a;if(e){const d=Pu({video:e});typeof d.video!="boolean"&&(a=d.video)}yield this.restart(a);try{for(var c=!0,l=bn(this.simulcastCodecs.values()),u;u=yield l.next(),n=u.done,!n;c=!0){s=u.value,c=!1;const d=s;d.sender&&((o=d.sender.transport)===null||o===void 0?void 0:o.state)!=="closed"&&(d.mediaStreamTrack=this.mediaStreamTrack.clone(),yield d.sender.replaceTrack(d.mediaStreamTrack))}}catch(d){i={error:d}}finally{try{!c&&!n&&(r=l.return)&&(yield r.call(l))}finally{if(i)throw i.error}}})}setProcessor(e){const n=Object.create(null,{setProcessor:{get:()=>super.setProcessor}});return P(this,arguments,void 0,function(i){var r=this;let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){var o,a,c,l,u,d;if(yield n.setProcessor.call(r,i,s),!((u=r.processor)===null||u===void 0)&&u.processedTrack)try{for(var h=!0,m=bn(r.simulcastCodecs.values()),g;g=yield m.next(),o=g.done,!o;h=!0)l=g.value,h=!1,yield(d=l.sender)===null||d===void 0?void 0:d.replaceTrack(r.processor.processedTrack)}catch(f){a={error:f}}finally{try{!h&&!o&&(c=m.return)&&(yield c.call(m))}finally{if(a)throw a.error}}}()})}setDegradationPreference(e){return P(this,void 0,void 0,function*(){if(this.degradationPreference=e,this.sender)try{this.log.debug("setting degradationPreference to ".concat(e),this.logContext);const n=this.sender.getParameters();n.degradationPreference=e,this.sender.setParameters(n)}catch(n){this.log.warn("failed to set degradationPreference",Object.assign({error:n},this.logContext))}})}addSimulcastTrack(e,n){if(this.simulcastCodecs.has(e)){this.log.error("".concat(e," already added, skipping adding simulcast codec"),this.logContext);return}const i={codec:e,mediaStreamTrack:this.mediaStreamTrack.clone(),sender:void 0,encodings:n};return this.simulcastCodecs.set(e,i),i}setSimulcastTrackSender(e,n){const i=this.simulcastCodecs.get(e);i&&(i.sender=n,setTimeout(()=>{this.subscribedCodecs&&this.setPublishingCodecs(this.subscribedCodecs)},FC))}setPublishingCodecs(e){return P(this,void 0,void 0,function*(){var n,i,r,s,o,a,c;if(this.log.debug("setting publishing codecs",Object.assign(Object.assign({},this.logContext),{codecs:e,currentCodec:this.codec})),!this.codec&&e.length>0)return yield this.setPublishingLayers(kn(e[0].codec),e[0].qualities),[];this.subscribedCodecs=e;const l=[];try{for(n=!0,i=bn(e);r=yield i.next(),s=r.done,!s;n=!0){c=r.value,n=!1;const u=c;if(!this.codec||this.codec===u.codec)yield this.setPublishingLayers(kn(u.codec),u.qualities);else{const d=this.simulcastCodecs.get(u.codec);if(this.log.debug("try setPublishingCodec for ".concat(u.codec),Object.assign(Object.assign({},this.logContext),{simulcastCodecInfo:d})),!d||!d.sender){for(const h of u.qualities)if(h.enabled){l.push(u.codec);break}}else d.encodings&&(this.log.debug("try setPublishingLayersForSender ".concat(u.codec),this.logContext),yield nh(d.sender,d.encodings,u.qualities,this.senderLock,kn(u.codec),this.log,this.logContext))}}}catch(u){o={error:u}}finally{try{!n&&!s&&(a=i.return)&&(yield a.call(i))}finally{if(o)throw o.error}}return l})}setPublishingLayers(e,n){return P(this,void 0,void 0,function*(){this.log.debug("setting publishing layers",Object.assign(Object.assign({},this.logContext),{qualities:n})),!(!this.sender||!this.encodings)&&(yield nh(this.sender,this.encodings,n,this.senderLock,e,this.log,this.logContext))})}handleAppVisibilityChanged(){const e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return P(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),k0()&&this.isInBackground&&this.source===M.Source.Camera&&(this._mediaStreamTrack.enabled=!1)})}}function nh(t,e,n,i,r,s,o){return P(this,void 0,void 0,function*(){const a=yield i.lock();s.debug("setPublishingLayersForSender",Object.assign(Object.assign({},o),{sender:t,qualities:n,senderEncodings:e}));try{const c=t.getParameters(),{encodings:l}=c;if(!l)return;if(l.length!==e.length){s.warn("cannot set publishing layers, encodings mismatch",Object.assign(Object.assign({},o),{encodings:l,senderEncodings:e}));return}let u=!1;!1&&l[0].scalabilityMode||(r&&n.some(m=>m.enabled)&&n.forEach(m=>m.enabled=!0),l.forEach((h,m)=>{var g;let f=(g=h.rid)!==null&&g!==void 0?g:"";f===""&&(f="q");const y=D0(f),v=n.find(C=>C.quality===y);v&&h.active!==v.enabled&&(u=!0,h.active=v.enabled,s.debug("setting layer ".concat(v.quality," to ").concat(h.active?"enabled":"disabled"),o),ur()&&(v.enabled?(h.scaleResolutionDownBy=e[m].scaleResolutionDownBy,h.maxBitrate=e[m].maxBitrate,h.maxFrameRate=e[m].maxFrameRate):(h.scaleResolutionDownBy=4,h.maxBitrate=10,h.maxFrameRate=2)))})),u&&(c.encodings=l,s.debug("setting encodings",Object.assign(Object.assign({},o),{encodings:c.encodings})),yield t.setParameters(c))}finally{a()}})}function D0(t){switch(t){case"f":return At.HIGH;case"h":return At.MEDIUM;case"q":return At.LOW;default:return At.HIGH}}function ih(t,e,n,i){if(!n)return[new pi({quality:At.HIGH,width:t,height:e,bitrate:0,ssrc:0})];if(i){const r=n[0].scalabilityMode,s=new O0(r),o=[],a=s.suffix=="h"?1.5:2,c=s.suffix=="h"?2:3;for(let l=0;l<s.spatial;l+=1)o.push(new pi({quality:Math.min(At.HIGH,s.spatial-1)-l,width:Math.ceil(t/Math.pow(a,l)),height:Math.ceil(e/Math.pow(a,l)),bitrate:n[0].maxBitrate?Math.ceil(n[0].maxBitrate/Math.pow(c,l)):0,ssrc:0}));return o}return n.map(r=>{var s,o,a;const c=(s=r.scaleResolutionDownBy)!==null&&s!==void 0?s:1;let l=D0((o=r.rid)!==null&&o!==void 0?o:"");return new pi({quality:l,width:Math.ceil(t/c),height:Math.ceil(e/c),bitrate:(a=r.maxBitrate)!==null&&a!==void 0?a:0,ssrc:0})})}const rh="_lossy",sh="_reliable",jC=2*1e3,Ja="leave-reconnect",UC=3e4;var Lt;(function(t){t[t.New=0]="New",t[t.Connected=1]="Connected",t[t.Disconnected=2]="Disconnected",t[t.Reconnecting=3]="Reconnecting",t[t.Closed=4]="Closed"})(Lt||(Lt={}));class BC extends ln.EventEmitter{get isClosed(){return this._isClosed}get pendingReconnect(){return!!this.reconnectTimeout}constructor(e){var n;super(),this.options=e,this.rtcConfig={},this.peerConnectionTimeout=Mu.peerConnectionTimeout,this.fullReconnectOnNext=!1,this.latestRemoteOfferId=0,this.subscriberPrimary=!1,this.pcState=Lt.New,this._isClosed=!0,this.pendingTrackResolvers={},this.reconnectAttempts=0,this.reconnectStart=0,this.attemptingReconnect=!1,this.joinAttempts=0,this.maxJoinAttempts=1,this.shouldFailNext=!1,this.log=me,this.reliableDataSequence=1,this.reliableMessageBuffer=new Wf,this.reliableReceivedState=new dC(UC),this.handleDataChannel=i=>P(this,[i],void 0,function(r){var s=this;let{channel:o}=r;return function*(){if(o){if(o.label===sh)s.reliableDCSub=o;else if(o.label===rh)s.lossyDCSub=o;else return;s.log.debug("on data channel ".concat(o.id,", ").concat(o.label),s.logContext),o.onmessage=s.handleDataMessage}}()}),this.handleDataMessage=i=>P(this,void 0,void 0,function*(){var r,s;const o=yield this.dataProcessLock.lock();try{let a;if(i.data instanceof ArrayBuffer)a=i.data;else if(i.data instanceof Blob)a=yield i.data.arrayBuffer();else{this.log.error("unsupported data type",Object.assign(Object.assign({},this.logContext),{data:i.data}));return}const c=ut.fromBinary(new Uint8Array(a));if(c.sequence>0&&c.participantSid!==""){const l=this.reliableReceivedState.get(c.participantSid);if(l&&c.sequence<=l)return;this.reliableReceivedState.set(c.participantSid,c.sequence)}((r=c.value)===null||r===void 0?void 0:r.case)==="speaker"?this.emit(X.ActiveSpeakersUpdate,c.value.value.speakers):(((s=c.value)===null||s===void 0?void 0:s.case)==="user"&&HC(c,c.value.value),this.emit(X.DataPacketReceived,c))}finally{o()}}),this.handleDataError=i=>{const s=i.currentTarget.maxRetransmits===0?"lossy":"reliable";if(i instanceof ErrorEvent&&i.error){const{error:o}=i.error;this.log.error("DataChannel error on ".concat(s,": ").concat(i.message),Object.assign(Object.assign({},this.logContext),{error:o}))}else this.log.error("Unknown DataChannel error on ".concat(s),Object.assign(Object.assign({},this.logContext),{event:i}))},this.handleBufferedAmountLow=i=>{const s=i.currentTarget.maxRetransmits===0?fe.LOSSY:fe.RELIABLE;this.updateAndEmitDCBufferStatus(s)},this.handleDisconnect=(i,r)=>{if(this._isClosed)return;this.log.warn("".concat(i," disconnected"),this.logContext),this.reconnectAttempts===0&&(this.reconnectStart=Date.now());const s=c=>{this.log.warn("could not recover connection after ".concat(this.reconnectAttempts," attempts, ").concat(c,"ms. giving up"),this.logContext),this.emit(X.Disconnected),this.close()},o=Date.now()-this.reconnectStart;let a=this.getNextRetryDelay({elapsedMs:o,retryCount:this.reconnectAttempts});if(a===null){s(o);return}i===Ja&&(a=0),this.log.debug("reconnecting in ".concat(a,"ms"),this.logContext),this.clearReconnectTimeout(),this.token&&this.regionUrlProvider&&this.regionUrlProvider.updateToken(this.token),this.reconnectTimeout=rt.setTimeout(()=>this.attemptReconnect(r).finally(()=>this.reconnectTimeout=void 0),a)},this.waitForRestarted=()=>new Promise((i,r)=>{this.pcState===Lt.Connected&&i();const s=()=>{this.off(X.Disconnected,o),i()},o=()=>{this.off(X.Restarted,s),r()};this.once(X.Restarted,s),this.once(X.Disconnected,o)}),this.updateAndEmitDCBufferStatus=i=>{const r=this.isBufferStatusLow(i);typeof r<"u"&&r!==this.dcBufferStatus.get(i)&&(this.dcBufferStatus.set(i,r),this.emit(X.DCBufferStatusChanged,r,i))},this.isBufferStatusLow=i=>{const r=this.dataChannelForKind(i);if(r)return i===fe.RELIABLE&&this.reliableMessageBuffer.alignBufferedAmount(r.bufferedAmount),r.bufferedAmount<=r.bufferedAmountLowThreshold},this.handleBrowserOnLine=()=>{this.client.currentState===Ae.RECONNECTING&&(this.clearReconnectTimeout(),this.attemptReconnect(_i.RR_SIGNAL_DISCONNECTED))},this.log=Cn((n=e.loggerName)!==null&&n!==void 0?n:zt.Engine),this.loggerOptions={loggerName:e.loggerName,loggerContextCb:()=>this.logContext},this.client=new Au(void 0,this.loggerOptions),this.client.signalLatency=this.options.expSignalLatency,this.reconnectPolicy=this.options.reconnectPolicy,this.registerOnLineListener(),this.closingLock=new ft,this.dataProcessLock=new ft,this.dcBufferStatus=new Map([[fe.LOSSY,!0],[fe.RELIABLE,!0]]),this.client.onParticipantUpdate=i=>this.emit(X.ParticipantUpdate,i),this.client.onConnectionQuality=i=>this.emit(X.ConnectionQualityUpdate,i),this.client.onRoomUpdate=i=>this.emit(X.RoomUpdate,i),this.client.onSubscriptionError=i=>this.emit(X.SubscriptionError,i),this.client.onSubscriptionPermissionUpdate=i=>this.emit(X.SubscriptionPermissionUpdate,i),this.client.onSpeakersChanged=i=>this.emit(X.SpeakersChanged,i),this.client.onStreamStateUpdate=i=>this.emit(X.StreamStateChanged,i),this.client.onRequestResponse=i=>this.emit(X.SignalRequestResponse,i)}get logContext(){var e,n,i,r,s,o;return{room:(n=(e=this.latestJoinResponse)===null||e===void 0?void 0:e.room)===null||n===void 0?void 0:n.name,roomID:(r=(i=this.latestJoinResponse)===null||i===void 0?void 0:i.room)===null||r===void 0?void 0:r.sid,participant:(o=(s=this.latestJoinResponse)===null||s===void 0?void 0:s.participant)===null||o===void 0?void 0:o.identity,pID:this.participantSid}}join(e,n,i,r){return P(this,void 0,void 0,function*(){this.url=e,this.token=n,this.signalOpts=i,this.maxJoinAttempts=i.maxRetries;try{this.joinAttempts+=1,this.setupSignalClientCallbacks();const s=yield this.client.join(e,n,i,r);return this._isClosed=!1,this.latestJoinResponse=s,this.subscriberPrimary=s.subscriberPrimary,this.pcManager||(yield this.configure(s)),(!this.subscriberPrimary||s.fastPublish)&&this.negotiate(),this.clientConfiguration=s.clientConfiguration,this.emit(X.SignalConnected,s),s}catch(s){if(s instanceof Re&&s.reason===ge.ServerUnreachable&&(this.log.warn("Couldn't connect to server, attempt ".concat(this.joinAttempts," of ").concat(this.maxJoinAttempts),this.logContext),this.joinAttempts<this.maxJoinAttempts))return this.join(e,n,i,r);throw s}})}close(){return P(this,void 0,void 0,function*(){const e=yield this.closingLock.lock();if(this.isClosed){e();return}try{this._isClosed=!0,this.joinAttempts=0,this.emit(X.Closing),this.removeAllListeners(),this.deregisterOnLineListener(),this.clearPendingReconnect(),yield this.cleanupPeerConnections(),yield this.cleanupClient()}finally{e()}})}cleanupPeerConnections(){return P(this,void 0,void 0,function*(){var e;yield(e=this.pcManager)===null||e===void 0?void 0:e.close(),this.pcManager=void 0;const n=i=>{i&&(i.close(),i.onbufferedamountlow=null,i.onclose=null,i.onclosing=null,i.onerror=null,i.onmessage=null,i.onopen=null)};n(this.lossyDC),n(this.lossyDCSub),n(this.reliableDC),n(this.reliableDCSub),this.lossyDC=void 0,this.lossyDCSub=void 0,this.reliableDC=void 0,this.reliableDCSub=void 0,this.reliableMessageBuffer=new Wf,this.reliableDataSequence=1,this.reliableReceivedState.clear()})}cleanupClient(){return P(this,void 0,void 0,function*(){yield this.client.close(),this.client.resetCallbacks()})}addTrack(e){if(this.pendingTrackResolvers[e.cid])throw new Sn("a track with the same ID has already been published");return new Promise((n,i)=>{const r=setTimeout(()=>{delete this.pendingTrackResolvers[e.cid],i(new Re("publication of local track timed out, no response from server",ge.Timeout))},1e4);this.pendingTrackResolvers[e.cid]={resolve:s=>{clearTimeout(r),n(s)},reject:()=>{clearTimeout(r),i(new Error("Cancelled publication by calling unpublish"))}},this.client.sendAddTrack(e)})}removeTrack(e){if(e.track&&this.pendingTrackResolvers[e.track.id]){const{reject:n}=this.pendingTrackResolvers[e.track.id];n&&n(),delete this.pendingTrackResolvers[e.track.id]}try{return this.pcManager.removeTrack(e),!0}catch(n){this.log.warn("failed to remove track",Object.assign(Object.assign({},this.logContext),{error:n}))}return!1}updateMuteStatus(e,n){this.client.sendMuteTrack(e,n)}get dataSubscriberReadyState(){var e;return(e=this.reliableDCSub)===null||e===void 0?void 0:e.readyState}getConnectedServerAddress(){return P(this,void 0,void 0,function*(){var e;return(e=this.pcManager)===null||e===void 0?void 0:e.getConnectedAddress()})}setRegionUrlProvider(e){this.regionUrlProvider=e}configure(e){return P(this,void 0,void 0,function*(){var n,i;if(this.pcManager&&this.pcManager.currentState!==Ve.NEW)return;this.participantSid=(n=e.participant)===null||n===void 0?void 0:n.sid;const r=this.makeRTCConfiguration(e);this.pcManager=new SC(r,e.subscriberPrimary,this.loggerOptions),this.emit(X.TransportsCreated,this.pcManager.publisher,this.pcManager.subscriber),this.pcManager.onIceCandidate=(s,o)=>{this.client.sendIceCandidate(s,o)},this.pcManager.onPublisherOffer=(s,o)=>{this.client.sendOffer(s,o)},this.pcManager.onDataChannel=this.handleDataChannel,this.pcManager.onStateChange=(s,o,a)=>P(this,void 0,void 0,function*(){if(this.log.debug("primary PC state changed ".concat(s),this.logContext),["closed","disconnected","failed"].includes(o)&&(this.publisherConnectionPromise=void 0),s===Ve.CONNECTED){const u=this.pcState===Lt.New;this.pcState=Lt.Connected,u&&this.emit(X.Connected,e)}else s===Ve.FAILED&&this.pcState===Lt.Connected&&(this.pcState=Lt.Disconnected,this.handleDisconnect("peerconnection failed",a==="failed"?_i.RR_SUBSCRIBER_FAILED:_i.RR_PUBLISHER_FAILED));const c=this.client.isDisconnected||this.client.currentState===Ae.RECONNECTING,l=[Ve.FAILED,Ve.CLOSING,Ve.CLOSED].includes(s);c&&l&&!this._isClosed&&this.emit(X.Offline)}),this.pcManager.onTrack=s=>{this.emit(X.MediaTrackAdded,s.track,s.streams[0],s.receiver)},$C((i=e.serverInfo)===null||i===void 0?void 0:i.protocol)||this.createDataChannels()})}setupSignalClientCallbacks(){this.client.onAnswer=(e,n)=>P(this,void 0,void 0,function*(){this.pcManager&&(this.log.debug("received server answer",Object.assign(Object.assign({},this.logContext),{RTCSdpType:e.type})),yield this.pcManager.setPublisherAnswer(e,n))}),this.client.onTrickle=(e,n)=>{this.pcManager&&(this.log.debug("got ICE candidate from peer",Object.assign(Object.assign({},this.logContext),{candidate:e,target:n})),this.pcManager.addIceCandidate(e,n))},this.client.onOffer=(e,n)=>P(this,void 0,void 0,function*(){if(this.latestRemoteOfferId=n,!this.pcManager)return;const i=yield this.pcManager.createSubscriberAnswerFromOffer(e,n);i&&this.client.sendAnswer(i,n)}),this.client.onLocalTrackPublished=e=>{var n;if(this.log.debug("received trackPublishedResponse",Object.assign(Object.assign({},this.logContext),{cid:e.cid,track:(n=e.track)===null||n===void 0?void 0:n.sid})),!this.pendingTrackResolvers[e.cid]){this.log.error("missing track resolver for ".concat(e.cid),Object.assign(Object.assign({},this.logContext),{cid:e.cid}));return}const{resolve:i}=this.pendingTrackResolvers[e.cid];delete this.pendingTrackResolvers[e.cid],i(e.track)},this.client.onLocalTrackUnpublished=e=>{this.emit(X.LocalTrackUnpublished,e)},this.client.onLocalTrackSubscribed=e=>{this.emit(X.LocalTrackSubscribed,e)},this.client.onTokenRefresh=e=>{this.token=e},this.client.onRemoteMuteChanged=(e,n)=>{this.emit(X.RemoteMute,e,n)},this.client.onSubscribedQualityUpdate=e=>{this.emit(X.SubscribedQualityUpdate,e)},this.client.onRoomMoved=e=>{var n;this.participantSid=(n=e.participant)===null||n===void 0?void 0:n.sid,this.latestJoinResponse&&(this.latestJoinResponse.room=e.room),this.emit(X.RoomMoved,e)},this.client.onClose=()=>{this.handleDisconnect("signal",_i.RR_SIGNAL_DISCONNECTED)},this.client.onLeave=e=>{switch(this.log.debug("client leave request",Object.assign(Object.assign({},this.logContext),{reason:e==null?void 0:e.reason})),e.regions&&this.regionUrlProvider&&(this.log.debug("updating regions",this.logContext),this.regionUrlProvider.setServerReportedRegions(e.regions)),e.action){case Qi.DISCONNECT:this.emit(X.Disconnected,e==null?void 0:e.reason),this.close();break;case Qi.RECONNECT:this.fullReconnectOnNext=!0,this.handleDisconnect(Ja);break;case Qi.RESUME:this.handleDisconnect(Ja)}}}makeRTCConfiguration(e){var n;const i=Object.assign({},this.rtcConfig);if(!((n=this.signalOpts)===null||n===void 0)&&n.e2eeEnabled&&(this.log.debug("E2EE - setting up transports with insertable streams",this.logContext),i.encodedInsertableStreams=!0),e.iceServers&&!i.iceServers){const r=[];e.iceServers.forEach(s=>{const o={urls:s.urls};s.username&&(o.username=s.username),s.credential&&(o.credential=s.credential),r.push(o)}),i.iceServers=r}return e.clientConfiguration&&e.clientConfiguration.forceRelay===rs.ENABLED&&(i.iceTransportPolicy="relay"),i.sdpSemantics="unified-plan",i.continualGatheringPolicy="gather_continually",i}createDataChannels(){this.pcManager&&(this.lossyDC&&(this.lossyDC.onmessage=null,this.lossyDC.onerror=null),this.reliableDC&&(this.reliableDC.onmessage=null,this.reliableDC.onerror=null),this.lossyDC=this.pcManager.createPublisherDataChannel(rh,{ordered:!1,maxRetransmits:0}),this.reliableDC=this.pcManager.createPublisherDataChannel(sh,{ordered:!0}),this.lossyDC.onmessage=this.handleDataMessage,this.reliableDC.onmessage=this.handleDataMessage,this.lossyDC.onerror=this.handleDataError,this.reliableDC.onerror=this.handleDataError,this.lossyDC.bufferedAmountLowThreshold=65535,this.reliableDC.bufferedAmountLowThreshold=65535,this.lossyDC.onbufferedamountlow=this.handleBufferedAmountLow,this.reliableDC.onbufferedamountlow=this.handleBufferedAmountLow)}createSender(e,n,i){return P(this,void 0,void 0,function*(){if(al())return yield this.createTransceiverRTCRtpSender(e,n,i);if(cl())return this.log.warn("using add-track fallback",this.logContext),yield this.createRTCRtpSender(e.mediaStreamTrack);throw new Je("Required webRTC APIs not supported on this device")})}createSimulcastSender(e,n,i,r){return P(this,void 0,void 0,function*(){if(al())return this.createSimulcastTransceiverSender(e,n,i,r);if(cl())return this.log.debug("using add-track fallback",this.logContext),this.createRTCRtpSender(e.mediaStreamTrack);throw new Je("Cannot stream on this device")})}createTransceiverRTCRtpSender(e,n,i){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("publisher is closed");const r=[];e.mediaStream&&r.push(e.mediaStream),vr(e)&&(e.codec=n.videoCodec);const s={direction:"sendonly",streams:r};return i&&(s.sendEncodings=i),(yield this.pcManager.addPublisherTransceiver(e.mediaStreamTrack,s)).sender})}createSimulcastTransceiverSender(e,n,i,r){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("publisher is closed");const s={direction:"sendonly"};r&&(s.sendEncodings=r);const o=yield this.pcManager.addPublisherTransceiver(n.mediaStreamTrack,s);if(i.videoCodec)return e.setSimulcastTrackSender(i.videoCodec,o.sender),o.sender})}createRTCRtpSender(e){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("publisher is closed");return this.pcManager.addPublisherTrack(e)})}attemptReconnect(e){return P(this,void 0,void 0,function*(){var n,i,r;if(!this._isClosed){if(this.attemptingReconnect){me.warn("already attempting reconnect, returning early",this.logContext);return}(((n=this.clientConfiguration)===null||n===void 0?void 0:n.resumeConnection)===rs.DISABLED||((r=(i=this.pcManager)===null||i===void 0?void 0:i.currentState)!==null&&r!==void 0?r:Ve.NEW)===Ve.NEW)&&(this.fullReconnectOnNext=!0);try{this.attemptingReconnect=!0,this.fullReconnectOnNext?yield this.restartConnection():yield this.resumeConnection(e),this.clearPendingReconnect(),this.fullReconnectOnNext=!1}catch(s){this.reconnectAttempts+=1;let o=!0;s instanceof Je?(this.log.debug("received unrecoverable error",Object.assign(Object.assign({},this.logContext),{error:s})),o=!1):s instanceof Mi||(this.fullReconnectOnNext=!0),o?this.handleDisconnect("reconnect",_i.RR_UNKNOWN):(this.log.info("could not recover connection after ".concat(this.reconnectAttempts," attempts, ").concat(Date.now()-this.reconnectStart,"ms. giving up"),this.logContext),this.emit(X.Disconnected),yield this.close())}finally{this.attemptingReconnect=!1}}})}getNextRetryDelay(e){try{return this.reconnectPolicy.nextRetryDelayInMs(e)}catch(n){this.log.warn("encountered error in reconnect policy",Object.assign(Object.assign({},this.logContext),{error:n}))}return null}restartConnection(e){return P(this,void 0,void 0,function*(){var n,i,r;try{if(!this.url||!this.token)throw new Je("could not reconnect, url or token not saved");this.log.info("reconnecting, attempt: ".concat(this.reconnectAttempts),this.logContext),this.emit(X.Restarting),this.client.isDisconnected||(yield this.client.sendLeave()),yield this.cleanupPeerConnections(),yield this.cleanupClient();let s;try{if(!this.signalOpts)throw this.log.warn("attempted connection restart, without signal options present",this.logContext),new Mi;s=yield this.join(e??this.url,this.token,this.signalOpts)}catch(o){throw o instanceof Re&&o.reason===ge.NotAllowed?new Je("could not reconnect, token might be expired"):new Mi}if(this.shouldFailNext)throw this.shouldFailNext=!1,new Error("simulated failure");if(this.client.setReconnected(),this.emit(X.SignalRestarted,s),yield this.waitForPCReconnected(),this.client.currentState!==Ae.CONNECTED)throw new Mi("Signal connection got severed during reconnect");(n=this.regionUrlProvider)===null||n===void 0||n.resetAttempts(),this.emit(X.Restarted)}catch(s){const o=yield(i=this.regionUrlProvider)===null||i===void 0?void 0:i.getNextBestRegionUrl();if(o){yield this.restartConnection(o);return}else throw(r=this.regionUrlProvider)===null||r===void 0||r.resetAttempts(),s}})}resumeConnection(e){return P(this,void 0,void 0,function*(){var n;if(!this.url||!this.token)throw new Je("could not reconnect, url or token not saved");if(!this.pcManager)throw new Je("publisher and subscriber connections unset");this.log.info("resuming signal connection, attempt ".concat(this.reconnectAttempts),this.logContext),this.emit(X.Resuming);let i;try{this.setupSignalClientCallbacks(),i=yield this.client.reconnect(this.url,this.token,this.participantSid,e)}catch(r){let s="";throw r instanceof Error&&(s=r.message,this.log.error(r.message,Object.assign(Object.assign({},this.logContext),{error:r}))),r instanceof Re&&r.reason===ge.NotAllowed?new Je("could not reconnect, token might be expired"):r instanceof Re&&r.reason===ge.LeaveRequest?r:new Mi(s)}if(this.emit(X.SignalResumed),i){const r=this.makeRTCConfiguration(i);this.pcManager.updateConfiguration(r),this.latestJoinResponse&&(this.latestJoinResponse.serverInfo=i.serverInfo)}else this.log.warn("Did not receive reconnect response",this.logContext);if(this.shouldFailNext)throw this.shouldFailNext=!1,new Error("simulated failure");if(yield this.pcManager.triggerIceRestart(),yield this.waitForPCReconnected(),this.client.currentState!==Ae.CONNECTED)throw new Mi("Signal connection got severed during reconnect");this.client.setReconnected(),((n=this.reliableDC)===null||n===void 0?void 0:n.readyState)==="open"&&this.reliableDC.id===null&&this.createDataChannels(),i!=null&&i.lastMessageSeq&&this.resendReliableMessagesForResume(i.lastMessageSeq),this.emit(X.Resumed)})}waitForPCInitialConnection(e,n){return P(this,void 0,void 0,function*(){if(!this.pcManager)throw new Je("PC manager is closed");yield this.pcManager.ensurePCTransportConnection(n,e)})}waitForPCReconnected(){return P(this,void 0,void 0,function*(){this.pcState=Lt.Reconnecting,this.log.debug("waiting for peer connection to reconnect",this.logContext);try{if(yield mt(jC),!this.pcManager)throw new Je("PC manager is closed");yield this.pcManager.ensurePCTransportConnection(void 0,this.peerConnectionTimeout),this.pcState=Lt.Connected}catch(e){throw this.pcState=Lt.Disconnected,new Re("could not establish PC connection, ".concat(e.message),ge.InternalError)}})}publishRpcResponse(e,n,i,r){return P(this,void 0,void 0,function*(){const s=new ut({destinationIdentities:[e],kind:fe.RELIABLE,value:{case:"rpcResponse",value:new Cg({requestId:n,value:r?{case:"error",value:r.toProto()}:{case:"payload",value:i??""}})}});yield this.sendDataPacket(s,fe.RELIABLE)})}publishRpcAck(e,n){return P(this,void 0,void 0,function*(){const i=new ut({destinationIdentities:[e],kind:fe.RELIABLE,value:{case:"rpcAck",value:new kg({requestId:n})}});yield this.sendDataPacket(i,fe.RELIABLE)})}sendDataPacket(e,n){return P(this,void 0,void 0,function*(){yield this.ensurePublisherConnected(n),n===fe.RELIABLE&&(e.sequence=this.reliableDataSequence,this.reliableDataSequence+=1);const i=e.toBinary(),r=this.dataChannelForKind(n);if(r){if(n===fe.RELIABLE&&this.reliableMessageBuffer.push({data:i,sequence:e.sequence}),this.attemptingReconnect)return;r.send(i)}this.updateAndEmitDCBufferStatus(n)})}resendReliableMessagesForResume(e){return P(this,void 0,void 0,function*(){yield this.ensurePublisherConnected(fe.RELIABLE);const n=this.dataChannelForKind(fe.RELIABLE);n&&(this.reliableMessageBuffer.popToSequence(e),this.reliableMessageBuffer.getAll().forEach(i=>{n.send(i.data)})),this.updateAndEmitDCBufferStatus(fe.RELIABLE)})}waitForBufferStatusLow(e){return new Promise((n,i)=>P(this,void 0,void 0,function*(){if(this.isBufferStatusLow(e))n();else{const r=()=>i("Engine closed");for(this.once(X.Closing,r);!this.dcBufferStatus.get(e);)yield mt(10);this.off(X.Closing,r),n()}}))}ensureDataTransportConnected(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.subscriberPrimary;return function*(){var s;if(!i.pcManager)throw new Je("PC manager is closed");const o=r?i.pcManager.subscriber:i.pcManager.publisher,a=r?"Subscriber":"Publisher";if(!o)throw new Re("".concat(a," connection not set"),ge.InternalError);let c=!1;!r&&!i.dataChannelForKind(n,r)&&(i.createDataChannels(),c=!0),!c&&!r&&!i.pcManager.publisher.isICEConnected&&i.pcManager.publisher.getICEConnectionState()!=="checking"&&(c=!0),c&&i.negotiate();const l=i.dataChannelForKind(n,r);if((l==null?void 0:l.readyState)==="open")return;const u=new Date().getTime()+i.peerConnectionTimeout;for(;new Date().getTime()<u;){if(o.isICEConnected&&((s=i.dataChannelForKind(n,r))===null||s===void 0?void 0:s.readyState)==="open")return;yield mt(50)}throw new Re("could not establish ".concat(a," connection, state: ").concat(o.getICEConnectionState()),ge.InternalError)}()})}ensurePublisherConnected(e){return P(this,void 0,void 0,function*(){this.publisherConnectionPromise||(this.publisherConnectionPromise=this.ensureDataTransportConnected(e,!1)),yield this.publisherConnectionPromise})}verifyTransport(){return!(!this.pcManager||this.pcManager.currentState!==Ve.CONNECTED||!this.client.ws||this.client.ws.readyState===WebSocket.CLOSED)}negotiate(){return P(this,void 0,void 0,function*(){return new Promise((e,n)=>P(this,void 0,void 0,function*(){if(!this.pcManager){n(new rl("PC manager is closed"));return}this.pcManager.requirePublisher(),this.pcManager.publisher.getTransceivers().length==0&&!this.lossyDC&&!this.reliableDC&&this.createDataChannels();const i=new AbortController,r=()=>{i.abort(),this.log.debug("engine disconnected while negotiation was ongoing",this.logContext),e()};this.isClosed&&n("cannot negotiate on closed engine"),this.on(X.Closing,r),this.pcManager.publisher.once(ir.RTPVideoPayloadTypes,s=>{const o=new Map;s.forEach(a=>{const c=a.codec.toLowerCase();zk(c)&&o.set(a.payload,c)}),this.emit(X.RTPVideoMapUpdate,o)});try{yield this.pcManager.negotiate(i),e()}catch(s){s instanceof rl&&(this.fullReconnectOnNext=!0),this.handleDisconnect("negotiation",_i.RR_UNKNOWN),n(s)}finally{this.off(X.Closing,r)}}))})}dataChannelForKind(e,n){if(n){if(e===fe.LOSSY)return this.lossyDCSub;if(e===fe.RELIABLE)return this.reliableDCSub}else{if(e===fe.LOSSY)return this.lossyDC;if(e===fe.RELIABLE)return this.reliableDC}}sendSyncState(e,n){var i,r;if(!this.pcManager){this.log.warn("sync state cannot be sent without peer connection setup",this.logContext);return}const s=this.pcManager.subscriber.getLocalDescription(),o=this.pcManager.subscriber.getRemoteDescription(),a=(r=(i=this.signalOpts)===null||i===void 0?void 0:i.autoSubscribe)!==null&&r!==void 0?r:!0,c=new Array,l=new Array;e.forEach(u=>{u.isDesired!==a&&c.push(u.trackSid),u.isEnabled||l.push(u.trackSid)}),this.client.sendSyncState(new Ug({answer:s?No({sdp:s.sdp,type:s.type}):void 0,offer:o?No({sdp:o.sdp,type:o.type}):void 0,subscription:new sa({trackSids:c,subscribe:!a,participantTracks:[]}),publishTracks:Qk(n),dataChannels:this.dataChannelsInfo(),trackSidsDisabled:l,datachannelReceiveStates:this.reliableReceivedState.map((u,d)=>new Bg({publisherSid:d,lastSeq:u}))}))}failNext(){this.shouldFailNext=!0}dataChannelsInfo(){const e=[],n=(i,r)=>{(i==null?void 0:i.id)!==void 0&&i.id!==null&&e.push(new $g({label:i.label,id:i.id,target:r}))};return n(this.dataChannelForKind(fe.LOSSY),Bt.PUBLISHER),n(this.dataChannelForKind(fe.RELIABLE),Bt.PUBLISHER),n(this.dataChannelForKind(fe.LOSSY,!0),Bt.SUBSCRIBER),n(this.dataChannelForKind(fe.RELIABLE,!0),Bt.SUBSCRIBER),e}clearReconnectTimeout(){this.reconnectTimeout&&rt.clearTimeout(this.reconnectTimeout)}clearPendingReconnect(){this.clearReconnectTimeout(),this.reconnectAttempts=0}registerOnLineListener(){ht()&&window.addEventListener("online",this.handleBrowserOnLine)}deregisterOnLineListener(){ht()&&window.removeEventListener("online",this.handleBrowserOnLine)}}class Mi extends Error{}function $C(t){return t!==void 0&&t>13}function HC(t,e){const n=t.participantIdentity?t.participantIdentity:e.participantIdentity;t.participantIdentity=n,e.participantIdentity=n;const i=t.destinationIdentities.length!==0?t.destinationIdentities:e.destinationIdentities;t.destinationIdentities=i,e.destinationIdentities=i}class yl{constructor(e,n){this.lastUpdateAt=0,this.settingsCacheTime=3e3,this.attemptedRegions=[],this.serverUrl=new URL(e),this.token=n}updateToken(e){this.token=e}isCloud(){return ul(this.serverUrl)}getServerUrl(){return this.serverUrl}getNextBestRegionUrl(e){return P(this,void 0,void 0,function*(){if(!this.isCloud())throw Error("region availability is only supported for LiveKit Cloud domains");(!this.regionSettings||Date.now()-this.lastUpdateAt>this.settingsCacheTime)&&(this.regionSettings=yield this.fetchRegionSettings(e));const n=this.regionSettings.regions.filter(i=>!this.attemptedRegions.find(r=>r.url===i.url));if(n.length>0){const i=n[0];return this.attemptedRegions.push(i),me.debug("next region: ".concat(i.region)),i.url}else return null})}resetAttempts(){this.attemptedRegions=[]}fetchRegionSettings(e){return P(this,void 0,void 0,function*(){const n=yield fetch("".concat(zC(this.serverUrl),"/regions"),{headers:{authorization:"Bearer ".concat(this.token)},signal:e});if(n.ok){const i=yield n.json();return this.lastUpdateAt=Date.now(),i}else throw new Re("Could not fetch region settings: ".concat(n.statusText),n.status===401?ge.NotAllowed:ge.InternalError,n.status)})}setServerReportedRegions(e){this.regionSettings=e,this.lastUpdateAt=Date.now()}}function zC(t){return"".concat(t.protocol.replace("ws","http"),"//").concat(t.host,"/settings")}class N0{get info(){return this._info}constructor(e,n,i){this.reader=n,this.totalByteSize=i,this._info=e,this.bytesReceived=0}}class WC extends N0{handleChunkReceived(e){var n;this.bytesReceived+=e.content.byteLength;const i=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(n=this.onProgress)===null||n===void 0||n.call(this,i)}[Symbol.asyncIterator](){const e=this.reader.getReader();return{next:()=>P(this,void 0,void 0,function*(){try{const{done:n,value:i}=yield e.read();return n?{done:!0,value:void 0}:(this.handleChunkReceived(i),{done:!1,value:i.content})}catch{return{done:!0,value:void 0}}}),return(){return P(this,void 0,void 0,function*(){return e.releaseLock(),{done:!0,value:void 0}})}}}readAll(){return P(this,void 0,void 0,function*(){var e,n,i,r;let s=new Set;try{for(var o=!0,a=bn(this),c;c=yield a.next(),e=c.done,!e;o=!0){r=c.value,o=!1;const l=r;s.add(l)}}catch(l){n={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(n)throw n.error}}return Array.from(s)})}}class qC extends N0{constructor(e,n,i){super(e,n,i),this.receivedChunks=new Map}handleChunkReceived(e){var n;const i=vo(e.chunkIndex),r=this.receivedChunks.get(i);if(r&&r.version>e.version)return;this.receivedChunks.set(i,e),this.bytesReceived+=e.content.byteLength;const s=this.totalByteSize?this.bytesReceived/this.totalByteSize:void 0;(n=this.onProgress)===null||n===void 0||n.call(this,s)}[Symbol.asyncIterator](){const e=this.reader.getReader(),n=new TextDecoder;return{next:()=>P(this,void 0,void 0,function*(){try{const{done:i,value:r}=yield e.read();return i?{done:!0,value:void 0}:(this.handleChunkReceived(r),{done:!1,value:n.decode(r.content)})}catch{return{done:!0,value:void 0}}}),return(){return P(this,void 0,void 0,function*(){return e.releaseLock(),{done:!0,value:void 0}})}}}readAll(){return P(this,void 0,void 0,function*(){var e,n,i,r;let s="";try{for(var o=!0,a=bn(this),c;c=yield a.next(),e=c.done,!e;o=!0)r=c.value,o=!1,s+=r}catch(l){n={error:l}}finally{try{!o&&!e&&(i=a.return)&&(yield i.call(a))}finally{if(n)throw n.error}}return s})}}class L0{constructor(e,n,i){this.writableStream=e,this.defaultWriter=e.getWriter(),this.onClose=i,this.info=n}write(e){return this.defaultWriter.write(e)}close(){return P(this,void 0,void 0,function*(){var e;yield this.defaultWriter.close(),this.defaultWriter.releaseLock(),(e=this.onClose)===null||e===void 0||e.call(this)})}}class GC extends L0{}class KC extends L0{}class V0 extends M{constructor(e,n,i,r,s){super(e,i,s),this.sid=n,this.receiver=r}get isLocal(){return!1}setMuted(e){this.isMuted!==e&&(this.isMuted=e,this._mediaStreamTrack.enabled=!e,this.emit(e?G.Muted:G.Unmuted,this))}setMediaStream(e){this.mediaStream=e;const n=i=>{i.track===this._mediaStreamTrack&&(e.removeEventListener("removetrack",n),this.receiver&&"playoutDelayHint"in this.receiver&&(this.receiver.playoutDelayHint=void 0),this.receiver=void 0,this._currentBitrate=0,this.emit(G.Ended,this))};e.addEventListener("removetrack",n)}start(){this.startMonitor(),super.enable()}stop(){this.stopMonitor(),super.disable()}getRTCStatsReport(){return P(this,void 0,void 0,function*(){var e;return!((e=this.receiver)===null||e===void 0)&&e.getStats?yield this.receiver.getStats():void 0})}setPlayoutDelay(e){this.receiver?"playoutDelayHint"in this.receiver?this.receiver.playoutDelayHint=e:this.log.warn("Playout delay not supported in this browser"):this.log.warn("Cannot set playout delay, track already ended")}getPlayoutDelay(){if(this.receiver){if("playoutDelayHint"in this.receiver)return this.receiver.playoutDelayHint;this.log.warn("Playout delay not supported in this browser")}else this.log.warn("Cannot get playout delay, track already ended");return 0}startMonitor(){this.monitorInterval||(this.monitorInterval=setInterval(()=>this.monitorReceiver(),Du)),eC()&&this.registerTimeSyncUpdate()}registerTimeSyncUpdate(){const e=()=>{var n;this.timeSyncHandle=requestAnimationFrame(()=>e());const i=(n=this.receiver)===null||n===void 0?void 0:n.getSynchronizationSources()[0];if(i){const{timestamp:r,rtpTimestamp:s}=i;s&&this.rtpTimestamp!==s&&(this.emit(G.TimeSyncUpdate,{timestamp:r,rtpTimestamp:s}),this.rtpTimestamp=s)}};e()}}class F0 extends V0{constructor(e,n,i,r,s,o){super(e,n,M.Kind.Audio,i,o),this.monitorReceiver=()=>P(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}const a=yield this.getReceiverStats();a&&this.prevStats&&this.receiver&&(this._currentBitrate=ca(a,this.prevStats)),this.prevStats=a}),this.audioContext=r,this.webAudioPluginNodes=[],s&&(this.sinkId=s.deviceId)}setVolume(e){var n;for(const i of this.attachedElements)this.audioContext?(n=this.gainNode)===null||n===void 0||n.gain.setTargetAtTime(e,0,.1):i.volume=e;on()&&this._mediaStreamTrack._setVolume(e),this.elementVolume=e}getVolume(){if(this.elementVolume)return this.elementVolume;if(on())return 1;let e=0;return this.attachedElements.forEach(n=>{n.volume>e&&(e=n.volume)}),e}setSinkId(e){return P(this,void 0,void 0,function*(){this.sinkId=e,yield Promise.all(this.attachedElements.map(n=>{if(ll(n))return n.setSinkId(e)}))})}attach(e){const n=this.attachedElements.length===0;return e?super.attach(e):e=super.attach(),this.sinkId&&ll(e)&&e.setSinkId(this.sinkId).catch(i=>{this.log.error("Failed to set sink id on remote audio track",i,this.logContext)}),this.audioContext&&n&&(this.log.debug("using audio context mapping",this.logContext),this.connectWebAudio(this.audioContext,e),e.volume=0,e.muted=!0),this.elementVolume&&this.setVolume(this.elementVolume),e}detach(e){let n;return e?(n=super.detach(e),this.audioContext&&(this.attachedElements.length>0?this.connectWebAudio(this.audioContext,this.attachedElements[0]):this.disconnectWebAudio())):(n=super.detach(),this.disconnectWebAudio()),n}setAudioContext(e){this.audioContext=e,e&&this.attachedElements.length>0?this.connectWebAudio(e,this.attachedElements[0]):e||this.disconnectWebAudio()}setWebAudioPlugins(e){this.webAudioPluginNodes=e,this.attachedElements.length>0&&this.audioContext&&this.connectWebAudio(this.audioContext,this.attachedElements[0])}connectWebAudio(e,n){this.disconnectWebAudio(),this.sourceNode=e.createMediaStreamSource(n.srcObject);let i=this.sourceNode;this.webAudioPluginNodes.forEach(r=>{i.connect(r),i=r}),this.gainNode=e.createGain(),i.connect(this.gainNode),this.gainNode.connect(e.destination),this.elementVolume&&this.gainNode.gain.setTargetAtTime(this.elementVolume,0,.1),e.state!=="running"&&e.resume().then(()=>{e.state!=="running"&&this.emit(G.AudioPlaybackFailed,new Error("Audio Context couldn't be started automatically"))}).catch(r=>{this.emit(G.AudioPlaybackFailed,r)})}disconnectWebAudio(){var e,n;(e=this.gainNode)===null||e===void 0||e.disconnect(),(n=this.sourceNode)===null||n===void 0||n.disconnect(),this.gainNode=void 0,this.sourceNode=void 0}getReceiverStats(){return P(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;const e=yield this.receiver.getStats();let n;return e.forEach(i=>{i.type==="inbound-rtp"&&(n={type:"audio",streamId:i.id,timestamp:i.timestamp,jitter:i.jitter,bytesReceived:i.bytesReceived,concealedSamples:i.concealedSamples,concealmentEvents:i.concealmentEvents,silentConcealedSamples:i.silentConcealedSamples,silentConcealmentEvents:i.silentConcealmentEvents,totalAudioEnergy:i.totalAudioEnergy,totalSamplesDuration:i.totalSamplesDuration})}),n})}}const Xa=100;class ZC extends V0{constructor(e,n,i,r,s){super(e,n,M.Kind.Video,i,s),this.elementInfos=[],this.monitorReceiver=()=>P(this,void 0,void 0,function*(){if(!this.receiver){this._currentBitrate=0;return}const o=yield this.getReceiverStats();o&&this.prevStats&&this.receiver&&(this._currentBitrate=ca(o,this.prevStats)),this.prevStats=o}),this.debouncedHandleResize=_u(()=>{this.updateDimensions()},Xa),this.adaptiveStreamSettings=r}get isAdaptiveStream(){return this.adaptiveStreamSettings!==void 0}get mediaStreamTrack(){return this._mediaStreamTrack}setMuted(e){super.setMuted(e),this.attachedElements.forEach(n=>{e?tr(this._mediaStreamTrack,n):zi(this._mediaStreamTrack,n)})}attach(e){if(e?super.attach(e):e=super.attach(),this.adaptiveStreamSettings&&this.elementInfos.find(n=>n.element===e)===void 0){const n=new YC(e);this.observeElementInfo(n)}return e}observeElementInfo(e){this.adaptiveStreamSettings&&this.elementInfos.find(n=>n===e)===void 0?(e.handleResize=()=>{this.debouncedHandleResize()},e.handleVisibilityChanged=()=>{this.updateVisibility()},this.elementInfos.push(e),e.observe(),this.debouncedHandleResize(),this.updateVisibility()):this.log.warn("visibility resize observer not triggered",this.logContext)}stopObservingElementInfo(e){if(!this.isAdaptiveStream){this.log.warn("stopObservingElementInfo ignored",this.logContext);return}const n=this.elementInfos.filter(i=>i===e);for(const i of n)i.stopObserving();this.elementInfos=this.elementInfos.filter(i=>i!==e),this.updateVisibility(),this.debouncedHandleResize()}detach(e){let n=[];if(e)return this.stopObservingElement(e),super.detach(e);n=super.detach();for(const i of n)this.stopObservingElement(i);return n}getDecoderImplementation(){var e;return(e=this.prevStats)===null||e===void 0?void 0:e.decoderImplementation}getReceiverStats(){return P(this,void 0,void 0,function*(){if(!this.receiver||!this.receiver.getStats)return;const e=yield this.receiver.getStats();let n,i="",r=new Map;return e.forEach(s=>{s.type==="inbound-rtp"?(i=s.codecId,n={type:"video",streamId:s.id,framesDecoded:s.framesDecoded,framesDropped:s.framesDropped,framesReceived:s.framesReceived,packetsReceived:s.packetsReceived,packetsLost:s.packetsLost,frameWidth:s.frameWidth,frameHeight:s.frameHeight,pliCount:s.pliCount,firCount:s.firCount,nackCount:s.nackCount,jitter:s.jitter,timestamp:s.timestamp,bytesReceived:s.bytesReceived,decoderImplementation:s.decoderImplementation}):s.type==="codec"&&r.set(s.id,s)}),n&&i!==""&&r.get(i)&&(n.mimeType=r.get(i).mimeType),n})}stopObservingElement(e){const n=this.elementInfos.filter(i=>i.element===e);for(const i of n)this.stopObservingElementInfo(i)}handleAppVisibilityChanged(){const e=Object.create(null,{handleAppVisibilityChanged:{get:()=>super.handleAppVisibilityChanged}});return P(this,void 0,void 0,function*(){yield e.handleAppVisibilityChanged.call(this),this.isAdaptiveStream&&this.updateVisibility()})}updateVisibility(){var e,n;const i=this.elementInfos.reduce((a,c)=>Math.max(a,c.visibilityChangedAt||0),0),r=!((n=(e=this.adaptiveStreamSettings)===null||e===void 0?void 0:e.pauseVideoInBackground)!==null&&n!==void 0)||n?this.isInBackground:!1,s=this.elementInfos.some(a=>a.pictureInPicture),o=this.elementInfos.some(a=>a.visible)&&!r||s;if(this.lastVisible!==o){if(!o&&Date.now()-i<Xa){rt.setTimeout(()=>{this.updateVisibility()},Xa);return}this.lastVisible=o,this.emit(G.VisibilityChanged,o,this)}}updateDimensions(){var e,n;let i=0,r=0;const s=this.getPixelDensity();for(const o of this.elementInfos){const a=o.width()*s,c=o.height()*s;a+c>i+r&&(i=a,r=c)}((e=this.lastDimensions)===null||e===void 0?void 0:e.width)===i&&((n=this.lastDimensions)===null||n===void 0?void 0:n.height)===r||(this.lastDimensions={width:i,height:r},this.emit(G.VideoDimensionsChanged,this.lastDimensions,this))}getPixelDensity(){var e;const n=(e=this.adaptiveStreamSettings)===null||e===void 0?void 0:e.pixelDensity;return n==="screen"?jf():n||(jf()>2?2:1)}}class YC{get visible(){return this.isPiP||this.isIntersecting}get pictureInPicture(){return this.isPiP}constructor(e,n){this.onVisibilityChanged=i=>{var r;const{target:s,isIntersecting:o}=i;s===this.element&&(this.isIntersecting=o,this.isPiP=Vr(this.element),this.visibilityChangedAt=Date.now(),(r=this.handleVisibilityChanged)===null||r===void 0||r.call(this))},this.onEnterPiP=()=>{var i,r,s;(r=(i=window.documentPictureInPicture)===null||i===void 0?void 0:i.window)===null||r===void 0||r.addEventListener("pagehide",this.onLeavePiP),this.isPiP=Vr(this.element),(s=this.handleVisibilityChanged)===null||s===void 0||s.call(this)},this.onLeavePiP=()=>{var i;this.isPiP=Vr(this.element),(i=this.handleVisibilityChanged)===null||i===void 0||i.call(this)},this.element=e,this.isIntersecting=n??bl(e),this.isPiP=ht()&&Vr(e),this.visibilityChangedAt=0}width(){return this.element.clientWidth}height(){return this.element.clientHeight}observe(){var e,n,i;this.isIntersecting=bl(this.element),this.isPiP=Vr(this.element),this.element.handleResize=()=>{var r;(r=this.handleResize)===null||r===void 0||r.call(this)},this.element.handleVisibilityChanged=this.onVisibilityChanged,Bf().observe(this.element),Uf().observe(this.element),this.element.addEventListener("enterpictureinpicture",this.onEnterPiP),this.element.addEventListener("leavepictureinpicture",this.onLeavePiP),(e=window.documentPictureInPicture)===null||e===void 0||e.addEventListener("enter",this.onEnterPiP),(i=(n=window.documentPictureInPicture)===null||n===void 0?void 0:n.window)===null||i===void 0||i.addEventListener("pagehide",this.onLeavePiP)}stopObserving(){var e,n,i,r,s;(e=Bf())===null||e===void 0||e.unobserve(this.element),(n=Uf())===null||n===void 0||n.unobserve(this.element),this.element.removeEventListener("enterpictureinpicture",this.onEnterPiP),this.element.removeEventListener("leavepictureinpicture",this.onLeavePiP),(i=window.documentPictureInPicture)===null||i===void 0||i.removeEventListener("enter",this.onEnterPiP),(s=(r=window.documentPictureInPicture)===null||r===void 0?void 0:r.window)===null||s===void 0||s.removeEventListener("pagehide",this.onLeavePiP)}}function Vr(t){var e,n;return document.pictureInPictureElement===t?!0:!((e=window.documentPictureInPicture)===null||e===void 0)&&e.window?bl(t,(n=window.documentPictureInPicture)===null||n===void 0?void 0:n.window):!1}function bl(t,e){const n=e||window;let i=t.offsetTop,r=t.offsetLeft;const s=t.offsetWidth,o=t.offsetHeight,{hidden:a}=t,{display:c}=getComputedStyle(t);for(;t.offsetParent;)t=t.offsetParent,i+=t.offsetTop,r+=t.offsetLeft;return i<n.pageYOffset+n.innerHeight&&r<n.pageXOffset+n.innerWidth&&i+o>n.pageYOffset&&r+s>n.pageXOffset&&!a&&c!=="none"}class gn extends ln.EventEmitter{constructor(e,n,i,r){var s;super(),this.metadataMuted=!1,this.encryption=yt.NONE,this.log=me,this.handleMuted=()=>{this.emit(G.Muted)},this.handleUnmuted=()=>{this.emit(G.Unmuted)},this.log=Cn((s=r==null?void 0:r.loggerName)!==null&&s!==void 0?s:zt.Publication),this.loggerContextCb=this.loggerContextCb,this.setMaxListeners(100),this.kind=e,this.trackSid=n,this.trackName=i,this.source=M.Source.Unknown}setTrack(e){this.track&&(this.track.off(G.Muted,this.handleMuted),this.track.off(G.Unmuted,this.handleUnmuted)),this.track=e,e&&(e.on(G.Muted,this.handleMuted),e.on(G.Unmuted,this.handleUnmuted))}get logContext(){var e;return Object.assign(Object.assign({},(e=this.loggerContextCb)===null||e===void 0?void 0:e.call(this)),he(this))}get isMuted(){return this.metadataMuted}get isEnabled(){return!0}get isSubscribed(){return this.track!==void 0}get isEncrypted(){return this.encryption!==yt.NONE}get audioTrack(){if(en(this.track))return this.track}get videoTrack(){if(vr(this.track))return this.track}updateInfo(e){this.trackSid=e.sid,this.trackName=e.name,this.source=M.sourceFromProto(e.source),this.mimeType=e.mimeType,this.kind===M.Kind.Video&&e.width>0&&(this.dimensions={width:e.width,height:e.height},this.simulcasted=e.simulcast),this.encryption=e.encryption,this.trackInfo=e,this.log.debug("update publication info",Object.assign(Object.assign({},this.logContext),{info:e}))}}(function(t){(function(e){e.Desired="desired",e.Subscribed="subscribed",e.Unsubscribed="unsubscribed"})(t.SubscriptionStatus||(t.SubscriptionStatus={})),function(e){e.Allowed="allowed",e.NotAllowed="not_allowed"}(t.PermissionStatus||(t.PermissionStatus={}))})(gn||(gn={}));class Sl extends gn{get isUpstreamPaused(){var e;return(e=this.track)===null||e===void 0?void 0:e.isUpstreamPaused}constructor(e,n,i,r){super(e,n.sid,n.name,r),this.track=void 0,this.handleTrackEnded=()=>{this.emit(G.Ended)},this.updateInfo(n),this.setTrack(i)}setTrack(e){this.track&&this.track.off(G.Ended,this.handleTrackEnded),super.setTrack(e),e&&e.on(G.Ended,this.handleTrackEnded)}get isMuted(){return this.track?this.track.isMuted:super.isMuted}get audioTrack(){return super.audioTrack}get videoTrack(){return super.videoTrack}get isLocal(){return!0}mute(){return P(this,void 0,void 0,function*(){var e;return(e=this.track)===null||e===void 0?void 0:e.mute()})}unmute(){return P(this,void 0,void 0,function*(){var e;return(e=this.track)===null||e===void 0?void 0:e.unmute()})}pauseUpstream(){return P(this,void 0,void 0,function*(){var e;yield(e=this.track)===null||e===void 0?void 0:e.pauseUpstream()})}resumeUpstream(){return P(this,void 0,void 0,function*(){var e;yield(e=this.track)===null||e===void 0?void 0:e.resumeUpstream()})}getTrackFeatures(){var e;if(en(this.track)){const n=this.track.getSourceTrackSettings(),i=new Set;return n.autoGainControl&&i.add(et.TF_AUTO_GAIN_CONTROL),n.echoCancellation&&i.add(et.TF_ECHO_CANCELLATION),n.noiseSuppression&&i.add(et.TF_NOISE_SUPPRESSION),n.channelCount&&n.channelCount>1&&i.add(et.TF_STEREO),!((e=this.options)===null||e===void 0)&&e.dtx||i.add(et.TF_NO_DTX),this.track.enhancedNoiseCancellation&&i.add(et.TF_ENHANCED_NOISE_CANCELLATION),Array.from(i.values())}else return[]}}function la(t,e){return P(this,void 0,void 0,function*(){t??(t={});let n=!1;const{audioProcessor:i,videoProcessor:r,optionsWithoutProcessor:s}=P0(t);let o=s.audio,a=s.video;if(i&&typeof s.audio=="object"&&(s.audio.processor=i),r&&typeof s.video=="object"&&(s.video.processor=r),t.audio&&typeof s.audio=="object"&&typeof s.audio.deviceId=="string"){const d=s.audio.deviceId;s.audio.deviceId={exact:d},n=!0,o=Object.assign(Object.assign({},s.audio),{deviceId:{ideal:d}})}if(s.video&&typeof s.video=="object"&&typeof s.video.deviceId=="string"){const d=s.video.deviceId;s.video.deviceId={exact:d},n=!0,a=Object.assign(Object.assign({},s.video),{deviceId:{ideal:d}})}(s.audio===!0||typeof s.audio=="object"&&!s.audio.deviceId)&&(s.audio={deviceId:"default"}),s.video===!0?s.video={deviceId:"default"}:typeof s.video=="object"&&!s.video.deviceId&&(s.video.deviceId="default");const c=x0(s,A0,I0),l=Pu(c),u=navigator.mediaDevices.getUserMedia(l);s.audio&&(tt.userMediaPromiseMap.set("audioinput",u),u.catch(()=>tt.userMediaPromiseMap.delete("audioinput"))),s.video&&(tt.userMediaPromiseMap.set("videoinput",u),u.catch(()=>tt.userMediaPromiseMap.delete("videoinput")));try{const d=yield u;return yield Promise.all(d.getTracks().map(h=>P(this,void 0,void 0,function*(){const m=h.kind==="audio";let g=m?c.audio:c.video;(typeof g=="boolean"||!g)&&(g={});let f;const y=m?l.audio:l.video;typeof y!="boolean"&&(f=y);const v=h.getSettings().deviceId;f!=null&&f.deviceId&&Hn(f.deviceId)!==v?f.deviceId=v:f||(f={deviceId:v});const C=PC(h,f,e);return C.kind===M.Kind.Video?C.source=M.Source.Camera:C.kind===M.Kind.Audio&&(C.source=M.Source.Microphone),C.mediaStream=d,en(C)&&i?yield C.setProcessor(i):vr(C)&&r&&(yield C.setProcessor(r)),C})))}catch(d){if(!n)throw d;return la(Object.assign(Object.assign({},t),{audio:o,video:a}),e)}})}function JC(t){return P(this,void 0,void 0,function*(){return(yield la({audio:!1,video:!0}))[0]})}function XC(t){return P(this,void 0,void 0,function*(){return(yield la({audio:!0,video:!1}))[0]})}var Un;(function(t){t.Excellent="excellent",t.Good="good",t.Poor="poor",t.Lost="lost",t.Unknown="unknown"})(Un||(Un={}));function QC(t){switch(t){case Hr.EXCELLENT:return Un.Excellent;case Hr.GOOD:return Un.Good;case Hr.POOR:return Un.Poor;case Hr.LOST:return Un.Lost;default:return Un.Unknown}}class j0 extends ln.EventEmitter{get logContext(){var e,n;return Object.assign({},(n=(e=this.loggerOptions)===null||e===void 0?void 0:e.loggerContextCb)===null||n===void 0?void 0:n.call(e))}get isEncrypted(){return this.trackPublications.size>0&&Array.from(this.trackPublications.values()).every(e=>e.isEncrypted)}get isAgent(){var e;return((e=this.permissions)===null||e===void 0?void 0:e.agent)||this.kind===bi.AGENT}get isActive(){var e;return((e=this.participantInfo)===null||e===void 0?void 0:e.state)===Xi.ACTIVE}get kind(){return this._kind}get attributes(){return Object.freeze(Object.assign({},this._attributes))}constructor(e,n,i,r,s,o){let a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:bi.STANDARD;var c;super(),this.audioLevel=0,this.isSpeaking=!1,this._connectionQuality=Un.Unknown,this.log=me,this.log=Cn((c=o==null?void 0:o.loggerName)!==null&&c!==void 0?c:zt.Participant),this.loggerOptions=o,this.setMaxListeners(100),this.sid=e,this.identity=n,this.name=i,this.metadata=r,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this._kind=a,this._attributes=s??{}}getTrackPublications(){return Array.from(this.trackPublications.values())}getTrackPublication(e){for(const[,n]of this.trackPublications)if(n.source===e)return n}getTrackPublicationByName(e){for(const[,n]of this.trackPublications)if(n.trackName===e)return n}waitUntilActive(){return this.isActive?Promise.resolve():this.activeFuture?this.activeFuture.promise:(this.activeFuture=new Wi,this.once(U.Active,()=>{var e,n;(n=(e=this.activeFuture)===null||e===void 0?void 0:e.resolve)===null||n===void 0||n.call(e),this.activeFuture=void 0}),this.activeFuture.promise)}get connectionQuality(){return this._connectionQuality}get isCameraEnabled(){var e;const n=this.getTrackPublication(M.Source.Camera);return!(!((e=n==null?void 0:n.isMuted)!==null&&e!==void 0)||e)}get isMicrophoneEnabled(){var e;const n=this.getTrackPublication(M.Source.Microphone);return!(!((e=n==null?void 0:n.isMuted)!==null&&e!==void 0)||e)}get isScreenShareEnabled(){return!!this.getTrackPublication(M.Source.ScreenShare)}get isLocal(){return!1}get joinedAt(){return this.participantInfo?new Date(Number.parseInt(this.participantInfo.joinedAt.toString())*1e3):new Date}updateInfo(e){var n;return this.participantInfo&&this.participantInfo.sid===e.sid&&this.participantInfo.version>e.version?!1:(this.identity=e.identity,this.sid=e.sid,this._setName(e.name),this._setMetadata(e.metadata),this._setAttributes(e.attributes),e.state===Xi.ACTIVE&&((n=this.participantInfo)===null||n===void 0?void 0:n.state)!==Xi.ACTIVE&&this.emit(U.Active),e.permission&&this.setPermissions(e.permission),this.participantInfo=e,!0)}_setMetadata(e){const n=this.metadata!==e,i=this.metadata;this.metadata=e,n&&this.emit(U.ParticipantMetadataChanged,i)}_setName(e){const n=this.name!==e;this.name=e,n&&this.emit(U.ParticipantNameChanged,e)}_setAttributes(e){const n=tC(this.attributes,e);this._attributes=e,Object.keys(n).length>0&&this.emit(U.AttributesChanged,n)}setPermissions(e){var n,i,r,s,o,a;const c=this.permissions,l=e.canPublish!==((n=this.permissions)===null||n===void 0?void 0:n.canPublish)||e.canSubscribe!==((i=this.permissions)===null||i===void 0?void 0:i.canSubscribe)||e.canPublishData!==((r=this.permissions)===null||r===void 0?void 0:r.canPublishData)||e.hidden!==((s=this.permissions)===null||s===void 0?void 0:s.hidden)||e.recorder!==((o=this.permissions)===null||o===void 0?void 0:o.recorder)||e.canPublishSources.length!==this.permissions.canPublishSources.length||e.canPublishSources.some((u,d)=>{var h;return u!==((h=this.permissions)===null||h===void 0?void 0:h.canPublishSources[d])})||e.canSubscribeMetrics!==((a=this.permissions)===null||a===void 0?void 0:a.canSubscribeMetrics);return this.permissions=e,l&&this.emit(U.ParticipantPermissionsChanged,c),l}setIsSpeaking(e){e!==this.isSpeaking&&(this.isSpeaking=e,e&&(this.lastSpokeAt=new Date),this.emit(U.IsSpeakingChanged,e))}setConnectionQuality(e){const n=this._connectionQuality;this._connectionQuality=QC(e),n!==this._connectionQuality&&this.emit(U.ConnectionQualityChanged,this._connectionQuality)}setDisconnected(){var e,n;this.activeFuture&&((n=(e=this.activeFuture).reject)===null||n===void 0||n.call(e,new Error("Participant disconnected")),this.activeFuture=void 0)}setAudioContext(e){this.audioContext=e,this.audioTrackPublications.forEach(n=>en(n.track)&&n.track.setAudioContext(e))}addTrackPublication(e){e.on(G.Muted,()=>{this.emit(U.TrackMuted,e)}),e.on(G.Unmuted,()=>{this.emit(U.TrackUnmuted,e)});const n=e;switch(n.track&&(n.track.sid=e.trackSid),this.trackPublications.set(e.trackSid,e),e.kind){case M.Kind.Audio:this.audioTrackPublications.set(e.trackSid,e);break;case M.Kind.Video:this.videoTrackPublications.set(e.trackSid,e);break}}}function ew(t){var e,n,i;if(!t.participantSid&&!t.participantIdentity)throw new Error("Invalid track permission, must provide at least one of participantIdentity and participantSid");return new Fg({participantIdentity:(e=t.participantIdentity)!==null&&e!==void 0?e:"",participantSid:(n=t.participantSid)!==null&&n!==void 0?n:"",allTracks:(i=t.allowAll)!==null&&i!==void 0?i:!1,trackSids:t.allowedTrackSids||[]})}const oh=15e3;class tw extends j0{constructor(e,n,i,r,s){super(e,n,void 0,void 0,void 0,{loggerName:r.loggerName,loggerContextCb:()=>this.engine.logContext}),this.pendingPublishing=new Set,this.pendingPublishPromises=new Map,this.participantTrackPermissions=[],this.allParticipantsAllowedToSubscribe=!0,this.encryptionType=yt.NONE,this.enabledPublishVideoCodecs=[],this.pendingAcks=new Map,this.pendingResponses=new Map,this.handleReconnecting=()=>{this.reconnectFuture||(this.reconnectFuture=new Wi)},this.handleReconnected=()=>{var o,a;(a=(o=this.reconnectFuture)===null||o===void 0?void 0:o.resolve)===null||a===void 0||a.call(o),this.reconnectFuture=void 0,this.updateTrackSubscriptionPermissions()},this.handleDisconnected=()=>{var o,a,c,l,u,d;this.reconnectFuture&&(this.reconnectFuture.promise.catch(h=>this.log.warn(h.message,this.logContext)),(a=(o=this.reconnectFuture)===null||o===void 0?void 0:o.reject)===null||a===void 0||a.call(o,"Got disconnected during reconnection attempt"),this.reconnectFuture=void 0),this.signalConnectedFuture&&((l=(c=this.signalConnectedFuture).reject)===null||l===void 0||l.call(c,"Got disconnected without signal connected"),this.signalConnectedFuture=void 0),(d=(u=this.activeAgentFuture)===null||u===void 0?void 0:u.reject)===null||d===void 0||d.call(u,"Got disconnected without active agent present"),this.activeAgentFuture=void 0,this.firstActiveAgent=void 0},this.handleSignalConnected=o=>{var a,c;o.participant&&this.updateInfo(o.participant),this.signalConnectedFuture||(this.signalConnectedFuture=new Wi),(c=(a=this.signalConnectedFuture).resolve)===null||c===void 0||c.call(a)},this.handleSignalRequestResponse=o=>{const{requestId:a,reason:c,message:l}=o,u=this.pendingSignalRequests.get(a);u&&(c!==Cu.OK&&u.reject(new Df(l,c)),this.pendingSignalRequests.delete(a))},this.handleDataPacket=o=>{switch(o.value.case){case"rpcResponse":let a=o.value.value,c=null,l=null;a.value.case==="payload"?c=a.value.value:a.value.case==="error"&&(l=je.fromProto(a.value.value)),this.handleIncomingRpcResponse(a.requestId,c,l);break;case"rpcAck":let u=o.value.value;this.handleIncomingRpcAck(u.requestId);break}},this.updateTrackSubscriptionPermissions=()=>{this.log.debug("updating track subscription permissions",Object.assign(Object.assign({},this.logContext),{allParticipantsAllowed:this.allParticipantsAllowedToSubscribe,participantTrackPermissions:this.participantTrackPermissions})),this.engine.client.sendUpdateSubscriptionPermissions(this.allParticipantsAllowedToSubscribe,this.participantTrackPermissions.map(o=>ew(o)))},this.onTrackUnmuted=o=>{this.onTrackMuted(o,o.isUpstreamPaused)},this.onTrackMuted=(o,a)=>{if(a===void 0&&(a=!0),!o.sid){this.log.error("could not update mute status for unpublished track",Object.assign(Object.assign({},this.logContext),he(o)));return}this.engine.updateMuteStatus(o.sid,a)},this.onTrackUpstreamPaused=o=>{this.log.debug("upstream paused",Object.assign(Object.assign({},this.logContext),he(o))),this.onTrackMuted(o,!0)},this.onTrackUpstreamResumed=o=>{this.log.debug("upstream resumed",Object.assign(Object.assign({},this.logContext),he(o))),this.onTrackMuted(o,o.isMuted)},this.onTrackFeatureUpdate=o=>{const a=this.audioTrackPublications.get(o.sid);if(!a){this.log.warn("Could not update local audio track settings, missing publication for track ".concat(o.sid),this.logContext);return}this.engine.client.sendUpdateLocalAudioTrack(a.trackSid,a.getTrackFeatures())},this.handleSubscribedQualityUpdate=o=>P(this,void 0,void 0,function*(){var a,c,l,u,d;if(!(!((d=this.roomOptions)===null||d===void 0)&&d.dynacast))return;const h=this.videoTrackPublications.get(o.trackSid);if(!h){this.log.warn("received subscribed quality update for unknown track",Object.assign(Object.assign({},this.logContext),{trackSid:o.trackSid}));return}if(!h.videoTrack)return;const m=yield h.videoTrack.setPublishingCodecs(o.subscribedCodecs);try{for(var g=!0,f=bn(m),y;y=yield f.next(),a=y.done,!a;g=!0){u=y.value,g=!1;const v=u;_k(v)&&(this.log.debug("publish ".concat(v," for ").concat(h.videoTrack.sid),Object.assign(Object.assign({},this.logContext),he(h))),yield this.publishAdditionalCodecForTrack(h.videoTrack,v,h.options))}}catch(v){c={error:v}}finally{try{!g&&!a&&(l=f.return)&&(yield l.call(f))}finally{if(c)throw c.error}}}),this.handleLocalTrackUnpublished=o=>{const a=this.trackPublications.get(o.trackSid);if(!a){this.log.warn("received unpublished event for unknown track",Object.assign(Object.assign({},this.logContext),{trackSid:o.trackSid}));return}this.unpublishTrack(a.track)},this.handleTrackEnded=o=>P(this,void 0,void 0,function*(){if(o.source===M.Source.ScreenShare||o.source===M.Source.ScreenShareAudio)this.log.debug("unpublishing local track due to TrackEnded",Object.assign(Object.assign({},this.logContext),he(o))),this.unpublishTrack(o);else if(o.isUserProvided)yield o.mute();else if(mn(o)||Nn(o))try{if(ht())try{const a=yield navigator==null?void 0:navigator.permissions.query({name:o.source===M.Source.Camera?"camera":"microphone"});if(a&&a.state==="denied")throw this.log.warn("user has revoked access to ".concat(o.source),Object.assign(Object.assign({},this.logContext),he(o))),a.onchange=()=>{a.state!=="denied"&&(o.isMuted||o.restartTrack(),a.onchange=null)},new Error("GetUserMedia Permission denied")}catch{}o.isMuted||(this.log.debug("track ended, attempting to use a different device",Object.assign(Object.assign({},this.logContext),he(o))),mn(o)?yield o.restartTrack({deviceId:"default"}):yield o.restartTrack())}catch{this.log.warn("could not restart track, muting instead",Object.assign(Object.assign({},this.logContext),he(o))),yield o.mute()}}),this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.trackPublications=new Map,this.engine=i,this.roomOptions=r,this.setupEngine(i),this.activeDeviceMap=new Map([["audioinput","default"],["videoinput","default"],["audiooutput","default"]]),this.pendingSignalRequests=new Map,this.rpcHandlers=s}get lastCameraError(){return this.cameraError}get lastMicrophoneError(){return this.microphoneError}get isE2EEEnabled(){return this.encryptionType!==yt.NONE}getTrackPublication(e){const n=super.getTrackPublication(e);if(n)return n}getTrackPublicationByName(e){const n=super.getTrackPublicationByName(e);if(n)return n}setupEngine(e){this.engine=e,this.engine.on(X.RemoteMute,(n,i)=>{const r=this.trackPublications.get(n);!r||!r.track||(i?r.mute():r.unmute())}),this.engine.on(X.Connected,this.handleReconnected).on(X.SignalConnected,this.handleSignalConnected).on(X.SignalRestarted,this.handleReconnected).on(X.SignalResumed,this.handleReconnected).on(X.Restarting,this.handleReconnecting).on(X.Resuming,this.handleReconnecting).on(X.LocalTrackUnpublished,this.handleLocalTrackUnpublished).on(X.SubscribedQualityUpdate,this.handleSubscribedQualityUpdate).on(X.Disconnected,this.handleDisconnected).on(X.SignalRequestResponse,this.handleSignalRequestResponse).on(X.DataPacketReceived,this.handleDataPacket),this.signalConnectedFuture=void 0}setMetadata(e){return P(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({metadata:e})})}setName(e){return P(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({name:e})})}setAttributes(e){return P(this,void 0,void 0,function*(){yield this.requestMetadataUpdate({attributes:e})})}requestMetadataUpdate(e){return P(this,arguments,void 0,function(n){var i=this;let{metadata:r,name:s,attributes:o}=n;return function*(){return new Promise((a,c)=>P(i,void 0,void 0,function*(){var l,u;try{let d=!1;const h=yield this.engine.client.sendUpdateLocalMetadata((l=r??this.metadata)!==null&&l!==void 0?l:"",(u=s??this.name)!==null&&u!==void 0?u:"",o),m=performance.now();for(this.pendingSignalRequests.set(h,{resolve:a,reject:g=>{c(g),d=!0},values:{name:s,metadata:r,attributes:o}});performance.now()-m<5e3&&!d;){if((!s||this.name===s)&&(!r||this.metadata===r)&&(!o||Object.entries(o).every(g=>{let[f,y]=g;return this.attributes[f]===y||y===""&&!this.attributes[f]}))){this.pendingSignalRequests.delete(h),a();return}yield mt(50)}c(new Df("Request to update local metadata timed out","TimeoutError"))}catch(d){d instanceof Error&&c(d)}}))}()})}setCameraEnabled(e,n,i){return this.setTrackEnabled(M.Source.Camera,e,n,i)}setMicrophoneEnabled(e,n,i){return this.setTrackEnabled(M.Source.Microphone,e,n,i)}setScreenShareEnabled(e,n,i){return this.setTrackEnabled(M.Source.ScreenShare,e,n,i)}setPermissions(e){const n=this.permissions,i=super.setPermissions(e);return i&&n&&this.emit(U.ParticipantPermissionsChanged,n),i}setE2EEEnabled(e){return P(this,void 0,void 0,function*(){this.encryptionType=e?yt.GCM:yt.NONE,yield this.republishAllTracks(void 0,!1)})}setTrackEnabled(e,n,i,r){return P(this,void 0,void 0,function*(){var s,o;this.log.debug("setTrackEnabled",Object.assign(Object.assign({},this.logContext),{source:e,enabled:n})),this.republishPromise&&(yield this.republishPromise);let a=this.getTrackPublication(e);if(n)if(a)yield a.unmute();else{let c;if(this.pendingPublishing.has(e)){const l=yield this.waitForPendingPublicationOfSource(e);return l||this.log.info("waiting for pending publication promise timed out",Object.assign(Object.assign({},this.logContext),{source:e})),yield l==null?void 0:l.unmute(),l}this.pendingPublishing.add(e);try{switch(e){case M.Source.Camera:c=yield this.createTracks({video:(s=i)!==null&&s!==void 0?s:!0});break;case M.Source.Microphone:c=yield this.createTracks({audio:(o=i)!==null&&o!==void 0?o:!0});break;case M.Source.ScreenShare:c=yield this.createScreenTracks(Object.assign({},i));break;default:throw new Sn(e)}}catch(l){throw c==null||c.forEach(u=>{u.stop()}),l instanceof Error&&this.emit(U.MediaDevicesError,l,pl(e)),this.pendingPublishing.delete(e),l}for(const l of c)e===M.Source.Microphone&&en(l)&&(r!=null&&r.preConnectBuffer)&&(this.log.info("starting preconnect buffer for microphone",Object.assign({},this.logContext)),l.startPreConnectBuffer());try{const l=[];for(const d of c)this.log.info("publishing track",Object.assign(Object.assign({},this.logContext),he(d))),l.push(this.publishTrack(d,r));[a]=yield Promise.all(l)}catch(l){throw c==null||c.forEach(u=>{u.stop()}),l}finally{this.pendingPublishing.delete(e)}}else if(!(a!=null&&a.track)&&this.pendingPublishing.has(e)&&(a=yield this.waitForPendingPublicationOfSource(e),a||this.log.info("waiting for pending publication promise timed out",Object.assign(Object.assign({},this.logContext),{source:e}))),a&&a.track)if(e===M.Source.ScreenShare){a=yield this.unpublishTrack(a.track);const c=this.getTrackPublication(M.Source.ScreenShareAudio);c&&c.track&&this.unpublishTrack(c.track)}else yield a.mute();return a})}enableCameraAndMicrophone(){return P(this,void 0,void 0,function*(){if(!(this.pendingPublishing.has(M.Source.Camera)||this.pendingPublishing.has(M.Source.Microphone))){this.pendingPublishing.add(M.Source.Camera),this.pendingPublishing.add(M.Source.Microphone);try{const e=yield this.createTracks({audio:!0,video:!0});yield Promise.all(e.map(n=>this.publishTrack(n)))}finally{this.pendingPublishing.delete(M.Source.Camera),this.pendingPublishing.delete(M.Source.Microphone)}}})}createTracks(e){return P(this,void 0,void 0,function*(){var n,i;e??(e={});const r=x0(e,(n=this.roomOptions)===null||n===void 0?void 0:n.audioCaptureDefaults,(i=this.roomOptions)===null||i===void 0?void 0:i.videoCaptureDefaults);try{return(yield la(r,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext})).map(a=>(en(a)&&(this.microphoneError=void 0,a.setAudioContext(this.audioContext),a.source=M.Source.Microphone,this.emit(U.AudioStreamAcquired)),vr(a)&&(this.cameraError=void 0,a.source=M.Source.Camera),a))}catch(s){throw s instanceof Error&&(e.audio&&(this.microphoneError=s),e.video&&(this.cameraError=s)),s}})}createScreenTracks(e){return P(this,void 0,void 0,function*(){if(e===void 0&&(e={}),navigator.mediaDevices.getDisplayMedia===void 0)throw new xu("getDisplayMedia not supported");e.resolution===void 0&&!Vk()&&(e.resolution=Eu.h1080fps30.resolution);const n=Xk(e),i=yield navigator.mediaDevices.getDisplayMedia(n),r=i.getVideoTracks();if(r.length===0)throw new Sn("no video track found");const s=new Vo(r[0],void 0,!1,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});s.source=M.Source.ScreenShare,e.contentHint&&(s.mediaStreamTrack.contentHint=e.contentHint);const o=[s];if(i.getAudioTracks().length>0){this.emit(U.AudioStreamAcquired);const a=new Lo(i.getAudioTracks()[0],void 0,!1,this.audioContext,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});a.source=M.Source.ScreenShareAudio,o.push(a)}return o})}publishTrack(e,n){return P(this,void 0,void 0,function*(){return this.publishOrRepublishTrack(e,n)})}publishOrRepublishTrack(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;return function*(){var a,c,l,u;mn(i)&&i.setAudioContext(s.audioContext),yield(a=s.reconnectFuture)===null||a===void 0?void 0:a.promise,s.republishPromise&&!o&&(yield s.republishPromise),nr(i)&&s.pendingPublishPromises.has(i)&&(yield s.pendingPublishPromises.get(i));let d;if(i instanceof MediaStreamTrack)d=i.getConstraints();else{d=i.constraints;let v;switch(i.source){case M.Source.Microphone:v="audioinput";break;case M.Source.Camera:v="videoinput"}v&&s.activeDeviceMap.has(v)&&(d=Object.assign(Object.assign({},d),{deviceId:s.activeDeviceMap.get(v)}))}if(i instanceof MediaStreamTrack)switch(i.kind){case"audio":i=new Lo(i,d,!0,s.audioContext,{loggerName:s.roomOptions.loggerName,loggerContextCb:()=>s.logContext});break;case"video":i=new Vo(i,d,!0,{loggerName:s.roomOptions.loggerName,loggerContextCb:()=>s.logContext});break;default:throw new Sn("unsupported MediaStreamTrack kind ".concat(i.kind))}else i.updateLoggerOptions({loggerName:s.roomOptions.loggerName,loggerContextCb:()=>s.logContext});let h;if(s.trackPublications.forEach(v=>{v.track&&v.track===i&&(h=v)}),h)return s.log.warn("track has already been published, skipping",Object.assign(Object.assign({},s.logContext),he(h))),h;const m="channelCount"in i.mediaStreamTrack.getSettings()&&i.mediaStreamTrack.getSettings().channelCount===2||i.mediaStreamTrack.getConstraints().channelCount===2,g=(c=r==null?void 0:r.forceStereo)!==null&&c!==void 0?c:m;g&&(r||(r={}),r.dtx===void 0&&s.log.info("Opus DTX will be disabled for stereo tracks by default. Enable them explicitly to make it work.",Object.assign(Object.assign({},s.logContext),he(i))),r.red===void 0&&s.log.info("Opus RED will be disabled for stereo tracks by default. Enable them explicitly to make it work."),(l=r.dtx)!==null&&l!==void 0||(r.dtx=!1),(u=r.red)!==null&&u!==void 0||(r.red=!1));const f=Object.assign(Object.assign({},s.roomOptions.publishDefaults),r);!jk()&&s.roomOptions.e2ee&&(s.log.info("End-to-end encryption is set up, simulcast publishing will be disabled on Safari versions and iOS browsers running iOS < v17.2",Object.assign({},s.logContext)),f.simulcast=!1),f.source&&(i.source=f.source);const y=new Promise((v,C)=>P(s,void 0,void 0,function*(){try{if(this.engine.client.currentState!==Ae.CONNECTED){this.log.debug("deferring track publication until signal is connected",Object.assign(Object.assign({},this.logContext),{track:he(i)}));const T=setTimeout(()=>{C(new Of("publishing rejected as engine not connected within timeout",408))},15e3);yield this.waitUntilEngineConnected(),clearTimeout(T);const k=yield this.publish(i,f,g);v(k)}else try{const T=yield this.publish(i,f,g);v(T)}catch(T){C(T)}}catch(T){C(T)}}));s.pendingPublishPromises.set(i,y);try{return yield y}catch(v){throw v}finally{s.pendingPublishPromises.delete(i)}}()})}waitUntilEngineConnected(){return this.signalConnectedFuture||(this.signalConnectedFuture=new Wi),this.signalConnectedFuture.promise}hasPermissionsToPublish(e){if(!this.permissions)return this.log.warn("no permissions present for publishing track",Object.assign(Object.assign({},this.logContext),he(e))),!1;const{canPublish:n,canPublishSources:i}=this.permissions;return n&&(i.length===0||i.map(r=>nC(r)).includes(e.source))?!0:(this.log.warn("insufficient permissions to publish",Object.assign(Object.assign({},this.logContext),he(e))),!1)}publish(e,n,i){return P(this,void 0,void 0,function*(){var r,s,o,a,c,l,u,d,h,m;if(!this.hasPermissionsToPublish(e))throw new Of("failed to publish track, insufficient permissions",403);Array.from(this.trackPublications.values()).find(_=>nr(e)&&_.source===e.source)&&e.source!==M.Source.Unknown&&this.log.info("publishing a second track with the same source: ".concat(e.source),Object.assign(Object.assign({},this.logContext),he(e))),n.stopMicTrackOnMute&&en(e)&&(e.stopOnMute=!0),e.source===M.Source.ScreenShare&&ur()&&(n.simulcast=!1),n.videoCodec==="av1"&&!Dk()&&(n.videoCodec=void 0),n.videoCodec==="vp9"&&!Nk()&&(n.videoCodec=void 0),n.videoCodec===void 0&&(n.videoCodec=ml),this.enabledPublishVideoCodecs.length>0&&(this.enabledPublishVideoCodecs.some(_=>n.videoCodec===yo(_.mime))||(n.videoCodec=yo(this.enabledPublishVideoCodecs[0].mime)));const f=n.videoCodec;e.on(G.Muted,this.onTrackMuted),e.on(G.Unmuted,this.onTrackUnmuted),e.on(G.Ended,this.handleTrackEnded),e.on(G.UpstreamPaused,this.onTrackUpstreamPaused),e.on(G.UpstreamResumed,this.onTrackUpstreamResumed),e.on(G.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate);const y=[],v=!(!((r=n.dtx)!==null&&r!==void 0)||r),C=e.getSourceTrackSettings();C.autoGainControl&&y.push(et.TF_AUTO_GAIN_CONTROL),C.echoCancellation&&y.push(et.TF_ECHO_CANCELLATION),C.noiseSuppression&&y.push(et.TF_NOISE_SUPPRESSION),C.channelCount&&C.channelCount>1&&y.push(et.TF_STEREO),v&&y.push(et.TF_NO_DTX),mn(e)&&e.hasPreConnectBuffer&&y.push(et.TF_PRECONNECT_BUFFER);const T=new Zc({cid:e.mediaStreamTrack.id,name:n.name,type:M.kindToProto(e.kind),muted:e.isMuted,source:M.sourceToProto(e.source),disableDtx:v,encryption:this.encryptionType,stereo:i,disableRed:this.isE2EEEnabled||!(!((s=n.red)!==null&&s!==void 0)||s),stream:n==null?void 0:n.stream,backupCodecPolicy:n==null?void 0:n.backupCodecPolicy,audioFeatures:y});let k;if(e.kind===M.Kind.Video){let _={width:0,height:0};try{_=yield e.waitForDimensions()}catch{const A=(a=(o=this.roomOptions.videoCaptureDefaults)===null||o===void 0?void 0:o.resolution)!==null&&a!==void 0?a:ss.h720.resolution;_={width:A.width,height:A.height},this.log.error("could not determine track dimensions, using defaults",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{dims:_}))}T.width=_.width,T.height=_.height,Nn(e)&&(kn(f)&&(e.source===M.Source.ScreenShare&&(n.scalabilityMode="L1T3","contentHint"in e.mediaStreamTrack&&(e.mediaStreamTrack.contentHint="motion",this.log.info("forcing contentHint to motion for screenshare with SVC codecs",Object.assign(Object.assign({},this.logContext),he(e))))),n.scalabilityMode=(c=n.scalabilityMode)!==null&&c!==void 0?c:"L3T3_KEY"),T.simulcastCodecs=[new Kc({codec:f,cid:e.mediaStreamTrack.id})],n.backupCodec===!0&&(n.backupCodec={codec:ml}),n.backupCodec&&f!==n.backupCodec.codec&&T.encryption===yt.NONE&&(this.roomOptions.dynacast||(this.roomOptions.dynacast=!0),T.simulcastCodecs.push(new Kc({codec:n.backupCodec.codec,cid:""})))),k=vl(e.source===M.Source.ScreenShare,T.width,T.height,n),T.layers=ih(T.width,T.height,k,kn(n.videoCodec))}else e.kind===M.Kind.Audio&&(k=[{maxBitrate:(l=n.audioPreset)===null||l===void 0?void 0:l.maxBitrate,priority:(d=(u=n.audioPreset)===null||u===void 0?void 0:u.priority)!==null&&d!==void 0?d:"high",networkPriority:(m=(h=n.audioPreset)===null||h===void 0?void 0:h.priority)!==null&&m!==void 0?m:"high"}]);if(!this.engine||this.engine.isClosed)throw new Je("cannot publish track when not connected");const b=()=>P(this,void 0,void 0,function*(){var _,S,A;if(!this.engine.pcManager)throw new Je("pcManager is not ready");if(e.sender=yield this.engine.createSender(e,n,k),Nn(e)&&((_=n.degradationPreference)!==null&&_!==void 0||(n.degradationPreference=VC(e)),e.setDegradationPreference(n.degradationPreference)),k)if(ur()&&e.kind===M.Kind.Audio){let O;for(const z of this.engine.pcManager.publisher.getTransceivers())if(z.sender===e.sender){O=z;break}O&&this.engine.pcManager.publisher.setTrackCodecBitrate({transceiver:O,codec:"opus",maxbr:!((S=k[0])===null||S===void 0)&&S.maxBitrate?k[0].maxBitrate/1e3:0})}else e.codec&&kn(e.codec)&&(!((A=k[0])===null||A===void 0)&&A.maxBitrate)&&this.engine.pcManager.publisher.setTrackCodecBitrate({cid:T.cid,codec:e.codec,maxbr:k[0].maxBitrate/1e3});yield this.engine.negotiate()});let w;const x=new Promise((_,S)=>P(this,void 0,void 0,function*(){var A;try{w=yield this.engine.addTrack(T),_(w)}catch(O){e.sender&&(!((A=this.engine.pcManager)===null||A===void 0)&&A.publisher)&&(this.engine.pcManager.publisher.removeTrack(e.sender),yield this.engine.negotiate().catch(z=>{this.log.error("failed to negotiate after removing track due to failed add track request",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{error:z}))})),S(O)}}));if(this.enabledPublishVideoCodecs.length>0)w=(yield Promise.all([x,b()]))[0];else{w=yield x;let _;if(w.codecs.forEach(S=>{_===void 0&&(_=S.mimeType)}),_&&e.kind===M.Kind.Video){const S=yo(_);S!==f&&(this.log.debug("falling back to server selected codec",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{codec:S})),n.videoCodec=S,k=vl(e.source===M.Source.ScreenShare,T.width,T.height,n))}yield b()}const R=new Sl(e.kind,w,e,{loggerName:this.roomOptions.loggerName,loggerContextCb:()=>this.logContext});if(R.options=n,e.sid=w.sid,this.log.debug("publishing ".concat(e.kind," with encodings"),Object.assign(Object.assign({},this.logContext),{encodings:k,trackInfo:w})),Nn(e)?e.startMonitor(this.engine.client):mn(e)&&e.startMonitor(),this.addTrackPublication(R),this.emit(U.LocalTrackPublished,R),mn(e)&&w.audioFeatures.includes(et.TF_PRECONNECT_BUFFER)){const _=e.getPreConnectBuffer();this.on(U.LocalTrackSubscribed,S=>{if(S.trackSid===w.sid){if(!e.hasPreConnectBuffer){this.log.warn("subscribe event came to late, buffer already closed",this.logContext);return}this.log.debug("finished recording preconnect buffer",Object.assign(Object.assign({},this.logContext),he(e))),e.stopPreConnectBuffer()}}),_&&new Promise((A,O)=>P(this,void 0,void 0,function*(){var z,K,se,Q,Z,F;try{this.log.debug("waiting for agent",Object.assign(Object.assign({},this.logContext),he(e)));const W=setTimeout(()=>{O(new Error("agent not active within 10 seconds"))},1e4),Y=yield this.waitUntilActiveAgentPresent();clearTimeout(W),this.log.debug("sending preconnect buffer",Object.assign(Object.assign({},this.logContext),he(e)));const J=yield this.streamBytes({name:"preconnect-buffer",mimeType:"audio/opus",topic:"lk.agent.pre-connect-audio-buffer",destinationIdentities:[Y.identity],attributes:{trackId:R.trackSid,sampleRate:String((Z=C.sampleRate)!==null&&Z!==void 0?Z:"48000"),channels:String((F=C.channelCount)!==null&&F!==void 0?F:"1")}});try{for(var ce=!0,I=bn(_),j;j=yield I.next(),z=j.done,!z;ce=!0){Q=j.value,ce=!1;const re=Q;yield J.write(re)}}catch(re){K={error:re}}finally{try{!ce&&!z&&(se=I.return)&&(yield se.call(I))}finally{if(K)throw K.error}}yield J.close(),A()}catch(W){O(W)}})).then(()=>{this.log.debug("preconnect buffer sent successfully",Object.assign(Object.assign({},this.logContext),he(e)))}).catch(A=>{this.log.error("error sending preconnect buffer",Object.assign(Object.assign(Object.assign({},this.logContext),he(e)),{error:A}))})}return R})}get isLocal(){return!0}publishAdditionalCodecForTrack(e,n,i){return P(this,void 0,void 0,function*(){var r;if(this.encryptionType!==yt.NONE)return;let s;if(this.trackPublications.forEach(m=>{m.track&&m.track===e&&(s=m)}),!s)throw new Sn("track is not published");if(!Nn(e))throw new Sn("track is not a video track");const o=Object.assign(Object.assign({},(r=this.roomOptions)===null||r===void 0?void 0:r.publishDefaults),i),a=DC(e,n,o);if(!a){this.log.info("backup codec has been disabled, ignoring request to add additional codec for track",Object.assign(Object.assign({},this.logContext),he(e)));return}const c=e.addSimulcastTrack(n,a);if(!c)return;const l=new Zc({cid:c.mediaStreamTrack.id,type:M.kindToProto(e.kind),muted:e.isMuted,source:M.sourceToProto(e.source),sid:e.sid,simulcastCodecs:[{codec:o.videoCodec,cid:c.mediaStreamTrack.id}]});if(l.layers=ih(l.width,l.height,a),!this.engine||this.engine.isClosed)throw new Je("cannot publish track when not connected");const u=()=>P(this,void 0,void 0,function*(){yield this.engine.createSimulcastSender(e,c,o,a),yield this.engine.negotiate()}),h=(yield Promise.all([this.engine.addTrack(l),u()]))[0];this.log.debug("published ".concat(n," for track ").concat(e.sid),Object.assign(Object.assign({},this.logContext),{encodings:a,trackInfo:h}))})}unpublishTrack(e,n){return P(this,void 0,void 0,function*(){var i,r;if(nr(e)){const l=this.pendingPublishPromises.get(e);l&&(this.log.info("awaiting publish promise before attempting to unpublish",Object.assign(Object.assign({},this.logContext),he(e))),yield l)}const s=this.getPublicationForTrack(e),o=s?he(s):void 0;if(this.log.debug("unpublishing track",Object.assign(Object.assign({},this.logContext),o)),!s||!s.track){this.log.warn("track was not unpublished because no publication was found",Object.assign(Object.assign({},this.logContext),o));return}e=s.track,e.off(G.Muted,this.onTrackMuted),e.off(G.Unmuted,this.onTrackUnmuted),e.off(G.Ended,this.handleTrackEnded),e.off(G.UpstreamPaused,this.onTrackUpstreamPaused),e.off(G.UpstreamResumed,this.onTrackUpstreamResumed),e.off(G.AudioTrackFeatureUpdate,this.onTrackFeatureUpdate),n===void 0&&(n=(r=(i=this.roomOptions)===null||i===void 0?void 0:i.stopLocalTrackOnUnpublish)!==null&&r!==void 0?r:!0),n?e.stop():e.stopMonitor();let a=!1;const c=e.sender;if(e.sender=void 0,this.engine.pcManager&&this.engine.pcManager.currentState<Ve.FAILED&&c)try{for(const l of this.engine.pcManager.publisher.getTransceivers())l.sender===c&&(l.direction="inactive",a=!0);if(this.engine.removeTrack(c)&&(a=!0),Nn(e)){for(const[,l]of e.simulcastCodecs)l.sender&&(this.engine.removeTrack(l.sender)&&(a=!0),l.sender=void 0);e.simulcastCodecs.clear()}}catch(l){this.log.warn("failed to unpublish track",Object.assign(Object.assign(Object.assign({},this.logContext),o),{error:l}))}switch(this.trackPublications.delete(s.trackSid),s.kind){case M.Kind.Audio:this.audioTrackPublications.delete(s.trackSid);break;case M.Kind.Video:this.videoTrackPublications.delete(s.trackSid);break}return this.emit(U.LocalTrackUnpublished,s),s.setTrack(void 0),a&&(yield this.engine.negotiate()),s})}unpublishTracks(e){return P(this,void 0,void 0,function*(){return(yield Promise.all(e.map(i=>this.unpublishTrack(i)))).filter(i=>!!i)})}republishAllTracks(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return function*(){i.republishPromise&&(yield i.republishPromise),i.republishPromise=new Promise((s,o)=>P(i,void 0,void 0,function*(){try{const a=[];this.trackPublications.forEach(c=>{c.track&&(n&&(c.options=Object.assign(Object.assign({},c.options),n)),a.push(c))}),yield Promise.all(a.map(c=>P(this,void 0,void 0,function*(){const l=c.track;yield this.unpublishTrack(l,!1),r&&!l.isMuted&&l.source!==M.Source.ScreenShare&&l.source!==M.Source.ScreenShareAudio&&(mn(l)||Nn(l))&&!l.isUserProvided&&(this.log.debug("restarting existing track",Object.assign(Object.assign({},this.logContext),{track:c.trackSid})),yield l.restartTrack()),yield this.publishOrRepublishTrack(l,c.options,!0)}))),s()}catch(a){o(a)}finally{this.republishPromise=void 0}})),yield i.republishPromise}()})}publishData(e){return P(this,arguments,void 0,function(n){var i=this;let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return function*(){const s=r.reliable?fe.RELIABLE:fe.LOSSY,o=r.destinationIdentities,a=r.topic,c=new ut({kind:s,value:{case:"user",value:new bg({participantIdentity:i.identity,payload:n,destinationIdentities:o,topic:a})}});yield i.engine.sendDataPacket(c,s)}()})}publishDtmf(e,n){return P(this,void 0,void 0,function*(){const i=new ut({kind:fe.RELIABLE,value:{case:"sipDtmf",value:new Sg({code:e,digit:n})}});yield this.engine.sendDataPacket(i,fe.RELIABLE)})}sendChatMessage(e,n){return P(this,void 0,void 0,function*(){const i={id:crypto.randomUUID(),message:e,timestamp:Date.now(),attachedFiles:n==null?void 0:n.attachments},r=new ut({value:{case:"chatMessage",value:new $c(Object.assign(Object.assign({},i),{timestamp:_e.parse(i.timestamp)}))}});return yield this.engine.sendDataPacket(r,fe.RELIABLE),this.emit(U.ChatMessage,i),i})}editChatMessage(e,n){return P(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},n),{message:e,editTimestamp:Date.now()}),r=new ut({value:{case:"chatMessage",value:new $c(Object.assign(Object.assign({},i),{timestamp:_e.parse(i.timestamp),editTimestamp:_e.parse(i.editTimestamp)}))}});return yield this.engine.sendDataPacket(r,fe.RELIABLE),this.emit(U.ChatMessage,i),i})}sendText(e,n){return P(this,void 0,void 0,function*(){var i;const r=crypto.randomUUID(),o=new TextEncoder().encode(e).byteLength,a=(i=n==null?void 0:n.attachments)===null||i===void 0?void 0:i.map(()=>crypto.randomUUID()),c=new Array(a?a.length+1:1).fill(0),l=(d,h)=>{var m;c[h]=d;const g=c.reduce((f,y)=>f+y,0);(m=n==null?void 0:n.onProgress)===null||m===void 0||m.call(n,g)},u=yield this.streamText({streamId:r,totalSize:o,destinationIdentities:n==null?void 0:n.destinationIdentities,topic:n==null?void 0:n.topic,attachedStreamIds:a,attributes:n==null?void 0:n.attributes});return yield u.write(e),l(1,0),yield u.close(),n!=null&&n.attachments&&a&&(yield Promise.all(n.attachments.map((d,h)=>P(this,void 0,void 0,function*(){return this._sendFile(a[h],d,{topic:n.topic,mimeType:d.type,onProgress:m=>{l(m,h+1)}})})))),u.info})}streamText(e){return P(this,void 0,void 0,function*(){var n,i;const r=(n=e==null?void 0:e.streamId)!==null&&n!==void 0?n:crypto.randomUUID(),s={id:r,mimeType:"text/plain",timestamp:Date.now(),topic:(i=e==null?void 0:e.topic)!==null&&i!==void 0?i:"",size:e==null?void 0:e.totalSize,attributes:e==null?void 0:e.attributes},o=new zc({streamId:r,mimeType:s.mimeType,topic:s.topic,timestamp:ui(s.timestamp),totalLength:ui(e==null?void 0:e.totalSize),attributes:s.attributes,contentHeader:{case:"textHeader",value:new _g({version:e==null?void 0:e.version,attachedStreamIds:e==null?void 0:e.attachedStreamIds,replyToStreamId:e==null?void 0:e.replyToStreamId,operationType:(e==null?void 0:e.type)==="update"?Hc.UPDATE:Hc.CREATE})}}),a=e==null?void 0:e.destinationIdentities,c=new ut({destinationIdentities:a,value:{case:"streamHeader",value:o}});yield this.engine.sendDataPacket(c,fe.RELIABLE);let l=0;const u=this,d=new WritableStream({write(g){return P(this,void 0,void 0,function*(){for(const f of Yk(g,oh)){yield u.engine.waitForBufferStatusLow(fe.RELIABLE);const y=new Wc({content:f,streamId:r,chunkIndex:ui(l)}),v=new ut({destinationIdentities:a,value:{case:"streamChunk",value:y}});yield u.engine.sendDataPacket(v,fe.RELIABLE),l+=1}})},close(){return P(this,void 0,void 0,function*(){const g=new qc({streamId:r}),f=new ut({destinationIdentities:a,value:{case:"streamTrailer",value:g}});yield u.engine.sendDataPacket(f,fe.RELIABLE)})},abort(g){console.log("Sink error:",g)}});let h=()=>P(this,void 0,void 0,function*(){yield m.close()});u.engine.once(X.Closing,h);const m=new GC(d,s,()=>this.engine.off(X.Closing,h));return m})}sendFile(e,n){return P(this,void 0,void 0,function*(){const i=crypto.randomUUID();return yield this._sendFile(i,e,n),{id:i}})}_sendFile(e,n,i){return P(this,void 0,void 0,function*(){var r;const s=yield this.streamBytes({streamId:e,totalSize:n.size,name:n.name,mimeType:(r=i==null?void 0:i.mimeType)!==null&&r!==void 0?r:n.type,topic:i==null?void 0:i.topic,destinationIdentities:i==null?void 0:i.destinationIdentities}),o=n.stream().getReader();for(;;){const{done:a,value:c}=yield o.read();if(a)break;yield s.write(c)}return yield s.close(),s.info})}streamBytes(e){return P(this,void 0,void 0,function*(){var n,i,r,s,o;const a=(n=e==null?void 0:e.streamId)!==null&&n!==void 0?n:crypto.randomUUID(),c=e==null?void 0:e.destinationIdentities,l={id:a,mimeType:(i=e==null?void 0:e.mimeType)!==null&&i!==void 0?i:"application/octet-stream",topic:(r=e==null?void 0:e.topic)!==null&&r!==void 0?r:"",timestamp:Date.now(),attributes:e==null?void 0:e.attributes,size:e==null?void 0:e.totalSize,name:(s=e==null?void 0:e.name)!==null&&s!==void 0?s:"unknown"},u=new zc({totalLength:ui((o=l.size)!==null&&o!==void 0?o:0),mimeType:l.mimeType,streamId:a,topic:l.topic,timestamp:ui(Date.now()),attributes:l.attributes,contentHeader:{case:"byteHeader",value:new Mg({name:l.name})}}),d=new ut({destinationIdentities:c,value:{case:"streamHeader",value:u}});yield this.engine.sendDataPacket(d,fe.RELIABLE);let h=0;const m=new ft,g=this.engine,f=this.log,y=new WritableStream({write(C){return P(this,void 0,void 0,function*(){const T=yield m.lock();let k=0;try{for(;k<C.byteLength;){const b=C.slice(k,k+oh);yield g.waitForBufferStatusLow(fe.RELIABLE);const w=new ut({destinationIdentities:c,value:{case:"streamChunk",value:new Wc({content:b,streamId:a,chunkIndex:ui(h)})}});yield g.sendDataPacket(w,fe.RELIABLE),h+=1,k+=b.byteLength}}finally{T()}})},close(){return P(this,void 0,void 0,function*(){const C=new qc({streamId:a}),T=new ut({destinationIdentities:c,value:{case:"streamTrailer",value:C}});yield g.sendDataPacket(T,fe.RELIABLE)})},abort(C){f.error("Sink error:",C)}});return new KC(y,l)})}performRpc(e){return P(this,arguments,void 0,function(n){var i=this;let{destinationIdentity:r,method:s,payload:o,responseTimeout:a=1e4}=n;return function*(){return new Promise((l,u)=>P(i,void 0,void 0,function*(){var d,h,m,g;if(Ou(o)>_0){u(je.builtIn("REQUEST_PAYLOAD_TOO_LARGE"));return}if(!((h=(d=this.engine.latestJoinResponse)===null||d===void 0?void 0:d.serverInfo)===null||h===void 0)&&h.version&&qn((g=(m=this.engine.latestJoinResponse)===null||m===void 0?void 0:m.serverInfo)===null||g===void 0?void 0:g.version,"1.8.0")<0){u(je.builtIn("UNSUPPORTED_SERVER"));return}const f=crypto.randomUUID();yield this.publishRpcRequest(r,f,s,o,a-2e3);const y=setTimeout(()=>{this.pendingAcks.delete(f),u(je.builtIn("CONNECTION_TIMEOUT")),this.pendingResponses.delete(f),clearTimeout(v)},2e3);this.pendingAcks.set(f,{resolve:()=>{clearTimeout(y)},participantIdentity:r});const v=setTimeout(()=>{this.pendingResponses.delete(f),u(je.builtIn("RESPONSE_TIMEOUT"))},a);this.pendingResponses.set(f,{resolve:(C,T)=>{clearTimeout(v),this.pendingAcks.has(f)&&(console.warn("RPC response received before ack",f),this.pendingAcks.delete(f),clearTimeout(y)),T?u(T):l(C??"")},participantIdentity:r})}))}()})}registerRpcMethod(e,n){this.rpcHandlers.has(e)&&this.log.warn("you're overriding the RPC handler for method ".concat(e,", in the future this will throw an error")),this.rpcHandlers.set(e,n)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}setTrackSubscriptionPermissions(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];this.participantTrackPermissions=n,this.allParticipantsAllowedToSubscribe=e,this.engine.client.isDisconnected||this.updateTrackSubscriptionPermissions()}handleIncomingRpcAck(e){const n=this.pendingAcks.get(e);n?(n.resolve(),this.pendingAcks.delete(e)):console.error("Ack received for unexpected RPC request",e)}handleIncomingRpcResponse(e,n,i){const r=this.pendingResponses.get(e);r?(r.resolve(n,i),this.pendingResponses.delete(e)):console.error("Response received for unexpected RPC request",e)}publishRpcRequest(e,n,i,r,s){return P(this,void 0,void 0,function*(){const o=new ut({destinationIdentities:[e],kind:fe.RELIABLE,value:{case:"rpcRequest",value:new Tg({id:n,method:i,payload:r,responseTimeoutMs:s,version:1})}});yield this.engine.sendDataPacket(o,fe.RELIABLE)})}handleParticipantDisconnected(e){for(const[n,{participantIdentity:i}]of this.pendingAcks)i===e&&this.pendingAcks.delete(n);for(const[n,{participantIdentity:i,resolve:r}]of this.pendingResponses)i===e&&(r(null,je.builtIn("RECIPIENT_DISCONNECTED")),this.pendingResponses.delete(n))}setEnabledPublishCodecs(e){this.enabledPublishVideoCodecs=e.filter(n=>n.mime.split("/")[0].toLowerCase()==="video")}updateInfo(e){return super.updateInfo(e)?(e.tracks.forEach(n=>{var i,r;const s=this.trackPublications.get(n.sid);if(s){const o=s.isMuted||((r=(i=s.track)===null||i===void 0?void 0:i.isUpstreamPaused)!==null&&r!==void 0?r:!1);o!==n.muted&&(this.log.debug("updating server mute state after reconcile",Object.assign(Object.assign(Object.assign({},this.logContext),he(s)),{mutedOnServer:o})),this.engine.client.sendMuteTrack(n.sid,o))}}),!0):!1}setActiveAgent(e){var n,i,r,s;this.firstActiveAgent=e,e&&!this.firstActiveAgent&&(this.firstActiveAgent=e),e?(i=(n=this.activeAgentFuture)===null||n===void 0?void 0:n.resolve)===null||i===void 0||i.call(n,e):(s=(r=this.activeAgentFuture)===null||r===void 0?void 0:r.reject)===null||s===void 0||s.call(r,"Agent disconnected"),this.activeAgentFuture=void 0}waitUntilActiveAgentPresent(){return this.firstActiveAgent?Promise.resolve(this.firstActiveAgent):(this.activeAgentFuture||(this.activeAgentFuture=new Wi),this.activeAgentFuture.promise)}getPublicationForTrack(e){let n;return this.trackPublications.forEach(i=>{const r=i.track;r&&(e instanceof MediaStreamTrack?(mn(r)||Nn(r))&&r.mediaStreamTrack===e&&(n=i):e===r&&(n=i))}),n}waitForPendingPublicationOfSource(e){return P(this,void 0,void 0,function*(){const i=Date.now();for(;Date.now()<i+1e4;){const r=Array.from(this.pendingPublishPromises.entries()).find(s=>{let[o]=s;return o.source===e});if(r)return r[1];yield mt(20)}})}}class Fo extends gn{constructor(e,n,i,r){super(e,n.sid,n.name,r),this.track=void 0,this.allowed=!0,this.disabled=!1,this.currentVideoQuality=At.HIGH,this.handleEnded=s=>{this.setTrack(void 0),this.emit(G.Ended,s)},this.handleVisibilityChange=s=>{this.log.debug("adaptivestream video visibility ".concat(this.trackSid,", visible=").concat(s),this.logContext),this.disabled=!s,this.emitTrackUpdate()},this.handleVideoDimensionsChange=s=>{this.log.debug("adaptivestream video dimensions ".concat(s.width,"x").concat(s.height),this.logContext),this.videoDimensions=s,this.emitTrackUpdate()},this.subscribed=i,this.updateInfo(n)}setSubscribed(e){const n=this.subscriptionStatus,i=this.permissionStatus;this.subscribed=e,e&&(this.allowed=!0);const r=new sa({trackSids:[this.trackSid],subscribe:this.subscribed,participantTracks:[new xg({participantSid:"",trackSids:[this.trackSid]})]});this.emit(G.UpdateSubscription,r),this.emitSubscriptionUpdateIfChanged(n),this.emitPermissionUpdateIfChanged(i)}get subscriptionStatus(){return this.subscribed===!1?gn.SubscriptionStatus.Unsubscribed:super.isSubscribed?gn.SubscriptionStatus.Subscribed:gn.SubscriptionStatus.Desired}get permissionStatus(){return this.allowed?gn.PermissionStatus.Allowed:gn.PermissionStatus.NotAllowed}get isSubscribed(){return this.subscribed===!1?!1:super.isSubscribed}get isDesired(){return this.subscribed!==!1}get isEnabled(){return!this.disabled}get isLocal(){return!1}setEnabled(e){!this.isManualOperationAllowed()||this.disabled===!e||(this.disabled=!e,this.emitTrackUpdate())}setVideoQuality(e){!this.isManualOperationAllowed()||this.currentVideoQuality===e||(this.currentVideoQuality=e,this.videoDimensions=void 0,this.emitTrackUpdate())}setVideoDimensions(e){var n,i;this.isManualOperationAllowed()&&(((n=this.videoDimensions)===null||n===void 0?void 0:n.width)===e.width&&((i=this.videoDimensions)===null||i===void 0?void 0:i.height)===e.height||(Wa(this.track)&&(this.videoDimensions=e),this.currentVideoQuality=void 0,this.emitTrackUpdate()))}setVideoFPS(e){this.isManualOperationAllowed()&&Wa(this.track)&&this.fps!==e&&(this.fps=e,this.emitTrackUpdate())}get videoQuality(){return this.currentVideoQuality}setTrack(e){const n=this.subscriptionStatus,i=this.permissionStatus,r=this.track;r!==e&&(r&&(r.off(G.VideoDimensionsChanged,this.handleVideoDimensionsChange),r.off(G.VisibilityChanged,this.handleVisibilityChange),r.off(G.Ended,this.handleEnded),r.detach(),r.stopMonitor(),this.emit(G.Unsubscribed,r)),super.setTrack(e),e&&(e.sid=this.trackSid,e.on(G.VideoDimensionsChanged,this.handleVideoDimensionsChange),e.on(G.VisibilityChanged,this.handleVisibilityChange),e.on(G.Ended,this.handleEnded),this.emit(G.Subscribed,e)),this.emitPermissionUpdateIfChanged(i),this.emitSubscriptionUpdateIfChanged(n))}setAllowed(e){const n=this.subscriptionStatus,i=this.permissionStatus;this.allowed=e,this.emitPermissionUpdateIfChanged(i),this.emitSubscriptionUpdateIfChanged(n)}setSubscriptionError(e){this.emit(G.SubscriptionFailed,e)}updateInfo(e){super.updateInfo(e);const n=this.metadataMuted;this.metadataMuted=e.muted,this.track?this.track.setMuted(e.muted):n!==e.muted&&this.emit(e.muted?G.Muted:G.Unmuted)}emitSubscriptionUpdateIfChanged(e){const n=this.subscriptionStatus;e!==n&&this.emit(G.SubscriptionStatusChanged,n,e)}emitPermissionUpdateIfChanged(e){this.permissionStatus!==e&&this.emit(G.SubscriptionPermissionChanged,this.permissionStatus,e)}isManualOperationAllowed(){return this.kind===M.Kind.Video&&this.isAdaptiveStream?(this.log.warn("adaptive stream is enabled, cannot change video track settings",this.logContext),!1):this.isDesired?!0:(this.log.warn("cannot update track settings when not subscribed",this.logContext),!1)}get isAdaptiveStream(){return Wa(this.track)&&this.track.isAdaptiveStream}emitTrackUpdate(){const e=new Og({trackSids:[this.trackSid],disabled:this.disabled,fps:this.fps});this.videoDimensions?(e.width=Math.ceil(this.videoDimensions.width),e.height=Math.ceil(this.videoDimensions.height)):this.currentVideoQuality!==void 0?e.quality=this.currentVideoQuality:e.quality=At.HIGH,this.emit(G.UpdateSettings,e)}}class jo extends j0{static fromParticipantInfo(e,n,i){return new jo(e,n.sid,n.identity,n.name,n.metadata,n.attributes,i,n.kind)}get logContext(){return Object.assign(Object.assign({},super.logContext),{rpID:this.sid,remoteParticipant:this.identity})}constructor(e,n,i,r,s,o,a){let c=arguments.length>7&&arguments[7]!==void 0?arguments[7]:bi.STANDARD;super(n,i||"",r,s,o,a,c),this.signalClient=e,this.trackPublications=new Map,this.audioTrackPublications=new Map,this.videoTrackPublications=new Map,this.volumeMap=new Map}addTrackPublication(e){super.addTrackPublication(e),e.on(G.UpdateSettings,n=>{this.log.debug("send update settings",Object.assign(Object.assign({},this.logContext),he(e))),this.signalClient.sendUpdateTrackSettings(n)}),e.on(G.UpdateSubscription,n=>{n.participantTracks.forEach(i=>{i.participantSid=this.sid}),this.signalClient.sendUpdateSubscription(n)}),e.on(G.SubscriptionPermissionChanged,n=>{this.emit(U.TrackSubscriptionPermissionChanged,e,n)}),e.on(G.SubscriptionStatusChanged,n=>{this.emit(U.TrackSubscriptionStatusChanged,e,n)}),e.on(G.Subscribed,n=>{this.emit(U.TrackSubscribed,n,e)}),e.on(G.Unsubscribed,n=>{this.emit(U.TrackUnsubscribed,n,e)}),e.on(G.SubscriptionFailed,n=>{this.emit(U.TrackSubscriptionFailed,e.trackSid,n)})}getTrackPublication(e){const n=super.getTrackPublication(e);if(n)return n}getTrackPublicationByName(e){const n=super.getTrackPublicationByName(e);if(n)return n}setVolume(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:M.Source.Microphone;this.volumeMap.set(n,e);const i=this.getTrackPublication(n);i&&i.track&&i.track.setVolume(e)}getVolume(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:M.Source.Microphone;const n=this.getTrackPublication(e);return n&&n.track?n.track.getVolume():this.volumeMap.get(e)}addSubscribedMediaTrack(e,n,i,r,s,o){let a=this.getTrackPublicationBySid(n);if(a||n.startsWith("TR")||this.trackPublications.forEach(u=>{!a&&e.kind===u.kind.toString()&&(a=u)}),!a){if(o===0){this.log.error("could not find published track",Object.assign(Object.assign({},this.logContext),{trackSid:n})),this.emit(U.TrackSubscriptionFailed,n);return}o===void 0&&(o=20),setTimeout(()=>{this.addSubscribedMediaTrack(e,n,i,r,s,o-1)},150);return}if(e.readyState==="ended"){this.log.error("unable to subscribe because MediaStreamTrack is ended. Do not call MediaStreamTrack.stop()",Object.assign(Object.assign({},this.logContext),he(a))),this.emit(U.TrackSubscriptionFailed,n);return}const c=e.kind==="video";let l;return c?l=new ZC(e,n,r,s):l=new F0(e,n,r,this.audioContext,this.audioOutput),l.source=a.source,l.isMuted=a.isMuted,l.setMediaStream(i),l.start(),a.setTrack(l),this.volumeMap.has(a.source)&&fl(l)&&en(l)&&l.setVolume(this.volumeMap.get(a.source)),a}get hasMetadata(){return!!this.participantInfo}getTrackPublicationBySid(e){return this.trackPublications.get(e)}updateInfo(e){if(!super.updateInfo(e))return!1;const n=new Map,i=new Map;return e.tracks.forEach(r=>{var s,o;let a=this.getTrackPublicationBySid(r.sid);if(a)a.updateInfo(r);else{const c=M.kindFromProto(r.type);if(!c)return;a=new Fo(c,r,(s=this.signalClient.connectOptions)===null||s===void 0?void 0:s.autoSubscribe,{loggerContextCb:()=>this.logContext,loggerName:(o=this.loggerOptions)===null||o===void 0?void 0:o.loggerName}),a.updateInfo(r),i.set(r.sid,a);const l=Array.from(this.trackPublications.values()).find(u=>u.source===(a==null?void 0:a.source));l&&a.source!==M.Source.Unknown&&this.log.debug("received a second track publication for ".concat(this.identity," with the same source: ").concat(a.source),Object.assign(Object.assign({},this.logContext),{oldTrack:he(l),newTrack:he(a)})),this.addTrackPublication(a)}n.set(r.sid,a)}),this.trackPublications.forEach(r=>{n.has(r.trackSid)||(this.log.trace("detected removed track on remote participant, unpublishing",Object.assign(Object.assign({},this.logContext),he(r))),this.unpublishTrack(r.trackSid,!0))}),i.forEach(r=>{this.emit(U.TrackPublished,r)}),!0}unpublishTrack(e,n){const i=this.trackPublications.get(e);if(!i)return;const{track:r}=i;switch(r&&(r.stop(),i.setTrack(void 0)),this.trackPublications.delete(e),i.kind){case M.Kind.Audio:this.audioTrackPublications.delete(e);break;case M.Kind.Video:this.videoTrackPublications.delete(e);break}n&&this.emit(U.TrackUnpublished,i)}setAudioOutput(e){return P(this,void 0,void 0,function*(){this.audioOutput=e;const n=[];this.audioTrackPublications.forEach(i=>{var r;en(i.track)&&fl(i.track)&&n.push(i.track.setSinkId((r=e.deviceId)!==null&&r!==void 0?r:"default"))}),yield Promise.all(n)})}emit(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return this.log.trace("participant event",Object.assign(Object.assign({},this.logContext),{event:e,args:i})),super.emit(e,...i)}}var pe;(function(t){t.Disconnected="disconnected",t.Connecting="connecting",t.Connected="connected",t.Reconnecting="reconnecting",t.SignalReconnecting="signalReconnecting"})(pe||(pe={}));const nw=4*1e3;class wn extends ln.EventEmitter{constructor(e){var n,i,r,s;if(super(),n=this,this.state=pe.Disconnected,this.activeSpeakers=[],this.isE2EEEnabled=!1,this.audioEnabled=!0,this.isVideoPlaybackBlocked=!1,this.log=me,this.bufferedEvents=[],this.isResuming=!1,this.byteStreamControllers=new Map,this.textStreamControllers=new Map,this.byteStreamHandlers=new Map,this.textStreamHandlers=new Map,this.rpcHandlers=new Map,this.connect=(o,a,c)=>P(this,void 0,void 0,function*(){var l;if(!Lk())throw on()?Error("WebRTC isn't detected, have you called registerGlobals?"):Error("LiveKit doesn't seem to be supported on this browser. Try to update your browser and make sure no browser extensions are disabling webRTC.");const u=yield this.disconnectLock.lock();if(this.state===pe.Connected)return this.log.info("already connected to room ".concat(this.name),this.logContext),u(),Promise.resolve();if(this.connectFuture)return u(),this.connectFuture.promise;this.setAndEmitConnectionState(pe.Connecting),((l=this.regionUrlProvider)===null||l===void 0?void 0:l.getServerUrl().toString())!==o&&(this.regionUrl=void 0,this.regionUrlProvider=void 0),ul(new URL(o))&&(this.regionUrlProvider===void 0?this.regionUrlProvider=new yl(o,a):this.regionUrlProvider.updateToken(a),this.regionUrlProvider.fetchRegionSettings().then(m=>{var g;(g=this.regionUrlProvider)===null||g===void 0||g.setServerReportedRegions(m)}).catch(m=>{this.log.warn("could not fetch region settings",Object.assign(Object.assign({},this.logContext),{error:m}))}));const d=(m,g,f)=>P(this,void 0,void 0,function*(){var y,v;this.abortController&&this.abortController.abort();const C=new AbortController;this.abortController=C,u==null||u();try{yield this.attemptConnection(f??o,a,c,C),this.abortController=void 0,m()}catch(T){if(this.regionUrlProvider&&T instanceof Re&&T.reason!==ge.Cancelled&&T.reason!==ge.NotAllowed){let k=null;try{k=yield this.regionUrlProvider.getNextBestRegionUrl((y=this.abortController)===null||y===void 0?void 0:y.signal)}catch(b){if(b instanceof Re&&(b.status===401||b.reason===ge.Cancelled)){this.handleDisconnect(this.options.stopLocalTrackOnUnpublish),g(b);return}}k&&!(!((v=this.abortController)===null||v===void 0)&&v.signal.aborted)?(this.log.info("Initial connection failed with ConnectionError: ".concat(T.message,". Retrying with another region: ").concat(k),this.logContext),this.recreateEngine(),yield d(m,g,k)):(this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,Hf(T)),g(T))}else{let k=$t.UNKNOWN_REASON;T instanceof Re&&(k=Hf(T)),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,k),g(T)}}}),h=this.regionUrl;return this.regionUrl=void 0,this.connectFuture=new Wi((m,g)=>{d(m,g,h)},()=>{this.clearConnectionFutures()}),this.connectFuture.promise}),this.connectSignal=(o,a,c,l,u,d)=>P(this,void 0,void 0,function*(){var h,m,g;const f=yield c.join(o,a,{autoSubscribe:l.autoSubscribe,adaptiveStream:typeof u.adaptiveStream=="object"?!0:u.adaptiveStream,maxRetries:l.maxRetries,e2eeEnabled:!!this.e2eeManager,websocketTimeout:l.websocketTimeout},d.signal);let y=f.serverInfo;if(y||(y={version:f.serverVersion,region:f.serverRegion}),this.serverInfo=y,this.log.debug("connected to Livekit Server ".concat(Object.entries(y).map(v=>{let[C,T]=v;return"".concat(C,": ").concat(T)}).join(", ")),{room:(h=f.room)===null||h===void 0?void 0:h.name,roomSid:(m=f.room)===null||m===void 0?void 0:m.sid,identity:(g=f.participant)===null||g===void 0?void 0:g.identity}),!y.version)throw new Tk("unknown server version");return y.version==="0.15.1"&&this.options.dynacast&&(this.log.debug("disabling dynacast due to server version",this.logContext),u.dynacast=!1),f}),this.applyJoinResponse=o=>{const a=o.participant;if(this.localParticipant.sid=a.sid,this.localParticipant.identity=a.identity,this.localParticipant.setEnabledPublishCodecs(o.enabledPublishCodecs),this.options.e2ee&&this.e2eeManager)try{this.e2eeManager.setSifTrailer(o.sifTrailer)}catch(c){this.log.error(c instanceof Error?c.message:"Could not set SifTrailer",Object.assign(Object.assign({},this.logContext),{error:c}))}this.handleParticipantUpdates([a,...o.otherParticipants]),o.room&&this.handleRoomUpdate(o.room)},this.attemptConnection=(o,a,c,l)=>P(this,void 0,void 0,function*(){var u,d;this.state===pe.Reconnecting||this.isResuming||!((u=this.engine)===null||u===void 0)&&u.pendingReconnect?(this.log.info("Reconnection attempt replaced by new connection attempt",this.logContext),this.recreateEngine()):this.maybeCreateEngine(),!((d=this.regionUrlProvider)===null||d===void 0)&&d.isCloud()&&this.engine.setRegionUrlProvider(this.regionUrlProvider),this.acquireAudioContext(),this.connOptions=Object.assign(Object.assign({},Mu),c),this.connOptions.rtcConfig&&(this.engine.rtcConfig=this.connOptions.rtcConfig),this.connOptions.peerConnectionTimeout&&(this.engine.peerConnectionTimeout=this.connOptions.peerConnectionTimeout);try{const h=yield this.connectSignal(o,a,this.engine,this.connOptions,this.options,l);this.applyJoinResponse(h),this.setupLocalParticipantEvents(),this.emit(D.SignalConnected)}catch(h){yield this.engine.close(),this.recreateEngine();const m=new Re("could not establish signal connection",ge.ServerUnreachable);throw h instanceof Error&&(m.message="".concat(m.message,": ").concat(h.message)),h instanceof Re&&(m.reason=h.reason,m.status=h.status),this.log.debug("error trying to establish signal connection",Object.assign(Object.assign({},this.logContext),{error:h})),m}if(l.signal.aborted)throw yield this.engine.close(),this.recreateEngine(),new Re("Connection attempt aborted",ge.Cancelled);try{yield this.engine.waitForPCInitialConnection(this.connOptions.peerConnectionTimeout,l)}catch(h){throw yield this.engine.close(),this.recreateEngine(),h}ht()&&this.options.disconnectOnPageLeave&&(window.addEventListener("pagehide",this.onPageLeave),window.addEventListener("beforeunload",this.onPageLeave)),ht()&&document.addEventListener("freeze",this.onPageLeave),this.setAndEmitConnectionState(pe.Connected),this.emit(D.Connected),this.registerConnectionReconcile()}),this.disconnect=function(){for(var o=arguments.length,a=new Array(o),c=0;c<o;c++)a[c]=arguments[c];return P(n,[...a],void 0,function(){var l=this;let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return function*(){var d,h,m,g;const f=yield l.disconnectLock.lock();try{if(l.state===pe.Disconnected){l.log.debug("already disconnected",l.logContext);return}l.log.info("disconnect from room",Object.assign({},l.logContext)),(l.state===pe.Connecting||l.state===pe.Reconnecting||l.isResuming)&&(l.log.warn("abort connection attempt",l.logContext),(d=l.abortController)===null||d===void 0||d.abort(),(m=(h=l.connectFuture)===null||h===void 0?void 0:h.reject)===null||m===void 0||m.call(h,new Re("Client initiated disconnect",ge.Cancelled)),l.connectFuture=void 0),!((g=l.engine)===null||g===void 0)&&g.client.isDisconnected||(yield l.engine.client.sendLeave()),l.engine&&(yield l.engine.close()),l.handleDisconnect(u,$t.CLIENT_INITIATED),l.engine=void 0}finally{f()}}()})},this.onPageLeave=()=>P(this,void 0,void 0,function*(){this.log.info("Page leave detected, disconnecting",this.logContext),yield this.disconnect()}),this.startAudio=()=>P(this,void 0,void 0,function*(){const o=[],a=Tt();if(a&&a.os==="iOS"){const c="livekit-dummy-audio-el";let l=document.getElementById(c);if(!l){l=document.createElement("audio"),l.id=c,l.autoplay=!0,l.hidden=!0;const u=za();u.enabled=!0;const d=new MediaStream([u]);l.srcObject=d,document.addEventListener("visibilitychange",()=>{l&&(l.srcObject=document.hidden?null:d,document.hidden||(this.log.debug("page visible again, triggering startAudio to resume playback and update playback status",this.logContext),this.startAudio()))}),document.body.append(l),this.once(D.Disconnected,()=>{l==null||l.remove(),l=null})}o.push(l)}this.remoteParticipants.forEach(c=>{c.audioTrackPublications.forEach(l=>{l.track&&l.track.attachedElements.forEach(u=>{o.push(u)})})});try{yield Promise.all([this.acquireAudioContext(),...o.map(c=>(c.muted=!1,c.play()))]),this.handleAudioPlaybackStarted()}catch(c){throw this.handleAudioPlaybackFailed(c),c}}),this.startVideo=()=>P(this,void 0,void 0,function*(){const o=[];for(const a of this.remoteParticipants.values())a.videoTrackPublications.forEach(c=>{var l;(l=c.track)===null||l===void 0||l.attachedElements.forEach(u=>{o.includes(u)||o.push(u)})});yield Promise.all(o.map(a=>a.play())).then(()=>{this.handleVideoPlaybackStarted()}).catch(a=>{a.name==="NotAllowedError"?this.handleVideoPlaybackFailed():this.log.warn("Resuming video playback failed, make sure you call `startVideo` directly in a user gesture handler",this.logContext)})}),this.handleRestarting=()=>{this.clearConnectionReconcile(),this.isResuming=!1;for(const o of this.remoteParticipants.values())this.handleParticipantDisconnected(o.identity,o);this.setAndEmitConnectionState(pe.Reconnecting)&&this.emit(D.Reconnecting)},this.handleSignalRestarted=o=>P(this,void 0,void 0,function*(){this.log.debug("signal reconnected to server, region ".concat(o.serverRegion),Object.assign(Object.assign({},this.logContext),{region:o.serverRegion})),this.bufferedEvents=[],this.applyJoinResponse(o);try{yield this.localParticipant.republishAllTracks(void 0,!0)}catch(a){this.log.error("error trying to re-publish tracks after reconnection",Object.assign(Object.assign({},this.logContext),{error:a}))}try{yield this.engine.waitForRestarted(),this.log.debug("fully reconnected to server",Object.assign(Object.assign({},this.logContext),{region:o.serverRegion}))}catch{return}this.setAndEmitConnectionState(pe.Connected),this.emit(D.Reconnected),this.registerConnectionReconcile(),this.emitBufferedEvents()}),this.handleParticipantUpdates=o=>{o.forEach(a=>{var c;if(a.identity===this.localParticipant.identity){this.localParticipant.updateInfo(a);return}a.identity===""&&(a.identity=(c=this.sidToIdentity.get(a.sid))!==null&&c!==void 0?c:"");let l=this.remoteParticipants.get(a.identity);a.state===Xi.DISCONNECTED?this.handleParticipantDisconnected(a.identity,l):l=this.getOrCreateParticipant(a.identity,a)})},this.handleActiveSpeakersUpdate=o=>{const a=[],c={};o.forEach(l=>{if(c[l.sid]=!0,l.sid===this.localParticipant.sid)this.localParticipant.audioLevel=l.level,this.localParticipant.setIsSpeaking(!0),a.push(this.localParticipant);else{const u=this.getRemoteParticipantBySid(l.sid);u&&(u.audioLevel=l.level,u.setIsSpeaking(!0),a.push(u))}}),c[this.localParticipant.sid]||(this.localParticipant.audioLevel=0,this.localParticipant.setIsSpeaking(!1)),this.remoteParticipants.forEach(l=>{c[l.sid]||(l.audioLevel=0,l.setIsSpeaking(!1))}),this.activeSpeakers=a,this.emitWhenConnected(D.ActiveSpeakersChanged,a)},this.handleSpeakersChanged=o=>{const a=new Map;this.activeSpeakers.forEach(l=>{const u=this.remoteParticipants.get(l.identity);u&&u.sid!==l.sid||a.set(l.sid,l)}),o.forEach(l=>{let u=this.getRemoteParticipantBySid(l.sid);l.sid===this.localParticipant.sid&&(u=this.localParticipant),u&&(u.audioLevel=l.level,u.setIsSpeaking(l.active),l.active?a.set(l.sid,u):a.delete(l.sid))});const c=Array.from(a.values());c.sort((l,u)=>u.audioLevel-l.audioLevel),this.activeSpeakers=c,this.emitWhenConnected(D.ActiveSpeakersChanged,c)},this.handleStreamStateUpdate=o=>{o.streamStates.forEach(a=>{const c=this.getRemoteParticipantBySid(a.participantSid);if(!c)return;const l=c.getTrackPublicationBySid(a.trackSid);if(!l||!l.track)return;const u=M.streamStateFromProto(a.state);u!==l.track.streamState&&(l.track.streamState=u,c.emit(U.TrackStreamStateChanged,l,l.track.streamState),this.emitWhenConnected(D.TrackStreamStateChanged,l,l.track.streamState,c))})},this.handleSubscriptionPermissionUpdate=o=>{const a=this.getRemoteParticipantBySid(o.participantSid);if(!a)return;const c=a.getTrackPublicationBySid(o.trackSid);c&&c.setAllowed(o.allowed)},this.handleSubscriptionError=o=>{const a=Array.from(this.remoteParticipants.values()).find(l=>l.trackPublications.has(o.trackSid));if(!a)return;const c=a.getTrackPublicationBySid(o.trackSid);c&&c.setSubscriptionError(o.err)},this.handleDataPacket=o=>{const a=this.remoteParticipants.get(o.participantIdentity);if(o.value.case==="user")this.handleUserPacket(a,o.value.value,o.kind);else if(o.value.case==="transcription")this.handleTranscription(a,o.value.value);else if(o.value.case==="sipDtmf")this.handleSipDtmf(a,o.value.value);else if(o.value.case==="chatMessage")this.handleChatMessage(a,o.value.value);else if(o.value.case==="metrics")this.handleMetrics(o.value.value,a);else if(o.value.case==="streamHeader")this.handleStreamHeader(o.value.value,o.participantIdentity);else if(o.value.case==="streamChunk")this.handleStreamChunk(o.value.value);else if(o.value.case==="streamTrailer")this.handleStreamTrailer(o.value.value);else if(o.value.case==="rpcRequest"){const c=o.value.value;this.handleIncomingRpcRequest(o.participantIdentity,c.id,c.method,c.payload,c.responseTimeoutMs,c.version)}},this.handleUserPacket=(o,a,c)=>{this.emit(D.DataReceived,a.payload,o,c,a.topic),o==null||o.emit(U.DataReceived,a.payload,c)},this.handleSipDtmf=(o,a)=>{this.emit(D.SipDTMFReceived,a,o),o==null||o.emit(U.SipDTMFReceived,a)},this.bufferedSegments=new Map,this.handleTranscription=(o,a)=>{const c=a.transcribedParticipantIdentity===this.localParticipant.identity?this.localParticipant:this.getParticipantByIdentity(a.transcribedParticipantIdentity),l=c==null?void 0:c.trackPublications.get(a.trackId),u=qk(a,this.transcriptionReceivedTimes);l==null||l.emit(G.TranscriptionReceived,u),c==null||c.emit(U.TranscriptionReceived,u,l),this.emit(D.TranscriptionReceived,u,c,l)},this.handleChatMessage=(o,a)=>{const c=Gk(a);this.emit(D.ChatMessage,c,o)},this.handleMetrics=(o,a)=>{this.emit(D.MetricsReceived,o,a)},this.handleAudioPlaybackStarted=()=>{this.canPlaybackAudio||(this.audioEnabled=!0,this.emit(D.AudioPlaybackStatusChanged,!0))},this.handleAudioPlaybackFailed=o=>{this.log.warn("could not playback audio",Object.assign(Object.assign({},this.logContext),{error:o})),this.canPlaybackAudio&&(this.audioEnabled=!1,this.emit(D.AudioPlaybackStatusChanged,!1))},this.handleVideoPlaybackStarted=()=>{this.isVideoPlaybackBlocked&&(this.isVideoPlaybackBlocked=!1,this.emit(D.VideoPlaybackStatusChanged,!0))},this.handleVideoPlaybackFailed=()=>{this.isVideoPlaybackBlocked||(this.isVideoPlaybackBlocked=!0,this.emit(D.VideoPlaybackStatusChanged,!1))},this.handleDeviceChange=()=>P(this,void 0,void 0,function*(){var o;((o=Tt())===null||o===void 0?void 0:o.os)!=="iOS"&&(yield this.selectDefaultDevices()),this.emit(D.MediaDevicesChanged)}),this.handleRoomUpdate=o=>{const a=this.roomInfo;this.roomInfo=o,a&&a.metadata!==o.metadata&&this.emitWhenConnected(D.RoomMetadataChanged,o.metadata),(a==null?void 0:a.activeRecording)!==o.activeRecording&&this.emitWhenConnected(D.RecordingStatusChanged,o.activeRecording)},this.handleConnectionQualityUpdate=o=>{o.updates.forEach(a=>{if(a.participantSid===this.localParticipant.sid){this.localParticipant.setConnectionQuality(a.quality);return}const c=this.getRemoteParticipantBySid(a.participantSid);c&&c.setConnectionQuality(a.quality)})},this.onLocalParticipantMetadataChanged=o=>{this.emit(D.ParticipantMetadataChanged,o,this.localParticipant)},this.onLocalParticipantNameChanged=o=>{this.emit(D.ParticipantNameChanged,o,this.localParticipant)},this.onLocalAttributesChanged=o=>{this.emit(D.ParticipantAttributesChanged,o,this.localParticipant)},this.onLocalTrackMuted=o=>{this.emit(D.TrackMuted,o,this.localParticipant)},this.onLocalTrackUnmuted=o=>{this.emit(D.TrackUnmuted,o,this.localParticipant)},this.onTrackProcessorUpdate=o=>{var a;(a=o==null?void 0:o.onPublish)===null||a===void 0||a.call(o,this)},this.onLocalTrackPublished=o=>P(this,void 0,void 0,function*(){var a,c,l,u,d,h;(a=o.track)===null||a===void 0||a.on(G.TrackProcessorUpdate,this.onTrackProcessorUpdate),(c=o.track)===null||c===void 0||c.on(G.Restarted,this.onLocalTrackRestarted),(d=(u=(l=o.track)===null||l===void 0?void 0:l.getProcessor())===null||u===void 0?void 0:u.onPublish)===null||d===void 0||d.call(u,this),this.emit(D.LocalTrackPublished,o,this.localParticipant),mn(o.track)&&(yield o.track.checkForSilence())&&this.emit(D.LocalAudioSilenceDetected,o);const m=yield(h=o.track)===null||h===void 0?void 0:h.getDeviceId(!1),g=pl(o.source);g&&m&&m!==this.localParticipant.activeDeviceMap.get(g)&&(this.localParticipant.activeDeviceMap.set(g,m),this.emit(D.ActiveDeviceChanged,g,m))}),this.onLocalTrackUnpublished=o=>{var a,c;(a=o.track)===null||a===void 0||a.off(G.TrackProcessorUpdate,this.onTrackProcessorUpdate),(c=o.track)===null||c===void 0||c.off(G.Restarted,this.onLocalTrackRestarted),this.emit(D.LocalTrackUnpublished,o,this.localParticipant)},this.onLocalTrackRestarted=o=>P(this,void 0,void 0,function*(){const a=yield o.getDeviceId(!1),c=pl(o.source);c&&a&&a!==this.localParticipant.activeDeviceMap.get(c)&&(this.log.debug("local track restarted, setting ".concat(c," ").concat(a," active"),this.logContext),this.localParticipant.activeDeviceMap.set(c,a),this.emit(D.ActiveDeviceChanged,c,a))}),this.onLocalConnectionQualityChanged=o=>{this.emit(D.ConnectionQualityChanged,o,this.localParticipant)},this.onMediaDevicesError=(o,a)=>{this.emit(D.MediaDevicesError,o,a)},this.onLocalParticipantPermissionsChanged=o=>{this.emit(D.ParticipantPermissionsChanged,o,this.localParticipant)},this.onLocalChatMessageSent=o=>{this.emit(D.ChatMessage,o,this.localParticipant)},this.setMaxListeners(100),this.remoteParticipants=new Map,this.sidToIdentity=new Map,this.options=Object.assign(Object.assign({},bC),e),this.log=Cn((i=this.options.loggerName)!==null&&i!==void 0?i:zt.Room),this.transcriptionReceivedTimes=new Map,this.options.audioCaptureDefaults=Object.assign(Object.assign({},A0),e==null?void 0:e.audioCaptureDefaults),this.options.videoCaptureDefaults=Object.assign(Object.assign({},I0),e==null?void 0:e.videoCaptureDefaults),this.options.publishDefaults=Object.assign(Object.assign({},yC),e==null?void 0:e.publishDefaults),this.maybeCreateEngine(),this.disconnectLock=new ft,this.localParticipant=new tw("","",this.engine,this.options,this.rpcHandlers),this.options.videoCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set("videoinput",Hn(this.options.videoCaptureDefaults.deviceId)),this.options.audioCaptureDefaults.deviceId&&this.localParticipant.activeDeviceMap.set("audioinput",Hn(this.options.audioCaptureDefaults.deviceId)),!((r=this.options.audioOutput)===null||r===void 0)&&r.deviceId&&this.switchActiveDevice("audiooutput",Hn(this.options.audioOutput.deviceId)).catch(o=>this.log.warn("Could not set audio output: ".concat(o.message),this.logContext)),this.options.e2ee&&this.setupE2EE(),ht()){const o=new AbortController;(s=navigator.mediaDevices)===null||s===void 0||s.addEventListener("devicechange",this.handleDeviceChange,{signal:o.signal}),wn.cleanupRegistry&&wn.cleanupRegistry.register(this,()=>{o.abort()})}}registerTextStreamHandler(e,n){if(this.textStreamHandlers.has(e))throw new TypeError('A text stream handler for topic "'.concat(e,'" has already been set.'));this.textStreamHandlers.set(e,n)}unregisterTextStreamHandler(e){this.textStreamHandlers.delete(e)}registerByteStreamHandler(e,n){if(this.byteStreamHandlers.has(e))throw new TypeError('A byte stream handler for topic "'.concat(e,'" has already been set.'));this.byteStreamHandlers.set(e,n)}unregisterByteStreamHandler(e){this.byteStreamHandlers.delete(e)}registerRpcMethod(e,n){if(this.rpcHandlers.has(e))throw Error("RPC handler already registered for method ".concat(e,", unregisterRpcMethod before trying to register again"));this.rpcHandlers.set(e,n)}unregisterRpcMethod(e){this.rpcHandlers.delete(e)}handleIncomingRpcRequest(e,n,i,r,s,o){return P(this,void 0,void 0,function*(){if(yield this.engine.publishRpcAck(e,n),o!==1){yield this.engine.publishRpcResponse(e,n,null,je.builtIn("UNSUPPORTED_VERSION"));return}const a=this.rpcHandlers.get(i);if(!a){yield this.engine.publishRpcResponse(e,n,null,je.builtIn("UNSUPPORTED_METHOD"));return}let c=null,l=null;try{const u=yield a({requestId:n,callerIdentity:e,payload:r,responseTimeout:s});Ou(u)>_0?(c=je.builtIn("RESPONSE_PAYLOAD_TOO_LARGE"),console.warn("RPC Response payload too large for ".concat(i))):l=u}catch(u){u instanceof je?c=u:(console.warn("Uncaught error returned by RPC handler for ".concat(i,". Returning APPLICATION_ERROR instead."),u),c=je.builtIn("APPLICATION_ERROR"))}yield this.engine.publishRpcResponse(e,n,l,c)})}setE2EEEnabled(e){return P(this,void 0,void 0,function*(){if(this.e2eeManager)yield Promise.all([this.localParticipant.setE2EEEnabled(e)]),this.localParticipant.identity!==""&&this.e2eeManager.setParticipantCryptorEnabled(e,this.localParticipant.identity);else throw Error("e2ee not configured, please set e2ee settings within the room options")})}setupE2EE(){var e;this.options.e2ee&&("e2eeManager"in this.options.e2ee?this.e2eeManager=this.options.e2ee.e2eeManager:this.e2eeManager=new iC(this.options.e2ee),this.e2eeManager.on(Bn.ParticipantEncryptionStatusChanged,(n,i)=>{Zk(i)&&(this.isE2EEEnabled=n),this.emit(D.ParticipantEncryptionStatusChanged,n,i)}),this.e2eeManager.on(Bn.EncryptionError,n=>this.emit(D.EncryptionError,n)),(e=this.e2eeManager)===null||e===void 0||e.setup(this))}get logContext(){var e;return{room:this.name,roomID:(e=this.roomInfo)===null||e===void 0?void 0:e.sid,participant:this.localParticipant.identity,pID:this.localParticipant.sid}}get isRecording(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.activeRecording)!==null&&n!==void 0?n:!1}getSid(){return P(this,void 0,void 0,function*(){return this.state===pe.Disconnected?"":this.roomInfo&&this.roomInfo.sid!==""?this.roomInfo.sid:new Promise((e,n)=>{const i=r=>{r.sid!==""&&(this.engine.off(X.RoomUpdate,i),e(r.sid))};this.engine.on(X.RoomUpdate,i),this.once(D.Disconnected,()=>{this.engine.off(X.RoomUpdate,i),n("Room disconnected before room server id was available")})})})}get name(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.name)!==null&&n!==void 0?n:""}get metadata(){var e;return(e=this.roomInfo)===null||e===void 0?void 0:e.metadata}get numParticipants(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.numParticipants)!==null&&n!==void 0?n:0}get numPublishers(){var e,n;return(n=(e=this.roomInfo)===null||e===void 0?void 0:e.numPublishers)!==null&&n!==void 0?n:0}maybeCreateEngine(){this.engine&&!this.engine.isClosed||(this.engine=new BC(this.options),this.engine.on(X.ParticipantUpdate,this.handleParticipantUpdates).on(X.RoomUpdate,this.handleRoomUpdate).on(X.SpeakersChanged,this.handleSpeakersChanged).on(X.StreamStateChanged,this.handleStreamStateUpdate).on(X.ConnectionQualityUpdate,this.handleConnectionQualityUpdate).on(X.SubscriptionError,this.handleSubscriptionError).on(X.SubscriptionPermissionUpdate,this.handleSubscriptionPermissionUpdate).on(X.MediaTrackAdded,(e,n,i)=>{this.onTrackAdded(e,n,i)}).on(X.Disconnected,e=>{this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,e)}).on(X.ActiveSpeakersUpdate,this.handleActiveSpeakersUpdate).on(X.DataPacketReceived,this.handleDataPacket).on(X.Resuming,()=>{this.clearConnectionReconcile(),this.isResuming=!0,this.log.info("Resuming signal connection",this.logContext),this.setAndEmitConnectionState(pe.SignalReconnecting)&&this.emit(D.SignalReconnecting)}).on(X.Resumed,()=>{this.registerConnectionReconcile(),this.isResuming=!1,this.log.info("Resumed signal connection",this.logContext),this.updateSubscriptions(),this.emitBufferedEvents(),this.setAndEmitConnectionState(pe.Connected)&&this.emit(D.Reconnected)}).on(X.SignalResumed,()=>{this.bufferedEvents=[],(this.state===pe.Reconnecting||this.isResuming)&&this.sendSyncState()}).on(X.Restarting,this.handleRestarting).on(X.SignalRestarted,this.handleSignalRestarted).on(X.Offline,()=>{this.setAndEmitConnectionState(pe.Reconnecting)&&this.emit(D.Reconnecting)}).on(X.DCBufferStatusChanged,(e,n)=>{this.emit(D.DCBufferStatusChanged,e,n)}).on(X.LocalTrackSubscribed,e=>{const n=this.localParticipant.getTrackPublications().find(i=>{let{trackSid:r}=i;return r===e});if(!n){this.log.warn("could not find local track subscription for subscribed event",this.logContext);return}this.localParticipant.emit(U.LocalTrackSubscribed,n),this.emitWhenConnected(D.LocalTrackSubscribed,n,this.localParticipant)}).on(X.RoomMoved,e=>{this.log.debug("room moved",e),e.room&&this.handleRoomUpdate(e.room),this.remoteParticipants.forEach((n,i)=>{this.handleParticipantDisconnected(i,n)}),this.emit(D.Moved,e.room.name),e.participant?this.handleParticipantUpdates([e.participant,...e.otherParticipants]):this.handleParticipantUpdates(e.otherParticipants)}),this.localParticipant&&this.localParticipant.setupEngine(this.engine),this.e2eeManager&&this.e2eeManager.setupEngine(this.engine))}static getLocalDevices(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return tt.getInstance().getDevices(e,n)}prepareConnection(e,n){return P(this,void 0,void 0,function*(){if(this.state===pe.Disconnected){this.log.debug("prepareConnection to ".concat(e),this.logContext);try{if(ul(new URL(e))&&n){this.regionUrlProvider=new yl(e,n);const i=yield this.regionUrlProvider.getNextBestRegionUrl();i&&this.state===pe.Disconnected&&(this.regionUrl=i,yield fetch(dl(i),{method:"HEAD"}),this.log.debug("prepared connection to ".concat(i),this.logContext))}else yield fetch(dl(e),{method:"HEAD"})}catch(i){this.log.warn("could not prepare connection",Object.assign(Object.assign({},this.logContext),{error:i}))}}})}getParticipantByIdentity(e){return this.localParticipant.identity===e?this.localParticipant:this.remoteParticipants.get(e)}clearConnectionFutures(){this.connectFuture=void 0}simulateScenario(e,n){return P(this,void 0,void 0,function*(){let i=()=>{},r;switch(e){case"signal-reconnect":yield this.engine.client.handleOnClose("simulate disconnect");break;case"speaker":r=new Kt({scenario:{case:"speakerUpdate",value:3}});break;case"node-failure":r=new Kt({scenario:{case:"nodeFailure",value:!0}});break;case"server-leave":r=new Kt({scenario:{case:"serverLeave",value:!0}});break;case"migration":r=new Kt({scenario:{case:"migration",value:!0}});break;case"resume-reconnect":this.engine.failNext(),yield this.engine.client.handleOnClose("simulate resume-disconnect");break;case"disconnect-signal-on-resume":i=()=>P(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose("simulate resume-disconnect")}),r=new Kt({scenario:{case:"disconnectSignalOnResume",value:!0}});break;case"disconnect-signal-on-resume-no-messages":i=()=>P(this,void 0,void 0,function*(){yield this.engine.client.handleOnClose("simulate resume-disconnect")}),r=new Kt({scenario:{case:"disconnectSignalOnResumeNoMessages",value:!0}});break;case"full-reconnect":this.engine.fullReconnectOnNext=!0,yield this.engine.client.handleOnClose("simulate full-reconnect");break;case"force-tcp":case"force-tls":r=new Kt({scenario:{case:"switchCandidateProtocol",value:e==="force-tls"?2:1}}),i=()=>P(this,void 0,void 0,function*(){const s=this.engine.client.onLeave;s&&s(new oa({reason:$t.CLIENT_INITIATED,action:Qi.RECONNECT}))});break;case"subscriber-bandwidth":if(n===void 0||typeof n!="number")throw new Error("subscriber-bandwidth requires a number as argument");r=new Kt({scenario:{case:"subscriberBandwidth",value:ui(n)}});break;case"leave-full-reconnect":r=new Kt({scenario:{case:"leaveRequestFullReconnect",value:!0}})}r&&(yield this.engine.client.sendSimulateScenario(r),yield i())})}get canPlaybackAudio(){return this.audioEnabled}get canPlaybackVideo(){return!this.isVideoPlaybackBlocked}getActiveDevice(e){return this.localParticipant.activeDeviceMap.get(e)}switchActiveDevice(e,n){return P(this,arguments,void 0,function(i,r){var s=this;let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return function*(){var a,c,l,u,d,h,m;let g=!0,f=!1;const y=o?{exact:r}:r;if(i==="audioinput"){f=s.localParticipant.audioTrackPublications.size===0;const v=(a=s.getActiveDevice(i))!==null&&a!==void 0?a:s.options.audioCaptureDefaults.deviceId;s.options.audioCaptureDefaults.deviceId=y;const C=Array.from(s.localParticipant.audioTrackPublications.values()).filter(k=>k.source===M.Source.Microphone);try{g=(yield Promise.all(C.map(k=>{var b;return(b=k.audioTrack)===null||b===void 0?void 0:b.setDeviceId(y)}))).every(k=>k===!0)}catch(k){throw s.options.audioCaptureDefaults.deviceId=v,k}const T=C.some(k=>{var b,w;return(w=(b=k.track)===null||b===void 0?void 0:b.isMuted)!==null&&w!==void 0?w:!1});g&&T&&(f=!0)}else if(i==="videoinput"){f=s.localParticipant.videoTrackPublications.size===0;const v=(c=s.getActiveDevice(i))!==null&&c!==void 0?c:s.options.videoCaptureDefaults.deviceId;s.options.videoCaptureDefaults.deviceId=y;const C=Array.from(s.localParticipant.videoTrackPublications.values()).filter(T=>T.source===M.Source.Camera);try{g=(yield Promise.all(C.map(T=>{var k;return(k=T.videoTrack)===null||k===void 0?void 0:k.setDeviceId(y)}))).every(T=>T===!0)}catch(T){throw s.options.videoCaptureDefaults.deviceId=v,T}}else if(i==="audiooutput"){if(f=!0,!ll()&&!s.options.webAudioMix||s.options.webAudioMix&&s.audioContext&&!("setSinkId"in s.audioContext))throw new Error("cannot switch audio output, setSinkId not supported");s.options.webAudioMix&&(r=(l=yield tt.getInstance().normalizeDeviceId("audiooutput",r))!==null&&l!==void 0?l:""),(u=(m=s.options).audioOutput)!==null&&u!==void 0||(m.audioOutput={});const v=(d=s.getActiveDevice(i))!==null&&d!==void 0?d:s.options.audioOutput.deviceId;s.options.audioOutput.deviceId=r;try{s.options.webAudioMix&&((h=s.audioContext)===null||h===void 0||h.setSinkId(r)),yield Promise.all(Array.from(s.remoteParticipants.values()).map(C=>C.setAudioOutput({deviceId:r})))}catch(C){throw s.options.audioOutput.deviceId=v,C}}return f&&(s.localParticipant.activeDeviceMap.set(i,r),s.emit(D.ActiveDeviceChanged,i,r)),g}()})}setupLocalParticipantEvents(){this.localParticipant.on(U.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).on(U.ParticipantNameChanged,this.onLocalParticipantNameChanged).on(U.AttributesChanged,this.onLocalAttributesChanged).on(U.TrackMuted,this.onLocalTrackMuted).on(U.TrackUnmuted,this.onLocalTrackUnmuted).on(U.LocalTrackPublished,this.onLocalTrackPublished).on(U.LocalTrackUnpublished,this.onLocalTrackUnpublished).on(U.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).on(U.MediaDevicesError,this.onMediaDevicesError).on(U.AudioStreamAcquired,this.startAudio).on(U.ChatMessage,this.onLocalChatMessageSent).on(U.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged)}recreateEngine(){var e;(e=this.engine)===null||e===void 0||e.close(),this.engine=void 0,this.isResuming=!1,this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.bufferedEvents=[],this.maybeCreateEngine()}onTrackAdded(e,n,i){if(this.state===pe.Connecting||this.state===pe.Reconnecting){const u=()=>{this.onTrackAdded(e,n,i),d()},d=()=>{this.off(D.Reconnected,u),this.off(D.Connected,u),this.off(D.Disconnected,d)};this.once(D.Reconnected,u),this.once(D.Connected,u),this.once(D.Disconnected,d);return}if(this.state===pe.Disconnected){this.log.warn("skipping incoming track after Room disconnected",this.logContext);return}if(e.readyState==="ended"){this.log.info("skipping incoming track as it already ended",this.logContext);return}const r=Ok(n.id),s=r[0];let o=r[1],a=e.id;if(o&&o.startsWith("TR")&&(a=o),s===this.localParticipant.sid){this.log.warn("tried to create RemoteParticipant for local participant",this.logContext);return}const c=Array.from(this.remoteParticipants.values()).find(u=>u.sid===s);if(!c){this.log.error("Tried to add a track for a participant, that's not present. Sid: ".concat(s),this.logContext);return}let l;this.options.adaptiveStream&&(typeof this.options.adaptiveStream=="object"?l=this.options.adaptiveStream:l={}),c.addSubscribedMediaTrack(e,a,n,i,l)}handleDisconnect(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,n=arguments.length>1?arguments[1]:void 0;var i;if(this.clearConnectionReconcile(),this.isResuming=!1,this.bufferedEvents=[],this.transcriptionReceivedTimes.clear(),this.state!==pe.Disconnected){this.regionUrl=void 0;try{this.remoteParticipants.forEach(r=>{r.trackPublications.forEach(s=>{r.unpublishTrack(s.trackSid)})}),this.localParticipant.trackPublications.forEach(r=>{var s,o,a;r.track&&this.localParticipant.unpublishTrack(r.track,e),e?((s=r.track)===null||s===void 0||s.detach(),(o=r.track)===null||o===void 0||o.stop()):(a=r.track)===null||a===void 0||a.stopMonitor()}),this.localParticipant.off(U.ParticipantMetadataChanged,this.onLocalParticipantMetadataChanged).off(U.ParticipantNameChanged,this.onLocalParticipantNameChanged).off(U.AttributesChanged,this.onLocalAttributesChanged).off(U.TrackMuted,this.onLocalTrackMuted).off(U.TrackUnmuted,this.onLocalTrackUnmuted).off(U.LocalTrackPublished,this.onLocalTrackPublished).off(U.LocalTrackUnpublished,this.onLocalTrackUnpublished).off(U.ConnectionQualityChanged,this.onLocalConnectionQualityChanged).off(U.MediaDevicesError,this.onMediaDevicesError).off(U.AudioStreamAcquired,this.startAudio).off(U.ChatMessage,this.onLocalChatMessageSent).off(U.ParticipantPermissionsChanged,this.onLocalParticipantPermissionsChanged),this.localParticipant.trackPublications.clear(),this.localParticipant.videoTrackPublications.clear(),this.localParticipant.audioTrackPublications.clear(),this.remoteParticipants.clear(),this.sidToIdentity.clear(),this.activeSpeakers=[],this.audioContext&&typeof this.options.webAudioMix=="boolean"&&(this.audioContext.close(),this.audioContext=void 0),ht()&&(window.removeEventListener("beforeunload",this.onPageLeave),window.removeEventListener("pagehide",this.onPageLeave),window.removeEventListener("freeze",this.onPageLeave),(i=navigator.mediaDevices)===null||i===void 0||i.removeEventListener("devicechange",this.handleDeviceChange))}finally{this.setAndEmitConnectionState(pe.Disconnected),this.emit(D.Disconnected,n)}}}handleParticipantDisconnected(e,n){var i;this.remoteParticipants.delete(e),n&&(n.trackPublications.forEach(r=>{n.unpublishTrack(r.trackSid,!0)}),this.emit(D.ParticipantDisconnected,n),n.setDisconnected(),(i=this.localParticipant)===null||i===void 0||i.handleParticipantDisconnected(n.identity))}handleStreamHeader(e,n){return P(this,void 0,void 0,function*(){var i;if(e.contentHeader.case==="byteHeader"){const r=this.byteStreamHandlers.get(e.topic);if(!r){this.log.debug("ignoring incoming byte stream due to no handler for topic",e.topic);return}let s;const o={id:e.streamId,name:(i=e.contentHeader.value.name)!==null&&i!==void 0?i:"unknown",mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:vo(e.timestamp),attributes:e.attributes},a=new ReadableStream({start:c=>{s=c,this.byteStreamControllers.set(e.streamId,{info:o,controller:s,startTime:Date.now()})}});r(new WC(o,a,vo(e.totalLength)),{identity:n})}else if(e.contentHeader.case==="textHeader"){const r=this.textStreamHandlers.get(e.topic);if(!r){this.log.debug("ignoring incoming text stream due to no handler for topic",e.topic);return}let s;const o={id:e.streamId,mimeType:e.mimeType,size:e.totalLength?Number(e.totalLength):void 0,topic:e.topic,timestamp:Number(e.timestamp),attributes:e.attributes},a=new ReadableStream({start:c=>{s=c,this.textStreamControllers.set(e.streamId,{info:o,controller:s,startTime:Date.now()})}});r(new qC(o,a,vo(e.totalLength)),{identity:n})}})}handleStreamChunk(e){const n=this.byteStreamControllers.get(e.streamId);n&&e.content.length>0&&n.controller.enqueue(e);const i=this.textStreamControllers.get(e.streamId);i&&e.content.length>0&&i.controller.enqueue(e)}handleStreamTrailer(e){const n=this.textStreamControllers.get(e.streamId);n&&(n.info.attributes=Object.assign(Object.assign({},n.info.attributes),e.attributes),n.controller.close(),this.textStreamControllers.delete(e.streamId));const i=this.byteStreamControllers.get(e.streamId);i&&(i.info.attributes=Object.assign(Object.assign({},i.info.attributes),e.attributes),i.controller.close(),this.byteStreamControllers.delete(e.streamId))}selectDefaultDevices(){return P(this,void 0,void 0,function*(){var e,n,i;const r=tt.getInstance().previousDevices,s=yield tt.getInstance().getDevices(void 0,!1),o=Tt();if((o==null?void 0:o.name)==="Chrome"&&o.os!=="iOS")for(let c of s){const l=r.find(u=>u.deviceId===c.deviceId);l&&l.label!==""&&l.kind===c.kind&&l.label!==c.label&&this.getActiveDevice(c.kind)==="default"&&this.emit(D.ActiveDeviceChanged,c.kind,c.deviceId)}const a=["audiooutput","audioinput","videoinput"];for(let c of a){const l=Jk(c),u=this.localParticipant.getTrackPublication(l);if(u&&(!((e=u.track)===null||e===void 0)&&e.isUserProvided))continue;const d=s.filter(m=>m.kind===c),h=this.getActiveDevice(c);if(h===((n=r.filter(m=>m.kind===c)[0])===null||n===void 0?void 0:n.deviceId)&&d.length>0&&((i=d[0])===null||i===void 0?void 0:i.deviceId)!==h){yield this.switchActiveDevice(c,d[0].deviceId);continue}c==="audioinput"&&!Ff()||c==="videoinput"||d.length>0&&!d.find(m=>m.deviceId===this.getActiveDevice(c))&&(c!=="audiooutput"||!Ff())&&(yield this.switchActiveDevice(c,d[0].deviceId))}})}acquireAudioContext(){return P(this,void 0,void 0,function*(){var e,n;if(typeof this.options.webAudioMix!="boolean"&&this.options.webAudioMix.audioContext?this.audioContext=this.options.webAudioMix.audioContext:(!this.audioContext||this.audioContext.state==="closed")&&(this.audioContext=(e=Ru())!==null&&e!==void 0?e:void 0),this.options.webAudioMix&&this.remoteParticipants.forEach(r=>r.setAudioContext(this.audioContext)),this.localParticipant.setAudioContext(this.audioContext),this.audioContext&&this.audioContext.state==="suspended")try{yield Promise.race([this.audioContext.resume(),mt(200)])}catch(r){this.log.warn("Could not resume audio context",Object.assign(Object.assign({},this.logContext),{error:r}))}const i=((n=this.audioContext)===null||n===void 0?void 0:n.state)==="running";i!==this.canPlaybackAudio&&(this.audioEnabled=i,this.emit(D.AudioPlaybackStatusChanged,i))})}createParticipant(e,n){var i;let r;return n?r=jo.fromParticipantInfo(this.engine.client,n,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}):r=new jo(this.engine.client,"",e,void 0,void 0,void 0,{loggerContextCb:()=>this.logContext,loggerName:this.options.loggerName}),this.options.webAudioMix&&r.setAudioContext(this.audioContext),!((i=this.options.audioOutput)===null||i===void 0)&&i.deviceId&&r.setAudioOutput(this.options.audioOutput).catch(s=>this.log.warn("Could not set audio output: ".concat(s.message),this.logContext)),r}getOrCreateParticipant(e,n){if(this.remoteParticipants.has(e)){const r=this.remoteParticipants.get(e);return n&&r.updateInfo(n)&&this.sidToIdentity.set(n.sid,n.identity),r}const i=this.createParticipant(e,n);return this.remoteParticipants.set(e,i),this.sidToIdentity.set(n.sid,n.identity),this.emitWhenConnected(D.ParticipantConnected,i),i.on(U.TrackPublished,r=>{this.emitWhenConnected(D.TrackPublished,r,i)}).on(U.TrackSubscribed,(r,s)=>{r.kind===M.Kind.Audio?(r.on(G.AudioPlaybackStarted,this.handleAudioPlaybackStarted),r.on(G.AudioPlaybackFailed,this.handleAudioPlaybackFailed)):r.kind===M.Kind.Video&&(r.on(G.VideoPlaybackFailed,this.handleVideoPlaybackFailed),r.on(G.VideoPlaybackStarted,this.handleVideoPlaybackStarted)),this.emit(D.TrackSubscribed,r,s,i)}).on(U.TrackUnpublished,r=>{this.emit(D.TrackUnpublished,r,i)}).on(U.TrackUnsubscribed,(r,s)=>{this.emit(D.TrackUnsubscribed,r,s,i)}).on(U.TrackMuted,r=>{this.emitWhenConnected(D.TrackMuted,r,i)}).on(U.TrackUnmuted,r=>{this.emitWhenConnected(D.TrackUnmuted,r,i)}).on(U.ParticipantMetadataChanged,r=>{this.emitWhenConnected(D.ParticipantMetadataChanged,r,i)}).on(U.ParticipantNameChanged,r=>{this.emitWhenConnected(D.ParticipantNameChanged,r,i)}).on(U.AttributesChanged,r=>{this.emitWhenConnected(D.ParticipantAttributesChanged,r,i)}).on(U.ConnectionQualityChanged,r=>{this.emitWhenConnected(D.ConnectionQualityChanged,r,i)}).on(U.ParticipantPermissionsChanged,r=>{this.emitWhenConnected(D.ParticipantPermissionsChanged,r,i)}).on(U.TrackSubscriptionStatusChanged,(r,s)=>{this.emitWhenConnected(D.TrackSubscriptionStatusChanged,r,s,i)}).on(U.TrackSubscriptionFailed,(r,s)=>{this.emit(D.TrackSubscriptionFailed,r,i,s)}).on(U.TrackSubscriptionPermissionChanged,(r,s)=>{this.emitWhenConnected(D.TrackSubscriptionPermissionChanged,r,s,i)}).on(U.Active,()=>{this.emitWhenConnected(D.ParticipantActive,i),i.kind===bi.AGENT&&this.localParticipant.setActiveAgent(i)}),n&&i.updateInfo(n),i}sendSyncState(){const e=Array.from(this.remoteParticipants.values()).reduce((i,r)=>(i.push(...r.getTrackPublications()),i),[]),n=this.localParticipant.getTrackPublications();this.engine.sendSyncState(e,n)}updateSubscriptions(){for(const e of this.remoteParticipants.values())for(const n of e.videoTrackPublications.values())n.isSubscribed&&Kk(n)&&n.emitTrackUpdate()}getRemoteParticipantBySid(e){const n=this.sidToIdentity.get(e);if(n)return this.remoteParticipants.get(n)}registerConnectionReconcile(){this.clearConnectionReconcile();let e=0;this.connectionReconcileInterval=rt.setInterval(()=>{!this.engine||this.engine.isClosed||!this.engine.verifyTransport()?(e++,this.log.warn("detected connection state mismatch",Object.assign(Object.assign({},this.logContext),{numFailures:e,engine:this.engine?{closed:this.engine.isClosed,transportsConnected:this.engine.verifyTransport()}:void 0})),e>=3&&(this.recreateEngine(),this.handleDisconnect(this.options.stopLocalTrackOnUnpublish,$t.STATE_MISMATCH))):e=0},nw)}clearConnectionReconcile(){this.connectionReconcileInterval&&rt.clearInterval(this.connectionReconcileInterval)}setAndEmitConnectionState(e){return e===this.state?!1:(this.state=e,this.emit(D.ConnectionStateChanged,this.state),!0)}emitBufferedEvents(){this.bufferedEvents.forEach(e=>{let[n,i]=e;this.emit(n,...i)}),this.bufferedEvents=[]}emitWhenConnected(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];if(this.state===pe.Reconnecting||this.isResuming||!this.engine||this.engine.pendingReconnect)this.bufferedEvents.push([e,i]);else if(this.state===pe.Connected)return this.emit(e,...i);return!1}simulateParticipants(e){return P(this,void 0,void 0,function*(){var n,i;const r=Object.assign({audio:!0,video:!0,useRealTracks:!1},e.publish),s=Object.assign({count:9,audio:!1,video:!0,aspectRatios:[1.66,1.7,1.3]},e.participants);if(this.handleDisconnect(),this.roomInfo=new ra({sid:"RM_SIMULATED",name:"simulated-room",emptyTimeout:0,maxParticipants:0,creationTime:_e.parse(new Date().getTime()),metadata:"",numParticipants:1,numPublishers:1,turnPassword:"",enabledCodecs:[],activeRecording:!1}),this.localParticipant.updateInfo(new yi({identity:"simulated-local",name:"local-name"})),this.setupLocalParticipantEvents(),this.emit(D.SignalConnected),this.emit(D.Connected),this.setAndEmitConnectionState(pe.Connected),r.video){const o=new Sl(M.Kind.Video,new Hi({source:Ge.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO,name:"video-dummy"}),new Vo(r.useRealTracks?(yield window.navigator.mediaDevices.getUserMedia({video:!0})).getVideoTracks()[0]:$f(160*((n=s.aspectRatios[0])!==null&&n!==void 0?n:1),160,!0,!0),void 0,!1,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(o),this.localParticipant.emit(U.LocalTrackPublished,o)}if(r.audio){const o=new Sl(M.Kind.Audio,new Hi({source:Ge.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO}),new Lo(r.useRealTracks?(yield navigator.mediaDevices.getUserMedia({audio:!0})).getAudioTracks()[0]:za(),void 0,!1,this.audioContext,{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext}),{loggerName:this.options.loggerName,loggerContextCb:()=>this.logContext});this.localParticipant.addTrackPublication(o),this.localParticipant.emit(U.LocalTrackPublished,o)}for(let o=0;o<s.count-1;o+=1){let a=new yi({sid:Math.floor(Math.random()*1e4).toString(),identity:"simulated-".concat(o),state:Xi.ACTIVE,tracks:[],joinedAt:_e.parse(Date.now())});const c=this.getOrCreateParticipant(a.identity,a);if(s.video){const l=$f(160*((i=s.aspectRatios[o%s.aspectRatios.length])!==null&&i!==void 0?i:1),160,!1,!0),u=new Hi({source:Ge.CAMERA,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO});c.addSubscribedMediaTrack(l,u.sid,new MediaStream([l]),new RTCRtpReceiver),a.tracks=[...a.tracks,u]}if(s.audio){const l=za(),u=new Hi({source:Ge.MICROPHONE,sid:Math.floor(Math.random()*1e4).toString(),type:Ut.AUDIO});c.addSubscribedMediaTrack(l,u.sid,new MediaStream([l]),new RTCRtpReceiver),a.tracks=[...a.tracks,u]}c.updateInfo(a)}})}emit(e){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];if(e!==D.ActiveSpeakersChanged&&e!==D.TranscriptionReceived){const s=U0(i).filter(o=>o!==void 0);this.log.debug("room event ".concat(e),Object.assign(Object.assign({},this.logContext),{event:e,args:s}))}return super.emit(e,...i)}}wn.cleanupRegistry=typeof FinalizationRegistry<"u"&&new FinalizationRegistry(t=>{t()});function U0(t){return t.map(e=>{if(e)return Array.isArray(e)?U0(e):typeof e=="object"?"logContext"in e?e.logContext:void 0:e})}var jt;(function(t){t[t.IDLE=0]="IDLE",t[t.RUNNING=1]="RUNNING",t[t.SKIPPED=2]="SKIPPED",t[t.SUCCESS=3]="SUCCESS",t[t.FAILED=4]="FAILED"})(jt||(jt={}));class ti extends ln.EventEmitter{constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(),this.status=jt.IDLE,this.logs=[],this.options={},this.url=e,this.token=n,this.name=this.constructor.name,this.room=new wn(i.roomOptions),this.connectOptions=i.connectOptions,this.options=i}run(e){return P(this,void 0,void 0,function*(){if(this.status!==jt.IDLE)throw Error("check is running already");this.setStatus(jt.RUNNING);try{yield this.perform()}catch(n){n instanceof Error&&(this.options.errorsAsWarnings?this.appendWarning(n.message):this.appendError(n.message))}return yield this.disconnect(),yield new Promise(n=>setTimeout(n,500)),this.status!==jt.SKIPPED&&this.setStatus(this.isSuccess()?jt.SUCCESS:jt.FAILED),e&&e(),this.getInfo()})}isSuccess(){return!this.logs.some(e=>e.level==="error")}connect(e){return P(this,void 0,void 0,function*(){return this.room.state===pe.Connected?this.room:(e||(e=this.url),yield this.room.connect(e,this.token,this.connectOptions),this.room)})}disconnect(){return P(this,void 0,void 0,function*(){this.room&&this.room.state!==pe.Disconnected&&(yield this.room.disconnect(),yield new Promise(e=>setTimeout(e,500)))})}skip(){this.setStatus(jt.SKIPPED)}switchProtocol(e){return P(this,void 0,void 0,function*(){let n=!1,i=!1;if(this.room.on(D.Reconnecting,()=>{n=!0}),this.room.once(D.Reconnected,()=>{i=!0}),this.room.simulateScenario("force-".concat(e)),yield new Promise(s=>setTimeout(s,1e3)),!n)return;const r=Date.now()+1e4;for(;Date.now()<r;){if(i)return;yield mt(100)}throw new Error("Could not reconnect using ".concat(e," protocol after 10 seconds"))})}appendMessage(e){this.logs.push({level:"info",message:e}),this.emit("update",this.getInfo())}appendWarning(e){this.logs.push({level:"warning",message:e}),this.emit("update",this.getInfo())}appendError(e){this.logs.push({level:"error",message:e}),this.emit("update",this.getInfo())}setStatus(e){this.status=e,this.emit("update",this.getInfo())}get engine(){var e;return(e=this.room)===null||e===void 0?void 0:e.engine}getInfo(){return{logs:this.logs,name:this.name,status:this.status,description:this.description}}}class iw extends ti{get description(){return"Cloud regions"}perform(){return P(this,void 0,void 0,function*(){const e=new yl(this.url,this.token);if(!e.isCloud()){this.skip();return}const n=[],i=new Set;for(let s=0;s<3;s++){const o=yield e.getNextBestRegionUrl();if(!o)break;if(i.has(o))continue;i.add(o);const a=yield this.checkCloudRegion(o);this.appendMessage("".concat(a.region," RTT: ").concat(a.rtt,"ms, duration: ").concat(a.duration,"ms")),n.push(a)}n.sort((s,o)=>(s.duration-o.duration)*.5+(s.rtt-o.rtt)*.5);const r=n[0];this.bestStats=r,this.appendMessage("best Cloud region: ".concat(r.region))})}getInfo(){const e=super.getInfo();return e.data=this.bestStats,e}checkCloudRegion(e){return P(this,void 0,void 0,function*(){var n,i;yield this.connect(e),this.options.protocol==="tcp"&&(yield this.switchProtocol("tcp"));const r=(n=this.room.serverInfo)===null||n===void 0?void 0:n.region;if(!r)throw new Error("Region not found");const s=yield this.room.localParticipant.streamText({topic:"test"}),o=1e3,c=1e6/o,l="A".repeat(o),u=Date.now();for(let g=0;g<c;g++)yield s.write(l);yield s.close();const d=Date.now(),h=yield(i=this.room.engine.pcManager)===null||i===void 0?void 0:i.publisher.getStats(),m={region:r,rtt:1e4,duration:d-u};return h==null||h.forEach(g=>{g.type==="candidate-pair"&&g.nominated&&(m.rtt=g.currentRoundTripTime*1e3)}),yield this.disconnect(),m})}}const Qa=1e4;class rw extends ti{get description(){return"Connection via UDP vs TCP"}perform(){return P(this,void 0,void 0,function*(){const e=yield this.checkConnectionProtocol("udp"),n=yield this.checkConnectionProtocol("tcp");this.bestStats=e,e.qualityLimitationDurations.bandwidth-n.qualityLimitationDurations.bandwidth>.5||(e.packetsLost-n.packetsLost)/e.packetsSent>.01?(this.appendMessage("best connection quality via tcp"),this.bestStats=n):this.appendMessage("best connection quality via udp");const i=this.bestStats;this.appendMessage("upstream bitrate: ".concat((i.bitrateTotal/i.count/1e3/1e3).toFixed(2)," mbps")),this.appendMessage("RTT: ".concat((i.rttTotal/i.count*1e3).toFixed(2)," ms")),this.appendMessage("jitter: ".concat((i.jitterTotal/i.count*1e3).toFixed(2)," ms")),i.packetsLost>0&&this.appendWarning("packets lost: ".concat((i.packetsLost/i.packetsSent*100).toFixed(2),"%")),i.qualityLimitationDurations.bandwidth>1&&this.appendWarning("bandwidth limited ".concat((i.qualityLimitationDurations.bandwidth/(Qa/1e3)*100).toFixed(2),"%")),i.qualityLimitationDurations.cpu>0&&this.appendWarning("cpu limited ".concat((i.qualityLimitationDurations.cpu/(Qa/1e3)*100).toFixed(2),"%"))})}getInfo(){const e=super.getInfo();return e.data=this.bestStats,e}checkConnectionProtocol(e){return P(this,void 0,void 0,function*(){yield this.connect(),e==="tcp"?yield this.switchProtocol("tcp"):yield this.switchProtocol("udp");const n=document.createElement("canvas");n.width=1280,n.height=720;const i=n.getContext("2d");if(!i)throw new Error("Could not get canvas context");let r=0;const s=()=>{r=(r+1)%360,i.fillStyle="hsl(".concat(r,", 100%, 50%)"),i.fillRect(0,0,n.width,n.height),requestAnimationFrame(s)};s();const a=n.captureStream(30).getVideoTracks()[0],l=(yield this.room.localParticipant.publishTrack(a,{simulcast:!1,degradationPreference:"maintain-resolution",videoEncoding:{maxBitrate:2e6}})).track,u={protocol:e,packetsLost:0,packetsSent:0,qualityLimitationDurations:{},rttTotal:0,jitterTotal:0,bitrateTotal:0,count:0},d=setInterval(()=>P(this,void 0,void 0,function*(){const h=yield l.getRTCStatsReport();h==null||h.forEach(m=>{m.type==="outbound-rtp"?(u.packetsSent=m.packetsSent,u.qualityLimitationDurations=m.qualityLimitationDurations,u.bitrateTotal+=m.targetBitrate,u.count++):m.type==="remote-inbound-rtp"&&(u.packetsLost=m.packetsLost,u.rttTotal+=m.roundTripTime,u.jitterTotal+=m.jitter)})}),1e3);return yield new Promise(h=>setTimeout(h,Qa)),clearInterval(d),a.stop(),n.remove(),yield this.disconnect(),u})}}class sw extends ti{get description(){return"Can publish audio"}perform(){return P(this,void 0,void 0,function*(){var e;const n=yield this.connect(),i=yield XC();if(yield E0(i,1e3))throw new Error("unable to detect audio from microphone");this.appendMessage("detected audio from microphone"),n.localParticipant.publishTrack(i),yield new Promise(a=>setTimeout(a,3e3));const s=yield(e=i.sender)===null||e===void 0?void 0:e.getStats();if(!s)throw new Error("Could not get RTCStats");let o=0;if(s.forEach(a=>{a.type==="outbound-rtp"&&(a.kind==="audio"||!a.kind&&a.mediaType==="audio")&&(o=a.packetsSent)}),o===0)throw new Error("Could not determine packets are sent");this.appendMessage("published ".concat(o," audio packets"))})}}class ow extends ti{get description(){return"Can publish video"}perform(){return P(this,void 0,void 0,function*(){var e;const n=yield this.connect(),i=yield JC();yield this.checkForVideo(i.mediaStreamTrack),n.localParticipant.publishTrack(i),yield new Promise(o=>setTimeout(o,5e3));const r=yield(e=i.sender)===null||e===void 0?void 0:e.getStats();if(!r)throw new Error("Could not get RTCStats");let s=0;if(r.forEach(o=>{o.type==="outbound-rtp"&&(o.kind==="video"||!o.kind&&o.mediaType==="video")&&(s+=o.packetsSent)}),s===0)throw new Error("Could not determine packets are sent");this.appendMessage("published ".concat(s," video packets"))})}checkForVideo(e){return P(this,void 0,void 0,function*(){const n=new MediaStream;n.addTrack(e.clone());const i=document.createElement("video");i.srcObject=n,i.muted=!0,yield new Promise(r=>{i.onplay=()=>{setTimeout(()=>{var s,o,a,c;const l=document.createElement("canvas"),u=e.getSettings(),d=(o=(s=u.width)!==null&&s!==void 0?s:i.videoWidth)!==null&&o!==void 0?o:1280,h=(c=(a=u.height)!==null&&a!==void 0?a:i.videoHeight)!==null&&c!==void 0?c:720;l.width=d,l.height=h;const m=l.getContext("2d");m.drawImage(i,0,0);const f=m.getImageData(0,0,l.width,l.height).data;let y=!0;for(let v=0;v<f.length;v+=4)if(f[v]!==0||f[v+1]!==0||f[v+2]!==0){y=!1;break}y?this.appendError("camera appears to be producing only black frames"):this.appendMessage("received video frames"),r()},1e3)},i.play()}),n.getTracks().forEach(r=>r.stop()),i.remove()})}}class aw extends ti{get description(){return"Resuming connection after interruption"}perform(){return P(this,void 0,void 0,function*(){var e;const n=yield this.connect();let i=!1,r=!1,s;const o=new Promise(l=>{setTimeout(l,5e3),s=l}),a=()=>{i=!0};n.on(D.SignalReconnecting,a).on(D.Reconnecting,a).on(D.Reconnected,()=>{r=!0,s(!0)}),(e=n.engine.client.ws)===null||e===void 0||e.close();const c=n.engine.client.onClose;if(c&&c(""),yield o,i){if(!r||n.state!==pe.Connected)throw this.appendWarning("reconnection is only possible in Redis-based configurations"),new Error("Not able to reconnect")}else throw new Error("Did not attempt to reconnect")})}}class cw extends ti{get description(){return"Can connect via TURN"}perform(){return P(this,void 0,void 0,function*(){var e,n;const i=new Au,r=yield i.join(this.url,this.token,{autoSubscribe:!0,maxRetries:0,e2eeEnabled:!1,websocketTimeout:15e3});let s=!1,o=!1,a=!1;for(let c of r.iceServers)for(let l of c.urls)l.startsWith("turn:")?(o=!0,a=!0):l.startsWith("turns:")&&(o=!0,a=!0,s=!0),l.startsWith("stun:")&&(a=!0);a?o&&!s&&this.appendWarning("TURN is configured server side, but TURN/TLS is unavailable."):this.appendWarning("No STUN servers configured on server side."),yield i.close(),!((n=(e=this.connectOptions)===null||e===void 0?void 0:e.rtcConfig)===null||n===void 0)&&n.iceServers||o?yield this.room.connect(this.url,this.token,{rtcConfig:{iceTransportPolicy:"relay"}}):(this.appendWarning("No TURN servers configured."),this.skip(),yield new Promise(c=>setTimeout(c,0)))})}}class lw extends ti{get description(){return"Establishing WebRTC connection"}perform(){return P(this,void 0,void 0,function*(){let e=!1,n=!1;this.room.on(D.SignalConnected,()=>{const i=this.room.engine.client.onTrickle;this.room.engine.client.onTrickle=(r,s)=>{if(r.candidate){const o=new RTCIceCandidate(r);let a="".concat(o.protocol," ").concat(o.address,":").concat(o.port," ").concat(o.type);o.address&&(uw(o.address)?a+=" (private)":o.protocol==="tcp"&&o.tcpType==="passive"?(e=!0,a+=" (passive)"):o.protocol==="udp"&&(n=!0)),this.appendMessage(a)}i&&i(r,s)},this.room.engine.pcManager&&(this.room.engine.pcManager.subscriber.onIceCandidateError=r=>{r instanceof RTCPeerConnectionIceErrorEvent&&this.appendWarning("error with ICE candidate: ".concat(r.errorCode," ").concat(r.errorText," ").concat(r.url))})});try{yield this.connect(),me.info("now the room is connected")}catch(i){throw this.appendWarning("ports need to be open on firewall in order to connect."),i}e||this.appendWarning("Server is not configured for ICE/TCP"),n||this.appendWarning("No public IPv4 UDP candidates were found. Your server is likely not configured correctly")})}}function uw(t){const e=t.split(".");if(e.length===4){if(e[0]==="10")return!0;if(e[0]==="192"&&e[1]==="168")return!0;if(e[0]==="172"){const n=parseInt(e[1],10);if(n>=16&&n<=31)return!0}}return!1}class dw extends ti{get description(){return"Connecting to signal connection via WebSocket"}perform(){return P(this,void 0,void 0,function*(){var e,n,i;(this.url.startsWith("ws:")||this.url.startsWith("http:"))&&this.appendWarning("Server is insecure, clients may block connections to it");let r=new Au;const s=yield r.join(this.url,this.token,{autoSubscribe:!0,maxRetries:0,e2eeEnabled:!1,websocketTimeout:15e3});this.appendMessage("Connected to server, version ".concat(s.serverVersion,".")),((e=s.serverInfo)===null||e===void 0?void 0:e.edition)===Pg.Cloud&&(!((n=s.serverInfo)===null||n===void 0)&&n.region)&&this.appendMessage("LiveKit Cloud: ".concat((i=s.serverInfo)===null||i===void 0?void 0:i.region)),yield r.close()})}}class tN extends ln.EventEmitter{constructor(e,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};super(),this.options={},this.checkResults=new Map,this.url=e,this.token=n,this.options=i}getNextCheckId(){const e=this.checkResults.size;return this.checkResults.set(e,{logs:[],status:jt.IDLE,name:"",description:""}),e}updateCheck(e,n){this.checkResults.set(e,n),this.emit("checkUpdate",e,n)}isSuccess(){return Array.from(this.checkResults.values()).every(e=>e.status!==jt.FAILED)}getResults(){return Array.from(this.checkResults.values())}createAndRunCheck(e){return P(this,void 0,void 0,function*(){const n=this.getNextCheckId(),i=new e(this.url,this.token,this.options),r=o=>{this.updateCheck(n,o)};i.on("update",r);const s=yield i.run();return i.off("update",r),s})}checkWebsocket(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(dw)})}checkWebRTC(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(lw)})}checkTURN(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(cw)})}checkReconnect(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(aw)})}checkPublishAudio(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(sw)})}checkPublishVideo(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(ow)})}checkConnectionProtocol(){return P(this,void 0,void 0,function*(){const e=yield this.createAndRunCheck(rw);if(e.data&&"protocol"in e.data){const n=e.data;this.options.protocol=n.protocol}return e})}checkCloudRegion(){return P(this,void 0,void 0,function*(){return this.createAndRunCheck(iw)})}}const Lu=B.createContext({});function Vu(t){const e=B.useRef(null);return e.current===null&&(e.current=t()),e.current}const Fu=typeof window<"u",B0=Fu?B.useLayoutEffect:B.useEffect,ua=B.createContext(null),ju=B.createContext({transformPagePoint:t=>t,isStatic:!1,reducedMotion:"never"});function $0(t){return typeof t=="object"&&t!==null}function Uu(t){return $0(t)&&"offsetHeight"in t}class fw extends p.Component{getSnapshotBeforeUpdate(e){const n=this.props.childRef.current;if(n&&e.isPresent&&!this.props.isPresent){const i=n.offsetParent,r=Uu(i)&&i.offsetWidth||0,s=this.props.sizeRef.current;s.height=n.offsetHeight||0,s.width=n.offsetWidth||0,s.top=n.offsetTop,s.left=n.offsetLeft,s.right=r-s.width-s.left}return null}componentDidUpdate(){}render(){return this.props.children}}function hw({children:t,isPresent:e,anchorX:n}){const i=B.useId(),r=B.useRef(null),s=B.useRef({width:0,height:0,top:0,left:0,right:0}),{nonce:o}=B.useContext(ju);return B.useInsertionEffect(()=>{const{width:a,height:c,top:l,left:u,right:d}=s.current;if(e||!r.current||!a||!c)return;const h=n==="left"?`left: ${u}`:`right: ${d}`;r.current.dataset.motionPopId=i;const m=document.createElement("style");return o&&(m.nonce=o),document.head.appendChild(m),m.sheet&&m.sheet.insertRule(`
|
|
70
70
|
[data-motion-pop-id="${i}"] {
|
|
71
71
|
position: absolute !important;
|
|
72
72
|
width: ${a}px !important;
|
|
@@ -74,9 +74,9 @@ a=extmap-allow-mixed`)!==-1){const s=r.sdp.split(`
|
|
|
74
74
|
${h}px !important;
|
|
75
75
|
top: ${l}px !important;
|
|
76
76
|
}
|
|
77
|
-
`),()=>{document.head.contains(p)&&document.head.removeChild(p)}},[e]),E.jsx(fw,{isPresent:e,childRef:r,sizeRef:s,children:m.cloneElement(t,{ref:r})})}const pw=({children:t,initial:e,isPresent:n,onExitComplete:i,custom:r,presenceAffectsLayout:s,mode:o,anchorX:a})=>{const c=Vu(mw),l=B.useId();let u=!0,d=B.useMemo(()=>(u=!1,{id:l,initial:e,isPresent:n,custom:r,onExitComplete:h=>{c.set(h,!0);for(const p of c.values())if(!p)return;i&&i()},register:h=>(c.set(h,!1),()=>c.delete(h))}),[n,c,i]);return s&&u&&(d={...d}),B.useMemo(()=>{c.forEach((h,p)=>c.set(p,!1))},[n]),m.useEffect(()=>{!n&&!c.size&&i&&i()},[n]),o==="popLayout"&&(t=E.jsx(hw,{isPresent:n,anchorX:a,children:t})),E.jsx(ua.Provider,{value:d,children:t})};function mw(){return new Map}function H0(t=!0){const e=B.useContext(ua);if(e===null)return[!0,null];const{isPresent:n,onExitComplete:i,register:r}=e,s=B.useId();B.useEffect(()=>{if(t)return r(s)},[t]);const o=B.useCallback(()=>t&&i&&i(s),[s,i,t]);return!n&&i?[!1,o]:[!0]}const Fs=t=>t.key||"";function ah(t){const e=[];return B.Children.forEach(t,n=>{B.isValidElement(n)&&e.push(n)}),e}const z0=({children:t,custom:e,initial:n=!0,onExitComplete:i,presenceAffectsLayout:r=!0,mode:s="sync",propagate:o=!1,anchorX:a="left"})=>{const[c,l]=H0(o),u=B.useMemo(()=>ah(t),[t]),d=o&&!c?[]:u.map(Fs),h=B.useRef(!0),p=B.useRef(u),g=Vu(()=>new Map),[f,y]=B.useState(u),[v,C]=B.useState(u);B0(()=>{h.current=!1,p.current=u;for(let b=0;b<v.length;b++){const w=Fs(v[b]);d.includes(w)?g.delete(w):g.get(w)!==!0&&g.set(w,!1)}},[v,d.length,d.join("-")]);const T=[];if(u!==f){let b=[...u];for(let w=0;w<v.length;w++){const x=v[w],R=Fs(x);d.includes(R)||(b.splice(w,0,x),T.push(x))}return s==="wait"&&T.length&&(b=T),C(ah(b)),y(u),null}process.env.NODE_ENV!=="production"&&s==="wait"&&v.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:k}=B.useContext(Lu);return E.jsx(E.Fragment,{children:v.map(b=>{const w=Fs(b),x=o&&!c?!1:u===v||d.includes(w),R=()=>{if(g.has(w))g.set(w,!0);else return;let _=!0;g.forEach(S=>{S||(_=!1)}),_&&(k==null||k(),C(p.current),o&&(l==null||l()),i&&i())};return E.jsx(pw,{isPresent:x,initial:!h.current||n?void 0:!1,custom:e,presenceAffectsLayout:r,mode:s,onExitComplete:x?void 0:R,anchorX:a,children:b},w)})})},js=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],ch={value:null};function gw(t,e){let n=new Set,i=new Set,r=!1,s=!1;const o=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1},c=0;function l(d){o.has(d)&&(u.schedule(d),t()),c++,d(a)}const u={schedule:(d,h=!1,p=!1)=>{const f=p&&r?n:i;return h&&o.add(d),f.has(d)||f.add(d),d},cancel:d=>{i.delete(d),o.delete(d)},process:d=>{if(a=d,r){s=!0;return}r=!0,[n,i]=[i,n],n.forEach(l),e&&ch.value&&ch.value.frameloop[e].push(c),c=0,n.clear(),r=!1,s&&(s=!1,u.process(d))}};return u}const xn={},vw=40;function W0(t,e){let n=!1,i=!0;const r={delta:0,timestamp:0,isProcessing:!1},s=()=>n=!0,o=js.reduce((T,k)=>(T[k]=gw(s,e?k:void 0),T),{}),{setup:a,read:c,resolveKeyframes:l,preUpdate:u,update:d,preRender:h,render:p,postRender:g}=o,f=()=>{const T=xn.useManualTiming?r.timestamp:performance.now();n=!1,xn.useManualTiming||(r.delta=i?1e3/60:Math.max(Math.min(T-r.timestamp,vw),1)),r.timestamp=T,r.isProcessing=!0,a.process(r),c.process(r),l.process(r),u.process(r),d.process(r),h.process(r),p.process(r),g.process(r),r.isProcessing=!1,n&&e&&(i=!1,t(f))},y=()=>{n=!0,i=!0,r.isProcessing||t(f)};return{schedule:js.reduce((T,k)=>{const b=o[k];return T[k]=(w,x=!1,R=!1)=>(n||y(),b.schedule(w,x,R)),T},{}),cancel:T=>{for(let k=0;k<js.length;k++)o[js[k]].cancel(T)},state:r,steps:o}}const It=t=>t,{schedule:De,cancel:Gn,state:nt,steps:ec}=W0(typeof requestAnimationFrame<"u"?requestAnimationFrame:It,!0),q0=B.createContext({strict:!1}),lh={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"]},dr={};for(const t in lh)dr[t]={isEnabled:e=>lh[t].some(n=>!!e[n])};function yw(t){for(const e in t)dr[e]={...dr[e],...t[e]}}const bw=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 Uo(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||bw.has(t)}let G0=t=>!Uo(t);function Sw(t){typeof t=="function"&&(G0=e=>e.startsWith("on")?!Uo(e):t(e))}try{Sw(require("@emotion/is-prop-valid").default)}catch{}function Tw(t,e,n){const i={};for(const r in t)r==="values"&&typeof t.values=="object"||(G0(r)||n===!0&&Uo(r)||!e&&!Uo(r)||t.draggable&&r.startsWith("onDrag"))&&(i[r]=t[r]);return i}const uh=new Set;function Bu(t,e,n){t||uh.has(e)||(console.warn(e),uh.add(e))}function kw(t){if(typeof Proxy>"u")return t;const e=new Map,n=(...i)=>(process.env.NODE_ENV!=="production"&&Bu(!1,"motion() is deprecated. Use motion.create() instead."),t(...i));return new Proxy(n,{get:(i,r)=>r==="create"?t:(e.has(r)||e.set(r,t(r)),e.get(r))})}const da=B.createContext({});function fa(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function os(t){return typeof t=="string"||Array.isArray(t)}const $u=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Hu=["initial",...$u];function ha(t){return fa(t.animate)||Hu.some(e=>os(t[e]))}function K0(t){return!!(ha(t)||t.variants)}function Cw(t,e){if(ha(t)){const{initial:n,animate:i}=t;return{initial:n===!1||os(n)?n:void 0,animate:os(i)?i:void 0}}return t.inherit!==!1?e:{}}function ww(t){const{initial:e,animate:n}=Cw(t,B.useContext(da));return B.useMemo(()=>({initial:e,animate:n}),[dh(e),dh(n)])}function dh(t){return Array.isArray(t)?t.join(" "):t}const xw=Symbol.for("motionComponentSymbol");function qi(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function Ew(t,e,n){return B.useCallback(i=>{i&&t.onMount&&t.onMount(i),e&&(i?e.mount(i):e.unmount()),n&&(typeof n=="function"?n(i):qi(n)&&(n.current=i))},[e])}const zu=t=>t.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),Pw="framerAppearId",Z0="data-"+zu(Pw),Y0=B.createContext({}),{schedule:Wu}=W0(queueMicrotask,!1);function Rw(t,e,n,i,r){var f,y;const{visualElement:s}=B.useContext(da),o=B.useContext(q0),a=B.useContext(ua),c=B.useContext(ju).reducedMotion,l=B.useRef(null);i=i||o.renderer,!l.current&&i&&(l.current=i(t,{visualState:e,parent:s,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:c}));const u=l.current,d=B.useContext(Y0);u&&!u.projection&&r&&(u.type==="html"||u.type==="svg")&&Aw(l.current,n,r,d);const h=B.useRef(!1);B.useInsertionEffect(()=>{u&&h.current&&u.update(n,a)});const p=n[Z0],g=B.useRef(!!p&&!((f=window.MotionHandoffIsComplete)!=null&&f.call(window,p))&&((y=window.MotionHasOptimisedAnimation)==null?void 0:y.call(window,p)));return B0(()=>{u&&(h.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),Wu.render(u.render),g.current&&u.animationState&&u.animationState.animateChanges())}),B.useEffect(()=>{u&&(!g.current&&u.animationState&&u.animationState.animateChanges(),g.current&&(queueMicrotask(()=>{var v;(v=window.MotionHandoffMarkAsComplete)==null||v.call(window,p)}),g.current=!1))}),u}function Aw(t,e,n,i){const{layoutId:r,layout:s,drag:o,dragConstraints:a,layoutScroll:c,layoutRoot:l,layoutCrossfade:u}=e;t.projection=new n(t.latestValues,e["data-framer-portal-id"]?void 0:J0(t.parent)),t.projection.setOptions({layoutId:r,layout:s,alwaysMeasureLayout:!!o||a&&qi(a),visualElement:t,animationType:typeof s=="string"?s:"both",initialPromotionConfig:i,crossfade:u,layoutScroll:c,layoutRoot:l})}function J0(t){if(t)return t.options.allowProjection!==!1?t.projection:J0(t.parent)}let yr=()=>{},En=()=>{};process.env.NODE_ENV!=="production"&&(yr=(t,e)=>{!t&&typeof console<"u"&&console.warn(e)},En=(t,e)=>{if(!t)throw new Error(e)});function Iw({preloadedFeatures:t,createVisualElement:e,useRender:n,useVisualState:i,Component:r}){t&&yw(t);function s(a,c){let l;const u={...B.useContext(ju),...a,layoutId:_w(a)},{isStatic:d}=u,h=ww(a),p=i(a,d);if(!d&&Fu){Mw(u,t);const g=Ow(u);l=g.MeasureLayout,h.visualElement=Rw(r,p,u,e,g.ProjectionNode)}return E.jsxs(da.Provider,{value:h,children:[l&&h.visualElement?E.jsx(l,{visualElement:h.visualElement,...u}):null,n(r,a,Ew(p,h.visualElement,c),p,d,h.visualElement)]})}s.displayName=`motion.${typeof r=="string"?r:`create(${r.displayName??r.name??""})`}`;const o=B.forwardRef(s);return o[xw]=r,o}function _w({layoutId:t}){const e=B.useContext(Lu).id;return e&&t!==void 0?e+"-"+t:t}function Mw(t,e){const n=B.useContext(q0).strict;if(process.env.NODE_ENV!=="production"&&e&&n){const i="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";t.ignoreStrict?yr(!1,i):En(!1,i)}}function Ow(t){const{drag:e,layout:n}=dr;if(!e&&!n)return{};const i={...e,...n};return{MeasureLayout:e!=null&&e.isEnabled(t)||n!=null&&n.isEnabled(t)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}const X0=t=>e=>typeof e=="string"&&e.startsWith(t),qu=X0("--"),Dw=X0("var(--"),Gu=t=>Dw(t)?Nw.test(t.split("/*")[0].trim()):!1,Nw=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,as={};function Lw(t){for(const e in t)as[e]=t[e],qu(e)&&(as[e].isCSSVariable=!0)}const br=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Sr=new Set(br);function Q0(t,{layout:e,layoutId:n}){return Sr.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!as[t]||t==="opacity")}const ev=(t,e)=>e&&typeof t=="number"?e.transform(t):t,Pn=(t,e,n)=>n>e?e:n<t?t:n,Tr={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},cs={...Tr,transform:t=>Pn(0,1,t)},Us={...Tr,default:1},fh={...Tr,transform:Math.round},Cs=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),Fn=Cs("deg"),tn=Cs("%"),le=Cs("px"),Vw=Cs("vh"),Fw=Cs("vw"),hh={...tn,parse:t=>tn.parse(t)/100,transform:t=>tn.transform(t*100)},jw={rotate:Fn,rotateX:Fn,rotateY:Fn,rotateZ:Fn,scale:Us,scaleX:Us,scaleY:Us,scaleZ:Us,skew:Fn,skewX:Fn,skewY:Fn,distance:le,translateX:le,translateY:le,translateZ:le,x:le,y:le,z:le,perspective:le,transformPerspective:le,opacity:cs,originX:hh,originY:hh,originZ:le},Ku={borderWidth:le,borderTopWidth:le,borderRightWidth:le,borderBottomWidth:le,borderLeftWidth:le,borderRadius:le,radius:le,borderTopLeftRadius:le,borderTopRightRadius:le,borderBottomRightRadius:le,borderBottomLeftRadius:le,width:le,maxWidth:le,height:le,maxHeight:le,top:le,right:le,bottom:le,left:le,padding:le,paddingTop:le,paddingRight:le,paddingBottom:le,paddingLeft:le,margin:le,marginTop:le,marginRight:le,marginBottom:le,marginLeft:le,backgroundPositionX:le,backgroundPositionY:le,...jw,zIndex:fh,fillOpacity:cs,strokeOpacity:cs,numOctaves:fh},Uw={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Bw=br.length;function $w(t,e,n){let i="",r=!0;for(let s=0;s<Bw;s++){const o=br[s],a=t[o];if(a===void 0)continue;let c=!0;if(typeof a=="number"?c=a===(o.startsWith("scale")?1:0):c=parseFloat(a)===0,!c||n){const l=ev(a,Ku[o]);if(!c){r=!1;const u=Uw[o]||o;i+=`${u}(${l}) `}n&&(e[o]=l)}}return i=i.trim(),n?i=n(e,r?"":i):r&&(i="none"),i}function Zu(t,e,n){const{style:i,vars:r,transformOrigin:s}=t;let o=!1,a=!1;for(const c in e){const l=e[c];if(Sr.has(c)){o=!0;continue}else if(qu(c)){r[c]=l;continue}else{const u=ev(l,Ku[c]);c.startsWith("origin")?(a=!0,s[c]=u):i[c]=u}}if(e.transform||(o||n?i.transform=$w(e,t.transform,n):i.transform&&(i.transform="none")),a){const{originX:c="50%",originY:l="50%",originZ:u=0}=s;i.transformOrigin=`${c} ${l} ${u}`}}const Yu=()=>({style:{},transform:{},transformOrigin:{},vars:{}}),at=t=>!!(t&&t.getVelocity);function tv(t,e,n){for(const i in e)!at(e[i])&&!Q0(i,n)&&(t[i]=e[i])}function Hw({transformTemplate:t},e){return B.useMemo(()=>{const n=Yu();return Zu(n,e,t),Object.assign({},n.vars,n.style)},[e])}function zw(t,e){const n=t.style||{},i={};return tv(i,n,t),Object.assign(i,Hw(t,e)),i}function Ww(t,e){const n={},i=zw(t,e);return t.drag&&t.dragListener!==!1&&(n.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=i,n}const qw={offset:"stroke-dashoffset",array:"stroke-dasharray"},Gw={offset:"strokeDashoffset",array:"strokeDasharray"};function Kw(t,e,n=1,i=0,r=!0){t.pathLength=1;const s=r?qw:Gw;t[s.offset]=le.transform(-i);const o=le.transform(e),a=le.transform(n);t[s.array]=`${o} ${a}`}function nv(t,{attrX:e,attrY:n,attrScale:i,pathLength:r,pathSpacing:s=1,pathOffset:o=0,...a},c,l,u){if(Zu(t,a,l),c){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:d,style:h}=t;d.transform&&(h.transform=d.transform,delete d.transform),(h.transform||d.transformOrigin)&&(h.transformOrigin=d.transformOrigin??"50% 50%",delete d.transformOrigin),h.transform&&(h.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete d.transformBox),e!==void 0&&(d.x=e),n!==void 0&&(d.y=n),i!==void 0&&(d.scale=i),r!==void 0&&Kw(d,r,s,o,!1)}const iv=()=>({...Yu(),attrs:{}}),rv=t=>typeof t=="string"&&t.toLowerCase()==="svg";function Zw(t,e,n,i){const r=B.useMemo(()=>{const s=iv();return nv(s,e,rv(i),t.transformTemplate,t.style),{...s.attrs,style:{...s.style}}},[e]);if(t.style){const s={};tv(s,t.style,t),r.style={...s,...r.style}}return r}const Yw=["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 Ju(t){return typeof t!="string"||t.includes("-")?!1:!!(Yw.indexOf(t)>-1||/[A-Z]/u.test(t))}function Jw(t=!1){return(n,i,r,{latestValues:s},o)=>{const c=(Ju(n)?Zw:Ww)(i,s,o,n),l=Tw(i,typeof n=="string",t),u=n!==B.Fragment?{...l,...c,ref:r}:{},{children:d}=i,h=B.useMemo(()=>at(d)?d.get():d,[d]);return B.createElement(n,{...u,children:h})}}function ph(t){const e=[{},{}];return t==null||t.values.forEach((n,i)=>{e[0][i]=n.get(),e[1][i]=n.getVelocity()}),e}function Xu(t,e,n,i){if(typeof e=="function"){const[r,s]=ph(i);e=e(n!==void 0?n:t.custom,r,s)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[r,s]=ph(i);e=e(n!==void 0?n:t.custom,r,s)}return e}function bo(t){return at(t)?t.get():t}function Xw({scrapeMotionValuesFromProps:t,createRenderState:e},n,i,r){return{latestValues:Qw(n,i,r,t),renderState:e()}}const sv=t=>(e,n)=>{const i=B.useContext(da),r=B.useContext(ua),s=()=>Xw(t,e,i,r);return n?s():Vu(s)};function Qw(t,e,n,i){const r={},s=i(t,{});for(const h in s)r[h]=bo(s[h]);let{initial:o,animate:a}=t;const c=ha(t),l=K0(t);e&&l&&!c&&t.inherit!==!1&&(o===void 0&&(o=e.initial),a===void 0&&(a=e.animate));let u=n?n.initial===!1:!1;u=u||o===!1;const d=u?a:o;if(d&&typeof d!="boolean"&&!fa(d)){const h=Array.isArray(d)?d:[d];for(let p=0;p<h.length;p++){const g=Xu(t,h[p]);if(g){const{transitionEnd:f,transition:y,...v}=g;for(const C in v){let T=v[C];if(Array.isArray(T)){const k=u?T.length-1:0;T=T[k]}T!==null&&(r[C]=T)}for(const C in f)r[C]=f[C]}}}return r}function Qu(t,e,n){var s;const{style:i}=t,r={};for(const o in i)(at(i[o])||e.style&&at(e.style[o])||Q0(o,t)||((s=n==null?void 0:n.getValue(o))==null?void 0:s.liveStyle)!==void 0)&&(r[o]=i[o]);return r}const e2={useVisualState:sv({scrapeMotionValuesFromProps:Qu,createRenderState:Yu})};function ov(t,e,n){const i=Qu(t,e,n);for(const r in t)if(at(t[r])||at(e[r])){const s=br.indexOf(r)!==-1?"attr"+r.charAt(0).toUpperCase()+r.substring(1):r;i[s]=t[r]}return i}const t2={useVisualState:sv({scrapeMotionValuesFromProps:ov,createRenderState:iv})};function n2(t,e){return function(i,{forwardMotionProps:r}={forwardMotionProps:!1}){const o={...Ju(i)?t2:e2,preloadedFeatures:t,useRender:Jw(r),createVisualElement:e,Component:i};return Iw(o)}}function ls(t,e,n){const i=t.getProps();return Xu(i,e,n!==void 0?n:i.custom,t)}const Tl=t=>Array.isArray(t);let So;function i2(){So=void 0}const pt={now:()=>(So===void 0&&pt.set(nt.isProcessing||xn.useManualTiming?nt.timestamp:performance.now()),So),set:t=>{So=t,queueMicrotask(i2)}};function ed(t,e){t.indexOf(e)===-1&&t.push(e)}function td(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class nd{constructor(){this.subscriptions=[]}add(e){return ed(this.subscriptions,e),()=>td(this.subscriptions,e)}notify(e,n,i){const r=this.subscriptions.length;if(r)if(r===1)this.subscriptions[0](e,n,i);else for(let s=0;s<r;s++){const o=this.subscriptions[s];o&&o(e,n,i)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}function av(t,e){return e?t*(1e3/e):0}const mh=30,r2=t=>!isNaN(parseFloat(t));class s2{constructor(e,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=(i,r=!0)=>{var o,a;const s=pt.now();if(this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(i),this.current!==this.prev&&((o=this.events.change)==null||o.notify(this.current),this.dependents))for(const c of this.dependents)c.dirty();r&&((a=this.events.renderRequest)==null||a.notify(this.current))},this.hasAnimated=!1,this.setCurrent(e),this.owner=n.owner}setCurrent(e){this.current=e,this.updatedAt=pt.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=r2(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return process.env.NODE_ENV!=="production"&&Bu(!1,'value.onChange(callback) is deprecated. Switch to value.on("change", callback).'),this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new nd);const i=this.events[e].add(n);return e==="change"?()=>{i(),De.read(()=>{this.events.change.getSize()||this.stop()})}:i}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e,n=!0){!n||!this.passiveEffect?this.updateAndNotify(e,n):this.passiveEffect(e,this.updateAndNotify)}setWithVelocity(e,n,i){this.set(n),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-i}jump(e,n=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var e;(e=this.events.change)==null||e.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=pt.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>mh)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,mh);return av(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(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 e,n;(e=this.dependents)==null||e.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function fr(t,e){return new s2(t,e)}function o2(t,e,n){t.hasValue(e)?t.getValue(e).set(n):t.addValue(e,fr(n))}function a2(t){return Tl(t)?t[t.length-1]||0:t}function c2(t,e){const n=ls(t,e);let{transitionEnd:i={},transition:r={},...s}=n||{};s={...s,...i};for(const o in s){const a=a2(s[o]);o2(t,o,a)}}function l2(t){return!!(at(t)&&t.add)}function kl(t,e){const n=t.getValue("willChange");if(l2(n))return n.add(e);if(!n&&xn.WillChange){const i=new xn.WillChange("auto");t.addValue("willChange",i),i.add(e)}}function cv(t){return t.props[Z0]}const u2=t=>t!==null;function d2(t,{repeat:e,repeatType:n="loop"},i){const r=t.filter(u2),s=e&&n!=="loop"&&e%2===1?0:r.length-1;return r[s]}const f2={type:"spring",stiffness:500,damping:25,restSpeed:10},h2=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),p2={type:"keyframes",duration:.8},m2={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},g2=(t,{keyframes:e})=>e.length>2?p2:Sr.has(t)?t.startsWith("scale")?h2(e[1]):f2:m2;function v2({when:t,delay:e,delayChildren:n,staggerChildren:i,staggerDirection:r,repeat:s,repeatType:o,repeatDelay:a,from:c,elapsed:l,...u}){return!!Object.keys(u).length}function id(t,e){return(t==null?void 0:t[e])??(t==null?void 0:t.default)??t}const Ht=t=>t*1e3,nn=t=>t/1e3,Xr=t=>Math.round(t*1e5)/1e5,rd=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function y2(t){return t==null}const b2=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,sd=(t,e)=>n=>!!(typeof n=="string"&&b2.test(n)&&n.startsWith(t)||e&&!y2(n)&&Object.prototype.hasOwnProperty.call(n,e)),lv=(t,e,n)=>i=>{if(typeof i!="string")return i;const[r,s,o,a]=i.match(rd);return{[t]:parseFloat(r),[e]:parseFloat(s),[n]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}},S2=t=>Pn(0,255,t),tc={...Tr,transform:t=>Math.round(S2(t))},fi={test:sd("rgb","red"),parse:lv("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:i=1})=>"rgba("+tc.transform(t)+", "+tc.transform(e)+", "+tc.transform(n)+", "+Xr(cs.transform(i))+")"};function T2(t){let e="",n="",i="",r="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),i=t.substring(5,7),r=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),i=t.substring(3,4),r=t.substring(4,5),e+=e,n+=n,i+=i,r+=r),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(i,16),alpha:r?parseInt(r,16)/255:1}}const Cl={test:sd("#"),parse:T2,transform:fi.transform},Gi={test:sd("hsl","hue"),parse:lv("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:i=1})=>"hsla("+Math.round(t)+", "+tn.transform(Xr(e))+", "+tn.transform(Xr(n))+", "+Xr(cs.transform(i))+")"},qe={test:t=>fi.test(t)||Cl.test(t)||Gi.test(t),parse:t=>fi.test(t)?fi.parse(t):Gi.test(t)?Gi.parse(t):Cl.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?fi.transform(t):Gi.transform(t),getAnimatableNone:t=>{const e=qe.parse(t);return e.alpha=0,qe.transform(e)}},k2=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function C2(t){var e,n;return isNaN(t)&&typeof t=="string"&&(((e=t.match(rd))==null?void 0:e.length)||0)+(((n=t.match(k2))==null?void 0:n.length)||0)>0}const uv="number",dv="color",w2="var",x2="var(",gh="${}",E2=/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 us(t){const e=t.toString(),n=[],i={color:[],number:[],var:[]},r=[];let s=0;const a=e.replace(E2,c=>(qe.test(c)?(i.color.push(s),r.push(dv),n.push(qe.parse(c))):c.startsWith(x2)?(i.var.push(s),r.push(w2),n.push(c)):(i.number.push(s),r.push(uv),n.push(parseFloat(c))),++s,gh)).split(gh);return{values:n,split:a,indexes:i,types:r}}function fv(t){return us(t).values}function hv(t){const{split:e,types:n}=us(t),i=e.length;return r=>{let s="";for(let o=0;o<i;o++)if(s+=e[o],r[o]!==void 0){const a=n[o];a===uv?s+=Xr(r[o]):a===dv?s+=qe.transform(r[o]):s+=r[o]}return s}}const P2=t=>typeof t=="number"?0:qe.test(t)?qe.getAnimatableNone(t):t;function R2(t){const e=fv(t);return hv(t)(e.map(P2))}const Kn={test:C2,parse:fv,createTransformer:hv,getAnimatableNone:R2};function nc(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function A2({hue:t,saturation:e,lightness:n,alpha:i}){t/=360,e/=100,n/=100;let r=0,s=0,o=0;if(!e)r=s=o=n;else{const a=n<.5?n*(1+e):n+e-n*e,c=2*n-a;r=nc(c,a,t+1/3),s=nc(c,a,t),o=nc(c,a,t-1/3)}return{red:Math.round(r*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:i}}function Bo(t,e){return n=>n>0?e:t}const Oe=(t,e,n)=>t+(e-t)*n,ic=(t,e,n)=>{const i=t*t,r=n*(e*e-i)+i;return r<0?0:Math.sqrt(r)},I2=[Cl,fi,Gi],_2=t=>I2.find(e=>e.test(t));function vh(t){const e=_2(t);if(yr(!!e,`'${t}' is not an animatable color. Use the equivalent color code instead.`),!e)return!1;let n=e.parse(t);return e===Gi&&(n=A2(n)),n}const yh=(t,e)=>{const n=vh(t),i=vh(e);if(!n||!i)return Bo(t,e);const r={...n};return s=>(r.red=ic(n.red,i.red,s),r.green=ic(n.green,i.green,s),r.blue=ic(n.blue,i.blue,s),r.alpha=Oe(n.alpha,i.alpha,s),fi.transform(r))},wl=new Set(["none","hidden"]);function M2(t,e){return wl.has(t)?n=>n<=0?t:e:n=>n>=1?e:t}const O2=(t,e)=>n=>e(t(n)),ws=(...t)=>t.reduce(O2);function D2(t,e){return n=>Oe(t,e,n)}function od(t){return typeof t=="number"?D2:typeof t=="string"?Gu(t)?Bo:qe.test(t)?yh:V2:Array.isArray(t)?pv:typeof t=="object"?qe.test(t)?yh:N2:Bo}function pv(t,e){const n=[...t],i=n.length,r=t.map((s,o)=>od(s)(s,e[o]));return s=>{for(let o=0;o<i;o++)n[o]=r[o](s);return n}}function N2(t,e){const n={...t,...e},i={};for(const r in n)t[r]!==void 0&&e[r]!==void 0&&(i[r]=od(t[r])(t[r],e[r]));return r=>{for(const s in i)n[s]=i[s](r);return n}}function L2(t,e){const n=[],i={color:0,var:0,number:0};for(let r=0;r<e.values.length;r++){const s=e.types[r],o=t.indexes[s][i[s]],a=t.values[o]??0;n[r]=a,i[s]++}return n}const V2=(t,e)=>{const n=Kn.createTransformer(e),i=us(t),r=us(e);return i.indexes.var.length===r.indexes.var.length&&i.indexes.color.length===r.indexes.color.length&&i.indexes.number.length>=r.indexes.number.length?wl.has(t)&&!r.values.length||wl.has(e)&&!i.values.length?M2(t,e):ws(pv(L2(i,r),r.values),n):(yr(!0,`Complex values '${t}' and '${e}' 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.`),Bo(t,e))};function mv(t,e,n){return typeof t=="number"&&typeof e=="number"&&typeof n=="number"?Oe(t,e,n):od(t)(t,e)}const F2=t=>{const e=({timestamp:n})=>t(n);return{start:(n=!0)=>De.update(e,n),stop:()=>Gn(e),now:()=>nt.isProcessing?nt.timestamp:pt.now()}},gv=(t,e,n=10)=>{let i="";const r=Math.max(Math.round(e/n),2);for(let s=0;s<r;s++)i+=Math.round(t(s/(r-1))*1e4)/1e4+", ";return`linear(${i.substring(0,i.length-2)})`},$o=2e4;function ad(t){let e=0;const n=50;let i=t.next(e);for(;!i.done&&e<$o;)e+=n,i=t.next(e);return e>=$o?1/0:e}function j2(t,e=100,n){const i=n({...t,keyframes:[0,e]}),r=Math.min(ad(i),$o);return{type:"keyframes",ease:s=>i.next(r*s).value/e,duration:nn(r)}}const U2=5;function vv(t,e,n){const i=Math.max(e-U2,0);return av(n-t(i),e-i)}const Me={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},rc=.001;function B2({duration:t=Me.duration,bounce:e=Me.bounce,velocity:n=Me.velocity,mass:i=Me.mass}){let r,s;yr(t<=Ht(Me.maxDuration),"Spring duration must be 10 seconds or less");let o=1-e;o=Pn(Me.minDamping,Me.maxDamping,o),t=Pn(Me.minDuration,Me.maxDuration,nn(t)),o<1?(r=l=>{const u=l*o,d=u*t,h=u-n,p=xl(l,o),g=Math.exp(-d);return rc-h/p*g},s=l=>{const d=l*o*t,h=d*n+n,p=Math.pow(o,2)*Math.pow(l,2)*t,g=Math.exp(-d),f=xl(Math.pow(l,2),o);return(-r(l)+rc>0?-1:1)*((h-p)*g)/f}):(r=l=>{const u=Math.exp(-l*t),d=(l-n)*t+1;return-rc+u*d},s=l=>{const u=Math.exp(-l*t),d=(n-l)*(t*t);return u*d});const a=5/t,c=H2(r,s,a);if(t=Ht(t),isNaN(c))return{stiffness:Me.stiffness,damping:Me.damping,duration:t};{const l=Math.pow(c,2)*i;return{stiffness:l,damping:o*2*Math.sqrt(i*l),duration:t}}}const $2=12;function H2(t,e,n){let i=n;for(let r=1;r<$2;r++)i=i-t(i)/e(i);return i}function xl(t,e){return t*Math.sqrt(1-e*e)}const z2=["duration","bounce"],W2=["stiffness","damping","mass"];function bh(t,e){return e.some(n=>t[n]!==void 0)}function q2(t){let e={velocity:Me.velocity,stiffness:Me.stiffness,damping:Me.damping,mass:Me.mass,isResolvedFromDuration:!1,...t};if(!bh(t,W2)&&bh(t,z2))if(t.visualDuration){const n=t.visualDuration,i=2*Math.PI/(n*1.2),r=i*i,s=2*Pn(.05,1,1-(t.bounce||0))*Math.sqrt(r);e={...e,mass:Me.mass,stiffness:r,damping:s}}else{const n=B2(t);e={...e,...n,mass:Me.mass},e.isResolvedFromDuration=!0}return e}function Ho(t=Me.visualDuration,e=Me.bounce){const n=typeof t!="object"?{visualDuration:t,keyframes:[0,1],bounce:e}:t;let{restSpeed:i,restDelta:r}=n;const s=n.keyframes[0],o=n.keyframes[n.keyframes.length-1],a={done:!1,value:s},{stiffness:c,damping:l,mass:u,duration:d,velocity:h,isResolvedFromDuration:p}=q2({...n,velocity:-nn(n.velocity||0)}),g=h||0,f=l/(2*Math.sqrt(c*u)),y=o-s,v=nn(Math.sqrt(c/u)),C=Math.abs(y)<5;i||(i=C?Me.restSpeed.granular:Me.restSpeed.default),r||(r=C?Me.restDelta.granular:Me.restDelta.default);let T;if(f<1){const b=xl(v,f);T=w=>{const x=Math.exp(-f*v*w);return o-x*((g+f*v*y)/b*Math.sin(b*w)+y*Math.cos(b*w))}}else if(f===1)T=b=>o-Math.exp(-v*b)*(y+(g+v*y)*b);else{const b=v*Math.sqrt(f*f-1);T=w=>{const x=Math.exp(-f*v*w),R=Math.min(b*w,300);return o-x*((g+f*v*y)*Math.sinh(R)+b*y*Math.cosh(R))/b}}const k={calculatedDuration:p&&d||null,next:b=>{const w=T(b);if(p)a.done=b>=d;else{let x=b===0?g:0;f<1&&(x=b===0?Ht(g):vv(T,b,w));const R=Math.abs(x)<=i,_=Math.abs(o-w)<=r;a.done=R&&_}return a.value=a.done?o:w,a},toString:()=>{const b=Math.min(ad(k),$o),w=gv(x=>k.next(b*x).value,b,30);return b+"ms "+w},toTransition:()=>{}};return k}Ho.applyToOptions=t=>{const e=j2(t,100,Ho);return t.ease=e.ease,t.duration=Ht(e.duration),t.type="keyframes",t};function El({keyframes:t,velocity:e=0,power:n=.8,timeConstant:i=325,bounceDamping:r=10,bounceStiffness:s=500,modifyTarget:o,min:a,max:c,restDelta:l=.5,restSpeed:u}){const d=t[0],h={done:!1,value:d},p=R=>a!==void 0&&R<a||c!==void 0&&R>c,g=R=>a===void 0?c:c===void 0||Math.abs(a-R)<Math.abs(c-R)?a:c;let f=n*e;const y=d+f,v=o===void 0?y:o(y);v!==y&&(f=v-d);const C=R=>-f*Math.exp(-R/i),T=R=>v+C(R),k=R=>{const _=C(R),S=T(R);h.done=Math.abs(_)<=l,h.value=h.done?v:S};let b,w;const x=R=>{p(h.value)&&(b=R,w=Ho({keyframes:[h.value,g(h.value)],velocity:vv(T,R,h.value),damping:r,stiffness:s,restDelta:l,restSpeed:u}))};return x(0),{calculatedDuration:null,next:R=>{let _=!1;return!w&&b===void 0&&(_=!0,k(R),x(R)),b!==void 0&&R>=b?w.next(R-b):(!_&&k(R),h)}}}const ds=(t,e,n)=>{const i=e-t;return i===0?1:(n-t)/i};function G2(t,e,n){const i=[],r=n||xn.mix||mv,s=t.length-1;for(let o=0;o<s;o++){let a=r(t[o],t[o+1]);if(e){const c=Array.isArray(e)?e[o]||It:e;a=ws(c,a)}i.push(a)}return i}function K2(t,e,{clamp:n=!0,ease:i,mixer:r}={}){const s=t.length;if(En(s===e.length,"Both input and output ranges must be the same length"),s===1)return()=>e[0];if(s===2&&e[0]===e[1])return()=>e[1];const o=t[0]===t[1];t[0]>t[s-1]&&(t=[...t].reverse(),e=[...e].reverse());const a=G2(e,i,r),c=a.length,l=u=>{if(o&&u<t[0])return e[0];let d=0;if(c>1)for(;d<t.length-2&&!(u<t[d+1]);d++);const h=ds(t[d],t[d+1],u);return a[d](h)};return n?u=>l(Pn(t[0],t[s-1],u)):l}function Z2(t,e){const n=t[t.length-1];for(let i=1;i<=e;i++){const r=ds(0,e,i);t.push(Oe(n,1,r))}}function Y2(t){const e=[0];return Z2(e,t.length-1),e}function J2(t,e){return t.map(n=>n*e)}const yv=(t,e,n)=>(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t,X2=1e-7,Q2=12;function ex(t,e,n,i,r){let s,o,a=0;do o=e+(n-e)/2,s=yv(o,i,r)-t,s>0?n=o:e=o;while(Math.abs(s)>X2&&++a<Q2);return o}function xs(t,e,n,i){if(t===e&&n===i)return It;const r=s=>ex(s,0,1,t,n);return s=>s===0||s===1?s:yv(r(s),e,i)}const tx=xs(.42,0,1,1),nx=xs(0,0,.58,1),bv=xs(.42,0,.58,1),ix=t=>Array.isArray(t)&&typeof t[0]!="number",Sv=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Tv=t=>e=>1-t(1-e),kv=xs(.33,1.53,.69,.99),cd=Tv(kv),Cv=Sv(cd),wv=t=>(t*=2)<1?.5*cd(t):.5*(2-Math.pow(2,-10*(t-1))),ld=t=>1-Math.sin(Math.acos(t)),xv=Tv(ld),Ev=Sv(ld),Pv=t=>Array.isArray(t)&&typeof t[0]=="number",Sh={linear:It,easeIn:tx,easeInOut:bv,easeOut:nx,circIn:ld,circInOut:Ev,circOut:xv,backIn:cd,backInOut:Cv,backOut:kv,anticipate:wv},rx=t=>typeof t=="string",Th=t=>{if(Pv(t)){En(t.length===4,"Cubic bezier arrays must contain four numerical values.");const[e,n,i,r]=t;return xs(e,n,i,r)}else if(rx(t))return En(Sh[t]!==void 0,`Invalid easing type '${t}'`),Sh[t];return t};function sx(t,e){return t.map(()=>e||bv).splice(0,t.length-1)}function Ki({duration:t=300,keyframes:e,times:n,ease:i="easeInOut"}){const r=ix(i)?i.map(Th):Th(i),s={done:!1,value:e[0]},o=J2(n&&n.length===e.length?n:Y2(e),t),a=K2(o,e,{ease:Array.isArray(r)?r:sx(e,r)});return{calculatedDuration:t,next:c=>(s.value=a(c),s.done=c>=t,s)}}const ox=t=>t!==null;function ud(t,{repeat:e,repeatType:n="loop"},i,r=1){const s=t.filter(ox),a=r<0||e&&n!=="loop"&&e%2===1?0:s.length-1;return!a||i===void 0?s[a]:i}const ax={decay:El,inertia:El,tween:Ki,keyframes:Ki,spring:Ho};function Rv(t){typeof t.type=="string"&&(t.type=ax[t.type])}class dd{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,n){return this.finished.then(e,n)}}const cx=t=>t/100;class fd extends dd{constructor(e){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var i,r;const{motionValue:n}=this.options;n&&n.updatedAt!==pt.now()&&this.tick(pt.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(r=(i=this.options).onStop)==null||r.call(i))},this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){const{options:e}=this;Rv(e);const{type:n=Ki,repeat:i=0,repeatDelay:r=0,repeatType:s,velocity:o=0}=e;let{keyframes:a}=e;const c=n||Ki;process.env.NODE_ENV!=="production"&&c!==Ki&&En(a.length<=2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${a}`),c!==Ki&&typeof a[0]!="number"&&(this.mixKeyframes=ws(cx,mv(a[0],a[1])),a=[0,100]);const l=c({...e,keyframes:a});s==="mirror"&&(this.mirroredGenerator=c({...e,keyframes:[...a].reverse(),velocity:-o})),l.calculatedDuration===null&&(l.calculatedDuration=ad(l));const{calculatedDuration:u}=l;this.calculatedDuration=u,this.resolvedDuration=u+r,this.totalDuration=this.resolvedDuration*(i+1)-r,this.generator=l}updateTime(e){const n=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(e,n=!1){const{generator:i,totalDuration:r,mixKeyframes:s,mirroredGenerator:o,resolvedDuration:a,calculatedDuration:c}=this;if(this.startTime===null)return i.next(0);const{delay:l=0,keyframes:u,repeat:d,repeatType:h,repeatDelay:p,type:g,onUpdate:f,finalKeyframe:y}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-r/this.speed,this.startTime)),n?this.currentTime=e:this.updateTime(e);const v=this.currentTime-l*(this.playbackSpeed>=0?1:-1),C=this.playbackSpeed>=0?v<0:v>r;this.currentTime=Math.max(v,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=r);let T=this.currentTime,k=i;if(d){const R=Math.min(this.currentTime,r)/a;let _=Math.floor(R),S=R%1;!S&&R>=1&&(S=1),S===1&&_--,_=Math.min(_,d+1),!!(_%2)&&(h==="reverse"?(S=1-S,p&&(S-=p/a)):h==="mirror"&&(k=o)),T=Pn(0,1,S)*a}const b=C?{done:!1,value:u[0]}:k.next(T);s&&(b.value=s(b.value));let{done:w}=b;!C&&c!==null&&(w=this.playbackSpeed>=0?this.currentTime>=r:this.currentTime<=0);const x=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&w);return x&&g!==El&&(b.value=ud(u,this.options,y,this.speed)),f&&f(b.value),x&&this.finish(),b}then(e,n){return this.finished.then(e,n)}get duration(){return nn(this.calculatedDuration)}get time(){return nn(this.currentTime)}set time(e){var n;e=Ht(e),this.currentTime=e,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.playbackSpeed),(n=this.driver)==null||n.start(!1)}get speed(){return this.playbackSpeed}set speed(e){this.updateTime(pt.now());const n=this.playbackSpeed!==e;this.playbackSpeed=e,n&&(this.time=nn(this.currentTime))}play(){var r,s;if(this.isStopped)return;const{driver:e=F2,startTime:n}=this.options;this.driver||(this.driver=e(o=>this.tick(o))),(s=(r=this.options).onPlay)==null||s.call(r);const i=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=i):this.holdTime!==null?this.startTime=i-this.holdTime:this.startTime||(this.startTime=n??i),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(pt.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var e,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(e=this.options).onComplete)==null||n.call(e)}cancel(){var e,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(e=this.options).onCancel)==null||n.call(e)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),e.observe(this)}}function lx(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const hi=t=>t*180/Math.PI,Pl=t=>{const e=hi(Math.atan2(t[1],t[0]));return Rl(e)},ux={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:Pl,rotateZ:Pl,skewX:t=>hi(Math.atan(t[1])),skewY:t=>hi(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Rl=t=>(t=t%360,t<0&&(t+=360),t),kh=Pl,Ch=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),wh=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),dx={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Ch,scaleY:wh,scale:t=>(Ch(t)+wh(t))/2,rotateX:t=>Rl(hi(Math.atan2(t[6],t[5]))),rotateY:t=>Rl(hi(Math.atan2(-t[2],t[0]))),rotateZ:kh,rotate:kh,skewX:t=>hi(Math.atan(t[4])),skewY:t=>hi(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function Al(t){return t.includes("scale")?1:0}function Il(t,e){if(!t||t==="none")return Al(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let i,r;if(n)i=dx,r=n;else{const a=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);i=ux,r=a}if(!r)return Al(e);const s=i[e],o=r[1].split(",").map(hx);return typeof s=="function"?s(o):o[s]}const fx=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return Il(n,e)};function hx(t){return parseFloat(t.trim())}const xh=t=>t===Tr||t===le,px=new Set(["x","y","z"]),mx=br.filter(t=>!px.has(t));function gx(t){const e=[];return mx.forEach(n=>{const i=t.getValue(n);i!==void 0&&(e.push([n,i.get()]),i.set(n.startsWith("scale")?1:0))}),e}const mi={width:({x:t},{paddingLeft:e="0",paddingRight:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),height:({y:t},{paddingTop:e="0",paddingBottom:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>Il(e,"x"),y:(t,{transform:e})=>Il(e,"y")};mi.translateX=mi.x;mi.translateY=mi.y;const gi=new Set;let _l=!1,Ml=!1,Ol=!1;function Av(){if(Ml){const t=Array.from(gi).filter(i=>i.needsMeasurement),e=new Set(t.map(i=>i.element)),n=new Map;e.forEach(i=>{const r=gx(i);r.length&&(n.set(i,r),i.render())}),t.forEach(i=>i.measureInitialState()),e.forEach(i=>{i.render();const r=n.get(i);r&&r.forEach(([s,o])=>{var a;(a=i.getValue(s))==null||a.set(o)})}),t.forEach(i=>i.measureEndState()),t.forEach(i=>{i.suspendedScrollY!==void 0&&window.scrollTo(0,i.suspendedScrollY)})}Ml=!1,_l=!1,gi.forEach(t=>t.complete(Ol)),gi.clear()}function Iv(){gi.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(Ml=!0)})}function vx(){Ol=!0,Iv(),Av(),Ol=!1}class hd{constructor(e,n,i,r,s,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=i,this.motionValue=r,this.element=s,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(gi.add(this),_l||(_l=!0,De.read(Iv),De.resolveKeyframes(Av))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:i,motionValue:r}=this;if(e[0]===null){const s=r==null?void 0:r.get(),o=e[e.length-1];if(s!==void 0)e[0]=s;else if(i&&n){const a=i.readValue(n,o);a!=null&&(e[0]=a)}e[0]===void 0&&(e[0]=o),r&&s===void 0&&r.set(e[0])}lx(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),gi.delete(this)}cancel(){this.state==="scheduled"&&(gi.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const yx=t=>t.startsWith("--");function bx(t,e,n){yx(e)?t.style.setProperty(e,n):t.style[e]=n}function pd(t){let e;return()=>(e===void 0&&(e=t()),e)}const Sx=pd(()=>window.ScrollTimeline!==void 0),Tx={};function kx(t,e){const n=pd(t);return()=>Tx[e]??n()}const _v=kx(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Wr=([t,e,n,i])=>`cubic-bezier(${t}, ${e}, ${n}, ${i})`,Eh={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Wr([0,.65,.55,1]),circOut:Wr([.55,0,1,.45]),backIn:Wr([.31,.01,.66,-.59]),backOut:Wr([.33,1.53,.69,.99])};function Mv(t,e){if(t)return typeof t=="function"?_v()?gv(t,e):"ease-out":Pv(t)?Wr(t):Array.isArray(t)?t.map(n=>Mv(n,e)||Eh.easeOut):Eh[t]}function Cx(t,e,n,{delay:i=0,duration:r=300,repeat:s=0,repeatType:o="loop",ease:a="easeOut",times:c}={},l=void 0){const u={[e]:n};c&&(u.offset=c);const d=Mv(a,r);Array.isArray(d)&&(u.easing=d);const h={delay:i,duration:r,easing:Array.isArray(d)?"linear":d,fill:"both",iterations:s+1,direction:o==="reverse"?"alternate":"normal"};return l&&(h.pseudoElement=l),t.animate(u,h)}function Ov(t){return typeof t=="function"&&"applyToOptions"in t}function wx({type:t,...e}){return Ov(t)&&_v()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class xx extends dd{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,!e)return;const{element:n,name:i,keyframes:r,pseudoElement:s,allowFlatten:o=!1,finalKeyframe:a,onComplete:c}=e;this.isPseudoElement=!!s,this.allowFlatten=o,this.options=e,En(typeof e.type!="string",`animateMini doesn't support "type" as a string. Did you mean to import { spring } from "motion"?`);const l=wx(e);this.animation=Cx(n,i,r,l,s),l.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!s){const u=ud(r,this.options,a,this.speed);this.updateMotionValue?this.updateMotionValue(u):bx(n,i,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 e,n;(n=(e=this.animation).finish)==null||n.call(e)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var e,n;this.isPseudoElement||(n=(e=this.animation).commitStyles)==null||n.call(e)}get duration(){var n,i;const e=((i=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:i.call(n).duration)||0;return nn(Number(e))}get time(){return nn(Number(this.animation.currentTime)||0)}set time(e){this.finishedTime=null,this.animation.currentTime=Ht(e)}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(e){this.animation.startTime=e}attachTimeline({timeline:e,observe:n}){var i;return this.allowFlatten&&((i=this.animation.effect)==null||i.updateTiming({easing:"linear"})),this.animation.onfinish=null,e&&Sx()?(this.animation.timeline=e,It):n(this)}}const Dv={anticipate:wv,backInOut:Cv,circInOut:Ev};function Ex(t){return t in Dv}function Px(t){typeof t.ease=="string"&&Ex(t.ease)&&(t.ease=Dv[t.ease])}const Ph=10;class Rx extends xx{constructor(e){Px(e),Rv(e),super(e),e.startTime&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){const{motionValue:n,onUpdate:i,onComplete:r,element:s,...o}=this.options;if(!n)return;if(e!==void 0){n.set(e);return}const a=new fd({...o,autoplay:!1}),c=Ht(this.finishedTime??this.time);n.setWithVelocity(a.sample(c-Ph).value,a.sample(c).value,Ph),a.stop()}}const Rh=(t,e)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(Kn.test(t)||t==="0")&&!t.startsWith("url("));function Ax(t){const e=t[0];if(t.length===1)return!0;for(let n=0;n<t.length;n++)if(t[n]!==e)return!0}function Ix(t,e,n,i){const r=t[0];if(r===null)return!1;if(e==="display"||e==="visibility")return!0;const s=t[t.length-1],o=Rh(r,e),a=Rh(s,e);return yr(o===a,`You are trying to animate ${e} from "${r}" to "${s}". ${r} is not an animatable value - to enable this animation set ${r} to a value animatable to ${s} via the \`style\` property.`),!o||!a?!1:Ax(t)||(n==="spring"||Ov(n))&&i}const _x=new Set(["opacity","clipPath","filter","transform"]),Mx=pd(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function Ox(t){var l;const{motionValue:e,name:n,repeatDelay:i,repeatType:r,damping:s,type:o}=t;if(!Uu((l=e==null?void 0:e.owner)==null?void 0:l.current))return!1;const{onUpdate:a,transformTemplate:c}=e.owner.getProps();return Mx()&&n&&_x.has(n)&&(n!=="transform"||!c)&&!a&&!i&&r!=="mirror"&&s!==0&&o!=="inertia"}const Dx=40;class Nx extends dd{constructor({autoplay:e=!0,delay:n=0,type:i="keyframes",repeat:r=0,repeatDelay:s=0,repeatType:o="loop",keyframes:a,name:c,motionValue:l,element:u,...d}){var g;super(),this.stop=()=>{var f,y;this._animation&&(this._animation.stop(),(f=this.stopTimeline)==null||f.call(this)),(y=this.keyframeResolver)==null||y.cancel()},this.createdAt=pt.now();const h={autoplay:e,delay:n,type:i,repeat:r,repeatDelay:s,repeatType:o,name:c,motionValue:l,element:u,...d},p=(u==null?void 0:u.KeyframeResolver)||hd;this.keyframeResolver=new p(a,(f,y,v)=>this.onKeyframesResolved(f,y,h,!v),c,l,u),(g=this.keyframeResolver)==null||g.scheduleResolve()}onKeyframesResolved(e,n,i,r){this.keyframeResolver=void 0;const{name:s,type:o,velocity:a,delay:c,isHandoff:l,onUpdate:u}=i;this.resolvedAt=pt.now(),Ix(e,s,o,a)||((xn.instantAnimations||!c)&&(u==null||u(ud(e,i,n))),e[0]=e[e.length-1],i.duration=0,i.repeat=0);const h={startTime:r?this.resolvedAt?this.resolvedAt-this.createdAt>Dx?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...i,keyframes:e},p=!l&&Ox(h)?new Rx({...h,element:h.motionValue.owner.current}):new fd(h);p.finished.then(()=>this.notifyFinished()).catch(It),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(e,n){return this.finished.finally(e).then(()=>{})}get animation(){var e;return this._animation||((e=this.keyframeResolver)==null||e.resume(),vx()),this._animation}get duration(){return this.animation.duration}get time(){return this.animation.time}set time(e){this.animation.time=e}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(e){this.animation.speed=e}get startTime(){return this.animation.startTime}attachTimeline(e){return this._animation?this.stopTimeline=this.animation.attachTimeline(e):this.pendingTimeline=e,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var e;this._animation&&this.animation.cancel(),(e=this.keyframeResolver)==null||e.cancel()}}const md=(t,e,n,i={},r,s)=>o=>{const a=id(i,t)||{},c=a.delay||i.delay||0;let{elapsed:l=0}=i;l=l-Ht(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:e.getVelocity(),...a,delay:-l,onUpdate:h=>{e.set(h),a.onUpdate&&a.onUpdate(h)},onComplete:()=>{o(),a.onComplete&&a.onComplete()},name:t,motionValue:e,element:s?void 0:r};v2(a)||Object.assign(u,g2(t,u)),u.duration&&(u.duration=Ht(u.duration)),u.repeatDelay&&(u.repeatDelay=Ht(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let d=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(u.duration=0,u.delay===0&&(d=!0)),(xn.instantAnimations||xn.skipAnimations)&&(d=!0,u.duration=0,u.delay=0),u.allowFlatten=!a.type&&!a.ease,d&&!s&&e.get()!==void 0){const h=d2(u.keyframes,a);if(h!==void 0){De.update(()=>{u.onUpdate(h),u.onComplete()});return}}return a.isSync?new fd(u):new Nx(u)},Nv=new Set(["width","height","top","left","right","bottom",...br]);function Lx({protectedKeys:t,needsAnimating:e},n){const i=t.hasOwnProperty(n)&&e[n]!==!0;return e[n]=!1,i}function Lv(t,e,{delay:n=0,transitionOverride:i,type:r}={}){let{transition:s=t.getDefaultTransition(),transitionEnd:o,...a}=e;i&&(s=i);const c=[],l=r&&t.animationState&&t.animationState.getState()[r];for(const u in a){const d=t.getValue(u,t.latestValues[u]??null),h=a[u];if(h===void 0||l&&Lx(l,u))continue;const p={delay:n,...id(s||{},u)},g=d.get();if(g!==void 0&&!d.isAnimating&&!Array.isArray(h)&&h===g&&!p.velocity)continue;let f=!1;if(window.MotionHandoffAnimation){const v=cv(t);if(v){const C=window.MotionHandoffAnimation(v,u,De);C!==null&&(p.startTime=C,f=!0)}}kl(t,u),d.start(md(u,d,h,t.shouldReduceMotion&&Nv.has(u)?{type:!1}:p,t,f));const y=d.animation;y&&c.push(y)}return o&&Promise.all(c).then(()=>{De.update(()=>{o&&c2(t,o)})}),c}function Dl(t,e,n={}){var c;const i=ls(t,e,n.type==="exit"?(c=t.presenceContext)==null?void 0:c.custom:void 0);let{transition:r=t.getDefaultTransition()||{}}=i||{};n.transitionOverride&&(r=n.transitionOverride);const s=i?()=>Promise.all(Lv(t,i,n)):()=>Promise.resolve(),o=t.variantChildren&&t.variantChildren.size?(l=0)=>{const{delayChildren:u=0,staggerChildren:d,staggerDirection:h}=r;return Vx(t,e,u+l,d,h,n)}:()=>Promise.resolve(),{when:a}=r;if(a){const[l,u]=a==="beforeChildren"?[s,o]:[o,s];return l().then(()=>u())}else return Promise.all([s(),o(n.delay)])}function Vx(t,e,n=0,i=0,r=1,s){const o=[],a=(t.variantChildren.size-1)*i,c=r===1?(l=0)=>l*i:(l=0)=>a-l*i;return Array.from(t.variantChildren).sort(Fx).forEach((l,u)=>{l.notify("AnimationStart",e),o.push(Dl(l,e,{...s,delay:n+c(u)}).then(()=>l.notify("AnimationComplete",e)))}),Promise.all(o)}function Fx(t,e){return t.sortNodePosition(e)}function jx(t,e,n={}){t.notify("AnimationStart",e);let i;if(Array.isArray(e)){const r=e.map(s=>Dl(t,s,n));i=Promise.all(r)}else if(typeof e=="string")i=Dl(t,e,n);else{const r=typeof e=="function"?ls(t,e,n.custom):e;i=Promise.all(Lv(t,r,n))}return i.then(()=>{t.notify("AnimationComplete",e)})}function Vv(t,e){if(!Array.isArray(e))return!1;const n=e.length;if(n!==t.length)return!1;for(let i=0;i<n;i++)if(e[i]!==t[i])return!1;return!0}const Ux=Hu.length;function Fv(t){if(!t)return;if(!t.isControllingVariants){const n=t.parent?Fv(t.parent)||{}:{};return t.props.initial!==void 0&&(n.initial=t.props.initial),n}const e={};for(let n=0;n<Ux;n++){const i=Hu[n],r=t.props[i];(os(r)||r===!1)&&(e[i]=r)}return e}const Bx=[...$u].reverse(),$x=$u.length;function Hx(t){return e=>Promise.all(e.map(({animation:n,options:i})=>jx(t,n,i)))}function zx(t){let e=Hx(t),n=Ah(),i=!0;const r=c=>(l,u)=>{var h;const d=ls(t,u,c==="exit"?(h=t.presenceContext)==null?void 0:h.custom:void 0);if(d){const{transition:p,transitionEnd:g,...f}=d;l={...l,...f,...g}}return l};function s(c){e=c(t)}function o(c){const{props:l}=t,u=Fv(t.parent)||{},d=[],h=new Set;let p={},g=1/0;for(let y=0;y<$x;y++){const v=Bx[y],C=n[v],T=l[v]!==void 0?l[v]:u[v],k=os(T),b=v===c?C.isActive:null;b===!1&&(g=y);let w=T===u[v]&&T!==l[v]&&k;if(w&&i&&t.manuallyAnimateOnMount&&(w=!1),C.protectedKeys={...p},!C.isActive&&b===null||!T&&!C.prevProp||fa(T)||typeof T=="boolean")continue;const x=Wx(C.prevProp,T);let R=x||v===c&&C.isActive&&!w&&k||y>g&&k,_=!1;const S=Array.isArray(T)?T:[T];let I=S.reduce(r(v),{});b===!1&&(I={});const{prevResolvedValues:N={}}=C,z={...N,...I},K=Y=>{R=!0,h.has(Y)&&(_=!0,h.delete(Y)),C.needsAnimating[Y]=!0;const F=t.getValue(Y);F&&(F.liveStyle=!1)};for(const Y in z){const F=I[Y],ce=N[Y];if(p.hasOwnProperty(Y))continue;let A=!1;Tl(F)&&Tl(ce)?A=!Vv(F,ce):A=F!==ce,A?F!=null?K(Y):h.add(Y):F!==void 0&&h.has(Y)?K(Y):C.protectedKeys[Y]=!0}C.prevProp=T,C.prevResolvedValues=I,C.isActive&&(p={...p,...I}),i&&t.blockInitialAnimation&&(R=!1),R&&(!(w&&x)||_)&&d.push(...S.map(Y=>({animation:Y,options:{type:v}})))}if(h.size){const y={};if(typeof l.initial!="boolean"){const v=ls(t,Array.isArray(l.initial)?l.initial[0]:l.initial);v&&v.transition&&(y.transition=v.transition)}h.forEach(v=>{const C=t.getBaseTarget(v),T=t.getValue(v);T&&(T.liveStyle=!0),y[v]=C??null}),d.push({animation:y})}let f=!!d.length;return i&&(l.initial===!1||l.initial===l.animate)&&!t.manuallyAnimateOnMount&&(f=!1),i=!1,f?e(d):Promise.resolve()}function a(c,l){var d;if(n[c].isActive===l)return Promise.resolve();(d=t.variantChildren)==null||d.forEach(h=>{var p;return(p=h.animationState)==null?void 0:p.setActive(c,l)}),n[c].isActive=l;const u=o(c);for(const h in n)n[h].protectedKeys={};return u}return{animateChanges:o,setActive:a,setAnimateFunction:s,getState:()=>n,reset:()=>{n=Ah(),i=!0}}}function Wx(t,e){return typeof e=="string"?e!==t:Array.isArray(e)?!Vv(e,t):!1}function ci(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Ah(){return{animate:ci(!0),whileInView:ci(),whileHover:ci(),whileTap:ci(),whileDrag:ci(),whileFocus:ci(),exit:ci()}}class ni{constructor(e){this.isMounted=!1,this.node=e}update(){}}class qx extends ni{constructor(e){super(e),e.animationState||(e.animationState=zx(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();fa(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:n}=this.node.prevProps||{};e!==n&&this.updateAnimationControlsSubscription()}unmount(){var e;this.node.animationState.reset(),(e=this.unmountControls)==null||e.call(this)}}let Gx=0;class Kx extends ni{constructor(){super(...arguments),this.id=Gx++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:n}=this.node.presenceContext,{isPresent:i}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===i)return;const r=this.node.animationState.setActive("exit",!e);n&&!e&&r.then(()=>{n(this.id)})}mount(){const{register:e,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),e&&(this.unmount=e(this.id))}unmount(){}}const Zx={animation:{Feature:qx},exit:{Feature:Kx}};function fs(t,e,n,i={passive:!0}){return t.addEventListener(e,n,i),()=>t.removeEventListener(e,n)}const gd=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1;function Es(t){return{point:{x:t.pageX,y:t.pageY}}}const Yx=t=>e=>gd(e)&&t(e,Es(e));function Qr(t,e,n,i){return fs(t,e,Yx(n),i)}function jv({top:t,left:e,right:n,bottom:i}){return{x:{min:e,max:n},y:{min:t,max:i}}}function Jx({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function Xx(t,e){if(!e)return t;const n=e({x:t.left,y:t.top}),i=e({x:t.right,y:t.bottom});return{top:n.y,left:n.x,bottom:i.y,right:i.x}}const Uv=1e-4,Qx=1-Uv,eE=1+Uv,Bv=.01,tE=0-Bv,nE=0+Bv;function ct(t){return t.max-t.min}function iE(t,e,n){return Math.abs(t-e)<=n}function Ih(t,e,n,i=.5){t.origin=i,t.originPoint=Oe(e.min,e.max,t.origin),t.scale=ct(n)/ct(e),t.translate=Oe(n.min,n.max,t.origin)-t.originPoint,(t.scale>=Qx&&t.scale<=eE||isNaN(t.scale))&&(t.scale=1),(t.translate>=tE&&t.translate<=nE||isNaN(t.translate))&&(t.translate=0)}function es(t,e,n,i){Ih(t.x,e.x,n.x,i?i.originX:void 0),Ih(t.y,e.y,n.y,i?i.originY:void 0)}function _h(t,e,n){t.min=n.min+e.min,t.max=t.min+ct(e)}function rE(t,e,n){_h(t.x,e.x,n.x),_h(t.y,e.y,n.y)}function Mh(t,e,n){t.min=e.min-n.min,t.max=t.min+ct(e)}function ts(t,e,n){Mh(t.x,e.x,n.x),Mh(t.y,e.y,n.y)}const Oh=()=>({translate:0,scale:1,origin:0,originPoint:0}),Zi=()=>({x:Oh(),y:Oh()}),Dh=()=>({min:0,max:0}),Be=()=>({x:Dh(),y:Dh()});function Et(t){return[t("x"),t("y")]}function sc(t){return t===void 0||t===1}function Nl({scale:t,scaleX:e,scaleY:n}){return!sc(t)||!sc(e)||!sc(n)}function di(t){return Nl(t)||$v(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function $v(t){return Nh(t.x)||Nh(t.y)}function Nh(t){return t&&t!=="0%"}function zo(t,e,n){const i=t-n,r=e*i;return n+r}function Lh(t,e,n,i,r){return r!==void 0&&(t=zo(t,r,i)),zo(t,n,i)+e}function Ll(t,e=0,n=1,i,r){t.min=Lh(t.min,e,n,i,r),t.max=Lh(t.max,e,n,i,r)}function Hv(t,{x:e,y:n}){Ll(t.x,e.translate,e.scale,e.originPoint),Ll(t.y,n.translate,n.scale,n.originPoint)}const Vh=.999999999999,Fh=1.0000000000001;function sE(t,e,n,i=!1){const r=n.length;if(!r)return;e.x=e.y=1;let s,o;for(let a=0;a<r;a++){s=n[a],o=s.projectionDelta;const{visualElement:c}=s.options;c&&c.props.style&&c.props.style.display==="contents"||(i&&s.options.layoutScroll&&s.scroll&&s!==s.root&&Ji(t,{x:-s.scroll.offset.x,y:-s.scroll.offset.y}),o&&(e.x*=o.x.scale,e.y*=o.y.scale,Hv(t,o)),i&&di(s.latestValues)&&Ji(t,s.latestValues))}e.x<Fh&&e.x>Vh&&(e.x=1),e.y<Fh&&e.y>Vh&&(e.y=1)}function Yi(t,e){t.min=t.min+e,t.max=t.max+e}function jh(t,e,n,i,r=.5){const s=Oe(t.min,t.max,r);Ll(t,e,n,s,i)}function Ji(t,e){jh(t.x,e.x,e.scaleX,e.scale,e.originX),jh(t.y,e.y,e.scaleY,e.scale,e.originY)}function zv(t,e){return jv(Xx(t.getBoundingClientRect(),e))}function oE(t,e,n){const i=zv(t,n),{scroll:r}=e;return r&&(Yi(i.x,r.offset.x),Yi(i.y,r.offset.y)),i}const Wv=({current:t})=>t?t.ownerDocument.defaultView:null,Uh=(t,e)=>Math.abs(t-e);function aE(t,e){const n=Uh(t.x,e.x),i=Uh(t.y,e.y);return Math.sqrt(n**2+i**2)}class qv{constructor(e,n,{transformPagePoint:i,contextWindow:r,dragSnapToOrigin:s=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const d=ac(this.lastMoveEventInfo,this.history),h=this.startEvent!==null,p=aE(d.offset,{x:0,y:0})>=3;if(!h&&!p)return;const{point:g}=d,{timestamp:f}=nt;this.history.push({...g,timestamp:f});const{onStart:y,onMove:v}=this.handlers;h||(y&&y(this.lastMoveEvent,d),this.startEvent=this.lastMoveEvent),v&&v(this.lastMoveEvent,d)},this.handlePointerMove=(d,h)=>{this.lastMoveEvent=d,this.lastMoveEventInfo=oc(h,this.transformPagePoint),De.update(this.updatePoint,!0)},this.handlePointerUp=(d,h)=>{this.end();const{onEnd:p,onSessionEnd:g,resumeAnimation:f}=this.handlers;if(this.dragSnapToOrigin&&f&&f(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const y=ac(d.type==="pointercancel"?this.lastMoveEventInfo:oc(h,this.transformPagePoint),this.history);this.startEvent&&p&&p(d,y),g&&g(d,y)},!gd(e))return;this.dragSnapToOrigin=s,this.handlers=n,this.transformPagePoint=i,this.contextWindow=r||window;const o=Es(e),a=oc(o,this.transformPagePoint),{point:c}=a,{timestamp:l}=nt;this.history=[{...c,timestamp:l}];const{onSessionStart:u}=n;u&&u(e,ac(a,this.history)),this.removeListeners=ws(Qr(this.contextWindow,"pointermove",this.handlePointerMove),Qr(this.contextWindow,"pointerup",this.handlePointerUp),Qr(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),Gn(this.updatePoint)}}function oc(t,e){return e?{point:e(t.point)}:t}function Bh(t,e){return{x:t.x-e.x,y:t.y-e.y}}function ac({point:t},e){return{point:t,delta:Bh(t,Gv(e)),offset:Bh(t,cE(e)),velocity:lE(e,.1)}}function cE(t){return t[0]}function Gv(t){return t[t.length-1]}function lE(t,e){if(t.length<2)return{x:0,y:0};let n=t.length-1,i=null;const r=Gv(t);for(;n>=0&&(i=t[n],!(r.timestamp-i.timestamp>Ht(e)));)n--;if(!i)return{x:0,y:0};const s=nn(r.timestamp-i.timestamp);if(s===0)return{x:0,y:0};const o={x:(r.x-i.x)/s,y:(r.y-i.y)/s};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function uE(t,{min:e,max:n},i){return e!==void 0&&t<e?t=i?Oe(e,t,i.min):Math.max(t,e):n!==void 0&&t>n&&(t=i?Oe(n,t,i.max):Math.min(t,n)),t}function $h(t,e,n){return{min:e!==void 0?t.min+e:void 0,max:n!==void 0?t.max+n-(t.max-t.min):void 0}}function dE(t,{top:e,left:n,bottom:i,right:r}){return{x:$h(t.x,n,r),y:$h(t.y,e,i)}}function Hh(t,e){let n=e.min-t.min,i=e.max-t.max;return e.max-e.min<t.max-t.min&&([n,i]=[i,n]),{min:n,max:i}}function fE(t,e){return{x:Hh(t.x,e.x),y:Hh(t.y,e.y)}}function hE(t,e){let n=.5;const i=ct(t),r=ct(e);return r>i?n=ds(e.min,e.max-i,t.min):i>r&&(n=ds(t.min,t.max-r,e.min)),Pn(0,1,n)}function pE(t,e){const n={};return e.min!==void 0&&(n.min=e.min-t.min),e.max!==void 0&&(n.max=e.max-t.min),n}const Vl=.35;function mE(t=Vl){return t===!1?t=0:t===!0&&(t=Vl),{x:zh(t,"left","right"),y:zh(t,"top","bottom")}}function zh(t,e,n){return{min:Wh(t,e),max:Wh(t,n)}}function Wh(t,e){return typeof t=="number"?t:t[e]||0}const Vt={x:!1,y:!1};function Kv(){return Vt.x||Vt.y}function gE(t){return t==="x"||t==="y"?Vt[t]?null:(Vt[t]=!0,()=>{Vt[t]=!1}):Vt.x||Vt.y?null:(Vt.x=Vt.y=!0,()=>{Vt.x=Vt.y=!1})}const vE=new WeakMap;class yE{constructor(e){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Be(),this.visualElement=e}start(e,{snapToCursor:n=!1}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const r=u=>{const{dragSnapToOrigin:d}=this.getProps();d?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Es(u).point)},s=(u,d)=>{const{drag:h,dragPropagation:p,onDragStart:g}=this.getProps();if(h&&!p&&(this.openDragLock&&this.openDragLock(),this.openDragLock=gE(h),!this.openDragLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Et(y=>{let v=this.getAxisMotionValue(y).get()||0;if(tn.test(v)){const{projection:C}=this.visualElement;if(C&&C.layout){const T=C.layout.layoutBox[y];T&&(v=ct(T)*(parseFloat(v)/100))}}this.originPoint[y]=v}),g&&De.postRender(()=>g(u,d)),kl(this.visualElement,"transform");const{animationState:f}=this.visualElement;f&&f.setActive("whileDrag",!0)},o=(u,d)=>{const{dragPropagation:h,dragDirectionLock:p,onDirectionLock:g,onDrag:f}=this.getProps();if(!h&&!this.openDragLock)return;const{offset:y}=d;if(p&&this.currentDirection===null){this.currentDirection=bE(y),this.currentDirection!==null&&g&&g(this.currentDirection);return}this.updateAxis("x",d.point,y),this.updateAxis("y",d.point,y),this.visualElement.render(),f&&f(u,d)},a=(u,d)=>this.stop(u,d),c=()=>Et(u=>{var d;return this.getAnimationState(u)==="paused"&&((d=this.getAxisMotionValue(u).animation)==null?void 0:d.play())}),{dragSnapToOrigin:l}=this.getProps();this.panSession=new qv(e,{onSessionStart:r,onStart:s,onMove:o,onSessionEnd:a,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:l,contextWindow:Wv(this.visualElement)})}stop(e,n){const i=this.isDragging;if(this.cancel(),!i)return;const{velocity:r}=n;this.startAnimation(r);const{onDragEnd:s}=this.getProps();s&&De.postRender(()=>s(e,n))}cancel(){this.isDragging=!1;const{projection:e,animationState:n}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:i}=this.getProps();!i&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(e,n,i){const{drag:r}=this.getProps();if(!i||!Bs(e,r,this.currentDirection))return;const s=this.getAxisMotionValue(e);let o=this.originPoint[e]+i[e];this.constraints&&this.constraints[e]&&(o=uE(o,this.constraints[e],this.elastic[e])),s.set(o)}resolveConstraints(){var s;const{dragConstraints:e,dragElastic:n}=this.getProps(),i=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(s=this.visualElement.projection)==null?void 0:s.layout,r=this.constraints;e&&qi(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&i?this.constraints=dE(i.layoutBox,e):this.constraints=!1,this.elastic=mE(n),r!==this.constraints&&i&&this.constraints&&!this.hasMutatedConstraints&&Et(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=pE(i.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:n}=this.getProps();if(!e||!qi(e))return!1;const i=e.current;En(i!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:r}=this.visualElement;if(!r||!r.layout)return!1;const s=oE(i,r.root,this.visualElement.getTransformPagePoint());let o=fE(r.layout.layoutBox,s);if(n){const a=n(Jx(o));this.hasMutatedConstraints=!!a,a&&(o=jv(a))}return o}startAnimation(e){const{drag:n,dragMomentum:i,dragElastic:r,dragTransition:s,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),c=this.constraints||{},l=Et(u=>{if(!Bs(u,n,this.currentDirection))return;let d=c&&c[u]||{};o&&(d={min:0,max:0});const h=r?200:1e6,p=r?40:1e7,g={type:"inertia",velocity:i?e[u]:0,bounceStiffness:h,bounceDamping:p,timeConstant:750,restDelta:1,restSpeed:10,...s,...d};return this.startAxisValueAnimation(u,g)});return Promise.all(l).then(a)}startAxisValueAnimation(e,n){const i=this.getAxisMotionValue(e);return kl(this.visualElement,e),i.start(md(e,i,0,n,this.visualElement,!1))}stopAnimation(){Et(e=>this.getAxisMotionValue(e).stop())}pauseAnimation(){Et(e=>{var n;return(n=this.getAxisMotionValue(e).animation)==null?void 0:n.pause()})}getAnimationState(e){var n;return(n=this.getAxisMotionValue(e).animation)==null?void 0:n.state}getAxisMotionValue(e){const n=`_drag${e.toUpperCase()}`,i=this.visualElement.getProps(),r=i[n];return r||this.visualElement.getValue(e,(i.initial?i.initial[e]:void 0)||0)}snapToCursor(e){Et(n=>{const{drag:i}=this.getProps();if(!Bs(n,i,this.currentDirection))return;const{projection:r}=this.visualElement,s=this.getAxisMotionValue(n);if(r&&r.layout){const{min:o,max:a}=r.layout.layoutBox[n];s.set(e[n]-Oe(o,a,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:n}=this.getProps(),{projection:i}=this.visualElement;if(!qi(n)||!i||!this.constraints)return;this.stopAnimation();const r={x:0,y:0};Et(o=>{const a=this.getAxisMotionValue(o);if(a&&this.constraints!==!1){const c=a.get();r[o]=hE({min:c,max:c},this.constraints[o])}});const{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",i.root&&i.root.updateScroll(),i.updateLayout(),this.resolveConstraints(),Et(o=>{if(!Bs(o,e,null))return;const a=this.getAxisMotionValue(o),{min:c,max:l}=this.constraints[o];a.set(Oe(c,l,r[o]))})}addListeners(){if(!this.visualElement.current)return;vE.set(this.visualElement,this);const e=this.visualElement.current,n=Qr(e,"pointerdown",c=>{const{drag:l,dragListener:u=!0}=this.getProps();l&&u&&this.start(c)}),i=()=>{const{dragConstraints:c}=this.getProps();qi(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,s=r.addEventListener("measure",i);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),De.read(i);const o=fs(window,"resize",()=>this.scalePositionWithinConstraints()),a=r.addEventListener("didUpdate",({delta:c,hasLayoutChanged:l})=>{this.isDragging&&l&&(Et(u=>{const d=this.getAxisMotionValue(u);d&&(this.originPoint[u]+=c[u].translate,d.set(d.get()+c[u].translate))}),this.visualElement.render())});return()=>{o(),n(),s(),a&&a()}}getProps(){const e=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:i=!1,dragPropagation:r=!1,dragConstraints:s=!1,dragElastic:o=Vl,dragMomentum:a=!0}=e;return{...e,drag:n,dragDirectionLock:i,dragPropagation:r,dragConstraints:s,dragElastic:o,dragMomentum:a}}}function Bs(t,e,n){return(e===!0||e===t)&&(n===null||n===t)}function bE(t,e=10){let n=null;return Math.abs(t.y)>e?n="y":Math.abs(t.x)>e&&(n="x"),n}class SE extends ni{constructor(e){super(e),this.removeGroupControls=It,this.removeListeners=It,this.controls=new yE(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||It}unmount(){this.removeGroupControls(),this.removeListeners()}}const qh=t=>(e,n)=>{t&&De.postRender(()=>t(e,n))};class TE extends ni{constructor(){super(...arguments),this.removePointerDownListener=It}onPointerDown(e){this.session=new qv(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Wv(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:n,onPan:i,onPanEnd:r}=this.node.getProps();return{onSessionStart:qh(e),onStart:qh(n),onMove:i,onEnd:(s,o)=>{delete this.session,r&&De.postRender(()=>r(s,o))}}}mount(){this.removePointerDownListener=Qr(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const To={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Gh(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const Fr={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(le.test(t))t=parseFloat(t);else return t;const n=Gh(t,e.target.x),i=Gh(t,e.target.y);return`${n}% ${i}%`}},kE={correct:(t,{treeScale:e,projectionDelta:n})=>{const i=t,r=Kn.parse(t);if(r.length>5)return i;const s=Kn.createTransformer(t),o=typeof r[0]!="number"?1:0,a=n.x.scale*e.x,c=n.y.scale*e.y;r[0+o]/=a,r[1+o]/=c;const l=Oe(a,c,.5);return typeof r[2+o]=="number"&&(r[2+o]/=l),typeof r[3+o]=="number"&&(r[3+o]/=l),s(r)}};class CE extends B.Component{componentDidMount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:i,layoutId:r}=this.props,{projection:s}=e;Lw(wE),s&&(n.group&&n.group.add(s),i&&i.register&&r&&i.register(s),s.root.didUpdate(),s.addEventListener("animationComplete",()=>{this.safeToRemove()}),s.setOptions({...s.options,onExitComplete:()=>this.safeToRemove()})),To.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:n,visualElement:i,drag:r,isPresent:s}=this.props,{projection:o}=i;return o&&(o.isPresent=s,r||e.layoutDependency!==n||n===void 0||e.isPresent!==s?o.willUpdate():this.safeToRemove(),e.isPresent!==s&&(s?o.promote():o.relegate()||De.postRender(()=>{const a=o.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),Wu.postRender(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:i}=this.props,{projection:r}=e;r&&(r.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(r),i&&i.deregister&&i.deregister(r))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function Zv(t){const[e,n]=H0(),i=B.useContext(Lu);return E.jsx(CE,{...t,layoutGroup:i,switchLayoutGroup:B.useContext(Y0),isPresent:e,safeToRemove:n})}const wE={borderRadius:{...Fr,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Fr,borderTopRightRadius:Fr,borderBottomLeftRadius:Fr,borderBottomRightRadius:Fr,boxShadow:kE};function xE(t,e,n){const i=at(t)?t:fr(t);return i.start(md("",i,e,n)),i.animation}const EE=(t,e)=>t.depth-e.depth;class PE{constructor(){this.children=[],this.isDirty=!1}add(e){ed(this.children,e),this.isDirty=!0}remove(e){td(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(EE),this.isDirty=!1,this.children.forEach(e)}}function RE(t,e){const n=pt.now(),i=({timestamp:r})=>{const s=r-n;s>=e&&(Gn(i),t(s-e))};return De.setup(i,!0),()=>Gn(i)}const Yv=["TopLeft","TopRight","BottomLeft","BottomRight"],AE=Yv.length,Kh=t=>typeof t=="string"?parseFloat(t):t,Zh=t=>typeof t=="number"||le.test(t);function IE(t,e,n,i,r,s){r?(t.opacity=Oe(0,n.opacity??1,_E(i)),t.opacityExit=Oe(e.opacity??1,0,ME(i))):s&&(t.opacity=Oe(e.opacity??1,n.opacity??1,i));for(let o=0;o<AE;o++){const a=`border${Yv[o]}Radius`;let c=Yh(e,a),l=Yh(n,a);if(c===void 0&&l===void 0)continue;c||(c=0),l||(l=0),c===0||l===0||Zh(c)===Zh(l)?(t[a]=Math.max(Oe(Kh(c),Kh(l),i),0),(tn.test(l)||tn.test(c))&&(t[a]+="%")):t[a]=l}(e.rotate||n.rotate)&&(t.rotate=Oe(e.rotate||0,n.rotate||0,i))}function Yh(t,e){return t[e]!==void 0?t[e]:t.borderRadius}const _E=Jv(0,.5,xv),ME=Jv(.5,.95,It);function Jv(t,e,n){return i=>i<t?0:i>e?1:n(ds(t,e,i))}function Jh(t,e){t.min=e.min,t.max=e.max}function xt(t,e){Jh(t.x,e.x),Jh(t.y,e.y)}function Xh(t,e){t.translate=e.translate,t.scale=e.scale,t.originPoint=e.originPoint,t.origin=e.origin}function Qh(t,e,n,i,r){return t-=e,t=zo(t,1/n,i),r!==void 0&&(t=zo(t,1/r,i)),t}function OE(t,e=0,n=1,i=.5,r,s=t,o=t){if(tn.test(e)&&(e=parseFloat(e),e=Oe(o.min,o.max,e/100)-o.min),typeof e!="number")return;let a=Oe(s.min,s.max,i);t===s&&(a-=e),t.min=Qh(t.min,e,n,a,r),t.max=Qh(t.max,e,n,a,r)}function ep(t,e,[n,i,r],s,o){OE(t,e[n],e[i],e[r],e.scale,s,o)}const DE=["x","scaleX","originX"],NE=["y","scaleY","originY"];function tp(t,e,n,i){ep(t.x,e,DE,n?n.x:void 0,i?i.x:void 0),ep(t.y,e,NE,n?n.y:void 0,i?i.y:void 0)}function np(t){return t.translate===0&&t.scale===1}function Xv(t){return np(t.x)&&np(t.y)}function ip(t,e){return t.min===e.min&&t.max===e.max}function LE(t,e){return ip(t.x,e.x)&&ip(t.y,e.y)}function rp(t,e){return Math.round(t.min)===Math.round(e.min)&&Math.round(t.max)===Math.round(e.max)}function Qv(t,e){return rp(t.x,e.x)&&rp(t.y,e.y)}function sp(t){return ct(t.x)/ct(t.y)}function op(t,e){return t.translate===e.translate&&t.scale===e.scale&&t.originPoint===e.originPoint}class VE{constructor(){this.members=[]}add(e){ed(this.members,e),e.scheduleRender()}remove(e){if(td(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(e){const n=this.members.findIndex(r=>e===r);if(n===0)return!1;let i;for(let r=n;r>=0;r--){const s=this.members[r];if(s.isPresent!==!1){i=s;break}}return i?(this.promote(i),!0):!1}promote(e,n){const i=this.lead;if(e!==i&&(this.prevLead=i,this.lead=e,e.show(),i)){i.instance&&i.scheduleRender(),e.scheduleRender(),e.resumeFrom=i,n&&(e.resumeFrom.preserveOpacity=!0),i.snapshot&&(e.snapshot=i.snapshot,e.snapshot.latestValues=i.animationValues||i.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:r}=e.options;r===!1&&i.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:n,resumingFrom:i}=e;n.onExitComplete&&n.onExitComplete(),i&&i.options.onExitComplete&&i.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function FE(t,e,n){let i="";const r=t.x.translate/e.x,s=t.y.translate/e.y,o=(n==null?void 0:n.z)||0;if((r||s||o)&&(i=`translate3d(${r}px, ${s}px, ${o}px) `),(e.x!==1||e.y!==1)&&(i+=`scale(${1/e.x}, ${1/e.y}) `),n){const{transformPerspective:l,rotate:u,rotateX:d,rotateY:h,skewX:p,skewY:g}=n;l&&(i=`perspective(${l}px) ${i}`),u&&(i+=`rotate(${u}deg) `),d&&(i+=`rotateX(${d}deg) `),h&&(i+=`rotateY(${h}deg) `),p&&(i+=`skewX(${p}deg) `),g&&(i+=`skewY(${g}deg) `)}const a=t.x.scale*e.x,c=t.y.scale*e.y;return(a!==1||c!==1)&&(i+=`scale(${a}, ${c})`),i||"none"}function ey(t){return $0(t)&&"ownerSVGElement"in t}function jE(t){return ey(t)&&t.tagName==="svg"}const cc=["","X","Y","Z"],UE={visibility:"hidden"},BE=1e3;let $E=0;function lc(t,e,n,i){const{latestValues:r}=e;r[t]&&(n[t]=r[t],e.setStaticValue(t,0),i&&(i[t]=0))}function ty(t){if(t.hasCheckedOptimisedAppear=!0,t.root===t)return;const{visualElement:e}=t.options;if(!e)return;const n=cv(e);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:r,layoutId:s}=t.options;window.MotionCancelOptimisedAnimation(n,"transform",De,!(r||s))}const{parent:i}=t;i&&!i.hasCheckedOptimisedAppear&&ty(i)}function ny({attachResizeListener:t,defaultParent:e,measureScroll:n,checkIsScrollRoot:i,resetTransform:r}){return class{constructor(o={},a=e==null?void 0:e()){this.id=$E++,this.animationId=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(WE),this.nodes.forEach(YE),this.nodes.forEach(JE),this.nodes.forEach(qE)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=o,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 PE)}addEventListener(o,a){return this.eventHandlers.has(o)||this.eventHandlers.set(o,new nd),this.eventHandlers.get(o).add(a)}notifyListeners(o,...a){const c=this.eventHandlers.get(o);c&&c.notify(...a)}hasListeners(o){return this.eventHandlers.has(o)}mount(o){if(this.instance)return;this.isSVG=ey(o)&&!jE(o),this.instance=o;const{layoutId:a,layout:c,visualElement:l}=this.options;if(l&&!l.current&&l.mount(o),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||a)&&(this.isLayoutDirty=!0),t){let u;const d=()=>this.root.updateBlockedByResize=!1;t(o,()=>{this.root.updateBlockedByResize=!0,u&&u(),u=RE(d,250),To.hasAnimatedSinceResize&&(To.hasAnimatedSinceResize=!1,this.nodes.forEach(cp))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&l&&(a||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:h,layout:p})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||l.getDefaultTransition()||nP,{onLayoutAnimationStart:f,onLayoutAnimationComplete:y}=l.getProps(),v=!this.targetLayout||!Qv(this.targetLayout,p),C=!d&&h;if(this.options.layoutRoot||this.resumeFrom||C||d&&(v||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const T={...id(g,"layout"),onPlay:f,onComplete:y};(l.shouldReduceMotion||this.options.layoutRoot)&&(T.delay=0,T.type=!1),this.startAnimation(T),this.setAnimationOrigin(u,C)}else d||cp(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=p})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const o=this.getStack();o&&o.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),Gn(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(XE),this.animationId++)}getTransformTemplate(){const{visualElement:o}=this.options;return o&&o.getProps().transformTemplate}willUpdate(o=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&ty(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const d=this.path[u];d.shouldResetTransform=!0,d.updateScroll("snapshot"),d.options.layoutRoot&&d.willUpdate(!1)}const{layoutId:a,layout:c}=this.options;if(a===void 0&&!c)return;const l=this.getTransformTemplate();this.prevTransformTemplateValue=l?l(this.latestValues,""):void 0,this.updateSnapshot(),o&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(ap);return}this.isUpdating||this.nodes.forEach(KE),this.isUpdating=!1,this.nodes.forEach(ZE),this.nodes.forEach(HE),this.nodes.forEach(zE),this.clearAllSnapshots();const a=pt.now();nt.delta=Pn(0,1e3/60,a-nt.timestamp),nt.timestamp=a,nt.isProcessing=!0,ec.update.process(nt),ec.preRender.process(nt),ec.render.process(nt),nt.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,Wu.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(GE),this.sharedNodes.forEach(QE)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,De.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){De.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!ct(this.snapshot.measuredBox.x)&&!ct(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 o=this.layout;this.layout=this.measure(!1),this.layoutCorrected=Be(),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,o?o.layoutBox:void 0)}updateScroll(o="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===o&&(a=!1),a&&this.instance){const c=i(this.instance);this.scroll={animationId:this.root.animationId,phase:o,isRoot:c,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!r)return;const o=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!Xv(this.projectionDelta),c=this.getTransformTemplate(),l=c?c(this.latestValues,""):void 0,u=l!==this.prevTransformTemplateValue;o&&this.instance&&(a||di(this.latestValues)||u)&&(r(this.instance,l),this.shouldResetTransform=!1,this.scheduleRender())}measure(o=!0){const a=this.measurePageBox();let c=this.removeElementScroll(a);return o&&(c=this.removeTransform(c)),iP(c),{animationId:this.root.animationId,measuredBox:a,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var l;const{visualElement:o}=this.options;if(!o)return Be();const a=o.measureViewportBox();if(!(((l=this.scroll)==null?void 0:l.wasRoot)||this.path.some(rP))){const{scroll:u}=this.root;u&&(Yi(a.x,u.offset.x),Yi(a.y,u.offset.y))}return a}removeElementScroll(o){var c;const a=Be();if(xt(a,o),(c=this.scroll)!=null&&c.wasRoot)return a;for(let l=0;l<this.path.length;l++){const u=this.path[l],{scroll:d,options:h}=u;u!==this.root&&d&&h.layoutScroll&&(d.wasRoot&&xt(a,o),Yi(a.x,d.offset.x),Yi(a.y,d.offset.y))}return a}applyTransform(o,a=!1){const c=Be();xt(c,o);for(let l=0;l<this.path.length;l++){const u=this.path[l];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&Ji(c,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),di(u.latestValues)&&Ji(c,u.latestValues)}return di(this.latestValues)&&Ji(c,this.latestValues),c}removeTransform(o){const a=Be();xt(a,o);for(let c=0;c<this.path.length;c++){const l=this.path[c];if(!l.instance||!di(l.latestValues))continue;Nl(l.latestValues)&&l.updateSnapshot();const u=Be(),d=l.measurePageBox();xt(u,d),tp(a,l.latestValues,l.snapshot?l.snapshot.layoutBox:void 0,u)}return di(this.latestValues)&&tp(a,this.latestValues),a}setTargetDelta(o){this.targetDelta=o,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(o){this.options={...this.options,...o,crossfade:o.crossfade!==void 0?o.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!==nt.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(o=!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(!(o||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(h=this.parent)!=null&&h.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:d}=this.options;if(!(!this.layout||!(u||d))){if(this.resolvedRelativeTargetAt=nt.timestamp,!this.targetDelta&&!this.relativeTarget){const p=this.getClosestProjectingParent();p&&p.layout&&this.animationProgress!==1?(this.relativeParent=p,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Be(),this.relativeTargetOrigin=Be(),ts(this.relativeTargetOrigin,this.layout.layoutBox,p.layout.layoutBox),xt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=Be(),this.targetWithTransforms=Be()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),rE(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):xt(this.target,this.layout.layoutBox),Hv(this.target,this.targetDelta)):xt(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=Be(),this.relativeTargetOrigin=Be(),ts(this.relativeTargetOrigin,this.target,p.target),xt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||Nl(this.parent.latestValues)||$v(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 o=this.getLead(),a=!!this.resumingFrom||this!==o;let c=!0;if((this.isProjectionDirty||(g=this.parent)!=null&&g.isProjectionDirty)&&(c=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===nt.timestamp&&(c=!1),c)return;const{layout:l,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||!(l||u))return;xt(this.layoutCorrected,this.layout.layoutBox);const d=this.treeScale.x,h=this.treeScale.y;sE(this.layoutCorrected,this.treeScale,this.path,a),o.layout&&!o.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(o.target=o.layout.layoutBox,o.targetWithTransforms=Be());const{target:p}=o;if(!p){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Xh(this.prevProjectionDelta.x,this.projectionDelta.x),Xh(this.prevProjectionDelta.y,this.projectionDelta.y)),es(this.projectionDelta,this.layoutCorrected,p,this.latestValues),(this.treeScale.x!==d||this.treeScale.y!==h||!op(this.projectionDelta.x,this.prevProjectionDelta.x)||!op(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",p))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(o=!0){var a;if((a=this.options.visualElement)==null||a.scheduleRender(),o){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Zi(),this.projectionDelta=Zi(),this.projectionDeltaWithTransform=Zi()}setAnimationOrigin(o,a=!1){const c=this.snapshot,l=c?c.latestValues:{},u={...this.latestValues},d=Zi();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const h=Be(),p=c?c.source:void 0,g=this.layout?this.layout.source:void 0,f=p!==g,y=this.getStack(),v=!y||y.members.length<=1,C=!!(f&&!v&&this.options.crossfade===!0&&!this.path.some(tP));this.animationProgress=0;let T;this.mixTargetDelta=k=>{const b=k/1e3;lp(d.x,o.x,b),lp(d.y,o.y,b),this.setTargetDelta(d),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(ts(h,this.layout.layoutBox,this.relativeParent.layout.layoutBox),eP(this.relativeTarget,this.relativeTargetOrigin,h,b),T&&LE(this.relativeTarget,T)&&(this.isProjectionDirty=!1),T||(T=Be()),xt(T,this.relativeTarget)),f&&(this.animationValues=u,IE(u,l,this.latestValues,b,C,v)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=b},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(o){var a,c,l;this.notifyListeners("animationStart"),(a=this.currentAnimation)==null||a.stop(),(l=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||l.stop(),this.pendingAnimation&&(Gn(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=De.update(()=>{To.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=fr(0)),this.currentAnimation=xE(this.motionValue,[0,1e3],{...o,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),o.onUpdate&&o.onUpdate(u)},onStop:()=>{},onComplete:()=>{o.onComplete&&o.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 o=this.getStack();o&&o.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(BE),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const o=this.getLead();let{targetWithTransforms:a,target:c,layout:l,latestValues:u}=o;if(!(!a||!c||!l)){if(this!==o&&this.layout&&l&&iy(this.options.animationType,this.layout.layoutBox,l.layoutBox)){c=this.target||Be();const d=ct(this.layout.layoutBox.x);c.x.min=o.target.x.min,c.x.max=c.x.min+d;const h=ct(this.layout.layoutBox.y);c.y.min=o.target.y.min,c.y.max=c.y.min+h}xt(a,c),Ji(a,u),es(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(o,a){this.sharedNodes.has(o)||this.sharedNodes.set(o,new VE),this.sharedNodes.get(o).add(a);const l=a.options.initialPromotionConfig;a.promote({transition:l?l.transition:void 0,preserveFollowOpacity:l&&l.shouldPreserveFollowOpacity?l.shouldPreserveFollowOpacity(a):void 0})}isLead(){const o=this.getStack();return o?o.lead===this:!0}getLead(){var a;const{layoutId:o}=this.options;return o?((a=this.getStack())==null?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:o}=this.options;return o?(a=this.getStack())==null?void 0:a.prevLead:void 0}getStack(){const{layoutId:o}=this.options;if(o)return this.root.sharedNodes.get(o)}promote({needsReset:o,transition:a,preserveFollowOpacity:c}={}){const l=this.getStack();l&&l.promote(this,c),o&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const o=this.getStack();return o?o.relegate(this):!1}resetSkewAndRotation(){const{visualElement:o}=this.options;if(!o)return;let a=!1;const{latestValues:c}=o;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(a=!0),!a)return;const l={};c.z&&lc("z",o,l,this.animationValues);for(let u=0;u<cc.length;u++)lc(`rotate${cc[u]}`,o,l,this.animationValues),lc(`skew${cc[u]}`,o,l,this.animationValues);o.render();for(const u in l)o.setStaticValue(u,l[u]),this.animationValues&&(this.animationValues[u]=l[u]);o.scheduleRender()}getProjectionStyles(o){if(!this.instance||this.isSVG)return;if(!this.isVisible)return UE;const a={visibility:""},c=this.getTransformTemplate();if(this.needsReset)return this.needsReset=!1,a.opacity="",a.pointerEvents=bo(o==null?void 0:o.pointerEvents)||"",a.transform=c?c(this.latestValues,""):"none",a;const l=this.getLead();if(!this.projectionDelta||!this.layout||!l.target){const p={};return this.options.layoutId&&(p.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,p.pointerEvents=bo(o==null?void 0:o.pointerEvents)||""),this.hasProjected&&!di(this.latestValues)&&(p.transform=c?c({},""):"none",this.hasProjected=!1),p}const u=l.animationValues||l.latestValues;this.applyTransformsToTarget(),a.transform=FE(this.projectionDeltaWithTransform,this.treeScale,u),c&&(a.transform=c(u,a.transform));const{x:d,y:h}=this.projectionDelta;a.transformOrigin=`${d.origin*100}% ${h.origin*100}% 0`,l.animationValues?a.opacity=l===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:a.opacity=l===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const p in as){if(u[p]===void 0)continue;const{correct:g,applyTo:f,isCSSVariable:y}=as[p],v=a.transform==="none"?u[p]:g(u[p],l);if(f){const C=f.length;for(let T=0;T<C;T++)a[f[T]]=v}else y?this.options.visualElement.renderState.vars[p]=v:a[p]=v}return this.options.layoutId&&(a.pointerEvents=l===this?bo(o==null?void 0:o.pointerEvents)||"":"none"),a}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(o=>{var a;return(a=o.currentAnimation)==null?void 0:a.stop()}),this.root.nodes.forEach(ap),this.root.sharedNodes.clear()}}}function HE(t){t.updateLayout()}function zE(t){var n;const e=((n=t.resumeFrom)==null?void 0:n.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&e&&t.hasListeners("didUpdate")){const{layoutBox:i,measuredBox:r}=t.layout,{animationType:s}=t.options,o=e.source!==t.layout.source;s==="size"?Et(d=>{const h=o?e.measuredBox[d]:e.layoutBox[d],p=ct(h);h.min=i[d].min,h.max=h.min+p}):iy(s,e.layoutBox,i)&&Et(d=>{const h=o?e.measuredBox[d]:e.layoutBox[d],p=ct(i[d]);h.max=h.min+p,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[d].max=t.relativeTarget[d].min+p)});const a=Zi();es(a,i,e.layoutBox);const c=Zi();o?es(c,t.applyTransform(r,!0),e.measuredBox):es(c,i,e.layoutBox);const l=!Xv(a);let u=!1;if(!t.resumeFrom){const d=t.getClosestProjectingParent();if(d&&!d.resumeFrom){const{snapshot:h,layout:p}=d;if(h&&p){const g=Be();ts(g,e.layoutBox,h.layoutBox);const f=Be();ts(f,i,p.layoutBox),Qv(g,f)||(u=!0),d.options.layoutRoot&&(t.relativeTarget=f,t.relativeTargetOrigin=g,t.relativeParent=d)}}}t.notifyListeners("didUpdate",{layout:i,snapshot:e,delta:c,layoutDelta:a,hasLayoutChanged:l,hasRelativeLayoutChanged:u})}else if(t.isLead()){const{onExitComplete:i}=t.options;i&&i()}t.options.transition=void 0}function WE(t){t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function qE(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function GE(t){t.clearSnapshot()}function ap(t){t.clearMeasurements()}function KE(t){t.isLayoutDirty=!1}function ZE(t){const{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function cp(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function YE(t){t.resolveTargetDelta()}function JE(t){t.calcProjection()}function XE(t){t.resetSkewAndRotation()}function QE(t){t.removeLeadSnapshot()}function lp(t,e,n){t.translate=Oe(e.translate,0,n),t.scale=Oe(e.scale,1,n),t.origin=e.origin,t.originPoint=e.originPoint}function up(t,e,n,i){t.min=Oe(e.min,n.min,i),t.max=Oe(e.max,n.max,i)}function eP(t,e,n,i){up(t.x,e.x,n.x,i),up(t.y,e.y,n.y,i)}function tP(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const nP={duration:.45,ease:[.4,0,.1,1]},dp=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),fp=dp("applewebkit/")&&!dp("chrome/")?Math.round:It;function hp(t){t.min=fp(t.min),t.max=fp(t.max)}function iP(t){hp(t.x),hp(t.y)}function iy(t,e,n){return t==="position"||t==="preserve-aspect"&&!iE(sp(e),sp(n),.2)}function rP(t){var e;return t!==t.root&&((e=t.scroll)==null?void 0:e.wasRoot)}const sP=ny({attachResizeListener:(t,e)=>fs(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),uc={current:void 0},ry=ny({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!uc.current){const t=new sP({});t.mount(window),t.setOptions({layoutScroll:!0}),uc.current=t}return uc.current},resetTransform:(t,e)=>{t.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),oP={pan:{Feature:TE},drag:{Feature:SE,ProjectionNode:ry,MeasureLayout:Zv}};function aP(t,e,n){if(t instanceof EventTarget)return[t];if(typeof t=="string"){let i=document;const r=(n==null?void 0:n[t])??i.querySelectorAll(t);return r?Array.from(r):[]}return Array.from(t)}function sy(t,e){const n=aP(t),i=new AbortController,r={passive:!0,...e,signal:i.signal};return[n,r,()=>i.abort()]}function pp(t){return!(t.pointerType==="touch"||Kv())}function cP(t,e,n={}){const[i,r,s]=sy(t,n),o=a=>{if(!pp(a))return;const{target:c}=a,l=e(c,a);if(typeof l!="function"||!c)return;const u=d=>{pp(d)&&(l(d),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,r)};return i.forEach(a=>{a.addEventListener("pointerenter",o,r)}),s}function mp(t,e,n){const{props:i}=t;t.animationState&&i.whileHover&&t.animationState.setActive("whileHover",n==="Start");const r="onHover"+n,s=i[r];s&&De.postRender(()=>s(e,Es(e)))}class lP extends ni{mount(){const{current:e}=this.node;e&&(this.unmount=cP(e,(n,i)=>(mp(this.node,i,"Start"),r=>mp(this.node,r,"End"))))}unmount(){}}class uP extends ni{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch{e=!0}!e||!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=ws(fs(this.node.current,"focus",()=>this.onFocus()),fs(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const oy=(t,e)=>e?t===e?!0:oy(t,e.parentElement):!1,dP=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function fP(t){return dP.has(t.tagName)||t.tabIndex!==-1}const ko=new WeakSet;function gp(t){return e=>{e.key==="Enter"&&t(e)}}function dc(t,e){t.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}const hP=(t,e)=>{const n=t.currentTarget;if(!n)return;const i=gp(()=>{if(ko.has(n))return;dc(n,"down");const r=gp(()=>{dc(n,"up")}),s=()=>dc(n,"cancel");n.addEventListener("keyup",r,e),n.addEventListener("blur",s,e)});n.addEventListener("keydown",i,e),n.addEventListener("blur",()=>n.removeEventListener("keydown",i),e)};function vp(t){return gd(t)&&!Kv()}function pP(t,e,n={}){const[i,r,s]=sy(t,n),o=a=>{const c=a.currentTarget;if(!vp(a))return;ko.add(c);const l=e(c,a),u=(p,g)=>{window.removeEventListener("pointerup",d),window.removeEventListener("pointercancel",h),ko.has(c)&&ko.delete(c),vp(p)&&typeof l=="function"&&l(p,{success:g})},d=p=>{u(p,c===window||c===document||n.useGlobalTarget||oy(c,p.target))},h=p=>{u(p,!1)};window.addEventListener("pointerup",d,r),window.addEventListener("pointercancel",h,r)};return i.forEach(a=>{(n.useGlobalTarget?window:a).addEventListener("pointerdown",o,r),Uu(a)&&(a.addEventListener("focus",l=>hP(l,r)),!fP(a)&&!a.hasAttribute("tabindex")&&(a.tabIndex=0))}),s}function yp(t,e,n){const{props:i}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&i.whileTap&&t.animationState.setActive("whileTap",n==="Start");const r="onTap"+(n==="End"?"":n),s=i[r];s&&De.postRender(()=>s(e,Es(e)))}class mP extends ni{mount(){const{current:e}=this.node;e&&(this.unmount=pP(e,(n,i)=>(yp(this.node,i,"Start"),(r,{success:s})=>yp(this.node,r,s?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Fl=new WeakMap,fc=new WeakMap,gP=t=>{const e=Fl.get(t.target);e&&e(t)},vP=t=>{t.forEach(gP)};function yP({root:t,...e}){const n=t||document;fc.has(n)||fc.set(n,{});const i=fc.get(n),r=JSON.stringify(e);return i[r]||(i[r]=new IntersectionObserver(vP,{root:t,...e})),i[r]}function bP(t,e,n){const i=yP(e);return Fl.set(t,n),i.observe(t),()=>{Fl.delete(t),i.unobserve(t)}}const SP={some:0,all:1};class TP extends ni{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:n,margin:i,amount:r="some",once:s}=e,o={root:n?n.current:void 0,rootMargin:i,threshold:typeof r=="number"?r:SP[r]},a=c=>{const{isIntersecting:l}=c;if(this.isInView===l||(this.isInView=l,s&&!l&&this.hasEnteredView))return;l&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",l);const{onViewportEnter:u,onViewportLeave:d}=this.node.getProps(),h=l?u:d;h&&h(c)};return bP(this.node.current,o,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:n}=this.node;["amount","margin","root"].some(kP(e,n))&&this.startObserver()}unmount(){}}function kP({viewport:t={}},{viewport:e={}}={}){return n=>t[n]!==e[n]}const CP={inView:{Feature:TP},tap:{Feature:mP},focus:{Feature:uP},hover:{Feature:lP}},wP={layout:{ProjectionNode:ry,MeasureLayout:Zv}},jl={current:null},ay={current:!1};function xP(){if(ay.current=!0,!!Fu)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>jl.current=t.matches;t.addListener(e),e()}else jl.current=!1}const EP=new WeakMap;function PP(t,e,n){for(const i in e){const r=e[i],s=n[i];if(at(r))t.addValue(i,r);else if(at(s))t.addValue(i,fr(r,{owner:t}));else if(s!==r)if(t.hasValue(i)){const o=t.getValue(i);o.liveStyle===!0?o.jump(r):o.hasAnimated||o.set(r)}else{const o=t.getStaticValue(i);t.addValue(i,fr(o!==void 0?o:r,{owner:t}))}}for(const i in n)e[i]===void 0&&t.removeValue(i);return e}const cy=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),ly=t=>/^0[^.\s]+$/u.test(t),RP={test:t=>t==="auto",parse:t=>t},uy=t=>e=>e.test(t),dy=[Tr,le,tn,Fn,Fw,Vw,RP],bp=t=>dy.find(uy(t)),AP=[...dy,qe,Kn],IP=t=>AP.find(uy(t)),_P=new Set(["brightness","contrast","saturate","opacity"]);function MP(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[i]=n.match(rd)||[];if(!i)return t;const r=n.replace(i,"");let s=_P.has(e)?1:0;return i!==n&&(s*=100),e+"("+s+r+")"}const OP=/\b([a-z-]*)\(.*?\)/gu,Ul={...Kn,getAnimatableNone:t=>{const e=t.match(OP);return e?e.map(MP).join(" "):t}},DP={...Ku,color:qe,backgroundColor:qe,outlineColor:qe,fill:qe,stroke:qe,borderColor:qe,borderTopColor:qe,borderRightColor:qe,borderBottomColor:qe,borderLeftColor:qe,filter:Ul,WebkitFilter:Ul},fy=t=>DP[t];function hy(t,e){let n=fy(t);return n!==Ul&&(n=Kn),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const Sp=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class NP{scrapeMotionValuesFromProps(e,n,i){return{}}constructor({parent:e,props:n,presenceContext:i,reducedMotionConfig:r,blockInitialAnimation:s,visualState:o},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=hd,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=pt.now();this.renderScheduledAt<h&&(this.renderScheduledAt=h,De.render(this.render,!1,!0))};const{latestValues:c,renderState:l}=o;this.latestValues=c,this.baseTarget={...c},this.initialValues=n.initial?{...c}:{},this.renderState=l,this.parent=e,this.props=n,this.presenceContext=i,this.depth=e?e.depth+1:0,this.reducedMotionConfig=r,this.options=a,this.blockInitialAnimation=!!s,this.isControllingVariants=ha(n),this.isVariantNode=K0(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:u,...d}=this.scrapeMotionValuesFromProps(n,{},this);for(const h in d){const p=d[h];c[h]!==void 0&&at(p)&&p.set(c[h],!1)}}mount(e){this.current=e,EP.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,i)=>this.bindToMotionValue(i,n)),ay.current||xP(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:jl.current,process.env.NODE_ENV!=="production"&&Bu(this.shouldReduceMotion!==!0,"You have Reduced Motion enabled on your device. Animations may not appear as expected."),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),Gn(this.notifyUpdate),Gn(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const n=this.features[e];n&&(n.unmount(),n.isMounted=!1)}this.current=null}bindToMotionValue(e,n){this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)();const i=Sr.has(e);i&&this.onBindTransform&&this.onBindTransform();const r=n.on("change",a=>{this.latestValues[e]=a,this.props.onUpdate&&De.preRender(this.notifyUpdate),i&&this.projection&&(this.projection.isTransformDirty=!0)}),s=n.on("renderRequest",this.scheduleRender);let o;window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,e,n)),this.valueSubscriptions.set(e,()=>{r(),s(),o&&o(),n.owner&&n.stop()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in dr){const n=dr[e];if(!n)continue;const{isEnabled:i,Feature:r}=n;if(!this.features[e]&&r&&i(this.props)&&(this.features[e]=new r(this)),this.features[e]){const s=this.features[e];s.isMounted?s.update():(s.mount(),s.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Be()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let i=0;i<Sp.length;i++){const r=Sp[i];this.propEventSubscriptions[r]&&(this.propEventSubscriptions[r](),delete this.propEventSubscriptions[r]);const s="on"+r,o=e[s];o&&(this.propEventSubscriptions[r]=this.on(r,o))}this.prevMotionValues=PP(this,this.scrapeMotionValuesFromProps(e,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]: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(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){const i=this.values.get(e);n!==i&&(i&&this.removeValue(e),this.bindToMotionValue(e,n),this.values.set(e,n),this.latestValues[e]=n.get())}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let i=this.values.get(e);return i===void 0&&n!==void 0&&(i=fr(n===null?void 0:n,{owner:this}),this.addValue(e,i)),i}readValue(e,n){let i=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return i!=null&&(typeof i=="string"&&(cy(i)||ly(i))?i=parseFloat(i):!IP(i)&&Kn.test(n)&&(i=hy(e,n)),this.setBaseTarget(e,at(i)?i.get():i)),at(i)?i.get():i}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){var s;const{initial:n}=this.props;let i;if(typeof n=="string"||typeof n=="object"){const o=Xu(this.props,n,(s=this.presenceContext)==null?void 0:s.custom);o&&(i=o[e])}if(n&&i!==void 0)return i;const r=this.getBaseTargetFromProps(this.props,e);return r!==void 0&&!at(r)?r:this.initialValues[e]!==void 0&&i===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new nd),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}}const LP=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function VP(t){const e=LP.exec(t);if(!e)return[,];const[,n,i,r]=e;return[`--${n??i}`,r]}const FP=4;function py(t,e,n=1){En(n<=FP,`Max CSS variable fallback depth detected in property "${t}". This may indicate a circular fallback dependency.`);const[i,r]=VP(t);if(!i)return;const s=window.getComputedStyle(e).getPropertyValue(i);if(s){const o=s.trim();return cy(o)?parseFloat(o):o}return Gu(r)?py(r,e,n+1):r}function jP(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||ly(t):!0}const UP=new Set(["auto","none","0"]);function BP(t,e,n){let i=0,r;for(;i<t.length&&!r;){const s=t[i];typeof s=="string"&&!UP.has(s)&&us(s).values.length&&(r=t[i]),i++}if(r&&n)for(const s of e)t[s]=hy(n,r)}class $P extends hd{constructor(e,n,i,r,s){super(e,n,i,r,s,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:n,name:i}=this;if(!n||!n.current)return;super.readKeyframes();for(let c=0;c<e.length;c++){let l=e[c];if(typeof l=="string"&&(l=l.trim(),Gu(l))){const u=py(l,n.current);u!==void 0&&(e[c]=u),c===e.length-1&&(this.finalKeyframe=l)}}if(this.resolveNoneKeyframes(),!Nv.has(i)||e.length!==2)return;const[r,s]=e,o=bp(r),a=bp(s);if(o!==a)if(xh(o)&&xh(a))for(let c=0;c<e.length;c++){const l=e[c];typeof l=="string"&&(e[c]=parseFloat(l))}else mi[i]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:e,name:n}=this,i=[];for(let r=0;r<e.length;r++)(e[r]===null||jP(e[r]))&&i.push(r);i.length&&BP(e,i,n)}measureInitialState(){const{element:e,unresolvedKeyframes:n,name:i}=this;if(!e||!e.current)return;i==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=mi[i](e.measureViewportBox(),window.getComputedStyle(e.current)),n[0]=this.measuredOrigin;const r=n[n.length-1];r!==void 0&&e.getValue(i,r).jump(r,!1)}measureEndState(){var a;const{element:e,name:n,unresolvedKeyframes:i}=this;if(!e||!e.current)return;const r=e.getValue(n);r&&r.jump(this.measuredOrigin,!1);const s=i.length-1,o=i[s];i[s]=mi[n](e.measureViewportBox(),window.getComputedStyle(e.current)),o!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=o),(a=this.removedTransforms)!=null&&a.length&&this.removedTransforms.forEach(([c,l])=>{e.getValue(c).set(l)}),this.resolveNoneKeyframes()}}class my extends NP{constructor(){super(...arguments),this.KeyframeResolver=$P}sortInstanceNodePosition(e,n){return e.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(e,n){return e.style?e.style[n]:void 0}removeValueFromRenderState(e,{vars:n,style:i}){delete n[e],delete i[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;at(e)&&(this.childSubscription=e.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function gy(t,{style:e,vars:n},i,r){Object.assign(t.style,e,r&&r.getProjectionStyles(i));for(const s in n)t.style.setProperty(s,n[s])}function HP(t){return window.getComputedStyle(t)}class zP extends my{constructor(){super(...arguments),this.type="html",this.renderInstance=gy}readValueFromInstance(e,n){var i;if(Sr.has(n))return(i=this.projection)!=null&&i.isProjecting?Al(n):fx(e,n);{const r=HP(e),s=(qu(n)?r.getPropertyValue(n):r[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(e,{transformPagePoint:n}){return zv(e,n)}build(e,n,i){Zu(e,n,i.transformTemplate)}scrapeMotionValuesFromProps(e,n,i){return Qu(e,n,i)}}const vy=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 WP(t,e,n,i){gy(t,e,void 0,i);for(const r in e.attrs)t.setAttribute(vy.has(r)?r:zu(r),e.attrs[r])}class qP extends my{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=Be}getBaseTargetFromProps(e,n){return e[n]}readValueFromInstance(e,n){if(Sr.has(n)){const i=fy(n);return i&&i.default||0}return n=vy.has(n)?n:zu(n),e.getAttribute(n)}scrapeMotionValuesFromProps(e,n,i){return ov(e,n,i)}build(e,n,i){nv(e,n,this.isSVGTag,i.transformTemplate,i.style)}renderInstance(e,n,i,r){WP(e,n,i,r)}mount(e){this.isSVGTag=rv(e.tagName),super.mount(e)}}const GP=(t,e)=>Ju(t)?new qP(e):new zP(e,{allowProjection:t!==B.Fragment}),KP=n2({...Zx,...CP,...oP,...wP},GP),Zn=kw(KP);var $s=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yy(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Bl={exports:{}},ZP=Bl.exports,Tp;function YP(){return Tp||(Tp=1,function(t){(function(e,n){t.exports?t.exports=n():e.log=n()})(ZP,function(){var e=function(){},n="undefined",i=typeof window!==n&&typeof window.navigator!==n&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],s={},o=null;function a(f,y){var v=f[y];if(typeof v.bind=="function")return v.bind(f);try{return Function.prototype.bind.call(v,f)}catch{return function(){return Function.prototype.apply.apply(v,[f,arguments])}}}function c(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function l(f){return f==="debug"&&(f="log"),typeof console===n?!1:f==="trace"&&i?c:console[f]!==void 0?a(console,f):console.log!==void 0?a(console,"log"):e}function u(){for(var f=this.getLevel(),y=0;y<r.length;y++){var v=r[y];this[v]=y<f?e:this.methodFactory(v,f,this.name)}if(this.log=this.debug,typeof console===n&&f<this.levels.SILENT)return"No console available for logging"}function d(f){return function(){typeof console!==n&&(u.call(this),this[f].apply(this,arguments))}}function h(f,y,v){return l(f)||d.apply(this,arguments)}function p(f,y){var v=this,C,T,k,b="loglevel";typeof f=="string"?b+=":"+f:typeof f=="symbol"&&(b=void 0);function w(I){var N=(r[I]||"silent").toUpperCase();if(!(typeof window===n||!b)){try{window.localStorage[b]=N;return}catch{}try{window.document.cookie=encodeURIComponent(b)+"="+N+";"}catch{}}}function x(){var I;if(!(typeof window===n||!b)){try{I=window.localStorage[b]}catch{}if(typeof I===n)try{var N=window.document.cookie,z=encodeURIComponent(b),K=N.indexOf(z+"=");K!==-1&&(I=/^([^;]+)/.exec(N.slice(K+z.length+1))[1])}catch{}return v.levels[I]===void 0&&(I=void 0),I}}function R(){if(!(typeof window===n||!b)){try{window.localStorage.removeItem(b)}catch{}try{window.document.cookie=encodeURIComponent(b)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}function _(I){var N=I;if(typeof N=="string"&&v.levels[N.toUpperCase()]!==void 0&&(N=v.levels[N.toUpperCase()]),typeof N=="number"&&N>=0&&N<=v.levels.SILENT)return N;throw new TypeError("log.setLevel() called with invalid level: "+I)}v.name=f,v.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},v.methodFactory=y||h,v.getLevel=function(){return k??T??C},v.setLevel=function(I,N){return k=_(I),N!==!1&&w(k),u.call(v)},v.setDefaultLevel=function(I){T=_(I),x()||v.setLevel(I,!1)},v.resetLevel=function(){k=null,R(),u.call(v)},v.enableAll=function(I){v.setLevel(v.levels.TRACE,I)},v.disableAll=function(I){v.setLevel(v.levels.SILENT,I)},v.rebuild=function(){if(o!==v&&(C=_(o.getLevel())),u.call(v),o===v)for(var I in s)s[I].rebuild()},C=_(o?o.getLevel():"WARN");var S=x();S!=null&&(k=_(S)),u.call(v)}o=new p,o.getLogger=function(f){if(typeof f!="symbol"&&typeof f!="string"||f==="")throw new TypeError("You must supply a name when creating a logger.");var y=s[f];return y||(y=s[f]=new p(f,o.methodFactory)),y};var g=typeof window!==n?window.log:void 0;return o.noConflict=function(){return typeof window!==n&&window.log===o&&(window.log=g),o},o.getLoggers=function(){return s},o.default=o,o})}(Bl)),Bl.exports}var JP=YP();const XP=yy(JP);var $l=function(t,e){return $l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(n[r]=i[r])},$l(t,e)};function Mn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");$l(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}function QP(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(u){try{l(i.next(u))}catch(d){o(d)}}function c(u){try{l(i.throw(u))}catch(d){o(d)}}function l(u){u.done?s(u.value):r(u.value).then(a,c)}l((i=i.apply(t,[])).next())})}function by(t,e){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,r,s,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(l){return function(u){return c([l,u])}}function c(l){if(i)throw new TypeError("Generator is already executing.");for(;o&&(o=0,l[0]&&(n=0)),n;)try{if(i=1,r&&(s=l[0]&2?r.return:l[0]?r.throw||((s=r.return)&&s.call(r),0):r.next)&&!(s=s.call(r,l[1])).done)return s;switch(r=0,s&&(l=[l[0]&2,s.value]),l[0]){case 0:case 1:s=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,r=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(s=n.trys,!(s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]<s[3])){n.label=l[1];break}if(l[0]===6&&n.label<s[1]){n.label=s[1],s=l;break}if(s&&n.label<s[2]){n.label=s[2],n.ops.push(l);break}s[2]&&n.ops.pop(),n.trys.pop();continue}l=e.call(t,n)}catch(u){l=[6,u],r=0}finally{i=s=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}function hr(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],i=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function hs(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var i=n.call(t),r,s=[],o;try{for(;(e===void 0||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function ps(t,e,n){if(arguments.length===2)for(var i=0,r=e.length,s;i<r;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))}function rr(t){return this instanceof rr?(this.v=t,this):new rr(t)}function eR(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=n.apply(t,e||[]),r,s=[];return r=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),r[Symbol.asyncIterator]=function(){return this},r;function o(p){return function(g){return Promise.resolve(g).then(p,d)}}function a(p,g){i[p]&&(r[p]=function(f){return new Promise(function(y,v){s.push([p,f,y,v])>1||c(p,f)})},g&&(r[p]=g(r[p])))}function c(p,g){try{l(i[p](g))}catch(f){h(s[0][3],f)}}function l(p){p.value instanceof rr?Promise.resolve(p.value.v).then(u,d):h(s[0][2],p)}function u(p){c("next",p)}function d(p){c("throw",p)}function h(p,g){p(g),s.shift(),s.length&&c(s[0][0],s[0][1])}}function tR(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof hr=="function"?hr(t):t[Symbol.iterator](),n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n);function i(s){n[s]=t[s]&&function(o){return new Promise(function(a,c){o=t[s](o),r(a,c,o.done,o.value)})}}function r(s,o,a,c){Promise.resolve(c).then(function(l){s({value:l,done:a})},o)}}function Xe(t){return typeof t=="function"}function vd(t){var e=function(i){Error.call(i),i.stack=new Error().stack},n=t(e);return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}var hc=vd(function(t){return function(e){t(this),this.message=e?e.length+` errors occurred during unsubscription:
|
|
77
|
+
`),()=>{document.head.contains(m)&&document.head.removeChild(m)}},[e]),E.jsx(fw,{isPresent:e,childRef:r,sizeRef:s,children:p.cloneElement(t,{ref:r})})}const pw=({children:t,initial:e,isPresent:n,onExitComplete:i,custom:r,presenceAffectsLayout:s,mode:o,anchorX:a})=>{const c=Vu(mw),l=B.useId();let u=!0,d=B.useMemo(()=>(u=!1,{id:l,initial:e,isPresent:n,custom:r,onExitComplete:h=>{c.set(h,!0);for(const m of c.values())if(!m)return;i&&i()},register:h=>(c.set(h,!1),()=>c.delete(h))}),[n,c,i]);return s&&u&&(d={...d}),B.useMemo(()=>{c.forEach((h,m)=>c.set(m,!1))},[n]),p.useEffect(()=>{!n&&!c.size&&i&&i()},[n]),o==="popLayout"&&(t=E.jsx(hw,{isPresent:n,anchorX:a,children:t})),E.jsx(ua.Provider,{value:d,children:t})};function mw(){return new Map}function H0(t=!0){const e=B.useContext(ua);if(e===null)return[!0,null];const{isPresent:n,onExitComplete:i,register:r}=e,s=B.useId();B.useEffect(()=>{if(t)return r(s)},[t]);const o=B.useCallback(()=>t&&i&&i(s),[s,i,t]);return!n&&i?[!1,o]:[!0]}const Fs=t=>t.key||"";function ah(t){const e=[];return B.Children.forEach(t,n=>{B.isValidElement(n)&&e.push(n)}),e}const z0=({children:t,custom:e,initial:n=!0,onExitComplete:i,presenceAffectsLayout:r=!0,mode:s="sync",propagate:o=!1,anchorX:a="left"})=>{const[c,l]=H0(o),u=B.useMemo(()=>ah(t),[t]),d=o&&!c?[]:u.map(Fs),h=B.useRef(!0),m=B.useRef(u),g=Vu(()=>new Map),[f,y]=B.useState(u),[v,C]=B.useState(u);B0(()=>{h.current=!1,m.current=u;for(let b=0;b<v.length;b++){const w=Fs(v[b]);d.includes(w)?g.delete(w):g.get(w)!==!0&&g.set(w,!1)}},[v,d.length,d.join("-")]);const T=[];if(u!==f){let b=[...u];for(let w=0;w<v.length;w++){const x=v[w],R=Fs(x);d.includes(R)||(b.splice(w,0,x),T.push(x))}return s==="wait"&&T.length&&(b=T),C(ah(b)),y(u),null}process.env.NODE_ENV!=="production"&&s==="wait"&&v.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:k}=B.useContext(Lu);return E.jsx(E.Fragment,{children:v.map(b=>{const w=Fs(b),x=o&&!c?!1:u===v||d.includes(w),R=()=>{if(g.has(w))g.set(w,!0);else return;let _=!0;g.forEach(S=>{S||(_=!1)}),_&&(k==null||k(),C(m.current),o&&(l==null||l()),i&&i())};return E.jsx(pw,{isPresent:x,initial:!h.current||n?void 0:!1,custom:e,presenceAffectsLayout:r,mode:s,onExitComplete:x?void 0:R,anchorX:a,children:b},w)})})},js=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],ch={value:null};function gw(t,e){let n=new Set,i=new Set,r=!1,s=!1;const o=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1},c=0;function l(d){o.has(d)&&(u.schedule(d),t()),c++,d(a)}const u={schedule:(d,h=!1,m=!1)=>{const f=m&&r?n:i;return h&&o.add(d),f.has(d)||f.add(d),d},cancel:d=>{i.delete(d),o.delete(d)},process:d=>{if(a=d,r){s=!0;return}r=!0,[n,i]=[i,n],n.forEach(l),e&&ch.value&&ch.value.frameloop[e].push(c),c=0,n.clear(),r=!1,s&&(s=!1,u.process(d))}};return u}const xn={},vw=40;function W0(t,e){let n=!1,i=!0;const r={delta:0,timestamp:0,isProcessing:!1},s=()=>n=!0,o=js.reduce((T,k)=>(T[k]=gw(s,e?k:void 0),T),{}),{setup:a,read:c,resolveKeyframes:l,preUpdate:u,update:d,preRender:h,render:m,postRender:g}=o,f=()=>{const T=xn.useManualTiming?r.timestamp:performance.now();n=!1,xn.useManualTiming||(r.delta=i?1e3/60:Math.max(Math.min(T-r.timestamp,vw),1)),r.timestamp=T,r.isProcessing=!0,a.process(r),c.process(r),l.process(r),u.process(r),d.process(r),h.process(r),m.process(r),g.process(r),r.isProcessing=!1,n&&e&&(i=!1,t(f))},y=()=>{n=!0,i=!0,r.isProcessing||t(f)};return{schedule:js.reduce((T,k)=>{const b=o[k];return T[k]=(w,x=!1,R=!1)=>(n||y(),b.schedule(w,x,R)),T},{}),cancel:T=>{for(let k=0;k<js.length;k++)o[js[k]].cancel(T)},state:r,steps:o}}const It=t=>t,{schedule:De,cancel:Gn,state:nt,steps:ec}=W0(typeof requestAnimationFrame<"u"?requestAnimationFrame:It,!0),q0=B.createContext({strict:!1}),lh={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"]},dr={};for(const t in lh)dr[t]={isEnabled:e=>lh[t].some(n=>!!e[n])};function yw(t){for(const e in t)dr[e]={...dr[e],...t[e]}}const bw=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 Uo(t){return t.startsWith("while")||t.startsWith("drag")&&t!=="draggable"||t.startsWith("layout")||t.startsWith("onTap")||t.startsWith("onPan")||t.startsWith("onLayout")||bw.has(t)}let G0=t=>!Uo(t);function Sw(t){typeof t=="function"&&(G0=e=>e.startsWith("on")?!Uo(e):t(e))}try{Sw(require("@emotion/is-prop-valid").default)}catch{}function Tw(t,e,n){const i={};for(const r in t)r==="values"&&typeof t.values=="object"||(G0(r)||n===!0&&Uo(r)||!e&&!Uo(r)||t.draggable&&r.startsWith("onDrag"))&&(i[r]=t[r]);return i}const uh=new Set;function Bu(t,e,n){t||uh.has(e)||(console.warn(e),uh.add(e))}function kw(t){if(typeof Proxy>"u")return t;const e=new Map,n=(...i)=>(process.env.NODE_ENV!=="production"&&Bu(!1,"motion() is deprecated. Use motion.create() instead."),t(...i));return new Proxy(n,{get:(i,r)=>r==="create"?t:(e.has(r)||e.set(r,t(r)),e.get(r))})}const da=B.createContext({});function fa(t){return t!==null&&typeof t=="object"&&typeof t.start=="function"}function os(t){return typeof t=="string"||Array.isArray(t)}const $u=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Hu=["initial",...$u];function ha(t){return fa(t.animate)||Hu.some(e=>os(t[e]))}function K0(t){return!!(ha(t)||t.variants)}function Cw(t,e){if(ha(t)){const{initial:n,animate:i}=t;return{initial:n===!1||os(n)?n:void 0,animate:os(i)?i:void 0}}return t.inherit!==!1?e:{}}function ww(t){const{initial:e,animate:n}=Cw(t,B.useContext(da));return B.useMemo(()=>({initial:e,animate:n}),[dh(e),dh(n)])}function dh(t){return Array.isArray(t)?t.join(" "):t}const xw=Symbol.for("motionComponentSymbol");function qi(t){return t&&typeof t=="object"&&Object.prototype.hasOwnProperty.call(t,"current")}function Ew(t,e,n){return B.useCallback(i=>{i&&t.onMount&&t.onMount(i),e&&(i?e.mount(i):e.unmount()),n&&(typeof n=="function"?n(i):qi(n)&&(n.current=i))},[e])}const zu=t=>t.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),Pw="framerAppearId",Z0="data-"+zu(Pw),Y0=B.createContext({}),{schedule:Wu}=W0(queueMicrotask,!1);function Rw(t,e,n,i,r){var f,y;const{visualElement:s}=B.useContext(da),o=B.useContext(q0),a=B.useContext(ua),c=B.useContext(ju).reducedMotion,l=B.useRef(null);i=i||o.renderer,!l.current&&i&&(l.current=i(t,{visualState:e,parent:s,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:c}));const u=l.current,d=B.useContext(Y0);u&&!u.projection&&r&&(u.type==="html"||u.type==="svg")&&Aw(l.current,n,r,d);const h=B.useRef(!1);B.useInsertionEffect(()=>{u&&h.current&&u.update(n,a)});const m=n[Z0],g=B.useRef(!!m&&!((f=window.MotionHandoffIsComplete)!=null&&f.call(window,m))&&((y=window.MotionHasOptimisedAnimation)==null?void 0:y.call(window,m)));return B0(()=>{u&&(h.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),Wu.render(u.render),g.current&&u.animationState&&u.animationState.animateChanges())}),B.useEffect(()=>{u&&(!g.current&&u.animationState&&u.animationState.animateChanges(),g.current&&(queueMicrotask(()=>{var v;(v=window.MotionHandoffMarkAsComplete)==null||v.call(window,m)}),g.current=!1))}),u}function Aw(t,e,n,i){const{layoutId:r,layout:s,drag:o,dragConstraints:a,layoutScroll:c,layoutRoot:l,layoutCrossfade:u}=e;t.projection=new n(t.latestValues,e["data-framer-portal-id"]?void 0:J0(t.parent)),t.projection.setOptions({layoutId:r,layout:s,alwaysMeasureLayout:!!o||a&&qi(a),visualElement:t,animationType:typeof s=="string"?s:"both",initialPromotionConfig:i,crossfade:u,layoutScroll:c,layoutRoot:l})}function J0(t){if(t)return t.options.allowProjection!==!1?t.projection:J0(t.parent)}let yr=()=>{},En=()=>{};process.env.NODE_ENV!=="production"&&(yr=(t,e)=>{!t&&typeof console<"u"&&console.warn(e)},En=(t,e)=>{if(!t)throw new Error(e)});function Iw({preloadedFeatures:t,createVisualElement:e,useRender:n,useVisualState:i,Component:r}){t&&yw(t);function s(a,c){let l;const u={...B.useContext(ju),...a,layoutId:_w(a)},{isStatic:d}=u,h=ww(a),m=i(a,d);if(!d&&Fu){Mw(u,t);const g=Ow(u);l=g.MeasureLayout,h.visualElement=Rw(r,m,u,e,g.ProjectionNode)}return E.jsxs(da.Provider,{value:h,children:[l&&h.visualElement?E.jsx(l,{visualElement:h.visualElement,...u}):null,n(r,a,Ew(m,h.visualElement,c),m,d,h.visualElement)]})}s.displayName=`motion.${typeof r=="string"?r:`create(${r.displayName??r.name??""})`}`;const o=B.forwardRef(s);return o[xw]=r,o}function _w({layoutId:t}){const e=B.useContext(Lu).id;return e&&t!==void 0?e+"-"+t:t}function Mw(t,e){const n=B.useContext(q0).strict;if(process.env.NODE_ENV!=="production"&&e&&n){const i="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";t.ignoreStrict?yr(!1,i):En(!1,i)}}function Ow(t){const{drag:e,layout:n}=dr;if(!e&&!n)return{};const i={...e,...n};return{MeasureLayout:e!=null&&e.isEnabled(t)||n!=null&&n.isEnabled(t)?i.MeasureLayout:void 0,ProjectionNode:i.ProjectionNode}}const X0=t=>e=>typeof e=="string"&&e.startsWith(t),qu=X0("--"),Dw=X0("var(--"),Gu=t=>Dw(t)?Nw.test(t.split("/*")[0].trim()):!1,Nw=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,as={};function Lw(t){for(const e in t)as[e]=t[e],qu(e)&&(as[e].isCSSVariable=!0)}const br=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Sr=new Set(br);function Q0(t,{layout:e,layoutId:n}){return Sr.has(t)||t.startsWith("origin")||(e||n!==void 0)&&(!!as[t]||t==="opacity")}const ev=(t,e)=>e&&typeof t=="number"?e.transform(t):t,Pn=(t,e,n)=>n>e?e:n<t?t:n,Tr={test:t=>typeof t=="number",parse:parseFloat,transform:t=>t},cs={...Tr,transform:t=>Pn(0,1,t)},Us={...Tr,default:1},fh={...Tr,transform:Math.round},Cs=t=>({test:e=>typeof e=="string"&&e.endsWith(t)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${t}`}),Fn=Cs("deg"),tn=Cs("%"),le=Cs("px"),Vw=Cs("vh"),Fw=Cs("vw"),hh={...tn,parse:t=>tn.parse(t)/100,transform:t=>tn.transform(t*100)},jw={rotate:Fn,rotateX:Fn,rotateY:Fn,rotateZ:Fn,scale:Us,scaleX:Us,scaleY:Us,scaleZ:Us,skew:Fn,skewX:Fn,skewY:Fn,distance:le,translateX:le,translateY:le,translateZ:le,x:le,y:le,z:le,perspective:le,transformPerspective:le,opacity:cs,originX:hh,originY:hh,originZ:le},Ku={borderWidth:le,borderTopWidth:le,borderRightWidth:le,borderBottomWidth:le,borderLeftWidth:le,borderRadius:le,radius:le,borderTopLeftRadius:le,borderTopRightRadius:le,borderBottomRightRadius:le,borderBottomLeftRadius:le,width:le,maxWidth:le,height:le,maxHeight:le,top:le,right:le,bottom:le,left:le,padding:le,paddingTop:le,paddingRight:le,paddingBottom:le,paddingLeft:le,margin:le,marginTop:le,marginRight:le,marginBottom:le,marginLeft:le,backgroundPositionX:le,backgroundPositionY:le,...jw,zIndex:fh,fillOpacity:cs,strokeOpacity:cs,numOctaves:fh},Uw={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Bw=br.length;function $w(t,e,n){let i="",r=!0;for(let s=0;s<Bw;s++){const o=br[s],a=t[o];if(a===void 0)continue;let c=!0;if(typeof a=="number"?c=a===(o.startsWith("scale")?1:0):c=parseFloat(a)===0,!c||n){const l=ev(a,Ku[o]);if(!c){r=!1;const u=Uw[o]||o;i+=`${u}(${l}) `}n&&(e[o]=l)}}return i=i.trim(),n?i=n(e,r?"":i):r&&(i="none"),i}function Zu(t,e,n){const{style:i,vars:r,transformOrigin:s}=t;let o=!1,a=!1;for(const c in e){const l=e[c];if(Sr.has(c)){o=!0;continue}else if(qu(c)){r[c]=l;continue}else{const u=ev(l,Ku[c]);c.startsWith("origin")?(a=!0,s[c]=u):i[c]=u}}if(e.transform||(o||n?i.transform=$w(e,t.transform,n):i.transform&&(i.transform="none")),a){const{originX:c="50%",originY:l="50%",originZ:u=0}=s;i.transformOrigin=`${c} ${l} ${u}`}}const Yu=()=>({style:{},transform:{},transformOrigin:{},vars:{}}),at=t=>!!(t&&t.getVelocity);function tv(t,e,n){for(const i in e)!at(e[i])&&!Q0(i,n)&&(t[i]=e[i])}function Hw({transformTemplate:t},e){return B.useMemo(()=>{const n=Yu();return Zu(n,e,t),Object.assign({},n.vars,n.style)},[e])}function zw(t,e){const n=t.style||{},i={};return tv(i,n,t),Object.assign(i,Hw(t,e)),i}function Ww(t,e){const n={},i=zw(t,e);return t.drag&&t.dragListener!==!1&&(n.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=t.drag===!0?"none":`pan-${t.drag==="x"?"y":"x"}`),t.tabIndex===void 0&&(t.onTap||t.onTapStart||t.whileTap)&&(n.tabIndex=0),n.style=i,n}const qw={offset:"stroke-dashoffset",array:"stroke-dasharray"},Gw={offset:"strokeDashoffset",array:"strokeDasharray"};function Kw(t,e,n=1,i=0,r=!0){t.pathLength=1;const s=r?qw:Gw;t[s.offset]=le.transform(-i);const o=le.transform(e),a=le.transform(n);t[s.array]=`${o} ${a}`}function nv(t,{attrX:e,attrY:n,attrScale:i,pathLength:r,pathSpacing:s=1,pathOffset:o=0,...a},c,l,u){if(Zu(t,a,l),c){t.style.viewBox&&(t.attrs.viewBox=t.style.viewBox);return}t.attrs=t.style,t.style={};const{attrs:d,style:h}=t;d.transform&&(h.transform=d.transform,delete d.transform),(h.transform||d.transformOrigin)&&(h.transformOrigin=d.transformOrigin??"50% 50%",delete d.transformOrigin),h.transform&&(h.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete d.transformBox),e!==void 0&&(d.x=e),n!==void 0&&(d.y=n),i!==void 0&&(d.scale=i),r!==void 0&&Kw(d,r,s,o,!1)}const iv=()=>({...Yu(),attrs:{}}),rv=t=>typeof t=="string"&&t.toLowerCase()==="svg";function Zw(t,e,n,i){const r=B.useMemo(()=>{const s=iv();return nv(s,e,rv(i),t.transformTemplate,t.style),{...s.attrs,style:{...s.style}}},[e]);if(t.style){const s={};tv(s,t.style,t),r.style={...s,...r.style}}return r}const Yw=["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 Ju(t){return typeof t!="string"||t.includes("-")?!1:!!(Yw.indexOf(t)>-1||/[A-Z]/u.test(t))}function Jw(t=!1){return(n,i,r,{latestValues:s},o)=>{const c=(Ju(n)?Zw:Ww)(i,s,o,n),l=Tw(i,typeof n=="string",t),u=n!==B.Fragment?{...l,...c,ref:r}:{},{children:d}=i,h=B.useMemo(()=>at(d)?d.get():d,[d]);return B.createElement(n,{...u,children:h})}}function ph(t){const e=[{},{}];return t==null||t.values.forEach((n,i)=>{e[0][i]=n.get(),e[1][i]=n.getVelocity()}),e}function Xu(t,e,n,i){if(typeof e=="function"){const[r,s]=ph(i);e=e(n!==void 0?n:t.custom,r,s)}if(typeof e=="string"&&(e=t.variants&&t.variants[e]),typeof e=="function"){const[r,s]=ph(i);e=e(n!==void 0?n:t.custom,r,s)}return e}function bo(t){return at(t)?t.get():t}function Xw({scrapeMotionValuesFromProps:t,createRenderState:e},n,i,r){return{latestValues:Qw(n,i,r,t),renderState:e()}}const sv=t=>(e,n)=>{const i=B.useContext(da),r=B.useContext(ua),s=()=>Xw(t,e,i,r);return n?s():Vu(s)};function Qw(t,e,n,i){const r={},s=i(t,{});for(const h in s)r[h]=bo(s[h]);let{initial:o,animate:a}=t;const c=ha(t),l=K0(t);e&&l&&!c&&t.inherit!==!1&&(o===void 0&&(o=e.initial),a===void 0&&(a=e.animate));let u=n?n.initial===!1:!1;u=u||o===!1;const d=u?a:o;if(d&&typeof d!="boolean"&&!fa(d)){const h=Array.isArray(d)?d:[d];for(let m=0;m<h.length;m++){const g=Xu(t,h[m]);if(g){const{transitionEnd:f,transition:y,...v}=g;for(const C in v){let T=v[C];if(Array.isArray(T)){const k=u?T.length-1:0;T=T[k]}T!==null&&(r[C]=T)}for(const C in f)r[C]=f[C]}}}return r}function Qu(t,e,n){var s;const{style:i}=t,r={};for(const o in i)(at(i[o])||e.style&&at(e.style[o])||Q0(o,t)||((s=n==null?void 0:n.getValue(o))==null?void 0:s.liveStyle)!==void 0)&&(r[o]=i[o]);return r}const e2={useVisualState:sv({scrapeMotionValuesFromProps:Qu,createRenderState:Yu})};function ov(t,e,n){const i=Qu(t,e,n);for(const r in t)if(at(t[r])||at(e[r])){const s=br.indexOf(r)!==-1?"attr"+r.charAt(0).toUpperCase()+r.substring(1):r;i[s]=t[r]}return i}const t2={useVisualState:sv({scrapeMotionValuesFromProps:ov,createRenderState:iv})};function n2(t,e){return function(i,{forwardMotionProps:r}={forwardMotionProps:!1}){const o={...Ju(i)?t2:e2,preloadedFeatures:t,useRender:Jw(r),createVisualElement:e,Component:i};return Iw(o)}}function ls(t,e,n){const i=t.getProps();return Xu(i,e,n!==void 0?n:i.custom,t)}const Tl=t=>Array.isArray(t);let So;function i2(){So=void 0}const pt={now:()=>(So===void 0&&pt.set(nt.isProcessing||xn.useManualTiming?nt.timestamp:performance.now()),So),set:t=>{So=t,queueMicrotask(i2)}};function ed(t,e){t.indexOf(e)===-1&&t.push(e)}function td(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}class nd{constructor(){this.subscriptions=[]}add(e){return ed(this.subscriptions,e),()=>td(this.subscriptions,e)}notify(e,n,i){const r=this.subscriptions.length;if(r)if(r===1)this.subscriptions[0](e,n,i);else for(let s=0;s<r;s++){const o=this.subscriptions[s];o&&o(e,n,i)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}function av(t,e){return e?t*(1e3/e):0}const mh=30,r2=t=>!isNaN(parseFloat(t));class s2{constructor(e,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=(i,r=!0)=>{var o,a;const s=pt.now();if(this.updatedAt!==s&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(i),this.current!==this.prev&&((o=this.events.change)==null||o.notify(this.current),this.dependents))for(const c of this.dependents)c.dirty();r&&((a=this.events.renderRequest)==null||a.notify(this.current))},this.hasAnimated=!1,this.setCurrent(e),this.owner=n.owner}setCurrent(e){this.current=e,this.updatedAt=pt.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=r2(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return process.env.NODE_ENV!=="production"&&Bu(!1,'value.onChange(callback) is deprecated. Switch to value.on("change", callback).'),this.on("change",e)}on(e,n){this.events[e]||(this.events[e]=new nd);const i=this.events[e].add(n);return e==="change"?()=>{i(),De.read(()=>{this.events.change.getSize()||this.stop()})}:i}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,n){this.passiveEffect=e,this.stopPassiveEffect=n}set(e,n=!0){!n||!this.passiveEffect?this.updateAndNotify(e,n):this.passiveEffect(e,this.updateAndNotify)}setWithVelocity(e,n,i){this.set(n),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-i}jump(e,n=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var e;(e=this.events.change)==null||e.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=pt.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>mh)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,mh);return av(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(e){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=e(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 e,n;(e=this.dependents)==null||e.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function fr(t,e){return new s2(t,e)}function o2(t,e,n){t.hasValue(e)?t.getValue(e).set(n):t.addValue(e,fr(n))}function a2(t){return Tl(t)?t[t.length-1]||0:t}function c2(t,e){const n=ls(t,e);let{transitionEnd:i={},transition:r={},...s}=n||{};s={...s,...i};for(const o in s){const a=a2(s[o]);o2(t,o,a)}}function l2(t){return!!(at(t)&&t.add)}function kl(t,e){const n=t.getValue("willChange");if(l2(n))return n.add(e);if(!n&&xn.WillChange){const i=new xn.WillChange("auto");t.addValue("willChange",i),i.add(e)}}function cv(t){return t.props[Z0]}const u2=t=>t!==null;function d2(t,{repeat:e,repeatType:n="loop"},i){const r=t.filter(u2),s=e&&n!=="loop"&&e%2===1?0:r.length-1;return r[s]}const f2={type:"spring",stiffness:500,damping:25,restSpeed:10},h2=t=>({type:"spring",stiffness:550,damping:t===0?2*Math.sqrt(550):30,restSpeed:10}),p2={type:"keyframes",duration:.8},m2={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},g2=(t,{keyframes:e})=>e.length>2?p2:Sr.has(t)?t.startsWith("scale")?h2(e[1]):f2:m2;function v2({when:t,delay:e,delayChildren:n,staggerChildren:i,staggerDirection:r,repeat:s,repeatType:o,repeatDelay:a,from:c,elapsed:l,...u}){return!!Object.keys(u).length}function id(t,e){return(t==null?void 0:t[e])??(t==null?void 0:t.default)??t}const Ht=t=>t*1e3,nn=t=>t/1e3,Xr=t=>Math.round(t*1e5)/1e5,rd=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function y2(t){return t==null}const b2=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,sd=(t,e)=>n=>!!(typeof n=="string"&&b2.test(n)&&n.startsWith(t)||e&&!y2(n)&&Object.prototype.hasOwnProperty.call(n,e)),lv=(t,e,n)=>i=>{if(typeof i!="string")return i;const[r,s,o,a]=i.match(rd);return{[t]:parseFloat(r),[e]:parseFloat(s),[n]:parseFloat(o),alpha:a!==void 0?parseFloat(a):1}},S2=t=>Pn(0,255,t),tc={...Tr,transform:t=>Math.round(S2(t))},fi={test:sd("rgb","red"),parse:lv("red","green","blue"),transform:({red:t,green:e,blue:n,alpha:i=1})=>"rgba("+tc.transform(t)+", "+tc.transform(e)+", "+tc.transform(n)+", "+Xr(cs.transform(i))+")"};function T2(t){let e="",n="",i="",r="";return t.length>5?(e=t.substring(1,3),n=t.substring(3,5),i=t.substring(5,7),r=t.substring(7,9)):(e=t.substring(1,2),n=t.substring(2,3),i=t.substring(3,4),r=t.substring(4,5),e+=e,n+=n,i+=i,r+=r),{red:parseInt(e,16),green:parseInt(n,16),blue:parseInt(i,16),alpha:r?parseInt(r,16)/255:1}}const Cl={test:sd("#"),parse:T2,transform:fi.transform},Gi={test:sd("hsl","hue"),parse:lv("hue","saturation","lightness"),transform:({hue:t,saturation:e,lightness:n,alpha:i=1})=>"hsla("+Math.round(t)+", "+tn.transform(Xr(e))+", "+tn.transform(Xr(n))+", "+Xr(cs.transform(i))+")"},qe={test:t=>fi.test(t)||Cl.test(t)||Gi.test(t),parse:t=>fi.test(t)?fi.parse(t):Gi.test(t)?Gi.parse(t):Cl.parse(t),transform:t=>typeof t=="string"?t:t.hasOwnProperty("red")?fi.transform(t):Gi.transform(t),getAnimatableNone:t=>{const e=qe.parse(t);return e.alpha=0,qe.transform(e)}},k2=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function C2(t){var e,n;return isNaN(t)&&typeof t=="string"&&(((e=t.match(rd))==null?void 0:e.length)||0)+(((n=t.match(k2))==null?void 0:n.length)||0)>0}const uv="number",dv="color",w2="var",x2="var(",gh="${}",E2=/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 us(t){const e=t.toString(),n=[],i={color:[],number:[],var:[]},r=[];let s=0;const a=e.replace(E2,c=>(qe.test(c)?(i.color.push(s),r.push(dv),n.push(qe.parse(c))):c.startsWith(x2)?(i.var.push(s),r.push(w2),n.push(c)):(i.number.push(s),r.push(uv),n.push(parseFloat(c))),++s,gh)).split(gh);return{values:n,split:a,indexes:i,types:r}}function fv(t){return us(t).values}function hv(t){const{split:e,types:n}=us(t),i=e.length;return r=>{let s="";for(let o=0;o<i;o++)if(s+=e[o],r[o]!==void 0){const a=n[o];a===uv?s+=Xr(r[o]):a===dv?s+=qe.transform(r[o]):s+=r[o]}return s}}const P2=t=>typeof t=="number"?0:qe.test(t)?qe.getAnimatableNone(t):t;function R2(t){const e=fv(t);return hv(t)(e.map(P2))}const Kn={test:C2,parse:fv,createTransformer:hv,getAnimatableNone:R2};function nc(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function A2({hue:t,saturation:e,lightness:n,alpha:i}){t/=360,e/=100,n/=100;let r=0,s=0,o=0;if(!e)r=s=o=n;else{const a=n<.5?n*(1+e):n+e-n*e,c=2*n-a;r=nc(c,a,t+1/3),s=nc(c,a,t),o=nc(c,a,t-1/3)}return{red:Math.round(r*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:i}}function Bo(t,e){return n=>n>0?e:t}const Oe=(t,e,n)=>t+(e-t)*n,ic=(t,e,n)=>{const i=t*t,r=n*(e*e-i)+i;return r<0?0:Math.sqrt(r)},I2=[Cl,fi,Gi],_2=t=>I2.find(e=>e.test(t));function vh(t){const e=_2(t);if(yr(!!e,`'${t}' is not an animatable color. Use the equivalent color code instead.`),!e)return!1;let n=e.parse(t);return e===Gi&&(n=A2(n)),n}const yh=(t,e)=>{const n=vh(t),i=vh(e);if(!n||!i)return Bo(t,e);const r={...n};return s=>(r.red=ic(n.red,i.red,s),r.green=ic(n.green,i.green,s),r.blue=ic(n.blue,i.blue,s),r.alpha=Oe(n.alpha,i.alpha,s),fi.transform(r))},wl=new Set(["none","hidden"]);function M2(t,e){return wl.has(t)?n=>n<=0?t:e:n=>n>=1?e:t}const O2=(t,e)=>n=>e(t(n)),ws=(...t)=>t.reduce(O2);function D2(t,e){return n=>Oe(t,e,n)}function od(t){return typeof t=="number"?D2:typeof t=="string"?Gu(t)?Bo:qe.test(t)?yh:V2:Array.isArray(t)?pv:typeof t=="object"?qe.test(t)?yh:N2:Bo}function pv(t,e){const n=[...t],i=n.length,r=t.map((s,o)=>od(s)(s,e[o]));return s=>{for(let o=0;o<i;o++)n[o]=r[o](s);return n}}function N2(t,e){const n={...t,...e},i={};for(const r in n)t[r]!==void 0&&e[r]!==void 0&&(i[r]=od(t[r])(t[r],e[r]));return r=>{for(const s in i)n[s]=i[s](r);return n}}function L2(t,e){const n=[],i={color:0,var:0,number:0};for(let r=0;r<e.values.length;r++){const s=e.types[r],o=t.indexes[s][i[s]],a=t.values[o]??0;n[r]=a,i[s]++}return n}const V2=(t,e)=>{const n=Kn.createTransformer(e),i=us(t),r=us(e);return i.indexes.var.length===r.indexes.var.length&&i.indexes.color.length===r.indexes.color.length&&i.indexes.number.length>=r.indexes.number.length?wl.has(t)&&!r.values.length||wl.has(e)&&!i.values.length?M2(t,e):ws(pv(L2(i,r),r.values),n):(yr(!0,`Complex values '${t}' and '${e}' 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.`),Bo(t,e))};function mv(t,e,n){return typeof t=="number"&&typeof e=="number"&&typeof n=="number"?Oe(t,e,n):od(t)(t,e)}const F2=t=>{const e=({timestamp:n})=>t(n);return{start:(n=!0)=>De.update(e,n),stop:()=>Gn(e),now:()=>nt.isProcessing?nt.timestamp:pt.now()}},gv=(t,e,n=10)=>{let i="";const r=Math.max(Math.round(e/n),2);for(let s=0;s<r;s++)i+=Math.round(t(s/(r-1))*1e4)/1e4+", ";return`linear(${i.substring(0,i.length-2)})`},$o=2e4;function ad(t){let e=0;const n=50;let i=t.next(e);for(;!i.done&&e<$o;)e+=n,i=t.next(e);return e>=$o?1/0:e}function j2(t,e=100,n){const i=n({...t,keyframes:[0,e]}),r=Math.min(ad(i),$o);return{type:"keyframes",ease:s=>i.next(r*s).value/e,duration:nn(r)}}const U2=5;function vv(t,e,n){const i=Math.max(e-U2,0);return av(n-t(i),e-i)}const Me={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},rc=.001;function B2({duration:t=Me.duration,bounce:e=Me.bounce,velocity:n=Me.velocity,mass:i=Me.mass}){let r,s;yr(t<=Ht(Me.maxDuration),"Spring duration must be 10 seconds or less");let o=1-e;o=Pn(Me.minDamping,Me.maxDamping,o),t=Pn(Me.minDuration,Me.maxDuration,nn(t)),o<1?(r=l=>{const u=l*o,d=u*t,h=u-n,m=xl(l,o),g=Math.exp(-d);return rc-h/m*g},s=l=>{const d=l*o*t,h=d*n+n,m=Math.pow(o,2)*Math.pow(l,2)*t,g=Math.exp(-d),f=xl(Math.pow(l,2),o);return(-r(l)+rc>0?-1:1)*((h-m)*g)/f}):(r=l=>{const u=Math.exp(-l*t),d=(l-n)*t+1;return-rc+u*d},s=l=>{const u=Math.exp(-l*t),d=(n-l)*(t*t);return u*d});const a=5/t,c=H2(r,s,a);if(t=Ht(t),isNaN(c))return{stiffness:Me.stiffness,damping:Me.damping,duration:t};{const l=Math.pow(c,2)*i;return{stiffness:l,damping:o*2*Math.sqrt(i*l),duration:t}}}const $2=12;function H2(t,e,n){let i=n;for(let r=1;r<$2;r++)i=i-t(i)/e(i);return i}function xl(t,e){return t*Math.sqrt(1-e*e)}const z2=["duration","bounce"],W2=["stiffness","damping","mass"];function bh(t,e){return e.some(n=>t[n]!==void 0)}function q2(t){let e={velocity:Me.velocity,stiffness:Me.stiffness,damping:Me.damping,mass:Me.mass,isResolvedFromDuration:!1,...t};if(!bh(t,W2)&&bh(t,z2))if(t.visualDuration){const n=t.visualDuration,i=2*Math.PI/(n*1.2),r=i*i,s=2*Pn(.05,1,1-(t.bounce||0))*Math.sqrt(r);e={...e,mass:Me.mass,stiffness:r,damping:s}}else{const n=B2(t);e={...e,...n,mass:Me.mass},e.isResolvedFromDuration=!0}return e}function Ho(t=Me.visualDuration,e=Me.bounce){const n=typeof t!="object"?{visualDuration:t,keyframes:[0,1],bounce:e}:t;let{restSpeed:i,restDelta:r}=n;const s=n.keyframes[0],o=n.keyframes[n.keyframes.length-1],a={done:!1,value:s},{stiffness:c,damping:l,mass:u,duration:d,velocity:h,isResolvedFromDuration:m}=q2({...n,velocity:-nn(n.velocity||0)}),g=h||0,f=l/(2*Math.sqrt(c*u)),y=o-s,v=nn(Math.sqrt(c/u)),C=Math.abs(y)<5;i||(i=C?Me.restSpeed.granular:Me.restSpeed.default),r||(r=C?Me.restDelta.granular:Me.restDelta.default);let T;if(f<1){const b=xl(v,f);T=w=>{const x=Math.exp(-f*v*w);return o-x*((g+f*v*y)/b*Math.sin(b*w)+y*Math.cos(b*w))}}else if(f===1)T=b=>o-Math.exp(-v*b)*(y+(g+v*y)*b);else{const b=v*Math.sqrt(f*f-1);T=w=>{const x=Math.exp(-f*v*w),R=Math.min(b*w,300);return o-x*((g+f*v*y)*Math.sinh(R)+b*y*Math.cosh(R))/b}}const k={calculatedDuration:m&&d||null,next:b=>{const w=T(b);if(m)a.done=b>=d;else{let x=b===0?g:0;f<1&&(x=b===0?Ht(g):vv(T,b,w));const R=Math.abs(x)<=i,_=Math.abs(o-w)<=r;a.done=R&&_}return a.value=a.done?o:w,a},toString:()=>{const b=Math.min(ad(k),$o),w=gv(x=>k.next(b*x).value,b,30);return b+"ms "+w},toTransition:()=>{}};return k}Ho.applyToOptions=t=>{const e=j2(t,100,Ho);return t.ease=e.ease,t.duration=Ht(e.duration),t.type="keyframes",t};function El({keyframes:t,velocity:e=0,power:n=.8,timeConstant:i=325,bounceDamping:r=10,bounceStiffness:s=500,modifyTarget:o,min:a,max:c,restDelta:l=.5,restSpeed:u}){const d=t[0],h={done:!1,value:d},m=R=>a!==void 0&&R<a||c!==void 0&&R>c,g=R=>a===void 0?c:c===void 0||Math.abs(a-R)<Math.abs(c-R)?a:c;let f=n*e;const y=d+f,v=o===void 0?y:o(y);v!==y&&(f=v-d);const C=R=>-f*Math.exp(-R/i),T=R=>v+C(R),k=R=>{const _=C(R),S=T(R);h.done=Math.abs(_)<=l,h.value=h.done?v:S};let b,w;const x=R=>{m(h.value)&&(b=R,w=Ho({keyframes:[h.value,g(h.value)],velocity:vv(T,R,h.value),damping:r,stiffness:s,restDelta:l,restSpeed:u}))};return x(0),{calculatedDuration:null,next:R=>{let _=!1;return!w&&b===void 0&&(_=!0,k(R),x(R)),b!==void 0&&R>=b?w.next(R-b):(!_&&k(R),h)}}}const ds=(t,e,n)=>{const i=e-t;return i===0?1:(n-t)/i};function G2(t,e,n){const i=[],r=n||xn.mix||mv,s=t.length-1;for(let o=0;o<s;o++){let a=r(t[o],t[o+1]);if(e){const c=Array.isArray(e)?e[o]||It:e;a=ws(c,a)}i.push(a)}return i}function K2(t,e,{clamp:n=!0,ease:i,mixer:r}={}){const s=t.length;if(En(s===e.length,"Both input and output ranges must be the same length"),s===1)return()=>e[0];if(s===2&&e[0]===e[1])return()=>e[1];const o=t[0]===t[1];t[0]>t[s-1]&&(t=[...t].reverse(),e=[...e].reverse());const a=G2(e,i,r),c=a.length,l=u=>{if(o&&u<t[0])return e[0];let d=0;if(c>1)for(;d<t.length-2&&!(u<t[d+1]);d++);const h=ds(t[d],t[d+1],u);return a[d](h)};return n?u=>l(Pn(t[0],t[s-1],u)):l}function Z2(t,e){const n=t[t.length-1];for(let i=1;i<=e;i++){const r=ds(0,e,i);t.push(Oe(n,1,r))}}function Y2(t){const e=[0];return Z2(e,t.length-1),e}function J2(t,e){return t.map(n=>n*e)}const yv=(t,e,n)=>(((1-3*n+3*e)*t+(3*n-6*e))*t+3*e)*t,X2=1e-7,Q2=12;function ex(t,e,n,i,r){let s,o,a=0;do o=e+(n-e)/2,s=yv(o,i,r)-t,s>0?n=o:e=o;while(Math.abs(s)>X2&&++a<Q2);return o}function xs(t,e,n,i){if(t===e&&n===i)return It;const r=s=>ex(s,0,1,t,n);return s=>s===0||s===1?s:yv(r(s),e,i)}const tx=xs(.42,0,1,1),nx=xs(0,0,.58,1),bv=xs(.42,0,.58,1),ix=t=>Array.isArray(t)&&typeof t[0]!="number",Sv=t=>e=>e<=.5?t(2*e)/2:(2-t(2*(1-e)))/2,Tv=t=>e=>1-t(1-e),kv=xs(.33,1.53,.69,.99),cd=Tv(kv),Cv=Sv(cd),wv=t=>(t*=2)<1?.5*cd(t):.5*(2-Math.pow(2,-10*(t-1))),ld=t=>1-Math.sin(Math.acos(t)),xv=Tv(ld),Ev=Sv(ld),Pv=t=>Array.isArray(t)&&typeof t[0]=="number",Sh={linear:It,easeIn:tx,easeInOut:bv,easeOut:nx,circIn:ld,circInOut:Ev,circOut:xv,backIn:cd,backInOut:Cv,backOut:kv,anticipate:wv},rx=t=>typeof t=="string",Th=t=>{if(Pv(t)){En(t.length===4,"Cubic bezier arrays must contain four numerical values.");const[e,n,i,r]=t;return xs(e,n,i,r)}else if(rx(t))return En(Sh[t]!==void 0,`Invalid easing type '${t}'`),Sh[t];return t};function sx(t,e){return t.map(()=>e||bv).splice(0,t.length-1)}function Ki({duration:t=300,keyframes:e,times:n,ease:i="easeInOut"}){const r=ix(i)?i.map(Th):Th(i),s={done:!1,value:e[0]},o=J2(n&&n.length===e.length?n:Y2(e),t),a=K2(o,e,{ease:Array.isArray(r)?r:sx(e,r)});return{calculatedDuration:t,next:c=>(s.value=a(c),s.done=c>=t,s)}}const ox=t=>t!==null;function ud(t,{repeat:e,repeatType:n="loop"},i,r=1){const s=t.filter(ox),a=r<0||e&&n!=="loop"&&e%2===1?0:s.length-1;return!a||i===void 0?s[a]:i}const ax={decay:El,inertia:El,tween:Ki,keyframes:Ki,spring:Ho};function Rv(t){typeof t.type=="string"&&(t.type=ax[t.type])}class dd{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,n){return this.finished.then(e,n)}}const cx=t=>t/100;class fd extends dd{constructor(e){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var i,r;const{motionValue:n}=this.options;n&&n.updatedAt!==pt.now()&&this.tick(pt.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(r=(i=this.options).onStop)==null||r.call(i))},this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){const{options:e}=this;Rv(e);const{type:n=Ki,repeat:i=0,repeatDelay:r=0,repeatType:s,velocity:o=0}=e;let{keyframes:a}=e;const c=n||Ki;process.env.NODE_ENV!=="production"&&c!==Ki&&En(a.length<=2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${a}`),c!==Ki&&typeof a[0]!="number"&&(this.mixKeyframes=ws(cx,mv(a[0],a[1])),a=[0,100]);const l=c({...e,keyframes:a});s==="mirror"&&(this.mirroredGenerator=c({...e,keyframes:[...a].reverse(),velocity:-o})),l.calculatedDuration===null&&(l.calculatedDuration=ad(l));const{calculatedDuration:u}=l;this.calculatedDuration=u,this.resolvedDuration=u+r,this.totalDuration=this.resolvedDuration*(i+1)-r,this.generator=l}updateTime(e){const n=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(e,n=!1){const{generator:i,totalDuration:r,mixKeyframes:s,mirroredGenerator:o,resolvedDuration:a,calculatedDuration:c}=this;if(this.startTime===null)return i.next(0);const{delay:l=0,keyframes:u,repeat:d,repeatType:h,repeatDelay:m,type:g,onUpdate:f,finalKeyframe:y}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-r/this.speed,this.startTime)),n?this.currentTime=e:this.updateTime(e);const v=this.currentTime-l*(this.playbackSpeed>=0?1:-1),C=this.playbackSpeed>=0?v<0:v>r;this.currentTime=Math.max(v,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=r);let T=this.currentTime,k=i;if(d){const R=Math.min(this.currentTime,r)/a;let _=Math.floor(R),S=R%1;!S&&R>=1&&(S=1),S===1&&_--,_=Math.min(_,d+1),!!(_%2)&&(h==="reverse"?(S=1-S,m&&(S-=m/a)):h==="mirror"&&(k=o)),T=Pn(0,1,S)*a}const b=C?{done:!1,value:u[0]}:k.next(T);s&&(b.value=s(b.value));let{done:w}=b;!C&&c!==null&&(w=this.playbackSpeed>=0?this.currentTime>=r:this.currentTime<=0);const x=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&w);return x&&g!==El&&(b.value=ud(u,this.options,y,this.speed)),f&&f(b.value),x&&this.finish(),b}then(e,n){return this.finished.then(e,n)}get duration(){return nn(this.calculatedDuration)}get time(){return nn(this.currentTime)}set time(e){var n;e=Ht(e),this.currentTime=e,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.playbackSpeed),(n=this.driver)==null||n.start(!1)}get speed(){return this.playbackSpeed}set speed(e){this.updateTime(pt.now());const n=this.playbackSpeed!==e;this.playbackSpeed=e,n&&(this.time=nn(this.currentTime))}play(){var r,s;if(this.isStopped)return;const{driver:e=F2,startTime:n}=this.options;this.driver||(this.driver=e(o=>this.tick(o))),(s=(r=this.options).onPlay)==null||s.call(r);const i=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=i):this.holdTime!==null?this.startTime=i-this.holdTime:this.startTime||(this.startTime=n??i),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(pt.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var e,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(e=this.options).onComplete)==null||n.call(e)}cancel(){var e,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(e=this.options).onCancel)==null||n.call(e)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),e.observe(this)}}function lx(t){for(let e=1;e<t.length;e++)t[e]??(t[e]=t[e-1])}const hi=t=>t*180/Math.PI,Pl=t=>{const e=hi(Math.atan2(t[1],t[0]));return Rl(e)},ux={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:t=>(Math.abs(t[0])+Math.abs(t[3]))/2,rotate:Pl,rotateZ:Pl,skewX:t=>hi(Math.atan(t[1])),skewY:t=>hi(Math.atan(t[2])),skew:t=>(Math.abs(t[1])+Math.abs(t[2]))/2},Rl=t=>(t=t%360,t<0&&(t+=360),t),kh=Pl,Ch=t=>Math.sqrt(t[0]*t[0]+t[1]*t[1]),wh=t=>Math.sqrt(t[4]*t[4]+t[5]*t[5]),dx={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Ch,scaleY:wh,scale:t=>(Ch(t)+wh(t))/2,rotateX:t=>Rl(hi(Math.atan2(t[6],t[5]))),rotateY:t=>Rl(hi(Math.atan2(-t[2],t[0]))),rotateZ:kh,rotate:kh,skewX:t=>hi(Math.atan(t[4])),skewY:t=>hi(Math.atan(t[1])),skew:t=>(Math.abs(t[1])+Math.abs(t[4]))/2};function Al(t){return t.includes("scale")?1:0}function Il(t,e){if(!t||t==="none")return Al(e);const n=t.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let i,r;if(n)i=dx,r=n;else{const a=t.match(/^matrix\(([-\d.e\s,]+)\)$/u);i=ux,r=a}if(!r)return Al(e);const s=i[e],o=r[1].split(",").map(hx);return typeof s=="function"?s(o):o[s]}const fx=(t,e)=>{const{transform:n="none"}=getComputedStyle(t);return Il(n,e)};function hx(t){return parseFloat(t.trim())}const xh=t=>t===Tr||t===le,px=new Set(["x","y","z"]),mx=br.filter(t=>!px.has(t));function gx(t){const e=[];return mx.forEach(n=>{const i=t.getValue(n);i!==void 0&&(e.push([n,i.get()]),i.set(n.startsWith("scale")?1:0))}),e}const mi={width:({x:t},{paddingLeft:e="0",paddingRight:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),height:({y:t},{paddingTop:e="0",paddingBottom:n="0"})=>t.max-t.min-parseFloat(e)-parseFloat(n),top:(t,{top:e})=>parseFloat(e),left:(t,{left:e})=>parseFloat(e),bottom:({y:t},{top:e})=>parseFloat(e)+(t.max-t.min),right:({x:t},{left:e})=>parseFloat(e)+(t.max-t.min),x:(t,{transform:e})=>Il(e,"x"),y:(t,{transform:e})=>Il(e,"y")};mi.translateX=mi.x;mi.translateY=mi.y;const gi=new Set;let _l=!1,Ml=!1,Ol=!1;function Av(){if(Ml){const t=Array.from(gi).filter(i=>i.needsMeasurement),e=new Set(t.map(i=>i.element)),n=new Map;e.forEach(i=>{const r=gx(i);r.length&&(n.set(i,r),i.render())}),t.forEach(i=>i.measureInitialState()),e.forEach(i=>{i.render();const r=n.get(i);r&&r.forEach(([s,o])=>{var a;(a=i.getValue(s))==null||a.set(o)})}),t.forEach(i=>i.measureEndState()),t.forEach(i=>{i.suspendedScrollY!==void 0&&window.scrollTo(0,i.suspendedScrollY)})}Ml=!1,_l=!1,gi.forEach(t=>t.complete(Ol)),gi.clear()}function Iv(){gi.forEach(t=>{t.readKeyframes(),t.needsMeasurement&&(Ml=!0)})}function vx(){Ol=!0,Iv(),Av(),Ol=!1}class hd{constructor(e,n,i,r,s,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=n,this.name=i,this.motionValue=r,this.element=s,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(gi.add(this),_l||(_l=!0,De.read(Iv),De.resolveKeyframes(Av))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:n,element:i,motionValue:r}=this;if(e[0]===null){const s=r==null?void 0:r.get(),o=e[e.length-1];if(s!==void 0)e[0]=s;else if(i&&n){const a=i.readValue(n,o);a!=null&&(e[0]=a)}e[0]===void 0&&(e[0]=o),r&&s===void 0&&r.set(e[0])}lx(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),gi.delete(this)}cancel(){this.state==="scheduled"&&(gi.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const yx=t=>t.startsWith("--");function bx(t,e,n){yx(e)?t.style.setProperty(e,n):t.style[e]=n}function pd(t){let e;return()=>(e===void 0&&(e=t()),e)}const Sx=pd(()=>window.ScrollTimeline!==void 0),Tx={};function kx(t,e){const n=pd(t);return()=>Tx[e]??n()}const _v=kx(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Wr=([t,e,n,i])=>`cubic-bezier(${t}, ${e}, ${n}, ${i})`,Eh={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Wr([0,.65,.55,1]),circOut:Wr([.55,0,1,.45]),backIn:Wr([.31,.01,.66,-.59]),backOut:Wr([.33,1.53,.69,.99])};function Mv(t,e){if(t)return typeof t=="function"?_v()?gv(t,e):"ease-out":Pv(t)?Wr(t):Array.isArray(t)?t.map(n=>Mv(n,e)||Eh.easeOut):Eh[t]}function Cx(t,e,n,{delay:i=0,duration:r=300,repeat:s=0,repeatType:o="loop",ease:a="easeOut",times:c}={},l=void 0){const u={[e]:n};c&&(u.offset=c);const d=Mv(a,r);Array.isArray(d)&&(u.easing=d);const h={delay:i,duration:r,easing:Array.isArray(d)?"linear":d,fill:"both",iterations:s+1,direction:o==="reverse"?"alternate":"normal"};return l&&(h.pseudoElement=l),t.animate(u,h)}function Ov(t){return typeof t=="function"&&"applyToOptions"in t}function wx({type:t,...e}){return Ov(t)&&_v()?t.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class xx extends dd{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,!e)return;const{element:n,name:i,keyframes:r,pseudoElement:s,allowFlatten:o=!1,finalKeyframe:a,onComplete:c}=e;this.isPseudoElement=!!s,this.allowFlatten=o,this.options=e,En(typeof e.type!="string",`animateMini doesn't support "type" as a string. Did you mean to import { spring } from "motion"?`);const l=wx(e);this.animation=Cx(n,i,r,l,s),l.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!s){const u=ud(r,this.options,a,this.speed);this.updateMotionValue?this.updateMotionValue(u):bx(n,i,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 e,n;(n=(e=this.animation).finish)==null||n.call(e)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var e,n;this.isPseudoElement||(n=(e=this.animation).commitStyles)==null||n.call(e)}get duration(){var n,i;const e=((i=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:i.call(n).duration)||0;return nn(Number(e))}get time(){return nn(Number(this.animation.currentTime)||0)}set time(e){this.finishedTime=null,this.animation.currentTime=Ht(e)}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(e){this.animation.startTime=e}attachTimeline({timeline:e,observe:n}){var i;return this.allowFlatten&&((i=this.animation.effect)==null||i.updateTiming({easing:"linear"})),this.animation.onfinish=null,e&&Sx()?(this.animation.timeline=e,It):n(this)}}const Dv={anticipate:wv,backInOut:Cv,circInOut:Ev};function Ex(t){return t in Dv}function Px(t){typeof t.ease=="string"&&Ex(t.ease)&&(t.ease=Dv[t.ease])}const Ph=10;class Rx extends xx{constructor(e){Px(e),Rv(e),super(e),e.startTime&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){const{motionValue:n,onUpdate:i,onComplete:r,element:s,...o}=this.options;if(!n)return;if(e!==void 0){n.set(e);return}const a=new fd({...o,autoplay:!1}),c=Ht(this.finishedTime??this.time);n.setWithVelocity(a.sample(c-Ph).value,a.sample(c).value,Ph),a.stop()}}const Rh=(t,e)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&(Kn.test(t)||t==="0")&&!t.startsWith("url("));function Ax(t){const e=t[0];if(t.length===1)return!0;for(let n=0;n<t.length;n++)if(t[n]!==e)return!0}function Ix(t,e,n,i){const r=t[0];if(r===null)return!1;if(e==="display"||e==="visibility")return!0;const s=t[t.length-1],o=Rh(r,e),a=Rh(s,e);return yr(o===a,`You are trying to animate ${e} from "${r}" to "${s}". ${r} is not an animatable value - to enable this animation set ${r} to a value animatable to ${s} via the \`style\` property.`),!o||!a?!1:Ax(t)||(n==="spring"||Ov(n))&&i}const _x=new Set(["opacity","clipPath","filter","transform"]),Mx=pd(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function Ox(t){var l;const{motionValue:e,name:n,repeatDelay:i,repeatType:r,damping:s,type:o}=t;if(!Uu((l=e==null?void 0:e.owner)==null?void 0:l.current))return!1;const{onUpdate:a,transformTemplate:c}=e.owner.getProps();return Mx()&&n&&_x.has(n)&&(n!=="transform"||!c)&&!a&&!i&&r!=="mirror"&&s!==0&&o!=="inertia"}const Dx=40;class Nx extends dd{constructor({autoplay:e=!0,delay:n=0,type:i="keyframes",repeat:r=0,repeatDelay:s=0,repeatType:o="loop",keyframes:a,name:c,motionValue:l,element:u,...d}){var g;super(),this.stop=()=>{var f,y;this._animation&&(this._animation.stop(),(f=this.stopTimeline)==null||f.call(this)),(y=this.keyframeResolver)==null||y.cancel()},this.createdAt=pt.now();const h={autoplay:e,delay:n,type:i,repeat:r,repeatDelay:s,repeatType:o,name:c,motionValue:l,element:u,...d},m=(u==null?void 0:u.KeyframeResolver)||hd;this.keyframeResolver=new m(a,(f,y,v)=>this.onKeyframesResolved(f,y,h,!v),c,l,u),(g=this.keyframeResolver)==null||g.scheduleResolve()}onKeyframesResolved(e,n,i,r){this.keyframeResolver=void 0;const{name:s,type:o,velocity:a,delay:c,isHandoff:l,onUpdate:u}=i;this.resolvedAt=pt.now(),Ix(e,s,o,a)||((xn.instantAnimations||!c)&&(u==null||u(ud(e,i,n))),e[0]=e[e.length-1],i.duration=0,i.repeat=0);const h={startTime:r?this.resolvedAt?this.resolvedAt-this.createdAt>Dx?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...i,keyframes:e},m=!l&&Ox(h)?new Rx({...h,element:h.motionValue.owner.current}):new fd(h);m.finished.then(()=>this.notifyFinished()).catch(It),this.pendingTimeline&&(this.stopTimeline=m.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=m}get finished(){return this._animation?this.animation.finished:this._finished}then(e,n){return this.finished.finally(e).then(()=>{})}get animation(){var e;return this._animation||((e=this.keyframeResolver)==null||e.resume(),vx()),this._animation}get duration(){return this.animation.duration}get time(){return this.animation.time}set time(e){this.animation.time=e}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(e){this.animation.speed=e}get startTime(){return this.animation.startTime}attachTimeline(e){return this._animation?this.stopTimeline=this.animation.attachTimeline(e):this.pendingTimeline=e,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var e;this._animation&&this.animation.cancel(),(e=this.keyframeResolver)==null||e.cancel()}}const md=(t,e,n,i={},r,s)=>o=>{const a=id(i,t)||{},c=a.delay||i.delay||0;let{elapsed:l=0}=i;l=l-Ht(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:e.getVelocity(),...a,delay:-l,onUpdate:h=>{e.set(h),a.onUpdate&&a.onUpdate(h)},onComplete:()=>{o(),a.onComplete&&a.onComplete()},name:t,motionValue:e,element:s?void 0:r};v2(a)||Object.assign(u,g2(t,u)),u.duration&&(u.duration=Ht(u.duration)),u.repeatDelay&&(u.repeatDelay=Ht(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let d=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(u.duration=0,u.delay===0&&(d=!0)),(xn.instantAnimations||xn.skipAnimations)&&(d=!0,u.duration=0,u.delay=0),u.allowFlatten=!a.type&&!a.ease,d&&!s&&e.get()!==void 0){const h=d2(u.keyframes,a);if(h!==void 0){De.update(()=>{u.onUpdate(h),u.onComplete()});return}}return a.isSync?new fd(u):new Nx(u)},Nv=new Set(["width","height","top","left","right","bottom",...br]);function Lx({protectedKeys:t,needsAnimating:e},n){const i=t.hasOwnProperty(n)&&e[n]!==!0;return e[n]=!1,i}function Lv(t,e,{delay:n=0,transitionOverride:i,type:r}={}){let{transition:s=t.getDefaultTransition(),transitionEnd:o,...a}=e;i&&(s=i);const c=[],l=r&&t.animationState&&t.animationState.getState()[r];for(const u in a){const d=t.getValue(u,t.latestValues[u]??null),h=a[u];if(h===void 0||l&&Lx(l,u))continue;const m={delay:n,...id(s||{},u)},g=d.get();if(g!==void 0&&!d.isAnimating&&!Array.isArray(h)&&h===g&&!m.velocity)continue;let f=!1;if(window.MotionHandoffAnimation){const v=cv(t);if(v){const C=window.MotionHandoffAnimation(v,u,De);C!==null&&(m.startTime=C,f=!0)}}kl(t,u),d.start(md(u,d,h,t.shouldReduceMotion&&Nv.has(u)?{type:!1}:m,t,f));const y=d.animation;y&&c.push(y)}return o&&Promise.all(c).then(()=>{De.update(()=>{o&&c2(t,o)})}),c}function Dl(t,e,n={}){var c;const i=ls(t,e,n.type==="exit"?(c=t.presenceContext)==null?void 0:c.custom:void 0);let{transition:r=t.getDefaultTransition()||{}}=i||{};n.transitionOverride&&(r=n.transitionOverride);const s=i?()=>Promise.all(Lv(t,i,n)):()=>Promise.resolve(),o=t.variantChildren&&t.variantChildren.size?(l=0)=>{const{delayChildren:u=0,staggerChildren:d,staggerDirection:h}=r;return Vx(t,e,u+l,d,h,n)}:()=>Promise.resolve(),{when:a}=r;if(a){const[l,u]=a==="beforeChildren"?[s,o]:[o,s];return l().then(()=>u())}else return Promise.all([s(),o(n.delay)])}function Vx(t,e,n=0,i=0,r=1,s){const o=[],a=(t.variantChildren.size-1)*i,c=r===1?(l=0)=>l*i:(l=0)=>a-l*i;return Array.from(t.variantChildren).sort(Fx).forEach((l,u)=>{l.notify("AnimationStart",e),o.push(Dl(l,e,{...s,delay:n+c(u)}).then(()=>l.notify("AnimationComplete",e)))}),Promise.all(o)}function Fx(t,e){return t.sortNodePosition(e)}function jx(t,e,n={}){t.notify("AnimationStart",e);let i;if(Array.isArray(e)){const r=e.map(s=>Dl(t,s,n));i=Promise.all(r)}else if(typeof e=="string")i=Dl(t,e,n);else{const r=typeof e=="function"?ls(t,e,n.custom):e;i=Promise.all(Lv(t,r,n))}return i.then(()=>{t.notify("AnimationComplete",e)})}function Vv(t,e){if(!Array.isArray(e))return!1;const n=e.length;if(n!==t.length)return!1;for(let i=0;i<n;i++)if(e[i]!==t[i])return!1;return!0}const Ux=Hu.length;function Fv(t){if(!t)return;if(!t.isControllingVariants){const n=t.parent?Fv(t.parent)||{}:{};return t.props.initial!==void 0&&(n.initial=t.props.initial),n}const e={};for(let n=0;n<Ux;n++){const i=Hu[n],r=t.props[i];(os(r)||r===!1)&&(e[i]=r)}return e}const Bx=[...$u].reverse(),$x=$u.length;function Hx(t){return e=>Promise.all(e.map(({animation:n,options:i})=>jx(t,n,i)))}function zx(t){let e=Hx(t),n=Ah(),i=!0;const r=c=>(l,u)=>{var h;const d=ls(t,u,c==="exit"?(h=t.presenceContext)==null?void 0:h.custom:void 0);if(d){const{transition:m,transitionEnd:g,...f}=d;l={...l,...f,...g}}return l};function s(c){e=c(t)}function o(c){const{props:l}=t,u=Fv(t.parent)||{},d=[],h=new Set;let m={},g=1/0;for(let y=0;y<$x;y++){const v=Bx[y],C=n[v],T=l[v]!==void 0?l[v]:u[v],k=os(T),b=v===c?C.isActive:null;b===!1&&(g=y);let w=T===u[v]&&T!==l[v]&&k;if(w&&i&&t.manuallyAnimateOnMount&&(w=!1),C.protectedKeys={...m},!C.isActive&&b===null||!T&&!C.prevProp||fa(T)||typeof T=="boolean")continue;const x=Wx(C.prevProp,T);let R=x||v===c&&C.isActive&&!w&&k||y>g&&k,_=!1;const S=Array.isArray(T)?T:[T];let A=S.reduce(r(v),{});b===!1&&(A={});const{prevResolvedValues:O={}}=C,z={...O,...A},K=Z=>{R=!0,h.has(Z)&&(_=!0,h.delete(Z)),C.needsAnimating[Z]=!0;const F=t.getValue(Z);F&&(F.liveStyle=!1)};for(const Z in z){const F=A[Z],ce=O[Z];if(m.hasOwnProperty(Z))continue;let I=!1;Tl(F)&&Tl(ce)?I=!Vv(F,ce):I=F!==ce,I?F!=null?K(Z):h.add(Z):F!==void 0&&h.has(Z)?K(Z):C.protectedKeys[Z]=!0}C.prevProp=T,C.prevResolvedValues=A,C.isActive&&(m={...m,...A}),i&&t.blockInitialAnimation&&(R=!1),R&&(!(w&&x)||_)&&d.push(...S.map(Z=>({animation:Z,options:{type:v}})))}if(h.size){const y={};if(typeof l.initial!="boolean"){const v=ls(t,Array.isArray(l.initial)?l.initial[0]:l.initial);v&&v.transition&&(y.transition=v.transition)}h.forEach(v=>{const C=t.getBaseTarget(v),T=t.getValue(v);T&&(T.liveStyle=!0),y[v]=C??null}),d.push({animation:y})}let f=!!d.length;return i&&(l.initial===!1||l.initial===l.animate)&&!t.manuallyAnimateOnMount&&(f=!1),i=!1,f?e(d):Promise.resolve()}function a(c,l){var d;if(n[c].isActive===l)return Promise.resolve();(d=t.variantChildren)==null||d.forEach(h=>{var m;return(m=h.animationState)==null?void 0:m.setActive(c,l)}),n[c].isActive=l;const u=o(c);for(const h in n)n[h].protectedKeys={};return u}return{animateChanges:o,setActive:a,setAnimateFunction:s,getState:()=>n,reset:()=>{n=Ah(),i=!0}}}function Wx(t,e){return typeof e=="string"?e!==t:Array.isArray(e)?!Vv(e,t):!1}function ci(t=!1){return{isActive:t,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Ah(){return{animate:ci(!0),whileInView:ci(),whileHover:ci(),whileTap:ci(),whileDrag:ci(),whileFocus:ci(),exit:ci()}}class ni{constructor(e){this.isMounted=!1,this.node=e}update(){}}class qx extends ni{constructor(e){super(e),e.animationState||(e.animationState=zx(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();fa(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:n}=this.node.prevProps||{};e!==n&&this.updateAnimationControlsSubscription()}unmount(){var e;this.node.animationState.reset(),(e=this.unmountControls)==null||e.call(this)}}let Gx=0;class Kx extends ni{constructor(){super(...arguments),this.id=Gx++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:n}=this.node.presenceContext,{isPresent:i}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===i)return;const r=this.node.animationState.setActive("exit",!e);n&&!e&&r.then(()=>{n(this.id)})}mount(){const{register:e,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),e&&(this.unmount=e(this.id))}unmount(){}}const Zx={animation:{Feature:qx},exit:{Feature:Kx}};function fs(t,e,n,i={passive:!0}){return t.addEventListener(e,n,i),()=>t.removeEventListener(e,n)}const gd=t=>t.pointerType==="mouse"?typeof t.button!="number"||t.button<=0:t.isPrimary!==!1;function Es(t){return{point:{x:t.pageX,y:t.pageY}}}const Yx=t=>e=>gd(e)&&t(e,Es(e));function Qr(t,e,n,i){return fs(t,e,Yx(n),i)}function jv({top:t,left:e,right:n,bottom:i}){return{x:{min:e,max:n},y:{min:t,max:i}}}function Jx({x:t,y:e}){return{top:e.min,right:t.max,bottom:e.max,left:t.min}}function Xx(t,e){if(!e)return t;const n=e({x:t.left,y:t.top}),i=e({x:t.right,y:t.bottom});return{top:n.y,left:n.x,bottom:i.y,right:i.x}}const Uv=1e-4,Qx=1-Uv,eE=1+Uv,Bv=.01,tE=0-Bv,nE=0+Bv;function ct(t){return t.max-t.min}function iE(t,e,n){return Math.abs(t-e)<=n}function Ih(t,e,n,i=.5){t.origin=i,t.originPoint=Oe(e.min,e.max,t.origin),t.scale=ct(n)/ct(e),t.translate=Oe(n.min,n.max,t.origin)-t.originPoint,(t.scale>=Qx&&t.scale<=eE||isNaN(t.scale))&&(t.scale=1),(t.translate>=tE&&t.translate<=nE||isNaN(t.translate))&&(t.translate=0)}function es(t,e,n,i){Ih(t.x,e.x,n.x,i?i.originX:void 0),Ih(t.y,e.y,n.y,i?i.originY:void 0)}function _h(t,e,n){t.min=n.min+e.min,t.max=t.min+ct(e)}function rE(t,e,n){_h(t.x,e.x,n.x),_h(t.y,e.y,n.y)}function Mh(t,e,n){t.min=e.min-n.min,t.max=t.min+ct(e)}function ts(t,e,n){Mh(t.x,e.x,n.x),Mh(t.y,e.y,n.y)}const Oh=()=>({translate:0,scale:1,origin:0,originPoint:0}),Zi=()=>({x:Oh(),y:Oh()}),Dh=()=>({min:0,max:0}),Be=()=>({x:Dh(),y:Dh()});function Et(t){return[t("x"),t("y")]}function sc(t){return t===void 0||t===1}function Nl({scale:t,scaleX:e,scaleY:n}){return!sc(t)||!sc(e)||!sc(n)}function di(t){return Nl(t)||$v(t)||t.z||t.rotate||t.rotateX||t.rotateY||t.skewX||t.skewY}function $v(t){return Nh(t.x)||Nh(t.y)}function Nh(t){return t&&t!=="0%"}function zo(t,e,n){const i=t-n,r=e*i;return n+r}function Lh(t,e,n,i,r){return r!==void 0&&(t=zo(t,r,i)),zo(t,n,i)+e}function Ll(t,e=0,n=1,i,r){t.min=Lh(t.min,e,n,i,r),t.max=Lh(t.max,e,n,i,r)}function Hv(t,{x:e,y:n}){Ll(t.x,e.translate,e.scale,e.originPoint),Ll(t.y,n.translate,n.scale,n.originPoint)}const Vh=.999999999999,Fh=1.0000000000001;function sE(t,e,n,i=!1){const r=n.length;if(!r)return;e.x=e.y=1;let s,o;for(let a=0;a<r;a++){s=n[a],o=s.projectionDelta;const{visualElement:c}=s.options;c&&c.props.style&&c.props.style.display==="contents"||(i&&s.options.layoutScroll&&s.scroll&&s!==s.root&&Ji(t,{x:-s.scroll.offset.x,y:-s.scroll.offset.y}),o&&(e.x*=o.x.scale,e.y*=o.y.scale,Hv(t,o)),i&&di(s.latestValues)&&Ji(t,s.latestValues))}e.x<Fh&&e.x>Vh&&(e.x=1),e.y<Fh&&e.y>Vh&&(e.y=1)}function Yi(t,e){t.min=t.min+e,t.max=t.max+e}function jh(t,e,n,i,r=.5){const s=Oe(t.min,t.max,r);Ll(t,e,n,s,i)}function Ji(t,e){jh(t.x,e.x,e.scaleX,e.scale,e.originX),jh(t.y,e.y,e.scaleY,e.scale,e.originY)}function zv(t,e){return jv(Xx(t.getBoundingClientRect(),e))}function oE(t,e,n){const i=zv(t,n),{scroll:r}=e;return r&&(Yi(i.x,r.offset.x),Yi(i.y,r.offset.y)),i}const Wv=({current:t})=>t?t.ownerDocument.defaultView:null,Uh=(t,e)=>Math.abs(t-e);function aE(t,e){const n=Uh(t.x,e.x),i=Uh(t.y,e.y);return Math.sqrt(n**2+i**2)}class qv{constructor(e,n,{transformPagePoint:i,contextWindow:r,dragSnapToOrigin:s=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const d=ac(this.lastMoveEventInfo,this.history),h=this.startEvent!==null,m=aE(d.offset,{x:0,y:0})>=3;if(!h&&!m)return;const{point:g}=d,{timestamp:f}=nt;this.history.push({...g,timestamp:f});const{onStart:y,onMove:v}=this.handlers;h||(y&&y(this.lastMoveEvent,d),this.startEvent=this.lastMoveEvent),v&&v(this.lastMoveEvent,d)},this.handlePointerMove=(d,h)=>{this.lastMoveEvent=d,this.lastMoveEventInfo=oc(h,this.transformPagePoint),De.update(this.updatePoint,!0)},this.handlePointerUp=(d,h)=>{this.end();const{onEnd:m,onSessionEnd:g,resumeAnimation:f}=this.handlers;if(this.dragSnapToOrigin&&f&&f(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const y=ac(d.type==="pointercancel"?this.lastMoveEventInfo:oc(h,this.transformPagePoint),this.history);this.startEvent&&m&&m(d,y),g&&g(d,y)},!gd(e))return;this.dragSnapToOrigin=s,this.handlers=n,this.transformPagePoint=i,this.contextWindow=r||window;const o=Es(e),a=oc(o,this.transformPagePoint),{point:c}=a,{timestamp:l}=nt;this.history=[{...c,timestamp:l}];const{onSessionStart:u}=n;u&&u(e,ac(a,this.history)),this.removeListeners=ws(Qr(this.contextWindow,"pointermove",this.handlePointerMove),Qr(this.contextWindow,"pointerup",this.handlePointerUp),Qr(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),Gn(this.updatePoint)}}function oc(t,e){return e?{point:e(t.point)}:t}function Bh(t,e){return{x:t.x-e.x,y:t.y-e.y}}function ac({point:t},e){return{point:t,delta:Bh(t,Gv(e)),offset:Bh(t,cE(e)),velocity:lE(e,.1)}}function cE(t){return t[0]}function Gv(t){return t[t.length-1]}function lE(t,e){if(t.length<2)return{x:0,y:0};let n=t.length-1,i=null;const r=Gv(t);for(;n>=0&&(i=t[n],!(r.timestamp-i.timestamp>Ht(e)));)n--;if(!i)return{x:0,y:0};const s=nn(r.timestamp-i.timestamp);if(s===0)return{x:0,y:0};const o={x:(r.x-i.x)/s,y:(r.y-i.y)/s};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function uE(t,{min:e,max:n},i){return e!==void 0&&t<e?t=i?Oe(e,t,i.min):Math.max(t,e):n!==void 0&&t>n&&(t=i?Oe(n,t,i.max):Math.min(t,n)),t}function $h(t,e,n){return{min:e!==void 0?t.min+e:void 0,max:n!==void 0?t.max+n-(t.max-t.min):void 0}}function dE(t,{top:e,left:n,bottom:i,right:r}){return{x:$h(t.x,n,r),y:$h(t.y,e,i)}}function Hh(t,e){let n=e.min-t.min,i=e.max-t.max;return e.max-e.min<t.max-t.min&&([n,i]=[i,n]),{min:n,max:i}}function fE(t,e){return{x:Hh(t.x,e.x),y:Hh(t.y,e.y)}}function hE(t,e){let n=.5;const i=ct(t),r=ct(e);return r>i?n=ds(e.min,e.max-i,t.min):i>r&&(n=ds(t.min,t.max-r,e.min)),Pn(0,1,n)}function pE(t,e){const n={};return e.min!==void 0&&(n.min=e.min-t.min),e.max!==void 0&&(n.max=e.max-t.min),n}const Vl=.35;function mE(t=Vl){return t===!1?t=0:t===!0&&(t=Vl),{x:zh(t,"left","right"),y:zh(t,"top","bottom")}}function zh(t,e,n){return{min:Wh(t,e),max:Wh(t,n)}}function Wh(t,e){return typeof t=="number"?t:t[e]||0}const Vt={x:!1,y:!1};function Kv(){return Vt.x||Vt.y}function gE(t){return t==="x"||t==="y"?Vt[t]?null:(Vt[t]=!0,()=>{Vt[t]=!1}):Vt.x||Vt.y?null:(Vt.x=Vt.y=!0,()=>{Vt.x=Vt.y=!1})}const vE=new WeakMap;class yE{constructor(e){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Be(),this.visualElement=e}start(e,{snapToCursor:n=!1}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const r=u=>{const{dragSnapToOrigin:d}=this.getProps();d?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Es(u).point)},s=(u,d)=>{const{drag:h,dragPropagation:m,onDragStart:g}=this.getProps();if(h&&!m&&(this.openDragLock&&this.openDragLock(),this.openDragLock=gE(h),!this.openDragLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Et(y=>{let v=this.getAxisMotionValue(y).get()||0;if(tn.test(v)){const{projection:C}=this.visualElement;if(C&&C.layout){const T=C.layout.layoutBox[y];T&&(v=ct(T)*(parseFloat(v)/100))}}this.originPoint[y]=v}),g&&De.postRender(()=>g(u,d)),kl(this.visualElement,"transform");const{animationState:f}=this.visualElement;f&&f.setActive("whileDrag",!0)},o=(u,d)=>{const{dragPropagation:h,dragDirectionLock:m,onDirectionLock:g,onDrag:f}=this.getProps();if(!h&&!this.openDragLock)return;const{offset:y}=d;if(m&&this.currentDirection===null){this.currentDirection=bE(y),this.currentDirection!==null&&g&&g(this.currentDirection);return}this.updateAxis("x",d.point,y),this.updateAxis("y",d.point,y),this.visualElement.render(),f&&f(u,d)},a=(u,d)=>this.stop(u,d),c=()=>Et(u=>{var d;return this.getAnimationState(u)==="paused"&&((d=this.getAxisMotionValue(u).animation)==null?void 0:d.play())}),{dragSnapToOrigin:l}=this.getProps();this.panSession=new qv(e,{onSessionStart:r,onStart:s,onMove:o,onSessionEnd:a,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:l,contextWindow:Wv(this.visualElement)})}stop(e,n){const i=this.isDragging;if(this.cancel(),!i)return;const{velocity:r}=n;this.startAnimation(r);const{onDragEnd:s}=this.getProps();s&&De.postRender(()=>s(e,n))}cancel(){this.isDragging=!1;const{projection:e,animationState:n}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:i}=this.getProps();!i&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(e,n,i){const{drag:r}=this.getProps();if(!i||!Bs(e,r,this.currentDirection))return;const s=this.getAxisMotionValue(e);let o=this.originPoint[e]+i[e];this.constraints&&this.constraints[e]&&(o=uE(o,this.constraints[e],this.elastic[e])),s.set(o)}resolveConstraints(){var s;const{dragConstraints:e,dragElastic:n}=this.getProps(),i=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(s=this.visualElement.projection)==null?void 0:s.layout,r=this.constraints;e&&qi(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&i?this.constraints=dE(i.layoutBox,e):this.constraints=!1,this.elastic=mE(n),r!==this.constraints&&i&&this.constraints&&!this.hasMutatedConstraints&&Et(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=pE(i.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:n}=this.getProps();if(!e||!qi(e))return!1;const i=e.current;En(i!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:r}=this.visualElement;if(!r||!r.layout)return!1;const s=oE(i,r.root,this.visualElement.getTransformPagePoint());let o=fE(r.layout.layoutBox,s);if(n){const a=n(Jx(o));this.hasMutatedConstraints=!!a,a&&(o=jv(a))}return o}startAnimation(e){const{drag:n,dragMomentum:i,dragElastic:r,dragTransition:s,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),c=this.constraints||{},l=Et(u=>{if(!Bs(u,n,this.currentDirection))return;let d=c&&c[u]||{};o&&(d={min:0,max:0});const h=r?200:1e6,m=r?40:1e7,g={type:"inertia",velocity:i?e[u]:0,bounceStiffness:h,bounceDamping:m,timeConstant:750,restDelta:1,restSpeed:10,...s,...d};return this.startAxisValueAnimation(u,g)});return Promise.all(l).then(a)}startAxisValueAnimation(e,n){const i=this.getAxisMotionValue(e);return kl(this.visualElement,e),i.start(md(e,i,0,n,this.visualElement,!1))}stopAnimation(){Et(e=>this.getAxisMotionValue(e).stop())}pauseAnimation(){Et(e=>{var n;return(n=this.getAxisMotionValue(e).animation)==null?void 0:n.pause()})}getAnimationState(e){var n;return(n=this.getAxisMotionValue(e).animation)==null?void 0:n.state}getAxisMotionValue(e){const n=`_drag${e.toUpperCase()}`,i=this.visualElement.getProps(),r=i[n];return r||this.visualElement.getValue(e,(i.initial?i.initial[e]:void 0)||0)}snapToCursor(e){Et(n=>{const{drag:i}=this.getProps();if(!Bs(n,i,this.currentDirection))return;const{projection:r}=this.visualElement,s=this.getAxisMotionValue(n);if(r&&r.layout){const{min:o,max:a}=r.layout.layoutBox[n];s.set(e[n]-Oe(o,a,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:n}=this.getProps(),{projection:i}=this.visualElement;if(!qi(n)||!i||!this.constraints)return;this.stopAnimation();const r={x:0,y:0};Et(o=>{const a=this.getAxisMotionValue(o);if(a&&this.constraints!==!1){const c=a.get();r[o]=hE({min:c,max:c},this.constraints[o])}});const{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",i.root&&i.root.updateScroll(),i.updateLayout(),this.resolveConstraints(),Et(o=>{if(!Bs(o,e,null))return;const a=this.getAxisMotionValue(o),{min:c,max:l}=this.constraints[o];a.set(Oe(c,l,r[o]))})}addListeners(){if(!this.visualElement.current)return;vE.set(this.visualElement,this);const e=this.visualElement.current,n=Qr(e,"pointerdown",c=>{const{drag:l,dragListener:u=!0}=this.getProps();l&&u&&this.start(c)}),i=()=>{const{dragConstraints:c}=this.getProps();qi(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,s=r.addEventListener("measure",i);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),De.read(i);const o=fs(window,"resize",()=>this.scalePositionWithinConstraints()),a=r.addEventListener("didUpdate",({delta:c,hasLayoutChanged:l})=>{this.isDragging&&l&&(Et(u=>{const d=this.getAxisMotionValue(u);d&&(this.originPoint[u]+=c[u].translate,d.set(d.get()+c[u].translate))}),this.visualElement.render())});return()=>{o(),n(),s(),a&&a()}}getProps(){const e=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:i=!1,dragPropagation:r=!1,dragConstraints:s=!1,dragElastic:o=Vl,dragMomentum:a=!0}=e;return{...e,drag:n,dragDirectionLock:i,dragPropagation:r,dragConstraints:s,dragElastic:o,dragMomentum:a}}}function Bs(t,e,n){return(e===!0||e===t)&&(n===null||n===t)}function bE(t,e=10){let n=null;return Math.abs(t.y)>e?n="y":Math.abs(t.x)>e&&(n="x"),n}class SE extends ni{constructor(e){super(e),this.removeGroupControls=It,this.removeListeners=It,this.controls=new yE(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||It}unmount(){this.removeGroupControls(),this.removeListeners()}}const qh=t=>(e,n)=>{t&&De.postRender(()=>t(e,n))};class TE extends ni{constructor(){super(...arguments),this.removePointerDownListener=It}onPointerDown(e){this.session=new qv(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Wv(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:n,onPan:i,onPanEnd:r}=this.node.getProps();return{onSessionStart:qh(e),onStart:qh(n),onMove:i,onEnd:(s,o)=>{delete this.session,r&&De.postRender(()=>r(s,o))}}}mount(){this.removePointerDownListener=Qr(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const To={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Gh(t,e){return e.max===e.min?0:t/(e.max-e.min)*100}const Fr={correct:(t,e)=>{if(!e.target)return t;if(typeof t=="string")if(le.test(t))t=parseFloat(t);else return t;const n=Gh(t,e.target.x),i=Gh(t,e.target.y);return`${n}% ${i}%`}},kE={correct:(t,{treeScale:e,projectionDelta:n})=>{const i=t,r=Kn.parse(t);if(r.length>5)return i;const s=Kn.createTransformer(t),o=typeof r[0]!="number"?1:0,a=n.x.scale*e.x,c=n.y.scale*e.y;r[0+o]/=a,r[1+o]/=c;const l=Oe(a,c,.5);return typeof r[2+o]=="number"&&(r[2+o]/=l),typeof r[3+o]=="number"&&(r[3+o]/=l),s(r)}};class CE extends B.Component{componentDidMount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:i,layoutId:r}=this.props,{projection:s}=e;Lw(wE),s&&(n.group&&n.group.add(s),i&&i.register&&r&&i.register(s),s.root.didUpdate(),s.addEventListener("animationComplete",()=>{this.safeToRemove()}),s.setOptions({...s.options,onExitComplete:()=>this.safeToRemove()})),To.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:n,visualElement:i,drag:r,isPresent:s}=this.props,{projection:o}=i;return o&&(o.isPresent=s,r||e.layoutDependency!==n||n===void 0||e.isPresent!==s?o.willUpdate():this.safeToRemove(),e.isPresent!==s&&(s?o.promote():o.relegate()||De.postRender(()=>{const a=o.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),Wu.postRender(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:n,switchLayoutGroup:i}=this.props,{projection:r}=e;r&&(r.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(r),i&&i.deregister&&i.deregister(r))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function Zv(t){const[e,n]=H0(),i=B.useContext(Lu);return E.jsx(CE,{...t,layoutGroup:i,switchLayoutGroup:B.useContext(Y0),isPresent:e,safeToRemove:n})}const wE={borderRadius:{...Fr,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Fr,borderTopRightRadius:Fr,borderBottomLeftRadius:Fr,borderBottomRightRadius:Fr,boxShadow:kE};function xE(t,e,n){const i=at(t)?t:fr(t);return i.start(md("",i,e,n)),i.animation}const EE=(t,e)=>t.depth-e.depth;class PE{constructor(){this.children=[],this.isDirty=!1}add(e){ed(this.children,e),this.isDirty=!0}remove(e){td(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(EE),this.isDirty=!1,this.children.forEach(e)}}function RE(t,e){const n=pt.now(),i=({timestamp:r})=>{const s=r-n;s>=e&&(Gn(i),t(s-e))};return De.setup(i,!0),()=>Gn(i)}const Yv=["TopLeft","TopRight","BottomLeft","BottomRight"],AE=Yv.length,Kh=t=>typeof t=="string"?parseFloat(t):t,Zh=t=>typeof t=="number"||le.test(t);function IE(t,e,n,i,r,s){r?(t.opacity=Oe(0,n.opacity??1,_E(i)),t.opacityExit=Oe(e.opacity??1,0,ME(i))):s&&(t.opacity=Oe(e.opacity??1,n.opacity??1,i));for(let o=0;o<AE;o++){const a=`border${Yv[o]}Radius`;let c=Yh(e,a),l=Yh(n,a);if(c===void 0&&l===void 0)continue;c||(c=0),l||(l=0),c===0||l===0||Zh(c)===Zh(l)?(t[a]=Math.max(Oe(Kh(c),Kh(l),i),0),(tn.test(l)||tn.test(c))&&(t[a]+="%")):t[a]=l}(e.rotate||n.rotate)&&(t.rotate=Oe(e.rotate||0,n.rotate||0,i))}function Yh(t,e){return t[e]!==void 0?t[e]:t.borderRadius}const _E=Jv(0,.5,xv),ME=Jv(.5,.95,It);function Jv(t,e,n){return i=>i<t?0:i>e?1:n(ds(t,e,i))}function Jh(t,e){t.min=e.min,t.max=e.max}function xt(t,e){Jh(t.x,e.x),Jh(t.y,e.y)}function Xh(t,e){t.translate=e.translate,t.scale=e.scale,t.originPoint=e.originPoint,t.origin=e.origin}function Qh(t,e,n,i,r){return t-=e,t=zo(t,1/n,i),r!==void 0&&(t=zo(t,1/r,i)),t}function OE(t,e=0,n=1,i=.5,r,s=t,o=t){if(tn.test(e)&&(e=parseFloat(e),e=Oe(o.min,o.max,e/100)-o.min),typeof e!="number")return;let a=Oe(s.min,s.max,i);t===s&&(a-=e),t.min=Qh(t.min,e,n,a,r),t.max=Qh(t.max,e,n,a,r)}function ep(t,e,[n,i,r],s,o){OE(t,e[n],e[i],e[r],e.scale,s,o)}const DE=["x","scaleX","originX"],NE=["y","scaleY","originY"];function tp(t,e,n,i){ep(t.x,e,DE,n?n.x:void 0,i?i.x:void 0),ep(t.y,e,NE,n?n.y:void 0,i?i.y:void 0)}function np(t){return t.translate===0&&t.scale===1}function Xv(t){return np(t.x)&&np(t.y)}function ip(t,e){return t.min===e.min&&t.max===e.max}function LE(t,e){return ip(t.x,e.x)&&ip(t.y,e.y)}function rp(t,e){return Math.round(t.min)===Math.round(e.min)&&Math.round(t.max)===Math.round(e.max)}function Qv(t,e){return rp(t.x,e.x)&&rp(t.y,e.y)}function sp(t){return ct(t.x)/ct(t.y)}function op(t,e){return t.translate===e.translate&&t.scale===e.scale&&t.originPoint===e.originPoint}class VE{constructor(){this.members=[]}add(e){ed(this.members,e),e.scheduleRender()}remove(e){if(td(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(e){const n=this.members.findIndex(r=>e===r);if(n===0)return!1;let i;for(let r=n;r>=0;r--){const s=this.members[r];if(s.isPresent!==!1){i=s;break}}return i?(this.promote(i),!0):!1}promote(e,n){const i=this.lead;if(e!==i&&(this.prevLead=i,this.lead=e,e.show(),i)){i.instance&&i.scheduleRender(),e.scheduleRender(),e.resumeFrom=i,n&&(e.resumeFrom.preserveOpacity=!0),i.snapshot&&(e.snapshot=i.snapshot,e.snapshot.latestValues=i.animationValues||i.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:r}=e.options;r===!1&&i.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:n,resumingFrom:i}=e;n.onExitComplete&&n.onExitComplete(),i&&i.options.onExitComplete&&i.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function FE(t,e,n){let i="";const r=t.x.translate/e.x,s=t.y.translate/e.y,o=(n==null?void 0:n.z)||0;if((r||s||o)&&(i=`translate3d(${r}px, ${s}px, ${o}px) `),(e.x!==1||e.y!==1)&&(i+=`scale(${1/e.x}, ${1/e.y}) `),n){const{transformPerspective:l,rotate:u,rotateX:d,rotateY:h,skewX:m,skewY:g}=n;l&&(i=`perspective(${l}px) ${i}`),u&&(i+=`rotate(${u}deg) `),d&&(i+=`rotateX(${d}deg) `),h&&(i+=`rotateY(${h}deg) `),m&&(i+=`skewX(${m}deg) `),g&&(i+=`skewY(${g}deg) `)}const a=t.x.scale*e.x,c=t.y.scale*e.y;return(a!==1||c!==1)&&(i+=`scale(${a}, ${c})`),i||"none"}function ey(t){return $0(t)&&"ownerSVGElement"in t}function jE(t){return ey(t)&&t.tagName==="svg"}const cc=["","X","Y","Z"],UE={visibility:"hidden"},BE=1e3;let $E=0;function lc(t,e,n,i){const{latestValues:r}=e;r[t]&&(n[t]=r[t],e.setStaticValue(t,0),i&&(i[t]=0))}function ty(t){if(t.hasCheckedOptimisedAppear=!0,t.root===t)return;const{visualElement:e}=t.options;if(!e)return;const n=cv(e);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:r,layoutId:s}=t.options;window.MotionCancelOptimisedAnimation(n,"transform",De,!(r||s))}const{parent:i}=t;i&&!i.hasCheckedOptimisedAppear&&ty(i)}function ny({attachResizeListener:t,defaultParent:e,measureScroll:n,checkIsScrollRoot:i,resetTransform:r}){return class{constructor(o={},a=e==null?void 0:e()){this.id=$E++,this.animationId=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(WE),this.nodes.forEach(YE),this.nodes.forEach(JE),this.nodes.forEach(qE)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=o,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 PE)}addEventListener(o,a){return this.eventHandlers.has(o)||this.eventHandlers.set(o,new nd),this.eventHandlers.get(o).add(a)}notifyListeners(o,...a){const c=this.eventHandlers.get(o);c&&c.notify(...a)}hasListeners(o){return this.eventHandlers.has(o)}mount(o){if(this.instance)return;this.isSVG=ey(o)&&!jE(o),this.instance=o;const{layoutId:a,layout:c,visualElement:l}=this.options;if(l&&!l.current&&l.mount(o),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||a)&&(this.isLayoutDirty=!0),t){let u;const d=()=>this.root.updateBlockedByResize=!1;t(o,()=>{this.root.updateBlockedByResize=!0,u&&u(),u=RE(d,250),To.hasAnimatedSinceResize&&(To.hasAnimatedSinceResize=!1,this.nodes.forEach(cp))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&l&&(a||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:h,layout:m})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||l.getDefaultTransition()||nP,{onLayoutAnimationStart:f,onLayoutAnimationComplete:y}=l.getProps(),v=!this.targetLayout||!Qv(this.targetLayout,m),C=!d&&h;if(this.options.layoutRoot||this.resumeFrom||C||d&&(v||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const T={...id(g,"layout"),onPlay:f,onComplete:y};(l.shouldReduceMotion||this.options.layoutRoot)&&(T.delay=0,T.type=!1),this.startAnimation(T),this.setAnimationOrigin(u,C)}else d||cp(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=m})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const o=this.getStack();o&&o.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),Gn(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(XE),this.animationId++)}getTransformTemplate(){const{visualElement:o}=this.options;return o&&o.getProps().transformTemplate}willUpdate(o=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&ty(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const d=this.path[u];d.shouldResetTransform=!0,d.updateScroll("snapshot"),d.options.layoutRoot&&d.willUpdate(!1)}const{layoutId:a,layout:c}=this.options;if(a===void 0&&!c)return;const l=this.getTransformTemplate();this.prevTransformTemplateValue=l?l(this.latestValues,""):void 0,this.updateSnapshot(),o&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(ap);return}this.isUpdating||this.nodes.forEach(KE),this.isUpdating=!1,this.nodes.forEach(ZE),this.nodes.forEach(HE),this.nodes.forEach(zE),this.clearAllSnapshots();const a=pt.now();nt.delta=Pn(0,1e3/60,a-nt.timestamp),nt.timestamp=a,nt.isProcessing=!0,ec.update.process(nt),ec.preRender.process(nt),ec.render.process(nt),nt.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,Wu.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(GE),this.sharedNodes.forEach(QE)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,De.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){De.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!ct(this.snapshot.measuredBox.x)&&!ct(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 o=this.layout;this.layout=this.measure(!1),this.layoutCorrected=Be(),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,o?o.layoutBox:void 0)}updateScroll(o="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===o&&(a=!1),a&&this.instance){const c=i(this.instance);this.scroll={animationId:this.root.animationId,phase:o,isRoot:c,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!r)return;const o=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!Xv(this.projectionDelta),c=this.getTransformTemplate(),l=c?c(this.latestValues,""):void 0,u=l!==this.prevTransformTemplateValue;o&&this.instance&&(a||di(this.latestValues)||u)&&(r(this.instance,l),this.shouldResetTransform=!1,this.scheduleRender())}measure(o=!0){const a=this.measurePageBox();let c=this.removeElementScroll(a);return o&&(c=this.removeTransform(c)),iP(c),{animationId:this.root.animationId,measuredBox:a,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var l;const{visualElement:o}=this.options;if(!o)return Be();const a=o.measureViewportBox();if(!(((l=this.scroll)==null?void 0:l.wasRoot)||this.path.some(rP))){const{scroll:u}=this.root;u&&(Yi(a.x,u.offset.x),Yi(a.y,u.offset.y))}return a}removeElementScroll(o){var c;const a=Be();if(xt(a,o),(c=this.scroll)!=null&&c.wasRoot)return a;for(let l=0;l<this.path.length;l++){const u=this.path[l],{scroll:d,options:h}=u;u!==this.root&&d&&h.layoutScroll&&(d.wasRoot&&xt(a,o),Yi(a.x,d.offset.x),Yi(a.y,d.offset.y))}return a}applyTransform(o,a=!1){const c=Be();xt(c,o);for(let l=0;l<this.path.length;l++){const u=this.path[l];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&Ji(c,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),di(u.latestValues)&&Ji(c,u.latestValues)}return di(this.latestValues)&&Ji(c,this.latestValues),c}removeTransform(o){const a=Be();xt(a,o);for(let c=0;c<this.path.length;c++){const l=this.path[c];if(!l.instance||!di(l.latestValues))continue;Nl(l.latestValues)&&l.updateSnapshot();const u=Be(),d=l.measurePageBox();xt(u,d),tp(a,l.latestValues,l.snapshot?l.snapshot.layoutBox:void 0,u)}return di(this.latestValues)&&tp(a,this.latestValues),a}setTargetDelta(o){this.targetDelta=o,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(o){this.options={...this.options,...o,crossfade:o.crossfade!==void 0?o.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!==nt.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(o=!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(!(o||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(h=this.parent)!=null&&h.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:d}=this.options;if(!(!this.layout||!(u||d))){if(this.resolvedRelativeTargetAt=nt.timestamp,!this.targetDelta&&!this.relativeTarget){const m=this.getClosestProjectingParent();m&&m.layout&&this.animationProgress!==1?(this.relativeParent=m,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Be(),this.relativeTargetOrigin=Be(),ts(this.relativeTargetOrigin,this.layout.layoutBox,m.layout.layoutBox),xt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=Be(),this.targetWithTransforms=Be()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),rE(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):xt(this.target,this.layout.layoutBox),Hv(this.target,this.targetDelta)):xt(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget)){this.attemptToResolveRelativeTarget=!1;const m=this.getClosestProjectingParent();m&&!!m.resumingFrom==!!this.resumingFrom&&!m.options.layoutScroll&&m.target&&this.animationProgress!==1?(this.relativeParent=m,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Be(),this.relativeTargetOrigin=Be(),ts(this.relativeTargetOrigin,this.target,m.target),xt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||Nl(this.parent.latestValues)||$v(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 o=this.getLead(),a=!!this.resumingFrom||this!==o;let c=!0;if((this.isProjectionDirty||(g=this.parent)!=null&&g.isProjectionDirty)&&(c=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===nt.timestamp&&(c=!1),c)return;const{layout:l,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||!(l||u))return;xt(this.layoutCorrected,this.layout.layoutBox);const d=this.treeScale.x,h=this.treeScale.y;sE(this.layoutCorrected,this.treeScale,this.path,a),o.layout&&!o.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(o.target=o.layout.layoutBox,o.targetWithTransforms=Be());const{target:m}=o;if(!m){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Xh(this.prevProjectionDelta.x,this.projectionDelta.x),Xh(this.prevProjectionDelta.y,this.projectionDelta.y)),es(this.projectionDelta,this.layoutCorrected,m,this.latestValues),(this.treeScale.x!==d||this.treeScale.y!==h||!op(this.projectionDelta.x,this.prevProjectionDelta.x)||!op(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",m))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(o=!0){var a;if((a=this.options.visualElement)==null||a.scheduleRender(),o){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Zi(),this.projectionDelta=Zi(),this.projectionDeltaWithTransform=Zi()}setAnimationOrigin(o,a=!1){const c=this.snapshot,l=c?c.latestValues:{},u={...this.latestValues},d=Zi();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const h=Be(),m=c?c.source:void 0,g=this.layout?this.layout.source:void 0,f=m!==g,y=this.getStack(),v=!y||y.members.length<=1,C=!!(f&&!v&&this.options.crossfade===!0&&!this.path.some(tP));this.animationProgress=0;let T;this.mixTargetDelta=k=>{const b=k/1e3;lp(d.x,o.x,b),lp(d.y,o.y,b),this.setTargetDelta(d),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(ts(h,this.layout.layoutBox,this.relativeParent.layout.layoutBox),eP(this.relativeTarget,this.relativeTargetOrigin,h,b),T&&LE(this.relativeTarget,T)&&(this.isProjectionDirty=!1),T||(T=Be()),xt(T,this.relativeTarget)),f&&(this.animationValues=u,IE(u,l,this.latestValues,b,C,v)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=b},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(o){var a,c,l;this.notifyListeners("animationStart"),(a=this.currentAnimation)==null||a.stop(),(l=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||l.stop(),this.pendingAnimation&&(Gn(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=De.update(()=>{To.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=fr(0)),this.currentAnimation=xE(this.motionValue,[0,1e3],{...o,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),o.onUpdate&&o.onUpdate(u)},onStop:()=>{},onComplete:()=>{o.onComplete&&o.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 o=this.getStack();o&&o.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(BE),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const o=this.getLead();let{targetWithTransforms:a,target:c,layout:l,latestValues:u}=o;if(!(!a||!c||!l)){if(this!==o&&this.layout&&l&&iy(this.options.animationType,this.layout.layoutBox,l.layoutBox)){c=this.target||Be();const d=ct(this.layout.layoutBox.x);c.x.min=o.target.x.min,c.x.max=c.x.min+d;const h=ct(this.layout.layoutBox.y);c.y.min=o.target.y.min,c.y.max=c.y.min+h}xt(a,c),Ji(a,u),es(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(o,a){this.sharedNodes.has(o)||this.sharedNodes.set(o,new VE),this.sharedNodes.get(o).add(a);const l=a.options.initialPromotionConfig;a.promote({transition:l?l.transition:void 0,preserveFollowOpacity:l&&l.shouldPreserveFollowOpacity?l.shouldPreserveFollowOpacity(a):void 0})}isLead(){const o=this.getStack();return o?o.lead===this:!0}getLead(){var a;const{layoutId:o}=this.options;return o?((a=this.getStack())==null?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:o}=this.options;return o?(a=this.getStack())==null?void 0:a.prevLead:void 0}getStack(){const{layoutId:o}=this.options;if(o)return this.root.sharedNodes.get(o)}promote({needsReset:o,transition:a,preserveFollowOpacity:c}={}){const l=this.getStack();l&&l.promote(this,c),o&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const o=this.getStack();return o?o.relegate(this):!1}resetSkewAndRotation(){const{visualElement:o}=this.options;if(!o)return;let a=!1;const{latestValues:c}=o;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(a=!0),!a)return;const l={};c.z&&lc("z",o,l,this.animationValues);for(let u=0;u<cc.length;u++)lc(`rotate${cc[u]}`,o,l,this.animationValues),lc(`skew${cc[u]}`,o,l,this.animationValues);o.render();for(const u in l)o.setStaticValue(u,l[u]),this.animationValues&&(this.animationValues[u]=l[u]);o.scheduleRender()}getProjectionStyles(o){if(!this.instance||this.isSVG)return;if(!this.isVisible)return UE;const a={visibility:""},c=this.getTransformTemplate();if(this.needsReset)return this.needsReset=!1,a.opacity="",a.pointerEvents=bo(o==null?void 0:o.pointerEvents)||"",a.transform=c?c(this.latestValues,""):"none",a;const l=this.getLead();if(!this.projectionDelta||!this.layout||!l.target){const m={};return this.options.layoutId&&(m.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,m.pointerEvents=bo(o==null?void 0:o.pointerEvents)||""),this.hasProjected&&!di(this.latestValues)&&(m.transform=c?c({},""):"none",this.hasProjected=!1),m}const u=l.animationValues||l.latestValues;this.applyTransformsToTarget(),a.transform=FE(this.projectionDeltaWithTransform,this.treeScale,u),c&&(a.transform=c(u,a.transform));const{x:d,y:h}=this.projectionDelta;a.transformOrigin=`${d.origin*100}% ${h.origin*100}% 0`,l.animationValues?a.opacity=l===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:a.opacity=l===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const m in as){if(u[m]===void 0)continue;const{correct:g,applyTo:f,isCSSVariable:y}=as[m],v=a.transform==="none"?u[m]:g(u[m],l);if(f){const C=f.length;for(let T=0;T<C;T++)a[f[T]]=v}else y?this.options.visualElement.renderState.vars[m]=v:a[m]=v}return this.options.layoutId&&(a.pointerEvents=l===this?bo(o==null?void 0:o.pointerEvents)||"":"none"),a}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(o=>{var a;return(a=o.currentAnimation)==null?void 0:a.stop()}),this.root.nodes.forEach(ap),this.root.sharedNodes.clear()}}}function HE(t){t.updateLayout()}function zE(t){var n;const e=((n=t.resumeFrom)==null?void 0:n.snapshot)||t.snapshot;if(t.isLead()&&t.layout&&e&&t.hasListeners("didUpdate")){const{layoutBox:i,measuredBox:r}=t.layout,{animationType:s}=t.options,o=e.source!==t.layout.source;s==="size"?Et(d=>{const h=o?e.measuredBox[d]:e.layoutBox[d],m=ct(h);h.min=i[d].min,h.max=h.min+m}):iy(s,e.layoutBox,i)&&Et(d=>{const h=o?e.measuredBox[d]:e.layoutBox[d],m=ct(i[d]);h.max=h.min+m,t.relativeTarget&&!t.currentAnimation&&(t.isProjectionDirty=!0,t.relativeTarget[d].max=t.relativeTarget[d].min+m)});const a=Zi();es(a,i,e.layoutBox);const c=Zi();o?es(c,t.applyTransform(r,!0),e.measuredBox):es(c,i,e.layoutBox);const l=!Xv(a);let u=!1;if(!t.resumeFrom){const d=t.getClosestProjectingParent();if(d&&!d.resumeFrom){const{snapshot:h,layout:m}=d;if(h&&m){const g=Be();ts(g,e.layoutBox,h.layoutBox);const f=Be();ts(f,i,m.layoutBox),Qv(g,f)||(u=!0),d.options.layoutRoot&&(t.relativeTarget=f,t.relativeTargetOrigin=g,t.relativeParent=d)}}}t.notifyListeners("didUpdate",{layout:i,snapshot:e,delta:c,layoutDelta:a,hasLayoutChanged:l,hasRelativeLayoutChanged:u})}else if(t.isLead()){const{onExitComplete:i}=t.options;i&&i()}t.options.transition=void 0}function WE(t){t.parent&&(t.isProjecting()||(t.isProjectionDirty=t.parent.isProjectionDirty),t.isSharedProjectionDirty||(t.isSharedProjectionDirty=!!(t.isProjectionDirty||t.parent.isProjectionDirty||t.parent.isSharedProjectionDirty)),t.isTransformDirty||(t.isTransformDirty=t.parent.isTransformDirty))}function qE(t){t.isProjectionDirty=t.isSharedProjectionDirty=t.isTransformDirty=!1}function GE(t){t.clearSnapshot()}function ap(t){t.clearMeasurements()}function KE(t){t.isLayoutDirty=!1}function ZE(t){const{visualElement:e}=t.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),t.resetTransform()}function cp(t){t.finishAnimation(),t.targetDelta=t.relativeTarget=t.target=void 0,t.isProjectionDirty=!0}function YE(t){t.resolveTargetDelta()}function JE(t){t.calcProjection()}function XE(t){t.resetSkewAndRotation()}function QE(t){t.removeLeadSnapshot()}function lp(t,e,n){t.translate=Oe(e.translate,0,n),t.scale=Oe(e.scale,1,n),t.origin=e.origin,t.originPoint=e.originPoint}function up(t,e,n,i){t.min=Oe(e.min,n.min,i),t.max=Oe(e.max,n.max,i)}function eP(t,e,n,i){up(t.x,e.x,n.x,i),up(t.y,e.y,n.y,i)}function tP(t){return t.animationValues&&t.animationValues.opacityExit!==void 0}const nP={duration:.45,ease:[.4,0,.1,1]},dp=t=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(t),fp=dp("applewebkit/")&&!dp("chrome/")?Math.round:It;function hp(t){t.min=fp(t.min),t.max=fp(t.max)}function iP(t){hp(t.x),hp(t.y)}function iy(t,e,n){return t==="position"||t==="preserve-aspect"&&!iE(sp(e),sp(n),.2)}function rP(t){var e;return t!==t.root&&((e=t.scroll)==null?void 0:e.wasRoot)}const sP=ny({attachResizeListener:(t,e)=>fs(t,"resize",e),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),uc={current:void 0},ry=ny({measureScroll:t=>({x:t.scrollLeft,y:t.scrollTop}),defaultParent:()=>{if(!uc.current){const t=new sP({});t.mount(window),t.setOptions({layoutScroll:!0}),uc.current=t}return uc.current},resetTransform:(t,e)=>{t.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:t=>window.getComputedStyle(t).position==="fixed"}),oP={pan:{Feature:TE},drag:{Feature:SE,ProjectionNode:ry,MeasureLayout:Zv}};function aP(t,e,n){if(t instanceof EventTarget)return[t];if(typeof t=="string"){let i=document;const r=(n==null?void 0:n[t])??i.querySelectorAll(t);return r?Array.from(r):[]}return Array.from(t)}function sy(t,e){const n=aP(t),i=new AbortController,r={passive:!0,...e,signal:i.signal};return[n,r,()=>i.abort()]}function pp(t){return!(t.pointerType==="touch"||Kv())}function cP(t,e,n={}){const[i,r,s]=sy(t,n),o=a=>{if(!pp(a))return;const{target:c}=a,l=e(c,a);if(typeof l!="function"||!c)return;const u=d=>{pp(d)&&(l(d),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,r)};return i.forEach(a=>{a.addEventListener("pointerenter",o,r)}),s}function mp(t,e,n){const{props:i}=t;t.animationState&&i.whileHover&&t.animationState.setActive("whileHover",n==="Start");const r="onHover"+n,s=i[r];s&&De.postRender(()=>s(e,Es(e)))}class lP extends ni{mount(){const{current:e}=this.node;e&&(this.unmount=cP(e,(n,i)=>(mp(this.node,i,"Start"),r=>mp(this.node,r,"End"))))}unmount(){}}class uP extends ni{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch{e=!0}!e||!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=ws(fs(this.node.current,"focus",()=>this.onFocus()),fs(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const oy=(t,e)=>e?t===e?!0:oy(t,e.parentElement):!1,dP=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function fP(t){return dP.has(t.tagName)||t.tabIndex!==-1}const ko=new WeakSet;function gp(t){return e=>{e.key==="Enter"&&t(e)}}function dc(t,e){t.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}const hP=(t,e)=>{const n=t.currentTarget;if(!n)return;const i=gp(()=>{if(ko.has(n))return;dc(n,"down");const r=gp(()=>{dc(n,"up")}),s=()=>dc(n,"cancel");n.addEventListener("keyup",r,e),n.addEventListener("blur",s,e)});n.addEventListener("keydown",i,e),n.addEventListener("blur",()=>n.removeEventListener("keydown",i),e)};function vp(t){return gd(t)&&!Kv()}function pP(t,e,n={}){const[i,r,s]=sy(t,n),o=a=>{const c=a.currentTarget;if(!vp(a))return;ko.add(c);const l=e(c,a),u=(m,g)=>{window.removeEventListener("pointerup",d),window.removeEventListener("pointercancel",h),ko.has(c)&&ko.delete(c),vp(m)&&typeof l=="function"&&l(m,{success:g})},d=m=>{u(m,c===window||c===document||n.useGlobalTarget||oy(c,m.target))},h=m=>{u(m,!1)};window.addEventListener("pointerup",d,r),window.addEventListener("pointercancel",h,r)};return i.forEach(a=>{(n.useGlobalTarget?window:a).addEventListener("pointerdown",o,r),Uu(a)&&(a.addEventListener("focus",l=>hP(l,r)),!fP(a)&&!a.hasAttribute("tabindex")&&(a.tabIndex=0))}),s}function yp(t,e,n){const{props:i}=t;if(t.current instanceof HTMLButtonElement&&t.current.disabled)return;t.animationState&&i.whileTap&&t.animationState.setActive("whileTap",n==="Start");const r="onTap"+(n==="End"?"":n),s=i[r];s&&De.postRender(()=>s(e,Es(e)))}class mP extends ni{mount(){const{current:e}=this.node;e&&(this.unmount=pP(e,(n,i)=>(yp(this.node,i,"Start"),(r,{success:s})=>yp(this.node,r,s?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Fl=new WeakMap,fc=new WeakMap,gP=t=>{const e=Fl.get(t.target);e&&e(t)},vP=t=>{t.forEach(gP)};function yP({root:t,...e}){const n=t||document;fc.has(n)||fc.set(n,{});const i=fc.get(n),r=JSON.stringify(e);return i[r]||(i[r]=new IntersectionObserver(vP,{root:t,...e})),i[r]}function bP(t,e,n){const i=yP(e);return Fl.set(t,n),i.observe(t),()=>{Fl.delete(t),i.unobserve(t)}}const SP={some:0,all:1};class TP extends ni{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:n,margin:i,amount:r="some",once:s}=e,o={root:n?n.current:void 0,rootMargin:i,threshold:typeof r=="number"?r:SP[r]},a=c=>{const{isIntersecting:l}=c;if(this.isInView===l||(this.isInView=l,s&&!l&&this.hasEnteredView))return;l&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",l);const{onViewportEnter:u,onViewportLeave:d}=this.node.getProps(),h=l?u:d;h&&h(c)};return bP(this.node.current,o,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:n}=this.node;["amount","margin","root"].some(kP(e,n))&&this.startObserver()}unmount(){}}function kP({viewport:t={}},{viewport:e={}}={}){return n=>t[n]!==e[n]}const CP={inView:{Feature:TP},tap:{Feature:mP},focus:{Feature:uP},hover:{Feature:lP}},wP={layout:{ProjectionNode:ry,MeasureLayout:Zv}},jl={current:null},ay={current:!1};function xP(){if(ay.current=!0,!!Fu)if(window.matchMedia){const t=window.matchMedia("(prefers-reduced-motion)"),e=()=>jl.current=t.matches;t.addListener(e),e()}else jl.current=!1}const EP=new WeakMap;function PP(t,e,n){for(const i in e){const r=e[i],s=n[i];if(at(r))t.addValue(i,r);else if(at(s))t.addValue(i,fr(r,{owner:t}));else if(s!==r)if(t.hasValue(i)){const o=t.getValue(i);o.liveStyle===!0?o.jump(r):o.hasAnimated||o.set(r)}else{const o=t.getStaticValue(i);t.addValue(i,fr(o!==void 0?o:r,{owner:t}))}}for(const i in n)e[i]===void 0&&t.removeValue(i);return e}const cy=t=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(t),ly=t=>/^0[^.\s]+$/u.test(t),RP={test:t=>t==="auto",parse:t=>t},uy=t=>e=>e.test(t),dy=[Tr,le,tn,Fn,Fw,Vw,RP],bp=t=>dy.find(uy(t)),AP=[...dy,qe,Kn],IP=t=>AP.find(uy(t)),_P=new Set(["brightness","contrast","saturate","opacity"]);function MP(t){const[e,n]=t.slice(0,-1).split("(");if(e==="drop-shadow")return t;const[i]=n.match(rd)||[];if(!i)return t;const r=n.replace(i,"");let s=_P.has(e)?1:0;return i!==n&&(s*=100),e+"("+s+r+")"}const OP=/\b([a-z-]*)\(.*?\)/gu,Ul={...Kn,getAnimatableNone:t=>{const e=t.match(OP);return e?e.map(MP).join(" "):t}},DP={...Ku,color:qe,backgroundColor:qe,outlineColor:qe,fill:qe,stroke:qe,borderColor:qe,borderTopColor:qe,borderRightColor:qe,borderBottomColor:qe,borderLeftColor:qe,filter:Ul,WebkitFilter:Ul},fy=t=>DP[t];function hy(t,e){let n=fy(t);return n!==Ul&&(n=Kn),n.getAnimatableNone?n.getAnimatableNone(e):void 0}const Sp=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class NP{scrapeMotionValuesFromProps(e,n,i){return{}}constructor({parent:e,props:n,presenceContext:i,reducedMotionConfig:r,blockInitialAnimation:s,visualState:o},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=hd,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=pt.now();this.renderScheduledAt<h&&(this.renderScheduledAt=h,De.render(this.render,!1,!0))};const{latestValues:c,renderState:l}=o;this.latestValues=c,this.baseTarget={...c},this.initialValues=n.initial?{...c}:{},this.renderState=l,this.parent=e,this.props=n,this.presenceContext=i,this.depth=e?e.depth+1:0,this.reducedMotionConfig=r,this.options=a,this.blockInitialAnimation=!!s,this.isControllingVariants=ha(n),this.isVariantNode=K0(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:u,...d}=this.scrapeMotionValuesFromProps(n,{},this);for(const h in d){const m=d[h];c[h]!==void 0&&at(m)&&m.set(c[h],!1)}}mount(e){this.current=e,EP.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,i)=>this.bindToMotionValue(i,n)),ay.current||xP(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:jl.current,process.env.NODE_ENV!=="production"&&Bu(this.shouldReduceMotion!==!0,"You have Reduced Motion enabled on your device. Animations may not appear as expected."),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),Gn(this.notifyUpdate),Gn(this.render),this.valueSubscriptions.forEach(e=>e()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features){const n=this.features[e];n&&(n.unmount(),n.isMounted=!1)}this.current=null}bindToMotionValue(e,n){this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)();const i=Sr.has(e);i&&this.onBindTransform&&this.onBindTransform();const r=n.on("change",a=>{this.latestValues[e]=a,this.props.onUpdate&&De.preRender(this.notifyUpdate),i&&this.projection&&(this.projection.isTransformDirty=!0)}),s=n.on("renderRequest",this.scheduleRender);let o;window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,e,n)),this.valueSubscriptions.set(e,()=>{r(),s(),o&&o(),n.owner&&n.stop()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in dr){const n=dr[e];if(!n)continue;const{isEnabled:i,Feature:r}=n;if(!this.features[e]&&r&&i(this.props)&&(this.features[e]=new r(this)),this.features[e]){const s=this.features[e];s.isMounted?s.update():(s.mount(),s.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Be()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,n){this.latestValues[e]=n}update(e,n){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let i=0;i<Sp.length;i++){const r=Sp[i];this.propEventSubscriptions[r]&&(this.propEventSubscriptions[r](),delete this.propEventSubscriptions[r]);const s="on"+r,o=e[s];o&&(this.propEventSubscriptions[r]=this.on(r,o))}this.prevMotionValues=PP(this,this.scrapeMotionValuesFromProps(e,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]: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(e){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(e),()=>n.variantChildren.delete(e)}addValue(e,n){const i=this.values.get(e);n!==i&&(i&&this.removeValue(e),this.bindToMotionValue(e,n),this.values.set(e,n),this.latestValues[e]=n.get())}removeValue(e){this.values.delete(e);const n=this.valueSubscriptions.get(e);n&&(n(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,n){if(this.props.values&&this.props.values[e])return this.props.values[e];let i=this.values.get(e);return i===void 0&&n!==void 0&&(i=fr(n===null?void 0:n,{owner:this}),this.addValue(e,i)),i}readValue(e,n){let i=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return i!=null&&(typeof i=="string"&&(cy(i)||ly(i))?i=parseFloat(i):!IP(i)&&Kn.test(n)&&(i=hy(e,n)),this.setBaseTarget(e,at(i)?i.get():i)),at(i)?i.get():i}setBaseTarget(e,n){this.baseTarget[e]=n}getBaseTarget(e){var s;const{initial:n}=this.props;let i;if(typeof n=="string"||typeof n=="object"){const o=Xu(this.props,n,(s=this.presenceContext)==null?void 0:s.custom);o&&(i=o[e])}if(n&&i!==void 0)return i;const r=this.getBaseTargetFromProps(this.props,e);return r!==void 0&&!at(r)?r:this.initialValues[e]!==void 0&&i===void 0?void 0:this.baseTarget[e]}on(e,n){return this.events[e]||(this.events[e]=new nd),this.events[e].add(n)}notify(e,...n){this.events[e]&&this.events[e].notify(...n)}}const LP=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function VP(t){const e=LP.exec(t);if(!e)return[,];const[,n,i,r]=e;return[`--${n??i}`,r]}const FP=4;function py(t,e,n=1){En(n<=FP,`Max CSS variable fallback depth detected in property "${t}". This may indicate a circular fallback dependency.`);const[i,r]=VP(t);if(!i)return;const s=window.getComputedStyle(e).getPropertyValue(i);if(s){const o=s.trim();return cy(o)?parseFloat(o):o}return Gu(r)?py(r,e,n+1):r}function jP(t){return typeof t=="number"?t===0:t!==null?t==="none"||t==="0"||ly(t):!0}const UP=new Set(["auto","none","0"]);function BP(t,e,n){let i=0,r;for(;i<t.length&&!r;){const s=t[i];typeof s=="string"&&!UP.has(s)&&us(s).values.length&&(r=t[i]),i++}if(r&&n)for(const s of e)t[s]=hy(n,r)}class $P extends hd{constructor(e,n,i,r,s){super(e,n,i,r,s,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:n,name:i}=this;if(!n||!n.current)return;super.readKeyframes();for(let c=0;c<e.length;c++){let l=e[c];if(typeof l=="string"&&(l=l.trim(),Gu(l))){const u=py(l,n.current);u!==void 0&&(e[c]=u),c===e.length-1&&(this.finalKeyframe=l)}}if(this.resolveNoneKeyframes(),!Nv.has(i)||e.length!==2)return;const[r,s]=e,o=bp(r),a=bp(s);if(o!==a)if(xh(o)&&xh(a))for(let c=0;c<e.length;c++){const l=e[c];typeof l=="string"&&(e[c]=parseFloat(l))}else mi[i]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:e,name:n}=this,i=[];for(let r=0;r<e.length;r++)(e[r]===null||jP(e[r]))&&i.push(r);i.length&&BP(e,i,n)}measureInitialState(){const{element:e,unresolvedKeyframes:n,name:i}=this;if(!e||!e.current)return;i==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=mi[i](e.measureViewportBox(),window.getComputedStyle(e.current)),n[0]=this.measuredOrigin;const r=n[n.length-1];r!==void 0&&e.getValue(i,r).jump(r,!1)}measureEndState(){var a;const{element:e,name:n,unresolvedKeyframes:i}=this;if(!e||!e.current)return;const r=e.getValue(n);r&&r.jump(this.measuredOrigin,!1);const s=i.length-1,o=i[s];i[s]=mi[n](e.measureViewportBox(),window.getComputedStyle(e.current)),o!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=o),(a=this.removedTransforms)!=null&&a.length&&this.removedTransforms.forEach(([c,l])=>{e.getValue(c).set(l)}),this.resolveNoneKeyframes()}}class my extends NP{constructor(){super(...arguments),this.KeyframeResolver=$P}sortInstanceNodePosition(e,n){return e.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(e,n){return e.style?e.style[n]:void 0}removeValueFromRenderState(e,{vars:n,style:i}){delete n[e],delete i[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;at(e)&&(this.childSubscription=e.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function gy(t,{style:e,vars:n},i,r){Object.assign(t.style,e,r&&r.getProjectionStyles(i));for(const s in n)t.style.setProperty(s,n[s])}function HP(t){return window.getComputedStyle(t)}class zP extends my{constructor(){super(...arguments),this.type="html",this.renderInstance=gy}readValueFromInstance(e,n){var i;if(Sr.has(n))return(i=this.projection)!=null&&i.isProjecting?Al(n):fx(e,n);{const r=HP(e),s=(qu(n)?r.getPropertyValue(n):r[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(e,{transformPagePoint:n}){return zv(e,n)}build(e,n,i){Zu(e,n,i.transformTemplate)}scrapeMotionValuesFromProps(e,n,i){return Qu(e,n,i)}}const vy=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 WP(t,e,n,i){gy(t,e,void 0,i);for(const r in e.attrs)t.setAttribute(vy.has(r)?r:zu(r),e.attrs[r])}class qP extends my{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=Be}getBaseTargetFromProps(e,n){return e[n]}readValueFromInstance(e,n){if(Sr.has(n)){const i=fy(n);return i&&i.default||0}return n=vy.has(n)?n:zu(n),e.getAttribute(n)}scrapeMotionValuesFromProps(e,n,i){return ov(e,n,i)}build(e,n,i){nv(e,n,this.isSVGTag,i.transformTemplate,i.style)}renderInstance(e,n,i,r){WP(e,n,i,r)}mount(e){this.isSVGTag=rv(e.tagName),super.mount(e)}}const GP=(t,e)=>Ju(t)?new qP(e):new zP(e,{allowProjection:t!==B.Fragment}),KP=n2({...Zx,...CP,...oP,...wP},GP),Zn=kw(KP);var $s=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function yy(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Bl={exports:{}},ZP=Bl.exports,Tp;function YP(){return Tp||(Tp=1,function(t){(function(e,n){t.exports?t.exports=n():e.log=n()})(ZP,function(){var e=function(){},n="undefined",i=typeof window!==n&&typeof window.navigator!==n&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],s={},o=null;function a(f,y){var v=f[y];if(typeof v.bind=="function")return v.bind(f);try{return Function.prototype.bind.call(v,f)}catch{return function(){return Function.prototype.apply.apply(v,[f,arguments])}}}function c(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function l(f){return f==="debug"&&(f="log"),typeof console===n?!1:f==="trace"&&i?c:console[f]!==void 0?a(console,f):console.log!==void 0?a(console,"log"):e}function u(){for(var f=this.getLevel(),y=0;y<r.length;y++){var v=r[y];this[v]=y<f?e:this.methodFactory(v,f,this.name)}if(this.log=this.debug,typeof console===n&&f<this.levels.SILENT)return"No console available for logging"}function d(f){return function(){typeof console!==n&&(u.call(this),this[f].apply(this,arguments))}}function h(f,y,v){return l(f)||d.apply(this,arguments)}function m(f,y){var v=this,C,T,k,b="loglevel";typeof f=="string"?b+=":"+f:typeof f=="symbol"&&(b=void 0);function w(A){var O=(r[A]||"silent").toUpperCase();if(!(typeof window===n||!b)){try{window.localStorage[b]=O;return}catch{}try{window.document.cookie=encodeURIComponent(b)+"="+O+";"}catch{}}}function x(){var A;if(!(typeof window===n||!b)){try{A=window.localStorage[b]}catch{}if(typeof A===n)try{var O=window.document.cookie,z=encodeURIComponent(b),K=O.indexOf(z+"=");K!==-1&&(A=/^([^;]+)/.exec(O.slice(K+z.length+1))[1])}catch{}return v.levels[A]===void 0&&(A=void 0),A}}function R(){if(!(typeof window===n||!b)){try{window.localStorage.removeItem(b)}catch{}try{window.document.cookie=encodeURIComponent(b)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}function _(A){var O=A;if(typeof O=="string"&&v.levels[O.toUpperCase()]!==void 0&&(O=v.levels[O.toUpperCase()]),typeof O=="number"&&O>=0&&O<=v.levels.SILENT)return O;throw new TypeError("log.setLevel() called with invalid level: "+A)}v.name=f,v.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},v.methodFactory=y||h,v.getLevel=function(){return k??T??C},v.setLevel=function(A,O){return k=_(A),O!==!1&&w(k),u.call(v)},v.setDefaultLevel=function(A){T=_(A),x()||v.setLevel(A,!1)},v.resetLevel=function(){k=null,R(),u.call(v)},v.enableAll=function(A){v.setLevel(v.levels.TRACE,A)},v.disableAll=function(A){v.setLevel(v.levels.SILENT,A)},v.rebuild=function(){if(o!==v&&(C=_(o.getLevel())),u.call(v),o===v)for(var A in s)s[A].rebuild()},C=_(o?o.getLevel():"WARN");var S=x();S!=null&&(k=_(S)),u.call(v)}o=new m,o.getLogger=function(f){if(typeof f!="symbol"&&typeof f!="string"||f==="")throw new TypeError("You must supply a name when creating a logger.");var y=s[f];return y||(y=s[f]=new m(f,o.methodFactory)),y};var g=typeof window!==n?window.log:void 0;return o.noConflict=function(){return typeof window!==n&&window.log===o&&(window.log=g),o},o.getLoggers=function(){return s},o.default=o,o})}(Bl)),Bl.exports}var JP=YP();const XP=yy(JP);var $l=function(t,e){return $l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(n[r]=i[r])},$l(t,e)};function Mn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");$l(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}function QP(t,e,n,i){function r(s){return s instanceof n?s:new n(function(o){o(s)})}return new(n||(n=Promise))(function(s,o){function a(u){try{l(i.next(u))}catch(d){o(d)}}function c(u){try{l(i.throw(u))}catch(d){o(d)}}function l(u){u.done?s(u.value):r(u.value).then(a,c)}l((i=i.apply(t,[])).next())})}function by(t,e){var n={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,r,s,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(l){return function(u){return c([l,u])}}function c(l){if(i)throw new TypeError("Generator is already executing.");for(;o&&(o=0,l[0]&&(n=0)),n;)try{if(i=1,r&&(s=l[0]&2?r.return:l[0]?r.throw||((s=r.return)&&s.call(r),0):r.next)&&!(s=s.call(r,l[1])).done)return s;switch(r=0,s&&(l=[l[0]&2,s.value]),l[0]){case 0:case 1:s=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,r=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(s=n.trys,!(s=s.length>0&&s[s.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!s||l[1]>s[0]&&l[1]<s[3])){n.label=l[1];break}if(l[0]===6&&n.label<s[1]){n.label=s[1],s=l;break}if(s&&n.label<s[2]){n.label=s[2],n.ops.push(l);break}s[2]&&n.ops.pop(),n.trys.pop();continue}l=e.call(t,n)}catch(u){l=[6,u],r=0}finally{i=s=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}function hr(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],i=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function hs(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var i=n.call(t),r,s=[],o;try{for(;(e===void 0||e-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(a){o={error:a}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function ps(t,e,n){if(arguments.length===2)for(var i=0,r=e.length,s;i<r;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))}function rr(t){return this instanceof rr?(this.v=t,this):new rr(t)}function eR(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=n.apply(t,e||[]),r,s=[];return r=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),r[Symbol.asyncIterator]=function(){return this},r;function o(m){return function(g){return Promise.resolve(g).then(m,d)}}function a(m,g){i[m]&&(r[m]=function(f){return new Promise(function(y,v){s.push([m,f,y,v])>1||c(m,f)})},g&&(r[m]=g(r[m])))}function c(m,g){try{l(i[m](g))}catch(f){h(s[0][3],f)}}function l(m){m.value instanceof rr?Promise.resolve(m.value.v).then(u,d):h(s[0][2],m)}function u(m){c("next",m)}function d(m){c("throw",m)}function h(m,g){m(g),s.shift(),s.length&&c(s[0][0],s[0][1])}}function tR(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof hr=="function"?hr(t):t[Symbol.iterator](),n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n);function i(s){n[s]=t[s]&&function(o){return new Promise(function(a,c){o=t[s](o),r(a,c,o.done,o.value)})}}function r(s,o,a,c){Promise.resolve(c).then(function(l){s({value:l,done:a})},o)}}function Xe(t){return typeof t=="function"}function vd(t){var e=function(i){Error.call(i),i.stack=new Error().stack},n=t(e);return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}var hc=vd(function(t){return function(e){t(this),this.message=e?e.length+` errors occurred during unsubscription:
|
|
78
78
|
`+e.map(function(n,i){return i+1+") "+n.toString()}).join(`
|
|
79
|
-
`):"",this.name="UnsubscriptionError",this.errors=e}});function Wo(t,e){if(t){var n=t.indexOf(e);0<=n&&t.splice(n,1)}}var Ps=function(){function t(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return t.prototype.unsubscribe=function(){var e,n,i,r,s;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=hr(o),c=a.next();!c.done;c=a.next()){var l=c.value;l.remove(this)}}catch(f){e={error:f}}finally{try{c&&!c.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}else o.remove(this);var u=this.initialTeardown;if(Xe(u))try{u()}catch(f){s=f instanceof hc?f.errors:[f]}var d=this._finalizers;if(d){this._finalizers=null;try{for(var h=hr(d),p=h.next();!p.done;p=h.next()){var g=p.value;try{kp(g)}catch(f){s=s??[],f instanceof hc?s=ps(ps([],hs(s)),hs(f.errors)):s.push(f)}}}catch(f){i={error:f}}finally{try{p&&!p.done&&(r=h.return)&&r.call(h)}finally{if(i)throw i.error}}}if(s)throw new hc(s)}},t.prototype.add=function(e){var n;if(e&&e!==this)if(this.closed)kp(e);else{if(e instanceof t){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(n=this._finalizers)!==null&&n!==void 0?n:[]).push(e)}},t.prototype._hasParent=function(e){var n=this._parentage;return n===e||Array.isArray(n)&&n.includes(e)},t.prototype._addParent=function(e){var n=this._parentage;this._parentage=Array.isArray(n)?(n.push(e),n):n?[n,e]:e},t.prototype._removeParent=function(e){var n=this._parentage;n===e?this._parentage=null:Array.isArray(n)&&Wo(n,e)},t.prototype.remove=function(e){var n=this._finalizers;n&&Wo(n,e),e instanceof t&&e._removeParent(this)},t.EMPTY=function(){var e=new t;return e.closed=!0,e}(),t}(),Sy=Ps.EMPTY;function Ty(t){return t instanceof Ps||t&&"closed"in t&&Xe(t.remove)&&Xe(t.add)&&Xe(t.unsubscribe)}function kp(t){Xe(t)?t():t.unsubscribe()}var nR={Promise:void 0},iR={setTimeout:function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return setTimeout.apply(void 0,ps([t,e],hs(n)))},clearTimeout:function(t){return clearTimeout(t)},delegate:void 0};function ky(t){iR.setTimeout(function(){throw t})}function Hl(){}function Co(t){t()}var yd=function(t){Mn(e,t);function e(n){var i=t.call(this)||this;return i.isStopped=!1,n?(i.destination=n,Ty(n)&&n.add(i)):i.destination=oR,i}return e.create=function(n,i,r){return new ms(n,i,r)},e.prototype.next=function(n){this.isStopped||this._next(n)},e.prototype.error=function(n){this.isStopped||(this.isStopped=!0,this._error(n))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(n){this.destination.next(n)},e.prototype._error=function(n){try{this.destination.error(n)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e}(Ps),rR=function(){function t(e){this.partialObserver=e}return t.prototype.next=function(e){var n=this.partialObserver;if(n.next)try{n.next(e)}catch(i){Hs(i)}},t.prototype.error=function(e){var n=this.partialObserver;if(n.error)try{n.error(e)}catch(i){Hs(i)}else Hs(e)},t.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(n){Hs(n)}},t}(),ms=function(t){Mn(e,t);function e(n,i,r){var s=t.call(this)||this,o;return Xe(n)||!n?o={next:n??void 0,error:i??void 0,complete:r??void 0}:o=n,s.destination=new rR(o),s}return e}(yd);function Hs(t){ky(t)}function sR(t){throw t}var oR={closed:!0,next:Hl,error:sR,complete:Hl},bd=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function Cy(t){return t}function aR(t){return t.length===0?Cy:t.length===1?t[0]:function(e){return t.reduce(function(n,i){return i(n)},e)}}var ze=function(){function t(e){e&&(this._subscribe=e)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(e,n,i){var r=this,s=lR(e)?e:new ms(e,n,i);return Co(function(){var o=r,a=o.operator,c=o.source;s.add(a?a.call(s,c):c?r._subscribe(s):r._trySubscribe(s))}),s},t.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(n){e.error(n)}},t.prototype.forEach=function(e,n){var i=this;return n=Cp(n),new n(function(r,s){var o=new ms({next:function(a){try{e(a)}catch(c){s(c),o.unsubscribe()}},error:s,complete:r});i.subscribe(o)})},t.prototype._subscribe=function(e){var n;return(n=this.source)===null||n===void 0?void 0:n.subscribe(e)},t.prototype[bd]=function(){return this},t.prototype.pipe=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return aR(e)(this)},t.prototype.toPromise=function(e){var n=this;return e=Cp(e),new e(function(i,r){var s;n.subscribe(function(o){return s=o},function(o){return r(o)},function(){return i(s)})})},t.create=function(e){return new t(e)},t}();function Cp(t){var e;return(e=t??nR.Promise)!==null&&e!==void 0?e:Promise}function cR(t){return t&&Xe(t.next)&&Xe(t.error)&&Xe(t.complete)}function lR(t){return t&&t instanceof yd||cR(t)&&Ty(t)}function uR(t){return Xe(t==null?void 0:t.lift)}function On(t){return function(e){if(uR(e))return e.lift(function(n){try{return t(n,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function ki(t,e,n,i,r){return new dR(t,e,n,i,r)}var dR=function(t){Mn(e,t);function e(n,i,r,s,o,a){var c=t.call(this,n)||this;return c.onFinalize=o,c.shouldUnsubscribe=a,c._next=i?function(l){try{i(l)}catch(u){n.error(u)}}:t.prototype._next,c._error=s?function(l){try{s(l)}catch(u){n.error(u)}finally{this.unsubscribe()}}:t.prototype._error,c._complete=r?function(){try{r()}catch(l){n.error(l)}finally{this.unsubscribe()}}:t.prototype._complete,c}return e.prototype.unsubscribe=function(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var i=this.closed;t.prototype.unsubscribe.call(this),!i&&((n=this.onFinalize)===null||n===void 0||n.call(this))}},e}(yd),fR=vd(function(t){return function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),Rn=function(t){Mn(e,t);function e(){var n=t.call(this)||this;return n.closed=!1,n.currentObservers=null,n.observers=[],n.isStopped=!1,n.hasError=!1,n.thrownError=null,n}return e.prototype.lift=function(n){var i=new wp(this,this);return i.operator=n,i},e.prototype._throwIfClosed=function(){if(this.closed)throw new fR},e.prototype.next=function(n){var i=this;Co(function(){var r,s;if(i._throwIfClosed(),!i.isStopped){i.currentObservers||(i.currentObservers=Array.from(i.observers));try{for(var o=hr(i.currentObservers),a=o.next();!a.done;a=o.next()){var c=a.value;c.next(n)}}catch(l){r={error:l}}finally{try{a&&!a.done&&(s=o.return)&&s.call(o)}finally{if(r)throw r.error}}}})},e.prototype.error=function(n){var i=this;Co(function(){if(i._throwIfClosed(),!i.isStopped){i.hasError=i.isStopped=!0,i.thrownError=n;for(var r=i.observers;r.length;)r.shift().error(n)}})},e.prototype.complete=function(){var n=this;Co(function(){if(n._throwIfClosed(),!n.isStopped){n.isStopped=!0;for(var i=n.observers;i.length;)i.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var n;return((n=this.observers)===null||n===void 0?void 0:n.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(n){return this._throwIfClosed(),t.prototype._trySubscribe.call(this,n)},e.prototype._subscribe=function(n){return this._throwIfClosed(),this._checkFinalizedStatuses(n),this._innerSubscribe(n)},e.prototype._innerSubscribe=function(n){var i=this,r=this,s=r.hasError,o=r.isStopped,a=r.observers;return s||o?Sy:(this.currentObservers=null,a.push(n),new Ps(function(){i.currentObservers=null,Wo(a,n)}))},e.prototype._checkFinalizedStatuses=function(n){var i=this,r=i.hasError,s=i.thrownError,o=i.isStopped;r?n.error(s):o&&n.complete()},e.prototype.asObservable=function(){var n=new ze;return n.source=this,n},e.create=function(n,i){return new wp(n,i)},e}(ze),wp=function(t){Mn(e,t);function e(n,i){var r=t.call(this)||this;return r.destination=n,r.source=i,r}return e.prototype.next=function(n){var i,r;(r=(i=this.destination)===null||i===void 0?void 0:i.next)===null||r===void 0||r.call(i,n)},e.prototype.error=function(n){var i,r;(r=(i=this.destination)===null||i===void 0?void 0:i.error)===null||r===void 0||r.call(i,n)},e.prototype.complete=function(){var n,i;(i=(n=this.destination)===null||n===void 0?void 0:n.complete)===null||i===void 0||i.call(n)},e.prototype._subscribe=function(n){var i,r;return(r=(i=this.source)===null||i===void 0?void 0:i.subscribe(n))!==null&&r!==void 0?r:Sy},e}(Rn),wy=function(t){Mn(e,t);function e(n){var i=t.call(this)||this;return i._value=n,i}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(n){var i=t.prototype._subscribe.call(this,n);return!i.closed&&n.next(this._value),i},e.prototype.getValue=function(){var n=this,i=n.hasError,r=n.thrownError,s=n._value;if(i)throw r;return this._throwIfClosed(),s},e.prototype.next=function(n){t.prototype.next.call(this,this._value=n)},e}(Rn),hR={now:function(){return Date.now()}},pR=function(t){Mn(e,t);function e(n,i){return t.call(this)||this}return e.prototype.schedule=function(n,i){return this},e}(Ps),xp={setInterval:function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return setInterval.apply(void 0,ps([t,e],hs(n)))},clearInterval:function(t){return clearInterval(t)},delegate:void 0},mR=function(t){Mn(e,t);function e(n,i){var r=t.call(this,n,i)||this;return r.scheduler=n,r.work=i,r.pending=!1,r}return e.prototype.schedule=function(n,i){var r;if(i===void 0&&(i=0),this.closed)return this;this.state=n;var s=this.id,o=this.scheduler;return s!=null&&(this.id=this.recycleAsyncId(o,s,i)),this.pending=!0,this.delay=i,this.id=(r=this.id)!==null&&r!==void 0?r:this.requestAsyncId(o,this.id,i),this},e.prototype.requestAsyncId=function(n,i,r){return r===void 0&&(r=0),xp.setInterval(n.flush.bind(n,this),r)},e.prototype.recycleAsyncId=function(n,i,r){if(r===void 0&&(r=0),r!=null&&this.delay===r&&this.pending===!1)return i;i!=null&&xp.clearInterval(i)},e.prototype.execute=function(n,i){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var r=this._execute(n,i);if(r)return r;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(n,i){var r=!1,s;try{this.work(n)}catch(o){r=!0,s=o||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),s},e.prototype.unsubscribe=function(){if(!this.closed){var n=this,i=n.id,r=n.scheduler,s=r.actions;this.work=this.state=this.scheduler=null,this.pending=!1,Wo(s,this),i!=null&&(this.id=this.recycleAsyncId(r,i,null)),this.delay=null,t.prototype.unsubscribe.call(this)}},e}(pR),Ep=function(){function t(e,n){n===void 0&&(n=t.now),this.schedulerActionCtor=e,this.now=n}return t.prototype.schedule=function(e,n,i){return n===void 0&&(n=0),new this.schedulerActionCtor(this,e).schedule(i,n)},t.now=hR.now,t}(),gR=function(t){Mn(e,t);function e(n,i){i===void 0&&(i=Ep.now);var r=t.call(this,n,i)||this;return r.actions=[],r._active=!1,r}return e.prototype.flush=function(n){var i=this.actions;if(this._active){i.push(n);return}var r;this._active=!0;do if(r=n.execute(n.state,n.delay))break;while(n=i.shift());if(this._active=!1,r){for(;n=i.shift();)n.unsubscribe();throw r}},e}(Ep);new gR(mR);function vR(t){return t&&Xe(t.schedule)}function yR(t){return t[t.length-1]}function xy(t){return vR(yR(t))?t.pop():void 0}var Ey=function(t){return t&&typeof t.length=="number"&&typeof t!="function"};function Py(t){return Xe(t==null?void 0:t.then)}function Ry(t){return Xe(t[bd])}function Ay(t){return Symbol.asyncIterator&&Xe(t==null?void 0:t[Symbol.asyncIterator])}function Iy(t){return new TypeError("You provided "+(t!==null&&typeof t=="object"?"an invalid object":"'"+t+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function bR(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var _y=bR();function My(t){return Xe(t==null?void 0:t[_y])}function Oy(t){return eR(this,arguments,function(){var e,n,i,r;return by(this,function(s){switch(s.label){case 0:e=t.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,rr(e.read())];case 3:return n=s.sent(),i=n.value,r=n.done,r?[4,rr(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,rr(i)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return e.releaseLock(),[7];case 10:return[2]}})})}function Dy(t){return Xe(t==null?void 0:t.getReader)}function ii(t){if(t instanceof ze)return t;if(t!=null){if(Ry(t))return SR(t);if(Ey(t))return TR(t);if(Py(t))return kR(t);if(Ay(t))return Ny(t);if(My(t))return CR(t);if(Dy(t))return wR(t)}throw Iy(t)}function SR(t){return new ze(function(e){var n=t[bd]();if(Xe(n.subscribe))return n.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function TR(t){return new ze(function(e){for(var n=0;n<t.length&&!e.closed;n++)e.next(t[n]);e.complete()})}function kR(t){return new ze(function(e){t.then(function(n){e.closed||(e.next(n),e.complete())},function(n){return e.error(n)}).then(null,ky)})}function CR(t){return new ze(function(e){var n,i;try{for(var r=hr(t),s=r.next();!s.done;s=r.next()){var o=s.value;if(e.next(o),e.closed)return}}catch(a){n={error:a}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}e.complete()})}function Ny(t){return new ze(function(e){xR(t,e).catch(function(n){return e.error(n)})})}function wR(t){return Ny(Oy(t))}function xR(t,e){var n,i,r,s;return QP(this,void 0,void 0,function(){var o,a;return by(this,function(c){switch(c.label){case 0:c.trys.push([0,5,6,11]),n=tR(t),c.label=1;case 1:return[4,n.next()];case 2:if(i=c.sent(),!!i.done)return[3,4];if(o=i.value,e.next(o),e.closed)return[2];c.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return a=c.sent(),r={error:a},[3,11];case 6:return c.trys.push([6,,9,10]),i&&!i.done&&(s=n.return)?[4,s.call(n)]:[3,8];case 7:c.sent(),c.label=8;case 8:return[3,10];case 9:if(r)throw r.error;return[7];case 10:return[7];case 11:return e.complete(),[2]}})})}function vi(t,e,n,i,r){i===void 0&&(i=0),r===void 0&&(r=!1);var s=e.schedule(function(){n(),r?t.add(this.schedule(null,i)):this.unsubscribe()},i);if(t.add(s),!r)return s}function Ly(t,e){return e===void 0&&(e=0),On(function(n,i){n.subscribe(ki(i,function(r){return vi(i,t,function(){return i.next(r)},e)},function(){return vi(i,t,function(){return i.complete()},e)},function(r){return vi(i,t,function(){return i.error(r)},e)}))})}function Vy(t,e){return e===void 0&&(e=0),On(function(n,i){i.add(t.schedule(function(){return n.subscribe(i)},e))})}function ER(t,e){return ii(t).pipe(Vy(e),Ly(e))}function PR(t,e){return ii(t).pipe(Vy(e),Ly(e))}function RR(t,e){return new ze(function(n){var i=0;return e.schedule(function(){i===t.length?n.complete():(n.next(t[i++]),n.closed||this.schedule())})})}function AR(t,e){return new ze(function(n){var i;return vi(n,e,function(){i=t[_y](),vi(n,e,function(){var r,s,o;try{r=i.next(),s=r.value,o=r.done}catch(a){n.error(a);return}o?n.complete():n.next(s)},0,!0)}),function(){return Xe(i==null?void 0:i.return)&&i.return()}})}function Fy(t,e){if(!t)throw new Error("Iterable cannot be null");return new ze(function(n){vi(n,e,function(){var i=t[Symbol.asyncIterator]();vi(n,e,function(){i.next().then(function(r){r.done?n.complete():n.next(r.value)})},0,!0)})})}function IR(t,e){return Fy(Oy(t),e)}function _R(t,e){if(t!=null){if(Ry(t))return ER(t,e);if(Ey(t))return RR(t,e);if(Py(t))return PR(t,e);if(Ay(t))return Fy(t,e);if(My(t))return AR(t,e);if(Dy(t))return IR(t,e)}throw Iy(t)}function Sd(t,e){return e?_R(t,e):ii(t)}vd(function(t){return function(e){e===void 0&&(e=null),t(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=e}});function lt(t,e){return On(function(n,i){var r=0;n.subscribe(ki(i,function(s){i.next(t.call(e,s,r++))}))})}function MR(t,e,n,i,r,s,o,a){var c=[],l=0,u=0,d=!1,h=function(){d&&!c.length&&!l&&e.complete()},p=function(f){return l<i?g(f):c.push(f)},g=function(f){l++;var y=!1;ii(n(f,u++)).subscribe(ki(e,function(v){e.next(v)},function(){y=!0},void 0,function(){if(y)try{l--;for(var v=function(){var C=c.shift();o||g(C)};c.length&&l<i;)v();h()}catch(C){e.error(C)}}))};return t.subscribe(ki(e,p,function(){d=!0,h()})),function(){}}function jy(t,e,n){return n===void 0&&(n=1/0),Xe(e)?jy(function(i,r){return lt(function(s,o){return e(i,s,r,o)})(ii(t(i,r)))},n):(typeof e=="number"&&(n=e),On(function(i,r){return MR(i,r,t,n)}))}function OR(t){return jy(Cy,t)}function DR(){return OR(1)}function zl(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return DR()(Sd(t,xy(t)))}function Td(t,e){return On(function(n,i){var r=0;n.subscribe(ki(i,function(s){return t.call(e,s,r++)&&i.next(s)}))})}function NR(t,e,n,i,r){return function(s,o){var a=n,c=e,l=0;s.subscribe(ki(o,function(u){var d=l++;c=a?t(c,u,d):(a=!0,u),o.next(c)},r))}}function Wl(t,e){return On(NR(t,e,arguments.length>=2,!0))}function LR(t){t===void 0&&(t={});var e=t.connector,n=e===void 0?function(){return new Rn}:e,i=t.resetOnError,r=i===void 0?!0:i,s=t.resetOnComplete,o=s===void 0?!0:s,a=t.resetOnRefCountZero,c=a===void 0?!0:a;return function(l){var u,d,h,p=0,g=!1,f=!1,y=function(){d==null||d.unsubscribe(),d=void 0},v=function(){y(),u=h=void 0,g=f=!1},C=function(){var T=u;v(),T==null||T.unsubscribe()};return On(function(T,k){p++,!f&&!g&&y();var b=h=h??n();k.add(function(){p--,p===0&&!f&&!g&&(d=pc(C,c))}),b.subscribe(k),!u&&p>0&&(u=new ms({next:function(w){return b.next(w)},error:function(w){f=!0,y(),d=pc(v,r,w),b.error(w)},complete:function(){g=!0,y(),d=pc(v,o),b.complete()}}),ii(T).subscribe(u))})(l)}}function pc(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];if(e===!0){t();return}if(e!==!1){var r=new ms({next:function(){r.unsubscribe(),t()}});return ii(e.apply(void 0,ps([],hs(n)))).subscribe(r)}}function un(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=xy(t);return On(function(i,r){(n?zl(t,i,n):zl(t,i)).subscribe(r)})}function Pp(t){return On(function(e,n){ii(t).subscribe(ki(n,function(){return n.complete()},Hl)),!n.closed&&e.subscribe(n)})}var VR=Object.defineProperty,FR=Object.defineProperties,jR=Object.getOwnPropertyDescriptors,Rp=Object.getOwnPropertySymbols,UR=Object.prototype.hasOwnProperty,BR=Object.prototype.propertyIsEnumerable,Ap=(t,e,n)=>e in t?VR(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,zn=(t,e)=>{for(var n in e||(e={}))UR.call(e,n)&&Ap(t,n,e[n]);if(Rp)for(var n of Rp(e))BR.call(e,n)&&Ap(t,n,e[n]);return t},ns=(t,e)=>FR(t,jR(e)),an=(t,e,n)=>new Promise((i,r)=>{var s=c=>{try{a(n.next(c))}catch(l){r(l)}},o=c=>{try{a(n.throw(c))}catch(l){r(l)}},a=c=>c.done?i(c.value):Promise.resolve(c.value).then(s,o);a((n=n.apply(t,e)).next())}),Uy="lk";function kd(t){return typeof t>"u"?!1:$R(t)||HR(t)}function $R(t){var e;return t?t.hasOwnProperty("participant")&&t.hasOwnProperty("source")&&t.hasOwnProperty("track")&&typeof((e=t.publication)==null?void 0:e.track)<"u":!1}function HR(t){return t?t.hasOwnProperty("participant")&&t.hasOwnProperty("source")&&t.hasOwnProperty("publication")&&typeof t.publication<"u":!1}function zR(t){return t?t.hasOwnProperty("participant")&&t.hasOwnProperty("source")&&typeof t.publication>"u":!1}function By(t){if(typeof t=="string"||typeof t=="number")return`${t}`;if(zR(t))return`${t.participant.identity}_${t.source}_placeholder`;if(kd(t))return`${t.participant.identity}_${t.publication.source}_${t.publication.trackSid}`;throw new Error(`Can't generate a id for the given track reference: ${t}`)}var WR=[O.ConnectionStateChanged,O.RoomMetadataChanged,O.ActiveSpeakersChanged,O.ConnectionQualityChanged,O.ParticipantConnected,O.ParticipantDisconnected,O.ParticipantPermissionsChanged,O.ParticipantMetadataChanged,O.ParticipantNameChanged,O.ParticipantAttributesChanged,O.TrackMuted,O.TrackUnmuted,O.TrackPublished,O.TrackUnpublished,O.TrackStreamStateChanged,O.TrackSubscriptionFailed,O.TrackSubscriptionPermissionChanged,O.TrackSubscriptionStatusChanged],$y=[...WR,O.LocalTrackPublished,O.LocalTrackUnpublished],qR=[U.TrackPublished,U.TrackUnpublished,U.TrackMuted,U.TrackUnmuted,U.TrackStreamStateChanged,U.TrackSubscribed,U.TrackUnsubscribed,U.TrackSubscriptionPermissionChanged,U.TrackSubscriptionFailed,U.LocalTrackPublished,U.LocalTrackUnpublished],GR=[U.ConnectionQualityChanged,U.IsSpeakingChanged,U.ParticipantMetadataChanged,U.ParticipantPermissionsChanged,U.TrackMuted,U.TrackUnmuted,U.TrackPublished,U.TrackUnpublished,U.TrackStreamStateChanged,U.TrackSubscriptionFailed,U.TrackSubscriptionPermissionChanged,U.TrackSubscriptionStatusChanged];[...GR,U.LocalTrackPublished,U.LocalTrackUnpublished];var Ze=XP.getLogger("lk-components-js");Ze.setDefaultLevel("WARN");function KR(t,e){var n;return ns(zn({},t),{receivedAtMediaTimestamp:(n=e.rtpTimestamp)!=null?n:0,receivedAt:e.timestamp})}function ZR(t,e,n){return[...t,...e].reduceRight((i,r)=>(i.find(s=>s.id===r.id)||i.unshift(r),i),[]).slice(0-n)}function Hy(t){return typeof t=="object"}function zy(t){return Array.isArray(t)&&t.filter(Hy).length>0}function Rs(t){return`${Uy}-${t}`}function YR(t){const e=ql(t),n=xd(t.participant).pipe(lt(()=>ql(t)),un(e));return{className:Rs(t.source===M.Source.Camera||t.source===M.Source.ScreenShare?"participant-media-video":"participant-media-audio"),trackObserver:n}}function ql(t){if(kd(t))return t.publication;{const{source:e,name:n,participant:i}=t;if(e&&n)return i.getTrackPublications().find(r=>r.source===e&&r.trackName===n);if(n)return i.getTrackPublicationByName(n);if(e)return i.getTrackPublication(e);throw new Error("At least one of source and name needs to be defined")}}function Cd(t,...e){return new ze(n=>{const i=()=>{n.next(t)};return e.forEach(r=>{t.on(r,i)}),()=>{e.forEach(r=>{t.off(r,i)})}}).pipe(un(t))}function wd(t,e){return new ze(n=>{const i=(...r)=>{n.next(r)};return t.on(e,i),()=>{t.off(e,i)}})}function JR(t){return wd(t,O.ConnectionStateChanged).pipe(lt(([e])=>e),un(t.state))}function XR(t,e,n=!0){const i=new ze(s=>{wn.getLocalDevices(t,n).then(o=>{s.next(o),s.complete()}).catch(o=>{e==null||e(o),s.next([]),s.complete()})}),r=new ze(s=>{var o;const a=()=>an(this,null,function*(){try{const c=yield wn.getLocalDevices(t,n);s.next(c)}catch(c){e==null||e(c)}});if(typeof window<"u"){if(!window.isSecureContext)throw new Error("Accessing media devices is available only in secure contexts (HTTPS and localhost), in some or all supporting browsers. See: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/mediaDevices");(o=navigator==null?void 0:navigator.mediaDevices)==null||o.addEventListener("devicechange",a)}return()=>{var c;(c=navigator==null?void 0:navigator.mediaDevices)==null||c.removeEventListener("devicechange",a)}});return zl(i,r)}function QR(t){return wd(t,O.DataReceived)}function eA(t){return Cd(t,O.AudioPlaybackStatusChanged).pipe(lt(e=>({canPlayAudio:e.canPlaybackAudio})))}function tA(t,e){return wd(t,O.ActiveDeviceChanged).pipe(Td(([n])=>n===e),lt(([n,i])=>(Ze.debug("activeDeviceObservable | RoomEvent.ActiveDeviceChanged",{kind:n,deviceId:i}),i)))}function Wy(t,...e){return new ze(n=>{const i=()=>{n.next(t)};return e.forEach(r=>{t.on(r,i)}),()=>{e.forEach(r=>{t.off(r,i)})}}).pipe(un(t))}function xd(t){return Wy(t,U.TrackMuted,U.TrackUnmuted,U.ParticipantPermissionsChanged,U.TrackPublished,U.TrackUnpublished,U.LocalTrackPublished,U.LocalTrackUnpublished,U.MediaDevicesError,U.TrackSubscriptionStatusChanged).pipe(lt(e=>{const{isMicrophoneEnabled:n,isCameraEnabled:i,isScreenShareEnabled:r}=e,s=e.getTrackPublication(M.Source.Microphone),o=e.getTrackPublication(M.Source.Camera);return{isCameraEnabled:i,isMicrophoneEnabled:n,isScreenShareEnabled:r,cameraTrack:o,microphoneTrack:s,participant:e}}))}function qy(t,e){return new ze(n=>{const i=(...r)=>{n.next(r)};return t.on(e,i),()=>{t.off(e,i)}})}function nA(t,e={}){var n;let i;const r=new ze(c=>(i=c,()=>a.unsubscribe())).pipe(un(Array.from(t.remoteParticipants.values()))),s=(n=e.additionalRoomEvents)!=null?n:$y,o=Array.from(new Set([O.ParticipantConnected,O.ParticipantDisconnected,O.ConnectionStateChanged,...s])),a=Cd(t,...o).subscribe(c=>i==null?void 0:i.next(Array.from(c.remoteParticipants.values())));return t.remoteParticipants.size>0&&(i==null||i.next(Array.from(t.remoteParticipants.values()))),r}function iA(t){return qy(t,U.ParticipantPermissionsChanged).pipe(lt(()=>t.permissions),un(t.permissions))}function Ip(t){return typeof t>"u"?new ze:qy(t,U.AttributesChanged).pipe(lt(([e])=>({changed:e,attributes:t.attributes})),un({changed:t.attributes,attributes:t.attributes}))}function rA(t,e,n,i,r){const{localParticipant:s}=e,o=(u,d)=>{let h=!1;switch(u){case M.Source.Camera:h=d.isCameraEnabled;break;case M.Source.Microphone:h=d.isMicrophoneEnabled;break;case M.Source.ScreenShare:h=d.isScreenShareEnabled;break}return h},a=xd(s).pipe(lt(u=>o(t,u.participant)),un(o(t,s))),c=new Rn,l=(u,d)=>an(this,null,function*(){try{switch(d??(d=n),c.next(!0),t){case M.Source.Camera:return yield s.setCameraEnabled(u??!s.isCameraEnabled,d,i),s.isCameraEnabled;case M.Source.Microphone:return yield s.setMicrophoneEnabled(u??!s.isMicrophoneEnabled,d,i),s.isMicrophoneEnabled;case M.Source.ScreenShare:return yield s.setScreenShareEnabled(u??!s.isScreenShareEnabled,d,i),s.isScreenShareEnabled;default:throw new TypeError("Tried to toggle unsupported source")}}catch(h){if(r&&h instanceof Error){r==null||r(h);return}else throw h}finally{c.next(!1)}});return{className:Rs("button"),toggle:l,enabledObserver:a,pendingObserver:c.asObservable()}}function sA(){let t=!1;const e=new Rn,n=new Rn,i=r=>an(this,null,function*(){n.next(!0),t=r??!t,e.next(t),n.next(!1)});return{className:Rs("button"),toggle:i,enabledObserver:e.asObservable(),pendingObserver:n.asObservable()}}function oA(t,e,n){const i=new wy(void 0),r=tA(e,t),s=(o,...a)=>an(this,[o,...a],function*(c,l={}){var u,d,h;if(e){Ze.debug(`Switching active device of kind "${t}" with id ${c}.`),yield e.switchActiveDevice(t,c,l.exact);const p=(u=e.getActiveDevice(t))!=null?u:c;p!==c&&c!=="default"&&Ze.info(`We tried to select the device with id (${c}), but the browser decided to select the device with id (${p}) instead.`);let g;t==="audioinput"?g=(d=e.localParticipant.getTrackPublication(M.Source.Microphone))==null?void 0:d.track:t==="videoinput"&&(g=(h=e.localParticipant.getTrackPublication(M.Source.Camera))==null?void 0:h.track);const f=c==="default"&&!g||c==="default"&&(g==null?void 0:g.mediaStreamTrack.label.startsWith("Default"));i.next(f?c:p)}});return{className:Rs("media-device-select"),activeDeviceObservable:r,setActiveMediaDevice:s}}var Gy={CHAT:"lk.chat",TRANSCRIPTION:"lk.transcription"},aA={CHAT:"lk-chat-topic"};function Ky(t,e){return an(this,arguments,function*(n,i,r={}){const{reliable:s,destinationIdentities:o,topic:a}=r;yield n.publishData(i,{destinationIdentities:o,topic:a,reliable:s})})}function cA(t,e,n){const i=Array.isArray(e)?e:[e],r=QR(t).pipe(Td(([,,,a])=>e===void 0||a!==void 0&&i.includes(a)),lt(([a,c,,l])=>({payload:a,topic:l,from:c})));let s;const o=new ze(a=>{s=a});return{messageObservable:r,isSendingObservable:o,send:(a,...c)=>an(this,[a,...c],function*(l,u={}){s.next(!0);try{yield Ky(t.localParticipant,l,zn({topic:i[0]},u))}finally{s.next(!1)}})}}var zs=new WeakMap;function lA(t){return t.ignoreLegacy==!0}var uA=t=>JSON.parse(new TextDecoder().decode(t)),dA=t=>new TextEncoder().encode(JSON.stringify(t));function fA(t,e){var n,i,r,s,o,a;const c=()=>{var b,w,x;return((b=t.serverInfo)==null?void 0:b.edition)===1||!!((w=t.serverInfo)!=null&&w.version)&&qn((x=t.serverInfo)==null?void 0:x.version,"1.8.2")>0},l=new Rn,u=(n=void 0)!=null?n:Gy.CHAT,d=(i=void 0)!=null?i:aA.CHAT;let h=!1;zs.has(t)||(h=!0);const p=(r=zs.get(t))!=null?r:new Map,g=(s=p.get(u))!=null?s:new Rn;p.set(u,g),zs.set(t,p);const f=(o=void 0)!=null?o:uA;if(h){t.registerTextStreamHandler(u,(w,x)=>an(this,null,function*(){const{id:R,timestamp:_}=w.info;Sd(w).pipe(Wl((S,I)=>S+I),lt(S=>({id:R,timestamp:_,message:S,from:t.getParticipantByIdentity(x.identity)}))).subscribe({next:S=>g.next(S)})}));const{messageObservable:b}=cA(t,[d]);b.pipe(lt(w=>{const x=f(w.payload);return lA(x)?void 0:ns(zn({},x),{from:w.from})}),Td(w=>!!w),Pp(l)).subscribe(g)}const y=g.pipe(Wl((b,w)=>{if("id"in w&&b.find(x=>{var R,_;return((R=x.from)==null?void 0:R.identity)===((_=w.from)==null?void 0:_.identity)&&x.id===w.id})){const x=b.findIndex(R=>R.id===w.id);if(x>-1){const R=b[x];b[x]=ns(zn({},w),{timestamp:R.timestamp,editTimestamp:w.timestamp})}return[...b]}return[...b,w]},[]),Pp(l)),v=new wy(!1),C=(a=void 0)!=null?a:dA,T=(b,w)=>an(this,null,function*(){w||(w={}),w.topic!=null||(w.topic=u),v.next(!0);try{const x={id:(yield t.localParticipant.sendText(b,w)).id,timestamp:Date.now(),message:b,from:t.localParticipant,attachedFiles:w.attachments};g.next(x);const R=C(ns(zn({},x),{ignoreLegacy:c()}));try{yield Ky(t.localParticipant,R,{reliable:!0,topic:d})}catch(_){Ze.info("could not send message in legacy chat format",_)}return x}finally{v.next(!1)}});function k(){l.next(),l.complete(),g.complete(),zs.delete(t),t.unregisterTextStreamHandler(u)}return t.once(O.Disconnected,k),{messageObservable:y,isSendingObservable:v,send:T}}function hA(){const t=e=>an(this,null,function*(){Ze.info("Start Audio for room: ",e),yield e.startAudio()});return{className:Rs("start-audio-button"),roomAudioPlaybackAllowedObservable:eA,handleStartAudioPlayback:t}}function _p(t,e,n=!0){const i=[t.localParticipant,...Array.from(t.remoteParticipants.values())],r=[];return i.forEach(s=>{e.forEach(o=>{const a=Array.from(s.trackPublications.values()).filter(c=>c.source===o&&(!n||c.track)).map(c=>({participant:s,publication:c,source:c.source}));r.push(...a)})}),{trackReferences:r,participants:i}}function Mp(t,e,n=!1){const{sources:i,kind:r,name:s}=e;return Array.from(t.trackPublications.values()).filter(o=>(!i||i.includes(o.source))&&(!r||o.kind===r)&&(!s||o.trackName===s)&&(!n||o.track)).map(o=>({participant:t,publication:o,source:o.source}))}function pA(t,e,n){var i,r;const s=(i=n.additionalRoomEvents)!=null?i:$y,o=(r=n.onlySubscribed)!=null?r:!0,a=Array.from(new Set([O.ParticipantConnected,O.ParticipantDisconnected,O.ConnectionStateChanged,O.LocalTrackPublished,O.LocalTrackUnpublished,O.TrackPublished,O.TrackUnpublished,O.TrackSubscriptionStatusChanged,...s]).values());return Cd(t,...a).pipe(lt(c=>{const l=_p(c,e,o);return Ze.debug(`TrackReference[] was updated. (length ${l.trackReferences.length})`,l),l}),un(_p(t,e,o)))}function mA(t,e){return Wy(t,...qR).pipe(lt(n=>{const i=Mp(n,e);return Ze.debug(`TrackReference[] was updated. (length ${i.length})`,i),i}),un(Mp(t,e)))}function Zy(t,e){return new ze(n=>{const i=(...r)=>{n.next(r)};return t.on(e,i),()=>{t.off(e,i)}})}function gA(t){return Zy(t,G.TranscriptionReceived)}function vA(t){return Zy(t,G.TimeSyncUpdate).pipe(lt(([e])=>e))}function yA(t,e){if(typeof localStorage>"u"){Ze.error("Local storage is not available.");return}try{if(e){const n=Object.fromEntries(Object.entries(e).filter(([,i])=>i!==""));localStorage.setItem(t,JSON.stringify(n))}}catch(n){Ze.error(`Error setting item to local storage: ${n}`)}}function bA(t){if(typeof localStorage>"u"){Ze.error("Local storage is not available.");return}try{const e=localStorage.getItem(t);if(!e){Ze.warn(`Item with key ${t} does not exist in local storage.`);return}return JSON.parse(e)}catch(e){Ze.error(`Error getting item from local storage: ${e}`);return}}function SA(t){return{load:()=>bA(t),save:e=>yA(t,e)}}var TA=`${Uy}-user-choices`,jr={videoEnabled:!0,audioEnabled:!0,videoDeviceId:"default",audioDeviceId:"default",username:""},{load:kA,save:CA}=SA(TA);function wA(t,e=!1){e!==!0&&CA(t)}function xA(t,e=!1){var n,i,r,s,o;const a={videoEnabled:(n=t==null?void 0:t.videoEnabled)!=null?n:jr.videoEnabled,audioEnabled:(i=t==null?void 0:t.audioEnabled)!=null?i:jr.audioEnabled,videoDeviceId:(r=t==null?void 0:t.videoDeviceId)!=null?r:jr.videoDeviceId,audioDeviceId:(s=t==null?void 0:t.audioDeviceId)!=null?s:jr.audioDeviceId,username:(o=t==null?void 0:t.username)!=null?o:jr.username};if(e)return a;{const c=kA();return zn(zn({},a),c??{})}}var mc=null,gc=null,EA=0;function Op(){return mc||(mc=new Map),mc}function PA(){return gc||(gc=new WeakMap),gc}function RA(t,e){const n=PA();let i=n.get(t);return i||(i=`room_${EA++}`,n.set(t,i)),`${i}:${e}`}function AA(t,e){const n=RA(t,e),i=Op(),r=i.get(n);if(r)return r;const s=new Rn,o=[],a="lk.segment_id";t.registerTextStreamHandler(e,(l,u)=>an(this,null,function*(){var d;const h=Sd(l).pipe(Wl((g,f)=>g+f,"")),p=!!((d=l.info.attributes)!=null&&d[a]);h.subscribe(g=>{const f=o.findIndex(y=>{var v,C;return y.streamInfo.id===l.info.id||p&&((v=y.streamInfo.attributes)==null?void 0:v[a])===((C=l.info.attributes)==null?void 0:C[a])});f!==-1?(o[f]=ns(zn({},o[f]),{text:g}),s.next([...o])):(o.push({text:g,participantInfo:u,streamInfo:l.info}),s.next([...o]))})}));const c=s.asObservable().pipe(LR());return i.set(n,c),t.once(O.Disconnected,()=>{t.unregisterTextStreamHandler(e),s.complete(),Op().delete(n)}),c}m.createContext(void 0);const IA=m.createContext(void 0);function Yy(){return m.useContext(IA)}function Jy(t){const e=Yy(),n=t??e;if(!n)throw new Error("No TrackRef, make sure you are inside a TrackRefContext or pass the TrackRef explicitly");return n}const _A=m.createContext(void 0);function Xy(){return m.useContext(_A)}const Ed=m.createContext(void 0);function ri(){const t=m.useContext(Ed);if(!t)throw Error("tried to access room context outside of livekit room component");return t}function pa(){return m.useContext(Ed)}function As(t){const e=pa(),n=t??e;if(!n)throw new Error("No room provided, make sure you are inside a Room context or pass the room explicitly");return n}m.createContext(void 0);function Qy(t){var e,n,i="";if(typeof t=="string"||typeof t=="number")i+=t;else if(typeof t=="object")if(Array.isArray(t)){var r=t.length;for(e=0;e<r;e++)t[e]&&(n=Qy(t[e]))&&(i&&(i+=" "),i+=n)}else for(n in t)t[n]&&(i&&(i+=" "),i+=n);return i}function eb(){for(var t,e,n=0,i="",r=arguments.length;n<r;n++)(t=arguments[n])&&(e=Qy(t))&&(i&&(i+=" "),i+=e);return i}function MA(...t){return(...e)=>{for(const n of t)if(typeof n=="function")try{n(...e)}catch(i){console.error(i)}}}function Pd(...t){const e={...t[0]};for(let n=1;n<t.length;n++){const i=t[n];for(const r in i){const s=e[r],o=i[r];typeof s=="function"&&typeof o=="function"&&r[0]==="o"&&r[1]==="n"&&r.charCodeAt(2)>=65&&r.charCodeAt(2)<=90?e[r]=MA(s,o):(r==="className"||r==="UNSAFE_className")&&typeof s=="string"&&typeof o=="string"?e[r]=eb(s,o):e[r]=o!==void 0?o:s}}return e}function OA(t){return t!==void 0}function tb(...t){return Pd(...t.filter(OA))}function DA(t,e,n){return m.Children.map(t,i=>m.isValidElement(i)&&m.Children.only(t)?(i.props.className&&(e??(e={}),e.className=eb(i.props.className,e.className),e.style={...i.props.style,...e.style}),m.cloneElement(i,{...e,key:n})):i)}function _t(t,e,n=!0){const[i,r]=m.useState(e);return m.useEffect(()=>{if(n&&r(e),typeof window>"u"||!t)return;const s=t.subscribe(r);return()=>s.unsubscribe()},[t,n]),i}function Rd(t){const e=As(t),n=m.useMemo(()=>JR(e),[e]);return _t(n,e.state)}function nb(t={}){const e=As(t.room),[n,i]=m.useState(e.localParticipant),[r,s]=m.useState(n.isMicrophoneEnabled),[o,a]=m.useState(n.isCameraEnabled),[c,l]=m.useState(n.isScreenShareEnabled),[u,d]=m.useState(n.lastMicrophoneError),[h,p]=m.useState(n.lastCameraError),[g,f]=m.useState(void 0),[y,v]=m.useState(void 0),C=T=>{a(T.isCameraEnabled),s(T.isMicrophoneEnabled),l(T.isScreenShareEnabled),v(T.cameraTrack),f(T.microphoneTrack),d(T.participant.lastMicrophoneError),p(T.participant.lastCameraError),i(T.participant)};return m.useEffect(()=>{const T=xd(e.localParticipant).subscribe(C);return()=>T.unsubscribe()},[e]),{isMicrophoneEnabled:r,isScreenShareEnabled:c,isCameraEnabled:o,microphoneTrack:g,cameraTrack:y,lastMicrophoneError:u,lastCameraError:h,localParticipant:n}}function NA(){const t=ri(),e=m.useMemo(()=>iA(t.localParticipant),[t]);return _t(e,t.localParticipant.permissions)}function LA({kind:t,room:e,track:n,requestPermissions:i,onError:r}){const s=pa(),o=m.useMemo(()=>e??s??new wn,[e,s]),a=m.useMemo(()=>XR(t,r,i),[t,i,r]),c=_t(a,[]),[l,u]=m.useState((o==null?void 0:o.getActiveDevice(t))??"default"),{className:d,activeDeviceObservable:h,setActiveMediaDevice:p}=m.useMemo(()=>oA(t,o),[t,o,n]);return m.useEffect(()=>{const g=h.subscribe(f=>{f&&(Ze.info("setCurrentDeviceId",f),u(f))});return()=>{g==null||g.unsubscribe()}},[h]),{devices:c,className:d,activeDeviceId:l,setActiveMediaDevice:p}}function VA(t={}){const e=As(t.room),[n,i]=m.useState([]);return m.useEffect(()=>{const r=nA(e,{additionalRoomEvents:t.updateOnlyOn}).subscribe(i);return()=>r.unsubscribe()},[e,JSON.stringify(t.updateOnlyOn)]),n}function FA({room:t,props:e}){const n=As(t),{className:i,roomAudioPlaybackAllowedObservable:r,handleStartAudioPlayback:s}=m.useMemo(()=>hA(),[]),o=m.useMemo(()=>r(n),[n,r]),{canPlayAudio:a}=_t(o,{canPlayAudio:n.canPlaybackAudio});return{mergedProps:m.useMemo(()=>Pd(e,{className:i,onClick:()=>{s(n)},style:{display:a?"none":"block"}}),[e,i,a,s,n]),canPlayAudio:a}}function vc({source:t,onChange:e,initialState:n,captureOptions:i,publishOptions:r,onDeviceError:s,...o}){var a;const c=pa(),l=(a=c==null?void 0:c.localParticipant)==null?void 0:a.getTrackPublication(t),u=m.useRef(!1),{toggle:d,className:h,pendingObserver:p,enabledObserver:g}=m.useMemo(()=>c?rA(t,c,i,r,s):sA(),[c,t,JSON.stringify(i),r]),f=_t(p,!1),y=_t(g,n??!!(l!=null&&l.isEnabled));m.useEffect(()=>{e==null||e(y,u.current),u.current=!1},[y,e]),m.useEffect(()=>{n!==void 0&&(Ze.debug("forcing initial toggle state",t,n),d(n))},[]);const v=m.useMemo(()=>Pd(o,{className:h}),[o,h]),C=m.useCallback(T=>{var k;u.current=!0,d().catch(()=>u.current=!1),(k=o.onClick)==null||k.call(o,T)},[o,d]);return{toggle:d,enabled:y,pending:f,track:l,buttonProps:{...v,"aria-pressed":y,"data-lk-source":t,"data-lk-enabled":y,disabled:f,onClick:C}}}function ib(t=[M.Source.Camera,M.Source.Microphone,M.Source.ScreenShare,M.Source.ScreenShareAudio,M.Source.Unknown],e={}){const n=As(e.room),[i,r]=m.useState([]),[s,o]=m.useState([]),a=m.useMemo(()=>t.map(c=>Hy(c)?c.source:c),[JSON.stringify(t)]);return m.useEffect(()=>{const c=pA(n,a,{additionalRoomEvents:e.updateOnlyOn,onlySubscribed:e.onlySubscribed}).subscribe(({trackReferences:l,participants:u})=>{Ze.debug("setting track bundles",l,u),r(l),o(u)});return()=>c.unsubscribe()},[n,JSON.stringify(e.onlySubscribed),JSON.stringify(e.updateOnlyOn),JSON.stringify(t)]),m.useMemo(()=>{if(zy(t)){const c=UA(t,s),l=Array.from(i);return s.forEach(u=>{c.has(u.identity)&&(c.get(u.identity)??[]).forEach(d=>{if(i.find(({participant:p,publication:g})=>u.identity===p.identity&&g.source===d))return;Ze.debug(`Add ${d} placeholder for participant ${u.identity}.`);const h={participant:u,source:d};l.push(h)})}),l}else return i},[i,s,t])}function jA(t,e){const n=new Set(t);for(const i of e)n.delete(i);return n}function UA(t,e){const n=new Map;if(zy(t)){const i=t.filter(r=>r.withPlaceholder).map(r=>r.source);e.forEach(r=>{const s=r.getTrackPublications().map(a=>{var c;return(c=a.track)==null?void 0:c.source}).filter(a=>a!==void 0),o=Array.from(jA(new Set(i),new Set(s)));o.length>0&&n.set(r.identity,o)})}return n}function BA(t){const e=ri(),n=Rd(e),i=m.useMemo(()=>n===pe.Disconnected,[n]),r=m.useMemo(()=>fA(e),[e,t,i]),s=_t(r.isSendingObservable,!1),o=_t(r.messageObservable,[]);return{send:r.send,chatMessages:o,isSending:s}}function $A(t={}){const[e,n]=m.useState(xA(t.defaults,t.preventLoad??!1)),i=m.useCallback(c=>{n(l=>({...l,audioEnabled:c}))},[]),r=m.useCallback(c=>{n(l=>({...l,videoEnabled:c}))},[]),s=m.useCallback(c=>{n(l=>({...l,audioDeviceId:c}))},[]),o=m.useCallback(c=>{n(l=>({...l,videoDeviceId:c}))},[]),a=m.useCallback(c=>{n(l=>({...l,username:c}))},[]);return m.useEffect(()=>{wA(e,t.preventSave??!1)},[e,t.preventSave]),{userChoices:e,saveAudioInputEnabled:i,saveVideoInputEnabled:r,saveAudioInputDeviceId:s,saveVideoInputDeviceId:o,saveUsername:a}}const HA=t=>{const e=n=>{let i=1-Math.max(-100,Math.min(-10,n))*-1/100;return i=Math.sqrt(i),i};return t.map(n=>n===-1/0?0:e(n))},zA={bands:5,loPass:100,hiPass:600,updateInterval:32,analyserOptions:{fftSize:2048}};function WA(t,e={}){var n;const i=t instanceof M?t:(n=t==null?void 0:t.publication)==null?void 0:n.track,r={...zA,...e},[s,o]=m.useState(new Array(r.bands).fill(0));return m.useEffect(()=>{if(!i||!(i!=null&&i.mediaStream))return;const{analyser:a,cleanup:c}=Hk(i,r.analyserOptions),l=a.frequencyBinCount,u=new Float32Array(l),d=setInterval(()=>{a.getFloatFrequencyData(u);let h=new Float32Array(u.length);for(let y=0;y<u.length;y++)h[y]=u[y];h=h.slice(e.loPass,e.hiPass);const p=HA(h),g=Math.ceil(p.length/r.bands),f=[];for(let y=0;y<r.bands;y++){const v=p.slice(y*g,(y+1)*g).reduce((C,T)=>C+=T,0);f.push(v/g)}o(f)},r.updateInterval);return()=>{c(),clearInterval(d)}},[i,i==null?void 0:i.mediaStream,JSON.stringify(e)]),s}function Dp(t,e){const n=ri(),i=Xy(),r=e?n.getParticipantByIdentity(e):i,s=m.useMemo(()=>r?mA(r,{sources:t}):void 0,[r==null?void 0:r.sid,r==null?void 0:r.identity,JSON.stringify(t)]);return _t(s,[])}function qA(t){var e,n,i;const r=m.useMemo(()=>{var s;return(s=t==null?void 0:t.publication)!=null&&s.track?vA(t==null?void 0:t.publication.track):void 0},[(e=t==null?void 0:t.publication)==null?void 0:e.track]);return _t(r,{timestamp:Date.now(),rtpTimestamp:(i=(n=t==null?void 0:t.publication)==null?void 0:n.track)==null?void 0:i.rtpTimestamp})}const GA={bufferSize:100};function KA(t,e){const n={...GA,...e},[i,r]=m.useState([]),s=qA(t),o=a=>{var c;(c=n.onTranscription)==null||c.call(n,a),r(l=>ZR(l,a.map(u=>KR(u,s)),n.bufferSize))};return m.useEffect(()=>{if(!(t!=null&&t.publication))return;const a=gA(t.publication).subscribe(c=>{o(...c)});return()=>{a.unsubscribe()}},[t&&By(t),o]),{segments:i}}function ZA(t={}){const e=Xy(),n=t.participant??e,i=m.useMemo(()=>Ip(n),[n]);return _t(i,{attributes:n==null?void 0:n.attributes})}const Np="lk.agent.state";function rb(){const t=VA(),e=t.find(d=>d.kind===bi.AGENT&&!("lk.publish_on_behalf"in d.attributes)),n=t.find(d=>d.kind===bi.AGENT&&d.attributes["lk.publish_on_behalf"]===(e==null?void 0:e.identity)),i=Dp([M.Source.Microphone,M.Source.Camera],e==null?void 0:e.identity),r=Dp([M.Source.Microphone,M.Source.Camera],n==null?void 0:n.identity),s=i.find(d=>d.source===M.Source.Microphone)??r.find(d=>d.source===M.Source.Microphone),o=i.find(d=>d.source===M.Source.Camera)??r.find(d=>d.source===M.Source.Camera),{segments:a}=KA(s),c=Rd(),{attributes:l}=ZA({participant:e}),u=m.useMemo(()=>c===pe.Disconnected?"disconnected":c===pe.Connecting||!e||!(l!=null&&l[Np])?"connecting":l[Np],[l,e,c]);return{agent:e,state:u,audioTrack:s,videoTrack:o,agentTranscriptions:a,agentAttributes:l}}function YA(t){const e=ri(),n=Rd(e)===pe.Disconnected,i=m.useMemo(()=>AA(e,t),[e,t]);return{textStreams:_t(n?void 0:i,[])}}function JA(t){const{participantIdentities:e,trackSids:n}={},{textStreams:i}=YA(Gy.TRANSCRIPTION);return m.useMemo(()=>i.filter(r=>e?e.includes(r.participantInfo.identity):!0).filter(r=>{var s;return n?n.includes(((s=r.streamInfo.attributes)==null?void 0:s["lk.transcribed_track_id"])??""):!0}),[i,e,n])}const XA=m.forwardRef(function({label:t="Allow Audio",...e},n){const i=ri(),{mergedProps:r}=FA({room:i,props:e});return m.createElement("button",{ref:n,...r},t)});function sb(t,e={}){const[n,i]=m.useState(ql(t)),[r,s]=m.useState(n==null?void 0:n.isMuted),[o,a]=m.useState(n==null?void 0:n.isSubscribed),[c,l]=m.useState(n==null?void 0:n.track),[u,d]=m.useState("landscape"),h=m.useRef(),{className:p,trackObserver:g}=m.useMemo(()=>YR(t),[t.participant.sid??t.participant.identity,t.source,kd(t)&&t.publication.trackSid]);return m.useEffect(()=>{const f=g.subscribe(y=>{Ze.debug("update track",y),i(y),s(y==null?void 0:y.isMuted),a(y==null?void 0:y.isSubscribed),l(y==null?void 0:y.track)});return()=>f==null?void 0:f.unsubscribe()},[g]),m.useEffect(()=>{var f,y;return c&&(h.current&&c.detach(h.current),(f=e.element)!=null&&f.current&&!(t.participant.isLocal&&(c==null?void 0:c.kind)==="audio")&&c.attach(e.element.current)),h.current=(y=e.element)==null?void 0:y.current,()=>{h.current&&(c==null||c.detach(h.current))}},[c,e.element]),m.useEffect(()=>{var f,y;if(typeof((f=n==null?void 0:n.dimensions)==null?void 0:f.width)=="number"&&typeof((y=n==null?void 0:n.dimensions)==null?void 0:y.height)=="number"){const v=n.dimensions.width>n.dimensions.height?"landscape":"portrait";d(v)}},[n]),{publication:n,isMuted:r,isSubscribed:o,track:c,elementProps:tb(e.props,{className:p,"data-lk-local-participant":t.participant.isLocal,"data-lk-source":n==null?void 0:n.source,...(n==null?void 0:n.kind)==="video"&&{"data-lk-orientation":u}})}}var yc,Lp;function QA(){if(Lp)return yc;Lp=1;var t="Expected a function",e=NaN,n="[object Symbol]",i=/^\s+|\s+$/g,r=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,o=/^0o[0-7]+$/i,a=parseInt,c=typeof $s=="object"&&$s&&$s.Object===Object&&$s,l=typeof self=="object"&&self&&self.Object===Object&&self,u=c||l||Function("return this")(),d=Object.prototype,h=d.toString,p=Math.max,g=Math.min,f=function(){return u.Date.now()};function y(b,w,x){var R,_,S,I,N,z,K=0,se=!1,Q=!1,Y=!0;if(typeof b!="function")throw new TypeError(t);w=k(w)||0,v(x)&&(se=!!x.leading,Q="maxWait"in x,S=Q?p(k(x.maxWait)||0,w):S,Y="trailing"in x?!!x.trailing:Y);function F(V){var q=R,te=_;return R=_=void 0,K=V,I=b.apply(te,q),I}function ce(V){return K=V,N=setTimeout(W,w),se?F(V):I}function A(V){var q=V-z,te=V-K,ee=w-q;return Q?g(ee,S-te):ee}function j(V){var q=V-z,te=V-K;return z===void 0||q>=w||q<0||Q&&te>=S}function W(){var V=f();if(j(V))return Z(V);N=setTimeout(W,A(V))}function Z(V){return N=void 0,Y&&R?F(V):(R=_=void 0,I)}function J(){N!==void 0&&clearTimeout(N),K=0,R=z=_=N=void 0}function re(){return N===void 0?I:Z(f())}function oe(){var V=f(),q=j(V);if(R=arguments,_=this,z=V,q){if(N===void 0)return ce(z);if(Q)return N=setTimeout(W,w),F(z)}return N===void 0&&(N=setTimeout(W,w)),I}return oe.cancel=J,oe.flush=re,oe}function v(b){var w=typeof b;return!!b&&(w=="object"||w=="function")}function C(b){return!!b&&typeof b=="object"}function T(b){return typeof b=="symbol"||C(b)&&h.call(b)==n}function k(b){if(typeof b=="number")return b;if(T(b))return e;if(v(b)){var w=typeof b.valueOf=="function"?b.valueOf():b;b=v(w)?w+"":w}if(typeof b!="string")return b===0?b:+b;b=b.replace(i,"");var x=s.test(b);return x||o.test(b)?a(b.slice(2),x?2:8):r.test(b)?e:+b}return yc=y,yc}var e4=QA();const Vp=yy(e4);function t4(t){const e=B.useRef(t);e.current=t,B.useEffect(()=>()=>{e.current()},[])}function n4(t,e=500,n){const i=B.useRef();t4(()=>{i.current&&i.current.cancel()});const r=B.useMemo(()=>{const s=Vp(t,e,n),o=(...a)=>s(...a);return o.cancel=()=>{s.cancel()},o.isPending=()=>!!i.current,o.flush=()=>s.flush(),o},[t,e,n]);return B.useEffect(()=>{i.current=Vp(t,e,n)},[t,e,n]),r}function i4(t,e,n){const i=(l,u)=>l===u,r=t instanceof Function?t():t,[s,o]=B.useState(r),a=B.useRef(r),c=n4(o,e,n);return i(a.current,r)||(c(r),a.current=r),[s,c]}function r4({threshold:t=0,root:e=null,rootMargin:n="0%",freezeOnceVisible:i=!1,initialIsIntersecting:r=!1,onChange:s}={}){var o;const[a,c]=B.useState(null),[l,u]=B.useState(()=>({isIntersecting:r,entry:void 0})),d=B.useRef();d.current=s;const h=((o=l.entry)==null?void 0:o.isIntersecting)&&i;B.useEffect(()=>{if(!a||!("IntersectionObserver"in window)||h)return;const f=new IntersectionObserver(y=>{const v=Array.isArray(f.thresholds)?f.thresholds:[f.thresholds];y.forEach(C=>{const T=C.isIntersecting&&v.some(k=>C.intersectionRatio>=k);u({isIntersecting:T,entry:C}),d.current&&d.current(T,C)})},{threshold:t,root:e,rootMargin:n});return f.observe(a),()=>{f.disconnect()}},[a,JSON.stringify(t),e,n,h,i]);const p=B.useRef(null);B.useEffect(()=>{var f;!a&&(f=l.entry)!=null&&f.target&&!i&&!h&&p.current!==l.entry.target&&(p.current=l.entry.target,u({isIntersecting:r,entry:void 0}))},[a,l.entry,i,h,r]);const g=[c,!!l.isIntersecting,l.entry];return g.ref=g[0],g.isIntersecting=g[1],g.entry=g[2],g}const ob=m.forwardRef(function({onTrackClick:t,onClick:e,onSubscriptionStatusChanged:n,trackRef:i,manageSubscription:r,...s},o){const a=Jy(i),c=m.useRef(null);m.useImperativeHandle(o,()=>c.current);const l=r4({root:c.current}),[u]=i4(l,3e3);m.useEffect(()=>{r&&a.publication instanceof Fo&&(u==null?void 0:u.isIntersecting)===!1&&(l==null?void 0:l.isIntersecting)===!1&&a.publication.setSubscribed(!1)},[u,a,r]),m.useEffect(()=>{r&&a.publication instanceof Fo&&(l==null?void 0:l.isIntersecting)===!0&&a.publication.setSubscribed(!0)},[l,a,r]);const{elementProps:d,publication:h,isSubscribed:p}=sb(a,{element:c,props:s});m.useEffect(()=>{n==null||n(!!p)},[p,n]);const g=f=>{e==null||e(f),t==null||t({participant:a==null?void 0:a.participant,track:h})};return m.createElement("video",{ref:c,...d,muted:!0,onClick:g})}),s4=m.forwardRef(function({trackRef:t,onSubscriptionStatusChanged:e,volume:n,...i},r){const s=Jy(t),o=m.useRef(null);m.useImperativeHandle(r,()=>o.current);const{elementProps:a,isSubscribed:c,track:l,publication:u}=sb(s,{element:o,props:i});return m.useEffect(()=>{e==null||e(!!c)},[c,e]),m.useEffect(()=>{l===void 0||n===void 0||(l instanceof F0?l.setVolume(n):Ze.warn("Volume can only be set on remote audio tracks."))},[n,l]),m.useEffect(()=>{u===void 0||i.muted===void 0||(u instanceof Fo?u.setEnabled(!i.muted):Ze.warn("Can only call setEnabled on remote track publications."))},[i.muted,u,l]),m.createElement("audio",{ref:o,...a})});function o4({volume:t,muted:e}){const n=ib([M.Source.Microphone,M.Source.ScreenShareAudio,M.Source.Unknown],{updateOnlyOn:[],onlySubscribed:!0}).filter(i=>!i.participant.isLocal&&i.publication.kind===M.Kind.Audio);return m.createElement("div",{style:{display:"none"}},n.map(i=>m.createElement(s4,{key:By(i),trackRef:i,volume:t,muted:e})))}const a4=t=>{const e=[];for(let n=0;n<t;n++)e.push([n,t-1-n]);return e},Fp=t=>[[Math.floor(t/2)],[-1]],c4=(t,e,n)=>{const[i,r]=B.useState(0),[s,o]=B.useState([[]]);B.useEffect(()=>{if(t==="thinking")o(Fp(e));else if(t==="connecting"||t==="initializing"){const c=[...a4(e)];o(c)}else o(t==="listening"?Fp(e):t===void 0||t==="speaking"?[new Array(e).fill(0).map((c,l)=>l)]:[[]]);r(0)},[t,e]);const a=B.useRef(null);return B.useEffect(()=>{let c=performance.now();const l=u=>{u-c>=n&&(r(d=>d+1),c=u),a.current=requestAnimationFrame(l)};return a.current=requestAnimationFrame(l),()=>{a.current!==null&&cancelAnimationFrame(a.current)}},[n,e,t,s.length]),s[i%s.length]},l4=new Map([["connecting",2e3],["initializing",2e3],["listening",500],["thinking",150]]),u4=(t,e)=>{if(t===void 0)return 1e3;let n=l4.get(t);if(n)switch(t){case"connecting":n/=e;break}return n},ab=m.forwardRef(function({state:t,options:e,barCount:n=15,trackRef:i,children:r,...s},o){const a=tb(s,{className:"lk-audio-bar-visualizer"});let c=Yy();i&&(c=i);const l=WA(c,{bands:n,loPass:100,hiPass:200}),u=(e==null?void 0:e.minHeight)??20,d=(e==null?void 0:e.maxHeight)??100,h=c4(t,n,u4(t,n)??100);return m.createElement("div",{ref:o,...a,"data-lk-va-state":t},l.map((p,g)=>r?DA(r,{"data-lk-highlighted":h.includes(g),"data-lk-bar-index":g,className:"lk-audio-bar",style:{height:`${Math.min(d,Math.max(u,p*100+5))}%`}}):m.createElement("span",{key:g,"data-lk-highlighted":h.includes(g),"data-lk-bar-index":g,className:`lk-audio-bar ${h.includes(g)&&"lk-highlighted"}`,style:{height:`${Math.min(d,Math.max(u,p*100+5))}%`}})))});function d4(t){if(typeof document>"u")return;let e=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",e.appendChild(n),n.styleSheet?n.styleSheet.cssText=t:n.appendChild(document.createTextNode(t))}Array(12).fill(0);let Gl=1;class f4{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{const n=this.subscribers.indexOf(e);this.subscribers.splice(n,1)}),this.publish=e=>{this.subscribers.forEach(n=>n(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var n;const{message:i,...r}=e,s=typeof(e==null?void 0:e.id)=="number"||((n=e.id)==null?void 0:n.length)>0?e.id:Gl++,o=this.toasts.find(c=>c.id===s),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(s)&&this.dismissedToasts.delete(s),o?this.toasts=this.toasts.map(c=>c.id===s?(this.publish({...c,...e,id:s,title:i}),{...c,...e,id:s,dismissible:a,title:i}):c):this.addToast({title:i,...r,dismissible:a,id:s}),s},this.dismiss=e=>(e?(this.dismissedToasts.add(e),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:e,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(i=>i({id:n.id,dismiss:!0}))}),e),this.message=(e,n)=>this.create({...n,message:e}),this.error=(e,n)=>this.create({...n,message:e,type:"error"}),this.success=(e,n)=>this.create({...n,type:"success",message:e}),this.info=(e,n)=>this.create({...n,type:"info",message:e}),this.warning=(e,n)=>this.create({...n,type:"warning",message:e}),this.loading=(e,n)=>this.create({...n,type:"loading",message:e}),this.promise=(e,n)=>{if(!n)return;let i;n.loading!==void 0&&(i=this.create({...n,promise:e,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const r=Promise.resolve(e instanceof Function?e():e);let s=i!==void 0,o;const a=r.then(async l=>{if(o=["resolve",l],B.isValidElement(l))s=!1,this.create({id:i,type:"default",message:l});else if(p4(l)&&!l.ok){s=!1;const d=typeof n.error=="function"?await n.error(`HTTP error! status: ${l.status}`):n.error,h=typeof n.description=="function"?await n.description(`HTTP error! status: ${l.status}`):n.description,g=typeof d=="object"&&!B.isValidElement(d)?d:{message:d};this.create({id:i,type:"error",description:h,...g})}else if(l instanceof Error){s=!1;const d=typeof n.error=="function"?await n.error(l):n.error,h=typeof n.description=="function"?await n.description(l):n.description,g=typeof d=="object"&&!B.isValidElement(d)?d:{message:d};this.create({id:i,type:"error",description:h,...g})}else if(n.success!==void 0){s=!1;const d=typeof n.success=="function"?await n.success(l):n.success,h=typeof n.description=="function"?await n.description(l):n.description,g=typeof d=="object"&&!B.isValidElement(d)?d:{message:d};this.create({id:i,type:"success",description:h,...g})}}).catch(async l=>{if(o=["reject",l],n.error!==void 0){s=!1;const u=typeof n.error=="function"?await n.error(l):n.error,d=typeof n.description=="function"?await n.description(l):n.description,p=typeof u=="object"&&!B.isValidElement(u)?u:{message:u};this.create({id:i,type:"error",description:d,...p})}}).finally(()=>{s&&(this.dismiss(i),i=void 0),n.finally==null||n.finally.call(n)}),c=()=>new Promise((l,u)=>a.then(()=>o[0]==="reject"?u(o[1]):l(o[1])).catch(u));return typeof i!="string"&&typeof i!="number"?{unwrap:c}:Object.assign(i,{unwrap:c})},this.custom=(e,n)=>{const i=(n==null?void 0:n.id)||Gl++;return this.create({jsx:e(i),id:i,...n}),i},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Pt=new f4,h4=(t,e)=>{const n=(e==null?void 0:e.id)||Gl++;return Pt.addToast({title:t,...e,id:n}),n},p4=t=>t&&typeof t=="object"&&"ok"in t&&typeof t.ok=="boolean"&&"status"in t&&typeof t.status=="number",m4=h4,g4=()=>Pt.toasts,v4=()=>Pt.getActiveToasts(),cb=Object.assign(m4,{success:Pt.success,info:Pt.info,warning:Pt.warning,error:Pt.error,custom:Pt.custom,message:Pt.message,promise:Pt.promise,dismiss:Pt.dismiss,loading:Pt.loading},{getHistory:g4,getToasts:v4});d4("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");const Mt=m.forwardRef((t,e)=>{const{alt:n,color:i="currentColor",size:r="1em",weight:s="regular",mirrored:o=!1,children:a,weights:c,...l}=t;return m.createElement("svg",{ref:e,xmlns:"http://www.w3.org/2000/svg",width:r,height:r,fill:i,viewBox:"0 0 256 256",transform:o?"scale(-1, 1)":void 0,...l},!!n&&m.createElement("title",null,n),a,c.get(s))});Mt.displayName="SSRBase";const y4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.createElement("path",{d:"M208,96l-80,80L48,96Z",opacity:"0.2"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),Ad=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:y4}));Ad.displayName="CaretDownIcon";const b4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.createElement("path",{d:"M208,160H48l80-80Z",opacity:"0.2"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),lb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:b4}));lb.displayName="CaretUpIcon";const S4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),ub=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:S4}));ub.displayName="ChatTextIcon";const T4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),db=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:T4}));db.displayName="CheckIcon";const k4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),fb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:k4}));fb.displayName="MicrophoneIcon";const C4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),hb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:C4}));hb.displayName="MicrophoneSlashIcon";const w4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),pb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:w4}));pb.displayName="MonitorArrowUpIcon";const x4=new Map([["bold",m.createElement(m.Fragment,null,m.createElement("path",{d:"M234.39,87.29c-57.67-57.72-155.11-57.72-212.78,0-21.45,21.47-23.52,53.13-5,77a20,20,0,0,0,22.92,6.37L88.4,153.29l.45-.16A20,20,0,0,0,101,138.47l5.44-27.24a72.48,72.48,0,0,1,42.76-.09L155,138.62a20,20,0,0,0,12.14,14.49l.45.17,48.94,17.37a20,20,0,0,0,22.91-6.37C257.91,140.42,255.84,108.76,234.39,87.29Zm-12.23,59.9L178,131.5,172.24,104a20,20,0,0,0-13-14.8,96.49,96.49,0,0,0-62.94.14A20,20,0,0,0,83.4,104.24L78,131.53,33.84,147.19c-9.16-13.85-7.41-30.77,4.73-42.92C62.81,80,95.41,67.88,128,67.88S193.19,80,217.43,104.27C229.57,116.42,231.32,133.35,222.16,147.19ZM228,200a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,200Z"}))],["duotone",m.createElement(m.Fragment,null,m.createElement("path",{d:"M230,157a8,8,0,0,1-9.26,2.47L171.58,142a8,8,0,0,1-4.86-5.8l-6.21-29.74a7.94,7.94,0,0,0-5.14-5.9,84.39,84.39,0,0,0-55.1.13,7.93,7.93,0,0,0-5.12,6l-5.9,29.51A8,8,0,0,1,84.38,142L35.29,159.42A8,8,0,0,1,26,157c-14.6-18.83-13.26-43.83,4-61.12,53.11-53.11,142.77-53.11,195.88,0C243.23,113.12,244.57,138.12,230,157Z",opacity:"0.2"}),m.createElement("path",{d:"M231.59,90.13h0C175.44,34,80.56,34,24.41,90.13c-20,20-21.92,49.49-4.69,71.71A16,16,0,0,0,32.35,168a15.8,15.8,0,0,0,5.75-1.08l49-17.37.29-.11a16,16,0,0,0,9.75-11.73l5.9-29.52a76.52,76.52,0,0,1,49.68-.11h0l6.21,29.75a16,16,0,0,0,9.72,11.59l.29.11,49,17.39a16,16,0,0,0,18.38-5.06C253.51,139.62,251.58,110.13,231.59,90.13ZM223.67,152l-.3-.12-48.82-17.33-6.21-29.74A16,16,0,0,0,158,93a92.56,92.56,0,0,0-60.34.13,16,16,0,0,0-10.32,12l-5.9,29.51L32.63,151.86c-.1,0-.17.13-.27.17-12.33-15.91-11-36.23,3.36-50.58,25-25,58.65-37.53,92.28-37.53s67.27,12.51,92.28,37.53C234.61,115.8,236,136.12,223.67,152Zm.32,48a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,200Z"}))],["fill",m.createElement(m.Fragment,null,m.createElement("path",{d:"M236.28,161.84a16,16,0,0,1-18.38,5.06l-49-17.39-.29-.11a16,16,0,0,1-9.72-11.59l-6.21-29.75h0a76.52,76.52,0,0,0-49.68.11l-5.9,29.52a16,16,0,0,1-9.75,11.73l-.29.11-49,17.37A15.8,15.8,0,0,1,32.35,168a16,16,0,0,1-12.63-6.14c-17.23-22.22-15.3-51.71,4.69-71.71,56.15-56.17,151-56.17,207.18,0h0C251.58,110.13,253.51,139.62,236.28,161.84ZM216,192H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z"}))],["light",m.createElement(m.Fragment,null,m.createElement("path",{d:"M230.19,91.55h0c-55.39-55.4-149-55.4-204.38,0C6.56,110.82,4.7,139.22,21.29,160.61A14,14,0,0,0,37.39,165l49-17.38.22-.09a13.93,13.93,0,0,0,8.53-10.25l5.9-29.52a1.93,1.93,0,0,1,1.21-1.47,78.53,78.53,0,0,1,51.18-.11,1.93,1.93,0,0,1,1.22,1.45l6.21,29.75a14,14,0,0,0,8.5,10.14l.23.08,49,17.4a14,14,0,0,0,16.1-4.42C251.3,139.22,249.44,110.82,230.19,91.55Zm-5,61.71a2,2,0,0,1-2.29.58l-.22-.09-49-17.38A2,2,0,0,1,172.6,135l-6.22-29.74a14,14,0,0,0-9.06-10.35,90.53,90.53,0,0,0-59,.13,14,14,0,0,0-9,10.45L83.37,135a2,2,0,0,1-1.15,1.44L33.28,153.75l-.22.09a2,2,0,0,1-2.29-.58c-13-16.74-11.56-38.12,3.53-53.22,25.39-25.4,59.55-38.1,93.7-38.1s68.31,12.7,93.7,38.1C236.79,115.14,238.21,136.52,225.23,153.26ZM222,200a6,6,0,0,1-6,6H40a6,6,0,0,1,0-12H216A6,6,0,0,1,222,200Z"}))],["regular",m.createElement(m.Fragment,null,m.createElement("path",{d:"M231.59,90.13h0C175.44,34,80.56,34,24.41,90.13c-20,20-21.92,49.49-4.69,71.71A16,16,0,0,0,32.35,168a15.8,15.8,0,0,0,5.75-1.08l49-17.37.29-.11a16,16,0,0,0,9.75-11.73l5.9-29.52a76.52,76.52,0,0,1,49.68-.11h0l6.21,29.75a16,16,0,0,0,9.72,11.59l.29.11,49,17.39a16,16,0,0,0,18.38-5.06C253.51,139.62,251.58,110.13,231.59,90.13ZM223.67,152l-.3-.12-48.82-17.33-6.21-29.74A16,16,0,0,0,158,93a92.56,92.56,0,0,0-60.34.13,16,16,0,0,0-10.32,12l-5.9,29.51L32.63,151.86c-.1,0-.17.13-.27.17-12.33-15.91-11-36.23,3.36-50.58,25-25,58.65-37.53,92.28-37.53s67.27,12.51,92.28,37.53C234.61,115.8,236,136.12,223.67,152Zm.32,48a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,200Z"}))],["thin",m.createElement(m.Fragment,null,m.createElement("path",{d:"M228.79,93C174.15,38.34,81.85,38.34,27.21,93,8.69,111.5,6.9,138.81,22.85,159.39a12,12,0,0,0,13.83,3.77l49-17.39.15-.06a12,12,0,0,0,7.31-8.79l5.9-29.51a3.93,3.93,0,0,1,2.51-3,80.59,80.59,0,0,1,52.5-.12,3.94,3.94,0,0,1,2.52,2.94L162.81,137a12,12,0,0,0,7.29,8.69l.15.06,49.07,17.41a12,12,0,0,0,13.83-3.77C249.1,138.81,247.31,111.5,228.79,93Zm-2,61.51a4,4,0,0,1-4.61,1.21l-.15-.06L173,138.24a4,4,0,0,1-2.37-2.87l-6.21-29.75a12,12,0,0,0-7.75-8.87,88.63,88.63,0,0,0-57.74.14,12,12,0,0,0-7.72,9l-5.9,29.51A4,4,0,0,1,83,138.26l-49,17.38-.15.06a4,4,0,0,1-4.61-1.21c-13.42-17.3-11.9-40.26,3.69-55.85C58.65,72.85,93.33,60,128,60s69.35,12.89,95.13,38.68C238.71,114.23,240.24,137.19,226.82,154.49ZM220,200a4,4,0,0,1-4,4H40a4,4,0,0,1,0-8H216A4,4,0,0,1,220,200Z"}))]]),mb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:x4}));mb.displayName="PhoneDisconnectIcon";const E4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),Id=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:E4}));Id.displayName="SpinnerIcon";const P4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),gb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:P4}));gb.displayName="VideoCameraIcon";const R4=new Map([["bold",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}),m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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",m.createElement(m.Fragment,null,m.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"}))]]),vb=m.forwardRef((t,e)=>m.createElement(Mt,{ref:e,...t,weights:R4}));vb.displayName="VideoCameraSlashIcon";const A4=new Map([["bold",m.createElement(m.Fragment,null,m.createElement("path",{d:"M240.26,186.1,152.81,34.23h0a28.74,28.74,0,0,0-49.62,0L15.74,186.1a27.45,27.45,0,0,0,0,27.71A28.31,28.31,0,0,0,40.55,228h174.9a28.31,28.31,0,0,0,24.79-14.19A27.45,27.45,0,0,0,240.26,186.1Zm-20.8,15.7a4.46,4.46,0,0,1-4,2.2H40.55a4.46,4.46,0,0,1-4-2.2,3.56,3.56,0,0,1,0-3.73L124,46.2a4.77,4.77,0,0,1,8,0l87.44,151.87A3.56,3.56,0,0,1,219.46,201.8ZM116,136V104a12,12,0,0,1,24,0v32a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,176Z"}))],["duotone",m.createElement(m.Fragment,null,m.createElement("path",{d:"M215.46,216H40.54C27.92,216,20,202.79,26.13,192.09L113.59,40.22c6.3-11,22.52-11,28.82,0l87.46,151.87C236,202.79,228.08,216,215.46,216Z",opacity:"0.2"}),m.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["fill",m.createElement(m.Fragment,null,m.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM120,104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm8,88a12,12,0,1,1,12-12A12,12,0,0,1,128,192Z"}))],["light",m.createElement(m.Fragment,null,m.createElement("path",{d:"M235.07,189.09,147.61,37.22h0a22.75,22.75,0,0,0-39.22,0L20.93,189.09a21.53,21.53,0,0,0,0,21.72A22.35,22.35,0,0,0,40.55,222h174.9a22.35,22.35,0,0,0,19.6-11.19A21.53,21.53,0,0,0,235.07,189.09ZM224.66,204.8a10.46,10.46,0,0,1-9.21,5.2H40.55a10.46,10.46,0,0,1-9.21-5.2,9.51,9.51,0,0,1,0-9.72L118.79,43.21a10.75,10.75,0,0,1,18.42,0l87.46,151.87A9.51,9.51,0,0,1,224.66,204.8ZM122,144V104a6,6,0,0,1,12,0v40a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,180Z"}))],["regular",m.createElement(m.Fragment,null,m.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["thin",m.createElement(m.Fragment,null,m.createElement("path",{d:"M233.34,190.09,145.88,38.22h0a20.75,20.75,0,0,0-35.76,0L22.66,190.09a19.52,19.52,0,0,0,0,19.71A20.36,20.36,0,0,0,40.54,220H215.46a20.36,20.36,0,0,0,17.86-10.2A19.52,19.52,0,0,0,233.34,190.09ZM226.4,205.8a12.47,12.47,0,0,1-10.94,6.2H40.54a12.47,12.47,0,0,1-10.94-6.2,11.45,11.45,0,0,1,0-11.72L117.05,42.21a12.76,12.76,0,0,1,21.9,0L226.4,194.08A11.45,11.45,0,0,1,226.4,205.8ZM124,144V104a4,4,0,0,1,8,0v40a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,180Z"}))]]),I4=B.createContext({color:"currentColor",size:"1em",weight:"regular",mirrored:!1}),yb=m.forwardRef((t,e)=>{const{alt:n,color:i,size:r,weight:s,mirrored:o,children:a,weights:c,...l}=t,{color:u="currentColor",size:d,weight:h="regular",mirrored:p=!1,...g}=m.useContext(I4);return m.createElement("svg",{ref:e,xmlns:"http://www.w3.org/2000/svg",width:r??d,height:r??d,fill:i??u,viewBox:"0 0 256 256",transform:o||p?"scale(-1, 1)":void 0,...g,...l},!!n&&m.createElement("title",null,n),a,c.get(s??h))});yb.displayName="IconBase";const bb=m.forwardRef((t,e)=>m.createElement(yb,{ref:e,...t,weights:A4}));bb.displayName="WarningIcon";const _d="-",_4=t=>{const e=O4(t),{conflictingClassGroups:n,conflictingClassGroupModifiers:i}=t;return{getClassGroupId:o=>{const a=o.split(_d);return a[0]===""&&a.length!==1&&a.shift(),Sb(a,e)||M4(o)},getConflictingClassGroupIds:(o,a)=>{const c=n[o]||[];return a&&i[o]?[...c,...i[o]]:c}}},Sb=(t,e)=>{var o;if(t.length===0)return e.classGroupId;const n=t[0],i=e.nextPart.get(n),r=i?Sb(t.slice(1),i):void 0;if(r)return r;if(e.validators.length===0)return;const s=t.join(_d);return(o=e.validators.find(({validator:a})=>a(s)))==null?void 0:o.classGroupId},jp=/^\[(.+)\]$/,M4=t=>{if(jp.test(t)){const e=jp.exec(t)[1],n=e==null?void 0:e.substring(0,e.indexOf(":"));if(n)return"arbitrary.."+n}},O4=t=>{const{theme:e,classGroups:n}=t,i={nextPart:new Map,validators:[]};for(const r in n)Kl(n[r],i,r,e);return i},Kl=(t,e,n,i)=>{t.forEach(r=>{if(typeof r=="string"){const s=r===""?e:Up(e,r);s.classGroupId=n;return}if(typeof r=="function"){if(D4(r)){Kl(r(i),e,n,i);return}e.validators.push({validator:r,classGroupId:n});return}Object.entries(r).forEach(([s,o])=>{Kl(o,Up(e,s),n,i)})})},Up=(t,e)=>{let n=t;return e.split(_d).forEach(i=>{n.nextPart.has(i)||n.nextPart.set(i,{nextPart:new Map,validators:[]}),n=n.nextPart.get(i)}),n},D4=t=>t.isThemeGetter,N4=t=>{if(t<1)return{get:()=>{},set:()=>{}};let e=0,n=new Map,i=new Map;const r=(s,o)=>{n.set(s,o),e++,e>t&&(e=0,i=n,n=new Map)};return{get(s){let o=n.get(s);if(o!==void 0)return o;if((o=i.get(s))!==void 0)return r(s,o),o},set(s,o){n.has(s)?n.set(s,o):r(s,o)}}},Zl="!",Yl=":",L4=Yl.length,V4=t=>{const{prefix:e,experimentalParseClassName:n}=t;let i=r=>{const s=[];let o=0,a=0,c=0,l;for(let g=0;g<r.length;g++){let f=r[g];if(o===0&&a===0){if(f===Yl){s.push(r.slice(c,g)),c=g+L4;continue}if(f==="/"){l=g;continue}}f==="["?o++:f==="]"?o--:f==="("?a++:f===")"&&a--}const u=s.length===0?r:r.substring(c),d=F4(u),h=d!==u,p=l&&l>c?l-c:void 0;return{modifiers:s,hasImportantModifier:h,baseClassName:d,maybePostfixModifierPosition:p}};if(e){const r=e+Yl,s=i;i=o=>o.startsWith(r)?s(o.substring(r.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:o,maybePostfixModifierPosition:void 0}}if(n){const r=i;i=s=>n({className:s,parseClassName:r})}return i},F4=t=>t.endsWith(Zl)?t.substring(0,t.length-1):t.startsWith(Zl)?t.substring(1):t,j4=t=>{const e=Object.fromEntries(t.orderSensitiveModifiers.map(i=>[i,!0]));return i=>{if(i.length<=1)return i;const r=[];let s=[];return i.forEach(o=>{o[0]==="["||e[o]?(r.push(...s.sort(),o),s=[]):s.push(o)}),r.push(...s.sort()),r}},U4=t=>({cache:N4(t.cacheSize),parseClassName:V4(t),sortModifiers:j4(t),..._4(t)}),B4=/\s+/,$4=(t,e)=>{const{parseClassName:n,getClassGroupId:i,getConflictingClassGroupIds:r,sortModifiers:s}=e,o=[],a=t.trim().split(B4);let c="";for(let l=a.length-1;l>=0;l-=1){const u=a[l],{isExternal:d,modifiers:h,hasImportantModifier:p,baseClassName:g,maybePostfixModifierPosition:f}=n(u);if(d){c=u+(c.length>0?" "+c:c);continue}let y=!!f,v=i(y?g.substring(0,f):g);if(!v){if(!y){c=u+(c.length>0?" "+c:c);continue}if(v=i(g),!v){c=u+(c.length>0?" "+c:c);continue}y=!1}const C=s(h).join(":"),T=p?C+Zl:C,k=T+v;if(o.includes(k))continue;o.push(k);const b=r(v,y);for(let w=0;w<b.length;++w){const x=b[w];o.push(T+x)}c=u+(c.length>0?" "+c:c)}return c};function H4(){let t=0,e,n,i="";for(;t<arguments.length;)(e=arguments[t++])&&(n=Tb(e))&&(i&&(i+=" "),i+=n);return i}const Tb=t=>{if(typeof t=="string")return t;let e,n="";for(let i=0;i<t.length;i++)t[i]&&(e=Tb(t[i]))&&(n&&(n+=" "),n+=e);return n};function z4(t,...e){let n,i,r,s=o;function o(c){const l=e.reduce((u,d)=>d(u),t());return n=U4(l),i=n.cache.get,r=n.cache.set,s=a,a(c)}function a(c){const l=i(c);if(l)return l;const u=$4(c,n);return r(c,u),u}return function(){return s(H4.apply(null,arguments))}}const Ye=t=>{const e=n=>n[t]||[];return e.isThemeGetter=!0,e},kb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Cb=/^\((?:(\w[\w-]*):)?(.+)\)$/i,W4=/^\d+\/\d+$/,q4=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,G4=/\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$/,K4=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Z4=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Y4=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Oi=t=>W4.test(t),de=t=>!!t&&!Number.isNaN(Number(t)),Ln=t=>!!t&&Number.isInteger(Number(t)),bc=t=>t.endsWith("%")&&de(t.slice(0,-1)),fn=t=>q4.test(t),J4=()=>!0,X4=t=>G4.test(t)&&!K4.test(t),wb=()=>!1,Q4=t=>Z4.test(t),eI=t=>Y4.test(t),tI=t=>!ne(t)&&!ie(t),nI=t=>kr(t,Pb,wb),ne=t=>kb.test(t),li=t=>kr(t,Rb,X4),Sc=t=>kr(t,aI,de),Bp=t=>kr(t,xb,wb),iI=t=>kr(t,Eb,eI),Ws=t=>kr(t,Ab,Q4),ie=t=>Cb.test(t),Ur=t=>Cr(t,Rb),rI=t=>Cr(t,cI),$p=t=>Cr(t,xb),sI=t=>Cr(t,Pb),oI=t=>Cr(t,Eb),qs=t=>Cr(t,Ab,!0),kr=(t,e,n)=>{const i=kb.exec(t);return i?i[1]?e(i[1]):n(i[2]):!1},Cr=(t,e,n=!1)=>{const i=Cb.exec(t);return i?i[1]?e(i[1]):n:!1},xb=t=>t==="position"||t==="percentage",Eb=t=>t==="image"||t==="url",Pb=t=>t==="length"||t==="size"||t==="bg-size",Rb=t=>t==="length",aI=t=>t==="number",cI=t=>t==="family-name",Ab=t=>t==="shadow",lI=()=>{const t=Ye("color"),e=Ye("font"),n=Ye("text"),i=Ye("font-weight"),r=Ye("tracking"),s=Ye("leading"),o=Ye("breakpoint"),a=Ye("container"),c=Ye("spacing"),l=Ye("radius"),u=Ye("shadow"),d=Ye("inset-shadow"),h=Ye("text-shadow"),p=Ye("drop-shadow"),g=Ye("blur"),f=Ye("perspective"),y=Ye("aspect"),v=Ye("ease"),C=Ye("animate"),T=()=>["auto","avoid","all","avoid-page","page","left","right","column"],k=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],b=()=>[...k(),ie,ne],w=()=>["auto","hidden","clip","visible","scroll"],x=()=>["auto","contain","none"],R=()=>[ie,ne,c],_=()=>[Oi,"full","auto",...R()],S=()=>[Ln,"none","subgrid",ie,ne],I=()=>["auto",{span:["full",Ln,ie,ne]},Ln,ie,ne],N=()=>[Ln,"auto",ie,ne],z=()=>["auto","min","max","fr",ie,ne],K=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],se=()=>["start","end","center","stretch","center-safe","end-safe"],Q=()=>["auto",...R()],Y=()=>[Oi,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...R()],F=()=>[t,ie,ne],ce=()=>[...k(),$p,Bp,{position:[ie,ne]}],A=()=>["no-repeat",{repeat:["","x","y","space","round"]}],j=()=>["auto","cover","contain",sI,nI,{size:[ie,ne]}],W=()=>[bc,Ur,li],Z=()=>["","none","full",l,ie,ne],J=()=>["",de,Ur,li],re=()=>["solid","dashed","dotted","double"],oe=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],V=()=>[de,bc,$p,Bp],q=()=>["","none",g,ie,ne],te=()=>["none",de,ie,ne],ee=()=>["none",de,ie,ne],ae=()=>[de,ie,ne],H=()=>[Oi,"full",...R()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[fn],breakpoint:[fn],color:[J4],container:[fn],"drop-shadow":[fn],ease:["in","out","in-out"],font:[tI],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[fn],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[fn],shadow:[fn],spacing:["px",de],text:[fn],"text-shadow":[fn],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Oi,ne,ie,y]}],container:["container"],columns:[{columns:[de,ne,ie,a]}],"break-after":[{"break-after":T()}],"break-before":[{"break-before":T()}],"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:b()}],overflow:[{overflow:w()}],"overflow-x":[{"overflow-x":w()}],"overflow-y":[{"overflow-y":w()}],overscroll:[{overscroll:x()}],"overscroll-x":[{"overscroll-x":x()}],"overscroll-y":[{"overscroll-y":x()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:_()}],"inset-x":[{"inset-x":_()}],"inset-y":[{"inset-y":_()}],start:[{start:_()}],end:[{end:_()}],top:[{top:_()}],right:[{right:_()}],bottom:[{bottom:_()}],left:[{left:_()}],visibility:["visible","invisible","collapse"],z:[{z:[Ln,"auto",ie,ne]}],basis:[{basis:[Oi,"full","auto",a,...R()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[de,Oi,"auto","initial","none",ne]}],grow:[{grow:["",de,ie,ne]}],shrink:[{shrink:["",de,ie,ne]}],order:[{order:[Ln,"first","last","none",ie,ne]}],"grid-cols":[{"grid-cols":S()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":N()}],"col-end":[{"col-end":N()}],"grid-rows":[{"grid-rows":S()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":N()}],"row-end":[{"row-end":N()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":z()}],"auto-rows":[{"auto-rows":z()}],gap:[{gap:R()}],"gap-x":[{"gap-x":R()}],"gap-y":[{"gap-y":R()}],"justify-content":[{justify:[...K(),"normal"]}],"justify-items":[{"justify-items":[...se(),"normal"]}],"justify-self":[{"justify-self":["auto",...se()]}],"align-content":[{content:["normal",...K()]}],"align-items":[{items:[...se(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...se(),{baseline:["","last"]}]}],"place-content":[{"place-content":K()}],"place-items":[{"place-items":[...se(),"baseline"]}],"place-self":[{"place-self":["auto",...se()]}],p:[{p:R()}],px:[{px:R()}],py:[{py:R()}],ps:[{ps:R()}],pe:[{pe:R()}],pt:[{pt:R()}],pr:[{pr:R()}],pb:[{pb:R()}],pl:[{pl:R()}],m:[{m:Q()}],mx:[{mx:Q()}],my:[{my:Q()}],ms:[{ms:Q()}],me:[{me:Q()}],mt:[{mt:Q()}],mr:[{mr:Q()}],mb:[{mb:Q()}],ml:[{ml:Q()}],"space-x":[{"space-x":R()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":R()}],"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:[o]},...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,Ur,li]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[i,ie,Sc]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",bc,ne]}],"font-family":[{font:[rI,ne,e]}],"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,ie,ne]}],"line-clamp":[{"line-clamp":[de,"none",ie,Sc]}],leading:[{leading:[s,...R()]}],"list-image":[{"list-image":["none",ie,ne]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",ie,ne]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:F()}],"text-color":[{text:F()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...re(),"wavy"]}],"text-decoration-thickness":[{decoration:[de,"from-font","auto",ie,li]}],"text-decoration-color":[{decoration:F()}],"underline-offset":[{"underline-offset":[de,"auto",ie,ne]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:R()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ie,ne]}],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",ie,ne]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ce()}],"bg-repeat":[{bg:A()}],"bg-size":[{bg:j()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ln,ie,ne],radial:["",ie,ne],conic:[Ln,ie,ne]},oI,iI]}],"bg-color":[{bg:F()}],"gradient-from-pos":[{from:W()}],"gradient-via-pos":[{via:W()}],"gradient-to-pos":[{to:W()}],"gradient-from":[{from:F()}],"gradient-via":[{via:F()}],"gradient-to":[{to:F()}],rounded:[{rounded:Z()}],"rounded-s":[{"rounded-s":Z()}],"rounded-e":[{"rounded-e":Z()}],"rounded-t":[{"rounded-t":Z()}],"rounded-r":[{"rounded-r":Z()}],"rounded-b":[{"rounded-b":Z()}],"rounded-l":[{"rounded-l":Z()}],"rounded-ss":[{"rounded-ss":Z()}],"rounded-se":[{"rounded-se":Z()}],"rounded-ee":[{"rounded-ee":Z()}],"rounded-es":[{"rounded-es":Z()}],"rounded-tl":[{"rounded-tl":Z()}],"rounded-tr":[{"rounded-tr":Z()}],"rounded-br":[{"rounded-br":Z()}],"rounded-bl":[{"rounded-bl":Z()}],"border-w":[{border:J()}],"border-w-x":[{"border-x":J()}],"border-w-y":[{"border-y":J()}],"border-w-s":[{"border-s":J()}],"border-w-e":[{"border-e":J()}],"border-w-t":[{"border-t":J()}],"border-w-r":[{"border-r":J()}],"border-w-b":[{"border-b":J()}],"border-w-l":[{"border-l":J()}],"divide-x":[{"divide-x":J()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":J()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...re(),"hidden","none"]}],"divide-style":[{divide:[...re(),"hidden","none"]}],"border-color":[{border:F()}],"border-color-x":[{"border-x":F()}],"border-color-y":[{"border-y":F()}],"border-color-s":[{"border-s":F()}],"border-color-e":[{"border-e":F()}],"border-color-t":[{"border-t":F()}],"border-color-r":[{"border-r":F()}],"border-color-b":[{"border-b":F()}],"border-color-l":[{"border-l":F()}],"divide-color":[{divide:F()}],"outline-style":[{outline:[...re(),"none","hidden"]}],"outline-offset":[{"outline-offset":[de,ie,ne]}],"outline-w":[{outline:["",de,Ur,li]}],"outline-color":[{outline:F()}],shadow:[{shadow:["","none",u,qs,Ws]}],"shadow-color":[{shadow:F()}],"inset-shadow":[{"inset-shadow":["none",d,qs,Ws]}],"inset-shadow-color":[{"inset-shadow":F()}],"ring-w":[{ring:J()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:F()}],"ring-offset-w":[{"ring-offset":[de,li]}],"ring-offset-color":[{"ring-offset":F()}],"inset-ring-w":[{"inset-ring":J()}],"inset-ring-color":[{"inset-ring":F()}],"text-shadow":[{"text-shadow":["none",h,qs,Ws]}],"text-shadow-color":[{"text-shadow":F()}],opacity:[{opacity:[de,ie,ne]}],"mix-blend":[{"mix-blend":[...oe(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":oe()}],"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":[de]}],"mask-image-linear-from-pos":[{"mask-linear-from":V()}],"mask-image-linear-to-pos":[{"mask-linear-to":V()}],"mask-image-linear-from-color":[{"mask-linear-from":F()}],"mask-image-linear-to-color":[{"mask-linear-to":F()}],"mask-image-t-from-pos":[{"mask-t-from":V()}],"mask-image-t-to-pos":[{"mask-t-to":V()}],"mask-image-t-from-color":[{"mask-t-from":F()}],"mask-image-t-to-color":[{"mask-t-to":F()}],"mask-image-r-from-pos":[{"mask-r-from":V()}],"mask-image-r-to-pos":[{"mask-r-to":V()}],"mask-image-r-from-color":[{"mask-r-from":F()}],"mask-image-r-to-color":[{"mask-r-to":F()}],"mask-image-b-from-pos":[{"mask-b-from":V()}],"mask-image-b-to-pos":[{"mask-b-to":V()}],"mask-image-b-from-color":[{"mask-b-from":F()}],"mask-image-b-to-color":[{"mask-b-to":F()}],"mask-image-l-from-pos":[{"mask-l-from":V()}],"mask-image-l-to-pos":[{"mask-l-to":V()}],"mask-image-l-from-color":[{"mask-l-from":F()}],"mask-image-l-to-color":[{"mask-l-to":F()}],"mask-image-x-from-pos":[{"mask-x-from":V()}],"mask-image-x-to-pos":[{"mask-x-to":V()}],"mask-image-x-from-color":[{"mask-x-from":F()}],"mask-image-x-to-color":[{"mask-x-to":F()}],"mask-image-y-from-pos":[{"mask-y-from":V()}],"mask-image-y-to-pos":[{"mask-y-to":V()}],"mask-image-y-from-color":[{"mask-y-from":F()}],"mask-image-y-to-color":[{"mask-y-to":F()}],"mask-image-radial":[{"mask-radial":[ie,ne]}],"mask-image-radial-from-pos":[{"mask-radial-from":V()}],"mask-image-radial-to-pos":[{"mask-radial-to":V()}],"mask-image-radial-from-color":[{"mask-radial-from":F()}],"mask-image-radial-to-color":[{"mask-radial-to":F()}],"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":k()}],"mask-image-conic-pos":[{"mask-conic":[de]}],"mask-image-conic-from-pos":[{"mask-conic-from":V()}],"mask-image-conic-to-pos":[{"mask-conic-to":V()}],"mask-image-conic-from-color":[{"mask-conic-from":F()}],"mask-image-conic-to-color":[{"mask-conic-to":F()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ce()}],"mask-repeat":[{mask:A()}],"mask-size":[{mask:j()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ie,ne]}],filter:[{filter:["","none",ie,ne]}],blur:[{blur:q()}],brightness:[{brightness:[de,ie,ne]}],contrast:[{contrast:[de,ie,ne]}],"drop-shadow":[{"drop-shadow":["","none",p,qs,Ws]}],"drop-shadow-color":[{"drop-shadow":F()}],grayscale:[{grayscale:["",de,ie,ne]}],"hue-rotate":[{"hue-rotate":[de,ie,ne]}],invert:[{invert:["",de,ie,ne]}],saturate:[{saturate:[de,ie,ne]}],sepia:[{sepia:["",de,ie,ne]}],"backdrop-filter":[{"backdrop-filter":["","none",ie,ne]}],"backdrop-blur":[{"backdrop-blur":q()}],"backdrop-brightness":[{"backdrop-brightness":[de,ie,ne]}],"backdrop-contrast":[{"backdrop-contrast":[de,ie,ne]}],"backdrop-grayscale":[{"backdrop-grayscale":["",de,ie,ne]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[de,ie,ne]}],"backdrop-invert":[{"backdrop-invert":["",de,ie,ne]}],"backdrop-opacity":[{"backdrop-opacity":[de,ie,ne]}],"backdrop-saturate":[{"backdrop-saturate":[de,ie,ne]}],"backdrop-sepia":[{"backdrop-sepia":["",de,ie,ne]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":R()}],"border-spacing-x":[{"border-spacing-x":R()}],"border-spacing-y":[{"border-spacing-y":R()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",ie,ne]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[de,"initial",ie,ne]}],ease:[{ease:["linear","initial",v,ie,ne]}],delay:[{delay:[de,ie,ne]}],animate:[{animate:["none",C,ie,ne]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[f,ie,ne]}],"perspective-origin":[{"perspective-origin":b()}],rotate:[{rotate:te()}],"rotate-x":[{"rotate-x":te()}],"rotate-y":[{"rotate-y":te()}],"rotate-z":[{"rotate-z":te()}],scale:[{scale:ee()}],"scale-x":[{"scale-x":ee()}],"scale-y":[{"scale-y":ee()}],"scale-z":[{"scale-z":ee()}],"scale-3d":["scale-3d"],skew:[{skew:ae()}],"skew-x":[{"skew-x":ae()}],"skew-y":[{"skew-y":ae()}],transform:[{transform:[ie,ne,"","none","gpu","cpu"]}],"transform-origin":[{origin:b()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:H()}],"translate-x":[{"translate-x":H()}],"translate-y":[{"translate-y":H()}],"translate-z":[{"translate-z":H()}],"translate-none":["translate-none"],accent:[{accent:F()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:F()}],"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",ie,ne]}],"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":R()}],"scroll-mx":[{"scroll-mx":R()}],"scroll-my":[{"scroll-my":R()}],"scroll-ms":[{"scroll-ms":R()}],"scroll-me":[{"scroll-me":R()}],"scroll-mt":[{"scroll-mt":R()}],"scroll-mr":[{"scroll-mr":R()}],"scroll-mb":[{"scroll-mb":R()}],"scroll-ml":[{"scroll-ml":R()}],"scroll-p":[{"scroll-p":R()}],"scroll-px":[{"scroll-px":R()}],"scroll-py":[{"scroll-py":R()}],"scroll-ps":[{"scroll-ps":R()}],"scroll-pe":[{"scroll-pe":R()}],"scroll-pt":[{"scroll-pt":R()}],"scroll-pr":[{"scroll-pr":R()}],"scroll-pb":[{"scroll-pb":R()}],"scroll-pl":[{"scroll-pl":R()}],"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",ie,ne]}],fill:[{fill:["none",...F()]}],"stroke-w":[{stroke:[de,Ur,li,Sc]}],stroke:[{stroke:["none",...F()]}],"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"]}},uI=z4(lI);function ue(...t){return uI(Jm.clsx(t))}function dI(t,e){return{id:t.streamInfo.id,timestamp:t.streamInfo.timestamp,message:t.text,from:t.participantInfo.identity===e.localParticipant.identity?e.localParticipant:Array.from(e.remoteParticipants.values()).find(n=>n.identity===t.participantInfo.identity)}}const fI=ta.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 hI({className:t,variant:e,...n}){return E.jsx("div",{"data-slot":"alert",role:"alert",className:ue(fI({variant:e}),t),...n})}function pI({className:t,...e}){return E.jsx("div",{"data-slot":"alert-title",className:ue("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",t),...e})}function mI({className:t,...e}){return E.jsx("div",{"data-slot":"alert-description",className:ue("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",t),...e})}function Jl(t){return cb.custom(e=>E.jsx(gI,{id:e,title:t.title,description:t.description}),{duration:1e4})}function gI(t){const{title:e,id:n,description:i}=t;return E.jsxs(hI,{onClick:()=>cb.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:[E.jsx(bb,{weight:"bold",className:"text-yellow-400 mt-1 flex-shrink-0",size:24}),E.jsxs("div",{className:"flex flex-col",children:[E.jsx(pI,{className:"text-base font-semibold text-white mb-1",children:e}),E.jsx(mI,{className:"text-sm text-gray-300 leading-snug",children:i})]})]})}function Hp(t,e){if(typeof t=="function")return t(e);t!=null&&(t.current=e)}function Ib(...t){return e=>{let n=!1;const i=t.map(r=>{const s=Hp(r,e);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let r=0;r<i.length;r++){const s=i[r];typeof s=="function"?s():Hp(t[r],null)}}}}function st(...t){return m.useCallback(Ib(...t),t)}function gs(t){const e=yI(t),n=m.forwardRef((i,r)=>{const{children:s,...o}=i,a=m.Children.toArray(s),c=a.find(SI);if(c){const l=c.props.children,u=a.map(d=>d===c?m.Children.count(l)>1?m.Children.only(null):m.isValidElement(l)?l.props.children:null:d);return E.jsx(e,{...o,ref:r,children:m.isValidElement(l)?m.cloneElement(l,void 0,u):null})}return E.jsx(e,{...o,ref:r,children:s})});return n.displayName=`${t}.Slot`,n}var vI=gs("Slot");function yI(t){const e=m.forwardRef((n,i)=>{const{children:r,...s}=n;if(m.isValidElement(r)){const o=kI(r),a=TI(s,r.props);return r.type!==m.Fragment&&(a.ref=i?Ib(i,o):o),m.cloneElement(r,a)}return m.Children.count(r)>1?m.Children.only(null):null});return e.displayName=`${t}.SlotClone`,e}var bI=Symbol("radix.slottable");function SI(t){return m.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===bI}function TI(t,e){const n={...e};for(const i in e){const r=t[i],s=e[i];/^on[A-Z]/.test(i)?r&&s?n[i]=(...a)=>{const c=s(...a);return r(...a),c}:r&&(n[i]=r):i==="style"?n[i]={...r,...s}:i==="className"&&(n[i]=[r,s].filter(Boolean).join(" "))}return{...t,...n}}function kI(t){var i,r;let e=(i=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:i.get,n=e&&"isReactWarning"in e&&e.isReactWarning;return n?t.ref:(e=(r=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:r.get,n=e&&"isReactWarning"in e&&e.isReactWarning,n?t.props.ref:t.props.ref||t.ref)}const CI=ta.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 _b({className:t,variant:e,size:n,asChild:i=!1,...r}){const s=i?vI:"button";return E.jsx(s,{"data-slot":"button",className:ue(CI({variant:e,size:n,className:t})),...r})}function wI({onSend:t,className:e,disabled:n,...i}){const r=B.useRef(null),[s,o]=B.useState(""),a=l=>{var u,d;l.preventDefault(),(u=i.onSubmit)==null||u.call(i,l),t==null||t(s),o(""),(d=r.current)==null||d.focus({preventScroll:!0})},c=n||s.trim().length===0;return E.jsxs("form",{...i,onSubmit:a,className:ue("flex items-center rounded-md pl-1 text-sm",e),children:[E.jsx("input",{ref:r,type:"text",className:"flex-1 focus:outline-none",placeholder:"Type something...",value:s,onChange:l=>o(l.target.value),disabled:n}),E.jsx(_b,{size:"sm",type:"submit",variant:c?"secondary":"primary",disabled:c,className:"font-mono",children:"SEND"})]})}function $e(t,e,{checkForDefaultPrevented:n=!0}={}){return function(r){if(t==null||t(r),n===!1||!r.defaultPrevented)return e==null?void 0:e(r)}}var gt=globalThis!=null&&globalThis.document?m.useLayoutEffect:()=>{},xI=m[" useInsertionEffect ".trim().toString()]||gt;function Xl({prop:t,defaultProp:e,onChange:n=()=>{},caller:i}){const[r,s,o]=EI({defaultProp:e,onChange:n}),a=t!==void 0,c=a?t:r;{const u=m.useRef(t!==void 0);m.useEffect(()=>{const d=u.current;d!==a&&console.warn(`${i} is changing from ${d?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=a},[a,i])}const l=m.useCallback(u=>{var d;if(a){const h=PI(u)?u(t):u;h!==t&&((d=o.current)==null||d.call(o,h))}else s(u)},[a,t,s,o]);return[c,l]}function EI({defaultProp:t,onChange:e}){const[n,i]=m.useState(t),r=m.useRef(n),s=m.useRef(e);return xI(()=>{s.current=e},[e]),m.useEffect(()=>{var o;r.current!==n&&((o=s.current)==null||o.call(s,n),r.current=n)},[n,r]),[n,i,s]}function PI(t){return typeof t=="function"}var RI=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Ue=RI.reduce((t,e)=>{const n=gs(`Primitive.${e}`),i=m.forwardRef((r,s)=>{const{asChild:o,...a}=r,c=o?n:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),E.jsx(c,{...a,ref:s})});return i.displayName=`Primitive.${e}`,{...t,[e]:i}},{});function AI(t,e){t&&na.flushSync(()=>t.dispatchEvent(e))}var Mb="Toggle",Ob=m.forwardRef((t,e)=>{const{pressed:n,defaultPressed:i,onPressedChange:r,...s}=t,[o,a]=Xl({prop:n,onChange:r,defaultProp:i??!1,caller:Mb});return E.jsx(Ue.button,{type:"button","aria-pressed":o,"data-state":o?"on":"off","data-disabled":t.disabled?"":void 0,...s,ref:e,onClick:$e(t.onClick,()=>{t.disabled||a(!o)})})});Ob.displayName=Mb;var II=Ob;const _I=ta.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 Db({className:t,variant:e,size:n,...i}){return E.jsx(II,{"data-slot":"toggle",className:ue(_I({variant:e,size:n,className:t})),...i})}function zp(t,[e,n]){return Math.min(n,Math.max(e,t))}function Md(t,e=[]){let n=[];function i(s,o){const a=m.createContext(o),c=n.length;n=[...n,o];const l=d=>{var v;const{scope:h,children:p,...g}=d,f=((v=h==null?void 0:h[t])==null?void 0:v[c])||a,y=m.useMemo(()=>g,Object.values(g));return E.jsx(f.Provider,{value:y,children:p})};l.displayName=s+"Provider";function u(d,h){var f;const p=((f=h==null?void 0:h[t])==null?void 0:f[c])||a,g=m.useContext(p);if(g)return g;if(o!==void 0)return o;throw new Error(`\`${d}\` must be used within \`${s}\``)}return[l,u]}const r=()=>{const s=n.map(o=>m.createContext(o));return function(a){const c=(a==null?void 0:a[t])||s;return m.useMemo(()=>({[`__scope${t}`]:{...a,[t]:c}}),[a,c])}};return r.scopeName=t,[i,MI(r,...e)]}function MI(...t){const e=t[0];if(t.length===1)return e;const n=()=>{const i=t.map(r=>({useScope:r(),scopeName:r.scopeName}));return function(s){const o=i.reduce((a,{useScope:c,scopeName:l})=>{const d=c(s)[`__scope${l}`];return{...a,...d}},{});return m.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return n.scopeName=e.scopeName,n}function OI(t){const e=t+"CollectionProvider",[n,i]=Md(e),[r,s]=n(e,{collectionRef:{current:null},itemMap:new Map}),o=f=>{const{scope:y,children:v}=f,C=B.useRef(null),T=B.useRef(new Map).current;return E.jsx(r,{scope:y,itemMap:T,collectionRef:C,children:v})};o.displayName=e;const a=t+"CollectionSlot",c=gs(a),l=B.forwardRef((f,y)=>{const{scope:v,children:C}=f,T=s(a,v),k=st(y,T.collectionRef);return E.jsx(c,{ref:k,children:C})});l.displayName=a;const u=t+"CollectionItemSlot",d="data-radix-collection-item",h=gs(u),p=B.forwardRef((f,y)=>{const{scope:v,children:C,...T}=f,k=B.useRef(null),b=st(y,k),w=s(u,v);return B.useEffect(()=>(w.itemMap.set(k,{ref:k,...T}),()=>void w.itemMap.delete(k))),E.jsx(h,{[d]:"",ref:b,children:C})});p.displayName=u;function g(f){const y=s(t+"CollectionConsumer",f);return B.useCallback(()=>{const C=y.collectionRef.current;if(!C)return[];const T=Array.from(C.querySelectorAll(`[${d}]`));return Array.from(y.itemMap.values()).sort((w,x)=>T.indexOf(w.ref.current)-T.indexOf(x.ref.current))},[y.collectionRef,y.itemMap])}return[{Provider:o,Slot:l,ItemSlot:p},g,i]}var DI=m.createContext(void 0);function NI(t){const e=m.useContext(DI);return t||e||"ltr"}function Ci(t){const e=m.useRef(t);return m.useEffect(()=>{e.current=t}),m.useMemo(()=>(...n)=>{var i;return(i=e.current)==null?void 0:i.call(e,...n)},[])}function LI(t,e=globalThis==null?void 0:globalThis.document){const n=Ci(t);m.useEffect(()=>{const i=r=>{r.key==="Escape"&&n(r)};return e.addEventListener("keydown",i,{capture:!0}),()=>e.removeEventListener("keydown",i,{capture:!0})},[n,e])}var VI="DismissableLayer",Ql="dismissableLayer.update",FI="dismissableLayer.pointerDownOutside",jI="dismissableLayer.focusOutside",Wp,Nb=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Lb=m.forwardRef((t,e)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:i,onPointerDownOutside:r,onFocusOutside:s,onInteractOutside:o,onDismiss:a,...c}=t,l=m.useContext(Nb),[u,d]=m.useState(null),h=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,p]=m.useState({}),g=st(e,x=>d(x)),f=Array.from(l.layers),[y]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),v=f.indexOf(y),C=u?f.indexOf(u):-1,T=l.layersWithOutsidePointerEventsDisabled.size>0,k=C>=v,b=$I(x=>{const R=x.target,_=[...l.branches].some(S=>S.contains(R));!k||_||(r==null||r(x),o==null||o(x),x.defaultPrevented||a==null||a())},h),w=HI(x=>{const R=x.target;[...l.branches].some(S=>S.contains(R))||(s==null||s(x),o==null||o(x),x.defaultPrevented||a==null||a())},h);return LI(x=>{C===l.layers.size-1&&(i==null||i(x),!x.defaultPrevented&&a&&(x.preventDefault(),a()))},h),m.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(Wp=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),qp(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(h.body.style.pointerEvents=Wp)}},[u,h,n,l]),m.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),qp())},[u,l]),m.useEffect(()=>{const x=()=>p({});return document.addEventListener(Ql,x),()=>document.removeEventListener(Ql,x)},[]),E.jsx(Ue.div,{...c,ref:g,style:{pointerEvents:T?k?"auto":"none":void 0,...t.style},onFocusCapture:$e(t.onFocusCapture,w.onFocusCapture),onBlurCapture:$e(t.onBlurCapture,w.onBlurCapture),onPointerDownCapture:$e(t.onPointerDownCapture,b.onPointerDownCapture)})});Lb.displayName=VI;var UI="DismissableLayerBranch",BI=m.forwardRef((t,e)=>{const n=m.useContext(Nb),i=m.useRef(null),r=st(e,i);return m.useEffect(()=>{const s=i.current;if(s)return n.branches.add(s),()=>{n.branches.delete(s)}},[n.branches]),E.jsx(Ue.div,{...t,ref:r})});BI.displayName=UI;function $I(t,e=globalThis==null?void 0:globalThis.document){const n=Ci(t),i=m.useRef(!1),r=m.useRef(()=>{});return m.useEffect(()=>{const s=a=>{if(a.target&&!i.current){let c=function(){Vb(FI,n,l,{discrete:!0})};const l={originalEvent:a};a.pointerType==="touch"?(e.removeEventListener("click",r.current),r.current=c,e.addEventListener("click",r.current,{once:!0})):c()}else e.removeEventListener("click",r.current);i.current=!1},o=window.setTimeout(()=>{e.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(o),e.removeEventListener("pointerdown",s),e.removeEventListener("click",r.current)}},[e,n]),{onPointerDownCapture:()=>i.current=!0}}function HI(t,e=globalThis==null?void 0:globalThis.document){const n=Ci(t),i=m.useRef(!1);return m.useEffect(()=>{const r=s=>{s.target&&!i.current&&Vb(jI,n,{originalEvent:s},{discrete:!1})};return e.addEventListener("focusin",r),()=>e.removeEventListener("focusin",r)},[e,n]),{onFocusCapture:()=>i.current=!0,onBlurCapture:()=>i.current=!1}}function qp(){const t=new CustomEvent(Ql);document.dispatchEvent(t)}function Vb(t,e,n,{discrete:i}){const r=n.originalEvent.target,s=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:n});e&&r.addEventListener(t,e,{once:!0}),i?AI(r,s):r.dispatchEvent(s)}var Tc=0;function zI(){m.useEffect(()=>{const t=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",t[0]??Gp()),document.body.insertAdjacentElement("beforeend",t[1]??Gp()),Tc++,()=>{Tc===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e=>e.remove()),Tc--}},[])}function Gp(){const t=document.createElement("span");return t.setAttribute("data-radix-focus-guard",""),t.tabIndex=0,t.style.outline="none",t.style.opacity="0",t.style.position="fixed",t.style.pointerEvents="none",t}var kc="focusScope.autoFocusOnMount",Cc="focusScope.autoFocusOnUnmount",Kp={bubbles:!1,cancelable:!0},WI="FocusScope",Fb=m.forwardRef((t,e)=>{const{loop:n=!1,trapped:i=!1,onMountAutoFocus:r,onUnmountAutoFocus:s,...o}=t,[a,c]=m.useState(null),l=Ci(r),u=Ci(s),d=m.useRef(null),h=st(e,f=>c(f)),p=m.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;m.useEffect(()=>{if(i){let f=function(T){if(p.paused||!a)return;const k=T.target;a.contains(k)?d.current=k:jn(d.current,{select:!0})},y=function(T){if(p.paused||!a)return;const k=T.relatedTarget;k!==null&&(a.contains(k)||jn(d.current,{select:!0}))},v=function(T){if(document.activeElement===document.body)for(const b of T)b.removedNodes.length>0&&jn(a)};document.addEventListener("focusin",f),document.addEventListener("focusout",y);const C=new MutationObserver(v);return a&&C.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",f),document.removeEventListener("focusout",y),C.disconnect()}}},[i,a,p.paused]),m.useEffect(()=>{if(a){Yp.add(p);const f=document.activeElement;if(!a.contains(f)){const v=new CustomEvent(kc,Kp);a.addEventListener(kc,l),a.dispatchEvent(v),v.defaultPrevented||(qI(JI(jb(a)),{select:!0}),document.activeElement===f&&jn(a))}return()=>{a.removeEventListener(kc,l),setTimeout(()=>{const v=new CustomEvent(Cc,Kp);a.addEventListener(Cc,u),a.dispatchEvent(v),v.defaultPrevented||jn(f??document.body,{select:!0}),a.removeEventListener(Cc,u),Yp.remove(p)},0)}}},[a,l,u,p]);const g=m.useCallback(f=>{if(!n&&!i||p.paused)return;const y=f.key==="Tab"&&!f.altKey&&!f.ctrlKey&&!f.metaKey,v=document.activeElement;if(y&&v){const C=f.currentTarget,[T,k]=GI(C);T&&k?!f.shiftKey&&v===k?(f.preventDefault(),n&&jn(T,{select:!0})):f.shiftKey&&v===T&&(f.preventDefault(),n&&jn(k,{select:!0})):v===C&&f.preventDefault()}},[n,i,p.paused]);return E.jsx(Ue.div,{tabIndex:-1,...o,ref:h,onKeyDown:g})});Fb.displayName=WI;function qI(t,{select:e=!1}={}){const n=document.activeElement;for(const i of t)if(jn(i,{select:e}),document.activeElement!==n)return}function GI(t){const e=jb(t),n=Zp(e,t),i=Zp(e.reverse(),t);return[n,i]}function jb(t){const e=[],n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const r=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||r?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)e.push(n.currentNode);return e}function Zp(t,e){for(const n of t)if(!KI(n,{upTo:e}))return n}function KI(t,{upTo:e}){if(getComputedStyle(t).visibility==="hidden")return!0;for(;t;){if(e!==void 0&&t===e)return!1;if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}function ZI(t){return t instanceof HTMLInputElement&&"select"in t}function jn(t,{select:e=!1}={}){if(t&&t.focus){const n=document.activeElement;t.focus({preventScroll:!0}),t!==n&&ZI(t)&&e&&t.select()}}var Yp=YI();function YI(){let t=[];return{add(e){const n=t[0];e!==n&&(n==null||n.pause()),t=Jp(t,e),t.unshift(e)},remove(e){var n;t=Jp(t,e),(n=t[0])==null||n.resume()}}}function Jp(t,e){const n=[...t],i=n.indexOf(e);return i!==-1&&n.splice(i,1),n}function JI(t){return t.filter(e=>e.tagName!=="A")}var XI=m[" useId ".trim().toString()]||(()=>{}),QI=0;function Od(t){const[e,n]=m.useState(XI());return gt(()=>{n(i=>i??String(QI++))},[t]),t||(e?`radix-${e}`:"")}const e8=["top","right","bottom","left"],Yn=Math.min,bt=Math.max,qo=Math.round,Gs=Math.floor,rn=t=>({x:t,y:t}),t8={left:"right",right:"left",bottom:"top",top:"bottom"},n8={start:"end",end:"start"};function eu(t,e,n){return bt(t,Yn(e,n))}function An(t,e){return typeof t=="function"?t(e):t}function In(t){return t.split("-")[0]}function wr(t){return t.split("-")[1]}function Dd(t){return t==="x"?"y":"x"}function Nd(t){return t==="y"?"height":"width"}function Qt(t){return["top","bottom"].includes(In(t))?"y":"x"}function Ld(t){return Dd(Qt(t))}function i8(t,e,n){n===void 0&&(n=!1);const i=wr(t),r=Ld(t),s=Nd(r);let o=r==="x"?i===(n?"end":"start")?"right":"left":i==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=Go(o)),[o,Go(o)]}function r8(t){const e=Go(t);return[tu(t),e,tu(e)]}function tu(t){return t.replace(/start|end/g,e=>n8[e])}function s8(t,e,n){const i=["left","right"],r=["right","left"],s=["top","bottom"],o=["bottom","top"];switch(t){case"top":case"bottom":return n?e?r:i:e?i:r;case"left":case"right":return e?s:o;default:return[]}}function o8(t,e,n,i){const r=wr(t);let s=s8(In(t),n==="start",i);return r&&(s=s.map(o=>o+"-"+r),e&&(s=s.concat(s.map(tu)))),s}function Go(t){return t.replace(/left|right|bottom|top/g,e=>t8[e])}function a8(t){return{top:0,right:0,bottom:0,left:0,...t}}function Ub(t){return typeof t!="number"?a8(t):{top:t,right:t,bottom:t,left:t}}function Ko(t){const{x:e,y:n,width:i,height:r}=t;return{width:i,height:r,top:n,left:e,right:e+i,bottom:n+r,x:e,y:n}}function Xp(t,e,n){let{reference:i,floating:r}=t;const s=Qt(e),o=Ld(e),a=Nd(o),c=In(e),l=s==="y",u=i.x+i.width/2-r.width/2,d=i.y+i.height/2-r.height/2,h=i[a]/2-r[a]/2;let p;switch(c){case"top":p={x:u,y:i.y-r.height};break;case"bottom":p={x:u,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:d};break;case"left":p={x:i.x-r.width,y:d};break;default:p={x:i.x,y:i.y}}switch(wr(e)){case"start":p[o]-=h*(n&&l?-1:1);break;case"end":p[o]+=h*(n&&l?-1:1);break}return p}const c8=async(t,e,n)=>{const{placement:i="bottom",strategy:r="absolute",middleware:s=[],platform:o}=n,a=s.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(e));let l=await o.getElementRects({reference:t,floating:e,strategy:r}),{x:u,y:d}=Xp(l,i,c),h=i,p={},g=0;for(let f=0;f<a.length;f++){const{name:y,fn:v}=a[f],{x:C,y:T,data:k,reset:b}=await v({x:u,y:d,initialPlacement:i,placement:h,strategy:r,middlewareData:p,rects:l,platform:o,elements:{reference:t,floating:e}});u=C??u,d=T??d,p={...p,[y]:{...p[y],...k}},b&&g<=50&&(g++,typeof b=="object"&&(b.placement&&(h=b.placement),b.rects&&(l=b.rects===!0?await o.getElementRects({reference:t,floating:e,strategy:r}):b.rects),{x:u,y:d}=Xp(l,h,c)),f=-1)}return{x:u,y:d,placement:h,strategy:r,middlewareData:p}};async function vs(t,e){var n;e===void 0&&(e={});const{x:i,y:r,platform:s,rects:o,elements:a,strategy:c}=t,{boundary:l="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:h=!1,padding:p=0}=An(e,t),g=Ub(p),y=a[h?d==="floating"?"reference":"floating":d],v=Ko(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(y)))==null||n?y:y.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:l,rootBoundary:u,strategy:c})),C=d==="floating"?{x:i,y:r,width:o.floating.width,height:o.floating.height}:o.reference,T=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),k=await(s.isElement==null?void 0:s.isElement(T))?await(s.getScale==null?void 0:s.getScale(T))||{x:1,y:1}:{x:1,y:1},b=Ko(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:C,offsetParent:T,strategy:c}):C);return{top:(v.top-b.top+g.top)/k.y,bottom:(b.bottom-v.bottom+g.bottom)/k.y,left:(v.left-b.left+g.left)/k.x,right:(b.right-v.right+g.right)/k.x}}const l8=t=>({name:"arrow",options:t,async fn(e){const{x:n,y:i,placement:r,rects:s,platform:o,elements:a,middlewareData:c}=e,{element:l,padding:u=0}=An(t,e)||{};if(l==null)return{};const d=Ub(u),h={x:n,y:i},p=Ld(r),g=Nd(p),f=await o.getDimensions(l),y=p==="y",v=y?"top":"left",C=y?"bottom":"right",T=y?"clientHeight":"clientWidth",k=s.reference[g]+s.reference[p]-h[p]-s.floating[g],b=h[p]-s.reference[p],w=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l));let x=w?w[T]:0;(!x||!await(o.isElement==null?void 0:o.isElement(w)))&&(x=a.floating[T]||s.floating[g]);const R=k/2-b/2,_=x/2-f[g]/2-1,S=Yn(d[v],_),I=Yn(d[C],_),N=S,z=x-f[g]-I,K=x/2-f[g]/2+R,se=eu(N,K,z),Q=!c.arrow&&wr(r)!=null&&K!==se&&s.reference[g]/2-(K<N?S:I)-f[g]/2<0,Y=Q?K<N?K-N:K-z:0;return{[p]:h[p]+Y,data:{[p]:se,centerOffset:K-se-Y,...Q&&{alignmentOffset:Y}},reset:Q}}}),u8=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,i;const{placement:r,middlewareData:s,rects:o,initialPlacement:a,platform:c,elements:l}=e,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:h,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:f=!0,...y}=An(t,e);if((n=s.arrow)!=null&&n.alignmentOffset)return{};const v=In(r),C=Qt(a),T=In(a)===a,k=await(c.isRTL==null?void 0:c.isRTL(l.floating)),b=h||(T||!f?[Go(a)]:r8(a)),w=g!=="none";!h&&w&&b.push(...o8(a,f,g,k));const x=[a,...b],R=await vs(e,y),_=[];let S=((i=s.flip)==null?void 0:i.overflows)||[];if(u&&_.push(R[v]),d){const K=i8(r,o,k);_.push(R[K[0]],R[K[1]])}if(S=[...S,{placement:r,overflows:_}],!_.every(K=>K<=0)){var I,N;const K=(((I=s.flip)==null?void 0:I.index)||0)+1,se=x[K];if(se&&(!(d==="alignment"?C!==Qt(se):!1)||S.every(F=>F.overflows[0]>0&&Qt(F.placement)===C)))return{data:{index:K,overflows:S},reset:{placement:se}};let Q=(N=S.filter(Y=>Y.overflows[0]<=0).sort((Y,F)=>Y.overflows[1]-F.overflows[1])[0])==null?void 0:N.placement;if(!Q)switch(p){case"bestFit":{var z;const Y=(z=S.filter(F=>{if(w){const ce=Qt(F.placement);return ce===C||ce==="y"}return!0}).map(F=>[F.placement,F.overflows.filter(ce=>ce>0).reduce((ce,A)=>ce+A,0)]).sort((F,ce)=>F[1]-ce[1])[0])==null?void 0:z[0];Y&&(Q=Y);break}case"initialPlacement":Q=a;break}if(r!==Q)return{reset:{placement:Q}}}return{}}}};function Qp(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function em(t){return e8.some(e=>t[e]>=0)}const d8=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n}=e,{strategy:i="referenceHidden",...r}=An(t,e);switch(i){case"referenceHidden":{const s=await vs(e,{...r,elementContext:"reference"}),o=Qp(s,n.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:em(o)}}}case"escaped":{const s=await vs(e,{...r,altBoundary:!0}),o=Qp(s,n.floating);return{data:{escapedOffsets:o,escaped:em(o)}}}default:return{}}}}};async function f8(t,e){const{placement:n,platform:i,elements:r}=t,s=await(i.isRTL==null?void 0:i.isRTL(r.floating)),o=In(n),a=wr(n),c=Qt(n)==="y",l=["left","top"].includes(o)?-1:1,u=s&&c?-1:1,d=An(e,t);let{mainAxis:h,crossAxis:p,alignmentAxis:g}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return a&&typeof g=="number"&&(p=a==="end"?g*-1:g),c?{x:p*u,y:h*l}:{x:h*l,y:p*u}}const h8=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,i;const{x:r,y:s,placement:o,middlewareData:a}=e,c=await f8(e,t);return o===((n=a.offset)==null?void 0:n.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:r+c.x,y:s+c.y,data:{...c,placement:o}}}}},p8=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:i,placement:r}=e,{mainAxis:s=!0,crossAxis:o=!1,limiter:a={fn:y=>{let{x:v,y:C}=y;return{x:v,y:C}}},...c}=An(t,e),l={x:n,y:i},u=await vs(e,c),d=Qt(In(r)),h=Dd(d);let p=l[h],g=l[d];if(s){const y=h==="y"?"top":"left",v=h==="y"?"bottom":"right",C=p+u[y],T=p-u[v];p=eu(C,p,T)}if(o){const y=d==="y"?"top":"left",v=d==="y"?"bottom":"right",C=g+u[y],T=g-u[v];g=eu(C,g,T)}const f=a.fn({...e,[h]:p,[d]:g});return{...f,data:{x:f.x-n,y:f.y-i,enabled:{[h]:s,[d]:o}}}}}},m8=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:n,y:i,placement:r,rects:s,middlewareData:o}=e,{offset:a=0,mainAxis:c=!0,crossAxis:l=!0}=An(t,e),u={x:n,y:i},d=Qt(r),h=Dd(d);let p=u[h],g=u[d];const f=An(a,e),y=typeof f=="number"?{mainAxis:f,crossAxis:0}:{mainAxis:0,crossAxis:0,...f};if(c){const T=h==="y"?"height":"width",k=s.reference[h]-s.floating[T]+y.mainAxis,b=s.reference[h]+s.reference[T]-y.mainAxis;p<k?p=k:p>b&&(p=b)}if(l){var v,C;const T=h==="y"?"width":"height",k=["top","left"].includes(In(r)),b=s.reference[d]-s.floating[T]+(k&&((v=o.offset)==null?void 0:v[d])||0)+(k?0:y.crossAxis),w=s.reference[d]+s.reference[T]+(k?0:((C=o.offset)==null?void 0:C[d])||0)-(k?y.crossAxis:0);g<b?g=b:g>w&&(g=w)}return{[h]:p,[d]:g}}}},g8=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var n,i;const{placement:r,rects:s,platform:o,elements:a}=e,{apply:c=()=>{},...l}=An(t,e),u=await vs(e,l),d=In(r),h=wr(r),p=Qt(r)==="y",{width:g,height:f}=s.floating;let y,v;d==="top"||d==="bottom"?(y=d,v=h===(await(o.isRTL==null?void 0:o.isRTL(a.floating))?"start":"end")?"left":"right"):(v=d,y=h==="end"?"top":"bottom");const C=f-u.top-u.bottom,T=g-u.left-u.right,k=Yn(f-u[y],C),b=Yn(g-u[v],T),w=!e.middlewareData.shift;let x=k,R=b;if((n=e.middlewareData.shift)!=null&&n.enabled.x&&(R=T),(i=e.middlewareData.shift)!=null&&i.enabled.y&&(x=C),w&&!h){const S=bt(u.left,0),I=bt(u.right,0),N=bt(u.top,0),z=bt(u.bottom,0);p?R=g-2*(S!==0||I!==0?S+I:bt(u.left,u.right)):x=f-2*(N!==0||z!==0?N+z:bt(u.top,u.bottom))}await c({...e,availableWidth:R,availableHeight:x});const _=await o.getDimensions(a.floating);return g!==_.width||f!==_.height?{reset:{rects:!0}}:{}}}};function ma(){return typeof window<"u"}function xr(t){return Bb(t)?(t.nodeName||"").toLowerCase():"#document"}function kt(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function dn(t){var e;return(e=(Bb(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function Bb(t){return ma()?t instanceof Node||t instanceof kt(t).Node:!1}function Wt(t){return ma()?t instanceof Element||t instanceof kt(t).Element:!1}function cn(t){return ma()?t instanceof HTMLElement||t instanceof kt(t).HTMLElement:!1}function tm(t){return!ma()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof kt(t).ShadowRoot}function Is(t){const{overflow:e,overflowX:n,overflowY:i,display:r}=qt(t);return/auto|scroll|overlay|hidden|clip/.test(e+i+n)&&!["inline","contents"].includes(r)}function v8(t){return["table","td","th"].includes(xr(t))}function ga(t){return[":popover-open",":modal"].some(e=>{try{return t.matches(e)}catch{return!1}})}function Vd(t){const e=Fd(),n=Wt(t)?qt(t):t;return["transform","translate","scale","rotate","perspective"].some(i=>n[i]?n[i]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!e&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!e&&(n.filter?n.filter!=="none":!1)||["transform","translate","scale","rotate","perspective","filter"].some(i=>(n.willChange||"").includes(i))||["paint","layout","strict","content"].some(i=>(n.contain||"").includes(i))}function y8(t){let e=Jn(t);for(;cn(e)&&!pr(e);){if(Vd(e))return e;if(ga(e))return null;e=Jn(e)}return null}function Fd(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function pr(t){return["html","body","#document"].includes(xr(t))}function qt(t){return kt(t).getComputedStyle(t)}function va(t){return Wt(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Jn(t){if(xr(t)==="html")return t;const e=t.assignedSlot||t.parentNode||tm(t)&&t.host||dn(t);return tm(e)?e.host:e}function $b(t){const e=Jn(t);return pr(e)?t.ownerDocument?t.ownerDocument.body:t.body:cn(e)&&Is(e)?e:$b(e)}function ys(t,e,n){var i;e===void 0&&(e=[]),n===void 0&&(n=!0);const r=$b(t),s=r===((i=t.ownerDocument)==null?void 0:i.body),o=kt(r);if(s){const a=nu(o);return e.concat(o,o.visualViewport||[],Is(r)?r:[],a&&n?ys(a):[])}return e.concat(r,ys(r,[],n))}function nu(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Hb(t){const e=qt(t);let n=parseFloat(e.width)||0,i=parseFloat(e.height)||0;const r=cn(t),s=r?t.offsetWidth:n,o=r?t.offsetHeight:i,a=qo(n)!==s||qo(i)!==o;return a&&(n=s,i=o),{width:n,height:i,$:a}}function jd(t){return Wt(t)?t:t.contextElement}function sr(t){const e=jd(t);if(!cn(e))return rn(1);const n=e.getBoundingClientRect(),{width:i,height:r,$:s}=Hb(e);let o=(s?qo(n.width):n.width)/i,a=(s?qo(n.height):n.height)/r;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}const b8=rn(0);function zb(t){const e=kt(t);return!Fd()||!e.visualViewport?b8:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function S8(t,e,n){return e===void 0&&(e=!1),!n||e&&n!==kt(t)?!1:e}function wi(t,e,n,i){e===void 0&&(e=!1),n===void 0&&(n=!1);const r=t.getBoundingClientRect(),s=jd(t);let o=rn(1);e&&(i?Wt(i)&&(o=sr(i)):o=sr(t));const a=S8(s,n,i)?zb(s):rn(0);let c=(r.left+a.x)/o.x,l=(r.top+a.y)/o.y,u=r.width/o.x,d=r.height/o.y;if(s){const h=kt(s),p=i&&Wt(i)?kt(i):i;let g=h,f=nu(g);for(;f&&i&&p!==g;){const y=sr(f),v=f.getBoundingClientRect(),C=qt(f),T=v.left+(f.clientLeft+parseFloat(C.paddingLeft))*y.x,k=v.top+(f.clientTop+parseFloat(C.paddingTop))*y.y;c*=y.x,l*=y.y,u*=y.x,d*=y.y,c+=T,l+=k,g=kt(f),f=nu(g)}}return Ko({width:u,height:d,x:c,y:l})}function Ud(t,e){const n=va(t).scrollLeft;return e?e.left+n:wi(dn(t)).left+n}function Wb(t,e,n){n===void 0&&(n=!1);const i=t.getBoundingClientRect(),r=i.left+e.scrollLeft-(n?0:Ud(t,i)),s=i.top+e.scrollTop;return{x:r,y:s}}function T8(t){let{elements:e,rect:n,offsetParent:i,strategy:r}=t;const s=r==="fixed",o=dn(i),a=e?ga(e.floating):!1;if(i===o||a&&s)return n;let c={scrollLeft:0,scrollTop:0},l=rn(1);const u=rn(0),d=cn(i);if((d||!d&&!s)&&((xr(i)!=="body"||Is(o))&&(c=va(i)),cn(i))){const p=wi(i);l=sr(i),u.x=p.x+i.clientLeft,u.y=p.y+i.clientTop}const h=o&&!d&&!s?Wb(o,c,!0):rn(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+h.x,y:n.y*l.y-c.scrollTop*l.y+u.y+h.y}}function k8(t){return Array.from(t.getClientRects())}function C8(t){const e=dn(t),n=va(t),i=t.ownerDocument.body,r=bt(e.scrollWidth,e.clientWidth,i.scrollWidth,i.clientWidth),s=bt(e.scrollHeight,e.clientHeight,i.scrollHeight,i.clientHeight);let o=-n.scrollLeft+Ud(t);const a=-n.scrollTop;return qt(i).direction==="rtl"&&(o+=bt(e.clientWidth,i.clientWidth)-r),{width:r,height:s,x:o,y:a}}function w8(t,e){const n=kt(t),i=dn(t),r=n.visualViewport;let s=i.clientWidth,o=i.clientHeight,a=0,c=0;if(r){s=r.width,o=r.height;const l=Fd();(!l||l&&e==="fixed")&&(a=r.offsetLeft,c=r.offsetTop)}return{width:s,height:o,x:a,y:c}}function x8(t,e){const n=wi(t,!0,e==="fixed"),i=n.top+t.clientTop,r=n.left+t.clientLeft,s=cn(t)?sr(t):rn(1),o=t.clientWidth*s.x,a=t.clientHeight*s.y,c=r*s.x,l=i*s.y;return{width:o,height:a,x:c,y:l}}function nm(t,e,n){let i;if(e==="viewport")i=w8(t,n);else if(e==="document")i=C8(dn(t));else if(Wt(e))i=x8(e,n);else{const r=zb(t);i={x:e.x-r.x,y:e.y-r.y,width:e.width,height:e.height}}return Ko(i)}function qb(t,e){const n=Jn(t);return n===e||!Wt(n)||pr(n)?!1:qt(n).position==="fixed"||qb(n,e)}function E8(t,e){const n=e.get(t);if(n)return n;let i=ys(t,[],!1).filter(a=>Wt(a)&&xr(a)!=="body"),r=null;const s=qt(t).position==="fixed";let o=s?Jn(t):t;for(;Wt(o)&&!pr(o);){const a=qt(o),c=Vd(o);!c&&a.position==="fixed"&&(r=null),(s?!c&&!r:!c&&a.position==="static"&&!!r&&["absolute","fixed"].includes(r.position)||Is(o)&&!c&&qb(t,o))?i=i.filter(u=>u!==o):r=a,o=Jn(o)}return e.set(t,i),i}function P8(t){let{element:e,boundary:n,rootBoundary:i,strategy:r}=t;const o=[...n==="clippingAncestors"?ga(e)?[]:E8(e,this._c):[].concat(n),i],a=o[0],c=o.reduce((l,u)=>{const d=nm(e,u,r);return l.top=bt(d.top,l.top),l.right=Yn(d.right,l.right),l.bottom=Yn(d.bottom,l.bottom),l.left=bt(d.left,l.left),l},nm(e,a,r));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function R8(t){const{width:e,height:n}=Hb(t);return{width:e,height:n}}function A8(t,e,n){const i=cn(e),r=dn(e),s=n==="fixed",o=wi(t,!0,s,e);let a={scrollLeft:0,scrollTop:0};const c=rn(0);if(i||!i&&!s)if((xr(e)!=="body"||Is(r))&&(a=va(e)),i){const h=wi(e,!0,s,e);c.x=h.x+e.clientLeft,c.y=h.y+e.clientTop}else r&&(c.x=Ud(r));const l=r&&!i&&!s?Wb(r,a):rn(0),u=o.left+a.scrollLeft-c.x-l.x,d=o.top+a.scrollTop-c.y-l.y;return{x:u,y:d,width:o.width,height:o.height}}function wc(t){return qt(t).position==="static"}function im(t,e){if(!cn(t)||qt(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return dn(t)===n&&(n=n.ownerDocument.body),n}function Gb(t,e){const n=kt(t);if(ga(t))return n;if(!cn(t)){let r=Jn(t);for(;r&&!pr(r);){if(Wt(r)&&!wc(r))return r;r=Jn(r)}return n}let i=im(t,e);for(;i&&v8(i)&&wc(i);)i=im(i,e);return i&&pr(i)&&wc(i)&&!Vd(i)?n:i||y8(t)||n}const I8=async function(t){const e=this.getOffsetParent||Gb,n=this.getDimensions,i=await n(t.floating);return{reference:A8(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:i.width,height:i.height}}};function _8(t){return qt(t).direction==="rtl"}const M8={convertOffsetParentRelativeRectToViewportRelativeRect:T8,getDocumentElement:dn,getClippingRect:P8,getOffsetParent:Gb,getElementRects:I8,getClientRects:k8,getDimensions:R8,getScale:sr,isElement:Wt,isRTL:_8};function Kb(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function O8(t,e){let n=null,i;const r=dn(t);function s(){var a;clearTimeout(i),(a=n)==null||a.disconnect(),n=null}function o(a,c){a===void 0&&(a=!1),c===void 0&&(c=1),s();const l=t.getBoundingClientRect(),{left:u,top:d,width:h,height:p}=l;if(a||e(),!h||!p)return;const g=Gs(d),f=Gs(r.clientWidth-(u+h)),y=Gs(r.clientHeight-(d+p)),v=Gs(u),T={rootMargin:-g+"px "+-f+"px "+-y+"px "+-v+"px",threshold:bt(0,Yn(1,c))||1};let k=!0;function b(w){const x=w[0].intersectionRatio;if(x!==c){if(!k)return o();x?o(!1,x):i=setTimeout(()=>{o(!1,1e-7)},1e3)}x===1&&!Kb(l,t.getBoundingClientRect())&&o(),k=!1}try{n=new IntersectionObserver(b,{...T,root:r.ownerDocument})}catch{n=new IntersectionObserver(b,T)}n.observe(t)}return o(!0),s}function D8(t,e,n,i){i===void 0&&(i={});const{ancestorScroll:r=!0,ancestorResize:s=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:c=!1}=i,l=jd(t),u=r||s?[...l?ys(l):[],...ys(e)]:[];u.forEach(v=>{r&&v.addEventListener("scroll",n,{passive:!0}),s&&v.addEventListener("resize",n)});const d=l&&a?O8(l,n):null;let h=-1,p=null;o&&(p=new ResizeObserver(v=>{let[C]=v;C&&C.target===l&&p&&(p.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var T;(T=p)==null||T.observe(e)})),n()}),l&&!c&&p.observe(l),p.observe(e));let g,f=c?wi(t):null;c&&y();function y(){const v=wi(t);f&&!Kb(f,v)&&n(),f=v,g=requestAnimationFrame(y)}return n(),()=>{var v;u.forEach(C=>{r&&C.removeEventListener("scroll",n),s&&C.removeEventListener("resize",n)}),d==null||d(),(v=p)==null||v.disconnect(),p=null,c&&cancelAnimationFrame(g)}}const N8=h8,L8=p8,V8=u8,F8=g8,j8=d8,rm=l8,U8=m8,B8=(t,e,n)=>{const i=new Map,r={platform:M8,...n},s={...r.platform,_c:i};return c8(t,e,{...r,platform:s})};var $8=typeof document<"u",H8=function(){},wo=$8?B.useLayoutEffect:H8;function Zo(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(typeof t=="function"&&t.toString()===e.toString())return!0;let n,i,r;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(i=n;i--!==0;)if(!Zo(t[i],e[i]))return!1;return!0}if(r=Object.keys(t),n=r.length,n!==Object.keys(e).length)return!1;for(i=n;i--!==0;)if(!{}.hasOwnProperty.call(e,r[i]))return!1;for(i=n;i--!==0;){const s=r[i];if(!(s==="_owner"&&t.$$typeof)&&!Zo(t[s],e[s]))return!1}return!0}return t!==t&&e!==e}function Zb(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function sm(t,e){const n=Zb(t);return Math.round(e*n)/n}function xc(t){const e=m.useRef(t);return wo(()=>{e.current=t}),e}function z8(t){t===void 0&&(t={});const{placement:e="bottom",strategy:n="absolute",middleware:i=[],platform:r,elements:{reference:s,floating:o}={},transform:a=!0,whileElementsMounted:c,open:l}=t,[u,d]=m.useState({x:0,y:0,strategy:n,placement:e,middlewareData:{},isPositioned:!1}),[h,p]=m.useState(i);Zo(h,i)||p(i);const[g,f]=m.useState(null),[y,v]=m.useState(null),C=m.useCallback(F=>{F!==w.current&&(w.current=F,f(F))},[]),T=m.useCallback(F=>{F!==x.current&&(x.current=F,v(F))},[]),k=s||g,b=o||y,w=m.useRef(null),x=m.useRef(null),R=m.useRef(u),_=c!=null,S=xc(c),I=xc(r),N=xc(l),z=m.useCallback(()=>{if(!w.current||!x.current)return;const F={placement:e,strategy:n,middleware:h};I.current&&(F.platform=I.current),B8(w.current,x.current,F).then(ce=>{const A={...ce,isPositioned:N.current!==!1};K.current&&!Zo(R.current,A)&&(R.current=A,na.flushSync(()=>{d(A)}))})},[h,e,n,I,N]);wo(()=>{l===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,d(F=>({...F,isPositioned:!1})))},[l]);const K=m.useRef(!1);wo(()=>(K.current=!0,()=>{K.current=!1}),[]),wo(()=>{if(k&&(w.current=k),b&&(x.current=b),k&&b){if(S.current)return S.current(k,b,z);z()}},[k,b,z,S,_]);const se=m.useMemo(()=>({reference:w,floating:x,setReference:C,setFloating:T}),[C,T]),Q=m.useMemo(()=>({reference:k,floating:b}),[k,b]),Y=m.useMemo(()=>{const F={position:n,left:0,top:0};if(!Q.floating)return F;const ce=sm(Q.floating,u.x),A=sm(Q.floating,u.y);return a?{...F,transform:"translate("+ce+"px, "+A+"px)",...Zb(Q.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:ce,top:A}},[n,a,Q.floating,u.x,u.y]);return m.useMemo(()=>({...u,update:z,refs:se,elements:Q,floatingStyles:Y}),[u,z,se,Q,Y])}const W8=t=>{function e(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:t,fn(n){const{element:i,padding:r}=typeof t=="function"?t(n):t;return i&&e(i)?i.current!=null?rm({element:i.current,padding:r}).fn(n):{}:i?rm({element:i,padding:r}).fn(n):{}}}},q8=(t,e)=>({...N8(t),options:[t,e]}),G8=(t,e)=>({...L8(t),options:[t,e]}),K8=(t,e)=>({...U8(t),options:[t,e]}),Z8=(t,e)=>({...V8(t),options:[t,e]}),Y8=(t,e)=>({...F8(t),options:[t,e]}),J8=(t,e)=>({...j8(t),options:[t,e]}),X8=(t,e)=>({...W8(t),options:[t,e]});var Q8="Arrow",Yb=m.forwardRef((t,e)=>{const{children:n,width:i=10,height:r=5,...s}=t;return E.jsx(Ue.svg,{...s,ref:e,width:i,height:r,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?n:E.jsx("polygon",{points:"0,0 30,0 15,10"})})});Yb.displayName=Q8;var e_=Yb;function t_(t){const[e,n]=m.useState(void 0);return gt(()=>{if(t){n({width:t.offsetWidth,height:t.offsetHeight});const i=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const s=r[0];let o,a;if("borderBoxSize"in s){const c=s.borderBoxSize,l=Array.isArray(c)?c[0]:c;o=l.inlineSize,a=l.blockSize}else o=t.offsetWidth,a=t.offsetHeight;n({width:o,height:a})});return i.observe(t,{box:"border-box"}),()=>i.unobserve(t)}else n(void 0)},[t]),e}var Bd="Popper",[Jb,Xb]=Md(Bd),[n_,Qb]=Jb(Bd),e1=t=>{const{__scopePopper:e,children:n}=t,[i,r]=m.useState(null);return E.jsx(n_,{scope:e,anchor:i,onAnchorChange:r,children:n})};e1.displayName=Bd;var t1="PopperAnchor",n1=m.forwardRef((t,e)=>{const{__scopePopper:n,virtualRef:i,...r}=t,s=Qb(t1,n),o=m.useRef(null),a=st(e,o);return m.useEffect(()=>{s.onAnchorChange((i==null?void 0:i.current)||o.current)}),i?null:E.jsx(Ue.div,{...r,ref:a})});n1.displayName=t1;var $d="PopperContent",[i_,r_]=Jb($d),i1=m.forwardRef((t,e)=>{var V,q,te,ee,ae,H;const{__scopePopper:n,side:i="bottom",sideOffset:r=0,align:s="center",alignOffset:o=0,arrowPadding:a=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d="partial",hideWhenDetached:h=!1,updatePositionStrategy:p="optimized",onPlaced:g,...f}=t,y=Qb($d,n),[v,C]=m.useState(null),T=st(e,Se=>C(Se)),[k,b]=m.useState(null),w=t_(k),x=(w==null?void 0:w.width)??0,R=(w==null?void 0:w.height)??0,_=i+(s!=="center"?"-"+s:""),S=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},I=Array.isArray(l)?l:[l],N=I.length>0,z={padding:S,boundary:I.filter(o_),altBoundary:N},{refs:K,floatingStyles:se,placement:Q,isPositioned:Y,middlewareData:F}=z8({strategy:"fixed",placement:_,whileElementsMounted:(...Se)=>D8(...Se,{animationFrame:p==="always"}),elements:{reference:y.anchor},middleware:[q8({mainAxis:r+R,alignmentAxis:o}),c&&G8({mainAxis:!0,crossAxis:!1,limiter:d==="partial"?K8():void 0,...z}),c&&Z8({...z}),Y8({...z,apply:({elements:Se,rects:Qe,availableWidth:Dt,availableHeight:Rr})=>{const{width:Ar,height:bS}=Qe.reference,Ds=Se.floating.style;Ds.setProperty("--radix-popper-available-width",`${Dt}px`),Ds.setProperty("--radix-popper-available-height",`${Rr}px`),Ds.setProperty("--radix-popper-anchor-width",`${Ar}px`),Ds.setProperty("--radix-popper-anchor-height",`${bS}px`)}}),k&&X8({element:k,padding:a}),a_({arrowWidth:x,arrowHeight:R}),h&&J8({strategy:"referenceHidden",...z})]}),[ce,A]=o1(Q),j=Ci(g);gt(()=>{Y&&(j==null||j())},[Y,j]);const W=(V=F.arrow)==null?void 0:V.x,Z=(q=F.arrow)==null?void 0:q.y,J=((te=F.arrow)==null?void 0:te.centerOffset)!==0,[re,oe]=m.useState();return gt(()=>{v&&oe(window.getComputedStyle(v).zIndex)},[v]),E.jsx("div",{ref:K.setFloating,"data-radix-popper-content-wrapper":"",style:{...se,transform:Y?se.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:re,"--radix-popper-transform-origin":[(ee=F.transformOrigin)==null?void 0:ee.x,(ae=F.transformOrigin)==null?void 0:ae.y].join(" "),...((H=F.hide)==null?void 0:H.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:E.jsx(i_,{scope:n,placedSide:ce,onArrowChange:b,arrowX:W,arrowY:Z,shouldHideArrow:J,children:E.jsx(Ue.div,{"data-side":ce,"data-align":A,...f,ref:T,style:{...f.style,animation:Y?void 0:"none"}})})})});i1.displayName=$d;var r1="PopperArrow",s_={top:"bottom",right:"left",bottom:"top",left:"right"},s1=m.forwardRef(function(e,n){const{__scopePopper:i,...r}=e,s=r_(r1,i),o=s_[s.placedSide];return E.jsx("span",{ref:s.onArrowChange,style:{position:"absolute",left:s.arrowX,top:s.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[s.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[s.placedSide],visibility:s.shouldHideArrow?"hidden":void 0},children:E.jsx(e_,{...r,ref:n,style:{...r.style,display:"block"}})})});s1.displayName=r1;function o_(t){return t!==null}var a_=t=>({name:"transformOrigin",options:t,fn(e){var y,v,C;const{placement:n,rects:i,middlewareData:r}=e,o=((y=r.arrow)==null?void 0:y.centerOffset)!==0,a=o?0:t.arrowWidth,c=o?0:t.arrowHeight,[l,u]=o1(n),d={start:"0%",center:"50%",end:"100%"}[u],h=(((v=r.arrow)==null?void 0:v.x)??0)+a/2,p=(((C=r.arrow)==null?void 0:C.y)??0)+c/2;let g="",f="";return l==="bottom"?(g=o?d:`${h}px`,f=`${-c}px`):l==="top"?(g=o?d:`${h}px`,f=`${i.floating.height+c}px`):l==="right"?(g=`${-c}px`,f=o?d:`${p}px`):l==="left"&&(g=`${i.floating.width+c}px`,f=o?d:`${p}px`),{data:{x:g,y:f}}}});function o1(t){const[e,n="center"]=t.split("-");return[e,n]}var c_=e1,l_=n1,u_=i1,d_=s1,f_="Portal",a1=m.forwardRef((t,e)=>{var a;const{container:n,...i}=t,[r,s]=m.useState(!1);gt(()=>s(!0),[]);const o=n||r&&((a=globalThis==null?void 0:globalThis.document)==null?void 0:a.body);return o?Ym.createPortal(E.jsx(Ue.div,{...i,ref:e}),o):null});a1.displayName=f_;function h_(t){const e=m.useRef({value:t,previous:t});return m.useMemo(()=>(e.current.value!==t&&(e.current.previous=e.current.value,e.current.value=t),e.current.previous),[t])}var c1=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),p_="VisuallyHidden",m_=m.forwardRef((t,e)=>E.jsx(Ue.span,{...t,ref:e,style:{...c1,...t.style}}));m_.displayName=p_;var g_=function(t){if(typeof document>"u")return null;var e=Array.isArray(t)?t[0]:t;return e.ownerDocument.body},Di=new WeakMap,Ks=new WeakMap,Zs={},Ec=0,l1=function(t){return t&&(t.host||l1(t.parentNode))},v_=function(t,e){return e.map(function(n){if(t.contains(n))return n;var i=l1(n);return i&&t.contains(i)?i:(console.error("aria-hidden",n,"in not contained inside",t,". Doing nothing"),null)}).filter(function(n){return!!n})},y_=function(t,e,n,i){var r=v_(e,Array.isArray(t)?t:[t]);Zs[n]||(Zs[n]=new WeakMap);var s=Zs[n],o=[],a=new Set,c=new Set(r),l=function(d){!d||a.has(d)||(a.add(d),l(d.parentNode))};r.forEach(l);var u=function(d){!d||c.has(d)||Array.prototype.forEach.call(d.children,function(h){if(a.has(h))u(h);else try{var p=h.getAttribute(i),g=p!==null&&p!=="false",f=(Di.get(h)||0)+1,y=(s.get(h)||0)+1;Di.set(h,f),s.set(h,y),o.push(h),f===1&&g&&Ks.set(h,!0),y===1&&h.setAttribute(n,"true"),g||h.setAttribute(i,"true")}catch(v){console.error("aria-hidden: cannot operate on ",h,v)}})};return u(e),a.clear(),Ec++,function(){o.forEach(function(d){var h=Di.get(d)-1,p=s.get(d)-1;Di.set(d,h),s.set(d,p),h||(Ks.has(d)||d.removeAttribute(i),Ks.delete(d)),p||d.removeAttribute(n)}),Ec--,Ec||(Di=new WeakMap,Di=new WeakMap,Ks=new WeakMap,Zs={})}},b_=function(t,e,n){n===void 0&&(n="data-aria-hidden");var i=Array.from(Array.isArray(t)?t:[t]),r=g_(t);return r?(i.push.apply(i,Array.from(r.querySelectorAll("[aria-live], script"))),y_(i,r,n,"aria-hidden")):function(){return null}},Xt=function(){return Xt=Object.assign||function(e){for(var n,i=1,r=arguments.length;i<r;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(e[s]=n[s])}return e},Xt.apply(this,arguments)};function u1(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n}function S_(t,e,n){if(n||arguments.length===2)for(var i=0,r=e.length,s;i<r;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))}var xo="right-scroll-bar-position",Eo="width-before-scroll-bar",T_="with-scroll-bars-hidden",k_="--removed-body-scroll-bar-size";function Pc(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}function C_(t,e){var n=B.useState(function(){return{value:t,callback:e,facade:{get current(){return n.value},set current(i){var r=n.value;r!==i&&(n.value=i,n.callback(i,r))}}}})[0];return n.callback=e,n.facade}var w_=typeof window<"u"?m.useLayoutEffect:m.useEffect,om=new WeakMap;function x_(t,e){var n=C_(null,function(i){return t.forEach(function(r){return Pc(r,i)})});return w_(function(){var i=om.get(n);if(i){var r=new Set(i),s=new Set(t),o=n.current;r.forEach(function(a){s.has(a)||Pc(a,null)}),s.forEach(function(a){r.has(a)||Pc(a,o)})}om.set(n,t)},[t]),n}function E_(t){return t}function P_(t,e){e===void 0&&(e=E_);var n=[],i=!1,r={read:function(){if(i)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:t},useMedium:function(s){var o=e(s,i);return n.push(o),function(){n=n.filter(function(a){return a!==o})}},assignSyncMedium:function(s){for(i=!0;n.length;){var o=n;n=[],o.forEach(s)}n={push:function(a){return s(a)},filter:function(){return n}}},assignMedium:function(s){i=!0;var o=[];if(n.length){var a=n;n=[],a.forEach(s),o=n}var c=function(){var u=o;o=[],u.forEach(s)},l=function(){return Promise.resolve().then(c)};l(),n={push:function(u){o.push(u),l()},filter:function(u){return o=o.filter(u),n}}}};return r}function R_(t){t===void 0&&(t={});var e=P_(null);return e.options=Xt({async:!0,ssr:!1},t),e}var d1=function(t){var e=t.sideCar,n=u1(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var i=e.read();if(!i)throw new Error("Sidecar medium not found");return m.createElement(i,Xt({},n))};d1.isSideCarExport=!0;function A_(t,e){return t.useMedium(e),d1}var f1=R_(),Rc=function(){},ya=m.forwardRef(function(t,e){var n=m.useRef(null),i=m.useState({onScrollCapture:Rc,onWheelCapture:Rc,onTouchMoveCapture:Rc}),r=i[0],s=i[1],o=t.forwardProps,a=t.children,c=t.className,l=t.removeScrollBar,u=t.enabled,d=t.shards,h=t.sideCar,p=t.noRelative,g=t.noIsolation,f=t.inert,y=t.allowPinchZoom,v=t.as,C=v===void 0?"div":v,T=t.gapMode,k=u1(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),b=h,w=x_([n,e]),x=Xt(Xt({},k),r);return m.createElement(m.Fragment,null,u&&m.createElement(b,{sideCar:f1,removeScrollBar:l,shards:d,noRelative:p,noIsolation:g,inert:f,setCallbacks:s,allowPinchZoom:!!y,lockRef:n,gapMode:T}),o?m.cloneElement(m.Children.only(a),Xt(Xt({},x),{ref:w})):m.createElement(C,Xt({},x,{className:c,ref:w}),a))});ya.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};ya.classNames={fullWidth:Eo,zeroRight:xo};var I_=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function __(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=I_();return e&&t.setAttribute("nonce",e),t}function M_(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function O_(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var D_=function(){var t=0,e=null;return{add:function(n){t==0&&(e=__())&&(M_(e,n),O_(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},N_=function(){var t=D_();return function(e,n){m.useEffect(function(){return t.add(e),function(){t.remove()}},[e&&n])}},h1=function(){var t=N_(),e=function(n){var i=n.styles,r=n.dynamic;return t(i,r),null};return e},L_={left:0,top:0,right:0,gap:0},Ac=function(t){return parseInt(t||"",10)||0},V_=function(t){var e=window.getComputedStyle(document.body),n=e[t==="padding"?"paddingLeft":"marginLeft"],i=e[t==="padding"?"paddingTop":"marginTop"],r=e[t==="padding"?"paddingRight":"marginRight"];return[Ac(n),Ac(i),Ac(r)]},F_=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return L_;var e=V_(t),n=document.documentElement.clientWidth,i=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,i-n+e[2]-e[0])}},j_=h1(),or="data-scroll-locked",U_=function(t,e,n,i){var r=t.left,s=t.top,o=t.right,a=t.gap;return n===void 0&&(n="margin"),`
|
|
79
|
+
`):"",this.name="UnsubscriptionError",this.errors=e}});function Wo(t,e){if(t){var n=t.indexOf(e);0<=n&&t.splice(n,1)}}var Ps=function(){function t(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return t.prototype.unsubscribe=function(){var e,n,i,r,s;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=hr(o),c=a.next();!c.done;c=a.next()){var l=c.value;l.remove(this)}}catch(f){e={error:f}}finally{try{c&&!c.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}else o.remove(this);var u=this.initialTeardown;if(Xe(u))try{u()}catch(f){s=f instanceof hc?f.errors:[f]}var d=this._finalizers;if(d){this._finalizers=null;try{for(var h=hr(d),m=h.next();!m.done;m=h.next()){var g=m.value;try{kp(g)}catch(f){s=s??[],f instanceof hc?s=ps(ps([],hs(s)),hs(f.errors)):s.push(f)}}}catch(f){i={error:f}}finally{try{m&&!m.done&&(r=h.return)&&r.call(h)}finally{if(i)throw i.error}}}if(s)throw new hc(s)}},t.prototype.add=function(e){var n;if(e&&e!==this)if(this.closed)kp(e);else{if(e instanceof t){if(e.closed||e._hasParent(this))return;e._addParent(this)}(this._finalizers=(n=this._finalizers)!==null&&n!==void 0?n:[]).push(e)}},t.prototype._hasParent=function(e){var n=this._parentage;return n===e||Array.isArray(n)&&n.includes(e)},t.prototype._addParent=function(e){var n=this._parentage;this._parentage=Array.isArray(n)?(n.push(e),n):n?[n,e]:e},t.prototype._removeParent=function(e){var n=this._parentage;n===e?this._parentage=null:Array.isArray(n)&&Wo(n,e)},t.prototype.remove=function(e){var n=this._finalizers;n&&Wo(n,e),e instanceof t&&e._removeParent(this)},t.EMPTY=function(){var e=new t;return e.closed=!0,e}(),t}(),Sy=Ps.EMPTY;function Ty(t){return t instanceof Ps||t&&"closed"in t&&Xe(t.remove)&&Xe(t.add)&&Xe(t.unsubscribe)}function kp(t){Xe(t)?t():t.unsubscribe()}var nR={Promise:void 0},iR={setTimeout:function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return setTimeout.apply(void 0,ps([t,e],hs(n)))},clearTimeout:function(t){return clearTimeout(t)},delegate:void 0};function ky(t){iR.setTimeout(function(){throw t})}function Hl(){}function Co(t){t()}var yd=function(t){Mn(e,t);function e(n){var i=t.call(this)||this;return i.isStopped=!1,n?(i.destination=n,Ty(n)&&n.add(i)):i.destination=oR,i}return e.create=function(n,i,r){return new ms(n,i,r)},e.prototype.next=function(n){this.isStopped||this._next(n)},e.prototype.error=function(n){this.isStopped||(this.isStopped=!0,this._error(n))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this),this.destination=null)},e.prototype._next=function(n){this.destination.next(n)},e.prototype._error=function(n){try{this.destination.error(n)}finally{this.unsubscribe()}},e.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},e}(Ps),rR=function(){function t(e){this.partialObserver=e}return t.prototype.next=function(e){var n=this.partialObserver;if(n.next)try{n.next(e)}catch(i){Hs(i)}},t.prototype.error=function(e){var n=this.partialObserver;if(n.error)try{n.error(e)}catch(i){Hs(i)}else Hs(e)},t.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(n){Hs(n)}},t}(),ms=function(t){Mn(e,t);function e(n,i,r){var s=t.call(this)||this,o;return Xe(n)||!n?o={next:n??void 0,error:i??void 0,complete:r??void 0}:o=n,s.destination=new rR(o),s}return e}(yd);function Hs(t){ky(t)}function sR(t){throw t}var oR={closed:!0,next:Hl,error:sR,complete:Hl},bd=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();function Cy(t){return t}function aR(t){return t.length===0?Cy:t.length===1?t[0]:function(e){return t.reduce(function(n,i){return i(n)},e)}}var ze=function(){function t(e){e&&(this._subscribe=e)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(e,n,i){var r=this,s=lR(e)?e:new ms(e,n,i);return Co(function(){var o=r,a=o.operator,c=o.source;s.add(a?a.call(s,c):c?r._subscribe(s):r._trySubscribe(s))}),s},t.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(n){e.error(n)}},t.prototype.forEach=function(e,n){var i=this;return n=Cp(n),new n(function(r,s){var o=new ms({next:function(a){try{e(a)}catch(c){s(c),o.unsubscribe()}},error:s,complete:r});i.subscribe(o)})},t.prototype._subscribe=function(e){var n;return(n=this.source)===null||n===void 0?void 0:n.subscribe(e)},t.prototype[bd]=function(){return this},t.prototype.pipe=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return aR(e)(this)},t.prototype.toPromise=function(e){var n=this;return e=Cp(e),new e(function(i,r){var s;n.subscribe(function(o){return s=o},function(o){return r(o)},function(){return i(s)})})},t.create=function(e){return new t(e)},t}();function Cp(t){var e;return(e=t??nR.Promise)!==null&&e!==void 0?e:Promise}function cR(t){return t&&Xe(t.next)&&Xe(t.error)&&Xe(t.complete)}function lR(t){return t&&t instanceof yd||cR(t)&&Ty(t)}function uR(t){return Xe(t==null?void 0:t.lift)}function On(t){return function(e){if(uR(e))return e.lift(function(n){try{return t(n,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function ki(t,e,n,i,r){return new dR(t,e,n,i,r)}var dR=function(t){Mn(e,t);function e(n,i,r,s,o,a){var c=t.call(this,n)||this;return c.onFinalize=o,c.shouldUnsubscribe=a,c._next=i?function(l){try{i(l)}catch(u){n.error(u)}}:t.prototype._next,c._error=s?function(l){try{s(l)}catch(u){n.error(u)}finally{this.unsubscribe()}}:t.prototype._error,c._complete=r?function(){try{r()}catch(l){n.error(l)}finally{this.unsubscribe()}}:t.prototype._complete,c}return e.prototype.unsubscribe=function(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var i=this.closed;t.prototype.unsubscribe.call(this),!i&&((n=this.onFinalize)===null||n===void 0||n.call(this))}},e}(yd),fR=vd(function(t){return function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}}),Rn=function(t){Mn(e,t);function e(){var n=t.call(this)||this;return n.closed=!1,n.currentObservers=null,n.observers=[],n.isStopped=!1,n.hasError=!1,n.thrownError=null,n}return e.prototype.lift=function(n){var i=new wp(this,this);return i.operator=n,i},e.prototype._throwIfClosed=function(){if(this.closed)throw new fR},e.prototype.next=function(n){var i=this;Co(function(){var r,s;if(i._throwIfClosed(),!i.isStopped){i.currentObservers||(i.currentObservers=Array.from(i.observers));try{for(var o=hr(i.currentObservers),a=o.next();!a.done;a=o.next()){var c=a.value;c.next(n)}}catch(l){r={error:l}}finally{try{a&&!a.done&&(s=o.return)&&s.call(o)}finally{if(r)throw r.error}}}})},e.prototype.error=function(n){var i=this;Co(function(){if(i._throwIfClosed(),!i.isStopped){i.hasError=i.isStopped=!0,i.thrownError=n;for(var r=i.observers;r.length;)r.shift().error(n)}})},e.prototype.complete=function(){var n=this;Co(function(){if(n._throwIfClosed(),!n.isStopped){n.isStopped=!0;for(var i=n.observers;i.length;)i.shift().complete()}})},e.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(e.prototype,"observed",{get:function(){var n;return((n=this.observers)===null||n===void 0?void 0:n.length)>0},enumerable:!1,configurable:!0}),e.prototype._trySubscribe=function(n){return this._throwIfClosed(),t.prototype._trySubscribe.call(this,n)},e.prototype._subscribe=function(n){return this._throwIfClosed(),this._checkFinalizedStatuses(n),this._innerSubscribe(n)},e.prototype._innerSubscribe=function(n){var i=this,r=this,s=r.hasError,o=r.isStopped,a=r.observers;return s||o?Sy:(this.currentObservers=null,a.push(n),new Ps(function(){i.currentObservers=null,Wo(a,n)}))},e.prototype._checkFinalizedStatuses=function(n){var i=this,r=i.hasError,s=i.thrownError,o=i.isStopped;r?n.error(s):o&&n.complete()},e.prototype.asObservable=function(){var n=new ze;return n.source=this,n},e.create=function(n,i){return new wp(n,i)},e}(ze),wp=function(t){Mn(e,t);function e(n,i){var r=t.call(this)||this;return r.destination=n,r.source=i,r}return e.prototype.next=function(n){var i,r;(r=(i=this.destination)===null||i===void 0?void 0:i.next)===null||r===void 0||r.call(i,n)},e.prototype.error=function(n){var i,r;(r=(i=this.destination)===null||i===void 0?void 0:i.error)===null||r===void 0||r.call(i,n)},e.prototype.complete=function(){var n,i;(i=(n=this.destination)===null||n===void 0?void 0:n.complete)===null||i===void 0||i.call(n)},e.prototype._subscribe=function(n){var i,r;return(r=(i=this.source)===null||i===void 0?void 0:i.subscribe(n))!==null&&r!==void 0?r:Sy},e}(Rn),wy=function(t){Mn(e,t);function e(n){var i=t.call(this)||this;return i._value=n,i}return Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),e.prototype._subscribe=function(n){var i=t.prototype._subscribe.call(this,n);return!i.closed&&n.next(this._value),i},e.prototype.getValue=function(){var n=this,i=n.hasError,r=n.thrownError,s=n._value;if(i)throw r;return this._throwIfClosed(),s},e.prototype.next=function(n){t.prototype.next.call(this,this._value=n)},e}(Rn),hR={now:function(){return Date.now()}},pR=function(t){Mn(e,t);function e(n,i){return t.call(this)||this}return e.prototype.schedule=function(n,i){return this},e}(Ps),xp={setInterval:function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return setInterval.apply(void 0,ps([t,e],hs(n)))},clearInterval:function(t){return clearInterval(t)},delegate:void 0},mR=function(t){Mn(e,t);function e(n,i){var r=t.call(this,n,i)||this;return r.scheduler=n,r.work=i,r.pending=!1,r}return e.prototype.schedule=function(n,i){var r;if(i===void 0&&(i=0),this.closed)return this;this.state=n;var s=this.id,o=this.scheduler;return s!=null&&(this.id=this.recycleAsyncId(o,s,i)),this.pending=!0,this.delay=i,this.id=(r=this.id)!==null&&r!==void 0?r:this.requestAsyncId(o,this.id,i),this},e.prototype.requestAsyncId=function(n,i,r){return r===void 0&&(r=0),xp.setInterval(n.flush.bind(n,this),r)},e.prototype.recycleAsyncId=function(n,i,r){if(r===void 0&&(r=0),r!=null&&this.delay===r&&this.pending===!1)return i;i!=null&&xp.clearInterval(i)},e.prototype.execute=function(n,i){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var r=this._execute(n,i);if(r)return r;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(n,i){var r=!1,s;try{this.work(n)}catch(o){r=!0,s=o||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),s},e.prototype.unsubscribe=function(){if(!this.closed){var n=this,i=n.id,r=n.scheduler,s=r.actions;this.work=this.state=this.scheduler=null,this.pending=!1,Wo(s,this),i!=null&&(this.id=this.recycleAsyncId(r,i,null)),this.delay=null,t.prototype.unsubscribe.call(this)}},e}(pR),Ep=function(){function t(e,n){n===void 0&&(n=t.now),this.schedulerActionCtor=e,this.now=n}return t.prototype.schedule=function(e,n,i){return n===void 0&&(n=0),new this.schedulerActionCtor(this,e).schedule(i,n)},t.now=hR.now,t}(),gR=function(t){Mn(e,t);function e(n,i){i===void 0&&(i=Ep.now);var r=t.call(this,n,i)||this;return r.actions=[],r._active=!1,r}return e.prototype.flush=function(n){var i=this.actions;if(this._active){i.push(n);return}var r;this._active=!0;do if(r=n.execute(n.state,n.delay))break;while(n=i.shift());if(this._active=!1,r){for(;n=i.shift();)n.unsubscribe();throw r}},e}(Ep);new gR(mR);function vR(t){return t&&Xe(t.schedule)}function yR(t){return t[t.length-1]}function xy(t){return vR(yR(t))?t.pop():void 0}var Ey=function(t){return t&&typeof t.length=="number"&&typeof t!="function"};function Py(t){return Xe(t==null?void 0:t.then)}function Ry(t){return Xe(t[bd])}function Ay(t){return Symbol.asyncIterator&&Xe(t==null?void 0:t[Symbol.asyncIterator])}function Iy(t){return new TypeError("You provided "+(t!==null&&typeof t=="object"?"an invalid object":"'"+t+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function bR(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var _y=bR();function My(t){return Xe(t==null?void 0:t[_y])}function Oy(t){return eR(this,arguments,function(){var e,n,i,r;return by(this,function(s){switch(s.label){case 0:e=t.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,rr(e.read())];case 3:return n=s.sent(),i=n.value,r=n.done,r?[4,rr(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,rr(i)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return e.releaseLock(),[7];case 10:return[2]}})})}function Dy(t){return Xe(t==null?void 0:t.getReader)}function ii(t){if(t instanceof ze)return t;if(t!=null){if(Ry(t))return SR(t);if(Ey(t))return TR(t);if(Py(t))return kR(t);if(Ay(t))return Ny(t);if(My(t))return CR(t);if(Dy(t))return wR(t)}throw Iy(t)}function SR(t){return new ze(function(e){var n=t[bd]();if(Xe(n.subscribe))return n.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function TR(t){return new ze(function(e){for(var n=0;n<t.length&&!e.closed;n++)e.next(t[n]);e.complete()})}function kR(t){return new ze(function(e){t.then(function(n){e.closed||(e.next(n),e.complete())},function(n){return e.error(n)}).then(null,ky)})}function CR(t){return new ze(function(e){var n,i;try{for(var r=hr(t),s=r.next();!s.done;s=r.next()){var o=s.value;if(e.next(o),e.closed)return}}catch(a){n={error:a}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}e.complete()})}function Ny(t){return new ze(function(e){xR(t,e).catch(function(n){return e.error(n)})})}function wR(t){return Ny(Oy(t))}function xR(t,e){var n,i,r,s;return QP(this,void 0,void 0,function(){var o,a;return by(this,function(c){switch(c.label){case 0:c.trys.push([0,5,6,11]),n=tR(t),c.label=1;case 1:return[4,n.next()];case 2:if(i=c.sent(),!!i.done)return[3,4];if(o=i.value,e.next(o),e.closed)return[2];c.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return a=c.sent(),r={error:a},[3,11];case 6:return c.trys.push([6,,9,10]),i&&!i.done&&(s=n.return)?[4,s.call(n)]:[3,8];case 7:c.sent(),c.label=8;case 8:return[3,10];case 9:if(r)throw r.error;return[7];case 10:return[7];case 11:return e.complete(),[2]}})})}function vi(t,e,n,i,r){i===void 0&&(i=0),r===void 0&&(r=!1);var s=e.schedule(function(){n(),r?t.add(this.schedule(null,i)):this.unsubscribe()},i);if(t.add(s),!r)return s}function Ly(t,e){return e===void 0&&(e=0),On(function(n,i){n.subscribe(ki(i,function(r){return vi(i,t,function(){return i.next(r)},e)},function(){return vi(i,t,function(){return i.complete()},e)},function(r){return vi(i,t,function(){return i.error(r)},e)}))})}function Vy(t,e){return e===void 0&&(e=0),On(function(n,i){i.add(t.schedule(function(){return n.subscribe(i)},e))})}function ER(t,e){return ii(t).pipe(Vy(e),Ly(e))}function PR(t,e){return ii(t).pipe(Vy(e),Ly(e))}function RR(t,e){return new ze(function(n){var i=0;return e.schedule(function(){i===t.length?n.complete():(n.next(t[i++]),n.closed||this.schedule())})})}function AR(t,e){return new ze(function(n){var i;return vi(n,e,function(){i=t[_y](),vi(n,e,function(){var r,s,o;try{r=i.next(),s=r.value,o=r.done}catch(a){n.error(a);return}o?n.complete():n.next(s)},0,!0)}),function(){return Xe(i==null?void 0:i.return)&&i.return()}})}function Fy(t,e){if(!t)throw new Error("Iterable cannot be null");return new ze(function(n){vi(n,e,function(){var i=t[Symbol.asyncIterator]();vi(n,e,function(){i.next().then(function(r){r.done?n.complete():n.next(r.value)})},0,!0)})})}function IR(t,e){return Fy(Oy(t),e)}function _R(t,e){if(t!=null){if(Ry(t))return ER(t,e);if(Ey(t))return RR(t,e);if(Py(t))return PR(t,e);if(Ay(t))return Fy(t,e);if(My(t))return AR(t,e);if(Dy(t))return IR(t,e)}throw Iy(t)}function Sd(t,e){return e?_R(t,e):ii(t)}vd(function(t){return function(e){e===void 0&&(e=null),t(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=e}});function lt(t,e){return On(function(n,i){var r=0;n.subscribe(ki(i,function(s){i.next(t.call(e,s,r++))}))})}function MR(t,e,n,i,r,s,o,a){var c=[],l=0,u=0,d=!1,h=function(){d&&!c.length&&!l&&e.complete()},m=function(f){return l<i?g(f):c.push(f)},g=function(f){l++;var y=!1;ii(n(f,u++)).subscribe(ki(e,function(v){e.next(v)},function(){y=!0},void 0,function(){if(y)try{l--;for(var v=function(){var C=c.shift();o||g(C)};c.length&&l<i;)v();h()}catch(C){e.error(C)}}))};return t.subscribe(ki(e,m,function(){d=!0,h()})),function(){}}function jy(t,e,n){return n===void 0&&(n=1/0),Xe(e)?jy(function(i,r){return lt(function(s,o){return e(i,s,r,o)})(ii(t(i,r)))},n):(typeof e=="number"&&(n=e),On(function(i,r){return MR(i,r,t,n)}))}function OR(t){return jy(Cy,t)}function DR(){return OR(1)}function zl(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return DR()(Sd(t,xy(t)))}function Td(t,e){return On(function(n,i){var r=0;n.subscribe(ki(i,function(s){return t.call(e,s,r++)&&i.next(s)}))})}function NR(t,e,n,i,r){return function(s,o){var a=n,c=e,l=0;s.subscribe(ki(o,function(u){var d=l++;c=a?t(c,u,d):(a=!0,u),o.next(c)},r))}}function Wl(t,e){return On(NR(t,e,arguments.length>=2,!0))}function LR(t){t===void 0&&(t={});var e=t.connector,n=e===void 0?function(){return new Rn}:e,i=t.resetOnError,r=i===void 0?!0:i,s=t.resetOnComplete,o=s===void 0?!0:s,a=t.resetOnRefCountZero,c=a===void 0?!0:a;return function(l){var u,d,h,m=0,g=!1,f=!1,y=function(){d==null||d.unsubscribe(),d=void 0},v=function(){y(),u=h=void 0,g=f=!1},C=function(){var T=u;v(),T==null||T.unsubscribe()};return On(function(T,k){m++,!f&&!g&&y();var b=h=h??n();k.add(function(){m--,m===0&&!f&&!g&&(d=pc(C,c))}),b.subscribe(k),!u&&m>0&&(u=new ms({next:function(w){return b.next(w)},error:function(w){f=!0,y(),d=pc(v,r,w),b.error(w)},complete:function(){g=!0,y(),d=pc(v,o),b.complete()}}),ii(T).subscribe(u))})(l)}}function pc(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];if(e===!0){t();return}if(e!==!1){var r=new ms({next:function(){r.unsubscribe(),t()}});return ii(e.apply(void 0,ps([],hs(n)))).subscribe(r)}}function un(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=xy(t);return On(function(i,r){(n?zl(t,i,n):zl(t,i)).subscribe(r)})}function Pp(t){return On(function(e,n){ii(t).subscribe(ki(n,function(){return n.complete()},Hl)),!n.closed&&e.subscribe(n)})}var VR=Object.defineProperty,FR=Object.defineProperties,jR=Object.getOwnPropertyDescriptors,Rp=Object.getOwnPropertySymbols,UR=Object.prototype.hasOwnProperty,BR=Object.prototype.propertyIsEnumerable,Ap=(t,e,n)=>e in t?VR(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,zn=(t,e)=>{for(var n in e||(e={}))UR.call(e,n)&&Ap(t,n,e[n]);if(Rp)for(var n of Rp(e))BR.call(e,n)&&Ap(t,n,e[n]);return t},ns=(t,e)=>FR(t,jR(e)),an=(t,e,n)=>new Promise((i,r)=>{var s=c=>{try{a(n.next(c))}catch(l){r(l)}},o=c=>{try{a(n.throw(c))}catch(l){r(l)}},a=c=>c.done?i(c.value):Promise.resolve(c.value).then(s,o);a((n=n.apply(t,e)).next())}),Uy="lk";function kd(t){return typeof t>"u"?!1:$R(t)||HR(t)}function $R(t){var e;return t?t.hasOwnProperty("participant")&&t.hasOwnProperty("source")&&t.hasOwnProperty("track")&&typeof((e=t.publication)==null?void 0:e.track)<"u":!1}function HR(t){return t?t.hasOwnProperty("participant")&&t.hasOwnProperty("source")&&t.hasOwnProperty("publication")&&typeof t.publication<"u":!1}function zR(t){return t?t.hasOwnProperty("participant")&&t.hasOwnProperty("source")&&typeof t.publication>"u":!1}function By(t){if(typeof t=="string"||typeof t=="number")return`${t}`;if(zR(t))return`${t.participant.identity}_${t.source}_placeholder`;if(kd(t))return`${t.participant.identity}_${t.publication.source}_${t.publication.trackSid}`;throw new Error(`Can't generate a id for the given track reference: ${t}`)}var WR=[D.ConnectionStateChanged,D.RoomMetadataChanged,D.ActiveSpeakersChanged,D.ConnectionQualityChanged,D.ParticipantConnected,D.ParticipantDisconnected,D.ParticipantPermissionsChanged,D.ParticipantMetadataChanged,D.ParticipantNameChanged,D.ParticipantAttributesChanged,D.TrackMuted,D.TrackUnmuted,D.TrackPublished,D.TrackUnpublished,D.TrackStreamStateChanged,D.TrackSubscriptionFailed,D.TrackSubscriptionPermissionChanged,D.TrackSubscriptionStatusChanged],$y=[...WR,D.LocalTrackPublished,D.LocalTrackUnpublished],qR=[U.TrackPublished,U.TrackUnpublished,U.TrackMuted,U.TrackUnmuted,U.TrackStreamStateChanged,U.TrackSubscribed,U.TrackUnsubscribed,U.TrackSubscriptionPermissionChanged,U.TrackSubscriptionFailed,U.LocalTrackPublished,U.LocalTrackUnpublished],GR=[U.ConnectionQualityChanged,U.IsSpeakingChanged,U.ParticipantMetadataChanged,U.ParticipantPermissionsChanged,U.TrackMuted,U.TrackUnmuted,U.TrackPublished,U.TrackUnpublished,U.TrackStreamStateChanged,U.TrackSubscriptionFailed,U.TrackSubscriptionPermissionChanged,U.TrackSubscriptionStatusChanged];[...GR,U.LocalTrackPublished,U.LocalTrackUnpublished];var Ze=XP.getLogger("lk-components-js");Ze.setDefaultLevel("WARN");function KR(t,e){var n;return ns(zn({},t),{receivedAtMediaTimestamp:(n=e.rtpTimestamp)!=null?n:0,receivedAt:e.timestamp})}function ZR(t,e,n){return[...t,...e].reduceRight((i,r)=>(i.find(s=>s.id===r.id)||i.unshift(r),i),[]).slice(0-n)}function Hy(t){return typeof t=="object"}function zy(t){return Array.isArray(t)&&t.filter(Hy).length>0}function Rs(t){return`${Uy}-${t}`}function YR(t){const e=ql(t),n=xd(t.participant).pipe(lt(()=>ql(t)),un(e));return{className:Rs(t.source===M.Source.Camera||t.source===M.Source.ScreenShare?"participant-media-video":"participant-media-audio"),trackObserver:n}}function ql(t){if(kd(t))return t.publication;{const{source:e,name:n,participant:i}=t;if(e&&n)return i.getTrackPublications().find(r=>r.source===e&&r.trackName===n);if(n)return i.getTrackPublicationByName(n);if(e)return i.getTrackPublication(e);throw new Error("At least one of source and name needs to be defined")}}function Cd(t,...e){return new ze(n=>{const i=()=>{n.next(t)};return e.forEach(r=>{t.on(r,i)}),()=>{e.forEach(r=>{t.off(r,i)})}}).pipe(un(t))}function wd(t,e){return new ze(n=>{const i=(...r)=>{n.next(r)};return t.on(e,i),()=>{t.off(e,i)}})}function JR(t){return wd(t,D.ConnectionStateChanged).pipe(lt(([e])=>e),un(t.state))}function XR(t,e,n=!0){const i=new ze(s=>{wn.getLocalDevices(t,n).then(o=>{s.next(o),s.complete()}).catch(o=>{e==null||e(o),s.next([]),s.complete()})}),r=new ze(s=>{var o;const a=()=>an(this,null,function*(){try{const c=yield wn.getLocalDevices(t,n);s.next(c)}catch(c){e==null||e(c)}});if(typeof window<"u"){if(!window.isSecureContext)throw new Error("Accessing media devices is available only in secure contexts (HTTPS and localhost), in some or all supporting browsers. See: https://developer.mozilla.org/en-US/docs/Web/API/Navigator/mediaDevices");(o=navigator==null?void 0:navigator.mediaDevices)==null||o.addEventListener("devicechange",a)}return()=>{var c;(c=navigator==null?void 0:navigator.mediaDevices)==null||c.removeEventListener("devicechange",a)}});return zl(i,r)}function QR(t){return wd(t,D.DataReceived)}function eA(t){return Cd(t,D.AudioPlaybackStatusChanged).pipe(lt(e=>({canPlayAudio:e.canPlaybackAudio})))}function tA(t,e){return wd(t,D.ActiveDeviceChanged).pipe(Td(([n])=>n===e),lt(([n,i])=>(Ze.debug("activeDeviceObservable | RoomEvent.ActiveDeviceChanged",{kind:n,deviceId:i}),i)))}function Wy(t,...e){return new ze(n=>{const i=()=>{n.next(t)};return e.forEach(r=>{t.on(r,i)}),()=>{e.forEach(r=>{t.off(r,i)})}}).pipe(un(t))}function xd(t){return Wy(t,U.TrackMuted,U.TrackUnmuted,U.ParticipantPermissionsChanged,U.TrackPublished,U.TrackUnpublished,U.LocalTrackPublished,U.LocalTrackUnpublished,U.MediaDevicesError,U.TrackSubscriptionStatusChanged).pipe(lt(e=>{const{isMicrophoneEnabled:n,isCameraEnabled:i,isScreenShareEnabled:r}=e,s=e.getTrackPublication(M.Source.Microphone),o=e.getTrackPublication(M.Source.Camera);return{isCameraEnabled:i,isMicrophoneEnabled:n,isScreenShareEnabled:r,cameraTrack:o,microphoneTrack:s,participant:e}}))}function qy(t,e){return new ze(n=>{const i=(...r)=>{n.next(r)};return t.on(e,i),()=>{t.off(e,i)}})}function nA(t,e={}){var n;let i;const r=new ze(c=>(i=c,()=>a.unsubscribe())).pipe(un(Array.from(t.remoteParticipants.values()))),s=(n=e.additionalRoomEvents)!=null?n:$y,o=Array.from(new Set([D.ParticipantConnected,D.ParticipantDisconnected,D.ConnectionStateChanged,...s])),a=Cd(t,...o).subscribe(c=>i==null?void 0:i.next(Array.from(c.remoteParticipants.values())));return t.remoteParticipants.size>0&&(i==null||i.next(Array.from(t.remoteParticipants.values()))),r}function iA(t){return qy(t,U.ParticipantPermissionsChanged).pipe(lt(()=>t.permissions),un(t.permissions))}function Ip(t){return typeof t>"u"?new ze:qy(t,U.AttributesChanged).pipe(lt(([e])=>({changed:e,attributes:t.attributes})),un({changed:t.attributes,attributes:t.attributes}))}function rA(t,e,n,i,r){const{localParticipant:s}=e,o=(u,d)=>{let h=!1;switch(u){case M.Source.Camera:h=d.isCameraEnabled;break;case M.Source.Microphone:h=d.isMicrophoneEnabled;break;case M.Source.ScreenShare:h=d.isScreenShareEnabled;break}return h},a=xd(s).pipe(lt(u=>o(t,u.participant)),un(o(t,s))),c=new Rn,l=(u,d)=>an(this,null,function*(){try{switch(d??(d=n),c.next(!0),t){case M.Source.Camera:return yield s.setCameraEnabled(u??!s.isCameraEnabled,d,i),s.isCameraEnabled;case M.Source.Microphone:return yield s.setMicrophoneEnabled(u??!s.isMicrophoneEnabled,d,i),s.isMicrophoneEnabled;case M.Source.ScreenShare:return yield s.setScreenShareEnabled(u??!s.isScreenShareEnabled,d,i),s.isScreenShareEnabled;default:throw new TypeError("Tried to toggle unsupported source")}}catch(h){if(r&&h instanceof Error){r==null||r(h);return}else throw h}finally{c.next(!1)}});return{className:Rs("button"),toggle:l,enabledObserver:a,pendingObserver:c.asObservable()}}function sA(){let t=!1;const e=new Rn,n=new Rn,i=r=>an(this,null,function*(){n.next(!0),t=r??!t,e.next(t),n.next(!1)});return{className:Rs("button"),toggle:i,enabledObserver:e.asObservable(),pendingObserver:n.asObservable()}}function oA(t,e,n){const i=new wy(void 0),r=tA(e,t),s=(o,...a)=>an(this,[o,...a],function*(c,l={}){var u,d,h;if(e){Ze.debug(`Switching active device of kind "${t}" with id ${c}.`),yield e.switchActiveDevice(t,c,l.exact);const m=(u=e.getActiveDevice(t))!=null?u:c;m!==c&&c!=="default"&&Ze.info(`We tried to select the device with id (${c}), but the browser decided to select the device with id (${m}) instead.`);let g;t==="audioinput"?g=(d=e.localParticipant.getTrackPublication(M.Source.Microphone))==null?void 0:d.track:t==="videoinput"&&(g=(h=e.localParticipant.getTrackPublication(M.Source.Camera))==null?void 0:h.track);const f=c==="default"&&!g||c==="default"&&(g==null?void 0:g.mediaStreamTrack.label.startsWith("Default"));i.next(f?c:m)}});return{className:Rs("media-device-select"),activeDeviceObservable:r,setActiveMediaDevice:s}}var Gy={CHAT:"lk.chat",TRANSCRIPTION:"lk.transcription"},aA={CHAT:"lk-chat-topic"};function Ky(t,e){return an(this,arguments,function*(n,i,r={}){const{reliable:s,destinationIdentities:o,topic:a}=r;yield n.publishData(i,{destinationIdentities:o,topic:a,reliable:s})})}function cA(t,e,n){const i=Array.isArray(e)?e:[e],r=QR(t).pipe(Td(([,,,a])=>e===void 0||a!==void 0&&i.includes(a)),lt(([a,c,,l])=>({payload:a,topic:l,from:c})));let s;const o=new ze(a=>{s=a});return{messageObservable:r,isSendingObservable:o,send:(a,...c)=>an(this,[a,...c],function*(l,u={}){s.next(!0);try{yield Ky(t.localParticipant,l,zn({topic:i[0]},u))}finally{s.next(!1)}})}}var zs=new WeakMap;function lA(t){return t.ignoreLegacy==!0}var uA=t=>JSON.parse(new TextDecoder().decode(t)),dA=t=>new TextEncoder().encode(JSON.stringify(t));function fA(t,e){var n,i,r,s,o,a;const c=()=>{var b,w,x;return((b=t.serverInfo)==null?void 0:b.edition)===1||!!((w=t.serverInfo)!=null&&w.version)&&qn((x=t.serverInfo)==null?void 0:x.version,"1.8.2")>0},l=new Rn,u=(n=void 0)!=null?n:Gy.CHAT,d=(i=void 0)!=null?i:aA.CHAT;let h=!1;zs.has(t)||(h=!0);const m=(r=zs.get(t))!=null?r:new Map,g=(s=m.get(u))!=null?s:new Rn;m.set(u,g),zs.set(t,m);const f=(o=void 0)!=null?o:uA;if(h){t.registerTextStreamHandler(u,(w,x)=>an(this,null,function*(){const{id:R,timestamp:_}=w.info;Sd(w).pipe(Wl((S,A)=>S+A),lt(S=>({id:R,timestamp:_,message:S,from:t.getParticipantByIdentity(x.identity)}))).subscribe({next:S=>g.next(S)})}));const{messageObservable:b}=cA(t,[d]);b.pipe(lt(w=>{const x=f(w.payload);return lA(x)?void 0:ns(zn({},x),{from:w.from})}),Td(w=>!!w),Pp(l)).subscribe(g)}const y=g.pipe(Wl((b,w)=>{if("id"in w&&b.find(x=>{var R,_;return((R=x.from)==null?void 0:R.identity)===((_=w.from)==null?void 0:_.identity)&&x.id===w.id})){const x=b.findIndex(R=>R.id===w.id);if(x>-1){const R=b[x];b[x]=ns(zn({},w),{timestamp:R.timestamp,editTimestamp:w.timestamp})}return[...b]}return[...b,w]},[]),Pp(l)),v=new wy(!1),C=(a=void 0)!=null?a:dA,T=(b,w)=>an(this,null,function*(){w||(w={}),w.topic!=null||(w.topic=u),v.next(!0);try{const x={id:(yield t.localParticipant.sendText(b,w)).id,timestamp:Date.now(),message:b,from:t.localParticipant,attachedFiles:w.attachments};g.next(x);const R=C(ns(zn({},x),{ignoreLegacy:c()}));try{yield Ky(t.localParticipant,R,{reliable:!0,topic:d})}catch(_){Ze.info("could not send message in legacy chat format",_)}return x}finally{v.next(!1)}});function k(){l.next(),l.complete(),g.complete(),zs.delete(t),t.unregisterTextStreamHandler(u)}return t.once(D.Disconnected,k),{messageObservable:y,isSendingObservable:v,send:T}}function hA(){const t=e=>an(this,null,function*(){Ze.info("Start Audio for room: ",e),yield e.startAudio()});return{className:Rs("start-audio-button"),roomAudioPlaybackAllowedObservable:eA,handleStartAudioPlayback:t}}function _p(t,e,n=!0){const i=[t.localParticipant,...Array.from(t.remoteParticipants.values())],r=[];return i.forEach(s=>{e.forEach(o=>{const a=Array.from(s.trackPublications.values()).filter(c=>c.source===o&&(!n||c.track)).map(c=>({participant:s,publication:c,source:c.source}));r.push(...a)})}),{trackReferences:r,participants:i}}function Mp(t,e,n=!1){const{sources:i,kind:r,name:s}=e;return Array.from(t.trackPublications.values()).filter(o=>(!i||i.includes(o.source))&&(!r||o.kind===r)&&(!s||o.trackName===s)&&(!n||o.track)).map(o=>({participant:t,publication:o,source:o.source}))}function pA(t,e,n){var i,r;const s=(i=n.additionalRoomEvents)!=null?i:$y,o=(r=n.onlySubscribed)!=null?r:!0,a=Array.from(new Set([D.ParticipantConnected,D.ParticipantDisconnected,D.ConnectionStateChanged,D.LocalTrackPublished,D.LocalTrackUnpublished,D.TrackPublished,D.TrackUnpublished,D.TrackSubscriptionStatusChanged,...s]).values());return Cd(t,...a).pipe(lt(c=>{const l=_p(c,e,o);return Ze.debug(`TrackReference[] was updated. (length ${l.trackReferences.length})`,l),l}),un(_p(t,e,o)))}function mA(t,e){return Wy(t,...qR).pipe(lt(n=>{const i=Mp(n,e);return Ze.debug(`TrackReference[] was updated. (length ${i.length})`,i),i}),un(Mp(t,e)))}function Zy(t,e){return new ze(n=>{const i=(...r)=>{n.next(r)};return t.on(e,i),()=>{t.off(e,i)}})}function gA(t){return Zy(t,G.TranscriptionReceived)}function vA(t){return Zy(t,G.TimeSyncUpdate).pipe(lt(([e])=>e))}function yA(t,e){if(typeof localStorage>"u"){Ze.error("Local storage is not available.");return}try{if(e){const n=Object.fromEntries(Object.entries(e).filter(([,i])=>i!==""));localStorage.setItem(t,JSON.stringify(n))}}catch(n){Ze.error(`Error setting item to local storage: ${n}`)}}function bA(t){if(typeof localStorage>"u"){Ze.error("Local storage is not available.");return}try{const e=localStorage.getItem(t);if(!e){Ze.warn(`Item with key ${t} does not exist in local storage.`);return}return JSON.parse(e)}catch(e){Ze.error(`Error getting item from local storage: ${e}`);return}}function SA(t){return{load:()=>bA(t),save:e=>yA(t,e)}}var TA=`${Uy}-user-choices`,jr={videoEnabled:!0,audioEnabled:!0,videoDeviceId:"default",audioDeviceId:"default",username:""},{load:kA,save:CA}=SA(TA);function wA(t,e=!1){e!==!0&&CA(t)}function xA(t,e=!1){var n,i,r,s,o;const a={videoEnabled:(n=t==null?void 0:t.videoEnabled)!=null?n:jr.videoEnabled,audioEnabled:(i=t==null?void 0:t.audioEnabled)!=null?i:jr.audioEnabled,videoDeviceId:(r=t==null?void 0:t.videoDeviceId)!=null?r:jr.videoDeviceId,audioDeviceId:(s=t==null?void 0:t.audioDeviceId)!=null?s:jr.audioDeviceId,username:(o=t==null?void 0:t.username)!=null?o:jr.username};if(e)return a;{const c=kA();return zn(zn({},a),c??{})}}var mc=null,gc=null,EA=0;function Op(){return mc||(mc=new Map),mc}function PA(){return gc||(gc=new WeakMap),gc}function RA(t,e){const n=PA();let i=n.get(t);return i||(i=`room_${EA++}`,n.set(t,i)),`${i}:${e}`}function AA(t,e){const n=RA(t,e),i=Op(),r=i.get(n);if(r)return r;const s=new Rn,o=[],a="lk.segment_id";t.registerTextStreamHandler(e,(l,u)=>an(this,null,function*(){var d;const h=Sd(l).pipe(Wl((g,f)=>g+f,"")),m=!!((d=l.info.attributes)!=null&&d[a]);h.subscribe(g=>{const f=o.findIndex(y=>{var v,C;return y.streamInfo.id===l.info.id||m&&((v=y.streamInfo.attributes)==null?void 0:v[a])===((C=l.info.attributes)==null?void 0:C[a])});f!==-1?(o[f]=ns(zn({},o[f]),{text:g}),s.next([...o])):(o.push({text:g,participantInfo:u,streamInfo:l.info}),s.next([...o]))})}));const c=s.asObservable().pipe(LR());return i.set(n,c),t.once(D.Disconnected,()=>{t.unregisterTextStreamHandler(e),s.complete(),Op().delete(n)}),c}p.createContext(void 0);const IA=p.createContext(void 0);function Yy(){return p.useContext(IA)}function Jy(t){const e=Yy(),n=t??e;if(!n)throw new Error("No TrackRef, make sure you are inside a TrackRefContext or pass the TrackRef explicitly");return n}const _A=p.createContext(void 0);function Xy(){return p.useContext(_A)}const Ed=p.createContext(void 0);function ri(){const t=p.useContext(Ed);if(!t)throw Error("tried to access room context outside of livekit room component");return t}function pa(){return p.useContext(Ed)}function As(t){const e=pa(),n=t??e;if(!n)throw new Error("No room provided, make sure you are inside a Room context or pass the room explicitly");return n}p.createContext(void 0);function Qy(t){var e,n,i="";if(typeof t=="string"||typeof t=="number")i+=t;else if(typeof t=="object")if(Array.isArray(t)){var r=t.length;for(e=0;e<r;e++)t[e]&&(n=Qy(t[e]))&&(i&&(i+=" "),i+=n)}else for(n in t)t[n]&&(i&&(i+=" "),i+=n);return i}function eb(){for(var t,e,n=0,i="",r=arguments.length;n<r;n++)(t=arguments[n])&&(e=Qy(t))&&(i&&(i+=" "),i+=e);return i}function MA(...t){return(...e)=>{for(const n of t)if(typeof n=="function")try{n(...e)}catch(i){console.error(i)}}}function Pd(...t){const e={...t[0]};for(let n=1;n<t.length;n++){const i=t[n];for(const r in i){const s=e[r],o=i[r];typeof s=="function"&&typeof o=="function"&&r[0]==="o"&&r[1]==="n"&&r.charCodeAt(2)>=65&&r.charCodeAt(2)<=90?e[r]=MA(s,o):(r==="className"||r==="UNSAFE_className")&&typeof s=="string"&&typeof o=="string"?e[r]=eb(s,o):e[r]=o!==void 0?o:s}}return e}function OA(t){return t!==void 0}function tb(...t){return Pd(...t.filter(OA))}function DA(t,e,n){return p.Children.map(t,i=>p.isValidElement(i)&&p.Children.only(t)?(i.props.className&&(e??(e={}),e.className=eb(i.props.className,e.className),e.style={...i.props.style,...e.style}),p.cloneElement(i,{...e,key:n})):i)}function _t(t,e,n=!0){const[i,r]=p.useState(e);return p.useEffect(()=>{if(n&&r(e),typeof window>"u"||!t)return;const s=t.subscribe(r);return()=>s.unsubscribe()},[t,n]),i}function Rd(t){const e=As(t),n=p.useMemo(()=>JR(e),[e]);return _t(n,e.state)}function nb(t={}){const e=As(t.room),[n,i]=p.useState(e.localParticipant),[r,s]=p.useState(n.isMicrophoneEnabled),[o,a]=p.useState(n.isCameraEnabled),[c,l]=p.useState(n.isScreenShareEnabled),[u,d]=p.useState(n.lastMicrophoneError),[h,m]=p.useState(n.lastCameraError),[g,f]=p.useState(void 0),[y,v]=p.useState(void 0),C=T=>{a(T.isCameraEnabled),s(T.isMicrophoneEnabled),l(T.isScreenShareEnabled),v(T.cameraTrack),f(T.microphoneTrack),d(T.participant.lastMicrophoneError),m(T.participant.lastCameraError),i(T.participant)};return p.useEffect(()=>{const T=xd(e.localParticipant).subscribe(C);return()=>T.unsubscribe()},[e]),{isMicrophoneEnabled:r,isScreenShareEnabled:c,isCameraEnabled:o,microphoneTrack:g,cameraTrack:y,lastMicrophoneError:u,lastCameraError:h,localParticipant:n}}function NA(){const t=ri(),e=p.useMemo(()=>iA(t.localParticipant),[t]);return _t(e,t.localParticipant.permissions)}function LA({kind:t,room:e,track:n,requestPermissions:i,onError:r}){const s=pa(),o=p.useMemo(()=>e??s??new wn,[e,s]),a=p.useMemo(()=>XR(t,r,i),[t,i,r]),c=_t(a,[]),[l,u]=p.useState((o==null?void 0:o.getActiveDevice(t))??"default"),{className:d,activeDeviceObservable:h,setActiveMediaDevice:m}=p.useMemo(()=>oA(t,o),[t,o,n]);return p.useEffect(()=>{const g=h.subscribe(f=>{f&&(Ze.info("setCurrentDeviceId",f),u(f))});return()=>{g==null||g.unsubscribe()}},[h]),{devices:c,className:d,activeDeviceId:l,setActiveMediaDevice:m}}function VA(t={}){const e=As(t.room),[n,i]=p.useState([]);return p.useEffect(()=>{const r=nA(e,{additionalRoomEvents:t.updateOnlyOn}).subscribe(i);return()=>r.unsubscribe()},[e,JSON.stringify(t.updateOnlyOn)]),n}function FA({room:t,props:e}){const n=As(t),{className:i,roomAudioPlaybackAllowedObservable:r,handleStartAudioPlayback:s}=p.useMemo(()=>hA(),[]),o=p.useMemo(()=>r(n),[n,r]),{canPlayAudio:a}=_t(o,{canPlayAudio:n.canPlaybackAudio});return{mergedProps:p.useMemo(()=>Pd(e,{className:i,onClick:()=>{s(n)},style:{display:a?"none":"block"}}),[e,i,a,s,n]),canPlayAudio:a}}function vc({source:t,onChange:e,initialState:n,captureOptions:i,publishOptions:r,onDeviceError:s,...o}){var a;const c=pa(),l=(a=c==null?void 0:c.localParticipant)==null?void 0:a.getTrackPublication(t),u=p.useRef(!1),{toggle:d,className:h,pendingObserver:m,enabledObserver:g}=p.useMemo(()=>c?rA(t,c,i,r,s):sA(),[c,t,JSON.stringify(i),r]),f=_t(m,!1),y=_t(g,n??!!(l!=null&&l.isEnabled));p.useEffect(()=>{e==null||e(y,u.current),u.current=!1},[y,e]),p.useEffect(()=>{n!==void 0&&(Ze.debug("forcing initial toggle state",t,n),d(n))},[]);const v=p.useMemo(()=>Pd(o,{className:h}),[o,h]),C=p.useCallback(T=>{var k;u.current=!0,d().catch(()=>u.current=!1),(k=o.onClick)==null||k.call(o,T)},[o,d]);return{toggle:d,enabled:y,pending:f,track:l,buttonProps:{...v,"aria-pressed":y,"data-lk-source":t,"data-lk-enabled":y,disabled:f,onClick:C}}}function ib(t=[M.Source.Camera,M.Source.Microphone,M.Source.ScreenShare,M.Source.ScreenShareAudio,M.Source.Unknown],e={}){const n=As(e.room),[i,r]=p.useState([]),[s,o]=p.useState([]),a=p.useMemo(()=>t.map(c=>Hy(c)?c.source:c),[JSON.stringify(t)]);return p.useEffect(()=>{const c=pA(n,a,{additionalRoomEvents:e.updateOnlyOn,onlySubscribed:e.onlySubscribed}).subscribe(({trackReferences:l,participants:u})=>{Ze.debug("setting track bundles",l,u),r(l),o(u)});return()=>c.unsubscribe()},[n,JSON.stringify(e.onlySubscribed),JSON.stringify(e.updateOnlyOn),JSON.stringify(t)]),p.useMemo(()=>{if(zy(t)){const c=UA(t,s),l=Array.from(i);return s.forEach(u=>{c.has(u.identity)&&(c.get(u.identity)??[]).forEach(d=>{if(i.find(({participant:m,publication:g})=>u.identity===m.identity&&g.source===d))return;Ze.debug(`Add ${d} placeholder for participant ${u.identity}.`);const h={participant:u,source:d};l.push(h)})}),l}else return i},[i,s,t])}function jA(t,e){const n=new Set(t);for(const i of e)n.delete(i);return n}function UA(t,e){const n=new Map;if(zy(t)){const i=t.filter(r=>r.withPlaceholder).map(r=>r.source);e.forEach(r=>{const s=r.getTrackPublications().map(a=>{var c;return(c=a.track)==null?void 0:c.source}).filter(a=>a!==void 0),o=Array.from(jA(new Set(i),new Set(s)));o.length>0&&n.set(r.identity,o)})}return n}function BA(t){const e=ri(),n=Rd(e),i=p.useMemo(()=>n===pe.Disconnected,[n]),r=p.useMemo(()=>fA(e),[e,t,i]),s=_t(r.isSendingObservable,!1),o=_t(r.messageObservable,[]);return{send:r.send,chatMessages:o,isSending:s}}function $A(t={}){const[e,n]=p.useState(xA(t.defaults,t.preventLoad??!1)),i=p.useCallback(c=>{n(l=>({...l,audioEnabled:c}))},[]),r=p.useCallback(c=>{n(l=>({...l,videoEnabled:c}))},[]),s=p.useCallback(c=>{n(l=>({...l,audioDeviceId:c}))},[]),o=p.useCallback(c=>{n(l=>({...l,videoDeviceId:c}))},[]),a=p.useCallback(c=>{n(l=>({...l,username:c}))},[]);return p.useEffect(()=>{wA(e,t.preventSave??!1)},[e,t.preventSave]),{userChoices:e,saveAudioInputEnabled:i,saveVideoInputEnabled:r,saveAudioInputDeviceId:s,saveVideoInputDeviceId:o,saveUsername:a}}const HA=t=>{const e=n=>{let i=1-Math.max(-100,Math.min(-10,n))*-1/100;return i=Math.sqrt(i),i};return t.map(n=>n===-1/0?0:e(n))},zA={bands:5,loPass:100,hiPass:600,updateInterval:32,analyserOptions:{fftSize:2048}};function WA(t,e={}){var n;const i=t instanceof M?t:(n=t==null?void 0:t.publication)==null?void 0:n.track,r={...zA,...e},[s,o]=p.useState(new Array(r.bands).fill(0));return p.useEffect(()=>{if(!i||!(i!=null&&i.mediaStream))return;const{analyser:a,cleanup:c}=Hk(i,r.analyserOptions),l=a.frequencyBinCount,u=new Float32Array(l),d=setInterval(()=>{a.getFloatFrequencyData(u);let h=new Float32Array(u.length);for(let y=0;y<u.length;y++)h[y]=u[y];h=h.slice(e.loPass,e.hiPass);const m=HA(h),g=Math.ceil(m.length/r.bands),f=[];for(let y=0;y<r.bands;y++){const v=m.slice(y*g,(y+1)*g).reduce((C,T)=>C+=T,0);f.push(v/g)}o(f)},r.updateInterval);return()=>{c(),clearInterval(d)}},[i,i==null?void 0:i.mediaStream,JSON.stringify(e)]),s}function Dp(t,e){const n=ri(),i=Xy(),r=e?n.getParticipantByIdentity(e):i,s=p.useMemo(()=>r?mA(r,{sources:t}):void 0,[r==null?void 0:r.sid,r==null?void 0:r.identity,JSON.stringify(t)]);return _t(s,[])}function qA(t){var e,n,i;const r=p.useMemo(()=>{var s;return(s=t==null?void 0:t.publication)!=null&&s.track?vA(t==null?void 0:t.publication.track):void 0},[(e=t==null?void 0:t.publication)==null?void 0:e.track]);return _t(r,{timestamp:Date.now(),rtpTimestamp:(i=(n=t==null?void 0:t.publication)==null?void 0:n.track)==null?void 0:i.rtpTimestamp})}const GA={bufferSize:100};function KA(t,e){const n={...GA,...e},[i,r]=p.useState([]),s=qA(t),o=a=>{var c;(c=n.onTranscription)==null||c.call(n,a),r(l=>ZR(l,a.map(u=>KR(u,s)),n.bufferSize))};return p.useEffect(()=>{if(!(t!=null&&t.publication))return;const a=gA(t.publication).subscribe(c=>{o(...c)});return()=>{a.unsubscribe()}},[t&&By(t),o]),{segments:i}}function ZA(t={}){const e=Xy(),n=t.participant??e,i=p.useMemo(()=>Ip(n),[n]);return _t(i,{attributes:n==null?void 0:n.attributes})}const Np="lk.agent.state";function rb(){const t=VA(),e=t.find(d=>d.kind===bi.AGENT&&!("lk.publish_on_behalf"in d.attributes)),n=t.find(d=>d.kind===bi.AGENT&&d.attributes["lk.publish_on_behalf"]===(e==null?void 0:e.identity)),i=Dp([M.Source.Microphone,M.Source.Camera],e==null?void 0:e.identity),r=Dp([M.Source.Microphone,M.Source.Camera],n==null?void 0:n.identity),s=i.find(d=>d.source===M.Source.Microphone)??r.find(d=>d.source===M.Source.Microphone),o=i.find(d=>d.source===M.Source.Camera)??r.find(d=>d.source===M.Source.Camera),{segments:a}=KA(s),c=Rd(),{attributes:l}=ZA({participant:e}),u=p.useMemo(()=>c===pe.Disconnected?"disconnected":c===pe.Connecting||!e||!(l!=null&&l[Np])?"connecting":l[Np],[l,e,c]);return{agent:e,state:u,audioTrack:s,videoTrack:o,agentTranscriptions:a,agentAttributes:l}}function YA(t){const e=ri(),n=Rd(e)===pe.Disconnected,i=p.useMemo(()=>AA(e,t),[e,t]);return{textStreams:_t(n?void 0:i,[])}}function JA(t){const{participantIdentities:e,trackSids:n}={},{textStreams:i}=YA(Gy.TRANSCRIPTION);return p.useMemo(()=>i.filter(r=>e?e.includes(r.participantInfo.identity):!0).filter(r=>{var s;return n?n.includes(((s=r.streamInfo.attributes)==null?void 0:s["lk.transcribed_track_id"])??""):!0}),[i,e,n])}const XA=p.forwardRef(function({label:t="Allow Audio",...e},n){const i=ri(),{mergedProps:r}=FA({room:i,props:e});return p.createElement("button",{ref:n,...r},t)});function sb(t,e={}){const[n,i]=p.useState(ql(t)),[r,s]=p.useState(n==null?void 0:n.isMuted),[o,a]=p.useState(n==null?void 0:n.isSubscribed),[c,l]=p.useState(n==null?void 0:n.track),[u,d]=p.useState("landscape"),h=p.useRef(),{className:m,trackObserver:g}=p.useMemo(()=>YR(t),[t.participant.sid??t.participant.identity,t.source,kd(t)&&t.publication.trackSid]);return p.useEffect(()=>{const f=g.subscribe(y=>{Ze.debug("update track",y),i(y),s(y==null?void 0:y.isMuted),a(y==null?void 0:y.isSubscribed),l(y==null?void 0:y.track)});return()=>f==null?void 0:f.unsubscribe()},[g]),p.useEffect(()=>{var f,y;return c&&(h.current&&c.detach(h.current),(f=e.element)!=null&&f.current&&!(t.participant.isLocal&&(c==null?void 0:c.kind)==="audio")&&c.attach(e.element.current)),h.current=(y=e.element)==null?void 0:y.current,()=>{h.current&&(c==null||c.detach(h.current))}},[c,e.element]),p.useEffect(()=>{var f,y;if(typeof((f=n==null?void 0:n.dimensions)==null?void 0:f.width)=="number"&&typeof((y=n==null?void 0:n.dimensions)==null?void 0:y.height)=="number"){const v=n.dimensions.width>n.dimensions.height?"landscape":"portrait";d(v)}},[n]),{publication:n,isMuted:r,isSubscribed:o,track:c,elementProps:tb(e.props,{className:m,"data-lk-local-participant":t.participant.isLocal,"data-lk-source":n==null?void 0:n.source,...(n==null?void 0:n.kind)==="video"&&{"data-lk-orientation":u}})}}var yc,Lp;function QA(){if(Lp)return yc;Lp=1;var t="Expected a function",e=NaN,n="[object Symbol]",i=/^\s+|\s+$/g,r=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,o=/^0o[0-7]+$/i,a=parseInt,c=typeof $s=="object"&&$s&&$s.Object===Object&&$s,l=typeof self=="object"&&self&&self.Object===Object&&self,u=c||l||Function("return this")(),d=Object.prototype,h=d.toString,m=Math.max,g=Math.min,f=function(){return u.Date.now()};function y(b,w,x){var R,_,S,A,O,z,K=0,se=!1,Q=!1,Z=!0;if(typeof b!="function")throw new TypeError(t);w=k(w)||0,v(x)&&(se=!!x.leading,Q="maxWait"in x,S=Q?m(k(x.maxWait)||0,w):S,Z="trailing"in x?!!x.trailing:Z);function F(V){var q=R,te=_;return R=_=void 0,K=V,A=b.apply(te,q),A}function ce(V){return K=V,O=setTimeout(W,w),se?F(V):A}function I(V){var q=V-z,te=V-K,ee=w-q;return Q?g(ee,S-te):ee}function j(V){var q=V-z,te=V-K;return z===void 0||q>=w||q<0||Q&&te>=S}function W(){var V=f();if(j(V))return Y(V);O=setTimeout(W,I(V))}function Y(V){return O=void 0,Z&&R?F(V):(R=_=void 0,A)}function J(){O!==void 0&&clearTimeout(O),K=0,R=z=_=O=void 0}function re(){return O===void 0?A:Y(f())}function oe(){var V=f(),q=j(V);if(R=arguments,_=this,z=V,q){if(O===void 0)return ce(z);if(Q)return O=setTimeout(W,w),F(z)}return O===void 0&&(O=setTimeout(W,w)),A}return oe.cancel=J,oe.flush=re,oe}function v(b){var w=typeof b;return!!b&&(w=="object"||w=="function")}function C(b){return!!b&&typeof b=="object"}function T(b){return typeof b=="symbol"||C(b)&&h.call(b)==n}function k(b){if(typeof b=="number")return b;if(T(b))return e;if(v(b)){var w=typeof b.valueOf=="function"?b.valueOf():b;b=v(w)?w+"":w}if(typeof b!="string")return b===0?b:+b;b=b.replace(i,"");var x=s.test(b);return x||o.test(b)?a(b.slice(2),x?2:8):r.test(b)?e:+b}return yc=y,yc}var e4=QA();const Vp=yy(e4);function t4(t){const e=B.useRef(t);e.current=t,B.useEffect(()=>()=>{e.current()},[])}function n4(t,e=500,n){const i=B.useRef();t4(()=>{i.current&&i.current.cancel()});const r=B.useMemo(()=>{const s=Vp(t,e,n),o=(...a)=>s(...a);return o.cancel=()=>{s.cancel()},o.isPending=()=>!!i.current,o.flush=()=>s.flush(),o},[t,e,n]);return B.useEffect(()=>{i.current=Vp(t,e,n)},[t,e,n]),r}function i4(t,e,n){const i=(l,u)=>l===u,r=t instanceof Function?t():t,[s,o]=B.useState(r),a=B.useRef(r),c=n4(o,e,n);return i(a.current,r)||(c(r),a.current=r),[s,c]}function r4({threshold:t=0,root:e=null,rootMargin:n="0%",freezeOnceVisible:i=!1,initialIsIntersecting:r=!1,onChange:s}={}){var o;const[a,c]=B.useState(null),[l,u]=B.useState(()=>({isIntersecting:r,entry:void 0})),d=B.useRef();d.current=s;const h=((o=l.entry)==null?void 0:o.isIntersecting)&&i;B.useEffect(()=>{if(!a||!("IntersectionObserver"in window)||h)return;const f=new IntersectionObserver(y=>{const v=Array.isArray(f.thresholds)?f.thresholds:[f.thresholds];y.forEach(C=>{const T=C.isIntersecting&&v.some(k=>C.intersectionRatio>=k);u({isIntersecting:T,entry:C}),d.current&&d.current(T,C)})},{threshold:t,root:e,rootMargin:n});return f.observe(a),()=>{f.disconnect()}},[a,JSON.stringify(t),e,n,h,i]);const m=B.useRef(null);B.useEffect(()=>{var f;!a&&(f=l.entry)!=null&&f.target&&!i&&!h&&m.current!==l.entry.target&&(m.current=l.entry.target,u({isIntersecting:r,entry:void 0}))},[a,l.entry,i,h,r]);const g=[c,!!l.isIntersecting,l.entry];return g.ref=g[0],g.isIntersecting=g[1],g.entry=g[2],g}const ob=p.forwardRef(function({onTrackClick:t,onClick:e,onSubscriptionStatusChanged:n,trackRef:i,manageSubscription:r,...s},o){const a=Jy(i),c=p.useRef(null);p.useImperativeHandle(o,()=>c.current);const l=r4({root:c.current}),[u]=i4(l,3e3);p.useEffect(()=>{r&&a.publication instanceof Fo&&(u==null?void 0:u.isIntersecting)===!1&&(l==null?void 0:l.isIntersecting)===!1&&a.publication.setSubscribed(!1)},[u,a,r]),p.useEffect(()=>{r&&a.publication instanceof Fo&&(l==null?void 0:l.isIntersecting)===!0&&a.publication.setSubscribed(!0)},[l,a,r]);const{elementProps:d,publication:h,isSubscribed:m}=sb(a,{element:c,props:s});p.useEffect(()=>{n==null||n(!!m)},[m,n]);const g=f=>{e==null||e(f),t==null||t({participant:a==null?void 0:a.participant,track:h})};return p.createElement("video",{ref:c,...d,muted:!0,onClick:g})}),s4=p.forwardRef(function({trackRef:t,onSubscriptionStatusChanged:e,volume:n,...i},r){const s=Jy(t),o=p.useRef(null);p.useImperativeHandle(r,()=>o.current);const{elementProps:a,isSubscribed:c,track:l,publication:u}=sb(s,{element:o,props:i});return p.useEffect(()=>{e==null||e(!!c)},[c,e]),p.useEffect(()=>{l===void 0||n===void 0||(l instanceof F0?l.setVolume(n):Ze.warn("Volume can only be set on remote audio tracks."))},[n,l]),p.useEffect(()=>{u===void 0||i.muted===void 0||(u instanceof Fo?u.setEnabled(!i.muted):Ze.warn("Can only call setEnabled on remote track publications."))},[i.muted,u,l]),p.createElement("audio",{ref:o,...a})});function o4({volume:t,muted:e}){const n=ib([M.Source.Microphone,M.Source.ScreenShareAudio,M.Source.Unknown],{updateOnlyOn:[],onlySubscribed:!0}).filter(i=>!i.participant.isLocal&&i.publication.kind===M.Kind.Audio);return p.createElement("div",{style:{display:"none"}},n.map(i=>p.createElement(s4,{key:By(i),trackRef:i,volume:t,muted:e})))}const a4=t=>{const e=[];for(let n=0;n<t;n++)e.push([n,t-1-n]);return e},Fp=t=>[[Math.floor(t/2)],[-1]],c4=(t,e,n)=>{const[i,r]=B.useState(0),[s,o]=B.useState([[]]);B.useEffect(()=>{if(t==="thinking")o(Fp(e));else if(t==="connecting"||t==="initializing"){const c=[...a4(e)];o(c)}else o(t==="listening"?Fp(e):t===void 0||t==="speaking"?[new Array(e).fill(0).map((c,l)=>l)]:[[]]);r(0)},[t,e]);const a=B.useRef(null);return B.useEffect(()=>{let c=performance.now();const l=u=>{u-c>=n&&(r(d=>d+1),c=u),a.current=requestAnimationFrame(l)};return a.current=requestAnimationFrame(l),()=>{a.current!==null&&cancelAnimationFrame(a.current)}},[n,e,t,s.length]),s[i%s.length]},l4=new Map([["connecting",2e3],["initializing",2e3],["listening",500],["thinking",150]]),u4=(t,e)=>{if(t===void 0)return 1e3;let n=l4.get(t);if(n)switch(t){case"connecting":n/=e;break}return n},ab=p.forwardRef(function({state:t,options:e,barCount:n=15,trackRef:i,children:r,...s},o){const a=tb(s,{className:"lk-audio-bar-visualizer"});let c=Yy();i&&(c=i);const l=WA(c,{bands:n,loPass:100,hiPass:200}),u=(e==null?void 0:e.minHeight)??20,d=(e==null?void 0:e.maxHeight)??100,h=c4(t,n,u4(t,n)??100);return p.createElement("div",{ref:o,...a,"data-lk-va-state":t},l.map((m,g)=>r?DA(r,{"data-lk-highlighted":h.includes(g),"data-lk-bar-index":g,className:"lk-audio-bar",style:{height:`${Math.min(d,Math.max(u,m*100+5))}%`}}):p.createElement("span",{key:g,"data-lk-highlighted":h.includes(g),"data-lk-bar-index":g,className:`lk-audio-bar ${h.includes(g)&&"lk-highlighted"}`,style:{height:`${Math.min(d,Math.max(u,m*100+5))}%`}})))});function d4(t){if(typeof document>"u")return;let e=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",e.appendChild(n),n.styleSheet?n.styleSheet.cssText=t:n.appendChild(document.createTextNode(t))}Array(12).fill(0);let Gl=1;class f4{constructor(){this.subscribe=e=>(this.subscribers.push(e),()=>{const n=this.subscribers.indexOf(e);this.subscribers.splice(n,1)}),this.publish=e=>{this.subscribers.forEach(n=>n(e))},this.addToast=e=>{this.publish(e),this.toasts=[...this.toasts,e]},this.create=e=>{var n;const{message:i,...r}=e,s=typeof(e==null?void 0:e.id)=="number"||((n=e.id)==null?void 0:n.length)>0?e.id:Gl++,o=this.toasts.find(c=>c.id===s),a=e.dismissible===void 0?!0:e.dismissible;return this.dismissedToasts.has(s)&&this.dismissedToasts.delete(s),o?this.toasts=this.toasts.map(c=>c.id===s?(this.publish({...c,...e,id:s,title:i}),{...c,...e,id:s,dismissible:a,title:i}):c):this.addToast({title:i,...r,dismissible:a,id:s}),s},this.dismiss=e=>(e?(this.dismissedToasts.add(e),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:e,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(i=>i({id:n.id,dismiss:!0}))}),e),this.message=(e,n)=>this.create({...n,message:e}),this.error=(e,n)=>this.create({...n,message:e,type:"error"}),this.success=(e,n)=>this.create({...n,type:"success",message:e}),this.info=(e,n)=>this.create({...n,type:"info",message:e}),this.warning=(e,n)=>this.create({...n,type:"warning",message:e}),this.loading=(e,n)=>this.create({...n,type:"loading",message:e}),this.promise=(e,n)=>{if(!n)return;let i;n.loading!==void 0&&(i=this.create({...n,promise:e,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const r=Promise.resolve(e instanceof Function?e():e);let s=i!==void 0,o;const a=r.then(async l=>{if(o=["resolve",l],B.isValidElement(l))s=!1,this.create({id:i,type:"default",message:l});else if(p4(l)&&!l.ok){s=!1;const d=typeof n.error=="function"?await n.error(`HTTP error! status: ${l.status}`):n.error,h=typeof n.description=="function"?await n.description(`HTTP error! status: ${l.status}`):n.description,g=typeof d=="object"&&!B.isValidElement(d)?d:{message:d};this.create({id:i,type:"error",description:h,...g})}else if(l instanceof Error){s=!1;const d=typeof n.error=="function"?await n.error(l):n.error,h=typeof n.description=="function"?await n.description(l):n.description,g=typeof d=="object"&&!B.isValidElement(d)?d:{message:d};this.create({id:i,type:"error",description:h,...g})}else if(n.success!==void 0){s=!1;const d=typeof n.success=="function"?await n.success(l):n.success,h=typeof n.description=="function"?await n.description(l):n.description,g=typeof d=="object"&&!B.isValidElement(d)?d:{message:d};this.create({id:i,type:"success",description:h,...g})}}).catch(async l=>{if(o=["reject",l],n.error!==void 0){s=!1;const u=typeof n.error=="function"?await n.error(l):n.error,d=typeof n.description=="function"?await n.description(l):n.description,m=typeof u=="object"&&!B.isValidElement(u)?u:{message:u};this.create({id:i,type:"error",description:d,...m})}}).finally(()=>{s&&(this.dismiss(i),i=void 0),n.finally==null||n.finally.call(n)}),c=()=>new Promise((l,u)=>a.then(()=>o[0]==="reject"?u(o[1]):l(o[1])).catch(u));return typeof i!="string"&&typeof i!="number"?{unwrap:c}:Object.assign(i,{unwrap:c})},this.custom=(e,n)=>{const i=(n==null?void 0:n.id)||Gl++;return this.create({jsx:e(i),id:i,...n}),i},this.getActiveToasts=()=>this.toasts.filter(e=>!this.dismissedToasts.has(e.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Pt=new f4,h4=(t,e)=>{const n=(e==null?void 0:e.id)||Gl++;return Pt.addToast({title:t,...e,id:n}),n},p4=t=>t&&typeof t=="object"&&"ok"in t&&typeof t.ok=="boolean"&&"status"in t&&typeof t.status=="number",m4=h4,g4=()=>Pt.toasts,v4=()=>Pt.getActiveToasts(),cb=Object.assign(m4,{success:Pt.success,info:Pt.info,warning:Pt.warning,error:Pt.error,custom:Pt.custom,message:Pt.message,promise:Pt.promise,dismiss:Pt.dismiss,loading:Pt.loading},{getHistory:g4,getToasts:v4});d4("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");const Mt=p.forwardRef((t,e)=>{const{alt:n,color:i="currentColor",size:r="1em",weight:s="regular",mirrored:o=!1,children:a,weights:c,...l}=t;return p.createElement("svg",{ref:e,xmlns:"http://www.w3.org/2000/svg",width:r,height:r,fill:i,viewBox:"0 0 256 256",transform:o?"scale(-1, 1)":void 0,...l},!!n&&p.createElement("title",null,n),a,c.get(s))});Mt.displayName="SSRBase";const y4=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"}))]]),Ad=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:y4}));Ad.displayName="CaretDownIcon";const b4=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"}))]]),lb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:b4}));lb.displayName="CaretUpIcon";const S4=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"}))]]),ub=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:S4}));ub.displayName="ChatTextIcon";const T4=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"}))]]),db=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:T4}));db.displayName="CheckIcon";const k4=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"}))]]),fb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:k4}));fb.displayName="MicrophoneIcon";const C4=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"}))]]),hb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:C4}));hb.displayName="MicrophoneSlashIcon";const w4=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"}))]]),pb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:w4}));pb.displayName="MonitorArrowUpIcon";const x4=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M234.39,87.29c-57.67-57.72-155.11-57.72-212.78,0-21.45,21.47-23.52,53.13-5,77a20,20,0,0,0,22.92,6.37L88.4,153.29l.45-.16A20,20,0,0,0,101,138.47l5.44-27.24a72.48,72.48,0,0,1,42.76-.09L155,138.62a20,20,0,0,0,12.14,14.49l.45.17,48.94,17.37a20,20,0,0,0,22.91-6.37C257.91,140.42,255.84,108.76,234.39,87.29Zm-12.23,59.9L178,131.5,172.24,104a20,20,0,0,0-13-14.8,96.49,96.49,0,0,0-62.94.14A20,20,0,0,0,83.4,104.24L78,131.53,33.84,147.19c-9.16-13.85-7.41-30.77,4.73-42.92C62.81,80,95.41,67.88,128,67.88S193.19,80,217.43,104.27C229.57,116.42,231.32,133.35,222.16,147.19ZM228,200a12,12,0,0,1-12,12H40a12,12,0,0,1,0-24H216A12,12,0,0,1,228,200Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M230,157a8,8,0,0,1-9.26,2.47L171.58,142a8,8,0,0,1-4.86-5.8l-6.21-29.74a7.94,7.94,0,0,0-5.14-5.9,84.39,84.39,0,0,0-55.1.13,7.93,7.93,0,0,0-5.12,6l-5.9,29.51A8,8,0,0,1,84.38,142L35.29,159.42A8,8,0,0,1,26,157c-14.6-18.83-13.26-43.83,4-61.12,53.11-53.11,142.77-53.11,195.88,0C243.23,113.12,244.57,138.12,230,157Z",opacity:"0.2"}),p.createElement("path",{d:"M231.59,90.13h0C175.44,34,80.56,34,24.41,90.13c-20,20-21.92,49.49-4.69,71.71A16,16,0,0,0,32.35,168a15.8,15.8,0,0,0,5.75-1.08l49-17.37.29-.11a16,16,0,0,0,9.75-11.73l5.9-29.52a76.52,76.52,0,0,1,49.68-.11h0l6.21,29.75a16,16,0,0,0,9.72,11.59l.29.11,49,17.39a16,16,0,0,0,18.38-5.06C253.51,139.62,251.58,110.13,231.59,90.13ZM223.67,152l-.3-.12-48.82-17.33-6.21-29.74A16,16,0,0,0,158,93a92.56,92.56,0,0,0-60.34.13,16,16,0,0,0-10.32,12l-5.9,29.51L32.63,151.86c-.1,0-.17.13-.27.17-12.33-15.91-11-36.23,3.36-50.58,25-25,58.65-37.53,92.28-37.53s67.27,12.51,92.28,37.53C234.61,115.8,236,136.12,223.67,152Zm.32,48a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,200Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M236.28,161.84a16,16,0,0,1-18.38,5.06l-49-17.39-.29-.11a16,16,0,0,1-9.72-11.59l-6.21-29.75h0a76.52,76.52,0,0,0-49.68.11l-5.9,29.52a16,16,0,0,1-9.75,11.73l-.29.11-49,17.37A15.8,15.8,0,0,1,32.35,168a16,16,0,0,1-12.63-6.14c-17.23-22.22-15.3-51.71,4.69-71.71,56.15-56.17,151-56.17,207.18,0h0C251.58,110.13,253.51,139.62,236.28,161.84ZM216,192H40a8,8,0,0,0,0,16H216a8,8,0,0,0,0-16Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M230.19,91.55h0c-55.39-55.4-149-55.4-204.38,0C6.56,110.82,4.7,139.22,21.29,160.61A14,14,0,0,0,37.39,165l49-17.38.22-.09a13.93,13.93,0,0,0,8.53-10.25l5.9-29.52a1.93,1.93,0,0,1,1.21-1.47,78.53,78.53,0,0,1,51.18-.11,1.93,1.93,0,0,1,1.22,1.45l6.21,29.75a14,14,0,0,0,8.5,10.14l.23.08,49,17.4a14,14,0,0,0,16.1-4.42C251.3,139.22,249.44,110.82,230.19,91.55Zm-5,61.71a2,2,0,0,1-2.29.58l-.22-.09-49-17.38A2,2,0,0,1,172.6,135l-6.22-29.74a14,14,0,0,0-9.06-10.35,90.53,90.53,0,0,0-59,.13,14,14,0,0,0-9,10.45L83.37,135a2,2,0,0,1-1.15,1.44L33.28,153.75l-.22.09a2,2,0,0,1-2.29-.58c-13-16.74-11.56-38.12,3.53-53.22,25.39-25.4,59.55-38.1,93.7-38.1s68.31,12.7,93.7,38.1C236.79,115.14,238.21,136.52,225.23,153.26ZM222,200a6,6,0,0,1-6,6H40a6,6,0,0,1,0-12H216A6,6,0,0,1,222,200Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M231.59,90.13h0C175.44,34,80.56,34,24.41,90.13c-20,20-21.92,49.49-4.69,71.71A16,16,0,0,0,32.35,168a15.8,15.8,0,0,0,5.75-1.08l49-17.37.29-.11a16,16,0,0,0,9.75-11.73l5.9-29.52a76.52,76.52,0,0,1,49.68-.11h0l6.21,29.75a16,16,0,0,0,9.72,11.59l.29.11,49,17.39a16,16,0,0,0,18.38-5.06C253.51,139.62,251.58,110.13,231.59,90.13ZM223.67,152l-.3-.12-48.82-17.33-6.21-29.74A16,16,0,0,0,158,93a92.56,92.56,0,0,0-60.34.13,16,16,0,0,0-10.32,12l-5.9,29.51L32.63,151.86c-.1,0-.17.13-.27.17-12.33-15.91-11-36.23,3.36-50.58,25-25,58.65-37.53,92.28-37.53s67.27,12.51,92.28,37.53C234.61,115.8,236,136.12,223.67,152Zm.32,48a8,8,0,0,1-8,8H40a8,8,0,0,1,0-16H216A8,8,0,0,1,224,200Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M228.79,93C174.15,38.34,81.85,38.34,27.21,93,8.69,111.5,6.9,138.81,22.85,159.39a12,12,0,0,0,13.83,3.77l49-17.39.15-.06a12,12,0,0,0,7.31-8.79l5.9-29.51a3.93,3.93,0,0,1,2.51-3,80.59,80.59,0,0,1,52.5-.12,3.94,3.94,0,0,1,2.52,2.94L162.81,137a12,12,0,0,0,7.29,8.69l.15.06,49.07,17.41a12,12,0,0,0,13.83-3.77C249.1,138.81,247.31,111.5,228.79,93Zm-2,61.51a4,4,0,0,1-4.61,1.21l-.15-.06L173,138.24a4,4,0,0,1-2.37-2.87l-6.21-29.75a12,12,0,0,0-7.75-8.87,88.63,88.63,0,0,0-57.74.14,12,12,0,0,0-7.72,9l-5.9,29.51A4,4,0,0,1,83,138.26l-49,17.38-.15.06a4,4,0,0,1-4.61-1.21c-13.42-17.3-11.9-40.26,3.69-55.85C58.65,72.85,93.33,60,128,60s69.35,12.89,95.13,38.68C238.71,114.23,240.24,137.19,226.82,154.49ZM220,200a4,4,0,0,1-4,4H40a4,4,0,0,1,0-8H216A4,4,0,0,1,220,200Z"}))]]),mb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:x4}));mb.displayName="PhoneDisconnectIcon";const E4=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"}))]]),Id=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:E4}));Id.displayName="SpinnerIcon";const P4=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"}))]]),gb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:P4}));gb.displayName="VideoCameraIcon";const R4=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"}))]]),vb=p.forwardRef((t,e)=>p.createElement(Mt,{ref:e,...t,weights:R4}));vb.displayName="VideoCameraSlashIcon";const A4=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M240.26,186.1,152.81,34.23h0a28.74,28.74,0,0,0-49.62,0L15.74,186.1a27.45,27.45,0,0,0,0,27.71A28.31,28.31,0,0,0,40.55,228h174.9a28.31,28.31,0,0,0,24.79-14.19A27.45,27.45,0,0,0,240.26,186.1Zm-20.8,15.7a4.46,4.46,0,0,1-4,2.2H40.55a4.46,4.46,0,0,1-4-2.2,3.56,3.56,0,0,1,0-3.73L124,46.2a4.77,4.77,0,0,1,8,0l87.44,151.87A3.56,3.56,0,0,1,219.46,201.8ZM116,136V104a12,12,0,0,1,24,0v32a12,12,0,0,1-24,0Zm28,40a16,16,0,1,1-16-16A16,16,0,0,1,144,176Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M215.46,216H40.54C27.92,216,20,202.79,26.13,192.09L113.59,40.22c6.3-11,22.52-11,28.82,0l87.46,151.87C236,202.79,228.08,216,215.46,216Z",opacity:"0.2"}),p.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM120,104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm8,88a12,12,0,1,1,12-12A12,12,0,0,1,128,192Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M235.07,189.09,147.61,37.22h0a22.75,22.75,0,0,0-39.22,0L20.93,189.09a21.53,21.53,0,0,0,0,21.72A22.35,22.35,0,0,0,40.55,222h174.9a22.35,22.35,0,0,0,19.6-11.19A21.53,21.53,0,0,0,235.07,189.09ZM224.66,204.8a10.46,10.46,0,0,1-9.21,5.2H40.55a10.46,10.46,0,0,1-9.21-5.2,9.51,9.51,0,0,1,0-9.72L118.79,43.21a10.75,10.75,0,0,1,18.42,0l87.46,151.87A9.51,9.51,0,0,1,224.66,204.8ZM122,144V104a6,6,0,0,1,12,0v40a6,6,0,0,1-12,0Zm16,36a10,10,0,1,1-10-10A10,10,0,0,1,138,180Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M236.8,188.09,149.35,36.22h0a24.76,24.76,0,0,0-42.7,0L19.2,188.09a23.51,23.51,0,0,0,0,23.72A24.35,24.35,0,0,0,40.55,224h174.9a24.35,24.35,0,0,0,21.33-12.19A23.51,23.51,0,0,0,236.8,188.09ZM222.93,203.8a8.5,8.5,0,0,1-7.48,4.2H40.55a8.5,8.5,0,0,1-7.48-4.2,7.59,7.59,0,0,1,0-7.72L120.52,44.21a8.75,8.75,0,0,1,15,0l87.45,151.87A7.59,7.59,0,0,1,222.93,203.8ZM120,144V104a8,8,0,0,1,16,0v40a8,8,0,0,1-16,0Zm20,36a12,12,0,1,1-12-12A12,12,0,0,1,140,180Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M233.34,190.09,145.88,38.22h0a20.75,20.75,0,0,0-35.76,0L22.66,190.09a19.52,19.52,0,0,0,0,19.71A20.36,20.36,0,0,0,40.54,220H215.46a20.36,20.36,0,0,0,17.86-10.2A19.52,19.52,0,0,0,233.34,190.09ZM226.4,205.8a12.47,12.47,0,0,1-10.94,6.2H40.54a12.47,12.47,0,0,1-10.94-6.2,11.45,11.45,0,0,1,0-11.72L117.05,42.21a12.76,12.76,0,0,1,21.9,0L226.4,194.08A11.45,11.45,0,0,1,226.4,205.8ZM124,144V104a4,4,0,0,1,8,0v40a4,4,0,0,1-8,0Zm12,36a8,8,0,1,1-8-8A8,8,0,0,1,136,180Z"}))]]),I4=B.createContext({color:"currentColor",size:"1em",weight:"regular",mirrored:!1}),yb=p.forwardRef((t,e)=>{const{alt:n,color:i,size:r,weight:s,mirrored:o,children:a,weights:c,...l}=t,{color:u="currentColor",size:d,weight:h="regular",mirrored:m=!1,...g}=p.useContext(I4);return p.createElement("svg",{ref:e,xmlns:"http://www.w3.org/2000/svg",width:r??d,height:r??d,fill:i??u,viewBox:"0 0 256 256",transform:o||m?"scale(-1, 1)":void 0,...g,...l},!!n&&p.createElement("title",null,n),a,c.get(s??h))});yb.displayName="IconBase";const bb=p.forwardRef((t,e)=>p.createElement(yb,{ref:e,...t,weights:A4}));bb.displayName="WarningIcon";const _d="-",_4=t=>{const e=O4(t),{conflictingClassGroups:n,conflictingClassGroupModifiers:i}=t;return{getClassGroupId:o=>{const a=o.split(_d);return a[0]===""&&a.length!==1&&a.shift(),Sb(a,e)||M4(o)},getConflictingClassGroupIds:(o,a)=>{const c=n[o]||[];return a&&i[o]?[...c,...i[o]]:c}}},Sb=(t,e)=>{var o;if(t.length===0)return e.classGroupId;const n=t[0],i=e.nextPart.get(n),r=i?Sb(t.slice(1),i):void 0;if(r)return r;if(e.validators.length===0)return;const s=t.join(_d);return(o=e.validators.find(({validator:a})=>a(s)))==null?void 0:o.classGroupId},jp=/^\[(.+)\]$/,M4=t=>{if(jp.test(t)){const e=jp.exec(t)[1],n=e==null?void 0:e.substring(0,e.indexOf(":"));if(n)return"arbitrary.."+n}},O4=t=>{const{theme:e,classGroups:n}=t,i={nextPart:new Map,validators:[]};for(const r in n)Kl(n[r],i,r,e);return i},Kl=(t,e,n,i)=>{t.forEach(r=>{if(typeof r=="string"){const s=r===""?e:Up(e,r);s.classGroupId=n;return}if(typeof r=="function"){if(D4(r)){Kl(r(i),e,n,i);return}e.validators.push({validator:r,classGroupId:n});return}Object.entries(r).forEach(([s,o])=>{Kl(o,Up(e,s),n,i)})})},Up=(t,e)=>{let n=t;return e.split(_d).forEach(i=>{n.nextPart.has(i)||n.nextPart.set(i,{nextPart:new Map,validators:[]}),n=n.nextPart.get(i)}),n},D4=t=>t.isThemeGetter,N4=t=>{if(t<1)return{get:()=>{},set:()=>{}};let e=0,n=new Map,i=new Map;const r=(s,o)=>{n.set(s,o),e++,e>t&&(e=0,i=n,n=new Map)};return{get(s){let o=n.get(s);if(o!==void 0)return o;if((o=i.get(s))!==void 0)return r(s,o),o},set(s,o){n.has(s)?n.set(s,o):r(s,o)}}},Zl="!",Yl=":",L4=Yl.length,V4=t=>{const{prefix:e,experimentalParseClassName:n}=t;let i=r=>{const s=[];let o=0,a=0,c=0,l;for(let g=0;g<r.length;g++){let f=r[g];if(o===0&&a===0){if(f===Yl){s.push(r.slice(c,g)),c=g+L4;continue}if(f==="/"){l=g;continue}}f==="["?o++:f==="]"?o--:f==="("?a++:f===")"&&a--}const u=s.length===0?r:r.substring(c),d=F4(u),h=d!==u,m=l&&l>c?l-c:void 0;return{modifiers:s,hasImportantModifier:h,baseClassName:d,maybePostfixModifierPosition:m}};if(e){const r=e+Yl,s=i;i=o=>o.startsWith(r)?s(o.substring(r.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:o,maybePostfixModifierPosition:void 0}}if(n){const r=i;i=s=>n({className:s,parseClassName:r})}return i},F4=t=>t.endsWith(Zl)?t.substring(0,t.length-1):t.startsWith(Zl)?t.substring(1):t,j4=t=>{const e=Object.fromEntries(t.orderSensitiveModifiers.map(i=>[i,!0]));return i=>{if(i.length<=1)return i;const r=[];let s=[];return i.forEach(o=>{o[0]==="["||e[o]?(r.push(...s.sort(),o),s=[]):s.push(o)}),r.push(...s.sort()),r}},U4=t=>({cache:N4(t.cacheSize),parseClassName:V4(t),sortModifiers:j4(t),..._4(t)}),B4=/\s+/,$4=(t,e)=>{const{parseClassName:n,getClassGroupId:i,getConflictingClassGroupIds:r,sortModifiers:s}=e,o=[],a=t.trim().split(B4);let c="";for(let l=a.length-1;l>=0;l-=1){const u=a[l],{isExternal:d,modifiers:h,hasImportantModifier:m,baseClassName:g,maybePostfixModifierPosition:f}=n(u);if(d){c=u+(c.length>0?" "+c:c);continue}let y=!!f,v=i(y?g.substring(0,f):g);if(!v){if(!y){c=u+(c.length>0?" "+c:c);continue}if(v=i(g),!v){c=u+(c.length>0?" "+c:c);continue}y=!1}const C=s(h).join(":"),T=m?C+Zl:C,k=T+v;if(o.includes(k))continue;o.push(k);const b=r(v,y);for(let w=0;w<b.length;++w){const x=b[w];o.push(T+x)}c=u+(c.length>0?" "+c:c)}return c};function H4(){let t=0,e,n,i="";for(;t<arguments.length;)(e=arguments[t++])&&(n=Tb(e))&&(i&&(i+=" "),i+=n);return i}const Tb=t=>{if(typeof t=="string")return t;let e,n="";for(let i=0;i<t.length;i++)t[i]&&(e=Tb(t[i]))&&(n&&(n+=" "),n+=e);return n};function z4(t,...e){let n,i,r,s=o;function o(c){const l=e.reduce((u,d)=>d(u),t());return n=U4(l),i=n.cache.get,r=n.cache.set,s=a,a(c)}function a(c){const l=i(c);if(l)return l;const u=$4(c,n);return r(c,u),u}return function(){return s(H4.apply(null,arguments))}}const Ye=t=>{const e=n=>n[t]||[];return e.isThemeGetter=!0,e},kb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Cb=/^\((?:(\w[\w-]*):)?(.+)\)$/i,W4=/^\d+\/\d+$/,q4=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,G4=/\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$/,K4=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Z4=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Y4=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Oi=t=>W4.test(t),de=t=>!!t&&!Number.isNaN(Number(t)),Ln=t=>!!t&&Number.isInteger(Number(t)),bc=t=>t.endsWith("%")&&de(t.slice(0,-1)),fn=t=>q4.test(t),J4=()=>!0,X4=t=>G4.test(t)&&!K4.test(t),wb=()=>!1,Q4=t=>Z4.test(t),eI=t=>Y4.test(t),tI=t=>!ne(t)&&!ie(t),nI=t=>kr(t,Pb,wb),ne=t=>kb.test(t),li=t=>kr(t,Rb,X4),Sc=t=>kr(t,aI,de),Bp=t=>kr(t,xb,wb),iI=t=>kr(t,Eb,eI),Ws=t=>kr(t,Ab,Q4),ie=t=>Cb.test(t),Ur=t=>Cr(t,Rb),rI=t=>Cr(t,cI),$p=t=>Cr(t,xb),sI=t=>Cr(t,Pb),oI=t=>Cr(t,Eb),qs=t=>Cr(t,Ab,!0),kr=(t,e,n)=>{const i=kb.exec(t);return i?i[1]?e(i[1]):n(i[2]):!1},Cr=(t,e,n=!1)=>{const i=Cb.exec(t);return i?i[1]?e(i[1]):n:!1},xb=t=>t==="position"||t==="percentage",Eb=t=>t==="image"||t==="url",Pb=t=>t==="length"||t==="size"||t==="bg-size",Rb=t=>t==="length",aI=t=>t==="number",cI=t=>t==="family-name",Ab=t=>t==="shadow",lI=()=>{const t=Ye("color"),e=Ye("font"),n=Ye("text"),i=Ye("font-weight"),r=Ye("tracking"),s=Ye("leading"),o=Ye("breakpoint"),a=Ye("container"),c=Ye("spacing"),l=Ye("radius"),u=Ye("shadow"),d=Ye("inset-shadow"),h=Ye("text-shadow"),m=Ye("drop-shadow"),g=Ye("blur"),f=Ye("perspective"),y=Ye("aspect"),v=Ye("ease"),C=Ye("animate"),T=()=>["auto","avoid","all","avoid-page","page","left","right","column"],k=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],b=()=>[...k(),ie,ne],w=()=>["auto","hidden","clip","visible","scroll"],x=()=>["auto","contain","none"],R=()=>[ie,ne,c],_=()=>[Oi,"full","auto",...R()],S=()=>[Ln,"none","subgrid",ie,ne],A=()=>["auto",{span:["full",Ln,ie,ne]},Ln,ie,ne],O=()=>[Ln,"auto",ie,ne],z=()=>["auto","min","max","fr",ie,ne],K=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],se=()=>["start","end","center","stretch","center-safe","end-safe"],Q=()=>["auto",...R()],Z=()=>[Oi,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...R()],F=()=>[t,ie,ne],ce=()=>[...k(),$p,Bp,{position:[ie,ne]}],I=()=>["no-repeat",{repeat:["","x","y","space","round"]}],j=()=>["auto","cover","contain",sI,nI,{size:[ie,ne]}],W=()=>[bc,Ur,li],Y=()=>["","none","full",l,ie,ne],J=()=>["",de,Ur,li],re=()=>["solid","dashed","dotted","double"],oe=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],V=()=>[de,bc,$p,Bp],q=()=>["","none",g,ie,ne],te=()=>["none",de,ie,ne],ee=()=>["none",de,ie,ne],ae=()=>[de,ie,ne],H=()=>[Oi,"full",...R()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[fn],breakpoint:[fn],color:[J4],container:[fn],"drop-shadow":[fn],ease:["in","out","in-out"],font:[tI],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[fn],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[fn],shadow:[fn],spacing:["px",de],text:[fn],"text-shadow":[fn],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Oi,ne,ie,y]}],container:["container"],columns:[{columns:[de,ne,ie,a]}],"break-after":[{"break-after":T()}],"break-before":[{"break-before":T()}],"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:b()}],overflow:[{overflow:w()}],"overflow-x":[{"overflow-x":w()}],"overflow-y":[{"overflow-y":w()}],overscroll:[{overscroll:x()}],"overscroll-x":[{"overscroll-x":x()}],"overscroll-y":[{"overscroll-y":x()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:_()}],"inset-x":[{"inset-x":_()}],"inset-y":[{"inset-y":_()}],start:[{start:_()}],end:[{end:_()}],top:[{top:_()}],right:[{right:_()}],bottom:[{bottom:_()}],left:[{left:_()}],visibility:["visible","invisible","collapse"],z:[{z:[Ln,"auto",ie,ne]}],basis:[{basis:[Oi,"full","auto",a,...R()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[de,Oi,"auto","initial","none",ne]}],grow:[{grow:["",de,ie,ne]}],shrink:[{shrink:["",de,ie,ne]}],order:[{order:[Ln,"first","last","none",ie,ne]}],"grid-cols":[{"grid-cols":S()}],"col-start-end":[{col:A()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":S()}],"row-start-end":[{row:A()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":z()}],"auto-rows":[{"auto-rows":z()}],gap:[{gap:R()}],"gap-x":[{"gap-x":R()}],"gap-y":[{"gap-y":R()}],"justify-content":[{justify:[...K(),"normal"]}],"justify-items":[{"justify-items":[...se(),"normal"]}],"justify-self":[{"justify-self":["auto",...se()]}],"align-content":[{content:["normal",...K()]}],"align-items":[{items:[...se(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...se(),{baseline:["","last"]}]}],"place-content":[{"place-content":K()}],"place-items":[{"place-items":[...se(),"baseline"]}],"place-self":[{"place-self":["auto",...se()]}],p:[{p:R()}],px:[{px:R()}],py:[{py:R()}],ps:[{ps:R()}],pe:[{pe:R()}],pt:[{pt:R()}],pr:[{pr:R()}],pb:[{pb:R()}],pl:[{pl:R()}],m:[{m:Q()}],mx:[{mx:Q()}],my:[{my:Q()}],ms:[{ms:Q()}],me:[{me:Q()}],mt:[{mt:Q()}],mr:[{mr:Q()}],mb:[{mb:Q()}],ml:[{ml:Q()}],"space-x":[{"space-x":R()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":R()}],"space-y-reverse":["space-y-reverse"],size:[{size:Z()}],w:[{w:[a,"screen",...Z()]}],"min-w":[{"min-w":[a,"screen","none",...Z()]}],"max-w":[{"max-w":[a,"screen","none","prose",{screen:[o]},...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,Ur,li]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[i,ie,Sc]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",bc,ne]}],"font-family":[{font:[rI,ne,e]}],"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,ie,ne]}],"line-clamp":[{"line-clamp":[de,"none",ie,Sc]}],leading:[{leading:[s,...R()]}],"list-image":[{"list-image":["none",ie,ne]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",ie,ne]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:F()}],"text-color":[{text:F()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...re(),"wavy"]}],"text-decoration-thickness":[{decoration:[de,"from-font","auto",ie,li]}],"text-decoration-color":[{decoration:F()}],"underline-offset":[{"underline-offset":[de,"auto",ie,ne]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:R()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ie,ne]}],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",ie,ne]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ce()}],"bg-repeat":[{bg:I()}],"bg-size":[{bg:j()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ln,ie,ne],radial:["",ie,ne],conic:[Ln,ie,ne]},oI,iI]}],"bg-color":[{bg:F()}],"gradient-from-pos":[{from:W()}],"gradient-via-pos":[{via:W()}],"gradient-to-pos":[{to:W()}],"gradient-from":[{from:F()}],"gradient-via":[{via:F()}],"gradient-to":[{to:F()}],rounded:[{rounded:Y()}],"rounded-s":[{"rounded-s":Y()}],"rounded-e":[{"rounded-e":Y()}],"rounded-t":[{"rounded-t":Y()}],"rounded-r":[{"rounded-r":Y()}],"rounded-b":[{"rounded-b":Y()}],"rounded-l":[{"rounded-l":Y()}],"rounded-ss":[{"rounded-ss":Y()}],"rounded-se":[{"rounded-se":Y()}],"rounded-ee":[{"rounded-ee":Y()}],"rounded-es":[{"rounded-es":Y()}],"rounded-tl":[{"rounded-tl":Y()}],"rounded-tr":[{"rounded-tr":Y()}],"rounded-br":[{"rounded-br":Y()}],"rounded-bl":[{"rounded-bl":Y()}],"border-w":[{border:J()}],"border-w-x":[{"border-x":J()}],"border-w-y":[{"border-y":J()}],"border-w-s":[{"border-s":J()}],"border-w-e":[{"border-e":J()}],"border-w-t":[{"border-t":J()}],"border-w-r":[{"border-r":J()}],"border-w-b":[{"border-b":J()}],"border-w-l":[{"border-l":J()}],"divide-x":[{"divide-x":J()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":J()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...re(),"hidden","none"]}],"divide-style":[{divide:[...re(),"hidden","none"]}],"border-color":[{border:F()}],"border-color-x":[{"border-x":F()}],"border-color-y":[{"border-y":F()}],"border-color-s":[{"border-s":F()}],"border-color-e":[{"border-e":F()}],"border-color-t":[{"border-t":F()}],"border-color-r":[{"border-r":F()}],"border-color-b":[{"border-b":F()}],"border-color-l":[{"border-l":F()}],"divide-color":[{divide:F()}],"outline-style":[{outline:[...re(),"none","hidden"]}],"outline-offset":[{"outline-offset":[de,ie,ne]}],"outline-w":[{outline:["",de,Ur,li]}],"outline-color":[{outline:F()}],shadow:[{shadow:["","none",u,qs,Ws]}],"shadow-color":[{shadow:F()}],"inset-shadow":[{"inset-shadow":["none",d,qs,Ws]}],"inset-shadow-color":[{"inset-shadow":F()}],"ring-w":[{ring:J()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:F()}],"ring-offset-w":[{"ring-offset":[de,li]}],"ring-offset-color":[{"ring-offset":F()}],"inset-ring-w":[{"inset-ring":J()}],"inset-ring-color":[{"inset-ring":F()}],"text-shadow":[{"text-shadow":["none",h,qs,Ws]}],"text-shadow-color":[{"text-shadow":F()}],opacity:[{opacity:[de,ie,ne]}],"mix-blend":[{"mix-blend":[...oe(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":oe()}],"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":[de]}],"mask-image-linear-from-pos":[{"mask-linear-from":V()}],"mask-image-linear-to-pos":[{"mask-linear-to":V()}],"mask-image-linear-from-color":[{"mask-linear-from":F()}],"mask-image-linear-to-color":[{"mask-linear-to":F()}],"mask-image-t-from-pos":[{"mask-t-from":V()}],"mask-image-t-to-pos":[{"mask-t-to":V()}],"mask-image-t-from-color":[{"mask-t-from":F()}],"mask-image-t-to-color":[{"mask-t-to":F()}],"mask-image-r-from-pos":[{"mask-r-from":V()}],"mask-image-r-to-pos":[{"mask-r-to":V()}],"mask-image-r-from-color":[{"mask-r-from":F()}],"mask-image-r-to-color":[{"mask-r-to":F()}],"mask-image-b-from-pos":[{"mask-b-from":V()}],"mask-image-b-to-pos":[{"mask-b-to":V()}],"mask-image-b-from-color":[{"mask-b-from":F()}],"mask-image-b-to-color":[{"mask-b-to":F()}],"mask-image-l-from-pos":[{"mask-l-from":V()}],"mask-image-l-to-pos":[{"mask-l-to":V()}],"mask-image-l-from-color":[{"mask-l-from":F()}],"mask-image-l-to-color":[{"mask-l-to":F()}],"mask-image-x-from-pos":[{"mask-x-from":V()}],"mask-image-x-to-pos":[{"mask-x-to":V()}],"mask-image-x-from-color":[{"mask-x-from":F()}],"mask-image-x-to-color":[{"mask-x-to":F()}],"mask-image-y-from-pos":[{"mask-y-from":V()}],"mask-image-y-to-pos":[{"mask-y-to":V()}],"mask-image-y-from-color":[{"mask-y-from":F()}],"mask-image-y-to-color":[{"mask-y-to":F()}],"mask-image-radial":[{"mask-radial":[ie,ne]}],"mask-image-radial-from-pos":[{"mask-radial-from":V()}],"mask-image-radial-to-pos":[{"mask-radial-to":V()}],"mask-image-radial-from-color":[{"mask-radial-from":F()}],"mask-image-radial-to-color":[{"mask-radial-to":F()}],"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":k()}],"mask-image-conic-pos":[{"mask-conic":[de]}],"mask-image-conic-from-pos":[{"mask-conic-from":V()}],"mask-image-conic-to-pos":[{"mask-conic-to":V()}],"mask-image-conic-from-color":[{"mask-conic-from":F()}],"mask-image-conic-to-color":[{"mask-conic-to":F()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ce()}],"mask-repeat":[{mask:I()}],"mask-size":[{mask:j()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",ie,ne]}],filter:[{filter:["","none",ie,ne]}],blur:[{blur:q()}],brightness:[{brightness:[de,ie,ne]}],contrast:[{contrast:[de,ie,ne]}],"drop-shadow":[{"drop-shadow":["","none",m,qs,Ws]}],"drop-shadow-color":[{"drop-shadow":F()}],grayscale:[{grayscale:["",de,ie,ne]}],"hue-rotate":[{"hue-rotate":[de,ie,ne]}],invert:[{invert:["",de,ie,ne]}],saturate:[{saturate:[de,ie,ne]}],sepia:[{sepia:["",de,ie,ne]}],"backdrop-filter":[{"backdrop-filter":["","none",ie,ne]}],"backdrop-blur":[{"backdrop-blur":q()}],"backdrop-brightness":[{"backdrop-brightness":[de,ie,ne]}],"backdrop-contrast":[{"backdrop-contrast":[de,ie,ne]}],"backdrop-grayscale":[{"backdrop-grayscale":["",de,ie,ne]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[de,ie,ne]}],"backdrop-invert":[{"backdrop-invert":["",de,ie,ne]}],"backdrop-opacity":[{"backdrop-opacity":[de,ie,ne]}],"backdrop-saturate":[{"backdrop-saturate":[de,ie,ne]}],"backdrop-sepia":[{"backdrop-sepia":["",de,ie,ne]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":R()}],"border-spacing-x":[{"border-spacing-x":R()}],"border-spacing-y":[{"border-spacing-y":R()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",ie,ne]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[de,"initial",ie,ne]}],ease:[{ease:["linear","initial",v,ie,ne]}],delay:[{delay:[de,ie,ne]}],animate:[{animate:["none",C,ie,ne]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[f,ie,ne]}],"perspective-origin":[{"perspective-origin":b()}],rotate:[{rotate:te()}],"rotate-x":[{"rotate-x":te()}],"rotate-y":[{"rotate-y":te()}],"rotate-z":[{"rotate-z":te()}],scale:[{scale:ee()}],"scale-x":[{"scale-x":ee()}],"scale-y":[{"scale-y":ee()}],"scale-z":[{"scale-z":ee()}],"scale-3d":["scale-3d"],skew:[{skew:ae()}],"skew-x":[{"skew-x":ae()}],"skew-y":[{"skew-y":ae()}],transform:[{transform:[ie,ne,"","none","gpu","cpu"]}],"transform-origin":[{origin:b()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:H()}],"translate-x":[{"translate-x":H()}],"translate-y":[{"translate-y":H()}],"translate-z":[{"translate-z":H()}],"translate-none":["translate-none"],accent:[{accent:F()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:F()}],"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",ie,ne]}],"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":R()}],"scroll-mx":[{"scroll-mx":R()}],"scroll-my":[{"scroll-my":R()}],"scroll-ms":[{"scroll-ms":R()}],"scroll-me":[{"scroll-me":R()}],"scroll-mt":[{"scroll-mt":R()}],"scroll-mr":[{"scroll-mr":R()}],"scroll-mb":[{"scroll-mb":R()}],"scroll-ml":[{"scroll-ml":R()}],"scroll-p":[{"scroll-p":R()}],"scroll-px":[{"scroll-px":R()}],"scroll-py":[{"scroll-py":R()}],"scroll-ps":[{"scroll-ps":R()}],"scroll-pe":[{"scroll-pe":R()}],"scroll-pt":[{"scroll-pt":R()}],"scroll-pr":[{"scroll-pr":R()}],"scroll-pb":[{"scroll-pb":R()}],"scroll-pl":[{"scroll-pl":R()}],"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",ie,ne]}],fill:[{fill:["none",...F()]}],"stroke-w":[{stroke:[de,Ur,li,Sc]}],stroke:[{stroke:["none",...F()]}],"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"]}},uI=z4(lI);function ue(...t){return uI(Jm.clsx(t))}function dI(t,e){return{id:t.streamInfo.id,timestamp:t.streamInfo.timestamp,message:t.text,from:t.participantInfo.identity===e.localParticipant.identity?e.localParticipant:Array.from(e.remoteParticipants.values()).find(n=>n.identity===t.participantInfo.identity)}}const fI=ta.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 hI({className:t,variant:e,...n}){return E.jsx("div",{"data-slot":"alert",role:"alert",className:ue(fI({variant:e}),t),...n})}function pI({className:t,...e}){return E.jsx("div",{"data-slot":"alert-title",className:ue("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",t),...e})}function mI({className:t,...e}){return E.jsx("div",{"data-slot":"alert-description",className:ue("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",t),...e})}function Jl(t){return cb.custom(e=>E.jsx(gI,{id:e,title:t.title,description:t.description}),{duration:1e4})}function gI(t){const{title:e,id:n,description:i}=t;return E.jsxs(hI,{onClick:()=>cb.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:[E.jsx(bb,{weight:"bold",className:"text-yellow-400 mt-1 flex-shrink-0",size:24}),E.jsxs("div",{className:"flex flex-col",children:[E.jsx(pI,{className:"text-base font-semibold text-white mb-1",children:e}),E.jsx(mI,{className:"text-sm text-gray-300 leading-snug",children:i})]})]})}function Hp(t,e){if(typeof t=="function")return t(e);t!=null&&(t.current=e)}function Ib(...t){return e=>{let n=!1;const i=t.map(r=>{const s=Hp(r,e);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let r=0;r<i.length;r++){const s=i[r];typeof s=="function"?s():Hp(t[r],null)}}}}function st(...t){return p.useCallback(Ib(...t),t)}function gs(t){const e=yI(t),n=p.forwardRef((i,r)=>{const{children:s,...o}=i,a=p.Children.toArray(s),c=a.find(SI);if(c){const l=c.props.children,u=a.map(d=>d===c?p.Children.count(l)>1?p.Children.only(null):p.isValidElement(l)?l.props.children:null:d);return E.jsx(e,{...o,ref:r,children:p.isValidElement(l)?p.cloneElement(l,void 0,u):null})}return E.jsx(e,{...o,ref:r,children:s})});return n.displayName=`${t}.Slot`,n}var vI=gs("Slot");function yI(t){const e=p.forwardRef((n,i)=>{const{children:r,...s}=n;if(p.isValidElement(r)){const o=kI(r),a=TI(s,r.props);return r.type!==p.Fragment&&(a.ref=i?Ib(i,o):o),p.cloneElement(r,a)}return p.Children.count(r)>1?p.Children.only(null):null});return e.displayName=`${t}.SlotClone`,e}var bI=Symbol("radix.slottable");function SI(t){return p.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===bI}function TI(t,e){const n={...e};for(const i in e){const r=t[i],s=e[i];/^on[A-Z]/.test(i)?r&&s?n[i]=(...a)=>{const c=s(...a);return r(...a),c}:r&&(n[i]=r):i==="style"?n[i]={...r,...s}:i==="className"&&(n[i]=[r,s].filter(Boolean).join(" "))}return{...t,...n}}function kI(t){var i,r;let e=(i=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:i.get,n=e&&"isReactWarning"in e&&e.isReactWarning;return n?t.ref:(e=(r=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:r.get,n=e&&"isReactWarning"in e&&e.isReactWarning,n?t.props.ref:t.props.ref||t.ref)}const CI=ta.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 _b({className:t,variant:e,size:n,asChild:i=!1,...r}){const s=i?vI:"button";return E.jsx(s,{"data-slot":"button",className:ue(CI({variant:e,size:n,className:t})),...r})}function wI({onSend:t,className:e,disabled:n,...i}){const r=B.useRef(null),[s,o]=B.useState(""),a=l=>{var u,d;l.preventDefault(),(u=i.onSubmit)==null||u.call(i,l),t==null||t(s),o(""),(d=r.current)==null||d.focus({preventScroll:!0})},c=n||s.trim().length===0;return E.jsxs("form",{...i,onSubmit:a,className:ue("flex items-center rounded-md pl-1 text-sm",e),children:[E.jsx("input",{ref:r,type:"text",className:"flex-1 focus:outline-none",placeholder:"Type something...",value:s,onChange:l=>o(l.target.value),disabled:n}),E.jsx(_b,{size:"sm",type:"submit",variant:c?"secondary":"primary",disabled:c,className:"font-mono",children:"SEND"})]})}function $e(t,e,{checkForDefaultPrevented:n=!0}={}){return function(r){if(t==null||t(r),n===!1||!r.defaultPrevented)return e==null?void 0:e(r)}}var gt=globalThis!=null&&globalThis.document?p.useLayoutEffect:()=>{},xI=p[" useInsertionEffect ".trim().toString()]||gt;function Xl({prop:t,defaultProp:e,onChange:n=()=>{},caller:i}){const[r,s,o]=EI({defaultProp:e,onChange:n}),a=t!==void 0,c=a?t:r;{const u=p.useRef(t!==void 0);p.useEffect(()=>{const d=u.current;d!==a&&console.warn(`${i} is changing from ${d?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=a},[a,i])}const l=p.useCallback(u=>{var d;if(a){const h=PI(u)?u(t):u;h!==t&&((d=o.current)==null||d.call(o,h))}else s(u)},[a,t,s,o]);return[c,l]}function EI({defaultProp:t,onChange:e}){const[n,i]=p.useState(t),r=p.useRef(n),s=p.useRef(e);return xI(()=>{s.current=e},[e]),p.useEffect(()=>{var o;r.current!==n&&((o=s.current)==null||o.call(s,n),r.current=n)},[n,r]),[n,i,s]}function PI(t){return typeof t=="function"}var RI=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Ue=RI.reduce((t,e)=>{const n=gs(`Primitive.${e}`),i=p.forwardRef((r,s)=>{const{asChild:o,...a}=r,c=o?n:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),E.jsx(c,{...a,ref:s})});return i.displayName=`Primitive.${e}`,{...t,[e]:i}},{});function AI(t,e){t&&na.flushSync(()=>t.dispatchEvent(e))}var Mb="Toggle",Ob=p.forwardRef((t,e)=>{const{pressed:n,defaultPressed:i,onPressedChange:r,...s}=t,[o,a]=Xl({prop:n,onChange:r,defaultProp:i??!1,caller:Mb});return E.jsx(Ue.button,{type:"button","aria-pressed":o,"data-state":o?"on":"off","data-disabled":t.disabled?"":void 0,...s,ref:e,onClick:$e(t.onClick,()=>{t.disabled||a(!o)})})});Ob.displayName=Mb;var II=Ob;const _I=ta.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 Db({className:t,variant:e,size:n,...i}){return E.jsx(II,{"data-slot":"toggle",className:ue(_I({variant:e,size:n,className:t})),...i})}function zp(t,[e,n]){return Math.min(n,Math.max(e,t))}function Md(t,e=[]){let n=[];function i(s,o){const a=p.createContext(o),c=n.length;n=[...n,o];const l=d=>{var v;const{scope:h,children:m,...g}=d,f=((v=h==null?void 0:h[t])==null?void 0:v[c])||a,y=p.useMemo(()=>g,Object.values(g));return E.jsx(f.Provider,{value:y,children:m})};l.displayName=s+"Provider";function u(d,h){var f;const m=((f=h==null?void 0:h[t])==null?void 0:f[c])||a,g=p.useContext(m);if(g)return g;if(o!==void 0)return o;throw new Error(`\`${d}\` must be used within \`${s}\``)}return[l,u]}const r=()=>{const s=n.map(o=>p.createContext(o));return function(a){const c=(a==null?void 0:a[t])||s;return p.useMemo(()=>({[`__scope${t}`]:{...a,[t]:c}}),[a,c])}};return r.scopeName=t,[i,MI(r,...e)]}function MI(...t){const e=t[0];if(t.length===1)return e;const n=()=>{const i=t.map(r=>({useScope:r(),scopeName:r.scopeName}));return function(s){const o=i.reduce((a,{useScope:c,scopeName:l})=>{const d=c(s)[`__scope${l}`];return{...a,...d}},{});return p.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return n.scopeName=e.scopeName,n}function OI(t){const e=t+"CollectionProvider",[n,i]=Md(e),[r,s]=n(e,{collectionRef:{current:null},itemMap:new Map}),o=f=>{const{scope:y,children:v}=f,C=B.useRef(null),T=B.useRef(new Map).current;return E.jsx(r,{scope:y,itemMap:T,collectionRef:C,children:v})};o.displayName=e;const a=t+"CollectionSlot",c=gs(a),l=B.forwardRef((f,y)=>{const{scope:v,children:C}=f,T=s(a,v),k=st(y,T.collectionRef);return E.jsx(c,{ref:k,children:C})});l.displayName=a;const u=t+"CollectionItemSlot",d="data-radix-collection-item",h=gs(u),m=B.forwardRef((f,y)=>{const{scope:v,children:C,...T}=f,k=B.useRef(null),b=st(y,k),w=s(u,v);return B.useEffect(()=>(w.itemMap.set(k,{ref:k,...T}),()=>void w.itemMap.delete(k))),E.jsx(h,{[d]:"",ref:b,children:C})});m.displayName=u;function g(f){const y=s(t+"CollectionConsumer",f);return B.useCallback(()=>{const C=y.collectionRef.current;if(!C)return[];const T=Array.from(C.querySelectorAll(`[${d}]`));return Array.from(y.itemMap.values()).sort((w,x)=>T.indexOf(w.ref.current)-T.indexOf(x.ref.current))},[y.collectionRef,y.itemMap])}return[{Provider:o,Slot:l,ItemSlot:m},g,i]}var DI=p.createContext(void 0);function NI(t){const e=p.useContext(DI);return t||e||"ltr"}function Ci(t){const e=p.useRef(t);return p.useEffect(()=>{e.current=t}),p.useMemo(()=>(...n)=>{var i;return(i=e.current)==null?void 0:i.call(e,...n)},[])}function LI(t,e=globalThis==null?void 0:globalThis.document){const n=Ci(t);p.useEffect(()=>{const i=r=>{r.key==="Escape"&&n(r)};return e.addEventListener("keydown",i,{capture:!0}),()=>e.removeEventListener("keydown",i,{capture:!0})},[n,e])}var VI="DismissableLayer",Ql="dismissableLayer.update",FI="dismissableLayer.pointerDownOutside",jI="dismissableLayer.focusOutside",Wp,Nb=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Lb=p.forwardRef((t,e)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:i,onPointerDownOutside:r,onFocusOutside:s,onInteractOutside:o,onDismiss:a,...c}=t,l=p.useContext(Nb),[u,d]=p.useState(null),h=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,m]=p.useState({}),g=st(e,x=>d(x)),f=Array.from(l.layers),[y]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),v=f.indexOf(y),C=u?f.indexOf(u):-1,T=l.layersWithOutsidePointerEventsDisabled.size>0,k=C>=v,b=$I(x=>{const R=x.target,_=[...l.branches].some(S=>S.contains(R));!k||_||(r==null||r(x),o==null||o(x),x.defaultPrevented||a==null||a())},h),w=HI(x=>{const R=x.target;[...l.branches].some(S=>S.contains(R))||(s==null||s(x),o==null||o(x),x.defaultPrevented||a==null||a())},h);return LI(x=>{C===l.layers.size-1&&(i==null||i(x),!x.defaultPrevented&&a&&(x.preventDefault(),a()))},h),p.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(Wp=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),qp(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(h.body.style.pointerEvents=Wp)}},[u,h,n,l]),p.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),qp())},[u,l]),p.useEffect(()=>{const x=()=>m({});return document.addEventListener(Ql,x),()=>document.removeEventListener(Ql,x)},[]),E.jsx(Ue.div,{...c,ref:g,style:{pointerEvents:T?k?"auto":"none":void 0,...t.style},onFocusCapture:$e(t.onFocusCapture,w.onFocusCapture),onBlurCapture:$e(t.onBlurCapture,w.onBlurCapture),onPointerDownCapture:$e(t.onPointerDownCapture,b.onPointerDownCapture)})});Lb.displayName=VI;var UI="DismissableLayerBranch",BI=p.forwardRef((t,e)=>{const n=p.useContext(Nb),i=p.useRef(null),r=st(e,i);return p.useEffect(()=>{const s=i.current;if(s)return n.branches.add(s),()=>{n.branches.delete(s)}},[n.branches]),E.jsx(Ue.div,{...t,ref:r})});BI.displayName=UI;function $I(t,e=globalThis==null?void 0:globalThis.document){const n=Ci(t),i=p.useRef(!1),r=p.useRef(()=>{});return p.useEffect(()=>{const s=a=>{if(a.target&&!i.current){let c=function(){Vb(FI,n,l,{discrete:!0})};const l={originalEvent:a};a.pointerType==="touch"?(e.removeEventListener("click",r.current),r.current=c,e.addEventListener("click",r.current,{once:!0})):c()}else e.removeEventListener("click",r.current);i.current=!1},o=window.setTimeout(()=>{e.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(o),e.removeEventListener("pointerdown",s),e.removeEventListener("click",r.current)}},[e,n]),{onPointerDownCapture:()=>i.current=!0}}function HI(t,e=globalThis==null?void 0:globalThis.document){const n=Ci(t),i=p.useRef(!1);return p.useEffect(()=>{const r=s=>{s.target&&!i.current&&Vb(jI,n,{originalEvent:s},{discrete:!1})};return e.addEventListener("focusin",r),()=>e.removeEventListener("focusin",r)},[e,n]),{onFocusCapture:()=>i.current=!0,onBlurCapture:()=>i.current=!1}}function qp(){const t=new CustomEvent(Ql);document.dispatchEvent(t)}function Vb(t,e,n,{discrete:i}){const r=n.originalEvent.target,s=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:n});e&&r.addEventListener(t,e,{once:!0}),i?AI(r,s):r.dispatchEvent(s)}var Tc=0;function zI(){p.useEffect(()=>{const t=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",t[0]??Gp()),document.body.insertAdjacentElement("beforeend",t[1]??Gp()),Tc++,()=>{Tc===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e=>e.remove()),Tc--}},[])}function Gp(){const t=document.createElement("span");return t.setAttribute("data-radix-focus-guard",""),t.tabIndex=0,t.style.outline="none",t.style.opacity="0",t.style.position="fixed",t.style.pointerEvents="none",t}var kc="focusScope.autoFocusOnMount",Cc="focusScope.autoFocusOnUnmount",Kp={bubbles:!1,cancelable:!0},WI="FocusScope",Fb=p.forwardRef((t,e)=>{const{loop:n=!1,trapped:i=!1,onMountAutoFocus:r,onUnmountAutoFocus:s,...o}=t,[a,c]=p.useState(null),l=Ci(r),u=Ci(s),d=p.useRef(null),h=st(e,f=>c(f)),m=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(i){let f=function(T){if(m.paused||!a)return;const k=T.target;a.contains(k)?d.current=k:jn(d.current,{select:!0})},y=function(T){if(m.paused||!a)return;const k=T.relatedTarget;k!==null&&(a.contains(k)||jn(d.current,{select:!0}))},v=function(T){if(document.activeElement===document.body)for(const b of T)b.removedNodes.length>0&&jn(a)};document.addEventListener("focusin",f),document.addEventListener("focusout",y);const C=new MutationObserver(v);return a&&C.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",f),document.removeEventListener("focusout",y),C.disconnect()}}},[i,a,m.paused]),p.useEffect(()=>{if(a){Yp.add(m);const f=document.activeElement;if(!a.contains(f)){const v=new CustomEvent(kc,Kp);a.addEventListener(kc,l),a.dispatchEvent(v),v.defaultPrevented||(qI(JI(jb(a)),{select:!0}),document.activeElement===f&&jn(a))}return()=>{a.removeEventListener(kc,l),setTimeout(()=>{const v=new CustomEvent(Cc,Kp);a.addEventListener(Cc,u),a.dispatchEvent(v),v.defaultPrevented||jn(f??document.body,{select:!0}),a.removeEventListener(Cc,u),Yp.remove(m)},0)}}},[a,l,u,m]);const g=p.useCallback(f=>{if(!n&&!i||m.paused)return;const y=f.key==="Tab"&&!f.altKey&&!f.ctrlKey&&!f.metaKey,v=document.activeElement;if(y&&v){const C=f.currentTarget,[T,k]=GI(C);T&&k?!f.shiftKey&&v===k?(f.preventDefault(),n&&jn(T,{select:!0})):f.shiftKey&&v===T&&(f.preventDefault(),n&&jn(k,{select:!0})):v===C&&f.preventDefault()}},[n,i,m.paused]);return E.jsx(Ue.div,{tabIndex:-1,...o,ref:h,onKeyDown:g})});Fb.displayName=WI;function qI(t,{select:e=!1}={}){const n=document.activeElement;for(const i of t)if(jn(i,{select:e}),document.activeElement!==n)return}function GI(t){const e=jb(t),n=Zp(e,t),i=Zp(e.reverse(),t);return[n,i]}function jb(t){const e=[],n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const r=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||r?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)e.push(n.currentNode);return e}function Zp(t,e){for(const n of t)if(!KI(n,{upTo:e}))return n}function KI(t,{upTo:e}){if(getComputedStyle(t).visibility==="hidden")return!0;for(;t;){if(e!==void 0&&t===e)return!1;if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}function ZI(t){return t instanceof HTMLInputElement&&"select"in t}function jn(t,{select:e=!1}={}){if(t&&t.focus){const n=document.activeElement;t.focus({preventScroll:!0}),t!==n&&ZI(t)&&e&&t.select()}}var Yp=YI();function YI(){let t=[];return{add(e){const n=t[0];e!==n&&(n==null||n.pause()),t=Jp(t,e),t.unshift(e)},remove(e){var n;t=Jp(t,e),(n=t[0])==null||n.resume()}}}function Jp(t,e){const n=[...t],i=n.indexOf(e);return i!==-1&&n.splice(i,1),n}function JI(t){return t.filter(e=>e.tagName!=="A")}var XI=p[" useId ".trim().toString()]||(()=>{}),QI=0;function Od(t){const[e,n]=p.useState(XI());return gt(()=>{n(i=>i??String(QI++))},[t]),t||(e?`radix-${e}`:"")}const e8=["top","right","bottom","left"],Yn=Math.min,bt=Math.max,qo=Math.round,Gs=Math.floor,rn=t=>({x:t,y:t}),t8={left:"right",right:"left",bottom:"top",top:"bottom"},n8={start:"end",end:"start"};function eu(t,e,n){return bt(t,Yn(e,n))}function An(t,e){return typeof t=="function"?t(e):t}function In(t){return t.split("-")[0]}function wr(t){return t.split("-")[1]}function Dd(t){return t==="x"?"y":"x"}function Nd(t){return t==="y"?"height":"width"}function Qt(t){return["top","bottom"].includes(In(t))?"y":"x"}function Ld(t){return Dd(Qt(t))}function i8(t,e,n){n===void 0&&(n=!1);const i=wr(t),r=Ld(t),s=Nd(r);let o=r==="x"?i===(n?"end":"start")?"right":"left":i==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=Go(o)),[o,Go(o)]}function r8(t){const e=Go(t);return[tu(t),e,tu(e)]}function tu(t){return t.replace(/start|end/g,e=>n8[e])}function s8(t,e,n){const i=["left","right"],r=["right","left"],s=["top","bottom"],o=["bottom","top"];switch(t){case"top":case"bottom":return n?e?r:i:e?i:r;case"left":case"right":return e?s:o;default:return[]}}function o8(t,e,n,i){const r=wr(t);let s=s8(In(t),n==="start",i);return r&&(s=s.map(o=>o+"-"+r),e&&(s=s.concat(s.map(tu)))),s}function Go(t){return t.replace(/left|right|bottom|top/g,e=>t8[e])}function a8(t){return{top:0,right:0,bottom:0,left:0,...t}}function Ub(t){return typeof t!="number"?a8(t):{top:t,right:t,bottom:t,left:t}}function Ko(t){const{x:e,y:n,width:i,height:r}=t;return{width:i,height:r,top:n,left:e,right:e+i,bottom:n+r,x:e,y:n}}function Xp(t,e,n){let{reference:i,floating:r}=t;const s=Qt(e),o=Ld(e),a=Nd(o),c=In(e),l=s==="y",u=i.x+i.width/2-r.width/2,d=i.y+i.height/2-r.height/2,h=i[a]/2-r[a]/2;let m;switch(c){case"top":m={x:u,y:i.y-r.height};break;case"bottom":m={x:u,y:i.y+i.height};break;case"right":m={x:i.x+i.width,y:d};break;case"left":m={x:i.x-r.width,y:d};break;default:m={x:i.x,y:i.y}}switch(wr(e)){case"start":m[o]-=h*(n&&l?-1:1);break;case"end":m[o]+=h*(n&&l?-1:1);break}return m}const c8=async(t,e,n)=>{const{placement:i="bottom",strategy:r="absolute",middleware:s=[],platform:o}=n,a=s.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(e));let l=await o.getElementRects({reference:t,floating:e,strategy:r}),{x:u,y:d}=Xp(l,i,c),h=i,m={},g=0;for(let f=0;f<a.length;f++){const{name:y,fn:v}=a[f],{x:C,y:T,data:k,reset:b}=await v({x:u,y:d,initialPlacement:i,placement:h,strategy:r,middlewareData:m,rects:l,platform:o,elements:{reference:t,floating:e}});u=C??u,d=T??d,m={...m,[y]:{...m[y],...k}},b&&g<=50&&(g++,typeof b=="object"&&(b.placement&&(h=b.placement),b.rects&&(l=b.rects===!0?await o.getElementRects({reference:t,floating:e,strategy:r}):b.rects),{x:u,y:d}=Xp(l,h,c)),f=-1)}return{x:u,y:d,placement:h,strategy:r,middlewareData:m}};async function vs(t,e){var n;e===void 0&&(e={});const{x:i,y:r,platform:s,rects:o,elements:a,strategy:c}=t,{boundary:l="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:h=!1,padding:m=0}=An(e,t),g=Ub(m),y=a[h?d==="floating"?"reference":"floating":d],v=Ko(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(y)))==null||n?y:y.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:l,rootBoundary:u,strategy:c})),C=d==="floating"?{x:i,y:r,width:o.floating.width,height:o.floating.height}:o.reference,T=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),k=await(s.isElement==null?void 0:s.isElement(T))?await(s.getScale==null?void 0:s.getScale(T))||{x:1,y:1}:{x:1,y:1},b=Ko(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:C,offsetParent:T,strategy:c}):C);return{top:(v.top-b.top+g.top)/k.y,bottom:(b.bottom-v.bottom+g.bottom)/k.y,left:(v.left-b.left+g.left)/k.x,right:(b.right-v.right+g.right)/k.x}}const l8=t=>({name:"arrow",options:t,async fn(e){const{x:n,y:i,placement:r,rects:s,platform:o,elements:a,middlewareData:c}=e,{element:l,padding:u=0}=An(t,e)||{};if(l==null)return{};const d=Ub(u),h={x:n,y:i},m=Ld(r),g=Nd(m),f=await o.getDimensions(l),y=m==="y",v=y?"top":"left",C=y?"bottom":"right",T=y?"clientHeight":"clientWidth",k=s.reference[g]+s.reference[m]-h[m]-s.floating[g],b=h[m]-s.reference[m],w=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l));let x=w?w[T]:0;(!x||!await(o.isElement==null?void 0:o.isElement(w)))&&(x=a.floating[T]||s.floating[g]);const R=k/2-b/2,_=x/2-f[g]/2-1,S=Yn(d[v],_),A=Yn(d[C],_),O=S,z=x-f[g]-A,K=x/2-f[g]/2+R,se=eu(O,K,z),Q=!c.arrow&&wr(r)!=null&&K!==se&&s.reference[g]/2-(K<O?S:A)-f[g]/2<0,Z=Q?K<O?K-O:K-z:0;return{[m]:h[m]+Z,data:{[m]:se,centerOffset:K-se-Z,...Q&&{alignmentOffset:Z}},reset:Q}}}),u8=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,i;const{placement:r,middlewareData:s,rects:o,initialPlacement:a,platform:c,elements:l}=e,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:h,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:g="none",flipAlignment:f=!0,...y}=An(t,e);if((n=s.arrow)!=null&&n.alignmentOffset)return{};const v=In(r),C=Qt(a),T=In(a)===a,k=await(c.isRTL==null?void 0:c.isRTL(l.floating)),b=h||(T||!f?[Go(a)]:r8(a)),w=g!=="none";!h&&w&&b.push(...o8(a,f,g,k));const x=[a,...b],R=await vs(e,y),_=[];let S=((i=s.flip)==null?void 0:i.overflows)||[];if(u&&_.push(R[v]),d){const K=i8(r,o,k);_.push(R[K[0]],R[K[1]])}if(S=[...S,{placement:r,overflows:_}],!_.every(K=>K<=0)){var A,O;const K=(((A=s.flip)==null?void 0:A.index)||0)+1,se=x[K];if(se&&(!(d==="alignment"?C!==Qt(se):!1)||S.every(F=>F.overflows[0]>0&&Qt(F.placement)===C)))return{data:{index:K,overflows:S},reset:{placement:se}};let Q=(O=S.filter(Z=>Z.overflows[0]<=0).sort((Z,F)=>Z.overflows[1]-F.overflows[1])[0])==null?void 0:O.placement;if(!Q)switch(m){case"bestFit":{var z;const Z=(z=S.filter(F=>{if(w){const ce=Qt(F.placement);return ce===C||ce==="y"}return!0}).map(F=>[F.placement,F.overflows.filter(ce=>ce>0).reduce((ce,I)=>ce+I,0)]).sort((F,ce)=>F[1]-ce[1])[0])==null?void 0:z[0];Z&&(Q=Z);break}case"initialPlacement":Q=a;break}if(r!==Q)return{reset:{placement:Q}}}return{}}}};function Qp(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function em(t){return e8.some(e=>t[e]>=0)}const d8=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n}=e,{strategy:i="referenceHidden",...r}=An(t,e);switch(i){case"referenceHidden":{const s=await vs(e,{...r,elementContext:"reference"}),o=Qp(s,n.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:em(o)}}}case"escaped":{const s=await vs(e,{...r,altBoundary:!0}),o=Qp(s,n.floating);return{data:{escapedOffsets:o,escaped:em(o)}}}default:return{}}}}};async function f8(t,e){const{placement:n,platform:i,elements:r}=t,s=await(i.isRTL==null?void 0:i.isRTL(r.floating)),o=In(n),a=wr(n),c=Qt(n)==="y",l=["left","top"].includes(o)?-1:1,u=s&&c?-1:1,d=An(e,t);let{mainAxis:h,crossAxis:m,alignmentAxis:g}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return a&&typeof g=="number"&&(m=a==="end"?g*-1:g),c?{x:m*u,y:h*l}:{x:h*l,y:m*u}}const h8=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,i;const{x:r,y:s,placement:o,middlewareData:a}=e,c=await f8(e,t);return o===((n=a.offset)==null?void 0:n.placement)&&(i=a.arrow)!=null&&i.alignmentOffset?{}:{x:r+c.x,y:s+c.y,data:{...c,placement:o}}}}},p8=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:i,placement:r}=e,{mainAxis:s=!0,crossAxis:o=!1,limiter:a={fn:y=>{let{x:v,y:C}=y;return{x:v,y:C}}},...c}=An(t,e),l={x:n,y:i},u=await vs(e,c),d=Qt(In(r)),h=Dd(d);let m=l[h],g=l[d];if(s){const y=h==="y"?"top":"left",v=h==="y"?"bottom":"right",C=m+u[y],T=m-u[v];m=eu(C,m,T)}if(o){const y=d==="y"?"top":"left",v=d==="y"?"bottom":"right",C=g+u[y],T=g-u[v];g=eu(C,g,T)}const f=a.fn({...e,[h]:m,[d]:g});return{...f,data:{x:f.x-n,y:f.y-i,enabled:{[h]:s,[d]:o}}}}}},m8=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:n,y:i,placement:r,rects:s,middlewareData:o}=e,{offset:a=0,mainAxis:c=!0,crossAxis:l=!0}=An(t,e),u={x:n,y:i},d=Qt(r),h=Dd(d);let m=u[h],g=u[d];const f=An(a,e),y=typeof f=="number"?{mainAxis:f,crossAxis:0}:{mainAxis:0,crossAxis:0,...f};if(c){const T=h==="y"?"height":"width",k=s.reference[h]-s.floating[T]+y.mainAxis,b=s.reference[h]+s.reference[T]-y.mainAxis;m<k?m=k:m>b&&(m=b)}if(l){var v,C;const T=h==="y"?"width":"height",k=["top","left"].includes(In(r)),b=s.reference[d]-s.floating[T]+(k&&((v=o.offset)==null?void 0:v[d])||0)+(k?0:y.crossAxis),w=s.reference[d]+s.reference[T]+(k?0:((C=o.offset)==null?void 0:C[d])||0)-(k?y.crossAxis:0);g<b?g=b:g>w&&(g=w)}return{[h]:m,[d]:g}}}},g8=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var n,i;const{placement:r,rects:s,platform:o,elements:a}=e,{apply:c=()=>{},...l}=An(t,e),u=await vs(e,l),d=In(r),h=wr(r),m=Qt(r)==="y",{width:g,height:f}=s.floating;let y,v;d==="top"||d==="bottom"?(y=d,v=h===(await(o.isRTL==null?void 0:o.isRTL(a.floating))?"start":"end")?"left":"right"):(v=d,y=h==="end"?"top":"bottom");const C=f-u.top-u.bottom,T=g-u.left-u.right,k=Yn(f-u[y],C),b=Yn(g-u[v],T),w=!e.middlewareData.shift;let x=k,R=b;if((n=e.middlewareData.shift)!=null&&n.enabled.x&&(R=T),(i=e.middlewareData.shift)!=null&&i.enabled.y&&(x=C),w&&!h){const S=bt(u.left,0),A=bt(u.right,0),O=bt(u.top,0),z=bt(u.bottom,0);m?R=g-2*(S!==0||A!==0?S+A:bt(u.left,u.right)):x=f-2*(O!==0||z!==0?O+z:bt(u.top,u.bottom))}await c({...e,availableWidth:R,availableHeight:x});const _=await o.getDimensions(a.floating);return g!==_.width||f!==_.height?{reset:{rects:!0}}:{}}}};function ma(){return typeof window<"u"}function xr(t){return Bb(t)?(t.nodeName||"").toLowerCase():"#document"}function kt(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function dn(t){var e;return(e=(Bb(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function Bb(t){return ma()?t instanceof Node||t instanceof kt(t).Node:!1}function Wt(t){return ma()?t instanceof Element||t instanceof kt(t).Element:!1}function cn(t){return ma()?t instanceof HTMLElement||t instanceof kt(t).HTMLElement:!1}function tm(t){return!ma()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof kt(t).ShadowRoot}function Is(t){const{overflow:e,overflowX:n,overflowY:i,display:r}=qt(t);return/auto|scroll|overlay|hidden|clip/.test(e+i+n)&&!["inline","contents"].includes(r)}function v8(t){return["table","td","th"].includes(xr(t))}function ga(t){return[":popover-open",":modal"].some(e=>{try{return t.matches(e)}catch{return!1}})}function Vd(t){const e=Fd(),n=Wt(t)?qt(t):t;return["transform","translate","scale","rotate","perspective"].some(i=>n[i]?n[i]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!e&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!e&&(n.filter?n.filter!=="none":!1)||["transform","translate","scale","rotate","perspective","filter"].some(i=>(n.willChange||"").includes(i))||["paint","layout","strict","content"].some(i=>(n.contain||"").includes(i))}function y8(t){let e=Jn(t);for(;cn(e)&&!pr(e);){if(Vd(e))return e;if(ga(e))return null;e=Jn(e)}return null}function Fd(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function pr(t){return["html","body","#document"].includes(xr(t))}function qt(t){return kt(t).getComputedStyle(t)}function va(t){return Wt(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Jn(t){if(xr(t)==="html")return t;const e=t.assignedSlot||t.parentNode||tm(t)&&t.host||dn(t);return tm(e)?e.host:e}function $b(t){const e=Jn(t);return pr(e)?t.ownerDocument?t.ownerDocument.body:t.body:cn(e)&&Is(e)?e:$b(e)}function ys(t,e,n){var i;e===void 0&&(e=[]),n===void 0&&(n=!0);const r=$b(t),s=r===((i=t.ownerDocument)==null?void 0:i.body),o=kt(r);if(s){const a=nu(o);return e.concat(o,o.visualViewport||[],Is(r)?r:[],a&&n?ys(a):[])}return e.concat(r,ys(r,[],n))}function nu(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Hb(t){const e=qt(t);let n=parseFloat(e.width)||0,i=parseFloat(e.height)||0;const r=cn(t),s=r?t.offsetWidth:n,o=r?t.offsetHeight:i,a=qo(n)!==s||qo(i)!==o;return a&&(n=s,i=o),{width:n,height:i,$:a}}function jd(t){return Wt(t)?t:t.contextElement}function sr(t){const e=jd(t);if(!cn(e))return rn(1);const n=e.getBoundingClientRect(),{width:i,height:r,$:s}=Hb(e);let o=(s?qo(n.width):n.width)/i,a=(s?qo(n.height):n.height)/r;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}const b8=rn(0);function zb(t){const e=kt(t);return!Fd()||!e.visualViewport?b8:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function S8(t,e,n){return e===void 0&&(e=!1),!n||e&&n!==kt(t)?!1:e}function wi(t,e,n,i){e===void 0&&(e=!1),n===void 0&&(n=!1);const r=t.getBoundingClientRect(),s=jd(t);let o=rn(1);e&&(i?Wt(i)&&(o=sr(i)):o=sr(t));const a=S8(s,n,i)?zb(s):rn(0);let c=(r.left+a.x)/o.x,l=(r.top+a.y)/o.y,u=r.width/o.x,d=r.height/o.y;if(s){const h=kt(s),m=i&&Wt(i)?kt(i):i;let g=h,f=nu(g);for(;f&&i&&m!==g;){const y=sr(f),v=f.getBoundingClientRect(),C=qt(f),T=v.left+(f.clientLeft+parseFloat(C.paddingLeft))*y.x,k=v.top+(f.clientTop+parseFloat(C.paddingTop))*y.y;c*=y.x,l*=y.y,u*=y.x,d*=y.y,c+=T,l+=k,g=kt(f),f=nu(g)}}return Ko({width:u,height:d,x:c,y:l})}function Ud(t,e){const n=va(t).scrollLeft;return e?e.left+n:wi(dn(t)).left+n}function Wb(t,e,n){n===void 0&&(n=!1);const i=t.getBoundingClientRect(),r=i.left+e.scrollLeft-(n?0:Ud(t,i)),s=i.top+e.scrollTop;return{x:r,y:s}}function T8(t){let{elements:e,rect:n,offsetParent:i,strategy:r}=t;const s=r==="fixed",o=dn(i),a=e?ga(e.floating):!1;if(i===o||a&&s)return n;let c={scrollLeft:0,scrollTop:0},l=rn(1);const u=rn(0),d=cn(i);if((d||!d&&!s)&&((xr(i)!=="body"||Is(o))&&(c=va(i)),cn(i))){const m=wi(i);l=sr(i),u.x=m.x+i.clientLeft,u.y=m.y+i.clientTop}const h=o&&!d&&!s?Wb(o,c,!0):rn(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+h.x,y:n.y*l.y-c.scrollTop*l.y+u.y+h.y}}function k8(t){return Array.from(t.getClientRects())}function C8(t){const e=dn(t),n=va(t),i=t.ownerDocument.body,r=bt(e.scrollWidth,e.clientWidth,i.scrollWidth,i.clientWidth),s=bt(e.scrollHeight,e.clientHeight,i.scrollHeight,i.clientHeight);let o=-n.scrollLeft+Ud(t);const a=-n.scrollTop;return qt(i).direction==="rtl"&&(o+=bt(e.clientWidth,i.clientWidth)-r),{width:r,height:s,x:o,y:a}}function w8(t,e){const n=kt(t),i=dn(t),r=n.visualViewport;let s=i.clientWidth,o=i.clientHeight,a=0,c=0;if(r){s=r.width,o=r.height;const l=Fd();(!l||l&&e==="fixed")&&(a=r.offsetLeft,c=r.offsetTop)}return{width:s,height:o,x:a,y:c}}function x8(t,e){const n=wi(t,!0,e==="fixed"),i=n.top+t.clientTop,r=n.left+t.clientLeft,s=cn(t)?sr(t):rn(1),o=t.clientWidth*s.x,a=t.clientHeight*s.y,c=r*s.x,l=i*s.y;return{width:o,height:a,x:c,y:l}}function nm(t,e,n){let i;if(e==="viewport")i=w8(t,n);else if(e==="document")i=C8(dn(t));else if(Wt(e))i=x8(e,n);else{const r=zb(t);i={x:e.x-r.x,y:e.y-r.y,width:e.width,height:e.height}}return Ko(i)}function qb(t,e){const n=Jn(t);return n===e||!Wt(n)||pr(n)?!1:qt(n).position==="fixed"||qb(n,e)}function E8(t,e){const n=e.get(t);if(n)return n;let i=ys(t,[],!1).filter(a=>Wt(a)&&xr(a)!=="body"),r=null;const s=qt(t).position==="fixed";let o=s?Jn(t):t;for(;Wt(o)&&!pr(o);){const a=qt(o),c=Vd(o);!c&&a.position==="fixed"&&(r=null),(s?!c&&!r:!c&&a.position==="static"&&!!r&&["absolute","fixed"].includes(r.position)||Is(o)&&!c&&qb(t,o))?i=i.filter(u=>u!==o):r=a,o=Jn(o)}return e.set(t,i),i}function P8(t){let{element:e,boundary:n,rootBoundary:i,strategy:r}=t;const o=[...n==="clippingAncestors"?ga(e)?[]:E8(e,this._c):[].concat(n),i],a=o[0],c=o.reduce((l,u)=>{const d=nm(e,u,r);return l.top=bt(d.top,l.top),l.right=Yn(d.right,l.right),l.bottom=Yn(d.bottom,l.bottom),l.left=bt(d.left,l.left),l},nm(e,a,r));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function R8(t){const{width:e,height:n}=Hb(t);return{width:e,height:n}}function A8(t,e,n){const i=cn(e),r=dn(e),s=n==="fixed",o=wi(t,!0,s,e);let a={scrollLeft:0,scrollTop:0};const c=rn(0);if(i||!i&&!s)if((xr(e)!=="body"||Is(r))&&(a=va(e)),i){const h=wi(e,!0,s,e);c.x=h.x+e.clientLeft,c.y=h.y+e.clientTop}else r&&(c.x=Ud(r));const l=r&&!i&&!s?Wb(r,a):rn(0),u=o.left+a.scrollLeft-c.x-l.x,d=o.top+a.scrollTop-c.y-l.y;return{x:u,y:d,width:o.width,height:o.height}}function wc(t){return qt(t).position==="static"}function im(t,e){if(!cn(t)||qt(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return dn(t)===n&&(n=n.ownerDocument.body),n}function Gb(t,e){const n=kt(t);if(ga(t))return n;if(!cn(t)){let r=Jn(t);for(;r&&!pr(r);){if(Wt(r)&&!wc(r))return r;r=Jn(r)}return n}let i=im(t,e);for(;i&&v8(i)&&wc(i);)i=im(i,e);return i&&pr(i)&&wc(i)&&!Vd(i)?n:i||y8(t)||n}const I8=async function(t){const e=this.getOffsetParent||Gb,n=this.getDimensions,i=await n(t.floating);return{reference:A8(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:i.width,height:i.height}}};function _8(t){return qt(t).direction==="rtl"}const M8={convertOffsetParentRelativeRectToViewportRelativeRect:T8,getDocumentElement:dn,getClippingRect:P8,getOffsetParent:Gb,getElementRects:I8,getClientRects:k8,getDimensions:R8,getScale:sr,isElement:Wt,isRTL:_8};function Kb(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function O8(t,e){let n=null,i;const r=dn(t);function s(){var a;clearTimeout(i),(a=n)==null||a.disconnect(),n=null}function o(a,c){a===void 0&&(a=!1),c===void 0&&(c=1),s();const l=t.getBoundingClientRect(),{left:u,top:d,width:h,height:m}=l;if(a||e(),!h||!m)return;const g=Gs(d),f=Gs(r.clientWidth-(u+h)),y=Gs(r.clientHeight-(d+m)),v=Gs(u),T={rootMargin:-g+"px "+-f+"px "+-y+"px "+-v+"px",threshold:bt(0,Yn(1,c))||1};let k=!0;function b(w){const x=w[0].intersectionRatio;if(x!==c){if(!k)return o();x?o(!1,x):i=setTimeout(()=>{o(!1,1e-7)},1e3)}x===1&&!Kb(l,t.getBoundingClientRect())&&o(),k=!1}try{n=new IntersectionObserver(b,{...T,root:r.ownerDocument})}catch{n=new IntersectionObserver(b,T)}n.observe(t)}return o(!0),s}function D8(t,e,n,i){i===void 0&&(i={});const{ancestorScroll:r=!0,ancestorResize:s=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:c=!1}=i,l=jd(t),u=r||s?[...l?ys(l):[],...ys(e)]:[];u.forEach(v=>{r&&v.addEventListener("scroll",n,{passive:!0}),s&&v.addEventListener("resize",n)});const d=l&&a?O8(l,n):null;let h=-1,m=null;o&&(m=new ResizeObserver(v=>{let[C]=v;C&&C.target===l&&m&&(m.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var T;(T=m)==null||T.observe(e)})),n()}),l&&!c&&m.observe(l),m.observe(e));let g,f=c?wi(t):null;c&&y();function y(){const v=wi(t);f&&!Kb(f,v)&&n(),f=v,g=requestAnimationFrame(y)}return n(),()=>{var v;u.forEach(C=>{r&&C.removeEventListener("scroll",n),s&&C.removeEventListener("resize",n)}),d==null||d(),(v=m)==null||v.disconnect(),m=null,c&&cancelAnimationFrame(g)}}const N8=h8,L8=p8,V8=u8,F8=g8,j8=d8,rm=l8,U8=m8,B8=(t,e,n)=>{const i=new Map,r={platform:M8,...n},s={...r.platform,_c:i};return c8(t,e,{...r,platform:s})};var $8=typeof document<"u",H8=function(){},wo=$8?B.useLayoutEffect:H8;function Zo(t,e){if(t===e)return!0;if(typeof t!=typeof e)return!1;if(typeof t=="function"&&t.toString()===e.toString())return!0;let n,i,r;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(i=n;i--!==0;)if(!Zo(t[i],e[i]))return!1;return!0}if(r=Object.keys(t),n=r.length,n!==Object.keys(e).length)return!1;for(i=n;i--!==0;)if(!{}.hasOwnProperty.call(e,r[i]))return!1;for(i=n;i--!==0;){const s=r[i];if(!(s==="_owner"&&t.$$typeof)&&!Zo(t[s],e[s]))return!1}return!0}return t!==t&&e!==e}function Zb(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function sm(t,e){const n=Zb(t);return Math.round(e*n)/n}function xc(t){const e=p.useRef(t);return wo(()=>{e.current=t}),e}function z8(t){t===void 0&&(t={});const{placement:e="bottom",strategy:n="absolute",middleware:i=[],platform:r,elements:{reference:s,floating:o}={},transform:a=!0,whileElementsMounted:c,open:l}=t,[u,d]=p.useState({x:0,y:0,strategy:n,placement:e,middlewareData:{},isPositioned:!1}),[h,m]=p.useState(i);Zo(h,i)||m(i);const[g,f]=p.useState(null),[y,v]=p.useState(null),C=p.useCallback(F=>{F!==w.current&&(w.current=F,f(F))},[]),T=p.useCallback(F=>{F!==x.current&&(x.current=F,v(F))},[]),k=s||g,b=o||y,w=p.useRef(null),x=p.useRef(null),R=p.useRef(u),_=c!=null,S=xc(c),A=xc(r),O=xc(l),z=p.useCallback(()=>{if(!w.current||!x.current)return;const F={placement:e,strategy:n,middleware:h};A.current&&(F.platform=A.current),B8(w.current,x.current,F).then(ce=>{const I={...ce,isPositioned:O.current!==!1};K.current&&!Zo(R.current,I)&&(R.current=I,na.flushSync(()=>{d(I)}))})},[h,e,n,A,O]);wo(()=>{l===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,d(F=>({...F,isPositioned:!1})))},[l]);const K=p.useRef(!1);wo(()=>(K.current=!0,()=>{K.current=!1}),[]),wo(()=>{if(k&&(w.current=k),b&&(x.current=b),k&&b){if(S.current)return S.current(k,b,z);z()}},[k,b,z,S,_]);const se=p.useMemo(()=>({reference:w,floating:x,setReference:C,setFloating:T}),[C,T]),Q=p.useMemo(()=>({reference:k,floating:b}),[k,b]),Z=p.useMemo(()=>{const F={position:n,left:0,top:0};if(!Q.floating)return F;const ce=sm(Q.floating,u.x),I=sm(Q.floating,u.y);return a?{...F,transform:"translate("+ce+"px, "+I+"px)",...Zb(Q.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:ce,top:I}},[n,a,Q.floating,u.x,u.y]);return p.useMemo(()=>({...u,update:z,refs:se,elements:Q,floatingStyles:Z}),[u,z,se,Q,Z])}const W8=t=>{function e(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:t,fn(n){const{element:i,padding:r}=typeof t=="function"?t(n):t;return i&&e(i)?i.current!=null?rm({element:i.current,padding:r}).fn(n):{}:i?rm({element:i,padding:r}).fn(n):{}}}},q8=(t,e)=>({...N8(t),options:[t,e]}),G8=(t,e)=>({...L8(t),options:[t,e]}),K8=(t,e)=>({...U8(t),options:[t,e]}),Z8=(t,e)=>({...V8(t),options:[t,e]}),Y8=(t,e)=>({...F8(t),options:[t,e]}),J8=(t,e)=>({...j8(t),options:[t,e]}),X8=(t,e)=>({...W8(t),options:[t,e]});var Q8="Arrow",Yb=p.forwardRef((t,e)=>{const{children:n,width:i=10,height:r=5,...s}=t;return E.jsx(Ue.svg,{...s,ref:e,width:i,height:r,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?n:E.jsx("polygon",{points:"0,0 30,0 15,10"})})});Yb.displayName=Q8;var e_=Yb;function t_(t){const[e,n]=p.useState(void 0);return gt(()=>{if(t){n({width:t.offsetWidth,height:t.offsetHeight});const i=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const s=r[0];let o,a;if("borderBoxSize"in s){const c=s.borderBoxSize,l=Array.isArray(c)?c[0]:c;o=l.inlineSize,a=l.blockSize}else o=t.offsetWidth,a=t.offsetHeight;n({width:o,height:a})});return i.observe(t,{box:"border-box"}),()=>i.unobserve(t)}else n(void 0)},[t]),e}var Bd="Popper",[Jb,Xb]=Md(Bd),[n_,Qb]=Jb(Bd),e1=t=>{const{__scopePopper:e,children:n}=t,[i,r]=p.useState(null);return E.jsx(n_,{scope:e,anchor:i,onAnchorChange:r,children:n})};e1.displayName=Bd;var t1="PopperAnchor",n1=p.forwardRef((t,e)=>{const{__scopePopper:n,virtualRef:i,...r}=t,s=Qb(t1,n),o=p.useRef(null),a=st(e,o);return p.useEffect(()=>{s.onAnchorChange((i==null?void 0:i.current)||o.current)}),i?null:E.jsx(Ue.div,{...r,ref:a})});n1.displayName=t1;var $d="PopperContent",[i_,r_]=Jb($d),i1=p.forwardRef((t,e)=>{var V,q,te,ee,ae,H;const{__scopePopper:n,side:i="bottom",sideOffset:r=0,align:s="center",alignOffset:o=0,arrowPadding:a=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d="partial",hideWhenDetached:h=!1,updatePositionStrategy:m="optimized",onPlaced:g,...f}=t,y=Qb($d,n),[v,C]=p.useState(null),T=st(e,Se=>C(Se)),[k,b]=p.useState(null),w=t_(k),x=(w==null?void 0:w.width)??0,R=(w==null?void 0:w.height)??0,_=i+(s!=="center"?"-"+s:""),S=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},A=Array.isArray(l)?l:[l],O=A.length>0,z={padding:S,boundary:A.filter(o_),altBoundary:O},{refs:K,floatingStyles:se,placement:Q,isPositioned:Z,middlewareData:F}=z8({strategy:"fixed",placement:_,whileElementsMounted:(...Se)=>D8(...Se,{animationFrame:m==="always"}),elements:{reference:y.anchor},middleware:[q8({mainAxis:r+R,alignmentAxis:o}),c&&G8({mainAxis:!0,crossAxis:!1,limiter:d==="partial"?K8():void 0,...z}),c&&Z8({...z}),Y8({...z,apply:({elements:Se,rects:Qe,availableWidth:Dt,availableHeight:Rr})=>{const{width:Ar,height:bS}=Qe.reference,Ds=Se.floating.style;Ds.setProperty("--radix-popper-available-width",`${Dt}px`),Ds.setProperty("--radix-popper-available-height",`${Rr}px`),Ds.setProperty("--radix-popper-anchor-width",`${Ar}px`),Ds.setProperty("--radix-popper-anchor-height",`${bS}px`)}}),k&&X8({element:k,padding:a}),a_({arrowWidth:x,arrowHeight:R}),h&&J8({strategy:"referenceHidden",...z})]}),[ce,I]=o1(Q),j=Ci(g);gt(()=>{Z&&(j==null||j())},[Z,j]);const W=(V=F.arrow)==null?void 0:V.x,Y=(q=F.arrow)==null?void 0:q.y,J=((te=F.arrow)==null?void 0:te.centerOffset)!==0,[re,oe]=p.useState();return gt(()=>{v&&oe(window.getComputedStyle(v).zIndex)},[v]),E.jsx("div",{ref:K.setFloating,"data-radix-popper-content-wrapper":"",style:{...se,transform:Z?se.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:re,"--radix-popper-transform-origin":[(ee=F.transformOrigin)==null?void 0:ee.x,(ae=F.transformOrigin)==null?void 0:ae.y].join(" "),...((H=F.hide)==null?void 0:H.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:E.jsx(i_,{scope:n,placedSide:ce,onArrowChange:b,arrowX:W,arrowY:Y,shouldHideArrow:J,children:E.jsx(Ue.div,{"data-side":ce,"data-align":I,...f,ref:T,style:{...f.style,animation:Z?void 0:"none"}})})})});i1.displayName=$d;var r1="PopperArrow",s_={top:"bottom",right:"left",bottom:"top",left:"right"},s1=p.forwardRef(function(e,n){const{__scopePopper:i,...r}=e,s=r_(r1,i),o=s_[s.placedSide];return E.jsx("span",{ref:s.onArrowChange,style:{position:"absolute",left:s.arrowX,top:s.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[s.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[s.placedSide],visibility:s.shouldHideArrow?"hidden":void 0},children:E.jsx(e_,{...r,ref:n,style:{...r.style,display:"block"}})})});s1.displayName=r1;function o_(t){return t!==null}var a_=t=>({name:"transformOrigin",options:t,fn(e){var y,v,C;const{placement:n,rects:i,middlewareData:r}=e,o=((y=r.arrow)==null?void 0:y.centerOffset)!==0,a=o?0:t.arrowWidth,c=o?0:t.arrowHeight,[l,u]=o1(n),d={start:"0%",center:"50%",end:"100%"}[u],h=(((v=r.arrow)==null?void 0:v.x)??0)+a/2,m=(((C=r.arrow)==null?void 0:C.y)??0)+c/2;let g="",f="";return l==="bottom"?(g=o?d:`${h}px`,f=`${-c}px`):l==="top"?(g=o?d:`${h}px`,f=`${i.floating.height+c}px`):l==="right"?(g=`${-c}px`,f=o?d:`${m}px`):l==="left"&&(g=`${i.floating.width+c}px`,f=o?d:`${m}px`),{data:{x:g,y:f}}}});function o1(t){const[e,n="center"]=t.split("-");return[e,n]}var c_=e1,l_=n1,u_=i1,d_=s1,f_="Portal",a1=p.forwardRef((t,e)=>{var a;const{container:n,...i}=t,[r,s]=p.useState(!1);gt(()=>s(!0),[]);const o=n||r&&((a=globalThis==null?void 0:globalThis.document)==null?void 0:a.body);return o?Ym.createPortal(E.jsx(Ue.div,{...i,ref:e}),o):null});a1.displayName=f_;function h_(t){const e=p.useRef({value:t,previous:t});return p.useMemo(()=>(e.current.value!==t&&(e.current.previous=e.current.value,e.current.value=t),e.current.previous),[t])}var c1=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),p_="VisuallyHidden",m_=p.forwardRef((t,e)=>E.jsx(Ue.span,{...t,ref:e,style:{...c1,...t.style}}));m_.displayName=p_;var g_=function(t){if(typeof document>"u")return null;var e=Array.isArray(t)?t[0]:t;return e.ownerDocument.body},Di=new WeakMap,Ks=new WeakMap,Zs={},Ec=0,l1=function(t){return t&&(t.host||l1(t.parentNode))},v_=function(t,e){return e.map(function(n){if(t.contains(n))return n;var i=l1(n);return i&&t.contains(i)?i:(console.error("aria-hidden",n,"in not contained inside",t,". Doing nothing"),null)}).filter(function(n){return!!n})},y_=function(t,e,n,i){var r=v_(e,Array.isArray(t)?t:[t]);Zs[n]||(Zs[n]=new WeakMap);var s=Zs[n],o=[],a=new Set,c=new Set(r),l=function(d){!d||a.has(d)||(a.add(d),l(d.parentNode))};r.forEach(l);var u=function(d){!d||c.has(d)||Array.prototype.forEach.call(d.children,function(h){if(a.has(h))u(h);else try{var m=h.getAttribute(i),g=m!==null&&m!=="false",f=(Di.get(h)||0)+1,y=(s.get(h)||0)+1;Di.set(h,f),s.set(h,y),o.push(h),f===1&&g&&Ks.set(h,!0),y===1&&h.setAttribute(n,"true"),g||h.setAttribute(i,"true")}catch(v){console.error("aria-hidden: cannot operate on ",h,v)}})};return u(e),a.clear(),Ec++,function(){o.forEach(function(d){var h=Di.get(d)-1,m=s.get(d)-1;Di.set(d,h),s.set(d,m),h||(Ks.has(d)||d.removeAttribute(i),Ks.delete(d)),m||d.removeAttribute(n)}),Ec--,Ec||(Di=new WeakMap,Di=new WeakMap,Ks=new WeakMap,Zs={})}},b_=function(t,e,n){n===void 0&&(n="data-aria-hidden");var i=Array.from(Array.isArray(t)?t:[t]),r=g_(t);return r?(i.push.apply(i,Array.from(r.querySelectorAll("[aria-live], script"))),y_(i,r,n,"aria-hidden")):function(){return null}},Xt=function(){return Xt=Object.assign||function(e){for(var n,i=1,r=arguments.length;i<r;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(e[s]=n[s])}return e},Xt.apply(this,arguments)};function u1(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]]);return n}function S_(t,e,n){if(n||arguments.length===2)for(var i=0,r=e.length,s;i<r;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))}var xo="right-scroll-bar-position",Eo="width-before-scroll-bar",T_="with-scroll-bars-hidden",k_="--removed-body-scroll-bar-size";function Pc(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}function C_(t,e){var n=B.useState(function(){return{value:t,callback:e,facade:{get current(){return n.value},set current(i){var r=n.value;r!==i&&(n.value=i,n.callback(i,r))}}}})[0];return n.callback=e,n.facade}var w_=typeof window<"u"?p.useLayoutEffect:p.useEffect,om=new WeakMap;function x_(t,e){var n=C_(null,function(i){return t.forEach(function(r){return Pc(r,i)})});return w_(function(){var i=om.get(n);if(i){var r=new Set(i),s=new Set(t),o=n.current;r.forEach(function(a){s.has(a)||Pc(a,null)}),s.forEach(function(a){r.has(a)||Pc(a,o)})}om.set(n,t)},[t]),n}function E_(t){return t}function P_(t,e){e===void 0&&(e=E_);var n=[],i=!1,r={read:function(){if(i)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:t},useMedium:function(s){var o=e(s,i);return n.push(o),function(){n=n.filter(function(a){return a!==o})}},assignSyncMedium:function(s){for(i=!0;n.length;){var o=n;n=[],o.forEach(s)}n={push:function(a){return s(a)},filter:function(){return n}}},assignMedium:function(s){i=!0;var o=[];if(n.length){var a=n;n=[],a.forEach(s),o=n}var c=function(){var u=o;o=[],u.forEach(s)},l=function(){return Promise.resolve().then(c)};l(),n={push:function(u){o.push(u),l()},filter:function(u){return o=o.filter(u),n}}}};return r}function R_(t){t===void 0&&(t={});var e=P_(null);return e.options=Xt({async:!0,ssr:!1},t),e}var d1=function(t){var e=t.sideCar,n=u1(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var i=e.read();if(!i)throw new Error("Sidecar medium not found");return p.createElement(i,Xt({},n))};d1.isSideCarExport=!0;function A_(t,e){return t.useMedium(e),d1}var f1=R_(),Rc=function(){},ya=p.forwardRef(function(t,e){var n=p.useRef(null),i=p.useState({onScrollCapture:Rc,onWheelCapture:Rc,onTouchMoveCapture:Rc}),r=i[0],s=i[1],o=t.forwardProps,a=t.children,c=t.className,l=t.removeScrollBar,u=t.enabled,d=t.shards,h=t.sideCar,m=t.noRelative,g=t.noIsolation,f=t.inert,y=t.allowPinchZoom,v=t.as,C=v===void 0?"div":v,T=t.gapMode,k=u1(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),b=h,w=x_([n,e]),x=Xt(Xt({},k),r);return p.createElement(p.Fragment,null,u&&p.createElement(b,{sideCar:f1,removeScrollBar:l,shards:d,noRelative:m,noIsolation:g,inert:f,setCallbacks:s,allowPinchZoom:!!y,lockRef:n,gapMode:T}),o?p.cloneElement(p.Children.only(a),Xt(Xt({},x),{ref:w})):p.createElement(C,Xt({},x,{className:c,ref:w}),a))});ya.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};ya.classNames={fullWidth:Eo,zeroRight:xo};var I_=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function __(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=I_();return e&&t.setAttribute("nonce",e),t}function M_(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function O_(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var D_=function(){var t=0,e=null;return{add:function(n){t==0&&(e=__())&&(M_(e,n),O_(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},N_=function(){var t=D_();return function(e,n){p.useEffect(function(){return t.add(e),function(){t.remove()}},[e&&n])}},h1=function(){var t=N_(),e=function(n){var i=n.styles,r=n.dynamic;return t(i,r),null};return e},L_={left:0,top:0,right:0,gap:0},Ac=function(t){return parseInt(t||"",10)||0},V_=function(t){var e=window.getComputedStyle(document.body),n=e[t==="padding"?"paddingLeft":"marginLeft"],i=e[t==="padding"?"paddingTop":"marginTop"],r=e[t==="padding"?"paddingRight":"marginRight"];return[Ac(n),Ac(i),Ac(r)]},F_=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return L_;var e=V_(t),n=document.documentElement.clientWidth,i=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,i-n+e[2]-e[0])}},j_=h1(),or="data-scroll-locked",U_=function(t,e,n,i){var r=t.left,s=t.top,o=t.right,a=t.gap;return n===void 0&&(n="margin"),`
|
|
80
80
|
.`.concat(T_,` {
|
|
81
81
|
overflow: hidden `).concat(i,`;
|
|
82
82
|
padding-right: `).concat(a,"px ").concat(i,`;
|
|
@@ -113,29 +113,29 @@ a=extmap-allow-mixed`)!==-1){const s=r.sdp.split(`
|
|
|
113
113
|
body[`).concat(or,`] {
|
|
114
114
|
`).concat(k_,": ").concat(a,`px;
|
|
115
115
|
}
|
|
116
|
-
`)},am=function(){var t=parseInt(document.body.getAttribute(or)||"0",10);return isFinite(t)?t:0},B_=function(){
|
|
116
|
+
`)},am=function(){var t=parseInt(document.body.getAttribute(or)||"0",10);return isFinite(t)?t:0},B_=function(){p.useEffect(function(){return document.body.setAttribute(or,(am()+1).toString()),function(){var t=am()-1;t<=0?document.body.removeAttribute(or):document.body.setAttribute(or,t.toString())}},[])},$_=function(t){var e=t.noRelative,n=t.noImportant,i=t.gapMode,r=i===void 0?"margin":i;B_();var s=p.useMemo(function(){return F_(r)},[r]);return p.createElement(j_,{styles:U_(s,!e,r,n?"":"!important")})},iu=!1;if(typeof window<"u")try{var Ys=Object.defineProperty({},"passive",{get:function(){return iu=!0,!0}});window.addEventListener("test",Ys,Ys),window.removeEventListener("test",Ys,Ys)}catch{iu=!1}var Ni=iu?{passive:!1}:!1,H_=function(t){return t.tagName==="TEXTAREA"},p1=function(t,e){if(!(t instanceof Element))return!1;var n=window.getComputedStyle(t);return n[e]!=="hidden"&&!(n.overflowY===n.overflowX&&!H_(t)&&n[e]==="visible")},z_=function(t){return p1(t,"overflowY")},W_=function(t){return p1(t,"overflowX")},cm=function(t,e){var n=e.ownerDocument,i=e;do{typeof ShadowRoot<"u"&&i instanceof ShadowRoot&&(i=i.host);var r=m1(t,i);if(r){var s=g1(t,i),o=s[1],a=s[2];if(o>a)return!0}i=i.parentNode}while(i&&i!==n.body);return!1},q_=function(t){var e=t.scrollTop,n=t.scrollHeight,i=t.clientHeight;return[e,n,i]},G_=function(t){var e=t.scrollLeft,n=t.scrollWidth,i=t.clientWidth;return[e,n,i]},m1=function(t,e){return t==="v"?z_(e):W_(e)},g1=function(t,e){return t==="v"?q_(e):G_(e)},K_=function(t,e){return t==="h"&&e==="rtl"?-1:1},Z_=function(t,e,n,i,r){var s=K_(t,window.getComputedStyle(e).direction),o=s*i,a=n.target,c=e.contains(a),l=!1,u=o>0,d=0,h=0;do{if(!a)break;var m=g1(t,a),g=m[0],f=m[1],y=m[2],v=f-y-s*g;(g||v)&&m1(t,a)&&(d+=v,h+=g);var C=a.parentNode;a=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!c&&a!==document.body||c&&(e.contains(a)||e===a));return(u&&Math.abs(d)<1||!u&&Math.abs(h)<1)&&(l=!0),l},Js=function(t){return"changedTouches"in t?[t.changedTouches[0].clientX,t.changedTouches[0].clientY]:[0,0]},lm=function(t){return[t.deltaX,t.deltaY]},um=function(t){return t&&"current"in t?t.current:t},Y_=function(t,e){return t[0]===e[0]&&t[1]===e[1]},J_=function(t){return`
|
|
117
117
|
.block-interactivity-`.concat(t,` {pointer-events: none;}
|
|
118
118
|
.allow-interactivity-`).concat(t,` {pointer-events: all;}
|
|
119
|
-
`)},X_=0,Li=[];function Q_(t){var e=m.useRef([]),n=m.useRef([0,0]),i=m.useRef(),r=m.useState(X_++)[0],s=m.useState(h1)[0],o=m.useRef(t);m.useEffect(function(){o.current=t},[t]),m.useEffect(function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(r));var f=S_([t.lockRef.current],(t.shards||[]).map(um),!0).filter(Boolean);return f.forEach(function(y){return y.classList.add("allow-interactivity-".concat(r))}),function(){document.body.classList.remove("block-interactivity-".concat(r)),f.forEach(function(y){return y.classList.remove("allow-interactivity-".concat(r))})}}},[t.inert,t.lockRef.current,t.shards]);var a=m.useCallback(function(f,y){if("touches"in f&&f.touches.length===2||f.type==="wheel"&&f.ctrlKey)return!o.current.allowPinchZoom;var v=Js(f),C=n.current,T="deltaX"in f?f.deltaX:C[0]-v[0],k="deltaY"in f?f.deltaY:C[1]-v[1],b,w=f.target,x=Math.abs(T)>Math.abs(k)?"h":"v";if("touches"in f&&x==="h"&&w.type==="range")return!1;var R=cm(x,w);if(!R)return!0;if(R?b=x:(b=x==="v"?"h":"v",R=cm(x,w)),!R)return!1;if(!i.current&&"changedTouches"in f&&(T||k)&&(i.current=b),!b)return!0;var _=i.current||b;return Z_(_,y,f,_==="h"?T:k)},[]),c=m.useCallback(function(f){var y=f;if(!(!Li.length||Li[Li.length-1]!==s)){var v="deltaY"in y?lm(y):Js(y),C=e.current.filter(function(b){return b.name===y.type&&(b.target===y.target||y.target===b.shadowParent)&&Y_(b.delta,v)})[0];if(C&&C.should){y.cancelable&&y.preventDefault();return}if(!C){var T=(o.current.shards||[]).map(um).filter(Boolean).filter(function(b){return b.contains(y.target)}),k=T.length>0?a(y,T[0]):!o.current.noIsolation;k&&y.cancelable&&y.preventDefault()}}},[]),l=m.useCallback(function(f,y,v,C){var T={name:f,delta:y,target:v,should:C,shadowParent:eM(v)};e.current.push(T),setTimeout(function(){e.current=e.current.filter(function(k){return k!==T})},1)},[]),u=m.useCallback(function(f){n.current=Js(f),i.current=void 0},[]),d=m.useCallback(function(f){l(f.type,lm(f),f.target,a(f,t.lockRef.current))},[]),h=m.useCallback(function(f){l(f.type,Js(f),f.target,a(f,t.lockRef.current))},[]);m.useEffect(function(){return Li.push(s),t.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:h}),document.addEventListener("wheel",c,Ni),document.addEventListener("touchmove",c,Ni),document.addEventListener("touchstart",u,Ni),function(){Li=Li.filter(function(f){return f!==s}),document.removeEventListener("wheel",c,Ni),document.removeEventListener("touchmove",c,Ni),document.removeEventListener("touchstart",u,Ni)}},[]);var p=t.removeScrollBar,g=t.inert;return m.createElement(m.Fragment,null,g?m.createElement(s,{styles:J_(r)}):null,p?m.createElement($_,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function eM(t){for(var e=null;t!==null;)t instanceof ShadowRoot&&(e=t.host,t=t.host),t=t.parentNode;return e}const tM=A_(f1,Q_);var v1=m.forwardRef(function(t,e){return m.createElement(ya,Xt({},t,{ref:e,sideCar:tM}))});v1.classNames=ya.classNames;var nM=[" ","Enter","ArrowUp","ArrowDown"],iM=[" ","Enter"],xi="Select",[ba,Sa,rM]=OI(xi),[Er,iN]=Md(xi,[rM,Xb]),Ta=Xb(),[sM,si]=Er(xi),[oM,aM]=Er(xi),y1=t=>{const{__scopeSelect:e,children:n,open:i,defaultOpen:r,onOpenChange:s,value:o,defaultValue:a,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:h,required:p,form:g}=t,f=Ta(e),[y,v]=m.useState(null),[C,T]=m.useState(null),[k,b]=m.useState(!1),w=NI(l),[x,R]=Xl({prop:i,defaultProp:r??!1,onChange:s,caller:xi}),[_,S]=Xl({prop:o,defaultProp:a,onChange:c,caller:xi}),I=m.useRef(null),N=y?g||!!y.closest("form"):!0,[z,K]=m.useState(new Set),se=Array.from(z).map(Q=>Q.props.value).join(";");return E.jsx(c_,{...f,children:E.jsxs(sM,{required:p,scope:e,trigger:y,onTriggerChange:v,valueNode:C,onValueNodeChange:T,valueNodeHasChildren:k,onValueNodeHasChildrenChange:b,contentId:Od(),value:_,onValueChange:S,open:x,onOpenChange:R,dir:w,triggerPointerDownPosRef:I,disabled:h,children:[E.jsx(ba.Provider,{scope:e,children:E.jsx(oM,{scope:t.__scopeSelect,onNativeOptionAdd:m.useCallback(Q=>{K(Y=>new Set(Y).add(Q))},[]),onNativeOptionRemove:m.useCallback(Q=>{K(Y=>{const F=new Set(Y);return F.delete(Q),F})},[]),children:n})}),N?E.jsxs(U1,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:d,value:_,onChange:Q=>S(Q.target.value),disabled:h,form:g,children:[_===void 0?E.jsx("option",{value:""}):null,Array.from(z)]},se):null]})})};y1.displayName=xi;var b1="SelectTrigger",S1=m.forwardRef((t,e)=>{const{__scopeSelect:n,disabled:i=!1,...r}=t,s=Ta(n),o=si(b1,n),a=o.disabled||i,c=st(e,o.onTriggerChange),l=Sa(n),u=m.useRef("touch"),[d,h,p]=$1(f=>{const y=l().filter(T=>!T.disabled),v=y.find(T=>T.value===o.value),C=H1(y,f,v);C!==void 0&&o.onValueChange(C.value)}),g=f=>{a||(o.onOpenChange(!0),p()),f&&(o.triggerPointerDownPosRef.current={x:Math.round(f.pageX),y:Math.round(f.pageY)})};return E.jsx(l_,{asChild:!0,...s,children:E.jsx(Ue.button,{type:"button",role:"combobox","aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":"none",dir:o.dir,"data-state":o.open?"open":"closed",disabled:a,"data-disabled":a?"":void 0,"data-placeholder":B1(o.value)?"":void 0,...r,ref:c,onClick:$e(r.onClick,f=>{f.currentTarget.focus(),u.current!=="mouse"&&g(f)}),onPointerDown:$e(r.onPointerDown,f=>{u.current=f.pointerType;const y=f.target;y.hasPointerCapture(f.pointerId)&&y.releasePointerCapture(f.pointerId),f.button===0&&f.ctrlKey===!1&&f.pointerType==="mouse"&&(g(f),f.preventDefault())}),onKeyDown:$e(r.onKeyDown,f=>{const y=d.current!=="";!(f.ctrlKey||f.altKey||f.metaKey)&&f.key.length===1&&h(f.key),!(y&&f.key===" ")&&nM.includes(f.key)&&(g(),f.preventDefault())})})})});S1.displayName=b1;var T1="SelectValue",k1=m.forwardRef((t,e)=>{const{__scopeSelect:n,className:i,style:r,children:s,placeholder:o="",...a}=t,c=si(T1,n),{onValueNodeHasChildrenChange:l}=c,u=s!==void 0,d=st(e,c.onValueNodeChange);return gt(()=>{l(u)},[l,u]),E.jsx(Ue.span,{...a,ref:d,style:{pointerEvents:"none"},children:B1(c.value)?E.jsx(E.Fragment,{children:o}):s})});k1.displayName=T1;var cM="SelectIcon",C1=m.forwardRef((t,e)=>{const{__scopeSelect:n,children:i,...r}=t;return E.jsx(Ue.span,{"aria-hidden":!0,...r,ref:e,children:i||"▼"})});C1.displayName=cM;var lM="SelectPortal",w1=t=>E.jsx(a1,{asChild:!0,...t});w1.displayName=lM;var Ei="SelectContent",x1=m.forwardRef((t,e)=>{const n=si(Ei,t.__scopeSelect),[i,r]=m.useState();if(gt(()=>{r(new DocumentFragment)},[]),!n.open){const s=i;return s?na.createPortal(E.jsx(E1,{scope:t.__scopeSelect,children:E.jsx(ba.Slot,{scope:t.__scopeSelect,children:E.jsx("div",{children:t.children})})}),s):null}return E.jsx(P1,{...t,ref:e})});x1.displayName=Ei;var Ft=10,[E1,oi]=Er(Ei),uM="SelectContentImpl",dM=gs("SelectContent.RemoveScroll"),P1=m.forwardRef((t,e)=>{const{__scopeSelect:n,position:i="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:s,onPointerDownOutside:o,side:a,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:h,collisionPadding:p,sticky:g,hideWhenDetached:f,avoidCollisions:y,...v}=t,C=si(Ei,n),[T,k]=m.useState(null),[b,w]=m.useState(null),x=st(e,V=>k(V)),[R,_]=m.useState(null),[S,I]=m.useState(null),N=Sa(n),[z,K]=m.useState(!1),se=m.useRef(!1);m.useEffect(()=>{if(T)return b_(T)},[T]),zI();const Q=m.useCallback(V=>{const[q,...te]=N().map(H=>H.ref.current),[ee]=te.slice(-1),ae=document.activeElement;for(const H of V)if(H===ae||(H==null||H.scrollIntoView({block:"nearest"}),H===q&&b&&(b.scrollTop=0),H===ee&&b&&(b.scrollTop=b.scrollHeight),H==null||H.focus(),document.activeElement!==ae))return},[N,b]),Y=m.useCallback(()=>Q([R,T]),[Q,R,T]);m.useEffect(()=>{z&&Y()},[z,Y]);const{onOpenChange:F,triggerPointerDownPosRef:ce}=C;m.useEffect(()=>{if(T){let V={x:0,y:0};const q=ee=>{var ae,H;V={x:Math.abs(Math.round(ee.pageX)-(((ae=ce.current)==null?void 0:ae.x)??0)),y:Math.abs(Math.round(ee.pageY)-(((H=ce.current)==null?void 0:H.y)??0))}},te=ee=>{V.x<=10&&V.y<=10?ee.preventDefault():T.contains(ee.target)||F(!1),document.removeEventListener("pointermove",q),ce.current=null};return ce.current!==null&&(document.addEventListener("pointermove",q),document.addEventListener("pointerup",te,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",q),document.removeEventListener("pointerup",te,{capture:!0})}}},[T,F,ce]),m.useEffect(()=>{const V=()=>F(!1);return window.addEventListener("blur",V),window.addEventListener("resize",V),()=>{window.removeEventListener("blur",V),window.removeEventListener("resize",V)}},[F]);const[A,j]=$1(V=>{const q=N().filter(ae=>!ae.disabled),te=q.find(ae=>ae.ref.current===document.activeElement),ee=H1(q,V,te);ee&&setTimeout(()=>ee.ref.current.focus())}),W=m.useCallback((V,q,te)=>{const ee=!se.current&&!te;(C.value!==void 0&&C.value===q||ee)&&(_(V),ee&&(se.current=!0))},[C.value]),Z=m.useCallback(()=>T==null?void 0:T.focus(),[T]),J=m.useCallback((V,q,te)=>{const ee=!se.current&&!te;(C.value!==void 0&&C.value===q||ee)&&I(V)},[C.value]),re=i==="popper"?ru:R1,oe=re===ru?{side:a,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:h,collisionPadding:p,sticky:g,hideWhenDetached:f,avoidCollisions:y}:{};return E.jsx(E1,{scope:n,content:T,viewport:b,onViewportChange:w,itemRefCallback:W,selectedItem:R,onItemLeave:Z,itemTextRefCallback:J,focusSelectedItem:Y,selectedItemText:S,position:i,isPositioned:z,searchRef:A,children:E.jsx(v1,{as:dM,allowPinchZoom:!0,children:E.jsx(Fb,{asChild:!0,trapped:C.open,onMountAutoFocus:V=>{V.preventDefault()},onUnmountAutoFocus:$e(r,V=>{var q;(q=C.trigger)==null||q.focus({preventScroll:!0}),V.preventDefault()}),children:E.jsx(Lb,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:o,onFocusOutside:V=>V.preventDefault(),onDismiss:()=>C.onOpenChange(!1),children:E.jsx(re,{role:"listbox",id:C.contentId,"data-state":C.open?"open":"closed",dir:C.dir,onContextMenu:V=>V.preventDefault(),...v,...oe,onPlaced:()=>K(!0),ref:x,style:{display:"flex",flexDirection:"column",outline:"none",...v.style},onKeyDown:$e(v.onKeyDown,V=>{const q=V.ctrlKey||V.altKey||V.metaKey;if(V.key==="Tab"&&V.preventDefault(),!q&&V.key.length===1&&j(V.key),["ArrowUp","ArrowDown","Home","End"].includes(V.key)){let ee=N().filter(ae=>!ae.disabled).map(ae=>ae.ref.current);if(["ArrowUp","End"].includes(V.key)&&(ee=ee.slice().reverse()),["ArrowUp","ArrowDown"].includes(V.key)){const ae=V.target,H=ee.indexOf(ae);ee=ee.slice(H+1)}setTimeout(()=>Q(ee)),V.preventDefault()}})})})})})})});P1.displayName=uM;var fM="SelectItemAlignedPosition",R1=m.forwardRef((t,e)=>{const{__scopeSelect:n,onPlaced:i,...r}=t,s=si(Ei,n),o=oi(Ei,n),[a,c]=m.useState(null),[l,u]=m.useState(null),d=st(e,x=>u(x)),h=Sa(n),p=m.useRef(!1),g=m.useRef(!0),{viewport:f,selectedItem:y,selectedItemText:v,focusSelectedItem:C}=o,T=m.useCallback(()=>{if(s.trigger&&s.valueNode&&a&&l&&f&&y&&v){const x=s.trigger.getBoundingClientRect(),R=l.getBoundingClientRect(),_=s.valueNode.getBoundingClientRect(),S=v.getBoundingClientRect();if(s.dir!=="rtl"){const ae=S.left-R.left,H=_.left-ae,Se=x.left-H,Qe=x.width+Se,Dt=Math.max(Qe,R.width),Rr=window.innerWidth-Ft,Ar=zp(H,[Ft,Math.max(Ft,Rr-Dt)]);a.style.minWidth=Qe+"px",a.style.left=Ar+"px"}else{const ae=R.right-S.right,H=window.innerWidth-_.right-ae,Se=window.innerWidth-x.right-H,Qe=x.width+Se,Dt=Math.max(Qe,R.width),Rr=window.innerWidth-Ft,Ar=zp(H,[Ft,Math.max(Ft,Rr-Dt)]);a.style.minWidth=Qe+"px",a.style.right=Ar+"px"}const I=h(),N=window.innerHeight-Ft*2,z=f.scrollHeight,K=window.getComputedStyle(l),se=parseInt(K.borderTopWidth,10),Q=parseInt(K.paddingTop,10),Y=parseInt(K.borderBottomWidth,10),F=parseInt(K.paddingBottom,10),ce=se+Q+z+F+Y,A=Math.min(y.offsetHeight*5,ce),j=window.getComputedStyle(f),W=parseInt(j.paddingTop,10),Z=parseInt(j.paddingBottom,10),J=x.top+x.height/2-Ft,re=N-J,oe=y.offsetHeight/2,V=y.offsetTop+oe,q=se+Q+V,te=ce-q;if(q<=J){const ae=I.length>0&&y===I[I.length-1].ref.current;a.style.bottom="0px";const H=l.clientHeight-f.offsetTop-f.offsetHeight,Se=Math.max(re,oe+(ae?Z:0)+H+Y),Qe=q+Se;a.style.height=Qe+"px"}else{const ae=I.length>0&&y===I[0].ref.current;a.style.top="0px";const Se=Math.max(J,se+f.offsetTop+(ae?W:0)+oe)+te;a.style.height=Se+"px",f.scrollTop=q-J+f.offsetTop}a.style.margin=`${Ft}px 0`,a.style.minHeight=A+"px",a.style.maxHeight=N+"px",i==null||i(),requestAnimationFrame(()=>p.current=!0)}},[h,s.trigger,s.valueNode,a,l,f,y,v,s.dir,i]);gt(()=>T(),[T]);const[k,b]=m.useState();gt(()=>{l&&b(window.getComputedStyle(l).zIndex)},[l]);const w=m.useCallback(x=>{x&&g.current===!0&&(T(),C==null||C(),g.current=!1)},[T,C]);return E.jsx(pM,{scope:n,contentWrapper:a,shouldExpandOnScrollRef:p,onScrollButtonChange:w,children:E.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:k},children:E.jsx(Ue.div,{...r,ref:d,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});R1.displayName=fM;var hM="SelectPopperPosition",ru=m.forwardRef((t,e)=>{const{__scopeSelect:n,align:i="start",collisionPadding:r=Ft,...s}=t,o=Ta(n);return E.jsx(u_,{...o,...s,ref:e,align:i,collisionPadding:r,style:{boxSizing:"border-box",...s.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ru.displayName=hM;var[pM,Hd]=Er(Ei,{}),su="SelectViewport",A1=m.forwardRef((t,e)=>{const{__scopeSelect:n,nonce:i,...r}=t,s=oi(su,n),o=Hd(su,n),a=st(e,s.onViewportChange),c=m.useRef(0);return E.jsxs(E.Fragment,{children:[E.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),E.jsx(ba.Slot,{scope:n,children:E.jsx(Ue.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:a,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:$e(r.onScroll,l=>{const u=l.currentTarget,{contentWrapper:d,shouldExpandOnScrollRef:h}=o;if(h!=null&&h.current&&d){const p=Math.abs(c.current-u.scrollTop);if(p>0){const g=window.innerHeight-Ft*2,f=parseFloat(d.style.minHeight),y=parseFloat(d.style.height),v=Math.max(f,y);if(v<g){const C=v+p,T=Math.min(g,C),k=C-T;d.style.height=T+"px",d.style.bottom==="0px"&&(u.scrollTop=k>0?k:0,d.style.justifyContent="flex-end")}}}c.current=u.scrollTop})})})]})});A1.displayName=su;var I1="SelectGroup",[mM,gM]=Er(I1),vM=m.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t,r=Od();return E.jsx(mM,{scope:n,id:r,children:E.jsx(Ue.div,{role:"group","aria-labelledby":r,...i,ref:e})})});vM.displayName=I1;var _1="SelectLabel",yM=m.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t,r=gM(_1,n);return E.jsx(Ue.div,{id:r.id,...i,ref:e})});yM.displayName=_1;var Yo="SelectItem",[bM,M1]=Er(Yo),O1=m.forwardRef((t,e)=>{const{__scopeSelect:n,value:i,disabled:r=!1,textValue:s,...o}=t,a=si(Yo,n),c=oi(Yo,n),l=a.value===i,[u,d]=m.useState(s??""),[h,p]=m.useState(!1),g=st(e,C=>{var T;return(T=c.itemRefCallback)==null?void 0:T.call(c,C,i,r)}),f=Od(),y=m.useRef("touch"),v=()=>{r||(a.onValueChange(i),a.onOpenChange(!1))};if(i==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return E.jsx(bM,{scope:n,value:i,disabled:r,textId:f,isSelected:l,onItemTextChange:m.useCallback(C=>{d(T=>T||((C==null?void 0:C.textContent)??"").trim())},[]),children:E.jsx(ba.ItemSlot,{scope:n,value:i,disabled:r,textValue:u,children:E.jsx(Ue.div,{role:"option","aria-labelledby":f,"data-highlighted":h?"":void 0,"aria-selected":l&&h,"data-state":l?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...o,ref:g,onFocus:$e(o.onFocus,()=>p(!0)),onBlur:$e(o.onBlur,()=>p(!1)),onClick:$e(o.onClick,()=>{y.current!=="mouse"&&v()}),onPointerUp:$e(o.onPointerUp,()=>{y.current==="mouse"&&v()}),onPointerDown:$e(o.onPointerDown,C=>{y.current=C.pointerType}),onPointerMove:$e(o.onPointerMove,C=>{var T;y.current=C.pointerType,r?(T=c.onItemLeave)==null||T.call(c):y.current==="mouse"&&C.currentTarget.focus({preventScroll:!0})}),onPointerLeave:$e(o.onPointerLeave,C=>{var T;C.currentTarget===document.activeElement&&((T=c.onItemLeave)==null||T.call(c))}),onKeyDown:$e(o.onKeyDown,C=>{var k;((k=c.searchRef)==null?void 0:k.current)!==""&&C.key===" "||(iM.includes(C.key)&&v(),C.key===" "&&C.preventDefault())})})})})});O1.displayName=Yo;var qr="SelectItemText",D1=m.forwardRef((t,e)=>{const{__scopeSelect:n,className:i,style:r,...s}=t,o=si(qr,n),a=oi(qr,n),c=M1(qr,n),l=aM(qr,n),[u,d]=m.useState(null),h=st(e,v=>d(v),c.onItemTextChange,v=>{var C;return(C=a.itemTextRefCallback)==null?void 0:C.call(a,v,c.value,c.disabled)}),p=u==null?void 0:u.textContent,g=m.useMemo(()=>E.jsx("option",{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:f,onNativeOptionRemove:y}=l;return gt(()=>(f(g),()=>y(g)),[f,y,g]),E.jsxs(E.Fragment,{children:[E.jsx(Ue.span,{id:c.textId,...s,ref:h}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?na.createPortal(s.children,o.valueNode):null]})});D1.displayName=qr;var N1="SelectItemIndicator",L1=m.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t;return M1(N1,n).isSelected?E.jsx(Ue.span,{"aria-hidden":!0,...i,ref:e}):null});L1.displayName=N1;var ou="SelectScrollUpButton",V1=m.forwardRef((t,e)=>{const n=oi(ou,t.__scopeSelect),i=Hd(ou,t.__scopeSelect),[r,s]=m.useState(!1),o=st(e,i.onScrollButtonChange);return gt(()=>{if(n.viewport&&n.isPositioned){let a=function(){const l=c.scrollTop>0;s(l)};const c=n.viewport;return a(),c.addEventListener("scroll",a),()=>c.removeEventListener("scroll",a)}},[n.viewport,n.isPositioned]),r?E.jsx(j1,{...t,ref:o,onAutoScroll:()=>{const{viewport:a,selectedItem:c}=n;a&&c&&(a.scrollTop=a.scrollTop-c.offsetHeight)}}):null});V1.displayName=ou;var au="SelectScrollDownButton",F1=m.forwardRef((t,e)=>{const n=oi(au,t.__scopeSelect),i=Hd(au,t.__scopeSelect),[r,s]=m.useState(!1),o=st(e,i.onScrollButtonChange);return gt(()=>{if(n.viewport&&n.isPositioned){let a=function(){const l=c.scrollHeight-c.clientHeight,u=Math.ceil(c.scrollTop)<l;s(u)};const c=n.viewport;return a(),c.addEventListener("scroll",a),()=>c.removeEventListener("scroll",a)}},[n.viewport,n.isPositioned]),r?E.jsx(j1,{...t,ref:o,onAutoScroll:()=>{const{viewport:a,selectedItem:c}=n;a&&c&&(a.scrollTop=a.scrollTop+c.offsetHeight)}}):null});F1.displayName=au;var j1=m.forwardRef((t,e)=>{const{__scopeSelect:n,onAutoScroll:i,...r}=t,s=oi("SelectScrollButton",n),o=m.useRef(null),a=Sa(n),c=m.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return m.useEffect(()=>()=>c(),[c]),gt(()=>{var u;const l=a().find(d=>d.ref.current===document.activeElement);(u=l==null?void 0:l.ref.current)==null||u.scrollIntoView({block:"nearest"})},[a]),E.jsx(Ue.div,{"aria-hidden":!0,...r,ref:e,style:{flexShrink:0,...r.style},onPointerDown:$e(r.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(i,50))}),onPointerMove:$e(r.onPointerMove,()=>{var l;(l=s.onItemLeave)==null||l.call(s),o.current===null&&(o.current=window.setInterval(i,50))}),onPointerLeave:$e(r.onPointerLeave,()=>{c()})})}),SM="SelectSeparator",TM=m.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t;return E.jsx(Ue.div,{"aria-hidden":!0,...i,ref:e})});TM.displayName=SM;var cu="SelectArrow",kM=m.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t,r=Ta(n),s=si(cu,n),o=oi(cu,n);return s.open&&o.position==="popper"?E.jsx(d_,{...r,...i,ref:e}):null});kM.displayName=cu;var CM="SelectBubbleInput",U1=m.forwardRef(({__scopeSelect:t,value:e,...n},i)=>{const r=m.useRef(null),s=st(i,r),o=h_(e);return m.useEffect(()=>{const a=r.current;if(!a)return;const c=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(c,"value").set;if(o!==e&&u){const d=new Event("change",{bubbles:!0});u.call(a,e),a.dispatchEvent(d)}},[o,e]),E.jsx(Ue.select,{...n,style:{...c1,...n.style},ref:s,defaultValue:e})});U1.displayName=CM;function B1(t){return t===""||t===void 0}function $1(t){const e=Ci(t),n=m.useRef(""),i=m.useRef(0),r=m.useCallback(o=>{const a=n.current+o;e(a),function c(l){n.current=l,window.clearTimeout(i.current),l!==""&&(i.current=window.setTimeout(()=>c(""),1e3))}(a)},[e]),s=m.useCallback(()=>{n.current="",window.clearTimeout(i.current)},[]);return m.useEffect(()=>()=>window.clearTimeout(i.current),[]),[n,r,s]}function H1(t,e,n){const r=e.length>1&&Array.from(e).every(l=>l===e[0])?e[0]:e,s=n?t.indexOf(n):-1;let o=wM(t,Math.max(s,0));r.length===1&&(o=o.filter(l=>l!==n));const c=o.find(l=>l.textValue.toLowerCase().startsWith(r.toLowerCase()));return c!==n?c:void 0}function wM(t,e){return t.map((n,i)=>t[(e+i)%t.length])}var xM=y1,EM=S1,PM=k1,RM=C1,AM=w1,IM=x1,_M=A1,MM=O1,OM=D1,DM=L1,NM=V1,LM=F1;function VM({...t}){return E.jsx(xM,{"data-slot":"select",...t})}function FM({...t}){return E.jsx(PM,{"data-slot":"select-value",...t})}function jM({className:t,size:e="default",children:n,...i}){return E.jsxs(EM,{"data-slot":"select-trigger","data-size":e,className:ue(["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"],t),...i,children:[n,E.jsx(RM,{asChild:!0,children:E.jsx(Ad,{weight:"bold",className:"size-4 transition-colors"})})]})}function UM({className:t,children:e,position:n="popper",...i}){return E.jsx(AM,{children:E.jsxs(IM,{"data-slot":"select-content",className:ue(["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",t),position:n,...i,children:[E.jsx($M,{}),E.jsx(_M,{className:ue("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:e}),E.jsx(HM,{})]})})}function BM({className:t,children:e,...n}){return E.jsxs(MM,{"data-slot":"select-item",className:ue(["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"],t),...n,children:[E.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:E.jsx(DM,{children:E.jsx(db,{className:"size-4",weight:"bold"})})}),E.jsx(OM,{children:e})]})}function $M({className:t,...e}){return E.jsx(NM,{"data-slot":"select-scroll-up-button",className:ue("flex cursor-default items-center justify-center py-1",t),...e,children:E.jsx(lb,{className:"size-4",weight:"bold"})})}function HM({className:t,...e}){return E.jsx(LM,{"data-slot":"select-scroll-down-button",className:ue("flex cursor-default items-center justify-center py-1",t),...e,children:E.jsx(Ad,{className:"size-4",weight:"bold"})})}const zM=ta.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 dm({kind:t,track:e,requestPermissions:n,onError:i,...r}){const s=r.size||"default",o=pa(),{devices:a,activeDeviceId:c,setActiveMediaDevice:l}=LA({kind:t,room:o,track:e,requestPermissions:n,onError:i});return E.jsxs(VM,{value:c,onValueChange:l,children:[E.jsx(jM,{className:ue(zM({size:s}),r.className,"hover:bg"),children:s!=="sm"&&E.jsx(FM,{className:"font-mono text-sm",placeholder:`Select a ${t}`})}),E.jsx(UM,{children:a.map(u=>E.jsx(BM,{value:u.deviceId,className:"font-mono text-xs",children:u.label},u.deviceId))})]})}function WM(t,e,n=!1){if(n)return Id;switch(t){case M.Source.Microphone:return e?fb:hb;case M.Source.Camera:return e?gb:vb;case M.Source.ScreenShare:return pb;default:return m.Fragment}}function Ic({source:t,pressed:e,pending:n,className:i,...r}){const s=WM(t,e??!1,n),o=t===M.Source.Microphone&&!(e??!1)&&!n,a=t===M.Source.Camera&&!(e??!1)&&!n;return E.jsxs(Db,{pressed:e,"aria-label":`Toggle ${t}`,className:ue(i),...r,children:[E.jsx(s,{weight:"bold",className:ue(n&&"animate-spin",o||a?"text-red-500":void 0)}),r.children]})}const qM=t=>{switch(t){case M.Source.Camera:return 1;case M.Source.Microphone:return 2;case M.Source.ScreenShare:return 3;default:return 0}};function GM(){const t=NA(),e=n=>!!(t!=null&&t.canPublish)&&(t.canPublishSources.length===0||t.canPublishSources.includes(qM(n)));return{camera:e(M.Source.Camera),microphone:e(M.Source.Microphone),screenShare:e(M.Source.ScreenShare),data:(t==null?void 0:t.canPublishData)??!1}}function KM(t={}){const{controls:e,saveUserChoices:n=!0}=t,i={leave:!0,...e},{microphoneTrack:r,localParticipant:s}=nb(),o=GM(),a=ri(),c=vc({source:M.Source.Microphone,onDeviceError:w=>{var x;return(x=t.onDeviceError)==null?void 0:x.call(t,{source:M.Source.Microphone,error:w})}}),l=vc({source:M.Source.Camera,onDeviceError:w=>{var x;return(x=t.onDeviceError)==null?void 0:x.call(t,{source:M.Source.Camera,error:w})}}),u=vc({source:M.Source.ScreenShare,onDeviceError:w=>{var x;return(x=t.onDeviceError)==null?void 0:x.call(t,{source:M.Source.ScreenShare,error:w})}}),d=m.useMemo(()=>({participant:s,source:M.Source.Microphone,publication:r}),[s,r]);i.microphone??(i.microphone=o.microphone),i.screenShare??(i.screenShare=o.screenShare),i.camera??(i.camera=o.camera),i.chat??(i.chat=o.data);const{saveAudioInputEnabled:h,saveAudioInputDeviceId:p,saveVideoInputEnabled:g,saveVideoInputDeviceId:f}=$A({preventSave:!n}),y=m.useCallback(()=>{a&&a.disconnect()},[a]),v=m.useCallback(w=>{p(w??"default")},[p]),C=m.useCallback(w=>{f(w??"default")},[f]),T=m.useCallback(async w=>{u.enabled&&u.toggle(!1),await l.toggle(w),g(!l.enabled)},[l,g,u]),k=m.useCallback(async w=>{await c.toggle(w),h(!c.enabled)},[c,h]),b=m.useCallback(async w=>{l.enabled&&l.toggle(!1),await u.toggle(w)},[l,u]);return{micTrackRef:d,visibleControls:i,cameraToggle:{...l,toggle:T},microphoneToggle:{...c,toggle:k},screenShareToggle:{...u,toggle:b},handleDisconnect:y,handleAudioDeviceChange:v,handleVideoDeviceChange:C}}const ZM={card:"relative bg-gradient-to-br from-black to-gray-900 border border-gray-900 w-full h-full flex flex-col items-center 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-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",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:"flex items-center rounded-md pl-1 text-sm bg-gray-800 border border-gray-600 text-white",spinner:"w-10 h-10 animate-spin text-gray-400 mb-2"},YM={card:"relative bg-gradient-to-br from-white to-gray-50 border border-gray-200 w-full h-full flex flex-col items-center 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",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/50 backdrop-blur-sm",chatInput:"flex items-center rounded-md pl-1 text-sm bg-white border border-gray-200",spinner:"w-10 h-10 animate-spin text-blue-500 mb-2"},JM={card:"relative bg-gradient-to-br from-[#171727] to-[#12121F] border border-gray-800 w-full h-full flex flex-col items-center 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",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:"flex items-center rounded-md pl-1 text-sm",spinner:"w-10 h-10 animate-spin text-blue-400 mb-2"},fm={dark:ZM,light:YM,vox:JM};function Ai(t){return fm[t]||fm.vox}function XM({controls:t,saveUserChoices:e=!0,capabilities:n,className:i,onSendMessage:r,onChatOpenChange:s,onDisconnect:o,onDeviceError:a,theme:c="vox",...l}){const[u,d]=m.useState(!1),[h,p]=m.useState(!1),g=Ai(c),{micTrackRef:f,visibleControls:y,cameraToggle:v,microphoneToggle:C,screenShareToggle:T,handleAudioDeviceChange:k,handleVideoDeviceChange:b,handleDisconnect:w}=KM({controls:t,saveUserChoices:e}),x=async _=>{p(!0);try{await(r==null?void 0:r(_))}finally{p(!1)}},R=()=>{w(),o==null||o()};return m.useEffect(()=>{s==null||s(u)},[u,s]),E.jsxs("div",{"aria-label":"Voice assistant controls",className:ue(g.controlBar,i),...l,children:[n.suportsChatInput&&E.jsxs("div",{inert:!u,className:ue("overflow-hidden transition-[height] relative duration-300 ease-in-out",u?"h-[64px] mb-3":"h-0"),children:[E.jsx("div",{className:"flex h-9 px-4 w-full",children:E.jsx(wI,{onSend:x,disabled:h,className:ue("w-full",g.chatInput)})}),E.jsx("hr",{className:"border-border my-2 mx-5"})]}),E.jsxs("div",{className:ue("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:[E.jsxs("div",{className:"flex gap-y-2 justify-start",children:[y.microphone&&E.jsxs("div",{className:"flex gap-y-2 items-center rounded-full overflow-hidden border-none ",children:[E.jsx(Ic,{variant:"primary",source:M.Source.Microphone,pressed:C.enabled,disabled:C.pending,onPressedChange:C.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),E.jsx(ab,{barCount:3,trackRef:f,options:{minHeight:5},className:"flex h-full w-auto items-center justify-center gap-x-0.5",children:E.jsx("span",{className:ue(["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"])})}),E.jsx(dm,{size:"sm",kind:"audioinput",onError:a?_=>_ instanceof Error?a({source:M.Source.Microphone,error:_}):void 0:void 0,onActiveDeviceChange:k,className:ue(["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&&y.camera&&E.jsxs("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:[E.jsx(Ic,{variant:"primary",source:M.Source.Camera,pressed:v.enabled,pending:v.pending,disabled:v.pending,onPressedChange:v.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),E.jsx(dm,{size:"sm",kind:"videoinput",onError:a?_=>_ instanceof Error?a({source:M.Source.Camera,error:_}):void 0:void 0,onActiveDeviceChange:b,className:ue(["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]"])})]}),y.leave&&E.jsx("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:E.jsx(_b,{onClick:R,className:"font-semibold py-2 rounded-none border-none bg-transparent text-inherit transition-colors flex items-center",children:E.jsx(mb,{weight:"bold",className:"text-red-600"})})}),n.suportsScreenShare&&y.screenShare&&E.jsx("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:E.jsx(Ic,{variant:"secondary",source:M.Source.ScreenShare,pressed:T.enabled,disabled:T.pending,onPressedChange:T.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"})})]}),y.chat&&E.jsx("div",{className:"flex items-center rounded-full overflow-hidden bg-secondary text-secondary-foreground border-none ",children:E.jsx(Db,{variant:"secondary","aria-label":"Toggle chat",pressed:u,onPressedChange:_=>{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:E.jsx(ub,{weight:"bold",className:"h-5 w-5"})})})]})]})}const QM=(t,e)=>{var a,c;const n=m.useMemo(()=>e?e(t.message):t.message,[t.message,e]),i=!!t.editTimestamp,r=new Date(t.timestamp),s=typeof navigator<"u"?navigator.language:"en-US",o=(a=t.from)!=null&&a.name&&t.from.name!==""?t.from.name:(c=t.from)==null?void 0:c.identity;return{message:n,hasBeenEdited:i,time:r,locale:s,name:o}},e6=({entry:t,messageFormatter:e,className:n,participantName:i,...r})=>{var u,d;const{message:s,time:o,locale:a}=QM(t,e),c=((u=t.from)==null?void 0:u.isLocal)??!1;ue("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 l=ue("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 E.jsx("li",{title:o.toLocaleTimeString(a,{timeStyle:"full"}),className:ue("group flex mb-2",c?"justify-end":"justify-start",n),...r,children:E.jsxs("div",{className:ue("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:[E.jsx("span",{className:l,children:c?((d=i==null?void 0:i[0])==null?void 0:d.toUpperCase())||"U":"A"}),E.jsx("span",{className:ue("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:s})]})})};function t6(t){B.useEffect(()=>{function e(){const n=t.current;n&&(n.scrollTop=n.scrollHeight)}if(t.current){const n=new ResizeObserver(e);return n.observe(t.current),e(),()=>n.disconnect()}},[t])}const n6=({className:t,children:e,...n})=>{const i=B.useRef(null);return t6(i),E.jsx("div",{ref:i,className:ue("flex flex-col justify-end",t),...n,children:e})},i6=({state:t,audioTrack:e,className:n,ref:i})=>E.jsx("div",{ref:i,className:ue("",n),children:E.jsx(ab,{barCount:5,state:t,options:{minHeight:5},trackRef:e,className:ue("flex aspect-video w-40 items-center justify-center gap-1"),children:E.jsx("span",{className:ue(["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]"])})})}),r6=({videoTrack:t,className:e,ref:n})=>{var i,r;return E.jsx("div",{ref:n,className:ue(e),children:E.jsx(ob,{trackRef:t,width:((i=t==null?void 0:t.publication.dimensions)==null?void 0:i.width)??0,height:((r=t==null?void 0:t.publication.dimensions)==null?void 0:r.height)??0,className:"rounded-md"})})},s6=Zn.create(ob),o6=({trackRef:t,className:e,ref:n})=>{var i,r;return E.jsx("div",{className:ue("bg-muted overflow-hidden rounded-md",e),children:E.jsx(s6,{ref:n,trackRef:t,width:((i=t==null?void 0:t.publication.dimensions)==null?void 0:i.width)??0,height:((r=t==null?void 0:t.publication.dimensions)==null?void 0:r.height)??0,className:ue("h-full w-auto")})})},hm=Zn.create(o6),a6=Zn.create(i6),c6=Zn.create(r6),hn={initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},exit:{opacity:0,scale:0},transition:{type:"spring",stiffness:675,damping:75,mass:1}},Vi={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 l6(t){const{localParticipant:e}=nb(),n=e.getTrackPublication(t);return B.useMemo(()=>n?{source:t,participant:e,publication:n}:void 0,[t,n,e])}function u6({chatOpen:t}){const{state:e,audioTrack:n,videoTrack:i,agent:{isActive:r=!1}={}}=rb(),[s]=ib([M.Source.ScreenShare]),o=l6(M.Source.Camera),a=o&&!o.publication.isMuted,c=s&&!s.publication.isMuted,l=a||c,u={...hn.transition,delay:t?0:.15},d={...hn.animate,scale:t?1:3,transition:u},h={...hn.animate,transition:u},p=u,g=u,f=i!==void 0;return E.jsx("div",{className:"relative w-full h-full z-10 flex items-center justify-center",children:E.jsx("div",{className:"relative w-full h-full max-w-2xl px-4 md:px-0",children:E.jsxs("div",{className:ue(Vi.grid),children:[r&&E.jsx("div",{className:ue(["grid",!t&&Vi.agentChatClosed,t&&l&&Vi.agentChatOpenWithSecondTile,t&&!l&&Vi.agentChatOpenWithoutSecondTile]),children:E.jsxs("div",{className:"h-full flex items-center justify-center",children:[!f&&E.jsx(a6,{layoutId:"agent",...hn,animate:d,transition:p,state:e,audioTrack:n,className:ue(t?"h-[90px]":"h-auto w-full")},"agent"),f&&E.jsx(c6,{layoutId:"avatar",...hn,animate:h,transition:g,videoTrack:i,className:ue(t?"h-[90px] [&>video]:h-[90px] [&>video]:w-auto":"h-auto w-full")},"avatar")]})}),E.jsx("div",{className:ue(["grid",t&&Vi.secondTileChatOpen,!t&&Vi.secondTileChatClosed]),children:E.jsxs("div",{className:"w-full px-10 flex items-center shadow-2xl justify-between",children:[o&&a&&E.jsx(hm,{layout:"position",layoutId:"camera",...hn,trackRef:o,transition:{...hn.transition,delay:t?0:.15},className:"h-[60px] order-1"},"camera"),c&&E.jsx(hm,{layout:"position",layoutId:"screen",...hn,trackRef:s,transition:{...hn.transition,delay:t?0:.15},className:"h-[70px] order-2"},"screen")]})})]})})})}function d6(){const t=JA(),e=BA(),n=ri();return{messages:B.useMemo(()=>[...t.map(s=>dI(s,n)),...e.chatMessages].sort((s,o)=>s.timestamp-o.timestamp),[t,e.chatMessages,n]),send:e.send}}const f6=({logLevel:t}={})=>{const e=ri();m.useEffect(()=>(nk(t??"debug"),window.__lk_room=e,()=>{window.__lk_room=void 0}),[e,t])},h6=({disabled:t,capabilities:e,sessionStarted:n,ref:i,participantName:r="User",loadingText:s="Waiting for agent to connect...",theme:o="vox"})=>{const[a,c]=B.useState(!1),{messages:l,send:u}=d6(),d=B.useRef(null),{agent:{isActive:h=!1}={}}=rb(),p=Ai(o);f6(),B.useEffect(()=>{d.current&&(d.current.scrollTop=d.current.scrollHeight)},[l.length]);async function g(f){await u(f)}return E.jsx("main",{ref:i,inert:t,className:ue("w-full flex flex-col items-center justify-center","max-w-md mx-auto",p.main,"overflow-hidden","h-full"),style:{minHeight:0},children:E.jsxs("div",{className:"w-full h-full flex-1 flex flex-col items-center justify-end px-0",children:[!h&&E.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[E.jsx(Id,{className:p.spinner,weight:"bold"}),E.jsx("span",{className:`text-sm opacity-80 ${p.text.muted}`,children:s})]}),h&&E.jsxs(E.Fragment,{children:[a&&E.jsx(n6,{className:ue("mx-auto w-full py-2 max-w-2xl px-5 transition-[opacity,translate] duration-300 ease-out ","max-h-[calc(100%-80px)]",a?"translate-y-0 opacity-100 delay-200":"translate-y-10 opacity-0"),children:E.jsx("div",{ref:d,className:"space-y-3 relative whitespace-pre-wrap z-0 overflow-y-auto scrollbar-hide",style:{scrollbarWidth:"none"},children:E.jsx(z0,{children:l.map(f=>E.jsx(Zn.div,{initial:{opacity:0,height:0},animate:{opacity:1,height:"auto"},exit:{opacity:1,height:"auto"},transition:{duration:.5,ease:"easeOut"},children:E.jsx(e6,{participantName:r,entry:f},f.id)},f.id))})})}),!a&&E.jsx(u6,{chatOpen:a}),E.jsx("div",{className:"w-full relative h-fit flex flex-col mb-1",children:E.jsx(Zn.div,{initial:{opacity:0,y:30},animate:{opacity:n?1:0,y:n?0:30},transition:{duration:.3,delay:n?.5:0,ease:"easeOut"},className:"rounded-xl flex flex-col-reverse justify-end h-full my-2 ",children:E.jsx(XM,{capabilities:e,onChatOpenChange:c,onSendMessage:g,theme:o,className:"border-none py-1 rounded-xl"})},"control-bar")})]})]})})},pm=t=>t,p6=()=>{let t=pm;return{configure(e){t=e},generate(e){return t(e)},reset(){t=pm}}},m6=p6();function Xn(t,...e){const n=new URL(`https://mui.com/production-error/?code=${t}`);return e.forEach(i=>n.searchParams.append("args[]",i)),`Minified MUI error #${t}; visit ${n} for the full message.`}function Pi(t){if(typeof t!="string")throw new Error(process.env.NODE_ENV!=="production"?"MUI: `capitalize(string)` expects a string argument.":Xn(7));return t.charAt(0).toUpperCase()+t.slice(1)}var Xs={exports:{}},Qs={exports:{}},Te={};/** @license React v16.13.1
|
|
119
|
+
`)},X_=0,Li=[];function Q_(t){var e=p.useRef([]),n=p.useRef([0,0]),i=p.useRef(),r=p.useState(X_++)[0],s=p.useState(h1)[0],o=p.useRef(t);p.useEffect(function(){o.current=t},[t]),p.useEffect(function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(r));var f=S_([t.lockRef.current],(t.shards||[]).map(um),!0).filter(Boolean);return f.forEach(function(y){return y.classList.add("allow-interactivity-".concat(r))}),function(){document.body.classList.remove("block-interactivity-".concat(r)),f.forEach(function(y){return y.classList.remove("allow-interactivity-".concat(r))})}}},[t.inert,t.lockRef.current,t.shards]);var a=p.useCallback(function(f,y){if("touches"in f&&f.touches.length===2||f.type==="wheel"&&f.ctrlKey)return!o.current.allowPinchZoom;var v=Js(f),C=n.current,T="deltaX"in f?f.deltaX:C[0]-v[0],k="deltaY"in f?f.deltaY:C[1]-v[1],b,w=f.target,x=Math.abs(T)>Math.abs(k)?"h":"v";if("touches"in f&&x==="h"&&w.type==="range")return!1;var R=cm(x,w);if(!R)return!0;if(R?b=x:(b=x==="v"?"h":"v",R=cm(x,w)),!R)return!1;if(!i.current&&"changedTouches"in f&&(T||k)&&(i.current=b),!b)return!0;var _=i.current||b;return Z_(_,y,f,_==="h"?T:k)},[]),c=p.useCallback(function(f){var y=f;if(!(!Li.length||Li[Li.length-1]!==s)){var v="deltaY"in y?lm(y):Js(y),C=e.current.filter(function(b){return b.name===y.type&&(b.target===y.target||y.target===b.shadowParent)&&Y_(b.delta,v)})[0];if(C&&C.should){y.cancelable&&y.preventDefault();return}if(!C){var T=(o.current.shards||[]).map(um).filter(Boolean).filter(function(b){return b.contains(y.target)}),k=T.length>0?a(y,T[0]):!o.current.noIsolation;k&&y.cancelable&&y.preventDefault()}}},[]),l=p.useCallback(function(f,y,v,C){var T={name:f,delta:y,target:v,should:C,shadowParent:eM(v)};e.current.push(T),setTimeout(function(){e.current=e.current.filter(function(k){return k!==T})},1)},[]),u=p.useCallback(function(f){n.current=Js(f),i.current=void 0},[]),d=p.useCallback(function(f){l(f.type,lm(f),f.target,a(f,t.lockRef.current))},[]),h=p.useCallback(function(f){l(f.type,Js(f),f.target,a(f,t.lockRef.current))},[]);p.useEffect(function(){return Li.push(s),t.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:h}),document.addEventListener("wheel",c,Ni),document.addEventListener("touchmove",c,Ni),document.addEventListener("touchstart",u,Ni),function(){Li=Li.filter(function(f){return f!==s}),document.removeEventListener("wheel",c,Ni),document.removeEventListener("touchmove",c,Ni),document.removeEventListener("touchstart",u,Ni)}},[]);var m=t.removeScrollBar,g=t.inert;return p.createElement(p.Fragment,null,g?p.createElement(s,{styles:J_(r)}):null,m?p.createElement($_,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function eM(t){for(var e=null;t!==null;)t instanceof ShadowRoot&&(e=t.host,t=t.host),t=t.parentNode;return e}const tM=A_(f1,Q_);var v1=p.forwardRef(function(t,e){return p.createElement(ya,Xt({},t,{ref:e,sideCar:tM}))});v1.classNames=ya.classNames;var nM=[" ","Enter","ArrowUp","ArrowDown"],iM=[" ","Enter"],xi="Select",[ba,Sa,rM]=OI(xi),[Er,iN]=Md(xi,[rM,Xb]),Ta=Xb(),[sM,si]=Er(xi),[oM,aM]=Er(xi),y1=t=>{const{__scopeSelect:e,children:n,open:i,defaultOpen:r,onOpenChange:s,value:o,defaultValue:a,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:h,required:m,form:g}=t,f=Ta(e),[y,v]=p.useState(null),[C,T]=p.useState(null),[k,b]=p.useState(!1),w=NI(l),[x,R]=Xl({prop:i,defaultProp:r??!1,onChange:s,caller:xi}),[_,S]=Xl({prop:o,defaultProp:a,onChange:c,caller:xi}),A=p.useRef(null),O=y?g||!!y.closest("form"):!0,[z,K]=p.useState(new Set),se=Array.from(z).map(Q=>Q.props.value).join(";");return E.jsx(c_,{...f,children:E.jsxs(sM,{required:m,scope:e,trigger:y,onTriggerChange:v,valueNode:C,onValueNodeChange:T,valueNodeHasChildren:k,onValueNodeHasChildrenChange:b,contentId:Od(),value:_,onValueChange:S,open:x,onOpenChange:R,dir:w,triggerPointerDownPosRef:A,disabled:h,children:[E.jsx(ba.Provider,{scope:e,children:E.jsx(oM,{scope:t.__scopeSelect,onNativeOptionAdd:p.useCallback(Q=>{K(Z=>new Set(Z).add(Q))},[]),onNativeOptionRemove:p.useCallback(Q=>{K(Z=>{const F=new Set(Z);return F.delete(Q),F})},[]),children:n})}),O?E.jsxs(U1,{"aria-hidden":!0,required:m,tabIndex:-1,name:u,autoComplete:d,value:_,onChange:Q=>S(Q.target.value),disabled:h,form:g,children:[_===void 0?E.jsx("option",{value:""}):null,Array.from(z)]},se):null]})})};y1.displayName=xi;var b1="SelectTrigger",S1=p.forwardRef((t,e)=>{const{__scopeSelect:n,disabled:i=!1,...r}=t,s=Ta(n),o=si(b1,n),a=o.disabled||i,c=st(e,o.onTriggerChange),l=Sa(n),u=p.useRef("touch"),[d,h,m]=$1(f=>{const y=l().filter(T=>!T.disabled),v=y.find(T=>T.value===o.value),C=H1(y,f,v);C!==void 0&&o.onValueChange(C.value)}),g=f=>{a||(o.onOpenChange(!0),m()),f&&(o.triggerPointerDownPosRef.current={x:Math.round(f.pageX),y:Math.round(f.pageY)})};return E.jsx(l_,{asChild:!0,...s,children:E.jsx(Ue.button,{type:"button",role:"combobox","aria-controls":o.contentId,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":"none",dir:o.dir,"data-state":o.open?"open":"closed",disabled:a,"data-disabled":a?"":void 0,"data-placeholder":B1(o.value)?"":void 0,...r,ref:c,onClick:$e(r.onClick,f=>{f.currentTarget.focus(),u.current!=="mouse"&&g(f)}),onPointerDown:$e(r.onPointerDown,f=>{u.current=f.pointerType;const y=f.target;y.hasPointerCapture(f.pointerId)&&y.releasePointerCapture(f.pointerId),f.button===0&&f.ctrlKey===!1&&f.pointerType==="mouse"&&(g(f),f.preventDefault())}),onKeyDown:$e(r.onKeyDown,f=>{const y=d.current!=="";!(f.ctrlKey||f.altKey||f.metaKey)&&f.key.length===1&&h(f.key),!(y&&f.key===" ")&&nM.includes(f.key)&&(g(),f.preventDefault())})})})});S1.displayName=b1;var T1="SelectValue",k1=p.forwardRef((t,e)=>{const{__scopeSelect:n,className:i,style:r,children:s,placeholder:o="",...a}=t,c=si(T1,n),{onValueNodeHasChildrenChange:l}=c,u=s!==void 0,d=st(e,c.onValueNodeChange);return gt(()=>{l(u)},[l,u]),E.jsx(Ue.span,{...a,ref:d,style:{pointerEvents:"none"},children:B1(c.value)?E.jsx(E.Fragment,{children:o}):s})});k1.displayName=T1;var cM="SelectIcon",C1=p.forwardRef((t,e)=>{const{__scopeSelect:n,children:i,...r}=t;return E.jsx(Ue.span,{"aria-hidden":!0,...r,ref:e,children:i||"▼"})});C1.displayName=cM;var lM="SelectPortal",w1=t=>E.jsx(a1,{asChild:!0,...t});w1.displayName=lM;var Ei="SelectContent",x1=p.forwardRef((t,e)=>{const n=si(Ei,t.__scopeSelect),[i,r]=p.useState();if(gt(()=>{r(new DocumentFragment)},[]),!n.open){const s=i;return s?na.createPortal(E.jsx(E1,{scope:t.__scopeSelect,children:E.jsx(ba.Slot,{scope:t.__scopeSelect,children:E.jsx("div",{children:t.children})})}),s):null}return E.jsx(P1,{...t,ref:e})});x1.displayName=Ei;var Ft=10,[E1,oi]=Er(Ei),uM="SelectContentImpl",dM=gs("SelectContent.RemoveScroll"),P1=p.forwardRef((t,e)=>{const{__scopeSelect:n,position:i="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:s,onPointerDownOutside:o,side:a,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:h,collisionPadding:m,sticky:g,hideWhenDetached:f,avoidCollisions:y,...v}=t,C=si(Ei,n),[T,k]=p.useState(null),[b,w]=p.useState(null),x=st(e,V=>k(V)),[R,_]=p.useState(null),[S,A]=p.useState(null),O=Sa(n),[z,K]=p.useState(!1),se=p.useRef(!1);p.useEffect(()=>{if(T)return b_(T)},[T]),zI();const Q=p.useCallback(V=>{const[q,...te]=O().map(H=>H.ref.current),[ee]=te.slice(-1),ae=document.activeElement;for(const H of V)if(H===ae||(H==null||H.scrollIntoView({block:"nearest"}),H===q&&b&&(b.scrollTop=0),H===ee&&b&&(b.scrollTop=b.scrollHeight),H==null||H.focus(),document.activeElement!==ae))return},[O,b]),Z=p.useCallback(()=>Q([R,T]),[Q,R,T]);p.useEffect(()=>{z&&Z()},[z,Z]);const{onOpenChange:F,triggerPointerDownPosRef:ce}=C;p.useEffect(()=>{if(T){let V={x:0,y:0};const q=ee=>{var ae,H;V={x:Math.abs(Math.round(ee.pageX)-(((ae=ce.current)==null?void 0:ae.x)??0)),y:Math.abs(Math.round(ee.pageY)-(((H=ce.current)==null?void 0:H.y)??0))}},te=ee=>{V.x<=10&&V.y<=10?ee.preventDefault():T.contains(ee.target)||F(!1),document.removeEventListener("pointermove",q),ce.current=null};return ce.current!==null&&(document.addEventListener("pointermove",q),document.addEventListener("pointerup",te,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",q),document.removeEventListener("pointerup",te,{capture:!0})}}},[T,F,ce]),p.useEffect(()=>{const V=()=>F(!1);return window.addEventListener("blur",V),window.addEventListener("resize",V),()=>{window.removeEventListener("blur",V),window.removeEventListener("resize",V)}},[F]);const[I,j]=$1(V=>{const q=O().filter(ae=>!ae.disabled),te=q.find(ae=>ae.ref.current===document.activeElement),ee=H1(q,V,te);ee&&setTimeout(()=>ee.ref.current.focus())}),W=p.useCallback((V,q,te)=>{const ee=!se.current&&!te;(C.value!==void 0&&C.value===q||ee)&&(_(V),ee&&(se.current=!0))},[C.value]),Y=p.useCallback(()=>T==null?void 0:T.focus(),[T]),J=p.useCallback((V,q,te)=>{const ee=!se.current&&!te;(C.value!==void 0&&C.value===q||ee)&&A(V)},[C.value]),re=i==="popper"?ru:R1,oe=re===ru?{side:a,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:h,collisionPadding:m,sticky:g,hideWhenDetached:f,avoidCollisions:y}:{};return E.jsx(E1,{scope:n,content:T,viewport:b,onViewportChange:w,itemRefCallback:W,selectedItem:R,onItemLeave:Y,itemTextRefCallback:J,focusSelectedItem:Z,selectedItemText:S,position:i,isPositioned:z,searchRef:I,children:E.jsx(v1,{as:dM,allowPinchZoom:!0,children:E.jsx(Fb,{asChild:!0,trapped:C.open,onMountAutoFocus:V=>{V.preventDefault()},onUnmountAutoFocus:$e(r,V=>{var q;(q=C.trigger)==null||q.focus({preventScroll:!0}),V.preventDefault()}),children:E.jsx(Lb,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:s,onPointerDownOutside:o,onFocusOutside:V=>V.preventDefault(),onDismiss:()=>C.onOpenChange(!1),children:E.jsx(re,{role:"listbox",id:C.contentId,"data-state":C.open?"open":"closed",dir:C.dir,onContextMenu:V=>V.preventDefault(),...v,...oe,onPlaced:()=>K(!0),ref:x,style:{display:"flex",flexDirection:"column",outline:"none",...v.style},onKeyDown:$e(v.onKeyDown,V=>{const q=V.ctrlKey||V.altKey||V.metaKey;if(V.key==="Tab"&&V.preventDefault(),!q&&V.key.length===1&&j(V.key),["ArrowUp","ArrowDown","Home","End"].includes(V.key)){let ee=O().filter(ae=>!ae.disabled).map(ae=>ae.ref.current);if(["ArrowUp","End"].includes(V.key)&&(ee=ee.slice().reverse()),["ArrowUp","ArrowDown"].includes(V.key)){const ae=V.target,H=ee.indexOf(ae);ee=ee.slice(H+1)}setTimeout(()=>Q(ee)),V.preventDefault()}})})})})})})});P1.displayName=uM;var fM="SelectItemAlignedPosition",R1=p.forwardRef((t,e)=>{const{__scopeSelect:n,onPlaced:i,...r}=t,s=si(Ei,n),o=oi(Ei,n),[a,c]=p.useState(null),[l,u]=p.useState(null),d=st(e,x=>u(x)),h=Sa(n),m=p.useRef(!1),g=p.useRef(!0),{viewport:f,selectedItem:y,selectedItemText:v,focusSelectedItem:C}=o,T=p.useCallback(()=>{if(s.trigger&&s.valueNode&&a&&l&&f&&y&&v){const x=s.trigger.getBoundingClientRect(),R=l.getBoundingClientRect(),_=s.valueNode.getBoundingClientRect(),S=v.getBoundingClientRect();if(s.dir!=="rtl"){const ae=S.left-R.left,H=_.left-ae,Se=x.left-H,Qe=x.width+Se,Dt=Math.max(Qe,R.width),Rr=window.innerWidth-Ft,Ar=zp(H,[Ft,Math.max(Ft,Rr-Dt)]);a.style.minWidth=Qe+"px",a.style.left=Ar+"px"}else{const ae=R.right-S.right,H=window.innerWidth-_.right-ae,Se=window.innerWidth-x.right-H,Qe=x.width+Se,Dt=Math.max(Qe,R.width),Rr=window.innerWidth-Ft,Ar=zp(H,[Ft,Math.max(Ft,Rr-Dt)]);a.style.minWidth=Qe+"px",a.style.right=Ar+"px"}const A=h(),O=window.innerHeight-Ft*2,z=f.scrollHeight,K=window.getComputedStyle(l),se=parseInt(K.borderTopWidth,10),Q=parseInt(K.paddingTop,10),Z=parseInt(K.borderBottomWidth,10),F=parseInt(K.paddingBottom,10),ce=se+Q+z+F+Z,I=Math.min(y.offsetHeight*5,ce),j=window.getComputedStyle(f),W=parseInt(j.paddingTop,10),Y=parseInt(j.paddingBottom,10),J=x.top+x.height/2-Ft,re=O-J,oe=y.offsetHeight/2,V=y.offsetTop+oe,q=se+Q+V,te=ce-q;if(q<=J){const ae=A.length>0&&y===A[A.length-1].ref.current;a.style.bottom="0px";const H=l.clientHeight-f.offsetTop-f.offsetHeight,Se=Math.max(re,oe+(ae?Y:0)+H+Z),Qe=q+Se;a.style.height=Qe+"px"}else{const ae=A.length>0&&y===A[0].ref.current;a.style.top="0px";const Se=Math.max(J,se+f.offsetTop+(ae?W:0)+oe)+te;a.style.height=Se+"px",f.scrollTop=q-J+f.offsetTop}a.style.margin=`${Ft}px 0`,a.style.minHeight=I+"px",a.style.maxHeight=O+"px",i==null||i(),requestAnimationFrame(()=>m.current=!0)}},[h,s.trigger,s.valueNode,a,l,f,y,v,s.dir,i]);gt(()=>T(),[T]);const[k,b]=p.useState();gt(()=>{l&&b(window.getComputedStyle(l).zIndex)},[l]);const w=p.useCallback(x=>{x&&g.current===!0&&(T(),C==null||C(),g.current=!1)},[T,C]);return E.jsx(pM,{scope:n,contentWrapper:a,shouldExpandOnScrollRef:m,onScrollButtonChange:w,children:E.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:k},children:E.jsx(Ue.div,{...r,ref:d,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})});R1.displayName=fM;var hM="SelectPopperPosition",ru=p.forwardRef((t,e)=>{const{__scopeSelect:n,align:i="start",collisionPadding:r=Ft,...s}=t,o=Ta(n);return E.jsx(u_,{...o,...s,ref:e,align:i,collisionPadding:r,style:{boxSizing:"border-box",...s.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ru.displayName=hM;var[pM,Hd]=Er(Ei,{}),su="SelectViewport",A1=p.forwardRef((t,e)=>{const{__scopeSelect:n,nonce:i,...r}=t,s=oi(su,n),o=Hd(su,n),a=st(e,s.onViewportChange),c=p.useRef(0);return E.jsxs(E.Fragment,{children:[E.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),E.jsx(ba.Slot,{scope:n,children:E.jsx(Ue.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:a,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:$e(r.onScroll,l=>{const u=l.currentTarget,{contentWrapper:d,shouldExpandOnScrollRef:h}=o;if(h!=null&&h.current&&d){const m=Math.abs(c.current-u.scrollTop);if(m>0){const g=window.innerHeight-Ft*2,f=parseFloat(d.style.minHeight),y=parseFloat(d.style.height),v=Math.max(f,y);if(v<g){const C=v+m,T=Math.min(g,C),k=C-T;d.style.height=T+"px",d.style.bottom==="0px"&&(u.scrollTop=k>0?k:0,d.style.justifyContent="flex-end")}}}c.current=u.scrollTop})})})]})});A1.displayName=su;var I1="SelectGroup",[mM,gM]=Er(I1),vM=p.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t,r=Od();return E.jsx(mM,{scope:n,id:r,children:E.jsx(Ue.div,{role:"group","aria-labelledby":r,...i,ref:e})})});vM.displayName=I1;var _1="SelectLabel",yM=p.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t,r=gM(_1,n);return E.jsx(Ue.div,{id:r.id,...i,ref:e})});yM.displayName=_1;var Yo="SelectItem",[bM,M1]=Er(Yo),O1=p.forwardRef((t,e)=>{const{__scopeSelect:n,value:i,disabled:r=!1,textValue:s,...o}=t,a=si(Yo,n),c=oi(Yo,n),l=a.value===i,[u,d]=p.useState(s??""),[h,m]=p.useState(!1),g=st(e,C=>{var T;return(T=c.itemRefCallback)==null?void 0:T.call(c,C,i,r)}),f=Od(),y=p.useRef("touch"),v=()=>{r||(a.onValueChange(i),a.onOpenChange(!1))};if(i==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return E.jsx(bM,{scope:n,value:i,disabled:r,textId:f,isSelected:l,onItemTextChange:p.useCallback(C=>{d(T=>T||((C==null?void 0:C.textContent)??"").trim())},[]),children:E.jsx(ba.ItemSlot,{scope:n,value:i,disabled:r,textValue:u,children:E.jsx(Ue.div,{role:"option","aria-labelledby":f,"data-highlighted":h?"":void 0,"aria-selected":l&&h,"data-state":l?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...o,ref:g,onFocus:$e(o.onFocus,()=>m(!0)),onBlur:$e(o.onBlur,()=>m(!1)),onClick:$e(o.onClick,()=>{y.current!=="mouse"&&v()}),onPointerUp:$e(o.onPointerUp,()=>{y.current==="mouse"&&v()}),onPointerDown:$e(o.onPointerDown,C=>{y.current=C.pointerType}),onPointerMove:$e(o.onPointerMove,C=>{var T;y.current=C.pointerType,r?(T=c.onItemLeave)==null||T.call(c):y.current==="mouse"&&C.currentTarget.focus({preventScroll:!0})}),onPointerLeave:$e(o.onPointerLeave,C=>{var T;C.currentTarget===document.activeElement&&((T=c.onItemLeave)==null||T.call(c))}),onKeyDown:$e(o.onKeyDown,C=>{var k;((k=c.searchRef)==null?void 0:k.current)!==""&&C.key===" "||(iM.includes(C.key)&&v(),C.key===" "&&C.preventDefault())})})})})});O1.displayName=Yo;var qr="SelectItemText",D1=p.forwardRef((t,e)=>{const{__scopeSelect:n,className:i,style:r,...s}=t,o=si(qr,n),a=oi(qr,n),c=M1(qr,n),l=aM(qr,n),[u,d]=p.useState(null),h=st(e,v=>d(v),c.onItemTextChange,v=>{var C;return(C=a.itemTextRefCallback)==null?void 0:C.call(a,v,c.value,c.disabled)}),m=u==null?void 0:u.textContent,g=p.useMemo(()=>E.jsx("option",{value:c.value,disabled:c.disabled,children:m},c.value),[c.disabled,c.value,m]),{onNativeOptionAdd:f,onNativeOptionRemove:y}=l;return gt(()=>(f(g),()=>y(g)),[f,y,g]),E.jsxs(E.Fragment,{children:[E.jsx(Ue.span,{id:c.textId,...s,ref:h}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren?na.createPortal(s.children,o.valueNode):null]})});D1.displayName=qr;var N1="SelectItemIndicator",L1=p.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t;return M1(N1,n).isSelected?E.jsx(Ue.span,{"aria-hidden":!0,...i,ref:e}):null});L1.displayName=N1;var ou="SelectScrollUpButton",V1=p.forwardRef((t,e)=>{const n=oi(ou,t.__scopeSelect),i=Hd(ou,t.__scopeSelect),[r,s]=p.useState(!1),o=st(e,i.onScrollButtonChange);return gt(()=>{if(n.viewport&&n.isPositioned){let a=function(){const l=c.scrollTop>0;s(l)};const c=n.viewport;return a(),c.addEventListener("scroll",a),()=>c.removeEventListener("scroll",a)}},[n.viewport,n.isPositioned]),r?E.jsx(j1,{...t,ref:o,onAutoScroll:()=>{const{viewport:a,selectedItem:c}=n;a&&c&&(a.scrollTop=a.scrollTop-c.offsetHeight)}}):null});V1.displayName=ou;var au="SelectScrollDownButton",F1=p.forwardRef((t,e)=>{const n=oi(au,t.__scopeSelect),i=Hd(au,t.__scopeSelect),[r,s]=p.useState(!1),o=st(e,i.onScrollButtonChange);return gt(()=>{if(n.viewport&&n.isPositioned){let a=function(){const l=c.scrollHeight-c.clientHeight,u=Math.ceil(c.scrollTop)<l;s(u)};const c=n.viewport;return a(),c.addEventListener("scroll",a),()=>c.removeEventListener("scroll",a)}},[n.viewport,n.isPositioned]),r?E.jsx(j1,{...t,ref:o,onAutoScroll:()=>{const{viewport:a,selectedItem:c}=n;a&&c&&(a.scrollTop=a.scrollTop+c.offsetHeight)}}):null});F1.displayName=au;var j1=p.forwardRef((t,e)=>{const{__scopeSelect:n,onAutoScroll:i,...r}=t,s=oi("SelectScrollButton",n),o=p.useRef(null),a=Sa(n),c=p.useCallback(()=>{o.current!==null&&(window.clearInterval(o.current),o.current=null)},[]);return p.useEffect(()=>()=>c(),[c]),gt(()=>{var u;const l=a().find(d=>d.ref.current===document.activeElement);(u=l==null?void 0:l.ref.current)==null||u.scrollIntoView({block:"nearest"})},[a]),E.jsx(Ue.div,{"aria-hidden":!0,...r,ref:e,style:{flexShrink:0,...r.style},onPointerDown:$e(r.onPointerDown,()=>{o.current===null&&(o.current=window.setInterval(i,50))}),onPointerMove:$e(r.onPointerMove,()=>{var l;(l=s.onItemLeave)==null||l.call(s),o.current===null&&(o.current=window.setInterval(i,50))}),onPointerLeave:$e(r.onPointerLeave,()=>{c()})})}),SM="SelectSeparator",TM=p.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t;return E.jsx(Ue.div,{"aria-hidden":!0,...i,ref:e})});TM.displayName=SM;var cu="SelectArrow",kM=p.forwardRef((t,e)=>{const{__scopeSelect:n,...i}=t,r=Ta(n),s=si(cu,n),o=oi(cu,n);return s.open&&o.position==="popper"?E.jsx(d_,{...r,...i,ref:e}):null});kM.displayName=cu;var CM="SelectBubbleInput",U1=p.forwardRef(({__scopeSelect:t,value:e,...n},i)=>{const r=p.useRef(null),s=st(i,r),o=h_(e);return p.useEffect(()=>{const a=r.current;if(!a)return;const c=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(c,"value").set;if(o!==e&&u){const d=new Event("change",{bubbles:!0});u.call(a,e),a.dispatchEvent(d)}},[o,e]),E.jsx(Ue.select,{...n,style:{...c1,...n.style},ref:s,defaultValue:e})});U1.displayName=CM;function B1(t){return t===""||t===void 0}function $1(t){const e=Ci(t),n=p.useRef(""),i=p.useRef(0),r=p.useCallback(o=>{const a=n.current+o;e(a),function c(l){n.current=l,window.clearTimeout(i.current),l!==""&&(i.current=window.setTimeout(()=>c(""),1e3))}(a)},[e]),s=p.useCallback(()=>{n.current="",window.clearTimeout(i.current)},[]);return p.useEffect(()=>()=>window.clearTimeout(i.current),[]),[n,r,s]}function H1(t,e,n){const r=e.length>1&&Array.from(e).every(l=>l===e[0])?e[0]:e,s=n?t.indexOf(n):-1;let o=wM(t,Math.max(s,0));r.length===1&&(o=o.filter(l=>l!==n));const c=o.find(l=>l.textValue.toLowerCase().startsWith(r.toLowerCase()));return c!==n?c:void 0}function wM(t,e){return t.map((n,i)=>t[(e+i)%t.length])}var xM=y1,EM=S1,PM=k1,RM=C1,AM=w1,IM=x1,_M=A1,MM=O1,OM=D1,DM=L1,NM=V1,LM=F1;function VM({...t}){return E.jsx(xM,{"data-slot":"select",...t})}function FM({...t}){return E.jsx(PM,{"data-slot":"select-value",...t})}function jM({className:t,size:e="default",children:n,...i}){return E.jsxs(EM,{"data-slot":"select-trigger","data-size":e,className:ue(["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"],t),...i,children:[n,E.jsx(RM,{asChild:!0,children:E.jsx(Ad,{weight:"bold",className:"size-4 transition-colors"})})]})}function UM({className:t,children:e,position:n="popper",...i}){return E.jsx(AM,{children:E.jsxs(IM,{"data-slot":"select-content",className:ue(["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",t),position:n,...i,children:[E.jsx($M,{}),E.jsx(_M,{className:ue("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:e}),E.jsx(HM,{})]})})}function BM({className:t,children:e,...n}){return E.jsxs(MM,{"data-slot":"select-item",className:ue(["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"],t),...n,children:[E.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:E.jsx(DM,{children:E.jsx(db,{className:"size-4",weight:"bold"})})}),E.jsx(OM,{children:e})]})}function $M({className:t,...e}){return E.jsx(NM,{"data-slot":"select-scroll-up-button",className:ue("flex cursor-default items-center justify-center py-1",t),...e,children:E.jsx(lb,{className:"size-4",weight:"bold"})})}function HM({className:t,...e}){return E.jsx(LM,{"data-slot":"select-scroll-down-button",className:ue("flex cursor-default items-center justify-center py-1",t),...e,children:E.jsx(Ad,{className:"size-4",weight:"bold"})})}const zM=ta.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 dm({kind:t,track:e,requestPermissions:n,onError:i,...r}){const s=r.size||"default",o=pa(),{devices:a,activeDeviceId:c,setActiveMediaDevice:l}=LA({kind:t,room:o,track:e,requestPermissions:n,onError:i});return E.jsxs(VM,{value:c,onValueChange:l,children:[E.jsx(jM,{className:ue(zM({size:s}),r.className,"hover:bg"),children:s!=="sm"&&E.jsx(FM,{className:"font-mono text-sm",placeholder:`Select a ${t}`})}),E.jsx(UM,{children:a.map(u=>E.jsx(BM,{value:u.deviceId,className:"font-mono text-xs",children:u.label},u.deviceId))})]})}function WM(t,e,n=!1){if(n)return Id;switch(t){case M.Source.Microphone:return e?fb:hb;case M.Source.Camera:return e?gb:vb;case M.Source.ScreenShare:return pb;default:return p.Fragment}}function Ic({source:t,pressed:e,pending:n,className:i,...r}){const s=WM(t,e??!1,n),o=t===M.Source.Microphone&&!(e??!1)&&!n,a=t===M.Source.Camera&&!(e??!1)&&!n;return E.jsxs(Db,{pressed:e,"aria-label":`Toggle ${t}`,className:ue(i),...r,children:[E.jsx(s,{weight:"bold",className:ue(n&&"animate-spin",o||a?"text-red-500":void 0)}),r.children]})}const qM=t=>{switch(t){case M.Source.Camera:return 1;case M.Source.Microphone:return 2;case M.Source.ScreenShare:return 3;default:return 0}};function GM(){const t=NA(),e=n=>!!(t!=null&&t.canPublish)&&(t.canPublishSources.length===0||t.canPublishSources.includes(qM(n)));return{camera:e(M.Source.Camera),microphone:e(M.Source.Microphone),screenShare:e(M.Source.ScreenShare),data:(t==null?void 0:t.canPublishData)??!1}}function KM(t={}){const{controls:e,saveUserChoices:n=!0}=t,i={leave:!0,...e},{microphoneTrack:r,localParticipant:s}=nb(),o=GM(),a=ri(),c=vc({source:M.Source.Microphone,onDeviceError:w=>{var x;return(x=t.onDeviceError)==null?void 0:x.call(t,{source:M.Source.Microphone,error:w})}}),l=vc({source:M.Source.Camera,onDeviceError:w=>{var x;return(x=t.onDeviceError)==null?void 0:x.call(t,{source:M.Source.Camera,error:w})}}),u=vc({source:M.Source.ScreenShare,onDeviceError:w=>{var x;return(x=t.onDeviceError)==null?void 0:x.call(t,{source:M.Source.ScreenShare,error:w})}}),d=p.useMemo(()=>({participant:s,source:M.Source.Microphone,publication:r}),[s,r]);i.microphone??(i.microphone=o.microphone),i.screenShare??(i.screenShare=o.screenShare),i.camera??(i.camera=o.camera),i.chat??(i.chat=o.data);const{saveAudioInputEnabled:h,saveAudioInputDeviceId:m,saveVideoInputEnabled:g,saveVideoInputDeviceId:f}=$A({preventSave:!n}),y=p.useCallback(()=>{a&&a.disconnect()},[a]),v=p.useCallback(w=>{m(w??"default")},[m]),C=p.useCallback(w=>{f(w??"default")},[f]),T=p.useCallback(async w=>{u.enabled&&u.toggle(!1),await l.toggle(w),g(!l.enabled)},[l,g,u]),k=p.useCallback(async w=>{await c.toggle(w),h(!c.enabled)},[c,h]),b=p.useCallback(async w=>{l.enabled&&l.toggle(!1),await u.toggle(w)},[l,u]);return{micTrackRef:d,visibleControls:i,cameraToggle:{...l,toggle:T},microphoneToggle:{...c,toggle:k},screenShareToggle:{...u,toggle:b},handleDisconnect:y,handleAudioDeviceChange:v,handleVideoDeviceChange:C}}const ZM={card:"relative bg-gradient-to-br from-black to-gray-900 border border-gray-900 w-full h-full flex flex-col items-center 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-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",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:"flex items-center rounded-md pl-1 text-sm bg-gray-800 border border-gray-600 text-white",spinner:"w-10 h-10 animate-spin text-gray-400 mb-2"},YM={card:"relative bg-gradient-to-br from-white to-gray-50 border border-gray-200 w-full h-full flex flex-col items-center 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",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/50 backdrop-blur-sm",chatInput:"flex items-center rounded-md pl-1 text-sm bg-white border border-gray-200",spinner:"w-10 h-10 animate-spin text-blue-500 mb-2"},JM={card:"relative bg-gradient-to-br from-[#171727] to-[#12121F] border border-gray-800 w-full h-full flex flex-col items-center 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",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:"flex items-center rounded-md pl-1 text-sm",spinner:"w-10 h-10 animate-spin text-blue-400 mb-2"},fm={dark:ZM,light:YM,vox:JM};function Ai(t){return fm[t]||fm.vox}function XM({controls:t,saveUserChoices:e=!0,capabilities:n,className:i,onSendMessage:r,onChatOpenChange:s,onDisconnect:o,onDeviceError:a,theme:c="vox",...l}){const[u,d]=p.useState(!1),[h,m]=p.useState(!1),g=Ai(c),{micTrackRef:f,visibleControls:y,cameraToggle:v,microphoneToggle:C,screenShareToggle:T,handleAudioDeviceChange:k,handleVideoDeviceChange:b,handleDisconnect:w}=KM({controls:t,saveUserChoices:e}),x=async _=>{m(!0);try{await(r==null?void 0:r(_))}finally{m(!1)}},R=()=>{w(),o==null||o()};return p.useEffect(()=>{s==null||s(u)},[u,s]),E.jsxs("div",{"aria-label":"Voice assistant controls",className:ue(g.controlBar,i),...l,children:[n.suportsChatInput&&E.jsxs("div",{inert:!u,className:ue("overflow-hidden transition-[height] relative duration-300 ease-in-out",u?"h-[64px] mb-3":"h-0"),children:[E.jsx("div",{className:"flex h-9 px-4 w-full",children:E.jsx(wI,{onSend:x,disabled:h,className:ue("w-full",g.chatInput)})}),E.jsx("hr",{className:"border-border my-2 mx-5"})]}),E.jsxs("div",{className:ue("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:[E.jsxs("div",{className:"flex gap-y-2 justify-start",children:[y.microphone&&E.jsxs("div",{className:"flex gap-y-2 items-center rounded-full overflow-hidden border-none ",children:[E.jsx(Ic,{variant:"primary",source:M.Source.Microphone,pressed:C.enabled,disabled:C.pending,onPressedChange:C.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),E.jsx(ab,{barCount:3,trackRef:f,options:{minHeight:5},className:"flex h-full w-auto items-center justify-center gap-x-0.5",children:E.jsx("span",{className:ue(["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"])})}),E.jsx(dm,{size:"sm",kind:"audioinput",onError:a?_=>_ instanceof Error?a({source:M.Source.Microphone,error:_}):void 0:void 0,onActiveDeviceChange:k,className:ue(["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&&y.camera&&E.jsxs("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:[E.jsx(Ic,{variant:"primary",source:M.Source.Camera,pressed:v.enabled,pending:v.pending,disabled:v.pending,onPressedChange:v.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),E.jsx(dm,{size:"sm",kind:"videoinput",onError:a?_=>_ instanceof Error?a({source:M.Source.Camera,error:_}):void 0:void 0,onActiveDeviceChange:b,className:ue(["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]"])})]}),y.leave&&E.jsx("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:E.jsx(_b,{onClick:R,className:"font-semibold py-2 rounded-none border-none bg-transparent text-inherit transition-colors flex items-center",children:E.jsx(mb,{weight:"bold",className:"text-red-600"})})}),n.suportsScreenShare&&y.screenShare&&E.jsx("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:E.jsx(Ic,{variant:"secondary",source:M.Source.ScreenShare,pressed:T.enabled,disabled:T.pending,onPressedChange:T.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"})})]}),y.chat&&E.jsx("div",{className:"flex items-center rounded-full overflow-hidden bg-secondary text-secondary-foreground border-none ",children:E.jsx(Db,{variant:"secondary","aria-label":"Toggle chat",pressed:u,onPressedChange:_=>{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:E.jsx(ub,{weight:"bold",className:"h-5 w-5"})})})]})]})}const QM=(t,e)=>{var a,c;const n=p.useMemo(()=>e?e(t.message):t.message,[t.message,e]),i=!!t.editTimestamp,r=new Date(t.timestamp),s=typeof navigator<"u"?navigator.language:"en-US",o=(a=t.from)!=null&&a.name&&t.from.name!==""?t.from.name:(c=t.from)==null?void 0:c.identity;return{message:n,hasBeenEdited:i,time:r,locale:s,name:o}},e6=({entry:t,messageFormatter:e,className:n,participantName:i,...r})=>{var u,d;const{message:s,time:o,locale:a}=QM(t,e),c=((u=t.from)==null?void 0:u.isLocal)??!1;ue("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 l=ue("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 E.jsx("li",{title:o.toLocaleTimeString(a,{timeStyle:"full"}),className:ue("group flex mb-2",c?"justify-end":"justify-start",n),...r,children:E.jsxs("div",{className:ue("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:[E.jsx("span",{className:l,children:c?((d=i==null?void 0:i[0])==null?void 0:d.toUpperCase())||"U":"A"}),E.jsx("span",{className:ue("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:s})]})})};function t6(t){B.useEffect(()=>{function e(){const n=t.current;n&&(n.scrollTop=n.scrollHeight)}if(t.current){const n=new ResizeObserver(e);return n.observe(t.current),e(),()=>n.disconnect()}},[t])}const n6=({className:t,children:e,...n})=>{const i=B.useRef(null);return t6(i),E.jsx("div",{ref:i,className:ue("flex flex-col justify-end",t),...n,children:e})},i6=({state:t,audioTrack:e,className:n,ref:i})=>E.jsx("div",{ref:i,className:ue("",n),children:E.jsx(ab,{barCount:5,state:t,options:{minHeight:5},trackRef:e,className:ue("flex aspect-video w-40 items-center justify-center gap-1"),children:E.jsx("span",{className:ue(["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]"])})})}),r6=({videoTrack:t,className:e,ref:n})=>{var i,r;return E.jsx("div",{ref:n,className:ue(e),children:E.jsx(ob,{trackRef:t,width:((i=t==null?void 0:t.publication.dimensions)==null?void 0:i.width)??0,height:((r=t==null?void 0:t.publication.dimensions)==null?void 0:r.height)??0,className:"rounded-md"})})},s6=Zn.create(ob),o6=({trackRef:t,className:e,ref:n})=>{var i,r;return E.jsx("div",{className:ue("bg-muted overflow-hidden rounded-md",e),children:E.jsx(s6,{ref:n,trackRef:t,width:((i=t==null?void 0:t.publication.dimensions)==null?void 0:i.width)??0,height:((r=t==null?void 0:t.publication.dimensions)==null?void 0:r.height)??0,className:ue("h-full w-auto")})})},hm=Zn.create(o6),a6=Zn.create(i6),c6=Zn.create(r6),hn={initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},exit:{opacity:0,scale:0},transition:{type:"spring",stiffness:675,damping:75,mass:1}},Vi={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 l6(t){const{localParticipant:e}=nb(),n=e.getTrackPublication(t);return B.useMemo(()=>n?{source:t,participant:e,publication:n}:void 0,[t,n,e])}function u6({chatOpen:t}){const{state:e,audioTrack:n,videoTrack:i,agent:{isActive:r=!1}={}}=rb(),[s]=ib([M.Source.ScreenShare]),o=l6(M.Source.Camera),a=o&&!o.publication.isMuted,c=s&&!s.publication.isMuted,l=a||c,u={...hn.transition,delay:t?0:.15},d={...hn.animate,scale:t?1:3,transition:u},h={...hn.animate,transition:u},m=u,g=u,f=i!==void 0;return E.jsx("div",{className:"relative w-full h-full z-10 flex items-center justify-center",children:E.jsx("div",{className:"relative w-full h-full max-w-2xl px-4 md:px-0",children:E.jsxs("div",{className:ue(Vi.grid),children:[r&&E.jsx("div",{className:ue(["grid",!t&&Vi.agentChatClosed,t&&l&&Vi.agentChatOpenWithSecondTile,t&&!l&&Vi.agentChatOpenWithoutSecondTile]),children:E.jsxs("div",{className:"h-full flex items-center justify-center",children:[!f&&E.jsx(a6,{layoutId:"agent",...hn,animate:d,transition:m,state:e,audioTrack:n,className:ue(t?"h-[90px]":"h-auto w-full")},"agent"),f&&E.jsx(c6,{layoutId:"avatar",...hn,animate:h,transition:g,videoTrack:i,className:ue(t?"h-[90px] [&>video]:h-[90px] [&>video]:w-auto":"h-auto w-full")},"avatar")]})}),E.jsx("div",{className:ue(["grid",t&&Vi.secondTileChatOpen,!t&&Vi.secondTileChatClosed]),children:E.jsxs("div",{className:"w-full px-10 flex items-center shadow-2xl justify-between",children:[o&&a&&E.jsx(hm,{layout:"position",layoutId:"camera",...hn,trackRef:o,transition:{...hn.transition,delay:t?0:.15},className:"h-[60px] order-1"},"camera"),c&&E.jsx(hm,{layout:"position",layoutId:"screen",...hn,trackRef:s,transition:{...hn.transition,delay:t?0:.15},className:"h-[70px] order-2"},"screen")]})})]})})})}function d6(){const t=JA(),e=BA(),n=ri();return{messages:B.useMemo(()=>[...t.map(s=>dI(s,n)),...e.chatMessages].sort((s,o)=>s.timestamp-o.timestamp),[t,e.chatMessages,n]),send:e.send}}const f6=({logLevel:t}={})=>{const e=ri();p.useEffect(()=>(nk(t??"debug"),window.__lk_room=e,()=>{window.__lk_room=void 0}),[e,t])},h6=({disabled:t,capabilities:e,sessionStarted:n,ref:i,participantName:r="User",loadingText:s="Waiting for agent to connect...",theme:o="vox"})=>{const[a,c]=B.useState(!1),{messages:l,send:u}=d6(),d=B.useRef(null),{agent:{isActive:h=!1}={}}=rb(),m=Ai(o);f6(),B.useEffect(()=>{d.current&&(d.current.scrollTop=d.current.scrollHeight)},[l.length]);async function g(f){await u(f)}return E.jsx("main",{ref:i,inert:t,className:ue("w-full flex flex-col items-center justify-center","max-w-md mx-auto",m.main,"overflow-hidden","h-full"),style:{minHeight:0},children:E.jsxs("div",{className:"w-full h-full flex-1 flex flex-col items-center justify-end px-0",children:[!h&&E.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[E.jsx(Id,{className:m.spinner,weight:"bold"}),E.jsx("span",{className:`text-sm opacity-80 ${m.text.muted}`,children:s})]}),h&&E.jsxs(E.Fragment,{children:[a&&E.jsx(n6,{className:ue("mx-auto w-full py-2 max-w-2xl px-5 transition-[opacity,translate] duration-300 ease-out ","max-h-[calc(100%-80px)]",a?"translate-y-0 opacity-100 delay-200":"translate-y-10 opacity-0"),children:E.jsx("div",{ref:d,className:"space-y-3 relative whitespace-pre-wrap z-0 overflow-y-auto scrollbar-hide",style:{scrollbarWidth:"none"},children:E.jsx(z0,{children:l.map(f=>E.jsx(Zn.div,{initial:{opacity:0,height:0},animate:{opacity:1,height:"auto"},exit:{opacity:1,height:"auto"},transition:{duration:.5,ease:"easeOut"},children:E.jsx(e6,{participantName:r,entry:f},f.id)},f.id))})})}),!a&&E.jsx(u6,{chatOpen:a}),E.jsx("div",{className:"w-full relative h-fit flex flex-col mb-1",children:E.jsx(Zn.div,{initial:{opacity:0,y:30},animate:{opacity:n?1:0,y:n?0:30},transition:{duration:.3,delay:n?.5:0,ease:"easeOut"},className:"rounded-xl flex flex-col-reverse justify-end h-full my-2 ",children:E.jsx(XM,{capabilities:e,onChatOpenChange:c,onSendMessage:g,theme:o,className:"border-none py-1 rounded-xl"})},"control-bar")})]})]})})},pm=t=>t,p6=()=>{let t=pm;return{configure(e){t=e},generate(e){return t(e)},reset(){t=pm}}},m6=p6();function Xn(t,...e){const n=new URL(`https://mui.com/production-error/?code=${t}`);return e.forEach(i=>n.searchParams.append("args[]",i)),`Minified MUI error #${t}; visit ${n} for the full message.`}function Pi(t){if(typeof t!="string")throw new Error(process.env.NODE_ENV!=="production"?"MUI: `capitalize(string)` expects a string argument.":Xn(7));return t.charAt(0).toUpperCase()+t.slice(1)}var Xs={exports:{}},Qs={exports:{}},Te={};/** @license React v16.13.1
|
|
120
120
|
* react-is.production.min.js
|
|
121
121
|
*
|
|
122
122
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
123
123
|
*
|
|
124
124
|
* This source code is licensed under the MIT license found in the
|
|
125
125
|
* LICENSE file in the root directory of this source tree.
|
|
126
|
-
*/var mm;function g6(){if(mm)return Te;mm=1;var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,i=t?Symbol.for("react.fragment"):60107,r=t?Symbol.for("react.strict_mode"):60108,s=t?Symbol.for("react.profiler"):60114,o=t?Symbol.for("react.provider"):60109,a=t?Symbol.for("react.context"):60110,c=t?Symbol.for("react.async_mode"):60111,l=t?Symbol.for("react.concurrent_mode"):60111,u=t?Symbol.for("react.forward_ref"):60112,d=t?Symbol.for("react.suspense"):60113,h=t?Symbol.for("react.suspense_list"):60120,
|
|
126
|
+
*/var mm;function g6(){if(mm)return Te;mm=1;var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,i=t?Symbol.for("react.fragment"):60107,r=t?Symbol.for("react.strict_mode"):60108,s=t?Symbol.for("react.profiler"):60114,o=t?Symbol.for("react.provider"):60109,a=t?Symbol.for("react.context"):60110,c=t?Symbol.for("react.async_mode"):60111,l=t?Symbol.for("react.concurrent_mode"):60111,u=t?Symbol.for("react.forward_ref"):60112,d=t?Symbol.for("react.suspense"):60113,h=t?Symbol.for("react.suspense_list"):60120,m=t?Symbol.for("react.memo"):60115,g=t?Symbol.for("react.lazy"):60116,f=t?Symbol.for("react.block"):60121,y=t?Symbol.for("react.fundamental"):60117,v=t?Symbol.for("react.responder"):60118,C=t?Symbol.for("react.scope"):60119;function T(b){if(typeof b=="object"&&b!==null){var w=b.$$typeof;switch(w){case e:switch(b=b.type,b){case c:case l:case i:case s:case r:case d:return b;default:switch(b=b&&b.$$typeof,b){case a:case u:case g:case m:case o:return b;default:return w}}case n:return w}}}function k(b){return T(b)===l}return Te.AsyncMode=c,Te.ConcurrentMode=l,Te.ContextConsumer=a,Te.ContextProvider=o,Te.Element=e,Te.ForwardRef=u,Te.Fragment=i,Te.Lazy=g,Te.Memo=m,Te.Portal=n,Te.Profiler=s,Te.StrictMode=r,Te.Suspense=d,Te.isAsyncMode=function(b){return k(b)||T(b)===c},Te.isConcurrentMode=k,Te.isContextConsumer=function(b){return T(b)===a},Te.isContextProvider=function(b){return T(b)===o},Te.isElement=function(b){return typeof b=="object"&&b!==null&&b.$$typeof===e},Te.isForwardRef=function(b){return T(b)===u},Te.isFragment=function(b){return T(b)===i},Te.isLazy=function(b){return T(b)===g},Te.isMemo=function(b){return T(b)===m},Te.isPortal=function(b){return T(b)===n},Te.isProfiler=function(b){return T(b)===s},Te.isStrictMode=function(b){return T(b)===r},Te.isSuspense=function(b){return T(b)===d},Te.isValidElementType=function(b){return typeof b=="string"||typeof b=="function"||b===i||b===l||b===s||b===r||b===d||b===h||typeof b=="object"&&b!==null&&(b.$$typeof===g||b.$$typeof===m||b.$$typeof===o||b.$$typeof===a||b.$$typeof===u||b.$$typeof===y||b.$$typeof===v||b.$$typeof===C||b.$$typeof===f)},Te.typeOf=T,Te}var ke={};/** @license React v16.13.1
|
|
127
127
|
* react-is.development.js
|
|
128
128
|
*
|
|
129
129
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
130
130
|
*
|
|
131
131
|
* This source code is licensed under the MIT license found in the
|
|
132
132
|
* LICENSE file in the root directory of this source tree.
|
|
133
|
-
*/var gm;function v6(){return gm||(gm=1,process.env.NODE_ENV!=="production"&&function(){var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,i=t?Symbol.for("react.fragment"):60107,r=t?Symbol.for("react.strict_mode"):60108,s=t?Symbol.for("react.profiler"):60114,o=t?Symbol.for("react.provider"):60109,a=t?Symbol.for("react.context"):60110,c=t?Symbol.for("react.async_mode"):60111,l=t?Symbol.for("react.concurrent_mode"):60111,u=t?Symbol.for("react.forward_ref"):60112,d=t?Symbol.for("react.suspense"):60113,h=t?Symbol.for("react.suspense_list"):60120,
|
|
133
|
+
*/var gm;function v6(){return gm||(gm=1,process.env.NODE_ENV!=="production"&&function(){var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,n=t?Symbol.for("react.portal"):60106,i=t?Symbol.for("react.fragment"):60107,r=t?Symbol.for("react.strict_mode"):60108,s=t?Symbol.for("react.profiler"):60114,o=t?Symbol.for("react.provider"):60109,a=t?Symbol.for("react.context"):60110,c=t?Symbol.for("react.async_mode"):60111,l=t?Symbol.for("react.concurrent_mode"):60111,u=t?Symbol.for("react.forward_ref"):60112,d=t?Symbol.for("react.suspense"):60113,h=t?Symbol.for("react.suspense_list"):60120,m=t?Symbol.for("react.memo"):60115,g=t?Symbol.for("react.lazy"):60116,f=t?Symbol.for("react.block"):60121,y=t?Symbol.for("react.fundamental"):60117,v=t?Symbol.for("react.responder"):60118,C=t?Symbol.for("react.scope"):60119;function T(H){return typeof H=="string"||typeof H=="function"||H===i||H===l||H===s||H===r||H===d||H===h||typeof H=="object"&&H!==null&&(H.$$typeof===g||H.$$typeof===m||H.$$typeof===o||H.$$typeof===a||H.$$typeof===u||H.$$typeof===y||H.$$typeof===v||H.$$typeof===C||H.$$typeof===f)}function k(H){if(typeof H=="object"&&H!==null){var Se=H.$$typeof;switch(Se){case e:var Qe=H.type;switch(Qe){case c:case l:case i:case s:case r:case d:return Qe;default:var Dt=Qe&&Qe.$$typeof;switch(Dt){case a:case u:case g:case m:case o:return Dt;default:return Se}}case n:return Se}}}var b=c,w=l,x=a,R=o,_=e,S=u,A=i,O=g,z=m,K=n,se=s,Q=r,Z=d,F=!1;function ce(H){return F||(F=!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.")),I(H)||k(H)===c}function I(H){return k(H)===l}function j(H){return k(H)===a}function W(H){return k(H)===o}function Y(H){return typeof H=="object"&&H!==null&&H.$$typeof===e}function J(H){return k(H)===u}function re(H){return k(H)===i}function oe(H){return k(H)===g}function V(H){return k(H)===m}function q(H){return k(H)===n}function te(H){return k(H)===s}function ee(H){return k(H)===r}function ae(H){return k(H)===d}ke.AsyncMode=b,ke.ConcurrentMode=w,ke.ContextConsumer=x,ke.ContextProvider=R,ke.Element=_,ke.ForwardRef=S,ke.Fragment=A,ke.Lazy=O,ke.Memo=z,ke.Portal=K,ke.Profiler=se,ke.StrictMode=Q,ke.Suspense=Z,ke.isAsyncMode=ce,ke.isConcurrentMode=I,ke.isContextConsumer=j,ke.isContextProvider=W,ke.isElement=Y,ke.isForwardRef=J,ke.isFragment=re,ke.isLazy=oe,ke.isMemo=V,ke.isPortal=q,ke.isProfiler=te,ke.isStrictMode=ee,ke.isSuspense=ae,ke.isValidElementType=T,ke.typeOf=k}()),ke}var vm;function z1(){return vm||(vm=1,process.env.NODE_ENV==="production"?Qs.exports=g6():Qs.exports=v6()),Qs.exports}/*
|
|
134
134
|
object-assign
|
|
135
135
|
(c) Sindre Sorhus
|
|
136
136
|
@license MIT
|
|
137
|
-
*/var _c,ym;function y6(){if(ym)return _c;ym=1;var t=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function i(s){if(s==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(s)}function r(){try{if(!Object.assign)return!1;var s=new String("abc");if(s[5]="de",Object.getOwnPropertyNames(s)[0]==="5")return!1;for(var o={},a=0;a<10;a++)o["_"+String.fromCharCode(a)]=a;var c=Object.getOwnPropertyNames(o).map(function(u){return o[u]});if(c.join("")!=="0123456789")return!1;var l={};return"abcdefghijklmnopqrst".split("").forEach(function(u){l[u]=u}),Object.keys(Object.assign({},l)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return _c=r()?Object.assign:function(s,o){for(var a,c=i(s),l,u=1;u<arguments.length;u++){a=Object(arguments[u]);for(var d in a)e.call(a,d)&&(c[d]=a[d]);if(t){l=t(a);for(var h=0;h<l.length;h++)n.call(a,l[h])&&(c[l[h]]=a[l[h]])}}return c},_c}var Mc,bm;function zd(){if(bm)return Mc;bm=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Mc=t,Mc}var Oc,Sm;function W1(){return Sm||(Sm=1,Oc=Function.call.bind(Object.prototype.hasOwnProperty)),Oc}var Dc,Tm;function b6(){if(Tm)return Dc;Tm=1;var t=function(){};if(process.env.NODE_ENV!=="production"){var e=zd(),n={},i=W1();t=function(s){var o="Warning: "+s;typeof console<"u"&&console.error(o);try{throw new Error(o)}catch{}}}function r(s,o,a,c,l){if(process.env.NODE_ENV!=="production"){for(var u in s)if(i(s,u)){var d;try{if(typeof s[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 s[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw h.name="Invariant Violation",h}d=s[u](o,u,c,a,null,e)}catch(g){d=g}if(d&&!(d instanceof Error)&&t((c||"React class")+": type specification of "+a+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof d+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),d instanceof Error&&!(d.message in n)){n[d.message]=!0;var
|
|
138
|
-
Valid keys: `+JSON.stringify(Object.keys(
|
|
137
|
+
*/var _c,ym;function y6(){if(ym)return _c;ym=1;var t=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function i(s){if(s==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(s)}function r(){try{if(!Object.assign)return!1;var s=new String("abc");if(s[5]="de",Object.getOwnPropertyNames(s)[0]==="5")return!1;for(var o={},a=0;a<10;a++)o["_"+String.fromCharCode(a)]=a;var c=Object.getOwnPropertyNames(o).map(function(u){return o[u]});if(c.join("")!=="0123456789")return!1;var l={};return"abcdefghijklmnopqrst".split("").forEach(function(u){l[u]=u}),Object.keys(Object.assign({},l)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return _c=r()?Object.assign:function(s,o){for(var a,c=i(s),l,u=1;u<arguments.length;u++){a=Object(arguments[u]);for(var d in a)e.call(a,d)&&(c[d]=a[d]);if(t){l=t(a);for(var h=0;h<l.length;h++)n.call(a,l[h])&&(c[l[h]]=a[l[h]])}}return c},_c}var Mc,bm;function zd(){if(bm)return Mc;bm=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Mc=t,Mc}var Oc,Sm;function W1(){return Sm||(Sm=1,Oc=Function.call.bind(Object.prototype.hasOwnProperty)),Oc}var Dc,Tm;function b6(){if(Tm)return Dc;Tm=1;var t=function(){};if(process.env.NODE_ENV!=="production"){var e=zd(),n={},i=W1();t=function(s){var o="Warning: "+s;typeof console<"u"&&console.error(o);try{throw new Error(o)}catch{}}}function r(s,o,a,c,l){if(process.env.NODE_ENV!=="production"){for(var u in s)if(i(s,u)){var d;try{if(typeof s[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 s[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw h.name="Invariant Violation",h}d=s[u](o,u,c,a,null,e)}catch(g){d=g}if(d&&!(d instanceof Error)&&t((c||"React class")+": type specification of "+a+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof d+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),d instanceof Error&&!(d.message in n)){n[d.message]=!0;var m=l?l():"";t("Failed "+a+" type: "+d.message+(m??""))}}}}return r.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(n={})},Dc=r,Dc}var Nc,km;function S6(){if(km)return Nc;km=1;var t=z1(),e=y6(),n=zd(),i=W1(),r=b6(),s=function(){};process.env.NODE_ENV!=="production"&&(s=function(a){var c="Warning: "+a;typeof console<"u"&&console.error(c);try{throw new Error(c)}catch{}});function o(){return null}return Nc=function(a,c){var l=typeof Symbol=="function"&&Symbol.iterator,u="@@iterator";function d(I){var j=I&&(l&&I[l]||I[u]);if(typeof j=="function")return j}var h="<<anonymous>>",m={array:v("array"),bigint:v("bigint"),bool:v("boolean"),func:v("function"),number:v("number"),object:v("object"),string:v("string"),symbol:v("symbol"),any:C(),arrayOf:T,element:k(),elementType:b(),instanceOf:w,node:S(),objectOf:R,oneOf:x,oneOfType:_,shape:O,exact:z};function g(I,j){return I===j?I!==0||1/I===1/j:I!==I&&j!==j}function f(I,j){this.message=I,this.data=j&&typeof j=="object"?j:{},this.stack=""}f.prototype=Error.prototype;function y(I){if(process.env.NODE_ENV!=="production")var j={},W=0;function Y(re,oe,V,q,te,ee,ae){if(q=q||h,ee=ee||V,ae!==n){if(c){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}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var Se=q+":"+V;!j[Se]&&W<3&&(s("You are manually calling a React.PropTypes validation function for the `"+ee+"` prop on `"+q+"`. 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."),j[Se]=!0,W++)}}return oe[V]==null?re?oe[V]===null?new f("The "+te+" `"+ee+"` is marked as required "+("in `"+q+"`, but its value is `null`.")):new f("The "+te+" `"+ee+"` is marked as required in "+("`"+q+"`, but its value is `undefined`.")):null:I(oe,V,q,te,ee)}var J=Y.bind(null,!1);return J.isRequired=Y.bind(null,!0),J}function v(I){function j(W,Y,J,re,oe,V){var q=W[Y],te=Q(q);if(te!==I){var ee=Z(q);return new f("Invalid "+re+" `"+oe+"` of type "+("`"+ee+"` supplied to `"+J+"`, expected ")+("`"+I+"`."),{expectedType:I})}return null}return y(j)}function C(){return y(o)}function T(I){function j(W,Y,J,re,oe){if(typeof I!="function")return new f("Property `"+oe+"` of component `"+J+"` has invalid PropType notation inside arrayOf.");var V=W[Y];if(!Array.isArray(V)){var q=Q(V);return new f("Invalid "+re+" `"+oe+"` of type "+("`"+q+"` supplied to `"+J+"`, expected an array."))}for(var te=0;te<V.length;te++){var ee=I(V,te,J,re,oe+"["+te+"]",n);if(ee instanceof Error)return ee}return null}return y(j)}function k(){function I(j,W,Y,J,re){var oe=j[W];if(!a(oe)){var V=Q(oe);return new f("Invalid "+J+" `"+re+"` of type "+("`"+V+"` supplied to `"+Y+"`, expected a single ReactElement."))}return null}return y(I)}function b(){function I(j,W,Y,J,re){var oe=j[W];if(!t.isValidElementType(oe)){var V=Q(oe);return new f("Invalid "+J+" `"+re+"` of type "+("`"+V+"` supplied to `"+Y+"`, expected a single ReactElement type."))}return null}return y(I)}function w(I){function j(W,Y,J,re,oe){if(!(W[Y]instanceof I)){var V=I.name||h,q=ce(W[Y]);return new f("Invalid "+re+" `"+oe+"` of type "+("`"+q+"` supplied to `"+J+"`, expected ")+("instance of `"+V+"`."))}return null}return y(j)}function x(I){if(!Array.isArray(I))return process.env.NODE_ENV!=="production"&&(arguments.length>1?s("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])."):s("Invalid argument supplied to oneOf, expected an array.")),o;function j(W,Y,J,re,oe){for(var V=W[Y],q=0;q<I.length;q++)if(g(V,I[q]))return null;var te=JSON.stringify(I,function(ae,H){var Se=Z(H);return Se==="symbol"?String(H):H});return new f("Invalid "+re+" `"+oe+"` of value `"+String(V)+"` "+("supplied to `"+J+"`, expected one of "+te+"."))}return y(j)}function R(I){function j(W,Y,J,re,oe){if(typeof I!="function")return new f("Property `"+oe+"` of component `"+J+"` has invalid PropType notation inside objectOf.");var V=W[Y],q=Q(V);if(q!=="object")return new f("Invalid "+re+" `"+oe+"` of type "+("`"+q+"` supplied to `"+J+"`, expected an object."));for(var te in V)if(i(V,te)){var ee=I(V,te,J,re,oe+"."+te,n);if(ee instanceof Error)return ee}return null}return y(j)}function _(I){if(!Array.isArray(I))return process.env.NODE_ENV!=="production"&&s("Invalid argument supplied to oneOfType, expected an instance of array."),o;for(var j=0;j<I.length;j++){var W=I[j];if(typeof W!="function")return s("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+F(W)+" at index "+j+"."),o}function Y(J,re,oe,V,q){for(var te=[],ee=0;ee<I.length;ee++){var ae=I[ee],H=ae(J,re,oe,V,q,n);if(H==null)return null;H.data&&i(H.data,"expectedType")&&te.push(H.data.expectedType)}var Se=te.length>0?", expected one of type ["+te.join(", ")+"]":"";return new f("Invalid "+V+" `"+q+"` supplied to "+("`"+oe+"`"+Se+"."))}return y(Y)}function S(){function I(j,W,Y,J,re){return K(j[W])?null:new f("Invalid "+J+" `"+re+"` supplied to "+("`"+Y+"`, expected a ReactNode."))}return y(I)}function A(I,j,W,Y,J){return new f((I||"React class")+": "+j+" type `"+W+"."+Y+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+J+"`.")}function O(I){function j(W,Y,J,re,oe){var V=W[Y],q=Q(V);if(q!=="object")return new f("Invalid "+re+" `"+oe+"` of type `"+q+"` "+("supplied to `"+J+"`, expected `object`."));for(var te in I){var ee=I[te];if(typeof ee!="function")return A(J,re,oe,te,Z(ee));var ae=ee(V,te,J,re,oe+"."+te,n);if(ae)return ae}return null}return y(j)}function z(I){function j(W,Y,J,re,oe){var V=W[Y],q=Q(V);if(q!=="object")return new f("Invalid "+re+" `"+oe+"` of type `"+q+"` "+("supplied to `"+J+"`, expected `object`."));var te=e({},W[Y],I);for(var ee in te){var ae=I[ee];if(i(I,ee)&&typeof ae!="function")return A(J,re,oe,ee,Z(ae));if(!ae)return new f("Invalid "+re+" `"+oe+"` key `"+ee+"` supplied to `"+J+"`.\nBad object: "+JSON.stringify(W[Y],null," ")+`
|
|
138
|
+
Valid keys: `+JSON.stringify(Object.keys(I),null," "));var H=ae(V,ee,J,re,oe+"."+ee,n);if(H)return H}return null}return y(j)}function K(I){switch(typeof I){case"number":case"string":case"undefined":return!0;case"boolean":return!I;case"object":if(Array.isArray(I))return I.every(K);if(I===null||a(I))return!0;var j=d(I);if(j){var W=j.call(I),Y;if(j!==I.entries){for(;!(Y=W.next()).done;)if(!K(Y.value))return!1}else for(;!(Y=W.next()).done;){var J=Y.value;if(J&&!K(J[1]))return!1}}else return!1;return!0;default:return!1}}function se(I,j){return I==="symbol"?!0:j?j["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&j instanceof Symbol:!1}function Q(I){var j=typeof I;return Array.isArray(I)?"array":I instanceof RegExp?"object":se(j,I)?"symbol":j}function Z(I){if(typeof I>"u"||I===null)return""+I;var j=Q(I);if(j==="object"){if(I instanceof Date)return"date";if(I instanceof RegExp)return"regexp"}return j}function F(I){var j=Z(I);switch(j){case"array":case"object":return"an "+j;case"boolean":case"date":case"regexp":return"a "+j;default:return j}}function ce(I){return!I.constructor||!I.constructor.name?h:I.constructor.name}return m.checkPropTypes=r,m.resetWarningCache=r.resetWarningCache,m.PropTypes=m,m},Nc}var Lc,Cm;function T6(){if(Cm)return Lc;Cm=1;var t=zd();function e(){}function n(){}return n.resetWarningCache=e,Lc=function(){function i(o,a,c,l,u,d){if(d!==t){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}}i.isRequired=i;function r(){return i}var s={array:i,bigint:i,bool:i,func:i,number:i,object:i,string:i,symbol:i,any:i,arrayOf:r,element:i,elementType:i,instanceOf:r,node:i,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:n,resetWarningCache:e};return s.PropTypes=s,s},Lc}var wm;function k6(){if(wm)return Xs.exports;if(wm=1,process.env.NODE_ENV!=="production"){var t=z1(),e=!0;Xs.exports=S6()(t.isElement,e)}else Xs.exports=T6()();return Xs.exports}var C6=k6();const ve=SS(C6);function w6(t,e,n=void 0){const i={};for(const r in t){const s=t[r];let o="",a=!0;for(let c=0;c<s.length;c+=1){const l=s[c];l&&(o+=(a===!0?"":" ")+e(l),a=!1,n&&n[l]&&(o+=" "+n[l]))}i[r]=o}return i}var eo={exports:{}},Ce={};/**
|
|
139
139
|
* @license React
|
|
140
140
|
* react-is.production.js
|
|
141
141
|
*
|
|
@@ -143,7 +143,7 @@ Valid keys: `+JSON.stringify(Object.keys(A),null," "));var H=ae(V,ee,J,re,oe+".
|
|
|
143
143
|
*
|
|
144
144
|
* This source code is licensed under the MIT license found in the
|
|
145
145
|
* LICENSE file in the root directory of this source tree.
|
|
146
|
-
*/var xm;function x6(){if(xm)return Ce;xm=1;var t=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),o=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),l=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),h=Symbol.for("react.view_transition"),
|
|
146
|
+
*/var xm;function x6(){if(xm)return Ce;xm=1;var t=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),o=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),l=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),h=Symbol.for("react.view_transition"),m=Symbol.for("react.client.reference");function g(f){if(typeof f=="object"&&f!==null){var y=f.$$typeof;switch(y){case t:switch(f=f.type,f){case n:case r:case i:case c:case l:case h:return f;default:switch(f=f&&f.$$typeof,f){case o:case a:case d:case u:return f;case s:return f;default:return y}}case e:return y}}}return Ce.ContextConsumer=s,Ce.ContextProvider=o,Ce.Element=t,Ce.ForwardRef=a,Ce.Fragment=n,Ce.Lazy=d,Ce.Memo=u,Ce.Portal=e,Ce.Profiler=r,Ce.StrictMode=i,Ce.Suspense=c,Ce.SuspenseList=l,Ce.isContextConsumer=function(f){return g(f)===s},Ce.isContextProvider=function(f){return g(f)===o},Ce.isElement=function(f){return typeof f=="object"&&f!==null&&f.$$typeof===t},Ce.isForwardRef=function(f){return g(f)===a},Ce.isFragment=function(f){return g(f)===n},Ce.isLazy=function(f){return g(f)===d},Ce.isMemo=function(f){return g(f)===u},Ce.isPortal=function(f){return g(f)===e},Ce.isProfiler=function(f){return g(f)===r},Ce.isStrictMode=function(f){return g(f)===i},Ce.isSuspense=function(f){return g(f)===c},Ce.isSuspenseList=function(f){return g(f)===l},Ce.isValidElementType=function(f){return typeof f=="string"||typeof f=="function"||f===n||f===r||f===i||f===c||f===l||typeof f=="object"&&f!==null&&(f.$$typeof===d||f.$$typeof===u||f.$$typeof===o||f.$$typeof===s||f.$$typeof===a||f.$$typeof===m||f.getModuleId!==void 0)},Ce.typeOf=g,Ce}var we={};/**
|
|
147
147
|
* @license React
|
|
148
148
|
* react-is.development.js
|
|
149
149
|
*
|
|
@@ -151,20 +151,20 @@ Valid keys: `+JSON.stringify(Object.keys(A),null," "));var H=ae(V,ee,J,re,oe+".
|
|
|
151
151
|
*
|
|
152
152
|
* This source code is licensed under the MIT license found in the
|
|
153
153
|
* LICENSE file in the root directory of this source tree.
|
|
154
|
-
*/var Em;function E6(){return Em||(Em=1,process.env.NODE_ENV!=="production"&&function(){function t(f){if(typeof f=="object"&&f!==null){var y=f.$$typeof;switch(y){case e:switch(f=f.type,f){case i:case s:case r:case l:case u:case
|
|
154
|
+
*/var Em;function E6(){return Em||(Em=1,process.env.NODE_ENV!=="production"&&function(){function t(f){if(typeof f=="object"&&f!==null){var y=f.$$typeof;switch(y){case e:switch(f=f.type,f){case i:case s:case r:case l:case u:case m:return f;default:switch(f=f&&f.$$typeof,f){case a:case c:case h:case d:return f;case o:return f;default:return y}}case n:return y}}}var e=Symbol.for("react.transitional.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),a=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),u=Symbol.for("react.suspense_list"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),m=Symbol.for("react.view_transition"),g=Symbol.for("react.client.reference");we.ContextConsumer=o,we.ContextProvider=a,we.Element=e,we.ForwardRef=c,we.Fragment=i,we.Lazy=h,we.Memo=d,we.Portal=n,we.Profiler=s,we.StrictMode=r,we.Suspense=l,we.SuspenseList=u,we.isContextConsumer=function(f){return t(f)===o},we.isContextProvider=function(f){return t(f)===a},we.isElement=function(f){return typeof f=="object"&&f!==null&&f.$$typeof===e},we.isForwardRef=function(f){return t(f)===c},we.isFragment=function(f){return t(f)===i},we.isLazy=function(f){return t(f)===h},we.isMemo=function(f){return t(f)===d},we.isPortal=function(f){return t(f)===n},we.isProfiler=function(f){return t(f)===s},we.isStrictMode=function(f){return t(f)===r},we.isSuspense=function(f){return t(f)===l},we.isSuspenseList=function(f){return t(f)===u},we.isValidElementType=function(f){return typeof f=="string"||typeof f=="function"||f===i||f===s||f===r||f===l||f===u||typeof f=="object"&&f!==null&&(f.$$typeof===h||f.$$typeof===d||f.$$typeof===a||f.$$typeof===o||f.$$typeof===c||f.$$typeof===g||f.getModuleId!==void 0)},we.typeOf=t}()),we}var Pm;function P6(){return Pm||(Pm=1,process.env.NODE_ENV==="production"?eo.exports=x6():eo.exports=E6()),eo.exports}var Jo=P6();function Tn(t){if(typeof t!="object"||t===null)return!1;const e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)}function q1(t){if(p.isValidElement(t)||Jo.isValidElementType(t)||!Tn(t))return t;const e={};return Object.keys(t).forEach(n=>{e[n]=q1(t[n])}),e}function Ct(t,e,n={clone:!0}){const i=n.clone?{...t}:t;return Tn(t)&&Tn(e)&&Object.keys(e).forEach(r=>{p.isValidElement(e[r])||Jo.isValidElementType(e[r])?i[r]=e[r]:Tn(e[r])&&Object.prototype.hasOwnProperty.call(t,r)&&Tn(t[r])?i[r]=Ct(t[r],e[r],n):n.clone?i[r]=Tn(e[r])?q1(e[r]):e[r]:i[r]=e[r]}),i}function is(t,e){return e?Ct(t,e,{clone:!1}):t}const ai=process.env.NODE_ENV!=="production"?ve.oneOfType([ve.number,ve.string,ve.object,ve.array]):{};function R6(t,e){if(!t.containerQueries)return e;const n=Object.keys(e).filter(i=>i.startsWith("@container")).sort((i,r)=>{var o,a;const s=/min-width:\s*([0-9.]+)/;return+(((o=i.match(s))==null?void 0:o[1])||0)-+(((a=r.match(s))==null?void 0:a[1])||0)});return n.length?n.reduce((i,r)=>{const s=e[r];return delete i[r],i[r]=s,i},{...e}):e}function A6(t,e){return e==="@"||e.startsWith("@")&&(t.some(n=>e.startsWith(`@${n}`))||!!e.match(/^@\d/))}function I6(t,e){const n=e.match(/^@([^/]+)?\/?(.+)?$/);if(!n){if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV!=="production"?`MUI: The provided shorthand ${`(${e})`} is invalid. The format should be \`@<breakpoint | number>\` or \`@<breakpoint | number>/<container>\`.
|
|
155
155
|
For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.`:Xn(18,`(${e})`));return null}const[,i,r]=n,s=Number.isNaN(+i)?i||0:+i;return t.containerQueries(r).up(s)}function _6(t){const e=(s,o)=>s.replace("@media",o?`@container ${o}`:"@container");function n(s,o){s.up=(...a)=>e(t.breakpoints.up(...a),o),s.down=(...a)=>e(t.breakpoints.down(...a),o),s.between=(...a)=>e(t.breakpoints.between(...a),o),s.only=(...a)=>e(t.breakpoints.only(...a),o),s.not=(...a)=>{const c=e(t.breakpoints.not(...a),o);return c.includes("not all and")?c.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):c}}const i={},r=s=>(n(i,s),i);return n(r),{...t,containerQueries:r}}const ka={xs:0,sm:600,md:900,lg:1200,xl:1536},Rm={keys:["xs","sm","md","lg","xl"],up:t=>`@media (min-width:${ka[t]}px)`},M6={containerQueries:t=>({up:e=>{let n=typeof e=="number"?e:ka[e]||e;return typeof n=="number"&&(n=`${n}px`),t?`@container ${t} (min-width:${n})`:`@container (min-width:${n})`}})};function _n(t,e,n){const i=t.theme||{};if(Array.isArray(e)){const s=i.breakpoints||Rm;return e.reduce((o,a,c)=>(o[s.up(s.keys[c])]=n(e[c]),o),{})}if(typeof e=="object"){const s=i.breakpoints||Rm;return Object.keys(e).reduce((o,a)=>{if(A6(s.keys,a)){const c=I6(i.containerQueries?i:M6,a);c&&(o[c]=n(e[a],a))}else if(Object.keys(s.values||ka).includes(a)){const c=s.up(a);o[c]=n(e[a],a)}else{const c=a;o[c]=e[c]}return o},{})}return n(e)}function O6(t={}){var n;return((n=t.keys)==null?void 0:n.reduce((i,r)=>{const s=t.up(r);return i[s]={},i},{}))||{}}function D6(t,e){return t.reduce((n,i)=>{const r=n[i];return(!r||Object.keys(r).length===0)&&delete n[i],n},e)}function Ca(t,e,n=!0){if(!e||typeof e!="string")return null;if(t&&t.vars&&n){const i=`vars.${e}`.split(".").reduce((r,s)=>r&&r[s]?r[s]:null,t);if(i!=null)return i}return e.split(".").reduce((i,r)=>i&&i[r]!=null?i[r]:null,t)}function Xo(t,e,n,i=n){let r;return typeof t=="function"?r=t(n):Array.isArray(t)?r=t[n]||i:r=Ca(t,n)||i,e&&(r=e(r,i,t)),r}function We(t){const{prop:e,cssProperty:n=t.prop,themeKey:i,transform:r}=t,s=o=>{if(o[e]==null)return null;const a=o[e],c=o.theme,l=Ca(c,i)||{};return _n(o,a,d=>{let h=Xo(l,r,d);return d===h&&typeof d=="string"&&(h=Xo(l,r,`${e}${d==="default"?"":Pi(d)}`,d)),n===!1?h:{[n]:h}})};return s.propTypes=process.env.NODE_ENV!=="production"?{[e]:ai}:{},s.filterProps=[e],s}function N6(t){const e={};return n=>(e[n]===void 0&&(e[n]=t(n)),e[n])}const L6={m:"margin",p:"padding"},V6={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},Am={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},F6=N6(t=>{if(t.length>2)if(Am[t])t=Am[t];else return[t];const[e,n]=t.split(""),i=L6[e],r=V6[n]||"";return Array.isArray(r)?r.map(s=>i+s):[i+r]}),wa=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],xa=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],j6=[...wa,...xa];function _s(t,e,n,i){const r=Ca(t,e,!0)??n;return typeof r=="number"||typeof r=="string"?s=>typeof s=="string"?s:(process.env.NODE_ENV!=="production"&&typeof s!="number"&&console.error(`MUI: Expected ${i} argument to be a number or a string, got ${s}.`),typeof r=="string"?r.startsWith("var(")&&s===0?0:r.startsWith("var(")&&s===1?r:`calc(${s} * ${r})`:r*s):Array.isArray(r)?s=>{if(typeof s=="string")return s;const o=Math.abs(s);process.env.NODE_ENV!=="production"&&(Number.isInteger(o)?o>r.length-1&&console.error([`MUI: The value provided (${o}) overflows.`,`The supported values are: ${JSON.stringify(r)}.`,`${o} > ${r.length-1}, you need to add the missing values.`].join(`
|
|
156
156
|
`)):console.error([`MUI: The \`theme.${e}\` 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.${e}\` as a number.`].join(`
|
|
157
157
|
`)));const a=r[o];return s>=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.${e}\` value (${r}) is invalid.`,"It should be a number, an array or a function."].join(`
|
|
158
|
-
`)),()=>{})}function Wd(t){return _s(t,"spacing",8,"spacing")}function Ms(t,e){return typeof e=="string"||e==null?e:t(e)}function U6(t,e){return n=>t.reduce((i,r)=>(i[r]=Ms(e,n),i),{})}function B6(t,e,n,i){if(!e.includes(n))return null;const r=F6(n),s=U6(r,i),o=t[n];return _n(t,o,s)}function G1(t,e){const n=Wd(t.theme);return Object.keys(t).map(i=>B6(t,e,i,n)).reduce(is,{})}function Ne(t){return G1(t,wa)}Ne.propTypes=process.env.NODE_ENV!=="production"?wa.reduce((t,e)=>(t[e]=ai,t),{}):{};Ne.filterProps=wa;function Le(t){return G1(t,xa)}Le.propTypes=process.env.NODE_ENV!=="production"?xa.reduce((t,e)=>(t[e]=ai,t),{}):{};Le.filterProps=xa;process.env.NODE_ENV!=="production"&&j6.reduce((t,e)=>(t[e]=ai,t),{});function Ea(...t){const e=t.reduce((i,r)=>(r.filterProps.forEach(s=>{i[s]=r}),i),{}),n=i=>Object.keys(i).reduce((r,s)=>e[s]?is(r,e[s](i)):r,{});return n.propTypes=process.env.NODE_ENV!=="production"?t.reduce((i,r)=>Object.assign(i,r.propTypes),{}):{},n.filterProps=t.reduce((i,r)=>i.concat(r.filterProps),[]),n}function Rt(t){return typeof t!="number"?t:`${t}px solid`}function Ot(t,e){return We({prop:t,themeKey:"borders",transform:e})}const $6=Ot("border",Rt),H6=Ot("borderTop",Rt),z6=Ot("borderRight",Rt),W6=Ot("borderBottom",Rt),q6=Ot("borderLeft",Rt),G6=Ot("borderColor"),K6=Ot("borderTopColor"),Z6=Ot("borderRightColor"),Y6=Ot("borderBottomColor"),J6=Ot("borderLeftColor"),X6=Ot("outline",Rt),Q6=Ot("outlineColor"),Pa=t=>{if(t.borderRadius!==void 0&&t.borderRadius!==null){const e=_s(t.theme,"shape.borderRadius",4,"borderRadius"),n=i=>({borderRadius:Ms(e,i)});return _n(t,t.borderRadius,n)}return null};Pa.propTypes=process.env.NODE_ENV!=="production"?{borderRadius:ai}:{};Pa.filterProps=["borderRadius"];Ea($6,H6,z6,W6,q6,G6,K6,Z6,Y6,J6,Pa,X6,Q6);const Ra=t=>{if(t.gap!==void 0&&t.gap!==null){const e=_s(t.theme,"spacing",8,"gap"),n=i=>({gap:Ms(e,i)});return _n(t,t.gap,n)}return null};Ra.propTypes=process.env.NODE_ENV!=="production"?{gap:ai}:{};Ra.filterProps=["gap"];const Aa=t=>{if(t.columnGap!==void 0&&t.columnGap!==null){const e=_s(t.theme,"spacing",8,"columnGap"),n=i=>({columnGap:Ms(e,i)});return _n(t,t.columnGap,n)}return null};Aa.propTypes=process.env.NODE_ENV!=="production"?{columnGap:ai}:{};Aa.filterProps=["columnGap"];const Ia=t=>{if(t.rowGap!==void 0&&t.rowGap!==null){const e=_s(t.theme,"spacing",8,"rowGap"),n=i=>({rowGap:Ms(e,i)});return _n(t,t.rowGap,n)}return null};Ia.propTypes=process.env.NODE_ENV!=="production"?{rowGap:ai}:{};Ia.filterProps=["rowGap"];const eO=We({prop:"gridColumn"}),tO=We({prop:"gridRow"}),nO=We({prop:"gridAutoFlow"}),iO=We({prop:"gridAutoColumns"}),rO=We({prop:"gridAutoRows"}),sO=We({prop:"gridTemplateColumns"}),oO=We({prop:"gridTemplateRows"}),aO=We({prop:"gridTemplateAreas"}),cO=We({prop:"gridArea"});Ea(Ra,Aa,Ia,eO,tO,nO,iO,rO,sO,oO,aO,cO);function ar(t,e){return e==="grey"?e:t}const lO=We({prop:"color",themeKey:"palette",transform:ar}),uO=We({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:ar}),dO=We({prop:"backgroundColor",themeKey:"palette",transform:ar});Ea(lO,uO,dO);function St(t){return t<=1&&t!==0?`${t*100}%`:t}const fO=We({prop:"width",transform:St}),qd=t=>{if(t.maxWidth!==void 0&&t.maxWidth!==null){const e=n=>{var r,s,o,a,c;const i=((o=(s=(r=t.theme)==null?void 0:r.breakpoints)==null?void 0:s.values)==null?void 0:o[n])||ka[n];return i?((c=(a=t.theme)==null?void 0:a.breakpoints)==null?void 0:c.unit)!=="px"?{maxWidth:`${i}${t.theme.breakpoints.unit}`}:{maxWidth:i}:{maxWidth:St(n)}};return _n(t,t.maxWidth,e)}return null};qd.filterProps=["maxWidth"];const hO=We({prop:"minWidth",transform:St}),pO=We({prop:"height",transform:St}),mO=We({prop:"maxHeight",transform:St}),gO=We({prop:"minHeight",transform:St});We({prop:"size",cssProperty:"width",transform:St});We({prop:"size",cssProperty:"height",transform:St});const vO=We({prop:"boxSizing"});Ea(fO,qd,hO,pO,mO,gO,vO);const _a={border:{themeKey:"borders",transform:Rt},borderTop:{themeKey:"borders",transform:Rt},borderRight:{themeKey:"borders",transform:Rt},borderBottom:{themeKey:"borders",transform:Rt},borderLeft:{themeKey:"borders",transform:Rt},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:Rt},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:Pa},color:{themeKey:"palette",transform:ar},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:ar},backgroundColor:{themeKey:"palette",transform:ar},p:{style:Le},pt:{style:Le},pr:{style:Le},pb:{style:Le},pl:{style:Le},px:{style:Le},py:{style:Le},padding:{style:Le},paddingTop:{style:Le},paddingRight:{style:Le},paddingBottom:{style:Le},paddingLeft:{style:Le},paddingX:{style:Le},paddingY:{style:Le},paddingInline:{style:Le},paddingInlineStart:{style:Le},paddingInlineEnd:{style:Le},paddingBlock:{style:Le},paddingBlockStart:{style:Le},paddingBlockEnd:{style:Le},m:{style:Ne},mt:{style:Ne},mr:{style:Ne},mb:{style:Ne},ml:{style:Ne},mx:{style:Ne},my:{style:Ne},margin:{style:Ne},marginTop:{style:Ne},marginRight:{style:Ne},marginBottom:{style:Ne},marginLeft:{style:Ne},marginX:{style:Ne},marginY:{style:Ne},marginInline:{style:Ne},marginInlineStart:{style:Ne},marginInlineEnd:{style:Ne},marginBlock:{style:Ne},marginBlockStart:{style:Ne},marginBlockEnd:{style:Ne},displayPrint:{cssProperty:!1,transform:t=>({"@media print":{display:t}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:Ra},rowGap:{style:Ia},columnGap:{style:Aa},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:St},maxWidth:{style:qd},minWidth:{transform:St},height:{transform:St},maxHeight:{transform:St},minHeight:{transform:St},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 yO(...t){const e=t.reduce((i,r)=>i.concat(Object.keys(r)),[]),n=new Set(e);return t.every(i=>n.size===Object.keys(i).length)}function bO(t,e){return typeof t=="function"?t(e):t}function SO(){function t(n,i,r,s){const o={[n]:i,theme:r},a=s[n];if(!a)return{[n]:i};const{cssProperty:c=n,themeKey:l,transform:u,style:d}=a;if(i==null)return null;if(l==="typography"&&i==="inherit")return{[n]:i};const h=Ca(r,l)||{};return d?d(o):_n(o,i,g=>{let f=Xo(h,u,g);return g===f&&typeof g=="string"&&(f=Xo(h,u,`${n}${g==="default"?"":Pi(g)}`,g)),c===!1?f:{[c]:f}})}function e(n){const{sx:i,theme:r={}}=n||{};if(!i)return null;const s=r.unstable_sxConfig??_a;function o(a){let c=a;if(typeof a=="function")c=a(r);else if(typeof a!="object")return a;if(!c)return null;const l=O6(r.breakpoints),u=Object.keys(l);let d=l;return Object.keys(c).forEach(h=>{const p=bO(c[h],r);if(p!=null)if(typeof p=="object")if(s[h])d=is(d,t(h,p,r,s));else{const g=_n({theme:r},p,f=>({[h]:f}));yO(g,p)?d[h]=e({sx:p,theme:r}):d=is(d,g)}else d=is(d,t(h,p,r,s))}),R6(r,D6(u,d))}return Array.isArray(i)?i.map(o):o(i)}return e}const mr=SO();mr.filterProps=["sx"];function lu(){return lu=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)({}).hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},lu.apply(null,arguments)}function TO(t){if(t.sheet)return t.sheet;for(var e=0;e<document.styleSheets.length;e++)if(document.styleSheets[e].ownerNode===t)return document.styleSheets[e]}function kO(t){var e=document.createElement("style");return e.setAttribute("data-emotion",t.key),t.nonce!==void 0&&e.setAttribute("nonce",t.nonce),e.appendChild(document.createTextNode("")),e.setAttribute("data-s",""),e}var CO=function(){function t(n){var i=this;this._insertTag=function(r){var s;i.tags.length===0?i.insertionPoint?s=i.insertionPoint.nextSibling:i.prepend?s=i.container.firstChild:s=i.before:s=i.tags[i.tags.length-1].nextSibling,i.container.insertBefore(r,s),i.tags.push(r)},this.isSpeedy=n.speedy===void 0?!0:n.speedy,this.tags=[],this.ctr=0,this.nonce=n.nonce,this.key=n.key,this.container=n.container,this.prepend=n.prepend,this.insertionPoint=n.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(i){i.forEach(this._insertTag)},e.insert=function(i){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(kO(this));var r=this.tags[this.tags.length-1];if(this.isSpeedy){var s=TO(r);try{s.insertRule(i,s.cssRules.length)}catch{}}else r.appendChild(document.createTextNode(i));this.ctr++},e.flush=function(){this.tags.forEach(function(i){var r;return(r=i.parentNode)==null?void 0:r.removeChild(i)}),this.tags=[],this.ctr=0},t}(),ot="-ms-",Qo="-moz-",ye="-webkit-",K1="comm",Gd="rule",Kd="decl",wO="@import",Z1="@keyframes",xO="@layer",EO=Math.abs,Ma=String.fromCharCode,PO=Object.assign;function RO(t,e){return it(t,0)^45?(((e<<2^it(t,0))<<2^it(t,1))<<2^it(t,2))<<2^it(t,3):0}function Y1(t){return t.trim()}function AO(t,e){return(t=e.exec(t))?t[0]:t}function be(t,e,n){return t.replace(e,n)}function uu(t,e){return t.indexOf(e)}function it(t,e){return t.charCodeAt(e)|0}function bs(t,e,n){return t.slice(e,n)}function Yt(t){return t.length}function Zd(t){return t.length}function to(t,e){return e.push(t),t}function IO(t,e){return t.map(e).join("")}var Oa=1,gr=1,J1=0,vt=0,Ke=0,Pr="";function Da(t,e,n,i,r,s,o){return{value:t,root:e,parent:n,type:i,props:r,children:s,line:Oa,column:gr,length:o,return:""}}function Br(t,e){return PO(Da("",null,null,"",null,null,0),t,{length:-t.length},e)}function _O(){return Ke}function MO(){return Ke=vt>0?it(Pr,--vt):0,gr--,Ke===10&&(gr=1,Oa--),Ke}function wt(){return Ke=vt<J1?it(Pr,vt++):0,gr++,Ke===10&&(gr=1,Oa++),Ke}function sn(){return it(Pr,vt)}function Po(){return vt}function Os(t,e){return bs(Pr,t,e)}function Ss(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function X1(t){return Oa=gr=1,J1=Yt(Pr=t),vt=0,[]}function Q1(t){return Pr="",t}function Ro(t){return Y1(Os(vt-1,du(t===91?t+2:t===40?t+1:t)))}function OO(t){for(;(Ke=sn())&&Ke<33;)wt();return Ss(t)>2||Ss(Ke)>3?"":" "}function DO(t,e){for(;--e&&wt()&&!(Ke<48||Ke>102||Ke>57&&Ke<65||Ke>70&&Ke<97););return Os(t,Po()+(e<6&&sn()==32&&wt()==32))}function du(t){for(;wt();)switch(Ke){case t:return vt;case 34:case 39:t!==34&&t!==39&&du(Ke);break;case 40:t===41&&du(t);break;case 92:wt();break}return vt}function NO(t,e){for(;wt()&&t+Ke!==57;)if(t+Ke===84&&sn()===47)break;return"/*"+Os(e,vt-1)+"*"+Ma(t===47?t:wt())}function LO(t){for(;!Ss(sn());)wt();return Os(t,vt)}function VO(t){return Q1(Ao("",null,null,null,[""],t=X1(t),0,[0],t))}function Ao(t,e,n,i,r,s,o,a,c){for(var l=0,u=0,d=o,h=0,p=0,g=0,f=1,y=1,v=1,C=0,T="",k=r,b=s,w=i,x=T;y;)switch(g=C,C=wt()){case 40:if(g!=108&&it(x,d-1)==58){uu(x+=be(Ro(C),"&","&\f"),"&\f")!=-1&&(v=-1);break}case 34:case 39:case 91:x+=Ro(C);break;case 9:case 10:case 13:case 32:x+=OO(g);break;case 92:x+=DO(Po()-1,7);continue;case 47:switch(sn()){case 42:case 47:to(FO(NO(wt(),Po()),e,n),c);break;default:x+="/"}break;case 123*f:a[l++]=Yt(x)*v;case 125*f:case 59:case 0:switch(C){case 0:case 125:y=0;case 59+u:v==-1&&(x=be(x,/\f/g,"")),p>0&&Yt(x)-d&&to(p>32?_m(x+";",i,n,d-1):_m(be(x," ","")+";",i,n,d-2),c);break;case 59:x+=";";default:if(to(w=Im(x,e,n,l,u,r,a,T,k=[],b=[],d),s),C===123)if(u===0)Ao(x,e,w,w,k,s,d,a,b);else switch(h===99&&it(x,3)===110?100:h){case 100:case 108:case 109:case 115:Ao(t,w,w,i&&to(Im(t,w,w,0,0,r,a,T,r,k=[],d),b),r,b,d,a,i?k:b);break;default:Ao(x,w,w,w,[""],b,0,a,b)}}l=u=p=0,f=v=1,T=x="",d=o;break;case 58:d=1+Yt(x),p=g;default:if(f<1){if(C==123)--f;else if(C==125&&f++==0&&MO()==125)continue}switch(x+=Ma(C),C*f){case 38:v=u>0?1:(x+="\f",-1);break;case 44:a[l++]=(Yt(x)-1)*v,v=1;break;case 64:sn()===45&&(x+=Ro(wt())),h=sn(),u=d=Yt(T=x+=LO(Po())),C++;break;case 45:g===45&&Yt(x)==2&&(f=0)}}return s}function Im(t,e,n,i,r,s,o,a,c,l,u){for(var d=r-1,h=r===0?s:[""],p=Zd(h),g=0,f=0,y=0;g<i;++g)for(var v=0,C=bs(t,d+1,d=EO(f=o[g])),T=t;v<p;++v)(T=Y1(f>0?h[v]+" "+C:be(C,/&\f/g,h[v])))&&(c[y++]=T);return Da(t,e,n,r===0?Gd:a,c,l,u)}function FO(t,e,n){return Da(t,e,n,K1,Ma(_O()),bs(t,2,-2),0)}function _m(t,e,n,i){return Da(t,e,n,Kd,bs(t,0,i),bs(t,i+1,-1),i)}function cr(t,e){for(var n="",i=Zd(t),r=0;r<i;r++)n+=e(t[r],r,t,e)||"";return n}function jO(t,e,n,i){switch(t.type){case xO:if(t.children.length)break;case wO:case Kd:return t.return=t.return||t.value;case K1:return"";case Z1:return t.return=t.value+"{"+cr(t.children,i)+"}";case Gd:t.value=t.props.join(",")}return Yt(n=cr(t.children,i))?t.return=t.value+"{"+n+"}":""}function UO(t){var e=Zd(t);return function(n,i,r,s){for(var o="",a=0;a<e;a++)o+=t[a](n,i,r,s)||"";return o}}function BO(t){return function(e){e.root||(e=e.return)&&t(e)}}function eS(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var $O=function(e,n,i){for(var r=0,s=0;r=s,s=sn(),r===38&&s===12&&(n[i]=1),!Ss(s);)wt();return Os(e,vt)},HO=function(e,n){var i=-1,r=44;do switch(Ss(r)){case 0:r===38&&sn()===12&&(n[i]=1),e[i]+=$O(vt-1,n,i);break;case 2:e[i]+=Ro(r);break;case 4:if(r===44){e[++i]=sn()===58?"&\f":"",n[i]=e[i].length;break}default:e[i]+=Ma(r)}while(r=wt());return e},zO=function(e,n){return Q1(HO(X1(e),n))},Mm=new WeakMap,WO=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var n=e.value,i=e.parent,r=e.column===i.column&&e.line===i.line;i.type!=="rule";)if(i=i.parent,!i)return;if(!(e.props.length===1&&n.charCodeAt(0)!==58&&!Mm.get(i))&&!r){Mm.set(e,!0);for(var s=[],o=zO(n,s),a=i.props,c=0,l=0;c<o.length;c++)for(var u=0;u<a.length;u++,l++)e.props[l]=s[c]?o[c].replace(/&\f/g,a[u]):a[u]+" "+o[c]}}},qO=function(e){if(e.type==="decl"){var n=e.value;n.charCodeAt(0)===108&&n.charCodeAt(2)===98&&(e.return="",e.value="")}};function tS(t,e){switch(RO(t,e)){case 5103:return ye+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return ye+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return ye+t+Qo+t+ot+t+t;case 6828:case 4268:return ye+t+ot+t+t;case 6165:return ye+t+ot+"flex-"+t+t;case 5187:return ye+t+be(t,/(\w+).+(:[^]+)/,ye+"box-$1$2"+ot+"flex-$1$2")+t;case 5443:return ye+t+ot+"flex-item-"+be(t,/flex-|-self/,"")+t;case 4675:return ye+t+ot+"flex-line-pack"+be(t,/align-content|flex-|-self/,"")+t;case 5548:return ye+t+ot+be(t,"shrink","negative")+t;case 5292:return ye+t+ot+be(t,"basis","preferred-size")+t;case 6060:return ye+"box-"+be(t,"-grow","")+ye+t+ot+be(t,"grow","positive")+t;case 4554:return ye+be(t,/([^-])(transform)/g,"$1"+ye+"$2")+t;case 6187:return be(be(be(t,/(zoom-|grab)/,ye+"$1"),/(image-set)/,ye+"$1"),t,"")+t;case 5495:case 3959:return be(t,/(image-set\([^]*)/,ye+"$1$`$1");case 4968:return be(be(t,/(.+:)(flex-)?(.*)/,ye+"box-pack:$3"+ot+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+ye+t+t;case 4095:case 3583:case 4068:case 2532:return be(t,/(.+)-inline(.+)/,ye+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(Yt(t)-1-e>6)switch(it(t,e+1)){case 109:if(it(t,e+4)!==45)break;case 102:return be(t,/(.+:)(.+)-([^]+)/,"$1"+ye+"$2-$3$1"+Qo+(it(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~uu(t,"stretch")?tS(be(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(it(t,e+1)!==115)break;case 6444:switch(it(t,Yt(t)-3-(~uu(t,"!important")&&10))){case 107:return be(t,":",":"+ye)+t;case 101:return be(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ye+(it(t,14)===45?"inline-":"")+"box$3$1"+ye+"$2$3$1"+ot+"$2box$3")+t}break;case 5936:switch(it(t,e+11)){case 114:return ye+t+ot+be(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return ye+t+ot+be(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return ye+t+ot+be(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return ye+t+ot+t+t}return t}var GO=function(e,n,i,r){if(e.length>-1&&!e.return)switch(e.type){case Kd:e.return=tS(e.value,e.length);break;case Z1:return cr([Br(e,{value:be(e.value,"@","@"+ye)})],r);case Gd:if(e.length)return IO(e.props,function(s){switch(AO(s,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return cr([Br(e,{props:[be(s,/:(read-\w+)/,":"+Qo+"$1")]})],r);case"::placeholder":return cr([Br(e,{props:[be(s,/:(plac\w+)/,":"+ye+"input-$1")]}),Br(e,{props:[be(s,/:(plac\w+)/,":"+Qo+"$1")]}),Br(e,{props:[be(s,/:(plac\w+)/,ot+"input-$1")]})],r)}return""})}},KO=[GO],ZO=function(e){var n=e.key;if(n==="css"){var i=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(i,function(f){var y=f.getAttribute("data-emotion");y.indexOf(" ")!==-1&&(document.head.appendChild(f),f.setAttribute("data-s",""))})}var r=e.stylisPlugins||KO,s={},o,a=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(f){for(var y=f.getAttribute("data-emotion").split(" "),v=1;v<y.length;v++)s[y[v]]=!0;a.push(f)});var c,l=[WO,qO];{var u,d=[jO,BO(function(f){u.insert(f)})],h=UO(l.concat(r,d)),p=function(y){return cr(VO(y),h)};c=function(y,v,C,T){u=C,p(y?y+"{"+v.styles+"}":v.styles),T&&(g.inserted[v.name]=!0)}}var g={key:n,sheet:new CO({key:n,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:c};return g.sheet.hydrate(a),g},YO=!0;function JO(t,e,n){var i="";return n.split(" ").forEach(function(r){t[r]!==void 0?e.push(t[r]+";"):r&&(i+=r+" ")}),i}var nS=function(e,n,i){var r=e.key+"-"+n.name;(i===!1||YO===!1)&&e.registered[r]===void 0&&(e.registered[r]=n.styles)},XO=function(e,n,i){nS(e,n,i);var r=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var s=n;do e.insert(n===s?"."+r:"",s,e.sheet,!0),s=s.next;while(s!==void 0)}};function QO(t){for(var e=0,n,i=0,r=t.length;r>=4;++i,r-=4)n=t.charCodeAt(i)&255|(t.charCodeAt(++i)&255)<<8|(t.charCodeAt(++i)&255)<<16|(t.charCodeAt(++i)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(r){case 3:e^=(t.charCodeAt(i+2)&255)<<16;case 2:e^=(t.charCodeAt(i+1)&255)<<8;case 1:e^=t.charCodeAt(i)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var e3={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},t3=/[A-Z]|^ms/g,n3=/_EMO_([^_]+?)_([^]*?)_EMO_/g,iS=function(e){return e.charCodeAt(1)===45},Om=function(e){return e!=null&&typeof e!="boolean"},Vc=eS(function(t){return iS(t)?t:t.replace(t3,"-$&").toLowerCase()}),Dm=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(n3,function(i,r,s){return Jt={name:r,styles:s,next:Jt},r})}return e3[e]!==1&&!iS(e)&&typeof n=="number"&&n!==0?n+"px":n};function Ts(t,e,n){if(n==null)return"";var i=n;if(i.__emotion_styles!==void 0)return i;switch(typeof n){case"boolean":return"";case"object":{var r=n;if(r.anim===1)return Jt={name:r.name,styles:r.styles,next:Jt},r.name;var s=n;if(s.styles!==void 0){var o=s.next;if(o!==void 0)for(;o!==void 0;)Jt={name:o.name,styles:o.styles,next:Jt},o=o.next;var a=s.styles+";";return a}return i3(t,e,n)}case"function":{if(t!==void 0){var c=Jt,l=n(t);return Jt=c,Ts(t,e,l)}break}}var u=n;if(e==null)return u;var d=e[u];return d!==void 0?d:u}function i3(t,e,n){var i="";if(Array.isArray(n))for(var r=0;r<n.length;r++)i+=Ts(t,e,n[r])+";";else for(var s in n){var o=n[s];if(typeof o!="object"){var a=o;e!=null&&e[a]!==void 0?i+=s+"{"+e[a]+"}":Om(a)&&(i+=Vc(s)+":"+Dm(s,a)+";")}else if(Array.isArray(o)&&typeof o[0]=="string"&&(e==null||e[o[0]]===void 0))for(var c=0;c<o.length;c++)Om(o[c])&&(i+=Vc(s)+":"+Dm(s,o[c])+";");else{var l=Ts(t,e,o);switch(s){case"animation":case"animationName":{i+=Vc(s)+":"+l+";";break}default:i+=s+"{"+l+"}"}}}return i}var Nm=/label:\s*([^\s;{]+)\s*(;|$)/g,Jt;function rS(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var i=!0,r="";Jt=void 0;var s=t[0];if(s==null||s.raw===void 0)i=!1,r+=Ts(n,e,s);else{var o=s;r+=o[0]}for(var a=1;a<t.length;a++)if(r+=Ts(n,e,t[a]),i){var c=s;r+=c[a]}Nm.lastIndex=0;for(var l="",u;(u=Nm.exec(r))!==null;)l+="-"+u[1];var d=QO(r)+l;return{name:d,styles:r,next:Jt}}var r3=function(e){return e()},s3=m.useInsertionEffect?m.useInsertionEffect:!1,o3=s3||r3,sS=m.createContext(typeof HTMLElement<"u"?ZO({key:"css"}):null);sS.Provider;var a3=function(e){return B.forwardRef(function(n,i){var r=B.useContext(sS);return e(n,r,i)})},c3=m.createContext({}),l3=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,u3=eS(function(t){return l3.test(t)||t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)<91}),d3=u3,f3=function(e){return e!=="theme"},Lm=function(e){return typeof e=="string"&&e.charCodeAt(0)>96?d3:f3},Vm=function(e,n,i){var r;if(n){var s=n.shouldForwardProp;r=e.__emotion_forwardProp&&s?function(o){return e.__emotion_forwardProp(o)&&s(o)}:s}return typeof r!="function"&&i&&(r=e.__emotion_forwardProp),r},h3=function(e){var n=e.cache,i=e.serialized,r=e.isStringTag;return nS(n,i,r),o3(function(){return XO(n,i,r)}),null},p3=function t(e,n){var i=e.__emotion_real===e,r=i&&e.__emotion_base||e,s,o;n!==void 0&&(s=n.label,o=n.target);var a=Vm(e,n,i),c=a||Lm(r),l=!c("as");return function(){var u=arguments,d=i&&e.__emotion_styles!==void 0?e.__emotion_styles.slice(0):[];if(s!==void 0&&d.push("label:"+s+";"),u[0]==null||u[0].raw===void 0)d.push.apply(d,u);else{var h=u[0];d.push(h[0]);for(var p=u.length,g=1;g<p;g++)d.push(u[g],h[g])}var f=a3(function(y,v,C){var T=l&&y.as||r,k="",b=[],w=y;if(y.theme==null){w={};for(var x in y)w[x]=y[x];w.theme=m.useContext(c3)}typeof y.className=="string"?k=JO(v.registered,b,y.className):y.className!=null&&(k=y.className+" ");var R=rS(d.concat(b),v.registered,w);k+=v.key+"-"+R.name,o!==void 0&&(k+=" "+o);var _=l&&a===void 0?Lm(T):c,S={};for(var I in y)l&&I==="as"||_(I)&&(S[I]=y[I]);return S.className=k,C&&(S.ref=C),m.createElement(m.Fragment,null,m.createElement(h3,{cache:v,serialized:R,isStringTag:typeof T=="string"}),m.createElement(T,S))});return f.displayName=s!==void 0?s:"Styled("+(typeof r=="string"?r:r.displayName||r.name||"Component")+")",f.defaultProps=e.defaultProps,f.__emotion_real=f,f.__emotion_base=r,f.__emotion_styles=d,f.__emotion_forwardProp=a,Object.defineProperty(f,"toString",{value:function(){return"."+o}}),f.withComponent=function(y,v){var C=t(y,lu({},n,v,{shouldForwardProp:Vm(f,v,!0)}));return C.apply(void 0,d)},f}},m3=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"],fu=p3.bind(null);m3.forEach(function(t){fu[t]=fu(t)});/**
|
|
158
|
+
`)),()=>{})}function Wd(t){return _s(t,"spacing",8,"spacing")}function Ms(t,e){return typeof e=="string"||e==null?e:t(e)}function U6(t,e){return n=>t.reduce((i,r)=>(i[r]=Ms(e,n),i),{})}function B6(t,e,n,i){if(!e.includes(n))return null;const r=F6(n),s=U6(r,i),o=t[n];return _n(t,o,s)}function G1(t,e){const n=Wd(t.theme);return Object.keys(t).map(i=>B6(t,e,i,n)).reduce(is,{})}function Ne(t){return G1(t,wa)}Ne.propTypes=process.env.NODE_ENV!=="production"?wa.reduce((t,e)=>(t[e]=ai,t),{}):{};Ne.filterProps=wa;function Le(t){return G1(t,xa)}Le.propTypes=process.env.NODE_ENV!=="production"?xa.reduce((t,e)=>(t[e]=ai,t),{}):{};Le.filterProps=xa;process.env.NODE_ENV!=="production"&&j6.reduce((t,e)=>(t[e]=ai,t),{});function Ea(...t){const e=t.reduce((i,r)=>(r.filterProps.forEach(s=>{i[s]=r}),i),{}),n=i=>Object.keys(i).reduce((r,s)=>e[s]?is(r,e[s](i)):r,{});return n.propTypes=process.env.NODE_ENV!=="production"?t.reduce((i,r)=>Object.assign(i,r.propTypes),{}):{},n.filterProps=t.reduce((i,r)=>i.concat(r.filterProps),[]),n}function Rt(t){return typeof t!="number"?t:`${t}px solid`}function Ot(t,e){return We({prop:t,themeKey:"borders",transform:e})}const $6=Ot("border",Rt),H6=Ot("borderTop",Rt),z6=Ot("borderRight",Rt),W6=Ot("borderBottom",Rt),q6=Ot("borderLeft",Rt),G6=Ot("borderColor"),K6=Ot("borderTopColor"),Z6=Ot("borderRightColor"),Y6=Ot("borderBottomColor"),J6=Ot("borderLeftColor"),X6=Ot("outline",Rt),Q6=Ot("outlineColor"),Pa=t=>{if(t.borderRadius!==void 0&&t.borderRadius!==null){const e=_s(t.theme,"shape.borderRadius",4,"borderRadius"),n=i=>({borderRadius:Ms(e,i)});return _n(t,t.borderRadius,n)}return null};Pa.propTypes=process.env.NODE_ENV!=="production"?{borderRadius:ai}:{};Pa.filterProps=["borderRadius"];Ea($6,H6,z6,W6,q6,G6,K6,Z6,Y6,J6,Pa,X6,Q6);const Ra=t=>{if(t.gap!==void 0&&t.gap!==null){const e=_s(t.theme,"spacing",8,"gap"),n=i=>({gap:Ms(e,i)});return _n(t,t.gap,n)}return null};Ra.propTypes=process.env.NODE_ENV!=="production"?{gap:ai}:{};Ra.filterProps=["gap"];const Aa=t=>{if(t.columnGap!==void 0&&t.columnGap!==null){const e=_s(t.theme,"spacing",8,"columnGap"),n=i=>({columnGap:Ms(e,i)});return _n(t,t.columnGap,n)}return null};Aa.propTypes=process.env.NODE_ENV!=="production"?{columnGap:ai}:{};Aa.filterProps=["columnGap"];const Ia=t=>{if(t.rowGap!==void 0&&t.rowGap!==null){const e=_s(t.theme,"spacing",8,"rowGap"),n=i=>({rowGap:Ms(e,i)});return _n(t,t.rowGap,n)}return null};Ia.propTypes=process.env.NODE_ENV!=="production"?{rowGap:ai}:{};Ia.filterProps=["rowGap"];const eO=We({prop:"gridColumn"}),tO=We({prop:"gridRow"}),nO=We({prop:"gridAutoFlow"}),iO=We({prop:"gridAutoColumns"}),rO=We({prop:"gridAutoRows"}),sO=We({prop:"gridTemplateColumns"}),oO=We({prop:"gridTemplateRows"}),aO=We({prop:"gridTemplateAreas"}),cO=We({prop:"gridArea"});Ea(Ra,Aa,Ia,eO,tO,nO,iO,rO,sO,oO,aO,cO);function ar(t,e){return e==="grey"?e:t}const lO=We({prop:"color",themeKey:"palette",transform:ar}),uO=We({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:ar}),dO=We({prop:"backgroundColor",themeKey:"palette",transform:ar});Ea(lO,uO,dO);function St(t){return t<=1&&t!==0?`${t*100}%`:t}const fO=We({prop:"width",transform:St}),qd=t=>{if(t.maxWidth!==void 0&&t.maxWidth!==null){const e=n=>{var r,s,o,a,c;const i=((o=(s=(r=t.theme)==null?void 0:r.breakpoints)==null?void 0:s.values)==null?void 0:o[n])||ka[n];return i?((c=(a=t.theme)==null?void 0:a.breakpoints)==null?void 0:c.unit)!=="px"?{maxWidth:`${i}${t.theme.breakpoints.unit}`}:{maxWidth:i}:{maxWidth:St(n)}};return _n(t,t.maxWidth,e)}return null};qd.filterProps=["maxWidth"];const hO=We({prop:"minWidth",transform:St}),pO=We({prop:"height",transform:St}),mO=We({prop:"maxHeight",transform:St}),gO=We({prop:"minHeight",transform:St});We({prop:"size",cssProperty:"width",transform:St});We({prop:"size",cssProperty:"height",transform:St});const vO=We({prop:"boxSizing"});Ea(fO,qd,hO,pO,mO,gO,vO);const _a={border:{themeKey:"borders",transform:Rt},borderTop:{themeKey:"borders",transform:Rt},borderRight:{themeKey:"borders",transform:Rt},borderBottom:{themeKey:"borders",transform:Rt},borderLeft:{themeKey:"borders",transform:Rt},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:Rt},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:Pa},color:{themeKey:"palette",transform:ar},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:ar},backgroundColor:{themeKey:"palette",transform:ar},p:{style:Le},pt:{style:Le},pr:{style:Le},pb:{style:Le},pl:{style:Le},px:{style:Le},py:{style:Le},padding:{style:Le},paddingTop:{style:Le},paddingRight:{style:Le},paddingBottom:{style:Le},paddingLeft:{style:Le},paddingX:{style:Le},paddingY:{style:Le},paddingInline:{style:Le},paddingInlineStart:{style:Le},paddingInlineEnd:{style:Le},paddingBlock:{style:Le},paddingBlockStart:{style:Le},paddingBlockEnd:{style:Le},m:{style:Ne},mt:{style:Ne},mr:{style:Ne},mb:{style:Ne},ml:{style:Ne},mx:{style:Ne},my:{style:Ne},margin:{style:Ne},marginTop:{style:Ne},marginRight:{style:Ne},marginBottom:{style:Ne},marginLeft:{style:Ne},marginX:{style:Ne},marginY:{style:Ne},marginInline:{style:Ne},marginInlineStart:{style:Ne},marginInlineEnd:{style:Ne},marginBlock:{style:Ne},marginBlockStart:{style:Ne},marginBlockEnd:{style:Ne},displayPrint:{cssProperty:!1,transform:t=>({"@media print":{display:t}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:Ra},rowGap:{style:Ia},columnGap:{style:Aa},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:St},maxWidth:{style:qd},minWidth:{transform:St},height:{transform:St},maxHeight:{transform:St},minHeight:{transform:St},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 yO(...t){const e=t.reduce((i,r)=>i.concat(Object.keys(r)),[]),n=new Set(e);return t.every(i=>n.size===Object.keys(i).length)}function bO(t,e){return typeof t=="function"?t(e):t}function SO(){function t(n,i,r,s){const o={[n]:i,theme:r},a=s[n];if(!a)return{[n]:i};const{cssProperty:c=n,themeKey:l,transform:u,style:d}=a;if(i==null)return null;if(l==="typography"&&i==="inherit")return{[n]:i};const h=Ca(r,l)||{};return d?d(o):_n(o,i,g=>{let f=Xo(h,u,g);return g===f&&typeof g=="string"&&(f=Xo(h,u,`${n}${g==="default"?"":Pi(g)}`,g)),c===!1?f:{[c]:f}})}function e(n){const{sx:i,theme:r={}}=n||{};if(!i)return null;const s=r.unstable_sxConfig??_a;function o(a){let c=a;if(typeof a=="function")c=a(r);else if(typeof a!="object")return a;if(!c)return null;const l=O6(r.breakpoints),u=Object.keys(l);let d=l;return Object.keys(c).forEach(h=>{const m=bO(c[h],r);if(m!=null)if(typeof m=="object")if(s[h])d=is(d,t(h,m,r,s));else{const g=_n({theme:r},m,f=>({[h]:f}));yO(g,m)?d[h]=e({sx:m,theme:r}):d=is(d,g)}else d=is(d,t(h,m,r,s))}),R6(r,D6(u,d))}return Array.isArray(i)?i.map(o):o(i)}return e}const mr=SO();mr.filterProps=["sx"];function lu(){return lu=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)({}).hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},lu.apply(null,arguments)}function TO(t){if(t.sheet)return t.sheet;for(var e=0;e<document.styleSheets.length;e++)if(document.styleSheets[e].ownerNode===t)return document.styleSheets[e]}function kO(t){var e=document.createElement("style");return e.setAttribute("data-emotion",t.key),t.nonce!==void 0&&e.setAttribute("nonce",t.nonce),e.appendChild(document.createTextNode("")),e.setAttribute("data-s",""),e}var CO=function(){function t(n){var i=this;this._insertTag=function(r){var s;i.tags.length===0?i.insertionPoint?s=i.insertionPoint.nextSibling:i.prepend?s=i.container.firstChild:s=i.before:s=i.tags[i.tags.length-1].nextSibling,i.container.insertBefore(r,s),i.tags.push(r)},this.isSpeedy=n.speedy===void 0?!0:n.speedy,this.tags=[],this.ctr=0,this.nonce=n.nonce,this.key=n.key,this.container=n.container,this.prepend=n.prepend,this.insertionPoint=n.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(i){i.forEach(this._insertTag)},e.insert=function(i){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(kO(this));var r=this.tags[this.tags.length-1];if(this.isSpeedy){var s=TO(r);try{s.insertRule(i,s.cssRules.length)}catch{}}else r.appendChild(document.createTextNode(i));this.ctr++},e.flush=function(){this.tags.forEach(function(i){var r;return(r=i.parentNode)==null?void 0:r.removeChild(i)}),this.tags=[],this.ctr=0},t}(),ot="-ms-",Qo="-moz-",ye="-webkit-",K1="comm",Gd="rule",Kd="decl",wO="@import",Z1="@keyframes",xO="@layer",EO=Math.abs,Ma=String.fromCharCode,PO=Object.assign;function RO(t,e){return it(t,0)^45?(((e<<2^it(t,0))<<2^it(t,1))<<2^it(t,2))<<2^it(t,3):0}function Y1(t){return t.trim()}function AO(t,e){return(t=e.exec(t))?t[0]:t}function be(t,e,n){return t.replace(e,n)}function uu(t,e){return t.indexOf(e)}function it(t,e){return t.charCodeAt(e)|0}function bs(t,e,n){return t.slice(e,n)}function Yt(t){return t.length}function Zd(t){return t.length}function to(t,e){return e.push(t),t}function IO(t,e){return t.map(e).join("")}var Oa=1,gr=1,J1=0,vt=0,Ke=0,Pr="";function Da(t,e,n,i,r,s,o){return{value:t,root:e,parent:n,type:i,props:r,children:s,line:Oa,column:gr,length:o,return:""}}function Br(t,e){return PO(Da("",null,null,"",null,null,0),t,{length:-t.length},e)}function _O(){return Ke}function MO(){return Ke=vt>0?it(Pr,--vt):0,gr--,Ke===10&&(gr=1,Oa--),Ke}function wt(){return Ke=vt<J1?it(Pr,vt++):0,gr++,Ke===10&&(gr=1,Oa++),Ke}function sn(){return it(Pr,vt)}function Po(){return vt}function Os(t,e){return bs(Pr,t,e)}function Ss(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function X1(t){return Oa=gr=1,J1=Yt(Pr=t),vt=0,[]}function Q1(t){return Pr="",t}function Ro(t){return Y1(Os(vt-1,du(t===91?t+2:t===40?t+1:t)))}function OO(t){for(;(Ke=sn())&&Ke<33;)wt();return Ss(t)>2||Ss(Ke)>3?"":" "}function DO(t,e){for(;--e&&wt()&&!(Ke<48||Ke>102||Ke>57&&Ke<65||Ke>70&&Ke<97););return Os(t,Po()+(e<6&&sn()==32&&wt()==32))}function du(t){for(;wt();)switch(Ke){case t:return vt;case 34:case 39:t!==34&&t!==39&&du(Ke);break;case 40:t===41&&du(t);break;case 92:wt();break}return vt}function NO(t,e){for(;wt()&&t+Ke!==57;)if(t+Ke===84&&sn()===47)break;return"/*"+Os(e,vt-1)+"*"+Ma(t===47?t:wt())}function LO(t){for(;!Ss(sn());)wt();return Os(t,vt)}function VO(t){return Q1(Ao("",null,null,null,[""],t=X1(t),0,[0],t))}function Ao(t,e,n,i,r,s,o,a,c){for(var l=0,u=0,d=o,h=0,m=0,g=0,f=1,y=1,v=1,C=0,T="",k=r,b=s,w=i,x=T;y;)switch(g=C,C=wt()){case 40:if(g!=108&&it(x,d-1)==58){uu(x+=be(Ro(C),"&","&\f"),"&\f")!=-1&&(v=-1);break}case 34:case 39:case 91:x+=Ro(C);break;case 9:case 10:case 13:case 32:x+=OO(g);break;case 92:x+=DO(Po()-1,7);continue;case 47:switch(sn()){case 42:case 47:to(FO(NO(wt(),Po()),e,n),c);break;default:x+="/"}break;case 123*f:a[l++]=Yt(x)*v;case 125*f:case 59:case 0:switch(C){case 0:case 125:y=0;case 59+u:v==-1&&(x=be(x,/\f/g,"")),m>0&&Yt(x)-d&&to(m>32?_m(x+";",i,n,d-1):_m(be(x," ","")+";",i,n,d-2),c);break;case 59:x+=";";default:if(to(w=Im(x,e,n,l,u,r,a,T,k=[],b=[],d),s),C===123)if(u===0)Ao(x,e,w,w,k,s,d,a,b);else switch(h===99&&it(x,3)===110?100:h){case 100:case 108:case 109:case 115:Ao(t,w,w,i&&to(Im(t,w,w,0,0,r,a,T,r,k=[],d),b),r,b,d,a,i?k:b);break;default:Ao(x,w,w,w,[""],b,0,a,b)}}l=u=m=0,f=v=1,T=x="",d=o;break;case 58:d=1+Yt(x),m=g;default:if(f<1){if(C==123)--f;else if(C==125&&f++==0&&MO()==125)continue}switch(x+=Ma(C),C*f){case 38:v=u>0?1:(x+="\f",-1);break;case 44:a[l++]=(Yt(x)-1)*v,v=1;break;case 64:sn()===45&&(x+=Ro(wt())),h=sn(),u=d=Yt(T=x+=LO(Po())),C++;break;case 45:g===45&&Yt(x)==2&&(f=0)}}return s}function Im(t,e,n,i,r,s,o,a,c,l,u){for(var d=r-1,h=r===0?s:[""],m=Zd(h),g=0,f=0,y=0;g<i;++g)for(var v=0,C=bs(t,d+1,d=EO(f=o[g])),T=t;v<m;++v)(T=Y1(f>0?h[v]+" "+C:be(C,/&\f/g,h[v])))&&(c[y++]=T);return Da(t,e,n,r===0?Gd:a,c,l,u)}function FO(t,e,n){return Da(t,e,n,K1,Ma(_O()),bs(t,2,-2),0)}function _m(t,e,n,i){return Da(t,e,n,Kd,bs(t,0,i),bs(t,i+1,-1),i)}function cr(t,e){for(var n="",i=Zd(t),r=0;r<i;r++)n+=e(t[r],r,t,e)||"";return n}function jO(t,e,n,i){switch(t.type){case xO:if(t.children.length)break;case wO:case Kd:return t.return=t.return||t.value;case K1:return"";case Z1:return t.return=t.value+"{"+cr(t.children,i)+"}";case Gd:t.value=t.props.join(",")}return Yt(n=cr(t.children,i))?t.return=t.value+"{"+n+"}":""}function UO(t){var e=Zd(t);return function(n,i,r,s){for(var o="",a=0;a<e;a++)o+=t[a](n,i,r,s)||"";return o}}function BO(t){return function(e){e.root||(e=e.return)&&t(e)}}function eS(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var $O=function(e,n,i){for(var r=0,s=0;r=s,s=sn(),r===38&&s===12&&(n[i]=1),!Ss(s);)wt();return Os(e,vt)},HO=function(e,n){var i=-1,r=44;do switch(Ss(r)){case 0:r===38&&sn()===12&&(n[i]=1),e[i]+=$O(vt-1,n,i);break;case 2:e[i]+=Ro(r);break;case 4:if(r===44){e[++i]=sn()===58?"&\f":"",n[i]=e[i].length;break}default:e[i]+=Ma(r)}while(r=wt());return e},zO=function(e,n){return Q1(HO(X1(e),n))},Mm=new WeakMap,WO=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var n=e.value,i=e.parent,r=e.column===i.column&&e.line===i.line;i.type!=="rule";)if(i=i.parent,!i)return;if(!(e.props.length===1&&n.charCodeAt(0)!==58&&!Mm.get(i))&&!r){Mm.set(e,!0);for(var s=[],o=zO(n,s),a=i.props,c=0,l=0;c<o.length;c++)for(var u=0;u<a.length;u++,l++)e.props[l]=s[c]?o[c].replace(/&\f/g,a[u]):a[u]+" "+o[c]}}},qO=function(e){if(e.type==="decl"){var n=e.value;n.charCodeAt(0)===108&&n.charCodeAt(2)===98&&(e.return="",e.value="")}};function tS(t,e){switch(RO(t,e)){case 5103:return ye+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return ye+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return ye+t+Qo+t+ot+t+t;case 6828:case 4268:return ye+t+ot+t+t;case 6165:return ye+t+ot+"flex-"+t+t;case 5187:return ye+t+be(t,/(\w+).+(:[^]+)/,ye+"box-$1$2"+ot+"flex-$1$2")+t;case 5443:return ye+t+ot+"flex-item-"+be(t,/flex-|-self/,"")+t;case 4675:return ye+t+ot+"flex-line-pack"+be(t,/align-content|flex-|-self/,"")+t;case 5548:return ye+t+ot+be(t,"shrink","negative")+t;case 5292:return ye+t+ot+be(t,"basis","preferred-size")+t;case 6060:return ye+"box-"+be(t,"-grow","")+ye+t+ot+be(t,"grow","positive")+t;case 4554:return ye+be(t,/([^-])(transform)/g,"$1"+ye+"$2")+t;case 6187:return be(be(be(t,/(zoom-|grab)/,ye+"$1"),/(image-set)/,ye+"$1"),t,"")+t;case 5495:case 3959:return be(t,/(image-set\([^]*)/,ye+"$1$`$1");case 4968:return be(be(t,/(.+:)(flex-)?(.*)/,ye+"box-pack:$3"+ot+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+ye+t+t;case 4095:case 3583:case 4068:case 2532:return be(t,/(.+)-inline(.+)/,ye+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(Yt(t)-1-e>6)switch(it(t,e+1)){case 109:if(it(t,e+4)!==45)break;case 102:return be(t,/(.+:)(.+)-([^]+)/,"$1"+ye+"$2-$3$1"+Qo+(it(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~uu(t,"stretch")?tS(be(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(it(t,e+1)!==115)break;case 6444:switch(it(t,Yt(t)-3-(~uu(t,"!important")&&10))){case 107:return be(t,":",":"+ye)+t;case 101:return be(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ye+(it(t,14)===45?"inline-":"")+"box$3$1"+ye+"$2$3$1"+ot+"$2box$3")+t}break;case 5936:switch(it(t,e+11)){case 114:return ye+t+ot+be(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return ye+t+ot+be(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return ye+t+ot+be(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return ye+t+ot+t+t}return t}var GO=function(e,n,i,r){if(e.length>-1&&!e.return)switch(e.type){case Kd:e.return=tS(e.value,e.length);break;case Z1:return cr([Br(e,{value:be(e.value,"@","@"+ye)})],r);case Gd:if(e.length)return IO(e.props,function(s){switch(AO(s,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return cr([Br(e,{props:[be(s,/:(read-\w+)/,":"+Qo+"$1")]})],r);case"::placeholder":return cr([Br(e,{props:[be(s,/:(plac\w+)/,":"+ye+"input-$1")]}),Br(e,{props:[be(s,/:(plac\w+)/,":"+Qo+"$1")]}),Br(e,{props:[be(s,/:(plac\w+)/,ot+"input-$1")]})],r)}return""})}},KO=[GO],ZO=function(e){var n=e.key;if(n==="css"){var i=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(i,function(f){var y=f.getAttribute("data-emotion");y.indexOf(" ")!==-1&&(document.head.appendChild(f),f.setAttribute("data-s",""))})}var r=e.stylisPlugins||KO,s={},o,a=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(f){for(var y=f.getAttribute("data-emotion").split(" "),v=1;v<y.length;v++)s[y[v]]=!0;a.push(f)});var c,l=[WO,qO];{var u,d=[jO,BO(function(f){u.insert(f)})],h=UO(l.concat(r,d)),m=function(y){return cr(VO(y),h)};c=function(y,v,C,T){u=C,m(y?y+"{"+v.styles+"}":v.styles),T&&(g.inserted[v.name]=!0)}}var g={key:n,sheet:new CO({key:n,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:c};return g.sheet.hydrate(a),g},YO=!0;function JO(t,e,n){var i="";return n.split(" ").forEach(function(r){t[r]!==void 0?e.push(t[r]+";"):r&&(i+=r+" ")}),i}var nS=function(e,n,i){var r=e.key+"-"+n.name;(i===!1||YO===!1)&&e.registered[r]===void 0&&(e.registered[r]=n.styles)},XO=function(e,n,i){nS(e,n,i);var r=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var s=n;do e.insert(n===s?"."+r:"",s,e.sheet,!0),s=s.next;while(s!==void 0)}};function QO(t){for(var e=0,n,i=0,r=t.length;r>=4;++i,r-=4)n=t.charCodeAt(i)&255|(t.charCodeAt(++i)&255)<<8|(t.charCodeAt(++i)&255)<<16|(t.charCodeAt(++i)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(r){case 3:e^=(t.charCodeAt(i+2)&255)<<16;case 2:e^=(t.charCodeAt(i+1)&255)<<8;case 1:e^=t.charCodeAt(i)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var e3={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},t3=/[A-Z]|^ms/g,n3=/_EMO_([^_]+?)_([^]*?)_EMO_/g,iS=function(e){return e.charCodeAt(1)===45},Om=function(e){return e!=null&&typeof e!="boolean"},Vc=eS(function(t){return iS(t)?t:t.replace(t3,"-$&").toLowerCase()}),Dm=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(n3,function(i,r,s){return Jt={name:r,styles:s,next:Jt},r})}return e3[e]!==1&&!iS(e)&&typeof n=="number"&&n!==0?n+"px":n};function Ts(t,e,n){if(n==null)return"";var i=n;if(i.__emotion_styles!==void 0)return i;switch(typeof n){case"boolean":return"";case"object":{var r=n;if(r.anim===1)return Jt={name:r.name,styles:r.styles,next:Jt},r.name;var s=n;if(s.styles!==void 0){var o=s.next;if(o!==void 0)for(;o!==void 0;)Jt={name:o.name,styles:o.styles,next:Jt},o=o.next;var a=s.styles+";";return a}return i3(t,e,n)}case"function":{if(t!==void 0){var c=Jt,l=n(t);return Jt=c,Ts(t,e,l)}break}}var u=n;if(e==null)return u;var d=e[u];return d!==void 0?d:u}function i3(t,e,n){var i="";if(Array.isArray(n))for(var r=0;r<n.length;r++)i+=Ts(t,e,n[r])+";";else for(var s in n){var o=n[s];if(typeof o!="object"){var a=o;e!=null&&e[a]!==void 0?i+=s+"{"+e[a]+"}":Om(a)&&(i+=Vc(s)+":"+Dm(s,a)+";")}else if(Array.isArray(o)&&typeof o[0]=="string"&&(e==null||e[o[0]]===void 0))for(var c=0;c<o.length;c++)Om(o[c])&&(i+=Vc(s)+":"+Dm(s,o[c])+";");else{var l=Ts(t,e,o);switch(s){case"animation":case"animationName":{i+=Vc(s)+":"+l+";";break}default:i+=s+"{"+l+"}"}}}return i}var Nm=/label:\s*([^\s;{]+)\s*(;|$)/g,Jt;function rS(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var i=!0,r="";Jt=void 0;var s=t[0];if(s==null||s.raw===void 0)i=!1,r+=Ts(n,e,s);else{var o=s;r+=o[0]}for(var a=1;a<t.length;a++)if(r+=Ts(n,e,t[a]),i){var c=s;r+=c[a]}Nm.lastIndex=0;for(var l="",u;(u=Nm.exec(r))!==null;)l+="-"+u[1];var d=QO(r)+l;return{name:d,styles:r,next:Jt}}var r3=function(e){return e()},s3=p.useInsertionEffect?p.useInsertionEffect:!1,o3=s3||r3,sS=p.createContext(typeof HTMLElement<"u"?ZO({key:"css"}):null);sS.Provider;var a3=function(e){return B.forwardRef(function(n,i){var r=B.useContext(sS);return e(n,r,i)})},c3=p.createContext({}),l3=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,u3=eS(function(t){return l3.test(t)||t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)<91}),d3=u3,f3=function(e){return e!=="theme"},Lm=function(e){return typeof e=="string"&&e.charCodeAt(0)>96?d3:f3},Vm=function(e,n,i){var r;if(n){var s=n.shouldForwardProp;r=e.__emotion_forwardProp&&s?function(o){return e.__emotion_forwardProp(o)&&s(o)}:s}return typeof r!="function"&&i&&(r=e.__emotion_forwardProp),r},h3=function(e){var n=e.cache,i=e.serialized,r=e.isStringTag;return nS(n,i,r),o3(function(){return XO(n,i,r)}),null},p3=function t(e,n){var i=e.__emotion_real===e,r=i&&e.__emotion_base||e,s,o;n!==void 0&&(s=n.label,o=n.target);var a=Vm(e,n,i),c=a||Lm(r),l=!c("as");return function(){var u=arguments,d=i&&e.__emotion_styles!==void 0?e.__emotion_styles.slice(0):[];if(s!==void 0&&d.push("label:"+s+";"),u[0]==null||u[0].raw===void 0)d.push.apply(d,u);else{var h=u[0];d.push(h[0]);for(var m=u.length,g=1;g<m;g++)d.push(u[g],h[g])}var f=a3(function(y,v,C){var T=l&&y.as||r,k="",b=[],w=y;if(y.theme==null){w={};for(var x in y)w[x]=y[x];w.theme=p.useContext(c3)}typeof y.className=="string"?k=JO(v.registered,b,y.className):y.className!=null&&(k=y.className+" ");var R=rS(d.concat(b),v.registered,w);k+=v.key+"-"+R.name,o!==void 0&&(k+=" "+o);var _=l&&a===void 0?Lm(T):c,S={};for(var A in y)l&&A==="as"||_(A)&&(S[A]=y[A]);return S.className=k,C&&(S.ref=C),p.createElement(p.Fragment,null,p.createElement(h3,{cache:v,serialized:R,isStringTag:typeof T=="string"}),p.createElement(T,S))});return f.displayName=s!==void 0?s:"Styled("+(typeof r=="string"?r:r.displayName||r.name||"Component")+")",f.defaultProps=e.defaultProps,f.__emotion_real=f,f.__emotion_base=r,f.__emotion_styles=d,f.__emotion_forwardProp=a,Object.defineProperty(f,"toString",{value:function(){return"."+o}}),f.withComponent=function(y,v){var C=t(y,lu({},n,v,{shouldForwardProp:Vm(f,v,!0)}));return C.apply(void 0,d)},f}},m3=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"],fu=p3.bind(null);m3.forEach(function(t){fu[t]=fu(t)});/**
|
|
159
159
|
* @mui/styled-engine v7.1.1
|
|
160
160
|
*
|
|
161
161
|
* @license MIT
|
|
162
162
|
* This source code is licensed under the MIT license found in the
|
|
163
163
|
* LICENSE file in the root directory of this source tree.
|
|
164
164
|
*/function g3(t,e){const n=fu(t,e);return process.env.NODE_ENV!=="production"?(...i)=>{const r=typeof t=="string"?`"${t}"`:"component";return i.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(`
|
|
165
|
-
`)):i.some(s=>s===void 0)&&console.error(`MUI: the styled(${r})(...args) API requires all its args to be defined.`),n(...i)}:n}function v3(t,e){Array.isArray(t.__emotion_styles)&&(t.__emotion_styles=e(t.__emotion_styles))}const Fm=[];function jm(t){return Fm[0]=t,rS(Fm)}const y3=t=>{const e=Object.keys(t).map(n=>({key:n,val:t[n]}))||[];return e.sort((n,i)=>n.val-i.val),e.reduce((n,i)=>({...n,[i.key]:i.val}),{})};function b3(t){const{values:e={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:i=5,...r}=t,s=y3(e),o=Object.keys(s);function a(h){return`@media (min-width:${typeof e[h]=="number"?e[h]:h}${n})`}function c(h){return`@media (max-width:${(typeof e[h]=="number"?e[h]:h)-i/100}${n})`}function l(h,
|
|
165
|
+
`)):i.some(s=>s===void 0)&&console.error(`MUI: the styled(${r})(...args) API requires all its args to be defined.`),n(...i)}:n}function v3(t,e){Array.isArray(t.__emotion_styles)&&(t.__emotion_styles=e(t.__emotion_styles))}const Fm=[];function jm(t){return Fm[0]=t,rS(Fm)}const y3=t=>{const e=Object.keys(t).map(n=>({key:n,val:t[n]}))||[];return e.sort((n,i)=>n.val-i.val),e.reduce((n,i)=>({...n,[i.key]:i.val}),{})};function b3(t){const{values:e={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:i=5,...r}=t,s=y3(e),o=Object.keys(s);function a(h){return`@media (min-width:${typeof e[h]=="number"?e[h]:h}${n})`}function c(h){return`@media (max-width:${(typeof e[h]=="number"?e[h]:h)-i/100}${n})`}function l(h,m){const g=o.indexOf(m);return`@media (min-width:${typeof e[h]=="number"?e[h]:h}${n}) and (max-width:${(g!==-1&&typeof e[o[g]]=="number"?e[o[g]]:m)-i/100}${n})`}function u(h){return o.indexOf(h)+1<o.length?l(h,o[o.indexOf(h)+1]):a(h)}function d(h){const m=o.indexOf(h);return m===0?a(o[1]):m===o.length-1?c(o[m]):l(h,o[o.indexOf(h)+1]).replace("@media","@media not all and")}return{keys:o,values:s,up:a,down:c,between:l,only:u,not:d,unit:n,...r}}const S3={borderRadius:4};function oS(t=8,e=Wd({spacing:t})){if(t.mui)return t;const n=(...i)=>(process.env.NODE_ENV!=="production"&&(i.length<=4||console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${i.length}`)),(i.length===0?[1]:i).map(s=>{const o=e(s);return typeof o=="number"?`${o}px`:o}).join(" "));return n.mui=!0,n}function T3(t,e){var i;const n=this;if(n.vars){if(!((i=n.colorSchemes)!=null&&i[t])||typeof n.getColorSchemeSelector!="function")return{};let r=n.getColorSchemeSelector(t);return r==="&"?e:((r.includes("data-")||r.includes("."))&&(r=`*:where(${r.replace(/\s*&$/,"")}) &`),{[r]:e})}return n.palette.mode===t?e:{}}function aS(t={},...e){const{breakpoints:n={},palette:i={},spacing:r,shape:s={},...o}=t,a=b3(n),c=oS(r);let l=Ct({breakpoints:a,direction:"ltr",components:{},palette:{mode:"light",...i},spacing:c,shape:{...S3,...s}},o);return l=_6(l),l.applyStyles=T3,l=e.reduce((u,d)=>Ct(u,d),l),l.unstable_sxConfig={..._a,...o==null?void 0:o.unstable_sxConfig},l.unstable_sx=function(d){return mr({sx:d,theme:this})},l}const k3={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 Yd(t,e,n="Mui"){const i=k3[e];return i?`${n}-${i}`:`${m6.generate(t)}-${e}`}function C3(t,e,n="Mui"){const i={};return e.forEach(r=>{i[r]=Yd(t,r,n)}),i}function cS(t,e=""){return t.displayName||t.name||e}function Um(t,e,n){const i=cS(e);return t.displayName||(i!==""?`${n}(${i})`:n)}function w3(t){if(t!=null){if(typeof t=="string")return t;if(typeof t=="function")return cS(t,"Component");if(typeof t=="object")switch(t.$$typeof){case Jo.ForwardRef:return Um(t,t.render,"ForwardRef");case Jo.Memo:return Um(t,t.type,"memo");default:return}}}function lS(t){const{variants:e,...n}=t,i={variants:e,style:jm(n),isProcessed:!0};return i.style===n||e&&e.forEach(r=>{typeof r.style!="function"&&(r.style=jm(r.style))}),i}const x3=aS();function Fc(t){return t!=="ownerState"&&t!=="theme"&&t!=="sx"&&t!=="as"}function E3(t){return t?(e,n)=>n[t]:null}function P3(t,e,n){t.theme=_3(t.theme)?n:t.theme[e]||t.theme}function Io(t,e){const n=typeof e=="function"?e(t):e;if(Array.isArray(n))return n.flatMap(i=>Io(t,i));if(Array.isArray(n==null?void 0:n.variants)){let i;if(n.isProcessed)i=n.style;else{const{variants:r,...s}=n;i=s}return uS(t,n.variants,[i])}return n!=null&&n.isProcessed?n.style:n}function uS(t,e,n=[]){var r;let i;e:for(let s=0;s<e.length;s+=1){const o=e[s];if(typeof o.props=="function"){if(i??(i={...t,...t.ownerState,ownerState:t.ownerState}),!o.props(i))continue}else for(const a in o.props)if(t[a]!==o.props[a]&&((r=t.ownerState)==null?void 0:r[a])!==o.props[a])continue e;typeof o.style=="function"?(i??(i={...t,...t.ownerState,ownerState:t.ownerState}),n.push(o.style(i))):n.push(o.style)}return n}function R3(t={}){const{themeId:e,defaultTheme:n=x3,rootShouldForwardProp:i=Fc,slotShouldForwardProp:r=Fc}=t;function s(a){P3(a,e,n)}return(a,c={})=>{v3(a,b=>b.filter(w=>w!==mr));const{name:l,slot:u,skipVariantsResolver:d,skipSx:h,overridesResolver:m=E3(dS(u)),...g}=c,f=d!==void 0?d:u&&u!=="Root"&&u!=="root"||!1,y=h||!1;let v=Fc;u==="Root"||u==="root"?v=i:u?v=r:M3(a)&&(v=void 0);const C=g3(a,{shouldForwardProp:v,label:I3(l,u),...g}),T=b=>{if(b.__emotion_real===b)return b;if(typeof b=="function")return function(x){return Io(x,b)};if(Tn(b)){const w=lS(b);return w.variants?function(R){return Io(R,w)}:w.style}return b},k=(...b)=>{const w=[],x=b.map(T),R=[];if(w.push(s),l&&m&&R.push(function(O){var Q,Z;const K=(Z=(Q=O.theme.components)==null?void 0:Q[l])==null?void 0:Z.styleOverrides;if(!K)return null;const se={};for(const F in K)se[F]=Io(O,K[F]);return m(O,se)}),l&&!f&&R.push(function(O){var se,Q;const z=O.theme,K=(Q=(se=z==null?void 0:z.components)==null?void 0:se[l])==null?void 0:Q.variants;return K?uS(O,K):null}),y||R.push(mr),Array.isArray(x[0])){const A=x.shift(),O=new Array(w.length).fill(""),z=new Array(R.length).fill("");let K;K=[...O,...A,...z],K.raw=[...O,...A.raw,...z],w.unshift(K)}const _=[...w,...x,...R],S=C(..._);return a.muiName&&(S.muiName=a.muiName),process.env.NODE_ENV!=="production"&&(S.displayName=A3(l,u,a)),S};return C.withConfig&&(k.withConfig=C.withConfig),k}}function A3(t,e,n){return t?`${t}${Pi(e||"")}`:`Styled(${w3(n)})`}function I3(t,e){let n;return process.env.NODE_ENV!=="production"&&t&&(n=`${t}-${dS(e||"Root")}`),n}function _3(t){for(const e in t)return!1;return!0}function M3(t){return typeof t=="string"&&t.charCodeAt(0)>96}function dS(t){return t&&t.charAt(0).toLowerCase()+t.slice(1)}function hu(t,e){const n={...e};for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)){const r=i;if(r==="components"||r==="slots")n[r]={...t[r],...n[r]};else if(r==="componentsProps"||r==="slotProps"){const s=t[r],o=e[r];if(!o)n[r]=s||{};else if(!s)n[r]=o;else{n[r]={...o};for(const a in s)if(Object.prototype.hasOwnProperty.call(s,a)){const c=a;n[r][c]=hu(s[c],o[c])}}}else n[r]===void 0&&(n[r]=t[r])}return n}function O3(t,e=Number.MIN_SAFE_INTEGER,n=Number.MAX_SAFE_INTEGER){return Math.max(e,Math.min(t,n))}function Jd(t,e=0,n=1){return process.env.NODE_ENV!=="production"&&(t<e||t>n)&&console.error(`MUI: The value provided ${t} is out of range [${e}, ${n}].`),O3(t,e,n)}function D3(t){t=t.slice(1);const e=new RegExp(`.{1,${t.length>=6?2:1}}`,"g");let n=t.match(e);return n&&n[0].length===1&&(n=n.map(i=>i+i)),process.env.NODE_ENV!=="production"&&t.length!==t.trim().length&&console.error(`MUI: The color: "${t}" is invalid. Make sure the color input doesn't contain leading/trailing space.`),n?`rgb${n.length===4?"a":""}(${n.map((i,r)=>r<3?parseInt(i,16):Math.round(parseInt(i,16)/255*1e3)/1e3).join(", ")})`:""}function Qn(t){if(t.type)return t;if(t.charAt(0)==="#")return Qn(D3(t));const e=t.indexOf("("),n=t.substring(0,e);if(!["rgb","rgba","hsl","hsla","color"].includes(n))throw new Error(process.env.NODE_ENV!=="production"?`MUI: Unsupported \`${t}\` color.
|
|
166
166
|
The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().`:Xn(9,t));let i=t.substring(e+1,t.length-1),r;if(n==="color"){if(i=i.split(" "),r=i.shift(),i.length===4&&i[3].charAt(0)==="/"&&(i[3]=i[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.
|
|
167
|
-
The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.`:Xn(10,r))}else i=i.split(",");return i=i.map(s=>parseFloat(s)),{type:n,values:i,colorSpace:r}}const N3=t=>{const e=Qn(t);return e.values.slice(0,3).map((n,i)=>e.type.includes("hsl")&&i!==0?`${n}%`:n).join(" ")},Gr=(t,e)=>{try{return N3(t)}catch{return e&&process.env.NODE_ENV!=="production"&&console.warn(e),t}};function Na(t){const{type:e,colorSpace:n}=t;let{values:i}=t;return e.includes("rgb")?i=i.map((r,s)=>s<3?parseInt(r,10):r):e.includes("hsl")&&(i[1]=`${i[1]}%`,i[2]=`${i[2]}%`),e.includes("color")?i=`${n} ${i.join(" ")}`:i=`${i.join(", ")}`,`${e}(${i})`}function fS(t){t=Qn(t);const{values:e}=t,n=e[0],i=e[1]/100,r=e[2]/100,s=i*Math.min(r,1-r),o=(l,u=(l+n/30)%12)=>r-s*Math.max(Math.min(u-3,9-u,1),-1);let a="rgb";const c=[Math.round(o(0)*255),Math.round(o(8)*255),Math.round(o(4)*255)];return t.type==="hsla"&&(a+="a",c.push(e[3])),Na({type:a,values:c})}function pu(t){t=Qn(t);let e=t.type==="hsl"||t.type==="hsla"?Qn(fS(t)).values:t.values;return e=e.map(n=>(t.type!=="color"&&(n/=255),n<=.03928?n/12.92:((n+.055)/1.055)**2.4)),Number((.2126*e[0]+.7152*e[1]+.0722*e[2]).toFixed(3))}function Bm(t,e){const n=pu(t),i=pu(e);return(Math.max(n,i)+.05)/(Math.min(n,i)+.05)}function L3(t,e){return t=Qn(t),e=Jd(e),(t.type==="rgb"||t.type==="hsl")&&(t.type+="a"),t.type==="color"?t.values[3]=`/${e}`:t.values[3]=e,Na(t)}function no(t,e,n){try{return L3(t,e)}catch{return t}}function Xd(t,e){if(t=Qn(t),e=Jd(e),t.type.includes("hsl"))t.values[2]*=1-e;else if(t.type.includes("rgb")||t.type.includes("color"))for(let n=0;n<3;n+=1)t.values[n]*=1-e;return Na(t)}function Ee(t,e,n){try{return Xd(t,e)}catch{return t}}function Qd(t,e){if(t=Qn(t),e=Jd(e),t.type.includes("hsl"))t.values[2]+=(100-t.values[2])*e;else if(t.type.includes("rgb"))for(let n=0;n<3;n+=1)t.values[n]+=(255-t.values[n])*e;else if(t.type.includes("color"))for(let n=0;n<3;n+=1)t.values[n]+=(1-t.values[n])*e;return Na(t)}function Pe(t,e,n){try{return Qd(t,e)}catch{return t}}function V3(t,e=.15){return pu(t)>.5?Xd(t,e):Qd(t,e)}function io(t,e,n){try{return V3(t,e)}catch{return t}}const F3=
|
|
167
|
+
The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.`:Xn(10,r))}else i=i.split(",");return i=i.map(s=>parseFloat(s)),{type:n,values:i,colorSpace:r}}const N3=t=>{const e=Qn(t);return e.values.slice(0,3).map((n,i)=>e.type.includes("hsl")&&i!==0?`${n}%`:n).join(" ")},Gr=(t,e)=>{try{return N3(t)}catch{return e&&process.env.NODE_ENV!=="production"&&console.warn(e),t}};function Na(t){const{type:e,colorSpace:n}=t;let{values:i}=t;return e.includes("rgb")?i=i.map((r,s)=>s<3?parseInt(r,10):r):e.includes("hsl")&&(i[1]=`${i[1]}%`,i[2]=`${i[2]}%`),e.includes("color")?i=`${n} ${i.join(" ")}`:i=`${i.join(", ")}`,`${e}(${i})`}function fS(t){t=Qn(t);const{values:e}=t,n=e[0],i=e[1]/100,r=e[2]/100,s=i*Math.min(r,1-r),o=(l,u=(l+n/30)%12)=>r-s*Math.max(Math.min(u-3,9-u,1),-1);let a="rgb";const c=[Math.round(o(0)*255),Math.round(o(8)*255),Math.round(o(4)*255)];return t.type==="hsla"&&(a+="a",c.push(e[3])),Na({type:a,values:c})}function pu(t){t=Qn(t);let e=t.type==="hsl"||t.type==="hsla"?Qn(fS(t)).values:t.values;return e=e.map(n=>(t.type!=="color"&&(n/=255),n<=.03928?n/12.92:((n+.055)/1.055)**2.4)),Number((.2126*e[0]+.7152*e[1]+.0722*e[2]).toFixed(3))}function Bm(t,e){const n=pu(t),i=pu(e);return(Math.max(n,i)+.05)/(Math.min(n,i)+.05)}function L3(t,e){return t=Qn(t),e=Jd(e),(t.type==="rgb"||t.type==="hsl")&&(t.type+="a"),t.type==="color"?t.values[3]=`/${e}`:t.values[3]=e,Na(t)}function no(t,e,n){try{return L3(t,e)}catch{return t}}function Xd(t,e){if(t=Qn(t),e=Jd(e),t.type.includes("hsl"))t.values[2]*=1-e;else if(t.type.includes("rgb")||t.type.includes("color"))for(let n=0;n<3;n+=1)t.values[n]*=1-e;return Na(t)}function Ee(t,e,n){try{return Xd(t,e)}catch{return t}}function Qd(t,e){if(t=Qn(t),e=Jd(e),t.type.includes("hsl"))t.values[2]+=(100-t.values[2])*e;else if(t.type.includes("rgb"))for(let n=0;n<3;n+=1)t.values[n]+=(255-t.values[n])*e;else if(t.type.includes("color"))for(let n=0;n<3;n+=1)t.values[n]+=(1-t.values[n])*e;return Na(t)}function Pe(t,e,n){try{return Qd(t,e)}catch{return t}}function V3(t,e=.15){return pu(t)>.5?Xd(t,e):Qd(t,e)}function io(t,e,n){try{return V3(t,e)}catch{return t}}const F3=p.createContext(void 0);process.env.NODE_ENV!=="production"&&(ve.node,ve.object);function j3(t){const{theme:e,name:n,props:i}=t;if(!e||!e.components||!e.components[n])return i;const r=e.components[n];return r.defaultProps?hu(r.defaultProps,i):!r.styleOverrides&&!r.variants?hu(r,i):i}function U3({props:t,name:e}){const n=p.useContext(F3);return j3({props:t,name:e,theme:{components:n}})}const $m={theme:void 0};function B3(t){let e,n;return function(r){let s=e;return(s===void 0||r.theme!==n)&&($m.theme=r.theme,s=lS(t($m)),e=s,n=r.theme),s}}function $3(t=""){function e(...i){if(!i.length)return"";const r=i[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(--${t?`${t}-`:""}${r}${e(...i.slice(1))})`:`, ${r}`}return(i,...r)=>`var(--${t?`${t}-`:""}${i}${e(...r)})`}const Hm=(t,e,n,i=[])=>{let r=t;e.forEach((s,o)=>{o===e.length-1?Array.isArray(r)?r[Number(s)]=n:r&&typeof r=="object"&&(r[s]=n):r&&typeof r=="object"&&(r[s]||(r[s]=i.includes(s)?[]:{}),r=r[s])})},H3=(t,e,n)=>{function i(r,s=[],o=[]){Object.entries(r).forEach(([a,c])=>{(!n||n&&!n([...s,a]))&&c!=null&&(typeof c=="object"&&Object.keys(c).length>0?i(c,[...s,a],Array.isArray(c)?[...o,a]:o):e([...s,a],c,o))})}i(t)},z3=(t,e)=>typeof e=="number"?["lineHeight","fontWeight","opacity","zIndex"].some(i=>t.includes(i))||t[t.length-1].toLowerCase().includes("opacity")?e:`${e}px`:e;function jc(t,e){const{prefix:n,shouldSkipGeneratingVar:i}=e||{},r={},s={},o={};return H3(t,(a,c,l)=>{if((typeof c=="string"||typeof c=="number")&&(!i||!i(a,c))){const u=`--${n?`${n}-`:""}${a.join("-")}`,d=z3(a,c);Object.assign(r,{[u]:d}),Hm(s,a,`var(${u})`,l),Hm(o,a,`var(${u}, ${d})`,l)}},a=>a[0]==="vars"),{css:r,vars:s,varsWithDefaults:o}}function W3(t,e={}){const{getSelector:n=y,disableCssColorScheme:i,colorSchemeSelector:r}=e,{colorSchemes:s={},components:o,defaultColorScheme:a="light",...c}=t,{vars:l,css:u,varsWithDefaults:d}=jc(c,e);let h=d;const m={},{[a]:g,...f}=s;if(Object.entries(f||{}).forEach(([T,k])=>{const{vars:b,css:w,varsWithDefaults:x}=jc(k,e);h=Ct(h,x),m[T]={css:w,vars:b}}),g){const{css:T,vars:k,varsWithDefaults:b}=jc(g,e);h=Ct(h,b),m[a]={css:T,vars:k}}function y(T,k){var w,x;let b=r;if(r==="class"&&(b=".%s"),r==="data"&&(b="[data-%s]"),r!=null&&r.startsWith("data-")&&!r.includes("%s")&&(b=`[${r}="%s"]`),T){if(b==="media")return t.defaultColorScheme===T?":root":{[`@media (prefers-color-scheme: ${((x=(w=s[T])==null?void 0:w.palette)==null?void 0:x.mode)||T})`]:{":root":k}};if(b)return t.defaultColorScheme===T?`:root, ${b.replace("%s",String(T))}`:b.replace("%s",String(T))}return":root"}return{vars:h,generateThemeVars:()=>{let T={...l};return Object.entries(m).forEach(([,{vars:k}])=>{T=Ct(T,k)}),T},generateStyleSheets:()=>{var R,_;const T=[],k=t.defaultColorScheme||"light";function b(S,A){Object.keys(A).length&&T.push(typeof S=="string"?{[S]:{...A}}:S)}b(n(void 0,{...u}),u);const{[k]:w,...x}=m;if(w){const{css:S}=w,A=(_=(R=s[k])==null?void 0:R.palette)==null?void 0:_.mode,O=!i&&A?{colorScheme:A,...S}:{...S};b(n(k,{...O}),O)}return Object.entries(x).forEach(([S,{css:A}])=>{var K,se;const O=(se=(K=s[S])==null?void 0:K.palette)==null?void 0:se.mode,z=!i&&O?{colorScheme:O,...A}:{...A};b(n(S,{...z}),z)}),T}}}function q3(t){return function(n){return t==="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})`):t?t.startsWith("data-")&&!t.includes("%s")?`[${t}="${n}"] &`:t==="class"?`.${n} &`:t==="data"?`[data-${n}] &`:`${t.replace("%s",n)} &`:"&"}}const ks={black:"#000",white:"#fff"},G3={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"},Fi={50:"#f3e5f5",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",700:"#7b1fa2"},ji={300:"#e57373",400:"#ef5350",500:"#f44336",700:"#d32f2f",800:"#c62828"},$r={300:"#ffb74d",400:"#ffa726",500:"#ff9800",700:"#f57c00",900:"#e65100"},Ui={50:"#e3f2fd",200:"#90caf9",400:"#42a5f5",700:"#1976d2",800:"#1565c0"},Bi={300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",700:"#0288d1",900:"#01579b"},$i={300:"#81c784",400:"#66bb6a",500:"#4caf50",700:"#388e3c",800:"#2e7d32",900:"#1b5e20"};function hS(){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:ks.white,default:ks.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 K3=hS();function pS(){return{text:{primary:ks.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:ks.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 zm=pS();function Wm(t,e,n,i){const r=i.light||i,s=i.dark||i*1.5;t[e]||(t.hasOwnProperty(n)?t[e]=t[n]:e==="light"?t.light=Qd(t.main,r):e==="dark"&&(t.dark=Xd(t.main,s)))}function Z3(t="light"){return t==="dark"?{main:Ui[200],light:Ui[50],dark:Ui[400]}:{main:Ui[700],light:Ui[400],dark:Ui[800]}}function Y3(t="light"){return t==="dark"?{main:Fi[200],light:Fi[50],dark:Fi[400]}:{main:Fi[500],light:Fi[300],dark:Fi[700]}}function J3(t="light"){return t==="dark"?{main:ji[500],light:ji[300],dark:ji[700]}:{main:ji[700],light:ji[400],dark:ji[800]}}function X3(t="light"){return t==="dark"?{main:Bi[400],light:Bi[300],dark:Bi[700]}:{main:Bi[700],light:Bi[500],dark:Bi[900]}}function Q3(t="light"){return t==="dark"?{main:$i[400],light:$i[300],dark:$i[700]}:{main:$i[800],light:$i[500],dark:$i[900]}}function eD(t="light"){return t==="dark"?{main:$r[400],light:$r[300],dark:$r[700]}:{main:"#ed6c02",light:$r[500],dark:$r[900]}}function ef(t){const{mode:e="light",contrastThreshold:n=3,tonalOffset:i=.2,...r}=t,s=t.primary||Z3(e),o=t.secondary||Y3(e),a=t.error||J3(e),c=t.info||X3(e),l=t.success||Q3(e),u=t.warning||eD(e);function d(f){const y=Bm(f,zm.text.primary)>=n?zm.text.primary:K3.text.primary;if(process.env.NODE_ENV!=="production"){const v=Bm(f,y);v<3&&console.error([`MUI: The contrast ratio of ${v}:1 for ${y} on ${f}`,"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(`
|
|
168
168
|
`))}return y}const h=({color:f,name:y,mainShade:v=500,lightShade:C=300,darkShade:T=700})=>{if(f={...f},!f.main&&f[v]&&(f.main=f[v]),!f.hasOwnProperty("main"))throw new Error(process.env.NODE_ENV!=="production"?`MUI: The color${y?` (${y})`:""} provided to augmentColor(color) is invalid.
|
|
169
169
|
The color object needs to have a \`main\` property or a \`${v}\` property.`:Xn(11,y?` (${y})`:"",v));if(typeof f.main!="string")throw new Error(process.env.NODE_ENV!=="production"?`MUI: The color${y?` (${y})`:""} provided to augmentColor(color) is invalid.
|
|
170
170
|
\`color.main\` should be a string, but \`${JSON.stringify(f.main)}\` was provided instead.
|
|
@@ -179,7 +179,7 @@ const theme1 = createTheme({ palette: {
|
|
|
179
179
|
|
|
180
180
|
const theme2 = createTheme({ palette: {
|
|
181
181
|
primary: { main: green[500] },
|
|
182
|
-
} });`:Xn(12,y?` (${y})`:"",JSON.stringify(f.main)));return Wm(f,"light",C,i),Wm(f,"dark",T,i),f.contrastText||(f.contrastText=d(f.main)),f};let
|
|
182
|
+
} });`:Xn(12,y?` (${y})`:"",JSON.stringify(f.main)));return Wm(f,"light",C,i),Wm(f,"dark",T,i),f.contrastText||(f.contrastText=d(f.main)),f};let m;return e==="light"?m=hS():e==="dark"&&(m=pS()),process.env.NODE_ENV!=="production"&&(m||console.error(`MUI: The palette mode \`${e}\` is not supported.`)),Ct({common:{...ks},mode:e,primary:h({color:s,name:"primary"}),secondary:h({color:o,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:l,name:"success"}),grey:G3,contrastThreshold:n,getContrastText:d,augmentColor:h,tonalOffset:i,...m},r)}function tD(t){const e={};return Object.entries(t).forEach(i=>{const[r,s]=i;typeof s=="object"&&(e[r]=`${s.fontStyle?`${s.fontStyle} `:""}${s.fontVariant?`${s.fontVariant} `:""}${s.fontWeight?`${s.fontWeight} `:""}${s.fontStretch?`${s.fontStretch} `:""}${s.fontSize||""}${s.lineHeight?`/${s.lineHeight} `:""}${s.fontFamily||""}`)}),e}function nD(t,e){return{toolbar:{minHeight:56,[t.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[t.up("sm")]:{minHeight:64}},...e}}function iD(t){return Math.round(t*1e5)/1e5}const qm={textTransform:"uppercase"},Gm='"Roboto", "Helvetica", "Arial", sans-serif';function rD(t,e){const{fontFamily:n=Gm,fontSize:i=14,fontWeightLight:r=300,fontWeightRegular:s=400,fontWeightMedium:o=500,fontWeightBold:a=700,htmlFontSize:c=16,allVariants:l,pxToRem:u,...d}=typeof e=="function"?e(t):e;process.env.NODE_ENV!=="production"&&(typeof i!="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=i/14,m=u||(y=>`${y/c*h}rem`),g=(y,v,C,T,k)=>({fontFamily:n,fontWeight:y,fontSize:m(v),lineHeight:C,...n===Gm?{letterSpacing:`${iD(T/v)}em`}:{},...k,...l}),f={h1:g(r,96,1.167,-1.5),h2:g(r,60,1.2,-.5),h3:g(s,48,1.167,0),h4:g(s,34,1.235,.25),h5:g(s,24,1.334,0),h6:g(o,20,1.6,.15),subtitle1:g(s,16,1.75,.15),subtitle2:g(o,14,1.57,.1),body1:g(s,16,1.5,.15),body2:g(s,14,1.43,.15),button:g(o,14,1.75,.4,qm),caption:g(s,12,1.66,.4),overline:g(s,12,2.66,1,qm),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return Ct({htmlFontSize:c,pxToRem:m,fontFamily:n,fontSize:i,fontWeightLight:r,fontWeightRegular:s,fontWeightMedium:o,fontWeightBold:a,...f},d,{clone:!1})}const sD=.2,oD=.14,aD=.12;function Ie(...t){return[`${t[0]}px ${t[1]}px ${t[2]}px ${t[3]}px rgba(0,0,0,${sD})`,`${t[4]}px ${t[5]}px ${t[6]}px ${t[7]}px rgba(0,0,0,${oD})`,`${t[8]}px ${t[9]}px ${t[10]}px ${t[11]}px rgba(0,0,0,${aD})`].join(",")}const cD=["none",Ie(0,2,1,-1,0,1,1,0,0,1,3,0),Ie(0,3,1,-2,0,2,2,0,0,1,5,0),Ie(0,3,3,-2,0,3,4,0,0,1,8,0),Ie(0,2,4,-1,0,4,5,0,0,1,10,0),Ie(0,3,5,-1,0,5,8,0,0,1,14,0),Ie(0,3,5,-1,0,6,10,0,0,1,18,0),Ie(0,4,5,-2,0,7,10,1,0,2,16,1),Ie(0,5,5,-3,0,8,10,1,0,3,14,2),Ie(0,5,6,-3,0,9,12,1,0,3,16,2),Ie(0,6,6,-3,0,10,14,1,0,4,18,3),Ie(0,6,7,-4,0,11,15,1,0,4,20,3),Ie(0,7,8,-4,0,12,17,2,0,5,22,4),Ie(0,7,8,-4,0,13,19,2,0,5,24,4),Ie(0,7,9,-4,0,14,21,2,0,5,26,4),Ie(0,8,9,-5,0,15,22,2,0,6,28,5),Ie(0,8,10,-5,0,16,24,2,0,6,30,5),Ie(0,8,11,-5,0,17,26,2,0,6,32,5),Ie(0,9,11,-5,0,18,28,2,0,7,34,6),Ie(0,9,12,-6,0,19,29,2,0,7,36,6),Ie(0,10,13,-6,0,20,31,3,0,8,38,7),Ie(0,10,13,-6,0,21,33,3,0,8,40,7),Ie(0,10,14,-6,0,22,35,3,0,8,42,7),Ie(0,11,14,-7,0,23,36,3,0,9,44,8),Ie(0,11,15,-7,0,24,38,3,0,9,46,8)],lD={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)"},uD={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function Km(t){return`${Math.round(t)}ms`}function dD(t){if(!t)return 0;const e=t/36;return Math.min(Math.round((4+15*e**.25+e/5)*10),3e3)}function fD(t){const e={...lD,...t.easing},n={...uD,...t.duration};return{getAutoHeightDuration:dD,create:(r=["all"],s={})=>{const{duration:o=n.standard,easing:a=e.easeInOut,delay:c=0,...l}=s;if(process.env.NODE_ENV!=="production"){const u=h=>typeof h=="string",d=h=>!Number.isNaN(parseFloat(h));!u(r)&&!Array.isArray(r)&&console.error('MUI: Argument "props" must be a string or Array.'),!d(o)&&!u(o)&&console.error(`MUI: Argument "duration" must be a number or a string but found ${o}.`),u(a)||console.error('MUI: Argument "easing" must be a string.'),!d(c)&&!u(c)&&console.error('MUI: Argument "delay" must be a number or a string.'),typeof s!="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(`
|
|
183
183
|
`)),Object.keys(l).length!==0&&console.error(`MUI: Unrecognized argument(s) [${Object.keys(l).join(",")}].`)}return(Array.isArray(r)?r:[r]).map(u=>`${u} ${typeof o=="string"?o:Km(o)} ${a} ${typeof c=="string"?c:Km(c)}`).join(",")},...t,easing:e,duration:n}}const hD={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500};function pD(t){return Tn(t)||typeof t>"u"||typeof t=="string"||typeof t=="boolean"||typeof t=="number"||Array.isArray(t)}function mS(t={}){const e={...t};function n(i){const r=Object.entries(i);for(let s=0;s<r.length;s++){const[o,a]=r[s];!pD(a)||o.startsWith("unstable_")?delete i[o]:Tn(a)&&(i[o]={...a},n(i[o]))}}return n(e),`import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles';
|
|
184
184
|
|
|
185
185
|
const theme = ${JSON.stringify(e,null,2)};
|
|
@@ -187,10 +187,10 @@ const theme = ${JSON.stringify(e,null,2)};
|
|
|
187
187
|
theme.breakpoints = createBreakpoints(theme.breakpoints || {});
|
|
188
188
|
theme.transitions = createTransitions(theme.transitions || {});
|
|
189
189
|
|
|
190
|
-
export default theme;`}function mu(t={},...e){const{breakpoints:n,mixins:i={},spacing:r,palette:s={},transitions:o={},typography:a={},shape:c,...l}=t;if(t.vars&&t.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.":Xn(20));const u=ef(s),d=aS(t);let h=Ct(d,{mixins:nD(d.breakpoints,i),palette:u,shadows:cD.slice(),typography:rD(u,a),transitions:fD(o),zIndex:{...hD}});if(h=Ct(h,l),h=e.reduce((
|
|
190
|
+
export default theme;`}function mu(t={},...e){const{breakpoints:n,mixins:i={},spacing:r,palette:s={},transitions:o={},typography:a={},shape:c,...l}=t;if(t.vars&&t.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.":Xn(20));const u=ef(s),d=aS(t);let h=Ct(d,{mixins:nD(d.breakpoints,i),palette:u,shadows:cD.slice(),typography:rD(u,a),transitions:fD(o),zIndex:{...hD}});if(h=Ct(h,l),h=e.reduce((m,g)=>Ct(m,g),h),process.env.NODE_ENV!=="production"){const m=["active","checked","completed","disabled","error","expanded","focused","focusVisible","required","selected"],g=(f,y)=>{let v;for(v in f){const C=f[v];if(m.includes(v)&&Object.keys(C).length>0){if(process.env.NODE_ENV!=="production"){const T=Yd("",v);console.error([`MUI: The \`${y}\` component increases the CSS specificity of the \`${v}\` internal state.`,"You can not override it like this: ",JSON.stringify(f,null,2),"",`Instead, you need to use the '&.${T}' syntax:`,JSON.stringify({root:{[`&.${T}`]:C}},null,2),"","https://mui.com/r/state-classes-guide"].join(`
|
|
191
191
|
`))}f[v]={}}}};Object.keys(h.components).forEach(f=>{const y=h.components[f].styleOverrides;y&&f.startsWith("Mui")&&g(y,f)})}return h.unstable_sxConfig={..._a,...l==null?void 0:l.unstable_sxConfig},h.unstable_sx=function(g){return mr({sx:g,theme:this})},h.toRuntimeSource=mS,h}function mD(t){let e;return t<1?e=5.11916*t**2:e=4.5*Math.log(t+1)+2,Math.round(e*10)/1e3}const gD=[...Array(25)].map((t,e)=>{if(e===0)return"none";const n=mD(e);return`linear-gradient(rgba(255 255 255 / ${n}), rgba(255 255 255 / ${n}))`});function gS(t){return{inputPlaceholder:t==="dark"?.5:.42,inputUnderline:t==="dark"?.7:.42,switchTrackDisabled:t==="dark"?.2:.12,switchTrack:t==="dark"?.3:.38}}function vS(t){return t==="dark"?gD:[]}function vD(t){const{palette:e={mode:"light"},opacity:n,overlays:i,...r}=t,s=ef(e);return{palette:s,opacity:{...gS(s.mode),...n},overlays:i||vS(s.mode),...r}}function yD(t){var e;return!!t[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/)||!!t[0].match(/sxConfig$/)||t[0]==="palette"&&!!((e=t[1])!=null&&e.match(/(mode|contrastThreshold|tonalOffset)/))}const bD=t=>[...[...Array(25)].map((e,n)=>`--${t?`${t}-`:""}overlays-${n}`),`--${t?`${t}-`:""}palette-AppBar-darkBg`,`--${t?`${t}-`:""}palette-AppBar-darkColor`],SD=t=>(e,n)=>{const i=t.rootSelector||":root",r=t.colorSchemeSelector;let s=r;if(r==="class"&&(s=".%s"),r==="data"&&(s="[data-%s]"),r!=null&&r.startsWith("data-")&&!r.includes("%s")&&(s=`[${r}="%s"]`),t.defaultColorScheme===e){if(e==="dark"){const o={};return bD(t.cssVarPrefix).forEach(a=>{o[a]=n[a],delete n[a]}),s==="media"?{[i]:n,"@media (prefers-color-scheme: dark)":{[i]:o}}:s?{[s.replace("%s",e)]:o,[`${i}, ${s.replace("%s",e)}`]:n}:{[i]:{...n,...o}}}if(s&&s!=="media")return`${i}, ${s.replace("%s",String(e))}`}else if(e){if(s==="media")return{[`@media (prefers-color-scheme: ${String(e)})`]:{[i]:n}};if(s)return s.replace("%s",String(e))}return i};function TD(t,e){e.forEach(n=>{t[n]||(t[n]={})})}function L(t,e,n){!t[e]&&n&&(t[e]=n)}function Kr(t){return typeof t!="string"||!t.startsWith("hsl")?t:fS(t)}function pn(t,e){`${e}Channel`in t||(t[`${e}Channel`]=Gr(Kr(t[e]),`MUI: Can't create \`palette.${e}Channel\` because \`palette.${e}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().
|
|
192
|
-
To suppress this warning, you need to explicitly provide the \`palette.${e}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`))}function kD(t){return typeof t=="number"?`${t}px`:typeof t=="string"||typeof t=="function"||Array.isArray(t)?t:"8px"}const Gt=t=>{try{return t()}catch{}},CD=(t="mui")=>$3(t);function Uc(t,e,n,i){if(!e)return;e=e===!0?{}:e;const r=i==="dark"?"dark":"light";if(!n){t[i]=vD({...e,palette:{mode:r,...e==null?void 0:e.palette}});return}const{palette:s,...o}=mu({...n,palette:{mode:r,...e==null?void 0:e.palette}});return t[i]={...e,palette:s,opacity:{...gS(r),...e==null?void 0:e.opacity},overlays:(e==null?void 0:e.overlays)||vS(r)},o}function wD(t={},...e){const{colorSchemes:n={light:!0},defaultColorScheme:i,disableCssColorScheme:r=!1,cssVarPrefix:s="mui",shouldSkipGeneratingVar:o=yD,colorSchemeSelector:a=n.light&&n.dark?"media":void 0,rootSelector:c=":root",...l}=t,u=Object.keys(n)[0],d=i||(n.light&&u!=="light"?"light":u),h=CD(s),{[d]:p,light:g,dark:f,...y}=n,v={...y};let C=p;if((d==="dark"&&!("dark"in n)||d==="light"&&!("light"in n))&&(C=!0),!C)throw new Error(process.env.NODE_ENV!=="production"?`MUI: The \`colorSchemes.${d}\` option is either missing or invalid.`:Xn(21,d));const T=Uc(v,C,l,d);g&&!v.light&&Uc(v,g,void 0,"light"),f&&!v.dark&&Uc(v,f,void 0,"dark");let k={defaultColorScheme:d,...T,cssVarPrefix:s,colorSchemeSelector:a,rootSelector:c,getCssVar:h,colorSchemes:v,font:{...tD(T.typography),...T.font},spacing:kD(l.spacing)};Object.keys(k.colorSchemes).forEach(_=>{const S=k.colorSchemes[_].palette,I=N=>{const z=N.split("-"),K=z[1],se=z[2];return h(N,S[K][se])};if(S.mode==="light"&&(L(S.common,"background","#fff"),L(S.common,"onBackground","#000")),S.mode==="dark"&&(L(S.common,"background","#000"),L(S.common,"onBackground","#fff")),TD(S,["Alert","AppBar","Avatar","Button","Chip","FilledInput","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"]),S.mode==="light"){L(S.Alert,"errorColor",Ee(S.error.light,.6)),L(S.Alert,"infoColor",Ee(S.info.light,.6)),L(S.Alert,"successColor",Ee(S.success.light,.6)),L(S.Alert,"warningColor",Ee(S.warning.light,.6)),L(S.Alert,"errorFilledBg",I("palette-error-main")),L(S.Alert,"infoFilledBg",I("palette-info-main")),L(S.Alert,"successFilledBg",I("palette-success-main")),L(S.Alert,"warningFilledBg",I("palette-warning-main")),L(S.Alert,"errorFilledColor",Gt(()=>S.getContrastText(S.error.main))),L(S.Alert,"infoFilledColor",Gt(()=>S.getContrastText(S.info.main))),L(S.Alert,"successFilledColor",Gt(()=>S.getContrastText(S.success.main))),L(S.Alert,"warningFilledColor",Gt(()=>S.getContrastText(S.warning.main))),L(S.Alert,"errorStandardBg",Pe(S.error.light,.9)),L(S.Alert,"infoStandardBg",Pe(S.info.light,.9)),L(S.Alert,"successStandardBg",Pe(S.success.light,.9)),L(S.Alert,"warningStandardBg",Pe(S.warning.light,.9)),L(S.Alert,"errorIconColor",I("palette-error-main")),L(S.Alert,"infoIconColor",I("palette-info-main")),L(S.Alert,"successIconColor",I("palette-success-main")),L(S.Alert,"warningIconColor",I("palette-warning-main")),L(S.AppBar,"defaultBg",I("palette-grey-100")),L(S.Avatar,"defaultBg",I("palette-grey-400")),L(S.Button,"inheritContainedBg",I("palette-grey-300")),L(S.Button,"inheritContainedHoverBg",I("palette-grey-A100")),L(S.Chip,"defaultBorder",I("palette-grey-400")),L(S.Chip,"defaultAvatarColor",I("palette-grey-700")),L(S.Chip,"defaultIconColor",I("palette-grey-700")),L(S.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),L(S.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),L(S.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),L(S.LinearProgress,"primaryBg",Pe(S.primary.main,.62)),L(S.LinearProgress,"secondaryBg",Pe(S.secondary.main,.62)),L(S.LinearProgress,"errorBg",Pe(S.error.main,.62)),L(S.LinearProgress,"infoBg",Pe(S.info.main,.62)),L(S.LinearProgress,"successBg",Pe(S.success.main,.62)),L(S.LinearProgress,"warningBg",Pe(S.warning.main,.62)),L(S.Skeleton,"bg",`rgba(${I("palette-text-primaryChannel")} / 0.11)`),L(S.Slider,"primaryTrack",Pe(S.primary.main,.62)),L(S.Slider,"secondaryTrack",Pe(S.secondary.main,.62)),L(S.Slider,"errorTrack",Pe(S.error.main,.62)),L(S.Slider,"infoTrack",Pe(S.info.main,.62)),L(S.Slider,"successTrack",Pe(S.success.main,.62)),L(S.Slider,"warningTrack",Pe(S.warning.main,.62));const N=io(S.background.default,.8);L(S.SnackbarContent,"bg",N),L(S.SnackbarContent,"color",Gt(()=>S.getContrastText(N))),L(S.SpeedDialAction,"fabHoverBg",io(S.background.paper,.15)),L(S.StepConnector,"border",I("palette-grey-400")),L(S.StepContent,"border",I("palette-grey-400")),L(S.Switch,"defaultColor",I("palette-common-white")),L(S.Switch,"defaultDisabledColor",I("palette-grey-100")),L(S.Switch,"primaryDisabledColor",Pe(S.primary.main,.62)),L(S.Switch,"secondaryDisabledColor",Pe(S.secondary.main,.62)),L(S.Switch,"errorDisabledColor",Pe(S.error.main,.62)),L(S.Switch,"infoDisabledColor",Pe(S.info.main,.62)),L(S.Switch,"successDisabledColor",Pe(S.success.main,.62)),L(S.Switch,"warningDisabledColor",Pe(S.warning.main,.62)),L(S.TableCell,"border",Pe(no(S.divider,1),.88)),L(S.Tooltip,"bg",no(S.grey[700],.92))}if(S.mode==="dark"){L(S.Alert,"errorColor",Pe(S.error.light,.6)),L(S.Alert,"infoColor",Pe(S.info.light,.6)),L(S.Alert,"successColor",Pe(S.success.light,.6)),L(S.Alert,"warningColor",Pe(S.warning.light,.6)),L(S.Alert,"errorFilledBg",I("palette-error-dark")),L(S.Alert,"infoFilledBg",I("palette-info-dark")),L(S.Alert,"successFilledBg",I("palette-success-dark")),L(S.Alert,"warningFilledBg",I("palette-warning-dark")),L(S.Alert,"errorFilledColor",Gt(()=>S.getContrastText(S.error.dark))),L(S.Alert,"infoFilledColor",Gt(()=>S.getContrastText(S.info.dark))),L(S.Alert,"successFilledColor",Gt(()=>S.getContrastText(S.success.dark))),L(S.Alert,"warningFilledColor",Gt(()=>S.getContrastText(S.warning.dark))),L(S.Alert,"errorStandardBg",Ee(S.error.light,.9)),L(S.Alert,"infoStandardBg",Ee(S.info.light,.9)),L(S.Alert,"successStandardBg",Ee(S.success.light,.9)),L(S.Alert,"warningStandardBg",Ee(S.warning.light,.9)),L(S.Alert,"errorIconColor",I("palette-error-main")),L(S.Alert,"infoIconColor",I("palette-info-main")),L(S.Alert,"successIconColor",I("palette-success-main")),L(S.Alert,"warningIconColor",I("palette-warning-main")),L(S.AppBar,"defaultBg",I("palette-grey-900")),L(S.AppBar,"darkBg",I("palette-background-paper")),L(S.AppBar,"darkColor",I("palette-text-primary")),L(S.Avatar,"defaultBg",I("palette-grey-600")),L(S.Button,"inheritContainedBg",I("palette-grey-800")),L(S.Button,"inheritContainedHoverBg",I("palette-grey-700")),L(S.Chip,"defaultBorder",I("palette-grey-700")),L(S.Chip,"defaultAvatarColor",I("palette-grey-300")),L(S.Chip,"defaultIconColor",I("palette-grey-300")),L(S.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),L(S.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),L(S.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),L(S.LinearProgress,"primaryBg",Ee(S.primary.main,.5)),L(S.LinearProgress,"secondaryBg",Ee(S.secondary.main,.5)),L(S.LinearProgress,"errorBg",Ee(S.error.main,.5)),L(S.LinearProgress,"infoBg",Ee(S.info.main,.5)),L(S.LinearProgress,"successBg",Ee(S.success.main,.5)),L(S.LinearProgress,"warningBg",Ee(S.warning.main,.5)),L(S.Skeleton,"bg",`rgba(${I("palette-text-primaryChannel")} / 0.13)`),L(S.Slider,"primaryTrack",Ee(S.primary.main,.5)),L(S.Slider,"secondaryTrack",Ee(S.secondary.main,.5)),L(S.Slider,"errorTrack",Ee(S.error.main,.5)),L(S.Slider,"infoTrack",Ee(S.info.main,.5)),L(S.Slider,"successTrack",Ee(S.success.main,.5)),L(S.Slider,"warningTrack",Ee(S.warning.main,.5));const N=io(S.background.default,.98);L(S.SnackbarContent,"bg",N),L(S.SnackbarContent,"color",Gt(()=>S.getContrastText(N))),L(S.SpeedDialAction,"fabHoverBg",io(S.background.paper,.15)),L(S.StepConnector,"border",I("palette-grey-600")),L(S.StepContent,"border",I("palette-grey-600")),L(S.Switch,"defaultColor",I("palette-grey-300")),L(S.Switch,"defaultDisabledColor",I("palette-grey-600")),L(S.Switch,"primaryDisabledColor",Ee(S.primary.main,.55)),L(S.Switch,"secondaryDisabledColor",Ee(S.secondary.main,.55)),L(S.Switch,"errorDisabledColor",Ee(S.error.main,.55)),L(S.Switch,"infoDisabledColor",Ee(S.info.main,.55)),L(S.Switch,"successDisabledColor",Ee(S.success.main,.55)),L(S.Switch,"warningDisabledColor",Ee(S.warning.main,.55)),L(S.TableCell,"border",Ee(no(S.divider,1),.68)),L(S.Tooltip,"bg",no(S.grey[700],.92))}pn(S.background,"default"),pn(S.background,"paper"),pn(S.common,"background"),pn(S.common,"onBackground"),pn(S,"divider"),Object.keys(S).forEach(N=>{const z=S[N];N!=="tonalOffset"&&z&&typeof z=="object"&&(z.main&&L(S[N],"mainChannel",Gr(Kr(z.main))),z.light&&L(S[N],"lightChannel",Gr(Kr(z.light))),z.dark&&L(S[N],"darkChannel",Gr(Kr(z.dark))),z.contrastText&&L(S[N],"contrastTextChannel",Gr(Kr(z.contrastText))),N==="text"&&(pn(S[N],"primary"),pn(S[N],"secondary")),N==="action"&&(z.active&&pn(S[N],"active"),z.selected&&pn(S[N],"selected")))})}),k=e.reduce((_,S)=>Ct(_,S),k);const b={prefix:s,disableCssColorScheme:r,shouldSkipGeneratingVar:o,getSelector:SD(k)},{vars:w,generateThemeVars:x,generateStyleSheets:R}=W3(k,b);return k.vars=w,Object.entries(k.colorSchemes[k.defaultColorScheme]).forEach(([_,S])=>{k[_]=S}),k.generateThemeVars=x,k.generateStyleSheets=R,k.generateSpacing=function(){return oS(l.spacing,Wd(this))},k.getColorSchemeSelector=q3(a),k.spacing=k.generateSpacing(),k.shouldSkipGeneratingVar=o,k.unstable_sxConfig={..._a,...l==null?void 0:l.unstable_sxConfig},k.unstable_sx=function(S){return mr({sx:S,theme:this})},k.toRuntimeSource=mS,k}function Zm(t,e,n){t.colorSchemes&&n&&(t.colorSchemes[e]={...n!==!0&&n,palette:ef({...n===!0?{}:n.palette,mode:e})})}function xD(t={},...e){const{palette:n,cssVariables:i=!1,colorSchemes:r=n?void 0:{light:!0},defaultColorScheme:s=n==null?void 0:n.mode,...o}=t,a=s||"light",c=r==null?void 0:r[a],l={...r,...n?{[a]:{...typeof c!="boolean"&&c,palette:n}}:void 0};if(i===!1){if(!("colorSchemes"in t))return mu(t,...e);let u=n;"palette"in t||l[a]&&(l[a]!==!0?u=l[a].palette:a==="dark"&&(u={mode:"dark"}));const d=mu({...t,palette:u},...e);return d.defaultColorScheme=a,d.colorSchemes=l,d.palette.mode==="light"&&(d.colorSchemes.light={...l.light!==!0&&l.light,palette:d.palette},Zm(d,"dark",l.dark)),d.palette.mode==="dark"&&(d.colorSchemes.dark={...l.dark!==!0&&l.dark,palette:d.palette},Zm(d,"light",l.light)),d}return!n&&!("light"in l)&&a==="light"&&(l.light=!0),wD({...o,colorSchemes:l,defaultColorScheme:a,...typeof i!="boolean"&&i},...e)}const ED=xD(),PD="$$material";function RD(t){return t!=="ownerState"&&t!=="theme"&&t!=="sx"&&t!=="as"}const AD=t=>RD(t)&&t!=="classes",ID=R3({themeId:PD,defaultTheme:ED,rootShouldForwardProp:AD}),_D=B3;process.env.NODE_ENV!=="production"&&(ve.node,ve.object.isRequired);function MD(t){return U3(t)}function OD(t){return Yd("MuiSvgIcon",t)}C3("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);const DD=t=>{const{color:e,fontSize:n,classes:i}=t,r={root:["root",e!=="inherit"&&`color${Pi(e)}`,`fontSize${Pi(n)}`]};return w6(r,OD,i)},ND=ID("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(t,e)=>{const{ownerState:n}=t;return[e.root,n.color!=="inherit"&&e[`color${Pi(n.color)}`],e[`fontSize${Pi(n.fontSize)}`]]}})(_D(({theme:t})=>{var e,n,i,r,s,o,a,c,l,u,d,h,p,g;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",flexShrink:0,transition:(r=(e=t.transitions)==null?void 0:e.create)==null?void 0:r.call(e,"fill",{duration:(i=(n=(t.vars??t).transitions)==null?void 0:n.duration)==null?void 0:i.shorter}),variants:[{props:f=>!f.hasSvgAsChild,style:{fill:"currentColor"}},{props:{fontSize:"inherit"},style:{fontSize:"inherit"}},{props:{fontSize:"small"},style:{fontSize:((o=(s=t.typography)==null?void 0:s.pxToRem)==null?void 0:o.call(s,20))||"1.25rem"}},{props:{fontSize:"medium"},style:{fontSize:((c=(a=t.typography)==null?void 0:a.pxToRem)==null?void 0:c.call(a,24))||"1.5rem"}},{props:{fontSize:"large"},style:{fontSize:((u=(l=t.typography)==null?void 0:l.pxToRem)==null?void 0:u.call(l,35))||"2.1875rem"}},...Object.entries((t.vars??t).palette).filter(([,f])=>f&&f.main).map(([f])=>{var y,v;return{props:{color:f},style:{color:(v=(y=(t.vars??t).palette)==null?void 0:y[f])==null?void 0:v.main}}}),{props:{color:"action"},style:{color:(h=(d=(t.vars??t).palette)==null?void 0:d.action)==null?void 0:h.active}},{props:{color:"disabled"},style:{color:(g=(p=(t.vars??t).palette)==null?void 0:p.action)==null?void 0:g.disabled}},{props:{color:"inherit"},style:{color:void 0}}]}})),ea=m.forwardRef(function(e,n){const i=MD({props:e,name:"MuiSvgIcon"}),{children:r,className:s,color:o="inherit",component:a="svg",fontSize:c="medium",htmlColor:l,inheritViewBox:u=!1,titleAccess:d,viewBox:h="0 0 24 24",...p}=i,g=m.isValidElement(r)&&r.type==="svg",f={...i,color:o,component:a,fontSize:c,instanceFontSize:e.fontSize,inheritViewBox:u,viewBox:h,hasSvgAsChild:g},y={};u||(y.viewBox=h);const v=DD(f);return E.jsxs(ND,{as:a,className:Jm(v.root,s),focusable:"false",color:l,"aria-hidden":d?void 0:!0,role:d?"img":void 0,ref:n,...y,...p,...g&&r.props,ownerState:f,children:[g?r.props.children:r,d?E.jsx("title",{children:d}):null]})});process.env.NODE_ENV!=="production"&&(ea.propTypes={children:ve.node,classes:ve.object,className:ve.string,color:ve.oneOfType([ve.oneOf(["inherit","action","disabled","primary","secondary","error","info","success","warning"]),ve.string]),component:ve.elementType,fontSize:ve.oneOfType([ve.oneOf(["inherit","large","medium","small"]),ve.string]),htmlColor:ve.string,inheritViewBox:ve.bool,shapeRendering:ve.string,sx:ve.oneOfType([ve.arrayOf(ve.oneOfType([ve.func,ve.object,ve.bool])),ve.func,ve.object]),titleAccess:ve.string,viewBox:ve.string});ea.muiName="SvgIcon";function LD(t,e){function n(i,r){return E.jsx(ea,{"data-testid":process.env.NODE_ENV!=="production"?`${e}Icon`:void 0,ref:r,...i,children:t})}return process.env.NODE_ENV!=="production"&&(n.displayName=`${e}Icon`),n.muiName=ea.muiName,m.memo(m.forwardRef(n))}const VD=LD(E.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");function FD({onClick:t,disabled:e,theme:n}){const i=Ai(n);return E.jsx("button",{className:i.micButton,onClick:t,disabled:e,"aria-label":"Start Session",type:"button",children:E.jsx(VD,{})})}function jD({prompts:t,theme:e}){const n=Ai(e),[i,r]=B.useState(0);return B.useEffect(()=>{const s=setInterval(()=>{r(o=>(o+1)%t.length)},3e3);return()=>clearInterval(s)},[t.length]),E.jsx("div",{className:"w-full min-h-[3rem] h-12 relative overflow-hidden flex items-center justify-center",children:t.map((s,o)=>E.jsx("div",{className:`
|
|
192
|
+
To suppress this warning, you need to explicitly provide the \`palette.${e}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`))}function kD(t){return typeof t=="number"?`${t}px`:typeof t=="string"||typeof t=="function"||Array.isArray(t)?t:"8px"}const Gt=t=>{try{return t()}catch{}},CD=(t="mui")=>$3(t);function Uc(t,e,n,i){if(!e)return;e=e===!0?{}:e;const r=i==="dark"?"dark":"light";if(!n){t[i]=vD({...e,palette:{mode:r,...e==null?void 0:e.palette}});return}const{palette:s,...o}=mu({...n,palette:{mode:r,...e==null?void 0:e.palette}});return t[i]={...e,palette:s,opacity:{...gS(r),...e==null?void 0:e.opacity},overlays:(e==null?void 0:e.overlays)||vS(r)},o}function wD(t={},...e){const{colorSchemes:n={light:!0},defaultColorScheme:i,disableCssColorScheme:r=!1,cssVarPrefix:s="mui",shouldSkipGeneratingVar:o=yD,colorSchemeSelector:a=n.light&&n.dark?"media":void 0,rootSelector:c=":root",...l}=t,u=Object.keys(n)[0],d=i||(n.light&&u!=="light"?"light":u),h=CD(s),{[d]:m,light:g,dark:f,...y}=n,v={...y};let C=m;if((d==="dark"&&!("dark"in n)||d==="light"&&!("light"in n))&&(C=!0),!C)throw new Error(process.env.NODE_ENV!=="production"?`MUI: The \`colorSchemes.${d}\` option is either missing or invalid.`:Xn(21,d));const T=Uc(v,C,l,d);g&&!v.light&&Uc(v,g,void 0,"light"),f&&!v.dark&&Uc(v,f,void 0,"dark");let k={defaultColorScheme:d,...T,cssVarPrefix:s,colorSchemeSelector:a,rootSelector:c,getCssVar:h,colorSchemes:v,font:{...tD(T.typography),...T.font},spacing:kD(l.spacing)};Object.keys(k.colorSchemes).forEach(_=>{const S=k.colorSchemes[_].palette,A=O=>{const z=O.split("-"),K=z[1],se=z[2];return h(O,S[K][se])};if(S.mode==="light"&&(L(S.common,"background","#fff"),L(S.common,"onBackground","#000")),S.mode==="dark"&&(L(S.common,"background","#000"),L(S.common,"onBackground","#fff")),TD(S,["Alert","AppBar","Avatar","Button","Chip","FilledInput","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"]),S.mode==="light"){L(S.Alert,"errorColor",Ee(S.error.light,.6)),L(S.Alert,"infoColor",Ee(S.info.light,.6)),L(S.Alert,"successColor",Ee(S.success.light,.6)),L(S.Alert,"warningColor",Ee(S.warning.light,.6)),L(S.Alert,"errorFilledBg",A("palette-error-main")),L(S.Alert,"infoFilledBg",A("palette-info-main")),L(S.Alert,"successFilledBg",A("palette-success-main")),L(S.Alert,"warningFilledBg",A("palette-warning-main")),L(S.Alert,"errorFilledColor",Gt(()=>S.getContrastText(S.error.main))),L(S.Alert,"infoFilledColor",Gt(()=>S.getContrastText(S.info.main))),L(S.Alert,"successFilledColor",Gt(()=>S.getContrastText(S.success.main))),L(S.Alert,"warningFilledColor",Gt(()=>S.getContrastText(S.warning.main))),L(S.Alert,"errorStandardBg",Pe(S.error.light,.9)),L(S.Alert,"infoStandardBg",Pe(S.info.light,.9)),L(S.Alert,"successStandardBg",Pe(S.success.light,.9)),L(S.Alert,"warningStandardBg",Pe(S.warning.light,.9)),L(S.Alert,"errorIconColor",A("palette-error-main")),L(S.Alert,"infoIconColor",A("palette-info-main")),L(S.Alert,"successIconColor",A("palette-success-main")),L(S.Alert,"warningIconColor",A("palette-warning-main")),L(S.AppBar,"defaultBg",A("palette-grey-100")),L(S.Avatar,"defaultBg",A("palette-grey-400")),L(S.Button,"inheritContainedBg",A("palette-grey-300")),L(S.Button,"inheritContainedHoverBg",A("palette-grey-A100")),L(S.Chip,"defaultBorder",A("palette-grey-400")),L(S.Chip,"defaultAvatarColor",A("palette-grey-700")),L(S.Chip,"defaultIconColor",A("palette-grey-700")),L(S.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),L(S.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),L(S.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),L(S.LinearProgress,"primaryBg",Pe(S.primary.main,.62)),L(S.LinearProgress,"secondaryBg",Pe(S.secondary.main,.62)),L(S.LinearProgress,"errorBg",Pe(S.error.main,.62)),L(S.LinearProgress,"infoBg",Pe(S.info.main,.62)),L(S.LinearProgress,"successBg",Pe(S.success.main,.62)),L(S.LinearProgress,"warningBg",Pe(S.warning.main,.62)),L(S.Skeleton,"bg",`rgba(${A("palette-text-primaryChannel")} / 0.11)`),L(S.Slider,"primaryTrack",Pe(S.primary.main,.62)),L(S.Slider,"secondaryTrack",Pe(S.secondary.main,.62)),L(S.Slider,"errorTrack",Pe(S.error.main,.62)),L(S.Slider,"infoTrack",Pe(S.info.main,.62)),L(S.Slider,"successTrack",Pe(S.success.main,.62)),L(S.Slider,"warningTrack",Pe(S.warning.main,.62));const O=io(S.background.default,.8);L(S.SnackbarContent,"bg",O),L(S.SnackbarContent,"color",Gt(()=>S.getContrastText(O))),L(S.SpeedDialAction,"fabHoverBg",io(S.background.paper,.15)),L(S.StepConnector,"border",A("palette-grey-400")),L(S.StepContent,"border",A("palette-grey-400")),L(S.Switch,"defaultColor",A("palette-common-white")),L(S.Switch,"defaultDisabledColor",A("palette-grey-100")),L(S.Switch,"primaryDisabledColor",Pe(S.primary.main,.62)),L(S.Switch,"secondaryDisabledColor",Pe(S.secondary.main,.62)),L(S.Switch,"errorDisabledColor",Pe(S.error.main,.62)),L(S.Switch,"infoDisabledColor",Pe(S.info.main,.62)),L(S.Switch,"successDisabledColor",Pe(S.success.main,.62)),L(S.Switch,"warningDisabledColor",Pe(S.warning.main,.62)),L(S.TableCell,"border",Pe(no(S.divider,1),.88)),L(S.Tooltip,"bg",no(S.grey[700],.92))}if(S.mode==="dark"){L(S.Alert,"errorColor",Pe(S.error.light,.6)),L(S.Alert,"infoColor",Pe(S.info.light,.6)),L(S.Alert,"successColor",Pe(S.success.light,.6)),L(S.Alert,"warningColor",Pe(S.warning.light,.6)),L(S.Alert,"errorFilledBg",A("palette-error-dark")),L(S.Alert,"infoFilledBg",A("palette-info-dark")),L(S.Alert,"successFilledBg",A("palette-success-dark")),L(S.Alert,"warningFilledBg",A("palette-warning-dark")),L(S.Alert,"errorFilledColor",Gt(()=>S.getContrastText(S.error.dark))),L(S.Alert,"infoFilledColor",Gt(()=>S.getContrastText(S.info.dark))),L(S.Alert,"successFilledColor",Gt(()=>S.getContrastText(S.success.dark))),L(S.Alert,"warningFilledColor",Gt(()=>S.getContrastText(S.warning.dark))),L(S.Alert,"errorStandardBg",Ee(S.error.light,.9)),L(S.Alert,"infoStandardBg",Ee(S.info.light,.9)),L(S.Alert,"successStandardBg",Ee(S.success.light,.9)),L(S.Alert,"warningStandardBg",Ee(S.warning.light,.9)),L(S.Alert,"errorIconColor",A("palette-error-main")),L(S.Alert,"infoIconColor",A("palette-info-main")),L(S.Alert,"successIconColor",A("palette-success-main")),L(S.Alert,"warningIconColor",A("palette-warning-main")),L(S.AppBar,"defaultBg",A("palette-grey-900")),L(S.AppBar,"darkBg",A("palette-background-paper")),L(S.AppBar,"darkColor",A("palette-text-primary")),L(S.Avatar,"defaultBg",A("palette-grey-600")),L(S.Button,"inheritContainedBg",A("palette-grey-800")),L(S.Button,"inheritContainedHoverBg",A("palette-grey-700")),L(S.Chip,"defaultBorder",A("palette-grey-700")),L(S.Chip,"defaultAvatarColor",A("palette-grey-300")),L(S.Chip,"defaultIconColor",A("palette-grey-300")),L(S.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),L(S.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),L(S.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),L(S.LinearProgress,"primaryBg",Ee(S.primary.main,.5)),L(S.LinearProgress,"secondaryBg",Ee(S.secondary.main,.5)),L(S.LinearProgress,"errorBg",Ee(S.error.main,.5)),L(S.LinearProgress,"infoBg",Ee(S.info.main,.5)),L(S.LinearProgress,"successBg",Ee(S.success.main,.5)),L(S.LinearProgress,"warningBg",Ee(S.warning.main,.5)),L(S.Skeleton,"bg",`rgba(${A("palette-text-primaryChannel")} / 0.13)`),L(S.Slider,"primaryTrack",Ee(S.primary.main,.5)),L(S.Slider,"secondaryTrack",Ee(S.secondary.main,.5)),L(S.Slider,"errorTrack",Ee(S.error.main,.5)),L(S.Slider,"infoTrack",Ee(S.info.main,.5)),L(S.Slider,"successTrack",Ee(S.success.main,.5)),L(S.Slider,"warningTrack",Ee(S.warning.main,.5));const O=io(S.background.default,.98);L(S.SnackbarContent,"bg",O),L(S.SnackbarContent,"color",Gt(()=>S.getContrastText(O))),L(S.SpeedDialAction,"fabHoverBg",io(S.background.paper,.15)),L(S.StepConnector,"border",A("palette-grey-600")),L(S.StepContent,"border",A("palette-grey-600")),L(S.Switch,"defaultColor",A("palette-grey-300")),L(S.Switch,"defaultDisabledColor",A("palette-grey-600")),L(S.Switch,"primaryDisabledColor",Ee(S.primary.main,.55)),L(S.Switch,"secondaryDisabledColor",Ee(S.secondary.main,.55)),L(S.Switch,"errorDisabledColor",Ee(S.error.main,.55)),L(S.Switch,"infoDisabledColor",Ee(S.info.main,.55)),L(S.Switch,"successDisabledColor",Ee(S.success.main,.55)),L(S.Switch,"warningDisabledColor",Ee(S.warning.main,.55)),L(S.TableCell,"border",Ee(no(S.divider,1),.68)),L(S.Tooltip,"bg",no(S.grey[700],.92))}pn(S.background,"default"),pn(S.background,"paper"),pn(S.common,"background"),pn(S.common,"onBackground"),pn(S,"divider"),Object.keys(S).forEach(O=>{const z=S[O];O!=="tonalOffset"&&z&&typeof z=="object"&&(z.main&&L(S[O],"mainChannel",Gr(Kr(z.main))),z.light&&L(S[O],"lightChannel",Gr(Kr(z.light))),z.dark&&L(S[O],"darkChannel",Gr(Kr(z.dark))),z.contrastText&&L(S[O],"contrastTextChannel",Gr(Kr(z.contrastText))),O==="text"&&(pn(S[O],"primary"),pn(S[O],"secondary")),O==="action"&&(z.active&&pn(S[O],"active"),z.selected&&pn(S[O],"selected")))})}),k=e.reduce((_,S)=>Ct(_,S),k);const b={prefix:s,disableCssColorScheme:r,shouldSkipGeneratingVar:o,getSelector:SD(k)},{vars:w,generateThemeVars:x,generateStyleSheets:R}=W3(k,b);return k.vars=w,Object.entries(k.colorSchemes[k.defaultColorScheme]).forEach(([_,S])=>{k[_]=S}),k.generateThemeVars=x,k.generateStyleSheets=R,k.generateSpacing=function(){return oS(l.spacing,Wd(this))},k.getColorSchemeSelector=q3(a),k.spacing=k.generateSpacing(),k.shouldSkipGeneratingVar=o,k.unstable_sxConfig={..._a,...l==null?void 0:l.unstable_sxConfig},k.unstable_sx=function(S){return mr({sx:S,theme:this})},k.toRuntimeSource=mS,k}function Zm(t,e,n){t.colorSchemes&&n&&(t.colorSchemes[e]={...n!==!0&&n,palette:ef({...n===!0?{}:n.palette,mode:e})})}function xD(t={},...e){const{palette:n,cssVariables:i=!1,colorSchemes:r=n?void 0:{light:!0},defaultColorScheme:s=n==null?void 0:n.mode,...o}=t,a=s||"light",c=r==null?void 0:r[a],l={...r,...n?{[a]:{...typeof c!="boolean"&&c,palette:n}}:void 0};if(i===!1){if(!("colorSchemes"in t))return mu(t,...e);let u=n;"palette"in t||l[a]&&(l[a]!==!0?u=l[a].palette:a==="dark"&&(u={mode:"dark"}));const d=mu({...t,palette:u},...e);return d.defaultColorScheme=a,d.colorSchemes=l,d.palette.mode==="light"&&(d.colorSchemes.light={...l.light!==!0&&l.light,palette:d.palette},Zm(d,"dark",l.dark)),d.palette.mode==="dark"&&(d.colorSchemes.dark={...l.dark!==!0&&l.dark,palette:d.palette},Zm(d,"light",l.light)),d}return!n&&!("light"in l)&&a==="light"&&(l.light=!0),wD({...o,colorSchemes:l,defaultColorScheme:a,...typeof i!="boolean"&&i},...e)}const ED=xD(),PD="$$material";function RD(t){return t!=="ownerState"&&t!=="theme"&&t!=="sx"&&t!=="as"}const AD=t=>RD(t)&&t!=="classes",ID=R3({themeId:PD,defaultTheme:ED,rootShouldForwardProp:AD}),_D=B3;process.env.NODE_ENV!=="production"&&(ve.node,ve.object.isRequired);function MD(t){return U3(t)}function OD(t){return Yd("MuiSvgIcon",t)}C3("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);const DD=t=>{const{color:e,fontSize:n,classes:i}=t,r={root:["root",e!=="inherit"&&`color${Pi(e)}`,`fontSize${Pi(n)}`]};return w6(r,OD,i)},ND=ID("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(t,e)=>{const{ownerState:n}=t;return[e.root,n.color!=="inherit"&&e[`color${Pi(n.color)}`],e[`fontSize${Pi(n.fontSize)}`]]}})(_D(({theme:t})=>{var e,n,i,r,s,o,a,c,l,u,d,h,m,g;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",flexShrink:0,transition:(r=(e=t.transitions)==null?void 0:e.create)==null?void 0:r.call(e,"fill",{duration:(i=(n=(t.vars??t).transitions)==null?void 0:n.duration)==null?void 0:i.shorter}),variants:[{props:f=>!f.hasSvgAsChild,style:{fill:"currentColor"}},{props:{fontSize:"inherit"},style:{fontSize:"inherit"}},{props:{fontSize:"small"},style:{fontSize:((o=(s=t.typography)==null?void 0:s.pxToRem)==null?void 0:o.call(s,20))||"1.25rem"}},{props:{fontSize:"medium"},style:{fontSize:((c=(a=t.typography)==null?void 0:a.pxToRem)==null?void 0:c.call(a,24))||"1.5rem"}},{props:{fontSize:"large"},style:{fontSize:((u=(l=t.typography)==null?void 0:l.pxToRem)==null?void 0:u.call(l,35))||"2.1875rem"}},...Object.entries((t.vars??t).palette).filter(([,f])=>f&&f.main).map(([f])=>{var y,v;return{props:{color:f},style:{color:(v=(y=(t.vars??t).palette)==null?void 0:y[f])==null?void 0:v.main}}}),{props:{color:"action"},style:{color:(h=(d=(t.vars??t).palette)==null?void 0:d.action)==null?void 0:h.active}},{props:{color:"disabled"},style:{color:(g=(m=(t.vars??t).palette)==null?void 0:m.action)==null?void 0:g.disabled}},{props:{color:"inherit"},style:{color:void 0}}]}})),ea=p.forwardRef(function(e,n){const i=MD({props:e,name:"MuiSvgIcon"}),{children:r,className:s,color:o="inherit",component:a="svg",fontSize:c="medium",htmlColor:l,inheritViewBox:u=!1,titleAccess:d,viewBox:h="0 0 24 24",...m}=i,g=p.isValidElement(r)&&r.type==="svg",f={...i,color:o,component:a,fontSize:c,instanceFontSize:e.fontSize,inheritViewBox:u,viewBox:h,hasSvgAsChild:g},y={};u||(y.viewBox=h);const v=DD(f);return E.jsxs(ND,{as:a,className:Jm(v.root,s),focusable:"false",color:l,"aria-hidden":d?void 0:!0,role:d?"img":void 0,ref:n,...y,...m,...g&&r.props,ownerState:f,children:[g?r.props.children:r,d?E.jsx("title",{children:d}):null]})});process.env.NODE_ENV!=="production"&&(ea.propTypes={children:ve.node,classes:ve.object,className:ve.string,color:ve.oneOfType([ve.oneOf(["inherit","action","disabled","primary","secondary","error","info","success","warning"]),ve.string]),component:ve.elementType,fontSize:ve.oneOfType([ve.oneOf(["inherit","large","medium","small"]),ve.string]),htmlColor:ve.string,inheritViewBox:ve.bool,shapeRendering:ve.string,sx:ve.oneOfType([ve.arrayOf(ve.oneOfType([ve.func,ve.object,ve.bool])),ve.func,ve.object]),titleAccess:ve.string,viewBox:ve.string});ea.muiName="SvgIcon";function LD(t,e){function n(i,r){return E.jsx(ea,{"data-testid":process.env.NODE_ENV!=="production"?`${e}Icon`:void 0,ref:r,...i,children:t})}return process.env.NODE_ENV!=="production"&&(n.displayName=`${e}Icon`),n.muiName=ea.muiName,p.memo(p.forwardRef(n))}const VD=LD(E.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");function FD({onClick:t,disabled:e,theme:n}){const i=Ai(n);return E.jsx("button",{className:i.micButton,onClick:t,disabled:e,"aria-label":"Start Session",type:"button",children:E.jsx(VD,{})})}function jD({prompts:t,theme:e}){const n=Ai(e),[i,r]=B.useState(0);return B.useEffect(()=>{const s=setInterval(()=>{r(o=>(o+1)%t.length)},3e3);return()=>clearInterval(s)},[t.length]),E.jsx("div",{className:"w-full min-h-[3rem] h-12 relative overflow-hidden flex items-center justify-center",children:t.map((s,o)=>E.jsx("div",{className:`
|
|
193
193
|
${n.promptSlider}
|
|
194
194
|
${o===i?"opacity-100":"opacity-0"}
|
|
195
195
|
whitespace-pre-line break-words
|
|
196
|
-
`,style:{minHeight:"2.5rem",display:o===i?"block":"none"},children:s},o))})}function UD({statusMessage:t,theme:e}){const n=Ai(e);return E.jsxs("div",{className:"z-10 flex items-center space-x-2 mt-2 pb-2",children:[E.jsx("div",{className:n.statusIndicator}),E.jsx("span",{className:`text-xs ${n.text.muted}`,children:t})]})}const BD=({disabled:t,onStartCall:e,prompts:n=['"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:i="Agent is ready",title:r="Click and Talk",subTitle:s="Ask me anything or give me a task to complete",theme:o="vox"})=>{const a=Ai(o);return E.jsxs("div",{inert:t,className:"flex p-8 flex-col items-center justify-center w-full",children:[E.jsxs("div",{className:"mt-1 flex items-center justify-center mb-6 w-full",children:[E.jsx("div",{className:a.pulseRings.ring1}),E.jsx("div",{className:a.pulseRings.ring2,style:{animationDelay:"0.5s"}}),E.jsx("div",{className:a.pulseRings.ring3,style:{animationDelay:"1s"}}),E.jsx(FD,{onClick:e,disabled:t,theme:o})]}),E.jsxs("div",{className:"text-center flex flex-col items-center gap-y-2 mb-6 w-full",children:[E.jsx("h3",{className:`text-xl font-semibold mb-2 ${a.text.accent}`,children:r}),E.jsx("p",{className:`text-sm leading-relaxed px-4 ${a.text.secondary}`,children:s})]}),E.jsx(jD,{prompts:n,theme:o}),E.jsx(UD,{statusMessage:i,theme:o})]})};function $D({appId:t,appSecret:e,agentId:n,participantName:i,participantMetadata:r,baseUrl:s}){const[o,a]=B.useState(null),[c,l]=B.useState(!1),[u,d]=B.useState(null),h=B.useCallback(()=>{l(!0),d(null),fetch(`${s}/api/live/agent/session`,{method:"POST",headers:{accept:"application/json","X-APP-ID":t,"X-APP-SECRET":e,"Content-Type":"application/json"},body:JSON.stringify({agent_id:n,participant_name:i,participant_metadata:r})}).then(async g=>{if(!g.ok){let f="Failed to fetch connection details";try{const y=await g.json();y&&(y.error?f=y.error:y.detail&&(f=y.detail))}catch{}throw new Error(f)}return g.json()}).then(g=>{a({serverUrl:g.wss_url,participantToken:g.token})}).catch(g=>{d(`${g.name}: ${g.message}`),Jl({title:"Error",description:g.message||"One or more of the provided props (agentId, baseUrl, appSecret, appId) may be invalid or the API is unreachable."})}).finally(()=>l(!1))},[t,e,n,i,r]),p=B.useCallback(()=>{a(null)},[]);return{connectionDetails:o,loading:c,error:u,fetchConnectionDetails:h,resetConnectionDetails:p}}function yS({room:t,onSessionEnd:e,onSessionStart:n,enableConsoleLogging:i=!0,enableLocalStorage:r=!0}={}){const[s,o]=m.useState(null),[a,c]=m.useState([]),[l,u]=m.useState(null),[d,h]=m.useState([]),p=m.useCallback((v,C)=>{const T={timestamp:new Date,event:v,data:C,sessionId:s==null?void 0:s.sessionId,participantId:l==null?void 0:l.identity};if(c(k=>[...k,T]),r){const k=JSON.parse(localStorage.getItem("voxket-session-logs")||"[]");k.push(T),localStorage.setItem("voxket-session-logs",JSON.stringify(k))}return T},[s==null?void 0:s.sessionId,l==null?void 0:l.identity,i,r]);m.useEffect(()=>{if(!t)return;const v=()=>{const _=`session-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,S=new Date,I={sessionId:_,startTime:S,totalMessages:0,connectionIssues:0,participantCount:d.length,events:[]};o(I),p("SESSION_STARTED",{sessionId:_,startTime:S}),n==null||n(_)},C=()=>{if(s){const _=new Date,S=_.getTime()-s.startTime.getTime(),I={...s,endTime:_,duration:S,events:a};p("SESSION_ENDED",{sessionId:s.sessionId,duration:`${Math.round(S/1e3)}s`,totalMessages:s.totalMessages,connectionIssues:s.connectionIssues}),e==null||e(I),o(null),c([])}},T=_=>{p("CONNECTION_STATE_CHANGED",{state:_}),_===pe.Reconnecting&&s&&(o(S=>S?{...S,connectionIssues:S.connectionIssues+1}:null),p("CONNECTION_ISSUE",{type:"reconnecting"}))},k=_=>{p("TRACK_PUBLISHED",{trackKind:_.kind,trackSource:_.source})},b=_=>{p("TRACK_UNPUBLISHED",{trackKind:_.kind,trackSource:_.source})},w=(_,S)=>{s&&o(I=>I?{...I,totalMessages:I.totalMessages+1}:null),p("DATA_RECEIVED",{participantId:S==null?void 0:S.identity,dataSize:_.length})},x=_=>{p("PARTICIPANT_CONNECTED",{participantId:_.identity,participantName:_.name}),h(S=>[...S,_]),s&&o(S=>S?{...S,participantCount:S.participantCount+1}:null)},R=_=>{p("PARTICIPANT_DISCONNECTED",{participantId:_.identity,participantName:_.name}),h(S=>S.filter(I=>I.identity!==_.identity))};return t.localParticipant&&u(t.localParticipant),t.on(O.Connected,v),t.on(O.Disconnected,C),t.on(O.ConnectionStateChanged,T),t.on(O.TrackPublished,k),t.on(O.TrackUnpublished,b),t.on(O.DataReceived,w),t.on(O.ParticipantConnected,x),t.on(O.ParticipantDisconnected,R),()=>{t.off(O.Connected,v),t.off(O.Disconnected,C),t.off(O.ConnectionStateChanged,T),t.off(O.TrackPublished,k),t.off(O.TrackUnpublished,b),t.off(O.DataReceived,w),t.off(O.ParticipantConnected,x),t.off(O.ParticipantDisconnected,R)}},[t,s,a,d.length,p,e,n]);const g=m.useCallback(()=>r?JSON.parse(localStorage.getItem("voxket-session-logs")||"[]"):a,[a,r]),f=m.useCallback(()=>{r&&localStorage.removeItem("voxket-session-logs"),c([])},[r]),y=m.useCallback(()=>{const v=g(),C=JSON.stringify(v,null,2),T="data:application/json;charset=utf-8,"+encodeURIComponent(C),k=`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,b=document.createElement("a");b.setAttribute("href",T),b.setAttribute("download",k),b.click()},[g]);return{sessionMetrics:s,sessionLogs:a,logEvent:p,getSessionLogs:g,clearSessionLogs:f,exportSessionLogs:y}}const HD=Zn.create(h6),zD=Zn.create(BD);function WD({children:t,theme:e}){const n=Ai(e);return E.jsxs("div",{id:"voice-card",className:n.card,children:[E.jsx("div",{className:n.cardTopGradient}),E.jsx("div",{className:n.cardRadial}),E.jsx("div",{className:n.cardPurpleBlur}),E.jsx("div",{className:n.cardPinkBlur}),t,E.jsx("div",{className:n.cardPulse1}),E.jsx("div",{className:n.cardPulse2,style:{animationDelay:"1s"}})]})}function qD(t){if(typeof window>"u")return null;const{agentId:e,participantName:n,baseUrl:i,appSecret:r,appId:s,prompts:o,statusMessage:a,welcomeTitle:c,welcomeSubTitle:l,className:u,width:d,height:h,loadingText:p,suportsChatInput:g=!0,suportsVideoInput:f=!0,suportsScreenShare:y=!0,theme:v="vox",onSessionStart:C,onSessionEnd:T,enableSessionLogging:k=!0,onSessionLogsUpdate:b,onSessionMetricsUpdate:w}=t,[x,R]=m.useState(!1),[_,S]=m.useState(null),[I,N]=m.useState(!1),[z,K]=m.useState(e||""),[se,Q]=m.useState(n||"User"),{connectionDetails:Y,fetchConnectionDetails:F,resetConnectionDetails:ce,error:A}=$D({appId:s,appSecret:r,agentId:z,participantName:se||"User",participantMetadata:{user_id:""},baseUrl:i});m.useEffect(()=>{Y&&!_&&S(Y)},[Y,_]),m.useEffect(()=>{A&&R(!1)},[A]);const j={suportsChatInput:g,suportsVideoInput:f,suportsScreenShare:y},W=m.useMemo(()=>new wn,[]),{sessionMetrics:Z,sessionLogs:J,logEvent:re,getSessionLogs:oe,clearSessionLogs:V,exportSessionLogs:q}=yS({room:W,onSessionStart:C,onSessionEnd:T,enableConsoleLogging:k,enableLocalStorage:k});m.useEffect(()=>{b&&b(J)},[J,b]),m.useEffect(()=>{w&&Z&&w(Z)},[Z,w]),m.useEffect(()=>{const Se=()=>{S(null),ce(),N(!1),R(!1)},Qe=Dt=>{Jl({title:"Allow access to your microphone/camera",description:`${Dt.name}: ${Dt.message}`})};return W.on(O.MediaDevicesError,Qe),W.on(O.Disconnected,Se),()=>{W.off(O.Disconnected,Se),W.off(O.MediaDevicesError,Qe)}},[W,ce]),m.useEffect(()=>(x&&W.state==="disconnected"&&_&&Promise.all([W.localParticipant.setMicrophoneEnabled(!0,void 0,{preConnectBuffer:!0}),W.connect(_.serverUrl,_.participantToken)]).catch(Se=>{Jl({title:"There was an error connecting to the agent",description:`${Se.name}: ${Se.message}`})}),()=>{W.disconnect()}),[W,x,_]);const te=()=>{R(!0),re("USER_STARTED_SESSION",{agentId:z,participantName:se}),!_&&!I&&F()};let ee="w-96",ae="h-[25rem]",H={};return d&&(d.startsWith("w-")?ee=d:(H.width=d,ee="")),h&&(h.startsWith("h-")?ae=h:(H.height=h,ae="")),E.jsx("div",{className:`voxket-widget-root theme-${v} flex items-center justify-center min-h-fit ${ee} ${ae} ${u}`,style:{...H,scrollMargin:0,scrollPadding:0,contain:"layout style paint"},children:E.jsxs(WD,{theme:v,children:[E.jsx(z0,{mode:"wait",children:!x&&E.jsx(zD,{agentId:z,participantName:se||"",onAgentIdChange:K,onParticipantNameChange:Q,onStartCall:te,disabled:x||I,prompts:o,statusMessage:a,title:c,subTitle:l,theme:v,initial:{opacity:0,y:0},animate:{opacity:1,y:0},exit:{opacity:0,y:40},transition:{duration:.4,ease:"easeInOut"}},"welcome")}),x&&E.jsxs(Ed.Provider,{value:W,children:[E.jsx(o4,{}),E.jsx(XA,{label:"Start Audio"}),E.jsx(HD,{loadingText:p,participantName:se||"User",capabilities:j,sessionStarted:x,disabled:!x,theme:v,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.4,ease:"easeInOut"}},"session-view")]})]})})}function GD({logs:t,onClear:e,onExport:n}){const[i,r]=B.useState(!1),[s,o]=B.useState(""),a=t.filter(c=>!s||c.event.toLowerCase().includes(s.toLowerCase()));return i?E.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",children:E.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[80vh] flex flex-col m-4",children:[E.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[E.jsxs("h2",{className:"text-lg font-semibold",children:["Session Logs (",t.length,")"]}),E.jsxs("div",{className:"flex items-center gap-2",children:[E.jsx("input",{type:"text",placeholder:"Filter events...",value:s,onChange:c=>o(c.target.value),className:"px-3 py-1 border rounded text-sm"}),E.jsx("button",{onClick:e,className:"px-3 py-1 bg-red-600 text-white rounded text-sm hover:bg-red-700",children:"Clear"}),E.jsx("button",{onClick:n,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700",children:"Export"}),E.jsx("button",{onClick:()=>r(!1),className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700",children:"Close"})]})]}),E.jsx("div",{className:"flex-1 overflow-auto p-4",children:a.length===0?E.jsx("p",{className:"text-gray-500 text-center py-8",children:"No logs found"}):E.jsx("div",{className:"space-y-2",children:a.map((c,l)=>E.jsxs("div",{className:"border rounded p-3 text-sm",children:[E.jsxs("div",{className:"flex items-center justify-between mb-1",children:[E.jsx("span",{className:"font-semibold text-blue-600",children:c.event}),E.jsx("span",{className:"text-gray-500 text-xs",children:new Date(c.timestamp).toLocaleTimeString()})]}),c.sessionId&&E.jsxs("div",{className:"text-xs text-gray-600 mb-1",children:["Session: ",c.sessionId]}),c.data&&E.jsx("div",{className:"bg-gray-50 p-2 rounded text-xs",children:E.jsx("pre",{className:"whitespace-pre-wrap overflow-auto",children:JSON.stringify(c.data,null,2)})})]},l))})})]})}):E.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 (",t.length,")"]})}function KD({metrics:t}){return t?E.jsxs("div",{className:"bg-gray-100 p-4 rounded-lg",children:[E.jsx("h3",{className:"font-semibold mb-2",children:"Current Session"}),E.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Session ID:"}),E.jsx("div",{className:"font-mono text-xs",children:t.sessionId})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Start Time:"}),E.jsx("div",{children:new Date(t.startTime).toLocaleString()})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Messages:"}),E.jsx("div",{children:t.totalMessages})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Participants:"}),E.jsx("div",{children:t.participantCount})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Connection Issues:"}),E.jsx("div",{children:t.connectionIssues})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Duration:"}),E.jsxs("div",{children:[Math.round((Date.now()-new Date(t.startTime).getTime())/1e3),"s"]})]})]})]}):null}const ZD=t=>typeof window>"u"?null:B.createElement(qD,t),YD=(t,e)=>{const n=JSON.stringify(t,null,2),i="data:application/json;charset=utf-8,"+encodeURIComponent(n),r=e||`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,s=document.createElement("a");s.setAttribute("href",i),s.setAttribute("download",r),s.click()},JD=()=>{try{return JSON.parse(localStorage.getItem("voxket-session-logs")||"[]")}catch{return[]}},XD=()=>{localStorage.removeItem("voxket-session-logs")};exports.SessionLogViewer=GD;exports.SessionMetricsComponent=KD;exports.clearSessionLogsFromStorage=XD;exports.default=ZD;exports.exportSessionLogsToFile=YD;exports.getSessionLogsFromStorage=JD;exports.useSessionLogging=yS;
|
|
196
|
+
`,style:{minHeight:"2.5rem",display:o===i?"block":"none"},children:s},o))})}function UD({statusMessage:t,theme:e}){const n=Ai(e);return E.jsxs("div",{className:"z-10 flex items-center space-x-2 mt-2 pb-2",children:[E.jsx("div",{className:n.statusIndicator}),E.jsx("span",{className:`text-xs ${n.text.muted}`,children:t})]})}const BD=({disabled:t,onStartCall:e,prompts:n=['"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:i="Agent is ready",title:r="Click and Talk",subTitle:s="Ask me anything or give me a task to complete",theme:o="vox"})=>{const a=Ai(o);return E.jsxs("div",{inert:t,className:"flex p-8 flex-col items-center justify-center w-full",children:[E.jsxs("div",{className:"mt-1 flex items-center justify-center mb-6 w-full",children:[E.jsx("div",{className:a.pulseRings.ring1}),E.jsx("div",{className:a.pulseRings.ring2,style:{animationDelay:"0.5s"}}),E.jsx("div",{className:a.pulseRings.ring3,style:{animationDelay:"1s"}}),E.jsx(FD,{onClick:e,disabled:t,theme:o})]}),E.jsxs("div",{className:"text-center flex flex-col items-center gap-y-2 mb-6 w-full",children:[E.jsx("h3",{className:`text-xl font-semibold mb-2 ${a.text.accent}`,children:r}),E.jsx("p",{className:`text-sm leading-relaxed px-4 ${a.text.secondary}`,children:s})]}),E.jsx(jD,{prompts:n,theme:o}),E.jsx(UD,{statusMessage:i,theme:o})]})};function $D({appId:t,appSecret:e,agentId:n,participantName:i,participantMetadata:r,baseUrl:s}){const[o,a]=B.useState(null),[c,l]=B.useState(!1),[u,d]=B.useState(null),h=B.useCallback(()=>{l(!0),d(null),fetch(`${s}/api/live/agent/session`,{method:"POST",headers:{accept:"application/json","X-APP-ID":t,"X-APP-SECRET":e,"Content-Type":"application/json"},body:JSON.stringify({agent_id:n,participant_name:i,participant_metadata:r})}).then(async g=>{if(!g.ok){let f="Failed to fetch connection details";try{const y=await g.json();y&&(y.error?f=y.error:y.detail&&(f=y.detail))}catch{}throw new Error(f)}return g.json()}).then(g=>{a({serverUrl:g.wss_url,participantToken:g.token,voxketSessionId:g.session_id})}).catch(g=>{d(`${g.name}: ${g.message}`),Jl({title:"Error",description:g.message||"One or more of the provided props (agentId, baseUrl, appSecret, appId) may be invalid or the API is unreachable."})}).finally(()=>l(!1))},[t,e,n,i,r]),m=B.useCallback(()=>{a(null)},[]);return{connectionDetails:o,loading:c,error:u,fetchConnectionDetails:h,resetConnectionDetails:m}}function yS({room:t,onSessionEnd:e,onSessionStart:n,enableConsoleLogging:i=!0,enableLocalStorage:r=!0,voxketSessionId:s}={}){const[o,a]=p.useState(null),[c,l]=p.useState([]),[u,d]=p.useState(null),[h,m]=p.useState([]),g=p.useCallback((C,T)=>{const k={timestamp:new Date,event:C,data:T,sessionId:o==null?void 0:o.sessionId,participantId:u==null?void 0:u.identity};if(l(b=>[...b,k]),r){const b=JSON.parse(localStorage.getItem("voxket-session-logs")||"[]");b.push(k),localStorage.setItem("voxket-session-logs",JSON.stringify(b))}return k},[o==null?void 0:o.sessionId,u==null?void 0:u.identity,i,r]);p.useEffect(()=>{if(!t)return;const C=()=>{const S=s||`session-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,A=new Date,O={sessionId:S,startTime:A,totalMessages:0,connectionIssues:0,participantCount:h.length,events:[]};a(O),g("SESSION_STARTED",{sessionId:S,startTime:A}),n==null||n(S)},T=()=>{if(o){const S=new Date,A=S.getTime()-o.startTime.getTime(),O={...o,endTime:S,duration:A,events:c};g("SESSION_ENDED",{sessionId:o.sessionId,duration:`${Math.round(A/1e3)}s`,totalMessages:o.totalMessages,connectionIssues:o.connectionIssues}),e==null||e(O),a(null),l([])}},k=S=>{g("CONNECTION_STATE_CHANGED",{state:S}),S===pe.Reconnecting&&o&&(a(A=>A?{...A,connectionIssues:A.connectionIssues+1}:null),g("CONNECTION_ISSUE",{type:"reconnecting"}))},b=S=>{g("TRACK_PUBLISHED",{trackKind:S.kind,trackSource:S.source})},w=S=>{g("TRACK_UNPUBLISHED",{trackKind:S.kind,trackSource:S.source})},x=(S,A)=>{o&&a(O=>O?{...O,totalMessages:O.totalMessages+1}:null),g("DATA_RECEIVED",{participantId:A==null?void 0:A.identity,dataSize:S.length})},R=S=>{g("PARTICIPANT_CONNECTED",{participantId:S.identity,participantName:S.name}),m(A=>[...A,S]),o&&a(A=>A?{...A,participantCount:A.participantCount+1}:null)},_=S=>{g("PARTICIPANT_DISCONNECTED",{participantId:S.identity,participantName:S.name}),m(A=>A.filter(O=>O.identity!==S.identity))};return t.localParticipant&&d(t.localParticipant),t.on(D.Connected,C),t.on(D.Disconnected,T),t.on(D.ConnectionStateChanged,k),t.on(D.TrackPublished,b),t.on(D.TrackUnpublished,w),t.on(D.DataReceived,x),t.on(D.ParticipantConnected,R),t.on(D.ParticipantDisconnected,_),()=>{t.off(D.Connected,C),t.off(D.Disconnected,T),t.off(D.ConnectionStateChanged,k),t.off(D.TrackPublished,b),t.off(D.TrackUnpublished,w),t.off(D.DataReceived,x),t.off(D.ParticipantConnected,R),t.off(D.ParticipantDisconnected,_)}},[t,o,c,h.length,g,e,n]);const f=p.useCallback(()=>r?JSON.parse(localStorage.getItem("voxket-session-logs")||"[]"):c,[c,r]),y=p.useCallback(()=>{r&&localStorage.removeItem("voxket-session-logs"),l([])},[r]),v=p.useCallback(()=>{const C=f(),T=JSON.stringify(C,null,2),k="data:application/json;charset=utf-8,"+encodeURIComponent(T),b=`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,w=document.createElement("a");w.setAttribute("href",k),w.setAttribute("download",b),w.click()},[f]);return{sessionMetrics:o,sessionLogs:c,logEvent:g,getSessionLogs:f,clearSessionLogs:y,exportSessionLogs:v}}const HD=Zn.create(h6),zD=Zn.create(BD);function WD({children:t,theme:e}){const n=Ai(e);return E.jsxs("div",{id:"voice-card",className:n.card,children:[E.jsx("div",{className:n.cardTopGradient}),E.jsx("div",{className:n.cardRadial}),E.jsx("div",{className:n.cardPurpleBlur}),E.jsx("div",{className:n.cardPinkBlur}),t,E.jsx("div",{className:n.cardPulse1}),E.jsx("div",{className:n.cardPulse2,style:{animationDelay:"1s"}})]})}function qD(t){if(typeof window>"u")return null;const{agentId:e,participantName:n,baseUrl:i,appSecret:r,appId:s,prompts:o,statusMessage:a,welcomeTitle:c,welcomeSubTitle:l,className:u,width:d,height:h,loadingText:m,suportsChatInput:g=!0,suportsVideoInput:f=!0,suportsScreenShare:y=!0,theme:v="vox",onSessionStart:C,onSessionEnd:T,enableSessionLogging:k=!0,onSessionLogsUpdate:b,onSessionMetricsUpdate:w}=t,[x,R]=p.useState(!1),[_,S]=p.useState(null),[A,O]=p.useState(!1),[z,K]=p.useState(e||""),[se,Q]=p.useState(n||"User"),{connectionDetails:Z,fetchConnectionDetails:F,resetConnectionDetails:ce,error:I}=$D({appId:s,appSecret:r,agentId:z,participantName:se||"User",participantMetadata:{user_id:""},baseUrl:i});p.useEffect(()=>{Z&&!_&&(S(Z),console.log("Fetched connection details:",Z.voxketSessionId))},[Z,_]),p.useEffect(()=>{I&&R(!1)},[I]);const j={suportsChatInput:g,suportsVideoInput:f,suportsScreenShare:y},W=p.useMemo(()=>new wn,[]),{sessionMetrics:Y,sessionLogs:J,logEvent:re,getSessionLogs:oe,clearSessionLogs:V,exportSessionLogs:q}=yS({room:W,onSessionStart:C,onSessionEnd:T,enableConsoleLogging:k,enableLocalStorage:k,voxketSessionId:Z==null?void 0:Z.voxketSessionId});p.useEffect(()=>{b&&b(J)},[J,b]),p.useEffect(()=>{w&&Y&&w(Y)},[Y,w]),p.useEffect(()=>{const Se=()=>{S(null),ce(),O(!1),R(!1)},Qe=Dt=>{Jl({title:"Allow access to your microphone/camera",description:`${Dt.name}: ${Dt.message}`})};return W.on(D.MediaDevicesError,Qe),W.on(D.Disconnected,Se),()=>{W.off(D.Disconnected,Se),W.off(D.MediaDevicesError,Qe)}},[W,ce]),p.useEffect(()=>(x&&W.state==="disconnected"&&_&&Promise.all([W.localParticipant.setMicrophoneEnabled(!0,void 0,{preConnectBuffer:!0}),W.connect(_.serverUrl,_.participantToken)]).catch(Se=>{Jl({title:"There was an error connecting to the agent",description:`${Se.name}: ${Se.message}`})}),()=>{W.disconnect()}),[W,x,_]);const te=()=>{R(!0),re("USER_STARTED_SESSION",{agentId:z,participantName:se}),!_&&!A&&F()};let ee="w-96",ae="h-[25rem]",H={};return d&&(d.startsWith("w-")?ee=d:(H.width=d,ee="")),h&&(h.startsWith("h-")?ae=h:(H.height=h,ae="")),E.jsx("div",{className:`voxket-widget-root theme-${v} flex items-center justify-center min-h-fit ${ee} ${ae} ${u}`,style:{...H,scrollMargin:0,scrollPadding:0,contain:"layout style paint"},children:E.jsxs(WD,{theme:v,children:[E.jsx(z0,{mode:"wait",children:!x&&E.jsx(zD,{agentId:z,participantName:se||"",onAgentIdChange:K,onParticipantNameChange:Q,onStartCall:te,disabled:x||A,prompts:o,statusMessage:a,title:c,subTitle:l,theme:v,initial:{opacity:0,y:0},animate:{opacity:1,y:0},exit:{opacity:0,y:40},transition:{duration:.4,ease:"easeInOut"}},"welcome")}),x&&E.jsxs(Ed.Provider,{value:W,children:[E.jsx(o4,{}),E.jsx(XA,{label:"Start Audio"}),E.jsx(HD,{loadingText:m,participantName:se||"User",capabilities:j,sessionStarted:x,disabled:!x,theme:v,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.4,ease:"easeInOut"}},"session-view")]})]})})}function GD({logs:t,onClear:e,onExport:n}){const[i,r]=B.useState(!1),[s,o]=B.useState(""),a=t.filter(c=>!s||c.event.toLowerCase().includes(s.toLowerCase()));return i?E.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",children:E.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[80vh] flex flex-col m-4",children:[E.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[E.jsxs("h2",{className:"text-lg font-semibold",children:["Session Logs (",t.length,")"]}),E.jsxs("div",{className:"flex items-center gap-2",children:[E.jsx("input",{type:"text",placeholder:"Filter events...",value:s,onChange:c=>o(c.target.value),className:"px-3 py-1 border rounded text-sm"}),E.jsx("button",{onClick:e,className:"px-3 py-1 bg-red-600 text-white rounded text-sm hover:bg-red-700",children:"Clear"}),E.jsx("button",{onClick:n,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700",children:"Export"}),E.jsx("button",{onClick:()=>r(!1),className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700",children:"Close"})]})]}),E.jsx("div",{className:"flex-1 overflow-auto p-4",children:a.length===0?E.jsx("p",{className:"text-gray-500 text-center py-8",children:"No logs found"}):E.jsx("div",{className:"space-y-2",children:a.map((c,l)=>E.jsxs("div",{className:"border rounded p-3 text-sm",children:[E.jsxs("div",{className:"flex items-center justify-between mb-1",children:[E.jsx("span",{className:"font-semibold text-blue-600",children:c.event}),E.jsx("span",{className:"text-gray-500 text-xs",children:new Date(c.timestamp).toLocaleTimeString()})]}),c.sessionId&&E.jsxs("div",{className:"text-xs text-gray-600 mb-1",children:["Session: ",c.sessionId]}),c.data&&E.jsx("div",{className:"bg-gray-50 p-2 rounded text-xs",children:E.jsx("pre",{className:"whitespace-pre-wrap overflow-auto",children:JSON.stringify(c.data,null,2)})})]},l))})})]})}):E.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 (",t.length,")"]})}function KD({metrics:t}){return t?E.jsxs("div",{className:"bg-gray-100 p-4 rounded-lg",children:[E.jsx("h3",{className:"font-semibold mb-2",children:"Current Session"}),E.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Session ID:"}),E.jsx("div",{className:"font-mono text-xs",children:t.sessionId})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Start Time:"}),E.jsx("div",{children:new Date(t.startTime).toLocaleString()})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Messages:"}),E.jsx("div",{children:t.totalMessages})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Participants:"}),E.jsx("div",{children:t.participantCount})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Connection Issues:"}),E.jsx("div",{children:t.connectionIssues})]}),E.jsxs("div",{children:[E.jsx("span",{className:"text-gray-600",children:"Duration:"}),E.jsxs("div",{children:[Math.round((Date.now()-new Date(t.startTime).getTime())/1e3),"s"]})]})]})]}):null}const ZD=t=>typeof window>"u"?null:B.createElement(qD,t),YD=(t,e)=>{const n=JSON.stringify(t,null,2),i="data:application/json;charset=utf-8,"+encodeURIComponent(n),r=e||`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,s=document.createElement("a");s.setAttribute("href",i),s.setAttribute("download",r),s.click()},JD=()=>{try{return JSON.parse(localStorage.getItem("voxket-session-logs")||"[]")}catch{return[]}},XD=()=>{localStorage.removeItem("voxket-session-logs")};exports.SessionLogViewer=GD;exports.SessionMetricsComponent=KD;exports.clearSessionLogsFromStorage=XD;exports.default=ZD;exports.exportSessionLogsToFile=YD;exports.getSessionLogsFromStorage=JD;exports.useSessionLogging=yS;
|