@minecraft-docker/mcctl-console 2.8.0 → 2.8.1
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/.next/standalone/platform/services/mcctl-console/.next/BUILD_ID +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/app-build-manifest.json +74 -72
- package/.next/standalone/platform/services/mcctl-console/.next/app-path-routes-manifest.json +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/build-manifest.json +2 -2
- package/.next/standalone/platform/services/mcctl-console/.next/prerender-manifest.json +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/admin/users/page.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/admin/users/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/audit-logs/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/backups/page.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/backups/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/dashboard/page.js +4 -4
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/dashboard/page.js.nft.json +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/dashboard/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/players/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/routing/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/console/page.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/console/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/page.js +1 -54
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/page.js.nft.json +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/page.js +1 -54
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/page.js.nft.json +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/worlds/page.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/worlds/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/_not-found.rsc +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/audit-logs.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/audit-logs.rsc +2 -2
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/backups.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/backups.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/dashboard.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/dashboard.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/index.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/index.rsc +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/login.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/login.rsc +2 -2
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/players.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/players.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/routing.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/routing.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/servers.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/servers.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/settings.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/signup/page_client-reference-manifest.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/signup.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/signup.rsc +2 -2
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/worlds.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/app/worlds.rsc +3 -3
- package/.next/standalone/platform/services/mcctl-console/.next/server/app-paths-manifest.json +21 -21
- package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/1088.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/5843.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/7049.js +54 -0
- package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/8389.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/8847.js +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/middleware-manifest.json +5 -5
- package/.next/standalone/platform/services/mcctl-console/.next/server/pages/404.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/pages/500.html +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/1047-1957808ef6d146f3.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/{1658-1c16e5a05aaa11ee.js → 1658-43a798763bcc82ae.js} +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/{7727-2552fac729c5514a.js → 2539-6bce0edb99b4e538.js} +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/5787-04cc23df05f9da2e.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/6039-38b0b8c06d25892e.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/6646-c5d039d1ad306467.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/682-6192991ddec396b8.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/7965-420dbb1f781fdc83.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/837-f4fbf77c24343b1f.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/8854-b34262a2493987c4.js +1 -0
- package/.next/{static/chunks/9949-92aa4cba630945d3.js → standalone/platform/services/mcctl-console/.next/static/chunks/9949-2daeb31bdedf25c7.js} +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/admin/users/page-e8263fc89b5d349a.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/dashboard/page-3cf14179dcdd7ac6.js +1 -0
- package/.next/{static/chunks/app/(main)/layout-22d4db17be3f8c25.js → standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/layout-bf1846a6b0c68959.js} +1 -1
- package/.next/{static/chunks/app/(main)/players/page-fef43a34b56c2fcf.js → standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/players/page-c4760429d9828ad3.js} +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/[name]/console/{page-1287129ad47a4440.js → page-a0050b5b439d954f.js} +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/[name]/page-f82acaf60a615953.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/page-382a14f87768df2c.js +1 -0
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/worlds/page-a194d5d6a77d7e06.js +1 -0
- package/.next/{static/chunks/app/login/page-55283ea041e00fc0.js → standalone/platform/services/mcctl-console/.next/static/chunks/app/login/page-b7ec94d60aae14ce.js} +1 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/signup/{page-d3f96f0e775636fd.js → page-6f03571bb9914130.js} +1 -1
- package/.next/static/chunks/1047-1957808ef6d146f3.js +1 -0
- package/.next/static/chunks/{1658-1c16e5a05aaa11ee.js → 1658-43a798763bcc82ae.js} +1 -1
- package/.next/static/chunks/{7727-2552fac729c5514a.js → 2539-6bce0edb99b4e538.js} +1 -1
- package/.next/static/chunks/5787-04cc23df05f9da2e.js +1 -0
- package/.next/static/chunks/6039-38b0b8c06d25892e.js +1 -0
- package/.next/static/chunks/6646-c5d039d1ad306467.js +1 -0
- package/.next/static/chunks/682-6192991ddec396b8.js +1 -0
- package/.next/static/chunks/7965-420dbb1f781fdc83.js +1 -0
- package/.next/static/chunks/837-f4fbf77c24343b1f.js +1 -0
- package/.next/static/chunks/8854-b34262a2493987c4.js +1 -0
- package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/9949-92aa4cba630945d3.js → static/chunks/9949-2daeb31bdedf25c7.js} +1 -1
- package/.next/static/chunks/app/(main)/admin/users/page-e8263fc89b5d349a.js +1 -0
- package/.next/static/chunks/app/(main)/dashboard/page-3cf14179dcdd7ac6.js +1 -0
- package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/layout-22d4db17be3f8c25.js → static/chunks/app/(main)/layout-bf1846a6b0c68959.js} +1 -1
- package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/players/page-fef43a34b56c2fcf.js → static/chunks/app/(main)/players/page-c4760429d9828ad3.js} +1 -1
- package/.next/static/chunks/app/(main)/servers/[name]/console/{page-1287129ad47a4440.js → page-a0050b5b439d954f.js} +1 -1
- package/.next/static/chunks/app/(main)/servers/[name]/page-f82acaf60a615953.js +1 -0
- package/.next/static/chunks/app/(main)/servers/page-382a14f87768df2c.js +1 -0
- package/.next/static/chunks/app/(main)/worlds/page-a194d5d6a77d7e06.js +1 -0
- package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/app/login/page-55283ea041e00fc0.js → static/chunks/app/login/page-b7ec94d60aae14ce.js} +1 -1
- package/.next/static/chunks/app/signup/{page-d3f96f0e775636fd.js → page-6f03571bb9914130.js} +1 -1
- package/package.json +2 -2
- package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/8091.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/1476-a0570078fdf78fae.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/3333-7e2d13faa47ed67e.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/4436-bf86b627021ca7ab.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/5787-bea4ee84b4bf2dea.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/7965-e1d52a92f5303aca.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/8468-8346b1d9ff3f7efa.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/8854-11e2a182afd76dcd.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/admin/users/page-3cc240ec265dc135.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/dashboard/page-fba60ccdbc06c136.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/[name]/page-1becd4dc3adb9b97.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/page-bebe3d652d7cf3fb.js +0 -1
- package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/worlds/page-e78b9914366748cf.js +0 -1
- package/.next/static/chunks/1476-a0570078fdf78fae.js +0 -1
- package/.next/static/chunks/3333-7e2d13faa47ed67e.js +0 -1
- package/.next/static/chunks/4436-bf86b627021ca7ab.js +0 -1
- package/.next/static/chunks/5787-bea4ee84b4bf2dea.js +0 -1
- package/.next/static/chunks/7965-e1d52a92f5303aca.js +0 -1
- package/.next/static/chunks/8468-8346b1d9ff3f7efa.js +0 -1
- package/.next/static/chunks/8854-11e2a182afd76dcd.js +0 -1
- package/.next/static/chunks/app/(main)/admin/users/page-3cc240ec265dc135.js +0 -1
- package/.next/static/chunks/app/(main)/dashboard/page-fba60ccdbc06c136.js +0 -1
- package/.next/static/chunks/app/(main)/servers/[name]/page-1becd4dc3adb9b97.js +0 -1
- package/.next/static/chunks/app/(main)/servers/page-bebe3d652d7cf3fb.js +0 -1
- package/.next/static/chunks/app/(main)/worlds/page-e78b9914366748cf.js +0 -1
- /package/.next/standalone/platform/services/mcctl-console/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_buildManifest.js +0 -0
- /package/.next/standalone/platform/services/mcctl-console/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_ssgManifest.js +0 -0
- /package/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_buildManifest.js +0 -0
- /package/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2248],{12121:function(e,t,r){Promise.resolve().then(r.bind(r,64924))},64924:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return B}});var n=r(94655),s=r(69899),i=r(76492),a=r(7281),l=r(31317),o=r(84840),c=r(628),d=r(41565),x=r(10721),h=r(25065),u=r(91179),p=r(11767),m=r(53832),j=r(30164),g=r(92666),f=r(59104);function Z(e){let{title:t,value:r,icon:s,color:i="primary",description:o}=e,x={primary:"#1bd96a",success:"#22c55e",info:"#3b82f6",secondary:"#7c3aed"};return(0,n.jsx)(c.Z,{"data-testid":"stat-card",sx:{height:"100%",position:"relative",overflow:"hidden","&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:"4px",background:x[i]}},children:(0,n.jsxs)(d.Z,{children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:2},children:[(0,n.jsx)(l.Z,{variant:"body2",color:"text.secondary",sx:{fontWeight:500},children:t}),s&&(0,n.jsx)(a.Z,{sx:{color:x[i],opacity:.8},children:s})]}),(0,n.jsx)(l.Z,{variant:"h3",component:"div",sx:{fontWeight:700,color:"text.primary",mb:o?1:0},children:r}),o&&(0,n.jsx)(l.Z,{variant:"caption",color:"text.secondary",children:o})]})})}var v=r(98406),y=r(93017),b=r(25333),w=r(46725),S=r(8690),C=r(31358),z=r(97511);function I(e){let{servers:t,statusMap:r={},isLoading:s,maxItems:i,showViewAll:o=!1,onServerClick:x}=e,h=(0,C.x)(),u=i?t.slice(0,i):t,p=e=>{x?x(e):h.push("/servers/".concat(e))},m=e=>{switch(e){case"running":return"success";case"stopped":case"exited":return"error";case"created":return"warning";default:return"default"}},j=e=>{switch(e){case"healthy":return"success";case"unhealthy":return"error";case"starting":return"warning";default:return"default"}};return s?(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:"Servers"}),(0,n.jsx)(d.Z,{children:(0,n.jsx)(a.Z,{sx:{display:"flex",justifyContent:"center",py:4},children:(0,n.jsx)(y.Z,{})})})]}):0===t.length?(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:"Servers"}),(0,n.jsx)(d.Z,{children:(0,n.jsx)(l.Z,{color:"text.secondary",align:"center",children:"No servers found. Create your first server to get started."})})]}):(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:"Servers",action:o&&t.length>(i||0)?(0,n.jsxs)(w.default,{href:"/servers",onClick:()=>(0,S.Av)(),style:{textDecoration:"none",color:"inherit",fontSize:"0.875rem"},children:["View All (",t.length,")"]}):null}),(0,n.jsx)(d.Z,{children:(0,n.jsx)(a.Z,{sx:{display:"flex",flexDirection:"column",gap:2},children:u.map(e=>{let t=r[e.name],s=(null==t?void 0:t.status)||e.status,i=(null==t?void 0:t.health)||e.health;return(0,n.jsx)(a.Z,{role:"button",onClick:()=>p(e.name),sx:{p:2,borderRadius:1,border:"1px solid",borderColor:"divider",cursor:"pointer",transition:"all 0.2s","&:hover":{borderColor:"primary.main",backgroundColor:"action.hover"}},children:(0,n.jsxs)(a.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,n.jsxs)(a.Z,{children:[(0,n.jsx)(l.Z,{variant:"subtitle1",fontWeight:600,children:e.name}),(0,n.jsx)(z.h,{hostname:e.hostname,fontSize:12})]}),(0,n.jsxs)(a.Z,{sx:{display:"flex",gap:1},children:[(0,n.jsx)(b.Z,{label:s,color:m(s),size:"small"}),"none"!==i&&(0,n.jsx)(b.Z,{label:i,color:j(i),size:"small",variant:"outlined"})]})]})},e.name)})})})]})}var k=r(35106),P=r(41261);function F(e){let{maxVersions:t=2,title:r="Recent Updates"}=e,[s,i]=(0,k.useState)([]),[o,h]=(0,k.useState)(!0),[u,p]=(0,k.useState)(null);return((0,k.useEffect)(()=>{(async function(){try{let e=await fetch("https://api.github.com/repos/smallmiro/minecraft-server-manager/contents/CHANGELOG.md",{headers:{Accept:"application/vnd.github.v3+json"}});if(!e.ok)throw Error("Failed to fetch changelog");let r=await e.json(),n=atob(r.content),s=function(e,t){let r=[],n=e.split("\n"),s=null,i="added";for(let e of n){let n=e.match(/^## \[([^\]]+)\] - (\d{4}-\d{2}-\d{2})/);if(n){if(s&&(r.push(s),r.length>=t))break;s={version:n[1],date:n[2],items:[]};continue}let a=e.match(/^### (Added|Fixed|Changed)/i);if(a){i=a[1].toLowerCase();continue}let l=e.match(/^- \*\*([^*]+)\*\*\s*[-–]?\s*(.*)$/);l&&s&&s.items.push({type:i,message:l[1].trim()})}return s&&r.length<t&&r.push(s),r}(n,t);i(s)}catch(e){p(e instanceof Error?e.message:"Unknown error")}finally{h(!1)}})()},[t]),o)?(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:r}),(0,n.jsxs)(d.Z,{children:[(0,n.jsx)(x.Z,{variant:"text",width:"60%",height:28}),(0,n.jsx)(x.Z,{variant:"text",width:"80%"}),(0,n.jsx)(x.Z,{variant:"text",width:"70%"}),(0,n.jsxs)(a.Z,{sx:{mt:2},children:[(0,n.jsx)(x.Z,{variant:"text",width:"60%",height:28}),(0,n.jsx)(x.Z,{variant:"text",width:"75%"})]})]})]}):u?(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:r}),(0,n.jsx)(d.Z,{children:(0,n.jsx)(l.Z,{color:"text.secondary",align:"center",children:"Unable to load updates"})})]}):(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:r,action:(0,n.jsx)(P.Z,{href:"https://github.com/smallmiro/minecraft-server-manager/blob/develop/CHANGELOG.md",target:"_blank",rel:"noopener",sx:{fontSize:13,mr:1},children:"View all"})}),(0,n.jsx)(d.Z,{sx:{pt:0},children:s.map((e,t)=>{let r=e.items.filter(e=>"added"===e.type),i=e.items.filter(e=>"fixed"===e.type),o=e.items.filter(e=>"changed"===e.type);return(0,n.jsxs)(a.Z,{sx:{mb:t<s.length-1?2.5:0,pb:t<s.length-1?2:0,borderBottom:t<s.length-1?"1px solid":"none",borderColor:"divider"},children:[(0,n.jsxs)(l.Z,{variant:"subtitle2",sx:{fontWeight:600,color:"primary.main",mb:1},children:["[",e.version,"] - ",e.date]}),r.length>0&&(0,n.jsxs)(a.Z,{sx:{mb:1},children:[(0,n.jsx)(b.Z,{label:"Added",size:"small",sx:{bgcolor:"success.main",color:"success.contrastText",fontSize:11,height:20,mb:.5}}),r.map((e,t)=>(0,n.jsxs)(l.Z,{variant:"body2",sx:{color:"text.secondary",pl:1},children:["• ",e.message]},t))]}),i.length>0&&(0,n.jsxs)(a.Z,{sx:{mb:1},children:[(0,n.jsx)(b.Z,{label:"Fixed",size:"small",sx:{bgcolor:"warning.main",color:"warning.contrastText",fontSize:11,height:20,mb:.5}}),i.map((e,t)=>(0,n.jsxs)(l.Z,{variant:"body2",sx:{color:"text.secondary",pl:1},children:["• ",e.message]},t))]}),o.length>0&&(0,n.jsxs)(a.Z,{children:[(0,n.jsx)(b.Z,{label:"Changed",size:"small",sx:{bgcolor:"info.main",color:"info.contrastText",fontSize:11,height:20,mb:.5}}),o.map((e,t)=>(0,n.jsxs)(l.Z,{variant:"body2",sx:{color:"text.secondary",pl:1},children:["• ",e.message]},t))]})]},e.version)})})]})}var T=r(30417),W=r(90158),A=r(58347),N=r(73424),q=r(95511),D=r(26577),L=r(56813),R=r(26892),E=r(84509);function O(e){var t;let{maxItems:r=5}=e,{data:s,isLoading:i,error:o}=(0,E.oL)(r),h=null!==(t=null==s?void 0:s.logs)&&void 0!==t?t:[];return(0,n.jsxs)(c.Z,{children:[(0,n.jsx)(v.Z,{title:"Recent Activity",action:(0,n.jsx)(T.Z,{component:w.default,href:"/audit-logs",size:"small",endIcon:(0,n.jsx)(D.Z,{}),sx:{textTransform:"none"},children:"View All"})}),(0,n.jsx)(d.Z,{sx:{pt:0},children:i?(0,n.jsx)(W.Z,{sx:{py:0},children:[...Array(r)].map((e,t)=>(0,n.jsx)(A.ZP,{sx:{px:0,py:1.5},children:(0,n.jsx)(N.Z,{primary:(0,n.jsxs)(a.Z,{sx:{display:"flex",gap:1},children:[(0,n.jsx)(x.Z,{variant:"rounded",width:60,height:24}),(0,n.jsx)(x.Z,{variant:"text",width:80}),(0,n.jsx)(x.Z,{variant:"text",width:60})]}),secondary:(0,n.jsx)(x.Z,{variant:"text",width:50})})},t))}):o?(0,n.jsx)(l.Z,{color:"text.secondary",align:"center",children:"Failed to load recent activity"}):0===h.length?(0,n.jsx)(l.Z,{color:"text.secondary",align:"center",sx:{py:2},children:"No recent activity"}):(0,n.jsx)(W.Z,{sx:{py:0},children:h.map(e=>{var t;return(0,n.jsx)(A.ZP,{sx:{px:0,py:1.5,"&:not(:last-child)":{borderBottom:"1px solid",borderColor:"divider"}},children:(0,n.jsx)(N.Z,{primary:(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:1,flexWrap:"wrap"},children:[(0,n.jsx)(L.I,{action:e.action,size:"small"}),(0,n.jsx)(l.Z,{variant:"body2",sx:{fontWeight:500},children:e.targetName}),(0,n.jsxs)(l.Z,{variant:"body2",color:"text.secondary",children:["by ",e.actor.replace("api:","").replace("cli:","")]}),"failure"===e.status&&(0,n.jsx)(R.c,{status:e.status,size:"small"})]}),secondary:(0,n.jsx)(q.Z,{title:(t=e.timestamp,new Intl.DateTimeFormat(void 0,{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"}).format(new Date(t))),arrow:!0,children:(0,n.jsx)(l.Z,{variant:"caption",component:"span",color:"text.disabled",children:function(e){let t=new Date,r=new Date(e),n=Math.floor((t.getTime()-r.getTime())/6e4),s=Math.floor(n/60);return n<1?"just now":n<60?"".concat(n,"m ago"):s<24?"".concat(s,"h ago"):"".concat(Math.floor(s/24),"d ago")}(e.timestamp)})})})},e.id)})})})]})}var K=r(84974),M=r(37228);function U(){let{data:e,isLoading:t}=(0,M.UW)();if(t)return(0,n.jsx)(c.Z,{children:(0,n.jsxs)(d.Z,{children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:2},children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsx)(x.Z,{variant:"circular",width:20,height:20}),(0,n.jsx)(x.Z,{variant:"text",width:120})]}),(0,n.jsx)(x.Z,{variant:"rounded",width:60,height:24})]}),(0,n.jsx)(x.Z,{variant:"text",width:"50%",height:32}),(0,n.jsx)(x.Z,{variant:"text",width:"70%"})]})});if(!(null==e?void 0:e.enabled))return(0,n.jsx)(c.Z,{children:(0,n.jsxs)(d.Z,{children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:2},children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsx)(K.Z,{sx:{fontSize:20,color:"text.secondary"}}),(0,n.jsx)(l.Z,{variant:"body2",fontWeight:500,color:"text.secondary",children:"External Access"})]}),(0,n.jsx)(b.Z,{label:"Not configured",size:"small",variant:"outlined"})]}),(0,n.jsx)(l.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"playit.gg is not configured"}),(0,n.jsx)(T.Z,{component:w.default,href:"/routing",size:"small",endIcon:(0,n.jsx)(D.Z,{}),sx:{fontSize:12},children:"Manage"})]})});let r=e.agentRunning&&"running"===e.containerStatus,s=e.servers.length,i=e.servers.filter(e=>e.playitDomain).length;return(0,n.jsx)(c.Z,{children:(0,n.jsxs)(d.Z,{children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:2},children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsx)(K.Z,{sx:{fontSize:20,color:"primary.main"}}),(0,n.jsx)(l.Z,{variant:"body2",fontWeight:500,children:"External Access"})]}),(0,n.jsx)(b.Z,{label:r?"Running":"Stopped",size:"small",color:r?"success":"default",variant:"outlined"})]}),(0,n.jsxs)(l.Z,{variant:"h6",sx:{mb:.5},children:[i," / ",s," servers"]}),(0,n.jsx)(l.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"With external domains"}),(0,n.jsx)(T.Z,{component:w.default,href:"/routing",size:"small",endIcon:(0,n.jsx)(D.Z,{}),sx:{fontSize:12},children:"Manage"})]})})}function B(){let{data:e,isLoading:t}=(0,g.x$)(),{data:r,isLoading:v}=(0,g.Sr)(),{statusMap:y}=(0,f.d)(),b=t||v,w=(null==e?void 0:e.total)||0,S=(null==e?void 0:e.servers.filter(e=>{let t=y[e.name];return"running"===((null==t?void 0:t.status)||e.status)}).length)||0,C=(null==r?void 0:r.total)||0;return b?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.Z,{elevation:0,sx:{mb:4,p:3,background:e=>"linear-gradient(135deg, ".concat((0,i.Fq)(e.palette.secondary.main,.1)," 0%, ").concat((0,i.Fq)(e.palette.primary.main,.1)," 100%)"),borderRadius:2,border:e=>"1px solid ".concat((0,i.Fq)(e.palette.secondary.main,.2))},children:(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,n.jsx)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center",width:56,height:56,borderRadius:2,bgcolor:"primary.main",color:"primary.contrastText"},children:(0,n.jsx)(h.Z,{sx:{fontSize:32}})}),(0,n.jsxs)(a.Z,{children:[(0,n.jsx)(l.Z,{variant:"h4",component:"h1",fontWeight:"bold",children:"Dashboard"}),(0,n.jsx)(l.Z,{variant:"body1",color:"text.secondary",children:"Overview of your Minecraft server infrastructure"})]})]})}),(0,n.jsx)(o.ZP,{container:!0,spacing:3,sx:{mb:4},children:[0,1,2,3].map(e=>(0,n.jsx)(o.ZP,{item:!0,xs:12,sm:6,md:3,children:(0,n.jsx)(c.Z,{sx:{height:"100%",position:"relative",overflow:"hidden","&::before":{content:'""',position:"absolute",top:0,left:0,right:0,height:"4px",background:"grey.300"}},children:(0,n.jsxs)(d.Z,{children:[(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:2},children:[(0,n.jsx)(x.Z,{variant:"text",width:"60%"}),(0,n.jsx)(x.Z,{variant:"circular",width:32,height:32})]}),(0,n.jsx)(x.Z,{variant:"text",width:"40%",height:48}),(0,n.jsx)(x.Z,{variant:"text",width:"70%"})]})})},e))}),(0,n.jsxs)(o.ZP,{container:!0,spacing:3,children:[(0,n.jsx)(o.ZP,{item:!0,xs:12,lg:7,children:(0,n.jsx)(c.Z,{children:(0,n.jsxs)(d.Z,{children:[(0,n.jsx)(x.Z,{variant:"text",width:"30%",height:32,sx:{mb:2}}),[0,1,2,3,4].map(e=>(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:2,py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:[(0,n.jsx)(x.Z,{variant:"circular",width:10,height:10}),(0,n.jsx)(x.Z,{variant:"text",width:"25%"}),(0,n.jsx)(x.Z,{variant:"rounded",width:60,height:24,sx:{ml:"auto"}})]},e))]})})}),(0,n.jsx)(o.ZP,{item:!0,xs:12,lg:5,children:(0,n.jsxs)(a.Z,{sx:{display:"flex",flexDirection:"column",gap:3},children:[(0,n.jsx)(c.Z,{children:(0,n.jsxs)(d.Z,{children:[(0,n.jsx)(x.Z,{variant:"text",width:"40%",height:32,sx:{mb:2}}),[0,1,2,3].map(e=>(0,n.jsxs)(a.Z,{sx:{display:"flex",gap:1.5,py:1,borderBottom:"1px solid",borderColor:"divider"},children:[(0,n.jsx)(x.Z,{variant:"circular",width:24,height:24}),(0,n.jsxs)(a.Z,{sx:{flex:1},children:[(0,n.jsx)(x.Z,{variant:"text",width:"80%"}),(0,n.jsx)(x.Z,{variant:"text",width:"50%"})]})]},e))]})}),(0,n.jsx)(c.Z,{children:(0,n.jsxs)(d.Z,{children:[(0,n.jsx)(x.Z,{variant:"text",width:"35%",height:32,sx:{mb:2}}),[0,1].map(e=>(0,n.jsxs)(a.Z,{sx:{py:1,borderBottom:"1px solid",borderColor:"divider"},children:[(0,n.jsx)(x.Z,{variant:"text",width:"60%"}),(0,n.jsx)(x.Z,{variant:"text",width:"90%"})]},e))]})})]})})]})]}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.Z,{elevation:0,sx:{mb:4,p:3,background:e=>"linear-gradient(135deg, ".concat((0,i.Fq)(e.palette.secondary.main,.1)," 0%, ").concat((0,i.Fq)(e.palette.primary.main,.1)," 100%)"),borderRadius:2,border:e=>"1px solid ".concat((0,i.Fq)(e.palette.secondary.main,.2))},children:(0,n.jsxs)(a.Z,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,n.jsx)(a.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center",width:56,height:56,borderRadius:2,bgcolor:"secondary.main",color:"secondary.contrastText"},children:(0,n.jsx)(h.Z,{sx:{fontSize:32}})}),(0,n.jsxs)(a.Z,{children:[(0,n.jsx)(l.Z,{variant:"h4",component:"h1",fontWeight:"bold",children:"Dashboard"}),(0,n.jsx)(l.Z,{variant:"body1",color:"text.secondary",children:"Overview of your Minecraft server infrastructure"})]})]})}),(0,n.jsxs)(o.ZP,{container:!0,spacing:3,sx:{mb:4},children:[(0,n.jsx)(o.ZP,{item:!0,xs:12,sm:6,md:3,children:(0,n.jsx)(Z,{title:"Total Servers",value:w,icon:(0,n.jsx)(u.Z,{fontSize:"large"}),color:"primary",description:"All configured servers"})}),(0,n.jsx)(o.ZP,{item:!0,xs:12,sm:6,md:3,children:(0,n.jsx)(Z,{title:"Online Servers",value:S,icon:(0,n.jsx)(p.Z,{fontSize:"large"}),color:"success",description:"Currently running"})}),(0,n.jsx)(o.ZP,{item:!0,xs:12,sm:6,md:3,children:(0,n.jsx)(Z,{title:"Total Players",value:0,icon:(0,n.jsx)(m.Z,{fontSize:"large"}),color:"info",description:"Across all servers"})}),(0,n.jsx)(o.ZP,{item:!0,xs:12,sm:6,md:3,children:(0,n.jsx)(Z,{title:"Total Worlds",value:C,icon:(0,n.jsx)(j.Z,{fontSize:"large"}),color:"secondary",description:"Available worlds"})})]}),(0,n.jsxs)(o.ZP,{container:!0,spacing:3,children:[(0,n.jsx)(o.ZP,{item:!0,xs:12,lg:7,children:(0,n.jsx)(I,{servers:(null==e?void 0:e.servers)||[],statusMap:y,isLoading:t,maxItems:5,showViewAll:!0})}),(0,n.jsx)(o.ZP,{item:!0,xs:12,lg:5,children:(0,n.jsxs)(a.Z,{sx:{display:"flex",flexDirection:"column",gap:3},children:[(0,n.jsx)(U,{}),(0,n.jsx)(O,{maxItems:5}),(0,n.jsx)(F,{maxVersions:2})]})})]})]})}},56813:function(e,t,r){"use strict";r.d(t,{I:function(){return a}});var n=r(94655),s=r(25333),i=r(82925);function a(e){let{action:t,size:r="small"}=e,a=i.Lu[t]||"default",l=i.n3[t]||t;return(0,n.jsx)(s.Z,{label:l,color:a,size:r,variant:"filled",sx:{fontWeight:600,fontSize:"small"===r?"0.7rem":"0.8rem"}})}},26892:function(e,t,r){"use strict";r.d(t,{c:function(){return l}});var n=r(94655),s=r(25333),i=r(46207),a=r(43436);function l(e){let{status:t,size:r="small"}=e;return(0,n.jsx)(s.Z,{icon:"success"===t?(0,n.jsx)(i.Z,{}):(0,n.jsx)(a.Z,{}),label:"success"===t?"OK":"Error",color:"success"===t?"success":"error",size:r,variant:"outlined",sx:{fontWeight:500,fontSize:"small"===r?"0.7rem":"0.8rem"}})}},84509:function(e,t,r){"use strict";r.d(t,{DM:function(){return a},HZ:function(){return o},VM:function(){return l},hT:function(){return i},oL:function(){return c}});var n=r(5632),s=r(42936);function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,r=function(e){let t=new URLSearchParams;e.action&&t.set("action",e.action),e.actor&&t.set("actor",e.actor),e.targetType&&t.set("targetType",e.targetType),e.targetName&&t.set("targetName",e.targetName),e.status&&t.set("status",e.status),e.from&&t.set("from",e.from),e.to&&t.set("to",e.to),void 0!==e.limit&&t.set("limit",String(e.limit)),void 0!==e.offset&&t.set("offset",String(e.offset)),e.sort&&t.set("sort",e.sort);let r=t.toString();return r?"?".concat(r):""}(e);return(0,n.a)({queryKey:["audit-logs",e],queryFn:()=>(0,s.SC)("/api/audit-logs".concat(r)),enabled:(null==t?void 0:t.enabled)!==!1})}function a(e){return(0,n.a)({queryKey:["audit-logs","stats"],queryFn:()=>(0,s.SC)("/api/audit-logs/stats"),enabled:(null==e?void 0:e.enabled)!==!1,refetchInterval:3e4})}function l(e,t){return(0,n.a)({queryKey:["audit-logs",e],queryFn:()=>(0,s.SC)("/api/audit-logs/".concat(encodeURIComponent(e))),enabled:(null==t?void 0:t.enabled)!==!1&&!!e})}function o(e,t){var r;return i({targetType:"server",targetName:e,limit:null!==(r=null==t?void 0:t.limit)&&void 0!==r?r:20},{enabled:(null==t?void 0:t.enabled)!==!1&&!!e})}function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return i({limit:e,sort:"timestamp:desc"})}},37228:function(e,t,r){"use strict";r.d(t,{Bc:function(){return o},N$:function(){return c},UW:function(){return l}});var n=r(5632),s=r(58919),i=r(20367),a=r(42936);function l(){return(0,n.a)({queryKey:["playit-status"],queryFn:()=>(0,a.SC)("/api/playit/status"),refetchInterval:3e4})}function o(){let e=(0,s.NL)();return(0,i.D)({mutationFn:()=>(0,a.SC)("/api/playit/start",{method:"POST"}),onSuccess:()=>{e.invalidateQueries({queryKey:["playit-status"]})}})}function c(){let e=(0,s.NL)();return(0,i.D)({mutationFn:()=>(0,a.SC)("/api/playit/stop",{method:"POST"}),onSuccess:()=>{e.invalidateQueries({queryKey:["playit-status"]})}})}},82925:function(e,t,r){"use strict";r.d(t,{KK:function(){return l},Lu:function(){return n},Xn:function(){return a},n3:function(){return s},xg:function(){return i}});let n={"server.create":"success","server.delete":"error","server.start":"info","server.stop":"warning","server.restart":"secondary","player.whitelist.add":"success","player.whitelist.remove":"warning","player.ban":"error","player.unban":"success","player.op":"info","player.deop":"warning","player.kick":"error","audit.purge":"default"},s={"server.create":"Create","server.delete":"Delete","server.start":"Start","server.stop":"Stop","server.restart":"Restart","player.whitelist.add":"Whitelist Add","player.whitelist.remove":"Whitelist Remove","player.ban":"Ban","player.unban":"Unban","player.op":"Op","player.deop":"Deop","player.kick":"Kick","audit.purge":"Purge"},i=["server.create","server.delete","server.start","server.stop","server.restart","player.whitelist.add","player.whitelist.remove","player.ban","player.unban","player.op","player.deop","player.kick","audit.purge"],a=["server.create","server.delete","server.start","server.stop","server.restart"],l=["player.whitelist.add","player.whitelist.remove","player.ban","player.unban","player.op","player.deop","player.kick"]}},function(e){e.O(0,[6812,9760,5004,7296,540,4416,2538,5511,55,8347,5123,2666,2701,3669,2757,1744],function(){return e(e.s=12121)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[278],{59616:function(e,t,r){Promise.resolve().then(r.bind(r,46812))},46812:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return ta}});var s=r(94655),n=r(35106),i=r(74228),a=r(31358),o=r(7281),l=r(30417),d=r(79983),c=r(81071),x=r(93017),u=r(10721),h=r(628),p=r(41565),m=r(31317),y=r(88812),v=r(7178),j=r(17820),g=r(73424),b=r(99770),f=r(62508),Z=r(5682),w=r(76678),C=r(97436),S=r(84840),k=r(76492),R=r(10117),T=r(5501),I=r(37809),z=r(21111),P=r(17978),W=r(89573),F=r(96292),M=r(33104),A=r(25333),O=r(52082),D=r(69123),E=r(71185),q=r(30165),N=r(97293),B=r(11259),U=r(66615),L=r(89161),H=r(34071),K=r(4405);function G(e){let{value:t,unit:r,label:n,icon:i,progress:a,progressMax:l,color:d="#1bd96a"}=e;return(0,s.jsxs)(h.Z,{"data-testid":"resource-stat-card",sx:{p:2.5,bgcolor:"background.paper",border:"1px solid",borderColor:"divider",borderRadius:3},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",gap:2},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"baseline",gap:.75,flexWrap:"wrap",minWidth:0},children:[(0,s.jsx)(m.Z,{variant:"h4",component:"span",sx:{fontWeight:700,color:"text.primary",fontFamily:'"Roboto Mono", monospace',letterSpacing:"-0.5px"},children:t}),(0,s.jsx)(m.Z,{variant:"body2",component:"span",sx:{color:"text.secondary",fontWeight:500},children:r})]}),(0,s.jsx)(o.Z,{sx:{color:"text.secondary",flexShrink:0},children:i})]}),(0,s.jsx)(m.Z,{variant:"body2",sx:{color:"text.secondary",fontWeight:500,mt:.5},children:n}),(0,s.jsx)(K.Z,{variant:"determinate",value:Math.min(a/l*100,100),sx:{mt:1,height:6,borderRadius:1.5,bgcolor:"#2a2d3a","& .MuiLinearProgress-bar":{borderRadius:1.5,background:"linear-gradient(90deg, ".concat(d," 0%, ").concat(d,"cc 100%)")}}})]})}var V=r(163),J=r(73660),Q=r(90158),_=r(58347),X=r(95511),$=r(46725),Y=r(26577),ee=r(56813),et=r(26892),er=r(84509);function es(e){var t;let{serverName:r}=e,{data:n,isLoading:i,error:a}=(0,er.HZ)(r,{limit:20});if(i)return(0,s.jsx)(o.Z,{children:[void 0,void 0,void 0,void 0,void 0].map((e,t)=>(0,s.jsxs)(o.Z,{sx:{display:"flex",gap:2,py:1.5},children:[(0,s.jsx)(u.Z,{variant:"rounded",width:60,height:24}),(0,s.jsx)(u.Z,{variant:"text",width:"60%"}),(0,s.jsx)(u.Z,{variant:"text",width:50})]},t))});if(a)return(0,s.jsxs)(c.Z,{severity:"error",children:["Failed to load activity: ",a.message]});let d=null!==(t=null==n?void 0:n.logs)&&void 0!==t?t:[];if(0===d.length)return(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{py:4,textAlign:"center"},children:"No activity recorded for this server yet."});let x="/audit-logs?targetType=server&targetName=".concat(encodeURIComponent(r));return(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(Q.Z,{sx:{py:0},children:d.map(e=>{var t;return(0,s.jsx)(_.ZP,{sx:{px:0,py:1.5,"&:not(:last-child)":{borderBottom:"1px solid",borderColor:"divider"}},children:(0,s.jsx)(g.Z,{primary:(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsx)(ee.I,{action:e.action,size:"small"}),(0,s.jsxs)(m.Z,{variant:"body2",color:"text.secondary",children:["by ",e.actor.replace("api:","").replace("cli:","")]}),(0,s.jsx)(et.c,{status:e.status,size:"small"})]}),secondary:(0,s.jsx)(X.Z,{title:(t=e.timestamp,new Intl.DateTimeFormat(void 0,{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"}).format(new Date(t))),arrow:!0,children:(0,s.jsx)(m.Z,{variant:"caption",component:"span",color:"text.disabled",children:function(e){let t=new Date,r=new Date(e),s=Math.floor((t.getTime()-r.getTime())/6e4),n=Math.floor(s/60);return s<1?"just now":s<60?"".concat(s,"m ago"):n<24?"".concat(n,"h ago"):"".concat(Math.floor(n/24),"d ago")}(e.timestamp)})})})},e.id)})}),(0,s.jsx)(o.Z,{sx:{mt:2,textAlign:"center"},children:(0,s.jsx)(l.Z,{component:$.default,href:x,size:"small",endIcon:(0,s.jsx)(Y.Z,{}),sx:{textTransform:"none"},children:"View Full History"})})]})}var en=r(37530),ei=r(84420),ea=r(46121),eo=r(84775),el=r(92666),ed=r(70115),ec=r(70603),ex=r(32366),eu=r(5942),eh=r(25523);function ep(e){let{serverName:t}=e,{data:r,isLoading:i}=(0,el.Js)(t),a=(0,el.Bx)(),[u,y]=(0,n.useState)([]),[v,j]=(0,n.useState)(!1),[g,b]=(0,n.useState)(!1),[f,Z]=(0,n.useState)(""),[w,S]=(0,n.useState)(""),[k,R]=(0,n.useState)(!1),[T,I]=(0,n.useState)({open:!1,message:"",severity:"success"});(0,n.useEffect)(()=>{(null==r?void 0:r.customHostnames)&&(y(r.customHostnames),j(!1),R(!1))},[r]);let P=e=>{let t=e.trim().toLowerCase();return t?t.length>253?"Domain exceeds 253 characters":/^[a-z0-9]([a-z0-9\-.]*[a-z0-9])?$/.test(t)?t.endsWith(".local")?"Cannot use .local system domain":t.endsWith(".nip.io")?"Cannot use .nip.io system domain":u.includes(t)?"Domain already exists":"":"Invalid domain format":"Domain cannot be empty"},W=()=>{let e=f.trim().toLowerCase(),t=P(e);if(t){S(t);return}y(t=>[...t,e]),Z(""),S(""),b(!1),j(!0)},F=e=>{y(t=>t.filter(t=>t!==e)),j(!0)},M=async()=>{try{await a.mutateAsync({serverName:t,customHostnames:u}),j(!1),R(!0),I({open:!0,message:"Hostnames saved. Container recreation required to apply changes.",severity:"warning"})}catch(e){I({open:!0,message:e instanceof Error?e.message:"Failed to save hostnames",severity:"error"})}},O=()=>{b(!1),Z(""),S("")};return i?(0,s.jsx)(h.Z,{sx:{mb:3,borderRadius:3},children:(0,s.jsx)(p.Z,{children:(0,s.jsx)(o.Z,{sx:{display:"flex",justifyContent:"center",py:4},children:(0,s.jsx)(x.Z,{size:24})})})}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(h.Z,{sx:{mb:3,borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1},children:[(0,s.jsx)(eh.Z,{color:"primary"}),(0,s.jsx)(m.Z,{variant:"h6",fontWeight:600,children:"Hostnames / Domains"})]}),(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Manage hostnames used by mc-router to route connections to this server."}),(0,s.jsx)(D.Z,{sx:{mb:3}}),(null==r?void 0:r.systemHostnames)&&r.systemHostnames.length>0&&(0,s.jsxs)(o.Z,{sx:{mb:3},children:[(0,s.jsx)(m.Z,{variant:"subtitle2",color:"text.secondary",sx:{mb:1},children:"System Hostnames (read-only)"}),(0,s.jsx)(ed.Z,{direction:"row",flexWrap:"wrap",gap:1,children:r.systemHostnames.map(e=>(0,s.jsx)(A.Z,{icon:(0,s.jsx)(ec.Z,{sx:{fontSize:16}}),label:e.hostname,title:e.description,variant:"outlined",color:"default",size:"small"},e.hostname))})]}),(0,s.jsxs)(o.Z,{sx:{mb:2},children:[(0,s.jsx)(m.Z,{variant:"subtitle2",color:"text.secondary",sx:{mb:1},children:"Custom Domains"}),0===u.length&&!g&&(0,s.jsx)(m.Z,{variant:"body2",color:"text.disabled",sx:{mb:1},children:"No custom domains configured."}),(0,s.jsx)(ed.Z,{spacing:1,children:u.map(e=>(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",py:.5,px:1.5,borderRadius:1,bgcolor:"action.hover"},children:[(0,s.jsx)(m.Z,{variant:"body2",fontFamily:'"Roboto Mono", monospace',children:e}),(0,s.jsx)(d.Z,{size:"small",color:"error",onClick:()=>F(e),title:"Remove domain",children:(0,s.jsx)(z.Z,{fontSize:"small"})})]},e))}),g?(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"flex-start",gap:1,mt:1},children:[(0,s.jsx)(C.Z,{size:"small",placeholder:"e.g. play.example.com",value:f,onChange:e=>{Z(e.target.value),S("")},onKeyDown:e=>{"Enter"===e.key&&W(),"Escape"===e.key&&O()},error:!!w,helperText:w,autoFocus:!0,sx:{flex:1}}),(0,s.jsx)(l.Z,{size:"small",variant:"contained",onClick:W,children:"Add"}),(0,s.jsx)(d.Z,{size:"small",onClick:O,children:(0,s.jsx)(E.Z,{fontSize:"small"})})]}):(0,s.jsx)(l.Z,{size:"small",startIcon:(0,s.jsx)(ex.Z,{}),onClick:()=>b(!0),sx:{mt:1},children:"Add Domain"})]}),k&&(0,s.jsxs)(c.Z,{severity:"warning",sx:{mb:2},children:["Container recreation is required for hostname changes to take effect. Run ",(0,s.jsx)("code",{children:"docker compose up -d"})," or restart the server from the dashboard."]}),(0,s.jsx)(o.Z,{sx:{display:"flex",justifyContent:"flex-end"},children:(0,s.jsx)(l.Z,{variant:"contained",size:"small",startIcon:(0,s.jsx)(eu.Z,{}),onClick:M,disabled:!v||a.isPending,children:a.isPending?"Saving...":"Save Hostnames"})})]})}),(0,s.jsx)(en.Z,{open:T.open,autoHideDuration:6e3,onClose:()=>I({...T,open:!1}),anchorOrigin:{vertical:"bottom",horizontal:"right"},children:(0,s.jsx)(c.Z,{onClose:()=>I({...T,open:!1}),severity:T.severity,sx:{width:"100%"},children:T.message})})]})}var em=r(87716),ey=r(81960),ev=r(62328),ej=r(29793),eg=r(75726),eb=r(40064),ef=r(38393),eZ=r(28058),ew=r(42730);function eC(e){var t;let{field:r,value:i,onChange:a}=e,[l,c]=(0,n.useState)(!1),x=null!==(t=r.columns)&&void 0!==t?t:6;return(0,s.jsx)(S.ZP,{item:!0,xs:12,sm:x,children:(()=>{var e,t,n,x,u,h;switch(r.type){case"boolean":return(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(eb.Z,{control:(0,s.jsx)(ef.Z,{checked:null!=i&&i,onChange:e=>a(r.key,e.target.checked)}),label:r.label}),r.helperText&&(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",sx:{ml:4,display:"block"},children:r.helperText})]});case"select":return(0,s.jsxs)(ej.Z,{fullWidth:!0,size:"small",children:[(0,s.jsx)(eg.Z,{children:r.label}),(0,s.jsx)(ev.Z,{value:null!==(x=null!=i?i:null===(t=r.options)||void 0===t?void 0:null===(e=t[0])||void 0===e?void 0:e.value)&&void 0!==x?x:"",label:r.label,onChange:e=>a(r.key,e.target.value),children:null===(n=r.options)||void 0===n?void 0:n.map(e=>(0,s.jsx)(v.Z,{value:e.value,children:e.label},e.value))})]});case"number":return(0,s.jsx)(C.Z,{fullWidth:!0,size:"small",type:"number",label:r.label,value:null!=i?i:"",onChange:e=>{let t=e.target.value;a(r.key,""===t?void 0:parseInt(t,10))},inputProps:{min:null===(u=r.validation)||void 0===u?void 0:u.min,max:null===(h=r.validation)||void 0===h?void 0:h.max},helperText:r.helperText,InputProps:r.unit?{endAdornment:(0,s.jsx)(O.Z,{position:"end",children:(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",children:r.unit})})}:void 0});case"password":return(0,s.jsx)(C.Z,{fullWidth:!0,size:"small",type:l?"text":"password",label:r.label,value:null!=i?i:"",onChange:e=>a(r.key,e.target.value),helperText:r.helperText,InputProps:{endAdornment:(0,s.jsx)(O.Z,{position:"end",children:(0,s.jsx)(d.Z,{size:"small",onClick:()=>c(!l),edge:"end",children:l?(0,s.jsx)(ew.Z,{fontSize:"small"}):(0,s.jsx)(eZ.Z,{fontSize:"small"})})})}});default:return(0,s.jsx)(C.Z,{fullWidth:!0,size:"small",label:r.label,value:null!=i?i:"",onChange:e=>a(r.key,e.target.value),helperText:r.helperText})}})()})}function eS(e){let{section:t,values:r,onChange:i}=e,[a,d]=(0,n.useState)(!1),c=t.icon,x=t.advancedFields.length;return(0,s.jsx)(h.Z,{sx:{mb:3,borderRadius:3},children:(0,s.jsxs)(p.Z,{sx:{p:3},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1.5,mb:1},children:[(0,s.jsx)(c,{sx:{fontSize:22,color:"primary.main"}}),(0,s.jsx)(m.Z,{variant:"h6",fontWeight:600,children:t.title})]}),(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:t.description}),(0,s.jsx)(D.Z,{sx:{mb:3}}),(0,s.jsx)(S.ZP,{container:!0,spacing:2.5,children:t.essentialFields.map(e=>(0,s.jsx)(eC,{field:e,value:r[e.key],onChange:i},e.key))}),x>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(l.Z,{fullWidth:!0,variant:"text",onClick:()=>d(!a),endIcon:(0,s.jsx)(ey.Z,{sx:{transform:a?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s"}}),sx:{mt:2.5,justifyContent:"flex-start",color:"text.secondary",textTransform:"none",py:1,"&:hover":{bgcolor:"action.hover"}},children:[a?"Hide":"Show"," Advanced Settings (",x,")"]}),(0,s.jsx)(em.Z,{in:a,timeout:300,children:(0,s.jsx)(o.Z,{sx:{pt:2,borderTop:"1px dashed",borderColor:"divider"},children:(0,s.jsx)(S.ZP,{container:!0,spacing:2.5,children:t.advancedFields.map(e=>(0,s.jsx)(eC,{field:e,value:r[e.key],onChange:i},e.key))})})})]})]})})}var ek=r(12550);function eR(e){let{hasChanges:t,changedCount:r,hasRestartChanges:n,restartFields:i=[],isSaving:a,onSave:d,onDiscard:c}=e;return(0,s.jsx)(ek.Z,{direction:"up",in:t,mountOnEnter:!0,unmountOnExit:!0,children:(0,s.jsxs)(o.Z,{sx:{position:"sticky",bottom:0,zIndex:1100,bgcolor:"background.paper",borderTop:2,borderColor:"primary.main",px:3,py:2,mx:-3,mb:-3,boxShadow:"0 -4px 20px rgba(0,0,0,0.4)",display:"flex",alignItems:"center",justifyContent:"space-between",flexWrap:"wrap",gap:1},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[n&&(0,s.jsx)(eo.Z,{sx:{color:"warning.main",fontSize:20}}),(0,s.jsxs)(m.Z,{variant:"body2",fontWeight:600,children:[r," unsaved change",1!==r?"s":""]}),n&&(0,s.jsxs)(m.Z,{variant:"caption",color:"warning.main",children:["(",i.length>0?i.join(", "):"some fields"," require restart)"]})]}),(0,s.jsxs)(o.Z,{sx:{display:"flex",gap:1},children:[(0,s.jsx)(l.Z,{variant:"text",color:"inherit",onClick:c,disabled:a,children:"Discard"}),(0,s.jsx)(l.Z,{variant:"contained",startIcon:a?(0,s.jsx)(x.Z,{size:16,color:"inherit"}):(0,s.jsx)(eu.Z,{}),onClick:d,disabled:a,children:a?"Saving...":"Save Changes (".concat(r,")")})]})]})})}function eT(e){let{open:t,changedFields:r,onSaveOnly:n,onSaveAndRestart:i,onCancel:a}=e;return(0,s.jsxs)(b.Z,{open:t,onClose:a,maxWidth:"sm",fullWidth:!0,children:[(0,s.jsx)(f.Z,{children:(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsx)(eo.Z,{color:"warning"}),(0,s.jsx)(m.Z,{variant:"h6",fontWeight:600,children:"Restart Required"})]})}),(0,s.jsxs)(Z.Z,{children:[(0,s.jsx)(m.Z,{variant:"body1",gutterBottom:!0,children:"The following changes require a server restart to take effect:"}),(0,s.jsx)(Q.Z,{dense:!0,children:r.map(e=>(0,s.jsx)(_.ZP,{sx:{py:0},children:(0,s.jsx)(g.Z,{primary:e,primaryTypographyProps:{variant:"body2",fontFamily:'"Roboto Mono", monospace'}})},e))})]}),(0,s.jsxs)(w.Z,{children:[(0,s.jsx)(l.Z,{onClick:a,color:"inherit",children:"Cancel"}),(0,s.jsx)(l.Z,{onClick:n,variant:"outlined",children:"Save Only"}),(0,s.jsx)(l.Z,{onClick:i,variant:"contained",color:"warning",children:"Save & Restart"})]})]})}var eI=r(1217),ez=r(84974),eP=r(23482),eW=r(61244),eF=r(87739);let eM=[{id:"gameplay",icon:eI.Z,title:"Gameplay",description:"Core game rules and player experience settings.",essentialFields:[{key:"difficulty",label:"Difficulty",type:"select",options:[{value:"peaceful",label:"Peaceful"},{value:"easy",label:"Easy"},{value:"normal",label:"Normal"},{value:"hard",label:"Hard"}]},{key:"gameMode",label:"Game Mode",type:"select",options:[{value:"survival",label:"Survival"},{value:"creative",label:"Creative"},{value:"adventure",label:"Adventure"},{value:"spectator",label:"Spectator"}]},{key:"maxPlayers",label:"Max Players",type:"number",validation:{min:1,max:1e3}},{key:"pvp",label:"Enable PvP",type:"boolean",helperText:"Allow players to damage each other"}],advancedFields:[{key:"forceGamemode",label:"Force Game Mode",type:"boolean",helperText:"Force game mode when players join"},{key:"hardcore",label:"Hardcore",type:"boolean",helperText:"One life only - world deleted on death"},{key:"allowFlight",label:"Allow Flight",type:"boolean",helperText:"Allow flight in survival mode"},{key:"allowNether",label:"Allow Nether",type:"boolean",helperText:"Enable Nether portal access"},{key:"enableCommandBlock",label:"Command Blocks",type:"boolean",helperText:"Enable command block functionality"},{key:"spawnProtection",label:"Spawn Protection",type:"number",helperText:"Radius around spawn (0 = disabled)",unit:"blocks",validation:{min:0,max:256}},{key:"spawnAnimals",label:"Spawn Animals",type:"boolean",helperText:"Spawn passive mobs (cows, pigs, etc.)"},{key:"spawnMonsters",label:"Spawn Monsters",type:"boolean",helperText:"Spawn hostile mobs (zombies, creepers, etc.)"},{key:"spawnNpcs",label:"Spawn NPCs",type:"boolean",helperText:"Spawn villagers and wandering traders"}]},{id:"world",icon:ez.Z,title:"World",description:"World generation and server identity settings.",essentialFields:[{key:"motd",label:"MOTD (Message of the Day)",type:"string",helperText:"Displayed in the server list",columns:12},{key:"level",label:"World Name",type:"string",helperText:"Save folder name",restartRequired:!0},{key:"levelType",label:"Level Type",type:"select",restartRequired:!0,options:[{value:"default",label:"Default"},{value:"flat",label:"Flat"},{value:"largeBiomes",label:"Large Biomes"},{value:"amplified",label:"Amplified"},{value:"buffet",label:"Buffet"}]},{key:"seed",label:"World Seed",type:"string",helperText:"Only affects new world generation",restartRequired:!0}],advancedFields:[{key:"generateStructures",label:"Generate Structures",type:"boolean",helperText:"Generate villages, temples, etc."},{key:"maxWorldSize",label:"Max World Size",type:"number",unit:"blocks",helperText:"Maximum world radius",validation:{min:1,max:29999984}},{key:"icon",label:"Server Icon URL",type:"string",helperText:"64x64 PNG image URL",columns:12}]},{id:"security",icon:eP.Z,title:"Security",description:"Authentication and access control settings.",essentialFields:[{key:"onlineMode",label:"Online Mode (Mojang Auth)",type:"boolean",helperText:"Disable to allow cracked clients (not recommended)",restartRequired:!0},{key:"enableWhitelist",label:"Enable Whitelist",type:"boolean",helperText:"Only whitelisted players can join",restartRequired:!0}],advancedFields:[{key:"enforceWhitelist",label:"Enforce Whitelist",type:"boolean",helperText:"Kick non-whitelisted players already online",restartRequired:!0},{key:"enforceSecureProfile",label:"Enforce Secure Profile",type:"boolean",helperText:"Require signed chat messages from players",restartRequired:!0}]},{id:"performance",icon:q.Z,title:"Performance & JVM",description:"Memory, view distance, and JVM optimization settings.",essentialFields:[{key:"memory",label:"Memory",type:"string",helperText:"e.g., 2G, 4G, 8G",restartRequired:!0},{key:"useAikarFlags",label:"Aikar's Flags",type:"boolean",helperText:"Optimized GC flags for Paper/Spigot",restartRequired:!0},{key:"viewDistance",label:"View Distance",type:"number",unit:"chunks",validation:{min:2,max:32}}],advancedFields:[{key:"simulationDistance",label:"Simulation Distance",type:"number",unit:"chunks",validation:{min:3,max:32}},{key:"maxTickTime",label:"Max Tick Time",type:"number",unit:"ms",helperText:"-1 to disable watchdog",validation:{min:-1}},{key:"initMemory",label:"Initial Heap",type:"string",helperText:"e.g., 1G (overrides Memory)",restartRequired:!0},{key:"maxMemory",label:"Max Heap",type:"string",helperText:"e.g., 8G (overrides Memory)",restartRequired:!0},{key:"jvmXxOpts",label:"JVM -XX Options",type:"string",helperText:"Additional -XX JVM flags",restartRequired:!0,columns:12}]},{id:"autopause",icon:eW.Z,title:"Auto-pause / Auto-stop",description:"Automatically pause or stop when no players are connected.",essentialFields:[{key:"enableAutopause",label:"Enable Auto-pause",type:"boolean",helperText:"Pause process when no players connected",restartRequired:!0},{key:"autopauseTimeoutEst",label:"Pause Timeout",type:"number",unit:"seconds",helperText:"Wait time after last player leaves",validation:{min:0}}],advancedFields:[{key:"autopauseTimeoutInit",label:"Init Timeout",type:"number",unit:"seconds",helperText:"Timeout after start without connections",validation:{min:0}},{key:"autopausePeriod",label:"Check Period",type:"number",unit:"seconds",helperText:"Status check interval",validation:{min:1}},{key:"enableAutostop",label:"Enable Auto-stop",type:"boolean",helperText:"Stop container when no players connected",restartRequired:!0},{key:"autostopTimeoutEst",label:"Stop Timeout",type:"number",unit:"seconds",helperText:"Wait time before stopping container",validation:{min:0}}]},{id:"system",icon:eF.Z,title:"System",description:"Timezone, resource pack, RCON, and container settings.",essentialFields:[{key:"tz",label:"Timezone",type:"string",helperText:"e.g., Asia/Seoul, UTC",restartRequired:!0},{key:"resourcePack",label:"Resource Pack URL",type:"string",helperText:"Direct download URL for resource pack",columns:12},{key:"enableRcon",label:"Enable RCON",type:"boolean",helperText:"Remote server console access",restartRequired:!0}],advancedFields:[{key:"resourcePackSha1",label:"Resource Pack SHA1",type:"string",helperText:"40-character hex checksum",columns:12},{key:"resourcePackEnforce",label:"Enforce Resource Pack",type:"boolean",helperText:"Kick players who decline"},{key:"resourcePackPrompt",label:"Resource Pack Prompt",type:"string",helperText:"Custom message for resource pack dialog",columns:12},{key:"rconPassword",label:"RCON Password",type:"password",restartRequired:!0},{key:"rconPort",label:"RCON Port",type:"number",validation:{min:1024,max:65535},restartRequired:!0},{key:"stopDuration",label:"Stop Timeout",type:"number",unit:"seconds",helperText:"Graceful shutdown wait time",restartRequired:!0,validation:{min:0}},{key:"uid",label:"User ID (UID)",type:"number",helperText:"Container process UID",restartRequired:!0,validation:{min:0}},{key:"gid",label:"Group ID (GID)",type:"number",helperText:"Container process GID",restartRequired:!0,validation:{min:0}}]}],eA=["memory","initMemory","maxMemory","useAikarFlags","jvmXxOpts","onlineMode","enableWhitelist","enforceWhitelist","enforceSecureProfile","level","seed","levelType","enableAutopause","enableAutostop","enableRcon","rconPassword","rconPort","tz","uid","gid","stopDuration"];function eO(e){let{serverName:t,isRunning:r}=e,{data:i,isLoading:a}=(0,el.iC)(t),d=(0,el.MH)(),u=(0,el.gx)(),y=(0,el._I)(),[v,j]=(0,n.useState)({}),[g,S]=(0,n.useState)({}),[k,R]=(0,n.useState)(!1),[T,I]=(0,n.useState)(""),[z,P]=(0,n.useState)(!1),[W,F]=(0,n.useState)({open:!1,message:"",severity:"info"});(0,n.useEffect)(()=>{(null==i?void 0:i.config)&&(j(i.config),S(i.config))},[i]);let M=(0,n.useMemo)(()=>{let e=[];for(let t of Object.keys(v))v[t]!==g[t]&&e.push(t);for(let t of Object.keys(g))v[t]===g[t]||e.includes(t)||e.push(t);return e},[v,g]),A=M.length>0,O=M.filter(e=>eA.includes(e)),E=O.length>0,q=(0,n.useCallback)((e,t)=>{j(r=>({...r,[e]:t}))},[]),N=(0,n.useCallback)(()=>{j(g)},[g]),B=(0,n.useCallback)(async e=>{try{let s=await d.mutateAsync({serverName:t,config:v});if(S(s.config),j(s.config),e&&r)try{await y.mutateAsync(t),F({open:!0,message:"Settings saved. Server is restarting...",severity:"warning"})}catch(e){F({open:!0,message:"Settings saved, but server restart failed. Please restart manually.",severity:"error"})}else F({open:!0,message:s.restartRequired?"Settings saved. Restart required for some changes to take effect.":"Settings saved successfully.",severity:s.restartRequired?"warning":"success"})}catch(e){F({open:!0,message:e instanceof Error?e.message:"Failed to save settings",severity:"error"})}finally{P(!1)}},[v,t,r,d,y]),U=(0,n.useCallback)(()=>{E&&r?P(!0):B(!1)},[E,r,B]),L=async()=>{if("RESET"!==T){F({open:!0,message:"Please type RESET to confirm",severity:"warning"});return}try{await u.mutateAsync(t),F({open:!0,message:"World reset successfully",severity:"success"}),R(!1),I("")}catch(e){F({open:!0,message:e instanceof Error?e.message:"Failed to reset world",severity:"error"})}};return a?(0,s.jsx)(o.Z,{sx:{display:"flex",justifyContent:"center",py:8},children:(0,s.jsx)(x.Z,{})}):(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(ep,{serverName:t}),eM.map(e=>(0,s.jsx)(eS,{section:e,values:v,onChange:q},e.id)),(0,s.jsx)(h.Z,{sx:{borderRadius:3,borderColor:"error.main",borderWidth:1,borderStyle:"solid"},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(m.Z,{variant:"h6",gutterBottom:!0,fontWeight:600,color:"error",children:"Danger Zone"}),(0,s.jsx)(D.Z,{sx:{mb:3}}),(0,s.jsxs)(o.Z,{sx:{mb:3},children:[(0,s.jsx)(m.Z,{variant:"subtitle1",fontWeight:600,gutterBottom:!0,children:"Reset World"}),(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"This will permanently delete the current world and generate a new one. This action cannot be undone."}),(0,s.jsx)(l.Z,{variant:"outlined",color:"error",startIcon:(0,s.jsx)(eo.Z,{}),onClick:()=>R(!0),disabled:r,children:"Reset World"}),r&&(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",sx:{ml:2},children:"Stop the server first"})]})]})}),(0,s.jsx)(eR,{hasChanges:A,changedCount:M.length,hasRestartChanges:E,restartFields:O,isSaving:d.isPending,onSave:U,onDiscard:N}),(0,s.jsx)(eT,{open:z,changedFields:O,onSaveOnly:()=>B(!1),onSaveAndRestart:()=>B(!0),onCancel:()=>P(!1)}),(0,s.jsxs)(b.Z,{open:k,onClose:()=>R(!1),maxWidth:"sm",fullWidth:!0,children:[(0,s.jsx)(f.Z,{children:(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsx)(ei.Z,{color:"error"}),(0,s.jsx)(m.Z,{variant:"h6",fontWeight:600,children:"Reset World"})]})}),(0,s.jsxs)(Z.Z,{children:[(0,s.jsxs)(m.Z,{variant:"body1",gutterBottom:!0,children:["This will permanently delete the world for ",(0,s.jsx)("strong",{children:t})," and generate a new one."]}),(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",gutterBottom:!0,children:"This action cannot be undone. All player progress and builds will be lost."}),(0,s.jsx)(C.Z,{fullWidth:!0,label:"Type RESET to confirm",value:T,onChange:e=>I(e.target.value),sx:{mt:3},autoFocus:!0})]}),(0,s.jsxs)(w.Z,{children:[(0,s.jsx)(l.Z,{onClick:()=>R(!1),children:"Cancel"}),(0,s.jsx)(l.Z,{variant:"contained",color:"error",onClick:L,disabled:"RESET"!==T||u.isPending,startIcon:u.isPending?(0,s.jsx)(x.Z,{size:16}):(0,s.jsx)(ea.Z,{}),children:u.isPending?"Resetting...":"Reset World"})]})]}),(0,s.jsx)(en.Z,{open:W.open,autoHideDuration:6e3,onClose:()=>F({...W,open:!1}),anchorOrigin:{vertical:"bottom",horizontal:"right"},children:(0,s.jsx)(c.Z,{onClose:()=>F({...W,open:!1}),severity:W.severity,sx:{width:"100%"},children:W.message})})]})}var eD=r(86702),eE=r(47606),eq=r(407),eN=r(56056),eB=r(11597),eU=r(59602);let eL={admin:{label:"Owner",color:"primary",variant:"filled"},manage:{label:"Operator",color:"info",variant:"outlined"},view:{label:"Viewer",color:"default",variant:"outlined"}};function eH(e){let{permission:t,size:r="medium"}=e,n=eL[t];return(0,s.jsx)(A.Z,{label:n.label,color:n.color,variant:n.variant,size:r})}var eK=r(99046),eG=r(68038),eV=r(34080),eJ=r(39181),eQ=r(5632),e_=r(58919),eX=r(20367),e$=r(42936);function eY(e){var t,r;let{open:i,onClose:a,serverId:d}=e,[u,h]=(0,n.useState)(""),[p,y]=(0,n.useState)(null),[v,j]=(0,n.useState)("view"),{data:g,isLoading:S}=(r={enabled:i},(0,eQ.a)({queryKey:["users","search",u],queryFn:()=>(0,e$.SC)("/api/users?q=".concat(encodeURIComponent(u))),enabled:(null==r?void 0:r.enabled)!==!1&&u.length>=2,staleTime:3e4})),k=function(){let e=(0,e_.NL)();return(0,eX.D)({mutationFn:e=>(0,e$.SC)("/api/user-servers",{method:"POST",body:JSON.stringify(e)}),onSuccess:(t,r)=>{e.invalidateQueries({queryKey:["user-servers",r.serverId]}),e.invalidateQueries({queryKey:["user-servers"]})}})}(),R=(0,n.useMemo)(()=>{var e;return null!==(e=null==g?void 0:g.users)&&void 0!==e?e:[]},[g]),T=()=>{h(""),y(null),j("view"),k.reset(),a()};return(0,s.jsxs)(b.Z,{open:i,onClose:T,maxWidth:"sm",fullWidth:!0,PaperProps:{sx:{borderRadius:3}},children:[(0,s.jsx)(f.Z,{sx:{fontWeight:600},children:"Add User Access"}),(0,s.jsxs)(Z.Z,{sx:{display:"flex",flexDirection:"column",gap:3,pt:"8px !important"},children:[k.isError&&(0,s.jsx)(c.Z,{severity:"error",sx:{mb:1},children:(null===(t=k.error)||void 0===t?void 0:t.message)||"Failed to grant access"}),(0,s.jsx)(eK.Z,{options:R,getOptionLabel:e=>e.name||e.email,isOptionEqualToValue:(e,t)=>e.id===t.id,value:p,onChange:(e,t)=>y(t),inputValue:u,onInputChange:(e,t)=>h(t),loading:S,filterOptions:e=>e,noOptionsText:u.length<2?"Type at least 2 characters":"No users found",renderInput:e=>(0,s.jsx)(C.Z,{...e,label:"Search User",placeholder:"Search by name or email...",InputProps:{...e.InputProps,endAdornment:(0,s.jsxs)(s.Fragment,{children:[S&&(0,s.jsx)(x.Z,{size:20}),e.InputProps.endAdornment]})}}),renderOption:(e,t)=>{var r,n,i;let{key:a,...l}=e;return(0,s.jsxs)(o.Z,{component:"li",...l,sx:{display:"flex",gap:1.5,py:1},children:[(0,s.jsx)(eD.Z,{src:null!==(i=t.image)&&void 0!==i?i:void 0,sx:{width:32,height:32,bgcolor:"primary.main",fontSize:14},children:((null===(r=t.name)||void 0===r?void 0:r[0])||(null===(n=t.email)||void 0===n?void 0:n[0])||"?").toUpperCase()}),(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(m.Z,{variant:"body2",fontWeight:500,children:t.name||"Unknown"}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",children:t.email})]})]},a)}}),(0,s.jsxs)(ej.Z,{children:[(0,s.jsx)(eG.Z,{sx:{fontWeight:500,mb:1},children:"Permission Level"}),(0,s.jsxs)(eV.Z,{value:v,onChange:e=>j(e.target.value),children:[(0,s.jsx)(eb.Z,{value:"view",control:(0,s.jsx)(eJ.Z,{size:"small"}),label:(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(m.Z,{variant:"body2",fontWeight:500,children:"Viewer"}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",children:"Can view server status and logs"})]})}),(0,s.jsx)(eb.Z,{value:"manage",control:(0,s.jsx)(eJ.Z,{size:"small"}),label:(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(m.Z,{variant:"body2",fontWeight:500,children:"Operator"}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",children:"Can start, stop, and configure the server"})]})}),(0,s.jsx)(eb.Z,{value:"admin",control:(0,s.jsx)(eJ.Z,{size:"small"}),label:(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(m.Z,{variant:"body2",fontWeight:500,children:"Owner"}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",children:"Full control including managing other users"})]})})]})]})]}),(0,s.jsxs)(w.Z,{sx:{px:3,pb:2},children:[(0,s.jsx)(l.Z,{onClick:T,color:"inherit",children:"Cancel"}),(0,s.jsx)(l.Z,{onClick:()=>{p&&k.mutate({userId:p.id,serverId:d,permission:v},{onSuccess:T})},variant:"contained",disabled:!p||k.isPending,sx:{borderRadius:2},children:k.isPending?"Adding...":"Add User"})]})]})}function e0(e){var t,r;let{serverId:i}=e,{data:a,isLoading:x,error:b}=(0,eQ.a)({queryKey:["user-servers",i],queryFn:()=>(0,e$.SC)("/api/user-servers?serverId=".concat(encodeURIComponent(i))),enabled:!!i}),f=function(){let e=(0,e_.NL)();return(0,eX.D)({mutationFn:e=>{let{id:t,permission:r}=e;return(0,e$.SC)("/api/user-servers/".concat(encodeURIComponent(t)),{method:"PATCH",body:JSON.stringify({permission:r})})},onSuccess:()=>{e.invalidateQueries({queryKey:["user-servers"]})}})}(),Z=function(){let e=(0,e_.NL)();return(0,eX.D)({mutationFn:e=>(0,e$.SC)("/api/user-servers/".concat(encodeURIComponent(e)),{method:"DELETE"}),onSuccess:()=>{e.invalidateQueries({queryKey:["user-servers"]})}})}(),[w,C]=(0,n.useState)(!1),[S,k]=(0,n.useState)(null),[R,T]=(0,n.useState)(null),z=(e,t)=>{k(e.currentTarget),T(t)},P=()=>{k(null),T(null)},W=e=>{if(!R||R.permission===e){P();return}f.mutate({id:R.id,permission:e},{onSettled:P})},F=null!==(t=null==a?void 0:a.users.filter(e=>"admin"===e.permission).length)&&void 0!==t?t:0,M=(null==R?void 0:R.permission)==="admin"&&F<=1;if(x)return(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,s.jsx)(u.Z,{variant:"text",width:"30%",height:32}),(0,s.jsx)(u.Z,{variant:"rounded",width:120,height:36,sx:{borderRadius:2}})]}),(0,s.jsx)(D.Z,{sx:{mb:2}}),[0,1,2].map(e=>(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:2,py:1.5,borderBottom:"1px solid",borderColor:"divider"},children:[(0,s.jsx)(u.Z,{variant:"circular",width:40,height:40}),(0,s.jsxs)(o.Z,{sx:{flex:1},children:[(0,s.jsx)(u.Z,{variant:"text",width:"40%"}),(0,s.jsx)(u.Z,{variant:"text",width:"60%"})]}),(0,s.jsx)(u.Z,{variant:"rounded",width:80,height:28,sx:{borderRadius:10}}),(0,s.jsx)(u.Z,{variant:"circular",width:32,height:32})]},e))]})});if(b)return(0,s.jsxs)(c.Z,{severity:"error",children:["Failed to load access list: ",b.message]});let A=null!==(r=null==a?void 0:a.users)&&void 0!==r?r:[];return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,s.jsx)(m.Z,{variant:"h6",fontWeight:600,children:"Server Access"}),(0,s.jsx)(l.Z,{variant:"contained",size:"small",startIcon:(0,s.jsx)(eE.Z,{}),onClick:()=>C(!0),sx:{borderRadius:2},children:"Add User"})]}),(0,s.jsx)(D.Z,{sx:{mb:1}}),0===A.length?(0,s.jsx)(o.Z,{sx:{py:4,textAlign:"center"},children:(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",children:"No users have been granted access to this server yet."})}):A.map(e=>{var t,r,n,i,a,l,c,x;return(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:2,py:1.5,"&:not(:last-child)":{borderBottom:"1px solid",borderColor:"divider"}},children:[(0,s.jsx)(eD.Z,{src:null!==(x=null===(t=e.user)||void 0===t?void 0:t.image)&&void 0!==x?x:void 0,sx:{width:40,height:40,bgcolor:"primary.main",fontSize:16},children:((null===(n=e.user)||void 0===n?void 0:null===(r=n.name)||void 0===r?void 0:r[0])||(null===(a=e.user)||void 0===a?void 0:null===(i=a.email)||void 0===i?void 0:i[0])||"?").toUpperCase()}),(0,s.jsxs)(o.Z,{sx:{flex:1,minWidth:0},children:[(0,s.jsx)(m.Z,{variant:"body2",fontWeight:500,noWrap:!0,children:(null===(l=e.user)||void 0===l?void 0:l.name)||"Unknown User"}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.secondary",noWrap:!0,children:(null===(c=e.user)||void 0===c?void 0:c.email)||e.userId})]}),(0,s.jsx)(eH,{permission:e.permission,size:"small"}),(0,s.jsx)(d.Z,{size:"small",onClick:t=>z(t,e),sx:{color:"text.secondary"},children:(0,s.jsx)(I.Z,{fontSize:"small"})})]},e.id)}),(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1,mt:2,pt:1},children:[(0,s.jsx)(eU.Z,{sx:{fontSize:16,color:"text.disabled"}}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.disabled",children:"Only platform admins and server owners can manage access."})]})]})}),(0,s.jsxs)(y.Z,{anchorEl:S,open:!!S,onClose:P,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},disableScrollLock:!0,children:[(0,s.jsxs)(v.Z,{onClick:()=>W("admin"),disabled:(null==R?void 0:R.permission)==="admin",children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eq.Z,{fontSize:"small"})}),(0,s.jsx)(g.Z,{children:"Change to Owner"})]}),(0,s.jsxs)(v.Z,{onClick:()=>W("manage"),disabled:(null==R?void 0:R.permission)==="manage"||M,children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eN.Z,{fontSize:"small"})}),(0,s.jsx)(g.Z,{children:"Change to Operator"})]}),(0,s.jsxs)(v.Z,{onClick:()=>W("view"),disabled:(null==R?void 0:R.permission)==="view"||M,children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eZ.Z,{fontSize:"small"})}),(0,s.jsx)(g.Z,{children:"Change to Viewer"})]}),(0,s.jsx)(D.Z,{}),(0,s.jsxs)(v.Z,{onClick:()=>{R&&Z.mutate(R.id,{onSettled:P})},disabled:M,sx:{color:"error.main"},children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eB.Z,{fontSize:"small",sx:{color:"error.main"}})}),(0,s.jsx)(g.Z,{children:"Remove Access"})]})]}),(0,s.jsx)(eY,{open:w,onClose:()=>C(!1),serverId:i})]})}var e1=r(37228),e2=r(97511);function e3(e){let{label:t,value:r,copyText:n}=e;return(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",py:1},children:[(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",children:t}),(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center"},children:[(0,s.jsx)(m.Z,{variant:"body2",sx:{fontFamily:n?'"Roboto Mono", monospace':"inherit",color:n?"text.primary":"text.secondary"},children:r}),n&&(0,s.jsx)(e2.q,{text:n,size:16})]})]})}function e6(e){let{serverName:t,hostname:r}=e,{data:n,isLoading:i}=(0,e1.UW)();if(i)return(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(u.Z,{variant:"text",width:"40%",height:28,sx:{mb:1}}),(0,s.jsx)(u.Z,{variant:"rectangular",height:1,sx:{mb:2}}),(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",py:1},children:[(0,s.jsx)(u.Z,{variant:"text",width:"30%"}),(0,s.jsx)(u.Z,{variant:"text",width:"40%"})]}),(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",py:1},children:[(0,s.jsx)(u.Z,{variant:"text",width:"30%"}),(0,s.jsx)(u.Z,{variant:"text",width:"40%"})]})]})});let a=(null==n?void 0:n.enabled)&&n.servers.length>0,l=null==n?void 0:n.servers.find(e=>e.serverName===t),d=(null==l?void 0:l.playitDomain)||"Not configured",c=!!(null==l?void 0:l.playitDomain);return(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(m.Z,{variant:"h6",gutterBottom:!0,fontWeight:600,children:"Connection"}),(0,s.jsx)(D.Z,{sx:{mb:2}}),(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",py:1},children:[(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",children:"LAN Address"}),r?(0,s.jsx)(e2.h,{hostname:r,portSuffix:25565,color:"text.primary",showCopyButton:!0}):(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",children:"Not configured"})]}),a&&(0,s.jsx)(e3,{label:"External Address",value:d,copyText:c?d:void 0})]})})}var e5=r(42431),e4=r(76777),e8=r(15761);function e7(e){let{serverName:t}=e,{data:r,isLoading:i,error:a}=(0,eQ.a)({queryKey:["servers",t,"mods"],queryFn:()=>(0,e$.SC)("/api/servers/".concat(encodeURIComponent(t),"/mods")),enabled:!!t}),u=function(){let e=(0,e_.NL)();return(0,eX.D)({mutationFn:e=>{let{serverName:t,slugs:r,source:s}=e;return(0,e$.SC)("/api/servers/".concat(encodeURIComponent(t),"/mods"),{method:"POST",body:JSON.stringify({slugs:r,source:s})})},onSuccess:(t,r)=>{let{serverName:s}=r;e.invalidateQueries({queryKey:["servers",s,"mods"]})}})}(),y=function(){let e=(0,e_.NL)();return(0,eX.D)({mutationFn:e=>{let{serverName:t,slug:r}=e;return(0,e$.SC)("/api/servers/".concat(encodeURIComponent(t),"/mods/").concat(encodeURIComponent(r)),{method:"DELETE"})},onSuccess:(t,r)=>{let{serverName:s}=r;e.invalidateQueries({queryKey:["servers",s,"mods"]})}})}(),[v,j]=(0,n.useState)(!1),[g,w]=(0,n.useState)(""),[S,k]=(0,n.useState)(""),[R,T]=(0,n.useState)(!1),[I,P]=(0,n.useState)({open:!1,message:"",severity:"info"}),{data:W,isLoading:F}=function(e,t){let r=new URLSearchParams;return e&&r.set("q",e),(null==t?void 0:t.limit)!=null&&r.set("limit",String(t.limit)),(null==t?void 0:t.offset)!=null&&r.set("offset",String(t.offset)),(0,eQ.a)({queryKey:["mods","search",e,null==t?void 0:t.limit,null==t?void 0:t.offset],queryFn:()=>(0,e$.SC)("/api/mods/search?".concat(r)),enabled:(null==t?void 0:t.enabled)!==!1&&!!e.trim()})}(S,{limit:10,enabled:v&&S.length>0});(0,n.useEffect)(()=>{let e=setTimeout(()=>{k(g)},300);return()=>clearTimeout(e)},[g]);let M=(0,n.useCallback)(async e=>{try{await y.mutateAsync({serverName:t,slug:e}),T(!0),P({open:!0,message:"Removed ".concat(e),severity:"success"})}catch(e){P({open:!0,message:e instanceof Error?e.message:"Failed to remove mod",severity:"error"})}},[y,t]),q=(0,n.useCallback)(async e=>{try{await u.mutateAsync({serverName:t,slugs:[e]}),T(!0),P({open:!0,message:"Added ".concat(e),severity:"success"})}catch(e){P({open:!0,message:e instanceof Error?e.message:"Failed to add mod",severity:"error"})}},[u,t]),N=new Set;if(null==r?void 0:r.mods)for(let e of Object.values(r.mods))for(let t of e)N.add(t);if(i)return(0,s.jsx)(o.Z,{sx:{display:"flex",justifyContent:"center",py:6},children:(0,s.jsx)(x.Z,{})});if(a)return(0,s.jsxs)(c.Z,{severity:"error",sx:{mt:2},children:["Failed to load mods: ",a.message]});let B=N.size>0;return(0,s.jsxs)(o.Z,{children:[R&&(0,s.jsx)(c.Z,{severity:"info",sx:{mb:2},children:"Restart the server to apply mod changes."}),(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,s.jsx)(m.Z,{variant:"h6",fontWeight:600,children:"Installed Mods"}),(0,s.jsx)(l.Z,{variant:"contained",size:"small",startIcon:(0,s.jsx)(ex.Z,{}),onClick:()=>{w(""),k(""),j(!0)},children:"Add Mods"})]}),(0,s.jsx)(D.Z,{sx:{mb:2}}),B?Object.entries(r.mods).map(e=>{let[t,r]=e;return(0,s.jsxs)(o.Z,{sx:{mb:2},children:[(0,s.jsx)(m.Z,{variant:"subtitle2",color:"text.secondary",sx:{mb:1,textTransform:"capitalize"},children:t}),(0,s.jsx)(o.Z,{sx:{display:"flex",flexWrap:"wrap",gap:1},children:r.map(e=>(0,s.jsx)(A.Z,{label:e,icon:(0,s.jsx)(e4.Z,{}),onDelete:()=>M(e),deleteIcon:(0,s.jsx)(z.Z,{}),variant:"outlined"},e))})]},t)}):(0,s.jsxs)(o.Z,{sx:{textAlign:"center",py:4},children:[(0,s.jsx)(e4.Z,{sx:{fontSize:48,color:"text.disabled",mb:1}}),(0,s.jsx)(m.Z,{variant:"body1",color:"text.secondary",children:"No mods installed"}),(0,s.jsx)(m.Z,{variant:"body2",color:"text.disabled",sx:{mt:.5},children:'Click "Add Mods" to search and install mods from Modrinth'})]})]})}),(0,s.jsxs)(b.Z,{open:v,onClose:()=>j(!1),maxWidth:"sm",fullWidth:!0,PaperProps:{sx:{minHeight:400}},children:[(0,s.jsxs)(f.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["Search Mods",(0,s.jsx)(d.Z,{onClick:()=>j(!1),size:"small",children:(0,s.jsx)(E.Z,{})})]}),(0,s.jsxs)(Z.Z,{children:[(0,s.jsx)(C.Z,{fullWidth:!0,autoFocus:!0,placeholder:"Search Modrinth...",value:g,onChange:e=>w(e.target.value),InputProps:{startAdornment:(0,s.jsx)(O.Z,{position:"start",children:(0,s.jsx)(e5.Z,{})})},sx:{mb:2}}),F&&(0,s.jsx)(o.Z,{sx:{display:"flex",justifyContent:"center",py:4},children:(0,s.jsx)(x.Z,{size:28})}),!F&&W&&0===W.hits.length&&S&&(0,s.jsxs)(m.Z,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",py:4},children:['No mods found for "',S,'"']}),!F&&W&&W.hits.length>0&&(0,s.jsx)(o.Z,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:W.hits.map(e=>{var t;let r=N.has(e.slug);return(0,s.jsx)(h.Z,{variant:"outlined",sx:{borderRadius:2},children:(0,s.jsx)(p.Z,{sx:{py:1.5,px:2,"&:last-child":{pb:1.5}},children:(0,s.jsxs)(o.Z,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:[(0,s.jsx)(eD.Z,{src:e.iconUrl||void 0,variant:"rounded",sx:{width:40,height:40,bgcolor:"action.hover"},children:(0,s.jsx)(e4.Z,{})}),(0,s.jsxs)(o.Z,{sx:{flex:1,minWidth:0},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,s.jsx)(m.Z,{variant:"subtitle2",noWrap:!0,children:e.title}),(0,s.jsx)(l.Z,{size:"small",variant:r?"outlined":"contained",disabled:r||u.isPending,onClick:()=>q(e.slug),sx:{ml:1,minWidth:80,flexShrink:0},children:r?"Installed":"Add"})]}),(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{mt:.25,overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical"},children:e.description}),(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1,mt:.5},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:.25},children:[(0,s.jsx)(e8.Z,{sx:{fontSize:14,color:"text.disabled"}}),(0,s.jsx)(m.Z,{variant:"caption",color:"text.disabled",children:(t=e.downloads)>=1e6?"".concat((t/1e6).toFixed(1),"M"):t>=1e3?"".concat((t/1e3).toFixed(1),"K"):String(t)})]}),e.author&&(0,s.jsxs)(m.Z,{variant:"caption",color:"text.disabled",children:["by ",e.author]})]})]})]})})},e.slug)})})]})]}),(0,s.jsx)(en.Z,{open:I.open,autoHideDuration:4e3,onClose:()=>P(e=>({...e,open:!1})),anchorOrigin:{vertical:"bottom",horizontal:"center"},children:(0,s.jsx)(c.Z,{onClose:()=>P(e=>({...e,open:!1})),severity:I.severity,variant:"filled",children:I.message})})]})}let e9=["Overview","Activity","Mods","Files","Backups","Access","Options"];function te(e){return e.replace(/\x1b\[\?[\d;]*[a-zA-Z]/g,"").replace(/\x1b\[[0-9;]*[a-zA-Z]/g,"").replace(/\x1b=/g,"").replace(/\[\?[\d;]*[a-zA-Z]/g,"").replace(/\[[0-9;]*[a-zA-Z]/g,"").replace(/\[m/g,"").replace(/>\.\.\.\.\r?/g,"").replace(/\r/g,"").trim()}function tt(e){var t,r,i,a,c;let{server:x,onSendCommand:u}=e,[y,v]=(0,n.useState)("Overview"),[j,g]=(0,n.useState)(""),[f,w]=(0,n.useState)(!0),[R,T]=(0,n.useState)(!1),I=(0,n.useRef)(null),{logs:z,isConnected:P}=(0,V.Y)({serverName:x.name}),W=(0,n.useMemo)(()=>z.filter(e=>!e.includes("RCON Listener")&&!e.includes("RCON Client")&&!e.includes("RconClient")),[z]);(0,n.useEffect)(()=>{I.current&&f&&(I.current.scrollTop=I.current.scrollHeight)},[W,f]);let F=async()=>{j.trim()&&u&&(await u(j.trim()),g(""))},M=null!==(a=null===(t=x.stats)||void 0===t?void 0:t.cpuPercent)&&void 0!==a?a:0;(null===(r=x.stats)||void 0===r?void 0:r.memoryUsage)&&x.stats.memoryUsage,function(e){if(!e)return;let t=e.match(/^(\d+)\s*(M|G)?$/i);if(t)parseInt(t[1],10),(t[2]||"M").toUpperCase()}(x.memory);let K=null!==(c=null===(i=x.stats)||void 0===i?void 0:i.memoryPercent)&&void 0!==c?c:0;return(0,s.jsxs)(o.Z,{children:[(0,s.jsx)(o.Z,{sx:{display:"flex",gap:.5,mb:3},children:e9.map(e=>(0,s.jsx)(l.Z,{onClick:()=>v(e),sx:{px:2,py:1,borderRadius:5,fontSize:14,fontWeight:500,textTransform:"none",bgcolor:y===e?"primary.main":"transparent",color:y===e?"#0a0e14":"text.secondary","&:hover":{bgcolor:y===e?"primary.main":(0,k.Fq)("#1bd96a",.1)}},children:e},e))}),(0,s.jsxs)(o.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(3, 1fr)"},gap:2,mb:2.5},children:[(0,s.jsx)(G,{value:"".concat(M.toFixed(2),"%"),unit:"/ 100%",label:"CPU usage",icon:(0,s.jsx)(q.Z,{sx:{fontSize:28}}),progress:M,progressMax:100,color:"#1bd96a"}),(0,s.jsx)(G,{value:"".concat(K.toFixed(2),"%"),unit:"/ 100%",label:"Memory usage",icon:(0,s.jsx)(N.Z,{sx:{fontSize:28}}),progress:K,progressMax:100,color:"#1bd96a"}),(0,s.jsx)(G,{value:x.worldSize||"0 B",unit:"/ 10 GB",label:"World size",icon:(0,s.jsx)(B.Z,{sx:{fontSize:28}}),progress:function(e){if(!e)return 0;let t=e.match(/^([\d.]+)\s*(B|KB|MB|MiB|GB|GiB)?$/i);if(!t)return 0;let r=parseFloat(t[1]);switch((t[2]||"B").toUpperCase()){case"GB":case"GIB":return 1024*r;case"MB":case"MIB":return r;case"KB":return r/1024;default:return r/1048576}}(x.worldSize),progressMax:10240,color:"#1bd96a"})]}),(0,s.jsxs)(h.Z,{sx:{bgcolor:"background.paper",borderRadius:3,border:"1px solid",borderColor:"divider",overflow:"hidden"},children:[(0,s.jsxs)(o.Z,{sx:{px:3,py:2,borderBottom:"1px solid",borderColor:"divider",display:"flex",alignItems:"center",gap:1.25},children:[(0,s.jsx)(m.Z,{variant:"h6",sx:{fontWeight:700,color:"text.primary"},children:"Console"}),(0,s.jsx)(o.Z,{sx:{width:10,height:10,borderRadius:"50%",bgcolor:P?"primary.main":"error.main",boxShadow:P?"0 0 8px rgba(27, 217, 106, 0.4)":"0 0 8px rgba(239, 68, 68, 0.4)"}})]}),(0,s.jsxs)(o.Z,{sx:{position:"relative"},children:[(0,s.jsx)(o.Z,{ref:I,onScroll:()=>{if(!I.current)return;let{scrollTop:e,scrollHeight:t,clientHeight:r}=I.current;w(t-e-r<30)},sx:{height:360,overflowY:"auto",px:2.5,py:2,fontFamily:'"Roboto Mono", monospace',fontSize:13,lineHeight:1.85,color:"#b4b6c4",bgcolor:"#0a0a0a",scrollbarWidth:"thin",scrollbarColor:"#3a3d4e #0a0a0a","&::-webkit-scrollbar":{width:8},"&::-webkit-scrollbar-track":{bgcolor:"#0a0a0a"},"&::-webkit-scrollbar-thumb":{bgcolor:"#3a3d4e",borderRadius:4}},children:0===W.length?(0,s.jsx)(m.Z,{sx:{color:"text.secondary",textAlign:"center",py:8},children:"Waiting for logs..."}):W.map((e,t)=>{let r=function(e){let t=te(e).match(/\[(\d{2}:\d{2}:\d{2})\]\s*\[([^/]+)\/(\w+)\]:\s*(.+)/);return t?{time:t[1],thread:t[2],level:t[3]||"INFO",msg:t[4]}:null}(e);return r?(0,s.jsxs)(o.Z,{sx:{display:"flex",gap:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:[(0,s.jsxs)(o.Z,{component:"span",sx:{color:"#4a4d60"},children:["[",r.time,"]"]}),(0,s.jsxs)(o.Z,{component:"span",sx:{color:"#4a4d60"},children:["\xa0[",r.thread,"/",(0,s.jsx)(o.Z,{component:"span",sx:{color:"WARN"===r.level?"#e8a848":"#6b6e80"},children:r.level}),"]:\xa0"]}),(0,s.jsx)(o.Z,{component:"span",sx:{color:"WARN"===r.level?"#c4a45a":"#b4b6c4"},children:r.msg})]},t):(0,s.jsx)(o.Z,{sx:{color:"#b4b6c4"},children:te(e)},t)})}),(0,s.jsx)(d.Z,{onClick:()=>T(!0),sx:{position:"absolute",top:12,right:12,width:36,height:36,borderRadius:2,bgcolor:"#282a3a",border:"1px solid #3a3d4e",color:"#8b8da0","&:hover":{bgcolor:"#313440"}},children:(0,s.jsx)(U.Z,{sx:{fontSize:18}})}),!f&&(0,s.jsx)(d.Z,{onClick:()=>{I.current&&I.current.scrollTo({top:I.current.scrollHeight,behavior:"smooth"})},sx:{position:"absolute",bottom:12,right:12,width:36,height:36,borderRadius:2,bgcolor:"#282a3a",border:"1px solid #3a3d4e",color:"#8b8da0","&:hover":{bgcolor:"#313440"}},children:(0,s.jsx)(L.Z,{sx:{fontSize:18}})})]}),(0,s.jsx)(o.Z,{sx:{px:2.5,py:1.5,borderTop:"1px solid",borderColor:"divider"},children:(0,s.jsx)(C.Z,{fullWidth:!0,size:"small",placeholder:"Send a command",value:j,onChange:e=>g(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),F())},disabled:!P,InputProps:{startAdornment:(0,s.jsx)(O.Z,{position:"start",children:(0,s.jsx)(H.Z,{sx:{fontSize:16,color:"#999"}})}),sx:{bgcolor:"#13141c",borderRadius:2,fontFamily:'"Roboto Mono", monospace',fontSize:14,"& .MuiOutlinedInput-notchedOutline":{borderColor:"#2a2d3e"},"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:"#3a3d4e"},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:"primary.main"}}}})})]}),"Overview"===y&&(0,s.jsxs)(S.ZP,{container:!0,spacing:3,sx:{mt:1},children:[(0,s.jsx)(S.ZP,{item:!0,xs:12,md:6,children:(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(m.Z,{variant:"h6",gutterBottom:!0,fontWeight:600,children:"Server Information"}),(0,s.jsx)(D.Z,{sx:{mb:2}}),(0,s.jsx)(tr,{label:"Name",value:x.name}),(0,s.jsx)(tr,{label:"Container",value:x.container}),(0,s.jsx)(tr,{label:"Hostname",value:x.hostname?(0,s.jsx)(e2.h,{hostname:x.hostname,color:"text.primary"}):void 0}),(0,s.jsx)(tr,{label:"Type",value:x.type}),(0,s.jsx)(tr,{label:"Version",value:x.version}),(0,s.jsx)(tr,{label:"Memory",value:x.memory}),(0,s.jsx)(tr,{label:"Uptime",value:x.uptime||function(e){if(!e||e<0)return"0s";let t=Math.floor(e/3600),r=Math.floor(e%3600/60),s=e%60;return t>0?"".concat(t,"h ").concat(r,"m"):r>0?"".concat(r,"m ").concat(s,"s"):"".concat(s,"s")}(x.uptimeSeconds)})]})})}),(0,s.jsx)(S.ZP,{item:!0,xs:12,md:6,children:(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(m.Z,{variant:"h6",gutterBottom:!0,fontWeight:600,children:"Players"}),(0,s.jsx)(D.Z,{sx:{mb:2}}),x.players?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(tr,{label:"Online",value:"".concat(x.players.online," / ").concat(x.players.max)}),x.players.players&&x.players.players.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{mt:2,mb:1},children:"Online Players"}),(0,s.jsx)(o.Z,{sx:{display:"flex",flexWrap:"wrap",gap:1},children:x.players.players.map(e=>(0,s.jsx)(A.Z,{label:e,size:"small"},e))})]})]}):(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",children:"Player information unavailable"})]})})}),(0,s.jsx)(S.ZP,{item:!0,xs:12,md:6,children:(0,s.jsx)(e6,{serverName:x.name,hostname:x.hostname})})]}),"Activity"===y&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(m.Z,{variant:"h6",gutterBottom:!0,fontWeight:600,children:"Server Activity"}),(0,s.jsx)(D.Z,{sx:{mb:2}}),(0,s.jsx)(es,{serverName:x.name})]})})}),"Mods"===y&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(e7,{serverName:x.name})}),"Files"===y&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(m.Z,{variant:"body1",color:"text.secondary",children:"File browser coming soon"})}),"Backups"===y&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(m.Z,{variant:"body1",color:"text.secondary",children:"Backup management coming soon"})}),"Access"===y&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(e0,{serverId:x.name})}),"Options"===y&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(eO,{serverName:x.name,isRunning:"running"===x.status})}),(0,s.jsxs)(b.Z,{open:R,onClose:()=>T(!1),maxWidth:"xl",fullWidth:!0,PaperProps:{sx:{height:"90vh",bgcolor:"background.paper"}},children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",p:2,borderBottom:1,borderColor:"divider"},children:[(0,s.jsxs)(m.Z,{variant:"h6",sx:{fontFamily:'"Minecraft", sans-serif',fontWeight:400,letterSpacing:"0.05em"},children:["Console - ",x.name]}),(0,s.jsx)(d.Z,{onClick:()=>T(!1),children:(0,s.jsx)(E.Z,{})})]}),(0,s.jsx)(Z.Z,{sx:{p:0,display:"flex",flexDirection:"column"},children:(0,s.jsx)(J.K,{serverName:x.name})})]})]})}function tr(e){let{label:t,value:r}=e;return r?(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",py:1},children:[(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",children:t}),(0,s.jsx)(m.Z,{variant:"body2",component:"div",sx:{fontWeight:500},children:r})]}):null}var ts=r(93757);function tn(){return(0,s.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,s.jsx)("line",{x1:"8",y1:"12",x2:"16",y2:"12"})]})}function ti(){return(0,s.jsxs)("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,s.jsx)("path",{d:"M21 2v6h-6"}),(0,s.jsx)("path",{d:"M3 12a9 9 0 0115.36-6.36L21 8"}),(0,s.jsx)("path",{d:"M3 22v-6h6"}),(0,s.jsx)("path",{d:"M21 12a9 9 0 01-15.36 6.36L3 16"})]})}function ta(){var e,t,r,A;let O=(0,i.useParams)(),D=(0,a.x)(),E=decodeURIComponent(O.name),{data:q,isLoading:N,error:B}=(0,el.Hy)(E),{status:U,health:L}=function(e){let{serverName:t,onStatusChange:r,enabled:s=!0,reconnectInterval:i=3e3}=e,[a,o]=(0,n.useState)(null),[l,d]=(0,n.useState)(null);(0,n.useEffect)(()=>{o(null),d(null)},[t]);let c=(0,n.useCallback)(e=>{if("server-status"===e.type){let t=e.data.status,s=e.data.health;o(t),d(s),null==r||r(t,s)}},[r]),{isConnected:x,reconnect:u,retryCount:h}=(0,ts.D)({url:"/api/sse/servers/".concat(encodeURIComponent(t),"/status"),onMessage:c,enabled:s,reconnectInterval:i});return{status:a,health:l,isConnected:x,reconnect:u,retryCount:h}}({serverName:E,enabled:!!E}),[H,K]=(0,n.useState)(null),[G,V]=(0,n.useState)(!1),[J,Q]=(0,n.useState)(""),_=(0,el.jM)(),X=(0,el.Aw)(),$=(0,el._I)(),Y=(0,el.Hq)(),ee=async()=>{try{await _.mutateAsync(E)}catch(e){console.error("Failed to start server:",e)}},et=async()=>{try{await X.mutateAsync(E)}catch(e){console.error("Failed to stop server:",e)}},er=async()=>{try{await $.mutateAsync(E)}catch(e){console.error("Failed to restart server:",e)}},es=async e=>{try{await fetch("/api/servers/".concat(encodeURIComponent(E),"/exec"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:e})})}catch(e){console.error("Failed to send command:",e)}},en=U||(null==q?void 0:q.server.status),ei=_.isPending||X.isPending||$.isPending,ea=null==q?void 0:q.server;return(0,s.jsxs)(s.Fragment,{children:[B&&(0,s.jsxs)(c.Z,{severity:"error",sx:{mb:3},children:["Failed to load server: ",B.message]}),_.isError&&(0,s.jsxs)(c.Z,{severity:"error",sx:{mb:3},children:["Failed to start server: ",null===(e=_.error)||void 0===e?void 0:e.message]}),X.isError&&(0,s.jsxs)(c.Z,{severity:"error",sx:{mb:3},children:["Failed to stop server: ",null===(t=X.error)||void 0===t?void 0:t.message]}),$.isError&&(0,s.jsxs)(c.Z,{severity:"error",sx:{mb:3},children:["Failed to restart server: ",null===(r=$.error)||void 0===r?void 0:r.message]}),Y.isError&&(0,s.jsxs)(c.Z,{severity:"error",sx:{mb:3},children:["Failed to delete server: ",null===(A=Y.error)||void 0===A?void 0:A.message]}),N?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:2,mb:2.5},children:[(0,s.jsx)(u.Z,{variant:"rounded",width:64,height:64,sx:{borderRadius:3,flexShrink:0}}),(0,s.jsxs)(o.Z,{sx:{flex:1},children:[(0,s.jsx)(u.Z,{variant:"text",width:80,height:18,sx:{mb:.5}}),(0,s.jsx)(u.Z,{variant:"text",width:"40%",height:40}),(0,s.jsxs)(o.Z,{sx:{display:"flex",gap:2,mt:.75},children:[(0,s.jsx)(u.Z,{variant:"text",width:100}),(0,s.jsx)(u.Z,{variant:"text",width:60}),(0,s.jsx)(u.Z,{variant:"text",width:140}),(0,s.jsx)(u.Z,{variant:"text",width:50})]})]}),(0,s.jsxs)(o.Z,{sx:{display:"flex",gap:1,flexShrink:0},children:[(0,s.jsx)(u.Z,{variant:"rounded",width:90,height:40,sx:{borderRadius:2}}),(0,s.jsx)(u.Z,{variant:"rounded",width:36,height:36,sx:{borderRadius:2}})]})]}),(0,s.jsx)(o.Z,{sx:{display:"flex",gap:.5,mb:3},children:[80,70,65,50,65,65].map((e,t)=>(0,s.jsx)(u.Z,{variant:"rounded",width:e,height:36,sx:{borderRadius:5}},t))}),(0,s.jsx)(o.Z,{sx:{display:"grid",gridTemplateColumns:{xs:"1fr",sm:"repeat(3, 1fr)"},gap:2,mb:2.5},children:[0,1,2].map(e=>(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:1.5},children:[(0,s.jsx)(u.Z,{variant:"text",width:"50%"}),(0,s.jsx)(u.Z,{variant:"circular",width:28,height:28})]}),(0,s.jsx)(u.Z,{variant:"text",width:"60%",height:36}),(0,s.jsx)(u.Z,{variant:"rounded",width:"100%",height:6,sx:{borderRadius:3,mt:1}})]})},e))}),(0,s.jsxs)(h.Z,{sx:{borderRadius:3,border:"1px solid",borderColor:"divider"},children:[(0,s.jsxs)(o.Z,{sx:{px:3,py:2,borderBottom:"1px solid",borderColor:"divider",display:"flex",alignItems:"center",gap:1.25},children:[(0,s.jsx)(u.Z,{variant:"text",width:80,height:28}),(0,s.jsx)(u.Z,{variant:"circular",width:10,height:10})]}),(0,s.jsx)(u.Z,{variant:"rectangular",height:360,sx:{bgcolor:"#0a0a0a"}}),(0,s.jsx)(o.Z,{sx:{px:2.5,py:1.5,borderTop:"1px solid",borderColor:"divider"},children:(0,s.jsx)(u.Z,{variant:"rounded",width:"100%",height:40,sx:{borderRadius:2}})})]}),(0,s.jsxs)(S.ZP,{container:!0,spacing:3,sx:{mt:1},children:[(0,s.jsx)(S.ZP,{item:!0,xs:12,md:6,children:(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(u.Z,{variant:"text",width:"40%",height:28,sx:{mb:1}}),(0,s.jsx)(u.Z,{variant:"rectangular",height:1,sx:{mb:2}}),[0,1,2,3,4,5,6].map(e=>(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",py:1},children:[(0,s.jsx)(u.Z,{variant:"text",width:"30%"}),(0,s.jsx)(u.Z,{variant:"text",width:"40%"})]},e))]})})}),(0,s.jsx)(S.ZP,{item:!0,xs:12,md:6,children:(0,s.jsx)(h.Z,{sx:{borderRadius:3},children:(0,s.jsxs)(p.Z,{children:[(0,s.jsx)(u.Z,{variant:"text",width:"30%",height:28,sx:{mb:1}}),(0,s.jsx)(u.Z,{variant:"rectangular",height:1,sx:{mb:2}}),(0,s.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",py:1},children:[(0,s.jsx)(u.Z,{variant:"text",width:"25%"}),(0,s.jsx)(u.Z,{variant:"text",width:"20%"})]})]})})})]})]}):ea?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:2,mb:2.5},children:[(0,s.jsx)(o.Z,{sx:{width:64,height:64,borderRadius:3,overflow:"hidden",bgcolor:"background.paper",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,border:"1px solid",borderColor:"divider",fontSize:36},children:function(e){if(!e)return"\uD83C\uDFAE";let t=e.toUpperCase();return["PAPER","SPIGOT","BUKKIT","PURPUR"].includes(t)?"\uD83D\uDD0C":["FORGE","NEOFORGE","FABRIC","QUILT"].includes(t)?"\uD83D\uDD27":"\uD83C\uDFAE"}(ea.type)}),(0,s.jsxs)(o.Z,{sx:{flex:1},children:[(0,s.jsxs)(m.Z,{onClick:()=>D.push("/servers"),sx:{fontSize:12,color:"primary.main",cursor:"pointer",mb:.25,display:"flex",alignItems:"center",gap:.5,"&:hover":{textDecoration:"underline"}},children:[(0,s.jsx)(R.Z,{sx:{fontSize:14}})," All servers"]}),(0,s.jsx)(m.Z,{variant:"h4",component:"h1",sx:{fontFamily:'"Minecraft", sans-serif',fontWeight:400,color:"text.primary",letterSpacing:"0.5px",m:0,textTransform:"uppercase"},children:E}),(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:0,mt:.75,flexWrap:"wrap",fontSize:13,color:"text.secondary"},children:[ea.version&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,s.jsx)(P.Z,{sx:{fontSize:14}}),"Minecraft ",ea.version]}),(0,s.jsx)(o.Z,{component:"span",sx:{mx:1.25,color:"#3a3d4e"},children:"|"})]}),ea.type&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,s.jsx)(W.Z,{sx:{fontSize:14}}),ea.type]}),(0,s.jsx)(o.Z,{component:"span",sx:{mx:1.25,color:"#3a3d4e"},children:"|"})]}),ea.hostname&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,s.jsx)(F.Z,{sx:{fontSize:14}}),(0,s.jsx)(e2.h,{hostname:ea.hostname,fontSize:13})]}),(0,s.jsx)(o.Z,{component:"span",sx:{mx:1.25,color:"#3a3d4e"},children:"|"})]}),(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,s.jsx)(M.Z,{sx:{fontSize:14}}),ea.uptime||function(e){if(!e||e<0)return"0s";let t=Math.floor(e/3600),r=Math.floor(e%3600/60),s=e%60;return t>0?"".concat(t,"h ").concat(r,"m"):r>0?"".concat(r,"m ").concat(s,"s"):"".concat(s,"s")}(ea.uptimeSeconds)||"0s"]})]})]}),(0,s.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1.25,flexShrink:0},children:[("stopped"===en||"exited"===en||"not_created"===en)&&(0,s.jsx)(l.Z,{variant:"contained",color:"success",startIcon:ei?(0,s.jsx)(x.Z,{size:16,color:"inherit"}):(0,s.jsx)(T.Z,{}),onClick:ee,disabled:ei,sx:{px:2,py:1,borderRadius:2,fontSize:14,fontWeight:600},children:"Start"}),"running"===en&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(l.Z,{variant:"outlined",startIcon:ei?(0,s.jsx)(x.Z,{size:16}):(0,s.jsx)(tn,{}),onClick:et,disabled:ei,sx:{px:2,py:1,borderRadius:2,fontSize:14,fontWeight:500,borderColor:"divider",color:"text.secondary","&:hover":{borderColor:"text.secondary",bgcolor:(0,k.Fq)("#fff",.05)}},children:"Stop"}),(0,s.jsx)(l.Z,{variant:"contained",startIcon:ei?(0,s.jsx)(x.Z,{size:16,color:"inherit"}):(0,s.jsx)(ti,{}),onClick:er,disabled:ei,sx:{px:2,py:1,borderRadius:2,fontSize:14,fontWeight:600,bgcolor:"primary.main",color:"#0a0e14","&:hover":{bgcolor:"primary.dark"}},children:"Restart"})]}),(0,s.jsx)(d.Z,{onClick:e=>K(e.currentTarget),sx:{width:36,height:36,borderRadius:2,border:"1px solid",borderColor:"divider",color:"text.secondary"},children:(0,s.jsx)(I.Z,{sx:{fontSize:18}})}),(0,s.jsx)(y.Z,{anchorEl:H,open:!!H,onClose:()=>K(null),children:(0,s.jsxs)(v.Z,{onClick:()=>{K(null),V(!0),Q("")},sx:{color:"error.main"},children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(z.Z,{fontSize:"small",sx:{color:"error.main"}})}),(0,s.jsx)(g.Z,{children:"Delete Server"})]})})]})]}),(0,s.jsx)(tt,{server:ea,onSendCommand:es})]}):(0,s.jsx)(c.Z,{severity:"warning",children:"Server not found"}),(0,s.jsxs)(b.Z,{open:G,onClose:()=>{V(!1),Q("")},maxWidth:"sm",fullWidth:!0,children:[(0,s.jsx)(f.Z,{children:"Delete Server"}),(0,s.jsxs)(Z.Z,{children:[(0,s.jsxs)(m.Z,{sx:{mb:2},children:["This action cannot be undone. Type ",(0,s.jsx)("strong",{children:E})," to confirm deletion."]}),(0,s.jsx)(C.Z,{label:"Server name",value:J,onChange:e=>Q(e.target.value),fullWidth:!0,autoFocus:!0})]}),(0,s.jsxs)(w.Z,{sx:{px:3,pb:2},children:[(0,s.jsx)(l.Z,{onClick:()=>{V(!1),Q("")},children:"Cancel"}),(0,s.jsx)(l.Z,{variant:"contained",color:"error",onClick:()=>{J===E&&Y.mutate({name:E,force:!0},{onSuccess:()=>{D.push("/servers")}})},disabled:J!==E||Y.isPending,startIcon:Y.isPending?(0,s.jsx)(x.Z,{size:16}):null,children:Y.isPending?"Deleting...":"Delete"})]})]})]})}},56813:function(e,t,r){"use strict";r.d(t,{I:function(){return a}});var s=r(94655),n=r(25333),i=r(82925);function a(e){let{action:t,size:r="small"}=e,a=i.Lu[t]||"default",o=i.n3[t]||t;return(0,s.jsx)(n.Z,{label:o,color:a,size:r,variant:"filled",sx:{fontWeight:600,fontSize:"small"===r?"0.7rem":"0.8rem"}})}},26892:function(e,t,r){"use strict";r.d(t,{c:function(){return o}});var s=r(94655),n=r(25333),i=r(46207),a=r(43436);function o(e){let{status:t,size:r="small"}=e;return(0,s.jsx)(n.Z,{icon:"success"===t?(0,s.jsx)(i.Z,{}):(0,s.jsx)(a.Z,{}),label:"success"===t?"OK":"Error",color:"success"===t?"success":"error",size:r,variant:"outlined",sx:{fontWeight:500,fontSize:"small"===r?"0.7rem":"0.8rem"}})}},97511:function(e,t,r){"use strict";r.d(t,{q:function(){return l},h:function(){return p}});var s=r(94655),n=r(35106),i=r(79983),a=r(10449),o=r(24559);function l(e){let{text:t,size:r=14}=e,[l,d]=(0,n.useState)(!1),c=async e=>{e.stopPropagation();try{await navigator.clipboard.writeText(t),d(!0),setTimeout(()=>d(!1),2e3)}catch(e){}};return(0,s.jsx)(i.Z,{size:"small",onClick:c,sx:{ml:.5,p:.25,color:l?"success.main":"text.secondary","&:hover":{bgcolor:"action.hover"}},"aria-label":l?"Copied":"Copy to clipboard",children:l?(0,s.jsx)(o.Z,{sx:{fontSize:r}}):(0,s.jsx)(a.Z,{sx:{fontSize:r}})})}var d=r(7281),c=r(31317),x=r(25333),u=r(93300);function h(e){return e?e.split(",").map(e=>e.trim()).filter(Boolean):[]}function p(e){let{hostname:t,portSuffix:r,color:i="text.secondary",fontSize:a,showCopyButton:o=!1}=e,[p,m]=(0,n.useState)(null),y=h(t),v=function(e){let t=h(e);return 0===t.length?"-":t.find(e=>e.endsWith(".local"))||t[0]}(t),j=e=>r?"".concat(e,":").concat(r):e;return 0===y.length?(0,s.jsx)(d.Z,{component:"span",sx:{color:i,fontSize:a,display:"inline"},children:"-"}):1===y.length?(0,s.jsxs)(d.Z,{component:"span",sx:{display:"inline-flex",alignItems:"center"},children:[(0,s.jsx)(d.Z,{component:"span",sx:{color:i,fontSize:a,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:j(v)}),o&&(0,s.jsx)(l,{text:j(v)})]}):(0,s.jsxs)(d.Z,{component:"span",sx:{display:"inline-flex",alignItems:"center",gap:.75,minWidth:0},children:[(0,s.jsx)(d.Z,{component:"span",sx:{color:i,fontSize:a,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:j(v)}),(0,s.jsx)(x.Z,{label:"+".concat(y.length-1),size:"small",onClick:e=>{e.stopPropagation(),m(e.currentTarget)},sx:{height:20,fontSize:11,cursor:"pointer","& .MuiChip-label":{px:.75}}}),(0,s.jsx)(u.ZP,{open:!!p,anchorEl:p,onClose:()=>{m(null)},onClick:e=>e.stopPropagation(),anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,s.jsx)(d.Z,{sx:{p:1.5,minWidth:200},children:y.map(e=>(0,s.jsxs)(d.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",py:.5},children:[(0,s.jsx)(c.Z,{variant:"body2",sx:{fontFamily:'"Roboto Mono", monospace',fontSize:12},children:j(e)}),(0,s.jsx)(l,{text:j(e)})]},e))})})]})}},84509:function(e,t,r){"use strict";r.d(t,{DM:function(){return a},HZ:function(){return l},VM:function(){return o},hT:function(){return i},oL:function(){return d}});var s=r(5632),n=r(42936);function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,r=function(e){let t=new URLSearchParams;e.action&&t.set("action",e.action),e.actor&&t.set("actor",e.actor),e.targetType&&t.set("targetType",e.targetType),e.targetName&&t.set("targetName",e.targetName),e.status&&t.set("status",e.status),e.from&&t.set("from",e.from),e.to&&t.set("to",e.to),void 0!==e.limit&&t.set("limit",String(e.limit)),void 0!==e.offset&&t.set("offset",String(e.offset)),e.sort&&t.set("sort",e.sort);let r=t.toString();return r?"?".concat(r):""}(e);return(0,s.a)({queryKey:["audit-logs",e],queryFn:()=>(0,n.SC)("/api/audit-logs".concat(r)),enabled:(null==t?void 0:t.enabled)!==!1})}function a(e){return(0,s.a)({queryKey:["audit-logs","stats"],queryFn:()=>(0,n.SC)("/api/audit-logs/stats"),enabled:(null==e?void 0:e.enabled)!==!1,refetchInterval:3e4})}function o(e,t){return(0,s.a)({queryKey:["audit-logs",e],queryFn:()=>(0,n.SC)("/api/audit-logs/".concat(encodeURIComponent(e))),enabled:(null==t?void 0:t.enabled)!==!1&&!!e})}function l(e,t){var r;return i({targetType:"server",targetName:e,limit:null!==(r=null==t?void 0:t.limit)&&void 0!==r?r:20},{enabled:(null==t?void 0:t.enabled)!==!1&&!!e})}function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return i({limit:e,sort:"timestamp:desc"})}},37228:function(e,t,r){"use strict";r.d(t,{Bc:function(){return l},N$:function(){return d},UW:function(){return o}});var s=r(5632),n=r(58919),i=r(20367),a=r(42936);function o(){return(0,s.a)({queryKey:["playit-status"],queryFn:()=>(0,a.SC)("/api/playit/status"),refetchInterval:3e4})}function l(){let e=(0,n.NL)();return(0,i.D)({mutationFn:()=>(0,a.SC)("/api/playit/start",{method:"POST"}),onSuccess:()=>{e.invalidateQueries({queryKey:["playit-status"]})}})}function d(){let e=(0,n.NL)();return(0,i.D)({mutationFn:()=>(0,a.SC)("/api/playit/stop",{method:"POST"}),onSuccess:()=>{e.invalidateQueries({queryKey:["playit-status"]})}})}},82925:function(e,t,r){"use strict";r.d(t,{KK:function(){return o},Lu:function(){return s},Xn:function(){return a},n3:function(){return n},xg:function(){return i}});let s={"server.create":"success","server.delete":"error","server.start":"info","server.stop":"warning","server.restart":"secondary","player.whitelist.add":"success","player.whitelist.remove":"warning","player.ban":"error","player.unban":"success","player.op":"info","player.deop":"warning","player.kick":"error","audit.purge":"default"},n={"server.create":"Create","server.delete":"Delete","server.start":"Start","server.stop":"Stop","server.restart":"Restart","player.whitelist.add":"Whitelist Add","player.whitelist.remove":"Whitelist Remove","player.ban":"Ban","player.unban":"Unban","player.op":"Op","player.deop":"Deop","player.kick":"Kick","audit.purge":"Purge"},i=["server.create","server.delete","server.start","server.stop","server.restart","player.whitelist.add","player.whitelist.remove","player.ban","player.unban","player.op","player.deop","player.kick","audit.purge"],a=["server.create","server.delete","server.start","server.stop","server.restart"],o=["player.whitelist.add","player.whitelist.remove","player.ban","player.unban","player.op","player.deop","player.kick"]}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,540,4416,2538,880,5511,55,7727,8347,8738,1658,6727,6645,674,4219,4436,2666,5787,3669,2757,1744],function(){return e(e.s=59616)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[224],{49726:function(e,r,t){Promise.resolve().then(t.bind(t,7854))},7854:function(e,r,t){"use strict";t.r(r),t.d(r,{default:function(){return et}});var n=t(94655),s=t(35106),a=t(31358),l=t(7281),i=t(30417),o=t(81071),c=t(93017),d=t(69899),u=t(31317),x=t(76492),m=t(32366),p=t(78067),h=t(84840),f=t(97436),v=t(52082),g=t(89923),j=t(10297),y=t(42431),Z=t(628),b=t(41565),S=t(25935),C=t(79983),k=t(25333),w=t(97511),I=t(5501),P=t(93315),T=t(27171),E=t(96292);let F=e=>{switch(e){case"running":return"success";case"stopped":case"exited":case"not_created":return"error";case"created":return"warning";default:return"default"}},R=e=>{switch(e){case"running":return"Running";case"stopped":case"exited":return"Stopped";case"not_created":return"Not Created";case"created":return"Created";default:return e||"Unknown"}};function W(e){let{server:r,statusOverride:t,onClick:s,onStart:a,onStop:i,loading:o=!1}=e,c=(null==t?void 0:t.status)||r.status,d=(e,t)=>{e.stopPropagation(),t(r.name)},x="running"===c,m="stopped"===c||"exited"===c||"not_created"===c;return(0,n.jsxs)(Z.Z,{role:"article",onClick:()=>{s&&s(r.name)},sx:{cursor:s?"pointer":"default",transition:"all 0.2s",height:180,display:"flex",flexDirection:"column","&:hover":s?{transform:"translateY(-2px)",boxShadow:4}:{}},children:[(0,n.jsxs)(b.Z,{sx:{flex:1,pb:1},children:[(0,n.jsxs)(l.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,n.jsx)(u.Z,{variant:"h6",component:"h3",sx:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1,mr:1},children:r.name}),(0,n.jsx)(k.Z,{label:R(c),size:"small",color:F(c),sx:{fontWeight:500,minWidth:70}})]}),(0,n.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1.5},children:[(0,n.jsx)(E.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,n.jsx)(w.h,{hostname:r.hostname})]}),(0,n.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsx)(T.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,n.jsx)(u.Z,{variant:"body2",color:"text.secondary",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:r.container})]})]}),(0,n.jsxs)(S.Z,{sx:{justifyContent:"flex-end",px:2,py:1.5,borderTop:"1px solid",borderColor:"divider"},children:[m&&a&&(0,n.jsx)(C.Z,{"aria-label":"Start server",color:"success",onClick:e=>d(e,a),disabled:o,size:"small",children:(0,n.jsx)(I.Z,{})}),x&&i&&(0,n.jsx)(C.Z,{"aria-label":"Stop server",color:"error",onClick:e=>d(e,i),disabled:o,size:"small",children:(0,n.jsx)(P.Z,{})}),!m&&!x&&(0,n.jsx)(l.Z,{sx:{height:34}})]})]})}function M(e){let{servers:r,statusMap:t={},onServerClick:a,onStart:o,onStop:c,onCreate:d,loadingServers:x=[]}=e,[p,Z]=(0,s.useState)(""),[b,S]=(0,s.useState)("all"),C=(0,s.useMemo)(()=>r.filter(e=>{if(p&&!e.name.toLowerCase().includes(p.toLowerCase()))return!1;let r=t[e.name],n=(null==r?void 0:r.status)||e.status;return("running"!==b||"running"===n)&&("stopped"!==b||"stopped"===n||"exited"===n||"not_created"===n)}),[r,t,p,b]);return 0===r.length?(0,n.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"400px",gap:2},children:[(0,n.jsx)(u.Z,{variant:"h6",color:"text.secondary",children:"No servers found"}),d&&(0,n.jsx)(i.Z,{variant:"contained",startIcon:(0,n.jsx)(m.Z,{}),onClick:d,children:"Create Server"})]}):(0,n.jsxs)(l.Z,{children:[(0,n.jsxs)(l.Z,{sx:{display:"flex",flexDirection:{xs:"column",sm:"row"},gap:2,mb:3,alignItems:{xs:"stretch",sm:"center"},justifyContent:"space-between"},children:[(0,n.jsxs)(j.Z,{value:b,exclusive:!0,onChange:(e,r)=>{null!==r&&S(r)},size:"small",sx:{flexShrink:0},children:[(0,n.jsx)(g.Z,{value:"all",children:"All"}),(0,n.jsx)(g.Z,{value:"running",children:"Running"}),(0,n.jsx)(g.Z,{value:"stopped",children:"Stopped"})]}),(0,n.jsx)(f.Z,{size:"small",placeholder:"Search servers...",value:p,onChange:e=>Z(e.target.value),InputProps:{startAdornment:(0,n.jsx)(v.Z,{position:"start",children:(0,n.jsx)(y.Z,{})})},sx:{flexGrow:{xs:1,sm:0},minWidth:{sm:300}}})]}),(0,n.jsxs)(u.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:[C.length," ",1===C.length?"server":"servers"]}),0===C.length?(0,n.jsx)(l.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"200px",gap:2},children:(0,n.jsx)(u.Z,{variant:"h6",color:"text.secondary",children:"No servers found"})}):(0,n.jsx)(h.ZP,{container:!0,spacing:2,children:C.map(e=>(0,n.jsx)(h.ZP,{item:!0,xs:12,sm:6,md:4,children:(0,n.jsx)(W,{server:e,statusOverride:t[e.name],onClick:a,onStart:o,onStop:c,loading:x.includes(e.name)})},e.name))})]})}var z=t(99770),O=t(62508),A=t(5682),L=t(76678),N=t(7178),D=t(40064),G=t(45547),_=t(4405),V=t(73383),q=t(82285),U=t(13609),H=t(46207),$=t(43436),B=t(87716);let J=["VANILLA","PAPER","FABRIC","FORGE","NEOFORGE"],Y=["","forge","fabric","neoforge","quilt"],K={name:"",type:"PAPER",version:"1.21.1",memory:"4G",autoStart:!1,sudoPassword:""},Q=[{key:"initializing",label:"Initializing"},{key:"creating",label:"Creating"},{key:"configuring",label:"Configuring"},{key:"starting",label:"Starting"}];function X(e){let r,{open:t,onClose:a,onSubmit:d,loading:x=!1,status:m="idle",progress:p=0,message:h=""}=e,[v,y]=(0,s.useState)("standard"),[Z,b]=(0,s.useState)(K),[S,C]=(0,s.useState)({}),[k,w]=(0,s.useState)(!1),I=(0,s.useRef)(null),P=(0,s.useRef)(null),T=Q.findIndex(e=>e.key===m),E="idle"!==m&&"completed"!==m&&"error"!==m;(0,s.useEffect)(()=>{t||(y("standard"),b(K),C({}),w(!1))},[t]);let F=e=>e?/^[a-z0-9-]+$/.test(e)?null:"Only lowercase letters, numbers, and hyphens are allowed":"Server name is required",R=e=>e?null:"Modpack slug is required",W=e=>r=>{let t=r.target.value;b(r=>({...r,[e]:t})),"memory"===e&&w(!0),S[e]&&C(r=>({...r,[e]:""}))};return(0,n.jsx)(z.Z,{open:t,onClose:E?void 0:a,maxWidth:"sm",fullWidth:!0,children:(0,n.jsxs)("form",{onSubmit:e=>{e.preventDefault(),C({});let r=F(Z.name);if(r){C({name:r});return}if("modpack"===v){let e=R(Z.modpack||"");if(e){C({modpack:e});return}}let t={name:Z.name,memory:Z.memory,autoStart:Z.autoStart,sudoPassword:Z.sudoPassword};"standard"===v?(t.type=Z.type,t.version=Z.version):(t.type="MODRINTH",t.modpack=Z.modpack,Z.modpackVersion&&(t.modpackVersion=Z.modpackVersion),Z.modLoader&&(t.modLoader=Z.modLoader)),d(t)},children:[(0,n.jsx)(O.Z,{children:"completed"===m?(0,n.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsx)(H.Z,{color:"success"}),"Server Created Successfully"]}):"error"===m?(0,n.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsx)($.Z,{color:"error"}),"Creation Failed"]}):"Create New Server"}),(0,n.jsx)(A.Z,{children:E||"completed"===m||"error"===m?(0,n.jsxs)(l.Z,{sx:{py:2},children:[(0,n.jsx)(V.Z,{activeStep:T,alternativeLabel:!0,sx:{mb:3},children:Q.map(e=>(0,n.jsx)(q.Z,{children:(0,n.jsx)(U.Z,{children:e.label})},e.key))}),E&&(0,n.jsxs)(l.Z,{sx:{mb:3},children:[(0,n.jsxs)(l.Z,{sx:{display:"flex",justifyContent:"space-between",mb:1},children:[(0,n.jsx)(u.Z,{variant:"body2",color:"text.secondary",children:h}),(0,n.jsxs)(u.Z,{variant:"body2",color:"text.secondary",children:[p,"%"]})]}),(0,n.jsx)(_.Z,{variant:"determinate",value:p})]}),"completed"===m&&(0,n.jsx)(u.Z,{color:"success.main",sx:{textAlign:"center"},children:h}),"error"===m&&(0,n.jsx)(u.Z,{color:"error.main",sx:{textAlign:"center"},children:h})]}):(0,n.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:[(0,n.jsx)(l.Z,{ref:P,role:"status","aria-live":"polite",sx:{position:"absolute",left:"-10000px",width:"1px",height:"1px",overflow:"hidden"}}),(0,n.jsx)(f.Z,{label:"Server Name",value:Z.name,onChange:W("name"),error:!!S.name,helperText:S.name||"Only lowercase letters, numbers, and hyphens",fullWidth:!0,autoFocus:!0,disabled:E}),(0,n.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2},children:[(0,n.jsx)(u.Z,{variant:"subtitle2",color:"text.secondary",children:"Server Type"}),(0,n.jsxs)(j.Z,{value:v,exclusive:!0,onChange:(e,r)=>{null!==r&&(y(r),P.current&&(P.current.textContent="".concat("standard"===r?"Standard Server":"Modpack"," category selected")),k||b(e=>({...e,memory:"standard"===r?"4G":"6G"})),setTimeout(()=>{"modpack"===r&&I.current&&I.current.focus()},300))},"aria-label":"Server category",fullWidth:!0,disabled:E,children:[(0,n.jsx)(g.Z,{value:"standard","aria-label":"Standard Server",children:"Standard Server"}),(0,n.jsx)(g.Z,{value:"modpack","aria-label":"Modpack",children:"Modpack"})]}),(0,n.jsx)(B.Z,{in:"standard"===v,unmountOnExit:!0,children:(0,n.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2,mt:2},children:[(0,n.jsx)(f.Z,{label:"Server Type",select:!0,value:Z.type,onChange:W("type"),fullWidth:!0,disabled:E,children:J.map(e=>(0,n.jsx)(N.Z,{value:e,children:e},e))}),(0,n.jsx)(f.Z,{label:"Minecraft Version",value:Z.version,onChange:W("version"),helperText:"e.g., 1.21.1, 1.20.4, latest",fullWidth:!0,disabled:E})]})}),(0,n.jsx)(B.Z,{in:"modpack"===v,unmountOnExit:!0,children:(0,n.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2,mt:2},children:[(0,n.jsx)(o.Z,{severity:"info",children:"Minecraft version is automatically determined by the modpack"}),(0,n.jsx)(f.Z,{label:"Modpack Slug",value:Z.modpack||"",onChange:W("modpack"),error:!!S.modpack,helperText:S.modpack||"e.g., cobblemon, adrenaserver (from modrinth.com/modpacks/SLUG)",fullWidth:!0,disabled:E,inputRef:I}),(0,n.jsxs)(f.Z,{label:"Mod Loader",select:!0,value:Z.modLoader||"",onChange:W("modLoader"),helperText:"Leave empty to auto-detect from modpack",fullWidth:!0,disabled:E,children:[(0,n.jsx)(N.Z,{value:"",children:"Auto-detect"}),Y.filter(e=>e).map(e=>(0,n.jsx)(N.Z,{value:e,children:e},e))]}),(0,n.jsx)(f.Z,{label:"Modpack Version",value:Z.modpackVersion||"",onChange:W("modpackVersion"),helperText:"Leave empty for latest",fullWidth:!0,disabled:E})]})})]}),(0,n.jsx)(f.Z,{label:"Memory",value:Z.memory,onChange:W("memory"),helperText:"e.g., 4G, 8G, 16G",fullWidth:!0,disabled:E}),(0,n.jsx)(f.Z,{label:"Sudo Password",type:"password",value:Z.sudoPassword||"",onChange:W("sudoPassword"),helperText:"Required for mDNS hostname registration (avahi)",fullWidth:!0,disabled:E}),(0,n.jsx)(D.Z,{control:(0,n.jsx)(G.Z,{checked:Z.autoStart||!1,onChange:(r="autoStart",e=>{b(t=>({...t,[r]:e.target.checked}))}),disabled:E}),label:"Auto-start after creation"})]})}),(0,n.jsx)(L.Z,{sx:{px:3,pb:2},children:"completed"===m||"error"===m?(0,n.jsx)(i.Z,{onClick:a,variant:"contained",fullWidth:!0,children:"Close"}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.Z,{onClick:a,disabled:E,children:"Cancel"}),(0,n.jsx)(i.Z,{type:"submit",variant:"contained",disabled:E,startIcon:E?(0,n.jsx)(c.Z,{size:16}):null,children:E?"Creating...":"Create"})]})})]})})}var ee=t(92666),er=t(59104);function et(){var e,r;let t=(0,a.x)(),[h,f]=(0,s.useState)(!1),[v,g]=(0,s.useState)([]),{data:j,isLoading:y,error:Z}=(0,ee.x$)(),{statusMap:b}=(0,er.d)(),S=(0,ee.jM)(),C=(0,ee.Aw)(),k=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{onSuccess:r,onError:t,onProgress:n}=e,[a,l]=(0,s.useState)("idle"),[i,o]=(0,s.useState)(0),[c,d]=(0,s.useState)(""),[u,x]=(0,s.useState)(null),m=(0,s.useRef)(null),p=(0,s.useRef)(""),h=(0,s.useCallback)(()=>{l("idle"),o(0),d(""),x(null),m.current&&(m.current.close(),m.current=null)},[]),f=(0,s.useCallback)((e,r,t)=>{l(e),d(r),o(t),null==n||n(e,r,t)},[n]),v=(0,s.useCallback)(async e=>{if("idle"===a||"completed"===a||"error"===a){x(null),f("initializing","Initializing server creation...",0),p.current=e.name,m.current&&m.current.close();try{let t=await fetch("/api/servers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){let e=await t.text();throw Error(e||"Server creation failed: ".concat(t.statusText))}await t.json(),f("creating","Creating server configuration...",25),await new Promise(e=>setTimeout(e,500)),f("configuring","Configuring Docker compose...",50),await new Promise(e=>setTimeout(e,500)),f("starting","Starting server container...",75),await new Promise(e=>setTimeout(e,500)),f("completed","Server created successfully!",100),null==r||r(e.name)}catch(r){let e=r instanceof Error?r.message:"Unknown error occurred";l("error"),x(e),d("Server creation failed"),null==t||t(e)}}},[a,f,r,t]);return(0,s.useEffect)(()=>()=>{m.current&&(m.current.close(),m.current=null)},[]),{status:a,progress:i,message:c,error:u,isCreating:"idle"!==a&&"completed"!==a&&"error"!==a,createServer:v,reset:h}}({onSuccess:()=>{f(!1)},onError:e=>{console.error("Failed to create server:",e)}}),w=async e=>{g(r=>[...r,e]);try{await S.mutateAsync(e)}catch(e){console.error("Failed to start server:",e)}finally{g(r=>r.filter(r=>r!==e))}},I=async e=>{g(r=>[...r,e]);try{await C.mutateAsync(e)}catch(e){console.error("Failed to stop server:",e)}finally{g(r=>r.filter(r=>r!==e))}};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(d.Z,{elevation:0,sx:{mb:4,p:3,background:e=>"linear-gradient(135deg, ".concat((0,x.Fq)(e.palette.info.main,.1)," 0%, ").concat((0,x.Fq)(e.palette.primary.main,.1)," 100%)"),borderRadius:2,border:e=>"1px solid ".concat((0,x.Fq)(e.palette.info.main,.2)),display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,n.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,n.jsx)(l.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center",width:56,height:56,borderRadius:2,bgcolor:"info.main",color:"info.contrastText"},children:(0,n.jsx)(p.Z,{sx:{fontSize:32}})}),(0,n.jsxs)(l.Z,{children:[(0,n.jsx)(u.Z,{variant:"h4",component:"h1",fontWeight:"bold",children:"Servers"}),(0,n.jsx)(u.Z,{variant:"body1",color:"text.secondary",children:"Manage your Minecraft servers"})]})]}),(0,n.jsx)(i.Z,{variant:"contained",startIcon:(0,n.jsx)(m.Z,{}),onClick:()=>f(!0),size:"large",children:"Create Server"})]}),Z&&(0,n.jsxs)(o.Z,{severity:"error",sx:{mb:3},children:["Failed to load servers: ",Z.message]}),k.error&&(0,n.jsxs)(o.Z,{severity:"error",sx:{mb:3},children:["Failed to create server: ",k.error]}),S.isError&&(0,n.jsxs)(o.Z,{severity:"error",sx:{mb:3},children:["Failed to start server: ",null===(e=S.error)||void 0===e?void 0:e.message]}),C.isError&&(0,n.jsxs)(o.Z,{severity:"error",sx:{mb:3},children:["Failed to stop server: ",null===(r=C.error)||void 0===r?void 0:r.message]}),y?(0,n.jsx)(l.Z,{sx:{display:"flex",justifyContent:"center",py:8},children:(0,n.jsx)(c.Z,{})}):(0,n.jsx)(M,{servers:(null==j?void 0:j.servers)||[],statusMap:b,onServerClick:e=>{t.push("/servers/".concat(encodeURIComponent(e)))},onStart:w,onStop:I,onCreate:()=>f(!0),loadingServers:v}),(0,n.jsx)(X,{open:h,onClose:()=>{f(!1),k.reset()},onSubmit:e=>{k.createServer(e)},loading:k.isCreating,status:k.status,progress:k.progress,message:k.message})]})}}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,540,4416,2538,880,8738,1658,6909,6727,8468,2666,2701,3669,2757,1744],function(){return e(e.s=49726)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7701],{6199:function(e,s,n){Promise.resolve().then(n.bind(n,36405))},36405:function(e,s,n){"use strict";n.r(s),n.d(s,{default:function(){return M}});var l=n(94655),r=n(35106),t=n(7281),i=n(30417),a=n(81071),o=n(93017),d=n(69899),c=n(31317),x=n(99770),h=n(62508),u=n(5682),m=n(76678),j=n(97436),Z=n(76492),g=n(32366),p=n(84974),f=n(84840),v=n(52082),y=n(89923),b=n(10297),w=n(42431),C=n(628),S=n(41565),k=n(25935),W=n(79983),z=n(25333),D=n(95511),I=n(96292),A=n(97812),F=n(21111),L=n(78067),P=n(33104);function E(e){let{world:s,onAssign:n,onRelease:r,onDelete:i,loading:a=!1}=e,o=(e,n)=>{e.stopPropagation(),n(s.name)};return(0,l.jsxs)(C.Z,{role:"article",sx:{transition:"all 0.2s",height:200,display:"flex",flexDirection:"column","&:hover":{transform:"translateY(-2px)",boxShadow:4}},children:[(0,l.jsxs)(S.Z,{sx:{flex:1,pb:1},children:[(0,l.jsxs)(t.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,l.jsx)(c.Z,{variant:"h6",component:"h3",sx:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1,mr:1},children:s.name}),(0,l.jsx)(z.Z,{label:s.isLocked?"Locked":"Available",size:"small",color:s.isLocked?"warning":"success",sx:{fontWeight:500,minWidth:80}})]}),(0,l.jsxs)(t.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1.5},children:[(0,l.jsx)(L.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,l.jsx)(c.Z,{variant:"body2",color:"text.secondary",children:s.size||"Unknown size"})]}),s.isLocked&&s.lockedBy&&(0,l.jsxs)(t.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1.5},children:[(0,l.jsx)(I.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,l.jsx)(D.Z,{title:"Assigned to ".concat(s.lockedBy),arrow:!0,children:(0,l.jsx)(c.Z,{variant:"body2",color:"text.secondary",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:s.lockedBy})})]}),(0,l.jsxs)(t.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,l.jsx)(P.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,l.jsx)(c.Z,{variant:"body2",color:"text.secondary",children:(e=>{if(!e)return"-";try{return new Date(e).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}catch(s){return e}})(s.lastModified)})]})]}),(0,l.jsxs)(k.Z,{sx:{justifyContent:"flex-end",px:2,py:1.5,borderTop:"1px solid",borderColor:"divider"},children:[!s.isLocked&&n&&(0,l.jsx)(D.Z,{title:"Assign to server",arrow:!0,children:(0,l.jsx)(W.Z,{"aria-label":"Assign world",color:"primary",onClick:e=>o(e,n),disabled:a,size:"small",children:(0,l.jsx)(I.Z,{})})}),s.isLocked&&r&&(0,l.jsx)(D.Z,{title:"Release from server",arrow:!0,children:(0,l.jsx)(W.Z,{"aria-label":"Release world",color:"warning",onClick:e=>o(e,r),disabled:a,size:"small",children:(0,l.jsx)(A.Z,{})})}),i&&(0,l.jsx)(D.Z,{title:"Delete world",arrow:!0,children:(0,l.jsx)(W.Z,{"aria-label":"Delete world",color:"error",onClick:e=>o(e,i),disabled:a,size:"small",children:(0,l.jsx)(F.Z,{})})})]})]})}function N(e){let{worlds:s,onAssign:n,onRelease:a,onDelete:o,onCreate:d,loadingWorlds:x=[]}=e,[h,u]=(0,r.useState)(""),[m,Z]=(0,r.useState)("all"),p=(0,r.useMemo)(()=>s.filter(e=>(!h||!!e.name.toLowerCase().includes(h.toLowerCase()))&&("available"!==m||!e.isLocked)&&("locked"!==m||!!e.isLocked)),[s,h,m]);return 0===s.length?(0,l.jsxs)(t.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"400px",gap:2},children:[(0,l.jsx)(c.Z,{variant:"h6",color:"text.secondary",children:"No worlds found"}),d&&(0,l.jsx)(i.Z,{variant:"contained",startIcon:(0,l.jsx)(g.Z,{}),onClick:d,children:"Create World"})]}):(0,l.jsxs)(t.Z,{children:[(0,l.jsxs)(t.Z,{sx:{display:"flex",flexDirection:{xs:"column",sm:"row"},gap:2,mb:3,alignItems:{xs:"stretch",sm:"center"},justifyContent:"space-between"},children:[(0,l.jsxs)(b.Z,{value:m,exclusive:!0,onChange:(e,s)=>{null!==s&&Z(s)},size:"small",sx:{flexShrink:0},children:[(0,l.jsx)(y.Z,{value:"all",children:"All"}),(0,l.jsx)(y.Z,{value:"available",children:"Available"}),(0,l.jsx)(y.Z,{value:"locked",children:"Locked"})]}),(0,l.jsx)(j.Z,{size:"small",placeholder:"Search worlds...",value:h,onChange:e=>u(e.target.value),InputProps:{startAdornment:(0,l.jsx)(v.Z,{position:"start",children:(0,l.jsx)(w.Z,{})})},sx:{flexGrow:{xs:1,sm:0},minWidth:{sm:300}}})]}),(0,l.jsxs)(c.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:[p.length," ",1===p.length?"world":"worlds"]}),0===p.length?(0,l.jsx)(t.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"200px",gap:2},children:(0,l.jsx)(c.Z,{variant:"h6",color:"text.secondary",children:"No worlds found"})}):(0,l.jsx)(f.ZP,{container:!0,spacing:2,children:p.map(e=>(0,l.jsx)(f.ZP,{item:!0,xs:12,sm:6,md:4,children:(0,l.jsx)(E,{world:e,onAssign:n,onRelease:a,onDelete:o,loading:x.includes(e.name)})},e.name))})]})}let R={name:"",seed:""};function T(e){let{open:s,onClose:n,onSubmit:a,loading:d=!1}=e,[c,Z]=(0,r.useState)(R),[g,p]=(0,r.useState)({});(0,r.useEffect)(()=>{s||(Z(R),p({}))},[s]);let f=e=>e?/^[a-z0-9-]+$/.test(e)?null:"Only lowercase letters, numbers, and hyphens are allowed":"World name is required",v=e=>s=>{let n=s.target.value;Z(s=>({...s,[e]:n})),g[e]&&p(s=>({...s,[e]:""}))};return(0,l.jsx)(x.Z,{open:s,onClose:d?void 0:n,maxWidth:"sm",fullWidth:!0,children:(0,l.jsxs)("form",{onSubmit:e=>{e.preventDefault(),p({});let s=f(c.name);if(s){p({name:s});return}a({name:c.name,...c.seed?{seed:c.seed}:{}})},children:[(0,l.jsx)(h.Z,{children:"Create New World"}),(0,l.jsx)(u.Z,{children:(0,l.jsxs)(t.Z,{sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:[(0,l.jsx)(j.Z,{label:"World Name",value:c.name,onChange:v("name"),error:!!g.name,helperText:g.name||"Only lowercase letters, numbers, and hyphens",fullWidth:!0,autoFocus:!0,disabled:d}),(0,l.jsx)(j.Z,{label:"Seed (optional)",value:c.seed||"",onChange:v("seed"),helperText:"Leave empty for a random seed",fullWidth:!0,disabled:d})]})}),(0,l.jsxs)(m.Z,{sx:{px:3,pb:2},children:[(0,l.jsx)(i.Z,{onClick:n,disabled:d,children:"Cancel"}),(0,l.jsx)(i.Z,{type:"submit",variant:"contained",disabled:d,startIcon:d?(0,l.jsx)(o.Z,{size:16}):null,children:d?"Creating...":"Create"})]})]})})}var O=n(7178),_=n(92666);function q(e){let{open:s,worldName:n,onClose:d,onSubmit:Z,loading:g=!1}=e,[p,f]=(0,r.useState)(""),{data:v,isLoading:y}=(0,_.x$)();(0,r.useEffect)(()=>{s||f("")},[s]);let b=(null==v?void 0:v.servers)||[],w=b.filter(e=>"running"!==e.status),C=b.filter(e=>"running"===e.status);return(0,l.jsx)(x.Z,{open:s,onClose:g?void 0:d,maxWidth:"sm",fullWidth:!0,children:(0,l.jsxs)("form",{onSubmit:e=>{e.preventDefault(),p&&Z(n,p)},children:[(0,l.jsxs)(h.Z,{children:["Assign World: ",n]}),(0,l.jsx)(u.Z,{children:(0,l.jsx)(t.Z,{sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:y?(0,l.jsx)(t.Z,{sx:{display:"flex",justifyContent:"center",py:4},children:(0,l.jsx)(o.Z,{})}):0===b.length?(0,l.jsx)(c.Z,{color:"text.secondary",children:"No servers available. Create a server first."}):(0,l.jsxs)(l.Fragment,{children:[0===w.length&&C.length>0&&(0,l.jsx)(a.Z,{severity:"warning",children:"All servers are currently running. It is recommended to assign worlds to stopped servers."}),(0,l.jsxs)(j.Z,{label:"Select Server",select:!0,value:p,onChange:e=>f(e.target.value),fullWidth:!0,disabled:g,helperText:"Select a server to assign this world to",children:[w.length>0&&(0,l.jsx)(O.Z,{disabled:!0,children:(0,l.jsx)(c.Z,{variant:"caption",color:"text.secondary",children:"Available Servers"})}),w.map(e=>(0,l.jsx)(O.Z,{value:e.name,children:e.name},e.name)),C.length>0&&(0,l.jsx)(O.Z,{disabled:!0,children:(0,l.jsx)(c.Z,{variant:"caption",color:"text.secondary",children:"Running Servers (not recommended)"})}),C.map(e=>(0,l.jsx)(O.Z,{value:e.name,children:e.name},e.name))]})]})})}),(0,l.jsxs)(m.Z,{sx:{px:3,pb:2},children:[(0,l.jsx)(i.Z,{onClick:d,disabled:g,children:"Cancel"}),(0,l.jsx)(i.Z,{type:"submit",variant:"contained",disabled:g||!p||y,startIcon:g?(0,l.jsx)(o.Z,{size:16}):null,children:g?"Assigning...":"Assign"})]})]})})}function M(){var e,s,n,f;let[v,y]=(0,r.useState)(!1),[b,w]=(0,r.useState)(null),[C,S]=(0,r.useState)(null),[k,W]=(0,r.useState)(""),[z,D]=(0,r.useState)([]),{data:I,isLoading:A,error:F}=(0,_.Sr)(),L=(0,_.hy)(),P=(0,_.nq)(),E=(0,_.g2)(),R=(0,_.Fv)(),O=async e=>{D(s=>[...s,e]);try{await E.mutateAsync({worldName:e})}catch(e){console.error("Failed to release world:",e)}finally{D(s=>s.filter(s=>s!==e))}};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(d.Z,{elevation:0,sx:{mb:4,p:3,background:e=>"linear-gradient(135deg, ".concat((0,Z.Fq)(e.palette.success.main,.1)," 0%, ").concat((0,Z.Fq)(e.palette.primary.main,.1)," 100%)"),borderRadius:2,border:e=>"1px solid ".concat((0,Z.Fq)(e.palette.success.main,.2)),display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,l.jsxs)(t.Z,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,l.jsx)(t.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center",width:56,height:56,borderRadius:2,bgcolor:"success.main",color:"success.contrastText"},children:(0,l.jsx)(p.Z,{sx:{fontSize:32}})}),(0,l.jsxs)(t.Z,{children:[(0,l.jsx)(c.Z,{variant:"h4",component:"h1",fontWeight:"bold",children:"Worlds"}),(0,l.jsx)(c.Z,{variant:"body1",color:"text.secondary",children:"Manage your Minecraft worlds"})]})]}),(0,l.jsx)(i.Z,{variant:"contained",startIcon:(0,l.jsx)(g.Z,{}),onClick:()=>y(!0),size:"large",children:"Create World"})]}),F&&(0,l.jsxs)(a.Z,{severity:"error",sx:{mb:3},children:["Failed to load worlds: ",F.message]}),L.isError&&(0,l.jsxs)(a.Z,{severity:"error",sx:{mb:3},children:["Failed to create world: ",null===(e=L.error)||void 0===e?void 0:e.message]}),P.isError&&(0,l.jsxs)(a.Z,{severity:"error",sx:{mb:3},children:["Failed to assign world: ",null===(s=P.error)||void 0===s?void 0:s.message]}),E.isError&&(0,l.jsxs)(a.Z,{severity:"error",sx:{mb:3},children:["Failed to release world: ",null===(n=E.error)||void 0===n?void 0:n.message]}),R.isError&&(0,l.jsxs)(a.Z,{severity:"error",sx:{mb:3},children:["Failed to delete world: ",null===(f=R.error)||void 0===f?void 0:f.message]}),A?(0,l.jsx)(t.Z,{sx:{display:"flex",justifyContent:"center",py:8},children:(0,l.jsx)(o.Z,{})}):(0,l.jsx)(N,{worlds:(null==I?void 0:I.worlds)||[],onAssign:e=>w(e),onRelease:O,onDelete:e=>{S(e),W("")},onCreate:()=>y(!0),loadingWorlds:z}),(0,l.jsx)(T,{open:v,onClose:()=>{y(!1),L.reset()},onSubmit:e=>{L.mutate(e,{onSuccess:()=>{y(!1)}})},loading:L.isPending}),(0,l.jsx)(q,{open:!!b,worldName:b||"",onClose:()=>w(null),onSubmit:(e,s)=>{D(s=>[...s,e]),P.mutate({worldName:e,serverName:s},{onSuccess:()=>{w(null)},onSettled:()=>{D(s=>s.filter(s=>s!==e))}})},loading:P.isPending}),(0,l.jsxs)(x.Z,{open:!!C,onClose:()=>{S(null),W("")},maxWidth:"sm",fullWidth:!0,children:[(0,l.jsx)(h.Z,{children:"Delete World"}),(0,l.jsxs)(u.Z,{children:[(0,l.jsxs)(c.Z,{sx:{mb:2},children:["This action cannot be undone. Type ",(0,l.jsx)("strong",{children:C})," to confirm deletion."]}),(0,l.jsx)(j.Z,{label:"World name",value:k,onChange:e=>W(e.target.value),fullWidth:!0,autoFocus:!0})]}),(0,l.jsxs)(m.Z,{sx:{px:3,pb:2},children:[(0,l.jsx)(i.Z,{onClick:()=>{S(null),W("")},children:"Cancel"}),(0,l.jsx)(i.Z,{variant:"contained",color:"error",onClick:()=>{C&&k===C&&(D(e=>[...e,C]),R.mutate({name:C,force:!0},{onSuccess:()=>{S(null),W("")},onSettled:()=>{D(e=>e.filter(e=>e!==C))}}))},disabled:k!==C||R.isPending,startIcon:R.isPending?(0,l.jsx)(o.Z,{size:16}):null,children:R.isPending?"Deleting...":"Delete"})]})]})]})}}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,540,4416,2538,880,5511,6909,3333,2666,3669,2757,1744],function(){return e(e.s=6199)}),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1476],{66758:function(e,r,t){Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return n.createSvgIcon}});var n=t(26505)},26138:function(e,r,t){t.d(r,{Z:function(){return A}});var n=t(81500),o=t(32324),a=t(35106),l=t(70316),i=t(65951),s=t(95582),u=t(34519),c=t(28057),d=t(31317),p=t(64577),f=t(61626),m=t(94655),h=(0,f.Z)((0,m.jsx)("path",{d:"M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"}),"MoreHoriz"),Z=t(29084);let y=["slots","slotProps"],v=(0,u.ZP)(Z.Z,{name:"MuiBreadcrumbCollapsed"})(e=>{let{theme:r}=e;return(0,n.Z)({display:"flex",marginLeft:"calc(".concat(r.spacing(1)," * 0.5)"),marginRight:"calc(".concat(r.spacing(1)," * 0.5)")},"light"===r.palette.mode?{backgroundColor:r.palette.grey[100],color:r.palette.grey[700]}:{backgroundColor:r.palette.grey[700],color:r.palette.grey[100]},{borderRadius:2,"&:hover, &:focus":(0,n.Z)({},"light"===r.palette.mode?{backgroundColor:r.palette.grey[200]}:{backgroundColor:r.palette.grey[600]}),"&:active":(0,n.Z)({boxShadow:r.shadows[0]},"light"===r.palette.mode?{backgroundColor:(0,p._4)(r.palette.grey[200],.12)}:{backgroundColor:(0,p._4)(r.palette.grey[600],.12)})})}),g=(0,u.ZP)(h)({width:24,height:16});var b=function(e){let{slots:r={},slotProps:t={}}=e,a=(0,o.Z)(e,y);return(0,m.jsx)("li",{children:(0,m.jsx)(v,(0,n.Z)({focusRipple:!0},a,{ownerState:e,children:(0,m.jsx)(g,(0,n.Z)({as:r.CollapsedIcon,ownerState:e},t.collapsedIcon))}))})},x=t(11379),C=t(9049);function S(e){return(0,C.ZP)("MuiBreadcrumbs",e)}let w=(0,x.Z)("MuiBreadcrumbs",["root","ol","li","separator"]),P=["children","className","component","slots","slotProps","expandText","itemsAfterCollapse","itemsBeforeCollapse","maxItems","separator"],k=e=>{let{classes:r}=e;return(0,i.Z)({root:["root"],li:["li"],ol:["ol"],separator:["separator"]},S,r)},R=(0,u.ZP)(d.Z,{name:"MuiBreadcrumbs",slot:"Root",overridesResolver:(e,r)=>[{["& .".concat(w.li)]:r.li},r.root]})({}),M=(0,u.ZP)("ol",{name:"MuiBreadcrumbs",slot:"Ol",overridesResolver:(e,r)=>r.ol})({display:"flex",flexWrap:"wrap",alignItems:"center",padding:0,margin:0,listStyle:"none"}),_=(0,u.ZP)("li",{name:"MuiBreadcrumbs",slot:"Separator",overridesResolver:(e,r)=>r.separator})({display:"flex",userSelect:"none",marginLeft:8,marginRight:8});var A=a.forwardRef(function(e,r){var t,i;let u=(0,c.i)({props:e,name:"MuiBreadcrumbs"}),{children:d,className:p,component:f="nav",slots:h={},slotProps:Z={},expandText:y="Show path",itemsAfterCollapse:v=1,itemsBeforeCollapse:g=1,maxItems:x=8,separator:C="/"}=u,S=(0,o.Z)(u,P),[w,A]=a.useState(!1),j=(0,n.Z)({},u,{component:f,expanded:w,expandText:y,itemsAfterCollapse:v,itemsBeforeCollapse:g,maxItems:x,separator:C}),I=k(j),L=(0,s.Z)({elementType:h.CollapsedIcon,externalSlotProps:Z.collapsedIcon,ownerState:j}),N=a.useRef(null),B=a.Children.toArray(d).filter(e=>a.isValidElement(e)).map((e,r)=>(0,m.jsx)("li",{className:I.li,children:e},"child-".concat(r)));return(0,m.jsx)(R,(0,n.Z)({ref:r,component:f,color:"text.secondary",className:(0,l.Z)(I.root,p),ownerState:j},S,{children:(0,m.jsx)(M,{className:I.ol,ref:N,ownerState:j,children:(t=w||x&&B.length<=x?B:g+v>=B.length?B:[...B.slice(0,g),(0,m.jsx)(b,{"aria-label":y,slots:{CollapsedIcon:h.CollapsedIcon},slotProps:{collapsedIcon:L},onClick:()=>{A(!0);let e=N.current.querySelector("a[href],button,[tabindex]");e&&e.focus()}},"ellipsis"),...B.slice(B.length-v,B.length)],i=I.separator,t.reduce((e,r,n)=>(n<t.length-1?e=e.concat(r,(0,m.jsx)(_,{"aria-hidden":!0,className:i,ownerState:j,children:C},"separator-".concat(n))):e.push(r),e),[]))})}))})},16945:function(e,r,t){t.d(r,{V:function(){return a}});var n=t(11379),o=t(9049);function a(e){return(0,o.ZP)("MuiDivider",e)}let l=(0,n.Z)("MuiDivider",["root","absolute","fullWidth","inset","middle","flexItem","light","vertical","withChildren","withChildrenVertical","textAlignRight","textAlignLeft","wrapper","wrapperVertical"]);r.Z=l},41261:function(e,r,t){t.d(r,{Z:function(){return R}});var n=t(32324),o=t(81500),a=t(35106),l=t(70316),i=t(65951),s=t(38762),u=t(34519),c=t(28057),d=t(22125),p=t(38481),f=t(31317),m=t(11379),h=t(9049);function Z(e){return(0,h.ZP)("MuiLink",e)}let y=(0,m.Z)("MuiLink",["root","underlineNone","underlineHover","underlineAlways","button","focusVisible"]);var v=t(20219),g=t(64577);let b={primary:"primary.main",textPrimary:"text.primary",secondary:"secondary.main",textSecondary:"text.secondary",error:"error.main"},x=e=>b[e]||e;var C=e=>{let{theme:r,ownerState:t}=e,n=x(t.color),o=(0,v.DW)(r,"palette.".concat(n),!1)||t.color,a=(0,v.DW)(r,"palette.".concat(n,"Channel"));return"vars"in r&&a?"rgba(".concat(a," / 0.4)"):(0,g.Fq)(o,.4)},S=t(94655);let w=["className","color","component","onBlur","onFocus","TypographyClasses","underline","variant","sx"],P=e=>{let{classes:r,component:t,focusVisible:n,underline:o}=e,a={root:["root","underline".concat((0,s.Z)(o)),"button"===t&&"button",n&&"focusVisible"]};return(0,i.Z)(a,Z,r)},k=(0,u.ZP)(f.Z,{name:"MuiLink",slot:"Root",overridesResolver:(e,r)=>{let{ownerState:t}=e;return[r.root,r["underline".concat((0,s.Z)(t.underline))],"button"===t.component&&r.button]}})(e=>{let{theme:r,ownerState:t}=e;return(0,o.Z)({},"none"===t.underline&&{textDecoration:"none"},"hover"===t.underline&&{textDecoration:"none","&:hover":{textDecoration:"underline"}},"always"===t.underline&&(0,o.Z)({textDecoration:"underline"},"inherit"!==t.color&&{textDecorationColor:C({theme:r,ownerState:t})},{"&:hover":{textDecorationColor:"inherit"}}),"button"===t.component&&{position:"relative",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none","&::-moz-focus-inner":{borderStyle:"none"},["&.".concat(y.focusVisible)]:{outline:"auto"}})});var R=a.forwardRef(function(e,r){let t=(0,c.i)({props:e,name:"MuiLink"}),{className:i,color:s="primary",component:u="a",onBlur:f,onFocus:m,TypographyClasses:h,underline:Z="always",variant:y="inherit",sx:v}=t,g=(0,n.Z)(t,w),{isFocusVisibleRef:x,onBlur:C,onFocus:R,ref:M}=(0,d.Z)(),[_,A]=a.useState(!1),j=(0,p.Z)(r,M),I=(0,o.Z)({},t,{color:s,component:u,focusVisible:_,underline:Z,variant:y}),L=P(I);return(0,S.jsx)(k,(0,o.Z)({color:s,className:(0,l.Z)(L.root,i),classes:h,component:u,onBlur:e=>{C(e),!1===x.current&&A(!1),f&&f(e)},onFocus:e=>{R(e),!0===x.current&&A(!0),m&&m(e)},ref:j,ownerState:I,variant:y,sx:[...Object.keys(b).includes(s)?[]:[{color:s}],...Array.isArray(v)?v:[v]]},g))})},27350:function(e,r,t){var n=t(34834);r.Z=n.Z},26505:function(e,r,t){t.r(r),t.d(r,{capitalize:function(){return o.Z},createChainedFunction:function(){return a.Z},createSvgIcon:function(){return l.Z},debounce:function(){return i.Z},deprecatedPropType:function(){return s},isMuiElement:function(){return u.Z},ownerDocument:function(){return c.Z},ownerWindow:function(){return d.Z},requirePropFactory:function(){return p},setRef:function(){return f},unstable_ClassNameGenerator:function(){return x},unstable_useEnhancedEffect:function(){return m.Z},unstable_useId:function(){return h.Z},unsupportedProp:function(){return Z},useControlled:function(){return y.Z},useEventCallback:function(){return v.Z},useForkRef:function(){return g.Z},useIsFocusVisible:function(){return b.Z}});var n=t(74055),o=t(38762),a=t(27350),l=t(61626),i=t(19521),s=function(e,r){return()=>null},u=t(9290),c=t(34713),d=t(99466);t(81500);var p=function(e,r){return()=>null},f=t(25880).Z,m=t(65425),h=t(88207),Z=function(e,r,t,n,o){return null},y=t(18280),v=t(10620),g=t(38481),b=t(22125);let x={configure:e=>{n.Z.configure(e)}}},88207:function(e,r,t){var n=t(40552);r.Z=n.Z},48442:function(e,r,t){t.d(r,{Z:function(){return v}});var n=t(81500),o=t(32324),a=t(14526),l=t(41499),i=t(8557),s=t(72686);let u=["ownerState"],c=["variants"],d=["name","slot","skipVariantsResolver","skipSx","overridesResolver"];function p(e){return"ownerState"!==e&&"theme"!==e&&"sx"!==e&&"as"!==e}function f(e,r){return r&&e&&"object"==typeof e&&e.styles&&!e.styles.startsWith("@layer")&&(e.styles=`@layer ${r}{${String(e.styles)}}`),e}let m=(0,i.Z)(),h=e=>e?e.charAt(0).toLowerCase()+e.slice(1):e;function Z({defaultTheme:e,theme:r,themeId:t}){return 0===Object.keys(r).length?e:r[t]||r}function y(e,r,t){let{ownerState:l}=r,i=(0,o.Z)(r,u),s="function"==typeof e?e((0,n.Z)({ownerState:l},i)):e;if(Array.isArray(s))return s.flatMap(e=>y(e,(0,n.Z)({ownerState:l},i),t));if(s&&"object"==typeof s&&Array.isArray(s.variants)){let{variants:e=[]}=s,r=(0,o.Z)(s,c);return e.forEach(e=>{let o=!0;if("function"==typeof e.props?o=e.props((0,n.Z)({ownerState:l},i,l)):Object.keys(e.props).forEach(r=>{(null==l?void 0:l[r])!==e.props[r]&&i[r]!==e.props[r]&&(o=!1)}),o){Array.isArray(r)||(r=[r]);let o="function"==typeof e.style?e.style((0,n.Z)({ownerState:l},i,l)):e.style;r.push(t?f((0,a.internal_serializeStyles)(o),t):o)}}),r}return t?f((0,a.internal_serializeStyles)(s),t):s}var v=function(e={}){let{themeId:r,defaultTheme:t=m,rootShouldForwardProp:i=p,slotShouldForwardProp:u=p}=e,c=e=>(0,s.Z)((0,n.Z)({},e,{theme:Z((0,n.Z)({},e,{defaultTheme:t,themeId:r}))}));return c.__mui_systemSx=!0,(e,s={})=>{var f;let m;(0,a.internal_processStyles)(e,e=>e.filter(e=>!(null!=e&&e.__mui_systemSx)));let{name:v,slot:g,skipVariantsResolver:b,skipSx:x,overridesResolver:C=(f=h(g))?(e,r)=>r[f]:null}=s,S=(0,o.Z)(s,d),w=v&&v.startsWith("Mui")||g?"components":"custom",P=void 0!==b?b:g&&"Root"!==g&&"root"!==g||!1,k=x||!1,R=p;"Root"===g||"root"===g?R=i:g?R=u:"string"==typeof e&&e.charCodeAt(0)>96&&(R=void 0);let M=(0,a.default)(e,(0,n.Z)({shouldForwardProp:R,label:m},S)),_=e=>"function"==typeof e&&e.__emotion_real!==e||(0,l.P)(e)?o=>{let a=Z({theme:o.theme,defaultTheme:t,themeId:r});return y(e,(0,n.Z)({},o,{theme:a}),a.modularCssLayers?w:void 0)}:e,A=(o,...a)=>{let l=_(o),i=a?a.map(_):[];v&&C&&i.push(e=>{let o=Z((0,n.Z)({},e,{defaultTheme:t,themeId:r}));if(!o.components||!o.components[v]||!o.components[v].styleOverrides)return null;let a=o.components[v].styleOverrides,l={};return Object.entries(a).forEach(([r,t])=>{l[r]=y(t,(0,n.Z)({},e,{theme:o}),o.modularCssLayers?"theme":void 0)}),C(e,l)}),v&&!P&&i.push(e=>{var o;let a=Z((0,n.Z)({},e,{defaultTheme:t,themeId:r}));return y({variants:null==a||null==(o=a.components)||null==(o=o[v])?void 0:o.variants},(0,n.Z)({},e,{theme:a}),a.modularCssLayers?"theme":void 0)}),k||i.push(c);let s=i.length-a.length;if(Array.isArray(o)&&s>0){let e=Array(s).fill("");(l=[...o,...e]).raw=[...o.raw,...e]}let u=M(l,...i);return e.muiName&&(u.muiName=e.muiName),u};return M.withConfig&&(A.withConfig=M.withConfig),A}}()},54569:function(e,r,t){t.d(r,{Z:function(){return a}});var n=t(71483),o=t(32730);function a(e){let{props:r,name:t,defaultTheme:a,themeId:l}=e,i=(0,o.Z)(a);return l&&(i=i[l]||i),function(e){let{theme:r,name:t,props:o}=e;return r&&r.components&&r.components[t]&&r.components[t].defaultProps?(0,n.Z)(r.components[t].defaultProps,o):o}({theme:i,name:t,props:r})}},74228:function(e,r,t){var n=t(73310);t.o(n,"useParams")&&t.d(r,{useParams:function(){return n.useParams}}),t.o(n,"usePathname")&&t.d(r,{usePathname:function(){return n.usePathname}}),t.o(n,"useRouter")&&t.d(r,{useRouter:function(){return n.useRouter}}),t.o(n,"useSearchParams")&&t.d(r,{useSearchParams:function(){return n.useSearchParams}}),t.o(n,"useServerInsertedHTML")&&t.d(r,{useServerInsertedHTML:function(){return n.useServerInsertedHTML}})}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3333],{33104:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)([(0,r.jsx)("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2M12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"},"0"),(0,r.jsx)("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"},"1")],"AccessTime")},32366:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)((0,r.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add")},21111:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)((0,r.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete")},96292:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)((0,r.jsx)("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5"}),"Link")},97812:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)((0,r.jsx)("path",{d:"M17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.43-.98 2.63-2.31 2.98l1.46 1.46C20.88 15.61 22 13.95 22 12c0-2.76-2.24-5-5-5m-1 4h-2.19l2 2H16zM2 4.27l3.11 3.11C3.29 8.12 2 9.91 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4L20 19.74 3.27 3z"}),"LinkOff")},84974:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)((0,r.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39"}),"Public")},78067:function(t,e,i){var s=i(8091);e.Z=void 0;var n=s(i(66758)),r=i(94655);e.Z=(0,n.default)((0,r.jsx)("path",{d:"M2 20h20v-4H2zm2-3h2v2H4zM2 4v4h20V4zm4 3H4V5h2zm-4 7h20v-4H2zm2-3h2v2H4z"}),"Storage")},25935:function(t,e,i){i.d(e,{Z:function(){return y}});var s=i(32324),n=i(81500),r=i(35106),a=i(70316),o=i(65951),u=i(34519),h=i(28057),c=i(11379),l=i(9049);function d(t){return(0,l.ZP)("MuiCardActions",t)}(0,c.Z)("MuiCardActions",["root","spacing"]);var p=i(94655);let v=["disableSpacing","className"],m=t=>{let{classes:e,disableSpacing:i}=t;return(0,o.Z)({root:["root",!i&&"spacing"]},d,e)},f=(0,u.ZP)("div",{name:"MuiCardActions",slot:"Root",overridesResolver:(t,e)=>{let{ownerState:i}=t;return[e.root,!i.disableSpacing&&e.spacing]}})(t=>{let{ownerState:e}=t;return(0,n.Z)({display:"flex",alignItems:"center",padding:8},!e.disableSpacing&&{"& > :not(style) ~ :not(style)":{marginLeft:8}})});var y=r.forwardRef(function(t,e){let i=(0,h.i)({props:t,name:"MuiCardActions"}),{disableSpacing:r=!1,className:o}=i,u=(0,s.Z)(i,v),c=(0,n.Z)({},i,{disableSpacing:r}),l=m(c);return(0,p.jsx)(f,(0,n.Z)({className:(0,a.Z)(l.root,o),ownerState:c,ref:e},u))})},52082:function(t,e,i){i.d(e,{Z:function(){return C}});var s,n=i(32324),r=i(81500),a=i(35106),o=i(70316),u=i(65951),h=i(38762),c=i(31317),l=i(14406),d=i(85016),p=i(34519),v=i(11379),m=i(9049);function f(t){return(0,m.ZP)("MuiInputAdornment",t)}let y=(0,v.Z)("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]);var b=i(28057),M=i(94655);let Z=["children","className","component","disablePointerEvents","disableTypography","position","variant"],g=t=>{let{classes:e,disablePointerEvents:i,hiddenLabel:s,position:n,size:r,variant:a}=t,o={root:["root",i&&"disablePointerEvents",n&&"position".concat((0,h.Z)(n)),a,s&&"hiddenLabel",r&&"size".concat((0,h.Z)(r))]};return(0,u.Z)(o,f,e)},x=(0,p.ZP)("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:(t,e)=>{let{ownerState:i}=t;return[e.root,e["position".concat((0,h.Z)(i.position))],!0===i.disablePointerEvents&&e.disablePointerEvents,e[i.variant]]}})(t=>{let{theme:e,ownerState:i}=t;return(0,r.Z)({display:"flex",height:"0.01em",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(e.vars||e).palette.action.active},"filled"===i.variant&&{["&.".concat(y.positionStart,"&:not(.").concat(y.hiddenLabel,")")]:{marginTop:16}},"start"===i.position&&{marginRight:8},"end"===i.position&&{marginLeft:8},!0===i.disablePointerEvents&&{pointerEvents:"none"})});var C=a.forwardRef(function(t,e){let i=(0,b.i)({props:t,name:"MuiInputAdornment"}),{children:u,className:h,component:p="div",disablePointerEvents:v=!1,disableTypography:m=!1,position:f,variant:y}=i,C=(0,n.Z)(i,Z),P=(0,d.Z)()||{},R=y;y&&P.variant,P&&!R&&(R=P.variant);let w=(0,r.Z)({},i,{hiddenLabel:P.hiddenLabel,size:P.size,disablePointerEvents:v,position:f,variant:R}),S=g(w);return(0,M.jsx)(l.Z.Provider,{value:null,children:(0,M.jsx)(x,(0,r.Z)({as:p,ownerState:w,className:(0,o.Z)(S.root,h),ref:e},C,{children:"string"!=typeof u||m?(0,M.jsxs)(a.Fragment,{children:["start"===f?s||(s=(0,M.jsx)("span",{className:"notranslate",children:""})):null,u]}):(0,M.jsx)(c.Z,{color:"text.secondary",children:u})}))})})},64769:function(t,e,i){i.d(e,{L:function(){return r}});var s=i(11379),n=i(9049);function r(t){return(0,n.ZP)("MuiListItemText",t)}let a=(0,s.Z)("MuiListItemText",["root","multiline","dense","inset","primary","secondary"]);e.Z=a},98091:function(t,e,i){i.d(e,{R:function(){return o},m:function(){return a}});var s=i(11430),n=i(23620),r=i(97639),a=class extends n.F{#t;#e;#i;#s;constructor(t){super(),this.#t=t.client,this.mutationId=t.mutationId,this.#i=t.mutationCache,this.#e=[],this.state=t.state||o(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){this.#e.includes(t)||(this.#e.push(t),this.clearGcTimeout(),this.#i.notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){this.#e=this.#e.filter(e=>e!==t),this.scheduleGc(),this.#i.notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){this.#e.length||("pending"===this.state.status?this.scheduleGc():this.#i.remove(this))}continue(){return this.#s?.continue()??this.execute(this.state.variables)}async execute(t){let e=()=>{this.#n({type:"continue"})},i={client:this.#t,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#s=(0,r.Mz)({fn:()=>this.options.mutationFn?this.options.mutationFn(t,i):Promise.reject(Error("No mutationFn found")),onFail:(t,e)=>{this.#n({type:"failed",failureCount:t,error:e})},onPause:()=>{this.#n({type:"pause"})},onContinue:e,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#i.canRun(this)});let s="pending"===this.state.status,n=!this.#s.canStart();try{if(s)e();else{this.#n({type:"pending",variables:t,isPaused:n}),this.#i.config.onMutate&&await this.#i.config.onMutate(t,this,i);let e=await this.options.onMutate?.(t,i);e!==this.state.context&&this.#n({type:"pending",context:e,variables:t,isPaused:n})}let r=await this.#s.start();return await this.#i.config.onSuccess?.(r,t,this.state.context,this,i),await this.options.onSuccess?.(r,t,this.state.context,i),await this.#i.config.onSettled?.(r,null,this.state.variables,this.state.context,this,i),await this.options.onSettled?.(r,null,t,this.state.context,i),this.#n({type:"success",data:r}),r}catch(e){try{await this.#i.config.onError?.(e,t,this.state.context,this,i)}catch(t){Promise.reject(t)}try{await this.options.onError?.(e,t,this.state.context,i)}catch(t){Promise.reject(t)}try{await this.#i.config.onSettled?.(void 0,e,this.state.variables,this.state.context,this,i)}catch(t){Promise.reject(t)}try{await this.options.onSettled?.(void 0,e,t,this.state.context,i)}catch(t){Promise.reject(t)}throw this.#n({type:"error",error:e}),e}finally{this.#i.runNext(this)}}#n(t){this.state=(e=>{switch(t.type){case"failed":return{...e,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...e,isPaused:!0};case"continue":return{...e,isPaused:!1};case"pending":return{...e,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...e,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...e,data:void 0,error:t.error,failureCount:e.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}})(this.state),s.Vr.batch(()=>{this.#e.forEach(e=>{e.onMutationUpdate(t)}),this.#i.notify({mutation:this,type:"updated",action:t})})}};function o(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}},20367:function(t,e,i){i.d(e,{D:function(){return c}});var s=i(35106),n=i(98091),r=i(11430),a=i(12835),o=i(80375),u=class extends a.l{#t;#r=void 0;#a;#o;constructor(t,e){super(),this.#t=t,this.setOptions(e),this.bindMethods(),this.#u()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(t){let e=this.options;this.options=this.#t.defaultMutationOptions(t),(0,o.VS)(this.options,e)||this.#t.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#a,observer:this}),e?.mutationKey&&this.options.mutationKey&&(0,o.Ym)(e.mutationKey)!==(0,o.Ym)(this.options.mutationKey)?this.reset():this.#a?.state.status==="pending"&&this.#a.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#a?.removeObserver(this)}onMutationUpdate(t){this.#u(),this.#h(t)}getCurrentResult(){return this.#r}reset(){this.#a?.removeObserver(this),this.#a=void 0,this.#u(),this.#h()}mutate(t,e){return this.#o=e,this.#a?.removeObserver(this),this.#a=this.#t.getMutationCache().build(this.#t,this.options),this.#a.addObserver(this),this.#a.execute(t)}#u(){let t=this.#a?.state??(0,n.R)();this.#r={...t,isPending:"pending"===t.status,isSuccess:"success"===t.status,isError:"error"===t.status,isIdle:"idle"===t.status,mutate:this.mutate,reset:this.reset}}#h(t){r.Vr.batch(()=>{if(this.#o&&this.hasListeners()){let e=this.#r.variables,i=this.#r.context,s={client:this.#t,meta:this.options.meta,mutationKey:this.options.mutationKey};if(t?.type==="success"){try{this.#o.onSuccess?.(t.data,e,i,s)}catch(t){Promise.reject(t)}try{this.#o.onSettled?.(t.data,null,e,i,s)}catch(t){Promise.reject(t)}}else if(t?.type==="error"){try{this.#o.onError?.(t.error,e,i,s)}catch(t){Promise.reject(t)}try{this.#o.onSettled?.(void 0,t.error,e,i,s)}catch(t){Promise.reject(t)}}}this.listeners.forEach(t=>{t(this.#r)})})}},h=i(58919);function c(t,e){let i=(0,h.NL)(e),[n]=s.useState(()=>new u(i,t));s.useEffect(()=>{n.setOptions(t)},[n,t]);let a=s.useSyncExternalStore(s.useCallback(t=>n.subscribe(r.Vr.batchCalls(t)),[n]),()=>n.getCurrentResult(),()=>n.getCurrentResult()),c=s.useCallback((t,e)=>{n.mutate(t,e).catch(o.ZT)},[n]);if(a.error&&(0,o.L3)(n.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:c,mutateAsync:a.mutate}}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4436],{33104:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)([(0,a.jsx)("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2M12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"},"0"),(0,a.jsx)("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"},"1")],"AccessTime")},32366:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add")},26577:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"m12 4-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"}),"ArrowForward")},56056:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"m22.7 19-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4"}),"Build")},46207:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckCircle")},71185:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close")},46121:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zm2.46-7.12 1.41-1.41L12 12.59l2.12-2.12 1.41 1.41L13.41 14l2.12 2.12-1.41 1.41L12 15.41l-2.12 2.12-1.41-1.41L10.59 14zM15.5 4l-1-1h-5l-1 1H5v2h14V4z"}),"DeleteForever")},15761:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M5 20h14v-2H5zM19 9h-4V3H9v6H5l7 7z"}),"Download")},43436:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}),"Error")},81960:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")},76777:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M20.5 11H19V7c0-1.1-.9-2-2-2h-4V3.5C13 2.12 11.88 1 10.5 1S8 2.12 8 3.5V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7s-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5c0-1.49 1.21-2.7 2.7-2.7 1.49 0 2.7 1.21 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5c1.38 0 2.5-1.12 2.5-2.5S21.88 11 20.5 11"}),"Extension")},11259:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m0 12H4V8h16z"}),"FolderOpen")},89161:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"}),"KeyboardArrowDown")},25523:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2m6.93 6h-2.95c-.32-1.25-.78-2.45-1.38-3.56 1.84.63 3.37 1.91 4.33 3.56M12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96M4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2 0 .68.06 1.34.14 2zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56-1.84-.63-3.37-1.9-4.33-3.56m2.95-8H5.08c.96-1.66 2.49-2.93 4.33-3.56C8.81 5.55 8.35 6.75 8.03 8M12 19.96c-.83-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96M14.34 14H9.66c-.09-.66-.16-1.32-.16-2 0-.68.07-1.35.16-2h4.68c.09.65.16 1.32.16 2 0 .68-.07 1.34-.16 2m.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95c-.96 1.65-2.49 2.93-4.33 3.56M16.36 14c.08-.66.14-1.32.14-2 0-.68-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2z"}),"Language")},96292:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5"}),"Link")},89573:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"m21.41 11.58-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42M5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7"}),"LocalOffer")},66615:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M21 11V3h-8l3.29 3.29-10 10L3 13v8h8l-3.29-3.29 10-10z"}),"OpenInFull")},61244:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M9 16h2V8H9zm3-14C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m1-4h2V8h-2z"}),"PauseCircleOutline")},84775:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M12 5V2L8 6l4 4V7c3.31 0 6 2.69 6 6 0 2.97-2.17 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93 0-4.42-3.58-8-8-8m-6 8c0-1.65.67-3.15 1.76-4.24L6.34 7.34C4.9 8.79 4 10.79 4 13c0 4.08 3.05 7.44 7 7.93v-2.02c-2.83-.48-5-2.94-5-5.91"}),"RestartAlt")},5942:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M17 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V7zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3m3-10H5V5h10z"}),"Save")},97293:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M18 2h-8L4.02 8 4 20c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2m-6 6h-2V4h2zm3 0h-2V4h2zm3 0h-2V4h2z"}),"SdStorage")},23482:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M12 1 3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5z"}),"Shield")},30165:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"m20.38 8.57-1.23 1.85a8 8 0 0 1-.22 7.58H5.07A8 8 0 0 1 15.58 6.85l1.85-1.23A10 10 0 0 0 3.35 19a2 2 0 0 0 1.72 1h13.85a2 2 0 0 0 1.74-1 10 10 0 0 0-.27-10.44zm-9.79 6.84a2 2 0 0 0 2.83 0l5.66-8.49-8.49 5.66a2 2 0 0 0 0 2.83"}),"Speed")},1217:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"m21.58 16.09-1.09-7.66C20.21 6.46 18.52 5 16.53 5H7.47C5.48 5 3.79 6.46 3.51 8.43l-1.09 7.66C2.2 17.63 3.39 19 4.94 19c.68 0 1.32-.27 1.8-.75L9 16h6l2.25 2.25c.48.48 1.13.75 1.8.75 1.56 0 2.75-1.37 2.53-2.91M11 11H9v2H8v-2H6v-1h2V8h1v2h2zm4-1c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m2 3c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1"}),"SportsEsports")},34071:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M20 4H4c-1.11 0-2 .9-2 2v12c0 1.1.89 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.89-2-2-2m0 14H4V8h16zm-2-1h-6v-2h6zM7.5 17l-1.41-1.41L8.67 13l-2.59-2.59L7.5 9l4 4z"}),"Terminal")},17978:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"m18.25 7.6-5.5-3.18c-.46-.27-1.04-.27-1.5 0L5.75 7.6c-.46.27-.75.76-.75 1.3v6.35c0 .54.29 1.03.75 1.3l5.5 3.18c.46.27 1.04.27 1.5 0l5.5-3.18c.46-.27.75-.76.75-1.3V8.9c0-.54-.29-1.03-.75-1.3M7 14.96v-4.62l4 2.32v4.61zm5-4.03L8 8.61l4-2.31 4 2.31zm1 6.34v-4.61l4-2.32v4.62zM7 2H3.5C2.67 2 2 2.67 2 3.5V7h2V4h3zm10 0h3.5c.83 0 1.5.67 1.5 1.5V7h-2V4h-3zM7 22H3.5c-.83 0-1.5-.67-1.5-1.5V17h2v3h3zm10 0h3.5c.83 0 1.5-.67 1.5-1.5V17h-2v3h-3z"}),"ViewInAr")},84420:function(e,t,n){var r=n(8091);t.Z=void 0;var o=r(n(66758)),a=n(94655);t.Z=(0,o.default)((0,a.jsx)("path",{d:"M1 21h22L12 2zm12-3h-2v-2h2zm0-4h-2v-4h2z"}),"Warning")},99046:function(e,t,n){n.d(t,{Z:function(){return ec}});var r,o,a=n(32324),i=n(81500),l=n(35106),c=n(70316),s=n(65951),u=n(64577),p=n(40552),d=n(62098),f=e=>{let t=l.useRef({});return l.useEffect(()=>{t.current=e}),t.current},h=n(16987),g=n(25880);function v(e){return void 0!==e.normalize?e.normalize("NFD").replace(/[\u0300-\u036f]/g,""):e}function m(e,t){for(let n=0;n<e.length;n+=1)if(t(e[n]))return n;return -1}let b=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{ignoreAccents:t=!0,ignoreCase:n=!0,limit:r,matchFrom:o="any",stringify:a,trim:i=!1}=e;return(e,l)=>{let{inputValue:c,getOptionLabel:s}=l,u=i?c.trim():c;n&&(u=u.toLowerCase()),t&&(u=v(u));let p=u?e.filter(e=>{let r=(a||s)(e);return n&&(r=r.toLowerCase()),t&&(r=v(r)),"start"===o?0===r.indexOf(u):r.indexOf(u)>-1}):e;return"number"==typeof r?p.slice(0,r):p}}(),x=e=>{var t;return null!==e.current&&(null==(t=e.current.parentElement)?void 0:t.contains(document.activeElement))},Z=[];var y=function(e){let{unstable_isActiveElementInListbox:t=x,unstable_classNamePrefix:n="Mui",autoComplete:r=!1,autoHighlight:o=!1,autoSelect:a=!1,blurOnSelect:c=!1,clearOnBlur:s=!e.freeSolo,clearOnEscape:u=!1,componentName:v="useAutocomplete",defaultValue:y=e.multiple?Z:null,disableClearable:C=!1,disableCloseOnSelect:S=!1,disabled:k,disabledItemsFocusable:I=!1,disableListWrap:L=!1,filterOptions:w=b,filterSelectedOptions:M=!1,freeSolo:P=!1,getOptionDisabled:z,getOptionKey:O,getOptionLabel:R=e=>{var t;return null!=(t=e.label)?t:e},groupBy:j,handleHomeEndKeys:A=!e.freeSolo,id:V,includeInputInList:H=!1,inputValue:T,isOptionEqualToValue:E=(e,t)=>e===t,multiple:N=!1,onChange:D,onClose:F,onHighlightChange:B,onInputChange:q,onOpen:W,open:_,openOnFocus:G=!1,options:K,readOnly:U=!1,selectOnFocus:X=!e.freeSolo,value:Y}=e,$=(0,p.Z)(V),J=R;J=e=>{let t=R(e);return"string"!=typeof t?String(t):t};let Q=l.useRef(!1),ee=l.useRef(!0),et=l.useRef(null),en=l.useRef(null),[er,eo]=l.useState(null),[ea,ei]=l.useState(-1),el=o?0:-1,ec=l.useRef(el),[es,eu]=(0,d.Z)({controlled:Y,default:y,name:v}),[ep,ed]=(0,d.Z)({controlled:T,default:"",name:v,state:"inputValue"}),[ef,eh]=l.useState(!1),eg=l.useCallback((e,t)=>{let n;if((N?es.length<t.length:null!==t)||s){if(N)n="";else if(null==t)n="";else{let e=J(t);n="string"==typeof e?e:""}ep!==n&&(ed(n),q&&q(e,n,"reset"))}},[J,ep,N,q,ed,s,es]),[ev,em]=(0,d.Z)({controlled:_,default:!1,name:v,state:"open"}),[eb,ex]=l.useState(!0),eZ=!N&&null!=es&&ep===J(es),ey=ev&&!U,eC=ey?w(K.filter(e=>!(M&&(N?es:[es]).some(t=>null!==t&&E(e,t)))),{inputValue:eZ&&eb?"":ep,getOptionLabel:J}):[],eS=f({filteredOptions:eC,value:es,inputValue:ep});l.useEffect(()=>{let e=es!==eS.value;(!ef||e)&&(!P||e)&&eg(null,es)},[es,eg,ef,eS.value,P]);let ek=ev&&eC.length>0&&!U,eI=(0,h.Z)(e=>{-1===e?et.current.focus():er.querySelector('[data-tag-index="'.concat(e,'"]')).focus()});l.useEffect(()=>{N&&ea>es.length-1&&(ei(-1),eI(-1))},[es,N,ea,eI]);let eL=(0,h.Z)(e=>{let{event:t,index:r,reason:o="auto"}=e;if(ec.current=r,-1===r?et.current.removeAttribute("aria-activedescendant"):et.current.setAttribute("aria-activedescendant","".concat($,"-option-").concat(r)),B&&B(t,-1===r?null:eC[r],o),!en.current)return;let a=en.current.querySelector('[role="option"].'.concat(n,"-focused"));a&&(a.classList.remove("".concat(n,"-focused")),a.classList.remove("".concat(n,"-focusVisible")));let i=en.current;if("listbox"!==en.current.getAttribute("role")&&(i=en.current.parentElement.querySelector('[role="listbox"]')),!i)return;if(-1===r){i.scrollTop=0;return}let l=en.current.querySelector('[data-option-index="'.concat(r,'"]'));if(l&&(l.classList.add("".concat(n,"-focused")),"keyboard"===o&&l.classList.add("".concat(n,"-focusVisible")),i.scrollHeight>i.clientHeight&&"mouse"!==o&&"touch"!==o)){let e=i.clientHeight+i.scrollTop,t=l.offsetTop+l.offsetHeight;t>e?i.scrollTop=t-i.clientHeight:l.offsetTop-l.offsetHeight*(j?1.3:0)<i.scrollTop&&(i.scrollTop=l.offsetTop-l.offsetHeight*(j?1.3:0))}}),ew=(0,h.Z)(e=>{let{event:t,diff:n,direction:o="next",reason:a="auto"}=e;if(!ey)return;let i=function(e,t){if(!en.current||e<0||e>=eC.length)return -1;let n=e;for(;;){let r=en.current.querySelector('[data-option-index="'.concat(n,'"]')),o=!I&&(!r||r.disabled||"true"===r.getAttribute("aria-disabled"));if(r&&r.hasAttribute("tabindex")&&!o)return n;if((n="next"===t?(n+1)%eC.length:(n-1+eC.length)%eC.length)===e)return -1}}((()=>{let e=eC.length-1;if("reset"===n)return el;if("start"===n)return 0;if("end"===n)return e;let t=ec.current+n;return t<0?-1===t&&H?-1:L&&-1!==ec.current||Math.abs(n)>1?0:e:t>e?t===e+1&&H?-1:L||Math.abs(n)>1?e:0:t})(),o);if(eL({index:i,reason:a,event:t}),r&&"reset"!==n){if(-1===i)et.current.value=ep;else{let e=J(eC[i]);et.current.value=e,0===e.toLowerCase().indexOf(ep.toLowerCase())&&ep.length>0&&et.current.setSelectionRange(ep.length,e.length)}}}),eM=()=>{var e;if(-1!==ec.current&&eS.filteredOptions&&eS.filteredOptions.length!==eC.length&&eS.inputValue===ep&&(N?es.length===eS.value.length&&eS.value.every((e,t)=>J(es[t])===J(e)):((e=eS.value)?J(e):"")===(es?J(es):""))){let e=eS.filteredOptions[ec.current];if(e)return m(eC,t=>J(t)===J(e))}return -1},eP=l.useCallback(()=>{if(!ey)return;let e=eM();if(-1!==e){ec.current=e;return}let t=N?es[0]:es;if(0===eC.length||null==t){ew({diff:"reset"});return}if(en.current){if(null!=t){let e=eC[ec.current];if(N&&e&&-1!==m(es,t=>E(e,t)))return;let n=m(eC,e=>E(e,t));-1===n?ew({diff:"reset"}):eL({index:n});return}if(ec.current>=eC.length-1){eL({index:eC.length-1});return}eL({index:ec.current})}},[eC.length,!N&&es,M,ew,eL,ey,ep,N]),ez=(0,h.Z)(e=>{(0,g.Z)(en,e),e&&eP()});l.useEffect(()=>{eP()},[eP]);let eO=e=>{!ev&&(em(!0),ex(!0),W&&W(e))},eR=(e,t)=>{ev&&(em(!1),F&&F(e,t))},ej=(e,t,n,r)=>{if(N){if(es.length===t.length&&es.every((e,n)=>e===t[n]))return}else if(es===t)return;D&&D(e,t,n,r),eu(t)},eA=l.useRef(!1),eV=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"selectOption",r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"options",o=n,a=t;if(N){let e=m(a=Array.isArray(es)?es.slice():[],e=>E(t,e));-1===e?a.push(t):"freeSolo"!==r&&(a.splice(e,1),o="removeOption")}eg(e,a),ej(e,a,o,{option:t}),S||e&&(e.ctrlKey||e.metaKey)||eR(e,o),(!0===c||"touch"===c&&eA.current||"mouse"===c&&!eA.current)&&et.current.blur()},eH=(e,t)=>{if(!N)return;""===ep&&eR(e,"toggleInput");let n=ea;-1===ea?""===ep&&"previous"===t&&(n=es.length-1):((n+="next"===t?1:-1)<0&&(n=0),n===es.length&&(n=-1)),ei(n=function(e,t){if(-1===e)return -1;let n=e;for(;;){if("next"===t&&n===es.length||"previous"===t&&-1===n)return -1;let e=er.querySelector('[data-tag-index="'.concat(n,'"]'));if(e&&e.hasAttribute("tabindex")&&!e.disabled&&"true"!==e.getAttribute("aria-disabled"))return n;n+="next"===t?1:-1}}(n,t)),eI(n)},eT=e=>{Q.current=!0,ed(""),q&&q(e,"","clear"),ej(e,N?[]:null,"clear")},eE=e=>t=>{if(e.onKeyDown&&e.onKeyDown(t),!t.defaultMuiPrevented&&(-1!==ea&&-1===["ArrowLeft","ArrowRight"].indexOf(t.key)&&(ei(-1),eI(-1)),229!==t.which))switch(t.key){case"Home":ey&&A&&(t.preventDefault(),ew({diff:"start",direction:"next",reason:"keyboard",event:t}));break;case"End":ey&&A&&(t.preventDefault(),ew({diff:"end",direction:"previous",reason:"keyboard",event:t}));break;case"PageUp":t.preventDefault(),ew({diff:-5,direction:"previous",reason:"keyboard",event:t}),eO(t);break;case"PageDown":t.preventDefault(),ew({diff:5,direction:"next",reason:"keyboard",event:t}),eO(t);break;case"ArrowDown":t.preventDefault(),ew({diff:1,direction:"next",reason:"keyboard",event:t}),eO(t);break;case"ArrowUp":t.preventDefault(),ew({diff:-1,direction:"previous",reason:"keyboard",event:t}),eO(t);break;case"ArrowLeft":eH(t,"previous");break;case"ArrowRight":eH(t,"next");break;case"Enter":if(-1!==ec.current&&ey){let e=eC[ec.current],n=!!z&&z(e);if(t.preventDefault(),n)return;eV(t,e,"selectOption"),r&&et.current.setSelectionRange(et.current.value.length,et.current.value.length)}else P&&""!==ep&&!1===eZ&&(N&&t.preventDefault(),eV(t,ep,"createOption","freeSolo"));break;case"Escape":ey?(t.preventDefault(),t.stopPropagation(),eR(t,"escape")):u&&(""!==ep||N&&es.length>0)&&(t.preventDefault(),t.stopPropagation(),eT(t));break;case"Backspace":if(N&&!U&&""===ep&&es.length>0){let e=-1===ea?es.length-1:ea,n=es.slice();n.splice(e,1),ej(t,n,"removeOption",{option:es[e]})}break;case"Delete":if(N&&!U&&""===ep&&es.length>0&&-1!==ea){let e=es.slice();e.splice(ea,1),ej(t,e,"removeOption",{option:es[ea]})}}},eN=e=>{eh(!0),G&&!Q.current&&eO(e)},eD=e=>{if(t(en)){et.current.focus();return}eh(!1),ee.current=!0,Q.current=!1,a&&-1!==ec.current&&ey?eV(e,eC[ec.current],"blur"):a&&P&&""!==ep?eV(e,ep,"blur","freeSolo"):s&&eg(e,es),eR(e,"blur")},eF=e=>{let t=e.target.value;ep!==t&&(ed(t),ex(!1),q&&q(e,t,"input")),""===t?C||N||ej(e,null,"clear"):eO(e)},eB=e=>{let t=Number(e.currentTarget.getAttribute("data-option-index"));ec.current!==t&&eL({event:e,index:t,reason:"mouse"})},eq=e=>{eL({event:e,index:Number(e.currentTarget.getAttribute("data-option-index")),reason:"touch"}),eA.current=!0},eW=e=>{let t=Number(e.currentTarget.getAttribute("data-option-index"));eV(e,eC[t],"selectOption"),eA.current=!1},e_=e=>t=>{let n=es.slice();n.splice(e,1),ej(t,n,"removeOption",{option:es[e]})},eG=e=>{ev?eR(e,"toggleInput"):eO(e)},eK=e=>{e.currentTarget.contains(e.target)&&e.target.getAttribute("id")!==$&&e.preventDefault()},eU=e=>{e.currentTarget.contains(e.target)&&(et.current.focus(),X&&ee.current&&et.current.selectionEnd-et.current.selectionStart==0&&et.current.select(),ee.current=!1)},eX=e=>{k||""!==ep&&ev||eG(e)},eY=P&&ep.length>0;eY=eY||(N?es.length>0:null!==es);let e$=eC;return j&&(e$=eC.reduce((e,t,n)=>{let r=j(t);return e.length>0&&e[e.length-1].group===r?e[e.length-1].options.push(t):e.push({key:n,index:n,group:r,options:[t]}),e},[])),k&&ef&&eD(),{getRootProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,i.Z)({"aria-owns":ek?"".concat($,"-listbox"):null},e,{onKeyDown:eE(e),onMouseDown:eK,onClick:eU})},getInputLabelProps:()=>({id:"".concat($,"-label"),htmlFor:$}),getInputProps:()=>({id:$,value:ep,onBlur:eD,onFocus:eN,onChange:eF,onMouseDown:eX,"aria-activedescendant":ey?"":null,"aria-autocomplete":r?"both":"list","aria-controls":ek?"".concat($,"-listbox"):void 0,"aria-expanded":ek,autoComplete:"off",ref:et,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:k}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:eT}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:eG}),getTagProps:e=>{let{index:t}=e;return(0,i.Z)({key:t,"data-tag-index":t,tabIndex:-1},!U&&{onDelete:e_(t)})},getListboxProps:()=>({role:"listbox",id:"".concat($,"-listbox"),"aria-labelledby":"".concat($,"-label"),ref:ez,onMouseDown:e=>{e.preventDefault()}}),getOptionProps:e=>{var t;let{index:n,option:r}=e,o=(N?es:[es]).some(e=>null!=e&&E(r,e)),a=!!z&&z(r);return{key:null!=(t=null==O?void 0:O(r))?t:J(r),tabIndex:-1,role:"option",id:"".concat($,"-option-").concat(n),onMouseMove:eB,onClick:eW,onTouchStart:eq,"data-option-index":n,"aria-disabled":a,"aria-selected":o}},id:$,inputValue:ep,value:es,dirty:eY,expanded:ey&&er,popupOpen:ey,focused:ef||-1!==ea,anchorEl:er,setAnchorEl:eo,focusedTag:ea,groupedOptions:e$}},C=n(10612),S=n(34519),k=n(28057),I=n(38762),L=n(11379),w=n(9049);function M(e){return(0,w.ZP)("MuiListSubheader",e)}(0,L.Z)("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);var P=n(94655);let z=["className","color","component","disableGutters","disableSticky","inset"],O=e=>{let{classes:t,color:n,disableGutters:r,inset:o,disableSticky:a}=e,i={root:["root","default"!==n&&"color".concat((0,I.Z)(n)),!r&&"gutters",o&&"inset",!a&&"sticky"]};return(0,s.Z)(i,M,t)},R=(0,S.ZP)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,"default"!==n.color&&t["color".concat((0,I.Z)(n.color))],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})(e=>{let{theme:t,ownerState:n}=e;return(0,i.Z)({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(t.vars||t).palette.text.secondary,fontFamily:t.typography.fontFamily,fontWeight:t.typography.fontWeightMedium,fontSize:t.typography.pxToRem(14)},"primary"===n.color&&{color:(t.vars||t).palette.primary.main},"inherit"===n.color&&{color:"inherit"},!n.disableGutters&&{paddingLeft:16,paddingRight:16},n.inset&&{paddingLeft:72},!n.disableSticky&&{position:"sticky",top:0,zIndex:1,backgroundColor:(t.vars||t).palette.background.paper})}),j=l.forwardRef(function(e,t){let n=(0,k.i)({props:e,name:"MuiListSubheader"}),{className:r,color:o="default",component:l="li",disableGutters:s=!1,disableSticky:u=!1,inset:p=!1}=n,d=(0,a.Z)(n,z),f=(0,i.Z)({},n,{color:o,component:l,disableGutters:s,disableSticky:u,inset:p}),h=O(f);return(0,P.jsx)(R,(0,i.Z)({as:l,className:(0,c.Z)(h.root,r),ref:t,ownerState:f},d))});j.muiSkipListHighlight=!0;var A=n(69899),V=n(79983),H=n(25333),T=n(5180),E=n(79254),N=n(47228),D=n(39448),F=n(99933),B=n(12284);function q(e){return(0,w.ZP)("MuiAutocomplete",e)}let W=(0,L.Z)("MuiAutocomplete",["root","expanded","fullWidth","focused","focusVisible","tag","tagSizeSmall","tagSizeMedium","hasPopupIcon","hasClearIcon","inputRoot","input","inputFocused","endAdornment","clearIndicator","popupIndicator","popupIndicatorOpen","popper","popperDisablePortal","paper","listbox","loading","noOptions","option","groupLabel","groupUl"]);var _=n(38481);let G=["autoComplete","autoHighlight","autoSelect","blurOnSelect","ChipProps","className","clearIcon","clearOnBlur","clearOnEscape","clearText","closeText","componentsProps","defaultValue","disableClearable","disableCloseOnSelect","disabled","disabledItemsFocusable","disableListWrap","disablePortal","filterOptions","filterSelectedOptions","forcePopupIcon","freeSolo","fullWidth","getLimitTagsText","getOptionDisabled","getOptionKey","getOptionLabel","isOptionEqualToValue","groupBy","handleHomeEndKeys","id","includeInputInList","inputValue","limitTags","ListboxComponent","ListboxProps","loading","loadingText","multiple","noOptionsText","onChange","onClose","onHighlightChange","onInputChange","onOpen","open","openOnFocus","openText","options","PaperComponent","PopperComponent","popupIcon","readOnly","renderGroup","renderInput","renderOption","renderTags","selectOnFocus","size","slotProps","value"],K=["ref"],U=["key"],X=["key"],Y=e=>{let{classes:t,disablePortal:n,expanded:r,focused:o,fullWidth:a,hasClearIcon:i,hasPopupIcon:l,inputFocused:c,popupOpen:u,size:p}=e,d={root:["root",r&&"expanded",o&&"focused",a&&"fullWidth",i&&"hasClearIcon",l&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",c&&"inputFocused"],tag:["tag","tagSize".concat((0,I.Z)(p))],endAdornment:["endAdornment"],clearIndicator:["clearIndicator"],popupIndicator:["popupIndicator",u&&"popupIndicatorOpen"],popper:["popper",n&&"popperDisablePortal"],paper:["paper"],listbox:["listbox"],loading:["loading"],noOptions:["noOptions"],option:["option"],groupLabel:["groupLabel"],groupUl:["groupUl"]};return(0,s.Z)(d,q,t)},$=(0,S.ZP)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e,{fullWidth:r,hasClearIcon:o,hasPopupIcon:a,inputFocused:i,size:l}=n;return[{["& .".concat(W.tag)]:t.tag},{["& .".concat(W.tag)]:t["tagSize".concat((0,I.Z)(l))]},{["& .".concat(W.inputRoot)]:t.inputRoot},{["& .".concat(W.input)]:t.input},{["& .".concat(W.input)]:i&&t.inputFocused},t.root,r&&t.fullWidth,a&&t.hasPopupIcon,o&&t.hasClearIcon]}})({["&.".concat(W.focused," .").concat(W.clearIndicator)]:{visibility:"visible"},"@media (pointer: fine)":{["&:hover .".concat(W.clearIndicator)]:{visibility:"visible"}},["& .".concat(W.tag)]:{margin:3,maxWidth:"calc(100% - 6px)"},["& .".concat(W.inputRoot)]:{[".".concat(W.hasPopupIcon,"&, .").concat(W.hasClearIcon,"&")]:{paddingRight:30},[".".concat(W.hasPopupIcon,".").concat(W.hasClearIcon,"&")]:{paddingRight:56},["& .".concat(W.input)]:{width:0,minWidth:30}},["& .".concat(T.Z.root)]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},["& .".concat(T.Z.root,".").concat(E.Z.sizeSmall)]:{["& .".concat(T.Z.input)]:{padding:"2px 4px 3px 0"}},["& .".concat(N.Z.root)]:{padding:9,[".".concat(W.hasPopupIcon,"&, .").concat(W.hasClearIcon,"&")]:{paddingRight:39},[".".concat(W.hasPopupIcon,".").concat(W.hasClearIcon,"&")]:{paddingRight:65},["& .".concat(W.input)]:{padding:"7.5px 4px 7.5px 5px"},["& .".concat(W.endAdornment)]:{right:9}},["& .".concat(N.Z.root,".").concat(E.Z.sizeSmall)]:{paddingTop:6,paddingBottom:6,paddingLeft:6,["& .".concat(W.input)]:{padding:"2.5px 4px 2.5px 8px"}},["& .".concat(D.Z.root)]:{paddingTop:19,paddingLeft:8,[".".concat(W.hasPopupIcon,"&, .").concat(W.hasClearIcon,"&")]:{paddingRight:39},[".".concat(W.hasPopupIcon,".").concat(W.hasClearIcon,"&")]:{paddingRight:65},["& .".concat(D.Z.input)]:{padding:"7px 4px"},["& .".concat(W.endAdornment)]:{right:9}},["& .".concat(D.Z.root,".").concat(E.Z.sizeSmall)]:{paddingBottom:1,["& .".concat(D.Z.input)]:{padding:"2.5px 4px"}},["& .".concat(E.Z.hiddenLabel)]:{paddingTop:8},["& .".concat(D.Z.root,".").concat(E.Z.hiddenLabel)]:{paddingTop:0,paddingBottom:0,["& .".concat(W.input)]:{paddingTop:16,paddingBottom:17}},["& .".concat(D.Z.root,".").concat(E.Z.hiddenLabel,".").concat(E.Z.sizeSmall)]:{["& .".concat(W.input)]:{paddingTop:8,paddingBottom:9}},["& .".concat(W.input)]:{flexGrow:1,textOverflow:"ellipsis",opacity:0},variants:[{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{["& .".concat(W.tag)]:{margin:2,maxWidth:"calc(100% - 4px)"}}},{props:{inputFocused:!0},style:{["& .".concat(W.input)]:{opacity:1}}},{props:{multiple:!0},style:{["& .".concat(W.inputRoot)]:{flexWrap:"wrap"}}}]}),J=(0,S.ZP)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:(e,t)=>t.endAdornment})({position:"absolute",right:0,top:"50%",transform:"translate(0, -50%)"}),Q=(0,S.ZP)(V.Z,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:(e,t)=>t.clearIndicator})({marginRight:-2,padding:4,visibility:"hidden"}),ee=(0,S.ZP)(V.Z,{name:"MuiAutocomplete",slot:"PopupIndicator",overridesResolver:(e,t)=>{let{ownerState:n}=e;return(0,i.Z)({},t.popupIndicator,n.popupOpen&&t.popupIndicatorOpen)}})({padding:2,marginRight:-2,variants:[{props:{popupOpen:!0},style:{transform:"rotate(180deg)"}}]}),et=(0,S.ZP)(C.Z,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{["& .".concat(W.option)]:t.option},t.popper,n.disablePortal&&t.popperDisablePortal]}})(e=>{let{theme:t}=e;return{zIndex:(t.vars||t).zIndex.modal,variants:[{props:{disablePortal:!0},style:{position:"absolute"}}]}}),en=(0,S.ZP)(A.Z,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:(e,t)=>t.paper})(e=>{let{theme:t}=e;return(0,i.Z)({},t.typography.body1,{overflow:"auto"})}),er=(0,S.ZP)("div",{name:"MuiAutocomplete",slot:"Loading",overridesResolver:(e,t)=>t.loading})(e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}}),eo=(0,S.ZP)("div",{name:"MuiAutocomplete",slot:"NoOptions",overridesResolver:(e,t)=>t.noOptions})(e=>{let{theme:t}=e;return{color:(t.vars||t).palette.text.secondary,padding:"14px 16px"}}),ea=(0,S.ZP)("div",{name:"MuiAutocomplete",slot:"Listbox",overridesResolver:(e,t)=>t.listbox})(e=>{let{theme:t}=e;return{listStyle:"none",margin:0,padding:"8px 0",maxHeight:"40vh",overflow:"auto",position:"relative",["& .".concat(W.option)]:{minHeight:48,display:"flex",overflow:"hidden",justifyContent:"flex-start",alignItems:"center",cursor:"pointer",paddingTop:6,boxSizing:"border-box",outline:"0",WebkitTapHighlightColor:"transparent",paddingBottom:6,paddingLeft:16,paddingRight:16,[t.breakpoints.up("sm")]:{minHeight:"auto"},["&.".concat(W.focused)]:{backgroundColor:(t.vars||t).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},'&[aria-disabled="true"]':{opacity:(t.vars||t).palette.action.disabledOpacity,pointerEvents:"none"},["&.".concat(W.focusVisible)]:{backgroundColor:(t.vars||t).palette.action.focus},'&[aria-selected="true"]':{backgroundColor:t.vars?"rgba(".concat(t.vars.palette.primary.mainChannel," / ").concat(t.vars.palette.action.selectedOpacity,")"):(0,u.Fq)(t.palette.primary.main,t.palette.action.selectedOpacity),["&.".concat(W.focused)]:{backgroundColor:t.vars?"rgba(".concat(t.vars.palette.primary.mainChannel," / calc(").concat(t.vars.palette.action.selectedOpacity," + ").concat(t.vars.palette.action.hoverOpacity,"))"):(0,u.Fq)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:(t.vars||t).palette.action.selected}},["&.".concat(W.focusVisible)]:{backgroundColor:t.vars?"rgba(".concat(t.vars.palette.primary.mainChannel," / calc(").concat(t.vars.palette.action.selectedOpacity," + ").concat(t.vars.palette.action.focusOpacity,"))"):(0,u.Fq)(t.palette.primary.main,t.palette.action.selectedOpacity+t.palette.action.focusOpacity)}}}}}),ei=(0,S.ZP)(j,{name:"MuiAutocomplete",slot:"GroupLabel",overridesResolver:(e,t)=>t.groupLabel})(e=>{let{theme:t}=e;return{backgroundColor:(t.vars||t).palette.background.paper,top:-8}}),el=(0,S.ZP)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:(e,t)=>t.groupUl})({padding:0,["& .".concat(W.option)]:{paddingLeft:24}});var ec=l.forwardRef(function(e,t){var n,s,u,p;let d;let f=(0,k.i)({props:e,name:"MuiAutocomplete"}),{autoComplete:h=!1,autoHighlight:g=!1,autoSelect:v=!1,blurOnSelect:m=!1,ChipProps:b,className:x,clearIcon:Z=r||(r=(0,P.jsx)(F.Z,{fontSize:"small"})),clearOnBlur:S=!f.freeSolo,clearOnEscape:I=!1,clearText:L="Clear",closeText:w="Close",componentsProps:M={},defaultValue:z=f.multiple?[]:null,disableClearable:O=!1,disableCloseOnSelect:R=!1,disabled:j=!1,disabledItemsFocusable:V=!1,disableListWrap:T=!1,disablePortal:E=!1,filterSelectedOptions:N=!1,forcePopupIcon:D="auto",freeSolo:q=!1,fullWidth:W=!1,getLimitTagsText:ec=e=>"+".concat(e),getOptionLabel:es,groupBy:eu,handleHomeEndKeys:ep=!f.freeSolo,includeInputInList:ed=!1,limitTags:ef=-1,ListboxComponent:eh="ul",ListboxProps:eg,loading:ev=!1,loadingText:em="Loading…",multiple:eb=!1,noOptionsText:ex="No options",openOnFocus:eZ=!1,openText:ey="Open",PaperComponent:eC=A.Z,PopperComponent:eS=C.Z,popupIcon:ek=o||(o=(0,P.jsx)(B.Z,{})),readOnly:eI=!1,renderGroup:eL,renderInput:ew,renderOption:eM,renderTags:eP,selectOnFocus:ez=!f.freeSolo,size:eO="medium",slotProps:eR={}}=f,ej=(0,a.Z)(f,G),{getRootProps:eA,getInputProps:eV,getInputLabelProps:eH,getPopupIndicatorProps:eT,getClearProps:eE,getTagProps:eN,getListboxProps:eD,getOptionProps:eF,value:eB,dirty:eq,expanded:eW,id:e_,popupOpen:eG,focused:eK,focusedTag:eU,anchorEl:eX,setAnchorEl:eY,inputValue:e$,groupedOptions:eJ}=y((0,i.Z)({},f,{componentName:"Autocomplete"})),eQ=!O&&!j&&eq&&!eI,e1=(!q||!0===D)&&!1!==D,{onMouseDown:e0}=eV(),{ref:e2}=null!=eg?eg:{},e5=eD(),{ref:e6}=e5,e4=(0,a.Z)(e5,K),e9=(0,_.Z)(e6,e2),e3=es||(e=>{var t;return null!=(t=e.label)?t:e}),e8=(0,i.Z)({},f,{disablePortal:E,expanded:eW,focused:eK,fullWidth:W,getOptionLabel:e3,hasClearIcon:eQ,hasPopupIcon:e1,inputFocused:-1===eU,popupOpen:eG,size:eO}),e7=Y(e8);if(eb&&eB.length>0){let e=e=>(0,i.Z)({className:e7.tag,disabled:j},eN(e));d=eP?eP(eB,e,e8):eB.map((t,n)=>{let r=e({index:n}),{key:o}=r,l=(0,a.Z)(r,U);return(0,P.jsx)(H.Z,(0,i.Z)({label:e3(t),size:eO},l,b),o)})}if(ef>-1&&Array.isArray(d)){let e=d.length-ef;!eK&&e>0&&(d=d.splice(0,ef)).push((0,P.jsx)("span",{className:e7.tag,children:ec(e)},d.length))}let te=eL||(e=>(0,P.jsxs)("li",{children:[(0,P.jsx)(ei,{className:e7.groupLabel,ownerState:e8,component:"div",children:e.group}),(0,P.jsx)(el,{className:e7.groupUl,ownerState:e8,children:e.children})]},e.key)),tt=eM||((e,t)=>{let{key:n}=e,r=(0,a.Z)(e,X);return(0,P.jsx)("li",(0,i.Z)({},r,{children:e3(t)}),n)}),tn=(e,t)=>{let n=eF({option:e,index:t});return tt((0,i.Z)({},n,{className:e7.option}),e,{selected:n["aria-selected"],index:t,inputValue:e$},e8)},tr=null!=(n=eR.clearIndicator)?n:M.clearIndicator,to=null!=(s=eR.paper)?s:M.paper,ta=null!=(u=eR.popper)?u:M.popper,ti=null!=(p=eR.popupIndicator)?p:M.popupIndicator;return(0,P.jsxs)(l.Fragment,{children:[(0,P.jsx)($,(0,i.Z)({ref:t,className:(0,c.Z)(e7.root,x),ownerState:e8},eA(ej),{children:ew({id:e_,disabled:j,fullWidth:!0,size:"small"===eO?"small":void 0,InputLabelProps:eH(),InputProps:(0,i.Z)({ref:eY,className:e7.inputRoot,startAdornment:d,onClick:e=>{e.target===e.currentTarget&&e0(e)}},(eQ||e1)&&{endAdornment:(0,P.jsxs)(J,{className:e7.endAdornment,ownerState:e8,children:[eQ?(0,P.jsx)(Q,(0,i.Z)({},eE(),{"aria-label":L,title:L,ownerState:e8},tr,{className:(0,c.Z)(e7.clearIndicator,null==tr?void 0:tr.className),children:Z})):null,e1?(0,P.jsx)(ee,(0,i.Z)({},eT(),{disabled:j,"aria-label":eG?w:ey,title:eG?w:ey,ownerState:e8},ti,{className:(0,c.Z)(e7.popupIndicator,null==ti?void 0:ti.className),children:ek})):null]})}),inputProps:(0,i.Z)({className:e7.input,disabled:j,readOnly:eI},eV())})})),eX?(0,P.jsx)(et,(0,i.Z)({as:eS,disablePortal:E,style:{width:eX?eX.clientWidth:null},ownerState:e8,role:"presentation",anchorEl:eX,open:eG},ta,{className:(0,c.Z)(e7.popper,null==ta?void 0:ta.className),children:(0,P.jsxs)(en,(0,i.Z)({ownerState:e8,as:eC},to,{className:(0,c.Z)(e7.paper,null==to?void 0:to.className),children:[ev&&0===eJ.length?(0,P.jsx)(er,{className:e7.loading,ownerState:e8,children:em}):null,0!==eJ.length||q||ev?null:(0,P.jsx)(eo,{className:e7.noOptions,ownerState:e8,role:"presentation",onMouseDown:e=>{e.preventDefault()},children:ex}),eJ.length>0?(0,P.jsx)(ea,(0,i.Z)({as:eh,className:e7.listbox,ownerState:e8},e4,eg,{ref:e9,children:eJ.map((e,t)=>eu?te({key:e.key,group:e.group,children:e.options.map((t,n)=>tn(t,e.index+n))}):tn(e,t))})):null]}))})):null]})})},4405:function(e,t,n){n.d(t,{Z:function(){return B}});var r=n(16295),o=n(32324),a=n(81500),i=n(35106),l=n(70316),c=n(65951),s=n(41060),u=n(64577),p=n(16501),d=n(38762),f=n(34519),h=n(28057),g=n(11379),v=n(9049);function m(e){return(0,v.ZP)("MuiLinearProgress",e)}(0,g.Z)("MuiLinearProgress",["root","colorPrimary","colorSecondary","determinate","indeterminate","buffer","query","dashed","dashedColorPrimary","dashedColorSecondary","bar","barColorPrimary","barColorSecondary","bar1Indeterminate","bar1Determinate","bar1Buffer","bar2Indeterminate","bar2Buffer"]);var b=n(94655);function x(){let e=(0,r._)(["\n 0% {\n left: -35%;\n right: 100%;\n }\n\n 60% {\n left: 100%;\n right: -90%;\n }\n\n 100% {\n left: 100%;\n right: -90%;\n }\n"]);return x=function(){return e},e}function Z(){let e=(0,r._)(["\n 0% {\n left: -200%;\n right: 100%;\n }\n\n 60% {\n left: 107%;\n right: -8%;\n }\n\n 100% {\n left: 107%;\n right: -8%;\n }\n"]);return Z=function(){return e},e}function y(){let e=(0,r._)(["\n 0% {\n opacity: 1;\n background-position: 0 -23px;\n }\n\n 60% {\n opacity: 0;\n background-position: 0 -23px;\n }\n\n 100% {\n opacity: 1;\n background-position: -200px -23px;\n }\n"]);return y=function(){return e},e}function C(){let e=(0,r._)(["\n animation: "," 3s infinite linear;\n "]);return C=function(){return e},e}function S(){let e=(0,r._)(["\n width: auto;\n animation: "," 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;\n "]);return S=function(){return e},e}function k(){let e=(0,r._)(["\n width: auto;\n animation: "," 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.15s infinite;\n "]);return k=function(){return e},e}let I=["className","color","value","valueBuffer","variant"],L=e=>e,w,M,P,z,O,R,j=(0,s.F4)(w||(w=L(x()))),A=(0,s.F4)(M||(M=L(Z()))),V=(0,s.F4)(P||(P=L(y()))),H=e=>{let{classes:t,variant:n,color:r}=e,o={root:["root","color".concat((0,d.Z)(r)),n],dashed:["dashed","dashedColor".concat((0,d.Z)(r))],bar1:["bar","barColor".concat((0,d.Z)(r)),("indeterminate"===n||"query"===n)&&"bar1Indeterminate","determinate"===n&&"bar1Determinate","buffer"===n&&"bar1Buffer"],bar2:["bar","buffer"!==n&&"barColor".concat((0,d.Z)(r)),"buffer"===n&&"color".concat((0,d.Z)(r)),("indeterminate"===n||"query"===n)&&"bar2Indeterminate","buffer"===n&&"bar2Buffer"]};return(0,c.Z)(o,m,t)},T=(e,t)=>"inherit"===t?"currentColor":e.vars?e.vars.palette.LinearProgress["".concat(t,"Bg")]:"light"===e.palette.mode?(0,u.$n)(e.palette[t].main,.62):(0,u._j)(e.palette[t].main,.5),E=(0,f.ZP)("span",{name:"MuiLinearProgress",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t["color".concat((0,d.Z)(n.color))],t[n.variant]]}})(e=>{let{ownerState:t,theme:n}=e;return(0,a.Z)({position:"relative",overflow:"hidden",display:"block",height:4,zIndex:0,"@media print":{colorAdjust:"exact"},backgroundColor:T(n,t.color)},"inherit"===t.color&&"buffer"!==t.variant&&{backgroundColor:"none","&::before":{content:'""',position:"absolute",left:0,top:0,right:0,bottom:0,backgroundColor:"currentColor",opacity:.3}},"buffer"===t.variant&&{backgroundColor:"transparent"},"query"===t.variant&&{transform:"rotate(180deg)"})}),N=(0,f.ZP)("span",{name:"MuiLinearProgress",slot:"Dashed",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.dashed,t["dashedColor".concat((0,d.Z)(n.color))]]}})(e=>{let{ownerState:t,theme:n}=e,r=T(n,t.color);return(0,a.Z)({position:"absolute",marginTop:0,height:"100%",width:"100%"},"inherit"===t.color&&{opacity:.3},{backgroundImage:"radial-gradient(".concat(r," 0%, ").concat(r," 16%, transparent 42%)"),backgroundSize:"10px 10px",backgroundPosition:"0 -23px"})},(0,s.iv)(z||(z=L(C(),0)),V)),D=(0,f.ZP)("span",{name:"MuiLinearProgress",slot:"Bar1",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.bar,t["barColor".concat((0,d.Z)(n.color))],("indeterminate"===n.variant||"query"===n.variant)&&t.bar1Indeterminate,"determinate"===n.variant&&t.bar1Determinate,"buffer"===n.variant&&t.bar1Buffer]}})(e=>{let{ownerState:t,theme:n}=e;return(0,a.Z)({width:"100%",position:"absolute",left:0,bottom:0,top:0,transition:"transform 0.2s linear",transformOrigin:"left",backgroundColor:"inherit"===t.color?"currentColor":(n.vars||n).palette[t.color].main},"determinate"===t.variant&&{transition:"transform .".concat(4,"s linear")},"buffer"===t.variant&&{zIndex:1,transition:"transform .".concat(4,"s linear")})},e=>{let{ownerState:t}=e;return("indeterminate"===t.variant||"query"===t.variant)&&(0,s.iv)(O||(O=L(S(),0)),j)}),F=(0,f.ZP)("span",{name:"MuiLinearProgress",slot:"Bar2",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.bar,t["barColor".concat((0,d.Z)(n.color))],("indeterminate"===n.variant||"query"===n.variant)&&t.bar2Indeterminate,"buffer"===n.variant&&t.bar2Buffer]}})(e=>{let{ownerState:t,theme:n}=e;return(0,a.Z)({width:"100%",position:"absolute",left:0,bottom:0,top:0,transition:"transform 0.2s linear",transformOrigin:"left"},"buffer"!==t.variant&&{backgroundColor:"inherit"===t.color?"currentColor":(n.vars||n).palette[t.color].main},"inherit"===t.color&&{opacity:.3},"buffer"===t.variant&&{backgroundColor:T(n,t.color),transition:"transform .".concat(4,"s linear")})},e=>{let{ownerState:t}=e;return("indeterminate"===t.variant||"query"===t.variant)&&(0,s.iv)(R||(R=L(k(),0)),A)});var B=i.forwardRef(function(e,t){let n=(0,h.i)({props:e,name:"MuiLinearProgress"}),{className:r,color:i="primary",value:c,valueBuffer:s,variant:u="indeterminate"}=n,d=(0,o.Z)(n,I),f=(0,a.Z)({},n,{color:i,variant:u}),g=H(f),v=(0,p.V)(),m={},x={bar1:{},bar2:{}};if(("determinate"===u||"buffer"===u)&&void 0!==c){m["aria-valuenow"]=Math.round(c),m["aria-valuemin"]=0,m["aria-valuemax"]=100;let e=c-100;v&&(e=-e),x.bar1.transform="translateX(".concat(e,"%)")}if("buffer"===u&&void 0!==s){let e=(s||0)-100;v&&(e=-e),x.bar2.transform="translateX(".concat(e,"%)")}return(0,b.jsxs)(E,(0,a.Z)({className:(0,l.Z)(g.root,r),ownerState:f,role:"progressbar"},m,{ref:t},d,{children:["buffer"===u?(0,b.jsx)(N,{className:g.dashed,ownerState:f}):null,(0,b.jsx)(D,{className:g.bar1,ownerState:f,style:x.bar1}),"determinate"===u?null:(0,b.jsx)(F,{className:g.bar2,ownerState:f,style:x.bar2})]}))})},17820:function(e,t,n){var r=n(32324),o=n(81500),a=n(35106),i=n(70316),l=n(65951),c=n(34519),s=n(28057),u=n(33326),p=n(75084),d=n(94655);let f=["className"],h=e=>{let{alignItems:t,classes:n}=e;return(0,l.Z)({root:["root","flex-start"===t&&"alignItemsFlexStart"]},u.f,n)},g=(0,c.ZP)("div",{name:"MuiListItemIcon",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,"flex-start"===n.alignItems&&t.alignItemsFlexStart]}})(e=>{let{theme:t,ownerState:n}=e;return(0,o.Z)({minWidth:56,color:(t.vars||t).palette.action.active,flexShrink:0,display:"inline-flex"},"flex-start"===n.alignItems&&{marginTop:8})}),v=a.forwardRef(function(e,t){let n=(0,s.i)({props:e,name:"MuiListItemIcon"}),{className:l}=n,c=(0,r.Z)(n,f),u=a.useContext(p.Z),v=(0,o.Z)({},n,{alignItems:u.alignItems}),m=h(v);return(0,d.jsx)(g,(0,o.Z)({className:(0,i.Z)(m.root,l),ownerState:v,ref:t},c))});t.Z=v},12550:function(e,t,n){var r=n(81500),o=n(32324),a=n(35106),i=n(92019),l=n(11844),c=n(19521),s=n(38481),u=n(83855),p=n(56874),d=n(99466),f=n(94655);let h=["addEndListener","appear","children","container","direction","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"];function g(e,t,n){let r=function(e,t,n){let r;let o=t.getBoundingClientRect(),a=n&&n.getBoundingClientRect(),i=(0,d.Z)(t);if(t.fakeTransform)r=t.fakeTransform;else{let e=i.getComputedStyle(t);r=e.getPropertyValue("-webkit-transform")||e.getPropertyValue("transform")}let l=0,c=0;if(r&&"none"!==r&&"string"==typeof r){let e=r.split("(")[1].split(")")[0].split(",");l=parseInt(e[4],10),c=parseInt(e[5],10)}return"left"===e?a?"translateX(".concat(a.right+l-o.left,"px)"):"translateX(".concat(i.innerWidth+l-o.left,"px)"):"right"===e?a?"translateX(-".concat(o.right-a.left-l,"px)"):"translateX(-".concat(o.left+o.width-l,"px)"):"up"===e?a?"translateY(".concat(a.bottom+c-o.top,"px)"):"translateY(".concat(i.innerHeight+c-o.top,"px)"):a?"translateY(-".concat(o.top-a.top+o.height-c,"px)"):"translateY(-".concat(o.top+o.height-c,"px)")}(e,t,"function"==typeof n?n():n);r&&(t.style.webkitTransform=r,t.style.transform=r)}let v=a.forwardRef(function(e,t){let n=(0,u.Z)(),v={enter:n.transitions.easing.easeOut,exit:n.transitions.easing.sharp},m={enter:n.transitions.duration.enteringScreen,exit:n.transitions.duration.leavingScreen},{addEndListener:b,appear:x=!0,children:Z,container:y,direction:C="down",easing:S=v,in:k,onEnter:I,onEntered:L,onEntering:w,onExit:M,onExited:P,onExiting:z,style:O,timeout:R=m,TransitionComponent:j=i.ZP}=e,A=(0,o.Z)(e,h),V=a.useRef(null),H=(0,s.Z)((0,l.Z)(Z),V,t),T=e=>t=>{e&&(void 0===t?e(V.current):e(V.current,t))},E=T((e,t)=>{g(C,e,y),(0,p.n)(e),I&&I(e,t)}),N=T((e,t)=>{let o=(0,p.C)({timeout:R,style:O,easing:S},{mode:"enter"});e.style.webkitTransition=n.transitions.create("-webkit-transform",(0,r.Z)({},o)),e.style.transition=n.transitions.create("transform",(0,r.Z)({},o)),e.style.webkitTransform="none",e.style.transform="none",w&&w(e,t)}),D=T(L),F=T(z),B=T(e=>{let t=(0,p.C)({timeout:R,style:O,easing:S},{mode:"exit"});e.style.webkitTransition=n.transitions.create("-webkit-transform",t),e.style.transition=n.transitions.create("transform",t),g(C,e,y),M&&M(e)}),q=T(e=>{e.style.webkitTransition="",e.style.transition="",P&&P(e)}),W=a.useCallback(()=>{V.current&&g(C,V.current,y)},[C,y]);return a.useEffect(()=>{if(k||"down"===C||"right"===C)return;let e=(0,c.Z)(()=>{V.current&&g(C,V.current,y)}),t=(0,d.Z)(V.current);return t.addEventListener("resize",e),()=>{e.clear(),t.removeEventListener("resize",e)}},[C,k,y]),a.useEffect(()=>{k||W()},[k,W]),(0,f.jsx)(j,(0,r.Z)({nodeRef:V,onEnter:E,onEntered:D,onEntering:N,onExit:B,onExited:q,onExiting:F,addEndListener:e=>{b&&b(V.current,e)},appear:x,in:k,timeout:R},A,{children:(e,t)=>a.cloneElement(Z,(0,r.Z)({ref:H,style:(0,r.Z)({visibility:"exited"!==e||k?void 0:"hidden"},O,Z.props.style)},t))}))});t.Z=v}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5787],{3454:function(e,t,n){n.d(t,{LoadingProvider:function(){return i},startLoading:function(){return a},stopLoading:function(){return u}});var r=n(94655),o=n(35106),s=n(74228),l=n(31477),c=n.n(l);function i(e){let{children:t}=e,n=(0,s.usePathname)(),l=(0,s.useSearchParams)();return(0,o.useEffect)(()=>{c().done()},[n,l]),(0,r.jsx)(r.Fragment,{children:t})}function a(){c().start()}function u(){c().done()}c().configure({showSpinner:!1,speed:300,minimum:.1})},8690:function(e,t,n){n.d(t,{Av:function(){return r.startLoading}});var r=n(3454)},73660:function(e,t,n){n.d(t,{K:function(){return w}});var r=n(94655),o=n(35106),s=n(18844),l=n.n(s),c=n(7281),i=n(69899),a=n(97436),u=n(30417),d=n(90829),h=n(79983),p=n(31317),m=n(25333),f=n(40064),g=n(45547),x=n(70115),C=n(69123),v=n(93017),b=n(11141),S=n(19127),R=n(69366),y=n(163);let j=[{label:"say",template:"say "},{label:"give",template:"give "},{label:"tp",template:"tp "},{label:"gamemode",template:"gamemode "}],k=new(l())({fg:"#aaa",bg:"#000",newline:!1,escapeXML:!0,colors:{0:"#000000",1:"#cc0000",2:"#4e9a06",3:"#c4a000",4:"#3465a4",5:"#75507b",6:"#06989a",7:"#d3d7cf",8:"#555753",9:"#ef2929",10:"#8ae234",11:"#fce94f",12:"#729fcf",13:"#ad7fa8",14:"#34e2e2",15:"#eeeeec"}}),Z=(0,o.memo)(function(e){let{log:t}=e,n=(0,o.useMemo)(()=>(function(e){let t=e.replace(/\x1b\[\?[\d;]*[a-zA-Z]/g,"").replace(/\x1b\[[0-9;]*[KJH]/g,"").replace(/\x1b=/g,"").replace(/\[\?[\d;]*[a-zA-Z]/g,"").replace(/\[[0-9;]*[KJH]/g,"").replace(/\[m/g,"").replace(/\[(\d+)m/g,"\x1b[$1m").replace(/>\.\.\.\.\r?/g,"").replace(/\r/g,"");return k.toHtml(t)})(t),[t]);return(0,r.jsx)(c.Z,{sx:{py:.25,whiteSpace:"pre-wrap",wordBreak:"break-all","& span":{}},dangerouslySetInnerHTML:{__html:n}})});function w(e){let{serverName:t}=e,[n,s]=(0,o.useState)(""),[l,k]=(0,o.useState)([]),[w,E]=(0,o.useState)(-1),[N,T]=(0,o.useState)("ALL"),[A,O]=(0,o.useState)(!0),[I,L]=(0,o.useState)(!0),[z,D]=(0,o.useState)(!1),M=(0,o.useRef)(null),F=(0,o.useRef)(null),{logs:H,isConnected:P,clearLogs:W,reconnect:_,retryCount:J}=(0,y.Y)({serverName:t}),K=(0,o.useMemo)(()=>{let e=H;return I&&(e=e.filter(e=>!e.includes("RCON Listener")&&!e.includes("RCON Client")&&!e.includes("RconClient"))),"ALL"!==N&&(e=e.filter(e=>(e.includes("/ERROR]")||e.includes("/ERROR:")?"ERROR":e.includes("/WARN]")||e.includes("/WARN:")?"WARN":(e.includes("/INFO]")||e.includes("/INFO:"),"INFO"))===N)),e},[H,N,I]);(0,o.useEffect)(()=>{A&&F.current&&(F.current.scrollTop=F.current.scrollHeight)},[K,A]);let U=(0,o.useCallback)(async()=>{let e=n.trim();if(e&&!z){D(!0);try{k(t=>[...t,e]),E(-1),await fetch("/api/servers/".concat(encodeURIComponent(t),"/exec"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:e})}),s("")}catch(e){console.error("Failed to execute command:",e)}finally{D(!1)}}},[n,t,z]),B=(0,o.useCallback)(e=>{if("Enter"===e.key)e.preventDefault(),U();else if("ArrowUp"===e.key){if(e.preventDefault(),0===l.length)return;let t=-1===w?l.length-1:Math.max(0,w-1);E(t),s(l[t])}else if("ArrowDown"===e.key){if(e.preventDefault(),-1===w)return;let t=w+1;t>=l.length?(E(-1),s("")):(E(t),s(l[t]))}},[l,w,U]),Y=(0,o.useCallback)(e=>{var t;s(e),null===(t=M.current)||void 0===t||t.focus()},[]),Q=P?{text:"Connected",color:"success"}:J>0?{text:"Disconnected (Retry ".concat(J,")"),color:"warning"}:{text:"Disconnected",color:"error"};return(0,r.jsxs)(i.Z,{"data-testid":"server-console",sx:{display:"flex",flexDirection:"column",height:"100%",minHeight:400},children:[(0,r.jsxs)(c.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:2,py:1,borderBottom:1,borderColor:"divider"},children:[(0,r.jsxs)(x.Z,{direction:"row",spacing:1,alignItems:"center",children:[(0,r.jsx)(p.Z,{variant:"subtitle2",children:"Console"}),(0,r.jsx)(m.Z,{"data-testid":"connection-status",label:Q.text,color:Q.color,size:"small"})]}),(0,r.jsxs)(x.Z,{direction:"row",spacing:1,alignItems:"center",children:[(0,r.jsx)(d.Z,{size:"small",variant:"outlined",children:["ALL","INFO","WARN","ERROR"].map(e=>(0,r.jsx)(u.Z,{onClick:()=>T(e),variant:N===e?"contained":"outlined",children:e},e))}),(0,r.jsx)(f.Z,{control:(0,r.jsx)(g.Z,{checked:A,onChange:e=>O(e.target.checked),size:"small",inputProps:{"aria-label":"Auto-scroll"}}),label:"Auto-scroll"}),(0,r.jsx)(f.Z,{control:(0,r.jsx)(g.Z,{checked:I,onChange:e=>L(e.target.checked),size:"small",inputProps:{"aria-label":"Hide RCON"}}),label:"Hide RCON"}),(0,r.jsx)(h.Z,{size:"small",onClick:W,"aria-label":"Clear logs",title:"Clear logs",children:(0,r.jsx)(S.Z,{})}),!P&&(0,r.jsx)(u.Z,{size:"small",startIcon:(0,r.jsx)(R.Z,{}),onClick:_,"aria-label":"Reconnect",children:"Reconnect"})]})]}),(0,r.jsx)(c.Z,{ref:F,sx:{flex:1,overflow:"auto",bgcolor:"#1a1a1a",p:1,fontFamily:'"Roboto Mono", monospace',fontSize:"0.85rem"},children:0===K.length?(0,r.jsx)(p.Z,{color:"text.secondary",sx:{textAlign:"center",py:4,color:"#666"},children:"Waiting for logs..."}):K.map((e,t)=>(0,r.jsx)(Z,{log:e},t))}),(0,r.jsx)(C.Z,{}),(0,r.jsx)(c.Z,{sx:{px:2,py:1,bgcolor:"background.default"},children:(0,r.jsxs)(x.Z,{direction:"row",spacing:1,children:[(0,r.jsx)(p.Z,{variant:"caption",color:"text.secondary",sx:{alignSelf:"center"},children:"Quick:"}),j.map(e=>(0,r.jsx)(u.Z,{size:"small",variant:"outlined",onClick:()=>Y(e.template),children:e.label},e.label))]})}),(0,r.jsx)(C.Z,{}),(0,r.jsxs)(c.Z,{sx:{display:"flex",p:1,gap:1},children:[(0,r.jsx)(a.Z,{inputRef:M,fullWidth:!0,size:"small",placeholder:"Enter command...",value:n,onChange:e=>s(e.target.value),onKeyDown:B,disabled:!P||z,InputProps:{sx:{fontFamily:'"Roboto Mono", monospace'}}}),(0,r.jsx)(u.Z,{variant:"contained",onClick:U,disabled:!n.trim()||!P||z,startIcon:z?(0,r.jsx)(v.Z,{size:16}):(0,r.jsx)(b.Z,{}),"aria-label":"Send command",children:"Send"})]})]})}},31358:function(e,t,n){n.d(t,{x:function(){return l}});var r=n(74228),o=n(35106),s=n(8690);function l(){let e=(0,r.useRouter)(),t=(0,o.useCallback)((t,n)=>{(0,s.Av)(),e.push(t,n)},[e]),n=(0,o.useCallback)((t,n)=>{(0,s.Av)(),e.replace(t,n)},[e]);return(0,o.useMemo)(()=>({...e,push:t,replace:n}),[e,t,n])}},93757:function(e,t,n){n.d(t,{D:function(){return s}});var r=n(35106);class o{connect(e){this.options=e,this.shouldReconnect=!0,this.establishConnection()}establishConnection(){this.options&&(this.updateState("connecting"),this.eventSource&&this.eventSource.close(),this.eventSource=new EventSource(this.options.url,{withCredentials:this.options.withCredentials||!1}),this.eventSource.onopen=()=>{this.updateState("connected"),this.retryCount=0,this.lastError=null},this.eventSource.onmessage=e=>{if(!e.data.startsWith(":"))try{var t,n;let r=JSON.parse(e.data);null===(n=this.options)||void 0===n||null===(t=n.onMessage)||void 0===t||t.call(n,r)}catch(e){console.warn("Failed to parse SSE message:",e)}},this.eventSource.onerror=()=>{var e,t;let n={message:"SSE connection error",code:"CONNECTION_ERROR",retryCount:this.retryCount,timestamp:new Date};this.lastError=n,this.updateState("error"),null===(t=this.options)||void 0===t||null===(e=t.onError)||void 0===e||e.call(t,n),this.shouldReconnect&&this.scheduleReconnect()})}scheduleReconnect(){var e,t;if(!this.options)return;let n=null!==(e=this.options.maxReconnectAttempts)&&void 0!==e?e:1/0;if(this.retryCount>=n)return;this.reconnectTimer&&clearTimeout(this.reconnectTimer);let r=null!==(t=this.options.reconnectInterval)&&void 0!==t?t:3e3;this.reconnectTimer=setTimeout(()=>{this.retryCount++,this.establishConnection()},r)}disconnect(){this.shouldReconnect=!1,this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),this.eventSource&&(this.eventSource.close(),this.eventSource=null),this.updateState("disconnected")}getState(){return this.state}isConnected(){return"connected"===this.state}getLastError(){return this.lastError}getRetryCount(){return this.retryCount}reconnect(){this.retryCount++,this.shouldReconnect=!0,this.eventSource&&(this.eventSource.close(),this.eventSource=null),this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),this.establishConnection()}updateState(e){var t,n;this.state=e,null===(n=this.options)||void 0===n||null===(t=n.onStateChange)||void 0===t||t.call(n,e)}constructor(){this.eventSource=null,this.state="disconnected",this.retryCount=0,this.lastError=null,this.reconnectTimer=null,this.options=null,this.shouldReconnect=!0}}function s(e){let{url:t,onMessage:n,onError:s,reconnectInterval:l=3e3,maxReconnectAttempts:c=1/0,enabled:i=!0,withCredentials:a=!1}=e,[u,d]=(0,r.useState)(null),[h,p]=(0,r.useState)("disconnected"),[m,f]=(0,r.useState)(null),[g,x]=(0,r.useState)(0),C=(0,r.useRef)(null),v=(0,r.useCallback)(e=>{d(e),null==n||n(e)},[n]),b=(0,r.useCallback)(e=>{p(e),"connected"===e&&x(0)},[]),S=(0,r.useCallback)(e=>{f(e),"number"==typeof e.retryCount&&x(e.retryCount),null==s||s(e)},[s]),R=(0,r.useCallback)(()=>{C.current&&(C.current.reconnect(),x(C.current.getRetryCount()))},[]),y=(0,r.useCallback)(()=>{C.current&&C.current.disconnect()},[]);return(0,r.useEffect)(()=>{if(!i){C.current&&(C.current.disconnect(),C.current=null);return}return C.current||(C.current=new o),C.current.connect({url:t,onMessage:v,onStateChange:b,onError:S,reconnectInterval:l,maxReconnectAttempts:c,withCredentials:a}),()=>{C.current&&(C.current.disconnect(),C.current=null)}},[t,i,l,c,a,v,b,S]),{data:u,isConnected:"connected"===h,state:h,error:m,retryCount:g,reconnect:R,disconnect:y}}},163:function(e,t,n){n.d(t,{Y:function(){return s}});var r=n(35106),o=n(93757);function s(e){let{serverName:t,maxLines:n=500,enabled:s=!0,reconnectInterval:l=3e3}=e,[c,i]=(0,r.useState)([]);(0,r.useEffect)(()=>{i([])},[t]);let a=(0,r.useCallback)(e=>{let t;"server-log"===e.type?t=e.data.log:"log"in e&&"string"==typeof e.log&&(t=e.log),t&&i(e=>{let r=[...e,t];return r.length>n?r.slice(r.length-n):r})},[n]),{isConnected:u,reconnect:d,retryCount:h}=(0,o.D)({url:"/api/sse/servers/".concat(encodeURIComponent(t),"/logs"),onMessage:a,enabled:s,reconnectInterval:l});return{logs:c,isConnected:u,clearLogs:(0,r.useCallback)(()=>{i([])},[]),reconnect:d,retryCount:h}}}}]);
|