omegga 1.2.6 → 1.2.8
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/.nvmrc +1 -1
- package/package.json +6 -6
- package/public/app.html +3 -3
- package/public/assets/{app-DcfQsLxt.js → app-BtOlgo__.js} +2 -2
- package/public/assets/{app-DcfQsLxt.js.map → app-BtOlgo__.js.map} +1 -1
- package/public/assets/{index-CaQVH23j.js → index-Bq9C9SqB.js} +6 -6
- package/public/assets/index-Bq9C9SqB.js.map +1 -0
- package/public/assets/shared/{@components-CI115H3G.js → @components-DVehBp7v.js} +2 -2
- package/public/assets/shared/@components-DVehBp7v.js.map +1 -0
- package/public/auth.html +1 -1
- package/templates/safe-ts/omegga.d.ts +724 -2
- package/public/assets/index-CaQVH23j.js.map +0 -1
- package/public/assets/shared/@components-CI115H3G.js.map +0 -1
package/.nvmrc
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
24
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "omegga",
|
|
3
|
-
"version": "1.2.
|
|
4
|
-
"description": "Brickadia server installer, manager, wrapper, configurator, and automator",
|
|
3
|
+
"version": "1.2.8",
|
|
4
|
+
"description": "Brickadia server installer, updater, manager, wrapper, configurator, and automator",
|
|
5
5
|
"engines": {
|
|
6
|
-
"node": ">=
|
|
6
|
+
"node": ">=23.0.0"
|
|
7
7
|
},
|
|
8
8
|
"main": "index.js",
|
|
9
9
|
"bin": {
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"bcryptjs": "^2.4.3",
|
|
15
15
|
"better-sqlite3": "^12.2.0",
|
|
16
16
|
"body-parser": "^1.19.0",
|
|
17
|
-
"brs-js": "^2.1.
|
|
17
|
+
"brs-js": "^2.1.3",
|
|
18
18
|
"child_process": "^1.0.2",
|
|
19
19
|
"chokidar": "^3.4.2",
|
|
20
20
|
"colors": "^1.4.0",
|
|
@@ -81,8 +81,8 @@
|
|
|
81
81
|
"eslint-plugin-react": "^7.37.5",
|
|
82
82
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
83
83
|
"jsdoc-to-markdown": "^7.0.1",
|
|
84
|
-
"linkify-react": "^4.3.
|
|
85
|
-
"linkifyjs": "^4.3.
|
|
84
|
+
"linkify-react": "^4.3.2",
|
|
85
|
+
"linkifyjs": "^4.3.2",
|
|
86
86
|
"nanostores": "^1.0.1",
|
|
87
87
|
"react-grid-layout": "^1.5.2",
|
|
88
88
|
"sass": "^1.89.2",
|
package/public/app.html
CHANGED
|
@@ -1886,8 +1886,8 @@ a,
|
|
|
1886
1886
|
flex-direction: column;
|
|
1887
1887
|
}
|
|
1888
1888
|
</style>
|
|
1889
|
-
<script type="importmap">{"imports":{"react":"./assets/shared/react-CR6vSpIu.js","react-dom":"./assets/shared/react-dom-BznoGTRX.js","react/jsx-runtime":"./assets/shared/react_jsx-runtime-C15Zu6_p.js","@nanostores/react":"./assets/shared/@nanostores_react-HTG3s0lp.js","nanostores":"./assets/shared/nanostores-BFqqIY_c.js","@tabler/icons-react":"./assets/shared/@tabler_icons-react--FJWdUou.js","@hooks":"./assets/shared/@hooks-DfTzYBIL.js","wouter":"./assets/shared/wouter-DbmGxXTo.js","@utils":"./assets/shared/@utils-BA2UvC9c.js","@components":"./assets/shared/@components-
|
|
1890
|
-
<script type="module" crossorigin src="/assets/app-
|
|
1889
|
+
<script type="importmap">{"imports":{"react":"./assets/shared/react-CR6vSpIu.js","react-dom":"./assets/shared/react-dom-BznoGTRX.js","react/jsx-runtime":"./assets/shared/react_jsx-runtime-C15Zu6_p.js","@nanostores/react":"./assets/shared/@nanostores_react-HTG3s0lp.js","nanostores":"./assets/shared/nanostores-BFqqIY_c.js","@tabler/icons-react":"./assets/shared/@tabler_icons-react--FJWdUou.js","@hooks":"./assets/shared/@hooks-DfTzYBIL.js","wouter":"./assets/shared/wouter-DbmGxXTo.js","@utils":"./assets/shared/@utils-BA2UvC9c.js","@components":"./assets/shared/@components-DVehBp7v.js"}}</script>
|
|
1890
|
+
<script type="module" crossorigin src="/assets/app-BtOlgo__.js"></script>
|
|
1891
1891
|
<link rel="modulepreload" crossorigin href="/assets/index-c0qeY2gs.js">
|
|
1892
1892
|
<link rel="modulepreload" crossorigin href="/assets/index-DqHVrEeL.js">
|
|
1893
1893
|
<link rel="modulepreload" crossorigin href="/assets/client-C5T7_OK9.js">
|
|
@@ -1904,7 +1904,7 @@ a,
|
|
|
1904
1904
|
<link rel="modulepreload" crossorigin href="/assets/index-CRRRLlCc.js">
|
|
1905
1905
|
<link rel="modulepreload" crossorigin href="/assets/IconWorld-DtARpBKX.js">
|
|
1906
1906
|
<link rel="modulepreload" crossorigin href="/assets/utils-Ds3ldd-U.js">
|
|
1907
|
-
<link rel="modulepreload" crossorigin href="/assets/index-
|
|
1907
|
+
<link rel="modulepreload" crossorigin href="/assets/index-Bq9C9SqB.js">
|
|
1908
1908
|
<link rel="modulepreload" crossorigin href="/assets/IconWorldPlus-CGBAsLNj.js">
|
|
1909
1909
|
<link rel="modulepreload" crossorigin href="/assets/IconArrowRight-CA5_cccJ.js">
|
|
1910
1910
|
<link rel="modulepreload" crossorigin href="/assets/shared/@hooks-DfTzYBIL.js">
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{c as Bl}from"./client-C5T7_OK9.js";import{j as e}from"./jsx-runtime-DoEZbXM1.js";import{r as M,a as Ul}from"./index-i4mjW0og.js";import{N as qe,P as De,S as Oe,r as X,I as Gl,C as $l,s as Pe,i as $e,a as ye,U as Bt,L as Wa,b as Jo,c as ve,D as _a,T as we,d as le,e as Yl,f as Kl,R as Xl,u as Zo,$ as Qo,g as Vl,h as Jl,j as Zl,k as Ql,l as eu,m as tu,n as ru}from"./index-CaQVH23j.js";import{u as Ee,L as ut,a as Ct,S as el,R as me,b as nu,c as au}from"./index-CRRRLlCc.js";import{d as de,i as su,h as tl,a as Fa,b as wa,l as iu,r as Pt,c as qt,e as ou,f as Dt,g as ja,j as Ot,k as Ne,m as lu}from"./utils-Ds3ldd-U.js";import{a as H,L as fe,F as Ie,I as ie,H as Sa,D as Ra,M as rl,P as ba,u as mt}from"./index-DYcAgWjJ.js";import{I as uu,a as vt,b as cu,c as du,d as hu,e as fu,f as nl,g as Ba,h as pu,i as yt,j as gu,k as Et,l as mu,m as al,n as sl,o as vu,p as bt,q as il,r as ol,s as yu,t as bu,u as xu,v as _u,w as wu,x as ju,y as Su,z as ll,A as Ru,B as Cu,C as Ua,D as Ga,E as ul,F as cl,G as Pu,H as qu,J as Du}from"./IconWorldPlus-CGBAsLNj.js";import xt from"./IconArrowRight-CA5_cccJ.js";import{a as Ou,g as Ca}from"./_commonjsHelpers-CE1G-McA.js";import{r as pe}from"./index-c0qeY2gs.js";import{r as Pa}from"./index-DqHVrEeL.js";import{I as Eu,a as dl,b as _t,c as hl,d as $a,e as Nu}from"./IconWorld-DtARpBKX.js";import{a as ct}from"./IconX-SYtbnYKI.js";import{I as Tu}from"./IconCheck-Dyq5qyY1.js";import{useStore as Ce}from"./shared/@nanostores_react-HTG3s0lp.js";import{useSaved as Mu,SavedSpan as Au,SavedStatus as ku}from"./shared/@hooks-DfTzYBIL.js";import{a as fl}from"./index-CSV4ZXsq.js";import"./jsx-runtime-Bw5QeaCk.js";import"./index-CJ4e7_2M.js";let wt=-1,jt=-1,Fe=!1,Be,Xe;const he=document.createElement("div");Object.assign(he.style,{position:"fixed",left:"-1000px",top:"-1000px",border:"2px solid black",background:"white",fontFamily:"Glacial Indifference",fontWeight:"bold",fontSize:"16px",padding:"8px",maxWidth:"300px",zIndex:"100000",borderRadius:"8px",pointerEvents:"none",opacity:0,transition:"opacity .2s ease"});he.innerText="";document.body.appendChild(he);document.body.addEventListener("mousemove",t=>{wt=t.clientX,jt=t.clientY,Be&&pl()});function pl(){const t=document.body.clientWidth,n=document.body.clientHeight;Object.assign(he.style,{left:wt+(wt<t/2?16:-16-he.clientWidth)+"px",top:jt+(jt<n/2?16:-16-he.clientHeight)+"px"})}function gl(t){if(!t||!t.getAttribute)return;const n=t.getAttribute("data-tooltip");return n||gl(t.parentNode??null)}function zu(){const t=document.elementFromPoint(wt,jt),n=gl(t),r=he.innerText;!n&&Fe&&!Be&&(Fe=!1,clearTimeout(Xe)),n&&!Fe&&!Be?(clearTimeout(Xe),Fe=!0,Xe=setTimeout(()=>{he.innerText=n,pl(),he.style.opacity="1",Be=!0},400)):r!==n&&Be&&Fe&&(clearTimeout(Xe),Fe=!1,Xe=setTimeout(()=>{Be=!1,Object.assign(he.style,{left:"-1000px",top:"-1000px"})},300),he.style.opacity="0")}setInterval(()=>{zu()},100);const Lu=()=>e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"Not Found"}),e.jsx(De,{children:e.jsx(Oe,{})})]}),Ya=["January","February","March","April","May","June","July","August","September","October","November","December"],je=(t,n=!1)=>Object.keys(t).map(Number).sort((r,a)=>n?a-r:r-a),Iu=()=>{const[t,n]=Ee("/history/:time?"),r=n?.time,[a,i]=M.useState(!0),[s,o]=M.useState(!0),[c,y]=M.useState(!1),[b,C]=M.useState({}),[_,S]=M.useState(0),P=M.useMemo(()=>new Date().getFullYear(),[]),[w,v]=M.useState(P),u=M.useMemo(()=>new Date().getMonth(),[]),[h,l]=M.useState(u),f=M.useMemo(()=>new Date().getDate(),[]),m=M.useRef(null),[p,g]=M.useState(null),[d,j]=M.useState(null),O=M.useRef(null),D=M.useRef(null),q=M.useRef([]),N=M.useCallback(async()=>{i(!0);const A=await X("chat.calendar");C(A),i(!1)},[]),T=M.useCallback(A=>{if(!A.length)return;q.current=q.current.concat(A),q.current.sort((x,R)=>x.created-R.created);const z=q.current[0].created,$=q.current[q.current.length-1].created;for(let x=0;x<q.current.length;x++){const R=q.current[x],E=new Date(R.created);R.date=E.getDate(),x===0||R.date!==q.current[x-1].date?R.newDay=`${Ya[E.getMonth()]} ${R.date}, ${E.getFullYear()}`:R.newDay=void 0}O.current=z,D.current=$,S(x=>x+1)},[]),I=M.useCallback(async({before:A,after:z},$)=>{i(!0);const x=await X("chat.history",{before:A,after:z});return T(x),$==="bottom"&&q.current.length>200&&q.current.splice(0,q.current.length-200),$==="top"&&q.current.length>200&&q.current.splice(200,q.current.length-200),o(!1),i(!1),x},[]),F=()=>new Promise(A=>{const z=m.current?.querySelector(".scroll-scroller");window.requestAnimationFrame(()=>{z&&(z.scrollTop=z.scrollHeight,A())})});M.useEffect(()=>{const A=r&&new Date(r.match(/^\d+$/)?Number(r):r);(async()=>(s&&await N(),A&&!Number.isNaN(A.getTime())?(q.current=[],await I({before:A.getTime()-1}),await I({after:A.getTime()-1}),requestAnimationFrame(()=>{m.current?.querySelector(".focused")?.scrollIntoView({block:"center"})})):(q.current=[],await I({before:Date.now()}),F())))()},[r]);const B=async(A,z,$)=>{q.current=[],S(R=>R+1);const x=new Date(A,z,$).getTime();await I({after:x})},V=async()=>{if(p&&O.current&&O.current<=p)return;(await I({before:O.current},"top")).length===0&&g(O.current)},J=async()=>{if(d&&D.current&&D.current>=d)return;(await I({after:D.current},"bottom")).length===0&&j(D.current)},Q=M.useMemo(()=>je(b),[b]),Y=M.useMemo(()=>je(b,!0),[b]),te=M.useMemo(()=>{const A=Y.find(z=>z>w)??null;return A?[A,je(b[A])[0]]:null},[b,Y]),re=M.useMemo(()=>{const A=Q.find(z=>z<w)??null;return A?[A,je(b[A],!0)[0]]:null},[b,Q]),se=M.useMemo(()=>{if(h!==11&&b[w]){const $=je(b[w]).find(x=>x>h);if(typeof $=="number")return[w,$]}const A=Q.find($=>$>w);if(!A)return null;const z=je(b[A])[0];return typeof z!="number"?null:[A,z]},[w,h,Q,b]),ue=M.useMemo(()=>{if(h!==0&&b[w]){const $=je(b[w],!0).find(x=>x<h);if(typeof $=="number")return[w,$]}const A=Y.find($=>$<w);if(!A)return null;const z=je(b[A],!0)[0];return typeof z!="number"?null:[A,z]},[w,h,b]),oe=A=>{A&&(v(w),l(h))},Me=new Date(w,h+1,0).getDate(),Ae=new Date(w,h,1).getDay();return e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"History",children:e.jsxs("div",{className:"calendar-container",children:[e.jsxs(H,{normal:!0,boxy:!0,style:{marginRight:0},"data-tooltip":"Show a calendar previewing days",onClick:()=>y(!c),children:[e.jsx(uu,{})," Calendar"]}),c&&e.jsxs("div",{className:"calendar",children:[e.jsxs("div",{className:"year",children:[e.jsx(H,{icon:!0,normal:!0,disabled:!re,onClick:()=>oe(re),children:e.jsx(vt,{})}),w,e.jsx(H,{icon:!0,normal:!0,disabled:!te,onClick:()=>oe(te),children:e.jsx(xt,{})})]}),e.jsxs("div",{className:"month",children:[e.jsx(H,{icon:!0,normal:!0,disabled:!ue,onClick:()=>oe(ue),children:e.jsx(vt,{})}),Ya[h],e.jsx(H,{icon:!0,normal:!0,disabled:!se,onClick:()=>oe(se),children:e.jsx(xt,{})})]}),e.jsxs("div",{className:"calendar-days",children:[e.jsx("div",{className:"week-header days",children:"S"}),e.jsx("div",{className:"week-header days",children:"M"}),e.jsx("div",{className:"week-header days",children:"T"}),e.jsx("div",{className:"week-header days",children:"W"}),e.jsx("div",{className:"week-header days",children:"T"}),e.jsx("div",{className:"week-header days",children:"F"}),e.jsx("div",{className:"week-header days",children:"S"}),Array.from({length:Ae}).map((A,z)=>e.jsx("div",{},`empty-${z}`)),Array.from({length:Me}).map((A,z)=>e.jsx("div",{className:`days ${u===h&&P===w&&z+1===f?"today":""} ${!(u===h&&P===w&&z+1>f)&&b[w]?.[h]?.[z]?"available":""}`,onClick:()=>B(w,h,z+1),children:z+1},z))]})]})]})}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsx("div",{className:"generic-container history-container",ref:m,children:e.jsxs("div",{className:"chat-history",children:[e.jsx("div",{className:"scroll-container",children:e.jsx(Gl,{loading:a,onTop:V,onBottom:J,onTopScrollsToBottom:!1,offset:500,className:"scroll-scroller",children:q.current.map(A=>e.jsxs(Ul.Fragment,{children:[A.newDay&&e.jsx("div",{className:"chat-new-day",children:A.newDay}),e.jsx($l,{log:A},A._id)]},A._id))})}),e.jsx(fe,{active:a&&s,size:"huge",children:"Loading Chat"})]})})]})]})};var Ut={exports:{}},Ve={},it={exports:{}},Hu=it.exports,Ka;function qa(){return Ka||(Ka=1,function(t,n){(function(r,a){a(n)})(Hu,function(r){function a(A){return function($,x,R,E,k,W,L){return A($,x,L)}}function i(A){return function($,x,R,E){if(!$||!x||typeof $!="object"||typeof x!="object")return A($,x,R,E);var k=E.get($),W=E.get(x);if(k&&W)return k===x&&W===$;E.set($,x),E.set(x,$);var L=A($,x,R,E);return E.delete($),E.delete(x),L}}function s(A,z){var $={};for(var x in A)$[x]=A[x];for(var x in z)$[x]=z[x];return $}function o(A){return A.constructor===Object||A.constructor==null}function c(A){return typeof A.then=="function"}function y(A,z){return A===z||A!==A&&z!==z}var b="[object Arguments]",C="[object Boolean]",_="[object Date]",S="[object RegExp]",P="[object Map]",w="[object Number]",v="[object Object]",u="[object Set]",h="[object String]",l=Object.prototype.toString;function f(A){var z=A.areArraysEqual,$=A.areDatesEqual,x=A.areMapsEqual,R=A.areObjectsEqual,E=A.areRegExpsEqual,k=A.areSetsEqual,W=A.createIsNestedEqual,L=W(G);function G(U,K,ee){if(U===K)return!0;if(!U||!K||typeof U!="object"||typeof K!="object")return U!==U&&K!==K;if(o(U)&&o(K))return R(U,K,L,ee);var ke=Array.isArray(U),ce=Array.isArray(K);if(ke||ce)return ke===ce&&z(U,K,L,ee);var ae=l.call(U);return ae!==l.call(K)?!1:ae===_?$(U,K,L,ee):ae===S?E(U,K,L,ee):ae===P?x(U,K,L,ee):ae===u?k(U,K,L,ee):ae===v||ae===b?c(U)||c(K)?!1:R(U,K,L,ee):ae===C||ae===w||ae===h?y(U.valueOf(),K.valueOf()):!1}return G}function m(A,z,$,x){var R=A.length;if(z.length!==R)return!1;for(;R-- >0;)if(!$(A[R],z[R],R,R,A,z,x))return!1;return!0}var p=i(m);function g(A,z){return y(A.valueOf(),z.valueOf())}function d(A,z,$,x){var R=A.size===z.size;if(!R)return!1;if(!A.size)return!0;var E={},k=0;return A.forEach(function(W,L){if(R){var G=!1,U=0;z.forEach(function(K,ee){!G&&!E[U]&&(G=$(L,ee,k,U,A,z,x)&&$(W,K,L,ee,A,z,x))&&(E[U]=!0),U++}),k++,R=G}}),R}var j=i(d),O="_owner",D=Object.prototype.hasOwnProperty;function q(A,z,$,x){var R=Object.keys(A),E=R.length;if(Object.keys(z).length!==E)return!1;for(var k;E-- >0;){if(k=R[E],k===O){var W=!!A.$$typeof,L=!!z.$$typeof;if((W||L)&&W!==L)return!1}if(!D.call(z,k)||!$(A[k],z[k],k,k,A,z,x))return!1}return!0}var N=i(q);function T(A,z){return A.source===z.source&&A.flags===z.flags}function I(A,z,$,x){var R=A.size===z.size;if(!R)return!1;if(!A.size)return!0;var E={};return A.forEach(function(k,W){if(R){var L=!1,G=0;z.forEach(function(U,K){!L&&!E[G]&&(L=$(k,U,W,K,A,z,x))&&(E[G]=!0),G++}),R=L}}),R}var F=i(I),B=Object.freeze({areArraysEqual:m,areDatesEqual:g,areMapsEqual:d,areObjectsEqual:q,areRegExpsEqual:T,areSetsEqual:I,createIsNestedEqual:a}),V=Object.freeze({areArraysEqual:p,areDatesEqual:g,areMapsEqual:j,areObjectsEqual:N,areRegExpsEqual:T,areSetsEqual:F,createIsNestedEqual:a}),J=f(B);function Q(A,z){return J(A,z,void 0)}var Y=f(s(B,{createIsNestedEqual:function(){return y}}));function te(A,z){return Y(A,z,void 0)}var re=f(V);function se(A,z){return re(A,z,new WeakMap)}var ue=f(s(V,{createIsNestedEqual:function(){return y}}));function oe(A,z){return ue(A,z,new WeakMap)}function Me(A){return f(s(B,A(B)))}function Ae(A){var z=f(s(V,A(V)));return function($,x,R){return R===void 0&&(R=new WeakMap),z($,x,R)}}r.circularDeepEqual=se,r.circularShallowEqual=oe,r.createCustomCircularEqual=Ae,r.createCustomEqual=Me,r.deepEqual=Q,r.sameValueZeroEqual=y,r.shallowEqual=te,Object.defineProperty(r,"__esModule",{value:!0})})}(it,it.exports)),it.exports}var ht={exports:{}},Xa;function Nt(){if(Xa)return ht.exports;Xa=1;function t(r){var a,i,s="";if(typeof r=="string"||typeof r=="number")s+=r;else if(typeof r=="object")if(Array.isArray(r)){var o=r.length;for(a=0;a<o;a++)r[a]&&(i=t(r[a]))&&(s&&(s+=" "),s+=i)}else for(i in r)r[i]&&(s&&(s+=" "),s+=i);return s}function n(){for(var r,a,i=0,s="",o=arguments.length;i<o;i++)(r=arguments[i])&&(a=t(r))&&(s&&(s+=" "),s+=a);return s}return ht.exports=n,ht.exports.clsx=n,ht.exports}var Z={},Gt,Va;function Wu(){return Va||(Va=1,Gt=function(n,r,a){return n===r?!0:n.className===r.className&&a(n.style,r.style)&&n.width===r.width&&n.autoSize===r.autoSize&&n.cols===r.cols&&n.draggableCancel===r.draggableCancel&&n.draggableHandle===r.draggableHandle&&a(n.verticalCompact,r.verticalCompact)&&a(n.compactType,r.compactType)&&a(n.layout,r.layout)&&a(n.margin,r.margin)&&a(n.containerPadding,r.containerPadding)&&n.rowHeight===r.rowHeight&&n.maxRows===r.maxRows&&n.isBounded===r.isBounded&&n.isDraggable===r.isDraggable&&n.isResizable===r.isResizable&&n.allowOverlap===r.allowOverlap&&n.preventCollision===r.preventCollision&&n.useCSSTransforms===r.useCSSTransforms&&n.transformScale===r.transformScale&&n.isDroppable===r.isDroppable&&a(n.resizeHandles,r.resizeHandles)&&a(n.resizeHandle,r.resizeHandle)&&n.onLayoutChange===r.onLayoutChange&&n.onDragStart===r.onDragStart&&n.onDrag===r.onDrag&&n.onDragStop===r.onDragStop&&n.onResizeStart===r.onResizeStart&&n.onResize===r.onResize&&n.onResizeStop===r.onResizeStop&&n.onDrop===r.onDrop&&a(n.droppingItem,r.droppingItem)&&a(n.innerRef,r.innerRef)}),Gt}var Ja;function Ke(){if(Ja)return Z;Ja=1,Object.defineProperty(Z,"__esModule",{value:!0}),Z.bottom=a,Z.childrenEqual=y,Z.cloneLayout=i,Z.cloneLayoutItem=c,Z.collides=C,Z.compact=_,Z.compactItem=w,Z.compactType=A,Z.correctBounds=v,Z.fastPositionEqual=b,Z.fastRGLPropsEqual=void 0,Z.getAllCollisions=l,Z.getFirstCollision=h,Z.getLayoutItem=u,Z.getStatics=f,Z.modifyLayout=s,Z.moveElement=m,Z.moveElementAwayFromCollision=p,Z.noop=void 0,Z.perc=g,Z.resizeItemInDirection=Y,Z.setTopLeft=re,Z.setTransform=te,Z.sortLayoutItems=se,Z.sortLayoutItemsByColRow=oe,Z.sortLayoutItemsByRowCol=ue,Z.synchronizeLayoutWithChildren=Me,Z.validateLayout=Ae,Z.withLayoutItem=o;var t=qa(),n=r(pe());function r(x){return x&&x.__esModule?x:{default:x}}function a(x){let R=0,E;for(let k=0,W=x.length;k<W;k++)E=x[k].y+x[k].h,E>R&&(R=E);return R}function i(x){const R=Array(x.length);for(let E=0,k=x.length;E<k;E++)R[E]=c(x[E]);return R}function s(x,R){const E=Array(x.length);for(let k=0,W=x.length;k<W;k++)R.i===x[k].i?E[k]=R:E[k]=x[k];return E}function o(x,R,E){let k=u(x,R);return k?(k=E(c(k)),x=s(x,k),[x,k]):[x,null]}function c(x){return{w:x.w,h:x.h,x:x.x,y:x.y,i:x.i,minW:x.minW,maxW:x.maxW,minH:x.minH,maxH:x.maxH,moved:!!x.moved,static:!!x.static,isDraggable:x.isDraggable,isResizable:x.isResizable,resizeHandles:x.resizeHandles,isBounded:x.isBounded}}function y(x,R){return(0,t.deepEqual)(n.default.Children.map(x,E=>E?.key),n.default.Children.map(R,E=>E?.key))&&(0,t.deepEqual)(n.default.Children.map(x,E=>E?.props["data-grid"]),n.default.Children.map(R,E=>E?.props["data-grid"]))}Z.fastRGLPropsEqual=Wu();function b(x,R){return x.left===R.left&&x.top===R.top&&x.width===R.width&&x.height===R.height}function C(x,R){return!(x.i===R.i||x.x+x.w<=R.x||x.x>=R.x+R.w||x.y+x.h<=R.y||x.y>=R.y+R.h)}function _(x,R,E,k){const W=f(x),L=se(x,R),G=Array(x.length);for(let U=0,K=L.length;U<K;U++){let ee=c(L[U]);ee.static||(ee=w(W,ee,R,E,L,k),W.push(ee)),G[x.indexOf(L[U])]=ee,ee.moved=!1}return G}const S={x:"w",y:"h"};function P(x,R,E,k){const W=S[k];R[k]+=1;const L=x.map(G=>G.i).indexOf(R.i);for(let G=L+1;G<x.length;G++){const U=x[G];if(!U.static){if(U.y>R.y+R.h)break;C(R,U)&&P(x,U,E+R[W],k)}}R[k]=E}function w(x,R,E,k,W,L){const G=E==="vertical",U=E==="horizontal";if(G)for(R.y=Math.min(a(x),R.y);R.y>0&&!h(x,R);)R.y--;else if(U)for(;R.x>0&&!h(x,R);)R.x--;let K;for(;(K=h(x,R))&&!(E===null&&L);)if(U?P(W,R,K.x+K.w,"x"):P(W,R,K.y+K.h,"y"),U&&R.x+R.w>k)for(R.x=k-R.w,R.y++;R.x>0&&!h(x,R);)R.x--;return R.y=Math.max(R.y,0),R.x=Math.max(R.x,0),R}function v(x,R){const E=f(x);for(let k=0,W=x.length;k<W;k++){const L=x[k];if(L.x+L.w>R.cols&&(L.x=R.cols-L.w),L.x<0&&(L.x=0,L.w=R.cols),!L.static)E.push(L);else for(;h(E,L);)L.y++}return x}function u(x,R){for(let E=0,k=x.length;E<k;E++)if(x[E].i===R)return x[E]}function h(x,R){for(let E=0,k=x.length;E<k;E++)if(C(x[E],R))return x[E]}function l(x,R){return x.filter(E=>C(E,R))}function f(x){return x.filter(R=>R.static)}function m(x,R,E,k,W,L,G,U,K){if(R.static&&R.isDraggable!==!0||R.y===k&&R.x===E)return x;`${R.i}${String(E)}${String(k)}${R.x}${R.y}`;const ee=R.x,ke=R.y;typeof E=="number"&&(R.x=E),typeof k=="number"&&(R.y=k),R.moved=!0;let ce=se(x,G);(G==="vertical"&&typeof k=="number"?ke>=k:G==="horizontal"&&typeof E=="number"?ee>=E:!1)&&(ce=ce.reverse());const We=l(ce,R),dt=We.length>0;if(dt&&K)return i(x);if(dt&&L)return`${R.i}`,R.x=ee,R.y=ke,R.moved=!1,x;for(let Ft=0,Fl=We.length;Ft<Fl;Ft++){const ze=We[Ft];`${R.i}${R.x}${R.y}${ze.i}${ze.x}${ze.y}`,!ze.moved&&(ze.static?x=p(x,ze,R,W,G):x=p(x,R,ze,W,G))}return x}function p(x,R,E,k,W,L){const G=W==="horizontal",U=W==="vertical",K=R.static;if(k){k=!1;const ce={x:G?Math.max(R.x-E.w,0):E.x,y:U?Math.max(R.y-E.h,0):E.y,w:E.w,h:E.h,i:"-1"},ae=h(x,ce),We=ae&&ae.y+ae.h>R.y,dt=ae&&R.x+R.w>ae.x;if(ae){if(We&&U)return m(x,E,void 0,R.y+1,k,K,W);if(We&&W==null)return R.y=E.y,E.y=E.y+E.h,x;if(dt&&G)return m(x,R,E.x,void 0,k,K,W)}else return`${E.i}${ce.x}${ce.y}`,m(x,E,G?ce.x:void 0,U?ce.y:void 0,k,K,W)}const ee=G?E.x+1:void 0,ke=U?E.y+1:void 0;return ee==null&&ke==null?x:m(x,E,G?E.x+1:void 0,U?E.y+1:void 0,k,K,W)}function g(x){return x*100+"%"}const d=(x,R,E,k)=>x+E>k?R:E,j=(x,R,E)=>x<0?R:E,O=x=>Math.max(0,x),D=x=>Math.max(0,x),q=(x,R,E)=>{let{left:k,height:W,width:L}=R;const G=x.top-(W-x.height);return{left:k,width:L,height:j(G,x.height,W),top:D(G)}},N=(x,R,E)=>{let{top:k,left:W,height:L,width:G}=R;return{top:k,height:L,width:d(x.left,x.width,G,E),left:O(W)}},T=(x,R,E)=>{let{top:k,height:W,width:L}=R;const G=x.left-(L-x.width);return{height:W,width:G<0?x.width:d(x.left,x.width,L,E),top:D(k),left:O(G)}},I=(x,R,E)=>{let{top:k,left:W,height:L,width:G}=R;return{width:G,left:W,height:j(k,x.height,L),top:D(k)}},Q={n:q,ne:function(){return q(arguments.length<=0?void 0:arguments[0],N(...arguments))},e:N,se:function(){return I(arguments.length<=0?void 0:arguments[0],N(...arguments))},s:I,sw:function(){return I(arguments.length<=0?void 0:arguments[0],T(...arguments))},w:T,nw:function(){return q(arguments.length<=0?void 0:arguments[0],T(...arguments))}};function Y(x,R,E,k){const W=Q[x];return W?W(R,{...R,...E},k):E}function te(x){let{top:R,left:E,width:k,height:W}=x;const L=`translate(${E}px,${R}px)`;return{transform:L,WebkitTransform:L,MozTransform:L,msTransform:L,OTransform:L,width:`${k}px`,height:`${W}px`,position:"absolute"}}function re(x){let{top:R,left:E,width:k,height:W}=x;return{top:`${R}px`,left:`${E}px`,width:`${k}px`,height:`${W}px`,position:"absolute"}}function se(x,R){return R==="horizontal"?oe(x):R==="vertical"?ue(x):x}function ue(x){return x.slice(0).sort(function(R,E){return R.y>E.y||R.y===E.y&&R.x>E.x?1:R.y===E.y&&R.x===E.x?0:-1})}function oe(x){return x.slice(0).sort(function(R,E){return R.x>E.x||R.x===E.x&&R.y>E.y?1:-1})}function Me(x,R,E,k,W){x=x||[];const L=[];n.default.Children.forEach(R,U=>{if(U?.key==null)return;const K=u(x,String(U.key)),ee=U.props["data-grid"];K&&ee==null?L.push(c(K)):ee?L.push(c({...ee,i:U.key})):L.push(c({w:1,h:1,x:0,y:a(L),i:String(U.key)}))});const G=v(L,{cols:E});return W?G:_(G,k,E)}function Ae(x){let R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Layout";const E=["x","y","w","h"];if(!Array.isArray(x))throw new Error(R+" must be an array!");for(let k=0,W=x.length;k<W;k++){const L=x[k];for(let G=0;G<E.length;G++){const U=E[G],K=L[U];if(typeof K!="number"||Number.isNaN(K))throw new Error(`ReactGridLayout: ${R}[${k}].${U} must be a number! Received: ${K} (${typeof K})`)}if(typeof L.i<"u"&&typeof L.i!="string")throw new Error(`ReactGridLayout: ${R}[${k}].i must be a string! Received: ${L.i} (${typeof L.i})`)}}function A(x){const{verticalCompact:R,compactType:E}=x||{};return R===!1?null:E}function z(){}const $=()=>{};return Z.noop=$,Z}var xe={},Za;function Da(){if(Za)return xe;Za=1,Object.defineProperty(xe,"__esModule",{value:!0}),xe.calcGridColWidth=t,xe.calcGridItemPosition=r,xe.calcGridItemWHPx=n,xe.calcWH=i,xe.calcXY=a,xe.clamp=s;function t(o){const{margin:c,containerPadding:y,containerWidth:b,cols:C}=o;return(b-c[0]*(C-1)-y[0]*2)/C}function n(o,c,y){return Number.isFinite(o)?Math.round(c*o+Math.max(0,o-1)*y):o}function r(o,c,y,b,C,_){const{margin:S,containerPadding:P,rowHeight:w}=o,v=t(o),u={};return _&&_.resizing?(u.width=Math.round(_.resizing.width),u.height=Math.round(_.resizing.height)):(u.width=n(b,v,S[0]),u.height=n(C,w,S[1])),_&&_.dragging?(u.top=Math.round(_.dragging.top),u.left=Math.round(_.dragging.left)):_&&_.resizing&&typeof _.resizing.top=="number"&&typeof _.resizing.left=="number"?(u.top=Math.round(_.resizing.top),u.left=Math.round(_.resizing.left)):(u.top=Math.round((w+S[1])*y+P[1]),u.left=Math.round((v+S[0])*c+P[0])),u}function a(o,c,y,b,C){const{margin:_,containerPadding:S,cols:P,rowHeight:w,maxRows:v}=o,u=t(o);let h=Math.round((y-S[0])/(u+_[0])),l=Math.round((c-S[1])/(w+_[1]));return h=s(h,0,P-b),l=s(l,0,v-C),{x:h,y:l}}function i(o,c,y,b,C,_){const{margin:S,maxRows:P,cols:w,rowHeight:v}=o,u=t(o);let h=Math.round((c+S[0])/(u+S[0])),l=Math.round((y+S[1])/(v+S[1])),f=s(h,0,w-b),m=s(l,0,P-C);return["sw","w","nw"].indexOf(_)!==-1&&(f=s(h,0,w)),["nw","n","ne"].indexOf(_)!==-1&&(m=s(l,0,P)),{w:f,h:m}}function s(o,c,y){return Math.max(Math.min(o,y),c)}return xe}var Je={},$t={exports:{}},Yt,Qa;function Fu(){if(Qa)return Yt;Qa=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Yt=t,Yt}var Kt,es;function Bu(){if(es)return Kt;es=1;var t=Fu();function n(){}function r(){}return r.resetWarningCache=n,Kt=function(){function a(o,c,y,b,C,_){if(_!==t){var S=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw S.name="Invariant Violation",S}}a.isRequired=a;function i(){return a}var s={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:i,element:a,elementType:a,instanceOf:i,node:a,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:r,resetWarningCache:n};return s.PropTypes=s,s},Kt}var ts;function Te(){return ts||(ts=1,$t.exports=Bu()()),$t.exports}var Ze={exports:{}},Xt={},ne={},Se={},rs;function Tt(){if(rs)return Se;rs=1,Object.defineProperty(Se,"__esModule",{value:!0}),Se.dontSetMe=i,Se.findInArray=t,Se.int=a,Se.isFunction=n,Se.isNum=r;function t(s,o){for(let c=0,y=s.length;c<y;c++)if(o.apply(o,[s[c],c,s]))return s[c]}function n(s){return typeof s=="function"||Object.prototype.toString.call(s)==="[object Function]"}function r(s){return typeof s=="number"&&!isNaN(s)}function a(s){return parseInt(s,10)}function i(s,o,c){if(s[o])return new Error(`Invalid prop ${o} passed to ${c} - do not set this, set it on the child.`)}return Se}var Re={},ns;function Uu(){if(ns)return Re;ns=1,Object.defineProperty(Re,"__esModule",{value:!0}),Re.browserPrefixToKey=r,Re.browserPrefixToStyle=a,Re.default=void 0,Re.getPrefix=n;const t=["Moz","Webkit","O","ms"];function n(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"transform";if(typeof window>"u")return"";const o=window.document?.documentElement?.style;if(!o||s in o)return"";for(let c=0;c<t.length;c++)if(r(s,t[c])in o)return t[c];return""}function r(s,o){return o?`${o}${i(s)}`:s}function a(s,o){return o?`-${o.toLowerCase()}-${s}`:s}function i(s){let o="",c=!0;for(let y=0;y<s.length;y++)c?(o+=s[y].toUpperCase(),c=!1):s[y]==="-"?c=!0:o+=s[y];return o}return Re.default=n(),Re}var as;function Oa(){if(as)return ne;as=1,Object.defineProperty(ne,"__esModule",{value:!0}),ne.addClassName=p,ne.addEvent=o,ne.addUserSelectStyles=l,ne.createCSSTransform=P,ne.createSVGTransform=w,ne.getTouch=u,ne.getTouchIdentifier=h,ne.getTranslation=v,ne.innerHeight=C,ne.innerWidth=_,ne.matchesSelector=i,ne.matchesSelectorAndParentsTo=s,ne.offsetXYFromParent=S,ne.outerHeight=y,ne.outerWidth=b,ne.removeClassName=g,ne.removeEvent=c,ne.scheduleRemoveUserSelectStyles=f;var t=Tt(),n=r(Uu());function r(d,j){if(typeof WeakMap=="function")var O=new WeakMap,D=new WeakMap;return(r=function(q,N){if(!N&&q&&q.__esModule)return q;var T,I,F={__proto__:null,default:q};if(q===null||typeof q!="object"&&typeof q!="function")return F;if(T=N?D:O){if(T.has(q))return T.get(q);T.set(q,F)}for(const B in q)B!=="default"&&{}.hasOwnProperty.call(q,B)&&((I=(T=Object.defineProperty)&&Object.getOwnPropertyDescriptor(q,B))&&(I.get||I.set)?T(F,B,I):F[B]=q[B]);return F})(d,j)}let a="";function i(d,j){return a||(a=(0,t.findInArray)(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(O){return(0,t.isFunction)(d[O])})),(0,t.isFunction)(d[a])?d[a](j):!1}function s(d,j,O){let D=d;do{if(i(D,j))return!0;if(D===O)return!1;D=D.parentNode}while(D);return!1}function o(d,j,O,D){if(!d)return;const q={capture:!0,...D};d.addEventListener?d.addEventListener(j,O,q):d.attachEvent?d.attachEvent("on"+j,O):d["on"+j]=O}function c(d,j,O,D){if(!d)return;const q={capture:!0,...D};d.removeEventListener?d.removeEventListener(j,O,q):d.detachEvent?d.detachEvent("on"+j,O):d["on"+j]=null}function y(d){let j=d.clientHeight;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j+=(0,t.int)(O.borderTopWidth),j+=(0,t.int)(O.borderBottomWidth),j}function b(d){let j=d.clientWidth;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j+=(0,t.int)(O.borderLeftWidth),j+=(0,t.int)(O.borderRightWidth),j}function C(d){let j=d.clientHeight;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j-=(0,t.int)(O.paddingTop),j-=(0,t.int)(O.paddingBottom),j}function _(d){let j=d.clientWidth;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j-=(0,t.int)(O.paddingLeft),j-=(0,t.int)(O.paddingRight),j}function S(d,j,O){const q=j===j.ownerDocument.body?{left:0,top:0}:j.getBoundingClientRect(),N=(d.clientX+j.scrollLeft-q.left)/O,T=(d.clientY+j.scrollTop-q.top)/O;return{x:N,y:T}}function P(d,j){const O=v(d,j,"px");return{[(0,n.browserPrefixToKey)("transform",n.default)]:O}}function w(d,j){return v(d,j,"")}function v(d,j,O){let{x:D,y:q}=d,N=`translate(${D}${O},${q}${O})`;if(j){const T=`${typeof j.x=="string"?j.x:j.x+O}`,I=`${typeof j.y=="string"?j.y:j.y+O}`;N=`translate(${T}, ${I})`+N}return N}function u(d,j){return d.targetTouches&&(0,t.findInArray)(d.targetTouches,O=>j===O.identifier)||d.changedTouches&&(0,t.findInArray)(d.changedTouches,O=>j===O.identifier)}function h(d){if(d.targetTouches&&d.targetTouches[0])return d.targetTouches[0].identifier;if(d.changedTouches&&d.changedTouches[0])return d.changedTouches[0].identifier}function l(d){if(!d)return;let j=d.getElementById("react-draggable-style-el");j||(j=d.createElement("style"),j.type="text/css",j.id="react-draggable-style-el",j.innerHTML=`.react-draggable-transparent-selection *::-moz-selection {all: inherit;}
|
|
1
|
+
import{c as Bl}from"./client-C5T7_OK9.js";import{j as e}from"./jsx-runtime-DoEZbXM1.js";import{r as M,a as Ul}from"./index-i4mjW0og.js";import{N as qe,P as De,S as Oe,r as X,I as Gl,C as $l,s as Pe,i as $e,a as ye,U as Bt,L as Wa,b as Jo,c as ve,D as _a,T as we,d as le,e as Yl,f as Kl,R as Xl,u as Zo,$ as Qo,g as Vl,h as Jl,j as Zl,k as Ql,l as eu,m as tu,n as ru}from"./index-Bq9C9SqB.js";import{u as Ee,L as ut,a as Ct,S as el,R as me,b as nu,c as au}from"./index-CRRRLlCc.js";import{d as de,i as su,h as tl,a as Fa,b as wa,l as iu,r as Pt,c as qt,e as ou,f as Dt,g as ja,j as Ot,k as Ne,m as lu}from"./utils-Ds3ldd-U.js";import{a as H,L as fe,F as Ie,I as ie,H as Sa,D as Ra,M as rl,P as ba,u as mt}from"./index-DYcAgWjJ.js";import{I as uu,a as vt,b as cu,c as du,d as hu,e as fu,f as nl,g as Ba,h as pu,i as yt,j as gu,k as Et,l as mu,m as al,n as sl,o as vu,p as bt,q as il,r as ol,s as yu,t as bu,u as xu,v as _u,w as wu,x as ju,y as Su,z as ll,A as Ru,B as Cu,C as Ua,D as Ga,E as ul,F as cl,G as Pu,H as qu,J as Du}from"./IconWorldPlus-CGBAsLNj.js";import xt from"./IconArrowRight-CA5_cccJ.js";import{a as Ou,g as Ca}from"./_commonjsHelpers-CE1G-McA.js";import{r as pe}from"./index-c0qeY2gs.js";import{r as Pa}from"./index-DqHVrEeL.js";import{I as Eu,a as dl,b as _t,c as hl,d as $a,e as Nu}from"./IconWorld-DtARpBKX.js";import{a as ct}from"./IconX-SYtbnYKI.js";import{I as Tu}from"./IconCheck-Dyq5qyY1.js";import{useStore as Ce}from"./shared/@nanostores_react-HTG3s0lp.js";import{useSaved as Mu,SavedSpan as Au,SavedStatus as ku}from"./shared/@hooks-DfTzYBIL.js";import{a as fl}from"./index-CSV4ZXsq.js";import"./jsx-runtime-Bw5QeaCk.js";import"./index-CJ4e7_2M.js";let wt=-1,jt=-1,Fe=!1,Be,Xe;const he=document.createElement("div");Object.assign(he.style,{position:"fixed",left:"-1000px",top:"-1000px",border:"2px solid black",background:"white",fontFamily:"Glacial Indifference",fontWeight:"bold",fontSize:"16px",padding:"8px",maxWidth:"300px",zIndex:"100000",borderRadius:"8px",pointerEvents:"none",opacity:0,transition:"opacity .2s ease"});he.innerText="";document.body.appendChild(he);document.body.addEventListener("mousemove",t=>{wt=t.clientX,jt=t.clientY,Be&&pl()});function pl(){const t=document.body.clientWidth,n=document.body.clientHeight;Object.assign(he.style,{left:wt+(wt<t/2?16:-16-he.clientWidth)+"px",top:jt+(jt<n/2?16:-16-he.clientHeight)+"px"})}function gl(t){if(!t||!t.getAttribute)return;const n=t.getAttribute("data-tooltip");return n||gl(t.parentNode??null)}function zu(){const t=document.elementFromPoint(wt,jt),n=gl(t),r=he.innerText;!n&&Fe&&!Be&&(Fe=!1,clearTimeout(Xe)),n&&!Fe&&!Be?(clearTimeout(Xe),Fe=!0,Xe=setTimeout(()=>{he.innerText=n,pl(),he.style.opacity="1",Be=!0},400)):r!==n&&Be&&Fe&&(clearTimeout(Xe),Fe=!1,Xe=setTimeout(()=>{Be=!1,Object.assign(he.style,{left:"-1000px",top:"-1000px"})},300),he.style.opacity="0")}setInterval(()=>{zu()},100);const Lu=()=>e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"Not Found"}),e.jsx(De,{children:e.jsx(Oe,{})})]}),Ya=["January","February","March","April","May","June","July","August","September","October","November","December"],je=(t,n=!1)=>Object.keys(t).map(Number).sort((r,a)=>n?a-r:r-a),Iu=()=>{const[t,n]=Ee("/history/:time?"),r=n?.time,[a,i]=M.useState(!0),[s,o]=M.useState(!0),[c,y]=M.useState(!1),[b,C]=M.useState({}),[_,S]=M.useState(0),P=M.useMemo(()=>new Date().getFullYear(),[]),[w,v]=M.useState(P),u=M.useMemo(()=>new Date().getMonth(),[]),[h,l]=M.useState(u),f=M.useMemo(()=>new Date().getDate(),[]),m=M.useRef(null),[p,g]=M.useState(null),[d,j]=M.useState(null),O=M.useRef(null),D=M.useRef(null),q=M.useRef([]),N=M.useCallback(async()=>{i(!0);const A=await X("chat.calendar");C(A),i(!1)},[]),T=M.useCallback(A=>{if(!A.length)return;q.current=q.current.concat(A),q.current.sort((x,R)=>x.created-R.created);const z=q.current[0].created,$=q.current[q.current.length-1].created;for(let x=0;x<q.current.length;x++){const R=q.current[x],E=new Date(R.created);R.date=E.getDate(),x===0||R.date!==q.current[x-1].date?R.newDay=`${Ya[E.getMonth()]} ${R.date}, ${E.getFullYear()}`:R.newDay=void 0}O.current=z,D.current=$,S(x=>x+1)},[]),I=M.useCallback(async({before:A,after:z},$)=>{i(!0);const x=await X("chat.history",{before:A,after:z});return T(x),$==="bottom"&&q.current.length>200&&q.current.splice(0,q.current.length-200),$==="top"&&q.current.length>200&&q.current.splice(200,q.current.length-200),o(!1),i(!1),x},[]),F=()=>new Promise(A=>{const z=m.current?.querySelector(".scroll-scroller");window.requestAnimationFrame(()=>{z&&(z.scrollTop=z.scrollHeight,A())})});M.useEffect(()=>{const A=r&&new Date(r.match(/^\d+$/)?Number(r):r);(async()=>(s&&await N(),A&&!Number.isNaN(A.getTime())?(q.current=[],await I({before:A.getTime()-1}),await I({after:A.getTime()-1}),requestAnimationFrame(()=>{m.current?.querySelector(".focused")?.scrollIntoView({block:"center"})})):(q.current=[],await I({before:Date.now()}),F())))()},[r]);const B=async(A,z,$)=>{q.current=[],S(R=>R+1);const x=new Date(A,z,$).getTime();await I({after:x})},V=async()=>{if(p&&O.current&&O.current<=p)return;(await I({before:O.current},"top")).length===0&&g(O.current)},J=async()=>{if(d&&D.current&&D.current>=d)return;(await I({after:D.current},"bottom")).length===0&&j(D.current)},Q=M.useMemo(()=>je(b),[b]),Y=M.useMemo(()=>je(b,!0),[b]),te=M.useMemo(()=>{const A=Y.find(z=>z>w)??null;return A?[A,je(b[A])[0]]:null},[b,Y]),re=M.useMemo(()=>{const A=Q.find(z=>z<w)??null;return A?[A,je(b[A],!0)[0]]:null},[b,Q]),se=M.useMemo(()=>{if(h!==11&&b[w]){const $=je(b[w]).find(x=>x>h);if(typeof $=="number")return[w,$]}const A=Q.find($=>$>w);if(!A)return null;const z=je(b[A])[0];return typeof z!="number"?null:[A,z]},[w,h,Q,b]),ue=M.useMemo(()=>{if(h!==0&&b[w]){const $=je(b[w],!0).find(x=>x<h);if(typeof $=="number")return[w,$]}const A=Y.find($=>$<w);if(!A)return null;const z=je(b[A],!0)[0];return typeof z!="number"?null:[A,z]},[w,h,b]),oe=A=>{A&&(v(w),l(h))},Me=new Date(w,h+1,0).getDate(),Ae=new Date(w,h,1).getDay();return e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"History",children:e.jsxs("div",{className:"calendar-container",children:[e.jsxs(H,{normal:!0,boxy:!0,style:{marginRight:0},"data-tooltip":"Show a calendar previewing days",onClick:()=>y(!c),children:[e.jsx(uu,{})," Calendar"]}),c&&e.jsxs("div",{className:"calendar",children:[e.jsxs("div",{className:"year",children:[e.jsx(H,{icon:!0,normal:!0,disabled:!re,onClick:()=>oe(re),children:e.jsx(vt,{})}),w,e.jsx(H,{icon:!0,normal:!0,disabled:!te,onClick:()=>oe(te),children:e.jsx(xt,{})})]}),e.jsxs("div",{className:"month",children:[e.jsx(H,{icon:!0,normal:!0,disabled:!ue,onClick:()=>oe(ue),children:e.jsx(vt,{})}),Ya[h],e.jsx(H,{icon:!0,normal:!0,disabled:!se,onClick:()=>oe(se),children:e.jsx(xt,{})})]}),e.jsxs("div",{className:"calendar-days",children:[e.jsx("div",{className:"week-header days",children:"S"}),e.jsx("div",{className:"week-header days",children:"M"}),e.jsx("div",{className:"week-header days",children:"T"}),e.jsx("div",{className:"week-header days",children:"W"}),e.jsx("div",{className:"week-header days",children:"T"}),e.jsx("div",{className:"week-header days",children:"F"}),e.jsx("div",{className:"week-header days",children:"S"}),Array.from({length:Ae}).map((A,z)=>e.jsx("div",{},`empty-${z}`)),Array.from({length:Me}).map((A,z)=>e.jsx("div",{className:`days ${u===h&&P===w&&z+1===f?"today":""} ${!(u===h&&P===w&&z+1>f)&&b[w]?.[h]?.[z]?"available":""}`,onClick:()=>B(w,h,z+1),children:z+1},z))]})]})]})}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsx("div",{className:"generic-container history-container",ref:m,children:e.jsxs("div",{className:"chat-history",children:[e.jsx("div",{className:"scroll-container",children:e.jsx(Gl,{loading:a,onTop:V,onBottom:J,onTopScrollsToBottom:!1,offset:500,className:"scroll-scroller",children:q.current.map(A=>e.jsxs(Ul.Fragment,{children:[A.newDay&&e.jsx("div",{className:"chat-new-day",children:A.newDay}),e.jsx($l,{log:A},A._id)]},A._id))})}),e.jsx(fe,{active:a&&s,size:"huge",children:"Loading Chat"})]})})]})]})};var Ut={exports:{}},Ve={},it={exports:{}},Hu=it.exports,Ka;function qa(){return Ka||(Ka=1,function(t,n){(function(r,a){a(n)})(Hu,function(r){function a(A){return function($,x,R,E,k,W,L){return A($,x,L)}}function i(A){return function($,x,R,E){if(!$||!x||typeof $!="object"||typeof x!="object")return A($,x,R,E);var k=E.get($),W=E.get(x);if(k&&W)return k===x&&W===$;E.set($,x),E.set(x,$);var L=A($,x,R,E);return E.delete($),E.delete(x),L}}function s(A,z){var $={};for(var x in A)$[x]=A[x];for(var x in z)$[x]=z[x];return $}function o(A){return A.constructor===Object||A.constructor==null}function c(A){return typeof A.then=="function"}function y(A,z){return A===z||A!==A&&z!==z}var b="[object Arguments]",C="[object Boolean]",_="[object Date]",S="[object RegExp]",P="[object Map]",w="[object Number]",v="[object Object]",u="[object Set]",h="[object String]",l=Object.prototype.toString;function f(A){var z=A.areArraysEqual,$=A.areDatesEqual,x=A.areMapsEqual,R=A.areObjectsEqual,E=A.areRegExpsEqual,k=A.areSetsEqual,W=A.createIsNestedEqual,L=W(G);function G(U,K,ee){if(U===K)return!0;if(!U||!K||typeof U!="object"||typeof K!="object")return U!==U&&K!==K;if(o(U)&&o(K))return R(U,K,L,ee);var ke=Array.isArray(U),ce=Array.isArray(K);if(ke||ce)return ke===ce&&z(U,K,L,ee);var ae=l.call(U);return ae!==l.call(K)?!1:ae===_?$(U,K,L,ee):ae===S?E(U,K,L,ee):ae===P?x(U,K,L,ee):ae===u?k(U,K,L,ee):ae===v||ae===b?c(U)||c(K)?!1:R(U,K,L,ee):ae===C||ae===w||ae===h?y(U.valueOf(),K.valueOf()):!1}return G}function m(A,z,$,x){var R=A.length;if(z.length!==R)return!1;for(;R-- >0;)if(!$(A[R],z[R],R,R,A,z,x))return!1;return!0}var p=i(m);function g(A,z){return y(A.valueOf(),z.valueOf())}function d(A,z,$,x){var R=A.size===z.size;if(!R)return!1;if(!A.size)return!0;var E={},k=0;return A.forEach(function(W,L){if(R){var G=!1,U=0;z.forEach(function(K,ee){!G&&!E[U]&&(G=$(L,ee,k,U,A,z,x)&&$(W,K,L,ee,A,z,x))&&(E[U]=!0),U++}),k++,R=G}}),R}var j=i(d),O="_owner",D=Object.prototype.hasOwnProperty;function q(A,z,$,x){var R=Object.keys(A),E=R.length;if(Object.keys(z).length!==E)return!1;for(var k;E-- >0;){if(k=R[E],k===O){var W=!!A.$$typeof,L=!!z.$$typeof;if((W||L)&&W!==L)return!1}if(!D.call(z,k)||!$(A[k],z[k],k,k,A,z,x))return!1}return!0}var N=i(q);function T(A,z){return A.source===z.source&&A.flags===z.flags}function I(A,z,$,x){var R=A.size===z.size;if(!R)return!1;if(!A.size)return!0;var E={};return A.forEach(function(k,W){if(R){var L=!1,G=0;z.forEach(function(U,K){!L&&!E[G]&&(L=$(k,U,W,K,A,z,x))&&(E[G]=!0),G++}),R=L}}),R}var F=i(I),B=Object.freeze({areArraysEqual:m,areDatesEqual:g,areMapsEqual:d,areObjectsEqual:q,areRegExpsEqual:T,areSetsEqual:I,createIsNestedEqual:a}),V=Object.freeze({areArraysEqual:p,areDatesEqual:g,areMapsEqual:j,areObjectsEqual:N,areRegExpsEqual:T,areSetsEqual:F,createIsNestedEqual:a}),J=f(B);function Q(A,z){return J(A,z,void 0)}var Y=f(s(B,{createIsNestedEqual:function(){return y}}));function te(A,z){return Y(A,z,void 0)}var re=f(V);function se(A,z){return re(A,z,new WeakMap)}var ue=f(s(V,{createIsNestedEqual:function(){return y}}));function oe(A,z){return ue(A,z,new WeakMap)}function Me(A){return f(s(B,A(B)))}function Ae(A){var z=f(s(V,A(V)));return function($,x,R){return R===void 0&&(R=new WeakMap),z($,x,R)}}r.circularDeepEqual=se,r.circularShallowEqual=oe,r.createCustomCircularEqual=Ae,r.createCustomEqual=Me,r.deepEqual=Q,r.sameValueZeroEqual=y,r.shallowEqual=te,Object.defineProperty(r,"__esModule",{value:!0})})}(it,it.exports)),it.exports}var ht={exports:{}},Xa;function Nt(){if(Xa)return ht.exports;Xa=1;function t(r){var a,i,s="";if(typeof r=="string"||typeof r=="number")s+=r;else if(typeof r=="object")if(Array.isArray(r)){var o=r.length;for(a=0;a<o;a++)r[a]&&(i=t(r[a]))&&(s&&(s+=" "),s+=i)}else for(i in r)r[i]&&(s&&(s+=" "),s+=i);return s}function n(){for(var r,a,i=0,s="",o=arguments.length;i<o;i++)(r=arguments[i])&&(a=t(r))&&(s&&(s+=" "),s+=a);return s}return ht.exports=n,ht.exports.clsx=n,ht.exports}var Z={},Gt,Va;function Wu(){return Va||(Va=1,Gt=function(n,r,a){return n===r?!0:n.className===r.className&&a(n.style,r.style)&&n.width===r.width&&n.autoSize===r.autoSize&&n.cols===r.cols&&n.draggableCancel===r.draggableCancel&&n.draggableHandle===r.draggableHandle&&a(n.verticalCompact,r.verticalCompact)&&a(n.compactType,r.compactType)&&a(n.layout,r.layout)&&a(n.margin,r.margin)&&a(n.containerPadding,r.containerPadding)&&n.rowHeight===r.rowHeight&&n.maxRows===r.maxRows&&n.isBounded===r.isBounded&&n.isDraggable===r.isDraggable&&n.isResizable===r.isResizable&&n.allowOverlap===r.allowOverlap&&n.preventCollision===r.preventCollision&&n.useCSSTransforms===r.useCSSTransforms&&n.transformScale===r.transformScale&&n.isDroppable===r.isDroppable&&a(n.resizeHandles,r.resizeHandles)&&a(n.resizeHandle,r.resizeHandle)&&n.onLayoutChange===r.onLayoutChange&&n.onDragStart===r.onDragStart&&n.onDrag===r.onDrag&&n.onDragStop===r.onDragStop&&n.onResizeStart===r.onResizeStart&&n.onResize===r.onResize&&n.onResizeStop===r.onResizeStop&&n.onDrop===r.onDrop&&a(n.droppingItem,r.droppingItem)&&a(n.innerRef,r.innerRef)}),Gt}var Ja;function Ke(){if(Ja)return Z;Ja=1,Object.defineProperty(Z,"__esModule",{value:!0}),Z.bottom=a,Z.childrenEqual=y,Z.cloneLayout=i,Z.cloneLayoutItem=c,Z.collides=C,Z.compact=_,Z.compactItem=w,Z.compactType=A,Z.correctBounds=v,Z.fastPositionEqual=b,Z.fastRGLPropsEqual=void 0,Z.getAllCollisions=l,Z.getFirstCollision=h,Z.getLayoutItem=u,Z.getStatics=f,Z.modifyLayout=s,Z.moveElement=m,Z.moveElementAwayFromCollision=p,Z.noop=void 0,Z.perc=g,Z.resizeItemInDirection=Y,Z.setTopLeft=re,Z.setTransform=te,Z.sortLayoutItems=se,Z.sortLayoutItemsByColRow=oe,Z.sortLayoutItemsByRowCol=ue,Z.synchronizeLayoutWithChildren=Me,Z.validateLayout=Ae,Z.withLayoutItem=o;var t=qa(),n=r(pe());function r(x){return x&&x.__esModule?x:{default:x}}function a(x){let R=0,E;for(let k=0,W=x.length;k<W;k++)E=x[k].y+x[k].h,E>R&&(R=E);return R}function i(x){const R=Array(x.length);for(let E=0,k=x.length;E<k;E++)R[E]=c(x[E]);return R}function s(x,R){const E=Array(x.length);for(let k=0,W=x.length;k<W;k++)R.i===x[k].i?E[k]=R:E[k]=x[k];return E}function o(x,R,E){let k=u(x,R);return k?(k=E(c(k)),x=s(x,k),[x,k]):[x,null]}function c(x){return{w:x.w,h:x.h,x:x.x,y:x.y,i:x.i,minW:x.minW,maxW:x.maxW,minH:x.minH,maxH:x.maxH,moved:!!x.moved,static:!!x.static,isDraggable:x.isDraggable,isResizable:x.isResizable,resizeHandles:x.resizeHandles,isBounded:x.isBounded}}function y(x,R){return(0,t.deepEqual)(n.default.Children.map(x,E=>E?.key),n.default.Children.map(R,E=>E?.key))&&(0,t.deepEqual)(n.default.Children.map(x,E=>E?.props["data-grid"]),n.default.Children.map(R,E=>E?.props["data-grid"]))}Z.fastRGLPropsEqual=Wu();function b(x,R){return x.left===R.left&&x.top===R.top&&x.width===R.width&&x.height===R.height}function C(x,R){return!(x.i===R.i||x.x+x.w<=R.x||x.x>=R.x+R.w||x.y+x.h<=R.y||x.y>=R.y+R.h)}function _(x,R,E,k){const W=f(x),L=se(x,R),G=Array(x.length);for(let U=0,K=L.length;U<K;U++){let ee=c(L[U]);ee.static||(ee=w(W,ee,R,E,L,k),W.push(ee)),G[x.indexOf(L[U])]=ee,ee.moved=!1}return G}const S={x:"w",y:"h"};function P(x,R,E,k){const W=S[k];R[k]+=1;const L=x.map(G=>G.i).indexOf(R.i);for(let G=L+1;G<x.length;G++){const U=x[G];if(!U.static){if(U.y>R.y+R.h)break;C(R,U)&&P(x,U,E+R[W],k)}}R[k]=E}function w(x,R,E,k,W,L){const G=E==="vertical",U=E==="horizontal";if(G)for(R.y=Math.min(a(x),R.y);R.y>0&&!h(x,R);)R.y--;else if(U)for(;R.x>0&&!h(x,R);)R.x--;let K;for(;(K=h(x,R))&&!(E===null&&L);)if(U?P(W,R,K.x+K.w,"x"):P(W,R,K.y+K.h,"y"),U&&R.x+R.w>k)for(R.x=k-R.w,R.y++;R.x>0&&!h(x,R);)R.x--;return R.y=Math.max(R.y,0),R.x=Math.max(R.x,0),R}function v(x,R){const E=f(x);for(let k=0,W=x.length;k<W;k++){const L=x[k];if(L.x+L.w>R.cols&&(L.x=R.cols-L.w),L.x<0&&(L.x=0,L.w=R.cols),!L.static)E.push(L);else for(;h(E,L);)L.y++}return x}function u(x,R){for(let E=0,k=x.length;E<k;E++)if(x[E].i===R)return x[E]}function h(x,R){for(let E=0,k=x.length;E<k;E++)if(C(x[E],R))return x[E]}function l(x,R){return x.filter(E=>C(E,R))}function f(x){return x.filter(R=>R.static)}function m(x,R,E,k,W,L,G,U,K){if(R.static&&R.isDraggable!==!0||R.y===k&&R.x===E)return x;`${R.i}${String(E)}${String(k)}${R.x}${R.y}`;const ee=R.x,ke=R.y;typeof E=="number"&&(R.x=E),typeof k=="number"&&(R.y=k),R.moved=!0;let ce=se(x,G);(G==="vertical"&&typeof k=="number"?ke>=k:G==="horizontal"&&typeof E=="number"?ee>=E:!1)&&(ce=ce.reverse());const We=l(ce,R),dt=We.length>0;if(dt&&K)return i(x);if(dt&&L)return`${R.i}`,R.x=ee,R.y=ke,R.moved=!1,x;for(let Ft=0,Fl=We.length;Ft<Fl;Ft++){const ze=We[Ft];`${R.i}${R.x}${R.y}${ze.i}${ze.x}${ze.y}`,!ze.moved&&(ze.static?x=p(x,ze,R,W,G):x=p(x,R,ze,W,G))}return x}function p(x,R,E,k,W,L){const G=W==="horizontal",U=W==="vertical",K=R.static;if(k){k=!1;const ce={x:G?Math.max(R.x-E.w,0):E.x,y:U?Math.max(R.y-E.h,0):E.y,w:E.w,h:E.h,i:"-1"},ae=h(x,ce),We=ae&&ae.y+ae.h>R.y,dt=ae&&R.x+R.w>ae.x;if(ae){if(We&&U)return m(x,E,void 0,R.y+1,k,K,W);if(We&&W==null)return R.y=E.y,E.y=E.y+E.h,x;if(dt&&G)return m(x,R,E.x,void 0,k,K,W)}else return`${E.i}${ce.x}${ce.y}`,m(x,E,G?ce.x:void 0,U?ce.y:void 0,k,K,W)}const ee=G?E.x+1:void 0,ke=U?E.y+1:void 0;return ee==null&&ke==null?x:m(x,E,G?E.x+1:void 0,U?E.y+1:void 0,k,K,W)}function g(x){return x*100+"%"}const d=(x,R,E,k)=>x+E>k?R:E,j=(x,R,E)=>x<0?R:E,O=x=>Math.max(0,x),D=x=>Math.max(0,x),q=(x,R,E)=>{let{left:k,height:W,width:L}=R;const G=x.top-(W-x.height);return{left:k,width:L,height:j(G,x.height,W),top:D(G)}},N=(x,R,E)=>{let{top:k,left:W,height:L,width:G}=R;return{top:k,height:L,width:d(x.left,x.width,G,E),left:O(W)}},T=(x,R,E)=>{let{top:k,height:W,width:L}=R;const G=x.left-(L-x.width);return{height:W,width:G<0?x.width:d(x.left,x.width,L,E),top:D(k),left:O(G)}},I=(x,R,E)=>{let{top:k,left:W,height:L,width:G}=R;return{width:G,left:W,height:j(k,x.height,L),top:D(k)}},Q={n:q,ne:function(){return q(arguments.length<=0?void 0:arguments[0],N(...arguments))},e:N,se:function(){return I(arguments.length<=0?void 0:arguments[0],N(...arguments))},s:I,sw:function(){return I(arguments.length<=0?void 0:arguments[0],T(...arguments))},w:T,nw:function(){return q(arguments.length<=0?void 0:arguments[0],T(...arguments))}};function Y(x,R,E,k){const W=Q[x];return W?W(R,{...R,...E},k):E}function te(x){let{top:R,left:E,width:k,height:W}=x;const L=`translate(${E}px,${R}px)`;return{transform:L,WebkitTransform:L,MozTransform:L,msTransform:L,OTransform:L,width:`${k}px`,height:`${W}px`,position:"absolute"}}function re(x){let{top:R,left:E,width:k,height:W}=x;return{top:`${R}px`,left:`${E}px`,width:`${k}px`,height:`${W}px`,position:"absolute"}}function se(x,R){return R==="horizontal"?oe(x):R==="vertical"?ue(x):x}function ue(x){return x.slice(0).sort(function(R,E){return R.y>E.y||R.y===E.y&&R.x>E.x?1:R.y===E.y&&R.x===E.x?0:-1})}function oe(x){return x.slice(0).sort(function(R,E){return R.x>E.x||R.x===E.x&&R.y>E.y?1:-1})}function Me(x,R,E,k,W){x=x||[];const L=[];n.default.Children.forEach(R,U=>{if(U?.key==null)return;const K=u(x,String(U.key)),ee=U.props["data-grid"];K&&ee==null?L.push(c(K)):ee?L.push(c({...ee,i:U.key})):L.push(c({w:1,h:1,x:0,y:a(L),i:String(U.key)}))});const G=v(L,{cols:E});return W?G:_(G,k,E)}function Ae(x){let R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Layout";const E=["x","y","w","h"];if(!Array.isArray(x))throw new Error(R+" must be an array!");for(let k=0,W=x.length;k<W;k++){const L=x[k];for(let G=0;G<E.length;G++){const U=E[G],K=L[U];if(typeof K!="number"||Number.isNaN(K))throw new Error(`ReactGridLayout: ${R}[${k}].${U} must be a number! Received: ${K} (${typeof K})`)}if(typeof L.i<"u"&&typeof L.i!="string")throw new Error(`ReactGridLayout: ${R}[${k}].i must be a string! Received: ${L.i} (${typeof L.i})`)}}function A(x){const{verticalCompact:R,compactType:E}=x||{};return R===!1?null:E}function z(){}const $=()=>{};return Z.noop=$,Z}var xe={},Za;function Da(){if(Za)return xe;Za=1,Object.defineProperty(xe,"__esModule",{value:!0}),xe.calcGridColWidth=t,xe.calcGridItemPosition=r,xe.calcGridItemWHPx=n,xe.calcWH=i,xe.calcXY=a,xe.clamp=s;function t(o){const{margin:c,containerPadding:y,containerWidth:b,cols:C}=o;return(b-c[0]*(C-1)-y[0]*2)/C}function n(o,c,y){return Number.isFinite(o)?Math.round(c*o+Math.max(0,o-1)*y):o}function r(o,c,y,b,C,_){const{margin:S,containerPadding:P,rowHeight:w}=o,v=t(o),u={};return _&&_.resizing?(u.width=Math.round(_.resizing.width),u.height=Math.round(_.resizing.height)):(u.width=n(b,v,S[0]),u.height=n(C,w,S[1])),_&&_.dragging?(u.top=Math.round(_.dragging.top),u.left=Math.round(_.dragging.left)):_&&_.resizing&&typeof _.resizing.top=="number"&&typeof _.resizing.left=="number"?(u.top=Math.round(_.resizing.top),u.left=Math.round(_.resizing.left)):(u.top=Math.round((w+S[1])*y+P[1]),u.left=Math.round((v+S[0])*c+P[0])),u}function a(o,c,y,b,C){const{margin:_,containerPadding:S,cols:P,rowHeight:w,maxRows:v}=o,u=t(o);let h=Math.round((y-S[0])/(u+_[0])),l=Math.round((c-S[1])/(w+_[1]));return h=s(h,0,P-b),l=s(l,0,v-C),{x:h,y:l}}function i(o,c,y,b,C,_){const{margin:S,maxRows:P,cols:w,rowHeight:v}=o,u=t(o);let h=Math.round((c+S[0])/(u+S[0])),l=Math.round((y+S[1])/(v+S[1])),f=s(h,0,w-b),m=s(l,0,P-C);return["sw","w","nw"].indexOf(_)!==-1&&(f=s(h,0,w)),["nw","n","ne"].indexOf(_)!==-1&&(m=s(l,0,P)),{w:f,h:m}}function s(o,c,y){return Math.max(Math.min(o,y),c)}return xe}var Je={},$t={exports:{}},Yt,Qa;function Fu(){if(Qa)return Yt;Qa=1;var t="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Yt=t,Yt}var Kt,es;function Bu(){if(es)return Kt;es=1;var t=Fu();function n(){}function r(){}return r.resetWarningCache=n,Kt=function(){function a(o,c,y,b,C,_){if(_!==t){var S=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw S.name="Invariant Violation",S}}a.isRequired=a;function i(){return a}var s={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:i,element:a,elementType:a,instanceOf:i,node:a,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:r,resetWarningCache:n};return s.PropTypes=s,s},Kt}var ts;function Te(){return ts||(ts=1,$t.exports=Bu()()),$t.exports}var Ze={exports:{}},Xt={},ne={},Se={},rs;function Tt(){if(rs)return Se;rs=1,Object.defineProperty(Se,"__esModule",{value:!0}),Se.dontSetMe=i,Se.findInArray=t,Se.int=a,Se.isFunction=n,Se.isNum=r;function t(s,o){for(let c=0,y=s.length;c<y;c++)if(o.apply(o,[s[c],c,s]))return s[c]}function n(s){return typeof s=="function"||Object.prototype.toString.call(s)==="[object Function]"}function r(s){return typeof s=="number"&&!isNaN(s)}function a(s){return parseInt(s,10)}function i(s,o,c){if(s[o])return new Error(`Invalid prop ${o} passed to ${c} - do not set this, set it on the child.`)}return Se}var Re={},ns;function Uu(){if(ns)return Re;ns=1,Object.defineProperty(Re,"__esModule",{value:!0}),Re.browserPrefixToKey=r,Re.browserPrefixToStyle=a,Re.default=void 0,Re.getPrefix=n;const t=["Moz","Webkit","O","ms"];function n(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"transform";if(typeof window>"u")return"";const o=window.document?.documentElement?.style;if(!o||s in o)return"";for(let c=0;c<t.length;c++)if(r(s,t[c])in o)return t[c];return""}function r(s,o){return o?`${o}${i(s)}`:s}function a(s,o){return o?`-${o.toLowerCase()}-${s}`:s}function i(s){let o="",c=!0;for(let y=0;y<s.length;y++)c?(o+=s[y].toUpperCase(),c=!1):s[y]==="-"?c=!0:o+=s[y];return o}return Re.default=n(),Re}var as;function Oa(){if(as)return ne;as=1,Object.defineProperty(ne,"__esModule",{value:!0}),ne.addClassName=p,ne.addEvent=o,ne.addUserSelectStyles=l,ne.createCSSTransform=P,ne.createSVGTransform=w,ne.getTouch=u,ne.getTouchIdentifier=h,ne.getTranslation=v,ne.innerHeight=C,ne.innerWidth=_,ne.matchesSelector=i,ne.matchesSelectorAndParentsTo=s,ne.offsetXYFromParent=S,ne.outerHeight=y,ne.outerWidth=b,ne.removeClassName=g,ne.removeEvent=c,ne.scheduleRemoveUserSelectStyles=f;var t=Tt(),n=r(Uu());function r(d,j){if(typeof WeakMap=="function")var O=new WeakMap,D=new WeakMap;return(r=function(q,N){if(!N&&q&&q.__esModule)return q;var T,I,F={__proto__:null,default:q};if(q===null||typeof q!="object"&&typeof q!="function")return F;if(T=N?D:O){if(T.has(q))return T.get(q);T.set(q,F)}for(const B in q)B!=="default"&&{}.hasOwnProperty.call(q,B)&&((I=(T=Object.defineProperty)&&Object.getOwnPropertyDescriptor(q,B))&&(I.get||I.set)?T(F,B,I):F[B]=q[B]);return F})(d,j)}let a="";function i(d,j){return a||(a=(0,t.findInArray)(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(O){return(0,t.isFunction)(d[O])})),(0,t.isFunction)(d[a])?d[a](j):!1}function s(d,j,O){let D=d;do{if(i(D,j))return!0;if(D===O)return!1;D=D.parentNode}while(D);return!1}function o(d,j,O,D){if(!d)return;const q={capture:!0,...D};d.addEventListener?d.addEventListener(j,O,q):d.attachEvent?d.attachEvent("on"+j,O):d["on"+j]=O}function c(d,j,O,D){if(!d)return;const q={capture:!0,...D};d.removeEventListener?d.removeEventListener(j,O,q):d.detachEvent?d.detachEvent("on"+j,O):d["on"+j]=null}function y(d){let j=d.clientHeight;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j+=(0,t.int)(O.borderTopWidth),j+=(0,t.int)(O.borderBottomWidth),j}function b(d){let j=d.clientWidth;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j+=(0,t.int)(O.borderLeftWidth),j+=(0,t.int)(O.borderRightWidth),j}function C(d){let j=d.clientHeight;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j-=(0,t.int)(O.paddingTop),j-=(0,t.int)(O.paddingBottom),j}function _(d){let j=d.clientWidth;const O=d.ownerDocument.defaultView.getComputedStyle(d);return j-=(0,t.int)(O.paddingLeft),j-=(0,t.int)(O.paddingRight),j}function S(d,j,O){const q=j===j.ownerDocument.body?{left:0,top:0}:j.getBoundingClientRect(),N=(d.clientX+j.scrollLeft-q.left)/O,T=(d.clientY+j.scrollTop-q.top)/O;return{x:N,y:T}}function P(d,j){const O=v(d,j,"px");return{[(0,n.browserPrefixToKey)("transform",n.default)]:O}}function w(d,j){return v(d,j,"")}function v(d,j,O){let{x:D,y:q}=d,N=`translate(${D}${O},${q}${O})`;if(j){const T=`${typeof j.x=="string"?j.x:j.x+O}`,I=`${typeof j.y=="string"?j.y:j.y+O}`;N=`translate(${T}, ${I})`+N}return N}function u(d,j){return d.targetTouches&&(0,t.findInArray)(d.targetTouches,O=>j===O.identifier)||d.changedTouches&&(0,t.findInArray)(d.changedTouches,O=>j===O.identifier)}function h(d){if(d.targetTouches&&d.targetTouches[0])return d.targetTouches[0].identifier;if(d.changedTouches&&d.changedTouches[0])return d.changedTouches[0].identifier}function l(d){if(!d)return;let j=d.getElementById("react-draggable-style-el");j||(j=d.createElement("style"),j.type="text/css",j.id="react-draggable-style-el",j.innerHTML=`.react-draggable-transparent-selection *::-moz-selection {all: inherit;}
|
|
2
2
|
`,j.innerHTML+=`.react-draggable-transparent-selection *::selection {all: inherit;}
|
|
3
3
|
`,d.getElementsByTagName("head")[0].appendChild(j)),d.body&&p(d.body,"react-draggable-transparent-selection")}function f(d){window.requestAnimationFrame?window.requestAnimationFrame(()=>{m(d)}):m(d)}function m(d){if(d)try{if(d.body&&g(d.body,"react-draggable-transparent-selection"),d.selection)d.selection.empty();else{const j=(d.defaultView||window).getSelection();j&&j.type!=="Caret"&&j.removeAllRanges()}}catch{}}function p(d,j){d.classList?d.classList.add(j):d.className.match(new RegExp(`(?:^|\\s)${j}(?!\\S)`))||(d.className+=` ${j}`)}function g(d,j){d.classList?d.classList.remove(j):d.className=d.className.replace(new RegExp(`(?:^|\\s)${j}(?!\\S)`,"g"),"")}return ne}var ge={},ss;function ml(){if(ss)return ge;ss=1,Object.defineProperty(ge,"__esModule",{value:!0}),ge.canDragX=i,ge.canDragY=s,ge.createCoreData=c,ge.createDraggableData=y,ge.getBoundPosition=r,ge.getControlPosition=o,ge.snapToGrid=a;var t=Tt(),n=Oa();function r(_,S,P){if(!_.props.bounds)return[S,P];let{bounds:w}=_.props;w=typeof w=="string"?w:b(w);const v=C(_);if(typeof w=="string"){const{ownerDocument:u}=v,h=u.defaultView;let l;if(w==="parent"?l=v.parentNode:l=v.getRootNode().querySelector(w),!(l instanceof h.HTMLElement))throw new Error('Bounds selector "'+w+'" could not find an element.');const f=l,m=h.getComputedStyle(v),p=h.getComputedStyle(f);w={left:-v.offsetLeft+(0,t.int)(p.paddingLeft)+(0,t.int)(m.marginLeft),top:-v.offsetTop+(0,t.int)(p.paddingTop)+(0,t.int)(m.marginTop),right:(0,n.innerWidth)(f)-(0,n.outerWidth)(v)-v.offsetLeft+(0,t.int)(p.paddingRight)-(0,t.int)(m.marginRight),bottom:(0,n.innerHeight)(f)-(0,n.outerHeight)(v)-v.offsetTop+(0,t.int)(p.paddingBottom)-(0,t.int)(m.marginBottom)}}return(0,t.isNum)(w.right)&&(S=Math.min(S,w.right)),(0,t.isNum)(w.bottom)&&(P=Math.min(P,w.bottom)),(0,t.isNum)(w.left)&&(S=Math.max(S,w.left)),(0,t.isNum)(w.top)&&(P=Math.max(P,w.top)),[S,P]}function a(_,S,P){const w=Math.round(S/_[0])*_[0],v=Math.round(P/_[1])*_[1];return[w,v]}function i(_){return _.props.axis==="both"||_.props.axis==="x"}function s(_){return _.props.axis==="both"||_.props.axis==="y"}function o(_,S,P){const w=typeof S=="number"?(0,n.getTouch)(_,S):null;if(typeof S=="number"&&!w)return null;const v=C(P),u=P.props.offsetParent||v.offsetParent||v.ownerDocument.body;return(0,n.offsetXYFromParent)(w||_,u,P.props.scale)}function c(_,S,P){const w=!(0,t.isNum)(_.lastX),v=C(_);return w?{node:v,deltaX:0,deltaY:0,lastX:S,lastY:P,x:S,y:P}:{node:v,deltaX:S-_.lastX,deltaY:P-_.lastY,lastX:_.lastX,lastY:_.lastY,x:S,y:P}}function y(_,S){const P=_.props.scale;return{node:S.node,x:_.state.x+S.deltaX/P,y:_.state.y+S.deltaY/P,deltaX:S.deltaX/P,deltaY:S.deltaY/P,lastX:_.state.x,lastY:_.state.y}}function b(_){return{left:_.left,top:_.top,right:_.right,bottom:_.bottom}}function C(_){const S=_.findDOMNode();if(!S)throw new Error("<DraggableCore>: Unmounted during event!");return S}return ge}var Qe={},ft={},is;function vl(){if(is)return ft;is=1,Object.defineProperty(ft,"__esModule",{value:!0}),ft.default=t;function t(){}return ft}var os;function Gu(){if(os)return Qe;os=1,Object.defineProperty(Qe,"__esModule",{value:!0}),Qe.default=void 0;var t=y(pe()),n=c(Te()),r=c(Pa()),a=Oa(),i=ml(),s=Tt(),o=c(vl());function c(v){return v&&v.__esModule?v:{default:v}}function y(v,u){if(typeof WeakMap=="function")var h=new WeakMap,l=new WeakMap;return(y=function(f,m){if(!m&&f&&f.__esModule)return f;var p,g,d={__proto__:null,default:f};if(f===null||typeof f!="object"&&typeof f!="function")return d;if(p=m?l:h){if(p.has(f))return p.get(f);p.set(f,d)}for(const j in f)j!=="default"&&{}.hasOwnProperty.call(f,j)&&((g=(p=Object.defineProperty)&&Object.getOwnPropertyDescriptor(f,j))&&(g.get||g.set)?p(d,j,g):d[j]=f[j]);return d})(v,u)}function b(v,u,h){return(u=C(u))in v?Object.defineProperty(v,u,{value:h,enumerable:!0,configurable:!0,writable:!0}):v[u]=h,v}function C(v){var u=_(v,"string");return typeof u=="symbol"?u:u+""}function _(v,u){if(typeof v!="object"||!v)return v;var h=v[Symbol.toPrimitive];if(h!==void 0){var l=h.call(v,u);if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(u==="string"?String:Number)(v)}const S={touch:{start:"touchstart",move:"touchmove",stop:"touchend"},mouse:{start:"mousedown",move:"mousemove",stop:"mouseup"}};let P=S.mouse,w=class extends t.Component{constructor(){super(...arguments),b(this,"dragging",!1),b(this,"lastX",NaN),b(this,"lastY",NaN),b(this,"touchIdentifier",null),b(this,"mounted",!1),b(this,"handleDragStart",u=>{if(this.props.onMouseDown(u),!this.props.allowAnyClick&&typeof u.button=="number"&&u.button!==0)return!1;const h=this.findDOMNode();if(!h||!h.ownerDocument||!h.ownerDocument.body)throw new Error("<DraggableCore> not mounted on DragStart!");const{ownerDocument:l}=h;if(this.props.disabled||!(u.target instanceof l.defaultView.Node)||this.props.handle&&!(0,a.matchesSelectorAndParentsTo)(u.target,this.props.handle,h)||this.props.cancel&&(0,a.matchesSelectorAndParentsTo)(u.target,this.props.cancel,h))return;u.type==="touchstart"&&!this.props.allowMobileScroll&&u.preventDefault();const f=(0,a.getTouchIdentifier)(u);this.touchIdentifier=f;const m=(0,i.getControlPosition)(u,f,this);if(m==null)return;const{x:p,y:g}=m,d=(0,i.createCoreData)(this,p,g);(0,o.default)("DraggableCore: handleDragStart: %j",d),(0,o.default)("calling",this.props.onStart),!(this.props.onStart(u,d)===!1||this.mounted===!1)&&(this.props.enableUserSelectHack&&(0,a.addUserSelectStyles)(l),this.dragging=!0,this.lastX=p,this.lastY=g,(0,a.addEvent)(l,P.move,this.handleDrag),(0,a.addEvent)(l,P.stop,this.handleDragStop))}),b(this,"handleDrag",u=>{const h=(0,i.getControlPosition)(u,this.touchIdentifier,this);if(h==null)return;let{x:l,y:f}=h;if(Array.isArray(this.props.grid)){let g=l-this.lastX,d=f-this.lastY;if([g,d]=(0,i.snapToGrid)(this.props.grid,g,d),!g&&!d)return;l=this.lastX+g,f=this.lastY+d}const m=(0,i.createCoreData)(this,l,f);if((0,o.default)("DraggableCore: handleDrag: %j",m),this.props.onDrag(u,m)===!1||this.mounted===!1){try{this.handleDragStop(new MouseEvent("mouseup"))}catch{const d=document.createEvent("MouseEvents");d.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),this.handleDragStop(d)}return}this.lastX=l,this.lastY=f}),b(this,"handleDragStop",u=>{if(!this.dragging)return;const h=(0,i.getControlPosition)(u,this.touchIdentifier,this);if(h==null)return;let{x:l,y:f}=h;if(Array.isArray(this.props.grid)){let d=l-this.lastX||0,j=f-this.lastY||0;[d,j]=(0,i.snapToGrid)(this.props.grid,d,j),l=this.lastX+d,f=this.lastY+j}const m=(0,i.createCoreData)(this,l,f);if(this.props.onStop(u,m)===!1||this.mounted===!1)return!1;const g=this.findDOMNode();g&&this.props.enableUserSelectHack&&(0,a.scheduleRemoveUserSelectStyles)(g.ownerDocument),(0,o.default)("DraggableCore: handleDragStop: %j",m),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,g&&((0,o.default)("DraggableCore: Removing handlers"),(0,a.removeEvent)(g.ownerDocument,P.move,this.handleDrag),(0,a.removeEvent)(g.ownerDocument,P.stop,this.handleDragStop))}),b(this,"onMouseDown",u=>(P=S.mouse,this.handleDragStart(u))),b(this,"onMouseUp",u=>(P=S.mouse,this.handleDragStop(u))),b(this,"onTouchStart",u=>(P=S.touch,this.handleDragStart(u))),b(this,"onTouchEnd",u=>(P=S.touch,this.handleDragStop(u)))}componentDidMount(){this.mounted=!0;const u=this.findDOMNode();u&&(0,a.addEvent)(u,S.touch.start,this.onTouchStart,{passive:!1})}componentWillUnmount(){this.mounted=!1;const u=this.findDOMNode();if(u){const{ownerDocument:h}=u;(0,a.removeEvent)(h,S.mouse.move,this.handleDrag),(0,a.removeEvent)(h,S.touch.move,this.handleDrag),(0,a.removeEvent)(h,S.mouse.stop,this.handleDragStop),(0,a.removeEvent)(h,S.touch.stop,this.handleDragStop),(0,a.removeEvent)(u,S.touch.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&(0,a.scheduleRemoveUserSelectStyles)(h)}}findDOMNode(){return this.props?.nodeRef?this.props?.nodeRef?.current:r.default.findDOMNode(this)}render(){return t.cloneElement(t.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}};return Qe.default=w,b(w,"displayName","DraggableCore"),b(w,"propTypes",{allowAnyClick:n.default.bool,allowMobileScroll:n.default.bool,children:n.default.node.isRequired,disabled:n.default.bool,enableUserSelectHack:n.default.bool,offsetParent:function(v,u){if(v[u]&&v[u].nodeType!==1)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:n.default.arrayOf(n.default.number),handle:n.default.string,cancel:n.default.string,nodeRef:n.default.object,onStart:n.default.func,onDrag:n.default.func,onStop:n.default.func,onMouseDown:n.default.func,scale:n.default.number,className:s.dontSetMe,style:s.dontSetMe,transform:s.dontSetMe}),b(w,"defaultProps",{allowAnyClick:!1,allowMobileScroll:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1}),Qe}var ls;function $u(){return ls||(ls=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"DraggableCore",{enumerable:!0,get:function(){return y.default}}),t.default=void 0;var n=_(pe()),r=C(Te()),a=C(Pa()),i=Nt(),s=Oa(),o=ml(),c=Tt(),y=C(Gu()),b=C(vl());function C(h){return h&&h.__esModule?h:{default:h}}function _(h,l){if(typeof WeakMap=="function")var f=new WeakMap,m=new WeakMap;return(_=function(p,g){if(!g&&p&&p.__esModule)return p;var d,j,O={__proto__:null,default:p};if(p===null||typeof p!="object"&&typeof p!="function")return O;if(d=g?m:f){if(d.has(p))return d.get(p);d.set(p,O)}for(const D in p)D!=="default"&&{}.hasOwnProperty.call(p,D)&&((j=(d=Object.defineProperty)&&Object.getOwnPropertyDescriptor(p,D))&&(j.get||j.set)?d(O,D,j):O[D]=p[D]);return O})(h,l)}function S(){return S=Object.assign?Object.assign.bind():function(h){for(var l=1;l<arguments.length;l++){var f=arguments[l];for(var m in f)({}).hasOwnProperty.call(f,m)&&(h[m]=f[m])}return h},S.apply(null,arguments)}function P(h,l,f){return(l=w(l))in h?Object.defineProperty(h,l,{value:f,enumerable:!0,configurable:!0,writable:!0}):h[l]=f,h}function w(h){var l=v(h,"string");return typeof l=="symbol"?l:l+""}function v(h,l){if(typeof h!="object"||!h)return h;var f=h[Symbol.toPrimitive];if(f!==void 0){var m=f.call(h,l);if(typeof m!="object")return m;throw new TypeError("@@toPrimitive must return a primitive value.")}return(l==="string"?String:Number)(h)}class u extends n.Component{static getDerivedStateFromProps(l,f){let{position:m}=l,{prevPropsPosition:p}=f;return m&&(!p||m.x!==p.x||m.y!==p.y)?((0,b.default)("Draggable: getDerivedStateFromProps %j",{position:m,prevPropsPosition:p}),{x:m.x,y:m.y,prevPropsPosition:{...m}}):null}constructor(l){super(l),P(this,"onDragStart",(f,m)=>{if((0,b.default)("Draggable: onDragStart: %j",m),this.props.onStart(f,(0,o.createDraggableData)(this,m))===!1)return!1;this.setState({dragging:!0,dragged:!0})}),P(this,"onDrag",(f,m)=>{if(!this.state.dragging)return!1;(0,b.default)("Draggable: onDrag: %j",m);const p=(0,o.createDraggableData)(this,m),g={x:p.x,y:p.y,slackX:0,slackY:0};if(this.props.bounds){const{x:j,y:O}=g;g.x+=this.state.slackX,g.y+=this.state.slackY;const[D,q]=(0,o.getBoundPosition)(this,g.x,g.y);g.x=D,g.y=q,g.slackX=this.state.slackX+(j-g.x),g.slackY=this.state.slackY+(O-g.y),p.x=g.x,p.y=g.y,p.deltaX=g.x-this.state.x,p.deltaY=g.y-this.state.y}if(this.props.onDrag(f,p)===!1)return!1;this.setState(g)}),P(this,"onDragStop",(f,m)=>{if(!this.state.dragging||this.props.onStop(f,(0,o.createDraggableData)(this,m))===!1)return!1;(0,b.default)("Draggable: onDragStop: %j",m);const g={dragging:!1,slackX:0,slackY:0};if(!!this.props.position){const{x:j,y:O}=this.props.position;g.x=j,g.y=O}this.setState(g)}),this.state={dragging:!1,dragged:!1,x:l.position?l.position.x:l.defaultPosition.x,y:l.position?l.position.y:l.defaultPosition.y,prevPropsPosition:{...l.position},slackX:0,slackY:0,isElementSVG:!1},l.position&&!(l.onDrag||l.onStop)&&console.warn("A `position` was applied to this <Draggable>, without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element.")}componentDidMount(){typeof window.SVGElement<"u"&&this.findDOMNode()instanceof window.SVGElement&&this.setState({isElementSVG:!0})}componentWillUnmount(){this.state.dragging&&this.setState({dragging:!1})}findDOMNode(){return this.props?.nodeRef?.current??a.default.findDOMNode(this)}render(){const{axis:l,bounds:f,children:m,defaultPosition:p,defaultClassName:g,defaultClassNameDragging:d,defaultClassNameDragged:j,position:O,positionOffset:D,scale:q,...N}=this.props;let T={},I=null;const B=!!!O||this.state.dragging,V=O||p,J={x:(0,o.canDragX)(this)&&B?this.state.x:V.x,y:(0,o.canDragY)(this)&&B?this.state.y:V.y};this.state.isElementSVG?I=(0,s.createSVGTransform)(J,D):T=(0,s.createCSSTransform)(J,D);const Q=(0,i.clsx)(m.props.className||"",g,{[d]:this.state.dragging,[j]:this.state.dragged});return n.createElement(y.default,S({},N,{onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop}),n.cloneElement(n.Children.only(m),{className:Q,style:{...m.props.style,...T},transform:I}))}}t.default=u,P(u,"displayName","Draggable"),P(u,"propTypes",{...y.default.propTypes,axis:r.default.oneOf(["both","x","y","none"]),bounds:r.default.oneOfType([r.default.shape({left:r.default.number,right:r.default.number,top:r.default.number,bottom:r.default.number}),r.default.string,r.default.oneOf([!1])]),defaultClassName:r.default.string,defaultClassNameDragging:r.default.string,defaultClassNameDragged:r.default.string,defaultPosition:r.default.shape({x:r.default.number,y:r.default.number}),positionOffset:r.default.shape({x:r.default.oneOfType([r.default.number,r.default.string]),y:r.default.oneOfType([r.default.number,r.default.string])}),position:r.default.shape({x:r.default.number,y:r.default.number}),className:c.dontSetMe,style:c.dontSetMe,transform:c.dontSetMe}),P(u,"defaultProps",{...y.default.defaultProps,axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1})}(Xt)),Xt}var us;function Ea(){if(us)return Ze.exports;us=1;const{default:t,DraggableCore:n}=$u();return Ze.exports=t,Ze.exports.default=t,Ze.exports.DraggableCore=n,Ze.exports}var et={exports:{}},tt={},pt={},cs;function Yu(){if(cs)return pt;cs=1,pt.__esModule=!0,pt.cloneElement=c;var t=n(pe());function n(y){return y&&y.__esModule?y:{default:y}}function r(y,b){var C=Object.keys(y);if(Object.getOwnPropertySymbols){var _=Object.getOwnPropertySymbols(y);b&&(_=_.filter(function(S){return Object.getOwnPropertyDescriptor(y,S).enumerable})),C.push.apply(C,_)}return C}function a(y){for(var b=1;b<arguments.length;b++){var C=arguments[b]!=null?arguments[b]:{};b%2?r(Object(C),!0).forEach(function(_){i(y,_,C[_])}):Object.getOwnPropertyDescriptors?Object.defineProperties(y,Object.getOwnPropertyDescriptors(C)):r(Object(C)).forEach(function(_){Object.defineProperty(y,_,Object.getOwnPropertyDescriptor(C,_))})}return y}function i(y,b,C){return b=s(b),b in y?Object.defineProperty(y,b,{value:C,enumerable:!0,configurable:!0,writable:!0}):y[b]=C,y}function s(y){var b=o(y,"string");return typeof b=="symbol"?b:String(b)}function o(y,b){if(typeof y!="object"||y===null)return y;var C=y[Symbol.toPrimitive];if(C!==void 0){var _=C.call(y,b);if(typeof _!="object")return _;throw new TypeError("@@toPrimitive must return a primitive value.")}return(b==="string"?String:Number)(y)}function c(y,b){return b.style&&y.props.style&&(b.style=a(a({},y.props.style),b.style)),b.className&&y.props.className&&(b.className=y.props.className+" "+b.className),t.default.cloneElement(y,b)}return pt}var rt={},ds;function yl(){if(ds)return rt;ds=1,rt.__esModule=!0,rt.resizableProps=void 0;var t=n(Te());Ea();function n(a){return a&&a.__esModule?a:{default:a}}var r={axis:t.default.oneOf(["both","x","y","none"]),className:t.default.string,children:t.default.element.isRequired,draggableOpts:t.default.shape({allowAnyClick:t.default.bool,cancel:t.default.string,children:t.default.node,disabled:t.default.bool,enableUserSelectHack:t.default.bool,offsetParent:t.default.node,grid:t.default.arrayOf(t.default.number),handle:t.default.string,nodeRef:t.default.object,onStart:t.default.func,onDrag:t.default.func,onStop:t.default.func,onMouseDown:t.default.func,scale:t.default.number}),height:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];var c=s[0];if(c.axis==="both"||c.axis==="y"){var y;return(y=t.default.number).isRequired.apply(y,s)}return t.default.number.apply(t.default,s)},handle:t.default.oneOfType([t.default.node,t.default.func]),handleSize:t.default.arrayOf(t.default.number),lockAspectRatio:t.default.bool,maxConstraints:t.default.arrayOf(t.default.number),minConstraints:t.default.arrayOf(t.default.number),onResizeStop:t.default.func,onResizeStart:t.default.func,onResize:t.default.func,resizeHandles:t.default.arrayOf(t.default.oneOf(["s","w","e","n","sw","nw","se","ne"])),transformScale:t.default.number,width:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];var c=s[0];if(c.axis==="both"||c.axis==="x"){var y;return(y=t.default.number).isRequired.apply(y,s)}return t.default.number.apply(t.default,s)}};return rt.resizableProps=r,rt}var hs;function bl(){if(hs)return tt;hs=1,tt.__esModule=!0,tt.default=void 0;var t=o(pe()),n=Ea(),r=Yu(),a=yl(),i=["children","className","draggableOpts","width","height","handle","handleSize","lockAspectRatio","axis","minConstraints","maxConstraints","onResize","onResizeStop","onResizeStart","resizeHandles","transformScale"];function s(h){if(typeof WeakMap!="function")return null;var l=new WeakMap,f=new WeakMap;return(s=function(p){return p?f:l})(h)}function o(h,l){if(h&&h.__esModule)return h;if(h===null||typeof h!="object"&&typeof h!="function")return{default:h};var f=s(l);if(f&&f.has(h))return f.get(h);var m={},p=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var g in h)if(g!=="default"&&Object.prototype.hasOwnProperty.call(h,g)){var d=p?Object.getOwnPropertyDescriptor(h,g):null;d&&(d.get||d.set)?Object.defineProperty(m,g,d):m[g]=h[g]}return m.default=h,f&&f.set(h,m),m}function c(){return c=Object.assign?Object.assign.bind():function(h){for(var l=1;l<arguments.length;l++){var f=arguments[l];for(var m in f)Object.prototype.hasOwnProperty.call(f,m)&&(h[m]=f[m])}return h},c.apply(this,arguments)}function y(h,l){if(h==null)return{};var f={},m=Object.keys(h),p,g;for(g=0;g<m.length;g++)p=m[g],!(l.indexOf(p)>=0)&&(f[p]=h[p]);return f}function b(h,l){var f=Object.keys(h);if(Object.getOwnPropertySymbols){var m=Object.getOwnPropertySymbols(h);l&&(m=m.filter(function(p){return Object.getOwnPropertyDescriptor(h,p).enumerable})),f.push.apply(f,m)}return f}function C(h){for(var l=1;l<arguments.length;l++){var f=arguments[l]!=null?arguments[l]:{};l%2?b(Object(f),!0).forEach(function(m){_(h,m,f[m])}):Object.getOwnPropertyDescriptors?Object.defineProperties(h,Object.getOwnPropertyDescriptors(f)):b(Object(f)).forEach(function(m){Object.defineProperty(h,m,Object.getOwnPropertyDescriptor(f,m))})}return h}function _(h,l,f){return l=S(l),l in h?Object.defineProperty(h,l,{value:f,enumerable:!0,configurable:!0,writable:!0}):h[l]=f,h}function S(h){var l=P(h,"string");return typeof l=="symbol"?l:String(l)}function P(h,l){if(typeof h!="object"||h===null)return h;var f=h[Symbol.toPrimitive];if(f!==void 0){var m=f.call(h,l);if(typeof m!="object")return m;throw new TypeError("@@toPrimitive must return a primitive value.")}return(l==="string"?String:Number)(h)}function w(h,l){h.prototype=Object.create(l.prototype),h.prototype.constructor=h,v(h,l)}function v(h,l){return v=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(m,p){return m.__proto__=p,m},v(h,l)}var u=function(h){w(l,h);function l(){for(var m,p=arguments.length,g=new Array(p),d=0;d<p;d++)g[d]=arguments[d];return m=h.call.apply(h,[this].concat(g))||this,m.handleRefs={},m.lastHandleRect=null,m.slack=null,m}var f=l.prototype;return f.componentWillUnmount=function(){this.resetData()},f.resetData=function(){this.lastHandleRect=this.slack=null},f.runConstraints=function(p,g){var d=this.props,j=d.minConstraints,O=d.maxConstraints,D=d.lockAspectRatio;if(!j&&!O&&!D)return[p,g];if(D){var q=this.props.width/this.props.height,N=p-this.props.width,T=g-this.props.height;Math.abs(N)>Math.abs(T*q)?g=p/q:p=g*q}var I=p,F=g,B=this.slack||[0,0],V=B[0],J=B[1];return p+=V,g+=J,j&&(p=Math.max(j[0],p),g=Math.max(j[1],g)),O&&(p=Math.min(O[0],p),g=Math.min(O[1],g)),this.slack=[V+(I-p),J+(F-g)],[p,g]},f.resizeHandler=function(p,g){var d=this;return function(j,O){var D=O.node,q=O.deltaX,N=O.deltaY;p==="onResizeStart"&&d.resetData();var T=(d.props.axis==="both"||d.props.axis==="x")&&g!=="n"&&g!=="s",I=(d.props.axis==="both"||d.props.axis==="y")&&g!=="e"&&g!=="w";if(!(!T&&!I)){var F=g[0],B=g[g.length-1],V=D.getBoundingClientRect();if(d.lastHandleRect!=null){if(B==="w"){var J=V.left-d.lastHandleRect.left;q+=J}if(F==="n"){var Q=V.top-d.lastHandleRect.top;N+=Q}}d.lastHandleRect=V,B==="w"&&(q=-q),F==="n"&&(N=-N);var Y=d.props.width+(T?q/d.props.transformScale:0),te=d.props.height+(I?N/d.props.transformScale:0),re=d.runConstraints(Y,te);Y=re[0],te=re[1];var se=Y!==d.props.width||te!==d.props.height,ue=typeof d.props[p]=="function"?d.props[p]:null,oe=p==="onResize"&&!se;ue&&!oe&&(j.persist==null||j.persist(),ue(j,{node:D,size:{width:Y,height:te},handle:g})),p==="onResizeStop"&&d.resetData()}}},f.renderResizeHandle=function(p,g){var d=this.props.handle;if(!d)return t.createElement("span",{className:"react-resizable-handle react-resizable-handle-"+p,ref:g});if(typeof d=="function")return d(p,g);var j=typeof d.type=="string",O=C({ref:g},j?{}:{handleAxis:p});return t.cloneElement(d,O)},f.render=function(){var p=this,g=this.props,d=g.children,j=g.className,O=g.draggableOpts;g.width,g.height,g.handle,g.handleSize,g.lockAspectRatio,g.axis,g.minConstraints,g.maxConstraints,g.onResize,g.onResizeStop,g.onResizeStart;var D=g.resizeHandles;g.transformScale;var q=y(g,i);return(0,r.cloneElement)(d,C(C({},q),{},{className:(j?j+" ":"")+"react-resizable",children:[].concat(d.props.children,D.map(function(N){var T,I=(T=p.handleRefs[N])!=null?T:p.handleRefs[N]=t.createRef();return t.createElement(n.DraggableCore,c({},O,{nodeRef:I,key:"resizableHandle-"+N,onStop:p.resizeHandler("onResizeStop",N),onStart:p.resizeHandler("onResizeStart",N),onDrag:p.resizeHandler("onResize",N)}),p.renderResizeHandle(N,I))}))}))},l}(t.Component);return tt.default=u,u.propTypes=a.resizableProps,u.defaultProps={axis:"both",handleSize:[20,20],lockAspectRatio:!1,minConstraints:[20,20],maxConstraints:[1/0,1/0],resizeHandles:["se"],transformScale:1},tt}var nt={},fs;function Ku(){if(fs)return nt;fs=1,nt.__esModule=!0,nt.default=void 0;var t=c(pe()),n=s(Te()),r=s(bl()),a=yl(),i=["handle","handleSize","onResize","onResizeStart","onResizeStop","draggableOpts","minConstraints","maxConstraints","lockAspectRatio","axis","width","height","resizeHandles","style","transformScale"];function s(l){return l&&l.__esModule?l:{default:l}}function o(l){if(typeof WeakMap!="function")return null;var f=new WeakMap,m=new WeakMap;return(o=function(g){return g?m:f})(l)}function c(l,f){if(l&&l.__esModule)return l;if(l===null||typeof l!="object"&&typeof l!="function")return{default:l};var m=o(f);if(m&&m.has(l))return m.get(l);var p={},g=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var d in l)if(d!=="default"&&Object.prototype.hasOwnProperty.call(l,d)){var j=g?Object.getOwnPropertyDescriptor(l,d):null;j&&(j.get||j.set)?Object.defineProperty(p,d,j):p[d]=l[d]}return p.default=l,m&&m.set(l,p),p}function y(){return y=Object.assign?Object.assign.bind():function(l){for(var f=1;f<arguments.length;f++){var m=arguments[f];for(var p in m)Object.prototype.hasOwnProperty.call(m,p)&&(l[p]=m[p])}return l},y.apply(this,arguments)}function b(l,f){var m=Object.keys(l);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(l);f&&(p=p.filter(function(g){return Object.getOwnPropertyDescriptor(l,g).enumerable})),m.push.apply(m,p)}return m}function C(l){for(var f=1;f<arguments.length;f++){var m=arguments[f]!=null?arguments[f]:{};f%2?b(Object(m),!0).forEach(function(p){_(l,p,m[p])}):Object.getOwnPropertyDescriptors?Object.defineProperties(l,Object.getOwnPropertyDescriptors(m)):b(Object(m)).forEach(function(p){Object.defineProperty(l,p,Object.getOwnPropertyDescriptor(m,p))})}return l}function _(l,f,m){return f=S(f),f in l?Object.defineProperty(l,f,{value:m,enumerable:!0,configurable:!0,writable:!0}):l[f]=m,l}function S(l){var f=P(l,"string");return typeof f=="symbol"?f:String(f)}function P(l,f){if(typeof l!="object"||l===null)return l;var m=l[Symbol.toPrimitive];if(m!==void 0){var p=m.call(l,f);if(typeof p!="object")return p;throw new TypeError("@@toPrimitive must return a primitive value.")}return(f==="string"?String:Number)(l)}function w(l,f){if(l==null)return{};var m={},p=Object.keys(l),g,d;for(d=0;d<p.length;d++)g=p[d],!(f.indexOf(g)>=0)&&(m[g]=l[g]);return m}function v(l,f){l.prototype=Object.create(f.prototype),l.prototype.constructor=l,u(l,f)}function u(l,f){return u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(p,g){return p.__proto__=g,p},u(l,f)}var h=function(l){v(f,l);function f(){for(var p,g=arguments.length,d=new Array(g),j=0;j<g;j++)d[j]=arguments[j];return p=l.call.apply(l,[this].concat(d))||this,p.state={width:p.props.width,height:p.props.height,propsWidth:p.props.width,propsHeight:p.props.height},p.onResize=function(O,D){var q=D.size;p.props.onResize?(O.persist==null||O.persist(),p.setState(q,function(){return p.props.onResize&&p.props.onResize(O,D)})):p.setState(q)},p}f.getDerivedStateFromProps=function(g,d){return d.propsWidth!==g.width||d.propsHeight!==g.height?{width:g.width,height:g.height,propsWidth:g.width,propsHeight:g.height}:null};var m=f.prototype;return m.render=function(){var g=this.props,d=g.handle,j=g.handleSize;g.onResize;var O=g.onResizeStart,D=g.onResizeStop,q=g.draggableOpts,N=g.minConstraints,T=g.maxConstraints,I=g.lockAspectRatio,F=g.axis;g.width,g.height;var B=g.resizeHandles,V=g.style,J=g.transformScale,Q=w(g,i);return t.createElement(r.default,{axis:F,draggableOpts:q,handle:d,handleSize:j,height:this.state.height,lockAspectRatio:I,maxConstraints:T,minConstraints:N,onResizeStart:O,onResize:this.onResize,onResizeStop:D,resizeHandles:B,transformScale:J,width:this.state.width},t.createElement("div",y({},Q,{style:C(C({},V),{},{width:this.state.width+"px",height:this.state.height+"px"})})))},f}(t.Component);return nt.default=h,h.propTypes=C(C({},a.resizableProps),{},{children:n.default.element}),nt}var ps;function Xu(){return ps||(ps=1,et.exports=function(){throw new Error("Don't instantiate Resizable directly! Use require('react-resizable').Resizable")},et.exports.Resizable=bl().default,et.exports.ResizableBox=Ku().default),et.exports}var _e={},gs;function xl(){if(gs)return _e;gs=1,Object.defineProperty(_e,"__esModule",{value:!0}),_e.resizeHandleType=_e.resizeHandleAxesType=_e.default=void 0;var t=r(Te()),n=r(pe());function r(s){return s&&s.__esModule?s:{default:s}}const a=_e.resizeHandleAxesType=t.default.arrayOf(t.default.oneOf(["s","w","e","n","sw","nw","se","ne"])),i=_e.resizeHandleType=t.default.oneOfType([t.default.node,t.default.func]);return _e.default={className:t.default.string,style:t.default.object,width:t.default.number,autoSize:t.default.bool,cols:t.default.number,draggableCancel:t.default.string,draggableHandle:t.default.string,verticalCompact:function(s){s.verticalCompact},compactType:t.default.oneOf(["vertical","horizontal"]),layout:function(s){var o=s.layout;o!==void 0&&Ke().validateLayout(o,"layout")},margin:t.default.arrayOf(t.default.number),containerPadding:t.default.arrayOf(t.default.number),rowHeight:t.default.number,maxRows:t.default.number,isBounded:t.default.bool,isDraggable:t.default.bool,isResizable:t.default.bool,allowOverlap:t.default.bool,preventCollision:t.default.bool,useCSSTransforms:t.default.bool,transformScale:t.default.number,isDroppable:t.default.bool,resizeHandles:a,resizeHandle:i,onLayoutChange:t.default.func,onDragStart:t.default.func,onDrag:t.default.func,onDragStop:t.default.func,onResizeStart:t.default.func,onResize:t.default.func,onResizeStop:t.default.func,onDrop:t.default.func,droppingItem:t.default.shape({i:t.default.string.isRequired,w:t.default.number.isRequired,h:t.default.number.isRequired}),children:function(s,o){const c=s[o],y={};n.default.Children.forEach(c,function(b){if(b?.key!=null){if(y[b.key])throw new Error('Duplicate child key "'+b.key+'" found! This will cause problems in ReactGridLayout.');y[b.key]=!0}})},innerRef:t.default.any},_e}var ms;function Vu(){if(ms)return Je;ms=1,Object.defineProperty(Je,"__esModule",{value:!0}),Je.default=void 0;var t=b(pe()),n=Pa(),r=b(Te()),a=Ea(),i=Xu(),s=Ke(),o=Da(),c=xl(),y=b(Nt());function b(w){return w&&w.__esModule?w:{default:w}}function C(w,v,u){return(v=_(v))in w?Object.defineProperty(w,v,{value:u,enumerable:!0,configurable:!0,writable:!0}):w[v]=u,w}function _(w){var v=S(w,"string");return typeof v=="symbol"?v:v+""}function S(w,v){if(typeof w!="object"||!w)return w;var u=w[Symbol.toPrimitive];if(u!==void 0){var h=u.call(w,v);if(typeof h!="object")return h;throw new TypeError("@@toPrimitive must return a primitive value.")}return(v==="string"?String:Number)(w)}let P=class extends t.default.Component{constructor(){super(...arguments),C(this,"state",{resizing:null,dragging:null,className:""}),C(this,"elementRef",t.default.createRef()),C(this,"onDragStart",(v,u)=>{let{node:h}=u;const{onDragStart:l,transformScale:f}=this.props;if(!l)return;const m={top:0,left:0},{offsetParent:p}=h;if(!p)return;const g=p.getBoundingClientRect(),d=h.getBoundingClientRect(),j=d.left/f,O=g.left/f,D=d.top/f,q=g.top/f;m.left=j-O+p.scrollLeft,m.top=D-q+p.scrollTop,this.setState({dragging:m});const{x:N,y:T}=(0,o.calcXY)(this.getPositionParams(),m.top,m.left,this.props.w,this.props.h);return l.call(this,this.props.i,N,T,{e:v,node:h,newPosition:m})}),C(this,"onDrag",(v,u,h)=>{let{node:l,deltaX:f,deltaY:m}=u;const{onDrag:p}=this.props;if(!p)return;if(!this.state.dragging)throw new Error("onDrag called before onDragStart.");let g=this.state.dragging.top+m,d=this.state.dragging.left+f;const{isBounded:j,i:O,w:D,h:q,containerWidth:N}=this.props,T=this.getPositionParams();if(j){const{offsetParent:V}=l;if(V){const{margin:J,rowHeight:Q}=this.props,Y=V.clientHeight-(0,o.calcGridItemWHPx)(q,Q,J[1]);g=(0,o.clamp)(g,0,Y);const te=(0,o.calcGridColWidth)(T),re=N-(0,o.calcGridItemWHPx)(D,te,J[0]);d=(0,o.clamp)(d,0,re)}}const I={top:g,left:d};h?this.setState({dragging:I}):(0,n.flushSync)(()=>{this.setState({dragging:I})});const{x:F,y:B}=(0,o.calcXY)(T,g,d,D,q);return p.call(this,O,F,B,{e:v,node:l,newPosition:I})}),C(this,"onDragStop",(v,u)=>{let{node:h}=u;const{onDragStop:l}=this.props;if(!l)return;if(!this.state.dragging)throw new Error("onDragEnd called before onDragStart.");const{w:f,h:m,i:p}=this.props,{left:g,top:d}=this.state.dragging,j={top:d,left:g};this.setState({dragging:null});const{x:O,y:D}=(0,o.calcXY)(this.getPositionParams(),d,g,f,m);return l.call(this,p,O,D,{e:v,node:h,newPosition:j})}),C(this,"onResizeStop",(v,u,h)=>this.onResizeHandler(v,u,h,"onResizeStop")),C(this,"onResizeStart",(v,u,h)=>this.onResizeHandler(v,u,h,"onResizeStart")),C(this,"onResize",(v,u,h)=>this.onResizeHandler(v,u,h,"onResize"))}shouldComponentUpdate(v,u){if(this.props.children!==v.children||this.props.droppingPosition!==v.droppingPosition)return!0;const h=(0,o.calcGridItemPosition)(this.getPositionParams(this.props),this.props.x,this.props.y,this.props.w,this.props.h,this.state),l=(0,o.calcGridItemPosition)(this.getPositionParams(v),v.x,v.y,v.w,v.h,u);return!(0,s.fastPositionEqual)(h,l)||this.props.useCSSTransforms!==v.useCSSTransforms}componentDidMount(){this.moveDroppingItem({})}componentDidUpdate(v){this.moveDroppingItem(v)}moveDroppingItem(v){const{droppingPosition:u}=this.props;if(!u)return;const h=this.elementRef.current;if(!h)return;const l=v.droppingPosition||{left:0,top:0},{dragging:f}=this.state,m=f&&u.left!==l.left||u.top!==l.top;if(!f)this.onDragStart(u.e,{node:h,deltaX:u.left,deltaY:u.top});else if(m){const p=u.left-f.left,g=u.top-f.top;this.onDrag(u.e,{node:h,deltaX:p,deltaY:g},!0)}}getPositionParams(){let v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.props;return{cols:v.cols,containerPadding:v.containerPadding,containerWidth:v.containerWidth,margin:v.margin,maxRows:v.maxRows,rowHeight:v.rowHeight}}createStyle(v){const{usePercentages:u,containerWidth:h,useCSSTransforms:l}=this.props;let f;return l?f=(0,s.setTransform)(v):(f=(0,s.setTopLeft)(v),u&&(f.left=(0,s.perc)(v.left/h),f.width=(0,s.perc)(v.width/h))),f}mixinDraggable(v,u){return t.default.createElement(a.DraggableCore,{disabled:!u,onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop,handle:this.props.handle,cancel:".react-resizable-handle"+(this.props.cancel?","+this.props.cancel:""),scale:this.props.transformScale,nodeRef:this.elementRef},v)}curryResizeHandler(v,u){return(h,l)=>u(h,l,v)}mixinResizable(v,u,h){const{cols:l,minW:f,minH:m,maxW:p,maxH:g,transformScale:d,resizeHandles:j,resizeHandle:O}=this.props,D=this.getPositionParams(),q=(0,o.calcGridItemPosition)(D,0,0,l,0).width,N=(0,o.calcGridItemPosition)(D,0,0,f,m),T=(0,o.calcGridItemPosition)(D,0,0,p,g),I=[N.width,N.height],F=[Math.min(T.width,q),Math.min(T.height,1/0)];return t.default.createElement(i.Resizable,{draggableOpts:{disabled:!h},className:h?void 0:"react-resizable-hide",width:u.width,height:u.height,minConstraints:I,maxConstraints:F,onResizeStop:this.curryResizeHandler(u,this.onResizeStop),onResizeStart:this.curryResizeHandler(u,this.onResizeStart),onResize:this.curryResizeHandler(u,this.onResize),transformScale:d,resizeHandles:j,handle:O},v)}onResizeHandler(v,u,h,l){let{node:f,size:m,handle:p}=u;const g=this.props[l];if(!g)return;const{x:d,y:j,i:O,maxH:D,minH:q,containerWidth:N}=this.props,{minW:T,maxW:I}=this.props;let F=m;f&&(F=(0,s.resizeItemInDirection)(p,h,m,N),(0,n.flushSync)(()=>{this.setState({resizing:l==="onResizeStop"?null:F})}));let{w:B,h:V}=(0,o.calcWH)(this.getPositionParams(),F.width,F.height,d,j,p);B=(0,o.clamp)(B,Math.max(T,1),I),V=(0,o.clamp)(V,q,D),g.call(this,O,B,V,{e:v,node:f,size:F,handle:p})}render(){const{x:v,y:u,w:h,h:l,isDraggable:f,isResizable:m,droppingPosition:p,useCSSTransforms:g}=this.props,d=(0,o.calcGridItemPosition)(this.getPositionParams(),v,u,h,l,this.state),j=t.default.Children.only(this.props.children);let O=t.default.cloneElement(j,{ref:this.elementRef,className:(0,y.default)("react-grid-item",j.props.className,this.props.className,{static:this.props.static,resizing:!!this.state.resizing,"react-draggable":f,"react-draggable-dragging":!!this.state.dragging,dropping:!!p,cssTransforms:g}),style:{...this.props.style,...j.props.style,...this.createStyle(d)}});return O=this.mixinResizable(O,d,m),O=this.mixinDraggable(O,f),O}};return Je.default=P,C(P,"propTypes",{children:r.default.element,cols:r.default.number.isRequired,containerWidth:r.default.number.isRequired,rowHeight:r.default.number.isRequired,margin:r.default.array.isRequired,maxRows:r.default.number.isRequired,containerPadding:r.default.array.isRequired,x:r.default.number.isRequired,y:r.default.number.isRequired,w:r.default.number.isRequired,h:r.default.number.isRequired,minW:function(w,v){const u=w[v];if(typeof u!="number")return new Error("minWidth not Number");if(u>w.w||u>w.maxW)return new Error("minWidth larger than item width/maxWidth")},maxW:function(w,v){const u=w[v];if(typeof u!="number")return new Error("maxWidth not Number");if(u<w.w||u<w.minW)return new Error("maxWidth smaller than item width/minWidth")},minH:function(w,v){const u=w[v];if(typeof u!="number")return new Error("minHeight not Number");if(u>w.h||u>w.maxH)return new Error("minHeight larger than item height/maxHeight")},maxH:function(w,v){const u=w[v];if(typeof u!="number")return new Error("maxHeight not Number");if(u<w.h||u<w.minH)return new Error("maxHeight smaller than item height/minHeight")},i:r.default.string.isRequired,resizeHandles:c.resizeHandleAxesType,resizeHandle:c.resizeHandleType,onDragStop:r.default.func,onDragStart:r.default.func,onDrag:r.default.func,onResizeStop:r.default.func,onResizeStart:r.default.func,onResize:r.default.func,isDraggable:r.default.bool.isRequired,isResizable:r.default.bool.isRequired,isBounded:r.default.bool.isRequired,static:r.default.bool,useCSSTransforms:r.default.bool.isRequired,transformScale:r.default.number,className:r.default.string,handle:r.default.string,cancel:r.default.string,droppingPosition:r.default.shape({e:r.default.object.isRequired,left:r.default.number.isRequired,top:r.default.number.isRequired})}),C(P,"defaultProps",{className:"",cancel:"",handle:"",minH:1,minW:1,maxH:1/0,maxW:1/0,transformScale:1}),Je}var vs;function _l(){if(vs)return Ve;vs=1,Object.defineProperty(Ve,"__esModule",{value:!0}),Ve.default=void 0;var t=y(pe()),n=qa(),r=c(Nt()),a=Ke(),i=Da(),s=c(Vu()),o=c(xl());function c(v){return v&&v.__esModule?v:{default:v}}function y(v,u){if(typeof WeakMap=="function")var h=new WeakMap,l=new WeakMap;return(y=function(f,m){if(!m&&f&&f.__esModule)return f;var p,g,d={__proto__:null,default:f};if(f===null||typeof f!="object"&&typeof f!="function")return d;if(p=m?l:h){if(p.has(f))return p.get(f);p.set(f,d)}for(const j in f)j!=="default"&&{}.hasOwnProperty.call(f,j)&&((g=(p=Object.defineProperty)&&Object.getOwnPropertyDescriptor(f,j))&&(g.get||g.set)?p(d,j,g):d[j]=f[j]);return d})(v,u)}function b(v,u,h){return(u=C(u))in v?Object.defineProperty(v,u,{value:h,enumerable:!0,configurable:!0,writable:!0}):v[u]=h,v}function C(v){var u=_(v,"string");return typeof u=="symbol"?u:u+""}function _(v,u){if(typeof v!="object"||!v)return v;var h=v[Symbol.toPrimitive];if(h!==void 0){var l=h.call(v,u);if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(u==="string"?String:Number)(v)}const S="react-grid-layout";let P=!1;try{P=/firefox/i.test(navigator.userAgent)}catch{}let w=class extends t.Component{constructor(){super(...arguments),b(this,"state",{activeDrag:null,layout:(0,a.synchronizeLayoutWithChildren)(this.props.layout,this.props.children,this.props.cols,(0,a.compactType)(this.props),this.props.allowOverlap),mounted:!1,oldDragItem:null,oldLayout:null,oldResizeItem:null,resizing:!1,droppingDOMNode:null,children:[]}),b(this,"dragEnterCounter",0),b(this,"onDragStart",(u,h,l,f)=>{let{e:m,node:p}=f;const{layout:g}=this.state,d=(0,a.getLayoutItem)(g,u);if(!d)return;const j={w:d.w,h:d.h,x:d.x,y:d.y,placeholder:!0,i:u};return this.setState({oldDragItem:(0,a.cloneLayoutItem)(d),oldLayout:g,activeDrag:j}),this.props.onDragStart(g,d,d,null,m,p)}),b(this,"onDrag",(u,h,l,f)=>{let{e:m,node:p}=f;const{oldDragItem:g}=this.state;let{layout:d}=this.state;const{cols:j,allowOverlap:O,preventCollision:D}=this.props,q=(0,a.getLayoutItem)(d,u);if(!q)return;const N={w:q.w,h:q.h,x:q.x,y:q.y,placeholder:!0,i:u};d=(0,a.moveElement)(d,q,h,l,!0,D,(0,a.compactType)(this.props),j,O),this.props.onDrag(d,g,q,N,m,p),this.setState({layout:O?d:(0,a.compact)(d,(0,a.compactType)(this.props),j),activeDrag:N})}),b(this,"onDragStop",(u,h,l,f)=>{let{e:m,node:p}=f;if(!this.state.activeDrag)return;const{oldDragItem:g}=this.state;let{layout:d}=this.state;const{cols:j,preventCollision:O,allowOverlap:D}=this.props,q=(0,a.getLayoutItem)(d,u);if(!q)return;d=(0,a.moveElement)(d,q,h,l,!0,O,(0,a.compactType)(this.props),j,D);const T=D?d:(0,a.compact)(d,(0,a.compactType)(this.props),j);this.props.onDragStop(T,g,q,null,m,p);const{oldLayout:I}=this.state;this.setState({activeDrag:null,layout:T,oldDragItem:null,oldLayout:null}),this.onLayoutMaybeChanged(T,I)}),b(this,"onResizeStart",(u,h,l,f)=>{let{e:m,node:p}=f;const{layout:g}=this.state,d=(0,a.getLayoutItem)(g,u);d&&(this.setState({oldResizeItem:(0,a.cloneLayoutItem)(d),oldLayout:this.state.layout,resizing:!0}),this.props.onResizeStart(g,d,d,null,m,p))}),b(this,"onResize",(u,h,l,f)=>{let{e:m,node:p,size:g,handle:d}=f;const{oldResizeItem:j}=this.state,{layout:O}=this.state,{cols:D,preventCollision:q,allowOverlap:N}=this.props;let T=!1,I,F,B;const[V,J]=(0,a.withLayoutItem)(O,u,Y=>{let te;return F=Y.x,B=Y.y,["sw","w","nw","n","ne"].indexOf(d)!==-1&&(["sw","nw","w"].indexOf(d)!==-1&&(F=Y.x+(Y.w-h),h=Y.x!==F&&F<0?Y.w:h,F=F<0?0:F),["ne","n","nw"].indexOf(d)!==-1&&(B=Y.y+(Y.h-l),l=Y.y!==B&&B<0?Y.h:l,B=B<0?0:B),T=!0),q&&!N&&(te=(0,a.getAllCollisions)(O,{...Y,w:h,h:l,x:F,y:B}).filter(se=>se.i!==Y.i).length>0,te&&(B=Y.y,l=Y.h,F=Y.x,h=Y.w,T=!1)),Y.w=h,Y.h=l,Y});if(!J)return;I=V,T&&(I=(0,a.moveElement)(V,J,F,B,!0,this.props.preventCollision,(0,a.compactType)(this.props),D,N));const Q={w:J.w,h:J.h,x:J.x,y:J.y,static:!0,i:u};this.props.onResize(I,j,J,Q,m,p),this.setState({layout:N?I:(0,a.compact)(I,(0,a.compactType)(this.props),D),activeDrag:Q})}),b(this,"onResizeStop",(u,h,l,f)=>{let{e:m,node:p}=f;const{layout:g,oldResizeItem:d}=this.state,{cols:j,allowOverlap:O}=this.props,D=(0,a.getLayoutItem)(g,u),q=O?g:(0,a.compact)(g,(0,a.compactType)(this.props),j);this.props.onResizeStop(q,d,D,null,m,p);const{oldLayout:N}=this.state;this.setState({activeDrag:null,layout:q,oldResizeItem:null,oldLayout:null,resizing:!1}),this.onLayoutMaybeChanged(q,N)}),b(this,"onDragOver",u=>{if(u.preventDefault(),u.stopPropagation(),P&&!u.nativeEvent.target?.classList.contains(S))return!1;const{droppingItem:h,onDropDragOver:l,margin:f,cols:m,rowHeight:p,maxRows:g,width:d,containerPadding:j,transformScale:O}=this.props,D=l?.(u);if(D===!1)return this.state.droppingDOMNode&&this.removeDroppingPlaceholder(),!1;const q={...h,...D},{layout:N}=this.state,T=u.currentTarget.getBoundingClientRect(),I=u.clientX-T.left,F=u.clientY-T.top,B={left:I/O,top:F/O,e:u};if(this.state.droppingDOMNode){if(this.state.droppingPosition){const{left:V,top:J}=this.state.droppingPosition;(V!=I||J!=F)&&this.setState({droppingPosition:B})}}else{const V={cols:m,margin:f,maxRows:g,rowHeight:p,containerWidth:d,containerPadding:j||f},J=(0,i.calcXY)(V,F,I,q.w,q.h);this.setState({droppingDOMNode:t.createElement("div",{key:q.i}),droppingPosition:B,layout:[...N,{...q,x:J.x,y:J.y,static:!1,isDraggable:!0}]})}}),b(this,"removeDroppingPlaceholder",()=>{const{droppingItem:u,cols:h}=this.props,{layout:l}=this.state,f=(0,a.compact)(l.filter(m=>m.i!==u.i),(0,a.compactType)(this.props),h,this.props.allowOverlap);this.setState({layout:f,droppingDOMNode:null,activeDrag:null,droppingPosition:void 0})}),b(this,"onDragLeave",u=>{u.preventDefault(),u.stopPropagation(),this.dragEnterCounter--,this.dragEnterCounter===0&&this.removeDroppingPlaceholder()}),b(this,"onDragEnter",u=>{u.preventDefault(),u.stopPropagation(),this.dragEnterCounter++}),b(this,"onDrop",u=>{u.preventDefault(),u.stopPropagation();const{droppingItem:h}=this.props,{layout:l}=this.state,f=l.find(m=>m.i===h.i);this.dragEnterCounter=0,this.removeDroppingPlaceholder(),this.props.onDrop(l,f,u)})}componentDidMount(){this.setState({mounted:!0}),this.onLayoutMaybeChanged(this.state.layout,this.props.layout)}static getDerivedStateFromProps(u,h){let l;return h.activeDrag?null:(!(0,n.deepEqual)(u.layout,h.propsLayout)||u.compactType!==h.compactType?l=u.layout:(0,a.childrenEqual)(u.children,h.children)||(l=h.layout),l?{layout:(0,a.synchronizeLayoutWithChildren)(l,u.children,u.cols,(0,a.compactType)(u),u.allowOverlap),compactType:u.compactType,children:u.children,propsLayout:u.layout}:null)}shouldComponentUpdate(u,h){return this.props.children!==u.children||!(0,a.fastRGLPropsEqual)(this.props,u,n.deepEqual)||this.state.activeDrag!==h.activeDrag||this.state.mounted!==h.mounted||this.state.droppingPosition!==h.droppingPosition}componentDidUpdate(u,h){if(!this.state.activeDrag){const l=this.state.layout,f=h.layout;this.onLayoutMaybeChanged(l,f)}}containerHeight(){if(!this.props.autoSize)return;const u=(0,a.bottom)(this.state.layout),h=this.props.containerPadding?this.props.containerPadding[1]:this.props.margin[1];return u*this.props.rowHeight+(u-1)*this.props.margin[1]+h*2+"px"}onLayoutMaybeChanged(u,h){h||(h=this.state.layout),(0,n.deepEqual)(h,u)||this.props.onLayoutChange(u)}placeholder(){const{activeDrag:u}=this.state;if(!u)return null;const{width:h,cols:l,margin:f,containerPadding:m,rowHeight:p,maxRows:g,useCSSTransforms:d,transformScale:j}=this.props;return t.createElement(s.default,{w:u.w,h:u.h,x:u.x,y:u.y,i:u.i,className:`react-grid-placeholder ${this.state.resizing?"placeholder-resizing":""}`,containerWidth:h,cols:l,margin:f,containerPadding:m||f,maxRows:g,rowHeight:p,isDraggable:!1,isResizable:!1,isBounded:!1,useCSSTransforms:d,transformScale:j},t.createElement("div",null))}processGridItem(u,h){if(!u||!u.key)return;const l=(0,a.getLayoutItem)(this.state.layout,String(u.key));if(!l)return null;const{width:f,cols:m,margin:p,containerPadding:g,rowHeight:d,maxRows:j,isDraggable:O,isResizable:D,isBounded:q,useCSSTransforms:N,transformScale:T,draggableCancel:I,draggableHandle:F,resizeHandles:B,resizeHandle:V}=this.props,{mounted:J,droppingPosition:Q}=this.state,Y=typeof l.isDraggable=="boolean"?l.isDraggable:!l.static&&O,te=typeof l.isResizable=="boolean"?l.isResizable:!l.static&&D,re=l.resizeHandles||B,se=Y&&q&&l.isBounded!==!1;return t.createElement(s.default,{containerWidth:f,cols:m,margin:p,containerPadding:g||p,maxRows:j,rowHeight:d,cancel:I,handle:F,onDragStop:this.onDragStop,onDragStart:this.onDragStart,onDrag:this.onDrag,onResizeStart:this.onResizeStart,onResize:this.onResize,onResizeStop:this.onResizeStop,isDraggable:Y,isResizable:te,isBounded:se,useCSSTransforms:N&&J,usePercentages:!J,transformScale:T,w:l.w,h:l.h,x:l.x,y:l.y,i:l.i,minH:l.minH,minW:l.minW,maxH:l.maxH,maxW:l.maxW,static:l.static,droppingPosition:h?Q:void 0,resizeHandles:re,resizeHandle:V},u)}render(){const{className:u,style:h,isDroppable:l,innerRef:f}=this.props,m=(0,r.default)(S,u),p={height:this.containerHeight(),...h};return t.createElement("div",{ref:f,className:m,style:p,onDrop:l?this.onDrop:a.noop,onDragLeave:l?this.onDragLeave:a.noop,onDragEnter:l?this.onDragEnter:a.noop,onDragOver:l?this.onDragOver:a.noop},t.Children.map(this.props.children,g=>this.processGridItem(g)),l&&this.state.droppingDOMNode&&this.processGridItem(this.state.droppingDOMNode,!0),this.placeholder())}};return Ve.default=w,b(w,"displayName","ReactGridLayout"),b(w,"propTypes",o.default),b(w,"defaultProps",{autoSize:!0,cols:12,className:"",style:{},draggableHandle:"",draggableCancel:"",containerPadding:null,rowHeight:150,maxRows:1/0,layout:[],margin:[10,10],isBounded:!1,isDraggable:!0,isResizable:!0,allowOverlap:!1,isDroppable:!1,useCSSTransforms:!0,transformScale:1,verticalCompact:!0,compactType:"vertical",preventCollision:!1,droppingItem:{i:"__dropping-elem__",h:1,w:1},resizeHandles:["se"],onLayoutChange:a.noop,onDragStart:a.noop,onDrag:a.noop,onDragStop:a.noop,onResizeStart:a.noop,onResize:a.noop,onResizeStop:a.noop,onDrop:a.noop,onDropDragOver:a.noop}),Ve}var at={},Le={},ys;function wl(){if(ys)return Le;ys=1,Object.defineProperty(Le,"__esModule",{value:!0}),Le.findOrGenerateResponsiveLayout=a,Le.getBreakpointFromWidth=n,Le.getColsFromBreakpoint=r,Le.sortBreakpoints=i;var t=Ke();function n(s,o){const c=i(s);let y=c[0];for(let b=1,C=c.length;b<C;b++){const _=c[b];o>s[_]&&(y=_)}return y}function r(s,o){if(!o[s])throw new Error("ResponsiveReactGridLayout: `cols` entry for breakpoint "+s+" is missing!");return o[s]}function a(s,o,c,y,b,C){if(s[c])return(0,t.cloneLayout)(s[c]);let _=s[y];const S=i(o),P=S.slice(S.indexOf(c));for(let w=0,v=P.length;w<v;w++){const u=P[w];if(s[u]){_=s[u];break}}return _=(0,t.cloneLayout)(_||[]),(0,t.compact)((0,t.correctBounds)(_,{cols:b}),C,b)}function i(s){return Object.keys(s).sort(function(c,y){return s[c]-s[y]})}return Le}var bs;function Ju(){if(bs)return at;bs=1,Object.defineProperty(at,"__esModule",{value:!0}),at.default=void 0;var t=c(pe()),n=o(Te()),r=qa(),a=Ke(),i=wl(),s=o(_l());function o(v){return v&&v.__esModule?v:{default:v}}function c(v,u){if(typeof WeakMap=="function")var h=new WeakMap,l=new WeakMap;return(c=function(f,m){if(!m&&f&&f.__esModule)return f;var p,g,d={__proto__:null,default:f};if(f===null||typeof f!="object"&&typeof f!="function")return d;if(p=m?l:h){if(p.has(f))return p.get(f);p.set(f,d)}for(const j in f)j!=="default"&&{}.hasOwnProperty.call(f,j)&&((g=(p=Object.defineProperty)&&Object.getOwnPropertyDescriptor(f,j))&&(g.get||g.set)?p(d,j,g):d[j]=f[j]);return d})(v,u)}function y(){return y=Object.assign?Object.assign.bind():function(v){for(var u=1;u<arguments.length;u++){var h=arguments[u];for(var l in h)({}).hasOwnProperty.call(h,l)&&(v[l]=h[l])}return v},y.apply(null,arguments)}function b(v,u,h){return(u=C(u))in v?Object.defineProperty(v,u,{value:h,enumerable:!0,configurable:!0,writable:!0}):v[u]=h,v}function C(v){var u=_(v,"string");return typeof u=="symbol"?u:u+""}function _(v,u){if(typeof v!="object"||!v)return v;var h=v[Symbol.toPrimitive];if(h!==void 0){var l=h.call(v,u);if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(u==="string"?String:Number)(v)}const S=v=>Object.prototype.toString.call(v);function P(v,u){return v==null?null:Array.isArray(v)?v:v[u]}let w=class extends t.Component{constructor(){super(...arguments),b(this,"state",this.generateInitialState()),b(this,"onLayoutChange",u=>{this.props.onLayoutChange(u,{...this.props.layouts,[this.state.breakpoint]:u})})}generateInitialState(){const{width:u,breakpoints:h,layouts:l,cols:f}=this.props,m=(0,i.getBreakpointFromWidth)(h,u),p=(0,i.getColsFromBreakpoint)(m,f),g=this.props.verticalCompact===!1?null:this.props.compactType;return{layout:(0,i.findOrGenerateResponsiveLayout)(l,h,m,m,p,g),breakpoint:m,cols:p}}static getDerivedStateFromProps(u,h){if(!(0,r.deepEqual)(u.layouts,h.layouts)){const{breakpoint:l,cols:f}=h;return{layout:(0,i.findOrGenerateResponsiveLayout)(u.layouts,u.breakpoints,l,l,f,u.compactType),layouts:u.layouts}}return null}componentDidUpdate(u){(this.props.width!=u.width||this.props.breakpoint!==u.breakpoint||!(0,r.deepEqual)(this.props.breakpoints,u.breakpoints)||!(0,r.deepEqual)(this.props.cols,u.cols))&&this.onWidthChange(u)}onWidthChange(u){const{breakpoints:h,cols:l,layouts:f,compactType:m}=this.props,p=this.props.breakpoint||(0,i.getBreakpointFromWidth)(this.props.breakpoints,this.props.width),g=this.state.breakpoint,d=(0,i.getColsFromBreakpoint)(p,l),j={...f};if(g!==p||u.breakpoints!==h||u.cols!==l){g in j||(j[g]=(0,a.cloneLayout)(this.state.layout));let q=(0,i.findOrGenerateResponsiveLayout)(j,h,p,g,d,m);q=(0,a.synchronizeLayoutWithChildren)(q,this.props.children,d,m,this.props.allowOverlap),j[p]=q,this.props.onBreakpointChange(p,d),this.props.onLayoutChange(q,j),this.setState({breakpoint:p,layout:q,cols:d})}const O=P(this.props.margin,p),D=P(this.props.containerPadding,p);this.props.onWidthChange(this.props.width,O,d,D)}render(){const{breakpoint:u,breakpoints:h,cols:l,layouts:f,margin:m,containerPadding:p,onBreakpointChange:g,onLayoutChange:d,onWidthChange:j,...O}=this.props;return t.createElement(s.default,y({},O,{margin:P(m,this.state.breakpoint),containerPadding:P(p,this.state.breakpoint),onLayoutChange:this.onLayoutChange,layout:this.state.layout,cols:this.state.cols}))}};return at.default=w,b(w,"propTypes",{breakpoint:n.default.string,breakpoints:n.default.object,allowOverlap:n.default.bool,cols:n.default.object,margin:n.default.oneOfType([n.default.array,n.default.object]),containerPadding:n.default.oneOfType([n.default.array,n.default.object]),layouts(v,u){if(S(v[u])!=="[object Object]")throw new Error("Layout property must be an object. Received: "+S(v[u]));Object.keys(v[u]).forEach(h=>{if(!(h in v.breakpoints))throw new Error("Each key in layouts must align with a key in breakpoints.");(0,a.validateLayout)(v.layouts[h],"layouts."+h)})},width:n.default.number.isRequired,onBreakpointChange:n.default.func,onLayoutChange:n.default.func,onWidthChange:n.default.func}),b(w,"defaultProps",{breakpoints:{lg:1200,md:996,sm:768,xs:480,xxs:0},cols:{lg:12,md:10,sm:6,xs:4,xxs:2},containerPadding:{lg:null,md:null,sm:null,xs:null,xxs:null},layouts:{},margin:[10,10],allowOverlap:!1,onBreakpointChange:a.noop,onLayoutChange:a.noop,onWidthChange:a.noop}),at}var gt={},jl=function(){if(typeof Map<"u")return Map;function t(n,r){var a=-1;return n.some(function(i,s){return i[0]===r?(a=s,!0):!1}),a}return function(){function n(){this.__entries__=[]}return Object.defineProperty(n.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),n.prototype.get=function(r){var a=t(this.__entries__,r),i=this.__entries__[a];return i&&i[1]},n.prototype.set=function(r,a){var i=t(this.__entries__,r);~i?this.__entries__[i][1]=a:this.__entries__.push([r,a])},n.prototype.delete=function(r){var a=this.__entries__,i=t(a,r);~i&&a.splice(i,1)},n.prototype.has=function(r){return!!~t(this.__entries__,r)},n.prototype.clear=function(){this.__entries__.splice(0)},n.prototype.forEach=function(r,a){a===void 0&&(a=null);for(var i=0,s=this.__entries__;i<s.length;i++){var o=s[i];r.call(a,o[1],o[0])}},n}()}(),xa=typeof window<"u"&&typeof document<"u"&&window.document===document,St=function(){return typeof global<"u"&&global.Math===Math?global:typeof self<"u"&&self.Math===Math?self:typeof window<"u"&&window.Math===Math?window:Function("return this")()}(),Zu=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(St):function(t){return setTimeout(function(){return t(Date.now())},1e3/60)}}(),Qu=2;function ec(t,n){var r=!1,a=!1,i=0;function s(){r&&(r=!1,t()),a&&c()}function o(){Zu(s)}function c(){var y=Date.now();if(r){if(y-i<Qu)return;a=!0}else r=!0,a=!1,setTimeout(o,n);i=y}return c}var tc=20,rc=["top","right","bottom","left","width","height","size","weight"],nc=typeof MutationObserver<"u",ac=function(){function t(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=ec(this.refresh.bind(this),tc)}return t.prototype.addObserver=function(n){~this.observers_.indexOf(n)||this.observers_.push(n),this.connected_||this.connect_()},t.prototype.removeObserver=function(n){var r=this.observers_,a=r.indexOf(n);~a&&r.splice(a,1),!r.length&&this.connected_&&this.disconnect_()},t.prototype.refresh=function(){var n=this.updateObservers_();n&&this.refresh()},t.prototype.updateObservers_=function(){var n=this.observers_.filter(function(r){return r.gatherActive(),r.hasActive()});return n.forEach(function(r){return r.broadcastActive()}),n.length>0},t.prototype.connect_=function(){!xa||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),nc?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},t.prototype.disconnect_=function(){!xa||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},t.prototype.onTransitionEnd_=function(n){var r=n.propertyName,a=r===void 0?"":r,i=rc.some(function(s){return!!~a.indexOf(s)});i&&this.refresh()},t.getInstance=function(){return this.instance_||(this.instance_=new t),this.instance_},t.instance_=null,t}(),Sl=function(t,n){for(var r=0,a=Object.keys(n);r<a.length;r++){var i=a[r];Object.defineProperty(t,i,{value:n[i],enumerable:!1,writable:!1,configurable:!0})}return t},Ye=function(t){var n=t&&t.ownerDocument&&t.ownerDocument.defaultView;return n||St},Rl=Mt(0,0,0,0);function Rt(t){return parseFloat(t)||0}function xs(t){for(var n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];return n.reduce(function(a,i){var s=t["border-"+i+"-width"];return a+Rt(s)},0)}function sc(t){for(var n=["top","right","bottom","left"],r={},a=0,i=n;a<i.length;a++){var s=i[a],o=t["padding-"+s];r[s]=Rt(o)}return r}function ic(t){var n=t.getBBox();return Mt(0,0,n.width,n.height)}function oc(t){var n=t.clientWidth,r=t.clientHeight;if(!n&&!r)return Rl;var a=Ye(t).getComputedStyle(t),i=sc(a),s=i.left+i.right,o=i.top+i.bottom,c=Rt(a.width),y=Rt(a.height);if(a.boxSizing==="border-box"&&(Math.round(c+s)!==n&&(c-=xs(a,"left","right")+s),Math.round(y+o)!==r&&(y-=xs(a,"top","bottom")+o)),!uc(t)){var b=Math.round(c+s)-n,C=Math.round(y+o)-r;Math.abs(b)!==1&&(c-=b),Math.abs(C)!==1&&(y-=C)}return Mt(i.left,i.top,c,y)}var lc=function(){return typeof SVGGraphicsElement<"u"?function(t){return t instanceof Ye(t).SVGGraphicsElement}:function(t){return t instanceof Ye(t).SVGElement&&typeof t.getBBox=="function"}}();function uc(t){return t===Ye(t).document.documentElement}function cc(t){return xa?lc(t)?ic(t):oc(t):Rl}function dc(t){var n=t.x,r=t.y,a=t.width,i=t.height,s=typeof DOMRectReadOnly<"u"?DOMRectReadOnly:Object,o=Object.create(s.prototype);return Sl(o,{x:n,y:r,width:a,height:i,top:r,right:n+a,bottom:i+r,left:n}),o}function Mt(t,n,r,a){return{x:t,y:n,width:r,height:a}}var hc=function(){function t(n){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=Mt(0,0,0,0),this.target=n}return t.prototype.isActive=function(){var n=cc(this.target);return this.contentRect_=n,n.width!==this.broadcastWidth||n.height!==this.broadcastHeight},t.prototype.broadcastRect=function(){var n=this.contentRect_;return this.broadcastWidth=n.width,this.broadcastHeight=n.height,n},t}(),fc=function(){function t(n,r){var a=dc(r);Sl(this,{target:n,contentRect:a})}return t}(),pc=function(){function t(n,r,a){if(this.activeObservations_=[],this.observations_=new jl,typeof n!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=n,this.controller_=r,this.callbackCtx_=a}return t.prototype.observe=function(n){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(n instanceof Ye(n).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(n)||(r.set(n,new hc(n)),this.controller_.addObserver(this),this.controller_.refresh())}},t.prototype.unobserve=function(n){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element>"u"||!(Element instanceof Object))){if(!(n instanceof Ye(n).Element))throw new TypeError('parameter 1 is not of type "Element".');var r=this.observations_;r.has(n)&&(r.delete(n),r.size||this.controller_.removeObserver(this))}},t.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},t.prototype.gatherActive=function(){var n=this;this.clearActive(),this.observations_.forEach(function(r){r.isActive()&&n.activeObservations_.push(r)})},t.prototype.broadcastActive=function(){if(this.hasActive()){var n=this.callbackCtx_,r=this.activeObservations_.map(function(a){return new fc(a.target,a.broadcastRect())});this.callback_.call(n,r,n),this.clearActive()}},t.prototype.clearActive=function(){this.activeObservations_.splice(0)},t.prototype.hasActive=function(){return this.activeObservations_.length>0},t}(),Cl=typeof WeakMap<"u"?new WeakMap:new jl,Pl=function(){function t(n){if(!(this instanceof t))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=ac.getInstance(),a=new pc(n,r,this);Cl.set(this,a)}return t}();["observe","unobserve","disconnect"].forEach(function(t){Pl.prototype[t]=function(){var n;return(n=Cl.get(this))[t].apply(n,arguments)}});var gc=function(){return typeof St.ResizeObserver<"u"?St.ResizeObserver:Pl}();const mc=Object.freeze(Object.defineProperty({__proto__:null,default:gc},Symbol.toStringTag,{value:"Module"})),vc=Ou(mc);var _s;function yc(){if(_s)return gt;_s=1,Object.defineProperty(gt,"__esModule",{value:!0}),gt.default=_;var t=s(pe()),n=i(Te()),r=i(vc),a=i(Nt());function i(S){return S&&S.__esModule?S:{default:S}}function s(S,P){if(typeof WeakMap=="function")var w=new WeakMap,v=new WeakMap;return(s=function(u,h){if(!h&&u&&u.__esModule)return u;var l,f,m={__proto__:null,default:u};if(u===null||typeof u!="object"&&typeof u!="function")return m;if(l=h?v:w){if(l.has(u))return l.get(u);l.set(u,m)}for(const p in u)p!=="default"&&{}.hasOwnProperty.call(u,p)&&((f=(l=Object.defineProperty)&&Object.getOwnPropertyDescriptor(u,p))&&(f.get||f.set)?l(m,p,f):m[p]=u[p]);return m})(S,P)}function o(){return o=Object.assign?Object.assign.bind():function(S){for(var P=1;P<arguments.length;P++){var w=arguments[P];for(var v in w)({}).hasOwnProperty.call(w,v)&&(S[v]=w[v])}return S},o.apply(null,arguments)}function c(S,P,w){return(P=y(P))in S?Object.defineProperty(S,P,{value:w,enumerable:!0,configurable:!0,writable:!0}):S[P]=w,S}function y(S){var P=b(S,"string");return typeof P=="symbol"?P:P+""}function b(S,P){if(typeof S!="object"||!S)return S;var w=S[Symbol.toPrimitive];if(w!==void 0){var v=w.call(S,P);if(typeof v!="object")return v;throw new TypeError("@@toPrimitive must return a primitive value.")}return(P==="string"?String:Number)(S)}const C="react-grid-layout";function _(S){var P;return P=class extends t.Component{constructor(){super(...arguments),c(this,"state",{width:1280}),c(this,"elementRef",t.createRef()),c(this,"mounted",!1),c(this,"resizeObserver",void 0)}componentDidMount(){this.mounted=!0,this.resizeObserver=new r.default(u=>{if(this.elementRef.current instanceof HTMLElement){const l=u[0].contentRect.width;this.setState({width:l})}});const v=this.elementRef.current;v instanceof HTMLElement&&this.resizeObserver.observe(v)}componentWillUnmount(){this.mounted=!1;const v=this.elementRef.current;v instanceof HTMLElement&&this.resizeObserver.unobserve(v),this.resizeObserver.disconnect()}render(){const{measureBeforeMount:v,...u}=this.props;return v&&!this.mounted?t.createElement("div",{className:(0,a.default)(this.props.className,C),style:this.props.style,ref:this.elementRef}):t.createElement(S,o({innerRef:this.elementRef},u,this.state))}},c(P,"defaultProps",{measureBeforeMount:!1}),c(P,"propTypes",{measureBeforeMount:n.default.bool}),P}return gt}var ws;function bc(){return ws||(ws=1,function(t){t.exports=_l().default,t.exports.utils=Ke(),t.exports.calculateUtils=Da(),t.exports.Responsive=Ju().default,t.exports.Responsive.utils=wl(),t.exports.WidthProvider=yc().default}(Ut)),Ut.exports}var xc=bc();const _c=Ca(xc),wc=()=>{const[t,n]=M.useState([]),[r,a]=M.useState(""),i=M.useRef(null),s=()=>{i.current&&(i.current.scrollTop=i.current.scrollHeight)};M.useEffect(()=>{const c=y=>{n(b=>{const C=[...b,y];return C.length>50?C.slice(C.length-50):C})};return Pe.on("chat",c),$e("subscribe","chat"),X("chat.recent").then(y=>{n(y.reverse())}),()=>{Pe.off("chat",c),$e("unsubscribe","chat")}},[]),M.useLayoutEffect(()=>{s()},[t]);const o=c=>{c.preventDefault(),!(r.length>140||r.length===0)&&(Jo("chat",r),a(""))};return e.jsxs("div",{className:"chat-widget",children:[e.jsx(ye,{className:"messages",ref:i,children:e.jsx("div",{className:"messages-child",children:t.map(c=>e.jsxs("div",{className:"log-entry",children:[c.action==="msg"&&e.jsxs("div",{className:"chat-message",children:[c.user?.web?"[":"",e.jsx(Bt,{color:!0,user:c.user}),c.user?.web?"]":"",":"," ",e.jsx(Wa,{as:"span",children:c.message})]}),c.action==="leave"&&e.jsxs("div",{className:"join-message",children:[e.jsx(Bt,{user:c.user})," left the game."]}),c.action==="join"&&e.jsxs("div",{className:"join-message",children:[e.jsx(Bt,{user:c.user})," joined the game",c.user?.isFirst?" for the first time":"","."]}),c.action==="server"&&e.jsx(Wa,{as:"div",className:"server-message",children:c.message})]},c._id))})}),e.jsx("form",{onSubmit:o,children:e.jsxs(Ie,{children:[e.jsx(ie,{roboto:!0,type:"text",placeholder:"Message",value:r,onChange:c=>a(c)}),e.jsx(H,{normal:!0,icon:!0,style:{marginLeft:"10px"},onClick:o,children:e.jsx(cu,{})})]})})]})},jc=()=>{const[t,n]=M.useState(null);return M.useEffect(()=>(Pe.on("server.status",n),$e("subscribe","status"),X("server.status").then(n),()=>{Pe.off("server.status",n),$e("unsubscribe","status")}),[]),e.jsxs("div",{className:"status-widget",children:[t?.players&&e.jsx(ye,{className:"players",children:e.jsxs("div",{className:"players-child",children:[e.jsxs("div",{className:"stats",children:[e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Name:"})," ",t.serverName]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Uptime:"})," ",de(t.time)]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Bricks:"})," ",t.bricks]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Players:"})," ",t.players.length]})]}),e.jsxs("table",{className:"br-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{textAlign:"left",width:"100%"},children:"Name"}),e.jsx("th",{children:"Time"}),e.jsx("th",{children:"Ping"})]})}),e.jsx("tbody",{children:t.players.map(r=>e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx(ut,{className:"user",to:"/players/"+r.id,children:r.name})}),e.jsx("td",{style:{textAlign:"right"},children:de(r.time)}),e.jsx("td",{style:{textAlign:"right"},children:r.ping})]},r.address+r.id))})]})]})}),!t?.players&&e.jsx(fe,{blur:!0,size:"huge",children:"Loading Status"})]})},Vt={chat:{component:wc,icon:hu,tooltip:"Chat with online players"},status:{component:jc,icon:Eu,tooltip:"View current online players and server status"}},js=[{x:0,y:0,w:2,h:2,i:"chat"},{x:2,y:0,w:2,h:2,i:"status"}],Sc={minW:2,maxW:10,minH:2,maxH:10},Rc=[8,8],Cc=()=>{const[t,n]=M.useState(()=>{if(localStorage.omeggaDashLayout2)try{return JSON.parse(localStorage.omeggaDashLayout2)}catch(_){return console.error("Invalid layout in localStorage, using default layout",_),js}return js});M.useEffect(()=>{localStorage.omeggaDashLayout2=JSON.stringify(t)},[t]);const r=_=>{n(t.filter(S=>S.i!==_))},a=_=>{_ in Vt&&n([...t,{x:0,y:0,w:2,h:2,i:_}])},[i,s]=M.useState(!1),o=Object.fromEntries(t.map(_=>[_.i,!0])),c=M.useCallback(_=>{n(_)},[]),y=M.useRef(null),[b,C]=M.useState(null);return M.useEffect(()=>{y.current&&C(y.current.clientWidth);const _=new ResizeObserver(S=>{for(const P of S)P.target===y.current&&C(P.contentRect.width)});return y.current&&_.observe(y.current),()=>{_.disconnect()}},[y.current]),e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"Dashboard",children:e.jsxs("div",{className:"widgets-container",children:[e.jsxs(H,{normal:!0,boxy:!0,"data-tooltip":"Add more widgets to the dashboard",onClick:()=>s(!i),children:[e.jsx(du,{}),"Widgets"]}),e.jsx("div",{className:"widgets-list",style:{display:i?"block":"none"},children:Object.entries(Vt).map(([_,S])=>e.jsxs("div",{className:"widget-item",children:[e.jsxs("div",{className:"name","data-tooltip":S.tooltip,children:[e.jsx(S.icon,{}),_]}),o[_]?e.jsx(H,{warn:!0,icon:!0,"data-tooltip":`Remove ${_} widget`,onClick:()=>r(_),children:e.jsx(dl,{})}):e.jsx(H,{main:!0,icon:!0,"data-tooltip":`Add ${_} widget`,onClick:()=>a(_),children:e.jsx(_t,{})})]},_))})]})}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsx("div",{className:"grid-container",ref:y,children:b!==null&&e.jsx(_c,{layout:t.map(_=>({..._,...Sc})),width:b,cols:10,autoSize:!0,useCSSTransforms:!0,rowHeight:100,isBounded:!0,isResizable:!0,isDraggable:!0,margin:Rc,onLayoutChange:c,draggableHandle:".drag-handle",draggableCancel:".no-drag",resizeHandles:["se"],resizeHandle:e.jsx(fu,{style:{cursor:"se-resize"},className:"resize-handle"}),children:t.map(_=>{const S=Vt[_.i].component;return e.jsxs("div",{className:"grid-item",children:[e.jsxs(Sa,{className:"drag-handle",children:[e.jsx("span",{style:{flex:1},children:_.i}),e.jsx(H,{icon:!0,error:!0,className:"no-drag","data-tooltip":"Close widget",onClick:()=>r(_.i),children:e.jsx(ct,{})})]}),e.jsx("div",{className:"drag-contents",children:e.jsx(S,{})})]},_.i)})})})]})]})},Ss={"Minute(s)":1,"Hour(s)":60,"Day(s)":24*60,"Week(s)":24*60*7,"Month(s)":24*60*30},Pc=["Permanent","Minute(s)","Hour(s)","Day(s)","Week(s)","Month(s)"],qc=()=>{const[t,n]=Ee("/players/:id"),[r,a]=Ct(),[i,s]=M.useState(null),[o,c]=M.useState(null),[y,b]=M.useState(!1),[C,_]=M.useState(""),[S,P]=M.useState(10),[w,v]=M.useState("Permanent"),[u,h]=M.useState(!0),[l,f]=M.useState(!1),m=M.useCallback(async()=>{if(!n?.id)return;h(!0);const D=await X("player.get",n.id);if(!D)return a("/players");c(D),h(!1)},[n?.id]);M.useEffect(()=>{m()},[m]);const p=async()=>{if(!o.id)return;f(!0);const D=w==="Permanent"?-1:S*Ss[w];try{await X("player.ban",o.id,D,C)}catch(q){console.error("Failed to ban player:",q)}s(null),m(),f(!1)},g=async()=>{if(o.id){f(!0);try{await X("player.kick",o.id,C)}catch(D){console.error("Failed to kick player:",D)}s(null),m(),f(!1)}},d=async()=>{if(o.id){f(!0);try{await X("player.unban",o.id)}catch(D){console.error("Failed to unban player:",D)}m(),f(!1)}},j=async()=>{if(o.id){f(!0);try{await X("player.clearbricks",o.id)}catch(D){console.error("Failed to clear bricks:",D)}f(!1),s(null)}},O=M.useMemo(()=>w==="Permanent"?"Never":su(Date.now()+Ss[w]*60*1e3*S),[w,S]);return e.jsxs("div",{className:"player-inspector-container",children:[e.jsxs(ve,{attached:!0,children:[o?.name||"SELECT A PLAYER",e.jsx("span",{style:{flex:1}}),o&&e.jsxs("div",{className:"widgets-container",children:[e.jsxs(H,{normal:!0,boxy:!0,onClick:()=>b(!y),children:[y?e.jsx(nl,{}):e.jsx(hl,{}),"User Actions"]}),e.jsxs("div",{className:"widgets-list",style:{display:y?"block":"none"},children:[e.jsxs(H,{boxy:!0,warn:!0,disabled:l,onClick:()=>{s("clear"),b(!1)},children:[e.jsx(Ba,{}),"Clear Bricks"]}),!o.isHost&&o.isOnline&&e.jsxs(H,{boxy:!0,error:!0,disabled:l,onClick:()=>{s("kick"),b(!1)},children:[e.jsx($a,{}),"Kick"]}),o.currentBan&&e.jsxs(H,{boxy:!0,warn:!0,disabled:l,onClick:()=>{d(),b(!1)},children:[e.jsx(pu,{}),"Unban"]}),!o.isHost&&e.jsxs(H,{boxy:!0,error:!0,disabled:l,onClick:()=>{s("ban"),b(!1)},children:[e.jsx(yt,{}),"Ban"]})]})]})]}),e.jsx("div",{className:"player-inspector",children:e.jsxs("div",{className:"player-view",children:[e.jsx(fe,{active:u,size:"huge",children:"Loading Player"}),e.jsx("div",{className:"player-info",children:!u&&o&&e.jsxs(ye,{children:[e.jsxs("div",{className:"stats",children:[e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Profile:"})," ",e.jsx("a",{href:"https://brickadia.com/users/"+o.id,target:"_blank",children:o.name})]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Display Name:"})," ",o.displayName??"unknown"]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Host:"})," ",o.isHost?"Yes":"No"]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Banned:"})," ",o.currentBan&&o.currentBan.duration<=0?e.jsx("span",{children:"Permanent"}):o.currentBan?e.jsxs("span",{children:[de(o.currentBan.remainingTime)," of"," ",de(o.currentBan.duration)," remaining"]}):e.jsx("span",{children:"No"})]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Number of status heartbeats this player has been part of",children:"Time Played:"})," ",tl(o.heartbeats)]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Date player was last seen",children:"Last Seen:"})," ",e.jsxs("span",{"data-tooltip":new Date(o.lastSeen),children:[de(o.seenAgo)," ago"]})]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Date player was first seen",children:"First Seen:"})," ",e.jsxs("span",{"data-tooltip":new Date(o.created),children:[de(o.createdAgo)," ago"]})]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Number of times this player has visited the server (new visits are registered if the player joins 3 hours after last seen)",children:"Visits:"})," ",o.sessions]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Number of server instances this player has joined",children:"Server Visits:"})," ",o.instances]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Bans:"})," ",o.banHistory.length]})]}),e.jsx("div",{className:"section-header","data-tooltip":"Roles this player has",children:"Roles"}),e.jsxs("div",{className:"option-list",children:[o.roles.map(D=>e.jsx("div",{className:"option-item",children:e.jsx("div",{className:"option-name",style:{color:"#"+D.color},children:D.name})},D.name)),e.jsx("div",{className:"option-item",children:e.jsx("div",{className:"option-name",style:{color:"white"},children:"Default"})})]}),e.jsx("div",{className:"section-header","data-tooltip":"Names this player has gone by historically",children:"Name History"}),e.jsxs("table",{className:"br-table name-history",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{textAlign:"left",width:"100%"},children:e.jsx("span",{children:"Name"})}),e.jsx("th",{children:"First Seen"})]})}),e.jsx("tbody",{children:o.nameHistory.map(D=>e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("div",{"data-tooltip":D.displayName?"Display Name":"Username",children:D.displayName??D.name}),D.displayName&&e.jsx("div",{"data-tooltip":"Username",className:"username",children:D.name})]}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":new Date(D.date),children:de(D.ago)})]},D.date+D.name))})]}),e.jsx("div",{className:"section-header","data-tooltip":"Times this player has been banned from the server",children:"Ban History"}),e.jsxs("table",{className:"br-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{width:"100%",textAlign:"left"},children:"Reason"}),e.jsx("th",{children:"Length"}),e.jsx("th",{children:"Issuer"}),e.jsx("th",{children:"Date"})]})}),e.jsxs("tbody",{children:[o.banHistory.length===0&&e.jsx("tr",{children:e.jsx("td",{colSpan:4,children:e.jsx("i",{children:"None"})})}),o.banHistory.map(D=>e.jsxs("tr",{children:[e.jsx("td",{className:"reason",children:D.reason}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":"Expires "+new Date(D.expires),children:0>=(D.duration??-1)?"Permanent":de(D.duration)}),e.jsx("td",{children:e.jsx(ut,{to:"/players/"+D.bannerId,children:D.bannerName||"missing name"})}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":new Date(D.created),children:Fa(D.created)})]},D.created))]})]}),e.jsx("div",{className:"section-header","data-tooltip":"Times this player has been booted from the server",children:"Kick History"}),e.jsxs("table",{className:"br-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{width:"100%",textAlign:"left"},children:"Reason"}),e.jsx("th",{children:"Issuer"}),e.jsx("th",{children:"Date"})]})}),e.jsxs("tbody",{children:[o.kickHistory.length===0&&e.jsx("tr",{children:e.jsx("td",{colSpan:4,children:e.jsx("i",{children:"None"})})}),o.kickHistory.map(D=>e.jsxs("tr",{children:[e.jsx("td",{className:"reason",children:D.reason}),e.jsx("td",{children:e.jsx(ut,{to:"/players/"+D.kickerId,children:D.kickerName||"missing name"})}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":new Date(D.created),children:Fa(D.created)})]},D.created))]})]})]})})]})}),e.jsxs(Ra,{visible:!!i,children:[e.jsx(fe,{active:l,size:"huge",children:"Running Action..."}),e.jsxs(rl,{visible:!l,children:[e.jsx(Sa,{children:i==="ban"?"Ban Player":i==="kick"?"Kick Player":"Clear Bricks"}),(i==="kick"||i==="ban")&&e.jsxs("div",{className:`popout-inputs ${i}`,children:[e.jsx(ie,{type:"text",placeholder:"Reason",value:C,onChange:_}),i==="ban"&&e.jsxs("div",{className:"ban-duration",style:{display:"flex"},children:[w!=="Permanent"&&e.jsx(ie,{placeholder:"Duration",type:"number",value:S,onChange:P}),e.jsx(_a,{options:Pc,value:w,onChange:D=>v(D)})]})]}),i==="ban"&&e.jsxs(ba,{children:["This ban will expire"," ",e.jsx("span",{style:{color:"white"},children:O}),"."]}),i==="clear"&&e.jsx(ba,{children:e.jsxs("p",{style:{padding:20},children:["Are you sure you want to clear"," ",e.jsx("span",{style:{color:"white"},children:o?.name??"??"}),"'s bricks?"]})}),e.jsxs(Ie,{attached:!0,children:[i==="ban"&&e.jsxs(H,{error:!0,onClick:p,children:[e.jsx(yt,{}),"Ban"]}),i==="clear"&&e.jsxs(H,{warn:!0,onClick:j,children:[e.jsx(Ba,{}),"Clear Bricks"]}),i==="kick"&&e.jsxs(H,{error:!0,onClick:g,children:[e.jsx($a,{}),"Kick"]}),e.jsx("div",{style:{flex:1}}),e.jsxs(H,{normal:!0,onClick:()=>s(null),children:[e.jsx(ct,{}),"Cancel"]})]})]})]})]})},Dc=()=>{const[t,n]=M.useState(0),[r,a]=M.useState(0),[i,s]=M.useState(!0),[o,c]=M.useState(!1),[y,b]=M.useState([]),[C,_]=Ct(),[S,P]=Ee("/players/:id?"),w=M.useRef({page:0,search:"",sort:"lastSeen",direction:-1,filterBanned:!1}),{page:v,search:u,sort:h,direction:l,filterBanned:f}=w.current,[m,p]=M.useState(0),g=T=>{w.current.search=T,q(),p(I=>I+1)},d=T=>{typeof T=="function"&&(T=T(w.current.page)),w.current.page=T,D()},j=T=>{typeof T=="function"&&(T=T(w.current.direction)),w.current.direction=T},O=T=>{w.current.filterBanned=T,q()},D=M.useCallback(async()=>{s(!0);const{page:T,search:I,sort:F,direction:B,filterBanned:V}=w.current,{players:J,total:Q,pages:Y}=await X("players.list",{page:T,search:I,sort:F,direction:B,filter:V?"banned":""});n(Y),a(Q),b(J),s(!1)},[]);M.useEffect(()=>{D()},[]);const q=M.useMemo(()=>wa(()=>{w.current.page=0,D()},500),[]),N=T=>{T==h?j(I=>I*-1):(w.current.sort=T,j(T==="name"?1:-1)),D()};return e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"Players",className:"players-view",children:e.jsxs("div",{className:"widgets-container",children:[e.jsxs(H,{normal:!0,boxy:!0,"data-tooltip":"Player list filters",onClick:()=>c(T=>!T),children:[e.jsx(gu,{}),"Filters"]}),e.jsx("div",{className:"widgets-list",style:{display:o?"block":"none"},children:e.jsxs("div",{className:"widget-item","data-tooltip":"Filter by banned players",children:[e.jsxs("div",{className:"name",children:[e.jsx(yt,{}),"Banned"]}),e.jsx(we,{onChange:O,value:f})]})})]})}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsxs("div",{className:"generic-container players-container",children:[e.jsxs("div",{className:"player-table-container",children:[e.jsxs(ve,{attached:!0,children:[e.jsx(ie,{type:"text",placeholder:"Search Players...",value:u,onChange:g}),e.jsx("span",{style:{flex:1}}),e.jsx(H,{icon:!0,normal:!0,"data-tooltip":"Refresh player list",onClick:D,children:e.jsx(Et,{})})]}),e.jsxs("div",{className:"players-list",children:[e.jsx(ye,{children:e.jsxs("table",{className:"br-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{textAlign:"left",width:"100%"},onClick:()=>N("name"),children:e.jsxs("span",{children:["Name",e.jsx(le,{name:"name",sort:h,direction:l})]})}),e.jsx("th",{onClick:()=>N("heartbeats"),"data-tooltip":"Number of heartbeats the player has been part of (minutely)",children:e.jsxs("span",{children:["Played",e.jsx(le,{name:"heartbeats",sort:h,direction:l})]})}),e.jsx("th",{onClick:()=>N("lastSeen"),"data-tooltip":"When the player was last seen",children:e.jsxs("span",{children:["Seen",e.jsx(le,{name:"lastSeen",sort:h,direction:l})]})}),e.jsx("th",{onClick:()=>N("created"),"data-tooltip":"When the player joined",children:e.jsxs("span",{children:["Joined",e.jsx(le,{name:"created",sort:h,direction:l})]})}),e.jsx("th",{onClick:()=>N("sessions"),"data-tooltip":"Number of Visits",children:e.jsxs("span",{className:"icon-cell",children:[e.jsx(mu,{className:"label",size:"30"}),e.jsx(le,{name:"sessions",sort:h,direction:l})]})})]})}),e.jsx("tbody",{children:y.map(T=>e.jsxs("tr",{onClick:()=>_(`/players/${T.id}`),className:T.id===P?.id?"active":"",children:[e.jsx("td",{className:`player-name ${T.ban?"ban":""}`,children:e.jsxs("div",{className:"player-name-container",children:[e.jsxs("div",{children:[e.jsx("div",{"data-tooltip":T.displayName?"Display Name":"Username",children:T.displayName??T.name}),T.displayName&&e.jsx("div",{className:"username","data-tooltip":"Username",children:T.name})]}),T.ban&&e.jsx(yt,{size:"18"})]})}),e.jsx("td",{style:{textAlign:"right"},children:tl(T.heartbeats)}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":new Date(T.lastSeen),children:de(T.seenAgo)}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":new Date(T.created),children:de(T.createdAgo)}),e.jsx("td",{style:{textAlign:"right"},children:T.sessions})]},T.id))})]})}),e.jsxs(Ie,{className:"pagination-footer",children:[e.jsx(H,{icon:!0,normal:!0,disabled:v===0,onClick:()=>{d(0)},children:e.jsx(al,{})}),e.jsx(H,{icon:!0,normal:!0,disabled:v===0,onClick:()=>d(T=>Math.max(0,T-1)),children:e.jsx(vt,{})}),e.jsxs("div",{className:"current-page",children:[e.jsxs("div",{children:["Page ",v+1," of ",t]}),e.jsxs("div",{children:["Showing ",y.length," of ",r]})]}),e.jsx(H,{icon:!0,normal:!0,disabled:v>=t-1,onClick:()=>d(T=>Math.min(y.length-1,T+1)),children:e.jsx(xt,{})}),e.jsx(H,{icon:!0,normal:!0,disabled:v>=t-1,onClick:()=>d(y.length-1),children:e.jsx(sl,{})})]}),e.jsx(fe,{active:i,size:"huge",children:"Loading Players"})]})]}),e.jsxs(el,{children:[e.jsx(me,{path:"/players/:id",component:qc}),e.jsx(me,{children:e.jsxs("div",{className:"player-inspector-container","v-if":"!$route.params.id",children:[e.jsx(ve,{attached:!0,children:"SELECT A PLAYER"}),e.jsx("div",{className:"player-inspector"})]})})]})]})]})]})},Oc=(t,n)=>{try{return JSON.stringify(t)===JSON.stringify(n)}catch{return!1}},Ec=()=>{const[t,n]=Ee("/plugins/:id"),[r,a]=M.useState(null),[i,s]=M.useState({}),[o,c]=M.useState(!!r?.path),[y,b]=M.useState(!1),[C,_]=M.useState({}),S=async()=>{if(!n?.id)return;c(!0);const p=await X("plugin.get",n.id);a(p),s(p.config),c(!1)},P=async()=>{n?.id&&(b(!0),await X("plugin.load",n.id),await S(),b(!1))},w=async()=>{n?.id&&(b(!0),await X("plugin.unload",n.id),await S(),b(!1))},v=async()=>{if(!n?.id)return;b(!0),await X("plugin.unload",n.id)&&await X("plugin.load",n.id),await S(),b(!1)},u=async p=>{n?.id&&(b(!0),await X("plugin.toggle",n.id,p),await S(),b(!1))},h=M.useRef(i);h.current=i;const l=M.useRef(r);l.current=r,M.useEffect(()=>{if(!n?.id)return;l.current=null,h.current={},a(null),s({}),S();const p=([g,d])=>{g===r?.path&&a(j=>({...j,...d}))};return Pe.on("plugin",p),()=>{Pe.off("plugin",p)}},[n?.id]);const f=M.useMemo(()=>wa(async()=>{if(!n?.id||!l.current)return;const p={},g=h.current,d=l.current.path;for(const j in l.current?.config??{})l.current?.config[j]!=g[j]&&(p[j]=!0),await X("plugin.config",n?.id,g)&&(_(p),setTimeout(()=>{_({}),a(D=>D?.path===d?{...D,config:g}:D)}))},500),[n?.id]),m=(p,g)=>{!r||!i||(s(d=>({...d,[p]:g})),f())};return e.jsxs("div",{className:"plugin-view",children:[e.jsx(fe,{active:o,size:"huge",children:"Loading Plugin"}),e.jsx("div",{className:"plugin-info",children:!o&&r&&e.jsxs(ye,{children:[e.jsxs("div",{className:"stats",children:[e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Plugin name",children:"Name:"})," ",r.name]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Plugin creator",children:"Author:"})," ",r.documentation?.author??"unknown"]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{children:"Description:"})," ",r.documentation?.description??"none"]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"The folder this plugin runs in",children:"Folder:"})," ",r.path]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"The type of plugin this is",children:"Format:"})," ",r.format]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Number of objects in the plugin's storage",children:"Stored Objects:"})," ",r.objCount]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Plugin can be started",children:"Enabled:"})," ",r.isEnabled?"Yes":"No"]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Plugin is running",children:"Loaded:"})," ",r.isLoaded?"Yes":"No"]})]}),e.jsx("div",{className:"section-header","data-tooltip":"Ways to configure the plugin. Changes take place the next time a plugin is loaded.",children:"Configs"}),e.jsxs("div",{className:"option-list",children:[Object.keys(r.documentation.config??{}).length===0&&e.jsx("div",{className:"option-item",children:e.jsx("i",{className:"option-name",children:"None"})}),Object.entries(r.documentation.config??{}).map(([p,g])=>e.jsx("div",{className:"option-item config",children:e.jsxs("div",{className:"option-input",children:[e.jsxs("div",{className:"option-label","data-tooltip":g.description,children:[p,e.jsxs("span",{className:`saved-note ${C[p]?"show":""}`,children:["SAVED ",e.jsx(Tu,{size:"20"})]})]}),e.jsxs("div",{className:"option-value",children:[["string","password","number"].includes(g.type)&&e.jsx(ie,{type:g.type==="string"?"text":g.type,value:i[p],onChange:d=>m(p,d)}),g.type==="list"&&e.jsx(Yl,{options:"options"in g?g.options:void 0,type:g.itemType,value:i[p],onChange:d=>m(p,d)}),g.type==="players"&&e.jsx(Kl,{value:i[p],onChange:d=>m(p,d)}),g.type==="role"&&e.jsx(Xl,{value:i[p],onChange:d=>m(p,d)}),g.type==="enum"&&e.jsx(_a,{options:g.options,value:i[p],onChange:d=>m(p,d)}),g.type==="boolean"&&e.jsx(we,{value:i[p],onChange:d=>m(p,d)}),!Oc(g.default,i[p])&&e.jsx(vu,{onClick:()=>m(p,g.default),className:"reset-button","data-tooltip":"Reset to default value"})]})]})},p))]}),e.jsx("div",{className:"section-header","data-tooltip":"Ways to control the plugin",children:"Commands"}),e.jsxs("div",{className:"option-list",children:[(r.documentation.commands??[]).length===0&&e.jsx("div",{className:"option-item",children:e.jsx("i",{className:"option-name",children:"None"})}),(r.documentation.commands||[]).map(p=>e.jsxs("div",{className:"option-item",children:[e.jsx("div",{className:"option-name","data-tooltip":p.description,children:p.name}),e.jsx("div",{className:"option-args",children:(p.args||[]).map(g=>e.jsx("div",{className:`option-arg ${g.required?"required":""}`,"data-tooltip":(g.required?"(required) ":"")+g.description,children:g.name},g.name))})]},p.name))]})]})}),e.jsxs(Ie,{attached:!0,children:[r?.isEnabled&&!r.isLoaded&&e.jsxs(H,{main:!0,disabled:y,"data-tooltip":"Start the plugin",onClick:()=>P(),children:[e.jsx(bt,{}),"Load"]}),r?.isEnabled&&r.isLoaded&&e.jsxs(H,{warn:!0,"data-tooltip":"Stop, then start the plugin",disabled:y,onClick:()=>v(),children:[e.jsx(il,{}),"Reload"]}),e.jsx("span",{style:{flex:1}}),r?.isEnabled&&r.isLoaded&&e.jsxs(H,{error:!0,disabled:y,"data-tooltip":"Stop the plugin",onClick:()=>w(),children:[e.jsx(ol,{}),"Unload"]}),r&&!r?.isEnabled&&e.jsxs(H,{main:!0,"data-tooltip":"Allow the plugin to be started",disabled:y,onClick:()=>u(!0),children:[e.jsx(_t,{}),"Enable"]}),r?.isEnabled&&!r.isLoaded&&e.jsxs(H,{error:!0,"data-tooltip":"Prevent the plugin from being started",disabled:y,onClick:()=>u(!1),children:[e.jsx(dl,{}),"Disable"]})]})]})},Rs=t=>{const n=(t.isLoaded?2:0)+(t.isEnabled?1:0),r=["disabled","broken","bugged","running"][n],a=["Plugin is disabled","Plugin is enabled but not running","Plugin is running but not enabled","Plugin is running"][n],i=[bu,xu,_u,wu][n];return{...t,state:n,status:r,tooltip:a,icon:i}},Nc=()=>{const[t,n]=M.useState(""),[r,a]=M.useState(!0),[i,s]=M.useState(!1),[o,c]=M.useState([]),[y,b]=Ee("/plugins/:id?"),C=M.useMemo(()=>o.find(w=>w.path===b?.id)?.name??"SELECT A PLUGIN",[o,b?.id]),_=async()=>{a(!0);const w=await X("plugins.list");c(w.map(Rs)),a(!1)},S=async()=>{s(!0),await X("plugins.reload"),s(!1)},P=w=>w.name.toLowerCase().includes(t.toLowerCase());return M.useEffect(()=>{const w=([v,u])=>{const h=Rs(u);c(l=>l.map(f=>f.path===v?{...f,...h}:f))};return Pe.on("plugin",w),$e("subscribe","plugins"),_(),()=>{Pe.off("plugin",w),$e("unsubscribe","plugins")}},[]),e.jsxs(e.Fragment,{children:[e.jsxs(qe,{title:"Plugins",children:[e.jsx("span",{style:{flex:1}}),e.jsxs(H,{warn:!0,disabled:i,onClick:S,"data-tooltip":"Reload all plugins, this may clear current plugin progress",children:[e.jsx(yu,{}),"Reload Plugins"]})]}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsxs("div",{className:"generic-container plugins-container",children:[e.jsxs("div",{className:"plugins-list-container",children:[e.jsxs(ve,{children:[e.jsx(ie,{type:"text",placeholder:"Search Plugins...",value:t,onChange:w=>n(w)}),e.jsx("span",{style:{flex:1}}),e.jsx(H,{icon:!0,normal:!0,"data-tooltip":"Refresh plugin list",onClick:_,children:e.jsx(Et,{})})]}),e.jsxs("div",{className:"plugins-list",children:[e.jsx(ye,{children:o.map(w=>P(w)&&e.jsxs(ut,{href:"/plugins/"+w.path,"data-tooltip":w.documentation?.description,className:`plugin-item ${b?.id===w.path?"selected":""}`,children:[e.jsx(w.icon,{className:w.status,"data-tooltip":w.tooltip}),w.name]},w.path))}),e.jsx(fe,{active:r,size:"huge",children:"Loading Plugins"})]})]}),e.jsxs("div",{className:"plugin-inspector-container",children:[e.jsx(ve,{attached:!0,children:C}),e.jsx("div",{className:"plugin-inspector",children:e.jsx(Ec,{})})]})]})]})]})},Tc=()=>{const{started:t,stopping:n,starting:r,loading:a}=Zo(),i=mt(),[s,o]=M.useState(null),c=Ce(Qo),[y,b]=M.useState(c?.update?.lastCheck??null);M.useEffect(()=>{b(c?.update?.lastCheck??null)},[c?.update?.lastCheck]);const[C,_]=M.useState(!1),[S,P]=M.useState(!1);M.useEffect(()=>{X("server.autorestart.get").then(o)},[]);const w=c?.update?.canCheck??!1,v=M.useCallback(()=>{w&&(_(!0),X("server.updatecheck").then(m=>{b(m),_(!1)}))},[w]),u=M.useCallback(async()=>{if(!s)return;const m={type:"autoRestartConfig",maxUptime:Math.round(Math.max(1,Math.min(s.maxUptime,168))),maxUptimeEnabled:s.maxUptimeEnabled,emptyUptime:Math.round(Math.max(1,Math.min(s.emptyUptime,168))),emptyUptimeEnabled:s.emptyUptimeEnabled,dailyHour:Math.round(Math.max(0,Math.min(s.dailyHour,23))),dailyHourEnabled:s.dailyHourEnabled,announcementEnabled:s.announcementEnabled,playersEnabled:s.playersEnabled,saveWorld:s.saveWorld,autoUpdateEnabled:s.autoUpdateEnabled??!0,autoUpdateIntervalMins:Math.round(Math.max(10,Math.min(s.autoUpdateIntervalMins??60,1/0)))};Jo("server.autorestart.set",m)},[s]),h=async()=>{P(!0),await X("world.save"),P(!1)},l=Mu(u),f=m=>p=>{s&&(o(g=>({...g,[m]:p})),l.fire())};return e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"Server",children:c?.isSteam&&w!==null&&e.jsx(H,{main:!!y,normal:!y,"data-tooltip":"Check for updates",disabled:C,onClick:v,children:y===!0?e.jsxs(e.Fragment,{children:[e.jsx(ju,{}),"Update Available"]}):e.jsxs(e.Fragment,{children:[e.jsx(Su,{}),"Check for Update"]})})}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsxs("div",{className:"generic-container server-container",children:[e.jsxs(ve,{children:["Server Status:"," ",r?"starting":n?"stopping":t?"started":"stopped"]}),e.jsxs("div",{className:"buttons",children:[e.jsxs(H,{main:!0,"data-tooltip":"Start the server",disabled:r||n||a||t,onClick:()=>i.prompt("start the server").then(m=>m&&Vl()),children:[e.jsx(bt,{}),"Start"]}),e.jsxs(H,{error:!0,"data-tooltip":"Stop the server",disabled:r||n||a||!t,onClick:()=>i.prompt("stop the server").then(m=>m&&Jl()),children:[e.jsx(ol,{}),"Stop"]}),e.jsxs(H,{warn:!0,"data-tooltip":"Reloads the server's world. Saves minigames/environment/bricks if 'Save World' is enabled below.",disabled:r||n||a,onClick:()=>i.prompt("restart the server").then(m=>m&&Zl()),children:[e.jsx(il,{}),"Restart"]}),e.jsxs(H,{info:!0,"data-tooltip":"Save the current world.",disabled:r||n||a||S,onClick:h,children:[e.jsx(ll,{}),"Save World"]}),c?.isSteam&&e.jsxs(H,{normal:!y,main:y===!0,"data-tooltip":`Stop and update the server even if there are no updates available.
|
|
4
4
|
|
|
5
5
|
Does not save the world or player locations.`,disabled:r||n||a,onClick:()=>i.prompt("update the server").then(m=>m&&Ql()),children:[e.jsx(Ru,{}),"Update"]})]}),e.jsxs(ve,{attached:!0,style:{marginTop:8},children:["Auto Restart",e.jsx(Au,{show:l.status===ku.Waiting})]}),s&&e.jsxs("div",{className:"inputs-list",children:[e.jsxs("div",{className:"inputs-item","data-tooltip":"When enabled on servers setup with SteamCMD, automatically updates the server when a new version is available",children:[e.jsxs("label",{children:["Auto Update",w?"":" (Feature requires SteamCMD)"]}),e.jsxs("div",{className:"inputs",children:[e.jsx(we,{tooltip:"Enabled",value:s.autoUpdateEnabled,onChange:f("autoUpdateEnabled")}),e.jsx(ie,{type:"number",placeholder:"Minutes",tooltip:"Interval in minutes to check for updates (min 10)",value:s.autoUpdateIntervalMins,onChange:f("autoUpdateIntervalMins")})]})]}),e.jsxs("div",{className:"inputs-item","data-tooltip":"How many hours before restarting regardless of online players",children:[e.jsx("label",{children:"Max Server Uptime (Hours)"}),e.jsxs("div",{className:"inputs",children:[e.jsx(we,{tooltip:"Enabled",value:s.maxUptimeEnabled,onChange:f("maxUptimeEnabled")}),e.jsx(ie,{type:"number",placeholder:"Hours",tooltip:"Uptime Hours",value:s.maxUptime,onChange:f("maxUptime")})]})]}),e.jsxs("div",{className:"inputs-item","data-tooltip":"How many hours before restarting when no players are online",children:[e.jsx("label",{children:"Empty Server Lifetime (Hours)"}),e.jsxs("div",{className:"inputs",children:[e.jsx(we,{tooltip:"Enabled",value:s.emptyUptimeEnabled,onChange:f("emptyUptimeEnabled")}),e.jsx(ie,{type:"number",placeholder:"Hours",tooltip:"Uptime Hours",value:s.emptyUptime,onChange:f("emptyUptime")})]})]}),e.jsxs("div",{className:"inputs-item","data-tooltip":"Restart every day at a certain hour",children:[e.jsx("label",{children:"Daily at a Specific Hour"}),e.jsxs("div",{className:"inputs",children:[e.jsx(we,{tooltip:"Enabled",value:s.dailyHourEnabled,onChange:f("dailyHourEnabled")}),e.jsx(ie,{type:"number",placeholder:"Hour",tooltip:"Hour (0 = 12am, 13 = 1pm)",value:s.dailyHour,onChange:f("dailyHour")})]})]}),e.jsxs("div",{className:"inputs-item","data-tooltip":"When enabled, announces auto restart",children:[e.jsx("label",{children:"Restart Announcement"}),e.jsx("div",{className:"inputs",children:e.jsx(we,{tooltip:"Enabled",value:s.announcementEnabled,onChange:f("announcementEnabled")})})]}),e.jsxs("div",{className:"inputs-item","data-tooltip":"When enabled, reconnects players at their previous positions",children:[e.jsx("label",{children:"Reload Players"}),e.jsx("div",{className:"inputs",children:e.jsx(we,{tooltip:"Enabled",value:s.playersEnabled,onChange:f("playersEnabled")})})]}),e.jsxs("div",{className:"inputs-item","data-tooltip":"When enabled, saves the current world. The default world will be loaded on restart",children:[e.jsx("label",{children:"Save World"}),e.jsx("div",{className:"inputs",children:e.jsx(we,{tooltip:"Enabled",value:s.saveWorld??!0,onChange:f("saveWorld")})})]})]}),i.children]})]})]})},Mc=()=>{const t=Ce(Qo)?.userless,n=Ce(eu),[r,a]=M.useState(0),[i,s]=M.useState(0),[o,c]=M.useState(!0),[y,b]=M.useState([]),[C,_]=M.useState(""),[S,P]=M.useState(""),[w,v]=M.useState(""),[u,h]=M.useState(""),[l,f]=M.useState(!1),[m,p]=M.useState(!1),[g,d]=M.useState(!1),[j,O]=Ct(),[D,q]=Ee("/users/:id?"),N=M.useRef({page:0,search:"",sort:"lastSeen",direction:-1}),{page:T,search:I,sort:F,direction:B}=N.current,[V,J]=M.useState(0),Q=x=>{N.current.search=x,ue(),J(R=>R+1)},Y=x=>{typeof x=="function"&&(x=x(N.current.page)),N.current.page=x,re()},te=x=>{typeof x=="function"&&(x=x(N.current.direction)),N.current.direction=x},re=async()=>{c(!0);const{page:x,search:R,sort:E,direction:k}=N.current,{users:W,total:L,pages:G}=await X("users.list",{page:x,search:R,sort:E,direction:k});a(G),s(L),b(W),c(!1)},se=M.useRef(re);se.current=re,M.useEffect(()=>{re()},[]);const ue=M.useMemo(()=>wa(()=>{N.current.page=0,se.current?.()},500),[]),oe=x=>{x==F?te(R=>R*-1):(N.current.sort=x,te(x==="name"?1:-1)),re()},Me=()=>{p(!m),f(!1),P(""),_("")},Ae=()=>{f(!l),p(!1),t||P(n?.username??""),_("")},A=()=>{p(!1),f(!1),P(""),_(""),v(""),h("")},z=async()=>{if(_(""),w!==u)return;d(!0);let x="";try{if(l&&!t?x=await X("users.passwd",n?.username,w):x=await X("users.create",S,w),d(!1),!x){l&&t?iu():A();return}}catch(R){console.error("error setting user credentials",R)}_(x)},$=M.useMemo(()=>{const x=S.length!==0||!(l&&!t);return S.match(/^\w{0,32}$/)&&x&&w.length!==0},[S,w,l,t]);return e.jsxs(e.Fragment,{children:[e.jsxs(qe,{title:"Users",children:[e.jsx("span",{style:{flex:1}}),e.jsx(H,{normal:!0,"data-tooltip":t?"Enable user sign-in":"Change password",onClick:Ae,children:t?e.jsxs(e.Fragment,{children:[e.jsx(Cu,{}),"Enable Users"]}):e.jsxs(e.Fragment,{children:[e.jsx(Ua,{}),"Change Password"]})}),!t&&n?.isOwner&&e.jsxs(H,{normal:!0,onClick:Me,"data-tooltip":"Add a new user",children:[e.jsx(Ga,{}),"Add User"]})]}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsxs("div",{className:"generic-container players-container",children:[e.jsxs("div",{className:"player-table-container",children:[e.jsxs(ve,{attached:!0,children:[e.jsx(ie,{type:"text",placeholder:"Search Users...",value:I,onChange:Q}),e.jsx("span",{style:{flex:1}}),e.jsx(H,{icon:!0,normal:!0,"data-tooltip":"Refresh user list",onClick:re,children:e.jsx(Et,{})})]}),e.jsxs("div",{className:"players-list",children:[e.jsx(ye,{children:e.jsxs("table",{className:"br-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{textAlign:"left",width:"100%"},onClick:()=>oe("username"),children:e.jsxs("span",{children:["Username",e.jsx(le,{name:"username",sort:F,direction:B})]})}),e.jsx("th",{onClick:()=>oe("lastOnline"),"data-tooltip":"When the user was last active",children:e.jsxs("span",{children:["Active",e.jsx(le,{name:"lastOnline",sort:F,direction:B})]})}),e.jsx("th",{onClick:()=>oe("created"),"data-tooltip":"When the user joined",children:e.jsxs("span",{children:["Joined",e.jsx(le,{name:"created",sort:F,direction:B})]})})]})}),e.jsx("tbody",{children:y.map(x=>e.jsxs("tr",{onClick:()=>O(`/users/${x.username}`),className:x.username===q?.id?"active":"",children:[e.jsxs("td",{children:[x.username||"Admin"," ",(x.username||"Admin")===(n?.username||"Admin")&&e.jsx("span",{style:{fontSize:12},children:"(You)"})]}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":x.lastOnline?new Date(x.lastOnline):"Never",children:x.lastOnline?de(x.seenAgo):"Never"}),e.jsx("td",{style:{textAlign:"right"},"data-tooltip":new Date(x.created),children:de(x.createdAgo)})]},x.username))})]})}),e.jsxs(Ie,{className:"pagination-footer",children:[e.jsx(H,{icon:!0,normal:!0,disabled:T===0,onClick:()=>{Y(0)},children:e.jsx(al,{})}),e.jsx(H,{icon:!0,normal:!0,disabled:T===0,onClick:()=>Y(x=>Math.max(0,x-1)),children:e.jsx(vt,{})}),e.jsxs("div",{className:"current-page",children:[e.jsxs("div",{children:["Page ",T+1," of ",r]}),e.jsxs("div",{children:["Showing ",y.length," of ",i]})]}),e.jsx(H,{icon:!0,normal:!0,disabled:T>=r-1,onClick:()=>Y(x=>Math.min(y.length-1,x+1)),children:e.jsx(xt,{})}),e.jsx(H,{icon:!0,normal:!0,disabled:T>=r-1,onClick:()=>Y(y.length-1),children:e.jsx(sl,{})})]}),e.jsx(fe,{active:o,size:"huge",children:"Loading Users"})]})]}),e.jsxs(Ra,{visible:l||m,children:[e.jsx(fe,{active:g,size:"huge",children:"Submitting"}),e.jsxs(rl,{visible:!g,children:[e.jsx(Sa,{children:m?"Create New User":"Update Credentials"}),e.jsxs(ba,{children:[t&&e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"This will require you to enter a password when you sign in."}),e.jsx("p",{children:"This action cannot be undone."})]}),!t&&l&&e.jsxs("p",{children:['Updating credentials for user "',S,'""']}),m&&e.jsx("p",{children:"Creating a new user. It's recommended to create a temporary password."}),C&&e.jsxs("p",{style:{color:"red"},children:["Error: ",C]})]}),e.jsxs("div",{className:"popout-inputs",children:[(t||m)&&e.jsx(ie,{placeholder:"username",type:"text",value:S,onChange:x=>P(x)}),e.jsx(ie,{placeholder:"password",type:"password",value:w,onChange:x=>v(x)}),e.jsx(ie,{placeholder:"confirm password",type:"password",value:u,onChange:x=>h(x)})]}),e.jsxs(Ie,{children:[e.jsxs(H,{main:!0,disabled:!$||u!==w,onClick:()=>z(),children:[m&&e.jsx(Ga,{}),!m&&e.jsx(Ua,{}),m?"Add":"Update"]}),e.jsx("div",{style:{flex:1}}),e.jsxs(H,{normal:!0,onClick:A,children:[e.jsx(ct,{}),"Cancel"]})]})]})]})]})]})]})},Ue=fl(null),Ge=fl(null);var Jt,Cs;function Ac(){if(Cs)return Jt;Cs=1;var t=Math.ceil,n=Math.max;function r(a,i,s,o){for(var c=-1,y=n(t((i-a)/(s||1)),0),b=Array(y);y--;)b[o?y:++c]=a,a+=s;return b}return Jt=r,Jt}var Zt,Ps;function Na(){if(Ps)return Zt;Ps=1;function t(n,r){return n===r||n!==n&&r!==r}return Zt=t,Zt}var Qt,qs;function ql(){if(qs)return Qt;qs=1;var t=Pt(),n=qt(),r="[object AsyncFunction]",a="[object Function]",i="[object GeneratorFunction]",s="[object Proxy]";function o(c){if(!n(c))return!1;var y=t(c);return y==a||y==i||y==r||y==s}return Qt=o,Qt}var er,Ds;function Ta(){if(Ds)return er;Ds=1;var t=9007199254740991;function n(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=t}return er=n,er}var tr,Os;function At(){if(Os)return tr;Os=1;var t=ql(),n=Ta();function r(a){return a!=null&&n(a.length)&&!t(a)}return tr=r,tr}var rr,Es;function Ma(){if(Es)return rr;Es=1;var t=9007199254740991,n=/^(?:0|[1-9]\d*)$/;function r(a,i){var s=typeof a;return i=i??t,!!i&&(s=="number"||s!="symbol"&&n.test(a))&&a>-1&&a%1==0&&a<i}return rr=r,rr}var nr,Ns;function Dl(){if(Ns)return nr;Ns=1;var t=Na(),n=At(),r=Ma(),a=qt();function i(s,o,c){if(!a(c))return!1;var y=typeof o;return(y=="number"?n(c)&&r(o,c.length):y=="string"&&o in c)?t(c[o],s):!1}return nr=i,nr}var ar,Ts;function kc(){if(Ts)return ar;Ts=1;var t=ou(),n=1/0,r=17976931348623157e292;function a(i){if(!i)return i===0?i:0;if(i=t(i),i===n||i===-n){var s=i<0?-1:1;return s*r}return i===i?i:0}return ar=a,ar}var sr,Ms;function zc(){if(Ms)return sr;Ms=1;var t=Ac(),n=Dl(),r=kc();function a(i){return function(s,o,c){return c&&typeof c!="number"&&n(s,o,c)&&(o=c=void 0),s=r(s),o===void 0?(o=s,s=0):o=r(o),c=c===void 0?s<o?1:-1:r(c),t(s,o,c,i)}}return sr=a,sr}var ir,As;function Lc(){if(As)return ir;As=1;var t=zc(),n=t();return ir=n,ir}var Ic=Lc();const ks=Ca(Ic);var or,zs;function Ol(){if(zs)return or;zs=1;function t(n,r){for(var a=-1,i=r.length,s=n.length;++a<i;)n[s+a]=r[a];return n}return or=t,or}var lr,Ls;function Hc(){if(Ls)return lr;Ls=1;var t=Pt(),n=Dt(),r="[object Arguments]";function a(i){return n(i)&&t(i)==r}return lr=a,lr}var ur,Is;function Aa(){if(Is)return ur;Is=1;var t=Hc(),n=Dt(),r=Object.prototype,a=r.hasOwnProperty,i=r.propertyIsEnumerable,s=t(function(){return arguments}())?t:function(o){return n(o)&&a.call(o,"callee")&&!i.call(o,"callee")};return ur=s,ur}var cr,Hs;function be(){if(Hs)return cr;Hs=1;var t=Array.isArray;return cr=t,cr}var dr,Ws;function Wc(){if(Ws)return dr;Ws=1;var t=ja(),n=Aa(),r=be(),a=t?t.isConcatSpreadable:void 0;function i(s){return r(s)||n(s)||!!(a&&s&&s[a])}return dr=i,dr}var hr,Fs;function Fc(){if(Fs)return hr;Fs=1;var t=Ol(),n=Wc();function r(a,i,s,o,c){var y=-1,b=a.length;for(s||(s=n),c||(c=[]);++y<b;){var C=a[y];i>0&&s(C)?i>1?r(C,i-1,s,o,c):t(c,C):o||(c[c.length]=C)}return c}return hr=r,hr}var fr,Bs;function El(){if(Bs)return fr;Bs=1;function t(n,r){for(var a=-1,i=n==null?0:n.length,s=Array(i);++a<i;)s[a]=r(n[a],a,n);return s}return fr=t,fr}var pr,Us;function ka(){if(Us)return pr;Us=1;var t=be(),n=Ot(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;function i(s,o){if(t(s))return!1;var c=typeof s;return c=="number"||c=="symbol"||c=="boolean"||s==null||n(s)?!0:a.test(s)||!r.test(s)||o!=null&&s in Object(o)}return pr=i,pr}var gr,Gs;function Bc(){if(Gs)return gr;Gs=1;var t=Ne(),n=t["__core-js_shared__"];return gr=n,gr}var mr,$s;function Uc(){if($s)return mr;$s=1;var t=Bc(),n=function(){var a=/[^.]+$/.exec(t&&t.keys&&t.keys.IE_PROTO||"");return a?"Symbol(src)_1."+a:""}();function r(a){return!!n&&n in a}return mr=r,mr}var vr,Ys;function Nl(){if(Ys)return vr;Ys=1;var t=Function.prototype,n=t.toString;function r(a){if(a!=null){try{return n.call(a)}catch{}try{return a+""}catch{}}return""}return vr=r,vr}var yr,Ks;function Gc(){if(Ks)return yr;Ks=1;var t=ql(),n=Uc(),r=qt(),a=Nl(),i=/[\\^$.*+?()[\]{}|]/g,s=/^\[object .+?Constructor\]$/,o=Function.prototype,c=Object.prototype,y=o.toString,b=c.hasOwnProperty,C=RegExp("^"+y.call(b).replace(i,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function _(S){if(!r(S)||n(S))return!1;var P=t(S)?C:s;return P.test(a(S))}return yr=_,yr}var br,Xs;function $c(){if(Xs)return br;Xs=1;function t(n,r){return n?.[r]}return br=t,br}var xr,Vs;function He(){if(Vs)return xr;Vs=1;var t=Gc(),n=$c();function r(a,i){var s=n(a,i);return t(s)?s:void 0}return xr=r,xr}var _r,Js;function kt(){if(Js)return _r;Js=1;var t=He(),n=t(Object,"create");return _r=n,_r}var wr,Zs;function Yc(){if(Zs)return wr;Zs=1;var t=kt();function n(){this.__data__=t?t(null):{},this.size=0}return wr=n,wr}var jr,Qs;function Kc(){if(Qs)return jr;Qs=1;function t(n){var r=this.has(n)&&delete this.__data__[n];return this.size-=r?1:0,r}return jr=t,jr}var Sr,ei;function Xc(){if(ei)return Sr;ei=1;var t=kt(),n="__lodash_hash_undefined__",r=Object.prototype,a=r.hasOwnProperty;function i(s){var o=this.__data__;if(t){var c=o[s];return c===n?void 0:c}return a.call(o,s)?o[s]:void 0}return Sr=i,Sr}var Rr,ti;function Vc(){if(ti)return Rr;ti=1;var t=kt(),n=Object.prototype,r=n.hasOwnProperty;function a(i){var s=this.__data__;return t?s[i]!==void 0:r.call(s,i)}return Rr=a,Rr}var Cr,ri;function Jc(){if(ri)return Cr;ri=1;var t=kt(),n="__lodash_hash_undefined__";function r(a,i){var s=this.__data__;return this.size+=this.has(a)?0:1,s[a]=t&&i===void 0?n:i,this}return Cr=r,Cr}var Pr,ni;function Zc(){if(ni)return Pr;ni=1;var t=Yc(),n=Kc(),r=Xc(),a=Vc(),i=Jc();function s(o){var c=-1,y=o==null?0:o.length;for(this.clear();++c<y;){var b=o[c];this.set(b[0],b[1])}}return s.prototype.clear=t,s.prototype.delete=n,s.prototype.get=r,s.prototype.has=a,s.prototype.set=i,Pr=s,Pr}var qr,ai;function Qc(){if(ai)return qr;ai=1;function t(){this.__data__=[],this.size=0}return qr=t,qr}var Dr,si;function zt(){if(si)return Dr;si=1;var t=Na();function n(r,a){for(var i=r.length;i--;)if(t(r[i][0],a))return i;return-1}return Dr=n,Dr}var Or,ii;function ed(){if(ii)return Or;ii=1;var t=zt(),n=Array.prototype,r=n.splice;function a(i){var s=this.__data__,o=t(s,i);if(o<0)return!1;var c=s.length-1;return o==c?s.pop():r.call(s,o,1),--this.size,!0}return Or=a,Or}var Er,oi;function td(){if(oi)return Er;oi=1;var t=zt();function n(r){var a=this.__data__,i=t(a,r);return i<0?void 0:a[i][1]}return Er=n,Er}var Nr,li;function rd(){if(li)return Nr;li=1;var t=zt();function n(r){return t(this.__data__,r)>-1}return Nr=n,Nr}var Tr,ui;function nd(){if(ui)return Tr;ui=1;var t=zt();function n(r,a){var i=this.__data__,s=t(i,r);return s<0?(++this.size,i.push([r,a])):i[s][1]=a,this}return Tr=n,Tr}var Mr,ci;function Lt(){if(ci)return Mr;ci=1;var t=Qc(),n=ed(),r=td(),a=rd(),i=nd();function s(o){var c=-1,y=o==null?0:o.length;for(this.clear();++c<y;){var b=o[c];this.set(b[0],b[1])}}return s.prototype.clear=t,s.prototype.delete=n,s.prototype.get=r,s.prototype.has=a,s.prototype.set=i,Mr=s,Mr}var Ar,di;function za(){if(di)return Ar;di=1;var t=He(),n=Ne(),r=t(n,"Map");return Ar=r,Ar}var kr,hi;function ad(){if(hi)return kr;hi=1;var t=Zc(),n=Lt(),r=za();function a(){this.size=0,this.__data__={hash:new t,map:new(r||n),string:new t}}return kr=a,kr}var zr,fi;function sd(){if(fi)return zr;fi=1;function t(n){var r=typeof n;return r=="string"||r=="number"||r=="symbol"||r=="boolean"?n!=="__proto__":n===null}return zr=t,zr}var Lr,pi;function It(){if(pi)return Lr;pi=1;var t=sd();function n(r,a){var i=r.__data__;return t(a)?i[typeof a=="string"?"string":"hash"]:i.map}return Lr=n,Lr}var Ir,gi;function id(){if(gi)return Ir;gi=1;var t=It();function n(r){var a=t(this,r).delete(r);return this.size-=a?1:0,a}return Ir=n,Ir}var Hr,mi;function od(){if(mi)return Hr;mi=1;var t=It();function n(r){return t(this,r).get(r)}return Hr=n,Hr}var Wr,vi;function ld(){if(vi)return Wr;vi=1;var t=It();function n(r){return t(this,r).has(r)}return Wr=n,Wr}var Fr,yi;function ud(){if(yi)return Fr;yi=1;var t=It();function n(r,a){var i=t(this,r),s=i.size;return i.set(r,a),this.size+=i.size==s?0:1,this}return Fr=n,Fr}var Br,bi;function La(){if(bi)return Br;bi=1;var t=ad(),n=id(),r=od(),a=ld(),i=ud();function s(o){var c=-1,y=o==null?0:o.length;for(this.clear();++c<y;){var b=o[c];this.set(b[0],b[1])}}return s.prototype.clear=t,s.prototype.delete=n,s.prototype.get=r,s.prototype.has=a,s.prototype.set=i,Br=s,Br}var Ur,xi;function cd(){if(xi)return Ur;xi=1;var t=La(),n="Expected a function";function r(a,i){if(typeof a!="function"||i!=null&&typeof i!="function")throw new TypeError(n);var s=function(){var o=arguments,c=i?i.apply(this,o):o[0],y=s.cache;if(y.has(c))return y.get(c);var b=a.apply(this,o);return s.cache=y.set(c,b)||y,b};return s.cache=new(r.Cache||t),s}return r.Cache=t,Ur=r,Ur}var Gr,_i;function dd(){if(_i)return Gr;_i=1;var t=cd(),n=500;function r(a){var i=t(a,function(o){return s.size===n&&s.clear(),o}),s=i.cache;return i}return Gr=r,Gr}var $r,wi;function hd(){if(wi)return $r;wi=1;var t=dd(),n=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,r=/\\(\\)?/g,a=t(function(i){var s=[];return i.charCodeAt(0)===46&&s.push(""),i.replace(n,function(o,c,y,b){s.push(y?b.replace(r,"$1"):c||o)}),s});return $r=a,$r}var Yr,ji;function fd(){if(ji)return Yr;ji=1;var t=ja(),n=El(),r=be(),a=Ot(),i=t?t.prototype:void 0,s=i?i.toString:void 0;function o(c){if(typeof c=="string")return c;if(r(c))return n(c,o)+"";if(a(c))return s?s.call(c):"";var y=c+"";return y=="0"&&1/c==-1/0?"-0":y}return Yr=o,Yr}var Kr,Si;function pd(){if(Si)return Kr;Si=1;var t=fd();function n(r){return r==null?"":t(r)}return Kr=n,Kr}var Xr,Ri;function Tl(){if(Ri)return Xr;Ri=1;var t=be(),n=ka(),r=hd(),a=pd();function i(s,o){return t(s)?s:n(s,o)?[s]:r(a(s))}return Xr=i,Xr}var Vr,Ci;function Ht(){if(Ci)return Vr;Ci=1;var t=Ot();function n(r){if(typeof r=="string"||t(r))return r;var a=r+"";return a=="0"&&1/r==-1/0?"-0":a}return Vr=n,Vr}var Jr,Pi;function Ia(){if(Pi)return Jr;Pi=1;var t=Tl(),n=Ht();function r(a,i){i=t(i,a);for(var s=0,o=i.length;a!=null&&s<o;)a=a[n(i[s++])];return s&&s==o?a:void 0}return Jr=r,Jr}var Zr,qi;function gd(){if(qi)return Zr;qi=1;var t=Lt();function n(){this.__data__=new t,this.size=0}return Zr=n,Zr}var Qr,Di;function md(){if(Di)return Qr;Di=1;function t(n){var r=this.__data__,a=r.delete(n);return this.size=r.size,a}return Qr=t,Qr}var en,Oi;function vd(){if(Oi)return en;Oi=1;function t(n){return this.__data__.get(n)}return en=t,en}var tn,Ei;function yd(){if(Ei)return tn;Ei=1;function t(n){return this.__data__.has(n)}return tn=t,tn}var rn,Ni;function bd(){if(Ni)return rn;Ni=1;var t=Lt(),n=za(),r=La(),a=200;function i(s,o){var c=this.__data__;if(c instanceof t){var y=c.__data__;if(!n||y.length<a-1)return y.push([s,o]),this.size=++c.size,this;c=this.__data__=new r(y)}return c.set(s,o),this.size=c.size,this}return rn=i,rn}var nn,Ti;function Ml(){if(Ti)return nn;Ti=1;var t=Lt(),n=gd(),r=md(),a=vd(),i=yd(),s=bd();function o(c){var y=this.__data__=new t(c);this.size=y.size}return o.prototype.clear=n,o.prototype.delete=r,o.prototype.get=a,o.prototype.has=i,o.prototype.set=s,nn=o,nn}var an,Mi;function xd(){if(Mi)return an;Mi=1;var t="__lodash_hash_undefined__";function n(r){return this.__data__.set(r,t),this}return an=n,an}var sn,Ai;function _d(){if(Ai)return sn;Ai=1;function t(n){return this.__data__.has(n)}return sn=t,sn}var on,ki;function wd(){if(ki)return on;ki=1;var t=La(),n=xd(),r=_d();function a(i){var s=-1,o=i==null?0:i.length;for(this.__data__=new t;++s<o;)this.add(i[s])}return a.prototype.add=a.prototype.push=n,a.prototype.has=r,on=a,on}var ln,zi;function jd(){if(zi)return ln;zi=1;function t(n,r){for(var a=-1,i=n==null?0:n.length;++a<i;)if(r(n[a],a,n))return!0;return!1}return ln=t,ln}var un,Li;function Sd(){if(Li)return un;Li=1;function t(n,r){return n.has(r)}return un=t,un}var cn,Ii;function Al(){if(Ii)return cn;Ii=1;var t=wd(),n=jd(),r=Sd(),a=1,i=2;function s(o,c,y,b,C,_){var S=y&a,P=o.length,w=c.length;if(P!=w&&!(S&&w>P))return!1;var v=_.get(o),u=_.get(c);if(v&&u)return v==c&&u==o;var h=-1,l=!0,f=y&i?new t:void 0;for(_.set(o,c),_.set(c,o);++h<P;){var m=o[h],p=c[h];if(b)var g=S?b(p,m,h,c,o,_):b(m,p,h,o,c,_);if(g!==void 0){if(g)continue;l=!1;break}if(f){if(!n(c,function(d,j){if(!r(f,j)&&(m===d||C(m,d,y,b,_)))return f.push(j)})){l=!1;break}}else if(!(m===p||C(m,p,y,b,_))){l=!1;break}}return _.delete(o),_.delete(c),l}return cn=s,cn}var dn,Hi;function Rd(){if(Hi)return dn;Hi=1;var t=Ne(),n=t.Uint8Array;return dn=n,dn}var hn,Wi;function Cd(){if(Wi)return hn;Wi=1;function t(n){var r=-1,a=Array(n.size);return n.forEach(function(i,s){a[++r]=[s,i]}),a}return hn=t,hn}var fn,Fi;function Pd(){if(Fi)return fn;Fi=1;function t(n){var r=-1,a=Array(n.size);return n.forEach(function(i){a[++r]=i}),a}return fn=t,fn}var pn,Bi;function qd(){if(Bi)return pn;Bi=1;var t=ja(),n=Rd(),r=Na(),a=Al(),i=Cd(),s=Pd(),o=1,c=2,y="[object Boolean]",b="[object Date]",C="[object Error]",_="[object Map]",S="[object Number]",P="[object RegExp]",w="[object Set]",v="[object String]",u="[object Symbol]",h="[object ArrayBuffer]",l="[object DataView]",f=t?t.prototype:void 0,m=f?f.valueOf:void 0;function p(g,d,j,O,D,q,N){switch(j){case l:if(g.byteLength!=d.byteLength||g.byteOffset!=d.byteOffset)return!1;g=g.buffer,d=d.buffer;case h:return!(g.byteLength!=d.byteLength||!q(new n(g),new n(d)));case y:case b:case S:return r(+g,+d);case C:return g.name==d.name&&g.message==d.message;case P:case v:return g==d+"";case _:var T=i;case w:var I=O&o;if(T||(T=s),g.size!=d.size&&!I)return!1;var F=N.get(g);if(F)return F==d;O|=c,N.set(g,d);var B=a(T(g),T(d),O,D,q,N);return N.delete(g),B;case u:if(m)return m.call(g)==m.call(d)}return!1}return pn=p,pn}var gn,Ui;function Dd(){if(Ui)return gn;Ui=1;var t=Ol(),n=be();function r(a,i,s){var o=i(a);return n(a)?o:t(o,s(a))}return gn=r,gn}var mn,Gi;function Od(){if(Gi)return mn;Gi=1;function t(n,r){for(var a=-1,i=n==null?0:n.length,s=0,o=[];++a<i;){var c=n[a];r(c,a,n)&&(o[s++]=c)}return o}return mn=t,mn}var vn,$i;function Ed(){if($i)return vn;$i=1;function t(){return[]}return vn=t,vn}var yn,Yi;function Nd(){if(Yi)return yn;Yi=1;var t=Od(),n=Ed(),r=Object.prototype,a=r.propertyIsEnumerable,i=Object.getOwnPropertySymbols,s=i?function(o){return o==null?[]:(o=Object(o),t(i(o),function(c){return a.call(o,c)}))}:n;return yn=s,yn}var bn,Ki;function Td(){if(Ki)return bn;Ki=1;function t(n,r){for(var a=-1,i=Array(n);++a<n;)i[a]=r(a);return i}return bn=t,bn}var ot={exports:{}},xn,Xi;function Md(){if(Xi)return xn;Xi=1;function t(){return!1}return xn=t,xn}ot.exports;var Vi;function kl(){return Vi||(Vi=1,function(t,n){var r=Ne(),a=Md(),i=n&&!n.nodeType&&n,s=i&&!0&&t&&!t.nodeType&&t,o=s&&s.exports===i,c=o?r.Buffer:void 0,y=c?c.isBuffer:void 0,b=y||a;t.exports=b}(ot,ot.exports)),ot.exports}var _n,Ji;function Ad(){if(Ji)return _n;Ji=1;var t=Pt(),n=Ta(),r=Dt(),a="[object Arguments]",i="[object Array]",s="[object Boolean]",o="[object Date]",c="[object Error]",y="[object Function]",b="[object Map]",C="[object Number]",_="[object Object]",S="[object RegExp]",P="[object Set]",w="[object String]",v="[object WeakMap]",u="[object ArrayBuffer]",h="[object DataView]",l="[object Float32Array]",f="[object Float64Array]",m="[object Int8Array]",p="[object Int16Array]",g="[object Int32Array]",d="[object Uint8Array]",j="[object Uint8ClampedArray]",O="[object Uint16Array]",D="[object Uint32Array]",q={};q[l]=q[f]=q[m]=q[p]=q[g]=q[d]=q[j]=q[O]=q[D]=!0,q[a]=q[i]=q[u]=q[s]=q[h]=q[o]=q[c]=q[y]=q[b]=q[C]=q[_]=q[S]=q[P]=q[w]=q[v]=!1;function N(T){return r(T)&&n(T.length)&&!!q[t(T)]}return _n=N,_n}var wn,Zi;function zl(){if(Zi)return wn;Zi=1;function t(n){return function(r){return n(r)}}return wn=t,wn}var lt={exports:{}};lt.exports;var Qi;function kd(){return Qi||(Qi=1,function(t,n){var r=lu(),a=n&&!n.nodeType&&n,i=a&&!0&&t&&!t.nodeType&&t,s=i&&i.exports===a,o=s&&r.process,c=function(){try{var y=i&&i.require&&i.require("util").types;return y||o&&o.binding&&o.binding("util")}catch{}}();t.exports=c}(lt,lt.exports)),lt.exports}var jn,eo;function Ll(){if(eo)return jn;eo=1;var t=Ad(),n=zl(),r=kd(),a=r&&r.isTypedArray,i=a?n(a):t;return jn=i,jn}var Sn,to;function zd(){if(to)return Sn;to=1;var t=Td(),n=Aa(),r=be(),a=kl(),i=Ma(),s=Ll(),o=Object.prototype,c=o.hasOwnProperty;function y(b,C){var _=r(b),S=!_&&n(b),P=!_&&!S&&a(b),w=!_&&!S&&!P&&s(b),v=_||S||P||w,u=v?t(b.length,String):[],h=u.length;for(var l in b)(C||c.call(b,l))&&!(v&&(l=="length"||P&&(l=="offset"||l=="parent")||w&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||i(l,h)))&&u.push(l);return u}return Sn=y,Sn}var Rn,ro;function Ld(){if(ro)return Rn;ro=1;var t=Object.prototype;function n(r){var a=r&&r.constructor,i=typeof a=="function"&&a.prototype||t;return r===i}return Rn=n,Rn}var Cn,no;function Id(){if(no)return Cn;no=1;function t(n,r){return function(a){return n(r(a))}}return Cn=t,Cn}var Pn,ao;function Hd(){if(ao)return Pn;ao=1;var t=Id(),n=t(Object.keys,Object);return Pn=n,Pn}var qn,so;function Wd(){if(so)return qn;so=1;var t=Ld(),n=Hd(),r=Object.prototype,a=r.hasOwnProperty;function i(s){if(!t(s))return n(s);var o=[];for(var c in Object(s))a.call(s,c)&&c!="constructor"&&o.push(c);return o}return qn=i,qn}var Dn,io;function Ha(){if(io)return Dn;io=1;var t=zd(),n=Wd(),r=At();function a(i){return r(i)?t(i):n(i)}return Dn=a,Dn}var On,oo;function Fd(){if(oo)return On;oo=1;var t=Dd(),n=Nd(),r=Ha();function a(i){return t(i,r,n)}return On=a,On}var En,lo;function Bd(){if(lo)return En;lo=1;var t=Fd(),n=1,r=Object.prototype,a=r.hasOwnProperty;function i(s,o,c,y,b,C){var _=c&n,S=t(s),P=S.length,w=t(o),v=w.length;if(P!=v&&!_)return!1;for(var u=P;u--;){var h=S[u];if(!(_?h in o:a.call(o,h)))return!1}var l=C.get(s),f=C.get(o);if(l&&f)return l==o&&f==s;var m=!0;C.set(s,o),C.set(o,s);for(var p=_;++u<P;){h=S[u];var g=s[h],d=o[h];if(y)var j=_?y(d,g,h,o,s,C):y(g,d,h,s,o,C);if(!(j===void 0?g===d||b(g,d,c,y,C):j)){m=!1;break}p||(p=h=="constructor")}if(m&&!p){var O=s.constructor,D=o.constructor;O!=D&&"constructor"in s&&"constructor"in o&&!(typeof O=="function"&&O instanceof O&&typeof D=="function"&&D instanceof D)&&(m=!1)}return C.delete(s),C.delete(o),m}return En=i,En}var Nn,uo;function Ud(){if(uo)return Nn;uo=1;var t=He(),n=Ne(),r=t(n,"DataView");return Nn=r,Nn}var Tn,co;function Gd(){if(co)return Tn;co=1;var t=He(),n=Ne(),r=t(n,"Promise");return Tn=r,Tn}var Mn,ho;function $d(){if(ho)return Mn;ho=1;var t=He(),n=Ne(),r=t(n,"Set");return Mn=r,Mn}var An,fo;function Yd(){if(fo)return An;fo=1;var t=He(),n=Ne(),r=t(n,"WeakMap");return An=r,An}var kn,po;function Kd(){if(po)return kn;po=1;var t=Ud(),n=za(),r=Gd(),a=$d(),i=Yd(),s=Pt(),o=Nl(),c="[object Map]",y="[object Object]",b="[object Promise]",C="[object Set]",_="[object WeakMap]",S="[object DataView]",P=o(t),w=o(n),v=o(r),u=o(a),h=o(i),l=s;return(t&&l(new t(new ArrayBuffer(1)))!=S||n&&l(new n)!=c||r&&l(r.resolve())!=b||a&&l(new a)!=C||i&&l(new i)!=_)&&(l=function(f){var m=s(f),p=m==y?f.constructor:void 0,g=p?o(p):"";if(g)switch(g){case P:return S;case w:return c;case v:return b;case u:return C;case h:return _}return m}),kn=l,kn}var zn,go;function Xd(){if(go)return zn;go=1;var t=Ml(),n=Al(),r=qd(),a=Bd(),i=Kd(),s=be(),o=kl(),c=Ll(),y=1,b="[object Arguments]",C="[object Array]",_="[object Object]",S=Object.prototype,P=S.hasOwnProperty;function w(v,u,h,l,f,m){var p=s(v),g=s(u),d=p?C:i(v),j=g?C:i(u);d=d==b?_:d,j=j==b?_:j;var O=d==_,D=j==_,q=d==j;if(q&&o(v)){if(!o(u))return!1;p=!0,O=!1}if(q&&!O)return m||(m=new t),p||c(v)?n(v,u,h,l,f,m):r(v,u,d,h,l,f,m);if(!(h&y)){var N=O&&P.call(v,"__wrapped__"),T=D&&P.call(u,"__wrapped__");if(N||T){var I=N?v.value():v,F=T?u.value():u;return m||(m=new t),f(I,F,h,l,m)}}return q?(m||(m=new t),a(v,u,h,l,f,m)):!1}return zn=w,zn}var Ln,mo;function Il(){if(mo)return Ln;mo=1;var t=Xd(),n=Dt();function r(a,i,s,o,c){return a===i?!0:a==null||i==null||!n(a)&&!n(i)?a!==a&&i!==i:t(a,i,s,o,r,c)}return Ln=r,Ln}var In,vo;function Vd(){if(vo)return In;vo=1;var t=Ml(),n=Il(),r=1,a=2;function i(s,o,c,y){var b=c.length,C=b,_=!y;if(s==null)return!C;for(s=Object(s);b--;){var S=c[b];if(_&&S[2]?S[1]!==s[S[0]]:!(S[0]in s))return!1}for(;++b<C;){S=c[b];var P=S[0],w=s[P],v=S[1];if(_&&S[2]){if(w===void 0&&!(P in s))return!1}else{var u=new t;if(y)var h=y(w,v,P,s,o,u);if(!(h===void 0?n(v,w,r|a,y,u):h))return!1}}return!0}return In=i,In}var Hn,yo;function Hl(){if(yo)return Hn;yo=1;var t=qt();function n(r){return r===r&&!t(r)}return Hn=n,Hn}var Wn,bo;function Jd(){if(bo)return Wn;bo=1;var t=Hl(),n=Ha();function r(a){for(var i=n(a),s=i.length;s--;){var o=i[s],c=a[o];i[s]=[o,c,t(c)]}return i}return Wn=r,Wn}var Fn,xo;function Wl(){if(xo)return Fn;xo=1;function t(n,r){return function(a){return a==null?!1:a[n]===r&&(r!==void 0||n in Object(a))}}return Fn=t,Fn}var Bn,_o;function Zd(){if(_o)return Bn;_o=1;var t=Vd(),n=Jd(),r=Wl();function a(i){var s=n(i);return s.length==1&&s[0][2]?r(s[0][0],s[0][1]):function(o){return o===i||t(o,i,s)}}return Bn=a,Bn}var Un,wo;function Qd(){if(wo)return Un;wo=1;var t=Ia();function n(r,a,i){var s=r==null?void 0:t(r,a);return s===void 0?i:s}return Un=n,Un}var Gn,jo;function eh(){if(jo)return Gn;jo=1;function t(n,r){return n!=null&&r in Object(n)}return Gn=t,Gn}var $n,So;function th(){if(So)return $n;So=1;var t=Tl(),n=Aa(),r=be(),a=Ma(),i=Ta(),s=Ht();function o(c,y,b){y=t(y,c);for(var C=-1,_=y.length,S=!1;++C<_;){var P=s(y[C]);if(!(S=c!=null&&b(c,P)))break;c=c[P]}return S||++C!=_?S:(_=c==null?0:c.length,!!_&&i(_)&&a(P,_)&&(r(c)||n(c)))}return $n=o,$n}var Yn,Ro;function rh(){if(Ro)return Yn;Ro=1;var t=eh(),n=th();function r(a,i){return a!=null&&n(a,i,t)}return Yn=r,Yn}var Kn,Co;function nh(){if(Co)return Kn;Co=1;var t=Il(),n=Qd(),r=rh(),a=ka(),i=Hl(),s=Wl(),o=Ht(),c=1,y=2;function b(C,_){return a(C)&&i(_)?s(o(C),_):function(S){var P=n(S,C);return P===void 0&&P===_?r(S,C):t(_,P,c|y)}}return Kn=b,Kn}var Xn,Po;function Wt(){if(Po)return Xn;Po=1;function t(n){return n}return Xn=t,Xn}var Vn,qo;function ah(){if(qo)return Vn;qo=1;function t(n){return function(r){return r?.[n]}}return Vn=t,Vn}var Jn,Do;function sh(){if(Do)return Jn;Do=1;var t=Ia();function n(r){return function(a){return t(a,r)}}return Jn=n,Jn}var Zn,Oo;function ih(){if(Oo)return Zn;Oo=1;var t=ah(),n=sh(),r=ka(),a=Ht();function i(s){return r(s)?t(a(s)):n(s)}return Zn=i,Zn}var Qn,Eo;function oh(){if(Eo)return Qn;Eo=1;var t=Zd(),n=nh(),r=Wt(),a=be(),i=ih();function s(o){return typeof o=="function"?o:o==null?r:typeof o=="object"?a(o)?n(o[0],o[1]):t(o):i(o)}return Qn=s,Qn}var ea,No;function lh(){if(No)return ea;No=1;function t(n){return function(r,a,i){for(var s=-1,o=Object(r),c=i(r),y=c.length;y--;){var b=c[n?y:++s];if(a(o[b],b,o)===!1)break}return r}}return ea=t,ea}var ta,To;function uh(){if(To)return ta;To=1;var t=lh(),n=t();return ta=n,ta}var ra,Mo;function ch(){if(Mo)return ra;Mo=1;var t=uh(),n=Ha();function r(a,i){return a&&t(a,i,n)}return ra=r,ra}var na,Ao;function dh(){if(Ao)return na;Ao=1;var t=At();function n(r,a){return function(i,s){if(i==null)return i;if(!t(i))return r(i,s);for(var o=i.length,c=a?o:-1,y=Object(i);(a?c--:++c<o)&&s(y[c],c,y)!==!1;);return i}}return na=n,na}var aa,ko;function hh(){if(ko)return aa;ko=1;var t=ch(),n=dh(),r=n(t);return aa=r,aa}var sa,zo;function fh(){if(zo)return sa;zo=1;var t=hh(),n=At();function r(a,i){var s=-1,o=n(a)?Array(a.length):[];return t(a,function(c,y,b){o[++s]=i(c,y,b)}),o}return sa=r,sa}var ia,Lo;function ph(){if(Lo)return ia;Lo=1;function t(n,r){var a=n.length;for(n.sort(r);a--;)n[a]=n[a].value;return n}return ia=t,ia}var oa,Io;function gh(){if(Io)return oa;Io=1;var t=Ot();function n(r,a){if(r!==a){var i=r!==void 0,s=r===null,o=r===r,c=t(r),y=a!==void 0,b=a===null,C=a===a,_=t(a);if(!b&&!_&&!c&&r>a||c&&y&&C&&!b&&!_||s&&y&&C||!i&&C||!o)return 1;if(!s&&!c&&!_&&r<a||_&&i&&o&&!s&&!c||b&&i&&o||!y&&o||!C)return-1}return 0}return oa=n,oa}var la,Ho;function mh(){if(Ho)return la;Ho=1;var t=gh();function n(r,a,i){for(var s=-1,o=r.criteria,c=a.criteria,y=o.length,b=i.length;++s<y;){var C=t(o[s],c[s]);if(C){if(s>=b)return C;var _=i[s];return C*(_=="desc"?-1:1)}}return r.index-a.index}return la=n,la}var ua,Wo;function vh(){if(Wo)return ua;Wo=1;var t=El(),n=Ia(),r=oh(),a=fh(),i=ph(),s=zl(),o=mh(),c=Wt(),y=be();function b(C,_,S){_.length?_=t(_,function(v){return y(v)?function(u){return n(u,v.length===1?v[0]:v)}:v}):_=[c];var P=-1;_=t(_,s(r));var w=a(C,function(v,u,h){var l=t(_,function(f){return f(v)});return{criteria:l,index:++P,value:v}});return i(w,function(v,u){return o(v,u,S)})}return ua=b,ua}var ca,Fo;function yh(){if(Fo)return ca;Fo=1;function t(n,r,a){switch(a.length){case 0:return n.call(r);case 1:return n.call(r,a[0]);case 2:return n.call(r,a[0],a[1]);case 3:return n.call(r,a[0],a[1],a[2])}return n.apply(r,a)}return ca=t,ca}var da,Bo;function bh(){if(Bo)return da;Bo=1;var t=yh(),n=Math.max;function r(a,i,s){return i=n(i===void 0?a.length-1:i,0),function(){for(var o=arguments,c=-1,y=n(o.length-i,0),b=Array(y);++c<y;)b[c]=o[i+c];c=-1;for(var C=Array(i+1);++c<i;)C[c]=o[c];return C[i]=s(b),t(a,this,C)}}return da=r,da}var ha,Uo;function xh(){if(Uo)return ha;Uo=1;function t(n){return function(){return n}}return ha=t,ha}var fa,Go;function _h(){if(Go)return fa;Go=1;var t=He(),n=function(){try{var r=t(Object,"defineProperty");return r({},"",{}),r}catch{}}();return fa=n,fa}var pa,$o;function wh(){if($o)return pa;$o=1;var t=xh(),n=_h(),r=Wt(),a=n?function(i,s){return n(i,"toString",{configurable:!0,enumerable:!1,value:t(s),writable:!0})}:r;return pa=a,pa}var ga,Yo;function jh(){if(Yo)return ga;Yo=1;var t=800,n=16,r=Date.now;function a(i){var s=0,o=0;return function(){var c=r(),y=n-(c-o);if(o=c,y>0){if(++s>=t)return arguments[0]}else s=0;return i.apply(void 0,arguments)}}return ga=a,ga}var ma,Ko;function Sh(){if(Ko)return ma;Ko=1;var t=wh(),n=jh(),r=n(t);return ma=r,ma}var va,Xo;function Rh(){if(Xo)return va;Xo=1;var t=Wt(),n=bh(),r=Sh();function a(i,s){return r(n(i,s,t),i+"")}return va=a,va}var ya,Vo;function Ch(){if(Vo)return ya;Vo=1;var t=Fc(),n=vh(),r=Rh(),a=Dl(),i=r(function(s,o){if(s==null)return[];var c=o.length;return c>1&&a(s,o[0],o[1])?o=[]:c>2&&a(o[0],o[1],o[2])&&(o=[o[0]]),n(s,t(o,1),[])});return ya=i,ya}var Ph=Ch();const st=Ca(Ph),qh=()=>{const[t,n]=Ee("/worlds/*"),r=n?.["*"],[a,i]=M.useState(!1),s=Ce(Ue),o=Ce(Ge),c=Ce(tu),[y,b]=M.useState(!1),[C,_]=M.useState(null),[S,P]=M.useState(null),w=M.useRef(r);w.current=r;const v=mt();M.useEffect(()=>{!r||!c.started||(b(!0),_(null),Promise.all([X("world.revisions",r),X("world.meta",r)]).then(([f,m])=>{w.current===r&&(_(f?.reverse()??null),P(m??null),b(!1))}))},[r,c.started]);const u=async()=>{if(!r)return;i(!0),await X("world.use",r)&&(Ge.set(r),Ue.set(r)),i(!1)},h=async()=>{if(!r)return;if(i(!0),await X("world.use")){const m=await X("world.next"),p=await X("world.active");Ge.set(p),Ue.set(m)}i(!1)},l=async f=>{if(!r)return;i(!0);const m=await X("world.load",r,f??null);console.info("world loaded",m),i(!1)};return e.jsxs("div",{className:"world-view",children:[e.jsx("div",{className:"world-info",children:r&&e.jsxs(ye,{children:[e.jsxs("div",{className:"stats",children:[e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"World name",children:"Name:"})," ",r]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"World map",children:"Map:"})," ",S?.meta.world.environment??"Unknown"]}),e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"If yes, this world will be loaded on the next server start",children:"Is Default:"})," ",o===r?"Yes":"No"]}),s!==o&&e.jsxs("div",{className:"stat",children:[e.jsx("b",{"data-tooltip":"Whether this world is configured to load next start if no other default is specified",children:"Is Fallback World:"})," ",s===r?"Yes":"No"]})]}),e.jsx("div",{className:"section-header","data-tooltip":"A list of all brick, component, or entity owners in this world.",children:"Owners"}),e.jsx("div",{className:"owners-table",children:e.jsx(Dh,{meta:S})}),e.jsx("div",{className:"section-header","data-tooltip":"A list of all the revisions made to this world. Click the buttons on the right to load a specific revision.",children:"Revisions"}),e.jsxs("div",{className:"revision-list",children:[e.jsx(Ra,{visible:y,children:e.jsx(fe,{active:y,size:"huge",children:"Loading World"})}),C?.length===0&&e.jsx("div",{className:"revision-item",children:e.jsx("i",{className:"revision-note",children:"Something went wrong listing the revisions"})}),C===null&&!y&&c.started&&e.jsx("div",{className:"revision-item",children:e.jsx("i",{className:"revision-note",children:"World might not exist"})}),C?.map(f=>e.jsxs("div",{className:"revision-item config",children:[e.jsx("div",{className:"revision-index",children:f.index}),e.jsxs("div",{className:"revision-note",children:[f.note,e.jsx("div",{className:"revision-date",children:new Date(f.date).toLocaleString()})]}),e.jsx(H,{icon:!0,main:!0,disabled:a||!c.started,onClick:()=>v.prompt(e.jsxs("p",{children:["Are you sure you want to load revision ",f.index," of"," ",e.jsx("b",{style:{color:"white"},children:r}),"? Unsaved work will be lost."]})).then(m=>{m&&l(f.index)}),"data-tooltip":`Load revision ${f.index}`,children:e.jsx(bt,{})})]},f.index))]})]})}),e.jsxs(Ie,{attached:!0,children:[o!==r&&e.jsxs(H,{normal:!0,disabled:a||!r,"data-tooltip":"Make this the default world for the server (on startup)",onClick:()=>u(),children:[e.jsx(ul,{}),"Make Default"]}),o===r&&e.jsxs(H,{warn:!0,disabled:a||!r,"data-tooltip":"Remove this world as the default world for the server (on startup)",onClick:()=>h(),children:[e.jsx(cl,{}),"Clear Default"]}),e.jsx("span",{style:{flex:1}}),e.jsxs(H,{main:!0,"data-tooltip":"Load this world immediately",disabled:a||!c.started||!r,onClick:()=>v.prompt(e.jsxs("p",{children:["Are you sure you want to load"," ",e.jsx("b",{style:{color:"white"},children:r}),"? Unsaved work will be lost."]})).then(f=>{f&&l()}),children:[e.jsx(bt,{}),"Load"]})]}),v.children]})},Dh=({meta:t})=>{const[n,r]=Ct(),a=M.useMemo(()=>Object.fromEntries(t?.owners.map(C=>[C.id,C])??[]),[t]),i=M.useMemo(()=>{const C=Object.keys(a),_=st(C,l=>a[l].display_name),S=st(C,l=>a[l].brick_count),P=st(C,l=>a[l].component_count),w=st(C,l=>a[l].entity_count),v=st(C,l=>a[l].wire_count),u=ks(C.length).reverse(),h=ks(C.length);return{display_name:_,brick_count:S,component_count:P,entity_count:w,wire_count:v,reverse:u,inorder:h}},[t]),[s,o]=M.useState("brick_count"),[c,y]=M.useState(-1),b=C=>{C==s?y(_=>_*-1):(o(C),y(C==="display_name"?1:-1))};return t?e.jsx(ye,{children:e.jsxs("table",{className:"br-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{style:{textAlign:"left",width:"100%"},onClick:()=>b("display_name"),children:e.jsxs("span",{children:["Name",e.jsx(le,{name:"display_name",sort:s,direction:c})]})}),e.jsx("th",{onClick:()=>b("brick_count"),children:e.jsxs("span",{children:["Bricks",e.jsx(le,{name:"brick_count",sort:s,direction:c})]})}),e.jsx("th",{onClick:()=>b("component_count"),children:e.jsxs("span",{children:["Components",e.jsx(le,{name:"component_count",sort:s,direction:c})]})}),e.jsx("th",{onClick:()=>b("entity_count"),children:e.jsxs("span",{children:["Entities",e.jsx(le,{name:"entity_count",sort:s,direction:c})]})}),e.jsx("th",{onClick:()=>b("wire_count"),children:e.jsxs("span",{children:["Wires",e.jsx(le,{name:"wire_count",sort:s,direction:c})]})})]})}),e.jsxs("tbody",{children:[t?.owners.length===0&&e.jsx("tr",{children:e.jsx("td",{colSpan:5,style:{textAlign:"center"},children:"No owners found in this world"})}),(c>0?i.inorder:i.reverse).map(C=>{const _=i[s][C],S=a[_];return!S||S.brick_count+S.component_count+S.entity_count+S.wire_count===0?null:e.jsxs("tr",{onClick:()=>r(`/players/${_}`),children:[e.jsx("td",{className:"player-name",children:e.jsx("div",{className:"player-name-container",children:e.jsxs("div",{children:[e.jsx("div",{"data-tooltip":S.display_name?"Display Name":"Username",children:S.display_name??S.name}),S.display_name&&e.jsx("div",{className:"username","data-tooltip":"Username",children:S.name})]})})}),e.jsx("td",{style:{textAlign:"right"},children:S.brick_count.toLocaleString()}),e.jsx("td",{style:{textAlign:"right"},children:S.component_count.toLocaleString()}),e.jsx("td",{style:{textAlign:"right"},children:S.entity_count.toLocaleString()}),e.jsx("td",{style:{textAlign:"right"},children:S.wire_count.toLocaleString()})]},_)})]})]})}):null},Oh=["Plate","Space","Studio","Peaks"],Eh=()=>{const[t,n]=M.useState(""),[r,a]=M.useState(!0),[i,s]=M.useState([]),[o,c]=M.useState(!1),y=Ce(Ue),b=Ce(Ge),[C,_]=M.useState(!1),S=Zo(),[P,w]=Ee("/worlds/*?"),v=w?.["*"],u=async()=>{a(!0);const[N,T,I]=await Promise.all([X("world.list"),X("world.active"),X("world.next")]);s(N),Ge.set(T),Ue.set(I),a(!1)};M.useEffect(()=>{u()},[]);const h=async()=>{if(c(!0),await X("world.use",null)){Ge.set(null);const T=await X("world.next");Ue.set(T)}c(!1)},l=async()=>{c(!0),await X("world.save"),c(!1)},f=async N=>{c(!0),await X("world.save",N),c(!1),u()},m=async(N,T)=>{c(!0),await X("world.create",N,T),c(!1),u()},p=N=>N.toLowerCase().includes(t.toLowerCase()),[g,d]=M.useState(null),j=mt({title:"Save World As",content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Enter a name for the new world"}),e.jsx("p",{children:e.jsx(ie,{type:"text",placeholder:"World Name",value:g??"",onChange:N=>d(N)})})]}),leftButton:N=>e.jsxs(H,{normal:!0,onClick:()=>N(null),children:[e.jsx(ct,{}),"Cancel"]}),rightButton:N=>e.jsxs(H,{disabled:!g,main:!0,onClick:()=>N(g),children:[e.jsx(_t,{}),"Save As"]})}),[O,D]=M.useState("Plate"),q=mt({title:"Create New World",content:e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Select a name and map for the new world"}),e.jsx("p",{children:e.jsx(ie,{type:"text",placeholder:"World Name",value:g??"",onChange:N=>d(N)})}),e.jsx("p",{children:e.jsx(_a,{value:O,options:Oh,onChange:N=>D(N)})})]}),leftButton:N=>e.jsxs(H,{normal:!0,onClick:()=>N(null),children:[e.jsx(ct,{}),"Cancel"]}),rightButton:N=>e.jsxs(H,{disabled:!g,main:!0,onClick:()=>N({name:g,map:O}),children:[e.jsx(_t,{}),"Create"]})});return e.jsxs(e.Fragment,{children:[e.jsx(qe,{title:"Worlds",children:e.jsxs("div",{className:"widgets-container worlds",children:[e.jsxs(H,{normal:!0,boxy:!0,"data-tooltip":"Show more world actions",onClick:()=>_(!C),children:[C?e.jsx(nl,{}):e.jsx(hl,{}),"Actions"]}),e.jsxs("div",{className:"widgets-list",style:{display:C?"block":"none"},children:[e.jsxs(H,{info:!0,disabled:o||!S.started,"data-tooltip":"Save the currently loaded world",onClick:()=>{_(!1),l()},children:[e.jsx(ll,{}),"Save World"]}),e.jsxs(H,{normal:!0,disabled:o||!S.started,"data-tooltip":"Save a copy of the currently loaded world",onClick:()=>{_(!1),d(null),j.prompt().then(N=>{N&&f(N)})},children:[e.jsx(Pu,{}),"Save As"]}),e.jsxs(H,{main:!0,disabled:o||!S.started,"data-tooltip":"Create a new world",onClick:()=>{_(!1),d(null),D("Plate"),q.prompt().then(N=>{N&&m(N.name,N.map)})},children:[e.jsx(qu,{}),"New World"]}),e.jsxs(H,{normal:b===null,warn:b!==null,disabled:o||!b,"data-tooltip":"Remove the default world for the server (on startup)",onClick:()=>{_(!1),h()},children:[e.jsx(cl,{}),"Clear Default"]})]})]})}),e.jsxs(De,{children:[e.jsx(Oe,{}),e.jsxs("div",{className:"generic-container worlds-container",children:[e.jsxs("div",{className:"worlds-list-container",children:[e.jsxs(ve,{children:[e.jsx(ie,{type:"text",placeholder:"Search Worlds...",value:t,onChange:N=>n(N)}),e.jsx("span",{style:{flex:1}}),e.jsx(H,{icon:!0,normal:!0,"data-tooltip":"Refresh world list",onClick:u,children:e.jsx(Et,{})})]}),e.jsxs("div",{className:"worlds-list",children:[e.jsx(ye,{children:i.map(N=>p(N)&&e.jsxs(ut,{href:"/worlds/"+N,className:`world-item ${N===v?"selected":""} ${N===b?"next":""}`,"data-tooltip":N===b?"This world will load when the server starts":"",children:[N===b?e.jsx(ul,{className:"world-item-active"}):!b&&N===y?e.jsx(Du,{className:"world-item-next"}):e.jsx(Nu,{}),N]},N))}),e.jsx(fe,{active:r,size:"huge",children:"Loading Worlds"})]})]}),e.jsxs("div",{className:"world-inspector-container",children:[e.jsx(ve,{attached:!0,children:v??"SELECT A WORLD"}),e.jsx("div",{className:"world-inspector",children:e.jsx(qh,{})})]})]})]}),j.children,q.children]})},Nh=()=>e.jsx(ru,{children:e.jsx(nu,{hook:au,children:e.jsxs(el,{children:[e.jsx(me,{path:"/",component:Cc}),e.jsx(me,{path:"/history/:time?",component:Iu}),e.jsx(me,{path:"/players/:id?",component:Dc}),e.jsx(me,{path:"/plugins/:id?",component:Nc}),e.jsx(me,{path:"/server",component:Tc}),e.jsx(me,{path:"/users/:id?",component:Mc}),e.jsx(me,{path:"/worlds/*?",component:Eh}),e.jsx(me,{component:Lu})]})})});Bl.createRoot(document.getElementById("root")).render(e.jsx(Nh,{}));
|
|
6
|
-
//# sourceMappingURL=app-
|
|
6
|
+
//# sourceMappingURL=app-BtOlgo__.js.map
|