siam-ui-utils 2.2.24 → 2.2.26

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.
@@ -0,0 +1,262 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const K=require("react"),Np=require("react-dom");function g0(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const r in t)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,n.get?n:{enumerable:!0,get:()=>t[r]})}}return e.default=t,Object.freeze(e)}function tE(t,e){for(var r=0;r<e.length;r++){const n=e[r];if(typeof n!="string"&&!Array.isArray(n)){for(const i in n)if(i!=="default"&&!(i in t)){const s=Object.getOwnPropertyDescriptor(n,i);s&&Object.defineProperty(t,i,s.get?s:{enumerable:!0,get:()=>n[i]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}const M=g0(K),v0=g0(Np);var rE=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Xn(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Va={exports:{}},_o={};var um;function nE(){if(um)return _o;um=1;var t=K,e=Symbol.for("react.element"),r=Symbol.for("react.fragment"),n=Object.prototype.hasOwnProperty,i=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function o(a,c,l){var d,p={},m=null,g=null;l!==void 0&&(m=""+l),c.key!==void 0&&(m=""+c.key),c.ref!==void 0&&(g=c.ref);for(d in c)n.call(c,d)&&!s.hasOwnProperty(d)&&(p[d]=c[d]);if(a&&a.defaultProps)for(d in c=a.defaultProps,c)p[d]===void 0&&(p[d]=c[d]);return{$$typeof:e,type:a,key:m,ref:g,props:p,_owner:i.current}}return _o.Fragment=r,_o.jsx=o,_o.jsxs=o,_o}var Eo={},fm;function iE(){if(fm)return Eo;fm=1;var t={};return t.NODE_ENV!=="production"&&function(){var e=K,r=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),p=Symbol.for("react.suspense_list"),m=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),v=Symbol.for("react.offscreen"),S=Symbol.iterator,C="@@iterator";function w(j){if(j===null||typeof j!="object")return null;var Q=S&&j[S]||j[C];return typeof Q=="function"?Q:null}var y=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function f(j){{for(var Q=arguments.length,ne=new Array(Q>1?Q-1:0),Ce=1;Ce<Q;Ce++)ne[Ce-1]=arguments[Ce];u("error",j,ne)}}function u(j,Q,ne){{var Ce=y.ReactDebugCurrentFrame,Le=Ce.getStackAddendum();Le!==""&&(Q+="%s",ne=ne.concat([Le]));var Ge=ne.map(function(je){return String(je)});Ge.unshift("Warning: "+Q),Function.prototype.apply.call(console[j],console,Ge)}}var h=!1,b=!1,A=!1,R=!1,_=!1,E;E=Symbol.for("react.module.reference");function P(j){return!!(typeof j=="string"||typeof j=="function"||j===i||j===o||_||j===s||j===d||j===p||R||j===v||h||b||A||typeof j=="object"&&j!==null&&(j.$$typeof===g||j.$$typeof===m||j.$$typeof===a||j.$$typeof===c||j.$$typeof===l||j.$$typeof===E||j.getModuleId!==void 0))}function T(j,Q,ne){var Ce=j.displayName;if(Ce)return Ce;var Le=Q.displayName||Q.name||"";return Le!==""?ne+"("+Le+")":ne}function k(j){return j.displayName||"Context"}function F(j){if(j==null)return null;if(typeof j.tag=="number"&&f("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof j=="function")return j.displayName||j.name||null;if(typeof j=="string")return j;switch(j){case i:return"Fragment";case n:return"Portal";case o:return"Profiler";case s:return"StrictMode";case d:return"Suspense";case p:return"SuspenseList"}if(typeof j=="object")switch(j.$$typeof){case c:var Q=j;return k(Q)+".Consumer";case a:var ne=j;return k(ne._context)+".Provider";case l:return T(j,j.render,"ForwardRef");case m:var Ce=j.displayName||null;return Ce!==null?Ce:F(j.type)||"Memo";case g:{var Le=j,Ge=Le._payload,je=Le._init;try{return F(je(Ge))}catch{return null}}}return null}var X=Object.assign,O=0,L,B,z,Z,V,G,te;function re(){}re.__reactDisabledLog=!0;function ie(){{if(O===0){L=console.log,B=console.info,z=console.warn,Z=console.error,V=console.group,G=console.groupCollapsed,te=console.groupEnd;var j={configurable:!0,enumerable:!0,value:re,writable:!0};Object.defineProperties(console,{info:j,log:j,warn:j,error:j,group:j,groupCollapsed:j,groupEnd:j})}O++}}function ce(){{if(O--,O===0){var j={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:X({},j,{value:L}),info:X({},j,{value:B}),warn:X({},j,{value:z}),error:X({},j,{value:Z}),group:X({},j,{value:V}),groupCollapsed:X({},j,{value:G}),groupEnd:X({},j,{value:te})})}O<0&&f("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var se=y.ReactCurrentDispatcher,ae;function le(j,Q,ne){{if(ae===void 0)try{throw Error()}catch(Le){var Ce=Le.stack.trim().match(/\n( *(at )?)/);ae=Ce&&Ce[1]||""}return`
2
+ `+ae+j}}var ye=!1,me;{var ke=typeof WeakMap=="function"?WeakMap:Map;me=new ke}function U(j,Q){if(!j||ye)return"";{var ne=me.get(j);if(ne!==void 0)return ne}var Ce;ye=!0;var Le=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Ge;Ge=se.current,se.current=null,ie();try{if(Q){var je=function(){throw Error()};if(Object.defineProperty(je.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(je,[])}catch(J){Ce=J}Reflect.construct(j,[],je)}else{try{je.call()}catch(J){Ce=J}j.call(je.prototype)}}else{try{throw Error()}catch(J){Ce=J}j()}}catch(J){if(J&&Ce&&typeof J.stack=="string"){for(var Oe=J.stack.split(`
3
+ `),Mt=Ce.stack.split(`
4
+ `),st=Oe.length-1,ot=Mt.length-1;st>=1&&ot>=0&&Oe[st]!==Mt[ot];)ot--;for(;st>=1&&ot>=0;st--,ot--)if(Oe[st]!==Mt[ot]){if(st!==1||ot!==1)do if(st--,ot--,ot<0||Oe[st]!==Mt[ot]){var Xe=`
5
+ `+Oe[st].replace(" at new "," at ");return j.displayName&&Xe.includes("<anonymous>")&&(Xe=Xe.replace("<anonymous>",j.displayName)),typeof j=="function"&&me.set(j,Xe),Xe}while(st>=1&&ot>=0);break}}}finally{ye=!1,se.current=Ge,ce(),Error.prepareStackTrace=Le}var ir=j?j.displayName||j.name:"",fr=ir?le(ir):"";return typeof j=="function"&&me.set(j,fr),fr}function We(j,Q,ne){return U(j,!1)}function Ye(j){var Q=j.prototype;return!!(Q&&Q.isReactComponent)}function Ot(j,Q,ne){if(j==null)return"";if(typeof j=="function")return U(j,Ye(j));if(typeof j=="string")return le(j);switch(j){case d:return le("Suspense");case p:return le("SuspenseList")}if(typeof j=="object")switch(j.$$typeof){case l:return We(j.render);case m:return Ot(j.type,Q,ne);case g:{var Ce=j,Le=Ce._payload,Ge=Ce._init;try{return Ot(Ge(Le),Q,ne)}catch{}}}return""}var qt=Object.prototype.hasOwnProperty,Ct={},rr=y.ReactDebugCurrentFrame;function dr(j){if(j){var Q=j._owner,ne=Ot(j.type,j._source,Q?Q.type:null);rr.setExtraStackFrame(ne)}else rr.setExtraStackFrame(null)}function Ur(j,Q,ne,Ce,Le){{var Ge=Function.call.bind(qt);for(var je in j)if(Ge(j,je)){var Oe=void 0;try{if(typeof j[je]!="function"){var Mt=Error((Ce||"React class")+": "+ne+" type `"+je+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof j[je]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Mt.name="Invariant Violation",Mt}Oe=j[je](Q,je,Ce,ne,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(st){Oe=st}Oe&&!(Oe instanceof Error)&&(dr(Le),f("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",Ce||"React class",ne,je,typeof Oe),dr(null)),Oe instanceof Error&&!(Oe.message in Ct)&&(Ct[Oe.message]=!0,dr(Le),f("Failed %s type: %s",ne,Oe.message),dr(null))}}}var xt=Array.isArray;function nt(j){return xt(j)}function mt(j){{var Q=typeof Symbol=="function"&&Symbol.toStringTag,ne=Q&&j[Symbol.toStringTag]||j.constructor.name||"Object";return ne}}function Mr(j){try{return Ie(j),!1}catch{return!0}}function Ie(j){return""+j}function Me(j){if(Mr(j))return f("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",mt(j)),Ie(j)}var be=y.ReactCurrentOwner,Ve={key:!0,ref:!0,__self:!0,__source:!0},At,Dt;function Be(j){if(qt.call(j,"ref")){var Q=Object.getOwnPropertyDescriptor(j,"ref").get;if(Q&&Q.isReactWarning)return!1}return j.ref!==void 0}function Se(j){if(qt.call(j,"key")){var Q=Object.getOwnPropertyDescriptor(j,"key").get;if(Q&&Q.isReactWarning)return!1}return j.key!==void 0}function kt(j,Q){typeof j.ref=="string"&&be.current}function Jt(j,Q){{var ne=function(){At||(At=!0,f("%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://reactjs.org/link/special-props)",Q))};ne.isReactWarning=!0,Object.defineProperty(j,"key",{get:ne,configurable:!0})}}function Nr(j,Q){{var ne=function(){Dt||(Dt=!0,f("%s: `ref` 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://reactjs.org/link/special-props)",Q))};ne.isReactWarning=!0,Object.defineProperty(j,"ref",{get:ne,configurable:!0})}}var Zn=function(j,Q,ne,Ce,Le,Ge,je){var Oe={$$typeof:r,type:j,key:Q,ref:ne,props:je,_owner:Ge};return Oe._store={},Object.defineProperty(Oe._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Oe,"_self",{configurable:!1,enumerable:!1,writable:!1,value:Ce}),Object.defineProperty(Oe,"_source",{configurable:!1,enumerable:!1,writable:!1,value:Le}),Object.freeze&&(Object.freeze(Oe.props),Object.freeze(Oe)),Oe};function Pn(j,Q,ne,Ce,Le){{var Ge,je={},Oe=null,Mt=null;ne!==void 0&&(Me(ne),Oe=""+ne),Se(Q)&&(Me(Q.key),Oe=""+Q.key),Be(Q)&&(Mt=Q.ref,kt(Q,Le));for(Ge in Q)qt.call(Q,Ge)&&!Ve.hasOwnProperty(Ge)&&(je[Ge]=Q[Ge]);if(j&&j.defaultProps){var st=j.defaultProps;for(Ge in st)je[Ge]===void 0&&(je[Ge]=st[Ge])}if(Oe||Mt){var ot=typeof j=="function"?j.displayName||j.name||"Unknown":j;Oe&&Jt(je,ot),Mt&&Nr(je,ot)}return Zn(j,Oe,Mt,Le,Ce,be.current,je)}}var qn=y.ReactCurrentOwner,Ni=y.ReactDebugCurrentFrame;function nr(j){if(j){var Q=j._owner,ne=Ot(j.type,j._source,Q?Q.type:null);Ni.setExtraStackFrame(ne)}else Ni.setExtraStackFrame(null)}var Wr;Wr=!1;function Jn(j){return typeof j=="object"&&j!==null&&j.$$typeof===r}function Li(){{if(qn.current){var j=F(qn.current.type);if(j)return`
6
+
7
+ Check the render method of \``+j+"`."}return""}}function Ft(j){return""}var Sr={};function Ro(j){{var Q=Li();if(!Q){var ne=typeof j=="string"?j:j.displayName||j.name;ne&&(Q=`
8
+
9
+ Check the top-level render call using <`+ne+">.")}return Q}}function Kn(j,Q){{if(!j._store||j._store.validated||j.key!=null)return;j._store.validated=!0;var ne=Ro(Q);if(Sr[ne])return;Sr[ne]=!0;var Ce="";j&&j._owner&&j._owner!==qn.current&&(Ce=" It was passed a child from "+F(j._owner.type)+"."),nr(j),f('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',ne,Ce),nr(null)}}function pi(j,Q){{if(typeof j!="object")return;if(nt(j))for(var ne=0;ne<j.length;ne++){var Ce=j[ne];Jn(Ce)&&Kn(Ce,Q)}else if(Jn(j))j._store&&(j._store.validated=!0);else if(j){var Le=w(j);if(typeof Le=="function"&&Le!==j.entries)for(var Ge=Le.call(j),je;!(je=Ge.next()).done;)Jn(je.value)&&Kn(je.value,Q)}}}function hi(j){{var Q=j.type;if(Q==null||typeof Q=="string")return;var ne;if(typeof Q=="function")ne=Q.propTypes;else if(typeof Q=="object"&&(Q.$$typeof===l||Q.$$typeof===m))ne=Q.propTypes;else return;if(ne){var Ce=F(Q);Ur(ne,j.props,"prop",Ce,j)}else if(Q.PropTypes!==void 0&&!Wr){Wr=!0;var Le=F(Q);f("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",Le||"Unknown")}typeof Q.getDefaultProps=="function"&&!Q.getDefaultProps.isReactClassApproved&&f("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Tn(j){{for(var Q=Object.keys(j.props),ne=0;ne<Q.length;ne++){var Ce=Q[ne];if(Ce!=="children"&&Ce!=="key"){nr(j),f("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",Ce),nr(null);break}}j.ref!==null&&(nr(j),f("Invalid attribute `ref` supplied to `React.Fragment`."),nr(null))}}var mi={};function ur(j,Q,ne,Ce,Le,Ge){{var je=P(j);if(!je){var Oe="";(j===void 0||typeof j=="object"&&j!==null&&Object.keys(j).length===0)&&(Oe+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var Mt=Ft();Mt?Oe+=Mt:Oe+=Li();var st;j===null?st="null":nt(j)?st="array":j!==void 0&&j.$$typeof===r?(st="<"+(F(j.type)||"Unknown")+" />",Oe=" Did you accidentally export a JSX literal instead of a component?"):st=typeof j,f("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",st,Oe)}var ot=Pn(j,Q,ne,Le,Ge);if(ot==null)return ot;if(je){var Xe=Q.children;if(Xe!==void 0)if(Ce)if(nt(Xe)){for(var ir=0;ir<Xe.length;ir++)pi(Xe[ir],j);Object.freeze&&Object.freeze(Xe)}else f("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 pi(Xe,j)}if(qt.call(Q,"key")){var fr=F(j),J=Object.keys(Q).filter(function(ze){return ze!=="key"}),de=J.length>0?"{key: someKey, "+J.join(": ..., ")+": ...}":"{key: someKey}";if(!mi[fr+de]){var fe=J.length>0?"{"+J.join(": ..., ")+": ...}":"{}";f(`A props object containing a "key" prop is being spread into JSX:
10
+ let props = %s;
11
+ <%s {...props} />
12
+ React keys must be passed directly to JSX without using spread:
13
+ let props = %s;
14
+ <%s key={someKey} {...props} />`,de,fr,fe,fr),mi[fr+de]=!0}}return j===i?Tn(ot):hi(ot),ot}}function ji(j,Q,ne){return ur(j,Q,ne,!0)}function wr(j,Q,ne){return ur(j,Q,ne,!1)}var In=wr,Qn=ji;Eo.Fragment=i,Eo.jsx=In,Eo.jsxs=Qn}(),Eo}var pm;function sE(){if(pm)return Va.exports;pm=1;var t={};return t.NODE_ENV==="production"?Va.exports=nE():Va.exports=iE(),Va.exports}var Y=sE(),oE=[".DS_Store","Thumbs.db"],aE={avi:"video/avi",gif:"image/gif",ico:"image/x-icon",jpeg:"image/jpeg",jpg:"image/jpeg",mkv:"video/x-matroska",mov:"video/quicktime",mp4:"video/mp4",pdf:"application/pdf",png:"image/png",zip:"application/zip"};function cE(t){return oE.indexOf(t.name)>=0}function lE(t){return(" "+t).slice(1)}function b0(t){var e=t.createReader();return new Promise(function(r){var n=[],i=function(){};function s(){e.readEntries(function(o){o.length?(n.push(Promise.all(o.map(function(a){return a.isDirectory?b0(a):Promise.resolve(a)}))),s()):r(Promise.all(n))},i)}s()})}function y0(t,e){var r="",n=t.name&&t.name.lastIndexOf(".")!==-1;if(n&&!t.type){var i=(t.name||"").split(".").pop();r=aE[i]}return{fileObject:t,fullPath:e?lE(e.fullPath):t.name,lastModified:t.lastModified,lastModifiedDate:t.lastModifiedDate,name:t.name,size:t.size,type:t.type?t.type:r,webkitRelativePath:t.webkitRelativePath}}function hm(t){return new Promise(function(e){t.file(function(r){e(y0(r,t))})})}function mm(t,e){return Promise.all(t).then(function(r){return r.forEach(function(n){cE(n)||e.push(n)}),e})}function dE(t){var e=[],r=[],n=[];if([].slice.call(t.items).forEach(function(s){if(typeof s.webkitGetAsEntry=="function"){var o=s.webkitGetAsEntry();o&&(o.isDirectory?r.push(b0(o)):n.push(hm(o)))}else e.push(s)}),r.length){var i=function s(o){return o.reduce(function(a,c){return a.concat(Array.isArray(c)?s(c):c)},[])};return Promise.all(r).then(function(s){var o=i(s);return o.forEach(function(a){n.push(hm(a))}),mm(n,e)})}else if(n.length)return mm(n,e);return Promise.resolve(e)}function S0(t){var e=t.dataTransfer;if(e&&e.items)return dE(e).then(function(a){return Promise.resolve(a)});for(var r=[],n=e&&e.files,i=t.target&&t.target.files,s=n||i||[],o=0;o<s.length;o++)r.push(y0(s[o]));return Promise.resolve(r)}var Ga={exports:{}},Xa={exports:{}},Ke={};var gm;function uE(){if(gm)return Ke;gm=1;var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,r=t?Symbol.for("react.portal"):60106,n=t?Symbol.for("react.fragment"):60107,i=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,d=t?Symbol.for("react.forward_ref"):60112,p=t?Symbol.for("react.suspense"):60113,m=t?Symbol.for("react.suspense_list"):60120,g=t?Symbol.for("react.memo"):60115,v=t?Symbol.for("react.lazy"):60116,S=t?Symbol.for("react.block"):60121,C=t?Symbol.for("react.fundamental"):60117,w=t?Symbol.for("react.responder"):60118,y=t?Symbol.for("react.scope"):60119;function f(h){if(typeof h=="object"&&h!==null){var b=h.$$typeof;switch(b){case e:switch(h=h.type,h){case c:case l:case n:case s:case i:case p:return h;default:switch(h=h&&h.$$typeof,h){case a:case d:case v:case g:case o:return h;default:return b}}case r:return b}}}function u(h){return f(h)===l}return Ke.AsyncMode=c,Ke.ConcurrentMode=l,Ke.ContextConsumer=a,Ke.ContextProvider=o,Ke.Element=e,Ke.ForwardRef=d,Ke.Fragment=n,Ke.Lazy=v,Ke.Memo=g,Ke.Portal=r,Ke.Profiler=s,Ke.StrictMode=i,Ke.Suspense=p,Ke.isAsyncMode=function(h){return u(h)||f(h)===c},Ke.isConcurrentMode=u,Ke.isContextConsumer=function(h){return f(h)===a},Ke.isContextProvider=function(h){return f(h)===o},Ke.isElement=function(h){return typeof h=="object"&&h!==null&&h.$$typeof===e},Ke.isForwardRef=function(h){return f(h)===d},Ke.isFragment=function(h){return f(h)===n},Ke.isLazy=function(h){return f(h)===v},Ke.isMemo=function(h){return f(h)===g},Ke.isPortal=function(h){return f(h)===r},Ke.isProfiler=function(h){return f(h)===s},Ke.isStrictMode=function(h){return f(h)===i},Ke.isSuspense=function(h){return f(h)===p},Ke.isValidElementType=function(h){return typeof h=="string"||typeof h=="function"||h===n||h===l||h===s||h===i||h===p||h===m||typeof h=="object"&&h!==null&&(h.$$typeof===v||h.$$typeof===g||h.$$typeof===o||h.$$typeof===a||h.$$typeof===d||h.$$typeof===C||h.$$typeof===w||h.$$typeof===y||h.$$typeof===S)},Ke.typeOf=f,Ke}var Qe={},vm;function fE(){if(vm)return Qe;vm=1;var t={};return t.NODE_ENV!=="production"&&function(){var e=typeof Symbol=="function"&&Symbol.for,r=e?Symbol.for("react.element"):60103,n=e?Symbol.for("react.portal"):60106,i=e?Symbol.for("react.fragment"):60107,s=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,a=e?Symbol.for("react.provider"):60109,c=e?Symbol.for("react.context"):60110,l=e?Symbol.for("react.async_mode"):60111,d=e?Symbol.for("react.concurrent_mode"):60111,p=e?Symbol.for("react.forward_ref"):60112,m=e?Symbol.for("react.suspense"):60113,g=e?Symbol.for("react.suspense_list"):60120,v=e?Symbol.for("react.memo"):60115,S=e?Symbol.for("react.lazy"):60116,C=e?Symbol.for("react.block"):60121,w=e?Symbol.for("react.fundamental"):60117,y=e?Symbol.for("react.responder"):60118,f=e?Symbol.for("react.scope"):60119;function u(U){return typeof U=="string"||typeof U=="function"||U===i||U===d||U===o||U===s||U===m||U===g||typeof U=="object"&&U!==null&&(U.$$typeof===S||U.$$typeof===v||U.$$typeof===a||U.$$typeof===c||U.$$typeof===p||U.$$typeof===w||U.$$typeof===y||U.$$typeof===f||U.$$typeof===C)}function h(U){if(typeof U=="object"&&U!==null){var We=U.$$typeof;switch(We){case r:var Ye=U.type;switch(Ye){case l:case d:case i:case o:case s:case m:return Ye;default:var Ot=Ye&&Ye.$$typeof;switch(Ot){case c:case p:case S:case v:case a:return Ot;default:return We}}case n:return We}}}var b=l,A=d,R=c,_=a,E=r,P=p,T=i,k=S,F=v,X=n,O=o,L=s,B=m,z=!1;function Z(U){return z||(z=!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.")),V(U)||h(U)===l}function V(U){return h(U)===d}function G(U){return h(U)===c}function te(U){return h(U)===a}function re(U){return typeof U=="object"&&U!==null&&U.$$typeof===r}function ie(U){return h(U)===p}function ce(U){return h(U)===i}function se(U){return h(U)===S}function ae(U){return h(U)===v}function le(U){return h(U)===n}function ye(U){return h(U)===o}function me(U){return h(U)===s}function ke(U){return h(U)===m}Qe.AsyncMode=b,Qe.ConcurrentMode=A,Qe.ContextConsumer=R,Qe.ContextProvider=_,Qe.Element=E,Qe.ForwardRef=P,Qe.Fragment=T,Qe.Lazy=k,Qe.Memo=F,Qe.Portal=X,Qe.Profiler=O,Qe.StrictMode=L,Qe.Suspense=B,Qe.isAsyncMode=Z,Qe.isConcurrentMode=V,Qe.isContextConsumer=G,Qe.isContextProvider=te,Qe.isElement=re,Qe.isForwardRef=ie,Qe.isFragment=ce,Qe.isLazy=se,Qe.isMemo=ae,Qe.isPortal=le,Qe.isProfiler=ye,Qe.isStrictMode=me,Qe.isSuspense=ke,Qe.isValidElementType=u,Qe.typeOf=h}(),Qe}var bm;function w0(){if(bm)return Xa.exports;bm=1;var t={};return t.NODE_ENV==="production"?Xa.exports=uE():Xa.exports=fE(),Xa.exports}var qd,ym;function pE(){if(ym)return qd;ym=1;var t=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function n(s){if(s==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(s)}function i(){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(d){return o[d]});if(c.join("")!=="0123456789")return!1;var l={};return"abcdefghijklmnopqrst".split("").forEach(function(d){l[d]=d}),Object.keys(Object.assign({},l)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return qd=i()?Object.assign:function(s,o){for(var a,c=n(s),l,d=1;d<arguments.length;d++){a=Object(arguments[d]);for(var p in a)e.call(a,p)&&(c[p]=a[p]);if(t){l=t(a);for(var m=0;m<l.length;m++)r.call(a,l[m])&&(c[l[m]]=a[l[m]])}}return c},qd}var Jd,Sm;function Lp(){if(Sm)return Jd;Sm=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Jd=t,Jd}var Kd,wm;function C0(){return wm||(wm=1,Kd=Function.call.bind(Object.prototype.hasOwnProperty)),Kd}var Qd,Cm;function hE(){if(Cm)return Qd;Cm=1;var t={},e=function(){};if(t.NODE_ENV!=="production"){var r=Lp(),n={},i=C0();e=function(o){var a="Warning: "+o;typeof console<"u"&&console.error(a);try{throw new Error(a)}catch{}}}function s(o,a,c,l,d){if(t.NODE_ENV!=="production"){for(var p in o)if(i(o,p)){var m;try{if(typeof o[p]!="function"){var g=Error((l||"React class")+": "+c+" type `"+p+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[p]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw g.name="Invariant Violation",g}m=o[p](a,p,l,c,null,r)}catch(S){m=S}if(m&&!(m instanceof Error)&&e((l||"React class")+": type specification of "+c+" `"+p+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof m+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),m instanceof Error&&!(m.message in n)){n[m.message]=!0;var v=d?d():"";e("Failed "+c+" type: "+m.message+(v??""))}}}}return s.resetWarningCache=function(){t.NODE_ENV!=="production"&&(n={})},Qd=s,Qd}var $d,Am;function mE(){if(Am)return $d;Am=1;var t={},e=w0(),r=pE(),n=Lp(),i=C0(),s=hE(),o=function(){};t.NODE_ENV!=="production"&&(o=function(c){var l="Warning: "+c;typeof console<"u"&&console.error(l);try{throw new Error(l)}catch{}});function a(){return null}return $d=function(c,l){var d=typeof Symbol=="function"&&Symbol.iterator,p="@@iterator";function m(V){var G=V&&(d&&V[d]||V[p]);if(typeof G=="function")return G}var g="<<anonymous>>",v={array:y("array"),bigint:y("bigint"),bool:y("boolean"),func:y("function"),number:y("number"),object:y("object"),string:y("string"),symbol:y("symbol"),any:f(),arrayOf:u,element:h(),elementType:b(),instanceOf:A,node:P(),objectOf:_,oneOf:R,oneOfType:E,shape:k,exact:F};function S(V,G){return V===G?V!==0||1/V===1/G:V!==V&&G!==G}function C(V,G){this.message=V,this.data=G&&typeof G=="object"?G:{},this.stack=""}C.prototype=Error.prototype;function w(V){if(t.NODE_ENV!=="production")var G={},te=0;function re(ce,se,ae,le,ye,me,ke){if(le=le||g,me=me||ae,ke!==n){if(l){var U=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 U.name="Invariant Violation",U}else if(t.NODE_ENV!=="production"&&typeof console<"u"){var We=le+":"+ae;!G[We]&&te<3&&(o("You are manually calling a React.PropTypes validation function for the `"+me+"` prop on `"+le+"`. 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."),G[We]=!0,te++)}}return se[ae]==null?ce?se[ae]===null?new C("The "+ye+" `"+me+"` is marked as required "+("in `"+le+"`, but its value is `null`.")):new C("The "+ye+" `"+me+"` is marked as required in "+("`"+le+"`, but its value is `undefined`.")):null:V(se,ae,le,ye,me)}var ie=re.bind(null,!1);return ie.isRequired=re.bind(null,!0),ie}function y(V){function G(te,re,ie,ce,se,ae){var le=te[re],ye=L(le);if(ye!==V){var me=B(le);return new C("Invalid "+ce+" `"+se+"` of type "+("`"+me+"` supplied to `"+ie+"`, expected ")+("`"+V+"`."),{expectedType:V})}return null}return w(G)}function f(){return w(a)}function u(V){function G(te,re,ie,ce,se){if(typeof V!="function")return new C("Property `"+se+"` of component `"+ie+"` has invalid PropType notation inside arrayOf.");var ae=te[re];if(!Array.isArray(ae)){var le=L(ae);return new C("Invalid "+ce+" `"+se+"` of type "+("`"+le+"` supplied to `"+ie+"`, expected an array."))}for(var ye=0;ye<ae.length;ye++){var me=V(ae,ye,ie,ce,se+"["+ye+"]",n);if(me instanceof Error)return me}return null}return w(G)}function h(){function V(G,te,re,ie,ce){var se=G[te];if(!c(se)){var ae=L(se);return new C("Invalid "+ie+" `"+ce+"` of type "+("`"+ae+"` supplied to `"+re+"`, expected a single ReactElement."))}return null}return w(V)}function b(){function V(G,te,re,ie,ce){var se=G[te];if(!e.isValidElementType(se)){var ae=L(se);return new C("Invalid "+ie+" `"+ce+"` of type "+("`"+ae+"` supplied to `"+re+"`, expected a single ReactElement type."))}return null}return w(V)}function A(V){function G(te,re,ie,ce,se){if(!(te[re]instanceof V)){var ae=V.name||g,le=Z(te[re]);return new C("Invalid "+ce+" `"+se+"` of type "+("`"+le+"` supplied to `"+ie+"`, expected ")+("instance of `"+ae+"`."))}return null}return w(G)}function R(V){if(!Array.isArray(V))return t.NODE_ENV!=="production"&&(arguments.length>1?o("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):o("Invalid argument supplied to oneOf, expected an array.")),a;function G(te,re,ie,ce,se){for(var ae=te[re],le=0;le<V.length;le++)if(S(ae,V[le]))return null;var ye=JSON.stringify(V,function(ke,U){var We=B(U);return We==="symbol"?String(U):U});return new C("Invalid "+ce+" `"+se+"` of value `"+String(ae)+"` "+("supplied to `"+ie+"`, expected one of "+ye+"."))}return w(G)}function _(V){function G(te,re,ie,ce,se){if(typeof V!="function")return new C("Property `"+se+"` of component `"+ie+"` has invalid PropType notation inside objectOf.");var ae=te[re],le=L(ae);if(le!=="object")return new C("Invalid "+ce+" `"+se+"` of type "+("`"+le+"` supplied to `"+ie+"`, expected an object."));for(var ye in ae)if(i(ae,ye)){var me=V(ae,ye,ie,ce,se+"."+ye,n);if(me instanceof Error)return me}return null}return w(G)}function E(V){if(!Array.isArray(V))return t.NODE_ENV!=="production"&&o("Invalid argument supplied to oneOfType, expected an instance of array."),a;for(var G=0;G<V.length;G++){var te=V[G];if(typeof te!="function")return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+z(te)+" at index "+G+"."),a}function re(ie,ce,se,ae,le){for(var ye=[],me=0;me<V.length;me++){var ke=V[me],U=ke(ie,ce,se,ae,le,n);if(U==null)return null;U.data&&i(U.data,"expectedType")&&ye.push(U.data.expectedType)}var We=ye.length>0?", expected one of type ["+ye.join(", ")+"]":"";return new C("Invalid "+ae+" `"+le+"` supplied to "+("`"+se+"`"+We+"."))}return w(re)}function P(){function V(G,te,re,ie,ce){return X(G[te])?null:new C("Invalid "+ie+" `"+ce+"` supplied to "+("`"+re+"`, expected a ReactNode."))}return w(V)}function T(V,G,te,re,ie){return new C((V||"React class")+": "+G+" type `"+te+"."+re+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+ie+"`.")}function k(V){function G(te,re,ie,ce,se){var ae=te[re],le=L(ae);if(le!=="object")return new C("Invalid "+ce+" `"+se+"` of type `"+le+"` "+("supplied to `"+ie+"`, expected `object`."));for(var ye in V){var me=V[ye];if(typeof me!="function")return T(ie,ce,se,ye,B(me));var ke=me(ae,ye,ie,ce,se+"."+ye,n);if(ke)return ke}return null}return w(G)}function F(V){function G(te,re,ie,ce,se){var ae=te[re],le=L(ae);if(le!=="object")return new C("Invalid "+ce+" `"+se+"` of type `"+le+"` "+("supplied to `"+ie+"`, expected `object`."));var ye=r({},te[re],V);for(var me in ye){var ke=V[me];if(i(V,me)&&typeof ke!="function")return T(ie,ce,se,me,B(ke));if(!ke)return new C("Invalid "+ce+" `"+se+"` key `"+me+"` supplied to `"+ie+"`.\nBad object: "+JSON.stringify(te[re],null," ")+`
15
+ Valid keys: `+JSON.stringify(Object.keys(V),null," "));var U=ke(ae,me,ie,ce,se+"."+me,n);if(U)return U}return null}return w(G)}function X(V){switch(typeof V){case"number":case"string":case"undefined":return!0;case"boolean":return!V;case"object":if(Array.isArray(V))return V.every(X);if(V===null||c(V))return!0;var G=m(V);if(G){var te=G.call(V),re;if(G!==V.entries){for(;!(re=te.next()).done;)if(!X(re.value))return!1}else for(;!(re=te.next()).done;){var ie=re.value;if(ie&&!X(ie[1]))return!1}}else return!1;return!0;default:return!1}}function O(V,G){return V==="symbol"?!0:G?G["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&G instanceof Symbol:!1}function L(V){var G=typeof V;return Array.isArray(V)?"array":V instanceof RegExp?"object":O(G,V)?"symbol":G}function B(V){if(typeof V>"u"||V===null)return""+V;var G=L(V);if(G==="object"){if(V instanceof Date)return"date";if(V instanceof RegExp)return"regexp"}return G}function z(V){var G=B(V);switch(G){case"array":case"object":return"an "+G;case"boolean":case"date":case"regexp":return"a "+G;default:return G}}function Z(V){return!V.constructor||!V.constructor.name?g:V.constructor.name}return v.checkPropTypes=s,v.resetWarningCache=s.resetWarningCache,v.PropTypes=v,v},$d}var eu,Rm;function gE(){if(Rm)return eu;Rm=1;var t=Lp();function e(){}function r(){}return r.resetWarningCache=e,eu=function(){function n(o,a,c,l,d,p){if(p!==t){var m=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 m.name="Invariant Violation",m}}n.isRequired=n;function i(){return n}var s={array:n,bigint:n,bool:n,func:n,number:n,object:n,string:n,symbol:n,any:n,arrayOf:i,element:n,elementType:n,instanceOf:i,node:n,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:r,resetWarningCache:e};return s.PropTypes=s,s},eu}var _m;function vE(){if(_m)return Ga.exports;_m=1;var t={};if(t.NODE_ENV!=="production"){var e=w0(),r=!0;Ga.exports=mE()(e.isElement,r)}else Ga.exports=gE()();return Ga.exports}var bE=vE();const N=Xn(bE),A0=t=>{const{input:e,previews:r,submitButton:n,dropzoneProps:i,files:s,extra:{maxFiles:o}}=t;return Y.jsxs("div",{...i,children:[r,s.length<o&&e,s.length>0&&n]})};A0.propTypes={input:N.node,previews:N.arrayOf(N.node),submitButton:N.node,dropzoneProps:N.shape({ref:N.any.isRequired,className:N.string.isRequired,style:N.object,onDragEnter:N.func.isRequired,onDragOver:N.func.isRequired,onDragLeave:N.func.isRequired,onDrop:N.func.isRequired}).isRequired,files:N.arrayOf(N.any).isRequired,extra:N.shape({active:N.bool.isRequired,reject:N.bool.isRequired,dragged:N.arrayOf(N.any).isRequired,accept:N.string.isRequired,multiple:N.bool.isRequired,minSizeBytes:N.number.isRequired,maxSizeBytes:N.number.isRequired,maxFiles:N.number.isRequired,onFiles:N.func.isRequired,onCancelFile:N.func.isRequired,onRemoveFile:N.func.isRequired,onRestartFile:N.func.isRequired}).isRequired};const R0=t=>{const{className:e,labelClassName:r,labelWithFilesClassName:n,style:i,labelStyle:s,labelWithFilesStyle:o,getFilesFromEvent:a,accept:c,multiple:l,disabled:d,content:p,withFilesContent:m,onFiles:g,files:v}=t;return Y.jsxs("label",{className:v.length>0?n:r,style:v.length>0?o:s,children:[v.length>0?m:p,Y.jsx("input",{className:e,style:i,type:"file",accept:c,multiple:l,disabled:d,onChange:async S=>{const C=S.target,w=await a(S);g(w),C.value=null}})]})};R0.propTypes={className:N.string,labelClassName:N.string,labelWithFilesClassName:N.string,style:N.object,labelStyle:N.object,labelWithFilesStyle:N.object,getFilesFromEvent:N.func.isRequired,accept:N.string.isRequired,multiple:N.bool.isRequired,disabled:N.bool.isRequired,content:N.node,withFilesContent:N.node,onFiles:N.func.isRequired,files:N.arrayOf(N.any).isRequired,extra:N.shape({active:N.bool.isRequired,reject:N.bool.isRequired,dragged:N.arrayOf(N.any).isRequired,accept:N.string.isRequired,multiple:N.bool.isRequired,minSizeBytes:N.number.isRequired,maxSizeBytes:N.number.isRequired,maxFiles:N.number.isRequired}).isRequired};const yE=t=>{const e=["bytes","kB","MB","GB","TB","PB","EB","ZB","YB"];let r=0,n=t;for(;n>=1024;)n/=1024,r+=1;return`${n.toFixed(n>=10||r<1?0:1)}${e[r]}`},SE=t=>{const e=new Date(0);e.setSeconds(t);const r=e.toISOString().slice(11,19);return t<3600?r.slice(3):r},Em=(t,e)=>{if(!e||e==="*")return!0;const r=t.type||"",n=r.replace(/\/.*$/,"");return e.split(",").map(i=>i.trim()).some(i=>i.charAt(0)==="."?t.name===void 0||t.name.toLowerCase().endsWith(i.toLowerCase()):i.endsWith("/*")?n===i.replace(/\/.*$/,""):r===i)},vn=(t,...e)=>typeof t=="function"?t(...e):t,wE={dropzone:"dzu-dropzone",dropzoneActive:"dzu-dropzoneActive",dropzoneReject:"dzu-dropzoneActive",dropzoneDisabled:"dzu-dropzoneDisabled",input:"dzu-input",inputLabel:"dzu-inputLabel",inputLabelWithFiles:"dzu-inputLabelWithFiles",preview:"dzu-previewContainer",previewImage:"dzu-previewImage",submitButtonContainer:"dzu-submitButtonContainer",submitButton:"dzu-submitButton"},CE=(t,e,r,...n)=>{const i={...wE},s={...e};for(const[o,a]of Object.entries(t))i[o]=vn(a,...n);for(const[o,a]of Object.entries(r))i[o]=`${i[o]} ${vn(a,...n)}`;for(const[o,a]of Object.entries(e))s[o]=vn(a,...n);return{classNames:i,styles:s}},Pm=t=>{let e=null;if("dataTransfer"in t){const r=t.dataTransfer;"files"in r&&r.files.length?e=r.files:r.items&&r.items.length&&(e=r.items)}else t.target&&t.target.files&&(e=t.target.files);return Array.prototype.slice.call(e)},AE="data:image/svg+xml,%3csvg%20viewBox='0%200%208%2014'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20fill='%23333333'%3e%3cpath%20d='M1,14%20C0.4,14%200,13.6%200,13%20L0,1%20C0,0.4%200.4,0%201,0%20C1.6,0%202,0.4%202,1%20L2,13%20C2,13.6%201.6,14%201,14%20Z'%20id='Path'%3e%3c/path%3e%3cpath%20d='M7,14%20C6.4,14%206,13.6%206,13%20L6,1%20C6,0.4%206.4,0%207,0%20C7.6,0%208,0.4%208,1%20L8,13%20C8,13.6%207.6,14%207,14%20Z'%20id='Path'%3e%3c/path%3e%3c/g%3e%3c/svg%3e",RE="data:image/svg+xml,%3csvg%20viewBox='0%200%2014%2014'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20transform='translate(-5.0,%200.0)'%20fill='%23333333'%3e%3cg%20transform='translate(4.0,%200.0)'%3e%3cpolygon%20points='7.719%204.964%2012.692%200.017%2014.389%201.715%209.412%206.666%2014.354%2011.634%2012.657%2013.331%206.017%206.657%207.715%204.960'%3e%3c/polygon%3e%3cpolygon%20points='7.612%204.964%207.616%204.960%209.313%206.657%202.674%2013.331%200.977%2011.634%205.919%206.666%200.942%201.715%202.639%200.017'%3e%3c/polygon%3e%3c/g%3e%3c/g%3e%3c/svg%3e",_E="data:image/svg+xml,%3csvg%20viewBox='0%200%2011%2015'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%3e%3cpath%20d='M0.5,14.9%20C0.2,14.7%200,14.4%200,14%20L0,2%20C0,1.6%200.2,1.3%200.5,1.1%20C0.8,0.9%201.2,0.9%201.5,1.1%20L10.5,7.1%20C10.8,7.3%2010.9,7.6%2010.9,7.9%20C10.9,8.2%2010.7,8.5%2010.5,8.7%20L1.5,14.7%20C1.4,14.9%200.8,15.1%200.5,14.9%20Z%20M2,3.9%20L2,12.2%20L8.2,8.1%20L2,3.9%20Z'%3e%3c/path%3e%3c/g%3e%3c/svg%3e",Ua={cancel:{backgroundImage:`url(${AE})`},remove:{backgroundImage:`url(${RE})`},restart:{backgroundImage:`url(${_E})`}};class _0 extends K.PureComponent{render(){const{className:e,imageClassName:r,style:n,imageStyle:i,fileWithMeta:{cancel:s,remove:o,restart:a},meta:{name:c="",percent:l=0,size:d=0,previewUrl:p,status:m,duration:g,validationError:v},isUpload:S,canCancel:C,canRemove:w,canRestart:y,extra:{minSizeBytes:f}}=this.props;let u=`${c||"?"}, ${yE(d)}`;return g&&(u=`${u}, ${SE(g)}`),m==="error_file_size"||m==="error_validation"?Y.jsxs("div",{className:e,style:n,children:[Y.jsx("span",{className:"dzu-previewFileNameError",children:u}),m==="error_file_size"&&Y.jsx("span",{children:d<f?"File too small":"File too big"}),m==="error_validation"&&Y.jsx("span",{children:String(v)}),w&&Y.jsx("span",{className:"dzu-previewButton",style:Ua.remove,onClick:o})]}):((m==="error_upload_params"||m==="exception_upload"||m==="error_upload")&&(u=`${u} (upload failed)`),m==="aborted"&&(u=`${u} (cancelled)`),Y.jsxs("div",{className:e,style:n,children:[p&&Y.jsx("img",{className:r,style:i,src:p,alt:u,title:u}),!p&&Y.jsx("span",{className:"dzu-previewFileName",children:u}),Y.jsxs("div",{className:"dzu-previewStatusContainer",children:[S&&Y.jsx("progress",{max:100,value:m==="done"||m==="headers_received"?100:l}),m==="uploading"&&C&&Y.jsx("span",{className:"dzu-previewButton",style:Ua.cancel,onClick:s}),m!=="preparing"&&m!=="getting_upload_params"&&m!=="uploading"&&w&&Y.jsx("span",{className:"dzu-previewButton",style:Ua.remove,onClick:o}),["error_upload_params","exception_upload","error_upload","aborted","ready"].includes(m)&&y&&Y.jsx("span",{className:"dzu-previewButton",style:Ua.restart,onClick:a})]})]}))}}_0.propTypes={className:N.string,imageClassName:N.string,style:N.object,imageStyle:N.object,fileWithMeta:N.shape({file:N.any.isRequired,meta:N.object.isRequired,cancel:N.func.isRequired,restart:N.func.isRequired,remove:N.func.isRequired,xhr:N.any}).isRequired,meta:N.shape({status:N.oneOf(["preparing","error_file_size","error_validation","ready","getting_upload_params","error_upload_params","uploading","exception_upload","aborted","error_upload","headers_received","done"]).isRequired,type:N.string.isRequired,name:N.string,uploadedDate:N.string.isRequired,percent:N.number,size:N.number,lastModifiedDate:N.string,previewUrl:N.string,duration:N.number,width:N.number,height:N.number,videoWidth:N.number,videoHeight:N.number,validationError:N.any}).isRequired,isUpload:N.bool.isRequired,canCancel:N.bool.isRequired,canRemove:N.bool.isRequired,canRestart:N.bool.isRequired,files:N.arrayOf(N.any).isRequired,extra:N.shape({active:N.bool.isRequired,reject:N.bool.isRequired,dragged:N.arrayOf(N.any).isRequired,accept:N.string.isRequired,multiple:N.bool.isRequired,minSizeBytes:N.number.isRequired,maxSizeBytes:N.number.isRequired,maxFiles:N.number.isRequired}).isRequired};const E0=t=>{const{className:e,buttonClassName:r,style:n,buttonStyle:i,disabled:s,content:o,onSubmit:a,files:c}=t,l=c.some(p=>["preparing","getting_upload_params","uploading"].includes(p.meta.status))||!c.some(p=>["headers_received","done"].includes(p.meta.status)),d=()=>{a(c.filter(p=>["headers_received","done"].includes(p.meta.status)))};return Y.jsx("div",{className:e,style:n,children:Y.jsx("button",{className:r,style:i,onClick:d,disabled:s||l,children:o})})};E0.propTypes={className:N.string,buttonClassName:N.string,style:N.object,buttonStyle:N.object,disabled:N.bool.isRequired,content:N.node,onSubmit:N.func.isRequired,files:N.arrayOf(N.object).isRequired,extra:N.shape({active:N.bool.isRequired,reject:N.bool.isRequired,dragged:N.arrayOf(N.any).isRequired,accept:N.string.isRequired,multiple:N.bool.isRequired,minSizeBytes:N.number.isRequired,maxSizeBytes:N.number.isRequired,maxFiles:N.number.isRequired}).isRequired};class ql extends K.Component{constructor(e){super(e),this.forceUpdate=()=>{this.mounted&&super.forceUpdate()},this.getFilesFromEvent=()=>this.props.getFilesFromEvent||Pm,this.getDataTransferItemsFromEvent=()=>this.props.getDataTransferItemsFromEvent||Pm,this.handleDragEnter=async r=>{r.preventDefault(),r.stopPropagation();const n=await this.getDataTransferItemsFromEvent()(r);this.setState({active:!0,dragged:n})},this.handleDragOver=async r=>{r.preventDefault(),r.stopPropagation(),clearTimeout(this.dragTimeoutId);const n=await this.getDataTransferItemsFromEvent()(r);this.setState({active:!0,dragged:n})},this.handleDragLeave=r=>{r.preventDefault(),r.stopPropagation(),this.dragTimeoutId=window.setTimeout(()=>this.setState({active:!1,dragged:[]}),150)},this.handleDrop=async r=>{r.preventDefault(),r.stopPropagation(),this.setState({active:!1,dragged:[]});const n=await this.getFilesFromEvent()(r);this.handleFiles(n)},this.handleDropDisabled=r=>{r.preventDefault(),r.stopPropagation(),this.setState({active:!1,dragged:[]})},this.handleChangeStatus=r=>{if(!this.props.onChangeStatus)return;const{meta:n={}}=this.props.onChangeStatus(r,r.meta.status,this.files)||{};n&&(delete n.status,r.meta={...r.meta,...n},this.forceUpdate())},this.handleSubmit=r=>{this.props.onSubmit&&this.props.onSubmit(r,[...this.files])},this.handleCancel=r=>{r.meta.status==="uploading"&&(r.meta.status="aborted",r.xhr&&r.xhr.abort(),this.handleChangeStatus(r),this.forceUpdate())},this.handleRemove=r=>{const n=this.files.findIndex(i=>i===r);n!==-1&&(URL.revokeObjectURL(r.meta.previewUrl||""),r.meta.status="removed",this.handleChangeStatus(r),this.files.splice(n,1),this.forceUpdate())},this.handleRestart=r=>{this.props.getUploadParams&&(r.meta.status==="ready"?r.meta.status="started":r.meta.status="restarted",this.handleChangeStatus(r),r.meta.status="getting_upload_params",r.meta.percent=0,this.handleChangeStatus(r),this.forceUpdate(),this.uploadFile(r))},this.handleFiles=r=>{r.forEach((i,s)=>this.handleFile(i,`${new Date().getTime()}-${s}`));const{current:n}=this.dropzone;n&&setTimeout(()=>n.scroll({top:n.scrollHeight,behavior:"smooth"}),150)},this.handleFile=async(r,n)=>{const{name:i,size:s,type:o,lastModified:a}=r,{minSizeBytes:c,maxSizeBytes:l,maxFiles:d,accept:p,getUploadParams:m,autoUpload:g,validate:v}=this.props,S=new Date().toISOString(),C=a&&new Date(a).toISOString(),w={file:r,meta:{name:i,size:s,type:o,lastModifiedDate:C,uploadedDate:S,percent:0,id:n}};if(r.type!=="application/x-moz-file"&&!Em(r,p)){w.meta.status="rejected_file_type",this.handleChangeStatus(w);return}if(this.files.length>=d){w.meta.status="rejected_max_files",this.handleChangeStatus(w);return}if(w.cancel=()=>this.handleCancel(w),w.remove=()=>this.handleRemove(w),w.restart=()=>this.handleRestart(w),w.meta.status="preparing",this.files.push(w),this.handleChangeStatus(w),this.forceUpdate(),s<c||s>l){w.meta.status="error_file_size",this.handleChangeStatus(w),this.forceUpdate();return}if(await this.generatePreview(w),v){const y=v(w);if(y){w.meta.status="error_validation",w.meta.validationError=y,this.handleChangeStatus(w),this.forceUpdate();return}}m?g?(this.uploadFile(w),w.meta.status="getting_upload_params"):w.meta.status="ready":w.meta.status="done",this.handleChangeStatus(w),this.forceUpdate()},this.generatePreview=async r=>{const{meta:{type:n},file:i}=r,s=n.startsWith("image/"),o=n.startsWith("audio/"),a=n.startsWith("video/");if(!s&&!o&&!a)return;const c=URL.createObjectURL(i),l=d=>Promise.race([new Promise(p=>{d instanceof HTMLImageElement?d.onload=p:d.onloadedmetadata=p}),new Promise((p,m)=>{setTimeout(m,1e3)})]);try{if(s){const d=new Image;d.src=c,r.meta.previewUrl=c,await l(d),r.meta.width=d.width,r.meta.height=d.height}if(o){const d=new Audio;d.src=c,await l(d),r.meta.duration=d.duration}if(a){const d=document.createElement("video");d.src=c,await l(d),r.meta.duration=d.duration,r.meta.videoWidth=d.videoWidth,r.meta.videoHeight=d.videoHeight}s||URL.revokeObjectURL(c)}catch{URL.revokeObjectURL(c)}this.forceUpdate()},this.uploadFile=async r=>{const{getUploadParams:n}=this.props;if(!n)return;let i=null;try{i=await n(r)}catch(g){console.error("Error Upload Params",g.stack)}if(i===null)return;const{url:s,method:o="POST",body:a,fields:c={},headers:l={},meta:d={}}=i;if(delete d.status,!s){r.meta.status="error_upload_params",this.handleChangeStatus(r),this.forceUpdate();return}const p=new XMLHttpRequest,m=new FormData;p.open(o,s,!0);for(const g of Object.keys(c))m.append(g,c[g]);p.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const g of Object.keys(l))p.setRequestHeader(g,l[g]);r.meta={...r.meta,...d},p.upload.addEventListener("progress",g=>{r.meta.percent=g.loaded*100/g.total||100,this.forceUpdate()}),p.addEventListener("readystatechange",()=>{p.readyState!==2&&p.readyState!==4||(p.status===0&&r.meta.status!=="aborted"&&(r.meta.status="exception_upload",this.handleChangeStatus(r),this.forceUpdate()),p.status>0&&p.status<400&&(r.meta.percent=100,p.readyState===2&&(r.meta.status="headers_received"),p.readyState===4&&(r.meta.status="done"),this.handleChangeStatus(r),this.forceUpdate()),p.status>=400&&r.meta.status!=="error_upload"&&(r.meta.status="error_upload",this.handleChangeStatus(r),this.forceUpdate()))}),m.append("file",r.file),this.props.timeout&&(p.timeout=this.props.timeout),p.send(a||m),r.xhr=p,r.meta.status="uploading",this.handleChangeStatus(r),this.forceUpdate()},this.state={active:!1,dragged:[]},this.files=[],this.mounted=!0,this.dropzone=K.createRef()}componentDidMount(){this.props.initialFiles&&this.handleFiles(this.props.initialFiles)}componentDidUpdate(e){const{initialFiles:r}=this.props;e.initialFiles!==r&&r&&this.handleFiles(r)}componentWillUnmount(){this.mounted=!1;for(const e of this.files)this.handleCancel(e)}render(){const{accept:e,multiple:r,maxFiles:n,minSizeBytes:i,maxSizeBytes:s,onSubmit:o,getUploadParams:a,disabled:c,canCancel:l,canRemove:d,canRestart:p,inputContent:m,inputWithFilesContent:g,submitButtonDisabled:v,submitButtonContent:S,classNames:C,styles:w,addClassNames:y,InputComponent:f,PreviewComponent:u,SubmitButtonComponent:h,LayoutComponent:b}=this.props,{active:A,dragged:R}=this.state,_=R.some(mt=>mt.type!=="application/x-moz-file"&&!Em(mt,e)),E={active:A,reject:_,dragged:R,accept:e,multiple:r,minSizeBytes:i,maxSizeBytes:s,maxFiles:n},P=[...this.files],T=vn(c,P,E),{classNames:{dropzone:k,dropzoneActive:F,dropzoneReject:X,dropzoneDisabled:O,input:L,inputLabel:B,inputLabelWithFiles:z,preview:Z,previewImage:V,submitButtonContainer:G,submitButton:te},styles:{dropzone:re,dropzoneActive:ie,dropzoneReject:ce,dropzoneDisabled:se,input:ae,inputLabel:le,inputLabelWithFiles:ye,preview:me,previewImage:ke,submitButtonContainer:U,submitButton:We}}=CE(C,w,y,P,E),Ye=f||R0,Ot=u||_0,qt=h||E0,Ct=b||A0;let rr=null;u!==null&&(rr=P.map(mt=>Y.jsx(Ot,{className:Z,imageClassName:V,style:me,imageStyle:ke,fileWithMeta:mt,meta:{...mt.meta},isUpload:!!a,canCancel:vn(l,P,E),canRemove:vn(d,P,E),canRestart:vn(p,P,E),files:P,extra:E},mt.meta.id)));const dr=f!==null?Y.jsx(Ye,{className:L,labelClassName:B,labelWithFilesClassName:z,style:ae,labelStyle:le,labelWithFilesStyle:ye,getFilesFromEvent:this.getFilesFromEvent(),accept:e,multiple:r,disabled:T,content:vn(m,P,E),withFilesContent:vn(g,P,E),onFiles:this.handleFiles,files:P,extra:E}):null,Ur=o&&h!==null?Y.jsx(qt,{className:G,buttonClassName:te,style:U,buttonStyle:We,disabled:vn(v,P,E),content:vn(S,P,E),onSubmit:this.handleSubmit,files:P,extra:E}):null;let xt=k,nt=re;return T?(xt=`${xt} ${O}`,nt={...nt||{},...se||{}}):_?(xt=`${xt} ${X}`,nt={...nt||{},...ce||{}}):A&&(xt=`${xt} ${F}`,nt={...nt||{},...ie||{}}),Y.jsx(Ct,{input:dr,previews:rr,submitButton:Ur,dropzoneProps:{ref:this.dropzone,className:xt,style:nt,onDragEnter:this.handleDragEnter,onDragOver:this.handleDragOver,onDragLeave:this.handleDragLeave,onDrop:T?this.handleDropDisabled:this.handleDrop},files:P,extra:{...E,onFiles:this.handleFiles,onCancelFile:this.handleCancel,onRemoveFile:this.handleRemove,onRestartFile:this.handleRestart}})}}ql.defaultProps={accept:"*",multiple:!0,minSizeBytes:0,maxSizeBytes:Number.MAX_SAFE_INTEGER,maxFiles:Number.MAX_SAFE_INTEGER,autoUpload:!0,disabled:!1,canCancel:!0,canRemove:!0,canRestart:!0,inputContent:"Drag Files or Click to Browse",inputWithFilesContent:"Add Files",submitButtonDisabled:!1,submitButtonContent:"Submit",classNames:{},styles:{},addClassNames:{}};ql.propTypes={onChangeStatus:N.func,getUploadParams:N.func,onSubmit:N.func,getFilesFromEvent:N.func,getDataTransferItemsFromEvent:N.func,accept:N.string,multiple:N.bool,minSizeBytes:N.number.isRequired,maxSizeBytes:N.number.isRequired,maxFiles:N.number.isRequired,validate:N.func,autoUpload:N.bool,timeout:N.number,initialFiles:N.arrayOf(N.any),disabled:N.oneOfType([N.bool,N.func]),canCancel:N.oneOfType([N.bool,N.func]),canRemove:N.oneOfType([N.bool,N.func]),canRestart:N.oneOfType([N.bool,N.func]),inputContent:N.oneOfType([N.node,N.func]),inputWithFilesContent:N.oneOfType([N.node,N.func]),submitButtonDisabled:N.oneOfType([N.bool,N.func]),submitButtonContent:N.oneOfType([N.node,N.func]),classNames:N.object.isRequired,styles:N.object.isRequired,addClassNames:N.object.isRequired,InputComponent:N.func,PreviewComponent:N.func,SubmitButtonComponent:N.func,LayoutComponent:N.func};const pl=`<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
16
+ height="800px" width="800px" viewBox="0 0 56 56" enable-background="new 0 0 19.194 16.352" xml:space="preserve">
17
+
18
+ <g>
19
+ <path style="fill:#E9E9E0;" d="M36.985,0H7.963C7.155,0,6.5,0.655,6.5,1.926V55c0,0.345,0.655,1,1.463,1h40.074
20
+ c0.808,0,1.463-0.655,1.463-1V12.978c0-0.696-0.093-0.92-0.257-1.085L37.607,0.257C37.442,0.093,37.218,0,36.985,0z"/>
21
+ <polygon style="fill:#D9D7CA;" points="37.5,0.151 37.5,12 49.349,12 "/>
22
+ <path style="fill:#CC4B4C;" d="M19.514,33.324L19.514,33.324c-0.348,0-0.682-0.113-0.967-0.326
23
+ c-1.041-0.781-1.181-1.65-1.115-2.242c0.182-1.628,2.195-3.332,5.985-5.068c1.504-3.296,2.935-7.357,3.788-10.75
24
+ c-0.998-2.172-1.968-4.99-1.261-6.643c0.248-0.579,0.557-1.023,1.134-1.215c0.228-0.076,0.804-0.172,1.016-0.172
25
+ c0.504,0,0.947,0.649,1.261,1.049c0.295,0.376,0.964,1.173-0.373,6.802c1.348,2.784,3.258,5.62,5.088,7.562
26
+ c1.311-0.237,2.439-0.358,3.358-0.358c1.566,0,2.515,0.365,2.902,1.117c0.32,0.622,0.189,1.349-0.39,2.16
27
+ c-0.557,0.779-1.325,1.191-2.22,1.191c-1.216,0-2.632-0.768-4.211-2.285c-2.837,0.593-6.15,1.651-8.828,2.822
28
+ c-0.836,1.774-1.637,3.203-2.383,4.251C21.273,32.654,20.389,33.324,19.514,33.324z M22.176,28.198
29
+ c-2.137,1.201-3.008,2.188-3.071,2.744c-0.01,0.092-0.037,0.334,0.431,0.692C19.685,31.587,20.555,31.19,22.176,28.198z
30
+ M35.813,23.756c0.815,0.627,1.014,0.944,1.547,0.944c0.234,0,0.901-0.01,1.21-0.441c0.149-0.209,0.207-0.343,0.23-0.415
31
+ c-0.123-0.065-0.286-0.197-1.175-0.197C37.12,23.648,36.485,23.67,35.813,23.756z M28.343,17.174
32
+ c-0.715,2.474-1.659,5.145-2.674,7.564c2.09-0.811,4.362-1.519,6.496-2.02C30.815,21.15,29.466,19.192,28.343,17.174z
33
+ M27.736,8.712c-0.098,0.033-1.33,1.757,0.096,3.216C28.781,9.813,27.779,8.698,27.736,8.712z"/>
34
+ <path style="fill:#CC4B4C;" d="M48.037,56H7.963C7.155,56,6.5,55.345,6.5,54.537V39h43v15.537C49.5,55.345,48.845,56,48.037,56z"/>
35
+ <g>
36
+ <path style="fill:#FFFFFF;" d="M17.385,53h-1.641V42.924h2.898c0.428,0,0.852,0.068,1.271,0.205
37
+ c0.419,0.137,0.795,0.342,1.128,0.615c0.333,0.273,0.602,0.604,0.807,0.991s0.308,0.822,0.308,1.306
38
+ c0,0.511-0.087,0.973-0.26,1.388c-0.173,0.415-0.415,0.764-0.725,1.046c-0.31,0.282-0.684,0.501-1.121,0.656
39
+ s-0.921,0.232-1.449,0.232h-1.217V53z M17.385,44.168v3.992h1.504c0.2,0,0.398-0.034,0.595-0.103
40
+ c0.196-0.068,0.376-0.18,0.54-0.335c0.164-0.155,0.296-0.371,0.396-0.649c0.1-0.278,0.15-0.622,0.15-1.032
41
+ c0-0.164-0.023-0.354-0.068-0.567c-0.046-0.214-0.139-0.419-0.28-0.615c-0.142-0.196-0.34-0.36-0.595-0.492
42
+ c-0.255-0.132-0.593-0.198-1.012-0.198H17.385z"/>
43
+ <path style="fill:#FFFFFF;" d="M32.219,47.682c0,0.829-0.089,1.538-0.267,2.126s-0.403,1.08-0.677,1.477s-0.581,0.709-0.923,0.937
44
+ s-0.672,0.398-0.991,0.513c-0.319,0.114-0.611,0.187-0.875,0.219C28.222,52.984,28.026,53,27.898,53h-3.814V42.924h3.035
45
+ c0.848,0,1.593,0.135,2.235,0.403s1.176,0.627,1.6,1.073s0.74,0.955,0.95,1.524C32.114,46.494,32.219,47.08,32.219,47.682z
46
+ M27.352,51.797c1.112,0,1.914-0.355,2.406-1.066s0.738-1.741,0.738-3.09c0-0.419-0.05-0.834-0.15-1.244
47
+ c-0.101-0.41-0.294-0.781-0.581-1.114s-0.677-0.602-1.169-0.807s-1.13-0.308-1.914-0.308h-0.957v7.629H27.352z"/>
48
+ <path style="fill:#FFFFFF;" d="M36.266,44.168v3.172h4.211v1.121h-4.211V53h-1.668V42.924H40.9v1.244H36.266z"/>
49
+ </g>
50
+ </g>
51
+ </svg>`;var ar=function(){return ar=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},ar.apply(this,arguments)};function Ws(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))}function EE(t){var e=Object.create(null);return function(r){return e[r]===void 0&&(e[r]=t(r)),e[r]}}var PE=/^((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|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)-.*))$/,TE=EE(function(t){return PE.test(t)||t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)<91}),lt="-ms-",ta="-moz-",tt="-webkit-",P0="comm",Jl="rule",jp="decl",IE="@import",T0="@keyframes",OE="@layer",I0=Math.abs,Bp=String.fromCharCode,hf=Object.assign;function xE(t,e){return Vt(t,0)^45?(((e<<2^Vt(t,0))<<2^Vt(t,1))<<2^Vt(t,2))<<2^Vt(t,3):0}function O0(t){return t.trim()}function ti(t,e){return(t=e.exec(t))?t[0]:t}function Ne(t,e,r){return t.replace(e,r)}function Dc(t,e,r){return t.indexOf(e,r)}function Vt(t,e){return t.charCodeAt(e)|0}function Ys(t,e,r){return t.slice(e,r)}function kn(t){return t.length}function x0(t){return t.length}function Uo(t,e){return e.push(t),t}function DE(t,e){return t.map(e).join("")}function Tm(t,e){return t.filter(function(r){return!ti(r,e)})}var Kl=1,Zs=1,D0=0,zr=0,Et=0,co="";function Ql(t,e,r,n,i,s,o,a){return{value:t,root:e,parent:r,type:n,props:i,children:s,line:Kl,column:Zs,length:o,return:"",siblings:a}}function bi(t,e){return hf(Ql("",null,null,"",null,null,0,t.siblings),t,{length:-t.length},e)}function _s(t){for(;t.root;)t=bi(t.root,{children:[t]});Uo(t,t.siblings)}function kE(){return Et}function ME(){return Et=zr>0?Vt(co,--zr):0,Zs--,Et===10&&(Zs=1,Kl--),Et}function Sn(){return Et=zr<D0?Vt(co,zr++):0,Zs++,Et===10&&(Zs=1,Kl++),Et}function Qi(){return Vt(co,zr)}function kc(){return zr}function $l(t,e){return Ys(co,t,e)}function mf(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 NE(t){return Kl=Zs=1,D0=kn(co=t),zr=0,[]}function LE(t){return co="",t}function tu(t){return O0($l(zr-1,gf(t===91?t+2:t===40?t+1:t)))}function jE(t){for(;(Et=Qi())&&Et<33;)Sn();return mf(t)>2||mf(Et)>3?"":" "}function BE(t,e){for(;--e&&Sn()&&!(Et<48||Et>102||Et>57&&Et<65||Et>70&&Et<97););return $l(t,kc()+(e<6&&Qi()==32&&Sn()==32))}function gf(t){for(;Sn();)switch(Et){case t:return zr;case 34:case 39:t!==34&&t!==39&&gf(Et);break;case 40:t===41&&gf(t);break;case 92:Sn();break}return zr}function FE(t,e){for(;Sn()&&t+Et!==57;)if(t+Et===84&&Qi()===47)break;return"/*"+$l(e,zr-1)+"*"+Bp(t===47?t:Sn())}function zE(t){for(;!mf(Qi());)Sn();return $l(t,zr)}function HE(t){return LE(Mc("",null,null,null,[""],t=NE(t),0,[0],t))}function Mc(t,e,r,n,i,s,o,a,c){for(var l=0,d=0,p=o,m=0,g=0,v=0,S=1,C=1,w=1,y=0,f="",u=i,h=s,b=n,A=f;C;)switch(v=y,y=Sn()){case 40:if(v!=108&&Vt(A,p-1)==58){Dc(A+=Ne(tu(y),"&","&\f"),"&\f",I0(l?a[l-1]:0))!=-1&&(w=-1);break}case 34:case 39:case 91:A+=tu(y);break;case 9:case 10:case 13:case 32:A+=jE(v);break;case 92:A+=BE(kc()-1,7);continue;case 47:switch(Qi()){case 42:case 47:Uo(VE(FE(Sn(),kc()),e,r,c),c);break;default:A+="/"}break;case 123*S:a[l++]=kn(A)*w;case 125*S:case 59:case 0:switch(y){case 0:case 125:C=0;case 59+d:w==-1&&(A=Ne(A,/\f/g,"")),g>0&&kn(A)-p&&Uo(g>32?Om(A+";",n,r,p-1,c):Om(Ne(A," ","")+";",n,r,p-2,c),c);break;case 59:A+=";";default:if(Uo(b=Im(A,e,r,l,d,i,a,f,u=[],h=[],p,s),s),y===123)if(d===0)Mc(A,e,b,b,u,s,p,a,h);else switch(m===99&&Vt(A,3)===110?100:m){case 100:case 108:case 109:case 115:Mc(t,b,b,n&&Uo(Im(t,b,b,0,0,i,a,f,i,u=[],p,h),h),i,h,p,a,n?u:h);break;default:Mc(A,b,b,b,[""],h,0,a,h)}}l=d=g=0,S=w=1,f=A="",p=o;break;case 58:p=1+kn(A),g=v;default:if(S<1){if(y==123)--S;else if(y==125&&S++==0&&ME()==125)continue}switch(A+=Bp(y),y*S){case 38:w=d>0?1:(A+="\f",-1);break;case 44:a[l++]=(kn(A)-1)*w,w=1;break;case 64:Qi()===45&&(A+=tu(Sn())),m=Qi(),d=p=kn(f=A+=zE(kc())),y++;break;case 45:v===45&&kn(A)==2&&(S=0)}}return s}function Im(t,e,r,n,i,s,o,a,c,l,d,p){for(var m=i-1,g=i===0?s:[""],v=x0(g),S=0,C=0,w=0;S<n;++S)for(var y=0,f=Ys(t,m+1,m=I0(C=o[S])),u=t;y<v;++y)(u=O0(C>0?g[y]+" "+f:Ne(f,/&\f/g,g[y])))&&(c[w++]=u);return Ql(t,e,r,i===0?Jl:a,c,l,d,p)}function VE(t,e,r,n){return Ql(t,e,r,P0,Bp(kE()),Ys(t,2,-2),0,n)}function Om(t,e,r,n,i){return Ql(t,e,r,jp,Ys(t,0,n),Ys(t,n+1,-1),n,i)}function k0(t,e,r){switch(xE(t,e)){case 5103:return tt+"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 tt+t+t;case 4789:return ta+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return tt+t+ta+t+lt+t+t;case 5936:switch(Vt(t,e+11)){case 114:return tt+t+lt+Ne(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return tt+t+lt+Ne(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return tt+t+lt+Ne(t,/[svh]\w+-[tblr]{2}/,"lr")+t}case 6828:case 4268:case 2903:return tt+t+lt+t+t;case 6165:return tt+t+lt+"flex-"+t+t;case 5187:return tt+t+Ne(t,/(\w+).+(:[^]+)/,tt+"box-$1$2"+lt+"flex-$1$2")+t;case 5443:return tt+t+lt+"flex-item-"+Ne(t,/flex-|-self/g,"")+(ti(t,/flex-|baseline/)?"":lt+"grid-row-"+Ne(t,/flex-|-self/g,""))+t;case 4675:return tt+t+lt+"flex-line-pack"+Ne(t,/align-content|flex-|-self/g,"")+t;case 5548:return tt+t+lt+Ne(t,"shrink","negative")+t;case 5292:return tt+t+lt+Ne(t,"basis","preferred-size")+t;case 6060:return tt+"box-"+Ne(t,"-grow","")+tt+t+lt+Ne(t,"grow","positive")+t;case 4554:return tt+Ne(t,/([^-])(transform)/g,"$1"+tt+"$2")+t;case 6187:return Ne(Ne(Ne(t,/(zoom-|grab)/,tt+"$1"),/(image-set)/,tt+"$1"),t,"")+t;case 5495:case 3959:return Ne(t,/(image-set\([^]*)/,tt+"$1$`$1");case 4968:return Ne(Ne(t,/(.+:)(flex-)?(.*)/,tt+"box-pack:$3"+lt+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+tt+t+t;case 4200:if(!ti(t,/flex-|baseline/))return lt+"grid-column-align"+Ys(t,e)+t;break;case 2592:case 3360:return lt+Ne(t,"template-","")+t;case 4384:case 3616:return r&&r.some(function(n,i){return e=i,ti(n.props,/grid-\w+-end/)})?~Dc(t+(r=r[e].value),"span",0)?t:lt+Ne(t,"-start","")+t+lt+"grid-row-span:"+(~Dc(r,"span",0)?ti(r,/\d+/):+ti(r,/\d+/)-+ti(t,/\d+/))+";":lt+Ne(t,"-start","")+t;case 4896:case 4128:return r&&r.some(function(n){return ti(n.props,/grid-\w+-start/)})?t:lt+Ne(Ne(t,"-end","-span"),"span ","")+t;case 4095:case 3583:case 4068:case 2532:return Ne(t,/(.+)-inline(.+)/,tt+"$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(kn(t)-1-e>6)switch(Vt(t,e+1)){case 109:if(Vt(t,e+4)!==45)break;case 102:return Ne(t,/(.+:)(.+)-([^]+)/,"$1"+tt+"$2-$3$1"+ta+(Vt(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~Dc(t,"stretch",0)?k0(Ne(t,"stretch","fill-available"),e,r)+t:t}break;case 5152:case 5920:return Ne(t,/(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/,function(n,i,s,o,a,c,l){return lt+i+":"+s+l+(o?lt+i+"-span:"+(a?c:+c-+s)+l:"")+t});case 4949:if(Vt(t,e+6)===121)return Ne(t,":",":"+tt)+t;break;case 6444:switch(Vt(t,Vt(t,14)===45?18:11)){case 120:return Ne(t,/(.+:)([^;\s!]+)(;|(\s+)?!.+)?/,"$1"+tt+(Vt(t,14)===45?"inline-":"")+"box$3$1"+tt+"$2$3$1"+lt+"$2box$3")+t;case 100:return Ne(t,":",":"+lt)+t}break;case 5719:case 2647:case 2135:case 3927:case 2391:return Ne(t,"scroll-","scroll-snap-")+t}return t}function hl(t,e){for(var r="",n=0;n<t.length;n++)r+=e(t[n],n,t,e)||"";return r}function GE(t,e,r,n){switch(t.type){case OE:if(t.children.length)break;case IE:case jp:return t.return=t.return||t.value;case P0:return"";case T0:return t.return=t.value+"{"+hl(t.children,n)+"}";case Jl:if(!kn(t.value=t.props.join(",")))return""}return kn(r=hl(t.children,n))?t.return=t.value+"{"+r+"}":""}function XE(t){var e=x0(t);return function(r,n,i,s){for(var o="",a=0;a<e;a++)o+=t[a](r,n,i,s)||"";return o}}function UE(t){return function(e){e.root||(e=e.return)&&t(e)}}function WE(t,e,r,n){if(t.length>-1&&!t.return)switch(t.type){case jp:t.return=k0(t.value,t.length,r);return;case T0:return hl([bi(t,{value:Ne(t.value,"@","@"+tt)})],n);case Jl:if(t.length)return DE(r=t.props,function(i){switch(ti(i,n=/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":_s(bi(t,{props:[Ne(i,/:(read-\w+)/,":"+ta+"$1")]})),_s(bi(t,{props:[i]})),hf(t,{props:Tm(r,n)});break;case"::placeholder":_s(bi(t,{props:[Ne(i,/:(plac\w+)/,":"+tt+"input-$1")]})),_s(bi(t,{props:[Ne(i,/:(plac\w+)/,":"+ta+"$1")]})),_s(bi(t,{props:[Ne(i,/:(plac\w+)/,lt+"input-$1")]})),_s(bi(t,{props:[i]})),hf(t,{props:Tm(r,n)});break}return""})}}var YE={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,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},Ue={},as=typeof process<"u"&&Ue!==void 0&&(Ue.REACT_APP_SC_ATTR||Ue.SC_ATTR)||"data-styled",M0="active",N0="data-styled-version",ed="6.1.19",Fp=`/*!sc*/
52
+ `,ml=typeof window<"u"&&typeof document<"u",ZE=!!(typeof SC_DISABLE_SPEEDY=="boolean"?SC_DISABLE_SPEEDY:typeof process<"u"&&Ue!==void 0&&Ue.REACT_APP_SC_DISABLE_SPEEDY!==void 0&&Ue.REACT_APP_SC_DISABLE_SPEEDY!==""?Ue.REACT_APP_SC_DISABLE_SPEEDY!=="false"&&Ue.REACT_APP_SC_DISABLE_SPEEDY:typeof process<"u"&&Ue!==void 0&&Ue.SC_DISABLE_SPEEDY!==void 0&&Ue.SC_DISABLE_SPEEDY!==""?Ue.SC_DISABLE_SPEEDY!=="false"&&Ue.SC_DISABLE_SPEEDY:Ue.NODE_ENV!=="production"),xm=/invalid hook call/i,Wa=new Set,qE=function(t,e){if(Ue.NODE_ENV!=="production"){var r=e?' with the id of "'.concat(e,'"'):"",n="The component ".concat(t).concat(r,` has been created dynamically.
53
+ `)+`You may see this warning because you've called styled inside another component.
54
+ To resolve this only create new StyledComponents outside of any render method and function component.
55
+ See https://styled-components.com/docs/basics#define-styled-components-outside-of-the-render-method for more info.
56
+ `,i=console.error;try{var s=!0;console.error=function(o){for(var a=[],c=1;c<arguments.length;c++)a[c-1]=arguments[c];xm.test(o)?(s=!1,Wa.delete(n)):i.apply(void 0,Ws([o],a,!1))},K.useRef(),s&&!Wa.has(n)&&(console.warn(n),Wa.add(n))}catch(o){xm.test(o.message)&&Wa.delete(n)}finally{console.error=i}}},td=Object.freeze([]),qs=Object.freeze({});function L0(t,e,r){return r===void 0&&(r=qs),t.theme!==r.theme&&t.theme||e||r.theme}var vf=new Set(["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","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","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","tr","track","u","ul","use","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"]),JE=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,KE=/(^-|-$)/g;function Dm(t){return t.replace(JE,"-").replace(KE,"")}var QE=/(a)(d)/gi,Ya=52,km=function(t){return String.fromCharCode(t+(t>25?39:97))};function bf(t){var e,r="";for(e=Math.abs(t);e>Ya;e=e/Ya|0)r=km(e%Ya)+r;return(km(e%Ya)+r).replace(QE,"$1-$2")}var ru,j0=5381,qi=function(t,e){for(var r=e.length;r;)t=33*t^e.charCodeAt(--r);return t},B0=function(t){return qi(j0,t)};function $E(t){return bf(B0(t)>>>0)}function gl(t){return Ue.NODE_ENV!=="production"&&typeof t=="string"&&t||t.displayName||t.name||"Component"}function nu(t){return typeof t=="string"&&(Ue.NODE_ENV==="production"||t.charAt(0)===t.charAt(0).toLowerCase())}var F0=typeof Symbol=="function"&&Symbol.for,z0=F0?Symbol.for("react.memo"):60115,eP=F0?Symbol.for("react.forward_ref"):60112,tP={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},rP={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},H0={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},nP=((ru={})[eP]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},ru[z0]=H0,ru);function Mm(t){return("type"in(e=t)&&e.type.$$typeof)===z0?H0:"$$typeof"in t?nP[t.$$typeof]:tP;var e}var iP=Object.defineProperty,sP=Object.getOwnPropertyNames,Nm=Object.getOwnPropertySymbols,oP=Object.getOwnPropertyDescriptor,aP=Object.getPrototypeOf,Lm=Object.prototype;function zp(t,e,r){if(typeof e!="string"){if(Lm){var n=aP(e);n&&n!==Lm&&zp(t,n,r)}var i=sP(e);Nm&&(i=i.concat(Nm(e)));for(var s=Mm(t),o=Mm(e),a=0;a<i.length;++a){var c=i[a];if(!(c in rP||r&&r[c]||o&&c in o||s&&c in s)){var l=oP(e,c);try{iP(t,c,l)}catch{}}}}return t}function Js(t){return typeof t=="function"}function Hp(t){return typeof t=="object"&&"styledComponentId"in t}function Ji(t,e){return t&&e?"".concat(t," ").concat(e):t||e||""}function jm(t,e){if(t.length===0)return"";for(var r=t[0],n=1;n<t.length;n++)r+=t[n];return r}function Ks(t){return t!==null&&typeof t=="object"&&t.constructor.name===Object.name&&!("props"in t&&t.$$typeof)}function yf(t,e,r){if(r===void 0&&(r=!1),!r&&!Ks(t)&&!Array.isArray(t))return e;if(Array.isArray(e))for(var n=0;n<e.length;n++)t[n]=yf(t[n],e[n]);else if(Ks(e))for(var n in e)t[n]=yf(t[n],e[n]);return t}function Vp(t,e){Object.defineProperty(t,"toString",{value:e})}var cP=Ue.NODE_ENV!=="production"?{1:`Cannot create styled-component for component: %s.
57
+
58
+ `,2:`Can't collect styles once you've consumed a \`ServerStyleSheet\`'s styles! \`ServerStyleSheet\` is a one off instance for each server-side render cycle.
59
+
60
+ - Are you trying to reuse it across renders?
61
+ - Are you accidentally calling collectStyles twice?
62
+
63
+ `,3:`Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.
64
+
65
+ `,4:`The \`StyleSheetManager\` expects a valid target or sheet prop!
66
+
67
+ - Does this error occur on the client and is your target falsy?
68
+ - Does this error occur on the server and is the sheet falsy?
69
+
70
+ `,5:`The clone method cannot be used on the client!
71
+
72
+ - Are you running in a client-like environment on the server?
73
+ - Are you trying to run SSR on the client?
74
+
75
+ `,6:`Trying to insert a new style tag, but the given Node is unmounted!
76
+
77
+ - Are you using a custom target that isn't mounted?
78
+ - Does your document not have a valid head element?
79
+ - Have you accidentally removed a style tag manually?
80
+
81
+ `,7:'ThemeProvider: Please return an object from your "theme" prop function, e.g.\n\n```js\ntheme={() => ({})}\n```\n\n',8:`ThemeProvider: Please make your "theme" prop an object.
82
+
83
+ `,9:"Missing document `<head>`\n\n",10:`Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021
84
+
85
+ `,11:`_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.
86
+
87
+ `,12:"It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\`\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\n\n",13:`%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.
88
+
89
+ `,14:`ThemeProvider: "theme" prop is required.
90
+
91
+ `,15:"A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\n\n```js\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\n```\n\n",16:`Reached the limit of how many styled components may be created at group %s.
92
+ You may only create up to 1,073,741,824 components. If you're creating components dynamically,
93
+ as for instance in your render method then you may be running into this limitation.
94
+
95
+ `,17:`CSSStyleSheet could not be found on HTMLStyleElement.
96
+ Has styled-components' style tag been unmounted or altered by another script?
97
+ `,18:"ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`"}:{};function lP(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var r=t[0],n=[],i=1,s=t.length;i<s;i+=1)n.push(t[i]);return n.forEach(function(o){r=r.replace(/%[a-z]/,o)}),r}function lo(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return Ue.NODE_ENV==="production"?new Error("An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#".concat(t," for more information.").concat(e.length>0?" Args: ".concat(e.join(", ")):"")):new Error(lP.apply(void 0,Ws([cP[t]],e,!1)).trim())}var dP=function(){function t(e){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=e}return t.prototype.indexOfGroup=function(e){for(var r=0,n=0;n<e;n++)r+=this.groupSizes[n];return r},t.prototype.insertRules=function(e,r){if(e>=this.groupSizes.length){for(var n=this.groupSizes,i=n.length,s=i;e>=s;)if((s<<=1)<0)throw lo(16,"".concat(e));this.groupSizes=new Uint32Array(s),this.groupSizes.set(n),this.length=s;for(var o=i;o<s;o++)this.groupSizes[o]=0}for(var a=this.indexOfGroup(e+1),c=(o=0,r.length);o<c;o++)this.tag.insertRule(a,r[o])&&(this.groupSizes[e]++,a++)},t.prototype.clearGroup=function(e){if(e<this.length){var r=this.groupSizes[e],n=this.indexOfGroup(e),i=n+r;this.groupSizes[e]=0;for(var s=n;s<i;s++)this.tag.deleteRule(n)}},t.prototype.getGroup=function(e){var r="";if(e>=this.length||this.groupSizes[e]===0)return r;for(var n=this.groupSizes[e],i=this.indexOfGroup(e),s=i+n,o=i;o<s;o++)r+="".concat(this.tag.getRule(o)).concat(Fp);return r},t}(),uP=1<<30,Nc=new Map,vl=new Map,Lc=1,Za=function(t){if(Nc.has(t))return Nc.get(t);for(;vl.has(Lc);)Lc++;var e=Lc++;if(Ue.NODE_ENV!=="production"&&((0|e)<0||e>uP))throw lo(16,"".concat(e));return Nc.set(t,e),vl.set(e,t),e},fP=function(t,e){Lc=e+1,Nc.set(t,e),vl.set(e,t)},pP="style[".concat(as,"][").concat(N0,'="').concat(ed,'"]'),hP=new RegExp("^".concat(as,'\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)')),mP=function(t,e,r){for(var n,i=r.split(","),s=0,o=i.length;s<o;s++)(n=i[s])&&t.registerName(e,n)},gP=function(t,e){for(var r,n=((r=e.textContent)!==null&&r!==void 0?r:"").split(Fp),i=[],s=0,o=n.length;s<o;s++){var a=n[s].trim();if(a){var c=a.match(hP);if(c){var l=0|parseInt(c[1],10),d=c[2];l!==0&&(fP(d,l),mP(t,d,c[3]),t.getTag().insertRules(l,i)),i.length=0}else i.push(a)}}},Bm=function(t){for(var e=document.querySelectorAll(pP),r=0,n=e.length;r<n;r++){var i=e[r];i&&i.getAttribute(as)!==M0&&(gP(t,i),i.parentNode&&i.parentNode.removeChild(i))}};function vP(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:null}var V0=function(t){var e=document.head,r=t||e,n=document.createElement("style"),i=function(a){var c=Array.from(a.querySelectorAll("style[".concat(as,"]")));return c[c.length-1]}(r),s=i!==void 0?i.nextSibling:null;n.setAttribute(as,M0),n.setAttribute(N0,ed);var o=vP();return o&&n.setAttribute("nonce",o),r.insertBefore(n,s),n},bP=function(){function t(e){this.element=V0(e),this.element.appendChild(document.createTextNode("")),this.sheet=function(r){if(r.sheet)return r.sheet;for(var n=document.styleSheets,i=0,s=n.length;i<s;i++){var o=n[i];if(o.ownerNode===r)return o}throw lo(17)}(this.element),this.length=0}return t.prototype.insertRule=function(e,r){try{return this.sheet.insertRule(r,e),this.length++,!0}catch{return!1}},t.prototype.deleteRule=function(e){this.sheet.deleteRule(e),this.length--},t.prototype.getRule=function(e){var r=this.sheet.cssRules[e];return r&&r.cssText?r.cssText:""},t}(),yP=function(){function t(e){this.element=V0(e),this.nodes=this.element.childNodes,this.length=0}return t.prototype.insertRule=function(e,r){if(e<=this.length&&e>=0){var n=document.createTextNode(r);return this.element.insertBefore(n,this.nodes[e]||null),this.length++,!0}return!1},t.prototype.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},t.prototype.getRule=function(e){return e<this.length?this.nodes[e].textContent:""},t}(),SP=function(){function t(e){this.rules=[],this.length=0}return t.prototype.insertRule=function(e,r){return e<=this.length&&(this.rules.splice(e,0,r),this.length++,!0)},t.prototype.deleteRule=function(e){this.rules.splice(e,1),this.length--},t.prototype.getRule=function(e){return e<this.length?this.rules[e]:""},t}(),Fm=ml,wP={isServer:!ml,useCSSOMInjection:!ZE},G0=function(){function t(e,r,n){e===void 0&&(e=qs),r===void 0&&(r={});var i=this;this.options=ar(ar({},wP),e),this.gs=r,this.names=new Map(n),this.server=!!e.isServer,!this.server&&ml&&Fm&&(Fm=!1,Bm(this)),Vp(this,function(){return function(s){for(var o=s.getTag(),a=o.length,c="",l=function(p){var m=function(w){return vl.get(w)}(p);if(m===void 0)return"continue";var g=s.names.get(m),v=o.getGroup(p);if(g===void 0||!g.size||v.length===0)return"continue";var S="".concat(as,".g").concat(p,'[id="').concat(m,'"]'),C="";g!==void 0&&g.forEach(function(w){w.length>0&&(C+="".concat(w,","))}),c+="".concat(v).concat(S,'{content:"').concat(C,'"}').concat(Fp)},d=0;d<a;d++)l(d);return c}(i)})}return t.registerId=function(e){return Za(e)},t.prototype.rehydrate=function(){!this.server&&ml&&Bm(this)},t.prototype.reconstructWithOptions=function(e,r){return r===void 0&&(r=!0),new t(ar(ar({},this.options),e),this.gs,r&&this.names||void 0)},t.prototype.allocateGSInstance=function(e){return this.gs[e]=(this.gs[e]||0)+1},t.prototype.getTag=function(){return this.tag||(this.tag=(e=function(r){var n=r.useCSSOMInjection,i=r.target;return r.isServer?new SP(i):n?new bP(i):new yP(i)}(this.options),new dP(e)));var e},t.prototype.hasNameForId=function(e,r){return this.names.has(e)&&this.names.get(e).has(r)},t.prototype.registerName=function(e,r){if(Za(e),this.names.has(e))this.names.get(e).add(r);else{var n=new Set;n.add(r),this.names.set(e,n)}},t.prototype.insertRules=function(e,r,n){this.registerName(e,r),this.getTag().insertRules(Za(e),n)},t.prototype.clearNames=function(e){this.names.has(e)&&this.names.get(e).clear()},t.prototype.clearRules=function(e){this.getTag().clearGroup(Za(e)),this.clearNames(e)},t.prototype.clearTag=function(){this.tag=void 0},t}(),CP=/&/g,AP=/^\s*\/\/.*$/gm;function X0(t,e){return t.map(function(r){return r.type==="rule"&&(r.value="".concat(e," ").concat(r.value),r.value=r.value.replaceAll(",",",".concat(e," ")),r.props=r.props.map(function(n){return"".concat(e," ").concat(n)})),Array.isArray(r.children)&&r.type!=="@keyframes"&&(r.children=X0(r.children,e)),r})}function RP(t){var e,r,n,i=qs,s=i.options,o=s===void 0?qs:s,a=i.plugins,c=a===void 0?td:a,l=function(m,g,v){return v.startsWith(r)&&v.endsWith(r)&&v.replaceAll(r,"").length>0?".".concat(e):m},d=c.slice();d.push(function(m){m.type===Jl&&m.value.includes("&")&&(m.props[0]=m.props[0].replace(CP,r).replace(n,l))}),o.prefix&&d.push(WE),d.push(GE);var p=function(m,g,v,S){g===void 0&&(g=""),v===void 0&&(v=""),S===void 0&&(S="&"),e=S,r=g,n=new RegExp("\\".concat(r,"\\b"),"g");var C=m.replace(AP,""),w=HE(v||g?"".concat(v," ").concat(g," { ").concat(C," }"):C);o.namespace&&(w=X0(w,o.namespace));var y=[];return hl(w,XE(d.concat(UE(function(f){return y.push(f)})))),y};return p.hash=c.length?c.reduce(function(m,g){return g.name||lo(15),qi(m,g.name)},j0).toString():"",p}var _P=new G0,Sf=RP(),U0=K.createContext({shouldForwardProp:void 0,styleSheet:_P,stylis:Sf});U0.Consumer;K.createContext(void 0);function zm(){return K.useContext(U0)}var Hm=function(){function t(e,r){var n=this;this.inject=function(i,s){s===void 0&&(s=Sf);var o=n.name+s.hash;i.hasNameForId(n.id,o)||i.insertRules(n.id,o,s(n.rules,o,"@keyframes"))},this.name=e,this.id="sc-keyframes-".concat(e),this.rules=r,Vp(this,function(){throw lo(12,String(n.name))})}return t.prototype.getName=function(e){return e===void 0&&(e=Sf),this.name+e.hash},t}(),EP=function(t){return t>="A"&&t<="Z"};function Vm(t){for(var e="",r=0;r<t.length;r++){var n=t[r];if(r===1&&n==="-"&&t[0]==="-")return t;EP(n)?e+="-"+n.toLowerCase():e+=n}return e.startsWith("ms-")?"-"+e:e}var W0=function(t){return t==null||t===!1||t===""},Y0=function(t){var e,r,n=[];for(var i in t){var s=t[i];t.hasOwnProperty(i)&&!W0(s)&&(Array.isArray(s)&&s.isCss||Js(s)?n.push("".concat(Vm(i),":"),s,";"):Ks(s)?n.push.apply(n,Ws(Ws(["".concat(i," {")],Y0(s),!1),["}"],!1)):n.push("".concat(Vm(i),": ").concat((e=i,(r=s)==null||typeof r=="boolean"||r===""?"":typeof r!="number"||r===0||e in YE||e.startsWith("--")?String(r).trim():"".concat(r,"px")),";")))}return n};function $i(t,e,r,n){if(W0(t))return[];if(Hp(t))return[".".concat(t.styledComponentId)];if(Js(t)){if(!Js(s=t)||s.prototype&&s.prototype.isReactComponent||!e)return[t];var i=t(e);return Ue.NODE_ENV==="production"||typeof i!="object"||Array.isArray(i)||i instanceof Hm||Ks(i)||i===null||console.error("".concat(gl(t)," is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.")),$i(i,e,r,n)}var s;return t instanceof Hm?r?(t.inject(r,n),[t.getName(n)]):[t]:Ks(t)?Y0(t):Array.isArray(t)?Array.prototype.concat.apply(td,t.map(function(o){return $i(o,e,r,n)})):[t.toString()]}function PP(t){for(var e=0;e<t.length;e+=1){var r=t[e];if(Js(r)&&!Hp(r))return!1}return!0}var TP=B0(ed),IP=function(){function t(e,r,n){this.rules=e,this.staticRulesId="",this.isStatic=Ue.NODE_ENV==="production"&&(n===void 0||n.isStatic)&&PP(e),this.componentId=r,this.baseHash=qi(TP,r),this.baseStyle=n,G0.registerId(r)}return t.prototype.generateAndInjectStyles=function(e,r,n){var i=this.baseStyle?this.baseStyle.generateAndInjectStyles(e,r,n):"";if(this.isStatic&&!n.hash)if(this.staticRulesId&&r.hasNameForId(this.componentId,this.staticRulesId))i=Ji(i,this.staticRulesId);else{var s=jm($i(this.rules,e,r,n)),o=bf(qi(this.baseHash,s)>>>0);if(!r.hasNameForId(this.componentId,o)){var a=n(s,".".concat(o),void 0,this.componentId);r.insertRules(this.componentId,o,a)}i=Ji(i,o),this.staticRulesId=o}else{for(var c=qi(this.baseHash,n.hash),l="",d=0;d<this.rules.length;d++){var p=this.rules[d];if(typeof p=="string")l+=p,Ue.NODE_ENV!=="production"&&(c=qi(c,p));else if(p){var m=jm($i(p,e,r,n));c=qi(c,m+d),l+=m}}if(l){var g=bf(c>>>0);r.hasNameForId(this.componentId,g)||r.insertRules(this.componentId,g,n(l,".".concat(g),void 0,this.componentId)),i=Ji(i,g)}}return i},t}(),Gp=K.createContext(void 0);Gp.Consumer;var iu={},Gm=new Set;function OP(t,e,r){var n=Hp(t),i=t,s=!nu(t),o=e.attrs,a=o===void 0?td:o,c=e.componentId,l=c===void 0?function(u,h){var b=typeof u!="string"?"sc":Dm(u);iu[b]=(iu[b]||0)+1;var A="".concat(b,"-").concat($E(ed+b+iu[b]));return h?"".concat(h,"-").concat(A):A}(e.displayName,e.parentComponentId):c,d=e.displayName,p=d===void 0?function(u){return nu(u)?"styled.".concat(u):"Styled(".concat(gl(u),")")}(t):d,m=e.displayName&&e.componentId?"".concat(Dm(e.displayName),"-").concat(e.componentId):e.componentId||l,g=n&&i.attrs?i.attrs.concat(a).filter(Boolean):a,v=e.shouldForwardProp;if(n&&i.shouldForwardProp){var S=i.shouldForwardProp;if(e.shouldForwardProp){var C=e.shouldForwardProp;v=function(u,h){return S(u,h)&&C(u,h)}}else v=S}var w=new IP(r,m,n?i.componentStyle:void 0);function y(u,h){return function(b,A,R){var _=b.attrs,E=b.componentStyle,P=b.defaultProps,T=b.foldedComponentIds,k=b.styledComponentId,F=b.target,X=K.useContext(Gp),O=zm(),L=b.shouldForwardProp||O.shouldForwardProp;Ue.NODE_ENV!=="production"&&K.useDebugValue(k);var B=L0(A,X,P)||qs,z=function(ie,ce,se){for(var ae,le=ar(ar({},ce),{className:void 0,theme:se}),ye=0;ye<ie.length;ye+=1){var me=Js(ae=ie[ye])?ae(le):ae;for(var ke in me)le[ke]=ke==="className"?Ji(le[ke],me[ke]):ke==="style"?ar(ar({},le[ke]),me[ke]):me[ke]}return ce.className&&(le.className=Ji(le.className,ce.className)),le}(_,A,B),Z=z.as||F,V={};for(var G in z)z[G]===void 0||G[0]==="$"||G==="as"||G==="theme"&&z.theme===B||(G==="forwardedAs"?V.as=z.forwardedAs:L&&!L(G,Z)||(V[G]=z[G],L||Ue.NODE_ENV!=="development"||TE(G)||Gm.has(G)||!vf.has(Z)||(Gm.add(G),console.warn('styled-components: it looks like an unknown prop "'.concat(G,'" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via `<StyleSheetManager shouldForwardProp={...}>` (connect an API like `@emotion/is-prop-valid`) or consider using transient props (`$` prefix for automatic filtering.)')))));var te=function(ie,ce){var se=zm(),ae=ie.generateAndInjectStyles(ce,se.styleSheet,se.stylis);return Ue.NODE_ENV!=="production"&&K.useDebugValue(ae),ae}(E,z);Ue.NODE_ENV!=="production"&&b.warnTooManyClasses&&b.warnTooManyClasses(te);var re=Ji(T,k);return te&&(re+=" "+te),z.className&&(re+=" "+z.className),V[nu(Z)&&!vf.has(Z)?"class":"className"]=re,R&&(V.ref=R),K.createElement(Z,V)}(f,u,h)}y.displayName=p;var f=K.forwardRef(y);return f.attrs=g,f.componentStyle=w,f.displayName=p,f.shouldForwardProp=v,f.foldedComponentIds=n?Ji(i.foldedComponentIds,i.styledComponentId):"",f.styledComponentId=m,f.target=n?i.target:t,Object.defineProperty(f,"defaultProps",{get:function(){return this._foldedDefaultProps},set:function(u){this._foldedDefaultProps=n?function(h){for(var b=[],A=1;A<arguments.length;A++)b[A-1]=arguments[A];for(var R=0,_=b;R<_.length;R++)yf(h,_[R],!0);return h}({},i.defaultProps,u):u}}),Ue.NODE_ENV!=="production"&&(qE(p,m),f.warnTooManyClasses=function(u,h){var b={},A=!1;return function(R){if(!A&&(b[R]=!0,Object.keys(b).length>=200)){var _=h?' with the id of "'.concat(h,'"'):"";console.warn("Over ".concat(200," classes were generated for component ").concat(u).concat(_,`.
98
+ `)+`Consider using the attrs method, together with a style object for frequently changed styles.
99
+ Example:
100
+ const Component = styled.div.attrs(props => ({
101
+ style: {
102
+ background: props.background,
103
+ },
104
+ }))\`width: 100%;\`
105
+
106
+ <Component />`),A=!0,b={}}}}(p,m)),Vp(f,function(){return".".concat(f.styledComponentId)}),s&&zp(f,t,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,styledComponentId:!0,target:!0}),f}function Xm(t,e){for(var r=[t[0]],n=0,i=e.length;n<i;n+=1)r.push(e[n],t[n+1]);return r}var Um=function(t){return Object.assign(t,{isCss:!0})};function xP(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];if(Js(t)||Ks(t))return Um($i(Xm(td,Ws([t],e,!0))));var n=t;return e.length===0&&n.length===1&&typeof n[0]=="string"?$i(n):Um($i(Xm(n,e)))}function wf(t,e,r){if(r===void 0&&(r=qs),!e)throw lo(1,e);var n=function(i){for(var s=[],o=1;o<arguments.length;o++)s[o-1]=arguments[o];return t(e,r,xP.apply(void 0,Ws([i],s,!1)))};return n.attrs=function(i){return wf(t,e,ar(ar({},r),{attrs:Array.prototype.concat(r.attrs,i).filter(Boolean)}))},n.withConfig=function(i){return wf(t,e,ar(ar({},r),i))},n}var Z0=function(t){return wf(OP,t)},q0=Z0;vf.forEach(function(t){q0[t]=Z0(t)});function DP(t){var e=K.forwardRef(function(r,n){var i=L0(r,K.useContext(Gp),t.defaultProps);return Ue.NODE_ENV!=="production"&&i===void 0&&console.warn('[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class "'.concat(gl(t),'"')),K.createElement(t,ar({},r,{theme:i,ref:n}))});return e.displayName="WithTheme(".concat(gl(t),")"),zp(e,t)}Ue.NODE_ENV!=="production"&&typeof navigator<"u"&&navigator.product==="ReactNative"&&console.warn(`It looks like you've imported 'styled-components' on React Native.
107
+ Perhaps you're looking to import 'styled-components/native'?
108
+ Read more about this at https://www.styled-components.com/docs/basics#react-native`);var qa="__sc-".concat(as,"__");Ue.NODE_ENV!=="production"&&Ue.NODE_ENV!=="test"&&typeof window<"u"&&(window[qa]||(window[qa]=0),window[qa]===1&&console.warn(`It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.
109
+
110
+ See https://s-c.sh/2BAXzed for more info.`),window[qa]+=1);const kP=t=>Y.jsx("div",{...t}),MP=q0(kP)`
111
+ display: flex;
112
+ flex-direction: column;
113
+ justify-content: center;
114
+ align-items: center;
115
+ svg {
116
+ margin: 0.1rem;
117
+ margin-right: 0.1rem;
118
+ margin-top: 0.1rem;
119
+ justify-content: center;
120
+ color: red;
121
+ width: ${t=>t.width||"3rem"};
122
+ height: ${t=>t.height||t.width||"3rem"};
123
+ cursor: pointer;
124
+ }
125
+ label {
126
+ display: ${t=>t.display||"none"};
127
+ }
128
+ `,NP=t=>{const e=K.useRef();return K.useEffect(()=>{e.current.innerHTML=t},[t]),e},J0=t=>{const{sublabel:e="",onClick:r=()=>{},onTouchStart:n=()=>{},svg:i,svgOver:s,height:o="3rem",width:a="3rem",title:c}=t||{},[l,d]=K.useState(i),p=NP(l);return Y.jsxs(MP,{title:c,display:e!==""?"block":"none",onClick:r,onTouchStart:n,onMouseOver:()=>d(s||i),onMouseOut:()=>d(i),width:a,height:o,children:[Y.jsx("div",{ref:p}),Y.jsx("label",{children:e})]})};J0.defaultProps={theme:{}};const K0=DP(J0),LP=7,Q0=({onChangeFiles:t,totalFiles:e,maxFiles:r=3,accept:n="image/*, application/pdf",capture:i=null,nameFileLabel:s="Subir archivos",classNames:o="",maxFileSize:a=LP,onMaxFileSizeError:c=()=>{alert("El archivo supera el tamaño máximo")}})=>{const[l,d]=K.useState([]),[p,m]=K.useState(e),g=({file:w},y)=>{if(y=="done"){const f=l;f.push(w),d(f),t(l),m(l.length)}else if(y=="removed"){const f=l,u=l.indexOf(w);u>-1&&f.splice(u,1),d(f),t(l),m(l.length)}},v=w=>new Promise(y=>{S0(w).then(f=>{y(f.map(u=>u.fileObject))})}),S=({fileWithMeta:w})=>{const{meta:y,remove:f}=w;return y.size/(1024*1024)>a&&(c(),f()),Y.jsxs("div",{className:"dropzone-upload-previewContainer",children:[y.type==="application/pdf"?Y.jsxs(Y.Fragment,{children:[Y.jsx(K0,{className:"form-control flex",svg:pl,svgOver:pl,height:"1.6rem",width:"1.6rem",title:y.name}),Y.jsx("p",{children:y.name.length>17?y.name.substring(0,17)+"...":y.name})]}):Y.jsxs(Y.Fragment,{children:[Y.jsx("img",{className:"dropzone-upload-previewImage",src:y.previewUrl,alt:y.name}),Y.jsx("p",{children:y.name.length>17?y.name.substring(0,17)+"...":y.name})]}),Y.jsxs("p",{children:[(y.size/1024).toFixed(2)," .Kb"]}),Y.jsx("button",{onClick:f,className:"dropzone-upload-delete-btn icon-trash"})]})},C=({accept:w,onFiles:y,getFilesFromEvent:f})=>{const u=p>0?`${r-p} archivo/s más`:s;return Y.jsxs("label",{className:"dropzone-upload-button",children:[u,Y.jsx("input",{style:{display:"none"},type:"file",accept:w,capture:i,multiple:!0,onChange:h=>{f(h).then(b=>{y(b)})}})]})};return K.useEffect(()=>{m(e)},[e]),Y.jsx("div",{className:`${o}`,children:Y.jsx(ql,{disableUpload:!1,maxFiles:p<r?r:0,maxSize:a,InputComponent:C,PreviewComponent:S,classNames:{dropzone:"dropzone-upload-frame"},onChangeStatus:g,getFilesFromEvent:v,accept:n})})};var su={exports:{}};var Wm;function jP(){return Wm||(Wm=1,function(t){(function(){var e={}.hasOwnProperty;function r(){for(var s="",o=0;o<arguments.length;o++){var a=arguments[o];a&&(s=i(s,n(a)))}return s}function n(s){if(typeof s=="string"||typeof s=="number")return s;if(typeof s!="object")return"";if(Array.isArray(s))return r.apply(null,s);if(s.toString!==Object.prototype.toString&&!s.toString.toString().includes("[native code]"))return s.toString();var o="";for(var a in s)e.call(s,a)&&s[a]&&(o=i(o,a));return o}function i(s,o){return o?s?s+" "+o:s+o:s}t.exports?(r.default=r,t.exports=r):window.classNames=r})()}(su)),su.exports}var BP=jP();const ii=Xn(BP);function bl(t){"@babel/helpers - typeof";return bl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},bl(t)}var FP;function si(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:FP;return e?t.split(" ").map(function(r){return e[r]||r}).join(" "):t}var Ym={};function Cf(t){Ym[t]||(typeof console<"u"&&console.error(t),Ym[t]=!0)}function zP(t,e){return function(n,i,s){n[i]!==null&&typeof n[i]<"u"&&Cf('"'.concat(i,'" property of "').concat(s,`" has been deprecated.
129
+ `).concat(e));for(var o=arguments.length,a=new Array(o>3?o-3:0),c=3;c<o;c++)a[c-3]=arguments[c];return t.apply(void 0,[n,i,s].concat(a))}}var HP=(typeof window>"u"?"undefined":bl(window))==="object"&&window.Element||function(){};function VP(t,e,r){if(!(t[e]instanceof HP))return new Error("Invalid prop `"+e+"` supplied to `"+r+"`. Expected prop to be an instance of Element. Validation failed.")}N.oneOfType([N.string,N.func,VP,N.shape({current:N.any})]);var uo=N.oneOfType([N.func,N.string,N.shape({$$typeof:N.symbol,render:N.func}),N.arrayOf(N.oneOfType([N.func,N.string,N.shape({$$typeof:N.symbol,render:N.func})]))]);function $0(t){var e=bl(t);return t!=null&&(e==="object"||e==="function")}var GP=["className","cssModule","noGutters","tag","widths"];function Af(){return Af=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Af.apply(this,arguments)}function XP(t,e){if(t==null)return{};var r=UP(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function UP(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var WP=["xs","sm","md","lg","xl","xxl"],Es=N.oneOfType([N.number,N.string]),YP={tag:uo,noGutters:zP(N.bool,"Please use Bootstrap 5 gutter utility classes. https://getbootstrap.com/docs/5.0/layout/gutters/"),className:N.string,cssModule:N.object,xs:Es,sm:Es,md:Es,lg:Es,xl:Es,xxl:Es,widths:N.array};function Rf(t){var e=t.className,r=t.cssModule,n=t.noGutters,i=t.tag,s=i===void 0?"div":i,o=t.widths,a=o===void 0?WP:o,c=XP(t,GP),l=[];a.forEach(function(p,m){var g=t[p];if(delete c[p],!!g){var v=!m;l.push(v?"row-cols-".concat(g):"row-cols-".concat(p,"-").concat(g))}});var d=si(ii(e,n?"gx-0":null,"row",l),r);return K.createElement(s,Af({},c,{className:d}))}Rf.propTypes=YP;var ZP=["className","cssModule","widths","tag"];function _f(){return _f=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},_f.apply(this,arguments)}function qP(t,e){if(t==null)return{};var r=JP(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function JP(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}function ou(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}var eS=["xs","sm","md","lg","xl","xxl"],Zm=N.oneOfType([N.number,N.string]),Ps=N.oneOfType([N.bool,N.number,N.string,N.shape({size:N.oneOfType([N.bool,N.number,N.string]),order:Zm,offset:Zm})]),KP={tag:uo,xs:Ps,sm:Ps,md:Ps,lg:Ps,xl:Ps,xxl:Ps,className:N.string,cssModule:N.object,widths:N.array},qm=function(e,r,n){return n===!0||n===""?e?"col":"col-".concat(r):n==="auto"?e?"col-auto":"col-".concat(r,"-auto"):e?"col-".concat(n):"col-".concat(r,"-").concat(n)},QP=function(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:eS,i=e,s=[];return n.forEach(function(o,a){var c=i[o];if(delete i[o],!(!c&&c!=="")){var l=!a;if($0(c)){var d,p=l?"-":"-".concat(o,"-"),m=qm(l,o,c.size);s.push(si(ii((d={},ou(d,m,c.size||c.size===""),ou(d,"order".concat(p).concat(c.order),c.order||c.order===0),ou(d,"offset".concat(p).concat(c.offset),c.offset||c.offset===0),d)),r))}else{var g=qm(l,o,c);s.push(g)}}}),{colClasses:s,modifiedAttributes:i}};function tS(t){var e=t.className,r=t.cssModule,n=t.widths,i=n===void 0?eS:n,s=t.tag,o=s===void 0?"div":s,a=qP(t,ZP),c=QP(a,r,i),l=c.modifiedAttributes,d=c.colClasses;d.length||d.push("col");var p=si(ii(e,d),r);return K.createElement(o,_f({},l,{className:p}))}tS.propTypes=KP;var $P=["className","cssModule","variant","innerRef"];function Ef(){return Ef=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Ef.apply(this,arguments)}function Jm(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function eT(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Jm(Object(r),!0).forEach(function(n){tT(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Jm(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function tT(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function rT(t,e){if(t==null)return{};var r=nT(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function nT(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var iT={active:N.bool,"aria-label":N.string,onClick:N.func,variant:N.oneOf(["white"]),className:N.string,cssModule:N.object,innerRef:N.oneOfType([N.object,N.string,N.func])};function rS(t){var e=t.className;t.cssModule;var r=t.variant,n=t.innerRef,i=rT(t,$P),s=si(ii(e,"btn-close",r&&"btn-close-".concat(r)));return K.createElement("button",Ef({ref:n,type:"button",className:s},eT({"aria-label":"close"},i)))}rS.propTypes=iT;var sT=["active","aria-label","block","className","close","cssModule","color","outline","size","tag","innerRef"];function Pf(){return Pf=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Pf.apply(this,arguments)}function oT(t,e){if(t==null)return{};var r=aT(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function aT(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var cT={active:N.bool,"aria-label":N.string,block:N.bool,children:N.node,className:N.string,cssModule:N.object,close:N.bool,color:N.string,disabled:N.bool,innerRef:N.oneOfType([N.object,N.func,N.string]),onClick:N.func,outline:N.bool,size:N.string,tag:uo};function Xp(t){var e=K.useCallback(function(y){if(t.disabled){y.preventDefault();return}if(t.onClick)return t.onClick(y)},[t.onClick,t.disabled]),r=t.active,n=t["aria-label"],i=t.block,s=t.className,o=t.close,a=t.cssModule,c=t.color,l=c===void 0?"secondary":c,d=t.outline,p=t.size,m=t.tag,g=m===void 0?"button":m,v=t.innerRef,S=oT(t,sT);if(o)return K.createElement(rS,S);var C="btn".concat(d?"-outline":"","-").concat(l),w=si(ii(s,"btn",C,p?"btn-".concat(p):!1,i?"d-block w-100":!1,{active:r,disabled:t.disabled}),a);return S.href&&g==="button"&&(g="a"),K.createElement(g,Pf({type:g==="button"&&S.onClick?"button":void 0},S,{className:w,ref:v,onClick:e,"aria-label":n}))}Xp.propTypes=cT;function _e(){return _e=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)({}).hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},_e.apply(null,arguments)}function lT(t,e){if(t==null)return{};var r={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(e.indexOf(n)!==-1)continue;r[n]=t[n]}return r}function Tf(t,e){return Tf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,n){return r.__proto__=n,r},Tf(t,e)}function dT(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}var uT=["className","cssModule","row","disabled","check","inline","floating","noMargin","tag","switch"];function If(){return If=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},If.apply(this,arguments)}function fT(t,e){if(t==null)return{};var r=pT(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function pT(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var hT={children:N.node,row:N.bool,check:N.bool,switch:N.bool,inline:N.bool,floating:N.bool,noMargin:N.bool,disabled:N.bool,tag:uo,className:N.string,cssModule:N.object};function Up(t){var e=t.className,r=t.cssModule,n=t.row,i=t.disabled,s=t.check,o=t.inline,a=t.floating,c=t.noMargin,l=t.tag,d=l===void 0?"div":l,p=t.switch,m=fT(t,uT),g=s||p,v=si(ii(e,n?"row":!1,g?"form-check":!1,p?"form-switch":!1,g||c?!1:"mb-3",g&&o?"form-check-inline":!1,g&&i?"disabled":!1,a&&"form-floating"),r);return d==="fieldset"&&(m.disabled=i),K.createElement(d,If({},m,{className:v}))}Up.propTypes=hT;function Of(t){"@babel/helpers - typeof";return Of=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Of(t)}var mT=["className","cssModule","type","bsSize","valid","invalid","tag","addon","plaintext","innerRef"];function xf(){return xf=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},xf.apply(this,arguments)}function gT(t,e){if(t==null)return{};var r=vT(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function vT(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}function bT(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function yT(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function ST(t,e,r){return e&&yT(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t}function wT(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Df(t,e)}function Df(t,e){return Df=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},Df(t,e)}function CT(t){var e=RT();return function(){var n=yl(t),i;if(e){var s=yl(this).constructor;i=Reflect.construct(n,arguments,s)}else i=n.apply(this,arguments);return AT(this,i)}}function AT(t,e){if(e&&(Of(e)==="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return kf(t)}function kf(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function RT(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function yl(t){return yl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},yl(t)}var _T={children:N.node,type:N.string,size:N.oneOfType([N.number,N.string]),bsSize:N.string,valid:N.bool,invalid:N.bool,tag:uo,innerRef:N.oneOfType([N.object,N.func,N.string]),plaintext:N.bool,addon:N.bool,className:N.string,cssModule:N.object},Wp=function(t){wT(r,t);var e=CT(r);function r(n){var i;return bT(this,r),i=e.call(this,n),i.getRef=i.getRef.bind(kf(i)),i.focus=i.focus.bind(kf(i)),i}return ST(r,[{key:"getRef",value:function(i){this.props.innerRef&&this.props.innerRef(i),this.ref=i}},{key:"focus",value:function(){this.ref&&this.ref.focus()}},{key:"render",value:function(){var i=this.props,s=i.className,o=i.cssModule,a=i.type,c=a===void 0?"text":a,l=i.bsSize,d=i.valid,p=i.invalid,m=i.tag,g=i.addon,v=i.plaintext,S=i.innerRef,C=gT(i,mT),w=["switch","radio","checkbox"].indexOf(c)>-1,y=/\D/g,f=c==="textarea",u=c==="select",h=c==="range",b=m||(u||f?c:"input"),A="form-control";v?(A="".concat(A,"-plaintext"),b=m||"input"):h?A="form-range":u?A="form-select":w&&(g?A=null:A="form-check-input"),C.size&&y.test(C.size)&&(Cf(`Please use the prop "bsSize" instead of the "size" to bootstrap's input sizing.`),l=C.size,delete C.size);var R=si(ii(s,p&&"is-invalid",d&&"is-valid",l?u?"form-select-".concat(l):"form-control-".concat(l):!1,A),o);return(b==="input"||m&&typeof m=="function")&&(C.type=c==="switch"?"checkbox":c),C.children&&!(v||c==="select"||typeof b!="string"||b==="select")&&(Cf('Input with a type of "'.concat(c,'" cannot have children. Please use "value"/"defaultValue" instead.')),delete C.children),K.createElement(b,xf({},C,{ref:S,className:R,"aria-invalid":p}))}}]),r}(K.Component);Wp.propTypes=_T;var ET=["className","cssModule","hidden","widths","tag","check","size","for"];function Mf(){return Mf=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Mf.apply(this,arguments)}function au(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function PT(t,e){if(t==null)return{};var r=TT(t,e),n,i;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(i=0;i<s.length;i++)n=s[i],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function TT(t,e){if(t==null)return{};var r={},n=Object.keys(t),i,s;for(s=0;s<n.length;s++)i=n[s],!(e.indexOf(i)>=0)&&(r[i]=t[i]);return r}var IT=["xs","sm","md","lg","xl","xxl"],cu=N.oneOfType([N.number,N.string]),Ts=N.oneOfType([N.bool,N.string,N.number,N.shape({size:cu,order:cu,offset:cu})]),OT={children:N.node,hidden:N.bool,check:N.bool,size:N.string,for:N.string,tag:uo,className:N.string,cssModule:N.object,xs:Ts,sm:Ts,md:Ts,lg:Ts,xl:Ts,xxl:Ts,widths:N.array},Km=function(e,r,n){return n===!0||n===""?e?"col":"col-".concat(r):n==="auto"?e?"col-auto":"col-".concat(r,"-auto"):e?"col-".concat(n):"col-".concat(r,"-").concat(n)};function rd(t){var e=t.className,r=t.cssModule,n=t.hidden,i=t.widths,s=i===void 0?IT:i,o=t.tag,a=o===void 0?"label":o,c=t.check,l=t.size,d=t.for,p=PT(t,ET),m=[];s.forEach(function(C,w){var y=t[C];if(delete p[C],!(!y&&y!=="")){var f=!w,u;if($0(y)){var h,b=f?"-":"-".concat(C,"-");u=Km(f,C,y.size),m.push(si(ii((h={},au(h,u,y.size||y.size===""),au(h,"order".concat(b).concat(y.order),y.order||y.order===0),au(h,"offset".concat(b).concat(y.offset),y.offset||y.offset===0),h))),r)}else u=Km(f,C,y),m.push(u)}});var g=l||m.length,v=!(c||g),S=si(ii(e,n?"visually-hidden":!1,c?"form-check-label":!1,l?"col-form-label-".concat(l):!1,m,g?"col-form-label":!1,v?"form-label":!1),r);return K.createElement(a,Mf({htmlFor:d},p,{className:S}))}rd.propTypes=OT;const xT=({accept:t="image/*, application/pdf",classNames:e="",onChangeFiles:r,totalFiles:n,label:i="Cargar Dni",maxFiles:s=2,maxSize:o=2,onMaxFileSizeError:a=()=>{alert("El archivo supera el tamaño máximo")}})=>{const[c,l]=K.useState([]),d=({file:v},S)=>{if(S==="done"){const C=[...c];C.push(v),l(C),r(C)}else if(S==="removed"){const C=[...c],w=C.indexOf(v);w>-1&&C.splice(w,1),l(C),r(C)}},p=v=>new Promise(S=>{S0(v).then(C=>{S(C.map(w=>w.fileObject))})}),m=({fileWithMeta:v})=>{const{meta:S,remove:C}=v;return S.size/(1024*1024)>o&&(a(),C()),Y.jsxs("div",{className:"dropzone-upload-previewContainer",style:{width:"100%",display:"flex",alignItems:"center"},children:[S.type==="application/pdf"?Y.jsxs(Y.Fragment,{children:[Y.jsx(K0,{className:"form-control flex",svg:pl,svgOver:pl,height:"1.6rem",width:"1.6rem",title:S.name}),Y.jsx("p",{style:{paddingRight:"1rem"},children:S.name.length>17?S.name.substring(0,17)+"...":S.name})]}):Y.jsxs(Y.Fragment,{children:[Y.jsx("img",{className:"dropzone-upload-previewImage mt-1",src:S.previewUrl,alt:S.name,style:{width:"110px",height:"110px",objectFit:"cover",marginRight:"0.5rem"}}),Y.jsx("div",{className:"dropzone-upload-file-name-container",children:Y.jsx("p",{className:"dropzone-upload-file-name",title:S.name,children:S.name})})]}),Y.jsx("button",{style:{marginTop:"0rem"},onClick:C,className:"dropzone-upload-delete-btn simple-icon-trash"})]})},g=({accept:v,onFiles:S,getFilesFromEvent:C})=>{const w=n>0?`${s-n} archivos más`:`${i}`;return Y.jsx(Y.Fragment,{children:Y.jsxs(Xp,{outline:!0,block:!0,size:"xs",className:"mt-5 ml-5",onClick:()=>document.getElementById("fileInput").click(),children:[w,Y.jsx("input",{id:"fileInput",style:{display:"none"},type:"file",accept:v,multiple:!0,onChange:y=>{C(y).then(f=>{S(f)})}})]})})};return Y.jsx("div",{className:e,children:Y.jsx(ql,{disableUpload:!1,maxFiles:n<s?s:0,maxSize:o,InputComponent:g,PreviewComponent:m,classNames:{dropzone:"dropzone-upload-frame"},onChangeStatus:d,getFilesFromEvent:p,accept:t})})},jc=t=>Y.jsx(tS,{...t,widths:["xxs","xs","sm","md","lg","xl","xxl"]}),DT=({className:t})=>Y.jsx("div",{className:`separator ${t}`}),kT=({className:t,id:e,checked:r,children:n,defaultChecked:i,disabled:s,key:o,label:a,onChange:c})=>Y.jsxs(Up,{check:!0,className:"custom-checkbox",children:[Y.jsx(Wp,{type:"checkbox",id:`check_${e}`,className:t,checked:r,onChange:c,defaultChecked:i,disabled:s}),Y.jsx(rd,{check:!0,htmlFor:`check_${e}`,children:a}),n]},o),MT=({className:t,customClassName:e,checked:r,disabled:n,id:i,inline:s,label:o,name:a,onChange:c})=>Y.jsxs(Up,{check:!0,inline:s,className:`custom-radio ${e||""}`,children:[Y.jsx(Wp,{id:i,type:"radio",name:a,checked:r,onChange:c,disabled:n,className:t}),Y.jsx(rd,{check:!0,htmlFor:i,children:o})]});function cs(t){"@babel/helpers - typeof";return cs=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},cs(t)}function NT(t,e){if(cs(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(cs(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function nS(t){var e=NT(t,"string");return cs(e)=="symbol"?e:e+""}function Wo(t,e,r){return(e=nS(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Qm(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function we(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Qm(Object(r),!0).forEach(function(n){Wo(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Qm(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function LT(t){if(Array.isArray(t))return t}function jT(t,e){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var n,i,s,o,a=[],c=!0,l=!1;try{if(s=(r=r.call(t)).next,e===0){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=s.call(r)).done)&&(a.push(n.value),a.length!==e);c=!0);}catch(d){l=!0,i=d}finally{try{if(!c&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(l)throw i}}return a}}function Nf(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function iS(t,e){if(t){if(typeof t=="string")return Nf(t,e);var r={}.toString.call(t).slice(8,-1);return r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set"?Array.from(t):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Nf(t,e):void 0}}function BT(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
130
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ni(t,e){return LT(t)||jT(t,e)||iS(t,e)||BT()}function li(t,e){if(t==null)return{};var r,n,i=lT(t,e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(n=0;n<s.length;n++)r=s[n],e.indexOf(r)===-1&&{}.propertyIsEnumerable.call(t,r)&&(i[r]=t[r])}return i}var FT=["defaultInputValue","defaultMenuIsOpen","defaultValue","inputValue","menuIsOpen","onChange","onInputChange","onMenuClose","onMenuOpen","value"];function zT(t){var e=t.defaultInputValue,r=e===void 0?"":e,n=t.defaultMenuIsOpen,i=n===void 0?!1:n,s=t.defaultValue,o=s===void 0?null:s,a=t.inputValue,c=t.menuIsOpen,l=t.onChange,d=t.onInputChange,p=t.onMenuClose,m=t.onMenuOpen,g=t.value,v=li(t,FT),S=K.useState(a!==void 0?a:r),C=ni(S,2),w=C[0],y=C[1],f=K.useState(c!==void 0?c:i),u=ni(f,2),h=u[0],b=u[1],A=K.useState(g!==void 0?g:o),R=ni(A,2),_=R[0],E=R[1],P=K.useCallback(function(B,z){typeof l=="function"&&l(B,z),E(B)},[l]),T=K.useCallback(function(B,z){var Z;typeof d=="function"&&(Z=d(B,z)),y(Z!==void 0?Z:B)},[d]),k=K.useCallback(function(){typeof m=="function"&&m(),b(!0)},[m]),F=K.useCallback(function(){typeof p=="function"&&p(),b(!1)},[p]),X=a!==void 0?a:w,O=c!==void 0?c:h,L=g!==void 0?g:_;return we(we({},v),{},{inputValue:X,menuIsOpen:O,onChange:P,onInputChange:T,onMenuClose:F,onMenuOpen:k,value:L})}function HT(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function $m(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,nS(n.key),n)}}function VT(t,e,r){return e&&$m(t.prototype,e),r&&$m(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function GT(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&Tf(t,e)}function Sl(t){return Sl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Sl(t)}function sS(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(sS=function(){return!!t})()}function XT(t,e){if(e&&(cs(e)=="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return dT(t)}function UT(t){var e=sS();return function(){var r,n=Sl(t);if(e){var i=Sl(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return XT(this,r)}}function WT(t){if(Array.isArray(t))return Nf(t)}function YT(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function ZT(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
131
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Yp(t){return WT(t)||YT(t)||iS(t)||ZT()}function qT(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 JT(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 KT=function(){function t(r){var n=this;this._insertTag=function(i){var s;n.tags.length===0?n.insertionPoint?s=n.insertionPoint.nextSibling:n.prepend?s=n.container.firstChild:s=n.before:s=n.tags[n.tags.length-1].nextSibling,n.container.insertBefore(i,s),n.tags.push(i)},this.isSpeedy=r.speedy===void 0?!0:r.speedy,this.tags=[],this.ctr=0,this.nonce=r.nonce,this.key=r.key,this.container=r.container,this.prepend=r.prepend,this.insertionPoint=r.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(n){n.forEach(this._insertTag)},e.insert=function(n){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(JT(this));var i=this.tags[this.tags.length-1];if(this.isSpeedy){var s=qT(i);try{s.insertRule(n,s.cssRules.length)}catch{}}else i.appendChild(document.createTextNode(n));this.ctr++},e.flush=function(){this.tags.forEach(function(n){var i;return(i=n.parentNode)==null?void 0:i.removeChild(n)}),this.tags=[],this.ctr=0},t}(),Kt="-ms-",wl="-moz-",qe="-webkit-",oS="comm",Zp="rule",qp="decl",QT="@import",aS="@keyframes",$T="@layer",eI=Math.abs,nd=String.fromCharCode,tI=Object.assign;function rI(t,e){return Yt(t,0)^45?(((e<<2^Yt(t,0))<<2^Yt(t,1))<<2^Yt(t,2))<<2^Yt(t,3):0}function cS(t){return t.trim()}function nI(t,e){return(t=e.exec(t))?t[0]:t}function Je(t,e,r){return t.replace(e,r)}function Lf(t,e){return t.indexOf(e)}function Yt(t,e){return t.charCodeAt(e)|0}function ia(t,e,r){return t.slice(e,r)}function Mn(t){return t.length}function Jp(t){return t.length}function Ja(t,e){return e.push(t),t}function iI(t,e){return t.map(e).join("")}var id=1,Qs=1,lS=0,br=0,Pt=0,fo="";function sd(t,e,r,n,i,s,o){return{value:t,root:e,parent:r,type:n,props:i,children:s,line:id,column:Qs,length:o,return:""}}function Po(t,e){return tI(sd("",null,null,"",null,null,0),t,{length:-t.length},e)}function sI(){return Pt}function oI(){return Pt=br>0?Yt(fo,--br):0,Qs--,Pt===10&&(Qs=1,id--),Pt}function Ir(){return Pt=br<lS?Yt(fo,br++):0,Qs++,Pt===10&&(Qs=1,id++),Pt}function Bn(){return Yt(fo,br)}function Bc(){return br}function ga(t,e){return ia(fo,t,e)}function sa(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 dS(t){return id=Qs=1,lS=Mn(fo=t),br=0,[]}function uS(t){return fo="",t}function Fc(t){return cS(ga(br-1,jf(t===91?t+2:t===40?t+1:t)))}function aI(t){for(;(Pt=Bn())&&Pt<33;)Ir();return sa(t)>2||sa(Pt)>3?"":" "}function cI(t,e){for(;--e&&Ir()&&!(Pt<48||Pt>102||Pt>57&&Pt<65||Pt>70&&Pt<97););return ga(t,Bc()+(e<6&&Bn()==32&&Ir()==32))}function jf(t){for(;Ir();)switch(Pt){case t:return br;case 34:case 39:t!==34&&t!==39&&jf(Pt);break;case 40:t===41&&jf(t);break;case 92:Ir();break}return br}function lI(t,e){for(;Ir()&&t+Pt!==57;)if(t+Pt===84&&Bn()===47)break;return"/*"+ga(e,br-1)+"*"+nd(t===47?t:Ir())}function dI(t){for(;!sa(Bn());)Ir();return ga(t,br)}function uI(t){return uS(zc("",null,null,null,[""],t=dS(t),0,[0],t))}function zc(t,e,r,n,i,s,o,a,c){for(var l=0,d=0,p=o,m=0,g=0,v=0,S=1,C=1,w=1,y=0,f="",u=i,h=s,b=n,A=f;C;)switch(v=y,y=Ir()){case 40:if(v!=108&&Yt(A,p-1)==58){Lf(A+=Je(Fc(y),"&","&\f"),"&\f")!=-1&&(w=-1);break}case 34:case 39:case 91:A+=Fc(y);break;case 9:case 10:case 13:case 32:A+=aI(v);break;case 92:A+=cI(Bc()-1,7);continue;case 47:switch(Bn()){case 42:case 47:Ja(fI(lI(Ir(),Bc()),e,r),c);break;default:A+="/"}break;case 123*S:a[l++]=Mn(A)*w;case 125*S:case 59:case 0:switch(y){case 0:case 125:C=0;case 59+d:w==-1&&(A=Je(A,/\f/g,"")),g>0&&Mn(A)-p&&Ja(g>32?tg(A+";",n,r,p-1):tg(Je(A," ","")+";",n,r,p-2),c);break;case 59:A+=";";default:if(Ja(b=eg(A,e,r,l,d,i,a,f,u=[],h=[],p),s),y===123)if(d===0)zc(A,e,b,b,u,s,p,a,h);else switch(m===99&&Yt(A,3)===110?100:m){case 100:case 108:case 109:case 115:zc(t,b,b,n&&Ja(eg(t,b,b,0,0,i,a,f,i,u=[],p),h),i,h,p,a,n?u:h);break;default:zc(A,b,b,b,[""],h,0,a,h)}}l=d=g=0,S=w=1,f=A="",p=o;break;case 58:p=1+Mn(A),g=v;default:if(S<1){if(y==123)--S;else if(y==125&&S++==0&&oI()==125)continue}switch(A+=nd(y),y*S){case 38:w=d>0?1:(A+="\f",-1);break;case 44:a[l++]=(Mn(A)-1)*w,w=1;break;case 64:Bn()===45&&(A+=Fc(Ir())),m=Bn(),d=p=Mn(f=A+=dI(Bc())),y++;break;case 45:v===45&&Mn(A)==2&&(S=0)}}return s}function eg(t,e,r,n,i,s,o,a,c,l,d){for(var p=i-1,m=i===0?s:[""],g=Jp(m),v=0,S=0,C=0;v<n;++v)for(var w=0,y=ia(t,p+1,p=eI(S=o[v])),f=t;w<g;++w)(f=cS(S>0?m[w]+" "+y:Je(y,/&\f/g,m[w])))&&(c[C++]=f);return sd(t,e,r,i===0?Zp:a,c,l,d)}function fI(t,e,r){return sd(t,e,r,oS,nd(sI()),ia(t,2,-2),0)}function tg(t,e,r,n){return sd(t,e,r,qp,ia(t,0,n),ia(t,n+1,-1),n)}function Hs(t,e){for(var r="",n=Jp(t),i=0;i<n;i++)r+=e(t[i],i,t,e)||"";return r}function pI(t,e,r,n){switch(t.type){case $T:if(t.children.length)break;case QT:case qp:return t.return=t.return||t.value;case oS:return"";case aS:return t.return=t.value+"{"+Hs(t.children,n)+"}";case Zp:t.value=t.props.join(",")}return Mn(r=Hs(t.children,n))?t.return=t.value+"{"+r+"}":""}function hI(t){var e=Jp(t);return function(r,n,i,s){for(var o="",a=0;a<e;a++)o+=t[a](r,n,i,s)||"";return o}}function mI(t){return function(e){e.root||(e=e.return)&&t(e)}}function gI(t){var e=Object.create(null);return function(r){return e[r]===void 0&&(e[r]=t(r)),e[r]}}var vI=function(e,r,n){for(var i=0,s=0;i=s,s=Bn(),i===38&&s===12&&(r[n]=1),!sa(s);)Ir();return ga(e,br)},bI=function(e,r){var n=-1,i=44;do switch(sa(i)){case 0:i===38&&Bn()===12&&(r[n]=1),e[n]+=vI(br-1,r,n);break;case 2:e[n]+=Fc(i);break;case 4:if(i===44){e[++n]=Bn()===58?"&\f":"",r[n]=e[n].length;break}default:e[n]+=nd(i)}while(i=Ir());return e},yI=function(e,r){return uS(bI(dS(e),r))},rg=new WeakMap,SI=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var r=e.value,n=e.parent,i=e.column===n.column&&e.line===n.line;n.type!=="rule";)if(n=n.parent,!n)return;if(!(e.props.length===1&&r.charCodeAt(0)!==58&&!rg.get(n))&&!i){rg.set(e,!0);for(var s=[],o=yI(r,s),a=n.props,c=0,l=0;c<o.length;c++)for(var d=0;d<a.length;d++,l++)e.props[l]=s[c]?o[c].replace(/&\f/g,a[d]):a[d]+" "+o[c]}}},wI=function(e){if(e.type==="decl"){var r=e.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(e.return="",e.value="")}};function fS(t,e){switch(rI(t,e)){case 5103:return qe+"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 qe+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return qe+t+wl+t+Kt+t+t;case 6828:case 4268:return qe+t+Kt+t+t;case 6165:return qe+t+Kt+"flex-"+t+t;case 5187:return qe+t+Je(t,/(\w+).+(:[^]+)/,qe+"box-$1$2"+Kt+"flex-$1$2")+t;case 5443:return qe+t+Kt+"flex-item-"+Je(t,/flex-|-self/,"")+t;case 4675:return qe+t+Kt+"flex-line-pack"+Je(t,/align-content|flex-|-self/,"")+t;case 5548:return qe+t+Kt+Je(t,"shrink","negative")+t;case 5292:return qe+t+Kt+Je(t,"basis","preferred-size")+t;case 6060:return qe+"box-"+Je(t,"-grow","")+qe+t+Kt+Je(t,"grow","positive")+t;case 4554:return qe+Je(t,/([^-])(transform)/g,"$1"+qe+"$2")+t;case 6187:return Je(Je(Je(t,/(zoom-|grab)/,qe+"$1"),/(image-set)/,qe+"$1"),t,"")+t;case 5495:case 3959:return Je(t,/(image-set\([^]*)/,qe+"$1$`$1");case 4968:return Je(Je(t,/(.+:)(flex-)?(.*)/,qe+"box-pack:$3"+Kt+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+qe+t+t;case 4095:case 3583:case 4068:case 2532:return Je(t,/(.+)-inline(.+)/,qe+"$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(Mn(t)-1-e>6)switch(Yt(t,e+1)){case 109:if(Yt(t,e+4)!==45)break;case 102:return Je(t,/(.+:)(.+)-([^]+)/,"$1"+qe+"$2-$3$1"+wl+(Yt(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~Lf(t,"stretch")?fS(Je(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(Yt(t,e+1)!==115)break;case 6444:switch(Yt(t,Mn(t)-3-(~Lf(t,"!important")&&10))){case 107:return Je(t,":",":"+qe)+t;case 101:return Je(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+qe+(Yt(t,14)===45?"inline-":"")+"box$3$1"+qe+"$2$3$1"+Kt+"$2box$3")+t}break;case 5936:switch(Yt(t,e+11)){case 114:return qe+t+Kt+Je(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return qe+t+Kt+Je(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return qe+t+Kt+Je(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return qe+t+Kt+t+t}return t}var CI=function(e,r,n,i){if(e.length>-1&&!e.return)switch(e.type){case qp:e.return=fS(e.value,e.length);break;case aS:return Hs([Po(e,{value:Je(e.value,"@","@"+qe)})],i);case Zp:if(e.length)return iI(e.props,function(s){switch(nI(s,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return Hs([Po(e,{props:[Je(s,/:(read-\w+)/,":"+wl+"$1")]})],i);case"::placeholder":return Hs([Po(e,{props:[Je(s,/:(plac\w+)/,":"+qe+"input-$1")]}),Po(e,{props:[Je(s,/:(plac\w+)/,":"+wl+"$1")]}),Po(e,{props:[Je(s,/:(plac\w+)/,Kt+"input-$1")]})],i)}return""})}},AI=[CI],RI=function(e){var r=e.key;if(r==="css"){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,function(S){var C=S.getAttribute("data-emotion");C.indexOf(" ")!==-1&&(document.head.appendChild(S),S.setAttribute("data-s",""))})}var i=e.stylisPlugins||AI,s={},o,a=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(S){for(var C=S.getAttribute("data-emotion").split(" "),w=1;w<C.length;w++)s[C[w]]=!0;a.push(S)});var c,l=[SI,wI];{var d,p=[pI,mI(function(S){d.insert(S)})],m=hI(l.concat(i,p)),g=function(C){return Hs(uI(C),m)};c=function(C,w,y,f){d=y,g(C?C+"{"+w.styles+"}":w.styles),f&&(v.inserted[w.name]=!0)}}var v={key:r,sheet:new KT({key:r,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:c};return v.sheet.hydrate(a),v},Ka={exports:{}},$e={};var ng;function _I(){if(ng)return $e;ng=1;var t=typeof Symbol=="function"&&Symbol.for,e=t?Symbol.for("react.element"):60103,r=t?Symbol.for("react.portal"):60106,n=t?Symbol.for("react.fragment"):60107,i=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,d=t?Symbol.for("react.forward_ref"):60112,p=t?Symbol.for("react.suspense"):60113,m=t?Symbol.for("react.suspense_list"):60120,g=t?Symbol.for("react.memo"):60115,v=t?Symbol.for("react.lazy"):60116,S=t?Symbol.for("react.block"):60121,C=t?Symbol.for("react.fundamental"):60117,w=t?Symbol.for("react.responder"):60118,y=t?Symbol.for("react.scope"):60119;function f(h){if(typeof h=="object"&&h!==null){var b=h.$$typeof;switch(b){case e:switch(h=h.type,h){case c:case l:case n:case s:case i:case p:return h;default:switch(h=h&&h.$$typeof,h){case a:case d:case v:case g:case o:return h;default:return b}}case r:return b}}}function u(h){return f(h)===l}return $e.AsyncMode=c,$e.ConcurrentMode=l,$e.ContextConsumer=a,$e.ContextProvider=o,$e.Element=e,$e.ForwardRef=d,$e.Fragment=n,$e.Lazy=v,$e.Memo=g,$e.Portal=r,$e.Profiler=s,$e.StrictMode=i,$e.Suspense=p,$e.isAsyncMode=function(h){return u(h)||f(h)===c},$e.isConcurrentMode=u,$e.isContextConsumer=function(h){return f(h)===a},$e.isContextProvider=function(h){return f(h)===o},$e.isElement=function(h){return typeof h=="object"&&h!==null&&h.$$typeof===e},$e.isForwardRef=function(h){return f(h)===d},$e.isFragment=function(h){return f(h)===n},$e.isLazy=function(h){return f(h)===v},$e.isMemo=function(h){return f(h)===g},$e.isPortal=function(h){return f(h)===r},$e.isProfiler=function(h){return f(h)===s},$e.isStrictMode=function(h){return f(h)===i},$e.isSuspense=function(h){return f(h)===p},$e.isValidElementType=function(h){return typeof h=="string"||typeof h=="function"||h===n||h===l||h===s||h===i||h===p||h===m||typeof h=="object"&&h!==null&&(h.$$typeof===v||h.$$typeof===g||h.$$typeof===o||h.$$typeof===a||h.$$typeof===d||h.$$typeof===C||h.$$typeof===w||h.$$typeof===y||h.$$typeof===S)},$e.typeOf=f,$e}var et={},ig;function EI(){if(ig)return et;ig=1;var t={};return t.NODE_ENV!=="production"&&function(){var e=typeof Symbol=="function"&&Symbol.for,r=e?Symbol.for("react.element"):60103,n=e?Symbol.for("react.portal"):60106,i=e?Symbol.for("react.fragment"):60107,s=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,a=e?Symbol.for("react.provider"):60109,c=e?Symbol.for("react.context"):60110,l=e?Symbol.for("react.async_mode"):60111,d=e?Symbol.for("react.concurrent_mode"):60111,p=e?Symbol.for("react.forward_ref"):60112,m=e?Symbol.for("react.suspense"):60113,g=e?Symbol.for("react.suspense_list"):60120,v=e?Symbol.for("react.memo"):60115,S=e?Symbol.for("react.lazy"):60116,C=e?Symbol.for("react.block"):60121,w=e?Symbol.for("react.fundamental"):60117,y=e?Symbol.for("react.responder"):60118,f=e?Symbol.for("react.scope"):60119;function u(U){return typeof U=="string"||typeof U=="function"||U===i||U===d||U===o||U===s||U===m||U===g||typeof U=="object"&&U!==null&&(U.$$typeof===S||U.$$typeof===v||U.$$typeof===a||U.$$typeof===c||U.$$typeof===p||U.$$typeof===w||U.$$typeof===y||U.$$typeof===f||U.$$typeof===C)}function h(U){if(typeof U=="object"&&U!==null){var We=U.$$typeof;switch(We){case r:var Ye=U.type;switch(Ye){case l:case d:case i:case o:case s:case m:return Ye;default:var Ot=Ye&&Ye.$$typeof;switch(Ot){case c:case p:case S:case v:case a:return Ot;default:return We}}case n:return We}}}var b=l,A=d,R=c,_=a,E=r,P=p,T=i,k=S,F=v,X=n,O=o,L=s,B=m,z=!1;function Z(U){return z||(z=!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.")),V(U)||h(U)===l}function V(U){return h(U)===d}function G(U){return h(U)===c}function te(U){return h(U)===a}function re(U){return typeof U=="object"&&U!==null&&U.$$typeof===r}function ie(U){return h(U)===p}function ce(U){return h(U)===i}function se(U){return h(U)===S}function ae(U){return h(U)===v}function le(U){return h(U)===n}function ye(U){return h(U)===o}function me(U){return h(U)===s}function ke(U){return h(U)===m}et.AsyncMode=b,et.ConcurrentMode=A,et.ContextConsumer=R,et.ContextProvider=_,et.Element=E,et.ForwardRef=P,et.Fragment=T,et.Lazy=k,et.Memo=F,et.Portal=X,et.Profiler=O,et.StrictMode=L,et.Suspense=B,et.isAsyncMode=Z,et.isConcurrentMode=V,et.isContextConsumer=G,et.isContextProvider=te,et.isElement=re,et.isForwardRef=ie,et.isFragment=ce,et.isLazy=se,et.isMemo=ae,et.isPortal=le,et.isProfiler=ye,et.isStrictMode=me,et.isSuspense=ke,et.isValidElementType=u,et.typeOf=h}(),et}var sg;function PI(){if(sg)return Ka.exports;sg=1;var t={};return t.NODE_ENV==="production"?Ka.exports=_I():Ka.exports=EI(),Ka.exports}var lu,og;function TI(){if(og)return lu;og=1;var t=PI(),e={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},r={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},n={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};s[t.ForwardRef]=n,s[t.Memo]=i;function o(v){return t.isMemo(v)?i:s[v.$$typeof]||e}var a=Object.defineProperty,c=Object.getOwnPropertyNames,l=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=Object.prototype;function g(v,S,C){if(typeof S!="string"){if(m){var w=p(S);w&&w!==m&&g(v,w,C)}var y=c(S);l&&(y=y.concat(l(S)));for(var f=o(v),u=o(S),h=0;h<y.length;++h){var b=y[h];if(!r[b]&&!(C&&C[b])&&!(u&&u[b])&&!(f&&f[b])){var A=d(S,b);try{a(v,b,A)}catch{}}}}return v}return lu=g,lu}var II=TI();const ag=Xn(II);var OI=!0;function xI(t,e,r){var n="";return r.split(" ").forEach(function(i){t[i]!==void 0?e.push(t[i]+";"):i&&(n+=i+" ")}),n}var pS=function(e,r,n){var i=e.key+"-"+r.name;(n===!1||OI===!1)&&e.registered[i]===void 0&&(e.registered[i]=r.styles)},DI=function(e,r,n){pS(e,r,n);var i=e.key+"-"+r.name;if(e.inserted[r.name]===void 0){var s=r;do e.insert(r===s?"."+i:"",s,e.sheet,!0),s=s.next;while(s!==void 0)}};function kI(t){for(var e=0,r,n=0,i=t.length;i>=4;++n,i-=4)r=t.charCodeAt(n)&255|(t.charCodeAt(++n)&255)<<8|(t.charCodeAt(++n)&255)<<16|(t.charCodeAt(++n)&255)<<24,r=(r&65535)*1540483477+((r>>>16)*59797<<16),r^=r>>>24,e=(r&65535)*1540483477+((r>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(i){case 3:e^=(t.charCodeAt(n+2)&255)<<16;case 2:e^=(t.charCodeAt(n+1)&255)<<8;case 1:e^=t.charCodeAt(n)&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 MI={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},NI=/[A-Z]|^ms/g,LI=/_EMO_([^_]+?)_([^]*?)_EMO_/g,hS=function(e){return e.charCodeAt(1)===45},cg=function(e){return e!=null&&typeof e!="boolean"},du=gI(function(t){return hS(t)?t:t.replace(NI,"-$&").toLowerCase()}),lg=function(e,r){switch(e){case"animation":case"animationName":if(typeof r=="string")return r.replace(LI,function(n,i,s){return Nn={name:i,styles:s,next:Nn},i})}return MI[e]!==1&&!hS(e)&&typeof r=="number"&&r!==0?r+"px":r};function oa(t,e,r){if(r==null)return"";var n=r;if(n.__emotion_styles!==void 0)return n;switch(typeof r){case"boolean":return"";case"object":{var i=r;if(i.anim===1)return Nn={name:i.name,styles:i.styles,next:Nn},i.name;var s=r;if(s.styles!==void 0){var o=s.next;if(o!==void 0)for(;o!==void 0;)Nn={name:o.name,styles:o.styles,next:Nn},o=o.next;var a=s.styles+";";return a}return jI(t,e,r)}case"function":{if(t!==void 0){var c=Nn,l=r(t);return Nn=c,oa(t,e,l)}break}}var d=r;return d}function jI(t,e,r){var n="";if(Array.isArray(r))for(var i=0;i<r.length;i++)n+=oa(t,e,r[i])+";";else for(var s in r){var o=r[s];if(typeof o!="object"){var a=o;cg(a)&&(n+=du(s)+":"+lg(s,a)+";")}else if(Array.isArray(o)&&typeof o[0]=="string"&&e==null)for(var c=0;c<o.length;c++)cg(o[c])&&(n+=du(s)+":"+lg(s,o[c])+";");else{var l=oa(t,e,o);switch(s){case"animation":case"animationName":{n+=du(s)+":"+l+";";break}default:n+=s+"{"+l+"}"}}}return n}var dg=/label:\s*([^\s;{]+)\s*(;|$)/g,Nn;function mS(t,e,r){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var n=!0,i="";Nn=void 0;var s=t[0];if(s==null||s.raw===void 0)n=!1,i+=oa(r,e,s);else{var o=s;i+=o[0]}for(var a=1;a<t.length;a++)if(i+=oa(r,e,t[a]),n){var c=s;i+=c[a]}dg.lastIndex=0;for(var l="",d;(d=dg.exec(i))!==null;)l+="-"+d[1];var p=kI(i)+l;return{name:p,styles:i,next:Nn}}var BI=function(e){return e()},FI=M.useInsertionEffect?M.useInsertionEffect:!1,zI=FI||BI,gS=M.createContext(typeof HTMLElement<"u"?RI({key:"css"}):null);gS.Provider;var HI=function(e){return K.forwardRef(function(r,n){var i=K.useContext(gS);return e(r,i,n)})},VI=M.createContext({}),Kp={}.hasOwnProperty,Bf="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",GI=function(e,r){var n={};for(var i in r)Kp.call(r,i)&&(n[i]=r[i]);return n[Bf]=e,n},XI=function(e){var r=e.cache,n=e.serialized,i=e.isStringTag;return pS(r,n,i),zI(function(){return DI(r,n,i)}),null},UI=HI(function(t,e,r){var n=t.css;typeof n=="string"&&e.registered[n]!==void 0&&(n=e.registered[n]);var i=t[Bf],s=[n],o="";typeof t.className=="string"?o=xI(e.registered,s,t.className):t.className!=null&&(o=t.className+" ");var a=mS(s,void 0,M.useContext(VI));o+=e.key+"-"+a.name;var c={};for(var l in t)Kp.call(t,l)&&l!=="css"&&l!==Bf&&(c[l]=t[l]);return c.className=o,r&&(c.ref=r),M.createElement(M.Fragment,null,M.createElement(XI,{cache:e,serialized:a,isStringTag:typeof i=="string"}),M.createElement(i,c))}),WI=UI,ve=function(e,r){var n=arguments;if(r==null||!Kp.call(r,"css"))return M.createElement.apply(void 0,n);var i=n.length,s=new Array(i);s[0]=WI,s[1]=GI(e,r);for(var o=2;o<i;o++)s[o]=n[o];return M.createElement.apply(null,s)};(function(t){var e;e||(e=t.JSX||(t.JSX={}))})(ve||(ve={}));function Qp(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return mS(e)}function YI(){var t=Qp.apply(void 0,arguments),e="animation-"+t.name;return{name:e,styles:"@keyframes "+e+"{"+t.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}function ZI(t,e){return e||(e=t.slice(0)),Object.freeze(Object.defineProperties(t,{raw:{value:Object.freeze(e)}}))}const qI=["top","right","bottom","left"],Pi=Math.min,Tr=Math.max,Cl=Math.round,Qa=Math.floor,Fn=t=>({x:t,y:t}),JI={left:"right",right:"left",bottom:"top",top:"bottom"},KI={start:"end",end:"start"};function Ff(t,e,r){return Tr(t,Pi(e,r))}function oi(t,e){return typeof t=="function"?t(e):t}function ai(t){return t.split("-")[0]}function po(t){return t.split("-")[1]}function $p(t){return t==="x"?"y":"x"}function eh(t){return t==="y"?"height":"width"}const QI=new Set(["top","bottom"]);function jn(t){return QI.has(ai(t))?"y":"x"}function th(t){return $p(jn(t))}function $I(t,e,r){r===void 0&&(r=!1);const n=po(t),i=th(t),s=eh(i);let o=i==="x"?n===(r?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=Al(o)),[o,Al(o)]}function e1(t){const e=Al(t);return[zf(t),e,zf(e)]}function zf(t){return t.replace(/start|end/g,e=>KI[e])}const ug=["left","right"],fg=["right","left"],t1=["top","bottom"],r1=["bottom","top"];function n1(t,e,r){switch(t){case"top":case"bottom":return r?e?fg:ug:e?ug:fg;case"left":case"right":return e?t1:r1;default:return[]}}function i1(t,e,r,n){const i=po(t);let s=n1(ai(t),r==="start",n);return i&&(s=s.map(o=>o+"-"+i),e&&(s=s.concat(s.map(zf)))),s}function Al(t){return t.replace(/left|right|bottom|top/g,e=>JI[e])}function s1(t){return{top:0,right:0,bottom:0,left:0,...t}}function vS(t){return typeof t!="number"?s1(t):{top:t,right:t,bottom:t,left:t}}function Rl(t){const{x:e,y:r,width:n,height:i}=t;return{width:n,height:i,top:r,left:e,right:e+n,bottom:r+i,x:e,y:r}}function pg(t,e,r){let{reference:n,floating:i}=t;const s=jn(e),o=th(e),a=eh(o),c=ai(e),l=s==="y",d=n.x+n.width/2-i.width/2,p=n.y+n.height/2-i.height/2,m=n[a]/2-i[a]/2;let g;switch(c){case"top":g={x:d,y:n.y-i.height};break;case"bottom":g={x:d,y:n.y+n.height};break;case"right":g={x:n.x+n.width,y:p};break;case"left":g={x:n.x-i.width,y:p};break;default:g={x:n.x,y:n.y}}switch(po(e)){case"start":g[o]-=m*(r&&l?-1:1);break;case"end":g[o]+=m*(r&&l?-1:1);break}return g}const o1=async(t,e,r)=>{const{placement:n="bottom",strategy:i="absolute",middleware:s=[],platform:o}=r,a=s.filter(Boolean),c=await(o.isRTL==null?void 0:o.isRTL(e));let l=await o.getElementRects({reference:t,floating:e,strategy:i}),{x:d,y:p}=pg(l,n,c),m=n,g={},v=0;for(let S=0;S<a.length;S++){const{name:C,fn:w}=a[S],{x:y,y:f,data:u,reset:h}=await w({x:d,y:p,initialPlacement:n,placement:m,strategy:i,middlewareData:g,rects:l,platform:o,elements:{reference:t,floating:e}});d=y??d,p=f??p,g={...g,[C]:{...g[C],...u}},h&&v<=50&&(v++,typeof h=="object"&&(h.placement&&(m=h.placement),h.rects&&(l=h.rects===!0?await o.getElementRects({reference:t,floating:e,strategy:i}):h.rects),{x:d,y:p}=pg(l,m,c)),S=-1)}return{x:d,y:p,placement:m,strategy:i,middlewareData:g}};async function aa(t,e){var r;e===void 0&&(e={});const{x:n,y:i,platform:s,rects:o,elements:a,strategy:c}=t,{boundary:l="clippingAncestors",rootBoundary:d="viewport",elementContext:p="floating",altBoundary:m=!1,padding:g=0}=oi(e,t),v=vS(g),C=a[m?p==="floating"?"reference":"floating":p],w=Rl(await s.getClippingRect({element:(r=await(s.isElement==null?void 0:s.isElement(C)))==null||r?C:C.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:l,rootBoundary:d,strategy:c})),y=p==="floating"?{x:n,y:i,width:o.floating.width,height:o.floating.height}:o.reference,f=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),u=await(s.isElement==null?void 0:s.isElement(f))?await(s.getScale==null?void 0:s.getScale(f))||{x:1,y:1}:{x:1,y:1},h=Rl(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:y,offsetParent:f,strategy:c}):y);return{top:(w.top-h.top+v.top)/u.y,bottom:(h.bottom-w.bottom+v.bottom)/u.y,left:(w.left-h.left+v.left)/u.x,right:(h.right-w.right+v.right)/u.x}}const a1=t=>({name:"arrow",options:t,async fn(e){const{x:r,y:n,placement:i,rects:s,platform:o,elements:a,middlewareData:c}=e,{element:l,padding:d=0}=oi(t,e)||{};if(l==null)return{};const p=vS(d),m={x:r,y:n},g=th(i),v=eh(g),S=await o.getDimensions(l),C=g==="y",w=C?"top":"left",y=C?"bottom":"right",f=C?"clientHeight":"clientWidth",u=s.reference[v]+s.reference[g]-m[g]-s.floating[v],h=m[g]-s.reference[g],b=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l));let A=b?b[f]:0;(!A||!await(o.isElement==null?void 0:o.isElement(b)))&&(A=a.floating[f]||s.floating[v]);const R=u/2-h/2,_=A/2-S[v]/2-1,E=Pi(p[w],_),P=Pi(p[y],_),T=E,k=A-S[v]-P,F=A/2-S[v]/2+R,X=Ff(T,F,k),O=!c.arrow&&po(i)!=null&&F!==X&&s.reference[v]/2-(F<T?E:P)-S[v]/2<0,L=O?F<T?F-T:F-k:0;return{[g]:m[g]+L,data:{[g]:X,centerOffset:F-X-L,...O&&{alignmentOffset:L}},reset:O}}}),c1=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var r,n;const{placement:i,middlewareData:s,rects:o,initialPlacement:a,platform:c,elements:l}=e,{mainAxis:d=!0,crossAxis:p=!0,fallbackPlacements:m,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:S=!0,...C}=oi(t,e);if((r=s.arrow)!=null&&r.alignmentOffset)return{};const w=ai(i),y=jn(a),f=ai(a)===a,u=await(c.isRTL==null?void 0:c.isRTL(l.floating)),h=m||(f||!S?[Al(a)]:e1(a)),b=v!=="none";!m&&b&&h.push(...i1(a,S,v,u));const A=[a,...h],R=await aa(e,C),_=[];let E=((n=s.flip)==null?void 0:n.overflows)||[];if(d&&_.push(R[w]),p){const F=$I(i,o,u);_.push(R[F[0]],R[F[1]])}if(E=[...E,{placement:i,overflows:_}],!_.every(F=>F<=0)){var P,T;const F=(((P=s.flip)==null?void 0:P.index)||0)+1,X=A[F];if(X&&(!(p==="alignment"?y!==jn(X):!1)||E.every(B=>B.overflows[0]>0&&jn(B.placement)===y)))return{data:{index:F,overflows:E},reset:{placement:X}};let O=(T=E.filter(L=>L.overflows[0]<=0).sort((L,B)=>L.overflows[1]-B.overflows[1])[0])==null?void 0:T.placement;if(!O)switch(g){case"bestFit":{var k;const L=(k=E.filter(B=>{if(b){const z=jn(B.placement);return z===y||z==="y"}return!0}).map(B=>[B.placement,B.overflows.filter(z=>z>0).reduce((z,Z)=>z+Z,0)]).sort((B,z)=>B[1]-z[1])[0])==null?void 0:k[0];L&&(O=L);break}case"initialPlacement":O=a;break}if(i!==O)return{reset:{placement:O}}}return{}}}};function hg(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function mg(t){return qI.some(e=>t[e]>=0)}const l1=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:r}=e,{strategy:n="referenceHidden",...i}=oi(t,e);switch(n){case"referenceHidden":{const s=await aa(e,{...i,elementContext:"reference"}),o=hg(s,r.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:mg(o)}}}case"escaped":{const s=await aa(e,{...i,altBoundary:!0}),o=hg(s,r.floating);return{data:{escapedOffsets:o,escaped:mg(o)}}}default:return{}}}}},bS=new Set(["left","top"]);async function d1(t,e){const{placement:r,platform:n,elements:i}=t,s=await(n.isRTL==null?void 0:n.isRTL(i.floating)),o=ai(r),a=po(r),c=jn(r)==="y",l=bS.has(o)?-1:1,d=s&&c?-1:1,p=oi(e,t);let{mainAxis:m,crossAxis:g,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return a&&typeof v=="number"&&(g=a==="end"?v*-1:v),c?{x:g*d,y:m*l}:{x:m*l,y:g*d}}const u1=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var r,n;const{x:i,y:s,placement:o,middlewareData:a}=e,c=await d1(e,t);return o===((r=a.offset)==null?void 0:r.placement)&&(n=a.arrow)!=null&&n.alignmentOffset?{}:{x:i+c.x,y:s+c.y,data:{...c,placement:o}}}}},f1=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:r,y:n,placement:i}=e,{mainAxis:s=!0,crossAxis:o=!1,limiter:a={fn:C=>{let{x:w,y}=C;return{x:w,y}}},...c}=oi(t,e),l={x:r,y:n},d=await aa(e,c),p=jn(ai(i)),m=$p(p);let g=l[m],v=l[p];if(s){const C=m==="y"?"top":"left",w=m==="y"?"bottom":"right",y=g+d[C],f=g-d[w];g=Ff(y,g,f)}if(o){const C=p==="y"?"top":"left",w=p==="y"?"bottom":"right",y=v+d[C],f=v-d[w];v=Ff(y,v,f)}const S=a.fn({...e,[m]:g,[p]:v});return{...S,data:{x:S.x-r,y:S.y-n,enabled:{[m]:s,[p]:o}}}}}},p1=function(t){return t===void 0&&(t={}),{options:t,fn(e){const{x:r,y:n,placement:i,rects:s,middlewareData:o}=e,{offset:a=0,mainAxis:c=!0,crossAxis:l=!0}=oi(t,e),d={x:r,y:n},p=jn(i),m=$p(p);let g=d[m],v=d[p];const S=oi(a,e),C=typeof S=="number"?{mainAxis:S,crossAxis:0}:{mainAxis:0,crossAxis:0,...S};if(c){const f=m==="y"?"height":"width",u=s.reference[m]-s.floating[f]+C.mainAxis,h=s.reference[m]+s.reference[f]-C.mainAxis;g<u?g=u:g>h&&(g=h)}if(l){var w,y;const f=m==="y"?"width":"height",u=bS.has(ai(i)),h=s.reference[p]-s.floating[f]+(u&&((w=o.offset)==null?void 0:w[p])||0)+(u?0:C.crossAxis),b=s.reference[p]+s.reference[f]+(u?0:((y=o.offset)==null?void 0:y[p])||0)-(u?C.crossAxis:0);v<h?v=h:v>b&&(v=b)}return{[m]:g,[p]:v}}}},h1=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){var r,n;const{placement:i,rects:s,platform:o,elements:a}=e,{apply:c=()=>{},...l}=oi(t,e),d=await aa(e,l),p=ai(i),m=po(i),g=jn(i)==="y",{width:v,height:S}=s.floating;let C,w;p==="top"||p==="bottom"?(C=p,w=m===(await(o.isRTL==null?void 0:o.isRTL(a.floating))?"start":"end")?"left":"right"):(w=p,C=m==="end"?"top":"bottom");const y=S-d.top-d.bottom,f=v-d.left-d.right,u=Pi(S-d[C],y),h=Pi(v-d[w],f),b=!e.middlewareData.shift;let A=u,R=h;if((r=e.middlewareData.shift)!=null&&r.enabled.x&&(R=f),(n=e.middlewareData.shift)!=null&&n.enabled.y&&(A=y),b&&!m){const E=Tr(d.left,0),P=Tr(d.right,0),T=Tr(d.top,0),k=Tr(d.bottom,0);g?R=v-2*(E!==0||P!==0?E+P:Tr(d.left,d.right)):A=S-2*(T!==0||k!==0?T+k:Tr(d.top,d.bottom))}await c({...e,availableWidth:R,availableHeight:A});const _=await o.getDimensions(a.floating);return v!==_.width||S!==_.height?{reset:{rects:!0}}:{}}}};function od(){return typeof window<"u"}function ho(t){return yS(t)?(t.nodeName||"").toLowerCase():"#document"}function Or(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function Un(t){var e;return(e=(yS(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function yS(t){return od()?t instanceof Node||t instanceof Or(t).Node:!1}function Cn(t){return od()?t instanceof Element||t instanceof Or(t).Element:!1}function Hn(t){return od()?t instanceof HTMLElement||t instanceof Or(t).HTMLElement:!1}function gg(t){return!od()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof Or(t).ShadowRoot}const m1=new Set(["inline","contents"]);function va(t){const{overflow:e,overflowX:r,overflowY:n,display:i}=An(t);return/auto|scroll|overlay|hidden|clip/.test(e+n+r)&&!m1.has(i)}const g1=new Set(["table","td","th"]);function v1(t){return g1.has(ho(t))}const b1=[":popover-open",":modal"];function ad(t){return b1.some(e=>{try{return t.matches(e)}catch{return!1}})}const y1=["transform","translate","scale","rotate","perspective"],S1=["transform","translate","scale","rotate","perspective","filter"],w1=["paint","layout","strict","content"];function rh(t){const e=nh(),r=Cn(t)?An(t):t;return y1.some(n=>r[n]?r[n]!=="none":!1)||(r.containerType?r.containerType!=="normal":!1)||!e&&(r.backdropFilter?r.backdropFilter!=="none":!1)||!e&&(r.filter?r.filter!=="none":!1)||S1.some(n=>(r.willChange||"").includes(n))||w1.some(n=>(r.contain||"").includes(n))}function C1(t){let e=Ti(t);for(;Hn(e)&&!$s(e);){if(rh(e))return e;if(ad(e))return null;e=Ti(e)}return null}function nh(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const A1=new Set(["html","body","#document"]);function $s(t){return A1.has(ho(t))}function An(t){return Or(t).getComputedStyle(t)}function cd(t){return Cn(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Ti(t){if(ho(t)==="html")return t;const e=t.assignedSlot||t.parentNode||gg(t)&&t.host||Un(t);return gg(e)?e.host:e}function SS(t){const e=Ti(t);return $s(e)?t.ownerDocument?t.ownerDocument.body:t.body:Hn(e)&&va(e)?e:SS(e)}function ca(t,e,r){var n;e===void 0&&(e=[]),r===void 0&&(r=!0);const i=SS(t),s=i===((n=t.ownerDocument)==null?void 0:n.body),o=Or(i);if(s){const a=Hf(o);return e.concat(o,o.visualViewport||[],va(i)?i:[],a&&r?ca(a):[])}return e.concat(i,ca(i,[],r))}function Hf(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function wS(t){const e=An(t);let r=parseFloat(e.width)||0,n=parseFloat(e.height)||0;const i=Hn(t),s=i?t.offsetWidth:r,o=i?t.offsetHeight:n,a=Cl(r)!==s||Cl(n)!==o;return a&&(r=s,n=o),{width:r,height:n,$:a}}function ih(t){return Cn(t)?t:t.contextElement}function Vs(t){const e=ih(t);if(!Hn(e))return Fn(1);const r=e.getBoundingClientRect(),{width:n,height:i,$:s}=wS(e);let o=(s?Cl(r.width):r.width)/n,a=(s?Cl(r.height):r.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}const R1=Fn(0);function CS(t){const e=Or(t);return!nh()||!e.visualViewport?R1:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function _1(t,e,r){return e===void 0&&(e=!1),!r||e&&r!==Or(t)?!1:e}function ls(t,e,r,n){e===void 0&&(e=!1),r===void 0&&(r=!1);const i=t.getBoundingClientRect(),s=ih(t);let o=Fn(1);e&&(n?Cn(n)&&(o=Vs(n)):o=Vs(t));const a=_1(s,r,n)?CS(s):Fn(0);let c=(i.left+a.x)/o.x,l=(i.top+a.y)/o.y,d=i.width/o.x,p=i.height/o.y;if(s){const m=Or(s),g=n&&Cn(n)?Or(n):n;let v=m,S=Hf(v);for(;S&&n&&g!==v;){const C=Vs(S),w=S.getBoundingClientRect(),y=An(S),f=w.left+(S.clientLeft+parseFloat(y.paddingLeft))*C.x,u=w.top+(S.clientTop+parseFloat(y.paddingTop))*C.y;c*=C.x,l*=C.y,d*=C.x,p*=C.y,c+=f,l+=u,v=Or(S),S=Hf(v)}}return Rl({width:d,height:p,x:c,y:l})}function sh(t,e){const r=cd(t).scrollLeft;return e?e.left+r:ls(Un(t)).left+r}function AS(t,e,r){r===void 0&&(r=!1);const n=t.getBoundingClientRect(),i=n.left+e.scrollLeft-(r?0:sh(t,n)),s=n.top+e.scrollTop;return{x:i,y:s}}function E1(t){let{elements:e,rect:r,offsetParent:n,strategy:i}=t;const s=i==="fixed",o=Un(n),a=e?ad(e.floating):!1;if(n===o||a&&s)return r;let c={scrollLeft:0,scrollTop:0},l=Fn(1);const d=Fn(0),p=Hn(n);if((p||!p&&!s)&&((ho(n)!=="body"||va(o))&&(c=cd(n)),Hn(n))){const g=ls(n);l=Vs(n),d.x=g.x+n.clientLeft,d.y=g.y+n.clientTop}const m=o&&!p&&!s?AS(o,c,!0):Fn(0);return{width:r.width*l.x,height:r.height*l.y,x:r.x*l.x-c.scrollLeft*l.x+d.x+m.x,y:r.y*l.y-c.scrollTop*l.y+d.y+m.y}}function P1(t){return Array.from(t.getClientRects())}function T1(t){const e=Un(t),r=cd(t),n=t.ownerDocument.body,i=Tr(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),s=Tr(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight);let o=-r.scrollLeft+sh(t);const a=-r.scrollTop;return An(n).direction==="rtl"&&(o+=Tr(e.clientWidth,n.clientWidth)-i),{width:i,height:s,x:o,y:a}}function I1(t,e){const r=Or(t),n=Un(t),i=r.visualViewport;let s=n.clientWidth,o=n.clientHeight,a=0,c=0;if(i){s=i.width,o=i.height;const l=nh();(!l||l&&e==="fixed")&&(a=i.offsetLeft,c=i.offsetTop)}return{width:s,height:o,x:a,y:c}}const O1=new Set(["absolute","fixed"]);function x1(t,e){const r=ls(t,!0,e==="fixed"),n=r.top+t.clientTop,i=r.left+t.clientLeft,s=Hn(t)?Vs(t):Fn(1),o=t.clientWidth*s.x,a=t.clientHeight*s.y,c=i*s.x,l=n*s.y;return{width:o,height:a,x:c,y:l}}function vg(t,e,r){let n;if(e==="viewport")n=I1(t,r);else if(e==="document")n=T1(Un(t));else if(Cn(e))n=x1(e,r);else{const i=CS(t);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return Rl(n)}function RS(t,e){const r=Ti(t);return r===e||!Cn(r)||$s(r)?!1:An(r).position==="fixed"||RS(r,e)}function D1(t,e){const r=e.get(t);if(r)return r;let n=ca(t,[],!1).filter(a=>Cn(a)&&ho(a)!=="body"),i=null;const s=An(t).position==="fixed";let o=s?Ti(t):t;for(;Cn(o)&&!$s(o);){const a=An(o),c=rh(o);!c&&a.position==="fixed"&&(i=null),(s?!c&&!i:!c&&a.position==="static"&&!!i&&O1.has(i.position)||va(o)&&!c&&RS(t,o))?n=n.filter(d=>d!==o):i=a,o=Ti(o)}return e.set(t,n),n}function k1(t){let{element:e,boundary:r,rootBoundary:n,strategy:i}=t;const o=[...r==="clippingAncestors"?ad(e)?[]:D1(e,this._c):[].concat(r),n],a=o[0],c=o.reduce((l,d)=>{const p=vg(e,d,i);return l.top=Tr(p.top,l.top),l.right=Pi(p.right,l.right),l.bottom=Pi(p.bottom,l.bottom),l.left=Tr(p.left,l.left),l},vg(e,a,i));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function M1(t){const{width:e,height:r}=wS(t);return{width:e,height:r}}function N1(t,e,r){const n=Hn(e),i=Un(e),s=r==="fixed",o=ls(t,!0,s,e);let a={scrollLeft:0,scrollTop:0};const c=Fn(0);function l(){c.x=sh(i)}if(n||!n&&!s)if((ho(e)!=="body"||va(i))&&(a=cd(e)),n){const g=ls(e,!0,s,e);c.x=g.x+e.clientLeft,c.y=g.y+e.clientTop}else i&&l();s&&!n&&i&&l();const d=i&&!n&&!s?AS(i,a):Fn(0),p=o.left+a.scrollLeft-c.x-d.x,m=o.top+a.scrollTop-c.y-d.y;return{x:p,y:m,width:o.width,height:o.height}}function uu(t){return An(t).position==="static"}function bg(t,e){if(!Hn(t)||An(t).position==="fixed")return null;if(e)return e(t);let r=t.offsetParent;return Un(t)===r&&(r=r.ownerDocument.body),r}function _S(t,e){const r=Or(t);if(ad(t))return r;if(!Hn(t)){let i=Ti(t);for(;i&&!$s(i);){if(Cn(i)&&!uu(i))return i;i=Ti(i)}return r}let n=bg(t,e);for(;n&&v1(n)&&uu(n);)n=bg(n,e);return n&&$s(n)&&uu(n)&&!rh(n)?r:n||C1(t)||r}const L1=async function(t){const e=this.getOffsetParent||_S,r=this.getDimensions,n=await r(t.floating);return{reference:N1(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function j1(t){return An(t).direction==="rtl"}const B1={convertOffsetParentRelativeRectToViewportRelativeRect:E1,getDocumentElement:Un,getClippingRect:k1,getOffsetParent:_S,getElementRects:L1,getClientRects:P1,getDimensions:M1,getScale:Vs,isElement:Cn,isRTL:j1};function ES(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function F1(t,e){let r=null,n;const i=Un(t);function s(){var a;clearTimeout(n),(a=r)==null||a.disconnect(),r=null}function o(a,c){a===void 0&&(a=!1),c===void 0&&(c=1),s();const l=t.getBoundingClientRect(),{left:d,top:p,width:m,height:g}=l;if(a||e(),!m||!g)return;const v=Qa(p),S=Qa(i.clientWidth-(d+m)),C=Qa(i.clientHeight-(p+g)),w=Qa(d),f={rootMargin:-v+"px "+-S+"px "+-C+"px "+-w+"px",threshold:Tr(0,Pi(1,c))||1};let u=!0;function h(b){const A=b[0].intersectionRatio;if(A!==c){if(!u)return o();A?o(!1,A):n=setTimeout(()=>{o(!1,1e-7)},1e3)}A===1&&!ES(l,t.getBoundingClientRect())&&o(),u=!1}try{r=new IntersectionObserver(h,{...f,root:i.ownerDocument})}catch{r=new IntersectionObserver(h,f)}r.observe(t)}return o(!0),s}function PS(t,e,r,n){n===void 0&&(n={});const{ancestorScroll:i=!0,ancestorResize:s=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:c=!1}=n,l=ih(t),d=i||s?[...l?ca(l):[],...ca(e)]:[];d.forEach(w=>{i&&w.addEventListener("scroll",r,{passive:!0}),s&&w.addEventListener("resize",r)});const p=l&&a?F1(l,r):null;let m=-1,g=null;o&&(g=new ResizeObserver(w=>{let[y]=w;y&&y.target===l&&g&&(g.unobserve(e),cancelAnimationFrame(m),m=requestAnimationFrame(()=>{var f;(f=g)==null||f.observe(e)})),r()}),l&&!c&&g.observe(l),g.observe(e));let v,S=c?ls(t):null;c&&C();function C(){const w=ls(t);S&&!ES(S,w)&&r(),S=w,v=requestAnimationFrame(C)}return r(),()=>{var w;d.forEach(y=>{i&&y.removeEventListener("scroll",r),s&&y.removeEventListener("resize",r)}),p?.(),(w=g)==null||w.disconnect(),g=null,c&&cancelAnimationFrame(v)}}const z1=u1,H1=f1,V1=c1,G1=h1,X1=l1,yg=a1,U1=p1,W1=(t,e,r)=>{const n=new Map,i={platform:B1,...r},s={...i.platform,_c:n};return o1(t,e,{...i,platform:s})};var Vf=K.useLayoutEffect,Gf={},Y1=["className","clearValue","cx","getStyles","getClassNames","getValue","hasValue","isMulti","isRtl","options","selectOption","selectProps","setValue","theme"],_l=function(){};function Z1(t,e){return e?e[0]==="-"?t+e:t+"__"+e:t}function q1(t,e){for(var r=arguments.length,n=new Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];var s=[].concat(n);if(e&&t)for(var o in e)e.hasOwnProperty(o)&&e[o]&&s.push("".concat(Z1(t,o)));return s.filter(function(a){return a}).map(function(a){return String(a).trim()}).join(" ")}var Sg=function(e){return iO(e)?e.filter(Boolean):cs(e)==="object"&&e!==null?[e]:[]},TS=function(e){e.className,e.clearValue,e.cx,e.getStyles,e.getClassNames,e.getValue,e.hasValue,e.isMulti,e.isRtl,e.options,e.selectOption,e.selectProps,e.setValue,e.theme;var r=li(e,Y1);return we({},r)},ht=function(e,r,n){var i=e.cx,s=e.getStyles,o=e.getClassNames,a=e.className;return{css:s(r,e),className:i(n??{},o(r,e),a)}};function ld(t){return[document.documentElement,document.body,window].indexOf(t)>-1}function J1(t){return ld(t)?window.innerHeight:t.clientHeight}function IS(t){return ld(t)?window.pageYOffset:t.scrollTop}function El(t,e){if(ld(t)){window.scrollTo(0,e);return}t.scrollTop=e}function K1(t){var e=getComputedStyle(t),r=e.position==="absolute",n=/(auto|scroll)/;if(e.position==="fixed")return document.documentElement;for(var i=t;i=i.parentElement;)if(e=getComputedStyle(i),!(r&&e.position==="static")&&n.test(e.overflow+e.overflowY+e.overflowX))return i;return document.documentElement}function Q1(t,e,r,n){return r*((t=t/n-1)*t*t+1)+e}function $a(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:200,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:_l,i=IS(t),s=e-i,o=10,a=0;function c(){a+=o;var l=Q1(a,i,s,r);El(t,l),a<r?window.requestAnimationFrame(c):n(t)}c()}function wg(t,e){var r=t.getBoundingClientRect(),n=e.getBoundingClientRect(),i=e.offsetHeight/3;n.bottom+i>r.bottom?El(t,Math.min(e.offsetTop+e.clientHeight-t.offsetHeight+i,t.scrollHeight)):n.top-i<r.top&&El(t,Math.max(e.offsetTop-i,0))}function $1(t){var e=t.getBoundingClientRect();return{bottom:e.bottom,height:e.height,left:e.left,right:e.right,top:e.top,width:e.width}}function Cg(){try{return document.createEvent("TouchEvent"),!0}catch{return!1}}function eO(){try{return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)}catch{return!1}}var OS=!1,tO={get passive(){return OS=!0}},ec=typeof window<"u"?window:{};ec.addEventListener&&ec.removeEventListener&&(ec.addEventListener("p",_l,tO),ec.removeEventListener("p",_l,!1));var rO=OS;function nO(t){return t!=null}function iO(t){return Array.isArray(t)}function tc(t,e,r){return t?e:r}var sO=function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];var s=Object.entries(e).filter(function(o){var a=ni(o,1),c=a[0];return!n.includes(c)});return s.reduce(function(o,a){var c=ni(a,2),l=c[0],d=c[1];return o[l]=d,o},{})},oO=["children","innerProps"],aO=["children","innerProps"];function cO(t){var e=t.maxHeight,r=t.menuEl,n=t.minHeight,i=t.placement,s=t.shouldScroll,o=t.isFixedPosition,a=t.controlHeight,c=K1(r),l={placement:"bottom",maxHeight:e};if(!r||!r.offsetParent)return l;var d=c.getBoundingClientRect(),p=d.height,m=r.getBoundingClientRect(),g=m.bottom,v=m.height,S=m.top,C=r.offsetParent.getBoundingClientRect(),w=C.top,y=o?window.innerHeight:J1(c),f=IS(c),u=parseInt(getComputedStyle(r).marginBottom,10),h=parseInt(getComputedStyle(r).marginTop,10),b=w-h,A=y-S,R=b+f,_=p-f-S,E=g-y+f+u,P=f+S-h,T=160;switch(i){case"auto":case"bottom":if(A>=v)return{placement:"bottom",maxHeight:e};if(_>=v&&!o)return s&&$a(c,E,T),{placement:"bottom",maxHeight:e};if(!o&&_>=n||o&&A>=n){s&&$a(c,E,T);var k=o?A-u:_-u;return{placement:"bottom",maxHeight:k}}if(i==="auto"||o){var F=e,X=o?b:R;return X>=n&&(F=Math.min(X-u-a,e)),{placement:"top",maxHeight:F}}if(i==="bottom")return s&&El(c,E),{placement:"bottom",maxHeight:e};break;case"top":if(b>=v)return{placement:"top",maxHeight:e};if(R>=v&&!o)return s&&$a(c,P,T),{placement:"top",maxHeight:e};if(!o&&R>=n||o&&b>=n){var O=e;return(!o&&R>=n||o&&b>=n)&&(O=o?b-h:R-h),s&&$a(c,P,T),{placement:"top",maxHeight:O}}return{placement:"bottom",maxHeight:e};default:throw new Error('Invalid placement provided "'.concat(i,'".'))}return l}function lO(t){var e={bottom:"top",top:"bottom"};return t?e[t]:"bottom"}var xS=function(e){return e==="auto"?"bottom":e},dO=function(e,r){var n,i=e.placement,s=e.theme,o=s.borderRadius,a=s.spacing,c=s.colors;return we((n={label:"menu"},Wo(n,lO(i),"100%"),Wo(n,"position","absolute"),Wo(n,"width","100%"),Wo(n,"zIndex",1),n),r?{}:{backgroundColor:c.neutral0,borderRadius:o,boxShadow:"0 0 0 1px hsla(0, 0%, 0%, 0.1), 0 4px 11px hsla(0, 0%, 0%, 0.1)",marginBottom:a.menuGutter,marginTop:a.menuGutter})},DS=K.createContext(null),uO=function(e){var r=e.children,n=e.minMenuHeight,i=e.maxMenuHeight,s=e.menuPlacement,o=e.menuPosition,a=e.menuShouldScrollIntoView,c=e.theme,l=K.useContext(DS)||{},d=l.setPortalPlacement,p=K.useRef(null),m=K.useState(i),g=ni(m,2),v=g[0],S=g[1],C=K.useState(null),w=ni(C,2),y=w[0],f=w[1],u=c.spacing.controlHeight;return Vf(function(){var h=p.current;if(h){var b=o==="fixed",A=a&&!b,R=cO({maxHeight:i,menuEl:h,minHeight:n,placement:s,shouldScroll:A,isFixedPosition:b,controlHeight:u});S(R.maxHeight),f(R.placement),d?.(R.placement)}},[i,s,o,a,n,d,u]),r({ref:p,placerProps:we(we({},e),{},{placement:y||xS(s),maxHeight:v})})},fO=function(e){var r=e.children,n=e.innerRef,i=e.innerProps;return ve("div",_e({},ht(e,"menu",{menu:!0}),{ref:n},i),r)},pO=fO,hO=function(e,r){var n=e.maxHeight,i=e.theme.spacing.baseUnit;return we({maxHeight:n,overflowY:"auto",position:"relative",WebkitOverflowScrolling:"touch"},r?{}:{paddingBottom:i,paddingTop:i})},mO=function(e){var r=e.children,n=e.innerProps,i=e.innerRef,s=e.isMulti;return ve("div",_e({},ht(e,"menuList",{"menu-list":!0,"menu-list--is-multi":s}),{ref:i},n),r)},kS=function(e,r){var n=e.theme,i=n.spacing.baseUnit,s=n.colors;return we({textAlign:"center"},r?{}:{color:s.neutral40,padding:"".concat(i*2,"px ").concat(i*3,"px")})},gO=kS,vO=kS,bO=function(e){var r=e.children,n=r===void 0?"No options":r,i=e.innerProps,s=li(e,oO);return ve("div",_e({},ht(we(we({},s),{},{children:n,innerProps:i}),"noOptionsMessage",{"menu-notice":!0,"menu-notice--no-options":!0}),i),n)},yO=function(e){var r=e.children,n=r===void 0?"Loading...":r,i=e.innerProps,s=li(e,aO);return ve("div",_e({},ht(we(we({},s),{},{children:n,innerProps:i}),"loadingMessage",{"menu-notice":!0,"menu-notice--loading":!0}),i),n)},SO=function(e){var r=e.rect,n=e.offset,i=e.position;return{left:r.left,position:i,top:n,width:r.width,zIndex:1}},wO=function(e){var r=e.appendTo,n=e.children,i=e.controlElement,s=e.innerProps,o=e.menuPlacement,a=e.menuPosition,c=K.useRef(null),l=K.useRef(null),d=K.useState(xS(o)),p=ni(d,2),m=p[0],g=p[1],v=K.useMemo(function(){return{setPortalPlacement:g}},[]),S=K.useState(null),C=ni(S,2),w=C[0],y=C[1],f=K.useCallback(function(){if(i){var A=$1(i),R=a==="fixed"?0:window.pageYOffset,_=A[m]+R;(_!==w?.offset||A.left!==w?.rect.left||A.width!==w?.rect.width)&&y({offset:_,rect:A})}},[i,a,m,w?.offset,w?.rect.left,w?.rect.width]);Vf(function(){f()},[f]);var u=K.useCallback(function(){typeof l.current=="function"&&(l.current(),l.current=null),i&&c.current&&(l.current=PS(i,c.current,f,{elementResize:"ResizeObserver"in window}))},[i,f]);Vf(function(){u()},[u]);var h=K.useCallback(function(A){c.current=A,u()},[u]);if(!r&&a!=="fixed"||!w)return null;var b=ve("div",_e({ref:h},ht(we(we({},e),{},{offset:w.offset,position:a,rect:w.rect}),"menuPortal",{"menu-portal":!0}),s),n);return ve(DS.Provider,{value:v},r?Np.createPortal(b,r):b)},CO=function(e){var r=e.isDisabled,n=e.isRtl;return{label:"container",direction:n?"rtl":void 0,pointerEvents:r?"none":void 0,position:"relative"}},AO=function(e){var r=e.children,n=e.innerProps,i=e.isDisabled,s=e.isRtl;return ve("div",_e({},ht(e,"container",{"--is-disabled":i,"--is-rtl":s}),n),r)},RO=function(e,r){var n=e.theme.spacing,i=e.isMulti,s=e.hasValue,o=e.selectProps.controlShouldRenderValue;return we({alignItems:"center",display:i&&s&&o?"flex":"grid",flex:1,flexWrap:"wrap",WebkitOverflowScrolling:"touch",position:"relative",overflow:"hidden"},r?{}:{padding:"".concat(n.baseUnit/2,"px ").concat(n.baseUnit*2,"px")})},_O=function(e){var r=e.children,n=e.innerProps,i=e.isMulti,s=e.hasValue;return ve("div",_e({},ht(e,"valueContainer",{"value-container":!0,"value-container--is-multi":i,"value-container--has-value":s}),n),r)},EO=function(){return{alignItems:"center",alignSelf:"stretch",display:"flex",flexShrink:0}},PO=function(e){var r=e.children,n=e.innerProps;return ve("div",_e({},ht(e,"indicatorsContainer",{indicators:!0}),n),r)},Ag,TO=["size"],IO=["innerProps","isRtl","size"];function OO(){return"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."}var xO=Gf.NODE_ENV==="production"?{name:"8mmkcg",styles:"display:inline-block;fill:currentColor;line-height:1;stroke:currentColor;stroke-width:0"}:{name:"tj5bde-Svg",styles:"display:inline-block;fill:currentColor;line-height:1;stroke:currentColor;stroke-width:0;label:Svg;",map:"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGljYXRvcnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlCSSIsImZpbGUiOiJpbmRpY2F0b3JzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBAanN4IGpzeCAqL1xuaW1wb3J0IHsgSlNYLCBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBqc3gsIGtleWZyYW1lcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHtcbiAgQ29tbW9uUHJvcHNBbmRDbGFzc05hbWUsXG4gIENTU09iamVjdFdpdGhMYWJlbCxcbiAgR3JvdXBCYXNlLFxufSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRTdHlsZVByb3BzIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERyb3Bkb3duICYgQ2xlYXIgSWNvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBTdmcgPSAoe1xuICBzaXplLFxuICAuLi5wcm9wc1xufTogSlNYLkludHJpbnNpY0VsZW1lbnRzWydzdmcnXSAmIHsgc2l6ZTogbnVtYmVyIH0pID0+IChcbiAgPHN2Z1xuICAgIGhlaWdodD17c2l6ZX1cbiAgICB3aWR0aD17c2l6ZX1cbiAgICB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcbiAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICBjc3M9e3tcbiAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLFxuICAgICAgZmlsbDogJ2N1cnJlbnRDb2xvcicsXG4gICAgICBsaW5lSGVpZ2h0OiAxLFxuICAgICAgc3Ryb2tlOiAnY3VycmVudENvbG9yJyxcbiAgICAgIHN0cm9rZVdpZHRoOiAwLFxuICAgIH19XG4gICAgey4uLnByb3BzfVxuICAvPlxuKTtcblxuZXhwb3J0IHR5cGUgQ3Jvc3NJY29uUHJvcHMgPSBKU1guSW50cmluc2ljRWxlbWVudHNbJ3N2ZyddICYgeyBzaXplPzogbnVtYmVyIH07XG5leHBvcnQgY29uc3QgQ3Jvc3NJY29uID0gKHByb3BzOiBDcm9zc0ljb25Qcm9wcykgPT4gKFxuICA8U3ZnIHNpemU9ezIwfSB7Li4ucHJvcHN9PlxuICAgIDxwYXRoIGQ9XCJNMTQuMzQ4IDE0Ljg0OWMtMC40NjkgMC40NjktMS4yMjkgMC40NjktMS42OTcgMGwtMi42NTEtMy4wMzAtMi42NTEgMy4wMjljLTAuNDY5IDAuNDY5LTEuMjI5IDAuNDY5LTEuNjk3IDAtMC40NjktMC40NjktMC40NjktMS4yMjkgMC0xLjY5N2wyLjc1OC0zLjE1LTIuNzU5LTMuMTUyYy0wLjQ2OS0wLjQ2OS0wLjQ2OS0xLjIyOCAwLTEuNjk3czEuMjI4LTAuNDY5IDEuNjk3IDBsMi42NTIgMy4wMzEgMi42NTEtMy4wMzFjMC40NjktMC40NjkgMS4yMjgtMC40NjkgMS42OTcgMHMwLjQ2OSAxLjIyOSAwIDEuNjk3bC0yLjc1OCAzLjE1MiAyLjc1OCAzLjE1YzAuNDY5IDAuNDY5IDAuNDY5IDEuMjI5IDAgMS42OTh6XCIgLz5cbiAgPC9Tdmc+XG4pO1xuZXhwb3J0IHR5cGUgRG93bkNoZXZyb25Qcm9wcyA9IEpTWC5JbnRyaW5zaWNFbGVtZW50c1snc3ZnJ10gJiB7IHNpemU/OiBudW1iZXIgfTtcbmV4cG9ydCBjb25zdCBEb3duQ2hldnJvbiA9IChwcm9wczogRG93bkNoZXZyb25Qcm9wcykgPT4gKFxuICA8U3ZnIHNpemU9ezIwfSB7Li4ucHJvcHN9PlxuICAgIDxwYXRoIGQ9XCJNNC41MTYgNy41NDhjMC40MzYtMC40NDYgMS4wNDMtMC40ODEgMS41NzYgMGwzLjkwOCAzLjc0NyAzLjkwOC0zLjc0N2MwLjUzMy0wLjQ4MSAxLjE0MS0wLjQ0NiAxLjU3NCAwIDAuNDM2IDAuNDQ1IDAuNDA4IDEuMTk3IDAgMS42MTUtMC40MDYgMC40MTgtNC42OTUgNC41MDItNC42OTUgNC41MDItMC4yMTcgMC4yMjMtMC41MDIgMC4zMzUtMC43ODcgMC4zMzVzLTAuNTctMC4xMTItMC43ODktMC4zMzVjMCAwLTQuMjg3LTQuMDg0LTQuNjk1LTQuNTAycy0wLjQzNi0xLjE3IDAtMS42MTV6XCIgLz5cbiAgPC9Tdmc+XG4pO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERyb3Bkb3duICYgQ2xlYXIgQnV0dG9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgRHJvcGRvd25JbmRpY2F0b3JQcm9wczxcbiAgT3B0aW9uID0gdW5rbm93bixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4gPSBib29sZWFuLFxuICBHcm91cCBleHRlbmRzIEdyb3VwQmFzZTxPcHRpb24+ID0gR3JvdXBCYXNlPE9wdGlvbj5cbj4gZXh0ZW5kcyBDb21tb25Qcm9wc0FuZENsYXNzTmFtZTxPcHRpb24sIElzTXVsdGksIEdyb3VwPiB7XG4gIC8qKiBUaGUgY2hpbGRyZW4gdG8gYmUgcmVuZGVyZWQgaW5zaWRlIHRoZSBpbmRpY2F0b3IuICovXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlO1xuICAvKiogUHJvcHMgdGhhdCB3aWxsIGJlIHBhc3NlZCBvbiB0byB0aGUgY2hpbGRyZW4uICovXG4gIGlubmVyUHJvcHM6IEpTWC5JbnRyaW5zaWNFbGVtZW50c1snZGl2J107XG4gIC8qKiBUaGUgZm9jdXNlZCBzdGF0ZSBvZiB0aGUgc2VsZWN0LiAqL1xuICBpc0ZvY3VzZWQ6IGJvb2xlYW47XG4gIGlzRGlzYWJsZWQ6IGJvb2xlYW47XG59XG5cbmNvbnN0IGJhc2VDU1MgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHtcbiAgICBpc0ZvY3VzZWQsXG4gICAgdGhlbWU6IHtcbiAgICAgIHNwYWNpbmc6IHsgYmFzZVVuaXQgfSxcbiAgICAgIGNvbG9ycyxcbiAgICB9LFxuICB9OlxuICAgIHwgRHJvcGRvd25JbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuICAgIHwgQ2xlYXJJbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPixcbiAgdW5zdHlsZWQ6IGJvb2xlYW5cbik6IENTU09iamVjdFdpdGhMYWJlbCA9PiAoe1xuICBsYWJlbDogJ2luZGljYXRvckNvbnRhaW5lcicsXG4gIGRpc3BsYXk6ICdmbGV4JyxcbiAgdHJhbnNpdGlvbjogJ2NvbG9yIDE1MG1zJyxcbiAgLi4uKHVuc3R5bGVkXG4gICAgPyB7fVxuICAgIDoge1xuICAgICAgICBjb2xvcjogaXNGb2N1c2VkID8gY29sb3JzLm5ldXRyYWw2MCA6IGNvbG9ycy5uZXV0cmFsMjAsXG4gICAgICAgIHBhZGRpbmc6IGJhc2VVbml0ICogMixcbiAgICAgICAgJzpob3Zlcic6IHtcbiAgICAgICAgICBjb2xvcjogaXNGb2N1c2VkID8gY29sb3JzLm5ldXRyYWw4MCA6IGNvbG9ycy5uZXV0cmFsNDAsXG4gICAgICAgIH0sXG4gICAgICB9KSxcbn0pO1xuXG5leHBvcnQgY29uc3QgZHJvcGRvd25JbmRpY2F0b3JDU1MgPSBiYXNlQ1NTO1xuZXhwb3J0IGNvbnN0IERyb3Bkb3duSW5kaWNhdG9yID0gPFxuICBPcHRpb24sXG4gIElzTXVsdGkgZXh0ZW5kcyBib29sZWFuLFxuICBHcm91cCBleHRlbmRzIEdyb3VwQmFzZTxPcHRpb24+XG4+KFxuICBwcm9wczogRHJvcGRvd25JbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGlubmVyUHJvcHMgfSA9IHByb3BzO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHsuLi5nZXRTdHlsZVByb3BzKHByb3BzLCAnZHJvcGRvd25JbmRpY2F0b3InLCB7XG4gICAgICAgIGluZGljYXRvcjogdHJ1ZSxcbiAgICAgICAgJ2Ryb3Bkb3duLWluZGljYXRvcic6IHRydWUsXG4gICAgICB9KX1cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbiB8fCA8RG93bkNoZXZyb24gLz59XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIENsZWFySW5kaWNhdG9yUHJvcHM8XG4gIE9wdGlvbiA9IHVua25vd24sXG4gIElzTXVsdGkgZXh0ZW5kcyBib29sZWFuID0gYm9vbGVhbixcbiAgR3JvdXAgZXh0ZW5kcyBHcm91cEJhc2U8T3B0aW9uPiA9IEdyb3VwQmFzZTxPcHRpb24+XG4+IGV4dGVuZHMgQ29tbW9uUHJvcHNBbmRDbGFzc05hbWU8T3B0aW9uLCBJc011bHRpLCBHcm91cD4ge1xuICAvKiogVGhlIGNoaWxkcmVuIHRvIGJlIHJlbmRlcmVkIGluc2lkZSB0aGUgaW5kaWNhdG9yLiAqL1xuICBjaGlsZHJlbj86IFJlYWN0Tm9kZTtcbiAgLyoqIFByb3BzIHRoYXQgd2lsbCBiZSBwYXNzZWQgb24gdG8gdGhlIGNoaWxkcmVuLiAqL1xuICBpbm5lclByb3BzOiBKU1guSW50cmluc2ljRWxlbWVudHNbJ2RpdiddO1xuICAvKiogVGhlIGZvY3VzZWQgc3RhdGUgb2YgdGhlIHNlbGVjdC4gKi9cbiAgaXNGb2N1c2VkOiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgY2xlYXJJbmRpY2F0b3JDU1MgPSBiYXNlQ1NTO1xuZXhwb3J0IGNvbnN0IENsZWFySW5kaWNhdG9yID0gPFxuICBPcHRpb24sXG4gIElzTXVsdGkgZXh0ZW5kcyBib29sZWFuLFxuICBHcm91cCBleHRlbmRzIEdyb3VwQmFzZTxPcHRpb24+XG4+KFxuICBwcm9wczogQ2xlYXJJbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGlubmVyUHJvcHMgfSA9IHByb3BzO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHsuLi5nZXRTdHlsZVByb3BzKHByb3BzLCAnY2xlYXJJbmRpY2F0b3InLCB7XG4gICAgICAgIGluZGljYXRvcjogdHJ1ZSxcbiAgICAgICAgJ2NsZWFyLWluZGljYXRvcic6IHRydWUsXG4gICAgICB9KX1cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbiB8fCA8Q3Jvc3NJY29uIC8+fVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTZXBhcmF0b3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZGljYXRvclNlcGFyYXRvclByb3BzPFxuICBPcHRpb24gPSB1bmtub3duLFxuICBJc011bHRpIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj4gPSBHcm91cEJhc2U8T3B0aW9uPlxuPiBleHRlbmRzIENvbW1vblByb3BzQW5kQ2xhc3NOYW1lPE9wdGlvbiwgSXNNdWx0aSwgR3JvdXA+IHtcbiAgaXNEaXNhYmxlZDogYm9vbGVhbjtcbiAgaXNGb2N1c2VkOiBib29sZWFuO1xuICBpbm5lclByb3BzPzogSlNYLkludHJpbnNpY0VsZW1lbnRzWydzcGFuJ107XG59XG5cbmV4cG9ydCBjb25zdCBpbmRpY2F0b3JTZXBhcmF0b3JDU1MgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHtcbiAgICBpc0Rpc2FibGVkLFxuICAgIHRoZW1lOiB7XG4gICAgICBzcGFjaW5nOiB7IGJhc2VVbml0IH0sXG4gICAgICBjb2xvcnMsXG4gICAgfSxcbiAgfTogSW5kaWNhdG9yU2VwYXJhdG9yUHJvcHM8T3B0aW9uLCBJc011bHRpLCBHcm91cD4sXG4gIHVuc3R5bGVkOiBib29sZWFuXG4pOiBDU1NPYmplY3RXaXRoTGFiZWwgPT4gKHtcbiAgbGFiZWw6ICdpbmRpY2F0b3JTZXBhcmF0b3InLFxuICBhbGlnblNlbGY6ICdzdHJldGNoJyxcbiAgd2lkdGg6IDEsXG4gIC4uLih1bnN0eWxlZFxuICAgID8ge31cbiAgICA6IHtcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBpc0Rpc2FibGVkID8gY29sb3JzLm5ldXRyYWwxMCA6IGNvbG9ycy5uZXV0cmFsMjAsXG4gICAgICAgIG1hcmdpbkJvdHRvbTogYmFzZVVuaXQgKiAyLFxuICAgICAgICBtYXJnaW5Ub3A6IGJhc2VVbml0ICogMixcbiAgICAgIH0pLFxufSk7XG5cbmV4cG9ydCBjb25zdCBJbmRpY2F0b3JTZXBhcmF0b3IgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHByb3BzOiBJbmRpY2F0b3JTZXBhcmF0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuKSA9PiB7XG4gIGNvbnN0IHsgaW5uZXJQcm9wcyB9ID0gcHJvcHM7XG4gIHJldHVybiAoXG4gICAgPHNwYW5cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgICAgey4uLmdldFN0eWxlUHJvcHMocHJvcHMsICdpbmRpY2F0b3JTZXBhcmF0b3InLCB7XG4gICAgICAgICdpbmRpY2F0b3Itc2VwYXJhdG9yJzogdHJ1ZSxcbiAgICAgIH0pfVxuICAgIC8+XG4gICk7XG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExvYWRpbmdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBsb2FkaW5nRG90QW5pbWF0aW9ucyA9IGtleWZyYW1lc2BcbiAgMCUsIDgwJSwgMTAwJSB7IG9wYWNpdHk6IDA7IH1cbiAgNDAlIHsgb3BhY2l0eTogMTsgfVxuYDtcblxuZXhwb3J0IGNvbnN0IGxvYWRpbmdJbmRpY2F0b3JDU1MgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHtcbiAgICBpc0ZvY3VzZWQsXG4gICAgc2l6ZSxcbiAgICB0aGVtZToge1xuICAgICAgY29sb3JzLFxuICAgICAgc3BhY2luZzogeyBiYXNlVW5pdCB9LFxuICAgIH0sXG4gIH06IExvYWRpbmdJbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPixcbiAgdW5zdHlsZWQ6IGJvb2xlYW5cbik6IENTU09iamVjdFdpdGhMYWJlbCA9PiAoe1xuICBsYWJlbDogJ2xvYWRpbmdJbmRpY2F0b3InLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIHRyYW5zaXRpb246ICdjb2xvciAxNTBtcycsXG4gIGFsaWduU2VsZjogJ2NlbnRlcicsXG4gIGZvbnRTaXplOiBzaXplLFxuICBsaW5lSGVpZ2h0OiAxLFxuICBtYXJnaW5SaWdodDogc2l6ZSxcbiAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgdmVydGljYWxBbGlnbjogJ21pZGRsZScsXG4gIC4uLih1bnN0eWxlZFxuICAgID8ge31cbiAgICA6IHtcbiAgICAgICAgY29sb3I6IGlzRm9jdXNlZCA/IGNvbG9ycy5uZXV0cmFsNjAgOiBjb2xvcnMubmV1dHJhbDIwLFxuICAgICAgICBwYWRkaW5nOiBiYXNlVW5pdCAqIDIsXG4gICAgICB9KSxcbn0pO1xuXG5pbnRlcmZhY2UgTG9hZGluZ0RvdFByb3BzIHtcbiAgZGVsYXk6IG51bWJlcjtcbiAgb2Zmc2V0OiBib29sZWFuO1xufVxuY29uc3QgTG9hZGluZ0RvdCA9ICh7IGRlbGF5LCBvZmZzZXQgfTogTG9hZGluZ0RvdFByb3BzKSA9PiAoXG4gIDxzcGFuXG4gICAgY3NzPXt7XG4gICAgICBhbmltYXRpb246IGAke2xvYWRpbmdEb3RBbmltYXRpb25zfSAxcyBlYXNlLWluLW91dCAke2RlbGF5fW1zIGluZmluaXRlO2AsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdjdXJyZW50Q29sb3InLFxuICAgICAgYm9yZGVyUmFkaXVzOiAnMWVtJyxcbiAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLFxuICAgICAgbWFyZ2luTGVmdDogb2Zmc2V0ID8gJzFlbScgOiB1bmRlZmluZWQsXG4gICAgICBoZWlnaHQ6ICcxZW0nLFxuICAgICAgdmVydGljYWxBbGlnbjogJ3RvcCcsXG4gICAgICB3aWR0aDogJzFlbScsXG4gICAgfX1cbiAgLz5cbik7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZGluZ0luZGljYXRvclByb3BzPFxuICBPcHRpb24gPSB1bmtub3duLFxuICBJc011bHRpIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj4gPSBHcm91cEJhc2U8T3B0aW9uPlxuPiBleHRlbmRzIENvbW1vblByb3BzQW5kQ2xhc3NOYW1lPE9wdGlvbiwgSXNNdWx0aSwgR3JvdXA+IHtcbiAgLyoqIFByb3BzIHRoYXQgd2lsbCBiZSBwYXNzZWQgb24gdG8gdGhlIGNoaWxkcmVuLiAqL1xuICBpbm5lclByb3BzOiBKU1guSW50cmluc2ljRWxlbWVudHNbJ2RpdiddO1xuICAvKiogVGhlIGZvY3VzZWQgc3RhdGUgb2YgdGhlIHNlbGVjdC4gKi9cbiAgaXNGb2N1c2VkOiBib29sZWFuO1xuICBpc0Rpc2FibGVkOiBib29sZWFuO1xuICAvKiogU2V0IHNpemUgb2YgdGhlIGNvbnRhaW5lci4gKi9cbiAgc2l6ZTogbnVtYmVyO1xufVxuZXhwb3J0IGNvbnN0IExvYWRpbmdJbmRpY2F0b3IgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oe1xuICBpbm5lclByb3BzLFxuICBpc1J0bCxcbiAgc2l6ZSA9IDQsXG4gIC4uLnJlc3RQcm9wc1xufTogTG9hZGluZ0luZGljYXRvclByb3BzPE9wdGlvbiwgSXNNdWx0aSwgR3JvdXA+KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgey4uLmdldFN0eWxlUHJvcHMoXG4gICAgICAgIHsgLi4ucmVzdFByb3BzLCBpbm5lclByb3BzLCBpc1J0bCwgc2l6ZSB9LFxuICAgICAgICAnbG9hZGluZ0luZGljYXRvcicsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmRpY2F0b3I6IHRydWUsXG4gICAgICAgICAgJ2xvYWRpbmctaW5kaWNhdG9yJzogdHJ1ZSxcbiAgICAgICAgfVxuICAgICAgKX1cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgID5cbiAgICAgIDxMb2FkaW5nRG90IGRlbGF5PXswfSBvZmZzZXQ9e2lzUnRsfSAvPlxuICAgICAgPExvYWRpbmdEb3QgZGVsYXk9ezE2MH0gb2Zmc2V0IC8+XG4gICAgICA8TG9hZGluZ0RvdCBkZWxheT17MzIwfSBvZmZzZXQ9eyFpc1J0bH0gLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXX0= */",toString:OO},MS=function(e){var r=e.size,n=li(e,TO);return ve("svg",_e({height:r,width:r,viewBox:"0 0 20 20","aria-hidden":"true",focusable:"false",css:xO},n))},oh=function(e){return ve(MS,_e({size:20},e),ve("path",{d:"M14.348 14.849c-0.469 0.469-1.229 0.469-1.697 0l-2.651-3.030-2.651 3.029c-0.469 0.469-1.229 0.469-1.697 0-0.469-0.469-0.469-1.229 0-1.697l2.758-3.15-2.759-3.152c-0.469-0.469-0.469-1.228 0-1.697s1.228-0.469 1.697 0l2.652 3.031 2.651-3.031c0.469-0.469 1.228-0.469 1.697 0s0.469 1.229 0 1.697l-2.758 3.152 2.758 3.15c0.469 0.469 0.469 1.229 0 1.698z"}))},NS=function(e){return ve(MS,_e({size:20},e),ve("path",{d:"M4.516 7.548c0.436-0.446 1.043-0.481 1.576 0l3.908 3.747 3.908-3.747c0.533-0.481 1.141-0.446 1.574 0 0.436 0.445 0.408 1.197 0 1.615-0.406 0.418-4.695 4.502-4.695 4.502-0.217 0.223-0.502 0.335-0.787 0.335s-0.57-0.112-0.789-0.335c0 0-4.287-4.084-4.695-4.502s-0.436-1.17 0-1.615z"}))},LS=function(e,r){var n=e.isFocused,i=e.theme,s=i.spacing.baseUnit,o=i.colors;return we({label:"indicatorContainer",display:"flex",transition:"color 150ms"},r?{}:{color:n?o.neutral60:o.neutral20,padding:s*2,":hover":{color:n?o.neutral80:o.neutral40}})},DO=LS,kO=function(e){var r=e.children,n=e.innerProps;return ve("div",_e({},ht(e,"dropdownIndicator",{indicator:!0,"dropdown-indicator":!0}),n),r||ve(NS,null))},MO=LS,NO=function(e){var r=e.children,n=e.innerProps;return ve("div",_e({},ht(e,"clearIndicator",{indicator:!0,"clear-indicator":!0}),n),r||ve(oh,null))},LO=function(e,r){var n=e.isDisabled,i=e.theme,s=i.spacing.baseUnit,o=i.colors;return we({label:"indicatorSeparator",alignSelf:"stretch",width:1},r?{}:{backgroundColor:n?o.neutral10:o.neutral20,marginBottom:s*2,marginTop:s*2})},jO=function(e){var r=e.innerProps;return ve("span",_e({},r,ht(e,"indicatorSeparator",{"indicator-separator":!0})))},BO=YI(Ag||(Ag=ZI([`
132
+ 0%, 80%, 100% { opacity: 0; }
133
+ 40% { opacity: 1; }
134
+ `]))),FO=function(e,r){var n=e.isFocused,i=e.size,s=e.theme,o=s.colors,a=s.spacing.baseUnit;return we({label:"loadingIndicator",display:"flex",transition:"color 150ms",alignSelf:"center",fontSize:i,lineHeight:1,marginRight:i,textAlign:"center",verticalAlign:"middle"},r?{}:{color:n?o.neutral60:o.neutral20,padding:a*2})},fu=function(e){var r=e.delay,n=e.offset;return ve("span",{css:Qp({animation:"".concat(BO," 1s ease-in-out ").concat(r,"ms infinite;"),backgroundColor:"currentColor",borderRadius:"1em",display:"inline-block",marginLeft:n?"1em":void 0,height:"1em",verticalAlign:"top",width:"1em"},Gf.NODE_ENV==="production"?"":";label:LoadingDot;",Gf.NODE_ENV==="production"?"":"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGljYXRvcnMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1RSSIsImZpbGUiOiJpbmRpY2F0b3JzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBAanN4IGpzeCAqL1xuaW1wb3J0IHsgSlNYLCBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBqc3gsIGtleWZyYW1lcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHtcbiAgQ29tbW9uUHJvcHNBbmRDbGFzc05hbWUsXG4gIENTU09iamVjdFdpdGhMYWJlbCxcbiAgR3JvdXBCYXNlLFxufSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRTdHlsZVByb3BzIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERyb3Bkb3duICYgQ2xlYXIgSWNvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBTdmcgPSAoe1xuICBzaXplLFxuICAuLi5wcm9wc1xufTogSlNYLkludHJpbnNpY0VsZW1lbnRzWydzdmcnXSAmIHsgc2l6ZTogbnVtYmVyIH0pID0+IChcbiAgPHN2Z1xuICAgIGhlaWdodD17c2l6ZX1cbiAgICB3aWR0aD17c2l6ZX1cbiAgICB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcbiAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgIGZvY3VzYWJsZT1cImZhbHNlXCJcbiAgICBjc3M9e3tcbiAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLFxuICAgICAgZmlsbDogJ2N1cnJlbnRDb2xvcicsXG4gICAgICBsaW5lSGVpZ2h0OiAxLFxuICAgICAgc3Ryb2tlOiAnY3VycmVudENvbG9yJyxcbiAgICAgIHN0cm9rZVdpZHRoOiAwLFxuICAgIH19XG4gICAgey4uLnByb3BzfVxuICAvPlxuKTtcblxuZXhwb3J0IHR5cGUgQ3Jvc3NJY29uUHJvcHMgPSBKU1guSW50cmluc2ljRWxlbWVudHNbJ3N2ZyddICYgeyBzaXplPzogbnVtYmVyIH07XG5leHBvcnQgY29uc3QgQ3Jvc3NJY29uID0gKHByb3BzOiBDcm9zc0ljb25Qcm9wcykgPT4gKFxuICA8U3ZnIHNpemU9ezIwfSB7Li4ucHJvcHN9PlxuICAgIDxwYXRoIGQ9XCJNMTQuMzQ4IDE0Ljg0OWMtMC40NjkgMC40NjktMS4yMjkgMC40NjktMS42OTcgMGwtMi42NTEtMy4wMzAtMi42NTEgMy4wMjljLTAuNDY5IDAuNDY5LTEuMjI5IDAuNDY5LTEuNjk3IDAtMC40NjktMC40NjktMC40NjktMS4yMjkgMC0xLjY5N2wyLjc1OC0zLjE1LTIuNzU5LTMuMTUyYy0wLjQ2OS0wLjQ2OS0wLjQ2OS0xLjIyOCAwLTEuNjk3czEuMjI4LTAuNDY5IDEuNjk3IDBsMi42NTIgMy4wMzEgMi42NTEtMy4wMzFjMC40NjktMC40NjkgMS4yMjgtMC40NjkgMS42OTcgMHMwLjQ2OSAxLjIyOSAwIDEuNjk3bC0yLjc1OCAzLjE1MiAyLjc1OCAzLjE1YzAuNDY5IDAuNDY5IDAuNDY5IDEuMjI5IDAgMS42OTh6XCIgLz5cbiAgPC9Tdmc+XG4pO1xuZXhwb3J0IHR5cGUgRG93bkNoZXZyb25Qcm9wcyA9IEpTWC5JbnRyaW5zaWNFbGVtZW50c1snc3ZnJ10gJiB7IHNpemU/OiBudW1iZXIgfTtcbmV4cG9ydCBjb25zdCBEb3duQ2hldnJvbiA9IChwcm9wczogRG93bkNoZXZyb25Qcm9wcykgPT4gKFxuICA8U3ZnIHNpemU9ezIwfSB7Li4ucHJvcHN9PlxuICAgIDxwYXRoIGQ9XCJNNC41MTYgNy41NDhjMC40MzYtMC40NDYgMS4wNDMtMC40ODEgMS41NzYgMGwzLjkwOCAzLjc0NyAzLjkwOC0zLjc0N2MwLjUzMy0wLjQ4MSAxLjE0MS0wLjQ0NiAxLjU3NCAwIDAuNDM2IDAuNDQ1IDAuNDA4IDEuMTk3IDAgMS42MTUtMC40MDYgMC40MTgtNC42OTUgNC41MDItNC42OTUgNC41MDItMC4yMTcgMC4yMjMtMC41MDIgMC4zMzUtMC43ODcgMC4zMzVzLTAuNTctMC4xMTItMC43ODktMC4zMzVjMCAwLTQuMjg3LTQuMDg0LTQuNjk1LTQuNTAycy0wLjQzNi0xLjE3IDAtMS42MTV6XCIgLz5cbiAgPC9Tdmc+XG4pO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERyb3Bkb3duICYgQ2xlYXIgQnV0dG9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCBpbnRlcmZhY2UgRHJvcGRvd25JbmRpY2F0b3JQcm9wczxcbiAgT3B0aW9uID0gdW5rbm93bixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4gPSBib29sZWFuLFxuICBHcm91cCBleHRlbmRzIEdyb3VwQmFzZTxPcHRpb24+ID0gR3JvdXBCYXNlPE9wdGlvbj5cbj4gZXh0ZW5kcyBDb21tb25Qcm9wc0FuZENsYXNzTmFtZTxPcHRpb24sIElzTXVsdGksIEdyb3VwPiB7XG4gIC8qKiBUaGUgY2hpbGRyZW4gdG8gYmUgcmVuZGVyZWQgaW5zaWRlIHRoZSBpbmRpY2F0b3IuICovXG4gIGNoaWxkcmVuPzogUmVhY3ROb2RlO1xuICAvKiogUHJvcHMgdGhhdCB3aWxsIGJlIHBhc3NlZCBvbiB0byB0aGUgY2hpbGRyZW4uICovXG4gIGlubmVyUHJvcHM6IEpTWC5JbnRyaW5zaWNFbGVtZW50c1snZGl2J107XG4gIC8qKiBUaGUgZm9jdXNlZCBzdGF0ZSBvZiB0aGUgc2VsZWN0LiAqL1xuICBpc0ZvY3VzZWQ6IGJvb2xlYW47XG4gIGlzRGlzYWJsZWQ6IGJvb2xlYW47XG59XG5cbmNvbnN0IGJhc2VDU1MgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHtcbiAgICBpc0ZvY3VzZWQsXG4gICAgdGhlbWU6IHtcbiAgICAgIHNwYWNpbmc6IHsgYmFzZVVuaXQgfSxcbiAgICAgIGNvbG9ycyxcbiAgICB9LFxuICB9OlxuICAgIHwgRHJvcGRvd25JbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuICAgIHwgQ2xlYXJJbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPixcbiAgdW5zdHlsZWQ6IGJvb2xlYW5cbik6IENTU09iamVjdFdpdGhMYWJlbCA9PiAoe1xuICBsYWJlbDogJ2luZGljYXRvckNvbnRhaW5lcicsXG4gIGRpc3BsYXk6ICdmbGV4JyxcbiAgdHJhbnNpdGlvbjogJ2NvbG9yIDE1MG1zJyxcbiAgLi4uKHVuc3R5bGVkXG4gICAgPyB7fVxuICAgIDoge1xuICAgICAgICBjb2xvcjogaXNGb2N1c2VkID8gY29sb3JzLm5ldXRyYWw2MCA6IGNvbG9ycy5uZXV0cmFsMjAsXG4gICAgICAgIHBhZGRpbmc6IGJhc2VVbml0ICogMixcbiAgICAgICAgJzpob3Zlcic6IHtcbiAgICAgICAgICBjb2xvcjogaXNGb2N1c2VkID8gY29sb3JzLm5ldXRyYWw4MCA6IGNvbG9ycy5uZXV0cmFsNDAsXG4gICAgICAgIH0sXG4gICAgICB9KSxcbn0pO1xuXG5leHBvcnQgY29uc3QgZHJvcGRvd25JbmRpY2F0b3JDU1MgPSBiYXNlQ1NTO1xuZXhwb3J0IGNvbnN0IERyb3Bkb3duSW5kaWNhdG9yID0gPFxuICBPcHRpb24sXG4gIElzTXVsdGkgZXh0ZW5kcyBib29sZWFuLFxuICBHcm91cCBleHRlbmRzIEdyb3VwQmFzZTxPcHRpb24+XG4+KFxuICBwcm9wczogRHJvcGRvd25JbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGlubmVyUHJvcHMgfSA9IHByb3BzO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHsuLi5nZXRTdHlsZVByb3BzKHByb3BzLCAnZHJvcGRvd25JbmRpY2F0b3InLCB7XG4gICAgICAgIGluZGljYXRvcjogdHJ1ZSxcbiAgICAgICAgJ2Ryb3Bkb3duLWluZGljYXRvcic6IHRydWUsXG4gICAgICB9KX1cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbiB8fCA8RG93bkNoZXZyb24gLz59XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIENsZWFySW5kaWNhdG9yUHJvcHM8XG4gIE9wdGlvbiA9IHVua25vd24sXG4gIElzTXVsdGkgZXh0ZW5kcyBib29sZWFuID0gYm9vbGVhbixcbiAgR3JvdXAgZXh0ZW5kcyBHcm91cEJhc2U8T3B0aW9uPiA9IEdyb3VwQmFzZTxPcHRpb24+XG4+IGV4dGVuZHMgQ29tbW9uUHJvcHNBbmRDbGFzc05hbWU8T3B0aW9uLCBJc011bHRpLCBHcm91cD4ge1xuICAvKiogVGhlIGNoaWxkcmVuIHRvIGJlIHJlbmRlcmVkIGluc2lkZSB0aGUgaW5kaWNhdG9yLiAqL1xuICBjaGlsZHJlbj86IFJlYWN0Tm9kZTtcbiAgLyoqIFByb3BzIHRoYXQgd2lsbCBiZSBwYXNzZWQgb24gdG8gdGhlIGNoaWxkcmVuLiAqL1xuICBpbm5lclByb3BzOiBKU1guSW50cmluc2ljRWxlbWVudHNbJ2RpdiddO1xuICAvKiogVGhlIGZvY3VzZWQgc3RhdGUgb2YgdGhlIHNlbGVjdC4gKi9cbiAgaXNGb2N1c2VkOiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgY2xlYXJJbmRpY2F0b3JDU1MgPSBiYXNlQ1NTO1xuZXhwb3J0IGNvbnN0IENsZWFySW5kaWNhdG9yID0gPFxuICBPcHRpb24sXG4gIElzTXVsdGkgZXh0ZW5kcyBib29sZWFuLFxuICBHcm91cCBleHRlbmRzIEdyb3VwQmFzZTxPcHRpb24+XG4+KFxuICBwcm9wczogQ2xlYXJJbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuKSA9PiB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGlubmVyUHJvcHMgfSA9IHByb3BzO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHsuLi5nZXRTdHlsZVByb3BzKHByb3BzLCAnY2xlYXJJbmRpY2F0b3InLCB7XG4gICAgICAgIGluZGljYXRvcjogdHJ1ZSxcbiAgICAgICAgJ2NsZWFyLWluZGljYXRvcic6IHRydWUsXG4gICAgICB9KX1cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbiB8fCA8Q3Jvc3NJY29uIC8+fVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTZXBhcmF0b3Jcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgaW50ZXJmYWNlIEluZGljYXRvclNlcGFyYXRvclByb3BzPFxuICBPcHRpb24gPSB1bmtub3duLFxuICBJc011bHRpIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj4gPSBHcm91cEJhc2U8T3B0aW9uPlxuPiBleHRlbmRzIENvbW1vblByb3BzQW5kQ2xhc3NOYW1lPE9wdGlvbiwgSXNNdWx0aSwgR3JvdXA+IHtcbiAgaXNEaXNhYmxlZDogYm9vbGVhbjtcbiAgaXNGb2N1c2VkOiBib29sZWFuO1xuICBpbm5lclByb3BzPzogSlNYLkludHJpbnNpY0VsZW1lbnRzWydzcGFuJ107XG59XG5cbmV4cG9ydCBjb25zdCBpbmRpY2F0b3JTZXBhcmF0b3JDU1MgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHtcbiAgICBpc0Rpc2FibGVkLFxuICAgIHRoZW1lOiB7XG4gICAgICBzcGFjaW5nOiB7IGJhc2VVbml0IH0sXG4gICAgICBjb2xvcnMsXG4gICAgfSxcbiAgfTogSW5kaWNhdG9yU2VwYXJhdG9yUHJvcHM8T3B0aW9uLCBJc011bHRpLCBHcm91cD4sXG4gIHVuc3R5bGVkOiBib29sZWFuXG4pOiBDU1NPYmplY3RXaXRoTGFiZWwgPT4gKHtcbiAgbGFiZWw6ICdpbmRpY2F0b3JTZXBhcmF0b3InLFxuICBhbGlnblNlbGY6ICdzdHJldGNoJyxcbiAgd2lkdGg6IDEsXG4gIC4uLih1bnN0eWxlZFxuICAgID8ge31cbiAgICA6IHtcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBpc0Rpc2FibGVkID8gY29sb3JzLm5ldXRyYWwxMCA6IGNvbG9ycy5uZXV0cmFsMjAsXG4gICAgICAgIG1hcmdpbkJvdHRvbTogYmFzZVVuaXQgKiAyLFxuICAgICAgICBtYXJnaW5Ub3A6IGJhc2VVbml0ICogMixcbiAgICAgIH0pLFxufSk7XG5cbmV4cG9ydCBjb25zdCBJbmRpY2F0b3JTZXBhcmF0b3IgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHByb3BzOiBJbmRpY2F0b3JTZXBhcmF0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPlxuKSA9PiB7XG4gIGNvbnN0IHsgaW5uZXJQcm9wcyB9ID0gcHJvcHM7XG4gIHJldHVybiAoXG4gICAgPHNwYW5cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgICAgey4uLmdldFN0eWxlUHJvcHMocHJvcHMsICdpbmRpY2F0b3JTZXBhcmF0b3InLCB7XG4gICAgICAgICdpbmRpY2F0b3Itc2VwYXJhdG9yJzogdHJ1ZSxcbiAgICAgIH0pfVxuICAgIC8+XG4gICk7XG59O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExvYWRpbmdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBsb2FkaW5nRG90QW5pbWF0aW9ucyA9IGtleWZyYW1lc2BcbiAgMCUsIDgwJSwgMTAwJSB7IG9wYWNpdHk6IDA7IH1cbiAgNDAlIHsgb3BhY2l0eTogMTsgfVxuYDtcblxuZXhwb3J0IGNvbnN0IGxvYWRpbmdJbmRpY2F0b3JDU1MgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oXG4gIHtcbiAgICBpc0ZvY3VzZWQsXG4gICAgc2l6ZSxcbiAgICB0aGVtZToge1xuICAgICAgY29sb3JzLFxuICAgICAgc3BhY2luZzogeyBiYXNlVW5pdCB9LFxuICAgIH0sXG4gIH06IExvYWRpbmdJbmRpY2F0b3JQcm9wczxPcHRpb24sIElzTXVsdGksIEdyb3VwPixcbiAgdW5zdHlsZWQ6IGJvb2xlYW5cbik6IENTU09iamVjdFdpdGhMYWJlbCA9PiAoe1xuICBsYWJlbDogJ2xvYWRpbmdJbmRpY2F0b3InLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIHRyYW5zaXRpb246ICdjb2xvciAxNTBtcycsXG4gIGFsaWduU2VsZjogJ2NlbnRlcicsXG4gIGZvbnRTaXplOiBzaXplLFxuICBsaW5lSGVpZ2h0OiAxLFxuICBtYXJnaW5SaWdodDogc2l6ZSxcbiAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgdmVydGljYWxBbGlnbjogJ21pZGRsZScsXG4gIC4uLih1bnN0eWxlZFxuICAgID8ge31cbiAgICA6IHtcbiAgICAgICAgY29sb3I6IGlzRm9jdXNlZCA/IGNvbG9ycy5uZXV0cmFsNjAgOiBjb2xvcnMubmV1dHJhbDIwLFxuICAgICAgICBwYWRkaW5nOiBiYXNlVW5pdCAqIDIsXG4gICAgICB9KSxcbn0pO1xuXG5pbnRlcmZhY2UgTG9hZGluZ0RvdFByb3BzIHtcbiAgZGVsYXk6IG51bWJlcjtcbiAgb2Zmc2V0OiBib29sZWFuO1xufVxuY29uc3QgTG9hZGluZ0RvdCA9ICh7IGRlbGF5LCBvZmZzZXQgfTogTG9hZGluZ0RvdFByb3BzKSA9PiAoXG4gIDxzcGFuXG4gICAgY3NzPXt7XG4gICAgICBhbmltYXRpb246IGAke2xvYWRpbmdEb3RBbmltYXRpb25zfSAxcyBlYXNlLWluLW91dCAke2RlbGF5fW1zIGluZmluaXRlO2AsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdjdXJyZW50Q29sb3InLFxuICAgICAgYm9yZGVyUmFkaXVzOiAnMWVtJyxcbiAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLFxuICAgICAgbWFyZ2luTGVmdDogb2Zmc2V0ID8gJzFlbScgOiB1bmRlZmluZWQsXG4gICAgICBoZWlnaHQ6ICcxZW0nLFxuICAgICAgdmVydGljYWxBbGlnbjogJ3RvcCcsXG4gICAgICB3aWR0aDogJzFlbScsXG4gICAgfX1cbiAgLz5cbik7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZGluZ0luZGljYXRvclByb3BzPFxuICBPcHRpb24gPSB1bmtub3duLFxuICBJc011bHRpIGV4dGVuZHMgYm9vbGVhbiA9IGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj4gPSBHcm91cEJhc2U8T3B0aW9uPlxuPiBleHRlbmRzIENvbW1vblByb3BzQW5kQ2xhc3NOYW1lPE9wdGlvbiwgSXNNdWx0aSwgR3JvdXA+IHtcbiAgLyoqIFByb3BzIHRoYXQgd2lsbCBiZSBwYXNzZWQgb24gdG8gdGhlIGNoaWxkcmVuLiAqL1xuICBpbm5lclByb3BzOiBKU1guSW50cmluc2ljRWxlbWVudHNbJ2RpdiddO1xuICAvKiogVGhlIGZvY3VzZWQgc3RhdGUgb2YgdGhlIHNlbGVjdC4gKi9cbiAgaXNGb2N1c2VkOiBib29sZWFuO1xuICBpc0Rpc2FibGVkOiBib29sZWFuO1xuICAvKiogU2V0IHNpemUgb2YgdGhlIGNvbnRhaW5lci4gKi9cbiAgc2l6ZTogbnVtYmVyO1xufVxuZXhwb3J0IGNvbnN0IExvYWRpbmdJbmRpY2F0b3IgPSA8XG4gIE9wdGlvbixcbiAgSXNNdWx0aSBleHRlbmRzIGJvb2xlYW4sXG4gIEdyb3VwIGV4dGVuZHMgR3JvdXBCYXNlPE9wdGlvbj5cbj4oe1xuICBpbm5lclByb3BzLFxuICBpc1J0bCxcbiAgc2l6ZSA9IDQsXG4gIC4uLnJlc3RQcm9wc1xufTogTG9hZGluZ0luZGljYXRvclByb3BzPE9wdGlvbiwgSXNNdWx0aSwgR3JvdXA+KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgey4uLmdldFN0eWxlUHJvcHMoXG4gICAgICAgIHsgLi4ucmVzdFByb3BzLCBpbm5lclByb3BzLCBpc1J0bCwgc2l6ZSB9LFxuICAgICAgICAnbG9hZGluZ0luZGljYXRvcicsXG4gICAgICAgIHtcbiAgICAgICAgICBpbmRpY2F0b3I6IHRydWUsXG4gICAgICAgICAgJ2xvYWRpbmctaW5kaWNhdG9yJzogdHJ1ZSxcbiAgICAgICAgfVxuICAgICAgKX1cbiAgICAgIHsuLi5pbm5lclByb3BzfVxuICAgID5cbiAgICAgIDxMb2FkaW5nRG90IGRlbGF5PXswfSBvZmZzZXQ9e2lzUnRsfSAvPlxuICAgICAgPExvYWRpbmdEb3QgZGVsYXk9ezE2MH0gb2Zmc2V0IC8+XG4gICAgICA8TG9hZGluZ0RvdCBkZWxheT17MzIwfSBvZmZzZXQ9eyFpc1J0bH0gLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXX0= */")})},zO=function(e){var r=e.innerProps,n=e.isRtl,i=e.size,s=i===void 0?4:i,o=li(e,IO);return ve("div",_e({},ht(we(we({},o),{},{innerProps:r,isRtl:n,size:s}),"loadingIndicator",{indicator:!0,"loading-indicator":!0}),r),ve(fu,{delay:0,offset:n}),ve(fu,{delay:160,offset:!0}),ve(fu,{delay:320,offset:!n}))},HO=function(e,r){var n=e.isDisabled,i=e.isFocused,s=e.theme,o=s.colors,a=s.borderRadius,c=s.spacing;return we({label:"control",alignItems:"center",cursor:"default",display:"flex",flexWrap:"wrap",justifyContent:"space-between",minHeight:c.controlHeight,outline:"0 !important",position:"relative",transition:"all 100ms"},r?{}:{backgroundColor:n?o.neutral5:o.neutral0,borderColor:n?o.neutral10:i?o.primary:o.neutral20,borderRadius:a,borderStyle:"solid",borderWidth:1,boxShadow:i?"0 0 0 1px ".concat(o.primary):void 0,"&:hover":{borderColor:i?o.primary:o.neutral30}})},VO=function(e){var r=e.children,n=e.isDisabled,i=e.isFocused,s=e.innerRef,o=e.innerProps,a=e.menuIsOpen;return ve("div",_e({ref:s},ht(e,"control",{control:!0,"control--is-disabled":n,"control--is-focused":i,"control--menu-is-open":a}),o,{"aria-disabled":n||void 0}),r)},GO=VO,XO=["data"],UO=function(e,r){var n=e.theme.spacing;return r?{}:{paddingBottom:n.baseUnit*2,paddingTop:n.baseUnit*2}},WO=function(e){var r=e.children,n=e.cx,i=e.getStyles,s=e.getClassNames,o=e.Heading,a=e.headingProps,c=e.innerProps,l=e.label,d=e.theme,p=e.selectProps;return ve("div",_e({},ht(e,"group",{group:!0}),c),ve(o,_e({},a,{selectProps:p,theme:d,getStyles:i,getClassNames:s,cx:n}),l),ve("div",null,r))},YO=function(e,r){var n=e.theme,i=n.colors,s=n.spacing;return we({label:"group",cursor:"default",display:"block"},r?{}:{color:i.neutral40,fontSize:"75%",fontWeight:500,marginBottom:"0.25em",paddingLeft:s.baseUnit*3,paddingRight:s.baseUnit*3,textTransform:"uppercase"})},ZO=function(e){var r=TS(e);r.data;var n=li(r,XO);return ve("div",_e({},ht(e,"groupHeading",{"group-heading":!0}),n))},qO=WO,JO=["innerRef","isDisabled","isHidden","inputClassName"],KO=function(e,r){var n=e.isDisabled,i=e.value,s=e.theme,o=s.spacing,a=s.colors;return we(we({visibility:n?"hidden":"visible",transform:i?"translateZ(0)":""},QO),r?{}:{margin:o.baseUnit/2,paddingBottom:o.baseUnit/2,paddingTop:o.baseUnit/2,color:a.neutral80})},jS={gridArea:"1 / 2",font:"inherit",minWidth:"2px",border:0,margin:0,outline:0,padding:0},QO={flex:"1 1 auto",display:"inline-grid",gridArea:"1 / 1 / 2 / 3",gridTemplateColumns:"0 min-content","&:after":we({content:'attr(data-value) " "',visibility:"hidden",whiteSpace:"pre"},jS)},$O=function(e){return we({label:"input",color:"inherit",background:0,opacity:e?0:1,width:"100%"},jS)},ex=function(e){var r=e.cx,n=e.value,i=TS(e),s=i.innerRef,o=i.isDisabled,a=i.isHidden,c=i.inputClassName,l=li(i,JO);return ve("div",_e({},ht(e,"input",{"input-container":!0}),{"data-value":n||""}),ve("input",_e({className:r({input:!0},c),ref:s,style:$O(a),disabled:o},l)))},tx=ex,rx=function(e,r){var n=e.theme,i=n.spacing,s=n.borderRadius,o=n.colors;return we({label:"multiValue",display:"flex",minWidth:0},r?{}:{backgroundColor:o.neutral10,borderRadius:s/2,margin:i.baseUnit/2})},nx=function(e,r){var n=e.theme,i=n.borderRadius,s=n.colors,o=e.cropWithEllipsis;return we({overflow:"hidden",textOverflow:o||o===void 0?"ellipsis":void 0,whiteSpace:"nowrap"},r?{}:{borderRadius:i/2,color:s.neutral80,fontSize:"85%",padding:3,paddingLeft:6})},ix=function(e,r){var n=e.theme,i=n.spacing,s=n.borderRadius,o=n.colors,a=e.isFocused;return we({alignItems:"center",display:"flex"},r?{}:{borderRadius:s/2,backgroundColor:a?o.dangerLight:void 0,paddingLeft:i.baseUnit,paddingRight:i.baseUnit,":hover":{backgroundColor:o.dangerLight,color:o.danger}})},BS=function(e){var r=e.children,n=e.innerProps;return ve("div",n,r)},sx=BS,ox=BS;function ax(t){var e=t.children,r=t.innerProps;return ve("div",_e({role:"button"},r),e||ve(oh,{size:14}))}var cx=function(e){var r=e.children,n=e.components,i=e.data,s=e.innerProps,o=e.isDisabled,a=e.removeProps,c=e.selectProps,l=n.Container,d=n.Label,p=n.Remove;return ve(l,{data:i,innerProps:we(we({},ht(e,"multiValue",{"multi-value":!0,"multi-value--is-disabled":o})),s),selectProps:c},ve(d,{data:i,innerProps:we({},ht(e,"multiValueLabel",{"multi-value__label":!0})),selectProps:c},r),ve(p,{data:i,innerProps:we(we({},ht(e,"multiValueRemove",{"multi-value__remove":!0})),{},{"aria-label":"Remove ".concat(r||"option")},a),selectProps:c}))},lx=cx,dx=function(e,r){var n=e.isDisabled,i=e.isFocused,s=e.isSelected,o=e.theme,a=o.spacing,c=o.colors;return we({label:"option",cursor:"default",display:"block",fontSize:"inherit",width:"100%",userSelect:"none",WebkitTapHighlightColor:"rgba(0, 0, 0, 0)"},r?{}:{backgroundColor:s?c.primary:i?c.primary25:"transparent",color:n?c.neutral20:s?c.neutral0:"inherit",padding:"".concat(a.baseUnit*2,"px ").concat(a.baseUnit*3,"px"),":active":{backgroundColor:n?void 0:s?c.primary:c.primary50}})},ux=function(e){var r=e.children,n=e.isDisabled,i=e.isFocused,s=e.isSelected,o=e.innerRef,a=e.innerProps;return ve("div",_e({},ht(e,"option",{option:!0,"option--is-disabled":n,"option--is-focused":i,"option--is-selected":s}),{ref:o,"aria-disabled":n},a),r)},fx=ux,px=function(e,r){var n=e.theme,i=n.spacing,s=n.colors;return we({label:"placeholder",gridArea:"1 / 1 / 2 / 3"},r?{}:{color:s.neutral50,marginLeft:i.baseUnit/2,marginRight:i.baseUnit/2})},hx=function(e){var r=e.children,n=e.innerProps;return ve("div",_e({},ht(e,"placeholder",{placeholder:!0}),n),r)},mx=hx,gx=function(e,r){var n=e.isDisabled,i=e.theme,s=i.spacing,o=i.colors;return we({label:"singleValue",gridArea:"1 / 1 / 2 / 3",maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},r?{}:{color:n?o.neutral40:o.neutral80,marginLeft:s.baseUnit/2,marginRight:s.baseUnit/2})},vx=function(e){var r=e.children,n=e.isDisabled,i=e.innerProps;return ve("div",_e({},ht(e,"singleValue",{"single-value":!0,"single-value--is-disabled":n}),i),r)},bx=vx,FS={ClearIndicator:NO,Control:GO,DropdownIndicator:kO,DownChevron:NS,CrossIcon:oh,Group:qO,GroupHeading:ZO,IndicatorsContainer:PO,IndicatorSeparator:jO,Input:tx,LoadingIndicator:zO,Menu:pO,MenuList:mO,MenuPortal:wO,LoadingMessage:yO,NoOptionsMessage:bO,MultiValue:lx,MultiValueContainer:sx,MultiValueLabel:ox,MultiValueRemove:ax,Option:fx,Placeholder:mx,SelectContainer:AO,SingleValue:bx,ValueContainer:_O},yx=function(e){return we(we({},FS),e.components)},Rg=Number.isNaN||function(e){return typeof e=="number"&&e!==e};function Sx(t,e){return!!(t===e||Rg(t)&&Rg(e))}function wx(t,e){if(t.length!==e.length)return!1;for(var r=0;r<t.length;r++)if(!Sx(t[r],e[r]))return!1;return!0}function Cx(t,e){e===void 0&&(e=wx);var r=null;function n(){for(var i=[],s=0;s<arguments.length;s++)i[s]=arguments[s];if(r&&r.lastThis===this&&e(i,r.lastArgs))return r.lastResult;var o=t.apply(this,i);return r={lastResult:o,lastArgs:i,lastThis:this},o}return n.clear=function(){r=null},n}var la={};function Ax(){return"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."}var Rx=la.NODE_ENV==="production"?{name:"7pg0cj-a11yText",styles:"label:a11yText;z-index:9999;border:0;clip:rect(1px, 1px, 1px, 1px);height:1px;width:1px;position:absolute;overflow:hidden;padding:0;white-space:nowrap"}:{name:"1f43avz-a11yText-A11yText",styles:"label:a11yText;z-index:9999;border:0;clip:rect(1px, 1px, 1px, 1px);height:1px;width:1px;position:absolute;overflow:hidden;padding:0;white-space:nowrap;label:A11yText;",map:"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkExMXlUZXh0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPSSIsImZpbGUiOiJBMTF5VGV4dC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQGpzeCBqc3ggKi9cbmltcG9ydCB7IEpTWCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGpzeCB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLy8gQXNzaXN0aXZlIHRleHQgdG8gZGVzY3JpYmUgdmlzdWFsIGVsZW1lbnRzLiBIaWRkZW4gZm9yIHNpZ2h0ZWQgdXNlcnMuXG5jb25zdCBBMTF5VGV4dCA9IChwcm9wczogSlNYLkludHJpbnNpY0VsZW1lbnRzWydzcGFuJ10pID0+IChcbiAgPHNwYW5cbiAgICBjc3M9e3tcbiAgICAgIGxhYmVsOiAnYTExeVRleHQnLFxuICAgICAgekluZGV4OiA5OTk5LFxuICAgICAgYm9yZGVyOiAwLFxuICAgICAgY2xpcDogJ3JlY3QoMXB4LCAxcHgsIDFweCwgMXB4KScsXG4gICAgICBoZWlnaHQ6IDEsXG4gICAgICB3aWR0aDogMSxcbiAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICAgICAgcGFkZGluZzogMCxcbiAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICAgIH19XG4gICAgey4uLnByb3BzfVxuICAvPlxuKTtcblxuZXhwb3J0IGRlZmF1bHQgQTExeVRleHQ7XG4iXX0= */",toString:Ax},_x=function(e){return ve("span",_e({css:Rx},e))},_g=_x,Ex={guidance:function(e){var r=e.isSearchable,n=e.isMulti,i=e.tabSelectsValue,s=e.context,o=e.isInitialFocus;switch(s){case"menu":return"Use Up and Down to choose options, press Enter to select the currently focused option, press Escape to exit the menu".concat(i?", press Tab to select the option and exit the menu":"",".");case"input":return o?"".concat(e["aria-label"]||"Select"," is focused ").concat(r?",type to refine list":"",", press Down to open the menu, ").concat(n?" press left to focus selected values":""):"";case"value":return"Use left and right to toggle between focused values, press Backspace to remove the currently focused value";default:return""}},onChange:function(e){var r=e.action,n=e.label,i=n===void 0?"":n,s=e.labels,o=e.isDisabled;switch(r){case"deselect-option":case"pop-value":case"remove-value":return"option ".concat(i,", deselected.");case"clear":return"All selected options have been cleared.";case"initial-input-focus":return"option".concat(s.length>1?"s":""," ").concat(s.join(","),", selected.");case"select-option":return o?"option ".concat(i," is disabled. Select another option."):"option ".concat(i,", selected.");default:return""}},onFocus:function(e){var r=e.context,n=e.focused,i=e.options,s=e.label,o=s===void 0?"":s,a=e.selectValue,c=e.isDisabled,l=e.isSelected,d=e.isAppleDevice,p=function(S,C){return S&&S.length?"".concat(S.indexOf(C)+1," of ").concat(S.length):""};if(r==="value"&&a)return"value ".concat(o," focused, ").concat(p(a,n),".");if(r==="menu"&&d){var m=c?" disabled":"",g="".concat(l?" selected":"").concat(m);return"".concat(o).concat(g,", ").concat(p(i,n),".")}return""},onFilter:function(e){var r=e.inputValue,n=e.resultsMessage;return"".concat(n).concat(r?" for search term "+r:"",".")}},Px=function(e){var r=e.ariaSelection,n=e.focusedOption,i=e.focusedValue,s=e.focusableOptions,o=e.isFocused,a=e.selectValue,c=e.selectProps,l=e.id,d=e.isAppleDevice,p=c.ariaLiveMessages,m=c.getOptionLabel,g=c.inputValue,v=c.isMulti,S=c.isOptionDisabled,C=c.isSearchable,w=c.menuIsOpen,y=c.options,f=c.screenReaderStatus,u=c.tabSelectsValue,h=c.isLoading,b=c["aria-label"],A=c["aria-live"],R=K.useMemo(function(){return we(we({},Ex),p||{})},[p]),_=K.useMemo(function(){var X="";if(r&&R.onChange){var O=r.option,L=r.options,B=r.removedValue,z=r.removedValues,Z=r.value,V=function(ae){return Array.isArray(ae)?null:ae},G=B||O||V(Z),te=G?m(G):"",re=L||z||void 0,ie=re?re.map(m):[],ce=we({isDisabled:G&&S(G,a),label:te,labels:ie},r);X=R.onChange(ce)}return X},[r,R,S,a,m]),E=K.useMemo(function(){var X="",O=n||i,L=!!(n&&a&&a.includes(n));if(O&&R.onFocus){var B={focused:O,label:m(O),isDisabled:S(O,a),isSelected:L,options:s,context:O===n?"menu":"value",selectValue:a,isAppleDevice:d};X=R.onFocus(B)}return X},[n,i,m,S,R,s,a,d]),P=K.useMemo(function(){var X="";if(w&&y.length&&!h&&R.onFilter){var O=f({count:s.length});X=R.onFilter({inputValue:g,resultsMessage:O})}return X},[s,g,w,R,y,f,h]),T=r?.action==="initial-input-focus",k=K.useMemo(function(){var X="";if(R.guidance){var O=i?"value":w?"menu":"input";X=R.guidance({"aria-label":b,context:O,isDisabled:n&&S(n,a),isMulti:v,isSearchable:C,tabSelectsValue:u,isInitialFocus:T})}return X},[b,n,i,v,S,C,w,R,a,u,T]),F=ve(K.Fragment,null,ve("span",{id:"aria-selection"},_),ve("span",{id:"aria-focused"},E),ve("span",{id:"aria-results"},P),ve("span",{id:"aria-guidance"},k));return ve(K.Fragment,null,ve(_g,{id:l},T&&F),ve(_g,{"aria-live":A,"aria-atomic":"false","aria-relevant":"additions text",role:"log"},o&&!T&&F))},Tx=Px,Xf=[{base:"A",letters:"AⒶAÀÁÂẦẤẪẨÃĀĂẰẮẴẲȦǠÄǞẢÅǺǍȀȂẠẬẶḀĄȺⱯ"},{base:"AA",letters:"Ꜳ"},{base:"AE",letters:"ÆǼǢ"},{base:"AO",letters:"Ꜵ"},{base:"AU",letters:"Ꜷ"},{base:"AV",letters:"ꜸꜺ"},{base:"AY",letters:"Ꜽ"},{base:"B",letters:"BⒷBḂḄḆɃƂƁ"},{base:"C",letters:"CⒸCĆĈĊČÇḈƇȻꜾ"},{base:"D",letters:"DⒹDḊĎḌḐḒḎĐƋƊƉꝹ"},{base:"DZ",letters:"DZDŽ"},{base:"Dz",letters:"DzDž"},{base:"E",letters:"EⒺEÈÉÊỀẾỄỂẼĒḔḖĔĖËẺĚȄȆẸỆȨḜĘḘḚƐƎ"},{base:"F",letters:"FⒻFḞƑꝻ"},{base:"G",letters:"GⒼGǴĜḠĞĠǦĢǤƓꞠꝽꝾ"},{base:"H",letters:"HⒽHĤḢḦȞḤḨḪĦⱧⱵꞍ"},{base:"I",letters:"IⒾIÌÍÎĨĪĬİÏḮỈǏȈȊỊĮḬƗ"},{base:"J",letters:"JⒿJĴɈ"},{base:"K",letters:"KⓀKḰǨḲĶḴƘⱩꝀꝂꝄꞢ"},{base:"L",letters:"LⓁLĿĹĽḶḸĻḼḺŁȽⱢⱠꝈꝆꞀ"},{base:"LJ",letters:"LJ"},{base:"Lj",letters:"Lj"},{base:"M",letters:"MⓂMḾṀṂⱮƜ"},{base:"N",letters:"NⓃNǸŃÑṄŇṆŅṊṈȠƝꞐꞤ"},{base:"NJ",letters:"NJ"},{base:"Nj",letters:"Nj"},{base:"O",letters:"OⓄOÒÓÔỒỐỖỔÕṌȬṎŌṐṒŎȮȰÖȪỎŐǑȌȎƠỜỚỠỞỢỌỘǪǬØǾƆƟꝊꝌ"},{base:"OI",letters:"Ƣ"},{base:"OO",letters:"Ꝏ"},{base:"OU",letters:"Ȣ"},{base:"P",letters:"PⓅPṔṖƤⱣꝐꝒꝔ"},{base:"Q",letters:"QⓆQꝖꝘɊ"},{base:"R",letters:"RⓇRŔṘŘȐȒṚṜŖṞɌⱤꝚꞦꞂ"},{base:"S",letters:"SⓈSẞŚṤŜṠŠṦṢṨȘŞⱾꞨꞄ"},{base:"T",letters:"TⓉTṪŤṬȚŢṰṮŦƬƮȾꞆ"},{base:"TZ",letters:"Ꜩ"},{base:"U",letters:"UⓊUÙÚÛŨṸŪṺŬÜǛǗǕǙỦŮŰǓȔȖƯỪỨỮỬỰỤṲŲṶṴɄ"},{base:"V",letters:"VⓋVṼṾƲꝞɅ"},{base:"VY",letters:"Ꝡ"},{base:"W",letters:"WⓌWẀẂŴẆẄẈⱲ"},{base:"X",letters:"XⓍXẊẌ"},{base:"Y",letters:"YⓎYỲÝŶỸȲẎŸỶỴƳɎỾ"},{base:"Z",letters:"ZⓏZŹẐŻŽẒẔƵȤⱿⱫꝢ"},{base:"a",letters:"aⓐaẚàáâầấẫẩãāăằắẵẳȧǡäǟảåǻǎȁȃạậặḁąⱥɐ"},{base:"aa",letters:"ꜳ"},{base:"ae",letters:"æǽǣ"},{base:"ao",letters:"ꜵ"},{base:"au",letters:"ꜷ"},{base:"av",letters:"ꜹꜻ"},{base:"ay",letters:"ꜽ"},{base:"b",letters:"bⓑbḃḅḇƀƃɓ"},{base:"c",letters:"cⓒcćĉċčçḉƈȼꜿↄ"},{base:"d",letters:"dⓓdḋďḍḑḓḏđƌɖɗꝺ"},{base:"dz",letters:"dzdž"},{base:"e",letters:"eⓔeèéêềếễểẽēḕḗĕėëẻěȅȇẹệȩḝęḙḛɇɛǝ"},{base:"f",letters:"fⓕfḟƒꝼ"},{base:"g",letters:"gⓖgǵĝḡğġǧģǥɠꞡᵹꝿ"},{base:"h",letters:"hⓗhĥḣḧȟḥḩḫẖħⱨⱶɥ"},{base:"hv",letters:"ƕ"},{base:"i",letters:"iⓘiìíîĩīĭïḯỉǐȉȋịįḭɨı"},{base:"j",letters:"jⓙjĵǰɉ"},{base:"k",letters:"kⓚkḱǩḳķḵƙⱪꝁꝃꝅꞣ"},{base:"l",letters:"lⓛlŀĺľḷḹļḽḻſłƚɫⱡꝉꞁꝇ"},{base:"lj",letters:"lj"},{base:"m",letters:"mⓜmḿṁṃɱɯ"},{base:"n",letters:"nⓝnǹńñṅňṇņṋṉƞɲʼnꞑꞥ"},{base:"nj",letters:"nj"},{base:"o",letters:"oⓞoòóôồốỗổõṍȭṏōṑṓŏȯȱöȫỏőǒȍȏơờớỡởợọộǫǭøǿɔꝋꝍɵ"},{base:"oi",letters:"ƣ"},{base:"ou",letters:"ȣ"},{base:"oo",letters:"ꝏ"},{base:"p",letters:"pⓟpṕṗƥᵽꝑꝓꝕ"},{base:"q",letters:"qⓠqɋꝗꝙ"},{base:"r",letters:"rⓡrŕṙřȑȓṛṝŗṟɍɽꝛꞧꞃ"},{base:"s",letters:"sⓢsßśṥŝṡšṧṣṩșşȿꞩꞅẛ"},{base:"t",letters:"tⓣtṫẗťṭțţṱṯŧƭʈⱦꞇ"},{base:"tz",letters:"ꜩ"},{base:"u",letters:"uⓤuùúûũṹūṻŭüǜǘǖǚủůűǔȕȗưừứữửựụṳųṷṵʉ"},{base:"v",letters:"vⓥvṽṿʋꝟʌ"},{base:"vy",letters:"ꝡ"},{base:"w",letters:"wⓦwẁẃŵẇẅẘẉⱳ"},{base:"x",letters:"xⓧxẋẍ"},{base:"y",letters:"yⓨyỳýŷỹȳẏÿỷẙỵƴɏỿ"},{base:"z",letters:"zⓩzźẑżžẓẕƶȥɀⱬꝣ"}],Ix=new RegExp("["+Xf.map(function(t){return t.letters}).join("")+"]","g"),zS={};for(var pu=0;pu<Xf.length;pu++)for(var hu=Xf[pu],mu=0;mu<hu.letters.length;mu++)zS[hu.letters[mu]]=hu.base;var HS=function(e){return e.replace(Ix,function(r){return zS[r]})},Ox=Cx(HS),Eg=function(e){return e.replace(/^\s+|\s+$/g,"")},xx=function(e){return"".concat(e.label," ").concat(e.value)},Dx=function(e){return function(r,n){if(r.data.__isNew__)return!0;var i=we({ignoreCase:!0,ignoreAccents:!0,stringify:xx,trim:!0,matchFrom:"any"},e),s=i.ignoreCase,o=i.ignoreAccents,a=i.stringify,c=i.trim,l=i.matchFrom,d=c?Eg(n):n,p=c?Eg(a(r)):a(r);return s&&(d=d.toLowerCase(),p=p.toLowerCase()),o&&(d=Ox(d),p=HS(p)),l==="start"?p.substr(0,d.length)===d:p.indexOf(d)>-1}},kx=["innerRef"];function Mx(t){var e=t.innerRef,r=li(t,kx),n=sO(r,"onExited","in","enter","exit","appear");return ve("input",_e({ref:e},n,{css:Qp({label:"dummyInput",background:0,border:0,caretColor:"transparent",fontSize:"inherit",gridArea:"1 / 1 / 2 / 3",outline:0,padding:0,width:1,color:"transparent",left:-100,opacity:0,position:"relative",transform:"scale(.01)"},la.NODE_ENV==="production"?"":";label:DummyInput;",la.NODE_ENV==="production"?"":"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkR1bW15SW5wdXQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlCTSIsImZpbGUiOiJEdW1teUlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBAanN4IGpzeCAqL1xuaW1wb3J0IHsgSlNYLCBSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBqc3ggfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyByZW1vdmVQcm9wcyB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRHVtbXlJbnB1dCh7XG4gIGlubmVyUmVmLFxuICAuLi5wcm9wc1xufTogSlNYLkludHJpbnNpY0VsZW1lbnRzWydpbnB1dCddICYge1xuICByZWFkb25seSBpbm5lclJlZjogUmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xufSkge1xuICAvLyBSZW1vdmUgYW5pbWF0aW9uIHByb3BzIG5vdCBtZWFudCBmb3IgSFRNTCBlbGVtZW50c1xuICBjb25zdCBmaWx0ZXJlZFByb3BzID0gcmVtb3ZlUHJvcHMoXG4gICAgcHJvcHMsXG4gICAgJ29uRXhpdGVkJyxcbiAgICAnaW4nLFxuICAgICdlbnRlcicsXG4gICAgJ2V4aXQnLFxuICAgICdhcHBlYXInXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8aW5wdXRcbiAgICAgIHJlZj17aW5uZXJSZWZ9XG4gICAgICB7Li4uZmlsdGVyZWRQcm9wc31cbiAgICAgIGNzcz17e1xuICAgICAgICBsYWJlbDogJ2R1bW15SW5wdXQnLFxuICAgICAgICAvLyBnZXQgcmlkIG9mIGFueSBkZWZhdWx0IHN0eWxlc1xuICAgICAgICBiYWNrZ3JvdW5kOiAwLFxuICAgICAgICBib3JkZXI6IDAsXG4gICAgICAgIC8vIGltcG9ydGFudCEgdGhpcyBoaWRlcyB0aGUgZmxhc2hpbmcgY3Vyc29yXG4gICAgICAgIGNhcmV0Q29sb3I6ICd0cmFuc3BhcmVudCcsXG4gICAgICAgIGZvbnRTaXplOiAnaW5oZXJpdCcsXG4gICAgICAgIGdyaWRBcmVhOiAnMSAvIDEgLyAyIC8gMycsXG4gICAgICAgIG91dGxpbmU6IDAsXG4gICAgICAgIHBhZGRpbmc6IDAsXG4gICAgICAgIC8vIGltcG9ydGFudCEgd2l0aG91dCBgd2lkdGhgIGJyb3dzZXJzIHdvbid0IGFsbG93IGZvY3VzXG4gICAgICAgIHdpZHRoOiAxLFxuXG4gICAgICAgIC8vIHJlbW92ZSBjdXJzb3Igb24gZGVza3RvcFxuICAgICAgICBjb2xvcjogJ3RyYW5zcGFyZW50JyxcblxuICAgICAgICAvLyByZW1vdmUgY3Vyc29yIG9uIG1vYmlsZSB3aGlsc3QgbWFpbnRhaW5pbmcgXCJzY3JvbGwgaW50byB2aWV3XCIgYmVoYXZpb3VyXG4gICAgICAgIGxlZnQ6IC0xMDAsXG4gICAgICAgIG9wYWNpdHk6IDAsXG4gICAgICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICAgICAgICB0cmFuc2Zvcm06ICdzY2FsZSguMDEpJyxcbiAgICAgIH19XG4gICAgLz5cbiAgKTtcbn1cbiJdfQ== */")}))}var Nx=function(e){e.cancelable&&e.preventDefault(),e.stopPropagation()};function Lx(t){var e=t.isEnabled,r=t.onBottomArrive,n=t.onBottomLeave,i=t.onTopArrive,s=t.onTopLeave,o=K.useRef(!1),a=K.useRef(!1),c=K.useRef(0),l=K.useRef(null),d=K.useCallback(function(C,w){if(l.current!==null){var y=l.current,f=y.scrollTop,u=y.scrollHeight,h=y.clientHeight,b=l.current,A=w>0,R=u-h-f,_=!1;R>w&&o.current&&(n&&n(C),o.current=!1),A&&a.current&&(s&&s(C),a.current=!1),A&&w>R?(r&&!o.current&&r(C),b.scrollTop=u,_=!0,o.current=!0):!A&&-w>f&&(i&&!a.current&&i(C),b.scrollTop=0,_=!0,a.current=!0),_&&Nx(C)}},[r,n,i,s]),p=K.useCallback(function(C){d(C,C.deltaY)},[d]),m=K.useCallback(function(C){c.current=C.changedTouches[0].clientY},[]),g=K.useCallback(function(C){var w=c.current-C.changedTouches[0].clientY;d(C,w)},[d]),v=K.useCallback(function(C){if(C){var w=rO?{passive:!1}:!1;C.addEventListener("wheel",p,w),C.addEventListener("touchstart",m,w),C.addEventListener("touchmove",g,w)}},[g,m,p]),S=K.useCallback(function(C){C&&(C.removeEventListener("wheel",p,!1),C.removeEventListener("touchstart",m,!1),C.removeEventListener("touchmove",g,!1))},[g,m,p]);return K.useEffect(function(){if(e){var C=l.current;return v(C),function(){S(C)}}},[e,v,S]),function(C){l.current=C}}var Pg=["boxSizing","height","overflow","paddingRight","position"],Tg={boxSizing:"border-box",overflow:"hidden",position:"relative",height:"100%"};function Ig(t){t.cancelable&&t.preventDefault()}function Og(t){t.stopPropagation()}function xg(){var t=this.scrollTop,e=this.scrollHeight,r=t+this.offsetHeight;t===0?this.scrollTop=1:r===e&&(this.scrollTop=t-1)}function Dg(){return"ontouchstart"in window||navigator.maxTouchPoints}var kg=!!(typeof window<"u"&&window.document&&window.document.createElement),To=0,Is={capture:!1,passive:!1};function jx(t){var e=t.isEnabled,r=t.accountForScrollbars,n=r===void 0?!0:r,i=K.useRef({}),s=K.useRef(null),o=K.useCallback(function(c){if(kg){var l=document.body,d=l&&l.style;if(n&&Pg.forEach(function(v){var S=d&&d[v];i.current[v]=S}),n&&To<1){var p=parseInt(i.current.paddingRight,10)||0,m=document.body?document.body.clientWidth:0,g=window.innerWidth-m+p||0;Object.keys(Tg).forEach(function(v){var S=Tg[v];d&&(d[v]=S)}),d&&(d.paddingRight="".concat(g,"px"))}l&&Dg()&&(l.addEventListener("touchmove",Ig,Is),c&&(c.addEventListener("touchstart",xg,Is),c.addEventListener("touchmove",Og,Is))),To+=1}},[n]),a=K.useCallback(function(c){if(kg){var l=document.body,d=l&&l.style;To=Math.max(To-1,0),n&&To<1&&Pg.forEach(function(p){var m=i.current[p];d&&(d[p]=m)}),l&&Dg()&&(l.removeEventListener("touchmove",Ig,Is),c&&(c.removeEventListener("touchstart",xg,Is),c.removeEventListener("touchmove",Og,Is)))}},[n]);return K.useEffect(function(){if(e){var c=s.current;return o(c),function(){a(c)}}},[e,o,a]),function(c){s.current=c}}function Bx(){return"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."}var Fx=function(e){var r=e.target;return r.ownerDocument.activeElement&&r.ownerDocument.activeElement.blur()},zx=la.NODE_ENV==="production"?{name:"1kfdb0e",styles:"position:fixed;left:0;bottom:0;right:0;top:0"}:{name:"bp8cua-ScrollManager",styles:"position:fixed;left:0;bottom:0;right:0;top:0;label:ScrollManager;",map:"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNjcm9sbE1hbmFnZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9EVSIsImZpbGUiOiJTY3JvbGxNYW5hZ2VyLnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBAanN4IGpzeCAqL1xuaW1wb3J0IHsganN4IH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgRnJhZ21lbnQsIFJlYWN0RWxlbWVudCwgUmVmQ2FsbGJhY2ssIE1vdXNlRXZlbnQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdXNlU2Nyb2xsQ2FwdHVyZSBmcm9tICcuL3VzZVNjcm9sbENhcHR1cmUnO1xuaW1wb3J0IHVzZVNjcm9sbExvY2sgZnJvbSAnLi91c2VTY3JvbGxMb2NrJztcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgcmVhZG9ubHkgY2hpbGRyZW46IChyZWY6IFJlZkNhbGxiYWNrPEhUTUxFbGVtZW50PikgPT4gUmVhY3RFbGVtZW50O1xuICByZWFkb25seSBsb2NrRW5hYmxlZDogYm9vbGVhbjtcbiAgcmVhZG9ubHkgY2FwdHVyZUVuYWJsZWQ6IGJvb2xlYW47XG4gIHJlYWRvbmx5IG9uQm90dG9tQXJyaXZlPzogKGV2ZW50OiBXaGVlbEV2ZW50IHwgVG91Y2hFdmVudCkgPT4gdm9pZDtcbiAgcmVhZG9ubHkgb25Cb3R0b21MZWF2ZT86IChldmVudDogV2hlZWxFdmVudCB8IFRvdWNoRXZlbnQpID0+IHZvaWQ7XG4gIHJlYWRvbmx5IG9uVG9wQXJyaXZlPzogKGV2ZW50OiBXaGVlbEV2ZW50IHwgVG91Y2hFdmVudCkgPT4gdm9pZDtcbiAgcmVhZG9ubHkgb25Ub3BMZWF2ZT86IChldmVudDogV2hlZWxFdmVudCB8IFRvdWNoRXZlbnQpID0+IHZvaWQ7XG59XG5cbmNvbnN0IGJsdXJTZWxlY3RJbnB1dCA9IChldmVudDogTW91c2VFdmVudDxIVE1MRGl2RWxlbWVudD4pID0+IHtcbiAgY29uc3QgZWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRGl2RWxlbWVudDtcbiAgcmV0dXJuIChcbiAgICBlbGVtZW50Lm93bmVyRG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJlxuICAgIChlbGVtZW50Lm93bmVyRG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuYmx1cigpXG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBTY3JvbGxNYW5hZ2VyKHtcbiAgY2hpbGRyZW4sXG4gIGxvY2tFbmFibGVkLFxuICBjYXB0dXJlRW5hYmxlZCA9IHRydWUsXG4gIG9uQm90dG9tQXJyaXZlLFxuICBvbkJvdHRvbUxlYXZlLFxuICBvblRvcEFycml2ZSxcbiAgb25Ub3BMZWF2ZSxcbn06IFByb3BzKSB7XG4gIGNvbnN0IHNldFNjcm9sbENhcHR1cmVUYXJnZXQgPSB1c2VTY3JvbGxDYXB0dXJlKHtcbiAgICBpc0VuYWJsZWQ6IGNhcHR1cmVFbmFibGVkLFxuICAgIG9uQm90dG9tQXJyaXZlLFxuICAgIG9uQm90dG9tTGVhdmUsXG4gICAgb25Ub3BBcnJpdmUsXG4gICAgb25Ub3BMZWF2ZSxcbiAgfSk7XG4gIGNvbnN0IHNldFNjcm9sbExvY2tUYXJnZXQgPSB1c2VTY3JvbGxMb2NrKHsgaXNFbmFibGVkOiBsb2NrRW5hYmxlZCB9KTtcblxuICBjb25zdCB0YXJnZXRSZWY6IFJlZkNhbGxiYWNrPEhUTUxFbGVtZW50PiA9IChlbGVtZW50KSA9PiB7XG4gICAgc2V0U2Nyb2xsQ2FwdHVyZVRhcmdldChlbGVtZW50KTtcbiAgICBzZXRTY3JvbGxMb2NrVGFyZ2V0KGVsZW1lbnQpO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPEZyYWdtZW50PlxuICAgICAge2xvY2tFbmFibGVkICYmIChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIG9uQ2xpY2s9e2JsdXJTZWxlY3RJbnB1dH1cbiAgICAgICAgICBjc3M9e3sgcG9zaXRpb246ICdmaXhlZCcsIGxlZnQ6IDAsIGJvdHRvbTogMCwgcmlnaHQ6IDAsIHRvcDogMCB9fVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICAgIHtjaGlsZHJlbih0YXJnZXRSZWYpfVxuICAgIDwvRnJhZ21lbnQ+XG4gICk7XG59XG4iXX0= */",toString:Bx};function Hx(t){var e=t.children,r=t.lockEnabled,n=t.captureEnabled,i=n===void 0?!0:n,s=t.onBottomArrive,o=t.onBottomLeave,a=t.onTopArrive,c=t.onTopLeave,l=Lx({isEnabled:i,onBottomArrive:s,onBottomLeave:o,onTopArrive:a,onTopLeave:c}),d=jx({isEnabled:r}),p=function(g){l(g),d(g)};return ve(K.Fragment,null,r&&ve("div",{onClick:Fx,css:zx}),e(p))}function Vx(){return"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."}var Gx=la.NODE_ENV==="production"?{name:"1a0ro4n-requiredInput",styles:"label:requiredInput;opacity:0;pointer-events:none;position:absolute;bottom:0;left:0;right:0;width:100%"}:{name:"5kkxb2-requiredInput-RequiredInput",styles:"label:requiredInput;opacity:0;pointer-events:none;position:absolute;bottom:0;left:0;right:0;width:100%;label:RequiredInput;",map:"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlcXVpcmVkSW5wdXQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWNJIiwiZmlsZSI6IlJlcXVpcmVkSW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLyoqIEBqc3gganN4ICovXG5pbXBvcnQgeyBGb2N1c0V2ZW50SGFuZGxlciwgRnVuY3Rpb25Db21wb25lbnQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBqc3ggfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmNvbnN0IFJlcXVpcmVkSW5wdXQ6IEZ1bmN0aW9uQ29tcG9uZW50PHtcbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcbiAgcmVhZG9ubHkgb25Gb2N1czogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD47XG59PiA9ICh7IG5hbWUsIG9uRm9jdXMgfSkgPT4gKFxuICA8aW5wdXRcbiAgICByZXF1aXJlZFxuICAgIG5hbWU9e25hbWV9XG4gICAgdGFiSW5kZXg9ey0xfVxuICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgb25Gb2N1cz17b25Gb2N1c31cbiAgICBjc3M9e3tcbiAgICAgIGxhYmVsOiAncmVxdWlyZWRJbnB1dCcsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgcG9pbnRlckV2ZW50czogJ25vbmUnLFxuICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICBib3R0b206IDAsXG4gICAgICBsZWZ0OiAwLFxuICAgICAgcmlnaHQ6IDAsXG4gICAgICB3aWR0aDogJzEwMCUnLFxuICAgIH19XG4gICAgLy8gUHJldmVudCBgU3dpdGNoaW5nIGZyb20gdW5jb250cm9sbGVkIHRvIGNvbnRyb2xsZWRgIGVycm9yXG4gICAgdmFsdWU9XCJcIlxuICAgIG9uQ2hhbmdlPXsoKSA9PiB7fX1cbiAgLz5cbik7XG5cbmV4cG9ydCBkZWZhdWx0IFJlcXVpcmVkSW5wdXQ7XG4iXX0= */",toString:Vx},Xx=function(e){var r=e.name,n=e.onFocus;return ve("input",{required:!0,name:r,tabIndex:-1,"aria-hidden":"true",onFocus:n,css:Gx,value:"",onChange:function(){}})},Ux=Xx;function ah(t){var e;return typeof window<"u"&&window.navigator!=null?t.test(((e=window.navigator.userAgentData)===null||e===void 0?void 0:e.platform)||window.navigator.platform):!1}function Wx(){return ah(/^iPhone/i)}function VS(){return ah(/^Mac/i)}function Yx(){return ah(/^iPad/i)||VS()&&navigator.maxTouchPoints>1}function Zx(){return Wx()||Yx()}function qx(){return VS()||Zx()}var Jx=function(e){return e.label},Kx=function(e){return e.label},Qx=function(e){return e.value},$x=function(e){return!!e.isDisabled},eD={clearIndicator:MO,container:CO,control:HO,dropdownIndicator:DO,group:UO,groupHeading:YO,indicatorsContainer:EO,indicatorSeparator:LO,input:KO,loadingIndicator:FO,loadingMessage:vO,menu:dO,menuList:hO,menuPortal:SO,multiValue:rx,multiValueLabel:nx,multiValueRemove:ix,noOptionsMessage:gO,option:dx,placeholder:px,singleValue:gx,valueContainer:RO},tD={primary:"#2684FF",primary75:"#4C9AFF",primary50:"#B2D4FF",primary25:"#DEEBFF",danger:"#DE350B",dangerLight:"#FFBDAD",neutral0:"hsl(0, 0%, 100%)",neutral5:"hsl(0, 0%, 95%)",neutral10:"hsl(0, 0%, 90%)",neutral20:"hsl(0, 0%, 80%)",neutral30:"hsl(0, 0%, 70%)",neutral40:"hsl(0, 0%, 60%)",neutral50:"hsl(0, 0%, 50%)",neutral60:"hsl(0, 0%, 40%)",neutral70:"hsl(0, 0%, 30%)",neutral80:"hsl(0, 0%, 20%)",neutral90:"hsl(0, 0%, 10%)"},rD=4,GS=4,nD=38,iD=GS*2,sD={baseUnit:GS,controlHeight:nD,menuGutter:iD},gu={borderRadius:rD,colors:tD,spacing:sD},oD={"aria-live":"polite",backspaceRemovesValue:!0,blurInputOnSelect:Cg(),captureMenuScroll:!Cg(),classNames:{},closeMenuOnSelect:!0,closeMenuOnScroll:!1,components:{},controlShouldRenderValue:!0,escapeClearsValue:!1,filterOption:Dx(),formatGroupLabel:Jx,getOptionLabel:Kx,getOptionValue:Qx,isDisabled:!1,isLoading:!1,isMulti:!1,isRtl:!1,isSearchable:!0,isOptionDisabled:$x,loadingMessage:function(){return"Loading..."},maxMenuHeight:300,minMenuHeight:140,menuIsOpen:!1,menuPlacement:"bottom",menuPosition:"absolute",menuShouldBlockScroll:!1,menuShouldScrollIntoView:!eO(),noOptionsMessage:function(){return"No options"},openMenuOnFocus:!1,openMenuOnClick:!0,options:[],pageSize:5,placeholder:"Select...",screenReaderStatus:function(e){var r=e.count;return"".concat(r," result").concat(r!==1?"s":""," available")},styles:{},tabIndex:0,tabSelectsValue:!0,unstyled:!1};function Mg(t,e,r,n){var i=WS(t,e,r),s=YS(t,e,r),o=US(t,e),a=Pl(t,e);return{type:"option",data:e,isDisabled:i,isSelected:s,label:o,value:a,index:n}}function Hc(t,e){return t.options.map(function(r,n){if("options"in r){var i=r.options.map(function(o,a){return Mg(t,o,e,a)}).filter(function(o){return Lg(t,o)});return i.length>0?{type:"group",data:r,options:i,index:n}:void 0}var s=Mg(t,r,e,n);return Lg(t,s)?s:void 0}).filter(nO)}function XS(t){return t.reduce(function(e,r){return r.type==="group"?e.push.apply(e,Yp(r.options.map(function(n){return n.data}))):e.push(r.data),e},[])}function Ng(t,e){return t.reduce(function(r,n){return n.type==="group"?r.push.apply(r,Yp(n.options.map(function(i){return{data:i.data,id:"".concat(e,"-").concat(n.index,"-").concat(i.index)}}))):r.push({data:n.data,id:"".concat(e,"-").concat(n.index)}),r},[])}function aD(t,e){return XS(Hc(t,e))}function Lg(t,e){var r=t.inputValue,n=r===void 0?"":r,i=e.data,s=e.isSelected,o=e.label,a=e.value;return(!qS(t)||!s)&&ZS(t,{label:o,value:a,data:i},n)}function cD(t,e){var r=t.focusedValue,n=t.selectValue,i=n.indexOf(r);if(i>-1){var s=e.indexOf(r);if(s>-1)return r;if(i<e.length)return e[i]}return null}function lD(t,e){var r=t.focusedOption;return r&&e.indexOf(r)>-1?r:e[0]}var vu=function(e,r){var n,i=(n=e.find(function(s){return s.data===r}))===null||n===void 0?void 0:n.id;return i||null},US=function(e,r){return e.getOptionLabel(r)},Pl=function(e,r){return e.getOptionValue(r)};function WS(t,e,r){return typeof t.isOptionDisabled=="function"?t.isOptionDisabled(e,r):!1}function YS(t,e,r){if(r.indexOf(e)>-1)return!0;if(typeof t.isOptionSelected=="function")return t.isOptionSelected(e,r);var n=Pl(t,e);return r.some(function(i){return Pl(t,i)===n})}function ZS(t,e,r){return t.filterOption?t.filterOption(e,r):!0}var qS=function(e){var r=e.hideSelectedOptions,n=e.isMulti;return r===void 0?n:r},dD=1,JS=function(t){GT(r,t);var e=UT(r);function r(n){var i;if(HT(this,r),i=e.call(this,n),i.state={ariaSelection:null,focusedOption:null,focusedOptionId:null,focusableOptionsWithIds:[],focusedValue:null,inputIsHidden:!1,isFocused:!1,selectValue:[],clearFocusValueOnUpdate:!1,prevWasFocused:!1,inputIsHiddenAfterUpdate:void 0,prevProps:void 0,instancePrefix:"",isAppleDevice:!1},i.blockOptionHover=!1,i.isComposing=!1,i.commonProps=void 0,i.initialTouchX=0,i.initialTouchY=0,i.openAfterFocus=!1,i.scrollToFocusedOptionOnUpdate=!1,i.userIsDragging=void 0,i.controlRef=null,i.getControlRef=function(c){i.controlRef=c},i.focusedOptionRef=null,i.getFocusedOptionRef=function(c){i.focusedOptionRef=c},i.menuListRef=null,i.getMenuListRef=function(c){i.menuListRef=c},i.inputRef=null,i.getInputRef=function(c){i.inputRef=c},i.focus=i.focusInput,i.blur=i.blurInput,i.onChange=function(c,l){var d=i.props,p=d.onChange,m=d.name;l.name=m,i.ariaOnChange(c,l),p(c,l)},i.setValue=function(c,l,d){var p=i.props,m=p.closeMenuOnSelect,g=p.isMulti,v=p.inputValue;i.onInputChange("",{action:"set-value",prevInputValue:v}),m&&(i.setState({inputIsHiddenAfterUpdate:!g}),i.onMenuClose()),i.setState({clearFocusValueOnUpdate:!0}),i.onChange(c,{action:l,option:d})},i.selectOption=function(c){var l=i.props,d=l.blurInputOnSelect,p=l.isMulti,m=l.name,g=i.state.selectValue,v=p&&i.isOptionSelected(c,g),S=i.isOptionDisabled(c,g);if(v){var C=i.getOptionValue(c);i.setValue(g.filter(function(w){return i.getOptionValue(w)!==C}),"deselect-option",c)}else if(!S)p?i.setValue([].concat(Yp(g),[c]),"select-option",c):i.setValue(c,"select-option");else{i.ariaOnChange(c,{action:"select-option",option:c,name:m});return}d&&i.blurInput()},i.removeValue=function(c){var l=i.props.isMulti,d=i.state.selectValue,p=i.getOptionValue(c),m=d.filter(function(v){return i.getOptionValue(v)!==p}),g=tc(l,m,m[0]||null);i.onChange(g,{action:"remove-value",removedValue:c}),i.focusInput()},i.clearValue=function(){var c=i.state.selectValue;i.onChange(tc(i.props.isMulti,[],null),{action:"clear",removedValues:c})},i.popValue=function(){var c=i.props.isMulti,l=i.state.selectValue,d=l[l.length-1],p=l.slice(0,l.length-1),m=tc(c,p,p[0]||null);d&&i.onChange(m,{action:"pop-value",removedValue:d})},i.getFocusedOptionId=function(c){return vu(i.state.focusableOptionsWithIds,c)},i.getFocusableOptionsWithIds=function(){return Ng(Hc(i.props,i.state.selectValue),i.getElementId("option"))},i.getValue=function(){return i.state.selectValue},i.cx=function(){for(var c=arguments.length,l=new Array(c),d=0;d<c;d++)l[d]=arguments[d];return q1.apply(void 0,[i.props.classNamePrefix].concat(l))},i.getOptionLabel=function(c){return US(i.props,c)},i.getOptionValue=function(c){return Pl(i.props,c)},i.getStyles=function(c,l){var d=i.props.unstyled,p=eD[c](l,d);p.boxSizing="border-box";var m=i.props.styles[c];return m?m(p,l):p},i.getClassNames=function(c,l){var d,p;return(d=(p=i.props.classNames)[c])===null||d===void 0?void 0:d.call(p,l)},i.getElementId=function(c){return"".concat(i.state.instancePrefix,"-").concat(c)},i.getComponents=function(){return yx(i.props)},i.buildCategorizedOptions=function(){return Hc(i.props,i.state.selectValue)},i.getCategorizedOptions=function(){return i.props.menuIsOpen?i.buildCategorizedOptions():[]},i.buildFocusableOptions=function(){return XS(i.buildCategorizedOptions())},i.getFocusableOptions=function(){return i.props.menuIsOpen?i.buildFocusableOptions():[]},i.ariaOnChange=function(c,l){i.setState({ariaSelection:we({value:c},l)})},i.onMenuMouseDown=function(c){c.button===0&&(c.stopPropagation(),c.preventDefault(),i.focusInput())},i.onMenuMouseMove=function(c){i.blockOptionHover=!1},i.onControlMouseDown=function(c){if(!c.defaultPrevented){var l=i.props.openMenuOnClick;i.state.isFocused?i.props.menuIsOpen?c.target.tagName!=="INPUT"&&c.target.tagName!=="TEXTAREA"&&i.onMenuClose():l&&i.openMenu("first"):(l&&(i.openAfterFocus=!0),i.focusInput()),c.target.tagName!=="INPUT"&&c.target.tagName!=="TEXTAREA"&&c.preventDefault()}},i.onDropdownIndicatorMouseDown=function(c){if(!(c&&c.type==="mousedown"&&c.button!==0)&&!i.props.isDisabled){var l=i.props,d=l.isMulti,p=l.menuIsOpen;i.focusInput(),p?(i.setState({inputIsHiddenAfterUpdate:!d}),i.onMenuClose()):i.openMenu("first"),c.preventDefault()}},i.onClearIndicatorMouseDown=function(c){c&&c.type==="mousedown"&&c.button!==0||(i.clearValue(),c.preventDefault(),i.openAfterFocus=!1,c.type==="touchend"?i.focusInput():setTimeout(function(){return i.focusInput()}))},i.onScroll=function(c){typeof i.props.closeMenuOnScroll=="boolean"?c.target instanceof HTMLElement&&ld(c.target)&&i.props.onMenuClose():typeof i.props.closeMenuOnScroll=="function"&&i.props.closeMenuOnScroll(c)&&i.props.onMenuClose()},i.onCompositionStart=function(){i.isComposing=!0},i.onCompositionEnd=function(){i.isComposing=!1},i.onTouchStart=function(c){var l=c.touches,d=l&&l.item(0);d&&(i.initialTouchX=d.clientX,i.initialTouchY=d.clientY,i.userIsDragging=!1)},i.onTouchMove=function(c){var l=c.touches,d=l&&l.item(0);if(d){var p=Math.abs(d.clientX-i.initialTouchX),m=Math.abs(d.clientY-i.initialTouchY),g=5;i.userIsDragging=p>g||m>g}},i.onTouchEnd=function(c){i.userIsDragging||(i.controlRef&&!i.controlRef.contains(c.target)&&i.menuListRef&&!i.menuListRef.contains(c.target)&&i.blurInput(),i.initialTouchX=0,i.initialTouchY=0)},i.onControlTouchEnd=function(c){i.userIsDragging||i.onControlMouseDown(c)},i.onClearIndicatorTouchEnd=function(c){i.userIsDragging||i.onClearIndicatorMouseDown(c)},i.onDropdownIndicatorTouchEnd=function(c){i.userIsDragging||i.onDropdownIndicatorMouseDown(c)},i.handleInputChange=function(c){var l=i.props.inputValue,d=c.currentTarget.value;i.setState({inputIsHiddenAfterUpdate:!1}),i.onInputChange(d,{action:"input-change",prevInputValue:l}),i.props.menuIsOpen||i.onMenuOpen()},i.onInputFocus=function(c){i.props.onFocus&&i.props.onFocus(c),i.setState({inputIsHiddenAfterUpdate:!1,isFocused:!0}),(i.openAfterFocus||i.props.openMenuOnFocus)&&i.openMenu("first"),i.openAfterFocus=!1},i.onInputBlur=function(c){var l=i.props.inputValue;if(i.menuListRef&&i.menuListRef.contains(document.activeElement)){i.inputRef.focus();return}i.props.onBlur&&i.props.onBlur(c),i.onInputChange("",{action:"input-blur",prevInputValue:l}),i.onMenuClose(),i.setState({focusedValue:null,isFocused:!1})},i.onOptionHover=function(c){if(!(i.blockOptionHover||i.state.focusedOption===c)){var l=i.getFocusableOptions(),d=l.indexOf(c);i.setState({focusedOption:c,focusedOptionId:d>-1?i.getFocusedOptionId(c):null})}},i.shouldHideSelectedOptions=function(){return qS(i.props)},i.onValueInputFocus=function(c){c.preventDefault(),c.stopPropagation(),i.focus()},i.onKeyDown=function(c){var l=i.props,d=l.isMulti,p=l.backspaceRemovesValue,m=l.escapeClearsValue,g=l.inputValue,v=l.isClearable,S=l.isDisabled,C=l.menuIsOpen,w=l.onKeyDown,y=l.tabSelectsValue,f=l.openMenuOnFocus,u=i.state,h=u.focusedOption,b=u.focusedValue,A=u.selectValue;if(!S&&!(typeof w=="function"&&(w(c),c.defaultPrevented))){switch(i.blockOptionHover=!0,c.key){case"ArrowLeft":if(!d||g)return;i.focusValue("previous");break;case"ArrowRight":if(!d||g)return;i.focusValue("next");break;case"Delete":case"Backspace":if(g)return;if(b)i.removeValue(b);else{if(!p)return;d?i.popValue():v&&i.clearValue()}break;case"Tab":if(i.isComposing||c.shiftKey||!C||!y||!h||f&&i.isOptionSelected(h,A))return;i.selectOption(h);break;case"Enter":if(c.keyCode===229)break;if(C){if(!h||i.isComposing)return;i.selectOption(h);break}return;case"Escape":C?(i.setState({inputIsHiddenAfterUpdate:!1}),i.onInputChange("",{action:"menu-close",prevInputValue:g}),i.onMenuClose()):v&&m&&i.clearValue();break;case" ":if(g)return;if(!C){i.openMenu("first");break}if(!h)return;i.selectOption(h);break;case"ArrowUp":C?i.focusOption("up"):i.openMenu("last");break;case"ArrowDown":C?i.focusOption("down"):i.openMenu("first");break;case"PageUp":if(!C)return;i.focusOption("pageup");break;case"PageDown":if(!C)return;i.focusOption("pagedown");break;case"Home":if(!C)return;i.focusOption("first");break;case"End":if(!C)return;i.focusOption("last");break;default:return}c.preventDefault()}},i.state.instancePrefix="react-select-"+(i.props.instanceId||++dD),i.state.selectValue=Sg(n.value),n.menuIsOpen&&i.state.selectValue.length){var s=i.getFocusableOptionsWithIds(),o=i.buildFocusableOptions(),a=o.indexOf(i.state.selectValue[0]);i.state.focusableOptionsWithIds=s,i.state.focusedOption=o[a],i.state.focusedOptionId=vu(s,o[a])}return i}return VT(r,[{key:"componentDidMount",value:function(){this.startListeningComposition(),this.startListeningToTouch(),this.props.closeMenuOnScroll&&document&&document.addEventListener&&document.addEventListener("scroll",this.onScroll,!0),this.props.autoFocus&&this.focusInput(),this.props.menuIsOpen&&this.state.focusedOption&&this.menuListRef&&this.focusedOptionRef&&wg(this.menuListRef,this.focusedOptionRef),qx()&&this.setState({isAppleDevice:!0})}},{key:"componentDidUpdate",value:function(i){var s=this.props,o=s.isDisabled,a=s.menuIsOpen,c=this.state.isFocused;(c&&!o&&i.isDisabled||c&&a&&!i.menuIsOpen)&&this.focusInput(),c&&o&&!i.isDisabled?this.setState({isFocused:!1},this.onMenuClose):!c&&!o&&i.isDisabled&&this.inputRef===document.activeElement&&this.setState({isFocused:!0}),this.menuListRef&&this.focusedOptionRef&&this.scrollToFocusedOptionOnUpdate&&(wg(this.menuListRef,this.focusedOptionRef),this.scrollToFocusedOptionOnUpdate=!1)}},{key:"componentWillUnmount",value:function(){this.stopListeningComposition(),this.stopListeningToTouch(),document.removeEventListener("scroll",this.onScroll,!0)}},{key:"onMenuOpen",value:function(){this.props.onMenuOpen()}},{key:"onMenuClose",value:function(){this.onInputChange("",{action:"menu-close",prevInputValue:this.props.inputValue}),this.props.onMenuClose()}},{key:"onInputChange",value:function(i,s){this.props.onInputChange(i,s)}},{key:"focusInput",value:function(){this.inputRef&&this.inputRef.focus()}},{key:"blurInput",value:function(){this.inputRef&&this.inputRef.blur()}},{key:"openMenu",value:function(i){var s=this,o=this.state,a=o.selectValue,c=o.isFocused,l=this.buildFocusableOptions(),d=i==="first"?0:l.length-1;if(!this.props.isMulti){var p=l.indexOf(a[0]);p>-1&&(d=p)}this.scrollToFocusedOptionOnUpdate=!(c&&this.menuListRef),this.setState({inputIsHiddenAfterUpdate:!1,focusedValue:null,focusedOption:l[d],focusedOptionId:this.getFocusedOptionId(l[d])},function(){return s.onMenuOpen()})}},{key:"focusValue",value:function(i){var s=this.state,o=s.selectValue,a=s.focusedValue;if(this.props.isMulti){this.setState({focusedOption:null});var c=o.indexOf(a);a||(c=-1);var l=o.length-1,d=-1;if(o.length){switch(i){case"previous":c===0?d=0:c===-1?d=l:d=c-1;break;case"next":c>-1&&c<l&&(d=c+1);break}this.setState({inputIsHidden:d!==-1,focusedValue:o[d]})}}}},{key:"focusOption",value:function(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"first",s=this.props.pageSize,o=this.state.focusedOption,a=this.getFocusableOptions();if(a.length){var c=0,l=a.indexOf(o);o||(l=-1),i==="up"?c=l>0?l-1:a.length-1:i==="down"?c=(l+1)%a.length:i==="pageup"?(c=l-s,c<0&&(c=0)):i==="pagedown"?(c=l+s,c>a.length-1&&(c=a.length-1)):i==="last"&&(c=a.length-1),this.scrollToFocusedOptionOnUpdate=!0,this.setState({focusedOption:a[c],focusedValue:null,focusedOptionId:this.getFocusedOptionId(a[c])})}}},{key:"getTheme",value:function(){return this.props.theme?typeof this.props.theme=="function"?this.props.theme(gu):we(we({},gu),this.props.theme):gu}},{key:"getCommonProps",value:function(){var i=this.clearValue,s=this.cx,o=this.getStyles,a=this.getClassNames,c=this.getValue,l=this.selectOption,d=this.setValue,p=this.props,m=p.isMulti,g=p.isRtl,v=p.options,S=this.hasValue();return{clearValue:i,cx:s,getStyles:o,getClassNames:a,getValue:c,hasValue:S,isMulti:m,isRtl:g,options:v,selectOption:l,selectProps:p,setValue:d,theme:this.getTheme()}}},{key:"hasValue",value:function(){var i=this.state.selectValue;return i.length>0}},{key:"hasOptions",value:function(){return!!this.getFocusableOptions().length}},{key:"isClearable",value:function(){var i=this.props,s=i.isClearable,o=i.isMulti;return s===void 0?o:s}},{key:"isOptionDisabled",value:function(i,s){return WS(this.props,i,s)}},{key:"isOptionSelected",value:function(i,s){return YS(this.props,i,s)}},{key:"filterOption",value:function(i,s){return ZS(this.props,i,s)}},{key:"formatOptionLabel",value:function(i,s){if(typeof this.props.formatOptionLabel=="function"){var o=this.props.inputValue,a=this.state.selectValue;return this.props.formatOptionLabel(i,{context:s,inputValue:o,selectValue:a})}else return this.getOptionLabel(i)}},{key:"formatGroupLabel",value:function(i){return this.props.formatGroupLabel(i)}},{key:"startListeningComposition",value:function(){document&&document.addEventListener&&(document.addEventListener("compositionstart",this.onCompositionStart,!1),document.addEventListener("compositionend",this.onCompositionEnd,!1))}},{key:"stopListeningComposition",value:function(){document&&document.removeEventListener&&(document.removeEventListener("compositionstart",this.onCompositionStart),document.removeEventListener("compositionend",this.onCompositionEnd))}},{key:"startListeningToTouch",value:function(){document&&document.addEventListener&&(document.addEventListener("touchstart",this.onTouchStart,!1),document.addEventListener("touchmove",this.onTouchMove,!1),document.addEventListener("touchend",this.onTouchEnd,!1))}},{key:"stopListeningToTouch",value:function(){document&&document.removeEventListener&&(document.removeEventListener("touchstart",this.onTouchStart),document.removeEventListener("touchmove",this.onTouchMove),document.removeEventListener("touchend",this.onTouchEnd))}},{key:"renderInput",value:function(){var i=this.props,s=i.isDisabled,o=i.isSearchable,a=i.inputId,c=i.inputValue,l=i.tabIndex,d=i.form,p=i.menuIsOpen,m=i.required,g=this.getComponents(),v=g.Input,S=this.state,C=S.inputIsHidden,w=S.ariaSelection,y=this.commonProps,f=a||this.getElementId("input"),u=we(we(we({"aria-autocomplete":"list","aria-expanded":p,"aria-haspopup":!0,"aria-errormessage":this.props["aria-errormessage"],"aria-invalid":this.props["aria-invalid"],"aria-label":this.props["aria-label"],"aria-labelledby":this.props["aria-labelledby"],"aria-required":m,role:"combobox","aria-activedescendant":this.state.isAppleDevice?void 0:this.state.focusedOptionId||""},p&&{"aria-controls":this.getElementId("listbox")}),!o&&{"aria-readonly":!0}),this.hasValue()?w?.action==="initial-input-focus"&&{"aria-describedby":this.getElementId("live-region")}:{"aria-describedby":this.getElementId("placeholder")});return o?M.createElement(v,_e({},y,{autoCapitalize:"none",autoComplete:"off",autoCorrect:"off",id:f,innerRef:this.getInputRef,isDisabled:s,isHidden:C,onBlur:this.onInputBlur,onChange:this.handleInputChange,onFocus:this.onInputFocus,spellCheck:"false",tabIndex:l,form:d,type:"text",value:c},u)):M.createElement(Mx,_e({id:f,innerRef:this.getInputRef,onBlur:this.onInputBlur,onChange:_l,onFocus:this.onInputFocus,disabled:s,tabIndex:l,inputMode:"none",form:d,value:""},u))}},{key:"renderPlaceholderOrValue",value:function(){var i=this,s=this.getComponents(),o=s.MultiValue,a=s.MultiValueContainer,c=s.MultiValueLabel,l=s.MultiValueRemove,d=s.SingleValue,p=s.Placeholder,m=this.commonProps,g=this.props,v=g.controlShouldRenderValue,S=g.isDisabled,C=g.isMulti,w=g.inputValue,y=g.placeholder,f=this.state,u=f.selectValue,h=f.focusedValue,b=f.isFocused;if(!this.hasValue()||!v)return w?null:M.createElement(p,_e({},m,{key:"placeholder",isDisabled:S,isFocused:b,innerProps:{id:this.getElementId("placeholder")}}),y);if(C)return u.map(function(R,_){var E=R===h,P="".concat(i.getOptionLabel(R),"-").concat(i.getOptionValue(R));return M.createElement(o,_e({},m,{components:{Container:a,Label:c,Remove:l},isFocused:E,isDisabled:S,key:P,index:_,removeProps:{onClick:function(){return i.removeValue(R)},onTouchEnd:function(){return i.removeValue(R)},onMouseDown:function(k){k.preventDefault()}},data:R}),i.formatOptionLabel(R,"value"))});if(w)return null;var A=u[0];return M.createElement(d,_e({},m,{data:A,isDisabled:S}),this.formatOptionLabel(A,"value"))}},{key:"renderClearIndicator",value:function(){var i=this.getComponents(),s=i.ClearIndicator,o=this.commonProps,a=this.props,c=a.isDisabled,l=a.isLoading,d=this.state.isFocused;if(!this.isClearable()||!s||c||!this.hasValue()||l)return null;var p={onMouseDown:this.onClearIndicatorMouseDown,onTouchEnd:this.onClearIndicatorTouchEnd,"aria-hidden":"true"};return M.createElement(s,_e({},o,{innerProps:p,isFocused:d}))}},{key:"renderLoadingIndicator",value:function(){var i=this.getComponents(),s=i.LoadingIndicator,o=this.commonProps,a=this.props,c=a.isDisabled,l=a.isLoading,d=this.state.isFocused;if(!s||!l)return null;var p={"aria-hidden":"true"};return M.createElement(s,_e({},o,{innerProps:p,isDisabled:c,isFocused:d}))}},{key:"renderIndicatorSeparator",value:function(){var i=this.getComponents(),s=i.DropdownIndicator,o=i.IndicatorSeparator;if(!s||!o)return null;var a=this.commonProps,c=this.props.isDisabled,l=this.state.isFocused;return M.createElement(o,_e({},a,{isDisabled:c,isFocused:l}))}},{key:"renderDropdownIndicator",value:function(){var i=this.getComponents(),s=i.DropdownIndicator;if(!s)return null;var o=this.commonProps,a=this.props.isDisabled,c=this.state.isFocused,l={onMouseDown:this.onDropdownIndicatorMouseDown,onTouchEnd:this.onDropdownIndicatorTouchEnd,"aria-hidden":"true"};return M.createElement(s,_e({},o,{innerProps:l,isDisabled:a,isFocused:c}))}},{key:"renderMenu",value:function(){var i=this,s=this.getComponents(),o=s.Group,a=s.GroupHeading,c=s.Menu,l=s.MenuList,d=s.MenuPortal,p=s.LoadingMessage,m=s.NoOptionsMessage,g=s.Option,v=this.commonProps,S=this.state.focusedOption,C=this.props,w=C.captureMenuScroll,y=C.inputValue,f=C.isLoading,u=C.loadingMessage,h=C.minMenuHeight,b=C.maxMenuHeight,A=C.menuIsOpen,R=C.menuPlacement,_=C.menuPosition,E=C.menuPortalTarget,P=C.menuShouldBlockScroll,T=C.menuShouldScrollIntoView,k=C.noOptionsMessage,F=C.onMenuScrollToTop,X=C.onMenuScrollToBottom;if(!A)return null;var O=function(te,re){var ie=te.type,ce=te.data,se=te.isDisabled,ae=te.isSelected,le=te.label,ye=te.value,me=S===ce,ke=se?void 0:function(){return i.onOptionHover(ce)},U=se?void 0:function(){return i.selectOption(ce)},We="".concat(i.getElementId("option"),"-").concat(re),Ye={id:We,onClick:U,onMouseMove:ke,onMouseOver:ke,tabIndex:-1,role:"option","aria-selected":i.state.isAppleDevice?void 0:ae};return M.createElement(g,_e({},v,{innerProps:Ye,data:ce,isDisabled:se,isSelected:ae,key:We,label:le,type:ie,value:ye,isFocused:me,innerRef:me?i.getFocusedOptionRef:void 0}),i.formatOptionLabel(te.data,"menu"))},L;if(this.hasOptions())L=this.getCategorizedOptions().map(function(G){if(G.type==="group"){var te=G.data,re=G.options,ie=G.index,ce="".concat(i.getElementId("group"),"-").concat(ie),se="".concat(ce,"-heading");return M.createElement(o,_e({},v,{key:ce,data:te,options:re,Heading:a,headingProps:{id:se,data:G.data},label:i.formatGroupLabel(G.data)}),G.options.map(function(ae){return O(ae,"".concat(ie,"-").concat(ae.index))}))}else if(G.type==="option")return O(G,"".concat(G.index))});else if(f){var B=u({inputValue:y});if(B===null)return null;L=M.createElement(p,v,B)}else{var z=k({inputValue:y});if(z===null)return null;L=M.createElement(m,v,z)}var Z={minMenuHeight:h,maxMenuHeight:b,menuPlacement:R,menuPosition:_,menuShouldScrollIntoView:T},V=M.createElement(uO,_e({},v,Z),function(G){var te=G.ref,re=G.placerProps,ie=re.placement,ce=re.maxHeight;return M.createElement(c,_e({},v,Z,{innerRef:te,innerProps:{onMouseDown:i.onMenuMouseDown,onMouseMove:i.onMenuMouseMove},isLoading:f,placement:ie}),M.createElement(Hx,{captureEnabled:w,onTopArrive:F,onBottomArrive:X,lockEnabled:P},function(se){return M.createElement(l,_e({},v,{innerRef:function(le){i.getMenuListRef(le),se(le)},innerProps:{role:"listbox","aria-multiselectable":v.isMulti,id:i.getElementId("listbox")},isLoading:f,maxHeight:ce,focusedOption:S}),L)}))});return E||_==="fixed"?M.createElement(d,_e({},v,{appendTo:E,controlElement:this.controlRef,menuPlacement:R,menuPosition:_}),V):V}},{key:"renderFormField",value:function(){var i=this,s=this.props,o=s.delimiter,a=s.isDisabled,c=s.isMulti,l=s.name,d=s.required,p=this.state.selectValue;if(d&&!this.hasValue()&&!a)return M.createElement(Ux,{name:l,onFocus:this.onValueInputFocus});if(!(!l||a))if(c)if(o){var m=p.map(function(S){return i.getOptionValue(S)}).join(o);return M.createElement("input",{name:l,type:"hidden",value:m})}else{var g=p.length>0?p.map(function(S,C){return M.createElement("input",{key:"i-".concat(C),name:l,type:"hidden",value:i.getOptionValue(S)})}):M.createElement("input",{name:l,type:"hidden",value:""});return M.createElement("div",null,g)}else{var v=p[0]?this.getOptionValue(p[0]):"";return M.createElement("input",{name:l,type:"hidden",value:v})}}},{key:"renderLiveRegion",value:function(){var i=this.commonProps,s=this.state,o=s.ariaSelection,a=s.focusedOption,c=s.focusedValue,l=s.isFocused,d=s.selectValue,p=this.getFocusableOptions();return M.createElement(Tx,_e({},i,{id:this.getElementId("live-region"),ariaSelection:o,focusedOption:a,focusedValue:c,isFocused:l,selectValue:d,focusableOptions:p,isAppleDevice:this.state.isAppleDevice}))}},{key:"render",value:function(){var i=this.getComponents(),s=i.Control,o=i.IndicatorsContainer,a=i.SelectContainer,c=i.ValueContainer,l=this.props,d=l.className,p=l.id,m=l.isDisabled,g=l.menuIsOpen,v=this.state.isFocused,S=this.commonProps=this.getCommonProps();return M.createElement(a,_e({},S,{className:d,innerProps:{id:p,onKeyDown:this.onKeyDown},isDisabled:m,isFocused:v}),this.renderLiveRegion(),M.createElement(s,_e({},S,{innerRef:this.getControlRef,innerProps:{onMouseDown:this.onControlMouseDown,onTouchEnd:this.onControlTouchEnd},isDisabled:m,isFocused:v,menuIsOpen:g}),M.createElement(c,_e({},S,{isDisabled:m}),this.renderPlaceholderOrValue(),this.renderInput()),M.createElement(o,_e({},S,{isDisabled:m}),this.renderClearIndicator(),this.renderLoadingIndicator(),this.renderIndicatorSeparator(),this.renderDropdownIndicator())),this.renderMenu(),this.renderFormField())}}],[{key:"getDerivedStateFromProps",value:function(i,s){var o=s.prevProps,a=s.clearFocusValueOnUpdate,c=s.inputIsHiddenAfterUpdate,l=s.ariaSelection,d=s.isFocused,p=s.prevWasFocused,m=s.instancePrefix,g=i.options,v=i.value,S=i.menuIsOpen,C=i.inputValue,w=i.isMulti,y=Sg(v),f={};if(o&&(v!==o.value||g!==o.options||S!==o.menuIsOpen||C!==o.inputValue)){var u=S?aD(i,y):[],h=S?Ng(Hc(i,y),"".concat(m,"-option")):[],b=a?cD(s,y):null,A=lD(s,u),R=vu(h,A);f={selectValue:y,focusedOption:A,focusedOptionId:R,focusableOptionsWithIds:h,focusedValue:b,clearFocusValueOnUpdate:!1}}var _=c!=null&&i!==o?{inputIsHidden:c,inputIsHiddenAfterUpdate:void 0}:{},E=l,P=d&&p;return d&&!P&&(E={value:tc(w,y,y[0]||null),options:y,action:"initial-input-focus"},P=!p),l?.action==="initial-input-focus"&&(E=null),we(we(we({},f),_),{},{prevProps:i,ariaSelection:E,prevWasFocused:P})}}]),r}(K.Component);JS.defaultProps=oD;var uD=K.forwardRef(function(t,e){var r=zT(t);return M.createElement(JS,_e({ref:e},r))}),fD=uD;const KS=t=>{const e={...t};return delete e.autoCorrect,delete e.autoCapitalize,Y.jsx(FS.Input,{...e})},pD={SIN_DATOS:"SIN DATOS",SELECCIONE:"SELECCIONE..."},{SIN_DATOS:hD,SELECCIONE:mD}=pD,gD=t=>{const[e]=K.useState(t.firstElement),[r]=K.useState(t.newItem),[n,i]=K.useState({}),[s]=K.useState(t.customStylesOption),[o,a]=K.useState({});return K.useEffect(()=>{r&&t.options.push(r)},[r,t.options]),K.useEffect(()=>{const{options:c=[]}=t;e&&Number(c?.length)>1&&c.filter(d=>d===e)?.length===0&&t.options.unshift(e)},[e,t.options]),K.useEffect(()=>{const{selectedValue:c}=t,l={value:null};if(c||e&&e.value===c){const d=t.options.filter(({value:p})=>JSON.stringify(p)===JSON.stringify(c));d[0]?(i(d[0]),Object.getOwnPropertyDescriptor(n,"label")||t.onChange(d[0])):(i(l),t.onChange(l))}else t.options.length>0&&(i(l),t.onChange(l))},[t.selectedValue,t.options,e]),K.useEffect(()=>{s&&a({option:(l,{data:d})=>({...l,color:d.fields&&d.fields[s.fieldMatch]===s.valueMatch?"blue !important":"",fontWeight:d.fields&&d.fields[s.fieldMatch]===s.valueMatch?"bold":""})})},[s]),Y.jsxs(Y.Fragment,{children:[t.label&&t.label!==""&&Y.jsxs(rd,{className:"mb-0",children:[t.label,":"]}),Y.jsx(fD,{...t,components:{Input:KS},className:"react-select",classNamePrefix:"react-select",name:"form-field-name",value:Object.getOwnPropertyDescriptor(n,"label")?n:"",onChange:t.onChange,options:t.options,placeholder:Number(t.options.length)===0?hD:t.placeholder||mD,isDisabled:t.disabled,styles:o})]})},vD={LOAD_SELFIE_WITH_IDENTITY_CARD_MESSAGE:"Subí una foto Selfie de frente junto a tu DNI.",MESSAGE_SELFIE_ONLY_CAN_TAKE_FROM_CELLPHONE:"La carga de una foto Selfie de frente junto a tu DNI solo es accesible desde su teléfono",TAKE_PHOTO_MESSAGE:"Hacer Foto"},bD="data:image/png;base64,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zt//NFgcwVikGMFYb6P+TY38nWuhPHP+/v/LH862OJJx8kziR3j6w5l4mtcvTZ5BDOOrH85Q/R+0+BeBB4bhIeJhGLhhccTj9UHgGrEfBuXz9QGj/0EMWBzRyH+pb0H5P74p6vdB1f+A/W+E/zeY/XRPcVDxzsBdR/8WRzYOOpq/q9d7w74pDFoc2Sj/3BtmEYN6zwn/f27iLP5JcQgy+h/IRgSLIxMH8Fnrwj1Y+EuBwQfd/HOHJIt/yrA/dG/gM63CggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDBggULFixYsGDh/zf4fx48w9KliJA4AAAKtW1rQlT6zsr+AH9XugAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeJztnY2R2zgMRlNIGkkhKSSNpJAUkkZSSG6Qm3fz7gtIyVmvHdt4M57V6oekCBKiAJD6+XMYhmEYhmEYhmEYhmF4Sb5///7b78ePH/8duydVjnuX4dn58OHDb7+vX7/+qvfavmf9VzmqDMP7gbzP4vbwlv65u7aO1W8nf65HVw17Pn782NbVSv7u/2x/+vTp199v3779/PLly3/6ovYXta/yKSovzuUY55FO/Vyu2s+x2m/5k3adW2laX9WxYc9Kzp3+Lzr5f/78+dc29U//LbmUDJA5MmI/51T+yBSZ1/5sF/RrziU/txPaAuUb9uzkXzLy+K/o5M8x5EJ/tQyRc7UV91nkxzXgPr46hj4AymM9MezZyf+s/k/5d+8M6HnkXn+rLSDX2rYs/cxYyd96AOj7lZ51w9BzTfkj15JVXes+SF/3mMB5+FmSx3a6IduJ9YzlX23EaQz/UnXi/nO0H13NWJxtH6dfZ/spWVneKQ/6beZd13ksl7KsbdogeoYxyeqaYRiGYRiGYXhFGMffk0ew16f/828v71ny3foeXOprujb1rniEy+jtagfP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",yD=({onFilesSelectedSelfie:t=()=>{},isMobile:e=!1})=>{const[r,n]=K.useState(0),{LOAD_SELFIE_WITH_IDENTITY_CARD_MESSAGE:i,MESSAGE_SELFIE_ONLY_CAN_TAKE_FROM_CELLPHONE:s,TAKE_PHOTO_MESSAGE:o}=vD,a=c=>{n(c.length),t(c)};return Y.jsxs(Y.Fragment,{children:[Y.jsx(Rf,{className:"pt-2 ml-4",children:Y.jsx(jc,{xxs:"11",md:"5",children:i})}),Y.jsx(Rf,{className:"pt-2 ml-2",children:Y.jsx(jc,{xxs:"12",md:"9",children:e?Y.jsx(Y.Fragment,{children:Y.jsxs(jc,{xxs:"12",className:"text-center",children:[r===0&&Y.jsx("img",{style:{width:"97%"},alt:"hacerFotoDNI",src:bD}),Y.jsx(Q0,{className:"pt-2 ml-2",maxFiles:1,onChangeFiles:a,totalFiles:r,accept:"image/jpg,image/jpeg",capture:"environment",nameFileLabel:o})]})}):Y.jsx("h2",{className:"view-icon iconsminds-smartphone-4 ml-2 mr-2",style:{color:"red",margin:"10px 10px 0px 10px"},children:s})})})]})};var pr=function(){return pr=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},pr.apply(this,arguments)};function eo(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}function mo(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))}function ba(t,e){var r=e&&e.cache?e.cache:_D,n=e&&e.serializer?e.serializer:RD,i=e&&e.strategy?e.strategy:CD;return i(t,{cache:r,serializer:n})}function SD(t){return t==null||typeof t=="number"||typeof t=="boolean"}function wD(t,e,r,n){var i=SD(n)?n:r(n),s=e.get(i);return typeof s>"u"&&(s=t.call(this,n),e.set(i,s)),s}function QS(t,e,r){var n=Array.prototype.slice.call(arguments,3),i=r(n),s=e.get(i);return typeof s>"u"&&(s=t.apply(this,n),e.set(i,s)),s}function $S(t,e,r,n,i){return r.bind(e,t,n,i)}function CD(t,e){var r=t.length===1?wD:QS;return $S(t,this,r,e.cache.create(),e.serializer)}function AD(t,e){return $S(t,this,QS,e.cache.create(),e.serializer)}var RD=function(){return JSON.stringify(arguments)};function ch(){this.cache=Object.create(null)}ch.prototype.get=function(t){return this.cache[t]};ch.prototype.set=function(t,e){this.cache[t]=e};var _D={create:function(){return new ch}},ya={variadic:AD};function ED(t,e,r){if(r===void 0&&(r=Error),!t)throw new r(e)}ba(function(){for(var t,e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return new((t=Intl.NumberFormat).bind.apply(t,mo([void 0],e,!1)))},{strategy:ya.variadic});ba(function(){for(var t,e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return new((t=Intl.DateTimeFormat).bind.apply(t,mo([void 0],e,!1)))},{strategy:ya.variadic});ba(function(){for(var t,e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return new((t=Intl.PluralRules).bind.apply(t,mo([void 0],e,!1)))},{strategy:ya.variadic});ba(function(){for(var t,e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return new((t=Intl.Locale).bind.apply(t,mo([void 0],e,!1)))},{strategy:ya.variadic});ba(function(){for(var t,e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return new((t=Intl.ListFormat).bind.apply(t,mo([void 0],e,!1)))},{strategy:ya.variadic});var ew={},PD=function(t){ew.NODE_ENV!=="production"&&console.error(t)},TD=function(t){ew.NODE_ENV!=="production"&&console.warn(t)},ID={formats:{},messages:{},timeZone:void 0,defaultLocale:"en",defaultFormats:{},fallbackOnEmptyString:!0,onError:PD,onWarn:TD};function tw(t){ED(t,"[React Intl] Could not find required `intl` object. <IntlProvider> needs to exist in the component ancestry.")}pr(pr({},ID),{textComponent:M.Fragment});function jg(t,e){if(t===e)return!0;if(!t||!e)return!1;var r=Object.keys(t),n=Object.keys(e),i=r.length;if(n.length!==i)return!1;for(var s=0;s<i;s++){var o=r[s];if(t[o]!==e[o]||!Object.prototype.hasOwnProperty.call(e,o))return!1}return!0}function OD(t){return t.displayName||t.name||"Component"}var lh=typeof window<"u"&&!window.__REACT_INTL_BYPASS_GLOBAL_CONTEXT__?window.__REACT_INTL_CONTEXT__||(window.__REACT_INTL_CONTEXT__=M.createContext(null)):M.createContext(null),xD=lh.Consumer;lh.Provider;var DD=lh;function kD(t,e){var r=e||{},n=r.intlPropName,i=n===void 0?"intl":n,s=r.forwardRef,o=s===void 0?!1:s,a=r.enforceContext,c=a===void 0?!0:a,l=function(d){return M.createElement(xD,null,function(p){var m;c&&tw(p);var g=(m={},m[i]=p,m);return M.createElement(t,pr({},d,g,{ref:o?d.forwardedRef:null}))})};return l.displayName="injectIntl(".concat(OD(t),")"),l.WrappedComponent=t,ag(o?M.forwardRef(function(d,p){return M.createElement(l,pr({},d,{forwardedRef:p}))}):l,t)}function dh(){var t=M.useContext(DD);return tw(t),t}var Uf;(function(t){t.formatDate="FormattedDate",t.formatTime="FormattedTime",t.formatNumber="FormattedNumber",t.formatList="FormattedList",t.formatDisplayName="FormattedDisplayName"})(Uf||(Uf={}));var Wf;(function(t){t.formatDate="FormattedDateParts",t.formatTime="FormattedTimeParts",t.formatNumber="FormattedNumberParts",t.formatList="FormattedListParts"})(Wf||(Wf={}));function rw(t){var e=function(r){var n=dh(),i=r.value,s=r.children,o=eo(r,["value","children"]),a=typeof i=="string"?new Date(i||0):i,c=t==="formatDate"?n.formatDateToParts(a,o):n.formatTimeToParts(a,o);return s(c)};return e.displayName=Wf[t],e}function Sa(t){var e=function(r){var n=dh(),i=r.value,s=r.children,o=eo(r,["value","children"]),a=n[t](i,o);if(typeof s=="function")return s(a);var c=n.textComponent||M.Fragment;return M.createElement(c,null,a)};return e.displayName=Uf[t],e}function MD(t,e){var r=t.values,n=eo(t,["values"]),i=e.values,s=eo(e,["values"]);return jg(i,r)&&jg(n,s)}function nw(t){var e=dh(),r=e.formatMessage,n=e.textComponent,i=n===void 0?M.Fragment:n,s=t.id,o=t.description,a=t.defaultMessage,c=t.values,l=t.children,d=t.tagName,p=d===void 0?i:d,m=t.ignoreTag,g={id:s,description:o,defaultMessage:a},v=r(g,c,{ignoreTag:m});return typeof l=="function"?l(Array.isArray(v)?v:[v]):p?M.createElement(p,null,M.Children.toArray(v)):M.createElement(M.Fragment,null,v)}nw.displayName="FormattedMessage";var iw=M.memo(nw,MD);iw.displayName="MemoizedFormattedMessage";Sa("formatDate");Sa("formatTime");Sa("formatNumber");Sa("formatList");Sa("formatDisplayName");rw("formatDate");rw("formatTime");const ND=t=>Y.jsx(iw,{...t}),LD=kD(ND,{}),jD=Object.freeze(Object.defineProperty({__proto__:null,default:LD},Symbol.toStringTag,{value:"Module"}));var bu={exports:{}},Bg;function BD(){return Bg||(Bg=1,function(){function t(e){var r;return e instanceof Buffer?r=e:r=Buffer.from(e.toString(),"binary"),r.toString("base64")}bu.exports=t}()),bu.exports}var FD=BD();const yu=Xn(FD);let sw=!0,ow=!0;function Yo(t,e,r){const n=t.match(e);return n&&n.length>=r&&parseFloat(n[r],10)}function vs(t,e,r){if(!t.RTCPeerConnection)return;const n=t.RTCPeerConnection.prototype,i=n.addEventListener;n.addEventListener=function(o,a){if(o!==e)return i.apply(this,arguments);const c=l=>{const d=r(l);d&&(a.handleEvent?a.handleEvent(d):a(d))};return this._eventMap=this._eventMap||{},this._eventMap[e]||(this._eventMap[e]=new Map),this._eventMap[e].set(a,c),i.apply(this,[o,c])};const s=n.removeEventListener;n.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(n,"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 zD(t){return typeof t!="boolean"?new Error("Argument type: "+typeof t+". Please use a boolean."):(sw=t,t?"adapter.js logging disabled":"adapter.js logging enabled")}function HD(t){return typeof t!="boolean"?new Error("Argument type: "+typeof t+". Please use a boolean."):(ow=!t,"adapter.js deprecation warnings "+(t?"disabled":"enabled"))}function aw(){if(typeof window=="object"){if(sw)return;typeof console<"u"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function uh(t,e){ow&&console.warn(t+" is deprecated, please use "+e+" instead.")}function VD(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:r}=t;if(r.userAgentData&&r.userAgentData.brands){const n=r.userAgentData.brands.find(i=>i.brand==="Chromium");if(n)return{browser:"chrome",version:parseInt(n.version,10)}}if(r.mozGetUserMedia)e.browser="firefox",e.version=parseInt(Yo(r.userAgent,/Firefox\/(\d+)\./,1));else if(r.webkitGetUserMedia||t.isSecureContext===!1&&t.webkitRTCPeerConnection)e.browser="chrome",e.version=parseInt(Yo(r.userAgent,/Chrom(e|ium)\/(\d+)\./,2));else if(t.RTCPeerConnection&&r.userAgent.match(/AppleWebKit\/(\d+)\./))e.browser="safari",e.version=parseInt(Yo(r.userAgent,/AppleWebKit\/(\d+)\./,1)),e.supportsUnifiedPlan=t.RTCRtpTransceiver&&"currentDirection"in t.RTCRtpTransceiver.prototype,e._safariVersion=Yo(r.userAgent,/Version\/(\d+(\.?\d+))/,1);else return e.browser="Not a supported browser.",e;return e}function Fg(t){return Object.prototype.toString.call(t)==="[object Object]"}function cw(t){return Fg(t)?Object.keys(t).reduce(function(e,r){const n=Fg(t[r]),i=n?cw(t[r]):t[r],s=n&&!Object.keys(i).length;return i===void 0||s?e:Object.assign(e,{[r]:i})},{}):t}function Yf(t,e,r){!e||r.has(e.id)||(r.set(e.id,e),Object.keys(e).forEach(n=>{n.endsWith("Id")?Yf(t,t.get(e[n]),r):n.endsWith("Ids")&&e[n].forEach(i=>{Yf(t,t.get(i),r)})}))}function zg(t,e,r){const n=r?"outbound-rtp":"inbound-rtp",i=new Map;if(e===null)return i;const s=[];return t.forEach(o=>{o.type==="track"&&o.trackIdentifier===e.id&&s.push(o)}),s.forEach(o=>{t.forEach(a=>{a.type===n&&a.trackId===o.id&&Yf(t,a,i)})}),i}const Hg=aw;function lw(t,e){const r=t&&t.navigator;if(!r.mediaDevices)return;const n=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 d=typeof a[l]=="object"?a[l]:{ideal:a[l]};d.exact!==void 0&&typeof d.exact=="number"&&(d.min=d.max=d.exact);const p=function(m,g){return m?m+g.charAt(0).toUpperCase()+g.slice(1):g==="deviceId"?"sourceId":g};if(d.ideal!==void 0){c.optional=c.optional||[];let m={};typeof d.ideal=="number"?(m[p("min",l)]=d.ideal,c.optional.push(m),m={},m[p("max",l)]=d.ideal,c.optional.push(m)):(m[p("",l)]=d.ideal,c.optional.push(m))}d.exact!==void 0&&typeof d.exact!="number"?(c.mandatory=c.mandatory||{},c.mandatory[p("",l)]=d.exact):["min","max"].forEach(m=>{d[m]!==void 0&&(c.mandatory=c.mandatory||{},c.mandatory[p(m,l)]=d[m])})}),a.advanced&&(c.optional=(c.optional||[]).concat(a.advanced)),c},i=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(d,p,m){p in d&&!(m in d)&&(d[m]=d[p],delete d[p])};a=JSON.parse(JSON.stringify(a)),l(a.audio,"autoGainControl","googAutoGainControl"),l(a.audio,"noiseSuppression","googNoiseSuppression"),a.audio=n(a.audio)}if(a&&typeof a.video=="object"){let l=a.video.facingMode;l=l&&(typeof l=="object"?l:{ideal:l});const d=e.version<66;if(l&&(l.exact==="user"||l.exact==="environment"||l.ideal==="user"||l.ideal==="environment")&&!(r.mediaDevices.getSupportedConstraints&&r.mediaDevices.getSupportedConstraints().facingMode&&!d)){delete a.video.facingMode;let p;if(l.exact==="environment"||l.ideal==="environment"?p=["back","rear"]:(l.exact==="user"||l.ideal==="user")&&(p=["front"]),p)return r.mediaDevices.enumerateDevices().then(m=>{m=m.filter(v=>v.kind==="videoinput");let g=m.find(v=>p.some(S=>v.label.toLowerCase().includes(S)));return!g&&m.length&&p.includes("back")&&(g=m[m.length-1]),g&&(a.video.deviceId=l.exact?{exact:g.deviceId}:{ideal:g.deviceId}),a.video=n(a.video),Hg("chrome: "+JSON.stringify(a)),c(a)})}a.video=n(a.video)}return Hg("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){i(a,d=>{r.webkitGetUserMedia(d,c,p=>{l&&l(s(p))})})};if(r.getUserMedia=o.bind(r),r.mediaDevices.getUserMedia){const a=r.mediaDevices.getUserMedia.bind(r.mediaDevices);r.mediaDevices.getUserMedia=function(c){return i(c,l=>a(l).then(d=>{if(l.audio&&!d.getAudioTracks().length||l.video&&!d.getVideoTracks().length)throw d.getTracks().forEach(p=>{p.stop()}),new DOMException("","NotFoundError");return d},d=>Promise.reject(s(d))))}}}function dw(t){t.MediaStream=t.MediaStream||t.webkitMediaStream}function uw(t){if(typeof t=="object"&&t.RTCPeerConnection&&!("ontrack"in t.RTCPeerConnection.prototype)){Object.defineProperty(t.RTCPeerConnection.prototype,"ontrack",{get(){return this._ontrack},set(r){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=r)},enumerable:!0,configurable:!0});const e=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){return this._ontrackpoly||(this._ontrackpoly=n=>{n.stream.addEventListener("addtrack",i=>{let s;t.RTCPeerConnection.prototype.getReceivers?s=this.getReceivers().find(a=>a.track&&a.track.id===i.track.id):s={track:i.track};const o=new Event("track");o.track=i.track,o.receiver=s,o.transceiver={receiver:s},o.streams=[n.stream],this.dispatchEvent(o)}),n.stream.getTracks().forEach(i=>{let s;t.RTCPeerConnection.prototype.getReceivers?s=this.getReceivers().find(a=>a.track&&a.track.id===i.id):s={track:i};const o=new Event("track");o.track=i,o.receiver=s,o.transceiver={receiver:s},o.streams=[n.stream],this.dispatchEvent(o)})},this.addEventListener("addstream",this._ontrackpoly)),e.apply(this,arguments)}}else vs(t,"track",e=>(e.transceiver||Object.defineProperty(e,"transceiver",{value:{receiver:e.receiver}}),e))}function fw(t){if(typeof t=="object"&&t.RTCPeerConnection&&!("getSenders"in t.RTCPeerConnection.prototype)&&"createDTMFSender"in t.RTCPeerConnection.prototype){const e=function(i,s){return{track:s,get dtmf(){return this._dtmf===void 0&&(s.kind==="audio"?this._dtmf=i.createDTMFSender(s):this._dtmf=null),this._dtmf},_pc:i}};if(!t.RTCPeerConnection.prototype.getSenders){t.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};const i=t.RTCPeerConnection.prototype.addTrack;t.RTCPeerConnection.prototype.addTrack=function(a,c){let l=i.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 r=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(s){this._senders=this._senders||[],r.apply(this,[s]),s.getTracks().forEach(o=>{this._senders.push(e(this,o))})};const n=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(s){this._senders=this._senders||[],n.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 n=e.apply(this,[]);return n.forEach(i=>i._pc=this),n},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 pw(t){if(!(typeof t=="object"&&t.RTCPeerConnection&&t.RTCRtpSender&&t.RTCRtpReceiver))return;if(!("getStats"in t.RTCRtpSender.prototype)){const r=t.RTCPeerConnection.prototype.getSenders;r&&(t.RTCPeerConnection.prototype.getSenders=function(){const s=r.apply(this,[]);return s.forEach(o=>o._pc=this),s});const n=t.RTCPeerConnection.prototype.addTrack;n&&(t.RTCPeerConnection.prototype.addTrack=function(){const s=n.apply(this,arguments);return s._pc=this,s}),t.RTCRtpSender.prototype.getStats=function(){const s=this;return this._pc.getStats().then(o=>zg(o,s.track,!0))}}if(!("getStats"in t.RTCRtpReceiver.prototype)){const r=t.RTCPeerConnection.prototype.getReceivers;r&&(t.RTCPeerConnection.prototype.getReceivers=function(){const i=r.apply(this,[]);return i.forEach(s=>s._pc=this),i}),vs(t,"track",n=>(n.receiver._pc=n.srcElement,n)),t.RTCRtpReceiver.prototype.getStats=function(){const i=this;return this._pc.getStats().then(s=>zg(s,i.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 n=arguments[0];let i,s,o;return this.getSenders().forEach(a=>{a.track===n&&(i?o=!0:i=a)}),this.getReceivers().forEach(a=>(a.track===n&&(s?o=!0:s=a),a.track===n)),o||i&&s?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):i?i.getStats():s?s.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return e.apply(this,arguments)}}function hw(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 r=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(o){this._shimmedLocalStreams=this._shimmedLocalStreams||{},o.getTracks().forEach(l=>{if(this.getSenders().find(p=>p.track===l))throw new DOMException("Track already exists.","InvalidAccessError")});const a=this.getSenders();r.apply(this,arguments);const c=this.getSenders().filter(l=>a.indexOf(l)===-1);this._shimmedLocalStreams[o.id]=[o].concat(c)};const n=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(o){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[o.id],n.apply(this,arguments)};const i=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]}),i.apply(this,arguments)}}function mw(t,e){if(!t.RTCPeerConnection)return;if(t.RTCPeerConnection.prototype.addTrack&&e.version>=65)return hw(t);const r=t.RTCPeerConnection.prototype.getLocalStreams;t.RTCPeerConnection.prototype.getLocalStreams=function(){const d=r.apply(this);return this._reverseStreams=this._reverseStreams||{},d.map(p=>this._reverseStreams[p.id])};const n=t.RTCPeerConnection.prototype.addStream;t.RTCPeerConnection.prototype.addStream=function(d){if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},d.getTracks().forEach(p=>{if(this.getSenders().find(g=>g.track===p))throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[d.id]){const p=new t.MediaStream(d.getTracks());this._streams[d.id]=p,this._reverseStreams[p.id]=d,d=p}n.apply(this,[d])};const i=t.RTCPeerConnection.prototype.removeStream;t.RTCPeerConnection.prototype.removeStream=function(d){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},i.apply(this,[this._streams[d.id]||d]),delete this._reverseStreams[this._streams[d.id]?this._streams[d.id].id:d.id],delete this._streams[d.id]},t.RTCPeerConnection.prototype.addTrack=function(d,p){if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");const m=[].slice.call(arguments,1);if(m.length!==1||!m[0].getTracks().find(S=>S===d))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(S=>S.track===d))throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};const v=this._streams[p.id];if(v)v.addTrack(d),Promise.resolve().then(()=>{this.dispatchEvent(new Event("negotiationneeded"))});else{const S=new t.MediaStream([d]);this._streams[p.id]=S,this._reverseStreams[S.id]=p,this.addStream(S)}return this.getSenders().find(S=>S.track===d)};function s(l,d){let p=d.sdp;return Object.keys(l._reverseStreams||[]).forEach(m=>{const g=l._reverseStreams[m],v=l._streams[g.id];p=p.replace(new RegExp(v.id,"g"),g.id)}),new RTCSessionDescription({type:d.type,sdp:p})}function o(l,d){let p=d.sdp;return Object.keys(l._reverseStreams||[]).forEach(m=>{const g=l._reverseStreams[m],v=l._streams[g.id];p=p.replace(new RegExp(g.id,"g"),v.id)}),new RTCSessionDescription({type:d.type,sdp:p})}["createOffer","createAnswer"].forEach(function(l){const d=t.RTCPeerConnection.prototype[l],p={[l](){const m=arguments;return arguments.length&&typeof arguments[0]=="function"?d.apply(this,[v=>{const S=s(this,v);m[0].apply(null,[S])},v=>{m[1]&&m[1].apply(null,v)},arguments[2]]):d.apply(this,arguments).then(v=>s(this,v))}};t.RTCPeerConnection.prototype[l]=p[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(d){if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!d._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");if(!(d._pc===this))throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{};let m;Object.keys(this._streams).forEach(g=>{this._streams[g].getTracks().find(S=>d.track===S)&&(m=this._streams[g])}),m&&(m.getTracks().length===1?this.removeStream(this._reverseStreams[m.id]):m.removeTrack(d.track),this.dispatchEvent(new Event("negotiationneeded")))}}function Zf(t,e){!t.RTCPeerConnection&&t.webkitRTCPeerConnection&&(t.RTCPeerConnection=t.webkitRTCPeerConnection),t.RTCPeerConnection&&e.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(r){const n=t.RTCPeerConnection.prototype[r],i={[r](){return arguments[0]=new(r==="addIceCandidate"?t.RTCIceCandidate:t.RTCSessionDescription)(arguments[0]),n.apply(this,arguments)}};t.RTCPeerConnection.prototype[r]=i[r]})}function gw(t,e){vs(t,"negotiationneeded",r=>{const n=r.target;if(!((e.version<72||n.getConfiguration&&n.getConfiguration().sdpSemantics==="plan-b")&&n.signalingState!=="stable"))return r})}const Vg=Object.freeze(Object.defineProperty({__proto__:null,fixNegotiationNeeded:gw,shimAddTrackRemoveTrack:mw,shimAddTrackRemoveTrackWithNative:hw,shimGetSendersWithDtmf:fw,shimGetUserMedia:lw,shimMediaStream:dw,shimOnTrack:uw,shimPeerConnection:Zf,shimSenderReceiverGetStats:pw},Symbol.toStringTag,{value:"Module"}));function vw(t,e){const r=t&&t.navigator,n=t&&t.MediaStreamTrack;if(r.getUserMedia=function(i,s,o){uh("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),r.mediaDevices.getUserMedia(i).then(s,o)},!(e.version>55&&"autoGainControl"in r.mediaDevices.getSupportedConstraints())){const i=function(o,a,c){a in o&&!(c in o)&&(o[c]=o[a],delete o[a])},s=r.mediaDevices.getUserMedia.bind(r.mediaDevices);if(r.mediaDevices.getUserMedia=function(o){return typeof o=="object"&&typeof o.audio=="object"&&(o=JSON.parse(JSON.stringify(o)),i(o.audio,"autoGainControl","mozAutoGainControl"),i(o.audio,"noiseSuppression","mozNoiseSuppression")),s(o)},n&&n.prototype.getSettings){const o=n.prototype.getSettings;n.prototype.getSettings=function(){const a=o.apply(this,arguments);return i(a,"mozAutoGainControl","autoGainControl"),i(a,"mozNoiseSuppression","noiseSuppression"),a}}if(n&&n.prototype.applyConstraints){const o=n.prototype.applyConstraints;n.prototype.applyConstraints=function(a){return this.kind==="audio"&&typeof a=="object"&&(a=JSON.parse(JSON.stringify(a)),i(a,"autoGainControl","mozAutoGainControl"),i(a,"noiseSuppression","mozNoiseSuppression")),o.apply(this,[a])}}}}function GD(t,e){t.navigator.mediaDevices&&"getDisplayMedia"in t.navigator.mediaDevices||t.navigator.mediaDevices&&(t.navigator.mediaDevices.getDisplayMedia=function(n){if(!(n&&n.video)){const i=new DOMException("getDisplayMedia without video constraints is undefined");return i.name="NotFoundError",i.code=8,Promise.reject(i)}return n.video===!0?n.video={mediaSource:e}:n.video.mediaSource=e,t.navigator.mediaDevices.getUserMedia(n)})}function bw(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 qf(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(i){const s=t.RTCPeerConnection.prototype[i],o={[i](){return arguments[0]=new(i==="addIceCandidate"?t.RTCIceCandidate:t.RTCSessionDescription)(arguments[0]),s.apply(this,arguments)}};t.RTCPeerConnection.prototype[i]=o[i]});const r={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},n=t.RTCPeerConnection.prototype.getStats;t.RTCPeerConnection.prototype.getStats=function(){const[s,o,a]=arguments;return n.apply(this,[s||null]).then(c=>{if(e.version<53&&!o)try{c.forEach(l=>{l.type=r[l.type]||l.type})}catch(l){if(l.name!=="TypeError")throw l;c.forEach((d,p)=>{c.set(p,Object.assign({},d,{type:r[d.type]||d.type}))})}return c}).then(o,a)}}function yw(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 i=e.apply(this,[]);return i.forEach(s=>s._pc=this),i});const r=t.RTCPeerConnection.prototype.addTrack;r&&(t.RTCPeerConnection.prototype.addTrack=function(){const i=r.apply(this,arguments);return i._pc=this,i}),t.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}function Sw(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 n=e.apply(this,[]);return n.forEach(i=>i._pc=this),n}),vs(t,"track",r=>(r.receiver._pc=r.srcElement,r)),t.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}function ww(t){!t.RTCPeerConnection||"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(r){uh("removeStream","removeTrack"),this.getSenders().forEach(n=>{n.track&&r.getTracks().includes(n.track)&&this.removeTrack(n)})})}function Cw(t){t.DataChannel&&!t.RTCDataChannel&&(t.RTCDataChannel=t.DataChannel)}function Aw(t){if(!(typeof t=="object"&&t.RTCPeerConnection))return;const e=t.RTCPeerConnection.prototype.addTransceiver;e&&(t.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];let n=arguments[1]&&arguments[1].sendEncodings;n===void 0&&(n=[]),n=[...n];const i=n.length>0;i&&n.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(i){const{sender:o}=s,a=o.getParameters();(!("encodings"in a)||a.encodings.length===1&&Object.keys(a.encodings[0]).length===0)&&(a.encodings=n,o.sendEncodings=n,this.setParametersPromises.push(o.setParameters(a).then(()=>{delete o.sendEncodings}).catch(()=>{delete o.sendEncodings})))}return s})}function Rw(t){if(!(typeof t=="object"&&t.RTCRtpSender))return;const e=t.RTCRtpSender.prototype.getParameters;e&&(t.RTCRtpSender.prototype.getParameters=function(){const n=e.apply(this,arguments);return"encodings"in n||(n.encodings=[].concat(this.sendEncodings||[{}])),n})}function _w(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 Ew(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)}}const Gg=Object.freeze(Object.defineProperty({__proto__:null,shimAddTransceiver:Aw,shimCreateAnswer:Ew,shimCreateOffer:_w,shimGetDisplayMedia:GD,shimGetParameters:Rw,shimGetUserMedia:vw,shimOnTrack:bw,shimPeerConnection:qf,shimRTCDataChannel:Cw,shimReceiverGetStats:Sw,shimRemoveStream:ww,shimSenderGetStats:yw},Symbol.toStringTag,{value:"Module"}));function Pw(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(n){this._localStreams||(this._localStreams=[]),this._localStreams.includes(n)||this._localStreams.push(n),n.getAudioTracks().forEach(i=>e.call(this,i,n)),n.getVideoTracks().forEach(i=>e.call(this,i,n))},t.RTCPeerConnection.prototype.addTrack=function(n,...i){return i&&i.forEach(s=>{this._localStreams?this._localStreams.includes(s)||this._localStreams.push(s):this._localStreams=[s]}),e.apply(this,arguments)}}"removeStream"in t.RTCPeerConnection.prototype||(t.RTCPeerConnection.prototype.removeStream=function(r){this._localStreams||(this._localStreams=[]);const n=this._localStreams.indexOf(r);if(n===-1)return;this._localStreams.splice(n,1);const i=r.getTracks();this.getSenders().forEach(s=>{i.includes(s.track)&&this.removeTrack(s)})})}}function Tw(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(r){this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=r),this.addEventListener("track",this._onaddstreampoly=n=>{n.streams.forEach(i=>{if(this._remoteStreams||(this._remoteStreams=[]),this._remoteStreams.includes(i))return;this._remoteStreams.push(i);const s=new Event("addstream");s.stream=i,this.dispatchEvent(s)})})}});const e=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(){const n=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(i){i.streams.forEach(s=>{if(n._remoteStreams||(n._remoteStreams=[]),n._remoteStreams.indexOf(s)>=0)return;n._remoteStreams.push(s);const o=new Event("addstream");o.stream=s,n.dispatchEvent(o)})}),e.apply(n,arguments)}}}function Iw(t){if(typeof t!="object"||!t.RTCPeerConnection)return;const e=t.RTCPeerConnection.prototype,r=e.createOffer,n=e.createAnswer,i=e.setLocalDescription,s=e.setRemoteDescription,o=e.addIceCandidate;e.createOffer=function(l,d){const p=arguments.length>=2?arguments[2]:arguments[0],m=r.apply(this,[p]);return d?(m.then(l,d),Promise.resolve()):m},e.createAnswer=function(l,d){const p=arguments.length>=2?arguments[2]:arguments[0],m=n.apply(this,[p]);return d?(m.then(l,d),Promise.resolve()):m};let a=function(c,l,d){const p=i.apply(this,[c]);return d?(p.then(l,d),Promise.resolve()):p};e.setLocalDescription=a,a=function(c,l,d){const p=s.apply(this,[c]);return d?(p.then(l,d),Promise.resolve()):p},e.setRemoteDescription=a,a=function(c,l,d){const p=o.apply(this,[c]);return d?(p.then(l,d),Promise.resolve()):p},e.addIceCandidate=a}function Ow(t){const e=t&&t.navigator;if(e.mediaDevices&&e.mediaDevices.getUserMedia){const r=e.mediaDevices,n=r.getUserMedia.bind(r);e.mediaDevices.getUserMedia=i=>n(xw(i))}!e.getUserMedia&&e.mediaDevices&&e.mediaDevices.getUserMedia&&(e.getUserMedia=(function(n,i,s){e.mediaDevices.getUserMedia(n).then(i,s)}).bind(e))}function xw(t){return t&&t.video!==void 0?Object.assign({},t,{video:cw(t.video)}):t}function Dw(t){if(!t.RTCPeerConnection)return;const e=t.RTCPeerConnection;t.RTCPeerConnection=function(n,i){if(n&&n.iceServers){const s=[];for(let o=0;o<n.iceServers.length;o++){let a=n.iceServers[o];a.urls===void 0&&a.url?(uh("RTCIceServer.url","RTCIceServer.urls"),a=JSON.parse(JSON.stringify(a)),a.urls=a.url,delete a.url,s.push(a)):s.push(n.iceServers[o])}n.iceServers=s}return new e(n,i)},t.RTCPeerConnection.prototype=e.prototype,"generateCertificate"in e&&Object.defineProperty(t.RTCPeerConnection,"generateCertificate",{get(){return e.generateCertificate}})}function kw(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 Mw(t){const e=t.RTCPeerConnection.prototype.createOffer;t.RTCPeerConnection.prototype.createOffer=function(n){if(n){typeof n.offerToReceiveAudio<"u"&&(n.offerToReceiveAudio=!!n.offerToReceiveAudio);const i=this.getTransceivers().find(o=>o.receiver.track.kind==="audio");n.offerToReceiveAudio===!1&&i?i.direction==="sendrecv"?i.setDirection?i.setDirection("sendonly"):i.direction="sendonly":i.direction==="recvonly"&&(i.setDirection?i.setDirection("inactive"):i.direction="inactive"):n.offerToReceiveAudio===!0&&!i&&this.addTransceiver("audio",{direction:"recvonly"}),typeof n.offerToReceiveVideo<"u"&&(n.offerToReceiveVideo=!!n.offerToReceiveVideo);const s=this.getTransceivers().find(o=>o.receiver.track.kind==="video");n.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"):n.offerToReceiveVideo===!0&&!s&&this.addTransceiver("video",{direction:"recvonly"})}return e.apply(this,arguments)}}function Nw(t){typeof t!="object"||t.AudioContext||(t.AudioContext=t.webkitAudioContext)}const Xg=Object.freeze(Object.defineProperty({__proto__:null,shimAudioContext:Nw,shimCallbacksAPI:Iw,shimConstraints:xw,shimCreateOfferLegacy:Mw,shimGetUserMedia:Ow,shimLocalStreamsAPI:Pw,shimRTCIceServerUrls:Dw,shimRemoteStreamsAPI:Tw,shimTrackEventTransceiver:kw},Symbol.toStringTag,{value:"Module"}));var Su={exports:{}},Ug;function XD(){return Ug||(Ug=1,function(t){const e={};e.generateIdentifier=function(){return Math.random().toString(36).substring(2,12)},e.localCName=e.generateIdentifier(),e.splitLines=function(r){return r.trim().split(`
135
+ `).map(n=>n.trim())},e.splitSections=function(r){return r.split(`
136
+ m=`).map((i,s)=>(s>0?"m="+i:i).trim()+`\r
137
+ `)},e.getDescription=function(r){const n=e.splitSections(r);return n&&n[0]},e.getMediaSections=function(r){const n=e.splitSections(r);return n.shift(),n},e.matchPrefix=function(r,n){return e.splitLines(r).filter(i=>i.indexOf(n)===0)},e.parseCandidate=function(r){let n;r.indexOf("a=candidate:")===0?n=r.substring(12).split(" "):n=r.substring(10).split(" ");const i={foundation:n[0],component:{1:"rtp",2:"rtcp"}[n[1]]||n[1],protocol:n[2].toLowerCase(),priority:parseInt(n[3],10),ip:n[4],address:n[4],port:parseInt(n[5],10),type:n[7]};for(let s=8;s<n.length;s+=2)switch(n[s]){case"raddr":i.relatedAddress=n[s+1];break;case"rport":i.relatedPort=parseInt(n[s+1],10);break;case"tcptype":i.tcpType=n[s+1];break;case"ufrag":i.ufrag=n[s+1],i.usernameFragment=n[s+1];break;default:i[n[s]]===void 0&&(i[n[s]]=n[s+1]);break}return i},e.writeCandidate=function(r){const n=[];n.push(r.foundation);const i=r.component;i==="rtp"?n.push(1):i==="rtcp"?n.push(2):n.push(i),n.push(r.protocol.toUpperCase()),n.push(r.priority),n.push(r.address||r.ip),n.push(r.port);const s=r.type;return n.push("typ"),n.push(s),s!=="host"&&r.relatedAddress&&r.relatedPort&&(n.push("raddr"),n.push(r.relatedAddress),n.push("rport"),n.push(r.relatedPort)),r.tcpType&&r.protocol.toLowerCase()==="tcp"&&(n.push("tcptype"),n.push(r.tcpType)),(r.usernameFragment||r.ufrag)&&(n.push("ufrag"),n.push(r.usernameFragment||r.ufrag)),"candidate:"+n.join(" ")},e.parseIceOptions=function(r){return r.substring(14).split(" ")},e.parseRtpMap=function(r){let n=r.substring(9).split(" ");const i={payloadType:parseInt(n.shift(),10)};return n=n[0].split("/"),i.name=n[0],i.clockRate=parseInt(n[1],10),i.channels=n.length===3?parseInt(n[2],10):1,i.numChannels=i.channels,i},e.writeRtpMap=function(r){let n=r.payloadType;r.preferredPayloadType!==void 0&&(n=r.preferredPayloadType);const i=r.channels||r.numChannels||1;return"a=rtpmap:"+n+" "+r.name+"/"+r.clockRate+(i!==1?"/"+i:"")+`\r
138
+ `},e.parseExtmap=function(r){const n=r.substring(9).split(" ");return{id:parseInt(n[0],10),direction:n[0].indexOf("/")>0?n[0].split("/")[1]:"sendrecv",uri:n[1],attributes:n.slice(2).join(" ")}},e.writeExtmap=function(r){return"a=extmap:"+(r.id||r.preferredId)+(r.direction&&r.direction!=="sendrecv"?"/"+r.direction:"")+" "+r.uri+(r.attributes?" "+r.attributes:"")+`\r
139
+ `},e.parseFmtp=function(r){const n={};let i;const s=r.substring(r.indexOf(" ")+1).split(";");for(let o=0;o<s.length;o++)i=s[o].trim().split("="),n[i[0].trim()]=i[1];return n},e.writeFmtp=function(r){let n="",i=r.payloadType;if(r.preferredPayloadType!==void 0&&(i=r.preferredPayloadType),r.parameters&&Object.keys(r.parameters).length){const s=[];Object.keys(r.parameters).forEach(o=>{r.parameters[o]!==void 0?s.push(o+"="+r.parameters[o]):s.push(o)}),n+="a=fmtp:"+i+" "+s.join(";")+`\r
140
+ `}return n},e.parseRtcpFb=function(r){const n=r.substring(r.indexOf(" ")+1).split(" ");return{type:n.shift(),parameter:n.join(" ")}},e.writeRtcpFb=function(r){let n="",i=r.payloadType;return r.preferredPayloadType!==void 0&&(i=r.preferredPayloadType),r.rtcpFeedback&&r.rtcpFeedback.length&&r.rtcpFeedback.forEach(s=>{n+="a=rtcp-fb:"+i+" "+s.type+(s.parameter&&s.parameter.length?" "+s.parameter:"")+`\r
141
+ `}),n},e.parseSsrcMedia=function(r){const n=r.indexOf(" "),i={ssrc:parseInt(r.substring(7,n),10)},s=r.indexOf(":",n);return s>-1?(i.attribute=r.substring(n+1,s),i.value=r.substring(s+1)):i.attribute=r.substring(n+1),i},e.parseSsrcGroup=function(r){const n=r.substring(13).split(" ");return{semantics:n.shift(),ssrcs:n.map(i=>parseInt(i,10))}},e.getMid=function(r){const n=e.matchPrefix(r,"a=mid:")[0];if(n)return n.substring(6)},e.parseFingerprint=function(r){const n=r.substring(14).split(" ");return{algorithm:n[0].toLowerCase(),value:n[1].toUpperCase()}},e.getDtlsParameters=function(r,n){return{role:"auto",fingerprints:e.matchPrefix(r+n,"a=fingerprint:").map(e.parseFingerprint)}},e.writeDtlsParameters=function(r,n){let i="a=setup:"+n+`\r
142
+ `;return r.fingerprints.forEach(s=>{i+="a=fingerprint:"+s.algorithm+" "+s.value+`\r
143
+ `}),i},e.parseCryptoLine=function(r){const n=r.substring(9).split(" ");return{tag:parseInt(n[0],10),cryptoSuite:n[1],keyParams:n[2],sessionParams:n.slice(3)}},e.writeCryptoLine=function(r){return"a=crypto:"+r.tag+" "+r.cryptoSuite+" "+(typeof r.keyParams=="object"?e.writeCryptoKeyParams(r.keyParams):r.keyParams)+(r.sessionParams?" "+r.sessionParams.join(" "):"")+`\r
144
+ `},e.parseCryptoKeyParams=function(r){if(r.indexOf("inline:")!==0)return null;const n=r.substring(7).split("|");return{keyMethod:"inline",keySalt:n[0],lifeTime:n[1],mkiValue:n[2]?n[2].split(":")[0]:void 0,mkiLength:n[2]?n[2].split(":")[1]:void 0}},e.writeCryptoKeyParams=function(r){return r.keyMethod+":"+r.keySalt+(r.lifeTime?"|"+r.lifeTime:"")+(r.mkiValue&&r.mkiLength?"|"+r.mkiValue+":"+r.mkiLength:"")},e.getCryptoParameters=function(r,n){return e.matchPrefix(r+n,"a=crypto:").map(e.parseCryptoLine)},e.getIceParameters=function(r,n){const i=e.matchPrefix(r+n,"a=ice-ufrag:")[0],s=e.matchPrefix(r+n,"a=ice-pwd:")[0];return i&&s?{usernameFragment:i.substring(12),password:s.substring(10)}:null},e.writeIceParameters=function(r){let n="a=ice-ufrag:"+r.usernameFragment+`\r
145
+ a=ice-pwd:`+r.password+`\r
146
+ `;return r.iceLite&&(n+=`a=ice-lite\r
147
+ `),n},e.parseRtpParameters=function(r){const n={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},s=e.splitLines(r)[0].split(" ");n.profile=s[2];for(let a=3;a<s.length;a++){const c=s[a],l=e.matchPrefix(r,"a=rtpmap:"+c+" ")[0];if(l){const d=e.parseRtpMap(l),p=e.matchPrefix(r,"a=fmtp:"+c+" ");switch(d.parameters=p.length?e.parseFmtp(p[0]):{},d.rtcpFeedback=e.matchPrefix(r,"a=rtcp-fb:"+c+" ").map(e.parseRtcpFb),n.codecs.push(d),d.name.toUpperCase()){case"RED":case"ULPFEC":n.fecMechanisms.push(d.name.toUpperCase());break}}}e.matchPrefix(r,"a=extmap:").forEach(a=>{n.headerExtensions.push(e.parseExtmap(a))});const o=e.matchPrefix(r,"a=rtcp-fb:* ").map(e.parseRtcpFb);return n.codecs.forEach(a=>{o.forEach(c=>{a.rtcpFeedback.find(d=>d.type===c.type&&d.parameter===c.parameter)||a.rtcpFeedback.push(c)})}),n},e.writeRtpDescription=function(r,n){let i="";i+="m="+r+" ",i+=n.codecs.length>0?"9":"0",i+=" "+(n.profile||"UDP/TLS/RTP/SAVPF")+" ",i+=n.codecs.map(o=>o.preferredPayloadType!==void 0?o.preferredPayloadType:o.payloadType).join(" ")+`\r
148
+ `,i+=`c=IN IP4 0.0.0.0\r
149
+ `,i+=`a=rtcp:9 IN IP4 0.0.0.0\r
150
+ `,n.codecs.forEach(o=>{i+=e.writeRtpMap(o),i+=e.writeFmtp(o),i+=e.writeRtcpFb(o)});let s=0;return n.codecs.forEach(o=>{o.maxptime>s&&(s=o.maxptime)}),s>0&&(i+="a=maxptime:"+s+`\r
151
+ `),n.headerExtensions&&n.headerExtensions.forEach(o=>{i+=e.writeExtmap(o)}),i},e.parseRtpEncodingParameters=function(r){const n=[],i=e.parseRtpParameters(r),s=i.fecMechanisms.indexOf("RED")!==-1,o=i.fecMechanisms.indexOf("ULPFEC")!==-1,a=e.matchPrefix(r,"a=ssrc:").map(m=>e.parseSsrcMedia(m)).filter(m=>m.attribute==="cname"),c=a.length>0&&a[0].ssrc;let l;const d=e.matchPrefix(r,"a=ssrc-group:FID").map(m=>m.substring(17).split(" ").map(v=>parseInt(v,10)));d.length>0&&d[0].length>1&&d[0][0]===c&&(l=d[0][1]),i.codecs.forEach(m=>{if(m.name.toUpperCase()==="RTX"&&m.parameters.apt){let g={ssrc:c,codecPayloadType:parseInt(m.parameters.apt,10)};c&&l&&(g.rtx={ssrc:l}),n.push(g),s&&(g=JSON.parse(JSON.stringify(g)),g.fec={ssrc:c,mechanism:o?"red+ulpfec":"red"},n.push(g))}}),n.length===0&&c&&n.push({ssrc:c});let p=e.matchPrefix(r,"b=");return p.length&&(p[0].indexOf("b=TIAS:")===0?p=parseInt(p[0].substring(7),10):p[0].indexOf("b=AS:")===0?p=parseInt(p[0].substring(5),10)*1e3*.95-2e3*8:p=void 0,n.forEach(m=>{m.maxBitrate=p})),n},e.parseRtcpParameters=function(r){const n={},i=e.matchPrefix(r,"a=ssrc:").map(a=>e.parseSsrcMedia(a)).filter(a=>a.attribute==="cname")[0];i&&(n.cname=i.value,n.ssrc=i.ssrc);const s=e.matchPrefix(r,"a=rtcp-rsize");n.reducedSize=s.length>0,n.compound=s.length===0;const o=e.matchPrefix(r,"a=rtcp-mux");return n.mux=o.length>0,n},e.writeRtcpParameters=function(r){let n="";return r.reducedSize&&(n+=`a=rtcp-rsize\r
152
+ `),r.mux&&(n+=`a=rtcp-mux\r
153
+ `),r.ssrc!==void 0&&r.cname&&(n+="a=ssrc:"+r.ssrc+" cname:"+r.cname+`\r
154
+ `),n},e.parseMsid=function(r){let n;const i=e.matchPrefix(r,"a=msid:");if(i.length===1)return n=i[0].substring(7).split(" "),{stream:n[0],track:n[1]};const s=e.matchPrefix(r,"a=ssrc:").map(o=>e.parseSsrcMedia(o)).filter(o=>o.attribute==="msid");if(s.length>0)return n=s[0].value.split(" "),{stream:n[0],track:n[1]}},e.parseSctpDescription=function(r){const n=e.parseMLine(r),i=e.matchPrefix(r,"a=max-message-size:");let s;i.length>0&&(s=parseInt(i[0].substring(19),10)),isNaN(s)&&(s=65536);const o=e.matchPrefix(r,"a=sctp-port:");if(o.length>0)return{port:parseInt(o[0].substring(12),10),protocol:n.fmt,maxMessageSize:s};const a=e.matchPrefix(r,"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(r,n){let i=[];return r.protocol!=="DTLS/SCTP"?i=["m="+r.kind+" 9 "+r.protocol+" "+n.protocol+`\r
155
+ `,`c=IN IP4 0.0.0.0\r
156
+ `,"a=sctp-port:"+n.port+`\r
157
+ `]:i=["m="+r.kind+" 9 "+r.protocol+" "+n.port+`\r
158
+ `,`c=IN IP4 0.0.0.0\r
159
+ `,"a=sctpmap:"+n.port+" "+n.protocol+` 65535\r
160
+ `],n.maxMessageSize!==void 0&&i.push("a=max-message-size:"+n.maxMessageSize+`\r
161
+ `),i.join("")},e.generateSessionId=function(){return Math.random().toString().substr(2,22)},e.writeSessionBoilerplate=function(r,n,i){let s;const o=n!==void 0?n:2;return r?s=r:s=e.generateSessionId(),`v=0\r
162
+ o=`+(i||"thisisadapterortc")+" "+s+" "+o+` IN IP4 127.0.0.1\r
163
+ s=-\r
164
+ t=0 0\r
165
+ `},e.getDirection=function(r,n){const i=e.splitLines(r);for(let s=0;s<i.length;s++)switch(i[s]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return i[s].substring(2)}return n?e.getDirection(n):"sendrecv"},e.getKind=function(r){return e.splitLines(r)[0].split(" ")[0].substring(2)},e.isRejected=function(r){return r.split(" ",2)[1]==="0"},e.parseMLine=function(r){const i=e.splitLines(r)[0].substring(2).split(" ");return{kind:i[0],port:parseInt(i[1],10),protocol:i[2],fmt:i.slice(3).join(" ")}},e.parseOLine=function(r){const i=e.matchPrefix(r,"o=")[0].substring(2).split(" ");return{username:i[0],sessionId:i[1],sessionVersion:parseInt(i[2],10),netType:i[3],addressType:i[4],address:i[5]}},e.isValidSDP=function(r){if(typeof r!="string"||r.length===0)return!1;const n=e.splitLines(r);for(let i=0;i<n.length;i++)if(n[i].length<2||n[i].charAt(1)!=="=")return!1;return!0},t.exports=e}(Su)),Su.exports}var Lw=XD();const hr=Xn(Lw),UD=tE({__proto__:null,default:hr},[Lw]);function Vc(t){if(!t.RTCIceCandidate||t.RTCIceCandidate&&"foundation"in t.RTCIceCandidate.prototype)return;const e=t.RTCIceCandidate;t.RTCIceCandidate=function(n){if(typeof n=="object"&&n.candidate&&n.candidate.indexOf("a=")===0&&(n=JSON.parse(JSON.stringify(n)),n.candidate=n.candidate.substring(2)),n.candidate&&n.candidate.length){const i=new e(n),s=hr.parseCandidate(n.candidate);for(const o in s)o in i||Object.defineProperty(i,o,{value:s[o]});return i.toJSON=function(){return{candidate:i.candidate,sdpMid:i.sdpMid,sdpMLineIndex:i.sdpMLineIndex,usernameFragment:i.usernameFragment}},i}return new e(n)},t.RTCIceCandidate.prototype=e.prototype,vs(t,"icecandidate",r=>(r.candidate&&Object.defineProperty(r,"candidate",{value:new t.RTCIceCandidate(r.candidate),writable:"false"}),r))}function Jf(t){!t.RTCIceCandidate||t.RTCIceCandidate&&"relayProtocol"in t.RTCIceCandidate.prototype||vs(t,"icecandidate",e=>{if(e.candidate){const r=hr.parseCandidate(e.candidate.candidate);r.type==="relay"&&(e.candidate.relayProtocol={0:"tls",1:"tcp",2:"udp"}[r.priority>>24])}return e})}function Gc(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 r=function(a){if(!a||!a.sdp)return!1;const c=hr.splitSections(a.sdp);return c.shift(),c.some(l=>{const d=hr.parseMLine(l);return d&&d.kind==="application"&&d.protocol.indexOf("SCTP")!==-1})},n=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},i=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 d=hr.matchPrefix(a.sdp,"a=max-message-size:");return d.length>0?l=parseInt(d[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(r(arguments[0])){const c=n(arguments[0]),l=i(c),d=s(arguments[0],c);let p;l===0&&d===0?p=Number.POSITIVE_INFINITY:l===0||d===0?p=Math.max(l,d):p=Math.min(l,d);const m={};Object.defineProperty(m,"maxMessageSize",{get(){return p}}),this._sctp=m}return o.apply(this,arguments)}}function Xc(t){if(!(t.RTCPeerConnection&&"createDataChannel"in t.RTCPeerConnection.prototype))return;function e(n,i){const s=n.send;n.send=function(){const a=arguments[0],c=a.length||a.size||a.byteLength;if(n.readyState==="open"&&i.sctp&&c>i.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+i.sctp.maxMessageSize+" bytes)");return s.apply(n,arguments)}}const r=t.RTCPeerConnection.prototype.createDataChannel;t.RTCPeerConnection.prototype.createDataChannel=function(){const i=r.apply(this,arguments);return e(i,this),i},vs(t,"datachannel",n=>(e(n.channel,n.target),n))}function Kf(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(r){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),r&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=r)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(r=>{const n=e[r];e[r]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=i=>{const s=i.target;if(s._lastConnectionState!==s.connectionState){s._lastConnectionState=s.connectionState;const o=new Event("connectionstatechange",i);s.dispatchEvent(o)}return i},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),n.apply(this,arguments)}})}function Qf(t,e){if(!t.RTCPeerConnection||e.browser==="chrome"&&e.version>=71||e.browser==="safari"&&e._safariVersion>=13.1)return;const r=t.RTCPeerConnection.prototype.setRemoteDescription;t.RTCPeerConnection.prototype.setRemoteDescription=function(i){if(i&&i.sdp&&i.sdp.indexOf(`
166
+ a=extmap-allow-mixed`)!==-1){const s=i.sdp.split(`
167
+ `).filter(o=>o.trim()!=="a=extmap-allow-mixed").join(`
168
+ `);t.RTCSessionDescription&&i instanceof t.RTCSessionDescription?arguments[0]=new t.RTCSessionDescription({type:i.type,sdp:s}):i.sdp=s}return r.apply(this,arguments)}}function Uc(t,e){if(!(t.RTCPeerConnection&&t.RTCPeerConnection.prototype))return;const r=t.RTCPeerConnection.prototype.addIceCandidate;!r||r.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():r.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}function Wc(t,e){if(!(t.RTCPeerConnection&&t.RTCPeerConnection.prototype))return;const r=t.RTCPeerConnection.prototype.setLocalDescription;!r||r.length===0||(t.RTCPeerConnection.prototype.setLocalDescription=function(){let i=arguments[0]||{};if(typeof i!="object"||i.type&&i.sdp)return r.apply(this,arguments);if(i={type:i.type,sdp:i.sdp},!i.type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":i.type="offer";break;default:i.type="answer";break}return i.sdp||i.type!=="offer"&&i.type!=="answer"?r.apply(this,[i]):(i.type==="offer"?this.createOffer:this.createAnswer).apply(this).then(o=>r.apply(this,[o]))})}const WD=Object.freeze(Object.defineProperty({__proto__:null,removeExtmapAllowMixed:Qf,shimAddIceCandidateNullOrEmpty:Uc,shimConnectionState:Kf,shimMaxMessageSize:Gc,shimParameterlessSetLocalDescription:Wc,shimRTCIceCandidate:Vc,shimRTCIceCandidateRelayProtocol:Jf,shimSendThrowTypeError:Xc},Symbol.toStringTag,{value:"Module"}));function YD({window:t}={},e={shimChrome:!0,shimFirefox:!0,shimSafari:!0}){const r=aw,n=VD(t),i={browserDetails:n,commonShim:WD,extractVersion:Yo,disableLog:zD,disableWarnings:HD,sdp:UD};switch(n.browser){case"chrome":if(!Vg||!Zf||!e.shimChrome)return r("Chrome shim is not included in this adapter release."),i;if(n.version===null)return r("Chrome shim can not determine version, not shimming."),i;r("adapter.js shimming chrome."),i.browserShim=Vg,Uc(t,n),Wc(t),lw(t,n),dw(t),Zf(t,n),uw(t),mw(t,n),fw(t),pw(t),gw(t,n),Vc(t),Jf(t),Kf(t),Gc(t,n),Xc(t),Qf(t,n);break;case"firefox":if(!Gg||!qf||!e.shimFirefox)return r("Firefox shim is not included in this adapter release."),i;r("adapter.js shimming firefox."),i.browserShim=Gg,Uc(t,n),Wc(t),vw(t,n),qf(t,n),bw(t),ww(t),yw(t),Sw(t),Cw(t),Aw(t),Rw(t),_w(t),Ew(t),Vc(t),Kf(t),Gc(t,n),Xc(t);break;case"safari":if(!Xg||!e.shimSafari)return r("Safari shim is not included in this adapter release."),i;r("adapter.js shimming safari."),i.browserShim=Xg,Uc(t,n),Wc(t),Dw(t),Mw(t),Iw(t),Pw(t),Tw(t),kw(t),Ow(t),Nw(t),Vc(t),Jf(t),Gc(t,n),Xc(t),Qf(t,n);break;default:r("Unsupported browser!");break}return i}const Gt=YD({window:typeof window>"u"?void 0:window});var wu,Wg;function ZD(){if(Wg)return wu;Wg=1;function t(n){if(!n.entries)return n;var i={};return n.forEach(function(s,o){i[o]=s}),i}function e(n,i){i=JSON.parse(JSON.stringify(i)),Object.keys(i).forEach(function(o){var a=i[o];delete a.id,n[o]&&Object.keys(a).forEach(function(c){a[c]===n[o][c]&&delete i[o][c],(Object.keys(a).length===0||Object.keys(a).length===1&&a.timestamp)&&delete i[o]})});var s=-1/0;return Object.keys(i).forEach(function(o){var a=i[o];a.timestamp>s&&(s=a.timestamp)}),Object.keys(i).forEach(function(o){var a=i[o];a.timestamp===s&&(a.timestamp=0)}),i.timestamp=s,i}function r(n){return{id:n.id,tracks:n.getTracks().map(function(i){return{id:i.id,kind:i.kind,label:i.label,enabled:i.enabled,muted:i.muted,readyState:i.readyState}})}}return wu=function(n,i,s){var o=0,a=!!window.mozRTCPeerConnection,c=!!window.RTCIceGatherer,l={};if(s.forEach(function(v){if(window[v+"RTCPeerConnection"]&&!(v==="webkit"&&c)){var S=window[v+"RTCPeerConnection"],C=function(w,y){var f=new S(w,y),u="PC_"+o++;f.__rtcStatsId=u,w||(w={nullConfig:!0}),w=JSON.parse(JSON.stringify(w)),(w&&w.iceServers||[]).forEach(function(A){delete A.credential}),a?w.browserType="moz":c?w.browserType="edge":w.browserType="webkit",n("create",u,w),y&&n("constraints",u,y),f.addEventListener("icecandidate",function(A){n("onicecandidate",u,A.candidate)}),f.addEventListener("addstream",function(A){n("onaddstream",u,A.stream.id+" "+A.stream.getTracks().map(function(R){return R.kind+":"+R.id}))}),f.addEventListener("track",function(A){n("ontrack",u,A.track.kind+":"+A.track.id+" "+A.streams.map(function(R){return"stream:"+R.id}))}),f.addEventListener("removestream",function(A){n("onremovestream",u,A.stream.id+" "+A.stream.getTracks().map(function(R){return R.kind+":"+R.id}))}),f.addEventListener("signalingstatechange",function(){n("onsignalingstatechange",u,f.signalingState)}),f.addEventListener("iceconnectionstatechange",function(){n("oniceconnectionstatechange",u,f.iceConnectionState)}),f.addEventListener("icegatheringstatechange",function(){n("onicegatheringstatechange",u,f.iceGatheringState)}),f.addEventListener("connectionstatechange",function(){n("onconnectionstatechange",u,f.connectionState)}),f.addEventListener("negotiationneeded",function(){n("onnegotiationneeded",u,void 0)}),f.addEventListener("datachannel",function(A){n("ondatachannel",u,[A.channel.id,A.channel.label])});var h=function(){f.getStats(null).then(function(A){var R=t(A),_=JSON.parse(JSON.stringify(R));n("getstats",u,e(l[u]||{},R)),l[u]=_})};if(!c&&i)var b=window.setInterval(function(){if(f.signalingState==="closed"){window.clearInterval(b);return}h()},i);return c||f.addEventListener("connectionstatechange",function(){(f.connectionState==="connected"||f.connectionState==="failed")&&h()}),f};["createDataChannel","close"].forEach(function(w){var y=S.prototype[w];y&&(S.prototype[w]=function(){return n(w,this.__rtcStatsId,arguments),y.apply(this,arguments)})}),["addStream","removeStream"].forEach(function(w){var y=S.prototype[w];y&&(S.prototype[w]=function(){var f=arguments[0],u=f.getTracks().map(function(h){return h.kind+":"+h.id}).join(",");return n(w,this.__rtcStatsId,f.id+" "+u),y.apply(this,arguments)})}),["addTrack"].forEach(function(w){var y=S.prototype[w];y&&(S.prototype[w]=function(){var f=arguments[0],u=[].slice.call(arguments,1);return n(w,this.__rtcStatsId,f.kind+":"+f.id+" "+(u.map(function(h){return"stream:"+h.id}).join(";")||"-")),y.apply(this,arguments)})}),["removeTrack"].forEach(function(w){var y=S.prototype[w];y&&(S.prototype[w]=function(){var f=arguments[0].track;return n(w,this.__rtcStatsId,f?f.kind+":"+f.id:"null"),y.apply(this,arguments)})}),["createOffer","createAnswer"].forEach(function(w){var y=S.prototype[w];y&&(S.prototype[w]=function(){var f=this.__rtcStatsId,u=arguments,h;return arguments.length===1&&typeof arguments[0]=="object"?h=arguments[0]:arguments.length===3&&typeof arguments[2]=="object"&&(h=arguments[2]),n(w,this.__rtcStatsId,h),y.apply(this,h?[h]:void 0).then(function(b){if(n(w+"OnSuccess",f,b),u.length>0&&typeof u[0]=="function"){u[0].apply(null,[b]);return}return b},function(b){if(n(w+"OnFailure",f,b.toString()),u.length>1&&typeof u[1]=="function"){u[1].apply(null,[b]);return}throw b})})}),["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(w){var y=S.prototype[w];y&&(S.prototype[w]=function(){var f=this.__rtcStatsId,u=arguments;return n(w,this.__rtcStatsId,u[0]),y.apply(this,[u[0]]).then(function(){if(n(w+"OnSuccess",f,void 0),u.length>=2&&typeof u[1]=="function"){u[1].apply(null,[]);return}},function(h){if(n(w+"OnFailure",f,h.toString()),u.length>=3&&typeof u[2]=="function"){u[2].apply(null,[h]);return}throw h})})}),S.generateCertificate&&Object.defineProperty(C,"generateCertificate",{get:function(){return arguments.length?S.generateCertificate.apply(null,arguments):S.generateCertificate}}),window[v+"RTCPeerConnection"]=C,window[v+"RTCPeerConnection"].prototype=S.prototype}}),s.forEach(function(v){var S=v+(v.length?"GetUserMedia":"getUserMedia");if(navigator[S]){var C=navigator[S].bind(navigator),w=function(){n("getUserMedia",null,arguments[0]);var y=arguments[1],f=arguments[2];C(arguments[0],function(u){n("getUserMediaOnSuccess",null,r(u)),y&&y(u)},function(u){n("getUserMediaOnFailure",null,u.name),f&&f(u)})};navigator[S]=w.bind(navigator)}}),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){var d=navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices),p=function(){return n("navigator.mediaDevices.getUserMedia",null,arguments[0]),d.apply(navigator.mediaDevices,arguments).then(function(v){return n("navigator.mediaDevices.getUserMediaOnSuccess",null,r(v)),v},function(v){return n("navigator.mediaDevices.getUserMediaOnFailure",null,v.name),Promise.reject(v)})};navigator.mediaDevices.getUserMedia=p.bind(navigator.mediaDevices)}if(navigator.mediaDevices&&navigator.mediaDevices.getDisplayMedia){var m=navigator.mediaDevices.getDisplayMedia.bind(navigator.mediaDevices),g=function(){return n("navigator.mediaDevices.getDisplayMedia",null,arguments[0]),m.apply(navigator.mediaDevices,arguments).then(function(v){return n("navigator.mediaDevices.getDisplayMediaOnSuccess",null,r(v)),v},function(v){return n("navigator.mediaDevices.getDisplayMediaOnFailure",null,v.name),Promise.reject(v)})};navigator.mediaDevices.getDisplayMedia=g.bind(navigator.mediaDevices)}return{resetDelta(){l={}}}},wu}var qD=ZD();const JD=Xn(qD);let rc;const KD=new Uint8Array(16);function QD(){if(!rc&&(rc=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!rc))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return rc(KD)}const Ut=[];for(let t=0;t<256;++t)Ut.push((t+256).toString(16).slice(1));function $D(t,e=0){return Ut[t[e+0]]+Ut[t[e+1]]+Ut[t[e+2]]+Ut[t[e+3]]+"-"+Ut[t[e+4]]+Ut[t[e+5]]+"-"+Ut[t[e+6]]+Ut[t[e+7]]+"-"+Ut[t[e+8]]+Ut[t[e+9]]+"-"+Ut[t[e+10]]+Ut[t[e+11]]+Ut[t[e+12]]+Ut[t[e+13]]+Ut[t[e+14]]+Ut[t[e+15]]}const ek=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Yg={randomUUID:ek};function fh(t,e,r){if(Yg.randomUUID&&!t)return Yg.randomUUID();t=t||{};const n=t.random||(t.rng||QD)();return n[6]=n[6]&15|64,n[8]=n[8]&63|128,$D(n)}var Jr={},Cu={},Au={exports:{}},Zg;function ph(){if(Zg)return Au.exports;Zg=1;var t=Au.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 r="candidate:%s %d %s %d %s %d typ %s";return r+=e.raddr!=null?" raddr %s rport %d":"%v%v",r+=e.tcptype!=null?" tcptype %s":"%v",e.generation!=null&&(r+=" generation %d"),r+=e["network-id"]!=null?" network-id %d":"%v",r+=e["network-cost"]!=null?" network-cost %d":"%v",r}},{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 r="ssrc:%d";return e.attribute!=null&&(r+=" %s",e.value!=null&&(r+=":%s")),r}},{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 r="mediaclk:";return r+=e.id!=null?"id=%s %s":"%v%s",r+=e.mediaClockValue!=null?"=%s":"",r+=e.rateNumerator!=null?" rate=%s":"",r+=e.rateDenominator!=null?"/%s":"",r}},{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 r=t[e];r.forEach(function(n){n.reg||(n.reg=/(.*)/),n.format||(n.format="%s")})}),Au.exports}var qg;function tk(){return qg||(qg=1,function(t){var e=function(a){return String(Number(a))===a?Number(a):a},r=function(a,c,l,d){if(d&&!l)c[d]=e(a[1]);else for(var p=0;p<l.length;p+=1)a[p+1]!=null&&(c[l[p]]=e(a[p+1]))},n=function(a,c,l){var d=a.name&&a.names;a.push&&!c[a.push]?c[a.push]=[]:d&&!c[a.name]&&(c[a.name]={});var p=a.push?{}:d?c[a.name]:c;r(l.match(a.reg),p,a.names,a.name),a.push&&c[a.push].push(p)},i=ph(),s=RegExp.prototype.test.bind(/^([a-z])=(.*)/);t.parse=function(a){var c={},l=[],d=c;return a.split(/(\r\n|\r|\n)/).filter(s).forEach(function(p){var m=p[0],g=p.slice(2);m==="m"&&(l.push({rtp:[],fmtp:[]}),d=l[l.length-1]);for(var v=0;v<(i[m]||[]).length;v+=1){var S=i[m][v];if(S.reg.test(g))return n(S,d,g)}}),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),d=0;d<l.length;d+=3)c.push({component:l[d],ip:l[d+1],port:l[d+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 d,p=!1;return l[0]!=="~"?d=e(l):(d=e(l.substring(1,l.length)),p=!0),{scid:d,paused:p}})})}}(Cu)),Cu}var Ru,Jg;function rk(){if(Jg)return Ru;Jg=1;var t=ph(),e=/%[sdv%]/g,r=function(o){var a=1,c=arguments,l=c.length;return o.replace(e,function(d){if(a>=l)return d;var p=c[a];switch(a+=1,d){case"%%":return"%";case"%s":return String(p);case"%d":return Number(p);case"%v":return""}})},n=function(o,a,c){var l=a.format instanceof Function?a.format(a.push?c:c[a.name]):a.format,d=[o+"="+l];if(a.names)for(var p=0;p<a.names.length;p+=1){var m=a.names[p];a.name?d.push(c[a.name][m]):d.push(c[a.names[p]])}else d.push(c[a.name]);return r.apply(null,d)},i=["v","o","s","i","u","e","p","c","b","t","r","z","a"],s=["i","c","b","a"];return Ru=function(o,a){a=a||{},o.version==null&&(o.version=0),o.name==null&&(o.name=" "),o.media.forEach(function(p){p.payloads==null&&(p.payloads="")});var c=a.outerOrder||i,l=a.innerOrder||s,d=[];return c.forEach(function(p){t[p].forEach(function(m){m.name in o&&o[m.name]!=null?d.push(n(p,m,o)):m.push in o&&o[m.push]!=null&&o[m.push].forEach(function(g){d.push(n(p,m,g))})})}),o.media.forEach(function(p){d.push(n("m",t.m[0],p)),l.forEach(function(m){t[m].forEach(function(g){g.name in p&&p[g.name]!=null?d.push(n(m,g,p)):g.push in p&&p[g.push]!=null&&p[g.push].forEach(function(v){d.push(n(m,g,v))})})})}),d.join(`\r
169
+ `)+`\r
170
+ `},Ru}var Kg;function cr(){if(Kg)return Jr;Kg=1;var t=tk(),e=rk(),r=ph();return Jr.grammar=r,Jr.write=e,Jr.parse=t.parse,Jr.parseParams=t.parseParams,Jr.parseFmtpConfig=t.parseFmtpConfig,Jr.parsePayloads=t.parsePayloads,Jr.parseRemoteCandidates=t.parseRemoteCandidates,Jr.parseImageAttributes=t.parseImageAttributes,Jr.parseSimulcastStreamList=t.parseSimulcastStreamList,Jr}var Pr=cr(),ei={},Kr={},Bi={},Qg;function jw(){if(Qg)return Bi;Qg=1,Object.defineProperty(Bi,"__esModule",{value:!0}),Bi.isCorrect=Bi.isInSubnet=void 0;function t(r){return this.subnetMask<r.subnetMask?!1:this.mask(r.subnetMask)===r.mask()}Bi.isInSubnet=t;function e(r){return function(){return this.addressMinusSuffix!==this.correctForm()?!1:this.subnetMask===r&&!this.parsedSubnet?!0:this.parsedSubnet===String(this.subnetMask)}}return Bi.isCorrect=e,Bi}var Qr={},$g;function Bw(){return $g||($g=1,Object.defineProperty(Qr,"__esModule",{value:!0}),Qr.RE_SUBNET_STRING=Qr.RE_ADDRESS=Qr.GROUPS=Qr.BITS=void 0,Qr.BITS=32,Qr.GROUPS=4,Qr.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g,Qr.RE_SUBNET_STRING=/\/\d{1,2}$/),Qr}var Io={},ev;function hh(){if(ev)return Io;ev=1,Object.defineProperty(Io,"__esModule",{value:!0}),Io.AddressError=void 0;class t extends Error{constructor(r,n){super(r),this.name="AddressError",n!==null&&(this.parseMessage=n)}}return Io.AddressError=t,Io}var Yc={exports:{}},nk=Yc.exports,tv;function Fw(){return tv||(tv=1,function(t,e){(function(){var r,n=0xdeadbeefcafe,i=(n&16777215)==15715070;function s(I,x,D){I!=null&&(typeof I=="number"?this.fromNumber(I,x,D):x==null&&typeof I!="string"?this.fromString(I,256):this.fromString(I,x))}function o(){return new s(null)}function a(I,x,D,H,q,$){for(;--$>=0;){var oe=x*this[I++]+D[H]+q;q=Math.floor(oe/67108864),D[H++]=oe&67108863}return q}function c(I,x,D,H,q,$){for(var oe=x&32767,ue=x>>15;--$>=0;){var ct=this[I]&32767,zt=this[I++]>>15,Lr=ue*ct+zt*oe;ct=oe*ct+((Lr&32767)<<15)+D[H]+(q&1073741823),q=(ct>>>30)+(Lr>>>15)+ue*zt+(q>>>30),D[H++]=ct&1073741823}return q}function l(I,x,D,H,q,$){for(var oe=x&16383,ue=x>>14;--$>=0;){var ct=this[I]&16383,zt=this[I++]>>14,Lr=ue*ct+zt*oe;ct=oe*ct+((Lr&16383)<<14)+D[H]+q,q=(ct>>28)+(Lr>>14)+ue*zt,D[H++]=ct&268435455}return q}var d=typeof navigator<"u";d&&i&&navigator.appName=="Microsoft Internet Explorer"?(s.prototype.am=c,r=30):d&&i&&navigator.appName!="Netscape"?(s.prototype.am=a,r=26):(s.prototype.am=l,r=28),s.prototype.DB=r,s.prototype.DM=(1<<r)-1,s.prototype.DV=1<<r;var p=52;s.prototype.FV=Math.pow(2,p),s.prototype.F1=p-r,s.prototype.F2=2*r-p;var m="0123456789abcdefghijklmnopqrstuvwxyz",g=new Array,v,S;for(v=48,S=0;S<=9;++S)g[v++]=S;for(v=97,S=10;S<36;++S)g[v++]=S;for(v=65,S=10;S<36;++S)g[v++]=S;function C(I){return m.charAt(I)}function w(I,x){var D=g[I.charCodeAt(x)];return D??-1}function y(I){for(var x=this.t-1;x>=0;--x)I[x]=this[x];I.t=this.t,I.s=this.s}function f(I){this.t=1,this.s=I<0?-1:0,I>0?this[0]=I:I<-1?this[0]=I+this.DV:this.t=0}function u(I){var x=o();return x.fromInt(I),x}function h(I,x){var D;if(x==16)D=4;else if(x==8)D=3;else if(x==256)D=8;else if(x==2)D=1;else if(x==32)D=5;else if(x==4)D=2;else{this.fromRadix(I,x);return}this.t=0,this.s=0;for(var H=I.length,q=!1,$=0;--H>=0;){var oe=D==8?I[H]&255:w(I,H);if(oe<0){I.charAt(H)=="-"&&(q=!0);continue}q=!1,$==0?this[this.t++]=oe:$+D>this.DB?(this[this.t-1]|=(oe&(1<<this.DB-$)-1)<<$,this[this.t++]=oe>>this.DB-$):this[this.t-1]|=oe<<$,$+=D,$>=this.DB&&($-=this.DB)}D==8&&(I[0]&128)!=0&&(this.s=-1,$>0&&(this[this.t-1]|=(1<<this.DB-$)-1<<$)),this.clamp(),q&&s.ZERO.subTo(this,this)}function b(){for(var I=this.s&this.DM;this.t>0&&this[this.t-1]==I;)--this.t}function A(I){if(this.s<0)return"-"+this.negate().toString(I);var x;if(I==16)x=4;else if(I==8)x=3;else if(I==2)x=1;else if(I==32)x=5;else if(I==4)x=2;else return this.toRadix(I);var D=(1<<x)-1,H,q=!1,$="",oe=this.t,ue=this.DB-oe*this.DB%x;if(oe-- >0)for(ue<this.DB&&(H=this[oe]>>ue)>0&&(q=!0,$=C(H));oe>=0;)ue<x?(H=(this[oe]&(1<<ue)-1)<<x-ue,H|=this[--oe]>>(ue+=this.DB-x)):(H=this[oe]>>(ue-=x)&D,ue<=0&&(ue+=this.DB,--oe)),H>0&&(q=!0),q&&($+=C(H));return q?$:"0"}function R(){var I=o();return s.ZERO.subTo(this,I),I}function _(){return this.s<0?this.negate():this}function E(I){var x=this.s-I.s;if(x!=0)return x;var D=this.t;if(x=D-I.t,x!=0)return this.s<0?-x:x;for(;--D>=0;)if((x=this[D]-I[D])!=0)return x;return 0}function P(I){var x=1,D;return(D=I>>>16)!=0&&(I=D,x+=16),(D=I>>8)!=0&&(I=D,x+=8),(D=I>>4)!=0&&(I=D,x+=4),(D=I>>2)!=0&&(I=D,x+=2),(D=I>>1)!=0&&(I=D,x+=1),x}function T(){return this.t<=0?0:this.DB*(this.t-1)+P(this[this.t-1]^this.s&this.DM)}function k(I,x){var D;for(D=this.t-1;D>=0;--D)x[D+I]=this[D];for(D=I-1;D>=0;--D)x[D]=0;x.t=this.t+I,x.s=this.s}function F(I,x){for(var D=I;D<this.t;++D)x[D-I]=this[D];x.t=Math.max(this.t-I,0),x.s=this.s}function X(I,x){var D=I%this.DB,H=this.DB-D,q=(1<<H)-1,$=Math.floor(I/this.DB),oe=this.s<<D&this.DM,ue;for(ue=this.t-1;ue>=0;--ue)x[ue+$+1]=this[ue]>>H|oe,oe=(this[ue]&q)<<D;for(ue=$-1;ue>=0;--ue)x[ue]=0;x[$]=oe,x.t=this.t+$+1,x.s=this.s,x.clamp()}function O(I,x){x.s=this.s;var D=Math.floor(I/this.DB);if(D>=this.t){x.t=0;return}var H=I%this.DB,q=this.DB-H,$=(1<<H)-1;x[0]=this[D]>>H;for(var oe=D+1;oe<this.t;++oe)x[oe-D-1]|=(this[oe]&$)<<q,x[oe-D]=this[oe]>>H;H>0&&(x[this.t-D-1]|=(this.s&$)<<q),x.t=this.t-D,x.clamp()}function L(I,x){for(var D=0,H=0,q=Math.min(I.t,this.t);D<q;)H+=this[D]-I[D],x[D++]=H&this.DM,H>>=this.DB;if(I.t<this.t){for(H-=I.s;D<this.t;)H+=this[D],x[D++]=H&this.DM,H>>=this.DB;H+=this.s}else{for(H+=this.s;D<I.t;)H-=I[D],x[D++]=H&this.DM,H>>=this.DB;H-=I.s}x.s=H<0?-1:0,H<-1?x[D++]=this.DV+H:H>0&&(x[D++]=H),x.t=D,x.clamp()}function B(I,x){var D=this.abs(),H=I.abs(),q=D.t;for(x.t=q+H.t;--q>=0;)x[q]=0;for(q=0;q<H.t;++q)x[q+D.t]=D.am(0,H[q],x,q,0,D.t);x.s=0,x.clamp(),this.s!=I.s&&s.ZERO.subTo(x,x)}function z(I){for(var x=this.abs(),D=I.t=2*x.t;--D>=0;)I[D]=0;for(D=0;D<x.t-1;++D){var H=x.am(D,x[D],I,2*D,0,1);(I[D+x.t]+=x.am(D+1,2*x[D],I,2*D+1,H,x.t-D-1))>=x.DV&&(I[D+x.t]-=x.DV,I[D+x.t+1]=1)}I.t>0&&(I[I.t-1]+=x.am(D,x[D],I,2*D,0,1)),I.s=0,I.clamp()}function Z(I,x,D){var H=I.abs();if(!(H.t<=0)){var q=this.abs();if(q.t<H.t){x?.fromInt(0),D!=null&&this.copyTo(D);return}D==null&&(D=o());var $=o(),oe=this.s,ue=I.s,ct=this.DB-P(H[H.t-1]);ct>0?(H.lShiftTo(ct,$),q.lShiftTo(ct,D)):(H.copyTo($),q.copyTo(D));var zt=$.t,Lr=$[zt-1];if(Lr!=0){var Ar=Lr*(1<<this.F1)+(zt>1?$[zt-2]>>this.F2:0),$n=this.FV/Ar,za=(1<<this.F1)/Ar,Zr=1<<this.F2,qr=D.t,Ha=qr-zt,vi=x??o();for($.dlShiftTo(Ha,vi),D.compareTo(vi)>=0&&(D[D.t++]=1,D.subTo(vi,D)),s.ONE.dlShiftTo(zt,vi),vi.subTo($,$);$.t<zt;)$[$.t++]=0;for(;--Ha>=0;){var Zd=D[--qr]==Lr?this.DM:Math.floor(D[qr]*$n+(D[qr-1]+Zr)*za);if((D[qr]+=$.am(0,Zd,D,Ha,0,zt))<Zd)for($.dlShiftTo(Ha,vi),D.subTo(vi,D);D[qr]<--Zd;)D.subTo(vi,D)}x!=null&&(D.drShiftTo(zt,x),oe!=ue&&s.ZERO.subTo(x,x)),D.t=zt,D.clamp(),ct>0&&D.rShiftTo(ct,D),oe<0&&s.ZERO.subTo(D,D)}}}function V(I){var x=o();return this.abs().divRemTo(I,null,x),this.s<0&&x.compareTo(s.ZERO)>0&&I.subTo(x,x),x}function G(I){this.m=I}function te(I){return I.s<0||I.compareTo(this.m)>=0?I.mod(this.m):I}function re(I){return I}function ie(I){I.divRemTo(this.m,null,I)}function ce(I,x,D){I.multiplyTo(x,D),this.reduce(D)}function se(I,x){I.squareTo(x),this.reduce(x)}G.prototype.convert=te,G.prototype.revert=re,G.prototype.reduce=ie,G.prototype.mulTo=ce,G.prototype.sqrTo=se;function ae(){if(this.t<1)return 0;var I=this[0];if((I&1)==0)return 0;var x=I&3;return x=x*(2-(I&15)*x)&15,x=x*(2-(I&255)*x)&255,x=x*(2-((I&65535)*x&65535))&65535,x=x*(2-I*x%this.DV)%this.DV,x>0?this.DV-x:-x}function le(I){this.m=I,this.mp=I.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<<I.DB-15)-1,this.mt2=2*I.t}function ye(I){var x=o();return I.abs().dlShiftTo(this.m.t,x),x.divRemTo(this.m,null,x),I.s<0&&x.compareTo(s.ZERO)>0&&this.m.subTo(x,x),x}function me(I){var x=o();return I.copyTo(x),this.reduce(x),x}function ke(I){for(;I.t<=this.mt2;)I[I.t++]=0;for(var x=0;x<this.m.t;++x){var D=I[x]&32767,H=D*this.mpl+((D*this.mph+(I[x]>>15)*this.mpl&this.um)<<15)&I.DM;for(D=x+this.m.t,I[D]+=this.m.am(0,H,I,x,0,this.m.t);I[D]>=I.DV;)I[D]-=I.DV,I[++D]++}I.clamp(),I.drShiftTo(this.m.t,I),I.compareTo(this.m)>=0&&I.subTo(this.m,I)}function U(I,x){I.squareTo(x),this.reduce(x)}function We(I,x,D){I.multiplyTo(x,D),this.reduce(D)}le.prototype.convert=ye,le.prototype.revert=me,le.prototype.reduce=ke,le.prototype.mulTo=We,le.prototype.sqrTo=U;function Ye(){return(this.t>0?this[0]&1:this.s)==0}function Ot(I,x){if(I>4294967295||I<1)return s.ONE;var D=o(),H=o(),q=x.convert(this),$=P(I)-1;for(q.copyTo(D);--$>=0;)if(x.sqrTo(D,H),(I&1<<$)>0)x.mulTo(H,q,D);else{var oe=D;D=H,H=oe}return x.revert(D)}function qt(I,x){var D;return I<256||x.isEven()?D=new G(x):D=new le(x),this.exp(I,D)}s.prototype.copyTo=y,s.prototype.fromInt=f,s.prototype.fromString=h,s.prototype.clamp=b,s.prototype.dlShiftTo=k,s.prototype.drShiftTo=F,s.prototype.lShiftTo=X,s.prototype.rShiftTo=O,s.prototype.subTo=L,s.prototype.multiplyTo=B,s.prototype.squareTo=z,s.prototype.divRemTo=Z,s.prototype.invDigit=ae,s.prototype.isEven=Ye,s.prototype.exp=Ot,s.prototype.toString=A,s.prototype.negate=R,s.prototype.abs=_,s.prototype.compareTo=E,s.prototype.bitLength=T,s.prototype.mod=V,s.prototype.modPowInt=qt,s.ZERO=u(0),s.ONE=u(1);function Ct(){var I=o();return this.copyTo(I),I}function rr(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t==0)return-1}else{if(this.t==1)return this[0];if(this.t==0)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]}function dr(){return this.t==0?this.s:this[0]<<24>>24}function Ur(){return this.t==0?this.s:this[0]<<16>>16}function xt(I){return Math.floor(Math.LN2*this.DB/Math.log(I))}function nt(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function mt(I){if(I==null&&(I=10),this.signum()==0||I<2||I>36)return"0";var x=this.chunkSize(I),D=Math.pow(I,x),H=u(D),q=o(),$=o(),oe="";for(this.divRemTo(H,q,$);q.signum()>0;)oe=(D+$.intValue()).toString(I).substr(1)+oe,q.divRemTo(H,q,$);return $.intValue().toString(I)+oe}function Mr(I,x){this.fromInt(0),x==null&&(x=10);for(var D=this.chunkSize(x),H=Math.pow(x,D),q=!1,$=0,oe=0,ue=0;ue<I.length;++ue){var ct=w(I,ue);if(ct<0){I.charAt(ue)=="-"&&this.signum()==0&&(q=!0);continue}oe=x*oe+ct,++$>=D&&(this.dMultiply(H),this.dAddOffset(oe,0),$=0,oe=0)}$>0&&(this.dMultiply(Math.pow(x,$)),this.dAddOffset(oe,0)),q&&s.ZERO.subTo(this,this)}function Ie(I,x,D){if(typeof x=="number")if(I<2)this.fromInt(1);else for(this.fromNumber(I,D),this.testBit(I-1)||this.bitwiseTo(s.ONE.shiftLeft(I-1),kt,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(x);)this.dAddOffset(2,0),this.bitLength()>I&&this.subTo(s.ONE.shiftLeft(I-1),this);else{var H=new Array,q=I&7;H.length=(I>>3)+1,x.nextBytes(H),q>0?H[0]&=(1<<q)-1:H[0]=0,this.fromString(H,256)}}function Me(){var I=this.t,x=new Array;x[0]=this.s;var D=this.DB-I*this.DB%8,H,q=0;if(I-- >0)for(D<this.DB&&(H=this[I]>>D)!=(this.s&this.DM)>>D&&(x[q++]=H|this.s<<this.DB-D);I>=0;)D<8?(H=(this[I]&(1<<D)-1)<<8-D,H|=this[--I]>>(D+=this.DB-8)):(H=this[I]>>(D-=8)&255,D<=0&&(D+=this.DB,--I)),(H&128)!=0&&(H|=-256),q==0&&(this.s&128)!=(H&128)&&++q,(q>0||H!=this.s)&&(x[q++]=H);return x}function be(I){return this.compareTo(I)==0}function Ve(I){return this.compareTo(I)<0?this:I}function At(I){return this.compareTo(I)>0?this:I}function Dt(I,x,D){var H,q,$=Math.min(I.t,this.t);for(H=0;H<$;++H)D[H]=x(this[H],I[H]);if(I.t<this.t){for(q=I.s&this.DM,H=$;H<this.t;++H)D[H]=x(this[H],q);D.t=this.t}else{for(q=this.s&this.DM,H=$;H<I.t;++H)D[H]=x(q,I[H]);D.t=I.t}D.s=x(this.s,I.s),D.clamp()}function Be(I,x){return I&x}function Se(I){var x=o();return this.bitwiseTo(I,Be,x),x}function kt(I,x){return I|x}function Jt(I){var x=o();return this.bitwiseTo(I,kt,x),x}function Nr(I,x){return I^x}function Zn(I){var x=o();return this.bitwiseTo(I,Nr,x),x}function Pn(I,x){return I&~x}function qn(I){var x=o();return this.bitwiseTo(I,Pn,x),x}function Ni(){for(var I=o(),x=0;x<this.t;++x)I[x]=this.DM&~this[x];return I.t=this.t,I.s=~this.s,I}function nr(I){var x=o();return I<0?this.rShiftTo(-I,x):this.lShiftTo(I,x),x}function Wr(I){var x=o();return I<0?this.lShiftTo(-I,x):this.rShiftTo(I,x),x}function Jn(I){if(I==0)return-1;var x=0;return(I&65535)==0&&(I>>=16,x+=16),(I&255)==0&&(I>>=8,x+=8),(I&15)==0&&(I>>=4,x+=4),(I&3)==0&&(I>>=2,x+=2),(I&1)==0&&++x,x}function Li(){for(var I=0;I<this.t;++I)if(this[I]!=0)return I*this.DB+Jn(this[I]);return this.s<0?this.t*this.DB:-1}function Ft(I){for(var x=0;I!=0;)I&=I-1,++x;return x}function Sr(){for(var I=0,x=this.s&this.DM,D=0;D<this.t;++D)I+=Ft(this[D]^x);return I}function Ro(I){var x=Math.floor(I/this.DB);return x>=this.t?this.s!=0:(this[x]&1<<I%this.DB)!=0}function Kn(I,x){var D=s.ONE.shiftLeft(I);return this.bitwiseTo(D,x,D),D}function pi(I){return this.changeBit(I,kt)}function hi(I){return this.changeBit(I,Pn)}function Tn(I){return this.changeBit(I,Nr)}function mi(I,x){for(var D=0,H=0,q=Math.min(I.t,this.t);D<q;)H+=this[D]+I[D],x[D++]=H&this.DM,H>>=this.DB;if(I.t<this.t){for(H+=I.s;D<this.t;)H+=this[D],x[D++]=H&this.DM,H>>=this.DB;H+=this.s}else{for(H+=this.s;D<I.t;)H+=I[D],x[D++]=H&this.DM,H>>=this.DB;H+=I.s}x.s=H<0?-1:0,H>0?x[D++]=H:H<-1&&(x[D++]=this.DV+H),x.t=D,x.clamp()}function ur(I){var x=o();return this.addTo(I,x),x}function ji(I){var x=o();return this.subTo(I,x),x}function wr(I){var x=o();return this.multiplyTo(I,x),x}function In(){var I=o();return this.squareTo(I),I}function Qn(I){var x=o();return this.divRemTo(I,x,null),x}function j(I){var x=o();return this.divRemTo(I,null,x),x}function Q(I){var x=o(),D=o();return this.divRemTo(I,x,D),new Array(x,D)}function ne(I){this[this.t]=this.am(0,I-1,this,0,0,this.t),++this.t,this.clamp()}function Ce(I,x){if(I!=0){for(;this.t<=x;)this[this.t++]=0;for(this[x]+=I;this[x]>=this.DV;)this[x]-=this.DV,++x>=this.t&&(this[this.t++]=0),++this[x]}}function Le(){}function Ge(I){return I}function je(I,x,D){I.multiplyTo(x,D)}function Oe(I,x){I.squareTo(x)}Le.prototype.convert=Ge,Le.prototype.revert=Ge,Le.prototype.mulTo=je,Le.prototype.sqrTo=Oe;function Mt(I){return this.exp(I,new Le)}function st(I,x,D){var H=Math.min(this.t+I.t,x);for(D.s=0,D.t=H;H>0;)D[--H]=0;var q;for(q=D.t-this.t;H<q;++H)D[H+this.t]=this.am(0,I[H],D,H,0,this.t);for(q=Math.min(I.t,x);H<q;++H)this.am(0,I[H],D,H,0,x-H);D.clamp()}function ot(I,x,D){--x;var H=D.t=this.t+I.t-x;for(D.s=0;--H>=0;)D[H]=0;for(H=Math.max(x-this.t,0);H<I.t;++H)D[this.t+H-x]=this.am(x-H,I[H],D,0,0,this.t+H-x);D.clamp(),D.drShiftTo(1,D)}function Xe(I){this.r2=o(),this.q3=o(),s.ONE.dlShiftTo(2*I.t,this.r2),this.mu=this.r2.divide(I),this.m=I}function ir(I){if(I.s<0||I.t>2*this.m.t)return I.mod(this.m);if(I.compareTo(this.m)<0)return I;var x=o();return I.copyTo(x),this.reduce(x),x}function fr(I){return I}function J(I){for(I.drShiftTo(this.m.t-1,this.r2),I.t>this.m.t+1&&(I.t=this.m.t+1,I.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);I.compareTo(this.r2)<0;)I.dAddOffset(1,this.m.t+1);for(I.subTo(this.r2,I);I.compareTo(this.m)>=0;)I.subTo(this.m,I)}function de(I,x){I.squareTo(x),this.reduce(x)}function fe(I,x,D){I.multiplyTo(x,D),this.reduce(D)}Xe.prototype.convert=ir,Xe.prototype.revert=fr,Xe.prototype.reduce=J,Xe.prototype.mulTo=fe,Xe.prototype.sqrTo=de;function ze(I,x){var D=I.bitLength(),H,q=u(1),$;if(D<=0)return q;D<18?H=1:D<48?H=3:D<144?H=4:D<768?H=5:H=6,D<8?$=new G(x):x.isEven()?$=new Xe(x):$=new le(x);var oe=new Array,ue=3,ct=H-1,zt=(1<<H)-1;if(oe[1]=$.convert(this),H>1){var Lr=o();for($.sqrTo(oe[1],Lr);ue<=zt;)oe[ue]=o(),$.mulTo(Lr,oe[ue-2],oe[ue]),ue+=2}var Ar=I.t-1,$n,za=!0,Zr=o(),qr;for(D=P(I[Ar])-1;Ar>=0;){for(D>=ct?$n=I[Ar]>>D-ct&zt:($n=(I[Ar]&(1<<D+1)-1)<<ct-D,Ar>0&&($n|=I[Ar-1]>>this.DB+D-ct)),ue=H;($n&1)==0;)$n>>=1,--ue;if((D-=ue)<0&&(D+=this.DB,--Ar),za)oe[$n].copyTo(q),za=!1;else{for(;ue>1;)$.sqrTo(q,Zr),$.sqrTo(Zr,q),ue-=2;ue>0?$.sqrTo(q,Zr):(qr=q,q=Zr,Zr=qr),$.mulTo(Zr,oe[$n],q)}for(;Ar>=0&&(I[Ar]&1<<D)==0;)$.sqrTo(q,Zr),qr=q,q=Zr,Zr=qr,--D<0&&(D=this.DB-1,--Ar)}return $.revert(q)}function Re(I){var x=this.s<0?this.negate():this.clone(),D=I.s<0?I.negate():I.clone();if(x.compareTo(D)<0){var H=x;x=D,D=H}var q=x.getLowestSetBit(),$=D.getLowestSetBit();if($<0)return x;for(q<$&&($=q),$>0&&(x.rShiftTo($,x),D.rShiftTo($,D));x.signum()>0;)(q=x.getLowestSetBit())>0&&x.rShiftTo(q,x),(q=D.getLowestSetBit())>0&&D.rShiftTo(q,D),x.compareTo(D)>=0?(x.subTo(D,x),x.rShiftTo(1,x)):(D.subTo(x,D),D.rShiftTo(1,D));return $>0&&D.lShiftTo($,D),D}function it(I){if(I<=0)return 0;var x=this.DV%I,D=this.s<0?I-1:0;if(this.t>0)if(x==0)D=this[0]%I;else for(var H=this.t-1;H>=0;--H)D=(x*D+this[H])%I;return D}function pe(I){var x=I.isEven();if(this.isEven()&&x||I.signum()==0)return s.ZERO;for(var D=I.clone(),H=this.clone(),q=u(1),$=u(0),oe=u(0),ue=u(1);D.signum()!=0;){for(;D.isEven();)D.rShiftTo(1,D),x?((!q.isEven()||!$.isEven())&&(q.addTo(this,q),$.subTo(I,$)),q.rShiftTo(1,q)):$.isEven()||$.subTo(I,$),$.rShiftTo(1,$);for(;H.isEven();)H.rShiftTo(1,H),x?((!oe.isEven()||!ue.isEven())&&(oe.addTo(this,oe),ue.subTo(I,ue)),oe.rShiftTo(1,oe)):ue.isEven()||ue.subTo(I,ue),ue.rShiftTo(1,ue);D.compareTo(H)>=0?(D.subTo(H,D),x&&q.subTo(oe,q),$.subTo(ue,$)):(H.subTo(D,H),x&&oe.subTo(q,oe),ue.subTo($,ue))}if(H.compareTo(s.ONE)!=0)return s.ZERO;if(ue.compareTo(I)>=0)return ue.subtract(I);if(ue.signum()<0)ue.addTo(I,ue);else return ue;return ue.signum()<0?ue.add(I):ue}var Ee=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],Te=(1<<26)/Ee[Ee.length-1];function at(I){var x,D=this.abs();if(D.t==1&&D[0]<=Ee[Ee.length-1]){for(x=0;x<Ee.length;++x)if(D[0]==Ee[x])return!0;return!1}if(D.isEven())return!1;for(x=1;x<Ee.length;){for(var H=Ee[x],q=x+1;q<Ee.length&&H<Te;)H*=Ee[q++];for(H=D.modInt(H);x<q;)if(H%Ee[x++]==0)return!1}return D.millerRabin(I)}function Yr(I){var x=this.subtract(s.ONE),D=x.getLowestSetBit();if(D<=0)return!1;var H=x.shiftRight(D);I=I+1>>1,I>Ee.length&&(I=Ee.length);for(var q=o(),$=0;$<I;++$){q.fromInt(Ee[Math.floor(Math.random()*Ee.length)]);var oe=q.modPow(H,this);if(oe.compareTo(s.ONE)!=0&&oe.compareTo(x)!=0){for(var ue=1;ue++<D&&oe.compareTo(x)!=0;)if(oe=oe.modPowInt(2,this),oe.compareTo(s.ONE)==0)return!1;if(oe.compareTo(x)!=0)return!1}}return!0}s.prototype.chunkSize=xt,s.prototype.toRadix=mt,s.prototype.fromRadix=Mr,s.prototype.fromNumber=Ie,s.prototype.bitwiseTo=Dt,s.prototype.changeBit=Kn,s.prototype.addTo=mi,s.prototype.dMultiply=ne,s.prototype.dAddOffset=Ce,s.prototype.multiplyLowerTo=st,s.prototype.multiplyUpperTo=ot,s.prototype.modInt=it,s.prototype.millerRabin=Yr,s.prototype.clone=Ct,s.prototype.intValue=rr,s.prototype.byteValue=dr,s.prototype.shortValue=Ur,s.prototype.signum=nt,s.prototype.toByteArray=Me,s.prototype.equals=be,s.prototype.min=Ve,s.prototype.max=At,s.prototype.and=Se,s.prototype.or=Jt,s.prototype.xor=Zn,s.prototype.andNot=qn,s.prototype.not=Ni,s.prototype.shiftLeft=nr,s.prototype.shiftRight=Wr,s.prototype.getLowestSetBit=Li,s.prototype.bitCount=Sr,s.prototype.testBit=Ro,s.prototype.setBit=pi,s.prototype.clearBit=hi,s.prototype.flipBit=Tn,s.prototype.add=ur,s.prototype.subtract=ji,s.prototype.multiply=wr,s.prototype.divide=Qn,s.prototype.remainder=j,s.prototype.divideAndRemainder=Q,s.prototype.modPow=ze,s.prototype.modInverse=pe,s.prototype.pow=Mt,s.prototype.gcd=Re,s.prototype.isProbablePrime=at,s.prototype.square=In,s.prototype.Barrett=Xe;var Cr,Nt,ft;function Ba(I){Nt[ft++]^=I&255,Nt[ft++]^=I>>8&255,Nt[ft++]^=I>>16&255,Nt[ft++]^=I>>24&255,ft>=Yd&&(ft-=Yd)}function Rs(){Ba(new Date().getTime())}if(Nt==null){Nt=new Array,ft=0;var sr;if(typeof window<"u"&&window.crypto){if(window.crypto.getRandomValues){var Fa=new Uint8Array(32);for(window.crypto.getRandomValues(Fa),sr=0;sr<32;++sr)Nt[ft++]=Fa[sr]}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var gi=window.crypto.random(32);for(sr=0;sr<gi.length;++sr)Nt[ft++]=gi.charCodeAt(sr)&255}}for(;ft<Yd;)sr=Math.floor(65536*Math.random()),Nt[ft++]=sr>>>8,Nt[ft++]=sr&255;ft=0,Rs()}function Ud(){if(Cr==null){for(Rs(),Cr=eE(),Cr.init(Nt),ft=0;ft<Nt.length;++ft)Nt[ft]=0;ft=0}return Cr.next()}function K_(I){var x;for(x=0;x<I.length;++x)I[x]=Ud()}function dm(){}dm.prototype.nextBytes=K_;function Wd(){this.i=0,this.j=0,this.S=new Array}function Q_(I){var x,D,H;for(x=0;x<256;++x)this.S[x]=x;for(D=0,x=0;x<256;++x)D=D+this.S[x]+I[x%I.length]&255,H=this.S[x],this.S[x]=this.S[D],this.S[D]=H;this.i=0,this.j=0}function $_(){var I;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,I=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=I,this.S[I+this.S[this.i]&255]}Wd.prototype.init=Q_,Wd.prototype.next=$_;function eE(){return new Wd}var Yd=256;t.exports={default:s,BigInteger:s,SecureRandom:dm}}).call(nk)}(Yc)),Yc.exports}var _u={},rv;function dd(){return rv||(rv=1,function(t){(function(){var e={not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function r(a){return i(o(a),arguments)}function n(a,c){return r.apply(null,[a].concat(c||[]))}function i(a,c){var l=1,d=a.length,p,m="",g,v,S,C,w,y,f,u;for(g=0;g<d;g++)if(typeof a[g]=="string")m+=a[g];else if(typeof a[g]=="object"){if(S=a[g],S.keys)for(p=c[l],v=0;v<S.keys.length;v++){if(p==null)throw new Error(r('[sprintf] Cannot access property "%s" of undefined value "%s"',S.keys[v],S.keys[v-1]));p=p[S.keys[v]]}else S.param_no?p=c[S.param_no]:p=c[l++];if(e.not_type.test(S.type)&&e.not_primitive.test(S.type)&&p instanceof Function&&(p=p()),e.numeric_arg.test(S.type)&&typeof p!="number"&&isNaN(p))throw new TypeError(r("[sprintf] expecting number but found %T",p));switch(e.number.test(S.type)&&(f=p>=0),S.type){case"b":p=parseInt(p,10).toString(2);break;case"c":p=String.fromCharCode(parseInt(p,10));break;case"d":case"i":p=parseInt(p,10);break;case"j":p=JSON.stringify(p,null,S.width?parseInt(S.width):0);break;case"e":p=S.precision?parseFloat(p).toExponential(S.precision):parseFloat(p).toExponential();break;case"f":p=S.precision?parseFloat(p).toFixed(S.precision):parseFloat(p);break;case"g":p=S.precision?String(Number(p.toPrecision(S.precision))):parseFloat(p);break;case"o":p=(parseInt(p,10)>>>0).toString(8);break;case"s":p=String(p),p=S.precision?p.substring(0,S.precision):p;break;case"t":p=String(!!p),p=S.precision?p.substring(0,S.precision):p;break;case"T":p=Object.prototype.toString.call(p).slice(8,-1).toLowerCase(),p=S.precision?p.substring(0,S.precision):p;break;case"u":p=parseInt(p,10)>>>0;break;case"v":p=p.valueOf(),p=S.precision?p.substring(0,S.precision):p;break;case"x":p=(parseInt(p,10)>>>0).toString(16);break;case"X":p=(parseInt(p,10)>>>0).toString(16).toUpperCase();break}e.json.test(S.type)?m+=p:(e.number.test(S.type)&&(!f||S.sign)?(u=f?"+":"-",p=p.toString().replace(e.sign,"")):u="",w=S.pad_char?S.pad_char==="0"?"0":S.pad_char.charAt(1):" ",y=S.width-(u+p).length,C=S.width&&y>0?w.repeat(y):"",m+=S.align?u+p+C:w==="0"?u+C+p:C+u+p)}return m}var s=Object.create(null);function o(a){if(s[a])return s[a];for(var c=a,l,d=[],p=0;c;){if((l=e.text.exec(c))!==null)d.push(l[0]);else if((l=e.modulo.exec(c))!==null)d.push("%");else if((l=e.placeholder.exec(c))!==null){if(l[2]){p|=1;var m=[],g=l[2],v=[];if((v=e.key.exec(g))!==null)for(m.push(v[1]);(g=g.substring(v[0].length))!=="";)if((v=e.key_access.exec(g))!==null)m.push(v[1]);else if((v=e.index_access.exec(g))!==null)m.push(v[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");l[2]=m}else p|=2;if(p===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");d.push({placeholder:l[0],param_no:l[1],keys:l[2],sign:l[3],pad_char:l[4],align:l[5],width:l[6],precision:l[7],type:l[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");c=c.substring(l[0].length)}return s[a]=d}t.sprintf=r,t.vsprintf=n,typeof window<"u"&&(window.sprintf=r,window.vsprintf=n)})()}(_u)),_u}var nv;function zw(){if(nv)return Kr;nv=1;var t=Kr&&Kr.__createBinding||(Object.create?function(l,d,p,m){m===void 0&&(m=p);var g=Object.getOwnPropertyDescriptor(d,p);(!g||("get"in g?!d.__esModule:g.writable||g.configurable))&&(g={enumerable:!0,get:function(){return d[p]}}),Object.defineProperty(l,m,g)}:function(l,d,p,m){m===void 0&&(m=p),l[m]=d[p]}),e=Kr&&Kr.__setModuleDefault||(Object.create?function(l,d){Object.defineProperty(l,"default",{enumerable:!0,value:d})}:function(l,d){l.default=d}),r=Kr&&Kr.__importStar||function(l){if(l&&l.__esModule)return l;var d={};if(l!=null)for(var p in l)p!=="default"&&Object.prototype.hasOwnProperty.call(l,p)&&t(d,l,p);return e(d,l),d};Object.defineProperty(Kr,"__esModule",{value:!0}),Kr.Address4=void 0;const n=r(jw()),i=r(Bw()),s=hh(),o=Fw(),a=dd();class c{constructor(d){this.groups=i.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=n.isCorrect(i.BITS),this.isInSubnet=n.isInSubnet,this.address=d;const p=i.RE_SUBNET_STRING.exec(d);if(p){if(this.parsedSubnet=p[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>i.BITS)throw new s.AddressError("Invalid subnet mask.");d=d.replace(i.RE_SUBNET_STRING,"")}this.addressMinusSuffix=d,this.parsedAddress=this.parse(d)}static isValid(d){try{return new c(d),!0}catch{return!1}}parse(d){const p=d.split(".");if(!d.match(i.RE_ADDRESS))throw new s.AddressError("Invalid IPv4 address.");return p}correctForm(){return this.parsedAddress.map(d=>parseInt(d,10)).join(".")}static fromHex(d){const p=d.replace(/:/g,"").padStart(8,"0"),m=[];let g;for(g=0;g<8;g+=2){const v=p.slice(g,g+2);m.push(parseInt(v,16))}return new c(m.join("."))}static fromInteger(d){return c.fromHex(d.toString(16))}static fromArpa(d){const m=d.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new c(m)}toHex(){return this.parsedAddress.map(d=>(0,a.sprintf)("%02x",parseInt(d,10))).join(":")}toArray(){return this.parsedAddress.map(d=>parseInt(d,10))}toGroup6(){const d=[];let p;for(p=0;p<i.GROUPS;p+=2){const m=(0,a.sprintf)("%02x%02x",parseInt(this.parsedAddress[p],10),parseInt(this.parsedAddress[p+1],10));d.push((0,a.sprintf)("%x",parseInt(m,16)))}return d.join(":")}bigInteger(){return new o.BigInteger(this.parsedAddress.map(d=>(0,a.sprintf)("%02x",parseInt(d,10))).join(""),16)}_startAddress(){return new o.BigInteger(this.mask()+"0".repeat(i.BITS-this.subnetMask),2)}startAddress(){return c.fromBigInteger(this._startAddress())}startAddressExclusive(){const d=new o.BigInteger("1");return c.fromBigInteger(this._startAddress().add(d))}_endAddress(){return new o.BigInteger(this.mask()+"1".repeat(i.BITS-this.subnetMask),2)}endAddress(){return c.fromBigInteger(this._endAddress())}endAddressExclusive(){const d=new o.BigInteger("1");return c.fromBigInteger(this._endAddress().subtract(d))}static fromBigInteger(d){return c.fromInteger(parseInt(d.toString(),10))}mask(d){return d===void 0&&(d=this.subnetMask),this.getBitsBase2(0,d)}getBitsBase2(d,p){return this.binaryZeroPad().slice(d,p)}reverseForm(d){d||(d={});const p=this.correctForm().split(".").reverse().join(".");return d.omitSuffix?p:(0,a.sprintf)("%s.in-addr.arpa.",p)}isMulticast(){return this.isInSubnet(new c("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(i.BITS,"0")}groupForV6(){const d=this.parsedAddress;return this.address.replace(i.RE_ADDRESS,(0,a.sprintf)('<span class="hover-group group-v4 group-6">%s</span>.<span class="hover-group group-v4 group-7">%s</span>',d.slice(0,2).join("."),d.slice(2,4).join(".")))}}return Kr.Address4=c,Kr}var $r={},pt={},iv;function Hw(){return iv||(iv=1,Object.defineProperty(pt,"__esModule",{value:!0}),pt.RE_URL_WITH_PORT=pt.RE_URL=pt.RE_ZONE_STRING=pt.RE_SUBNET_STRING=pt.RE_BAD_ADDRESS=pt.RE_BAD_CHARACTERS=pt.TYPES=pt.SCOPES=pt.GROUPS=pt.BITS=void 0,pt.BITS=128,pt.GROUPS=8,pt.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"},pt.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"},pt.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi,pt.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi,pt.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/,pt.RE_ZONE_STRING=/%.*$/,pt.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/),pt.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)),pt}var en={},sv;function Vw(){if(sv)return en;sv=1,Object.defineProperty(en,"__esModule",{value:!0}),en.simpleGroup=en.spanLeadingZeroes=en.spanAll=en.spanAllZeroes=void 0;const t=dd();function e(o){return o.replace(/(0+)/g,'<span class="zero">$1</span>')}en.spanAllZeroes=e;function r(o,a=0){return o.split("").map((l,d)=>(0,t.sprintf)('<span class="digit value-%s position-%d">%s</span>',l,d+a,e(l))).join("")}en.spanAll=r;function n(o){return o.replace(/^(0+)/,'<span class="zero">$1</span>')}function i(o){return o.split(":").map(c=>n(c)).join(":")}en.spanLeadingZeroes=i;function s(o,a=0){return o.split(":").map((l,d)=>/group-v4/.test(l)?l:(0,t.sprintf)('<span class="hover-group group-%d">%s</span>',d+a,n(l)))}return en.simpleGroup=s,en}var Lt={},ov;function ik(){if(ov)return Lt;ov=1;var t=Lt&&Lt.__createBinding||(Object.create?function(l,d,p,m){m===void 0&&(m=p);var g=Object.getOwnPropertyDescriptor(d,p);(!g||("get"in g?!d.__esModule:g.writable||g.configurable))&&(g={enumerable:!0,get:function(){return d[p]}}),Object.defineProperty(l,m,g)}:function(l,d,p,m){m===void 0&&(m=p),l[m]=d[p]}),e=Lt&&Lt.__setModuleDefault||(Object.create?function(l,d){Object.defineProperty(l,"default",{enumerable:!0,value:d})}:function(l,d){l.default=d}),r=Lt&&Lt.__importStar||function(l){if(l&&l.__esModule)return l;var d={};if(l!=null)for(var p in l)p!=="default"&&Object.prototype.hasOwnProperty.call(l,p)&&t(d,l,p);return e(d,l),d};Object.defineProperty(Lt,"__esModule",{value:!0}),Lt.possibleElisions=Lt.simpleRegularExpression=Lt.ADDRESS_BOUNDARY=Lt.padGroup=Lt.groupPossibilities=void 0;const n=r(Hw()),i=dd();function s(l){return(0,i.sprintf)("(%s)",l.join("|"))}Lt.groupPossibilities=s;function o(l){return l.length<4?(0,i.sprintf)("0{0,%d}%s",4-l.length,l):l}Lt.padGroup=o,Lt.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function a(l){const d=[];l.forEach((m,g)=>{parseInt(m,16)===0&&d.push(g)});const p=d.map(m=>l.map((g,v)=>{if(v===m){const S=v===0||v===n.GROUPS-1?":":"";return s([o(g),S])}return o(g)}).join(":"));return p.push(l.map(o).join(":")),s(p)}Lt.simpleRegularExpression=a;function c(l,d,p){const m=d?"":":",g=p?"":":",v=[];!d&&!p&&v.push("::"),d&&p&&v.push(""),(p&&!d||!p&&d)&&v.push(":"),v.push((0,i.sprintf)("%s(:0{1,4}){1,%d}",m,l-1)),v.push((0,i.sprintf)("(0{1,4}:){1,%d}%s",l-1,g)),v.push((0,i.sprintf)("(0{1,4}:){%d}0{1,4}",l-1));for(let S=1;S<l-1;S++)for(let C=1;C<l-S;C++)v.push((0,i.sprintf)("(0{1,4}:){%d}:(0{1,4}:){%d}0{1,4}",C,l-C-S-1));return s(v)}return Lt.possibleElisions=c,Lt}var av;function sk(){if(av)return $r;av=1;var t=$r&&$r.__createBinding||(Object.create?function(f,u,h,b){b===void 0&&(b=h);var A=Object.getOwnPropertyDescriptor(u,h);(!A||("get"in A?!u.__esModule:A.writable||A.configurable))&&(A={enumerable:!0,get:function(){return u[h]}}),Object.defineProperty(f,b,A)}:function(f,u,h,b){b===void 0&&(b=h),f[b]=u[h]}),e=$r&&$r.__setModuleDefault||(Object.create?function(f,u){Object.defineProperty(f,"default",{enumerable:!0,value:u})}:function(f,u){f.default=u}),r=$r&&$r.__importStar||function(f){if(f&&f.__esModule)return f;var u={};if(f!=null)for(var h in f)h!=="default"&&Object.prototype.hasOwnProperty.call(f,h)&&t(u,f,h);return e(u,f),u};Object.defineProperty($r,"__esModule",{value:!0}),$r.Address6=void 0;const n=r(jw()),i=r(Bw()),s=r(Hw()),o=r(Vw()),a=zw(),c=ik(),l=hh(),d=Fw(),p=dd();function m(f){if(!f)throw new Error("Assertion failed.")}function g(f){const u=/(\d+)(\d{3})/;for(;u.test(f);)f=f.replace(u,"$1,$2");return f}function v(f){return f=f.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),f=f.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),f}function S(f,u){const h=[],b=[];let A;for(A=0;A<f.length;A++)A<u[0]?h.push(f[A]):A>u[1]&&b.push(f[A]);return h.concat(["compact"]).concat(b)}function C(f){return(0,p.sprintf)("%04x",parseInt(f,16))}function w(f){return f&255}class y{constructor(u,h){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=n.isInSubnet,this.isCorrect=n.isCorrect(s.BITS),h===void 0?this.groups=s.GROUPS:this.groups=h,this.address=u;const b=s.RE_SUBNET_STRING.exec(u);if(b){if(this.parsedSubnet=b[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>s.BITS)throw new l.AddressError("Invalid subnet mask.");u=u.replace(s.RE_SUBNET_STRING,"")}else if(/\//.test(u))throw new l.AddressError("Invalid subnet mask.");const A=s.RE_ZONE_STRING.exec(u);A&&(this.zone=A[0],u=u.replace(s.RE_ZONE_STRING,"")),this.addressMinusSuffix=u,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(u){try{return new y(u),!0}catch{return!1}}static fromBigInteger(u){const h=u.toString(16).padStart(32,"0"),b=[];let A;for(A=0;A<s.GROUPS;A++)b.push(h.slice(A*4,(A+1)*4));return new y(b.join(":"))}static fromURL(u){let h,b=null,A;if(u.indexOf("[")!==-1&&u.indexOf("]:")!==-1){if(A=s.RE_URL_WITH_PORT.exec(u),A===null)return{error:"failed to parse address with port",address:null,port:null};h=A[1],b=A[2]}else if(u.indexOf("/")!==-1){if(u=u.replace(/^[a-z0-9]+:\/\//,""),A=s.RE_URL.exec(u),A===null)return{error:"failed to parse address from URL",address:null,port:null};h=A[1]}else h=u;return b?(b=parseInt(b,10),(b<0||b>65536)&&(b=null)):b=null,{address:new y(h),port:b}}static fromAddress4(u){const h=new a.Address4(u),b=s.BITS-(i.BITS-h.subnetMask);return new y(`::ffff:${h.correctForm()}/${b}`)}static fromArpa(u){let h=u.replace(/(\.ip6\.arpa)?\.$/,"");const b=7;if(h.length!==63)throw new l.AddressError("Invalid 'ip6.arpa' form.");const A=h.split(".").reverse();for(let R=b;R>0;R--){const _=R*4;A.splice(_,0,":")}return h=A.join(""),new y(h)}microsoftTranscription(){return(0,p.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(u=this.subnetMask){return this.getBitsBase2(0,u)}possibleSubnets(u=128){const h=s.BITS-this.subnetMask,b=Math.abs(u-s.BITS),A=h-b;return A<0?"0":g(new d.BigInteger("2",10).pow(A).toString(10))}_startAddress(){return new d.BigInteger(this.mask()+"0".repeat(s.BITS-this.subnetMask),2)}startAddress(){return y.fromBigInteger(this._startAddress())}startAddressExclusive(){const u=new d.BigInteger("1");return y.fromBigInteger(this._startAddress().add(u))}_endAddress(){return new d.BigInteger(this.mask()+"1".repeat(s.BITS-this.subnetMask),2)}endAddress(){return y.fromBigInteger(this._endAddress())}endAddressExclusive(){const u=new d.BigInteger("1");return y.fromBigInteger(this._endAddress().subtract(u))}getScope(){let u=s.SCOPES[this.getBits(12,16).intValue()];return this.getType()==="Global unicast"&&u!=="Link local"&&(u="Global"),u||"Unknown"}getType(){for(const u of Object.keys(s.TYPES))if(this.isInSubnet(new y(u)))return s.TYPES[u];return"Global unicast"}getBits(u,h){return new d.BigInteger(this.getBitsBase2(u,h),2)}getBitsBase2(u,h){return this.binaryZeroPad().slice(u,h)}getBitsBase16(u,h){const b=h-u;if(b%4!==0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(u,h).toString(16).padStart(b/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,s.BITS)}reverseForm(u){u||(u={});const h=Math.floor(this.subnetMask/4),b=this.canonicalForm().replace(/:/g,"").split("").slice(0,h).reverse().join(".");return h>0?u.omitSuffix?b:(0,p.sprintf)("%s.ip6.arpa.",b):u.omitSuffix?"":"ip6.arpa."}correctForm(){let u,h=[],b=0;const A=[];for(u=0;u<this.parsedAddress.length;u++){const E=parseInt(this.parsedAddress[u],16);E===0&&b++,E!==0&&b>0&&(b>1&&A.push([u-b,u-1]),b=0)}b>1&&A.push([this.parsedAddress.length-b,this.parsedAddress.length-1]);const R=A.map(E=>E[1]-E[0]+1);if(A.length>0){const E=R.indexOf(Math.max(...R));h=S(this.parsedAddress,A[E])}else h=this.parsedAddress;for(u=0;u<h.length;u++)h[u]!=="compact"&&(h[u]=parseInt(h[u],16).toString(16));let _=h.join(":");return _=_.replace(/^compact$/,"::"),_=_.replace(/^compact|compact$/,":"),_=_.replace(/compact/,""),_}binaryZeroPad(){return this.bigInteger().toString(2).padStart(s.BITS,"0")}parse4in6(u){const h=u.split(":"),A=h.slice(-1)[0].match(i.RE_ADDRESS);if(A){this.parsedAddress4=A[0],this.address4=new a.Address4(this.parsedAddress4);for(let R=0;R<this.address4.groups;R++)if(/^0[0-9]+/.test(this.address4.parsedAddress[R]))throw new l.AddressError("IPv4 addresses can't have leading zeroes.",u.replace(i.RE_ADDRESS,this.address4.parsedAddress.map(v).join(".")));this.v4=!0,h[h.length-1]=this.address4.toGroup6(),u=h.join(":")}return u}parse(u){u=this.parse4in6(u);const h=u.match(s.RE_BAD_CHARACTERS);if(h)throw new l.AddressError((0,p.sprintf)("Bad character%s detected in address: %s",h.length>1?"s":"",h.join("")),u.replace(s.RE_BAD_CHARACTERS,'<span class="parse-error">$1</span>'));const b=u.match(s.RE_BAD_ADDRESS);if(b)throw new l.AddressError((0,p.sprintf)("Address failed regex: %s",b.join("")),u.replace(s.RE_BAD_ADDRESS,'<span class="parse-error">$1</span>'));let A=[];const R=u.split("::");if(R.length===2){let _=R[0].split(":"),E=R[1].split(":");_.length===1&&_[0]===""&&(_=[]),E.length===1&&E[0]===""&&(E=[]);const P=this.groups-(_.length+E.length);if(!P)throw new l.AddressError("Error parsing groups");this.elidedGroups=P,this.elisionBegin=_.length,this.elisionEnd=_.length+this.elidedGroups,A=A.concat(_);for(let T=0;T<P;T++)A.push("0");A=A.concat(E)}else if(R.length===1)A=u.split(":"),this.elidedGroups=0;else throw new l.AddressError("Too many :: groups found");if(A=A.map(_=>(0,p.sprintf)("%x",parseInt(_,16))),A.length!==this.groups)throw new l.AddressError("Incorrect number of groups found");return A}canonicalForm(){return this.parsedAddress.map(C).join(":")}decimal(){return this.parsedAddress.map(u=>(0,p.sprintf)("%05d",parseInt(u,16))).join(":")}bigInteger(){return new d.BigInteger(this.parsedAddress.map(C).join(""),16)}to4(){const u=this.binaryZeroPad().split("");return a.Address4.fromHex(new d.BigInteger(u.slice(96,128).join(""),2).toString(16))}to4in6(){const u=this.to4(),b=new y(this.parsedAddress.slice(0,6).join(":"),6).correctForm();let A="";return/:$/.test(b)||(A=":"),b+A+u.address}inspectTeredo(){const u=this.getBitsBase16(0,32),h=this.getBits(80,96).xor(new d.BigInteger("ffff",16)).toString(),b=a.Address4.fromHex(this.getBitsBase16(32,64)),A=a.Address4.fromHex(this.getBits(96,128).xor(new d.BigInteger("ffffffff",16)).toString(16)),R=this.getBits(64,80),_=this.getBitsBase2(64,80),E=R.testBit(15),P=R.testBit(14),T=R.testBit(8),k=R.testBit(9),F=new d.BigInteger(_.slice(2,6)+_.slice(8,16),2).toString(10);return{prefix:(0,p.sprintf)("%s:%s",u.slice(0,4),u.slice(4,8)),server4:b.address,client4:A.address,flags:_,coneNat:E,microsoft:{reserved:P,universalLocal:k,groupIndividual:T,nonce:F},udpPort:h}}inspect6to4(){const u=this.getBitsBase16(0,16),h=a.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,p.sprintf)("%s",u.slice(0,4)),gateway:h.address}}to6to4(){if(!this.is4())return null;const u=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new y(u)}toByteArray(){const u=this.bigInteger().toByteArray();return u.length===17&&u[0]===0?u.slice(1):u}toUnsignedByteArray(){return this.toByteArray().map(w)}static fromByteArray(u){return this.fromUnsignedByteArray(u.map(w))}static fromUnsignedByteArray(u){const h=new d.BigInteger("256",10);let b=new d.BigInteger("0",10),A=new d.BigInteger("1",10);for(let R=u.length-1;R>=0;R--)b=b.add(A.multiply(new d.BigInteger(u[R].toString(10),10))),A=A.multiply(h);return y.fromBigInteger(b)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return this.getBitsBase2(0,64)==="1111111010000000000000000000000000000000000000000000000000000000"}isMulticast(){return this.getType()==="Multicast"}is4(){return this.v4}isTeredo(){return this.isInSubnet(new y("2001::/32"))}is6to4(){return this.isInSubnet(new y("2002::/16"))}isLoopback(){return this.getType()==="Loopback"}href(u){return u===void 0?u="":u=(0,p.sprintf)(":%s",u),(0,p.sprintf)("http://[%s]%s/",this.correctForm(),u)}link(u){u||(u={}),u.className===void 0&&(u.className=""),u.prefix===void 0&&(u.prefix="/#address="),u.v4===void 0&&(u.v4=!1);let h=this.correctForm;return u.v4&&(h=this.to4in6),u.className?(0,p.sprintf)('<a href="%1$s%2$s" class="%3$s">%2$s</a>',u.prefix,h.call(this),u.className):(0,p.sprintf)('<a href="%1$s%2$s">%2$s</a>',u.prefix,h.call(this))}group(){if(this.elidedGroups===0)return o.simpleGroup(this.address).join(":");m(typeof this.elidedGroups=="number"),m(typeof this.elisionBegin=="number");const u=[],[h,b]=this.address.split("::");h.length?u.push(...o.simpleGroup(h)):u.push("");const A=["hover-group"];for(let R=this.elisionBegin;R<this.elisionBegin+this.elidedGroups;R++)A.push((0,p.sprintf)("group-%d",R));return u.push((0,p.sprintf)('<span class="%s"></span>',A.join(" "))),b.length?u.push(...o.simpleGroup(b,this.elisionEnd)):u.push(""),this.is4()&&(m(this.address4 instanceof a.Address4),u.pop(),u.push(this.address4.groupForV6())),u.join(":")}regularExpressionString(u=!1){let h=[];const b=new y(this.correctForm());if(b.elidedGroups===0)h.push((0,c.simpleRegularExpression)(b.parsedAddress));else if(b.elidedGroups===s.GROUPS)h.push((0,c.possibleElisions)(s.GROUPS));else{const A=b.address.split("::");A[0].length&&h.push((0,c.simpleRegularExpression)(A[0].split(":"))),m(typeof b.elidedGroups=="number"),h.push((0,c.possibleElisions)(b.elidedGroups,A[0].length!==0,A[1].length!==0)),A[1].length&&h.push((0,c.simpleRegularExpression)(A[1].split(":"))),h=[h.join(":")]}return u||(h=["(?=^|",c.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...h,")(?=[^\\w\\:]|",c.ADDRESS_BOUNDARY,"|$)"]),h.join("")}regularExpression(u=!1){return new RegExp(this.regularExpressionString(u),"i")}}return $r.Address6=y,$r}var cv;function ok(){return cv||(cv=1,function(t){var e=ei&&ei.__createBinding||(Object.create?function(c,l,d,p){p===void 0&&(p=d);var m=Object.getOwnPropertyDescriptor(l,d);(!m||("get"in m?!l.__esModule:m.writable||m.configurable))&&(m={enumerable:!0,get:function(){return l[d]}}),Object.defineProperty(c,p,m)}:function(c,l,d,p){p===void 0&&(p=d),c[p]=l[d]}),r=ei&&ei.__setModuleDefault||(Object.create?function(c,l){Object.defineProperty(c,"default",{enumerable:!0,value:l})}:function(c,l){c.default=l}),n=ei&&ei.__importStar||function(c){if(c&&c.__esModule)return c;var l={};if(c!=null)for(var d in c)d!=="default"&&Object.prototype.hasOwnProperty.call(c,d)&&e(l,c,d);return r(l,c),l};Object.defineProperty(t,"__esModule",{value:!0}),t.v6=t.AddressError=t.Address6=t.Address4=void 0;const i=zw();Object.defineProperty(t,"Address4",{enumerable:!0,get:function(){return i.Address4}});const s=sk();Object.defineProperty(t,"Address6",{enumerable:!0,get:function(){return s.Address6}});const o=hh();Object.defineProperty(t,"AddressError",{enumerable:!0,get:function(){return o.AddressError}});const a=n(Vw());t.v6={helpers:a}}(ei)),ei}var ak=ok(),Zc={exports:{}},ck=Zc.exports,lv;function lk(){return lv||(lv=1,function(t){(function(){var e,r,n,i,s,o,a,c,l;r={},c=this,t!==null&&t.exports?t.exports=r:c.ipaddr=r,a=function(d,p,m,g){var v,S;if(d.length!==p.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(v=0;g>0;){if(S=m-g,S<0&&(S=0),d[v]>>S!==p[v]>>S)return!1;g-=m,v+=1}return!0},r.subnetMatch=function(d,p,m){var g,v,S,C,w;m==null&&(m="unicast");for(S in p)for(C=p[S],C[0]&&!(C[0]instanceof Array)&&(C=[C]),g=0,v=C.length;g<v;g++)if(w=C[g],d.kind()===w[0].kind()&&d.match.apply(d,w))return S;return m},r.IPv4=function(){function d(p){var m,g,v;if(p.length!==4)throw new Error("ipaddr: ipv4 octet count should be 4");for(m=0,g=p.length;m<g;m++)if(v=p[m],!(0<=v&&v<=255))throw new Error("ipaddr: ipv4 octet should fit in 8 bits");this.octets=p}return d.prototype.kind=function(){return"ipv4"},d.prototype.toString=function(){return this.octets.join(".")},d.prototype.toNormalizedString=function(){return this.toString()},d.prototype.toByteArray=function(){return this.octets.slice(0)},d.prototype.match=function(p,m){var g;if(m===void 0&&(g=p,p=g[0],m=g[1]),p.kind()!=="ipv4")throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one");return a(this.octets,p.octets,8,m)},d.prototype.SpecialRanges={unspecified:[[new d([0,0,0,0]),8]],broadcast:[[new d([255,255,255,255]),32]],multicast:[[new d([224,0,0,0]),4]],linkLocal:[[new d([169,254,0,0]),16]],loopback:[[new d([127,0,0,0]),8]],carrierGradeNat:[[new d([100,64,0,0]),10]],private:[[new d([10,0,0,0]),8],[new d([172,16,0,0]),12],[new d([192,168,0,0]),16]],reserved:[[new d([192,0,0,0]),24],[new d([192,0,2,0]),24],[new d([192,88,99,0]),24],[new d([198,51,100,0]),24],[new d([203,0,113,0]),24],[new d([240,0,0,0]),4]]},d.prototype.range=function(){return r.subnetMatch(this,this.SpecialRanges)},d.prototype.toIPv4MappedAddress=function(){return r.IPv6.parse("::ffff:"+this.toString())},d.prototype.prefixLengthFromSubnetMask=function(){var p,m,g,v,S,C,w;for(w={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0},p=0,S=!1,m=g=3;g>=0;m=g+=-1)if(v=this.octets[m],v in w){if(C=w[v],S&&C!==0)return null;C!==8&&(S=!0),p+=C}else return null;return 32-p},d}(),n="(0?\\d+|0x[a-f0-9]+)",i={fourOctet:new RegExp("^"+n+"\\."+n+"\\."+n+"\\."+n+"$","i"),longValue:new RegExp("^"+n+"$","i")},r.IPv4.parser=function(d){var p,m,g,v,S;if(m=function(C){return C[0]==="0"&&C[1]!=="x"?parseInt(C,8):parseInt(C)},p=d.match(i.fourOctet))return function(){var C,w,y,f;for(y=p.slice(1,6),f=[],C=0,w=y.length;C<w;C++)g=y[C],f.push(m(g));return f}();if(p=d.match(i.longValue)){if(S=m(p[1]),S>4294967295||S<0)throw new Error("ipaddr: address outside defined range");return function(){var C,w;for(w=[],v=C=0;C<=24;v=C+=8)w.push(S>>v&255);return w}().reverse()}else return null},r.IPv6=function(){function d(p,m){var g,v,S,C,w,y;if(p.length===16)for(this.parts=[],g=v=0;v<=14;g=v+=2)this.parts.push(p[g]<<8|p[g+1]);else if(p.length===8)this.parts=p;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(y=this.parts,S=0,C=y.length;S<C;S++)if(w=y[S],!(0<=w&&w<=65535))throw new Error("ipaddr: ipv6 part should fit in 16 bits");m&&(this.zoneId=m)}return d.prototype.kind=function(){return"ipv6"},d.prototype.toString=function(){return this.toNormalizedString().replace(/((^|:)(0(:|$))+)/,"::")},d.prototype.toRFC5952String=function(){var p,m,g,v,S;for(v=/((^|:)(0(:|$)){2,})/g,S=this.toNormalizedString(),p=0,m=-1;g=v.exec(S);)g[0].length>m&&(p=g.index,m=g[0].length);return m<0?S:S.substring(0,p)+"::"+S.substring(p+m)},d.prototype.toByteArray=function(){var p,m,g,v,S;for(p=[],S=this.parts,m=0,g=S.length;m<g;m++)v=S[m],p.push(v>>8),p.push(v&255);return p},d.prototype.toNormalizedString=function(){var p,m,g;return p=(function(){var v,S,C,w;for(C=this.parts,w=[],v=0,S=C.length;v<S;v++)m=C[v],w.push(m.toString(16));return w}).call(this).join(":"),g="",this.zoneId&&(g="%"+this.zoneId),p+g},d.prototype.toFixedLengthString=function(){var p,m,g;return p=(function(){var v,S,C,w;for(C=this.parts,w=[],v=0,S=C.length;v<S;v++)m=C[v],w.push(m.toString(16).padStart(4,"0"));return w}).call(this).join(":"),g="",this.zoneId&&(g="%"+this.zoneId),p+g},d.prototype.match=function(p,m){var g;if(m===void 0&&(g=p,p=g[0],m=g[1]),p.kind()!=="ipv6")throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one");return a(this.parts,p.parts,16,m)},d.prototype.SpecialRanges={unspecified:[new d([0,0,0,0,0,0,0,0]),128],linkLocal:[new d([65152,0,0,0,0,0,0,0]),10],multicast:[new d([65280,0,0,0,0,0,0,0]),8],loopback:[new d([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new d([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new d([0,0,0,0,0,65535,0,0]),96],rfc6145:[new d([0,0,0,0,65535,0,0,0]),96],rfc6052:[new d([100,65435,0,0,0,0,0,0]),96],"6to4":[new d([8194,0,0,0,0,0,0,0]),16],teredo:[new d([8193,0,0,0,0,0,0,0]),32],reserved:[[new d([8193,3512,0,0,0,0,0,0]),32]]},d.prototype.range=function(){return r.subnetMatch(this,this.SpecialRanges)},d.prototype.isIPv4MappedAddress=function(){return this.range()==="ipv4Mapped"},d.prototype.toIPv4Address=function(){var p,m,g;if(!this.isIPv4MappedAddress())throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4");return g=this.parts.slice(-2),p=g[0],m=g[1],new r.IPv4([p>>8,p&255,m>>8,m&255])},d.prototype.prefixLengthFromSubnetMask=function(){var p,m,g,v,S,C,w;for(w={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},p=0,S=!1,m=g=7;g>=0;m=g+=-1)if(v=this.parts[m],v in w){if(C=w[v],S&&C!==0)return null;C!==16&&(S=!0),p+=C}else return null;return 128-p},d}(),s="(?:[0-9a-f]+::?)+",l="%[0-9a-z]{1,}",o={zoneIndex:new RegExp(l,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+l+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(n+"\\."+n+"\\."+n+"\\."+n)+("("+l+")?$"),"i")},e=function(d,p){var m,g,v,S,C,w;if(d.indexOf("::")!==d.lastIndexOf("::"))return null;for(w=(d.match(o.zoneIndex)||[])[0],w&&(w=w.substring(1),d=d.replace(/%.+$/,"")),m=0,g=-1;(g=d.indexOf(":",g+1))>=0;)m++;if(d.substr(0,2)==="::"&&m--,d.substr(-2,2)==="::"&&m--,m>p)return null;for(C=p-m,S=":";C--;)S+="0:";return d=d.replace("::",S),d[0]===":"&&(d=d.slice(1)),d[d.length-1]===":"&&(d=d.slice(0,-1)),p=function(){var y,f,u,h;for(u=d.split(":"),h=[],y=0,f=u.length;y<f;y++)v=u[y],h.push(parseInt(v,16));return h}(),{parts:p,zoneId:w}},r.IPv6.parser=function(d){var p,m,g,v,S,C,w;if(o.native.test(d))return e(d,8);if((v=d.match(o.transitional))&&(w=v[6]||"",p=e(v[1].slice(0,-1)+w,6),p.parts)){for(C=[parseInt(v[2]),parseInt(v[3]),parseInt(v[4]),parseInt(v[5])],m=0,g=C.length;m<g;m++)if(S=C[m],!(0<=S&&S<=255))return null;return p.parts.push(C[0]<<8|C[1]),p.parts.push(C[2]<<8|C[3]),{parts:p.parts,zoneId:p.zoneId}}return null},r.IPv4.isIPv4=r.IPv6.isIPv6=function(d){return this.parser(d)!==null},r.IPv4.isValid=function(d){try{return new this(this.parser(d)),!0}catch{return!1}},r.IPv4.isValidFourPartDecimal=function(d){return!!(r.IPv4.isValid(d)&&d.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},r.IPv6.isValid=function(d){var p;if(typeof d=="string"&&d.indexOf(":")===-1)return!1;try{return p=this.parser(d),new this(p.parts,p.zoneId),!0}catch{return!1}},r.IPv4.parse=function(d){var p;if(p=this.parser(d),p===null)throw new Error("ipaddr: string is not formatted like ip address");return new this(p)},r.IPv6.parse=function(d){var p;if(p=this.parser(d),p.parts===null)throw new Error("ipaddr: string is not formatted like ip address");return new this(p.parts,p.zoneId)},r.IPv4.parseCIDR=function(d){var p,m,g;if((m=d.match(/^(.+)\/(\d+)$/))&&(p=parseInt(m[2]),p>=0&&p<=32))return g=[this.parse(m[1]),p],Object.defineProperty(g,"toString",{value:function(){return this.join("/")}}),g;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},r.IPv4.subnetMaskFromPrefixLength=function(d){var p,m,g;if(d=parseInt(d),d<0||d>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(g=[0,0,0,0],m=0,p=Math.floor(d/8);m<p;)g[m]=255,m++;return p<4&&(g[p]=Math.pow(2,d%8)-1<<8-d%8),new this(g)},r.IPv4.broadcastAddressFromCIDR=function(d){var p,m,g,v,S;try{for(p=this.parseCIDR(d),g=p[0].toByteArray(),S=this.subnetMaskFromPrefixLength(p[1]).toByteArray(),v=[],m=0;m<4;)v.push(parseInt(g[m],10)|parseInt(S[m],10)^255),m++;return new this(v)}catch{throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},r.IPv4.networkAddressFromCIDR=function(d){var p,m,g,v,S;try{for(p=this.parseCIDR(d),g=p[0].toByteArray(),S=this.subnetMaskFromPrefixLength(p[1]).toByteArray(),v=[],m=0;m<4;)v.push(parseInt(g[m],10)&parseInt(S[m],10)),m++;return new this(v)}catch{throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},r.IPv6.parseCIDR=function(d){var p,m,g;if((m=d.match(/^(.+)\/(\d+)$/))&&(p=parseInt(m[2]),p>=0&&p<=128))return g=[this.parse(m[1]),p],Object.defineProperty(g,"toString",{value:function(){return this.join("/")}}),g;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},r.isValid=function(d){return r.IPv6.isValid(d)||r.IPv4.isValid(d)},r.parse=function(d){if(r.IPv6.isValid(d))return r.IPv6.parse(d);if(r.IPv4.isValid(d))return r.IPv4.parse(d);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},r.parseCIDR=function(d){try{return r.IPv6.parseCIDR(d)}catch{try{return r.IPv4.parseCIDR(d)}catch{throw new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},r.fromByteArray=function(d){var p;if(p=d.length,p===4)return new r.IPv4(d);if(p===16)return new r.IPv6(d);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},r.process=function(d){var p;return p=this.parse(d),p.kind()==="ipv6"&&p.isIPv4MappedAddress()?p.toIPv4Address():p}}).call(ck)}(Zc)),Zc.exports}var Eu,dv;function dk(){if(dv)return Eu;dv=1;var t=lk();Eu=e;function e(n,i){if(typeof i=="string")return r(n,i);if(typeof i=="object"){for(var s=!1,o=0;o<i.length;o++)if(r(n,i[o])){s=!0;break}return s}}function r(n,i){try{var s=t.process(n);if(i.indexOf("/")===-1){var o=t.process(i);return s.kind()==="ipv6"&&o.kind()==="ipv6"?s.toNormalizedString()===o.toNormalizedString():s.toString()==o.toString()}else{var a=t.parseCIDR(i);return s.match(a)}}catch{return!1}}return Eu}var Pu,uv;function uk(){if(uv)return Pu;uv=1;var t=dk(),e=/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/,r=["0.0.0.0/8","10.0.0.0/8","100.64.0.0/10","127.0.0.0/8","169.254.0.0/16","172.16.0.0/12","192.0.0.0/24","192.0.2.0/24","192.168.0.0/16","198.18.0.0/15","198.51.100.0/24","203.0.113.0/24","224.0.0.0/3"],n=["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16"];function i(s){var o=[],a={originalIp:s,boiledIp:!1,isValid:!1,isBogon:!1,isApipa:!1,isMulticast:!1,isRfc1918:!1,isPublicIp:!1};if(e.test(s)){a.isValid=!0;for(var c=s.split("."),l=0;l<4;l++)o.push(parseInt(c[l],10));a.boiledIp=o.join("."),t(a.boiledIp,r)&&(a.isBogon=!0),t(a.boiledIp,"169.254.0.0/16")&&(a.isApipa=!0),t(a.boiledIp,"224.0.0.0/4")&&(a.isMulticast=!0),t(a.boiledIp,n)?a.isRfc1918=!0:a.isBogon===!1&&(a.isPublicIp=!0)}return a}return Pu=i,Pu}var fk=uk();const pk=Xn(fk);var nc={exports:{}},fv;function hk(){if(fv)return nc.exports;fv=1;for(var t=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[0-9a-f]{4}-[0-9a-f]{12}$/i,e=[],r=0;r<256;r++)e[r]=(r+256).toString(16).substr(1);function n(s,o){var a=0,c=e;return c[s[a++]]+c[s[a++]]+c[s[a++]]+c[s[a++]]+"-"+c[s[a++]]+c[s[a++]]+"-"+c[s[a++]]+c[s[a++]]+"-"+c[s[a++]]+c[s[a++]]+"-"+c[s[a++]]+c[s[a++]]+c[s[a++]]+c[s[a++]]+c[s[a++]]+c[s[a++]]}nc.exports=function(s,o){var a;if(Buffer.isBuffer(s))a=n(s);else if(Object.prototype.toString.call(s)==="[object String]")a=s;else return!1;if(a=a.toLowerCase(),!t.test(a))return!1;if(o===void 0)o=i(a);else if(i(a)!==o)return!1;switch(o){case 1:case 2:return!0;case 3:case 4:case 5:return["8","9","a","b"].indexOf(a.charAt(19))!==-1;default:throw new Error("Invalid version provided.")}};var i=nc.exports.version=function(s){return s.charAt(14)|0};return nc.exports}var mk=hk();const gk=Xn(mk);var tn={},ic={exports:{}},Tu,pv;function vk(){if(pv)return Tu;pv=1;var t=1e3,e=t*60,r=e*60,n=r*24,i=n*7,s=n*365.25;Tu=function(d,p){p=p||{};var m=typeof d;if(m==="string"&&d.length>0)return o(d);if(m==="number"&&isFinite(d))return p.long?c(d):a(d);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(d))};function o(d){if(d=String(d),!(d.length>100)){var p=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(d);if(p){var m=parseFloat(p[1]),g=(p[2]||"ms").toLowerCase();switch(g){case"years":case"year":case"yrs":case"yr":case"y":return m*s;case"weeks":case"week":case"w":return m*i;case"days":case"day":case"d":return m*n;case"hours":case"hour":case"hrs":case"hr":case"h":return m*r;case"minutes":case"minute":case"mins":case"min":case"m":return m*e;case"seconds":case"second":case"secs":case"sec":case"s":return m*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return m;default:return}}}}function a(d){var p=Math.abs(d);return p>=n?Math.round(d/n)+"d":p>=r?Math.round(d/r)+"h":p>=e?Math.round(d/e)+"m":p>=t?Math.round(d/t)+"s":d+"ms"}function c(d){var p=Math.abs(d);return p>=n?l(d,p,n,"day"):p>=r?l(d,p,r,"hour"):p>=e?l(d,p,e,"minute"):p>=t?l(d,p,t,"second"):d+" ms"}function l(d,p,m,g){var v=p>=m*1.5;return Math.round(d/m)+" "+g+(v?"s":"")}return Tu}var Iu,hv;function bk(){if(hv)return Iu;hv=1;function t(e){n.debug=n,n.default=n,n.coerce=l,n.disable=a,n.enable=s,n.enabled=c,n.humanize=vk(),n.destroy=d,Object.keys(e).forEach(p=>{n[p]=e[p]}),n.names=[],n.skips=[],n.formatters={};function r(p){let m=0;for(let g=0;g<p.length;g++)m=(m<<5)-m+p.charCodeAt(g),m|=0;return n.colors[Math.abs(m)%n.colors.length]}n.selectColor=r;function n(p){let m,g=null,v,S;function C(...w){if(!C.enabled)return;const y=C,f=Number(new Date),u=f-(m||f);y.diff=u,y.prev=m,y.curr=f,m=f,w[0]=n.coerce(w[0]),typeof w[0]!="string"&&w.unshift("%O");let h=0;w[0]=w[0].replace(/%([a-zA-Z%])/g,(A,R)=>{if(A==="%%")return"%";h++;const _=n.formatters[R];if(typeof _=="function"){const E=w[h];A=_.call(y,E),w.splice(h,1),h--}return A}),n.formatArgs.call(y,w),(y.log||n.log).apply(y,w)}return C.namespace=p,C.useColors=n.useColors(),C.color=n.selectColor(p),C.extend=i,C.destroy=n.destroy,Object.defineProperty(C,"enabled",{enumerable:!0,configurable:!1,get:()=>g!==null?g:(v!==n.namespaces&&(v=n.namespaces,S=n.enabled(p)),S),set:w=>{g=w}}),typeof n.init=="function"&&n.init(C),C}function i(p,m){const g=n(this.namespace+(typeof m>"u"?":":m)+p);return g.log=this.log,g}function s(p){n.save(p),n.namespaces=p,n.names=[],n.skips=[];const m=(typeof p=="string"?p:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(const g of m)g[0]==="-"?n.skips.push(g.slice(1)):n.names.push(g)}function o(p,m){let g=0,v=0,S=-1,C=0;for(;g<p.length;)if(v<m.length&&(m[v]===p[g]||m[v]==="*"))m[v]==="*"?(S=v,C=g,v++):(g++,v++);else if(S!==-1)v=S+1,C++,g=C;else return!1;for(;v<m.length&&m[v]==="*";)v++;return v===m.length}function a(){const p=[...n.names,...n.skips.map(m=>"-"+m)].join(",");return n.enable(""),p}function c(p){for(const m of n.skips)if(o(p,m))return!1;for(const m of n.names)if(o(p,m))return!0;return!1}function l(p){return p instanceof Error?p.stack||p.message:p}function d(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return n.enable(n.load()),n}return Iu=t,Iu}var mv;function ud(){return mv||(mv=1,function(t,e){var r={};e.formatArgs=i,e.save=s,e.load=o,e.useColors=n,e.storage=a(),e.destroy=(()=>{let l=!1;return()=>{l||(l=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function n(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let l;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(l=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(l[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function i(l){if(l[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+l[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;const d="color: "+this.color;l.splice(1,0,d,"color: inherit");let p=0,m=0;l[0].replace(/%[a-zA-Z%]/g,g=>{g!=="%%"&&(p++,g==="%c"&&(m=p))}),l.splice(m,0,d)}e.log=console.debug||console.log||(()=>{});function s(l){try{l?e.storage.setItem("debug",l):e.storage.removeItem("debug")}catch{}}function o(){let l;try{l=e.storage.getItem("debug")||e.storage.getItem("DEBUG")}catch{}return!l&&typeof process<"u"&&"env"in process&&(l=r.DEBUG),l}function a(){try{return localStorage}catch{}}t.exports=bk()(e);const{formatters:c}=t.exports;c.j=function(l){try{return JSON.stringify(l)}catch(d){return"[UnexpectedJSONParseError]: "+d.message}}}(ic,ic.exports)),ic.exports}var jr={},Zo={exports:{}},yk=Zo.exports,gv;function Sk(){return gv||(gv=1,function(t,e){(function(r,n){var i="2.0.4",s=500,o="user-agent",a="",c="?",l="function",d="undefined",p="object",m="string",g="browser",v="cpu",S="device",C="engine",w="os",y="result",f="name",u="type",h="vendor",b="version",A="architecture",R="major",_="model",E="console",P="mobile",T="tablet",k="smarttv",F="wearable",X="xr",O="embedded",L="inapp",B="brands",z="formFactors",Z="fullVersionList",V="platform",G="platformVersion",te="bitness",re="sec-ch-ua",ie=re+"-full-version-list",ce=re+"-arch",se=re+"-"+te,ae=re+"-form-factors",le=re+"-"+P,ye=re+"-"+_,me=re+"-"+V,ke=me+"-version",U=[B,Z,P,_,V,G,A,z,te],We="Amazon",Ye="Apple",Ot="ASUS",qt="BlackBerry",Ct="Google",rr="Huawei",dr="Lenovo",Ur="Honor",xt="LG",nt="Microsoft",mt="Motorola",Mr="Nvidia",Ie="OnePlus",Me="OPPO",be="Samsung",Ve="Sharp",At="Sony",Dt="Xiaomi",Be="Zebra",Se="Chrome",kt="Chromium",Jt="Chromecast",Nr="Edge",Zn="Firefox",Pn="Opera",qn="Facebook",Ni="Sogou",nr="Mobile ",Wr=" Browser",Jn="Windows",Li=typeof r!==d,Ft=Li&&r.navigator?r.navigator:n,Sr=Ft&&Ft.userAgentData?Ft.userAgentData:n,Ro=function(J,de){var fe={},ze=de;if(!hi(de)){ze={};for(var Re in de)for(var it in de[Re])ze[it]=de[Re][it].concat(ze[it]?ze[it]:[])}for(var pe in J)fe[pe]=ze[pe]&&ze[pe].length%2===0?ze[pe].concat(J[pe]):J[pe];return fe},Kn=function(J){for(var de={},fe=0;fe<J.length;fe++)de[J[fe].toUpperCase()]=J[fe];return de},pi=function(J,de){if(typeof J===p&&J.length>0){for(var fe in J)if(ur(de)==ur(J[fe]))return!0;return!1}return Tn(J)?ur(de)==ur(J):!1},hi=function(J,de){for(var fe in J)return/^(browser|cpu|device|engine|os)$/.test(fe)||(de?hi(J[fe]):!1)},Tn=function(J){return typeof J===m},mi=function(J){if(!J)return n;for(var de=[],fe=In(/\\?\"/g,J).split(","),ze=0;ze<fe.length;ze++)if(fe[ze].indexOf(";")>-1){var Re=j(fe[ze]).split(";v=");de[ze]={brand:Re[0],version:Re[1]}}else de[ze]=j(fe[ze]);return de},ur=function(J){return Tn(J)?J.toLowerCase():J},ji=function(J){return Tn(J)?In(/[^\d\.]/g,J).split(".")[0]:n},wr=function(J){for(var de in J){var fe=J[de];typeof fe==p&&fe.length==2?this[fe[0]]=fe[1]:this[fe]=n}return this},In=function(J,de){return Tn(de)?de.replace(J,a):de},Qn=function(J){return In(/\\?\"/g,J)},j=function(J,de){if(Tn(J))return J=In(/^\s\s*/,J),typeof de===d?J:J.substring(0,s)},Q=function(J,de){if(!(!J||!de))for(var fe=0,ze,Re,it,pe,Ee,Te;fe<de.length&&!Ee;){var at=de[fe],Yr=de[fe+1];for(ze=Re=0;ze<at.length&&!Ee&&at[ze];)if(Ee=at[ze++].exec(J),Ee)for(it=0;it<Yr.length;it++)Te=Ee[++Re],pe=Yr[it],typeof pe===p&&pe.length>0?pe.length===2?typeof pe[1]==l?this[pe[0]]=pe[1].call(this,Te):this[pe[0]]=pe[1]:pe.length>=3&&(typeof pe[1]===l&&!(pe[1].exec&&pe[1].test)?pe.length>3?this[pe[0]]=Te?pe[1].apply(this,pe.slice(2)):n:this[pe[0]]=Te?pe[1].call(this,Te,pe[2]):n:pe.length==3?this[pe[0]]=Te?Te.replace(pe[1],pe[2]):n:pe.length==4?this[pe[0]]=Te?pe[3].call(this,Te.replace(pe[1],pe[2])):n:pe.length>4&&(this[pe[0]]=Te?pe[3].apply(this,[Te.replace(pe[1],pe[2])].concat(pe.slice(4))):n)):this[pe]=Te||n;fe+=2}},ne=function(J,de){for(var fe in de)if(typeof de[fe]===p&&de[fe].length>0){for(var ze=0;ze<de[fe].length;ze++)if(pi(de[fe][ze],J))return fe===c?n:fe}else if(pi(de[fe],J))return fe===c?n:fe;return de.hasOwnProperty("*")?de["*"]:J},Ce={ME:"4.90","NT 3.51":"3.51","NT 4.0":"4.0",2e3:["5.0","5.01"],XP:["5.1","5.2"],Vista:"6.0",7:"6.1",8:"6.2","8.1":"6.3",10:["6.4","10.0"],NT:""},Le={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":n},Ge={Chrome:"Google Chrome",Edge:"Microsoft Edge","Edge WebView2":"Microsoft Edge WebView2","Chrome WebView":"Android WebView","Chrome Headless":"HeadlessChrome","Huawei Browser":"HuaweiBrowser","MIUI Browser":"Miui Browser","Opera Mobi":"OperaMobile",Yandex:"YaBrowser"},je={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[b,[f,nr+"Chrome"]],[/webview.+edge\/([\w\.]+)/i],[b,[f,Nr+" WebView"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[b,[f,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[f,b],[/opios[\/ ]+([\w\.]+)/i],[b,[f,Pn+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[b,[f,Pn+" GX"]],[/\bopr\/([\w\.]+)/i],[b,[f,Pn]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[b,[f,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[b,[f,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon|otter|dooble|(?:lg |qute)browser)\/([-\w\.]+)/i,/(heytap|ovi|115|surf)browser\/([\d\.]+)/i,/(ecosia|weibo)(?:__| \w+@)([\d\.]+)/i],[f,b],[/quark(?:pc)?\/([-\w\.]+)/i],[b,[f,"Quark"]],[/\bddg\/([\w\.]+)/i],[b,[f,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[b,[f,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[b,[f,"WeChat"]],[/konqueror\/([\w\.]+)/i],[b,[f,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[b,[f,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[b,[f,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[b,[f,"Smart "+dr+Wr]],[/(avast|avg)\/([\w\.]+)/i],[[f,/(.+)/,"$1 Secure"+Wr],b],[/\bfocus\/([\w\.]+)/i],[b,[f,Zn+" Focus"]],[/\bopt\/([\w\.]+)/i],[b,[f,Pn+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[b,[f,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[b,[f,"Dolphin"]],[/coast\/([\w\.]+)/i],[b,[f,Pn+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[b,[f,"MIUI"+Wr]],[/fxios\/([\w\.-]+)/i],[b,[f,nr+Zn]],[/\bqihoobrowser\/?([\w\.]*)/i],[b,[f,"360"]],[/\b(qq)\/([\w\.]+)/i],[[f,/(.+)/,"$1Browser"],b],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[f,/(.+)/,"$1"+Wr],b],[/samsungbrowser\/([\w\.]+)/i],[b,[f,be+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[b,[f,Ni+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[f,Ni+" Mobile"],b],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[f,b],[/(lbbrowser|rekonq)/i],[f],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[b,f],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[f,qn],b,[u,L]],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/(daum)apps[\/ ]([\w\.]+)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(instagram|snapchat|klarna)[\/ ]([-\w\.]+)/i],[f,b,[u,L]],[/\bgsa\/([\w\.]+) .*safari\//i],[b,[f,"GSA"],[u,L]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[b,[f,"TikTok"],[u,L]],[/\[(linkedin)app\]/i],[f,[u,L]],[/(chromium)[\/ ]([-\w\.]+)/i],[f,b],[/headlesschrome(?:\/([\w\.]+)| )/i],[b,[f,Se+" Headless"]],[/wv\).+chrome\/([\w\.]+).+edgw\//i],[b,[f,Nr+" WebView2"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[f,Se+" WebView"],b],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[b,[f,"Android"+Wr]],[/chrome\/([\w\.]+) mobile/i],[b,[f,nr+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[f,b],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[b,[f,nr+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[f,nr+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[b,f],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[f,[b,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[f,b],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[f,nr+Zn],b],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[f,"Netscape"],b],[/(wolvic|librewolf)\/([\w\.]+)/i],[f,b],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[b,[f,Zn+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/\b(links) \(([\w\.]+)/i],[f,[b,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[f,[b,/[^\d\.]+./,a]]],cpu:[[/\b((amd|x|x86[-_]?|wow|win)64)\b/i],[[A,"amd64"]],[/(ia32(?=;))/i,/\b((i[346]|x)86)(pc)?\b/i],[[A,"ia32"]],[/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],[[A,"arm64"]],[/\b(arm(v[67])?ht?n?[fl]p?)\b/i],[[A,"armhf"]],[/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],[[A,"arm"]],[/((ppc|powerpc)(64)?)( mac|;|\))/i],[[A,/ower/,a,ur]],[/ sun4\w[;\)]/i],[[A,"sparc"]],[/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],[[A,ur]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[_,[h,be],[u,T]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,/sec-(sgh\w+)/i],[_,[h,be],[u,P]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[_,[h,Ye],[u,P]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[_,[h,Ye],[u,T]],[/(macintosh);/i],[_,[h,Ye]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[_,[h,Ve],[u,P]],[/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],[_,[h,Ur],[u,T]],[/honor([-\w ]+)[;\)]/i],[_,[h,Ur],[u,P]],[/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],[_,[h,rr],[u,T]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[_,[h,rr],[u,P]],[/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,/\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],[[_,/_/g," "],[h,Dt],[u,T]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i,/ ([\w ]+) miui\/v?\d/i],[[_,/_/g," "],[h,Dt],[u,P]],[/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-k]\w[1m]10)\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[_,[h,Ie],[u,P]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[_,[h,Me],[u,P]],[/\b(opd2(\d{3}a?))(?: bui|\))/i],[_,[h,ne,{OnePlus:["203","304","403","404","413","415"],"*":Me}],[u,T]],[/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i],[_,[h,"BLU"],[u,P]],[/; vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[_,[h,"Vivo"],[u,P]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[_,[h,"Realme"],[u,P]],[/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],[_,[h,dr],[u,T]],[/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i],[_,[h,dr],[u,P]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i],[_,[h,mt],[u,P]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[_,[h,mt],[u,T]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[_,[h,xt],[u,T]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,/\blg-?([\d\w]+) bui/i],[_,[h,xt],[u,P]],[/(nokia) (t[12][01])/i],[h,_,[u,T]],[/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,/nokia[-_ ]?(([-\w\. ]*))/i],[[_,/_/g," "],[u,P],[h,"Nokia"]],[/(pixel (c|tablet))\b/i],[_,[h,Ct],[u,T]],[/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i],[_,[h,Ct],[u,P]],[/(google) (pixelbook( go)?)/i],[h,_],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[_,[h,At],[u,P]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[_,"Xperia Tablet"],[h,At],[u,T]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[_,[h,We],[u,T]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[_,/(.+)/g,"Fire Phone $1"],[h,We],[u,P]],[/(playbook);[-\w\),; ]+(rim)/i],[_,h,[u,T]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[_,[h,qt],[u,P]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[_,[h,Ot],[u,T]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[_,[h,Ot],[u,P]],[/(nexus 9)/i],[_,[h,"HTC"],[u,T]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[h,[_,/_/g," "],[u,P]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[_,[h,"TCL"],[u,T]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[_,[h,"TCL"],[u,P]],[/(itel) ((\w+))/i],[[h,ur],_,[u,ne,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[_,[h,"Acer"],[u,T]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[_,[h,"Meizu"],[u,P]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[_,[h,"Ulefone"],[u,P]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[_,[h,"Energizer"],[u,P]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[_,[h,"Cat"],[u,P]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[_,[h,"Smartfren"],[u,P]],[/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i],[_,[h,"Nothing"],[u,P]],[/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,/archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],[_,[h,"Archos"],[u,T]],[/archos ([\w ]+)( b|\))/i,/; (ac[3-6]\d\w{2,8})( b|\))/i],[_,[h,"Archos"],[u,P]],[/; (n159v)/i],[_,[h,"HMD"],[u,P]],[/(imo) (tab \w+)/i,/(infinix|tecno) (x1101b?|p904|dp(7c|8d|10a)( pro)?|p70[1-3]a?|p904|t1101)/i],[h,_,[u,T]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (blu|hmd|imo|infinix|lava|oneplus|tcl)[_ ]([\w\+ ]+?)(?: bui|\)|; r)/i,/(hp) ([\w ]+\w)/i,/(microsoft); (lumia[\w ]+)/i,/(oppo) ?([\w ]+) bui/i],[h,_,[u,P]],[/(kobo)\s(ereader|touch)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[h,_,[u,T]],[/(surface duo)/i],[_,[h,nt],[u,T]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[_,[h,"Fairphone"],[u,P]],[/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],[_,[h,Mr],[u,T]],[/(sprint) (\w+)/i],[h,_,[u,P]],[/(kin\.[onetw]{3})/i],[[_,/\./g," "],[h,nt],[u,P]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[_,[h,Be],[u,T]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[_,[h,Be],[u,P]],[/smart-tv.+(samsung)/i],[h,[u,k]],[/hbbtv.+maple;(\d+)/i],[[_,/^/,"SmartTV"],[h,be],[u,k]],[/(vizio)(?: |.+model\/)(\w+-\w+)/i,/tcast.+(lg)e?. ([-\w]+)/i],[h,_,[u,k]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[h,xt],[u,k]],[/(apple) ?tv/i],[h,[_,Ye+" TV"],[u,k]],[/crkey.*devicetype\/chromecast/i],[[_,Jt+" Third Generation"],[h,Ct],[u,k]],[/crkey.*devicetype\/([^/]*)/i],[[_,/^/,"Chromecast "],[h,Ct],[u,k]],[/fuchsia.*crkey/i],[[_,Jt+" Nest Hub"],[h,Ct],[u,k]],[/crkey/i],[[_,Jt],[h,Ct],[u,k]],[/(portaltv)/i],[_,[h,qn],[u,k]],[/droid.+aft(\w+)( bui|\))/i],[_,[h,We],[u,k]],[/(shield \w+ tv)/i],[_,[h,Mr],[u,k]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[_,[h,Ve],[u,k]],[/(bravia[\w ]+)( bui|\))/i],[_,[h,At],[u,k]],[/(mi(tv|box)-?\w+) bui/i],[_,[h,Dt],[u,k]],[/Hbbtv.*(technisat) (.*);/i],[h,_,[u,k]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[h,/.+\/(\w+)/,"$1",ne,{LG:"lge"}],[_,j],[u,k]],[/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],[_,[u,k]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:|large screen[\w ]+safari)\b/i],[[u,k]],[/(playstation \w+)/i],[_,[h,At],[u,E]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[_,[h,nt],[u,E]],[/(ouya)/i,/(nintendo) (\w+)/i,/(retroid) (pocket ([^\)]+))/i],[h,_,[u,E]],[/droid.+; (shield)( bui|\))/i],[_,[h,Mr],[u,E]],[/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],[_,[h,be],[u,F]],[/((pebble))app/i,/(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],[h,_,[u,F]],[/(ow(?:19|20)?we?[1-3]{1,3})/i],[_,[h,Me],[u,F]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[_,[h,Ye],[u,F]],[/(opwwe\d{3})/i],[_,[h,Ie],[u,F]],[/(moto 360)/i],[_,[h,mt],[u,F]],[/(smartwatch 3)/i],[_,[h,At],[u,F]],[/(g watch r)/i],[_,[h,xt],[u,F]],[/droid.+; (wt63?0{2,3})\)/i],[_,[h,Be],[u,F]],[/droid.+; (glass) \d/i],[_,[h,Ct],[u,X]],[/(pico) (4|neo3(?: link|pro)?)/i],[h,_,[u,X]],[/(quest( \d| pro)?s?).+vr/i],[_,[h,qn],[u,X]],[/mobile vr; rv.+firefox/i],[[u,X]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[h,[u,O]],[/(aeobc)\b/i],[_,[h,We],[u,O]],[/(homepod).+mac os/i],[_,[h,Ye],[u,O]],[/windows iot/i],[[u,O]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+?(mobile|vr|\d) safari/i],[_,[u,ne,{mobile:"Mobile",xr:"VR","*":T}]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[u,T]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[u,P]],[/droid .+?; ([\w\. -]+)( bui|\))/i],[_,[h,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[b,[f,Nr+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[f,b],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[b,[f,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[f,b],[/ladybird\//i],[[f,"LibWeb"]],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[b,f]],os:[[/(windows nt) (6\.[23]); arm/i],[[f,/N/,"R"],[b,ne,Ce]],[/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,/(windows)[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i],[f,b],[/windows nt ?([\d\.\)]*)(?!.+xbox)/i,/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i],[[b,/(;|\))/g,"",ne,Ce],[f,Jn]],[/(windows ce)\/?([\d\.]*)/i],[f,b],[/[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[b,/_/g,"."],[f,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i],[[f,"macOS"],[b,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[b,[f,Jt+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[b,[f,Jt+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[b,[f,Jt+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[b,[f,Jt+" Linux"]],[/crkey\/([\d\.]+)/i],[b,[f,Jt]],[/droid ([\w\.]+)\b.+(android[- ]x86)/i],[b,f],[/(ubuntu) ([\w\.]+) like android/i],[[f,/(.+)/,"$1 Touch"],b],[/(harmonyos)[\/ ]?([\d\.]*)/i,/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen)\w*[-\/\.; ]?([\d\.]*)/i],[f,b],[/\(bb(10);/i],[b,[f,qt]],[/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],[b,[f,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[b,[f,Zn+" OS"]],[/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i,/webos(?:[ \/]?|\.tv-20(?=2[2-9]))(\d[\d\.]*)/i],[b,[f,"webOS"]],[/web0s;.+?(?:chr[o0]me|safari)\/(\d+)/i],[[b,ne,{25:"120",24:"108",23:"94",22:"87",6:"79",5:"68",4:"53",3:"38",2:"538",1:"537","*":"TV"}],[f,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[b,[f,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[f,"Chrome OS"],b],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/linux.+(mint)[\/\(\) ]?([\w\.]*)/i,/(mageia|vectorlinux|fuchsia|arcaos|arch(?= ?linux))[;l ]([\d\.]*)/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire|knoppix)(?: gnu[\/ ]linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/\b(aix)[; ]([1-9\.]{0,4})/i,/(hurd|linux|morphos)(?: (?:arm|x86|ppc)\w*| ?)([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) ?(r\d)?/i],[f,b],[/(sunos) ?([\d\.]*)/i],[[f,"Solaris"],b],[/\b(beos|os\/2|amigaos|openvms|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[f,b]]},Oe=function(){var J={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}};return wr.call(J.init,[[g,[f,b,R,u]],[v,[A]],[S,[u,_,h]],[C,[f,b]],[w,[f,b]]]),wr.call(J.isIgnore,[[g,[b,R]],[C,[b]],[w,[b]]]),wr.call(J.isIgnoreRgx,[[g,/ ?browser$/i],[w,/ ?os$/i]]),wr.call(J.toString,[[g,[f,b]],[v,[A]],[S,[h,_]],[C,[f,b]],[w,[f,b]]]),J}(),Mt=function(J,de){var fe=Oe.init[de],ze=Oe.isIgnore[de]||0,Re=Oe.isIgnoreRgx[de]||0,it=Oe.toString[de]||0;function pe(){wr.call(this,fe)}return pe.prototype.getItem=function(){return J},pe.prototype.withClientHints=function(){return Sr?Sr.getHighEntropyValues(U).then(function(Ee){return J.setCH(new st(Ee,!1)).parseCH().get()}):J.parseCH().get()},pe.prototype.withFeatureCheck=function(){return J.detectFeature().get()},de!=y&&(pe.prototype.is=function(Ee){var Te=!1;for(var at in this)if(this.hasOwnProperty(at)&&!pi(ze,at)&&ur(Re?In(Re,this[at]):this[at])==ur(Re?In(Re,Ee):Ee)){if(Te=!0,Ee!=d)break}else if(Ee==d&&Te){Te=!Te;break}return Te},pe.prototype.toString=function(){var Ee=a;for(var Te in it)typeof this[it[Te]]!==d&&(Ee+=(Ee?" ":a)+this[it[Te]]);return Ee||d}),Sr||(pe.prototype.then=function(Ee){var Te=this,at=function(){for(var Cr in Te)Te.hasOwnProperty(Cr)&&(this[Cr]=Te[Cr])};at.prototype={is:pe.prototype.is,toString:pe.prototype.toString};var Yr=new at;return Ee(Yr),Yr}),new pe};function st(J,de){if(J=J||{},wr.call(this,U),de)wr.call(this,[[B,mi(J[re])],[Z,mi(J[ie])],[P,/\?1/.test(J[le])],[_,Qn(J[ye])],[V,Qn(J[me])],[G,Qn(J[ke])],[A,Qn(J[ce])],[z,mi(J[ae])],[te,Qn(J[se])]]);else for(var fe in J)this.hasOwnProperty(fe)&&typeof J[fe]!==d&&(this[fe]=J[fe])}function ot(J,de,fe,ze){return this.get=function(Re){return Re?this.data.hasOwnProperty(Re)?this.data[Re]:n:this.data},this.set=function(Re,it){return this.data[Re]=it,this},this.setCH=function(Re){return this.uaCH=Re,this},this.detectFeature=function(){if(Ft&&Ft.userAgent==this.ua)switch(this.itemType){case g:Ft.brave&&typeof Ft.brave.isBrave==l&&this.set(f,"Brave");break;case S:!this.get(u)&&Sr&&Sr[P]&&this.set(u,P),this.get(_)=="Macintosh"&&Ft&&typeof Ft.standalone!==d&&Ft.maxTouchPoints&&Ft.maxTouchPoints>2&&this.set(_,"iPad").set(u,T);break;case w:!this.get(f)&&Sr&&Sr[V]&&this.set(f,Sr[V]);break;case y:var Re=this.data,it=function(pe){return Re[pe].getItem().detectFeature().get()};this.set(g,it(g)).set(v,it(v)).set(S,it(S)).set(C,it(C)).set(w,it(w))}return this},this.parseUA=function(){return this.itemType!=y&&Q.call(this.data,this.ua,this.rgxMap),this.itemType==g&&this.set(R,ji(this.get(b))),this},this.parseCH=function(){var Re=this.uaCH,it=this.rgxMap;switch(this.itemType){case g:case C:var pe=Re[Z]||Re[B],Ee;if(pe)for(var Te in pe){var at=pe[Te].brand||pe[Te],Yr=pe[Te].version;this.itemType==g&&!/not.a.brand/i.test(at)&&(!Ee||/Chrom/.test(Ee)&&at!=kt||Ee==Nr&&/WebView2/.test(at))&&(at=ne(at,Ge),Ee=this.get(f),Ee&&!/Chrom/.test(Ee)&&/Chrom/.test(at)||this.set(f,at).set(b,Yr).set(R,ji(Yr)),Ee=at),this.itemType==C&&at==kt&&this.set(b,Yr)}break;case v:var Cr=Re[A];Cr&&(Cr&&Re[te]=="64"&&(Cr+="64"),Q.call(this.data,Cr+";",it));break;case S:if(Re[P]&&this.set(u,P),Re[_]&&(this.set(_,Re[_]),!this.get(u)||!this.get(h))){var Nt={};Q.call(Nt,"droid 9; "+Re[_]+")",it),!this.get(u)&&Nt.type&&this.set(u,Nt.type),!this.get(h)&&Nt.vendor&&this.set(h,Nt.vendor)}if(Re[z]){var ft;if(typeof Re[z]!="string")for(var Ba=0;!ft&&Ba<Re[z].length;)ft=ne(Re[z][Ba++],Le);else ft=ne(Re[z],Le);this.set(u,ft)}break;case w:var Rs=Re[V];if(Rs){var sr=Re[G];Rs==Jn&&(sr=parseInt(ji(sr),10)>=13?"11":"10"),this.set(f,Rs).set(b,sr)}this.get(f)==Jn&&Re[_]=="Xbox"&&this.set(f,"Xbox").set(b,n);break;case y:var Fa=this.data,gi=function(Ud){return Fa[Ud].getItem().setCH(Re).parseCH().get()};this.set(g,gi(g)).set(v,gi(v)).set(S,gi(S)).set(C,gi(C)).set(w,gi(w))}return this},wr.call(this,[["itemType",J],["ua",de],["uaCH",ze],["rgxMap",fe],["data",Mt(this,J)]]),this}function Xe(J,de,fe){if(typeof J===p?(hi(J,!0)?(typeof de===p&&(fe=de),de=J):(fe=J,de=n),J=n):typeof J===m&&!hi(de,!0)&&(fe=de,de=n),fe&&typeof fe.append===l){var ze={};fe.forEach(function(Te,at){ze[at]=Te}),fe=ze}if(!(this instanceof Xe))return new Xe(J,de,fe).getResult();var Re=typeof J===m?J:fe&&fe[o]?fe[o]:Ft&&Ft.userAgent?Ft.userAgent:a,it=new st(fe,!0),pe=de?Ro(je,de):je,Ee=function(Te){return Te==y?function(){return new ot(Te,Re,pe,it).set("ua",Re).set(g,this.getBrowser()).set(v,this.getCPU()).set(S,this.getDevice()).set(C,this.getEngine()).set(w,this.getOS()).get()}:function(){return new ot(Te,Re,pe[Te],it).parseUA().get()}};return wr.call(this,[["getBrowser",Ee(g)],["getCPU",Ee(v)],["getDevice",Ee(S)],["getEngine",Ee(C)],["getOS",Ee(w)],["getResult",Ee(y)],["getUA",function(){return Re}],["setUA",function(Te){return Tn(Te)&&(Re=Te.length>s?j(Te,s):Te),this}]]).setUA(Re),this}Xe.VERSION=i,Xe.BROWSER=Kn([f,b,R,u]),Xe.CPU=Kn([A]),Xe.DEVICE=Kn([_,h,u,E,P,k,T,F,O]),Xe.ENGINE=Xe.OS=Kn([f,b]),t.exports&&(e=t.exports=Xe),e.UAParser=Xe;var ir=Li&&(r.jQuery||r.Zepto);if(ir&&!ir.ua){var fr=new Xe;ir.ua=fr.getResult(),ir.ua.get=function(){return fr.getUA()},ir.ua.set=function(J){fr.setUA(J);var de=fr.getResult();for(var fe in de)ir.ua[fe]=de[fe]}}})(typeof window=="object"?window:yk)}(Zo,Zo.exports)),Zo.exports}var Fi={},vv;function St(){if(vv)return Fi;vv=1;var t=Fi&&Fi.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(Fi,"__esModule",{value:!0}),Fi.Logger=void 0;const e=t(ud()),r="mediasoup-client";class n{constructor(s){s?(this._debug=(0,e.default)(`${r}:${s}`),this._warn=(0,e.default)(`${r}:WARN:${s}`),this._error=(0,e.default)(`${r}:ERROR:${s}`)):(this._debug=(0,e.default)(r),this._warn=(0,e.default)(`${r}:WARN`),this._error=(0,e.default)(`${r}:ERROR`)),this._debug.log=console.info.bind(console),this._warn.log=console.warn.bind(console),this._error.log=console.error.bind(console)}get debug(){return this._debug}get warn(){return this._warn}get error(){return this._error}}return Fi.Logger=n,Fi}var Oo={},sc={exports:{}},bv;function wk(){if(bv)return sc.exports;bv=1;var t=typeof Reflect=="object"?Reflect:null,e=t&&typeof t.apply=="function"?t.apply:function(h,b,A){return Function.prototype.apply.call(h,b,A)},r;t&&typeof t.ownKeys=="function"?r=t.ownKeys:Object.getOwnPropertySymbols?r=function(h){return Object.getOwnPropertyNames(h).concat(Object.getOwnPropertySymbols(h))}:r=function(h){return Object.getOwnPropertyNames(h)};function n(u){console&&console.warn&&console.warn(u)}var i=Number.isNaN||function(h){return h!==h};function s(){s.init.call(this)}sc.exports=s,sc.exports.once=w,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var o=10;function a(u){if(typeof u!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof u)}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(u){if(typeof u!="number"||u<0||i(u))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+u+".");o=u}}),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(h){if(typeof h!="number"||h<0||i(h))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+h+".");return this._maxListeners=h,this};function c(u){return u._maxListeners===void 0?s.defaultMaxListeners:u._maxListeners}s.prototype.getMaxListeners=function(){return c(this)},s.prototype.emit=function(h){for(var b=[],A=1;A<arguments.length;A++)b.push(arguments[A]);var R=h==="error",_=this._events;if(_!==void 0)R=R&&_.error===void 0;else if(!R)return!1;if(R){var E;if(b.length>0&&(E=b[0]),E instanceof Error)throw E;var P=new Error("Unhandled error."+(E?" ("+E.message+")":""));throw P.context=E,P}var T=_[h];if(T===void 0)return!1;if(typeof T=="function")e(T,this,b);else for(var k=T.length,F=v(T,k),A=0;A<k;++A)e(F[A],this,b);return!0};function l(u,h,b,A){var R,_,E;if(a(b),_=u._events,_===void 0?(_=u._events=Object.create(null),u._eventsCount=0):(_.newListener!==void 0&&(u.emit("newListener",h,b.listener?b.listener:b),_=u._events),E=_[h]),E===void 0)E=_[h]=b,++u._eventsCount;else if(typeof E=="function"?E=_[h]=A?[b,E]:[E,b]:A?E.unshift(b):E.push(b),R=c(u),R>0&&E.length>R&&!E.warned){E.warned=!0;var P=new Error("Possible EventEmitter memory leak detected. "+E.length+" "+String(h)+" listeners added. Use emitter.setMaxListeners() to increase limit");P.name="MaxListenersExceededWarning",P.emitter=u,P.type=h,P.count=E.length,n(P)}return u}s.prototype.addListener=function(h,b){return l(this,h,b,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(h,b){return l(this,h,b,!0)};function d(){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 p(u,h,b){var A={fired:!1,wrapFn:void 0,target:u,type:h,listener:b},R=d.bind(A);return R.listener=b,A.wrapFn=R,R}s.prototype.once=function(h,b){return a(b),this.on(h,p(this,h,b)),this},s.prototype.prependOnceListener=function(h,b){return a(b),this.prependListener(h,p(this,h,b)),this},s.prototype.removeListener=function(h,b){var A,R,_,E,P;if(a(b),R=this._events,R===void 0)return this;if(A=R[h],A===void 0)return this;if(A===b||A.listener===b)--this._eventsCount===0?this._events=Object.create(null):(delete R[h],R.removeListener&&this.emit("removeListener",h,A.listener||b));else if(typeof A!="function"){for(_=-1,E=A.length-1;E>=0;E--)if(A[E]===b||A[E].listener===b){P=A[E].listener,_=E;break}if(_<0)return this;_===0?A.shift():S(A,_),A.length===1&&(R[h]=A[0]),R.removeListener!==void 0&&this.emit("removeListener",h,P||b)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(h){var b,A,R;if(A=this._events,A===void 0)return this;if(A.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):A[h]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete A[h]),this;if(arguments.length===0){var _=Object.keys(A),E;for(R=0;R<_.length;++R)E=_[R],E!=="removeListener"&&this.removeAllListeners(E);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(b=A[h],typeof b=="function")this.removeListener(h,b);else if(b!==void 0)for(R=b.length-1;R>=0;R--)this.removeListener(h,b[R]);return this};function m(u,h,b){var A=u._events;if(A===void 0)return[];var R=A[h];return R===void 0?[]:typeof R=="function"?b?[R.listener||R]:[R]:b?C(R):v(R,R.length)}s.prototype.listeners=function(h){return m(this,h,!0)},s.prototype.rawListeners=function(h){return m(this,h,!1)},s.listenerCount=function(u,h){return typeof u.listenerCount=="function"?u.listenerCount(h):g.call(u,h)},s.prototype.listenerCount=g;function g(u){var h=this._events;if(h!==void 0){var b=h[u];if(typeof b=="function")return 1;if(b!==void 0)return b.length}return 0}s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]};function v(u,h){for(var b=new Array(h),A=0;A<h;++A)b[A]=u[A];return b}function S(u,h){for(;h+1<u.length;h++)u[h]=u[h+1];u.pop()}function C(u){for(var h=new Array(u.length),b=0;b<h.length;++b)h[b]=u[b].listener||u[b];return h}function w(u,h){return new Promise(function(b,A){function R(E){u.removeListener(h,_),A(E)}function _(){typeof u.removeListener=="function"&&u.removeListener("error",R),b([].slice.call(arguments))}f(u,h,_,{once:!0}),h!=="error"&&y(u,R,{once:!0})})}function y(u,h,b){typeof u.on=="function"&&f(u,"error",h,b)}function f(u,h,b,A){if(typeof u.on=="function")A.once?u.once(h,b):u.on(h,b);else if(typeof u.addEventListener=="function")u.addEventListener(h,function R(_){A.once&&u.removeEventListener(h,R),b(_)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof u)}return sc.exports}var yv;function bs(){if(yv)return Oo;yv=1,Object.defineProperty(Oo,"__esModule",{value:!0}),Oo.EnhancedEventEmitter=void 0;const t=wk(),e=St(),r=new e.Logger("EnhancedEventEmitter");class n extends t.EventEmitter{constructor(){super(),this.setMaxListeners(1/0)}emit(s,...o){return super.emit(s,...o)}safeEmit(s,...o){try{return super.emit(s,...o)}catch(a){r.error("safeEmit() | event listener threw an error [eventName:%s]:%o",s,a);try{super.emit("listenererror",s,a)}catch{}return!!super.listenerCount(s)}}on(s,o){return super.on(s,o),this}off(s,o){return super.off(s,o),this}addListener(s,o){return super.on(s,o),this}prependListener(s,o){return super.prependListener(s,o),this}once(s,o){return super.once(s,o),this}prependOnceListener(s,o){return super.prependOnceListener(s,o),this}removeListener(s,o){return super.off(s,o),this}removeAllListeners(s){return super.removeAllListeners(s),this}listenerCount(s){return super.listenerCount(s)}listeners(s){return super.listeners(s)}rawListeners(s){return super.rawListeners(s)}}return Oo.EnhancedEventEmitter=n,Oo}var zi={},Sv;function er(){if(Sv)return zi;Sv=1,Object.defineProperty(zi,"__esModule",{value:!0}),zi.InvalidStateError=zi.UnsupportedError=void 0;class t extends Error{constructor(n){super(n),this.name="UnsupportedError",Error.hasOwnProperty("captureStackTrace")?Error.captureStackTrace(this,t):this.stack=new Error(n).stack}}zi.UnsupportedError=t;class e extends Error{constructor(n){super(n),this.name="InvalidStateError",Error.hasOwnProperty("captureStackTrace")?Error.captureStackTrace(this,e):this.stack=new Error(n).stack}}return zi.InvalidStateError=e,zi}var Os={},wv;function Xt(){if(wv)return Os;wv=1,Object.defineProperty(Os,"__esModule",{value:!0}),Os.clone=t,Os.generateRandomNumber=e,Os.deepFreeze=r;function t(n){if(n!==void 0)return Number.isNaN(n)?NaN:typeof structuredClone=="function"?structuredClone(n):JSON.parse(JSON.stringify(n))}function e(){return Math.round(Math.random()*1e7)}function r(n){const i=Reflect.ownKeys(n);for(const s of i){const o=n[s];(o&&typeof o=="object"||typeof o=="function")&&r(o)}return Object.freeze(n)}return Os}var gt={},Ht={},Hi={},Cv;function Ck(){if(Cv)return Hi;Cv=1;var t=Hi&&Hi.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(Hi,"__esModule",{value:!0}),Hi.Logger=void 0;const e=t(ud()),r="h264-profile-level-id";class n{constructor(s){s?(this._debug=(0,e.default)(`${r}:${s}`),this._warn=(0,e.default)(`${r}:WARN:${s}`),this._error=(0,e.default)(`${r}:ERROR:${s}`)):(this._debug=(0,e.default)(r),this._warn=(0,e.default)(`${r}:WARN`),this._error=(0,e.default)(`${r}:ERROR`)),this._debug.log=console.info.bind(console),this._warn.log=console.warn.bind(console),this._error.log=console.error.bind(console)}get debug(){return this._debug}get warn(){return this._warn}get error(){return this._error}}return Hi.Logger=n,Hi}var Av;function Ak(){if(Av)return Ht;Av=1,Object.defineProperty(Ht,"__esModule",{value:!0}),Ht.ProfileLevelId=Ht.Level=Ht.Profile=void 0,Ht.parseProfileLevelId=d,Ht.profileLevelIdToString=p,Ht.profileToString=m,Ht.levelToString=g,Ht.parseSdpProfileLevelId=v,Ht.isSameProfile=S,Ht.isSameProfileAndLevel=C,Ht.generateProfileLevelIdStringForAnswer=w,Ht.supportedLevel=y;const t=Ck(),e=new t.Logger;var r;(function(A){A[A.ConstrainedBaseline=1]="ConstrainedBaseline",A[A.Baseline=2]="Baseline",A[A.Main=3]="Main",A[A.ConstrainedHigh=4]="ConstrainedHigh",A[A.High=5]="High",A[A.PredictiveHigh444=6]="PredictiveHigh444"})(r||(Ht.Profile=r={}));var n;(function(A){A[A.L1_b=0]="L1_b",A[A.L1=10]="L1",A[A.L1_1=11]="L1_1",A[A.L1_2=12]="L1_2",A[A.L1_3=13]="L1_3",A[A.L2=20]="L2",A[A.L2_1=21]="L2_1",A[A.L2_2=22]="L2_2",A[A.L3=30]="L3",A[A.L3_1=31]="L3_1",A[A.L3_2=32]="L3_2",A[A.L4=40]="L4",A[A.L4_1=41]="L4_1",A[A.L4_2=42]="L4_2",A[A.L5=50]="L5",A[A.L5_1=51]="L5_1",A[A.L5_2=52]="L5_2"})(n||(Ht.Level=n={}));class i{constructor(R,_){this.profile=R,this.level=_}}Ht.ProfileLevelId=i;const s=new i(r.ConstrainedBaseline,n.L3_1);class o{constructor(R){this.mask=~f("x",R),this.masked_value=f("1",R)}isMatch(R){return this.masked_value===(R&this.mask)}}class a{constructor(R,_,E){this.profile_idc=R,this.profile_iop=_,this.profile=E}}const c=[new a(66,new o("x1xx0000"),r.ConstrainedBaseline),new a(77,new o("1xxx0000"),r.ConstrainedBaseline),new a(88,new o("11xx0000"),r.ConstrainedBaseline),new a(66,new o("x0xx0000"),r.Baseline),new a(88,new o("10xx0000"),r.Baseline),new a(77,new o("0x0x0000"),r.Main),new a(100,new o("00000000"),r.High),new a(100,new o("00001100"),r.ConstrainedHigh),new a(244,new o("00000000"),r.PredictiveHigh444)],l=[{max_macroblocks_per_second:1485,max_macroblock_frame_size:99,level:n.L1},{max_macroblocks_per_second:1485,max_macroblock_frame_size:99,level:n.L1_b},{max_macroblocks_per_second:3e3,max_macroblock_frame_size:396,level:n.L1_1},{max_macroblocks_per_second:6e3,max_macroblock_frame_size:396,level:n.L1_2},{max_macroblocks_per_second:11880,max_macroblock_frame_size:396,level:n.L1_3},{max_macroblocks_per_second:11880,max_macroblock_frame_size:396,level:n.L2},{max_macroblocks_per_second:19800,max_macroblock_frame_size:792,level:n.L2_1},{max_macroblocks_per_second:20250,max_macroblock_frame_size:1620,level:n.L2_2},{max_macroblocks_per_second:40500,max_macroblock_frame_size:1620,level:n.L3},{max_macroblocks_per_second:108e3,max_macroblock_frame_size:3600,level:n.L3_1},{max_macroblocks_per_second:216e3,max_macroblock_frame_size:5120,level:n.L3_2},{max_macroblocks_per_second:245760,max_macroblock_frame_size:8192,level:n.L4},{max_macroblocks_per_second:245760,max_macroblock_frame_size:8192,level:n.L4_1},{max_macroblocks_per_second:522240,max_macroblock_frame_size:8704,level:n.L4_2},{max_macroblocks_per_second:589824,max_macroblock_frame_size:22080,level:n.L5},{max_macroblocks_per_second:983040,max_macroblock_frame_size:36864,level:n.L5_1},{max_macroblocks_per_second:2073600,max_macroblock_frame_size:36864,level:n.L5_2}];function d(A){if(typeof A!="string"||A.length!==6)return;const _=parseInt(A,16);if(_===0)return;const E=_&255,P=_>>8&255,T=_>>16&255;let k;switch(E){case n.L1_1:{k=(P&16)!==0?n.L1_b:n.L1_1;break}case n.L1:case n.L1_2:case n.L1_3:case n.L2:case n.L2_1:case n.L2_2:case n.L3:case n.L3_1:case n.L3_2:case n.L4:case n.L4_1:case n.L4_2:case n.L5:case n.L5_1:case n.L5_2:{k=E;break}default:{e.warn(`parseProfileLevelId() | unrecognized level_idc [str:${A}, level_idc:${E}]`);return}}for(const F of c)if(T===F.profile_idc&&F.profile_iop.isMatch(P))return e.debug(`parseProfileLevelId() | result [str:${A}, profile:${F.profile}, level:${k}]`),new i(F.profile,k);e.warn(`parseProfileLevelId() | unrecognized profile_idc/profile_iop combination [str:${A}, profile_idc:${T}, profile_iop:${P}]`)}function p(A){if(A.level==n.L1_b)switch(A.profile){case r.ConstrainedBaseline:return"42f00b";case r.Baseline:return"42100b";case r.Main:return"4d100b";default:{e.warn(`profileLevelIdToString() | Level 1_b not is allowed for profile ${A.profile}`);return}}let R;switch(A.profile){case r.ConstrainedBaseline:{R="42e0";break}case r.Baseline:{R="4200";break}case r.Main:{R="4d00";break}case r.ConstrainedHigh:{R="640c";break}case r.High:{R="6400";break}case r.PredictiveHigh444:{R="f400";break}default:{e.warn(`profileLevelIdToString() | unrecognized profile ${A.profile}`);return}}let _=A.level.toString(16);return _.length===1&&(_=`0${_}`),`${R}${_}`}function m(A){switch(A){case r.ConstrainedBaseline:return"ConstrainedBaseline";case r.Baseline:return"Baseline";case r.Main:return"Main";case r.ConstrainedHigh:return"ConstrainedHigh";case r.High:return"High";case r.PredictiveHigh444:return"PredictiveHigh444";default:{e.warn(`profileToString() | unrecognized profile ${A}`);return}}}function g(A){switch(A){case n.L1_b:return"1b";case n.L1:return"1";case n.L1_1:return"1.1";case n.L1_2:return"1.2";case n.L1_3:return"1.3";case n.L2:return"2";case n.L2_1:return"2.1";case n.L2_2:return"2.2";case n.L3:return"3";case n.L3_1:return"3.1";case n.L3_2:return"3.2";case n.L4:return"4";case n.L4_1:return"4.1";case n.L4_2:return"4.2";case n.L5:return"5";case n.L5_1:return"5.1";case n.L5_2:return"5.2";default:{e.warn(`levelToString() | unrecognized level ${A}`);return}}}function v(A={}){const R=A["profile-level-id"];return R?d(R):s}function S(A={},R={}){const _=v(A),E=v(R);return!!(_&&E&&_.profile===E.profile)}function C(A={},R={}){const _=v(A),E=v(R);return!!(_&&E&&_.profile===E.profile&&_.level==E.level)}function w(A={},R={}){if(!A["profile-level-id"]&&!R["profile-level-id"]){e.warn("generateProfileLevelIdStringForAnswer() | profile-level-id missing in local and remote params");return}const _=v(A),E=v(R);if(!_)throw new TypeError("invalid local_profile_level_id");if(!E)throw new TypeError("invalid remote_profile_level_id");if(_.profile!==E.profile)throw new TypeError("H264 Profile mismatch");const P=b(A)&&b(R),T=_.level,k=E.level,F=h(T,k),X=P?T:F;return e.debug(`generateProfileLevelIdStringForAnswer() | result [profile:${_.profile}, level:${X}]`),p(new i(_.profile,X))}function y(A,R){for(let E=l.length-1;E>=0;--E){const P=l[E];if(P.max_macroblock_frame_size*256<=A&&P.max_macroblocks_per_second<=R*P.max_macroblock_frame_size)return e.debug(`supportedLevel() | result [max_frame_pixel_count:${A}, max_fps:${R}, level:${P.level}]`),P.level}e.warn(`supportedLevel() | no level supported [max_frame_pixel_count:${A}, max_fps:${R}]`)}function f(A,R){return+(R[0]===A)<<7|+(R[1]===A)<<6|+(R[2]===A)<<5|+(R[3]===A)<<4|+(R[4]===A)<<3|+(R[5]===A)<<2|+(R[6]===A)<<1|+(R[7]===A)<<0}function u(A,R){return A===n.L1_b?R!==n.L1&&R!==n.L1_b:R===n.L1_b?A!==n.L1:A<R}function h(A,R){return u(A,R)?A:R}function b(A={}){const R=A["level-asymmetry-allowed"];return R===!0||R===1||R==="1"}return Ht}var Rv;function lr(){if(Rv)return gt;Rv=1;var t=gt&&gt.__createBinding||(Object.create?function(O,L,B,z){z===void 0&&(z=B);var Z=Object.getOwnPropertyDescriptor(L,B);(!Z||("get"in Z?!L.__esModule:Z.writable||Z.configurable))&&(Z={enumerable:!0,get:function(){return L[B]}}),Object.defineProperty(O,z,Z)}:function(O,L,B,z){z===void 0&&(z=B),O[z]=L[B]}),e=gt&&gt.__setModuleDefault||(Object.create?function(O,L){Object.defineProperty(O,"default",{enumerable:!0,value:L})}:function(O,L){O.default=L}),r=gt&&gt.__importStar||function(){var O=function(L){return O=Object.getOwnPropertyNames||function(B){var z=[];for(var Z in B)Object.prototype.hasOwnProperty.call(B,Z)&&(z[z.length]=Z);return z},O(L)};return function(L){if(L&&L.__esModule)return L;var B={};if(L!=null)for(var z=O(L),Z=0;Z<z.length;Z++)z[Z]!=="default"&&t(B,L,z[Z]);return e(B,L),B}}();Object.defineProperty(gt,"__esModule",{value:!0}),gt.validateRtpCapabilities=c,gt.validateRtpParameters=l,gt.validateSctpStreamParameters=d,gt.validateSctpCapabilities=p,gt.getExtendedRtpCapabilities=m,gt.getRecvRtpCapabilities=g,gt.getSendingRtpParameters=v,gt.getSendingRemoteRtpParameters=S,gt.reduceCodecs=C,gt.generateProbatorRtpParameters=w,gt.canSend=y,gt.canReceive=f;const n=r(Ak()),i=r(Xt()),s="probator",o=1234,a=127;function c(O){if(typeof O!="object")throw new TypeError("caps is not an object");if(O.codecs&&!Array.isArray(O.codecs))throw new TypeError("caps.codecs is not an array");O.codecs||(O.codecs=[]);for(const L of O.codecs)u(L);if(O.headerExtensions&&!Array.isArray(O.headerExtensions))throw new TypeError("caps.headerExtensions is not an array");O.headerExtensions||(O.headerExtensions=[]);for(const L of O.headerExtensions)b(L)}function l(O){if(typeof O!="object")throw new TypeError("params is not an object");if(O.mid&&typeof O.mid!="string")throw new TypeError("params.mid is not a string");if(!Array.isArray(O.codecs))throw new TypeError("missing params.codecs");for(const L of O.codecs)A(L);if(O.headerExtensions&&!Array.isArray(O.headerExtensions))throw new TypeError("params.headerExtensions is not an array");O.headerExtensions||(O.headerExtensions=[]);for(const L of O.headerExtensions)R(L);if(O.encodings&&!Array.isArray(O.encodings))throw new TypeError("params.encodings is not an array");O.encodings||(O.encodings=[]);for(const L of O.encodings)_(L);if(O.rtcp&&typeof O.rtcp!="object")throw new TypeError("params.rtcp is not an object");O.rtcp||(O.rtcp={}),E(O.rtcp)}function d(O){if(typeof O!="object")throw new TypeError("params is not an object");if(typeof O.streamId!="number")throw new TypeError("missing params.streamId");let L=!1;if(typeof O.ordered=="boolean"?L=!0:O.ordered=!0,O.maxPacketLifeTime&&typeof O.maxPacketLifeTime!="number")throw new TypeError("invalid params.maxPacketLifeTime");if(O.maxRetransmits&&typeof O.maxRetransmits!="number")throw new TypeError("invalid params.maxRetransmits");if(O.maxPacketLifeTime&&O.maxRetransmits)throw new TypeError("cannot provide both maxPacketLifeTime and maxRetransmits");if(L&&O.ordered&&(O.maxPacketLifeTime||O.maxRetransmits))throw new TypeError("cannot be ordered with maxPacketLifeTime or maxRetransmits");if(!L&&(O.maxPacketLifeTime||O.maxRetransmits)&&(O.ordered=!1),O.label&&typeof O.label!="string")throw new TypeError("invalid params.label");if(O.protocol&&typeof O.protocol!="string")throw new TypeError("invalid params.protocol")}function p(O){if(typeof O!="object")throw new TypeError("caps is not an object");if(!O.numStreams||typeof O.numStreams!="object")throw new TypeError("missing caps.numStreams");P(O.numStreams)}function m(O,L){const B={codecs:[],headerExtensions:[]};for(const z of L.codecs??[]){if(T(z))continue;const Z=(O.codecs??[]).find(G=>k(G,z,{strict:!0,modify:!0}));if(!Z)continue;const V={mimeType:Z.mimeType,kind:Z.kind,clockRate:Z.clockRate,channels:Z.channels,localPayloadType:Z.preferredPayloadType,localRtxPayloadType:void 0,remotePayloadType:z.preferredPayloadType,remoteRtxPayloadType:void 0,localParameters:Z.parameters,remoteParameters:z.parameters,rtcpFeedback:X(Z,z)};B.codecs.push(V)}for(const z of B.codecs){const Z=O.codecs.find(G=>T(G)&&G.parameters.apt===z.localPayloadType),V=L.codecs.find(G=>T(G)&&G.parameters.apt===z.remotePayloadType);Z&&V&&(z.localRtxPayloadType=Z.preferredPayloadType,z.remoteRtxPayloadType=V.preferredPayloadType)}for(const z of L.headerExtensions){const Z=O.headerExtensions.find(G=>F(G,z));if(!Z)continue;const V={kind:z.kind,uri:z.uri,sendId:Z.preferredId,recvId:z.preferredId,encrypt:Z.preferredEncrypt,direction:"sendrecv"};switch(z.direction){case"sendrecv":{V.direction="sendrecv";break}case"recvonly":{V.direction="sendonly";break}case"sendonly":{V.direction="recvonly";break}case"inactive":{V.direction="inactive";break}}B.headerExtensions.push(V)}return B}function g(O){const L={codecs:[],headerExtensions:[]};for(const B of O.codecs){const z={mimeType:B.mimeType,kind:B.kind,preferredPayloadType:B.remotePayloadType,clockRate:B.clockRate,channels:B.channels,parameters:B.localParameters,rtcpFeedback:B.rtcpFeedback};if(L.codecs.push(z),!B.remoteRtxPayloadType)continue;const Z={mimeType:`${B.kind}/rtx`,kind:B.kind,preferredPayloadType:B.remoteRtxPayloadType,clockRate:B.clockRate,parameters:{apt:B.remotePayloadType},rtcpFeedback:[]};L.codecs.push(Z)}for(const B of O.headerExtensions){if(B.direction!=="sendrecv"&&B.direction!=="recvonly")continue;const z={kind:B.kind,uri:B.uri,preferredId:B.recvId,preferredEncrypt:B.encrypt,direction:B.direction};L.headerExtensions.push(z)}return L}function v(O,L){const B={mid:void 0,codecs:[],headerExtensions:[],encodings:[],rtcp:{}};for(const z of L.codecs){if(z.kind!==O)continue;const Z={mimeType:z.mimeType,payloadType:z.localPayloadType,clockRate:z.clockRate,channels:z.channels,parameters:z.localParameters,rtcpFeedback:z.rtcpFeedback};if(B.codecs.push(Z),z.localRtxPayloadType){const V={mimeType:`${z.kind}/rtx`,payloadType:z.localRtxPayloadType,clockRate:z.clockRate,parameters:{apt:z.localPayloadType},rtcpFeedback:[]};B.codecs.push(V)}}for(const z of L.headerExtensions){if(z.kind&&z.kind!==O||z.direction!=="sendrecv"&&z.direction!=="sendonly")continue;const Z={uri:z.uri,id:z.sendId,encrypt:z.encrypt,parameters:{}};B.headerExtensions.push(Z)}return B}function S(O,L){const B={mid:void 0,codecs:[],headerExtensions:[],encodings:[],rtcp:{}};for(const z of L.codecs){if(z.kind!==O)continue;const Z={mimeType:z.mimeType,payloadType:z.localPayloadType,clockRate:z.clockRate,channels:z.channels,parameters:z.remoteParameters,rtcpFeedback:z.rtcpFeedback};if(B.codecs.push(Z),z.localRtxPayloadType){const V={mimeType:`${z.kind}/rtx`,payloadType:z.localRtxPayloadType,clockRate:z.clockRate,parameters:{apt:z.localPayloadType},rtcpFeedback:[]};B.codecs.push(V)}}for(const z of L.headerExtensions){if(z.kind&&z.kind!==O||z.direction!=="sendrecv"&&z.direction!=="sendonly")continue;const Z={uri:z.uri,id:z.sendId,encrypt:z.encrypt,parameters:{}};B.headerExtensions.push(Z)}if(B.headerExtensions.some(z=>z.uri==="http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01"))for(const z of B.codecs)z.rtcpFeedback=(z.rtcpFeedback??[]).filter(Z=>Z.type!=="goog-remb");else if(B.headerExtensions.some(z=>z.uri==="http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time"))for(const z of B.codecs)z.rtcpFeedback=(z.rtcpFeedback??[]).filter(Z=>Z.type!=="transport-cc");else for(const z of B.codecs)z.rtcpFeedback=(z.rtcpFeedback??[]).filter(Z=>Z.type!=="transport-cc"&&Z.type!=="goog-remb");return B}function C(O,L){const B=[];if(!L)B.push(O[0]),T(O[1])&&B.push(O[1]);else{for(let z=0;z<O.length;++z)if(k(O[z],L,{strict:!0})){B.push(O[z]),T(O[z+1])&&B.push(O[z+1]);break}if(B.length===0)throw new TypeError("no matching codec found")}return B}function w(O){O=i.clone(O),l(O);const L={mid:s,codecs:[],headerExtensions:[],encodings:[{ssrc:o}],rtcp:{cname:"probator"}};return L.codecs.push(O.codecs[0]),L.codecs[0].payloadType=a,L.headerExtensions=O.headerExtensions,L}function y(O,L){return L.codecs.some(B=>B.kind===O)}function f(O,L){if(l(O),O.codecs.length===0)return!1;const B=O.codecs[0];return L.codecs.some(z=>z.remotePayloadType===B.payloadType)}function u(O){const L=new RegExp("^(audio|video)/(.+)","i");if(typeof O!="object")throw new TypeError("codec is not an object");if(!O.mimeType||typeof O.mimeType!="string")throw new TypeError("missing codec.mimeType");const B=L.exec(O.mimeType);if(!B)throw new TypeError("invalid codec.mimeType");if(O.kind=B[1].toLowerCase(),O.preferredPayloadType&&typeof O.preferredPayloadType!="number")throw new TypeError("invalid codec.preferredPayloadType");if(typeof O.clockRate!="number")throw new TypeError("missing codec.clockRate");O.kind==="audio"?typeof O.channels!="number"&&(O.channels=1):delete O.channels,(!O.parameters||typeof O.parameters!="object")&&(O.parameters={});for(const z of Object.keys(O.parameters)){let Z=O.parameters[z];if(Z===void 0&&(O.parameters[z]="",Z=""),typeof Z!="string"&&typeof Z!="number")throw new TypeError(`invalid codec parameter [key:${z}s, value:${Z}]`);if(z==="apt"&&typeof Z!="number")throw new TypeError("invalid codec apt parameter")}(!O.rtcpFeedback||!Array.isArray(O.rtcpFeedback))&&(O.rtcpFeedback=[]);for(const z of O.rtcpFeedback)h(z)}function h(O){if(typeof O!="object")throw new TypeError("fb is not an object");if(!O.type||typeof O.type!="string")throw new TypeError("missing fb.type");(!O.parameter||typeof O.parameter!="string")&&(O.parameter="")}function b(O){if(typeof O!="object")throw new TypeError("ext is not an object");if(O.kind!=="audio"&&O.kind!=="video")throw new TypeError("invalid ext.kind");if(!O.uri||typeof O.uri!="string")throw new TypeError("missing ext.uri");if(typeof O.preferredId!="number")throw new TypeError("missing ext.preferredId");if(O.preferredEncrypt&&typeof O.preferredEncrypt!="boolean")throw new TypeError("invalid ext.preferredEncrypt");if(O.preferredEncrypt||(O.preferredEncrypt=!1),O.direction&&typeof O.direction!="string")throw new TypeError("invalid ext.direction");O.direction||(O.direction="sendrecv")}function A(O){const L=new RegExp("^(audio|video)/(.+)","i");if(typeof O!="object")throw new TypeError("codec is not an object");if(!O.mimeType||typeof O.mimeType!="string")throw new TypeError("missing codec.mimeType");const B=L.exec(O.mimeType);if(!B)throw new TypeError("invalid codec.mimeType");if(typeof O.payloadType!="number")throw new TypeError("missing codec.payloadType");if(typeof O.clockRate!="number")throw new TypeError("missing codec.clockRate");B[1].toLowerCase()==="audio"?typeof O.channels!="number"&&(O.channels=1):delete O.channels,(!O.parameters||typeof O.parameters!="object")&&(O.parameters={});for(const Z of Object.keys(O.parameters)){let V=O.parameters[Z];if(V===void 0&&(O.parameters[Z]="",V=""),typeof V!="string"&&typeof V!="number")throw new TypeError(`invalid codec parameter [key:${Z}s, value:${V}]`);if(Z==="apt"&&typeof V!="number")throw new TypeError("invalid codec apt parameter")}(!O.rtcpFeedback||!Array.isArray(O.rtcpFeedback))&&(O.rtcpFeedback=[]);for(const Z of O.rtcpFeedback)h(Z)}function R(O){if(typeof O!="object")throw new TypeError("ext is not an object");if(!O.uri||typeof O.uri!="string")throw new TypeError("missing ext.uri");if(typeof O.id!="number")throw new TypeError("missing ext.id");if(O.encrypt&&typeof O.encrypt!="boolean")throw new TypeError("invalid ext.encrypt");O.encrypt||(O.encrypt=!1),(!O.parameters||typeof O.parameters!="object")&&(O.parameters={});for(const L of Object.keys(O.parameters)){let B=O.parameters[L];if(B===void 0&&(O.parameters[L]="",B=""),typeof B!="string"&&typeof B!="number")throw new TypeError("invalid header extension parameter")}}function _(O){if(typeof O!="object")throw new TypeError("encoding is not an object");if(O.ssrc&&typeof O.ssrc!="number")throw new TypeError("invalid encoding.ssrc");if(O.rid&&typeof O.rid!="string")throw new TypeError("invalid encoding.rid");if(O.rtx&&typeof O.rtx!="object")throw new TypeError("invalid encoding.rtx");if(O.rtx&&typeof O.rtx.ssrc!="number")throw new TypeError("missing encoding.rtx.ssrc");if((!O.dtx||typeof O.dtx!="boolean")&&(O.dtx=!1),O.scalabilityMode&&typeof O.scalabilityMode!="string")throw new TypeError("invalid encoding.scalabilityMode")}function E(O){if(typeof O!="object")throw new TypeError("rtcp is not an object");if(O.cname&&typeof O.cname!="string")throw new TypeError("invalid rtcp.cname");(!O.reducedSize||typeof O.reducedSize!="boolean")&&(O.reducedSize=!0)}function P(O){if(typeof O!="object")throw new TypeError("numStreams is not an object");if(typeof O.OS!="number")throw new TypeError("missing numStreams.OS");if(typeof O.MIS!="number")throw new TypeError("missing numStreams.MIS")}function T(O){return O?/.+\/rtx$/i.test(O.mimeType):!1}function k(O,L,{strict:B=!1,modify:z=!1}={}){const Z=O.mimeType.toLowerCase(),V=L.mimeType.toLowerCase();if(Z!==V||O.clockRate!==L.clockRate||O.channels!==L.channels)return!1;switch(Z){case"video/h264":{if(B){const G=O.parameters["packetization-mode"]||0,te=L.parameters["packetization-mode"]||0;if(G!==te||!n.isSameProfile(O.parameters,L.parameters))return!1;let re;try{re=n.generateProfileLevelIdStringForAnswer(O.parameters,L.parameters)}catch{return!1}z&&(re?(O.parameters["profile-level-id"]=re,L.parameters["profile-level-id"]=re):(delete O.parameters["profile-level-id"],delete L.parameters["profile-level-id"]))}break}case"video/vp9":{if(B){const G=O.parameters["profile-id"]||0,te=L.parameters["profile-id"]||0;if(G!==te)return!1}break}}return!0}function F(O,L){return!(O.kind&&L.kind&&O.kind!==L.kind||O.uri!==L.uri)}function X(O,L){const B=[];for(const z of O.rtcpFeedback??[]){const Z=(L.rtcpFeedback??[]).find(V=>V.type===z.type&&(V.parameter===z.parameter||!V.parameter&&!z.parameter));Z&&B.push(Z)}return B}return gt}var Rr={},Ou={},xo={},Do={},_v;function Rk(){if(_v)return Do;_v=1,Object.defineProperty(Do,"__esModule",{value:!0}),Do.Logger=void 0;const t=ud(),e="awaitqueue";class r{_debug;_warn;_error;constructor(i){i?(this._debug=t(`${e}:${i}`),this._warn=t(`${e}:WARN:${i}`),this._error=t(`${e}:ERROR:${i}`)):(this._debug=t(e),this._warn=t(`${e}:WARN`),this._error=t(`${e}:ERROR`)),this._debug.log=console.info.bind(console),this._warn.log=console.warn.bind(console),this._error.log=console.error.bind(console)}get debug(){return this._debug}get warn(){return this._warn}get error(){return this._error}}return Do.Logger=r,Do}var Vi={},Ev;function Gw(){if(Ev)return Vi;Ev=1,Object.defineProperty(Vi,"__esModule",{value:!0}),Vi.AwaitQueueRemovedTaskError=Vi.AwaitQueueStoppedError=void 0;class t extends Error{constructor(n){super(n??"queue stopped"),this.name="AwaitQueueStoppedError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,t)}}Vi.AwaitQueueStoppedError=t;class e extends Error{constructor(n){super(n??"queue task removed"),this.name="AwaitQueueRemovedTaskError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,e)}}return Vi.AwaitQueueRemovedTaskError=e,Vi}var Pv;function _k(){if(Pv)return xo;Pv=1,Object.defineProperty(xo,"__esModule",{value:!0}),xo.AwaitQueue=void 0;const t=Rk(),e=Gw(),r=new t.Logger("AwaitQueue");let n=class{pendingTasks=new Map;nextTaskId=0;stopping=!1;constructor(){r.debug("constructor()")}get size(){return this.pendingTasks.size}async push(s,o){if(o=o??s.name,r.debug(`push() [name:${o}]`),typeof s!="function")throw new TypeError("given task is not a function");if(o)try{Object.defineProperty(s,"name",{value:o})}catch{}return new Promise((a,c)=>{const l={id:this.nextTaskId++,task:s,name:o,enqueuedAt:Date.now(),executedAt:void 0,completed:!1,resolve:d=>{if(l.completed)return;l.completed=!0,this.pendingTasks.delete(l.id),r.debug(`resolving task [name:${l.name}]`),a(d);const[p]=this.pendingTasks.values();p&&!p.executedAt&&this.execute(p)},reject:d=>{if(!l.completed&&(l.completed=!0,this.pendingTasks.delete(l.id),r.debug(`rejecting task [name:${l.name}]: %s`,String(d)),c(d),!this.stopping)){const[p]=this.pendingTasks.values();p&&!p.executedAt&&this.execute(p)}}};this.pendingTasks.set(l.id,l),this.pendingTasks.size===1&&this.execute(l)})}stop(){r.debug("stop()"),this.stopping=!0;for(const s of this.pendingTasks.values())r.debug(`stop() | stopping task [name:${s.name}]`),s.reject(new e.AwaitQueueStoppedError);this.stopping=!1}remove(s){r.debug(`remove() [taskIdx:${s}]`);const o=Array.from(this.pendingTasks.values())[s];if(!o){r.debug(`stop() | no task with given idx [taskIdx:${s}]`);return}o.reject(new e.AwaitQueueRemovedTaskError)}dump(){const s=Date.now();let o=0;return Array.from(this.pendingTasks.values()).map(a=>({idx:o++,task:a.task,name:a.name,enqueuedTime:a.executedAt?a.executedAt-a.enqueuedAt:s-a.enqueuedAt,executionTime:a.executedAt?s-a.executedAt:0}))}async execute(s){if(r.debug(`execute() [name:${s.name}]`),s.executedAt)throw new Error("task already being executed");s.executedAt=Date.now();try{const o=await s.task();s.resolve(o)}catch(o){s.reject(o)}}};return xo.AwaitQueue=n,xo}var Tv;function Ek(){return Tv||(Tv=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.AwaitQueueRemovedTaskError=t.AwaitQueueStoppedError=t.AwaitQueue=void 0;var e=_k();Object.defineProperty(t,"AwaitQueue",{enumerable:!0,get:function(){return e.AwaitQueue}});var r=Gw();Object.defineProperty(t,"AwaitQueueStoppedError",{enumerable:!0,get:function(){return r.AwaitQueueStoppedError}}),Object.defineProperty(t,"AwaitQueueRemovedTaskError",{enumerable:!0,get:function(){return r.AwaitQueueRemovedTaskError}})}(Ou)),Ou}var xu,Iv;function Pk(){if(Iv)return xu;Iv=1;let t;return xu=typeof queueMicrotask=="function"?queueMicrotask.bind(typeof window<"u"?window:rE):e=>(t||(t=Promise.resolve())).then(e).catch(r=>setTimeout(()=>{throw r},0)),xu}var ko={},Ov;function Xw(){if(Ov)return ko;Ov=1,Object.defineProperty(ko,"__esModule",{value:!0}),ko.Producer=void 0;const t=St(),e=bs(),r=er(),n=new t.Logger("Producer");let i=class extends e.EnhancedEventEmitter{constructor({id:o,localId:a,rtpSender:c,track:l,rtpParameters:d,stopTracks:p,disableTrackOnPause:m,zeroRtpOnPause:g,appData:v}){super(),this._closed=!1,this._observer=new e.EnhancedEventEmitter,n.debug("constructor()"),this._id=o,this._localId=a,this._rtpSender=c,this._track=l,this._kind=l.kind,this._rtpParameters=d,this._paused=m?!l.enabled:!1,this._maxSpatialLayer=void 0,this._stopTracks=p,this._disableTrackOnPause=m,this._zeroRtpOnPause=g,this._appData=v??{},this.onTrackEnded=this.onTrackEnded.bind(this),this.handleTrack()}get id(){return this._id}get localId(){return this._localId}get closed(){return this._closed}get kind(){return this._kind}get rtpSender(){return this._rtpSender}get track(){return this._track}get rtpParameters(){return this._rtpParameters}get paused(){return this._paused}get maxSpatialLayer(){return this._maxSpatialLayer}get appData(){return this._appData}set appData(o){this._appData=o}get observer(){return this._observer}close(){this._closed||(n.debug("close()"),this._closed=!0,this.destroyTrack(),this.emit("@close"),this._observer.safeEmit("close"))}transportClosed(){this._closed||(n.debug("transportClosed()"),this._closed=!0,this.destroyTrack(),this.safeEmit("transportclose"),this._observer.safeEmit("close"))}async getStats(){if(this._closed)throw new r.InvalidStateError("closed");return new Promise((o,a)=>{this.safeEmit("@getstats",o,a)})}pause(){if(n.debug("pause()"),this._closed){n.error("pause() | Producer closed");return}this._paused=!0,this._track&&this._disableTrackOnPause&&(this._track.enabled=!1),this._zeroRtpOnPause&&new Promise((o,a)=>{this.safeEmit("@pause",o,a)}).catch(()=>{}),this._observer.safeEmit("pause")}resume(){if(n.debug("resume()"),this._closed){n.error("resume() | Producer closed");return}this._paused=!1,this._track&&this._disableTrackOnPause&&(this._track.enabled=!0),this._zeroRtpOnPause&&new Promise((o,a)=>{this.safeEmit("@resume",o,a)}).catch(()=>{}),this._observer.safeEmit("resume")}async replaceTrack({track:o}){if(n.debug("replaceTrack() [track:%o]",o),this._closed){if(o&&this._stopTracks)try{o.stop()}catch{}throw new r.InvalidStateError("closed")}else if(o&&o.readyState==="ended")throw new r.InvalidStateError("track ended");if(o===this._track){n.debug("replaceTrack() | same track, ignored");return}await new Promise((a,c)=>{this.safeEmit("@replacetrack",o,a,c)}),this.destroyTrack(),this._track=o,this._track&&this._disableTrackOnPause&&(this._paused?this._paused&&(this._track.enabled=!1):this._track.enabled=!0),this.handleTrack()}async setMaxSpatialLayer(o){if(this._closed)throw new r.InvalidStateError("closed");if(this._kind!=="video")throw new r.UnsupportedError("not a video Producer");if(typeof o!="number")throw new TypeError("invalid spatialLayer");o!==this._maxSpatialLayer&&(await new Promise((a,c)=>{this.safeEmit("@setmaxspatiallayer",o,a,c)}).catch(()=>{}),this._maxSpatialLayer=o)}async setRtpEncodingParameters(o){if(this._closed)throw new r.InvalidStateError("closed");if(typeof o!="object")throw new TypeError("invalid params");await new Promise((a,c)=>{this.safeEmit("@setrtpencodingparameters",o,a,c)})}onTrackEnded(){n.debug('track "ended" event'),this.safeEmit("trackended"),this._observer.safeEmit("trackended")}handleTrack(){this._track&&this._track.addEventListener("ended",this.onTrackEnded)}destroyTrack(){if(this._track)try{this._track.removeEventListener("ended",this.onTrackEnded),this._stopTracks&&this._track.stop()}catch{}}};return ko.Producer=i,ko}var Mo={},xv;function Uw(){if(xv)return Mo;xv=1,Object.defineProperty(Mo,"__esModule",{value:!0}),Mo.Consumer=void 0;const t=St(),e=bs(),r=er(),n=new t.Logger("Consumer");let i=class extends e.EnhancedEventEmitter{constructor({id:o,localId:a,producerId:c,rtpReceiver:l,track:d,rtpParameters:p,appData:m}){super(),this._closed=!1,this._observer=new e.EnhancedEventEmitter,n.debug("constructor()"),this._id=o,this._localId=a,this._producerId=c,this._rtpReceiver=l,this._track=d,this._rtpParameters=p,this._paused=!d.enabled,this._appData=m??{},this.onTrackEnded=this.onTrackEnded.bind(this),this.handleTrack()}get id(){return this._id}get localId(){return this._localId}get producerId(){return this._producerId}get closed(){return this._closed}get kind(){return this._track.kind}get rtpReceiver(){return this._rtpReceiver}get track(){return this._track}get rtpParameters(){return this._rtpParameters}get paused(){return this._paused}get appData(){return this._appData}set appData(o){this._appData=o}get observer(){return this._observer}close(){this._closed||(n.debug("close()"),this._closed=!0,this.destroyTrack(),this.emit("@close"),this._observer.safeEmit("close"))}transportClosed(){this._closed||(n.debug("transportClosed()"),this._closed=!0,this.destroyTrack(),this.safeEmit("transportclose"),this._observer.safeEmit("close"))}async getStats(){if(this._closed)throw new r.InvalidStateError("closed");return new Promise((o,a)=>{this.safeEmit("@getstats",o,a)})}pause(){if(n.debug("pause()"),this._closed){n.error("pause() | Consumer closed");return}if(this._paused){n.debug("pause() | Consumer is already paused");return}this._paused=!0,this._track.enabled=!1,this.emit("@pause"),this._observer.safeEmit("pause")}resume(){if(n.debug("resume()"),this._closed){n.error("resume() | Consumer closed");return}if(!this._paused){n.debug("resume() | Consumer is already resumed");return}this._paused=!1,this._track.enabled=!0,this.emit("@resume"),this._observer.safeEmit("resume")}onTrackEnded(){n.debug('track "ended" event'),this.safeEmit("trackended"),this._observer.safeEmit("trackended")}handleTrack(){this._track.addEventListener("ended",this.onTrackEnded)}destroyTrack(){try{this._track.removeEventListener("ended",this.onTrackEnded),this._track.stop()}catch{}}};return Mo.Consumer=i,Mo}var No={},Dv;function Ww(){if(Dv)return No;Dv=1,Object.defineProperty(No,"__esModule",{value:!0}),No.DataProducer=void 0;const t=St(),e=bs(),r=er(),n=new t.Logger("DataProducer");let i=class extends e.EnhancedEventEmitter{constructor({id:o,dataChannel:a,sctpStreamParameters:c,appData:l}){super(),this._closed=!1,this._observer=new e.EnhancedEventEmitter,n.debug("constructor()"),this._id=o,this._dataChannel=a,this._sctpStreamParameters=c,this._appData=l??{},this.handleDataChannel()}get id(){return this._id}get closed(){return this._closed}get sctpStreamParameters(){return this._sctpStreamParameters}get readyState(){return this._dataChannel.readyState}get label(){return this._dataChannel.label}get protocol(){return this._dataChannel.protocol}get bufferedAmount(){return this._dataChannel.bufferedAmount}get bufferedAmountLowThreshold(){return this._dataChannel.bufferedAmountLowThreshold}set bufferedAmountLowThreshold(o){this._dataChannel.bufferedAmountLowThreshold=o}get appData(){return this._appData}set appData(o){this._appData=o}get observer(){return this._observer}close(){this._closed||(n.debug("close()"),this._closed=!0,this._dataChannel.close(),this.emit("@close"),this._observer.safeEmit("close"))}transportClosed(){this._closed||(n.debug("transportClosed()"),this._closed=!0,this._dataChannel.close(),this.safeEmit("transportclose"),this._observer.safeEmit("close"))}send(o){if(n.debug("send()"),this._closed)throw new r.InvalidStateError("closed");this._dataChannel.send(o)}handleDataChannel(){this._dataChannel.addEventListener("open",()=>{this._closed||(n.debug('DataChannel "open" event'),this.safeEmit("open"))}),this._dataChannel.addEventListener("error",o=>{if(this._closed)return;let{error:a}=o;a||(a=new Error("unknown DataChannel error")),a.errorDetail==="sctp-failure"?n.error("DataChannel SCTP error [sctpCauseCode:%s]: %s",a.sctpCauseCode,a.message):n.error('DataChannel "error" event: %o',a),this.safeEmit("error",a)}),this._dataChannel.addEventListener("close",()=>{this._closed||(n.warn('DataChannel "close" event'),this._closed=!0,this.emit("@close"),this.safeEmit("close"),this._observer.safeEmit("close"))}),this._dataChannel.addEventListener("message",()=>{this._closed||n.warn('DataChannel "message" event in a DataProducer, message discarded')}),this._dataChannel.addEventListener("bufferedamountlow",()=>{this._closed||this.safeEmit("bufferedamountlow")})}};return No.DataProducer=i,No}var Lo={},kv;function Yw(){if(kv)return Lo;kv=1,Object.defineProperty(Lo,"__esModule",{value:!0}),Lo.DataConsumer=void 0;const t=St(),e=bs(),r=new t.Logger("DataConsumer");let n=class extends e.EnhancedEventEmitter{constructor({id:s,dataProducerId:o,dataChannel:a,sctpStreamParameters:c,appData:l}){super(),this._closed=!1,this._observer=new e.EnhancedEventEmitter,r.debug("constructor()"),this._id=s,this._dataProducerId=o,this._dataChannel=a,this._sctpStreamParameters=c,this._appData=l??{},this.handleDataChannel()}get id(){return this._id}get dataProducerId(){return this._dataProducerId}get closed(){return this._closed}get sctpStreamParameters(){return this._sctpStreamParameters}get readyState(){return this._dataChannel.readyState}get label(){return this._dataChannel.label}get protocol(){return this._dataChannel.protocol}get binaryType(){return this._dataChannel.binaryType}set binaryType(s){this._dataChannel.binaryType=s}get appData(){return this._appData}set appData(s){this._appData=s}get observer(){return this._observer}close(){this._closed||(r.debug("close()"),this._closed=!0,this._dataChannel.close(),this.emit("@close"),this._observer.safeEmit("close"))}transportClosed(){this._closed||(r.debug("transportClosed()"),this._closed=!0,this._dataChannel.close(),this.safeEmit("transportclose"),this._observer.safeEmit("close"))}handleDataChannel(){this._dataChannel.addEventListener("open",()=>{this._closed||(r.debug('DataChannel "open" event'),this.safeEmit("open"))}),this._dataChannel.addEventListener("error",s=>{if(this._closed)return;let{error:o}=s;o||(o=new Error("unknown DataChannel error")),o.errorDetail==="sctp-failure"?r.error("DataChannel SCTP error [sctpCauseCode:%s]: %s",o.sctpCauseCode,o.message):r.error('DataChannel "error" event: %o',o),this.safeEmit("error",o)}),this._dataChannel.addEventListener("close",()=>{this._closed||(r.warn('DataChannel "close" event'),this._closed=!0,this.emit("@close"),this.safeEmit("close"),this._observer.safeEmit("close"))}),this._dataChannel.addEventListener("message",s=>{this._closed||this.safeEmit("message",s.data)})}};return Lo.DataConsumer=n,Lo}var Mv;function Zw(){if(Mv)return Rr;Mv=1;var t=Rr&&Rr.__createBinding||(Object.create?function(y,f,u,h){h===void 0&&(h=u);var b=Object.getOwnPropertyDescriptor(f,u);(!b||("get"in b?!f.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:function(){return f[u]}}),Object.defineProperty(y,h,b)}:function(y,f,u,h){h===void 0&&(h=u),y[h]=f[u]}),e=Rr&&Rr.__setModuleDefault||(Object.create?function(y,f){Object.defineProperty(y,"default",{enumerable:!0,value:f})}:function(y,f){y.default=f}),r=Rr&&Rr.__importStar||function(){var y=function(f){return y=Object.getOwnPropertyNames||function(u){var h=[];for(var b in u)Object.prototype.hasOwnProperty.call(u,b)&&(h[h.length]=b);return h},y(f)};return function(f){if(f&&f.__esModule)return f;var u={};if(f!=null)for(var h=y(f),b=0;b<h.length;b++)h[b]!=="default"&&t(u,f,h[b]);return e(u,f),u}}(),n=Rr&&Rr.__importDefault||function(y){return y&&y.__esModule?y:{default:y}};Object.defineProperty(Rr,"__esModule",{value:!0}),Rr.Transport=void 0;const i=Ek(),s=n(Pk()),o=St(),a=bs(),c=er(),l=r(Xt()),d=r(lr()),p=Xw(),m=Uw(),g=Ww(),v=Yw(),S=new o.Logger("Transport");class C{constructor(f){this.consumerOptions=f,this.promise=new Promise((u,h)=>{this.resolve=u,this.reject=h})}}class w extends a.EnhancedEventEmitter{constructor({direction:f,id:u,iceParameters:h,iceCandidates:b,dtlsParameters:A,sctpParameters:R,iceServers:_,iceTransportPolicy:E,additionalSettings:P,proprietaryConstraints:T,appData:k,handlerFactory:F,extendedRtpCapabilities:X,canProduceByKind:O}){super(),this._closed=!1,this._iceGatheringState="new",this._connectionState="new",this._producers=new Map,this._consumers=new Map,this._dataProducers=new Map,this._dataConsumers=new Map,this._probatorConsumerCreated=!1,this._awaitQueue=new i.AwaitQueue,this._pendingConsumerTasks=[],this._consumerCreationInProgress=!1,this._pendingPauseConsumers=new Map,this._consumerPauseInProgress=!1,this._pendingResumeConsumers=new Map,this._consumerResumeInProgress=!1,this._pendingCloseConsumers=new Map,this._consumerCloseInProgress=!1,this._observer=new a.EnhancedEventEmitter,S.debug("constructor() [id:%s, direction:%s]",u,f),this._id=u,this._direction=f,this._extendedRtpCapabilities=X,this._canProduceByKind=O,this._maxSctpMessageSize=R?R.maxMessageSize:null;const L=l.clone(P)??{};delete L.iceServers,delete L.iceTransportPolicy,delete L.bundlePolicy,delete L.rtcpMuxPolicy,delete L.sdpSemantics,this._handler=F(),this._handler.run({direction:f,iceParameters:h,iceCandidates:b,dtlsParameters:A,sctpParameters:R,iceServers:_,iceTransportPolicy:E,additionalSettings:L,proprietaryConstraints:T,extendedRtpCapabilities:X}),this._appData=k??{},this.handleHandler()}get id(){return this._id}get closed(){return this._closed}get direction(){return this._direction}get handler(){return this._handler}get iceGatheringState(){return this._iceGatheringState}get connectionState(){return this._connectionState}get appData(){return this._appData}set appData(f){this._appData=f}get observer(){return this._observer}close(){if(!this._closed){S.debug("close()"),this._closed=!0,this._awaitQueue.stop(),this._handler.close(),this._connectionState="closed";for(const f of this._producers.values())f.transportClosed();this._producers.clear();for(const f of this._consumers.values())f.transportClosed();this._consumers.clear();for(const f of this._dataProducers.values())f.transportClosed();this._dataProducers.clear();for(const f of this._dataConsumers.values())f.transportClosed();this._dataConsumers.clear(),this._observer.safeEmit("close")}}async getStats(){if(this._closed)throw new c.InvalidStateError("closed");return this._handler.getTransportStats()}async restartIce({iceParameters:f}){if(S.debug("restartIce()"),this._closed)throw new c.InvalidStateError("closed");if(!f)throw new TypeError("missing iceParameters");return this._awaitQueue.push(async()=>await this._handler.restartIce(f),"transport.restartIce()")}async updateIceServers({iceServers:f}={}){if(S.debug("updateIceServers()"),this._closed)throw new c.InvalidStateError("closed");if(!Array.isArray(f))throw new TypeError("missing iceServers");return this._awaitQueue.push(async()=>this._handler.updateIceServers(f),"transport.updateIceServers()")}async produce({track:f,encodings:u,codecOptions:h,codec:b,stopTracks:A=!0,disableTrackOnPause:R=!0,zeroRtpOnPause:_=!1,onRtpSender:E,appData:P={}}={}){if(S.debug("produce() [track:%o]",f),this._closed)throw new c.InvalidStateError("closed");if(f){if(this._direction!=="send")throw new c.UnsupportedError("not a sending Transport");if(this._canProduceByKind[f.kind]){if(f.readyState==="ended")throw new c.InvalidStateError("track ended");if(this.listenerCount("connect")===0&&this._connectionState==="new")throw new TypeError('no "connect" listener set into this transport');if(this.listenerCount("produce")===0)throw new TypeError('no "produce" listener set into this transport');if(P&&typeof P!="object")throw new TypeError("if given, appData must be an object")}else throw new c.UnsupportedError(`cannot produce ${f.kind}`)}else throw new TypeError("missing track");return this._awaitQueue.push(async()=>{let T;if(u&&!Array.isArray(u))throw TypeError("encodings must be an array");u&&u.length===0?T=void 0:u&&(T=u.map(O=>{const L={active:!0};return O.active===!1&&(L.active=!1),typeof O.dtx=="boolean"&&(L.dtx=O.dtx),typeof O.scalabilityMode=="string"&&(L.scalabilityMode=O.scalabilityMode),typeof O.scaleResolutionDownBy=="number"&&(L.scaleResolutionDownBy=O.scaleResolutionDownBy),typeof O.maxBitrate=="number"&&(L.maxBitrate=O.maxBitrate),typeof O.maxFramerate=="number"&&(L.maxFramerate=O.maxFramerate),typeof O.adaptivePtime=="boolean"&&(L.adaptivePtime=O.adaptivePtime),typeof O.priority=="string"&&(L.priority=O.priority),typeof O.networkPriority=="string"&&(L.networkPriority=O.networkPriority),L}));const{localId:k,rtpParameters:F,rtpSender:X}=await this._handler.send({track:f,encodings:T,codecOptions:h,codec:b,onRtpSender:E});try{d.validateRtpParameters(F);const{id:O}=await new Promise((B,z)=>{this.safeEmit("produce",{kind:f.kind,rtpParameters:F,appData:P},B,z)}),L=new p.Producer({id:O,localId:k,rtpSender:X,track:f,rtpParameters:F,stopTracks:A,disableTrackOnPause:R,zeroRtpOnPause:_,appData:P});return this._producers.set(L.id,L),this.handleProducer(L),this._observer.safeEmit("newproducer",L),L}catch(O){throw this._handler.stopSending(k).catch(()=>{}),O}},"transport.produce()").catch(T=>{if(A)try{f.stop()}catch{}throw T})}async consume({id:f,producerId:u,kind:h,rtpParameters:b,streamId:A,onRtpReceiver:R,appData:_={}}){if(S.debug("consume()"),this._closed)throw new c.InvalidStateError("closed");if(this._direction!=="recv")throw new c.UnsupportedError("not a receiving Transport");if(typeof f!="string")throw new TypeError("missing id");if(typeof u!="string")throw new TypeError("missing producerId");if(h!=="audio"&&h!=="video")throw new TypeError(`invalid kind '${h}'`);if(this.listenerCount("connect")===0&&this._connectionState==="new")throw new TypeError('no "connect" listener set into this transport');if(_&&typeof _!="object")throw new TypeError("if given, appData must be an object");const E=l.clone(b);if(!d.canReceive(E,this._extendedRtpCapabilities))throw new c.UnsupportedError("cannot consume this Producer");const T=new C({id:f,producerId:u,kind:h,rtpParameters:E,streamId:A,onRtpReceiver:R,appData:_});return this._pendingConsumerTasks.push(T),(0,s.default)(()=>{this._closed||this._consumerCreationInProgress===!1&&this.createPendingConsumers()}),T.promise}async produceData({ordered:f=!0,maxPacketLifeTime:u,maxRetransmits:h,label:b="",protocol:A="",appData:R={}}={}){if(S.debug("produceData()"),this._closed)throw new c.InvalidStateError("closed");if(this._direction!=="send")throw new c.UnsupportedError("not a sending Transport");if(this._maxSctpMessageSize){if(this.listenerCount("connect")===0&&this._connectionState==="new")throw new TypeError('no "connect" listener set into this transport');if(this.listenerCount("producedata")===0)throw new TypeError('no "producedata" listener set into this transport');if(R&&typeof R!="object")throw new TypeError("if given, appData must be an object")}else throw new c.UnsupportedError("SCTP not enabled by remote Transport");return(u||h)&&(f=!1),this._awaitQueue.push(async()=>{const{dataChannel:_,sctpStreamParameters:E}=await this._handler.sendDataChannel({ordered:f,maxPacketLifeTime:u,maxRetransmits:h,label:b,protocol:A});d.validateSctpStreamParameters(E);const{id:P}=await new Promise((k,F)=>{this.safeEmit("producedata",{sctpStreamParameters:E,label:b,protocol:A,appData:R},k,F)}),T=new g.DataProducer({id:P,dataChannel:_,sctpStreamParameters:E,appData:R});return this._dataProducers.set(T.id,T),this.handleDataProducer(T),this._observer.safeEmit("newdataproducer",T),T},"transport.produceData()")}async consumeData({id:f,dataProducerId:u,sctpStreamParameters:h,label:b="",protocol:A="",appData:R={}}){if(S.debug("consumeData()"),this._closed)throw new c.InvalidStateError("closed");if(this._direction!=="recv")throw new c.UnsupportedError("not a receiving Transport");if(this._maxSctpMessageSize){if(typeof f!="string")throw new TypeError("missing id");if(typeof u!="string")throw new TypeError("missing dataProducerId");if(this.listenerCount("connect")===0&&this._connectionState==="new")throw new TypeError('no "connect" listener set into this transport');if(R&&typeof R!="object")throw new TypeError("if given, appData must be an object")}else throw new c.UnsupportedError("SCTP not enabled by remote Transport");const _=l.clone(h);return d.validateSctpStreamParameters(_),this._awaitQueue.push(async()=>{const{dataChannel:E}=await this._handler.receiveDataChannel({sctpStreamParameters:_,label:b,protocol:A}),P=new v.DataConsumer({id:f,dataProducerId:u,dataChannel:E,sctpStreamParameters:_,appData:R});return this._dataConsumers.set(P.id,P),this.handleDataConsumer(P),this._observer.safeEmit("newdataconsumer",P),P},"transport.consumeData()")}async createPendingConsumers(){this._consumerCreationInProgress=!0,this._awaitQueue.push(async()=>{if(this._pendingConsumerTasks.length===0){S.debug("createPendingConsumers() | there is no Consumer to be created");return}const f=[...this._pendingConsumerTasks];this._pendingConsumerTasks=[];let u;const h=[];for(const b of f){const{id:A,kind:R,rtpParameters:_,streamId:E,onRtpReceiver:P}=b.consumerOptions;h.push({trackId:A,kind:R,rtpParameters:_,streamId:E,onRtpReceiver:P})}try{const b=await this._handler.receive(h);for(let A=0;A<b.length;++A){const R=f[A],_=b[A],{id:E,producerId:P,kind:T,rtpParameters:k,appData:F}=R.consumerOptions,{localId:X,rtpReceiver:O,track:L}=_,B=new m.Consumer({id:E,localId:X,producerId:P,rtpReceiver:O,track:L,rtpParameters:k,appData:F});this._consumers.set(B.id,B),this.handleConsumer(B),!this._probatorConsumerCreated&&!u&&T==="video"&&(u=B),this._observer.safeEmit("newconsumer",B),R.resolve(B)}}catch(b){for(const A of f)A.reject(b)}if(u)try{const b=d.generateProbatorRtpParameters(u.rtpParameters);await this._handler.receive([{trackId:"probator",kind:"video",rtpParameters:b}]),S.debug("createPendingConsumers() | Consumer for RTP probation created"),this._probatorConsumerCreated=!0}catch(b){S.error("createPendingConsumers() | failed to create Consumer for RTP probation:%o",b)}},"transport.createPendingConsumers()").then(()=>{this._consumerCreationInProgress=!1,this._pendingConsumerTasks.length>0&&this.createPendingConsumers()}).catch(()=>{})}pausePendingConsumers(){this._consumerPauseInProgress=!0,this._awaitQueue.push(async()=>{if(this._pendingPauseConsumers.size===0){S.debug("pausePendingConsumers() | there is no Consumer to be paused");return}const f=Array.from(this._pendingPauseConsumers.values());this._pendingPauseConsumers.clear();try{const u=f.map(h=>h.localId);await this._handler.pauseReceiving(u)}catch(u){S.error("pausePendingConsumers() | failed to pause Consumers:",u)}},"transport.pausePendingConsumers").then(()=>{this._consumerPauseInProgress=!1,this._pendingPauseConsumers.size>0&&this.pausePendingConsumers()}).catch(()=>{})}resumePendingConsumers(){this._consumerResumeInProgress=!0,this._awaitQueue.push(async()=>{if(this._pendingResumeConsumers.size===0){S.debug("resumePendingConsumers() | there is no Consumer to be resumed");return}const f=Array.from(this._pendingResumeConsumers.values());this._pendingResumeConsumers.clear();try{const u=f.map(h=>h.localId);await this._handler.resumeReceiving(u)}catch(u){S.error("resumePendingConsumers() | failed to resume Consumers:",u)}},"transport.resumePendingConsumers").then(()=>{this._consumerResumeInProgress=!1,this._pendingResumeConsumers.size>0&&this.resumePendingConsumers()}).catch(()=>{})}closePendingConsumers(){this._consumerCloseInProgress=!0,this._awaitQueue.push(async()=>{if(this._pendingCloseConsumers.size===0){S.debug("closePendingConsumers() | there is no Consumer to be closed");return}const f=Array.from(this._pendingCloseConsumers.values());this._pendingCloseConsumers.clear();try{await this._handler.stopReceiving(f.map(u=>u.localId))}catch(u){S.error("closePendingConsumers() | failed to close Consumers:",u)}},"transport.closePendingConsumers").then(()=>{this._consumerCloseInProgress=!1,this._pendingCloseConsumers.size>0&&this.closePendingConsumers()}).catch(()=>{})}handleHandler(){const f=this._handler;f.on("@connect",({dtlsParameters:u},h,b)=>{if(this._closed){b(new c.InvalidStateError("closed"));return}this.safeEmit("connect",{dtlsParameters:u},h,b)}),f.on("@icegatheringstatechange",u=>{u!==this._iceGatheringState&&(S.debug("ICE gathering state changed to %s",u),this._iceGatheringState=u,this._closed||this.safeEmit("icegatheringstatechange",u))}),f.on("@connectionstatechange",u=>{u!==this._connectionState&&(S.debug("connection state changed to %s",u),this._connectionState=u,this._closed||this.safeEmit("connectionstatechange",u))})}handleProducer(f){f.on("@close",()=>{this._producers.delete(f.id),!this._closed&&this._awaitQueue.push(async()=>await this._handler.stopSending(f.localId),"producer @close event").catch(u=>S.warn("producer.close() failed:%o",u))}),f.on("@pause",(u,h)=>{this._awaitQueue.push(async()=>await this._handler.pauseSending(f.localId),"producer @pause event").then(u).catch(h)}),f.on("@resume",(u,h)=>{this._awaitQueue.push(async()=>await this._handler.resumeSending(f.localId),"producer @resume event").then(u).catch(h)}),f.on("@replacetrack",(u,h,b)=>{this._awaitQueue.push(async()=>await this._handler.replaceTrack(f.localId,u),"producer @replacetrack event").then(h).catch(b)}),f.on("@setmaxspatiallayer",(u,h,b)=>{this._awaitQueue.push(async()=>await this._handler.setMaxSpatialLayer(f.localId,u),"producer @setmaxspatiallayer event").then(h).catch(b)}),f.on("@setrtpencodingparameters",(u,h,b)=>{this._awaitQueue.push(async()=>await this._handler.setRtpEncodingParameters(f.localId,u),"producer @setrtpencodingparameters event").then(h).catch(b)}),f.on("@getstats",(u,h)=>{if(this._closed)return h(new c.InvalidStateError("closed"));this._handler.getSenderStats(f.localId).then(u).catch(h)})}handleConsumer(f){f.on("@close",()=>{this._consumers.delete(f.id),this._pendingPauseConsumers.delete(f.id),this._pendingResumeConsumers.delete(f.id),!this._closed&&(this._pendingCloseConsumers.set(f.id,f),this._consumerCloseInProgress===!1&&this.closePendingConsumers())}),f.on("@pause",()=>{this._pendingResumeConsumers.has(f.id)&&this._pendingResumeConsumers.delete(f.id),this._pendingPauseConsumers.set(f.id,f),(0,s.default)(()=>{this._closed||this._consumerPauseInProgress===!1&&this.pausePendingConsumers()})}),f.on("@resume",()=>{this._pendingPauseConsumers.has(f.id)&&this._pendingPauseConsumers.delete(f.id),this._pendingResumeConsumers.set(f.id,f),(0,s.default)(()=>{this._closed||this._consumerResumeInProgress===!1&&this.resumePendingConsumers()})}),f.on("@getstats",(u,h)=>{if(this._closed)return h(new c.InvalidStateError("closed"));this._handler.getReceiverStats(f.localId).then(u).catch(h)})}handleDataProducer(f){f.on("@close",()=>{this._dataProducers.delete(f.id)})}handleDataConsumer(f){f.on("@close",()=>{this._dataConsumers.delete(f.id)})}}return Rr.Transport=w,Rr}var rn={},_r={},Nv;function Hr(){if(Nv)return _r;Nv=1;var t=_r&&_r.__createBinding||(Object.create?function(c,l,d,p){p===void 0&&(p=d);var m=Object.getOwnPropertyDescriptor(l,d);(!m||("get"in m?!l.__esModule:m.writable||m.configurable))&&(m={enumerable:!0,get:function(){return l[d]}}),Object.defineProperty(c,p,m)}:function(c,l,d,p){p===void 0&&(p=d),c[p]=l[d]}),e=_r&&_r.__setModuleDefault||(Object.create?function(c,l){Object.defineProperty(c,"default",{enumerable:!0,value:l})}:function(c,l){c.default=l}),r=_r&&_r.__importStar||function(){var c=function(l){return c=Object.getOwnPropertyNames||function(d){var p=[];for(var m in d)Object.prototype.hasOwnProperty.call(d,m)&&(p[p.length]=m);return p},c(l)};return function(l){if(l&&l.__esModule)return l;var d={};if(l!=null)for(var p=c(l),m=0;m<p.length;m++)p[m]!=="default"&&t(d,l,p[m]);return e(d,l),d}}();Object.defineProperty(_r,"__esModule",{value:!0}),_r.extractRtpCapabilities=i,_r.extractDtlsParameters=s,_r.getCname=o,_r.applyCodecParameters=a;const n=r(cr());function i({sdpObject:c}){const l=new Map,d=[];let p=!1,m=!1;for(const v of c.media){const S=v.type;switch(S){case"audio":{if(p)continue;p=!0;break}case"video":{if(m)continue;m=!0;break}default:continue}for(const C of v.rtp){const w={kind:S,mimeType:`${S}/${C.codec}`,preferredPayloadType:C.payload,clockRate:C.rate,channels:C.encoding,parameters:{},rtcpFeedback:[]};l.set(w.preferredPayloadType,w)}for(const C of v.fmtp||[]){const w=n.parseParams(C.config),y=l.get(C.payload);y&&(w?.hasOwnProperty("profile-level-id")&&(w["profile-level-id"]=String(w["profile-level-id"])),y.parameters=w)}for(const C of v.rtcpFb||[]){const w={type:C.type,parameter:C.subtype};if(w.parameter||delete w.parameter,C.payload!=="*"){const y=l.get(C.payload);if(!y)continue;y.rtcpFeedback.push(w)}else for(const y of l.values())y.kind===S&&!/.+\/rtx$/i.test(y.mimeType)&&y.rtcpFeedback.push(w)}for(const C of v.ext||[]){if(C["encrypt-uri"])continue;const w={kind:S,uri:C.uri,preferredId:C.value};d.push(w)}}return{codecs:Array.from(l.values()),headerExtensions:d}}function s({sdpObject:c}){let l=c.setup,d=c.fingerprint;if(!l||!d){const g=(c.media||[]).find(v=>v.port!==0);g&&(l??(l=g.setup),d??(d=g.fingerprint))}if(l){if(!d)throw new Error("no a=fingerprint found at SDP session or media level")}else throw new Error("no a=setup found at SDP session or media level");let p;switch(l){case"active":{p="client";break}case"passive":{p="server";break}case"actpass":{p="auto";break}}return{role:p,fingerprints:[{algorithm:d.type,value:d.hash}]}}function o({offerMediaObject:c}){const l=(c.ssrcs||[]).find(d=>d.attribute==="cname");return l?l.value:""}function a({offerRtpParameters:c,answerMediaObject:l}){for(const d of c.codecs){const p=d.mimeType.toLowerCase();if(p!=="audio/opus"||!(l.rtp||[]).find(S=>S.payload===d.payloadType))continue;l.fmtp=l.fmtp||[];let g=l.fmtp.find(S=>S.payload===d.payloadType);g||(g={payload:d.payloadType,config:""},l.fmtp.push(g));const v=n.parseParams(g.config);switch(p){case"audio/opus":{const S=d.parameters["sprop-stereo"];S!==void 0&&(v.stereo=Number(S)?1:0);break}}g.config="";for(const S of Object.keys(v))g.config&&(g.config+=";"),g.config+=`${S}=${v[S]}`}}return _r}var jo={},Lv;function ys(){if(Lv)return jo;Lv=1,Object.defineProperty(jo,"__esModule",{value:!0}),jo.getRtpEncodings=t,jo.addLegacySimulcast=e;function t({offerMediaObject:r}){const n=new Set;for(const o of r.ssrcs||[]){const a=o.id;n.add(a)}if(n.size===0)throw new Error("no a=ssrc lines found");const i=new Map;for(const o of r.ssrcGroups||[]){if(o.semantics!=="FID")continue;let[a,c]=o.ssrcs.split(/\s+/);a=Number(a),c=Number(c),n.has(a)&&(n.delete(a),n.delete(c),i.set(a,c))}for(const o of n)i.set(o,null);const s=[];for(const[o,a]of i){const c={ssrc:o};a&&(c.rtx={ssrc:a}),s.push(c)}return s}function e({offerMediaObject:r,numStreams:n}){if(n<=1)throw new TypeError("numStreams must be greater than 1");const i=(r.ssrcs||[]).find(g=>g.attribute==="msid");if(!i)throw new Error("a=ssrc line with msid information not found");const[s,o]=i.value.split(" "),a=Number(i.id);let c;(r.ssrcGroups||[]).some(g=>{if(g.semantics!=="FID")return!1;const v=g.ssrcs.split(/\s+/);return Number(v[0])===a?(c=Number(v[1]),!0):!1});const l=r.ssrcs.find(g=>g.attribute==="cname");if(!l)throw new Error("a=ssrc line with cname information not found");const d=l.value,p=[],m=[];for(let g=0;g<n;++g)p.push(a+g),c&&m.push(c+g);r.ssrcGroups=[],r.ssrcs=[],r.ssrcGroups.push({semantics:"SIM",ssrcs:p.join(" ")});for(const g of p)r.ssrcs.push({id:g,attribute:"cname",value:d}),r.ssrcs.push({id:g,attribute:"msid",value:`${s} ${o}`});for(let g=0;g<m.length;++g){const v=p[g],S=m[g];r.ssrcs.push({id:S,attribute:"cname",value:d}),r.ssrcs.push({id:S,attribute:"msid",value:`${s} ${o}`}),r.ssrcGroups.push({semantics:"FID",ssrcs:`${v} ${S}`})}}return jo}var oc={},jv;function wa(){if(jv)return oc;jv=1,Object.defineProperty(oc,"__esModule",{value:!0}),oc.addNackSuppportForOpus=t;function t(e){for(const r of e.codecs??[])(r.mimeType.toLowerCase()==="audio/opus"||r.mimeType.toLowerCase()==="audio/multiopus")&&!r.rtcpFeedback?.some(n=>n.type==="nack"&&!n.parameter)&&(r.rtcpFeedback||(r.rtcpFeedback=[]),r.rtcpFeedback.push({type:"nack"}))}return oc}var Bo={},Bv;function yr(){if(Bv)return Bo;Bv=1,Object.defineProperty(Bo,"__esModule",{value:!0}),Bo.HandlerInterface=void 0;const t=bs();let e=class extends t.EnhancedEventEmitter{constructor(){super()}};return Bo.HandlerInterface=e,Bo}var nn={},or={},Fv;function Tk(){if(Fv)return or;Fv=1;var t=or&&or.__createBinding||(Object.create?function(l,d,p,m){m===void 0&&(m=p);var g=Object.getOwnPropertyDescriptor(d,p);(!g||("get"in g?!d.__esModule:g.writable||g.configurable))&&(g={enumerable:!0,get:function(){return d[p]}}),Object.defineProperty(l,m,g)}:function(l,d,p,m){m===void 0&&(m=p),l[m]=d[p]}),e=or&&or.__setModuleDefault||(Object.create?function(l,d){Object.defineProperty(l,"default",{enumerable:!0,value:d})}:function(l,d){l.default=d}),r=or&&or.__importStar||function(){var l=function(d){return l=Object.getOwnPropertyNames||function(p){var m=[];for(var g in p)Object.prototype.hasOwnProperty.call(p,g)&&(m[m.length]=g);return m},l(d)};return function(d){if(d&&d.__esModule)return d;var p={};if(d!=null)for(var m=l(d),g=0;g<m.length;g++)m[g]!=="default"&&t(p,d,m[g]);return e(p,d),p}}();Object.defineProperty(or,"__esModule",{value:!0}),or.OfferMediaSection=or.AnswerMediaSection=or.MediaSection=void 0;const n=r(cr()),i=r(Xt());let s=class{constructor({iceParameters:d,iceCandidates:p,dtlsParameters:m,planB:g=!1}){if(this._mediaObject={},this._planB=g,d&&this.setIceParameters(d),p){this._mediaObject.candidates=[];for(const v of p){const S={};S.component=1,S.foundation=v.foundation,S.ip=v.address??v.ip,S.port=v.port,S.priority=v.priority,S.transport=v.protocol,S.type=v.type,v.tcpType&&(S.tcptype=v.tcpType),this._mediaObject.candidates.push(S)}this._mediaObject.endOfCandidates="end-of-candidates",this._mediaObject.iceOptions="renomination"}m&&this.setDtlsRole(m.role)}get mid(){return String(this._mediaObject.mid)}get closed(){return this._mediaObject.port===0}getObject(){return this._mediaObject}setIceParameters(d){this._mediaObject.iceUfrag=d.usernameFragment,this._mediaObject.icePwd=d.password}pause(){this._mediaObject.direction="inactive"}disable(){this.pause(),delete this._mediaObject.ext,delete this._mediaObject.ssrcs,delete this._mediaObject.ssrcGroups,delete this._mediaObject.simulcast,delete this._mediaObject.simulcast_03,delete this._mediaObject.rids,delete this._mediaObject.extmapAllowMixed}close(){this.disable(),this._mediaObject.port=0}};or.MediaSection=s;class o extends s{constructor({iceParameters:d,iceCandidates:p,dtlsParameters:m,sctpParameters:g,plainRtpParameters:v,planB:S=!1,offerMediaObject:C,offerRtpParameters:w,answerRtpParameters:y,codecOptions:f,extmapAllowMixed:u=!1}){switch(super({iceParameters:d,iceCandidates:p,dtlsParameters:m,planB:S}),this._mediaObject.mid=String(C.mid),this._mediaObject.type=C.type,this._mediaObject.protocol=C.protocol,v?(this._mediaObject.connection={ip:v.ip,version:v.ipVersion},this._mediaObject.port=v.port):(this._mediaObject.connection={ip:"127.0.0.1",version:4},this._mediaObject.port=7),C.type){case"audio":case"video":{this._mediaObject.direction="recvonly",this._mediaObject.rtp=[],this._mediaObject.rtcpFb=[],this._mediaObject.fmtp=[];for(const h of y.codecs){const b={payload:h.payloadType,codec:c(h),rate:h.clockRate};h.channels>1&&(b.encoding=h.channels),this._mediaObject.rtp.push(b);const A=i.clone(h.parameters)??{};let R=i.clone(h.rtcpFeedback)??[];if(f){const{opusStereo:E,opusFec:P,opusDtx:T,opusMaxPlaybackRate:k,opusMaxAverageBitrate:F,opusPtime:X,opusNack:O,videoGoogleStartBitrate:L,videoGoogleMaxBitrate:B,videoGoogleMinBitrate:z}=f,Z=w.codecs.find(V=>V.payloadType===h.payloadType);switch(h.mimeType.toLowerCase()){case"audio/opus":case"audio/multiopus":{E!==void 0&&(Z.parameters["sprop-stereo"]=E?1:0,A.stereo=E?1:0),P!==void 0&&(Z.parameters.useinbandfec=P?1:0,A.useinbandfec=P?1:0),T!==void 0&&(Z.parameters.usedtx=T?1:0,A.usedtx=T?1:0),k!==void 0&&(A.maxplaybackrate=k),F!==void 0&&(A.maxaveragebitrate=F),X!==void 0&&(Z.parameters.ptime=X,A.ptime=X),O||(Z.rtcpFeedback=Z.rtcpFeedback.filter(V=>V.type!=="nack"||V.parameter),R=R.filter(V=>V.type!=="nack"||V.parameter));break}case"video/vp8":case"video/vp9":case"video/h264":case"video/h265":{L!==void 0&&(A["x-google-start-bitrate"]=L),B!==void 0&&(A["x-google-max-bitrate"]=B),z!==void 0&&(A["x-google-min-bitrate"]=z);break}}}const _={payload:h.payloadType,config:""};for(const E of Object.keys(A))_.config&&(_.config+=";"),_.config+=`${E}=${A[E]}`;_.config&&this._mediaObject.fmtp.push(_);for(const E of R)this._mediaObject.rtcpFb.push({payload:h.payloadType,type:E.type,subtype:E.parameter})}this._mediaObject.payloads=y.codecs.map(h=>h.payloadType).join(" "),this._mediaObject.ext=[];for(const h of y.headerExtensions)(C.ext??[]).some(A=>A.uri===h.uri)&&this._mediaObject.ext.push({uri:h.uri,value:h.id});if(u&&C.extmapAllowMixed==="extmap-allow-mixed"&&(this._mediaObject.extmapAllowMixed="extmap-allow-mixed"),C.simulcast){this._mediaObject.simulcast={dir1:"recv",list1:C.simulcast.list1},this._mediaObject.rids=[];for(const h of C.rids??[])h.direction==="send"&&this._mediaObject.rids.push({id:h.id,direction:"recv"})}else if(C.simulcast_03){this._mediaObject.simulcast_03={value:C.simulcast_03.value.replace(/send/g,"recv")},this._mediaObject.rids=[];for(const h of C.rids??[])h.direction==="send"&&this._mediaObject.rids.push({id:h.id,direction:"recv"})}this._mediaObject.rtcpMux="rtcp-mux",this._mediaObject.rtcpRsize="rtcp-rsize",this._planB&&this._mediaObject.type==="video"&&(this._mediaObject.xGoogleFlag="conference");break}case"application":{typeof C.sctpPort=="number"?(this._mediaObject.payloads="webrtc-datachannel",this._mediaObject.sctpPort=g.port,this._mediaObject.maxMessageSize=g.maxMessageSize):C.sctpmap&&(this._mediaObject.payloads=g.port,this._mediaObject.sctpmap={app:"webrtc-datachannel",sctpmapNumber:g.port,maxMessageSize:g.maxMessageSize});break}}}setDtlsRole(d){switch(d){case"client":{this._mediaObject.setup="active";break}case"server":{this._mediaObject.setup="passive";break}case"auto":{this._mediaObject.setup="actpass";break}}}resume(){this._mediaObject.direction="recvonly"}muxSimulcastStreams(d){if(!this._mediaObject.simulcast?.list1)return;const p={};for(const v of d)v.rid&&(p[v.rid]=v);const m=this._mediaObject.simulcast.list1,g=n.parseSimulcastStreamList(m);for(const v of g)for(const S of v)S.paused=!p[S.scid]?.active;this._mediaObject.simulcast.list1=g.map(v=>v.map(S=>`${S.paused?"~":""}${S.scid}`).join(",")).join(";")}}or.AnswerMediaSection=o;class a extends s{constructor({iceParameters:d,iceCandidates:p,dtlsParameters:m,sctpParameters:g,plainRtpParameters:v,planB:S=!1,mid:C,kind:w,offerRtpParameters:y,streamId:f,trackId:u,oldDataChannelSpec:h=!1}){switch(super({iceParameters:d,iceCandidates:p,dtlsParameters:m,planB:S}),this._mediaObject.mid=String(C),this._mediaObject.type=w,v?(this._mediaObject.connection={ip:v.ip,version:v.ipVersion},this._mediaObject.protocol="RTP/AVP",this._mediaObject.port=v.port):(this._mediaObject.connection={ip:"127.0.0.1",version:4},g?this._mediaObject.protocol="UDP/DTLS/SCTP":this._mediaObject.protocol="UDP/TLS/RTP/SAVPF",this._mediaObject.port=7),w){case"audio":case"video":{this._mediaObject.direction="sendonly",this._mediaObject.rtp=[],this._mediaObject.rtcpFb=[],this._mediaObject.fmtp=[],this._planB||(this._mediaObject.msid=`${f??"-"} ${u}`);for(const _ of y.codecs){const E={payload:_.payloadType,codec:c(_),rate:_.clockRate};_.channels>1&&(E.encoding=_.channels),this._mediaObject.rtp.push(E);const P={payload:_.payloadType,config:""};for(const T of Object.keys(_.parameters))P.config&&(P.config+=";"),P.config+=`${T}=${_.parameters[T]}`;P.config&&this._mediaObject.fmtp.push(P);for(const T of _.rtcpFeedback)this._mediaObject.rtcpFb.push({payload:_.payloadType,type:T.type,subtype:T.parameter})}this._mediaObject.payloads=y.codecs.map(_=>_.payloadType).join(" "),this._mediaObject.ext=[];for(const _ of y.headerExtensions)this._mediaObject.ext.push({uri:_.uri,value:_.id});this._mediaObject.rtcpMux="rtcp-mux",this._mediaObject.rtcpRsize="rtcp-rsize";const b=y.encodings[0],A=b.ssrc,R=b.rtx?.ssrc;this._mediaObject.ssrcs=[],this._mediaObject.ssrcGroups=[],y.rtcp.cname&&this._mediaObject.ssrcs.push({id:A,attribute:"cname",value:y.rtcp.cname}),this._planB&&this._mediaObject.ssrcs.push({id:A,attribute:"msid",value:`${f??"-"} ${u}`}),R&&(y.rtcp.cname&&this._mediaObject.ssrcs.push({id:R,attribute:"cname",value:y.rtcp.cname}),this._planB&&this._mediaObject.ssrcs.push({id:R,attribute:"msid",value:`${f??"-"} ${u}`}),this._mediaObject.ssrcGroups.push({semantics:"FID",ssrcs:`${A} ${R}`}));break}case"application":{h?(this._mediaObject.payloads=g.port,this._mediaObject.sctpmap={app:"webrtc-datachannel",sctpmapNumber:g.port,maxMessageSize:g.maxMessageSize}):(this._mediaObject.payloads="webrtc-datachannel",this._mediaObject.sctpPort=g.port,this._mediaObject.maxMessageSize=g.maxMessageSize);break}}}setDtlsRole(d){this._mediaObject.setup="actpass"}resume(){this._mediaObject.direction="sendonly"}planBReceive({offerRtpParameters:d,streamId:p,trackId:m}){const g=d.encodings[0],v=g.ssrc,S=g.rtx?.ssrc,C=this._mediaObject.payloads.split(" ");for(const w of d.codecs){if(C.includes(String(w.payloadType)))continue;const y={payload:w.payloadType,codec:c(w),rate:w.clockRate};w.channels>1&&(y.encoding=w.channels),this._mediaObject.rtp.push(y);const f={payload:w.payloadType,config:""};for(const u of Object.keys(w.parameters))f.config&&(f.config+=";"),f.config+=`${u}=${w.parameters[u]}`;f.config&&this._mediaObject.fmtp.push(f);for(const u of w.rtcpFeedback)this._mediaObject.rtcpFb.push({payload:w.payloadType,type:u.type,subtype:u.parameter})}this._mediaObject.payloads+=` ${d.codecs.filter(w=>!this._mediaObject.payloads.includes(w.payloadType)).map(w=>w.payloadType).join(" ")}`,this._mediaObject.payloads=this._mediaObject.payloads.trim(),d.rtcp.cname&&this._mediaObject.ssrcs.push({id:v,attribute:"cname",value:d.rtcp.cname}),this._mediaObject.ssrcs.push({id:v,attribute:"msid",value:`${p??"-"} ${m}`}),S&&(d.rtcp.cname&&this._mediaObject.ssrcs.push({id:S,attribute:"cname",value:d.rtcp.cname}),this._mediaObject.ssrcs.push({id:S,attribute:"msid",value:`${p??"-"} ${m}`}),this._mediaObject.ssrcGroups.push({semantics:"FID",ssrcs:`${v} ${S}`}))}planBStopReceiving({offerRtpParameters:d}){const p=d.encodings[0],m=p.ssrc,g=p.rtx?.ssrc;this._mediaObject.ssrcs=this._mediaObject.ssrcs.filter(v=>v.id!==m&&v.id!==g),g&&(this._mediaObject.ssrcGroups=this._mediaObject.ssrcGroups.filter(v=>v.ssrcs!==`${m} ${g}`))}}or.OfferMediaSection=a;function c(l){const p=new RegExp("^(audio|video)/(.+)","i").exec(l.mimeType);if(!p)throw new TypeError("invalid codec.mimeType");return p[2]}return or}var zv;function Vr(){if(zv)return nn;zv=1;var t=nn&&nn.__createBinding||(Object.create?function(c,l,d,p){p===void 0&&(p=d);var m=Object.getOwnPropertyDescriptor(l,d);(!m||("get"in m?!l.__esModule:m.writable||m.configurable))&&(m={enumerable:!0,get:function(){return l[d]}}),Object.defineProperty(c,p,m)}:function(c,l,d,p){p===void 0&&(p=d),c[p]=l[d]}),e=nn&&nn.__setModuleDefault||(Object.create?function(c,l){Object.defineProperty(c,"default",{enumerable:!0,value:l})}:function(c,l){c.default=l}),r=nn&&nn.__importStar||function(){var c=function(l){return c=Object.getOwnPropertyNames||function(d){var p=[];for(var m in d)Object.prototype.hasOwnProperty.call(d,m)&&(p[p.length]=m);return p},c(l)};return function(l){if(l&&l.__esModule)return l;var d={};if(l!=null)for(var p=c(l),m=0;m<p.length;m++)p[m]!=="default"&&t(d,l,p[m]);return e(d,l),d}}();Object.defineProperty(nn,"__esModule",{value:!0}),nn.RemoteSdp=void 0;const n=r(cr()),i=St(),s=Tk(),o=new i.Logger("RemoteSdp");let a=class{constructor({iceParameters:l,iceCandidates:d,dtlsParameters:p,sctpParameters:m,plainRtpParameters:g,planB:v=!1}){if(this._mediaSections=[],this._midToIndex=new Map,this._iceParameters=l,this._iceCandidates=d,this._dtlsParameters=p,this._sctpParameters=m,this._plainRtpParameters=g,this._planB=v,this._sdpObject={version:0,origin:{address:"0.0.0.0",ipVer:4,netType:"IN",sessionId:1e4,sessionVersion:0,username:"mediasoup-client"},name:"-",timing:{start:0,stop:0},media:[]},l?.iceLite&&(this._sdpObject.icelite="ice-lite"),p){this._sdpObject.msidSemantic={semantic:"WMS",token:"*"};const S=this._dtlsParameters.fingerprints.length;this._sdpObject.fingerprint={type:p.fingerprints[S-1].algorithm,hash:p.fingerprints[S-1].value},this._sdpObject.groups=[{type:"BUNDLE",mids:""}]}g&&(this._sdpObject.origin.address=g.ip,this._sdpObject.origin.ipVer=g.ipVersion)}updateIceParameters(l){o.debug("updateIceParameters() [iceParameters:%o]",l),this._iceParameters=l,this._sdpObject.icelite=l.iceLite?"ice-lite":void 0;for(const d of this._mediaSections)d.setIceParameters(l)}updateDtlsRole(l){o.debug("updateDtlsRole() [role:%s]",l),this._dtlsParameters.role=l;for(const d of this._mediaSections)d.setDtlsRole(l)}getNextMediaSectionIdx(){for(let l=0;l<this._mediaSections.length;++l){const d=this._mediaSections[l];if(d.closed)return{idx:l,reuseMid:d.mid}}return{idx:this._mediaSections.length}}send({offerMediaObject:l,reuseMid:d,offerRtpParameters:p,answerRtpParameters:m,codecOptions:g,extmapAllowMixed:v=!1}){const S=new s.AnswerMediaSection({iceParameters:this._iceParameters,iceCandidates:this._iceCandidates,dtlsParameters:this._dtlsParameters,plainRtpParameters:this._plainRtpParameters,planB:this._planB,offerMediaObject:l,offerRtpParameters:p,answerRtpParameters:m,codecOptions:g,extmapAllowMixed:v});d?this._replaceMediaSection(S,d):this._midToIndex.has(S.mid)?this._replaceMediaSection(S):this._addMediaSection(S)}receive({mid:l,kind:d,offerRtpParameters:p,streamId:m,trackId:g}){const v=this._midToIndex.get(l);let S;if(v!==void 0&&(S=this._mediaSections[v]),S)S.planBReceive({offerRtpParameters:p,streamId:m,trackId:g}),this._replaceMediaSection(S);else{S=new s.OfferMediaSection({iceParameters:this._iceParameters,iceCandidates:this._iceCandidates,dtlsParameters:this._dtlsParameters,plainRtpParameters:this._plainRtpParameters,planB:this._planB,mid:l,kind:d,offerRtpParameters:p,streamId:m,trackId:g});const C=this._mediaSections.find(w=>w.closed);C?this._replaceMediaSection(S,C.mid):this._addMediaSection(S)}}pauseMediaSection(l){this._findMediaSection(l).pause()}resumeSendingMediaSection(l){this._findMediaSection(l).resume()}resumeReceivingMediaSection(l){this._findMediaSection(l).resume()}disableMediaSection(l){this._findMediaSection(l).disable()}closeMediaSection(l){const d=this._findMediaSection(l);return l===this._firstMid?(o.debug("closeMediaSection() | cannot close first media section, disabling it instead [mid:%s]",l),this.disableMediaSection(l),!1):(d.close(),this._regenerateBundleMids(),!0)}muxMediaSectionSimulcast(l,d){const p=this._findMediaSection(l);p.muxSimulcastStreams(d),this._replaceMediaSection(p)}planBStopReceiving({mid:l,offerRtpParameters:d}){const p=this._findMediaSection(l);p.planBStopReceiving({offerRtpParameters:d}),this._replaceMediaSection(p)}sendSctpAssociation({offerMediaObject:l}){const d=new s.AnswerMediaSection({iceParameters:this._iceParameters,iceCandidates:this._iceCandidates,dtlsParameters:this._dtlsParameters,sctpParameters:this._sctpParameters,plainRtpParameters:this._plainRtpParameters,offerMediaObject:l});this._addMediaSection(d)}receiveSctpAssociation({oldDataChannelSpec:l=!1}={}){const d=new s.OfferMediaSection({iceParameters:this._iceParameters,iceCandidates:this._iceCandidates,dtlsParameters:this._dtlsParameters,sctpParameters:this._sctpParameters,plainRtpParameters:this._plainRtpParameters,mid:"datachannel",kind:"application",oldDataChannelSpec:l});this._addMediaSection(d)}getSdp(){return this._sdpObject.origin.sessionVersion++,n.write(this._sdpObject)}_addMediaSection(l){this._firstMid||(this._firstMid=l.mid),this._mediaSections.push(l),this._midToIndex.set(l.mid,this._mediaSections.length-1),this._sdpObject.media.push(l.getObject()),this._regenerateBundleMids()}_replaceMediaSection(l,d){if(typeof d=="string"){const p=this._midToIndex.get(d);if(p===void 0)throw new Error(`no media section found for reuseMid '${d}'`);const m=this._mediaSections[p];this._mediaSections[p]=l,this._midToIndex.delete(m.mid),this._midToIndex.set(l.mid,p),this._sdpObject.media[p]=l.getObject(),this._regenerateBundleMids()}else{const p=this._midToIndex.get(l.mid);if(p===void 0)throw new Error(`no media section found with mid '${l.mid}'`);this._mediaSections[p]=l,this._sdpObject.media[p]=l.getObject()}}_findMediaSection(l){const d=this._midToIndex.get(l);if(d===void 0)throw new Error(`no media section found with mid '${l}'`);return this._mediaSections[d]}_regenerateBundleMids(){this._dtlsParameters&&(this._sdpObject.groups[0].mids=this._mediaSections.filter(l=>!l.closed).map(l=>l.mid).join(" "))}};return nn.RemoteSdp=a,nn}var ac={},Hv;function di(){if(Hv)return ac;Hv=1,Object.defineProperty(ac,"__esModule",{value:!0}),ac.parse=e;const t=new RegExp("^[LS]([1-9]\\d{0,1})T([1-9]\\d{0,1})");function e(r){const n=t.exec(r??"");return n?{spatialLayers:Number(n[1]),temporalLayers:Number(n[2])}:{spatialLayers:1,temporalLayers:1}}return ac}var Vv;function Ik(){if(Vv)return rn;Vv=1;var t=rn&&rn.__createBinding||(Object.create?function(y,f,u,h){h===void 0&&(h=u);var b=Object.getOwnPropertyDescriptor(f,u);(!b||("get"in b?!f.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:function(){return f[u]}}),Object.defineProperty(y,h,b)}:function(y,f,u,h){h===void 0&&(h=u),y[h]=f[u]}),e=rn&&rn.__setModuleDefault||(Object.create?function(y,f){Object.defineProperty(y,"default",{enumerable:!0,value:f})}:function(y,f){y.default=f}),r=rn&&rn.__importStar||function(){var y=function(f){return y=Object.getOwnPropertyNames||function(u){var h=[];for(var b in u)Object.prototype.hasOwnProperty.call(u,b)&&(h[h.length]=b);return h},y(f)};return function(f){if(f&&f.__esModule)return f;var u={};if(f!=null)for(var h=y(f),b=0;b<h.length;b++)h[b]!=="default"&&t(u,f,h[b]);return e(u,f),u}}();Object.defineProperty(rn,"__esModule",{value:!0}),rn.Chrome111=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(ys()),l=r(wa()),d=er(),p=yr(),m=Vr(),g=di(),v=new i.Logger("Chrome111"),S="Chrome111",C={OS:1024,MIS:1024};let w=class qw extends p.HandlerInterface{static createFactory(){return()=>new qw}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return S}close(){if(v.debug("close()"),!this._closed){if(this._closed=!0,this._pc)try{this._pc.close()}catch{}this.emit("@close")}}async getNativeRtpCapabilities(){v.debug("getNativeRtpCapabilities()");const f=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan"});try{f.addTransceiver("audio"),f.addTransceiver("video");const u=await f.createOffer();try{f.close()}catch{}const h=n.parse(u.sdp),b=a.extractRtpCapabilities({sdpObject:h});return l.addNackSuppportForOpus(b),b}catch(u){try{f.close()}catch{}throw u}}async getNativeSctpCapabilities(){return v.debug("getNativeSctpCapabilities()"),{numStreams:C}}run({direction:f,iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A,iceServers:R,iceTransportPolicy:_,additionalSettings:E,proprietaryConstraints:P,extendedRtpCapabilities:T}){this.assertNotClosed(),v.debug("run()"),this._direction=f,this._remoteSdp=new m.RemoteSdp({iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",T),video:o.getSendingRtpParameters("video",T)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",T),video:o.getSendingRemoteRtpParameters("video",T)},b.role&&b.role!=="auto"&&(this._forcedLocalDtlsRole=b.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:R??[],iceTransportPolicy:_??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan",...E},P),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):(v.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.addEventListener("iceconnectionstatechange",()=>{switch(this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}}))}async updateIceServers(f){this.assertNotClosed(),v.debug("updateIceServers()");const u=this._pc.getConfiguration();u.iceServers=f,this._pc.setConfiguration(u)}async restartIce(f){if(this.assertNotClosed(),v.debug("restartIce()"),this._remoteSdp.updateIceParameters(f),!!this._transportReady)if(this._direction==="send"){const u=await this._pc.createOffer({iceRestart:!0});v.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}else{const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}}async getTransportStats(){return this.assertNotClosed(),this._pc.getStats()}async send({track:f,encodings:u,codecOptions:h,codec:b,onRtpSender:A}){if(this.assertNotClosed(),this.assertSendDirection(),v.debug("send() [kind:%s, track.id:%s]",f.kind,f.id),u&&u.length>1){let L=1;for(const B of u){const z=B.scalabilityMode?(0,g.parse)(B.scalabilityMode).temporalLayers:3;z>L&&(L=z)}u.forEach((B,z)=>{B.rid=`r${z}`,B.scalabilityMode=`L1T${L}`})}const R=s.clone(this._sendingRtpParametersByKind[f.kind]);R.codecs=o.reduceCodecs(R.codecs,b);const _=s.clone(this._sendingRemoteRtpParametersByKind[f.kind]);_.codecs=o.reduceCodecs(_.codecs,b);const E=this._remoteSdp.getNextMediaSectionIdx(),P=this._pc.addTransceiver(f,{direction:"sendonly",streams:[this._sendStream],sendEncodings:u});A&&A(P.sender);const T=await this._pc.createOffer();let k=n.parse(T.sdp);this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:k}),v.debug("send() | calling pc.setLocalDescription() [offer:%o]",T),await this._pc.setLocalDescription(T);const F=P.mid;R.mid=F,k=n.parse(this._pc.localDescription.sdp);const X=k.media[E.idx];if(R.rtcp.cname=a.getCname({offerMediaObject:X}),!u)R.encodings=c.getRtpEncodings({offerMediaObject:X});else if(u.length===1){const L=c.getRtpEncodings({offerMediaObject:X});Object.assign(L[0],u[0]),R.encodings=L}else R.encodings=u;this._remoteSdp.send({offerMediaObject:X,reuseMid:E.reuseMid,offerRtpParameters:R,answerRtpParameters:_,codecOptions:h,extmapAllowMixed:!0});const O={type:"answer",sdp:this._remoteSdp.getSdp()};return v.debug("send() | calling pc.setRemoteDescription() [answer:%o]",O),await this._pc.setRemoteDescription(O),this._mapMidTransceiver.set(F,P),{localId:F,rtpParameters:R,rtpSender:P.sender}}async stopSending(f){if(this.assertSendDirection(),v.debug("stopSending() [localId:%s]",f),this._closed)return;const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");if(u.sender.replaceTrack(null),this._pc.removeTrack(u.sender),this._remoteSdp.closeMediaSection(u.mid))try{u.stop()}catch{}const b=await this._pc.createOffer();v.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A),this._mapMidTransceiver.delete(f)}async pauseSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("pauseSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="inactive",this._remoteSdp.pauseMediaSection(f);const h=await this._pc.createOffer();v.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async resumeSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("resumeSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(this._remoteSdp.resumeSendingMediaSection(f),!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="sendonly";const h=await this._pc.createOffer();v.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async replaceTrack(f,u){this.assertNotClosed(),this.assertSendDirection(),u?v.debug("replaceTrack() [localId:%s, track.id:%s]",f,u.id):v.debug("replaceTrack() [localId:%s, no track]",f);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");await h.sender.replaceTrack(u)}async setMaxSpatialLayer(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{E<=u?_.active=!0:_.active=!1}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async setRtpEncodingParameters(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setRtpEncodingParameters() [localId:%s, params:%o]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{b.encodings[E]={..._,...u}}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async getSenderStats(f){this.assertNotClosed(),this.assertSendDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.sender.getStats()}async sendDataChannel({ordered:f,maxPacketLifeTime:u,maxRetransmits:h,label:b,protocol:A}){this.assertNotClosed(),this.assertSendDirection();const R={negotiated:!0,id:this._nextSendSctpStreamId,ordered:f,maxPacketLifeTime:u,maxRetransmits:h,protocol:A};v.debug("sendDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(b,R);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%C.MIS,!this._hasDataChannelMediaSection){const P=await this._pc.createOffer(),T=n.parse(P.sdp),k=T.media.find(X=>X.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T}),v.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",P),await this._pc.setLocalDescription(P),this._remoteSdp.sendSctpAssociation({offerMediaObject:k});const F={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",F),await this._pc.setRemoteDescription(F),this._hasDataChannelMediaSection=!0}const E={streamId:R.id,ordered:R.ordered,maxPacketLifeTime:R.maxPacketLifeTime,maxRetransmits:R.maxRetransmits};return{dataChannel:_,sctpStreamParameters:E}}async receive(f){this.assertNotClosed(),this.assertRecvDirection();const u=[],h=new Map;for(const _ of f){const{trackId:E,kind:P,rtpParameters:T,streamId:k}=_;v.debug("receive() [trackId:%s, kind:%s]",E,P);const F=T.mid??String(this._mapMidTransceiver.size);h.set(E,F),this._remoteSdp.receive({mid:F,kind:P,offerRtpParameters:T,streamId:k??T.rtcp.cname,trackId:E})}const b={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",b),await this._pc.setRemoteDescription(b);for(const _ of f){const{trackId:E,onRtpReceiver:P}=_;if(P){const T=h.get(E),k=this._pc.getTransceivers().find(F=>F.mid===T);if(!k)throw new Error("transceiver not found");P(k.receiver)}}let A=await this._pc.createAnswer();const R=n.parse(A.sdp);for(const _ of f){const{trackId:E,rtpParameters:P}=_,T=h.get(E),k=R.media.find(F=>String(F.mid)===T);a.applyCodecParameters({offerRtpParameters:P,answerMediaObject:k})}A={type:"answer",sdp:n.write(R)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:R}),v.debug("receive() | calling pc.setLocalDescription() [answer:%o]",A),await this._pc.setLocalDescription(A);for(const _ of f){const{trackId:E}=_,P=h.get(E),T=this._pc.getTransceivers().find(k=>k.mid===P);if(T)this._mapMidTransceiver.set(P,T),u.push({localId:P,track:T.receiver.track,rtpReceiver:T.receiver});else throw new Error("new RTCRtpTransceiver not found")}return u}async stopReceiving(f){if(this.assertRecvDirection(),this._closed)return;for(const b of f){v.debug("stopReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(A.mid)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h);for(const b of f)this._mapMidTransceiver.delete(b)}async pauseReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("pauseReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="inactive",this._remoteSdp.pauseMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async resumeReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("resumeReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async getReceiverStats(f){this.assertNotClosed(),this.assertRecvDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:f,label:u,protocol:h}){this.assertNotClosed(),this.assertRecvDirection();const{streamId:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_}=f,E={negotiated:!0,id:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_,protocol:h};v.debug("receiveDataChannel() [options:%o]",E);const P=this._pc.createDataChannel(u,E);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const T={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",T),await this._pc.setRemoteDescription(T);const k=await this._pc.createAnswer();if(!this._transportReady){const F=n.parse(k.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:F})}v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",k),await this._pc.setLocalDescription(k),this._hasDataChannelMediaSection=!0}return{dataChannel:P}}async setupTransport({localDtlsRole:f,localSdpObject:u}){u||(u=n.parse(this._pc.localDescription.sdp));const h=a.extractDtlsParameters({sdpObject:u});h.role=f,this._remoteSdp.updateDtlsRole(f==="client"?"server":"client"),await new Promise((b,A)=>{this.safeEmit("@connect",{dtlsParameters:h},b,A)}),this._transportReady=!0}assertNotClosed(){if(this._closed)throw new d.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return rn.Chrome111=w,rn}var sn={},Gv;function Ok(){if(Gv)return sn;Gv=1;var t=sn&&sn.__createBinding||(Object.create?function(y,f,u,h){h===void 0&&(h=u);var b=Object.getOwnPropertyDescriptor(f,u);(!b||("get"in b?!f.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:function(){return f[u]}}),Object.defineProperty(y,h,b)}:function(y,f,u,h){h===void 0&&(h=u),y[h]=f[u]}),e=sn&&sn.__setModuleDefault||(Object.create?function(y,f){Object.defineProperty(y,"default",{enumerable:!0,value:f})}:function(y,f){y.default=f}),r=sn&&sn.__importStar||function(){var y=function(f){return y=Object.getOwnPropertyNames||function(u){var h=[];for(var b in u)Object.prototype.hasOwnProperty.call(u,b)&&(h[h.length]=b);return h},y(f)};return function(f){if(f&&f.__esModule)return f;var u={};if(f!=null)for(var h=y(f),b=0;b<h.length;b++)h[b]!=="default"&&t(u,f,h[b]);return e(u,f),u}}();Object.defineProperty(sn,"__esModule",{value:!0}),sn.Chrome74=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(ys()),l=r(wa()),d=er(),p=yr(),m=Vr(),g=di(),v=new i.Logger("Chrome74"),S="Chrome74",C={OS:1024,MIS:1024};let w=class Jw extends p.HandlerInterface{static createFactory(){return()=>new Jw}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return S}close(){if(v.debug("close()"),!this._closed){if(this._closed=!0,this._pc)try{this._pc.close()}catch{}this.emit("@close")}}async getNativeRtpCapabilities(){v.debug("getNativeRtpCapabilities()");const f=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan"});try{f.addTransceiver("audio"),f.addTransceiver("video");const u=await f.createOffer();try{f.close()}catch{}const h=n.parse(u.sdp),b=a.extractRtpCapabilities({sdpObject:h});return l.addNackSuppportForOpus(b),b}catch(u){try{f.close()}catch{}throw u}}async getNativeSctpCapabilities(){return v.debug("getNativeSctpCapabilities()"),{numStreams:C}}run({direction:f,iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A,iceServers:R,iceTransportPolicy:_,additionalSettings:E,proprietaryConstraints:P,extendedRtpCapabilities:T}){v.debug("run()"),this._direction=f,this._remoteSdp=new m.RemoteSdp({iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",T),video:o.getSendingRtpParameters("video",T)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",T),video:o.getSendingRemoteRtpParameters("video",T)},b.role&&b.role!=="auto"&&(this._forcedLocalDtlsRole=b.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:R??[],iceTransportPolicy:_??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan",...E},P),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):(v.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.addEventListener("iceconnectionstatechange",()=>{switch(this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}}))}async updateIceServers(f){this.assertNotClosed(),v.debug("updateIceServers()");const u=this._pc.getConfiguration();u.iceServers=f,this._pc.setConfiguration(u)}async restartIce(f){if(this.assertNotClosed(),v.debug("restartIce()"),this._remoteSdp.updateIceParameters(f),!!this._transportReady)if(this._direction==="send"){const u=await this._pc.createOffer({iceRestart:!0});v.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}else{const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}}async getTransportStats(){return this.assertNotClosed(),this._pc.getStats()}async send({track:f,encodings:u,codecOptions:h,codec:b}){this.assertNotClosed(),this.assertSendDirection(),v.debug("send() [kind:%s, track.id:%s]",f.kind,f.id),u&&u.length>1&&u.forEach((B,z)=>{B.rid=`r${z}`});const A=s.clone(this._sendingRtpParametersByKind[f.kind]);A.codecs=o.reduceCodecs(A.codecs,b);const R=s.clone(this._sendingRemoteRtpParametersByKind[f.kind]);R.codecs=o.reduceCodecs(R.codecs,b);const _=this._remoteSdp.getNextMediaSectionIdx(),E=this._pc.addTransceiver(f,{direction:"sendonly",streams:[this._sendStream],sendEncodings:u});let P=await this._pc.createOffer(),T=n.parse(P.sdp),k;this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T});let F=!1;const X=(0,g.parse)((u??[{}])[0].scalabilityMode);u&&u.length===1&&X.spatialLayers>1&&A.codecs[0].mimeType.toLowerCase()==="video/vp9"&&(v.debug("send() | enabling legacy simulcast for VP9 SVC"),F=!0,T=n.parse(P.sdp),k=T.media[_.idx],c.addLegacySimulcast({offerMediaObject:k,numStreams:X.spatialLayers}),P={type:"offer",sdp:n.write(T)}),v.debug("send() | calling pc.setLocalDescription() [offer:%o]",P),await this._pc.setLocalDescription(P);const O=E.mid;if(A.mid=O,T=n.parse(this._pc.localDescription.sdp),k=T.media[_.idx],A.rtcp.cname=a.getCname({offerMediaObject:k}),!u)A.encodings=c.getRtpEncodings({offerMediaObject:k});else if(u.length===1){let B=c.getRtpEncodings({offerMediaObject:k});Object.assign(B[0],u[0]),F&&(B=[B[0]]),A.encodings=B}else A.encodings=u;if(A.encodings.length>1&&(A.codecs[0].mimeType.toLowerCase()==="video/vp8"||A.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const B of A.encodings)B.scalabilityMode?B.scalabilityMode=`L1T${X.temporalLayers}`:B.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:k,reuseMid:_.reuseMid,offerRtpParameters:A,answerRtpParameters:R,codecOptions:h,extmapAllowMixed:!0});const L={type:"answer",sdp:this._remoteSdp.getSdp()};return v.debug("send() | calling pc.setRemoteDescription() [answer:%o]",L),await this._pc.setRemoteDescription(L),this._mapMidTransceiver.set(O,E),{localId:O,rtpParameters:A,rtpSender:E.sender}}async stopSending(f){if(this.assertSendDirection(),v.debug("stopSending() [localId:%s]",f),this._closed)return;const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");if(u.sender.replaceTrack(null),this._pc.removeTrack(u.sender),this._remoteSdp.closeMediaSection(u.mid))try{u.stop()}catch{}const b=await this._pc.createOffer();v.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A),this._mapMidTransceiver.delete(f)}async pauseSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("pauseSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="inactive",this._remoteSdp.pauseMediaSection(f);const h=await this._pc.createOffer();v.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async resumeSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("resumeSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(this._remoteSdp.resumeSendingMediaSection(f),!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="sendonly";const h=await this._pc.createOffer();v.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async replaceTrack(f,u){this.assertNotClosed(),this.assertSendDirection(),u?v.debug("replaceTrack() [localId:%s, track.id:%s]",f,u.id):v.debug("replaceTrack() [localId:%s, no track]",f);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");await h.sender.replaceTrack(u)}async setMaxSpatialLayer(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{E<=u?_.active=!0:_.active=!1}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async setRtpEncodingParameters(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setRtpEncodingParameters() [localId:%s, params:%o]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{b.encodings[E]={..._,...u}}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async getSenderStats(f){this.assertNotClosed(),this.assertSendDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.sender.getStats()}async sendDataChannel({ordered:f,maxPacketLifeTime:u,maxRetransmits:h,label:b,protocol:A}){this.assertNotClosed(),this.assertSendDirection();const R={negotiated:!0,id:this._nextSendSctpStreamId,ordered:f,maxPacketLifeTime:u,maxRetransmits:h,protocol:A};v.debug("sendDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(b,R);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%C.MIS,!this._hasDataChannelMediaSection){const P=await this._pc.createOffer(),T=n.parse(P.sdp),k=T.media.find(X=>X.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T}),v.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",P),await this._pc.setLocalDescription(P),this._remoteSdp.sendSctpAssociation({offerMediaObject:k});const F={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",F),await this._pc.setRemoteDescription(F),this._hasDataChannelMediaSection=!0}const E={streamId:R.id,ordered:R.ordered,maxPacketLifeTime:R.maxPacketLifeTime,maxRetransmits:R.maxRetransmits};return{dataChannel:_,sctpStreamParameters:E}}async receive(f){this.assertNotClosed(),this.assertRecvDirection();const u=[],h=new Map;for(const _ of f){const{trackId:E,kind:P,rtpParameters:T,streamId:k}=_;v.debug("receive() [trackId:%s, kind:%s]",E,P);const F=T.mid??String(this._mapMidTransceiver.size);h.set(E,F),this._remoteSdp.receive({mid:F,kind:P,offerRtpParameters:T,streamId:k??T.rtcp.cname,trackId:E})}const b={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",b),await this._pc.setRemoteDescription(b);let A=await this._pc.createAnswer();const R=n.parse(A.sdp);for(const _ of f){const{trackId:E,rtpParameters:P}=_,T=h.get(E),k=R.media.find(F=>String(F.mid)===T);a.applyCodecParameters({offerRtpParameters:P,answerMediaObject:k})}A={type:"answer",sdp:n.write(R)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:R}),v.debug("receive() | calling pc.setLocalDescription() [answer:%o]",A),await this._pc.setLocalDescription(A);for(const _ of f){const{trackId:E}=_,P=h.get(E),T=this._pc.getTransceivers().find(k=>k.mid===P);if(T)this._mapMidTransceiver.set(P,T),u.push({localId:P,track:T.receiver.track,rtpReceiver:T.receiver});else throw new Error("new RTCRtpTransceiver not found")}return u}async stopReceiving(f){if(this.assertRecvDirection(),this._closed)return;for(const b of f){v.debug("stopReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(A.mid)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h);for(const b of f)this._mapMidTransceiver.delete(b)}async pauseReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("pauseReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="inactive",this._remoteSdp.pauseMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async resumeReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("resumeReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async getReceiverStats(f){this.assertNotClosed(),this.assertRecvDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:f,label:u,protocol:h}){this.assertNotClosed(),this.assertRecvDirection();const{streamId:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_}=f,E={negotiated:!0,id:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_,protocol:h};v.debug("receiveDataChannel() [options:%o]",E);const P=this._pc.createDataChannel(u,E);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const T={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",T),await this._pc.setRemoteDescription(T);const k=await this._pc.createAnswer();if(!this._transportReady){const F=n.parse(k.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:F})}v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",k),await this._pc.setLocalDescription(k),this._hasDataChannelMediaSection=!0}return{dataChannel:P}}async setupTransport({localDtlsRole:f,localSdpObject:u}){u||(u=n.parse(this._pc.localDescription.sdp));const h=a.extractDtlsParameters({sdpObject:u});h.role=f,this._remoteSdp.updateDtlsRole(f==="client"?"server":"client"),await new Promise((b,A)=>{this.safeEmit("@connect",{dtlsParameters:h},b,A)}),this._transportReady=!0}assertNotClosed(){if(this._closed)throw new d.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return sn.Chrome74=w,sn}var on={},Xv;function xk(){if(Xv)return on;Xv=1;var t=on&&on.__createBinding||(Object.create?function(C,w,y,f){f===void 0&&(f=y);var u=Object.getOwnPropertyDescriptor(w,y);(!u||("get"in u?!w.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return w[y]}}),Object.defineProperty(C,f,u)}:function(C,w,y,f){f===void 0&&(f=y),C[f]=w[y]}),e=on&&on.__setModuleDefault||(Object.create?function(C,w){Object.defineProperty(C,"default",{enumerable:!0,value:w})}:function(C,w){C.default=w}),r=on&&on.__importStar||function(){var C=function(w){return C=Object.getOwnPropertyNames||function(y){var f=[];for(var u in y)Object.prototype.hasOwnProperty.call(y,u)&&(f[f.length]=u);return f},C(w)};return function(w){if(w&&w.__esModule)return w;var y={};if(w!=null)for(var f=C(w),u=0;u<f.length;u++)f[u]!=="default"&&t(y,w,f[u]);return e(y,w),y}}();Object.defineProperty(on,"__esModule",{value:!0}),on.Chrome70=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(ys()),l=yr(),d=Vr(),p=di(),m=new i.Logger("Chrome70"),g="Chrome70",v={OS:1024,MIS:1024};let S=class Kw extends l.HandlerInterface{static createFactory(){return()=>new Kw}constructor(){super(),this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return g}close(){if(m.debug("close()"),this._pc)try{this._pc.close()}catch{}this.emit("@close")}async getNativeRtpCapabilities(){m.debug("getNativeRtpCapabilities()");const w=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan"});try{w.addTransceiver("audio"),w.addTransceiver("video");const y=await w.createOffer();try{w.close()}catch{}const f=n.parse(y.sdp);return a.extractRtpCapabilities({sdpObject:f})}catch(y){try{w.close()}catch{}throw y}}async getNativeSctpCapabilities(){return m.debug("getNativeSctpCapabilities()"),{numStreams:v}}run({direction:w,iceParameters:y,iceCandidates:f,dtlsParameters:u,sctpParameters:h,iceServers:b,iceTransportPolicy:A,additionalSettings:R,proprietaryConstraints:_,extendedRtpCapabilities:E}){m.debug("run()"),this._direction=w,this._remoteSdp=new d.RemoteSdp({iceParameters:y,iceCandidates:f,dtlsParameters:u,sctpParameters:h}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",E),video:o.getSendingRtpParameters("video",E)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",E),video:o.getSendingRemoteRtpParameters("video",E)},u.role&&u.role!=="auto"&&(this._forcedLocalDtlsRole=u.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:b??[],iceTransportPolicy:A??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan",...R},_),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(m.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(w){m.debug("updateIceServers()");const y=this._pc.getConfiguration();y.iceServers=w,this._pc.setConfiguration(y)}async restartIce(w){if(m.debug("restartIce()"),this._remoteSdp.updateIceParameters(w),!!this._transportReady)if(this._direction==="send"){const y=await this._pc.createOffer({iceRestart:!0});m.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",y),await this._pc.setLocalDescription(y);const f={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",f),await this._pc.setRemoteDescription(f)}else{const y={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);const f=await this._pc.createAnswer();m.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f)}}async getTransportStats(){return this._pc.getStats()}async send({track:w,encodings:y,codecOptions:f,codec:u}){this.assertSendDirection(),m.debug("send() [kind:%s, track.id:%s]",w.kind,w.id);const h=s.clone(this._sendingRtpParametersByKind[w.kind]);h.codecs=o.reduceCodecs(h.codecs,u);const b=s.clone(this._sendingRemoteRtpParametersByKind[w.kind]);b.codecs=o.reduceCodecs(b.codecs,u);const A=this._remoteSdp.getNextMediaSectionIdx(),R=this._pc.addTransceiver(w,{direction:"sendonly",streams:[this._sendStream]});let _=await this._pc.createOffer(),E=n.parse(_.sdp),P;this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:E}),y&&y.length>1&&(m.debug("send() | enabling legacy simulcast"),E=n.parse(_.sdp),P=E.media[A.idx],c.addLegacySimulcast({offerMediaObject:P,numStreams:y.length}),_={type:"offer",sdp:n.write(E)});let T=!1;const k=(0,p.parse)((y??[{}])[0].scalabilityMode);if(y&&y.length===1&&k.spatialLayers>1&&h.codecs[0].mimeType.toLowerCase()==="video/vp9"&&(m.debug("send() | enabling legacy simulcast for VP9 SVC"),T=!0,E=n.parse(_.sdp),P=E.media[A.idx],c.addLegacySimulcast({offerMediaObject:P,numStreams:k.spatialLayers}),_={type:"offer",sdp:n.write(E)}),m.debug("send() | calling pc.setLocalDescription() [offer:%o]",_),await this._pc.setLocalDescription(_),y){m.debug("send() | applying given encodings");const O=R.sender.getParameters();for(let L=0;L<(O.encodings??[]).length;++L){const B=O.encodings[L],z=y[L];if(!z)break;O.encodings[L]=Object.assign(B,z)}await R.sender.setParameters(O)}const F=R.mid;if(h.mid=F,E=n.parse(this._pc.localDescription.sdp),P=E.media[A.idx],h.rtcp.cname=a.getCname({offerMediaObject:P}),h.encodings=c.getRtpEncodings({offerMediaObject:P}),y)for(let O=0;O<h.encodings.length;++O)y[O]&&Object.assign(h.encodings[O],y[O]);if(T&&(h.encodings=[h.encodings[0]]),h.encodings.length>1&&(h.codecs[0].mimeType.toLowerCase()==="video/vp8"||h.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const O of h.encodings)O.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:P,reuseMid:A.reuseMid,offerRtpParameters:h,answerRtpParameters:b,codecOptions:f});const X={type:"answer",sdp:this._remoteSdp.getSdp()};return m.debug("send() | calling pc.setRemoteDescription() [answer:%o]",X),await this._pc.setRemoteDescription(X),this._mapMidTransceiver.set(F,R),{localId:F,rtpParameters:h,rtpSender:R.sender}}async stopSending(w){this.assertSendDirection(),m.debug("stopSending() [localId:%s]",w);const y=this._mapMidTransceiver.get(w);if(!y)throw new Error("associated RTCRtpTransceiver not found");if(y.sender.replaceTrack(null),this._pc.removeTrack(y.sender),this._remoteSdp.closeMediaSection(y.mid))try{y.stop()}catch{}const u=await this._pc.createOffer();m.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h),this._mapMidTransceiver.delete(w)}async pauseSending(w){}async resumeSending(w){}async replaceTrack(w,y){this.assertSendDirection(),y?m.debug("replaceTrack() [localId:%s, track.id:%s]",w,y.id):m.debug("replaceTrack() [localId:%s, no track]",w);const f=this._mapMidTransceiver.get(w);if(!f)throw new Error("associated RTCRtpTransceiver not found");await f.sender.replaceTrack(y)}async setMaxSpatialLayer(w,y){this.assertSendDirection(),m.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",w,y);const f=this._mapMidTransceiver.get(w);if(!f)throw new Error("associated RTCRtpTransceiver not found");const u=f.sender.getParameters();u.encodings.forEach((A,R)=>{R<=y?A.active=!0:A.active=!1}),await f.sender.setParameters(u),this._remoteSdp.muxMediaSectionSimulcast(w,u.encodings);const h=await this._pc.createOffer();m.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async setRtpEncodingParameters(w,y){this.assertSendDirection(),m.debug("setRtpEncodingParameters() [localId:%s, params:%o]",w,y);const f=this._mapMidTransceiver.get(w);if(!f)throw new Error("associated RTCRtpTransceiver not found");const u=f.sender.getParameters();u.encodings.forEach((A,R)=>{u.encodings[R]={...A,...y}}),await f.sender.setParameters(u),this._remoteSdp.muxMediaSectionSimulcast(w,u.encodings);const h=await this._pc.createOffer();m.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async getSenderStats(w){this.assertSendDirection();const y=this._mapMidTransceiver.get(w);if(!y)throw new Error("associated RTCRtpTransceiver not found");return y.sender.getStats()}async sendDataChannel({ordered:w,maxPacketLifeTime:y,maxRetransmits:f,label:u,protocol:h}){this.assertSendDirection();const b={negotiated:!0,id:this._nextSendSctpStreamId,ordered:w,maxPacketLifeTime:y,maxRetransmitTime:y,maxRetransmits:f,protocol:h};m.debug("sendDataChannel() [options:%o]",b);const A=this._pc.createDataChannel(u,b);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%v.MIS,!this._hasDataChannelMediaSection){const _=await this._pc.createOffer(),E=n.parse(_.sdp),P=E.media.find(k=>k.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:E}),m.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",_),await this._pc.setLocalDescription(_),this._remoteSdp.sendSctpAssociation({offerMediaObject:P});const T={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",T),await this._pc.setRemoteDescription(T),this._hasDataChannelMediaSection=!0}const R={streamId:b.id,ordered:b.ordered,maxPacketLifeTime:b.maxPacketLifeTime,maxRetransmits:b.maxRetransmits};return{dataChannel:A,sctpStreamParameters:R}}async receive(w){this.assertRecvDirection();const y=[],f=new Map;for(const A of w){const{trackId:R,kind:_,rtpParameters:E,streamId:P}=A;m.debug("receive() [trackId:%s, kind:%s]",R,_);const T=E.mid??String(this._mapMidTransceiver.size);f.set(R,T),this._remoteSdp.receive({mid:T,kind:_,offerRtpParameters:E,streamId:P??E.rtcp.cname,trackId:R})}const u={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);let h=await this._pc.createAnswer();const b=n.parse(h.sdp);for(const A of w){const{trackId:R,rtpParameters:_}=A,E=f.get(R),P=b.media.find(T=>String(T.mid)===E);a.applyCodecParameters({offerRtpParameters:_,answerMediaObject:P})}h={type:"answer",sdp:n.write(b)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:b}),m.debug("receive() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h);for(const A of w){const{trackId:R}=A,_=f.get(R),E=this._pc.getTransceivers().find(P=>P.mid===_);if(!E)throw new Error("new RTCRtpTransceiver not found");this._mapMidTransceiver.set(_,E),y.push({localId:_,track:E.receiver.track,rtpReceiver:E.receiver})}return y}async stopReceiving(w){this.assertRecvDirection();for(const u of w){m.debug("stopReceiving() [localId:%s]",u);const h=this._mapMidTransceiver.get(u);if(!h)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(h.mid)}const y={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);const f=await this._pc.createAnswer();m.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f);for(const u of w)this._mapMidTransceiver.delete(u)}async pauseReceiving(w){}async resumeReceiving(w){}async getReceiverStats(w){this.assertRecvDirection();const y=this._mapMidTransceiver.get(w);if(!y)throw new Error("associated RTCRtpTransceiver not found");return y.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:w,label:y,protocol:f}){this.assertRecvDirection();const{streamId:u,ordered:h,maxPacketLifeTime:b,maxRetransmits:A}=w,R={negotiated:!0,id:u,ordered:h,maxPacketLifeTime:b,maxRetransmitTime:b,maxRetransmits:A,protocol:f};m.debug("receiveDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(y,R);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const E={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",E),await this._pc.setRemoteDescription(E);const P=await this._pc.createAnswer();if(!this._transportReady){const T=n.parse(P.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T})}m.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",P),await this._pc.setLocalDescription(P),this._hasDataChannelMediaSection=!0}return{dataChannel:_}}async setupTransport({localDtlsRole:w,localSdpObject:y}){y||(y=n.parse(this._pc.localDescription.sdp));const f=a.extractDtlsParameters({sdpObject:y});f.role=w,this._remoteSdp.updateDtlsRole(w==="client"?"server":"client"),await new Promise((u,h)=>{this.safeEmit("@connect",{dtlsParameters:f},u,h)}),this._transportReady=!0}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return on.Chrome70=S,on}var an={},Fo={},Uv;function fd(){if(Uv)return Fo;Uv=1,Object.defineProperty(Fo,"__esModule",{value:!0}),Fo.getRtpEncodings=t,Fo.addLegacySimulcast=e;function t({offerMediaObject:r,track:n}){const i=new Set;for(const a of r.ssrcs||[]){if(a.attribute!=="msid")continue;if(a.value.split(" ")[1]===n.id){const l=a.id;i.add(l)}}if(i.size===0)throw new Error(`a=ssrc line with msid information not found [track.id:${n.id}]`);const s=new Map;for(const a of r.ssrcGroups||[]){if(a.semantics!=="FID")continue;let[c,l]=a.ssrcs.split(/\s+/);c=Number(c),l=Number(l),i.has(c)&&(i.delete(c),i.delete(l),s.set(c,l))}for(const a of i)s.set(a,null);const o=[];for(const[a,c]of s){const l={ssrc:a};c&&(l.rtx={ssrc:c}),o.push(l)}return o}function e({offerMediaObject:r,track:n,numStreams:i}){if(i<=1)throw new TypeError("numStreams must be greater than 1");let s,o,a;if(!(r.ssrcs||[]).find(g=>g.attribute!=="msid"?!1:g.value.split(" ")[1]===n.id?(s=g.id,a=g.value.split(" ")[0],!0):!1))throw new Error(`a=ssrc line with msid information not found [track.id:${n.id}]`);(r.ssrcGroups||[]).some(g=>{if(g.semantics!=="FID")return!1;const v=g.ssrcs.split(/\s+/);return Number(v[0])===s?(o=Number(v[1]),!0):!1});const l=r.ssrcs.find(g=>g.attribute==="cname"&&g.id===s);if(!l)throw new Error(`a=ssrc line with cname information not found [track.id:${n.id}]`);const d=l.value,p=[],m=[];for(let g=0;g<i;++g)p.push(s+g),o&&m.push(o+g);r.ssrcGroups=r.ssrcGroups||[],r.ssrcs=r.ssrcs||[],r.ssrcGroups.push({semantics:"SIM",ssrcs:p.join(" ")});for(const g of p)r.ssrcs.push({id:g,attribute:"cname",value:d}),r.ssrcs.push({id:g,attribute:"msid",value:`${a} ${n.id}`});for(let g=0;g<m.length;++g){const v=p[g],S=m[g];r.ssrcs.push({id:S,attribute:"cname",value:d}),r.ssrcs.push({id:S,attribute:"msid",value:`${a} ${n.id}`}),r.ssrcGroups.push({semantics:"FID",ssrcs:`${v} ${S}`})}}return Fo}var Wv;function Dk(){if(Wv)return an;Wv=1;var t=an&&an.__createBinding||(Object.create?function(S,C,w,y){y===void 0&&(y=w);var f=Object.getOwnPropertyDescriptor(C,w);(!f||("get"in f?!C.__esModule:f.writable||f.configurable))&&(f={enumerable:!0,get:function(){return C[w]}}),Object.defineProperty(S,y,f)}:function(S,C,w,y){y===void 0&&(y=w),S[y]=C[w]}),e=an&&an.__setModuleDefault||(Object.create?function(S,C){Object.defineProperty(S,"default",{enumerable:!0,value:C})}:function(S,C){S.default=C}),r=an&&an.__importStar||function(){var S=function(C){return S=Object.getOwnPropertyNames||function(w){var y=[];for(var f in w)Object.prototype.hasOwnProperty.call(w,f)&&(y[y.length]=f);return y},S(C)};return function(C){if(C&&C.__esModule)return C;var w={};if(C!=null)for(var y=S(C),f=0;f<y.length;f++)y[f]!=="default"&&t(w,C,y[f]);return e(w,C),w}}();Object.defineProperty(an,"__esModule",{value:!0}),an.Chrome67=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(fd()),l=yr(),d=Vr(),p=new i.Logger("Chrome67"),m="Chrome67",g={OS:1024,MIS:1024};let v=class Qw extends l.HandlerInterface{static createFactory(){return()=>new Qw}constructor(){super(),this._sendStream=new MediaStream,this._mapSendLocalIdRtpSender=new Map,this._nextSendLocalId=0,this._mapRecvLocalIdInfo=new Map,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return m}close(){if(p.debug("close()"),this._pc)try{this._pc.close()}catch{}this.emit("@close")}async getNativeRtpCapabilities(){p.debug("getNativeRtpCapabilities()");const C=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b"});try{const w=await C.createOffer({offerToReceiveAudio:!0,offerToReceiveVideo:!0});try{C.close()}catch{}const y=n.parse(w.sdp);return a.extractRtpCapabilities({sdpObject:y})}catch(w){try{C.close()}catch{}throw w}}async getNativeSctpCapabilities(){return p.debug("getNativeSctpCapabilities()"),{numStreams:g}}run({direction:C,iceParameters:w,iceCandidates:y,dtlsParameters:f,sctpParameters:u,iceServers:h,iceTransportPolicy:b,additionalSettings:A,proprietaryConstraints:R,extendedRtpCapabilities:_}){p.debug("run()"),this._direction=C,this._remoteSdp=new d.RemoteSdp({iceParameters:w,iceCandidates:y,dtlsParameters:f,sctpParameters:u,planB:!0}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",_),video:o.getSendingRtpParameters("video",_)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",_),video:o.getSendingRemoteRtpParameters("video",_)},f.role&&f.role!=="auto"&&(this._forcedLocalDtlsRole=f.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:h??[],iceTransportPolicy:b??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b",...A},R),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(p.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(C){p.debug("updateIceServers()");const w=this._pc.getConfiguration();w.iceServers=C,this._pc.setConfiguration(w)}async restartIce(C){if(p.debug("restartIce()"),this._remoteSdp.updateIceParameters(C),!!this._transportReady)if(this._direction==="send"){const w=await this._pc.createOffer({iceRestart:!0});p.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",w),await this._pc.setLocalDescription(w);const y={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",y),await this._pc.setRemoteDescription(y)}else{const w={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",w),await this._pc.setRemoteDescription(w);const y=await this._pc.createAnswer();p.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",y),await this._pc.setLocalDescription(y)}}async getTransportStats(){return this._pc.getStats()}async send({track:C,encodings:w,codecOptions:y,codec:f}){this.assertSendDirection(),p.debug("send() [kind:%s, track.id:%s]",C.kind,C.id),f&&p.warn("send() | codec selection is not available in %s handler",this.name),this._sendStream.addTrack(C),this._pc.addTrack(C,this._sendStream);let u=await this._pc.createOffer(),h=n.parse(u.sdp),b;const A=s.clone(this._sendingRtpParametersByKind[C.kind]);A.codecs=o.reduceCodecs(A.codecs);const R=s.clone(this._sendingRemoteRtpParametersByKind[C.kind]);if(R.codecs=o.reduceCodecs(R.codecs),this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:h}),C.kind==="video"&&w&&w.length>1&&(p.debug("send() | enabling simulcast"),h=n.parse(u.sdp),b=h.media.find(T=>T.type==="video"),c.addLegacySimulcast({offerMediaObject:b,track:C,numStreams:w.length}),u={type:"offer",sdp:n.write(h)}),p.debug("send() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u),h=n.parse(this._pc.localDescription.sdp),b=h.media.find(T=>T.type===C.kind),A.rtcp.cname=a.getCname({offerMediaObject:b}),A.encodings=c.getRtpEncodings({offerMediaObject:b,track:C}),w)for(let T=0;T<A.encodings.length;++T)w[T]&&Object.assign(A.encodings[T],w[T]);if(A.encodings.length>1&&A.codecs[0].mimeType.toLowerCase()==="video/vp8")for(const T of A.encodings)T.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:b,offerRtpParameters:A,answerRtpParameters:R,codecOptions:y});const _={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("send() | calling pc.setRemoteDescription() [answer:%o]",_),await this._pc.setRemoteDescription(_);const E=String(this._nextSendLocalId);this._nextSendLocalId++;const P=this._pc.getSenders().find(T=>T.track===C);return this._mapSendLocalIdRtpSender.set(E,P),{localId:E,rtpParameters:A,rtpSender:P}}async stopSending(C){this.assertSendDirection(),p.debug("stopSending() [localId:%s]",C);const w=this._mapSendLocalIdRtpSender.get(C);if(!w)throw new Error("associated RTCRtpSender not found");this._pc.removeTrack(w),w.track&&this._sendStream.removeTrack(w.track),this._mapSendLocalIdRtpSender.delete(C);const y=await this._pc.createOffer();p.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",y);try{await this._pc.setLocalDescription(y)}catch(u){if(this._sendStream.getTracks().length===0){p.warn("stopSending() | ignoring expected error due no sending tracks: %s",u.toString());return}throw u}if(this._pc.signalingState==="stable")return;const f={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",f),await this._pc.setRemoteDescription(f)}async pauseSending(C){}async resumeSending(C){}async replaceTrack(C,w){this.assertSendDirection(),w?p.debug("replaceTrack() [localId:%s, track.id:%s]",C,w.id):p.debug("replaceTrack() [localId:%s, no track]",C);const y=this._mapSendLocalIdRtpSender.get(C);if(!y)throw new Error("associated RTCRtpSender not found");const f=y.track;await y.replaceTrack(w),f&&this._sendStream.removeTrack(f),w&&this._sendStream.addTrack(w)}async setMaxSpatialLayer(C,w){this.assertSendDirection(),p.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",C,w);const y=this._mapSendLocalIdRtpSender.get(C);if(!y)throw new Error("associated RTCRtpSender not found");const f=y.getParameters();f.encodings.forEach((u,h)=>{h<=w?u.active=!0:u.active=!1}),await y.setParameters(f)}async setRtpEncodingParameters(C,w){this.assertSendDirection(),p.debug("setRtpEncodingParameters() [localId:%s, params:%o]",C,w);const y=this._mapSendLocalIdRtpSender.get(C);if(!y)throw new Error("associated RTCRtpSender not found");const f=y.getParameters();f.encodings.forEach((u,h)=>{f.encodings[h]={...u,...w}}),await y.setParameters(f)}async getSenderStats(C){this.assertSendDirection();const w=this._mapSendLocalIdRtpSender.get(C);if(!w)throw new Error("associated RTCRtpSender not found");return w.getStats()}async sendDataChannel({ordered:C,maxPacketLifeTime:w,maxRetransmits:y,label:f,protocol:u}){this.assertSendDirection();const h={negotiated:!0,id:this._nextSendSctpStreamId,ordered:C,maxPacketLifeTime:w,maxRetransmitTime:w,maxRetransmits:y,protocol:u};p.debug("sendDataChannel() [options:%o]",h);const b=this._pc.createDataChannel(f,h);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%g.MIS,!this._hasDataChannelMediaSection){const R=await this._pc.createOffer(),_=n.parse(R.sdp),E=_.media.find(T=>T.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:_}),p.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",R),await this._pc.setLocalDescription(R),this._remoteSdp.sendSctpAssociation({offerMediaObject:E});const P={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",P),await this._pc.setRemoteDescription(P),this._hasDataChannelMediaSection=!0}const A={streamId:h.id,ordered:h.ordered,maxPacketLifeTime:h.maxPacketLifeTime,maxRetransmits:h.maxRetransmits};return{dataChannel:b,sctpStreamParameters:A}}async receive(C){this.assertRecvDirection();const w=[];for(const h of C){const{trackId:b,kind:A,rtpParameters:R,streamId:_}=h;p.debug("receive() [trackId:%s, kind:%s]",b,A);const E=A;this._remoteSdp.receive({mid:E,kind:A,offerRtpParameters:R,streamId:_??R.rtcp.cname,trackId:b})}const y={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);let f=await this._pc.createAnswer();const u=n.parse(f.sdp);for(const h of C){const{kind:b,rtpParameters:A}=h,R=b,_=u.media.find(E=>String(E.mid)===R);a.applyCodecParameters({offerRtpParameters:A,answerMediaObject:_})}f={type:"answer",sdp:n.write(u)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:u}),p.debug("receive() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f);for(const h of C){const{kind:b,trackId:A,rtpParameters:R}=h,_=A,E=b,P=this._pc.getReceivers().find(T=>T.track&&T.track.id===_);if(!P)throw new Error("new RTCRtpReceiver not");this._mapRecvLocalIdInfo.set(_,{mid:E,rtpParameters:R,rtpReceiver:P}),w.push({localId:_,track:P.track,rtpReceiver:P})}return w}async stopReceiving(C){this.assertRecvDirection();for(const f of C){p.debug("stopReceiving() [localId:%s]",f);const{mid:u,rtpParameters:h}=this._mapRecvLocalIdInfo.get(f)??{};this._mapRecvLocalIdInfo.delete(f),this._remoteSdp.planBStopReceiving({mid:u,offerRtpParameters:h})}const w={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",w),await this._pc.setRemoteDescription(w);const y=await this._pc.createAnswer();p.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",y),await this._pc.setLocalDescription(y)}async pauseReceiving(C){}async resumeReceiving(C){}async getReceiverStats(C){this.assertRecvDirection();const{rtpReceiver:w}=this._mapRecvLocalIdInfo.get(C)??{};if(!w)throw new Error("associated RTCRtpReceiver not found");return w.getStats()}async receiveDataChannel({sctpStreamParameters:C,label:w,protocol:y}){this.assertRecvDirection();const{streamId:f,ordered:u,maxPacketLifeTime:h,maxRetransmits:b}=C,A={negotiated:!0,id:f,ordered:u,maxPacketLifeTime:h,maxRetransmitTime:h,maxRetransmits:b,protocol:y};p.debug("receiveDataChannel() [options:%o]",A);const R=this._pc.createDataChannel(w,A);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation({oldDataChannelSpec:!0});const _={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",_),await this._pc.setRemoteDescription(_);const E=await this._pc.createAnswer();if(!this._transportReady){const P=n.parse(E.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:P})}p.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",E),await this._pc.setLocalDescription(E),this._hasDataChannelMediaSection=!0}return{dataChannel:R}}async setupTransport({localDtlsRole:C,localSdpObject:w}){w||(w=n.parse(this._pc.localDescription.sdp));const y=a.extractDtlsParameters({sdpObject:w});y.role=C,this._remoteSdp.updateDtlsRole(C==="client"?"server":"client"),await new Promise((f,u)=>{this.safeEmit("@connect",{dtlsParameters:y},f,u)}),this._transportReady=!0}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return an.Chrome67=v,an}var cn={},Yv;function kk(){if(Yv)return cn;Yv=1;var t=cn&&cn.__createBinding||(Object.create?function(C,w,y,f){f===void 0&&(f=y);var u=Object.getOwnPropertyDescriptor(w,y);(!u||("get"in u?!w.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return w[y]}}),Object.defineProperty(C,f,u)}:function(C,w,y,f){f===void 0&&(f=y),C[f]=w[y]}),e=cn&&cn.__setModuleDefault||(Object.create?function(C,w){Object.defineProperty(C,"default",{enumerable:!0,value:w})}:function(C,w){C.default=w}),r=cn&&cn.__importStar||function(){var C=function(w){return C=Object.getOwnPropertyNames||function(y){var f=[];for(var u in y)Object.prototype.hasOwnProperty.call(y,u)&&(f[f.length]=u);return f},C(w)};return function(w){if(w&&w.__esModule)return w;var y={};if(w!=null)for(var f=C(w),u=0;u<f.length;u++)f[u]!=="default"&&t(y,w,f[u]);return e(y,w),y}}();Object.defineProperty(cn,"__esModule",{value:!0}),cn.Chrome55=void 0;const n=r(cr()),i=St(),s=er(),o=r(Xt()),a=r(lr()),c=r(Hr()),l=r(fd()),d=yr(),p=Vr(),m=new i.Logger("Chrome55"),g="Chrome55",v={OS:1024,MIS:1024};let S=class $w extends d.HandlerInterface{static createFactory(){return()=>new $w}constructor(){super(),this._sendStream=new MediaStream,this._mapSendLocalIdTrack=new Map,this._nextSendLocalId=0,this._mapRecvLocalIdInfo=new Map,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return g}close(){if(m.debug("close()"),this._pc)try{this._pc.close()}catch{}this.emit("@close")}async getNativeRtpCapabilities(){m.debug("getNativeRtpCapabilities()");const w=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b"});try{const y=await w.createOffer({offerToReceiveAudio:!0,offerToReceiveVideo:!0});try{w.close()}catch{}const f=n.parse(y.sdp);return c.extractRtpCapabilities({sdpObject:f})}catch(y){try{w.close()}catch{}throw y}}async getNativeSctpCapabilities(){return m.debug("getNativeSctpCapabilities()"),{numStreams:v}}run({direction:w,iceParameters:y,iceCandidates:f,dtlsParameters:u,sctpParameters:h,iceServers:b,iceTransportPolicy:A,additionalSettings:R,proprietaryConstraints:_,extendedRtpCapabilities:E}){m.debug("run()"),this._direction=w,this._remoteSdp=new p.RemoteSdp({iceParameters:y,iceCandidates:f,dtlsParameters:u,sctpParameters:h,planB:!0}),this._sendingRtpParametersByKind={audio:a.getSendingRtpParameters("audio",E),video:a.getSendingRtpParameters("video",E)},this._sendingRemoteRtpParametersByKind={audio:a.getSendingRemoteRtpParameters("audio",E),video:a.getSendingRemoteRtpParameters("video",E)},u.role&&u.role!=="auto"&&(this._forcedLocalDtlsRole=u.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:b??[],iceTransportPolicy:A??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b",...R},_),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(m.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(w){m.debug("updateIceServers()");const y=this._pc.getConfiguration();y.iceServers=w,this._pc.setConfiguration(y)}async restartIce(w){if(m.debug("restartIce()"),this._remoteSdp.updateIceParameters(w),!!this._transportReady)if(this._direction==="send"){const y=await this._pc.createOffer({iceRestart:!0});m.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",y),await this._pc.setLocalDescription(y);const f={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",f),await this._pc.setRemoteDescription(f)}else{const y={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);const f=await this._pc.createAnswer();m.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f)}}async getTransportStats(){return this._pc.getStats()}async send({track:w,encodings:y,codecOptions:f,codec:u}){this.assertSendDirection(),m.debug("send() [kind:%s, track.id:%s]",w.kind,w.id),u&&m.warn("send() | codec selection is not available in %s handler",this.name),this._sendStream.addTrack(w),this._pc.addStream(this._sendStream);let h=await this._pc.createOffer(),b=n.parse(h.sdp),A;const R=o.clone(this._sendingRtpParametersByKind[w.kind]);R.codecs=a.reduceCodecs(R.codecs);const _=o.clone(this._sendingRemoteRtpParametersByKind[w.kind]);if(_.codecs=a.reduceCodecs(_.codecs),this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:b}),w.kind==="video"&&y&&y.length>1&&(m.debug("send() | enabling simulcast"),b=n.parse(h.sdp),A=b.media.find(T=>T.type==="video"),l.addLegacySimulcast({offerMediaObject:A,track:w,numStreams:y.length}),h={type:"offer",sdp:n.write(b)}),m.debug("send() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h),b=n.parse(this._pc.localDescription.sdp),A=b.media.find(T=>T.type===w.kind),R.rtcp.cname=c.getCname({offerMediaObject:A}),R.encodings=l.getRtpEncodings({offerMediaObject:A,track:w}),y)for(let T=0;T<R.encodings.length;++T)y[T]&&Object.assign(R.encodings[T],y[T]);if(R.encodings.length>1&&R.codecs[0].mimeType.toLowerCase()==="video/vp8")for(const T of R.encodings)T.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:A,offerRtpParameters:R,answerRtpParameters:_,codecOptions:f});const E={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("send() | calling pc.setRemoteDescription() [answer:%o]",E),await this._pc.setRemoteDescription(E);const P=String(this._nextSendLocalId);return this._nextSendLocalId++,this._mapSendLocalIdTrack.set(P,w),{localId:P,rtpParameters:R}}async stopSending(w){this.assertSendDirection(),m.debug("stopSending() [localId:%s]",w);const y=this._mapSendLocalIdTrack.get(w);if(!y)throw new Error("track not found");this._mapSendLocalIdTrack.delete(w),this._sendStream.removeTrack(y),this._pc.addStream(this._sendStream);const f=await this._pc.createOffer();m.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",f);try{await this._pc.setLocalDescription(f)}catch(h){if(this._sendStream.getTracks().length===0){m.warn("stopSending() | ignoring expected error due no sending tracks: %s",h.toString());return}throw h}if(this._pc.signalingState==="stable")return;const u={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",u),await this._pc.setRemoteDescription(u)}async pauseSending(w){}async resumeSending(w){}async replaceTrack(w,y){throw new s.UnsupportedError("not implemented")}async setMaxSpatialLayer(w,y){throw new s.UnsupportedError(" not implemented")}async setRtpEncodingParameters(w,y){throw new s.UnsupportedError("not supported")}async getSenderStats(w){throw new s.UnsupportedError("not implemented")}async sendDataChannel({ordered:w,maxPacketLifeTime:y,maxRetransmits:f,label:u,protocol:h}){this.assertSendDirection();const b={negotiated:!0,id:this._nextSendSctpStreamId,ordered:w,maxPacketLifeTime:y,maxRetransmitTime:y,maxRetransmits:f,protocol:h};m.debug("sendDataChannel() [options:%o]",b);const A=this._pc.createDataChannel(u,b);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%v.MIS,!this._hasDataChannelMediaSection){const _=await this._pc.createOffer(),E=n.parse(_.sdp),P=E.media.find(k=>k.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:E}),m.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",_),await this._pc.setLocalDescription(_),this._remoteSdp.sendSctpAssociation({offerMediaObject:P});const T={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",T),await this._pc.setRemoteDescription(T),this._hasDataChannelMediaSection=!0}const R={streamId:b.id,ordered:b.ordered,maxPacketLifeTime:b.maxPacketLifeTime,maxRetransmits:b.maxRetransmits};return{dataChannel:A,sctpStreamParameters:R}}async receive(w){this.assertRecvDirection();const y=[];for(const b of w){const{trackId:A,kind:R,rtpParameters:_,streamId:E}=b;m.debug("receive() [trackId:%s, kind:%s]",A,R);const P=R;this._remoteSdp.receive({mid:P,kind:R,offerRtpParameters:_,streamId:E??_.rtcp.cname,trackId:A})}const f={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);let u=await this._pc.createAnswer();const h=n.parse(u.sdp);for(const b of w){const{kind:A,rtpParameters:R}=b,_=A,E=h.media.find(P=>String(P.mid)===_);c.applyCodecParameters({offerRtpParameters:R,answerMediaObject:E})}u={type:"answer",sdp:n.write(h)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:h}),m.debug("receive() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u);for(const b of w){const{kind:A,trackId:R,rtpParameters:_}=b,E=A,P=R,T=b.streamId??_.rtcp.cname,F=this._pc.getRemoteStreams().find(X=>X.id===T).getTrackById(P);if(!F)throw new Error("remote track not found");this._mapRecvLocalIdInfo.set(P,{mid:E,rtpParameters:_}),y.push({localId:P,track:F})}return y}async stopReceiving(w){this.assertRecvDirection();for(const u of w){m.debug("stopReceiving() [localId:%s]",u);const{mid:h,rtpParameters:b}=this._mapRecvLocalIdInfo.get(u)??{};this._mapRecvLocalIdInfo.delete(u),this._remoteSdp.planBStopReceiving({mid:h,offerRtpParameters:b})}const y={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);const f=await this._pc.createAnswer();m.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f)}async pauseReceiving(w){}async resumeReceiving(w){}async getReceiverStats(w){throw new s.UnsupportedError("not implemented")}async receiveDataChannel({sctpStreamParameters:w,label:y,protocol:f}){this.assertRecvDirection();const{streamId:u,ordered:h,maxPacketLifeTime:b,maxRetransmits:A}=w,R={negotiated:!0,id:u,ordered:h,maxPacketLifeTime:b,maxRetransmitTime:b,maxRetransmits:A,protocol:f};m.debug("receiveDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(y,R);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation({oldDataChannelSpec:!0});const E={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",E),await this._pc.setRemoteDescription(E);const P=await this._pc.createAnswer();if(!this._transportReady){const T=n.parse(P.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T})}m.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",P),await this._pc.setLocalDescription(P),this._hasDataChannelMediaSection=!0}return{dataChannel:_}}async setupTransport({localDtlsRole:w,localSdpObject:y}){y||(y=n.parse(this._pc.localDescription.sdp));const f=c.extractDtlsParameters({sdpObject:y});f.role=w,this._remoteSdp.updateDtlsRole(w==="client"?"server":"client"),await new Promise((u,h)=>{this.safeEmit("@connect",{dtlsParameters:f},u,h)}),this._transportReady=!0}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return cn.Chrome55=S,cn}var ln={},Zv;function Mk(){if(Zv)return ln;Zv=1;var t=ln&&ln.__createBinding||(Object.create?function(w,y,f,u){u===void 0&&(u=f);var h=Object.getOwnPropertyDescriptor(y,f);(!h||("get"in h?!y.__esModule:h.writable||h.configurable))&&(h={enumerable:!0,get:function(){return y[f]}}),Object.defineProperty(w,u,h)}:function(w,y,f,u){u===void 0&&(u=f),w[u]=y[f]}),e=ln&&ln.__setModuleDefault||(Object.create?function(w,y){Object.defineProperty(w,"default",{enumerable:!0,value:y})}:function(w,y){w.default=y}),r=ln&&ln.__importStar||function(){var w=function(y){return w=Object.getOwnPropertyNames||function(f){var u=[];for(var h in f)Object.prototype.hasOwnProperty.call(f,h)&&(u[u.length]=h);return u},w(y)};return function(y){if(y&&y.__esModule)return y;var f={};if(y!=null)for(var u=w(y),h=0;h<u.length;h++)u[h]!=="default"&&t(f,y,u[h]);return e(f,y),f}}();Object.defineProperty(ln,"__esModule",{value:!0}),ln.Firefox120=void 0;const n=r(cr()),i=St(),s=er(),o=r(Xt()),a=r(lr()),c=r(Hr()),l=r(ys()),d=yr(),p=Vr(),m=di(),g=new i.Logger("Firefox120"),v="Firefox120",S={OS:16,MIS:2048};let C=class eC extends d.HandlerInterface{static createFactory(){return()=>new eC}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return v}close(){if(g.debug("close()"),!this._closed){if(this._closed=!0,this._pc)try{this._pc.close()}catch{}this.emit("@close")}}async getNativeRtpCapabilities(){g.debug("getNativeRtpCapabilities()");const y=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require"}),f=document.createElement("canvas");f.getContext("2d");const h=f.captureStream().getVideoTracks()[0];try{y.addTransceiver("audio",{direction:"sendrecv"}),y.addTransceiver(h,{direction:"sendrecv",sendEncodings:[{rid:"r0",maxBitrate:1e5},{rid:"r1",maxBitrate:5e5}]});const b=await y.createOffer();try{f.remove()}catch{}try{h.stop()}catch{}try{y.close()}catch{}const A=n.parse(b.sdp);return c.extractRtpCapabilities({sdpObject:A})}catch(b){try{f.remove()}catch{}try{h.stop()}catch{}try{y.close()}catch{}throw b}}async getNativeSctpCapabilities(){return g.debug("getNativeSctpCapabilities()"),{numStreams:S}}run({direction:y,iceParameters:f,iceCandidates:u,dtlsParameters:h,sctpParameters:b,iceServers:A,iceTransportPolicy:R,additionalSettings:_,proprietaryConstraints:E,extendedRtpCapabilities:P}){this.assertNotClosed(),g.debug("run()"),this._direction=y,this._remoteSdp=new p.RemoteSdp({iceParameters:f,iceCandidates:u,dtlsParameters:h,sctpParameters:b}),this._sendingRtpParametersByKind={audio:a.getSendingRtpParameters("audio",P),video:a.getSendingRtpParameters("video",P)},this._sendingRemoteRtpParametersByKind={audio:a.getSendingRemoteRtpParameters("audio",P),video:a.getSendingRemoteRtpParameters("video",P)},this._pc=new RTCPeerConnection({iceServers:A??[],iceTransportPolicy:R??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",..._},E),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(g.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(y){throw this.assertNotClosed(),new s.UnsupportedError("not supported")}async restartIce(y){if(this.assertNotClosed(),g.debug("restartIce()"),this._remoteSdp.updateIceParameters(y),!!this._transportReady)if(this._direction==="send"){const f=await this._pc.createOffer({iceRestart:!0});g.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",f),await this._pc.setLocalDescription(f);const u={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",u),await this._pc.setRemoteDescription(u)}else{const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u)}}async getTransportStats(){return this.assertNotClosed(),this._pc.getStats()}async send({track:y,encodings:f,codecOptions:u,codec:h,onRtpSender:b}){this.assertNotClosed(),this.assertSendDirection(),g.debug("send() [kind:%s, track.id:%s]",y.kind,y.id),f&&f.length>1&&f.forEach((O,L)=>{O.rid=`r${L}`});const A=o.clone(this._sendingRtpParametersByKind[y.kind]);A.codecs=a.reduceCodecs(A.codecs,h);const R=o.clone(this._sendingRemoteRtpParametersByKind[y.kind]);R.codecs=a.reduceCodecs(R.codecs,h);const _=this._pc.addTransceiver(y,{direction:"sendonly",streams:[this._sendStream],sendEncodings:f});b&&b(_.sender);const E=await this._pc.createOffer();let P=n.parse(E.sdp);this._transportReady||await this.setupTransport({localDtlsRole:"client",localSdpObject:P});const T=(0,m.parse)((f??[{}])[0].scalabilityMode);g.debug("send() | calling pc.setLocalDescription() [offer:%o]",E),await this._pc.setLocalDescription(E);const k=_.mid;A.mid=k,P=n.parse(this._pc.localDescription.sdp);const F=P.media[P.media.length-1];if(A.rtcp.cname=c.getCname({offerMediaObject:F}),!f)A.encodings=l.getRtpEncodings({offerMediaObject:F});else if(f.length===1){const O=l.getRtpEncodings({offerMediaObject:F});Object.assign(O[0],f[0]),A.encodings=O}else A.encodings=f;if(A.encodings.length>1&&(A.codecs[0].mimeType.toLowerCase()==="video/vp8"||A.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const O of A.encodings)O.scalabilityMode?O.scalabilityMode=`L1T${T.temporalLayers}`:O.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:F,offerRtpParameters:A,answerRtpParameters:R,codecOptions:u,extmapAllowMixed:!0});const X={type:"answer",sdp:this._remoteSdp.getSdp()};return g.debug("send() | calling pc.setRemoteDescription() [answer:%o]",X),await this._pc.setRemoteDescription(X),this._mapMidTransceiver.set(k,_),{localId:k,rtpParameters:A,rtpSender:_.sender}}async stopSending(y){if(this.assertSendDirection(),g.debug("stopSending() [localId:%s]",y),this._closed)return;const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated transceiver not found");f.sender.replaceTrack(null),this._pc.removeTrack(f.sender),this._remoteSdp.disableMediaSection(f.mid);const u=await this._pc.createOffer();g.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h),this._mapMidTransceiver.delete(y)}async pauseSending(y){this.assertNotClosed(),this.assertSendDirection(),g.debug("pauseSending() [localId:%s]",y);const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");f.direction="inactive",this._remoteSdp.pauseMediaSection(y);const u=await this._pc.createOffer();g.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}async resumeSending(y){this.assertNotClosed(),this.assertSendDirection(),g.debug("resumeSending() [localId:%s]",y);const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");f.direction="sendonly",this._remoteSdp.resumeSendingMediaSection(y);const u=await this._pc.createOffer();g.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}async replaceTrack(y,f){this.assertNotClosed(),this.assertSendDirection(),f?g.debug("replaceTrack() [localId:%s, track.id:%s]",y,f.id):g.debug("replaceTrack() [localId:%s, no track]",y);const u=this._mapMidTransceiver.get(y);if(!u)throw new Error("associated RTCRtpTransceiver not found");await u.sender.replaceTrack(f)}async setMaxSpatialLayer(y,f){this.assertNotClosed(),this.assertSendDirection(),g.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",y,f);const u=this._mapMidTransceiver.get(y);if(!u)throw new Error("associated transceiver not found");const h=u.sender.getParameters();h.encodings.forEach((R,_)=>{_<=f?R.active=!0:R.active=!1}),await u.sender.setParameters(h),this._remoteSdp.muxMediaSectionSimulcast(y,h.encodings);const b=await this._pc.createOffer();g.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A)}async setRtpEncodingParameters(y,f){this.assertNotClosed(),this.assertSendDirection(),g.debug("setRtpEncodingParameters() [localId:%s, params:%o]",y,f);const u=this._mapMidTransceiver.get(y);if(!u)throw new Error("associated RTCRtpTransceiver not found");const h=u.sender.getParameters();h.encodings.forEach((R,_)=>{h.encodings[_]={...R,...f}}),await u.sender.setParameters(h),this._remoteSdp.muxMediaSectionSimulcast(y,h.encodings);const b=await this._pc.createOffer();g.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A)}async getSenderStats(y){this.assertNotClosed(),this.assertSendDirection();const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");return f.sender.getStats()}async sendDataChannel({ordered:y,maxPacketLifeTime:f,maxRetransmits:u,label:h,protocol:b}){this.assertNotClosed(),this.assertSendDirection();const A={negotiated:!0,id:this._nextSendSctpStreamId,ordered:y,maxPacketLifeTime:f,maxRetransmits:u,protocol:b};g.debug("sendDataChannel() [options:%o]",A);const R=this._pc.createDataChannel(h,A);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%S.MIS,!this._hasDataChannelMediaSection){const E=await this._pc.createOffer(),P=n.parse(E.sdp),T=P.media.find(F=>F.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:"client",localSdpObject:P}),g.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",E),await this._pc.setLocalDescription(E),this._remoteSdp.sendSctpAssociation({offerMediaObject:T});const k={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",k),await this._pc.setRemoteDescription(k),this._hasDataChannelMediaSection=!0}const _={streamId:A.id,ordered:A.ordered,maxPacketLifeTime:A.maxPacketLifeTime,maxRetransmits:A.maxRetransmits};return{dataChannel:R,sctpStreamParameters:_}}async receive(y){this.assertNotClosed(),this.assertRecvDirection();const f=[],u=new Map;for(const R of y){const{trackId:_,kind:E,rtpParameters:P,streamId:T}=R;g.debug("receive() [trackId:%s, kind:%s]",_,E);const k=P.mid??String(this._mapMidTransceiver.size);u.set(_,k),this._remoteSdp.receive({mid:k,kind:E,offerRtpParameters:P,streamId:T??P.rtcp.cname,trackId:_})}const h={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",h),await this._pc.setRemoteDescription(h);for(const R of y){const{trackId:_,onRtpReceiver:E}=R;if(E){const P=u.get(_),T=this._pc.getTransceivers().find(k=>k.mid===P);if(!T)throw new Error("transceiver not found");E(T.receiver)}}let b=await this._pc.createAnswer();const A=n.parse(b.sdp);for(const R of y){const{trackId:_,rtpParameters:E}=R,P=u.get(_),T=A.media.find(k=>String(k.mid)===P);c.applyCodecParameters({offerRtpParameters:E,answerMediaObject:T}),b={type:"answer",sdp:n.write(A)}}this._transportReady||await this.setupTransport({localDtlsRole:"client",localSdpObject:A}),g.debug("receive() | calling pc.setLocalDescription() [answer:%o]",b),await this._pc.setLocalDescription(b);for(const R of y){const{trackId:_}=R,E=u.get(_),P=this._pc.getTransceivers().find(T=>T.mid===E);if(!P)throw new Error("new RTCRtpTransceiver not found");this._mapMidTransceiver.set(E,P),f.push({localId:E,track:P.receiver.track,rtpReceiver:P.receiver})}return f}async stopReceiving(y){if(this.assertRecvDirection(),this._closed)return;for(const h of y){g.debug("stopReceiving() [localId:%s]",h);const b=this._mapMidTransceiver.get(h);if(!b)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(b.mid)}const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u);for(const h of y)this._mapMidTransceiver.delete(h)}async pauseReceiving(y){this.assertNotClosed(),this.assertRecvDirection();for(const h of y){g.debug("pauseReceiving() [localId:%s]",h);const b=this._mapMidTransceiver.get(h);if(!b)throw new Error("associated RTCRtpTransceiver not found");b.direction="inactive",this._remoteSdp.pauseMediaSection(h)}const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u)}async resumeReceiving(y){this.assertNotClosed(),this.assertRecvDirection();for(const h of y){g.debug("resumeReceiving() [localId:%s]",h);const b=this._mapMidTransceiver.get(h);if(!b)throw new Error("associated RTCRtpTransceiver not found");b.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(h)}const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u)}async getReceiverStats(y){this.assertRecvDirection();const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");return f.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:y,label:f,protocol:u}){this.assertNotClosed(),this.assertRecvDirection();const{streamId:h,ordered:b,maxPacketLifeTime:A,maxRetransmits:R}=y,_={negotiated:!0,id:h,ordered:b,maxPacketLifeTime:A,maxRetransmits:R,protocol:u};g.debug("receiveDataChannel() [options:%o]",_);const E=this._pc.createDataChannel(f,_);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const P={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",P),await this._pc.setRemoteDescription(P);const T=await this._pc.createAnswer();if(!this._transportReady){const k=n.parse(T.sdp);await this.setupTransport({localDtlsRole:"client",localSdpObject:k})}g.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",T),await this._pc.setLocalDescription(T),this._hasDataChannelMediaSection=!0}return{dataChannel:E}}async setupTransport({localDtlsRole:y,localSdpObject:f}){f||(f=n.parse(this._pc.localDescription.sdp));const u=c.extractDtlsParameters({sdpObject:f});u.role=y,this._remoteSdp.updateDtlsRole(y==="client"?"server":"client"),await new Promise((h,b)=>{this.safeEmit("@connect",{dtlsParameters:u},h,b)}),this._transportReady=!0}assertNotClosed(){if(this._closed)throw new s.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return ln.Firefox120=C,ln}var dn={},qv;function Nk(){if(qv)return dn;qv=1;var t=dn&&dn.__createBinding||(Object.create?function(w,y,f,u){u===void 0&&(u=f);var h=Object.getOwnPropertyDescriptor(y,f);(!h||("get"in h?!y.__esModule:h.writable||h.configurable))&&(h={enumerable:!0,get:function(){return y[f]}}),Object.defineProperty(w,u,h)}:function(w,y,f,u){u===void 0&&(u=f),w[u]=y[f]}),e=dn&&dn.__setModuleDefault||(Object.create?function(w,y){Object.defineProperty(w,"default",{enumerable:!0,value:y})}:function(w,y){w.default=y}),r=dn&&dn.__importStar||function(){var w=function(y){return w=Object.getOwnPropertyNames||function(f){var u=[];for(var h in f)Object.prototype.hasOwnProperty.call(f,h)&&(u[u.length]=h);return u},w(y)};return function(y){if(y&&y.__esModule)return y;var f={};if(y!=null)for(var u=w(y),h=0;h<u.length;h++)u[h]!=="default"&&t(f,y,u[h]);return e(f,y),f}}();Object.defineProperty(dn,"__esModule",{value:!0}),dn.Firefox60=void 0;const n=r(cr()),i=St(),s=er(),o=r(Xt()),a=r(lr()),c=r(Hr()),l=r(ys()),d=yr(),p=Vr(),m=di(),g=new i.Logger("Firefox60"),v="Firefox60",S={OS:16,MIS:2048};let C=class tC extends d.HandlerInterface{static createFactory(){return()=>new tC}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return v}close(){if(g.debug("close()"),!this._closed){if(this._closed=!0,this._pc)try{this._pc.close()}catch{}this.emit("@close")}}async getNativeRtpCapabilities(){g.debug("getNativeRtpCapabilities()");const y=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require"}),f=document.createElement("canvas");f.getContext("2d");const h=f.captureStream().getVideoTracks()[0];try{y.addTransceiver("audio",{direction:"sendrecv"});const b=y.addTransceiver(h,{direction:"sendrecv"}),A=b.sender.getParameters(),R=[{rid:"r0",maxBitrate:1e5},{rid:"r1",maxBitrate:5e5}];A.encodings=R,await b.sender.setParameters(A);const _=await y.createOffer();try{f.remove()}catch{}try{h.stop()}catch{}try{y.close()}catch{}const E=n.parse(_.sdp);return c.extractRtpCapabilities({sdpObject:E})}catch(b){try{f.remove()}catch{}try{h.stop()}catch{}try{y.close()}catch{}throw b}}async getNativeSctpCapabilities(){return g.debug("getNativeSctpCapabilities()"),{numStreams:S}}run({direction:y,iceParameters:f,iceCandidates:u,dtlsParameters:h,sctpParameters:b,iceServers:A,iceTransportPolicy:R,additionalSettings:_,proprietaryConstraints:E,extendedRtpCapabilities:P}){this.assertNotClosed(),g.debug("run()"),this._direction=y,this._remoteSdp=new p.RemoteSdp({iceParameters:f,iceCandidates:u,dtlsParameters:h,sctpParameters:b}),this._sendingRtpParametersByKind={audio:a.getSendingRtpParameters("audio",P),video:a.getSendingRtpParameters("video",P)},this._sendingRemoteRtpParametersByKind={audio:a.getSendingRemoteRtpParameters("audio",P),video:a.getSendingRemoteRtpParameters("video",P)},this._pc=new RTCPeerConnection({iceServers:A??[],iceTransportPolicy:R??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",..._},E),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(g.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(y){throw this.assertNotClosed(),new s.UnsupportedError("not supported")}async restartIce(y){if(this.assertNotClosed(),g.debug("restartIce()"),this._remoteSdp.updateIceParameters(y),!!this._transportReady)if(this._direction==="send"){const f=await this._pc.createOffer({iceRestart:!0});g.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",f),await this._pc.setLocalDescription(f);const u={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",u),await this._pc.setRemoteDescription(u)}else{const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u)}}async getTransportStats(){return this.assertNotClosed(),this._pc.getStats()}async send({track:y,encodings:f,codecOptions:u,codec:h}){this.assertNotClosed(),this.assertSendDirection(),g.debug("send() [kind:%s, track.id:%s]",y.kind,y.id),f&&(f=o.clone(f),f.forEach((X,O)=>{X.rid=`r${O}`}),f.reverse());const b=o.clone(this._sendingRtpParametersByKind[y.kind]);b.codecs=a.reduceCodecs(b.codecs,h);const A=o.clone(this._sendingRemoteRtpParametersByKind[y.kind]);A.codecs=a.reduceCodecs(A.codecs,h);const R=this._pc.addTransceiver(y,{direction:"sendonly",streams:[this._sendStream]});if(f){const X=R.sender.getParameters();X.encodings=f,await R.sender.setParameters(X)}const _=await this._pc.createOffer();let E=n.parse(_.sdp);this._transportReady||await this.setupTransport({localDtlsRole:"client",localSdpObject:E});const P=(0,m.parse)((f??[{}])[0].scalabilityMode);g.debug("send() | calling pc.setLocalDescription() [offer:%o]",_),await this._pc.setLocalDescription(_);const T=R.mid;b.mid=T,E=n.parse(this._pc.localDescription.sdp);const k=E.media[E.media.length-1];if(b.rtcp.cname=c.getCname({offerMediaObject:k}),!f)b.encodings=l.getRtpEncodings({offerMediaObject:k});else if(f.length===1){const X=l.getRtpEncodings({offerMediaObject:k});Object.assign(X[0],f[0]),b.encodings=X}else b.encodings=f.reverse();if(b.encodings.length>1&&(b.codecs[0].mimeType.toLowerCase()==="video/vp8"||b.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const X of b.encodings)X.scalabilityMode?X.scalabilityMode=`L1T${P.temporalLayers}`:X.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:k,offerRtpParameters:b,answerRtpParameters:A,codecOptions:u,extmapAllowMixed:!0});const F={type:"answer",sdp:this._remoteSdp.getSdp()};return g.debug("send() | calling pc.setRemoteDescription() [answer:%o]",F),await this._pc.setRemoteDescription(F),this._mapMidTransceiver.set(T,R),{localId:T,rtpParameters:b,rtpSender:R.sender}}async stopSending(y){if(this.assertSendDirection(),g.debug("stopSending() [localId:%s]",y),this._closed)return;const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated transceiver not found");f.sender.replaceTrack(null),this._pc.removeTrack(f.sender),this._remoteSdp.disableMediaSection(f.mid);const u=await this._pc.createOffer();g.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h),this._mapMidTransceiver.delete(y)}async pauseSending(y){this.assertNotClosed(),this.assertSendDirection(),g.debug("pauseSending() [localId:%s]",y);const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");f.direction="inactive",this._remoteSdp.pauseMediaSection(y);const u=await this._pc.createOffer();g.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}async resumeSending(y){this.assertNotClosed(),this.assertSendDirection(),g.debug("resumeSending() [localId:%s]",y);const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");f.direction="sendonly",this._remoteSdp.resumeSendingMediaSection(y);const u=await this._pc.createOffer();g.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}async replaceTrack(y,f){this.assertNotClosed(),this.assertSendDirection(),f?g.debug("replaceTrack() [localId:%s, track.id:%s]",y,f.id):g.debug("replaceTrack() [localId:%s, no track]",y);const u=this._mapMidTransceiver.get(y);if(!u)throw new Error("associated RTCRtpTransceiver not found");await u.sender.replaceTrack(f)}async setMaxSpatialLayer(y,f){this.assertNotClosed(),this.assertSendDirection(),g.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",y,f);const u=this._mapMidTransceiver.get(y);if(!u)throw new Error("associated transceiver not found");const h=u.sender.getParameters();f=h.encodings.length-1-f,h.encodings.forEach((R,_)=>{_>=f?R.active=!0:R.active=!1}),await u.sender.setParameters(h),this._remoteSdp.muxMediaSectionSimulcast(y,h.encodings);const b=await this._pc.createOffer();g.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A)}async setRtpEncodingParameters(y,f){this.assertNotClosed(),this.assertSendDirection(),g.debug("setRtpEncodingParameters() [localId:%s, params:%o]",y,f);const u=this._mapMidTransceiver.get(y);if(!u)throw new Error("associated RTCRtpTransceiver not found");const h=u.sender.getParameters();h.encodings.forEach((R,_)=>{h.encodings[_]={...R,...f}}),await u.sender.setParameters(h),this._remoteSdp.muxMediaSectionSimulcast(y,h.encodings);const b=await this._pc.createOffer();g.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A)}async getSenderStats(y){this.assertNotClosed(),this.assertSendDirection();const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");return f.sender.getStats()}async sendDataChannel({ordered:y,maxPacketLifeTime:f,maxRetransmits:u,label:h,protocol:b}){this.assertNotClosed(),this.assertSendDirection();const A={negotiated:!0,id:this._nextSendSctpStreamId,ordered:y,maxPacketLifeTime:f,maxRetransmits:u,protocol:b};g.debug("sendDataChannel() [options:%o]",A);const R=this._pc.createDataChannel(h,A);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%S.MIS,!this._hasDataChannelMediaSection){const E=await this._pc.createOffer(),P=n.parse(E.sdp),T=P.media.find(F=>F.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:"client",localSdpObject:P}),g.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",E),await this._pc.setLocalDescription(E),this._remoteSdp.sendSctpAssociation({offerMediaObject:T});const k={type:"answer",sdp:this._remoteSdp.getSdp()};g.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",k),await this._pc.setRemoteDescription(k),this._hasDataChannelMediaSection=!0}const _={streamId:A.id,ordered:A.ordered,maxPacketLifeTime:A.maxPacketLifeTime,maxRetransmits:A.maxRetransmits};return{dataChannel:R,sctpStreamParameters:_}}async receive(y){this.assertNotClosed(),this.assertRecvDirection();const f=[],u=new Map;for(const R of y){const{trackId:_,kind:E,rtpParameters:P,streamId:T}=R;g.debug("receive() [trackId:%s, kind:%s]",_,E);const k=P.mid??String(this._mapMidTransceiver.size);u.set(_,k),this._remoteSdp.receive({mid:k,kind:E,offerRtpParameters:P,streamId:T??P.rtcp.cname,trackId:_})}const h={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",h),await this._pc.setRemoteDescription(h);let b=await this._pc.createAnswer();const A=n.parse(b.sdp);for(const R of y){const{trackId:_,rtpParameters:E}=R,P=u.get(_),T=A.media.find(k=>String(k.mid)===P);c.applyCodecParameters({offerRtpParameters:E,answerMediaObject:T}),b={type:"answer",sdp:n.write(A)}}this._transportReady||await this.setupTransport({localDtlsRole:"client",localSdpObject:A}),g.debug("receive() | calling pc.setLocalDescription() [answer:%o]",b),await this._pc.setLocalDescription(b);for(const R of y){const{trackId:_}=R,E=u.get(_),P=this._pc.getTransceivers().find(T=>T.mid===E);if(!P)throw new Error("new RTCRtpTransceiver not found");this._mapMidTransceiver.set(E,P),f.push({localId:E,track:P.receiver.track,rtpReceiver:P.receiver})}return f}async stopReceiving(y){if(this.assertRecvDirection(),this._closed)return;for(const h of y){g.debug("stopReceiving() [localId:%s]",h);const b=this._mapMidTransceiver.get(h);if(!b)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(b.mid)}const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u);for(const h of y)this._mapMidTransceiver.delete(h)}async pauseReceiving(y){this.assertNotClosed(),this.assertRecvDirection();for(const h of y){g.debug("pauseReceiving() [localId:%s]",h);const b=this._mapMidTransceiver.get(h);if(!b)throw new Error("associated RTCRtpTransceiver not found");b.direction="inactive",this._remoteSdp.pauseMediaSection(h)}const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u)}async resumeReceiving(y){this.assertNotClosed(),this.assertRecvDirection();for(const h of y){g.debug("resumeReceiving() [localId:%s]",h);const b=this._mapMidTransceiver.get(h);if(!b)throw new Error("associated RTCRtpTransceiver not found");b.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(h)}const f={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",f),await this._pc.setRemoteDescription(f);const u=await this._pc.createAnswer();g.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",u),await this._pc.setLocalDescription(u)}async getReceiverStats(y){this.assertRecvDirection();const f=this._mapMidTransceiver.get(y);if(!f)throw new Error("associated RTCRtpTransceiver not found");return f.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:y,label:f,protocol:u}){this.assertNotClosed(),this.assertRecvDirection();const{streamId:h,ordered:b,maxPacketLifeTime:A,maxRetransmits:R}=y,_={negotiated:!0,id:h,ordered:b,maxPacketLifeTime:A,maxRetransmits:R,protocol:u};g.debug("receiveDataChannel() [options:%o]",_);const E=this._pc.createDataChannel(f,_);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const P={type:"offer",sdp:this._remoteSdp.getSdp()};g.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",P),await this._pc.setRemoteDescription(P);const T=await this._pc.createAnswer();if(!this._transportReady){const k=n.parse(T.sdp);await this.setupTransport({localDtlsRole:"client",localSdpObject:k})}g.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",T),await this._pc.setLocalDescription(T),this._hasDataChannelMediaSection=!0}return{dataChannel:E}}async setupTransport({localDtlsRole:y,localSdpObject:f}){f||(f=n.parse(this._pc.localDescription.sdp));const u=c.extractDtlsParameters({sdpObject:f});u.role=y,this._remoteSdp.updateDtlsRole(y==="client"?"server":"client"),await new Promise((h,b)=>{this.safeEmit("@connect",{dtlsParameters:u},h,b)}),this._transportReady=!0}assertNotClosed(){if(this._closed)throw new s.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return dn.Firefox60=C,dn}var un={},Jv;function nC(){if(Jv)return un;Jv=1;var t=un&&un.__createBinding||(Object.create?function(y,f,u,h){h===void 0&&(h=u);var b=Object.getOwnPropertyDescriptor(f,u);(!b||("get"in b?!f.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:function(){return f[u]}}),Object.defineProperty(y,h,b)}:function(y,f,u,h){h===void 0&&(h=u),y[h]=f[u]}),e=un&&un.__setModuleDefault||(Object.create?function(y,f){Object.defineProperty(y,"default",{enumerable:!0,value:f})}:function(y,f){y.default=f}),r=un&&un.__importStar||function(){var y=function(f){return y=Object.getOwnPropertyNames||function(u){var h=[];for(var b in u)Object.prototype.hasOwnProperty.call(u,b)&&(h[h.length]=b);return h},y(f)};return function(f){if(f&&f.__esModule)return f;var u={};if(f!=null)for(var h=y(f),b=0;b<h.length;b++)h[b]!=="default"&&t(u,f,h[b]);return e(u,f),u}}();Object.defineProperty(un,"__esModule",{value:!0}),un.Safari12=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(ys()),l=r(wa()),d=er(),p=yr(),m=Vr(),g=di(),v=new i.Logger("Safari12"),S="Safari12",C={OS:1024,MIS:1024};let w=class rC extends p.HandlerInterface{static createFactory(){return()=>new rC}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return S}close(){if(v.debug("close()"),!this._closed){if(this._closed=!0,this._pc)try{this._pc.close()}catch{}this.emit("@close")}}async getNativeRtpCapabilities(){v.debug("getNativeRtpCapabilities()");const f=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require"});try{f.addTransceiver("audio"),f.addTransceiver("video");const u=await f.createOffer();try{f.close()}catch{}const h=n.parse(u.sdp),b=a.extractRtpCapabilities({sdpObject:h});return l.addNackSuppportForOpus(b),b}catch(u){try{f.close()}catch{}throw u}}async getNativeSctpCapabilities(){return v.debug("getNativeSctpCapabilities()"),{numStreams:C}}run({direction:f,iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A,iceServers:R,iceTransportPolicy:_,additionalSettings:E,proprietaryConstraints:P,extendedRtpCapabilities:T}){this.assertNotClosed(),v.debug("run()"),this._direction=f,this._remoteSdp=new m.RemoteSdp({iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",T),video:o.getSendingRtpParameters("video",T)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",T),video:o.getSendingRemoteRtpParameters("video",T)},b.role&&b.role!=="auto"&&(this._forcedLocalDtlsRole=b.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:R??[],iceTransportPolicy:_??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",...E},P),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(v.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(f){this.assertNotClosed(),v.debug("updateIceServers()");const u=this._pc.getConfiguration();u.iceServers=f,this._pc.setConfiguration(u)}async restartIce(f){if(this.assertNotClosed(),v.debug("restartIce()"),this._remoteSdp.updateIceParameters(f),!!this._transportReady)if(this._direction==="send"){const u=await this._pc.createOffer({iceRestart:!0});v.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}else{const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}}async getTransportStats(){return this.assertNotClosed(),this._pc.getStats()}async send({track:f,encodings:u,codecOptions:h,codec:b,onRtpSender:A}){this.assertNotClosed(),this.assertSendDirection(),v.debug("send() [kind:%s, track.id:%s]",f.kind,f.id);const R=s.clone(this._sendingRtpParametersByKind[f.kind]);R.codecs=o.reduceCodecs(R.codecs,b);const _=s.clone(this._sendingRemoteRtpParametersByKind[f.kind]);_.codecs=o.reduceCodecs(_.codecs,b);const E=this._remoteSdp.getNextMediaSectionIdx(),P=this._pc.addTransceiver(f,{direction:"sendonly",streams:[this._sendStream]});A&&A(P.sender);let T=await this._pc.createOffer(),k=n.parse(T.sdp),F;this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:k});const X=(0,g.parse)((u??[{}])[0].scalabilityMode);u&&u.length>1&&(v.debug("send() | enabling legacy simulcast"),k=n.parse(T.sdp),F=k.media[E.idx],c.addLegacySimulcast({offerMediaObject:F,numStreams:u.length}),T={type:"offer",sdp:n.write(k)}),v.debug("send() | calling pc.setLocalDescription() [offer:%o]",T),await this._pc.setLocalDescription(T);const O=P.mid;if(R.mid=O,k=n.parse(this._pc.localDescription.sdp),F=k.media[E.idx],R.rtcp.cname=a.getCname({offerMediaObject:F}),R.encodings=c.getRtpEncodings({offerMediaObject:F}),u)for(let B=0;B<R.encodings.length;++B)u[B]&&Object.assign(R.encodings[B],u[B]);if(R.encodings.length>1&&(R.codecs[0].mimeType.toLowerCase()==="video/vp8"||R.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const B of R.encodings)B.scalabilityMode?B.scalabilityMode=`L1T${X.temporalLayers}`:B.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:F,reuseMid:E.reuseMid,offerRtpParameters:R,answerRtpParameters:_,codecOptions:h});const L={type:"answer",sdp:this._remoteSdp.getSdp()};return v.debug("send() | calling pc.setRemoteDescription() [answer:%o]",L),await this._pc.setRemoteDescription(L),this._mapMidTransceiver.set(O,P),{localId:O,rtpParameters:R,rtpSender:P.sender}}async stopSending(f){if(this.assertSendDirection(),this._closed)return;v.debug("stopSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");if(u.sender.replaceTrack(null),this._pc.removeTrack(u.sender),this._remoteSdp.closeMediaSection(u.mid))try{u.stop()}catch{}const b=await this._pc.createOffer();v.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A),this._mapMidTransceiver.delete(f)}async pauseSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("pauseSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="inactive",this._remoteSdp.pauseMediaSection(f);const h=await this._pc.createOffer();v.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async resumeSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("resumeSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="sendonly",this._remoteSdp.resumeSendingMediaSection(f);const h=await this._pc.createOffer();v.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async replaceTrack(f,u){this.assertNotClosed(),this.assertSendDirection(),u?v.debug("replaceTrack() [localId:%s, track.id:%s]",f,u.id):v.debug("replaceTrack() [localId:%s, no track]",f);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");await h.sender.replaceTrack(u)}async setMaxSpatialLayer(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{E<=u?_.active=!0:_.active=!1}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async setRtpEncodingParameters(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setRtpEncodingParameters() [localId:%s, params:%o]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{b.encodings[E]={..._,...u}}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async getSenderStats(f){this.assertNotClosed(),this.assertSendDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.sender.getStats()}async sendDataChannel({ordered:f,maxPacketLifeTime:u,maxRetransmits:h,label:b,protocol:A}){this.assertNotClosed(),this.assertSendDirection();const R={negotiated:!0,id:this._nextSendSctpStreamId,ordered:f,maxPacketLifeTime:u,maxRetransmits:h,protocol:A};v.debug("sendDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(b,R);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%C.MIS,!this._hasDataChannelMediaSection){const P=await this._pc.createOffer(),T=n.parse(P.sdp),k=T.media.find(X=>X.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T}),v.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",P),await this._pc.setLocalDescription(P),this._remoteSdp.sendSctpAssociation({offerMediaObject:k});const F={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",F),await this._pc.setRemoteDescription(F),this._hasDataChannelMediaSection=!0}const E={streamId:R.id,ordered:R.ordered,maxPacketLifeTime:R.maxPacketLifeTime,maxRetransmits:R.maxRetransmits};return{dataChannel:_,sctpStreamParameters:E}}async receive(f){this.assertNotClosed(),this.assertRecvDirection();const u=[],h=new Map;for(const _ of f){const{trackId:E,kind:P,rtpParameters:T,streamId:k}=_;v.debug("receive() [trackId:%s, kind:%s]",E,P);const F=T.mid??String(this._mapMidTransceiver.size);h.set(E,F),this._remoteSdp.receive({mid:F,kind:P,offerRtpParameters:T,streamId:k??T.rtcp.cname,trackId:E})}const b={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",b),await this._pc.setRemoteDescription(b);for(const _ of f){const{trackId:E,onRtpReceiver:P}=_;if(P){const T=h.get(E),k=this._pc.getTransceivers().find(F=>F.mid===T);if(!k)throw new Error("transceiver not found");P(k.receiver)}}let A=await this._pc.createAnswer();const R=n.parse(A.sdp);for(const _ of f){const{trackId:E,rtpParameters:P}=_,T=h.get(E),k=R.media.find(F=>String(F.mid)===T);a.applyCodecParameters({offerRtpParameters:P,answerMediaObject:k})}A={type:"answer",sdp:n.write(R)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:R}),v.debug("receive() | calling pc.setLocalDescription() [answer:%o]",A),await this._pc.setLocalDescription(A);for(const _ of f){const{trackId:E}=_,P=h.get(E),T=this._pc.getTransceivers().find(k=>k.mid===P);if(!T)throw new Error("new RTCRtpTransceiver not found");this._mapMidTransceiver.set(P,T),u.push({localId:P,track:T.receiver.track,rtpReceiver:T.receiver})}return u}async stopReceiving(f){if(this.assertRecvDirection(),this._closed)return;for(const b of f){v.debug("stopReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(A.mid)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h);for(const b of f)this._mapMidTransceiver.delete(b)}async pauseReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("pauseReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="inactive",this._remoteSdp.pauseMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async resumeReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("resumeReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async getReceiverStats(f){this.assertNotClosed(),this.assertRecvDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:f,label:u,protocol:h}){this.assertNotClosed(),this.assertRecvDirection();const{streamId:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_}=f,E={negotiated:!0,id:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_,protocol:h};v.debug("receiveDataChannel() [options:%o]",E);const P=this._pc.createDataChannel(u,E);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const T={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",T),await this._pc.setRemoteDescription(T);const k=await this._pc.createAnswer();if(!this._transportReady){const F=n.parse(k.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:F})}v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",k),await this._pc.setLocalDescription(k),this._hasDataChannelMediaSection=!0}return{dataChannel:P}}async setupTransport({localDtlsRole:f,localSdpObject:u}){u||(u=n.parse(this._pc.localDescription.sdp));const h=a.extractDtlsParameters({sdpObject:u});h.role=f,this._remoteSdp.updateDtlsRole(f==="client"?"server":"client"),await new Promise((b,A)=>{this.safeEmit("@connect",{dtlsParameters:h},b,A)}),this._transportReady=!0}assertNotClosed(){if(this._closed)throw new d.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return un.Safari12=w,un}var fn={},Kv;function Lk(){if(Kv)return fn;Kv=1;var t=fn&&fn.__createBinding||(Object.create?function(S,C,w,y){y===void 0&&(y=w);var f=Object.getOwnPropertyDescriptor(C,w);(!f||("get"in f?!C.__esModule:f.writable||f.configurable))&&(f={enumerable:!0,get:function(){return C[w]}}),Object.defineProperty(S,y,f)}:function(S,C,w,y){y===void 0&&(y=w),S[y]=C[w]}),e=fn&&fn.__setModuleDefault||(Object.create?function(S,C){Object.defineProperty(S,"default",{enumerable:!0,value:C})}:function(S,C){S.default=C}),r=fn&&fn.__importStar||function(){var S=function(C){return S=Object.getOwnPropertyNames||function(w){var y=[];for(var f in w)Object.prototype.hasOwnProperty.call(w,f)&&(y[y.length]=f);return y},S(C)};return function(C){if(C&&C.__esModule)return C;var w={};if(C!=null)for(var y=S(C),f=0;f<y.length;f++)y[f]!=="default"&&t(w,C,y[f]);return e(w,C),w}}();Object.defineProperty(fn,"__esModule",{value:!0}),fn.Safari11=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(fd()),l=yr(),d=Vr(),p=new i.Logger("Safari11"),m="Safari11",g={OS:1024,MIS:1024};let v=class iC extends l.HandlerInterface{static createFactory(){return()=>new iC}constructor(){super(),this._sendStream=new MediaStream,this._mapSendLocalIdRtpSender=new Map,this._nextSendLocalId=0,this._mapRecvLocalIdInfo=new Map,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return m}close(){if(p.debug("close()"),this._pc)try{this._pc.close()}catch{}this.emit("@close")}async getNativeRtpCapabilities(){p.debug("getNativeRtpCapabilities()");const C=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b"});try{const w=await C.createOffer({offerToReceiveAudio:!0,offerToReceiveVideo:!0});try{C.close()}catch{}const y=n.parse(w.sdp);return a.extractRtpCapabilities({sdpObject:y})}catch(w){try{C.close()}catch{}throw w}}async getNativeSctpCapabilities(){return p.debug("getNativeSctpCapabilities()"),{numStreams:g}}run({direction:C,iceParameters:w,iceCandidates:y,dtlsParameters:f,sctpParameters:u,iceServers:h,iceTransportPolicy:b,additionalSettings:A,proprietaryConstraints:R,extendedRtpCapabilities:_}){p.debug("run()"),this._direction=C,this._remoteSdp=new d.RemoteSdp({iceParameters:w,iceCandidates:y,dtlsParameters:f,sctpParameters:u,planB:!0}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",_),video:o.getSendingRtpParameters("video",_)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",_),video:o.getSendingRemoteRtpParameters("video",_)},f.role&&f.role!=="auto"&&(this._forcedLocalDtlsRole=f.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:h??[],iceTransportPolicy:b??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",...A},R),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(p.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(C){p.debug("updateIceServers()");const w=this._pc.getConfiguration();w.iceServers=C,this._pc.setConfiguration(w)}async restartIce(C){if(p.debug("restartIce()"),this._remoteSdp.updateIceParameters(C),!!this._transportReady)if(this._direction==="send"){const w=await this._pc.createOffer({iceRestart:!0});p.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",w),await this._pc.setLocalDescription(w);const y={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",y),await this._pc.setRemoteDescription(y)}else{const w={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",w),await this._pc.setRemoteDescription(w);const y=await this._pc.createAnswer();p.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",y),await this._pc.setLocalDescription(y)}}async getTransportStats(){return this._pc.getStats()}async send({track:C,encodings:w,codecOptions:y,codec:f}){this.assertSendDirection(),p.debug("send() [kind:%s, track.id:%s]",C.kind,C.id),f&&p.warn("send() | codec selection is not available in %s handler",this.name),this._sendStream.addTrack(C),this._pc.addTrack(C,this._sendStream);let u=await this._pc.createOffer(),h=n.parse(u.sdp),b;const A=s.clone(this._sendingRtpParametersByKind[C.kind]);A.codecs=o.reduceCodecs(A.codecs);const R=s.clone(this._sendingRemoteRtpParametersByKind[C.kind]);if(R.codecs=o.reduceCodecs(R.codecs),this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:h}),C.kind==="video"&&w&&w.length>1&&(p.debug("send() | enabling simulcast"),h=n.parse(u.sdp),b=h.media.find(T=>T.type==="video"),c.addLegacySimulcast({offerMediaObject:b,track:C,numStreams:w.length}),u={type:"offer",sdp:n.write(h)}),p.debug("send() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u),h=n.parse(this._pc.localDescription.sdp),b=h.media.find(T=>T.type===C.kind),A.rtcp.cname=a.getCname({offerMediaObject:b}),A.encodings=c.getRtpEncodings({offerMediaObject:b,track:C}),w)for(let T=0;T<A.encodings.length;++T)w[T]&&Object.assign(A.encodings[T],w[T]);if(A.encodings.length>1&&A.codecs[0].mimeType.toLowerCase()==="video/vp8")for(const T of A.encodings)T.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:b,offerRtpParameters:A,answerRtpParameters:R,codecOptions:y});const _={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("send() | calling pc.setRemoteDescription() [answer:%o]",_),await this._pc.setRemoteDescription(_);const E=String(this._nextSendLocalId);this._nextSendLocalId++;const P=this._pc.getSenders().find(T=>T.track===C);return this._mapSendLocalIdRtpSender.set(E,P),{localId:E,rtpParameters:A,rtpSender:P}}async stopSending(C){this.assertSendDirection();const w=this._mapSendLocalIdRtpSender.get(C);if(!w)throw new Error("associated RTCRtpSender not found");w.track&&this._sendStream.removeTrack(w.track),this._mapSendLocalIdRtpSender.delete(C);const y=await this._pc.createOffer();p.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",y);try{await this._pc.setLocalDescription(y)}catch(u){if(this._sendStream.getTracks().length===0){p.warn("stopSending() | ignoring expected error due no sending tracks: %s",u.toString());return}throw u}if(this._pc.signalingState==="stable")return;const f={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",f),await this._pc.setRemoteDescription(f)}async pauseSending(C){}async resumeSending(C){}async replaceTrack(C,w){this.assertSendDirection(),w?p.debug("replaceTrack() [localId:%s, track.id:%s]",C,w.id):p.debug("replaceTrack() [localId:%s, no track]",C);const y=this._mapSendLocalIdRtpSender.get(C);if(!y)throw new Error("associated RTCRtpSender not found");const f=y.track;await y.replaceTrack(w),f&&this._sendStream.removeTrack(f),w&&this._sendStream.addTrack(w)}async setMaxSpatialLayer(C,w){this.assertSendDirection(),p.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",C,w);const y=this._mapSendLocalIdRtpSender.get(C);if(!y)throw new Error("associated RTCRtpSender not found");const f=y.getParameters();f.encodings.forEach((u,h)=>{h<=w?u.active=!0:u.active=!1}),await y.setParameters(f)}async setRtpEncodingParameters(C,w){this.assertSendDirection(),p.debug("setRtpEncodingParameters() [localId:%s, params:%o]",C,w);const y=this._mapSendLocalIdRtpSender.get(C);if(!y)throw new Error("associated RTCRtpSender not found");const f=y.getParameters();f.encodings.forEach((u,h)=>{f.encodings[h]={...u,...w}}),await y.setParameters(f)}async getSenderStats(C){this.assertSendDirection();const w=this._mapSendLocalIdRtpSender.get(C);if(!w)throw new Error("associated RTCRtpSender not found");return w.getStats()}async sendDataChannel({ordered:C,maxPacketLifeTime:w,maxRetransmits:y,label:f,protocol:u}){this.assertSendDirection();const h={negotiated:!0,id:this._nextSendSctpStreamId,ordered:C,maxPacketLifeTime:w,maxRetransmits:y,protocol:u};p.debug("sendDataChannel() [options:%o]",h);const b=this._pc.createDataChannel(f,h);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%g.MIS,!this._hasDataChannelMediaSection){const R=await this._pc.createOffer(),_=n.parse(R.sdp),E=_.media.find(T=>T.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:_}),p.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",R),await this._pc.setLocalDescription(R),this._remoteSdp.sendSctpAssociation({offerMediaObject:E});const P={type:"answer",sdp:this._remoteSdp.getSdp()};p.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",P),await this._pc.setRemoteDescription(P),this._hasDataChannelMediaSection=!0}const A={streamId:h.id,ordered:h.ordered,maxPacketLifeTime:h.maxPacketLifeTime,maxRetransmits:h.maxRetransmits};return{dataChannel:b,sctpStreamParameters:A}}async receive(C){this.assertRecvDirection();const w=[];for(const h of C){const{trackId:b,kind:A,rtpParameters:R,streamId:_}=h;p.debug("receive() [trackId:%s, kind:%s]",b,A);const E=A;this._remoteSdp.receive({mid:E,kind:A,offerRtpParameters:R,streamId:_??R.rtcp.cname,trackId:b})}const y={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);let f=await this._pc.createAnswer();const u=n.parse(f.sdp);for(const h of C){const{kind:b,rtpParameters:A}=h,R=b,_=u.media.find(E=>String(E.mid)===R);a.applyCodecParameters({offerRtpParameters:A,answerMediaObject:_})}f={type:"answer",sdp:n.write(u)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:u}),p.debug("receive() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f);for(const h of C){const{kind:b,trackId:A,rtpParameters:R}=h,_=b,E=A,P=this._pc.getReceivers().find(T=>T.track&&T.track.id===E);if(!P)throw new Error("new RTCRtpReceiver not");this._mapRecvLocalIdInfo.set(E,{mid:_,rtpParameters:R,rtpReceiver:P}),w.push({localId:E,track:P.track,rtpReceiver:P})}return w}async stopReceiving(C){this.assertRecvDirection();for(const f of C){p.debug("stopReceiving() [localId:%s]",f);const{mid:u,rtpParameters:h}=this._mapRecvLocalIdInfo.get(f)??{};this._mapRecvLocalIdInfo.delete(f),this._remoteSdp.planBStopReceiving({mid:u,offerRtpParameters:h})}const w={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",w),await this._pc.setRemoteDescription(w);const y=await this._pc.createAnswer();p.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",y),await this._pc.setLocalDescription(y)}async getReceiverStats(C){this.assertRecvDirection();const{rtpReceiver:w}=this._mapRecvLocalIdInfo.get(C)??{};if(!w)throw new Error("associated RTCRtpReceiver not found");return w.getStats()}async pauseReceiving(C){}async resumeReceiving(C){}async receiveDataChannel({sctpStreamParameters:C,label:w,protocol:y}){this.assertRecvDirection();const{streamId:f,ordered:u,maxPacketLifeTime:h,maxRetransmits:b}=C,A={negotiated:!0,id:f,ordered:u,maxPacketLifeTime:h,maxRetransmits:b,protocol:y};p.debug("receiveDataChannel() [options:%o]",A);const R=this._pc.createDataChannel(w,A);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation({oldDataChannelSpec:!0});const _={type:"offer",sdp:this._remoteSdp.getSdp()};p.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",_),await this._pc.setRemoteDescription(_);const E=await this._pc.createAnswer();if(!this._transportReady){const P=n.parse(E.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:P})}p.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",E),await this._pc.setLocalDescription(E),this._hasDataChannelMediaSection=!0}return{dataChannel:R}}async setupTransport({localDtlsRole:C,localSdpObject:w}){w||(w=n.parse(this._pc.localDescription.sdp));const y=a.extractDtlsParameters({sdpObject:w});y.role=C,this._remoteSdp.updateDtlsRole(C==="client"?"server":"client"),await new Promise((f,u)=>{this.safeEmit("@connect",{dtlsParameters:y},f,u)}),this._transportReady=!0}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return fn.Safari11=v,fn}var pn={},hn={},Qv;function jk(){if(Qv)return hn;Qv=1;var t=hn&&hn.__createBinding||(Object.create?function(o,a,c,l){l===void 0&&(l=c);var d=Object.getOwnPropertyDescriptor(a,c);(!d||("get"in d?!a.__esModule:d.writable||d.configurable))&&(d={enumerable:!0,get:function(){return a[c]}}),Object.defineProperty(o,l,d)}:function(o,a,c,l){l===void 0&&(l=c),o[l]=a[c]}),e=hn&&hn.__setModuleDefault||(Object.create?function(o,a){Object.defineProperty(o,"default",{enumerable:!0,value:a})}:function(o,a){o.default=a}),r=hn&&hn.__importStar||function(){var o=function(a){return o=Object.getOwnPropertyNames||function(c){var l=[];for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&(l[l.length]=d);return l},o(a)};return function(a){if(a&&a.__esModule)return a;var c={};if(a!=null)for(var l=o(a),d=0;d<l.length;d++)l[d]!=="default"&&t(c,a,l[d]);return e(c,a),c}}();Object.defineProperty(hn,"__esModule",{value:!0}),hn.getCapabilities=i,hn.mangleRtpParameters=s;const n=r(Xt());function i(){const o=RTCRtpReceiver.getCapabilities(),a=n.clone(o);for(const c of a.codecs??[]){if(c.channels=c.numChannels,delete c.numChannels,c.mimeType=c.mimeType??`${c.kind}/${c.name}`,c.parameters){const l=c.parameters;l.apt&&(l.apt=Number(l.apt)),l["packetization-mode"]&&(l["packetization-mode"]=Number(l["packetization-mode"]))}for(const l of c.rtcpFeedback??[])l.parameter||(l.parameter="")}return a}function s(o){const a=n.clone(o);a.mid&&(a.muxId=a.mid,delete a.mid);for(const c of a.codecs)c.channels&&(c.numChannels=c.channels,delete c.channels),c.mimeType&&!c.name&&(c.name=c.mimeType.split("/")[1]),delete c.mimeType;return a}return hn}var $v;function Bk(){if($v)return pn;$v=1;var t=pn&&pn.__createBinding||(Object.create?function(m,g,v,S){S===void 0&&(S=v);var C=Object.getOwnPropertyDescriptor(g,v);(!C||("get"in C?!g.__esModule:C.writable||C.configurable))&&(C={enumerable:!0,get:function(){return g[v]}}),Object.defineProperty(m,S,C)}:function(m,g,v,S){S===void 0&&(S=v),m[S]=g[v]}),e=pn&&pn.__setModuleDefault||(Object.create?function(m,g){Object.defineProperty(m,"default",{enumerable:!0,value:g})}:function(m,g){m.default=g}),r=pn&&pn.__importStar||function(){var m=function(g){return m=Object.getOwnPropertyNames||function(v){var S=[];for(var C in v)Object.prototype.hasOwnProperty.call(v,C)&&(S[S.length]=C);return S},m(g)};return function(g){if(g&&g.__esModule)return g;var v={};if(g!=null)for(var S=m(g),C=0;C<S.length;C++)S[C]!=="default"&&t(v,g,S[C]);return e(v,g),v}}();Object.defineProperty(pn,"__esModule",{value:!0}),pn.Edge11=void 0;const n=St(),i=er(),s=r(Xt()),o=r(lr()),a=r(jk()),c=yr(),l=new n.Logger("Edge11"),d="Edge11";let p=class sC extends c.HandlerInterface{static createFactory(){return()=>new sC}constructor(){super(),this._rtpSenders=new Map,this._rtpReceivers=new Map,this._nextSendLocalId=0,this._transportReady=!1}get name(){return d}close(){l.debug("close()");try{this._iceGatherer.close()}catch{}try{this._iceTransport.stop()}catch{}try{this._dtlsTransport.stop()}catch{}for(const g of this._rtpSenders.values())try{g.stop()}catch{}for(const g of this._rtpReceivers.values())try{g.stop()}catch{}this.emit("@close")}async getNativeRtpCapabilities(){return l.debug("getNativeRtpCapabilities()"),a.getCapabilities()}async getNativeSctpCapabilities(){return l.debug("getNativeSctpCapabilities()"),{numStreams:{OS:0,MIS:0}}}run({direction:g,iceParameters:v,iceCandidates:S,dtlsParameters:C,sctpParameters:w,iceServers:y,iceTransportPolicy:f,additionalSettings:u,proprietaryConstraints:h,extendedRtpCapabilities:b}){l.debug("run()"),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",b),video:o.getSendingRtpParameters("video",b)},this._remoteIceParameters=v,this._remoteIceCandidates=S,this._remoteDtlsParameters=C,this._cname=`CNAME-${s.generateRandomNumber()}`,this.setIceGatherer({iceServers:y,iceTransportPolicy:f}),this.setIceTransport(),this.setDtlsTransport()}async updateIceServers(g){throw new i.UnsupportedError("not supported")}async restartIce(g){if(l.debug("restartIce()"),this._remoteIceParameters=g,!!this._transportReady){l.debug("restartIce() | calling iceTransport.start()"),this._iceTransport.start(this._iceGatherer,g,"controlling");for(const v of this._remoteIceCandidates)this._iceTransport.addRemoteCandidate(v);this._iceTransport.addRemoteCandidate({})}}async getTransportStats(){return this._iceTransport.getStats()}async send({track:g,encodings:v,codecOptions:S,codec:C}){l.debug("send() [kind:%s, track.id:%s]",g.kind,g.id),this._transportReady||await this.setupTransport({localDtlsRole:"server"}),l.debug("send() | calling new RTCRtpSender()");const w=new RTCRtpSender(g,this._dtlsTransport),y=s.clone(this._sendingRtpParametersByKind[g.kind]);y.codecs=o.reduceCodecs(y.codecs,C);const f=y.codecs.some(b=>/.+\/rtx$/i.test(b.mimeType));v||(v=[{}]);for(const b of v)b.ssrc=s.generateRandomNumber(),f&&(b.rtx={ssrc:s.generateRandomNumber()});y.encodings=v,y.rtcp={cname:this._cname,reducedSize:!0,mux:!0};const u=a.mangleRtpParameters(y);l.debug("send() | calling rtpSender.send() [params:%o]",u),await w.send(u);const h=String(this._nextSendLocalId);return this._nextSendLocalId++,this._rtpSenders.set(h,w),{localId:h,rtpParameters:y,rtpSender:w}}async stopSending(g){l.debug("stopSending() [localId:%s]",g);const v=this._rtpSenders.get(g);if(!v)throw new Error("RTCRtpSender not found");this._rtpSenders.delete(g);try{l.debug("stopSending() | calling rtpSender.stop()"),v.stop()}catch(S){throw l.warn("stopSending() | rtpSender.stop() failed:%o",S),S}}async pauseSending(g){}async resumeSending(g){}async replaceTrack(g,v){v?l.debug("replaceTrack() [localId:%s, track.id:%s]",g,v.id):l.debug("replaceTrack() [localId:%s, no track]",g);const S=this._rtpSenders.get(g);if(!S)throw new Error("RTCRtpSender not found");S.setTrack(v)}async setMaxSpatialLayer(g,v){l.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",g,v);const S=this._rtpSenders.get(g);if(!S)throw new Error("RTCRtpSender not found");const C=S.getParameters();C.encodings.forEach((w,y)=>{y<=v?w.active=!0:w.active=!1}),await S.setParameters(C)}async setRtpEncodingParameters(g,v){l.debug("setRtpEncodingParameters() [localId:%s, params:%o]",g,v);const S=this._rtpSenders.get(g);if(!S)throw new Error("RTCRtpSender not found");const C=S.getParameters();C.encodings.forEach((w,y)=>{C.encodings[y]={...w,...v}}),await S.setParameters(C)}async getSenderStats(g){const v=this._rtpSenders.get(g);if(!v)throw new Error("RTCRtpSender not found");return v.getStats()}async sendDataChannel(g){throw new i.UnsupportedError("not implemented")}async receive(g){const v=[];for(const S of g){const{trackId:C,kind:w}=S;l.debug("receive() [trackId:%s, kind:%s]",C,w)}this._transportReady||await this.setupTransport({localDtlsRole:"server"});for(const S of g){const{trackId:C,kind:w,rtpParameters:y}=S;l.debug("receive() | calling new RTCRtpReceiver()");const f=new RTCRtpReceiver(this._dtlsTransport,w);f.addEventListener("error",b=>{l.error('rtpReceiver "error" event [event:%o]',b)});const u=a.mangleRtpParameters(y);l.debug("receive() | calling rtpReceiver.receive() [params:%o]",u),await f.receive(u);const h=C;this._rtpReceivers.set(h,f),v.push({localId:h,track:f.track,rtpReceiver:f})}return v}async stopReceiving(g){for(const v of g){l.debug("stopReceiving() [localId:%s]",v);const S=this._rtpReceivers.get(v);if(!S)throw new Error("RTCRtpReceiver not found");this._rtpReceivers.delete(v);try{l.debug("stopReceiving() | calling rtpReceiver.stop()"),S.stop()}catch(C){l.warn("stopReceiving() | rtpReceiver.stop() failed:%o",C)}}}async pauseReceiving(g){}async resumeReceiving(g){}async getReceiverStats(g){const v=this._rtpReceivers.get(g);if(!v)throw new Error("RTCRtpReceiver not found");return v.getStats()}async receiveDataChannel(g){throw new i.UnsupportedError("not implemented")}setIceGatherer({iceServers:g,iceTransportPolicy:v}){const S=new RTCIceGatherer({iceServers:g??[],gatherPolicy:v??"all"});S.addEventListener("error",C=>{l.error('iceGatherer "error" event [event:%o]',C)});try{S.gather()}catch(C){l.debug("setIceGatherer() | iceGatherer.gather() failed: %s",C.toString())}this._iceGatherer=S}setIceTransport(){const g=new RTCIceTransport(this._iceGatherer);g.addEventListener("statechange",()=>{switch(g.state){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}}),g.addEventListener("icestatechange",()=>{switch(g.state){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}}),g.addEventListener("candidatepairchange",v=>{l.debug('iceTransport "candidatepairchange" event [pair:%o]',v.pair)}),this._iceTransport=g}setDtlsTransport(){const g=new RTCDtlsTransport(this._iceTransport);g.addEventListener("statechange",()=>{l.debug('dtlsTransport "statechange" event [state:%s]',g.state)}),g.addEventListener("dtlsstatechange",()=>{l.debug('dtlsTransport "dtlsstatechange" event [state:%s]',g.state),g.state==="closed"&&this.emit("@connectionstatechange","closed")}),g.addEventListener("error",v=>{l.error('dtlsTransport "error" event [event:%o]',v)}),this._dtlsTransport=g}async setupTransport({localDtlsRole:g}){l.debug("setupTransport()");const v=this._dtlsTransport.getLocalParameters();v.role=g,await new Promise((S,C)=>{this.safeEmit("@connect",{dtlsParameters:v},S,C)}),this._iceTransport.start(this._iceGatherer,this._remoteIceParameters,"controlling");for(const S of this._remoteIceCandidates)this._iceTransport.addRemoteCandidate(S);this._iceTransport.addRemoteCandidate({}),this._remoteDtlsParameters.fingerprints=this._remoteDtlsParameters.fingerprints.filter(S=>S.algorithm==="sha-256"||S.algorithm==="sha-384"||S.algorithm==="sha-512"),this._dtlsTransport.start(this._remoteDtlsParameters),this._transportReady=!0}};return pn.Edge11=p,pn}var mn={},eb;function Fk(){if(eb)return mn;eb=1;var t=mn&&mn.__createBinding||(Object.create?function(y,f,u,h){h===void 0&&(h=u);var b=Object.getOwnPropertyDescriptor(f,u);(!b||("get"in b?!f.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:function(){return f[u]}}),Object.defineProperty(y,h,b)}:function(y,f,u,h){h===void 0&&(h=u),y[h]=f[u]}),e=mn&&mn.__setModuleDefault||(Object.create?function(y,f){Object.defineProperty(y,"default",{enumerable:!0,value:f})}:function(y,f){y.default=f}),r=mn&&mn.__importStar||function(){var y=function(f){return y=Object.getOwnPropertyNames||function(u){var h=[];for(var b in u)Object.prototype.hasOwnProperty.call(u,b)&&(h[h.length]=b);return h},y(f)};return function(f){if(f&&f.__esModule)return f;var u={};if(f!=null)for(var h=y(f),b=0;b<h.length;b++)h[b]!=="default"&&t(u,f,h[b]);return e(u,f),u}}();Object.defineProperty(mn,"__esModule",{value:!0}),mn.ReactNativeUnifiedPlan=void 0;const n=r(cr()),i=St(),s=r(Xt()),o=r(lr()),a=r(Hr()),c=r(ys()),l=r(wa()),d=er(),p=yr(),m=Vr(),g=di(),v=new i.Logger("ReactNativeUnifiedPlan"),S="ReactNativeUnifiedPlan",C={OS:1024,MIS:1024};let w=class oC extends p.HandlerInterface{static createFactory(){return()=>new oC}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return S}close(){if(v.debug("close()"),!this._closed){if(this._closed=!0,this._sendStream.release(!1),this._pc)try{this._pc.close()}catch{}this.emit("@close")}}async getNativeRtpCapabilities(){v.debug("getNativeRtpCapabilities()");const f=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan"});try{f.addTransceiver("audio"),f.addTransceiver("video");const u=await f.createOffer();try{f.close()}catch{}const h=n.parse(u.sdp),b=a.extractRtpCapabilities({sdpObject:h});return l.addNackSuppportForOpus(b),b}catch(u){try{f.close()}catch{}throw u}}async getNativeSctpCapabilities(){return v.debug("getNativeSctpCapabilities()"),{numStreams:C}}run({direction:f,iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A,iceServers:R,iceTransportPolicy:_,additionalSettings:E,proprietaryConstraints:P,extendedRtpCapabilities:T}){this.assertNotClosed(),v.debug("run()"),this._direction=f,this._remoteSdp=new m.RemoteSdp({iceParameters:u,iceCandidates:h,dtlsParameters:b,sctpParameters:A}),this._sendingRtpParametersByKind={audio:o.getSendingRtpParameters("audio",T),video:o.getSendingRtpParameters("video",T)},this._sendingRemoteRtpParametersByKind={audio:o.getSendingRemoteRtpParameters("audio",T),video:o.getSendingRemoteRtpParameters("video",T)},b.role&&b.role!=="auto"&&(this._forcedLocalDtlsRole=b.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:R??[],iceTransportPolicy:_??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"unified-plan",...E},P),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(v.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(f){this.assertNotClosed(),v.debug("updateIceServers()");const u=this._pc.getConfiguration();u.iceServers=f,this._pc.setConfiguration(u)}async restartIce(f){if(this.assertNotClosed(),v.debug("restartIce()"),this._remoteSdp.updateIceParameters(f),!!this._transportReady)if(this._direction==="send"){const u=await this._pc.createOffer({iceRestart:!0});v.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",u),await this._pc.setLocalDescription(u);const h={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",h),await this._pc.setRemoteDescription(h)}else{const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}}async getTransportStats(){return this.assertNotClosed(),this._pc.getStats()}async send({track:f,encodings:u,codecOptions:h,codec:b,onRtpSender:A}){this.assertNotClosed(),this.assertSendDirection(),v.debug("send() [kind:%s, track.id:%s]",f.kind,f.id),u&&u.length>1&&u.forEach((z,Z)=>{z.rid=`r${Z}`});const R=s.clone(this._sendingRtpParametersByKind[f.kind]);R.codecs=o.reduceCodecs(R.codecs,b);const _=s.clone(this._sendingRemoteRtpParametersByKind[f.kind]);_.codecs=o.reduceCodecs(_.codecs,b);const E=this._remoteSdp.getNextMediaSectionIdx(),P=this._pc.addTransceiver(f,{direction:"sendonly",streams:[this._sendStream],sendEncodings:u});A&&A(P.sender);let T=await this._pc.createOffer(),k=n.parse(T.sdp),F;this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:k});let X=!1;const O=(0,g.parse)((u??[{}])[0].scalabilityMode);u&&u.length===1&&O.spatialLayers>1&&R.codecs[0].mimeType.toLowerCase()==="video/vp9"&&(v.debug("send() | enabling legacy simulcast for VP9 SVC"),X=!0,k=n.parse(T.sdp),F=k.media[E.idx],c.addLegacySimulcast({offerMediaObject:F,numStreams:O.spatialLayers}),T={type:"offer",sdp:n.write(k)}),v.debug("send() | calling pc.setLocalDescription() [offer:%o]",T),await this._pc.setLocalDescription(T);let L=P.mid??void 0;if(L||v.warn("send() | missing transceiver.mid (bug in react-native-webrtc, using a workaround"),R.mid=L,k=n.parse(this._pc.localDescription.sdp),F=k.media[E.idx],R.rtcp.cname=a.getCname({offerMediaObject:F}),!u)R.encodings=c.getRtpEncodings({offerMediaObject:F});else if(u.length===1){let z=c.getRtpEncodings({offerMediaObject:F});Object.assign(z[0],u[0]),X&&(z=[z[0]]),R.encodings=z}else R.encodings=u;if(R.encodings.length>1&&(R.codecs[0].mimeType.toLowerCase()==="video/vp8"||R.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const z of R.encodings)z.scalabilityMode?z.scalabilityMode=`L1T${O.temporalLayers}`:z.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:F,reuseMid:E.reuseMid,offerRtpParameters:R,answerRtpParameters:_,codecOptions:h,extmapAllowMixed:!0});const B={type:"answer",sdp:this._remoteSdp.getSdp()};return v.debug("send() | calling pc.setRemoteDescription() [answer:%o]",B),await this._pc.setRemoteDescription(B),L||(L=P.mid,R.mid=L),this._mapMidTransceiver.set(L,P),{localId:L,rtpParameters:R,rtpSender:P.sender}}async stopSending(f){if(this.assertSendDirection(),this._closed)return;v.debug("stopSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");if(u.sender.replaceTrack(null),this._pc.removeTrack(u.sender),this._remoteSdp.closeMediaSection(u.mid))try{u.stop()}catch{}const b=await this._pc.createOffer();v.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",b),await this._pc.setLocalDescription(b);const A={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",A),await this._pc.setRemoteDescription(A),this._mapMidTransceiver.delete(f)}async pauseSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("pauseSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="inactive",this._remoteSdp.pauseMediaSection(f);const h=await this._pc.createOffer();v.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async resumeSending(f){this.assertNotClosed(),this.assertSendDirection(),v.debug("resumeSending() [localId:%s]",f);const u=this._mapMidTransceiver.get(f);if(this._remoteSdp.resumeSendingMediaSection(f),!u)throw new Error("associated RTCRtpTransceiver not found");u.direction="sendonly";const h=await this._pc.createOffer();v.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h);const b={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",b),await this._pc.setRemoteDescription(b)}async replaceTrack(f,u){this.assertNotClosed(),this.assertSendDirection(),u?v.debug("replaceTrack() [localId:%s, track.id:%s]",f,u.id):v.debug("replaceTrack() [localId:%s, no track]",f);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");await h.sender.replaceTrack(u)}async setMaxSpatialLayer(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{E<=u?_.active=!0:_.active=!1}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async setRtpEncodingParameters(f,u){this.assertNotClosed(),this.assertSendDirection(),v.debug("setRtpEncodingParameters() [localId:%s, params:%o]",f,u);const h=this._mapMidTransceiver.get(f);if(!h)throw new Error("associated RTCRtpTransceiver not found");const b=h.sender.getParameters();b.encodings.forEach((_,E)=>{b.encodings[E]={..._,...u}}),await h.sender.setParameters(b),this._remoteSdp.muxMediaSectionSimulcast(f,b.encodings);const A=await this._pc.createOffer();v.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",A),await this._pc.setLocalDescription(A);const R={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",R),await this._pc.setRemoteDescription(R)}async getSenderStats(f){this.assertNotClosed(),this.assertSendDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.sender.getStats()}async sendDataChannel({ordered:f,maxPacketLifeTime:u,maxRetransmits:h,label:b,protocol:A}){this.assertNotClosed(),this.assertSendDirection();const R={negotiated:!0,id:this._nextSendSctpStreamId,ordered:f,maxPacketLifeTime:u,maxRetransmits:h,protocol:A};v.debug("sendDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(b,R);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%C.MIS,!this._hasDataChannelMediaSection){const P=await this._pc.createOffer(),T=n.parse(P.sdp),k=T.media.find(X=>X.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T}),v.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",P),await this._pc.setLocalDescription(P),this._remoteSdp.sendSctpAssociation({offerMediaObject:k});const F={type:"answer",sdp:this._remoteSdp.getSdp()};v.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",F),await this._pc.setRemoteDescription(F),this._hasDataChannelMediaSection=!0}const E={streamId:R.id,ordered:R.ordered,maxPacketLifeTime:R.maxPacketLifeTime,maxRetransmits:R.maxRetransmits};return{dataChannel:_,sctpStreamParameters:E}}async receive(f){this.assertNotClosed(),this.assertRecvDirection();const u=[],h=new Map;for(const _ of f){const{trackId:E,kind:P,rtpParameters:T,streamId:k}=_;v.debug("receive() [trackId:%s, kind:%s]",E,P);const F=T.mid??String(this._mapMidTransceiver.size);h.set(E,F),this._remoteSdp.receive({mid:F,kind:P,offerRtpParameters:T,streamId:k??T.rtcp.cname,trackId:E})}const b={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",b),await this._pc.setRemoteDescription(b);for(const _ of f){const{trackId:E,onRtpReceiver:P}=_;if(P){const T=h.get(E),k=this._pc.getTransceivers().find(F=>F.mid===T);if(!k)throw new Error("transceiver not found");P(k.receiver)}}let A=await this._pc.createAnswer();const R=n.parse(A.sdp);for(const _ of f){const{trackId:E,rtpParameters:P}=_,T=h.get(E),k=R.media.find(F=>String(F.mid)===T);a.applyCodecParameters({offerRtpParameters:P,answerMediaObject:k})}A={type:"answer",sdp:n.write(R)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:R}),v.debug("receive() | calling pc.setLocalDescription() [answer:%o]",A),await this._pc.setLocalDescription(A);for(const _ of f){const{trackId:E}=_,P=h.get(E),T=this._pc.getTransceivers().find(k=>k.mid===P);if(T)this._mapMidTransceiver.set(P,T),u.push({localId:P,track:T.receiver.track,rtpReceiver:T.receiver});else throw new Error("new RTCRtpTransceiver not found")}return u}async stopReceiving(f){if(this.assertRecvDirection(),this._closed)return;for(const b of f){v.debug("stopReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(A.mid)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h);for(const b of f)this._mapMidTransceiver.delete(b)}async pauseReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("pauseReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="inactive",this._remoteSdp.pauseMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async resumeReceiving(f){this.assertNotClosed(),this.assertRecvDirection();for(const b of f){v.debug("resumeReceiving() [localId:%s]",b);const A=this._mapMidTransceiver.get(b);if(!A)throw new Error("associated RTCRtpTransceiver not found");A.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(b)}const u={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);const h=await this._pc.createAnswer();v.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h)}async getReceiverStats(f){this.assertNotClosed(),this.assertRecvDirection();const u=this._mapMidTransceiver.get(f);if(!u)throw new Error("associated RTCRtpTransceiver not found");return u.receiver.getStats()}async receiveDataChannel({sctpStreamParameters:f,label:u,protocol:h}){this.assertNotClosed(),this.assertRecvDirection();const{streamId:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_}=f,E={negotiated:!0,id:b,ordered:A,maxPacketLifeTime:R,maxRetransmits:_,protocol:h};v.debug("receiveDataChannel() [options:%o]",E);const P=this._pc.createDataChannel(u,E);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const T={type:"offer",sdp:this._remoteSdp.getSdp()};v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",T),await this._pc.setRemoteDescription(T);const k=await this._pc.createAnswer();if(!this._transportReady){const F=n.parse(k.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:F})}v.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",k),await this._pc.setLocalDescription(k),this._hasDataChannelMediaSection=!0}return{dataChannel:P}}async setupTransport({localDtlsRole:f,localSdpObject:u}){u||(u=n.parse(this._pc.localDescription.sdp));const h=a.extractDtlsParameters({sdpObject:u});h.role=f,this._remoteSdp.updateDtlsRole(f==="client"?"server":"client"),await new Promise((b,A)=>{this.safeEmit("@connect",{dtlsParameters:h},b,A)}),this._transportReady=!0}assertNotClosed(){if(this._closed)throw new d.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return mn.ReactNativeUnifiedPlan=w,mn}var gn={},tb;function zk(){if(tb)return gn;tb=1;var t=gn&&gn.__createBinding||(Object.create?function(C,w,y,f){f===void 0&&(f=y);var u=Object.getOwnPropertyDescriptor(w,y);(!u||("get"in u?!w.__esModule:u.writable||u.configurable))&&(u={enumerable:!0,get:function(){return w[y]}}),Object.defineProperty(C,f,u)}:function(C,w,y,f){f===void 0&&(f=y),C[f]=w[y]}),e=gn&&gn.__setModuleDefault||(Object.create?function(C,w){Object.defineProperty(C,"default",{enumerable:!0,value:w})}:function(C,w){C.default=w}),r=gn&&gn.__importStar||function(){var C=function(w){return C=Object.getOwnPropertyNames||function(y){var f=[];for(var u in y)Object.prototype.hasOwnProperty.call(y,u)&&(f[f.length]=u);return f},C(w)};return function(w){if(w&&w.__esModule)return w;var y={};if(w!=null)for(var f=C(w),u=0;u<f.length;u++)f[u]!=="default"&&t(y,w,f[u]);return e(y,w),y}}();Object.defineProperty(gn,"__esModule",{value:!0}),gn.ReactNative=void 0;const n=r(cr()),i=St(),s=er(),o=r(Xt()),a=r(lr()),c=r(Hr()),l=r(fd()),d=yr(),p=Vr(),m=new i.Logger("ReactNative"),g="ReactNative",v={OS:1024,MIS:1024};let S=class aC extends d.HandlerInterface{static createFactory(){return()=>new aC}constructor(){super(),this._sendStream=new MediaStream,this._mapSendLocalIdTrack=new Map,this._nextSendLocalId=0,this._mapRecvLocalIdInfo=new Map,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return g}close(){if(m.debug("close()"),this._sendStream.release(!1),this._pc)try{this._pc.close()}catch{}this.emit("@close")}async getNativeRtpCapabilities(){m.debug("getNativeRtpCapabilities()");const w=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b"});try{const y=await w.createOffer({offerToReceiveAudio:!0,offerToReceiveVideo:!0});try{w.close()}catch{}const f=n.parse(y.sdp);return c.extractRtpCapabilities({sdpObject:f})}catch(y){try{w.close()}catch{}throw y}}async getNativeSctpCapabilities(){return m.debug("getNativeSctpCapabilities()"),{numStreams:v}}run({direction:w,iceParameters:y,iceCandidates:f,dtlsParameters:u,sctpParameters:h,iceServers:b,iceTransportPolicy:A,additionalSettings:R,proprietaryConstraints:_,extendedRtpCapabilities:E}){m.debug("run()"),this._direction=w,this._remoteSdp=new p.RemoteSdp({iceParameters:y,iceCandidates:f,dtlsParameters:u,sctpParameters:h,planB:!0}),this._sendingRtpParametersByKind={audio:a.getSendingRtpParameters("audio",E),video:a.getSendingRtpParameters("video",E)},this._sendingRemoteRtpParametersByKind={audio:a.getSendingRemoteRtpParameters("audio",E),video:a.getSendingRemoteRtpParameters("video",E)},u.role&&u.role!=="auto"&&(this._forcedLocalDtlsRole=u.role==="server"?"client":"server"),this._pc=new RTCPeerConnection({iceServers:b??[],iceTransportPolicy:A??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",sdpSemantics:"plan-b",...R},_),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(m.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}async updateIceServers(w){m.debug("updateIceServers()");const y=this._pc.getConfiguration();y.iceServers=w,this._pc.setConfiguration(y)}async restartIce(w){if(m.debug("restartIce()"),this._remoteSdp.updateIceParameters(w),!!this._transportReady)if(this._direction==="send"){const y=await this._pc.createOffer({iceRestart:!0});m.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",y),await this._pc.setLocalDescription(y);const f={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",f),await this._pc.setRemoteDescription(f)}else{const y={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);const f=await this._pc.createAnswer();m.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f)}}async getTransportStats(){return this._pc.getStats()}async send({track:w,encodings:y,codecOptions:f,codec:u}){this.assertSendDirection(),m.debug("send() [kind:%s, track.id:%s]",w.kind,w.id),u&&m.warn("send() | codec selection is not available in %s handler",this.name),this._sendStream.addTrack(w),this._pc.addStream(this._sendStream);let h=await this._pc.createOffer(),b=n.parse(h.sdp),A;const R=o.clone(this._sendingRtpParametersByKind[w.kind]);R.codecs=a.reduceCodecs(R.codecs);const _=o.clone(this._sendingRemoteRtpParametersByKind[w.kind]);if(_.codecs=a.reduceCodecs(_.codecs),this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:b}),w.kind==="video"&&y&&y.length>1&&(m.debug("send() | enabling simulcast"),b=n.parse(h.sdp),A=b.media.find(T=>T.type==="video"),l.addLegacySimulcast({offerMediaObject:A,track:w,numStreams:y.length}),h={type:"offer",sdp:n.write(b)}),m.debug("send() | calling pc.setLocalDescription() [offer:%o]",h),await this._pc.setLocalDescription(h),b=n.parse(this._pc.localDescription.sdp),A=b.media.find(T=>T.type===w.kind),R.rtcp.cname=c.getCname({offerMediaObject:A}),R.encodings=l.getRtpEncodings({offerMediaObject:A,track:w}),y)for(let T=0;T<R.encodings.length;++T)y[T]&&Object.assign(R.encodings[T],y[T]);if(R.encodings.length>1&&(R.codecs[0].mimeType.toLowerCase()==="video/vp8"||R.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const T of R.encodings)T.scalabilityMode="L1T3";this._remoteSdp.send({offerMediaObject:A,offerRtpParameters:R,answerRtpParameters:_,codecOptions:f});const E={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("send() | calling pc.setRemoteDescription() [answer:%o]",E),await this._pc.setRemoteDescription(E);const P=String(this._nextSendLocalId);return this._nextSendLocalId++,this._mapSendLocalIdTrack.set(P,w),{localId:P,rtpParameters:R}}async stopSending(w){this.assertSendDirection(),m.debug("stopSending() [localId:%s]",w);const y=this._mapSendLocalIdTrack.get(w);if(!y)throw new Error("track not found");this._mapSendLocalIdTrack.delete(w),this._sendStream.removeTrack(y),this._pc.addStream(this._sendStream);const f=await this._pc.createOffer();m.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",f);try{await this._pc.setLocalDescription(f)}catch(h){if(this._sendStream.getTracks().length===0){m.warn("stopSending() | ignoring expected error due no sending tracks: %s",h.toString());return}throw h}if(this._pc.signalingState==="stable")return;const u={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",u),await this._pc.setRemoteDescription(u)}async pauseSending(w){}async resumeSending(w){}async replaceTrack(w,y){throw new s.UnsupportedError("not implemented")}async setMaxSpatialLayer(w,y){throw new s.UnsupportedError("not implemented")}async setRtpEncodingParameters(w,y){throw new s.UnsupportedError("not implemented")}async getSenderStats(w){throw new s.UnsupportedError("not implemented")}async sendDataChannel({ordered:w,maxPacketLifeTime:y,maxRetransmits:f,label:u,protocol:h}){this.assertSendDirection();const b={negotiated:!0,id:this._nextSendSctpStreamId,ordered:w,maxPacketLifeTime:y,maxRetransmitTime:y,maxRetransmits:f,protocol:h};m.debug("sendDataChannel() [options:%o]",b);const A=this._pc.createDataChannel(u,b);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%v.MIS,!this._hasDataChannelMediaSection){const _=await this._pc.createOffer(),E=n.parse(_.sdp),P=E.media.find(k=>k.type==="application");this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:E}),m.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",_),await this._pc.setLocalDescription(_),this._remoteSdp.sendSctpAssociation({offerMediaObject:P});const T={type:"answer",sdp:this._remoteSdp.getSdp()};m.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",T),await this._pc.setRemoteDescription(T),this._hasDataChannelMediaSection=!0}const R={streamId:b.id,ordered:b.ordered,maxPacketLifeTime:b.maxPacketLifeTime,maxRetransmits:b.maxRetransmits};return{dataChannel:A,sctpStreamParameters:R}}async receive(w){this.assertRecvDirection();const y=[],f=new Map;for(const A of w){const{trackId:R,kind:_,rtpParameters:E}=A;m.debug("receive() [trackId:%s, kind:%s]",R,_);const P=_;let T=A.streamId??E.rtcp.cname;m.debug("receive() | forcing a random remote streamId to avoid well known bug in react-native-webrtc"),T+=`-hack-${o.generateRandomNumber()}`,f.set(R,T),this._remoteSdp.receive({mid:P,kind:_,offerRtpParameters:E,streamId:T,trackId:R})}const u={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",u),await this._pc.setRemoteDescription(u);let h=await this._pc.createAnswer();const b=n.parse(h.sdp);for(const A of w){const{kind:R,rtpParameters:_}=A,E=R,P=b.media.find(T=>String(T.mid)===E);c.applyCodecParameters({offerRtpParameters:_,answerMediaObject:P})}h={type:"answer",sdp:n.write(b)},this._transportReady||await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:b}),m.debug("receive() | calling pc.setLocalDescription() [answer:%o]",h),await this._pc.setLocalDescription(h);for(const A of w){const{kind:R,trackId:_,rtpParameters:E}=A,P=_,T=R,k=f.get(_),X=this._pc.getRemoteStreams().find(O=>O.id===k).getTrackById(P);if(!X)throw new Error("remote track not found");this._mapRecvLocalIdInfo.set(P,{mid:T,rtpParameters:E}),y.push({localId:P,track:X})}return y}async stopReceiving(w){this.assertRecvDirection();for(const u of w){m.debug("stopReceiving() [localId:%s]",u);const{mid:h,rtpParameters:b}=this._mapRecvLocalIdInfo.get(u)??{};this._mapRecvLocalIdInfo.delete(u),this._remoteSdp.planBStopReceiving({mid:h,offerRtpParameters:b})}const y={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",y),await this._pc.setRemoteDescription(y);const f=await this._pc.createAnswer();m.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",f),await this._pc.setLocalDescription(f)}async pauseReceiving(w){}async resumeReceiving(w){}async getReceiverStats(w){throw new s.UnsupportedError("not implemented")}async receiveDataChannel({sctpStreamParameters:w,label:y,protocol:f}){this.assertRecvDirection();const{streamId:u,ordered:h,maxPacketLifeTime:b,maxRetransmits:A}=w,R={negotiated:!0,id:u,ordered:h,maxPacketLifeTime:b,maxRetransmitTime:b,maxRetransmits:A,protocol:f};m.debug("receiveDataChannel() [options:%o]",R);const _=this._pc.createDataChannel(y,R);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation({oldDataChannelSpec:!0});const E={type:"offer",sdp:this._remoteSdp.getSdp()};m.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",E),await this._pc.setRemoteDescription(E);const P=await this._pc.createAnswer();if(!this._transportReady){const T=n.parse(P.sdp);await this.setupTransport({localDtlsRole:this._forcedLocalDtlsRole??"client",localSdpObject:T})}m.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",P),await this._pc.setLocalDescription(P),this._hasDataChannelMediaSection=!0}return{dataChannel:_}}async setupTransport({localDtlsRole:w,localSdpObject:y}){y||(y=n.parse(this._pc.localDescription.sdp));const f=c.extractDtlsParameters({sdpObject:y});f.role=w,this._remoteSdp.updateDtlsRole(w==="client"?"server":"client"),await new Promise((u,h)=>{this.safeEmit("@connect",{dtlsParameters:f},u,h)}),this._transportReady=!0}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}};return gn.ReactNative=S,gn}var rb;function cC(){if(rb)return jr;rb=1;var t=jr&&jr.__createBinding||(Object.create?function(_,E,P,T){T===void 0&&(T=P);var k=Object.getOwnPropertyDescriptor(E,P);(!k||("get"in k?!E.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return E[P]}}),Object.defineProperty(_,T,k)}:function(_,E,P,T){T===void 0&&(T=P),_[T]=E[P]}),e=jr&&jr.__setModuleDefault||(Object.create?function(_,E){Object.defineProperty(_,"default",{enumerable:!0,value:E})}:function(_,E){_.default=E}),r=jr&&jr.__importStar||function(){var _=function(E){return _=Object.getOwnPropertyNames||function(P){var T=[];for(var k in P)Object.prototype.hasOwnProperty.call(P,k)&&(T[T.length]=k);return T},_(E)};return function(E){if(E&&E.__esModule)return E;var P={};if(E!=null)for(var T=_(E),k=0;k<T.length;k++)T[k]!=="default"&&t(P,E,T[k]);return e(P,E),P}}();Object.defineProperty(jr,"__esModule",{value:!0}),jr.Device=void 0,jr.detectDevice=A;const n=Sk(),i=St(),s=bs(),o=er(),a=r(Xt()),c=r(lr()),l=Zw(),d=Ik(),p=Ok(),m=xk(),g=Dk(),v=kk(),S=Mk(),C=Nk(),w=nC(),y=Lk(),f=Bk(),u=Fk(),h=zk(),b=new i.Logger("Device");function A(_){if(!_&&typeof navigator=="object"&&navigator.product==="ReactNative"){if(b.debug("detectDevice() | React-Native detected"),typeof RTCPeerConnection>"u"){b.warn("detectDevice() | unsupported react-native-webrtc without RTCPeerConnection, forgot to call registerGlobals()?");return}return typeof RTCRtpTransceiver<"u"?(b.debug("detectDevice() | ReactNative UnifiedPlan handler chosen"),"ReactNativeUnifiedPlan"):(b.debug("detectDevice() | ReactNative PlanB handler chosen"),"ReactNative")}else if(_||typeof navigator=="object"&&typeof navigator.userAgent=="string"){_??(_=navigator.userAgent);const E=new n.UAParser(_);b.debug("detectDevice() | browser detected [userAgent:%s, parsed:%o]",_,E.getResult());const P=E.getBrowser(),T=P.name?.toLowerCase(),k=parseInt(P.major??"0"),X=E.getEngine().name?.toLowerCase(),O=E.getOS(),L=O.name?.toLowerCase(),B=parseFloat(O.version??"0"),Z=E.getDevice().model?.toLowerCase(),V=L==="ios"||Z==="ipad",G=T&&["chrome","chromium","mobile chrome","chrome webview","chrome headless"].includes(T),te=T&&["firefox","mobile firefox","mobile focus"].includes(T),re=T&&["safari","mobile safari"].includes(T),ie=T&&["edge"].includes(T);if((G||ie)&&!V&&k>=111)return"Chrome111";if(G&&!V&&k>=74||ie&&!V&&k>=88)return"Chrome74";if(G&&!V&&k>=70)return"Chrome70";if(G&&!V&&k>=67)return"Chrome67";if(G&&!V&&k>=55)return"Chrome55";if(te&&!V&&k>=120)return"Firefox120";if(te&&!V&&k>=60)return"Firefox60";if(te&&V&&B>=14.3)return"Safari12";if(re&&k>=12&&typeof RTCRtpTransceiver<"u"&&RTCRtpTransceiver.prototype.hasOwnProperty("currentDirection"))return"Safari12";if(re&&k>=11)return"Safari11";if(ie&&!V&&k>=11&&k<=18)return"Edge11";if(X==="webkit"&&V&&typeof RTCRtpTransceiver<"u"&&RTCRtpTransceiver.prototype.hasOwnProperty("currentDirection"))return"Safari12";if(X==="blink"){const ce=_.match(/(?:(?:Chrome|Chromium))[ /](\w+)/i);if(ce){const se=Number(ce[1]);return se>=111?"Chrome111":se>=74?"Chrome74":se>=70?"Chrome70":se>=67?"Chrome67":"Chrome55"}else return"Chrome111"}else{b.warn("detectDevice() | browser not supported [name:%s, version:%s]",T,k);return}}else{b.warn("detectDevice() | unknown device");return}}let R=class{constructor({handlerName:E,handlerFactory:P}={}){if(this._loaded=!1,this._observer=new s.EnhancedEventEmitter,b.debug("constructor()"),E&&P)throw new TypeError("just one of handlerName or handlerInterface can be given");if(P)this._handlerFactory=P;else{if(E)b.debug("constructor() | handler given: %s",E);else if(E=A(),E)b.debug("constructor() | detected handler: %s",E);else throw new o.UnsupportedError("device not supported");switch(E){case"Chrome111":{this._handlerFactory=d.Chrome111.createFactory();break}case"Chrome74":{this._handlerFactory=p.Chrome74.createFactory();break}case"Chrome70":{this._handlerFactory=m.Chrome70.createFactory();break}case"Chrome67":{this._handlerFactory=g.Chrome67.createFactory();break}case"Chrome55":{this._handlerFactory=v.Chrome55.createFactory();break}case"Firefox120":{this._handlerFactory=S.Firefox120.createFactory();break}case"Firefox60":{this._handlerFactory=C.Firefox60.createFactory();break}case"Safari12":{this._handlerFactory=w.Safari12.createFactory();break}case"Safari11":{this._handlerFactory=y.Safari11.createFactory();break}case"Edge11":{this._handlerFactory=f.Edge11.createFactory();break}case"ReactNativeUnifiedPlan":{this._handlerFactory=u.ReactNativeUnifiedPlan.createFactory();break}case"ReactNative":{this._handlerFactory=h.ReactNative.createFactory();break}default:throw new TypeError(`unknown handlerName "${E}"`)}}const T=this._handlerFactory();this._handlerName=T.name,T.close(),this._extendedRtpCapabilities=void 0,this._recvRtpCapabilities=void 0,this._canProduceByKind={audio:!1,video:!1},this._sctpCapabilities=void 0}get handlerName(){return this._handlerName}get loaded(){return this._loaded}get rtpCapabilities(){if(!this._loaded)throw new o.InvalidStateError("not loaded");return this._recvRtpCapabilities}get sctpCapabilities(){if(!this._loaded)throw new o.InvalidStateError("not loaded");return this._sctpCapabilities}get observer(){return this._observer}async load({routerRtpCapabilities:E}){b.debug("load() [routerRtpCapabilities:%o]",E);let P;try{if(this._loaded)throw new o.InvalidStateError("already loaded");const T=a.clone(E);c.validateRtpCapabilities(T),P=this._handlerFactory();const k=await P.getNativeRtpCapabilities();b.debug("load() | got native RTP capabilities:%o",k);const F=a.clone(k);c.validateRtpCapabilities(F),this._extendedRtpCapabilities=c.getExtendedRtpCapabilities(F,T),b.debug("load() | got extended RTP capabilities:%o",this._extendedRtpCapabilities),this._canProduceByKind.audio=c.canSend("audio",this._extendedRtpCapabilities),this._canProduceByKind.video=c.canSend("video",this._extendedRtpCapabilities),this._recvRtpCapabilities=c.getRecvRtpCapabilities(this._extendedRtpCapabilities),c.validateRtpCapabilities(this._recvRtpCapabilities),b.debug("load() | got receiving RTP capabilities:%o",this._recvRtpCapabilities),this._sctpCapabilities=await P.getNativeSctpCapabilities(),b.debug("load() | got native SCTP capabilities:%o",this._sctpCapabilities),c.validateSctpCapabilities(this._sctpCapabilities),b.debug("load() succeeded"),this._loaded=!0,P.close()}catch(T){throw P&&P.close(),T}}canProduce(E){if(this._loaded){if(E!=="audio"&&E!=="video")throw new TypeError(`invalid kind "${E}"`)}else throw new o.InvalidStateError("not loaded");return this._canProduceByKind[E]}createSendTransport({id:E,iceParameters:P,iceCandidates:T,dtlsParameters:k,sctpParameters:F,iceServers:X,iceTransportPolicy:O,additionalSettings:L,proprietaryConstraints:B,appData:z}){return b.debug("createSendTransport()"),this.createTransport({direction:"send",id:E,iceParameters:P,iceCandidates:T,dtlsParameters:k,sctpParameters:F,iceServers:X,iceTransportPolicy:O,additionalSettings:L,proprietaryConstraints:B,appData:z})}createRecvTransport({id:E,iceParameters:P,iceCandidates:T,dtlsParameters:k,sctpParameters:F,iceServers:X,iceTransportPolicy:O,additionalSettings:L,proprietaryConstraints:B,appData:z}){return b.debug("createRecvTransport()"),this.createTransport({direction:"recv",id:E,iceParameters:P,iceCandidates:T,dtlsParameters:k,sctpParameters:F,iceServers:X,iceTransportPolicy:O,additionalSettings:L,proprietaryConstraints:B,appData:z})}createTransport({direction:E,id:P,iceParameters:T,iceCandidates:k,dtlsParameters:F,sctpParameters:X,iceServers:O,iceTransportPolicy:L,additionalSettings:B,proprietaryConstraints:z,appData:Z}){if(this._loaded){if(typeof P!="string")throw new TypeError("missing id");if(typeof T!="object")throw new TypeError("missing iceParameters");if(Array.isArray(k)){if(typeof F!="object")throw new TypeError("missing dtlsParameters");if(X&&typeof X!="object")throw new TypeError("wrong sctpParameters");if(Z&&typeof Z!="object")throw new TypeError("if given, appData must be an object")}else throw new TypeError("missing iceCandidates")}else throw new o.InvalidStateError("not loaded");const V=new l.Transport({direction:E,id:P,iceParameters:T,iceCandidates:k,dtlsParameters:F,sctpParameters:X,iceServers:O,iceTransportPolicy:L,additionalSettings:B,proprietaryConstraints:z,appData:Z,handlerFactory:this._handlerFactory,extendedRtpCapabilities:this._extendedRtpCapabilities,canProduceByKind:this._canProduceByKind});return this._observer.safeEmit("newtransport",V),V}};return jr.Device=R,jr}var Gi={},Du={},nb;function Hk(){return nb||(nb=1,Object.defineProperty(Du,"__esModule",{value:!0})),Du}var ku={},ib;function Vk(){return ib||(ib=1,Object.defineProperty(ku,"__esModule",{value:!0})),ku}var sb;function Gk(){return sb||(sb=1,function(t){var e=Gi&&Gi.__createBinding||(Object.create?function(n,i,s,o){o===void 0&&(o=s);var a=Object.getOwnPropertyDescriptor(i,s);(!a||("get"in a?!i.__esModule:a.writable||a.configurable))&&(a={enumerable:!0,get:function(){return i[s]}}),Object.defineProperty(n,o,a)}:function(n,i,s,o){o===void 0&&(o=s),n[o]=i[s]}),r=Gi&&Gi.__exportStar||function(n,i){for(var s in n)s!=="default"&&!Object.prototype.hasOwnProperty.call(i,s)&&e(i,n,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(cC(),t),r(Zw(),t),r(Xw(),t),r(Uw(),t),r(Ww(),t),r(Yw(),t),r(Hk(),t),r(Vk(),t),r(yr(),t),r(er(),t)}(Gi)),Gi}var ob;function Xk(){return ob||(ob=1,function(t){var e=tn&&tn.__createBinding||(Object.create?function(l,d,p,m){m===void 0&&(m=p);var g=Object.getOwnPropertyDescriptor(d,p);(!g||("get"in g?!d.__esModule:g.writable||g.configurable))&&(g={enumerable:!0,get:function(){return d[p]}}),Object.defineProperty(l,m,g)}:function(l,d,p,m){m===void 0&&(m=p),l[m]=d[p]}),r=tn&&tn.__setModuleDefault||(Object.create?function(l,d){Object.defineProperty(l,"default",{enumerable:!0,value:d})}:function(l,d){l.default=d}),n=tn&&tn.__importStar||function(){var l=function(d){return l=Object.getOwnPropertyNames||function(p){var m=[];for(var g in p)Object.prototype.hasOwnProperty.call(p,g)&&(m[m.length]=g);return m},l(d)};return function(d){if(d&&d.__esModule)return d;var p={};if(d!=null)for(var m=l(d),g=0;g<m.length;g++)m[g]!=="default"&&e(p,d,m[g]);return r(p,d),p}}(),i=tn&&tn.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(t,"__esModule",{value:!0}),t.debug=t.parseScalabilityMode=t.detectDevice=t.Device=t.version=t.types=void 0;const s=i(ud());t.debug=s.default;const o=cC();Object.defineProperty(t,"Device",{enumerable:!0,get:function(){return o.Device}}),Object.defineProperty(t,"detectDevice",{enumerable:!0,get:function(){return o.detectDevice}});const a=n(Gk());t.types=a,t.version="3.7.18";var c=di();Object.defineProperty(t,"parseScalabilityMode",{enumerable:!0,get:function(){return c.parse}})}(tn)),tn}var cc=Xk(),qo={exports:{}},Uk=qo.exports,ab;function Wk(){return ab||(ab=1,function(t,e){(function(r,n){var i="1.0.40",s="",o="?",a="function",c="undefined",l="object",d="string",p="major",m="model",g="name",v="type",S="vendor",C="version",w="architecture",y="console",f="mobile",u="tablet",h="smarttv",b="wearable",A="embedded",R=500,_="Amazon",E="Apple",P="ASUS",T="BlackBerry",k="Browser",F="Chrome",X="Edge",O="Firefox",L="Google",B="Huawei",z="LG",Z="Microsoft",V="Motorola",G="Opera",te="Samsung",re="Sharp",ie="Sony",ce="Xiaomi",se="Zebra",ae="Facebook",le="Chromium OS",ye="Mac OS",me=" Browser",ke=function(Ie,Me){var be={};for(var Ve in Ie)Me[Ve]&&Me[Ve].length%2===0?be[Ve]=Me[Ve].concat(Ie[Ve]):be[Ve]=Ie[Ve];return be},U=function(Ie){for(var Me={},be=0;be<Ie.length;be++)Me[Ie[be].toUpperCase()]=Ie[be];return Me},We=function(Ie,Me){return typeof Ie===d?Ye(Me).indexOf(Ye(Ie))!==-1:!1},Ye=function(Ie){return Ie.toLowerCase()},Ot=function(Ie){return typeof Ie===d?Ie.replace(/[^\d\.]/g,s).split(".")[0]:n},qt=function(Ie,Me){if(typeof Ie===d)return Ie=Ie.replace(/^\s\s*/,s),typeof Me===c?Ie:Ie.substring(0,R)},Ct=function(Ie,Me){for(var be=0,Ve,At,Dt,Be,Se,kt;be<Me.length&&!Se;){var Jt=Me[be],Nr=Me[be+1];for(Ve=At=0;Ve<Jt.length&&!Se&&Jt[Ve];)if(Se=Jt[Ve++].exec(Ie),Se)for(Dt=0;Dt<Nr.length;Dt++)kt=Se[++At],Be=Nr[Dt],typeof Be===l&&Be.length>0?Be.length===2?typeof Be[1]==a?this[Be[0]]=Be[1].call(this,kt):this[Be[0]]=Be[1]:Be.length===3?typeof Be[1]===a&&!(Be[1].exec&&Be[1].test)?this[Be[0]]=kt?Be[1].call(this,kt,Be[2]):n:this[Be[0]]=kt?kt.replace(Be[1],Be[2]):n:Be.length===4&&(this[Be[0]]=kt?Be[3].call(this,kt.replace(Be[1],Be[2])):n):this[Be]=kt||n;be+=2}},rr=function(Ie,Me){for(var be in Me)if(typeof Me[be]===l&&Me[be].length>0){for(var Ve=0;Ve<Me[be].length;Ve++)if(We(Me[be][Ve],Ie))return be===o?n:be}else if(We(Me[be],Ie))return be===o?n:be;return Me.hasOwnProperty("*")?Me["*"]:Ie},dr={"1.0":"/8","1.2":"/1","1.3":"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},Ur={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2","8.1":"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},xt={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[C,[g,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[C,[g,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[g,C],[/opios[\/ ]+([\w\.]+)/i],[C,[g,G+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[C,[g,G+" GX"]],[/\bopr\/([\w\.]+)/i],[C,[g,G]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[C,[g,"Baidu"]],[/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],[C,[g,"Maxthon"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i,/(heytap|ovi|115)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[g,C],[/quark(?:pc)?\/([-\w\.]+)/i],[C,[g,"Quark"]],[/\bddg\/([\w\.]+)/i],[C,[g,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[C,[g,"UC"+k]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[C,[g,"WeChat"]],[/konqueror\/([\w\.]+)/i],[C,[g,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[C,[g,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[C,[g,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[C,[g,"Smart Lenovo "+k]],[/(avast|avg)\/([\w\.]+)/i],[[g,/(.+)/,"$1 Secure "+k],C],[/\bfocus\/([\w\.]+)/i],[C,[g,O+" Focus"]],[/\bopt\/([\w\.]+)/i],[C,[g,G+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[C,[g,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[C,[g,"Dolphin"]],[/coast\/([\w\.]+)/i],[C,[g,G+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[C,[g,"MIUI"+me]],[/fxios\/([\w\.-]+)/i],[C,[g,O]],[/\bqihoobrowser\/?([\w\.]*)/i],[C,[g,"360"]],[/\b(qq)\/([\w\.]+)/i],[[g,/(.+)/,"$1Browser"],C],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[g,/(.+)/,"$1"+me],C],[/samsungbrowser\/([\w\.]+)/i],[C,[g,te+" Internet"]],[/metasr[\/ ]?([\d\.]+)/i],[C,[g,"Sogou Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[g,"Sogou Mobile"],C],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i],[g,C],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[g],[/ome\/([\w\.]+) \w* ?(iron) saf/i,/ome\/([\w\.]+).+qihu (360)[es]e/i],[C,g],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[g,ae],C],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[g,C],[/\bgsa\/([\w\.]+) .*safari\//i],[C,[g,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[C,[g,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[C,[g,F+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[g,F+" WebView"],C],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[C,[g,"Android "+k]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[g,C],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[C,[g,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[C,g],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[g,[C,rr,dr]],[/(webkit|khtml)\/([\w\.]+)/i],[g,C],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[g,"Netscape"],C],[/(wolvic|librewolf)\/([\w\.]+)/i],[g,C],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[C,[g,O+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[g,[C,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[g,[C,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[w,"amd64"]],[/(ia32(?=;))/i],[[w,Ye]],[/((?:i[346]|x)86)[;\)]/i],[[w,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[w,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[w,"armhf"]],[/windows (ce|mobile); ppc;/i],[[w,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[w,/ower/,s,Ye]],[/(sun4\w)[;\)]/i],[[w,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[w,Ye]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[m,[S,te],[v,u]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[m,[S,te],[v,f]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[m,[S,E],[v,f]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[m,[S,E],[v,u]],[/(macintosh);/i],[m,[S,E]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[m,[S,re],[v,f]],[/(?:honor)([-\w ]+)[;\)]/i],[m,[S,"Honor"],[v,f]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[m,[S,B],[v,u]],[/(?:huawei)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[m,[S,B],[v,f]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i],[[m,/_/g," "],[S,ce],[v,f]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[m,/_/g," "],[S,ce],[v,u]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[m,[S,"OPPO"],[v,f]],[/\b(opd2\d{3}a?) bui/i],[m,[S,"OPPO"],[v,u]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[m,[S,"Vivo"],[v,f]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[m,[S,"Realme"],[v,f]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[m,[S,V],[v,f]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[m,[S,V],[v,u]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[m,[S,z],[v,u]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[m,[S,z],[v,f]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[m,[S,"Lenovo"],[v,u]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[m,/_/g," "],[S,"Nokia"],[v,f]],[/(pixel c)\b/i],[m,[S,L],[v,u]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[m,[S,L],[v,f]],[/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[m,[S,ie],[v,f]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[m,"Xperia Tablet"],[S,ie],[v,u]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[m,[S,"OnePlus"],[v,f]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[m,[S,_],[v,u]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[m,/(.+)/g,"Fire Phone $1"],[S,_],[v,f]],[/(playbook);[-\w\),; ]+(rim)/i],[m,S,[v,u]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[m,[S,T],[v,f]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[m,[S,P],[v,u]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[m,[S,P],[v,f]],[/(nexus 9)/i],[m,[S,"HTC"],[v,u]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[S,[m,/_/g," "],[v,f]],[/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],[m,[S,"TCL"],[v,u]],[/(itel) ((\w+))/i],[[S,Ye],m,[v,rr,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[m,[S,"Acer"],[v,u]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[m,[S,"Meizu"],[v,f]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[m,[S,"Ulefone"],[v,f]],[/; (energy ?\w+)(?: bui|\))/i,/; energizer ([\w ]+)(?: bui|\))/i],[m,[S,"Energizer"],[v,f]],[/; cat (b35);/i,/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],[m,[S,"Cat"],[v,f]],[/((?:new )?andromax[\w- ]+)(?: bui|\))/i],[m,[S,"Smartfren"],[v,f]],[/droid.+; (a(?:015|06[35]|142p?))/i],[m,[S,"Nothing"],[v,f]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i,/; (imo) ((?!tab)[\w ]+?)(?: bui|\))/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[S,m,[v,f]],[/(imo) (tab \w+)/i,/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[S,m,[v,u]],[/(surface duo)/i],[m,[S,Z],[v,u]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[m,[S,"Fairphone"],[v,f]],[/(u304aa)/i],[m,[S,"AT&T"],[v,f]],[/\bsie-(\w*)/i],[m,[S,"Siemens"],[v,f]],[/\b(rct\w+) b/i],[m,[S,"RCA"],[v,u]],[/\b(venue[\d ]{2,7}) b/i],[m,[S,"Dell"],[v,u]],[/\b(q(?:mv|ta)\w+) b/i],[m,[S,"Verizon"],[v,u]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[m,[S,"Barnes & Noble"],[v,u]],[/\b(tm\d{3}\w+) b/i],[m,[S,"NuVision"],[v,u]],[/\b(k88) b/i],[m,[S,"ZTE"],[v,u]],[/\b(nx\d{3}j) b/i],[m,[S,"ZTE"],[v,f]],[/\b(gen\d{3}) b.+49h/i],[m,[S,"Swiss"],[v,f]],[/\b(zur\d{3}) b/i],[m,[S,"Swiss"],[v,u]],[/\b((zeki)?tb.*\b) b/i],[m,[S,"Zeki"],[v,u]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[S,"Dragon Touch"],m,[v,u]],[/\b(ns-?\w{0,9}) b/i],[m,[S,"Insignia"],[v,u]],[/\b((nxa|next)-?\w{0,9}) b/i],[m,[S,"NextBook"],[v,u]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[S,"Voice"],m,[v,f]],[/\b(lvtel\-)?(v1[12]) b/i],[[S,"LvTel"],m,[v,f]],[/\b(ph-1) /i],[m,[S,"Essential"],[v,f]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[m,[S,"Envizen"],[v,u]],[/\b(trio[-\w\. ]+) b/i],[m,[S,"MachSpeed"],[v,u]],[/\btu_(1491) b/i],[m,[S,"Rotor"],[v,u]],[/(shield[\w ]+) b/i],[m,[S,"Nvidia"],[v,u]],[/(sprint) (\w+)/i],[S,m,[v,f]],[/(kin\.[onetw]{3})/i],[[m,/\./g," "],[S,Z],[v,f]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[m,[S,se],[v,u]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[m,[S,se],[v,f]],[/smart-tv.+(samsung)/i],[S,[v,h]],[/hbbtv.+maple;(\d+)/i],[[m,/^/,"SmartTV"],[S,te],[v,h]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[S,z],[v,h]],[/(apple) ?tv/i],[S,[m,E+" TV"],[v,h]],[/crkey/i],[[m,F+"cast"],[S,L],[v,h]],[/droid.+aft(\w+)( bui|\))/i],[m,[S,_],[v,h]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[m,[S,re],[v,h]],[/(bravia[\w ]+)( bui|\))/i],[m,[S,ie],[v,h]],[/(mitv-\w{5}) bui/i],[m,[S,ce],[v,h]],[/Hbbtv.*(technisat) (.*);/i],[S,m,[v,h]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[S,qt],[m,qt],[v,h]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[v,h]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[S,m,[v,y]],[/droid.+; (shield) bui/i],[m,[S,"Nvidia"],[v,y]],[/(playstation [345portablevi]+)/i],[m,[S,ie],[v,y]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[m,[S,Z],[v,y]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[m,[S,te],[v,b]],[/((pebble))app/i],[S,m,[v,b]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[m,[S,E],[v,b]],[/droid.+; (glass) \d/i],[m,[S,L],[v,b]],[/droid.+; (wt63?0{2,3})\)/i],[m,[S,se],[v,b]],[/droid.+; (glass) \d/i],[m,[S,L],[v,b]],[/(pico) (4|neo3(?: link|pro)?)/i],[S,m,[v,b]],[/; (quest( \d| pro)?)/i],[m,[S,ae],[v,b]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[S,[v,A]],[/(aeobc)\b/i],[m,[S,_],[v,A]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[m,[v,f]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[m,[v,u]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[v,u]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[v,f]],[/(android[-\w\. ]{0,9});.+buil/i],[m,[S,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[C,[g,X+"HTML"]],[/(arkweb)\/([\w\.]+)/i],[g,C],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[C,[g,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[g,C],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[C,g]],os:[[/microsoft (windows) (vista|xp)/i],[g,C],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[g,[C,rr,Ur]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[C,rr,Ur],[g,"Windows"]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[C,/_/g,"."],[g,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[g,ye],[C,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[C,g],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish|openharmony)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[g,C],[/\(bb(10);/i],[C,[g,T]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[C,[g,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[C,[g,O+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[C,[g,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[C,[g,"watchOS"]],[/crkey\/([\d\.]+)/i],[C,[g,F+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[g,le],C],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[g,C],[/(sunos) ?([\w\.\d]*)/i],[[g,"Solaris"],C],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[g,C]]},nt=function(Ie,Me){if(typeof Ie===l&&(Me=Ie,Ie=n),!(this instanceof nt))return new nt(Ie,Me).getResult();var be=typeof r!==c&&r.navigator?r.navigator:n,Ve=Ie||(be&&be.userAgent?be.userAgent:s),At=be&&be.userAgentData?be.userAgentData:n,Dt=Me?ke(xt,Me):xt,Be=be&&be.userAgent==Ve;return this.getBrowser=function(){var Se={};return Se[g]=n,Se[C]=n,Ct.call(Se,Ve,Dt.browser),Se[p]=Ot(Se[C]),Be&&be&&be.brave&&typeof be.brave.isBrave==a&&(Se[g]="Brave"),Se},this.getCPU=function(){var Se={};return Se[w]=n,Ct.call(Se,Ve,Dt.cpu),Se},this.getDevice=function(){var Se={};return Se[S]=n,Se[m]=n,Se[v]=n,Ct.call(Se,Ve,Dt.device),Be&&!Se[v]&&At&&At.mobile&&(Se[v]=f),Be&&Se[m]=="Macintosh"&&be&&typeof be.standalone!==c&&be.maxTouchPoints&&be.maxTouchPoints>2&&(Se[m]="iPad",Se[v]=u),Se},this.getEngine=function(){var Se={};return Se[g]=n,Se[C]=n,Ct.call(Se,Ve,Dt.engine),Se},this.getOS=function(){var Se={};return Se[g]=n,Se[C]=n,Ct.call(Se,Ve,Dt.os),Be&&!Se[g]&&At&&At.platform&&At.platform!="Unknown"&&(Se[g]=At.platform.replace(/chrome os/i,le).replace(/macos/i,ye)),Se},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return Ve},this.setUA=function(Se){return Ve=typeof Se===d&&Se.length>R?qt(Se,R):Se,this},this.setUA(Ve),this};nt.VERSION=i,nt.BROWSER=U([g,C,p]),nt.CPU=U([w]),nt.DEVICE=U([m,S,v,y,f,h,u,b,A]),nt.ENGINE=nt.OS=U([g,C]),t.exports&&(e=t.exports=nt),e.UAParser=nt;var mt=typeof r!==c&&(r.jQuery||r.Zepto);if(mt&&!mt.ua){var Mr=new nt;mt.ua=Mr.getResult(),mt.ua.get=function(){return Mr.getUA()},mt.ua.set=function(Ie){Mr.setUA(Ie);var Me=Mr.getResult();for(var be in Me)mt.ua[be]=Me[be]}}})(typeof window=="object"?window:Uk)}(qo,qo.exports)),qo.exports}var Yk=Wk(),Zk=St(),cb=Xt(),xs=lr(),lc=Hr(),qk=wa(),Jk=er(),Kk=yr(),Qk=Vr(),$k=di(),eM=nC(),dc={exports:{}},lb;function tM(){if(lb)return dc.exports;lb=1;var t=typeof Reflect=="object"?Reflect:null,e=t&&typeof t.apply=="function"?t.apply:function(h,b,A){return Function.prototype.apply.call(h,b,A)},r;t&&typeof t.ownKeys=="function"?r=t.ownKeys:Object.getOwnPropertySymbols?r=function(h){return Object.getOwnPropertyNames(h).concat(Object.getOwnPropertySymbols(h))}:r=function(h){return Object.getOwnPropertyNames(h)};function n(u){console&&console.warn&&console.warn(u)}var i=Number.isNaN||function(h){return h!==h};function s(){s.init.call(this)}dc.exports=s,dc.exports.once=w,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var o=10;function a(u){if(typeof u!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof u)}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(u){if(typeof u!="number"||u<0||i(u))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+u+".");o=u}}),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(h){if(typeof h!="number"||h<0||i(h))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+h+".");return this._maxListeners=h,this};function c(u){return u._maxListeners===void 0?s.defaultMaxListeners:u._maxListeners}s.prototype.getMaxListeners=function(){return c(this)},s.prototype.emit=function(h){for(var b=[],A=1;A<arguments.length;A++)b.push(arguments[A]);var R=h==="error",_=this._events;if(_!==void 0)R=R&&_.error===void 0;else if(!R)return!1;if(R){var E;if(b.length>0&&(E=b[0]),E instanceof Error)throw E;var P=new Error("Unhandled error."+(E?" ("+E.message+")":""));throw P.context=E,P}var T=_[h];if(T===void 0)return!1;if(typeof T=="function")e(T,this,b);else for(var k=T.length,F=v(T,k),A=0;A<k;++A)e(F[A],this,b);return!0};function l(u,h,b,A){var R,_,E;if(a(b),_=u._events,_===void 0?(_=u._events=Object.create(null),u._eventsCount=0):(_.newListener!==void 0&&(u.emit("newListener",h,b.listener?b.listener:b),_=u._events),E=_[h]),E===void 0)E=_[h]=b,++u._eventsCount;else if(typeof E=="function"?E=_[h]=A?[b,E]:[E,b]:A?E.unshift(b):E.push(b),R=c(u),R>0&&E.length>R&&!E.warned){E.warned=!0;var P=new Error("Possible EventEmitter memory leak detected. "+E.length+" "+String(h)+" listeners added. Use emitter.setMaxListeners() to increase limit");P.name="MaxListenersExceededWarning",P.emitter=u,P.type=h,P.count=E.length,n(P)}return u}s.prototype.addListener=function(h,b){return l(this,h,b,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(h,b){return l(this,h,b,!0)};function d(){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 p(u,h,b){var A={fired:!1,wrapFn:void 0,target:u,type:h,listener:b},R=d.bind(A);return R.listener=b,A.wrapFn=R,R}s.prototype.once=function(h,b){return a(b),this.on(h,p(this,h,b)),this},s.prototype.prependOnceListener=function(h,b){return a(b),this.prependListener(h,p(this,h,b)),this},s.prototype.removeListener=function(h,b){var A,R,_,E,P;if(a(b),R=this._events,R===void 0)return this;if(A=R[h],A===void 0)return this;if(A===b||A.listener===b)--this._eventsCount===0?this._events=Object.create(null):(delete R[h],R.removeListener&&this.emit("removeListener",h,A.listener||b));else if(typeof A!="function"){for(_=-1,E=A.length-1;E>=0;E--)if(A[E]===b||A[E].listener===b){P=A[E].listener,_=E;break}if(_<0)return this;_===0?A.shift():S(A,_),A.length===1&&(R[h]=A[0]),R.removeListener!==void 0&&this.emit("removeListener",h,P||b)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(h){var b,A,R;if(A=this._events,A===void 0)return this;if(A.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):A[h]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete A[h]),this;if(arguments.length===0){var _=Object.keys(A),E;for(R=0;R<_.length;++R)E=_[R],E!=="removeListener"&&this.removeAllListeners(E);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(b=A[h],typeof b=="function")this.removeListener(h,b);else if(b!==void 0)for(R=b.length-1;R>=0;R--)this.removeListener(h,b[R]);return this};function m(u,h,b){var A=u._events;if(A===void 0)return[];var R=A[h];return R===void 0?[]:typeof R=="function"?b?[R.listener||R]:[R]:b?C(R):v(R,R.length)}s.prototype.listeners=function(h){return m(this,h,!0)},s.prototype.rawListeners=function(h){return m(this,h,!1)},s.listenerCount=function(u,h){return typeof u.listenerCount=="function"?u.listenerCount(h):g.call(u,h)},s.prototype.listenerCount=g;function g(u){var h=this._events;if(h!==void 0){var b=h[u];if(typeof b=="function")return 1;if(b!==void 0)return b.length}return 0}s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]};function v(u,h){for(var b=new Array(h),A=0;A<h;++A)b[A]=u[A];return b}function S(u,h){for(;h+1<u.length;h++)u[h]=u[h+1];u.pop()}function C(u){for(var h=new Array(u.length),b=0;b<h.length;++b)h[b]=u[b].listener||u[b];return h}function w(u,h){return new Promise(function(b,A){function R(E){u.removeListener(h,_),A(E)}function _(){typeof u.removeListener=="function"&&u.removeListener("error",R),b([].slice.call(arguments))}f(u,h,_,{once:!0}),h!=="error"&&y(u,R,{once:!0})})}function y(u,h,b){typeof u.on=="function"&&f(u,"error",h,b)}function f(u,h,b,A){if(typeof u.on=="function")A.once?u.once(h,b):u.on(h,b);else if(typeof u.addEventListener=="function")u.addEventListener(h,function R(_){A.once&&u.removeEventListener(h,R),b(_)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof u)}return dc.exports}var Ca=tM();const lC=Xn(Ca),Vn=Object.create(null);Vn.open="0";Vn.close="1";Vn.ping="2";Vn.pong="3";Vn.message="4";Vn.upgrade="5";Vn.noop="6";const qc=Object.create(null);Object.keys(Vn).forEach(t=>{qc[Vn[t]]=t});const $f={type:"error",data:"parser error"},dC=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",uC=typeof ArrayBuffer=="function",fC=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer,mh=({type:t,data:e},r,n)=>dC&&e instanceof Blob?r?n(e):db(e,n):uC&&(e instanceof ArrayBuffer||fC(e))?r?n(e):db(new Blob([e]),n):n(Vn[t]+(e||"")),db=(t,e)=>{const r=new FileReader;return r.onload=function(){const n=r.result.split(",")[1];e("b"+(n||""))},r.readAsDataURL(t)};function ub(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}let Mu;function rM(t,e){if(dC&&t.data instanceof Blob)return t.data.arrayBuffer().then(ub).then(e);if(uC&&(t.data instanceof ArrayBuffer||fC(t.data)))return e(ub(t.data));mh(t,!1,r=>{Mu||(Mu=new TextEncoder),e(Mu.encode(r))})}const fb="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Jo=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let t=0;t<fb.length;t++)Jo[fb.charCodeAt(t)]=t;const nM=t=>{let e=t.length*.75,r=t.length,n,i=0,s,o,a,c;t[t.length-1]==="="&&(e--,t[t.length-2]==="="&&e--);const l=new ArrayBuffer(e),d=new Uint8Array(l);for(n=0;n<r;n+=4)s=Jo[t.charCodeAt(n)],o=Jo[t.charCodeAt(n+1)],a=Jo[t.charCodeAt(n+2)],c=Jo[t.charCodeAt(n+3)],d[i++]=s<<2|o>>4,d[i++]=(o&15)<<4|a>>2,d[i++]=(a&3)<<6|c&63;return l},iM=typeof ArrayBuffer=="function",gh=(t,e)=>{if(typeof t!="string")return{type:"message",data:pC(t,e)};const r=t.charAt(0);return r==="b"?{type:"message",data:sM(t.substring(1),e)}:qc[r]?t.length>1?{type:qc[r],data:t.substring(1)}:{type:qc[r]}:$f},sM=(t,e)=>{if(iM){const r=nM(t);return pC(r,e)}else return{base64:!0,data:t}},pC=(t,e)=>{switch(e){case"blob":return t instanceof Blob?t:new Blob([t]);case"arraybuffer":default:return t instanceof ArrayBuffer?t:t.buffer}},hC="",oM=(t,e)=>{const r=t.length,n=new Array(r);let i=0;t.forEach((s,o)=>{mh(s,!1,a=>{n[o]=a,++i===r&&e(n.join(hC))})})},aM=(t,e)=>{const r=t.split(hC),n=[];for(let i=0;i<r.length;i++){const s=gh(r[i],e);if(n.push(s),s.type==="error")break}return n};function cM(){return new TransformStream({transform(t,e){rM(t,r=>{const n=r.length;let i;if(n<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,n);else if(n<65536){i=new Uint8Array(3);const s=new DataView(i.buffer);s.setUint8(0,126),s.setUint16(1,n)}else{i=new Uint8Array(9);const s=new DataView(i.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(n))}t.data&&typeof t.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(r)})}})}let Nu;function uc(t){return t.reduce((e,r)=>e+r.length,0)}function fc(t,e){if(t[0].length===e)return t.shift();const r=new Uint8Array(e);let n=0;for(let i=0;i<e;i++)r[i]=t[0][n++],n===t[0].length&&(t.shift(),n=0);return t.length&&n<t[0].length&&(t[0]=t[0].slice(n)),r}function lM(t,e){Nu||(Nu=new TextDecoder);const r=[];let n=0,i=-1,s=!1;return new TransformStream({transform(o,a){for(r.push(o);;){if(n===0){if(uc(r)<1)break;const c=fc(r,1);s=(c[0]&128)===128,i=c[0]&127,i<126?n=3:i===126?n=1:n=2}else if(n===1){if(uc(r)<2)break;const c=fc(r,2);i=new DataView(c.buffer,c.byteOffset,c.length).getUint16(0),n=3}else if(n===2){if(uc(r)<8)break;const c=fc(r,8),l=new DataView(c.buffer,c.byteOffset,c.length),d=l.getUint32(0);if(d>Math.pow(2,21)-1){a.enqueue($f);break}i=d*Math.pow(2,32)+l.getUint32(4),n=3}else{if(uc(r)<i)break;const c=fc(r,i);a.enqueue(gh(s?c:Nu.decode(c),e)),n=0}if(i===0||i>t){a.enqueue($f);break}}}})}const mC=4;function Tt(t){if(t)return dM(t)}function dM(t){for(var e in Tt.prototype)t[e]=Tt.prototype[e];return t}Tt.prototype.on=Tt.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this};Tt.prototype.once=function(t,e){function r(){this.off(t,r),e.apply(this,arguments)}return r.fn=e,this.on(t,r),this};Tt.prototype.off=Tt.prototype.removeListener=Tt.prototype.removeAllListeners=Tt.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var r=this._callbacks["$"+t];if(!r)return this;if(arguments.length==1)return delete this._callbacks["$"+t],this;for(var n,i=0;i<r.length;i++)if(n=r[i],n===e||n.fn===e){r.splice(i,1);break}return r.length===0&&delete this._callbacks["$"+t],this};Tt.prototype.emit=function(t){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),r=this._callbacks["$"+t],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(r){r=r.slice(0);for(var n=0,i=r.length;n<i;++n)r[n].apply(this,e)}return this};Tt.prototype.emitReserved=Tt.prototype.emit;Tt.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks["$"+t]||[]};Tt.prototype.hasListeners=function(t){return!!this.listeners(t).length};const Br=typeof self<"u"?self:typeof window<"u"?window:Function("return this")();function gC(t,...e){return e.reduce((r,n)=>(t.hasOwnProperty(n)&&(r[n]=t[n]),r),{})}const uM=Br.setTimeout,fM=Br.clearTimeout;function pd(t,e){e.useNativeTimers?(t.setTimeoutFn=uM.bind(Br),t.clearTimeoutFn=fM.bind(Br)):(t.setTimeoutFn=Br.setTimeout.bind(Br),t.clearTimeoutFn=Br.clearTimeout.bind(Br))}const pM=1.33;function hM(t){return typeof t=="string"?mM(t):Math.ceil((t.byteLength||t.size)*pM)}function mM(t){let e=0,r=0;for(let n=0,i=t.length;n<i;n++)e=t.charCodeAt(n),e<128?r+=1:e<2048?r+=2:e<55296||e>=57344?r+=3:(n++,r+=4);return r}function gM(t){let e="";for(let r in t)t.hasOwnProperty(r)&&(e.length&&(e+="&"),e+=encodeURIComponent(r)+"="+encodeURIComponent(t[r]));return e}function vM(t){let e={},r=t.split("&");for(let n=0,i=r.length;n<i;n++){let s=r[n].split("=");e[decodeURIComponent(s[0])]=decodeURIComponent(s[1])}return e}class bM extends Error{constructor(e,r,n){super(e),this.description=r,this.context=n,this.type="TransportError"}}class vh extends Tt{constructor(e){super(),this.writable=!1,pd(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,r,n){return super.emitReserved("error",new bM(e,r,n)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const r=gh(e,this.socket.binaryType);this.onPacket(r)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,r={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(r)}_hostname(){const e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){const r=gM(e);return r.length?"?"+r:""}}const vC="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),ep=64,yM={};let pb=0,pc=0,hb;function mb(t){let e="";do e=vC[t%ep]+e,t=Math.floor(t/ep);while(t>0);return e}function bC(){const t=mb(+new Date);return t!==hb?(pb=0,hb=t):t+"."+mb(pb++)}for(;pc<ep;pc++)yM[vC[pc]]=pc;let yC=!1;try{yC=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const SM=yC;function SC(t){const e=t.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||SM))return new XMLHttpRequest}catch{}if(!e)try{return new Br[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}function wM(){}const CM=function(){return new SC({xdomain:!1}).responseType!=null}();class AM extends vh{constructor(e){if(super(e),this.polling=!1,typeof location<"u"){const n=location.protocol==="https:";let i=location.port;i||(i=n?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||i!==e.port}const r=e&&e.forceBase64;this.supportsBinary=CM&&!r,this.opts.withCredentials&&(this.cookieJar=void 0)}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";const r=()=>{this.readyState="paused",e()};if(this.polling||!this.writable){let n=0;this.polling&&(n++,this.once("pollComplete",function(){--n||r()})),this.writable||(n++,this.once("drain",function(){--n||r()}))}else r()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const r=n=>{if(this.readyState==="opening"&&n.type==="open"&&this.onOpen(),n.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(n)};aM(e,this.socket.binaryType).forEach(r),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,oM(e,r=>{this.doWrite(r,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",r=this.query||{};return this.opts.timestampRequests!==!1&&(r[this.opts.timestampParam]=bC()),!this.supportsBinary&&!r.sid&&(r.b64=1),this.createUri(e,r)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new zn(this.uri(),e)}doWrite(e,r){const n=this.request({method:"POST",data:e});n.on("success",r),n.on("error",(i,s)=>{this.onError("xhr post error",i,s)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(r,n)=>{this.onError("xhr poll error",r,n)}),this.pollXhr=e}}class zn extends Tt{constructor(e,r){super(),pd(this,r),this.opts=r,this.method=r.method||"GET",this.uri=e,this.data=r.data!==void 0?r.data:null,this.create()}create(){var e;const r=gC(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");r.xdomain=!!this.opts.xd;const n=this.xhr=new SC(r);try{n.open(this.method,this.uri,!0);try{if(this.opts.extraHeaders){n.setDisableHeaderCheck&&n.setDisableHeaderCheck(!0);for(let i in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(i)&&n.setRequestHeader(i,this.opts.extraHeaders[i])}}catch{}if(this.method==="POST")try{n.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{n.setRequestHeader("Accept","*/*")}catch{}(e=this.opts.cookieJar)===null||e===void 0||e.addCookies(n),"withCredentials"in n&&(n.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(n.timeout=this.opts.requestTimeout),n.onreadystatechange=()=>{var i;n.readyState===3&&((i=this.opts.cookieJar)===null||i===void 0||i.parseCookies(n)),n.readyState===4&&(n.status===200||n.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof n.status=="number"?n.status:0)},0))},n.send(this.data)}catch(i){this.setTimeoutFn(()=>{this.onError(i)},0);return}typeof document<"u"&&(this.index=zn.requestsCount++,zn.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if(!(typeof this.xhr>"u"||this.xhr===null)){if(this.xhr.onreadystatechange=wM,e)try{this.xhr.abort()}catch{}typeof document<"u"&&delete zn.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}zn.requestsCount=0;zn.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",gb);else if(typeof addEventListener=="function"){const t="onpagehide"in Br?"pagehide":"unload";addEventListener(t,gb,!1)}}function gb(){for(let t in zn.requests)zn.requests.hasOwnProperty(t)&&zn.requests[t].abort()}const bh=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,r)=>r(e,0),hc=Br.WebSocket||Br.MozWebSocket,vb=!0,RM="arraybuffer",bb=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class _M extends vh{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),r=this.opts.protocols,n=bb?{}:gC(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(n.headers=this.opts.extraHeaders);try{this.ws=vb&&!bb?r?new hc(e,r):new hc(e):new hc(e,r,n)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let r=0;r<e.length;r++){const n=e[r],i=r===e.length-1;mh(n,this.supportsBinary,s=>{const o={};try{vb&&this.ws.send(s)}catch{}i&&bh(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",r=this.query||{};return this.opts.timestampRequests&&(r[this.opts.timestampParam]=bC()),this.supportsBinary||(r.b64=1),this.createUri(e,r)}check(){return!!hc}}class EM extends vh{get name(){return"webtransport"}doOpen(){typeof WebTransport=="function"&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this.transport.ready.then(()=>{this.transport.createBidirectionalStream().then(e=>{const r=lM(Number.MAX_SAFE_INTEGER,this.socket.binaryType),n=e.readable.pipeThrough(r).getReader(),i=cM();i.readable.pipeTo(e.writable),this.writer=i.writable.getWriter();const s=()=>{n.read().then(({done:a,value:c})=>{a||(this.onPacket(c),s())}).catch(a=>{})};s();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this.writer.write(o).then(()=>this.onOpen())})}))}write(e){this.writable=!1;for(let r=0;r<e.length;r++){const n=e[r],i=r===e.length-1;this.writer.write(n).then(()=>{i&&bh(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this.transport)===null||e===void 0||e.close()}}const PM={websocket:_M,webtransport:EM,polling:AM},TM=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,IM=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function tp(t){if(t.length>2e3)throw"URI too long";const e=t,r=t.indexOf("["),n=t.indexOf("]");r!=-1&&n!=-1&&(t=t.substring(0,r)+t.substring(r,n).replace(/:/g,";")+t.substring(n,t.length));let i=TM.exec(t||""),s={},o=14;for(;o--;)s[IM[o]]=i[o]||"";return r!=-1&&n!=-1&&(s.source=e,s.host=s.host.substring(1,s.host.length-1).replace(/;/g,":"),s.authority=s.authority.replace("[","").replace("]","").replace(/;/g,":"),s.ipv6uri=!0),s.pathNames=OM(s,s.path),s.queryKey=xM(s,s.query),s}function OM(t,e){const r=/\/{2,9}/g,n=e.replace(r,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&n.splice(0,1),e.slice(-1)=="/"&&n.splice(n.length-1,1),n}function xM(t,e){const r={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(n,i,s){i&&(r[i]=s)}),r}let wC=class Bs extends Tt{constructor(e,r={}){super(),this.binaryType=RM,this.writeBuffer=[],e&&typeof e=="object"&&(r=e,e=null),e?(e=tp(e),r.hostname=e.host,r.secure=e.protocol==="https"||e.protocol==="wss",r.port=e.port,e.query&&(r.query=e.query)):r.host&&(r.hostname=tp(r.host).host),pd(this,r),this.secure=r.secure!=null?r.secure:typeof location<"u"&&location.protocol==="https:",r.hostname&&!r.port&&(r.port=this.secure?"443":"80"),this.hostname=r.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=r.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=r.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},r),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=vM(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,typeof addEventListener=="function"&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const r=Object.assign({},this.opts.query);r.EIO=mC,r.transport=e,this.id&&(r.sid=this.id);const n=Object.assign({},this.opts,{query:r,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new PM[e](n)}open(){let e;if(this.opts.rememberUpgrade&&Bs.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)e="websocket";else if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}else e=this.transports[0];this.readyState="opening";try{e=this.createTransport(e)}catch{this.transports.shift(),this.open();return}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",r=>this.onClose("transport close",r))}probe(e){let r=this.createTransport(e),n=!1;Bs.priorWebsocketSuccess=!1;const i=()=>{n||(r.send([{type:"ping",data:"probe"}]),r.once("packet",p=>{if(!n)if(p.type==="pong"&&p.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",r),!r)return;Bs.priorWebsocketSuccess=r.name==="websocket",this.transport.pause(()=>{n||this.readyState!=="closed"&&(d(),this.setTransport(r),r.send([{type:"upgrade"}]),this.emitReserved("upgrade",r),r=null,this.upgrading=!1,this.flush())})}else{const m=new Error("probe error");m.transport=r.name,this.emitReserved("upgradeError",m)}}))};function s(){n||(n=!0,d(),r.close(),r=null)}const o=p=>{const m=new Error("probe error: "+p);m.transport=r.name,s(),this.emitReserved("upgradeError",m)};function a(){o("transport closed")}function c(){o("socket closed")}function l(p){r&&p.name!==r.name&&s()}const d=()=>{r.removeListener("open",i),r.removeListener("error",o),r.removeListener("close",a),this.off("close",c),this.off("upgrading",l)};r.once("open",i),r.once("error",o),r.once("close",a),this.once("close",c),this.once("upgrading",l),this.upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{n||r.open()},200):r.open()}onOpen(){if(this.readyState="open",Bs.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){let e=0;const r=this.upgrades.length;for(;e<r;e++)this.probe(this.upgrades[e])}}onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),this.resetPingTimeout(),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this.sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong");break;case"error":const r=new Error("server error");r.code=e.data,this.onError(r);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this.upgrades=this.filterUpgrades(e.upgrades),this.pingInterval=e.pingInterval,this.pingTimeout=e.pingTimeout,this.maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this.resetPingTimeout()}resetPingTimeout(){this.clearTimeoutFn(this.pingTimeoutTimer),this.pingTimeoutTimer=this.setTimeoutFn(()=>{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let r=1;for(let n=0;n<this.writeBuffer.length;n++){const i=this.writeBuffer[n].data;if(i&&(r+=hM(i)),n>0&&r>this.maxPayload)return this.writeBuffer.slice(0,n);r+=2}return this.writeBuffer}write(e,r,n){return this.sendPacket("message",e,r,n),this}send(e,r,n){return this.sendPacket("message",e,r,n),this}sendPacket(e,r,n,i){if(typeof r=="function"&&(i=r,r=void 0),typeof n=="function"&&(i=n,n=null),this.readyState==="closing"||this.readyState==="closed")return;n=n||{},n.compress=n.compress!==!1;const s={type:e,data:r,options:n};this.emitReserved("packetCreate",s),this.writeBuffer.push(s),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},r=()=>{this.off("upgrade",r),this.off("upgradeError",r),e()},n=()=>{this.once("upgrade",r),this.once("upgradeError",r)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?n():e()}):this.upgrading?n():e()),this}onError(e){Bs.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,r){(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")&&(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,r),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const r=[];let n=0;const i=e.length;for(;n<i;n++)~this.transports.indexOf(e[n])&&r.push(e[n]);return r}};wC.protocol=mC;function DM(t,e="",r){let n=t;r=r||typeof location<"u"&&location,t==null&&(t=r.protocol+"//"+r.host),typeof t=="string"&&(t.charAt(0)==="/"&&(t.charAt(1)==="/"?t=r.protocol+t:t=r.host+t),/^(https?|wss?):\/\//.test(t)||(typeof r<"u"?t=r.protocol+"//"+t:t="https://"+t),n=tp(t)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";const s=n.host.indexOf(":")!==-1?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+s+":"+n.port+e,n.href=n.protocol+"://"+s+(r&&r.port===n.port?"":":"+n.port),n}const kM=typeof ArrayBuffer=="function",MM=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer,CC=Object.prototype.toString,NM=typeof Blob=="function"||typeof Blob<"u"&&CC.call(Blob)==="[object BlobConstructor]",LM=typeof File=="function"||typeof File<"u"&&CC.call(File)==="[object FileConstructor]";function yh(t){return kM&&(t instanceof ArrayBuffer||MM(t))||NM&&t instanceof Blob||LM&&t instanceof File}function Jc(t,e){if(!t||typeof t!="object")return!1;if(Array.isArray(t)){for(let r=0,n=t.length;r<n;r++)if(Jc(t[r]))return!0;return!1}if(yh(t))return!0;if(t.toJSON&&typeof t.toJSON=="function"&&arguments.length===1)return Jc(t.toJSON(),!0);for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&Jc(t[r]))return!0;return!1}function jM(t){const e=[],r=t.data,n=t;return n.data=rp(r,e),n.attachments=e.length,{packet:n,buffers:e}}function rp(t,e){if(!t)return t;if(yh(t)){const r={_placeholder:!0,num:e.length};return e.push(t),r}else if(Array.isArray(t)){const r=new Array(t.length);for(let n=0;n<t.length;n++)r[n]=rp(t[n],e);return r}else if(typeof t=="object"&&!(t instanceof Date)){const r={};for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=rp(t[n],e));return r}return t}function BM(t,e){return t.data=np(t.data,e),delete t.attachments,t}function np(t,e){if(!t)return t;if(t&&t._placeholder===!0){if(typeof t.num=="number"&&t.num>=0&&t.num<e.length)return e[t.num];throw new Error("illegal attachments")}else if(Array.isArray(t))for(let r=0;r<t.length;r++)t[r]=np(t[r],e);else if(typeof t=="object")for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&(t[r]=np(t[r],e));return t}const FM=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"],zM=5;var He;(function(t){t[t.CONNECT=0]="CONNECT",t[t.DISCONNECT=1]="DISCONNECT",t[t.EVENT=2]="EVENT",t[t.ACK=3]="ACK",t[t.CONNECT_ERROR=4]="CONNECT_ERROR",t[t.BINARY_EVENT=5]="BINARY_EVENT",t[t.BINARY_ACK=6]="BINARY_ACK"})(He||(He={}));class HM{constructor(e){this.replacer=e}encode(e){return(e.type===He.EVENT||e.type===He.ACK)&&Jc(e)?this.encodeAsBinary({type:e.type===He.EVENT?He.BINARY_EVENT:He.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let r=""+e.type;return(e.type===He.BINARY_EVENT||e.type===He.BINARY_ACK)&&(r+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(r+=e.nsp+","),e.id!=null&&(r+=e.id),e.data!=null&&(r+=JSON.stringify(e.data,this.replacer)),r}encodeAsBinary(e){const r=jM(e),n=this.encodeAsString(r.packet),i=r.buffers;return i.unshift(n),i}}function yb(t){return Object.prototype.toString.call(t)==="[object Object]"}class Sh extends Tt{constructor(e){super(),this.reviver=e}add(e){let r;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");r=this.decodeString(e);const n=r.type===He.BINARY_EVENT;n||r.type===He.BINARY_ACK?(r.type=n?He.EVENT:He.ACK,this.reconstructor=new VM(r),r.attachments===0&&super.emitReserved("decoded",r)):super.emitReserved("decoded",r)}else if(yh(e)||e.base64)if(this.reconstructor)r=this.reconstructor.takeBinaryData(e),r&&(this.reconstructor=null,super.emitReserved("decoded",r));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let r=0;const n={type:Number(e.charAt(0))};if(He[n.type]===void 0)throw new Error("unknown packet type "+n.type);if(n.type===He.BINARY_EVENT||n.type===He.BINARY_ACK){const s=r+1;for(;e.charAt(++r)!=="-"&&r!=e.length;);const o=e.substring(s,r);if(o!=Number(o)||e.charAt(r)!=="-")throw new Error("Illegal attachments");n.attachments=Number(o)}if(e.charAt(r+1)==="/"){const s=r+1;for(;++r&&!(e.charAt(r)===","||r===e.length););n.nsp=e.substring(s,r)}else n.nsp="/";const i=e.charAt(r+1);if(i!==""&&Number(i)==i){const s=r+1;for(;++r;){const o=e.charAt(r);if(o==null||Number(o)!=o){--r;break}if(r===e.length)break}n.id=Number(e.substring(s,r+1))}if(e.charAt(++r)){const s=this.tryParse(e.substr(r));if(Sh.isPayloadValid(n.type,s))n.data=s;else throw new Error("invalid payload")}return n}tryParse(e){try{return JSON.parse(e,this.reviver)}catch{return!1}}static isPayloadValid(e,r){switch(e){case He.CONNECT:return yb(r);case He.DISCONNECT:return r===void 0;case He.CONNECT_ERROR:return typeof r=="string"||yb(r);case He.EVENT:case He.BINARY_EVENT:return Array.isArray(r)&&(typeof r[0]=="number"||typeof r[0]=="string"&&FM.indexOf(r[0])===-1);case He.ACK:case He.BINARY_ACK:return Array.isArray(r)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class VM{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const r=BM(this.reconPack,this.buffers);return this.finishedReconstruction(),r}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const GM=Object.freeze(Object.defineProperty({__proto__:null,Decoder:Sh,Encoder:HM,get PacketType(){return He},protocol:zM},Symbol.toStringTag,{value:"Module"}));function bn(t,e,r){return t.on(e,r),function(){t.off(e,r)}}const XM=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class AC extends Tt{constructor(e,r,n){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=r,n&&n.auth&&(this.auth=n.auth),this._opts=Object.assign({},n),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[bn(e,"open",this.onopen.bind(this)),bn(e,"packet",this.onpacket.bind(this)),bn(e,"error",this.onerror.bind(this)),bn(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...r){if(XM.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(r.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(r),this;const n={type:He.EVENT,data:r};if(n.options={},n.options.compress=this.flags.compress!==!1,typeof r[r.length-1]=="function"){const o=this.ids++,a=r.pop();this._registerAckCallback(o,a),n.id=o}const i=this.io.engine&&this.io.engine.transport&&this.io.engine.transport.writable;return this.flags.volatile&&(!i||!this.connected)||(this.connected?(this.notifyOutgoingListeners(n),this.packet(n)):this.sendBuffer.push(n)),this.flags={},this}_registerAckCallback(e,r){var n;const i=(n=this.flags.timeout)!==null&&n!==void 0?n:this._opts.ackTimeout;if(i===void 0){this.acks[e]=r;return}const s=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let o=0;o<this.sendBuffer.length;o++)this.sendBuffer[o].id===e&&this.sendBuffer.splice(o,1);r.call(this,new Error("operation has timed out"))},i);this.acks[e]=(...o)=>{this.io.clearTimeoutFn(s),r.apply(this,[null,...o])}}emitWithAck(e,...r){const n=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((i,s)=>{r.push((o,a)=>n?o?s(o):i(a):i(o)),this.emit(e,...r)})}_addToQueue(e){let r;typeof e[e.length-1]=="function"&&(r=e.pop());const n={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...s)=>n!==this._queue[0]?void 0:(i!==null?n.tryCount>this._opts.retries&&(this._queue.shift(),r&&r(i)):(this._queue.shift(),r&&r(null,...s)),n.pending=!1,this._drainQueue())),this._queue.push(n),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const r=this._queue[0];r.pending&&!e||(r.pending=!0,r.tryCount++,this.flags=r.flags,this.emit.apply(this,r.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:He.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,r){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,r)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case He.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case He.EVENT:case He.BINARY_EVENT:this.onevent(e);break;case He.ACK:case He.BINARY_ACK:this.onack(e);break;case He.DISCONNECT:this.ondisconnect();break;case He.CONNECT_ERROR:this.destroy();const n=new Error(e.data.message);n.data=e.data.data,this.emitReserved("connect_error",n);break}}onevent(e){const r=e.data||[];e.id!=null&&r.push(this.ack(e.id)),this.connected?this.emitEvent(r):this.receiveBuffer.push(Object.freeze(r))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const r=this._anyListeners.slice();for(const n of r)n.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const r=this;let n=!1;return function(...i){n||(n=!0,r.packet({type:He.ACK,id:e,data:i}))}}onack(e){const r=this.acks[e.id];typeof r=="function"&&(r.apply(this,e.data),delete this.acks[e.id])}onconnect(e,r){this.id=e,this.recovered=r&&this._pid===r,this._pid=r,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:He.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const r=this._anyListeners;for(let n=0;n<r.length;n++)if(e===r[n])return r.splice(n,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const r=this._anyOutgoingListeners;for(let n=0;n<r.length;n++)if(e===r[n])return r.splice(n,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const r=this._anyOutgoingListeners.slice();for(const n of r)n.apply(this,e.data)}}}function go(t){t=t||{},this.ms=t.min||100,this.max=t.max||1e4,this.factor=t.factor||2,this.jitter=t.jitter>0&&t.jitter<=1?t.jitter:0,this.attempts=0}go.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),r=Math.floor(e*this.jitter*t);t=(Math.floor(e*10)&1)==0?t-r:t+r}return Math.min(t,this.max)|0};go.prototype.reset=function(){this.attempts=0};go.prototype.setMin=function(t){this.ms=t};go.prototype.setMax=function(t){this.max=t};go.prototype.setJitter=function(t){this.jitter=t};class ip extends Tt{constructor(e,r){var n;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(r=e,e=void 0),r=r||{},r.path=r.path||"/socket.io",this.opts=r,pd(this,r),this.reconnection(r.reconnection!==!1),this.reconnectionAttempts(r.reconnectionAttempts||1/0),this.reconnectionDelay(r.reconnectionDelay||1e3),this.reconnectionDelayMax(r.reconnectionDelayMax||5e3),this.randomizationFactor((n=r.randomizationFactor)!==null&&n!==void 0?n:.5),this.backoff=new go({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(r.timeout==null?2e4:r.timeout),this._readyState="closed",this.uri=e;const i=r.parser||GM;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=r.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var r;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(r=this.backoff)===null||r===void 0||r.setMin(e),this)}randomizationFactor(e){var r;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(r=this.backoff)===null||r===void 0||r.setJitter(e),this)}reconnectionDelayMax(e){var r;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(r=this.backoff)===null||r===void 0||r.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new wC(this.uri,this.opts);const r=this.engine,n=this;this._readyState="opening",this.skipReconnect=!1;const i=bn(r,"open",function(){n.onopen(),e&&e()}),s=a=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",a),e?e(a):this.maybeReconnectOnOpen()},o=bn(r,"error",s);if(this._timeout!==!1){const a=this._timeout,c=this.setTimeoutFn(()=>{i(),s(new Error("timeout")),r.close()},a);this.opts.autoUnref&&c.unref(),this.subs.push(()=>{this.clearTimeoutFn(c)})}return this.subs.push(i),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(bn(e,"ping",this.onping.bind(this)),bn(e,"data",this.ondata.bind(this)),bn(e,"error",this.onerror.bind(this)),bn(e,"close",this.onclose.bind(this)),bn(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(r){this.onclose("parse error",r)}}ondecoded(e){bh(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,r){let n=this.nsps[e];return n?this._autoConnect&&!n.active&&n.connect():(n=new AC(this,e,r),this.nsps[e]=n),n}_destroy(e){const r=Object.keys(this.nsps);for(const n of r)if(this.nsps[n].active)return;this._close()}_packet(e){const r=this.encoder.encode(e);for(let n=0;n<r.length;n++)this.engine.write(r[n],e.options)}cleanup(){this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,r){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,r),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const r=this.backoff.duration();this._reconnecting=!0;const n=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},r);this.opts.autoUnref&&n.unref(),this.subs.push(()=>{this.clearTimeoutFn(n)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const zo={};function Kc(t,e){typeof t=="object"&&(e=t,t=void 0),e=e||{};const r=DM(t,e.path||"/socket.io"),n=r.source,i=r.id,s=r.path,o=zo[i]&&s in zo[i].nsps,a=e.forceNew||e["force new connection"]||e.multiplex===!1||o;let c;return a?c=new ip(n,e):(zo[i]||(zo[i]=new ip(n,e)),c=zo[i]),r.query&&!e.query&&(e.query=r.queryKey),c.socket(r.path,e)}Object.assign(Kc,{Manager:ip,Socket:AC,io:Kc,connect:Kc});var RC={};const UM=RC.NODE_ENV==="development"||new URLSearchParams(window.location.search).has("debug");class Rn{constructor(){this._isEnabled=!1,this._isEnabled=UM}isEnabled(){return this._isEnabled}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}info(...e){if(this._isEnabled)return console.info(...e)}warn(...e){if(this._isEnabled)return console.warn(...e)}error(...e){if(this._isEnabled)return console.error(...e)}withDebugLogger(e){return this._debugger=e,this}debug(...e){if(!this._isEnabled||!this._debugger)return;const r=[];e.forEach(n=>{if(typeof n=="function"){const i=n();r.push(i)}else r.push(n)}),this._debugger.print(...r)}}function he(t,e,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function a(d){try{l(n.next(d))}catch(p){o(p)}}function c(d){try{l(n.throw(d))}catch(p){o(p)}}function l(d){d.done?s(d.value):i(d.value).then(a,c)}l((n=n.apply(t,e||[])).next())})}var Lu;Lu=Gt.default;const WM="1.0",YM=20,Sb={id:fh(),connectionNumber:0},_C=()=>{};let EC=_C;function ZM(t,e=console){const r=[];let n,i,s,o,a,c,l,d=0,p=!1,m=0,g,v,S,C,w;const y={connected:!1,trace:(...f)=>{if(f.push(Date.now()),f[0]==="customEvent"&&f[2].type==="roomSessionId"){const u=c&&c[2].value.roomSessionId,h=f[2].value.roomSessionId;c=f,p&&h&&h!==u&&n?.close(),h&&(p=!0)}else f[0]==="customEvent"&&f[2].type==="clientId"?s=f:f[0]==="customEvent"&&f[2].type==="organizationId"?i=f:f[0]==="customEvent"&&f[2].type==="displayName"?o=f:f[0]==="customEvent"&&f[2].type==="userRole"?a=f:f[0]==="customEvent"&&f[2].type==="deviceId"?g=f:f[0]==="customEvent"&&f[2].type==="roomProduct"?v=f:f[0]==="customEvent"&&f[2].type==="roomMode"?S=f:f[0]==="customEvent"&&f[2].type==="sfuServer"?C=f:f[0]==="customEvent"&&f[2].type==="featureFlags"&&(w=f);n?.readyState===WebSocket.OPEN?(d=0,n.send(JSON.stringify(f))):f[0]==="getstats"?m<YM&&(m++,r.push(f)):f[0]==="customEvent"&&f[2].type==="insightsStats"||r.push(f),n?.readyState===WebSocket.CLOSED&&l&&setTimeout(()=>{n.readyState===WebSocket.CLOSED&&l&&y.connect()},1e3*d)},close:()=>{l=!1,n?.close()},connect:()=>{l=!0,d+=1,n?.close(),y.connected=!0,n=new WebSocket(t+window.location.pathname,WM),n.onerror=f=>{y.connected=!1,e.warn("[RTCSTATS] WebSocket error",f)},n.onclose=f=>{y.connected=!1,e.info(`[RTCSTATS] Closed ${f.code}`),EC()},n.onopen=()=>{for(Sb.connectionNumber++,n.send(JSON.stringify(["clientInfo",null,Sb])),i&&n.send(JSON.stringify(i)),s&&n.send(JSON.stringify(s)),c&&n.send(JSON.stringify(c)),o&&n.send(JSON.stringify(o)),a&&n.send(JSON.stringify(a)),g&&n.send(JSON.stringify(g)),S&&n.send(JSON.stringify(S)),v&&n.send(JSON.stringify(v)),C&&n.send(JSON.stringify(C)),w&&n.send(JSON.stringify(w));r.length;)n.send(JSON.stringify(r.shift()));m=0}}};return y}const sp=ZM(RC.RTCSTATS_URL||"wss://rtcstats.srv.whereby.com"),ju=JD(sp.trace,1e4,[""]);EC=ju?.resetDelta||_C;const bt={sendEvent:(t,e)=>{sp.trace("customEvent",null,{type:t,value:e})},sendAudioMuted:t=>{bt.sendEvent("audio_muted",{muted:t})},sendVideoMuted:t=>{bt.sendEvent("video_muted",{muted:t})},server:sp};function qM(t,e,r,n,i){const s=e.bytesReceived-(r?.bytesReceived||0),o=e.bytesSent-(r?.bytesSent||0);t.bitrateIn=8e3*s/n,t.bitrateOut=8e3*o/n,t.state=e.state,t.roundTripTime=e.currentRoundTripTime,t.requestsSent=e.requestsSent,t.responsesReceived=e.responsesReceived,t.requestsReceived=e.requestsReceived,t.responsesSent=e.responsesSent,t.availableOutgoingBitrate=e.availableOutgoingBitrate,t.availableIncomingBitrate=e.availableIncomingBitrate;const a=i.get(e.remoteCandidateId),c=i.get(e.localCandidateId);t.usingTurn=!1,c&&/relay/i.test(c.candidateType||"")&&(t.usingTurn=!0,t.turnProtocol=c.relayProtocol),a&&c&&(t.localEp=`${c.protocol}:${c.address||c.ip}:${c.port} ${c.candidateType} (${c.networkType})`,t.remoteEp=`${a.protocol}:${a.address||a.ip}:${a.port} ${a.candidateType}`)}function JM(t,e,r,n,i){if(t.codec)return;t.kind=e.kind||e.mediaType,t.ssrc=e.ssrc,t.direction=e.type==="inbound-rtp"?"in":"out";const s=e.codecId&&i.get(e.codecId);t.codec=s&&[s.mimeType,s.channels&&`${s.channels}ch`,s.clockRate,s.payloadType,e.encoderImplementation||e.decoderImplementation,s.sdpFmtpLine].filter(Boolean).join(" "),t.mid=e.mid,t.rid=e.rid}function KM(t,e,r,n,i){const s=(e.nackCount||0)-(r?.nackCount||0);if(t.nackCount=(t.nackCount||0)+s,t.nackRate=1e3*s/n,t.direction==="in"){const o=e.packetsReceived-(r?.packetsReceived||0);t.packetCount=(t.packetCount||0)+o,t.packetRate=1e3*o/n;const a=e.packetsLost-(r?.packetsLost||0);t.packetLossCount=(t.packetLossCount||0)+a,t.packetLossRate=1e3*a/n,t.lossRatio=1e3*(a/(a+o))/n;const c=e.bytesReceived-(r?.bytesReceived||0);t.byteCount=(t.byteCount||0)+c;let l=0;e.headerBytesReceived&&(l=e.headerBytesReceived-(r?.headerBytesReceived||0),t.headerByteCount=(t.headerByteCount||0)+l);const d=c+l;if(t.bitrate=8e3*d/n,t.mediaRatio=c/d,e.kind==="audio"){const g=(e.fecBytesReceived||0)-(r?.fecBytesReceived||0);t.fecRatio=g/c}const p=(e.jitterBufferDelay||0)-(r?.jitterBufferDelay||0),m=(e.jitterBufferEmittedCount||0)-(r?.jitterBufferEmittedCount||0);t.jitter=m?p/m:0}else{const o=e.packetsSent-(r?.packetsSent||0);t.packetCount=(t.packetCount||0)+o,t.packetRate=1e3*o/n;const a=e.bytesSent-(r?.bytesSent||0);t.byteCount=(t.byteCount||0)+a;let c=0;e.headerBytesSent&&(c=e.headerBytesSent-(r?.headerBytesSent||0),t.headerByteCount=(t.headerByteCount||0)+c);const l=a+c;t.bitrate=8e3*l/n,t.mediaRatio=a/l;const d=e.totalPacketSendDelay-(r?.totalPacketSendDelay||0);t.sendDelay=d/o;const p=e.retransmittedPacketsSent-(r?.retransmittedPacketsSent||0);if(t.retransRatio=1e3*(p/o)/n,e.remoteId){const m=i.get(e.remoteId);m&&(t.roundTripTime=m.roundTripTime||0,t.jitter=m.jitter||0,t.fractionLost=m.fractionLost||0)}}}function QM(t,e,r,n,i){const s=e.packetsDiscarded-(r?.packetsDiscarded||0);if(t.packetsDiscarded=(t.packetsDiscarded||0)+s,t.direction==="in"){const o=e.totalAudioEnergy-(r?.totalAudioEnergy||0),a=e.totalSamplesDuration-(r?.totalSamplesDuration||0);t.audioLevel=Math.sqrt(o/a);const c=e.totalSamplesReceived||0,l=e.concealmentEvents||0,d=c-(r?.totalSamplesReceived||0),p=e.concealedSamples||0,m=p-(r?.concealedSamples||0),g=(e.silentConcealedSamples||0)-(r?.silentConcealedSamples||0),v=(e.insertedSamplesForDeceleration||0)-(r?.insertedSamplesForDeceleration||0),S=(e.removedSamplesForAcceleration||0)-(r?.removedSamplesForAcceleration||0);t.audioSamples=c,t.audioConcealmentEvents=l,t.audioConcealedSamples=p,t.audioConcealment=m?m/d:0,t.audioSilentConcealment=g?g/d:0,t.audioAcceleration=S?S/d:0,t.audioDeceleration=v?v/d:0}}function $M(t,e,r,n,i){t.width=e.frameWidth,t.height=e.frameHeight,t.qualityLimitationReason=e.qualityLimitationReason||"";const s=e.pliCount-(r?.pliCount||0);t.pliCount=(t.pliCount||0)+s,t.pliRate=1e3*s/n;const o=e.firCount-(r?.firCount||0);if(t.firCount=(t.firCount||0)+o,t.firRate=1e3*o/n,t.direction==="in"){const a=e.keyFramesDecoded-(r?.keyFramesDecoded||0);t.kfCount=(t.kfCount||0)+a,t.kfRate=1e3*a/n;const c=e.framesDecoded-(r?.framesDecoded||0);t.frameCount=(t.frameCount||0)+c;const l=e.qpSum-(r?.qpSum||0);t.qpf=l/c,t.fps=c*1e3/n}else{const a=e.keyFramesEncoded-(r?.keyFramesEncoded||0);t.kfCount=(t.kfCount||0)+a,t.kfRate=1e3*a/n;const c=e.framesEncoded-(r?.framesEncoded||0);t.frameCount=(t.frameCount||0)+c;const l=e.qpSum-(r?.qpSum||0);t.qpf=l/c,t.fps=c*1e3/n;const d=e.totalEncodeTime-(r?.totalEncodeTime||0);if(t.encodeTime=d/c,e.mediaSourceId){const p=i.get(e.mediaSourceId);p&&(t.sourceWidth=p.width||0,t.sourceHeight=p.height||0,t.sourceFps=p.framesPerSecond||0)}}}let Tl=[],eN=0;const PC=new WeakMap,TC=t=>{Tl=Tl.filter(e=>e!==t)};if(window.RTCPeerConnection){let t=function(r){const n=new e(r);Tl.push(n),PC.set(n,{index:eN++});const i=()=>{n.connectionState==="closed"&&(TC(n),n.removeEventListener("connectionstatechange",i))};return n.addEventListener("connectionstatechange",i),n};const e=window.RTCPeerConnection;t.prototype=e.prototype,window.RTCPeerConnection=t}const tN=()=>Tl,rN=t=>{var e;return(e=PC.get(t))===null||e===void 0?void 0:e.index},wb=new WeakMap;let nN=0;const iN=()=>Promise.all(tN().map(t=>he(void 0,void 0,void 0,function*(){let e=wb.get(t);e||(e={ssrcToTrackId:{}},wb.set(t,e));try{const r=yield t.getStats();let n=null;if(r.forEach(i=>{if((i.type==="inbound-rtp"||i.type==="outbound-rtp")&&!i.trackIdentifier&&!e.ssrcToTrackId[i.ssrc]){if(i.mediaSourceId){const s=r.get(i.mediaSourceId);s&&s.trackIdentifier&&(e.ssrcToTrackId[i.ssrc]=s.trackIdentifier)}if(!e.ssrcToTrackId[i.ssrc]&&i.trackId){const s=r.get(i.trackId);s&&s.trackIdentifier&&(e.ssrcToTrackId[i.ssrc]=s.trackIdentifier)}e.ssrcToTrackId[i.ssrc]||(n||(n=[]),n.push(i.ssrc))}}),n){const i=[...t.getSenders(),...t.getReceivers()];(yield Promise.all(i.map(o=>o.getStats()))).forEach((o,a)=>{o.forEach(c=>{(c.type==="inbound-rtp"||c.type==="outbound-rtp")&&(e.ssrcToTrackId[c.ssrc]=i[a].track.id)})}),n.forEach(o=>{nN++,e.ssrcToTrackId[o]||(e.ssrcToTrackId[o]="?"+o)})}return[t,r,e]}catch(r){return bt.sendEvent("trackSsrcLookupFailed",{name:r?.name,cause:r?.cause,message:r?.message}),[t,[],e]}}))),sN=(t,e,r,n,i,s)=>{let o=t[n];o||(o={tracks:{},startTime:e,updated:e},t[n]=o),o.updated=e;let a=o.tracks[i];a||(a={ssrcs:{},startTime:e,updated:e},o.tracks[i]=a),a.updated=e;let c=a.ssrcs[s];return c||(c={startTime:e,updated:e,pcIndex:r},a.ssrcs[s]=c),c.updated=e,c},oN=(t,e)=>{Object.entries(t).forEach(([r,n])=>{n.updated<e?delete t[r]:Object.entries(n.tracks).forEach(([i,s])=>{s.updated<e?delete n.tracks[i]:Object.entries(s.ssrcs).forEach(([o,a])=>{a.updated<e&&delete s.ssrcs[o]})})})};function IC(t,e,r){return he(this,arguments,void 0,function*(n,{logger:i,interval:s},o){const a=IC.bind(null,n,{interval:s,logger:i});try{const c=n.getClients(),l=c.find(m=>m.isLocalClient&&!m.isPresentation)||{id:"unknown"};let d=n.statsByView[l.id];if(d||(d={tracks:{},candidatePairs:{},pressure:null},n.statsByView[l.id]=d),d.pressure=n.lastPressureObserverRecord,Date.now()-n.lastUpdateTime<400){if(o)return n.statsByView;n.subscriptions.forEach(m=>{var g;return(g=m.onUpdatedStats)===null||g===void 0?void 0:g.call(m,n.statsByView,c)}),n.nextTimeout=setTimeout(a,s);return}if(n.lastUpdateTime=Date.now(),(yield iN()).forEach(([m,g,v])=>{const S=rN(m);m.connectionState==="closed"&&(g=new Map,TC(m)),v.previousSSRCs=v.currentSSRCs||{},v.currentSSRCs={},g.forEach(C=>{var w,y,f;if(C.type==="candidate-pair"&&/inprogress|succeeded/.test(C.state)){const u=(w=v._oldReport)===null||w===void 0?void 0:w.get(C.id),h=u?C.timestamp-u.timestamp:s,b=S+":"+C.id;let A=d.candidatePairs[b];A||(A={startTime:n.lastUpdateTime,id:b},d.candidatePairs[b]=A),qM(A,C,u,h,g),A.lastRtcStatsTime=n.lastUpdateTime}if(C.type==="inbound-rtp"||C.type==="outbound-rtp"){const u=C.mediaType||C.kind,h=C.ssrc;let b=C.trackIdentifier||v.ssrcToTrackId[h],A=(y=v._oldReport)===null||y===void 0?void 0:y.get(C.id);if(A&&A.mediaSourceId!==C.mediaSourceId){const P=g.get(C.mediaSourceId);P&&P.trackIdentifier&&(b=P.trackIdentifier,v.ssrcToTrackId[h]=b)}const R=c.find(P=>{var T;return((T=P[u].track)===null||T===void 0?void 0:T.id)===b})||l;if(!C.trackIdentifier&&v.ssrcToTrackId[h]&&(!((f=R[u].track)===null||f===void 0)&&f.id)&&R[u].track.id!==v.ssrcToTrackId[h]&&(b=R[u].track.id,v.ssrcToTrackId[h]=R[u].track.id),v.currentSSRCs[h]=R.id,A){const P=g.get(C.transportId),T=v._oldReport.get(A.transportId);(T&&P?.selectedCandidatePairId!==T.selectedCandidatePairId||C.bytesReceived<A.bytesReceived||C.bytesSent<A.bytesSent)&&(A=null)}const _=A?C.timestamp-A.timestamp:s,E=sN(n.statsByView,n.lastUpdateTime,S,R.id,b,h);JM(E,C,A,_,g),KM(E,C,A,_,g),u==="video"&&$M(E,C,A,_,g),u==="audio"&&QM(E,C,A,_,g)}}),v._oldReport=g,Object.keys(v.previousSSRCs).filter(C=>!v.currentSSRCs[C]).forEach(C=>{const w=v.previousSSRCs[C];if(w){const y=n.statsByView[w];y&&Object.values(y.tracks).forEach(f=>{f.ssrcs[C]&&delete f.ssrcs[C]})}})}),oN(n.statsByView,n.lastUpdateTime),Object.entries(d?.candidatePairs||{}).forEach(([m,g])=>{const v=g.lastRtcStatsTime===n.lastUpdateTime;g.active=v,v||(g.state="old/inactive",g.inactiveFromTime?n.lastUpdateTime-g.inactiveFromTime>4e3&&delete d.candidatePairs[m]:g.inactiveFromTime=n.lastUpdateTime)}),o)return n.statsByView;n.subscriptions.forEach(m=>{var g;return(g=m.onUpdatedStats)===null||g===void 0?void 0:g.call(m,n.statsByView,c)})}catch(c){i.warn(c),n.numFailedStatsReports++,bt.sendEvent("collectStatsFailed",{name:c?.name,cause:c?.cause,message:c?.message})}n.nextTimeout=setTimeout(a,s)})}const aN={};function cN(t,e=aN,r=window.document){t.forEach(({hostnamePattern:n,token:i})=>{const s=`${n}-${i}`;if(!e[s]&&n.test(r.location.hostname)){const o=r.createElement("meta");o.httpEquiv="origin-trial",o.content=i,r.head.append(o),e[s]=!0}})}const lN={sampleRate:1,originTrials:[{hostnamePattern:/hereby\.dev/,token:"AkSNPHJw6EK08X0QU7kORnK9NABzRLAC7dqfXOwk5JwFAQG4Ey7WxLXxsnhieCgC1QHUdevE2EFICy7uBGDANwUAAABqeyJvcmlnaW4iOiJodHRwczovL2hlcmVieS5kZXY6NDQ0MyIsImZlYXR1cmUiOiJDb21wdXRlUHJlc3N1cmVfdjIiLCJleHBpcnkiOjE3MTY5NDA3OTksImlzU3ViZG9tYWluIjp0cnVlfQ=="},{hostnamePattern:/whereby\.com/,token:"Asc2wu8KpSx648i932NICteQDFcB05yl2QUUSHD7AQo8JGP2Fp6FF91TvYVJBsKGzLMH349rysPw5q9tqPC/PAUAAABqeyJvcmlnaW4iOiJodHRwczovL3doZXJlYnkuY29tOjQ0MyIsImZlYXR1cmUiOiJDb21wdXRlUHJlc3N1cmVfdjIiLCJleHBpcnkiOjE3MTY5NDA3OTksImlzU3ViZG9tYWluIjp0cnVlfQ=="}]};function dN(t,{sampleRate:e,originTrials:r}=lN,n=globalThis.window){cN(r);let i;if("PressureObserver"in n)return i=new n.PressureObserver(t,{sampleRate:e}),i.observe("cpu",{sampleInterval:e*1e3}),{stop:()=>{i.unobserve("cpu")}}}const wh={currentMonitor:null,getClients:()=>[],lastUpdateTime:0,statsByView:{},subscriptions:[],numFailedStatsReports:0},uN={interval:2e3,logger:new Rn},Cb=()=>{var t;return(t=wh.currentMonitor)===null||t===void 0?void 0:t.getUpdatedStats()},fN=t=>wh.getClients=t;function pN(t,{interval:e,logger:r}){const n=IC.bind(null,t,{interval:e,logger:r});let i;try{i=dN(s=>t.lastPressureObserverRecord=s.pop())}catch(s){r.warn("Failed to observe CPU pressure",s)}return setTimeout(n,e),{getUpdatedStats:()=>n(!0),stop:()=>{clearTimeout(t.nextTimeout),i&&i.stop()}}}function hN(t,e=uN,r=wh){return r.subscriptions.push(t),r.currentMonitor||(r.currentMonitor=pN(r,e)),{stop(){var n;r.subscriptions=r.subscriptions.filter(i=>i!==t),r.subscriptions.length||((n=r.currentMonitor)===null||n===void 0||n.stop(),r.currentMonitor=null)}}}var Bu;const OC=(Bu=Gt.default)!==null&&Bu!==void 0?Bu:Gt,mN=new Rn,op=OC.browserDetails.browser,Fu=OC.browserDetails.version;function gN(t,e){var r,n;try{const i=Pr.parse(t);if(Array.isArray(i?.media)){const o=i.media.find(c=>c.type==="audio");if(Array.isArray(o?.rtp)){const c=o.rtp;for(let l=0;l<c.length;l++)if(e&&c[l].codec==="red"){const d=(r=o.payloads)===null||r===void 0?void 0:r.split(" "),p=d?.indexOf(""+c[l].payload);p&&p!==-1&&p>=0&&(d?.unshift(d.splice(p,1)[0]),o.payloads=d?.join(" "))}}const a=i.media.find(c=>c.type==="video");if(Array.isArray(a?.rtp)){const c=a.rtp;for(let l=0;l<c.length;l++)if(c[l].codec==="VP9"){const d=(n=a.payloads)===null||n===void 0?void 0:n.split(" "),p=d?.indexOf(""+c[l].payload);p&&p!==-1&&p>=0&&(d?.unshift(d.splice(p,1)[0]),a.payloads=d?.join(" "))}}}return Pr.write(i)}catch(i){mN.error("setCodecPreferenceSDP error:",i)}}function vN(t){try{const e=Pr.parse(t);return e.media.forEach(r=>{const n={};r.payloads&&(r.payloads=(""+r.payloads).split(" ").filter(a=>!n[a]&&(n[a]=!0)).join(" "));const i={};r.rtp=r.rtp.filter(a=>!a.payload||n[a.payload]&&!i[a.payload]&&(i[a.payload]=!0));const s={};r.fmtp&&(r.fmtp=r.fmtp.filter(a=>!a.payload||n[a.payload]&&!s[a.payload]&&(s[a.payload]=!0)));const o={};r.rtcpFb&&(r.rtcpFb=r.rtcpFb.filter(a=>!a.payload||n[a.payload]&&!o[a.payload+a.type+a.subtype]&&(o[a.payload+a.type+a.subtype]=!0)))}),Pr.write(e)}catch{}return t}function bN(t){return hr.splitSections(t).map(e=>{if(hr.getKind(e)!=="video")return e;const r=hr.matchPrefix(e,"a=rtpmap:").map(l=>hr.parseRtpMap(l)).filter(l=>/h264/i.test(l.name)).map(l=>""+l.payloadType);if(!r.length)return e;const n=hr.matchPrefix(e,"m=video")[0],i=/(\s\d+)+$/i.exec(n),s=i?i[0]:"",a=[...s.split(" ").filter(l=>l&&!r.includes(l)),...r].join(" "),c=n.replace(s," "+a);return e.replace(n,c)}).join("")}function Ab(t,e){let r=t.match(/a=ssrc-group:FID (\d+) (\d+)\r\n/),n=e.match(/a=ssrc-group:FID (\d+) (\d+)\r\n/);r||(r=t.match(/a=ssrc:(\d+) cname:(.*)\r\n/g)[1].match(/a=ssrc:(\d+)/),n=e.match(/a=ssrc:(\d+) cname:(.*)\r\n/g)[1].match(/a=ssrc:(\d+)/));for(let i=1;i<r.length;i++)e=e.replace(new RegExp(n[i],"g"),r[i]);return e}function yN(t){return op!=="safari"&&(op!=="firefox"||Fu&&Fu>=63||Fu===60)?t:hr.splitLines(t.trim()).filter(e=>e.startsWith("a=extmap:")?hr.parseExtmap(e).uri!=="urn:ietf:params:rtp-hdrext:sdes:mid":!0).join(`\r
171
+ `)+`\r
172
+ `}function Rb(t){return op!=="firefox"?t:hr.splitLines(t.trim()).map(e=>e.startsWith("a=msid-semantic:")?"a=msid-semantic: WMS *":e).join(`\r
173
+ `)+`\r
174
+ `}function SN(t,e,r=!1,n=!1){var i,s;try{const o=Pr.parse(t);if(!((i=o?.ext)===null||i===void 0)&&i.length&&o.ext.length>0||o?.media.length<1)return t;const a=o?.media.flatMap(l=>l.ext||[]),c=((s=a.find(l=>l.uri===e))===null||s===void 0?void 0:s.value)||[...new Set([0,15,...a.map(l=>l.value)])].sort((l,d)=>l-d).find((l,d,p)=>l+1!==p[d+1])+1;return o.media.forEach(l=>{var d;(r&&l.type==="audio"||n&&l.type==="video")&&(!((d=l.ext)===null||d===void 0)&&d.find(p=>p.uri===e)||(Array.isArray(l.ext)?l.ext.push({value:c,uri:e}):l.ext=[{value:c,uri:e}]))}),Pr.write(o)}catch(o){console.error("Error during addAbsCaptureTimeExtMap: ",o)}return t}function wN(t){return SN(t,"http://www.webrtc.org/experiments/rtp-hdrext/abs-capture-time",!0,!0)}function zu(t,e,r=console){const n=t.getSenders().find(s=>s.track&&s.track.kind==="video");if(!n)return Promise.resolve();const i=n.getParameters();return i.encodings&&i.encodings.length===0?Promise.resolve():(i.encodings||(i.encodings=[{}]),e===0?delete i.encodings[0].maxBitrate:i.encodings[0].maxBitrate=e*1e3,n.setParameters(i).catch(s=>{r.error("setParameters err: ",s)}))}var Hu;const CN=(Hu=Gt.default)!==null&&Hu!==void 0?Hu:Gt,Vu=new Rn;class AN{constructor({peerConnectionId:e,bandwidth:r,deprioritizeH264Encoding:n}){this.peerConnectionId=e,this.relayCandidateSeen=!1,this.serverReflexiveCandidateSeen=!1,this.publicHostCandidateSeen=!1,this.ipv6HostCandidateSeen=!1,this.ipv6HostCandidateTeredoSeen=!1,this.ipv6HostCandidate6to4Seen=!1,this.mdnsHostCandidateSeen=!1,this.pc=null,this.wasEverConnected=!1,this.connectionStatus=null,this.stats={totalSent:0,totalRecv:0},this.bandwidth=r||0,this.pending=[],this.isOperationPending=!1,this.streamIds=[],this.streams=[],this.earlyIceCandidates=[],this.afterConnected=new Promise(i=>{this.registerConnected=i}),this.offerOptions={offerToReceiveAudio:!0,offerToReceiveVideo:!0},this._deprioritizeH264Encoding=n}setAndGetPeerConnection({clientId:e,constraints:r,peerConnectionConfig:n,shouldAddLocalVideo:i}){return this.peerConnectionConfig=n,this.shouldAddLocalVideo=i,this.clientId=e,this.pc=new RTCPeerConnection(n),this.signalingState=this.pc.signalingState,this.pc.addEventListener("signalingstatechange",()=>{if(this.signalingState!==this.pc.signalingState&&(this.signalingState=this.pc.signalingState,this.pc.signalingState==="stable")){this.isOperationPending=!1;const s=this.pending.shift();s&&s.apply()}}),this.pc}addStream(e){this.streamIds.push(e.id),this.streams.push(e),RTCPeerConnection.prototype.addTrack?(e.getAudioTracks().forEach(r=>{this.pc.addTrack(r,e)}),e.getVideoTracks().forEach(r=>{this.pc.addTrack(r,e)})):this.pc.addStream(e)}addTrack(e,r){r||(r=this.streams[0]),r?.addTrack(e),this.pc.addTrack(e,r)}removeTrack(e){this.streams[0].removeTrack(e);const n=this.pc.getSenders().find(i=>i.track===e);n&&this.pc.removeTrack(n)}removeStream(e){for(let r=0;r<this.streamIds.length;r++)this.streamIds[r]===e.id&&(this.streamIds.splice(r,1),this.streams.splice(r,1));this.pc&&(this.pc.removeTrack?e.getTracks().forEach(r=>{const n=this.pc.getSenders().find(i=>i.track===r);n&&this.pc.removeTrack(n)}):this.pc.removeStream&&this.pc.removeStream(e))}_setRemoteDescription(e){return this._deprioritizeH264Encoding&&(e.sdp=bN(e.sdp)),this.srdComplete=this.pc.setRemoteDescription(e),this.srdComplete.then(()=>{this.earlyIceCandidates.forEach(r=>this.pc.addIceCandidate(r)),this.earlyIceCandidates=[]})}handleOffer(e){if(!this.canModifyPeerConnection())return new Promise(s=>{this.pending.push(()=>this.handleOffer(e).then(s))});this.isOperationPending=!0;let r=e.sdp;r=yN(r),r=Rb(r);const n={type:e.type,sdp:r};let i;return this._setRemoteDescription(n).then(()=>this.pc.createAnswer()).then(s=>(i=s,this.pc.setLocalDescription(s))).then(()=>zu(this.pc,this.bandwidth)).then(()=>i)}handleAnswer(e){const r=Rb(e.sdp),n={type:e.type,sdp:r};return this._setRemoteDescription(n).then(()=>zu(this.pc,this.bandwidth),i=>{Vu.warn("Could not set remote description from remote answer: ",i)})}addIceCandidate(e){if(!this.srdComplete){this.earlyIceCandidates.push(e);return}this.srdComplete.then(()=>{this.pc.signalingState!=="closed"&&(CN.browserDetails.browser==="safari"&&e&&e.candidate===""||this.pc.addIceCandidate(e).catch(r=>{Vu.warn("Failed to add ICE candidate ('%s'): %s",e?e.candidate:null,r)}))})}canModifyPeerConnection(){return this.pc.signalingState==="stable"&&!this.isOperationPending}close(){const e=this.pc;if(e){e.oniceconnectionstatechange=null,e.onicecandidate=null,e.ontrack=null;try{e.close()}catch(r){Vu.warn("failures during close of session",r)}}}hasConnectedPeerConnection(){return this.pc&&this.pc.connectionState==="connected"}replaceTrack(e,r){const n=this.pc;if(!n)return!1;const i=n.getSenders();if(e||(e=(i.find(o=>o.track&&o.track.kind===r.kind)||{}).track),window.RTCRtpSender&&window.RTCRtpSender.prototype.replaceTrack){if(e){const a=()=>{for(let g=0;g<i.length;g++){const S=i[g].track;if(S?.id===r.id)return Promise.resolve(r);if(S?.id===e.id)return i[g].replaceTrack(r)}return null};let c=a();if(c)return c;let l=null,d=null;c=new Promise((g,v)=>{l=g,d=v});let p=0,m=setInterval(()=>he(this,void 0,void 0,function*(){const g=a();if(!g){3<++p&&(clearInterval(m),m=null,d("No sender track to replace"));return}clearInterval(m),m=null;const v=yield g;l(v)}),1e3);return c}const o=this.streams.find(a=>a.getTracks().find(c=>c.id===r.id))||this.streams[0];return o?n.addTrack(r,o):Promise.reject(new Error("replaceTrack: No stream?"))}if(!this.canModifyPeerConnection()){this.pending.push(()=>{this.replaceTrack(e,r)});return}this.isOperationPending=!0;const s=n.onnegotiationneeded;return n.onnegotiationneeded=null,this.removeTrack(e),this.addTrack(r),setTimeout(()=>{n.onnegotiationneeded=s},0),n.localDescription.type==="offer"?n.createOffer().then(o=>(o.sdp=Ab(n.localDescription.sdp,o.sdp),n.setLocalDescription(o))).then(()=>this._setRemoteDescription(n.remoteDescription)):this._setRemoteDescription(n.remoteDescription).then(()=>n.createAnswer()).then(o=>(o.sdp=Ab(n.localDescription.sdp,o.sdp),n.setLocalDescription(o)))}changeBandwidth(e){if(e!==this.bandwidth){if(!this.canModifyPeerConnection()){this.pending.push(()=>this.changeBandwidth(e));return}this.bandwidth=e,!(!this.pc.localDescription||this.pc.localDescription.type==="")&&zu(this.pc,this.bandwidth)}}setAudioOnly(e,r=[]){this.pc.getTransceivers().filter(n=>{var i,s,o,a,c,l;return n?.direction!=="recvonly"&&((s=(i=n?.receiver)===null||i===void 0?void 0:i.track)===null||s===void 0?void 0:s.kind)==="video"&&!r.includes((a=(o=n?.receiver)===null||o===void 0?void 0:o.track)===null||a===void 0?void 0:a.id)&&!r.includes((l=(c=n?.sender)===null||c===void 0?void 0:c.track)===null||l===void 0?void 0:l.id)}).forEach(n=>{n.direction=e?"sendonly":"sendrecv"})}}const Il=400;var Gu;const _b=(Gu=Gt.default)!==null&&Gu!==void 0?Gu:Gt;function RN(t){if(_b.browserDetails.browser!=="chrome"||_b.browserDetails.browser<58||t.signalingState==="closed")return Promise.resolve(!1);const e=t.getSenders().some(n=>n.track&&n.track.kind==="audio"),r=t.getReceivers().some(n=>n.track&&n.track.kind==="audio");return t.getStats(null).then(n=>{let i=!1;return n.forEach(s=>{s.type==="outbound-rtp"&&(s.kind==="audio"||s.mediaType==="audio")&&e?s.bytesSent===0&&(i="outbound"):s.type==="inbound-rtp"&&(s.kind==="audio"||s.mediaType==="audio")&&r&&s.bytesReceived===0&&(i="inbound")}),i})}const wi={FETCH_MEDIASERVER_CONFIG:"fetch_mediaserver_config",START_SCREENSHARE:"start_screenshare",STOP_SCREENSHARE:"stop_screenshare"},dt={AUDIO_ENABLED:"audio_enabled",CLIENT_LEFT:"client_left",MEDIASERVER_CONFIG:"mediaserver_config",NEW_CLIENT:"new_client",SCREENSHARE_STARTED:"screenshare_started",SCREENSHARE_STOPPED:"screenshare_stopped",ROOM_JOINED:"room_joined",VIDEO_ENABLED:"video_enabled"},On={ICE_CANDIDATE:"ice_candidate",ICE_END_OF_CANDIDATES:"ice_endofcandidates",READY_TO_RECEIVE_OFFER:"ready_to_receive_offer",SDP_ANSWER:"sdp_answer",SDP_OFFER:"sdp_offer"},Ol={PENDING_CLIENT_LEFT:"pending_client_left",MEDIA_QUALITY_CHANGED:"media_quality_changed"},Fr={CLIENT_CONNECTION_STATUS_CHANGED:"client_connection_status_changed",STREAM_ADDED:"stream_added",RTC_MANAGER_CREATED:"rtc_manager_created",RTC_MANAGER_DESTROYED:"rtc_manager_destroyed",LOCAL_STREAM_TRACK_ADDED:"local_stream_track_added",LOCAL_STREAM_TRACK_REMOVED:"local_stream_track_removed"},Dn={CONNECTING:"connecting",CONNECTION_FAILED:"connection_failed",CONNECTION_SUCCESSFUL:"connection_successful",CONNECTION_DISCONNECTED:"connection_disconnected"},Eb="0",Pb={CAMERA:"camera",SCREEN_SHARE:"screen_share"};class _N{constructor(e,r){this.id=""+e,this.type=r,this.isEnabled=!0,this.hasSupportForAutoSuperSize=!1,this.isAudioEnabled=!0,this.isVideoEnabled=!0,this.status=Dn.CONNECTING,this.stream=null,this.streamId=null}setup(e){return this.stream=e,this.streamId=e.id,this.setVideoEnabled(this.isVideoEnabled&&e.getVideoTracks().length>0),this.setAudioEnabled(this.isAudioEnabled&&e.getAudioTracks().length>0),this}setStatus(e){return this.status=e,this}setVideoEnabled(e){this.isVideoEnabled=e,this.stream&&this.stream.getVideoTracks().forEach(r=>{r.enabled=e})}setAudioEnabled(e){this.isAudioEnabled=e,this.stream&&this.stream.getAudioTracks().forEach(r=>{r.enabled=e})}static getCameraId(){return Eb}static getTypeFromId(e){return""+e===Eb?Pb.CAMERA:Pb.SCREEN_SHARE}}const Tb="[a-fA-F\\d:]",Ai=t=>t&&t.includeBoundaries?`(?:(?<=\\s|^)(?=${Tb})|(?<=${Tb})(?=\\s|$))`:"",yn="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",Rt="[a-fA-F\\d]{1,4}",hd=`
175
+ (?:
176
+ (?:${Rt}:){7}(?:${Rt}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
177
+ (?:${Rt}:){6}(?:${yn}|:${Rt}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4
178
+ (?:${Rt}:){5}(?::${yn}|(?::${Rt}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4
179
+ (?:${Rt}:){4}(?:(?::${Rt}){0,1}:${yn}|(?::${Rt}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4
180
+ (?:${Rt}:){3}(?:(?::${Rt}){0,2}:${yn}|(?::${Rt}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4
181
+ (?:${Rt}:){2}(?:(?::${Rt}){0,3}:${yn}|(?::${Rt}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
182
+ (?:${Rt}:){1}(?:(?::${Rt}){0,4}:${yn}|(?::${Rt}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
183
+ (?::(?:(?::${Rt}){0,5}:${yn}|(?::${Rt}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
184
+ )(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
185
+ `.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),EN=new RegExp(`(?:^${yn}$)|(?:^${hd}$)`),PN=new RegExp(`^${yn}$`),TN=new RegExp(`^${hd}$`),xl=t=>t&&t.exact?EN:new RegExp(`(?:${Ai(t)}${yn}${Ai(t)})|(?:${Ai(t)}${hd}${Ai(t)})`,"g");xl.v4=t=>t&&t.exact?PN:new RegExp(`${Ai(t)}${yn}${Ai(t)}`,"g");xl.v6=t=>t&&t.exact?TN:new RegExp(`${Ai(t)}${hd}${Ai(t)}`,"g");var _t={CONNECTION_BLOCKED_BY_NETWORK:"connection_blocked_by_network",ICE_IPV6_SEEN:"ice_ipv6_seen",ICE_MDNS_SEEN:"ice_mdns_seen",ICE_NO_PUBLIC_IP_GATHERED:"ice_no_public_ip_gathered",ICE_NO_PUBLIC_IP_GATHERED_3SEC:"ice_no_public_ip_gathered_3sec",ICE_RESTART:"ice_restart",MICROPHONE_NOT_WORKING:"microphone_not_working",MICROPHONE_STOPPED_WORKING:"microphone_stopped_working",CAMERA_STOPPED_WORKING:"camera_stopped_working",NEW_PC:"new_pc",SFU_CONNECTION_OPEN:"sfu_connection_open",SFU_CONNECTION_CLOSED:"sfu_connection_closed",SFU_CONNECTION_INFO:"sfu_connection_info",DOMINANT_SPEAKER:"dominant_speaker",PC_SLD_FAILURE:"pc_sld_failure",PC_ON_ANSWER_FAILURE:"pc_on_answer_failure",PC_ON_OFFER_FAILURE:"pc_on_offer_failure"};class xC extends Error{constructor(e){super(e.message),this.name="AssertionError",this.code="ERR_ASSERTION",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,Error.captureStackTrace&&Error.captureStackTrace(this,e.stackStartFn)}}function IN(t,e,r,n){if(!r){let i=!1;if(e===0)i=!0,n="No value argument passed to `assert.ok()`";else if(n instanceof Error)throw n;const s=new xC({actual:r,expected:!0,message:n,operator:"==",stackStartFn:t});throw s.generatedMessage=i,s}}function DC(t){throw t.message instanceof Error?t.message:new xC(t)}function Ch(...t){IN(Ch,t.length,...t)}const It={fail:t=>{DC({actual:"fail()",expected:"fail() should not be called",message:t,operator:"fail",stackStartFn:It.fail})},ok:Ch};It.notEqual=function t(e,r,n){if(arguments.length<2)throw new Error("'actual' and 'expected' arguments are required");e==r&&DC({actual:e,expected:r,message:n,operator:"!=",stackStartFn:t})};It.ok=Ch;const Pe=new Zk.Logger("Safari17"),ON="Safari17",Ib={OS:1024,MIS:1024};class Ah extends Kk.HandlerInterface{static createFactory(){return()=>new Ah}constructor(){super(),this._closed=!1,this._mapMidTransceiver=new Map,this._sendStream=new MediaStream,this._hasDataChannelMediaSection=!1,this._nextSendSctpStreamId=0,this._transportReady=!1}get name(){return ON}close(){if(Pe.debug("close()"),!this._closed){if(this._closed=!0,this._pc)try{this._pc.close()}catch{}this.emit("@close")}}getNativeRtpCapabilities(){return he(this,void 0,void 0,function*(){Pe.debug("getNativeRtpCapabilities()");const e=new RTCPeerConnection({iceServers:[],iceTransportPolicy:"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require"});try{e.addTransceiver("audio"),e.addTransceiver("video");const r=yield e.createOffer();try{e.close()}catch{}const n=Pr.parse(r.sdp),i=lc.extractRtpCapabilities({sdpObject:n});return qk.addNackSuppportForOpus(i),i}catch(r){try{e.close()}catch{}throw r}})}getNativeSctpCapabilities(){return he(this,void 0,void 0,function*(){return Pe.debug("getNativeSctpCapabilities()"),{numStreams:Ib}})}run({direction:e,iceParameters:r,iceCandidates:n,dtlsParameters:i,sctpParameters:s,iceServers:o,iceTransportPolicy:a,additionalSettings:c,proprietaryConstraints:l,extendedRtpCapabilities:d}){this.assertNotClosed(),Pe.debug("run()"),this._direction=e,this._remoteSdp=new Qk.RemoteSdp({iceParameters:r,iceCandidates:n,dtlsParameters:i,sctpParameters:s}),this._sendingRtpParametersByKind={audio:xs.getSendingRtpParameters("audio",d),video:xs.getSendingRtpParameters("video",d)},this._sendingRemoteRtpParametersByKind={audio:xs.getSendingRemoteRtpParameters("audio",d),video:xs.getSendingRemoteRtpParameters("video",d)},i.role&&i.role!=="auto"&&(this._forcedLocalDtlsRole=i.role==="server"?"client":"server"),this._pc=new RTCPeerConnection(Object.assign({iceServers:o??[],iceTransportPolicy:a??"all",bundlePolicy:"max-bundle",rtcpMuxPolicy:"require"},c),l),this._pc.addEventListener("icegatheringstatechange",()=>{this.emit("@icegatheringstatechange",this._pc.iceGatheringState)}),this._pc.connectionState?this._pc.addEventListener("connectionstatechange",()=>{this.emit("@connectionstatechange",this._pc.connectionState)}):this._pc.addEventListener("iceconnectionstatechange",()=>{switch(Pe.warn("run() | pc.connectionState not supported, using pc.iceConnectionState"),this._pc.iceConnectionState){case"checking":{this.emit("@connectionstatechange","connecting");break}case"connected":case"completed":{this.emit("@connectionstatechange","connected");break}case"failed":{this.emit("@connectionstatechange","failed");break}case"disconnected":{this.emit("@connectionstatechange","disconnected");break}case"closed":{this.emit("@connectionstatechange","closed");break}}})}updateIceServers(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),Pe.debug("updateIceServers()");const r=this._pc.getConfiguration();r.iceServers=e,this._pc.setConfiguration(r)})}restartIce(e){return he(this,void 0,void 0,function*(){if(this.assertNotClosed(),Pe.debug("restartIce()"),this._remoteSdp.updateIceParameters(e),!!this._transportReady)if(this._direction==="send"){const r=yield this._pc.createOffer({iceRestart:!0});Pe.debug("restartIce() | calling pc.setLocalDescription() [offer:%o]",r),yield this._pc.setLocalDescription(r);const n={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("restartIce() | calling pc.setRemoteDescription() [answer:%o]",n),yield this._pc.setRemoteDescription(n)}else{const r={type:"offer",sdp:this._remoteSdp.getSdp()};Pe.debug("restartIce() | calling pc.setRemoteDescription() [offer:%o]",r),yield this._pc.setRemoteDescription(r);const n=yield this._pc.createAnswer();Pe.debug("restartIce() | calling pc.setLocalDescription() [answer:%o]",n),yield this._pc.setLocalDescription(n)}})}getTransportStats(){return he(this,void 0,void 0,function*(){return this.assertNotClosed(),this._pc.getStats()})}send(e){return he(this,arguments,void 0,function*({track:r,encodings:n,codecOptions:i,codec:s,onRtpSender:o}){var a;this.assertNotClosed(),this.assertSendDirection(),Pe.debug("send() [kind:%s, track.id:%s]",r.kind,r.id);const c=cb.clone(this._sendingRtpParametersByKind[r.kind]);c.codecs=xs.reduceCodecs(c.codecs,s),n&&n.length>1&&n.every(({rid:y})=>!y)&&(n=n.map((y,f)=>(y.rid=`r${f}`,y))),n&&(c.encodings||(c.encodings=[]),Object.assign(c.encodings,n));const l=$k.parse((n??[{}])[0].scalabilityMode);if(c.encodings&&c.encodings.length>1&&(c.codecs[0].mimeType.toLowerCase()==="video/vp8"||c.codecs[0].mimeType.toLowerCase()==="video/h264"))for(const y of c.encodings)y.scalabilityMode?y.scalabilityMode=`L1T${l.temporalLayers}`:y.scalabilityMode="L1T3";const d=cb.clone(this._sendingRemoteRtpParametersByKind[r.kind]);d.codecs=xs.reduceCodecs(d.codecs,s);const p=this._remoteSdp.getNextMediaSectionIdx(),m=this._pc.addTransceiver(r,{direction:"sendonly",streams:[this._sendStream],sendEncodings:r.kind==="video"?n:void 0});o&&o(m.sender);const g=yield this._pc.createOffer(),v=Pr.parse(g.sdp);let S=v.media[p.idx];this._transportReady||(yield this.setupTransport({localDtlsRole:(a=this._forcedLocalDtlsRole)!==null&&a!==void 0?a:"client",localSdpObject:v})),Pe.debug("send() | calling pc.setLocalDescription() [offer:%o]",g),yield this._pc.setLocalDescription(g);const C=m.mid;c.mid=C,S=v.media[p.idx],c.rtcp.cname=lc.getCname({offerMediaObject:S}),this._remoteSdp.send({offerMediaObject:S,reuseMid:p.reuseMid,offerRtpParameters:c,answerRtpParameters:d,codecOptions:i});const w={type:"answer",sdp:this._remoteSdp.getSdp()};return Pe.debug("send() | calling pc.setRemoteDescription() [answer:%o]",w),yield this._pc.setRemoteDescription(w),this._mapMidTransceiver.set(C,m),{localId:C,rtpParameters:c,rtpSender:m.sender}})}stopSending(e){return he(this,void 0,void 0,function*(){if(this.assertSendDirection(),this._closed)return;Pe.debug("stopSending() [localId:%s]",e);const r=this._mapMidTransceiver.get(e);if(!r)throw new Error("associated RTCRtpTransceiver not found");if(r.sender.replaceTrack(null),this._pc.removeTrack(r.sender),this._remoteSdp.closeMediaSection(r.mid))try{r.stop()}catch{}const i=yield this._pc.createOffer();Pe.debug("stopSending() | calling pc.setLocalDescription() [offer:%o]",i),yield this._pc.setLocalDescription(i);const s={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("stopSending() | calling pc.setRemoteDescription() [answer:%o]",s),yield this._pc.setRemoteDescription(s),this._mapMidTransceiver.delete(e)})}pauseSending(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertSendDirection(),Pe.debug("pauseSending() [localId:%s]",e);const r=this._mapMidTransceiver.get(e);if(!r)throw new Error("associated RTCRtpTransceiver not found");r.direction="inactive",this._remoteSdp.pauseMediaSection(e);const n=yield this._pc.createOffer();Pe.debug("pauseSending() | calling pc.setLocalDescription() [offer:%o]",n),yield this._pc.setLocalDescription(n);const i={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("pauseSending() | calling pc.setRemoteDescription() [answer:%o]",i),yield this._pc.setRemoteDescription(i)})}resumeSending(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertSendDirection(),Pe.debug("resumeSending() [localId:%s]",e);const r=this._mapMidTransceiver.get(e);if(!r)throw new Error("associated RTCRtpTransceiver not found");r.direction="sendonly",this._remoteSdp.resumeSendingMediaSection(e);const n=yield this._pc.createOffer();Pe.debug("resumeSending() | calling pc.setLocalDescription() [offer:%o]",n),yield this._pc.setLocalDescription(n);const i={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("resumeSending() | calling pc.setRemoteDescription() [answer:%o]",i),yield this._pc.setRemoteDescription(i)})}replaceTrack(e,r){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertSendDirection(),r?Pe.debug("replaceTrack() [localId:%s, track.id:%s]",e,r.id):Pe.debug("replaceTrack() [localId:%s, no track]",e);const n=this._mapMidTransceiver.get(e);if(!n)throw new Error("associated RTCRtpTransceiver not found");yield n.sender.replaceTrack(r)})}setMaxSpatialLayer(e,r){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertSendDirection(),Pe.debug("setMaxSpatialLayer() [localId:%s, spatialLayer:%s]",e,r);const n=this._mapMidTransceiver.get(e);if(!n)throw new Error("associated RTCRtpTransceiver not found");const i=n.sender.getParameters();i.encodings.forEach((a,c)=>{c<=r?a.active=!0:a.active=!1}),yield n.sender.setParameters(i),this._remoteSdp.muxMediaSectionSimulcast(e,i.encodings);const s=yield this._pc.createOffer();Pe.debug("setMaxSpatialLayer() | calling pc.setLocalDescription() [offer:%o]",s),yield this._pc.setLocalDescription(s);const o={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("setMaxSpatialLayer() | calling pc.setRemoteDescription() [answer:%o]",o),yield this._pc.setRemoteDescription(o)})}setRtpEncodingParameters(e,r){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertSendDirection(),Pe.debug("setRtpEncodingParameters() [localId:%s, params:%o]",e,r);const n=this._mapMidTransceiver.get(e);if(!n)throw new Error("associated RTCRtpTransceiver not found");const i=n.sender.getParameters();i.encodings.forEach((a,c)=>{i.encodings[c]=Object.assign(Object.assign({},a),r)}),yield n.sender.setParameters(i),this._remoteSdp.muxMediaSectionSimulcast(e,i.encodings);const s=yield this._pc.createOffer();Pe.debug("setRtpEncodingParameters() | calling pc.setLocalDescription() [offer:%o]",s),yield this._pc.setLocalDescription(s);const o={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("setRtpEncodingParameters() | calling pc.setRemoteDescription() [answer:%o]",o),yield this._pc.setRemoteDescription(o)})}getSenderStats(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertSendDirection();const r=this._mapMidTransceiver.get(e);if(!r)throw new Error("associated RTCRtpTransceiver not found");return r.sender.getStats()})}sendDataChannel(e){return he(this,arguments,void 0,function*({ordered:r,maxPacketLifeTime:n,maxRetransmits:i,label:s,protocol:o}){var a;this.assertNotClosed(),this.assertSendDirection();const c={negotiated:!0,id:this._nextSendSctpStreamId,ordered:r,maxPacketLifeTime:n,maxRetransmits:i,protocol:o};Pe.debug("sendDataChannel() [options:%o]",c);const l=this._pc.createDataChannel(s,c);if(this._nextSendSctpStreamId=++this._nextSendSctpStreamId%Ib.MIS,!this._hasDataChannelMediaSection){const p=yield this._pc.createOffer(),m=Pr.parse(p.sdp),g=m.media.find(S=>S.type==="application");this._transportReady||(yield this.setupTransport({localDtlsRole:(a=this._forcedLocalDtlsRole)!==null&&a!==void 0?a:"client",localSdpObject:m})),Pe.debug("sendDataChannel() | calling pc.setLocalDescription() [offer:%o]",p),yield this._pc.setLocalDescription(p),this._remoteSdp.sendSctpAssociation({offerMediaObject:g});const v={type:"answer",sdp:this._remoteSdp.getSdp()};Pe.debug("sendDataChannel() | calling pc.setRemoteDescription() [answer:%o]",v),yield this._pc.setRemoteDescription(v),this._hasDataChannelMediaSection=!0}const d={streamId:c.id,ordered:c.ordered,maxPacketLifeTime:c.maxPacketLifeTime,maxRetransmits:c.maxRetransmits};return{dataChannel:l,sctpStreamParameters:d}})}receive(e){return he(this,void 0,void 0,function*(){var r,n;this.assertNotClosed(),this.assertRecvDirection();const i=[],s=new Map;for(const l of e){const{trackId:d,kind:p,rtpParameters:m,streamId:g}=l;Pe.debug("receive() [trackId:%s, kind:%s]",d,p);const v=(r=m.mid)!==null&&r!==void 0?r:String(this._mapMidTransceiver.size);s.set(d,v),this._remoteSdp.receive({mid:v,kind:p,offerRtpParameters:m,streamId:g??m.rtcp.cname,trackId:d})}const o={type:"offer",sdp:this._remoteSdp.getSdp()};Pe.debug("receive() | calling pc.setRemoteDescription() [offer:%o]",o),yield this._pc.setRemoteDescription(o);for(const l of e){const{trackId:d,onRtpReceiver:p}=l;if(p){const m=s.get(d),g=this._pc.getTransceivers().find(v=>v.mid===m);if(!g)throw new Error("transceiver not found");p(g.receiver)}}let a=yield this._pc.createAnswer();const c=Pr.parse(a.sdp);for(const l of e){const{trackId:d,rtpParameters:p}=l,m=s.get(d),g=c.media.find(v=>String(v.mid)===m);lc.applyCodecParameters({offerRtpParameters:p,answerMediaObject:g})}a={type:"answer",sdp:Pr.write(c)},this._transportReady||(yield this.setupTransport({localDtlsRole:(n=this._forcedLocalDtlsRole)!==null&&n!==void 0?n:"client",localSdpObject:c})),Pe.debug("receive() | calling pc.setLocalDescription() [answer:%o]",a),yield this._pc.setLocalDescription(a);for(const l of e){const{trackId:d}=l,p=s.get(d),m=this._pc.getTransceivers().find(g=>g.mid===p);if(!m)throw new Error("new RTCRtpTransceiver not found");this._mapMidTransceiver.set(p,m),i.push({localId:p,track:m.receiver.track,rtpReceiver:m.receiver})}return i})}stopReceiving(e){return he(this,void 0,void 0,function*(){if(this.assertRecvDirection(),this._closed)return;for(const i of e){Pe.debug("stopReceiving() [localId:%s]",i);const s=this._mapMidTransceiver.get(i);if(!s)throw new Error("associated RTCRtpTransceiver not found");this._remoteSdp.closeMediaSection(s.mid)}const r={type:"offer",sdp:this._remoteSdp.getSdp()};Pe.debug("stopReceiving() | calling pc.setRemoteDescription() [offer:%o]",r),yield this._pc.setRemoteDescription(r);const n=yield this._pc.createAnswer();Pe.debug("stopReceiving() | calling pc.setLocalDescription() [answer:%o]",n),yield this._pc.setLocalDescription(n);for(const i of e)this._mapMidTransceiver.delete(i)})}pauseReceiving(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertRecvDirection();for(const i of e){Pe.debug("pauseReceiving() [localId:%s]",i);const s=this._mapMidTransceiver.get(i);if(!s)throw new Error("associated RTCRtpTransceiver not found");s.direction="inactive",this._remoteSdp.pauseMediaSection(i)}const r={type:"offer",sdp:this._remoteSdp.getSdp()};Pe.debug("pauseReceiving() | calling pc.setRemoteDescription() [offer:%o]",r),yield this._pc.setRemoteDescription(r);const n=yield this._pc.createAnswer();Pe.debug("pauseReceiving() | calling pc.setLocalDescription() [answer:%o]",n),yield this._pc.setLocalDescription(n)})}resumeReceiving(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertRecvDirection();for(const i of e){Pe.debug("resumeReceiving() [localId:%s]",i);const s=this._mapMidTransceiver.get(i);if(!s)throw new Error("associated RTCRtpTransceiver not found");s.direction="recvonly",this._remoteSdp.resumeReceivingMediaSection(i)}const r={type:"offer",sdp:this._remoteSdp.getSdp()};Pe.debug("resumeReceiving() | calling pc.setRemoteDescription() [offer:%o]",r),yield this._pc.setRemoteDescription(r);const n=yield this._pc.createAnswer();Pe.debug("resumeReceiving() | calling pc.setLocalDescription() [answer:%o]",n),yield this._pc.setLocalDescription(n)})}getReceiverStats(e){return he(this,void 0,void 0,function*(){this.assertNotClosed(),this.assertRecvDirection();const r=this._mapMidTransceiver.get(e);if(!r)throw new Error("associated RTCRtpTransceiver not found");return r.receiver.getStats()})}receiveDataChannel(e){return he(this,arguments,void 0,function*({sctpStreamParameters:r,label:n,protocol:i}){var s;this.assertNotClosed(),this.assertRecvDirection();const{streamId:o,ordered:a,maxPacketLifeTime:c,maxRetransmits:l}=r,d={negotiated:!0,id:o,ordered:a,maxPacketLifeTime:c,maxRetransmits:l,protocol:i};Pe.debug("receiveDataChannel() [options:%o]",d);const p=this._pc.createDataChannel(n,d);if(!this._hasDataChannelMediaSection){this._remoteSdp.receiveSctpAssociation();const m={type:"offer",sdp:this._remoteSdp.getSdp()};Pe.debug("receiveDataChannel() | calling pc.setRemoteDescription() [offer:%o]",m),yield this._pc.setRemoteDescription(m);const g=yield this._pc.createAnswer();if(!this._transportReady){const v=Pr.parse(g.sdp);yield this.setupTransport({localDtlsRole:(s=this._forcedLocalDtlsRole)!==null&&s!==void 0?s:"client",localSdpObject:v})}Pe.debug("receiveDataChannel() | calling pc.setRemoteDescription() [answer:%o]",g),yield this._pc.setLocalDescription(g),this._hasDataChannelMediaSection=!0}return{dataChannel:p}})}setupTransport(e){return he(this,arguments,void 0,function*({localDtlsRole:r,localSdpObject:n}){n||(n=Pr.parse(this._pc.localDescription.sdp));const i=lc.extractDtlsParameters({sdpObject:n});i.role=r,this._remoteSdp.updateDtlsRole(r==="client"?"server":"client"),yield new Promise((s,o)=>{this.safeEmit("@connect",{dtlsParameters:i},s,o)}),this._transportReady=!0})}assertNotClosed(){if(this._closed)throw new Jk.InvalidStateError("method called in a closed handler")}assertSendDirection(){if(this._direction!=="send")throw new Error('method can just be called for handlers with "send" direction')}assertRecvDirection(){if(this._direction!=="recv")throw new Error('method can just be called for handlers with "recv" direction')}}const xN=t=>{var e;if(t.isNodeSdk)return new cc.Device({handlerFactory:eM.Safari12.createFactory()});let r=cc.detectDevice()||(/applecoremedia|applewebkit|safari/i.test(navigator.userAgent)?"Safari12":void 0);if(r==="Safari12"&&typeof navigator=="object"&&typeof navigator.userAgent=="string"){const i=new Yk.UAParser(navigator.userAgent).getBrowser();parseInt((e=i.major)!==null&&e!==void 0?e:"0")>=17&&t.safari17HandlerOn&&(r="Safari17")}return/iphone|ipad/i.test(navigator.userAgent)&&(t.safari17HandlerOn?r="Safari17":r="Safari12"),r==="Safari17"?new cc.Device({handlerFactory:Ah.createFactory()}):new cc.Device({handlerName:r})},DN={codecOptions:{opusDtx:!0,opusFec:!0},encodings:[{dtx:!0}]},kN={codecOptions:{videoGoogleStartBitrate:500},encodings:[{scaleResolutionDownBy:4,maxBitrate:15e4},{scaleResolutionDownBy:2,maxBitrate:5e5},{scaleResolutionDownBy:1,maxBitrate:1e6}]},MN={codecOptions:{videoGoogleStartBitrate:500},encodings:[{scaleResolutionDownBy:2,maxBitrate:15e4},{scaleResolutionDownBy:1,maxBitrate:5e5}]},NN={codecOptions:{videoGoogleStartBitrate:500},encodings:[{scalabilityMode:"L3T2",maxBitrate:1e6}]},LN={codecOptions:{videoGoogleStartBitrate:500},encodings:[{scalabilityMode:"L2T2",maxBitrate:5e5}]},jN={encodings:[{}]},BN={encodings:[{scaleResolutionDownBy:2,dtx:!0,maxBitrate:5e5},{scaleResolutionDownBy:1,dtx:!0,maxBitrate:15e5}]},FN={encodings:[{scaleResolutionDownBy:4,dtx:!0,maxBitrate:15e4},{scaleResolutionDownBy:2,dtx:!0,maxBitrate:5e5},{scaleResolutionDownBy:1,dtx:!0,maxBitrate:15e5}]},mc=(t,e,r,n=!1)=>{const{lowDataModeEnabled:i,simulcastScreenshareOn:s,vp9On:o}=r;if(t==="audio")return DN;const c=Gt.browserDetails.browser==="chrome"&&o;return e?HN({isSomeoneAlreadyPresenting:n,simulcastScreenshareOn:s}):zN({lowBandwidth:i,isVp9Available:c})},zN=({lowBandwidth:t,isVp9Available:e})=>t?e?LN:MN:e?NN:kN,HN=({isSomeoneAlreadyPresenting:t,simulcastScreenshareOn:e})=>t?FN:e?BN:jN;var Dl;(function(t){t.H264="video/h264",t.VP9="video/vp9"})(Dl||(Dl={}));const VN=(t,e)=>{const{vp9On:r,h264On:n}=e,i=Gt.browserDetails.browser==="chrome";if(!t?.codecs)return t;if(r&&i){const s=Ob(t.codecs,Dl.VP9);return Object.assign(Object.assign({},t),{codecs:s})}else if(n){const s=Ob(t.codecs,Dl.H264);return Object.assign(Object.assign({},t),{codecs:s})}return t};function Ob(t,e){const r=t.find(({mimeType:n})=>n.toLowerCase()===e);return r?[...t].sort((n,i)=>n.mimeType.toLowerCase()===e?-1:n.mimeType.toLowerCase()==="video/rtx"&&n.parameters.apt===r.preferredPayloadType?i.mimeType.toLowerCase()===e?1:-1:0):t}function GN(t,{av1On:e}){return t.unshift("video/vp9"),e&&t.unshift("video/av1"),t}function XN(t,e){const r=t.map(({mimeType:i})=>i).filter((i,s,o)=>o.indexOf(i)===s),n=GN(r,e);return t.sort((i,s)=>{const o=n.indexOf(i.mimeType.toLowerCase()),a=n.indexOf(s.mimeType.toLowerCase()),c=o>=0?o:Number.MAX_VALUE,l=a>=0?a:Number.MAX_VALUE;return c-l})}function UN(t){return he(this,void 0,void 0,function*(){const{powerEfficient:e}=yield navigator.mediaCapabilities.decodingInfo({type:"webrtc",video:{width:1280,height:720,bitrate:2580,framerate:24,contentType:t}});return e})}function WN(t){return he(this,void 0,void 0,function*(){const e=yield Promise.all(t.map(({mimeType:i})=>UN(i).then(s=>[i,s]))),r=Object.fromEntries(e);return t.sort((i,s)=>{const o=r[i.mimeType],a=r[s.mimeType];return o===a?0:o?-1:1})})}function YN(t,e){return he(this,void 0,void 0,function*(){let r=XN(t,e);return r=yield WN(t),r})}const xb=new Rn;class ZN extends lC{constructor(e){super(),this.reconnectThresholdInMs=0,this._socket=e,this._clients={},this._signalDisconnectTime=void 0,this.rtcManager=void 0,this.metrics={roomJoinedLate:0,pendingClientCanceled:0,evaluationFailed:0,roomJoined:0},e.on("disconnect",()=>{this._signalDisconnectTime=Date.now()}),e.on(dt.ROOM_JOINED,r=>this._onRoomJoined(r)),e.on(dt.NEW_CLIENT,r=>this._onNewClient(r)),e.on(dt.CLIENT_LEFT,r=>this._onClientLeft(r)),e.on(Ol.PENDING_CLIENT_LEFT,r=>this._onPendingClientLeft(r)),e.on(dt.AUDIO_ENABLED,r=>this._onAudioEnabled(r)),e.on(dt.VIDEO_ENABLED,r=>this._onVideoEnabled(r)),e.on(dt.SCREENSHARE_STARTED,r=>this._onScreenshareChanged(r,!0)),e.on(dt.SCREENSHARE_STOPPED,r=>this._onScreenshareChanged(r,!1))}_onRoomJoined(e){return he(this,void 0,void 0,function*(){var r;if(this.reconnectThresholdInMs=(e.disconnectTimeout||0)*.8,e?.error){this.emit(dt.ROOM_JOINED,e);return}if(!e.selfId){this.emit(dt.ROOM_JOINED,e);return}const n=(r=e.room.clients.find(a=>e.selfId===a.id))===null||r===void 0?void 0:r.deviceId;if(!n){this.emit(dt.ROOM_JOINED,e);return}if(!this._signalDisconnectTime){this._resetClientState(e),e.room.clients=e.room.clients.filter(a=>!(a.deviceId===n&&a.isPendingToLeave)),this.emit(dt.ROOM_JOINED,e);return}const i=e.disconnectTimeout*.8;if(Date.now()-this._signalDisconnectTime>i){this._resetClientState(e),this.emit(dt.ROOM_JOINED,e),this.metrics.roomJoinedLate++;return}e.room.clients=e.room.clients.filter(a=>!(a.deviceId===n&&a.isPendingToLeave));const o=yield Cb();e.room.clients.forEach(a=>{var c;try{if(a.id===e.selfId)return;if(!this._clients[a.id]){this._addClientToState(a);return}if(!(!((c=this.rtcManager)===null||c===void 0)&&c.hasClient(a.id))||this._hasClientStateChanged({clientId:a.id,webcam:a.isVideoEnabled,mic:a.isAudioEnabled,screenShare:a.streams.length>1})||this._wasClientSendingMedia(a.id)&&!this._isClientMediaActive(o,a.id))return;a.mergeWithOldClientState=!0}catch(l){xb.error("Failed to evaluate if we should merge client state %o",l),this.metrics.evaluationFailed++}}),e.room.clients.forEach(a=>{a.isPendingToLeave&&this._onPendingClientLeft({clientId:a.id})}),this.metrics.roomJoined++,this.emit(dt.ROOM_JOINED,e)})}_onClientLeft(e){var r;const{clientId:n}=e,i=this._clients[n];i&&(clearTimeout(i.timeout),delete this._clients[n]),(r=this.rtcManager)===null||r===void 0||r.disconnect(n,null,e.eventClaim),this.emit(dt.CLIENT_LEFT,e)}_onPendingClientLeft(e){const{clientId:r}=e,n=this._clients[r];if(!n){xb.warn(`client ${r} not found`);return}n.isPendingToLeave||(n.isPendingToLeave=!0,this._wasClientSendingMedia(r)&&(n.checkActiveMediaAttempts=0,this._abortIfNotActive(e)))}_onNewClient(e){const{client:{id:r,deviceId:n}}=e,i=this._clients[r];if(i&&i.isPendingToLeave){clearTimeout(i.timeoutHandler),i.isPendingToLeave=!1,this.metrics.pendingClientCanceled++;return}this._getPendingClientsByDeviceId(n).forEach(s=>{clearTimeout(s.timeoutHandler),s.isPendingToLeave=void 0,this.emit(dt.CLIENT_LEFT,{clientId:s.clientId})}),this._addClientToState(e.client),this.emit(dt.NEW_CLIENT,e)}_abortIfNotActive(e){return he(this,void 0,void 0,function*(){const{clientId:r}=e;let n=this._clients[r];if(!n?.isPendingToLeave||(n.checkActiveMediaAttempts++,n.checkActiveMediaAttempts>3))return;if(yield this._checkIsActive(r)){n.timeoutHandler=setTimeout(()=>this._abortIfNotActive(e),500);return}n=this._clients[r],n?.isPendingToLeave&&(clearTimeout(n.timeoutHandler),delete this._clients[r],this.emit(dt.CLIENT_LEFT,e))})}_checkIsActive(e){return he(this,void 0,void 0,function*(){const r=yield Cb();return this._isClientMediaActive(r,e)})}_isClientMediaActive(e,r){const n=e?.[r];let i=!1;return n&&Object.entries(n.tracks).forEach(([s,o])=>{s!=="probator"&&Object.values(o.ssrcs).forEach(a=>{(a.bitrate||0)>0&&(i=!0)})}),i}_onAudioEnabled(e){const{clientId:r,isAudioEnabled:n}=e;this._clients[r]=Object.assign(Object.assign({},this._clients[r]||{}),{isAudioEnabled:n})}_onVideoEnabled(e){const{clientId:r,isVideoEnabled:n}=e;this._clients[r]=Object.assign(Object.assign({},this._clients[r]||{}),{isVideoEnabled:n})}_onScreenshareChanged(e,r){const{clientId:n}=e;this._clients[n]=Object.assign(Object.assign({},this._clients[n]||{}),{isScreenshareEnabled:r})}_hasClientStateChanged({clientId:e,webcam:r,mic:n,screenShare:i}){const s=this._clients[e];if(!s)throw new Error(`Client ${e} not found in ReconnectManager state`);return r!==s.isVideoEnabled||n!==s.isAudioEnabled||i!==s.isScreenshareEnabled}_addClientToState(e){this._clients[e.id]=Object.assign(Object.assign({},this._clients[e.id]||{}),{isAudioEnabled:e.isAudioEnabled,isVideoEnabled:e.isVideoEnabled,isScreenshareEnabled:e.streams.length>1,deviceId:e.deviceId,isPendingToLeave:e.isPendingToLeave,clientId:e.id})}_wasClientSendingMedia(e){const r=this._clients[e];if(!r)throw new Error(`Client ${e} not found in ReconnectManager state`);return r.isAudioEnabled||r.isVideoEnabled||r.isScreenshareEnabled}_getPendingClientsByDeviceId(e){return Object.values(this._clients).filter(r=>r.deviceId===e&&r.isPendingToLeave)}_resetClientState(e){this._clients={},e.room.clients.forEach(r=>{r.id!==e.selfId&&this._addClientToState(r)})}}var Xu;const qN=(Xu=Gt.default)!==null&&Xu!==void 0?Xu:Gt,JN="/protocol/socket.io/v4",KN=2e3;class QN{constructor(e,r,n=!1){this._wasConnectedUsingWebsocket=!1,this._reconnectManager=null,this._socket=Kc(e,Object.assign({path:JN,randomizationFactor:.5,reconnectionDelay:250,reconnectionDelayMax:5e3,timeout:5e3,transports:["websocket"],withCredentials:!0},r)),this._socket.io.on("reconnect",()=>{this._socket.sendBuffer=[]}),this._socket.io.on("reconnect_attempt",()=>{this._wasConnectedUsingWebsocket?(this._socket.io.opts.transports=["websocket"],qN.browserDetails.browser!=="safari"&&delete this._wasConnectedUsingWebsocket):this._socket.io.opts.transports=["websocket","polling"]}),n&&(this._reconnectManager=new ZN(this._socket)),this._socket.on("connect",()=>{this.getTransport()==="websocket"&&(this._wasConnectedUsingWebsocket=!0,this.noopKeepaliveInterval||(this.noopKeepaliveInterval=setInterval(()=>{try{this._socket.connected&&this._socket.io.engine.sendPacket("noop")}catch{}},KN)))}),this._socket.on("disconnect",()=>{this.disconnectTimestamp=Date.now(),this.noopKeepaliveInterval&&(clearInterval(this.noopKeepaliveInterval),this.noopKeepaliveInterval=null)})}setRtcManager(e){this._reconnectManager&&(this._reconnectManager.rtcManager=e)}connect(){this.isConnected()||this.isConnecting()||this._socket.open()}disconnect(){this._socket.disconnect()}disconnectOnConnect(){this._socket.once("connect",()=>{this._socket.disconnect()})}emit(e,...r){this._socket.emit.apply(this._socket,arguments)}emitIfConnected(e,r){this.isConnected()&&this.emit(e,r)}getTransport(){return this._socket&&this._socket.io&&this._socket.io.engine&&this._socket.io.engine.transport&&this._socket.io.engine.transport.name}getManager(){return this._socket.io}isConnecting(){return this._socket&&this._socket.connecting}isConnected(){return this._socket&&this._socket.connected}on(e,r){const n=[dt.ROOM_JOINED,dt.CLIENT_LEFT,dt.NEW_CLIENT];return this._reconnectManager&&n.includes(e)?this._interceptEvent(e,r):(this._socket.on(e,r),()=>{this._socket.off(e,r)})}onEngineEvent(e,r){var n;return(n=this._socket.io)===null||n===void 0||n.on(e,r),()=>{var i;(i=this._socket.io)===null||i===void 0||i.off(e,r)}}once(e,r){this._socket.once(e,r)}off(e,r){this._socket.off(e,r)}_interceptEvent(e,r){return this._reconnectManager&&this._reconnectManager.on(e,r),()=>{this._reconnectManager&&this._reconnectManager.removeListener(e,r)}}getGlitchFreeMetrics(){var e;return(e=this._reconnectManager)===null||e===void 0?void 0:e.metrics}getReconnectThreshold(){var e;return(e=this._reconnectManager)===null||e===void 0?void 0:e.reconnectThresholdInMs}}const kC=(t,e)=>{if(!e.useOnlyTURN)return;t.iceTransportPolicy="relay";const r={onlyudp:/^turn:.*transport=udp$/,onlytcp:/^turn:.*transport=tcp$/,onlytls:/^turns:.*transport=tcp$/}[e.useOnlyTURN];r&&(t.iceServers=t.iceServers.filter(n=>{if(n.url&&n.url.match(r)||n.urls&&(n.urls=(n.urls.some?n.urls:[n.urls]).filter(i=>i.match(r)),n.urls.length>0))return n}))},$N=(t,e)=>{e.addGoogleStunServers&&(t.iceServers=[{urls:"stun:stun.l.google.com:19302"},{urls:"stun:stun2.l.google.com:19302"},...t.iceServers]),e.addCloudflareStunServers&&(t.iceServers=[{urls:"stun:stun.cloudflare.com:3478"},{urls:"stun:stun.cloudflare.com:53"},...t.iceServers])},ap=(t,e)=>{if(e&&t){const r=e,n=r.indexOf(":")>0?"":":443",i=":"+r+n;return t.map(s=>{const o=Object.assign({},s);return o.url&&(o.url=o.url.replace(/:[^?]*/,i)),o.urls&&(o.urls=o.urls.map(a=>a.replace(/:[^?]*/,i))),o})}else return t},eL=/^(?:([^.]+)[.])?((:?[^.]+[.]){1,}[^.]+)$/,tL=/^(?:([^.]+)-)?(ip-[^.]*[.](?:hereby[.]dev|rfc1918[.]disappear[.]at)(?::\d+|))$/,rL=/^(?:([^.]+)[.])?(localhost:?\d*)/,nL=/^(?:([^.]+)[.])?(server:?\d*)/,iL=/^(?:([^.]+)[.])?((\d+[.]){3}:?\d*)$/,sL=[{pattern:nL,separator:"."},{pattern:rL,separator:"."},{pattern:iL,separator:"."},{pattern:tL,separator:"-"},{pattern:eL,separator:"."}];function MC({host:t="whereby.com",protocol:e="https:"}={}){let r="",n=t,i=".";for(const{separator:o,pattern:a}of sL){const c=a.exec(t);if(c){r=c[1]||"",n=c[2],i=o;break}}const s=r?`${r}${i}${n}`:n;return{domain:n,domainWithSeparator:`${i}${n}`,organizationDomain:s,organization:`${e}//${s}`,service:`${e}//${n}`,subdomain:r}}MC(window&&window.location);var Uu,Wu;const ra=(Uu=Gt.default)!==null&&Uu!==void 0?Uu:Gt,jt=new Rn,oL=3*1e3,Xi=_N.getCameraId(),ri=ra.browserDetails.browser,Db=ra.browserDetails.version;ri==="firefox"&&ra.browserShim&&"shimGetDisplayMedia"in ra.browserShim&&((Wu=ra.browserShim)===null||Wu===void 0||Wu.shimGetDisplayMedia(window,"screen"));let cp=!1;ri==="chrome"&&window.document.addEventListener("beforeunload",()=>{cp=!0});class aL{constructor({selfId:e,room:r,emitter:n,serverSocket:i,webrtcProvider:s,features:o}){const{name:a,session:c,iceServers:l,turnServers:d,sfuServer:p,mediaserverConfigTtlSeconds:m}=r;this._selfId=e,this._roomName=a,this._roomSessionId=c&&c.id,this.peerConnections={},this.localStreams={},this.enabledLocalStreamIds=[],this._screenshareVideoTrackIds=[],this._socketListenerDeregisterFunctions=[],this._localStreamDeregisterFunction=null,this._emitter=n,this._serverSocket=i,this._webrtcProvider=s,this._features=o||{},this._isAudioOnlyMode=!1,this.offerOptions={offerToReceiveAudio:!0,offerToReceiveVideo:!0},this._pendingActionsForConnectedPeerConnections=[],this._audioTrackOnEnded=()=>{bt.sendEvent("audio_ended",{unloading:cp}),this._emit(_t.MICROPHONE_STOPPED_WORKING,{})},this._videoTrackOnEnded=()=>{bt.sendEvent("video_ended",{unloading:cp}),this._emit(_t.CAMERA_STOPPED_WORKING,{})},this._updateAndScheduleMediaServersRefresh({sfuServer:p,iceServers:l?.iceServers||[],turnServers:d||[],mediaserverConfigTtlSeconds:m}),this.totalSessionsCreated=0}numberOfPeerconnections(){return Object.keys(this.peerConnections).length}isInitializedWith({selfId:e,roomName:r,isSfu:n}){return this._selfId===e&&this._roomName===r&&n===!!this._sfuServer}supportsScreenShareAudio(){return!0}addNewStream(e,r,n,i,s=[]){if(r!==this.localStreams[e]){if(this._addLocalStream(e,r),e===Xi){this._addStreamToPeerConnections(r);const o=r.getAudioTracks()[0],a=r.getVideoTracks()[0];if(o){o.effectTrack||this._monitorAudioTrack(o);const l=s.find(d=>d.kind==="audio");l&&this._monitorAudioTrack(l)}if(a){a.effectTrack||this._monitorVideoTrack(a);const l=s.find(d=>d.kind==="video");l&&this._monitorVideoTrack(l)}this._localStreamDeregisterFunction&&(this._localStreamDeregisterFunction(),this._localStreamDeregisterFunction=null);const c=l=>{const{enable:d,track:p}=l.detail;this._handleStopOrResumeVideo({enable:d,track:p})};r.addEventListener("stopresumevideo",c),this._localStreamDeregisterFunction=()=>{r.removeEventListener("stopresumevideo",c)};return}this._screenshareVideoTrackIds.push(r.getVideoTracks()[0].id),this._shareScreen(e,r)}}replaceTrack(e,r){return r.kind==="audio"&&!r.effectTrack&&this._monitorAudioTrack(r),r.kind==="video"&&!r.effectTrack&&this._monitorVideoTrack(r),this._replaceTrackToPeerConnections(e,r)}disconnectAll(){Object.keys(this.peerConnections).forEach(e=>{this.disconnect(e)}),this.peerConnections={},this._socketListenerDeregisterFunctions.forEach(e=>{e()}),this._socketListenerDeregisterFunctions=[],this._localStreamDeregisterFunction&&(this._localStreamDeregisterFunction(),this._localStreamDeregisterFunction=null)}fixChromeAudio(e){if(ri!=="chrome")return;const r=this._getLocalCameraStream(),n=r.getAudioTracks()[0];if(!(!n||n.readyState!=="ended"))return navigator.mediaDevices.getUserMedia({audio:e}).then(i=>{const s=i.getAudioTracks()[0];return s.enabled=n.enabled,r.removeTrack(n),r.addTrack(s),this.replaceTrack(n,s)})}setupSocketListeners(){this._socketListenerDeregisterFunctions=[()=>this._clearMediaServersRefresh(),this._serverSocket.on(dt.MEDIASERVER_CONFIG,e=>{if(e.error){jt.warn("FETCH_MEDIASERVER_CONFIG failed:",e.error);return}this._updateAndScheduleMediaServersRefresh(e)}),this._serverSocket.on(On.READY_TO_RECEIVE_OFFER,e=>{this._connect(e.clientId)}),this._serverSocket.on(On.ICE_CANDIDATE,e=>{const r=this._getSession(e.clientId);if(!r){jt.warn("No RTCPeerConnection on ICE_CANDIDATE",e);return}r.addIceCandidate(e.message)}),this._serverSocket.on(On.ICE_END_OF_CANDIDATES,e=>{const r=this._getSession(e.clientId);if(!r){jt.warn("No RTCPeerConnection on ICE_END_OF_CANDIDATES",e);return}r.addIceCandidate(null)}),this._serverSocket.on(On.SDP_OFFER,e=>{var r,n;const i=this._getSession(e.clientId);if(!i){jt.warn("No RTCPeerConnection on SDP_OFFER",e);return}const s=this._transformIncomingSdp(e.message,i.pc);(n=(r=i.handleOffer(s).then(o=>{this._emitServerEvent(On.SDP_ANSWER,{receiverId:e.clientId,message:this._transformOutgoingSdp(o)})})).catch)===null||n===void 0||n.call(r,o=>{this._emit(_t.PC_ON_OFFER_FAILURE,o)})}),this._serverSocket.on(On.SDP_ANSWER,e=>{var r,n;const i=this._getSession(e.clientId);if(!i){jt.warn("No RTCPeerConnection on SDP_ANSWER",e);return}const s=this._transformIncomingSdp(e.message,i.pc);(n=(r=i.handleAnswer(s))===null||r===void 0?void 0:r.catch)===null||n===void 0||n.call(r,o=>{this._emit(_t.PC_ON_ANSWER_FAILURE,o)})}),this._serverSocket.on(dt.ROOM_JOINED,e=>{var r,n;if(e?.error||((n=(r=e?.room)===null||r===void 0?void 0:r.sfuServer)!==null&&n!==void 0?n:!1)||!this._wasScreenSharing)return;const s=Object.keys(this.localStreams).find(c=>c!==Xi);if(!s)return;const o=this.localStreams[s];if(!o){jt.warn("screenshare stream %s not found",s);return}const a=o.getAudioTracks().length>0;this._emitServerEvent(wi.START_SCREENSHARE,{streamId:s,hasAudioTrack:a})})]}sendAudioMutedStats(e){bt.sendEvent("audio_muted",{muted:e})}sendVideoMutedStats(e){bt.sendEvent("video_muted",{muted:e})}sendStatsCustomEvent(e,r){bt.sendEvent(e,r)}rtcStatsDisconnect(){bt.server.close()}rtcStatsReconnect(){bt.server.connected||bt.server.connect()}setAudioOnly(e){this._isAudioOnlyMode=e,this._forEachPeerConnection(r=>{r.hasConnectedPeerConnection()&&this._withForcedRenegotiation(r,()=>r.setAudioOnly(this._isAudioOnlyMode,this._screenshareVideoTrackIds))})}setRemoteScreenshareVideoTrackIds(e=[]){const r=this._getFirstLocalNonCameraStream();this._screenshareVideoTrackIds=[...r?.track?[r.track.id]:[],...e]}setRoomSessionId(e){this._roomSessionId=e}_setConnectionStatus(e,r,n){const i=e.connectionStatus;i!==r&&e.peerConnectionId!==this._selfId&&(i===Dn.CONNECTION_DISCONNECTED&&r===Dn.CONNECTING||(e.connectionStatus=r,setTimeout(()=>{this._emit(Fr.CLIENT_CONNECTION_STATUS_CHANGED,{streamIds:e.streamIds,clientId:n,status:r,previous:i})},0)))}_setJitterBufferTarget(e){try{e.getReceivers().forEach(n=>{n.jitterBufferTarget=Il,n.playoutDelayHint=Il/1e3})}catch(r){jt.error("Error during setting jitter buffer target:",r)}}_emitServerEvent(e,r,n){this._serverSocket.emit(e,r,n)}_emit(e,r){this._emitter.emit(e,r)}_addEnabledLocalStreamId(e){this.enabledLocalStreamIds.push(e)}_deleteEnabledLocalStreamId(e){const r=this.enabledLocalStreamIds.indexOf(e);r!==-1&&this.enabledLocalStreamIds.splice(r,1)}_getSession(e){return e in this.peerConnections?this.peerConnections[e]:null}_getOrCreateSession(e,r){let n=this.peerConnections[e];if(n===void 0){const i=ri==="safari"&&Db&&Db>=14&&this._features.deprioritizeH264OnSafari;this.peerConnections[e]=n=new AN({peerConnectionId:e,bandwidth:r,deprioritizeH264Encoding:i}),this.totalSessionsCreated++}return n}_getLocalCameraStream(){return this.localStreams[Xi]}_getNonLocalCameraStreamIds(){return Object.keys(this.localStreams).filter(e=>e!==Xi)}_isScreensharingLocally(){return this._getNonLocalCameraStreamIds().length>0}_getFirstLocalNonCameraStream(){const e=this._getNonLocalCameraStreamIds();return e.length===0?null:this.localStreams[e[0]]}_transformIncomingSdp(e,r){return{type:e.type,sdp:e.sdpU}}_transformOutgoingSdp(e){return{type:e.type,sdpU:e.sdp}}_createSession({clientId:e,initialBandwidth:r,isOfferer:n,peerConnectionId:i,shouldAddLocalVideo:s}){if(!i)throw new Error("peerConnectionId is missing");if(!e)throw new Error("clientId is missing");const o=this._getOrCreateSession(i,r),a={optional:[]};ri==="chrome"&&a.optional.push({googCpuOveruseDetection:!0}),a.optional.push({rtcStatsRoomSessionId:this._roomSessionId}),a.optional.push({rtcStatsClientId:this._selfId}),a.optional.push({rtcStatsPeerId:i}),a.optional.push({rtcStatsConferenceId:this._roomName});const c={iceServers:this._features.turnServersOn?this._turnServers:this._iceServers};c.iceServers=ap(c.iceServers,this._features.turnServerOverrideHost),$N(c,this._features),kC(c,this._features),ri==="chrome"&&(c.sdpSemantics="unified-plan");const l=o.setAndGetPeerConnection({constraints:a,peerConnectionConfig:c,shouldAddLocalVideo:s,clientId:e});setTimeout(()=>this._emit(_t.NEW_PC),0),l.ontrack=p=>{const m=p.streams[0];m.id==="default"&&m.getAudioTracks().length===0||o.streamIds.indexOf(m.id)===-1&&(o.streamIds.push(m.id),this._emit(Fr.STREAM_ADDED,{clientId:e,stream:m}),o.connectionStatus===Dn.CONNECTION_SUCCESSFUL&&setTimeout(()=>{this._emit(Fr.CLIENT_CONNECTION_STATUS_CHANGED,{streamIds:o.streamIds,clientId:e,status:o.connectionStatus,previous:Dn.CONNECTING})},0))},l.oniceconnectionstatechange=()=>{let p;const m=o.connectionStatus;switch(l.iceConnectionState){case"checking":p=Dn.CONNECTING;break;case"connected":case"completed":p=Dn.CONNECTION_SUCCESSFUL,o.wasEverConnected||(this._pendingActionsForConnectedPeerConnections.forEach(g=>{typeof g=="function"&&g()}),this._pendingActionsForConnectedPeerConnections=[]),!o.wasEverConnected&&(l.iceConnectionState.match(/connected|completed/)||ri==="chrome"&&l.localDescription&&l.localDescription.type==="answer")&&(o.wasEverConnected=!0),this._isAudioOnlyMode&&o.setAudioOnly(!0,this._screenshareVideoTrackIds),o.registerConnected();break;case"disconnected":p=Dn.CONNECTION_DISCONNECTED,setTimeout(()=>{l.iceConnectionState==="disconnected"&&this._maybeRestartIce(e,o)},2e3);break;case"failed":p=Dn.CONNECTION_FAILED,m!==p&&this._maybeRestartIce(e,o),o.relayCandidateSeen===null&&!o.wasEverConnected&&this._emit(_t.CONNECTION_BLOCKED_BY_NETWORK);break;default:return}this._setConnectionStatus(o,p,e)},l.onconnectionstate=()=>{switch(l.connectionState){case"connected":setTimeout(()=>{RN(o.pc).then(m=>{m!==!1&&this._emit(_t.MICROPHONE_NOT_WORKING,{failureDirection:m,clientId:e})})},3e3),o.registerConnected();break;case"failed":const p=Dn.CONNECTION_FAILED;o.relayCandidateSeen===null&&!o.wasEverConnected&&this._emit(_t.CONNECTION_BLOCKED_BY_NETWORK),this._setConnectionStatus(o,p,e);break}};const d=this.localStreams[Xi];return s&&d&&o.addStream(d),s&&Object.keys(this.localStreams).forEach(p=>{if(p===Xi)return;const m=this.localStreams[p];n?o.addStream(m):o.afterConnected.then(()=>{this._emitServerEvent(wi.START_SCREENSHARE,{receiverId:o.clientId,streamId:m.id,hasAudioTrack:!!m.getAudioTracks().length}),this._withForcedRenegotiation(o,()=>o.addStream(m))})}),o}_cleanup(e){const r=this._getSession(e);if(!r){jt.warn("No RTCPeerConnection in RTCManager.disconnect()",e);return}r.close(),delete this.peerConnections[e]}_forEachPeerConnection(e){Object.values(this.peerConnections).forEach(r=>{e(r)})}_addStreamToPeerConnections(e){this._forEachPeerConnection(r=>{this._withForcedRenegotiation(r,()=>r.addStream(e))})}_addTrackToPeerConnections(e,r){this._forEachPeerConnection(n=>{this._withForcedRenegotiation(n,()=>n.addTrack(e,r))})}_replaceTrackToPeerConnections(e,r){const n=[];return this._forEachPeerConnection(i=>{if(!i.hasConnectedPeerConnection()){jt.info("Session doesn't have a connected PeerConnection, adding pending action!");const o=this._pendingActionsForConnectedPeerConnections;if(!o){jt.warn("No pending action is created to replace track, because the pending actions array is null");return}const a=new Promise((c,l)=>{const d=()=>{const p=i.replaceTrack(e,r);if(!p){jt.error("replaceTrack returned false!"),l("ReplaceTrack returned false");return}p.then(m=>c(m)).catch(m=>l(m))};o.push(d)});n.push(a);return}const s=i.replaceTrack(e,r);if(!s){jt.error("replaceTrack returned false!");return}n.push(s)}),Promise.all(n)}_removeStreamFromPeerConnections(e){this._forEachPeerConnection(r=>{this._withForcedRenegotiation(r,()=>r.removeStream(e))})}_removeTrackFromPeerConnections(e){this._forEachPeerConnection(r=>{this._withForcedRenegotiation(r,()=>r.removeTrack(e))})}_addLocalStream(e,r){this._addEnabledLocalStreamId(e),this.localStreams[e]=r}_removeLocalStream(e){delete this.localStreams[e],this._deleteEnabledLocalStreamId(e)}_updateAndScheduleMediaServersRefresh({iceServers:e,turnServers:r,sfuServer:n,mediaserverConfigTtlSeconds:i}){this._iceServers=e,this._turnServers=r,this._sfuServer=n,this._mediaserverConfigTtlSeconds=i,this._clearMediaServersRefresh(),i&&(this._fetchMediaServersTimer=setTimeout(()=>this._emitServerEvent(wi.FETCH_MEDIASERVER_CONFIG),i*1e3))}_clearMediaServersRefresh(){this._fetchMediaServersTimer&&(clearTimeout(this._fetchMediaServersTimer),this._fetchMediaServersTimer=null)}_monitorAudioTrack(e){var r,n;((r=this._audioTrackBeingMonitored)===null||r===void 0?void 0:r.id)!==e.id&&((n=this._audioTrackBeingMonitored)===null||n===void 0||n.removeEventListener("ended",this._audioTrackOnEnded),e.addEventListener("ended",this._audioTrackOnEnded),this._audioTrackBeingMonitored=e)}_monitorVideoTrack(e){var r,n;((r=this._videoTrackBeingMonitored)===null||r===void 0?void 0:r.id)!==e.id&&((n=this._videoTrackBeingMonitored)===null||n===void 0||n.removeEventListener("ended",this._videoTrackOnEnded),e.addEventListener("ended",this._videoTrackOnEnded),this._videoTrackBeingMonitored=e)}_connect(e){let r=this._getSession(e),n=r&&r.bandwidth||0;return r?(jt.warn("Replacing peer session",e),this._cleanup(e)):n=this._changeBandwidthForAllClients(!0),r=this._createP2pSession({clientId:e,initialBandwidth:n,shouldAddLocalVideo:!0,isOfferer:!0}),this._negotiatePeerConnection(e,r),Promise.resolve(r)}_maybeRestartIce(e,r){const n=r.pc;(n.iceConnectionState==="disconnected"||n.iceConnectionState==="failed")&&n.localDescription.type==="offer"&&(r.wasEverConnected=!1,r.relayCandidateSeen=!1,r.serverReflexiveCandidateSeen=!1,r.publicHostCandidateSeen=!1,r.ipv6HostCandidateSeen=!1,this.ipv6HostCandidateTeredoSeen=!1,this.ipv6HostCandidate6to4Seen=!1,this.mdnsHostCandidateSeen=!1,this._emit(_t.ICE_RESTART),this._negotiatePeerConnection(e,r,Object.assign({},this.offerOptions,{iceRestart:!0})))}_setCodecPreferences(e){return he(this,void 0,void 0,function*(){const{p2pAv1On:r,redOn:n}=this._features;try{e.getTransceivers().filter(o=>{var a,c;return((c=(a=o?.sender)===null||a===void 0?void 0:a.track)===null||c===void 0?void 0:c.kind)==="audio"}).forEach(o=>{if(typeof RTCRtpSender.getCapabilities>"u")return;const a=RTCRtpSender.getCapabilities("audio");for(let c=0;c<a.codecs.length;c++)if(n&&a.codecs[c].mimeType.toLowerCase()==="audio/red"){a.codecs.unshift(a.codecs.splice(c,1)[0]);break}typeof o.setCodecPreferences>"u"||o.setCodecPreferences(a.codecs)});const s=e.getTransceivers().filter(o=>{var a,c;return((c=(a=o?.sender)===null||a===void 0?void 0:a.track)===null||c===void 0?void 0:c.kind)==="video"});yield Promise.all(s.map(o=>he(this,void 0,void 0,function*(){if(RTCRtpReceiver.getCapabilities===void 0||o.setCodecPreferences===void 0)return;const a=RTCRtpReceiver.getCapabilities("video");a.codecs=yield YN(a.codecs,{av1On:r}),o.setCodecPreferences(a.codecs)})))}catch(i){jt.error("Error during setting setCodecPreferences:",i)}})}_negotiatePeerConnection(e,r,n){if(!r){jt.warn("No RTCPeerConnection in negotiatePeerConnection()",e);return}const i=r.pc;if(!r.canModifyPeerConnection()){r.pending.push(()=>{this._negotiatePeerConnection(e,r,n)});return}r.isOperationPending=!0;const{redOn:s,rtpAbsCaptureTimeOn:o,cleanSdpOn:a}=this._features;this._setCodecPreferences(i).then(()=>i.createOffer(n||this.offerOptions).then(c=>{o&&(c.sdp=wN(c.sdp)),ri==="firefox"&&(c.sdp=gN(c.sdp,s)),a&&(c.sdp=vN(c.sdp)),i.setLocalDescription(c).catch(l=>{throw jt.warn("RTCPeerConnection.setLocalDescription() failed with local offer",l),this._emit(_t.PC_SLD_FAILURE,l),l}).then(()=>{this._emitServerEvent(On.SDP_OFFER,{receiverId:e,message:this._transformOutgoingSdp(c)})})}).catch(c=>{jt.warn("RTCPeerConnection.createOffer() failed to create local offer",c)}))}_withForcedRenegotiation(e,r){const n=e.pc,i=n.onnegotationneeded;n.onnegotiationneeded=null,r(),this._negotiatePeerConnection(e.clientId,e),setTimeout(()=>n.onnegotiationneeded=i,0)}_changeBandwidthForAllClients(e){let r=this.numberOfPeerconnections();if(e&&(r+=1),r===0)return 0;r>7&&(r=7);const n=this._features.bandwidth?parseInt(this._features.bandwidth,10):{1:0,2:384,3:256,4:192,5:128,6:128,7:64}[r];return n===void 0?0:(this._forEachPeerConnection(i=>{i.changeBandwidth(n)}),n)}_createP2pSession({clientId:e,initialBandwidth:r,shouldAddLocalVideo:n=!1,isOfferer:i=!1}){const s=this._createSession({peerConnectionId:e,clientId:e,initialBandwidth:r,shouldAddLocalVideo:n,isOfferer:i}),o=s.pc;this._features.increaseIncomingMediaBufferOn&&this._setJitterBufferTarget(o);const a=this.localStreams[Xi];return n&&a&&!a.getVideoTracks().length&&this._stoppedVideoTrack&&o.addTrack(this._stoppedVideoTrack,a),o.onicegatheringstatechange=c=>{switch(c.target.iceGatheringState){case"gathering":this.icePublicIPGatheringTimeoutID&&clearTimeout(this.icePublicIPGatheringTimeoutID),this.icePublicIPGatheringTimeoutID=setTimeout(()=>{!s.publicHostCandidateSeen&&!s.relayCandidateSeen&&!s.serverReflexiveCandidateSeen&&(o.iceConnectionState!=="connected"||o.iceConnectionState!=="completed")&&this._emit(_t.ICE_NO_PUBLIC_IP_GATHERED_3SEC)},oL);break;case"complete":this.icePublicIPGatheringTimeoutID&&clearTimeout(this.icePublicIPGatheringTimeoutID),this.icePublicIPGatheringTimeoutID=void 0;break}},o.onicecandidate=c=>{var l,d;if(c.candidate){switch((l=c.candidate)===null||l===void 0?void 0:l.type){case"host":const p=(d=c?.candidate)===null||d===void 0?void 0:d.address;try{if(xl.v4({exact:!0}).test(p))pk(p).isPublicIp&&(s.publicHostCandidateSeen=!0);else if(xl.v6({exact:!0}).test(p.replace(/^\[(.*)\]/,"$1"))){const m=new ak.Address6(p.replace(/^\[(.*)\]/,"$1"));s.ipv6HostCandidateSeen=!0,m.getScope()==="Global"&&(s.publicHostCandidateSeen=!0),m.isTeredo()&&(s.ipv6HostCandidateTeredoSeen=!0),m.is6to4()&&(s.ipv6HostCandidate6to4Seen=!0)}else{const m=p.replace(/.local/,"");m&&gk(m,4)&&(s.mdnsHostCandidateSeen=!0)}}catch(m){jt.info("Error during parsing candidates! Error: ",{error:m})}break;case"srflx":s.serverReflexiveCandidateSeen||(s.serverReflexiveCandidateSeen=!0);break;case"relay":case"relayed":s.relayCandidateSeen||(s.relayCandidateSeen=!0);break}this._emitServerEvent(On.ICE_CANDIDATE,{receiverId:e,message:c.candidate})}else this._emitServerEvent(On.ICE_END_OF_CANDIDATES,{receiverId:e}),!s.publicHostCandidateSeen&&!s.relayCandidateSeen&&!s.serverReflexiveCandidateSeen&&o.iceConnectionState!=="connected"&&o.iceConnectionState!=="completed"&&this._emit(_t.ICE_NO_PUBLIC_IP_GATHERED),s.ipv6HostCandidateSeen&&this._emit(_t.ICE_IPV6_SEEN,{teredoSeen:s.ipv6HostCandidateTeredoSeen,sixtofourSeen:s.ipv6HostCandidate6to4Seen}),s.mdnsHostCandidateSeen&&this._emit(_t.ICE_MDNS_SEEN)},o.onnegotiationneeded=()=>{o.iceConnectionState==="new"||!s.connectionStatus||this._negotiatePeerConnection(e,s)},s}acceptNewStream({streamId:e,clientId:r,shouldAddLocalVideo:n}){let i=this._getSession(r);if(i&&e!==r)return i;let s=i&&i.bandwidth||0;return i?(jt.warn("Replacing peer session",r),this._cleanup(r)):s=this._changeBandwidthForAllClients(!0),i=this._createP2pSession({clientId:r,initialBandwidth:s,shouldAddLocalVideo:!!n,isOfferer:!1}),this._emitServerEvent(On.READY_TO_RECEIVE_OFFER,{receiverId:r}),i}disconnect(e){this._cleanup(e),this._changeBandwidthForAllClients(!1),this.numberOfPeerconnections()===0&&setTimeout(()=>{this.numberOfPeerconnections()===0&&this.rtcStatsDisconnect()},60*1e3)}updateStreamResolution(){}stopOrResumeAudio(){}_handleStopOrResumeVideo({enable:e,track:r}){e?this._stoppedVideoTrack?(this._replaceTrackToPeerConnections(this._stoppedVideoTrack,r),delete this._stoppedVideoTrack):this._addTrackToPeerConnections(r):this._stoppedVideoTrack=r}stopOrResumeVideo(e,r){var n;if(["chrome","safari"].includes(ri)){if(r===!1){const i=((n=e.getVideoTracks().find(s=>!s.enabled))===null||n===void 0?void 0:n.readyState)==="ended"?0:5e3;setTimeout(()=>{e.getVideoTracks().forEach(s=>{s.enabled===!1&&(s.stop(),e.removeTrack(s),this._emit(Fr.LOCAL_STREAM_TRACK_REMOVED,{stream:e,track:s}),this._handleStopOrResumeVideo({enable:r,track:s}))})},i)}else if(e.getVideoTracks().length===0){const i=this._webrtcProvider.getMediaConstraints().video;if(!i)return;navigator.mediaDevices.getUserMedia({video:i}).then(s=>{const o=s.getVideoTracks()[0];e.addTrack(o),this._monitorVideoTrack(o),this._emit(Fr.LOCAL_STREAM_TRACK_ADDED,{streamId:e.id,tracks:[o],screenShare:!1}),this._handleStopOrResumeVideo({enable:r,track:o})})}}}_shareScreen(e,r){this._emitServerEvent(wi.START_SCREENSHARE,{streamId:e,hasAudioTrack:!!r.getAudioTracks().length}),this._wasScreenSharing=!0,this._addStreamToPeerConnections(r)}removeStream(e,r,n){this._removeLocalStream(e),this._removeStreamFromPeerConnections(r),this._wasScreenSharing=!1,this._emitServerEvent(wi.STOP_SCREENSHARE,{streamId:e,requestedByClientId:n})}hasClient(e){return Object.keys(this.peerConnections).includes(e)}}class cL{constructor({R:e=.01,Q:r=2,A:n=1.1,B:i=1,C:s=1.2}={R:.01,Q:2,A:1.1,B:1,C:1.2}){this.R=e,this.Q=r,this.A=n,this.C=s,this.B=i,this.cov=NaN,this.x=NaN}filter(e,r=0){if(isNaN(this.x))this.x=1/this.C*e,this.cov=1/this.C*this.Q*(1/this.C);else{const n=this.predict(r),i=this.uncertainty(),s=i*this.C*(1/(this.C*i*this.C+this.Q));this.x=n+s*(e-this.C*n),this.cov=i-s*this.C*i}return this.x}predict(e=0){return this.A*this.x+this.B*e}uncertainty(){return this.A*this.cov*this.A+this.R}lastMeasurement(){return this.x}setMeasurementNoise(e){this.Q=e}setProcessNoise(e){this.R=e}}const lL=()=>{let t=-1,e=0,r=0;return n=>{const i=n.reduce((o,a)=>o+a,0)/n.length;if(t<0?t=i:t=t*.95+i*.05,++r<2)return e=i,0;const s=(i-t)*(e-t);return e=i,s}},dL=t=>{const e=t.reduce((r,n)=>r+n,0)/t.length;return t.reduce((r,n)=>r.concat(Math.pow(n-e,2)),[]).reduce((r,n)=>r+n,0)/t.length},uL=t=>{const e=t.reduce((r,n)=>r+n,0)/t.length;return{mean:e,SD:Math.sqrt(t.reduce((r,n)=>r+Math.pow(n-e,2),0)/t.length)}},fL=(t,e=!1)=>{const r=t.reduce((n,i)=>n+i,0)/t.length;return t.reduce((n,i)=>n.concat(Math.pow(i-r,2)),[]).reduce((n,i)=>n+i,0)/(t.length-(e?0:1))};var kb=Object.freeze({__proto__:null,KalmanFilter:cL,calculateStd:dL,createACFCalculator:lL,standardDeviation:uL,variance:fL});const pL={minDecibels:-80,maxDecibels:-10,smoothingTimeConstant:.8,aggSize:1,sampleRate:10,reportRate:2,bins:32,bands:[[0,1,2,3],[4,5,6,7]],separateTrack:{autoGainControl:!1,noiseSupression:!1},binFormula:"bin",scoreFormula:"300 * bands[1].avg / Math.max(bands[1].avg + bands[0].avg, 0.01)",outFormula:"score"},hL=new Rn;function mL({micTrack:t,params:e,onScoreUpdated:r}){const n=new AudioContext;let i=null,s=null,o=null,a=!1;const c=p=>he(this,void 0,void 0,function*(){if(o&&a&&o.stop(),a=!1,p&&e.separateTrack)try{p=(yield navigator.mediaDevices.getUserMedia({audio:Object.assign({deviceId:o?.getSettings().deviceId},e.separateTrack),video:!1})).getAudioTracks()[0],a=!0}catch(m){hL.warn("unable to fetch new track for colocation speaker analysis, using current",m)}if(o=p,s&&(s.disconnect(),s=null),p){const m=new MediaStream([p]);s=n.createMediaStreamSource(m),s.connect(i)}});let l;const d=p=>{if(clearInterval(l),e=Object.assign(Object.assign({},pL),p),!i||i.fftSize!==e.bins*2){let b=null;i&&(b=o,c(null)),i=n.createAnalyser(),i.fftSize=e.bins*2,b&&c(b)}const m=new Uint8Array(i.frequencyBinCount),g=[];i.minDecibels=e.minDecibels,i.maxDecibels=e.maxDecibels,i.smoothingTimeConstant=e.smoothingTimeConstant;const v=e.initScript&&new Function("f","setTrack","lastTrack",e.initScript.join(`
186
+ `)),S=e.scoreScript&&new Function("bins","g","f",e.scoreScript.join(`
187
+ `)),C=e.scoreFormula&&new Function("bands",`return ${e.scoreFormula}`),w=e.outFormula&&new Function("score","avg","max","scores",`return ${e.outFormula}`),y=e.binFormula&&new Function("bin","index",`return ${e.binFormula}`);let f=0;const u=v&&v(kb,c,o);l=setInterval(()=>{i.getByteFrequencyData(m);let b=0;if(C){const A=e.bands.map(R=>{const _=R.map(E=>y(m[E]/255,E));return{avg:_.reduce((E,P)=>E+P,0)/R.length,min:_.reduce((E,P)=>Math.min(E,P/255),Number.MAX_VALUE),max:_.reduce((E,P)=>Math.max(E,P/255),0)}});b=C(A)||0}else S&&(b=S(m,u,kb),isNaN(b)&&(b=0));if(g.push(b),g.length>e.aggSize&&g.shift(),f++,f>=e.reportRate){f=0;const A=g.reduce((E,P)=>Math.max(E,P),0),R=g.reduce((E,P)=>E+P,0)/g.length,_=w(b,R,A,g);r({bins:m,score:b,max:A,avg:R,out:_})}},1e3/e.sampleRate)};return d(e),c(t),{setParams:d,setTrack:c,close(){c(null),clearInterval(l),n.close()}}}const Ho=new Rn,Vo=Object.freeze({ok:"ok",warning:"warning",critical:"critical"}),gL=600,vL=3,bL=9,Mb=7;class yL extends lC{constructor(){super(),this._clients={},this._producers={},this._startMonitor()}close(){clearInterval(this._intervalHandle),delete this._intervalHandle,this._producers={},this._clients={}}_startMonitor(){this._intervalHandle=setInterval(()=>{Object.entries(this._producers).forEach(([e,r])=>{this._evaluateClient(e,r)})},gL)}_evaluateClient(e,r){this._clients[e]||(this._clients[e]={audio:{currentQuality:Vo.ok,trend:[]},video:{currentQuality:Vo.ok,trend:[]}}),this._evaluateProducer(e,Object.values(r).filter(n=>n.kind==="audio"),"audio"),this._evaluateProducer(e,Object.values(r).filter(n=>n.kind==="video"),"video")}_evaluateProducer(e,r,n){if(r.length===0)return;const i=r.reduce((a,c)=>a+c.score,0)/r.length,s=this._evaluateScore(i);this._updateTrend(s,this._clients[e][n])&&this.emit(Ol.MEDIA_QUALITY_CHANGED,{clientId:e,kind:n,quality:s})}_updateTrend(e,r){return r.trend.push(e),r.trend.length>vL&&r.trend.shift(),e!==r.currentQuality&&r.trend.every(n=>n!==r.currentQuality)?(r.currentQuality=e,!0):!1}addProducer(e,r){if(!e||!r||!(typeof e=="string"&&typeof r=="string")){Ho.warn("Missing clientId or producerId");return}this._producers[e]||(this._producers[e]={}),this._producers[e][r]={}}removeProducer(e,r){delete this._producers[e][r],Object.keys(this._producers[e]).length===0&&delete this._producers[e]}addConsumer(e,r){if(!e||!r){Ho.warn("Missing clientId or consumerId");return}this._producers[e]||(this._producers[e]={}),this._producers[e][r]={}}removeConsumer(e,r){delete this._producers[e][r],Object.keys(this._producers[e]).length===0&&delete this._producers[e]}addProducerScore(e,r,n,i){if(!Array.isArray(i)||i.length===0||i.some(s=>!s||!s.hasOwnProperty("score")||typeof s.score!="number"||isNaN(s.score))){Ho.warn("Unexpected producer score format");return}this._producers[e][r]={kind:n,score:this._calcAvgProducerScore(i.map(s=>s.score))}}addConsumerScore(e,r,n,i){if(!i||!i.hasOwnProperty("producerScores")||!Array.isArray(i.producerScores)){Ho.warn("Unexpected consumer score format");return}this._producers[e][r]={kind:n,score:this._calcAvgProducerScore(i.producerScores)}}_evaluateScore(e){return e<=bL&&e>Mb?Vo.warning:e<=Mb&&e>0?Vo.critical:Vo.ok}_calcAvgProducerScore(e){try{if(!Array.isArray(e)||e.length===0)return 0;let r=0,n=0;return e.forEach(i=>{i>0&&(r+=i,n++)}),r===0||n===0?0:r/n}catch(r){return Ho.error(r),0}}}function SL({width:t,height:e},{numberOfActiveVideos:r,numberOfTemporalLayers:n,uncappedSingleRemoteVideoOn:i}){const s=Math.max(t,e);let o=s>=480?s>=960?2:1:0,a=n-1;return s<100&&(a=Math.max(n-2,0)),r>8&&o===0&&(a=Math.max(n-2,0)),r<4&&s>300&&o===0&&(o=1),i&&r===1&&(o=2,a=n-1),{spatialLayer:o,temporalLayer:a}}function wL(t){let e=0;return t.forEach(r=>{var n,i;r._closed||r._paused||(((n=r._appData)===null||n===void 0?void 0:n.source)==="webcam"||((i=r._appData)===null||i===void 0?void 0:i.source)==="screenvideo")&&e++}),e}function CL(t){var e,r,n;return/T3/.test(((n=(r=(e=t._rtpParameters)===null||e===void 0?void 0:e.encodings)===null||r===void 0?void 0:r[0])===null||n===void 0?void 0:n.scalabilityMode)||"")?3:2}class es{static parse(e){let r;try{r=JSON.parse(e)}catch{return}if(!(typeof r!="object"||Array.isArray(r)))return r.request?es._handleRequest(r):r.response?es._handleResponse(r):r.message?es._handleMessage(r):void 0}static _handleRequest(e){const r={};if(r.request=!0,typeof e.method=="string"&&typeof e.id=="number")return r.id=e.id,r.method=e.method,r.data=e.data||{},r}static _handleResponse(e){const r={};if(r.response=!0,typeof e.id=="number")return r.id=e.id,e.ok?(r.ok=!0,r.data=e.data||{}):(r.ok=!1,r.errorCode=e.errorCode,r.errorReason=e.errorReason),r}static _handleMessage(e){const r={};if(r.message=!0,typeof e.method=="string")return r.method=e.method,r.data=e.data||{},r}static createRequest(e,r){return{request:!0,id:Math.round(Math.random()*1e7),method:e,data:r||{}}}static createSuccessResponse(e,r){return{response:!0,id:e.id,ok:!0,data:r||{}}}static createErrorResponse(e,r,n){return{response:!0,id:e.id,errorCode:r,errorReason:n}}static createMessage(e,r){return{message:!0,method:e,data:r||{}}}}const gc=new Rn;class AL extends Ca.EventEmitter{constructor(e,r="whereby-sfu#v4"){super(),this.socket=null,this.wsUrl=e,this.protocol=r,this.sents=new Map,this._setupSocket()}_setupSocket(){this.socket=new WebSocket(this.wsUrl,this.protocol),this.socket.onopen=this._onOpen.bind(this),this.socket.onmessage=this._onMessage.bind(this),this.socket.onclose=this._onClose.bind(this),this.socket.onerror=this._onError.bind(this)}_tearDown(){this.socket!==null&&(this.socket.onopen=null,this.socket.onmessage=null,this.socket.onclose=null,this.socket.onerror=null,this.socket=null,this.sents.forEach(e=>e.close()),this.emit("close"))}close(){var e;(e=this.socket)===null||e===void 0||e.close()}_onOpen(){gc.info("Connected"),this.emit("open")}_onMessage(e){const r=es.parse(e.data);gc.info("Received message",r),r?.response?this._handleResponse(r):r?.message&&this.emit("message",r)}_onClose(){gc.info("Disconnected"),this._tearDown()}_onError(e){gc.info("Error",e)}_handleResponse(e){const r=this.sents.get(e.id);if(e.ok)r.resolve(e.data);else{const n=new Error(e.errorReason);r.reject(n)}}send(e){try{this.socket&&this.socket.send(JSON.stringify(e))}catch{}}message(e,r={}){const n=es.createMessage(e,r);this.send(n)}request(e,r={},n=1500*(15+.1*this.sents.size)){const i=es.createRequest(e,r);return this.send(i),new Promise((s,o)=>{const a={id:i.id,method:i.method,resolve:c=>{this.sents.delete(i.id)&&(clearTimeout(a.timer),s(c))},reject:c=>{this.sents.delete(i.id)&&(clearTimeout(a.timer),o(c))},timer:setTimeout(()=>{this.sents.delete(i.id)&&o(new Error("request timeout"))},n),close:()=>{clearTimeout(a.timer),o(new Error("transport closed"))}};this.sents.set(i.id,a)})}}const RL=500,_L=2e3,EL=100;function PL(t){return typeof t=="string"?t.split(",").filter(Boolean).map(e=>{const[r,n]=/\|/.test(e)?e.split("|"):["",e];return{host:n,dc:r}}):t.filter(e=>e.host).map(e=>({host:e.host,dc:e.dc||""}))}function TL(t){let e,r,n,i,s=[];const o=m=>{s=PL(m)};let a=!1,c=!1;const l=()=>{if(a){c=!0;return}a=!0,c=!1;let m=s;if(e){const R=Date.now(),_=R-3e3>(r||0),P=(!i||(n||0)>i)&&R-3e3>(n||0);(!_||!P)&&(m=[{host:e.host,dc:e.dc}])}const g={};let v=0;m.forEach(({dc:R})=>{typeof g[R]>"u"&&(g[R]=v++)});let S=0;const C={};let w,y=m.length,f=!1,u=!1;const h=i,b=()=>{var R;y--,y===0&&!f&&(a=!1,c?setTimeout(l,0):(R=t.onFailed)===null||R===void 0||R.call(t))},A=[];m.forEach(({host:R,dc:_},E)=>{if(E>0){S+=RL;const P=(C[_]||0)+_L;S=Math.max(S,P)}C[_]=S,A.push(setTimeout(()=>{var P;if(A.shift(),u)return;if(h!==i){b(),A.forEach(F=>{clearTimeout(F),b()});return}const T=new AL(((P=t.getUrlForHost)===null||P===void 0?void 0:P.call(t,R))||R);let k=!1;T.on("open",()=>{setTimeout(()=>{var F;if(!k)if(!w&&!u){w=T,u=!0;const X=[...new Set(m.slice(0,E).filter(L=>L.host!==R).map(L=>L.host))],O=[...new Set(m.slice(0,E).filter(L=>L.dc!==_).map(L=>L.dc))];e?e=Object.assign(Object.assign({},e),{host:R,dc:_,failedHosts:[...new Set([...X,...e.failedHosts])].filter(L=>L!==R&&!e.usedHosts.includes(L)),failedDCs:[...new Set([...O,...e.failedDCs])].filter(L=>L!==_&&!e.usedDCs.includes(L)),usedHosts:[...new Set([...e.usedHosts,R])],usedDCs:[...new Set([...e.usedDCs,_])],numConnections:e.numConnections+1}):e={host:R,dc:_,initialHost:R,initialDC:_,initialHostIndex:E,initialDCIndex:g[_],failedHosts:X,failedDCs:O,usedHosts:[R],usedDCs:[_],numConnections:1,numUsedDCs:1,numUsedHosts:1,numFailedDCs:0,numFailedHosts:0},e.numUsedDCs=e.usedDCs.length,e.numUsedHosts=e.usedHosts.length,e.numFailedDCs=e.failedDCs.length,e.numFailedHosts=e.failedHosts.length,c=!1,a=!1,(F=t.onConnected)===null||F===void 0||F.call(t,T,e)}else T.close()},EL)}),T.on("close",()=>{var F;k=!0,T===w&&(w=void 0,r=Date.now(),f=!0,(F=t.onDisconnected)===null||F===void 0||F.call(t)),b()})},S))})};return o(t.initialHostList),{connect:l,updateHostList:o,networkIsUp:()=>{n=Math.max(Date.now(),n||0)},networkIsPossiblyDown:()=>{i=Date.now()}}}var Yu;const IL=(Yu=Gt.default)!==null&&Yu!==void 0?Yu:Gt,ge=new Rn,NC=IL.browserDetails.browser;let lp=!1;const Nb=3500,OL=5,Lb=fh(),vc=fh();NC==="chrome"&&window.document.addEventListener("beforeunload",()=>lp=!0);class xL{constructor({selfId:e,room:r,emitter:n,serverSocket:i,webrtcProvider:s,features:o,eventClaim:a}){const{session:c,iceServers:l,turnServers:d,sfuServer:p,sfuServers:m,mediaserverConfigTtlSeconds:g}=r;this._selfId=e,this._room=r,this._roomSessionId=c?.id,this._emitter=n,this._serverSocket=i,this._webrtcProvider=s,this._features=o||{},this._eventClaim=a,this._vegaConnection=null,this._micAnalyser=null,this._micAnalyserDebugger=null,this._mediasoupDevice=xN(o),this._routerRtpCapabilities=null,this._sendTransport=null,this._receiveTransport=null,this._clientStates=new Map,this._streamIdToVideoConsumerId=new Map,this._streamIdToVideoResolution=new Map,this._consumers=new Map,this._dataConsumers=new Map,this._localStreamDeregisterFunction=null,this._micTrack=null,this._webcamTrack=null,this._screenVideoTrack=null,this._screenAudioTrack=null,this._micProducer=null,this._micProducerPromise=null,this._micPaused=!1,this._micScoreProducer=null,this._micScoreProducerPromise=null,this._webcamProducer=null,this._webcamProducerPromise=null,this._webcamPaused=!1,this._screenVideoProducer=null,this._screenVideoProducerPromise=null,this._screenAudioProducer=null,this._screenAudioProducerPromise=null,this._sndTransportIceRestartPromise=null,this._rcvTransportIceRestartPromise=null,this._colocation=null,this._stopCameraTimeout=null,this._audioTrackOnEnded=()=>{bt.sendEvent("audio_ended",{unloading:lp}),this._emitToPWA(_t.MICROPHONE_STOPPED_WORKING,{})},this._videoTrackOnEnded=()=>{bt.sendEvent("video_ended",{unloading:lp}),this._emitToPWA(_t.CAMERA_STOPPED_WORKING,{})},this._updateAndScheduleMediaServersRefresh({sfuServer:p,sfuServers:m,iceServers:l?.iceServers||[],turnServers:d||[],mediaserverConfigTtlSeconds:g}),this._socketListenerDeregisterFunctions=[],this._reconnect=!0,this._reconnectTimeOut=null,this._isConnectingOrConnected=!1,this._qualityMonitor=new yL,this._qualityMonitor.on(Ol.MEDIA_QUALITY_CHANGED,v=>{this._emitToPWA(Ol.MEDIA_QUALITY_CHANGED,v)}),this._networkIsDetectedUpBySignal=!1}_updateAndScheduleMediaServersRefresh({iceServers:e,turnServers:r,sfuServer:n,sfuServers:i,mediaserverConfigTtlSeconds:s}){var o,a,c;this._iceServers=e,this._turnServers=r,this._sfuServer=n,this._sfuServers=i,!i&&n?.fallbackServers&&(this._sfuServers=n.fallbackServers.map(d=>({host:d.host||d.fqdn,dc:d.dc}))),this._mediaserverConfigTtlSeconds=s,(o=this._vegaConnectionManager)===null||o===void 0||o.updateHostList(this._features.sfuServersOverride||this._sfuServers||this._features.sfuServerOverrideHost||n.url);const l={iceServers:this._features.turnServersOn?this._turnServers:this._iceServers};l.iceServers=ap(l.iceServers,this._features.turnServerOverrideHost),(a=this._sendTransport)===null||a===void 0||a.updateIceServers(l),(c=this._receiveTransport)===null||c===void 0||c.updateIceServers(l),this._clearMediaServersRefresh(),s&&(this._fetchMediaServersTimer=setTimeout(()=>this._emitToSignal(wi.FETCH_MEDIASERVER_CONFIG),s*1e3))}_clearMediaServersRefresh(){this._fetchMediaServersTimer&&(clearTimeout(this._fetchMediaServersTimer),this._fetchMediaServersTimer=null)}_onNetworkIsDetectedUpBySignal(){var e;this._networkIsDetectedUpBySignal||(this._networkIsDetectedUpBySignal=!0,(e=this._vegaConnectionManager)===null||e===void 0||e.networkIsUp())}_onNetworkIsDetectedPossiblyDownBySignal(){var e;this._networkIsDetectedUpBySignal&&(this._networkIsDetectedUpBySignal=!1,(e=this._vegaConnectionManager)===null||e===void 0||e.networkIsPossiblyDown())}setupSocketListeners(){this._socketListenerDeregisterFunctions.push(()=>this._clearMediaServersRefresh(),this._serverSocket.on(dt.MEDIASERVER_CONFIG,e=>{if(e.error){ge.warn("FETCH_MEDIASERVER_CONFIG failed:",e.error);return}this._updateAndScheduleMediaServersRefresh(e)}),this._serverSocket.on(dt.ROOM_JOINED,e=>{e?.error||(this._screenVideoTrack&&this._emitScreenshareStarted(),this._reconnect&&this._connect())}),this._serverSocket.on("connect",()=>this._onNetworkIsDetectedUpBySignal()),this._serverSocket.onEngineEvent("packet",()=>this._onNetworkIsDetectedUpBySignal()),this._serverSocket.on("disconnect",()=>this._onNetworkIsDetectedPossiblyDownBySignal())),this._connect()}_emitScreenshareStarted(){this._emitToSignal(wi.START_SCREENSHARE,{streamId:vc,hasAudioTrack:!!this._screenAudioTrack})}_connect(){if(!this._isConnectingOrConnected){if(!this._serverSocket.isConnected()){const e=this._serverSocket.getReconnectThreshold();if(!e||Date.now()>(this._serverSocket.disconnectTimestamp||0)+e)return}if(this._reconnectTimeOut&&clearTimeout(this._reconnectTimeOut),!this._vegaConnectionManager){const e=this._features.sfuServersOverride||this._sfuServers||this._features.sfuServerOverrideHost||this._sfuServer.url;this._vegaConnectionManager=TL({initialHostList:e,getUrlForHost:r=>{const i=new URLSearchParams(Object.assign({clientId:this._selfId,organizationId:this._room.organizationId,roomName:this._room.name,eventClaim:this._room.isClaimed?this._eventClaim:null,lowBw:"true"},Object.keys(this._features||{}).filter(o=>this._features[o]&&/^sfu/.test(o)).reduce((o,a)=>Object.assign(Object.assign({},o),{[a]:this._features[a]}),{}))).toString();return`wss://${r}?${i}`},onConnected:(r,n)=>{this._vegaConnection=r,this._vegaConnection.on("message",i=>this._onMessage(i)),this._emitToPWA(_t.SFU_CONNECTION_INFO,n),this._join()},onDisconnected:()=>{this._vegaConnection=null,this._isConnectingOrConnected=!1,this._onClose()},onFailed:()=>{this._vegaConnection=null,this._isConnectingOrConnected=!1,this._onClose()}})}this._vegaConnectionManager.connect(),this._isConnectingOrConnected=!0}}_onClose(){var e,r;ge.info("_onClose()"),(e=this._sendTransport)===null||e===void 0||e.close(),(r=this._receiveTransport)===null||r===void 0||r.close(),this._sendTransport=null,this._receiveTransport=null,this._streamIdToVideoConsumerId.clear(),this._streamIdToVideoResolution.clear(),this._reconnect&&(this._reconnectTimeOut=setTimeout(()=>this._connect(),1e3)),this._qualityMonitor.close(),this._emitToPWA(_t.SFU_CONNECTION_CLOSED)}_join(){return he(this,void 0,void 0,function*(){var e,r;ge.info("join()"),this._emitToPWA(_t.SFU_CONNECTION_OPEN);try{const{routerRtpCapabilities:n}=yield this._vegaConnection.request("getCapabilities");if(!this._routerRtpCapabilities){const s=VN(n,Object.assign(Object.assign({},this._features),{vp9On:this._features.sfuVp9On}));this._routerRtpCapabilities=s,yield(e=this._mediasoupDevice)===null||e===void 0?void 0:e.load({routerRtpCapabilities:s})}this._vegaConnection.message("setCapabilities",{rtpCapabilities:(r=this._mediasoupDevice)===null||r===void 0?void 0:r.rtpCapabilities}),this._colocation&&this._vegaConnection.message("setColocation",{colocation:this._colocation}),yield Promise.all([this._createTransport(!0),this._createTransport(!1)]);const i=[];this._micTrack&&!this._micProducer&&!this._micProducerPromise&&i.push(this._internalSendMic()),this._webcamTrack&&!this._webcamProducer&&!this._webcamProducerPromise&&i.push(this._internalSendWebcam()),this._screenVideoTrack&&!this._screenVideoProducer&&!this._screenVideoProducerPromise&&i.push(this._internalSendScreenVideo()),this._screenAudioTrack&&!this._screenAudioProducer&&!this._screenAudioProducerPromise&&i.push(this._internalSendScreenAudio()),yield Promise.all(i)}catch(n){ge.error("_join() [error:%o]",n)}})}_createTransport(e){return he(this,void 0,void 0,function*(){var r;const n=e?"createSendTransport":"createRecvTransport",i=yield this._vegaConnection.request("createTransport",{producing:e,consuming:!e,enableTcp:!0,enableUdp:!0,preferUdp:!0,sctpParameters:{enableSctp:!0,numSctpStreams:{OS:1024,MIS:1024},maxSctpMessageSize:262144,sctpSendBufferSize:262144}});i.iceServers=ap(this._features.turnServersOn?this._turnServers:this._iceServers,this._features.turnServerOverrideHost),kC(i,this._features);const s=(r=this._mediasoupDevice)===null||r===void 0?void 0:r[n](i),o=a=>he(this,void 0,void 0,function*(){if(ge.info(`Transport ConnectionStateChanged ${a}`),!(a!=="disconnected"&&a!=="failed"))if(e){if(this._sndTransportIceRestartPromise)return;this._sndTransportIceRestartPromise=this._restartIce(s).finally(()=>{this._sndTransportIceRestartPromise=null})}else{if(this._rcvTransportIceRestartPromise)return;this._rcvTransportIceRestartPromise=this._restartIce(s).finally(()=>{this._rcvTransportIceRestartPromise=null})}});s?.on("connect",({dtlsParameters:a},c)=>{var l;(l=this._vegaConnection)===null||l===void 0||l.message("connectTransport",{transportId:s.id,dtlsParameters:a}),c()}).on("connectionstatechange",o),s?.observer.once("close",()=>{s.removeListener("connectionstatechange",o)}),e?(s?.on("produce",(a,c,l)=>he(this,[a,c,l],void 0,function*({kind:d,rtpParameters:p,appData:m},g,v){var S;try{const{paused:C}=m,{id:w}=yield(S=this._vegaConnection)===null||S===void 0?void 0:S.request("produce",{transportId:s.id,kind:d,rtpParameters:p,paused:C,appData:m});g({id:w})}catch(C){v(C)}})),s?.on("producedata",(a,c,l)=>he(this,[a,c,l],void 0,function*({appData:d,sctpStreamParameters:p},m,g){var v;try{const{id:S}=yield(v=this._vegaConnection)===null||v===void 0?void 0:v.request("produceData",{transportId:s.id,sctpStreamParameters:p,appData:d});m({id:S})}catch(S){g(S)}})),this._sendTransport=s):this._receiveTransport=s})}_restartIce(e){return he(this,arguments,void 0,function*(r,n=0){if(!r||!("closed"in r)||!("connectionState"in r)){ge.info("_restartIce: No transport or property closed or connectionState!");return}if(r.closed){ge.info("_restartIce: Transport is closed!");return}if(r.connectionState!=="disconnected"&&r.connectionState!=="failed"){ge.info("_restartIce: Connection is healthy ICE restart no loneger needed!");return}const{iceRestartStarted:i}=r.appData,s=Date.now();if(Number.isFinite(i)&&s-i<Nb)return;if(r.appData.iceRestartStarted=s,OL<=n){ge.info("_restartIce: Reached restart ICE maximum retry count!");return}if(!this._vegaConnection){ge.info("_restartIce: Connection is undefined");return}const{iceParameters:o}=yield this._vegaConnection.request("restartIce",{transportId:r.id});ge.info("_restartIce: ICE restart iceParameters received from SFU: ",o);const a=yield r.restartIce({iceParameters:o}).then(()=>null).catch(c=>c);if(a){switch(ge.error(`_restartIce: ICE restart failed: ${a}`),a.message){case"missing transportId":case"no such transport":break;default:yield new Promise(c=>{setTimeout(()=>{c(void 0)},Math.min(Nb*Math.pow(2,n),6e4))}),yield this._restartIce(r,n+1);break}return}if(yield new Promise(c=>{setTimeout(()=>{c(void 0)},6e4*Math.min(8,n+1))}),r.connectionState==="failed"||r.connectionState==="disconnected"){yield this._restartIce(r,n+1);return}})}_internalSendMic(){return he(this,void 0,void 0,function*(){ge.info("_internalSendMic()"),this._micProducerPromise=he(this,void 0,void 0,function*(){try{if(!this._micTrack||!this._sendTransport||this._micProducer){this._micProducerPromise=null;return}const e=this._micPaused,r=yield this._sendTransport.produce(Object.assign(Object.assign({track:this._micTrack,disableTrackOnPause:!1,stopTracks:!1},mc("audio",!1,Object.assign(Object.assign({},this._features),{vp9On:this._features.sfuVp9On}))),{appData:{streamId:Lb,sourceClientId:this._selfId,screenShare:!1,source:"mic",paused:e}}));e?r.pause():r.resume(),this._micProducer=r,this._qualityMonitor.addProducer(this._selfId,r.id),r.observer.once("close",()=>{var n;ge.info('micProducer "close" event'),r.appData.localClosed&&((n=this._vegaConnection)===null||n===void 0||n.message("closeProducers",{producerIds:[r.id]})),this._micProducer=null,this._micProducerPromise=null,this._qualityMonitor.removeProducer(this._selfId,r.id)}),this._micTrack!==this._micProducer.track&&(yield this._replaceMicTrack()),this._micPaused!==this._micProducer.paused&&this._pauseResumeMic()}catch(e){ge.error("micProducer failed:%o",e)}finally{this._micProducerPromise=null,this._micTrack||(this._stopProducer(this._micProducer),this._micProducer=null)}})})}_internalSetupMicScore(){return he(this,void 0,void 0,function*(){ge.info("_internalSetupMicScore()"),this._micScoreProducerPromise=he(this,void 0,void 0,function*(){try{if(!this._micProducer||!this._colocation||this._micScoreProducer){this._micScoreProducerPromise=null;return}const e=yield this._sendTransport.produceData({ordered:!1,maxPacketLifeTime:3e3,label:"micscore",appData:{producerId:this._micProducer.id,clientId:this._selfId}});this._micScoreProducer=e,e.observer.once("close",()=>{var r;ge.info('micScoreProducer "close" event'),e.appData.localClosed&&((r=this._vegaConnection)===null||r===void 0||r.message("closeDataProducers",{dataProducerIds:[e.id]})),this._micScoreProducer=null,this._micScoreProducerPromise=null})}catch(e){ge.error("micScoreProducer failed:%o",e)}finally{this._micScoreProducerPromise=null,(!this._micProducer||!this._colocation)&&this._stopMicScoreProducer()}})})}_stopMicScoreProducer(){this._stopProducer(this._micScoreProducer),this._micScoreProducer=null}_replaceMicTrack(){return he(this,void 0,void 0,function*(){var e;ge.info("_replaceMicTrack()"),!(!this._micTrack||!this._micProducer||this._micProducer.closed)&&this._micProducer.track!==this._micTrack&&(yield this._micProducer.replaceTrack({track:this._micTrack}),(e=this._micAnalyser)===null||e===void 0||e.setTrack(this._micTrack),yield this._replaceMicTrack())})}_pauseResumeMic(){var e,r;ge.info("_pauseResumeMic()"),!(!this._micProducer||this._micProducer.closed)&&this._micPaused!==this._micProducer.paused&&(this._micPaused?(this._micProducer.pause(),(e=this._vegaConnection)===null||e===void 0||e.message("pauseProducers",{producerIds:[this._micProducer.id]})):(this._micProducer.resume(),(r=this._vegaConnection)===null||r===void 0||r.message("resumeProducers",{producerIds:[this._micProducer.id]})),this._pauseResumeMic())}_sendMic(e){return he(this,void 0,void 0,function*(){if(ge.info("_sendMic() [track:%o]",e),this._micTrack=e,this._micProducer)return yield this._replaceMicTrack();if(this._micProducerPromise)return;if(this._sendTransport)return yield this._internalSendMic()})}_sendMicScore(e){if(!isNaN(e)&&isFinite(e)){if(this._micScoreProducer){if(this._micScoreProducer.closed){this._stopMicScoreProducer();return}try{this._micScoreProducer.send(JSON.stringify({score:e}))}catch(r){ge.error("_sendMicScore failed [error:%o]",r)}return}!this._micScoreProducerPromise&&this._micProducer&&this._colocation&&e!==0&&this._internalSetupMicScore()}}_internalSendWebcam(){return he(this,void 0,void 0,function*(){var e;ge.info("_internalSendWebcam()"),!(!this._sendTransport||this._webcamProducer||this._webcamProducerPromise||((e=this._webcamTrack)===null||e===void 0?void 0:e.readyState)!=="live")&&(this._webcamProducerPromise=he(this,void 0,void 0,function*(){var r;try{const n=this._webcamPaused,i=yield this._sendTransport.produce(Object.assign(Object.assign({track:this._webcamTrack,disableTrackOnPause:!1,stopTracks:!1},mc("video",!1,Object.assign(Object.assign({},this._features),{vp9On:this._features.sfuVp9On}))),{appData:{streamId:Lb,sourceClientId:this._selfId,screenShare:!1,source:"webcam",paused:n}}));n?i.pause():i.resume(),this._webcamProducer=i,this._qualityMonitor.addProducer(this._selfId,i.id),i.observer.once("close",()=>{var s;ge.info('webcamProducer "close" event'),i.appData.localClosed&&((s=this._vegaConnection)===null||s===void 0||s.message("closeProducers",{producerIds:[i.id]})),this._webcamProducer=null,this._webcamProducerPromise=null,this._qualityMonitor.removeProducer(this._selfId,i.id)}),this._webcamTrack&&this._webcamTrack!==((r=this._webcamProducer)===null||r===void 0?void 0:r.track)&&(this._webcamProducerPromise=null,this._replaceWebcamTrack()),this._webcamPaused!==this._webcamProducer.paused&&this._pauseResumeWebcam()}catch(n){ge.error("webcamProducer failed:%o",n)}finally{this._webcamProducerPromise=null,this._webcamTrack||(this._stopProducer(this._webcamProducer),this._webcamProducer=null)}}))})}_replaceWebcamTrack(){return he(this,void 0,void 0,function*(){if(ge.info("_replaceWebcamTrack()"),!(!this._sendTransport||!this._webcamTrack||this._webcamProducerPromise)){if(!this._webcamProducer&&this._webcamTrack.enabled){yield this._internalSendWebcam();return}this._webcamProducer.track!==this._webcamTrack&&(yield this._webcamProducer.replaceTrack({track:this._webcamTrack}),yield this._replaceWebcamTrack())}})}_pauseResumeWebcam(){var e,r;ge.info("_pauseResumeWebcam()"),!(!this._webcamProducer||this._webcamProducer.closed)&&this._webcamPaused!==this._webcamProducer.paused&&(this._webcamPaused?(this._webcamProducer.pause(),(e=this._vegaConnection)===null||e===void 0||e.message("pauseProducers",{producerIds:[this._webcamProducer.id]})):(this._webcamProducer.resume(),(r=this._vegaConnection)===null||r===void 0||r.message("resumeProducers",{producerIds:[this._webcamProducer.id]})),this._pauseResumeWebcam())}_sendWebcam(e){return he(this,void 0,void 0,function*(){if(ge.info("_sendWebcam() [track:%o]",e),this._webcamTrack=e,this._webcamProducer)return yield this._replaceWebcamTrack();if(this._webcamProducerPromise)return;if(this._sendTransport)return yield this._internalSendWebcam()})}_internalSendScreenVideo(){return he(this,void 0,void 0,function*(){ge.info("_internalSendScreenVideo()"),this._screenVideoProducerPromise=he(this,void 0,void 0,function*(){var e,r;try{if(!this._screenVideoTrack||!this._sendTransport||this._screenVideoProducer){this._screenVideoProducerPromise=null;return}const n=this._features.sfuVp9On?(r=(e=this._routerRtpCapabilities)===null||e===void 0?void 0:e.codecs)===null||r===void 0?void 0:r.find(s=>s.mimeType.match(/vp8/i)):void 0,i=yield this._sendTransport.produce(Object.assign(Object.assign({track:this._screenVideoTrack,disableTrackOnPause:!1,stopTracks:!1,codec:n},mc("video",!0,Object.assign(Object.assign({},this._features),{vp9On:!1}),this._getIsSomeoneAlreadyPresenting())),{appData:{streamId:vc,sourceClientId:this._selfId,screenShare:!0,source:"screenvideo",paused:!1}}));this._screenVideoProducer=i,this._qualityMonitor.addProducer(this._selfId,i.id),i.observer.once("close",()=>{var s;ge.info('screenVideoProducer "close" event'),i.appData.localClosed&&((s=this._vegaConnection)===null||s===void 0||s.message("closeProducers",{producerIds:[i.id]})),this._screenVideoProducer=null,this._screenVideoProducerPromise=null,this._qualityMonitor.removeProducer(this._selfId,i.id)}),this._screenVideoTrack!==this._screenVideoProducer.track&&(yield this._replaceScreenVideoTrack())}catch(n){ge.error("screenVideoProducer failed:%o",n)}finally{this._screenVideoProducerPromise=null,this._screenVideoTrack||(yield this._stopProducer(this._screenVideoProducer),this._screenVideoProducer=null)}})})}_replaceScreenVideoTrack(){return he(this,void 0,void 0,function*(){ge.info("_replaceScreenVideoTrack()"),!(!this._screenVideoTrack||!this._screenVideoProducer||this._screenVideoProducer.closed)&&this._screenVideoProducer.track!==this._screenVideoTrack&&(yield this._screenVideoProducer.replaceTrack({track:this._screenVideoTrack}),yield this._replaceScreenVideoTrack())})}_sendScreenVideo(e){return he(this,void 0,void 0,function*(){if(ge.info("_sendScreenVideo() [track:%o]",e),this._screenVideoTrack=e,this._screenVideoProducer)return yield this._replaceScreenVideoTrack();if(this._screenVideoProducerPromise)return;if(this._sendTransport)return yield this._internalSendScreenVideo()})}_internalSendScreenAudio(){return he(this,void 0,void 0,function*(){ge.info("_internalSendScreenAudio()"),this._screenAudioProducerPromise=he(this,void 0,void 0,function*(){try{if(!this._screenAudioTrack||!this._sendTransport||this._screenAudioProducer){this._screenAudioProducerPromise=null;return}const e=yield this._sendTransport.produce(Object.assign(Object.assign({track:this._screenAudioTrack,disableTrackOnPause:!1,stopTracks:!1},mc("audio",!0,Object.assign(Object.assign({},this._features),{vp9On:this._features.sfuVp9On}))),{appData:{streamId:vc,sourceClientId:this._selfId,screenShare:!0,source:"screenaudio",paused:!1}}));this._screenAudioProducer=e,this._qualityMonitor.addProducer(this._selfId,e.id),e.observer.once("close",()=>{var r;ge.info('screenAudioProducer "close" event'),e.appData.localClosed&&((r=this._vegaConnection)===null||r===void 0||r.message("closeProducers",{producerIds:[e.id]})),this._screenAudioProducer=null,this._screenAudioProducerPromise=null,this._qualityMonitor.removeProducer(this._selfId,e.id)}),this._screenAudioTrack!==this._screenAudioProducer.track&&(yield this._replaceScreenAudioTrack())}catch(e){ge.error("screenAudioProducer failed:%o",e)}finally{this._screenAudioProducerPromise=null,this._screenAudioTrack||(yield this._stopProducer(this._screenAudioProducer),this._screenAudioProducer=null)}})})}_replaceScreenAudioTrack(){return he(this,void 0,void 0,function*(){ge.info("_replaceScreenAudioTrack()"),!(!this._screenAudioTrack||!this._screenAudioProducer||this._screenAudioProducer.closed)&&this._screenAudioProducer.track!==this._screenAudioTrack&&(yield this._screenAudioProducer.replaceTrack({track:this._screenAudioTrack}),yield this._replaceScreenAudioTrack())})}_sendScreenAudio(e){return he(this,void 0,void 0,function*(){if(ge.info("_sendScreenAudio() [track:%o]",e),this._screenAudioTrack=e,this._screenAudioProducer)return yield this._replaceScreenAudioTrack();if(this._screenAudioProducerPromise)return;if(this._sendTransport)return yield this._internalSendScreenAudio()})}_stopProducer(e){ge.info("_stopProducer()"),!(!e||e.closed)&&(e.appData.localClosed=!0,e.close())}_getIsSomeoneAlreadyPresenting(){return!![...this._clientStates.values()].find(e=>e.hasAcceptedScreenStream&&e.screenStream)}isInitializedWith({selfId:e,roomName:r,isSfu:n}){return this._selfId===e&&this._room.name===r&&!!n}setEventClaim(e){var r;this._eventClaim=e,(r=this._vegaConnection)===null||r===void 0||r.message("eventClaim",{eventClaim:e})}setColocation(e){var r;this._colocation=e,(r=this._vegaConnection)===null||r===void 0||r.message("setColocation",{colocation:e}),!e&&this._micScoreProducer&&!this._micScoreProducerPromise&&this._stopMicScoreProducer(),this._syncMicAnalyser(),bt.sendEvent("colocation_changed",{colocation:e})}setAudioOnly(e){var r;(r=this._vegaConnection)===null||r===void 0||r.message(e?"enableAudioOnly":"disableAudioOnly")}setRemoteScreenshareVideoTrackIds(){}setRoomSessionId(e){this._roomSessionId=e}disconnect(e,r,n){var i;ge.info("disconnect() [clientIdOrStreamId:%s, eventClaim:%s]",e,n);const s=this._clientStates.get(e);s&&(s.hasAcceptedWebcamStream=!1,s.hasAcceptedScreenStream=!1,this._syncIncomingStreamsWithPWA(e)),n&&(this._eventClaim=n,(i=this._vegaConnection)===null||i===void 0||i.message("eventClaim",{eventClaim:n}))}replaceTrack(e,r){r.kind==="audio"&&(r.effectTrack||this._monitorAudioTrack(r),this._micTrack=r,this._replaceMicTrack()),r.kind==="video"&&(r.effectTrack||this._monitorVideoTrack(r),this._webcamTrack=r,this._replaceWebcamTrack())}removeStream(e,r,n){ge.info("removeStream() [streamId:%s, requestedByClientId:%s]",e,n),this._emitToSignal(wi.STOP_SCREENSHARE,{streamId:vc,requestedByClientId:n}),this._stopProducer(this._screenVideoProducer),this._screenVideoProducer=null,this._screenVideoTrack=null,this._stopProducer(this._screenAudioProducer),this._screenAudioProducer=null,this._screenAudioTrack=null}_onMicAnalyserScoreUpdated(e){var r,n;(n=(r=this._micAnalyserDebugger)===null||r===void 0?void 0:r.onScoreUpdated)===null||n===void 0||n.call(r,e),this._sendMicScore(this._micPaused?0:e.out)}addNewStream(e,r,n,i,s=[]){if(e==="0"){this._micPaused=n,this._webcamPaused=i;const o=r.getVideoTracks()[0],a=r.getAudioTracks()[0];if(o){this._sendWebcam(o),o.effectTrack||this._monitorVideoTrack(o);const l=s.find(d=>d.kind==="video");l&&this._monitorVideoTrack(l)}if(a){this._sendMic(a),this._syncMicAnalyser(),a.effectTrack||this._monitorAudioTrack(a);const l=s.find(d=>d.kind==="audio");l&&this._monitorAudioTrack(l)}this._localStreamDeregisterFunction&&(this._localStreamDeregisterFunction(),this._localStreamDeregisterFunction=null);const c=l=>{const{enable:d,track:p}=l.detail;this._webcamPaused=!d,this._pauseResumeWebcam(),this._handleStopOrResumeVideo({enable:d,track:p})};r.addEventListener("stopresumevideo",c),this._localStreamDeregisterFunction=()=>{r.removeEventListener("stopresumevideo",c)}}else{const o=r.getVideoTracks()[0],a=r.getAudioTracks()[0];o&&this._sendScreenVideo(o),a&&this._sendScreenAudio(a),this._emitScreenshareStarted()}}_syncMicAnalyser(){if(this._micTrack&&this._colocation&&!this._micAnalyser){this._micAnalyser=mL({micTrack:this._micTrack,onScoreUpdated:this._onMicAnalyserScoreUpdated.bind(this)});return}if(this._micAnalyser&&!this._colocation){this._micAnalyser.close(),this._micAnalyser=null;return}}stopOrResumeAudio(e,r){ge.info("stopOrResumeAudio() [enabled:%s]",r),this._micPaused=!r,this._pauseResumeMic()}_handleStopOrResumeVideo({enable:e,track:r}){e?this._sendWebcam(r):this._webcamProducer&&!this._webcamProducer.closed&&this._webcamProducer.track===r&&(this._stopProducer(this._webcamProducer),this._webcamProducer=null,this._webcamTrack=null)}stopOrResumeVideo(e,r){var n;if(ge.info("stopOrResumeVideo() [enable:%s]",r),this._webcamPaused=!r,this._pauseResumeWebcam(),!!["chrome","safari"].includes(NC))if(r){if(e.getVideoTracks().length===0){const i=this._webrtcProvider.getMediaConstraints().video;navigator.mediaDevices.getUserMedia({video:i}).then(s=>{const o=s.getVideoTracks()[0];e.addTrack(o),this._monitorVideoTrack(o),this._emitToPWA(Fr.LOCAL_STREAM_TRACK_ADDED,{streamId:e.id,tracks:[o],screenShare:!1}),this._handleStopOrResumeVideo({enable:r,track:o})})}}else{clearTimeout(this._stopCameraTimeout);const i=((n=e.getVideoTracks().find(s=>!s.enabled))===null||n===void 0?void 0:n.readyState)==="ended"?0:5e3;this._stopCameraTimeout=setTimeout(()=>{e.getVideoTracks().forEach(s=>{s.enabled===!1&&(s.stop(),e.removeTrack(s),this._emitToPWA(Fr.LOCAL_STREAM_TRACK_REMOVED,{stream:e,track:s}),this._handleStopOrResumeVideo({enable:r,track:s}))})},i)}}supportsScreenShareAudio(){return!0}acceptNewStream({streamId:e,clientId:r}){ge.info("acceptNewStream()",{streamId:e,clientId:r});const n=this._getOrCreateClientState(r);e!==r?(n.hasAcceptedScreenStream=!0,n.hasEmittedScreenStream=!1):(n.hasAcceptedWebcamStream=!0,n.hasEmittedWebcamStream=!1),this._syncIncomingStreamsWithPWA(r)}updateStreamResolution(e,r,{width:n,height:i}){var s,o;ge.info("updateStreamResolution()",{streamId:e,width:n,height:i});const a=this._streamIdToVideoConsumerId.get(e),c=this._consumers.get(a);if(!c){this._streamIdToVideoResolution.set(e,{width:n,height:i});return}const l=wL(this._consumers),d=CL(c),{spatialLayer:p,temporalLayer:m}=SL({width:n,height:i},{numberOfActiveVideos:l,numberOfTemporalLayers:d,uncappedSingleRemoteVideoOn:(s=this._features)===null||s===void 0?void 0:s.uncappedSingleRemoteVideoOn});(c.appData.spatialLayer!==p||c.appData.temporalLayer!==m)&&(c.appData.spatialLayer=p,c.appData.temporalLayer=m,(o=this._vegaConnection)===null||o===void 0||o.message("setConsumersPreferredLayers",{consumerIds:[a],spatialLayer:p,temporalLayer:m}))}disconnectAll(){var e,r,n,i;this._reconnect=!1,this._reconnectTimeOut&&(clearTimeout(this._reconnectTimeOut),this._reconnectTimeOut=null),this._socketListenerDeregisterFunctions.forEach(s=>{s()}),this._localStreamDeregisterFunction&&(this._localStreamDeregisterFunction(),this._localStreamDeregisterFunction=null),this._socketListenerDeregisterFunctions=[],(e=this._vegaConnection)===null||e===void 0||e.removeAllListeners(),(r=this._vegaConnection)===null||r===void 0||r.close(),(n=this._sendTransport)===null||n===void 0||n.close(),(i=this._receiveTransport)===null||i===void 0||i.close(),this._micTrack=null,this._webcamTrack=null,this._screenVideoTrack=null,this._screenAudioTrack=null,this._streamIdToVideoConsumerId.clear(),this._mediasoupDevice=null}sendAudioMutedStats(e){bt.sendEvent("audio_muted",{muted:e})}sendVideoMutedStats(e){bt.sendEvent("video_muted",{muted:e})}sendStatsCustomEvent(e,r){bt.sendEvent(e,r)}rtcStatsDisconnect(){bt.server.close()}rtcStatsReconnect(){bt.server.connected||bt.server.connect()}_monitorAudioTrack(e){var r,n;((r=this._audioTrackBeingMonitored)===null||r===void 0?void 0:r.id)!==e.id&&((n=this._audioTrackBeingMonitored)===null||n===void 0||n.removeEventListener("ended",this._audioTrackOnEnded),e.addEventListener("ended",this._audioTrackOnEnded),this._audioTrackBeingMonitored=e)}_monitorVideoTrack(e){var r,n;((r=this._videoTrackBeingMonitored)===null||r===void 0?void 0:r.id)!==e.id&&((n=this._videoTrackBeingMonitored)===null||n===void 0||n.removeEventListener("ended",this._videoTrackOnEnded),e.addEventListener("ended",this._videoTrackOnEnded),this._videoTrackBeingMonitored=e)}_onMessage(e){return he(this,void 0,void 0,function*(){const{method:r,data:n}=e;return Promise.resolve().then(()=>{switch(r){case"consumerReady":return this._onConsumerReady(n);case"consumerClosed":return this._onConsumerClosed(n);case"consumerPaused":return this._onConsumerPaused(n);case"consumerResumed":return this._onConsumerResumed(n);case"dataConsumerReady":return this._onDataConsumerReady(n);case"dataConsumerClosed":return this._onDataConsumerClosed(n);case"dominantSpeaker":return this._onDominantSpeaker(n);case"consumerScore":return this._onConsumerScore(n);case"producerScore":return this._onProducerScore(n);default:ge.info(`unknown message method "${r}"`);return}}).catch(i=>{ge.error('"message" failed [error:%o]',i)})})}_onConsumerReady(e){return he(this,void 0,void 0,function*(){ge.info("_onConsumerReady()",{id:e.id,producerId:e.producerId});const r=yield this._receiveTransport.consume(e);if(r.pause(),r.appData.localPaused=!0,r.appData.spatialLayer=2,this._consumers.set(r.id,r),this._qualityMonitor.addConsumer(r.appData.sourceClientId,r.id),r.observer.once("close",()=>{this._consumers.delete(r.id),this._qualityMonitor.removeConsumer(r.appData.sourceClientId,r.id),this._consumerClosedCleanup(r)}),this._features.increaseIncomingMediaBufferOn&&r.rtpReceiver)try{r.rtpReceiver.jitterBufferTarget=Il,r.rtpReceiver.playoutDelayHint=Il/1e3}catch(l){ge.error("Error during setting jitter buffer target:",l)}const{sourceClientId:n,screenShare:i,streamId:s}=r.appData,o=this._getOrCreateClientState(n);i?(o.hasEmittedScreenStream=!1,o.screenShareStreamId=s):(o.hasEmittedWebcamStream=!1,o.camStreamId=s);let a=i?o.screenStream:o.webcamStream;(!a||a.inboundId!==s)&&(a=new MediaStream,a.inboundId=s,i?o.screenStream=a:o.webcamStream=a),r.kind==="video"&&this._streamIdToVideoConsumerId.set(a.id,r.id),a.addTrack(r.track),this._syncIncomingStreamsWithPWA(n);const c=this._streamIdToVideoResolution.get(a.id);c&&(this.updateStreamResolution(a.id,null,c),this._streamIdToVideoResolution.delete(a.id))})}_onConsumerClosed(e){return he(this,arguments,void 0,function*({consumerId:r,reason:n}){var i;ge.info("_onConsumerClosed()",{consumerId:r,reason:n}),(i=this._consumers.get(r))===null||i===void 0||i.close()})}_onConsumerPaused({consumerId:e}){ge.info("_onConsumerPaused()",{consumerId:e});const r=this._consumers.get(e);r&&(r.appData.remotePaused=!0,r.pause())}_onConsumerResumed({consumerId:e}){ge.info("_onConsumerResumed()",{consumerId:e});const r=this._consumers.get(e);r&&(r.appData.remotePaused=!1,r.appData.localPaused||r.resume())}_onConsumerScore({consumerId:e,kind:r,score:n}){ge.info("_onConsumerScore()",{consumerId:e,kind:r,score:n});const{appData:{sourceClientId:i}}=this._consumers.get(e)||{appData:{}};i&&this._qualityMonitor.addConsumerScore(i,e,r,n)}_onProducerScore({producerId:e,kind:r,score:n}){ge.info("_onProducerScore()",{producerId:e,kind:r,score:n}),[this._micProducer,this._webcamProducer,this._screenVideoProducer,this._screenAudioProducer].forEach(i=>{i?.id===e&&this._qualityMonitor.addProducerScore(this._selfId,e,r,n)})}_onDataConsumerReady(e){return he(this,void 0,void 0,function*(){ge.info("_onDataConsumerReady()",{id:e.id,producerId:e.producerId});const r=yield this._receiveTransport.consumeData(e);this._dataConsumers.set(r.id,r),r.once("close",()=>{this._dataConsumers.delete(r.id)});const{clientId:n}=r.appData;r.on("message",i=>{var s;if(!this._micAnalyserDebugger||typeof i!="string")return;const{score:o}=JSON.parse(i);o&&((s=this._micAnalyserDebugger)===null||s===void 0||s.onConsumerScore(r.appData.clientId,o))}),this._syncIncomingStreamsWithPWA(n)})}_onDataConsumerClosed(e){return he(this,arguments,void 0,function*({dataConsumerId:r,reason:n}){ge.info("_onDataConsumerClosed()",{dataConsumerId:r,reason:n});const i=this._dataConsumers.get(r);i?.close()})}_onDominantSpeaker({consumerId:e}){const r=this._consumers.get(e);if(!r)return;const{sourceClientId:n}=r.appData;this._emitToPWA(_t.DOMINANT_SPEAKER,{clientId:n})}_consumerClosedCleanup(e){const{sourceClientId:r,screenShare:n}=e.appData,i=this._getOrCreateClientState(r),s=n?i.screenStream:i.webcamStream;s&&(s.removeTrack(e.track),s.getTracks().length===0&&(this._streamIdToVideoConsumerId.delete(s.id),this._streamIdToVideoResolution.delete(s.id),n?(i.screenStream=void 0,i.hasEmittedScreenStream=!1,i.screenShareStreamId=void 0):(i.hasEmittedWebcamStream=!1,i.camStreamId=void 0)))}_syncIncomingStreamsWithPWA(e){var r,n;const i=this._getOrCreateClientState(e),{webcamStream:s,screenStream:o,hasEmittedWebcamStream:a,hasEmittedScreenStream:c,hasAcceptedWebcamStream:l,hasAcceptedScreenStream:d,screenShareStreamId:p,camStreamId:m}=i,g=[],v=[];this._consumers.forEach(S=>{if(S.appData.sourceClientId!==e)return;const C=S.appData.screenShare?d:l;!S.appData.localPaused!==C&&(C?(S.appData.remotePaused||S.resume(),S.appData.localPaused=!1,v.push(S.id)):(S.pause(),S.appData.localPaused=!0,g.push(S.id)))}),g.length>0&&((r=this._vegaConnection)===null||r===void 0||r.message("pauseConsumers",{consumerIds:g})),v.length>0&&((n=this._vegaConnection)===null||n===void 0||n.message("resumeConsumers",{consumerIds:v})),s&&!a&&l&&(this._emitToPWA(Fr.STREAM_ADDED,{clientId:e,stream:s,streamId:m,streamType:"webcam"}),i.hasEmittedWebcamStream=!0),o&&!c&&d&&(this._emitToPWA(Fr.STREAM_ADDED,{clientId:e,stream:o,streamId:p,streamType:"screenshare"}),i.hasEmittedScreenStream=!0)}_getOrCreateClientState(e){let r=this._clientStates.get(e);return r||(r={hasAcceptedWebcamStream:!1,hasAcceptedScreenStream:!1,hasEmittedWebcamStream:!1,hasEmittedScreenStream:!1},this._clientStates.set(e,r)),r}_emitToPWA(e,r){this._emitter.emit(e,r)}_emitToSignal(e,r,n){this._serverSocket.emit(e,r,n)}shouldAcceptStreamsFromBothSides(){return!0}setMicAnalyserDebugger(e){this._micAnalyserDebugger=e}setMicAnalyserParams(e){var r;(r=this._micAnalyser)===null||r===void 0||r.setParams(e)}hasClient(e){return this._clientStates.has(e)}}class DL{constructor({emitter:e,serverSocket:r,webrtcProvider:n,features:i}){this.emitter=e,this.currentManager=null,r.on(dt.ROOM_JOINED,({room:s,selfId:o,error:a,eventClaim:c})=>{if(a)return;const l={selfId:o,room:s,emitter:e,serverSocket:r,webrtcProvider:n,features:i,eventClaim:c},d=!!s.sfuServer;if(LC=d?"group":"normal",this.currentManager){if(this.currentManager.isInitializedWith({selfId:o,roomName:s.name,isSfu:d})){this.currentManager.setEventClaim&&c&&this.currentManager.setEventClaim(c);return}this.currentManager.disconnectAll(),e.emit(Fr.RTC_MANAGER_DESTROYED)}let p=null;d?p=new xL(l):p=new aL(l),p.rtcStatsReconnect(),p.setupSocketListeners(),e.emit(Fr.RTC_MANAGER_CREATED,{rtcManager:p}),this.currentManager=p,r.setRtcManager(p)})}stopRtcManager(){this.currentManager&&(this.currentManager.disconnectAll(),this.emitter.emit(Fr.RTC_MANAGER_DESTROYED))}}let LC="";const kL=()=>LC,Ko=new Rn,ML={print:(...t)=>console.debug(t[0],...t.slice(1))};Ko.withDebugLogger(ML);class NL{constructor(){this.BEGIN_PACKET_LOSS_PERIOD_THRESHOLD=.04,this.END_PACKET_LOSS_PERIOD_THRESHOLD=.005,this.INTERVAL_DIFF_THRESHOLD_MS=4e3,this.STALE_MEASUREMENT_TIMEOUT_MS=1e4,this.MINIMUM_INTERVAL_MS=3e4,this.ssrcsHistory=new Map,this.staleMeasurementTimeouts=new Map}addPacketLossMeasurement(e,r,n){this.handleStaleMeasurements(e);const i=r>this.BEGIN_PACKET_LOSS_PERIOD_THRESHOLD;let s=this.ssrcsHistory.get(e);if(!s){s={id:e,hasActivePacketLoss:i,currPeriod:i?{begin:n}:void 0,hasPeriodicPacketLoss:!1},this.ssrcsHistory.set(e,s);return}if(s.hasActivePacketLoss){r<this.END_PACKET_LOSS_PERIOD_THRESHOLD&&(this.endPacketLossPeriod(s,n),s.prevIntervalInMs&&s.prevIntervalInMs<this.MINIMUM_INTERVAL_MS&&this.ssrcsHistory.delete(e));return}i&&(s.hasActivePacketLoss=!0,s.currPeriod={begin:n})}hasPeriodicPacketLoss(e,r){const n=this.ssrcsHistory.get(e);return n&&this.prevIntervalExceeded(n,r)?(this.ssrcsHistory.delete(n.id),!1):n?.hasPeriodicPacketLoss||!1}prevIntervalExceeded(e,r){if(e.prevPeriod&&e.prevIntervalInMs){const n=this.calculatePeriodCenterTimestamp(e.prevPeriod)+e.prevIntervalInMs+this.INTERVAL_DIFF_THRESHOLD_MS;return r>n}return!1}handleStaleMeasurements(e){const r=this.staleMeasurementTimeouts.get(e);r&&clearTimeout(r),this.staleMeasurementTimeouts.set(e,setTimeout(()=>{Ko.debug("handleStaleMeasurements() [measurements invalid for ssrc: %s]",e),this.ssrcsHistory.delete(e)},this.STALE_MEASUREMENT_TIMEOUT_MS))}endPacketLossPeriod(e,r){if(Ko.debug("endPacketLossPeriod() [ssrcId: %s, timestamp: %s]",e.id,r),!e.currPeriod)throw new Error("No packet loss period for "+e.id);e.prevPeriod?(e.currPeriod.end=r,this.addNewPacketLossInterval(e)):e.prevPeriod=Object.assign(Object.assign({},e.currPeriod),{end:r}),delete e.currPeriod,e.hasActivePacketLoss=!1}addNewPacketLossInterval(e){if(Ko.debug("addNewPacketLossInterval() [ssrcId: %s, prevIntervalInMs: %s]",e.id,e.prevIntervalInMs),!e.currPeriod||!e.prevPeriod)throw new Error("missing period timestamps");const r=this.calculatePeriodCenterTimestamp(e.prevPeriod),i=this.calculatePeriodCenterTimestamp(e.currPeriod)-r;if(e.prevIntervalInMs){const s=Math.abs(e.prevIntervalInMs-i);e.hasPeriodicPacketLoss=s<this.INTERVAL_DIFF_THRESHOLD_MS,Ko.debug("addNewPacketLossInterval() [hasPeriodicPacketLoss: %s, intervalDiffInMs: %s]",s<this.INTERVAL_DIFF_THRESHOLD_MS,s)}e.prevIntervalInMs=i,e.prevPeriod=e.currPeriod}calculatePeriodCenterTimestamp(e){if(!e.end)throw new Error("Missing period end timestamp");return e.begin+(e.end-e.begin)/2}}const jb=new NL,LL={id:"periodic-packet-loss",enabled:({client:t,hasLiveTrack:e,ssrc0:r})=>t.isLocalClient&&e&&!!r?.ssrc&&r?.direction==="out"&&(r?.bitrate||0)>0,check:({ssrc0:t})=>!t||!t.ssrc?!1:(jb.addPacketLossMeasurement(t.ssrc,t.fractionLost||0,Date.now()),jb.hasPeriodicPacketLoss(t.ssrc,Date.now()))},jL={id:"bad-network",enabled:({hasLiveTrack:t,ssrcs:e})=>t&&e.length>0,check:({client:t,clients:e,kind:r,ssrcs:n})=>{if(!n.some(o=>(o?.bitrate||0)>0)&&t.isLocalClient&&r==="video"){const o=e.filter(a=>!a.isLocalClient);if(o.length>0)return!o.every(a=>a.isAudioOnlyModeEnabled)}const s=n[0];return s?s.bitrate===0||(s.lossRatio||0)>.03||(s.fractionLost||0)>.03||!t.isPresentation&&r==="video"&&!!s?.bitrate&&s.bitrate<3e4||s.direction==="in"&&!!s.pliRate&&s.pliRate>2:!1}},BL={id:"dry-track",enabled:({hasLiveTrack:t,ssrcs:e})=>!!(t&&e),check:({client:t,clients:e,ssrcs:r})=>{let n=!1;if(r.forEach(i=>{n=n||(i?.bitrate||0)>0}),!n&&t.isLocalClient){const i=e.filter(s=>!s.isLocalClient);if(i.length>0)return!i.every(s=>s.isAudioOnlyModeEnabled)}return!n}},FL={id:"no-track",enabled:()=>!0,check:({client:t,clients:e,kind:r,track:n})=>{if(!n&&!t.isLocalClient&&r==="video"){const i=e.find(s=>s.isLocalClient);if(i)return!i.isAudioOnlyModeEnabled}return!n}},zL={id:"no-track-stats",enabled:({hasLiveTrack:t})=>t,check:({client:t,clients:e,kind:r,ssrcs:n})=>{if(n.length===0&&!t.isLocalClient&&r==="video"){const i=e.find(s=>s.isLocalClient);if(i)return!i.isAudioOnlyModeEnabled}return n.length===0}},HL=[{id:"desync",enabled:({client:t,track:e,stats:r})=>!t.isLocalClient&&e?.kind==="audio"&&typeof r?.tracks=="object"&&Object.keys(r.tracks).length>1,check:({stats:t})=>{if(!t)return!1;const e={audio:0,video:0};return Object.values(t.tracks).flatMap(n=>Object.values(n.ssrcs)).forEach(n=>{n.kind==="audio"&&n.jitter&&n.jitter>e.audio&&(e.audio=n.jitter),n.kind==="video"&&n.jitter&&n.jitter>e.video&&(e.video=n.jitter)}),Math.abs(e.audio*1e3-e.video*1e3)>500}},FL,{id:"ended-track",enabled:({track:t})=>!!t,check:({track:t})=>t?.readyState==="ended"},zL,BL,{id:"denoiser-context-suspended",enabled:({client:t,kind:e})=>{var r,n;return t.isLocalClient&&e==="audio"&&!!(!((n=(r=t.audio)===null||r===void 0?void 0:r.track)===null||n===void 0)&&n._denoiserCtx)},check:({track:t})=>{var e;return!t||!("_denoiserCtx"in t)?!1:((e=t._denoiserCtx)===null||e===void 0?void 0:e.state)==="suspended"}},{id:"low-layer0-bitrate",enabled:({hasLiveTrack:t,ssrc0:e,kind:r,client:n})=>t&&r==="video"&&!!e&&!!e?.height&&!n.isPresentation,check:({ssrc0:t})=>t?.bitrate?(t?.height||0)<200&&t.bitrate<3e4:!1},{id:"quality-limitation-bw",enabled:({hasLiveTrack:t,stats:e,client:r,clients:n,kind:i})=>kL()==="normal"&&n.filter(a=>!a.isLocalClient).some(a=>a.isAudioOnlyModeEnabled)?!1:t&&r.isLocalClient&&i==="video"&&!!e,check:({stats:t})=>t?!!Object.values(t.tracks).find(e=>Object.values(e.ssrcs).find(r=>r.qualityLimitationReason==="bandwidth")):!1},{id:"quality-limitation-cpu",enabled:({hasLiveTrack:t,stats:e,client:r,kind:n})=>t&&r.isLocalClient&&n==="video"&&!!e,check:({stats:t})=>t?!!Object.values(t.tracks).find(e=>Object.values(e.ssrcs).find(r=>r.qualityLimitationReason==="cpu")):!1},{id:"high-plirate",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&!!e.height,check:({ssrc0:t})=>(t?.pliRate||0)>2},{id:"extreme-plirate",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&!!e.height,check:({ssrc0:t})=>(t?.pliRate||0)>5},{id:"high-packetloss",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&e.direction==="in",check:({ssrc0:t})=>(t?.lossRatio||0)>.02},{id:"extreme-packetloss",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&e.direction==="in",check:({ssrc0:t})=>(t?.lossRatio||0)>.1},{id:"high-packetloss",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&e.direction==="out",check:({ssrc0:t})=>(t?.fractionLost||0)>.02},{id:"extreme-packetloss",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&e.direction==="out",check:({ssrc0:t})=>(t?.fractionLost||0)>.1},{id:"fps-below-20",enabled:({hasLiveTrack:t,ssrc0:e,kind:r,client:n})=>t&&!!e&&!!e.height&&r==="video"&&!n.isPresentation,check:({ssrc0:t})=>(t?.height||0)>180&&(t?.fps||0)<20},{id:"fps-below-10",enabled:({hasLiveTrack:t,ssrc0:e,kind:r,client:n})=>t&&!!e&&!!e.height&&r==="video"&&!n.isPresentation,check:({ssrc0:t})=>(t?.fps||0)<10},jL,LL,{id:"cpu-pressure-serious",global:!0,enabled:({stats:t})=>{var e;return((e=t?.pressure)===null||e===void 0?void 0:e.source)==="cpu"},check:({stats:t})=>{var e;return((e=t?.pressure)===null||e===void 0?void 0:e.state)==="serious"}},{id:"cpu-pressure-critical",global:!0,enabled:({stats:t})=>{var e;return((e=t?.pressure)===null||e===void 0?void 0:e.source)==="cpu"},check:({stats:t})=>{var e;return((e=t?.pressure)===null||e===void 0?void 0:e.state)==="critical"}},{id:"concealed",enabled:({hasLiveTrack:t,ssrc0:e,kind:r})=>t&&!!e&&r==="audio",check:({ssrc0:t})=>!!t?.bitrate&&t?.direction==="in"&&(t?.audioLevel||0)>=.001&&(t?.audioConcealment||0)>=.1},{id:"decelerated",enabled:({hasLiveTrack:t,ssrc0:e,kind:r})=>t&&!!e&&r==="audio",check:({ssrc0:t})=>!!t?.bitrate&&t.direction==="in"&&(t.audioLevel||0)>=.001&&(t?.audioDeceleration||0)>=.1},{id:"accelerated",enabled:({hasLiveTrack:t,ssrc0:e,kind:r})=>t&&!!e&&r==="audio",check:({ssrc0:t})=>!!t?.bitrate&&t.direction==="in"&&(t.audioLevel||0)>=.001&&(t.audioAcceleration||0)>=.1}];let Qo=[],Ds=null;const VL=[{id:"bitrate",enabled:({hasLiveTrack:t,track:e,ssrc0:r})=>t&&!!e&&!!r,value:({trackStats:t})=>Object.values(t?.ssrcs||{}).reduce((e,r)=>e+(r?.bitrate||0),0)},{id:"pixelrate",enabled:({hasLiveTrack:t,track:e,ssrc0:r,kind:n})=>t&&n==="video"&&!!e&&!!r&&!!r.height,value:({trackStats:t})=>Object.values(t?.ssrcs||{}).reduce((e,r)=>e+(r.fps||0)*(r.width||0)*(r.height||0),0)},{id:"height",enabled:({hasLiveTrack:t,track:e,trackStats:r,ssrc0:n,kind:i})=>t&&i==="video"&&!!r&&!!e&&!!n&&!!n.height,value:({trackStats:t})=>Object.values(t?.ssrcs||{}).reduce((e,r)=>Math.max(e,r.fps>0?r.height:0),0)},{id:"sourceHeight",enabled:({hasLiveTrack:t,track:e,ssrc0:r,kind:n})=>t&&n==="video"&&!!e&&!!r&&!!r.sourceHeight&&r.direction==="out",value:({ssrc0:t})=>t?.sourceHeight},{id:"packetloss",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&!!e.bitrate,value:({ssrc0:t})=>(t?.direction==="in"?t.lossRatio:t?.fractionLost)||0},{id:"jitter",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&!!e.bitrate&&e.direction==="in",value:({ssrc0:t})=>t?.jitter},{id:"mos",enabled:({hasLiveTrack:t,ssrc0:e})=>t&&!!e&&!!e.bitrate&&e.direction==="out",value:({ssrc0:t})=>{const e=t?.roundTripTime||0,r=t?.jitter||0,n=(t?.fractionLost||0)*100,i=e+r*2+10;let s=i<160?93.2-i/40:93.2-(i-120)/10;return s=s-n*2.5,1+.035*s+7e-6*s*(s-60)*(100-s)}},{id:"rendered",value:()=>1},{id:"active",value:({hasLiveTrack:t,track:e,ssrc0:r})=>t&&e&&r?1:0},{id:"cpu-pressure",global:!0,enabled:({stats:t})=>{var e;return((e=t?.pressure)===null||e===void 0?void 0:e.source)==="cpu"},value:({stats:t})=>{var e;return{nominal:.25,fair:.5,serious:.75,critical:1}[((e=t?.pressure)===null||e===void 0?void 0:e.state)||""]||0}},{id:"turn-usage",global:!0,enabled:({stats:t})=>!!Object.values(t?.candidatePairs||{}).length,value:({stats:t})=>Object.values(t?.candidatePairs||{}).some(e=>e.usingTurn)},{id:"turn-tls-usage",global:!0,enabled:({stats:t})=>!!Object.values(t?.candidatePairs||{}).length,value:({stats:t})=>Object.values(t?.candidatePairs||{}).some(e=>e.turnProtocol==="tls")},{id:"concealment",enabled:({hasLiveTrack:t,ssrc0:e,kind:r})=>t&&!!e&&!!e.bitrate&&e.direction==="in"&&r==="audio"&&(e.audioLevel||0)>=.001,value:({ssrc0:t})=>t?.audioConcealment},{id:"deceleration",enabled:({hasLiveTrack:t,ssrc0:e,kind:r})=>t&&!!e&&!!e.bitrate&&e.direction==="in"&&r==="audio"&&(e.audioLevel||0)>=.001,value:({ssrc0:t})=>t?.audioDeceleration},{id:"acceleration",enabled:({hasLiveTrack:t,ssrc0:e,kind:r})=>t&&!!e&&!!e.bitrate&&e.direction==="in"&&r==="audio"&&(e.audioLevel||0)>=.001,value:({ssrc0:t})=>t?.audioAcceleration},{id:"qpf",enabled:({hasLiveTrack:t,track:e,ssrc0:r,kind:n})=>t&&n==="video"&&!!e&&!!r&&!!r.height,value:({trackStats:t})=>Object.values(t?.ssrcs||{}).reduce((e,r)=>e+(r.qpf||0),0)}];let Fs,zs,Qc;const jC=()=>{Fs={},zs={},Qc={aggregated:{issues:zs,metrics:Fs}}};jC();function GL(t,e){Object.values(Fs).forEach(r=>{r.curTicks=0,r.curSum=0,r.curMax=0,r.curMin=0,r.curAvg=0}),Object.values(zs).forEach(r=>{r.curTicks=0,r.curRegistered=0,r.active=!1}),e.find(r=>!r.isLocalClient)&&(e.forEach(r=>{const n=t[r.id];["video","audio","global"].forEach(i=>{var s,o;if(!(i==="global"&&!r.isPresentation)&&!(!((s=r[i])===null||s===void 0)&&s.enabled)||i==="global"&&!r.isLocalClient)return;let a=Qc[r.id];a||(a={issues:{},metrics:{}},Qc[r.id]=a);const c=(o=r[i])===null||o===void 0?void 0:o.track,l=!!c&&c.readyState!=="ended",d=c&&n&&n.tracks[c.id],p=d?Object.values(d.ssrcs).sort((S,C)=>(S.height||Number.MAX_SAFE_INTEGER)-(C.height||Number.MAX_SAFE_INTEGER)):[],m=p[0],g={client:r,clients:e,kind:i,track:c,trackStats:d,stats:n,hasLiveTrack:l,ssrc0:m,ssrcs:p,issues:a.issues,metrics:a.metrics},v=i==="global"?"global":`${r.isLocalClient?"loc":"rem"}-${r.isPresentation?"pres":"cam"}-${i}`;VL.forEach(S=>{if(S.global&&i!=="global"||!S.global&&i==="global")return;if(S.enabled?S.enabled(g):!0){const w=`${v}-${S.id}`;let y=a.metrics[w];const f=S.value(g);y||(y={ticks:0,sum:0,avg:0,min:f,max:f},a.metrics[w]=y),y.ticks++,y.sum+=f,y.min=Math.min(y.min,f),y.max=Math.max(y.max,f),y.avg=y.sum/y.ticks;let u=Fs[w];u||(u={ticks:0,sum:0,min:f,max:f,avg:0,curTicks:0,curMin:0,curMax:0,curAvg:0,curSum:0,totTicks:0,totMin:0,totMax:0,totAvg:0,totSum:0},Fs[w]=u),u.ticks++,u.sum+=f,u.min=Math.min(u.min,f),u.max=Math.max(u.max,f),u.avg=u.sum/u.ticks,u.curTicks===0?(u.curMax=f,u.curMin=f,u.curSum=f):(u.curMax=Math.max(u.curMax,f),u.curMin=Math.min(u.curMin,f),u.curSum+=f),u.curTicks++}}),HL.forEach(S=>{if(S.global&&i!=="global"||!S.global&&i==="global")return;const C=`${v}-${S.id}`,w=S.enabled(g);let y=a.issues[C],f=zs[C];w?(y||(y={active:!1,ticks:0,registered:0,initial:0,periods:0,current:0,longest:0},a.issues[C]=y),y.ticks++,f||(f={active:!1,ticks:0,registered:0,initial:0,curTicks:0,curRegistered:0},zs[C]=f),f.ticks++,f.curTicks++,S.check(g)?(y.registered++,y.current++,y.active||(y.active=!0,y.periods++),y.ticks===y.initial+1&&(y.initial++,f.initial++),y.current>y.longest&&(y.longest=y.current),f.active=!0,f.registered++,f.curRegistered++):(y.active=!1,y.current=0)):y&&(y.active=!1,y.current=0)})})}),Object.values(Fs).forEach(r=>{r.curTicks&&(r.curAvg=r.curSum/r.curTicks,r.totTicks===0&&(r.totMin=r.curSum,r.totMax=r.curSum),r.totTicks++,r.totSum+=r.curSum,r.totMin=Math.min(r.totMin,r.curSum),r.totMax=Math.max(r.totMax,r.curSum),r.totAvg=r.totSum/r.totTicks)}),Object.values(zs).forEach(r=>{r.curTicks}),Qo.forEach(r=>{var n;return(n=r.onUpdatedIssues)===null||n===void 0?void 0:n.call(r,Qc,t,e)}))}function XL(t){return Qo.push(t),Ds||(Ds=hN({onUpdatedStats:GL}).stop),{stop(){Qo=Qo.filter(e=>e!==t),Qo.length||(Ds?.(),Ds=null,jC())}}}var Zu;const UL=(Zu=Gt.default)!==null&&Zu!==void 0?Zu:Gt,WL=UL.browserDetails.browser==="safari",YL=t=>t.split(/[^\d]/g).map(e=>parseInt(e,10));function ZL({disableAEC:t,disableAGC:e,hd:r,lax:n,lowDataMode:i,preferredDeviceIds:s,resolution:o,simulcast:a,widescreen:c}){var l,d;let p=480,m=240;r&&(p=n||WL?720:{min:360,ideal:720}),a&&(r===!1?(p=360,m=270):m=360);const g={audio:Object.assign({},s.audioId&&{deviceId:s.audioId}),video:Object.assign(Object.assign({},s.videoId?{deviceId:s.videoId}:{facingMode:"user"}),{height:i?m:p,frameRate:i&&!a?15:24})};if(n)return!((l=g.audio)===null||l===void 0)&&l.deviceId||(g.audio=!0),(d=g.video)===null||d===void 0||delete d.facingMode,g;if(o){const[v,S,C]=YL(o);v&&(g.video.width={exact:v}),S&&(g.video.height={exact:S}),C&&(g.video.frameRate={exact:C}),delete g.video.facingMode}else g.video.aspectRatio=c?16/9:4/3;return e&&(g.audio.autoGainControl=!1),t&&(g.audio.echoCancellation=!1),g}function Ui({devices:t,videoId:e,audioId:r,options:n,type:i="ideal"}){const s=t.filter(d=>d.kind==="audioinput"),o=t.filter(d=>d.kind==="videoinput"),a=!r||!s.some(d=>d.deviceId===r),c=!e||!o.some(d=>d.deviceId===e),l=ZL(Object.assign({preferredDeviceIds:{audioId:a?null:{[i]:r},videoId:c?null:{[i]:e}}},n));return(r===!1||!s.length)&&delete l.audio,(e===!1||!o.length)&&delete l.video,l}const $c=new Rn,qL=/mobi/i.test(navigator.userAgent);class JL extends Error{constructor(...e){super(...e),this.name="nodevices"}}function Wi(t){return!t.audio&&!t.video?Promise.reject(new JL("No provided devices")):navigator.mediaDevices.getUserMedia(t).catch(e=>{const r=`${e}, ${JSON.stringify(t,null,2)}`;throw $c.error(`getUserMedia ${r}`),e})}function Bb(t,e,r,n){var i,s,o;let a={deviceId:null};return e?(a.label=e.label,e.getSettings&&(a=Object.assign(Object.assign({},a),e.getSettings())),a.deviceId||(e.getCapabilities&&(a.deviceId=e.getCapabilities().deviceId),a.deviceId)||(e.label&&r&&(a.deviceId=(s=r.find(c=>e.label===c.label&&c.kind===t))===null||s===void 0?void 0:s.deviceId),a.deviceId)||(a.deviceId=(o=e.getConstraints())===null||o===void 0?void 0:o.deviceId,a.broken=1),a):(n&&r&&(a.deviceId=(i=r.find(c=>c.deviceId===n&&c.kind===t))===null||i===void 0?void 0:i.deviceId),a)}function KL({audioTrack:t,videoTrack:e,devices:r,stoppedVideoTrack:n,lastAudioId:i,lastVideoId:s}){const o=l=>l?.readyState==="live"?l:null;e=o(e)||n,t=o(t);const a=Bb("videoinput",e,r,s),c=Bb("audioinput",t,r,i);return{video:a,audio:c}}function qu(t,e){(!e||e==="audio")&&t.getAudioTracks().forEach(r=>r.stop()),(!e||e==="video")&&t.getVideoTracks().forEach(r=>r.stop())}function QL(t,e,r){const n=[];return(!r||r==="audio")&&(n.push(...t.getAudioTracks()),e.getAudioTracks().forEach(i=>{i.replacement=!0,t.addTrack(i)})),(!r||r==="video")&&(n.push(...t.getVideoTracks()),e.getVideoTracks().forEach(i=>{i.replacement=!0,t.addTrack(i)})),n.forEach(i=>{i.replaced=!0,t.removeTrack(i)}),n}function md(t){return he(this,arguments,void 0,function*(e,{replaceStream:r,fallback:n=!0}={}){var i;let s,o,a,c=null;const l=e.audioId===!1&&"video"||e.videoId===!1&&"audio",d=qL||l!=="video",p=Ui(e),m=(S,C)=>(S.details=Object.assign({constraints:p,constraint:S.constraint||C?.constraint,newConstraints:o,fallback:n,stopTracks:d},S!==s&&{error:String(s)}),S),g=S=>he(this,void 0,void 0,function*(){if(p.audio&&p.video){try{c=yield Wi(Ui(Object.assign(Object.assign({},e),{audioId:!1})))}catch(C){C.name!=="NotFoundError"&&m(C,S)}try{c||(c=yield Wi(Ui(Object.assign(Object.assign({},e),{videoId:!1}))))}catch(C){m(C,S)}}});d&&r&&qu(r,l);try{c=yield Wi(p)}catch(S){if(s=S,!n)throw m(S);if(S.name==="OverconstrainedError")a={deviceId:{videoId:null,audioId:null},width:{lax:!0},height:{lax:!0},"":{audioId:null,videoId:null,lax:!0}}[S.constraint||""];else if(S.name==="NotFoundError")yield g(S);else if(S.name==="NotAllowedError"||S.name==="NotReadableError"||S.name==="AbortError"){if(r&&!d&&(qu(r,l),a=e),S.name==="NotAllowedError")yield g(S);else if(S.name!=="NotAllowedError"){try{c=yield Wi(Ui(Object.assign(Object.assign({},e),{options:Object.assign(Object.assign({},e.options),{lax:!0})})))}catch(y){$c.warn(`Tried getting stream again with laxer constraints, but failed: ${""+y}`)}const C=(""+S).toLowerCase(),w={audio:"audioId",video:"videoId"}[((i=/(video|audio)/.exec(C))===null||i===void 0?void 0:i[0])||l||""];if(!c&&w)try{c=yield Wi(Ui(Object.assign(Object.assign({},e),{[w]:null})))}catch(y){$c.warn(`Re-tried ${w} with no constraints, but failed: ${""+y}`)}if(!c){const y=w?[w]:["videoId","audioId"];for(const f of y){try{c=yield Wi(Ui(Object.assign(Object.assign({},e),{[f]:!1})))}catch(u){$c.warn(`Re-tried without ${f}, but failed: ${""+u}`)}if(c)break}}}}}if(a){const S=l?{audio:{videoId:!1},video:{audioId:!1}}[l]:{};o=Ui(Object.assign(Object.assign(Object.assign(Object.assign({},e),a),{options:Object.assign(Object.assign({},e.options),{lax:a.lax})}),S));try{c=yield Wi(o)}catch(C){throw m(C,s)}}if(!c)throw m(s);let v;return r&&(d||qu(r,l),v=QL(r,c,l),c=r),{error:s&&m(s),stream:c,replacedTracks:v}})}function $L(t,e){const[r,n]=[t,e].map(s=>s.filter(o=>o.kind&&o.deviceId).reduce((o,a)=>Object.assign(Object.assign({},o),{[a.kind]:Object.assign(Object.assign({},o[a.kind]),{[a.deviceId]:a})}),{})),i={};return t.forEach(s=>{!s.kind||!s.deviceId||(i[s.kind]||(i[s.kind]={added:{},removed:{},changed:{}}),(!n[s.kind]||!n[s.kind][s.deviceId])&&(i[s.kind].removed[s.deviceId]=s))}),e.forEach(s=>{!s.kind||!s.deviceId||(i[s.kind]||(i[s.kind]={added:{},removed:{},changed:{}}),!r[s.kind]||!r[s.kind][s.deviceId]?i[s.kind].added[s.deviceId]=s:r[s.kind][s.deviceId].label&&r[s.kind][s.deviceId].label!==s.label&&(i[s.kind].changed[s.deviceId]=s))}),i}function ej({oldDevices:t,newDevices:e,currentAudioId:r,currentVideoId:n,currentSpeakerId:i}){const s=$L(t,e),o={},a={},c={};return[["audioinput",r],["videoinput",n],["audiooutput",i]].forEach(([d,p])=>{const m=s[d];if(m){if(p){if(m.removed[p]&&(a[d]={deviceId:null},d==="audiooutput")){const g=e.find(v=>v.kind==="audiooutput");a[d]={deviceId:g?.deviceId}}m.changed[p]&&(a[d]={deviceId:p})}if(Object.keys(m.added).length>0){const[g]=Object.keys(m.added).slice(0,1),v=m.added[g];c[d]={deviceId:v.deviceId,label:v.label,kind:v.kind}}if(Object.keys(m.removed).length>0){const[g]=Object.keys(m.removed).slice(0,1);o[d]=m.removed[g]}}}),{addedDevices:c,changedDevices:a,removedDevices:o}}var Fb;(function(t){t.rtc_manager_created="rtc_manager_created",t.stream_added="stream_added"})(Fb||(Fb={}));function BC(t,e){return function(){return t.apply(e,arguments)}}const{toString:tj}=Object.prototype,{getPrototypeOf:Rh}=Object,{iterator:gd,toStringTag:FC}=Symbol,vd=(t=>e=>{const r=tj.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),_n=t=>(t=t.toLowerCase(),e=>vd(e)===t),bd=t=>e=>typeof e===t,{isArray:vo}=Array,to=bd("undefined");function Aa(t){return t!==null&&!to(t)&&t.constructor!==null&&!to(t.constructor)&&gr(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const zC=_n("ArrayBuffer");function rj(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&zC(t.buffer),e}const nj=bd("string"),gr=bd("function"),HC=bd("number"),Ra=t=>t!==null&&typeof t=="object",ij=t=>t===!0||t===!1,el=t=>{if(vd(t)!=="object")return!1;const e=Rh(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(FC in t)&&!(gd in t)},sj=t=>{if(!Ra(t)||Aa(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},oj=_n("Date"),aj=_n("File"),cj=_n("Blob"),lj=_n("FileList"),dj=t=>Ra(t)&&gr(t.pipe),uj=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||gr(t.append)&&((e=vd(t))==="formdata"||e==="object"&&gr(t.toString)&&t.toString()==="[object FormData]"))},fj=_n("URLSearchParams"),[pj,hj,mj,gj]=["ReadableStream","Request","Response","Headers"].map(_n),vj=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function _a(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,i;if(typeof t!="object"&&(t=[t]),vo(t))for(n=0,i=t.length;n<i;n++)e.call(null,t[n],n,t);else{if(Aa(t))return;const s=r?Object.getOwnPropertyNames(t):Object.keys(t),o=s.length;let a;for(n=0;n<o;n++)a=s[n],e.call(null,t[a],a,t)}}function VC(t,e){if(Aa(t))return null;e=e.toLowerCase();const r=Object.keys(t);let n=r.length,i;for(;n-- >0;)if(i=r[n],e===i.toLowerCase())return i;return null}const Ki=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,GC=t=>!to(t)&&t!==Ki;function dp(){const{caseless:t,skipUndefined:e}=GC(this)&&this||{},r={},n=(i,s)=>{const o=t&&VC(r,s)||s;el(r[o])&&el(i)?r[o]=dp(r[o],i):el(i)?r[o]=dp({},i):vo(i)?r[o]=i.slice():(!e||!to(i))&&(r[o]=i)};for(let i=0,s=arguments.length;i<s;i++)arguments[i]&&_a(arguments[i],n);return r}const bj=(t,e,r,{allOwnKeys:n}={})=>(_a(e,(i,s)=>{r&&gr(i)?t[s]=BC(i,r):t[s]=i},{allOwnKeys:n}),t),yj=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Sj=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},wj=(t,e,r,n)=>{let i,s,o;const a={};if(e=e||{},t==null)return e;do{for(i=Object.getOwnPropertyNames(t),s=i.length;s-- >0;)o=i[s],(!n||n(o,t,e))&&!a[o]&&(e[o]=t[o],a[o]=!0);t=r!==!1&&Rh(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},Cj=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;const n=t.indexOf(e,r);return n!==-1&&n===r},Aj=t=>{if(!t)return null;if(vo(t))return t;let e=t.length;if(!HC(e))return null;const r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},Rj=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Rh(Uint8Array)),_j=(t,e)=>{const n=(t&&t[gd]).call(t);let i;for(;(i=n.next())&&!i.done;){const s=i.value;e.call(t,s[0],s[1])}},Ej=(t,e)=>{let r;const n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},Pj=_n("HTMLFormElement"),Tj=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,i){return n.toUpperCase()+i}),zb=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),Ij=_n("RegExp"),XC=(t,e)=>{const r=Object.getOwnPropertyDescriptors(t),n={};_a(r,(i,s)=>{let o;(o=e(i,s,t))!==!1&&(n[s]=o||i)}),Object.defineProperties(t,n)},Oj=t=>{XC(t,(e,r)=>{if(gr(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=t[r];if(gr(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},xj=(t,e)=>{const r={},n=i=>{i.forEach(s=>{r[s]=!0})};return vo(t)?n(t):n(String(t).split(e)),r},Dj=()=>{},kj=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function Mj(t){return!!(t&&gr(t.append)&&t[FC]==="FormData"&&t[gd])}const Nj=t=>{const e=new Array(10),r=(n,i)=>{if(Ra(n)){if(e.indexOf(n)>=0)return;if(Aa(n))return n;if(!("toJSON"in n)){e[i]=n;const s=vo(n)?[]:{};return _a(n,(o,a)=>{const c=r(o,i+1);!to(c)&&(s[a]=c)}),e[i]=void 0,s}}return n};return r(t,0)},Lj=_n("AsyncFunction"),jj=t=>t&&(Ra(t)||gr(t))&&gr(t.then)&&gr(t.catch),UC=((t,e)=>t?setImmediate:e?((r,n)=>(Ki.addEventListener("message",({source:i,data:s})=>{i===Ki&&s===r&&n.length&&n.shift()()},!1),i=>{n.push(i),Ki.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",gr(Ki.postMessage)),Bj=typeof queueMicrotask<"u"?queueMicrotask.bind(Ki):typeof process<"u"&&process.nextTick||UC,Fj=t=>t!=null&&gr(t[gd]),W={isArray:vo,isArrayBuffer:zC,isBuffer:Aa,isFormData:uj,isArrayBufferView:rj,isString:nj,isNumber:HC,isBoolean:ij,isObject:Ra,isPlainObject:el,isEmptyObject:sj,isReadableStream:pj,isRequest:hj,isResponse:mj,isHeaders:gj,isUndefined:to,isDate:oj,isFile:aj,isBlob:cj,isRegExp:Ij,isFunction:gr,isStream:dj,isURLSearchParams:fj,isTypedArray:Rj,isFileList:lj,forEach:_a,merge:dp,extend:bj,trim:vj,stripBOM:yj,inherits:Sj,toFlatObject:wj,kindOf:vd,kindOfTest:_n,endsWith:Cj,toArray:Aj,forEachEntry:_j,matchAll:Ej,isHTMLForm:Pj,hasOwnProperty:zb,hasOwnProp:zb,reduceDescriptors:XC,freezeMethods:Oj,toObjectSet:xj,toCamelCase:Tj,noop:Dj,toFiniteNumber:kj,findKey:VC,global:Ki,isContextDefined:GC,isSpecCompliantForm:Mj,toJSONObject:Nj,isAsyncFn:Lj,isThenable:jj,setImmediate:UC,asap:Bj,isIterable:Fj};function De(t,e,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i,this.status=i.status?i.status:null)}W.inherits(De,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:W.toJSONObject(this.config),code:this.code,status:this.status}}});const WC=De.prototype,YC={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{YC[t]={value:t}});Object.defineProperties(De,YC);Object.defineProperty(WC,"isAxiosError",{value:!0});De.from=(t,e,r,n,i,s)=>{const o=Object.create(WC);W.toFlatObject(t,o,function(d){return d!==Error.prototype},l=>l!=="isAxiosError");const a=t&&t.message?t.message:"Error",c=e==null&&t?t.code:e;return De.call(o,a,c,r,n,i),t&&o.cause==null&&Object.defineProperty(o,"cause",{value:t,configurable:!0}),o.name=t&&t.name||"Error",s&&Object.assign(o,s),o};const zj=null;function up(t){return W.isPlainObject(t)||W.isArray(t)}function ZC(t){return W.endsWith(t,"[]")?t.slice(0,-2):t}function Hb(t,e,r){return t?t.concat(e).map(function(i,s){return i=ZC(i),!r&&s?"["+i+"]":i}).join(r?".":""):e}function Hj(t){return W.isArray(t)&&!t.some(up)}const Vj=W.toFlatObject(W,{},null,function(e){return/^is[A-Z]/.test(e)});function yd(t,e,r){if(!W.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,r=W.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(S,C){return!W.isUndefined(C[S])});const n=r.metaTokens,i=r.visitor||d,s=r.dots,o=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&W.isSpecCompliantForm(e);if(!W.isFunction(i))throw new TypeError("visitor must be a function");function l(v){if(v===null)return"";if(W.isDate(v))return v.toISOString();if(W.isBoolean(v))return v.toString();if(!c&&W.isBlob(v))throw new De("Blob is not supported. Use a Buffer instead.");return W.isArrayBuffer(v)||W.isTypedArray(v)?c&&typeof Blob=="function"?new Blob([v]):Buffer.from(v):v}function d(v,S,C){let w=v;if(v&&!C&&typeof v=="object"){if(W.endsWith(S,"{}"))S=n?S:S.slice(0,-2),v=JSON.stringify(v);else if(W.isArray(v)&&Hj(v)||(W.isFileList(v)||W.endsWith(S,"[]"))&&(w=W.toArray(v)))return S=ZC(S),w.forEach(function(f,u){!(W.isUndefined(f)||f===null)&&e.append(o===!0?Hb([S],u,s):o===null?S:S+"[]",l(f))}),!1}return up(v)?!0:(e.append(Hb(C,S,s),l(v)),!1)}const p=[],m=Object.assign(Vj,{defaultVisitor:d,convertValue:l,isVisitable:up});function g(v,S){if(!W.isUndefined(v)){if(p.indexOf(v)!==-1)throw Error("Circular reference detected in "+S.join("."));p.push(v),W.forEach(v,function(w,y){(!(W.isUndefined(w)||w===null)&&i.call(e,w,W.isString(y)?y.trim():y,S,m))===!0&&g(w,S?S.concat(y):[y])}),p.pop()}}if(!W.isObject(t))throw new TypeError("data must be an object");return g(t),e}function Vb(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function _h(t,e){this._pairs=[],t&&yd(t,this,e)}const qC=_h.prototype;qC.append=function(e,r){this._pairs.push([e,r])};qC.toString=function(e){const r=e?function(n){return e.call(this,n,Vb)}:Vb;return this._pairs.map(function(i){return r(i[0])+"="+r(i[1])},"").join("&")};function Gj(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function JC(t,e,r){if(!e)return t;const n=r&&r.encode||Gj;W.isFunction(r)&&(r={serialize:r});const i=r&&r.serialize;let s;if(i?s=i(e,r):s=W.isURLSearchParams(e)?e.toString():new _h(e,r).toString(n),s){const o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+s}return t}class Gb{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){W.forEach(this.handlers,function(n){n!==null&&e(n)})}}const KC={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Xj=typeof URLSearchParams<"u"?URLSearchParams:_h,Uj=typeof FormData<"u"?FormData:null,Wj=typeof Blob<"u"?Blob:null,Yj={isBrowser:!0,classes:{URLSearchParams:Xj,FormData:Uj,Blob:Wj},protocols:["http","https","file","blob","url","data"]},Eh=typeof window<"u"&&typeof document<"u",fp=typeof navigator=="object"&&navigator||void 0,Zj=Eh&&(!fp||["ReactNative","NativeScript","NS"].indexOf(fp.product)<0),qj=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Jj=Eh&&window.location.href||"http://localhost",Kj=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Eh,hasStandardBrowserEnv:Zj,hasStandardBrowserWebWorkerEnv:qj,navigator:fp,origin:Jj},Symbol.toStringTag,{value:"Module"})),Qt={...Kj,...Yj};function Qj(t,e){return yd(t,new Qt.classes.URLSearchParams,{visitor:function(r,n,i,s){return Qt.isNode&&W.isBuffer(r)?(this.append(n,r.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...e})}function $j(t){return W.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function e2(t){const e={},r=Object.keys(t);let n;const i=r.length;let s;for(n=0;n<i;n++)s=r[n],e[s]=t[s];return e}function QC(t){function e(r,n,i,s){let o=r[s++];if(o==="__proto__")return!0;const a=Number.isFinite(+o),c=s>=r.length;return o=!o&&W.isArray(i)?i.length:o,c?(W.hasOwnProp(i,o)?i[o]=[i[o],n]:i[o]=n,!a):((!i[o]||!W.isObject(i[o]))&&(i[o]=[]),e(r,n,i[o],s)&&W.isArray(i[o])&&(i[o]=e2(i[o])),!a)}if(W.isFormData(t)&&W.isFunction(t.entries)){const r={};return W.forEachEntry(t,(n,i)=>{e($j(n),i,r,0)}),r}return null}function t2(t,e,r){if(W.isString(t))try{return(e||JSON.parse)(t),W.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}const Ea={transitional:KC,adapter:["xhr","http","fetch"],transformRequest:[function(e,r){const n=r.getContentType()||"",i=n.indexOf("application/json")>-1,s=W.isObject(e);if(s&&W.isHTMLForm(e)&&(e=new FormData(e)),W.isFormData(e))return i?JSON.stringify(QC(e)):e;if(W.isArrayBuffer(e)||W.isBuffer(e)||W.isStream(e)||W.isFile(e)||W.isBlob(e)||W.isReadableStream(e))return e;if(W.isArrayBufferView(e))return e.buffer;if(W.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(s){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Qj(e,this.formSerializer).toString();if((a=W.isFileList(e))||n.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return yd(a?{"files[]":e}:e,c&&new c,this.formSerializer)}}return s||i?(r.setContentType("application/json",!1),t2(e)):e}],transformResponse:[function(e){const r=this.transitional||Ea.transitional,n=r&&r.forcedJSONParsing,i=this.responseType==="json";if(W.isResponse(e)||W.isReadableStream(e))return e;if(e&&W.isString(e)&&(n&&!this.responseType||i)){const o=!(r&&r.silentJSONParsing)&&i;try{return JSON.parse(e,this.parseReviver)}catch(a){if(o)throw a.name==="SyntaxError"?De.from(a,De.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Qt.classes.FormData,Blob:Qt.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};W.forEach(["delete","get","head","post","put","patch"],t=>{Ea.headers[t]={}});const r2=W.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),n2=t=>{const e={};let r,n,i;return t&&t.split(`
188
+ `).forEach(function(o){i=o.indexOf(":"),r=o.substring(0,i).trim().toLowerCase(),n=o.substring(i+1).trim(),!(!r||e[r]&&r2[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e},Xb=Symbol("internals");function Go(t){return t&&String(t).trim().toLowerCase()}function tl(t){return t===!1||t==null?t:W.isArray(t)?t.map(tl):String(t)}function i2(t){const e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}const s2=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Ju(t,e,r,n,i){if(W.isFunction(n))return n.call(this,e,r);if(i&&(e=r),!!W.isString(e)){if(W.isString(n))return e.indexOf(n)!==-1;if(W.isRegExp(n))return n.test(e)}}function o2(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function a2(t,e){const r=W.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(i,s,o){return this[n].call(this,e,i,s,o)},configurable:!0})})}let vr=class{constructor(e){e&&this.set(e)}set(e,r,n){const i=this;function s(a,c,l){const d=Go(c);if(!d)throw new Error("header name must be a non-empty string");const p=W.findKey(i,d);(!p||i[p]===void 0||l===!0||l===void 0&&i[p]!==!1)&&(i[p||c]=tl(a))}const o=(a,c)=>W.forEach(a,(l,d)=>s(l,d,c));if(W.isPlainObject(e)||e instanceof this.constructor)o(e,r);else if(W.isString(e)&&(e=e.trim())&&!s2(e))o(n2(e),r);else if(W.isObject(e)&&W.isIterable(e)){let a={},c,l;for(const d of e){if(!W.isArray(d))throw TypeError("Object iterator must return a key-value pair");a[l=d[0]]=(c=a[l])?W.isArray(c)?[...c,d[1]]:[c,d[1]]:d[1]}o(a,r)}else e!=null&&s(r,e,n);return this}get(e,r){if(e=Go(e),e){const n=W.findKey(this,e);if(n){const i=this[n];if(!r)return i;if(r===!0)return i2(i);if(W.isFunction(r))return r.call(this,i,n);if(W.isRegExp(r))return r.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=Go(e),e){const n=W.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||Ju(this,this[n],n,r)))}return!1}delete(e,r){const n=this;let i=!1;function s(o){if(o=Go(o),o){const a=W.findKey(n,o);a&&(!r||Ju(n,n[a],a,r))&&(delete n[a],i=!0)}}return W.isArray(e)?e.forEach(s):s(e),i}clear(e){const r=Object.keys(this);let n=r.length,i=!1;for(;n--;){const s=r[n];(!e||Ju(this,this[s],s,e,!0))&&(delete this[s],i=!0)}return i}normalize(e){const r=this,n={};return W.forEach(this,(i,s)=>{const o=W.findKey(n,s);if(o){r[o]=tl(i),delete r[s];return}const a=e?o2(s):String(s).trim();a!==s&&delete r[s],r[a]=tl(i),n[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const r=Object.create(null);return W.forEach(this,(n,i)=>{n!=null&&n!==!1&&(r[i]=e&&W.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(`
189
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){const n=new this(e);return r.forEach(i=>n.set(i)),n}static accessor(e){const n=(this[Xb]=this[Xb]={accessors:{}}).accessors,i=this.prototype;function s(o){const a=Go(o);n[a]||(a2(i,o),n[a]=!0)}return W.isArray(e)?e.forEach(s):s(e),this}};vr.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);W.reduceDescriptors(vr.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});W.freezeMethods(vr);function Ku(t,e){const r=this||Ea,n=e||r,i=vr.from(n.headers);let s=n.data;return W.forEach(t,function(a){s=a.call(r,s,i.normalize(),e?e.status:void 0)}),i.normalize(),s}function $C(t){return!!(t&&t.__CANCEL__)}function bo(t,e,r){De.call(this,t??"canceled",De.ERR_CANCELED,e,r),this.name="CanceledError"}W.inherits(bo,De,{__CANCEL__:!0});function eA(t,e,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new De("Request failed with status code "+r.status,[De.ERR_BAD_REQUEST,De.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function c2(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function l2(t,e){t=t||10;const r=new Array(t),n=new Array(t);let i=0,s=0,o;return e=e!==void 0?e:1e3,function(c){const l=Date.now(),d=n[s];o||(o=l),r[i]=c,n[i]=l;let p=s,m=0;for(;p!==i;)m+=r[p++],p=p%t;if(i=(i+1)%t,i===s&&(s=(s+1)%t),l-o<e)return;const g=d&&l-d;return g?Math.round(m*1e3/g):void 0}}function d2(t,e){let r=0,n=1e3/e,i,s;const o=(l,d=Date.now())=>{r=d,i=null,s&&(clearTimeout(s),s=null),t(...l)};return[(...l)=>{const d=Date.now(),p=d-r;p>=n?o(l,d):(i=l,s||(s=setTimeout(()=>{s=null,o(i)},n-p)))},()=>i&&o(i)]}const kl=(t,e,r=3)=>{let n=0;const i=l2(50,250);return d2(s=>{const o=s.loaded,a=s.lengthComputable?s.total:void 0,c=o-n,l=i(c),d=o<=a;n=o;const p={loaded:o,total:a,progress:a?o/a:void 0,bytes:c,rate:l||void 0,estimated:l&&a&&d?(a-o)/l:void 0,event:s,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(p)},r)},Ub=(t,e)=>{const r=t!=null;return[n=>e[0]({lengthComputable:r,total:t,loaded:n}),e[1]]},Wb=t=>(...e)=>W.asap(()=>t(...e)),u2=Qt.hasStandardBrowserEnv?((t,e)=>r=>(r=new URL(r,Qt.origin),t.protocol===r.protocol&&t.host===r.host&&(e||t.port===r.port)))(new URL(Qt.origin),Qt.navigator&&/(msie|trident)/i.test(Qt.navigator.userAgent)):()=>!0,f2=Qt.hasStandardBrowserEnv?{write(t,e,r,n,i,s,o){if(typeof document>"u")return;const a=[`${t}=${encodeURIComponent(e)}`];W.isNumber(r)&&a.push(`expires=${new Date(r).toUTCString()}`),W.isString(n)&&a.push(`path=${n}`),W.isString(i)&&a.push(`domain=${i}`),s===!0&&a.push("secure"),W.isString(o)&&a.push(`SameSite=${o}`),document.cookie=a.join("; ")},read(t){if(typeof document>"u")return null;const e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function p2(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function h2(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function tA(t,e,r){let n=!p2(e);return t&&(n||r==!1)?h2(t,e):e}const Yb=t=>t instanceof vr?{...t}:t;function ds(t,e){e=e||{};const r={};function n(l,d,p,m){return W.isPlainObject(l)&&W.isPlainObject(d)?W.merge.call({caseless:m},l,d):W.isPlainObject(d)?W.merge({},d):W.isArray(d)?d.slice():d}function i(l,d,p,m){if(W.isUndefined(d)){if(!W.isUndefined(l))return n(void 0,l,p,m)}else return n(l,d,p,m)}function s(l,d){if(!W.isUndefined(d))return n(void 0,d)}function o(l,d){if(W.isUndefined(d)){if(!W.isUndefined(l))return n(void 0,l)}else return n(void 0,d)}function a(l,d,p){if(p in e)return n(l,d);if(p in t)return n(void 0,l)}const c={url:s,method:s,data:s,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(l,d,p)=>i(Yb(l),Yb(d),p,!0)};return W.forEach(Object.keys({...t,...e}),function(d){const p=c[d]||i,m=p(t[d],e[d],d);W.isUndefined(m)&&p!==a||(r[d]=m)}),r}const rA=t=>{const e=ds({},t);let{data:r,withXSRFToken:n,xsrfHeaderName:i,xsrfCookieName:s,headers:o,auth:a}=e;if(e.headers=o=vr.from(o),e.url=JC(tA(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),W.isFormData(r)){if(Qt.hasStandardBrowserEnv||Qt.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(W.isFunction(r.getHeaders)){const c=r.getHeaders(),l=["content-type","content-length"];Object.entries(c).forEach(([d,p])=>{l.includes(d.toLowerCase())&&o.set(d,p)})}}if(Qt.hasStandardBrowserEnv&&(n&&W.isFunction(n)&&(n=n(e)),n||n!==!1&&u2(e.url))){const c=i&&s&&f2.read(s);c&&o.set(i,c)}return e},m2=typeof XMLHttpRequest<"u",g2=m2&&function(t){return new Promise(function(r,n){const i=rA(t);let s=i.data;const o=vr.from(i.headers).normalize();let{responseType:a,onUploadProgress:c,onDownloadProgress:l}=i,d,p,m,g,v;function S(){g&&g(),v&&v(),i.cancelToken&&i.cancelToken.unsubscribe(d),i.signal&&i.signal.removeEventListener("abort",d)}let C=new XMLHttpRequest;C.open(i.method.toUpperCase(),i.url,!0),C.timeout=i.timeout;function w(){if(!C)return;const f=vr.from("getAllResponseHeaders"in C&&C.getAllResponseHeaders()),h={data:!a||a==="text"||a==="json"?C.responseText:C.response,status:C.status,statusText:C.statusText,headers:f,config:t,request:C};eA(function(A){r(A),S()},function(A){n(A),S()},h),C=null}"onloadend"in C?C.onloadend=w:C.onreadystatechange=function(){!C||C.readyState!==4||C.status===0&&!(C.responseURL&&C.responseURL.indexOf("file:")===0)||setTimeout(w)},C.onabort=function(){C&&(n(new De("Request aborted",De.ECONNABORTED,t,C)),C=null)},C.onerror=function(u){const h=u&&u.message?u.message:"Network Error",b=new De(h,De.ERR_NETWORK,t,C);b.event=u||null,n(b),C=null},C.ontimeout=function(){let u=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded";const h=i.transitional||KC;i.timeoutErrorMessage&&(u=i.timeoutErrorMessage),n(new De(u,h.clarifyTimeoutError?De.ETIMEDOUT:De.ECONNABORTED,t,C)),C=null},s===void 0&&o.setContentType(null),"setRequestHeader"in C&&W.forEach(o.toJSON(),function(u,h){C.setRequestHeader(h,u)}),W.isUndefined(i.withCredentials)||(C.withCredentials=!!i.withCredentials),a&&a!=="json"&&(C.responseType=i.responseType),l&&([m,v]=kl(l,!0),C.addEventListener("progress",m)),c&&C.upload&&([p,g]=kl(c),C.upload.addEventListener("progress",p),C.upload.addEventListener("loadend",g)),(i.cancelToken||i.signal)&&(d=f=>{C&&(n(!f||f.type?new bo(null,t,C):f),C.abort(),C=null)},i.cancelToken&&i.cancelToken.subscribe(d),i.signal&&(i.signal.aborted?d():i.signal.addEventListener("abort",d)));const y=c2(i.url);if(y&&Qt.protocols.indexOf(y)===-1){n(new De("Unsupported protocol "+y+":",De.ERR_BAD_REQUEST,t));return}C.send(s||null)})},v2=(t,e)=>{const{length:r}=t=t?t.filter(Boolean):[];if(e||r){let n=new AbortController,i;const s=function(l){if(!i){i=!0,a();const d=l instanceof Error?l:this.reason;n.abort(d instanceof De?d:new bo(d instanceof Error?d.message:d))}};let o=e&&setTimeout(()=>{o=null,s(new De(`timeout ${e} of ms exceeded`,De.ETIMEDOUT))},e);const a=()=>{t&&(o&&clearTimeout(o),o=null,t.forEach(l=>{l.unsubscribe?l.unsubscribe(s):l.removeEventListener("abort",s)}),t=null)};t.forEach(l=>l.addEventListener("abort",s));const{signal:c}=n;return c.unsubscribe=()=>W.asap(a),c}},b2=function*(t,e){let r=t.byteLength;if(r<e){yield t;return}let n=0,i;for(;n<r;)i=n+e,yield t.slice(n,i),n=i},y2=async function*(t,e){for await(const r of S2(t))yield*b2(r,e)},S2=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}const e=t.getReader();try{for(;;){const{done:r,value:n}=await e.read();if(r)break;yield n}}finally{await e.cancel()}},Zb=(t,e,r,n)=>{const i=y2(t,e);let s=0,o,a=c=>{o||(o=!0,n&&n(c))};return new ReadableStream({async pull(c){try{const{done:l,value:d}=await i.next();if(l){a(),c.close();return}let p=d.byteLength;if(r){let m=s+=p;r(m)}c.enqueue(new Uint8Array(d))}catch(l){throw a(l),l}},cancel(c){return a(c),i.return()}},{highWaterMark:2})},qb=64*1024,{isFunction:bc}=W,w2=(({Request:t,Response:e})=>({Request:t,Response:e}))(W.global),{ReadableStream:Jb,TextEncoder:Kb}=W.global,Qb=(t,...e)=>{try{return!!t(...e)}catch{return!1}},C2=t=>{t=W.merge.call({skipUndefined:!0},w2,t);const{fetch:e,Request:r,Response:n}=t,i=e?bc(e):typeof fetch=="function",s=bc(r),o=bc(n);if(!i)return!1;const a=i&&bc(Jb),c=i&&(typeof Kb=="function"?(v=>S=>v.encode(S))(new Kb):async v=>new Uint8Array(await new r(v).arrayBuffer())),l=s&&a&&Qb(()=>{let v=!1;const S=new r(Qt.origin,{body:new Jb,method:"POST",get duplex(){return v=!0,"half"}}).headers.has("Content-Type");return v&&!S}),d=o&&a&&Qb(()=>W.isReadableStream(new n("").body)),p={stream:d&&(v=>v.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(v=>{!p[v]&&(p[v]=(S,C)=>{let w=S&&S[v];if(w)return w.call(S);throw new De(`Response type '${v}' is not supported`,De.ERR_NOT_SUPPORT,C)})});const m=async v=>{if(v==null)return 0;if(W.isBlob(v))return v.size;if(W.isSpecCompliantForm(v))return(await new r(Qt.origin,{method:"POST",body:v}).arrayBuffer()).byteLength;if(W.isArrayBufferView(v)||W.isArrayBuffer(v))return v.byteLength;if(W.isURLSearchParams(v)&&(v=v+""),W.isString(v))return(await c(v)).byteLength},g=async(v,S)=>{const C=W.toFiniteNumber(v.getContentLength());return C??m(S)};return async v=>{let{url:S,method:C,data:w,signal:y,cancelToken:f,timeout:u,onDownloadProgress:h,onUploadProgress:b,responseType:A,headers:R,withCredentials:_="same-origin",fetchOptions:E}=rA(v),P=e||fetch;A=A?(A+"").toLowerCase():"text";let T=v2([y,f&&f.toAbortSignal()],u),k=null;const F=T&&T.unsubscribe&&(()=>{T.unsubscribe()});let X;try{if(b&&l&&C!=="get"&&C!=="head"&&(X=await g(R,w))!==0){let V=new r(S,{method:"POST",body:w,duplex:"half"}),G;if(W.isFormData(w)&&(G=V.headers.get("content-type"))&&R.setContentType(G),V.body){const[te,re]=Ub(X,kl(Wb(b)));w=Zb(V.body,qb,te,re)}}W.isString(_)||(_=_?"include":"omit");const O=s&&"credentials"in r.prototype,L={...E,signal:T,method:C.toUpperCase(),headers:R.normalize().toJSON(),body:w,duplex:"half",credentials:O?_:void 0};k=s&&new r(S,L);let B=await(s?P(k,E):P(S,L));const z=d&&(A==="stream"||A==="response");if(d&&(h||z&&F)){const V={};["status","statusText","headers"].forEach(ie=>{V[ie]=B[ie]});const G=W.toFiniteNumber(B.headers.get("content-length")),[te,re]=h&&Ub(G,kl(Wb(h),!0))||[];B=new n(Zb(B.body,qb,te,()=>{re&&re(),F&&F()}),V)}A=A||"text";let Z=await p[W.findKey(p,A)||"text"](B,v);return!z&&F&&F(),await new Promise((V,G)=>{eA(V,G,{data:Z,headers:vr.from(B.headers),status:B.status,statusText:B.statusText,config:v,request:k})})}catch(O){throw F&&F(),O&&O.name==="TypeError"&&/Load failed|fetch/i.test(O.message)?Object.assign(new De("Network Error",De.ERR_NETWORK,v,k),{cause:O.cause||O}):De.from(O,O&&O.code,v,k)}}},A2=new Map,nA=t=>{let e=t&&t.env||{};const{fetch:r,Request:n,Response:i}=e,s=[n,i,r];let o=s.length,a=o,c,l,d=A2;for(;a--;)c=s[a],l=d.get(c),l===void 0&&d.set(c,l=a?new Map:C2(e)),d=l;return l};nA();const Ph={http:zj,xhr:g2,fetch:{get:nA}};W.forEach(Ph,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const $b=t=>`- ${t}`,R2=t=>W.isFunction(t)||t===null||t===!1;function _2(t,e){t=W.isArray(t)?t:[t];const{length:r}=t;let n,i;const s={};for(let o=0;o<r;o++){n=t[o];let a;if(i=n,!R2(n)&&(i=Ph[(a=String(n)).toLowerCase()],i===void 0))throw new De(`Unknown adapter '${a}'`);if(i&&(W.isFunction(i)||(i=i.get(e))))break;s[a||"#"+o]=i}if(!i){const o=Object.entries(s).map(([c,l])=>`adapter ${c} `+(l===!1?"is not supported by the environment":"is not available in the build"));let a=r?o.length>1?`since :
190
+ `+o.map($b).join(`
191
+ `):" "+$b(o[0]):"as no adapter specified";throw new De("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return i}const iA={getAdapter:_2,adapters:Ph};function Qu(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new bo(null,t)}function ey(t){return Qu(t),t.headers=vr.from(t.headers),t.data=Ku.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),iA.getAdapter(t.adapter||Ea.adapter,t)(t).then(function(n){return Qu(t),n.data=Ku.call(t,t.transformResponse,n),n.headers=vr.from(n.headers),n},function(n){return $C(n)||(Qu(t),n&&n.response&&(n.response.data=Ku.call(t,t.transformResponse,n.response),n.response.headers=vr.from(n.response.headers))),Promise.reject(n)})}const sA="1.13.2",Sd={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Sd[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});const ty={};Sd.transitional=function(e,r,n){function i(s,o){return"[Axios v"+sA+"] Transitional option '"+s+"'"+o+(n?". "+n:"")}return(s,o,a)=>{if(e===!1)throw new De(i(o," has been removed"+(r?" in "+r:"")),De.ERR_DEPRECATED);return r&&!ty[o]&&(ty[o]=!0,console.warn(i(o," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(s,o,a):!0}};Sd.spelling=function(e){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};function E2(t,e,r){if(typeof t!="object")throw new De("options must be an object",De.ERR_BAD_OPTION_VALUE);const n=Object.keys(t);let i=n.length;for(;i-- >0;){const s=n[i],o=e[s];if(o){const a=t[s],c=a===void 0||o(a,s,t);if(c!==!0)throw new De("option "+s+" must be "+c,De.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new De("Unknown option "+s,De.ERR_BAD_OPTION)}}const rl={assertOptions:E2,validators:Sd},xn=rl.validators;let ts=class{constructor(e){this.defaults=e||{},this.interceptors={request:new Gb,response:new Gb}}async request(e,r){try{return await this._request(e,r)}catch(n){if(n instanceof Error){let i={};Error.captureStackTrace?Error.captureStackTrace(i):i=new Error;const s=i.stack?i.stack.replace(/^.+\n/,""):"";try{n.stack?s&&!String(n.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(n.stack+=`
192
+ `+s):n.stack=s}catch{}}throw n}}_request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=ds(this.defaults,r);const{transitional:n,paramsSerializer:i,headers:s}=r;n!==void 0&&rl.assertOptions(n,{silentJSONParsing:xn.transitional(xn.boolean),forcedJSONParsing:xn.transitional(xn.boolean),clarifyTimeoutError:xn.transitional(xn.boolean)},!1),i!=null&&(W.isFunction(i)?r.paramsSerializer={serialize:i}:rl.assertOptions(i,{encode:xn.function,serialize:xn.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),rl.assertOptions(r,{baseUrl:xn.spelling("baseURL"),withXsrfToken:xn.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let o=s&&W.merge(s.common,s[r.method]);s&&W.forEach(["delete","get","head","post","put","patch","common"],v=>{delete s[v]}),r.headers=vr.concat(o,s);const a=[];let c=!0;this.interceptors.request.forEach(function(S){typeof S.runWhen=="function"&&S.runWhen(r)===!1||(c=c&&S.synchronous,a.unshift(S.fulfilled,S.rejected))});const l=[];this.interceptors.response.forEach(function(S){l.push(S.fulfilled,S.rejected)});let d,p=0,m;if(!c){const v=[ey.bind(this),void 0];for(v.unshift(...a),v.push(...l),m=v.length,d=Promise.resolve(r);p<m;)d=d.then(v[p++],v[p++]);return d}m=a.length;let g=r;for(;p<m;){const v=a[p++],S=a[p++];try{g=v(g)}catch(C){S.call(this,C);break}}try{d=ey.call(this,g)}catch(v){return Promise.reject(v)}for(p=0,m=l.length;p<m;)d=d.then(l[p++],l[p++]);return d}getUri(e){e=ds(this.defaults,e);const r=tA(e.baseURL,e.url,e.allowAbsoluteUrls);return JC(r,e.params,e.paramsSerializer)}};W.forEach(["delete","get","head","options"],function(e){ts.prototype[e]=function(r,n){return this.request(ds(n||{},{method:e,url:r,data:(n||{}).data}))}});W.forEach(["post","put","patch"],function(e){function r(n){return function(s,o,a){return this.request(ds(a||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:s,data:o}))}}ts.prototype[e]=r(),ts.prototype[e+"Form"]=r(!0)});let P2=class oA{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(s){r=s});const n=this;this.promise.then(i=>{if(!n._listeners)return;let s=n._listeners.length;for(;s-- >0;)n._listeners[s](i);n._listeners=null}),this.promise.then=i=>{let s;const o=new Promise(a=>{n.subscribe(a),s=a}).then(i);return o.cancel=function(){n.unsubscribe(s)},o},e(function(s,o,a){n.reason||(n.reason=new bo(s,o,a),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const e=new AbortController,r=n=>{e.abort(n)};return this.subscribe(r),e.signal.unsubscribe=()=>this.unsubscribe(r),e.signal}static source(){let e;return{token:new oA(function(i){e=i}),cancel:e}}};function T2(t){return function(r){return t.apply(null,r)}}function I2(t){return W.isObject(t)&&t.isAxiosError===!0}const pp={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(pp).forEach(([t,e])=>{pp[e]=t});function aA(t){const e=new ts(t),r=BC(ts.prototype.request,e);return W.extend(r,ts.prototype,e,{allOwnKeys:!0}),W.extend(r,e,null,{allOwnKeys:!0}),r.create=function(i){return aA(ds(t,i))},r}const yt=aA(Ea);yt.Axios=ts;yt.CanceledError=bo;yt.CancelToken=P2;yt.isCancel=$C;yt.VERSION=sA;yt.toFormData=yd;yt.AxiosError=De;yt.Cancel=yt.CanceledError;yt.all=function(e){return Promise.all(e)};yt.spread=T2;yt.isAxiosError=I2;yt.mergeConfig=ds;yt.AxiosHeaders=vr;yt.formToJSON=t=>QC(W.isHTMLForm(t)?new FormData(t):t);yt.getAdapter=iA.getAdapter;yt.HttpStatusCode=pp;yt.default=yt;const{Axios:$H,AxiosError:eV,CanceledError:tV,isCancel:rV,CancelToken:nV,VERSION:iV,all:sV,Cancel:oV,isAxiosError:aV,spread:cV,toFormData:lV,AxiosHeaders:dV,HttpStatusCode:uV,formToJSON:fV,getAdapter:pV,mergeConfig:hV}=yt;var vt={};function Wt(t){return`Minified Redux error #${t}; visit https://redux.js.org/Errors?code=${t} for the full message or use the non-minified dev environment for full errors. `}var O2=typeof Symbol=="function"&&Symbol.observable||"@@observable",ry=O2,$u=()=>Math.random().toString(36).substring(7).split("").join("."),x2={INIT:`@@redux/INIT${$u()}`,REPLACE:`@@redux/REPLACE${$u()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${$u()}`},rs=x2;function Pa(t){if(typeof t!="object"||t===null)return!1;let e=t;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e||Object.getPrototypeOf(t)===null}function D2(t){if(t===void 0)return"undefined";if(t===null)return"null";const e=typeof t;switch(e){case"boolean":case"string":case"number":case"symbol":case"function":return e}if(Array.isArray(t))return"array";if(N2(t))return"date";if(M2(t))return"error";const r=k2(t);switch(r){case"Symbol":case"Promise":case"WeakMap":case"WeakSet":case"Map":case"Set":return r}return Object.prototype.toString.call(t).slice(8,-1).toLowerCase().replace(/\s/g,"")}function k2(t){return typeof t.constructor=="function"?t.constructor.name:null}function M2(t){return t instanceof Error||typeof t.message=="string"&&t.constructor&&typeof t.constructor.stackTraceLimit=="number"}function N2(t){return t instanceof Date?!0:typeof t.toDateString=="function"&&typeof t.getDate=="function"&&typeof t.setDate=="function"}function yi(t){let e=typeof t;return vt.NODE_ENV!=="production"&&(e=D2(t)),e}function cA(t,e,r){if(typeof t!="function")throw new Error(vt.NODE_ENV==="production"?Wt(2):`Expected the root reducer to be a function. Instead, received: '${yi(t)}'`);if(typeof e=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(vt.NODE_ENV==="production"?Wt(0):"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.");if(typeof e=="function"&&typeof r>"u"&&(r=e,e=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(vt.NODE_ENV==="production"?Wt(1):`Expected the enhancer to be a function. Instead, received: '${yi(r)}'`);return r(cA)(t,e)}let n=t,i=e,s=new Map,o=s,a=0,c=!1;function l(){o===s&&(o=new Map,s.forEach((C,w)=>{o.set(w,C)}))}function d(){if(c)throw new Error(vt.NODE_ENV==="production"?Wt(3):"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.");return i}function p(C){if(typeof C!="function")throw new Error(vt.NODE_ENV==="production"?Wt(4):`Expected the listener to be a function. Instead, received: '${yi(C)}'`);if(c)throw new Error(vt.NODE_ENV==="production"?Wt(5):"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api/store#subscribelistener for more details.");let w=!0;l();const y=a++;return o.set(y,C),function(){if(w){if(c)throw new Error(vt.NODE_ENV==="production"?Wt(6):"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api/store#subscribelistener for more details.");w=!1,l(),o.delete(y),s=null}}}function m(C){if(!Pa(C))throw new Error(vt.NODE_ENV==="production"?Wt(7):`Actions must be plain objects. Instead, the actual type was: '${yi(C)}'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.`);if(typeof C.type>"u")throw new Error(vt.NODE_ENV==="production"?Wt(8):'Actions may not have an undefined "type" property. You may have misspelled an action type string constant.');if(typeof C.type!="string")throw new Error(vt.NODE_ENV==="production"?Wt(17):`Action "type" property must be a string. Instead, the actual type was: '${yi(C.type)}'. Value was: '${C.type}' (stringified)`);if(c)throw new Error(vt.NODE_ENV==="production"?Wt(9):"Reducers may not dispatch actions.");try{c=!0,i=n(i,C)}finally{c=!1}return(s=o).forEach(y=>{y()}),C}function g(C){if(typeof C!="function")throw new Error(vt.NODE_ENV==="production"?Wt(10):`Expected the nextReducer to be a function. Instead, received: '${yi(C)}`);n=C,m({type:rs.REPLACE})}function v(){const C=p;return{subscribe(w){if(typeof w!="object"||w===null)throw new Error(vt.NODE_ENV==="production"?Wt(11):`Expected the observer to be an object. Instead, received: '${yi(w)}'`);function y(){const u=w;u.next&&u.next(d())}return y(),{unsubscribe:C(y)}},[ry](){return this}}}return m({type:rs.INIT}),{dispatch:m,subscribe:p,getState:d,replaceReducer:g,[ry]:v}}function ny(t){typeof console<"u"&&typeof console.error=="function"&&console.error(t);try{throw new Error(t)}catch{}}function L2(t,e,r,n){const i=Object.keys(e),s=r&&r.type===rs.INIT?"preloadedState argument passed to createStore":"previous state received by the reducer";if(i.length===0)return"Store does not have a valid reducer. Make sure the argument passed to combineReducers is an object whose values are reducers.";if(!Pa(t))return`The ${s} has unexpected type of "${yi(t)}". Expected argument to be an object with the following keys: "${i.join('", "')}"`;const o=Object.keys(t).filter(a=>!e.hasOwnProperty(a)&&!n[a]);if(o.forEach(a=>{n[a]=!0}),!(r&&r.type===rs.REPLACE)&&o.length>0)return`Unexpected ${o.length>1?"keys":"key"} "${o.join('", "')}" found in ${s}. Expected to find one of the known reducer keys instead: "${i.join('", "')}". Unexpected keys will be ignored.`}function j2(t){Object.keys(t).forEach(e=>{const r=t[e];if(typeof r(void 0,{type:rs.INIT})>"u")throw new Error(vt.NODE_ENV==="production"?Wt(12):`The slice reducer for key "${e}" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.`);if(typeof r(void 0,{type:rs.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(vt.NODE_ENV==="production"?Wt(13):`The slice reducer for key "${e}" returned undefined when probed with a random type. Don't try to handle '${rs.INIT}' or other actions in "redux/*" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.`)})}function lA(t){const e=Object.keys(t),r={};for(let o=0;o<e.length;o++){const a=e[o];vt.NODE_ENV!=="production"&&typeof t[a]>"u"&&ny(`No reducer provided for key "${a}"`),typeof t[a]=="function"&&(r[a]=t[a])}const n=Object.keys(r);let i;vt.NODE_ENV!=="production"&&(i={});let s;try{j2(r)}catch(o){s=o}return function(a={},c){if(s)throw s;if(vt.NODE_ENV!=="production"){const p=L2(a,r,c,i);p&&ny(p)}let l=!1;const d={};for(let p=0;p<n.length;p++){const m=n[p],g=r[m],v=a[m],S=g(v,c);if(typeof S>"u"){const C=c&&c.type;throw new Error(vt.NODE_ENV==="production"?Wt(14):`When called with an action of type ${C?`"${String(C)}"`:"(unknown type)"}, the slice reducer for key "${m}" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.`)}d[m]=S,l=l||S!==v}return l=l||n.length!==Object.keys(a).length,l?d:a}}function Ml(...t){return t.length===0?e=>e:t.length===1?t[0]:t.reduce((e,r)=>(...n)=>e(r(...n)))}function B2(...t){return e=>(r,n)=>{const i=e(r,n);let s=()=>{throw new Error(vt.NODE_ENV==="production"?Wt(15):"Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")};const o={getState:i.getState,dispatch:(c,...l)=>s(c,...l)},a=t.map(c=>c(o));return s=Ml(...a)(i.dispatch),{...i,dispatch:s}}}function Th(t){return Pa(t)&&"type"in t&&typeof t.type=="string"}var Ta={},dA=Symbol.for("immer-nothing"),iy=Symbol.for("immer-draftable"),xr=Symbol.for("immer-state"),F2=Ta.NODE_ENV!=="production"?[function(t){return`The plugin for '${t}' has not been loaded into Immer. To enable the plugin, import and call \`enable${t}()\` when initializing your application.`},function(t){return`produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${t}'`},"This object has been frozen and should not be mutated",function(t){return"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? "+t},"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.","Immer forbids circular references","The first or second argument to `produce` must be a function","The third argument to `produce` must be a function or undefined","First argument to `createDraft` must be a plain object, an array, or an immerable object","First argument to `finishDraft` must be a draft returned by `createDraft`",function(t){return`'current' expects a draft, got: ${t}`},"Object.defineProperty() cannot be used on an Immer draft","Object.setPrototypeOf() cannot be used on an Immer draft","Immer only supports deleting array indices","Immer only supports setting array indices and the 'length' property",function(t){return`'original' expects a draft, got: ${t}`}]:[];function mr(t,...e){if(Ta.NODE_ENV!=="production"){const r=F2[t],n=typeof r=="function"?r.apply(null,e):r;throw new Error(`[Immer] ${n}`)}throw new Error(`[Immer] minified error nr: ${t}. Full error at: https://bit.ly/3cXEKWf`)}var ro=Object.getPrototypeOf;function us(t){return!!t&&!!t[xr]}function ci(t){return t?uA(t)||Array.isArray(t)||!!t[iy]||!!t.constructor?.[iy]||Cd(t)||Ad(t):!1}var z2=Object.prototype.constructor.toString();function uA(t){if(!t||typeof t!="object")return!1;const e=ro(t);if(e===null)return!0;const r=Object.hasOwnProperty.call(e,"constructor")&&e.constructor;return r===Object?!0:typeof r=="function"&&Function.toString.call(r)===z2}function Nl(t,e){wd(t)===0?Reflect.ownKeys(t).forEach(r=>{e(r,t[r],t)}):t.forEach((r,n)=>e(n,r,t))}function wd(t){const e=t[xr];return e?e.type_:Array.isArray(t)?1:Cd(t)?2:Ad(t)?3:0}function hp(t,e){return wd(t)===2?t.has(e):Object.prototype.hasOwnProperty.call(t,e)}function fA(t,e,r){const n=wd(t);n===2?t.set(e,r):n===3?t.add(r):t[e]=r}function H2(t,e){return t===e?t!==0||1/t===1/e:t!==t&&e!==e}function Cd(t){return t instanceof Map}function Ad(t){return t instanceof Set}function Yi(t){return t.copy_||t.base_}function mp(t,e){if(Cd(t))return new Map(t);if(Ad(t))return new Set(t);if(Array.isArray(t))return Array.prototype.slice.call(t);const r=uA(t);if(e===!0||e==="class_only"&&!r){const n=Object.getOwnPropertyDescriptors(t);delete n[xr];let i=Reflect.ownKeys(n);for(let s=0;s<i.length;s++){const o=i[s],a=n[o];a.writable===!1&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(n[o]={configurable:!0,writable:!0,enumerable:a.enumerable,value:t[o]})}return Object.create(ro(t),n)}else{const n=ro(t);if(n!==null&&r)return{...t};const i=Object.create(n);return Object.assign(i,t)}}function Ih(t,e=!1){return Rd(t)||us(t)||!ci(t)||(wd(t)>1&&(t.set=t.add=t.clear=t.delete=V2),Object.freeze(t),e&&Object.entries(t).forEach(([r,n])=>Ih(n,!0))),t}function V2(){mr(2)}function Rd(t){return Object.isFrozen(t)}var G2={};function fs(t){const e=G2[t];return e||mr(0,t),e}var da;function pA(){return da}function X2(t,e){return{drafts_:[],parent_:t,immer_:e,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function sy(t,e){e&&(fs("Patches"),t.patches_=[],t.inversePatches_=[],t.patchListener_=e)}function gp(t){vp(t),t.drafts_.forEach(U2),t.drafts_=null}function vp(t){t===da&&(da=t.parent_)}function oy(t){return da=X2(da,t)}function U2(t){const e=t[xr];e.type_===0||e.type_===1?e.revoke_():e.revoked_=!0}function ay(t,e){e.unfinalizedDrafts_=e.drafts_.length;const r=e.drafts_[0];return t!==void 0&&t!==r?(r[xr].modified_&&(gp(e),mr(4)),ci(t)&&(t=Ll(e,t),e.parent_||jl(e,t)),e.patches_&&fs("Patches").generateReplacementPatches_(r[xr].base_,t,e.patches_,e.inversePatches_)):t=Ll(e,r,[]),gp(e),e.patches_&&e.patchListener_(e.patches_,e.inversePatches_),t!==dA?t:void 0}function Ll(t,e,r){if(Rd(e))return e;const n=e[xr];if(!n)return Nl(e,(i,s)=>cy(t,n,e,i,s,r)),e;if(n.scope_!==t)return e;if(!n.modified_)return jl(t,n.base_,!0),n.base_;if(!n.finalized_){n.finalized_=!0,n.scope_.unfinalizedDrafts_--;const i=n.copy_;let s=i,o=!1;n.type_===3&&(s=new Set(i),i.clear(),o=!0),Nl(s,(a,c)=>cy(t,n,i,a,c,r,o)),jl(t,i,!1),r&&t.patches_&&fs("Patches").generatePatches_(n,r,t.patches_,t.inversePatches_)}return n.copy_}function cy(t,e,r,n,i,s,o){if(Ta.NODE_ENV!=="production"&&i===r&&mr(5),us(i)){const a=s&&e&&e.type_!==3&&!hp(e.assigned_,n)?s.concat(n):void 0,c=Ll(t,i,a);if(fA(r,n,c),us(c))t.canAutoFreeze_=!1;else return}else o&&r.add(i);if(ci(i)&&!Rd(i)){if(!t.immer_.autoFreeze_&&t.unfinalizedDrafts_<1)return;Ll(t,i),(!e||!e.scope_.parent_)&&typeof n!="symbol"&&Object.prototype.propertyIsEnumerable.call(r,n)&&jl(t,i)}}function jl(t,e,r=!1){!t.parent_&&t.immer_.autoFreeze_&&t.canAutoFreeze_&&Ih(e,r)}function W2(t,e){const r=Array.isArray(t),n={type_:r?1:0,scope_:e?e.scope_:pA(),modified_:!1,finalized_:!1,assigned_:{},parent_:e,base_:t,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=n,s=Oh;r&&(i=[n],s=ua);const{revoke:o,proxy:a}=Proxy.revocable(i,s);return n.draft_=a,n.revoke_=o,a}var Oh={get(t,e){if(e===xr)return t;const r=Yi(t);if(!hp(r,e))return Y2(t,r,e);const n=r[e];return t.finalized_||!ci(n)?n:n===ef(t.base_,e)?(tf(t),t.copy_[e]=yp(n,t)):n},has(t,e){return e in Yi(t)},ownKeys(t){return Reflect.ownKeys(Yi(t))},set(t,e,r){const n=hA(Yi(t),e);if(n?.set)return n.set.call(t.draft_,r),!0;if(!t.modified_){const i=ef(Yi(t),e),s=i?.[xr];if(s&&s.base_===r)return t.copy_[e]=r,t.assigned_[e]=!1,!0;if(H2(r,i)&&(r!==void 0||hp(t.base_,e)))return!0;tf(t),bp(t)}return t.copy_[e]===r&&(r!==void 0||e in t.copy_)||Number.isNaN(r)&&Number.isNaN(t.copy_[e])||(t.copy_[e]=r,t.assigned_[e]=!0),!0},deleteProperty(t,e){return ef(t.base_,e)!==void 0||e in t.base_?(t.assigned_[e]=!1,tf(t),bp(t)):delete t.assigned_[e],t.copy_&&delete t.copy_[e],!0},getOwnPropertyDescriptor(t,e){const r=Yi(t),n=Reflect.getOwnPropertyDescriptor(r,e);return n&&{writable:!0,configurable:t.type_!==1||e!=="length",enumerable:n.enumerable,value:r[e]}},defineProperty(){mr(11)},getPrototypeOf(t){return ro(t.base_)},setPrototypeOf(){mr(12)}},ua={};Nl(Oh,(t,e)=>{ua[t]=function(){return arguments[0]=arguments[0][0],e.apply(this,arguments)}});ua.deleteProperty=function(t,e){return Ta.NODE_ENV!=="production"&&isNaN(parseInt(e))&&mr(13),ua.set.call(this,t,e,void 0)};ua.set=function(t,e,r){return Ta.NODE_ENV!=="production"&&e!=="length"&&isNaN(parseInt(e))&&mr(14),Oh.set.call(this,t[0],e,r,t[0])};function ef(t,e){const r=t[xr];return(r?Yi(r):t)[e]}function Y2(t,e,r){const n=hA(e,r);return n?"value"in n?n.value:n.get?.call(t.draft_):void 0}function hA(t,e){if(!(e in t))return;let r=ro(t);for(;r;){const n=Object.getOwnPropertyDescriptor(r,e);if(n)return n;r=ro(r)}}function bp(t){t.modified_||(t.modified_=!0,t.parent_&&bp(t.parent_))}function tf(t){t.copy_||(t.copy_=mp(t.base_,t.scope_.immer_.useStrictShallowCopy_))}var Z2=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(e,r,n)=>{if(typeof e=="function"&&typeof r!="function"){const s=r;r=e;const o=this;return function(c=s,...l){return o.produce(c,d=>r.call(this,d,...l))}}typeof r!="function"&&mr(6),n!==void 0&&typeof n!="function"&&mr(7);let i;if(ci(e)){const s=oy(this),o=yp(e,void 0);let a=!0;try{i=r(o),a=!1}finally{a?gp(s):vp(s)}return sy(s,n),ay(i,s)}else if(!e||typeof e!="object"){if(i=r(e),i===void 0&&(i=e),i===dA&&(i=void 0),this.autoFreeze_&&Ih(i,!0),n){const s=[],o=[];fs("Patches").generateReplacementPatches_(e,i,s,o),n(s,o)}return i}else mr(1,e)},this.produceWithPatches=(e,r)=>{if(typeof e=="function")return(o,...a)=>this.produceWithPatches(o,c=>e(c,...a));let n,i;return[this.produce(e,r,(o,a)=>{n=o,i=a}),n,i]},typeof t?.autoFreeze=="boolean"&&this.setAutoFreeze(t.autoFreeze),typeof t?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(t.useStrictShallowCopy)}createDraft(t){ci(t)||mr(8),us(t)&&(t=q2(t));const e=oy(this),r=yp(t,void 0);return r[xr].isManual_=!0,vp(e),r}finishDraft(t,e){const r=t&&t[xr];(!r||!r.isManual_)&&mr(9);const{scope_:n}=r;return sy(n,e),ay(void 0,n)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}applyPatches(t,e){let r;for(r=e.length-1;r>=0;r--){const i=e[r];if(i.path.length===0&&i.op==="replace"){t=i.value;break}}r>-1&&(e=e.slice(r+1));const n=fs("Patches").applyPatches_;return us(t)?n(t,e):this.produce(t,i=>n(i,e))}};function yp(t,e){const r=Cd(t)?fs("MapSet").proxyMap_(t,e):Ad(t)?fs("MapSet").proxySet_(t,e):W2(t,e);return(e?e.scope_:pA()).drafts_.push(r),r}function q2(t){return us(t)||mr(10,t),mA(t)}function mA(t){if(!ci(t)||Rd(t))return t;const e=t[xr];let r;if(e){if(!e.modified_)return e.base_;e.finalized_=!0,r=mp(t,e.scope_.immer_.useStrictShallowCopy_)}else r=mp(t,!0);return Nl(r,(n,i)=>{fA(r,n,mA(i))}),e&&(e.finalized_=!1),r}var Dr=new Z2,gA=Dr.produce;Dr.produceWithPatches.bind(Dr);Dr.setAutoFreeze.bind(Dr);Dr.setUseStrictShallowCopy.bind(Dr);Dr.applyPatches.bind(Dr);Dr.createDraft.bind(Dr);Dr.finishDraft.bind(Dr);var J2={},K2=(t,e,r)=>{if(e.length===1&&e[0]===r){let n=!1;try{const i={};t(i)===i&&(n=!0)}catch{}if(n){let i;try{throw new Error}catch(s){({stack:i}=s)}console.warn(`The result function returned its own inputs without modification. e.g
193
+ \`createSelector([state => state.todos], todos => todos)\`
194
+ This could lead to inefficient memoization and unnecessary re-renders.
195
+ Ensure transformation logic is in the result function, and extraction logic is in the input selectors.`,{stack:i})}}},Q2=(t,e,r)=>{const{memoize:n,memoizeOptions:i}=e,{inputSelectorResults:s,inputSelectorResultsCopy:o}=t,a=n(()=>({}),...i);if(!(a.apply(null,s)===a.apply(null,o))){let l;try{throw new Error}catch(d){({stack:l}=d)}console.warn(`An input selector returned a different result when passed same arguments.
196
+ This means your output selector will likely run more frequently than intended.
197
+ Avoid returning a new reference inside your input selector, e.g.
198
+ \`createSelector([state => state.todos.map(todo => todo.id)], todoIds => todoIds.length)\``,{arguments:r,firstInputs:s,secondInputs:o,stack:l})}},$2={inputStabilityCheck:"once",identityFunctionCheck:"once"};function e3(t,e=`expected a function, instead received ${typeof t}`){if(typeof t!="function")throw new TypeError(e)}function t3(t,e=`expected an object, instead received ${typeof t}`){if(typeof t!="object")throw new TypeError(e)}function r3(t,e="expected all items to be functions, instead received the following types: "){if(!t.every(r=>typeof r=="function")){const r=t.map(n=>typeof n=="function"?`function ${n.name||"unnamed"}()`:typeof n).join(", ");throw new TypeError(`${e}[${r}]`)}}var ly=t=>Array.isArray(t)?t:[t];function n3(t){const e=Array.isArray(t[0])?t[0]:t;return r3(e,"createSelector expects all input-selectors to be functions, but received the following types: "),e}function dy(t,e){const r=[],{length:n}=t;for(let i=0;i<n;i++)r.push(t[i].apply(null,e));return r}var i3=(t,e)=>{const{identityFunctionCheck:r,inputStabilityCheck:n}={...$2,...e};return{identityFunctionCheck:{shouldRun:r==="always"||r==="once"&&t,run:K2},inputStabilityCheck:{shouldRun:n==="always"||n==="once"&&t,run:Q2}}},s3=class{constructor(t){this.value=t}deref(){return this.value}},o3=typeof WeakRef<"u"?WeakRef:s3,a3=0,uy=1;function yc(){return{s:a3,v:void 0,o:null,p:null}}function vA(t,e={}){let r=yc();const{resultEqualityCheck:n}=e;let i,s=0;function o(){let a=r;const{length:c}=arguments;for(let p=0,m=c;p<m;p++){const g=arguments[p];if(typeof g=="function"||typeof g=="object"&&g!==null){let v=a.o;v===null&&(a.o=v=new WeakMap);const S=v.get(g);S===void 0?(a=yc(),v.set(g,a)):a=S}else{let v=a.p;v===null&&(a.p=v=new Map);const S=v.get(g);S===void 0?(a=yc(),v.set(g,a)):a=S}}const l=a;let d;if(a.s===uy)d=a.v;else if(d=t.apply(null,arguments),s++,n){const p=i?.deref?.()??i;p!=null&&n(p,d)&&(d=p,s!==0&&s--),i=typeof d=="object"&&d!==null||typeof d=="function"?new o3(d):d}return l.s=uy,l.v=d,d}return o.clearCache=()=>{r=yc(),o.resetResultsCount()},o.resultsCount=()=>s,o.resetResultsCount=()=>{s=0},o}function c3(t,...e){const r=typeof t=="function"?{memoize:t,memoizeOptions:e}:t,n=(...i)=>{let s=0,o=0,a,c={},l=i.pop();typeof l=="object"&&(c=l,l=i.pop()),e3(l,`createSelector expects an output function after the inputs, but received: [${typeof l}]`);const d={...r,...c},{memoize:p,memoizeOptions:m=[],argsMemoize:g=vA,argsMemoizeOptions:v=[],devModeChecks:S={}}=d,C=ly(m),w=ly(v),y=n3(i),f=p(function(){return s++,l.apply(null,arguments)},...C);let u=!0;const h=g(function(){o++;const A=dy(y,arguments);if(a=f.apply(null,A),J2.NODE_ENV!=="production"){const{identityFunctionCheck:R,inputStabilityCheck:_}=i3(u,S);if(R.shouldRun&&R.run(l,A,a),_.shouldRun){const E=dy(y,arguments);_.run({inputSelectorResults:A,inputSelectorResultsCopy:E},{memoize:p,memoizeOptions:C},arguments)}u&&(u=!1)}return a},...w);return Object.assign(h,{resultFunc:l,memoizedResultFunc:f,dependencies:y,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>a,recomputations:()=>s,resetRecomputations:()=>{s=0},memoize:p,argsMemoize:g})};return Object.assign(n,{withTypes:()=>n}),n}var xe=c3(vA),l3=Object.assign((t,e=xe)=>{t3(t,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof t}`);const r=Object.keys(t),n=r.map(s=>t[s]);return e(n,(...s)=>s.reduce((o,a,c)=>(o[r[c]]=a,o),{}))},{withTypes:()=>l3});function bA(t){return({dispatch:r,getState:n})=>i=>s=>typeof s=="function"?s(r,n,t):i(s)}var d3=bA(),u3=bA,Ae={},f3=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Ml:Ml.apply(null,arguments)},yA=t=>t&&typeof t.match=="function";function wn(t,e){function r(...n){if(e){let i=e(...n);if(!i)throw new Error(Ae.NODE_ENV==="production"?rt(0):"prepareAction did not return an object");return{type:t,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:t,payload:n[0]}}return r.toString=()=>`${t}`,r.type=t,r.match=n=>Th(n)&&n.type===t,r}function p3(t){return typeof t=="function"&&"type"in t&&yA(t)}function h3(t){const e=t?`${t}`.split("/"):[],r=e[e.length-1]||"actionCreator";return`Detected an action creator with type "${t||"unknown"}" being dispatched.
199
+ Make sure you're calling the action creator before dispatching, i.e. \`dispatch(${r}())\` instead of \`dispatch(${r})\`. This is necessary even if the action has no payload.`}function m3(t={}){if(Ae.NODE_ENV==="production")return()=>r=>n=>r(n);const{isActionCreator:e=p3}=t;return()=>r=>n=>(e(n)&&console.warn(h3(n.type)),r(n))}function SA(t,e){let r=0;return{measureTime(n){const i=Date.now();try{return n()}finally{const s=Date.now();r+=s-i}},warnIfExceeded(){r>t&&console.warn(`${e} took ${r}ms, which is more than the warning threshold of ${t}ms.
200
+ If your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.
201
+ It is disabled in production builds, so you don't need to worry about that.`)}}}var wA=class $o extends Array{constructor(...e){super(...e),Object.setPrototypeOf(this,$o.prototype)}static get[Symbol.species](){return $o}concat(...e){return super.concat.apply(this,e)}prepend(...e){return e.length===1&&Array.isArray(e[0])?new $o(...e[0].concat(this)):new $o(...e.concat(this))}};function fy(t){return ci(t)?gA(t,()=>{}):t}function Sc(t,e,r){return t.has(e)?t.get(e):t.set(e,r(e)).get(e)}function g3(t){return typeof t!="object"||t==null||Object.isFrozen(t)}function v3(t,e,r){const n=CA(t,e,r);return{detectMutations(){return AA(t,e,n,r)}}}function CA(t,e=[],r,n="",i=new Set){const s={value:r};if(!t(r)&&!i.has(r)){i.add(r),s.children={};for(const o in r){const a=n?n+"."+o:o;e.length&&e.indexOf(a)!==-1||(s.children[o]=CA(t,e,r[o],a))}}return s}function AA(t,e=[],r,n,i=!1,s=""){const o=r?r.value:void 0,a=o===n;if(i&&!a&&!Number.isNaN(n))return{wasMutated:!0,path:s};if(t(o)||t(n))return{wasMutated:!1};const c={};for(let d in r.children)c[d]=!0;for(let d in n)c[d]=!0;const l=e.length>0;for(let d in c){const p=s?s+"."+d:d;if(l&&e.some(v=>v instanceof RegExp?v.test(p):p===v))continue;const m=AA(t,e,r.children[d],n[d],a,p);if(m.wasMutated)return m}return{wasMutated:!1}}function b3(t={}){if(Ae.NODE_ENV==="production")return()=>e=>r=>e(r);{let e=function(a,c,l,d){return JSON.stringify(a,r(c,d),l)},r=function(a,c){let l=[],d=[];return c||(c=function(p,m){return l[0]===m?"[Circular ~]":"[Circular ~."+d.slice(0,l.indexOf(m)).join(".")+"]"}),function(p,m){if(l.length>0){var g=l.indexOf(this);~g?l.splice(g+1):l.push(this),~g?d.splice(g,1/0,p):d.push(p),~l.indexOf(m)&&(m=c.call(this,p,m))}else l.push(m);return a==null?m:a.call(this,p,m)}},{isImmutable:n=g3,ignoredPaths:i,warnAfter:s=32}=t;const o=v3.bind(null,n,i);return({getState:a})=>{let c=a(),l=o(c),d;return p=>m=>{const g=SA(s,"ImmutableStateInvariantMiddleware");g.measureTime(()=>{if(c=a(),d=l.detectMutations(),l=o(c),d.wasMutated)throw new Error(Ae.NODE_ENV==="production"?rt(19):`A state mutation was detected between dispatches, in the path '${d.path||""}'. This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)`)});const v=p(m);return g.measureTime(()=>{if(c=a(),d=l.detectMutations(),l=o(c),d.wasMutated)throw new Error(Ae.NODE_ENV==="production"?rt(20):`A state mutation was detected inside a dispatch, in the path: ${d.path||""}. Take a look at the reducer(s) handling the action ${e(m)}. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)`)}),g.warnIfExceeded(),v}}}}function RA(t){const e=typeof t;return t==null||e==="string"||e==="boolean"||e==="number"||Array.isArray(t)||Pa(t)}function Sp(t,e="",r=RA,n,i=[],s){let o;if(!r(t))return{keyPath:e||"<root>",value:t};if(typeof t!="object"||t===null||s?.has(t))return!1;const a=n!=null?n(t):Object.entries(t),c=i.length>0;for(const[l,d]of a){const p=e?e+"."+l:l;if(!(c&&i.some(g=>g instanceof RegExp?g.test(p):p===g))){if(!r(d))return{keyPath:p,value:d};if(typeof d=="object"&&(o=Sp(d,p,r,n,i,s),o))return o}}return s&&_A(t)&&s.add(t),!1}function _A(t){if(!Object.isFrozen(t))return!1;for(const e of Object.values(t))if(!(typeof e!="object"||e===null)&&!_A(e))return!1;return!0}function y3(t={}){if(Ae.NODE_ENV==="production")return()=>e=>r=>e(r);{const{isSerializable:e=RA,getEntries:r,ignoredActions:n=[],ignoredActionPaths:i=["meta.arg","meta.baseQueryMeta"],ignoredPaths:s=[],warnAfter:o=32,ignoreState:a=!1,ignoreActions:c=!1,disableCache:l=!1}=t,d=!l&&WeakSet?new WeakSet:void 0;return p=>m=>g=>{if(!Th(g))return m(g);const v=m(g),S=SA(o,"SerializableStateInvariantMiddleware");return!c&&!(n.length&&n.indexOf(g.type)!==-1)&&S.measureTime(()=>{const C=Sp(g,"",e,r,i,d);if(C){const{keyPath:w,value:y}=C;console.error(`A non-serializable value was detected in an action, in the path: \`${w}\`. Value:`,y,`
202
+ Take a look at the logic that dispatched this action: `,g,`
203
+ (See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)`,`
204
+ (To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)`)}}),a||(S.measureTime(()=>{const C=p.getState(),w=Sp(C,"",e,r,s,d);if(w){const{keyPath:y,value:f}=w;console.error(`A non-serializable value was detected in the state, in the path: \`${y}\`. Value:`,f,`
205
+ Take a look at the reducer(s) handling this action type: ${g.type}.
206
+ (See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)`)}}),S.warnIfExceeded()),v}}}function wc(t){return typeof t=="boolean"}var S3=()=>function(e){const{thunk:r=!0,immutableCheck:n=!0,serializableCheck:i=!0,actionCreatorCheck:s=!0}=e??{};let o=new wA;if(r&&(wc(r)?o.push(d3):o.push(u3(r.extraArgument))),Ae.NODE_ENV!=="production"){if(n){let a={};wc(n)||(a=n),o.unshift(b3(a))}if(i){let a={};wc(i)||(a=i),o.push(y3(a))}if(s){let a={};wc(s)||(a=s),o.unshift(m3(a))}}return o},w3="RTK_autoBatch",py=t=>e=>{setTimeout(e,t)},C3=(t={type:"raf"})=>e=>(...r)=>{const n=e(...r);let i=!0,s=!1,o=!1;const a=new Set,c=t.type==="tick"?queueMicrotask:t.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:py(10):t.type==="callback"?t.queueNotification:py(t.timeout),l=()=>{o=!1,s&&(s=!1,a.forEach(d=>d()))};return Object.assign({},n,{subscribe(d){const p=()=>i&&d(),m=n.subscribe(p);return a.add(d),()=>{m(),a.delete(d)}},dispatch(d){try{return i=!d?.meta?.[w3],s=!i,s&&(o||(o=!0,c(l))),n.dispatch(d)}finally{i=!0}}})},A3=t=>function(r){const{autoBatch:n=!0}=r??{};let i=new wA(t);return n&&i.push(C3(typeof n=="object"?n:void 0)),i};function R3(t){const e=S3(),{reducer:r=void 0,middleware:n,devTools:i=!0,duplicateMiddlewareCheck:s=!0,preloadedState:o=void 0,enhancers:a=void 0}=t||{};let c;if(typeof r=="function")c=r;else if(Pa(r))c=lA(r);else throw new Error(Ae.NODE_ENV==="production"?rt(1):"`reducer` is a required argument, and must be a function or an object of functions that can be passed to combineReducers");if(Ae.NODE_ENV!=="production"&&n&&typeof n!="function")throw new Error(Ae.NODE_ENV==="production"?rt(2):"`middleware` field must be a callback");let l;if(typeof n=="function"){if(l=n(e),Ae.NODE_ENV!=="production"&&!Array.isArray(l))throw new Error(Ae.NODE_ENV==="production"?rt(3):"when using a middleware builder function, an array of middleware must be returned")}else l=e();if(Ae.NODE_ENV!=="production"&&l.some(S=>typeof S!="function"))throw new Error(Ae.NODE_ENV==="production"?rt(4):"each middleware provided to configureStore must be a function");if(Ae.NODE_ENV!=="production"&&s){let S=new Set;l.forEach(C=>{if(S.has(C))throw new Error(Ae.NODE_ENV==="production"?rt(42):"Duplicate middleware references found when creating the store. Ensure that each middleware is only included once.");S.add(C)})}let d=Ml;i&&(d=f3({trace:Ae.NODE_ENV!=="production",...typeof i=="object"&&i}));const p=B2(...l),m=A3(p);if(Ae.NODE_ENV!=="production"&&a&&typeof a!="function")throw new Error(Ae.NODE_ENV==="production"?rt(5):"`enhancers` field must be a callback");let g=typeof a=="function"?a(m):m();if(Ae.NODE_ENV!=="production"&&!Array.isArray(g))throw new Error(Ae.NODE_ENV==="production"?rt(6):"`enhancers` callback must return an array");if(Ae.NODE_ENV!=="production"&&g.some(S=>typeof S!="function"))throw new Error(Ae.NODE_ENV==="production"?rt(7):"each enhancer provided to configureStore must be a function");Ae.NODE_ENV!=="production"&&l.length&&!g.includes(p)&&console.error("middlewares were provided, but middleware enhancer was not included in final enhancers - make sure to call `getDefaultEnhancers`");const v=d(...g);return cA(c,o,v)}function EA(t){const e={},r=[];let n;const i={addCase(s,o){if(Ae.NODE_ENV!=="production"){if(r.length>0)throw new Error(Ae.NODE_ENV==="production"?rt(26):"`builder.addCase` should only be called before calling `builder.addMatcher`");if(n)throw new Error(Ae.NODE_ENV==="production"?rt(27):"`builder.addCase` should only be called before calling `builder.addDefaultCase`")}const a=typeof s=="string"?s:s.type;if(!a)throw new Error(Ae.NODE_ENV==="production"?rt(28):"`builder.addCase` cannot be called with an empty action type");if(a in e)throw new Error(Ae.NODE_ENV==="production"?rt(29):`\`builder.addCase\` cannot be called with two reducers for the same action type '${a}'`);return e[a]=o,i},addMatcher(s,o){if(Ae.NODE_ENV!=="production"&&n)throw new Error(Ae.NODE_ENV==="production"?rt(30):"`builder.addMatcher` should only be called before calling `builder.addDefaultCase`");return r.push({matcher:s,reducer:o}),i},addDefaultCase(s){if(Ae.NODE_ENV!=="production"&&n)throw new Error(Ae.NODE_ENV==="production"?rt(31):"`builder.addDefaultCase` can only be called once");return n=s,i}};return t(i),[e,r,n]}function _3(t){return typeof t=="function"}function E3(t,e){if(Ae.NODE_ENV!=="production"&&typeof e=="object")throw new Error(Ae.NODE_ENV==="production"?rt(8):"The object notation for `createReducer` has been removed. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createReducer");let[r,n,i]=EA(e),s;if(_3(t))s=()=>fy(t());else{const a=fy(t);s=()=>a}function o(a=s(),c){let l=[r[c.type],...n.filter(({matcher:d})=>d(c)).map(({reducer:d})=>d)];return l.filter(d=>!!d).length===0&&(l=[i]),l.reduce((d,p)=>{if(p)if(us(d)){const g=p(d,c);return g===void 0?d:g}else{if(ci(d))return gA(d,m=>p(m,c));{const m=p(d,c);if(m===void 0){if(d===null)return d;throw Error("A case reducer on a non-draftable value must not return undefined")}return m}}return d},a)}return o.getInitialState=s,o}var P3=(t,e)=>yA(t)?t.match(e):t(e);function _d(...t){return e=>t.some(r=>P3(r,e))}var T3="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",PA=(t=21)=>{let e="",r=t;for(;r--;)e+=T3[Math.random()*64|0];return e},I3=["name","message","stack","code"],rf=class{constructor(t,e){this.payload=t,this.meta=e}_type},hy=class{constructor(t,e){this.payload=t,this.meta=e}_type},O3=t=>{if(typeof t=="object"&&t!==null){const e={};for(const r of I3)typeof t[r]=="string"&&(e[r]=t[r]);return e}return{message:String(t)}},my="External signal was aborted",x3=(()=>{function t(e,r,n){const i=wn(e+"/fulfilled",(c,l,d,p)=>({payload:c,meta:{...p||{},arg:d,requestId:l,requestStatus:"fulfilled"}})),s=wn(e+"/pending",(c,l,d)=>({payload:void 0,meta:{...d||{},arg:l,requestId:c,requestStatus:"pending"}})),o=wn(e+"/rejected",(c,l,d,p,m)=>({payload:p,error:(n&&n.serializeError||O3)(c||"Rejected"),meta:{...m||{},arg:d,requestId:l,rejectedWithValue:!!p,requestStatus:"rejected",aborted:c?.name==="AbortError",condition:c?.name==="ConditionError"}}));function a(c,{signal:l}={}){return(d,p,m)=>{const g=n?.idGenerator?n.idGenerator(c):PA(),v=new AbortController;let S,C;function w(f){C=f,v.abort()}l&&(l.aborted?w(my):l.addEventListener("abort",()=>w(my),{once:!0}));const y=async function(){let f;try{let h=n?.condition?.(c,{getState:p,extra:m});if(k3(h)&&(h=await h),h===!1||v.signal.aborted)throw{name:"ConditionError",message:"Aborted due to condition callback returning false."};const b=new Promise((A,R)=>{S=()=>{R({name:"AbortError",message:C||"Aborted"})},v.signal.addEventListener("abort",S)});d(s(g,c,n?.getPendingMeta?.({requestId:g,arg:c},{getState:p,extra:m}))),f=await Promise.race([b,Promise.resolve(r(c,{dispatch:d,getState:p,extra:m,requestId:g,signal:v.signal,abort:w,rejectWithValue:(A,R)=>new rf(A,R),fulfillWithValue:(A,R)=>new hy(A,R)})).then(A=>{if(A instanceof rf)throw A;return A instanceof hy?i(A.payload,g,c,A.meta):i(A,g,c)})])}catch(h){f=h instanceof rf?o(null,g,c,h.payload,h.meta):o(h,g,c)}finally{S&&v.signal.removeEventListener("abort",S)}return n&&!n.dispatchConditionRejection&&o.match(f)&&f.meta.condition||d(f),f}();return Object.assign(y,{abort:w,requestId:g,arg:c,unwrap(){return y.then(D3)}})}}return Object.assign(a,{pending:s,rejected:o,fulfilled:i,settled:_d(o,i),typePrefix:e})}return t.withTypes=()=>t,t})();function D3(t){if(t.meta&&t.meta.rejectedWithValue)throw t.payload;if(t.error)throw t.error;return t.payload}function k3(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}var M3=Symbol.for("rtk-slice-createasyncthunk");function N3(t,e){return`${t}/${e}`}function L3({creators:t}={}){const e=t?.asyncThunk?.[M3];return function(n){const{name:i,reducerPath:s=i}=n;if(!i)throw new Error(Ae.NODE_ENV==="production"?rt(11):"`name` is a required option for createSlice");typeof process<"u"&&Ae.NODE_ENV==="development"&&n.initialState===void 0&&console.error("You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`");const o=(typeof n.reducers=="function"?n.reducers(B3()):n.reducers)||{},a=Object.keys(o),c={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},l={addCase(f,u){const h=typeof f=="string"?f:f.type;if(!h)throw new Error(Ae.NODE_ENV==="production"?rt(12):"`context.addCase` cannot be called with an empty action type");if(h in c.sliceCaseReducersByType)throw new Error(Ae.NODE_ENV==="production"?rt(13):"`context.addCase` cannot be called with two reducers for the same action type: "+h);return c.sliceCaseReducersByType[h]=u,l},addMatcher(f,u){return c.sliceMatchers.push({matcher:f,reducer:u}),l},exposeAction(f,u){return c.actionCreators[f]=u,l},exposeCaseReducer(f,u){return c.sliceCaseReducersByName[f]=u,l}};a.forEach(f=>{const u=o[f],h={reducerName:f,type:N3(i,f),createNotation:typeof n.reducers=="function"};z3(u)?V3(h,u,l,e):F3(h,u,l)});function d(){if(Ae.NODE_ENV!=="production"&&typeof n.extraReducers=="object")throw new Error(Ae.NODE_ENV==="production"?rt(14):"The object notation for `createSlice.extraReducers` has been removed. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice");const[f={},u=[],h=void 0]=typeof n.extraReducers=="function"?EA(n.extraReducers):[n.extraReducers],b={...f,...c.sliceCaseReducersByType};return E3(n.initialState,A=>{for(let R in b)A.addCase(R,b[R]);for(let R of c.sliceMatchers)A.addMatcher(R.matcher,R.reducer);for(let R of u)A.addMatcher(R.matcher,R.reducer);h&&A.addDefaultCase(h)})}const p=f=>f,m=new Map,g=new WeakMap;let v;function S(f,u){return v||(v=d()),v(f,u)}function C(){return v||(v=d()),v.getInitialState()}function w(f,u=!1){function h(A){let R=A[f];if(typeof R>"u"){if(u)R=Sc(g,h,C);else if(Ae.NODE_ENV!=="production")throw new Error(Ae.NODE_ENV==="production"?rt(15):"selectSlice returned undefined for an uninjected slice reducer")}return R}function b(A=p){const R=Sc(m,u,()=>new WeakMap);return Sc(R,A,()=>{const _={};for(const[E,P]of Object.entries(n.selectors??{}))_[E]=j3(P,A,()=>Sc(g,A,C),u);return _})}return{reducerPath:f,getSelectors:b,get selectors(){return b(h)},selectSlice:h}}const y={name:i,reducer:S,actions:c.actionCreators,caseReducers:c.sliceCaseReducersByName,getInitialState:C,...w(s),injectInto(f,{reducerPath:u,...h}={}){const b=u??s;return f.inject({reducerPath:b,reducer:S},h),{...y,...w(b,!0)}}};return y}}function j3(t,e,r,n){function i(s,...o){let a=e(s);if(typeof a>"u"){if(n)a=r();else if(Ae.NODE_ENV!=="production")throw new Error(Ae.NODE_ENV==="production"?rt(16):"selectState returned undefined for an uninjected slice reducer")}return t(a,...o)}return i.unwrapped=t,i}var wt=L3();function B3(){function t(e,r){return{_reducerDefinitionType:"asyncThunk",payloadCreator:e,...r}}return t.withTypes=()=>t,{reducer(e){return Object.assign({[e.name](...r){return e(...r)}}[e.name],{_reducerDefinitionType:"reducer"})},preparedReducer(e,r){return{_reducerDefinitionType:"reducerWithPrepare",prepare:e,reducer:r}},asyncThunk:t}}function F3({type:t,reducerName:e,createNotation:r},n,i){let s,o;if("reducer"in n){if(r&&!H3(n))throw new Error(Ae.NODE_ENV==="production"?rt(17):"Please use the `create.preparedReducer` notation for prepared action creators with the `create` notation.");s=n.reducer,o=n.prepare}else s=n;i.addCase(t,s).exposeCaseReducer(e,s).exposeAction(e,o?wn(t,o):wn(t))}function z3(t){return t._reducerDefinitionType==="asyncThunk"}function H3(t){return t._reducerDefinitionType==="reducerWithPrepare"}function V3({type:t,reducerName:e},r,n,i){if(!i)throw new Error(Ae.NODE_ENV==="production"?rt(18):"Cannot use `create.asyncThunk` in the built-in `createSlice`. Use `buildCreateSlice({ creators: { asyncThunk: asyncThunkCreator } })` to create a customised version of `createSlice`.");const{payloadCreator:s,fulfilled:o,pending:a,rejected:c,settled:l,options:d}=r,p=i(t,s,d);n.exposeAction(e,p),o&&n.addCase(p.fulfilled,o),a&&n.addCase(p.pending,a),c&&n.addCase(p.rejected,c),l&&n.addMatcher(p.settled,l),n.exposeCaseReducer(e,{fulfilled:o||Cc,pending:a||Cc,rejected:c||Cc,settled:l||Cc})}function Cc(){}var G3="task",TA="listener",IA="completed",xh="cancelled",X3=`task-${xh}`,U3=`task-${IA}`,wp=`${TA}-${xh}`,W3=`${TA}-${IA}`,Ed=class{constructor(t){this.code=t,this.message=`${G3} ${xh} (reason: ${t})`}name="TaskAbortError";message},Dh=(t,e)=>{if(typeof t!="function")throw new TypeError(Ae.NODE_ENV==="production"?rt(32):`${e} is not a function`)},Bl=()=>{},OA=(t,e=Bl)=>(t.catch(e),t),xA=(t,e)=>(t.addEventListener("abort",e,{once:!0}),()=>t.removeEventListener("abort",e)),ns=(t,e)=>{const r=t.signal;r.aborted||("reason"in r||Object.defineProperty(r,"reason",{enumerable:!0,value:e,configurable:!0,writable:!0}),t.abort(e))},is=t=>{if(t.aborted){const{reason:e}=t;throw new Ed(e)}};function DA(t,e){let r=Bl;return new Promise((n,i)=>{const s=()=>i(new Ed(t.reason));if(t.aborted){s();return}r=xA(t,s),e.finally(()=>r()).then(n,i)}).finally(()=>{r=Bl})}var Y3=async(t,e)=>{try{return await Promise.resolve(),{status:"ok",value:await t()}}catch(r){return{status:r instanceof Ed?"cancelled":"rejected",error:r}}finally{e?.()}},Fl=t=>e=>OA(DA(t,e).then(r=>(is(t),r))),kA=t=>{const e=Fl(t);return r=>e(new Promise(n=>setTimeout(n,r)))},{assign:Gs}=Object,gy={},Ia="listenerMiddleware",Z3=(t,e)=>{const r=n=>xA(t,()=>ns(n,t.reason));return(n,i)=>{Dh(n,"taskExecutor");const s=new AbortController;r(s);const o=Y3(async()=>{is(t),is(s.signal);const a=await n({pause:Fl(s.signal),delay:kA(s.signal),signal:s.signal});return is(s.signal),a},()=>ns(s,U3));return i?.autoJoin&&e.push(o.catch(Bl)),{result:Fl(t)(o),cancel(){ns(s,X3)}}}},q3=(t,e)=>{const r=async(n,i)=>{is(e);let s=()=>{};const a=[new Promise((c,l)=>{let d=t({predicate:n,effect:(p,m)=>{m.unsubscribe(),c([p,m.getState(),m.getOriginalState()])}});s=()=>{d(),l()}})];i!=null&&a.push(new Promise(c=>setTimeout(c,i,null)));try{const c=await DA(e,Promise.race(a));return is(e),c}finally{s()}};return(n,i)=>OA(r(n,i))},MA=t=>{let{type:e,actionCreator:r,matcher:n,predicate:i,effect:s}=t;if(e)i=wn(e).match;else if(r)e=r.type,i=r.match;else if(n)i=n;else if(!i)throw new Error(Ae.NODE_ENV==="production"?rt(21):"Creating or removing a listener requires one of the known fields for matching an action");return Dh(s,"options.listener"),{predicate:i,type:e,effect:s}},NA=Gs(t=>{const{type:e,predicate:r,effect:n}=MA(t);return{id:PA(),effect:n,type:e,predicate:r,pending:new Set,unsubscribe:()=>{throw new Error(Ae.NODE_ENV==="production"?rt(22):"Unsubscribe not initialized")}}},{withTypes:()=>NA}),vy=(t,e)=>{const{type:r,effect:n,predicate:i}=MA(e);return Array.from(t.values()).find(s=>(typeof r=="string"?s.type===r:s.predicate===i)&&s.effect===n)},Cp=t=>{t.pending.forEach(e=>{ns(e,wp)})},J3=t=>()=>{t.forEach(Cp),t.clear()},by=(t,e,r)=>{try{t(e,r)}catch(n){setTimeout(()=>{throw n},0)}},LA=Gs(wn(`${Ia}/add`),{withTypes:()=>LA}),K3=wn(`${Ia}/removeAll`),jA=Gs(wn(`${Ia}/remove`),{withTypes:()=>jA}),Q3=(...t)=>{console.error(`${Ia}/error`,...t)},$3=(t={})=>{const e=new Map,{extra:r,onError:n=Q3}=t;Dh(n,"onError");const i=d=>(d.unsubscribe=()=>e.delete(d.id),e.set(d.id,d),p=>{d.unsubscribe(),p?.cancelActive&&Cp(d)}),s=d=>{const p=vy(e,d)??NA(d);return i(p)};Gs(s,{withTypes:()=>s});const o=d=>{const p=vy(e,d);return p&&(p.unsubscribe(),d.cancelActive&&Cp(p)),!!p};Gs(o,{withTypes:()=>o});const a=async(d,p,m,g)=>{const v=new AbortController,S=q3(s,v.signal),C=[];try{d.pending.add(v),await Promise.resolve(d.effect(p,Gs({},m,{getOriginalState:g,condition:(w,y)=>S(w,y).then(Boolean),take:S,delay:kA(v.signal),pause:Fl(v.signal),extra:r,signal:v.signal,fork:Z3(v.signal,C),unsubscribe:d.unsubscribe,subscribe:()=>{e.set(d.id,d)},cancelActiveListeners:()=>{d.pending.forEach((w,y,f)=>{w!==v&&(ns(w,wp),f.delete(w))})},cancel:()=>{ns(v,wp),d.pending.delete(v)},throwIfCancelled:()=>{is(v.signal)}})))}catch(w){w instanceof Ed||by(n,w,{raisedBy:"effect"})}finally{await Promise.all(C),ns(v,W3),d.pending.delete(v)}},c=J3(e);return{middleware:d=>p=>m=>{if(!Th(m))return p(m);if(LA.match(m))return s(m.payload);if(K3.match(m)){c();return}if(jA.match(m))return o(m.payload);let g=d.getState();const v=()=>{if(g===gy)throw new Error(Ae.NODE_ENV==="production"?rt(23):`${Ia}: getOriginalState can only be called synchronously`);return g};let S;try{if(S=p(m),e.size>0){const C=d.getState(),w=Array.from(e.values());for(const y of w){let f=!1;try{f=y.predicate(m,C,g)}catch(u){f=!1,by(n,u,{raisedBy:"predicate"})}f&&a(y,m,d,v)}}}finally{g=gy}return S},startListening:s,stopListening:o,clearListeners:c}};function rt(t){return`Minified Redux Toolkit error #${t}; visit https://redux-toolkit.js.org/Errors?code=${t} for the full message or use the non-minified dev environment for full errors. `}class zl{constructor(e={}){this.data=e.data===void 0?{}:e.data,this.headers=e.headers||{},this.status=e.status||200,this.statusText=e.statusText||"OK",this.url=e.url||null}}function nl(t,e){return It.ok(t,`${e} is required`),t}function Ap(t,e){return It.ok(typeof t=="boolean",`${e}<boolean> is required`),t}function yy(t,e){return It.ok(typeof t=="number",`${e}<number> is required`),t}function ut(t,e){return It.ok(typeof t=="string",`${e}<string> is required`),t}function Zi(t,e,r){const n=r||e.name[0].toLowerCase()+e.name.substring(1);return It.ok(t instanceof e,`${n}<${e.name}> is required`),t}function BA(t,e){return It.ok(Array.isArray(t),`${e}<array> is required`),t}function no(t,e){if(t==null||typeof t!="object"||Array.isArray(t))throw new Error(`${e} must be a record. ${JSON.stringify(t)}`);return t}function e9(t,e,r,n){ut(r,"name");const i=`${r} must be null or of type ${e}`;It.ok(t===null||typeof t===e,i)}function t9(t,e,r){ut(e,"name"),e9(t,"string",e)}function Sy({baseUrl:t,url:e}){return t?t+e:e}class r9{constructor({baseUrl:e}){ut(e,"baseUrl"),this._baseUrl=e}_requestAxios(e,r){const n=Object.assign({},r,{url:e,baseURL:this._baseUrl});return yt.request(n)}request(e,r){return ut(e,"url"),It.ok(e[0]==="/",'url<String> only accepts relative URLs beginning with "/".'),It.ok(r,"options are required"),this._requestAxios(e,r).then(n=>{const{data:i,headers:s,status:o,statusText:a,config:c}=n,l=c&&c.url?Sy({baseUrl:c.baseURL,url:c.url}):null;return new zl({data:i,headers:s,status:o,statusText:a,url:l})}).catch(n=>{const i=n.response;if(!i)throw new Error("Could not make the request.");const{data:s,headers:o,status:a,statusText:c,config:l}=i,d=l&&l.url?Sy({baseUrl:l.baseURL,url:l.url}):null;return Promise.reject(new zl({data:s,headers:o,status:a,statusText:c,url:d}))})}}class kh{constructor({httpClient:e}){It.ok(e,"httpClient is required"),this._httpClient=e}static dataToFormData(e){It.ok(e,"data is required");const r=new FormData;return Object.keys(e).forEach(n=>{const i=e[n];r.append(n,i)}),r}request(e,r={}){const n=Object.assign(r.headers||{},{"Content-Type":void 0});return this._httpClient.request(e,Object.assign(r,{headers:n,transformRequest:kh.dataToFormData}))}}let il;typeof window=="object"?il=window.btoa||yu:typeof global=="object"?il=global.btoa||yu:il=yu;function n9(t){if(t&&t.credentials){const e=`${t.credentials.uuid}:${t.hmac}`;return{Authorization:`Basic ${il(e)}`}}return{}}const i9=()=>Promise.resolve(null);class s9{constructor({httpClient:e,fetchDeviceCredentials:r}){this._httpClient=e,this._fetchDeviceCredentials=r}request(e,r){return this._fetchDeviceCredentials().then(n=>{const i=Object.assign({},r.headers,n9(n),{"X-Appearin-Device-Platform":"web"}),s=Object.assign({},r,{headers:i});return this._httpClient.request(e,s)})}}class FA{constructor({baseUrl:e="https://api.appearin.net",fetchDeviceCredentials:r=i9}={}){this.authenticatedHttpClient=new s9({httpClient:new r9({baseUrl:e}),fetchDeviceCredentials:r}),this.authenticatedFormDataHttpClient=new kh({httpClient:this.authenticatedHttpClient})}request(e,r){return ut(e,"url"),It.ok(e[0]==="/",'url<String> only accepts relative URLs beginning with "/".'),It.ok(r,"options are required"),this.authenticatedHttpClient.request(e,r)}requestMultipart(e,r){return ut(e,"url"),It.ok(e[0]==="/",'url<String> only accepts relative URLs beginning with "/".'),It.ok(r,"options are required"),this.authenticatedFormDataHttpClient.request(e,r)}}function o9(t){return(e,r)=>{const i=no(e,"data")[r];return i==null?null:t(e,r)}}function fa(t,e){const r=no(t,"data");return ut(r[e],e)}const a9=o9(fa);function c9(t,e){const r=no(t,"data");return BA(r[e],e)}function nf(t,e,r){return c9(t,e).map(n=>r(n))}function l9(t,e){const n=no(t,"data")[e];return n===void 0?null:n}class Pd{constructor(e,r,n=void 0){this.credentials={uuid:e},this.hmac=r,this.userId=n}toJson(){return Object.assign({credentials:this.credentials,hmac:this.hmac},this.userId&&{userId:this.userId})}static fromJson(e){return new Pd(fa(l9(e,"credentials"),"uuid"),fa(e,"hmac"),a9(e,"userId")||void 0)}}class d9{constructor({apiClient:e}){this._apiClient=e}getCredentials(){return this._apiClient.request("/devices",{method:"post"}).then(({data:e})=>Pd.fromJson(e)).catch(e=>{if(e.response&&e.response.status===404)return null;throw e})}}class u9{constructor(e,r){this._key=e,this._chromeStorage=r}loadOrDefault(e){return new Promise(r=>{this._chromeStorage.get(this._key,n=>{r(n[this._key]||e)})})}save(e){return new Promise(r=>{this._chromeStorage.set({[this._key]:e},()=>{r()})})}}class f9{constructor(e,r){nl(r,"localStorage"),this._key=ut(e,"key"),this._localStorage=r}loadOrDefault(e){try{const r=this._localStorage.getItem(this._key);if(r)try{return Promise.resolve(JSON.parse(r))}catch{}return Promise.resolve(e)}catch(r){return console.warn("Error getting access to storage. Are cookies blocked?",r),Promise.resolve(e)}}save(e){try{return this._localStorage.setItem(this._key,JSON.stringify(e)),Promise.resolve()}catch(r){return console.warn("Error getting access to storage. Are cookies blocked?",r),Promise.reject(r)}}}let Rp;try{Rp=self.localStorage}catch{Rp={getItem:()=>{},key:()=>{},setItem:()=>{},removeItem:()=>{},hasOwnProperty:()=>{},length:0}}var p9=Rp;const h9={CREDENTIALS_SAVED:"credentials_saved"};class Mh extends Ca.EventEmitter{constructor({deviceService:e,credentialsStore:r}){super(),this._deviceService=e,this._credentialsStore=r}static create({baseUrl:e,storeName:r="CredentialsStorage",storeType:n="localStorage"}){const i=new d9({apiClient:new FA({baseUrl:e})});let s=null;if(n==="localStorage")s=new f9(r,p9);else if(n==="chromeStorage")s=new u9(r,window.chrome.storage.local);else throw new Error(`Unknown store type: ${n}`);return new Mh({deviceService:i,credentialsStore:s})}_fetchNewCredentialsFromApi(){const e=this._credentialsStore;return new Promise(r=>{const n=()=>{this._deviceService.getCredentials().then(i=>e.save(i?i.toJson():null).then(()=>r(i))).catch(()=>{setTimeout(n,2e3)})};n()})}getCurrentCredentials(){return this._credentialsStore.loadOrDefault(null).then(e=>e?Pd.fromJson(e):null)}getCredentials(){return this.credentialsPromise||(this.credentialsPromise=this.getCurrentCredentials().then(e=>e||this._fetchNewCredentialsFromApi())),this.credentialsPromise}saveCredentials(e){return this.credentialsPromise=void 0,this._credentialsStore.save(e.toJson()).then(()=>(this.emit(h9.CREDENTIALS_SAVED,e),e))}setUserId(e){return this.getCurrentCredentials().then(r=>{if(r||console.error("Illegal state: no credentials to set user id for."),r===null||r.userId!==e)return this._credentialsStore.save(Object.assign({},r?.toJson(),{userId:e}))}).then(()=>{})}}class Nh{constructor({isExhausted:e,renewsAt:r,totalMinutesLimit:n,totalMinutesUsed:i}){this.isExhausted=e,this.renewsAt=r,this.totalMinutesLimit=n,this.totalMinutesUsed=i}static fromJson(e){return new Nh({isExhausted:Ap(e.isExhausted,"isExhausted"),renewsAt:new Date(ut(e.renewsAt,"renewsAt")),totalMinutesLimit:yy(e.totalMinutesLimit,"totalMinutesLimit"),totalMinutesUsed:yy(e.totalMinutesUsed,"totalMinutesUsed")})}}class Hl{constructor({basePlanId:e,embeddedFreeTierStatus:r,isDeactivated:n,isOnTrial:i,onTrialUntil:s,trialStatus:o}){this.basePlanId=e,this.isDeactivated=n,this.isOnTrial=i,this.onTrialUntil=s||null,this.trialStatus=o||null,this.embeddedFreeTierStatus=r||null}static fromJson(e){return new Hl({basePlanId:typeof e.basePlanId=="string"?e.basePlanId:null,isDeactivated:Ap(e.isDeactivated,"isDeactivated"),isOnTrial:Ap(e.isOnTrial,"isOnTrial"),onTrialUntil:typeof e.onTrialUntil=="string"?new Date(e.onTrialUntil):null,trialStatus:typeof e.trialStatus=="string"?e.trialStatus:null,embeddedFreeTierStatus:e.embeddedFreeTierStatus?Nh.fromJson(e.embeddedFreeTierStatus):null})}}function Xo(t){return t!=null}function m9(t={}){return{maxNumberOfInvitationsAndUsers:Xo(t?.maxNumberOfInvitationsAndUsers)?Number(t?.maxNumberOfInvitationsAndUsers):null,maxNumberOfClaimedRooms:Xo(t?.maxNumberOfClaimedRooms)?Number(t?.maxNumberOfClaimedRooms):null,maxRoomLimitPerOrganization:Xo(t?.maxRoomLimitPerOrganization)?Number(t?.maxRoomLimitPerOrganization):null,trialMinutesLimit:Xo(t?.trialMinutesLimit)?Number(t?.trialMinutesLimit):null,includedUnits:Xo(t?.includedUnits)?Number(t?.includedUnits):null}}class Ci{constructor(e){this.logoImageUrl=null,this.roomBackgroundImageUrl=null,this.roomBackgroundThumbnailUrl=null,this.roomKnockPageBackgroundImageUrl=null,this.roomKnockPageBackgroundThumbnailUrl=null,this.preferences=null,this.onboardingSurvey=null,this.type=null,Zi(e,Object,"properties"),ut(e.organizationId,"organizationId"),ut(e.organizationName,"organizationName"),ut(e.subdomain,"subdomain"),Zi(e.permissions,Object,"permissions"),Zi(e.limits,Object,"limits"),this.organizationId=e.organizationId,this.organizationName=e.organizationName,this.subdomain=e.subdomain,this.permissions=e.permissions,this.limits=e.limits,this.account=e.account?new Hl(e.account):null,this.logoImageUrl=e.logoImageUrl,this.roomBackgroundImageUrl=e.roomBackgroundImageUrl,this.roomBackgroundThumbnailUrl=e.roomBackgroundThumbnailUrl,this.roomKnockPageBackgroundImageUrl=e.roomKnockPageBackgroundImageUrl,this.roomKnockPageBackgroundThumbnailUrl=e.roomKnockPageBackgroundThumbnailUrl,this.preferences=e.preferences,this.onboardingSurvey=e.onboardingSurvey,this.type=e.type}static fromJson(e){const r=Zi(e,Object,"data"),n=r?.preferences||{},i=r?.onboardingSurvey||null,s=Zi(r.permissions,Object,"permissions");return new Ci({organizationId:ut(r.organizationId,"organizationId"),organizationName:ut(r.organizationName,"organizationName"),subdomain:ut(r.subdomain,"subdomain"),permissions:s,limits:m9(Zi(r.limits,Object,"limits")),account:r.account?Hl.fromJson(r.account):null,logoImageUrl:typeof r.logoImageUrl=="string"?r.logoImageUrl:null,roomBackgroundImageUrl:typeof r.roomBackgroundImageUrl=="string"?r.roomBackgroundImageUrl:null,roomBackgroundThumbnailUrl:typeof r.roomBackgroundThumbnailUrl=="string"?r.roomBackgroundThumbnailUrl:null,roomKnockPageBackgroundImageUrl:typeof r.roomKnockPageBackgroundImageUrl=="string"?r.roomKnockPageBackgroundImageUrl:null,roomKnockPageBackgroundThumbnailUrl:typeof r.roomKnockPageBackgroundThumbnailUrl=="string"?r.roomKnockPageBackgroundThumbnailUrl:null,preferences:n,onboardingSurvey:i,type:typeof r.type=="string"?r.type:null})}}Ci.GLOBAL_ORGANIZATION_ID="1";class g9{constructor({apiClient:e}){this._apiClient=e}createOrganization({organizationName:e,subdomain:r,owner:n}){const{displayName:i,consents:s}=n||{},o="email"in n?{value:n.email,verificationCode:ut(n.verificationCode,"owner.verificationCode")}:null,a="idToken"in n?n.idToken:null;if(ut(r,"subdomain"),ut(e,"organizationName"),ut(i,"owner.displayName"),It.ok(o||a,"owner.email or owner.idToken is required"),s){BA(s,"consents");for(const{consentRevisionId:c,action:l}of s)ut(c,"consentRevisionId"),t9(l,"action")}return this._apiClient.request("/organizations",{method:"POST",data:{organizationName:e,type:"private",subdomain:r,owner:Object.assign(Object.assign(Object.assign(Object.assign({},o&&{email:o}),a&&{idToken:a}),s&&{consents:s}),{displayName:i})}}).then(({data:c})=>fa(c,"organizationId"))}getOrganizationBySubdomain(e){return ut(e,"subdomain"),this._apiClient.request(`/organization-subdomains/${encodeURIComponent(e)}/?fields=permissions,account,onboardingSurvey`,{method:"GET"}).then(({data:r})=>Ci.fromJson(r)).catch(r=>{if(r instanceof zl){if(r.status===404)return null;throw new Error(r.statusText)}throw r})}getOrganizationByOrganizationId(e){return ut(e,"organizationId"),this._apiClient.request(`/organizations/${encodeURIComponent(e)}?fields=permissions,account`,{method:"GET"}).then(({data:r})=>Ci.fromJson(r)).catch(r=>{if(r instanceof zl){if(r.status===404)return null;throw new Error(r.statusText)}throw r})}getOrganizationsByContactPoint(e){const{code:r}=e,n="email"in e?e.email:null,i="phoneNumber"in e?e.phoneNumber:null;It.ok((n||i)&&!(n&&i),"either email or phoneNumber is required"),ut(r,"code");const s=n?{type:"email",value:n}:{type:"phoneNumber",value:i};return this._apiClient.request("/organization-queries",{method:"POST",data:{contactPoint:s,code:r}}).then(({data:o})=>nf(o,"organizations",a=>Ci.fromJson(a)))}getOrganizationsByIdToken({idToken:e}){return ut(e,"idToken"),this._apiClient.request("/organization-queries",{method:"POST",data:{idToken:e}}).then(({data:r})=>nf(r,"organizations",n=>Ci.fromJson(Object.assign({permissions:{},limits:{}},no(n,"organization")))))}getOrganizationsByLoggedInUser(){return this._apiClient.request("/user/organizations",{method:"GET"}).then(({data:e})=>nf(e,"organizations",r=>Ci.fromJson(Object.assign({permissions:{},limits:{}},no(r,"organization")))))}getSubdomainAvailability(e){return ut(e,"subdomain"),this._apiClient.request(`/organization-subdomains/${encodeURIComponent(e)}/availability`,{method:"GET"}).then(({data:r})=>(Zi(r,Object,"data"),{status:fa(r,"status")}))}updatePreferences({organizationId:e,preferences:r}){return nl(e,"organizationId"),nl(r,"preferences"),this._apiClient.request(`/organizations/${encodeURIComponent(e)}/preferences`,{method:"PATCH",data:r}).then(()=>{})}deleteOrganization({organizationId:e}){return nl(e,"organizationId"),this._apiClient.request(`/organizations/${encodeURIComponent(e)}`,{method:"DELETE"}).then(()=>{})}}class v9{constructor({organizationService:e,subdomain:r}){this._organizationService=e,this._subdomain=r,this._organizationPromise=null}initOrganization(){return this.fetchOrganization().then(()=>{})}fetchOrganization(){return this._organizationPromise||(this._organizationPromise=this._organizationService.getOrganizationBySubdomain(this._subdomain)),this._organizationPromise}}const wy="https://api.whereby.dev";function b9(){const t=Mh.create({baseUrl:wy}),e=new FA({fetchDeviceCredentials:t.getCredentials.bind(t),baseUrl:wy}),r=new g9({apiClient:e});return{credentialsService:t,apiClient:e,organizationService:r,fetchOrganizationFromRoomUrl:i=>{const s=new URL(i),o=MC({host:s.host});return new v9({organizationService:r,subdomain:o.subdomain}).fetchOrganization()}}}function zA(t,{delay:e=500,edges:r}={}){let n,i=0;return(...s)=>{i+=1,r&&i===1&&t(...s),clearTimeout(n),n=setTimeout(()=>{(!r||i>1)&&t(...s),n=void 0,i=0},e)}}const HA=$3(),Fe=HA.startListening,Zt=(t,e)=>Fe({predicate:(r,n,i)=>{const s=t.map(a=>a(i)),o=t.map(a=>a(n));return s.some((a,c)=>a!==o[c])},effect:(r,{dispatch:n,getState:i,extra:s})=>{const o=t.map(a=>a(i()));e({dispatch:n,getState:i,extra:s},...o)}}),VA="1.0.1",y9={isNodeSdk:!1,isActive:!1,isDialIn:!1,ignoreBreakoutGroups:!1,roomName:null,roomUrl:null,displayName:null,userAgent:`core:${VA}`,externalId:null},Lh=wt({name:"app",initialState:y9,reducers:{doAppStart:(t,e)=>{const r=new URL(e.payload.roomUrl);return Object.assign(Object.assign(Object.assign({},t),e.payload),{roomName:r.pathname,initialConfig:Object.assign({},e.payload),isActive:!0})},doAppStop:t=>Object.assign(Object.assign({},t),{isActive:!1})}}),{doAppStop:pa,doAppStart:Oa}=Lh.actions,xi=t=>t.app.isActive,GA=t=>t.app.isDialIn,XA=t=>t.app.roomName,S9=t=>t.app.roomUrl,UA=t=>t.app.displayName,WA=t=>t.app.userAgent,jh=t=>t.app.externalId,w9=t=>t.app.isNodeSdk,C9=t=>t.app.ignoreBreakoutGroups;function Ze(t){return wn(`signalConnection/event/${t}`)}const ee={audioEnabled:Ze("audioEnabled"),audioEnableRequested:Ze("audioEnableRequested"),breakoutGroupJoined:Ze("breakoutGroupJoined"),breakoutMoveToGroup:Ze("breakoutMoveToGroup"),breakoutMoveToMain:Ze("breakoutMoveToMain"),breakoutSessionUpdated:Ze("breakoutSessionUpdated"),chatMessage:Ze("chatMessage"),clientLeft:Ze("clientLeft"),clientKicked:Ze("clientKicked"),clientMetadataReceived:Ze("clientMetadataReceived"),clientUnableToJoin:Ze("clientUnableToJoin"),cloudRecordingStarted:Ze("cloudRecordingStarted"),cloudRecordingStopped:Ze("cloudRecordingStopped"),disconnect:Ze("disconnect"),knockerLeft:Ze("knockerLeft"),knockHandled:Ze("knockHandled"),newClient:Ze("newClient"),roomJoined:Ze("roomJoined"),roomKnocked:Ze("roomKnocked"),roomLeft:Ze("roomLeft"),roomLocked:Ze("roomLocked"),roomSessionEnded:Ze("roomSessionEnded"),screenshareStarted:Ze("screenshareStarted"),screenshareStopped:Ze("screenshareStopped"),spotlightAdded:Ze("spotlightAdded"),spotlightRemoved:Ze("spotlightRemoved"),streamingStopped:Ze("streamingStopped"),videoEnabled:Ze("videoEnabled"),videoEnableRequested:Ze("videoEnableRequested"),liveTranscriptionStarted:Ze("liveTranscriptionStarted"),liveTranscriptionStopped:Ze("liveTranscriptionStopped")},Ss={canLockRoom:["host"],canRequestAudioEnable:["host"],canRequestVideoEnable:["host"],canKickClient:["host"],canEndMeeting:["host"],canAskToSpeak:["host"],canSpotlight:["host"]},A9={roomKey:null,roleName:"none"},YA=wt({name:"authorization",initialState:A9,reducers:{setRoomKey:(t,e)=>Object.assign(Object.assign({},t),{roomKey:e.payload})},extraReducers:t=>{t.addCase(Oa,(e,r)=>Object.assign(Object.assign({},e),{roomKey:r.payload.roomKey})),t.addCase(ee.roomJoined,(e,r)=>{if("error"in r.payload)return e;const{room:n,selfId:i}=r.payload||{},s=n?.clients.find(o=>o.id===i);return s?Object.assign(Object.assign({},e),{roleName:s?.role.roleName||"none"}):e})}}),{setRoomKey:R9}=YA.actions,ZA=t=>t.authorization.roomKey,Di=t=>t.authorization.roleName,_9=xe(Di,t=>Ss.canLockRoom.includes(t)),E9=xe(Di,t=>Ss.canRequestAudioEnable.includes(t)),P9=xe(Di,t=>Ss.canRequestVideoEnable.includes(t)),T9=xe(Di,t=>Ss.canKickClient.includes(t)),I9=xe(Di,t=>Ss.canEndMeeting.includes(t)),qA=xe(Di,t=>Ss.canAskToSpeak.includes(t)),JA=xe(Di,t=>Ss.canSpotlight.includes(t));function ui(t,e){return x3(t,e)}function yo(t,e){return r=>(n,i,s)=>t(i())?e(r)(n,i,s):(console.warn("Not authorized to perform this action"),!1)}function ws(t){return e=>(r,n,i)=>n().roomConnection.status!=="connected"?(console.warn("Action cannot be performed outside of a connected room"),!1):t(e)(r,n,i)}function Td(t,e){return ui(t,(r,n)=>{const{getState:i}=n;return i().roomConnection.status!=="connected"?(console.warn("Action cannot be performed outside of a connected room"),Promise.reject("Action cannot be performed outside of a connected room")):e(r,n)})}function KA(t,e){return r=>(n,i,s)=>i().roomConnection.status!=="connected"?(console.warn("Action cannot be performed outside of a connected room"),!1):yo(t,e)(r)(n,i,s)}function QA(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}function Gr(t,e,r,n){function i(s){return s instanceof r?s:new r(function(o){o(s)})}return new(r||(r=Promise))(function(s,o){function a(d){try{l(n.next(d))}catch(p){o(p)}}function c(d){try{l(n.throw(d))}catch(p){o(p)}}function l(d){d.done?s(d.value):i(d.value).then(a,c)}l((n=n.apply(t,e||[])).next())})}const O9={isFetching:!1,data:null},x9=wt({name:"deviceCredentials",initialState:O9,reducers:{},extraReducers:t=>{t.addCase(sl.pending,e=>Object.assign(Object.assign({},e),{isFetching:!0})),t.addCase(sl.fulfilled,(e,r)=>Object.assign(Object.assign({},e),{isFetching:!1,data:r.payload})),t.addCase(sl.rejected,e=>Object.assign(Object.assign({},e),{isFetching:!0}))}}),sl=ui("deviceCredentials/doGetDeviceCredentials",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{extra:n}){try{return yield n.services.credentialsService.getCredentials()}catch(i){console.error(i)}})),Id=t=>t.deviceCredentials,$A=t=>{var e,r;return(r=(e=t.deviceCredentials.data)===null||e===void 0?void 0:e.credentials)===null||r===void 0?void 0:r.uuid},D9=xe(xi,Id,(t,e)=>!!(t&&!e.isFetching&&!e.data));Zt([D9],({dispatch:t},e)=>{e&&t(sl())});function k9(t,e){t.on("room_joined",r=>e(ee.roomJoined(r))),t.on("new_client",r=>e(ee.newClient(r))),t.on("client_left",r=>e(ee.clientLeft(r))),t.on("client_kicked",r=>e(ee.clientKicked(r))),t.on("client_unable_to_join",r=>e(ee.clientUnableToJoin(r))),t.on("audio_enabled",r=>e(ee.audioEnabled(r))),t.on("video_enabled",r=>e(ee.videoEnabled(r))),t.on("audio_enable_requested",r=>e(ee.audioEnableRequested(r))),t.on("client_metadata_received",r=>e(ee.clientMetadataReceived(r))),t.on("chat_message",r=>e(ee.chatMessage(r))),t.on("disconnect",()=>e(ee.disconnect())),t.on("room_knocked",r=>e(ee.roomKnocked(r))),t.on("room_left",()=>e(ee.roomLeft())),t.on("room_locked",r=>e(ee.roomLocked(r))),t.on("room_session_ended",r=>e(ee.roomSessionEnded(r))),t.on("knocker_left",r=>e(ee.knockerLeft(r))),t.on("knock_handled",r=>e(ee.knockHandled(r))),t.on("screenshare_started",r=>e(ee.screenshareStarted(r))),t.on("screenshare_stopped",r=>e(ee.screenshareStopped(r))),t.on("cloud_recording_started",r=>e(ee.cloudRecordingStarted(r))),t.on("cloud_recording_stopped",()=>e(ee.cloudRecordingStopped())),t.on("streaming_stopped",()=>e(ee.streamingStopped())),t.on("spotlight_added",r=>e(ee.spotlightAdded(r))),t.on("spotlight_removed",r=>e(ee.spotlightRemoved(r))),t.on("live_transcription_started",r=>e(ee.liveTranscriptionStarted(r))),t.on("live_transcription_stopped",r=>e(ee.liveTranscriptionStopped(r))),t.on("video_enable_requested",r=>e(ee.videoEnableRequested(r))),t.on("breakout_group_joined",r=>e(ee.breakoutGroupJoined(r))),t.on("breakout_session_updated",r=>e(ee.breakoutSessionUpdated(r))),t.on("breakout_move_to_group",()=>e(ee.breakoutMoveToGroup())),t.on("breakout_move_to_main",()=>e(ee.breakoutMoveToMain()))}const M9="wss://signal.appearin.net";function N9(){const e=new URL(M9).origin,r={autoConnect:!1};return new QN(e,r)}const L9={deviceIdentified:!1,isIdentifyingDevice:!1,status:"ready",socket:null},eR=wt({name:"signalConnection",initialState:L9,reducers:{socketConnecting:t=>Object.assign(Object.assign({},t),{status:"connecting"}),socketConnected:(t,e)=>Object.assign(Object.assign({},t),{socket:e.payload,status:"connected"}),socketDisconnected:t=>Object.assign(Object.assign({},t),{socket:null,deviceIdentified:!1,status:"disconnected"}),socketReconnecting:t=>Object.assign(Object.assign({},t),{status:"reconnecting"}),deviceIdentifying:t=>Object.assign(Object.assign({},t),{isIdentifyingDevice:!0}),deviceIdentified:t=>Object.assign(Object.assign({},t),{deviceIdentified:!0,isIdentifyingDevice:!1})},extraReducers:t=>{t.addCase(ee.disconnect,e=>Object.assign(Object.assign({},e),{deviceIdentified:!1,status:"disconnected"}))}}),{deviceIdentifying:j9,deviceIdentified:B9,socketConnected:F9,socketConnecting:z9,socketDisconnected:H9,socketReconnecting:Bh}=eR.actions,V9=()=>(t,e)=>{if(Da(e()))return;t(z9());const r=N9();r.on("connect",()=>t(F9(r))),r.on("device_identified",()=>t(B9())),r.getManager().on("reconnect",()=>t(Bh())),k9(r,t),r.connect()},G9=({deviceCredentials:t})=>(e,r)=>{const n=r(),i=Da(n),s=zh(n);i&&(s||(i.emit("identify_device",{deviceCredentials:t}),e(j9())))},Fh=()=>(t,e)=>{const r=e();if(xa(r)==="connected"){const i=Bt(r).socket;i?.disconnect(),t(H9())}},Bt=t=>t.signalConnection,X9=t=>t.signalConnection.isIdentifyingDevice,zh=t=>t.signalConnection.deviceIdentified,xa=t=>t.signalConnection.status,Da=t=>t.signalConnection.socket,U9=xe(xi,xa,(t,e)=>!!(t&&["ready","reconnecting"].includes(e)));Zt([U9],({dispatch:t},e)=>{e&&t(V9())});const W9=xe(Id,xa,zh,X9,(t,e,r,n)=>!!(t.data&&e==="connected"&&!r&&!n));Zt([W9,Id],({dispatch:t},e,r)=>{e&&r.data&&t(G9({deviceCredentials:r.data}))});Fe({actionCreator:ee.roomLeft,effect:(t,{dispatch:e})=>{e(Fh())}});Fe({actionCreator:ee.clientKicked,effect:(t,{dispatch:e})=>{e(Fh())}});const Y9={busyDeviceIds:[],cameraEnabled:!1,currentSpeakerDeviceId:"default",devices:[],isSettingCameraDevice:!1,isSettingMicrophoneDevice:!1,isSettingSpeakerDevice:!1,isTogglingCamera:!1,lowDataMode:!1,microphoneEnabled:!1,status:"inactive",stream:void 0,isSwitchingStream:!1},Hh=wt({name:"localMedia",initialState:Y9,reducers:{deviceBusy(t,e){return t.busyDeviceIds.includes(e.payload.deviceId)?t:Object.assign(Object.assign({},t),{busyDeviceIds:[...t.busyDeviceIds,e.payload.deviceId]})},toggleCameraEnabled(t,e){var r;return Object.assign(Object.assign({},t),{cameraEnabled:(r=e.payload.enabled)!==null&&r!==void 0?r:!t.cameraEnabled})},setCurrentCameraDeviceId(t,e){return Object.assign(Object.assign({},t),{currentCameraDeviceId:e.payload.deviceId})},toggleMicrophoneEnabled(t,e){var r;return Object.assign(Object.assign({},t),{microphoneEnabled:(r=e.payload.enabled)!==null&&r!==void 0?r:!t.microphoneEnabled})},setCurrentMicrophoneDeviceId(t,e){return Object.assign(Object.assign({},t),{currentMicrophoneDeviceId:e.payload.deviceId})},setCurrentSpeakerDeviceId(t,e){var r;return Object.assign(Object.assign({},t),{currentSpeakerDeviceId:(r=e.payload.deviceId)!==null&&r!==void 0?r:"default"})},toggleLowDataModeEnabled(t,e){var r;return Object.assign(Object.assign({},t),{lowDataMode:(r=e.payload.enabled)!==null&&r!==void 0?r:!t.lowDataMode})},setDevices(t,e){return Object.assign(Object.assign({},t),{devices:e.payload.devices})},setLocalMediaStream(t,e){return Object.assign(Object.assign({},t),{stream:e.payload.stream})},setLocalMediaOptions(t,e){return Object.assign(Object.assign({},t),{options:e.payload.options})},localMediaStopped(t){return Object.assign(Object.assign({},t),{status:"stopped",stream:void 0})},localStreamMetadataUpdated(t,e){const{audio:r,video:n}=e.payload;return Object.assign(Object.assign({},t),{currentCameraDeviceId:n.deviceId,currentMicrophoneDeviceId:r.deviceId,busyDeviceIds:t.busyDeviceIds.filter(i=>i!==r.deviceId&&i!==n.deviceId)})}},extraReducers:t=>{t.addCase(Oa,(e,r)=>Object.assign(Object.assign({},e),{options:r.payload.localMediaOptions})),t.addCase(ss.pending,(e,r)=>{const{audio:n,video:i}=r.meta.arg;return Object.assign(Object.assign({},e),{isSettingCameraDevice:i,isSettingMicrophoneDevice:n})}),t.addCase(ss.fulfilled,(e,r)=>{const{audio:n,video:i}=r.meta.arg;return Object.assign(Object.assign({},e),{isSettingCameraDevice:i?!1:e.isSettingCameraDevice,isSettingMicrophoneDevice:n?!1:e.isSettingMicrophoneDevice})}),t.addCase(ss.rejected,(e,r)=>{const{audio:n,video:i}=r.meta.arg;return Object.assign(Object.assign({},e),{isSettingCameraDevice:i?!1:e.isSettingCameraDevice,isSettingMicrophoneDevice:n?!1:e.isSettingMicrophoneDevice,cameraDeviceError:i?r.error:e.cameraDeviceError,microphoneDeviceError:n?r.error:e.microphoneDeviceError})}),t.addCase(_p.pending,e=>Object.assign(Object.assign({},e),{isTogglingCamera:!0})),t.addCase(_p.fulfilled,e=>Object.assign(Object.assign({},e),{isTogglingCamera:!1})),t.addCase(Vl.fulfilled,(e,r)=>Object.assign(Object.assign({},e),{devices:r.payload.devices})),t.addCase(Xs.pending,e=>Object.assign(Object.assign({},e),{status:"starting"})),t.addCase(Xs.fulfilled,(e,{payload:{stream:r,onDeviceChange:n}})=>{let i,s=!1,o,a=!1;const c=r.getAudioTracks()[0],l=r.getVideoTracks()[0];return c&&(o=c.getSettings().deviceId,a=c.enabled),l&&(s=l.enabled,i=l.getSettings().deviceId),Object.assign(Object.assign({},e),{stream:r,status:"started",currentCameraDeviceId:i,currentMicrophoneDeviceId:o,cameraEnabled:s,microphoneEnabled:a,onDeviceChange:n})}),t.addCase(Xs.rejected,(e,r)=>Object.assign(Object.assign({},e),{status:"error",startError:r.error})),t.addCase(_i.pending,e=>Object.assign(Object.assign({},e),{isSwitchingStream:!0})),t.addCase(_i.fulfilled,e=>Object.assign(Object.assign({},e),{isSwitchingStream:!1})),t.addCase(_i.rejected,e=>Object.assign(Object.assign({},e),{isSwitchingStream:!1}))}}),{deviceBusy:Cy,setCurrentCameraDeviceId:Z9,setCurrentMicrophoneDeviceId:q9,setCurrentSpeakerDeviceId:J9,toggleCameraEnabled:Od,toggleMicrophoneEnabled:ka,toggleLowDataModeEnabled:tR,setLocalMediaOptions:K9,setLocalMediaStream:mV,localMediaStopped:rR,localStreamMetadataUpdated:Q9}=Hh.actions,_p=ui("localMedia/doToggleCamera",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{getState:n,rejectWithValue:i}){const s=n(),o=tr(s);if(!o)return;let a=o.getVideoTracks()[0];const c=Ii(s);try{if(c)if(a)a.enabled=!0;else{const l=xd(s),d=ps(s);yield md(Object.assign(Object.assign({},l),{audioId:!1,videoId:d,type:"exact"}),{replaceStream:o}),a=o.getVideoTracks()[0]}else{if(!a)return;a.enabled=!1,a.stop(),o.removeTrack(a)}o.dispatchEvent(new CustomEvent("stopresumevideo",{detail:{track:a,enable:c}}))}catch(l){return i(l)}})),$9=ui("localMedia/doToggleMicrophone",(t,{getState:e})=>{var r;const n=e(),i=tr(n);if(!i)return;const s=Oi(n),o=(r=i.getAudioTracks())===null||r===void 0?void 0:r[0];o&&(o.enabled=s)}),e4=()=>(t,e)=>{const r=e();if(!tr(r))return;const i=ps(r),s=io(r);t(_i({audioId:s,videoId:i}))},ss=ui("localMedia/reactSetDevice",(t,e)=>Gr(void 0,[t,e],void 0,function*({audio:r,video:n},{getState:i,rejectWithValue:s}){try{const o=i(),a=tr(o);if(!a)throw new Error("No stream");const c=r?io(o):!1,l=n?ps(o):!1,d=xd(o),{replacedTracks:p}=yield md(Object.assign(Object.assign({},d),{audioId:c,videoId:l,type:"exact"}),{replaceStream:a}),m=Oi(o);a.getAudioTracks().forEach(v=>v.enabled=m);const g=Ii(o);return a.getVideoTracks().forEach(v=>v.enabled=g),{replacedTracks:p}}catch(o){return s(o)}})),Vl=ui("localMedia/doUpdateDeviceList",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{getState:n,dispatch:i,rejectWithValue:s}){var o,a,c,l;const d=n();let p=[],m=[];const g=tr(d);try{if(p=yield navigator.mediaDevices.enumerateDevices(),m=So(d),!(g&&!l4(d)&&p&&m&&m.find(f=>f.deviceId)))return{devices:p};const{changedDevices:S,addedDevices:C}=ej({oldDevices:m,newDevices:p});let w=(o=S.audioinput)===null||o===void 0?void 0:o.deviceId,y=(a=S.videoinput)===null||a===void 0?void 0:a.deviceId;return w===void 0&&(w=(c=C.audioinput)===null||c===void 0?void 0:c.deviceId),y===void 0&&(y=(l=C.videoinput)===null||l===void 0?void 0:l.deviceId),(w!==void 0||y!==void 0)&&i(_i({audioId:w,videoId:y})),{devices:p}}catch(v){return s(v)}})),_i=ui("localMedia/doSwitchLocalStream",(t,e)=>Gr(void 0,[t,e],void 0,function*({audioId:r,videoId:n},{dispatch:i,getState:s,rejectWithValue:o}){const a=s(),c=tr(a),l=xd(a),d=!!(n&&!r)||!!(!n&&r);if(c)try{const{replacedTracks:p}=yield md(Object.assign(Object.assign({},l),{audioId:r===void 0?!1:r,videoId:n===void 0?!1:n,type:"exact"}),{replaceStream:c}),m=r||n;return d&&m&&i(Cy({deviceId:m})),{replacedTracks:p}}catch(p){console.error(p);const m=r||n;return d&&m&&i(Cy({deviceId:m})),o(p)}})),Xs=ui("localMedia/doStartLocalMedia",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{getState:n,dispatch:i,rejectWithValue:s}){const o=zA(()=>{i(Vl())},{delay:500});if(navigator.mediaDevices&&navigator.mediaDevices.addEventListener("devicechange",o),"getTracks"in r)return Promise.resolve({stream:r,onDeviceChange:o});if(r.audio||r.video)i(K9({options:r}));else return{stream:new MediaStream,onDeviceChange:o};try{yield i(Vl());const a=n(),c=xd(a),{stream:l}=yield md(Object.assign(Object.assign({},c),{audioId:r.audio,videoId:r.video}));return{stream:l,onDeviceChange:o}}catch(a){return s(a)}})),nR=()=>(t,e)=>{const r=tr(e()),n=o4(e()).onDeviceChange;r?.getTracks().forEach(i=>{i.stop()}),navigator.mediaDevices&&n&&navigator.mediaDevices.removeEventListener("devicechange",n),t(rR())},iR=t=>t.localMedia.busyDeviceIds,t4=t=>t.localMedia.cameraDeviceError,ps=t=>t.localMedia.currentCameraDeviceId,io=t=>t.localMedia.currentMicrophoneDeviceId,r4=t=>t.localMedia.currentSpeakerDeviceId,Ii=t=>t.localMedia.cameraEnabled,Oi=t=>t.localMedia.microphoneEnabled,Ep=t=>t.localMedia.lowDataMode,n4=t=>t.localMedia.isSettingCameraDevice,i4=t=>t.localMedia.isSettingMicrophoneDevice,s4=t=>t.localMedia.isTogglingCamera,So=t=>t.localMedia.devices,Vh=t=>t.localMedia.options;xe(Vh,t=>!!t);const o4=t=>t.localMedia,Wn=t=>t.localMedia.status,tr=t=>t.localMedia.stream,a4=t=>t.localMedia.microphoneDeviceError,c4=t=>t.localMedia.startError,l4=t=>t.localMedia.isSwitchingStream,xd=xe(So,ps,io,Ep,(t,e,r,n)=>({devices:t,videoId:e,audioId:r,options:{disableAEC:!1,disableAGC:!1,hd:!0,lax:!1,lowDataMode:n,simulcast:!0,widescreen:!0}})),d4=xe(Wn,t=>t==="starting"),u4=xe(So,iR,(t,e)=>t.filter(r=>r.kind==="videoinput").filter(r=>!e.includes(r.deviceId))),f4=xe(So,iR,(t,e)=>t.filter(r=>r.kind==="audioinput").filter(r=>!e.includes(r.deviceId))),p4=xe(So,t=>t.filter(e=>e.kind==="audiooutput")),h4=xe(xi,Wn,Vh,(t,e,r)=>{if(t&&["inactive","stopped"].includes(e)&&r)return r});Zt([h4],({dispatch:t},e)=>{e&&t(Xs(e))});const m4=xe(xi,Wn,Vh,(t,e,r)=>!t&&e!=="inactive"&&!!r);Zt([m4],({dispatch:t},e)=>{e&&t(nR())});Fe({predicate:(t,e,r)=>{const n=Oi(r),i=Oi(e);return Wn(r)==="started"&&n!==i},effect:(t,{dispatch:e})=>{e($9())}});Fe({predicate:(t,e,r)=>{const n=Ep(r),i=Ep(e);return Wn(r)==="started"&&n!==i},effect:(t,{dispatch:e})=>{e(e4())}});Fe({predicate:(t,e,r)=>{if(s4(e))return!1;const i=Ii(r),s=Ii(e);return Wn(r)==="started"&&i!==s},effect:(t,{dispatch:e})=>{e(_p())}});Fe({predicate:(t,e,r)=>{const n=ps(r),i=ps(e);return Wn(r)==="started"&&n!==i},effect:(t,{dispatch:e})=>{e(ss({audio:!1,video:!0}))}});Fe({predicate:(t,e,r)=>{const n=io(r),i=io(e);return Wn(r)==="started"&&n!==i},effect:(t,{dispatch:e})=>{e(ss({audio:!0,video:!1}))}});Fe({matcher:_d(Xs.fulfilled,Vl.fulfilled,_i.fulfilled,_i.rejected),effect:(t,{dispatch:e,getState:r})=>{const n=r(),i=tr(n),s=So(n);if(!i)return;const o=KL({audioTrack:i.getAudioTracks()[0],videoTrack:i.getVideoTracks()[0],devices:s});e(Q9(o))}});Fe({actionCreator:ee.audioEnableRequested,effect:({payload:t},{dispatch:e})=>{const{enable:r}=t;r||e(ka({enabled:!1}))}});Fe({actionCreator:ee.videoEnableRequested,effect:({payload:t},{dispatch:e})=>{const{enable:r}=t;r||e(Od({enabled:!1}))}});Fe({actionCreator:ee.breakoutSessionUpdated,effect:({payload:t},{dispatch:e})=>{var r;((r=t.initiatedBy)===null||r===void 0?void 0:r.active)===!1&&e(ka({enabled:!1}))}});const Gh=["recorder","streamer"],kr=t=>t.localParticipant,sR=t=>t.localParticipant.id,Xh=t=>t.localParticipant.displayName,g4=t=>t.localParticipant.clientClaim,Uh=t=>t.localParticipant.stickyReaction,v4=t=>t.localParticipant.breakoutGroup,b4=xe(kr,tr,(t,e)=>{const r={id:t.id,clientId:t.id,breakoutGroup:t.breakoutGroup,displayName:t.displayName,stream:e,isLocalClient:!0,isAudioEnabled:t.isAudioEnabled,isVideoEnabled:t.isVideoEnabled};return Gh.includes(t.roleName)?null:r});function Pp({assignments:t,groups:e,startedAt:r,initiatedBy:n,breakoutStartedAt:i,breakoutEndedAt:s,breakoutNotification:o,breakoutTimerDuration:a,autoMoveToGroup:c,moveToGroupGracePeriod:l,autoMoveToMain:d,moveToMainGracePeriod:p,enforceAssignment:m,breakoutTimerSetting:g}={}){return{assignments:t||null,groups:e||null,startedAt:r?new Date(r):null,initiatedBy:n,breakoutStartedAt:i||null,breakoutEndedAt:s||null,breakoutNotification:o||null,breakoutTimerDuration:a||1800,autoMoveToGroup:c||!1,moveToGroupGracePeriod:l||10,autoMoveToMain:d||!1,moveToMainGracePeriod:p||30,enforceAssignment:m||!1,breakoutTimerSetting:g||!1}}const y4=Object.assign(Object.assign({},Pp()),{groupId:null}),S4=wt({name:"breakout",initialState:y4,reducers:{},extraReducers:t=>{t.addCase(ee.roomJoined,(e,r)=>{if("error"in r.payload)return e;const{breakout:n}=r.payload||{};return n?Object.assign(Object.assign({},e),Pp(n)):e}),t.addCase(ee.breakoutSessionUpdated,(e,r)=>Object.assign(Object.assign({},e),Pp(r.payload))),t.addCase(ee.breakoutGroupJoined,(e,r)=>{var n;return((n=r.meta)===null||n===void 0?void 0:n.localParticipantId)!==r.payload.clientId?e:Object.assign(Object.assign({},e),{groupId:r.payload.group})})}}),ha=t=>(e,r)=>{const n=r(),{socket:i}=Bt(n);i?.emit("join_breakout_group",{group:t.group})},Wh=t=>t.breakout,Dd=t=>!!t.breakout.startedAt,oR=t=>t.breakout.assignments,w4=t=>t.breakout.groups,wo=xe(Wh,v4,(t,e)=>t.groupId||e||""),C4=xe(Wh,wo,(t,e)=>{var r;const n=(r=t.groups)===null||r===void 0?void 0:r[e];return n?{id:e,name:n}:null});Fe({actionCreator:ee.breakoutMoveToGroup,effect:(t,{dispatch:e,getState:r})=>{const n=r(),s=kr(n).breakoutGroupAssigned;s&&e(ha({group:s}))}});Fe({actionCreator:ee.breakoutMoveToMain,effect:(t,{dispatch:e})=>{e(ha({group:""}))}});Fe({actionCreator:ee.breakoutSessionUpdated,effect:({payload:t},{dispatch:e,getState:r})=>{var n;const i=r(),s=Wh(i).autoMoveToMain;((n=t.initiatedBy)===null||n===void 0?void 0:n.active)===!1&&(s||e(ha({group:""})))}});const A4={chatMessages:[]},R4=wt({name:"chat",initialState:A4,reducers:{},extraReducers(t){t.addCase(ee.chatMessage,(e,r)=>{const n={senderId:r.payload.senderId,timestamp:r.payload.timestamp,text:r.payload.text};return Object.assign(Object.assign({},e),{chatMessages:[...e.chatMessages,n]})})}}),_4=ws(t=>(e,r)=>{const n=r(),i=Bt(n).socket,s=wo(n);i?.emit("chat_message",Object.assign(Object.assign({text:t.text},s&&{breakoutGroup:s}),t.isBroadcast&&{broadcast:!0}))}),E4=t=>t.chat.chatMessages,P4={isRecording:!1,error:null,startedAt:void 0},aR=wt({name:"cloudRecording",initialState:P4,reducers:{recordingRequestStarted:t=>Object.assign(Object.assign({},t),{status:"requested"})},extraReducers:t=>{t.addCase(ee.cloudRecordingStopped,e=>Object.assign(Object.assign({},e),{isRecording:!1,status:void 0})),t.addCase(ee.cloudRecordingStarted,(e,r)=>{const{payload:n}=r;return n.error?Object.assign(Object.assign({},e),{isRecording:!1,status:"error",error:n.error}):e}),t.addCase(ee.newClient,(e,{payload:r})=>{var n;const{client:i}=r;return((n=i.role)===null||n===void 0?void 0:n.roleName)==="recorder"?Object.assign(Object.assign({},e),{isRecording:!0,status:"recording",startedAt:i.startedCloudRecordingAt?new Date(i.startedCloudRecordingAt).getTime():new Date().getTime()}):e})}}),{recordingRequestStarted:T4}=aR.actions,I4=ws(()=>(t,e)=>{const r=e(),n=Bt(r).socket,i=D4(r);i&&["recording","requested"].includes(i)||(n?.emit("start_recording",{recording:"cloud"}),t(T4()))}),O4=ws(()=>(t,e)=>{const r=e(),n=Bt(r).socket;n?.emit("stop_recording")}),x4=t=>t.cloudRecording,D4=t=>t.cloudRecording.status,k4=t=>{var e;return(e=t.roomConnection.session)===null||e===void 0?void 0:e.id},Yn=t=>t.roomConnection.status,M4=t=>t.roomConnection.error;function Ac(t){return wn(`rtcConnection/event/${t}`)}const Gl={rtcManagerCreated:Ac("rtcManagerCreated"),rtcManagerDestroyed:Ac("rtcManagerDestroyed"),streamAdded:Ac("streamAdded"),clientConnectionStatusChanged:Ac("clientConnectionStatusChanged")};function Ay(t,e=!1){const{streams:r,role:n,breakoutGroup:i}=t,s=QA(t,["streams","role","breakoutGroup"]);return Object.assign(Object.assign({},s),{stream:null,streams:r.map(o=>({id:o,state:e?"new_accept":"to_accept"})),isLocalParticipant:!1,roleName:n?.roleName||"none",presentationStream:null,breakoutGroup:i||null,newJoiner:e})}function Co(t,e){const r=t.remoteParticipants.findIndex(n=>n.id===e);return{index:r,participant:t.remoteParticipants[r]}}function Ln(t,e,r){const{participant:n,index:i}=Co(t,e);return n?Object.assign(Object.assign({},t),{remoteParticipants:[...t.remoteParticipants.slice(0,i),Object.assign(Object.assign({},n),r),...t.remoteParticipants.slice(i+1)]}):(console.error(`Did not find client for update ${e}`),t)}function N4(t,e){const{participant:r}=Co(t,e.id);return r?(console.warn(`Client already existing ${e.id}. Ignoring`),t):Object.assign(Object.assign({},t),{remoteParticipants:[...t.remoteParticipants,e]})}function L4(t,e,r,n){const{participant:i}=Co(t,e);if(!i)return console.error(`No client ${e} found to update stream ${r} ${n}`),t;const s=i.streams.findIndex(a=>a.id===r),o=[...i.streams];return o[s]=Object.assign(Object.assign({},o[s]),{state:n}),Ln(t,e,{streams:o})}function j4(t,e){return Object.assign(Object.assign({},t),{remoteParticipants:t.remoteParticipants.filter(r=>r.id!==e)})}function Ry(t,e,r){const{participant:n}=Co(t,e);return!n||n.streams.find(i=>i.id===r)?(console.warn(`No participant ${e} or stream ${r} already exists`),t):Ln(t,e,{streams:[...n.streams,{id:r,state:"to_accept"}]})}function B4(t,e,r){var n,i;const{participant:s}=Co(t,e);if(!s)return console.error(`No participant ${e} found to remove stream ${r}`),t;const o=s.stream&&s.stream.id,a=((n=s.presentationStream)===null||n===void 0?void 0:n.inboundId)||((i=s.presentationStream)===null||i===void 0?void 0:i.id),c=s.streams.findIndex(l=>l.id===r);return Ln(t,e,Object.assign(Object.assign({streams:s.streams.filter((l,d)=>d!==c)},o===r&&{stream:null}),a===r&&{presentationStream:null}))}function F4(t,e){const{clientId:r,stream:n,streamType:i}=e;let{streamId:s}=e;const{participant:o}=Co(t,r);if(!o)return console.error(`Did not find client ${r} for adding stream`),t;const a=t.remoteParticipants;s||(s=n.id);const c=a.find(d=>d.id===r);if(!c)return t;const l=c.streams.find(d=>d.id===s);return c.stream&&(c.stream.id===s||c.stream.inboundId===s)||!c.stream&&i==="webcam"||!c.stream&&!i&&!l?Ln(t,r,{stream:n}):Ln(t,r,{presentationStream:n})}const z4={remoteParticipants:[]},cR=wt({name:"remoteParticipants",initialState:z4,reducers:{streamStatusUpdated:(t,e)=>{let r=t;for(const{clientId:n,streamId:i,state:s}of e.payload)r=L4(r,n,i,s);return r},participantStreamAdded:(t,e)=>{const{clientId:r,stream:n}=e.payload;return Ln(t,r,{stream:n})},participantStreamIdAdded:(t,e)=>{const{clientId:r,streamId:n}=e.payload;return Ry(t,r,n)}},extraReducers:t=>{t.addCase(ee.roomJoined,(e,r)=>{if("error"in r.payload)return e;const{room:n,selfId:i}=r.payload||{};return n?.clients?Object.assign(Object.assign({},e),{remoteParticipants:n.clients.filter(s=>s.id!==i).map(s=>Ay(s))}):e}),t.addCase(Gl.streamAdded,(e,r)=>F4(e,r.payload)),t.addCase(ee.newClient,(e,r)=>{const{client:n}=r.payload;return N4(e,Ay(n,!0))}),t.addCase(ee.clientLeft,(e,r)=>{const{clientId:n}=r.payload;return j4(e,n)}),t.addCase(ee.audioEnabled,(e,r)=>{const{clientId:n,isAudioEnabled:i}=r.payload;return Ln(e,n,{isAudioEnabled:i})}),t.addCase(ee.videoEnabled,(e,r)=>{const{clientId:n,isVideoEnabled:i}=r.payload;return Ln(e,n,{isVideoEnabled:i})}),t.addCase(ee.clientMetadataReceived,(e,r)=>{const{error:n,payload:i}=r.payload;if(n||!i)return console.warn(n||"Client metadata error received"),e;const{clientId:s,displayName:o,stickyReaction:a}=i;return Ln(e,s,{displayName:o,stickyReaction:a})}),t.addCase(ee.breakoutGroupJoined,(e,r)=>{const{clientId:n,group:i}=r.payload;return Ln(e,n,{breakoutGroup:i||null})}),t.addCase(ee.screenshareStarted,(e,r)=>{const{clientId:n,streamId:i}=r.payload;return Ry(e,n,i)}),t.addCase(ee.screenshareStopped,(e,r)=>{const{clientId:n,streamId:i}=r.payload;return B4(e,n,i)})}}),{participantStreamAdded:gV,participantStreamIdAdded:vV,streamStatusUpdated:H4}=cR.actions,_y=KA(t=>E9(t),t=>(e,r)=>{const n=r(),i=qA(n);if(t.enable&&!i){console.warn("Not authorized to perform this action");return}const s=Bt(n).socket;s?.emit("request_audio_enable",t)}),Ey=KA(t=>P9(t),t=>(e,r)=>{const n=r(),i=Bt(n).socket;i?.emit("request_video_enable",t)}),Ma=t=>t.remoteParticipants.remoteParticipants,Gn=xe(Ma,t=>t.filter(e=>!Gh.includes(e.roleName))),V4=xe(Ma,t=>t.length+1);xe(Gn,kr,(t,e)=>Gh.includes(e.roleName)?t.length:t.length+1);const G4={status:"inactive",stream:null,error:null},lR=wt({name:"localScreenshare",initialState:G4,reducers:{stopScreenshare(t,e){return Object.assign(Object.assign({},t),{status:"inactive",stream:null})}},extraReducers:t=>{t.addCase(os.pending,e=>Object.assign(Object.assign({},e),{status:"starting"})),t.addCase(os.fulfilled,(e,{payload:{stream:r}})=>Object.assign(Object.assign({},e),{status:"active",stream:r})),t.addCase(os.rejected,(e,{payload:r})=>Object.assign(Object.assign({},e),{error:r,status:"inactive",stream:null}))}}),{stopScreenshare:kd}=lR.actions,os=Td("localScreenshare/doStartScreenshare",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{dispatch:n,getState:i,rejectWithValue:s}){var o;try{const a=i(),c=Ao(a);if(c)return{stream:c};const l=yield navigator.mediaDevices.getDisplayMedia(),d=()=>{n(dR())};return"oninactive"in l?l.addEventListener("inactive",d):(o=l.getVideoTracks()[0])===null||o===void 0||o.addEventListener("ended",d),{stream:l}}catch(a){return s(a)}})),dR=ws(()=>(t,e)=>{const r=e(),n=Ao(r);n&&(n.getTracks().forEach(i=>i.stop()),t(kd({stream:n})))}),Ao=t=>t.localScreenshare.stream;Fe({actionCreator:rR,effect:(t,{getState:e})=>{const r=e(),n=Ao(r);n&&n?.getTracks().forEach(i=>{i.stop()})}});function X4(t){return t.roleName==="streamer"}function U4(t){return t.roleName==="recorder"}const W4={isLocked:!1},Y4=wt({name:"room",initialState:W4,reducers:{},extraReducers:t=>{t.addCase(ee.roomJoined,(e,r)=>{if("error"in r.payload)return r.payload.error==="room_locked"?Object.assign(Object.assign({},e),{isLocked:!!r.payload.isLocked}):e;const{room:n}=r.payload;return Object.assign(Object.assign({},e),{isLocked:!!n.isLocked})}),t.addCase(ee.roomLocked,(e,r)=>{const{isLocked:n}=r.payload;return Object.assign(Object.assign({},e),{isLocked:!!n})})}}),Z4=yo(t=>_9(t),t=>(e,r)=>{const n=r(),{socket:i}=Bt(n);i?.emit("set_lock",{locked:t.locked})}),q4=yo(t=>T9(t),t=>(e,r)=>{const n=r(),{socket:i}=Bt(n);i?.emit("kick_client",{clientId:t.clientId,reasonId:"kick"})}),J4=yo(t=>I9(t),t=>(e,r)=>{const n=r(),i=Ma(n).map(s=>s.id);if(i.length){const{socket:s}=Bt(n);s?.emit("kick_client",{clientIds:i,reasonId:"end-meeting"})}t.stayBehind||e(pa())}),K4=xe(Ao,kr,Gn,(t,e,r)=>{const n=[];t&&n.push({id:t.id||"local-screenshare",participantId:"local",hasAudioTrack:t.getTracks().some(i=>i.kind==="audio"),breakoutGroup:e.breakoutGroup,stream:t,isLocal:!0});for(const i of r)i.presentationStream&&n.push({id:i.presentationStream.id||`pres-${i.id}`,participantId:i.id,hasAudioTrack:i.presentationStream.getTracks().some(s=>s.kind==="audio"),breakoutGroup:i.breakoutGroup,stream:i.presentationStream,isLocal:!1});return n}),Q4=xe(Ao,kr,Gn,wo,oR,(t,e,r,n,i)=>{const s=[];if(t){const o=!!t.getAudioTracks().length;s.push({clientId:e.id,displayName:"Your screenshare",id:"local-screenshare",isAudioEnabled:o,isLocalClient:!0,isPresentation:!0,isVideoEnabled:!0,stream:t,breakoutGroup:n||""})}for(const o of r){if(X4(o)||U4(o))continue;const{presentationStream:a}=o,c=QA(o,["presentationStream"]),l=o.displayName||"Guest",d=a&&a.active,p="pres-"+o.id,m=o.stream&&o.stream.active,g=o.isVideoEnabled;s.push(Object.assign(Object.assign(Object.assign({},c),{breakoutGroupAssigned:i?.[o.deviceId]||"",clientId:o.id,displayName:l,hasActivePresentation:!!d}),o.isVideoEnabled?{isVideoEnabled:g}:{})),d&&s.push(Object.assign(Object.assign(Object.assign({},c),{clientId:o.id,stream:o.presentationStream,displayName:`Screenshare (${l})`,id:p,isPresentation:!0,isVideoEnabled:!0}),m&&{isRecording:null}))}return s}),Cs=xe(b4,Q4,(t,e)=>[...t?[t]:[],...e]),$4=xe(Cs,Dd,wo,(t,e,r)=>!e||!r?t:t.filter(n=>n.isLocalClient||n.breakoutGroup===(r||"")||n.breakoutGroupAssigned&&n.breakoutGroupAssigned===r)),e5=xe(Cs,Dd,w4,(t,e,r)=>{if(!e||!r)return[];const i={clients:t.filter(o=>!o.breakoutGroup||o.breakoutGroup===""),group:{id:"",name:""}},s=Object.entries(r).map(([o,a])=>({clients:t.filter(c=>!c.isPresentation&&c.breakoutGroup===o),group:{id:o,name:a}}));return[i,...s]});function Md({isPresentation:t,stream:e}){var r,n;return t?(n=(r=e?.outboundId)!==null&&r!==void 0?r:e?.inboundId)!==null&&n!==void 0?n:e?.id:"0"}function t5({spotlights:t,isPresentation:e,clientId:r,stream:n}){return!!t.find(i=>{const s=Md({isPresentation:e,stream:n});return i.clientId===r&&i.streamId===s})}function Py(t,e){return t.find(n=>n.clientId===e.clientId&&n.streamId===e.streamId)?t:t.concat(e)}function r5(t,e){return t.reduce((r,n)=>{const i=e.find(s=>n.clientId===s.clientId&&n.streamId===Md(s));return i&&!r.includes(i)&&r.push(i),r},[])}const n5={sorted:[]},uR=wt({name:"spotlights",initialState:n5,reducers:{addSpotlight(t,e){const{clientId:r,streamId:n}=e.payload;return Object.assign(Object.assign({},t),{sorted:Py(t.sorted,{clientId:r,streamId:n})})},removeSpotlight(t,e){const{clientId:r,streamId:n}=e.payload;return Object.assign(Object.assign({},t),{sorted:t.sorted.filter(i=>!(i.clientId===r&&i.streamId===n))})}},extraReducers:t=>{t.addCase(ee.roomJoined,(e,r)=>{var n;if("error"in r.payload)return e;const{room:i}=r.payload||{};return i?Object.assign(Object.assign({},e),{sorted:(n=i.spotlights)!==null&&n!==void 0?n:e.sorted}):e}),t.addCase(ee.spotlightAdded,(e,r)=>{const{clientId:n,streamId:i}=r.payload;return Object.assign(Object.assign({},e),{sorted:Py(e.sorted,{clientId:n,streamId:i})})}),t.addCase(ee.spotlightRemoved,(e,r)=>{const{clientId:n,streamId:i}=r.payload;return Object.assign(Object.assign({},e),{sorted:e.sorted.filter(s=>!(s.clientId===n&&s.streamId===i))})}),t.addMatcher(_d(ee.clientKicked,ee.clientLeft),(e,r)=>{const{clientId:n}=r.payload;return Object.assign(Object.assign({},e),{sorted:e.sorted.filter(i=>i.clientId!==n)})})}}),{addSpotlight:i5,removeSpotlight:s5}=uR.actions,fR=yo(t=>JA(t),({id:t})=>(e,r)=>{const n=r(),i=Cs(n).find(c=>c.clientId===t);if(!i)return;const{socket:s}=Bt(n),o=Md(i),a={clientId:i.id,streamId:o??"0"};s?.emit("add_spotlight",a)}),pR=yo(t=>JA(t),({id:t})=>(e,r)=>{const n=r(),i=Cs(n).find(c=>c.clientId===t);if(!i)return;const{socket:s}=Bt(n),o=Md(i),a={clientId:i.id,streamId:o??"0"};s?.emit("remove_spotlight",a)}),Yh=t=>t.spotlights.sorted;xe(kr,Yh,(t,e)=>t5({clientId:t.id,stream:t.stream,spotlights:e}));const hR=xe(Cs,Yh,(t,e)=>r5(e,t));Fe({actionCreator:os.fulfilled,effect:({payload:t},{getState:e,dispatch:r})=>{const{stream:n}=t,i=e(),s=kr(i);s&&r(i5({clientId:s.id,streamId:n.id}))}});Fe({actionCreator:kd,effect:({payload:t},{getState:e,dispatch:r})=>{const{stream:n}=t,i=e(),s=kr(i);s&&r(s5({clientId:s.id,streamId:n.id}))}});function o5({client:t,breakoutCurrentId:e}){return t?!!(!e&&t.breakoutGroup||!t.isAudioEnabled&&!t.isVideoEnabled):!1}const a5=t=>({emit:(e,r)=>{e==="rtc_manager_created"?t(y5(r)):e==="stream_added"?t(Gl.streamAdded(r)):e==="rtc_manager_destroyed"?t(f5()):e==="client_connection_status_changed"&&t(Gl.clientConnectionStatusChanged(r))}}),Ty={dispatcherCreated:!1,error:null,isCreatingDispatcher:!1,reportedStreamResolutions:{},rtcManager:null,rtcManagerDispatcher:null,rtcManagerInitialized:!1,status:"inactive",isAcceptingStreams:!1},mR=wt({name:"rtcConnection",initialState:Ty,reducers:{isAcceptingStreams:(t,e)=>Object.assign(Object.assign({},t),{isAcceptingStreams:e.payload}),resolutionReported:(t,e)=>{const{streamId:r,width:n,height:i}=e.payload;return Object.assign(Object.assign({},t),{reportedStreamResolutions:Object.assign(Object.assign({},t.reportedStreamResolutions),{[r]:{width:n,height:i}})})},rtcDisconnected:()=>Object.assign({},Ty),rtcDispatcherCreated:(t,e)=>Object.assign(Object.assign({},t),{dispatcherCreated:!0,rtcManagerDispatcher:e.payload}),rtcManagerCreated:(t,e)=>Object.assign(Object.assign({},t),{rtcManager:e.payload,status:"ready"}),rtcManagerDestroyed:t=>Object.assign(Object.assign({},t),{rtcManager:null}),rtcManagerInitialized:t=>Object.assign(Object.assign({},t),{rtcManagerInitialized:!0}),rtcClientConnectionStatusChanged:{reducer:t=>t,prepare:t=>({payload:{},meta:{localParticipantId:t.localParticipantId}})}},extraReducers:t=>{t.addCase(Bh,e=>Object.assign(Object.assign({},e),{status:"reconnecting"})),t.addCase(ee.roomJoined,(e,r)=>"error"in r.payload?e:Object.assign(Object.assign({},e),{status:e.status==="reconnecting"?"ready":e.status}))}}),{resolutionReported:c5,rtcDispatcherCreated:l5,rtcDisconnected:d5,rtcManagerCreated:u5,rtcManagerDestroyed:f5,rtcManagerInitialized:p5,isAcceptingStreams:Iy,rtcClientConnectionStatusChanged:h5}=mR.actions,m5=()=>(t,e)=>{const r=e(),n=Bt(r).socket,i=En(r).rtcManagerDispatcher,s=Ii(r),o=Oi(r),a=w9(r);if(i||!n)return;const c={getMediaConstraints:()=>({audio:o,video:s}),deferrable(d){const p=Gn(e()).find(g=>g.id===d),m=wo(e())||"";return o5({client:p,breakoutCurrentId:m})}},l=new DL({emitter:a5(t),serverSocket:n,webrtcProvider:c,features:{isNodeSdk:a,lowDataModeEnabled:!1,sfuServerOverrideHost:void 0,turnServerOverrideHost:void 0,useOnlyTURN:void 0,sfuVp9On:!1,h264On:!1,simulcastScreenshareOn:!1}});t(l5(l))},g5=()=>(t,e)=>{const{rtcManager:r}=En(e());r&&r.disconnectAll(),t(d5())},v5=t=>(e,r)=>{var n;e(Iy(!0));const i=r(),s=En(i).rtcManager,o=Ma(i);if(!s)throw new Error("No rtc manager");const a=Dd(i),c=(n=s.shouldAcceptStreamsFromBothSides)===null||n===void 0?void 0:n.call(s),l=[];for(const{clientId:d,streamId:p,state:m}of t)if(o.find(v=>v.id===d)){if(m==="to_accept"||m==="new_accept"&&c||m==="old_accept"&&!c)s.acceptNewStream({streamId:p==="0"?d:p,clientId:d,shouldAddLocalVideo:p==="0",activeBreakout:a});else if(!(m==="new_accept"||m==="old_accept")){if(m==="to_unaccept")s?.disconnect(p==="0"?d:p,a);else if(m!=="done_accept")continue}l.push({clientId:d,streamId:p,state:m.replace(/to_|new_|old_/,"done_")})}e(H4(l)),e(Iy(!1))},b5=({streamId:t,width:e,height:r})=>(n,i)=>{const{reportedStreamResolutions:s,rtcManager:o}=En(i()),a=tr(i());if(!o||a?.id===t)return;const c=s[t];(!c||c.width!==e||c.height!==r)&&o.updateStreamResolution(t,null,{width:e||1,height:r||1}),n(c5({streamId:t,width:e,height:r}))},y5=t=>e=>{const{rtcManager:r}=t;e(u5(r))},S5=()=>(t,e)=>{const r=tr(e()),n=En(e()).rtcManager,i=Ii(e()),s=Oi(e());r&&n&&n.addNewStream("0",r,!s,!i),t(p5())},En=t=>t.rtcConnection,gR=t=>t.rtcConnection.rtcManagerInitialized,Zh=t=>t.rtcConnection.rtcManager,w5=t=>t.rtcConnection.dispatcherCreated,C5=t=>t.rtcConnection.isCreatingDispatcher,Nd=t=>t.rtcConnection.status,A5=t=>t.rtcConnection.isAcceptingStreams;Fe({actionCreator:ss.fulfilled,effect:({payload:t},{getState:e})=>{const{replacedTracks:r}=t,{rtcManager:n}=En(e()),i=tr(e()),s=(o,a)=>{const c=i?.getTracks().find(l=>l.kind===o);return c&&n?.replaceTrack(a,c)};r?.forEach(o=>{s(o.kind,o)})}});Fe({actionCreator:os.fulfilled,effect:({payload:t},{getState:e})=>{const{stream:r}=t,{rtcManager:n}=En(e());n?.addNewStream(r.id,r,!1,!0)}});Fe({actionCreator:pa,effect:(t,{getState:e})=>{const r=Zh(e());r?.rtcStatsDisconnect()}});Fe({actionCreator:kd,effect:({payload:t},{getState:e})=>{const{stream:r}=t,{rtcManager:n}=En(e());n?.removeStream(r.id,r,null)}});Fe({actionCreator:_i.fulfilled,effect:({payload:t},{getState:e})=>{var r;const n=tr(e()),{rtcManager:i}=En(e());if(n&&i){const s=(o,a)=>{const c=n.getTracks().find(l=>l.kind===o);return c&&i.replaceTrack(a,c)};(r=t?.replacedTracks)===null||r===void 0||r.forEach(o=>{s(o.kind,o)})}}});Fe({actionCreator:Gl.clientConnectionStatusChanged,effect:(t,{dispatch:e,getState:r})=>{const n=kr(r());e(h5({localParticipantId:n.id}))}});const R5=xe(Nd,xi,w5,C5,Da,(t,e,r,n,i)=>!!(e&&t==="inactive"&&!r&&!n&&i));Zt([R5],({dispatch:t},e)=>{e&&t(m5())});const _5=xe(Zh,gR,Wn,(t,e,r)=>!!(r==="started"&&t&&!e));Zt([_5],({dispatch:t},e)=>{e&&t(S5())});const E5=xe(Nd,xi,(t,e)=>!e&&!["inactive","disconnected"].includes(t));Zt([E5],({dispatch:t},e)=>{e&&t(g5())});const P5=xe(Nd,Ma,wo,Yh,C9,(t,e,r,n,i)=>{if(t!=="ready")return[];const s=[];for(const o of e){const{streams:a,id:c,newJoiner:l}=o,d=n.find(p=>p.clientId===o.id&&p.streamId==="0");for(let p=0;p<a.length;p++){let m=a[p].id,g=a[p].state;if(a?.length>1&&a[1].id==="0"&&(p===0?(m=a[1].id,g=a[1].state):p===1&&(m=a[0].id,g=a[0].state)),!o.breakoutGroup&&!r||o.breakoutGroup===r||o.breakoutGroup===""&&d||i){if(g==="done_accept")continue;s.push({clientId:c,streamId:m,state:`${l&&m==="0"?"new":"to"}_accept`})}else{if(g==="done_unaccept")continue;s.push({clientId:c,streamId:m,state:"to_unaccept"})}}}return s});Zt([P5,A5],({dispatch:t},e,r)=>{0<e.length&&!r&&t(v5(e))});const Oy={running:!1},vR=wt({name:"connectionMonitor",initialState:Oy,reducers:{connectionMonitorStarted:(t,e)=>Object.assign(Object.assign({},t),{running:!0,stopCallbackFunction:e.payload.stopIssueSubscription}),connectionMonitorStopped:()=>Object.assign({},Oy)}}),{connectionMonitorStarted:T5,connectionMonitorStopped:I5}=vR.actions,O5=()=>(t,e)=>{fN(()=>{const n=e();return Cs(n).map(s=>{var o,a;return{id:s.id,clientId:s.clientId,isLocalClient:s.isLocalClient,audio:{enabled:s.isAudioEnabled,track:(o=s.stream)===null||o===void 0?void 0:o.getAudioTracks()[0]},video:{enabled:s.isVideoEnabled,track:(a=s.stream)===null||a===void 0?void 0:a.getVideoTracks()[0]},isPresentation:s.isPresentation}})});const r=XL({onUpdatedIssues:n=>{var i;const s=e(),o=Zh(s);if(!o)return;let a=0,c=0,l=0,d=0;Object.entries(n.aggregated.metrics).forEach(([p,m])=>{/loc.*packetloss/.test(p)&&(a=Math.max(a,m.curMax)),/rem.*packetloss/.test(p)&&(c=Math.max(c,m.curMax)),/loc.*bitrate/.test(p)&&(l+=m.curSum),/rem.*bitrate/.test(p)&&(d+=m.curSum)}),o.sendStatsCustomEvent("insightsStats",{ls:Math.round(a*1e3)/1e3,lr:Math.round(c*1e3)/1e3,bs:Math.round(l),br:Math.round(d),cpu:(i=n.aggregated.metrics["global-cpu-pressure"])===null||i===void 0?void 0:i.curSum,_time:Date.now()})}});t(T5({stopIssueSubscription:r.stop}))},x5=()=>(t,e)=>{const r=e(),n=D5(r);n&&n(),t(I5())},bR=t=>t.connectionMonitor.running,D5=t=>t.connectionMonitor.stopCallbackFunction,k5=xe(Yn,bR,(t,e)=>!e&&t==="connected"),M5=xe(Yn,bR,(t,e)=>!!(e&&["kicked","left"].includes(t)));Zt([k5],({dispatch:t},e)=>{e&&t(O5())});Zt([M5],({dispatch:t},e)=>{e&&t(x5())});const N5={displayName:"",id:"",breakoutGroup:null,breakoutGroupAssigned:"",isAudioEnabled:!0,isVideoEnabled:!0,isLocalParticipant:!0,stream:void 0,isScreenSharing:!1,roleName:"none",clientClaim:void 0,stickyReaction:void 0,isDialIn:!1},yR=wt({name:"localParticipant",initialState:N5,reducers:{setDisplayName:(t,e)=>Object.assign(Object.assign({},t),{displayName:e.payload.displayName}),setBreakoutGroupAssigned:(t,e)=>Object.assign(Object.assign({},t),{breakoutGroupAssigned:e.payload.breakoutGroupAssigned})},extraReducers:t=>{t.addCase(Oa,(e,r)=>Object.assign(Object.assign({},e),{displayName:r.payload.displayName})),t.addCase(qh.fulfilled,(e,r)=>Object.assign(Object.assign({},e),{isAudioEnabled:r.payload})),t.addCase(Jh.fulfilled,(e,r)=>Object.assign(Object.assign({},e),{isVideoEnabled:r.payload})),t.addCase(Kh.fulfilled,(e,r)=>Object.assign(Object.assign({},e),{stickyReaction:r.payload})),t.addCase(ee.roomJoined,(e,r)=>{var n;if("error"in r.payload)return r.payload.error==="room_locked"?Object.assign(Object.assign({},e),{id:r.payload.selfId}):e;const{room:i,selfId:s,clientClaim:o}=r.payload||{},a=i.clients.find(c=>c.id===s);return Object.assign(Object.assign({},e),{id:s,roleName:((n=a?.role)===null||n===void 0?void 0:n.roleName)||"none",clientClaim:o,breakoutGroup:a?.breakoutGroup||null})}),t.addCase(ee.breakoutGroupJoined,(e,r)=>{var n,i;return((n=r.payload)===null||n===void 0?void 0:n.clientId)!==e.id?e:Object.assign(Object.assign({},e),{breakoutGroup:(i=r.payload)===null||i===void 0?void 0:i.group})})}}),{setDisplayName:SR,setBreakoutGroupAssigned:L5}=yR.actions,qh=Td("localParticipant/doEnableAudio",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{dispatch:n,getState:i}){const s=i(),o=Bt(s).socket;return o?.emit("enable_audio",{enabled:r.enabled}),r.enabled&&n(Kh({enabled:!1})),r.enabled})),Jh=Td("localParticipant/doEnableVideo",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{getState:n}){const i=n(),s=Bt(i).socket;return s?.emit("enable_video",{enabled:r.enabled}),r.enabled})),Kh=Td("localParticipant/doSetLocalStickyReaction",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{getState:n,rejectWithValue:i}){var s;const o=n(),a=Uh(o),c=!!a,l=(s=r.enabled)!==null&&s!==void 0?s:!c;return l===c?i(a):l?{reaction:"✋",timestamp:new Date().toISOString()}:null})),j5=ws(()=>(t,e)=>{const r=e(),n=Bt(r).socket,i={displayName:Xh(r),stickyReaction:Uh(r)};n?.emit("send_client_metadata",{type:"UserData",payload:i})});Fe({actionCreator:Od,effect:({payload:t},{dispatch:e,getState:r})=>{const{enabled:n}=t,{isVideoEnabled:i}=kr(r());Yn(r())==="connected"&&e(Jh({enabled:n||!i}))}});Fe({actionCreator:ka,effect:({payload:t},{dispatch:e,getState:r})=>{const{enabled:n}=t,{isAudioEnabled:i}=kr(r());Yn(r())==="connected"&&e(qh({enabled:n||!i}))}});Zt([Xh,Uh,Yn],({dispatch:t},e,r,n)=>{n==="connected"&&t(j5())});Zt([oR,$A,kr],({dispatch:t},e,r,n)=>{const i=e?.[r||""]||"";n.breakoutGroupAssigned!==i&&t(L5({breakoutGroupAssigned:i}))});const B5=new Ca.EventEmitter;function hs(t){return Object.assign(Object.assign({},t),{timestamp:Date.now()})}const F5={emitter:B5,events:[]},Qh=wt({name:"notifications",initialState:F5,reducers:{addNotification:(t,e)=>Object.assign(Object.assign({},t),{events:[...t.events,Object.assign({},e.payload)]}),doClearNotifications:t=>Object.assign(Object.assign({},t),{events:[]})}}),{doClearNotifications:bV}=Qh.actions,ms=t=>(e,r)=>{e(Qh.actions.addNotification(t));const n=r(),i=$h(n);i.emit(t.type,t),i.emit("*",t)},$h=t=>t.notifications.emitter;Fe({actionCreator:ee.chatMessage,effect:({payload:t},{dispatch:e,getState:r})=>{const n=r(),i=Gn(n).find(({id:s})=>s===t.senderId);if(!i){console.warn("Could not find remote client that sent chat message");return}e(ms(hs({type:"chatMessageReceived",message:`${i.displayName} says: ${t.text}`,props:{client:i,chatMessage:{senderId:t.senderId,timestamp:t.timestamp,text:t.text}}})))}});Fe({actionCreator:ee.audioEnableRequested,effect:({payload:t},{dispatch:e,getState:r})=>{const{enable:n,requestedByClientId:i}=t,s=r(),o=Gn(s).find(({id:a})=>a===i);if(!o){console.warn("Could not find remote client that requested a local audio change");return}e(ms(hs({type:n?"requestAudioEnable":"requestAudioDisable",message:n?`${o.displayName} has requested for you to speak`:`${o.displayName} has muted your microphone`,props:{client:o,enable:n}})))}});Fe({actionCreator:ee.videoEnableRequested,effect:({payload:t},{dispatch:e,getState:r})=>{const{enable:n,requestedByClientId:i}=t,s=r(),o=Gn(s).find(({id:a})=>a===i);if(!o){console.warn("Could not find remote client that requested a local video change");return}e(ms(hs({type:n?"requestVideoEnable":"requestVideoDisable",message:n?`${o.displayName} has requested for you to start video`:`${o.displayName} has stopped your video`,props:{client:o,enable:n}})))}});Fe({actionCreator:ee.clientMetadataReceived,effect:(t,{dispatch:e,getOriginalState:r,getState:n})=>{var i;const{error:s,payload:o}=t.payload;if(s||!o)return;const{clientId:a,stickyReaction:c}=o,l=n();if(!qA(l))return;const p=Gn(l).find(({id:v})=>v===a);if(!p){console.warn("Could not find remote client that provided updated metadata");return}const m=r(),g=Gn(m).find(({id:v})=>v===a);!c&&!g?.stickyReaction||c?.timestamp===((i=g?.stickyReaction)===null||i===void 0?void 0:i.timestamp)||e(ms(hs({type:c?"remoteHandRaised":"remoteHandLowered",message:`${p.displayName} ${c?"raised":"lowered"} their hand`,props:{client:p,stickyReaction:c}})))}});Zt([xa],({dispatch:t,getState:e},r)=>{const n=e(),i=Yn(n);["left","kicked"].includes(i)||(r==="disconnected"?t(ms(hs({type:"signalTrouble",message:"Network connection lost. Trying to reconnect you...",props:{}}))):r==="connected"&&t(ms(hs({type:"signalOk",message:"Network connection available",props:{}}))))});Fe({actionCreator:ee.clientUnableToJoin,effect:(t,{dispatch:e})=>{var r;((r=t.payload)===null||r===void 0?void 0:r.error)==="room_full"&&e(ms(hs({type:"clientUnableToJoinFullRoom",message:"Someone tried to join but the room is full and at capacity.",props:{}})))}});const z5={data:null,isFetching:!1,error:null},H5=wt({name:"organization",initialState:z5,reducers:{},extraReducers:t=>{t.addCase(ol.pending,e=>Object.assign(Object.assign({},e),{isFetching:!0})),t.addCase(ol.fulfilled,(e,r)=>r.payload?Object.assign(Object.assign({},e),{isFetching:!1,data:r.payload}):Object.assign(Object.assign({},e),{isFetching:!0})),t.addCase(ol.rejected,e=>Object.assign(Object.assign({},e),{isFetching:!1,error:!0}))}}),ol=ui("organization/doOrganizationFetch",(t,e)=>Gr(void 0,[t,e],void 0,function*(r,{extra:n,getState:i}){try{const s=S9(i()),o=yield n.services.fetchOrganizationFromRoomUrl(s||"");if(!o)throw new Error("Invalid room url");return o}catch(s){console.error(s)}})),V5=t=>t.organization,Ld=t=>{var e;return(e=t.organization.data)===null||e===void 0?void 0:e.organizationId},G5=t=>{var e;return(e=t.organization.data)===null||e===void 0?void 0:e.preferences},X5=xe(xi,V5,Id,(t,e,r)=>!!(t&&!e.data&&!e.isFetching&&!e.error&&!r.isFetching));Zt([X5],({dispatch:t},e)=>{e&&t(ol())});const U5={session:null,status:"ready",error:null},wR=wt({name:"roomConnection",initialState:U5,reducers:{connectionStatusChanged:(t,e)=>Object.assign(Object.assign({},t),{status:e.payload})},extraReducers:t=>{t.addCase(ee.roomJoined,(e,r)=>{var n;if("error"in r.payload)return r.payload.error==="room_locked"&&r.payload.isLocked?Object.assign(Object.assign({},e),{status:"room_locked"}):Object.assign(Object.assign({},e),{status:"disconnected",error:r.payload.error});const{room:i}=r.payload;return Object.assign(Object.assign({},e),{status:"connected",session:(n=i.session)!==null&&n!==void 0?n:null})}),t.addCase(ee.disconnect,e=>["kicked","left"].includes(e.status)?Object.assign({},e):Object.assign(Object.assign({},e),{status:"disconnected"})),t.addCase(ee.newClient,(e,r)=>{var n,i;return Object.assign(Object.assign({},e),{session:(i=(n=r.payload.room)===null||n===void 0?void 0:n.session)!==null&&i!==void 0?i:null})}),t.addCase(ee.roomSessionEnded,(e,r)=>{var n;return((n=e.session)===null||n===void 0?void 0:n.id)!==r.payload.roomSessionId?e:Object.assign(Object.assign({},e),{session:null})}),t.addCase(ee.clientKicked,e=>Object.assign(Object.assign({},e),{status:"kicked"})),t.addCase(ee.roomLeft,e=>Object.assign(Object.assign({},e),{status:"left"})),t.addCase(Bh,e=>Object.assign(Object.assign({},e),{status:"reconnecting"}))}}),{connectionStatusChanged:jd}=wR.actions,W5=()=>(t,e)=>{const r=e(),n=Bt(r).socket,i=XA(r),s=ZA(r),o=UA(r),a=GA(r),c=WA(r),l=jh(r),d=Ld(r);if(Yn(r)!=="room_locked"){console.warn("Room is not locked, knock aborted");return}n?.emit("knock_room",{avatarUrl:null,config:{isAudioEnabled:!0,isVideoEnabled:!0},deviceCapabilities:{canScreenshare:!0},displayName:o,isCoLocated:!1,isDialIn:a,isDevicePermissionDenied:!1,kickFromOtherRooms:!1,organizationId:d,roomKey:s,roomName:i,userAgent:c,externalId:l}),t(jd("knocking"))},CR=()=>(t,e)=>{const r=e(),n=Bt(r).socket,i=XA(r),s=ZA(r),o=UA(r),a=WA(r),c=jh(r),l=GA(r),d=Ld(r),p=Ii(e()),m=Oi(e()),g=g4(e());n?.emit("join_room",Object.assign({avatarUrl:null,config:{isAudioEnabled:m,isVideoEnabled:p},deviceCapabilities:{canScreenshare:!0},displayName:o,isCoLocated:!1,isDialIn:l,isDevicePermissionDenied:!1,kickFromOtherRooms:!1,organizationId:d,roomKey:s,roomName:i,userAgent:a,externalId:c},g&&{clientClaim:g})),t(jd("connecting"))},Y5=xe([xi,Ld,Yn,zh,Wn,M4],(t,e,r,n,i,s)=>!!(t&&i==="started"&&n&&e&&["ready","reconnecting","disconnected"].includes(r)&&!s));Zt([Y5],({dispatch:t},e)=>{e&&t(CR())});Fe({actionCreator:ee.knockHandled,effect:({payload:t},{dispatch:e,getState:r})=>{const{clientId:n,resolution:i}=t,s=r(),o=sR(s);n===o&&(i==="accepted"?(e(R9(t.metadata.roomKey)),e(CR())):i==="rejected"&&e(jd("knock_rejected")))}});Fe({actionCreator:pa,effect:(t,{dispatch:e,getState:r})=>{const n=r();if(Yn(n)==="connected"){const s=Bt(n).socket;s?.emit("leave_room"),e(jd("leaving"))}else Fh()}});const em={audioEnabled:{actions:[qh.fulfilled],rtcEventName:"audioEnabled",getValue:t=>Oi(t),getOutput:t=>({enabled:t})},videoEnabled:{actions:[Jh.fulfilled],rtcEventName:"videoEnabled",getValue:t=>Ii(t),getOutput:t=>({enabled:t})},localStream:{actions:[ss.fulfilled],rtcEventName:"localStream",getValue:t=>{var e;return(e=tr(t))===null||e===void 0?void 0:e.getTracks().map(r=>({id:r.id,kind:r.kind,label:r.label}))},getOutput:t=>({stream:t})},localScreenshareStream:{actions:[os.fulfilled],rtcEventName:"localScreenshareStream",getValue:t=>{var e;return(e=Ao(t))===null||e===void 0?void 0:e.getTracks().map(r=>({id:r.id,kind:r.kind,label:r.label}))},getOutput:t=>({tracks:t})},localScreenshareStreamStopped:{actions:[kd],rtcEventName:"localScreenshareStream",getValue:()=>()=>null,getOutput:()=>({})},displayName:{actions:[SR],rtcEventName:"displayName",getValue:t=>{const e=Xh(t),r=G5(t);return r?.hideInsightsDisplayNames?"[[redacted]]":e},getOutput:t=>({displayName:t})},clientId:{actions:null,rtcEventName:"clientId",getValue:t=>sR(t),getOutput:t=>({clientId:t})},deviceId:{actions:null,rtcEventName:"deviceId",getValue:t=>$A(t),getOutput:t=>({deviceId:t})},externalId:{actions:null,rtcEventName:"externalId",getValue:t=>jh(t),getOutput:t=>({externalId:t})},organizationId:{actions:null,rtcEventName:"organizationId",getValue:t=>Ld(t),getOutput:t=>({organizationId:t})},signalConnectionStatus:{actions:null,rtcEventName:"signalConnectionStatus",getValue:t=>xa(t),getOutput:t=>({status:t})},roomSessionId:{actions:[ee.newClient,ee.roomJoined,ee.roomSessionEnded,ee.clientLeft],rtcEventName:"roomSessionId",getValue:t=>k4(t),getOutput:t=>({roomSessionId:t})},rtcConnectionStatus:{actions:null,rtcEventName:"rtcConnectionStatus",getValue:t=>Nd(t),getOutput:t=>({status:t})},userRole:{actions:null,rtcEventName:"userRole",getValue:t=>Di(t),getOutput:t=>({userRole:t})}},Z5=Object.values(em).flatMap(({actions:t})=>{var e;return(e=t?.map(r=>r))!==null&&e!==void 0?e:null}).filter(t=>t!==null),AR=t=>typeof t=="object"?JSON.stringify(t):t,q5={reportedValues:{}},RR=wt({name:"rtcAnalytics",initialState:q5,reducers:{updateReportedValues(t,e){return Object.assign(Object.assign({},t),{reportedValues:Object.assign(Object.assign({},t.reportedValues),{[e.payload.rtcEventName]:e.payload.value})})}}}),J5=()=>(t,e)=>{const r=e(),n=En(r).rtcManager;n&&(n.sendStatsCustomEvent("insightsStats",{_time:Date.now(),ls:0,lr:0,bs:0,br:0,cpu:0}),Object.values(em).forEach(({rtcEventName:i,getValue:s,getOutput:o})=>{var a;const c=s(r),l=Object.assign(Object.assign({},o(c)),{_time:Date.now()}),d=AR(c);((a=r.rtcAnalytics.reportedValues)===null||a===void 0?void 0:a[i])!==d&&(n.sendStatsCustomEvent(i,l),t(_R({rtcEventName:i,value:c})))}))},{updateReportedValues:_R}=RR.actions;Fe({matcher:_d(...Z5),effect:({type:t},{getState:e,dispatch:r})=>{var n;const i=e(),s=En(i).rtcManager;if(!s)return;const o=Object.values(em).find(({actions:g})=>g?.map(v=>v.type).includes(t));if(!o)return;const{getValue:a,getOutput:c,rtcEventName:l}=o,d=a(i),p=AR(d),m=Object.assign(Object.assign({},c(d)),{_time:Date.now()});((n=i.rtcAnalytics.reportedValues)===null||n===void 0?void 0:n[l])!==p&&(s.sendStatsCustomEvent(l,m),r(_R({rtcEventName:l,value:d})))}});Zt([gR],({dispatch:t},e)=>{e&&t(J5())});const K5={isStreaming:!1,error:null,startedAt:void 0},ER=wt({name:"streaming",initialState:K5,reducers:{doHandleStreamingStarted:t=>Object.assign(Object.assign({},t),{isStreaming:!0,error:null,startedAt:new Date().getTime()}),doHandleStreamingStopped:t=>Object.assign(Object.assign({},t),{isStreaming:!1})}}),{doHandleStreamingStarted:yV,doHandleStreamingStopped:SV}=ER.actions,Q5=t=>t.streaming,$5={waitingParticipants:[]},eB=wt({name:"waitingParticipants",initialState:$5,reducers:{},extraReducers:t=>{t.addCase(ee.roomJoined,(e,r)=>{if("error"in r.payload)return e;const{room:n}=r.payload;return n.knockers.length?Object.assign(Object.assign({},e),{waitingParticipants:n.knockers.map(i=>({id:i.clientId,displayName:i.displayName}))}):e}),t.addCase(ee.roomKnocked,(e,r)=>{const{clientId:n,displayName:i}=r.payload;return Object.assign(Object.assign({},e),{waitingParticipants:[...e.waitingParticipants,{id:n,displayName:i}]})}),t.addCase(ee.knockerLeft,(e,r)=>{const{clientId:n}=r.payload;return Object.assign(Object.assign({},e),{waitingParticipants:e.waitingParticipants.filter(i=>i.id!==n)})})}}),tB=ws(t=>(e,r)=>{const{participantId:n}=t,i=r(),s=Da(i);s?.emit("handle_knock",{action:"accept",clientId:n,response:{}})}),rB=ws(t=>(e,r)=>{const{participantId:n}=t,i=r(),s=Da(i);s?.emit("handle_knock",{action:"reject",clientId:n,response:{}})}),nB=t=>t.waitingParticipants.waitingParticipants,iB=!1,xy=lA({app:Lh.reducer,authorization:YA.reducer,breakout:S4.reducer,chat:R4.reducer,cloudRecording:aR.reducer,connectionMonitor:vR.reducer,deviceCredentials:x9.reducer,localMedia:Hh.reducer,localParticipant:yR.reducer,localScreenshare:lR.reducer,notifications:Qh.reducer,organization:H5.reducer,remoteParticipants:cR.reducer,room:Y4.reducer,roomConnection:wR.reducer,rtcAnalytics:RR.reducer,rtcConnection:mR.reducer,signalConnection:eR.reducer,spotlights:uR.reducer,streaming:ER.reducer,waitingParticipants:eB.reducer}),sB=(t,e)=>{var r;if(Oa.match(e)){const n={app:Object.assign(Object.assign({},Lh.getInitialState()),{initialConfig:(r=t?.app)===null||r===void 0?void 0:r.initialConfig}),localMedia:Object.assign(Object.assign({},Hh.getInitialState()),t?.localMedia)};return xy(n,e)}return xy(t,e)},oB=({preloadedState:t,injectServices:e})=>R3({devTools:iB,reducer:sB,middleware:r=>r({thunk:{extraArgument:{services:e}},serializableCheck:!1}).prepend(HA.middleware),preloadedState:t}),aB="grid:client-view-changed",cB="grid:client-view-spotlights-changed",lB="grid:number-of-client-views-changed",dB=xe(Cs,hR,V4,(t,e,r)=>({allClientViews:t,spotlightedParticipants:e,numParticipants:r}));class tm extends Ca.EventEmitter{constructor(e){super(),this.stateSubscribers=new Set,this.store=e,this.previousState=this.getState(),this.setupEventBridge()}subscribe(e){return this.stateSubscribers.add(e),()=>this.stateSubscribers.delete(e)}setupEventBridge(){this.store.subscribe(()=>{const e=this.getState();e!==this.previousState&&(this.handleStateChanges(e,this.previousState),this.stateSubscribers.forEach(r=>r(e)),this.previousState=e)})}destroy(){this.stateSubscribers.clear(),this.removeAllListeners()}}class uB extends tm{constructor(e){super(e),this.clientViewSubscribers=new Set,this.spotlightedSubscribers=new Set,this.numberOfClientViewsSubscribers=new Set}handleStateChanges(e,r){e.allClientViews!==r.allClientViews&&(this.clientViewSubscribers.forEach(n=>n(e.allClientViews)),this.emit(aB,e.allClientViews)),e.spotlightedParticipants!==r.spotlightedParticipants&&(this.spotlightedSubscribers.forEach(n=>n(e.spotlightedParticipants)),this.emit(cB,e.spotlightedParticipants)),e.numParticipants!==r.numParticipants&&(this.numberOfClientViewsSubscribers.forEach(n=>n(e.numParticipants)),this.emit(lB,e.numParticipants))}getState(){return dB(this.store.getState())}subscribeClientViews(e){return this.clientViewSubscribers.add(e),()=>this.clientViewSubscribers.delete(e)}subscribeSpotlightedParticipants(e){return this.spotlightedSubscribers.add(e),()=>this.spotlightedSubscribers.delete(e)}subscribeNumberOfClientViews(e){return this.numberOfClientViewsSubscribers.add(e),()=>this.numberOfClientViewsSubscribers.delete(e)}spotlightParticipant(e){this.store.dispatch(fR({id:e}))}removeSpotlight(e){this.store.dispatch(pR({id:e}))}destroy(){super.destroy(),this.clientViewSubscribers.clear(),this.spotlightedSubscribers.clear(),this.numberOfClientViewsSubscribers.clear(),this.removeAllListeners()}}const fB=xe(t4,u4,ps,io,r4,n4,i4,d4,tr,a4,f4,p4,c4,(t,e,r,n,i,s,o,a,c,l,d,p,m)=>({cameraDeviceError:t,cameraDevices:e,currentCameraDeviceId:r,currentMicrophoneDeviceId:n,currentSpeakerDeviceId:i,isSettingCameraDevice:s,isSettingMicrophoneDevice:o,isStarting:a,localStream:c,microphoneDeviceError:l,microphoneDevices:d,speakerDevices:p,startError:m})),pB="local-media:camera-device-error-changed",hB="local-media:camera-devices-changed",mB="local-media:is-setting-camera-device",gB="local-media:is-setting-microphone-device",vB="local-media:microphone-device-error-changed",bB="local-media:microphone-devices-changed",yB="local-media:speaker-devices-changed",SB="local-media:current-camera-changed",wB="local-media:current-microphone-changed",Tp="local-media:current-speaker-changed",CB="local-media:starting",AB="local-media:local-stream-changed",RB="local-media:start-error-changed";class _B extends tm{constructor(e){super(e),this.cameraDeviceErrorSubscribers=new Set,this.cameraDeviceSubscribers=new Set,this.isSettingCameraDeviceSubscribers=new Set,this.isSettingMicrophoneDeviceSubscribers=new Set,this.microphoneDeviceErrorSubscribers=new Set,this.microphoneDeviceSubscribers=new Set,this.speakerDeviceSubscribers=new Set,this.currentCameraSubscribers=new Set,this.currentMicrophoneSubscribers=new Set,this.currentSpeakerSubscribers=new Set,this.localMediaStartingSubscribers=new Set,this.localStreamSubscribers=new Set,this.localMediaStartErrorSubscribers=new Set}handleStateChanges(e,r){e.cameraDeviceError!==r.cameraDeviceError&&(this.cameraDeviceErrorSubscribers.forEach(n=>n(e.cameraDeviceError)),this.emit(pB,e.cameraDeviceError)),e.cameraDevices!==r.cameraDevices&&(this.cameraDeviceSubscribers.forEach(n=>n(e.cameraDevices)),this.emit(hB,e.cameraDevices)),e.isSettingCameraDevice!==r.isSettingCameraDevice&&(this.isSettingCameraDeviceSubscribers.forEach(n=>n(e.isSettingCameraDevice)),this.emit(mB,e.isSettingCameraDevice)),e.isSettingMicrophoneDevice!==r.isSettingMicrophoneDevice&&(this.isSettingMicrophoneDeviceSubscribers.forEach(n=>n(e.isSettingMicrophoneDevice)),this.emit(gB,e.isSettingMicrophoneDevice)),e.microphoneDeviceError!==r.microphoneDeviceError&&(this.microphoneDeviceErrorSubscribers.forEach(n=>n(e.microphoneDeviceError)),this.emit(vB,e.microphoneDeviceError)),e.microphoneDevices!==r.microphoneDevices&&(this.microphoneDeviceSubscribers.forEach(n=>n(e.microphoneDevices)),this.emit(bB,e.microphoneDevices)),e.speakerDevices!==r.speakerDevices&&(this.speakerDeviceSubscribers.forEach(n=>n(e.speakerDevices)),this.emit(yB,e.speakerDevices)),e.currentCameraDeviceId!==r.currentCameraDeviceId&&(this.currentCameraSubscribers.forEach(n=>n(e.currentCameraDeviceId)),this.emit(SB,e.currentCameraDeviceId)),e.currentMicrophoneDeviceId!==r.currentMicrophoneDeviceId&&(this.currentMicrophoneSubscribers.forEach(n=>n(e.currentMicrophoneDeviceId)),this.emit(wB,e.currentMicrophoneDeviceId)),e.currentSpeakerDeviceId!==r.currentSpeakerDeviceId&&(this.currentSpeakerSubscribers.forEach(n=>n(e.currentSpeakerDeviceId)),this.emit(Tp,e.currentSpeakerDeviceId)),e.isStarting!==r.isStarting&&(this.localMediaStartingSubscribers.forEach(n=>n(e.isStarting)),this.emit(CB,e.isStarting)),e.localStream!==r.localStream&&(this.localStreamSubscribers.forEach(n=>n(e.localStream)),this.emit(AB,e.localStream)),e.startError!==r.startError&&(this.localMediaStartErrorSubscribers.forEach(n=>n(e.startError)),this.emit(RB,e.startError))}getState(){return fB(this.store.getState())}subscribeCameraDeviceError(e){return this.cameraDeviceErrorSubscribers.add(e),()=>this.cameraDeviceErrorSubscribers.delete(e)}subscribeCameraDevices(e){return this.cameraDeviceSubscribers.add(e),()=>this.cameraDeviceSubscribers.delete(e)}subscribeIsSettingCameraDevice(e){return this.isSettingCameraDeviceSubscribers.add(e),()=>this.isSettingCameraDeviceSubscribers.delete(e)}subscribeIsSettingMicrophoneDevice(e){return this.isSettingMicrophoneDeviceSubscribers.add(e),()=>this.isSettingMicrophoneDeviceSubscribers.delete(e)}subscribeMicrophoneDeviceError(e){return this.microphoneDeviceErrorSubscribers.add(e),()=>this.microphoneDeviceErrorSubscribers.delete(e)}subscribeMicrophoneDevices(e){return this.microphoneDeviceSubscribers.add(e),()=>this.microphoneDeviceSubscribers.delete(e)}subscribeSpeakerDevices(e){return this.speakerDeviceSubscribers.add(e),()=>this.speakerDeviceSubscribers.delete(e)}subscribeCurrentCamera(e){return this.currentCameraSubscribers.add(e),()=>this.currentCameraSubscribers.delete(e)}subscribeCurrentMicrophone(e){return this.currentMicrophoneSubscribers.add(e),()=>this.currentMicrophoneSubscribers.delete(e)}subscribeCurrentSpeaker(e){return this.currentSpeakerSubscribers.add(e),()=>this.currentSpeakerSubscribers.delete(e)}subscribeLocalMediaStarting(e){return this.localMediaStartingSubscribers.add(e),()=>this.localMediaStartingSubscribers.delete(e)}subscribeLocalStream(e){return this.localStreamSubscribers.add(e),()=>this.localStreamSubscribers.delete(e)}subscribeLocalMediaStartError(e){return this.localMediaStartErrorSubscribers.add(e),()=>this.localMediaStartErrorSubscribers.delete(e)}startMedia(){return Gr(this,arguments,void 0,function*(e={audio:!0,video:!0}){return this.store.dispatch(Xs(e))})}toggleCamera(e){this.store.dispatch(Od({enabled:e}))}toggleMicrophone(e){this.store.dispatch(ka({enabled:e}))}toggleLowDataMode(e){this.store.dispatch(tR({enabled:e}))}setCameraDevice(e){this.store.dispatch(Z9({deviceId:e}))}setMicrophoneDevice(e){this.store.dispatch(q9({deviceId:e}))}setSpeakerDevice(e){this.store.dispatch(J9({deviceId:e}))}stopMedia(){return this.store.dispatch(nR())}destroy(){super.destroy(),this.stopMedia(),this.removeAllListeners(),this.cameraDeviceSubscribers.clear(),this.microphoneDeviceSubscribers.clear(),this.speakerDeviceSubscribers.clear(),this.currentCameraSubscribers.clear(),this.currentMicrophoneSubscribers.clear(),this.currentSpeakerSubscribers.clear(),this.cameraDeviceErrorSubscribers.clear(),this.microphoneDeviceErrorSubscribers.clear(),this.isSettingCameraDeviceSubscribers.clear(),this.isSettingMicrophoneDeviceSubscribers.clear(),this.localMediaStartingSubscribers.clear(),this.localStreamSubscribers.clear(),this.localMediaStartErrorSubscribers.clear()}}const EB="breakout:config-changed",PB="chat:new-message",TB="cloud-recording:status-changed",IB="connection:status-changed",OB="local-participant:changed",xB="local-screenshare:status-changed",DB="remote-participants:changed",kB="screenshare:started",MB="screenshare:stopped",NB="streaming:started",LB="streaming:stopped",jB="waiting-participant:joined",BB="waiting-participant:left",FB="spotlight:participant-added",zB="spotlight:participant-removed",HB="room:joined",VB="room:joined:error",GB=xe(E4,x4,C4,Dd,e5,$4,kr,tr,Gn,K4,Yn,Q5,nB,$h,hR,(t,e,r,n,i,s,o,a,c,l,d,p,m,g,v)=>({chatMessages:t,cloudRecording:e.isRecording?{status:"recording"}:void 0,breakout:{isActive:n,currentGroup:r,groupedParticipants:i,participantsInCurrentGroup:s},connectionStatus:d,events:g,liveStream:p.isStreaming?{status:"streaming",startedAt:p.startedAt}:void 0,localScreenshareStatus:o.isScreenSharing?"active":void 0,localParticipant:Object.assign(Object.assign({},o),{stream:a}),remoteParticipants:c,screenshares:l,waitingParticipants:m,spotlightedParticipants:v}));class XB extends tm{constructor(e){super(e),this.selfId=null,this.chatMessageSubscribers=new Set,this.cloudRecordingSubscribers=new Set,this.breakoutSubscribers=new Set,this.connectionStatusSubscribers=new Set,this.liveStreamSubscribers=new Set,this.localScreenshareStatusSubscribers=new Set,this.localParticipantSubscribers=new Set,this.remoteParticipantsSubscribers=new Set,this.screenshareSubscribers=new Set,this.waitingParticipantsSubscribers=new Set,this.spotlightedParticipantsSubscribers=new Set,this.options={},this.registerAppListeners()}handleStateChanges(e,r){var n;if(e.chatMessages!==r.chatMessages&&this.chatMessageSubscribers.forEach(i=>i(e.chatMessages)),e.cloudRecording!==r.cloudRecording&&(this.cloudRecordingSubscribers.forEach(i=>i(e.cloudRecording?{status:"recording"}:void 0)),this.emit(TB,e.cloudRecording?{status:"recording"}:void 0)),e.breakout!==r.breakout&&(this.breakoutSubscribers.forEach(i=>i(e.breakout)),this.emit(EB,e.breakout)),e.connectionStatus!==r.connectionStatus&&(this.connectionStatusSubscribers.forEach(i=>i(e.connectionStatus)),this.emit(IB,e.connectionStatus)),e.liveStream!==r.liveStream&&(this.liveStreamSubscribers.forEach(i=>i(e.liveStream)),((n=e.liveStream)===null||n===void 0?void 0:n.status)==="streaming"?this.emit(NB,e.liveStream):this.emit(LB)),e.localScreenshareStatus!==r.localScreenshareStatus&&(this.localScreenshareStatusSubscribers.forEach(i=>i(e.localScreenshareStatus)),this.emit(xB,e.localScreenshareStatus)),e.localParticipant!==r.localParticipant&&(this.localParticipantSubscribers.forEach(i=>i(e.localParticipant)),this.emit(OB,e.localParticipant)),e.remoteParticipants!==r.remoteParticipants&&(this.remoteParticipantsSubscribers.forEach(i=>i(e.remoteParticipants)),this.emit(DB,e.remoteParticipants)),e.screenshares!==r.screenshares){this.screenshareSubscribers.forEach(o=>o(e.screenshares));const i=e.screenshares.filter(o=>!r.screenshares.some(a=>a.id===o.id)),s=r.screenshares.filter(o=>!e.screenshares.some(a=>a.id===o.id));i.forEach(o=>{this.emit(kB,o)}),s.forEach(o=>{this.emit(MB,o.id)})}if(e.waitingParticipants!==r.waitingParticipants){this.waitingParticipantsSubscribers.forEach(o=>o(e.waitingParticipants));const i=e.waitingParticipants.filter(o=>!r.waitingParticipants.some(a=>a.id===o.id)),s=r.waitingParticipants.filter(o=>!e.waitingParticipants.some(a=>a.id===o.id));i.forEach(o=>{this.emit(jB,o)}),s.forEach(o=>{this.emit(BB,o.id)})}if(e.spotlightedParticipants!==r.spotlightedParticipants){this.spotlightedParticipantsSubscribers.forEach(o=>o(e.spotlightedParticipants));const i=e.spotlightedParticipants.filter(o=>!r.spotlightedParticipants.some(a=>a.id===o.id)),s=r.spotlightedParticipants.filter(o=>!e.spotlightedParticipants.some(a=>a.id===o.id));i.forEach(o=>{this.emit(FB,o)}),s.forEach(o=>{this.emit(zB,o.id)})}}registerAppListeners(){Fe({actionCreator:ee.roomJoined,effect:({payload:e})=>{if("error"in e){this.emit(VB,e.error);return}const{selfId:r}=e;this.selfId=r,this.emit(HB,{isLocked:e.room.isLocked,selfId:r})}}),Fe({actionCreator:ee.chatMessage,effect:({payload:e})=>{this.emit(PB,e)}})}subscribeToChatMessages(e){return this.chatMessageSubscribers.add(e),()=>this.chatMessageSubscribers.delete(e)}subscribeToCloudRecording(e){return this.cloudRecordingSubscribers.add(e),()=>this.cloudRecordingSubscribers.delete(e)}subscribeToBreakoutConfig(e){return this.breakoutSubscribers.add(e),()=>this.breakoutSubscribers.delete(e)}subscribeToConnectionStatus(e){return this.connectionStatusSubscribers.add(e),()=>this.connectionStatusSubscribers.delete(e)}subscribeToLiveStream(e){return this.liveStreamSubscribers.add(e),()=>this.liveStreamSubscribers.delete(e)}subscribeToLocalScreenshareStatus(e){return this.localScreenshareStatusSubscribers.add(e),()=>this.localScreenshareStatusSubscribers.delete(e)}subscribeToLocalParticipant(e){return this.localParticipantSubscribers.add(e),()=>this.localParticipantSubscribers.delete(e)}subscribeToRemoteParticipants(e){return this.remoteParticipantsSubscribers.add(e),()=>this.remoteParticipantsSubscribers.delete(e)}subscribeToScreenshares(e){return this.screenshareSubscribers.add(e),()=>this.screenshareSubscribers.delete(e)}subscribeToWaitingParticipants(e){return this.waitingParticipantsSubscribers.add(e),()=>this.waitingParticipantsSubscribers.delete(e)}subscribeToSpotlightedParticipants(e){return this.spotlightedParticipantsSubscribers.add(e),()=>this.spotlightedParticipantsSubscribers.delete(e)}getState(){return GB(this.store.getState())}getNotificationsEventEmitter(){return $h(this.store.getState())}initialize(e){this.options=e}joinRoom(){const{roomUrl:e}=this.options;if(!e)throw new Error("Room URL is required to join a room.");const r={localMediaOptions:this.options.localMediaOptions||void 0,displayName:this.options.displayName||"Guest",roomKey:this.options.roomKey||null,externalId:this.options.externalId||null,sdkVersion:`core:${VA}`,roomUrl:e};this.store.dispatch(Oa(r))}sendChatMessage(e){this.store.dispatch(_4({text:e}))}knock(){this.store.dispatch(W5())}leaveRoom(){this.store.dispatch(pa()),this.selfId=null}setDisplayName(e){this.store.dispatch(SR({displayName:e}))}toggleCamera(e){this.store.dispatch(Od({enabled:e}))}toggleMicrophone(e){this.store.dispatch(ka({enabled:e}))}toggleLowDataMode(e){this.store.dispatch(tR({enabled:e}))}toggleRaiseHand(e){this.store.dispatch(Kh({enabled:e}))}askToSpeak(e){this.store.dispatch(_y({clientIds:[e],enable:!0}))}askToTurnOnCamera(e){this.store.dispatch(Ey({clientIds:[e],enable:!0}))}acceptWaitingParticipant(e){this.store.dispatch(tB({participantId:e}))}rejectWaitingParticipant(e){this.store.dispatch(rB({participantId:e}))}startCloudRecording(){this.store.dispatch(I4())}stopCloudRecording(){this.store.dispatch(O4())}startScreenshare(){this.store.dispatch(os())}stopScreenshare(){this.store.dispatch(dR())}lockRoom(e){this.store.dispatch(Z4({locked:e}))}muteParticipants(e){this.store.dispatch(_y({clientIds:e,enable:!1}))}turnOffParticipantCameras(e){this.store.dispatch(Ey({clientIds:e,enable:!1}))}spotlightParticipant(e){this.store.dispatch(fR({id:e}))}removeSpotlight(e){this.store.dispatch(pR({id:e}))}kickParticipant(e){this.store.dispatch(q4({clientId:e}))}endMeeting(e=!1){this.store.dispatch(J4({stayBehind:e}))}joinBreakoutGroup(e){this.store.dispatch(ha({group:e}))}joinBreakoutMainRoom(){this.store.dispatch(ha({group:""}))}reportStreamResolution(e,r,n){this.store.dispatch(b5({streamId:e,width:r,height:n}))}destroy(){super.destroy(),this.store.dispatch(pa()),this.removeAllListeners(),this.selfId=null,this.chatMessageSubscribers.clear(),this.cloudRecordingSubscribers.clear(),this.breakoutSubscribers.clear(),this.connectionStatusSubscribers.clear(),this.liveStreamSubscribers.clear(),this.localScreenshareStatusSubscribers.clear(),this.localParticipantSubscribers.clear(),this.remoteParticipantsSubscribers.clear(),this.screenshareSubscribers.clear(),this.waitingParticipantsSubscribers.clear(),this.spotlightedParticipantsSubscribers.clear()}}class UB{constructor(){this.services=b9(),this.store=oB({injectServices:this.services}),this.localMediaClient=new _B(this.store),this.roomConnectionClient=new XB(this.store),this.gridClient=new uB(this.store)}getLocalMedia(){return this.localMediaClient}getRoomConnection(){return this.roomConnectionClient}getGrid(){return this.gridClient}getStore(){return this.store}destroy(){this.localMediaClient.destroy(),this.roomConnectionClient.destroy(),this.gridClient.destroy()}}var Rc={exports:{}},Dy;function WB(){if(Dy)return Rc.exports;Dy=1;const t=55296,e=56319,r=56320,n=127462,i=127487,s=127995,o=127999,a=65024,c=65039,l=8400,d=8447,p=8205,m=[776,2359,2359,2367,2367,2984,3007,3021,3633,3635,3648,3657,4352,4449,4520];function g(_){if(typeof _!="string")throw new Error("string cannot be undefined or null");const E=[];let P=0,T=0;for(;P<_.length;){if(T+=v(P+T,_),u(_[P+T])&&T++,y(_[P+T])&&T++,f(_[P+T])&&T++,h(_[P+T])){T++;continue}E.push(_.substring(P,P+T)),P+=T,T=0}return E}function v(_,E){const P=E[_];if(!S(P)||_===E.length-1)return 1;const T=P+E[_+1];let k=E.substring(_+2,_+5);return C(T)&&C(k)||w(k)?4:2}function S(_){return _&&A(_[0].charCodeAt(0),t,e)}function C(_){return A(b(_),n,i)}function w(_){return A(b(_),s,o)}function y(_){return typeof _=="string"&&A(_.charCodeAt(0),a,c)}function f(_){return typeof _=="string"&&A(_.charCodeAt(0),l,d)}function u(_){return typeof _=="string"&&m.indexOf(_.charCodeAt(0))!==-1}function h(_){return typeof _=="string"&&_.charCodeAt(0)===p}function b(_){const E=_.charCodeAt(0)-t,P=_.charCodeAt(1)-r;return(E<<10)+P+65536}function A(_,E,P){return _>=E&&_<=P}function R(_,E,P){const T=g(_);if(E===void 0)return _;if(E>=T.length)return"";const k=T.length-E;let X=E+(P===void 0?k:P);return X>E+k&&(X=void 0),T.slice(E,X).join("")}return Rc.exports=g,Rc.exports.substr=R,Rc.exports}var YB=WB();const ZB=Xn(YB);function Ei(t,e,{checkForDefaultPrevented:r=!0}={}){return function(i){if(t?.(i),r===!1||!i.defaultPrevented)return e?.(i)}}function ky(t,e){if(typeof t=="function")return t(e);t!=null&&(t.current=e)}function PR(...t){return e=>{let r=!1;const n=t.map(i=>{const s=ky(i,e);return!r&&typeof s=="function"&&(r=!0),s});if(r)return()=>{for(let i=0;i<n.length;i++){const s=n[i];typeof s=="function"?s():ky(t[i],null)}}}}function ki(...t){return M.useCallback(PR(...t),t)}function TR(t,e=[]){let r=[];function n(s,o){const a=M.createContext(o),c=r.length;r=[...r,o];const l=p=>{const{scope:m,children:g,...v}=p,S=m?.[t]?.[c]||a,C=M.useMemo(()=>v,Object.values(v));return Y.jsx(S.Provider,{value:C,children:g})};l.displayName=s+"Provider";function d(p,m){const g=m?.[t]?.[c]||a,v=M.useContext(g);if(v)return v;if(o!==void 0)return o;throw new Error(`\`${p}\` must be used within \`${s}\``)}return[l,d]}const i=()=>{const s=r.map(o=>M.createContext(o));return function(a){const c=a?.[t]||s;return M.useMemo(()=>({[`__scope${t}`]:{...a,[t]:c}}),[a,c])}};return i.scopeName=t,[n,qB(i,...e)]}function qB(...t){const e=t[0];if(t.length===1)return e;const r=()=>{const n=t.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(s){const o=n.reduce((a,{useScope:c,scopeName:l})=>{const p=c(s)[`__scope${l}`];return{...a,...p}},{});return M.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])}};return r.scopeName=e.scopeName,r}function IR(t){const e=JB(t),r=M.forwardRef((n,i)=>{const{children:s,...o}=n,a=M.Children.toArray(s),c=a.find(QB);if(c){const l=c.props.children,d=a.map(p=>p===c?M.Children.count(l)>1?M.Children.only(null):M.isValidElement(l)?l.props.children:null:p);return Y.jsx(e,{...o,ref:i,children:M.isValidElement(l)?M.cloneElement(l,void 0,d):null})}return Y.jsx(e,{...o,ref:i,children:s})});return r.displayName=`${t}.Slot`,r}function JB(t){const e=M.forwardRef((r,n)=>{const{children:i,...s}=r;if(M.isValidElement(i)){const o=eF(i),a=$B(s,i.props);return i.type!==M.Fragment&&(a.ref=n?PR(n,o):o),M.cloneElement(i,a)}return M.Children.count(i)>1?M.Children.only(null):null});return e.displayName=`${t}.SlotClone`,e}var KB=Symbol("radix.slottable");function QB(t){return M.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===KB}function $B(t,e){const r={...e};for(const n in e){const i=t[n],s=e[n];/^on[A-Z]/.test(n)?i&&s?r[n]=(...a)=>{const c=s(...a);return i(...a),c}:i&&(r[n]=i):n==="style"?r[n]={...i,...s}:n==="className"&&(r[n]=[i,s].filter(Boolean).join(" "))}return{...t,...r}}function eF(t){let e=Object.getOwnPropertyDescriptor(t.props,"ref")?.get,r=e&&"isReactWarning"in e&&e.isReactWarning;return r?t.ref:(e=Object.getOwnPropertyDescriptor(t,"ref")?.get,r=e&&"isReactWarning"in e&&e.isReactWarning,r?t.props.ref:t.props.ref||t.ref)}var tF=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],fi=tF.reduce((t,e)=>{const r=IR(`Primitive.${e}`),n=M.forwardRef((i,s)=>{const{asChild:o,...a}=i,c=o?r:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),Y.jsx(c,{...a,ref:s})});return n.displayName=`Primitive.${e}`,{...t,[e]:n}},{});function rF(t,e){t&&v0.flushSync(()=>t.dispatchEvent(e))}function so(t){const e=M.useRef(t);return M.useEffect(()=>{e.current=t}),M.useMemo(()=>(...r)=>e.current?.(...r),[])}function nF(t,e=globalThis?.document){const r=so(t);M.useEffect(()=>{const n=i=>{i.key==="Escape"&&r(i)};return e.addEventListener("keydown",n,{capture:!0}),()=>e.removeEventListener("keydown",n,{capture:!0})},[r,e])}var iF="DismissableLayer",Ip="dismissableLayer.update",sF="dismissableLayer.pointerDownOutside",oF="dismissableLayer.focusOutside",My,OR=M.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),xR=M.forwardRef((t,e)=>{const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:n,onPointerDownOutside:i,onFocusOutside:s,onInteractOutside:o,onDismiss:a,...c}=t,l=M.useContext(OR),[d,p]=M.useState(null),m=d?.ownerDocument??globalThis?.document,[,g]=M.useState({}),v=ki(e,A=>p(A)),S=Array.from(l.layers),[C]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),w=S.indexOf(C),y=d?S.indexOf(d):-1,f=l.layersWithOutsidePointerEventsDisabled.size>0,u=y>=w,h=lF(A=>{const R=A.target,_=[...l.branches].some(E=>E.contains(R));!u||_||(i?.(A),o?.(A),A.defaultPrevented||a?.())},m),b=dF(A=>{const R=A.target;[...l.branches].some(E=>E.contains(R))||(s?.(A),o?.(A),A.defaultPrevented||a?.())},m);return nF(A=>{y===l.layers.size-1&&(n?.(A),!A.defaultPrevented&&a&&(A.preventDefault(),a()))},m),M.useEffect(()=>{if(d)return r&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(My=m.body.style.pointerEvents,m.body.style.pointerEvents="none"),l.layersWithOutsidePointerEventsDisabled.add(d)),l.layers.add(d),Ny(),()=>{r&&l.layersWithOutsidePointerEventsDisabled.size===1&&(m.body.style.pointerEvents=My)}},[d,m,r,l]),M.useEffect(()=>()=>{d&&(l.layers.delete(d),l.layersWithOutsidePointerEventsDisabled.delete(d),Ny())},[d,l]),M.useEffect(()=>{const A=()=>g({});return document.addEventListener(Ip,A),()=>document.removeEventListener(Ip,A)},[]),Y.jsx(fi.div,{...c,ref:v,style:{pointerEvents:f?u?"auto":"none":void 0,...t.style},onFocusCapture:Ei(t.onFocusCapture,b.onFocusCapture),onBlurCapture:Ei(t.onBlurCapture,b.onBlurCapture),onPointerDownCapture:Ei(t.onPointerDownCapture,h.onPointerDownCapture)})});xR.displayName=iF;var aF="DismissableLayerBranch",cF=M.forwardRef((t,e)=>{const r=M.useContext(OR),n=M.useRef(null),i=ki(e,n);return M.useEffect(()=>{const s=n.current;if(s)return r.branches.add(s),()=>{r.branches.delete(s)}},[r.branches]),Y.jsx(fi.div,{...t,ref:i})});cF.displayName=aF;function lF(t,e=globalThis?.document){const r=so(t),n=M.useRef(!1),i=M.useRef(()=>{});return M.useEffect(()=>{const s=a=>{if(a.target&&!n.current){let c=function(){DR(sF,r,l,{discrete:!0})};const l={originalEvent:a};a.pointerType==="touch"?(e.removeEventListener("click",i.current),i.current=c,e.addEventListener("click",i.current,{once:!0})):c()}else e.removeEventListener("click",i.current);n.current=!1},o=window.setTimeout(()=>{e.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(o),e.removeEventListener("pointerdown",s),e.removeEventListener("click",i.current)}},[e,r]),{onPointerDownCapture:()=>n.current=!0}}function dF(t,e=globalThis?.document){const r=so(t),n=M.useRef(!1);return M.useEffect(()=>{const i=s=>{s.target&&!n.current&&DR(oF,r,{originalEvent:s},{discrete:!1})};return e.addEventListener("focusin",i),()=>e.removeEventListener("focusin",i)},[e,r]),{onFocusCapture:()=>n.current=!0,onBlurCapture:()=>n.current=!1}}function Ny(){const t=new CustomEvent(Ip);document.dispatchEvent(t)}function DR(t,e,r,{discrete:n}){const i=r.originalEvent.target,s=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:r});e&&i.addEventListener(t,e,{once:!0}),n?rF(i,s):i.dispatchEvent(s)}var sf=0;function uF(){M.useEffect(()=>{const t=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",t[0]??Ly()),document.body.insertAdjacentElement("beforeend",t[1]??Ly()),sf++,()=>{sf===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e=>e.remove()),sf--}},[])}function Ly(){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 of="focusScope.autoFocusOnMount",af="focusScope.autoFocusOnUnmount",jy={bubbles:!1,cancelable:!0},fF="FocusScope",kR=M.forwardRef((t,e)=>{const{loop:r=!1,trapped:n=!1,onMountAutoFocus:i,onUnmountAutoFocus:s,...o}=t,[a,c]=M.useState(null),l=so(i),d=so(s),p=M.useRef(null),m=ki(e,S=>c(S)),g=M.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;M.useEffect(()=>{if(n){let S=function(f){if(g.paused||!a)return;const u=f.target;a.contains(u)?p.current=u:Si(p.current,{select:!0})},C=function(f){if(g.paused||!a)return;const u=f.relatedTarget;u!==null&&(a.contains(u)||Si(p.current,{select:!0}))},w=function(f){if(document.activeElement===document.body)for(const h of f)h.removedNodes.length>0&&Si(a)};document.addEventListener("focusin",S),document.addEventListener("focusout",C);const y=new MutationObserver(w);return a&&y.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",S),document.removeEventListener("focusout",C),y.disconnect()}}},[n,a,g.paused]),M.useEffect(()=>{if(a){Fy.add(g);const S=document.activeElement;if(!a.contains(S)){const w=new CustomEvent(of,jy);a.addEventListener(of,l),a.dispatchEvent(w),w.defaultPrevented||(pF(bF(MR(a)),{select:!0}),document.activeElement===S&&Si(a))}return()=>{a.removeEventListener(of,l),setTimeout(()=>{const w=new CustomEvent(af,jy);a.addEventListener(af,d),a.dispatchEvent(w),w.defaultPrevented||Si(S??document.body,{select:!0}),a.removeEventListener(af,d),Fy.remove(g)},0)}}},[a,l,d,g]);const v=M.useCallback(S=>{if(!r&&!n||g.paused)return;const C=S.key==="Tab"&&!S.altKey&&!S.ctrlKey&&!S.metaKey,w=document.activeElement;if(C&&w){const y=S.currentTarget,[f,u]=hF(y);f&&u?!S.shiftKey&&w===u?(S.preventDefault(),r&&Si(f,{select:!0})):S.shiftKey&&w===f&&(S.preventDefault(),r&&Si(u,{select:!0})):w===y&&S.preventDefault()}},[r,n,g.paused]);return Y.jsx(fi.div,{tabIndex:-1,...o,ref:m,onKeyDown:v})});kR.displayName=fF;function pF(t,{select:e=!1}={}){const r=document.activeElement;for(const n of t)if(Si(n,{select:e}),document.activeElement!==r)return}function hF(t){const e=MR(t),r=By(e,t),n=By(e.reverse(),t);return[r,n]}function MR(t){const e=[],r=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:n=>{const i=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||i?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)e.push(r.currentNode);return e}function By(t,e){for(const r of t)if(!mF(r,{upTo:e}))return r}function mF(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 gF(t){return t instanceof HTMLInputElement&&"select"in t}function Si(t,{select:e=!1}={}){if(t&&t.focus){const r=document.activeElement;t.focus({preventScroll:!0}),t!==r&&gF(t)&&e&&t.select()}}var Fy=vF();function vF(){let t=[];return{add(e){const r=t[0];e!==r&&r?.pause(),t=zy(t,e),t.unshift(e)},remove(e){t=zy(t,e),t[0]?.resume()}}}function zy(t,e){const r=[...t],n=r.indexOf(e);return n!==-1&&r.splice(n,1),r}function bF(t){return t.filter(e=>e.tagName!=="A")}var oo=globalThis?.document?M.useLayoutEffect:()=>{},yF=typeof document<"u",SF=function(){},al=yF?K.useLayoutEffect:SF;function Xl(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 r,n,i;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(r=t.length,r!==e.length)return!1;for(n=r;n--!==0;)if(!Xl(t[n],e[n]))return!1;return!0}if(i=Object.keys(t),r=i.length,r!==Object.keys(e).length)return!1;for(n=r;n--!==0;)if(!{}.hasOwnProperty.call(e,i[n]))return!1;for(n=r;n--!==0;){const s=i[n];if(!(s==="_owner"&&t.$$typeof)&&!Xl(t[s],e[s]))return!1}return!0}return t!==t&&e!==e}function NR(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function Hy(t,e){const r=NR(t);return Math.round(e*r)/r}function cf(t){const e=M.useRef(t);return al(()=>{e.current=t}),e}function wF(t){t===void 0&&(t={});const{placement:e="bottom",strategy:r="absolute",middleware:n=[],platform:i,elements:{reference:s,floating:o}={},transform:a=!0,whileElementsMounted:c,open:l}=t,[d,p]=M.useState({x:0,y:0,strategy:r,placement:e,middlewareData:{},isPositioned:!1}),[m,g]=M.useState(n);Xl(m,n)||g(n);const[v,S]=M.useState(null),[C,w]=M.useState(null),y=M.useCallback(B=>{B!==b.current&&(b.current=B,S(B))},[]),f=M.useCallback(B=>{B!==A.current&&(A.current=B,w(B))},[]),u=s||v,h=o||C,b=M.useRef(null),A=M.useRef(null),R=M.useRef(d),_=c!=null,E=cf(c),P=cf(i),T=cf(l),k=M.useCallback(()=>{if(!b.current||!A.current)return;const B={placement:e,strategy:r,middleware:m};P.current&&(B.platform=P.current),W1(b.current,A.current,B).then(z=>{const Z={...z,isPositioned:T.current!==!1};F.current&&!Xl(R.current,Z)&&(R.current=Z,v0.flushSync(()=>{p(Z)}))})},[m,e,r,P,T]);al(()=>{l===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,p(B=>({...B,isPositioned:!1})))},[l]);const F=M.useRef(!1);al(()=>(F.current=!0,()=>{F.current=!1}),[]),al(()=>{if(u&&(b.current=u),h&&(A.current=h),u&&h){if(E.current)return E.current(u,h,k);k()}},[u,h,k,E,_]);const X=M.useMemo(()=>({reference:b,floating:A,setReference:y,setFloating:f}),[y,f]),O=M.useMemo(()=>({reference:u,floating:h}),[u,h]),L=M.useMemo(()=>{const B={position:r,left:0,top:0};if(!O.floating)return B;const z=Hy(O.floating,d.x),Z=Hy(O.floating,d.y);return a?{...B,transform:"translate("+z+"px, "+Z+"px)",...NR(O.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:z,top:Z}},[r,a,O.floating,d.x,d.y]);return M.useMemo(()=>({...d,update:k,refs:X,elements:O,floatingStyles:L}),[d,k,X,O,L])}const CF=t=>{function e(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:t,fn(r){const{element:n,padding:i}=typeof t=="function"?t(r):t;return n&&e(n)?n.current!=null?yg({element:n.current,padding:i}).fn(r):{}:n?yg({element:n,padding:i}).fn(r):{}}}},AF=(t,e)=>({...z1(t),options:[t,e]}),RF=(t,e)=>({...H1(t),options:[t,e]}),_F=(t,e)=>({...U1(t),options:[t,e]}),EF=(t,e)=>({...V1(t),options:[t,e]}),PF=(t,e)=>({...G1(t),options:[t,e]}),TF=(t,e)=>({...X1(t),options:[t,e]}),IF=(t,e)=>({...CF(t),options:[t,e]});var OF="Arrow",LR=M.forwardRef((t,e)=>{const{children:r,width:n=10,height:i=5,...s}=t;return Y.jsx(fi.svg,{...s,ref:e,width:n,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?r:Y.jsx("polygon",{points:"0,0 30,0 15,10"})})});LR.displayName=OF;var xF=LR;function DF(t){const[e,r]=M.useState(void 0);return oo(()=>{if(t){r({width:t.offsetWidth,height:t.offsetHeight});const n=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;const s=i[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;r({width:o,height:a})});return n.observe(t,{box:"border-box"}),()=>n.unobserve(t)}else r(void 0)},[t]),e}var jR="Popper",[BR,FR]=TR(jR),[wV,zR]=BR(jR),HR="PopperAnchor",VR=M.forwardRef((t,e)=>{const{__scopePopper:r,virtualRef:n,...i}=t,s=zR(HR,r),o=M.useRef(null),a=ki(e,o);return M.useEffect(()=>{s.onAnchorChange(n?.current||o.current)}),n?null:Y.jsx(fi.div,{...i,ref:a})});VR.displayName=HR;var rm="PopperContent",[kF,MF]=BR(rm),GR=M.forwardRef((t,e)=>{const{__scopePopper:r,side:n="bottom",sideOffset:i=0,align:s="center",alignOffset:o=0,arrowPadding:a=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:d=0,sticky:p="partial",hideWhenDetached:m=!1,updatePositionStrategy:g="optimized",onPlaced:v,...S}=t,C=zR(rm,r),[w,y]=M.useState(null),f=ki(e,se=>y(se)),[u,h]=M.useState(null),b=DF(u),A=b?.width??0,R=b?.height??0,_=n+(s!=="center"?"-"+s:""),E=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},P=Array.isArray(l)?l:[l],T=P.length>0,k={padding:E,boundary:P.filter(LF),altBoundary:T},{refs:F,floatingStyles:X,placement:O,isPositioned:L,middlewareData:B}=wF({strategy:"fixed",placement:_,whileElementsMounted:(...se)=>PS(...se,{animationFrame:g==="always"}),elements:{reference:C.anchor},middleware:[AF({mainAxis:i+R,alignmentAxis:o}),c&&RF({mainAxis:!0,crossAxis:!1,limiter:p==="partial"?_F():void 0,...k}),c&&EF({...k}),PF({...k,apply:({elements:se,rects:ae,availableWidth:le,availableHeight:ye})=>{const{width:me,height:ke}=ae.reference,U=se.floating.style;U.setProperty("--radix-popper-available-width",`${le}px`),U.setProperty("--radix-popper-available-height",`${ye}px`),U.setProperty("--radix-popper-anchor-width",`${me}px`),U.setProperty("--radix-popper-anchor-height",`${ke}px`)}}),u&&IF({element:u,padding:a}),jF({arrowWidth:A,arrowHeight:R}),m&&TF({strategy:"referenceHidden",...k})]}),[z,Z]=WR(O),V=so(v);oo(()=>{L&&V?.()},[L,V]);const G=B.arrow?.x,te=B.arrow?.y,re=B.arrow?.centerOffset!==0,[ie,ce]=M.useState();return oo(()=>{w&&ce(window.getComputedStyle(w).zIndex)},[w]),Y.jsx("div",{ref:F.setFloating,"data-radix-popper-content-wrapper":"",style:{...X,transform:L?X.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ie,"--radix-popper-transform-origin":[B.transformOrigin?.x,B.transformOrigin?.y].join(" "),...B.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:Y.jsx(kF,{scope:r,placedSide:z,onArrowChange:h,arrowX:G,arrowY:te,shouldHideArrow:re,children:Y.jsx(fi.div,{"data-side":z,"data-align":Z,...S,ref:f,style:{...S.style,animation:L?void 0:"none"}})})})});GR.displayName=rm;var XR="PopperArrow",NF={top:"bottom",right:"left",bottom:"top",left:"right"},UR=M.forwardRef(function(e,r){const{__scopePopper:n,...i}=e,s=MF(XR,n),o=NF[s.placedSide];return Y.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:Y.jsx(xF,{...i,ref:r,style:{...i.style,display:"block"}})})});UR.displayName=XR;function LF(t){return t!==null}var jF=t=>({name:"transformOrigin",options:t,fn(e){const{placement:r,rects:n,middlewareData:i}=e,o=i.arrow?.centerOffset!==0,a=o?0:t.arrowWidth,c=o?0:t.arrowHeight,[l,d]=WR(r),p={start:"0%",center:"50%",end:"100%"}[d],m=(i.arrow?.x??0)+a/2,g=(i.arrow?.y??0)+c/2;let v="",S="";return l==="bottom"?(v=o?p:`${m}px`,S=`${-c}px`):l==="top"?(v=o?p:`${m}px`,S=`${n.floating.height+c}px`):l==="right"?(v=`${-c}px`,S=o?p:`${g}px`):l==="left"&&(v=`${n.floating.width+c}px`,S=o?p:`${g}px`),{data:{x:v,y:S}}}});function WR(t){const[e,r="center"]=t.split("-");return[e,r]}var YR=VR,BF=GR,FF=UR,zF="Portal",ZR=M.forwardRef((t,e)=>{const{container:r,...n}=t,[i,s]=M.useState(!1);oo(()=>s(!0),[]);const o=r||i&&globalThis?.document?.body;return o?Np.createPortal(Y.jsx(fi.div,{...n,ref:e}),o):null});ZR.displayName=zF;function HF(t,e){return M.useReducer((r,n)=>e[r][n]??r,t)}var nm=t=>{const{present:e,children:r}=t,n=VF(e),i=typeof r=="function"?r({present:n.isPresent}):M.Children.only(r),s=ki(n.ref,GF(i));return typeof r=="function"||n.isPresent?M.cloneElement(i,{ref:s}):null};nm.displayName="Presence";function VF(t){const[e,r]=M.useState(),n=M.useRef(null),i=M.useRef(t),s=M.useRef("none"),o=t?"mounted":"unmounted",[a,c]=HF(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return M.useEffect(()=>{const l=_c(n.current);s.current=a==="mounted"?l:"none"},[a]),oo(()=>{const l=n.current,d=i.current;if(d!==t){const m=s.current,g=_c(l);t?c("MOUNT"):g==="none"||l?.display==="none"?c("UNMOUNT"):c(d&&m!==g?"ANIMATION_OUT":"UNMOUNT"),i.current=t}},[t,c]),oo(()=>{if(e){let l;const d=e.ownerDocument.defaultView??window,p=g=>{const S=_c(n.current).includes(g.animationName);if(g.target===e&&S&&(c("ANIMATION_END"),!i.current)){const C=e.style.animationFillMode;e.style.animationFillMode="forwards",l=d.setTimeout(()=>{e.style.animationFillMode==="forwards"&&(e.style.animationFillMode=C)})}},m=g=>{g.target===e&&(s.current=_c(n.current))};return e.addEventListener("animationstart",m),e.addEventListener("animationcancel",p),e.addEventListener("animationend",p),()=>{d.clearTimeout(l),e.removeEventListener("animationstart",m),e.removeEventListener("animationcancel",p),e.removeEventListener("animationend",p)}}else c("ANIMATION_END")},[e,c]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:M.useCallback(l=>{n.current=l?getComputedStyle(l):null,r(l)},[])}}function _c(t){return t?.animationName||"none"}function GF(t){let e=Object.getOwnPropertyDescriptor(t.props,"ref")?.get,r=e&&"isReactWarning"in e&&e.isReactWarning;return r?t.ref:(e=Object.getOwnPropertyDescriptor(t,"ref")?.get,r=e&&"isReactWarning"in e&&e.isReactWarning,r?t.props.ref:t.props.ref||t.ref)}var XF=function(t){if(typeof document>"u")return null;var e=Array.isArray(t)?t[0]:t;return e.ownerDocument.body},ks=new WeakMap,Ec=new WeakMap,Pc={},lf=0,qR=function(t){return t&&(t.host||qR(t.parentNode))},UF=function(t,e){return e.map(function(r){if(t.contains(r))return r;var n=qR(r);return n&&t.contains(n)?n:(console.error("aria-hidden",r,"in not contained inside",t,". Doing nothing"),null)}).filter(function(r){return!!r})},WF=function(t,e,r,n){var i=UF(e,Array.isArray(t)?t:[t]);Pc[r]||(Pc[r]=new WeakMap);var s=Pc[r],o=[],a=new Set,c=new Set(i),l=function(p){!p||a.has(p)||(a.add(p),l(p.parentNode))};i.forEach(l);var d=function(p){!p||c.has(p)||Array.prototype.forEach.call(p.children,function(m){if(a.has(m))d(m);else try{var g=m.getAttribute(n),v=g!==null&&g!=="false",S=(ks.get(m)||0)+1,C=(s.get(m)||0)+1;ks.set(m,S),s.set(m,C),o.push(m),S===1&&v&&Ec.set(m,!0),C===1&&m.setAttribute(r,"true"),v||m.setAttribute(n,"true")}catch(w){console.error("aria-hidden: cannot operate on ",m,w)}})};return d(e),a.clear(),lf++,function(){o.forEach(function(p){var m=ks.get(p)-1,g=s.get(p)-1;ks.set(p,m),s.set(p,g),m||(Ec.has(p)||p.removeAttribute(n),Ec.delete(p)),g||p.removeAttribute(r)}),lf--,lf||(ks=new WeakMap,ks=new WeakMap,Ec=new WeakMap,Pc={})}},YF=function(t,e,r){r===void 0&&(r="data-aria-hidden");var n=Array.from(Array.isArray(t)?t:[t]),i=XF(t);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live], script"))),WF(n,i,r,"aria-hidden")):function(){return null}},cl="right-scroll-bar-position",ll="width-before-scroll-bar",ZF="with-scroll-bars-hidden",qF="--removed-body-scroll-bar-size";function df(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}function JF(t,e){var r=K.useState(function(){return{value:t,callback:e,facade:{get current(){return r.value},set current(n){var i=r.value;i!==n&&(r.value=n,r.callback(n,i))}}}})[0];return r.callback=e,r.facade}var KF=typeof window<"u"?M.useLayoutEffect:M.useEffect,Vy=new WeakMap;function QF(t,e){var r=JF(null,function(n){return t.forEach(function(i){return df(i,n)})});return KF(function(){var n=Vy.get(r);if(n){var i=new Set(n),s=new Set(t),o=r.current;i.forEach(function(a){s.has(a)||df(a,null)}),s.forEach(function(a){i.has(a)||df(a,o)})}Vy.set(r,t)},[t]),r}function $F(t){return t}function ez(t,e){e===void 0&&(e=$F);var r=[],n=!1,i={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:t},useMedium:function(s){var o=e(s,n);return r.push(o),function(){r=r.filter(function(a){return a!==o})}},assignSyncMedium:function(s){for(n=!0;r.length;){var o=r;r=[],o.forEach(s)}r={push:function(a){return s(a)},filter:function(){return r}}},assignMedium:function(s){n=!0;var o=[];if(r.length){var a=r;r=[],a.forEach(s),o=r}var c=function(){var d=o;o=[],d.forEach(s)},l=function(){return Promise.resolve().then(c)};l(),r={push:function(d){o.push(d),l()},filter:function(d){return o=o.filter(d),r}}}};return i}function tz(t){t===void 0&&(t={});var e=ez(null);return e.options=pr({async:!0,ssr:!1},t),e}var JR=function(t){var e=t.sideCar,r=eo(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=e.read();if(!n)throw new Error("Sidecar medium not found");return M.createElement(n,pr({},r))};JR.isSideCarExport=!0;function rz(t,e){return t.useMedium(e),JR}var KR=tz(),uf=function(){},Bd=M.forwardRef(function(t,e){var r=M.useRef(null),n=M.useState({onScrollCapture:uf,onWheelCapture:uf,onTouchMoveCapture:uf}),i=n[0],s=n[1],o=t.forwardProps,a=t.children,c=t.className,l=t.removeScrollBar,d=t.enabled,p=t.shards,m=t.sideCar,g=t.noRelative,v=t.noIsolation,S=t.inert,C=t.allowPinchZoom,w=t.as,y=w===void 0?"div":w,f=t.gapMode,u=eo(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),h=m,b=QF([r,e]),A=pr(pr({},u),i);return M.createElement(M.Fragment,null,d&&M.createElement(h,{sideCar:KR,removeScrollBar:l,shards:p,noRelative:g,noIsolation:v,inert:S,setCallbacks:s,allowPinchZoom:!!C,lockRef:r,gapMode:f}),o?M.cloneElement(M.Children.only(a),pr(pr({},A),{ref:b})):M.createElement(y,pr({},A,{className:c,ref:b}),a))});Bd.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Bd.classNames={fullWidth:ll,zeroRight:cl};var nz=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function iz(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=nz();return e&&t.setAttribute("nonce",e),t}function sz(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function oz(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var az=function(){var t=0,e=null;return{add:function(r){t==0&&(e=iz())&&(sz(e,r),oz(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},cz=function(){var t=az();return function(e,r){M.useEffect(function(){return t.add(e),function(){t.remove()}},[e&&r])}},QR=function(){var t=cz(),e=function(r){var n=r.styles,i=r.dynamic;return t(n,i),null};return e},lz={left:0,top:0,right:0,gap:0},ff=function(t){return parseInt(t||"",10)||0},dz=function(t){var e=window.getComputedStyle(document.body),r=e[t==="padding"?"paddingLeft":"marginLeft"],n=e[t==="padding"?"paddingTop":"marginTop"],i=e[t==="padding"?"paddingRight":"marginRight"];return[ff(r),ff(n),ff(i)]},uz=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return lz;var e=dz(t),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,n-r+e[2]-e[0])}},fz=QR(),Us="data-scroll-locked",pz=function(t,e,r,n){var i=t.left,s=t.top,o=t.right,a=t.gap;return r===void 0&&(r="margin"),`
207
+ .`.concat(ZF,` {
208
+ overflow: hidden `).concat(n,`;
209
+ padding-right: `).concat(a,"px ").concat(n,`;
210
+ }
211
+ body[`).concat(Us,`] {
212
+ overflow: hidden `).concat(n,`;
213
+ overscroll-behavior: contain;
214
+ `).concat([e&&"position: relative ".concat(n,";"),r==="margin"&&`
215
+ padding-left: `.concat(i,`px;
216
+ padding-top: `).concat(s,`px;
217
+ padding-right: `).concat(o,`px;
218
+ margin-left:0;
219
+ margin-top:0;
220
+ margin-right: `).concat(a,"px ").concat(n,`;
221
+ `),r==="padding"&&"padding-right: ".concat(a,"px ").concat(n,";")].filter(Boolean).join(""),`
222
+ }
223
+
224
+ .`).concat(cl,` {
225
+ right: `).concat(a,"px ").concat(n,`;
226
+ }
227
+
228
+ .`).concat(ll,` {
229
+ margin-right: `).concat(a,"px ").concat(n,`;
230
+ }
231
+
232
+ .`).concat(cl," .").concat(cl,` {
233
+ right: 0 `).concat(n,`;
234
+ }
235
+
236
+ .`).concat(ll," .").concat(ll,` {
237
+ margin-right: 0 `).concat(n,`;
238
+ }
239
+
240
+ body[`).concat(Us,`] {
241
+ `).concat(qF,": ").concat(a,`px;
242
+ }
243
+ `)},Gy=function(){var t=parseInt(document.body.getAttribute(Us)||"0",10);return isFinite(t)?t:0},hz=function(){M.useEffect(function(){return document.body.setAttribute(Us,(Gy()+1).toString()),function(){var t=Gy()-1;t<=0?document.body.removeAttribute(Us):document.body.setAttribute(Us,t.toString())}},[])},mz=function(t){var e=t.noRelative,r=t.noImportant,n=t.gapMode,i=n===void 0?"margin":n;hz();var s=M.useMemo(function(){return uz(i)},[i]);return M.createElement(fz,{styles:pz(s,!e,i,r?"":"!important")})},Op=!1;if(typeof window<"u")try{var Tc=Object.defineProperty({},"passive",{get:function(){return Op=!0,!0}});window.addEventListener("test",Tc,Tc),window.removeEventListener("test",Tc,Tc)}catch{Op=!1}var Ms=Op?{passive:!1}:!1,gz=function(t){return t.tagName==="TEXTAREA"},$R=function(t,e){if(!(t instanceof Element))return!1;var r=window.getComputedStyle(t);return r[e]!=="hidden"&&!(r.overflowY===r.overflowX&&!gz(t)&&r[e]==="visible")},vz=function(t){return $R(t,"overflowY")},bz=function(t){return $R(t,"overflowX")},Xy=function(t,e){var r=e.ownerDocument,n=e;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var i=e_(t,n);if(i){var s=t_(t,n),o=s[1],a=s[2];if(o>a)return!0}n=n.parentNode}while(n&&n!==r.body);return!1},yz=function(t){var e=t.scrollTop,r=t.scrollHeight,n=t.clientHeight;return[e,r,n]},Sz=function(t){var e=t.scrollLeft,r=t.scrollWidth,n=t.clientWidth;return[e,r,n]},e_=function(t,e){return t==="v"?vz(e):bz(e)},t_=function(t,e){return t==="v"?yz(e):Sz(e)},wz=function(t,e){return t==="h"&&e==="rtl"?-1:1},Cz=function(t,e,r,n,i){var s=wz(t,window.getComputedStyle(e).direction),o=s*n,a=r.target,c=e.contains(a),l=!1,d=o>0,p=0,m=0;do{if(!a)break;var g=t_(t,a),v=g[0],S=g[1],C=g[2],w=S-C-s*v;(v||w)&&e_(t,a)&&(p+=w,m+=v);var y=a.parentNode;a=y&&y.nodeType===Node.DOCUMENT_FRAGMENT_NODE?y.host:y}while(!c&&a!==document.body||c&&(e.contains(a)||e===a));return(d&&Math.abs(p)<1||!d&&Math.abs(m)<1)&&(l=!0),l},Ic=function(t){return"changedTouches"in t?[t.changedTouches[0].clientX,t.changedTouches[0].clientY]:[0,0]},Uy=function(t){return[t.deltaX,t.deltaY]},Wy=function(t){return t&&"current"in t?t.current:t},Az=function(t,e){return t[0]===e[0]&&t[1]===e[1]},Rz=function(t){return`
244
+ .block-interactivity-`.concat(t,` {pointer-events: none;}
245
+ .allow-interactivity-`).concat(t,` {pointer-events: all;}
246
+ `)},_z=0,Ns=[];function Ez(t){var e=M.useRef([]),r=M.useRef([0,0]),n=M.useRef(),i=M.useState(_z++)[0],s=M.useState(QR)[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(i));var S=mo([t.lockRef.current],(t.shards||[]).map(Wy),!0).filter(Boolean);return S.forEach(function(C){return C.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),S.forEach(function(C){return C.classList.remove("allow-interactivity-".concat(i))})}}},[t.inert,t.lockRef.current,t.shards]);var a=M.useCallback(function(S,C){if("touches"in S&&S.touches.length===2||S.type==="wheel"&&S.ctrlKey)return!o.current.allowPinchZoom;var w=Ic(S),y=r.current,f="deltaX"in S?S.deltaX:y[0]-w[0],u="deltaY"in S?S.deltaY:y[1]-w[1],h,b=S.target,A=Math.abs(f)>Math.abs(u)?"h":"v";if("touches"in S&&A==="h"&&b.type==="range")return!1;var R=Xy(A,b);if(!R)return!0;if(R?h=A:(h=A==="v"?"h":"v",R=Xy(A,b)),!R)return!1;if(!n.current&&"changedTouches"in S&&(f||u)&&(n.current=h),!h)return!0;var _=n.current||h;return Cz(_,C,S,_==="h"?f:u)},[]),c=M.useCallback(function(S){var C=S;if(!(!Ns.length||Ns[Ns.length-1]!==s)){var w="deltaY"in C?Uy(C):Ic(C),y=e.current.filter(function(h){return h.name===C.type&&(h.target===C.target||C.target===h.shadowParent)&&Az(h.delta,w)})[0];if(y&&y.should){C.cancelable&&C.preventDefault();return}if(!y){var f=(o.current.shards||[]).map(Wy).filter(Boolean).filter(function(h){return h.contains(C.target)}),u=f.length>0?a(C,f[0]):!o.current.noIsolation;u&&C.cancelable&&C.preventDefault()}}},[]),l=M.useCallback(function(S,C,w,y){var f={name:S,delta:C,target:w,should:y,shadowParent:Pz(w)};e.current.push(f),setTimeout(function(){e.current=e.current.filter(function(u){return u!==f})},1)},[]),d=M.useCallback(function(S){r.current=Ic(S),n.current=void 0},[]),p=M.useCallback(function(S){l(S.type,Uy(S),S.target,a(S,t.lockRef.current))},[]),m=M.useCallback(function(S){l(S.type,Ic(S),S.target,a(S,t.lockRef.current))},[]);M.useEffect(function(){return Ns.push(s),t.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:m}),document.addEventListener("wheel",c,Ms),document.addEventListener("touchmove",c,Ms),document.addEventListener("touchstart",d,Ms),function(){Ns=Ns.filter(function(S){return S!==s}),document.removeEventListener("wheel",c,Ms),document.removeEventListener("touchmove",c,Ms),document.removeEventListener("touchstart",d,Ms)}},[]);var g=t.removeScrollBar,v=t.inert;return M.createElement(M.Fragment,null,v?M.createElement(s,{styles:Rz(i)}):null,g?M.createElement(mz,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function Pz(t){for(var e=null;t!==null;)t instanceof ShadowRoot&&(e=t.host,t=t.host),t=t.parentNode;return e}const Tz=rz(KR,Ez);var r_=M.forwardRef(function(t,e){return M.createElement(Bd,pr({},t,{ref:e,sideCar:Tz}))});r_.classNames=Bd.classNames;var n_="Popover",[i_,CV]=TR(n_,[FR]),Fd=FR(),[AV,Mi]=i_(n_),s_="PopoverAnchor",Iz=M.forwardRef((t,e)=>{const{__scopePopover:r,...n}=t,i=Mi(s_,r),s=Fd(r),{onCustomAnchorAdd:o,onCustomAnchorRemove:a}=i;return M.useEffect(()=>(o(),()=>a()),[o,a]),Y.jsx(YR,{...s,...n,ref:e})});Iz.displayName=s_;var o_="PopoverTrigger",a_=M.forwardRef((t,e)=>{const{__scopePopover:r,...n}=t,i=Mi(o_,r),s=Fd(r),o=ki(e,i.triggerRef),a=Y.jsx(fi.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":f_(i.open),...n,ref:o,onClick:Ei(t.onClick,i.onOpenToggle)});return i.hasCustomAnchor?a:Y.jsx(YR,{asChild:!0,...s,children:a})});a_.displayName=o_;var im="PopoverPortal",[Oz,xz]=i_(im,{forceMount:void 0}),c_=t=>{const{__scopePopover:e,forceMount:r,children:n,container:i}=t,s=Mi(im,e);return Y.jsx(Oz,{scope:e,forceMount:r,children:Y.jsx(nm,{present:r||s.open,children:Y.jsx(ZR,{asChild:!0,container:i,children:n})})})};c_.displayName=im;var ao="PopoverContent",l_=M.forwardRef((t,e)=>{const r=xz(ao,t.__scopePopover),{forceMount:n=r.forceMount,...i}=t,s=Mi(ao,t.__scopePopover);return Y.jsx(nm,{present:n||s.open,children:s.modal?Y.jsx(kz,{...i,ref:e}):Y.jsx(Mz,{...i,ref:e})})});l_.displayName=ao;var Dz=IR("PopoverContent.RemoveScroll"),kz=M.forwardRef((t,e)=>{const r=Mi(ao,t.__scopePopover),n=M.useRef(null),i=ki(e,n),s=M.useRef(!1);return M.useEffect(()=>{const o=n.current;if(o)return YF(o)},[]),Y.jsx(r_,{as:Dz,allowPinchZoom:!0,children:Y.jsx(d_,{...t,ref:i,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:Ei(t.onCloseAutoFocus,o=>{o.preventDefault(),s.current||r.triggerRef.current?.focus()}),onPointerDownOutside:Ei(t.onPointerDownOutside,o=>{const a=o.detail.originalEvent,c=a.button===0&&a.ctrlKey===!0,l=a.button===2||c;s.current=l},{checkForDefaultPrevented:!1}),onFocusOutside:Ei(t.onFocusOutside,o=>o.preventDefault(),{checkForDefaultPrevented:!1})})})}),Mz=M.forwardRef((t,e)=>{const r=Mi(ao,t.__scopePopover),n=M.useRef(!1),i=M.useRef(!1);return Y.jsx(d_,{...t,ref:e,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{t.onCloseAutoFocus?.(s),s.defaultPrevented||(n.current||r.triggerRef.current?.focus(),s.preventDefault()),n.current=!1,i.current=!1},onInteractOutside:s=>{t.onInteractOutside?.(s),s.defaultPrevented||(n.current=!0,s.detail.originalEvent.type==="pointerdown"&&(i.current=!0));const o=s.target;r.triggerRef.current?.contains(o)&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&i.current&&s.preventDefault()}})}),d_=M.forwardRef((t,e)=>{const{__scopePopover:r,trapFocus:n,onOpenAutoFocus:i,onCloseAutoFocus:s,disableOutsidePointerEvents:o,onEscapeKeyDown:a,onPointerDownOutside:c,onFocusOutside:l,onInteractOutside:d,...p}=t,m=Mi(ao,r),g=Fd(r);return uF(),Y.jsx(kR,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:i,onUnmountAutoFocus:s,children:Y.jsx(xR,{asChild:!0,disableOutsidePointerEvents:o,onInteractOutside:d,onEscapeKeyDown:a,onPointerDownOutside:c,onFocusOutside:l,onDismiss:()=>m.onOpenChange(!1),children:Y.jsx(BF,{"data-state":f_(m.open),role:"dialog",id:m.contentId,...g,...p,ref:e,style:{...p.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),u_="PopoverClose",Nz=M.forwardRef((t,e)=>{const{__scopePopover:r,...n}=t,i=Mi(u_,r);return Y.jsx(fi.button,{type:"button",...n,ref:e,onClick:Ei(t.onClick,()=>i.onOpenChange(!1))})});Nz.displayName=u_;var Lz="PopoverArrow",jz=M.forwardRef((t,e)=>{const{__scopePopover:r,...n}=t,i=Fd(r);return Y.jsx(FF,{...i,...n,ref:e})});jz.displayName=Lz;function f_(t){return t?"open":"closed"}var Bz=a_,Fz=c_,p_=l_;const Na=M.createContext(null);function zz({children:t}){const e=M.useMemo(()=>new UB,[]);return M.useEffect(()=>()=>{e.destroy()},[e]),M.createElement(Na.Provider,{value:e},t)}function As(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}const h_=({stream:t,muted:e})=>{var r;const n=M.useRef(null),i=(r=M.useContext(Na))===null||r===void 0?void 0:r.getLocalMedia(),[s,o]=M.useState(),a=M.useCallback(c=>{o(c)},[]);return M.useEffect(()=>(i?.addListener(Tp,a),()=>{i?.removeListener(Tp,a)}),[i]),M.useEffect(()=>{!n.current||e||!t||!s||(n.current.srcObject!==t&&(n.current.srcObject=t),n.current.setSinkId&&n.current.setSinkId(s))},[t,n,s,e]),n},m_=M.forwardRef((t,e)=>{var r,{muted:n,mirror:i=!1,stream:s,onVideoResize:o}=t,a=As(t,["muted","mirror","stream","onVideoResize"]);const c=(r=M.useContext(Na))===null||r===void 0?void 0:r.getRoomConnection(),l=M.useRef(null),d=h_({muted:n,stream:s});return M.useImperativeHandle(e,()=>Object.assign(l.current,{captureAspectRatio:()=>{if(!l.current)return null;const p=l.current.videoHeight,m=l.current.videoWidth;return m&&p&&m+p>20?m/p:null}})),M.useEffect(()=>{if(!l.current)return;const p=new ResizeObserver(zA(()=>{if(l.current&&s?.id){const m=l.current.clientWidth,g=l.current.clientHeight;c?.reportStreamResolution(s.id,m,g),o&&o({width:m,height:g,stream:s})}},{delay:1e3,edges:!0}));return p.observe(l.current),()=>{p.disconnect()}},[s]),M.useEffect(()=>{l.current&&(l.current.srcObject!==s&&(l.current.srcObject=s),l.current.muted!==n&&(l.current.muted=!!n))},[n,s,l]),M.createElement(M.Fragment,null,M.createElement("video",Object.assign({ref:l,autoPlay:!0,playsInline:!0},a,{style:Object.assign({transform:i?"scaleX(-1)":"none",width:"100%",height:"100%"},a.style)})),M.createElement("audio",{ref:d,autoPlay:!0,playsInline:!0}))});m_.displayName="VideoView";const Hz=12,Vz=12,pf=24;function Gz({clientViews:t,activeVideosSubgridTrigger:e,shouldShowSubgrid:r,spotlightedParticipants:n,maximizedParticipant:i,isPhoneResolution:s}){if(!r)return[];const a=n.length>0,l=(i?t.filter(v=>v.id!==i.id):t).filter(v=>!v.isPresentation&&!n.includes(v)),d=l.filter(v=>!v.isVideoEnabled),p=l.filter(v=>v.isVideoEnabled).length>e,m=l.filter(v=>!d.includes(v)&&v.isAudioEnabled),g=l.filter(v=>!d.includes(v)&&!v.isAudioEnabled);if(d.length&&a)return[...g,...d];if(s&&l.length>pf){const v=[...m,...g],S=v.slice(0,pf);return S.length<=pf?[...v.filter(C=>!S.includes(C)),...d]:[...g,...d]}if(p&&g.length){const S=[...m,...g].slice(0,e);return S.length<=e?[...g.filter(C=>!S.includes(C)),...d]:[...g,...d]}return d}function Xz({activeVideosSubgridTrigger:t=Vz,stageParticipantLimit:e=Hz,forceSubgrid:r=!0,enableSubgrid:n=!0,maximizedParticipant:i,floatingParticipant:s,isConstrained:o=!1}={}){var a;const[c,l]=M.useState({allClientViews:[],spotlightedParticipants:[],numParticipants:0}),d=(a=M.useContext(Na))===null||a===void 0?void 0:a.getGrid();if(!d)throw new Error("useGridParticipants must be used within a WherebyProvider");const p=M.useCallback(R=>{l(_=>Object.assign(Object.assign({},_),{allClientViews:R}))},[l]),m=M.useCallback(R=>{l(_=>Object.assign(Object.assign({},_),{spotlightedParticipants:R}))},[l]),g=M.useCallback(R=>{l(_=>Object.assign(Object.assign({},_),{numParticipants:R}))},[l]);M.useEffect(()=>{const R=d.subscribeClientViews(p),_=d.subscribeSpotlightedParticipants(m),E=d.subscribeNumberOfClientViews(g);return()=>{R(),_(),E()}},[d]);const v=M.useMemo(()=>c.allClientViews,[c.allClientViews]),S=M.useMemo(()=>c.spotlightedParticipants,[c.spotlightedParticipants]),C=M.useMemo(()=>c.numParticipants,[c.numParticipants]),w=M.useMemo(()=>s,[s]),y=M.useMemo(()=>w?v.filter(R=>R.id!==w.id):v,[v,w]),f=M.useMemo(()=>n?r?!0:C>e:!1,[r,C,e,n]),u=M.useMemo(()=>Gz({clientViews:y,activeVideosSubgridTrigger:t,shouldShowSubgrid:f,spotlightedParticipants:S,maximizedParticipant:i,isPhoneResolution:o}),[y,f,t,S,o]),h=M.useMemo(()=>y.filter(R=>!u.includes(R)),[y,u]),b=M.useMemo(()=>i?[i]:S,[S,i]),A=M.useMemo(()=>h.filter(R=>!b.includes(R)),[h,b]);return{floatingClientView:w,clientViewsInGrid:A,clientViewsInPresentationGrid:b,clientViewsInSubgrid:u,spotlightedParticipants:S}}const Uz=(t="")=>(t=t.trim(),t?t.split(/-| /).map(r=>ZB(r)[0]).slice(0,3):[]),Wz=({name:t})=>{const e=Uz(t),r=[0,56,48,40][e.length]||32,n=e.join("").toUpperCase();return M.createElement("svg",{viewBox:"-60 -60 120 120","aria-hidden":"true",style:{height:"100%",pointerEvents:"none",width:"100%"}},M.createElement("text",{x:0,y:0,textAnchor:"middle",dominantBaseline:"central",fontSize:r},n))};function Yz(t){var{avatarUrl:e,className:r,size:n=40,name:i,variant:s="round"}=t,o=As(t,["avatarUrl","className","size","name","variant"]);return M.createElement("div",Object.assign({style:{height:`${n}px`,width:`${n}px`,userSelect:"none",overflow:"hidden",borderRadius:s==="round"?"50%":"4px",backgroundColor:"#f8e3c8"},className:r,title:i},o),!e&&i?M.createElement(Wz,{name:i}):M.createElement("img",{src:e||"",alt:"",style:{height:"100%",width:"100%",objectFit:"cover",maxWidth:"initial"}}))}function Zz({avatarUrl:t,displayName:e,isSmallCell:r,withRoundedCorners:n,stream:i,muted:s}){const o=h_({stream:i,muted:s});return M.createElement(M.Fragment,null,M.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",position:"absolute",top:0,left:0,height:"100%",width:"100%",borderRadius:n?"8px":"0"}},M.createElement("div",{style:{height:r?60:80,width:r?60:80,pointerEvents:"none",position:"relative"}},M.createElement(Yz,{variant:"square",avatarUrl:t,name:e,size:r?60:80}))),M.createElement("audio",{ref:o,autoPlay:!0,playsInline:!0}))}const g_=Bz,v_=M.forwardRef((t,e)=>{var{style:r,align:n="center",sideOffset:i=4}=t,s=As(t,["style","align","sideOffset"]);return M.createElement(Fz,null,M.createElement(p_,Object.assign({ref:e,align:n,sideOffset:i,style:Object.assign({width:"200px",backgroundColor:"#fff",border:"1px solid #e5e5e5",borderRadius:"0.375rem",boxShadow:"0 1px 2px 0 rgb(0 0 0 / 0.05)",color:"#333",fontSize:"14px",lineHeight:"1.5",padding:"16px",zIndex:50,outline:"none"},r)},s)))});v_.displayName=p_.displayName;const qz=M.createContext({}),b_=M.createContext({}),y_=()=>{const t=M.useContext(qz),e=M.useContext(b_);if(!e)throw new Error("useGridCell must be used within a GridCell");return Object.assign(Object.assign({},t),e)},Jz=M.createContext({}),Kz=()=>{const t=M.useContext(Jz),e=y_();if(!t)throw new Error("useParticipantMenu must be used within a ParticipantMenu");return Object.assign(Object.assign({},t),e)},Qz=M.forwardRef((t,e)=>{var{children:r,style:n}=t,i=As(t,["children","style"]);return M.createElement(v_,Object.assign({ref:e,style:Object.assign({display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",minWidth:"180px",maxWidth:"300px",maxHeight:"100vh",overflowY:"auto",padding:0},n)},i),r)});Qz.displayName="ParticipantMenuContent";const $z=M.forwardRef((t,e)=>{var{children:r,style:n}=t,i=As(t,["children","style"]);return M.createElement(g_,Object.assign({ref:e,style:Object.assign({position:"absolute",top:"10px",right:"20px",textDecoration:"none",whiteSpace:"nowrap",border:"none",cursor:"pointer"},n)},i),r)});$z.displayName=g_.displayName;const e6=M.forwardRef((t,e)=>{var r,{children:n,style:i,participantAction:s}=t,o=As(t,["children","style","participantAction"]);const{participant:a,setOpen:c,maximizedParticipant:l,setMaximizedParticipant:d,setFloatingParticipant:p,floatingParticipant:m}=Kz(),g=(r=M.useContext(Na))===null||r===void 0?void 0:r.getGrid(),{spotlightedParticipants:v}=Xz(),S=v.find(f=>f.id===a.id),C=l?.id===a.id,w=m?.id===a.id;let y;switch(s){case"maximize":y=()=>{d(C?null:a),c(!1)};break;case"spotlight":y=()=>{S?g?.removeSpotlight(a.id):g?.spotlightParticipant(a.id),c(!1)};break;case"float":y=()=>{p(w?null:a),c(!1)};break}return M.createElement("button",Object.assign({ref:e,role:"menuitem",tabIndex:-1,onClick:y??o.onClick,style:Object.assign({alignItems:"stretch",backgroundColor:"transparent",border:"none",cursor:"pointer",display:"flex",height:"40px",lineHeight:"40px",minWidth:"140px",padding:"0 12px",textAlign:"left",textDecoration:"none",whiteSpace:"nowrap",width:"100%"},i)},o),n)});e6.displayName="ParticipantMenuItem";const t6=M.forwardRef(({className:t,participant:e,children:r},n)=>{const[i,s]=M.useState(!1),o=M.useCallback(()=>{s(!0)},[]),a=M.useCallback(()=>{s(!1)},[]);return M.createElement(b_.Provider,{value:{participant:e,isHovered:i}},M.createElement("div",{ref:n,className:t,onMouseEnter:o,onMouseLeave:a,style:{height:"100%",width:"100%"}},r))});t6.displayName="GridCell";const r6=M.forwardRef((t,e)=>{var{stream:r,style:n}=t,i=As(t,["stream","style"]);const s=M.useRef(null),{onSetClientAspectRatio:o,clientAspectRatios:a,participant:c,isConstrained:l}=y_();if(!c)return null;const d=a[c.id];M.useImperativeHandle(e,()=>s.current);const p=M.useCallback(()=>{const g=s.current&&s.current.captureAspectRatio();g&&g!==d&&c.id&&o({aspectRatio:g,clientId:c.id})},[a,c.id,o]),m=r||c.stream;return!m||!c.isVideoEnabled?M.createElement(Zz,{isSmallCell:!1,displayName:c?.displayName||"Guest",withRoundedCorners:!0,muted:c.isLocalClient,stream:c.stream}):M.createElement(m_,Object.assign({ref:s,style:Object.assign(Object.assign({borderRadius:l?0:"8px"},l?{objectFit:"cover"}:{}),n),muted:c.isLocalClient},i,{stream:m,onVideoResize:p}))});r6.displayName="GridVideoView";var xp={};try{xp.WeakMap=WeakMap}catch{xp.WeakMap=function(e,r){var n=r.defineProperty,i=r.hasOwnProperty,s=o.prototype;return s.delete=function(c){return this.has(c)&&delete c[this._]},s.get=function(c){return this.has(c)?c[this._]:void 0},s.has=function(c){return i.call(c,this._)},s.set=function(c,l){return n(c,this._,{configurable:!0,value:l}),this},o;function o(c){n(this,"_",{value:"_@ungap/weakmap"+e++}),c&&c.forEach(a,this)}function a(c){this.set(c[0],c[1])}}(Math.random(),Object)}const Xr=xp.WeakMap,n6=t=>t.replace(/(([A-Z0-9])([A-Z0-9][a-z]))|(([a-z])([A-Z]))/g,"$2$5-$3$6").toLowerCase();var dl={};try{dl.Event=new Event(".").constructor}catch{try{dl.Event=new CustomEvent(".").constructor}catch{dl.Event=function(n,i){i||(i={});var s=document.createEvent("Event"),o=!!i.bubbles,a=!!i.cancelable;s.initEvent(n,o,a);try{s.bubbles=o,s.cancelable=a}catch{}return s}}}const i6=dl.Event;var Dp={};try{Dp.WeakSet=WeakSet}catch{(function(e){var r=new e,n=i.prototype;n.add=function(s){return r.get(this).set(s,1),this},n.delete=function(s){return r.get(this).delete(s)},n.has=function(s){return r.get(this).has(s)},Dp.WeakSet=i;function i(s){r.set(this,new e),s&&s.forEach(this.add,this)}})(WeakMap)}const s6=Dp.WeakSet;var Ri="-"+Math.random().toFixed(6)+"%",sm=!1;try{(function(t,e,r){return e in t&&(t.innerHTML="<p "+r+'="'+Ri+'"></p>',t[e].childNodes[0].getAttribute(r)==Ri)})(document.createElement("template"),"content","tabindex")||(Ri="_dt: "+Ri.slice(1,-1)+";",sm=!0)}catch{}var zd="<!--"+Ri+"-->",o6=8,a6=1,c6=3,Yy=/^(?:plaintext|script|style|textarea|title|xmp)$/i,l6=/^(?:area|base|br|col|embed|hr|img|input|keygen|link|menuitem|meta|param|source|track|wbr)$/i;function S_(t){return t.join(zd).replace(u6,m6).replace(d6,p6)}var Hd=" \\f\\n\\r\\t",w_="[^"+Hd+`\\/>"'=]+`,om="["+Hd+"]+"+w_,C_="<([A-Za-z]+[A-Za-z0-9:._-]*)((?:",A_=`(?:\\s*=\\s*(?:'[^']*?'|"[^"]*?"|<[^>]*?>|`+w_.replace("\\/","")+"))?)",d6=new RegExp(C_+om+A_+"+)(["+Hd+"]*/?>)","g"),u6=new RegExp(C_+om+A_+"*)(["+Hd+"]*/>)","g"),f6=new RegExp("("+om+`\\s*=\\s*)(['"]?)`+zd+"\\2","gi");function p6(t,e,r,n){return"<"+e+r.replace(f6,h6)+n}function h6(t,e,r){return e+(r||'"')+Ri+(r||'"')}function m6(t,e,r){return l6.test(e)?t:"<"+e+r+"></"+e+">"}const{isArray:Ul}=Array,{slice:ea}=[],La=t=>({get:e=>t.get(e),set:(e,r)=>(t.set(e,r),r)}),g6=1,R_=111,v6=({firstChild:t,lastChild:e})=>{const r=document.createRange();return r.setStartAfter(t),r.setEndAfter(e),r.deleteContents(),t},Ls=(t,e)=>t.nodeType===R_?1/e<0?e?v6(t):t.lastChild:e?t.valueOf():t.firstChild:t,b6=t=>{const{childNodes:e}=t,{length:r}=e;if(r<2)return r?e[0]:t;const n=ea.call(e,0),i=n[0],s=n[r-1];return{ELEMENT_NODE:g6,nodeType:R_,firstChild:i,lastChild:s,valueOf(){if(e.length!==r){let o=0;for(;o<r;)t.appendChild(n[o++])}return t}}};var __=function(t){var e="fragment",r="template",n="content"in o(r),i=n?function(c){var l=o(r);return l.innerHTML=c,l.content}:function(c){var l=o(e),d=o(r),p=null;if(/^[^\S]*?<(col(?:group)?|t(?:head|body|foot|r|d|h))/i.test(c)){var m=RegExp.$1;d.innerHTML="<table>"+c+"</table>",p=d.querySelectorAll(m)}else d.innerHTML=c,p=d.childNodes;return s(l,p),l};return function(l,d){return(d==="svg"?a:i)(l)};function s(c,l){for(var d=l.length;d--;)c.appendChild(l[0])}function o(c){return c===e?t.createDocumentFragment():t.createElementNS("http://www.w3.org/1999/xhtml",c)}function a(c){var l=o(e),d=o("div");return d.innerHTML='<svg xmlns="http://www.w3.org/2000/svg">'+c+"</svg>",s(l,d.firstChild.childNodes),l}}(document);const js=(t,e,r,n,i)=>{const s=r.length;let o=e.length,a=s,c=0,l=0,d=null;for(;c<o||l<a;)if(o===c){const p=a<s?l?n(r[l-1],-0).nextSibling:n(r[a],0):i;for(;l<a;)t.insertBefore(n(r[l++],1),p)}else if(a===l)for(;c<o;)(!d||!d.has(e[c]))&&t.removeChild(n(e[c],-1)),c++;else if(e[c]===r[l])c++,l++;else if(e[o-1]===r[a-1])o--,a--;else if(e[c]===r[a-1]&&r[l]===e[o-1]){const p=n(e[--o],-0).nextSibling;t.insertBefore(n(r[l++],1),n(e[c++],-0).nextSibling),t.insertBefore(n(r[--a],1),p),e[o]=r[a]}else{if(!d){d=new Map;let p=l;for(;p<a;)d.set(r[p],p++)}if(d.has(e[c])){const p=d.get(e[c]);if(l<p&&p<a){let m=c,g=1;for(;++m<o&&m<a&&d.get(e[m])===p+g;)g++;if(g>p-l){const v=n(e[c],0);for(;l<p;)t.insertBefore(n(r[l++],1),v)}else t.replaceChild(n(r[l++],1),n(e[c++],-1))}else c++}else t.removeChild(n(e[c++],-1))}return r};var y6=function(t,e,r,n,i){var s=i in t,o=t.createDocumentFragment();o[e](t[n]("g")),o[e](t[n](""));var a=s?t[i](o,!0):o[r](!0);return a.childNodes.length<2?function c(l,d){for(var p=l[r](),m=l.childNodes||[],g=m.length,v=0;d&&v<g;v++)p[e](c(m[v],d));return p}:s?t[i]:function(c,l){return c[r](!!l)}}(document,"appendChild","cloneNode","createTextNode","importNode"),E_="".trim||function(){return String(this).replace(/^\s+|\s+/g,"")},S6=sm?function(t,e){var r=e.join(" ");return e.slice.call(t,0).sort(function(n,i){return r.indexOf(n.name)<=r.indexOf(i.name)?-1:1})}:function(t,e){return e.slice.call(t,0)};function w6(t,e){for(var r=e.length,n=0;n<r;)t=t.childNodes[e[n++]];return t}function P_(t,e,r,n){for(var i=t.childNodes,s=i.length,o=0;o<s;){var a=i[o];switch(a.nodeType){case a6:var c=n.concat(o);C6(a,e,r,c),P_(a,e,r,c);break;case o6:var l=a.textContent;if(l===Ri)r.shift(),e.push(Yy.test(t.nodeName)?qy(t,n):A6(a,n.concat(o)));else switch(l.slice(0,2)){case"/*":if(l.slice(-2)!=="*/")break;case"👻":t.removeChild(a),o--,s--}break;case c6:Yy.test(t.nodeName)&&E_.call(a.textContent)===zd&&(r.shift(),e.push(qy(t,n)));break}o++}}function C6(t,e,r,n){for(var i=t.attributes,s=[],o=[],a=S6(i,r),c=a.length,l=0;l<c;){var d=a[l++],p=d.value===Ri,m;if(p||1<(m=d.value.split(zd)).length){var g=d.name;if(s.indexOf(g)<0){s.push(g);var v=r.shift().replace(p?/^(?:|[\S\s]*?\s)(\S+?)\s*=\s*('|")?$/:new RegExp("^(?:|[\\S\\s]*?\\s)("+g+`)\\s*=\\s*('|")[\\S\\s]*`,"i"),"$1"),S=i[v]||i[v.toLowerCase()];if(p)e.push(Zy(S,n,v,null));else{for(var C=m.length-2;C--;)r.shift();e.push(Zy(S,n,v,m))}}o.push(d)}}c=o.length,l=0;for(var w=0<c&&sm&&!("ownerSVGElement"in t);l<c;){var y=o[l++];w&&(y.value=""),t.removeAttribute(y.name)}var f=t.nodeName;if(/^script$/i.test(f)){var u=document.createElement(f);for(c=i.length,l=0;l<c;)u.setAttributeNode(i[l++].cloneNode(!0));u.textContent=t.textContent,t.parentNode.replaceChild(u,t)}}function A6(t,e){return{type:"any",node:t,path:e}}function Zy(t,e,r,n){return{type:"attr",node:t,path:e,name:r,sparse:n}}function qy(t,e){return{type:"text",node:t,path:e}}var Jy=La(new Xr);function R6(t,e){var r=(t.convert||S_)(e),n=t.transform;n&&(r=n(r));var i=__(r,t.type);T_(i);var s=[];return P_(i,s,e.slice(0),[]),{content:i,updates:function(o){for(var a=[],c=s.length,l=0,d=0;l<c;){var p=s[l++],m=w6(o,p.path);switch(p.type){case"any":a.push({fn:t.any(m,[]),sparse:!1});break;case"attr":var g=p.sparse,v=t.attribute(m,p.name,p.node);g===null?a.push({fn:v,sparse:!1}):(d+=g.length-2,a.push({fn:v,sparse:!0,values:g}));break;case"text":a.push({fn:t.text(m),sparse:!1}),m.textContent="";break}}return c+=d,function(){var S=arguments.length;if(c!==S-1)throw new Error(S-1+" values instead of "+c+`
247
+ `+e.join("${value}"));for(var C=1,w=1;C<S;){var y=a[C-w];if(y.sparse){var f=y.values,u=f[0],h=1,b=f.length;for(w+=b-2;h<b;)u+=arguments[C++]+f[h++];y.fn(u)}else y.fn(arguments[C++])}return o}}}}function _6(t,e){var r=Jy.get(e)||Jy.set(e,R6(t,e));return r.updates(y6.call(document,r.content,!0))}var E6=[];function P6(t){var e=E6,r=T_;return function(n){return e!==n&&(r=_6(t,e=n)),r.apply(null,arguments)}}function T_(t){for(var e=t.childNodes,r=e.length;r--;){var n=e[r];n.nodeType!==1&&E_.call(n.textContent).length===0&&t.removeChild(n)}}var T6=function(){var t=/acit|ex(?:s|g|n|p|$)|rph|ows|mnc|ntw|ine[ch]|zoo|^ord/i,e=/([^A-Z])([A-Z]+)/g;return function(a,c){return"ownerSVGElement"in a?n(a,c):s(a.style,!1)};function r(o,a,c){return a+"-"+c.toLowerCase()}function n(o,a){var c;return a?c=a.cloneNode(!0):(o.setAttribute("style","--hyper:style;"),c=o.getAttributeNode("style")),c.value="",o.setAttributeNode(c),s(c,!0)}function i(o){var a,c=[];for(a in o)c.push(a.replace(e,r),":",o[a],";");return c.join("")}function s(o,a){var c,l;return function(d){var p,m,g,v;switch(typeof d){case"object":if(d){if(c==="object"){if(!a&&l!==d)for(m in l)m in d||(o[m]="")}else a?o.value="":o.cssText="";p=a?{}:o;for(m in d)v=d[m],g=typeof v=="number"&&!t.test(m)?v+"px":v,!a&&/^--/.test(m)?p.setProperty(m,g):p[m]=g;c="object",a?o.value=i(l=p):l=d;break}default:l!=d&&(c="string",l=d,a?o.value=d||"":o.cssText=d||"");break}}}}();const I6=t=>e=>{for(const r in e){const n=r==="role"?r:`aria-${r}`,i=e[r];i==null?t.removeAttribute(n):t.setAttribute(n,i)}},Ky=(t,e)=>{let r,n=!0;const i=document.createAttributeNS(null,e);return s=>{r!==s&&(r=s,r==null?n||(t.removeAttributeNode(i),n=!0):(i.value=s,n&&(t.setAttributeNodeNS(i),n=!1)))}},O6=(t,e,r)=>n=>{r!==!!n&&((r=!!n)?t.setAttribute(e,""):t.removeAttribute(e))},I_=({dataset:t})=>e=>{for(const r in e){const n=e[r];n==null?delete t[r]:t[r]=n}},x6=(t,e)=>{let r,n=e.slice(2);return!(e in t)&&e.toLowerCase()in t&&(n=n.toLowerCase()),i=>{const s=Ul(i)?i:[i,!1];r!==s[0]&&(r&&t.removeEventListener(n,r,s[1]),(r=s[0])&&t.addEventListener(n,r,s[1]))}},D6=t=>e=>{typeof e=="function"?e(t):e.current=t},Qy=(t,e)=>e==="dataset"?I_(t):r=>{t[e]=r},k6=(t,e)=>{let r;return n=>{r!==n&&(r=n,t[e]!==n&&(n==null?(t[e]="",t.removeAttribute(e)):t[e]=n))}},M6=/^(?:form|list)$/i,N6=(t,e)=>t.ownerDocument.createTextNode(e);function Vd(t){return this.type=t,P6(this)}Vd.prototype={attribute(t,e,r){const n=this.type==="svg";switch(e){case"class":if(n)return Ky(t,e);e="className";case"props":return Qy(t,e);case"aria":return I6(t);case"style":return T6(t,r,n);case"ref":return D6(t);case".dataset":return I_(t);default:return e.slice(0,1)==="."?Qy(t,e.slice(1)):e.slice(0,1)==="?"?O6(t,e.slice(1)):e.slice(0,2)==="on"?x6(t,e):e in t&&!(n||M6.test(e))?k6(t,e):Ky(t,e)}},any(t,e){const{type:r}=this;let n=!1,i;const s=o=>{switch(typeof o){case"string":case"number":case"boolean":n?i!==o&&(i=o,e[0].textContent=o):(n=!0,i=o,e=js(t.parentNode,e,[N6(t,o)],Ls,t));break;case"function":s(o(t));break;case"object":case"undefined":if(o==null){n=!1,e=js(t.parentNode,e,[],Ls,t);break}default:if(n=!1,i=o,Ul(o))if(o.length===0)e.length&&(e=js(t.parentNode,e,[],Ls,t));else switch(typeof o[0]){case"string":case"number":case"boolean":s(String(o));break;case"function":s(o.map(L6,t));break;case"object":Ul(o[0])&&(o=o.concat.apply([],o));default:e=js(t.parentNode,e,o,Ls,t);break}else"ELEMENT_NODE"in o?e=js(t.parentNode,e,o.nodeType===11?ea.call(o.childNodes):[o],Ls,t):"text"in o?s(String(o.text)):"any"in o?s(o.any):"html"in o?e=js(t.parentNode,e,ea.call(__([].concat(o.html).join(""),r).childNodes),Ls,t):"length"in o&&s(ea.call(o));break}};return s},text(t){let e;const r=n=>{if(e!==n){e=n;const i=typeof n;i==="object"&&n?"text"in n?r(String(n.text)):"any"in n?r(n.any):"html"in n?r([].concat(n.html).join("")):"length"in n&&r(ea.call(n).join("")):i==="function"?r(n(t)):t.textContent=n??""}};return r}};function L6(t){return t(this)}const{create:O_,freeze:j6,keys:B6}=Object,F6=Vd.prototype,$y=La(new Xr),x_=t=>({html:e0("html",t),svg:e0("svg",t),render(e,r){const n=typeof r=="function"?r():r,i=$y.get(e)||$y.set(e,ma()),s=n instanceof Gd?Wl(t,i,n):n;return s!==i.wire&&(i.wire=s,e.textContent="",e.appendChild(s.valueOf())),e}}),ma=()=>({stack:[],entry:null,wire:null}),e0=(t,e)=>{const r=La(new Xr),n=s=>function(){return Wl(e,s,i.apply(null,arguments))};return i.for=(s,o)=>{const a=r.get(s)||r.set(s,O_(null));return a[o]||(a[o]=n(ma()))},i.node=function(){return Wl(e,ma(),i.apply(null,arguments)).valueOf()},i;function i(){return new Gd(t,H6.apply(null,arguments))}},Wl=(t,e,{type:r,template:n,values:i})=>{const{length:s}=i;D_(t,e,i,s);let{entry:o}=e;if(!o||o.template!==n||o.type!==r){const a=new t(r);e.entry=o={type:r,template:n,tag:a,wire:b6(a(n,...i))}}else o.tag(n,...i);return o.wire},D_=(t,{stack:e},r,n)=>{for(let i=0;i<n;i++){const s=r[i];s instanceof am?r[i]=Wl(t,e[i]||(e[i]=ma()),s):Ul(s)?D_(t,e[i]||(e[i]=ma()),s,s.length):e[i]=null}n<e.length&&e.splice(n)};j6(Gd);function Gd(t,e){this.type=t,this.template=e.shift(),this.values=e}const am=Gd,z6=t=>{const e=O_(F6);return B6(t).forEach(n=>{e[n]=t[n](e[n]||(n==="convert"?S_:String))}),r.prototype=e,x_(r);function r(){return Vd.apply(this,arguments)}},{render:RV,html:_V,svg:EV}=x_(Vd);function H6(){let t=[],e=0,{length:r}=arguments;for(;e<r;)t.push(arguments[e++]);return t}var cm=typeof cancelAnimationFrame=="function",V6=cm?cancelAnimationFrame:clearTimeout,G6=cm?requestAnimationFrame:setTimeout;function k_(t){var e,r,n,i,s;return a(),function(d,p,m){return n=d,i=p,s=m,r||(r=G6(o)),--e<0&&c(!0),c};function o(){a(),n.apply(i,s||[])}function a(){e=1/0,r=cm?0:null}function c(l){var d=!!r;return d&&(V6(r),l&&o()),d}}let $t=null;const X6=t=>{const e=[];return function r(){const n=$t,i=[];$t={hook:r,args:arguments,stack:e,i:0,length:e.length,after:i};try{return t.apply(null,arguments)}finally{$t=n;for(let s=0,{length:o}=i;s<o;s++)i[s]()}}},t0=La(new WeakMap),U6=(t,e,r)=>{t.apply(e,r)},W6={async:!1,always:!1},M_=(t,e)=>typeof e=="function"?e(t):e,N_=(t,e,r,n)=>{const i=$t.i++,{hook:s,args:o,stack:a,length:c}=$t;i===c&&($t.length=a.push({}));const l=a[i];if(l.args=o,i===c){const d=typeof r=="function",{async:p,always:m}=(d?n:r)||n||W6;l.$=d?r(e):M_(void 0,e),l._=p?t0.get(s)||t0.set(s,k_()):U6,l.f=g=>{const v=t(l.$,g);(m||l.$!==v)&&(l.$=v,l._(s,null,l.args))}}return[l.$,l.f]},Y6=(t,e)=>N_(M_,t,void 0,e),Z6=new WeakMap,q6=t=>{const{hook:e,args:r}=$t,n=Z6.get(t),i={hook:e,args:r};return n.some(J6,i)||n.push(i),t.value};function J6({hook:t}){return t===this.hook}const Yl=new WeakMap,r0=La(Yl),n0=()=>{},L_=t=>(e,r)=>{const n=$t.i++,{hook:i,after:s,stack:o,length:a}=$t;if(n<a){const c=o[n],{update:l,values:d,stop:p}=c;if(!r||r.some(B_,d)){c.values=r,t&&p(t);const{clean:m}=c;m&&(c.clean=null,m());const g=()=>{c.clean=e()};t?l(g):s.push(g)}}else{const c=t?k_():n0,l={clean:null,update:c,values:r,stop:n0};$t.length=o.push(l),(r0.get(i)||r0.set(i,[])).push(l);const d=()=>{l.clean=e()};t?l.stop=c(d):s.push(d)}},K6=t=>{(Yl.get(t)||[]).forEach(e=>{const{clean:r,stop:n}=e;n(),r&&(e.clean=null,r())})};Yl.has.bind(Yl);const Q6=L_(!0),$6=L_(!1),j_=(t,e)=>{const r=$t.i++,{stack:n,length:i}=$t;return r===i?$t.length=n.push({$:t(),_:e}):(!e||e.some(B_,n[r]._))&&(n[r]={$:t(),_:e}),n[r].$},eH=(t,e)=>j_(()=>t,e),tH=t=>{const e=$t.i++,{stack:r,length:n}=$t;return e===n&&($t.length=r.push({current:t})),r[e]};function B_(t,e){return t!==this[e]}let F_=null;try{F_=new{o(){}}.o}catch{}let Xd=t=>class extends t{};if(F_){const{getPrototypeOf:t,setPrototypeOf:e}=Object,{construct:r}=typeof Reflect=="object"?Reflect:{construct(n,i,s){const o=[null];for(let c=0;c<i.length;c++)o.push(i[c]);const a=n.bind.apply(n,o);return e(new a,s.prototype)}};Xd=function(n,i){function s(){return r(i?t(n):n,arguments,s)}return e(s.prototype,n.prototype),e(s,n)}}const rH=t=>{const{length:e}=t;let r=0,n=0;for(;n<e;)r=(r<<5)-r+t.charCodeAt(n++),r=r&r;return r.toString(36)},ul={map:{},re:null},z_=t=>new RegExp(`<(/)?(${t.join("|")})([^A-Za-z0-9:._-])`,"g");let lm=null;const H_=(t,e)=>{const{map:r,re:n}=lm||e;return t.replace(n,(i,s,o,a)=>{const{tagName:c,is:l,element:d}=r[o];return d?s?`</${l}>`:`<${l}${a}`:s?`</${c}>`:`<${c} is="${l}"${a}`})},i0=({tagName:t,is:e,element:r})=>r?e:`${t}[is="${e}"]`,nH=()=>lm,s0=t=>{lm=t},iH={useCallback:eH,useContext:q6,useEffect:Q6,useLayoutEffect:$6,useMemo:j_,useReducer:N_,useRef:tH,useState:Y6},{render:sH,html:oH,svg:aH}=z6({transform:()=>t=>H_(t,ul)}),gs="_🔥",{defineProperties:Oc}=Object,o0=new Xr,a0=new Xr,Zl=new Xr,kp=new s6,Er=!0,c0="attributeChangedCallback",fl="connectedCallback",l0=`dis${fl}`,xc=(t,e,r)=>{if(r in t){const n=t[r];e[r]={configurable:Er,value(){return d0.call(this),n.apply(this,arguments)}}}else e[r]={configurable:Er,value:d0}},V_=t=>{const{prototype:e}=t,r=[],n={html:{configurable:Er,get:fH},svg:{configurable:Er,get:pH}};if(n[gs]={value:{events:r,info:null}},"handleEvent"in e||(n.handleEvent={configurable:Er,value:hH}),"render"in e&&e.render.length){const{oninit:c}=e;Oc(e,{oninit:{configurable:Er,value(){const l=X6(this.render.bind(this,iH));Oc(this,{render:{configurable:Er,value:l}}),this.addEventListener("disconnected",K6.bind(null,l),!1),c&&c.apply(this,arguments)}}})}"oninit"in e&&(r.push("init"),xc(e,n,"render")),xc(e,n,c0),xc(e,n,fl),xc(e,n,l0),[[c0,"onattributechanged",mH],[fl,"onconnected",gH],[l0,"ondisconnected",bH],[fl,"render",vH]].forEach(([c,l,d])=>{if(!(c in e)&&l in e)if(l!=="render"&&r.push(l.slice(2)),c in n){const p=n[c].value;n[c]={configurable:Er,value(){return p.apply(this,arguments),d.apply(this,arguments)}}}else n[c]={configurable:Er,value:d}});const i=t.booleanAttributes||[];i.forEach(c=>{c in e||(n[c]={configurable:Er,get(){return this.hasAttribute(c)},set(l){!l||l==="false"?this.removeAttribute(c):this.setAttribute(c,l)}})});const s=t.observedAttributes||[];s.forEach(c=>{c in e||(n[c]={configurable:Er,get(){return this.getAttribute(c)},set(l){l==null?this.removeAttribute(c):this.setAttribute(c,l)}})}),(t.mappedAttributes||[]).forEach(c=>{const l=new Xr,d="on"+c in e;d&&r.push(c),n[c]={configurable:Er,get(){return l.get(this)},set(p){if(l.set(this,p),d){const m=ja(c);if(m.detail=p,kp.has(this))this.dispatchEvent(m);else{const g=Zl.get(this);g?g.push(m):Zl.set(this,[m])}}}}}),Oc(e,n);const a=i.concat(s);return a.length?Oc(t,{observedAttributes:{configurable:Er,get:()=>a}}):t},ja=t=>new i6(t),G_=(...t)=>new am("html",t);G_.for=oH.for;const X_=(...t)=>new am("svg",t);X_.for=aH.for;const cH=(t,e,{info:r})=>{const n=r?H_(e.join(gs),r).split(gs):e;return t.set(e,n),n},U_=(t,e,r)=>{const n=lH(t,e,new Xr);return r.set(t,n),n},lH=(t,e,r)=>(n,...i)=>{const s=r.get(n)||cH(r,n,t[gs]);return sH(t,()=>e(s,...i))};function dH(t){this.addEventListener(t,this)}function uH(t){this.dispatchEvent(t)}function fH(){return o0.get(this)||U_(this,G_,o0)}function pH(){return a0.get(this)||U_(this,X_,a0)}function hH(t){this[`on${t.type}`](t)}function d0(){if(!kp.has(this)){kp.add(this),this[gs].events.forEach(dH,this),this.dispatchEvent(ja("init"));const t=Zl.get(this);t&&(Zl.delete(this),t.forEach(uH,this))}}function mH(t,e,r){const n=ja("attributechanged");n.attributeName=t,n.oldValue=e,n.newValue=r,this.dispatchEvent(n)}function gH(){this.dispatchEvent(ja("connected"))}function vH(){this.render()}function bH(){this.dispatchEvent(ja("disconnected"))}const{create:u0,defineProperty:na,defineProperties:f0,getOwnPropertyNames:yH,getOwnPropertySymbols:SH,getOwnPropertyDescriptor:wH,keys:Mp}=Object,p0={element:HTMLElement},W_=new Xr;new Xr;const Y_=new Xr;new Xr;const CH=(t,e)=>({tagName:t,is:e,element:t==="element"}),AH=(t,e)=>Z_(t,e,"").Class,RH=t=>{const e=Xd(t,!1);return W_.set(t,V_(e)),e},_H=(t,e)=>{const{statics:r,prototype:n}=EH(t),i=Xd(p0[e]||(p0[e]=document.createElement(e).constructor),!1);return f0(i.prototype,n),f0(i,r),Y_.set(t,V_(i)),i},EH=t=>{const e=u0(null),r=u0(null),n={prototype:r,statics:e};return yH(t).concat(SH(t)).forEach(i=>{const s=wH(t,i);switch(s.enumerable=!1,i){case"extends":i="tagName";case"contains":case"includes":case"name":case"booleanAttributes":case"mappedAttributes":case"observedAttributes":case"style":case"tagName":e[i]=s;break;default:r[i]=s}}),n},PH=t=>{if((t||"").length){const e=document.createElement("style");e.type="text/css",e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t));const r=document.head||document.querySelector("head");r.insertBefore(e,r.lastChild)}},TH=(t,e)=>t?t[e]||(t[e]={current:null}):{current:null},Z_=(t,e,r)=>{if(!/^([A-Z][A-Za-z0-9_]*)(<([A-Za-z0-9:._-]+)>|:([A-Za-z0-9:._-]+))?$/.test(t))throw"Invalid name";const{$1:i,$3:s,$4:o}=RegExp;let a=s||o||e.tagName||e.extends||"element";const c=a==="fragment";if(c)a="element";else if(!/^[A-Za-z0-9:._-]+$/.test(a))throw"Invalid tag";let l="",d="";a.indexOf("-")<0?(l=n6(i)+r,l.indexOf("-")<0&&(d="-heresy")):(l=a+r,a="element");const p=l+d;if(customElements.get(p))throw`Duplicated ${p} definition`;const m=Xd(typeof e=="object"?Y_.get(e)||_H(e,a):W_.get(e)||RH(e),!0),g=a==="element";if(na(m,"new",{value:g?()=>document.createElement(p):()=>document.createElement(a,{is:p})}),na(m.prototype,"is",{value:p}),r===""){const S=rH(l.toUpperCase());ul.map[i]=q_(m,a,p,{id:S,i:0}),ul.re=z_(Mp(ul.map))}if(c){const{render:S}=m.prototype;na(m.prototype,"render",{configurable:!0,value(){if(S&&S.apply(this,arguments),this.parentNode){const{firstChild:C}=this;let w=null;if(C){const y=document.createRange();y.setStartBefore(C),y.setEndAfter(this.lastChild),w=y.extractContents(),this.parentNode.replaceChild(w,this)}}}})}const v=[p,m];return g||v.push({extends:a}),customElements.define(...v),{Class:m,is:p,name:i,tagName:a}},q_=(t,e,r,n)=>{const{prototype:i}=t,s=CH(e,r),o=[i0(s)],a=t.includes||t.contains;if(a){const c={};Mp(a).forEach(m=>{const g=`-${n.id}-${n.i++}`,{Class:v,is:S,name:C,tagName:w}=Z_(m,a[m],g);o.push(i0(c[C]=q_(v,w,S,n)))});const l=z_(Mp(c)),{events:d}=i[gs],p={events:d,info:{map:c,re:l}};if(na(i,gs,{value:p}),"render"in i){const{render:m}=i,{info:g}=p;na(i,"render",{configurable:!0,value(){const v=nH();s0(g);const S=m.apply(this,arguments);return s0(v),S}})}}return"style"in t&&PH(t.style(...o)),s};function IH(t,e){if(!t)throw new Error("Missing room attribute");const r=/https:\/\/([^.]+)(\.whereby\.com|-ip-\d+-\d+-\d+-\d+.hereby.dev:4443)\/.+/.exec(t),n=r&&r[1]||e;if(!n)throw new Error("Missing subdomain attribute");if(!r)throw new Error("Could not parse room URL");const i=new URL(t);return{subdomain:n,roomUrl:i}}const h0=["aec","agc","audio","audioDenoiser","autoHideSelfView","autoSpotlight","background","bottomToolbar","breakout","callQualityMonitoring","cameraAccess","chat","embed","emptyRoomInvitation","floatSelf","help","hideLegend","leaveButton","locking","localization","logo","lowData","moreButton","participantCount","personality","pipButton","precallCeremony","precallCeremonyCanSkip","precallPermissionsHelpLink","precallReview","people","reactions","recording","roomIntegrations","screenshare","settingsButton","skipMediaPermissionPrompt","subgridLabels","timer","toolbarDarkText","toolbarText","topToolbar","video"];AH("WherebyEmbed",{oninit(){this.iframe=TH()},onconnected(){window.addEventListener("message",this.onmessage.bind(this))},ondisconnected(){window.removeEventListener("message",this.onmessage.bind(this))},observedAttributes:["displayName","minimal","room","subdomain","lang","metadata","groups","virtualBackgroundUrl","avatarUrl","externalId","title","cameraEffect","emojiSkinTone",...h0].map(t=>t.toLowerCase()),onattributechanged({attributeName:t,oldValue:e}){["room","subdomain"].includes(t)&&e==null||this.render()},style(t){return`
248
+ ${t} {
249
+ display: block;
250
+ }
251
+ ${t} iframe {
252
+ border: none;
253
+ height: 100%;
254
+ width: 100%;
255
+ }
256
+ `},_postCommand(t,e=[]){this.iframe.current&&this.iframe.current.contentWindow.postMessage({command:t,args:e},this.roomUrl.origin)},endMeeting(){this._postCommand("end_meeting")},knock(){this._postCommand("knock")},leaveRoom(){this._postCommand("leave_room")},openSettings(t="media"){this._postCommand("open_settings",[t])},startRecording(){this._postCommand("start_recording")},stopRecording(){this._postCommand("stop_recording")},startStreaming(){this._postCommand("start_streaming")},stopStreaming(){this._postCommand("stop_streaming")},startLiveTranscription(){this._postCommand("start_live_transcription")},stopLiveTranscription(){this._postCommand("stop_live_transcription")},toggleBreakout(t){this._postCommand("toggle_breakout",[t])},toggleCamera(t){this._postCommand("toggle_camera",[t])},toggleMicrophone(t){this._postCommand("toggle_microphone",[t])},togglePeople(t){this._postCommand("toggle_people",[t])},toggleScreenshare(t){this._postCommand("toggle_screenshare",[t])},toggleChat(t){this._postCommand("toggle_chat",[t])},onmessage({origin:t,data:e}){if(!this.roomUrl||t!==this.roomUrl.origin)return;const{type:r,payload:n}=e;this.dispatchEvent(new CustomEvent(r,{detail:n}))},render(){const{avatarurl:t,displayname:e,cameraeffect:r,emojiskintone:n,lang:i,metadata:s,externalid:o,minimal:a,room:c,groups:l,virtualbackgroundurl:d,title:p}=this;let m,g;try{({roomUrl:m,subdomain:g}=IH(c,this.subdomain))}catch(v){return this.html`Whereby: ${v instanceof Error?v.message:"unknown error"}`}this.roomUrl=m,Object.entries(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({jsApi:!0,we:"1",iframeSource:g},e&&{displayName:e}),i&&{lang:i}),s&&{metadata:s}),n&&{emojiSkinTone:n}),o&&{externalId:o}),l&&{groups:l}),d&&{virtualBackgroundUrl:d}),t&&{avatarUrl:t}),r&&{cameraEffect:r}),a!=null&&{embed:a}),h0.reduce((v,S)=>this[S.toLowerCase()]!=null?Object.assign(Object.assign({},v),{[S]:this[S.toLowerCase()]}):v,{}))).forEach(([v,S])=>{this.roomUrl.searchParams.has(v)||this.roomUrl.searchParams.set(v,S)}),this.html`
257
+ <iframe
258
+ title=${p||"Video calling component"}
259
+ ref=${this.iframe}
260
+ src=${this.roomUrl}
261
+ allow="autoplay; camera; microphone; fullscreen; speaker; display-capture; media-capture" />
262
+ `}});const OH=({src:t,onEvent:e,onActions:r,iframeClass:n})=>{const i=K.useRef(null);return K.useEffect(()=>{const s=i.current;if(!s)return;r&&r({endMeeting:()=>s.endMeeting(),knock:()=>s.knock(),cancelKnock:()=>s.cancelKnock(),leaveRoom:()=>s.leaveRoom(),startRecording:()=>s.startRecording(),stopRecording:()=>s.stopRecording(),startStreaming:()=>s.startStreaming(),stopStreaming:()=>s.stopStreaming(),startLiveTranscription:()=>s.startLiveTranscription(),stopLiveTranscription:()=>s.stopLiveTranscription(),toggleCamera:c=>s.toggleCamera(c),toggleMicrophone:c=>s.toggleMicrophone(c),toggleScreenshare:c=>s.toggleScreenshare(c),toggleChat:c=>s.toggleChat(c)});const o=["ready","grant_device_permission","deny_device_permission","precall_check_completed","precall_check_skipped","knock","cancel_knock","join","leave","meeting_end","participantupdate","participant_join","participant_leave","microphone_toggle","camera_toggle","screenshare_toggle","chat_toggle","people_toggle","pip_toggle","streaming_status_change","recording_status_change","transcription_status_change","connection_status_change"];function a(c){e&&e(c.type,c.detail)}return o.forEach(c=>s.addEventListener(c,a)),()=>{o.forEach(c=>s.removeEventListener(c,a))}},[e,r]),Y.jsx("div",{className:n,children:Y.jsx("whereby-embed",{ref:i,class:n,room:t,chat:"on",screenshare:"on",audio:"on",video:"on",allow:"camera; microphone; fullscreen"})})},xH=({src:t,onEvent:e,onActions:r,iframeClass:n})=>Y.jsx(zz,{children:Y.jsx(OH,{src:t,onEvent:e,onActions:r,iframeClass:n})}),DH="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAPCAYAAAA/I0V3AAABUklEQVR4Aa1SPVKDQBR+j+AEkhR7hKTRsQs3wBtQmkrt6PQG5gZq46SDTmcsjCcQTyCdo405Ao1CHLPrtxuYAGrj+IZddt++733vj6kmJ8GjKHr9M0UcsFKi0jNR2s3f9s7nXqbvVh20dAenpOiQsGEtFJMxwm28dPv32mkDpBWSyDee5cqbXe2MWKq76r0OtMP9pyFxJyoAYMNANLveXVBTEixfA3O3F4GpE5FhUG1DiIzLg7/JjwMLOxgo0+FA1wCCMbE+ySMpLxBErJhNjnYZb0a/yOXNdqpT1udw8uLjJyz6g/wfqOpHW5CT0dstve7Lcd4bvIaT5+95rqckaYCK7tbUKT4EqnmA4v7ElpBaHTEqonTJMVujarbMDDqOkGyN0ZNbGKTu+2b2bNQ7gdKvh1SUbpktgZCIlXyoAGUhQCd5vp5qHjaX0l/s5Pm0HuMXKsSJDLYiRWkAAAAASUVORK5CYII=",kH=async t=>{try{if(!t)return!1;if(navigator.clipboard?.writeText)return await navigator.clipboard.writeText(t),!0;const e=document.createElement("textarea");return e.value=t,e.style.position="fixed",e.style.left="-9999px",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e),!0}catch{return!1}},MH=({link:t})=>{const[e,r]=K.useState(!1),n=async()=>{await kH(t),r(!0),setTimeout(()=>r(!1),2e3)};return Y.jsxs("span",{className:"copy-link-container",children:[Y.jsx("span",{title:t,className:`copy-link-text${e?" copied":""}`,onClick:n,children:t}),Y.jsx(Xp,{color:"link",size:"sm",onClick:n,title:"Copiar link",className:"copy-link-btn",children:Y.jsx("img",{src:DH,alt:"Copiar"})}),e&&Y.jsx("span",{className:"copy-link-copied",children:"¡Copiado!"})]})},NH=({slot:t=1,component:e=null,x:r=0,y:n=0,w:i=2,h:s=2,align:o="stretch",contentSize:a="medium",direction:c="column",justify:l="flex-start",legend:d,showBorder:p=!1})=>Y.jsxs("fieldset",{className:`visualizador-slot visualizador-slot-content--${a} visualizador-slot--${c} visualizador-slot-align--${o} visualizador-slot-justify--${l} `+(p?"":"visualizador-slot--no-border"),style:{position:"relative",gridColumn:`${r+1} / span ${i}`,gridRow:`${n+1} / span ${s}`,display:"flex",overflow:"hidden",border:p?void 0:"none"},children:[Y.jsx("legend",{className:"slot-legend",children:d}),Y.jsx("div",{className:"slot-content",children:e})]},t),LH=({gridCols:t,gridRows:e})=>Y.jsx("div",{className:"editor-layer",style:{gridTemplateColumns:`repeat(${t}, 1fr)`,gridTemplateRows:`repeat(${e}, 1fr)`},children:Array.from({length:e*t}).map((r,n)=>{const i=n%t,s=Math.floor(n/t);return Y.jsx("div",{className:"editor-layer-cell",children:Y.jsxs("div",{className:"editor-layer-cell-coord",children:["x:",i,";y:",s]})},`cell-${i}-${s}`)})}),m0={sm:{cols:18,rows:18},md:{cols:12,rows:12},lg:{cols:6,rows:6}},jH=["localhost","127.0.0.1"],BH=({activo:t,onClick:e})=>Y.jsx("button",{className:`visualizador-editor-btn ${t?"visualizador-editor-btn--activo":"visualizador-editor-btn--inactivo"}`,onClick:e,children:Y.jsx("span",{children:Y.jsx("i",{className:"icon-eye simple-icon-eye"})})}),FH=({slots:t=[],size:e="md",alto:r=80,ancho:n=90,server:i=window?.location?.hostname,...s})=>{const o=jH.includes(i),[a,c]=K.useState(!1),l=m0[e].cols,d=m0[e].rows;return Y.jsxs("div",{className:"visualizador-container",children:[o&&Y.jsx(BH,{activo:a,onClick:()=>c(p=>!p)}),Y.jsxs("div",{className:"visualizador-grid-css",style:{maxWidth:`${n}vw`,height:`${r}vh`,gridTemplateColumns:`repeat(${l}, 1fr)`,gridTemplateRows:`repeat(${d}, 1fr)`},...s,children:[a&&Y.jsx(LH,{gridCols:l,gridRows:d}),t.map(p=>{const{x:m,y:g,w:v,h:S,legend:C}=p;return K.createElement(NH,{...p,legend:C,key:p.slot})})]})]})},J_=t=>{if(t==null)return"--:--";const e=Math.abs(t),r=Math.floor(e/1e3),n=Math.floor(r/60),i=r%60,s=`${n.toString().padStart(2,"0")}:${i.toString().padStart(2,"0")}`;return t<0?`-${s}`:s},zH=(t,e)=>{if(!e)return"";const r=t/e;return r>.33?"timer-green":r>.15?"timer-yellow":r>0?"timer-red":t===0?"timer-out":t<0?"timer-over":""},HH=({initialMinutes:t=0,icon:e=!0,className:r="",active:n=!0,style:i={}})=>{const s=t*60*1e3,[o,a]=K.useState(s),c=K.useRef();K.useEffect(()=>{if(n)return c.current=setInterval(()=>{a(d=>d-1e3)},1e3),()=>clearInterval(c.current)},[n]),K.useEffect(()=>{a(s)},[s]);const l=zH(o,s);return Y.jsxs("span",{className:`av-video-timer timer ${l} ${r}`,style:i,children:[e&&Y.jsx("i",{className:"icon-clock timer"}),J_(o)]})};exports.Colxx=jc;exports.CopyLink=MH;exports.CustomInputCheckbox=kT;exports.CustomInputRadio=MT;exports.CustomSelect=gD;exports.CustomSelectInput=KS;exports.DropzoneUploader=Q0;exports.DropzoneUploaderDniDigital=xT;exports.IntlMessages=jD;exports.Separator=DT;exports.Timer=HH;exports.TomarFoto=yD;exports.ViewLayout=FH;exports.WhereByRoom=xH;exports.formatTiempo=J_;