hfs 3.0.8 → 3.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/assets/{index-DM5g3qYw.js → index-Cgrpq79y.js} +3 -3
- package/admin/assets/{sha512-CS6slURG.js → sha512-BkTsTkFA.js} +1 -1
- package/admin/index.html +1 -1
- package/frontend/assets/{index-legacy-3W6ubYQ9.js → index-legacy-B-kPm7iv.js} +2 -2
- package/frontend/assets/{sha512-legacy-BkSJBpTZ.js → sha512-legacy-DJhsd7D0.js} +1 -1
- package/frontend/index.html +1 -1
- package/package.json +2 -2
- package/plugins/list-uploader/public/main.js +1 -1
- package/src/adminApis.js +2 -1
- package/src/commands.js +1 -1
- package/src/debounceAsync.js +1 -1
- package/src/frontEndApis.js +1 -1
- package/src/github.js +15 -10
- package/src/update.js +13 -9
|
@@ -29,7 +29,7 @@ var px=Object.defineProperty,fx=Object.defineProperties;var mx=Object.getOwnProp
|
|
|
29
29
|
`+le[Me].replace(" at new "," at ");return M.displayName&&Be.includes("<anonymous>")&&(Be=Be.replace("<anonymous>",M.displayName)),Be}while(1<=Me&&0<=Oe);break}}}finally{ve=!1,Error.prepareStackTrace=F}return(M=M?M.displayName||M.name:"")?ye(M):""}function Te(M){switch(M.tag){case 5:return ye(M.type);case 16:return ye("Lazy");case 13:return ye("Suspense");case 19:return ye("SuspenseList");case 0:case 2:case 15:return M=Ee(M.type,!1),M;case 11:return M=Ee(M.type.render,!1),M;case 1:return M=Ee(M.type,!0),M;default:return""}}function Ie(M){if(M==null)return null;if(typeof M=="function")return M.displayName||M.name||null;if(typeof M=="string")return M;switch(M){case V:return"Fragment";case W:return"Portal";case Q:return"Profiler";case K:return"StrictMode";case oe:return"Suspense";case ee:return"SuspenseList"}if(typeof M=="object")switch(M.$$typeof){case re:return(M.displayName||"Context")+".Consumer";case Z:return(M._context.displayName||"Context")+".Provider";case ie:var P=M.render;return M=M.displayName,M||(M=P.displayName||P.name||"",M=M!==""?"ForwardRef("+M+")":"ForwardRef"),M;case X:return P=M.displayName||null,P!==null?P:Ie(M.type)||"Memo";case ce:P=M._payload,M=M._init;try{return Ie(M(P))}catch(F){}}return null}function Pe(M){var P=M.type;switch(M.tag){case 24:return"Cache";case 9:return(P.displayName||"Context")+".Consumer";case 10:return(P._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return M=P.render,M=M.displayName||M.name||"",P.displayName||(M!==""?"ForwardRef("+M+")":"ForwardRef");case 7:return"Fragment";case 5:return P;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Ie(P);case 8:return P===K?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof P=="function")return P.displayName||P.name||null;if(typeof P=="string")return P}return null}function Ce(M){switch(typeof M){case"boolean":case"number":case"string":case"undefined":return M;case"object":return M;default:return""}}function Le(M){var P=M.type;return(M=M.nodeName)&&M.toLowerCase()==="input"&&(P==="checkbox"||P==="radio")}function He(M){var P=Le(M)?"checked":"value",F=Object.getOwnPropertyDescriptor(M.constructor.prototype,P),q=""+M[P];if(!M.hasOwnProperty(P)&&typeof F!="undefined"&&typeof F.get=="function"&&typeof F.set=="function"){var le=F.get,xe=F.set;return Object.defineProperty(M,P,{configurable:!0,get:function(){return le.call(this)},set:function(Me){q=""+Me,xe.call(this,Me)}}),Object.defineProperty(M,P,{enumerable:F.enumerable}),{getValue:function(){return q},setValue:function(Me){q=""+Me},stopTracking:function(){M._valueTracker=null,delete M[P]}}}}function De(M){M._valueTracker||(M._valueTracker=He(M))}function ke(M){if(!M)return!1;var P=M._valueTracker;if(!P)return!0;var F=P.getValue(),q="";return M&&(q=Le(M)?M.checked?"true":"false":M.value),M=q,M!==F?(P.setValue(M),!0):!1}function we(M){if(M=M||(typeof document!="undefined"?document:void 0),typeof M=="undefined")return null;try{return M.activeElement||M.body}catch(P){return M.body}}function Ge(M,P){var F=P.checked;return fe({},P,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:F!=null?F:M._wrapperState.initialChecked})}function Ye(M,P){var F=P.defaultValue==null?"":P.defaultValue,q=P.checked!=null?P.checked:P.defaultChecked;F=Ce(P.value!=null?P.value:F),M._wrapperState={initialChecked:q,initialValue:F,controlled:P.type==="checkbox"||P.type==="radio"?P.checked!=null:P.value!=null}}function Ue(M,P){P=P.checked,P!=null&&B(M,"checked",P,!1)}function ot(M,P){Ue(M,P);var F=Ce(P.value),q=P.type;if(F!=null)q==="number"?(F===0&&M.value===""||M.value!=F)&&(M.value=""+F):M.value!==""+F&&(M.value=""+F);else if(q==="submit"||q==="reset"){M.removeAttribute("value");return}P.hasOwnProperty("value")?ft(M,P.type,F):P.hasOwnProperty("defaultValue")&&ft(M,P.type,Ce(P.defaultValue)),P.checked==null&&P.defaultChecked!=null&&(M.defaultChecked=!!P.defaultChecked)}function We(M,P,F){if(P.hasOwnProperty("value")||P.hasOwnProperty("defaultValue")){var q=P.type;if(!(q!=="submit"&&q!=="reset"||P.value!==void 0&&P.value!==null))return;P=""+M._wrapperState.initialValue,F||P===M.value||(M.value=P),M.defaultValue=P}F=M.name,F!==""&&(M.name=""),M.defaultChecked=!!M._wrapperState.initialChecked,F!==""&&(M.name=F)}function ft(M,P,F){(P!=="number"||we(M.ownerDocument)!==M)&&(F==null?M.defaultValue=""+M._wrapperState.initialValue:M.defaultValue!==""+F&&(M.defaultValue=""+F))}var je=Array.isArray;function Ve(M,P,F,q){if(M=M.options,P){P={};for(var le=0;le<F.length;le++)P["$"+F[le]]=!0;for(F=0;F<M.length;F++)le=P.hasOwnProperty("$"+M[F].value),M[F].selected!==le&&(M[F].selected=le),le&&q&&(M[F].defaultSelected=!0)}else{for(F=""+Ce(F),P=null,le=0;le<M.length;le++){if(M[le].value===F){M[le].selected=!0,q&&(M[le].defaultSelected=!0);return}P!==null||M[le].disabled||(P=M[le])}P!==null&&(P.selected=!0)}}function Ze(M,P){if(P.dangerouslySetInnerHTML!=null)throw Error(g(91));return fe({},P,{value:void 0,defaultValue:void 0,children:""+M._wrapperState.initialValue})}function qe(M,P){var F=P.value;if(F==null){if(F=P.children,P=P.defaultValue,F!=null){if(P!=null)throw Error(g(92));if(je(F)){if(1<F.length)throw Error(g(93));F=F[0]}P=F}P==null&&(P=""),F=P}M._wrapperState={initialValue:Ce(F)}}function ut(M,P){var F=Ce(P.value),q=Ce(P.defaultValue);F!=null&&(F=""+F,F!==M.value&&(M.value=F),P.defaultValue==null&&M.defaultValue!==F&&(M.defaultValue=F)),q!=null&&(M.defaultValue=""+q)}function St(M){var P=M.textContent;P===M._wrapperState.initialValue&&P!==""&&P!==null&&(M.value=P)}function Ae(M){switch(M){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function dt(M,P){return M==null||M==="http://www.w3.org/1999/xhtml"?Ae(P):M==="http://www.w3.org/2000/svg"&&P==="foreignObject"?"http://www.w3.org/1999/xhtml":M}var Je,tt=function(M){return typeof MSApp!="undefined"&&MSApp.execUnsafeLocalFunction?function(P,F,q,le){MSApp.execUnsafeLocalFunction(function(){return M(P,F,q,le)})}:M}(function(M,P){if(M.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in M)M.innerHTML=P;else{for(Je=Je||document.createElement("div"),Je.innerHTML="<svg>"+P.valueOf().toString()+"</svg>",P=Je.firstChild;M.firstChild;)M.removeChild(M.firstChild);for(;P.firstChild;)M.appendChild(P.firstChild)}});function It(M,P){if(P){var F=M.firstChild;if(F&&F===M.lastChild&&F.nodeType===3){F.nodeValue=P;return}}M.textContent=P}var Ft={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ot=["Webkit","ms","Moz","O"];Object.keys(Ft).forEach(function(M){Ot.forEach(function(P){P=P+M.charAt(0).toUpperCase()+M.substring(1),Ft[P]=Ft[M]})});function Ct(M,P,F){return P==null||typeof P=="boolean"||P===""?"":F||typeof P!="number"||P===0||Ft.hasOwnProperty(M)&&Ft[M]?(""+P).trim():P+"px"}function Ht(M,P){M=M.style;for(var F in P)if(P.hasOwnProperty(F)){var q=F.indexOf("--")===0,le=Ct(F,P[F],q);F==="float"&&(F="cssFloat"),q?M.setProperty(F,le):M[F]=le}}var wt=fe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Dt(M,P){if(P){if(wt[M]&&(P.children!=null||P.dangerouslySetInnerHTML!=null))throw Error(g(137,M));if(P.dangerouslySetInnerHTML!=null){if(P.children!=null)throw Error(g(60));if(typeof P.dangerouslySetInnerHTML!="object"||!("__html"in P.dangerouslySetInnerHTML))throw Error(g(61))}if(P.style!=null&&typeof P.style!="object")throw Error(g(62))}}function Jt(M,P){if(M.indexOf("-")===-1)return typeof P.is=="string";switch(M){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Qt=null;function dr(M){return M=M.target||M.srcElement||window,M.correspondingUseElement&&(M=M.correspondingUseElement),M.nodeType===3?M.parentNode:M}var vr=null,Xt=null,ir=null;function Or(M){if(M=Ys(M)){if(typeof vr!="function")throw Error(g(280));var P=M.stateNode;P&&(P=_r(P),vr(M.stateNode,M.type,P))}}function xr(M){Xt?ir?ir.push(M):ir=[M]:Xt=M}function Wr(){if(Xt){var M=Xt,P=ir;if(ir=Xt=null,Or(M),P)for(M=0;M<P.length;M++)Or(P[M])}}function En(M,P){return M(P)}function Kr(){}var _o=!1;function $n(M,P,F){if(_o)return M(P,F);_o=!0;try{return En(M,P,F)}finally{_o=!1,(Xt!==null||ir!==null)&&(Kr(),Wr())}}function Nr(M,P){var F=M.stateNode;if(F===null)return null;var q=_r(F);if(q===null)return null;F=q[P];e:switch(P){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(q=!q.disabled)||(M=M.type,q=!(M==="button"||M==="input"||M==="select"||M==="textarea")),M=!q;break e;default:M=!1}if(M)return null;if(F&&typeof F!="function")throw Error(g(231,P,typeof F));return F}var Rr=!1;if(S)try{var jr={};Object.defineProperty(jr,"passive",{get:function(){Rr=!0}}),window.addEventListener("test",jr,jr),window.removeEventListener("test",jr,jr)}catch(M){Rr=!1}function gn(M,P,F,q,le,xe,Me,Oe,Be){var at=Array.prototype.slice.call(arguments,3);try{P.apply(F,at)}catch(Tt){this.onError(Tt)}}var an=!1,Wn=null,Sn=!1,vo=null,Jo={onError:function(M){an=!0,Wn=M}};function Eo(M,P,F,q,le,xe,Me,Oe,Be){an=!1,Wn=null,gn.apply(Jo,arguments)}function So(M,P,F,q,le,xe,Me,Oe,Be){if(Eo.apply(this,arguments),an){if(an){var at=Wn;an=!1,Wn=null}else throw Error(g(198));Sn||(Sn=!0,vo=at)}}function xt(M){var P=M,F=M;if(M.alternate)for(;P.return;)P=P.return;else{M=P;do P=M,(P.flags&4098)!==0&&(F=P.return),M=P.return;while(M)}return P.tag===3?F:null}function nt(M){if(M.tag===13){var P=M.memoizedState;if(P===null&&(M=M.alternate,M!==null&&(P=M.memoizedState)),P!==null)return P.dehydrated}return null}function Lt(M){if(xt(M)!==M)throw Error(g(188))}function Vt(M){var P=M.alternate;if(!P){if(P=xt(M),P===null)throw Error(g(188));return P!==M?null:M}for(var F=M,q=P;;){var le=F.return;if(le===null)break;var xe=le.alternate;if(xe===null){if(q=le.return,q!==null){F=q;continue}break}if(le.child===xe.child){for(xe=le.child;xe;){if(xe===F)return Lt(le),M;if(xe===q)return Lt(le),P;xe=xe.sibling}throw Error(g(188))}if(F.return!==q.return)F=le,q=xe;else{for(var Me=!1,Oe=le.child;Oe;){if(Oe===F){Me=!0,F=le,q=xe;break}if(Oe===q){Me=!0,q=le,F=xe;break}Oe=Oe.sibling}if(!Me){for(Oe=xe.child;Oe;){if(Oe===F){Me=!0,F=xe,q=le;break}if(Oe===q){Me=!0,q=xe,F=le;break}Oe=Oe.sibling}if(!Me)throw Error(g(189))}}if(F.alternate!==q)throw Error(g(190))}if(F.tag!==3)throw Error(g(188));return F.stateNode.current===F?M:P}function pr(M){return M=Vt(M),M!==null?Ut(M):null}function Ut(M){if(M.tag===5||M.tag===6)return M;for(M=M.child;M!==null;){var P=Ut(M);if(P!==null)return P;M=M.sibling}return null}var Er=m.unstable_scheduleCallback,co=m.unstable_cancelCallback,Hl=m.unstable_shouldYield,Yl=m.unstable_requestPaint,Jr=m.unstable_now,Bl=m.unstable_getCurrentPriorityLevel,pu=m.unstable_ImmediatePriority,Dd=m.unstable_UserBlockingPriority,zl=m.unstable_NormalPriority,Ad=m.unstable_LowPriority,fu=m.unstable_IdlePriority,$a=null,Qo=null;function sf(M){if(Qo&&typeof Qo.onCommitFiberRoot=="function")try{Qo.onCommitFiberRoot($a,M,void 0,(M.current.flags&128)===128)}catch(P){}}var jo=Math.clz32?Math.clz32:Fd,lf=Math.log,Od=Math.LN2;function Fd(M){return M>>>=0,M===0?32:31-(lf(M)/Od|0)|0}var Ra=64,zi=4194304;function Ia(M){switch(M&-M){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return M&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return M&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return M}}function La(M,P){var F=M.pendingLanes;if(F===0)return 0;var q=0,le=M.suspendedLanes,xe=M.pingedLanes,Me=F&268435455;if(Me!==0){var Oe=Me&~le;Oe!==0?q=Ia(Oe):(xe&=Me,xe!==0&&(q=Ia(xe)))}else Me=F&~le,Me!==0?q=Ia(Me):xe!==0&&(q=Ia(xe));if(q===0)return 0;if(P!==0&&P!==q&&(P&le)===0&&(le=q&-q,xe=P&-P,le>=xe||le===16&&(xe&4194240)!==0))return P;if((q&4)!==0&&(q|=F&16),P=M.entangledLanes,P!==0)for(M=M.entanglements,P&=q;0<P;)F=31-jo(P),le=1<<F,q|=M[F],P&=~le;return q}function Gl(M,P){switch(M){case 1:case 2:case 4:return P+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return P+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Nd(M,P){for(var F=M.suspendedLanes,q=M.pingedLanes,le=M.expirationTimes,xe=M.pendingLanes;0<xe;){var Me=31-jo(xe),Oe=1<<Me,Be=le[Me];Be===-1?((Oe&F)===0||(Oe&q)!==0)&&(le[Me]=Gl(Oe,P)):Be<=P&&(M.expiredLanes|=Oe),xe&=~Oe}}function mu(M){return M=M.pendingLanes&-1073741825,M!==0?M:M&1073741824?1073741824:0}function xu(){var M=Ra;return Ra<<=1,(Ra&4194240)===0&&(Ra=64),M}function Ul(M){for(var P=[],F=0;31>F;F++)P.push(M);return P}function li(M,P,F){M.pendingLanes|=P,P!==536870912&&(M.suspendedLanes=0,M.pingedLanes=0),M=M.eventTimes,P=31-jo(P),M[P]=F}function cf(M,P){var F=M.pendingLanes&~P;M.pendingLanes=P,M.suspendedLanes=0,M.pingedLanes=0,M.expiredLanes&=P,M.mutableReadLanes&=P,M.entangledLanes&=P,P=M.entanglements;var q=M.eventTimes;for(M=M.expirationTimes;0<F;){var le=31-jo(F),xe=1<<le;P[le]=0,q[le]=-1,M[le]=-1,F&=~xe}}function Vl(M,P){var F=M.entangledLanes|=P;for(M=M.entanglements;F;){var q=31-jo(F),le=1<<q;le&P|M[q]&P&&(M[q]|=P),F&=~le}}var kr=0;function Wl(M){return M&=-M,1<M?4<M?(M&268435455)!==0?16:536870912:4:1}var ci,ql,_u,jd,yu,Kl=!1,Da=[],us=null,Ts=null,Ps=null,Aa=new Map,Gi=new Map,$s=[],uf="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Hd(M,P){switch(M){case"focusin":case"focusout":us=null;break;case"dragenter":case"dragleave":Ts=null;break;case"mouseover":case"mouseout":Ps=null;break;case"pointerover":case"pointerout":Aa.delete(P.pointerId);break;case"gotpointercapture":case"lostpointercapture":Gi.delete(P.pointerId)}}function Oa(M,P,F,q,le,xe){return M===null||M.nativeEvent!==xe?(M={blockedOn:P,domEventName:F,eventSystemFlags:q,nativeEvent:xe,targetContainers:[le]},P!==null&&(P=Ys(P),P!==null&&ql(P)),M):(M.eventSystemFlags|=q,P=M.targetContainers,le!==null&&P.indexOf(le)===-1&&P.push(le),M)}function vu(M,P,F,q,le){switch(P){case"focusin":return us=Oa(us,M,P,F,q,le),!0;case"dragenter":return Ts=Oa(Ts,M,P,F,q,le),!0;case"mouseover":return Ps=Oa(Ps,M,P,F,q,le),!0;case"pointerover":var xe=le.pointerId;return Aa.set(xe,Oa(Aa.get(xe)||null,M,P,F,q,le)),!0;case"gotpointercapture":return xe=le.pointerId,Gi.set(xe,Oa(Gi.get(xe)||null,M,P,F,q,le)),!0}return!1}function Yd(M){var P=Mo(M.target);if(P!==null){var F=xt(P);if(F!==null){if(P=F.tag,P===13){if(P=nt(F),P!==null){M.blockedOn=P,yu(M.priority,function(){_u(F)});return}}else if(P===3&&F.stateNode.current.memoizedState.isDehydrated){M.blockedOn=F.tag===3?F.stateNode.containerInfo:null;return}}}M.blockedOn=null}function Jl(M){if(M.blockedOn!==null)return!1;for(var P=M.targetContainers;0<P.length;){var F=Eu(M.domEventName,M.eventSystemFlags,P[0],M.nativeEvent);if(F===null){F=M.nativeEvent;var q=new F.constructor(F.type,F);Qt=q,F.target.dispatchEvent(q),Qt=null}else return P=Ys(F),P!==null&&ql(P),M.blockedOn=F,!1;P.shift()}return!0}function Bd(M,P,F){Jl(M)&&F.delete(P)}function df(){Kl=!1,us!==null&&Jl(us)&&(us=null),Ts!==null&&Jl(Ts)&&(Ts=null),Ps!==null&&Jl(Ps)&&(Ps=null),Aa.forEach(Bd),Gi.forEach(Bd)}function Fa(M,P){M.blockedOn===P&&(M.blockedOn=null,Kl||(Kl=!0,m.unstable_scheduleCallback(m.unstable_NormalPriority,df)))}function Dr(M){function P(le){return Fa(le,M)}if(0<Da.length){Fa(Da[0],M);for(var F=1;F<Da.length;F++){var q=Da[F];q.blockedOn===M&&(q.blockedOn=null)}}for(us!==null&&Fa(us,M),Ts!==null&&Fa(Ts,M),Ps!==null&&Fa(Ps,M),Aa.forEach(P),Gi.forEach(P),F=0;F<$s.length;F++)q=$s[F],q.blockedOn===M&&(q.blockedOn=null);for(;0<$s.length&&(F=$s[0],F.blockedOn===null);)Yd(F),F.blockedOn===null&&$s.shift()}var Ir=j.ReactCurrentBatchConfig,Ql=!0;function pf(M,P,F,q){var le=kr,xe=Ir.transition;Ir.transition=null;try{kr=1,bu(M,P,F,q)}finally{kr=le,Ir.transition=xe}}function ff(M,P,F,q){var le=kr,xe=Ir.transition;Ir.transition=null;try{kr=4,bu(M,P,F,q)}finally{kr=le,Ir.transition=xe}}function bu(M,P,F,q){if(Ql){var le=Eu(M,P,F,q);if(le===null)Ja(M,P,q,Xl,F),Hd(M,q);else if(vu(le,M,P,F,q))q.stopPropagation();else if(Hd(M,q),P&4&&-1<uf.indexOf(M)){for(;le!==null;){var xe=Ys(le);if(xe!==null&&ci(xe),xe=Eu(M,P,F,q),xe===null&&Ja(M,P,q,Xl,F),xe===le)break;le=xe}le!==null&&q.stopPropagation()}else Ja(M,P,q,null,F)}}var Xl=null;function Eu(M,P,F,q){if(Xl=null,M=dr(q),M=Mo(M),M!==null)if(P=xt(M),P===null)M=null;else if(F=P.tag,F===13){if(M=nt(P),M!==null)return M;M=null}else if(F===3){if(P.stateNode.current.memoizedState.isDehydrated)return P.tag===3?P.stateNode.containerInfo:null;M=null}else P!==M&&(M=null);return Xl=M,null}function Su(M){switch(M){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Bl()){case pu:return 1;case Dd:return 4;case zl:case Ad:return 16;case fu:return 536870912;default:return 16}default:return 16}}var Rs=null,ln=null,Ui=null;function ks(){if(Ui)return Ui;var M,P=ln,F=P.length,q,le="value"in Rs?Rs.value:Rs.textContent,xe=le.length;for(M=0;M<F&&P[M]===le[M];M++);var Me=F-M;for(q=1;q<=Me&&P[F-q]===le[xe-q];q++);return Ui=le.slice(M,1<q?1-q:void 0)}function Na(M){var P=M.keyCode;return"charCode"in M?(M=M.charCode,M===0&&P===13&&(M=13)):M=P,M===10&&(M=13),32<=M||M===13?M:0}function Vi(){return!0}function uo(){return!1}function qn(M){function P(F,q,le,xe,Me){this._reactName=F,this._targetInst=le,this.type=q,this.nativeEvent=xe,this.target=Me,this.currentTarget=null;for(var Oe in M)M.hasOwnProperty(Oe)&&(F=M[Oe],this[Oe]=F?F(xe):xe[Oe]);return this.isDefaultPrevented=(xe.defaultPrevented!=null?xe.defaultPrevented:xe.returnValue===!1)?Vi:uo,this.isPropagationStopped=uo,this}return fe(P.prototype,{preventDefault:function(){this.defaultPrevented=!0;var F=this.nativeEvent;F&&(F.preventDefault?F.preventDefault():typeof F.returnValue!="unknown"&&(F.returnValue=!1),this.isDefaultPrevented=Vi)},stopPropagation:function(){var F=this.nativeEvent;F&&(F.stopPropagation?F.stopPropagation():typeof F.cancelBubble!="unknown"&&(F.cancelBubble=!0),this.isPropagationStopped=Vi)},persist:function(){},isPersistent:Vi}),P}var ui={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(M){return M.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Zl=qn(ui),Wi=fe({},ui,{view:0,detail:0}),zd=qn(Wi),ec,Bn,Ha,Rn=fe({},Wi,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ds,button:0,buttons:0,relatedTarget:function(M){return M.relatedTarget===void 0?M.fromElement===M.srcElement?M.toElement:M.fromElement:M.relatedTarget},movementX:function(M){return"movementX"in M?M.movementX:(M!==Ha&&(Ha&&M.type==="mousemove"?(ec=M.screenX-Ha.screenX,Bn=M.screenY-Ha.screenY):Bn=ec=0,Ha=M),ec)},movementY:function(M){return"movementY"in M?M.movementY:Bn}}),Gd=qn(Rn),Ud=fe({},Rn,{dataTransfer:0}),Is=qn(Ud),tc=fe({},Wi,{relatedTarget:0}),Ya=qn(tc),Br=fe({},ui,{animationName:0,elapsedTime:0,pseudoElement:0}),Ls=qn(Br),Cu=fe({},ui,{clipboardData:function(M){return"clipboardData"in M?M.clipboardData:window.clipboardData}}),mf=qn(Cu),wu=fe({},ui,{data:0}),Vd=qn(wu),hf={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},gf={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Wd={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function rc(M){var P=this.nativeEvent;return P.getModifierState?P.getModifierState(M):(M=Wd[M])?!!P[M]:!1}function Ds(){return rc}var xf=fe({},Wi,{key:function(M){if(M.key){var P=hf[M.key]||M.key;if(P!=="Unidentified")return P}return M.type==="keypress"?(M=Na(M),M===13?"Enter":String.fromCharCode(M)):M.type==="keydown"||M.type==="keyup"?gf[M.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ds,charCode:function(M){return M.type==="keypress"?Na(M):0},keyCode:function(M){return M.type==="keydown"||M.type==="keyup"?M.keyCode:0},which:function(M){return M.type==="keypress"?Na(M):M.type==="keydown"||M.type==="keyup"?M.keyCode:0}}),qd=qn(xf),Kd=fe({},Rn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),nc=qn(Kd),Mu=fe({},Wi,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ds}),Jd=qn(Mu),_f=fe({},ui,{propertyName:0,elapsedTime:0,pseudoElement:0}),Tu=qn(_f),Pu=fe({},Rn,{deltaX:function(M){return"deltaX"in M?M.deltaX:"wheelDeltaX"in M?-M.wheelDeltaX:0},deltaY:function(M){return"deltaY"in M?M.deltaY:"wheelDeltaY"in M?-M.wheelDeltaY:"wheelDelta"in M?-M.wheelDelta:0},deltaZ:0,deltaMode:0}),yf=qn(Pu),Qd=[9,13,27,32],zn=S&&"CompositionEvent"in window,di=null;S&&"documentMode"in document&&(di=document.documentMode);var Ba=S&&"TextEvent"in window&&!di,$u=S&&(!zn||di&&8<di&&11>=di),Ru=" ",Xd=!1;function Zd(M,P){switch(M){case"keyup":return Qd.indexOf(P.keyCode)!==-1;case"keydown":return P.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ep(M){return M=M.detail,typeof M=="object"&&"data"in M?M.data:null}var qi=!1;function vf(M,P){switch(M){case"compositionend":return ep(P);case"keypress":return P.which!==32?null:(Xd=!0,Ru);case"textInput":return M=P.data,M===Ru&&Xd?null:M;default:return null}}function Ki(M,P){if(qi)return M==="compositionend"||!zn&&Zd(M,P)?(M=ks(),Ui=ln=Rs=null,qi=!1,M):null;switch(M){case"paste":return null;case"keypress":if(!(P.ctrlKey||P.altKey||P.metaKey)||P.ctrlKey&&P.altKey){if(P.char&&1<P.char.length)return P.char;if(P.which)return String.fromCharCode(P.which)}return null;case"compositionend":return $u&&P.locale!=="ko"?null:P.data;default:return null}}var bf={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function tp(M){var P=M&&M.nodeName&&M.nodeName.toLowerCase();return P==="input"?!!bf[M.type]:P==="textarea"}function oc(M,P,F,q){xr(q),P=Xa(P,"onChange"),0<P.length&&(F=new Zl("onChange","change",null,F,q),M.push({event:F,listeners:P}))}var Ji=null,Co=null;function sc(M){qa(M,0)}function ic(M){var P=wn(M);if(ke(P))return M}function Ef(M,P){if(M==="change")return P}var rp=!1;if(S){var As;if(S){var po="oninput"in document;if(!po){var Iu=document.createElement("div");Iu.setAttribute("oninput","return;"),po=typeof Iu.oninput=="function"}As=po}else As=!1;rp=As&&(!document.documentMode||9<document.documentMode)}function np(){Ji&&(Ji.detachEvent("onpropertychange",op),Co=Ji=null)}function op(M){if(M.propertyName==="value"&&ic(Co)){var P=[];oc(P,Co,M,dr(M)),$n(sc,P)}}function Sf(M,P,F){M==="focusin"?(np(),Ji=P,Co=F,Ji.attachEvent("onpropertychange",op)):M==="focusout"&&np()}function Cf(M){if(M==="selectionchange"||M==="keyup"||M==="keydown")return ic(Co)}function wf(M,P){if(M==="click")return ic(P)}function Qi(M,P){if(M==="input"||M==="change")return ic(P)}function Qe(M,P){return M===P&&(M!==0||1/M===1/P)||M!==M&&P!==P}var gt=typeof Object.is=="function"?Object.is:Qe;function ct(M,P){if(gt(M,P))return!0;if(typeof M!="object"||M===null||typeof P!="object"||P===null)return!1;var F=Object.keys(M),q=Object.keys(P);if(F.length!==q.length)return!1;for(q=0;q<F.length;q++){var le=F[q];if(!C.call(P,le)||!gt(M[le],P[le]))return!1}return!0}function Yt(M){for(;M&&M.firstChild;)M=M.firstChild;return M}function cr(M,P){var F=Yt(M);M=0;for(var q;F;){if(F.nodeType===3){if(q=M+F.textContent.length,M<=P&&q>=P)return{node:F,offset:P-M};M=q}e:{for(;F;){if(F.nextSibling){F=F.nextSibling;break e}F=F.parentNode}F=void 0}F=Yt(F)}}function Pr(M,P){return M&&P?M===P?!0:M&&M.nodeType===3?!1:P&&P.nodeType===3?Pr(M,P.parentNode):"contains"in M?M.contains(P):M.compareDocumentPosition?!!(M.compareDocumentPosition(P)&16):!1:!1}function Xr(){for(var M=window,P=we();P instanceof M.HTMLIFrameElement;){try{var F=typeof P.contentWindow.location.href=="string"}catch(q){F=!1}if(F)M=P.contentWindow;else break;P=we(M.document)}return P}function Ar(M){var P=M&&M.nodeName&&M.nodeName.toLowerCase();return P&&(P==="input"&&(M.type==="text"||M.type==="search"||M.type==="tel"||M.type==="url"||M.type==="password")||P==="textarea"||M.contentEditable==="true")}function Lu(M){var P=Xr(),F=M.focusedElem,q=M.selectionRange;if(P!==F&&F&&F.ownerDocument&&Pr(F.ownerDocument.documentElement,F)){if(q!==null&&Ar(F)){if(P=q.start,M=q.end,M===void 0&&(M=P),"selectionStart"in F)F.selectionStart=P,F.selectionEnd=Math.min(M,F.value.length);else if(M=(P=F.ownerDocument||document)&&P.defaultView||window,M.getSelection){M=M.getSelection();var le=F.textContent.length,xe=Math.min(q.start,le);q=q.end===void 0?xe:Math.min(q.end,le),!M.extend&&xe>q&&(le=q,q=xe,xe=le),le=cr(F,xe);var Me=cr(F,q);le&&Me&&(M.rangeCount!==1||M.anchorNode!==le.node||M.anchorOffset!==le.offset||M.focusNode!==Me.node||M.focusOffset!==Me.offset)&&(P=P.createRange(),P.setStart(le.node,le.offset),M.removeAllRanges(),xe>q?(M.addRange(P),M.extend(Me.node,Me.offset)):(P.setEnd(Me.node,Me.offset),M.addRange(P)))}}for(P=[],M=F;M=M.parentNode;)M.nodeType===1&&P.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof F.focus=="function"&&F.focus(),F=0;F<P.length;F++)M=P[F],M.element.scrollLeft=M.left,M.element.scrollTop=M.top}}var Mf=S&&"documentMode"in document&&11>=document.documentMode,Cn=null,Xi=null,za=null,Os=!1;function Ga(M,P,F){var q=F.window===F?F.document:F.nodeType===9?F:F.ownerDocument;Os||Cn==null||Cn!==we(q)||(q=Cn,"selectionStart"in q&&Ar(q)?q={start:q.selectionStart,end:q.selectionEnd}:(q=(q.ownerDocument&&q.ownerDocument.defaultView||window).getSelection(),q={anchorNode:q.anchorNode,anchorOffset:q.anchorOffset,focusNode:q.focusNode,focusOffset:q.focusOffset}),za&&ct(za,q)||(za=q,q=Xa(Xi,"onSelect"),0<q.length&&(P=new Zl("onSelect","select",null,P,F),M.push({event:P,listeners:q}),P.target=Cn)))}function pi(M,P){var F={};return F[M.toLowerCase()]=P.toLowerCase(),F["Webkit"+M]="webkit"+P,F["Moz"+M]="moz"+P,F}var Cr={animationend:pi("Animation","AnimationEnd"),animationiteration:pi("Animation","AnimationIteration"),animationstart:pi("Animation","AnimationStart"),transitionend:pi("Transition","TransitionEnd")},Du={},Au={};S&&(Au=document.createElement("div").style,"AnimationEvent"in window||(delete Cr.animationend.animation,delete Cr.animationiteration.animation,delete Cr.animationstart.animation),"TransitionEvent"in window||delete Cr.transitionend.transition);function gi(M){if(Du[M])return Du[M];if(!Cr[M])return M;var P=Cr[M],F;for(F in P)if(P.hasOwnProperty(F)&&F in Au)return Du[M]=P[F];return M}var sp=gi("animationend"),ip=gi("animationiteration"),ap=gi("animationstart"),Ua=gi("transitionend"),ds=new Map,Va="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function ps(M,P){ds.set(M,P),E(P,[M])}for(var Zi=0;Zi<Va.length;Zi++){var ac=Va[Zi],lp=ac.toLowerCase(),lc=ac[0].toUpperCase()+ac.slice(1);ps(lp,"on"+lc)}ps(sp,"onAnimationEnd"),ps(ip,"onAnimationIteration"),ps(ap,"onAnimationStart"),ps("dblclick","onDoubleClick"),ps("focusin","onFocus"),ps("focusout","onBlur"),ps(Ua,"onTransitionEnd"),v("onMouseEnter",["mouseout","mouseover"]),v("onMouseLeave",["mouseout","mouseover"]),v("onPointerEnter",["pointerout","pointerover"]),v("onPointerLeave",["pointerout","pointerover"]),E("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),E("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),E("onBeforeInput",["compositionend","keypress","textInput","paste"]),E("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),E("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),E("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ea="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Wa=new Set("cancel close invalid load scroll toggle".split(" ").concat(ea));function Fs(M,P,F){var q=M.type||"unknown-event";M.currentTarget=F,So(q,P,void 0,M),M.currentTarget=null}function qa(M,P){P=(P&4)!==0;for(var F=0;F<M.length;F++){var q=M[F],le=q.event;q=q.listeners;e:{var xe=void 0;if(P)for(var Me=q.length-1;0<=Me;Me--){var Oe=q[Me],Be=Oe.instance,at=Oe.currentTarget;if(Oe=Oe.listener,Be!==xe&&le.isPropagationStopped())break e;Fs(le,Oe,at),xe=Be}else for(Me=0;Me<q.length;Me++){if(Oe=q[Me],Be=Oe.instance,at=Oe.currentTarget,Oe=Oe.listener,Be!==xe&&le.isPropagationStopped())break e;Fs(le,Oe,at),xe=Be}}}if(Sn)throw M=vo,Sn=!1,vo=null,M}function Yr(M,P){var F=P[_i];F===void 0&&(F=P[_i]=new Set);var q=M+"__bubble";F.has(q)||(Ka(P,M,2,!1),F.add(q))}function Ou(M,P,F){var q=0;P&&(q|=4),Ka(F,M,q,P)}var cc="_reactListening"+Math.random().toString(36).slice(2);function Ns(M){if(!M[cc]){M[cc]=!0,x.forEach(function(F){F!=="selectionchange"&&(Wa.has(F)||Ou(F,!1,M),Ou(F,!0,M))});var P=M.nodeType===9?M:M.ownerDocument;P===null||P[cc]||(P[cc]=!0,Ou("selectionchange",!1,P))}}function Ka(M,P,F,q){switch(Su(P)){case 1:var le=pf;break;case 4:le=ff;break;default:le=bu}F=le.bind(null,P,F,M),le=void 0,!Rr||P!=="touchstart"&&P!=="touchmove"&&P!=="wheel"||(le=!0),q?le!==void 0?M.addEventListener(P,F,{capture:!0,passive:le}):M.addEventListener(P,F,!0):le!==void 0?M.addEventListener(P,F,{passive:le}):M.addEventListener(P,F,!1)}function Ja(M,P,F,q,le){var xe=q;if((P&1)===0&&(P&2)===0&&q!==null)e:for(;;){if(q===null)return;var Me=q.tag;if(Me===3||Me===4){var Oe=q.stateNode.containerInfo;if(Oe===le||Oe.nodeType===8&&Oe.parentNode===le)break;if(Me===4)for(Me=q.return;Me!==null;){var Be=Me.tag;if((Be===3||Be===4)&&(Be=Me.stateNode.containerInfo,Be===le||Be.nodeType===8&&Be.parentNode===le))return;Me=Me.return}for(;Oe!==null;){if(Me=Mo(Oe),Me===null)return;if(Be=Me.tag,Be===5||Be===6){q=xe=Me;continue e}Oe=Oe.parentNode}}q=q.return}$n(function(){var at=xe,Tt=dr(F),$t=[];e:{var Mt=ds.get(M);if(Mt!==void 0){var jt=Zl,Bt=M;switch(M){case"keypress":if(Na(F)===0)break e;case"keydown":case"keyup":jt=qd;break;case"focusin":Bt="focus",jt=Ya;break;case"focusout":Bt="blur",jt=Ya;break;case"beforeblur":case"afterblur":jt=Ya;break;case"click":if(F.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":jt=Gd;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":jt=Is;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":jt=Jd;break;case sp:case ip:case ap:jt=Ls;break;case Ua:jt=Tu;break;case"scroll":jt=zd;break;case"wheel":jt=yf;break;case"copy":case"cut":case"paste":jt=mf;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":jt=nc}var zt=(P&4)!==0,qr=!zt&&M==="scroll",rt=zt?Mt!==null?Mt+"Capture":null:Mt;zt=[];for(var Ke=at,st;Ke!==null;){st=Ke;var kt=st.stateNode;if(st.tag===5&&kt!==null&&(st=kt,rt!==null&&(kt=Nr(Ke,rt),kt!=null&&zt.push(Qa(Ke,kt,st)))),qr)break;Ke=Ke.return}0<zt.length&&(Mt=new jt(Mt,Bt,null,F,Tt),$t.push({event:Mt,listeners:zt}))}}if((P&7)===0){e:{if(Mt=M==="mouseover"||M==="pointerover",jt=M==="mouseout"||M==="pointerout",Mt&&F!==Qt&&(Bt=F.relatedTarget||F.fromElement)&&(Mo(Bt)||Bt[wo]))break e;if((jt||Mt)&&(Mt=Tt.window===Tt?Tt:(Mt=Tt.ownerDocument)?Mt.defaultView||Mt.parentWindow:window,jt?(Bt=F.relatedTarget||F.toElement,jt=at,Bt=Bt?Mo(Bt):null,Bt!==null&&(qr=xt(Bt),Bt!==qr||Bt.tag!==5&&Bt.tag!==6)&&(Bt=null)):(jt=null,Bt=at),jt!==Bt)){if(zt=Gd,kt="onMouseLeave",rt="onMouseEnter",Ke="mouse",(M==="pointerout"||M==="pointerover")&&(zt=nc,kt="onPointerLeave",rt="onPointerEnter",Ke="pointer"),qr=jt==null?Mt:wn(jt),st=Bt==null?Mt:wn(Bt),Mt=new zt(kt,Ke+"leave",jt,F,Tt),Mt.target=qr,Mt.relatedTarget=st,kt=null,Mo(Tt)===at&&(zt=new zt(rt,Ke+"enter",Bt,F,Tt),zt.target=st,zt.relatedTarget=qr,kt=zt),qr=kt,jt&&Bt)t:{for(zt=jt,rt=Bt,Ke=0,st=zt;st;st=ra(st))Ke++;for(st=0,kt=rt;kt;kt=ra(kt))st++;for(;0<Ke-st;)zt=ra(zt),Ke--;for(;0<st-Ke;)rt=ra(rt),st--;for(;Ke--;){if(zt===rt||rt!==null&&zt===rt.alternate)break t;zt=ra(zt),rt=ra(rt)}zt=null}else zt=null;jt!==null&&cp($t,Mt,jt,zt,!1),Bt!==null&&qr!==null&&cp($t,qr,Bt,zt,!0)}}e:{if(Mt=at?wn(at):window,jt=Mt.nodeName&&Mt.nodeName.toLowerCase(),jt==="select"||jt==="input"&&Mt.type==="file")var Gt=Ef;else if(tp(Mt))if(rp)Gt=Qi;else{Gt=Cf;var er=Sf}else(jt=Mt.nodeName)&&jt.toLowerCase()==="input"&&(Mt.type==="checkbox"||Mt.type==="radio")&&(Gt=wf);if(Gt&&(Gt=Gt(M,at))){oc($t,Gt,F,Tt);break e}er&&er(M,Mt,at),M==="focusout"&&(er=Mt._wrapperState)&&er.controlled&&Mt.type==="number"&&ft(Mt,"number",Mt.value)}switch(er=at?wn(at):window,M){case"focusin":(tp(er)||er.contentEditable==="true")&&(Cn=er,Xi=at,za=null);break;case"focusout":za=Xi=Cn=null;break;case"mousedown":Os=!0;break;case"contextmenu":case"mouseup":case"dragend":Os=!1,Ga($t,F,Tt);break;case"selectionchange":if(Mf)break;case"keydown":case"keyup":Ga($t,F,Tt)}var rr;if(zn)e:{switch(M){case"compositionstart":var or="onCompositionStart";break e;case"compositionend":or="onCompositionEnd";break e;case"compositionupdate":or="onCompositionUpdate";break e}or=void 0}else qi?Zd(M,F)&&(or="onCompositionEnd"):M==="keydown"&&F.keyCode===229&&(or="onCompositionStart");or&&($u&&F.locale!=="ko"&&(qi||or!=="onCompositionStart"?or==="onCompositionEnd"&&qi&&(rr=ks()):(Rs=Tt,ln="value"in Rs?Rs.value:Rs.textContent,qi=!0)),er=Xa(at,or),0<er.length&&(or=new Vd(or,M,null,F,Tt),$t.push({event:or,listeners:er}),rr?or.data=rr:(rr=ep(F),rr!==null&&(or.data=rr)))),(rr=Ba?vf(M,F):Ki(M,F))&&(at=Xa(at,"onBeforeInput"),0<at.length&&(Tt=new Vd("onBeforeInput","beforeinput",null,F,Tt),$t.push({event:Tt,listeners:at}),Tt.data=rr))}qa($t,P)})}function Qa(M,P,F){return{instance:M,listener:P,currentTarget:F}}function Xa(M,P){for(var F=P+"Capture",q=[];M!==null;){var le=M,xe=le.stateNode;le.tag===5&&xe!==null&&(le=xe,xe=Nr(M,F),xe!=null&&q.unshift(Qa(M,xe,le)),xe=Nr(M,P),xe!=null&&q.push(Qa(M,xe,le))),M=M.return}return q}function ra(M){if(M===null)return null;do M=M.return;while(M&&M.tag!==5);return M||null}function cp(M,P,F,q,le){for(var xe=P._reactName,Me=[];F!==null&&F!==q;){var Oe=F,Be=Oe.alternate,at=Oe.stateNode;if(Be!==null&&Be===q)break;Oe.tag===5&&at!==null&&(Oe=at,le?(Be=Nr(F,xe),Be!=null&&Me.unshift(Qa(F,Be,Oe))):le||(Be=Nr(F,xe),Be!=null&&Me.push(Qa(F,Be,Oe)))),F=F.return}Me.length!==0&&M.push({event:P,listeners:Me})}var cn=/\r\n?/g,In=/\u0000|\uFFFD/g;function up(M){return(typeof M=="string"?M:""+M).replace(cn,`
|
|
30
30
|
`).replace(In,"")}function uc(M,P,F){if(P=up(P),up(M)!==P&&F)throw Error(g(425))}function Za(){}var Fu=null,tl=null;function xi(M,P){return M==="textarea"||M==="noscript"||typeof P.children=="string"||typeof P.children=="number"||typeof P.dangerouslySetInnerHTML=="object"&&P.dangerouslySetInnerHTML!==null&&P.dangerouslySetInnerHTML.__html!=null}var rl=typeof setTimeout=="function"?setTimeout:void 0,na=typeof clearTimeout=="function"?clearTimeout:void 0,oa=typeof Promise=="function"?Promise:void 0,ol=typeof queueMicrotask=="function"?queueMicrotask:typeof oa!="undefined"?function(M){return oa.resolve(null).then(M).catch(dc)}:rl;function dc(M){setTimeout(function(){throw M})}function js(M,P){var F=P,q=0;do{var le=F.nextSibling;if(M.removeChild(F),le&&le.nodeType===8)if(F=le.data,F==="/$"){if(q===0){M.removeChild(le),Dr(P);return}q--}else F!=="$"&&F!=="$?"&&F!=="$!"||q++;F=le}while(F);Dr(P)}function Hs(M){for(;M!=null;M=M.nextSibling){var P=M.nodeType;if(P===1||P===3)break;if(P===8){if(P=M.data,P==="$"||P==="$!"||P==="$?")break;if(P==="/$")return null}}return M}function dp(M){M=M.previousSibling;for(var P=0;M;){if(M.nodeType===8){var F=M.data;if(F==="$"||F==="$!"||F==="$?"){if(P===0)return M;P--}else F==="/$"&&P++}M=M.previousSibling}return null}var sa=Math.random().toString(36).slice(2),Xo="__reactFiber$"+sa,il="__reactProps$"+sa,wo="__reactContainer$"+sa,_i="__reactEvents$"+sa,pp="__reactListeners$"+sa,$e="__reactHandles$"+sa;function Mo(M){var P=M[Xo];if(P)return P;for(var F=M.parentNode;F;){if(P=F[wo]||F[Xo]){if(F=P.alternate,P.child!==null||F!==null&&F.child!==null)for(M=dp(M);M!==null;){if(F=M[Xo])return F;M=dp(M)}return P}M=F,F=M.parentNode}return null}function Ys(M){return M=M[Xo]||M[wo],!M||M.tag!==5&&M.tag!==6&&M.tag!==13&&M.tag!==3?null:M}function wn(M){if(M.tag===5||M.tag===6)return M.stateNode;throw Error(g(33))}function _r(M){return M[il]||null}var Nu=[],ia=-1;function Bs(M){return{current:M}}function Lr(M){0>ia||(M.current=Nu[ia],Nu[ia]=null,ia--)}function Hr(M,P){ia++,Nu[ia]=M.current,M.current=P}var zs={},Ln=Bs(zs),Kn=Bs(!1),yi=zs;function Jn(M,P){var F=M.type.contextTypes;if(!F)return zs;var q=M.stateNode;if(q&&q.__reactInternalMemoizedUnmaskedChildContext===P)return q.__reactInternalMemoizedMaskedChildContext;var le={},xe;for(xe in F)le[xe]=P[xe];return q&&(M=M.stateNode,M.__reactInternalMemoizedUnmaskedChildContext=P,M.__reactInternalMemoizedMaskedChildContext=le),le}function Qn(M){return M=M.childContextTypes,M!=null}function pc(){Lr(Kn),Lr(Ln)}function fp(M,P,F){if(Ln.current!==zs)throw Error(g(168));Hr(Ln,P),Hr(Kn,F)}function mp(M,P,F){var q=M.stateNode;if(P=P.childContextTypes,typeof q.getChildContext!="function")return F;q=q.getChildContext();for(var le in q)if(!(le in P))throw Error(g(108,Pe(M)||"Unknown",le));return fe({},F,q)}function fc(M){return M=(M=M.stateNode)&&M.__reactInternalMemoizedMergedChildContext||zs,yi=Ln.current,Hr(Ln,M),Hr(Kn,Kn.current),!0}function Zo(M,P,F){var q=M.stateNode;if(!q)throw Error(g(169));F?(M=mp(M,P,yi),q.__reactInternalMemoizedMergedChildContext=M,Lr(Kn),Lr(Ln),Hr(Ln,M)):Lr(Kn),Hr(Kn,F)}var fs=null,mc=!1,ju=!1;function hp(M){fs===null?fs=[M]:fs.push(M)}function Tf(M){mc=!0,hp(M)}function Xn(){if(!ju&&fs!==null){ju=!0;var M=0,P=kr;try{var F=fs;for(kr=1;M<F.length;M++){var q=F[M];do q=q(!0);while(q!==null)}fs=null,mc=!1}catch(le){throw fs!==null&&(fs=fs.slice(M+1)),Er(pu,Xn),le}finally{kr=P,ju=!1}}return null}var aa=[],la=0,Zn=null,hc=0,To=[],Po=0,Ei=null,hs=1,ts="";function Gs(M,P){aa[la++]=hc,aa[la++]=Zn,Zn=M,hc=P}function gp(M,P,F){To[Po++]=hs,To[Po++]=ts,To[Po++]=Ei,Ei=M;var q=hs;M=ts;var le=32-jo(q)-1;q&=~(1<<le),F+=1;var xe=32-jo(P)+le;if(30<xe){var Me=le-le%5;xe=(q&(1<<Me)-1).toString(32),q>>=Me,le-=Me,hs=1<<32-jo(P)+le|F<<le|q,ts=xe+M}else hs=1<<xe|F<<le|q,ts=M}function Hu(M){M.return!==null&&(Gs(M,1),gp(M,1,0))}function al(M){for(;M===Zn;)Zn=aa[--la],aa[la]=null,hc=aa[--la],aa[la]=null;for(;M===Ei;)Ei=To[--Po],To[Po]=null,ts=To[--Po],To[Po]=null,hs=To[--Po],To[Po]=null}var Mn=null,Dn=null,zr=!1,$o=null;function xp(M,P){var F=Ao(5,null,null,0);F.elementType="DELETED",F.stateNode=P,F.return=M,P=M.deletions,P===null?(M.deletions=[F],M.flags|=16):P.push(F)}function Ho(M,P){switch(M.tag){case 5:var F=M.type;return P=P.nodeType!==1||F.toLowerCase()!==P.nodeName.toLowerCase()?null:P,P!==null?(M.stateNode=P,Mn=M,Dn=Hs(P.firstChild),!0):!1;case 6:return P=M.pendingProps===""||P.nodeType!==3?null:P,P!==null?(M.stateNode=P,Mn=M,Dn=null,!0):!1;case 13:return P=P.nodeType!==8?null:P,P!==null?(F=Ei!==null?{id:hs,overflow:ts}:null,M.memoizedState={dehydrated:P,treeContext:F,retryLane:1073741824},F=Ao(18,null,null,0),F.stateNode=P,F.return=M,M.child=F,Mn=M,Dn=null,!0):!1;default:return!1}}function ll(M){return(M.mode&1)!==0&&(M.flags&128)===0}function gs(M){if(zr){var P=Dn;if(P){var F=P;if(!Ho(M,P)){if(ll(M))throw Error(g(418));P=Hs(F.nextSibling);var q=Mn;P&&Ho(M,P)?xp(q,F):(M.flags=M.flags&-4097|2,zr=!1,Mn=M)}}else{if(ll(M))throw Error(g(418));M.flags=M.flags&-4097|2,zr=!1,Mn=M}}}function mo(M){for(M=M.return;M!==null&&M.tag!==5&&M.tag!==3&&M.tag!==13;)M=M.return;Mn=M}function gc(M){if(M!==Mn)return!1;if(!zr)return mo(M),zr=!0,!1;var P;if((P=M.tag!==3)&&!(P=M.tag!==5)&&(P=M.type,P=P!=="head"&&P!=="body"&&!xi(M.type,M.memoizedProps)),P&&(P=Dn)){if(ll(M))throw Yu(),Error(g(418));for(;P;)xp(M,P),P=Hs(P.nextSibling)}if(mo(M),M.tag===13){if(M=M.memoizedState,M=M!==null?M.dehydrated:null,!M)throw Error(g(317));e:{for(M=M.nextSibling,P=0;M;){if(M.nodeType===8){var F=M.data;if(F==="/$"){if(P===0){Dn=Hs(M.nextSibling);break e}P--}else F!=="$"&&F!=="$!"&&F!=="$?"||P++}M=M.nextSibling}Dn=null}}else Dn=Mn?Hs(M.stateNode.nextSibling):null;return!0}function Yu(){for(var M=Dn;M;)M=Hs(M.nextSibling)}function Si(){Dn=Mn=null,zr=!1}function Ci(M){$o===null?$o=[M]:$o.push(M)}var Us=j.ReactCurrentBatchConfig;function ua(M,P,F){if(M=F.ref,M!==null&&typeof M!="function"&&typeof M!="object"){if(F._owner){if(F=F._owner,F){if(F.tag!==1)throw Error(g(309));var q=F.stateNode}if(!q)throw Error(g(147,M));var le=q,xe=""+M;return P!==null&&P.ref!==null&&typeof P.ref=="function"&&P.ref._stringRef===xe?P.ref:(P=function(Me){var Oe=le.refs;Me===null?delete Oe[xe]:Oe[xe]=Me},P._stringRef=xe,P)}if(typeof M!="string")throw Error(g(284));if(!F._owner)throw Error(g(290,M))}return M}function xc(M,P){throw M=Object.prototype.toString.call(P),Error(g(31,M==="[object Object]"?"object with keys {"+Object.keys(P).join(", ")+"}":M))}function cl(M){var P=M._init;return P(M._payload)}function _p(M){function P(rt,Ke){if(M){var st=rt.deletions;st===null?(rt.deletions=[Ke],rt.flags|=16):st.push(Ke)}}function F(rt,Ke){if(!M)return null;for(;Ke!==null;)P(rt,Ke),Ke=Ke.sibling;return null}function q(rt,Ke){for(rt=new Map;Ke!==null;)Ke.key!==null?rt.set(Ke.key,Ke):rt.set(Ke.index,Ke),Ke=Ke.sibling;return rt}function le(rt,Ke){return rt=ii(rt,Ke),rt.index=0,rt.sibling=null,rt}function xe(rt,Ke,st){return rt.index=st,M?(st=rt.alternate,st!==null?(st=st.index,st<Ke?(rt.flags|=2,Ke):st):(rt.flags|=2,Ke)):(rt.flags|=1048576,Ke)}function Me(rt){return M&&rt.alternate===null&&(rt.flags|=2),rt}function Oe(rt,Ke,st,kt){return Ke===null||Ke.tag!==6?(Ke=Pd(st,rt.mode,kt),Ke.return=rt,Ke):(Ke=le(Ke,st),Ke.return=rt,Ke)}function Be(rt,Ke,st,kt){var Gt=st.type;return Gt===V?Tt(rt,Ke,st.props.children,kt,st.key):Ke!==null&&(Ke.elementType===Gt||typeof Gt=="object"&&Gt!==null&&Gt.$$typeof===ce&&cl(Gt)===Ke.type)?(kt=le(Ke,st.props),kt.ref=ua(rt,Ke,st),kt.return=rt,kt):(kt=Ni(st.type,st.key,st.props,null,rt.mode,kt),kt.ref=ua(rt,Ke,st),kt.return=rt,kt)}function at(rt,Ke,st,kt){return Ke===null||Ke.tag!==4||Ke.stateNode.containerInfo!==st.containerInfo||Ke.stateNode.implementation!==st.implementation?(Ke=$d(st,rt.mode,kt),Ke.return=rt,Ke):(Ke=le(Ke,st.children||[]),Ke.return=rt,Ke)}function Tt(rt,Ke,st,kt,Gt){return Ke===null||Ke.tag!==7?(Ke=ji(st,rt.mode,kt,Gt),Ke.return=rt,Ke):(Ke=le(Ke,st),Ke.return=rt,Ke)}function $t(rt,Ke,st){if(typeof Ke=="string"&&Ke!==""||typeof Ke=="number")return Ke=Pd(""+Ke,rt.mode,st),Ke.return=rt,Ke;if(typeof Ke=="object"&&Ke!==null){switch(Ke.$$typeof){case U:return st=Ni(Ke.type,Ke.key,Ke.props,null,rt.mode,st),st.ref=ua(rt,null,Ke),st.return=rt,st;case W:return Ke=$d(Ke,rt.mode,st),Ke.return=rt,Ke;case ce:var kt=Ke._init;return $t(rt,kt(Ke._payload),st)}if(je(Ke)||ue(Ke))return Ke=ji(Ke,rt.mode,st,null),Ke.return=rt,Ke;xc(rt,Ke)}return null}function Mt(rt,Ke,st,kt){var Gt=Ke!==null?Ke.key:null;if(typeof st=="string"&&st!==""||typeof st=="number")return Gt!==null?null:Oe(rt,Ke,""+st,kt);if(typeof st=="object"&&st!==null){switch(st.$$typeof){case U:return st.key===Gt?Be(rt,Ke,st,kt):null;case W:return st.key===Gt?at(rt,Ke,st,kt):null;case ce:return Gt=st._init,Mt(rt,Ke,Gt(st._payload),kt)}if(je(st)||ue(st))return Gt!==null?null:Tt(rt,Ke,st,kt,null);xc(rt,st)}return null}function jt(rt,Ke,st,kt,Gt){if(typeof kt=="string"&&kt!==""||typeof kt=="number")return rt=rt.get(st)||null,Oe(Ke,rt,""+kt,Gt);if(typeof kt=="object"&&kt!==null){switch(kt.$$typeof){case U:return rt=rt.get(kt.key===null?st:kt.key)||null,Be(Ke,rt,kt,Gt);case W:return rt=rt.get(kt.key===null?st:kt.key)||null,at(Ke,rt,kt,Gt);case ce:var er=kt._init;return jt(rt,Ke,st,er(kt._payload),Gt)}if(je(kt)||ue(kt))return rt=rt.get(st)||null,Tt(Ke,rt,kt,Gt,null);xc(Ke,kt)}return null}function Bt(rt,Ke,st,kt){for(var Gt=null,er=null,rr=Ke,or=Ke=0,pn=null;rr!==null&&or<st.length;or++){rr.index>or?(pn=rr,rr=null):pn=rr.sibling;var $r=Mt(rt,rr,st[or],kt);if($r===null){rr===null&&(rr=pn);break}M&&rr&&$r.alternate===null&&P(rt,rr),Ke=xe($r,Ke,or),er===null?Gt=$r:er.sibling=$r,er=$r,rr=pn}if(or===st.length)return F(rt,rr),zr&&Gs(rt,or),Gt;if(rr===null){for(;or<st.length;or++)rr=$t(rt,st[or],kt),rr!==null&&(Ke=xe(rr,Ke,or),er===null?Gt=rr:er.sibling=rr,er=rr);return zr&&Gs(rt,or),Gt}for(rr=q(rt,rr);or<st.length;or++)pn=jt(rr,rt,or,st[or],kt),pn!==null&&(M&&pn.alternate!==null&&rr.delete(pn.key===null?or:pn.key),Ke=xe(pn,Ke,or),er===null?Gt=pn:er.sibling=pn,er=pn);return M&&rr.forEach(function(ai){return P(rt,ai)}),zr&&Gs(rt,or),Gt}function zt(rt,Ke,st,kt){var Gt=ue(st);if(typeof Gt!="function")throw Error(g(150));if(st=Gt.call(st),st==null)throw Error(g(151));for(var er=Gt=null,rr=Ke,or=Ke=0,pn=null,$r=st.next();rr!==null&&!$r.done;or++,$r=st.next()){rr.index>or?(pn=rr,rr=null):pn=rr.sibling;var ai=Mt(rt,rr,$r.value,kt);if(ai===null){rr===null&&(rr=pn);break}M&&rr&&ai.alternate===null&&P(rt,rr),Ke=xe(ai,Ke,or),er===null?Gt=ai:er.sibling=ai,er=ai,rr=pn}if($r.done)return F(rt,rr),zr&&Gs(rt,or),Gt;if(rr===null){for(;!$r.done;or++,$r=st.next())$r=$t(rt,$r.value,kt),$r!==null&&(Ke=xe($r,Ke,or),er===null?Gt=$r:er.sibling=$r,er=$r);return zr&&Gs(rt,or),Gt}for(rr=q(rt,rr);!$r.done;or++,$r=st.next())$r=jt(rr,rt,or,$r.value,kt),$r!==null&&(M&&$r.alternate!==null&&rr.delete($r.key===null?or:$r.key),Ke=xe($r,Ke,or),er===null?Gt=$r:er.sibling=$r,er=$r);return M&&rr.forEach(function(Wf){return P(rt,Wf)}),zr&&Gs(rt,or),Gt}function qr(rt,Ke,st,kt){if(typeof st=="object"&&st!==null&&st.type===V&&st.key===null&&(st=st.props.children),typeof st=="object"&&st!==null){switch(st.$$typeof){case U:e:{for(var Gt=st.key,er=Ke;er!==null;){if(er.key===Gt){if(Gt=st.type,Gt===V){if(er.tag===7){F(rt,er.sibling),Ke=le(er,st.props.children),Ke.return=rt,rt=Ke;break e}}else if(er.elementType===Gt||typeof Gt=="object"&&Gt!==null&&Gt.$$typeof===ce&&cl(Gt)===er.type){F(rt,er.sibling),Ke=le(er,st.props),Ke.ref=ua(rt,er,st),Ke.return=rt,rt=Ke;break e}F(rt,er);break}else P(rt,er);er=er.sibling}st.type===V?(Ke=ji(st.props.children,rt.mode,kt,st.key),Ke.return=rt,rt=Ke):(kt=Ni(st.type,st.key,st.props,null,rt.mode,kt),kt.ref=ua(rt,Ke,st),kt.return=rt,rt=kt)}return Me(rt);case W:e:{for(er=st.key;Ke!==null;){if(Ke.key===er)if(Ke.tag===4&&Ke.stateNode.containerInfo===st.containerInfo&&Ke.stateNode.implementation===st.implementation){F(rt,Ke.sibling),Ke=le(Ke,st.children||[]),Ke.return=rt,rt=Ke;break e}else{F(rt,Ke);break}else P(rt,Ke);Ke=Ke.sibling}Ke=$d(st,rt.mode,kt),Ke.return=rt,rt=Ke}return Me(rt);case ce:return er=st._init,qr(rt,Ke,er(st._payload),kt)}if(je(st))return Bt(rt,Ke,st,kt);if(ue(st))return zt(rt,Ke,st,kt);xc(rt,st)}return typeof st=="string"&&st!==""||typeof st=="number"?(st=""+st,Ke!==null&&Ke.tag===6?(F(rt,Ke.sibling),Ke=le(Ke,st),Ke.return=rt,rt=Ke):(F(rt,Ke),Ke=Pd(st,rt.mode,kt),Ke.return=rt,rt=Ke),Me(rt)):F(rt,Ke)}return qr}var wi=_p(!0),xn=_p(!1),pa=Bs(null),ul=null,Gn=null,dl=null;function ma(){dl=Gn=ul=null}function xs(M){var P=pa.current;Lr(pa),M._currentValue=P}function _c(M,P,F){for(;M!==null;){var q=M.alternate;if((M.childLanes&P)!==P?(M.childLanes|=P,q!==null&&(q.childLanes|=P)):q!==null&&(q.childLanes&P)!==P&&(q.childLanes|=P),M===F)break;M=M.return}}function Zr(M,P){ul=M,dl=Gn=null,M=M.dependencies,M!==null&&M.firstContext!==null&&((M.lanes&P)!==0&&(Tn=!0),M.firstContext=null)}function to(M){var P=M._currentValue;if(dl!==M)if(M={context:M,memoizedValue:P,next:null},Gn===null){if(ul===null)throw Error(g(308));Gn=M,ul.dependencies={lanes:0,firstContext:M}}else Gn=Gn.next=M;return P}var Mi=null;function Bu(M){Mi===null?Mi=[M]:Mi.push(M)}function yp(M,P,F,q){var le=P.interleaved;return le===null?(F.next=F,Bu(P)):(F.next=le.next,le.next=F),P.interleaved=F,Yo(M,q)}function Yo(M,P){M.lanes|=P;var F=M.alternate;for(F!==null&&(F.lanes|=P),F=M,M=M.return;M!==null;)M.childLanes|=P,F=M.alternate,F!==null&&(F.childLanes|=P),F=M,M=M.return;return F.tag===3?F.stateNode:null}var Vs=!1;function Ti(M){M.updateQueue={baseState:M.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function zu(M,P){M=M.updateQueue,P.updateQueue===M&&(P.updateQueue={baseState:M.baseState,firstBaseUpdate:M.firstBaseUpdate,lastBaseUpdate:M.lastBaseUpdate,shared:M.shared,effects:M.effects})}function _s(M,P){return{eventTime:M,lane:P,tag:0,payload:null,callback:null,next:null}}function Ws(M,P,F){var q=M.updateQueue;if(q===null)return null;if(q=q.shared,(Mr&2)!==0){var le=q.pending;return le===null?P.next=P:(P.next=le.next,le.next=P),q.pending=P,Yo(M,F)}return le=q.interleaved,le===null?(P.next=P,Bu(q)):(P.next=le.next,le.next=P),q.interleaved=P,Yo(M,F)}function qs(M,P,F){if(P=P.updateQueue,P!==null&&(P=P.shared,(F&4194240)!==0)){var q=P.lanes;q&=M.pendingLanes,F|=q,P.lanes=F,Vl(M,F)}}function vp(M,P){var F=M.updateQueue,q=M.alternate;if(q!==null&&(q=q.updateQueue,F===q)){var le=null,xe=null;if(F=F.firstBaseUpdate,F!==null){do{var Me={eventTime:F.eventTime,lane:F.lane,tag:F.tag,payload:F.payload,callback:F.callback,next:null};xe===null?le=xe=Me:xe=xe.next=Me,F=F.next}while(F!==null);xe===null?le=xe=P:xe=xe.next=P}else le=xe=P;F={baseState:q.baseState,firstBaseUpdate:le,lastBaseUpdate:xe,shared:q.shared,effects:q.effects},M.updateQueue=F;return}M=F.lastBaseUpdate,M===null?F.firstBaseUpdate=P:M.next=P,F.lastBaseUpdate=P}function yc(M,P,F,q){var le=M.updateQueue;Vs=!1;var xe=le.firstBaseUpdate,Me=le.lastBaseUpdate,Oe=le.shared.pending;if(Oe!==null){le.shared.pending=null;var Be=Oe,at=Be.next;Be.next=null,Me===null?xe=at:Me.next=at,Me=Be;var Tt=M.alternate;Tt!==null&&(Tt=Tt.updateQueue,Oe=Tt.lastBaseUpdate,Oe!==Me&&(Oe===null?Tt.firstBaseUpdate=at:Oe.next=at,Tt.lastBaseUpdate=Be))}if(xe!==null){var $t=le.baseState;Me=0,Tt=at=Be=null,Oe=xe;do{var Mt=Oe.lane,jt=Oe.eventTime;if((q&Mt)===Mt){Tt!==null&&(Tt=Tt.next={eventTime:jt,lane:0,tag:Oe.tag,payload:Oe.payload,callback:Oe.callback,next:null});e:{var Bt=M,zt=Oe;switch(Mt=P,jt=F,zt.tag){case 1:if(Bt=zt.payload,typeof Bt=="function"){$t=Bt.call(jt,$t,Mt);break e}$t=Bt;break e;case 3:Bt.flags=Bt.flags&-65537|128;case 0:if(Bt=zt.payload,Mt=typeof Bt=="function"?Bt.call(jt,$t,Mt):Bt,Mt==null)break e;$t=fe({},$t,Mt);break e;case 2:Vs=!0}}Oe.callback!==null&&Oe.lane!==0&&(M.flags|=64,Mt=le.effects,Mt===null?le.effects=[Oe]:Mt.push(Oe))}else jt={eventTime:jt,lane:Mt,tag:Oe.tag,payload:Oe.payload,callback:Oe.callback,next:null},Tt===null?(at=Tt=jt,Be=$t):Tt=Tt.next=jt,Me|=Mt;if(Oe=Oe.next,Oe===null){if(Oe=le.shared.pending,Oe===null)break;Mt=Oe,Oe=Mt.next,Mt.next=null,le.lastBaseUpdate=Mt,le.shared.pending=null}}while(!0);if(Tt===null&&(Be=$t),le.baseState=Be,le.firstBaseUpdate=at,le.lastBaseUpdate=Tt,P=le.shared.interleaved,P!==null){le=P;do Me|=le.lane,le=le.next;while(le!==P)}else xe===null&&(le.shared.lanes=0);Di|=Me,M.lanes=Me,M.memoizedState=$t}}function vc(M,P,F){if(M=P.effects,P.effects=null,M!==null)for(P=0;P<M.length;P++){var q=M[P],le=q.callback;if(le!==null){if(q.callback=null,q=F,typeof le!="function")throw Error(g(191,le));le.call(q)}}}var ha={},rs=Bs(ha),fl=Bs(ha),hl=Bs(ha);function Ks(M){if(M===ha)throw Error(g(174));return M}function xl(M,P){switch(Hr(hl,P),Hr(fl,M),Hr(rs,ha),M=P.nodeType,M){case 9:case 11:P=(P=P.documentElement)?P.namespaceURI:dt(null,"");break;default:M=M===8?P.parentNode:P,P=M.namespaceURI||null,M=M.tagName,P=dt(P,M)}Lr(rs),Hr(rs,P)}function xa(){Lr(rs),Lr(fl),Lr(hl)}function bc(M){Ks(hl.current);var P=Ks(rs.current),F=dt(P,M.type);P!==F&&(Hr(fl,M),Hr(rs,F))}function Ec(M){fl.current===M&&(Lr(rs),Lr(fl))}var Gr=Bs(0);function _l(M){for(var P=M;P!==null;){if(P.tag===13){var F=P.memoizedState;if(F!==null&&(F=F.dehydrated,F===null||F.data==="$?"||F.data==="$!"))return P}else if(P.tag===19&&P.memoizedProps.revealOrder!==void 0){if((P.flags&128)!==0)return P}else if(P.child!==null){P.child.return=P,P=P.child;continue}if(P===M)break;for(;P.sibling===null;){if(P.return===null||P.return===M)return null;P=P.return}P.sibling.return=P.return,P=P.sibling}return null}var _a=[];function Gu(){for(var M=0;M<_a.length;M++)_a[M]._workInProgressVersionPrimary=null;_a.length=0}var yl=j.ReactCurrentDispatcher,Sc=j.ReactCurrentBatchConfig,Pi=0,Ur=null,un=null,tn=null,vl=!1,$i=!1,bl=0,Uu=0;function Kt(){throw Error(g(321))}function Vu(M,P){if(P===null)return!1;for(var F=0;F<P.length&&F<M.length;F++)if(!gt(M[F],P[F]))return!1;return!0}function Wu(M,P,F,q,le,xe){if(Pi=xe,Ur=P,P.memoizedState=null,P.updateQueue=null,P.lanes=0,yl.current=M===null||M.memoizedState===null?Rf:kf,M=F(q,le),$i){xe=0;do{if($i=!1,bl=0,25<=xe)throw Error(g(301));xe+=1,tn=un=null,P.updateQueue=null,yl.current=$c,M=F(q,le)}while($i)}if(yl.current=ho,P=un!==null&&un.next!==null,Pi=0,tn=un=Ur=null,vl=!1,P)throw Error(g(300));return M}function Ri(){var M=bl!==0;return bl=0,M}function Bo(){var M={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return tn===null?Ur.memoizedState=tn=M:tn=tn.next=M,tn}function Ro(){if(un===null){var M=Ur.alternate;M=M!==null?M.memoizedState:null}else M=un.next;var P=tn===null?Ur.memoizedState:tn.next;if(P!==null)tn=P,un=M;else{if(M===null)throw Error(g(310));un=M,M={memoizedState:un.memoizedState,baseState:un.baseState,baseQueue:un.baseQueue,queue:un.queue,next:null},tn===null?Ur.memoizedState=tn=M:tn=tn.next=M}return tn}function El(M,P){return typeof P=="function"?P(M):P}function no(M){var P=Ro(),F=P.queue;if(F===null)throw Error(g(311));F.lastRenderedReducer=M;var q=un,le=q.baseQueue,xe=F.pending;if(xe!==null){if(le!==null){var Me=le.next;le.next=xe.next,xe.next=Me}q.baseQueue=le=xe,F.pending=null}if(le!==null){xe=le.next,q=q.baseState;var Oe=Me=null,Be=null,at=xe;do{var Tt=at.lane;if((Pi&Tt)===Tt)Be!==null&&(Be=Be.next={lane:0,action:at.action,hasEagerState:at.hasEagerState,eagerState:at.eagerState,next:null}),q=at.hasEagerState?at.eagerState:M(q,at.action);else{var $t={lane:Tt,action:at.action,hasEagerState:at.hasEagerState,eagerState:at.eagerState,next:null};Be===null?(Oe=Be=$t,Me=q):Be=Be.next=$t,Ur.lanes|=Tt,Di|=Tt}at=at.next}while(at!==null&&at!==xe);Be===null?Me=q:Be.next=Oe,gt(q,P.memoizedState)||(Tn=!0),P.memoizedState=q,P.baseState=Me,P.baseQueue=Be,F.lastRenderedState=q}if(M=F.interleaved,M!==null){le=M;do xe=le.lane,Ur.lanes|=xe,Di|=xe,le=le.next;while(le!==M)}else le===null&&(F.lanes=0);return[P.memoizedState,F.dispatch]}function qu(M){var P=Ro(),F=P.queue;if(F===null)throw Error(g(311));F.lastRenderedReducer=M;var q=F.dispatch,le=F.pending,xe=P.memoizedState;if(le!==null){F.pending=null;var Me=le=le.next;do xe=M(xe,Me.action),Me=Me.next;while(Me!==le);gt(xe,P.memoizedState)||(Tn=!0),P.memoizedState=xe,P.baseQueue===null&&(P.baseState=xe),F.lastRenderedState=xe}return[xe,q]}function Sl(){}function Cc(M,P){var F=Ur,q=Ro(),le=P(),xe=!gt(q.memoizedState,le);if(xe&&(q.memoizedState=le,Tn=!0),q=q.queue,wl(oo.bind(null,F,q,M),[M]),q.getSnapshot!==P||xe||tn!==null&&tn.memoizedState.tag&1){if(F.flags|=2048,Js(9,Ju.bind(null,F,q,le,P),void 0,null),vn===null)throw Error(g(349));(Pi&30)!==0||Ku(F,P,le)}return le}function Ku(M,P,F){M.flags|=16384,M={getSnapshot:P,value:F},P=Ur.updateQueue,P===null?(P={lastEffect:null,stores:null},Ur.updateQueue=P,P.stores=[M]):(F=P.stores,F===null?P.stores=[M]:F.push(M))}function Ju(M,P,F,q){P.value=F,P.getSnapshot=q,ys(P)&&wc(M)}function oo(M,P,F){return F(function(){ys(P)&&wc(M)})}function ys(M){var P=M.getSnapshot;M=M.value;try{var F=P();return!gt(M,F)}catch(q){return!0}}function wc(M){var P=Yo(M,1);P!==null&&Uo(P,M,1,-1)}function Qu(M){var P=Bo();return typeof M=="function"&&(M=M()),P.memoizedState=P.baseState=M,M={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:El,lastRenderedState:M},P.queue=M,M=M.dispatch=$f.bind(null,Ur,M),[P.memoizedState,M]}function Js(M,P,F,q){return M={tag:M,create:P,destroy:F,deps:q,next:null},P=Ur.updateQueue,P===null?(P={lastEffect:null,stores:null},Ur.updateQueue=P,P.lastEffect=M.next=M):(F=P.lastEffect,F===null?P.lastEffect=M.next=M:(q=F.next,F.next=M,M.next=q,P.lastEffect=M)),M}function Xu(){return Ro().memoizedState}function ya(M,P,F,q){var le=Bo();Ur.flags|=M,le.memoizedState=Js(1|P,F,void 0,q===void 0?null:q)}function Cl(M,P,F,q){var le=Ro();q=q===void 0?null:q;var xe=void 0;if(un!==null){var Me=un.memoizedState;if(xe=Me.destroy,q!==null&&Vu(q,Me.deps)){le.memoizedState=Js(P,F,xe,q);return}}Ur.flags|=M,le.memoizedState=Js(1|P,F,xe,q)}function Mc(M,P){return ya(8390656,8,M,P)}function wl(M,P){return Cl(2048,8,M,P)}function vs(M,P){return Cl(4,2,M,P)}function bp(M,P){return Cl(4,4,M,P)}function Es(M,P){if(typeof P=="function")return M=M(),P(M),function(){P(null)};if(P!=null)return M=M(),P.current=M,function(){P.current=null}}function Zu(M,P,F){return F=F!=null?F.concat([M]):null,Cl(4,4,Es.bind(null,P,M),F)}function Tc(){}function Pc(M,P){var F=Ro();P=P===void 0?null:P;var q=F.memoizedState;return q!==null&&P!==null&&Vu(P,q[1])?q[0]:(F.memoizedState=[M,P],M)}function Ep(M,P){var F=Ro();P=P===void 0?null:P;var q=F.memoizedState;return q!==null&&P!==null&&Vu(P,q[1])?q[0]:(M=M(),F.memoizedState=[M,P],M)}function Sp(M,P,F){return(Pi&21)===0?(M.baseState&&(M.baseState=!1,Tn=!0),M.memoizedState=F):(gt(F,P)||(F=xu(),Ur.lanes|=F,Di|=F,M.baseState=!0),P)}function Pf(M,P){var F=kr;kr=F!==0&&4>F?F:4,M(!0);var q=Sc.transition;Sc.transition={};try{M(!1),P()}finally{kr=F,Sc.transition=q}}function ed(){return Ro().memoizedState}function Cp(M,P,F){var q=ni(M);if(F={lane:q,action:F,hasEagerState:!1,eagerState:null,next:null},td(M))rd(P,F);else if(F=yp(M,P,F,q),F!==null){var le=Hn();Uo(F,M,q,le),Un(F,P,q)}}function $f(M,P,F){var q=ni(M),le={lane:q,action:F,hasEagerState:!1,eagerState:null,next:null};if(td(M))rd(P,le);else{var xe=M.alternate;if(M.lanes===0&&(xe===null||xe.lanes===0)&&(xe=P.lastRenderedReducer,xe!==null))try{var Me=P.lastRenderedState,Oe=xe(Me,F);if(le.hasEagerState=!0,le.eagerState=Oe,gt(Oe,Me)){var Be=P.interleaved;Be===null?(le.next=le,Bu(P)):(le.next=Be.next,Be.next=le),P.interleaved=le;return}}catch(at){}finally{}F=yp(M,P,le,q),F!==null&&(le=Hn(),Uo(F,M,q,le),Un(F,P,q))}}function td(M){var P=M.alternate;return M===Ur||P!==null&&P===Ur}function rd(M,P){$i=vl=!0;var F=M.pending;F===null?P.next=P:(P.next=F.next,F.next=P),M.pending=P}function Un(M,P,F){if((F&4194240)!==0){var q=P.lanes;q&=M.pendingLanes,F|=q,P.lanes=F,Vl(M,F)}}var ho={readContext:to,useCallback:Kt,useContext:Kt,useEffect:Kt,useImperativeHandle:Kt,useInsertionEffect:Kt,useLayoutEffect:Kt,useMemo:Kt,useReducer:Kt,useRef:Kt,useState:Kt,useDebugValue:Kt,useDeferredValue:Kt,useTransition:Kt,useMutableSource:Kt,useSyncExternalStore:Kt,useId:Kt,unstable_isNewReconciler:!1},Rf={readContext:to,useCallback:function(M,P){return Bo().memoizedState=[M,P===void 0?null:P],M},useContext:to,useEffect:Mc,useImperativeHandle:function(M,P,F){return F=F!=null?F.concat([M]):null,ya(4194308,4,Es.bind(null,P,M),F)},useLayoutEffect:function(M,P){return ya(4194308,4,M,P)},useInsertionEffect:function(M,P){return ya(4,2,M,P)},useMemo:function(M,P){var F=Bo();return P=P===void 0?null:P,M=M(),F.memoizedState=[M,P],M},useReducer:function(M,P,F){var q=Bo();return P=F!==void 0?F(P):P,q.memoizedState=q.baseState=P,M={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:M,lastRenderedState:P},q.queue=M,M=M.dispatch=Cp.bind(null,Ur,M),[q.memoizedState,M]},useRef:function(M){var P=Bo();return M={current:M},P.memoizedState=M},useState:Qu,useDebugValue:Tc,useDeferredValue:function(M){return Bo().memoizedState=M},useTransition:function(){var M=Qu(!1),P=M[0];return M=Pf.bind(null,M[1]),Bo().memoizedState=M,[P,M]},useMutableSource:function(){},useSyncExternalStore:function(M,P,F){var q=Ur,le=Bo();if(zr){if(F===void 0)throw Error(g(407));F=F()}else{if(F=P(),vn===null)throw Error(g(349));(Pi&30)!==0||Ku(q,P,F)}le.memoizedState=F;var xe={value:F,getSnapshot:P};return le.queue=xe,Mc(oo.bind(null,q,xe,M),[M]),q.flags|=2048,Js(9,Ju.bind(null,q,xe,F,P),void 0,null),F},useId:function(){var M=Bo(),P=vn.identifierPrefix;if(zr){var F=ts,q=hs;F=(q&~(1<<32-jo(q)-1)).toString(32)+F,P=":"+P+"R"+F,F=bl++,0<F&&(P+="H"+F.toString(32)),P+=":"}else F=Uu++,P=":"+P+"r"+F.toString(32)+":";return M.memoizedState=P},unstable_isNewReconciler:!1},kf={readContext:to,useCallback:Pc,useContext:to,useEffect:wl,useImperativeHandle:Zu,useInsertionEffect:vs,useLayoutEffect:bp,useMemo:Ep,useReducer:no,useRef:Xu,useState:function(){return no(El)},useDebugValue:Tc,useDeferredValue:function(M){var P=Ro();return Sp(P,un.memoizedState,M)},useTransition:function(){var M=no(El)[0],P=Ro().memoizedState;return[M,P]},useMutableSource:Sl,useSyncExternalStore:Cc,useId:ed,unstable_isNewReconciler:!1},$c={readContext:to,useCallback:Pc,useContext:to,useEffect:wl,useImperativeHandle:Zu,useInsertionEffect:vs,useLayoutEffect:bp,useMemo:Ep,useReducer:qu,useRef:Xu,useState:function(){return qu(El)},useDebugValue:Tc,useDeferredValue:function(M){var P=Ro();return un===null?P.memoizedState=M:Sp(P,un.memoizedState,M)},useTransition:function(){var M=qu(El)[0],P=Ro().memoizedState;return[M,P]},useMutableSource:Sl,useSyncExternalStore:Cc,useId:ed,unstable_isNewReconciler:!1};function An(M,P){if(M&&M.defaultProps){P=fe({},P),M=M.defaultProps;for(var F in M)P[F]===void 0&&(P[F]=M[F]);return P}return P}function Rc(M,P,F,q){P=M.memoizedState,F=F(q,P),F=F==null?P:fe({},P,F),M.memoizedState=F,M.lanes===0&&(M.updateQueue.baseState=F)}var Ml={isMounted:function(M){return(M=M._reactInternals)?xt(M)===M:!1},enqueueSetState:function(M,P,F){M=M._reactInternals;var q=Hn(),le=ni(M),xe=_s(q,le);xe.payload=P,F!=null&&(xe.callback=F),P=Ws(M,xe,le),P!==null&&(Uo(P,M,le,q),qs(P,M,le))},enqueueReplaceState:function(M,P,F){M=M._reactInternals;var q=Hn(),le=ni(M),xe=_s(q,le);xe.tag=1,xe.payload=P,F!=null&&(xe.callback=F),P=Ws(M,xe,le),P!==null&&(Uo(P,M,le,q),qs(P,M,le))},enqueueForceUpdate:function(M,P){M=M._reactInternals;var F=Hn(),q=ni(M),le=_s(F,q);le.tag=2,P!=null&&(le.callback=P),P=Ws(M,le,q),P!==null&&(Uo(P,M,q,F),qs(P,M,q))}};function wp(M,P,F,q,le,xe,Me){return M=M.stateNode,typeof M.shouldComponentUpdate=="function"?M.shouldComponentUpdate(q,xe,Me):P.prototype&&P.prototype.isPureReactComponent?!ct(F,q)||!ct(le,xe):!0}function nd(M,P,F){var q=!1,le=zs,xe=P.contextType;return typeof xe=="object"&&xe!==null?xe=to(xe):(le=Qn(P)?yi:Ln.current,q=P.contextTypes,xe=(q=q!=null)?Jn(M,le):zs),P=new P(F,xe),M.memoizedState=P.state!==null&&P.state!==void 0?P.state:null,P.updater=Ml,M.stateNode=P,P._reactInternals=M,q&&(M=M.stateNode,M.__reactInternalMemoizedUnmaskedChildContext=le,M.__reactInternalMemoizedMaskedChildContext=xe),P}function ki(M,P,F,q){M=P.state,typeof P.componentWillReceiveProps=="function"&&P.componentWillReceiveProps(F,q),typeof P.UNSAFE_componentWillReceiveProps=="function"&&P.UNSAFE_componentWillReceiveProps(F,q),P.state!==M&&Ml.enqueueReplaceState(P,P.state,null)}function Ii(M,P,F,q){var le=M.stateNode;le.props=F,le.state=M.memoizedState,le.refs={},Ti(M);var xe=P.contextType;typeof xe=="object"&&xe!==null?le.context=to(xe):(xe=Qn(P)?yi:Ln.current,le.context=Jn(M,xe)),le.state=M.memoizedState,xe=P.getDerivedStateFromProps,typeof xe=="function"&&(Rc(M,P,xe,F),le.state=M.memoizedState),typeof P.getDerivedStateFromProps=="function"||typeof le.getSnapshotBeforeUpdate=="function"||typeof le.UNSAFE_componentWillMount!="function"&&typeof le.componentWillMount!="function"||(P=le.state,typeof le.componentWillMount=="function"&&le.componentWillMount(),typeof le.UNSAFE_componentWillMount=="function"&&le.UNSAFE_componentWillMount(),P!==le.state&&Ml.enqueueReplaceState(le,le.state,null),yc(M,F,le,q),le.state=M.memoizedState),typeof le.componentDidMount=="function"&&(M.flags|=4194308)}function va(M,P){try{var F="",q=P;do F+=Te(q),q=q.return;while(q);var le=F}catch(xe){le=`
|
|
31
31
|
Error generating stack: `+xe.message+`
|
|
32
|
-
`+xe.stack}return{value:M,source:P,stack:le,digest:null}}function kc(M,P,F){return{value:M,source:null,stack:F!=null?F:null,digest:P!=null?P:null}}function Ic(M,P){try{console.error(P.value)}catch(F){setTimeout(function(){throw F})}}var Lc=typeof WeakMap=="function"?WeakMap:Map;function od(M,P,F){F=_s(-1,F),F.tag=3,F.payload={element:null};var q=P.value;return F.callback=function(){Vc||(Vc=!0,bd=q),Ic(M,P)},F}function Tl(M,P,F){F=_s(-1,F),F.tag=3;var q=M.type.getDerivedStateFromError;if(typeof q=="function"){var le=P.value;F.payload=function(){return q(le)},F.callback=function(){Ic(M,P)}}var xe=M.stateNode;return xe!==null&&typeof xe.componentDidCatch=="function"&&(F.callback=function(){Ic(M,P),typeof q!="function"&&(ti===null?ti=new Set([this]):ti.add(this));var Me=P.stack;this.componentDidCatch(P.value,{componentStack:Me!==null?Me:""})}),F}function Dc(M,P,F){var q=M.pingCache;if(q===null){q=M.pingCache=new Lc;var le=new Set;q.set(P,le)}else le=q.get(P),le===void 0&&(le=new Set,q.set(P,le));le.has(F)||(le.add(F),M=Up.bind(null,M,P,F),P.then(M,M))}function Pl(M){do{var P;if((P=M.tag===13)&&(P=M.memoizedState,P=P!==null?P.dehydrated!==null:!0),P)return M;M=M.return}while(M!==null);return null}function Mp(M,P,F,q,le){return(M.mode&1)===0?(M===P?M.flags|=65536:(M.flags|=128,F.flags|=131072,F.flags&=-52805,F.tag===1&&(F.alternate===null?F.tag=17:(P=_s(-1,1),P.tag=2,Ws(F,P,1))),F.lanes|=1),M):(M.flags|=65536,M.lanes=le,M)}var Tp=j.ReactCurrentOwner,Tn=!1;function On(M,P,F,q){P.child=M===null?xn(P,null,F,q):wi(P,M.child,F,q)}function Ac(M,P,F,q,le){F=F.render;var xe=P.ref;return Zr(P,le),q=Wu(M,P,F,q,xe,le),F=Ri(),M!==null&&!Tn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,Ss(M,P,le)):(zr&&F&&Hu(P),P.flags|=1,On(M,P,q,le),P.child)}function Pp(M,P,F,q,le){if(M===null){var xe=F.type;return typeof xe=="function"&&!Td(xe)&&xe.defaultProps===void 0&&F.compare===null&&F.defaultProps===void 0?(P.tag=15,P.type=xe,ad(M,P,xe,q,le)):(M=Ni(F.type,null,q,P,P.mode,le),M.ref=P.ref,M.return=P,P.child=M)}if(xe=M.child,(M.lanes&le)===0){var Me=xe.memoizedProps;if(F=F.compare,F=F!==null?F:ct,F(Me,q)&&M.ref===P.ref)return Ss(M,P,le)}return P.flags|=1,M=ii(xe,q),M.ref=P.ref,M.return=P,P.child=M}function ad(M,P,F,q,le){if(M!==null){var xe=M.memoizedProps;if(ct(xe,q)&&M.ref===P.ref)if(Tn=!1,P.pendingProps=q=xe,(M.lanes&le)!==0)(M.flags&131072)!==0&&(Tn=!0);else return P.lanes=M.lanes,Ss(M,P,le)}return Oc(M,P,F,q,le)}function ns(M,P,F){var q=P.pendingProps,le=q.children,xe=M!==null?M.memoizedState:null;if(q.mode==="hidden")if((P.mode&1)===0)P.memoizedState={baseLanes:0,cachePool:null,transitions:null},Hr(Ca,go),go|=F;else{if((F&1073741824)===0)return M=xe!==null?xe.baseLanes|F:F,P.lanes=P.childLanes=1073741824,P.memoizedState={baseLanes:M,cachePool:null,transitions:null},P.updateQueue=null,Hr(Ca,go),go|=M,null;P.memoizedState={baseLanes:0,cachePool:null,transitions:null},q=xe!==null?xe.baseLanes:F,Hr(Ca,go),go|=q}else xe!==null?(q=xe.baseLanes|F,P.memoizedState=null):q=F,Hr(Ca,go),go|=q;return On(M,P,le,F),P.child}function ld(M,P){var F=P.ref;(M===null&&F!==null||M!==null&&M.ref!==F)&&(P.flags|=512,P.flags|=2097152)}function Oc(M,P,F,q,le){var xe=Qn(F)?yi:Ln.current;return xe=Jn(P,xe),Zr(P,le),F=Wu(M,P,F,q,xe,le),q=Ri(),M!==null&&!Tn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,Ss(M,P,le)):(zr&&q&&Hu(P),P.flags|=1,On(M,P,F,le),P.child)}function $p(M,P,F,q,le){if(Qn(F)){var xe=!0;fc(P)}else xe=!1;if(Zr(P,le),P.stateNode===null)os(M,P),nd(P,F,q),Ii(P,F,q,le),q=!0;else if(M===null){var Me=P.stateNode,Oe=P.memoizedProps;Me.props=Oe;var Be=Me.context,at=F.contextType;typeof at=="object"&&at!==null?at=to(at):(at=Qn(F)?yi:Ln.current,at=Jn(P,at));var Tt=F.getDerivedStateFromProps,$t=typeof Tt=="function"||typeof Me.getSnapshotBeforeUpdate=="function";$t||typeof Me.UNSAFE_componentWillReceiveProps!="function"&&typeof Me.componentWillReceiveProps!="function"||(Oe!==q||Be!==at)&&ki(P,Me,q,at),Vs=!1;var Mt=P.memoizedState;Me.state=Mt,yc(P,q,Me,le),Be=P.memoizedState,Oe!==q||Mt!==Be||Kn.current||Vs?(typeof Tt=="function"&&(Rc(P,F,Tt,q),Be=P.memoizedState),(Oe=Vs||wp(P,F,Oe,q,Mt,Be,at))?($t||typeof Me.UNSAFE_componentWillMount!="function"&&typeof Me.componentWillMount!="function"||(typeof Me.componentWillMount=="function"&&Me.componentWillMount(),typeof Me.UNSAFE_componentWillMount=="function"&&Me.UNSAFE_componentWillMount()),typeof Me.componentDidMount=="function"&&(P.flags|=4194308)):(typeof Me.componentDidMount=="function"&&(P.flags|=4194308),P.memoizedProps=q,P.memoizedState=Be),Me.props=q,Me.state=Be,Me.context=at,q=Oe):(typeof Me.componentDidMount=="function"&&(P.flags|=4194308),q=!1)}else{Me=P.stateNode,zu(M,P),Oe=P.memoizedProps,at=P.type===P.elementType?Oe:An(P.type,Oe),Me.props=at,$t=P.pendingProps,Mt=Me.context,Be=F.contextType,typeof Be=="object"&&Be!==null?Be=to(Be):(Be=Qn(F)?yi:Ln.current,Be=Jn(P,Be));var jt=F.getDerivedStateFromProps;(Tt=typeof jt=="function"||typeof Me.getSnapshotBeforeUpdate=="function")||typeof Me.UNSAFE_componentWillReceiveProps!="function"&&typeof Me.componentWillReceiveProps!="function"||(Oe!==$t||Mt!==Be)&&ki(P,Me,q,Be),Vs=!1,Mt=P.memoizedState,Me.state=Mt,yc(P,q,Me,le);var Bt=P.memoizedState;Oe!==$t||Mt!==Bt||Kn.current||Vs?(typeof jt=="function"&&(Rc(P,F,jt,q),Bt=P.memoizedState),(at=Vs||wp(P,F,at,q,Mt,Bt,Be)||!1)?(Tt||typeof Me.UNSAFE_componentWillUpdate!="function"&&typeof Me.componentWillUpdate!="function"||(typeof Me.componentWillUpdate=="function"&&Me.componentWillUpdate(q,Bt,Be),typeof Me.UNSAFE_componentWillUpdate=="function"&&Me.UNSAFE_componentWillUpdate(q,Bt,Be)),typeof Me.componentDidUpdate=="function"&&(P.flags|=4),typeof Me.getSnapshotBeforeUpdate=="function"&&(P.flags|=1024)):(typeof Me.componentDidUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=4),typeof Me.getSnapshotBeforeUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=1024),P.memoizedProps=q,P.memoizedState=Bt),Me.props=q,Me.state=Bt,Me.context=Be,q=at):(typeof Me.componentDidUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=4),typeof Me.getSnapshotBeforeUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=1024),q=!1)}return Fc(M,P,F,q,xe,le)}function Fc(M,P,F,q,le,xe){ld(M,P);var Me=(P.flags&128)!==0;if(!q&&!Me)return le&&Zo(P,F,!1),Ss(M,P,xe);q=P.stateNode,Tp.current=P;var Oe=Me&&typeof F.getDerivedStateFromError!="function"?null:q.render();return P.flags|=1,M!==null&&Me?(P.child=wi(P,M.child,null,xe),P.child=wi(P,null,Oe,xe)):On(M,P,Oe,xe),P.memoizedState=q.state,le&&Zo(P,F,!0),P.child}function Rp(M){var P=M.stateNode;P.pendingContext?fp(M,P.pendingContext,P.pendingContext!==P.context):P.context&&fp(M,P.context,!1),xl(M,P.containerInfo)}function kp(M,P,F,q,le){return Si(),Ci(le),P.flags|=256,On(M,P,F,q),P.child}var zo={dehydrated:null,treeContext:null,retryLane:0};function $l(M){return{baseLanes:M,cachePool:null,transitions:null}}function Nc(M,P,F){var q=P.pendingProps,le=Gr.current,xe=!1,Me=(P.flags&128)!==0,Oe;if((Oe=Me)||(Oe=M!==null&&M.memoizedState===null?!1:(le&2)!==0),Oe?(xe=!0,P.flags&=-129):(M===null||M.memoizedState!==null)&&(le|=1),Hr(Gr,le&1),M===null)return gs(P),M=P.memoizedState,M!==null&&(M=M.dehydrated,M!==null)?((P.mode&1)===0?P.lanes=1:M.data==="$!"?P.lanes=8:P.lanes=1073741824,null):(Me=q.children,M=q.fallback,xe?(q=P.mode,xe=P.child,Me={mode:"hidden",children:Me},(q&1)===0&&xe!==null?(xe.childLanes=0,xe.pendingProps=Me):xe=Xc(Me,q,0,null),M=ji(M,q,F,null),xe.return=P,M.return=P,xe.sibling=M,P.child=xe,P.child.memoizedState=$l(F),P.memoizedState=zo,M):Rl(P,Me));if(le=M.memoizedState,le!==null&&(Oe=le.dehydrated,Oe!==null))return ba(M,P,Me,q,Oe,le,F);if(xe){xe=q.fallback,Me=P.mode,le=M.child,Oe=le.sibling;var Be={mode:"hidden",children:q.children};return(Me&1)===0&&P.child!==le?(q=P.child,q.childLanes=0,q.pendingProps=Be,P.deletions=null):(q=ii(le,Be),q.subtreeFlags=le.subtreeFlags&14680064),Oe!==null?xe=ii(Oe,xe):(xe=ji(xe,Me,F,null),xe.flags|=2),xe.return=P,q.return=P,q.sibling=xe,P.child=q,q=xe,xe=P.child,Me=M.child.memoizedState,Me=Me===null?$l(F):{baseLanes:Me.baseLanes|F,cachePool:null,transitions:Me.transitions},xe.memoizedState=Me,xe.childLanes=M.childLanes&~F,P.memoizedState=zo,q}return xe=M.child,M=xe.sibling,q=ii(xe,{mode:"visible",children:q.children}),(P.mode&1)===0&&(q.lanes=F),q.return=P,q.sibling=null,M!==null&&(F=P.deletions,F===null?(P.deletions=[M],P.flags|=16):F.push(M)),P.child=q,P.memoizedState=null,q}function Rl(M,P){return P=Xc({mode:"visible",children:P},M.mode,0,null),P.return=M,M.child=P}function Li(M,P,F,q){return q!==null&&Ci(q),wi(P,M.child,null,F),M=Rl(P,P.pendingProps.children),M.flags|=2,P.memoizedState=null,M}function ba(M,P,F,q,le,xe,Me){if(F)return P.flags&256?(P.flags&=-257,q=kc(Error(g(422))),Li(M,P,Me,q)):P.memoizedState!==null?(P.child=M.child,P.flags|=128,null):(xe=q.fallback,le=P.mode,q=Xc({mode:"visible",children:q.children},le,0,null),xe=ji(xe,le,Me,null),xe.flags|=2,q.return=P,xe.return=P,q.sibling=xe,P.child=q,(P.mode&1)!==0&&wi(P,M.child,null,Me),P.child.memoizedState=$l(Me),P.memoizedState=zo,xe);if((P.mode&1)===0)return Li(M,P,Me,null);if(le.data==="$!"){if(q=le.nextSibling&&le.nextSibling.dataset,q)var Oe=q.dgst;return q=Oe,xe=Error(g(419)),q=kc(xe,q,void 0),Li(M,P,Me,q)}if(Oe=(Me&M.childLanes)!==0,Tn||Oe){if(q=vn,q!==null){switch(Me&-Me){case 4:le=2;break;case 16:le=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:le=32;break;case 536870912:le=268435456;break;default:le=0}le=(le&(q.suspendedLanes|Me))!==0?0:le,le!==0&&le!==xe.retryLane&&(xe.retryLane=le,Yo(M,le),Uo(q,M,le,-1))}return Md(),q=kc(Error(g(421))),Li(M,P,Me,q)}return le.data==="$?"?(P.flags|=128,P.child=M.child,P=jf.bind(null,M),le._reactRetry=P,null):(M=xe.treeContext,Dn=Hs(le.nextSibling),Mn=P,zr=!0,$o=null,M!==null&&(To[Po++]=hs,To[Po++]=ts,To[Po++]=Ei,hs=M.id,ts=M.overflow,Ei=P),P=Rl(P,q.children),P.flags|=4096,P)}function Zt(M,P,F){M.lanes|=P;var q=M.alternate;q!==null&&(q.lanes|=P),_c(M.return,P,F)}function Ea(M,P,F,q,le){var xe=M.memoizedState;xe===null?M.memoizedState={isBackwards:P,rendering:null,renderingStartTime:0,last:q,tail:F,tailMode:le}:(xe.isBackwards=P,xe.rendering=null,xe.renderingStartTime=0,xe.last=q,xe.tail=F,xe.tailMode=le)}function jc(M,P,F){var q=P.pendingProps,le=q.revealOrder,xe=q.tail;if(On(M,P,q.children,F),q=Gr.current,(q&2)!==0)q=q&1|2,P.flags|=128;else{if(M!==null&&(M.flags&128)!==0)e:for(M=P.child;M!==null;){if(M.tag===13)M.memoizedState!==null&&Zt(M,F,P);else if(M.tag===19)Zt(M,F,P);else if(M.child!==null){M.child.return=M,M=M.child;continue}if(M===P)break e;for(;M.sibling===null;){if(M.return===null||M.return===P)break e;M=M.return}M.sibling.return=M.return,M=M.sibling}q&=1}if(Hr(Gr,q),(P.mode&1)===0)P.memoizedState=null;else switch(le){case"forwards":for(F=P.child,le=null;F!==null;)M=F.alternate,M!==null&&_l(M)===null&&(le=F),F=F.sibling;F=le,F===null?(le=P.child,P.child=null):(le=F.sibling,F.sibling=null),Ea(P,!1,le,F,xe);break;case"backwards":for(F=null,le=P.child,P.child=null;le!==null;){if(M=le.alternate,M!==null&&_l(M)===null){P.child=le;break}M=le.sibling,le.sibling=F,F=le,le=M}Ea(P,!0,F,null,xe);break;case"together":Ea(P,!1,null,null,void 0);break;default:P.memoizedState=null}return P.child}function os(M,P){(P.mode&1)===0&&M!==null&&(M.alternate=null,P.alternate=null,P.flags|=2)}function Ss(M,P,F){if(M!==null&&(P.dependencies=M.dependencies),Di|=P.lanes,(F&P.childLanes)===0)return null;if(M!==null&&P.child!==M.child)throw Error(g(153));if(P.child!==null){for(M=P.child,F=ii(M,M.pendingProps),P.child=F,F.return=P;M.sibling!==null;)M=M.sibling,F=F.sibling=ii(M,M.pendingProps),F.return=P;F.sibling=null}return P.child}function cd(M,P,F){switch(P.tag){case 3:Rp(P),Si();break;case 5:bc(P);break;case 1:Qn(P.type)&&fc(P);break;case 4:xl(P,P.stateNode.containerInfo);break;case 10:var q=P.type._context,le=P.memoizedProps.value;Hr(pa,q._currentValue),q._currentValue=le;break;case 13:if(q=P.memoizedState,q!==null)return q.dehydrated!==null?(Hr(Gr,Gr.current&1),P.flags|=128,null):(F&P.child.childLanes)!==0?Nc(M,P,F):(Hr(Gr,Gr.current&1),M=Ss(M,P,F),M!==null?M.sibling:null);Hr(Gr,Gr.current&1);break;case 19:if(q=(F&P.childLanes)!==0,(M.flags&128)!==0){if(q)return jc(M,P,F);P.flags|=128}if(le=P.memoizedState,le!==null&&(le.rendering=null,le.tail=null,le.lastEffect=null),Hr(Gr,Gr.current),q)break;return null;case 22:case 23:return P.lanes=0,ns(M,P,F)}return Ss(M,P,F)}var ud,_n,Ip,Lp;ud=function(M,P){for(var F=P.child;F!==null;){if(F.tag===5||F.tag===6)M.appendChild(F.stateNode);else if(F.tag!==4&&F.child!==null){F.child.return=F,F=F.child;continue}if(F===P)break;for(;F.sibling===null;){if(F.return===null||F.return===P)return;F=F.return}F.sibling.return=F.return,F=F.sibling}},_n=function(){},Ip=function(M,P,F,q){var le=M.memoizedProps;if(le!==q){M=P.stateNode,Ks(rs.current);var xe=null;switch(F){case"input":le=Ge(M,le),q=Ge(M,q),xe=[];break;case"select":le=fe({},le,{value:void 0}),q=fe({},q,{value:void 0}),xe=[];break;case"textarea":le=Ze(M,le),q=Ze(M,q),xe=[];break;default:typeof le.onClick!="function"&&typeof q.onClick=="function"&&(M.onclick=Za)}Dt(F,q);var Me;F=null;for(at in le)if(!q.hasOwnProperty(at)&&le.hasOwnProperty(at)&&le[at]!=null)if(at==="style"){var Oe=le[at];for(Me in Oe)Oe.hasOwnProperty(Me)&&(F||(F={}),F[Me]="")}else at!=="dangerouslySetInnerHTML"&&at!=="children"&&at!=="suppressContentEditableWarning"&&at!=="suppressHydrationWarning"&&at!=="autoFocus"&&(b.hasOwnProperty(at)?xe||(xe=[]):(xe=xe||[]).push(at,null));for(at in q){var Be=q[at];if(Oe=le!=null?le[at]:void 0,q.hasOwnProperty(at)&&Be!==Oe&&(Be!=null||Oe!=null))if(at==="style")if(Oe){for(Me in Oe)!Oe.hasOwnProperty(Me)||Be&&Be.hasOwnProperty(Me)||(F||(F={}),F[Me]="");for(Me in Be)Be.hasOwnProperty(Me)&&Oe[Me]!==Be[Me]&&(F||(F={}),F[Me]=Be[Me])}else F||(xe||(xe=[]),xe.push(at,F)),F=Be;else at==="dangerouslySetInnerHTML"?(Be=Be?Be.__html:void 0,Oe=Oe?Oe.__html:void 0,Be!=null&&Oe!==Be&&(xe=xe||[]).push(at,Be)):at==="children"?typeof Be!="string"&&typeof Be!="number"||(xe=xe||[]).push(at,""+Be):at!=="suppressContentEditableWarning"&&at!=="suppressHydrationWarning"&&(b.hasOwnProperty(at)?(Be!=null&&at==="onScroll"&&Yr("scroll",M),xe||Oe===Be||(xe=[])):(xe=xe||[]).push(at,Be))}F&&(xe=xe||[]).push("style",F);var at=xe;(P.updateQueue=at)&&(P.flags|=4)}},Lp=function(M,P,F,q){F!==q&&(P.flags|=4)};function Sa(M,P){if(!zr)switch(M.tailMode){case"hidden":P=M.tail;for(var F=null;P!==null;)P.alternate!==null&&(F=P),P=P.sibling;F===null?M.tail=null:F.sibling=null;break;case"collapsed":F=M.tail;for(var q=null;F!==null;)F.alternate!==null&&(q=F),F=F.sibling;q===null?P||M.tail===null?M.tail=null:M.tail.sibling=null:q.sibling=null}}function Fn(M){var P=M.alternate!==null&&M.alternate.child===M.child,F=0,q=0;if(P)for(var le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags&14680064,q|=le.flags&14680064,le.return=M,le=le.sibling;else for(le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags,q|=le.flags,le.return=M,le=le.sibling;return M.subtreeFlags|=q,M.childLanes=F,P}function Dp(M,P,F){var q=P.pendingProps;switch(al(P),P.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Fn(P),null;case 1:return Qn(P.type)&&pc(),Fn(P),null;case 3:return q=P.stateNode,xa(),Lr(Kn),Lr(Ln),Gu(),q.pendingContext&&(q.context=q.pendingContext,q.pendingContext=null),(M===null||M.child===null)&&(gc(P)?P.flags|=4:M===null||M.memoizedState.isDehydrated&&(P.flags&256)===0||(P.flags|=1024,$o!==null&&(Sd($o),$o=null))),_n(M,P),Fn(P),null;case 5:Ec(P);var le=Ks(hl.current);if(F=P.type,M!==null&&P.stateNode!=null)Ip(M,P,F,q,le),M.ref!==P.ref&&(P.flags|=512,P.flags|=2097152);else{if(!q){if(P.stateNode===null)throw Error(g(166));return Fn(P),null}if(M=Ks(rs.current),gc(P)){q=P.stateNode,F=P.type;var xe=P.memoizedProps;switch(q[Xo]=P,q[il]=xe,M=(P.mode&1)!==0,F){case"dialog":Yr("cancel",q),Yr("close",q);break;case"iframe":case"object":case"embed":Yr("load",q);break;case"video":case"audio":for(le=0;le<ea.length;le++)Yr(ea[le],q);break;case"source":Yr("error",q);break;case"img":case"image":case"link":Yr("error",q),Yr("load",q);break;case"details":Yr("toggle",q);break;case"input":Ye(q,xe),Yr("invalid",q);break;case"select":q._wrapperState={wasMultiple:!!xe.multiple},Yr("invalid",q);break;case"textarea":qe(q,xe),Yr("invalid",q)}Dt(F,xe),le=null;for(var Me in xe)if(xe.hasOwnProperty(Me)){var Oe=xe[Me];Me==="children"?typeof Oe=="string"?q.textContent!==Oe&&(xe.suppressHydrationWarning!==!0&&uc(q.textContent,Oe,M),le=["children",Oe]):typeof Oe=="number"&&q.textContent!==""+Oe&&(xe.suppressHydrationWarning!==!0&&uc(q.textContent,Oe,M),le=["children",""+Oe]):b.hasOwnProperty(Me)&&Oe!=null&&Me==="onScroll"&&Yr("scroll",q)}switch(F){case"input":De(q),We(q,xe,!0);break;case"textarea":De(q),St(q);break;case"select":case"option":break;default:typeof xe.onClick=="function"&&(q.onclick=Za)}q=le,P.updateQueue=q,q!==null&&(P.flags|=4)}else{Me=le.nodeType===9?le:le.ownerDocument,M==="http://www.w3.org/1999/xhtml"&&(M=Ae(F)),M==="http://www.w3.org/1999/xhtml"?F==="script"?(M=Me.createElement("div"),M.innerHTML="<script><\/script>",M=M.removeChild(M.firstChild)):typeof q.is=="string"?M=Me.createElement(F,{is:q.is}):(M=Me.createElement(F),F==="select"&&(Me=M,q.multiple?Me.multiple=!0:q.size&&(Me.size=q.size))):M=Me.createElementNS(M,F),M[Xo]=P,M[il]=q,ud(M,P,!1,!1),P.stateNode=M;e:{switch(Me=Jt(F,q),F){case"dialog":Yr("cancel",M),Yr("close",M),le=q;break;case"iframe":case"object":case"embed":Yr("load",M),le=q;break;case"video":case"audio":for(le=0;le<ea.length;le++)Yr(ea[le],M);le=q;break;case"source":Yr("error",M),le=q;break;case"img":case"image":case"link":Yr("error",M),Yr("load",M),le=q;break;case"details":Yr("toggle",M),le=q;break;case"input":Ye(M,q),le=Ge(M,q),Yr("invalid",M);break;case"option":le=q;break;case"select":M._wrapperState={wasMultiple:!!q.multiple},le=fe({},q,{value:void 0}),Yr("invalid",M);break;case"textarea":qe(M,q),le=Ze(M,q),Yr("invalid",M);break;default:le=q}Dt(F,le),Oe=le;for(xe in Oe)if(Oe.hasOwnProperty(xe)){var Be=Oe[xe];xe==="style"?Ht(M,Be):xe==="dangerouslySetInnerHTML"?(Be=Be?Be.__html:void 0,Be!=null&&tt(M,Be)):xe==="children"?typeof Be=="string"?(F!=="textarea"||Be!=="")&&It(M,Be):typeof Be=="number"&&It(M,""+Be):xe!=="suppressContentEditableWarning"&&xe!=="suppressHydrationWarning"&&xe!=="autoFocus"&&(b.hasOwnProperty(xe)?Be!=null&&xe==="onScroll"&&Yr("scroll",M):Be!=null&&B(M,xe,Be,Me))}switch(F){case"input":De(M),We(M,q,!1);break;case"textarea":De(M),St(M);break;case"option":q.value!=null&&M.setAttribute("value",""+Ce(q.value));break;case"select":M.multiple=!!q.multiple,xe=q.value,xe!=null?Ve(M,!!q.multiple,xe,!1):q.defaultValue!=null&&Ve(M,!!q.multiple,q.defaultValue,!0);break;default:typeof le.onClick=="function"&&(M.onclick=Za)}switch(F){case"button":case"input":case"select":case"textarea":q=!!q.autoFocus;break e;case"img":q=!0;break e;default:q=!1}}q&&(P.flags|=4)}P.ref!==null&&(P.flags|=512,P.flags|=2097152)}return Fn(P),null;case 6:if(M&&P.stateNode!=null)Lp(M,P,M.memoizedProps,q);else{if(typeof q!="string"&&P.stateNode===null)throw Error(g(166));if(F=Ks(hl.current),Ks(rs.current),gc(P)){if(q=P.stateNode,F=P.memoizedProps,q[Xo]=P,(xe=q.nodeValue!==F)&&(M=Mn,M!==null))switch(M.tag){case 3:uc(q.nodeValue,F,(M.mode&1)!==0);break;case 5:M.memoizedProps.suppressHydrationWarning!==!0&&uc(q.nodeValue,F,(M.mode&1)!==0)}xe&&(P.flags|=4)}else q=(F.nodeType===9?F:F.ownerDocument).createTextNode(q),q[Xo]=P,P.stateNode=q}return Fn(P),null;case 13:if(Lr(Gr),q=P.memoizedState,M===null||M.memoizedState!==null&&M.memoizedState.dehydrated!==null){if(zr&&Dn!==null&&(P.mode&1)!==0&&(P.flags&128)===0)Yu(),Si(),P.flags|=98560,xe=!1;else if(xe=gc(P),q!==null&&q.dehydrated!==null){if(M===null){if(!xe)throw Error(g(318));if(xe=P.memoizedState,xe=xe!==null?xe.dehydrated:null,!xe)throw Error(g(317));xe[Xo]=P}else Si(),(P.flags&128)===0&&(P.memoizedState=null),P.flags|=4;Fn(P),xe=!1}else $o!==null&&(Sd($o),$o=null),xe=!0;if(!xe)return P.flags&65536?P:null}return(P.flags&128)!==0?(P.lanes=F,P):(q=q!==null,q!==(M!==null&&M.memoizedState!==null)&&q&&(P.child.flags|=8192,(P.mode&1)!==0&&(M===null||(Gr.current&1)!==0?dn===0&&(dn=3):Md())),P.updateQueue!==null&&(P.flags|=4),Fn(P),null);case 4:return xa(),_n(M,P),M===null&&Ns(P.stateNode.containerInfo),Fn(P),null;case 10:return xs(P.type._context),Fn(P),null;case 17:return Qn(P.type)&&pc(),Fn(P),null;case 19:if(Lr(Gr),xe=P.memoizedState,xe===null)return Fn(P),null;if(q=(P.flags&128)!==0,Me=xe.rendering,Me===null)if(q)Sa(xe,!1);else{if(dn!==0||M!==null&&(M.flags&128)!==0)for(M=P.child;M!==null;){if(Me=_l(M),Me!==null){for(P.flags|=128,Sa(xe,!1),q=Me.updateQueue,q!==null&&(P.updateQueue=q,P.flags|=4),P.subtreeFlags=0,q=F,F=P.child;F!==null;)xe=F,M=q,xe.flags&=14680066,Me=xe.alternate,Me===null?(xe.childLanes=0,xe.lanes=M,xe.child=null,xe.subtreeFlags=0,xe.memoizedProps=null,xe.memoizedState=null,xe.updateQueue=null,xe.dependencies=null,xe.stateNode=null):(xe.childLanes=Me.childLanes,xe.lanes=Me.lanes,xe.child=Me.child,xe.subtreeFlags=0,xe.deletions=null,xe.memoizedProps=Me.memoizedProps,xe.memoizedState=Me.memoizedState,xe.updateQueue=Me.updateQueue,xe.type=Me.type,M=Me.dependencies,xe.dependencies=M===null?null:{lanes:M.lanes,firstContext:M.firstContext}),F=F.sibling;return Hr(Gr,Gr.current&1|2),P.child}M=M.sibling}xe.tail!==null&&Jr()>Ma&&(P.flags|=128,q=!0,Sa(xe,!1),P.lanes=4194304)}else{if(!q)if(M=_l(Me),M!==null){if(P.flags|=128,q=!0,F=M.updateQueue,F!==null&&(P.updateQueue=F,P.flags|=4),Sa(xe,!0),xe.tail===null&&xe.tailMode==="hidden"&&!Me.alternate&&!zr)return Fn(P),null}else 2*Jr()-xe.renderingStartTime>Ma&&F!==1073741824&&(P.flags|=128,q=!0,Sa(xe,!1),P.lanes=4194304);xe.isBackwards?(Me.sibling=P.child,P.child=Me):(F=xe.last,F!==null?F.sibling=Me:P.child=Me,xe.last=Me)}return xe.tail!==null?(P=xe.tail,xe.rendering=P,xe.tail=P.sibling,xe.renderingStartTime=Jr(),P.sibling=null,F=Gr.current,Hr(Gr,q?F&1|2:F&1),P):(Fn(P),null);case 22:case 23:return wd(),q=P.memoizedState!==null,M!==null&&M.memoizedState!==null!==q&&(P.flags|=8192),q&&(P.mode&1)!==0?(go&1073741824)!==0&&(Fn(P),P.subtreeFlags&6&&(P.flags|=8192)):Fn(P),null;case 24:return null;case 25:return null}throw Error(g(156,P.tag))}function If(M,P){switch(al(P),P.tag){case 1:return Qn(P.type)&&pc(),M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 3:return xa(),Lr(Kn),Lr(Ln),Gu(),M=P.flags,(M&65536)!==0&&(M&128)===0?(P.flags=M&-65537|128,P):null;case 5:return Ec(P),null;case 13:if(Lr(Gr),M=P.memoizedState,M!==null&&M.dehydrated!==null){if(P.alternate===null)throw Error(g(340));Si()}return M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 19:return Lr(Gr),null;case 4:return xa(),null;case 10:return xs(P.type._context),null;case 22:case 23:return wd(),null;case 24:return null;default:return null}}var Hc=!1,Nn=!1,Cs=typeof WeakSet=="function"?WeakSet:Set,At=null;function Qs(M,P){var F=M.ref;if(F!==null)if(typeof F=="function")try{F(null)}catch(q){Vr(M,P,q)}else F.current=null}function dd(M,P,F){try{F()}catch(q){Vr(M,P,q)}}var Yc=!1;function Lf(M,P){if(Fu=Ql,M=Xr(),Ar(M)){if("selectionStart"in M)var F={start:M.selectionStart,end:M.selectionEnd};else e:{F=(F=M.ownerDocument)&&F.defaultView||window;var q=F.getSelection&&F.getSelection();if(q&&q.rangeCount!==0){F=q.anchorNode;var le=q.anchorOffset,xe=q.focusNode;q=q.focusOffset;try{F.nodeType,xe.nodeType}catch(kt){F=null;break e}var Me=0,Oe=-1,Be=-1,at=0,Tt=0,$t=M,Mt=null;t:for(;;){for(var jt;$t!==F||le!==0&&$t.nodeType!==3||(Oe=Me+le),$t!==xe||q!==0&&$t.nodeType!==3||(Be=Me+q),$t.nodeType===3&&(Me+=$t.nodeValue.length),(jt=$t.firstChild)!==null;)Mt=$t,$t=jt;for(;;){if($t===M)break t;if(Mt===F&&++at===le&&(Oe=Me),Mt===xe&&++Tt===q&&(Be=Me),(jt=$t.nextSibling)!==null)break;$t=Mt,Mt=$t.parentNode}$t=jt}F=Oe===-1||Be===-1?null:{start:Oe,end:Be}}else F=null}F=F||{start:0,end:0}}else F=null;for(tl={focusedElem:M,selectionRange:F},Ql=!1,At=P;At!==null;)if(P=At,M=P.child,(P.subtreeFlags&1028)!==0&&M!==null)M.return=P,At=M;else for(;At!==null;){P=At;try{var Bt=P.alternate;if((P.flags&1024)!==0)switch(P.tag){case 0:case 11:case 15:break;case 1:if(Bt!==null){var zt=Bt.memoizedProps,qr=Bt.memoizedState,rt=P.stateNode,Ke=rt.getSnapshotBeforeUpdate(P.elementType===P.type?zt:An(P.type,zt),qr);rt.__reactInternalSnapshotBeforeUpdate=Ke}break;case 3:var st=P.stateNode.containerInfo;st.nodeType===1?st.textContent="":st.nodeType===9&&st.documentElement&&st.removeChild(st.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(g(163))}}catch(kt){Vr(P,P.return,kt)}if(M=P.sibling,M!==null){M.return=P.return,At=M;break}At=P.return}return Bt=Yc,Yc=!1,Bt}function kl(M,P,F){var q=P.updateQueue;if(q=q!==null?q.lastEffect:null,q!==null){var le=q=q.next;do{if((le.tag&M)===M){var xe=le.destroy;le.destroy=void 0,xe!==void 0&&dd(P,F,xe)}le=le.next}while(le!==q)}}function Xs(M,P){if(P=P.updateQueue,P=P!==null?P.lastEffect:null,P!==null){var F=P=P.next;do{if((F.tag&M)===M){var q=F.create;F.destroy=q()}F=F.next}while(F!==P)}}function Bc(M){var P=M.ref;if(P!==null){var F=M.stateNode;switch(M.tag){case 5:M=F;break;default:M=F}typeof P=="function"?P(M):P.current=M}}function pd(M){var P=M.alternate;P!==null&&(M.alternate=null,pd(P)),M.child=null,M.deletions=null,M.sibling=null,M.tag===5&&(P=M.stateNode,P!==null&&(delete P[Xo],delete P[il],delete P[_i],delete P[pp],delete P[$e])),M.stateNode=null,M.return=null,M.dependencies=null,M.memoizedProps=null,M.memoizedState=null,M.pendingProps=null,M.stateNode=null,M.updateQueue=null}function Ap(M){return M.tag===5||M.tag===3||M.tag===4}function Op(M){e:for(;;){for(;M.sibling===null;){if(M.return===null||Ap(M.return))return null;M=M.return}for(M.sibling.return=M.return,M=M.sibling;M.tag!==5&&M.tag!==6&&M.tag!==18;){if(M.flags&2||M.child===null||M.tag===4)continue e;M.child.return=M,M=M.child}if(!(M.flags&2))return M.stateNode}}function fd(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.nodeType===8?F.parentNode.insertBefore(M,P):F.insertBefore(M,P):(F.nodeType===8?(P=F.parentNode,P.insertBefore(M,F)):(P=F,P.appendChild(M)),F=F._reactRootContainer,F!=null||P.onclick!==null||(P.onclick=Za));else if(q!==4&&(M=M.child,M!==null))for(fd(M,P,F),M=M.sibling;M!==null;)fd(M,P,F),M=M.sibling}function hd(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.insertBefore(M,P):F.appendChild(M);else if(q!==4&&(M=M.child,M!==null))for(hd(M,P,F),M=M.sibling;M!==null;)hd(M,P,F),M=M.sibling}var yn=null,Io=!1;function Zs(M,P,F){for(F=F.child;F!==null;)zc(M,P,F),F=F.sibling}function zc(M,P,F){if(Qo&&typeof Qo.onCommitFiberUnmount=="function")try{Qo.onCommitFiberUnmount($a,F)}catch(Oe){}switch(F.tag){case 5:Nn||Qs(F,P);case 6:var q=yn,le=Io;yn=null,Zs(M,P,F),yn=q,Io=le,yn!==null&&(Io?(M=yn,F=F.stateNode,M.nodeType===8?M.parentNode.removeChild(F):M.removeChild(F)):yn.removeChild(F.stateNode));break;case 18:yn!==null&&(Io?(M=yn,F=F.stateNode,M.nodeType===8?js(M.parentNode,F):M.nodeType===1&&js(M,F),Dr(M)):js(yn,F.stateNode));break;case 4:q=yn,le=Io,yn=F.stateNode.containerInfo,Io=!0,Zs(M,P,F),yn=q,Io=le;break;case 0:case 11:case 14:case 15:if(!Nn&&(q=F.updateQueue,q!==null&&(q=q.lastEffect,q!==null))){le=q=q.next;do{var xe=le,Me=xe.destroy;xe=xe.tag,Me!==void 0&&((xe&2)!==0||(xe&4)!==0)&&dd(F,P,Me),le=le.next}while(le!==q)}Zs(M,P,F);break;case 1:if(!Nn&&(Qs(F,P),q=F.stateNode,typeof q.componentWillUnmount=="function"))try{q.props=F.memoizedProps,q.state=F.memoizedState,q.componentWillUnmount()}catch(Oe){Vr(F,P,Oe)}Zs(M,P,F);break;case 21:Zs(M,P,F);break;case 22:F.mode&1?(Nn=(q=Nn)||F.memoizedState!==null,Zs(M,P,F),Nn=q):Zs(M,P,F);break;default:Zs(M,P,F)}}function xd(M){var P=M.updateQueue;if(P!==null){M.updateQueue=null;var F=M.stateNode;F===null&&(F=M.stateNode=new Cs),P.forEach(function(q){var le=Hf.bind(null,M,q);F.has(q)||(F.add(q),q.then(le,le))})}}function Vn(M,P){var F=P.deletions;if(F!==null)for(var q=0;q<F.length;q++){var le=F[q];try{var xe=M,Me=P,Oe=Me;e:for(;Oe!==null;){switch(Oe.tag){case 5:yn=Oe.stateNode,Io=!1;break e;case 3:yn=Oe.stateNode.containerInfo,Io=!0;break e;case 4:yn=Oe.stateNode.containerInfo,Io=!0;break e}Oe=Oe.return}if(yn===null)throw Error(g(160));zc(xe,Me,le),yn=null,Io=!1;var Be=le.alternate;Be!==null&&(Be.return=null),le.return=null}catch(at){Vr(le,P,at)}}if(P.subtreeFlags&12854)for(P=P.child;P!==null;)Gc(P,M),P=P.sibling}function Gc(M,P){var F=M.alternate,q=M.flags;switch(M.tag){case 0:case 11:case 14:case 15:if(Vn(P,M),Go(M),q&4){try{kl(3,M,M.return),Xs(3,M)}catch(zt){Vr(M,M.return,zt)}try{kl(5,M,M.return)}catch(zt){Vr(M,M.return,zt)}}break;case 1:Vn(P,M),Go(M),q&512&&F!==null&&Qs(F,F.return);break;case 5:if(Vn(P,M),Go(M),q&512&&F!==null&&Qs(F,F.return),M.flags&32){var le=M.stateNode;try{It(le,"")}catch(zt){Vr(M,M.return,zt)}}if(q&4&&(le=M.stateNode,le!=null)){var xe=M.memoizedProps,Me=F!==null?F.memoizedProps:xe,Oe=M.type,Be=M.updateQueue;if(M.updateQueue=null,Be!==null)try{Oe==="input"&&xe.type==="radio"&&xe.name!=null&&Ue(le,xe),Jt(Oe,Me);var at=Jt(Oe,xe);for(Me=0;Me<Be.length;Me+=2){var Tt=Be[Me],$t=Be[Me+1];Tt==="style"?Ht(le,$t):Tt==="dangerouslySetInnerHTML"?tt(le,$t):Tt==="children"?It(le,$t):B(le,Tt,$t,at)}switch(Oe){case"input":ot(le,xe);break;case"textarea":ut(le,xe);break;case"select":var Mt=le._wrapperState.wasMultiple;le._wrapperState.wasMultiple=!!xe.multiple;var jt=xe.value;jt!=null?Ve(le,!!xe.multiple,jt,!1):Mt!==!!xe.multiple&&(xe.defaultValue!=null?Ve(le,!!xe.multiple,xe.defaultValue,!0):Ve(le,!!xe.multiple,xe.multiple?[]:"",!1))}le[il]=xe}catch(zt){Vr(M,M.return,zt)}}break;case 6:if(Vn(P,M),Go(M),q&4){if(M.stateNode===null)throw Error(g(162));le=M.stateNode,xe=M.memoizedProps;try{le.nodeValue=xe}catch(zt){Vr(M,M.return,zt)}}break;case 3:if(Vn(P,M),Go(M),q&4&&F!==null&&F.memoizedState.isDehydrated)try{Dr(P.containerInfo)}catch(zt){Vr(M,M.return,zt)}break;case 4:Vn(P,M),Go(M);break;case 13:Vn(P,M),Go(M),le=M.child,le.flags&8192&&(xe=le.memoizedState!==null,le.stateNode.isHidden=xe,!xe||le.alternate!==null&&le.alternate.memoizedState!==null||(vd=Jr())),q&4&&xd(M);break;case 22:if(Tt=F!==null&&F.memoizedState!==null,M.mode&1?(Nn=(at=Nn)||Tt,Vn(P,M),Nn=at):Vn(P,M),Go(M),q&8192){if(at=M.memoizedState!==null,(M.stateNode.isHidden=at)&&!Tt&&(M.mode&1)!==0)for(At=M,Tt=M.child;Tt!==null;){for($t=At=Tt;At!==null;){switch(Mt=At,jt=Mt.child,Mt.tag){case 0:case 11:case 14:case 15:kl(4,Mt,Mt.return);break;case 1:Qs(Mt,Mt.return);var Bt=Mt.stateNode;if(typeof Bt.componentWillUnmount=="function"){q=Mt,F=Mt.return;try{P=q,Bt.props=P.memoizedProps,Bt.state=P.memoizedState,Bt.componentWillUnmount()}catch(zt){Vr(q,F,zt)}}break;case 5:Qs(Mt,Mt.return);break;case 22:if(Mt.memoizedState!==null){Lo($t);continue}}jt!==null?(jt.return=Mt,At=jt):Lo($t)}Tt=Tt.sibling}e:for(Tt=null,$t=M;;){if($t.tag===5){if(Tt===null){Tt=$t;try{le=$t.stateNode,at?(xe=le.style,typeof xe.setProperty=="function"?xe.setProperty("display","none","important"):xe.display="none"):(Oe=$t.stateNode,Be=$t.memoizedProps.style,Me=Be!=null&&Be.hasOwnProperty("display")?Be.display:null,Oe.style.display=Ct("display",Me))}catch(zt){Vr(M,M.return,zt)}}}else if($t.tag===6){if(Tt===null)try{$t.stateNode.nodeValue=at?"":$t.memoizedProps}catch(zt){Vr(M,M.return,zt)}}else if(($t.tag!==22&&$t.tag!==23||$t.memoizedState===null||$t===M)&&$t.child!==null){$t.child.return=$t,$t=$t.child;continue}if($t===M)break e;for(;$t.sibling===null;){if($t.return===null||$t.return===M)break e;Tt===$t&&(Tt=null),$t=$t.return}Tt===$t&&(Tt=null),$t.sibling.return=$t.return,$t=$t.sibling}}break;case 19:Vn(P,M),Go(M),q&4&&xd(M);break;case 21:break;default:Vn(P,M),Go(M)}}function Go(M){var P=M.flags;if(P&2){try{e:{for(var F=M.return;F!==null;){if(Ap(F)){var q=F;break e}F=F.return}throw Error(g(160))}switch(q.tag){case 5:var le=q.stateNode;q.flags&32&&(It(le,""),q.flags&=-33);var xe=Op(M);hd(M,xe,le);break;case 3:case 4:var Me=q.stateNode.containerInfo,Oe=Op(M);fd(M,Oe,Me);break;default:throw Error(g(161))}}catch(Be){Vr(M,M.return,Be)}M.flags&=-3}P&4096&&(M.flags&=-4097)}function Fp(M,P,F){At=M,Il(M)}function Il(M,P,F){for(var q=(M.mode&1)!==0;At!==null;){var le=At,xe=le.child;if(le.tag===22&&q){var Me=le.memoizedState!==null||Hc;if(!Me){var Oe=le.alternate,Be=Oe!==null&&Oe.memoizedState!==null||Nn;Oe=Hc;var at=Nn;if(Hc=Me,(Nn=Be)&&!at)for(At=le;At!==null;)Me=At,Be=Me.child,Me.tag===22&&Me.memoizedState!==null?ei(le):Be!==null?(Be.return=Me,At=Be):ei(le);for(;xe!==null;)At=xe,Il(xe),xe=xe.sibling;At=le,Hc=Oe,Nn=at}_d(M)}else(le.subtreeFlags&8772)!==0&&xe!==null?(xe.return=le,At=xe):_d(M)}}function _d(M){for(;At!==null;){var P=At;if((P.flags&8772)!==0){var F=P.alternate;try{if((P.flags&8772)!==0)switch(P.tag){case 0:case 11:case 15:Nn||Xs(5,P);break;case 1:var q=P.stateNode;if(P.flags&4&&!Nn)if(F===null)q.componentDidMount();else{var le=P.elementType===P.type?F.memoizedProps:An(P.type,F.memoizedProps);q.componentDidUpdate(le,F.memoizedState,q.__reactInternalSnapshotBeforeUpdate)}var xe=P.updateQueue;xe!==null&&vc(P,xe,q);break;case 3:var Me=P.updateQueue;if(Me!==null){if(F=null,P.child!==null)switch(P.child.tag){case 5:F=P.child.stateNode;break;case 1:F=P.child.stateNode}vc(P,Me,F)}break;case 5:var Oe=P.stateNode;if(F===null&&P.flags&4){F=Oe;var Be=P.memoizedProps;switch(P.type){case"button":case"input":case"select":case"textarea":Be.autoFocus&&F.focus();break;case"img":Be.src&&(F.src=Be.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(P.memoizedState===null){var at=P.alternate;if(at!==null){var Tt=at.memoizedState;if(Tt!==null){var $t=Tt.dehydrated;$t!==null&&Dr($t)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(g(163))}Nn||P.flags&512&&Bc(P)}catch(Mt){Vr(P,P.return,Mt)}}if(P===M){At=null;break}if(F=P.sibling,F!==null){F.return=P.return,At=F;break}At=P.return}}function Lo(M){for(;At!==null;){var P=At;if(P===M){At=null;break}var F=P.sibling;if(F!==null){F.return=P.return,At=F;break}At=P.return}}function ei(M){for(;At!==null;){var P=At;try{switch(P.tag){case 0:case 11:case 15:var F=P.return;try{Xs(4,P)}catch(Be){Vr(P,F,Be)}break;case 1:var q=P.stateNode;if(typeof q.componentDidMount=="function"){var le=P.return;try{q.componentDidMount()}catch(Be){Vr(P,le,Be)}}var xe=P.return;try{Bc(P)}catch(Be){Vr(P,xe,Be)}break;case 5:var Me=P.return;try{Bc(P)}catch(Be){Vr(P,Me,Be)}}}catch(Be){Vr(P,P.return,Be)}if(P===M){At=null;break}var Oe=P.sibling;if(Oe!==null){Oe.return=P.return,At=Oe;break}At=P.return}}var Df=Math.ceil,Ll=j.ReactCurrentDispatcher,yd=j.ReactCurrentOwner,Do=j.ReactCurrentBatchConfig,Mr=0,vn=null,on=null,Pn=0,go=0,Ca=Bs(0),dn=0,Dl=null,Di=0,Al=0,Uc=0,wa=null,so=null,vd=0,Ma=1/0,as=null,Vc=!1,bd=null,ti=null,Wc=!1,ri=null,qc=0,jn=0,Ed=null,Kc=-1,Jc=0;function Hn(){return(Mr&6)!==0?Jr():Kc!==-1?Kc:Kc=Jr()}function ni(M){return(M.mode&1)===0?1:(Mr&2)!==0&&Pn!==0?Pn&-Pn:Us.transition!==null?(Jc===0&&(Jc=xu()),Jc):(M=kr,M!==0||(M=window.event,M=M===void 0?16:Su(M.type)),M)}function Uo(M,P,F,q){if(50<jn)throw jn=0,Ed=null,Error(g(185));li(M,F,q),((Mr&2)===0||M!==vn)&&(M===vn&&((Mr&2)===0&&(Al|=F),dn===4&&oi(M,Pn)),io(M,q),F===1&&Mr===0&&(P.mode&1)===0&&(Ma=Jr()+500,mc&&Xn()))}function io(M,P){var F=M.callbackNode;Nd(M,P);var q=La(M,M===vn?Pn:0);if(q===0)F!==null&&co(F),M.callbackNode=null,M.callbackPriority=0;else if(P=q&-q,M.callbackPriority!==P){if(F!=null&&co(F),P===1)M.tag===0?Tf(jp.bind(null,M)):hp(jp.bind(null,M)),ol(function(){(Mr&6)===0&&Xn()}),F=null;else{switch(Wl(q)){case 1:F=pu;break;case 4:F=Dd;break;case 16:F=zl;break;case 536870912:F=fu;break;default:F=zl}F=qp(F,Np.bind(null,M))}M.callbackPriority=P,M.callbackNode=F}}function Np(M,P){if(Kc=-1,Jc=0,(Mr&6)!==0)throw Error(g(327));var F=M.callbackNode;if(Ta()&&M.callbackNode!==F)return null;var q=La(M,M===vn?Pn:0);if(q===0)return null;if((q&30)!==0||(q&M.expiredLanes)!==0||P)P=Qc(M,q);else{P=q;var le=Mr;Mr|=2;var xe=Yp();(vn!==M||Pn!==P)&&(as=null,Ma=Jr()+500,Oi(M,P));do try{Ff();break}catch(Oe){Hp(M,Oe)}while(!0);ma(),Ll.current=xe,Mr=le,on!==null?P=0:(vn=null,Pn=0,P=dn)}if(P!==0){if(P===2&&(le=mu(M),le!==0&&(q=le,P=Ol(M,le))),P===1)throw F=Dl,Oi(M,0),oi(M,q),io(M,Jr()),F;if(P===6)oi(M,q);else{if(le=M.current.alternate,(q&30)===0&&!Af(le)&&(P=Qc(M,q),P===2&&(xe=mu(M),xe!==0&&(q=xe,P=Ol(M,xe))),P===1))throw F=Dl,Oi(M,0),oi(M,q),io(M,Jr()),F;switch(M.finishedWork=le,M.finishedLanes=q,P){case 0:case 1:throw Error(g(345));case 2:Fi(M,so,as);break;case 3:if(oi(M,q),(q&130023424)===q&&(P=vd+500-Jr(),10<P)){if(La(M,0)!==0)break;if(le=M.suspendedLanes,(le&q)!==q){Hn(),M.pingedLanes|=M.suspendedLanes≤break}M.timeoutHandle=rl(Fi.bind(null,M,so,as),P);break}Fi(M,so,as);break;case 4:if(oi(M,q),(q&4194240)===q)break;for(P=M.eventTimes,le=-1;0<q;){var Me=31-jo(q);xe=1<<Me,Me=P[Me],Me>le&&(le=Me),q&=~xe}if(q=le,q=Jr()-q,q=(120>q?120:480>q?480:1080>q?1080:1920>q?1920:3e3>q?3e3:4320>q?4320:1960*Df(q/1960))-q,10<q){M.timeoutHandle=rl(Fi.bind(null,M,so,as),q);break}Fi(M,so,as);break;case 5:Fi(M,so,as);break;default:throw Error(g(329))}}}return io(M,Jr()),M.callbackNode===F?Np.bind(null,M):null}function Ol(M,P){var F=wa;return M.current.memoizedState.isDehydrated&&(Oi(M,P).flags|=256),M=Qc(M,P),M!==2&&(P=so,so=F,P!==null&&Sd(P)),M}function Sd(M){so===null?so=M:so.push.apply(so,M)}function Af(M){for(var P=M;;){if(P.flags&16384){var F=P.updateQueue;if(F!==null&&(F=F.stores,F!==null))for(var q=0;q<F.length;q++){var le=F[q],xe=le.getSnapshot;le=le.value;try{if(!gt(xe(),le))return!1}catch(Me){return!1}}}if(F=P.child,P.subtreeFlags&16384&&F!==null)F.return=P,P=F;else{if(P===M)break;for(;P.sibling===null;){if(P.return===null||P.return===M)return!0;P=P.return}P.sibling.return=P.return,P=P.sibling}}return!0}function oi(M,P){for(P&=~Uc,P&=~Al,M.suspendedLanes|=P,M.pingedLanes&=~P,M=M.expirationTimes;0<P;){var F=31-jo(P),q=1<<F;M[F]=-1,P&=~q}}function jp(M){if((Mr&6)!==0)throw Error(g(327));Ta();var P=La(M,0);if((P&1)===0)return io(M,Jr()),null;var F=Qc(M,P);if(M.tag!==0&&F===2){var q=mu(M);q!==0&&(P=q,F=Ol(M,q))}if(F===1)throw F=Dl,Oi(M,0),oi(M,P),io(M,Jr()),F;if(F===6)throw Error(g(345));return M.finishedWork=M.current.alternate,M.finishedLanes=P,Fi(M,so,as),io(M,Jr()),null}function Cd(M,P){var F=Mr;Mr|=1;try{return M(P)}finally{Mr=F,Mr===0&&(Ma=Jr()+500,mc&&Xn())}}function Ai(M){ri!==null&&ri.tag===0&&(Mr&6)===0&&Ta();var P=Mr;Mr|=1;var F=Do.transition,q=kr;try{if(Do.transition=null,kr=1,M)return M()}finally{kr=q,Do.transition=F,Mr=P,(Mr&6)===0&&Xn()}}function wd(){go=Ca.current,Lr(Ca)}function Oi(M,P){M.finishedWork=null,M.finishedLanes=0;var F=M.timeoutHandle;if(F!==-1&&(M.timeoutHandle=-1,na(F)),on!==null)for(F=on.return;F!==null;){var q=F;switch(al(q),q.tag){case 1:q=q.type.childContextTypes,q!=null&&pc();break;case 3:xa(),Lr(Kn),Lr(Ln),Gu();break;case 5:Ec(q);break;case 4:xa();break;case 13:Lr(Gr);break;case 19:Lr(Gr);break;case 10:xs(q.type._context);break;case 22:case 23:wd()}F=F.return}if(vn=M,on=M=ii(M.current,null),Pn=go=P,dn=0,Dl=null,Uc=Al=Di=0,so=wa=null,Mi!==null){for(P=0;P<Mi.length;P++)if(F=Mi[P],q=F.interleaved,q!==null){F.interleaved=null;var le=q.next,xe=F.pending;if(xe!==null){var Me=xe.next;xe.next=le,q.next=Me}F.pending=q}Mi=null}return M}function Hp(M,P){do{var F=on;try{if(ma(),yl.current=ho,vl){for(var q=Ur.memoizedState;q!==null;){var le=q.queue;le!==null&&(le.pending=null),q=q.next}vl=!1}if(Pi=0,tn=un=Ur=null,$i=!1,bl=0,yd.current=null,F===null||F.return===null){dn=1,Dl=P,on=null;break}e:{var xe=M,Me=F.return,Oe=F,Be=P;if(P=Pn,Oe.flags|=32768,Be!==null&&typeof Be=="object"&&typeof Be.then=="function"){var at=Be,Tt=Oe,$t=Tt.tag;if((Tt.mode&1)===0&&($t===0||$t===11||$t===15)){var Mt=Tt.alternate;Mt?(Tt.updateQueue=Mt.updateQueue,Tt.memoizedState=Mt.memoizedState,Tt.lanes=Mt.lanes):(Tt.updateQueue=null,Tt.memoizedState=null)}var jt=Pl(Me);if(jt!==null){jt.flags&=-257,Mp(jt,Me,Oe,xe,P),jt.mode&1&&Dc(xe,at,P),P=jt,Be=at;var Bt=P.updateQueue;if(Bt===null){var zt=new Set;zt.add(Be),P.updateQueue=zt}else Bt.add(Be);break e}else{if((P&1)===0){Dc(xe,at,P),Md();break e}Be=Error(g(426))}}else if(zr&&Oe.mode&1){var qr=Pl(Me);if(qr!==null){(qr.flags&65536)===0&&(qr.flags|=256),Mp(qr,Me,Oe,xe,P),Ci(va(Be,Oe));break e}}xe=Be=va(Be,Oe),dn!==4&&(dn=2),wa===null?wa=[xe]:wa.push(xe),xe=Me;do{switch(xe.tag){case 3:xe.flags|=65536,P&=-P,xe.lanes|=P;var rt=od(xe,Be,P);vp(xe,rt);break e;case 1:Oe=Be;var Ke=xe.type,st=xe.stateNode;if((xe.flags&128)===0&&(typeof Ke.getDerivedStateFromError=="function"||st!==null&&typeof st.componentDidCatch=="function"&&(ti===null||!ti.has(st)))){xe.flags|=65536,P&=-P,xe.lanes|=P;var kt=Tl(xe,Oe,P);vp(xe,kt);break e}}xe=xe.return}while(xe!==null)}zp(F)}catch(Gt){P=Gt,on===F&&F!==null&&(on=F=F.return);continue}break}while(!0)}function Yp(){var M=Ll.current;return Ll.current=ho,M===null?ho:M}function Md(){(dn===0||dn===3||dn===2)&&(dn=4),vn===null||(Di&268435455)===0&&(Al&268435455)===0||oi(vn,Pn)}function Qc(M,P){var F=Mr;Mr|=2;var q=Yp();(vn!==M||Pn!==P)&&(as=null,Oi(M,P));do try{Of();break}catch(le){Hp(M,le)}while(!0);if(ma(),Mr=F,Ll.current=q,on!==null)throw Error(g(261));return vn=null,Pn=0,dn}function Of(){for(;on!==null;)Bp(on)}function Ff(){for(;on!==null&&!Hl();)Bp(on)}function Bp(M){var P=Wp(M.alternate,M,go);M.memoizedProps=M.pendingProps,P===null?zp(M):on=P,yd.current=null}function zp(M){var P=M;do{var F=P.alternate;if(M=P.return,(P.flags&32768)===0){if(F=Dp(F,P,go),F!==null){on=F;return}}else{if(F=If(F,P),F!==null){F.flags&=32767,on=F;return}if(M!==null)M.flags|=32768,M.subtreeFlags=0,M.deletions=null;else{dn=6,on=null;return}}if(P=P.sibling,P!==null){on=P;return}on=P=M}while(P!==null);dn===0&&(dn=5)}function Fi(M,P,F){var q=kr,le=Do.transition;try{Do.transition=null,kr=1,Nf(M,P,F,q)}finally{Do.transition=le,kr=q}return null}function Nf(M,P,F,q){do Ta();while(ri!==null);if((Mr&6)!==0)throw Error(g(327));F=M.finishedWork;var le=M.finishedLanes;if(F===null)return null;if(M.finishedWork=null,M.finishedLanes=0,F===M.current)throw Error(g(177));M.callbackNode=null,M.callbackPriority=0;var xe=F.lanes|F.childLanes;if(cf(M,xe),M===vn&&(on=vn=null,Pn=0),(F.subtreeFlags&2064)===0&&(F.flags&2064)===0||Wc||(Wc=!0,qp(zl,function(){return Ta(),null})),xe=(F.flags&15990)!==0,(F.subtreeFlags&15990)!==0||xe){xe=Do.transition,Do.transition=null;var Me=kr;kr=1;var Oe=Mr;Mr|=4,yd.current=null,Lf(M,F),Gc(F,M),Lu(tl),Ql=!!Fu,tl=Fu=null,M.current=F,Fp(F),Yl(),Mr=Oe,kr=Me,Do.transition=xe}else M.current=F;if(Wc&&(Wc=!1,ri=M,qc=le),xe=M.pendingLanes,xe===0&&(ti=null),sf(F.stateNode),io(M,Jr()),P!==null)for(q=M.onRecoverableError,F=0;F<P.length;F++)le=P[F],q(le.value,{componentStack:le.stack,digest:le.digest});if(Vc)throw Vc=!1,M=bd,bd=null,M;return(qc&1)!==0&&M.tag!==0&&Ta(),xe=M.pendingLanes,(xe&1)!==0?M===Ed?jn++:(jn=0,Ed=M):jn=0,Xn(),null}function Ta(){if(ri!==null){var M=Wl(qc),P=Do.transition,F=kr;try{if(Do.transition=null,kr=16>M?16:M,ri===null)var q=!1;else{if(M=ri,ri=null,qc=0,(Mr&6)!==0)throw Error(g(331));var le=Mr;for(Mr|=4,At=M.current;At!==null;){var xe=At,Me=xe.child;if((At.flags&16)!==0){var Oe=xe.deletions;if(Oe!==null){for(var Be=0;Be<Oe.length;Be++){var at=Oe[Be];for(At=at;At!==null;){var Tt=At;switch(Tt.tag){case 0:case 11:case 15:kl(8,Tt,xe)}var $t=Tt.child;if($t!==null)$t.return=Tt,At=$t;else for(;At!==null;){Tt=At;var Mt=Tt.sibling,jt=Tt.return;if(pd(Tt),Tt===at){At=null;break}if(Mt!==null){Mt.return=jt,At=Mt;break}At=jt}}}var Bt=xe.alternate;if(Bt!==null){var zt=Bt.child;if(zt!==null){Bt.child=null;do{var qr=zt.sibling;zt.sibling=null,zt=qr}while(zt!==null)}}At=xe}}if((xe.subtreeFlags&2064)!==0&&Me!==null)Me.return=xe,At=Me;else e:for(;At!==null;){if(xe=At,(xe.flags&2048)!==0)switch(xe.tag){case 0:case 11:case 15:kl(9,xe,xe.return)}var rt=xe.sibling;if(rt!==null){rt.return=xe.return,At=rt;break e}At=xe.return}}var Ke=M.current;for(At=Ke;At!==null;){Me=At;var st=Me.child;if((Me.subtreeFlags&2064)!==0&&st!==null)st.return=Me,At=st;else e:for(Me=Ke;At!==null;){if(Oe=At,(Oe.flags&2048)!==0)try{switch(Oe.tag){case 0:case 11:case 15:Xs(9,Oe)}}catch(Gt){Vr(Oe,Oe.return,Gt)}if(Oe===Me){At=null;break e}var kt=Oe.sibling;if(kt!==null){kt.return=Oe.return,At=kt;break e}At=Oe.return}}if(Mr=le,Xn(),Qo&&typeof Qo.onPostCommitFiberRoot=="function")try{Qo.onPostCommitFiberRoot($a,M)}catch(Gt){}q=!0}return q}finally{kr=F,Do.transition=P}}return!1}function Gp(M,P,F){P=va(F,P),P=od(M,P,1),M=Ws(M,P,1),P=Hn(),M!==null&&(li(M,1,P),io(M,P))}function Vr(M,P,F){if(M.tag===3)Gp(M,M,F);else for(;P!==null;){if(P.tag===3){Gp(P,M,F);break}else if(P.tag===1){var q=P.stateNode;if(typeof P.type.getDerivedStateFromError=="function"||typeof q.componentDidCatch=="function"&&(ti===null||!ti.has(q))){M=va(F,M),M=Tl(P,M,1),P=Ws(P,M,1),M=Hn(),P!==null&&(li(P,1,M),io(P,M));break}}P=P.return}}function Up(M,P,F){var q=M.pingCache;q!==null&&q.delete(P),P=Hn(),M.pingedLanes|=M.suspendedLanes&F,vn===M&&(Pn&F)===F&&(dn===4||dn===3&&(Pn&130023424)===Pn&&500>Jr()-vd?Oi(M,0):Uc|=F),io(M,P)}function Vp(M,P){P===0&&((M.mode&1)===0?P=1:(P=zi,zi<<=1,(zi&130023424)===0&&(zi=4194304)));var F=Hn();M=Yo(M,P),M!==null&&(li(M,P,F),io(M,F))}function jf(M){var P=M.memoizedState,F=0;P!==null&&(F=P.retryLane),Vp(M,F)}function Hf(M,P){var F=0;switch(M.tag){case 13:var q=M.stateNode,le=M.memoizedState;le!==null&&(F=le.retryLane);break;case 19:q=M.stateNode;break;default:throw Error(g(314))}q!==null&&q.delete(P),Vp(M,F)}var Wp;Wp=function(M,P,F){if(M!==null)if(M.memoizedProps!==P.pendingProps||Kn.current)Tn=!0;else{if((M.lanes&F)===0&&(P.flags&128)===0)return Tn=!1,cd(M,P,F);Tn=(M.flags&131072)!==0}else Tn=!1,zr&&(P.flags&1048576)!==0&&gp(P,hc,P.index);switch(P.lanes=0,P.tag){case 2:var q=P.type;os(M,P),M=P.pendingProps;var le=Jn(P,Ln.current);Zr(P,F),le=Wu(null,P,q,M,le,F);var xe=Ri();return P.flags|=1,typeof le=="object"&&le!==null&&typeof le.render=="function"&&le.$$typeof===void 0?(P.tag=1,P.memoizedState=null,P.updateQueue=null,Qn(q)?(xe=!0,fc(P)):xe=!1,P.memoizedState=le.state!==null&&le.state!==void 0?le.state:null,Ti(P),le.updater=Ml,P.stateNode=le,le._reactInternals=P,Ii(P,q,M,F),P=Fc(null,P,q,!0,xe,F)):(P.tag=0,zr&&xe&&Hu(P),On(null,P,le,F),P=P.child),P;case 16:q=P.elementType;e:{switch(os(M,P),M=P.pendingProps,le=q._init,q=le(q._payload),P.type=q,le=P.tag=Kp(q),M=An(q,M),le){case 0:P=Oc(null,P,q,M,F);break e;case 1:P=$p(null,P,q,M,F);break e;case 11:P=Ac(null,P,q,M,F);break e;case 14:P=Pp(null,P,q,An(q.type,M),F);break e}throw Error(g(306,q,""))}return P;case 0:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),Oc(M,P,q,le,F);case 1:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),$p(M,P,q,le,F);case 3:e:{if(Rp(P),M===null)throw Error(g(387));q=P.pendingProps,xe=P.memoizedState,le=xe.element,zu(M,P),yc(P,q,null,F);var Me=P.memoizedState;if(q=Me.element,xe.isDehydrated)if(xe={element:q,isDehydrated:!1,cache:Me.cache,pendingSuspenseBoundaries:Me.pendingSuspenseBoundaries,transitions:Me.transitions},P.updateQueue.baseState=xe,P.memoizedState=xe,P.flags&256){le=va(Error(g(423)),P),P=kp(M,P,q,F,le);break e}else if(q!==le){le=va(Error(g(424)),P),P=kp(M,P,q,F,le);break e}else for(Dn=Hs(P.stateNode.containerInfo.firstChild),Mn=P,zr=!0,$o=null,F=xn(P,null,q,F),P.child=F;F;)F.flags=F.flags&-3|4096,F=F.sibling;else{if(Si(),q===le){P=Ss(M,P,F);break e}On(M,P,q,F)}P=P.child}return P;case 5:return bc(P),M===null&&gs(P),q=P.type,le=P.pendingProps,xe=M!==null?M.memoizedProps:null,Me=le.children,xi(q,le)?Me=null:xe!==null&&xi(q,xe)&&(P.flags|=32),ld(M,P),On(M,P,Me,F),P.child;case 6:return M===null&&gs(P),null;case 13:return Nc(M,P,F);case 4:return xl(P,P.stateNode.containerInfo),q=P.pendingProps,M===null?P.child=wi(P,null,q,F):On(M,P,q,F),P.child;case 11:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),Ac(M,P,q,le,F);case 7:return On(M,P,P.pendingProps,F),P.child;case 8:return On(M,P,P.pendingProps.children,F),P.child;case 12:return On(M,P,P.pendingProps.children,F),P.child;case 10:e:{if(q=P.type._context,le=P.pendingProps,xe=P.memoizedProps,Me=le.value,Hr(pa,q._currentValue),q._currentValue=Me,xe!==null)if(gt(xe.value,Me)){if(xe.children===le.children&&!Kn.current){P=Ss(M,P,F);break e}}else for(xe=P.child,xe!==null&&(xe.return=P);xe!==null;){var Oe=xe.dependencies;if(Oe!==null){Me=xe.child;for(var Be=Oe.firstContext;Be!==null;){if(Be.context===q){if(xe.tag===1){Be=_s(-1,F&-F),Be.tag=2;var at=xe.updateQueue;if(at!==null){at=at.shared;var Tt=at.pending;Tt===null?Be.next=Be:(Be.next=Tt.next,Tt.next=Be),at.pending=Be}}xe.lanes|=F,Be=xe.alternate,Be!==null&&(Be.lanes|=F),_c(xe.return,F,P),Oe.lanes|=F;break}Be=Be.next}}else if(xe.tag===10)Me=xe.type===P.type?null:xe.child;else if(xe.tag===18){if(Me=xe.return,Me===null)throw Error(g(341));Me.lanes|=F,Oe=Me.alternate,Oe!==null&&(Oe.lanes|=F),_c(Me,F,P),Me=xe.sibling}else Me=xe.child;if(Me!==null)Me.return=xe;else for(Me=xe;Me!==null;){if(Me===P){Me=null;break}if(xe=Me.sibling,xe!==null){xe.return=Me.return,Me=xe;break}Me=Me.return}xe=Me}On(M,P,le.children,F),P=P.child}return P;case 9:return le=P.type,q=P.pendingProps.children,Zr(P,F),le=to(le),q=q(le),P.flags|=1,On(M,P,q,F),P.child;case 14:return q=P.type,le=An(q,P.pendingProps),le=An(q.type,le),Pp(M,P,q,le,F);case 15:return ad(M,P,P.type,P.pendingProps,F);case 17:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),os(M,P),P.tag=1,Qn(q)?(M=!0,fc(P)):M=!1,Zr(P,F),nd(P,q,le),Ii(P,q,le,F),Fc(null,P,q,!0,M,F);case 19:return jc(M,P,F);case 22:return ns(M,P,F)}throw Error(g(156,P.tag))};function qp(M,P){return Er(M,P)}function Yf(M,P,F,q){this.tag=M,this.key=F,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=P,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=q,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ao(M,P,F,q){return new Yf(M,P,F,q)}function Td(M){return M=M.prototype,!(!M||!M.isReactComponent)}function Kp(M){if(typeof M=="function")return Td(M)?1:0;if(M!=null){if(M=M.$$typeof,M===ie)return 11;if(M===X)return 14}return 2}function ii(M,P){var F=M.alternate;return F===null?(F=Ao(M.tag,P,M.key,M.mode),F.elementType=M.elementType,F.type=M.type,F.stateNode=M.stateNode,F.alternate=M,M.alternate=F):(F.pendingProps=P,F.type=M.type,F.flags=0,F.subtreeFlags=0,F.deletions=null),F.flags=M.flags&14680064,F.childLanes=M.childLanes,F.lanes=M.lanes,F.child=M.child,F.memoizedProps=M.memoizedProps,F.memoizedState=M.memoizedState,F.updateQueue=M.updateQueue,P=M.dependencies,F.dependencies=P===null?null:{lanes:P.lanes,firstContext:P.firstContext},F.sibling=M.sibling,F.index=M.index,F.ref=M.ref,F}function Ni(M,P,F,q,le,xe){var Me=2;if(q=M,typeof M=="function")Td(M)&&(Me=1);else if(typeof M=="string")Me=5;else e:switch(M){case V:return ji(F.children,le,xe,P);case K:Me=8,le|=8;break;case Q:return M=Ao(12,F,P,le|2),M.elementType=Q,M.lanes=xe,M;case oe:return M=Ao(13,F,P,le),M.elementType=oe,M.lanes=xe,M;case ee:return M=Ao(19,F,P,le),M.elementType=ee,M.lanes=xe,M;case pe:return Xc(F,le,xe,P);default:if(typeof M=="object"&&M!==null)switch(M.$$typeof){case Z:Me=10;break e;case re:Me=9;break e;case ie:Me=11;break e;case X:Me=14;break e;case ce:Me=16,q=null;break e}throw Error(g(130,M==null?M:typeof M,""))}return P=Ao(Me,F,P,le),P.elementType=M,P.type=q,P.lanes=xe,P}function ji(M,P,F,q){return M=Ao(7,M,q,P),M.lanes=F,M}function Xc(M,P,F,q){return M=Ao(22,M,q,P),M.elementType=pe,M.lanes=F,M.stateNode={isHidden:!1},M}function Pd(M,P,F){return M=Ao(6,M,null,P),M.lanes=F,M}function $d(M,P,F){return P=Ao(4,M.children!==null?M.children:[],M.key,P),P.lanes=F,P.stateNode={containerInfo:M.containerInfo,pendingChildren:null,implementation:M.implementation},P}function Bf(M,P,F,q,le){this.tag=P,this.containerInfo=M,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ul(0),this.expirationTimes=Ul(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ul(0),this.identifierPrefix=q,this.onRecoverableError=le,this.mutableSourceEagerHydrationData=null}function Rd(M,P,F,q,le,xe,Me,Oe,Be){return M=new Bf(M,P,F,Oe,Be),P===1?(P=1,xe===!0&&(P|=8)):P=0,xe=Ao(3,null,null,P),M.current=xe,xe.stateNode=M,xe.memoizedState={element:q,isDehydrated:F,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ti(xe),M}function zf(M,P,F){var q=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W,key:q==null?null:""+q,children:M,containerInfo:P,implementation:F}}function Jp(M){if(!M)return zs;M=M._reactInternals;e:{if(xt(M)!==M||M.tag!==1)throw Error(g(170));var P=M;do{switch(P.tag){case 3:P=P.stateNode.context;break e;case 1:if(Qn(P.type)){P=P.stateNode.__reactInternalMemoizedMergedChildContext;break e}}P=P.return}while(P!==null);throw Error(g(171))}if(M.tag===1){var F=M.type;if(Qn(F))return mp(M,F,P)}return P}function Qp(M,P,F,q,le,xe,Me,Oe,Be){return M=Rd(F,q,!0,M,le,xe,Me,Oe,Be),M.context=Jp(null),F=M.current,q=Hn(),le=ni(F),xe=_s(q,le),xe.callback=P!=null?P:null,Ws(F,xe,le),M.current.lanes=le,li(M,le,q),io(M,q),M}function Zc(M,P,F,q){var le=P.current,xe=Hn(),Me=ni(le);return F=Jp(F),P.context===null?P.context=F:P.pendingContext=F,P=_s(xe,Me),P.payload={element:M},q=q===void 0?null:q,q!==null&&(P.callback=q),M=Ws(le,P,Me),M!==null&&(Uo(M,le,Me,xe),qs(M,le,Me)),Me}function tu(M){if(M=M.current,!M.child)return null;switch(M.child.tag){case 5:return M.child.stateNode;default:return M.child.stateNode}}function Xp(M,P){if(M=M.memoizedState,M!==null&&M.dehydrated!==null){var F=M.retryLane;M.retryLane=F!==0&&F<P?F:P}}function kd(M,P){Xp(M,P),(M=M.alternate)&&Xp(M,P)}function Gf(){return null}var Zp=typeof reportError=="function"?reportError:function(M){console.error(M)};function Id(M){this._internalRoot=M}Fl.prototype.render=Id.prototype.render=function(M){var P=this._internalRoot;if(P===null)throw Error(g(409));Zc(M,P,null,null)},Fl.prototype.unmount=Id.prototype.unmount=function(){var M=this._internalRoot;if(M!==null){this._internalRoot=null;var P=M.containerInfo;Ai(function(){Zc(null,M,null,null)}),P[wo]=null}};function Fl(M){this._internalRoot=M}Fl.prototype.unstable_scheduleHydration=function(M){if(M){var P=jd();M={blockedOn:null,target:M,priority:P};for(var F=0;F<$s.length&&P!==0&&P<$s[F].priority;F++);$s.splice(F,0,M),F===0&&Yd(M)}};function nu(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11)}function ou(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11&&(M.nodeType!==8||M.nodeValue!==" react-mount-point-unstable "))}function ef(){}function Uf(M,P,F,q,le){if(le){if(typeof q=="function"){var xe=q;q=function(){var at=tu(Me);xe.call(at)}}var Me=Qp(P,q,M,0,null,!1,!1,"",ef);return M._reactRootContainer=Me,M[wo]=Me.current,Ns(M.nodeType===8?M.parentNode:M),Ai(),Me}for(;le=M.lastChild;)M.removeChild(le);if(typeof q=="function"){var Oe=q;q=function(){var at=tu(Be);Oe.call(at)}}var Be=Rd(M,0,!1,null,null,!1,!1,"",ef);return M._reactRootContainer=Be,M[wo]=Be.current,Ns(M.nodeType===8?M.parentNode:M),Ai(function(){Zc(P,Be,F,q)}),Be}function su(M,P,F,q,le){var xe=F._reactRootContainer;if(xe){var Me=xe;if(typeof le=="function"){var Oe=le;le=function(){var Be=tu(Me);Oe.call(Be)}}Zc(P,Me,M,le)}else Me=Uf(F,P,M,le,q);return tu(Me)}ci=function(M){switch(M.tag){case 3:var P=M.stateNode;if(P.current.memoizedState.isDehydrated){var F=Ia(P.pendingLanes);F!==0&&(Vl(P,F|1),io(P,Jr()),(Mr&6)===0&&(Ma=Jr()+500,Xn()))}break;case 13:Ai(function(){var q=Yo(M,1);if(q!==null){var le=Hn();Uo(q,M,1,le)}}),kd(M,1)}},ql=function(M){if(M.tag===13){var P=Yo(M,134217728);if(P!==null){var F=Hn();Uo(P,M,134217728,F)}kd(M,134217728)}},_u=function(M){if(M.tag===13){var P=ni(M),F=Yo(M,P);if(F!==null){var q=Hn();Uo(F,M,P,q)}kd(M,P)}},jd=function(){return kr},yu=function(M,P){var F=kr;try{return kr=M,P()}finally{kr=F}},vr=function(M,P,F){switch(P){case"input":if(ot(M,F),P=F.name,F.type==="radio"&&P!=null){for(F=M;F.parentNode;)F=F.parentNode;for(F=F.querySelectorAll("input[name="+JSON.stringify(""+P)+'][type="radio"]'),P=0;P<F.length;P++){var q=F[P];if(q!==M&&q.form===M.form){var le=_r(q);if(!le)throw Error(g(90));ke(q),ot(q,le)}}}break;case"textarea":ut(M,F);break;case"select":P=F.value,P!=null&&Ve(M,!!F.multiple,P,!1)}},En=Cd,Kr=Ai;var iu={usingClientEntryPoint:!1,Events:[Ys,wn,_r,xr,Wr,Cd]},Nl={findFiberByHostInstance:Mo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Vf={bundleType:Nl.bundleType,version:Nl.version,rendererPackageName:Nl.rendererPackageName,rendererConfig:Nl.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:j.ReactCurrentDispatcher,findHostInstanceByFiber:function(M){return M=pr(M),M===null?null:M.stateNode},findFiberByHostInstance:Nl.findFiberByHostInstance||Gf,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__!="undefined"){var au=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!au.isDisabled&&au.supportsFiber)try{$a=au.inject(Vf),Qo=au}catch(M){}}return reactDom_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=iu,reactDom_production_min.createPortal=function(M,P){var F=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!nu(P))throw Error(g(200));return zf(M,P,null,F)},reactDom_production_min.createRoot=function(M,P){if(!nu(M))throw Error(g(299));var F=!1,q="",le=Zp;return P!=null&&(P.unstable_strictMode===!0&&(F=!0),P.identifierPrefix!==void 0&&(q=P.identifierPrefix),P.onRecoverableError!==void 0&&(le=P.onRecoverableError)),P=Rd(M,1,!1,null,null,F,!1,q,le),M[wo]=P.current,Ns(M.nodeType===8?M.parentNode:M),new Id(P)},reactDom_production_min.findDOMNode=function(M){if(M==null)return null;if(M.nodeType===1)return M;var P=M._reactInternals;if(P===void 0)throw typeof M.render=="function"?Error(g(188)):(M=Object.keys(M).join(","),Error(g(268,M)));return M=pr(P),M=M===null?null:M.stateNode,M},reactDom_production_min.flushSync=function(M){return Ai(M)},reactDom_production_min.hydrate=function(M,P,F){if(!ou(P))throw Error(g(200));return su(null,M,P,!0,F)},reactDom_production_min.hydrateRoot=function(M,P,F){if(!nu(M))throw Error(g(405));var q=F!=null&&F.hydratedSources||null,le=!1,xe="",Me=Zp;if(F!=null&&(F.unstable_strictMode===!0&&(le=!0),F.identifierPrefix!==void 0&&(xe=F.identifierPrefix),F.onRecoverableError!==void 0&&(Me=F.onRecoverableError)),P=Qp(P,null,M,1,F!=null?F:null,le,!1,xe,Me),M[wo]=P.current,Ns(M),q)for(M=0;M<q.length;M++)F=q[M],le=F._getVersion,le=le(F._source),P.mutableSourceEagerHydrationData==null?P.mutableSourceEagerHydrationData=[F,le]:P.mutableSourceEagerHydrationData.push(F,le);return new Fl(P)},reactDom_production_min.render=function(M,P,F){if(!ou(P))throw Error(g(200));return su(null,M,P,!1,F)},reactDom_production_min.unmountComponentAtNode=function(M){if(!ou(M))throw Error(g(40));return M._reactRootContainer?(Ai(function(){su(null,null,M,!1,function(){M._reactRootContainer=null,M[wo]=null})}),!0):!1},reactDom_production_min.unstable_batchedUpdates=Cd,reactDom_production_min.unstable_renderSubtreeIntoContainer=function(M,P,F,q){if(!ou(F))throw Error(g(200));if(M==null||M._reactInternals===void 0)throw Error(g(38));return su(M,P,F,!1,q)},reactDom_production_min.version="18.3.1-next-f1338f8080-20240426",reactDom_production_min}var hasRequiredReactDom;function requireReactDom(){if(hasRequiredReactDom)return reactDom.exports;hasRequiredReactDom=1;function d(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__=="undefined"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(d)}catch(m){console.error(m)}}return d(),reactDom.exports=requireReactDom_production_min(),reactDom.exports}var hasRequiredClient;function requireClient(){if(hasRequiredClient)return client;hasRequiredClient=1;var d=requireReactDom();return client.createRoot=d.createRoot,client.hydrateRoot=d.hydrateRoot,client}var clientExports=requireClient();const scriptRel="modulepreload",assetsURL=function(d){return"/"+d},seen={},__vitePreload=function(m,g,x){let b=Promise.resolve();if(g&&g.length>0){let v=function(T){return Promise.all(T.map($=>Promise.resolve($).then(k=>({status:"fulfilled",value:k}),k=>({status:"rejected",reason:k}))))};document.getElementsByTagName("link");const S=document.querySelector("meta[property=csp-nonce]"),C=(S==null?void 0:S.nonce)||(S==null?void 0:S.getAttribute("nonce"));b=v(g.map(T=>{if(T=assetsURL(T),T in seen)return;seen[T]=!0;const $=T.endsWith(".css"),k=$?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${T}"]${k}`))return;const L=document.createElement("link");if(L.rel=$?"stylesheet":scriptRel,$||(L.as="script"),L.crossOrigin="",L.href=T,C&&L.setAttribute("nonce",C),document.head.appendChild(L),$)return new Promise((D,A)=>{L.addEventListener("load",D),L.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${T}`)))})}))}function E(v){const S=new Event("vite:preloadError",{cancelable:!0});if(S.payload=v,window.dispatchEvent(S),!S.defaultPrevented)throw v}return b.then(v=>{for(const S of v||[])S.status==="rejected"&&E(S.reason);return m().catch(E)})};window.crypto||(window.crypto={});crypto.subtle||(crypto.subtle=console.debug("using polyfill for crypto.subtle")||{});var Dm;(Dm=crypto.subtle).digest||(Dm.digest=(d,m)=>yt(void 0,null,function*(){if(d!=="SHA-512")return alert(d+" required but not supported");const x=(yield __vitePreload(()=>import("./sha512-CS6slURG.js").then(b=>b.s),[])).default.arrayBuffer;return x(m)}));var reactDomExports=requireReactDom();const ReactDOM=getDefaultExportFromCjs(reactDomExports);/**
|
|
32
|
+
`+xe.stack}return{value:M,source:P,stack:le,digest:null}}function kc(M,P,F){return{value:M,source:null,stack:F!=null?F:null,digest:P!=null?P:null}}function Ic(M,P){try{console.error(P.value)}catch(F){setTimeout(function(){throw F})}}var Lc=typeof WeakMap=="function"?WeakMap:Map;function od(M,P,F){F=_s(-1,F),F.tag=3,F.payload={element:null};var q=P.value;return F.callback=function(){Vc||(Vc=!0,bd=q),Ic(M,P)},F}function Tl(M,P,F){F=_s(-1,F),F.tag=3;var q=M.type.getDerivedStateFromError;if(typeof q=="function"){var le=P.value;F.payload=function(){return q(le)},F.callback=function(){Ic(M,P)}}var xe=M.stateNode;return xe!==null&&typeof xe.componentDidCatch=="function"&&(F.callback=function(){Ic(M,P),typeof q!="function"&&(ti===null?ti=new Set([this]):ti.add(this));var Me=P.stack;this.componentDidCatch(P.value,{componentStack:Me!==null?Me:""})}),F}function Dc(M,P,F){var q=M.pingCache;if(q===null){q=M.pingCache=new Lc;var le=new Set;q.set(P,le)}else le=q.get(P),le===void 0&&(le=new Set,q.set(P,le));le.has(F)||(le.add(F),M=Up.bind(null,M,P,F),P.then(M,M))}function Pl(M){do{var P;if((P=M.tag===13)&&(P=M.memoizedState,P=P!==null?P.dehydrated!==null:!0),P)return M;M=M.return}while(M!==null);return null}function Mp(M,P,F,q,le){return(M.mode&1)===0?(M===P?M.flags|=65536:(M.flags|=128,F.flags|=131072,F.flags&=-52805,F.tag===1&&(F.alternate===null?F.tag=17:(P=_s(-1,1),P.tag=2,Ws(F,P,1))),F.lanes|=1),M):(M.flags|=65536,M.lanes=le,M)}var Tp=j.ReactCurrentOwner,Tn=!1;function On(M,P,F,q){P.child=M===null?xn(P,null,F,q):wi(P,M.child,F,q)}function Ac(M,P,F,q,le){F=F.render;var xe=P.ref;return Zr(P,le),q=Wu(M,P,F,q,xe,le),F=Ri(),M!==null&&!Tn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,Ss(M,P,le)):(zr&&F&&Hu(P),P.flags|=1,On(M,P,q,le),P.child)}function Pp(M,P,F,q,le){if(M===null){var xe=F.type;return typeof xe=="function"&&!Td(xe)&&xe.defaultProps===void 0&&F.compare===null&&F.defaultProps===void 0?(P.tag=15,P.type=xe,ad(M,P,xe,q,le)):(M=Ni(F.type,null,q,P,P.mode,le),M.ref=P.ref,M.return=P,P.child=M)}if(xe=M.child,(M.lanes&le)===0){var Me=xe.memoizedProps;if(F=F.compare,F=F!==null?F:ct,F(Me,q)&&M.ref===P.ref)return Ss(M,P,le)}return P.flags|=1,M=ii(xe,q),M.ref=P.ref,M.return=P,P.child=M}function ad(M,P,F,q,le){if(M!==null){var xe=M.memoizedProps;if(ct(xe,q)&&M.ref===P.ref)if(Tn=!1,P.pendingProps=q=xe,(M.lanes&le)!==0)(M.flags&131072)!==0&&(Tn=!0);else return P.lanes=M.lanes,Ss(M,P,le)}return Oc(M,P,F,q,le)}function ns(M,P,F){var q=P.pendingProps,le=q.children,xe=M!==null?M.memoizedState:null;if(q.mode==="hidden")if((P.mode&1)===0)P.memoizedState={baseLanes:0,cachePool:null,transitions:null},Hr(Ca,go),go|=F;else{if((F&1073741824)===0)return M=xe!==null?xe.baseLanes|F:F,P.lanes=P.childLanes=1073741824,P.memoizedState={baseLanes:M,cachePool:null,transitions:null},P.updateQueue=null,Hr(Ca,go),go|=M,null;P.memoizedState={baseLanes:0,cachePool:null,transitions:null},q=xe!==null?xe.baseLanes:F,Hr(Ca,go),go|=q}else xe!==null?(q=xe.baseLanes|F,P.memoizedState=null):q=F,Hr(Ca,go),go|=q;return On(M,P,le,F),P.child}function ld(M,P){var F=P.ref;(M===null&&F!==null||M!==null&&M.ref!==F)&&(P.flags|=512,P.flags|=2097152)}function Oc(M,P,F,q,le){var xe=Qn(F)?yi:Ln.current;return xe=Jn(P,xe),Zr(P,le),F=Wu(M,P,F,q,xe,le),q=Ri(),M!==null&&!Tn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,Ss(M,P,le)):(zr&&q&&Hu(P),P.flags|=1,On(M,P,F,le),P.child)}function $p(M,P,F,q,le){if(Qn(F)){var xe=!0;fc(P)}else xe=!1;if(Zr(P,le),P.stateNode===null)os(M,P),nd(P,F,q),Ii(P,F,q,le),q=!0;else if(M===null){var Me=P.stateNode,Oe=P.memoizedProps;Me.props=Oe;var Be=Me.context,at=F.contextType;typeof at=="object"&&at!==null?at=to(at):(at=Qn(F)?yi:Ln.current,at=Jn(P,at));var Tt=F.getDerivedStateFromProps,$t=typeof Tt=="function"||typeof Me.getSnapshotBeforeUpdate=="function";$t||typeof Me.UNSAFE_componentWillReceiveProps!="function"&&typeof Me.componentWillReceiveProps!="function"||(Oe!==q||Be!==at)&&ki(P,Me,q,at),Vs=!1;var Mt=P.memoizedState;Me.state=Mt,yc(P,q,Me,le),Be=P.memoizedState,Oe!==q||Mt!==Be||Kn.current||Vs?(typeof Tt=="function"&&(Rc(P,F,Tt,q),Be=P.memoizedState),(Oe=Vs||wp(P,F,Oe,q,Mt,Be,at))?($t||typeof Me.UNSAFE_componentWillMount!="function"&&typeof Me.componentWillMount!="function"||(typeof Me.componentWillMount=="function"&&Me.componentWillMount(),typeof Me.UNSAFE_componentWillMount=="function"&&Me.UNSAFE_componentWillMount()),typeof Me.componentDidMount=="function"&&(P.flags|=4194308)):(typeof Me.componentDidMount=="function"&&(P.flags|=4194308),P.memoizedProps=q,P.memoizedState=Be),Me.props=q,Me.state=Be,Me.context=at,q=Oe):(typeof Me.componentDidMount=="function"&&(P.flags|=4194308),q=!1)}else{Me=P.stateNode,zu(M,P),Oe=P.memoizedProps,at=P.type===P.elementType?Oe:An(P.type,Oe),Me.props=at,$t=P.pendingProps,Mt=Me.context,Be=F.contextType,typeof Be=="object"&&Be!==null?Be=to(Be):(Be=Qn(F)?yi:Ln.current,Be=Jn(P,Be));var jt=F.getDerivedStateFromProps;(Tt=typeof jt=="function"||typeof Me.getSnapshotBeforeUpdate=="function")||typeof Me.UNSAFE_componentWillReceiveProps!="function"&&typeof Me.componentWillReceiveProps!="function"||(Oe!==$t||Mt!==Be)&&ki(P,Me,q,Be),Vs=!1,Mt=P.memoizedState,Me.state=Mt,yc(P,q,Me,le);var Bt=P.memoizedState;Oe!==$t||Mt!==Bt||Kn.current||Vs?(typeof jt=="function"&&(Rc(P,F,jt,q),Bt=P.memoizedState),(at=Vs||wp(P,F,at,q,Mt,Bt,Be)||!1)?(Tt||typeof Me.UNSAFE_componentWillUpdate!="function"&&typeof Me.componentWillUpdate!="function"||(typeof Me.componentWillUpdate=="function"&&Me.componentWillUpdate(q,Bt,Be),typeof Me.UNSAFE_componentWillUpdate=="function"&&Me.UNSAFE_componentWillUpdate(q,Bt,Be)),typeof Me.componentDidUpdate=="function"&&(P.flags|=4),typeof Me.getSnapshotBeforeUpdate=="function"&&(P.flags|=1024)):(typeof Me.componentDidUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=4),typeof Me.getSnapshotBeforeUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=1024),P.memoizedProps=q,P.memoizedState=Bt),Me.props=q,Me.state=Bt,Me.context=Be,q=at):(typeof Me.componentDidUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=4),typeof Me.getSnapshotBeforeUpdate!="function"||Oe===M.memoizedProps&&Mt===M.memoizedState||(P.flags|=1024),q=!1)}return Fc(M,P,F,q,xe,le)}function Fc(M,P,F,q,le,xe){ld(M,P);var Me=(P.flags&128)!==0;if(!q&&!Me)return le&&Zo(P,F,!1),Ss(M,P,xe);q=P.stateNode,Tp.current=P;var Oe=Me&&typeof F.getDerivedStateFromError!="function"?null:q.render();return P.flags|=1,M!==null&&Me?(P.child=wi(P,M.child,null,xe),P.child=wi(P,null,Oe,xe)):On(M,P,Oe,xe),P.memoizedState=q.state,le&&Zo(P,F,!0),P.child}function Rp(M){var P=M.stateNode;P.pendingContext?fp(M,P.pendingContext,P.pendingContext!==P.context):P.context&&fp(M,P.context,!1),xl(M,P.containerInfo)}function kp(M,P,F,q,le){return Si(),Ci(le),P.flags|=256,On(M,P,F,q),P.child}var zo={dehydrated:null,treeContext:null,retryLane:0};function $l(M){return{baseLanes:M,cachePool:null,transitions:null}}function Nc(M,P,F){var q=P.pendingProps,le=Gr.current,xe=!1,Me=(P.flags&128)!==0,Oe;if((Oe=Me)||(Oe=M!==null&&M.memoizedState===null?!1:(le&2)!==0),Oe?(xe=!0,P.flags&=-129):(M===null||M.memoizedState!==null)&&(le|=1),Hr(Gr,le&1),M===null)return gs(P),M=P.memoizedState,M!==null&&(M=M.dehydrated,M!==null)?((P.mode&1)===0?P.lanes=1:M.data==="$!"?P.lanes=8:P.lanes=1073741824,null):(Me=q.children,M=q.fallback,xe?(q=P.mode,xe=P.child,Me={mode:"hidden",children:Me},(q&1)===0&&xe!==null?(xe.childLanes=0,xe.pendingProps=Me):xe=Xc(Me,q,0,null),M=ji(M,q,F,null),xe.return=P,M.return=P,xe.sibling=M,P.child=xe,P.child.memoizedState=$l(F),P.memoizedState=zo,M):Rl(P,Me));if(le=M.memoizedState,le!==null&&(Oe=le.dehydrated,Oe!==null))return ba(M,P,Me,q,Oe,le,F);if(xe){xe=q.fallback,Me=P.mode,le=M.child,Oe=le.sibling;var Be={mode:"hidden",children:q.children};return(Me&1)===0&&P.child!==le?(q=P.child,q.childLanes=0,q.pendingProps=Be,P.deletions=null):(q=ii(le,Be),q.subtreeFlags=le.subtreeFlags&14680064),Oe!==null?xe=ii(Oe,xe):(xe=ji(xe,Me,F,null),xe.flags|=2),xe.return=P,q.return=P,q.sibling=xe,P.child=q,q=xe,xe=P.child,Me=M.child.memoizedState,Me=Me===null?$l(F):{baseLanes:Me.baseLanes|F,cachePool:null,transitions:Me.transitions},xe.memoizedState=Me,xe.childLanes=M.childLanes&~F,P.memoizedState=zo,q}return xe=M.child,M=xe.sibling,q=ii(xe,{mode:"visible",children:q.children}),(P.mode&1)===0&&(q.lanes=F),q.return=P,q.sibling=null,M!==null&&(F=P.deletions,F===null?(P.deletions=[M],P.flags|=16):F.push(M)),P.child=q,P.memoizedState=null,q}function Rl(M,P){return P=Xc({mode:"visible",children:P},M.mode,0,null),P.return=M,M.child=P}function Li(M,P,F,q){return q!==null&&Ci(q),wi(P,M.child,null,F),M=Rl(P,P.pendingProps.children),M.flags|=2,P.memoizedState=null,M}function ba(M,P,F,q,le,xe,Me){if(F)return P.flags&256?(P.flags&=-257,q=kc(Error(g(422))),Li(M,P,Me,q)):P.memoizedState!==null?(P.child=M.child,P.flags|=128,null):(xe=q.fallback,le=P.mode,q=Xc({mode:"visible",children:q.children},le,0,null),xe=ji(xe,le,Me,null),xe.flags|=2,q.return=P,xe.return=P,q.sibling=xe,P.child=q,(P.mode&1)!==0&&wi(P,M.child,null,Me),P.child.memoizedState=$l(Me),P.memoizedState=zo,xe);if((P.mode&1)===0)return Li(M,P,Me,null);if(le.data==="$!"){if(q=le.nextSibling&&le.nextSibling.dataset,q)var Oe=q.dgst;return q=Oe,xe=Error(g(419)),q=kc(xe,q,void 0),Li(M,P,Me,q)}if(Oe=(Me&M.childLanes)!==0,Tn||Oe){if(q=vn,q!==null){switch(Me&-Me){case 4:le=2;break;case 16:le=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:le=32;break;case 536870912:le=268435456;break;default:le=0}le=(le&(q.suspendedLanes|Me))!==0?0:le,le!==0&&le!==xe.retryLane&&(xe.retryLane=le,Yo(M,le),Uo(q,M,le,-1))}return Md(),q=kc(Error(g(421))),Li(M,P,Me,q)}return le.data==="$?"?(P.flags|=128,P.child=M.child,P=jf.bind(null,M),le._reactRetry=P,null):(M=xe.treeContext,Dn=Hs(le.nextSibling),Mn=P,zr=!0,$o=null,M!==null&&(To[Po++]=hs,To[Po++]=ts,To[Po++]=Ei,hs=M.id,ts=M.overflow,Ei=P),P=Rl(P,q.children),P.flags|=4096,P)}function Zt(M,P,F){M.lanes|=P;var q=M.alternate;q!==null&&(q.lanes|=P),_c(M.return,P,F)}function Ea(M,P,F,q,le){var xe=M.memoizedState;xe===null?M.memoizedState={isBackwards:P,rendering:null,renderingStartTime:0,last:q,tail:F,tailMode:le}:(xe.isBackwards=P,xe.rendering=null,xe.renderingStartTime=0,xe.last=q,xe.tail=F,xe.tailMode=le)}function jc(M,P,F){var q=P.pendingProps,le=q.revealOrder,xe=q.tail;if(On(M,P,q.children,F),q=Gr.current,(q&2)!==0)q=q&1|2,P.flags|=128;else{if(M!==null&&(M.flags&128)!==0)e:for(M=P.child;M!==null;){if(M.tag===13)M.memoizedState!==null&&Zt(M,F,P);else if(M.tag===19)Zt(M,F,P);else if(M.child!==null){M.child.return=M,M=M.child;continue}if(M===P)break e;for(;M.sibling===null;){if(M.return===null||M.return===P)break e;M=M.return}M.sibling.return=M.return,M=M.sibling}q&=1}if(Hr(Gr,q),(P.mode&1)===0)P.memoizedState=null;else switch(le){case"forwards":for(F=P.child,le=null;F!==null;)M=F.alternate,M!==null&&_l(M)===null&&(le=F),F=F.sibling;F=le,F===null?(le=P.child,P.child=null):(le=F.sibling,F.sibling=null),Ea(P,!1,le,F,xe);break;case"backwards":for(F=null,le=P.child,P.child=null;le!==null;){if(M=le.alternate,M!==null&&_l(M)===null){P.child=le;break}M=le.sibling,le.sibling=F,F=le,le=M}Ea(P,!0,F,null,xe);break;case"together":Ea(P,!1,null,null,void 0);break;default:P.memoizedState=null}return P.child}function os(M,P){(P.mode&1)===0&&M!==null&&(M.alternate=null,P.alternate=null,P.flags|=2)}function Ss(M,P,F){if(M!==null&&(P.dependencies=M.dependencies),Di|=P.lanes,(F&P.childLanes)===0)return null;if(M!==null&&P.child!==M.child)throw Error(g(153));if(P.child!==null){for(M=P.child,F=ii(M,M.pendingProps),P.child=F,F.return=P;M.sibling!==null;)M=M.sibling,F=F.sibling=ii(M,M.pendingProps),F.return=P;F.sibling=null}return P.child}function cd(M,P,F){switch(P.tag){case 3:Rp(P),Si();break;case 5:bc(P);break;case 1:Qn(P.type)&&fc(P);break;case 4:xl(P,P.stateNode.containerInfo);break;case 10:var q=P.type._context,le=P.memoizedProps.value;Hr(pa,q._currentValue),q._currentValue=le;break;case 13:if(q=P.memoizedState,q!==null)return q.dehydrated!==null?(Hr(Gr,Gr.current&1),P.flags|=128,null):(F&P.child.childLanes)!==0?Nc(M,P,F):(Hr(Gr,Gr.current&1),M=Ss(M,P,F),M!==null?M.sibling:null);Hr(Gr,Gr.current&1);break;case 19:if(q=(F&P.childLanes)!==0,(M.flags&128)!==0){if(q)return jc(M,P,F);P.flags|=128}if(le=P.memoizedState,le!==null&&(le.rendering=null,le.tail=null,le.lastEffect=null),Hr(Gr,Gr.current),q)break;return null;case 22:case 23:return P.lanes=0,ns(M,P,F)}return Ss(M,P,F)}var ud,_n,Ip,Lp;ud=function(M,P){for(var F=P.child;F!==null;){if(F.tag===5||F.tag===6)M.appendChild(F.stateNode);else if(F.tag!==4&&F.child!==null){F.child.return=F,F=F.child;continue}if(F===P)break;for(;F.sibling===null;){if(F.return===null||F.return===P)return;F=F.return}F.sibling.return=F.return,F=F.sibling}},_n=function(){},Ip=function(M,P,F,q){var le=M.memoizedProps;if(le!==q){M=P.stateNode,Ks(rs.current);var xe=null;switch(F){case"input":le=Ge(M,le),q=Ge(M,q),xe=[];break;case"select":le=fe({},le,{value:void 0}),q=fe({},q,{value:void 0}),xe=[];break;case"textarea":le=Ze(M,le),q=Ze(M,q),xe=[];break;default:typeof le.onClick!="function"&&typeof q.onClick=="function"&&(M.onclick=Za)}Dt(F,q);var Me;F=null;for(at in le)if(!q.hasOwnProperty(at)&&le.hasOwnProperty(at)&&le[at]!=null)if(at==="style"){var Oe=le[at];for(Me in Oe)Oe.hasOwnProperty(Me)&&(F||(F={}),F[Me]="")}else at!=="dangerouslySetInnerHTML"&&at!=="children"&&at!=="suppressContentEditableWarning"&&at!=="suppressHydrationWarning"&&at!=="autoFocus"&&(b.hasOwnProperty(at)?xe||(xe=[]):(xe=xe||[]).push(at,null));for(at in q){var Be=q[at];if(Oe=le!=null?le[at]:void 0,q.hasOwnProperty(at)&&Be!==Oe&&(Be!=null||Oe!=null))if(at==="style")if(Oe){for(Me in Oe)!Oe.hasOwnProperty(Me)||Be&&Be.hasOwnProperty(Me)||(F||(F={}),F[Me]="");for(Me in Be)Be.hasOwnProperty(Me)&&Oe[Me]!==Be[Me]&&(F||(F={}),F[Me]=Be[Me])}else F||(xe||(xe=[]),xe.push(at,F)),F=Be;else at==="dangerouslySetInnerHTML"?(Be=Be?Be.__html:void 0,Oe=Oe?Oe.__html:void 0,Be!=null&&Oe!==Be&&(xe=xe||[]).push(at,Be)):at==="children"?typeof Be!="string"&&typeof Be!="number"||(xe=xe||[]).push(at,""+Be):at!=="suppressContentEditableWarning"&&at!=="suppressHydrationWarning"&&(b.hasOwnProperty(at)?(Be!=null&&at==="onScroll"&&Yr("scroll",M),xe||Oe===Be||(xe=[])):(xe=xe||[]).push(at,Be))}F&&(xe=xe||[]).push("style",F);var at=xe;(P.updateQueue=at)&&(P.flags|=4)}},Lp=function(M,P,F,q){F!==q&&(P.flags|=4)};function Sa(M,P){if(!zr)switch(M.tailMode){case"hidden":P=M.tail;for(var F=null;P!==null;)P.alternate!==null&&(F=P),P=P.sibling;F===null?M.tail=null:F.sibling=null;break;case"collapsed":F=M.tail;for(var q=null;F!==null;)F.alternate!==null&&(q=F),F=F.sibling;q===null?P||M.tail===null?M.tail=null:M.tail.sibling=null:q.sibling=null}}function Fn(M){var P=M.alternate!==null&&M.alternate.child===M.child,F=0,q=0;if(P)for(var le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags&14680064,q|=le.flags&14680064,le.return=M,le=le.sibling;else for(le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags,q|=le.flags,le.return=M,le=le.sibling;return M.subtreeFlags|=q,M.childLanes=F,P}function Dp(M,P,F){var q=P.pendingProps;switch(al(P),P.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Fn(P),null;case 1:return Qn(P.type)&&pc(),Fn(P),null;case 3:return q=P.stateNode,xa(),Lr(Kn),Lr(Ln),Gu(),q.pendingContext&&(q.context=q.pendingContext,q.pendingContext=null),(M===null||M.child===null)&&(gc(P)?P.flags|=4:M===null||M.memoizedState.isDehydrated&&(P.flags&256)===0||(P.flags|=1024,$o!==null&&(Sd($o),$o=null))),_n(M,P),Fn(P),null;case 5:Ec(P);var le=Ks(hl.current);if(F=P.type,M!==null&&P.stateNode!=null)Ip(M,P,F,q,le),M.ref!==P.ref&&(P.flags|=512,P.flags|=2097152);else{if(!q){if(P.stateNode===null)throw Error(g(166));return Fn(P),null}if(M=Ks(rs.current),gc(P)){q=P.stateNode,F=P.type;var xe=P.memoizedProps;switch(q[Xo]=P,q[il]=xe,M=(P.mode&1)!==0,F){case"dialog":Yr("cancel",q),Yr("close",q);break;case"iframe":case"object":case"embed":Yr("load",q);break;case"video":case"audio":for(le=0;le<ea.length;le++)Yr(ea[le],q);break;case"source":Yr("error",q);break;case"img":case"image":case"link":Yr("error",q),Yr("load",q);break;case"details":Yr("toggle",q);break;case"input":Ye(q,xe),Yr("invalid",q);break;case"select":q._wrapperState={wasMultiple:!!xe.multiple},Yr("invalid",q);break;case"textarea":qe(q,xe),Yr("invalid",q)}Dt(F,xe),le=null;for(var Me in xe)if(xe.hasOwnProperty(Me)){var Oe=xe[Me];Me==="children"?typeof Oe=="string"?q.textContent!==Oe&&(xe.suppressHydrationWarning!==!0&&uc(q.textContent,Oe,M),le=["children",Oe]):typeof Oe=="number"&&q.textContent!==""+Oe&&(xe.suppressHydrationWarning!==!0&&uc(q.textContent,Oe,M),le=["children",""+Oe]):b.hasOwnProperty(Me)&&Oe!=null&&Me==="onScroll"&&Yr("scroll",q)}switch(F){case"input":De(q),We(q,xe,!0);break;case"textarea":De(q),St(q);break;case"select":case"option":break;default:typeof xe.onClick=="function"&&(q.onclick=Za)}q=le,P.updateQueue=q,q!==null&&(P.flags|=4)}else{Me=le.nodeType===9?le:le.ownerDocument,M==="http://www.w3.org/1999/xhtml"&&(M=Ae(F)),M==="http://www.w3.org/1999/xhtml"?F==="script"?(M=Me.createElement("div"),M.innerHTML="<script><\/script>",M=M.removeChild(M.firstChild)):typeof q.is=="string"?M=Me.createElement(F,{is:q.is}):(M=Me.createElement(F),F==="select"&&(Me=M,q.multiple?Me.multiple=!0:q.size&&(Me.size=q.size))):M=Me.createElementNS(M,F),M[Xo]=P,M[il]=q,ud(M,P,!1,!1),P.stateNode=M;e:{switch(Me=Jt(F,q),F){case"dialog":Yr("cancel",M),Yr("close",M),le=q;break;case"iframe":case"object":case"embed":Yr("load",M),le=q;break;case"video":case"audio":for(le=0;le<ea.length;le++)Yr(ea[le],M);le=q;break;case"source":Yr("error",M),le=q;break;case"img":case"image":case"link":Yr("error",M),Yr("load",M),le=q;break;case"details":Yr("toggle",M),le=q;break;case"input":Ye(M,q),le=Ge(M,q),Yr("invalid",M);break;case"option":le=q;break;case"select":M._wrapperState={wasMultiple:!!q.multiple},le=fe({},q,{value:void 0}),Yr("invalid",M);break;case"textarea":qe(M,q),le=Ze(M,q),Yr("invalid",M);break;default:le=q}Dt(F,le),Oe=le;for(xe in Oe)if(Oe.hasOwnProperty(xe)){var Be=Oe[xe];xe==="style"?Ht(M,Be):xe==="dangerouslySetInnerHTML"?(Be=Be?Be.__html:void 0,Be!=null&&tt(M,Be)):xe==="children"?typeof Be=="string"?(F!=="textarea"||Be!=="")&&It(M,Be):typeof Be=="number"&&It(M,""+Be):xe!=="suppressContentEditableWarning"&&xe!=="suppressHydrationWarning"&&xe!=="autoFocus"&&(b.hasOwnProperty(xe)?Be!=null&&xe==="onScroll"&&Yr("scroll",M):Be!=null&&B(M,xe,Be,Me))}switch(F){case"input":De(M),We(M,q,!1);break;case"textarea":De(M),St(M);break;case"option":q.value!=null&&M.setAttribute("value",""+Ce(q.value));break;case"select":M.multiple=!!q.multiple,xe=q.value,xe!=null?Ve(M,!!q.multiple,xe,!1):q.defaultValue!=null&&Ve(M,!!q.multiple,q.defaultValue,!0);break;default:typeof le.onClick=="function"&&(M.onclick=Za)}switch(F){case"button":case"input":case"select":case"textarea":q=!!q.autoFocus;break e;case"img":q=!0;break e;default:q=!1}}q&&(P.flags|=4)}P.ref!==null&&(P.flags|=512,P.flags|=2097152)}return Fn(P),null;case 6:if(M&&P.stateNode!=null)Lp(M,P,M.memoizedProps,q);else{if(typeof q!="string"&&P.stateNode===null)throw Error(g(166));if(F=Ks(hl.current),Ks(rs.current),gc(P)){if(q=P.stateNode,F=P.memoizedProps,q[Xo]=P,(xe=q.nodeValue!==F)&&(M=Mn,M!==null))switch(M.tag){case 3:uc(q.nodeValue,F,(M.mode&1)!==0);break;case 5:M.memoizedProps.suppressHydrationWarning!==!0&&uc(q.nodeValue,F,(M.mode&1)!==0)}xe&&(P.flags|=4)}else q=(F.nodeType===9?F:F.ownerDocument).createTextNode(q),q[Xo]=P,P.stateNode=q}return Fn(P),null;case 13:if(Lr(Gr),q=P.memoizedState,M===null||M.memoizedState!==null&&M.memoizedState.dehydrated!==null){if(zr&&Dn!==null&&(P.mode&1)!==0&&(P.flags&128)===0)Yu(),Si(),P.flags|=98560,xe=!1;else if(xe=gc(P),q!==null&&q.dehydrated!==null){if(M===null){if(!xe)throw Error(g(318));if(xe=P.memoizedState,xe=xe!==null?xe.dehydrated:null,!xe)throw Error(g(317));xe[Xo]=P}else Si(),(P.flags&128)===0&&(P.memoizedState=null),P.flags|=4;Fn(P),xe=!1}else $o!==null&&(Sd($o),$o=null),xe=!0;if(!xe)return P.flags&65536?P:null}return(P.flags&128)!==0?(P.lanes=F,P):(q=q!==null,q!==(M!==null&&M.memoizedState!==null)&&q&&(P.child.flags|=8192,(P.mode&1)!==0&&(M===null||(Gr.current&1)!==0?dn===0&&(dn=3):Md())),P.updateQueue!==null&&(P.flags|=4),Fn(P),null);case 4:return xa(),_n(M,P),M===null&&Ns(P.stateNode.containerInfo),Fn(P),null;case 10:return xs(P.type._context),Fn(P),null;case 17:return Qn(P.type)&&pc(),Fn(P),null;case 19:if(Lr(Gr),xe=P.memoizedState,xe===null)return Fn(P),null;if(q=(P.flags&128)!==0,Me=xe.rendering,Me===null)if(q)Sa(xe,!1);else{if(dn!==0||M!==null&&(M.flags&128)!==0)for(M=P.child;M!==null;){if(Me=_l(M),Me!==null){for(P.flags|=128,Sa(xe,!1),q=Me.updateQueue,q!==null&&(P.updateQueue=q,P.flags|=4),P.subtreeFlags=0,q=F,F=P.child;F!==null;)xe=F,M=q,xe.flags&=14680066,Me=xe.alternate,Me===null?(xe.childLanes=0,xe.lanes=M,xe.child=null,xe.subtreeFlags=0,xe.memoizedProps=null,xe.memoizedState=null,xe.updateQueue=null,xe.dependencies=null,xe.stateNode=null):(xe.childLanes=Me.childLanes,xe.lanes=Me.lanes,xe.child=Me.child,xe.subtreeFlags=0,xe.deletions=null,xe.memoizedProps=Me.memoizedProps,xe.memoizedState=Me.memoizedState,xe.updateQueue=Me.updateQueue,xe.type=Me.type,M=Me.dependencies,xe.dependencies=M===null?null:{lanes:M.lanes,firstContext:M.firstContext}),F=F.sibling;return Hr(Gr,Gr.current&1|2),P.child}M=M.sibling}xe.tail!==null&&Jr()>Ma&&(P.flags|=128,q=!0,Sa(xe,!1),P.lanes=4194304)}else{if(!q)if(M=_l(Me),M!==null){if(P.flags|=128,q=!0,F=M.updateQueue,F!==null&&(P.updateQueue=F,P.flags|=4),Sa(xe,!0),xe.tail===null&&xe.tailMode==="hidden"&&!Me.alternate&&!zr)return Fn(P),null}else 2*Jr()-xe.renderingStartTime>Ma&&F!==1073741824&&(P.flags|=128,q=!0,Sa(xe,!1),P.lanes=4194304);xe.isBackwards?(Me.sibling=P.child,P.child=Me):(F=xe.last,F!==null?F.sibling=Me:P.child=Me,xe.last=Me)}return xe.tail!==null?(P=xe.tail,xe.rendering=P,xe.tail=P.sibling,xe.renderingStartTime=Jr(),P.sibling=null,F=Gr.current,Hr(Gr,q?F&1|2:F&1),P):(Fn(P),null);case 22:case 23:return wd(),q=P.memoizedState!==null,M!==null&&M.memoizedState!==null!==q&&(P.flags|=8192),q&&(P.mode&1)!==0?(go&1073741824)!==0&&(Fn(P),P.subtreeFlags&6&&(P.flags|=8192)):Fn(P),null;case 24:return null;case 25:return null}throw Error(g(156,P.tag))}function If(M,P){switch(al(P),P.tag){case 1:return Qn(P.type)&&pc(),M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 3:return xa(),Lr(Kn),Lr(Ln),Gu(),M=P.flags,(M&65536)!==0&&(M&128)===0?(P.flags=M&-65537|128,P):null;case 5:return Ec(P),null;case 13:if(Lr(Gr),M=P.memoizedState,M!==null&&M.dehydrated!==null){if(P.alternate===null)throw Error(g(340));Si()}return M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 19:return Lr(Gr),null;case 4:return xa(),null;case 10:return xs(P.type._context),null;case 22:case 23:return wd(),null;case 24:return null;default:return null}}var Hc=!1,Nn=!1,Cs=typeof WeakSet=="function"?WeakSet:Set,At=null;function Qs(M,P){var F=M.ref;if(F!==null)if(typeof F=="function")try{F(null)}catch(q){Vr(M,P,q)}else F.current=null}function dd(M,P,F){try{F()}catch(q){Vr(M,P,q)}}var Yc=!1;function Lf(M,P){if(Fu=Ql,M=Xr(),Ar(M)){if("selectionStart"in M)var F={start:M.selectionStart,end:M.selectionEnd};else e:{F=(F=M.ownerDocument)&&F.defaultView||window;var q=F.getSelection&&F.getSelection();if(q&&q.rangeCount!==0){F=q.anchorNode;var le=q.anchorOffset,xe=q.focusNode;q=q.focusOffset;try{F.nodeType,xe.nodeType}catch(kt){F=null;break e}var Me=0,Oe=-1,Be=-1,at=0,Tt=0,$t=M,Mt=null;t:for(;;){for(var jt;$t!==F||le!==0&&$t.nodeType!==3||(Oe=Me+le),$t!==xe||q!==0&&$t.nodeType!==3||(Be=Me+q),$t.nodeType===3&&(Me+=$t.nodeValue.length),(jt=$t.firstChild)!==null;)Mt=$t,$t=jt;for(;;){if($t===M)break t;if(Mt===F&&++at===le&&(Oe=Me),Mt===xe&&++Tt===q&&(Be=Me),(jt=$t.nextSibling)!==null)break;$t=Mt,Mt=$t.parentNode}$t=jt}F=Oe===-1||Be===-1?null:{start:Oe,end:Be}}else F=null}F=F||{start:0,end:0}}else F=null;for(tl={focusedElem:M,selectionRange:F},Ql=!1,At=P;At!==null;)if(P=At,M=P.child,(P.subtreeFlags&1028)!==0&&M!==null)M.return=P,At=M;else for(;At!==null;){P=At;try{var Bt=P.alternate;if((P.flags&1024)!==0)switch(P.tag){case 0:case 11:case 15:break;case 1:if(Bt!==null){var zt=Bt.memoizedProps,qr=Bt.memoizedState,rt=P.stateNode,Ke=rt.getSnapshotBeforeUpdate(P.elementType===P.type?zt:An(P.type,zt),qr);rt.__reactInternalSnapshotBeforeUpdate=Ke}break;case 3:var st=P.stateNode.containerInfo;st.nodeType===1?st.textContent="":st.nodeType===9&&st.documentElement&&st.removeChild(st.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(g(163))}}catch(kt){Vr(P,P.return,kt)}if(M=P.sibling,M!==null){M.return=P.return,At=M;break}At=P.return}return Bt=Yc,Yc=!1,Bt}function kl(M,P,F){var q=P.updateQueue;if(q=q!==null?q.lastEffect:null,q!==null){var le=q=q.next;do{if((le.tag&M)===M){var xe=le.destroy;le.destroy=void 0,xe!==void 0&&dd(P,F,xe)}le=le.next}while(le!==q)}}function Xs(M,P){if(P=P.updateQueue,P=P!==null?P.lastEffect:null,P!==null){var F=P=P.next;do{if((F.tag&M)===M){var q=F.create;F.destroy=q()}F=F.next}while(F!==P)}}function Bc(M){var P=M.ref;if(P!==null){var F=M.stateNode;switch(M.tag){case 5:M=F;break;default:M=F}typeof P=="function"?P(M):P.current=M}}function pd(M){var P=M.alternate;P!==null&&(M.alternate=null,pd(P)),M.child=null,M.deletions=null,M.sibling=null,M.tag===5&&(P=M.stateNode,P!==null&&(delete P[Xo],delete P[il],delete P[_i],delete P[pp],delete P[$e])),M.stateNode=null,M.return=null,M.dependencies=null,M.memoizedProps=null,M.memoizedState=null,M.pendingProps=null,M.stateNode=null,M.updateQueue=null}function Ap(M){return M.tag===5||M.tag===3||M.tag===4}function Op(M){e:for(;;){for(;M.sibling===null;){if(M.return===null||Ap(M.return))return null;M=M.return}for(M.sibling.return=M.return,M=M.sibling;M.tag!==5&&M.tag!==6&&M.tag!==18;){if(M.flags&2||M.child===null||M.tag===4)continue e;M.child.return=M,M=M.child}if(!(M.flags&2))return M.stateNode}}function fd(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.nodeType===8?F.parentNode.insertBefore(M,P):F.insertBefore(M,P):(F.nodeType===8?(P=F.parentNode,P.insertBefore(M,F)):(P=F,P.appendChild(M)),F=F._reactRootContainer,F!=null||P.onclick!==null||(P.onclick=Za));else if(q!==4&&(M=M.child,M!==null))for(fd(M,P,F),M=M.sibling;M!==null;)fd(M,P,F),M=M.sibling}function hd(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.insertBefore(M,P):F.appendChild(M);else if(q!==4&&(M=M.child,M!==null))for(hd(M,P,F),M=M.sibling;M!==null;)hd(M,P,F),M=M.sibling}var yn=null,Io=!1;function Zs(M,P,F){for(F=F.child;F!==null;)zc(M,P,F),F=F.sibling}function zc(M,P,F){if(Qo&&typeof Qo.onCommitFiberUnmount=="function")try{Qo.onCommitFiberUnmount($a,F)}catch(Oe){}switch(F.tag){case 5:Nn||Qs(F,P);case 6:var q=yn,le=Io;yn=null,Zs(M,P,F),yn=q,Io=le,yn!==null&&(Io?(M=yn,F=F.stateNode,M.nodeType===8?M.parentNode.removeChild(F):M.removeChild(F)):yn.removeChild(F.stateNode));break;case 18:yn!==null&&(Io?(M=yn,F=F.stateNode,M.nodeType===8?js(M.parentNode,F):M.nodeType===1&&js(M,F),Dr(M)):js(yn,F.stateNode));break;case 4:q=yn,le=Io,yn=F.stateNode.containerInfo,Io=!0,Zs(M,P,F),yn=q,Io=le;break;case 0:case 11:case 14:case 15:if(!Nn&&(q=F.updateQueue,q!==null&&(q=q.lastEffect,q!==null))){le=q=q.next;do{var xe=le,Me=xe.destroy;xe=xe.tag,Me!==void 0&&((xe&2)!==0||(xe&4)!==0)&&dd(F,P,Me),le=le.next}while(le!==q)}Zs(M,P,F);break;case 1:if(!Nn&&(Qs(F,P),q=F.stateNode,typeof q.componentWillUnmount=="function"))try{q.props=F.memoizedProps,q.state=F.memoizedState,q.componentWillUnmount()}catch(Oe){Vr(F,P,Oe)}Zs(M,P,F);break;case 21:Zs(M,P,F);break;case 22:F.mode&1?(Nn=(q=Nn)||F.memoizedState!==null,Zs(M,P,F),Nn=q):Zs(M,P,F);break;default:Zs(M,P,F)}}function xd(M){var P=M.updateQueue;if(P!==null){M.updateQueue=null;var F=M.stateNode;F===null&&(F=M.stateNode=new Cs),P.forEach(function(q){var le=Hf.bind(null,M,q);F.has(q)||(F.add(q),q.then(le,le))})}}function Vn(M,P){var F=P.deletions;if(F!==null)for(var q=0;q<F.length;q++){var le=F[q];try{var xe=M,Me=P,Oe=Me;e:for(;Oe!==null;){switch(Oe.tag){case 5:yn=Oe.stateNode,Io=!1;break e;case 3:yn=Oe.stateNode.containerInfo,Io=!0;break e;case 4:yn=Oe.stateNode.containerInfo,Io=!0;break e}Oe=Oe.return}if(yn===null)throw Error(g(160));zc(xe,Me,le),yn=null,Io=!1;var Be=le.alternate;Be!==null&&(Be.return=null),le.return=null}catch(at){Vr(le,P,at)}}if(P.subtreeFlags&12854)for(P=P.child;P!==null;)Gc(P,M),P=P.sibling}function Gc(M,P){var F=M.alternate,q=M.flags;switch(M.tag){case 0:case 11:case 14:case 15:if(Vn(P,M),Go(M),q&4){try{kl(3,M,M.return),Xs(3,M)}catch(zt){Vr(M,M.return,zt)}try{kl(5,M,M.return)}catch(zt){Vr(M,M.return,zt)}}break;case 1:Vn(P,M),Go(M),q&512&&F!==null&&Qs(F,F.return);break;case 5:if(Vn(P,M),Go(M),q&512&&F!==null&&Qs(F,F.return),M.flags&32){var le=M.stateNode;try{It(le,"")}catch(zt){Vr(M,M.return,zt)}}if(q&4&&(le=M.stateNode,le!=null)){var xe=M.memoizedProps,Me=F!==null?F.memoizedProps:xe,Oe=M.type,Be=M.updateQueue;if(M.updateQueue=null,Be!==null)try{Oe==="input"&&xe.type==="radio"&&xe.name!=null&&Ue(le,xe),Jt(Oe,Me);var at=Jt(Oe,xe);for(Me=0;Me<Be.length;Me+=2){var Tt=Be[Me],$t=Be[Me+1];Tt==="style"?Ht(le,$t):Tt==="dangerouslySetInnerHTML"?tt(le,$t):Tt==="children"?It(le,$t):B(le,Tt,$t,at)}switch(Oe){case"input":ot(le,xe);break;case"textarea":ut(le,xe);break;case"select":var Mt=le._wrapperState.wasMultiple;le._wrapperState.wasMultiple=!!xe.multiple;var jt=xe.value;jt!=null?Ve(le,!!xe.multiple,jt,!1):Mt!==!!xe.multiple&&(xe.defaultValue!=null?Ve(le,!!xe.multiple,xe.defaultValue,!0):Ve(le,!!xe.multiple,xe.multiple?[]:"",!1))}le[il]=xe}catch(zt){Vr(M,M.return,zt)}}break;case 6:if(Vn(P,M),Go(M),q&4){if(M.stateNode===null)throw Error(g(162));le=M.stateNode,xe=M.memoizedProps;try{le.nodeValue=xe}catch(zt){Vr(M,M.return,zt)}}break;case 3:if(Vn(P,M),Go(M),q&4&&F!==null&&F.memoizedState.isDehydrated)try{Dr(P.containerInfo)}catch(zt){Vr(M,M.return,zt)}break;case 4:Vn(P,M),Go(M);break;case 13:Vn(P,M),Go(M),le=M.child,le.flags&8192&&(xe=le.memoizedState!==null,le.stateNode.isHidden=xe,!xe||le.alternate!==null&&le.alternate.memoizedState!==null||(vd=Jr())),q&4&&xd(M);break;case 22:if(Tt=F!==null&&F.memoizedState!==null,M.mode&1?(Nn=(at=Nn)||Tt,Vn(P,M),Nn=at):Vn(P,M),Go(M),q&8192){if(at=M.memoizedState!==null,(M.stateNode.isHidden=at)&&!Tt&&(M.mode&1)!==0)for(At=M,Tt=M.child;Tt!==null;){for($t=At=Tt;At!==null;){switch(Mt=At,jt=Mt.child,Mt.tag){case 0:case 11:case 14:case 15:kl(4,Mt,Mt.return);break;case 1:Qs(Mt,Mt.return);var Bt=Mt.stateNode;if(typeof Bt.componentWillUnmount=="function"){q=Mt,F=Mt.return;try{P=q,Bt.props=P.memoizedProps,Bt.state=P.memoizedState,Bt.componentWillUnmount()}catch(zt){Vr(q,F,zt)}}break;case 5:Qs(Mt,Mt.return);break;case 22:if(Mt.memoizedState!==null){Lo($t);continue}}jt!==null?(jt.return=Mt,At=jt):Lo($t)}Tt=Tt.sibling}e:for(Tt=null,$t=M;;){if($t.tag===5){if(Tt===null){Tt=$t;try{le=$t.stateNode,at?(xe=le.style,typeof xe.setProperty=="function"?xe.setProperty("display","none","important"):xe.display="none"):(Oe=$t.stateNode,Be=$t.memoizedProps.style,Me=Be!=null&&Be.hasOwnProperty("display")?Be.display:null,Oe.style.display=Ct("display",Me))}catch(zt){Vr(M,M.return,zt)}}}else if($t.tag===6){if(Tt===null)try{$t.stateNode.nodeValue=at?"":$t.memoizedProps}catch(zt){Vr(M,M.return,zt)}}else if(($t.tag!==22&&$t.tag!==23||$t.memoizedState===null||$t===M)&&$t.child!==null){$t.child.return=$t,$t=$t.child;continue}if($t===M)break e;for(;$t.sibling===null;){if($t.return===null||$t.return===M)break e;Tt===$t&&(Tt=null),$t=$t.return}Tt===$t&&(Tt=null),$t.sibling.return=$t.return,$t=$t.sibling}}break;case 19:Vn(P,M),Go(M),q&4&&xd(M);break;case 21:break;default:Vn(P,M),Go(M)}}function Go(M){var P=M.flags;if(P&2){try{e:{for(var F=M.return;F!==null;){if(Ap(F)){var q=F;break e}F=F.return}throw Error(g(160))}switch(q.tag){case 5:var le=q.stateNode;q.flags&32&&(It(le,""),q.flags&=-33);var xe=Op(M);hd(M,xe,le);break;case 3:case 4:var Me=q.stateNode.containerInfo,Oe=Op(M);fd(M,Oe,Me);break;default:throw Error(g(161))}}catch(Be){Vr(M,M.return,Be)}M.flags&=-3}P&4096&&(M.flags&=-4097)}function Fp(M,P,F){At=M,Il(M)}function Il(M,P,F){for(var q=(M.mode&1)!==0;At!==null;){var le=At,xe=le.child;if(le.tag===22&&q){var Me=le.memoizedState!==null||Hc;if(!Me){var Oe=le.alternate,Be=Oe!==null&&Oe.memoizedState!==null||Nn;Oe=Hc;var at=Nn;if(Hc=Me,(Nn=Be)&&!at)for(At=le;At!==null;)Me=At,Be=Me.child,Me.tag===22&&Me.memoizedState!==null?ei(le):Be!==null?(Be.return=Me,At=Be):ei(le);for(;xe!==null;)At=xe,Il(xe),xe=xe.sibling;At=le,Hc=Oe,Nn=at}_d(M)}else(le.subtreeFlags&8772)!==0&&xe!==null?(xe.return=le,At=xe):_d(M)}}function _d(M){for(;At!==null;){var P=At;if((P.flags&8772)!==0){var F=P.alternate;try{if((P.flags&8772)!==0)switch(P.tag){case 0:case 11:case 15:Nn||Xs(5,P);break;case 1:var q=P.stateNode;if(P.flags&4&&!Nn)if(F===null)q.componentDidMount();else{var le=P.elementType===P.type?F.memoizedProps:An(P.type,F.memoizedProps);q.componentDidUpdate(le,F.memoizedState,q.__reactInternalSnapshotBeforeUpdate)}var xe=P.updateQueue;xe!==null&&vc(P,xe,q);break;case 3:var Me=P.updateQueue;if(Me!==null){if(F=null,P.child!==null)switch(P.child.tag){case 5:F=P.child.stateNode;break;case 1:F=P.child.stateNode}vc(P,Me,F)}break;case 5:var Oe=P.stateNode;if(F===null&&P.flags&4){F=Oe;var Be=P.memoizedProps;switch(P.type){case"button":case"input":case"select":case"textarea":Be.autoFocus&&F.focus();break;case"img":Be.src&&(F.src=Be.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(P.memoizedState===null){var at=P.alternate;if(at!==null){var Tt=at.memoizedState;if(Tt!==null){var $t=Tt.dehydrated;$t!==null&&Dr($t)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(g(163))}Nn||P.flags&512&&Bc(P)}catch(Mt){Vr(P,P.return,Mt)}}if(P===M){At=null;break}if(F=P.sibling,F!==null){F.return=P.return,At=F;break}At=P.return}}function Lo(M){for(;At!==null;){var P=At;if(P===M){At=null;break}var F=P.sibling;if(F!==null){F.return=P.return,At=F;break}At=P.return}}function ei(M){for(;At!==null;){var P=At;try{switch(P.tag){case 0:case 11:case 15:var F=P.return;try{Xs(4,P)}catch(Be){Vr(P,F,Be)}break;case 1:var q=P.stateNode;if(typeof q.componentDidMount=="function"){var le=P.return;try{q.componentDidMount()}catch(Be){Vr(P,le,Be)}}var xe=P.return;try{Bc(P)}catch(Be){Vr(P,xe,Be)}break;case 5:var Me=P.return;try{Bc(P)}catch(Be){Vr(P,Me,Be)}}}catch(Be){Vr(P,P.return,Be)}if(P===M){At=null;break}var Oe=P.sibling;if(Oe!==null){Oe.return=P.return,At=Oe;break}At=P.return}}var Df=Math.ceil,Ll=j.ReactCurrentDispatcher,yd=j.ReactCurrentOwner,Do=j.ReactCurrentBatchConfig,Mr=0,vn=null,on=null,Pn=0,go=0,Ca=Bs(0),dn=0,Dl=null,Di=0,Al=0,Uc=0,wa=null,so=null,vd=0,Ma=1/0,as=null,Vc=!1,bd=null,ti=null,Wc=!1,ri=null,qc=0,jn=0,Ed=null,Kc=-1,Jc=0;function Hn(){return(Mr&6)!==0?Jr():Kc!==-1?Kc:Kc=Jr()}function ni(M){return(M.mode&1)===0?1:(Mr&2)!==0&&Pn!==0?Pn&-Pn:Us.transition!==null?(Jc===0&&(Jc=xu()),Jc):(M=kr,M!==0||(M=window.event,M=M===void 0?16:Su(M.type)),M)}function Uo(M,P,F,q){if(50<jn)throw jn=0,Ed=null,Error(g(185));li(M,F,q),((Mr&2)===0||M!==vn)&&(M===vn&&((Mr&2)===0&&(Al|=F),dn===4&&oi(M,Pn)),io(M,q),F===1&&Mr===0&&(P.mode&1)===0&&(Ma=Jr()+500,mc&&Xn()))}function io(M,P){var F=M.callbackNode;Nd(M,P);var q=La(M,M===vn?Pn:0);if(q===0)F!==null&&co(F),M.callbackNode=null,M.callbackPriority=0;else if(P=q&-q,M.callbackPriority!==P){if(F!=null&&co(F),P===1)M.tag===0?Tf(jp.bind(null,M)):hp(jp.bind(null,M)),ol(function(){(Mr&6)===0&&Xn()}),F=null;else{switch(Wl(q)){case 1:F=pu;break;case 4:F=Dd;break;case 16:F=zl;break;case 536870912:F=fu;break;default:F=zl}F=qp(F,Np.bind(null,M))}M.callbackPriority=P,M.callbackNode=F}}function Np(M,P){if(Kc=-1,Jc=0,(Mr&6)!==0)throw Error(g(327));var F=M.callbackNode;if(Ta()&&M.callbackNode!==F)return null;var q=La(M,M===vn?Pn:0);if(q===0)return null;if((q&30)!==0||(q&M.expiredLanes)!==0||P)P=Qc(M,q);else{P=q;var le=Mr;Mr|=2;var xe=Yp();(vn!==M||Pn!==P)&&(as=null,Ma=Jr()+500,Oi(M,P));do try{Ff();break}catch(Oe){Hp(M,Oe)}while(!0);ma(),Ll.current=xe,Mr=le,on!==null?P=0:(vn=null,Pn=0,P=dn)}if(P!==0){if(P===2&&(le=mu(M),le!==0&&(q=le,P=Ol(M,le))),P===1)throw F=Dl,Oi(M,0),oi(M,q),io(M,Jr()),F;if(P===6)oi(M,q);else{if(le=M.current.alternate,(q&30)===0&&!Af(le)&&(P=Qc(M,q),P===2&&(xe=mu(M),xe!==0&&(q=xe,P=Ol(M,xe))),P===1))throw F=Dl,Oi(M,0),oi(M,q),io(M,Jr()),F;switch(M.finishedWork=le,M.finishedLanes=q,P){case 0:case 1:throw Error(g(345));case 2:Fi(M,so,as);break;case 3:if(oi(M,q),(q&130023424)===q&&(P=vd+500-Jr(),10<P)){if(La(M,0)!==0)break;if(le=M.suspendedLanes,(le&q)!==q){Hn(),M.pingedLanes|=M.suspendedLanes≤break}M.timeoutHandle=rl(Fi.bind(null,M,so,as),P);break}Fi(M,so,as);break;case 4:if(oi(M,q),(q&4194240)===q)break;for(P=M.eventTimes,le=-1;0<q;){var Me=31-jo(q);xe=1<<Me,Me=P[Me],Me>le&&(le=Me),q&=~xe}if(q=le,q=Jr()-q,q=(120>q?120:480>q?480:1080>q?1080:1920>q?1920:3e3>q?3e3:4320>q?4320:1960*Df(q/1960))-q,10<q){M.timeoutHandle=rl(Fi.bind(null,M,so,as),q);break}Fi(M,so,as);break;case 5:Fi(M,so,as);break;default:throw Error(g(329))}}}return io(M,Jr()),M.callbackNode===F?Np.bind(null,M):null}function Ol(M,P){var F=wa;return M.current.memoizedState.isDehydrated&&(Oi(M,P).flags|=256),M=Qc(M,P),M!==2&&(P=so,so=F,P!==null&&Sd(P)),M}function Sd(M){so===null?so=M:so.push.apply(so,M)}function Af(M){for(var P=M;;){if(P.flags&16384){var F=P.updateQueue;if(F!==null&&(F=F.stores,F!==null))for(var q=0;q<F.length;q++){var le=F[q],xe=le.getSnapshot;le=le.value;try{if(!gt(xe(),le))return!1}catch(Me){return!1}}}if(F=P.child,P.subtreeFlags&16384&&F!==null)F.return=P,P=F;else{if(P===M)break;for(;P.sibling===null;){if(P.return===null||P.return===M)return!0;P=P.return}P.sibling.return=P.return,P=P.sibling}}return!0}function oi(M,P){for(P&=~Uc,P&=~Al,M.suspendedLanes|=P,M.pingedLanes&=~P,M=M.expirationTimes;0<P;){var F=31-jo(P),q=1<<F;M[F]=-1,P&=~q}}function jp(M){if((Mr&6)!==0)throw Error(g(327));Ta();var P=La(M,0);if((P&1)===0)return io(M,Jr()),null;var F=Qc(M,P);if(M.tag!==0&&F===2){var q=mu(M);q!==0&&(P=q,F=Ol(M,q))}if(F===1)throw F=Dl,Oi(M,0),oi(M,P),io(M,Jr()),F;if(F===6)throw Error(g(345));return M.finishedWork=M.current.alternate,M.finishedLanes=P,Fi(M,so,as),io(M,Jr()),null}function Cd(M,P){var F=Mr;Mr|=1;try{return M(P)}finally{Mr=F,Mr===0&&(Ma=Jr()+500,mc&&Xn())}}function Ai(M){ri!==null&&ri.tag===0&&(Mr&6)===0&&Ta();var P=Mr;Mr|=1;var F=Do.transition,q=kr;try{if(Do.transition=null,kr=1,M)return M()}finally{kr=q,Do.transition=F,Mr=P,(Mr&6)===0&&Xn()}}function wd(){go=Ca.current,Lr(Ca)}function Oi(M,P){M.finishedWork=null,M.finishedLanes=0;var F=M.timeoutHandle;if(F!==-1&&(M.timeoutHandle=-1,na(F)),on!==null)for(F=on.return;F!==null;){var q=F;switch(al(q),q.tag){case 1:q=q.type.childContextTypes,q!=null&&pc();break;case 3:xa(),Lr(Kn),Lr(Ln),Gu();break;case 5:Ec(q);break;case 4:xa();break;case 13:Lr(Gr);break;case 19:Lr(Gr);break;case 10:xs(q.type._context);break;case 22:case 23:wd()}F=F.return}if(vn=M,on=M=ii(M.current,null),Pn=go=P,dn=0,Dl=null,Uc=Al=Di=0,so=wa=null,Mi!==null){for(P=0;P<Mi.length;P++)if(F=Mi[P],q=F.interleaved,q!==null){F.interleaved=null;var le=q.next,xe=F.pending;if(xe!==null){var Me=xe.next;xe.next=le,q.next=Me}F.pending=q}Mi=null}return M}function Hp(M,P){do{var F=on;try{if(ma(),yl.current=ho,vl){for(var q=Ur.memoizedState;q!==null;){var le=q.queue;le!==null&&(le.pending=null),q=q.next}vl=!1}if(Pi=0,tn=un=Ur=null,$i=!1,bl=0,yd.current=null,F===null||F.return===null){dn=1,Dl=P,on=null;break}e:{var xe=M,Me=F.return,Oe=F,Be=P;if(P=Pn,Oe.flags|=32768,Be!==null&&typeof Be=="object"&&typeof Be.then=="function"){var at=Be,Tt=Oe,$t=Tt.tag;if((Tt.mode&1)===0&&($t===0||$t===11||$t===15)){var Mt=Tt.alternate;Mt?(Tt.updateQueue=Mt.updateQueue,Tt.memoizedState=Mt.memoizedState,Tt.lanes=Mt.lanes):(Tt.updateQueue=null,Tt.memoizedState=null)}var jt=Pl(Me);if(jt!==null){jt.flags&=-257,Mp(jt,Me,Oe,xe,P),jt.mode&1&&Dc(xe,at,P),P=jt,Be=at;var Bt=P.updateQueue;if(Bt===null){var zt=new Set;zt.add(Be),P.updateQueue=zt}else Bt.add(Be);break e}else{if((P&1)===0){Dc(xe,at,P),Md();break e}Be=Error(g(426))}}else if(zr&&Oe.mode&1){var qr=Pl(Me);if(qr!==null){(qr.flags&65536)===0&&(qr.flags|=256),Mp(qr,Me,Oe,xe,P),Ci(va(Be,Oe));break e}}xe=Be=va(Be,Oe),dn!==4&&(dn=2),wa===null?wa=[xe]:wa.push(xe),xe=Me;do{switch(xe.tag){case 3:xe.flags|=65536,P&=-P,xe.lanes|=P;var rt=od(xe,Be,P);vp(xe,rt);break e;case 1:Oe=Be;var Ke=xe.type,st=xe.stateNode;if((xe.flags&128)===0&&(typeof Ke.getDerivedStateFromError=="function"||st!==null&&typeof st.componentDidCatch=="function"&&(ti===null||!ti.has(st)))){xe.flags|=65536,P&=-P,xe.lanes|=P;var kt=Tl(xe,Oe,P);vp(xe,kt);break e}}xe=xe.return}while(xe!==null)}zp(F)}catch(Gt){P=Gt,on===F&&F!==null&&(on=F=F.return);continue}break}while(!0)}function Yp(){var M=Ll.current;return Ll.current=ho,M===null?ho:M}function Md(){(dn===0||dn===3||dn===2)&&(dn=4),vn===null||(Di&268435455)===0&&(Al&268435455)===0||oi(vn,Pn)}function Qc(M,P){var F=Mr;Mr|=2;var q=Yp();(vn!==M||Pn!==P)&&(as=null,Oi(M,P));do try{Of();break}catch(le){Hp(M,le)}while(!0);if(ma(),Mr=F,Ll.current=q,on!==null)throw Error(g(261));return vn=null,Pn=0,dn}function Of(){for(;on!==null;)Bp(on)}function Ff(){for(;on!==null&&!Hl();)Bp(on)}function Bp(M){var P=Wp(M.alternate,M,go);M.memoizedProps=M.pendingProps,P===null?zp(M):on=P,yd.current=null}function zp(M){var P=M;do{var F=P.alternate;if(M=P.return,(P.flags&32768)===0){if(F=Dp(F,P,go),F!==null){on=F;return}}else{if(F=If(F,P),F!==null){F.flags&=32767,on=F;return}if(M!==null)M.flags|=32768,M.subtreeFlags=0,M.deletions=null;else{dn=6,on=null;return}}if(P=P.sibling,P!==null){on=P;return}on=P=M}while(P!==null);dn===0&&(dn=5)}function Fi(M,P,F){var q=kr,le=Do.transition;try{Do.transition=null,kr=1,Nf(M,P,F,q)}finally{Do.transition=le,kr=q}return null}function Nf(M,P,F,q){do Ta();while(ri!==null);if((Mr&6)!==0)throw Error(g(327));F=M.finishedWork;var le=M.finishedLanes;if(F===null)return null;if(M.finishedWork=null,M.finishedLanes=0,F===M.current)throw Error(g(177));M.callbackNode=null,M.callbackPriority=0;var xe=F.lanes|F.childLanes;if(cf(M,xe),M===vn&&(on=vn=null,Pn=0),(F.subtreeFlags&2064)===0&&(F.flags&2064)===0||Wc||(Wc=!0,qp(zl,function(){return Ta(),null})),xe=(F.flags&15990)!==0,(F.subtreeFlags&15990)!==0||xe){xe=Do.transition,Do.transition=null;var Me=kr;kr=1;var Oe=Mr;Mr|=4,yd.current=null,Lf(M,F),Gc(F,M),Lu(tl),Ql=!!Fu,tl=Fu=null,M.current=F,Fp(F),Yl(),Mr=Oe,kr=Me,Do.transition=xe}else M.current=F;if(Wc&&(Wc=!1,ri=M,qc=le),xe=M.pendingLanes,xe===0&&(ti=null),sf(F.stateNode),io(M,Jr()),P!==null)for(q=M.onRecoverableError,F=0;F<P.length;F++)le=P[F],q(le.value,{componentStack:le.stack,digest:le.digest});if(Vc)throw Vc=!1,M=bd,bd=null,M;return(qc&1)!==0&&M.tag!==0&&Ta(),xe=M.pendingLanes,(xe&1)!==0?M===Ed?jn++:(jn=0,Ed=M):jn=0,Xn(),null}function Ta(){if(ri!==null){var M=Wl(qc),P=Do.transition,F=kr;try{if(Do.transition=null,kr=16>M?16:M,ri===null)var q=!1;else{if(M=ri,ri=null,qc=0,(Mr&6)!==0)throw Error(g(331));var le=Mr;for(Mr|=4,At=M.current;At!==null;){var xe=At,Me=xe.child;if((At.flags&16)!==0){var Oe=xe.deletions;if(Oe!==null){for(var Be=0;Be<Oe.length;Be++){var at=Oe[Be];for(At=at;At!==null;){var Tt=At;switch(Tt.tag){case 0:case 11:case 15:kl(8,Tt,xe)}var $t=Tt.child;if($t!==null)$t.return=Tt,At=$t;else for(;At!==null;){Tt=At;var Mt=Tt.sibling,jt=Tt.return;if(pd(Tt),Tt===at){At=null;break}if(Mt!==null){Mt.return=jt,At=Mt;break}At=jt}}}var Bt=xe.alternate;if(Bt!==null){var zt=Bt.child;if(zt!==null){Bt.child=null;do{var qr=zt.sibling;zt.sibling=null,zt=qr}while(zt!==null)}}At=xe}}if((xe.subtreeFlags&2064)!==0&&Me!==null)Me.return=xe,At=Me;else e:for(;At!==null;){if(xe=At,(xe.flags&2048)!==0)switch(xe.tag){case 0:case 11:case 15:kl(9,xe,xe.return)}var rt=xe.sibling;if(rt!==null){rt.return=xe.return,At=rt;break e}At=xe.return}}var Ke=M.current;for(At=Ke;At!==null;){Me=At;var st=Me.child;if((Me.subtreeFlags&2064)!==0&&st!==null)st.return=Me,At=st;else e:for(Me=Ke;At!==null;){if(Oe=At,(Oe.flags&2048)!==0)try{switch(Oe.tag){case 0:case 11:case 15:Xs(9,Oe)}}catch(Gt){Vr(Oe,Oe.return,Gt)}if(Oe===Me){At=null;break e}var kt=Oe.sibling;if(kt!==null){kt.return=Oe.return,At=kt;break e}At=Oe.return}}if(Mr=le,Xn(),Qo&&typeof Qo.onPostCommitFiberRoot=="function")try{Qo.onPostCommitFiberRoot($a,M)}catch(Gt){}q=!0}return q}finally{kr=F,Do.transition=P}}return!1}function Gp(M,P,F){P=va(F,P),P=od(M,P,1),M=Ws(M,P,1),P=Hn(),M!==null&&(li(M,1,P),io(M,P))}function Vr(M,P,F){if(M.tag===3)Gp(M,M,F);else for(;P!==null;){if(P.tag===3){Gp(P,M,F);break}else if(P.tag===1){var q=P.stateNode;if(typeof P.type.getDerivedStateFromError=="function"||typeof q.componentDidCatch=="function"&&(ti===null||!ti.has(q))){M=va(F,M),M=Tl(P,M,1),P=Ws(P,M,1),M=Hn(),P!==null&&(li(P,1,M),io(P,M));break}}P=P.return}}function Up(M,P,F){var q=M.pingCache;q!==null&&q.delete(P),P=Hn(),M.pingedLanes|=M.suspendedLanes&F,vn===M&&(Pn&F)===F&&(dn===4||dn===3&&(Pn&130023424)===Pn&&500>Jr()-vd?Oi(M,0):Uc|=F),io(M,P)}function Vp(M,P){P===0&&((M.mode&1)===0?P=1:(P=zi,zi<<=1,(zi&130023424)===0&&(zi=4194304)));var F=Hn();M=Yo(M,P),M!==null&&(li(M,P,F),io(M,F))}function jf(M){var P=M.memoizedState,F=0;P!==null&&(F=P.retryLane),Vp(M,F)}function Hf(M,P){var F=0;switch(M.tag){case 13:var q=M.stateNode,le=M.memoizedState;le!==null&&(F=le.retryLane);break;case 19:q=M.stateNode;break;default:throw Error(g(314))}q!==null&&q.delete(P),Vp(M,F)}var Wp;Wp=function(M,P,F){if(M!==null)if(M.memoizedProps!==P.pendingProps||Kn.current)Tn=!0;else{if((M.lanes&F)===0&&(P.flags&128)===0)return Tn=!1,cd(M,P,F);Tn=(M.flags&131072)!==0}else Tn=!1,zr&&(P.flags&1048576)!==0&&gp(P,hc,P.index);switch(P.lanes=0,P.tag){case 2:var q=P.type;os(M,P),M=P.pendingProps;var le=Jn(P,Ln.current);Zr(P,F),le=Wu(null,P,q,M,le,F);var xe=Ri();return P.flags|=1,typeof le=="object"&&le!==null&&typeof le.render=="function"&&le.$$typeof===void 0?(P.tag=1,P.memoizedState=null,P.updateQueue=null,Qn(q)?(xe=!0,fc(P)):xe=!1,P.memoizedState=le.state!==null&&le.state!==void 0?le.state:null,Ti(P),le.updater=Ml,P.stateNode=le,le._reactInternals=P,Ii(P,q,M,F),P=Fc(null,P,q,!0,xe,F)):(P.tag=0,zr&&xe&&Hu(P),On(null,P,le,F),P=P.child),P;case 16:q=P.elementType;e:{switch(os(M,P),M=P.pendingProps,le=q._init,q=le(q._payload),P.type=q,le=P.tag=Kp(q),M=An(q,M),le){case 0:P=Oc(null,P,q,M,F);break e;case 1:P=$p(null,P,q,M,F);break e;case 11:P=Ac(null,P,q,M,F);break e;case 14:P=Pp(null,P,q,An(q.type,M),F);break e}throw Error(g(306,q,""))}return P;case 0:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),Oc(M,P,q,le,F);case 1:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),$p(M,P,q,le,F);case 3:e:{if(Rp(P),M===null)throw Error(g(387));q=P.pendingProps,xe=P.memoizedState,le=xe.element,zu(M,P),yc(P,q,null,F);var Me=P.memoizedState;if(q=Me.element,xe.isDehydrated)if(xe={element:q,isDehydrated:!1,cache:Me.cache,pendingSuspenseBoundaries:Me.pendingSuspenseBoundaries,transitions:Me.transitions},P.updateQueue.baseState=xe,P.memoizedState=xe,P.flags&256){le=va(Error(g(423)),P),P=kp(M,P,q,F,le);break e}else if(q!==le){le=va(Error(g(424)),P),P=kp(M,P,q,F,le);break e}else for(Dn=Hs(P.stateNode.containerInfo.firstChild),Mn=P,zr=!0,$o=null,F=xn(P,null,q,F),P.child=F;F;)F.flags=F.flags&-3|4096,F=F.sibling;else{if(Si(),q===le){P=Ss(M,P,F);break e}On(M,P,q,F)}P=P.child}return P;case 5:return bc(P),M===null&&gs(P),q=P.type,le=P.pendingProps,xe=M!==null?M.memoizedProps:null,Me=le.children,xi(q,le)?Me=null:xe!==null&&xi(q,xe)&&(P.flags|=32),ld(M,P),On(M,P,Me,F),P.child;case 6:return M===null&&gs(P),null;case 13:return Nc(M,P,F);case 4:return xl(P,P.stateNode.containerInfo),q=P.pendingProps,M===null?P.child=wi(P,null,q,F):On(M,P,q,F),P.child;case 11:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),Ac(M,P,q,le,F);case 7:return On(M,P,P.pendingProps,F),P.child;case 8:return On(M,P,P.pendingProps.children,F),P.child;case 12:return On(M,P,P.pendingProps.children,F),P.child;case 10:e:{if(q=P.type._context,le=P.pendingProps,xe=P.memoizedProps,Me=le.value,Hr(pa,q._currentValue),q._currentValue=Me,xe!==null)if(gt(xe.value,Me)){if(xe.children===le.children&&!Kn.current){P=Ss(M,P,F);break e}}else for(xe=P.child,xe!==null&&(xe.return=P);xe!==null;){var Oe=xe.dependencies;if(Oe!==null){Me=xe.child;for(var Be=Oe.firstContext;Be!==null;){if(Be.context===q){if(xe.tag===1){Be=_s(-1,F&-F),Be.tag=2;var at=xe.updateQueue;if(at!==null){at=at.shared;var Tt=at.pending;Tt===null?Be.next=Be:(Be.next=Tt.next,Tt.next=Be),at.pending=Be}}xe.lanes|=F,Be=xe.alternate,Be!==null&&(Be.lanes|=F),_c(xe.return,F,P),Oe.lanes|=F;break}Be=Be.next}}else if(xe.tag===10)Me=xe.type===P.type?null:xe.child;else if(xe.tag===18){if(Me=xe.return,Me===null)throw Error(g(341));Me.lanes|=F,Oe=Me.alternate,Oe!==null&&(Oe.lanes|=F),_c(Me,F,P),Me=xe.sibling}else Me=xe.child;if(Me!==null)Me.return=xe;else for(Me=xe;Me!==null;){if(Me===P){Me=null;break}if(xe=Me.sibling,xe!==null){xe.return=Me.return,Me=xe;break}Me=Me.return}xe=Me}On(M,P,le.children,F),P=P.child}return P;case 9:return le=P.type,q=P.pendingProps.children,Zr(P,F),le=to(le),q=q(le),P.flags|=1,On(M,P,q,F),P.child;case 14:return q=P.type,le=An(q,P.pendingProps),le=An(q.type,le),Pp(M,P,q,le,F);case 15:return ad(M,P,P.type,P.pendingProps,F);case 17:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:An(q,le),os(M,P),P.tag=1,Qn(q)?(M=!0,fc(P)):M=!1,Zr(P,F),nd(P,q,le),Ii(P,q,le,F),Fc(null,P,q,!0,M,F);case 19:return jc(M,P,F);case 22:return ns(M,P,F)}throw Error(g(156,P.tag))};function qp(M,P){return Er(M,P)}function Yf(M,P,F,q){this.tag=M,this.key=F,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=P,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=q,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ao(M,P,F,q){return new Yf(M,P,F,q)}function Td(M){return M=M.prototype,!(!M||!M.isReactComponent)}function Kp(M){if(typeof M=="function")return Td(M)?1:0;if(M!=null){if(M=M.$$typeof,M===ie)return 11;if(M===X)return 14}return 2}function ii(M,P){var F=M.alternate;return F===null?(F=Ao(M.tag,P,M.key,M.mode),F.elementType=M.elementType,F.type=M.type,F.stateNode=M.stateNode,F.alternate=M,M.alternate=F):(F.pendingProps=P,F.type=M.type,F.flags=0,F.subtreeFlags=0,F.deletions=null),F.flags=M.flags&14680064,F.childLanes=M.childLanes,F.lanes=M.lanes,F.child=M.child,F.memoizedProps=M.memoizedProps,F.memoizedState=M.memoizedState,F.updateQueue=M.updateQueue,P=M.dependencies,F.dependencies=P===null?null:{lanes:P.lanes,firstContext:P.firstContext},F.sibling=M.sibling,F.index=M.index,F.ref=M.ref,F}function Ni(M,P,F,q,le,xe){var Me=2;if(q=M,typeof M=="function")Td(M)&&(Me=1);else if(typeof M=="string")Me=5;else e:switch(M){case V:return ji(F.children,le,xe,P);case K:Me=8,le|=8;break;case Q:return M=Ao(12,F,P,le|2),M.elementType=Q,M.lanes=xe,M;case oe:return M=Ao(13,F,P,le),M.elementType=oe,M.lanes=xe,M;case ee:return M=Ao(19,F,P,le),M.elementType=ee,M.lanes=xe,M;case pe:return Xc(F,le,xe,P);default:if(typeof M=="object"&&M!==null)switch(M.$$typeof){case Z:Me=10;break e;case re:Me=9;break e;case ie:Me=11;break e;case X:Me=14;break e;case ce:Me=16,q=null;break e}throw Error(g(130,M==null?M:typeof M,""))}return P=Ao(Me,F,P,le),P.elementType=M,P.type=q,P.lanes=xe,P}function ji(M,P,F,q){return M=Ao(7,M,q,P),M.lanes=F,M}function Xc(M,P,F,q){return M=Ao(22,M,q,P),M.elementType=pe,M.lanes=F,M.stateNode={isHidden:!1},M}function Pd(M,P,F){return M=Ao(6,M,null,P),M.lanes=F,M}function $d(M,P,F){return P=Ao(4,M.children!==null?M.children:[],M.key,P),P.lanes=F,P.stateNode={containerInfo:M.containerInfo,pendingChildren:null,implementation:M.implementation},P}function Bf(M,P,F,q,le){this.tag=P,this.containerInfo=M,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ul(0),this.expirationTimes=Ul(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ul(0),this.identifierPrefix=q,this.onRecoverableError=le,this.mutableSourceEagerHydrationData=null}function Rd(M,P,F,q,le,xe,Me,Oe,Be){return M=new Bf(M,P,F,Oe,Be),P===1?(P=1,xe===!0&&(P|=8)):P=0,xe=Ao(3,null,null,P),M.current=xe,xe.stateNode=M,xe.memoizedState={element:q,isDehydrated:F,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ti(xe),M}function zf(M,P,F){var q=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W,key:q==null?null:""+q,children:M,containerInfo:P,implementation:F}}function Jp(M){if(!M)return zs;M=M._reactInternals;e:{if(xt(M)!==M||M.tag!==1)throw Error(g(170));var P=M;do{switch(P.tag){case 3:P=P.stateNode.context;break e;case 1:if(Qn(P.type)){P=P.stateNode.__reactInternalMemoizedMergedChildContext;break e}}P=P.return}while(P!==null);throw Error(g(171))}if(M.tag===1){var F=M.type;if(Qn(F))return mp(M,F,P)}return P}function Qp(M,P,F,q,le,xe,Me,Oe,Be){return M=Rd(F,q,!0,M,le,xe,Me,Oe,Be),M.context=Jp(null),F=M.current,q=Hn(),le=ni(F),xe=_s(q,le),xe.callback=P!=null?P:null,Ws(F,xe,le),M.current.lanes=le,li(M,le,q),io(M,q),M}function Zc(M,P,F,q){var le=P.current,xe=Hn(),Me=ni(le);return F=Jp(F),P.context===null?P.context=F:P.pendingContext=F,P=_s(xe,Me),P.payload={element:M},q=q===void 0?null:q,q!==null&&(P.callback=q),M=Ws(le,P,Me),M!==null&&(Uo(M,le,Me,xe),qs(M,le,Me)),Me}function tu(M){if(M=M.current,!M.child)return null;switch(M.child.tag){case 5:return M.child.stateNode;default:return M.child.stateNode}}function Xp(M,P){if(M=M.memoizedState,M!==null&&M.dehydrated!==null){var F=M.retryLane;M.retryLane=F!==0&&F<P?F:P}}function kd(M,P){Xp(M,P),(M=M.alternate)&&Xp(M,P)}function Gf(){return null}var Zp=typeof reportError=="function"?reportError:function(M){console.error(M)};function Id(M){this._internalRoot=M}Fl.prototype.render=Id.prototype.render=function(M){var P=this._internalRoot;if(P===null)throw Error(g(409));Zc(M,P,null,null)},Fl.prototype.unmount=Id.prototype.unmount=function(){var M=this._internalRoot;if(M!==null){this._internalRoot=null;var P=M.containerInfo;Ai(function(){Zc(null,M,null,null)}),P[wo]=null}};function Fl(M){this._internalRoot=M}Fl.prototype.unstable_scheduleHydration=function(M){if(M){var P=jd();M={blockedOn:null,target:M,priority:P};for(var F=0;F<$s.length&&P!==0&&P<$s[F].priority;F++);$s.splice(F,0,M),F===0&&Yd(M)}};function nu(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11)}function ou(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11&&(M.nodeType!==8||M.nodeValue!==" react-mount-point-unstable "))}function ef(){}function Uf(M,P,F,q,le){if(le){if(typeof q=="function"){var xe=q;q=function(){var at=tu(Me);xe.call(at)}}var Me=Qp(P,q,M,0,null,!1,!1,"",ef);return M._reactRootContainer=Me,M[wo]=Me.current,Ns(M.nodeType===8?M.parentNode:M),Ai(),Me}for(;le=M.lastChild;)M.removeChild(le);if(typeof q=="function"){var Oe=q;q=function(){var at=tu(Be);Oe.call(at)}}var Be=Rd(M,0,!1,null,null,!1,!1,"",ef);return M._reactRootContainer=Be,M[wo]=Be.current,Ns(M.nodeType===8?M.parentNode:M),Ai(function(){Zc(P,Be,F,q)}),Be}function su(M,P,F,q,le){var xe=F._reactRootContainer;if(xe){var Me=xe;if(typeof le=="function"){var Oe=le;le=function(){var Be=tu(Me);Oe.call(Be)}}Zc(P,Me,M,le)}else Me=Uf(F,P,M,le,q);return tu(Me)}ci=function(M){switch(M.tag){case 3:var P=M.stateNode;if(P.current.memoizedState.isDehydrated){var F=Ia(P.pendingLanes);F!==0&&(Vl(P,F|1),io(P,Jr()),(Mr&6)===0&&(Ma=Jr()+500,Xn()))}break;case 13:Ai(function(){var q=Yo(M,1);if(q!==null){var le=Hn();Uo(q,M,1,le)}}),kd(M,1)}},ql=function(M){if(M.tag===13){var P=Yo(M,134217728);if(P!==null){var F=Hn();Uo(P,M,134217728,F)}kd(M,134217728)}},_u=function(M){if(M.tag===13){var P=ni(M),F=Yo(M,P);if(F!==null){var q=Hn();Uo(F,M,P,q)}kd(M,P)}},jd=function(){return kr},yu=function(M,P){var F=kr;try{return kr=M,P()}finally{kr=F}},vr=function(M,P,F){switch(P){case"input":if(ot(M,F),P=F.name,F.type==="radio"&&P!=null){for(F=M;F.parentNode;)F=F.parentNode;for(F=F.querySelectorAll("input[name="+JSON.stringify(""+P)+'][type="radio"]'),P=0;P<F.length;P++){var q=F[P];if(q!==M&&q.form===M.form){var le=_r(q);if(!le)throw Error(g(90));ke(q),ot(q,le)}}}break;case"textarea":ut(M,F);break;case"select":P=F.value,P!=null&&Ve(M,!!F.multiple,P,!1)}},En=Cd,Kr=Ai;var iu={usingClientEntryPoint:!1,Events:[Ys,wn,_r,xr,Wr,Cd]},Nl={findFiberByHostInstance:Mo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Vf={bundleType:Nl.bundleType,version:Nl.version,rendererPackageName:Nl.rendererPackageName,rendererConfig:Nl.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:j.ReactCurrentDispatcher,findHostInstanceByFiber:function(M){return M=pr(M),M===null?null:M.stateNode},findFiberByHostInstance:Nl.findFiberByHostInstance||Gf,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__!="undefined"){var au=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!au.isDisabled&&au.supportsFiber)try{$a=au.inject(Vf),Qo=au}catch(M){}}return reactDom_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=iu,reactDom_production_min.createPortal=function(M,P){var F=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!nu(P))throw Error(g(200));return zf(M,P,null,F)},reactDom_production_min.createRoot=function(M,P){if(!nu(M))throw Error(g(299));var F=!1,q="",le=Zp;return P!=null&&(P.unstable_strictMode===!0&&(F=!0),P.identifierPrefix!==void 0&&(q=P.identifierPrefix),P.onRecoverableError!==void 0&&(le=P.onRecoverableError)),P=Rd(M,1,!1,null,null,F,!1,q,le),M[wo]=P.current,Ns(M.nodeType===8?M.parentNode:M),new Id(P)},reactDom_production_min.findDOMNode=function(M){if(M==null)return null;if(M.nodeType===1)return M;var P=M._reactInternals;if(P===void 0)throw typeof M.render=="function"?Error(g(188)):(M=Object.keys(M).join(","),Error(g(268,M)));return M=pr(P),M=M===null?null:M.stateNode,M},reactDom_production_min.flushSync=function(M){return Ai(M)},reactDom_production_min.hydrate=function(M,P,F){if(!ou(P))throw Error(g(200));return su(null,M,P,!0,F)},reactDom_production_min.hydrateRoot=function(M,P,F){if(!nu(M))throw Error(g(405));var q=F!=null&&F.hydratedSources||null,le=!1,xe="",Me=Zp;if(F!=null&&(F.unstable_strictMode===!0&&(le=!0),F.identifierPrefix!==void 0&&(xe=F.identifierPrefix),F.onRecoverableError!==void 0&&(Me=F.onRecoverableError)),P=Qp(P,null,M,1,F!=null?F:null,le,!1,xe,Me),M[wo]=P.current,Ns(M),q)for(M=0;M<q.length;M++)F=q[M],le=F._getVersion,le=le(F._source),P.mutableSourceEagerHydrationData==null?P.mutableSourceEagerHydrationData=[F,le]:P.mutableSourceEagerHydrationData.push(F,le);return new Fl(P)},reactDom_production_min.render=function(M,P,F){if(!ou(P))throw Error(g(200));return su(null,M,P,!1,F)},reactDom_production_min.unmountComponentAtNode=function(M){if(!ou(M))throw Error(g(40));return M._reactRootContainer?(Ai(function(){su(null,null,M,!1,function(){M._reactRootContainer=null,M[wo]=null})}),!0):!1},reactDom_production_min.unstable_batchedUpdates=Cd,reactDom_production_min.unstable_renderSubtreeIntoContainer=function(M,P,F,q){if(!ou(F))throw Error(g(200));if(M==null||M._reactInternals===void 0)throw Error(g(38));return su(M,P,F,!1,q)},reactDom_production_min.version="18.3.1-next-f1338f8080-20240426",reactDom_production_min}var hasRequiredReactDom;function requireReactDom(){if(hasRequiredReactDom)return reactDom.exports;hasRequiredReactDom=1;function d(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__=="undefined"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(d)}catch(m){console.error(m)}}return d(),reactDom.exports=requireReactDom_production_min(),reactDom.exports}var hasRequiredClient;function requireClient(){if(hasRequiredClient)return client;hasRequiredClient=1;var d=requireReactDom();return client.createRoot=d.createRoot,client.hydrateRoot=d.hydrateRoot,client}var clientExports=requireClient();const scriptRel="modulepreload",assetsURL=function(d){return"/"+d},seen={},__vitePreload=function(m,g,x){let b=Promise.resolve();if(g&&g.length>0){let v=function(T){return Promise.all(T.map($=>Promise.resolve($).then(k=>({status:"fulfilled",value:k}),k=>({status:"rejected",reason:k}))))};document.getElementsByTagName("link");const S=document.querySelector("meta[property=csp-nonce]"),C=(S==null?void 0:S.nonce)||(S==null?void 0:S.getAttribute("nonce"));b=v(g.map(T=>{if(T=assetsURL(T),T in seen)return;seen[T]=!0;const $=T.endsWith(".css"),k=$?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${T}"]${k}`))return;const L=document.createElement("link");if(L.rel=$?"stylesheet":scriptRel,$||(L.as="script"),L.crossOrigin="",L.href=T,C&&L.setAttribute("nonce",C),document.head.appendChild(L),$)return new Promise((D,A)=>{L.addEventListener("load",D),L.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${T}`)))})}))}function E(v){const S=new Event("vite:preloadError",{cancelable:!0});if(S.payload=v,window.dispatchEvent(S),!S.defaultPrevented)throw v}return b.then(v=>{for(const S of v||[])S.status==="rejected"&&E(S.reason);return m().catch(E)})};window.crypto||(window.crypto={});crypto.subtle||(crypto.subtle=console.debug("using polyfill for crypto.subtle")||{});var Dm;(Dm=crypto.subtle).digest||(Dm.digest=(d,m)=>yt(void 0,null,function*(){if(d!=="SHA-512")return alert(d+" required but not supported");const x=(yield __vitePreload(()=>import("./sha512-BkTsTkFA.js").then(b=>b.s),[])).default.arrayBuffer;return x(m)}));var reactDomExports=requireReactDom();const ReactDOM=getDefaultExportFromCjs(reactDomExports);/**
|
|
33
33
|
* @remix-run/router v1.23.2
|
|
34
34
|
*
|
|
35
35
|
* Copyright (c) Remix Software Inc.
|
|
@@ -761,7 +761,7 @@ ${g.comment}`:g.comment}this.doc.range[2]=g.offset;break}default:this.errors.pus
|
|
|
761
761
|
Go to destination folder to paste.`),"info")}const{t:t$7,useI18N:useI18N$6}=i18n;function openFileMenu(d,m,g){return yt(this,null,function*(){var z,Y,B;const{uri:x,isFolder:b,s:E}=d,v=!((z=d.p)!=null&&z.includes("r")),S=!((Y=d.p)!=null&&Y.match(/L/i)),C=d.cantOpen===DirEntry.FORBIDDEN,$=[!(C||b&&!(v&&d.canArchive()&&S))&&{id:"download",label:t$7`Download`,href:x+(b?"?get=zip":"?dl"),icon:"download",target:"_blank"},((B=state.props)==null?void 0:B.can_comment)&&{id:"comment",label:t$7`Comment`,icon:"comment",onClick:()=>editComment(d)},...g.map(j=>{if(j==="open"){if(C)return;const U={id:"open",icon:"play",label:t$7("file_open","Open"),href:x,target:b||d.web?void 0:"_blank",rel:b||d.web?void 0:"noopener noreferrer",onClick:makeOnClickOpen(d)};return!b||U.onClick?U:reactExports.createElement(LinkClosingDialog,{to:x,reloadDocument:d.web},hIcon(U.icon),U.label)}return j==="delete"?d.canDelete()&&{id:"delete",label:t$7`Delete`,icon:"delete",onClick:()=>deleteFiles$1([d.uri])}:j==="show"?!d.cantOpen&&getShowComponent(d)&&{id:"show",label:t$7`Show`,icon:"image",onClick:()=>fileShow(d)}:j}),d.canDelete()&&{id:"rename",label:t$7`Rename`,icon:"edit",onClick:()=>rename(d)},d.canDelete()&&{id:"cut",label:t$7`Cut`,icon:"cut",onClick:()=>I(cut([d]))},b&&!d.web&&!d.cantOpen&&{id:"list",label:t$7`Get list`,href:x+"?get=list&folders=*",icon:"list",target:"_blank"}].filter(Boolean),k=d.n.slice(0,-1-d.name.length),L=[{id:"name",label:t$7`Name`,value:d.name},typeof E=="number"&&{id:"size",label:t$7`Size`,value:reactExports.createElement(reactExports.Fragment,{},formatBytes(E),reactExports.createElement("small",{className:HIDE_IN_TESTS},prefix(" (",E>getHFS().kb&&E.toLocaleString(),")")))},d.m&&{id:"timestamp",label:t$7`Timestamp`,value:d.m.toLocaleString()},d.c&&{id:"creation",label:t$7`Creation`,value:d.c.toLocaleString()},k&&{id:"folder",label:t$7`Folder`,value:reactExports.createElement(Link$2,{to:(k.startsWith("/")?"":location.pathname)+pathEncode(k)+"/",onClick:()=>closeDialog(null,!0)},k.replaceAll("/"," / "))},b&&!d.cantOpen&&{id:"folderSize",label:t$7`Size`,value:reactExports.createElement(N)}].filter(Boolean),D=yield Promise.all(hfsEvent("fileMenu",{entry:d,menu:$,props:L}));$.push(...D.flat().filter(Boolean)),_.remove($,(j,U)=>_.find($,W=>j.id?j.id===W.id:!W.id&&j.label===W.label,U+1));const A=getEntryIcon(d),{close:I}=newDialog({title:b?t$7`Folder menu`:t$7`File menu`,className:"file-dialog",icon:()=>A,position:Math.min(innerWidth,innerHeight)<800?void 0:[m.pageX,m.pageY-scrollY],restoreFocus:m.screenY||m.screenX?!1:void 0,Content(){var K;const{t:j}=useI18N$6(),{data:U}=useApi("get_file_details",{uris:[d.uri]}),W=(K=U==null?void 0:U.details)==null?void 0:K[0],V=[...L,with_(renderUploaderFromDetails(W),Q=>Q&&{id:"uploader",label:j`Uploader`,value:Q})];return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement("dl",{className:"file-dialog-properties"},dontBotherWithKeys(V.map(Q=>reactExports.isValidElement(Q)?Q:_.isPlainObject(Q)?reactExports.createElement("div",{id:`menu-prop-${Q.id}`},reactExports.createElement("dt",{},Q.label),reactExports.createElement("dd",{},Q.value)):null)),d.cantOpen&&reactExports.createElement("div",{},hIcon("password",{style:{marginRight:".5em",marginTop:".5em"}}),j(MISSING_PERM))),reactExports.createElement("div",{className:"file-menu"},dontBotherWithKeys($.map((Q,Z)=>reactExports.isValidElement(Q)?Q:(Q==null?void 0:Q.label)&&reactExports.createElement("a",Rt(Fe({key:Z,href:"#"},_.omit(Q,["label","icon","toggled"])),{id:Q.id&&`menu-entry-${Q.id}`,className:Q.toggled?"toggled":void 0,onClick(ie){return yt(this,null,function*(){var oe;Q.href||ie.preventDefault();try{(yield(oe=Q.onClick)==null?void 0:oe.call(Q,ie))!==!1&&I()}catch(ee){alertDialog(ee)}})}}),hIcon(Q.icon||"file"),reactExports.createElement("label",{style:{display:"flex",flexDirection:"column"}},reactExports.createElement("div",{},Q.label),reactExports.createElement("small",{},Q.subLabel)))))))}});function N(){const[j,U]=reactExports.useState(!1),[W]=reactExports.useState(()=>randomId()),{data:V,error:K,loading:Q}=useApi(j&&"get_folder_size",{uri:d.uri,id:W},{timeout:!1}),Z=useApi(Q&&"get_folder_size_partial",{id:W});return useInterval(Z.reload,1e3),re(V||K)||(Q?reactExports.createElement("span",{},re(Z.data)," ",reactExports.createElement(Btn,{asText:!0,label:t$7`Cancel`,icon:reactExports.createElement(Spinner),onClick(){U(!1)}})):reactExports.createElement(Btn,{asText:!0,label:t$7`Calculate`,onClick(){U(!0)}}));function re(ie){return ie&&(ie.code?err2msg(ie):reactExports.createElement("span",{},reactExports.createElement(Bytes,_.pick(ie,"bytes"))," / ",t$7("n_files",{n:ie.files.toLocaleString()},"{n,plural,one{# file} other{# files}}")))}}})}function rename(d){return yt(this,null,function*(){var T;const m=yield promptDialog(t$7`Name`,{value:d.name,title:t$7`Rename`,onField:$=>$.setSelectionRange(0,d.name.lastIndexOf("."))});if(!m)return;const{n:g,uri:x}=d;yield apiCall("rename",{uri:x,dest:m},{modal:working});const b=t$7`Operation successful`;if(x===location.pathname)return(T=alertDialog(b))==null?void 0:T.then(()=>getHFS().navigate(x+"../"+pathEncode(m)+"/"));const E=g.replace(/(.*?)[^/]+$/,($,k)=>k+m),v=new DirEntry(E,Fe({key:g},d)),S=_.findIndex(state.list,{n:g});state.list[S]=v;const C=_.findIndex(state.filteredList,{n:g});C>=0&&(state.filteredList[C]=v),toast(b,"success")})}function editComment(d){return yt(this,null,function*(){const m=yield inputComment(d.name,d.comment);m!==void 0&&(yield apiCall("comment",{uri:d.uri,comment:m},{modal:working}),decodeURI(d.uri)===decodeURI(location.pathname)?_.set(state,"props.comment",m):updateEntry(d,g=>g.comment=m),operationSuccessful())})}function updateEntry(d,m){m(_.find(state.list,{n:d.n}))}function LinkClosingDialog(d){return reactExports.createElement(Link$2,d.reloadDocument?d:Rt(Fe({},d),{to:"",onClick(g){return yt(this,null,function*(){var x;for(g.preventDefault();anyDialogOpen();)yield(x=closeDialog())==null?void 0:x.closed;getHFS().navigate(d.to)})}}))}function makeOnClickOpen(d){return d.cantOpen?m=>yt(this,null,function*(){if(m.preventDefault(),d.cantOpen===DirEntry.FORBIDDEN)return alertDialog(t$7`Forbidden`,"warning");if(yield loginDialog(!0,!1)){if(d.isFolder&&!d.web)return setTimeout(()=>getHFS().navigate(d.uri));location.href=d.uri}}):void 0}function renderUploaderFromDetails(d){if(!d)return;const{upload:m}=d;return m&&`${m.username||""}${prefix("@",m.ip)}`}const{t:t$6}=i18n,uploadState=proxy({uploadDialogIsOpen:!1,eta:0,speed:0,partial:0,progress:0,paused:!1,qs:[],adding:[],skipped:[],errors:[],doneByte:0,done:[]});window.onbeforeunload=d=>{if(uploadState.qs.length)return d.preventDefault(),d.returnValue=t$6("Uploading")};let stuckSince=1/0,bytesSentTimestamp=Date.now(),bytesSent=0;const recentSpeedSamples=[];setInterval(()=>{const d=Date.now(),m=(d-bytesSentTimestamp)/1e3,g=bytesSent/m;currentReq&&d-stuckSince>=1e4&&(currentReq.abort(),console.debug("upload stuck, aborting")),bytesSent=0,bytesSentTimestamp=d;const b=_.sumBy(uploadState.qs,v=>_.sumBy(v.entries,S=>S.file.size))-uploadState.partial,E=uploadState.uploading;E&&recentSpeedSamples.push(g),(!E||recentSpeedSamples.length>5)&&recentSpeedSamples.shift(),uploadState.paused&&(recentSpeedSamples.length=0),uploadState.speed=_.mean(recentSpeedSamples),uploadState.eta=b/uploadState.speed},2e3);let currentReq;const id$2=randomId();let userAborted=!1,closeLastDialog,reloadOnClose=!1;function startUpload(d,m,g=0){return yt(this,null,function*(){console.debug("start upload",d.path,g),uploadState.uploading=d,uploadState.progress=0,userAborted=!1;let x=!0;const b=getHFS().splitUploads,E=d.file.size,v=m+pathEncode(d.path);let S=!1;do{let $=currentReq=new XMLHttpRequest;const k=pendingPromise();stuckSince=Date.now(),$.onloadend=()=>yt(this,null,function*(){try{if(currentReq=void 0,uploadState.paused)return S=!0;if(x=!0,!userAborted&&!$.status){$=new XMLHttpRequest,$.open("PUT",v+A+"&simulating="+I.size,!1);try{$.send()}catch(z){console.log(z)}yield wait(500)}const{status:N}=$;if(N===HTTP_RANGE_NOT_SATISFIABLE)return S=!0;if(N===HTTP_PRECONDITION_FAILED){const z=Number($.getResponseHeader("x-size"));if($.getResponseHeader(MTIME_CHECK)){const Y=fetch(v+"?get="+UPLOAD_TEMP_HASH).then(j=>j.text());if((yield calcHash(d.file,z))!==(yield Y))return x=!1,console.debug("upload hash mismatch");console.debug("upload hash is matching")}return g=z,console.debug("resuming upload",z.toLocaleString())}if(userAborted||N===HTTP_CONFLICT){if($.responseText==="retry")return yield wait(2e3);d.error=N?t$6("upload_conflict","already exists"):t$6`Interrupted`,uploadState.skipped.push(d)}else if(N>=400)C(N);else if(N){if(b&&(g+=b,g<E))return;uploadState.done.push(Rt(Fe({},d),{response:tryJson($.responseText)})),uploadState.doneByte+=d.file.size,reloadOnClose=!0}else return yield wait(2e3);S=!0,k.then(T)}finally{k.resolve()}});let L=0;$.upload.onprogress=N=>{uploadState.partial=N.loaded+g,uploadState.progress=uploadState.partial/E,bytesSent+=N.loaded-L,N.loaded>L&&(stuckSince=Date.now()),L=N.loaded};const D=b&&g+b<E,A=buildUrlQueryString({id:id$2,mtime:d.file.lastModified,resume:g+(x?"!":""),partial:D?E-g:void 0,comment:d.comment||void 0,existing:with_(state.uploadOnExisting,N=>N!=="rename"?N:void 0)});$.open("PUT",v+A,!0);const I=d.file.slice(g,b?g+b:void 0);$.send(I),yield k}while(!S);function C($){var A;const L={[HTTP_PAYLOAD_TOO_LARGE]:t$6`file too large`+(getHFS().proxyDetected?`
|
|
762
762
|
– `+t$6("proxy_413","Check for this limit on the proxy server"):""),[HTTP_CONFLICT]:t$6("upload_conflict","already exists"),[HTTP_INSUFFICIENT_STORAGE]:t$6`insufficient storage`}[$]||HTTP_MESSAGES[$]||$;if(d.error=L,uploadState.errors.push(d)>1)return;const D=t$6("failed_upload",{name:d.path},"Couldn't upload {name}")+prefix(": ",L);closeLastDialog==null||closeLastDialog(),closeLastDialog=(A=alertDialog(D,"error"))==null?void 0:A.close}function T(){uploadState.uploading=void 0,uploadState.partial=0;const{qs:$}=uploadState;if(!$.length||($[0].entries.shift(),$[0].entries.length||$.shift(),$.length)||(setTimeout(reloadList,500),reloadOnClose=!1,uploadState.uploadDialogIsOpen))return;const k=snapshot(uploadState);resetCounters();const L=reactExports.createElement("div",{},t$6(["upload_concluded","Upload terminated"],"Upload concluded:"),reactExports.createElement(UploadStatus,{snapshot:k,display:"flex",flexDirection:"column"}));k.errors.length||k.skipped.length?alertDialog(L,"warning"):toast(L,"success")}})}subscribe(uploadState,()=>{const[d]=uploadState.qs;d!=null&&d.entries.length&&!uploadState.uploading&&!uploadState.paused&&startUpload(d.entries[0],d.to)});function resetCounters(){Object.assign(uploadState,{errors:[],done:[],doneByte:0,skipped:[]})}function calcHash(d,m=1/0){return yt(this,null,function*(){const g=yield C(),x=Date.now(),b=d.stream().getReader();let E=m;const v=_.debounce(()=>uploadState.hashing=(m-E)/m,100,{maxWait:500});try{for(;E>0;){const T=yield b.read();if(T.done)break;const $=T.value.slice(0,E);g.update($.buffer),E-=$.length,v(),yield wait(1)}}finally{v.flush(),uploadState.hashing=void 0}const S=g.digest().toString(16);return console.debug("hash calculated in",Date.now()-x,"ms",S),S;function C(){return yt(this,null,function*(){const T=(yield __vitePreload(()=>yt(this,null,function*(){const{h32:k}=yield import("./index-DtaRq1wi.js").then(L=>L.i);return{h32:k}}),[])).h32(),$=T.update;return T.update=k=>$.call(T,k),T})}})}const{t:t$5}=i18n;getHFS().dontOverwriteUploading;function UploadStatus(g){var x=g,{snapshot:d}=x,m=qt(x,["snapshot"]);const b=useSnapshot(uploadState),{done:E,doneByte:v,errors:S,skipped:C}=d||b,T=E.length>0&&t$5("upload_finished",{n:E.length,size:formatBytes(v)},"{n} finished ({size})"),$=C.length>0&&t$5("upload_skipped",{n:C.length},"{n} skipped"),k=S.length>0&&t$5("upload_errors",{n:S.length},"{n} failed"),L=[T,$,k].filter(Boolean).join(" – ");if(!L)return null;const D=reactExports.createElement("span",{className:"horiz-sep"}," – ");return reactExports.createElement("div",{style:Fe({},m)},L,D,reactExports.createElement(Btn,{label:t$5`Show details`,asText:!0,onClick:A}),D,reactExports.createElement(Btn,{label:t$5("copy_links","Copy links"),asText:!0,successFeedback:!0,onClick(){return yt(this,null,function*(){yield copyTextToClipboard(E.map(N=>location.origin+getPrefixUrl()+N.response.uri).join(`
|
|
763
763
|
`)),operationSuccessful()})}}));function A(){uploadState.uploadDialogIsOpen||closeDialog(),alertDialog(reactExports.createElement("div",{},[[T,E],[$,C],[k,S]].map(([N,z],Y)=>N&&reactExports.createElement("div",{key:Y},N,reactExports.createElement("ul",{},z.map((B,j)=>reactExports.createElement("li",{key:j},B.path,prefix(" (",B.error,")"))))))))}}function inputComment(d,m){return promptDialog(t$5("enter_comment",{name:d},"Comment for {name}"),{value:m,type:"textarea"})}const{t:t$4,useI18N:useI18N$5}=i18n;function deleteFiles$1(d){return yt(this,null,function*(){const m=d.length;if(!(yield confirmDialog(t$4("delete_confirm",{n:m},"Delete {n,plural, one{# item} other{# items}}?"))))return!1;const g=working(),x=onlyTruthy(yield Promise.all(d.map(v=>apiCall("delete",{},{restUri:v}).then(()=>null,S=>(S==null?void 0:S.code)!==HTTP_NOT_FOUND&&{uri:v,err:S}))));g(),reloadList();const b=x.length,E=t$4("delete_completed",{n:m-b},"Deletion: {n} completed");if(m===1&&!b)return toast(E,"success");alertDialog(reactExports.createElement(reactExports.Fragment,{},E,b>0&&t$4("delete_failed",{n:b},", {n} failed"),reactExports.createElement("div",{style:{textAlign:"left",marginTop:"1em"}},...x.map(v=>reactExports.createElement(ErrorMsg,{err:t$4(err2msg(v.err))+": "+v.uri})))))})}const{useI18N:useI18N$4}=i18n,{useI18N:useI18N$3}=i18n,{useI18N:useI18N$2}=i18n,{t:t$3,useI18N:useI18N$1}=i18n,MISSING_PERM="Missing permission";reactExports.memo(({nPages:d,current:m,pageSize:g,changePage:x,atBottom:b})=>{reactExports.useEffect(()=>(document.body.style.overflowY="scroll",()=>{document.body.style.overflowY=""}),[]);const E=reactExports.useRef();reactExports.useEffect(()=>scrollIntoView(E.current,"nearest"),[m]);const v=d>20,S=_.floor(m,-1),C=S+10;return reactExports.createElement("div",{id:"paging"},reactExports.createElement("button",{title:t$3("go_first","Go to first item"),className:m?void 0:"toggled",onClick(){x(0)}},hIcon("to_start")),reactExports.createElement("div",{id:"paging-middle"},_.range(1,d).map(T=>(!v||!(T%10)||T>=S&&T<C)&&reactExports.createElement("button",Rt(Fe({key:T},T===m&&{className:"toggled",ref:E}),{onClick:()=>x(T)}),v&&!(T%10)?T/10+"K":T*g))),reactExports.createElement("button",{title:t$3("go_last","Go to last item"),className:b?"toggled":void 0,onClick(){x(d-1,!0)}},hIcon("to_end")))});function scrollIntoView(d,m){if(d)try{d.scrollIntoView({block:m})}catch(g){d.scrollIntoView(m==="center")}}function useMidnight(){const[d,m]=reactExports.useState(g);return reactExports.useEffect(()=>{setTimeout(()=>m(g()),10*6e4)},[]),d;function g(){const x=new Date;x.setHours(x.getHours()-6);const b=new Date;return b.setHours(0,0,0,0),x<b?x:b}}function getEntryIcon(d){return reactExports.createElement(CustomCode,{name:"entryIcon",entry:d},d.getDefaultIcon())}const EntryDetails=reactExports.memo(({entry:d,midnight:m})=>{const{sort_by:g}=useSnapState(),x=g==="creation"?d.c:d.m,b=x&&x>m,E=useWindowSize().width<800,{t:v}=useI18N$1(),S="2-digit";return reactExports.createElement("div",{className:"entry-details"},reactExports.createElement(CustomCode,{name:"additionalEntryDetails",entry:d}),d.cantOpen&&hIcon(d.cantOpen===DirEntry.FORBIDDEN?"lock":"password",{className:"miss-perm",title:v(MISSING_PERM)}),reactExports.createElement(EntrySize,{s:d.s}),x&&reactExports.createElement("span",{className:"entry-ts","aria-hidden":!0,onClick(){E&&alertDialog(v`Full timestamp:`+`
|
|
764
|
-
`+formatTimestamp(x))}},formatTimestamp(x,Fe(Fe({},!E||!b?{year:E?S:"numeric",month:S,day:S}:null),!E||b?{hour:S,minute:S}:null))))}),EntrySize=reactExports.memo(({s:d})=>d===void 0?null:reactExports.createElement(Bytes,{className:"entry-size",bytes:d}));function getId3Tags(d){return yt(this,null,function*(){const m=yield fetch(d,{headers:{Range:"bytes=0-2047"}}).then(E=>E.arrayBuffer()),g=new DataView(m);if(g.getUint32(0)!==1229206275)return;const x={};let b=10;for(;b<m.byteLength;){const E=String.fromCharCode(g.getUint8(b++),g.getUint8(b++),g.getUint8(b++),g.getUint8(b++));if(E==="\0\0\0\0")break;const v=g.getUint32(b);b+=6;const S=g.getUint8(b++)?{239:"utf-8",255:"utf-16le",254:"utf-16be"}[g.getUint8(b)]:"ISO-8859-1";x[E]=new TextDecoder(S).decode(m.slice(b,b+=v-1))}for(const[E,v]of Object.entries({TALB:"album",TIT2:"title",TPE1:"artist",TYER:"year",TRCK:"track"}))x[v]=x[E];return x})}const{t:t$2,useI18N}=i18n;var ZoomMode=(d=>(d[d.fullWidth=0]="fullWidth",d[d.freeY=1]="freeY",d[d.contain=2]="contain",d))(ZoomMode||{});function fileShow(d,{startPlaying:m=!1,startShuffle:g=!1}={}){if(!getShowComponent(d))return;let x=!1,b,E,v=!0,S=!0;const{close:C}=newDialog({noFrame:!0,className:"file-show",onClose(){b==null||b()},Content(){const{uri:T}=useSnapState();reactExports.useEffect(()=>{T!==E&&(E!=null||(E=T),E!==T&&C())},[T]);const[$,k,L]=useStateMounted(d),D=reactExports.useRef(0),A=reactExports.useRef(d),[I,N]=reactExports.useState(2),[z,Y]=reactExports.useState();reactExports.useEffect(()=>je(g),[]);const B=reactExports.useRef(0);z||(B.current=0);const[j,U,W]=useStateMounted(!1),[V,K]=reactExports.useState("");reactExports.useEffect(()=>{z&&ot(z[0])},[!!z]),useEventListener("keydown",({key:Ae})=>{if(Ae==="Escape"){if(x)return C();x=!0,b=toast(Ce("esc_again","Press ESC twice to close")).close;return}if(x=!1,Ae==="ArrowLeft")return ke();if(Ae==="ArrowRight")return we();if(Ae==="ArrowDown")return qe(1);if(Ae==="ArrowUp")return qe(-1);if(Ae==="d")return location.href=$.uri+"?dl";if(Ae==="z")return ft();if(Ae==="f")return We();if(Ae==="s")return je();if(Ae==="r")return Ve();if(Ae==="a")return Ze();if(Ae===" "){const dt=state.selected;dt[$.uri]?delete dt[$.uri]:dt[$.uri]=!0,state.showFilter=!0;return}});const[Q,Z]=reactExports.useState(!1),re=reactExports.useMemo(()=>getShowComponent($),[$]),ie=re===Audio;reactExports.useEffect(()=>Z(ie),[ie]);const oe=reactExports.useRef(0),ee="nav"+(Q?"":" nav-hidden"),[X,ce]=reactExports.useState(!1),[pe,ae]=reactExports.useState(!1),ue=reactExports.useRef(),fe=reactExports.useRef();reactExports.useEffect(()=>{qe(-1e9)},[$]);const[_e,ye]=reactExports.useState();reactExports.useEffect(()=>ye(void 0),[$]);const{auto_play_seconds:ve}=useSnapState(),[Ee,Te]=reactExports.useState(m);function Ie(){var Ae;return(Ae=ue.current)==null?void 0:Ae.querySelector(".showing")}reactExports.useEffect(()=>{const Ae=Ie();try{if(!Ee&&!S||!Ae)return}finally{S=!1}if(Ae instanceof HTMLMediaElement)return Ae.play().catch(Ye),domOn("ended",we,{target:Ae});if(!Ee)return;const dt=setTimeout(we,state.auto_play_seconds*1e3);return()=>clearTimeout(dt)},[Ee,$]);const{mediaSession:Pe}=navigator;Pe==null||Pe.setActionHandler("nexttrack",we),Pe==null||Pe.setActionHandler("previoustrack",ke);const{t:Ce}=useI18N(),Le=Ce("autoplay_seconds","Seconds to wait on images"),He=dirname($.n),De=reactExports.useRef();return reactExports.useEffect(()=>{re||De.current===$||(Ge(),De.current=$)},[$,re]),reactExports.createElement(FlexV,{gap:0,alignItems:"stretch",className:ie?void 0:ZoomMode[I],props:{role:"dialog",onMouseMove(){ie||(Z(!0),clearTimeout(oe.current),oe.current=+setTimeout(()=>Z(!1),1e3))}}},reactExports.createElement("div",{className:"bar"},reactExports.createElement("div",{className:"filename"},reactExports.createElement("small",{},He),$.n.slice(He.length)),reactExports.createElement("div",{className:"controls"},reactExports.createElement(EntryDetails,{entry:$,midnight:useMidnight()}),useWindowSize().width>800&&iconBtn("?",showHelp),reactExports.createElement("div",{},reactExports.createElement(Btn,{className:"small",label:Ce`Auto-play`,toggled:Ee,onClick:Ze}),Ee&&reactExports.createElement(Btn,{className:"small",label:String(ve),title:Le,onClick:ut})),iconBtn("menu",Ae=>openFileMenu($,Ae,["open","delete",{id:"zoom",icon:"zoom",label:Ce`Switch zoom mode`,onClick:ft},{id:"fullscreen",icon:"fullscreen",label:Ce`Full screen`,onClick:We},{id:"shuffle",icon:"shuffle",label:Ce`Shuffle`,toggled:!!z,onClick:()=>je()},{id:"repeat",icon:"repeat",label:Ce`Repeat`,toggled:j,onClick:Ve}])),iconBtn("close",C))),reactExports.createElement(FlexV,{center:!0,alignItems:"center",className:"main",ref:fe},X&&reactExports.createElement(Spinner,{style:{position:"absolute",fontSize:"20vh",opacity:.5}}),pe===$.n?reactExports.createElement(FlexV,{alignItems:"center",textAlign:"center"},hIcon("error",{style:{fontSize:"20vh"}}),reactExports.createElement("div",{},$.name),Ce`Loading failed`):reactExports.createElement("div",{className:"showing-container",ref:ue},reactExports.createElement("div",{className:"cover "+(V?"":"none"),style:{backgroundImage:V&&`url("${V}")`}}),re&&reactExports.createElement(re,{src:$.uri,className:"showing",onLoad(){A.current=$,ce(!1)},onError:Ge,onPlay(){return yt(this,null,function*(){var tt,It;const Ae=ie?state.list.filter(Ft=>He===dirname(Ft.n)&&Ft.name.match(/(?:folder|cover|front|albumart.*)\.jpe?g$/i)):[];K(pathEncode(((tt=_.maxBy(Ae,"s"))==null?void 0:tt.n)||""));const dt={title:$.name,album:safeDecodeURIComponent(basename(dirname($.uri)),""),artwork:Ae.map(Ft=>({src:Ft.n}))},Je=window.MediaMetadata&&(navigator.mediaSession.metadata=new MediaMetadata(dt));if($.ext==="mp3"){const Ft=$.name.split(" - ");ye(Object.assign(dt,Fe({title:(It=Ft.at(-1))==null?void 0:It.slice(0,-4),artist:Ft.filter(Ot=>!isNumeric(Ot)).at(-2)},yield getId3Tags(location.pathname+$.n).catch(()=>{})))),Je&&Object.assign(Je,dt)}hfsEvent("showPlay",{entry:$,meta:dt,setCover(Ft){typeof Ft=="string"&&(K(Ft),Je&&(navigator.mediaSession.metadata=new MediaMetadata(Object.assign(dt,{artwork:[{src:Ft}]}))))}})})}}),_e&&reactExports.createElement("div",{className:"meta-tags"},reactExports.createElement("div",{},...["title","artist","album","year"].map(Ae=>reactExports.createElement("div",{key:Ae,className:`meta-${Ae}`},_e[Ae]))))),hIcon("❮",{className:ee,style:{left:0},onClick:ke}),hIcon("❯",{className:ee,style:{right:0},onClick:we})));function ke(){Ue(-1)}function we(){Ue(1)}function Ge(){var dt,Je;if(((Je=(dt=document.querySelector(".showing-container .showing"))==null?void 0:dt.error)==null?void 0:Je.code)!==2){if($!==A.current)return Ue();ce(!1),ae($.n)}}function Ye(Ae){if(console.debug(Ae),(Ae==null?void 0:Ae.name)!=="NotAllowedError"||!v)return;v=!1;const dt=Ie();if(!(dt instanceof HTMLMediaElement))return;const Je=dt,tt=newDialog({onClose:()=>v=!0,Content:()=>reactExports.createElement(Btn,{autoFocus:!0,icon:"play",label:"Click here to play",onClick:()=>{Je.play().catch(Ye),tt.close()}})})}function Ue(Ae=1){if(L()!==$)return;const{list:dt}=state;let Je=z;if(z&&Ae>0&&z.length<dt.length){const Ft=_.findIndex(z,{n:$.n});if(Ft>=B.current){const Ot=1+Ft,Ct=z.slice(0,Ot);Y(Je=Ct.concat(_.shuffle(_.difference(dt,Ct))))}}Ae&&(D.current=Ae);let tt=$;for(;tt=tt.getSibling(D.current,Je),!It();)if(!tt){if(Ae>0){if(W()){if(tt=(Je==null?void 0:Je[0])||dt[0],It())break;continue}Te(!1)}return ot(A.current),restartAnimation(document.body,".2s blink")}if(ot(tt),z){const Ft=_.findIndex(Je,{n:tt.n});B.current=Math.max(B.current,Ft)}function It(){return tt&&!tt.isFolder&&getShowComponent(tt)}}function ot(Ae){ae(!1),ce(Ae!==A.current),k(Ae)}function We(){var Ae;if(!document.fullscreenEnabled)return alertDialog(Ce`Full-screen not supported`,"error");document.fullscreenElement?document.exitFullscreen():(Ae=fe.current)==null||Ae.requestFullscreen()}function ft(){N(Ae=>Ae?Ae-1:2)}function je(Ae){Y(dt=>(Ae!=null?Ae:!dt)?_.shuffle(state.list):void 0)}function Ve(){U(Ae=>!Ae)}function Ze(){Te(Ae=>!Ae)}function qe(Ae){var dt,Je;(Je=ue.current)==null||Je.scrollBy(0,Ae*.5*((dt=ue.current)==null?void 0:dt.clientHeight))}function ut(){newDialog({title:Ce`Auto-play`,Content(){const{auto_play_seconds:Ae}=useSnapState();return reactExports.createElement(FlexV,{},Le,reactExports.createElement("input",{type:"number",min:1,max:1e4,value:Ae,style:{width:"4em"},onChange:dt=>state.auto_play_seconds=Number(dt.target.value)}))}})}}});return!0}function getShowComponent(d){const m=ext2type(d.ext),x={entry:d,Component:m==="audio"?Audio:m==="video"?Video:m==="image"?"img":""};return hfsEvent("fileShow",x).findLast(Boolean)||x.Component}const Audio=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=qt(b,["onLoad"]);return reactExports.createElement("audio",Fe({ref:g,onLoadedData:d,controls:!0},m))}),Video=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=qt(b,["onLoad"]);return reactExports.createElement("video",Fe({ref:g,onLoadedData:d,controls:!0},m))});function showHelp(){newDialog({title:t$2`File Show help`,className:"file-show-help",Content:()=>reactExports.createElement(reactExports.Fragment,{},t$2("showHelpMain",{},"You can use the keyboard for some actions:"),_.map({"←/→":t$2("showHelp_←/→_body","Go to previous/next file"),"↑/↓":t$2("showHelp_↑/↓_body","Scroll tall images"),space:t$2`Select`,D:t$2`Download`,Z:t$2`Switch zoom mode`,F:t$2`Full screen`,S:t$2`Shuffle`,R:t$2`Repeat`,A:t$2`Auto-play`},(d,m)=>reactExports.createElement("div",{key:m},reactExports.createElement("kbd",{},t$2("showHelp_"+m,m))," ",d)),reactExports.createElement("div",{style:{marginTop:"1em"}},t$2("showHelpListShortcut",{key:isMac?"SHIFT":"WIN"},"From the file list, click holding {key} to show")))})}const{t:t$1}=i18n;setTimeout(()=>{state.remoteSearch=urlParams.search?{search:urlParams.search}:void 0,objFromKeys(["onlyFiles","onlyFolders"],d=>d in urlParams||void 0)});urlParams.autoplay;function reloadList(){state.listReloader=Date.now()}getHFS().textSortCompare=new Intl.Collator(navigator.language).compare;function sort(d){const{sort_by:m,folders_first:g,sort_numerics:x}=state,b=m==="size",E=m==="extension",v=m==="time",S=m==="creation",C=state.invert_order?-1:1,{textSortCompare:T}=getHFS();return d.sort((k,L)=>-compareScalar(k.order||0,L.order||0)||hfsEvent("sortCompare",{a:k,b:L}).find(Boolean)||g&&-compareScalar(k.isFolder,L.isFolder)||C*(b?compareScalar(k.s||0,L.s||0):E?T(k.ext,L.ext):v?compareScalar(k.m,L.m):S?compareScalar(k.c,L.c):0)||x&&C*$(k.n,L.n)||C*T(k.n,L.n));function $(k,L){const D=/\d/g;if(!D.exec(k))return 0;const A=D.lastIndex;if(A){if(!L.startsWith(k.slice(0,A-1)))return 0;k=k.slice(A-1),L=L.slice(A-1)}return compareScalar(parseFloat(k),parseFloat(L))}}function compareScalar(d,m){return d-m}const sortAgain=_.debounce(()=>state.list=sort(state.list),100);for(const d of["sort_by","invert_order","folders_first","sort_numerics"])subscribeKey(state,d,sortAgain);const updateFilteredList=_.debounce(()=>{const d=state.patternFilter;if(!d)return state.filteredList=void 0;const m=new RegExp(_.escapeRegExp(d),"i");state.filteredList=state.list.filter(g=>m.test(g.n))});subscribeKey(state,"list",updateFilteredList);subscribeKey(state,"patternFilter",updateFilteredList);function debounceAsync(d,m={}){const{wait:g=0,leading:x=!1,maxWait:b=1/0,cancelable:E=!1,retain:v=0,retainFailure:S,reuseRunning:C}=m;let T=0,$,k,L=0,D,A,I=!1,N=0;return Object.assign((...j)=>k=Y(...j),Fe({clearRetain:()=>A=void 0,flush:()=>$!=null?$:B(),isWorking:()=>$},E&&{cancel(){L=0,D=void 0}}));function Y(...j){return yt(this,null,function*(){if(C&&$)return $;const U=Date.now();if(A&&U-N<(I&&S!=null?S:v))return yield A;D=j,L||(L=U);const W=b-(U-(L||T)),V=Math.min(W,x?g-(U-T):g);if(V>0&&(yield new Promise(K=>setTimeout(K,V))),!D){L=0;return}return D!==j?k:(yield $,B())})}function B(){return yt(this,null,function*(){if(D){L=0,T=Date.now();try{const j=D;return D=void 0,$=Promise.resolve(d(...j)),$.then(()=>I=!1,()=>I=!0),yield $}finally{A=$,N=Date.now(),$=void 0}}})}}const{t,getLangs}=i18n;function err2msg(d){return typeof d=="number"?HTTP_MESSAGES[d]:HTTP_MESSAGES[d.code]||d.message||String(d)}function hIcon(d,m){return reactExports.createElement(Icon,Fe({name:d},m))}function ErrorMsg({err:d}){return d?reactExports.createElement("div",{className:"error-msg"},(d==null?void 0:d.message)||_.isString(d)&&d||`${t`Error`}:${d}`):null}let isWorking=!1;function working(){if(isWorking)return()=>{};isWorking=!0;const{close:d}=newDialog({closable:!1,noFrame:!0,Content:Spinner,reserveClosing:!0,className:"working",onClose(){isWorking=!1}});return d}function hfsEvent(d,m){const g=[],x=[],b={params:m,output:g,order:x};let E=new CustomEvent("hfs."+d,{detail:b,cancelable:!0});document.dispatchEvent(E),E.defaultPrevented||(E=new CustomEvent("hfs."+d+":after",{detail:b,cancelable:!0}),document.dispatchEvent(E));const v=x.length&&_.sortBy(g.map((S,C)=>[x[C]||0,S]),"0").map(S=>S[1]);return Object.assign(v||g,{isDefaultPrevented:()=>E.defaultPrevented})}function onHfsEvent(d,m,g){const x="hfs."+d;return document.addEventListener(x,b,g),()=>document.removeEventListener(x,b);function b(E){const{params:v,output:S,order:C}=E.detail;let T;const $=m(v,{output:S,setOrder(k){T=k},preventDefault:()=>E.preventDefault()});$!==void 0&&Array.isArray(S)&&(S.push($),T&&(C[S.length-1]=T))}}function formatTimestamp(d,m){const g=getOrSet(formatTimestamp,"langs",()=>{const x=getLangs(),b=urlParams.lang||navigator.language;return!x.length||b.startsWith(x[0])?b:x});return d?(d instanceof Date?d:new Date(d)).toLocaleString(g,m):""}Object.assign(getHFS(),{h:reactExports.createElement,React,state,t,_,dialogLib,apiCall,useApi,reloadList,logout,Icon,hIcon,iconBtn,useBatch,fileShow,toast,domOn,getNotifications,debounceAsync,useSnapState,DirEntry,Btn,i18n,fileShowComponents:{Video,Audio},isVideoComponent,markVideoComponent,isAudioComponent,markAudioComponent,isShowSupported:getShowComponent,misc:Fe(Fe(Fe({},cross),shared),thisModule),emit:hfsEvent,onEvent:onHfsEvent,watchState(d,m,g=!1){const x=d.split("upload.")[1],b=x?uploadState:state;return g&&m(b[d]),subscribeKey(b,x||d,m,!0)},customRestCall(d,...m){return apiCall(PLUGIN_CUSTOM_REST_PREFIX+d,...m)},html:d=>reactExports.createElement(Html,{},d),elementToEntry(d){var g;if(!(d instanceof HTMLElement))return;const m=(g=d.closest("li"))==null?void 0:g.querySelector(".link-wrapper a");if(m instanceof HTMLAnchorElement)try{return _.find(state.list,{uri:new URL(m.href).pathname})}catch(x){}},customizeText(d,m=ANY_LANGUAGE){var x,b;const g=i18n.state.translations;(m===ANY_LANGUAGE||m===EMBEDDED_LANGUAGE)&&((x=g[m])!=null||(g[m]={translate:{}})),Object.assign(((b=g[m])==null?void 0:b.translate)||{},d)}});markVideoComponent(Video);markAudioComponent(Audio);function isVideoComponent(d){return!!(d!=null&&d.hfs_show_video)}function markVideoComponent(d){return d.hfs_show_video=!0,d}function isAudioComponent(d){return!!(d!=null&&d.hfs_show_audio)}function markAudioComponent(d){return d.hfs_show_audio=!0,d}function operationSuccessful(){return toast(t`Operation successful`,"success")}var lib={},hasRequiredLib;function requireLib(){if(hasRequiredLib)return lib;hasRequiredLib=1;var d=lib&&lib.__extends||function(){var Z=function(re,ie){return Z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(oe,ee){oe.__proto__=ee}||function(oe,ee){for(var X in ee)Object.prototype.hasOwnProperty.call(ee,X)&&(oe[X]=ee[X])},Z(re,ie)};return function(re,ie){if(typeof ie!="function"&&ie!==null)throw new TypeError("Class extends value "+String(ie)+" is not a constructor or null");Z(re,ie);function oe(){this.constructor=re}re.prototype=ie===null?Object.create(ie):(oe.prototype=ie.prototype,new oe)}}(),m=lib&&lib.__assign||function(){return m=Object.assign||function(Z){for(var re,ie=1,oe=arguments.length;ie<oe;ie++){re=arguments[ie];for(var ee in re)Object.prototype.hasOwnProperty.call(re,ee)&&(Z[ee]=re[ee])}return Z},m.apply(this,arguments)},g=lib&&lib.__createBinding||(Object.create?function(Z,re,ie,oe){oe===void 0&&(oe=ie);var ee=Object.getOwnPropertyDescriptor(re,ie);(!ee||("get"in ee?!re.__esModule:ee.writable||ee.configurable))&&(ee={enumerable:!0,get:function(){return re[ie]}}),Object.defineProperty(Z,oe,ee)}:function(Z,re,ie,oe){oe===void 0&&(oe=ie),Z[oe]=re[ie]}),x=lib&&lib.__setModuleDefault||(Object.create?function(Z,re){Object.defineProperty(Z,"default",{enumerable:!0,value:re})}:function(Z,re){Z.default=re}),b=lib&&lib.__importStar||function(Z){if(Z&&Z.__esModule)return Z;var re={};if(Z!=null)for(var ie in Z)ie!=="default"&&Object.prototype.hasOwnProperty.call(Z,ie)&&g(re,Z,ie);return x(re,Z),re},E=lib&&lib.__rest||function(Z,re){var ie={};for(var oe in Z)Object.prototype.hasOwnProperty.call(Z,oe)&&re.indexOf(oe)<0&&(ie[oe]=Z[oe]);if(Z!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ee=0,oe=Object.getOwnPropertySymbols(Z);ee<oe.length;ee++)re.indexOf(oe[ee])<0&&Object.prototype.propertyIsEnumerable.call(Z,oe[ee])&&(ie[oe[ee]]=Z[oe[ee]]);return ie};Object.defineProperty(lib,"__esModule",{value:!0});var v=b(requireReact()),S=13,C=9,T=8,$=89,k=90,L=77,D=57,A=219,I=222,N=192,z=27,Y=100,B=3e3,j=typeof window!="undefined"&&"navigator"in window&&/Win/i.test(navigator.platform),U=typeof window!="undefined"&&"navigator"in window&&/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform),W="npm__react-simple-code-editor__textarea",V=`
|
|
764
|
+
`+formatTimestamp(x))}},formatTimestamp(x,Fe(Fe({},!E||!b?{year:E?S:"numeric",month:S,day:S}:null),!E||b?{hour:S,minute:S}:null))))}),EntrySize=reactExports.memo(({s:d})=>d===void 0?null:reactExports.createElement(Bytes,{className:"entry-size",bytes:d}));function getId3Tags(d){return yt(this,null,function*(){const m=yield fetch(d,{headers:{Range:"bytes=0-2047"}}).then(E=>E.arrayBuffer()),g=new DataView(m);if(g.getUint32(0)!==1229206275)return;const x={};let b=10;for(;b<m.byteLength;){const E=String.fromCharCode(g.getUint8(b++),g.getUint8(b++),g.getUint8(b++),g.getUint8(b++));if(E==="\0\0\0\0")break;const v=g.getUint32(b);b+=6;const S=g.getUint8(b++)?{239:"utf-8",255:"utf-16le",254:"utf-16be"}[g.getUint8(b)]:"ISO-8859-1";x[E]=new TextDecoder(S).decode(m.slice(b,b+=v-1))}for(const[E,v]of Object.entries({TALB:"album",TIT2:"title",TPE1:"artist",TYER:"year",TRCK:"track"}))x[v]=x[E];return x})}const{t:t$2,useI18N}=i18n;var ZoomMode=(d=>(d[d.fullWidth=0]="fullWidth",d[d.freeY=1]="freeY",d[d.contain=2]="contain",d))(ZoomMode||{});function fileShow(d,{startPlaying:m=!1,startShuffle:g=!1}={}){if(!getShowComponent(d))return;let x=!1,b,E,v=!0,S=!0;const{close:C}=newDialog({noFrame:!0,className:"file-show",onClose(){b==null||b()},Content(){const{uri:T}=useSnapState();reactExports.useEffect(()=>{T!==E&&(E!=null||(E=T),E!==T&&C())},[T]);const[$,k,L]=useStateMounted(d),D=reactExports.useRef(0),A=reactExports.useRef(d),[I,N]=reactExports.useState(2),[z,Y]=reactExports.useState();reactExports.useEffect(()=>je(g),[]);const B=reactExports.useRef(0);z||(B.current=0);const[j,U,W]=useStateMounted(!1),[V,K]=reactExports.useState("");reactExports.useEffect(()=>{z&&ot(z[0])},[!!z]),useEventListener("keydown",({key:Ae})=>{if(Ae==="Escape"){if(x)return C();x=!0,b=toast(Ce("esc_again","Press ESC twice to close")).close;return}if(x=!1,Ae==="ArrowLeft")return ke();if(Ae==="ArrowRight")return we();if(Ae==="ArrowDown")return qe(1);if(Ae==="ArrowUp")return qe(-1);if(Ae==="d")return location.href=$.uri+"?dl";if(Ae==="z")return ft();if(Ae==="f")return We();if(Ae==="s")return je();if(Ae==="r")return Ve();if(Ae==="a")return Ze();if(Ae===" "){const dt=state.selected;dt[$.uri]?delete dt[$.uri]:dt[$.uri]=!0,state.showFilter=!0;return}});const[Q,Z]=reactExports.useState(!1),re=reactExports.useMemo(()=>getShowComponent($),[$]),ie=re===Audio;reactExports.useEffect(()=>Z(ie),[ie]);const oe=reactExports.useRef(0),ee="nav"+(Q?"":" nav-hidden"),[X,ce]=reactExports.useState(!1),[pe,ae]=reactExports.useState(!1),ue=reactExports.useRef(),fe=reactExports.useRef();reactExports.useEffect(()=>{qe(-1e9)},[$]);const[_e,ye]=reactExports.useState();reactExports.useEffect(()=>ye(void 0),[$]);const{auto_play_seconds:ve}=useSnapState(),[Ee,Te]=reactExports.useState(m);function Ie(){var Ae;return(Ae=ue.current)==null?void 0:Ae.querySelector(".showing")}reactExports.useEffect(()=>{const Ae=Ie();try{if(!Ee&&!S||!Ae)return}finally{S=!1}if(Ae instanceof HTMLMediaElement)return Ae.play().catch(Ye),domOn("ended",we,{target:Ae});if(!Ee)return;const dt=setTimeout(we,state.auto_play_seconds*1e3);return()=>clearTimeout(dt)},[Ee,$]);const{mediaSession:Pe}=navigator;Pe==null||Pe.setActionHandler("nexttrack",we),Pe==null||Pe.setActionHandler("previoustrack",ke);const{t:Ce}=useI18N(),Le=Ce("autoplay_seconds","Seconds to wait on images"),He=dirname($.n),De=reactExports.useRef();return reactExports.useEffect(()=>{re||De.current===$||(Ge(),De.current=$)},[$,re]),reactExports.createElement(FlexV,{gap:0,alignItems:"stretch",className:ie?void 0:ZoomMode[I],props:{role:"dialog",onMouseMove(){ie||(Z(!0),clearTimeout(oe.current),oe.current=+setTimeout(()=>Z(!1),1e3))}}},reactExports.createElement("div",{className:"bar"},reactExports.createElement("div",{className:"filename"},reactExports.createElement("small",{},He),$.n.slice(He.length)),reactExports.createElement("div",{className:"controls"},reactExports.createElement(EntryDetails,{entry:$,midnight:useMidnight()}),useWindowSize().width>800&&iconBtn("?",showHelp),reactExports.createElement("div",{},reactExports.createElement(Btn,{className:"small",label:Ce`Auto-play`,toggled:Ee,onClick:Ze}),Ee&&reactExports.createElement(Btn,{className:"small",label:String(ve),title:Le,onClick:ut})),iconBtn("menu",Ae=>openFileMenu($,Ae,["open","delete",{id:"zoom",icon:"zoom",label:Ce`Switch zoom mode`,onClick:ft},{id:"fullscreen",icon:"fullscreen",label:Ce`Full screen`,onClick:We},{id:"shuffle",icon:"shuffle",label:Ce`Shuffle`,toggled:!!z,onClick:()=>je()},{id:"repeat",icon:"repeat",label:Ce`Repeat`,toggled:j,onClick:Ve}])),iconBtn("close",C))),reactExports.createElement(FlexV,{center:!0,alignItems:"center",className:"main",ref:fe},X&&reactExports.createElement(Spinner,{style:{position:"absolute",fontSize:"20vh",opacity:.5}}),pe===$.n?reactExports.createElement(FlexV,{alignItems:"center",textAlign:"center"},hIcon("error",{style:{fontSize:"20vh"}}),reactExports.createElement("div",{},$.name),Ce`Loading failed`):reactExports.createElement("div",{className:"showing-container",ref:ue},reactExports.createElement("div",{className:"cover "+(V?"":"none"),style:{backgroundImage:V&&`url("${V}")`}}),re&&reactExports.createElement(re,{src:$.uri,className:"showing",onLoad(){A.current=$,ce(!1)},onError:Ge,onPlay(){return yt(this,null,function*(){var tt,It;const Ae=ie?state.list.filter(Ft=>He===dirname(Ft.n)&&Ft.name.match(/(?:folder|cover|front|albumart.*)\.jpe?g$/i)):[];K(pathEncode(((tt=_.maxBy(Ae,"s"))==null?void 0:tt.n)||""));const dt={title:$.name,album:safeDecodeURIComponent(basename(dirname($.uri)),""),artwork:Ae.map(Ft=>({src:Ft.n}))},Je=window.MediaMetadata&&(navigator.mediaSession.metadata=new MediaMetadata(dt));if($.ext==="mp3"){const Ft=$.name.split(" - ");ye(Object.assign(dt,Fe({title:(It=Ft.at(-1))==null?void 0:It.slice(0,-4),artist:Ft.filter(Ot=>!isNumeric(Ot)).at(-2)},yield getId3Tags(location.pathname+$.n).catch(()=>{})))),Je&&Object.assign(Je,dt)}hfsEvent("showPlay",{entry:$,meta:dt,setCover(Ft){typeof Ft=="string"&&(K(Ft),Je&&(navigator.mediaSession.metadata=new MediaMetadata(Object.assign(dt,{artwork:[{src:Ft}]}))))}})})}}),_e&&reactExports.createElement("div",{className:"meta-tags"},reactExports.createElement("div",{},...["title","artist","album","year"].map(Ae=>reactExports.createElement("div",{key:Ae,className:`meta-${Ae}`},_e[Ae]))))),hIcon("❮",{className:ee,style:{left:0},onClick:ke}),hIcon("❯",{className:ee,style:{right:0},onClick:we})));function ke(){Ue(-1)}function we(){Ue(1)}function Ge(){var dt,Je;if(((Je=(dt=document.querySelector(".showing-container .showing"))==null?void 0:dt.error)==null?void 0:Je.code)!==2){if($!==A.current)return Ue();ce(!1),ae($.n)}}function Ye(Ae){if(console.debug(Ae),(Ae==null?void 0:Ae.name)!=="NotAllowedError"||!v)return;v=!1;const dt=Ie();if(!(dt instanceof HTMLMediaElement))return;const Je=dt,tt=newDialog({onClose:()=>v=!0,Content:()=>reactExports.createElement(Btn,{autoFocus:!0,icon:"play",label:"Click here to play",onClick:()=>{Je.play().catch(Ye),tt.close()}})})}function Ue(Ae=1){if(L()!==$)return;const{list:dt}=state;let Je=z;if(z&&Ae>0&&z.length<dt.length){const Ft=_.findIndex(z,{n:$.n});if(Ft>=B.current){const Ot=1+Ft,Ct=z.slice(0,Ot);Y(Je=Ct.concat(_.shuffle(_.difference(dt,Ct))))}}Ae&&(D.current=Ae);let tt=$;for(;tt=tt.getSibling(D.current,Je),!It();)if(!tt){if(Ae>0){if(W()){if(tt=(Je==null?void 0:Je[0])||dt[0],It())break;continue}Te(!1)}return ot(A.current),restartAnimation(document.body,".2s blink")}if(ot(tt),z){const Ft=_.findIndex(Je,{n:tt.n});B.current=Math.max(B.current,Ft)}function It(){return tt&&!tt.isFolder&&getShowComponent(tt)}}function ot(Ae){ae(!1),ce(Ae!==A.current),k(Ae)}function We(){var Ae;if(!document.fullscreenEnabled)return alertDialog(Ce`Full-screen not supported`,"error");document.fullscreenElement?document.exitFullscreen():(Ae=fe.current)==null||Ae.requestFullscreen()}function ft(){N(Ae=>Ae?Ae-1:2)}function je(Ae){Y(dt=>(Ae!=null?Ae:!dt)?_.shuffle(state.list):void 0)}function Ve(){U(Ae=>!Ae)}function Ze(){Te(Ae=>!Ae)}function qe(Ae){var dt,Je;(Je=ue.current)==null||Je.scrollBy(0,Ae*.5*((dt=ue.current)==null?void 0:dt.clientHeight))}function ut(){newDialog({title:Ce`Auto-play`,Content(){const{auto_play_seconds:Ae}=useSnapState();return reactExports.createElement(FlexV,{},Le,reactExports.createElement("input",{type:"number",min:1,max:1e4,value:Ae,style:{width:"4em"},onChange:dt=>state.auto_play_seconds=Number(dt.target.value)}))}})}}});return!0}function getShowComponent(d){const m=ext2type(d.ext),x={entry:d,Component:m==="audio"?Audio:m==="video"?Video:m==="image"?"img":""};return hfsEvent("fileShow",x).findLast(Boolean)||x.Component}const Audio=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=qt(b,["onLoad"]);return reactExports.createElement("audio",Fe({ref:g,onLoadedData:d,controls:!0},m))}),Video=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=qt(b,["onLoad"]);return reactExports.createElement("video",Fe({ref:g,onLoadedData:d,controls:!0},m))});function showHelp(){newDialog({title:t$2`File Show help`,className:"file-show-help",Content:()=>reactExports.createElement(reactExports.Fragment,{},t$2("showHelpMain",{},"You can use the keyboard for some actions:"),_.map({"←/→":t$2("showHelp_←/→_body","Go to previous/next file"),"↑/↓":t$2("showHelp_↑/↓_body","Scroll tall images"),space:t$2`Select`,D:t$2`Download`,Z:t$2`Switch zoom mode`,F:t$2`Full screen`,S:t$2`Shuffle`,R:t$2`Repeat`,A:t$2`Auto-play`},(d,m)=>reactExports.createElement("div",{key:m},reactExports.createElement("kbd",{},t$2("showHelp_"+m,m))," ",d)),reactExports.createElement("div",{style:{marginTop:"1em"}},t$2("showHelpListShortcut",{key:isMac?"SHIFT":"WIN"},"From the file list, click holding {key} to show")))})}const{t:t$1}=i18n;setTimeout(()=>{state.remoteSearch=urlParams.search?{search:urlParams.search}:void 0,objFromKeys(["onlyFiles","onlyFolders"],d=>d in urlParams||void 0)});urlParams.autoplay;function reloadList(){state.listReloader=Date.now()}getHFS().textSortCompare=new Intl.Collator(navigator.language).compare;function sort(d){const{sort_by:m,folders_first:g,sort_numerics:x}=state,b=m==="size",E=m==="extension",v=m==="time",S=m==="creation",C=state.invert_order?-1:1,{textSortCompare:T}=getHFS();return d.sort((k,L)=>-compareScalar(k.order||0,L.order||0)||hfsEvent("sortCompare",{a:k,b:L}).find(Boolean)||g&&-compareScalar(k.isFolder,L.isFolder)||C*(b?compareScalar(k.s||0,L.s||0):E?T(k.ext,L.ext):v?compareScalar(k.m,L.m):S?compareScalar(k.c,L.c):0)||x&&C*$(k.n,L.n)||C*T(k.n,L.n));function $(k,L){const D=/\d/g;if(!D.exec(k))return 0;const A=D.lastIndex;if(A){if(!L.startsWith(k.slice(0,A-1)))return 0;k=k.slice(A-1),L=L.slice(A-1)}return compareScalar(parseFloat(k),parseFloat(L))}}function compareScalar(d,m){return d-m}const sortAgain=_.debounce(()=>state.list=sort(state.list),100);for(const d of["sort_by","invert_order","folders_first","sort_numerics"])subscribeKey(state,d,sortAgain);const updateFilteredList=_.debounce(()=>{const d=state.patternFilter;if(!d)return state.filteredList=void 0;const m=new RegExp(_.escapeRegExp(d),"i");state.filteredList=state.list.filter(g=>m.test(g.n))});subscribeKey(state,"list",updateFilteredList);subscribeKey(state,"patternFilter",updateFilteredList);function debounceAsync(d,m={}){const{wait:g=0,leading:x=!1,maxWait:b=1/0,cancelable:E=!1,retain:v=0,retainFailure:S,reuseRunning:C=!!(v||S)}=m;let T=0,$,k,L=0,D,A,I=!1,N=0;return Object.assign((...j)=>k=Y(...j),Fe({clearRetain:()=>A=void 0,flush:()=>$!=null?$:B(),isWorking:()=>$},E&&{cancel(){L=0,D=void 0}}));function Y(...j){return yt(this,null,function*(){if(C&&$)return $;const U=Date.now();if(A&&U-N<(I&&S!=null?S:v))return yield A;D=j,L||(L=U);const W=b-(U-(L||T)),V=Math.min(W,x?g-(U-T):g);if(V>0&&(yield new Promise(K=>setTimeout(K,V))),!D){L=0;return}return D!==j?k:(yield $,B())})}function B(){return yt(this,null,function*(){if(D){L=0,T=Date.now();try{const j=D;return D=void 0,$=Promise.resolve(d(...j)),$.then(()=>I=!1,()=>I=!0),yield $}finally{A=$,N=Date.now(),$=void 0}}})}}const{t,getLangs}=i18n;function err2msg(d){return typeof d=="number"?HTTP_MESSAGES[d]:HTTP_MESSAGES[d.code]||d.message||String(d)}function hIcon(d,m){return reactExports.createElement(Icon,Fe({name:d},m))}function ErrorMsg({err:d}){return d?reactExports.createElement("div",{className:"error-msg"},(d==null?void 0:d.message)||_.isString(d)&&d||`${t`Error`}:${d}`):null}let isWorking=!1;function working(){if(isWorking)return()=>{};isWorking=!0;const{close:d}=newDialog({closable:!1,noFrame:!0,Content:Spinner,reserveClosing:!0,className:"working",onClose(){isWorking=!1}});return d}function hfsEvent(d,m){const g=[],x=[],b={params:m,output:g,order:x};let E=new CustomEvent("hfs."+d,{detail:b,cancelable:!0});document.dispatchEvent(E),E.defaultPrevented||(E=new CustomEvent("hfs."+d+":after",{detail:b,cancelable:!0}),document.dispatchEvent(E));const v=x.length&&_.sortBy(g.map((S,C)=>[x[C]||0,S]),"0").map(S=>S[1]);return Object.assign(v||g,{isDefaultPrevented:()=>E.defaultPrevented})}function onHfsEvent(d,m,g){const x="hfs."+d;return document.addEventListener(x,b,g),()=>document.removeEventListener(x,b);function b(E){const{params:v,output:S,order:C}=E.detail;let T;const $=m(v,{output:S,setOrder(k){T=k},preventDefault:()=>E.preventDefault()});$!==void 0&&Array.isArray(S)&&(S.push($),T&&(C[S.length-1]=T))}}function formatTimestamp(d,m){const g=getOrSet(formatTimestamp,"langs",()=>{const x=getLangs(),b=urlParams.lang||navigator.language;return!x.length||b.startsWith(x[0])?b:x});return d?(d instanceof Date?d:new Date(d)).toLocaleString(g,m):""}Object.assign(getHFS(),{h:reactExports.createElement,React,state,t,_,dialogLib,apiCall,useApi,reloadList,logout,Icon,hIcon,iconBtn,useBatch,fileShow,toast,domOn,getNotifications,debounceAsync,useSnapState,DirEntry,Btn,i18n,fileShowComponents:{Video,Audio},isVideoComponent,markVideoComponent,isAudioComponent,markAudioComponent,isShowSupported:getShowComponent,misc:Fe(Fe(Fe({},cross),shared),thisModule),emit:hfsEvent,onEvent:onHfsEvent,watchState(d,m,g=!1){const x=d.split("upload.")[1],b=x?uploadState:state;return g&&m(b[d]),subscribeKey(b,x||d,m,!0)},customRestCall(d,...m){return apiCall(PLUGIN_CUSTOM_REST_PREFIX+d,...m)},html:d=>reactExports.createElement(Html,{},d),elementToEntry(d){var g;if(!(d instanceof HTMLElement))return;const m=(g=d.closest("li"))==null?void 0:g.querySelector(".link-wrapper a");if(m instanceof HTMLAnchorElement)try{return _.find(state.list,{uri:new URL(m.href).pathname})}catch(x){}},customizeText(d,m=ANY_LANGUAGE){var x,b;const g=i18n.state.translations;(m===ANY_LANGUAGE||m===EMBEDDED_LANGUAGE)&&((x=g[m])!=null||(g[m]={translate:{}})),Object.assign(((b=g[m])==null?void 0:b.translate)||{},d)}});markVideoComponent(Video);markAudioComponent(Audio);function isVideoComponent(d){return!!(d!=null&&d.hfs_show_video)}function markVideoComponent(d){return d.hfs_show_video=!0,d}function isAudioComponent(d){return!!(d!=null&&d.hfs_show_audio)}function markAudioComponent(d){return d.hfs_show_audio=!0,d}function operationSuccessful(){return toast(t`Operation successful`,"success")}var lib={},hasRequiredLib;function requireLib(){if(hasRequiredLib)return lib;hasRequiredLib=1;var d=lib&&lib.__extends||function(){var Z=function(re,ie){return Z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(oe,ee){oe.__proto__=ee}||function(oe,ee){for(var X in ee)Object.prototype.hasOwnProperty.call(ee,X)&&(oe[X]=ee[X])},Z(re,ie)};return function(re,ie){if(typeof ie!="function"&&ie!==null)throw new TypeError("Class extends value "+String(ie)+" is not a constructor or null");Z(re,ie);function oe(){this.constructor=re}re.prototype=ie===null?Object.create(ie):(oe.prototype=ie.prototype,new oe)}}(),m=lib&&lib.__assign||function(){return m=Object.assign||function(Z){for(var re,ie=1,oe=arguments.length;ie<oe;ie++){re=arguments[ie];for(var ee in re)Object.prototype.hasOwnProperty.call(re,ee)&&(Z[ee]=re[ee])}return Z},m.apply(this,arguments)},g=lib&&lib.__createBinding||(Object.create?function(Z,re,ie,oe){oe===void 0&&(oe=ie);var ee=Object.getOwnPropertyDescriptor(re,ie);(!ee||("get"in ee?!re.__esModule:ee.writable||ee.configurable))&&(ee={enumerable:!0,get:function(){return re[ie]}}),Object.defineProperty(Z,oe,ee)}:function(Z,re,ie,oe){oe===void 0&&(oe=ie),Z[oe]=re[ie]}),x=lib&&lib.__setModuleDefault||(Object.create?function(Z,re){Object.defineProperty(Z,"default",{enumerable:!0,value:re})}:function(Z,re){Z.default=re}),b=lib&&lib.__importStar||function(Z){if(Z&&Z.__esModule)return Z;var re={};if(Z!=null)for(var ie in Z)ie!=="default"&&Object.prototype.hasOwnProperty.call(Z,ie)&&g(re,Z,ie);return x(re,Z),re},E=lib&&lib.__rest||function(Z,re){var ie={};for(var oe in Z)Object.prototype.hasOwnProperty.call(Z,oe)&&re.indexOf(oe)<0&&(ie[oe]=Z[oe]);if(Z!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ee=0,oe=Object.getOwnPropertySymbols(Z);ee<oe.length;ee++)re.indexOf(oe[ee])<0&&Object.prototype.propertyIsEnumerable.call(Z,oe[ee])&&(ie[oe[ee]]=Z[oe[ee]]);return ie};Object.defineProperty(lib,"__esModule",{value:!0});var v=b(requireReact()),S=13,C=9,T=8,$=89,k=90,L=77,D=57,A=219,I=222,N=192,z=27,Y=100,B=3e3,j=typeof window!="undefined"&&"navigator"in window&&/Win/i.test(navigator.platform),U=typeof window!="undefined"&&"navigator"in window&&/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform),W="npm__react-simple-code-editor__textarea",V=`
|
|
765
765
|
/**
|
|
766
766
|
* Reset the text fill color so that placeholder is visible
|
|
767
767
|
*/
|
|
@@ -803,7 +803,7 @@ Go to destination folder to paste.`),"info")}const{t:t$7,useI18N:useI18N$6}=i18n
|
|
|
803
803
|
*/var g=function(x){var b=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,E=0,v={},S={manual:x.Prism&&x.Prism.manual,disableWorkerMessageHandler:x.Prism&&x.Prism.disableWorkerMessageHandler,util:{encode:function Y(B){return B instanceof C?new C(B.type,Y(B.content),B.alias):Array.isArray(B)?B.map(Y):B.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(Y){return Object.prototype.toString.call(Y).slice(8,-1)},objId:function(Y){return Y.__id||Object.defineProperty(Y,"__id",{value:++E}),Y.__id},clone:function Y(B,j){j=j||{};var U,W;switch(S.util.type(B)){case"Object":if(W=S.util.objId(B),j[W])return j[W];U={},j[W]=U;for(var V in B)B.hasOwnProperty(V)&&(U[V]=Y(B[V],j));return U;case"Array":return W=S.util.objId(B),j[W]?j[W]:(U=[],j[W]=U,B.forEach(function(K,Q){U[Q]=Y(K,j)}),U);default:return B}},getLanguage:function(Y){for(;Y;){var B=b.exec(Y.className);if(B)return B[1].toLowerCase();Y=Y.parentElement}return"none"},setLanguage:function(Y,B){Y.className=Y.className.replace(RegExp(b,"gi"),""),Y.classList.add("language-"+B)},currentScript:function(){if(typeof document=="undefined")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(U){var Y=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(U.stack)||[])[1];if(Y){var B=document.getElementsByTagName("script");for(var j in B)if(B[j].src==Y)return B[j]}return null}},isActive:function(Y,B,j){for(var U="no-"+B;Y;){var W=Y.classList;if(W.contains(B))return!0;if(W.contains(U))return!1;Y=Y.parentElement}return!!j}},languages:{plain:v,plaintext:v,text:v,txt:v,extend:function(Y,B){var j=S.util.clone(S.languages[Y]);for(var U in B)j[U]=B[U];return j},insertBefore:function(Y,B,j,U){U=U||S.languages;var W=U[Y],V={};for(var K in W)if(W.hasOwnProperty(K)){if(K==B)for(var Q in j)j.hasOwnProperty(Q)&&(V[Q]=j[Q]);j.hasOwnProperty(K)||(V[K]=W[K])}var Z=U[Y];return U[Y]=V,S.languages.DFS(S.languages,function(re,ie){ie===Z&&re!=Y&&(this[re]=V)}),V},DFS:function Y(B,j,U,W){W=W||{};var V=S.util.objId;for(var K in B)if(B.hasOwnProperty(K)){j.call(B,K,B[K],U||K);var Q=B[K],Z=S.util.type(Q);Z==="Object"&&!W[V(Q)]?(W[V(Q)]=!0,Y(Q,j,null,W)):Z==="Array"&&!W[V(Q)]&&(W[V(Q)]=!0,Y(Q,j,K,W))}}},plugins:{},highlightAll:function(Y,B){S.highlightAllUnder(document,Y,B)},highlightAllUnder:function(Y,B,j){var U={callback:j,container:Y,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};S.hooks.run("before-highlightall",U),U.elements=Array.prototype.slice.apply(U.container.querySelectorAll(U.selector)),S.hooks.run("before-all-elements-highlight",U);for(var W=0,V;V=U.elements[W++];)S.highlightElement(V,B===!0,U.callback)},highlightElement:function(Y,B,j){var U=S.util.getLanguage(Y),W=S.languages[U];S.util.setLanguage(Y,U);var V=Y.parentElement;V&&V.nodeName.toLowerCase()==="pre"&&S.util.setLanguage(V,U);var K=Y.textContent,Q={element:Y,language:U,grammar:W,code:K};function Z(ie){Q.highlightedCode=ie,S.hooks.run("before-insert",Q),Q.element.innerHTML=Q.highlightedCode,S.hooks.run("after-highlight",Q),S.hooks.run("complete",Q),j&&j.call(Q.element)}if(S.hooks.run("before-sanity-check",Q),V=Q.element.parentElement,V&&V.nodeName.toLowerCase()==="pre"&&!V.hasAttribute("tabindex")&&V.setAttribute("tabindex","0"),!Q.code){S.hooks.run("complete",Q),j&&j.call(Q.element);return}if(S.hooks.run("before-highlight",Q),!Q.grammar){Z(S.util.encode(Q.code));return}if(B&&x.Worker){var re=new Worker(S.filename);re.onmessage=function(ie){Z(ie.data)},re.postMessage(JSON.stringify({language:Q.language,code:Q.code,immediateClose:!0}))}else Z(S.highlight(Q.code,Q.grammar,Q.language))},highlight:function(Y,B,j){var U={code:Y,grammar:B,language:j};if(S.hooks.run("before-tokenize",U),!U.grammar)throw new Error('The language "'+U.language+'" has no grammar.');return U.tokens=S.tokenize(U.code,U.grammar),S.hooks.run("after-tokenize",U),C.stringify(S.util.encode(U.tokens),U.language)},tokenize:function(Y,B){var j=B.rest;if(j){for(var U in j)B[U]=j[U];delete B.rest}var W=new k;return L(W,W.head,Y),$(Y,W,B,W.head,0),A(W)},hooks:{all:{},add:function(Y,B){var j=S.hooks.all;j[Y]=j[Y]||[],j[Y].push(B)},run:function(Y,B){var j=S.hooks.all[Y];if(!(!j||!j.length))for(var U=0,W;W=j[U++];)W(B)}},Token:C};x.Prism=S;function C(Y,B,j,U){this.type=Y,this.content=B,this.alias=j,this.length=(U||"").length|0}C.stringify=function Y(B,j){if(typeof B=="string")return B;if(Array.isArray(B)){var U="";return B.forEach(function(Z){U+=Y(Z,j)}),U}var W={type:B.type,content:Y(B.content,j),tag:"span",classes:["token",B.type],attributes:{},language:j},V=B.alias;V&&(Array.isArray(V)?Array.prototype.push.apply(W.classes,V):W.classes.push(V)),S.hooks.run("wrap",W);var K="";for(var Q in W.attributes)K+=" "+Q+'="'+(W.attributes[Q]||"").replace(/"/g,""")+'"';return"<"+W.tag+' class="'+W.classes.join(" ")+'"'+K+">"+W.content+"</"+W.tag+">"};function T(Y,B,j,U){Y.lastIndex=B;var W=Y.exec(j);if(W&&U&&W[1]){var V=W[1].length;W.index+=V,W[0]=W[0].slice(V)}return W}function $(Y,B,j,U,W,V){for(var K in j)if(!(!j.hasOwnProperty(K)||!j[K])){var Q=j[K];Q=Array.isArray(Q)?Q:[Q];for(var Z=0;Z<Q.length;++Z){if(V&&V.cause==K+","+Z)return;var re=Q[Z],ie=re.inside,oe=!!re.lookbehind,ee=!!re.greedy,X=re.alias;if(ee&&!re.pattern.global){var ce=re.pattern.toString().match(/[imsuy]*$/)[0];re.pattern=RegExp(re.pattern.source,ce+"g")}for(var pe=re.pattern||re,ae=U.next,ue=W;ae!==B.tail&&!(V&&ue>=V.reach);ue+=ae.value.length,ae=ae.next){var fe=ae.value;if(B.length>Y.length)return;if(!(fe instanceof C)){var _e=1,ye;if(ee){if(ye=T(pe,ue,Y,oe),!ye||ye.index>=Y.length)break;var Ie=ye.index,ve=ye.index+ye[0].length,Ee=ue;for(Ee+=ae.value.length;Ie>=Ee;)ae=ae.next,Ee+=ae.value.length;if(Ee-=ae.value.length,ue=Ee,ae.value instanceof C)continue;for(var Te=ae;Te!==B.tail&&(Ee<ve||typeof Te.value=="string");Te=Te.next)_e++,Ee+=Te.value.length;_e--,fe=Y.slice(ue,Ee),ye.index-=ue}else if(ye=T(pe,0,fe,oe),!ye)continue;var Ie=ye.index,Pe=ye[0],Ce=fe.slice(0,Ie),Le=fe.slice(Ie+Pe.length),He=ue+fe.length;V&&He>V.reach&&(V.reach=He);var De=ae.prev;Ce&&(De=L(B,De,Ce),ue+=Ce.length),D(B,De,_e);var ke=new C(K,ie?S.tokenize(Pe,ie):Pe,X,Pe);if(ae=L(B,De,ke),Le&&L(B,ae,Le),_e>1){var we={cause:K+","+Z,reach:He};$(Y,B,j,ae.prev,ue,we),V&&we.reach>V.reach&&(V.reach=we.reach)}}}}}}function k(){var Y={value:null,prev:null,next:null},B={value:null,prev:Y,next:null};Y.next=B,this.head=Y,this.tail=B,this.length=0}function L(Y,B,j){var U=B.next,W={value:j,prev:B,next:U};return B.next=W,U.prev=W,Y.length++,W}function D(Y,B,j){for(var U=B.next,W=0;W<j&&U!==Y.tail;W++)U=U.next;B.next=U,U.prev=B,Y.length-=W}function A(Y){for(var B=[],j=Y.head.next;j!==Y.tail;)B.push(j.value),j=j.next;return B}if(!x.document)return x.addEventListener&&(S.disableWorkerMessageHandler||x.addEventListener("message",function(Y){var B=JSON.parse(Y.data),j=B.language,U=B.code,W=B.immediateClose;x.postMessage(S.highlight(U,S.languages[j],j)),W&&x.close()},!1)),S;var I=S.util.currentScript();I&&(S.filename=I.src,I.hasAttribute("data-manual")&&(S.manual=!0));function N(){S.manual||S.highlightAll()}if(!S.manual){var z=document.readyState;z==="loading"||z==="interactive"&&I&&I.defer?document.addEventListener("DOMContentLoaded",N):window.requestAnimationFrame?window.requestAnimationFrame(N):window.setTimeout(N,16)}return S}(m);d.exports&&(d.exports=g),typeof commonjsGlobal!="undefined"&&(commonjsGlobal.Prism=g),g.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},g.languages.markup.tag.inside["attr-value"].inside.entity=g.languages.markup.entity,g.languages.markup.doctype.inside["internal-subset"].inside=g.languages.markup,g.hooks.add("wrap",function(x){x.type==="entity"&&(x.attributes.title=x.content.replace(/&/,"&"))}),Object.defineProperty(g.languages.markup.tag,"addInlined",{value:function(b,E){var v={};v["language-"+E]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:g.languages[E]},v.cdata=/^<!\[CDATA\[|\]\]>$/i;var S={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:v}};S["language-"+E]={pattern:/[\s\S]+/,inside:g.languages[E]};var C={};C[b]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return b}),"i"),lookbehind:!0,greedy:!0,inside:S},g.languages.insertBefore("markup","cdata",C)}}),Object.defineProperty(g.languages.markup.tag,"addAttribute",{value:function(x,b){g.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+x+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[b,"language-"+b],inside:g.languages[b]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),g.languages.html=g.languages.markup,g.languages.mathml=g.languages.markup,g.languages.svg=g.languages.markup,g.languages.xml=g.languages.extend("markup",{}),g.languages.ssml=g.languages.xml,g.languages.atom=g.languages.xml,g.languages.rss=g.languages.xml,function(x){var b=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;x.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+b.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+b.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+b.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+b.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:b,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},x.languages.css.atrule.inside.rest=x.languages.css;var E=x.languages.markup;E&&(E.tag.addInlined("style","css"),E.tag.addAttribute("style","css"))}(g),g.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},g.languages.javascript=g.languages.extend("clike",{"class-name":[g.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),g.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,g.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:g.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:g.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:g.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:g.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:g.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),g.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:g.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),g.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),g.languages.markup&&(g.languages.markup.tag.addInlined("script","javascript"),g.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),g.languages.js=g.languages.javascript,function(){if(typeof g=="undefined"||typeof document=="undefined")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var x="Loading…",b=function(I,N){return"✖ Error "+I+" while fetching file: "+N},E="✖ Error: File does not exist or is empty",v={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},S="data-src-status",C="loading",T="loaded",$="failed",k="pre[data-src]:not(["+S+'="'+T+'"]):not(['+S+'="'+C+'"])';function L(I,N,z){var Y=new XMLHttpRequest;Y.open("GET",I,!0),Y.onreadystatechange=function(){Y.readyState==4&&(Y.status<400&&Y.responseText?N(Y.responseText):Y.status>=400?z(b(Y.status,Y.statusText)):z(E))},Y.send(null)}function D(I){var N=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(I||"");if(N){var z=Number(N[1]),Y=N[2],B=N[3];return Y?B?[z,Number(B)]:[z,void 0]:[z,z]}}g.hooks.add("before-highlightall",function(I){I.selector+=", "+k}),g.hooks.add("before-sanity-check",function(I){var N=I.element;if(N.matches(k)){I.code="",N.setAttribute(S,C);var z=N.appendChild(document.createElement("CODE"));z.textContent=x;var Y=N.getAttribute("data-src"),B=I.language;if(B==="none"){var j=(/\.(\w+)$/.exec(Y)||[,"none"])[1];B=v[j]||j}g.util.setLanguage(z,B),g.util.setLanguage(N,B);var U=g.plugins.autoloader;U&&U.loadLanguages(B),L(Y,function(W){N.setAttribute(S,T);var V=D(N.getAttribute("data-range"));if(V){var K=W.split(/\r\n?|\n/g),Q=V[0],Z=V[1]==null?K.length:V[1];Q<0&&(Q+=K.length),Q=Math.max(0,Math.min(Q-1,K.length)),Z<0&&(Z+=K.length),Z=Math.max(0,Math.min(Z,K.length)),W=K.slice(Q,Z).join(`
|
|
804
804
|
`),N.hasAttribute("data-start")||N.setAttribute("data-start",String(Q+1))}z.textContent=W,g.highlightElement(z)},function(W){N.setAttribute(S,$),z.textContent=W})}}),g.plugins.fileHighlight={highlight:function(N){for(var z=(N||document).querySelectorAll(k),Y=0,B;B=z[Y++];)g.highlightElement(B)}};var A=!1;g.fileHighlight=function(){A||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),A=!0),g.plugins.fileHighlight.highlight.apply(this,arguments)}}()}(prism)),prism.exports}var prismExports=requirePrism();Prism.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]};Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity;Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup;Prism.hooks.add("wrap",function(d){d.type==="entity"&&(d.attributes.title=d.content.replace(/&/,"&"))});Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(m,g){var x={};x["language-"+g]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[g]},x.cdata=/^<!\[CDATA\[|\]\]>$/i;var b={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:x}};b["language-"+g]={pattern:/[\s\S]+/,inside:Prism.languages[g]};var E={};E[m]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return m}),"i"),lookbehind:!0,greedy:!0,inside:b},Prism.languages.insertBefore("markup","cdata",E)}});Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(d,m){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+d+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[m,"language-"+m],inside:Prism.languages[m]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}});Prism.languages.html=Prism.languages.markup;Prism.languages.mathml=Prism.languages.markup;Prism.languages.svg=Prism.languages.markup;Prism.languages.xml=Prism.languages.extend("markup",{});Prism.languages.ssml=Prism.languages.xml;Prism.languages.atom=Prism.languages.xml;Prism.languages.rss=Prism.languages.xml;Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;(function(d){var m=/[*&][^\s[\]{},]+/,g=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,x="(?:"+g.source+"(?:[ ]+"+m.source+")?|"+m.source+"(?:[ ]+"+g.source+")?)",b=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),E=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function v(S,C){C=(C||"").replace(/m/g,"")+"m";var T=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return x}).replace(/<<value>>/g,function(){return S});return RegExp(T,C)}d.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return x})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return x}).replace(/<<key>>/g,function(){return"(?:"+b+"|"+E+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:v(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:v(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:v(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:v(E),lookbehind:!0,greedy:!0},number:{pattern:v(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:g,important:m,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},d.languages.yml=d.languages.yaml})(Prism);(function(d){var m=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;d.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+m.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+m.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+m.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+m.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:m,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},d.languages.css.atrule.inside.rest=d.languages.css;var g=d.languages.markup;g&&(g.tag.addInlined("style","css"),g.tag.addAttribute("style","css"))})(Prism);Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;const TextEditor=reactExports.forwardRef((b,x)=>{var E=b,{style:d,lang:m="plain"}=E,g=qt(E,["style","lang"]);return reactExports.createElement(Editor,Fe({highlight:v=>prismExports.highlight(v,prismExports.languages[m],m),padding:10,tabSize:4,insertSpaces:!0,ignoreTabKey:!1,style:Fe({fontFamily:"ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace",fontSize:"1em",flex:1,background:"#8883",borderBottom:"1px solid #bbb"},d)},g))});function TextEditorField(v){var S=v,{onChange:d,value:m,onBlur:g,setApi:x,lang:b}=S,E=qt(S,["onChange","value","onBlur","setApi","lang"]);x==null||x({getError(){return b==="js"&&m?try_(()=>new Function(m)&&null,$=>$.message):!1}});const[C,T]=reactExports.useState(m||"");return reactExports.createElement(TextField,Rt(Fe({multiline:!0,fullWidth:!0,value:C,InputProps:{inputComponent:TextEditorAsInput},inputProps:{lang:b},onChange($){T($.target.value)},onBlur($){g==null||g($),d($.target.value,{was:m,event:$})}},E),{onKeyDown($){var I;if((I=E.onKeyDown)==null||I.call(E,$),isCtrlKey($)==="Enter")return d(C,{was:m,event:$});if(!$.altKey||$.key!=="Tab")return;$.preventDefault();const k=document.querySelectorAll(focusableSelector),L=_.indexOf(k,$.target),D=k.length,A=(L+($.shiftKey?-1:1)+D)%D;k[A].focus(),console.debug(k[A])}}))}const TextEditorAsInput=reactExports.forwardRef((x,g)=>{var b=x,{onChange:d}=b,m=qt(b,["onChange"]);return reactExports.createElement(Box,{sx:{width:"100%",textarea:{outline:0}}},reactExports.createElement(TextEditor,Rt(Fe({ref:g,padding:2,style:{background:"initial",borderBottom:"initial"}},m),{onValueChange:E=>d({target:{value:E}}),onKeyDown(E){isCtrlKey(E)==="Enter"&&E.preventDefault()}})))}),DefaultConfiguration={fieldSeparator:",",lineSeparator:`
|
|
805
805
|
`,quote:'"'},CSV_INITAL_STATE={field:0,fieldOffset:0,line:0,lineOffset:0,quoted:!1,appendCell:!1,appendField:!1,appendRow:!1};class ParseError extends Error{constructor(m,g){super(`Invalid CSV at ${m}:${g}`)}}class Parser{constructor(m=DefaultConfiguration){Ko(this,"_rows",[]);Ko(this,"_row",[]);Ko(this,"_cell","");Ko(this,"_options",DefaultConfiguration);Ko(this,"_state",Fe({},CSV_INITAL_STATE));Ko(this,"_index",0);Ko(this,"_current","");Ko(this,"_previous","");Ko(this,"_quoteState",Fe({},CSV_INITAL_STATE));this._options=Object.assign({},DefaultConfiguration,m)}parse(m){for(this.reset(),this._index=0;this._index<m.length;this._index++)this._state.appendCell=!0,this._previous=this._current,this._current=m[this._index],this.handleNext();if(this._row.length>0&&(this.addField(this.fieldValue(this._cell),this._row,this._state),this.addRow(this._row,this._rows,this._state)),this._state.quoted)throw new ParseError(this._quoteState.line,this._quoteState.lineOffset);return this.makeImmutable(),this._rows}get rows(){return this._rows}get json(){if(this.rows.length>0){const m=this.rows[0].filter(g=>typeof g=="string");return Object.freeze(this.rows.filter((g,x)=>g&&x>0).map(g=>{const x={};return m.forEach((b,E)=>{x[b]=g[E]}),Object.freeze(x)}))}return Object.freeze([])}handleNext(){this.handleQuote()||this.handleFieldSeparator()||this.handleLineSeparator(),this.processState()}handleQuote(){return this._current===this._options.quote?(this._quoteState=Fe({},this._state),this._previous==="\\"?this.handleQuoteEscaped():this.handleQuoteNotEscaped(),!0):!1}handleQuoteEscaped(){this._cell=this._cell.slice(0,Math.max(0,this._cell.length-1))}handleQuoteNotEscaped(){if(this._cell.length===0||this._state.quoted)this._state.quoted=!this._state.quoted;else throw new ParseError(this._state.line,this._state.lineOffset);this._state.appendCell=!1}handleFieldSeparator(){return this._current===this._options.fieldSeparator?(this._state.quoted||(this._state.appendCell=!1,this._state.appendField=!0),!0):!1}handleLineSeparator(){return this._current===this._options.lineSeparator?(this._state.quoted||(this._state.appendCell=!1,this._state.appendField=!0,this._state.appendRow=!0),!0):!1}processState(){this._state.appendCell&&(this._cell+=this._current),this._state.appendField&&(this.addField(this.fieldValue(this._cell),this._row,this._state),this._cell=""),this._state.appendRow&&(this.addRow(this._row,this._rows,this._state),this._row=[]),this._state.lineOffset++,this._state.fieldOffset++}fieldValue(m){return m}addField(m,g,x){g.push(m),x.field++,x.fieldOffset=-1,x.appendField=!1}addRow(m,g,x){g.push(m),x.field=0,x.line++,x.lineOffset=-1,x.appendRow=!1}makeImmutable(){this.rows.forEach(m=>{m.forEach(g=>Object.freeze(g)),Object.freeze(m)}),Object.freeze(this._rows)}reset(){this._rows=[],this._row=[],this._cell="",this._state=Fe({},CSV_INITAL_STATE),this._index=0,this._current="",this._previous="",this._quoteState=Fe({},CSV_INITAL_STATE)}}function importAccountsCsv(d){return yt(this,null,function*(){selectFiles(m=>yt(this,null,function*(){const g=m==null?void 0:m[0];if(!g)return;const x=yield readFile(g);if(!x)return;const E=new Parser().parse(x.trim()),v={comp:NumberField,min:1,max:9,xs:6,typing:!0},S={skipFirstLines:0,usernameColumn:1,passwordColumn:2,groupColumn:3,redirectColumn:4,overwriteExistingAccounts:!1},C=yield formDialog$1({title:"Import accounts from CSV",dialogProps:{maxWidth:"sm"},values:S,form:k=>{const L=E[k.skipFirstLines||0],D=$(L,Fe(Fe({},S),k));return{save:{startIcon:reactExports.createElement(Upload),children:"Go"},fields:[reactExports.createElement(Box,{p:1},"Total lines:",E.length),{k:"skipFirstLines",comp:NumberField,max:E.length-1,typing:!0,md:6,helperText:reactExports.createElement(reactExports.Fragment,{},"First line: ",reactExports.createElement("code",{},L.join(", ")))},{k:"overwriteExistingAccounts",comp:BoolField,md:6},Rt(Fe({k:"usernameColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First username: ",D.u)}),Rt(Fe({k:"passwordColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First password: ",D.p)}),Rt(Fe({k:"groupColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First group: ",D.g)}),Rt(Fe({k:"redirectColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First redirect: ",D.r)})]}}});if(!C)return;const{close:T}=newDialog({title:"Importing...",Content(){const[k,L]=reactExports.useState(0),[D,A]=reactExports.useState();return reactExports.useEffect(()=>{let I=!1;return setTimeout(()=>yt(this,null,function*(){var j;if(I)return;let N=0,z=0,Y=C.skipFirstLines;const B=E.length-Y;try{let U=0;for(const W of E){if(I)return;if(Y){Y--;continue}const V=$(W,C);A(V),L(U++/B),yield apiCall("add_account",{username:V.u,belongs:(j=V.g)==null?void 0:j.split(","),redirect:V.r,overwrite:C.overwriteExistingAccounts}).then(()=>{if(V.p)return apiNewPassword(V.u,V.p)},K=>{if(K.code===HTTP_CONFLICT)return z++;N++})}}finally{T();const U=B-N-z,W="Results: "+[prefix("",N," failed"),prefix("",U," succeeded"),prefix("",z," skipped because already present")].filter(Boolean).join(", ");alertDialog$1(W,!U&&N?"error":N||z?"warning":"success"),d==null||d()}})),()=>{I=!0}},[]),reactExports.createElement(Box,{display:"flex",gap:2,alignItems:"center"},reactExports.createElement(IconProgress,{icon:Group,progress:k}),D==null?void 0:D.u)}});function $(k,L){return{u:k[L.usernameColumn-1],p:k[L.passwordColumn-1],g:k[L.groupColumn-1],r:k[L.redirectColumn-1]}}}),{multiple:!1,accept:".csv"})})}function AccountsPage(){const{username:d,accountsAsTree:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_accounts"),[E,v]=reactExports.useState([]),S=Array.isArray(E);reactExports.useEffect(()=>{Array.isArray(g==null?void 0:g.list)&&S&&v(E.filter(B=>g.list.find(j=>(j==null?void 0:j.username)===B)))},[g]);const C=reactExports.useMemo(()=>g&&_.sortBy(g.list,[B=>!B.isGroup,B=>!B.adminActualAccess,"username"]),[g]),T=S&&_.find(C,{username:E[0]}),$="md",k=useBreakpoint($),L=!(E.length>0)||!C?null:S&&E.length>1?reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},E.length+" selected"),reactExports.createElement(Btn$1,{onClick:Y,icon:Delete},"Remove")),reactExports.createElement(List,{},E.map(B=>reactExports.createElement(ListItem,{key:B},reactExports.createElement(ListItemText,{},B))))):with_(T||N(),B=>reactExports.createElement(AccountForm,{account:B,groups:C.filter(j=>j.isGroup).map(j=>j.username),addToBar:k&&[reactExports.createElement(Box,{flex:1}),account2icon(B,{fontSize:"large",sx:{p:1}}),reactExports.createElement(IconBtn,{icon:Close,title:"Close",onClick:z})],reload:x,done(j){v(k?[j]:[]),x(),toast$1("Account saved","success")}}));reactExports.useEffect(()=>{if(k||!L||!E.length)return;const{close:B}=newDialog({title:_.isString(E)?_.startCase(E):E.length>1?"Multiple selection":T?(T.isGroup?"Group: ":"User: ")+T.username:"?",Content:()=>L,onClose:z});return()=>void B()},[k,E,T]);const D={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"},[A,I]=useToggleButton("Show tree","Show list",()=>({icon:AccountTree}),m);return state$1.accountsAsTree=A,b||reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[$]:5,lg:4,xl:5},D),reactExports.createElement(Box,{display:"flex",flexWrap:"wrap",gap:2,mb:2,boxShadow:B=>`0px -8px 4px 10px ${B.palette.background.paper}`,sx:{position:"sticky",top:0,zIndex:2,backgroundColor:"background.paper",width:"fit-content"}},reactExports.createElement(MenuButton,{variant:"contained",startIcon:reactExports.createElement(PersonAdd),items:[{children:"user",onClick:()=>v("new-user")},{children:"group",onClick:()=>v("new-group")},{children:"from CSV",onClick:()=>importAccountsCsv(x)}]},"Add"),reloadBtn(x),I,(C==null?void 0:C.length)>0&&reactExports.createElement(Typography,{p:1},`${C.length} account(s)`)),!(C!=null&&C.length)&&reactExports.createElement(Alert,{severity:"info"},md`To access administration <u>remotely</u> you will need to create a user account with admin permission`),reactExports.createElement(TreeView,{multiSelect:!0,sx:{pr:4,pb:2,minWidth:"15em"},selected:S?E:[],defaultCollapseIcon:reactExports.createElement(ExpandMore),defaultExpandIcon:reactExports.createElement(ChevronRight),onNodeSelect(B,j){var U,W;(W=(U=B.target)==null?void 0:U.closest)!=null&&W.call(U,".MuiTreeItem-iconContainer")||v(j)}},C&&function B(j){return j.map(U=>{var W,V;return reactExports.createElement(TreeItem,{key:U.username,nodeId:U.username,label:reactExports.createElement(Box,{sx:{display:"flex",flexWrap:"wrap",padding:".2em 0",columnGap:".5em",alignItems:"center"}},account2icon(U),(U.disabled||U.canLogin===!1)&&iconTooltip(DoNotDisturb,U.disabled?"Disabled":"Disabled by its groups",U.disabled?void 0:{color:"text.secondary"}),(U.expire||U.days_to_live)&&reactExports.createElement(Schedule),U.adminActualAccess&&iconTooltip(MilitaryTech,"Can login into Admin"),U.username,!!((W=U.belongs)!=null&&W.length)&&reactExports.createElement(Box,{sx:{color:"text.secondary",fontSize:"small"}},"(",(V=U.belongs)==null?void 0:V.join(", "),")"))},A&&B(C.filter(K=>{var Q;return(Q=U.directMembers)==null?void 0:Q.includes(K.username)})))})}(A?C.filter(B=>!C.some(j=>{var U;return(U=j.members)==null?void 0:U.includes(B.username)})):C))),k&&L&&reactExports.createElement(Grid,Fe({item:!0,[$]:!0,maxWidth:"100%"},D),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},L))));function N(){return{username:"",hasPassword:E==="new-user",adminActualAccess:!1,invalidated:void 0,canLogin:!0,canChangePassword:!0,isGroup:E==="new-group",members:[],directMembers:[]}}function z(){v([])}function Y(){return yt(this,null,function*(){const B=_.without(E,d);if(E.length>B.length&&!(yield confirmDialog$1("You cannot ask to delete the account you are using. Continue with the rest?")))return;if(!B.length)return alertDialog$1("Nothing to delete","info");if(!(yield confirmDialog$1(`Delete ${B.length} item(s)?`)))return;const j=[];for(const U of B)(yield apiCall("del_account",{username:U}).then(()=>1,()=>0))||j.push(U);if(x(),j.length)return alertDialog$1("Following elements couldn't be deleted: "+j.join(", "),"error")})}}function account2icon(d,m={}){return reactExports.createElement(d.isGroup?Group:Person,m)}const ACCEPT_LINK="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept";function FileForm({file:d,addToBar:m,statusApi:g,accounts:x,saved:b,isSideBreakpoint:E}){var ue,fe,ye;const ae=d,{parent:v,children:S,isRoot:C,byMasks:T}=ae,$=qt(ae,["parent","children","isRoot","byMasks"]),[k,L]=reactExports.useState($);reactExports.useEffect(()=>{L(Object.assign(objSameKeys(defaultPerms,()=>null),$))},[d]);const D=reactExports.useMemo(()=>{let ve=d.parent;for(;ve;){if(ve.default!=null)return ve.default;ve=ve.parent}},[d]),{source:A}=d,I=d.type==="folder",N=!d.type&&A&&d.size<0,z=k.url!==void 0,Y=A!==void 0,B=Y&&I,j=useBreakpoint("xl"),U=!z&&(j||Y),W=!z&&j||Y&&!B,V=d.accept>""||I&&((fe=d.can_upload)!=null?fe:(ue=d.inherited)==null?void 0:ue.can_upload),K=I,Q=useDialogBarColors(),{movingFile:Z}=useSnapState$1(),re=!Y&&reactExports.createElement(Box,{color:"warning.main",component:"span"},"Works only on folders with disk source! "),ie={can_read:!z,can_see:!0,can_archive:!z,can_list:I,can_upload:I,can_delete:I},oe=!k.icon,ee=k.icon&&!k.icon.includes("."),X=A&&basename(A),ce=X===k.name;return reactExports.createElement(Form,{values:k,set(ve,Ee){L(Te=>(Ee==="source"&&ce&&(Te.name=basename(ve)),Rt(Fe({},Te),{[Ee]:ve})))},barSx:Fe({gap:2,width:"100%"},Q),stickyBar:!0,addToBar:[I&&!E&&reactExports.createElement(AddVfsBtn,{variant:"outlined"},"Add"),reactExports.createElement(IconBtn,{icon:ContentCut,disabled:C||Z===d.id,title:"Cut (you can also use drag & drop to move items)","aria-label":"Cut",onClick(){state$1.movingFile=d.id,alertDialog$1(reactExports.createElement(Box,{},"Now that this is marked for moving, click on the destination folder, and then the paste button ",reactExports.createElement(ContentPaste)),"info")}}),Z&&reactExports.createElement(IconBtn,{icon:ContentPaste,disabled:d.type!=="folder"||d.id.startsWith(Z)||d.id===Z.replace(/[^/]+\/?$/,""),title:Z,onClick(){return state$1.movingFile="",moveVfs(Z,d.id)}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Delete",confirm:`Delete ${d.name}?`,disabled:C,onClick:()=>apiCall("del_vfs",{uris:[d.id]}).then(({errors:[ve]})=>{ve?alertDialog$1(xlate(ve,HTTP_MESSAGES),"error"):reloadVfs([])})}),...wantArray(m)],onError:alertDialog$1,save:Rt(Fe({},propsForModifiedValues(isModifiedConfig(k,$))),{onClick(){return yt(this,null,function*(){const ve=_.omit(k,["birthtime","mtime","size","id"]);ve.masks||(ve.masks=null),yield apiCall("set_vfs",{uri:k.id,props:ve}),ve.name!==d.name&&(state$1.selectedFiles[0].id=d.parent.id+ve.name+(I?"/":"")),reloadVfs(),b()})}}),fields:[C?reactExports.createElement(Alert,{severity:"info"},"This is the Home folder, the root of your shared files. Options set here will be applied to all files."):I&&Y&&reactExports.createElement(Alert,{severity:"info"},'To set permissions on individual items in folder, add them by clicking Add button, and then "from disk"'),Rt(Fe({k:"name",required:!0,xl:!0,helperText:Y&&"You can decide a name that's different from the one on your disk"},C&&{disabled:!0,value:"Home folder"}),{end:X&&!ce&&reactExports.createElement(Btn$1,{icon:RestartAlt,title:"Reset to same name on disk",onClick:()=>L(Rt(Fe({},k),{name:X}))})}),z?{k:"url",label:"URL",lg:12,xl:8,required:!0}:{k:"source",label:"Disk source",xl:!0,comp:FileField,files:N||!I,folders:N||I,placeholder:"none",helperText:k.source?I?"Files from this path on disk will be listed, but you can add more":void 0:"If you enter a path here, its content will be listed. Leaving this empty, makes this folder fully virtual."},{k:"id",comp:LinkField,statusApi:g,xs:12},{k:"order",comp:NumberField,min:-1e5,max:1e5,placeholder:"default",sm:4,helperText:wikiLink("Virtual-file-system#order","To force position")},{k:"iconType",comp:SelectField,options:["default","file","embedded"],value:k.icon?ee?"embedded":"file":"default",fromField:ve=>L(Rt(Fe({},k),{icon:ve==="default"?"":ve==="file"?"select.a.file":Object.keys(SYS_ICONS)[0]})),xs:!0,sm:oe?8:!0},!oe&&Fe({k:"icon",xs:8,sm:4},ee?{comp:SelectField,options:_.map(_.uniqBy(_.map(SYS_ICONS,(ve,Ee)=>{var Te;return[Ee,ve[0],(Te=ve[1])!=null?Te:Ee]}),ve=>ve[2]),([ve,Ee])=>({value:ve,label:reactExports.createElement(Flex$1,{gap:".5em"},hIcon(ve),hIcon(Ee)," ",ve)})),helperText:"Second icon you see is the fallback"}:{label:"Icon file",placeholder:"default",comp:FileField,fileMask:IMAGE_FILEMASK}),pe("can_read","Who can see but not download will be asked to login"),pe("can_archive","Should this be included when user downloads as ZIP"),pe("can_list","Permission to requests the list of a folder. The list will include only things you can see.",{contentText:"subfolders"}),pe("can_delete",[re,"Those who can delete can also rename and cut/move"]),pe("can_upload",re,{contentText:"subfolders"}),pe("can_see",["See this item in the list. ",wikiLink("Permissions","More help.")]),z&&{k:"target",comp:BoolField,sm:!0,label:"Open in new browser",fromField:ve=>ve?"_blank":null,toField:ve=>ve>""},W&&{k:"size",comp:DisplayField,sm:6,lg:4,toField:formatBytes},U&&{k:"birthtime",comp:DisplayField,sm:6,lg:W&&4,label:"Created",toField:formatTimestamp$1},U&&{k:"mtime",comp:DisplayField,sm:6,lg:W&&4,label:"Modified",toField:formatTimestamp$1},V&&{k:"accept",label:"Accept on upload",placeholder:"anything",xl:K?4:12,helperText:reactExports.createElement("span",{},"Not enforced, just hinting the browser. ",reactExports.createElement(Link$1,{href:ACCEPT_LINK,target:"_blank"},"Example: .zip"))},K&&{k:"default",comp:BoolField,xl:V?8:12,label:"Serve as web-page if index.html is found"+(D&&k.default==null?" (inherited)":""),value:(ye=k.default)!=null?ye:D,toField:Boolean,fromField:ve=>ve&&!D?"index.html":ve?null:!1,helperText:md("...instead of showing list of files")},{k:"comment",multiline:!0,xl:!0},I&&{k:"masks",multiline:!0,xl:6,toField:YAML.stringify,fromField:ve=>ve?YAML.parse(ve):void 0,comp:TextEditorField,lang:"yaml",helperText:["Special field, leave empty unless you know what you are doing. YAML syntax. ",wikiLink("Masks-field","(examples)")]}]});function pe(ve,Ee,Te={}){var Le,He,De,ke;if(!ie[ve])return null;const Ie=[ve,...onlyTruthy(_.map(ie,(we,Ge)=>!we&&Ge))],Pe=_.difference(Object.keys(defaultPerms),Ie);let Ce=(He=(Le=d.inherited)==null?void 0:Le[ve])!=null?He:defaultPerms[ve];for(;typeof Ce=="string"&&_.get(ie,Ce)===!1;)Ce=(ke=(De=_.get(k,Ce))!=null?De:_.get(d.inherited,Ce))!=null?ke:_.get(defaultPerms,Ce);return Fe({comp:WhoField,k:ve,sm:6,lg:12,xl:4,parent:v,accounts:x,helperText:Ee,isDir:I,otherPerms:Pe.map(we=>({value:we,label:who2desc(we)})),label:"Who can "+perm2word(ve),inherit:Ce,byMasks:T==null?void 0:T[ve],fromField:we=>we!=null?we:null},Te)}}function perm2word(d){return xlate(d.split("_")[1],{read:"download",archive:"zip",list:"access list"})}function WhoField(A){var I=A,{value:d,onChange:m,parent:g,inherit:x,accounts:b,helperText:E,otherPerms:v,byMasks:S,hideValues:C,isChildren:T,isDir:$,contentText:k="folder content",setApi:L}=I,D=qt(I,["value","onChange","parent","inherit","accounts","helperText","otherPerms","byMasks","hideValues","isChildren","isDir","contentText","setApi"]);const N=who2desc(S!=null?S:x)+prefix(" (",S!==void 0?"from masks":g!==void 0?"as parent folder":"default",")"),z=isWhoObject(d),Y=z?d.this:d,B=reactExports.useMemo(()=>onlyTruthy([{value:null,label:N},{value:!0},{value:!1},{value:"*"},...v,{value:[],label:"Select accounts"}].map(V=>!(C!=null&&C.includes(V.value))&&Fe({label:who2desc(V.value)},V))),[x,g,Y,...wantArray(C)]),j=500,U=Array.isArray(Y);return reactExports.createElement(Box,{sx:{borderRight:z?"8px solid #8884":void 0,transition:`all ${j}ms`}},reactExports.createElement(SelectField,Rt(Fe({},D),{value:U?[]:Y!=null?Y:null,onChange(V,{event:K}){m(z?W(Rt(Fe({},d),{this:V!=null?V:void 0})):V!=null?V:void 0,{was:d,event:K})},options:B})),reactExports.createElement(Collapse,{in:U,timeout:j},U&&reactExports.createElement(MultiSelectField,Rt(Fe({label:b!=null&&b.length?"Accounts "+D.label:"You didn't create any account yet",value:Y,onChange:m,options:(b==null?void 0:b.map(V=>({value:V.username,label:V.username,a:V})))||[],placeholder:"none"},Y.length===0&&{helperText:"Select some account",error:!0}),{renderOption:V=>{var K;return reactExports.createElement("span",{},((K=V.a)==null?void 0:K.isGroup)&&account2icon(V.a)," ",V.label)}}))),reactExports.createElement(FormHelperText,{},E,!T&&$&&reactExports.createElement(LinkBtn,{sx:{display:"block",mt:-.5},onClick(V){m(z?Y:{this:Y,children:Y==null?!x:void 0},{was:d,event:V})}},z?"Set same permission for ":"Set different permission for ",k)),!T&&reactExports.createElement(Collapse,{in:z,timeout:j},reactExports.createElement(WhoField,{label:"Permission for "+k,parent:g,inherit:x,accounts:b,otherPerms:v,isDir:$,value:z?d==null?void 0:d.children:void 0,isChildren:!0,hideValues:[Y!=null?Y:x,Y],onChange(V,{event:K}){z&&m(W(Rt(Fe({},d),{children:V})),{was:d,event:K})}})));function W(V){return V.this===V.children?V.this:V}}function who2desc(d){return d===!1?"No one":d===!0?"Anyone":d==="*"?"Any account login":Array.isArray(d)?d.join(", "):typeof d=="string"?`As "can ${perm2word(d)}"`:"*UNKNOWN*"+JSON.stringify(d)}function LinkField({value:d,statusApi:m}){const{reload:g,error:x}=m,b=useRequestRender();reactExports.useEffect(()=>m.sub(b),[]);const E=m.getData(),v=E&&(E.urls.https||E.urls.http||[E.base_url]),S=try_(()=>normalizeHost(new URL(E==null?void 0:E.baseUrl).host)),C=reactExports.useMemo(()=>S&&_.find(E.roots,(D,A)=>matches(S,A)),[E]);C&&d&&(d=d.indexOf(C)===1?d.slice(C.length):void 0);const T=prefix((E==null?void 0:E.baseUrl)||"",d),$=reactExports.useMemo(()=>reactExports.forwardRef((D,A)=>reactExports.createElement(Link$1,Rt(Fe({ref:A},D),{href:T,style:{height:"auto",overflow:"hidden",textOverflow:"ellipsis"},target:"frontend"}),T)),[T]);return reactExports.createElement(Box,{display:"flex"},S?v?reactExports.createElement(DisplayField,{label:"Link",className:"maskInTests",value:T||`outside of configured main address (${S})`,error:x,InputProps:T?{inputComponent:$}:void 0,end:reactExports.createElement(Box,{},reactExports.createElement(IconBtn,{icon:ContentCopy,title:"Copy",disabled:!T,onClick:()=>copyTextToClipboard(T)}),reactExports.createElement(IconBtn,{icon:QrCode2,title:"QR Code",onClick:k,disabled:!T}),reactExports.createElement(IconBtn,{icon:Edit,title:"Change",onClick(){changeBaseUrl().then(g)}}))}):"error":"Invalid baseUrl");function k(){newDialog({title:"QR Code",dialogProps:{sx:{bgcolor:"background.default",border:"1px solid"}},Content(){const D=useTheme$1();return reactExports.createElement("canvas",{ref:A=>A&&L(A,T,D.palette.text.primary),style:{width:"100%"}})}})}function L(D,A,I){return yt(this,null,function*(){try{QrCreator$1.render({text:A,radius:0,ecLevel:"H",fill:I,background:null,size:300},D)}catch(N){console.error("Error generating QR code:",N)}})}}function changeBaseUrl(){return yt(this,null,function*(){return new Promise(d=>yt(this,null,function*(){const m=yield apiCall("get_status"),{base_url:g,roots:x}=yield apiCall("get_config",{only:[CFG.base_url,CFG.roots]}),b=m.urls.https||m.urls.http,E=Object.keys(x).map(C=>C.split("|")).flat().filter(C=>!/[*?]/.test(C)),v=splitAt("//",b[0])[0]+"//";b.push(..._.difference(E.map(C=>v+C),b));const{close:S}=newDialog({title:"Main address",Content(){const[C,T]=reactExports.useState(g||""),$=new URL(C||b[0]).protocol+"//",k=b.includes(C)?"":C.slice($.length),L=reactExports.createElement(Check,{sx:{ml:2}});return reactExports.createElement(Box,{display:"flex",flexDirection:"column"},reactExports.createElement(Box,{mb:2},"Choose a main address for your links"),reactExports.createElement(MenuList,{},reactExports.createElement(MenuItem,{selected:!C,onClick:()=>D("")},"Automatic",!C&&L),b.map(I=>reactExports.createElement(MenuItem,{key:I,selected:I===C,onClick:()=>D(I)},I,I===C&&L))),reactExports.createElement(StringField,{label:"Custom IP or domain",helperText:md(`You can type any address but *you* are responsible to make the address work.
|
|
806
|
-
This functionality is just to help you copy the link in case you have a domain or a complex network configuration.`),value:k,onChange:I=>D(prefix($,I)),start:reactExports.createElement(SelectField,{value:$,onChange:I=>k?D(I+k):toast$1("Enter domain first"),options:["http://","https://"],size:"small",variant:"standard",sx:{"& .MuiSelect-select":{pt:"1px",pb:0}}}),sx:{mt:2}}),reactExports.createElement(Box,{mt:2,textAlign:"right"},reactExports.createElement(Btn$1,{icon:Save,children:"Save",onClick(){return yt(this,null,function*(){C!==g&&(yield apiCall("set_config",{values:{[CFG.base_url]:C.replace(/\/$/,"")}})),S(),d(C)})}})));function D(I){I.endsWith("/")&&(I=I.slice(0,-1)),T(I)}}})}))})}let selectOnReload,exposeVfsLoading;function VfsPage({setTitleSide:d}){var V,K,Q,Z;const[m]=reactExports.useState(()=>new Map),{vfs:g,selectedFiles:x,movingFile:b}=useSnapState$1(),{data:E,reload:v,element:S,loading:C}=useApiEx("get_vfs");exposeVfsLoading=C,reactExports.useEffect(()=>{g||v()},[g,v]);const{data:T}=useApiEx("get_config",{only:[CFG.force_address,CFG.base_url]}),$="md",k=useBreakpoint($),L=useApiEx("get_status"),{data:D}=L,A=reactExports.useMemo(()=>{var ee;const re=T==null?void 0:T[CFG.force_address],ie=(ee=(D==null?void 0:D.urls.https)||(D==null?void 0:D.urls.http))==null?void 0:ee.filter(X=>{if(!re)return!0;const ce=normalizeHost(new URL(X).host);return Object.keys(D.roots).some(pe=>matches(ce,pe))}),oe=re?T==null?void 0:T[CFG.base_url]:D==null?void 0:D.baseUrl;return oe&&ie&&!ie.includes(oe)&&ie.unshift(oe),ie},[D,T]),I=useApiEx("get_accounts"),N=reactExports.useMemo(()=>{var re;return _.sortBy((re=I==null?void 0:I.data)==null?void 0:re.list,"username")},[I.data]),z=reactExports.useRef(_.noop);reactExports.useEffect(()=>{var re;b===((re=x[0])==null?void 0:re.id)&&z.current()},[b]);const Y=!((K=(V=E==null?void 0:E.root)==null?void 0:V.children)!=null&&K.length)&&!((Q=E==null?void 0:E.root)!=null&&Q.source),B=reactExports.useMemo(()=>Y?reactExports.createElement(Alert,{severity:"warning",children:reactExports.createElement(reactExports.Fragment,{},"Add something to your virtual file system — click the ",reactExports.createElement(Add),"button, or set a source for the Home folder")}):(A==null?void 0:A.length)>0&&reactExports.createElement(Alert,{severity:"info",children:["Your shared files can be browsed from ",reactExports.createElement("span",{className:HIDE_IN_TESTS,key:0},reactJoin(" or ",A.slice(0,3).map(re=>reactExports.createElement(Link$1,{href:re,target:"frontend"},re))))]}),[Y,A]);d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},"If you rename or delete here, it's virtual, and only affects what is presented to the users"),B),[B]));const j=(x==null?void 0:x.length)<2&&x[0],U=I.element||!g||!x.length?null:j?reactExports.createElement(FileForm,{key:j.id,isSideBreakpoint:k,addToBar:k&&reactExports.createElement(Box,{flex:1,textAlign:"right",mr:1,color:"#8883"},vfsNodeIcon(j)),statusApi:L,saved:()=>z.current(),accounts:N!=null?N:[],file:j}):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},x.length+" selected"),reactExports.createElement(Button,{onClick:deleteFiles,startIcon:reactExports.createElement(Delete)},"Remove")),reactExports.createElement(List,{dense:!0,disablePadding:!0},x.map(re=>reactExports.createElement(ListItem,{key:re.id},reactExports.createElement(ListItemText,{primary:re.name,secondary:re.source})))));if(reactExports.useEffect(()=>{if(k||!U||!x.length)return;const re=[""];{let oe=j&&j.parent;for(;oe&&!oe.isRoot;)re.push(oe.name),oe=oe.parent}const{close:ie}=newDialog({title:x.length>1?"Multiple selection":reactExports.createElement(Flex$1,{},vfsNodeIcon(x[0]),reactExports.createElement(Flex$1,{flexWrap:"wrap",gap:"0 0.5em"},x[0].name||"Home",reactExports.createElement(Box,{component:"span",color:"text.secondary"},re.join(" /")))),dialogProps:{sx:{justifyContent:"flex-end"}},Content:()=>U,onClose(){state$1.selectedFiles=[]}});return z.current=ie,()=>void ie()},[k,(Z=_.last(x))==null?void 0:Z.id]),reactExports.useEffect(()=>{if(state$1.vfs=void 0,!E)return;m.clear();const{root:re}=E;if(!re)return;re.isRoot=!0,oe(re),state$1.vfs=re,state$1.selectedFiles=ie()||onlyTruthy(state$1.selectedFiles.map(ee=>m.get(ee.id)));function ie(){selectOnReload&&z.current();const ee=selectOnReload&&onlyTruthy(selectOnReload.map(X=>m.get(X)));return selectOnReload=void 0,ee}function oe(ee,X="/",ce=void 0){if(ee.parent=ce,ee.id=ee.isRoot?"/":prefix(X,pathEncode(ee.name),ee.type==="folder"?"/":""),m.set(ee.id,ee),!!ee.children){ee.children=_.sortBy(ee.children,["type",pe=>{var ae;return(ae=pe.name)==null?void 0:ae.toLocaleLowerCase()}]);for(const pe of ee.children)oe(pe,ee.id,ee)}}},[E,m]),S)return m.clear(),S;const W={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"};return reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[$]:5,lg:6,xl:5},W),m.size>0&&reactExports.createElement(VfsTree,{id2node:m,statusApi:L})),k&&U&&reactExports.createElement(Grid,Fe({item:!0,[$]:!0,maxWidth:"100%"},W),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},U))))}function reloadVfs(d){return selectOnReload=d,state$1.vfs=void 0,wait(100).then(()=>exposeVfsLoading)}function deleteFiles(){return yt(this,null,function*(){const d=state$1.selectedFiles;if(d.length&&(yield confirmDialog$1(`Delete ${d.length} item(s)?`)))try{const m=d.map(b=>b.id).sort();_.remove(m,(b,E)=>E&&_.findLastIndex(m,v=>b.startsWith(v),E-1)!==-1),_.pull(m,"/");const{errors:g}=yield apiCall("del_vfs",{uris:m}),x=m.filter((b,E)=>g[E]);if(x.length)return alertDialog$1("Following elements couldn't be deleted: "+x.join(", "),"error");reloadVfs()}catch(m){yield alertDialog$1(m)}})}const FolderIcon=Folder,FileIcon=InsertDriveFileOutlined;let once=!0;function VfsTree({id2node:d,statusApi:m}){var A;const{vfs:g,selectedFiles:x,expanded:b}=useSnapState$1(),E=reactExports.useRef(),v=reactExports.useCallback(function({node:I}){var V,Q,Z,re;let{id:N,name:z,isRoot:Y}=I;const B=I.type==="folder",j=reactExports.useRef();return Y&&j.current&&((V=j.current.firstElementChild)==null||V.classList.toggle("Mui-selected",!(x.length&&!_.find(x,{id:"/"})))),reactExports.createElement(TreeItem,{ref(ie){ie==null||ie.addEventListener("focusin",oe=>oe.stopImmediatePropagation()),j.current=ie},onDoubleClick:W,label:reactExports.createElement(Box,{draggable:!Y,onDragStart(){E.current=N},onDragOver(ie){if(!B)return;const oe=E.current;oe!=null&&oe.startsWith(N)&&!oe.slice(N.length+1,-1).includes("/")||ie.preventDefault()},onDrop(){return yt(this,null,function*(){const ie=E.current;ie&&(yield confirmDialog$1(`Moving ${ie} under ${N}`))&&moveVfs(ie,N)})},sx:{display:"flex",gap:".5em",minHeight:"1.8em",pt:".2em"}},reactExports.createElement(Box,{display:"flex",flex:0},vfsNodeIcon(I),reactExports.createElement(Box,{sx:{flex:0,ml:"2px",my:"2px","&>*":{fontSize:"87%",opacity:.6,mt:"-2px"},display:"grid",gridAutoFlow:"column",gridTemplateRows:"auto auto",height:"1em"}},I.can_delete!==void 0&&iconTooltip(Delete,"Delete permission"),I.can_upload!==void 0&&iconTooltip(Upload,"Upload permission"),!Y&&!I.source&&!I.url&&iconTooltip(Cloud,"Virtual (no source)"),U(I.can_see)&&iconTooltip(RemoveRedEye,"Restrictions on who can see"),U(I.can_read)&&iconTooltip(Lock,"Restrictions on who can download"),I.default&&iconTooltip(Web,"Show as web-page"),I.masks&&iconTooltip(TheaterComedy,"Masks"),I.size===-1&&iconTooltip(HighlightOff,"Source not found"),with_(_.findKey((Q=m.data)==null?void 0:Q.roots,ie=>ie===N.slice(1)),ie=>ie&&iconTooltip(Home,`home for ${ie}`)))),Y?"Home folder":z),collapseIcon:reactExports.createElement(ExpandMore,{onClick:W}),expandIcon:reactExports.createElement(ChevronRight,{onClick:W}),nodeId:N},Y&&!((Z=I.children)!=null&&Z.length)?reactExports.createElement(TreeItem,{nodeId:"?",label:reactExports.createElement("i",{},"nothing here")}):(re=I.children)==null?void 0:re.map(ie=>reactExports.createElement(v,{key:ie.id,node:ie})));function U(ie){return ie!==void 0&&ie!==!0}function W(ie){const oe=state$1.expanded;state$1.expanded=oe.includes(N)?oe.filter(ee=>ee!==N):[...oe,N],ie.preventDefault(),ie.stopPropagation()}},[m.data]),S=reactExports.useRef(null),C=b.length===d.size,T=["/",...((A=g==null?void 0:g.children)==null?void 0:A.length)===1?[g.children[0].id]:[]];once&&(once=!1,state$1.expanded=T);const[$,k]=useToggleButton("Collapse all","Expand all",I=>({icon:I?UnfoldLess:UnfoldMore,sx:{rotate:I?0:"180deg"},onClick(){state$1.expanded=C?T:Array.from(d.keys())}}),C);reactExports.useEffect(()=>{state$1.expanded=_.uniq(state$1.expanded.concat(state$1.selectedFiles.map(I=>{var N;return((N=I.parent)==null?void 0:N.id)||""})))},[state$1.vfs]);const L="vfs",D=x[0];return reactExports.useEffect(()=>{var I;return(I=document.getElementById(`${L}-${D==null?void 0:D.id}`))==null?void 0:I.scrollIntoView({block:"nearest",behavior:"instant"})},[D]),reactExports.createElement(Flex$1,{flexDirection:"column",alignItems:"stretch",flex:1},reactExports.createElement(Flex$1,{mb:1,flexWrap:"wrap",gap:[1,2]},reactExports.createElement(Typography,{variant:"h6"},"Virtual File System"),reactExports.createElement(VfsMenuBar,{statusApi:m,add:k})),g&&reactExports.createElement(TreeView,{ref:S,expanded:toMutable(b),selected:x.map(I=>I.id),multiSelect:!0,id:L,sx:{height:0,flex:"1 1 auto",overflowX:"auto",maxWidth:S.current&&`calc(100vw - ${16+S.current.offsetLeft}px)`,"& ul":{borderLeft:"1px dashed #444",marginLeft:"15px",paddingLeft:"15px"}},onNodeSelect(I,N){typeof N!="string"&&(state$1.selectedFiles=onlyTruthy(N.map(z=>d.get(z))))}},reactExports.createElement(v,{node:g})))}function moveVfs(d,m){return apiCall("move_vfs",{from:d,parent:m}).then(()=>(reloadVfs([m+d.slice(1+d.lastIndexOf("/",d.length-2))]),!0),alertDialog$1)}function vfsNodeIcon(d){return d.isRoot?iconTooltip(Home,"home, or root if you like"):d.type==="folder"?iconTooltip(FolderIcon,"Folder"):d.url?iconTooltip(Link,"Web-link"):iconTooltip(FileIcon,"File")}var safeIsNaN=Number.isNaN||function(m){return typeof m=="number"&&m!==m};function isEqual(d,m){return!!(d===m||safeIsNaN(d)&&safeIsNaN(m))}function areInputsEqual(d,m){if(d.length!==m.length)return!1;for(var g=0;g<d.length;g++)if(!isEqual(d[g],m[g]))return!1;return!0}function memoizeOne(d,m){m===void 0&&(m=areInputsEqual);var g,x=[],b,E=!1;function v(){for(var S=[],C=0;C<arguments.length;C++)S[C]=arguments[C];return E&&g===this&&m(S,x)||(b=d.apply(this,S),E=!0,g=this,x=S),b}return v}var hasNativePerformanceNow=typeof performance=="object"&&typeof performance.now=="function",now=hasNativePerformanceNow?function(){return performance.now()}:function(){return Date.now()};function cancelTimeout(d){cancelAnimationFrame(d.id)}function requestTimeout(d,m){var g=now();function x(){now()-g>=m?d.call(null):b.id=requestAnimationFrame(x)}var b={id:requestAnimationFrame(x)};return b}var size=-1;function getScrollbarSize(d){if(d===void 0&&(d=!1),size===-1||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",document.body.appendChild(m),size=m.offsetWidth-m.clientWidth,document.body.removeChild(m)}return size}var cachedRTLResult=null;function getRTLOffsetType(d){if(d===void 0&&(d=!1),cachedRTLResult===null||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",g.direction="rtl";var x=document.createElement("div"),b=x.style;return b.width="100px",b.height="100px",m.appendChild(x),document.body.appendChild(m),m.scrollLeft>0?cachedRTLResult="positive-descending":(m.scrollLeft=1,m.scrollLeft===0?cachedRTLResult="negative":cachedRTLResult="positive-ascending"),document.body.removeChild(m),cachedRTLResult}return cachedRTLResult}var IS_SCROLLING_DEBOUNCE_INTERVAL$1=150,defaultItemKey$1=function(m,g){return m};function createListComponent(d){var m,g=d.getItemOffset,x=d.getEstimatedTotalSize,b=d.getItemSize,E=d.getOffsetForIndexAndAlignment,v=d.getStartIndexForOffset,S=d.getStopIndexForStartIndex,C=d.initInstanceProps,T=d.shouldResetStyleCacheOnItemSizeChange,$=d.validateProps;return m=function(k){_inheritsLoose(L,k);function L(A){var I;return I=k.call(this,A)||this,I._instanceProps=C(I.props,_assertThisInitialized(I)),I._outerRef=void 0,I._resetIsScrollingTimeoutId=null,I.state={instance:_assertThisInitialized(I),isScrolling:!1,scrollDirection:"forward",scrollOffset:typeof I.props.initialScrollOffset=="number"?I.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},I._callOnItemsRendered=void 0,I._callOnItemsRendered=memoizeOne(function(N,z,Y,B){return I.props.onItemsRendered({overscanStartIndex:N,overscanStopIndex:z,visibleStartIndex:Y,visibleStopIndex:B})}),I._callOnScroll=void 0,I._callOnScroll=memoizeOne(function(N,z,Y){return I.props.onScroll({scrollDirection:N,scrollOffset:z,scrollUpdateWasRequested:Y})}),I._getItemStyle=void 0,I._getItemStyle=function(N){var z=I.props,Y=z.direction,B=z.itemSize,j=z.layout,U=I._getItemStyleCache(T&&B,T&&j,T&&Y),W;if(U.hasOwnProperty(N))W=U[N];else{var V=g(I.props,N,I._instanceProps),K=b(I.props,N,I._instanceProps),Q=Y==="horizontal"||j==="horizontal",Z=Y==="rtl",re=Q?V:0;U[N]=W={position:"absolute",left:Z?void 0:re,right:Z?re:void 0,top:Q?0:V,height:Q?"100%":K,width:Q?K:"100%"}}return W},I._getItemStyleCache=void 0,I._getItemStyleCache=memoizeOne(function(N,z,Y){return{}}),I._onScrollHorizontal=function(N){var z=N.currentTarget,Y=z.clientWidth,B=z.scrollLeft,j=z.scrollWidth;I.setState(function(U){if(U.scrollOffset===B)return null;var W=I.props.direction,V=B;if(W==="rtl")switch(getRTLOffsetType()){case"negative":V=-B;break;case"positive-descending":V=j-Y-B;break}return V=Math.max(0,Math.min(V,j-Y)),{isScrolling:!0,scrollDirection:U.scrollOffset<V?"forward":"backward",scrollOffset:V,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._onScrollVertical=function(N){var z=N.currentTarget,Y=z.clientHeight,B=z.scrollHeight,j=z.scrollTop;I.setState(function(U){if(U.scrollOffset===j)return null;var W=Math.max(0,Math.min(j,B-Y));return{isScrolling:!0,scrollDirection:U.scrollOffset<W?"forward":"backward",scrollOffset:W,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._outerRefSetter=function(N){var z=I.props.outerRef;I._outerRef=N,typeof z=="function"?z(N):z!=null&&typeof z=="object"&&z.hasOwnProperty("current")&&(z.current=N)},I._resetIsScrollingDebounced=function(){I._resetIsScrollingTimeoutId!==null&&cancelTimeout(I._resetIsScrollingTimeoutId),I._resetIsScrollingTimeoutId=requestTimeout(I._resetIsScrolling,IS_SCROLLING_DEBOUNCE_INTERVAL$1)},I._resetIsScrolling=function(){I._resetIsScrollingTimeoutId=null,I.setState({isScrolling:!1},function(){I._getItemStyleCache(-1,null)})},I}L.getDerivedStateFromProps=function(I,N){return validateSharedProps$1(I,N),$(I),null};var D=L.prototype;return D.scrollTo=function(I){I=Math.max(0,I),this.setState(function(N){return N.scrollOffset===I?null:{scrollDirection:N.scrollOffset<I?"forward":"backward",scrollOffset:I,scrollUpdateWasRequested:!0}},this._resetIsScrollingDebounced)},D.scrollToItem=function(I,N){N===void 0&&(N="auto");var z=this.props,Y=z.itemCount,B=z.layout,j=this.state.scrollOffset;I=Math.max(0,Math.min(I,Y-1));var U=0;if(this._outerRef){var W=this._outerRef;B==="vertical"?U=W.scrollWidth>W.clientWidth?getScrollbarSize():0:U=W.scrollHeight>W.clientHeight?getScrollbarSize():0}this.scrollTo(E(this.props,I,N,j,this._instanceProps,U))},D.componentDidMount=function(){var I=this.props,N=I.direction,z=I.initialScrollOffset,Y=I.layout;if(typeof z=="number"&&this._outerRef!=null){var B=this._outerRef;N==="horizontal"||Y==="horizontal"?B.scrollLeft=z:B.scrollTop=z}this._callPropsCallbacks()},D.componentDidUpdate=function(){var I=this.props,N=I.direction,z=I.layout,Y=this.state,B=Y.scrollOffset,j=Y.scrollUpdateWasRequested;if(j&&this._outerRef!=null){var U=this._outerRef;if(N==="horizontal"||z==="horizontal")if(N==="rtl")switch(getRTLOffsetType()){case"negative":U.scrollLeft=-B;break;case"positive-ascending":U.scrollLeft=B;break;default:var W=U.clientWidth,V=U.scrollWidth;U.scrollLeft=V-W-B;break}else U.scrollLeft=B;else U.scrollTop=B}this._callPropsCallbacks()},D.componentWillUnmount=function(){this._resetIsScrollingTimeoutId!==null&&cancelTimeout(this._resetIsScrollingTimeoutId)},D.render=function(){var I=this.props,N=I.children,z=I.className,Y=I.direction,B=I.height,j=I.innerRef,U=I.innerElementType,W=I.innerTagName,V=I.itemCount,K=I.itemData,Q=I.itemKey,Z=Q===void 0?defaultItemKey$1:Q,re=I.layout,ie=I.outerElementType,oe=I.outerTagName,ee=I.style,X=I.useIsScrolling,ce=I.width,pe=this.state.isScrolling,ae=Y==="horizontal"||re==="horizontal",ue=ae?this._onScrollHorizontal:this._onScrollVertical,fe=this._getRangeToRender(),_e=fe[0],ye=fe[1],ve=[];if(V>0)for(var Ee=_e;Ee<=ye;Ee++)ve.push(reactExports.createElement(N,{data:K,key:Z(Ee,K),index:Ee,isScrolling:X?pe:void 0,style:this._getItemStyle(Ee)}));var Te=x(this.props,this._instanceProps);return reactExports.createElement(ie||oe||"div",{className:z,onScroll:ue,ref:this._outerRefSetter,style:_extends$1({position:"relative",height:B,width:ce,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:Y},ee)},reactExports.createElement(U||W||"div",{children:ve,ref:j,style:{height:ae?"100%":Te,pointerEvents:pe?"none":void 0,width:ae?Te:"100%"}}))},D._callPropsCallbacks=function(){if(typeof this.props.onItemsRendered=="function"){var I=this.props.itemCount;if(I>0){var N=this._getRangeToRender(),z=N[0],Y=N[1],B=N[2],j=N[3];this._callOnItemsRendered(z,Y,B,j)}}if(typeof this.props.onScroll=="function"){var U=this.state,W=U.scrollDirection,V=U.scrollOffset,K=U.scrollUpdateWasRequested;this._callOnScroll(W,V,K)}},D._getRangeToRender=function(){var I=this.props,N=I.itemCount,z=I.overscanCount,Y=this.state,B=Y.isScrolling,j=Y.scrollDirection,U=Y.scrollOffset;if(N===0)return[0,0,0,0];var W=v(this.props,U,this._instanceProps),V=S(this.props,W,U,this._instanceProps),K=!B||j==="backward"?Math.max(1,z):1,Q=!B||j==="forward"?Math.max(1,z):1;return[Math.max(0,W-K),Math.max(0,Math.min(N-1,V+Q)),W,V]},L}(reactExports.PureComponent),m.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},m}var validateSharedProps$1=function(m,g){m.children,m.direction,m.height,m.layout,m.innerTagName,m.outerTagName,m.width,g.instance},FixedSizeList=createListComponent({getItemOffset:function(m,g){var x=m.itemSize;return g*x},getItemSize:function(m,g){var x=m.itemSize;return x},getEstimatedTotalSize:function(m){var g=m.itemCount,x=m.itemSize;return x*g},getOffsetForIndexAndAlignment:function(m,g,x,b,E,v){var S=m.direction,C=m.height,T=m.itemCount,$=m.itemSize,k=m.layout,L=m.width,D=S==="horizontal"||k==="horizontal",A=D?L:C,I=Math.max(0,T*$-A),N=Math.min(I,g*$),z=Math.max(0,g*$-A+$+v);switch(x==="smart"&&(b>=z-A&&b<=N+A?x="auto":x="center"),x){case"start":return N;case"end":return z;case"center":{var Y=Math.round(z+(N-z)/2);return Y<Math.ceil(A/2)?0:Y>I+Math.floor(A/2)?I:Y}case"auto":default:return b>=z&&b<=N?b:b<z?z:N}},getStartIndexForOffset:function(m,g){var x=m.itemCount,b=m.itemSize;return Math.max(0,Math.min(x-1,Math.floor(g/b)))},getStopIndexForStartIndex:function(m,g,x){var b=m.direction,E=m.height,v=m.itemCount,S=m.itemSize,C=m.layout,T=m.width,$=b==="horizontal"||C==="horizontal",k=g*S,L=$?T:E,D=Math.ceil((L+x-k)/S);return Math.max(0,Math.min(v-1,g+D-1))},initInstanceProps:function(m){},shouldResetStyleCacheOnItemSizeChange:!0,validateProps:function(m){m.itemSize}});let lastPath=".";function FilePicker({onSelect:d,multiple:m=!0,files:g=!0,folders:x=!0,fileMask:b,from:E=lastPath}){const[v,S]=reactExports.useState(E);lastPath=v;const[C,T]=reactExports.useState(!1),$=reactExports.useRef(!1);useApi(!C&&"resolve_path",{path:E,closestFolder:!0},{onResponse:(ce,pe)=>yt(this,null,function*(){try{const{path:ae}=pe;if(typeof ae!="string")return;S(ae),$.current=ae[1]===":"||ae.startsWith("\\\\")}finally{T(!0)}})});const{list:k,props:L,error:D,connecting:A,reload:I}=useApiList(C&&"get_ls",{path:v,files:g,fileMask:b});reactExports.useEffect(()=>{z([]),B("")},[v]);const[N,z]=reactExports.useState([]),[Y,B]=reactExports.useState(""),j=reactExports.useMemo(()=>_.debounce(ce=>B(ce)),[]),U=reactExports.useMemo(()=>{const ce=new RegExp(_.escapeRegExp(Y),"i");return pe=>ce.test(pe)},[Y]),W=useBreakpoint("sm"),[V,K]=reactExports.useState(0),Q=reactExports.useMemo(()=>_.sortBy(k.filter(ce=>U(ce.n)),["k","n"]),[k,U]),Z=$.current?"":"/",re=$.current?"\\":"/",ie=enforceFinal(re,v),oe=v.length<2;return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{label:"Current folder",value:v,InputLabelProps:{shrink:!0},helperText:"UNC paths are supported",onChange(ce){return yt(this,null,function*(){if(!ce)return S(Z);const pe=yield apiCall("resolve_path",{path:ce});if(pe.isFolder===!1)return g?d([ce]):S(ce.slice(0,-basename(ce).length-1));S(pe.path)})},end:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconBtn,{title:"root",disabled:oe,icon:VerticalAlignTop,onClick(){S(Z)}}),reactExports.createElement(IconBtn,{title:"parent folder",disabled:oe,icon:ArrowUpward,onClick(){const ce=/[\\/]$/.test(v)?v.slice(0,-1):v,pe=ce.lastIndexOf(re),ae=pe===1,ue=isWindowsDrive(ce)||ae?Z:ce.slice(0,pe||1);S(ue)}}))}),D?reactExports.createElement(Alert,{severity:"error",sx:{flex:1}},err2msg$1(D)):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{ref(ce){if(!ce)return;const pe=(ce==null?void 0:ce.clientHeight)-1;pe-V>1&&K(pe)},sx:{flex:1,display:"flex",flexDirection:"column"}},k.length?reactExports.createElement(FixedSizeList,{width:"100%",height:V,itemSize:46,itemCount:Q.length,overscanCount:5,children({index:ce,style:pe}){const ae=Q[ce],ue=ae.k==="d";return reactExports.createElement(MenuItem,{style:Rt(Fe({},pe),{padding:0}),key:ae.n,onClick(){ue?S(ie+ae.n):d([ie+ae.n])}},m&&reactExports.createElement(Checkbox$1,{checked:N.includes(ae.n),disabled:!x&&ue,onClick(fe){const _e=ae.n,ye=N.filter(ve=>ve!==_e);z(ye.length<N.length?ye:[...N,_e]),fe.stopPropagation()}}),reactExports.createElement(ListItemIcon,{},reactExports.createElement(ae.k?FolderIcon:FileIcon)),reactExports.createElement(ListItemText,{sx:{whiteSpace:"pre-wrap",wordBreak:"break-all"}},ae.n),!ue&&ae.s!==void 0&&reactExports.createElement(Typography,{variant:"body2",color:"text.secondary",ml:4,mr:1},formatBytes(ae.s)))}}):reactExports.createElement(Center,{flex:1,mt:"4em"},A?spinner():"No elements in this folder")),reactExports.createElement(Flex$1,{alignItems:"center"},(m||x||!g)&&reactExports.createElement(Btn$1,{disabled:!N.length&&(!v||!x&&g),sx:{minWidth:"max-content"},onClick(){d(N.length?N.map(ce=>ie+ce):[v])}},g&&(N.length||!x)?`Select (${N.length})`:W?"Select this folder":"This folder"),x&&reactExports.createElement(Btn$1,{icon:CreateNewFolder,variant:"outlined",doneMessage:!0,labelIf:"sm",onClick(){return yt(this,null,function*(){const ce=yield promptDialog$1("New folder name");if(!ce)return!1;yield apiCall("mkdir",{path:`${v}/${ce}`}),I()})}},"New folder"),reactExports.createElement(TextField,{size:"small",value:Y,label:`Filter results (${Q.length}${Q.length<k.length?"/"+k.length:""})`,onChange(ce){j(ce.target.value)},sx:{flex:1}}),(L==null?void 0:L.total)>0&&reactExports.createElement(IconProgress,{icon:Storage,progress:1,offset:(L.total-L.free)/L.total,title:formatDiskSpace(L)}))))}function formatDiskSpace({free:d,total:m}){return`${formatBytes(d)} available (${formatPerc(d/m)}) of ${formatBytes(m)}`}function FileField(C){var T=C,{value:d,onChange:m,files:g=!0,folders:x=!1,fileMask:b,defaultPath:E,title:v}=T,S=qt(T,["value","onChange","files","folders","fileMask","defaultPath","title"]);const $=useBreakpoint("md");return reactExports.createElement(StringField,Rt(Fe({},S),{value:d,onChange:m,wrap:!0,end:reactExports.createElement(IconBtn,{icon:Eject,title:"Browse files...",edge:"end",sx:{mb:.5},onClick(){const{close:k}=newDialog({title:v!=null?v:(g?"Pick a file":"Pick a folder")+prefix(": ",b),dialogProps:{fullScreen:!$,sx:{minWidth:"min(90vw, 40em)",minHeight:"calc(100vh - 9em)"}},Content(){return reactExports.createElement(FilePicker,{multiple:!1,folders:x,files:g,fileMask:b,from:d||E,onSelect(D){return yt(this,null,function*(){var N;let A=D==null?void 0:D[0];if(!A)return;const I=(N=yield apiCall("get_cwd"))==null?void 0:N.path;A.startsWith(I)&&(A=A.slice(I.length+1)||"."),m(A,{was:d,event:"picker"}),k()})}})}})}})}))}const HFS_GITHUB_ACCOUNT=HFS_REPO.replace(/\/.+/,"/");function OnlinePlugins(){const[d,m]=reactExports.useState(""),g=useDebounce(d,1e3),{list:x,error:b,initializing:E}=useApiList("get_online_plugins",{text:g}),v=useSnapState$1();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{value:d,onChange:m,start:reactExports.createElement(Search),typing:!0,label:"Search text"}),reactExports.createElement(DataTable,{error:b&&err2msg$1(xlate(b,PLUGIN_ERRORS)),rows:x.length?x:[],noRows:"No compatible plugins have been found",fillFlex:!0,initializing:E,columnVisibilityModel:v.onlinePluginsColumns,onColumnVisibilityModelChange:S=>Object.assign(state$1.onlinePluginsColumns,S),columns:[{field:"id",headerName:"name",flex:1,renderCell:renderName,mergeRender:{description:{fontSize:"x-small"}}},{field:"version",width:70},{field:"pushed_at",headerName:"last update",valueGetter:({value:S})=>new Date(S).toLocaleDateString()},{field:"license",width:80},themeField,Rt(Fe({},descriptionField),{flex:3,hideUnder:"sm"}),{field:"stargazers_count",width:50,headerName:"stars",align:"center",hideUnder:"sm"}],actions:({row:S,id:C})=>[reactExports.createElement(IconBtn,{icon:Download,title:"Install",progress:S.downloading,disabled:S.installed&&"Already installed",tooltipProps:{placement:"bottom-end"},onClick:()=>installPluginFromResult(S)}),reactExports.createElement(IconBtn,{icon:RemoveRedEye,disabled:!S.preview,onClick:()=>newDialog({title:C,Content:()=>reactExports.createElement(ShowImages,{imgs:wantArray(S.preview)})})})]}))}function ShowImages({imgs:d}){const[m,g]=reactExports.useState(0);return reactExports.createElement(Flex$1,{vert:!0,flex:1},reactExports.createElement(Flex$1,{vert:!0,center:!0,height:0,flex:"auto",minHeight:"50vh",minWidth:"50vw"},reactExports.createElement("img",{src:d[m],style:{margin:"auto",maxWidth:"100%",maxHeight:"100%"}})),d.length>1&&reactExports.createElement(Flex$1,{center:!0},reactExports.createElement(IconBtn,{icon:ArrowBack,disabled:!m,onClick:()=>g(m-1)}),reactExports.createElement(IconBtn,{icon:ArrowForward,disabled:m>=d.length-1,onClick:()=>g(m+1)})))}function installPluginFromResult(d){return yt(this,null,function*(){if(!d.id.startsWith(HFS_GITHUB_ACCOUNT)&&!(yield confirmDialog$1(reactExports.createElement(Flex$1,{vert:!0,alignItems:"center"},reactExports.createElement(Warning,{color:"warning",fontSize:"large"}),"Proceed only if you trust this plugin",reactExports.createElement(Box,{fontSize:"60%"},"A plugin has the same power of any other software"))))||d.missing&&!(yield confirmDialog$1("This will also install: "+_.map(d.missing,"repo").join(", "))))return;const m=d.branch||d.default_branch;return installPlugin(d.id,m).catch(g=>{if(g.code!==HTTP_FAILED_DEPENDENCY)return alertDialog$1(g);const x=reactExports.createElement(reactExports.Fragment,{},"This plugin has some dependencies unmet:",g.data.map(b=>reactExports.createElement("li",{key:b.repo},b.repo+": "+b.error)));return alertDialog$1(x,"error")})})}function installPlugin(d,m){return yt(this,null,function*(){try{const g=yield apiCall("download_plugin",{id:d,branch:m,stop:!0},{timeout:!1});(yield confirmDialog$1(`Plugin ${d} downloaded`,{trueText:"Start"}))&&(yield startPlugin(g.id))}catch(g){let x=!1;if(g.code===HTTP_FAILED_DEPENDENCY)for(const b of g.cause)b.error==="missing"&&(toast$1("Installing dependency: "+b.repo),yield installPlugin(b.repo),x=!0);if(x)return installPlugin(d,m);throw g}})}const TABS={Installed:InstalledPlugins,"Search online|Search":OnlinePlugins,"Check updates|Updates":()=>reactExports.createElement(InstalledPlugins,{updates:!0})},LABELS=Object.keys(TABS),PANES=Object.values(TABS),PLUGIN_ERRORS={ENOTFOUND:"Cannot reach github.com",ECONNREFUSED:"Cannot reach github.com"};function PluginsPage(){const[d,m]=reactExports.useState(0),g=!useBreakpoint("sm");return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Tabs,{value:d,onChange(x,b){m(b)}},LABELS.map(x=>reactExports.createElement(Tab,{key:x,label:x.split("|").slice(g?-1:0)[0]}))),reactExports.createElement(PANES[d]))}function evalWrapper(s){return eval(s)}function InstalledPlugins({updates:d}){const{list:m,error:g,setList:x,initializing:b}=useApiList(d?"get_plugin_updates":"get_plugins",{},{map(T){T.config&&(T.config=tryJson(T.config,$=>evalWrapper("()=>("+$+")")()))}});reactExports.useEffect(()=>{x(T=>_.sortBy(T,$=>{var k;return($.error?0:$.started?1:2)+treatPluginName(((k=$.repo)==null?void 0:k.split("/").reverse().join("/"))||$.id).toLowerCase()}))},[m.length]);const E="small",{pause:v,pauseButton:S}=usePauseButton("plugins",()=>getSingleConfig(CFG.suspend_plugins).then(T=>!T),{onClick:()=>apiCall("set_config",{values:{[CFG.suspend_plugins]:!v}})}),C=useTheme$1();return reactExports.createElement(DataTable,{error:isPrimitive(g)?xlate(g,PLUGIN_ERRORS):_.map(g,(T,$)=>`Error ${$} for: ${T.join(", ")}`).join("; "),rows:m.length?m:[],fillFlex:!0,initializing:b,disableColumnSelector:!0,getRowHeight:d&&(({model:T})=>T.changelog?"auto":50),noRows:d&&'No updates available. Only plugins available on "search online" are checked.',columns:[{field:"id",headerName:"name",flex:.3,minWidth:150,renderCell:renderName,valueGetter({row:T}){return T.repo||T.id},mergeRender:{[d?"changelog":"description"]:{fontSize:"x-small"}}},{field:"version",width:70,hideUnder:"sm",mergeRender:{installedVersion:{fontSize:"x-small"}}},themeField,Rt(Fe({},descriptionField),{flex:1,hideUnder:"sm"}),{field:"installedVersion",hideUnder:!0,dialogHidden:!0,renderCell:({value:T})=>T&&`Yours ${T}`},{field:"changelog",headerName:"Change log",flex:2,hideUnder:!d||"sm",sx:{flexDirection:"column",alignItems:"flex-start"},renderCell({value:T,row:$}){return Array.isArray(T)?reactExports.createElement(Table,{sx:{td:{p:0}}},_.uniq(_.sortBy(T,"version").filter(k=>_.isString(k.message)&&k.message&&k.version>$.installedVersion)).map((k,L)=>reactExports.createElement(TableRow,{key:L},reactExports.createElement(TableCell,{sx:{whiteSpace:"pre",verticalAlign:"top"}},`• ${k.version}: `),reactExports.createElement(TableCell,{},md(k.message))))):null}}],footerSide:()=>!d&&S,actions:({row:T,id:$})=>d?[reactExports.createElement(IconBtn,{icon:Upgrade,title:T.downloading?"Downloading":T.updated?"Already updated":"Update",disabled:T.updated,progress:T.downloading,size:E,onClick(){return yt(this,null,function*(){yield apiCall("update_plugin",{id:$},{timeout:!1}).catch(A=>{var I;throw A.code!==HTTP_FAILED_DEPENDENCY?A:Error("Failed dependencies: "+((I=A.cause)==null?void 0:I.map(N=>prefix('plugin "',N.id||N.repo,'" ')+N.error).join("; ")))}),toast$1("Plugin updated")})}})]:[reactExports.createElement(IconBtn,T.started?{icon:StopCircle,title:reactExports.createElement(Box,{"aria-hidden":!0},`Stop ${$}`,reactExports.createElement("br"),"Started "+new Date(T.started).toLocaleString()),"aria-label":`Stop ${$}`,size:E,color:"success",doneAnimation:!0,onClick:()=>apiCall("stop_plugin",{id:$})}:{icon:PlayCircle,title:`Start ${$}`,disabled:v,size:E,onClick:()=>startPlugin($)}),reactExports.createElement(IconBtn,{icon:T.config||!T.started||!T.log?Settings:ListAlt,title:T.config||!T.log?"Options":"Log",size:E,disabled:!T.started&&"Start plugin to access options"||!T.config&&!T.log&&"No options and no log for this plugin",onClick(){return yt(this,null,function*(){const{config:A}=yield apiCall("get_plugin",{id:$});let I=with_(T.configDialog,B=>{var j;return C.breakpoints.values[B==null?void 0:B.maxWidth]||((j=B==null?void 0:B.sx)==null?void 0:j.maxWidth)||xlate(B==null?void 0:B.maxWidth,{xs:0})||432});typeof I=="number"&&(I+="px");const N=!!T.config,z=yield formDialog$1({title:N?`Options for ${$}`:`Log for ${$}`,form:B=>({before:T.description&&reactExports.createElement(Box,{mx:2,mb:2},T.description),fields:makeFields(callable(T.config,B)||{},B),save:N?{children:"Save and close"}:!1,barSx:{gap:1},addToBar:[reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>Y(B)},"Save")]}),values:A,dialogProps:_.merge({maxWidth:"md",sx:{m:"auto"}},T.configDialog,{maxWidth:!1,sx:{maxWidth:null}}),Wrapper({children:B}){const{list:j,setList:U}=useApiList("get_plugin_log",{id:$},{map(K){K.ts=new Date(K.ts)}}),W=useAutoScroll(j);let V;return reactExports.createElement(Flex$1,{alignItems:"stretch",justifyContent:"center",flexWrap:"wrap",flexDirection:N?void 0:"column"},reactExports.createElement(Box,{maxWidth:I,minWidth:"min-content"},B),reactExports.createElement(Paper,{elevation:1,sx:{position:"relative",fontFamily:"monospace",flex:1,minWidth:"min(40em, 90vw)",minHeight:"20em",px:.5}},reactExports.createElement(Box,{my:.5,pb:.5,borderBottom:"1px solid",display:"flex",alignItems:"center",justifyContent:"space-between"},"Output",reactExports.createElement(Btn$1,{size:"small",sx:{p:0},onClick(){U([])}},"Clear")),reactExports.createElement(Box,{position:"absolute",bottom:0,top:"31px",left:0,right:0,sx:{overflowY:"auto"},ref:W},!j.length&&reactExports.createElement(Box,{p:1},"Log is empty"),reactExports.createElement(Box,{sx:{textIndent:"-1em",pl:"1em",position:"absolute",width:"calc(100% - 1.2em)",ml:"2px",pt:".2em"}},j.map(K=>{formatDate(K.ts);const Q=formatDate(K.ts);return reactExports.createElement(reactExports.Fragment,{key:K.id},Q!==V&&(V=Q),reactExports.createElement(Box,{},reactExports.createElement(Box,{title:Q,display:"inline",color:"text.secondary",mr:1},formatTime(K.ts)),replaceStringToReact(K.msg,/https?:\/\/\S+/,Z=>reactExports.createElement(Link$1,{href:Z[0],target:"_blank"},Z[0]))))})))))}});if(z&&!_.isEqual(A,z))return Y(z);function Y(B){return yt(this,null,function*(){yield apiCall("set_plugin",{id:$,config:B}),Object.assign(A,B),toast$1("Configuration saved")})}})}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Uninstall",size:E,onClick(){return yt(this,null,function*(){const A=yield confirmDialog$1(`${$}: delete configuration too?`,{trueText:"Yes",falseText:"No",after:({onClick:I})=>reactExports.createElement(Btn$1,{variant:"outlined",onClick(){I(void 0)}},"Abort")});A!==void 0&&(yield apiCall("uninstall_plugin",{id:$,deleteConfig:A}),toast$1("Plugin uninstalled"))})}})]})}function getSingleConfig(d){return apiCall("get_config",{only:[d]}).then(m=>m[d])}function treatPluginName(d){return d.replace(/hfs-/,"")}function renderName({row:d,value:m}){const{repo:g}=d;return reactExports.createElement(reactExports.Fragment,{},d.downgrade&&x("This version is older than the one you installed. It is possible that the author found a problem with your version and decided to retire it.",!0),x(d.error||d.badApi,!d.error),g!=null&&g.includes("//")?reactExports.createElement(Link$1,{href:g,target:"plugin"},m):with_(g==null?void 0:g.split("/"),b=>(b==null?void 0:b.length)!==2?m:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Link$1,{href:"https://github.com/"+g,target:"plugin",onClick(E){E.stopPropagation()}},treatPluginName(b[1])),NBSP+"by ",b[0])));function x(b,E=!1){return b&&hTooltip(b,b,reactExports.createElement(ErrorIcon,{fontSize:"small",color:E?"warning":"error",sx:{ml:-.5,mr:.5}}))}}function makeFields(d,m){return Object.entries(d).map(([g,x])=>{var k;if(!x)return;let $=x,{type:b,defaultValue:E,frontend:v,showIf:S}=$,C=qt($,["type","defaultValue","frontend","showIf"]);try{if(C.getError=evalWrapper(C.getError),typeof S=="string"&&(C.showIf=S=evalWrapper(S)),S&&!S(m))return}catch(L){}C.helperText&&(C.helperText=md(C.helperText,{html:!1}));const T=type2comp[b];if(m===!1&&b==="date_time"&&(C.$type="dateTime"),T===ArrayField){let{fields:L}=C;C.valuesForAdd=newObj(callable(L,!1),D=>D.defaultValue),typeof L=="string"&&(L=evalWrapper(L)),(k=C.details)!=null||(C.details=!1),C.fields=D=>_.map(makeFields(callable(L,D),D),(A,I)=>A&&Rt(Fe({k:I},A),{defaultValue:void 0})).filter(Boolean)}return E!==void 0&&b==="boolean"&&(C.placeholder=`Default value is ${JSON.stringify(E)}`),Fe({k:g,comp:T},C)})}const type2comp={string:StringField,number:NumberField,boolean:BoolField,select:SelectField,multiselect:MultiSelectField,array:ArrayField,real_path:FileField,vfs_path:VfsPathField,username:UsernameField,color:ColorField,showHtml:({html:d})=>reactExports.createElement(Html,{},String(d)),date_time:DateTimeField,net_mask:NetmaskField};function startPlugin(d){return yt(this,null,function*(){try{return yield apiCall("start_plugin",{id:d}),toast$1("Plugin started",reactExports.createElement(PlayCircle,{color:"success"})),!0}catch(m){alertDialog$1(`Plugin ${d} didn't start, with error: ${String((m==null?void 0:m.message)||m)}`,"error")}})}function UsernameField(E){var v=E,{value:d,onChange:m,multiple:g,groups:x}=v,b=qt(v,["value","onChange","multiple","groups"]);const{data:S,element:C,loading:T}=useApiEx("get_accounts");return!T&&C||reactExports.createElement(g?MultiSelectField:SelectField,Fe({value:d,onChange:m,options:S==null?void 0:S.list.filter($=>x===void 0||x===$.isGroup).map($=>$.username)},b))}function ColorField(d){return reactExports.createElement(StringField,Fe({inputProps:Fe({type:"color",style:{marginRight:24}},!d.value&&{value:"#888888",style:{zIndex:1,opacity:.1}}),InputProps:{endAdornment:d.value?reactExports.createElement(Btn$1,{icon:Clear,size:"small",sx:{position:"absolute",right:4},title:"Clear",onClick(m){d.onChange(null,{was:d.value,event:m})}}):reactExports.createElement(Box,{sx:{position:"absolute",width:"100%",bottom:2,pt:"3px",textAlign:"center",color:"#fff",background:"repeating-linear-gradient(45deg, #333, #333 10px, #444 10px, #444 20px)"}},"default")},typing:!0},d))}const descriptionField={field:"description",mergeRender:{isTheme:{}},mergeRenderSx:{float:"left"}},themeField={field:"isTheme",headerName:"is theme",hideUnder:!0,dialogHidden:!0,type:"boolean",renderCell({value:d}){return d&&iconTooltip(ThemeIcon,_.isString(d)?`${d} theme`:"theme",{fontSize:"1.2rem",mr:".3em"})}},cacheKey="onlinePluginsCache";function RandomPlugin(){const{hideRandomPlugin:d}=useSnapState$1(),m=localStorage.getItem(cacheKey),g=reactExports.useMemo(()=>{const C=tryJson(m||"");return(C==null?void 0:C.ts)&&Date.now()-C.ts<DAY&&_.shuffle(C.list)},[m]),{list:x,initializing:b}=useApiList(!d&&!g&&"get_online_plugins"),[E,v]=reactExports.useState(-1),S=g==null?void 0:g[E];if(reactExports.useEffect(()=>{!g&&!b&&x.length&&localStorage.setItem(cacheKey,JSON.stringify({ts:Date.now(),list:x})),v(0)},[x,b]),reactExports.useEffect(()=>{E>0&&!S&&toast$1("No more plugins!")},[E]),!(d||!S))return reactExports.createElement(Card,{sx:{display:{xs:"none",md:"block"},float:"right",width:"min(50%, 30em)",ml:"1em"}},reactExports.createElement(CardContent,{},reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.4em"},reactExports.createElement(Box,{color:"warning.main",mr:1,display:"inline"},"★"),"Random plugin:"),reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.8em",my:1},renderName({row:S})),reactExports.createElement(Box,{},S.description),S.preview&&reactExports.createElement("img",{src:wantArray(S.preview)[0],style:{maxWidth:"100%",maxHeight:"50vh",marginTop:"1em",border:"1px solid",maskImage:"radial-gradient(circle at center, black 50%, transparent 100%)"}})),reactExports.createElement(CardActions,{},reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>installPluginFromResult(S)},"Install"),reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>v(C=>C+1)},"Another"),reactExports.createElement(Btn$1,{variant:"outlined",onClick(){state$1.hideRandomPlugin=!0}},"Hide this box")))}function HomePage(){var Z,re,ie,oe,ee;const d=" — ",{username:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_status"),{data:E}=useApiEx(m&&"get_account"),v=useApiEx("get_config",{only:["https_port","cert","private_key","proxies","ignore_proxies","vfs"]}),{list:S}=useApiList("get_plugins"),[C,T]=reactExports.useState(!1),{list:$}=useApiList(C&&"get_plugin_updates"),[k,L]=reactExports.useState(),[D,A]=reactExports.useState();if(b||!g)return b;const{http:I,https:N}=g,z=!(I!=null&&I.listening)&&(N!=null&&N.listening)?"s":"",Y=z?N:(I==null?void 0:I.listening)&&I,B=Y&&`http${z}://`+window.location.hostname+(Y.port===(z?443:80)?"":":"+Y.port),j=objSameKeys({http:I,https:N},X=>X.busy?[`port ${X.configuredPort} already used by ${X.busy}${d}choose a `,cfgLink("different port"),` or stop ${X.busy}`]:X.error),U=j&&onlyTruthy(Object.entries(j).map(([X,ce])=>ce&&[md(`Protocol <u>${X}</u>: `),ce,(isCertError(ce)||isKeyError(ce))&&[d,reactExports.createElement(LinkBtn,{onClick(){suggestMakingCert().then(()=>wait(999)).then(v.reload).then(x)}},"make one")," or ",d,cfgLink("provide adequate files")]])),W={onContextMenu(X){return yt(this,null,function*(){if(X.preventDefault(),!g.updatePossible)return alertDialog$1("Automatic update is only for binary versions","warning");const ce=yield promptDialog$1("Enter a link to the zip to install");ce&&(yield update(ce))})},title:g.updatePossible&&"Right-click if you want to install a zip"},V=(Z=v.data)==null?void 0:Z.vfs;return reactExports.createElement(Box,{},reactExports.createElement(RandomPlugin),reactExports.createElement(Box,{display:"flex",gap:2,flexDirection:"column",alignItems:"flex-start",height:"100%"},dontBotherWithKeys((re=g.alerts)==null?void 0:re.map(X=>entry("warning",md(X,{html:!1})))),U.length?dontBotherWithKeys(U.map(X=>entry("error",dontBotherWithKeys(X)))):entry("success","Server is working"),V&&!((ie=V.children)!=null&&ie.length)&&!V.source?entry("warning","You have no shared files",d,fsLink("add some")):null,E!=null&&E.adminActualAccess?entry("","Welcome, "+m):entry("",md("You're accessing the Admin-panel without an account because you are on localhost"),...g.anyAccountCanLoginAdmin?[]:[d,"to access from another computer, you must ",reactExports.createElement(InLink,{to:"accounts"},md("create an account with *admin* permission"))]),!B&&entry("warning","Frontend unreachable: ",_.map(j,(X,ce)=>ce+" "+(X?"is in error":"is off")).join(", "),!U.length&&[d,cfgLink("switch http or https on")]),with_(g.acmeRenewError,X=>X&&entry("warning",X)),with_(g.blacklistedInstalledPlugins,X=>(X==null?void 0:X.length)>0&&entry("warning","Found blacklisted plugin(s): ",X.join(", "))),with_(S==null?void 0:S.filter(X=>X.error||X.badApi).length,X=>X>0&&entry("warning",`${X} plugin(s) failing`,d,reactExports.createElement(InLink,{to:"plugins"},"check now"))),!((oe=v.data)!=null&&oe.split_uploads)&&Date.now()-Number(g.cloudflareDetected||0)<DAY&&entry("",wikiLink("Reverse-proxy#cloudflare","Cloudflare detected, read our guide")),with_(proxyWarning(v.data,g),X=>X&&entry("warning",X,d,cfgLink("set the number of proxies"),d,"unless you are sure and you can ",reactExports.createElement(Btn$1,{variant:"outlined",size:"small",sx:{lineHeight:"unset"},confirm:"Go on only if you know what you are doing",onClick:()=>apiCall("set_config",{values:{ignore_proxies:!0}}).then(v.reload)},"ignore this warning"),d,wikiLink("Proxy-warning","Explanation"))),(((ee=v.data)==null?void 0:ee.proxies)>0||(g==null?void 0:g.proxyDetected))&&entry("",wikiLink("Reverse-proxy","Read our guide on proxies")),g.frpDetected&&entry("warning",'FRP is detected. It should not be used with "type = tcp" with HFS. Possible solutions are',reactExports.createElement("ol",{},reactExports.createElement("li",{},"configure FRP with type=http (best solution)"),reactExports.createElement("li",{},md("configure FRP to connect to HFS <u>not</u> with localhost (safe, but you won't see users' IPs)")),reactExports.createElement("li",{},`disable "admin access for localhost" in HFS (safe, but you won't see users' IPs)`))),entry("",md("This is the *Admin-panel*, where you manage your server. Access your files on the [Front-end](../..).")),entry("",wikiLink("","See the documentation")," and ",reactExports.createElement(Link$1,{target:"support",href:REPO_URL+"discussions"},"get support")),!k&&with_(g.autoCheckUpdateResult,X=>(X==null?void 0:X.isNewer)&&reactExports.createElement(Update,{info:X,fromAuto:!0,bodyCollapsed:!0,title:"An update has been found"})),$.length>0&&entry("success","Updates available for plugin(s): "+$.map(X=>X.id).join(", ")),reactExports.createElement(ConfigForm,{gridProps:{sx:{mt:1,display:"flex",columnGap:1,alignitems:"center","&>div.MuiGrid2-root":{width:"auto",px:.5,py:0},".MuiCheckbox-root":{pl:"2px"}}},saveOnChange:!0,form:{fields:[g.updatePossible==="local"?reactExports.createElement(Btn$1,{icon:UpdateIcon,onClick:()=>update()},"Update from local file"):!k&&reactExports.createElement(Btn$1,Fe({icon:UpdateIcon,onClick(){return apiCall("wait_project_info").then(x),T(!0),apiCall("check_update").then(X=>L(X.options),alertDialog$1)}},W),"Check for updates"),{k:"auto_check_update",comp:CheckboxField,label:"Auto check updates daily"},{k:"update_to_beta",comp:CheckboxField,label:"Include beta versions"}]}}),k&&with_(_.find(k,"isNewer"),X=>!k.length||!g.updatePossible&&!X?entry("","No update available"):X&&!g.updatePossible?entry("success",`Version ${X.name} available`):reactExports.createElement(Flex$1,{vert:!0},k.map(ce=>reactExports.createElement(Update,{info:ce,key:ce.name})))),reactExports.createElement(Flex$1,{flexWrap:"wrap"},!D&&g.updatePossible&&g.previousVersionAvailable&&reactExports.createElement(Btn$1,{icon:Restore,onClick:()=>update(PREVIOUS_TAG)},"Reinstall previous version"),g.updatePossible?D?reactExports.createElement(Flex$1,{vert:!0},D.map(X=>reactExports.createElement(Update,{info:X,key:X.name,bodyCollapsed:!0}))):reactExports.createElement(Btn$1,Fe({icon:Colorize,onClick:K},W),"Get another version"):entry("",reactExports.createElement(Link$1,{href:REPO_URL+"releases/",target:"repo"},"All releases"))),reactExports.createElement(SwitchThemeBtn),Date.now()-Number(new Date(g.started))>HOUR&&reactExports.createElement(Link$1,{title:"Donate",target:"donate",style:{textDecoration:"none",position:"fixed",bottom:0,right:4,fontSize:"large"},href:"https://www.paypal.com/donate/?hosted_button_id=HC8MB4GRVU5T2"},"❤️")));function K(){return yt(this,null,function*(){return apiCall("get_other_versions").then(X=>A(X.options),alertDialog$1)})}}function Update({info:d,title:m,bodyCollapsed:g,fromAuto:x}){const[b,E]=reactExports.useState(g);return reactExports.createElement(Flex$1,{alignItems:"flex-start",flexWrap:"wrap"},reactExports.createElement(Card,{className:"release"},reactExports.createElement(CardContent,{},reactExports.createElement(Flex$1,{},m&&reactExports.createElement(Box,{fontSize:"larger",mb:1},m),reactExports.createElement(Btn$1,Rt(Fe({icon:UpdateIcon},!d.isNewer&&d.prerelease&&{color:"warning",variant:"outlined"}),{onClick:()=>update(x?void 0:d.tag_name)}),prefix("Install ",d.name,d.isNewer?"":" (older)")),reactExports.createElement(Link$1,{href:REPO_URL+"releases/tag/"+d.tag_name,target:"repo"},reactExports.createElement(OpenInNew))),b?reactExports.createElement(LinkBtn,{sx:{display:"block",mt:1},onClick(){E(!1)}},"See details"):reactExports.createElement(Box,{mt:1},renderChangelog(d.body)))))}function renderChangelog(d){return md(d,{html:!1,onText:m=>replaceStringToReact(m,new RegExp("(?<=^|\\W)#(\\d+)\\b|(https:.*\\S+)","g"),g=>g[1]?reactExports.createElement(Link$1,{href:REPO_URL+"issues/"+g[1],target:"_blank"},reactExports.createElement(OpenInNew,{fontSize:"small"})):reactExports.createElement(Link$1,{href:g[2],target:"_blank"},g[2]))})}function update(d){return yt(this,null,function*(){if(!(yield confirmDialog$1("Installation may take less than a minute, depending on the speed of your server")))return;toast$1("Downloading");const m=yield apiCall("update",{tag:d},{timeout:600}).then(()=>0,b=>b);if(m)return alertDialog$1(m);toast$1("Restarting");const g=Date.now();let x;for(;yield apiCall("NONE").then(()=>0,b=>!b.code);)!x&&Date.now()-g>15e3&&(x=alertDialog$1("This is taking too long, please check your server","warning")),yield wait(500);x==null||x.close(),subscribeKey(state$1,"loginRequired",()=>state$1.loginRequired=!1),yield alertDialog$1("Procedure complete","success"),window.location.reload()})}function entry(d,...m){return reactExports.createElement(Box,{fontSize:"x-large",color:g=>{var x;return d&&((x=g.palette[d])==null?void 0:x.main)}},reactExports.createElement({success:CheckCircle,info:Info,"":Info,warning:Warning,error:ErrorIcon}[d],{sx:{mr:1,color:d?void 0:"primary.main"}}),reactExports.createElement("span",{style:["warning","error"].includes(d)?{animation:".5s blink 2"}:void 0},...m))}function fsLink(d="File System page"){return reactExports.createElement(InLink,{to:"fs"},d)}function cfgLink(d="Options page"){return reactExports.createElement(InLink,{to:"options"},d)}function proxyWarning(d,m){return m&&d&&!d.ignore_proxies&&(!d.proxies&&m.proxyDetected?"A proxy was detected but none is configured":d.proxies&&!m.proxyDetected&&Date.now()-+new Date(m.started)>DAY?`Proxies is set to ${d.proxies} but none was detected recently. Consider setting it zero`:"")}let loaded,exposedReloadStatus;const pageState=proxy({changes:{}});subscribe(state$1,d=>{d.some(m=>m[1][0]==="config")&&recalculateChanges()});function OptionsPage(){var B,j;const{data:d,reload:m,element:g}=useApiEx("get_config",{omit:["vfs"]}),x=useSnapState$1(),{changes:b}=useSnapshot(pageState),E=useApiEx(d&&"get_status"),v=E.data,S=exposedReloadStatus=E.reload;reactExports.useEffect(()=>void S(),[d]),reactExports.useEffect(()=>()=>exposedReloadStatus=void 0,[]);const C=useBreakpoint("sm"),T=(B=useApiEx("get_admins").data)==null?void 0:B.list,$=window.location.hostname,k=$==="localhost",L=$.includes(":"),D=[{label:"any",value:""},{label:"any IPv4",value:"0.0.0.0",disabled:!k&&L},{label:"any IPv6",value:"::",disabled:!k&&!L},...["127.0.0.1","::1"].map(U=>({label:U,value:U,disabled:!k&&$!==U})),...((j=v==null?void 0:v.ips)==null?void 0:j.map(U=>({value:U,disabled:$!==U})))||[]];if(g)return g;if(E.error)return E.element;const A=loaded!==d?state$1.config=loaded=d:x.config,I={comp:NumberField,min:1,unit:"KB/s",placeholder:"no limit",sm:6},N={comp:NumberField,placeholder:"no limit",toField:U=>U||"",sm:4},z=A.https_port>=0;return reactExports.createElement(Form,{sx:{maxWidth:"60em"},values:A,set(U,W){state$1.config[W]=U},stickyBar:!0,onError:alertDialog$1,save:Fe({onClick:Y},propsForModifiedValues(Object.keys(b).length>0)),barSx:{gap:2},addToBar:[reactExports.createElement(Button,{onClick(){m(),S()},startIcon:reactExports.createElement(Refresh)},"Reload"),reactExports.createElement(Button,{component:Link$2,to:"/config",startIcon:reactExports.createElement(EditNote)},C?"Config file":"File")],defaults(){return{xs:6}},fields:[reactExports.createElement(Section,{title:"Networking"}),{k:"port",comp:PortField,xs:12,sm:6,label:"HTTP port",status:(v==null?void 0:v.http)||!0,suggestedPort:80},{k:"https_port",comp:PortField,xs:12,sm:6,label:"HTTPS port",status:(v==null?void 0:v.https)||!0,suggestedPort:443,onChange(U){return U>=0&&!z&&!A.cert&&suggestMakingCert(),U}},z&&{k:"cert",comp:FileField,sm:4,label:"HTTPS certificate file",helperText:wikiLink("HTTPS#certificate","What is this?"),error:with_(v==null?void 0:v.https.error,U=>isCertError(U)&&(v.https.listening?U:[U," - ",reactExports.createElement(LinkBtn,{key:"fix",onClick:suggestMakingCert},"make one")]))},z&&Fe({k:"private_key",comp:FileField,sm:4,label:"HTTPS private key file"},with_(v==null?void 0:v.https.error,U=>isKeyError(U)?{error:!0,helperText:U}:null)),z&&{k:"force_https",comp:BoolField,label:"Force HTTPS",sm:4,disabled:!z||A.port<0,helperText:"Not applied to localhost. Doesn't work with proxies."},{k:"listen_interface",comp:SelectField,sm:4,afterList:D.some(U=>U.disabled)&&reactExports.createElement(Box,{p:"8px 16px 0",borderTop:"1px solid",fontSize:"small"},"Disabled addresses depend on the address you used to connect"),options:D},Rt(Fe({k:"max_kbps"},I),{sm:4,label:"Limit output",helperText:"Doesn't apply to localhost"}),Rt(Fe({k:"max_kbps_per_ip"},I),{sm:4,label:"Limit output per-IP"}),Rt(Fe({k:CFG.max_downloads},N),{helperText:"Number of simultaneous downloads"}),Rt(Fe({k:CFG.max_downloads_per_ip},N),{label:"Max downloads per-IP"}),Rt(Fe({k:CFG.max_downloads_per_account},N),{label:"Max downloads per-account",helperText:"Overrides other limits"}),{k:"admin_net",comp:NetmaskField,label:"Admin-panel accessible from",placeholder:"any address",helperText:"IP address of browser machine"},{k:"localhost_admin",comp:BoolField,xs:12,sm:6,label:"Unprotected Admin-panel on localhost",getError:U=>!U&&(T==null?void 0:T.length)===0&&"First create at least one admin account",helperText:"Access without entering credentials"},{k:"proxies",comp:NumberField,xs:12,sm:4,md:4,max:9,label:"Number of incoming HTTP proxies",placeholder:"none",error:proxyWarning(A,v),helperText:"Wrong number will prevent detection of users' IP"},{k:CFG.outbound_proxy,xs:12,sm:5,md:4,placeholder:"none",helperText:"URL form",getError:U=>try_(()=>U&&new URL(U)&&"",()=>"Invalid URL")},{k:"allowed_referer",comp:AllowedReferer,sm:3,md:4,placeholder:"any",label:"Links from other websites",helperText:"In case another website is linking your files"},{k:"block",label:!1,comp:ArrayField,xs:12,prepend:!0,sm:!0,autoRowHeight:!0,form:{maxWidth:"30em"},fields:[{k:"ip",label:"Blocked IP",sm:12,required:!0,wrap:!0,$width:2,comp:NetmaskField,$column:{mergeRender:{comment:{},expire:{}}},helperText:"Be careful to not kick yourself out, by blocking also your IP"},{k:"expire",$type:"dateTime",minDate:new Date,sm:6,$hideUnder:"sm",helperText:"Leave empty for no expiration"},{k:"disabled",$type:"boolean",label:"Enabled",helperText:"In case you want to not block without deleting the rule",toField:U=>!U,fromField:U=>U?void 0:!0,sm:6,$width:80},{k:"comment",$hideUnder:"sm"}]},reactExports.createElement(Section,{title:"Front-end",subtitle:"Following options affect only the front-end"}),{k:"file_menu_on_link",comp:SelectField,label:"Access file menu",md:4,options:{"by clicking on file name":!0,"by dedicated button":!1}},{k:"title",md:8,helperText:"You can see this in the tab of your browser"},{k:"auto_play_seconds",comp:NumberField,xs:6,sm:3,min:1,max:1e4,required:!0,label:"Auto-play seconds delay",helperText:md(`Default value for the [Show interface](${REPO_URL}discussions/270)`)},{k:"tile_size",comp:NumberField,xs:6,sm:3,max:MAX_TILE_SIZE,required:!0,label:"Default tiles size",helperText:wikiLink("Tiles","To enable tiles-mode")},{k:"theme",comp:SelectField,xs:6,sm:3,options:THEME_OPTIONS},{k:"sort_by",comp:SelectField,xs:6,sm:3,options:SORT_BY_OPTIONS},{k:"invert_order",comp:BoolField,xs:6,md:3},{k:"folders_first",comp:BoolField,xs:6,md:3},{k:"sort_numerics",comp:BoolField,xs:6,md:3,label:"Sort numeric names"},{k:"title_with_path",comp:BoolField,xs:6,md:3},{k:"favicon",comp:FileField,placeholder:"None",fileMask:"*.ico|"+IMAGE_FILEMASK,xs:12,helperText:"The icon associated to your website"},reactExports.createElement(Section,{title:"Uploads"}),{k:"dont_overwrite_uploading",comp:BoolField,md:4,label:"Uploads don't overwrite",helperText:"Files will be numbered to avoid overwriting"},{k:CFG.split_uploads,comp:NumberField,unit:"MB",md:2,step:.1,fromField:U=>U*1e6,toField:U=>U?U/1e6:null,placeholder:"disabled",label:"Split uploads in chunks",helperText:"Overcome proxy limits"},{k:"delete_unfinished_uploads_after",comp:NumberField,md:3,min:0,unit:"seconds",required:!0},{k:"min_available_mb",comp:NumberField,md:3,min:0,unit:"MBytes",placeholder:"None",label:"Min. available disk space",helperText:"Reject uploads that don't comply"},reactExports.createElement(Section,{title:"Others"}),{k:"keep_session_alive",comp:BoolField,sm:6,md:6,helperText:"Keeps you logged in while the page is left open and the computer is on"},{k:"session_duration",comp:NumberField,sm:3,md:3,min:5,unit:"seconds",required:!0},{k:CFG.size_1024,label:"KB size",comp:SelectField,sm:3,options:{1e3:!1,1024:!0}},{k:"show_hidden_files",comp:BoolField,sm:3},{k:CFG.comments_storage,comp:SelectField,xs:12,sm:6,md:5,options:{"in file DESCRIPT.ION":"","in file attributes":"attr","in file attributes + load DESCRIPT.ION":"attr+ion"}},{k:"descript_ion_encoding",xs:8,sm:3,md:4,label:"Encoding of file DESCRIPT.ION",comp:SelectField,disabled:!A.descript_ion,options:["utf8",720,775,819,850,852,862,869,874,808,..._.range(1250,1257),10029,20866,21866]},{k:"open_browser_at_start",comp:BoolField,label:"Open Admin-panel at start",xs:12,sm:6,md:3,helperText:"Browser is automatically launched with HFS"},{k:"zip_calculate_size_for_seconds",comp:NumberField,xs:12,sm:6,md:3,unit:"seconds",required:!0,label:"Calculate ZIP size for",helperText:"If time is not enough, the browser will not show download percentage"},{k:"mime",comp:ArrayField,label:!1,reorder:!0,prepend:!0,xs:12,sm:12,md:6,fields:[{k:"v",label:"Mime type",placeholder:"auto",$width:2,helperText:"Leave empty to get automatic value"},{k:"k",label:"File mask",helperText:reactExports.createElement(WildcardsSupported),$width:1,$column:{renderCell:({value:U,id:W})=>reactExports.createElement("code",{},U,U==="*"&&W<_.size(A.mime)-1&&iconTooltip(Warning,md("Mime with `*` should be the last, because first matching row applies"),{color:"warning.main",ml:1}))}}],toField:U=>Object.entries(U||{}).map(([W,V])=>({k:W,v:V})),fromField:U=>Object.fromEntries(U.map(W=>[W.k,W.v||"auto"]))},{k:"server_code",comp:TextEditorField,lang:"js",xs:12,helperText:md(`This code works similarly to [a plugin](${REPO_URL}blob/main/dev-plugins.md) (with some limitations)`)}]});function Y(){return yt(this,null,function*(){var ue,fe;if(_.isEmpty(b))return toast$1("Nothing to save");const U=window.location,W=["port","https_port"];if(W.every(_e=>b[_e]!==void 0))return alertDialog$1("You cannot change both http and https port at once. Please, do one, save, and then do the other.","warning");const V=[(ue=v==null?void 0:v.http)==null?void 0:ue.listening,(fe=v==null?void 0:v.https)==null?void 0:fe.listening],K=location.protocol==="https:";K&&(W.reverse(),V.reverse());const Q=b[W[0]],Z=A[W[1]],re=Z>0&&V[1],ie=K?"http":"https";if(Q<0&&!re)return alertDialog$1("You cannot switch off this port unless you have a working fixed port for "+ie,"warning");if(Q===0&&!re)return alertDialog$1("You cannot randomize this port unless you have a working fixed port for "+ie,"warning");const oe=Q>0&&Q!=U.port;if(oe&&!(yield confirmDialog$1("You are changing the port and you may be disconnected")))return;const ee="cert"in b||"private_key"in b;if(K&&ee&&!(yield confirmDialog$1("You may disrupt https service, kicking you out")))return;yield apiCall("set_config",{values:b}),"split_uploads"in b&&(yield alertDialog$1('Users need to reload for the "split uploads" option to take effect',"warning"));const X=ipForUrl(U.hostname),ce=U.pathname+U.hash,pe=Q<=0?`${K?"http:":"https:"}//${X}:${Z}${ce}`:oe?`${U.protocol}//${X}:${Q||A[W[0]]}${ce}`:yield with_(`https://${X}:${U.port}${ce}`,_e=>{var ye;return!K&&((ye=b.force_https)!=null?ye:d.force_https)&&fetch(_e).then(()=>_e,()=>0)});if(pe)return yield alertDialog$1("You are being redirected but in some cases this may fail. Hold on tight!","warning"),window.location.href=pe;const ae="port"in b||"https_port"in b;setTimeout(S,ae||ee?1e3:0),Object.assign(loaded,b),recalculateChanges(),toast$1("Changes applied","success")})}}function Section({title:d,subtitle:m}){return reactExports.createElement(Divider,{role:"heading",sx:{fontSize:"larger",fontWeight:"bold"}},d,reactExports.createElement(Box,{fontSize:"small",fontWeight:"normal"},m))}function recalculateChanges(){const d={};if(state$1.config)for(const[m,g]of Object.entries(state$1.config))JSON.stringify(g)!==JSON.stringify(loaded==null?void 0:loaded[m])&&(d[m]=g);pageState.changes=d}function isCertError(d){return/certificate/.test(d)}function isKeyError(d){return/private key/.test(d)}function PortField({label:d,value:m,onChange:g,setApi:x,status:b,suggestedPort:E=1,error:v,helperText:S}){const C=reactExports.useRef(E);m>0&&(C.current=m);const T=Number(m>0?C.current:m)||0;let $=b==null?void 0:b.error;return $&&(isCertError($)||isKeyError($)?$=void 0:v=!0),reactExports.createElement(Box,{},reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{sx:{flexGrow:1},label:d,error:v,value:T,options:[{label:"off",value:-1},{label:"random",value:0},{label:"choose",value:C.current}],onChange:g}),m>0&&reactExports.createElement(NumberField,{label:"Number",fullWidth:!1,value:m,onChange:g,setApi:x,error:v,min:1,max:65535,helperText:S,sx:{minWidth:"5.5em"}})),b&&reactExports.createElement(FormHelperText,{error:v},b===!0?"...":$!=null?$:(b==null?void 0:b.listening)&&"Correctly working on port "+b.port))}function AllowedReferer({label:d,value:m,onChange:g,error:x}){const b=!m||m==="-",E="example.com";return reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{label:d,value:b?m:E,options:{"allow all":"","forbid all":"-","allow some":E},onChange:g,error:x,sx:b?void 0:{maxWidth:"11em"}}),!b&&reactExports.createElement(StringField,{label:"Domain to allow",value:m,placeholder:"example.com",onChange:g,error:x,helperText:reactExports.createElement(WildcardsSupported)}))}function suggestMakingCert(){return yt(this,null,function*(){return new Promise(d=>{const{close:m}=newDialog({icon:CardMembership,title:"Get a certificate",onClose:d,Content:()=>reactExports.createElement(Box,{p:1,lineHeight:1.5},reactExports.createElement(Box,{},"HTTPS needs a certificate to work."),reactExports.createElement(Box,{},"We suggest you to ",reactExports.createElement(InLink,{to:"internet"},"get a free but proper certificate"),"."),reactExports.createElement(Box,{},"If you don't have a domain ",reactExports.createElement(LinkBtn,{onClick:g},"make a self-signed certificate")," but that ",wikiLink("HTTPS#certificate"," won't be perfect"),"."))});function g(){return yt(this,null,function*(){if(!window.crypto.subtle)return alertDialog$1("Retry this procedure on localhost","warning");const x=yield apiCall("make_self_signed_cert",{fileName:"self"});loaded&&Object.assign(loaded,x),setTimeout(exposedReloadStatus,1e3),setTimeout(exposedReloadStatus,2e3),Object.assign(state$1.config,x),yield alertDialog$1("Certificate saved","success"),m()})}})})}function LogoutPage(){const{element:d}=useApiEx("get_config",{only:[]}),{username:m}=useSnapState$1();return d||reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:2},m?reactExports.createElement(reactExports.Fragment,{},"You are logged in as: "+m,reactExports.createElement(Btn$1,{icon:Logout,size:"large",onClick:()=>apiCall("logout").catch(x=>x.code!==HTTP_UNAUTHORIZED&&alertDialog$1(x))},"I want to logout")):reactExports.createElement(Alert,{severity:"info"},"You are not logged in, because authentication is not required on localhost"),reactExports.createElement(Btn$1,{icon:PowerSettingsNew,size:"large",color:"warning",confirm:"Stopping the server, this interface won't respond anymore",onClick(){return yt(this,null,function*(){yield apiCall("quit"),yield alertDialog$1("Good-bye","success"),location.reload()})}},"Quit HFS"))}function LangPage({setTitleSide:d}){const{list:m,error:g,connecting:x,reload:b}=useApiList("get_langs"),E=reactExports.useMemo(()=>["en",..._.uniq(m.map(S=>S.code))],[m]);return d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"Translation is limited to Front-end, it doesn't apply to Admin-panel"),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,Fe({mt:1,maxWidth:"50em",flex:1},fillFlexParentSx),reactExports.createElement(Box,{mb:1,display:"flex"},reactExports.createElement(Btn$1,{icon:Upload,onClick:v},"Add"),reactExports.createElement(Box,{flex:1}),reactExports.createElement(ForceLang,{langs:E})),reactExports.createElement(DataTable,{error:g,loading:x,rows:reactExports.useMemo(()=>_.sortBy(m,S=>(S.embedded?2:1)+S.code),[m.length]),hideFooter:!0,fillFlex:!0,columns:[{field:"code",width:110,valueFormatter:({value:S})=>S==null?void 0:S.toUpperCase()},{field:"version",width:120,hideUnder:"sm"},{field:"hfs_version",headerName:"HFS version",width:110},{field:"author",flex:1,hideUnder:"sm"}],actions:({row:S})=>[reactExports.createElement(IconBtn,{icon:Delete,title:S.embedded?"Cannot delete (embedded)":"Delete",confirm:`Delete language code "${S.code}"?`,disabled:S.embedded,onClick(){return yt(this,null,function*(){yield apiCall("del_lang",_.pick(S,"code")),b(),toast$1("Deleted")})}})]})));function v(){selectFiles(S=>yt(this,null,function*(){if(!S)return;const C={};for(const T of S)C[T.name]=yield readFile(T);try{yield apiCall("add_langs",{langs:C}),b(),toast$1("Loaded")}catch(T){yield alertDialog$1(T)}}),{accept:".json"})}}function ForceLang({langs:d}){const m=CFG.force_lang,{data:g,reload:x,loading:b}=useApiEx("get_config",{only:[m]}),[E,v]=reactExports.useState();reactExports.useEffect(()=>{var $;return v(($=g==null?void 0:g[m])!=null?$:E)},[g]);const[S,C]=reactExports.useState();return reactExports.createElement(SelectField,{fullWidth:!1,disabled:!!b||typeof S=="string",value:S!=null?S:E,onChange($){return yt(this,null,function*(){C($);try{yield apiCall("set_config",{values:{[m]:$}}),yield x()}finally{C(void 0)}})},options:[{label:"Respect browser language",value:""},...d.map($=>({value:$,label:"Force language: "+$}))]})}function switchBtn(d,m,g){return reactExports.createElement(VerticalSwitch,Fe({checked:d||!1,onChange(x,b){m(b)},disabled:d===void 0},g))}const VerticalSwitch=styled(Switch)(({theme:d,size:m})=>{const g=m&&m==="small";return{height:g?36:48,width:g?18:26,padding:5,"& .MuiSwitch-switchBase":{margin:1,padding:0,transform:`translateY(${g?16:22}px)`,"&.Mui-checked":{color:d.palette.primary.contrastText,transform:"translateY(2px)","& .MuiSwitch-thumb:before":{backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"/></svg>')`},"& + .MuiSwitch-track":{backgroundColor:d.palette.grey[500]}}},"& .Mui-checked .MuiSwitch-thumb":{backgroundColor:d.palette.primary.main,boxShadow:"0px 2px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12)"},"& .MuiSwitch-thumb":{width:g?16:24,height:g?16:24,backgroundColor:d.palette.grey[700],"&::before":{content:"''",position:"absolute",width:"85%",height:"85%",left:0,top:0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M19,13H5V11H19V13Z"/></svg>')`}},"& .MuiSwitch-track":{backgroundColor:d.palette.grey[500],borderRadius:20/2}}}),names={top:"Top of HTML Body",bottom:"Bottom of HTML Body"};function CustomHtmlPage({setTitleSide:d}){const{data:m,reload:g}=useApiEx("get_custom_html"),{customHtmlSection:x}=useSnapState$1(),[b,E]=reactExports.useState({}),[v,S]=reactExports.useState({});reactExports.useEffect(()=>{m&&(S(m.sections),k(m.enabled))},[m]),reactExports.useEffect(()=>E(v),[v]);const C=reactExports.useMemo(()=>{const D=_.sortBy(Object.keys(b),isNumeric);return D.length&&!D.includes(x)&&(state$1.customHtmlSection=_.findKey(b,Boolean)||(D==null?void 0:D[0])||""),D.map(A=>{var I;return{value:A,label:(names[A]||prefix("HTTP ",HTTP_MESSAGES[A])||_.startCase(A))+((I=b[A])!=null&&I.trim()?" *":"")}})},[useDebounce(b,500)]),T=reactExports.useMemo(()=>!_.isEqualWith(v,b,(D,A)=>!D&&!A||void 0),[v,b]),[$,k]=reactExports.useState();return d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},md("Add HTML code to some parts of the Front-end. It's saved to file `custom.html`, that you can edit directly with your editor of choice. "),wikiLink("customization","More help")),reactExports.createElement(Alert,{severity:"info"},md("To customize icons "),wikiLink("customization#icons","read documentation"))),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{display:"flex",alignItems:"center",gap:1,mb:1},reactExports.createElement(SelectField,{label:"Section",value:x,options:C,onChange:D=>state$1.customHtmlSection=D}),reloadBtn(g),reactExports.createElement(IconBtn,{icon:Save,title:`Save
|
|
806
|
+
This functionality is just to help you copy the link in case you have a domain or a complex network configuration.`),value:k,onChange:I=>D(prefix($,I)),start:reactExports.createElement(SelectField,{value:$,onChange:I=>k?D(I+k):toast$1("Enter domain first"),options:["http://","https://"],size:"small",variant:"standard",sx:{"& .MuiSelect-select":{pt:"1px",pb:0}}}),sx:{mt:2}}),reactExports.createElement(Box,{mt:2,textAlign:"right"},reactExports.createElement(Btn$1,{icon:Save,children:"Save",onClick(){return yt(this,null,function*(){C!==g&&(yield apiCall("set_config",{values:{[CFG.base_url]:C.replace(/\/$/,"")}})),S(),d(C)})}})));function D(I){I.endsWith("/")&&(I=I.slice(0,-1)),T(I)}}})}))})}let selectOnReload,exposeVfsLoading;function VfsPage({setTitleSide:d}){var V,K,Q,Z;const[m]=reactExports.useState(()=>new Map),{vfs:g,selectedFiles:x,movingFile:b}=useSnapState$1(),{data:E,reload:v,element:S,loading:C}=useApiEx("get_vfs");exposeVfsLoading=C,reactExports.useEffect(()=>{g||v()},[g,v]);const{data:T}=useApiEx("get_config",{only:[CFG.force_address,CFG.base_url]}),$="md",k=useBreakpoint($),L=useApiEx("get_status"),{data:D}=L,A=reactExports.useMemo(()=>{var ee;const re=T==null?void 0:T[CFG.force_address],ie=(ee=(D==null?void 0:D.urls.https)||(D==null?void 0:D.urls.http))==null?void 0:ee.filter(X=>{if(!re)return!0;const ce=normalizeHost(new URL(X).host);return Object.keys(D.roots).some(pe=>matches(ce,pe))}),oe=re?T==null?void 0:T[CFG.base_url]:D==null?void 0:D.baseUrl;return oe&&ie&&!ie.includes(oe)&&ie.unshift(oe),ie},[D,T]),I=useApiEx("get_accounts"),N=reactExports.useMemo(()=>{var re;return _.sortBy((re=I==null?void 0:I.data)==null?void 0:re.list,"username")},[I.data]),z=reactExports.useRef(_.noop);reactExports.useEffect(()=>{var re;b===((re=x[0])==null?void 0:re.id)&&z.current()},[b]);const Y=!((K=(V=E==null?void 0:E.root)==null?void 0:V.children)!=null&&K.length)&&!((Q=E==null?void 0:E.root)!=null&&Q.source),B=reactExports.useMemo(()=>Y?reactExports.createElement(Alert,{severity:"warning",children:reactExports.createElement(reactExports.Fragment,{},"Add something to your virtual file system — click the ",reactExports.createElement(Add),"button, or set a source for the Home folder")}):(A==null?void 0:A.length)>0&&reactExports.createElement(Alert,{severity:"info",children:["Your shared files can be browsed from ",reactExports.createElement("span",{className:HIDE_IN_TESTS,key:0},reactJoin(" or ",A.slice(0,3).map(re=>reactExports.createElement(Link$1,{href:re,target:"frontend"},re))))]}),[Y,A]);d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},"If you rename or delete here, it's virtual, and only affects what is presented to the users"),B),[B]));const j=(x==null?void 0:x.length)<2&&x[0],U=I.element||!g||!x.length?null:j?reactExports.createElement(FileForm,{key:j.id,isSideBreakpoint:k,addToBar:k&&reactExports.createElement(Box,{flex:1,textAlign:"right",mr:1,color:"#8883"},vfsNodeIcon(j)),statusApi:L,saved:()=>z.current(),accounts:N!=null?N:[],file:j}):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},x.length+" selected"),reactExports.createElement(Button,{onClick:deleteFiles,startIcon:reactExports.createElement(Delete)},"Remove")),reactExports.createElement(List,{dense:!0,disablePadding:!0},x.map(re=>reactExports.createElement(ListItem,{key:re.id},reactExports.createElement(ListItemText,{primary:re.name,secondary:re.source})))));if(reactExports.useEffect(()=>{if(k||!U||!x.length)return;const re=[""];{let oe=j&&j.parent;for(;oe&&!oe.isRoot;)re.push(oe.name),oe=oe.parent}const{close:ie}=newDialog({title:x.length>1?"Multiple selection":reactExports.createElement(Flex$1,{},vfsNodeIcon(x[0]),reactExports.createElement(Flex$1,{flexWrap:"wrap",gap:"0 0.5em"},x[0].name||"Home",reactExports.createElement(Box,{component:"span",color:"text.secondary"},re.join(" /")))),dialogProps:{sx:{justifyContent:"flex-end"}},Content:()=>U,onClose(){state$1.selectedFiles=[]}});return z.current=ie,()=>void ie()},[k,(Z=_.last(x))==null?void 0:Z.id]),reactExports.useEffect(()=>{if(state$1.vfs=void 0,!E)return;m.clear();const{root:re}=E;if(!re)return;re.isRoot=!0,oe(re),state$1.vfs=re,state$1.selectedFiles=ie()||onlyTruthy(state$1.selectedFiles.map(ee=>m.get(ee.id)));function ie(){selectOnReload&&z.current();const ee=selectOnReload&&onlyTruthy(selectOnReload.map(X=>m.get(X)));return selectOnReload=void 0,ee}function oe(ee,X="/",ce=void 0){if(ee.parent=ce,ee.id=ee.isRoot?"/":prefix(X,pathEncode(ee.name),ee.type==="folder"?"/":""),m.set(ee.id,ee),!!ee.children){ee.children=_.sortBy(ee.children,["type",pe=>{var ae;return(ae=pe.name)==null?void 0:ae.toLocaleLowerCase()}]);for(const pe of ee.children)oe(pe,ee.id,ee)}}},[E,m]),S)return m.clear(),S;const W={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"};return reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[$]:5,lg:6,xl:5},W),m.size>0&&reactExports.createElement(VfsTree,{id2node:m,statusApi:L})),k&&U&&reactExports.createElement(Grid,Fe({item:!0,[$]:!0,maxWidth:"100%"},W),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},U))))}function reloadVfs(d){return selectOnReload=d,state$1.vfs=void 0,wait(100).then(()=>exposeVfsLoading)}function deleteFiles(){return yt(this,null,function*(){const d=state$1.selectedFiles;if(d.length&&(yield confirmDialog$1(`Delete ${d.length} item(s)?`)))try{const m=d.map(b=>b.id).sort();_.remove(m,(b,E)=>E&&_.findLastIndex(m,v=>b.startsWith(v),E-1)!==-1),_.pull(m,"/");const{errors:g}=yield apiCall("del_vfs",{uris:m}),x=m.filter((b,E)=>g[E]);if(x.length)return alertDialog$1("Following elements couldn't be deleted: "+x.join(", "),"error");reloadVfs()}catch(m){yield alertDialog$1(m)}})}const FolderIcon=Folder,FileIcon=InsertDriveFileOutlined;let once=!0;function VfsTree({id2node:d,statusApi:m}){var A;const{vfs:g,selectedFiles:x,expanded:b}=useSnapState$1(),E=reactExports.useRef(),v=reactExports.useCallback(function({node:I}){var V,Q,Z,re;let{id:N,name:z,isRoot:Y}=I;const B=I.type==="folder",j=reactExports.useRef();return Y&&j.current&&((V=j.current.firstElementChild)==null||V.classList.toggle("Mui-selected",!(x.length&&!_.find(x,{id:"/"})))),reactExports.createElement(TreeItem,{ref(ie){ie==null||ie.addEventListener("focusin",oe=>oe.stopImmediatePropagation()),j.current=ie},onDoubleClick:W,label:reactExports.createElement(Box,{draggable:!Y,onDragStart(){E.current=N},onDragOver(ie){if(!B)return;const oe=E.current;oe!=null&&oe.startsWith(N)&&!oe.slice(N.length+1,-1).includes("/")||ie.preventDefault()},onDrop(){return yt(this,null,function*(){const ie=E.current;ie&&(yield confirmDialog$1(`Moving ${ie} under ${N}`))&&moveVfs(ie,N)})},sx:{display:"flex",gap:".5em",minHeight:"1.8em",pt:".2em"}},reactExports.createElement(Box,{display:"flex",flex:0},vfsNodeIcon(I),reactExports.createElement(Box,{sx:{flex:0,ml:"2px",my:"2px","&>*":{fontSize:"87%",opacity:.6,mt:"-2px"},display:"grid",gridAutoFlow:"column",gridTemplateRows:"auto auto",height:"1em"}},I.can_delete!==void 0&&iconTooltip(Delete,"Delete permission"),I.can_upload!==void 0&&iconTooltip(Upload,"Upload permission"),!Y&&!I.source&&!I.url&&iconTooltip(Cloud,"Virtual (no source)"),U(I.can_see)&&iconTooltip(RemoveRedEye,"Restrictions on who can see"),U(I.can_read)&&iconTooltip(Lock,"Restrictions on who can download"),I.default&&iconTooltip(Web,"Show as web-page"),I.masks&&iconTooltip(TheaterComedy,"Masks"),I.size===-1&&iconTooltip(HighlightOff,"Source not found"),with_(_.findKey((Q=m.data)==null?void 0:Q.roots,ie=>ie===N.slice(1)),ie=>ie&&iconTooltip(Home,`home for ${ie}`)))),Y?"Home folder":z),collapseIcon:reactExports.createElement(ExpandMore,{onClick:W}),expandIcon:reactExports.createElement(ChevronRight,{onClick:W}),nodeId:N},Y&&!((Z=I.children)!=null&&Z.length)?reactExports.createElement(TreeItem,{nodeId:"?",label:reactExports.createElement("i",{},"nothing here")}):(re=I.children)==null?void 0:re.map(ie=>reactExports.createElement(v,{key:ie.id,node:ie})));function U(ie){return ie!==void 0&&ie!==!0}function W(ie){const oe=state$1.expanded;state$1.expanded=oe.includes(N)?oe.filter(ee=>ee!==N):[...oe,N],ie.preventDefault(),ie.stopPropagation()}},[m.data]),S=reactExports.useRef(null),C=b.length===d.size,T=["/",...((A=g==null?void 0:g.children)==null?void 0:A.length)===1?[g.children[0].id]:[]];once&&(once=!1,state$1.expanded=T);const[$,k]=useToggleButton("Collapse all","Expand all",I=>({icon:I?UnfoldLess:UnfoldMore,sx:{rotate:I?0:"180deg"},onClick(){state$1.expanded=C?T:Array.from(d.keys())}}),C);reactExports.useEffect(()=>{state$1.expanded=_.uniq(state$1.expanded.concat(state$1.selectedFiles.map(I=>{var N;return((N=I.parent)==null?void 0:N.id)||""})))},[state$1.vfs]);const L="vfs",D=x[0];return reactExports.useEffect(()=>{var I;return(I=document.getElementById(`${L}-${D==null?void 0:D.id}`))==null?void 0:I.scrollIntoView({block:"nearest",behavior:"instant"})},[D]),reactExports.createElement(Flex$1,{flexDirection:"column",alignItems:"stretch",flex:1},reactExports.createElement(Flex$1,{mb:1,flexWrap:"wrap",gap:[1,2]},reactExports.createElement(Typography,{variant:"h6"},"Virtual File System"),reactExports.createElement(VfsMenuBar,{statusApi:m,add:k})),g&&reactExports.createElement(TreeView,{ref:S,expanded:toMutable(b),selected:x.map(I=>I.id),multiSelect:!0,id:L,sx:{height:0,flex:"1 1 auto",overflowX:"auto",maxWidth:S.current&&`calc(100vw - ${16+S.current.offsetLeft}px)`,"& ul":{borderLeft:"1px dashed #444",marginLeft:"15px",paddingLeft:"15px"}},onNodeSelect(I,N){typeof N!="string"&&(state$1.selectedFiles=onlyTruthy(N.map(z=>d.get(z))))}},reactExports.createElement(v,{node:g})))}function moveVfs(d,m){return apiCall("move_vfs",{from:d,parent:m}).then(()=>(reloadVfs([m+d.slice(1+d.lastIndexOf("/",d.length-2))]),!0),alertDialog$1)}function vfsNodeIcon(d){return d.isRoot?iconTooltip(Home,"home, or root if you like"):d.type==="folder"?iconTooltip(FolderIcon,"Folder"):d.url?iconTooltip(Link,"Web-link"):iconTooltip(FileIcon,"File")}var safeIsNaN=Number.isNaN||function(m){return typeof m=="number"&&m!==m};function isEqual(d,m){return!!(d===m||safeIsNaN(d)&&safeIsNaN(m))}function areInputsEqual(d,m){if(d.length!==m.length)return!1;for(var g=0;g<d.length;g++)if(!isEqual(d[g],m[g]))return!1;return!0}function memoizeOne(d,m){m===void 0&&(m=areInputsEqual);var g,x=[],b,E=!1;function v(){for(var S=[],C=0;C<arguments.length;C++)S[C]=arguments[C];return E&&g===this&&m(S,x)||(b=d.apply(this,S),E=!0,g=this,x=S),b}return v}var hasNativePerformanceNow=typeof performance=="object"&&typeof performance.now=="function",now=hasNativePerformanceNow?function(){return performance.now()}:function(){return Date.now()};function cancelTimeout(d){cancelAnimationFrame(d.id)}function requestTimeout(d,m){var g=now();function x(){now()-g>=m?d.call(null):b.id=requestAnimationFrame(x)}var b={id:requestAnimationFrame(x)};return b}var size=-1;function getScrollbarSize(d){if(d===void 0&&(d=!1),size===-1||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",document.body.appendChild(m),size=m.offsetWidth-m.clientWidth,document.body.removeChild(m)}return size}var cachedRTLResult=null;function getRTLOffsetType(d){if(d===void 0&&(d=!1),cachedRTLResult===null||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",g.direction="rtl";var x=document.createElement("div"),b=x.style;return b.width="100px",b.height="100px",m.appendChild(x),document.body.appendChild(m),m.scrollLeft>0?cachedRTLResult="positive-descending":(m.scrollLeft=1,m.scrollLeft===0?cachedRTLResult="negative":cachedRTLResult="positive-ascending"),document.body.removeChild(m),cachedRTLResult}return cachedRTLResult}var IS_SCROLLING_DEBOUNCE_INTERVAL$1=150,defaultItemKey$1=function(m,g){return m};function createListComponent(d){var m,g=d.getItemOffset,x=d.getEstimatedTotalSize,b=d.getItemSize,E=d.getOffsetForIndexAndAlignment,v=d.getStartIndexForOffset,S=d.getStopIndexForStartIndex,C=d.initInstanceProps,T=d.shouldResetStyleCacheOnItemSizeChange,$=d.validateProps;return m=function(k){_inheritsLoose(L,k);function L(A){var I;return I=k.call(this,A)||this,I._instanceProps=C(I.props,_assertThisInitialized(I)),I._outerRef=void 0,I._resetIsScrollingTimeoutId=null,I.state={instance:_assertThisInitialized(I),isScrolling:!1,scrollDirection:"forward",scrollOffset:typeof I.props.initialScrollOffset=="number"?I.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},I._callOnItemsRendered=void 0,I._callOnItemsRendered=memoizeOne(function(N,z,Y,B){return I.props.onItemsRendered({overscanStartIndex:N,overscanStopIndex:z,visibleStartIndex:Y,visibleStopIndex:B})}),I._callOnScroll=void 0,I._callOnScroll=memoizeOne(function(N,z,Y){return I.props.onScroll({scrollDirection:N,scrollOffset:z,scrollUpdateWasRequested:Y})}),I._getItemStyle=void 0,I._getItemStyle=function(N){var z=I.props,Y=z.direction,B=z.itemSize,j=z.layout,U=I._getItemStyleCache(T&&B,T&&j,T&&Y),W;if(U.hasOwnProperty(N))W=U[N];else{var V=g(I.props,N,I._instanceProps),K=b(I.props,N,I._instanceProps),Q=Y==="horizontal"||j==="horizontal",Z=Y==="rtl",re=Q?V:0;U[N]=W={position:"absolute",left:Z?void 0:re,right:Z?re:void 0,top:Q?0:V,height:Q?"100%":K,width:Q?K:"100%"}}return W},I._getItemStyleCache=void 0,I._getItemStyleCache=memoizeOne(function(N,z,Y){return{}}),I._onScrollHorizontal=function(N){var z=N.currentTarget,Y=z.clientWidth,B=z.scrollLeft,j=z.scrollWidth;I.setState(function(U){if(U.scrollOffset===B)return null;var W=I.props.direction,V=B;if(W==="rtl")switch(getRTLOffsetType()){case"negative":V=-B;break;case"positive-descending":V=j-Y-B;break}return V=Math.max(0,Math.min(V,j-Y)),{isScrolling:!0,scrollDirection:U.scrollOffset<V?"forward":"backward",scrollOffset:V,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._onScrollVertical=function(N){var z=N.currentTarget,Y=z.clientHeight,B=z.scrollHeight,j=z.scrollTop;I.setState(function(U){if(U.scrollOffset===j)return null;var W=Math.max(0,Math.min(j,B-Y));return{isScrolling:!0,scrollDirection:U.scrollOffset<W?"forward":"backward",scrollOffset:W,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._outerRefSetter=function(N){var z=I.props.outerRef;I._outerRef=N,typeof z=="function"?z(N):z!=null&&typeof z=="object"&&z.hasOwnProperty("current")&&(z.current=N)},I._resetIsScrollingDebounced=function(){I._resetIsScrollingTimeoutId!==null&&cancelTimeout(I._resetIsScrollingTimeoutId),I._resetIsScrollingTimeoutId=requestTimeout(I._resetIsScrolling,IS_SCROLLING_DEBOUNCE_INTERVAL$1)},I._resetIsScrolling=function(){I._resetIsScrollingTimeoutId=null,I.setState({isScrolling:!1},function(){I._getItemStyleCache(-1,null)})},I}L.getDerivedStateFromProps=function(I,N){return validateSharedProps$1(I,N),$(I),null};var D=L.prototype;return D.scrollTo=function(I){I=Math.max(0,I),this.setState(function(N){return N.scrollOffset===I?null:{scrollDirection:N.scrollOffset<I?"forward":"backward",scrollOffset:I,scrollUpdateWasRequested:!0}},this._resetIsScrollingDebounced)},D.scrollToItem=function(I,N){N===void 0&&(N="auto");var z=this.props,Y=z.itemCount,B=z.layout,j=this.state.scrollOffset;I=Math.max(0,Math.min(I,Y-1));var U=0;if(this._outerRef){var W=this._outerRef;B==="vertical"?U=W.scrollWidth>W.clientWidth?getScrollbarSize():0:U=W.scrollHeight>W.clientHeight?getScrollbarSize():0}this.scrollTo(E(this.props,I,N,j,this._instanceProps,U))},D.componentDidMount=function(){var I=this.props,N=I.direction,z=I.initialScrollOffset,Y=I.layout;if(typeof z=="number"&&this._outerRef!=null){var B=this._outerRef;N==="horizontal"||Y==="horizontal"?B.scrollLeft=z:B.scrollTop=z}this._callPropsCallbacks()},D.componentDidUpdate=function(){var I=this.props,N=I.direction,z=I.layout,Y=this.state,B=Y.scrollOffset,j=Y.scrollUpdateWasRequested;if(j&&this._outerRef!=null){var U=this._outerRef;if(N==="horizontal"||z==="horizontal")if(N==="rtl")switch(getRTLOffsetType()){case"negative":U.scrollLeft=-B;break;case"positive-ascending":U.scrollLeft=B;break;default:var W=U.clientWidth,V=U.scrollWidth;U.scrollLeft=V-W-B;break}else U.scrollLeft=B;else U.scrollTop=B}this._callPropsCallbacks()},D.componentWillUnmount=function(){this._resetIsScrollingTimeoutId!==null&&cancelTimeout(this._resetIsScrollingTimeoutId)},D.render=function(){var I=this.props,N=I.children,z=I.className,Y=I.direction,B=I.height,j=I.innerRef,U=I.innerElementType,W=I.innerTagName,V=I.itemCount,K=I.itemData,Q=I.itemKey,Z=Q===void 0?defaultItemKey$1:Q,re=I.layout,ie=I.outerElementType,oe=I.outerTagName,ee=I.style,X=I.useIsScrolling,ce=I.width,pe=this.state.isScrolling,ae=Y==="horizontal"||re==="horizontal",ue=ae?this._onScrollHorizontal:this._onScrollVertical,fe=this._getRangeToRender(),_e=fe[0],ye=fe[1],ve=[];if(V>0)for(var Ee=_e;Ee<=ye;Ee++)ve.push(reactExports.createElement(N,{data:K,key:Z(Ee,K),index:Ee,isScrolling:X?pe:void 0,style:this._getItemStyle(Ee)}));var Te=x(this.props,this._instanceProps);return reactExports.createElement(ie||oe||"div",{className:z,onScroll:ue,ref:this._outerRefSetter,style:_extends$1({position:"relative",height:B,width:ce,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:Y},ee)},reactExports.createElement(U||W||"div",{children:ve,ref:j,style:{height:ae?"100%":Te,pointerEvents:pe?"none":void 0,width:ae?Te:"100%"}}))},D._callPropsCallbacks=function(){if(typeof this.props.onItemsRendered=="function"){var I=this.props.itemCount;if(I>0){var N=this._getRangeToRender(),z=N[0],Y=N[1],B=N[2],j=N[3];this._callOnItemsRendered(z,Y,B,j)}}if(typeof this.props.onScroll=="function"){var U=this.state,W=U.scrollDirection,V=U.scrollOffset,K=U.scrollUpdateWasRequested;this._callOnScroll(W,V,K)}},D._getRangeToRender=function(){var I=this.props,N=I.itemCount,z=I.overscanCount,Y=this.state,B=Y.isScrolling,j=Y.scrollDirection,U=Y.scrollOffset;if(N===0)return[0,0,0,0];var W=v(this.props,U,this._instanceProps),V=S(this.props,W,U,this._instanceProps),K=!B||j==="backward"?Math.max(1,z):1,Q=!B||j==="forward"?Math.max(1,z):1;return[Math.max(0,W-K),Math.max(0,Math.min(N-1,V+Q)),W,V]},L}(reactExports.PureComponent),m.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},m}var validateSharedProps$1=function(m,g){m.children,m.direction,m.height,m.layout,m.innerTagName,m.outerTagName,m.width,g.instance},FixedSizeList=createListComponent({getItemOffset:function(m,g){var x=m.itemSize;return g*x},getItemSize:function(m,g){var x=m.itemSize;return x},getEstimatedTotalSize:function(m){var g=m.itemCount,x=m.itemSize;return x*g},getOffsetForIndexAndAlignment:function(m,g,x,b,E,v){var S=m.direction,C=m.height,T=m.itemCount,$=m.itemSize,k=m.layout,L=m.width,D=S==="horizontal"||k==="horizontal",A=D?L:C,I=Math.max(0,T*$-A),N=Math.min(I,g*$),z=Math.max(0,g*$-A+$+v);switch(x==="smart"&&(b>=z-A&&b<=N+A?x="auto":x="center"),x){case"start":return N;case"end":return z;case"center":{var Y=Math.round(z+(N-z)/2);return Y<Math.ceil(A/2)?0:Y>I+Math.floor(A/2)?I:Y}case"auto":default:return b>=z&&b<=N?b:b<z?z:N}},getStartIndexForOffset:function(m,g){var x=m.itemCount,b=m.itemSize;return Math.max(0,Math.min(x-1,Math.floor(g/b)))},getStopIndexForStartIndex:function(m,g,x){var b=m.direction,E=m.height,v=m.itemCount,S=m.itemSize,C=m.layout,T=m.width,$=b==="horizontal"||C==="horizontal",k=g*S,L=$?T:E,D=Math.ceil((L+x-k)/S);return Math.max(0,Math.min(v-1,g+D-1))},initInstanceProps:function(m){},shouldResetStyleCacheOnItemSizeChange:!0,validateProps:function(m){m.itemSize}});let lastPath=".";function FilePicker({onSelect:d,multiple:m=!0,files:g=!0,folders:x=!0,fileMask:b,from:E=lastPath}){const[v,S]=reactExports.useState(E);lastPath=v;const[C,T]=reactExports.useState(!1),$=reactExports.useRef(!1);useApi(!C&&"resolve_path",{path:E,closestFolder:!0},{onResponse:(ce,pe)=>yt(this,null,function*(){try{const{path:ae}=pe;if(typeof ae!="string")return;S(ae),$.current=ae[1]===":"||ae.startsWith("\\\\")}finally{T(!0)}})});const{list:k,props:L,error:D,connecting:A,reload:I}=useApiList(C&&"get_ls",{path:v,files:g,fileMask:b});reactExports.useEffect(()=>{z([]),B("")},[v]);const[N,z]=reactExports.useState([]),[Y,B]=reactExports.useState(""),j=reactExports.useMemo(()=>_.debounce(ce=>B(ce)),[]),U=reactExports.useMemo(()=>{const ce=new RegExp(_.escapeRegExp(Y),"i");return pe=>ce.test(pe)},[Y]),W=useBreakpoint("sm"),[V,K]=reactExports.useState(0),Q=reactExports.useMemo(()=>_.sortBy(k.filter(ce=>U(ce.n)),["k","n"]),[k,U]),Z=$.current?"":"/",re=$.current?"\\":"/",ie=enforceFinal(re,v),oe=v.length<2;return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{label:"Current folder",value:v,InputLabelProps:{shrink:!0},helperText:"UNC paths are supported",onChange(ce){return yt(this,null,function*(){if(!ce)return S(Z);const pe=yield apiCall("resolve_path",{path:ce});if(pe.isFolder===!1)return g?d([ce]):S(ce.slice(0,-basename(ce).length-1));S(pe.path)})},end:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconBtn,{title:"root",disabled:oe,icon:VerticalAlignTop,onClick(){S(Z)}}),reactExports.createElement(IconBtn,{title:"parent folder",disabled:oe,icon:ArrowUpward,onClick(){const ce=/[\\/]$/.test(v)?v.slice(0,-1):v,pe=ce.lastIndexOf(re),ae=pe===1,ue=isWindowsDrive(ce)||ae?Z:ce.slice(0,pe||1);S(ue)}}))}),D?reactExports.createElement(Alert,{severity:"error",sx:{flex:1}},err2msg$1(D)):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{ref(ce){if(!ce)return;const pe=(ce==null?void 0:ce.clientHeight)-1;pe-V>1&&K(pe)},sx:{flex:1,display:"flex",flexDirection:"column"}},k.length?reactExports.createElement(FixedSizeList,{width:"100%",height:V,itemSize:46,itemCount:Q.length,overscanCount:5,children({index:ce,style:pe}){const ae=Q[ce],ue=ae.k==="d";return reactExports.createElement(MenuItem,{style:Rt(Fe({},pe),{padding:0}),key:ae.n,onClick(){ue?S(ie+ae.n):d([ie+ae.n])}},m&&reactExports.createElement(Checkbox$1,{checked:N.includes(ae.n),disabled:!x&&ue,onClick(fe){const _e=ae.n,ye=N.filter(ve=>ve!==_e);z(ye.length<N.length?ye:[...N,_e]),fe.stopPropagation()}}),reactExports.createElement(ListItemIcon,{},reactExports.createElement(ae.k?FolderIcon:FileIcon)),reactExports.createElement(ListItemText,{sx:{whiteSpace:"pre-wrap",wordBreak:"break-all"}},ae.n),!ue&&ae.s!==void 0&&reactExports.createElement(Typography,{variant:"body2",color:"text.secondary",ml:4,mr:1},formatBytes(ae.s)))}}):reactExports.createElement(Center,{flex:1,mt:"4em"},A?spinner():"No elements in this folder")),reactExports.createElement(Flex$1,{alignItems:"center"},(m||x||!g)&&reactExports.createElement(Btn$1,{disabled:!N.length&&(!v||!x&&g),sx:{minWidth:"max-content"},onClick(){d(N.length?N.map(ce=>ie+ce):[v])}},g&&(N.length||!x)?`Select (${N.length})`:W?"Select this folder":"This folder"),x&&reactExports.createElement(Btn$1,{icon:CreateNewFolder,variant:"outlined",doneMessage:!0,labelIf:"sm",onClick(){return yt(this,null,function*(){const ce=yield promptDialog$1("New folder name");if(!ce)return!1;yield apiCall("mkdir",{path:`${v}/${ce}`}),I()})}},"New folder"),reactExports.createElement(TextField,{size:"small",value:Y,label:`Filter results (${Q.length}${Q.length<k.length?"/"+k.length:""})`,onChange(ce){j(ce.target.value)},sx:{flex:1}}),(L==null?void 0:L.total)>0&&reactExports.createElement(IconProgress,{icon:Storage,progress:1,offset:(L.total-L.free)/L.total,title:formatDiskSpace(L)}))))}function formatDiskSpace({free:d,total:m}){return`${formatBytes(d)} available (${formatPerc(d/m)}) of ${formatBytes(m)}`}function FileField(C){var T=C,{value:d,onChange:m,files:g=!0,folders:x=!1,fileMask:b,defaultPath:E,title:v}=T,S=qt(T,["value","onChange","files","folders","fileMask","defaultPath","title"]);const $=useBreakpoint("md");return reactExports.createElement(StringField,Rt(Fe({},S),{value:d,onChange:m,wrap:!0,end:reactExports.createElement(IconBtn,{icon:Eject,title:"Browse files...",edge:"end",sx:{mb:.5},onClick(){const{close:k}=newDialog({title:v!=null?v:(g?"Pick a file":"Pick a folder")+prefix(": ",b),dialogProps:{fullScreen:!$,sx:{minWidth:"min(90vw, 40em)",minHeight:"calc(100vh - 9em)"}},Content(){return reactExports.createElement(FilePicker,{multiple:!1,folders:x,files:g,fileMask:b,from:d||E,onSelect(D){return yt(this,null,function*(){var N;let A=D==null?void 0:D[0];if(!A)return;const I=(N=yield apiCall("get_cwd"))==null?void 0:N.path;A.startsWith(I)&&(A=A.slice(I.length+1)||"."),m(A,{was:d,event:"picker"}),k()})}})}})}})}))}const HFS_GITHUB_ACCOUNT=HFS_REPO.replace(/\/.+/,"/");function OnlinePlugins(){const[d,m]=reactExports.useState(""),g=useDebounce(d,1e3),{list:x,error:b,initializing:E}=useApiList("get_online_plugins",{text:g}),v=useSnapState$1();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{value:d,onChange:m,start:reactExports.createElement(Search),typing:!0,label:"Search text"}),reactExports.createElement(DataTable,{error:b&&err2msg$1(xlate(b,PLUGIN_ERRORS)),rows:x.length?x:[],noRows:"No compatible plugins have been found",fillFlex:!0,initializing:E,columnVisibilityModel:v.onlinePluginsColumns,onColumnVisibilityModelChange:S=>Object.assign(state$1.onlinePluginsColumns,S),columns:[{field:"id",headerName:"name",flex:1,renderCell:renderName,mergeRender:{description:{fontSize:"x-small"}}},{field:"version",width:70},{field:"pushed_at",headerName:"last update",valueGetter:({value:S})=>new Date(S).toLocaleDateString()},{field:"license",width:80},themeField,Rt(Fe({},descriptionField),{flex:3,hideUnder:"sm"}),{field:"stargazers_count",width:50,headerName:"stars",align:"center",hideUnder:"sm"}],actions:({row:S,id:C})=>[reactExports.createElement(IconBtn,{icon:Download,title:"Install",progress:S.downloading,disabled:S.installed&&"Already installed",tooltipProps:{placement:"bottom-end"},onClick:()=>installPluginFromResult(S)}),reactExports.createElement(IconBtn,{icon:RemoveRedEye,disabled:!S.preview,onClick:()=>newDialog({title:C,Content:()=>reactExports.createElement(ShowImages,{imgs:wantArray(S.preview)})})})]}))}function ShowImages({imgs:d}){const[m,g]=reactExports.useState(0);return reactExports.createElement(Flex$1,{vert:!0,flex:1},reactExports.createElement(Flex$1,{vert:!0,center:!0,height:0,flex:"auto",minHeight:"50vh",minWidth:"50vw"},reactExports.createElement("img",{src:d[m],style:{margin:"auto",maxWidth:"100%",maxHeight:"100%"}})),d.length>1&&reactExports.createElement(Flex$1,{center:!0},reactExports.createElement(IconBtn,{icon:ArrowBack,disabled:!m,onClick:()=>g(m-1)}),reactExports.createElement(IconBtn,{icon:ArrowForward,disabled:m>=d.length-1,onClick:()=>g(m+1)})))}function installPluginFromResult(d){return yt(this,null,function*(){if(!d.id.startsWith(HFS_GITHUB_ACCOUNT)&&!(yield confirmDialog$1(reactExports.createElement(Flex$1,{vert:!0,alignItems:"center"},reactExports.createElement(Warning,{color:"warning",fontSize:"large"}),"Proceed only if you trust this plugin",reactExports.createElement(Box,{fontSize:"60%"},"A plugin has the same power of any other software"))))||d.missing&&!(yield confirmDialog$1("This will also install: "+_.map(d.missing,"repo").join(", "))))return;const m=d.branch||d.default_branch;return installPlugin(d.id,m).catch(g=>{if(g.code!==HTTP_FAILED_DEPENDENCY)return alertDialog$1(g);const x=reactExports.createElement(reactExports.Fragment,{},"This plugin has some dependencies unmet:",g.data.map(b=>reactExports.createElement("li",{key:b.repo},b.repo+": "+b.error)));return alertDialog$1(x,"error")})})}function installPlugin(d,m){return yt(this,null,function*(){try{const g=yield apiCall("download_plugin",{id:d,branch:m,stop:!0},{timeout:!1});(yield confirmDialog$1(`Plugin ${d} downloaded`,{trueText:"Start"}))&&(yield startPlugin(g.id))}catch(g){let x=!1;if(g.code===HTTP_FAILED_DEPENDENCY)for(const b of g.cause)b.error==="missing"&&(toast$1("Installing dependency: "+b.repo),yield installPlugin(b.repo),x=!0);if(x)return installPlugin(d,m);throw g}})}const TABS={Installed:InstalledPlugins,"Search online|Search":OnlinePlugins,"Check updates|Updates":()=>reactExports.createElement(InstalledPlugins,{updates:!0})},LABELS=Object.keys(TABS),PANES=Object.values(TABS),PLUGIN_ERRORS={ENOTFOUND:"Cannot reach github.com",ECONNREFUSED:"Cannot reach github.com"};function PluginsPage(){const[d,m]=reactExports.useState(0),g=!useBreakpoint("sm");return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Tabs,{value:d,onChange(x,b){m(b)}},LABELS.map(x=>reactExports.createElement(Tab,{key:x,label:x.split("|").slice(g?-1:0)[0]}))),reactExports.createElement(PANES[d]))}function evalWrapper(s){return eval(s)}function InstalledPlugins({updates:d}){const{list:m,error:g,setList:x,initializing:b}=useApiList(d?"get_plugin_updates":"get_plugins",{},{map(T){T.config&&(T.config=tryJson(T.config,$=>evalWrapper("()=>("+$+")")()))}});reactExports.useEffect(()=>{x(T=>_.sortBy(T,$=>{var k;return($.error?0:$.started?1:2)+treatPluginName(((k=$.repo)==null?void 0:k.split("/").reverse().join("/"))||$.id).toLowerCase()}))},[m.length]);const E="small",{pause:v,pauseButton:S}=usePauseButton("plugins",()=>getSingleConfig(CFG.suspend_plugins).then(T=>!T),{onClick:()=>apiCall("set_config",{values:{[CFG.suspend_plugins]:!v}})}),C=useTheme$1();return reactExports.createElement(DataTable,{error:isPrimitive(g)?xlate(g,PLUGIN_ERRORS):_.map(g,(T,$)=>`Error ${$} for: ${T.join(", ")}`).join("; "),rows:m.length?m:[],fillFlex:!0,initializing:b,disableColumnSelector:!0,getRowHeight:d&&(({model:T})=>T.changelog?"auto":50),noRows:d&&'No updates available. Only plugins available on "search online" are checked.',columns:[{field:"id",headerName:"name",flex:.3,minWidth:150,renderCell:renderName,valueGetter({row:T}){return T.repo||T.id},mergeRender:{[d?"changelog":"description"]:{fontSize:"x-small"}}},{field:"version",width:70,hideUnder:"sm",mergeRender:{installedVersion:{fontSize:"x-small"}}},themeField,Rt(Fe({},descriptionField),{flex:1,hideUnder:"sm"}),{field:"installedVersion",hideUnder:!0,dialogHidden:!0,renderCell:({value:T})=>T&&`Yours ${T}`},{field:"changelog",headerName:"Change log",flex:2,hideUnder:!d||"sm",sx:{flexDirection:"column",alignItems:"flex-start"},renderCell({value:T,row:$}){return Array.isArray(T)?reactExports.createElement(Table,{sx:{td:{p:0}}},_.uniq(_.sortBy(T,"version").filter(k=>_.isString(k.message)&&k.message&&k.version>$.installedVersion)).map((k,L)=>reactExports.createElement(TableRow,{key:L},reactExports.createElement(TableCell,{sx:{whiteSpace:"pre",verticalAlign:"top"}},`• ${k.version}: `),reactExports.createElement(TableCell,{},md(k.message))))):null}}],footerSide:()=>!d&&S,actions:({row:T,id:$})=>d?[reactExports.createElement(IconBtn,{icon:Upgrade,title:T.downloading?"Downloading":T.updated?"Already updated":"Update",disabled:T.updated,progress:T.downloading,size:E,onClick(){return yt(this,null,function*(){yield apiCall("update_plugin",{id:$},{timeout:!1}).catch(A=>{var I;throw A.code!==HTTP_FAILED_DEPENDENCY?A:Error("Failed dependencies: "+((I=A.cause)==null?void 0:I.map(N=>prefix('plugin "',N.id||N.repo,'" ')+N.error).join("; ")))}),toast$1("Plugin updated")})}})]:[reactExports.createElement(IconBtn,T.started?{icon:StopCircle,title:reactExports.createElement(Box,{"aria-hidden":!0},`Stop ${$}`,reactExports.createElement("br"),"Started "+new Date(T.started).toLocaleString()),"aria-label":`Stop ${$}`,size:E,color:"success",doneAnimation:!0,onClick:()=>apiCall("stop_plugin",{id:$})}:{icon:PlayCircle,title:`Start ${$}`,disabled:v,size:E,onClick:()=>startPlugin($)}),reactExports.createElement(IconBtn,{icon:T.config||!T.started||!T.log?Settings:ListAlt,title:T.config||!T.log?"Options":"Log",size:E,disabled:!T.started&&"Start plugin to access options"||!T.config&&!T.log&&"No options and no log for this plugin",onClick(){return yt(this,null,function*(){const{config:A}=yield apiCall("get_plugin",{id:$});let I=with_(T.configDialog,B=>{var j;return C.breakpoints.values[B==null?void 0:B.maxWidth]||((j=B==null?void 0:B.sx)==null?void 0:j.maxWidth)||xlate(B==null?void 0:B.maxWidth,{xs:0})||432});typeof I=="number"&&(I+="px");const N=!!T.config,z=yield formDialog$1({title:N?`Options for ${$}`:`Log for ${$}`,form:B=>({before:T.description&&reactExports.createElement(Box,{mx:2,mb:2},T.description),fields:makeFields(callable(T.config,B)||{},B),save:N?{children:"Save and close"}:!1,barSx:{gap:1},addToBar:[reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>Y(B)},"Save")]}),values:A,dialogProps:_.merge({maxWidth:"md",sx:{m:"auto"}},T.configDialog,{maxWidth:!1,sx:{maxWidth:null}}),Wrapper({children:B}){const{list:j,setList:U}=useApiList("get_plugin_log",{id:$},{map(K){K.ts=new Date(K.ts)}}),W=useAutoScroll(j);let V;return reactExports.createElement(Flex$1,{alignItems:"stretch",justifyContent:"center",flexWrap:"wrap",flexDirection:N?void 0:"column"},reactExports.createElement(Box,{maxWidth:I,minWidth:"min-content"},B),reactExports.createElement(Paper,{elevation:1,sx:{position:"relative",fontFamily:"monospace",flex:1,minWidth:"min(40em, 90vw)",minHeight:"20em",px:.5}},reactExports.createElement(Box,{my:.5,pb:.5,borderBottom:"1px solid",display:"flex",alignItems:"center",justifyContent:"space-between"},"Output",reactExports.createElement(Btn$1,{size:"small",sx:{p:0},onClick(){U([])}},"Clear")),reactExports.createElement(Box,{position:"absolute",bottom:0,top:"31px",left:0,right:0,sx:{overflowY:"auto"},ref:W},!j.length&&reactExports.createElement(Box,{p:1},"Log is empty"),reactExports.createElement(Box,{sx:{textIndent:"-1em",pl:"1em",position:"absolute",width:"calc(100% - 1.2em)",ml:"2px",pt:".2em"}},j.map(K=>{formatDate(K.ts);const Q=formatDate(K.ts);return reactExports.createElement(reactExports.Fragment,{key:K.id},Q!==V&&(V=Q),reactExports.createElement(Box,{},reactExports.createElement(Box,{title:Q,display:"inline",color:"text.secondary",mr:1},formatTime(K.ts)),replaceStringToReact(K.msg,/https?:\/\/\S+/,Z=>reactExports.createElement(Link$1,{href:Z[0],target:"_blank"},Z[0]))))})))))}});if(z&&!_.isEqual(A,z))return Y(z);function Y(B){return yt(this,null,function*(){yield apiCall("set_plugin",{id:$,config:B}),Object.assign(A,B),toast$1("Configuration saved")})}})}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Uninstall",size:E,onClick(){return yt(this,null,function*(){const A=yield confirmDialog$1(`${$}: delete configuration too?`,{trueText:"Yes",falseText:"No",after:({onClick:I})=>reactExports.createElement(Btn$1,{variant:"outlined",onClick(){I(void 0)}},"Abort")});A!==void 0&&(yield apiCall("uninstall_plugin",{id:$,deleteConfig:A}),toast$1("Plugin uninstalled"))})}})]})}function getSingleConfig(d){return apiCall("get_config",{only:[d]}).then(m=>m[d])}function treatPluginName(d){return d.replace(/hfs-/,"")}function renderName({row:d,value:m}){const{repo:g}=d;return reactExports.createElement(reactExports.Fragment,{},d.downgrade&&x("This version is older than the one you installed. It is possible that the author found a problem with your version and decided to retire it.",!0),x(d.error||d.badApi,!d.error),g!=null&&g.includes("//")?reactExports.createElement(Link$1,{href:g,target:"plugin"},m):with_(g==null?void 0:g.split("/"),b=>(b==null?void 0:b.length)!==2?m:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Link$1,{href:"https://github.com/"+g,target:"plugin",onClick(E){E.stopPropagation()}},treatPluginName(b[1])),NBSP+"by ",b[0])));function x(b,E=!1){return b&&hTooltip(b,b,reactExports.createElement(ErrorIcon,{fontSize:"small",color:E?"warning":"error",sx:{ml:-.5,mr:.5}}))}}function makeFields(d,m){return Object.entries(d).map(([g,x])=>{var k;if(!x)return;let $=x,{type:b,defaultValue:E,frontend:v,showIf:S}=$,C=qt($,["type","defaultValue","frontend","showIf"]);try{if(C.getError=evalWrapper(C.getError),typeof S=="string"&&(C.showIf=S=evalWrapper(S)),S&&!S(m))return}catch(L){}C.helperText&&(C.helperText=md(C.helperText,{html:!1}));const T=type2comp[b];if(m===!1&&b==="date_time"&&(C.$type="dateTime"),T===ArrayField){let{fields:L}=C;C.valuesForAdd=newObj(callable(L,!1),D=>D.defaultValue),typeof L=="string"&&(L=evalWrapper(L)),(k=C.details)!=null||(C.details=!1),C.fields=D=>_.map(makeFields(callable(L,D),D),(A,I)=>A&&Rt(Fe({k:I},A),{defaultValue:void 0})).filter(Boolean)}return E!==void 0&&b==="boolean"&&(C.placeholder=`Default value is ${JSON.stringify(E)}`),Fe({k:g,comp:T},C)})}const type2comp={string:StringField,number:NumberField,boolean:BoolField,select:SelectField,multiselect:MultiSelectField,array:ArrayField,real_path:FileField,vfs_path:VfsPathField,username:UsernameField,color:ColorField,showHtml:({html:d})=>reactExports.createElement(Html,{},String(d)),date_time:DateTimeField,net_mask:NetmaskField};function startPlugin(d){return yt(this,null,function*(){try{return yield apiCall("start_plugin",{id:d}),toast$1("Plugin started",reactExports.createElement(PlayCircle,{color:"success"})),!0}catch(m){alertDialog$1(`Plugin ${d} didn't start, with error: ${String((m==null?void 0:m.message)||m)}`,"error")}})}function UsernameField(E){var v=E,{value:d,onChange:m,multiple:g,groups:x}=v,b=qt(v,["value","onChange","multiple","groups"]);const{data:S,element:C,loading:T}=useApiEx("get_accounts");return!T&&C||reactExports.createElement(g?MultiSelectField:SelectField,Fe({value:d,onChange:m,options:S==null?void 0:S.list.filter($=>x===void 0||x===$.isGroup).map($=>$.username)},b))}function ColorField(d){return reactExports.createElement(StringField,Fe({inputProps:Fe({type:"color",style:{marginRight:24}},!d.value&&{value:"#888888",style:{zIndex:1,opacity:.1}}),InputProps:{endAdornment:d.value?reactExports.createElement(Btn$1,{icon:Clear,size:"small",sx:{position:"absolute",right:4},title:"Clear",onClick(m){d.onChange(null,{was:d.value,event:m})}}):reactExports.createElement(Box,{sx:{position:"absolute",width:"100%",bottom:2,pt:"3px",textAlign:"center",color:"#fff",background:"repeating-linear-gradient(45deg, #333, #333 10px, #444 10px, #444 20px)"}},"default")},typing:!0},d))}const descriptionField={field:"description",mergeRender:{isTheme:{}},mergeRenderSx:{float:"left"}},themeField={field:"isTheme",headerName:"is theme",hideUnder:!0,dialogHidden:!0,type:"boolean",renderCell({value:d}){return d&&iconTooltip(ThemeIcon,_.isString(d)?`${d} theme`:"theme",{fontSize:"1.2rem",mr:".3em"})}},cacheKey="onlinePluginsCache";function RandomPlugin(){const{hideRandomPlugin:d}=useSnapState$1(),m=localStorage.getItem(cacheKey),g=reactExports.useMemo(()=>{const C=tryJson(m||"");return(C==null?void 0:C.ts)&&Date.now()-C.ts<DAY&&_.shuffle(C.list)},[m]),{list:x,initializing:b}=useApiList(!d&&!g&&"get_online_plugins"),[E,v]=reactExports.useState(-1),S=g==null?void 0:g[E];if(reactExports.useEffect(()=>{!g&&!b&&x.length&&localStorage.setItem(cacheKey,JSON.stringify({ts:Date.now(),list:x})),v(0)},[x,b]),reactExports.useEffect(()=>{E>0&&!S&&toast$1("No more plugins!")},[E]),!(d||!S))return reactExports.createElement(Card,{sx:{display:{xs:"none",md:"block"},float:"right",width:"min(50%, 30em)",ml:"1em"}},reactExports.createElement(CardContent,{},reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.4em"},reactExports.createElement(Box,{color:"warning.main",mr:1,display:"inline"},"★"),"Random plugin:"),reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.8em",my:1},renderName({row:S})),reactExports.createElement(Box,{},S.description),S.preview&&reactExports.createElement("img",{src:wantArray(S.preview)[0],style:{maxWidth:"100%",maxHeight:"50vh",marginTop:"1em",border:"1px solid",maskImage:"radial-gradient(circle at center, black 50%, transparent 100%)"}})),reactExports.createElement(CardActions,{},reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>installPluginFromResult(S)},"Install"),reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>v(C=>C+1)},"Another"),reactExports.createElement(Btn$1,{variant:"outlined",onClick(){state$1.hideRandomPlugin=!0}},"Hide this box")))}function HomePage(){var Z,re,ie,oe,ee;const d=" — ",{username:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_status"),{data:E}=useApiEx(m&&"get_account"),v=useApiEx("get_config",{only:["https_port","cert","private_key","proxies","ignore_proxies","vfs"]}),{list:S}=useApiList("get_plugins"),[C,T]=reactExports.useState(!1),{list:$}=useApiList(C&&"get_plugin_updates"),[k,L]=reactExports.useState(),[D,A]=reactExports.useState();if(b||!g)return b;const{http:I,https:N}=g,z=!(I!=null&&I.listening)&&(N!=null&&N.listening)?"s":"",Y=z?N:(I==null?void 0:I.listening)&&I,B=Y&&`http${z}://`+window.location.hostname+(Y.port===(z?443:80)?"":":"+Y.port),j=objSameKeys({http:I,https:N},X=>X.busy?[`port ${X.configuredPort} already used by ${X.busy}${d}choose a `,cfgLink("different port"),` or stop ${X.busy}`]:X.error),U=j&&onlyTruthy(Object.entries(j).map(([X,ce])=>ce&&[md(`Protocol <u>${X}</u>: `),ce,(isCertError(ce)||isKeyError(ce))&&[d,reactExports.createElement(LinkBtn,{onClick(){suggestMakingCert().then(()=>wait(999)).then(v.reload).then(x)}},"make one")," or ",d,cfgLink("provide adequate files")]])),W={onContextMenu(X){return yt(this,null,function*(){if(X.preventDefault(),!g.updatePossible)return alertDialog$1("Automatic update is only for binary versions","warning");const ce=yield promptDialog$1("Enter a link to the zip to install");ce&&(yield update(ce))})},title:g.updatePossible&&"Right-click if you want to install a zip"},V=(Z=v.data)==null?void 0:Z.vfs;return reactExports.createElement(Box,{},reactExports.createElement(RandomPlugin),reactExports.createElement(Box,{display:"flex",gap:2,flexDirection:"column",alignItems:"flex-start",height:"100%"},dontBotherWithKeys(((re=g.alerts)==null?void 0:re.map(X=>entry("warning",md(X,{html:!1}))))||[]),U.length?dontBotherWithKeys(U.map(X=>entry("error",dontBotherWithKeys(X)))):entry("success","Server is working"),V&&!((ie=V.children)!=null&&ie.length)&&!V.source?entry("warning","You have no shared files",d,fsLink("add some")):null,E!=null&&E.adminActualAccess?entry("","Welcome, "+m):entry("",md("You're accessing the Admin-panel without an account because you are on localhost"),...g.anyAccountCanLoginAdmin?[]:[d,"to access from another computer, you must ",reactExports.createElement(InLink,{to:"accounts"},md("create an account with *admin* permission"))]),!B&&entry("warning","Frontend unreachable: ",_.map(j,(X,ce)=>ce+" "+(X?"is in error":"is off")).join(", "),!U.length&&[d,cfgLink("switch http or https on")]),with_(g.acmeRenewError,X=>X&&entry("warning",X)),with_(g.blacklistedInstalledPlugins,X=>(X==null?void 0:X.length)>0&&entry("warning","Found blacklisted plugin(s): ",X.join(", "))),with_(S==null?void 0:S.filter(X=>X.error||X.badApi).length,X=>X>0&&entry("warning",`${X} plugin(s) failing`,d,reactExports.createElement(InLink,{to:"plugins"},"check now"))),!((oe=v.data)!=null&&oe.split_uploads)&&Date.now()-Number(g.cloudflareDetected||0)<DAY&&entry("",wikiLink("Reverse-proxy#cloudflare","Cloudflare detected, read our guide")),with_(proxyWarning(v.data,g),X=>X&&entry("warning",X,d,cfgLink("set the number of proxies"),d,"unless you are sure and you can ",reactExports.createElement(Btn$1,{variant:"outlined",size:"small",sx:{lineHeight:"unset"},confirm:"Go on only if you know what you are doing",onClick:()=>apiCall("set_config",{values:{ignore_proxies:!0}}).then(v.reload)},"ignore this warning"),d,wikiLink("Proxy-warning","Explanation"))),(((ee=v.data)==null?void 0:ee.proxies)>0||(g==null?void 0:g.proxyDetected))&&entry("",wikiLink("Reverse-proxy","Read our guide on proxies")),g.frpDetected&&entry("warning",'FRP is detected. It should not be used with "type = tcp" with HFS. Possible solutions are',reactExports.createElement("ol",{},reactExports.createElement("li",{},"configure FRP with type=http (best solution)"),reactExports.createElement("li",{},md("configure FRP to connect to HFS <u>not</u> with localhost (safe, but you won't see users' IPs)")),reactExports.createElement("li",{},`disable "admin access for localhost" in HFS (safe, but you won't see users' IPs)`))),entry("",md("This is the *Admin-panel*, where you manage your server. Access your files on the [Front-end](../..).")),entry("",wikiLink("","See the documentation")," and ",reactExports.createElement(Link$1,{target:"support",href:REPO_URL+"discussions"},"get support")),!k&&with_(g.autoCheckUpdateResult,X=>(X==null?void 0:X.isNewer)&&reactExports.createElement(Update,{info:X,fromAuto:!0,bodyCollapsed:!0,title:"An update has been found"})),$.length>0&&entry("success","Updates available for plugin(s): "+$.map(X=>X.id).join(", ")),reactExports.createElement(ConfigForm,{gridProps:{sx:{mt:1,display:"flex",columnGap:1,alignitems:"center","&>div.MuiGrid2-root":{width:"auto",px:.5,py:0},".MuiCheckbox-root":{pl:"2px"}}},saveOnChange:!0,form:{fields:[g.updatePossible==="local"?reactExports.createElement(Btn$1,{icon:UpdateIcon,onClick:()=>update()},"Update from local file"):!k&&reactExports.createElement(Btn$1,Fe({icon:UpdateIcon,onClick(){return apiCall("wait_project_info").then(x),T(!0),apiCall("check_update").then(X=>L(X.options),alertDialog$1)}},W),"Check for updates"),{k:"auto_check_update",comp:CheckboxField,label:"Auto check updates daily"},{k:"update_to_beta",comp:CheckboxField,label:"Include beta versions"}]}}),k&&with_(_.find(k,"isNewer"),X=>!k.length||!g.updatePossible&&!X?entry("","No update available"):X&&!g.updatePossible?entry("success",`Version ${X.name} available`):reactExports.createElement(Flex$1,{vert:!0},k.map(ce=>reactExports.createElement(Update,{info:ce,key:ce.name})))),reactExports.createElement(Flex$1,{flexWrap:"wrap"},!D&&g.updatePossible&&g.previousVersionAvailable&&reactExports.createElement(Btn$1,{icon:Restore,onClick:()=>update(PREVIOUS_TAG)},"Reinstall previous version"),g.updatePossible?D?reactExports.createElement(Flex$1,{vert:!0},D.map(X=>reactExports.createElement(Update,{info:X,key:X.name,bodyCollapsed:!0}))):reactExports.createElement(Btn$1,Fe({icon:Colorize,onClick:K},W),"Get another version"):entry("",reactExports.createElement(Link$1,{href:REPO_URL+"releases/",target:"repo"},"All releases"))),reactExports.createElement(SwitchThemeBtn),Date.now()-Number(new Date(g.started))>HOUR&&reactExports.createElement(Link$1,{title:"Donate",target:"donate",style:{textDecoration:"none",position:"fixed",bottom:0,right:4,fontSize:"large"},href:"https://www.paypal.com/donate/?hosted_button_id=HC8MB4GRVU5T2"},"❤️")));function K(){return yt(this,null,function*(){return apiCall("get_other_versions").then(X=>A(X.options),alertDialog$1)})}}function Update({info:d,title:m,bodyCollapsed:g,fromAuto:x}){const[b,E]=reactExports.useState(g);return reactExports.createElement(Flex$1,{alignItems:"flex-start",flexWrap:"wrap"},reactExports.createElement(Card,{className:"release"},reactExports.createElement(CardContent,{},reactExports.createElement(Flex$1,{},m&&reactExports.createElement(Box,{fontSize:"larger",mb:1},m),reactExports.createElement(Btn$1,Rt(Fe({icon:UpdateIcon},!d.isNewer&&d.prerelease&&{color:"warning",variant:"outlined"}),{onClick:()=>update(x?void 0:d.tag_name)}),prefix("Install ",d.name,d.isNewer?"":" (older)")),reactExports.createElement(Link$1,{href:REPO_URL+"releases/tag/"+d.tag_name,target:"repo"},reactExports.createElement(OpenInNew))),b?reactExports.createElement(LinkBtn,{sx:{display:"block",mt:1},onClick(){E(!1)}},"See details"):reactExports.createElement(Box,{mt:1},renderChangelog(d.body)))))}function renderChangelog(d){return md(d,{html:!1,onText:m=>replaceStringToReact(m,new RegExp("(?<=^|\\W)#(\\d+)\\b|(https:.*\\S+)","g"),g=>g[1]?reactExports.createElement(Link$1,{href:REPO_URL+"issues/"+g[1],target:"_blank"},reactExports.createElement(OpenInNew,{fontSize:"small"})):reactExports.createElement(Link$1,{href:g[2],target:"_blank"},g[2]))})}function update(d){return yt(this,null,function*(){if(!(yield confirmDialog$1("Installation may take less than a minute, depending on the speed of your server")))return;toast$1("Downloading");const m=yield apiCall("update",{tag:d},{timeout:600}).then(()=>0,b=>b);if(m)return alertDialog$1(m);toast$1("Restarting");const g=Date.now();let x;for(;yield apiCall("NONE").then(()=>0,b=>!b.code);)!x&&Date.now()-g>15e3&&(x=alertDialog$1("This is taking too long, please check your server","warning")),yield wait(500);x==null||x.close(),subscribeKey(state$1,"loginRequired",()=>state$1.loginRequired=!1),yield alertDialog$1("Procedure complete","success"),window.location.reload()})}function entry(d,...m){return reactExports.createElement(Box,{fontSize:"x-large",color:g=>{var x;return d&&((x=g.palette[d])==null?void 0:x.main)}},reactExports.createElement({success:CheckCircle,info:Info,"":Info,warning:Warning,error:ErrorIcon}[d],{sx:{mr:1,color:d?void 0:"primary.main"}}),reactExports.createElement("span",{style:["warning","error"].includes(d)?{animation:".5s blink 2"}:void 0},...m))}function fsLink(d="File System page"){return reactExports.createElement(InLink,{to:"fs"},d)}function cfgLink(d="Options page"){return reactExports.createElement(InLink,{to:"options"},d)}function proxyWarning(d,m){return m&&d&&!d.ignore_proxies&&(!d.proxies&&m.proxyDetected?"A proxy was detected but none is configured":d.proxies&&!m.proxyDetected&&Date.now()-+new Date(m.started)>DAY?`Proxies is set to ${d.proxies} but none was detected recently. Consider setting it zero`:"")}let loaded,exposedReloadStatus;const pageState=proxy({changes:{}});subscribe(state$1,d=>{d.some(m=>m[1][0]==="config")&&recalculateChanges()});function OptionsPage(){var B,j;const{data:d,reload:m,element:g}=useApiEx("get_config",{omit:["vfs"]}),x=useSnapState$1(),{changes:b}=useSnapshot(pageState),E=useApiEx(d&&"get_status"),v=E.data,S=exposedReloadStatus=E.reload;reactExports.useEffect(()=>void S(),[d]),reactExports.useEffect(()=>()=>exposedReloadStatus=void 0,[]);const C=useBreakpoint("sm"),T=(B=useApiEx("get_admins").data)==null?void 0:B.list,$=window.location.hostname,k=$==="localhost",L=$.includes(":"),D=[{label:"any",value:""},{label:"any IPv4",value:"0.0.0.0",disabled:!k&&L},{label:"any IPv6",value:"::",disabled:!k&&!L},...["127.0.0.1","::1"].map(U=>({label:U,value:U,disabled:!k&&$!==U})),...((j=v==null?void 0:v.ips)==null?void 0:j.map(U=>({value:U,disabled:$!==U})))||[]];if(g)return g;if(E.error)return E.element;const A=loaded!==d?state$1.config=loaded=d:x.config,I={comp:NumberField,min:1,unit:"KB/s",placeholder:"no limit",sm:6},N={comp:NumberField,placeholder:"no limit",toField:U=>U||"",sm:4},z=A.https_port>=0;return reactExports.createElement(Form,{sx:{maxWidth:"60em"},values:A,set(U,W){state$1.config[W]=U},stickyBar:!0,onError:alertDialog$1,save:Fe({onClick:Y},propsForModifiedValues(Object.keys(b).length>0)),barSx:{gap:2},addToBar:[reactExports.createElement(Button,{onClick(){m(),S()},startIcon:reactExports.createElement(Refresh)},"Reload"),reactExports.createElement(Button,{component:Link$2,to:"/config",startIcon:reactExports.createElement(EditNote)},C?"Config file":"File")],defaults(){return{xs:6}},fields:[reactExports.createElement(Section,{title:"Networking"}),{k:"port",comp:PortField,xs:12,sm:6,label:"HTTP port",status:(v==null?void 0:v.http)||!0,suggestedPort:80},{k:"https_port",comp:PortField,xs:12,sm:6,label:"HTTPS port",status:(v==null?void 0:v.https)||!0,suggestedPort:443,onChange(U){return U>=0&&!z&&!A.cert&&suggestMakingCert(),U}},z&&{k:"cert",comp:FileField,sm:4,label:"HTTPS certificate file",helperText:wikiLink("HTTPS#certificate","What is this?"),error:with_(v==null?void 0:v.https.error,U=>isCertError(U)&&(v.https.listening?U:[U," - ",reactExports.createElement(LinkBtn,{key:"fix",onClick:suggestMakingCert},"make one")]))},z&&Fe({k:"private_key",comp:FileField,sm:4,label:"HTTPS private key file"},with_(v==null?void 0:v.https.error,U=>isKeyError(U)?{error:!0,helperText:U}:null)),z&&{k:"force_https",comp:BoolField,label:"Force HTTPS",sm:4,disabled:!z||A.port<0,helperText:"Not applied to localhost. Doesn't work with proxies."},{k:"listen_interface",comp:SelectField,sm:4,afterList:D.some(U=>U.disabled)&&reactExports.createElement(Box,{p:"8px 16px 0",borderTop:"1px solid",fontSize:"small"},"Disabled addresses depend on the address you used to connect"),options:D},Rt(Fe({k:"max_kbps"},I),{sm:4,label:"Limit output",helperText:"Doesn't apply to localhost"}),Rt(Fe({k:"max_kbps_per_ip"},I),{sm:4,label:"Limit output per-IP"}),Rt(Fe({k:CFG.max_downloads},N),{helperText:"Number of simultaneous downloads"}),Rt(Fe({k:CFG.max_downloads_per_ip},N),{label:"Max downloads per-IP"}),Rt(Fe({k:CFG.max_downloads_per_account},N),{label:"Max downloads per-account",helperText:"Overrides other limits"}),{k:"admin_net",comp:NetmaskField,label:"Admin-panel accessible from",placeholder:"any address",helperText:"IP address of browser machine"},{k:"localhost_admin",comp:BoolField,xs:12,sm:6,label:"Unprotected Admin-panel on localhost",getError:U=>!U&&(T==null?void 0:T.length)===0&&"First create at least one admin account",helperText:"Access without entering credentials"},{k:"proxies",comp:NumberField,xs:12,sm:4,md:4,max:9,label:"Number of incoming HTTP proxies",placeholder:"none",error:proxyWarning(A,v),helperText:"Wrong number will prevent detection of users' IP"},{k:CFG.outbound_proxy,xs:12,sm:5,md:4,placeholder:"none",helperText:"URL form",getError:U=>try_(()=>U&&new URL(U)&&"",()=>"Invalid URL")},{k:"allowed_referer",comp:AllowedReferer,sm:3,md:4,placeholder:"any",label:"Links from other websites",helperText:"In case another website is linking your files"},{k:"block",label:!1,comp:ArrayField,xs:12,prepend:!0,sm:!0,autoRowHeight:!0,form:{maxWidth:"30em"},fields:[{k:"ip",label:"Blocked IP",sm:12,required:!0,wrap:!0,$width:2,comp:NetmaskField,$column:{mergeRender:{comment:{},expire:{}}},helperText:"Be careful to not kick yourself out, by blocking also your IP"},{k:"expire",$type:"dateTime",minDate:new Date,sm:6,$hideUnder:"sm",helperText:"Leave empty for no expiration"},{k:"disabled",$type:"boolean",label:"Enabled",helperText:"In case you want to not block without deleting the rule",toField:U=>!U,fromField:U=>U?void 0:!0,sm:6,$width:80},{k:"comment",$hideUnder:"sm"}]},reactExports.createElement(Section,{title:"Front-end",subtitle:"Following options affect only the front-end"}),{k:"file_menu_on_link",comp:SelectField,label:"Access file menu",md:4,options:{"by clicking on file name":!0,"by dedicated button":!1}},{k:"title",md:8,helperText:"You can see this in the tab of your browser"},{k:"auto_play_seconds",comp:NumberField,xs:6,sm:3,min:1,max:1e4,required:!0,label:"Auto-play seconds delay",helperText:md(`Default value for the [Show interface](${REPO_URL}discussions/270)`)},{k:"tile_size",comp:NumberField,xs:6,sm:3,max:MAX_TILE_SIZE,required:!0,label:"Default tiles size",helperText:wikiLink("Tiles","To enable tiles-mode")},{k:"theme",comp:SelectField,xs:6,sm:3,options:THEME_OPTIONS},{k:"sort_by",comp:SelectField,xs:6,sm:3,options:SORT_BY_OPTIONS},{k:"invert_order",comp:BoolField,xs:6,md:3},{k:"folders_first",comp:BoolField,xs:6,md:3},{k:"sort_numerics",comp:BoolField,xs:6,md:3,label:"Sort numeric names"},{k:"title_with_path",comp:BoolField,xs:6,md:3},{k:"favicon",comp:FileField,placeholder:"None",fileMask:"*.ico|"+IMAGE_FILEMASK,xs:12,helperText:"The icon associated to your website"},reactExports.createElement(Section,{title:"Uploads"}),{k:"dont_overwrite_uploading",comp:BoolField,md:4,label:"Uploads don't overwrite",helperText:"Files will be numbered to avoid overwriting"},{k:CFG.split_uploads,comp:NumberField,unit:"MB",md:2,step:.1,fromField:U=>U*1e6,toField:U=>U?U/1e6:null,placeholder:"disabled",label:"Split uploads in chunks",helperText:"Overcome proxy limits"},{k:"delete_unfinished_uploads_after",comp:NumberField,md:3,min:0,unit:"seconds",required:!0},{k:"min_available_mb",comp:NumberField,md:3,min:0,unit:"MBytes",placeholder:"None",label:"Min. available disk space",helperText:"Reject uploads that don't comply"},reactExports.createElement(Section,{title:"Others"}),{k:"keep_session_alive",comp:BoolField,sm:6,md:6,helperText:"Keeps you logged in while the page is left open and the computer is on"},{k:"session_duration",comp:NumberField,sm:3,md:3,min:5,unit:"seconds",required:!0},{k:CFG.size_1024,label:"KB size",comp:SelectField,sm:3,options:{1e3:!1,1024:!0}},{k:"show_hidden_files",comp:BoolField,sm:3},{k:CFG.comments_storage,comp:SelectField,xs:12,sm:6,md:5,options:{"in file DESCRIPT.ION":"","in file attributes":"attr","in file attributes + load DESCRIPT.ION":"attr+ion"}},{k:"descript_ion_encoding",xs:8,sm:3,md:4,label:"Encoding of file DESCRIPT.ION",comp:SelectField,disabled:!A.descript_ion,options:["utf8",720,775,819,850,852,862,869,874,808,..._.range(1250,1257),10029,20866,21866]},{k:"open_browser_at_start",comp:BoolField,label:"Open Admin-panel at start",xs:12,sm:6,md:3,helperText:"Browser is automatically launched with HFS"},{k:"zip_calculate_size_for_seconds",comp:NumberField,xs:12,sm:6,md:3,unit:"seconds",required:!0,label:"Calculate ZIP size for",helperText:"If time is not enough, the browser will not show download percentage"},{k:"mime",comp:ArrayField,label:!1,reorder:!0,prepend:!0,xs:12,sm:12,md:6,fields:[{k:"v",label:"Mime type",placeholder:"auto",$width:2,helperText:"Leave empty to get automatic value"},{k:"k",label:"File mask",helperText:reactExports.createElement(WildcardsSupported),$width:1,$column:{renderCell:({value:U,id:W})=>reactExports.createElement("code",{},U,U==="*"&&W<_.size(A.mime)-1&&iconTooltip(Warning,md("Mime with `*` should be the last, because first matching row applies"),{color:"warning.main",ml:1}))}}],toField:U=>Object.entries(U||{}).map(([W,V])=>({k:W,v:V})),fromField:U=>Object.fromEntries(U.map(W=>[W.k,W.v||"auto"]))},{k:"server_code",comp:TextEditorField,lang:"js",xs:12,helperText:md(`This code works similarly to [a plugin](${REPO_URL}blob/main/dev-plugins.md) (with some limitations)`)}]});function Y(){return yt(this,null,function*(){var ue,fe;if(_.isEmpty(b))return toast$1("Nothing to save");const U=window.location,W=["port","https_port"];if(W.every(_e=>b[_e]!==void 0))return alertDialog$1("You cannot change both http and https port at once. Please, do one, save, and then do the other.","warning");const V=[(ue=v==null?void 0:v.http)==null?void 0:ue.listening,(fe=v==null?void 0:v.https)==null?void 0:fe.listening],K=location.protocol==="https:";K&&(W.reverse(),V.reverse());const Q=b[W[0]],Z=A[W[1]],re=Z>0&&V[1],ie=K?"http":"https";if(Q<0&&!re)return alertDialog$1("You cannot switch off this port unless you have a working fixed port for "+ie,"warning");if(Q===0&&!re)return alertDialog$1("You cannot randomize this port unless you have a working fixed port for "+ie,"warning");const oe=Q>0&&Q!=U.port;if(oe&&!(yield confirmDialog$1("You are changing the port and you may be disconnected")))return;const ee="cert"in b||"private_key"in b;if(K&&ee&&!(yield confirmDialog$1("You may disrupt https service, kicking you out")))return;yield apiCall("set_config",{values:b}),"split_uploads"in b&&(yield alertDialog$1('Users need to reload for the "split uploads" option to take effect',"warning"));const X=ipForUrl(U.hostname),ce=U.pathname+U.hash,pe=Q<=0?`${K?"http:":"https:"}//${X}:${Z}${ce}`:oe?`${U.protocol}//${X}:${Q||A[W[0]]}${ce}`:yield with_(`https://${X}:${U.port}${ce}`,_e=>{var ye;return!K&&((ye=b.force_https)!=null?ye:d.force_https)&&fetch(_e).then(()=>_e,()=>0)});if(pe)return yield alertDialog$1("You are being redirected but in some cases this may fail. Hold on tight!","warning"),window.location.href=pe;const ae="port"in b||"https_port"in b;setTimeout(S,ae||ee?1e3:0),Object.assign(loaded,b),recalculateChanges(),toast$1("Changes applied","success")})}}function Section({title:d,subtitle:m}){return reactExports.createElement(Divider,{role:"heading",sx:{fontSize:"larger",fontWeight:"bold"}},d,reactExports.createElement(Box,{fontSize:"small",fontWeight:"normal"},m))}function recalculateChanges(){const d={};if(state$1.config)for(const[m,g]of Object.entries(state$1.config))JSON.stringify(g)!==JSON.stringify(loaded==null?void 0:loaded[m])&&(d[m]=g);pageState.changes=d}function isCertError(d){return/certificate/.test(d)}function isKeyError(d){return/private key/.test(d)}function PortField({label:d,value:m,onChange:g,setApi:x,status:b,suggestedPort:E=1,error:v,helperText:S}){const C=reactExports.useRef(E);m>0&&(C.current=m);const T=Number(m>0?C.current:m)||0;let $=b==null?void 0:b.error;return $&&(isCertError($)||isKeyError($)?$=void 0:v=!0),reactExports.createElement(Box,{},reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{sx:{flexGrow:1},label:d,error:v,value:T,options:[{label:"off",value:-1},{label:"random",value:0},{label:"choose",value:C.current}],onChange:g}),m>0&&reactExports.createElement(NumberField,{label:"Number",fullWidth:!1,value:m,onChange:g,setApi:x,error:v,min:1,max:65535,helperText:S,sx:{minWidth:"5.5em"}})),b&&reactExports.createElement(FormHelperText,{error:v},b===!0?"...":$!=null?$:(b==null?void 0:b.listening)&&"Correctly working on port "+b.port))}function AllowedReferer({label:d,value:m,onChange:g,error:x}){const b=!m||m==="-",E="example.com";return reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{label:d,value:b?m:E,options:{"allow all":"","forbid all":"-","allow some":E},onChange:g,error:x,sx:b?void 0:{maxWidth:"11em"}}),!b&&reactExports.createElement(StringField,{label:"Domain to allow",value:m,placeholder:"example.com",onChange:g,error:x,helperText:reactExports.createElement(WildcardsSupported)}))}function suggestMakingCert(){return yt(this,null,function*(){return new Promise(d=>{const{close:m}=newDialog({icon:CardMembership,title:"Get a certificate",onClose:d,Content:()=>reactExports.createElement(Box,{p:1,lineHeight:1.5},reactExports.createElement(Box,{},"HTTPS needs a certificate to work."),reactExports.createElement(Box,{},"We suggest you to ",reactExports.createElement(InLink,{to:"internet"},"get a free but proper certificate"),"."),reactExports.createElement(Box,{},"If you don't have a domain ",reactExports.createElement(LinkBtn,{onClick:g},"make a self-signed certificate")," but that ",wikiLink("HTTPS#certificate"," won't be perfect"),"."))});function g(){return yt(this,null,function*(){if(!window.crypto.subtle)return alertDialog$1("Retry this procedure on localhost","warning");const x=yield apiCall("make_self_signed_cert",{fileName:"self"});loaded&&Object.assign(loaded,x),setTimeout(exposedReloadStatus,1e3),setTimeout(exposedReloadStatus,2e3),Object.assign(state$1.config,x),yield alertDialog$1("Certificate saved","success"),m()})}})})}function LogoutPage(){const{element:d}=useApiEx("get_config",{only:[]}),{username:m}=useSnapState$1();return d||reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:2},m?reactExports.createElement(reactExports.Fragment,{},"You are logged in as: "+m,reactExports.createElement(Btn$1,{icon:Logout,size:"large",onClick:()=>apiCall("logout").catch(x=>x.code!==HTTP_UNAUTHORIZED&&alertDialog$1(x))},"I want to logout")):reactExports.createElement(Alert,{severity:"info"},"You are not logged in, because authentication is not required on localhost"),reactExports.createElement(Btn$1,{icon:PowerSettingsNew,size:"large",color:"warning",confirm:"Stopping the server, this interface won't respond anymore",onClick(){return yt(this,null,function*(){yield apiCall("quit"),yield alertDialog$1("Good-bye","success"),location.reload()})}},"Quit HFS"))}function LangPage({setTitleSide:d}){const{list:m,error:g,connecting:x,reload:b}=useApiList("get_langs"),E=reactExports.useMemo(()=>["en",..._.uniq(m.map(S=>S.code))],[m]);return d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"Translation is limited to Front-end, it doesn't apply to Admin-panel"),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,Fe({mt:1,maxWidth:"50em",flex:1},fillFlexParentSx),reactExports.createElement(Box,{mb:1,display:"flex"},reactExports.createElement(Btn$1,{icon:Upload,onClick:v},"Add"),reactExports.createElement(Box,{flex:1}),reactExports.createElement(ForceLang,{langs:E})),reactExports.createElement(DataTable,{error:g,loading:x,rows:reactExports.useMemo(()=>_.sortBy(m,S=>(S.embedded?2:1)+S.code),[m.length]),hideFooter:!0,fillFlex:!0,columns:[{field:"code",width:110,valueFormatter:({value:S})=>S==null?void 0:S.toUpperCase()},{field:"version",width:120,hideUnder:"sm"},{field:"hfs_version",headerName:"HFS version",width:110},{field:"author",flex:1,hideUnder:"sm"}],actions:({row:S})=>[reactExports.createElement(IconBtn,{icon:Delete,title:S.embedded?"Cannot delete (embedded)":"Delete",confirm:`Delete language code "${S.code}"?`,disabled:S.embedded,onClick(){return yt(this,null,function*(){yield apiCall("del_lang",_.pick(S,"code")),b(),toast$1("Deleted")})}})]})));function v(){selectFiles(S=>yt(this,null,function*(){if(!S)return;const C={};for(const T of S)C[T.name]=yield readFile(T);try{yield apiCall("add_langs",{langs:C}),b(),toast$1("Loaded")}catch(T){yield alertDialog$1(T)}}),{accept:".json"})}}function ForceLang({langs:d}){const m=CFG.force_lang,{data:g,reload:x,loading:b}=useApiEx("get_config",{only:[m]}),[E,v]=reactExports.useState();reactExports.useEffect(()=>{var $;return v(($=g==null?void 0:g[m])!=null?$:E)},[g]);const[S,C]=reactExports.useState();return reactExports.createElement(SelectField,{fullWidth:!1,disabled:!!b||typeof S=="string",value:S!=null?S:E,onChange($){return yt(this,null,function*(){C($);try{yield apiCall("set_config",{values:{[m]:$}}),yield x()}finally{C(void 0)}})},options:[{label:"Respect browser language",value:""},...d.map($=>({value:$,label:"Force language: "+$}))]})}function switchBtn(d,m,g){return reactExports.createElement(VerticalSwitch,Fe({checked:d||!1,onChange(x,b){m(b)},disabled:d===void 0},g))}const VerticalSwitch=styled(Switch)(({theme:d,size:m})=>{const g=m&&m==="small";return{height:g?36:48,width:g?18:26,padding:5,"& .MuiSwitch-switchBase":{margin:1,padding:0,transform:`translateY(${g?16:22}px)`,"&.Mui-checked":{color:d.palette.primary.contrastText,transform:"translateY(2px)","& .MuiSwitch-thumb:before":{backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"/></svg>')`},"& + .MuiSwitch-track":{backgroundColor:d.palette.grey[500]}}},"& .Mui-checked .MuiSwitch-thumb":{backgroundColor:d.palette.primary.main,boxShadow:"0px 2px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12)"},"& .MuiSwitch-thumb":{width:g?16:24,height:g?16:24,backgroundColor:d.palette.grey[700],"&::before":{content:"''",position:"absolute",width:"85%",height:"85%",left:0,top:0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M19,13H5V11H19V13Z"/></svg>')`}},"& .MuiSwitch-track":{backgroundColor:d.palette.grey[500],borderRadius:20/2}}}),names={top:"Top of HTML Body",bottom:"Bottom of HTML Body"};function CustomHtmlPage({setTitleSide:d}){const{data:m,reload:g}=useApiEx("get_custom_html"),{customHtmlSection:x}=useSnapState$1(),[b,E]=reactExports.useState({}),[v,S]=reactExports.useState({});reactExports.useEffect(()=>{m&&(S(m.sections),k(m.enabled))},[m]),reactExports.useEffect(()=>E(v),[v]);const C=reactExports.useMemo(()=>{const D=_.sortBy(Object.keys(b),isNumeric);return D.length&&!D.includes(x)&&(state$1.customHtmlSection=_.findKey(b,Boolean)||(D==null?void 0:D[0])||""),D.map(A=>{var I;return{value:A,label:(names[A]||prefix("HTTP ",HTTP_MESSAGES[A])||_.startCase(A))+((I=b[A])!=null&&I.trim()?" *":"")}})},[useDebounce(b,500)]),T=reactExports.useMemo(()=>!_.isEqualWith(v,b,(D,A)=>!D&&!A||void 0),[v,b]),[$,k]=reactExports.useState();return d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},md("Add HTML code to some parts of the Front-end. It's saved to file `custom.html`, that you can edit directly with your editor of choice. "),wikiLink("customization","More help")),reactExports.createElement(Alert,{severity:"info"},md("To customize icons "),wikiLink("customization#icons","read documentation"))),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{display:"flex",alignItems:"center",gap:1,mb:1},reactExports.createElement(SelectField,{label:"Section",value:x,options:C,onChange:D=>state$1.customHtmlSection=D}),reloadBtn(g),reactExports.createElement(IconBtn,{icon:Save,title:`Save
|
|
807
807
|
(ctrl+enter)`,modified:T,onClick:L}),hTooltip("Enable all sections",void 0,switchBtn($,D=>yt(this,null,function*(){yield apiCall("set_config",{values:{[CFG.disable_custom_html]:!D}}),k(D)})))),reactExports.createElement(TextEditor,{lang:x==="style"?"css":x==="script"?"js":"html",value:(b==null?void 0:b[x])||"",style:{background:"#8881"},onValueChange(D){E(A=>Rt(Fe({},A),{[x]:D}))},onKeyDown(D){["s","S","Enter"].includes(isCtrlKey(D))&&(L(),D.preventDefault())}}));function L(){return apiCall("set_custom_html",{sections:b}).then(()=>S(b))}}const COUNTRIES=ALL.filter(d=>WITH_IP.includes(d.code)),PORT_FORWARD_URL="https://portforward.com/",HIGHER_PORT=1080,MSG_ISP=reactExports.createElement("div",{},"HFS will probably not be reachable on the Internet. ",wikiLink("Work-on-the-internet#double-nat","Read more"));function InternetPage({setTitleSide:d}){var X,ce,pe,ae,ue;const[m,g]=reactExports.useState(),[x,b]=reactExports.useState(!1),[E,v]=reactExports.useState(!1),S=useApiEx("get_status"),C=useApiEx("get_config",{only:[CFG.base_url]}),T=(X=C.data)==null?void 0:X[CFG.base_url],$=with_([(pe=(ce=S.data)==null?void 0:ce.http)==null?void 0:pe.error,(ue=(ae=S.data)==null?void 0:ae.https)==null?void 0:ue.error],([fe,_e])=>fe&&_e?"error":fe||_e?"warning":"success"),k=useApiEx("get_nat",{},{timeout:20}),{data:L}=useApiEx("get_public_ips"),{data:D}=k,A=D==null?void 0:D.internalPort,I=(D==null?void 0:D.mapped)&&D.mapped.private.port!==A&&D.mapped.private.port,N=(D==null?void 0:D.externalIp)&&L&&!L.includes(D.externalIp),z=useRequestRender();return reactExports.useEffect(()=>{z.state&&re(!0)},[z.state]),d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"This page makes sure your site is working correctly on the Internet"),[])),reactExports.createElement(Flex$1,{vert:!0,gap:"2em",maxWidth:"40em"},Q(),K(),W(),j(),B());function Y(fe){return fe.replace(new RegExp(".+<body>(.+)<\\/body>.+","is"),(_e,ye)=>ye||_e).replace(/<[^>]+>/g," ")}function B(){const{data:fe}=useApiEvents("get_dynamic_dns_error"),_e=reactExports.useRef();return reactExports.useEffect(()=>_e.current&&restartAnimation(_e.current,"1s blink"),[fe]),reactExports.createElement(TitleCard,{icon:Dns,title:"Dynamic DNS updater"},fe&&reactExports.createElement(Flex$1,{},fe.error?reactExports.createElement(ErrorIcon,{color:"error",ref:_e}):reactExports.createElement(Check,{color:"success",ref:_e}),formatTimestamp$1(fe.ts)," – ",prefix("Error: ",Y(fe.error)).slice(0,500)||"Updated successfully"),"This tool can keep your domain updated with your latest IP address. Not every service is compatible, and most of them have their own software for the job, which is superior, but we offer this lightweight solution in case you are more keen to it.",reactExports.createElement(ConfigForm,{form:(ye,{setValues:ve})=>({fields:[reactExports.createElement(Flex$1,{},_.map({NoIP:{url:"https://$username:$password@dynupdate.no-ip.com/nic/update?hostname=$domain",fields:["username","password","domain"]},DuckDNS:{url:"https://www.duckdns.org/update/$domain/$token>OK",fields:[{k:"domain",helperText:"do NOT include the .duckdns.org part"},"token"]}},({url:Ee,fields:Te},Ie)=>reactExports.createElement(Btn$1,{key:Ee,onClick:()=>formDialog$1({title:Ie+" wizard",form:{maxWidth:"20em",before:reactExports.createElement(Box,{mb:1},"Following information is stored non-encrypted"),fields:Te.map(Pe=>_.isString(Pe)?{k:Pe}:Pe)}}).then(Pe=>Pe&&ve({[CFG.dynamic_dns_url]:replace(Ee,Pe,"$")}))},Ie+" wizard"))),{k:CFG.dynamic_dns_url,label:"Updater URL",multiline:!0,helperText:"Refer to your DNS service provider to know what URL can automatically keep your domain updated. Supported symbols are $IP4, $IP6, $IPX. Optionally, you can append “>” followed by a regular expression to determine a successful answer, otherwise status code will be used."}]})}))}function j(){const fe=reactExports.useMemo(()=>COUNTRIES.map(_e=>({value:_e.code,label:_e.name})),[COUNTRIES]);return reactExports.createElement(TitleCard,{title:"Geo IP",icon:Public},reactExports.createElement(ConfigForm,{keys:[CFG.geo_enable,CFG.geo_allow,CFG.geo_list,CFG.geo_allow_unknown],form:_e=>{var ye;return{fields:[{k:CFG.geo_enable,comp:BoolField,label:"Enable",helperText:md("Necessary database will be downloaded every month (2MB). Service is made possible thanks to [IP2Location](https://www.ip2location.com).")},..._e!=null&&_e[CFG.geo_enable]?[{k:CFG.geo_allow,comp:SelectField,label:"Rule",options:{"no restriction":null,"block selected countries":!1,"allow selected countries":!0}},_e[CFG.geo_allow]!=null&&{k:CFG.geo_list,comp:MultiSelectField,label:`Selected countries (${((ye=_e[CFG.geo_list])==null?void 0:ye.length)||0})`,valueSeparator:!1,placeholder:"none",options:fe,renderOption:ve=>reactExports.createElement(Country,{code:ve.value,long:!0}),clearable:!0,getError:ve=>_e[CFG.geo_allow]&&!(ve!=null&&ve.length)&&"Cannot be empty"},_e[CFG.geo_allow]!=null&&{k:CFG.geo_allow_unknown,comp:SelectField,label:"When country cannot be determined",helperText:"Local IPs are ignored",options:{Allow:!0,Block:!1}}]:[]]}},addToBar:[reactExports.createElement(Box,{flex:1}),reactExports.createElement(Btn$1,{icon:Search,onClick:U},"Lookup IP")]}))}function U(){return yt(this,null,function*(){const fe=yield promptDialog$1("Lookup IP");if(!fe)return;const{country:_e}=yield apiCall("geo_ip",{ip:fe});return _e?alertDialog$1(reactExports.createElement(Country,{code:_e,long:!0}),"success"):alertDialog$1("IP not found","error")})}function W(){var Le;const[fe,_e]=reactExports.useState(),ye=useApiEx("get_cert");reactExports.useEffect(()=>{apiCall("get_config",{only:["acme_domain","acme_renew"]}).then(_e)},[]);const[ve,Ee]=reactExports.useState(!1);if(!fe)return reactExports.createElement(CircularProgress);const{https:Te}=S.data||{},Ie=(Te==null?void 0:Te.port)===PORT_DISABLED,Pe=Te==null?void 0:Te.error;return S.element||reactExports.createElement(TitleCard,{title:"HTTPS",icon:Lock,color:Te!=null&&Te.listening&&!Pe?"success":"warning"},Pe?reactExports.createElement(Alert,{severity:"warning"},Pe):Ie&&reactExports.createElement(LinkBtn,{onClick:V},"Not enabled"),ye.element||with_(ye.data,De=>{var ke,we;return De.none?reactExports.createElement(LinkBtn,{onClick:Ce},"No certificate configured"):reactExports.createElement(Box,{},reactExports.createElement(CardMembership,{fontSize:"small",sx:{mr:1,verticalAlign:"middle"}}),"Current certificate",reactExports.createElement("ul",{},reactExports.createElement("li",{},"Domain: ",((ke=De.altNames)==null?void 0:ke.join(" + "))||"-"),reactExports.createElement("li",{},"Issuer: ",((we=De.issuer)==null?void 0:we.O)||reactExports.createElement("i",{},"self-signed")),reactExports.createElement("li",{},"Validity: ",["validFrom","validTo"].map(Ge=>formatTimestamp$1(De[Ge])).join(" – "))))}),reactExports.createElement(Divider),reactExports.createElement(Form,{gap:1,gridProps:{rowSpacing:1},values:fe,set(De,ke){_e(we=>{const Ge=Rt(Fe({},we),{[ke]:De});return Ee(!0),apiCall("set_config",{values:Ge}).finally(()=>Ee(!1)),Ge})},fields:[md("Generate certificate using [Let's Encrypt](https://letsencrypt.org)"),{k:"acme_domain",label:"Domain for certificate",sm:((Le=fe.acme_domain)==null?void 0:Le.length)>30?12:6,required:!0,multiline:!0,fromField:De=>De.replaceAll(`
|
|
808
808
|
`,","),toField:De=>De.replaceAll(",",`
|
|
809
809
|
`),helperText:md(`Example: your.domain.com
|