const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/StatsWindow-DonAC4kK.js","assets/react-DlyoauG8.js","assets/CharacterWindow-HFix6rx0.js","assets/InventoryWindow-DNVzs4Pz.js","assets/RadarWindow-D2-ECy2X.js","assets/CombatStatsWindow-CJo0cOU-.js","assets/CombatPickerWindow-2QrIZhzN.js","assets/IssuesWindow-CBadrEJS.js","assets/VitalSharingWindow-Cxliz82-.js","assets/DashboardView-BWfpkQBB.js"])))=>i.map(i=>d[i]); import{r as _m,g as er,a as ur}from"./react-DlyoauG8.js";(function(){const x=document.createElement("link").relList;if(x&&x.supports&&x.supports("modulepreload"))return;for(const U of document.querySelectorAll('link[rel="modulepreload"]'))d(U);new MutationObserver(U=>{for(const O of U)if(O.type==="childList")for(const N of O.addedNodes)N.tagName==="LINK"&&N.rel==="modulepreload"&&d(N)}).observe(document,{childList:!0,subtree:!0});function _(U){const O={};return U.integrity&&(O.integrity=U.integrity),U.referrerPolicy&&(O.referrerPolicy=U.referrerPolicy),U.crossOrigin==="use-credentials"?O.credentials="include":U.crossOrigin==="anonymous"?O.credentials="omit":O.credentials="same-origin",O}function d(U){if(U.ep)return;U.ep=!0;const O=_(U);fetch(U.href,O)}})();var sf={exports:{}},gu={};/** * @license React * react-jsx-runtime.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var ym;function nr(){if(ym)return gu;ym=1;var o=Symbol.for("react.transitional.element"),x=Symbol.for("react.fragment");function _(d,U,O){var N=null;if(O!==void 0&&(N=""+O),U.key!==void 0&&(N=""+U.key),"key"in U){O={};for(var T in U)T!=="key"&&(O[T]=U[T])}else O=U;return U=O.ref,{$$typeof:o,type:d,key:N,ref:U!==void 0?U:null,props:O}}return gu.Fragment=x,gu.jsx=_,gu.jsxs=_,gu}var gm;function cr(){return gm||(gm=1,sf.exports=nr()),sf.exports}var y=cr(),E=_m();const bu=er(E);var of={exports:{}},Su={},df={exports:{}},mf={};/** * @license React * scheduler.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Sm;function ir(){return Sm||(Sm=1,(function(o){function x(b,C){var V=b.length;b.push(C);l:for(;0>>1,gl=b[yl];if(0>>1;ylU(sl,V))RlU(At,sl)?(b[yl]=At,b[Rl]=V,yl=Rl):(b[yl]=sl,b[Tl]=V,yl=Tl);else if(RlU(At,V))b[yl]=At,b[Rl]=V,yl=Rl;else break l}}return C}function U(b,C){var V=b.sortIndex-C.sortIndex;return V!==0?V:b.id-C.id}if(o.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var O=performance;o.unstable_now=function(){return O.now()}}else{var N=Date,T=N.now();o.unstable_now=function(){return N.now()-T}}var M=[],D=[],H=1,z=null,j=3,Q=!1,X=!1,W=!1,Ul=!1,Bl=typeof setTimeout=="function"?setTimeout:null,$=typeof clearTimeout=="function"?clearTimeout:null,tl=typeof setImmediate<"u"?setImmediate:null;function Vl(b){for(var C=_(D);C!==null;){if(C.callback===null)d(D);else if(C.startTime<=b)d(D),C.sortIndex=C.expirationTime,x(M,C);else break;C=_(D)}}function jl(b){if(W=!1,Vl(b),!X)if(_(M)!==null)X=!0,I||(I=!0,B());else{var C=_(D);C!==null&&st(jl,C.startTime-b)}}var I=!1,F=-1,ul=5,k=-1;function R(){return Ul?!0:!(o.unstable_now()-kb&&R());){var yl=z.callback;if(typeof yl=="function"){z.callback=null,j=z.priorityLevel;var gl=yl(z.expirationTime<=b);if(b=o.unstable_now(),typeof gl=="function"){z.callback=gl,Vl(b),C=!0;break t}z===_(M)&&d(M),Vl(b)}else d(M);z=_(M)}if(z!==null)C=!0;else{var Ll=_(D);Ll!==null&&st(jl,Ll.startTime-b),C=!1}}break l}finally{z=null,j=V,Q=!1}C=void 0}}finally{C?B():I=!1}}}var B;if(typeof tl=="function")B=function(){tl(J)};else if(typeof MessageChannel<"u"){var L=new MessageChannel,pl=L.port2;L.port1.onmessage=J,B=function(){pl.postMessage(null)}}else B=function(){Bl(J,0)};function st(b,C){F=Bl(function(){b(o.unstable_now())},C)}o.unstable_IdlePriority=5,o.unstable_ImmediatePriority=1,o.unstable_LowPriority=4,o.unstable_NormalPriority=3,o.unstable_Profiling=null,o.unstable_UserBlockingPriority=2,o.unstable_cancelCallback=function(b){b.callback=null},o.unstable_forceFrameRate=function(b){0>b||125yl?(b.sortIndex=V,x(D,b),_(M)===null&&b===_(D)&&(W?($(F),F=-1):W=!0,st(jl,V-yl))):(b.sortIndex=gl,x(M,b),X||Q||(X=!0,I||(I=!0,B()))),b},o.unstable_shouldYield=R,o.unstable_wrapCallback=function(b){var C=j;return function(){var V=j;j=C;try{return b.apply(this,arguments)}finally{j=V}}}})(mf)),mf}var bm;function fr(){return bm||(bm=1,df.exports=ir()),df.exports}/** * @license React * react-dom-client.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var zm;function sr(){if(zm)return Su;zm=1;var o=fr(),x=_m(),_=ur();function d(l){var t="https://react.dev/errors/"+l;if(1gl||(l.current=yl[gl],yl[gl]=null,gl--)}function sl(l,t){gl++,yl[gl]=l.current,l.current=t}var Rl=Ll(null),At=Ll(null),kt=Ll(null),Tu=Ll(null);function Eu(l,t){switch(sl(kt,t),sl(At,l),sl(Rl,null),t.nodeType){case 9:case 11:l=(l=t.documentElement)&&(l=l.namespaceURI)?Xd(l):0;break;default:if(l=t.tagName,t=t.namespaceURI)t=Xd(t),l=Gd(t,l);else switch(l){case"svg":l=1;break;case"math":l=2;break;default:l=0}}Tl(Rl),sl(Rl,l)}function Ga(){Tl(Rl),Tl(At),Tl(kt)}function Vn(l){l.memoizedState!==null&&sl(Tu,l);var t=Rl.current,a=Gd(t,l.type);t!==a&&(sl(At,l),sl(Rl,a))}function Au(l){At.current===l&&(Tl(Rl),Tl(At)),Tu.current===l&&(Tl(Tu),hu._currentValue=V)}var Ln,rf;function pa(l){if(Ln===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);Ln=t&&t[1]||"",rf=-1)":-1u||f[e]!==r[u]){var S=` `+f[e].replace(" at new "," at ");return l.displayName&&S.includes("")&&(S=S.replace("",l.displayName)),S}while(1<=e&&0<=u);break}}}finally{Kn=!1,Error.prepareStackTrace=a}return(a=l?l.displayName||l.name:"")?pa(a):""}function Rm(l,t){switch(l.tag){case 26:case 27:case 5:return pa(l.type);case 16:return pa("Lazy");case 13:return l.child!==t&&t!==null?pa("Suspense Fallback"):pa("Suspense");case 19:return pa("SuspenseList");case 0:case 15:return Jn(l.type,!1);case 11:return Jn(l.type.render,!1);case 1:return Jn(l.type,!0);case 31:return pa("Activity");default:return""}}function vf(l){try{var t="",a=null;do t+=Rm(l,a),a=l,l=l.return;while(l);return t}catch(e){return` Error generating stack: `+e.message+` `+e.stack}}var wn=Object.prototype.hasOwnProperty,kn=o.unstable_scheduleCallback,Wn=o.unstable_cancelCallback,Hm=o.unstable_shouldYield,qm=o.unstable_requestPaint,Pl=o.unstable_now,Bm=o.unstable_getCurrentPriorityLevel,yf=o.unstable_ImmediatePriority,gf=o.unstable_UserBlockingPriority,Mu=o.unstable_NormalPriority,Ym=o.unstable_LowPriority,Sf=o.unstable_IdlePriority,Xm=o.log,Gm=o.unstable_setDisableYieldValue,Me=null,lt=null;function Wt(l){if(typeof Xm=="function"&&Gm(l),lt&&typeof lt.setStrictMode=="function")try{lt.setStrictMode(Me,l)}catch{}}var tt=Math.clz32?Math.clz32:Vm,Qm=Math.log,Zm=Math.LN2;function Vm(l){return l>>>=0,l===0?32:31-(Qm(l)/Zm|0)|0}var _u=256,xu=262144,Du=4194304;function Ta(l){var t=l&42;if(t!==0)return t;switch(l&-l){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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return l&261888;case 262144:case 524288:case 1048576:case 2097152:return l&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return l&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return l}}function Ou(l,t,a){var e=l.pendingLanes;if(e===0)return 0;var u=0,n=l.suspendedLanes,c=l.pingedLanes;l=l.warmLanes;var i=e&134217727;return i!==0?(e=i&~n,e!==0?u=Ta(e):(c&=i,c!==0?u=Ta(c):a||(a=i&~l,a!==0&&(u=Ta(a))))):(i=e&~n,i!==0?u=Ta(i):c!==0?u=Ta(c):a||(a=e&~l,a!==0&&(u=Ta(a)))),u===0?0:t!==0&&t!==u&&(t&n)===0&&(n=u&-u,a=t&-t,n>=a||n===32&&(a&4194048)!==0)?t:u}function _e(l,t){return(l.pendingLanes&~(l.suspendedLanes&~l.pingedLanes)&t)===0}function Lm(l,t){switch(l){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32: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 t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function bf(){var l=Du;return Du<<=1,(Du&62914560)===0&&(Du=4194304),l}function Fn(l){for(var t=[],a=0;31>a;a++)t.push(l);return t}function xe(l,t){l.pendingLanes|=t,t!==268435456&&(l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0)}function Km(l,t,a,e,u,n){var c=l.pendingLanes;l.pendingLanes=a,l.suspendedLanes=0,l.pingedLanes=0,l.warmLanes=0,l.expiredLanes&=a,l.entangledLanes&=a,l.errorRecoveryDisabledLanes&=a,l.shellSuspendCounter=0;var i=l.entanglements,f=l.expirationTimes,r=l.hiddenUpdates;for(a=c&~a;0"u")return null;try{return l.activeElement||l.body}catch{return l.body}}var $m=/[\n"\\]/g;function dt(l){return l.replace($m,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function ac(l,t,a,e,u,n,c,i){l.name="",c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"?l.type=c:l.removeAttribute("type"),t!=null?c==="number"?(t===0&&l.value===""||l.value!=t)&&(l.value=""+ot(t)):l.value!==""+ot(t)&&(l.value=""+ot(t)):c!=="submit"&&c!=="reset"||l.removeAttribute("value"),t!=null?ec(l,c,ot(t)):a!=null?ec(l,c,ot(a)):e!=null&&l.removeAttribute("value"),u==null&&n!=null&&(l.defaultChecked=!!n),u!=null&&(l.checked=u&&typeof u!="function"&&typeof u!="symbol"),i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"?l.name=""+ot(i):l.removeAttribute("name")}function jf(l,t,a,e,u,n,c,i){if(n!=null&&typeof n!="function"&&typeof n!="symbol"&&typeof n!="boolean"&&(l.type=n),t!=null||a!=null){if(!(n!=="submit"&&n!=="reset"||t!=null)){tc(l);return}a=a!=null?""+ot(a):"",t=t!=null?""+ot(t):a,i||t===l.value||(l.value=t),l.defaultValue=t}e=e??u,e=typeof e!="function"&&typeof e!="symbol"&&!!e,l.checked=i?l.checked:!!e,l.defaultChecked=!!e,c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(l.name=c),tc(l)}function ec(l,t,a){t==="number"&&ju(l.ownerDocument)===l||l.defaultValue===""+a||(l.defaultValue=""+a)}function Ja(l,t,a,e){if(l=l.options,t){t={};for(var u=0;u"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),fc=!1;if(Ut)try{var Ue={};Object.defineProperty(Ue,"passive",{get:function(){fc=!0}}),window.addEventListener("test",Ue,Ue),window.removeEventListener("test",Ue,Ue)}catch{fc=!1}var $t=null,sc=null,Ru=null;function Xf(){if(Ru)return Ru;var l,t=sc,a=t.length,e,u="value"in $t?$t.value:$t.textContent,n=u.length;for(l=0;l=Re),Kf=" ",Jf=!1;function wf(l,t){switch(l){case"keyup":return M0.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function kf(l){return l=l.detail,typeof l=="object"&&"data"in l?l.data:null}var Fa=!1;function x0(l,t){switch(l){case"compositionend":return kf(t);case"keypress":return t.which!==32?null:(Jf=!0,Kf);case"textInput":return l=t.data,l===Kf&&Jf?null:l;default:return null}}function D0(l,t){if(Fa)return l==="compositionend"||!rc&&wf(l,t)?(l=Xf(),Ru=sc=$t=null,Fa=!1,l):null;switch(l){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:a,offset:t-l};l=e}l:{for(;a;){if(a.nextSibling){a=a.nextSibling;break l}a=a.parentNode}a=void 0}a=as(a)}}function us(l,t){return l&&t?l===t?!0:l&&l.nodeType===3?!1:t&&t.nodeType===3?us(l,t.parentNode):"contains"in l?l.contains(t):l.compareDocumentPosition?!!(l.compareDocumentPosition(t)&16):!1:!1}function ns(l){l=l!=null&&l.ownerDocument!=null&&l.ownerDocument.defaultView!=null?l.ownerDocument.defaultView:window;for(var t=ju(l.document);t instanceof l.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)l=t.contentWindow;else break;t=ju(l.document)}return t}function gc(l){var t=l&&l.nodeName&&l.nodeName.toLowerCase();return t&&(t==="input"&&(l.type==="text"||l.type==="search"||l.type==="tel"||l.type==="url"||l.type==="password")||t==="textarea"||l.contentEditable==="true")}var q0=Ut&&"documentMode"in document&&11>=document.documentMode,$a=null,Sc=null,Ye=null,bc=!1;function cs(l,t,a){var e=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;bc||$a==null||$a!==ju(e)||(e=$a,"selectionStart"in e&&gc(e)?e={start:e.selectionStart,end:e.selectionEnd}:(e=(e.ownerDocument&&e.ownerDocument.defaultView||window).getSelection(),e={anchorNode:e.anchorNode,anchorOffset:e.anchorOffset,focusNode:e.focusNode,focusOffset:e.focusOffset}),Ye&&Be(Ye,e)||(Ye=e,e=Dn(Sc,"onSelect"),0>=c,u-=c,Mt=1<<32-tt(t)+u|a<w?(el=Y,Y=null):el=Y.sibling;var il=v(m,Y,h[w],p);if(il===null){Y===null&&(Y=el);break}l&&Y&&il.alternate===null&&t(m,Y),s=n(il,s,w),cl===null?G=il:cl.sibling=il,cl=il,Y=el}if(w===h.length)return a(m,Y),nl&&Ct(m,w),G;if(Y===null){for(;ww?(el=Y,Y=null):el=Y.sibling;var ba=v(m,Y,il.value,p);if(ba===null){Y===null&&(Y=el);break}l&&Y&&ba.alternate===null&&t(m,Y),s=n(ba,s,w),cl===null?G=ba:cl.sibling=ba,cl=ba,Y=el}if(il.done)return a(m,Y),nl&&Ct(m,w),G;if(Y===null){for(;!il.done;w++,il=h.next())il=A(m,il.value,p),il!==null&&(s=n(il,s,w),cl===null?G=il:cl.sibling=il,cl=il);return nl&&Ct(m,w),G}for(Y=e(Y);!il.done;w++,il=h.next())il=g(Y,m,w,il.value,p),il!==null&&(l&&il.alternate!==null&&Y.delete(il.key===null?w:il.key),s=n(il,s,w),cl===null?G=il:cl.sibling=il,cl=il);return l&&Y.forEach(function(ar){return t(m,ar)}),nl&&Ct(m,w),G}function rl(m,s,h,p){if(typeof h=="object"&&h!==null&&h.type===W&&h.key===null&&(h=h.props.children),typeof h=="object"&&h!==null){switch(h.$$typeof){case Q:l:{for(var G=h.key;s!==null;){if(s.key===G){if(G=h.type,G===W){if(s.tag===7){a(m,s.sibling),p=u(s,h.props.children),p.return=m,m=p;break l}}else if(s.elementType===G||typeof G=="object"&&G!==null&&G.$$typeof===ul&&Ca(G)===s.type){a(m,s.sibling),p=u(s,h.props),Le(p,h),p.return=m,m=p;break l}a(m,s);break}else t(m,s);s=s.sibling}h.type===W?(p=Da(h.props.children,m.mode,p,h.key),p.return=m,m=p):(p=Lu(h.type,h.key,h.props,null,m.mode,p),Le(p,h),p.return=m,m=p)}return c(m);case X:l:{for(G=h.key;s!==null;){if(s.key===G)if(s.tag===4&&s.stateNode.containerInfo===h.containerInfo&&s.stateNode.implementation===h.implementation){a(m,s.sibling),p=u(s,h.children||[]),p.return=m,m=p;break l}else{a(m,s);break}else t(m,s);s=s.sibling}p=_c(h,m.mode,p),p.return=m,m=p}return c(m);case ul:return h=Ca(h),rl(m,s,h,p)}if(st(h))return q(m,s,h,p);if(B(h)){if(G=B(h),typeof G!="function")throw Error(d(150));return h=G.call(h),Z(m,s,h,p)}if(typeof h.then=="function")return rl(m,s,$u(h),p);if(h.$$typeof===tl)return rl(m,s,wu(m,h),p);Iu(m,h)}return typeof h=="string"&&h!==""||typeof h=="number"||typeof h=="bigint"?(h=""+h,s!==null&&s.tag===6?(a(m,s.sibling),p=u(s,h),p.return=m,m=p):(a(m,s),p=Mc(h,m.mode,p),p.return=m,m=p),c(m)):a(m,s)}return function(m,s,h,p){try{Ve=0;var G=rl(m,s,h,p);return fe=null,G}catch(Y){if(Y===ie||Y===Wu)throw Y;var cl=et(29,Y,null,m.mode);return cl.lanes=p,cl.return=m,cl}finally{}}}var Ha=Os(!0),Ns=Os(!1),aa=!1;function Yc(l){l.updateQueue={baseState:l.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Xc(l,t){l=l.updateQueue,t.updateQueue===l&&(t.updateQueue={baseState:l.baseState,firstBaseUpdate:l.firstBaseUpdate,lastBaseUpdate:l.lastBaseUpdate,shared:l.shared,callbacks:null})}function ea(l){return{lane:l,tag:0,payload:null,callback:null,next:null}}function ua(l,t,a){var e=l.updateQueue;if(e===null)return null;if(e=e.shared,(fl&2)!==0){var u=e.pending;return u===null?t.next=t:(t.next=u.next,u.next=t),e.pending=t,t=Vu(l),hs(l,null,a),t}return Zu(l,e,t,a),Vu(l)}function Ke(l,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var e=t.lanes;e&=l.pendingLanes,a|=e,t.lanes=a,pf(l,a)}}function Gc(l,t){var a=l.updateQueue,e=l.alternate;if(e!==null&&(e=e.updateQueue,a===e)){var u=null,n=null;if(a=a.firstBaseUpdate,a!==null){do{var c={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};n===null?u=n=c:n=n.next=c,a=a.next}while(a!==null);n===null?u=n=t:n=n.next=t}else u=n=t;a={baseState:e.baseState,firstBaseUpdate:u,lastBaseUpdate:n,shared:e.shared,callbacks:e.callbacks},l.updateQueue=a;return}l=a.lastBaseUpdate,l===null?a.firstBaseUpdate=t:l.next=t,a.lastBaseUpdate=t}var Qc=!1;function Je(){if(Qc){var l=ce;if(l!==null)throw l}}function we(l,t,a,e){Qc=!1;var u=l.updateQueue;aa=!1;var n=u.firstBaseUpdate,c=u.lastBaseUpdate,i=u.shared.pending;if(i!==null){u.shared.pending=null;var f=i,r=f.next;f.next=null,c===null?n=r:c.next=r,c=f;var S=l.alternate;S!==null&&(S=S.updateQueue,i=S.lastBaseUpdate,i!==c&&(i===null?S.firstBaseUpdate=r:i.next=r,S.lastBaseUpdate=f))}if(n!==null){var A=u.baseState;c=0,S=r=f=null,i=n;do{var v=i.lane&-536870913,g=v!==i.lane;if(g?(al&v)===v:(e&v)===v){v!==0&&v===ne&&(Qc=!0),S!==null&&(S=S.next={lane:0,tag:i.tag,payload:i.payload,callback:null,next:null});l:{var q=l,Z=i;v=t;var rl=a;switch(Z.tag){case 1:if(q=Z.payload,typeof q=="function"){A=q.call(rl,A,v);break l}A=q;break l;case 3:q.flags=q.flags&-65537|128;case 0:if(q=Z.payload,v=typeof q=="function"?q.call(rl,A,v):q,v==null)break l;A=z({},A,v);break l;case 2:aa=!0}}v=i.callback,v!==null&&(l.flags|=64,g&&(l.flags|=8192),g=u.callbacks,g===null?u.callbacks=[v]:g.push(v))}else g={lane:v,tag:i.tag,payload:i.payload,callback:i.callback,next:null},S===null?(r=S=g,f=A):S=S.next=g,c|=v;if(i=i.next,i===null){if(i=u.shared.pending,i===null)break;g=i,i=g.next,g.next=null,u.lastBaseUpdate=g,u.shared.pending=null}}while(!0);S===null&&(f=A),u.baseState=f,u.firstBaseUpdate=r,u.lastBaseUpdate=S,n===null&&(u.shared.lanes=0),sa|=c,l.lanes=c,l.memoizedState=A}}function Us(l,t){if(typeof l!="function")throw Error(d(191,l));l.call(t)}function js(l,t){var a=l.callbacks;if(a!==null)for(l.callbacks=null,l=0;ln?n:8;var c=b.T,i={};b.T=i,ci(l,!1,t,a);try{var f=u(),r=b.S;if(r!==null&&r(i,f),f!==null&&typeof f=="object"&&typeof f.then=="function"){var S=K0(f,e);Fe(l,t,S,ft(l))}else Fe(l,t,e,ft(l))}catch(A){Fe(l,t,{then:function(){},status:"rejected",reason:A},ft())}finally{C.p=n,c!==null&&i.types!==null&&(c.types=i.types),b.T=c}}function $0(){}function ui(l,t,a,e){if(l.tag!==5)throw Error(d(476));var u=oo(l).queue;so(l,u,t,V,a===null?$0:function(){return mo(l),a(e)})}function oo(l){var t=l.memoizedState;if(t!==null)return t;t={memoizedState:V,baseState:V,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Bt,lastRenderedState:V},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Bt,lastRenderedState:a},next:null},l.memoizedState=t,l=l.alternate,l!==null&&(l.memoizedState=t),t}function mo(l){var t=oo(l);t.next===null&&(t=l.alternate.memoizedState),Fe(l,t.next.queue,{},ft())}function ni(){return Gl(hu)}function ho(){return _l().memoizedState}function ro(){return _l().memoizedState}function I0(l){for(var t=l.return;t!==null;){switch(t.tag){case 24:case 3:var a=ft();l=ea(a);var e=ua(t,l,a);e!==null&&(Il(e,t,a),Ke(e,t,a)),t={cache:Rc()},l.payload=t;return}t=t.return}}function P0(l,t,a){var e=ft();a={lane:e,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},sn(l)?yo(t,a):(a=Ec(l,t,a,e),a!==null&&(Il(a,l,e),go(a,t,e)))}function vo(l,t,a){var e=ft();Fe(l,t,a,e)}function Fe(l,t,a,e){var u={lane:e,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(sn(l))yo(t,u);else{var n=l.alternate;if(l.lanes===0&&(n===null||n.lanes===0)&&(n=t.lastRenderedReducer,n!==null))try{var c=t.lastRenderedState,i=n(c,a);if(u.hasEagerState=!0,u.eagerState=i,at(i,c))return Zu(l,t,u,0),vl===null&&Qu(),!1}catch{}finally{}if(a=Ec(l,t,u,e),a!==null)return Il(a,l,e),go(a,t,e),!0}return!1}function ci(l,t,a,e){if(e={lane:2,revertLane:Yi(),gesture:null,action:e,hasEagerState:!1,eagerState:null,next:null},sn(l)){if(t)throw Error(d(479))}else t=Ec(l,a,e,2),t!==null&&Il(t,l,2)}function sn(l){var t=l.alternate;return l===K||t!==null&&t===K}function yo(l,t){oe=tn=!0;var a=l.pending;a===null?t.next=t:(t.next=a.next,a.next=t),l.pending=t}function go(l,t,a){if((a&4194048)!==0){var e=t.lanes;e&=l.pendingLanes,a|=e,t.lanes=a,pf(l,a)}}var $e={readContext:Gl,use:un,useCallback:El,useContext:El,useEffect:El,useImperativeHandle:El,useLayoutEffect:El,useInsertionEffect:El,useMemo:El,useReducer:El,useRef:El,useState:El,useDebugValue:El,useDeferredValue:El,useTransition:El,useSyncExternalStore:El,useId:El,useHostTransitionStatus:El,useFormState:El,useActionState:El,useOptimistic:El,useMemoCache:El,useCacheRefresh:El};$e.useEffectEvent=El;var So={readContext:Gl,use:un,useCallback:function(l,t){return Kl().memoizedState=[l,t===void 0?null:t],l},useContext:Gl,useEffect:lo,useImperativeHandle:function(l,t,a){a=a!=null?a.concat([l]):null,cn(4194308,4,uo.bind(null,t,l),a)},useLayoutEffect:function(l,t){return cn(4194308,4,l,t)},useInsertionEffect:function(l,t){cn(4,2,l,t)},useMemo:function(l,t){var a=Kl();t=t===void 0?null:t;var e=l();if(qa){Wt(!0);try{l()}finally{Wt(!1)}}return a.memoizedState=[e,t],e},useReducer:function(l,t,a){var e=Kl();if(a!==void 0){var u=a(t);if(qa){Wt(!0);try{a(t)}finally{Wt(!1)}}}else u=t;return e.memoizedState=e.baseState=u,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:l,lastRenderedState:u},e.queue=l,l=l.dispatch=P0.bind(null,K,l),[e.memoizedState,l]},useRef:function(l){var t=Kl();return l={current:l},t.memoizedState=l},useState:function(l){l=Pc(l);var t=l.queue,a=vo.bind(null,K,t);return t.dispatch=a,[l.memoizedState,a]},useDebugValue:ai,useDeferredValue:function(l,t){var a=Kl();return ei(a,l,t)},useTransition:function(){var l=Pc(!1);return l=so.bind(null,K,l.queue,!0,!1),Kl().memoizedState=l,[!1,l]},useSyncExternalStore:function(l,t,a){var e=K,u=Kl();if(nl){if(a===void 0)throw Error(d(407));a=a()}else{if(a=t(),vl===null)throw Error(d(349));(al&127)!==0||Ys(e,t,a)}u.memoizedState=a;var n={value:a,getSnapshot:t};return u.queue=n,lo(Gs.bind(null,e,n,l),[l]),e.flags|=2048,me(9,{destroy:void 0},Xs.bind(null,e,n,a,t),null),a},useId:function(){var l=Kl(),t=vl.identifierPrefix;if(nl){var a=_t,e=Mt;a=(e&~(1<<32-tt(e)-1)).toString(32)+a,t="_"+t+"R_"+a,a=an++,0<\/script>",n=n.removeChild(n.firstChild);break;case"select":n=typeof e.is=="string"?c.createElement("select",{is:e.is}):c.createElement("select"),e.multiple?n.multiple=!0:e.size&&(n.size=e.size);break;default:n=typeof e.is=="string"?c.createElement(u,{is:e.is}):c.createElement(u)}}n[Yl]=t,n[Jl]=e;l:for(c=t.child;c!==null;){if(c.tag===5||c.tag===6)n.appendChild(c.stateNode);else if(c.tag!==4&&c.tag!==27&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===t)break l;for(;c.sibling===null;){if(c.return===null||c.return===t)break l;c=c.return}c.sibling.return=c.return,c=c.sibling}t.stateNode=n;l:switch(Zl(n,u,e),u){case"button":case"input":case"select":case"textarea":e=!!e.autoFocus;break l;case"img":e=!0;break l;default:e=!1}e&&Xt(t)}}return bl(t),zi(t,t.type,l===null?null:l.memoizedProps,t.pendingProps,a),null;case 6:if(l&&t.stateNode!=null)l.memoizedProps!==e&&Xt(t);else{if(typeof e!="string"&&t.stateNode===null)throw Error(d(166));if(l=kt.current,ee(t)){if(l=t.stateNode,a=t.memoizedProps,e=null,u=Xl,u!==null)switch(u.tag){case 27:case 5:e=u.memoizedProps}l[Yl]=t,l=!!(l.nodeValue===a||e!==null&&e.suppressHydrationWarning===!0||Bd(l.nodeValue,a)),l||la(t,!0)}else l=On(l).createTextNode(e),l[Yl]=t,t.stateNode=l}return bl(t),null;case 31:if(a=t.memoizedState,l===null||l.memoizedState!==null){if(e=ee(t),a!==null){if(l===null){if(!e)throw Error(d(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(d(557));l[Yl]=t}else Oa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;bl(t),l=!1}else a=Nc(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=a),l=!0;if(!l)return t.flags&256?(nt(t),t):(nt(t),null);if((t.flags&128)!==0)throw Error(d(558))}return bl(t),null;case 13:if(e=t.memoizedState,l===null||l.memoizedState!==null&&l.memoizedState.dehydrated!==null){if(u=ee(t),e!==null&&e.dehydrated!==null){if(l===null){if(!u)throw Error(d(318));if(u=t.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(d(317));u[Yl]=t}else Oa(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;bl(t),u=!1}else u=Nc(),l!==null&&l.memoizedState!==null&&(l.memoizedState.hydrationErrors=u),u=!0;if(!u)return t.flags&256?(nt(t),t):(nt(t),null)}return nt(t),(t.flags&128)!==0?(t.lanes=a,t):(a=e!==null,l=l!==null&&l.memoizedState!==null,a&&(e=t.child,u=null,e.alternate!==null&&e.alternate.memoizedState!==null&&e.alternate.memoizedState.cachePool!==null&&(u=e.alternate.memoizedState.cachePool.pool),n=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),n!==u&&(e.flags|=2048)),a!==l&&a&&(t.child.flags|=8192),rn(t,t.updateQueue),bl(t),null);case 4:return Ga(),l===null&&Zi(t.stateNode.containerInfo),bl(t),null;case 10:return Ht(t.type),bl(t),null;case 19:if(Tl(Ml),e=t.memoizedState,e===null)return bl(t),null;if(u=(t.flags&128)!==0,n=e.rendering,n===null)if(u)Pe(e,!1);else{if(Al!==0||l!==null&&(l.flags&128)!==0)for(l=t.child;l!==null;){if(n=ln(l),n!==null){for(t.flags|=128,Pe(e,!1),l=n.updateQueue,t.updateQueue=l,rn(t,l),t.subtreeFlags=0,l=a,a=t.child;a!==null;)rs(a,l),a=a.sibling;return sl(Ml,Ml.current&1|2),nl&&Ct(t,e.treeForkCount),t.child}l=l.sibling}e.tail!==null&&Pl()>bn&&(t.flags|=128,u=!0,Pe(e,!1),t.lanes=4194304)}else{if(!u)if(l=ln(n),l!==null){if(t.flags|=128,u=!0,l=l.updateQueue,t.updateQueue=l,rn(t,l),Pe(e,!0),e.tail===null&&e.tailMode==="hidden"&&!n.alternate&&!nl)return bl(t),null}else 2*Pl()-e.renderingStartTime>bn&&a!==536870912&&(t.flags|=128,u=!0,Pe(e,!1),t.lanes=4194304);e.isBackwards?(n.sibling=t.child,t.child=n):(l=e.last,l!==null?l.sibling=n:t.child=n,e.last=n)}return e.tail!==null?(l=e.tail,e.rendering=l,e.tail=l.sibling,e.renderingStartTime=Pl(),l.sibling=null,a=Ml.current,sl(Ml,u?a&1|2:a&1),nl&&Ct(t,e.treeForkCount),l):(bl(t),null);case 22:case 23:return nt(t),Vc(),e=t.memoizedState!==null,l!==null?l.memoizedState!==null!==e&&(t.flags|=8192):e&&(t.flags|=8192),e?(a&536870912)!==0&&(t.flags&128)===0&&(bl(t),t.subtreeFlags&6&&(t.flags|=8192)):bl(t),a=t.updateQueue,a!==null&&rn(t,a.retryQueue),a=null,l!==null&&l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(a=l.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==a&&(t.flags|=2048),l!==null&&Tl(ja),null;case 24:return a=null,l!==null&&(a=l.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),Ht(xl),bl(t),null;case 25:return null;case 30:return null}throw Error(d(156,t.tag))}function uh(l,t){switch(Dc(t),t.tag){case 1:return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 3:return Ht(xl),Ga(),l=t.flags,(l&65536)!==0&&(l&128)===0?(t.flags=l&-65537|128,t):null;case 26:case 27:case 5:return Au(t),null;case 31:if(t.memoizedState!==null){if(nt(t),t.alternate===null)throw Error(d(340));Oa()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 13:if(nt(t),l=t.memoizedState,l!==null&&l.dehydrated!==null){if(t.alternate===null)throw Error(d(340));Oa()}return l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 19:return Tl(Ml),null;case 4:return Ga(),null;case 10:return Ht(t.type),null;case 22:case 23:return nt(t),Vc(),l!==null&&Tl(ja),l=t.flags,l&65536?(t.flags=l&-65537|128,t):null;case 24:return Ht(xl),null;case 25:return null;default:return null}}function Zo(l,t){switch(Dc(t),t.tag){case 3:Ht(xl),Ga();break;case 26:case 27:case 5:Au(t);break;case 4:Ga();break;case 31:t.memoizedState!==null&&nt(t);break;case 13:nt(t);break;case 19:Tl(Ml);break;case 10:Ht(t.type);break;case 22:case 23:nt(t),Vc(),l!==null&&Tl(ja);break;case 24:Ht(xl)}}function lu(l,t){try{var a=t.updateQueue,e=a!==null?a.lastEffect:null;if(e!==null){var u=e.next;a=u;do{if((a.tag&l)===l){e=void 0;var n=a.create,c=a.inst;e=n(),c.destroy=e}a=a.next}while(a!==u)}}catch(i){dl(t,t.return,i)}}function ia(l,t,a){try{var e=t.updateQueue,u=e!==null?e.lastEffect:null;if(u!==null){var n=u.next;e=n;do{if((e.tag&l)===l){var c=e.inst,i=c.destroy;if(i!==void 0){c.destroy=void 0,u=t;var f=a,r=i;try{r()}catch(S){dl(u,f,S)}}}e=e.next}while(e!==n)}}catch(S){dl(t,t.return,S)}}function Vo(l){var t=l.updateQueue;if(t!==null){var a=l.stateNode;try{js(t,a)}catch(e){dl(l,l.return,e)}}}function Lo(l,t,a){a.props=Ba(l.type,l.memoizedProps),a.state=l.memoizedState;try{a.componentWillUnmount()}catch(e){dl(l,t,e)}}function tu(l,t){try{var a=l.ref;if(a!==null){switch(l.tag){case 26:case 27:case 5:var e=l.stateNode;break;case 30:e=l.stateNode;break;default:e=l.stateNode}typeof a=="function"?l.refCleanup=a(e):a.current=e}}catch(u){dl(l,t,u)}}function xt(l,t){var a=l.ref,e=l.refCleanup;if(a!==null)if(typeof e=="function")try{e()}catch(u){dl(l,t,u)}finally{l.refCleanup=null,l=l.alternate,l!=null&&(l.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(u){dl(l,t,u)}else a.current=null}function Ko(l){var t=l.type,a=l.memoizedProps,e=l.stateNode;try{l:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&e.focus();break l;case"img":a.src?e.src=a.src:a.srcSet&&(e.srcset=a.srcSet)}}catch(u){dl(l,l.return,u)}}function pi(l,t,a){try{var e=l.stateNode;_h(e,l.type,a,t),e[Jl]=t}catch(u){dl(l,l.return,u)}}function Jo(l){return l.tag===5||l.tag===3||l.tag===26||l.tag===27&&ra(l.type)||l.tag===4}function Ti(l){l:for(;;){for(;l.sibling===null;){if(l.return===null||Jo(l.return))return null;l=l.return}for(l.sibling.return=l.return,l=l.sibling;l.tag!==5&&l.tag!==6&&l.tag!==18;){if(l.tag===27&&ra(l.type)||l.flags&2||l.child===null||l.tag===4)continue l;l.child.return=l,l=l.child}if(!(l.flags&2))return l.stateNode}}function Ei(l,t,a){var e=l.tag;if(e===5||e===6)l=l.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(l,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(l),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=Nt));else if(e!==4&&(e===27&&ra(l.type)&&(a=l.stateNode,t=null),l=l.child,l!==null))for(Ei(l,t,a),l=l.sibling;l!==null;)Ei(l,t,a),l=l.sibling}function vn(l,t,a){var e=l.tag;if(e===5||e===6)l=l.stateNode,t?a.insertBefore(l,t):a.appendChild(l);else if(e!==4&&(e===27&&ra(l.type)&&(a=l.stateNode),l=l.child,l!==null))for(vn(l,t,a),l=l.sibling;l!==null;)vn(l,t,a),l=l.sibling}function wo(l){var t=l.stateNode,a=l.memoizedProps;try{for(var e=l.type,u=t.attributes;u.length;)t.removeAttributeNode(u[0]);Zl(t,e,a),t[Yl]=l,t[Jl]=a}catch(n){dl(l,l.return,n)}}var Gt=!1,Nl=!1,Ai=!1,ko=typeof WeakSet=="function"?WeakSet:Set,ql=null;function nh(l,t){if(l=l.containerInfo,Ki=qn,l=ns(l),gc(l)){if("selectionStart"in l)var a={start:l.selectionStart,end:l.selectionEnd};else l:{a=(a=l.ownerDocument)&&a.defaultView||window;var e=a.getSelection&&a.getSelection();if(e&&e.rangeCount!==0){a=e.anchorNode;var u=e.anchorOffset,n=e.focusNode;e=e.focusOffset;try{a.nodeType,n.nodeType}catch{a=null;break l}var c=0,i=-1,f=-1,r=0,S=0,A=l,v=null;t:for(;;){for(var g;A!==a||u!==0&&A.nodeType!==3||(i=c+u),A!==n||e!==0&&A.nodeType!==3||(f=c+e),A.nodeType===3&&(c+=A.nodeValue.length),(g=A.firstChild)!==null;)v=A,A=g;for(;;){if(A===l)break t;if(v===a&&++r===u&&(i=c),v===n&&++S===e&&(f=c),(g=A.nextSibling)!==null)break;A=v,v=A.parentNode}A=g}a=i===-1||f===-1?null:{start:i,end:f}}else a=null}a=a||{start:0,end:0}}else a=null;for(Ji={focusedElem:l,selectionRange:a},qn=!1,ql=t;ql!==null;)if(t=ql,l=t.child,(t.subtreeFlags&1028)!==0&&l!==null)l.return=t,ql=l;else for(;ql!==null;){switch(t=ql,n=t.alternate,l=t.flags,t.tag){case 0:if((l&4)!==0&&(l=t.updateQueue,l=l!==null?l.events:null,l!==null))for(a=0;a title"))),Zl(n,e,a),n[Yl]=l,Hl(n),e=n;break l;case"link":var c=lm("link","href",u).get(e+(a.href||""));if(c){for(var i=0;irl&&(c=rl,rl=Z,Z=c);var m=es(i,Z),s=es(i,rl);if(m&&s&&(g.rangeCount!==1||g.anchorNode!==m.node||g.anchorOffset!==m.offset||g.focusNode!==s.node||g.focusOffset!==s.offset)){var h=A.createRange();h.setStart(m.node,m.offset),g.removeAllRanges(),Z>rl?(g.addRange(h),g.extend(s.node,s.offset)):(h.setEnd(s.node,s.offset),g.addRange(h))}}}}for(A=[],g=i;g=g.parentNode;)g.nodeType===1&&A.push({element:g,left:g.scrollLeft,top:g.scrollTop});for(typeof i.focus=="function"&&i.focus(),i=0;ia?32:a,b.T=null,a=Ui,Ui=null;var n=da,c=Kt;if(Cl=0,ge=da=null,Kt=0,(fl&6)!==0)throw Error(d(331));var i=fl;if(fl|=4,nd(n.current),ad(n,n.current,c,a),fl=i,iu(0,!1),lt&&typeof lt.onPostCommitFiberRoot=="function")try{lt.onPostCommitFiberRoot(Me,n)}catch{}return!0}finally{C.p=u,b.T=e,Ed(l,t)}}function Md(l,t,a){t=ht(a,t),t=oi(l.stateNode,t,2),l=ua(l,t,2),l!==null&&(xe(l,2),Dt(l))}function dl(l,t,a){if(l.tag===3)Md(l,l,a);else for(;t!==null;){if(t.tag===3){Md(t,l,a);break}else if(t.tag===1){var e=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof e.componentDidCatch=="function"&&(oa===null||!oa.has(e))){l=ht(a,l),a=_o(2),e=ua(t,a,2),e!==null&&(xo(a,e,t,l),xe(e,2),Dt(e));break}}t=t.return}}function Hi(l,t,a){var e=l.pingCache;if(e===null){e=l.pingCache=new fh;var u=new Set;e.set(t,u)}else u=e.get(t),u===void 0&&(u=new Set,e.set(t,u));u.has(a)||(xi=!0,u.add(a),l=hh.bind(null,l,t,a),t.then(l,l))}function hh(l,t,a){var e=l.pingCache;e!==null&&e.delete(t),l.pingedLanes|=l.suspendedLanes&a,l.warmLanes&=~a,vl===l&&(al&a)===a&&(Al===4||Al===3&&(al&62914560)===al&&300>Pl()-Sn?(fl&2)===0&&Se(l,0):Di|=a,ye===al&&(ye=0)),Dt(l)}function _d(l,t){t===0&&(t=bf()),l=xa(l,t),l!==null&&(xe(l,t),Dt(l))}function rh(l){var t=l.memoizedState,a=0;t!==null&&(a=t.retryLane),_d(l,a)}function vh(l,t){var a=0;switch(l.tag){case 31:case 13:var e=l.stateNode,u=l.memoizedState;u!==null&&(a=u.retryLane);break;case 19:e=l.stateNode;break;case 22:e=l.stateNode._retryCache;break;default:throw Error(d(314))}e!==null&&e.delete(t),_d(l,a)}function yh(l,t){return kn(l,t)}var Mn=null,ze=null,qi=!1,_n=!1,Bi=!1,ha=0;function Dt(l){l!==ze&&l.next===null&&(ze===null?Mn=ze=l:ze=ze.next=l),_n=!0,qi||(qi=!0,Sh())}function iu(l,t){if(!Bi&&_n){Bi=!0;do for(var a=!1,e=Mn;e!==null;){if(l!==0){var u=e.pendingLanes;if(u===0)var n=0;else{var c=e.suspendedLanes,i=e.pingedLanes;n=(1<<31-tt(42|l)+1)-1,n&=u&~(c&~i),n=n&201326741?n&201326741|1:n?n|2:0}n!==0&&(a=!0,Nd(e,n))}else n=al,n=Ou(e,e===vl?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),(n&3)===0||_e(e,n)||(a=!0,Nd(e,n));e=e.next}while(a);Bi=!1}}function gh(){xd()}function xd(){_n=qi=!1;var l=0;ha!==0&&Dh()&&(l=ha);for(var t=Pl(),a=null,e=Mn;e!==null;){var u=e.next,n=Dd(e,t);n===0?(e.next=null,a===null?Mn=u:a.next=u,u===null&&(ze=a)):(a=e,(l!==0||(n&3)!==0)&&(_n=!0)),e=u}Cl!==0&&Cl!==5||iu(l),ha!==0&&(ha=0)}function Dd(l,t){for(var a=l.suspendedLanes,e=l.pingedLanes,u=l.expirationTimes,n=l.pendingLanes&-62914561;0i)break;var S=f.transferSize,A=f.initiatorType;S&&Yd(A)&&(f=f.responseEnd,c+=S*(f"u"?null:document;function Fd(l,t,a){var e=pe;if(e&&typeof t=="string"&&t){var u=dt(t);u='link[rel="'+l+'"][href="'+u+'"]',typeof a=="string"&&(u+='[crossorigin="'+a+'"]'),Wd.has(u)||(Wd.add(u),l={rel:l,crossOrigin:a,href:t},e.querySelector(u)===null&&(t=e.createElement("link"),Zl(t,"link",l),Hl(t),e.head.appendChild(t)))}}function Bh(l){Jt.D(l),Fd("dns-prefetch",l,null)}function Yh(l,t){Jt.C(l,t),Fd("preconnect",l,t)}function Xh(l,t,a){Jt.L(l,t,a);var e=pe;if(e&&l&&t){var u='link[rel="preload"][as="'+dt(t)+'"]';t==="image"&&a&&a.imageSrcSet?(u+='[imagesrcset="'+dt(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(u+='[imagesizes="'+dt(a.imageSizes)+'"]')):u+='[href="'+dt(l)+'"]';var n=u;switch(t){case"style":n=Te(l);break;case"script":n=Ee(l)}bt.has(n)||(l=z({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:l,as:t},a),bt.set(n,l),e.querySelector(u)!==null||t==="style"&&e.querySelector(du(n))||t==="script"&&e.querySelector(mu(n))||(t=e.createElement("link"),Zl(t,"link",l),Hl(t),e.head.appendChild(t)))}}function Gh(l,t){Jt.m(l,t);var a=pe;if(a&&l){var e=t&&typeof t.as=="string"?t.as:"script",u='link[rel="modulepreload"][as="'+dt(e)+'"][href="'+dt(l)+'"]',n=u;switch(e){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":n=Ee(l)}if(!bt.has(n)&&(l=z({rel:"modulepreload",href:l},t),bt.set(n,l),a.querySelector(u)===null)){switch(e){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(mu(n)))return}e=a.createElement("link"),Zl(e,"link",l),Hl(e),a.head.appendChild(e)}}}function Qh(l,t,a){Jt.S(l,t,a);var e=pe;if(e&&l){var u=La(e).hoistableStyles,n=Te(l);t=t||"default";var c=u.get(n);if(!c){var i={loading:0,preload:null};if(c=e.querySelector(du(n)))i.loading=5;else{l=z({rel:"stylesheet",href:l,"data-precedence":t},a),(a=bt.get(n))&&Pi(l,a);var f=c=e.createElement("link");Hl(f),Zl(f,"link",l),f._p=new Promise(function(r,S){f.onload=r,f.onerror=S}),f.addEventListener("load",function(){i.loading|=1}),f.addEventListener("error",function(){i.loading|=2}),i.loading|=4,Un(c,t,e)}c={type:"stylesheet",instance:c,count:1,state:i},u.set(n,c)}}}function Zh(l,t){Jt.X(l,t);var a=pe;if(a&&l){var e=La(a).hoistableScripts,u=Ee(l),n=e.get(u);n||(n=a.querySelector(mu(u)),n||(l=z({src:l,async:!0},t),(t=bt.get(u))&&lf(l,t),n=a.createElement("script"),Hl(n),Zl(n,"link",l),a.head.appendChild(n)),n={type:"script",instance:n,count:1,state:null},e.set(u,n))}}function Vh(l,t){Jt.M(l,t);var a=pe;if(a&&l){var e=La(a).hoistableScripts,u=Ee(l),n=e.get(u);n||(n=a.querySelector(mu(u)),n||(l=z({src:l,async:!0,type:"module"},t),(t=bt.get(u))&&lf(l,t),n=a.createElement("script"),Hl(n),Zl(n,"link",l),a.head.appendChild(n)),n={type:"script",instance:n,count:1,state:null},e.set(u,n))}}function $d(l,t,a,e){var u=(u=kt.current)?Nn(u):null;if(!u)throw Error(d(446));switch(l){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=Te(a.href),a=La(u).hoistableStyles,e=a.get(t),e||(e={type:"style",instance:null,count:0,state:null},a.set(t,e)),e):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){l=Te(a.href);var n=La(u).hoistableStyles,c=n.get(l);if(c||(u=u.ownerDocument||u,c={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},n.set(l,c),(n=u.querySelector(du(l)))&&!n._p&&(c.instance=n,c.state.loading=5),bt.has(l)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},bt.set(l,a),n||Lh(u,l,a,c.state))),t&&e===null)throw Error(d(528,""));return c}if(t&&e!==null)throw Error(d(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Ee(a),a=La(u).hoistableScripts,e=a.get(t),e||(e={type:"script",instance:null,count:0,state:null},a.set(t,e)),e):{type:"void",instance:null,count:0,state:null};default:throw Error(d(444,l))}}function Te(l){return'href="'+dt(l)+'"'}function du(l){return'link[rel="stylesheet"]['+l+"]"}function Id(l){return z({},l,{"data-precedence":l.precedence,precedence:null})}function Lh(l,t,a,e){l.querySelector('link[rel="preload"][as="style"]['+t+"]")?e.loading=1:(t=l.createElement("link"),e.preload=t,t.addEventListener("load",function(){return e.loading|=1}),t.addEventListener("error",function(){return e.loading|=2}),Zl(t,"link",a),Hl(t),l.head.appendChild(t))}function Ee(l){return'[src="'+dt(l)+'"]'}function mu(l){return"script[async]"+l}function Pd(l,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var e=l.querySelector('style[data-href~="'+dt(a.href)+'"]');if(e)return t.instance=e,Hl(e),e;var u=z({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return e=(l.ownerDocument||l).createElement("style"),Hl(e),Zl(e,"style",u),Un(e,a.precedence,l),t.instance=e;case"stylesheet":u=Te(a.href);var n=l.querySelector(du(u));if(n)return t.state.loading|=4,t.instance=n,Hl(n),n;e=Id(a),(u=bt.get(u))&&Pi(e,u),n=(l.ownerDocument||l).createElement("link"),Hl(n);var c=n;return c._p=new Promise(function(i,f){c.onload=i,c.onerror=f}),Zl(n,"link",e),t.state.loading|=4,Un(n,a.precedence,l),t.instance=n;case"script":return n=Ee(a.src),(u=l.querySelector(mu(n)))?(t.instance=u,Hl(u),u):(e=a,(u=bt.get(n))&&(e=z({},a),lf(e,u)),l=l.ownerDocument||l,u=l.createElement("script"),Hl(u),Zl(u,"link",e),l.head.appendChild(u),t.instance=u);case"void":return null;default:throw Error(d(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(e=t.instance,t.state.loading|=4,Un(e,a.precedence,l));return t.instance}function Un(l,t,a){for(var e=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),u=e.length?e[e.length-1]:null,n=u,c=0;c title"):null)}function Kh(l,t,a){if(a===1||t.itemProp!=null)return!1;switch(l){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return l=t.disabled,typeof t.precedence=="string"&&l==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function am(l){return!(l.type==="stylesheet"&&(l.state.loading&3)===0)}function Jh(l,t,a,e){if(a.type==="stylesheet"&&(typeof e.media!="string"||matchMedia(e.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var u=Te(e.href),n=t.querySelector(du(u));if(n){t=n._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(l.count++,l=Cn.bind(l),t.then(l,l)),a.state.loading|=4,a.instance=n,Hl(n);return}n=t.ownerDocument||t,e=Id(e),(u=bt.get(u))&&Pi(e,u),n=n.createElement("link"),Hl(n);var c=n;c._p=new Promise(function(i,f){c.onload=i,c.onerror=f}),Zl(n,"link",e),a.instance=n}l.stylesheets===null&&(l.stylesheets=new Map),l.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(l.count++,a=Cn.bind(l),t.addEventListener("load",a),t.addEventListener("error",a))}}var tf=0;function wh(l,t){return l.stylesheets&&l.count===0&&Hn(l,l.stylesheets),0tf?50:800)+t);return l.unsuspend=a,function(){l.unsuspend=null,clearTimeout(e),clearTimeout(u)}}:null}function Cn(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Hn(this,this.stylesheets);else if(this.unsuspend){var l=this.unsuspend;this.unsuspend=null,l()}}}var Rn=null;function Hn(l,t){l.stylesheets=null,l.unsuspend!==null&&(l.count++,Rn=new Map,t.forEach(kh,l),Rn=null,Cn.call(l))}function kh(l,t){if(!(t.state.loading&4)){var a=Rn.get(l);if(a)var e=a.get(null);else{a=new Map,Rn.set(l,a);for(var u=l.querySelectorAll("link[data-precedence],style[data-precedence]"),n=0;n"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(o)}catch(x){console.error(x)}}return o(),of.exports=sr(),of.exports}var dr=or();const mr="modulepreload",hr=function(o){return"/"+o},Tm={},wt=function(x,_,d){let U=Promise.resolve();if(_&&_.length>0){let N=function(D){return Promise.all(D.map(H=>Promise.resolve(H).then(z=>({status:"fulfilled",value:z}),z=>({status:"rejected",reason:z}))))};document.getElementsByTagName("link");const T=document.querySelector("meta[property=csp-nonce]"),M=(T==null?void 0:T.nonce)||(T==null?void 0:T.getAttribute("nonce"));U=N(_.map(D=>{if(D=hr(D),D in Tm)return;Tm[D]=!0;const H=D.endsWith(".css"),z=H?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${D}"]${z}`))return;const j=document.createElement("link");if(j.rel=H?"stylesheet":mr,H||(j.as="script"),j.crossOrigin="",j.href=D,M&&j.setAttribute("nonce",M),document.head.appendChild(j),H)return new Promise((Q,X)=>{j.addEventListener("load",Q),j.addEventListener("error",()=>X(new Error(`Unable to preload CSS for ${D}`)))})}))}function O(N){const T=new Event("vite:preloadError",{cancelable:!0});if(T.payload=N,window.dispatchEvent(T),!T.defaultPrevented)throw N}return U.then(N=>{for(const T of N||[])T.status==="rejected"&&O(T.reason);return x().catch(O)})},xm=E.createContext({windows:[],openWindow:()=>{},closeWindow:()=>{},bringToFront:()=>{}}),rr=({children:o})=>{const[x,_]=E.useState([]),d=E.useRef(1e4),U=E.useCallback((T,M,D)=>{_(H=>H.find(j=>j.id===T)?H.map(j=>j.id===T?{...j,zIndex:++d.current}:j):[...H,{id:T,title:M,charName:D,zIndex:++d.current}])},[]),O=E.useCallback(T=>{_(M=>M.filter(D=>D.id!==T))},[]),N=E.useCallback(T=>{_(M=>M.map(D=>D.id===T?{...D,zIndex:++d.current}:D))},[]);return y.jsx(xm.Provider,{value:{windows:x,openWindow:U,closeWindow:O,bringToFront:N},children:o})},zu=()=>E.useContext(xm),zt={west:-102.1,east:102.1,north:102.1,south:-102.1};function pu(o,x,_,d){const U=(o-zt.west)/(zt.east-zt.west)*_,O=(zt.north-x)/(zt.north-zt.south)*d;return{x:U,y:O}}function vr(o,x,_,d,U,O,N){const T=(o-d)/_,M=(x-U)/_,D=zt.west+T/O*(zt.east-zt.west),H=zt.north-M/N*(zt.north-zt.south);return{ew:D,ns:H}}function hf(o,x){const _=o>=0?"N":"S",d=x>=0?"E":"W";return`${Math.abs(o).toFixed(1)}${_}, ${Math.abs(x).toFixed(1)}${d}`}const Dm=bu.memo(({players:o,imgW:x,imgH:_,getColor:d,onHover:U,onSelect:O,selectedPlayer:N})=>{const{openWindow:T}=zu(),[M,D]=E.useState(null);E.useEffect(()=>{const z=()=>D(null);return M&&window.addEventListener("click",z),()=>window.removeEventListener("click",z)},[M]);const H=E.useMemo(()=>o.filter(z=>z.ew!==void 0&&z.ns!==void 0).map(z=>({...z,pos:pu(z.ew,z.ns,x,_),color:d(z.character_name)})),[o,x,_,d]);return y.jsxs("div",{className:"ml-dots-layer",children:[H.map(z=>y.jsx("div",{className:`ml-dot ${N===z.character_name?"ml-dot-selected":""}`,style:{left:z.pos.x,top:z.pos.y,backgroundColor:z.color},onMouseEnter:j=>{var X;const Q=(X=j.currentTarget.closest(".ml-map-container"))==null?void 0:X.getBoundingClientRect();Q&&U(z,j.clientX-Q.left,j.clientY-Q.top)},onMouseLeave:()=>U(null,0,0),onClick:()=>O(z.character_name),onDoubleClick:()=>T(`chat-${z.character_name}`,`Chat: ${z.character_name}`,z.character_name),onContextMenu:j=>{var Bl;j.preventDefault();const Q=z.character_name,X=(Bl=j.currentTarget.closest(".ml-map-container"))==null?void 0:Bl.getBoundingClientRect(),W=X?j.clientX-X.left:j.clientX,Ul=X?j.clientY-X.top:j.clientY;D({name:Q,x:W,y:Ul})}},z.character_name)),M&&y.jsx("div",{style:{position:"fixed",left:M.x+410,top:M.y,background:"#1a1a1a",border:"1px solid #444",borderRadius:4,zIndex:9999,padding:"2px 0",fontSize:"0.75rem",boxShadow:"0 4px 12px rgba(0,0,0,0.5)",minWidth:120},children:[{label:"Chat",id:"chat"},{label:"Stats",id:"stats"},{label:"Inventory",id:"inv"},{label:"Character",id:"char"},{label:"Combat",id:"combat"},{label:"Radar",id:"radar"}].map(z=>y.jsx("div",{onClick:()=>{T(`${z.id}-${M.name}`,`${z.label}: ${M.name}`,M.name),D(null)},style:{padding:"4px 12px",cursor:"pointer",color:"#ccc"},onMouseEnter:j=>j.currentTarget.style.background="#333",onMouseLeave:j=>j.currentTarget.style.background="",children:z.label},z.id))})]})});Dm.displayName="PlayerDots";const yr="/api";async function za(o){const x=await fetch(`${yr}${o}`,{credentials:"include"});if(!x.ok)throw new Error(`API ${o}: ${x.status}`);return x.json()}function gr(){return`${location.protocol==="https:"?"wss:":"ws:"}//${location.host}/api/ws/live`}const Om=bu.memo(({imgW:o,imgH:x,getColor:_})=>{const[d,U]=E.useState([]);E.useEffect(()=>{const N=async()=>{try{const M=await za("/trails/?seconds=600");U(M.trails??[])}catch{}};N();const T=setInterval(N,2e3);return()=>clearInterval(T)},[]);const O=E.useMemo(()=>{const N={};for(const T of d){const{x:M,y:D}=pu(T.ew,T.ns,o,x);N[T.character_name]||(N[T.character_name]=[]),N[T.character_name].push(`${M},${D}`)}return Object.entries(N).filter(([,T])=>T.length>=2).map(([T,M])=>({name:T,points:M.join(" ")}))},[d,o,x]);return y.jsx("svg",{className:"ml-trails-svg",viewBox:`0 0 ${o} ${x}`,preserveAspectRatio:"none",children:O.map(N=>y.jsx("polyline",{points:N.points,stroke:_(N.name),fill:"none",strokeWidth:2,strokeOpacity:.7,strokeLinecap:"round",strokeLinejoin:"round"},N.name))})});Om.displayName="TrailsSVG";const Sr=({imgW:o,imgH:x,enabled:_})=>{const d=E.useRef(null),[U,O]=E.useState([]);return E.useEffect(()=>{if(!_)return;(async()=>{try{const T=await za("/spawns/heatmap?hours=24&limit=50000");O(T.spawn_points??[])}catch{}})()},[_]),E.useEffect(()=>{const N=d.current;if(!N||!_||U.length===0||o===0)return;N.width=o,N.height=x;const T=N.getContext("2d");if(T){T.clearRect(0,0,o,x);for(const M of U){const{x:D,y:H}=pu(M.ew,M.ns,o,x),z=Math.max(5,Math.min(12,5+Math.sqrt(M.intensity*.5))),j=T.createRadialGradient(D,H,0,D,H,z);j.addColorStop(0,`rgba(255, 0, 0, ${Math.min(.9,M.intensity/40)})`),j.addColorStop(.6,`rgba(255, 100, 0, ${Math.min(.4,M.intensity/120)})`),j.addColorStop(1,"rgba(255, 150, 0, 0)"),T.fillStyle=j,T.fillRect(D-z,H-z,z*2,z*2)}}},[U,o,x,_]),_?y.jsx("canvas",{ref:d,className:"ml-heatmap-canvas"}):null},br=({imgW:o,imgH:x,enabled:_})=>{const[d,U]=E.useState([]);E.useEffect(()=>{if(!_)return;const N=async()=>{try{const M=await za("/portals");U(M.portals??[])}catch{}};N();const T=setInterval(N,6e4);return()=>clearInterval(T)},[_]);const O=E.useMemo(()=>d.map(N=>({...N,pos:pu(N.coordinates.ew,N.coordinates.ns,o,x)})),[d,o,x]);return!_||O.length===0?null:y.jsx("div",{className:"ml-portals-layer",children:O.map((N,T)=>y.jsx("div",{className:"ml-portal-icon",style:{left:N.pos.x,top:N.pos.y},title:`${N.portal_name} (by ${N.discovered_by})`},T))})},Em=20,Am=.3,zr=({players:o,getColor:x,onSelectPlayer:_,showHeatmap:d,showPortals:U,selectedPlayer:O})=>{var jl;const N=E.useRef(null),T=E.useRef(null),[M,D]=E.useState({w:0,h:0}),[H,z]=E.useState(null),j=E.useRef(null),Q=E.useRef({scale:1,offX:0,offY:0}),X=E.useRef({dragging:!1,sx:0,sy:0,startOffX:0,startOffY:0}),W=E.useCallback(()=>{if(T.current){const{scale:I,offX:F,offY:ul}=Q.current;T.current.style.transform=`translate(${F}px, ${ul}px) scale(${I})`}},[]),Ul=E.useCallback(I=>{const F=I.currentTarget;if(D({w:F.naturalWidth,h:F.naturalHeight}),N.current){const ul=N.current.clientWidth,k=N.current.clientHeight,R=Math.min(ul/F.naturalWidth,k/F.naturalHeight);Q.current={scale:R,offX:(ul-F.naturalWidth*R)/2,offY:(k-F.naturalHeight*R)/2},W()}},[W]),Bl=E.useCallback(I=>{var pl;I.preventDefault();const F=(pl=N.current)==null?void 0:pl.getBoundingClientRect();if(!F)return;const ul=Q.current,k=I.deltaY<0?1.1:.9,R=Math.min(Em,Math.max(Am,ul.scale*k)),J=R/ul.scale,B=I.clientX-F.left,L=I.clientY-F.top;Q.current={scale:R,offX:B-(B-ul.offX)*J,offY:L-(L-ul.offY)*J},W()},[W]),$=E.useCallback(I=>{if(I.button!==0)return;const F=Q.current;X.current={dragging:!0,sx:I.clientX,sy:I.clientY,startOffX:F.offX,startOffY:F.offY}},[]);E.useEffect(()=>{const I=ul=>{const k=X.current;if(k.dragging&&(Q.current.offX=k.startOffX+(ul.clientX-k.sx),Q.current.offY=k.startOffY+(ul.clientY-k.sy),W()),N.current&&M.w>0&&j.current){const R=N.current.getBoundingClientRect(),J=Q.current,B=vr(ul.clientX-R.left,ul.clientY-R.top,J.scale,J.offX,J.offY,M.w,M.h);j.current.textContent=hf(B.ns,B.ew)}},F=()=>{X.current.dragging=!1};return window.addEventListener("mousemove",I),window.addEventListener("mouseup",F),()=>{window.removeEventListener("mousemove",I),window.removeEventListener("mouseup",F)}},[W,M.w,M.h]);const tl=E.useRef(null);E.useEffect(()=>{if(!O||M.w===0||!N.current||tl.current===O)return;const I=o.find(J=>J.character_name===O);if(!I)return;tl.current=O;const{x:F,y:ul}=pu(I.ew,I.ns,M.w,M.h),k=N.current.getBoundingClientRect(),R=3;Q.current={scale:Math.min(Em,Math.max(Am,R)),offX:k.width/2-F*R,offY:k.height/2-ul*R},W()},[O,o,M.w,M.h,W]),E.useEffect(()=>{O||(tl.current=null)},[O]);const Vl=E.useCallback((I,F,ul)=>{z(I?{x:F,y:ul,player:I}:null)},[]);return y.jsxs("div",{className:"ml-map-container",ref:N,onWheel:Bl,onMouseDown:$,children:[y.jsxs("div",{ref:T,className:"ml-map-group",children:[y.jsx("img",{src:"/dereth.png",alt:"Dereth",className:"ml-map-img",onLoad:Ul,draggable:!1}),M.w>0&&y.jsxs(y.Fragment,{children:[y.jsx(Sr,{imgW:M.w,imgH:M.h,enabled:d}),y.jsx(Om,{imgW:M.w,imgH:M.h,getColor:x}),y.jsx(Dm,{players:o,imgW:M.w,imgH:M.h,getColor:x,onHover:Vl,onSelect:_,selectedPlayer:O}),y.jsx(br,{imgW:M.w,imgH:M.h,enabled:U})]})]}),H&&y.jsxs("div",{className:"ml-tooltip",style:{left:H.x+12,top:H.y-10},children:[y.jsx("strong",{children:H.player.character_name}),y.jsx("br",{}),hf(H.player.ns,H.player.ew),y.jsx("br",{}),H.player.kills_per_hour," kph ยท ",(jl=H.player.kills)==null?void 0:jl.toLocaleString()," kills"]}),y.jsx("div",{className:"ml-coords",ref:j})]})},Nm=bu.memo(({player:o,vitals:x,color:_,onSelect:d,isSelected:U})=>{var H,z;const{openWindow:O}=zu(),N=(o.vt_state||"idle").toLowerCase(),T=N==="combat"||N==="hunt",M=(o.total_rares??0)>0?Math.round((o.total_kills??0)/(o.total_rares??1)).toLocaleString():null,D=o.character_name;return y.jsxs("li",{className:`ml-player-row ${U?"ml-player-selected":""}`,style:{borderLeftColor:_},children:[y.jsxs("div",{className:"ml-pr-header",onClick:d,children:[y.jsx("span",{className:"ml-pr-name",children:D}),y.jsx("span",{className:"ml-pr-coords",children:hf(o.ns,o.ew)})]}),y.jsxs("div",{className:"ml-pr-vitals",children:[y.jsx("div",{className:"ml-vital-bar hp",children:y.jsx("div",{className:"ml-vital-fill",style:{width:`${(x==null?void 0:x.health_percentage)??0}%`}})}),y.jsx("div",{className:"ml-vital-bar sta",children:y.jsx("div",{className:"ml-vital-fill",style:{width:`${(x==null?void 0:x.stamina_percentage)??0}%`}})}),y.jsx("div",{className:"ml-vital-bar mana",children:y.jsx("div",{className:"ml-vital-fill",style:{width:`${(x==null?void 0:x.mana_percentage)??0}%`}})})]}),y.jsxs("div",{className:"ml-pr-grid",children:[y.jsxs("span",{className:"ml-gs",title:"Session kills",children:["โš”๏ธ ",((H=o.kills)==null?void 0:H.toLocaleString())??0]}),y.jsxs("span",{className:"ml-gs",title:"Total kills",children:["๐Ÿ† ",(o.total_kills??0).toLocaleString()]}),y.jsxs("span",{className:"ml-gs",title:"Kills per hour",children:[o.kills_per_hour??"0"," ",y.jsx("span",{className:"ml-suffix",children:"KPH"})]}),y.jsxs("span",{className:"ml-gs",title:"Rares (session / total)",children:["๐Ÿ’Ž ",o.session_rares??0," / ",o.total_rares??0]}),y.jsx("span",{className:"ml-gs",title:"Kills per rare",children:M?y.jsxs(y.Fragment,{children:["๐Ÿ“Š ",M," ",y.jsx("span",{className:"ml-suffix",children:"KPR"})]}):""}),y.jsx("span",{className:`ml-meta-pill ${T?"active":N!=="idle"&&N!=="default"&&N!==""?"other":""}`,children:o.vt_state||"idle"}),y.jsxs("span",{className:"ml-gs",title:"Online time",children:["๐Ÿ• ",((z=o.onlinetime)==null?void 0:z.replace(/^00\./,""))??"--"]}),y.jsxs("span",{className:"ml-gs",title:"Deaths",children:["โ˜ ๏ธ ",o.deaths??"0"]}),y.jsxs("span",{className:"ml-gs",title:"Prismatic tapers",children:[y.jsx("img",{src:"/prismatic-taper-icon.png",className:"ml-taper-icon",alt:""}),o.prismatic_taper_count??"0"]})]}),y.jsxs("div",{className:"ml-pr-buttons",children:[y.jsx("button",{className:"ml-btn accent",onClick:()=>O(`chat-${D}`,`Chat: ${D}`,D),children:"Chat"}),y.jsx("button",{className:"ml-btn accent",onClick:()=>O(`stats-${D}`,`Stats: ${D}`,D),children:"Stats"}),y.jsx("button",{className:"ml-btn accent",onClick:()=>O(`inv-${D}`,`Inventory: ${D}`,D),children:"Inv"}),y.jsx("button",{className:"ml-btn",onClick:()=>O(`char-${D}`,`Character: ${D}`,D),children:"Char"}),y.jsx("button",{className:"ml-btn",onClick:()=>O(`combat-${D}`,`Combat: ${D}`,D),children:"Combat"}),y.jsx("button",{className:"ml-btn",onClick:()=>O(`radar-${D}`,`Radar: ${D}`,D),children:"Radar"})]})]})});Nm.displayName="PlayerRow";const pr=({players:o,vitals:x,getColor:_,onSelect:d,selectedPlayer:U})=>{const O=E.useRef(null),[N,T]=E.useState(!1),M=E.useCallback(()=>{O.current&&T(O.current.scrollTop>200)},[]);return y.jsxs("div",{style:{position:"relative",flex:1,minHeight:0},children:[y.jsx("ul",{className:"ml-player-list",ref:O,onScroll:M,children:o.map(D=>y.jsx(Nm,{player:D,vitals:x.get(D.character_name)??null,color:_(D.character_name),onSelect:()=>d(D.character_name),isSelected:U===D.character_name},D.character_name))}),N&&y.jsx("button",{onClick:()=>{var D;(D=O.current)==null||D.scrollTo({top:0,behavior:"smooth"})},style:{position:"absolute",bottom:8,right:8,width:28,height:28,borderRadius:"50%",background:"rgba(68,136,255,0.2)",border:"1px solid rgba(68,136,255,0.4)",color:"#6af",cursor:"pointer",fontSize:"0.8rem",display:"flex",alignItems:"center",justifyContent:"center"},children:"โ–ฒ"})]})},Tr=[{key:"name",label:"Name"},{key:"kph",label:"KPH"},{key:"skills",label:"S.Kills"},{key:"srares",label:"S.Rares"},{key:"tkills",label:"T.Kills"},{key:"kpr",label:"KPR"}],Er=({value:o,onChange:x})=>y.jsx("div",{className:"ml-sort-buttons",children:Tr.map(_=>y.jsx("button",{className:`ml-sort-btn ${o===_.key?"active":""}`,onClick:()=>x(_.key),children:_.label},_.key))}),Ar=()=>{const{openWindow:o}=zu();return y.jsxs("div",{className:"ml-tool-links",children:[y.jsx("span",{className:"ml-tool-link",style:{cursor:"pointer"},onClick:()=>o("issues","Issues Board"),children:"๐Ÿ“‹ Issues"}),y.jsx("span",{className:"ml-tool-link",style:{cursor:"pointer"},onClick:()=>o("vitalsharing","Vital Sharing"),children:"๐Ÿค Vitals"}),y.jsx("span",{className:"ml-tool-link",style:{cursor:"pointer"},onClick:()=>o("combatpicker","Combat Stats"),children:"โš”๏ธ Combat"})]})},Mr=({players:o,vitals:x,serverHealth:_,totalRares:d,totalKills:U,getColor:O,onSelectPlayer:N,onViewToggle:T,showHeatmap:M,showPortals:D,onToggleHeatmap:H,onTogglePortals:z,version:j,selectedPlayer:Q})=>{var F,ul;const[X,W]=E.useState("name"),[Ul,Bl]=E.useState(""),$=E.useMemo(()=>o.reduce((k,R)=>k+(parseInt(R.kills_per_hour)||0),0),[o]),tl=((F=_==null?void 0:_.status)==null?void 0:F.toLowerCase())==="online"||((ul=_==null?void 0:_.status)==null?void 0:ul.toLowerCase())==="up",Vl=E.useDeferredValue(o),jl=E.useDeferredValue(x),I=E.useMemo(()=>{let k=[...Vl];switch(Ul&&(k=k.filter(R=>R.character_name.toLowerCase().startsWith(Ul.toLowerCase()))),X){case"kph":k.sort((R,J)=>(parseInt(J.kills_per_hour)||0)-(parseInt(R.kills_per_hour)||0));break;case"skills":k.sort((R,J)=>(J.kills||0)-(R.kills||0));break;case"srares":k.sort((R,J)=>(J.session_rares??0)-(R.session_rares??0));break;case"tkills":k.sort((R,J)=>(J.total_kills??0)-(R.total_kills??0));break;case"kpr":k.sort((R,J)=>{const B=(R.total_kills??0)/Math.max(1,R.total_rares??1),L=(J.total_kills??0)/Math.max(1,J.total_rares??1);return B-L});break;default:k.sort((R,J)=>R.character_name.localeCompare(J.character_name))}return k},[Vl,X,Ul]);return y.jsxs("div",{className:"ml-sidebar",children:[j&&y.jsxs("div",{className:"ml-version",children:["v",j]}),y.jsx("div",{className:"ml-sidebar-header",children:y.jsxs("span",{className:"ml-sidebar-title",children:["Active Mosswart Enjoyers (",o.length,")"]})}),y.jsxs("div",{className:"ml-server-status",children:[y.jsx("span",{className:`ml-status-dot ${tl?"online":"offline"}`}),y.jsxs("span",{className:"ml-status-text",children:["Coldeve ",tl?"Online":"Offline"]}),(_==null?void 0:_.player_count)!=null&&y.jsxs("span",{className:"ml-status-detail",children:["๐Ÿ‘ฅ ",_.player_count]}),(_==null?void 0:_.latency_ms)!=null&&y.jsxs("span",{className:"ml-status-detail",children:[Math.round(_.latency_ms),"ms"]}),(_==null?void 0:_.uptime_seconds)!=null&&y.jsxs("span",{className:"ml-status-detail",children:["Up: ",Math.floor(_.uptime_seconds/3600),"h"]})]}),y.jsxs("div",{className:"ml-counters",children:[y.jsxs("div",{className:"ml-counter rares",children:[y.jsx("span",{className:"ml-counter-val",children:d}),y.jsx("span",{className:"ml-counter-lbl",children:"Rares"})]}),y.jsxs("div",{className:`ml-counter kph ${$>5e3?"ultra":""}`,children:[y.jsx("span",{className:"ml-counter-val",children:$.toLocaleString()}),y.jsx("span",{className:"ml-counter-lbl",children:"Server KPH"})]}),y.jsxs("div",{className:"ml-counter kills",children:[y.jsx("span",{className:"ml-counter-val",children:U.toLocaleString()}),y.jsx("span",{className:"ml-counter-lbl",children:"Kills"})]})]}),y.jsxs("div",{className:"ml-tool-links",children:[y.jsx("span",{className:"ml-tool-link",style:{cursor:"pointer"},onClick:T,children:"๐Ÿ“Š Dashboard"}),y.jsx("a",{href:"/inventory.html",target:"_blank",className:"ml-tool-link",children:"๐Ÿ” Inv Search"}),y.jsx("a",{href:"/suitbuilder.html",target:"_blank",className:"ml-tool-link",children:"๐Ÿ›ก๏ธ Suitbuilder"}),y.jsx("a",{href:"/debug.html",target:"_blank",className:"ml-tool-link",children:"๐Ÿ› Debug"}),y.jsx("a",{href:"/quest-status.html",target:"_blank",className:"ml-tool-link",children:"๐Ÿ“œ Quests"})]}),y.jsx(Ar,{}),y.jsxs("div",{className:"ml-toggles",children:[y.jsxs("label",{className:"ml-toggle-label",children:[y.jsx("input",{type:"checkbox",checked:M,onChange:k=>H(k.target.checked)}),y.jsx("span",{children:"Spawn Heatmap"})]}),y.jsxs("label",{className:"ml-toggle-label",children:[y.jsx("input",{type:"checkbox",checked:D,onChange:k=>z(k.target.checked)}),y.jsx("span",{children:"Portals"})]})]}),y.jsx("div",{style:{borderTop:"1px solid #333",marginTop:4,paddingTop:4}}),y.jsx(Er,{value:X,onChange:W}),y.jsx("input",{className:"ml-filter",type:"text",placeholder:"Filter players...",value:Ul,onChange:k=>Bl(k.target.value)}),y.jsx(pr,{players:I,vitals:jl,getColor:O,onSelect:N,selectedPlayer:Q})]})},_r=({id:o,title:x,zIndex:_,width:d=700,height:U=340,children:O})=>{const{closeWindow:N,bringToFront:T}=zu(),M=E.useRef(null),D=E.useRef({dragging:!1,sx:0,sy:0,ox:0,oy:0}),H=E.useRef({x:420,y:10+Math.random()*40}),z=E.useCallback(j=>{var X;j.preventDefault(),T(o);const Q=(X=M.current)==null?void 0:X.getBoundingClientRect();Q&&(D.current={dragging:!0,sx:j.clientX,sy:j.clientY,ox:Q.left,oy:Q.top})},[o,T]);return E.useEffect(()=>{const j=X=>{const W=D.current;!W.dragging||!M.current||(H.current.x=W.ox+(X.clientX-W.sx),H.current.y=W.oy+(X.clientY-W.sy),M.current.style.left=`${H.current.x}px`,M.current.style.top=`${H.current.y}px`)},Q=()=>{D.current.dragging=!1};return window.addEventListener("mousemove",j),window.addEventListener("mouseup",Q),()=>{window.removeEventListener("mousemove",j),window.removeEventListener("mouseup",Q)}},[]),y.jsxs("div",{ref:M,className:"ml-window",style:{zIndex:_,width:d,height:U,left:H.current.x,top:H.current.y},onMouseDown:()=>T(o),children:[y.jsxs("div",{className:"ml-window-header",onMouseDown:z,children:[y.jsx("span",{className:"ml-window-title",children:x}),y.jsx("button",{className:"ml-window-close",onClick:()=>N(o),children:"ร—"})]}),y.jsx("div",{className:"ml-window-content",children:O})]})},xr={0:"#00FF00",2:"#FFFFFF",3:"#FF0000",4:"#FFFFFF",5:"#33CCFF",6:"#CCFF99",7:"#00FFFF",14:"#FFD700",15:"#FF69B4",17:"#AAAAFF",18:"#88FF88",21:"#FF8888",22:"#FFAA66"},Um=50,jm=o=>`mo-chat-history-${o}`;function Dr(o){try{const x=localStorage.getItem(jm(o));return x?JSON.parse(x):[]}catch{return[]}}function Or(o,x){try{localStorage.setItem(jm(o),JSON.stringify(x.slice(-Um)))}catch{}}const Nr=({id:o,charName:x,zIndex:_,messages:d,socket:U})=>{const O=E.useRef(null),[N,T]=E.useState(""),[M,D]=E.useState(!1),H=E.useRef(Dr(x)),z=E.useRef(-1),j=E.useRef(""),Q=E.useRef(!1);E.useEffect(()=>{const $=O.current;$&&(Q.current?D(!0):($.scrollTop=$.scrollHeight,D(!1)))},[d.length]);const X=E.useCallback(()=>{const $=O.current;if(!$)return;const tl=$.scrollHeight-$.scrollTop-$.clientHeight<30;Q.current=!tl,tl&&D(!1)},[]),W=E.useCallback(()=>{const $=O.current;$&&($.scrollTop=$.scrollHeight,Q.current=!1,D(!1))},[]),Ul=E.useCallback($=>{$.preventDefault();const tl=N.trim();!tl||!U||U.readyState!==WebSocket.OPEN||(U.send(JSON.stringify({player_name:x,command:tl})),H.current.push(tl),H.current.length>Um&&H.current.shift(),Or(x,H.current),z.current=-1,j.current="",T(""),Q.current=!1)},[N,U,x]),Bl=E.useCallback($=>{const tl=H.current;if(tl.length!==0){if($.key==="ArrowUp")$.preventDefault(),z.current===-1?(j.current=N,z.current=tl.length-1):z.current>0&&z.current--,T(tl[z.current]);else if($.key==="ArrowDown"){if($.preventDefault(),z.current===-1)return;z.currenty.jsx("div",{className:"ml-chat-line",style:{color:xr[$.color??2]??"#ddd"},children:$.text},tl))}),M&&y.jsx("div",{onClick:W,style:{padding:"3px 0",textAlign:"center",fontSize:"0.65rem",color:"#6af",background:"#1a2a3a",cursor:"pointer",borderTop:"1px solid #334"},children:"โ–ผ New messages below"}),y.jsx("form",{className:"ml-chat-form",onSubmit:Ul,children:y.jsx("input",{className:"ml-chat-input",value:N,onChange:$=>T($.target.value),onKeyDown:Bl,placeholder:"Enter chat..."})})]})},Ur=E.lazy(()=>wt(()=>import("./StatsWindow-DonAC4kK.js"),__vite__mapDeps([0,1])).then(o=>({default:o.StatsWindow}))),jr=E.lazy(()=>wt(()=>import("./CharacterWindow-HFix6rx0.js"),__vite__mapDeps([2,1])).then(o=>({default:o.CharacterWindow}))),Cr=E.lazy(()=>wt(()=>import("./InventoryWindow-DNVzs4Pz.js"),__vite__mapDeps([3,1])).then(o=>({default:o.InventoryWindow}))),Rr=E.lazy(()=>wt(()=>import("./RadarWindow-D2-ECy2X.js"),__vite__mapDeps([4,1])).then(o=>({default:o.RadarWindow}))),Hr=E.lazy(()=>wt(()=>import("./CombatStatsWindow-CJo0cOU-.js"),__vite__mapDeps([5,1])).then(o=>({default:o.CombatStatsWindow}))),qr=E.lazy(()=>wt(()=>import("./CombatPickerWindow-2QrIZhzN.js"),__vite__mapDeps([6,1])).then(o=>({default:o.CombatPickerWindow}))),Br=E.lazy(()=>wt(()=>import("./IssuesWindow-CBadrEJS.js"),__vite__mapDeps([7,1])).then(o=>({default:o.IssuesWindow}))),Yr=E.lazy(()=>wt(()=>import("./VitalSharingWindow-Cxliz82-.js"),__vite__mapDeps([8,1])).then(o=>({default:o.VitalSharingWindow}))),Cm=bu.memo(({characters:o,chatMessages:x,nearbyObjects:_,inventoryVersion:d,equipmentCantrips:U,socket:O})=>{const{windows:N}=zu();return y.jsx(E.Suspense,{fallback:null,children:N.map(T=>{var H;const M=T.charName??"";switch(T.id.split("-")[0]){case"chat":return y.jsx(Nr,{id:T.id,charName:M,zIndex:T.zIndex,messages:x.get(M)??[],socket:O},T.id);case"stats":return y.jsx(Ur,{id:T.id,charName:M,zIndex:T.zIndex},T.id);case"char":return y.jsx(jr,{id:T.id,charName:M,zIndex:T.zIndex,vitals:((H=o.get(M))==null?void 0:H.vitals)??void 0},T.id);case"inv":return y.jsx(Cr,{id:T.id,charName:M,zIndex:T.zIndex,inventoryVersion:d,equipmentCantrips:U.get(M)},T.id);case"radar":return y.jsx(Rr,{id:T.id,charName:M,zIndex:T.zIndex,socket:O,radarData:_.get(M)??null},T.id);case"combat":return y.jsx(Hr,{id:T.id,charName:M,zIndex:T.zIndex},T.id);case"combatpicker":return y.jsx(qr,{id:T.id,zIndex:T.zIndex,characters:o},T.id);case"issues":return y.jsx(Br,{id:T.id,zIndex:T.zIndex},T.id);case"vitalsharing":return y.jsx(Yr,{id:T.id,zIndex:T.zIndex},T.id);default:return null}})})});Cm.displayName="WindowRenderer";let Xr=0;const Gr=({recentRares:o})=>{const[x,_]=E.useState([]),[d,U]=E.useState(0),[O,N]=E.useState([]);E.useEffect(()=>{if(o.length>d&&d>0){const M=o.slice(0,o.length-d);for(const D of M){const H=++Xr;_(z=>[...z,{key:H,charName:D.character_name,rareName:D.name,exiting:!1}]),T();try{const z=new AudioContext,j=z.createOscillator(),Q=z.createGain();j.connect(Q),Q.connect(z.destination),j.frequency.value=880,j.type="sine",Q.gain.value=.3,j.start(),Q.gain.exponentialRampToValueAtTime(.001,z.currentTime+.5),j.stop(z.currentTime+.5)}catch{}setTimeout(()=>{_(z=>z.map(j=>j.key===H?{...j,exiting:!0}:j)),setTimeout(()=>{_(z=>z.filter(j=>j.key!==H))},500)},6e3)}}U(o.length)},[o.length]);const T=E.useCallback(()=>{const M=Date.now(),D=["#FFD700","#FF4444","#FF8800","#AA44FF","#4488FF"],H=Array.from({length:30},(z,j)=>{const Q=Math.PI*2*j/30+(Math.random()-.5)*.5,X=100+Math.random()*200;return{dx:Math.cos(Q)*X,dy:Math.sin(Q)*X-50,color:D[Math.floor(Math.random()*D.length)]}});N(z=>[...z,{id:M,particles:H}]),setTimeout(()=>N(z=>z.filter(j=>j.id!==M)),2200)},[]);return y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"ml-rare-notifications",children:x.map(M=>y.jsxs("div",{className:`ml-rare-notif ${M.exiting?"exiting":""}`,children:[y.jsx("div",{className:"ml-rare-notif-title",children:"๐ŸŽ† LEGENDARY RARE! ๐ŸŽ†"}),y.jsx("div",{className:"ml-rare-notif-name",children:M.rareName}),y.jsx("div",{className:"ml-rare-notif-by",children:"found by"}),y.jsx("div",{className:"ml-rare-notif-char",children:M.charName})]},M.key))}),y.jsx("div",{className:"ml-fireworks",children:O.map(M=>y.jsx(bu.Fragment,{children:M.particles.map((D,H)=>y.jsx("div",{className:"ml-firework-particle",style:{left:"50%",top:"30%",backgroundColor:D.color,"--dx":`${D.dx}px`,"--dy":`${D.dy+200}px`}},H))},M.id))})]})},Mm=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf","#ff4444","#44ff44","#4444ff","#ffff44","#ff44ff","#44ffff","#ff8844","#88ff44","#4488ff","#ff4488","#cc3333","#33cc33","#3333cc","#cccc33","#cc33cc","#33cccc","#cc6633","#66cc33","#3366cc","#cc3366","#ff6666","#66ff66","#6666ff","#ffff66","#ff66ff","#66ffff","#ffaa66","#aaff66","#66aaff","#ff66aa","#990099","#009900","#000099","#990000","#009999","#999900","#aa5500","#55aa00","#0055aa","#aa0055","#ffaaaa","#aaffaa","#aaaaff","#ffffaa","#ffaaff","#aaffff","#ffccaa","#ccffaa","#aaccff","#ffaacc"];function Qr(o){let x=0;for(let _=0;_{let U=o.current.get(d);return U||(U=x.current{const _=Zr(),[d,U]=E.useState(!1),[O,N]=E.useState(!1),[T,M]=E.useState(null),D=E.useMemo(()=>Array.from(o.characters.values()).filter(X=>X.telemetry).map(X=>X.telemetry),[o.characters]),H=E.useMemo(()=>new Map(Array.from(o.characters.values()).filter(X=>X.vitals).map(X=>[X.name,X.vitals])),[o.characters]),[z,j]=E.useState("");E.useEffect(()=>{fetch("/api/api-version",{credentials:"include"}).then(X=>X.json()).then(X=>j(X.version??"")).catch(()=>{})},[]);const Q=E.useCallback(X=>{M(W=>W===X?null:X)},[]);return y.jsx(rr,{children:y.jsxs("div",{className:"ml-layout",children:[y.jsx(Mr,{players:D,vitals:H,serverHealth:o.serverHealth,totalRares:o.totalRares,totalKills:o.totalKills,getColor:_,onSelectPlayer:Q,onViewToggle:x,showHeatmap:d,showPortals:O,onToggleHeatmap:U,onTogglePortals:N,version:z,selectedPlayer:T}),y.jsx(zr,{players:D,getColor:_,onSelectPlayer:Q,showHeatmap:d,showPortals:O,selectedPlayer:T}),y.jsx(Cm,{characters:o.characters,chatMessages:o.chatMessages,nearbyObjects:o.nearbyObjects,inventoryVersion:o.inventoryVersion,equipmentCantrips:o.equipmentCantrips,socket:o.socketRef.current}),y.jsx(Gr,{recentRares:o.recentRares})]})})};function Lr(o){const x=E.useRef(null),_=E.useRef(0),d=E.useRef(o);d.current=o;const U=E.useCallback(()=>{var N;if(((N=x.current)==null?void 0:N.readyState)===WebSocket.OPEN)return;const O=new WebSocket(gr());x.current=O,O.addEventListener("message",T=>{try{const M=JSON.parse(T.data);d.current(M)}catch{}}),O.addEventListener("close",()=>{x.current=null,_.current=window.setTimeout(U,2e3)}),O.addEventListener("error",()=>{O.close()})},[]);return E.useEffect(()=>(U(),()=>{var O;clearTimeout(_.current),(O=x.current)==null||O.close(),x.current=null}),[U]),x}const Kr=()=>za("/live"),Jr=()=>za("/combat-stats"),wr=()=>za("/server-health"),kr=()=>za("/total-rares"),Wr=()=>za("/total-kills");function Fr(){const[o,x]=E.useState(new Map),[_,d]=E.useState(null),[U,O]=E.useState(0),[N,T]=E.useState(0),[M,D]=E.useState([]),H=E.useRef(new Map),[z,j]=E.useState(0),[Q,X]=E.useState(0),W=E.useRef(new Map),[Ul,Bl]=E.useState(0),[$,tl]=E.useState(new Map),Vl=E.useRef(o);Vl.current=o;const jl=E.useCallback((R,J)=>{x(B=>{const L=new Map(B),pl=L.get(R)??{name:R,telemetry:null,vitals:null,combat:null,lastUpdate:0};return L.set(R,J(pl)),L})},[]),I=E.useCallback(R=>{var J;if(R.type){if(R.type==="telemetry"){const B=R;jl(B.character_name,L=>({...L,telemetry:B,lastUpdate:Date.now()}))}else if(R.type==="vitals"){const B=R;jl(B.character_name,L=>({...L,vitals:B,lastUpdate:Date.now()}))}else if(R.type==="combat_stats"){const B=R;jl(B.character_name,L=>({...L,combat:B,lastUpdate:Date.now()}))}else if(R.type==="rare"){const B=R;D(L=>[B,...L].slice(0,50))}else if(R.type==="inventory_delta")X(B=>B+1);else if(R.type==="equipment_cantrip_state"){const B=R;W.current.set(B.character_name,B),Bl(L=>L+1)}else if(R.type==="dungeon_map"){const B=R;B.landblock&&(window.__dungeonMapCache||(window.__dungeonMapCache={}),window.__dungeonMapCache[B.landblock]=B)}else if(R.type==="nearby_objects"){const B=R;if(tl(L=>{const pl=new Map(L);return pl.set(B.character_name,B),pl}),B.is_dungeon&&B.landblock&&!((J=window.__dungeonMapCache)!=null&&J[B.landblock])){const L=F.current;(L==null?void 0:L.readyState)===WebSocket.OPEN&&L.send(JSON.stringify({type:"request_dungeon_map",landblock:B.landblock}))}}else if(R.type==="chat"){const B=R,L=H.current.get(B.character_name)??[];L.push({text:B.text,color:B.color,timestamp:B.timestamp}),L.length>1e3&&L.splice(0,L.length-1e3),H.current.set(B.character_name,L),j(pl=>pl+1)}}},[jl]),F=Lr(I);E.useEffect(()=>{const R=async()=>{try{const B=await Kr();x(L=>{var st;const pl=new Map(L);for(const b of B.players??[]){const C=pl.get(b.character_name);pl.set(b.character_name,{name:b.character_name,telemetry:b,vitals:(C==null?void 0:C.vitals)??null,combat:(C==null?void 0:C.combat)??null,lastUpdate:Date.now()})}for(const b of pl.keys())(st=B.players)!=null&&st.some(C=>C.character_name===b)||pl.delete(b);return pl})}catch{}};R();const J=setInterval(R,5e3);return()=>clearInterval(J)},[]),E.useEffect(()=>{const R=async()=>{try{const B=await Jr();for(const L of B.stats??[])jl(L.character_name,pl=>({...pl,combat:{...L,type:"combat_stats"}}))}catch{}};R();const J=setInterval(R,3e4);return()=>clearInterval(J)},[jl]),E.useEffect(()=>{const R=async()=>{try{d(await wr())}catch{}};R();const J=setInterval(R,3e4);return()=>clearInterval(J)},[]),E.useEffect(()=>{const R=async()=>{try{const[B,L]=await Promise.all([kr(),Wr()]);O(B.all_time??0),T(L.total??0)}catch{}};R();const J=setInterval(R,3e5);return()=>clearInterval(J)},[]);const ul=E.useMemo(()=>H.current,[z]),k=E.useMemo(()=>W.current,[Ul]);return{characters:o,serverHealth:_,totalRares:U,totalKills:N,recentRares:M,chatMessages:ul,nearbyObjects:$,inventoryVersion:Q,equipmentCantrips:k,socketRef:F}}const $r=E.lazy(()=>wt(()=>import("./DashboardView-BWfpkQBB.js"),__vite__mapDeps([9,1])));function Ir(){const[o,x]=E.useState(()=>localStorage.getItem("v2-view")||"map"),_=Fr();E.useEffect(()=>{const U=O=>{O.ctrlKey&&O.key==="d"&&(O.preventDefault(),d())};return window.addEventListener("keydown",U),()=>window.removeEventListener("keydown",U)});const d=()=>{const U=o==="map"?"dashboard":"map";x(U),localStorage.setItem("v2-view",U)};return o==="map"?y.jsx(Vr,{data:_,onViewToggle:d}):y.jsx(E.Suspense,{fallback:y.jsx("div",{style:{background:"#0d0d0d",color:"#888",padding:40,textAlign:"center"},children:"Loading dashboard..."}),children:y.jsx($r,{data:_,onViewToggle:d})})}dr.createRoot(document.getElementById("root")).render(y.jsx(E.StrictMode,{children:y.jsx(Ir,{})}));"serviceWorker"in navigator&&navigator.serviceWorker.register("/sw.js").catch(()=>{});export{_r as D,bu as R,za as a,y as j,E as r,zu as u};