@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.
Files changed (136) hide show
  1. package/.next/standalone/platform/services/mcctl-console/.next/BUILD_ID +1 -1
  2. package/.next/standalone/platform/services/mcctl-console/.next/app-build-manifest.json +74 -72
  3. package/.next/standalone/platform/services/mcctl-console/.next/app-path-routes-manifest.json +1 -1
  4. package/.next/standalone/platform/services/mcctl-console/.next/build-manifest.json +2 -2
  5. package/.next/standalone/platform/services/mcctl-console/.next/prerender-manifest.json +1 -1
  6. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/admin/users/page.js +1 -1
  7. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/admin/users/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/audit-logs/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/backups/page.js +1 -1
  10. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/backups/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/dashboard/page.js +4 -4
  12. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/dashboard/page.js.nft.json +1 -1
  13. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/dashboard/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/players/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/routing/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/console/page.js +1 -1
  17. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/console/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/page.js +1 -54
  19. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/page.js.nft.json +1 -1
  20. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/[name]/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/page.js +1 -54
  22. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/page.js.nft.json +1 -1
  23. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/servers/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/settings/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/worlds/page.js +1 -1
  26. package/.next/standalone/platform/services/mcctl-console/.next/server/app/(main)/worlds/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/platform/services/mcctl-console/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/platform/services/mcctl-console/.next/server/app/_not-found.html +1 -1
  29. package/.next/standalone/platform/services/mcctl-console/.next/server/app/_not-found.rsc +1 -1
  30. package/.next/standalone/platform/services/mcctl-console/.next/server/app/audit-logs.html +1 -1
  31. package/.next/standalone/platform/services/mcctl-console/.next/server/app/audit-logs.rsc +2 -2
  32. package/.next/standalone/platform/services/mcctl-console/.next/server/app/backups.html +1 -1
  33. package/.next/standalone/platform/services/mcctl-console/.next/server/app/backups.rsc +3 -3
  34. package/.next/standalone/platform/services/mcctl-console/.next/server/app/dashboard.html +1 -1
  35. package/.next/standalone/platform/services/mcctl-console/.next/server/app/dashboard.rsc +3 -3
  36. package/.next/standalone/platform/services/mcctl-console/.next/server/app/index.html +1 -1
  37. package/.next/standalone/platform/services/mcctl-console/.next/server/app/index.rsc +1 -1
  38. package/.next/standalone/platform/services/mcctl-console/.next/server/app/login/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/platform/services/mcctl-console/.next/server/app/login.html +1 -1
  40. package/.next/standalone/platform/services/mcctl-console/.next/server/app/login.rsc +2 -2
  41. package/.next/standalone/platform/services/mcctl-console/.next/server/app/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/platform/services/mcctl-console/.next/server/app/players.html +1 -1
  43. package/.next/standalone/platform/services/mcctl-console/.next/server/app/players.rsc +3 -3
  44. package/.next/standalone/platform/services/mcctl-console/.next/server/app/routing.html +1 -1
  45. package/.next/standalone/platform/services/mcctl-console/.next/server/app/routing.rsc +3 -3
  46. package/.next/standalone/platform/services/mcctl-console/.next/server/app/servers.html +1 -1
  47. package/.next/standalone/platform/services/mcctl-console/.next/server/app/servers.rsc +3 -3
  48. package/.next/standalone/platform/services/mcctl-console/.next/server/app/settings.html +1 -1
  49. package/.next/standalone/platform/services/mcctl-console/.next/server/app/settings.rsc +3 -3
  50. package/.next/standalone/platform/services/mcctl-console/.next/server/app/signup/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/platform/services/mcctl-console/.next/server/app/signup.html +1 -1
  52. package/.next/standalone/platform/services/mcctl-console/.next/server/app/signup.rsc +2 -2
  53. package/.next/standalone/platform/services/mcctl-console/.next/server/app/worlds.html +1 -1
  54. package/.next/standalone/platform/services/mcctl-console/.next/server/app/worlds.rsc +3 -3
  55. package/.next/standalone/platform/services/mcctl-console/.next/server/app-paths-manifest.json +21 -21
  56. package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/1088.js +1 -0
  57. package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/5843.js +1 -1
  58. package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/7049.js +54 -0
  59. package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/8389.js +1 -1
  60. package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/8847.js +1 -1
  61. package/.next/standalone/platform/services/mcctl-console/.next/server/middleware-manifest.json +5 -5
  62. package/.next/standalone/platform/services/mcctl-console/.next/server/pages/404.html +1 -1
  63. package/.next/standalone/platform/services/mcctl-console/.next/server/pages/500.html +1 -1
  64. package/.next/standalone/platform/services/mcctl-console/.next/server/server-reference-manifest.json +1 -1
  65. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/1047-1957808ef6d146f3.js +1 -0
  66. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/{1658-1c16e5a05aaa11ee.js → 1658-43a798763bcc82ae.js} +1 -1
  67. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/{7727-2552fac729c5514a.js → 2539-6bce0edb99b4e538.js} +1 -1
  68. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/5787-04cc23df05f9da2e.js +1 -0
  69. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/6039-38b0b8c06d25892e.js +1 -0
  70. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/6646-c5d039d1ad306467.js +1 -0
  71. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/682-6192991ddec396b8.js +1 -0
  72. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/7965-420dbb1f781fdc83.js +1 -0
  73. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/837-f4fbf77c24343b1f.js +1 -0
  74. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/8854-b34262a2493987c4.js +1 -0
  75. package/.next/{static/chunks/9949-92aa4cba630945d3.js → standalone/platform/services/mcctl-console/.next/static/chunks/9949-2daeb31bdedf25c7.js} +1 -1
  76. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/admin/users/page-e8263fc89b5d349a.js +1 -0
  77. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/dashboard/page-3cf14179dcdd7ac6.js +1 -0
  78. package/.next/{static/chunks/app/(main)/layout-22d4db17be3f8c25.js → standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/layout-bf1846a6b0c68959.js} +1 -1
  79. 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
  80. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/[name]/console/{page-1287129ad47a4440.js → page-a0050b5b439d954f.js} +1 -1
  81. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/[name]/page-f82acaf60a615953.js +1 -0
  82. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/page-382a14f87768df2c.js +1 -0
  83. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/worlds/page-a194d5d6a77d7e06.js +1 -0
  84. package/.next/{static/chunks/app/login/page-55283ea041e00fc0.js → standalone/platform/services/mcctl-console/.next/static/chunks/app/login/page-b7ec94d60aae14ce.js} +1 -1
  85. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/signup/{page-d3f96f0e775636fd.js → page-6f03571bb9914130.js} +1 -1
  86. package/.next/static/chunks/1047-1957808ef6d146f3.js +1 -0
  87. package/.next/static/chunks/{1658-1c16e5a05aaa11ee.js → 1658-43a798763bcc82ae.js} +1 -1
  88. package/.next/static/chunks/{7727-2552fac729c5514a.js → 2539-6bce0edb99b4e538.js} +1 -1
  89. package/.next/static/chunks/5787-04cc23df05f9da2e.js +1 -0
  90. package/.next/static/chunks/6039-38b0b8c06d25892e.js +1 -0
  91. package/.next/static/chunks/6646-c5d039d1ad306467.js +1 -0
  92. package/.next/static/chunks/682-6192991ddec396b8.js +1 -0
  93. package/.next/static/chunks/7965-420dbb1f781fdc83.js +1 -0
  94. package/.next/static/chunks/837-f4fbf77c24343b1f.js +1 -0
  95. package/.next/static/chunks/8854-b34262a2493987c4.js +1 -0
  96. package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/9949-92aa4cba630945d3.js → static/chunks/9949-2daeb31bdedf25c7.js} +1 -1
  97. package/.next/static/chunks/app/(main)/admin/users/page-e8263fc89b5d349a.js +1 -0
  98. package/.next/static/chunks/app/(main)/dashboard/page-3cf14179dcdd7ac6.js +1 -0
  99. package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/layout-22d4db17be3f8c25.js → static/chunks/app/(main)/layout-bf1846a6b0c68959.js} +1 -1
  100. 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
  101. package/.next/static/chunks/app/(main)/servers/[name]/console/{page-1287129ad47a4440.js → page-a0050b5b439d954f.js} +1 -1
  102. package/.next/static/chunks/app/(main)/servers/[name]/page-f82acaf60a615953.js +1 -0
  103. package/.next/static/chunks/app/(main)/servers/page-382a14f87768df2c.js +1 -0
  104. package/.next/static/chunks/app/(main)/worlds/page-a194d5d6a77d7e06.js +1 -0
  105. package/.next/{standalone/platform/services/mcctl-console/.next/static/chunks/app/login/page-55283ea041e00fc0.js → static/chunks/app/login/page-b7ec94d60aae14ce.js} +1 -1
  106. package/.next/static/chunks/app/signup/{page-d3f96f0e775636fd.js → page-6f03571bb9914130.js} +1 -1
  107. package/package.json +2 -2
  108. package/.next/standalone/platform/services/mcctl-console/.next/server/chunks/8091.js +0 -1
  109. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/1476-a0570078fdf78fae.js +0 -1
  110. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/3333-7e2d13faa47ed67e.js +0 -1
  111. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/4436-bf86b627021ca7ab.js +0 -1
  112. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/5787-bea4ee84b4bf2dea.js +0 -1
  113. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/7965-e1d52a92f5303aca.js +0 -1
  114. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/8468-8346b1d9ff3f7efa.js +0 -1
  115. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/8854-11e2a182afd76dcd.js +0 -1
  116. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/admin/users/page-3cc240ec265dc135.js +0 -1
  117. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/dashboard/page-fba60ccdbc06c136.js +0 -1
  118. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/[name]/page-1becd4dc3adb9b97.js +0 -1
  119. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/servers/page-bebe3d652d7cf3fb.js +0 -1
  120. package/.next/standalone/platform/services/mcctl-console/.next/static/chunks/app/(main)/worlds/page-e78b9914366748cf.js +0 -1
  121. package/.next/static/chunks/1476-a0570078fdf78fae.js +0 -1
  122. package/.next/static/chunks/3333-7e2d13faa47ed67e.js +0 -1
  123. package/.next/static/chunks/4436-bf86b627021ca7ab.js +0 -1
  124. package/.next/static/chunks/5787-bea4ee84b4bf2dea.js +0 -1
  125. package/.next/static/chunks/7965-e1d52a92f5303aca.js +0 -1
  126. package/.next/static/chunks/8468-8346b1d9ff3f7efa.js +0 -1
  127. package/.next/static/chunks/8854-11e2a182afd76dcd.js +0 -1
  128. package/.next/static/chunks/app/(main)/admin/users/page-3cc240ec265dc135.js +0 -1
  129. package/.next/static/chunks/app/(main)/dashboard/page-fba60ccdbc06c136.js +0 -1
  130. package/.next/static/chunks/app/(main)/servers/[name]/page-1becd4dc3adb9b97.js +0 -1
  131. package/.next/static/chunks/app/(main)/servers/page-bebe3d652d7cf3fb.js +0 -1
  132. package/.next/static/chunks/app/(main)/worlds/page-e78b9914366748cf.js +0 -1
  133. /package/.next/standalone/platform/services/mcctl-console/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_buildManifest.js +0 -0
  134. /package/.next/standalone/platform/services/mcctl-console/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_ssgManifest.js +0 -0
  135. /package/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_buildManifest.js +0 -0
  136. /package/.next/static/{89Bssec70Vx75pcmzcDoG → S1X5jEkA1d_pSlIMuZWrE}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
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 tl}});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),v=r(88812),y=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),W=r(17978),P=r(89573),F=r(96292),M=r(33104),A=r(25333),O=r(52082),D=r(69123),E=r(83855),q=r(44059),N=r(71185),B=r(30165),U=r(97293),L=r(11259),H=r(66615),K=r(89161),G=r(34071),V=r(4405);function J(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)(V.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 Q=r(163),_=r(73660),X=r(90158),$=r(58347),Y=r(95511),ee=r(46725),et=r(26577),er=r(56813),es=r(26892),en=r(84509);function ei(e){var t;let{serverName:r}=e,{data:n,isLoading:i,error:a}=(0,en.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)(X.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)(er.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)(es.c,{status:e.status,size:"small"})]}),secondary:(0,s.jsx)(Y.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:ee.default,href:x,size:"small",endIcon:(0,s.jsx)(et.Z,{}),sx:{textTransform:"none"},children:"View Full History"})})]})}var ea=r(37530),eo=r(84420),el=r(46121),ed=r(84775),ec=r(92666),ex=r(70115),eu=r(70603),eh=r(32366),ep=r(5942),em=r(25523);function ev(e){let{serverName:t}=e,{data:r,isLoading:i}=(0,ec.Js)(t),a=(0,ec.Bx)(),[u,v]=(0,n.useState)([]),[y,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)&&(v(r.customHostnames),j(!1),R(!1))},[r]);let W=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"},P=()=>{let e=f.trim().toLowerCase(),t=W(e);if(t){S(t);return}v(t=>[...t,e]),Z(""),S(""),b(!1),j(!0)},F=e=>{v(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)(em.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)(ex.Z,{direction:"row",flexWrap:"wrap",gap:1,children:r.systemHostnames.map(e=>(0,s.jsx)(A.Z,{icon:(0,s.jsx)(eu.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)(ex.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&&P(),"Escape"===e.key&&O()},error:!!w,helperText:w,autoFocus:!0,sx:{flex:1}}),(0,s.jsx)(l.Z,{size:"small",variant:"contained",onClick:P,children:"Add"}),(0,s.jsx)(d.Z,{size:"small",onClick:O,children:(0,s.jsx)(N.Z,{fontSize:"small"})})]}):(0,s.jsx)(l.Z,{size:"small",startIcon:(0,s.jsx)(eh.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)(ep.Z,{}),onClick:M,disabled:!y||a.isPending,children:a.isPending?"Saving...":"Save Hostnames"})})]})}),(0,s.jsx)(ea.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 ey=r(87716),ej=r(81960),eg=r(62328),eb=r(29793),ef=r(75726),eZ=r(40064),ew=r(38393),eC=r(28058),eS=r(42730);function ek(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)(eZ.Z,{control:(0,s.jsx)(ew.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)(eb.Z,{fullWidth:!0,size:"small",children:[(0,s.jsx)(ef.Z,{children:r.label}),(0,s.jsx)(eg.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)(y.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)(eS.Z,{fontSize:"small"}):(0,s.jsx)(eC.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 eR(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)(ek,{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)(ej.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)(ey.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)(ek,{field:e,value:r[e.key],onChange:i},e.key))})})})]})]})})}var eT=r(12550);function eI(e){let{hasChanges:t,changedCount:r,hasRestartChanges:n,restartFields:i=[],isSaving:a,onSave:d,onDiscard:c}=e;return(0,s.jsx)(eT.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:{xs:2,sm:3},py:2,mx:{xs:-2,sm:-3},mb:{xs:-2,sm:-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)(ed.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)(ep.Z,{}),onClick:d,disabled:a,children:a?"Saving...":"Save Changes (".concat(r,")")})]})]})})}function ez(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)(ed.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)(X.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 eW=r(1217),eP=r(84974),eF=r(23482),eM=r(61244),eA=r(87739);let eO=[{id:"gameplay",icon:eW.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:eP.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:eF.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:B.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:eM.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:eA.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}}]}],eD=["memory","initMemory","maxMemory","useAikarFlags","jvmXxOpts","onlineMode","enableWhitelist","enforceWhitelist","enforceSecureProfile","level","seed","levelType","enableAutopause","enableAutostop","enableRcon","rconPassword","rconPort","tz","uid","gid","stopDuration"];function eE(e){let{serverName:t,isRunning:r}=e,{data:i,isLoading:a}=(0,ec.iC)(t),d=(0,ec.MH)(),u=(0,ec.gx)(),v=(0,ec._I)(),[y,j]=(0,n.useState)({}),[g,S]=(0,n.useState)({}),[k,R]=(0,n.useState)(!1),[T,I]=(0,n.useState)(""),[z,W]=(0,n.useState)(!1),[P,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(y))y[t]!==g[t]&&e.push(t);for(let t of Object.keys(g))y[t]===g[t]||e.includes(t)||e.push(t);return e},[y,g]),A=M.length>0,O=M.filter(e=>eD.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:y});if(S(s.config),j(s.config),e&&r)try{await v.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{W(!1)}},[y,t,r,d,v]),U=(0,n.useCallback)(()=>{E&&r?W(!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)(ev,{serverName:t}),eO.map(e=>(0,s.jsx)(eR,{section:e,values:y,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)(ed.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)(eI,{hasChanges:A,changedCount:M.length,hasRestartChanges:E,restartFields:O,isSaving:d.isPending,onSave:U,onDiscard:N}),(0,s.jsx)(ez,{open:z,changedFields:O,onSaveOnly:()=>B(!1),onSaveAndRestart:()=>B(!0),onCancel:()=>W(!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)(eo.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)(el.Z,{}),children:u.isPending?"Resetting...":"Reset World"})]})]}),(0,s.jsx)(ea.Z,{open:P.open,autoHideDuration:6e3,onClose:()=>F({...P,open:!1}),anchorOrigin:{vertical:"bottom",horizontal:"right"},children:(0,s.jsx)(c.Z,{onClose:()=>F({...P,open:!1}),severity:P.severity,sx:{width:"100%"},children:P.message})})]})}var eq=r(86702),eN=r(47606),eB=r(407),eU=r(56056),eL=r(11597),eH=r(59602);let eK={admin:{label:"Owner",color:"primary",variant:"filled"},manage:{label:"Operator",color:"info",variant:"outlined"},view:{label:"Viewer",color:"default",variant:"outlined"}};function eG(e){let{permission:t,size:r="medium"}=e,n=eK[t];return(0,s.jsx)(A.Z,{label:n.label,color:n.color,variant:n.variant,size:r})}var eV=r(99046),eJ=r(68038),eQ=r(34080),e_=r(39181),eX=r(5632),e$=r(58919),eY=r(20367),e0=r(42936);function e1(e){var t,r;let{open:i,onClose:a,serverId:d}=e,[u,h]=(0,n.useState)(""),[p,v]=(0,n.useState)(null),[y,j]=(0,n.useState)("view"),{data:g,isLoading:S}=(r={enabled:i},(0,eX.a)({queryKey:["users","search",u],queryFn:()=>(0,e0.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,eY.D)({mutationFn:e=>(0,e0.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(""),v(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)(eV.Z,{options:R,getOptionLabel:e=>e.name||e.email,isOptionEqualToValue:(e,t)=>e.id===t.id,value:p,onChange:(e,t)=>v(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)(eq.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)(eb.Z,{children:[(0,s.jsx)(eJ.Z,{sx:{fontWeight:500,mb:1},children:"Permission Level"}),(0,s.jsxs)(eQ.Z,{value:y,onChange:e=>j(e.target.value),children:[(0,s.jsx)(eZ.Z,{value:"view",control:(0,s.jsx)(e_.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)(eZ.Z,{value:"manage",control:(0,s.jsx)(e_.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)(eZ.Z,{value:"admin",control:(0,s.jsx)(e_.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:y},{onSuccess:T})},variant:"contained",disabled:!p||k.isPending,sx:{borderRadius:2},children:k.isPending?"Adding...":"Add User"})]})]})}function e2(e){var t,r;let{serverId:i}=e,{data:a,isLoading:x,error:b}=(0,eX.a)({queryKey:["user-servers",i],queryFn:()=>(0,e0.SC)("/api/user-servers?serverId=".concat(encodeURIComponent(i))),enabled:!!i}),f=function(){let e=(0,e$.NL)();return(0,eY.D)({mutationFn:e=>{let{id:t,permission:r}=e;return(0,e0.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,eY.D)({mutationFn:e=>(0,e0.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)},W=()=>{k(null),T(null)},P=e=>{if(!R||R.permission===e){W();return}f.mutate({id:R.id,permission:e},{onSettled:W})},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)(eN.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)(eq.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)(eG,{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)(eH.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)(v.Z,{anchorEl:S,open:!!S,onClose:W,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},disableScrollLock:!0,children:[(0,s.jsxs)(y.Z,{onClick:()=>P("admin"),disabled:(null==R?void 0:R.permission)==="admin",children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eB.Z,{fontSize:"small"})}),(0,s.jsx)(g.Z,{children:"Change to Owner"})]}),(0,s.jsxs)(y.Z,{onClick:()=>P("manage"),disabled:(null==R?void 0:R.permission)==="manage"||M,children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eU.Z,{fontSize:"small"})}),(0,s.jsx)(g.Z,{children:"Change to Operator"})]}),(0,s.jsxs)(y.Z,{onClick:()=>P("view"),disabled:(null==R?void 0:R.permission)==="view"||M,children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eC.Z,{fontSize:"small"})}),(0,s.jsx)(g.Z,{children:"Change to Viewer"})]}),(0,s.jsx)(D.Z,{}),(0,s.jsxs)(y.Z,{onClick:()=>{R&&Z.mutate(R.id,{onSettled:W})},disabled:M,sx:{color:"error.main"},children:[(0,s.jsx)(j.Z,{children:(0,s.jsx)(eL.Z,{fontSize:"small",sx:{color:"error.main"}})}),(0,s.jsx)(g.Z,{children:"Remove Access"})]})]}),(0,s.jsx)(e1,{open:w,onClose:()=>C(!1),serverId:i})]})}var e3=r(37228),e6=r(97511);function e5(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",wordBreak:"break-all"},children:r}),n&&(0,s.jsx)(e6.q,{text:n,size:16})]})]})}function e4(e){let{serverName:t,hostname:r}=e,{data:n,isLoading:i}=(0,e3.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,gap:1},children:[(0,s.jsx)(m.Z,{variant:"body2",color:"text.secondary",sx:{flexShrink:0},children:"LAN Address"}),r?(0,s.jsx)(o.Z,{sx:{minWidth:0},children:(0,s.jsx)(e6.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)(e5,{label:"External Address",value:d,copyText:c?d:void 0})]})})}var e8=r(42431),e7=r(76777),e9=r(15761);function te(e){let{serverName:t}=e,{data:r,isLoading:i,error:a}=(0,eX.a)({queryKey:["servers",t,"mods"],queryFn:()=>(0,e0.SC)("/api/servers/".concat(encodeURIComponent(t),"/mods")),enabled:!!t}),u=function(){let e=(0,e$.NL)();return(0,eY.D)({mutationFn:e=>{let{serverName:t,slugs:r,source:s}=e;return(0,e0.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"]})}})}(),v=function(){let e=(0,e$.NL)();return(0,eY.D)({mutationFn:e=>{let{serverName:t,slug:r}=e;return(0,e0.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"]})}})}(),[y,j]=(0,n.useState)(!1),[g,w]=(0,n.useState)(""),[S,k]=(0,n.useState)(""),[R,T]=(0,n.useState)(!1),[I,W]=(0,n.useState)({open:!1,message:"",severity:"info"}),{data:P,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,eX.a)({queryKey:["mods","search",e,null==t?void 0:t.limit,null==t?void 0:t.offset],queryFn:()=>(0,e0.SC)("/api/mods/search?".concat(r)),enabled:(null==t?void 0:t.enabled)!==!1&&!!e.trim()})}(S,{limit:10,enabled:y&&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 v.mutateAsync({serverName:t,slug:e}),T(!0),W({open:!0,message:"Removed ".concat(e),severity:"success"})}catch(e){W({open:!0,message:e instanceof Error?e.message:"Failed to remove mod",severity:"error"})}},[v,t]),E=(0,n.useCallback)(async e=>{try{await u.mutateAsync({serverName:t,slugs:[e]}),T(!0),W({open:!0,message:"Added ".concat(e),severity:"success"})}catch(e){W({open:!0,message:e instanceof Error?e.message:"Failed to add mod",severity:"error"})}},[u,t]),q=new Set;if(null==r?void 0:r.mods)for(let e of Object.values(r.mods))for(let t of e)q.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=q.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)(eh.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)(e7.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)(e7.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:y,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)(N.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)(e8.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&&P&&0===P.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&&P&&P.hits.length>0&&(0,s.jsx)(o.Z,{sx:{display:"flex",flexDirection:"column",gap:1.5},children:P.hits.map(e=>{var t;let r=q.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)(eq.Z,{src:e.iconUrl||void 0,variant:"rounded",sx:{width:40,height:40,bgcolor:"action.hover"},children:(0,s.jsx)(e7.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:()=>E(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)(e9.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)(ea.Z,{open:I.open,autoHideDuration:4e3,onClose:()=>W(e=>({...e,open:!1})),anchorOrigin:{vertical:"bottom",horizontal:"center"},children:(0,s.jsx)(c.Z,{onClose:()=>W(e=>({...e,open:!1})),severity:I.severity,variant:"filled",children:I.message})})]})}let tt=["Overview","Activity","Mods","Files","Backups","Access","Options"];function tr(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 ts(e){var t,r,i,a,c;let{server:x,onSendCommand:u}=e,[v,y]=(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),z=(0,E.Z)(),W=(0,q.Z)(z.breakpoints.down("sm")),{logs:P,isConnected:F}=(0,Q.Y)({serverName:x.name}),M=(0,n.useMemo)(()=>P.filter(e=>!e.includes("RCON Listener")&&!e.includes("RCON Client")&&!e.includes("RconClient")),[P]);(0,n.useEffect)(()=>{I.current&&f&&(I.current.scrollTop=I.current.scrollHeight)},[M,f]);let V=async()=>{j.trim()&&u&&(await u(j.trim()),g(""))},X=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 $=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",flexWrap:"wrap",gap:.5,mb:3},children:tt.map(e=>(0,s.jsx)(l.Z,{onClick:()=>y(e),sx:{px:2,py:1,borderRadius:5,fontSize:14,fontWeight:500,textTransform:"none",bgcolor:v===e?"primary.main":"transparent",color:v===e?"#0a0e14":"text.secondary","&:hover":{bgcolor:v===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)(J,{value:"".concat(X.toFixed(2),"%"),unit:"/ 100%",label:"CPU usage",icon:(0,s.jsx)(B.Z,{sx:{fontSize:28}}),progress:X,progressMax:100,color:"#1bd96a"}),(0,s.jsx)(J,{value:"".concat($.toFixed(2),"%"),unit:"/ 100%",label:"Memory usage",icon:(0,s.jsx)(U.Z,{sx:{fontSize:28}}),progress:$,progressMax:100,color:"#1bd96a"}),(0,s.jsx)(J,{value:x.worldSize||"0 B",unit:"/ 10 GB",label:"World size",icon:(0,s.jsx)(L.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:F?"primary.main":"error.main",boxShadow:F?"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:{xs:240,sm: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===M.length?(0,s.jsx)(m.Z,{sx:{color:"text.secondary",textAlign:"center",py:8},children:"Waiting for logs..."}):M.map((e,t)=>{let r=function(e){let t=tr(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:tr(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)(H.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)(K.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(),V())},disabled:!F,InputProps:{startAdornment:(0,s.jsx)(O.Z,{position:"start",children:(0,s.jsx)(G.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"===v&&(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)(tn,{label:"Name",value:x.name}),(0,s.jsx)(tn,{label:"Container",value:x.container}),(0,s.jsx)(tn,{label:"Hostname",value:x.hostname?(0,s.jsx)(e6.h,{hostname:x.hostname,color:"text.primary"}):void 0}),(0,s.jsx)(tn,{label:"Type",value:x.type}),(0,s.jsx)(tn,{label:"Version",value:x.version}),(0,s.jsx)(tn,{label:"Memory",value:x.memory}),(0,s.jsx)(tn,{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)(tn,{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)(e4,{serverName:x.name,hostname:x.hostname})})]}),"Activity"===v&&(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)(ei,{serverName:x.name})]})})}),"Mods"===v&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(te,{serverName:x.name})}),"Files"===v&&(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"===v&&(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"===v&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(e2,{serverId:x.name})}),"Options"===v&&(0,s.jsx)(o.Z,{sx:{mt:3},children:(0,s.jsx)(eE,{serverName:x.name,isRunning:"running"===x.status})}),(0,s.jsxs)(b.Z,{open:R,onClose:()=>T(!1),maxWidth:"xl",fullWidth:!0,fullScreen:W,PaperProps:{sx:{height:W?"100vh":"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),"aria-label":"Close console",children:(0,s.jsx)(N.Z,{})})]}),(0,s.jsx)(Z.Z,{sx:{p:0,display:"flex",flexDirection:"column"},children:(0,s.jsx)(_.K,{serverName:x.name})})]})]})}function tn(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 ti=r(93757);function ta(){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 to(){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 tl(){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,ec.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,ti.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,ec.jM)(),X=(0,ec.Aw)(),$=(0,ec._I)(),Y=(0,ec.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)(W.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)(P.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)(e6.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)(ta,{}),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)(to,{}),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)(v.Z,{anchorEl:H,open:!!H,onClose:()=>K(null),children:(0,s.jsxs)(y.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)(ts,{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),v=h(t),y=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===v.length?(0,s.jsx)(d.Z,{component:"span",sx:{color:i,fontSize:a,display:"inline"},children:"-"}):1===v.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(y)}),o&&(0,s.jsx)(l,{text:j(y)})]}):(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(y)}),(0,s.jsx)(x.Z,{label:"+".concat(v.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:v.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,2539,8347,8738,1658,6727,6645,674,4219,837,1047,2666,5787,3669,2757,1744],function(){return e(e.s=59616)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
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 ea}});var s=t(94655),n=t(35106),a=t(31358),l=t(7281),i=t(30417),o=t(81071),c=t(93017),d=t(69899),x=t(31317),u=t(76492),m=t(32366),p=t(78067),h=t(84840),f=t(97436),g=t(52082),v=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:n,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)},u="running"===c,m="stopped"===c||"exited"===c||"not_created"===c;return(0,s.jsxs)(Z.Z,{role:"article",onClick:()=>{n&&n(r.name)},sx:{cursor:n?"pointer":"default",transition:"all 0.2s",height:{xs:"auto",sm:180},minHeight:{xs:140,sm:180},display:"flex",flexDirection:"column","&:hover":n?{transform:"translateY(-2px)",boxShadow:4}:{}},children:[(0,s.jsxs)(b.Z,{sx:{flex:1,pb:1},children:[(0,s.jsxs)(l.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,s.jsx)(x.Z,{variant:"h6",component:"h3",sx:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1,mr:1},children:r.name}),(0,s.jsx)(k.Z,{label:R(c),size:"small",color:F(c),sx:{fontWeight:500,minWidth:70}})]}),(0,s.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1.5},children:[(0,s.jsx)(E.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,s.jsx)(w.h,{hostname:r.hostname})]}),(0,s.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsx)(T.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,s.jsx)(x.Z,{variant:"body2",color:"text.secondary",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:r.container})]})]}),(0,s.jsxs)(S.Z,{sx:{justifyContent:"flex-end",px:2,py:1.5,borderTop:"1px solid",borderColor:"divider"},children:[m&&a&&(0,s.jsx)(C.Z,{"aria-label":"Start server",color:"success",onClick:e=>d(e,a),disabled:o,size:"small",children:(0,s.jsx)(I.Z,{})}),u&&i&&(0,s.jsx)(C.Z,{"aria-label":"Stop server",color:"error",onClick:e=>d(e,i),disabled:o,size:"small",children:(0,s.jsx)(P.Z,{})}),!m&&!u&&(0,s.jsx)(l.Z,{sx:{height:34}})]})]})}function z(e){let{servers:r,statusMap:t={},onServerClick:a,onStart:o,onStop:c,onCreate:d,loadingServers:u=[]}=e,[p,Z]=(0,n.useState)(""),[b,S]=(0,n.useState)("all"),C=(0,n.useMemo)(()=>r.filter(e=>{if(p&&!e.name.toLowerCase().includes(p.toLowerCase()))return!1;let r=t[e.name],s=(null==r?void 0:r.status)||e.status;return("running"!==b||"running"===s)&&("stopped"!==b||"stopped"===s||"exited"===s||"not_created"===s)}),[r,t,p,b]);return 0===r.length?(0,s.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"400px",gap:2},children:[(0,s.jsx)(x.Z,{variant:"h6",color:"text.secondary",children:"No servers found"}),d&&(0,s.jsx)(i.Z,{variant:"contained",startIcon:(0,s.jsx)(m.Z,{}),onClick:d,children:"Create Server"})]}):(0,s.jsxs)(l.Z,{children:[(0,s.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,s.jsxs)(j.Z,{value:b,exclusive:!0,onChange:(e,r)=>{null!==r&&S(r)},size:"small",sx:{flexShrink:0},children:[(0,s.jsx)(v.Z,{value:"all",children:"All"}),(0,s.jsx)(v.Z,{value:"running",children:"Running"}),(0,s.jsx)(v.Z,{value:"stopped",children:"Stopped"})]}),(0,s.jsx)(f.Z,{size:"small",placeholder:"Search servers...",value:p,onChange:e=>Z(e.target.value),InputProps:{startAdornment:(0,s.jsx)(g.Z,{position:"start",children:(0,s.jsx)(y.Z,{})})},sx:{flexGrow:{xs:1,sm:0},minWidth:{sm:300}}})]}),(0,s.jsxs)(x.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:[C.length," ",1===C.length?"server":"servers"]}),0===C.length?(0,s.jsx)(l.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"200px",gap:2},children:(0,s.jsx)(x.Z,{variant:"h6",color:"text.secondary",children:"No servers found"})}):(0,s.jsx)(h.ZP,{container:!0,spacing:2,children:C.map(e=>(0,s.jsx)(h.ZP,{item:!0,xs:12,sm:6,md:4,children:(0,s.jsx)(W,{server:e,statusOverride:t[e.name],onClick:a,onStart:o,onStop:c,loading:u.includes(e.name)})},e.name))})]})}var M=t(83855),O=t(44059),A=t(99770),L=t(62508),D=t(5682),N=t(76678),G=t(7178),_=t(40064),V=t(45547),q=t(4405),H=t(73383),U=t(82285),$=t(13609),B=t(46207),J=t(43436),Y=t(87716),K=t(71185);let Q=["VANILLA","PAPER","FABRIC","FORGE","NEOFORGE"],X=["","forge","fabric","neoforge","quilt"],ee={name:"",type:"PAPER",version:"1.21.1",memory:"4G",autoStart:!1,sudoPassword:""},er=[{key:"initializing",label:"Initializing"},{key:"creating",label:"Creating"},{key:"configuring",label:"Configuring"},{key:"starting",label:"Starting"}];function et(e){let r,{open:t,onClose:a,onSubmit:d,loading:u=!1,status:m="idle",progress:p=0,message:h=""}=e,g=(0,M.Z)(),y=(0,O.Z)(g.breakpoints.down("sm")),[Z,b]=(0,n.useState)("standard"),[S,k]=(0,n.useState)(ee),[w,I]=(0,n.useState)({}),[P,T]=(0,n.useState)(!1),E=(0,n.useRef)(null),F=(0,n.useRef)(null),R=er.findIndex(e=>e.key===m),W="idle"!==m&&"completed"!==m&&"error"!==m;(0,n.useEffect)(()=>{t||(b("standard"),k(ee),I({}),T(!1))},[t]);let z=e=>e?/^[a-z0-9-]+$/.test(e)?null:"Only lowercase letters, numbers, and hyphens are allowed":"Server name is required",et=e=>e?null:"Modpack slug is required",es=e=>r=>{let t=r.target.value;k(r=>({...r,[e]:t})),"memory"===e&&T(!0),w[e]&&I(r=>({...r,[e]:""}))};return(0,s.jsx)(A.Z,{open:t,onClose:W?void 0:a,maxWidth:"sm",fullWidth:!0,fullScreen:y,children:(0,s.jsxs)("form",{onSubmit:e=>{e.preventDefault(),I({});let r=z(S.name);if(r){I({name:r});return}if("modpack"===Z){let e=et(S.modpack||"");if(e){I({modpack:e});return}}let t={name:S.name,memory:S.memory,autoStart:S.autoStart,sudoPassword:S.sudoPassword};"standard"===Z?(t.type=S.type,t.version=S.version):(t.type="MODRINTH",t.modpack=S.modpack,S.modpackVersion&&(t.modpackVersion=S.modpackVersion),S.modLoader&&(t.modLoader=S.modLoader)),d(t)},children:[(0,s.jsxs)(L.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:["completed"===m?(0,s.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsx)(B.Z,{color:"success"}),"Server Created Successfully"]}):"error"===m?(0,s.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,s.jsx)(J.Z,{color:"error"}),"Creation Failed"]}):"Create New Server",y&&!W&&(0,s.jsx)(C.Z,{onClick:a,"aria-label":"Close dialog",edge:"end",children:(0,s.jsx)(K.Z,{})})]}),(0,s.jsx)(D.Z,{children:W||"completed"===m||"error"===m?(0,s.jsxs)(l.Z,{sx:{py:2},children:[(0,s.jsx)(H.Z,{activeStep:R,alternativeLabel:!0,sx:{mb:3},children:er.map(e=>(0,s.jsx)(U.Z,{children:(0,s.jsx)($.Z,{children:e.label})},e.key))}),W&&(0,s.jsxs)(l.Z,{sx:{mb:3},children:[(0,s.jsxs)(l.Z,{sx:{display:"flex",justifyContent:"space-between",mb:1},children:[(0,s.jsx)(x.Z,{variant:"body2",color:"text.secondary",children:h}),(0,s.jsxs)(x.Z,{variant:"body2",color:"text.secondary",children:[p,"%"]})]}),(0,s.jsx)(q.Z,{variant:"determinate",value:p})]}),"completed"===m&&(0,s.jsx)(x.Z,{color:"success.main",sx:{textAlign:"center"},children:h}),"error"===m&&(0,s.jsx)(x.Z,{color:"error.main",sx:{textAlign:"center"},children:h})]}):(0,s.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:[(0,s.jsx)(l.Z,{ref:F,role:"status","aria-live":"polite",sx:{position:"absolute",left:"-10000px",width:"1px",height:"1px",overflow:"hidden"}}),(0,s.jsx)(f.Z,{label:"Server Name",value:S.name,onChange:es("name"),error:!!w.name,helperText:w.name||"Only lowercase letters, numbers, and hyphens",fullWidth:!0,autoFocus:!0,disabled:W}),(0,s.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2},children:[(0,s.jsx)(x.Z,{variant:"subtitle2",color:"text.secondary",children:"Server Type"}),(0,s.jsxs)(j.Z,{value:Z,exclusive:!0,onChange:(e,r)=>{null!==r&&(b(r),F.current&&(F.current.textContent="".concat("standard"===r?"Standard Server":"Modpack"," category selected")),P||k(e=>({...e,memory:"standard"===r?"4G":"6G"})),setTimeout(()=>{"modpack"===r&&E.current&&E.current.focus()},300))},"aria-label":"Server category",fullWidth:!0,disabled:W,children:[(0,s.jsx)(v.Z,{value:"standard","aria-label":"Standard Server",children:"Standard Server"}),(0,s.jsx)(v.Z,{value:"modpack","aria-label":"Modpack",children:"Modpack"})]}),(0,s.jsx)(Y.Z,{in:"standard"===Z,unmountOnExit:!0,children:(0,s.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2,mt:2},children:[(0,s.jsx)(f.Z,{label:"Server Type",select:!0,value:S.type,onChange:es("type"),fullWidth:!0,disabled:W,children:Q.map(e=>(0,s.jsx)(G.Z,{value:e,children:e},e))}),(0,s.jsx)(f.Z,{label:"Minecraft Version",value:S.version,onChange:es("version"),helperText:"e.g., 1.21.1, 1.20.4, latest",fullWidth:!0,disabled:W})]})}),(0,s.jsx)(Y.Z,{in:"modpack"===Z,unmountOnExit:!0,children:(0,s.jsxs)(l.Z,{sx:{display:"flex",flexDirection:"column",gap:2,mt:2},children:[(0,s.jsx)(o.Z,{severity:"info",children:"Minecraft version is automatically determined by the modpack"}),(0,s.jsx)(f.Z,{label:"Modpack Slug",value:S.modpack||"",onChange:es("modpack"),error:!!w.modpack,helperText:w.modpack||"e.g., cobblemon, adrenaserver (from modrinth.com/modpacks/SLUG)",fullWidth:!0,disabled:W,inputRef:E}),(0,s.jsxs)(f.Z,{label:"Mod Loader",select:!0,value:S.modLoader||"",onChange:es("modLoader"),helperText:"Leave empty to auto-detect from modpack",fullWidth:!0,disabled:W,children:[(0,s.jsx)(G.Z,{value:"",children:"Auto-detect"}),X.filter(e=>e).map(e=>(0,s.jsx)(G.Z,{value:e,children:e},e))]}),(0,s.jsx)(f.Z,{label:"Modpack Version",value:S.modpackVersion||"",onChange:es("modpackVersion"),helperText:"Leave empty for latest",fullWidth:!0,disabled:W})]})})]}),(0,s.jsx)(f.Z,{label:"Memory",value:S.memory,onChange:es("memory"),helperText:"e.g., 4G, 8G, 16G",fullWidth:!0,disabled:W}),(0,s.jsx)(f.Z,{label:"Sudo Password",type:"password",value:S.sudoPassword||"",onChange:es("sudoPassword"),helperText:"Required for mDNS hostname registration (avahi)",fullWidth:!0,disabled:W}),(0,s.jsx)(_.Z,{control:(0,s.jsx)(V.Z,{checked:S.autoStart||!1,onChange:(r="autoStart",e=>{k(t=>({...t,[r]:e.target.checked}))}),disabled:W}),label:"Auto-start after creation"})]})}),(0,s.jsx)(N.Z,{sx:{px:3,pb:2},children:"completed"===m||"error"===m?(0,s.jsx)(i.Z,{onClick:a,variant:"contained",fullWidth:!0,children:"Close"}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i.Z,{onClick:a,disabled:W,children:"Cancel"}),(0,s.jsx)(i.Z,{type:"submit",variant:"contained",disabled:W,startIcon:W?(0,s.jsx)(c.Z,{size:16}):null,children:W?"Creating...":"Create"})]})})]})})}var es=t(92666),en=t(59104);function ea(){var e,r;let t=(0,a.x)(),[h,f]=(0,n.useState)(!1),[g,v]=(0,n.useState)([]),{data:j,isLoading:y,error:Z}=(0,es.x$)(),{statusMap:b}=(0,en.d)(),S=(0,es.jM)(),C=(0,es.Aw)(),k=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{onSuccess:r,onError:t,onProgress:s}=e,[a,l]=(0,n.useState)("idle"),[i,o]=(0,n.useState)(0),[c,d]=(0,n.useState)(""),[x,u]=(0,n.useState)(null),m=(0,n.useRef)(null),p=(0,n.useRef)(""),h=(0,n.useCallback)(()=>{l("idle"),o(0),d(""),u(null),m.current&&(m.current.close(),m.current=null)},[]),f=(0,n.useCallback)((e,r,t)=>{l(e),d(r),o(t),null==s||s(e,r,t)},[s]),g=(0,n.useCallback)(async e=>{if("idle"===a||"completed"===a||"error"===a){u(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"),u(e),d("Server creation failed"),null==t||t(e)}}},[a,f,r,t]);return(0,n.useEffect)(()=>()=>{m.current&&(m.current.close(),m.current=null)},[]),{status:a,progress:i,message:c,error:x,isCreating:"idle"!==a&&"completed"!==a&&"error"!==a,createServer:g,reset:h}}({onSuccess:()=>{f(!1)},onError:e=>{console.error("Failed to create server:",e)}}),w=async e=>{v(r=>[...r,e]);try{await S.mutateAsync(e)}catch(e){console.error("Failed to start server:",e)}finally{v(r=>r.filter(r=>r!==e))}},I=async e=>{v(r=>[...r,e]);try{await C.mutateAsync(e)}catch(e){console.error("Failed to stop server:",e)}finally{v(r=>r.filter(r=>r!==e))}};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(d.Z,{elevation:0,sx:{mb:4,p:3,background:e=>"linear-gradient(135deg, ".concat((0,u.Fq)(e.palette.info.main,.1)," 0%, ").concat((0,u.Fq)(e.palette.primary.main,.1)," 100%)"),borderRadius:2,border:e=>"1px solid ".concat((0,u.Fq)(e.palette.info.main,.2)),display:"flex",flexDirection:{xs:"column",sm:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",sm:"center"},gap:2},children:[(0,s.jsxs)(l.Z,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,s.jsx)(l.Z,{sx:{display:{xs:"none",sm:"flex"},alignItems:"center",justifyContent:"center",width:56,height:56,borderRadius:2,bgcolor:"info.main",color:"info.contrastText"},children:(0,s.jsx)(p.Z,{sx:{fontSize:32}})}),(0,s.jsxs)(l.Z,{children:[(0,s.jsx)(x.Z,{variant:"h4",component:"h1",fontWeight:"bold",sx:{fontSize:{xs:"1.5rem",sm:"2.125rem"}},children:"Servers"}),(0,s.jsx)(x.Z,{variant:"body1",color:"text.secondary",children:"Manage your Minecraft servers"})]})]}),(0,s.jsx)(i.Z,{variant:"contained",startIcon:(0,s.jsx)(m.Z,{}),onClick:()=>f(!0),size:"large",sx:{width:{xs:"100%",sm:"auto"}},children:"Create Server"})]}),Z&&(0,s.jsxs)(o.Z,{severity:"error",sx:{mb:3},children:["Failed to load servers: ",Z.message]}),k.error&&(0,s.jsxs)(o.Z,{severity:"error",sx:{mb:3},children:["Failed to create server: ",k.error]}),S.isError&&(0,s.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,s.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,s.jsx)(l.Z,{sx:{display:"flex",justifyContent:"center",py:8},children:(0,s.jsx)(c.Z,{})}):(0,s.jsx)(z,{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:g}),(0,s.jsx)(et,{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,837,6646,2666,2701,3669,2757,1744],function(){return e(e.s=49726)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
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 H}});var l=n(94655),r=n(35106),t=n(83855),i=n(44059),o=n(7281),a=n(30417),d=n(81071),c=n(93017),x=n(69899),h=n(31317),u=n(99770),m=n(62508),j=n(5682),Z=n(76678),f=n(97436),g=n(76492),p=n(32366),v=n(84974),y=n(84840),b=n(52082),w=n(89923),C=n(10297),S=n(42431),k=n(628),W=n(41565),z=n(25935),D=n(79983),I=n(25333),A=n(95511),F=n(96292),L=n(97812),P=n(21111),E=n(78067),N=n(33104);function R(e){let{world:s,onAssign:n,onRelease:r,onDelete:t,loading:i=!1}=e,a=(e,n)=>{e.stopPropagation(),n(s.name)};return(0,l.jsxs)(k.Z,{role:"article",sx:{transition:"all 0.2s",height:{xs:"auto",sm:200},minHeight:{xs:160,sm:200},display:"flex",flexDirection:"column","&:hover":{transform:"translateY(-2px)",boxShadow:4}},children:[(0,l.jsxs)(W.Z,{sx:{flex:1,pb:1},children:[(0,l.jsxs)(o.Z,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2},children:[(0,l.jsx)(h.Z,{variant:"h6",component:"h3",sx:{fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1,mr:1},children:s.name}),(0,l.jsx)(I.Z,{label:s.isLocked?"Locked":"Available",size:"small",color:s.isLocked?"warning":"success",sx:{fontWeight:500,minWidth:80}})]}),(0,l.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1.5},children:[(0,l.jsx)(E.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,l.jsx)(h.Z,{variant:"body2",color:"text.secondary",children:s.size||"Unknown size"})]}),s.isLocked&&s.lockedBy&&(0,l.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1,mb:1.5},children:[(0,l.jsx)(F.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,l.jsx)(A.Z,{title:"Assigned to ".concat(s.lockedBy),arrow:!0,children:(0,l.jsx)(h.Z,{variant:"body2",color:"text.secondary",sx:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:s.lockedBy})})]}),(0,l.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,l.jsx)(N.Z,{sx:{fontSize:16,color:"text.secondary"}}),(0,l.jsx)(h.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)(z.Z,{sx:{justifyContent:"flex-end",px:2,py:1.5,borderTop:"1px solid",borderColor:"divider"},children:[!s.isLocked&&n&&(0,l.jsx)(A.Z,{title:"Assign to server",arrow:!0,children:(0,l.jsx)(D.Z,{"aria-label":"Assign world",color:"primary",onClick:e=>a(e,n),disabled:i,size:"small",children:(0,l.jsx)(F.Z,{})})}),s.isLocked&&r&&(0,l.jsx)(A.Z,{title:"Release from server",arrow:!0,children:(0,l.jsx)(D.Z,{"aria-label":"Release world",color:"warning",onClick:e=>a(e,r),disabled:i,size:"small",children:(0,l.jsx)(L.Z,{})})}),t&&(0,l.jsx)(A.Z,{title:"Delete world",arrow:!0,children:(0,l.jsx)(D.Z,{"aria-label":"Delete world",color:"error",onClick:e=>a(e,t),disabled:i,size:"small",children:(0,l.jsx)(P.Z,{})})})]})]})}function T(e){let{worlds:s,onAssign:n,onRelease:t,onDelete:i,onCreate:d,loadingWorlds:c=[]}=e,[x,u]=(0,r.useState)(""),[m,j]=(0,r.useState)("all"),Z=(0,r.useMemo)(()=>s.filter(e=>(!x||!!e.name.toLowerCase().includes(x.toLowerCase()))&&("available"!==m||!e.isLocked)&&("locked"!==m||!!e.isLocked)),[s,x,m]);return 0===s.length?(0,l.jsxs)(o.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"400px",gap:2},children:[(0,l.jsx)(h.Z,{variant:"h6",color:"text.secondary",children:"No worlds found"}),d&&(0,l.jsx)(a.Z,{variant:"contained",startIcon:(0,l.jsx)(p.Z,{}),onClick:d,children:"Create World"})]}):(0,l.jsxs)(o.Z,{children:[(0,l.jsxs)(o.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)(C.Z,{value:m,exclusive:!0,onChange:(e,s)=>{null!==s&&j(s)},size:"small",sx:{flexShrink:0},children:[(0,l.jsx)(w.Z,{value:"all",children:"All"}),(0,l.jsx)(w.Z,{value:"available",children:"Available"}),(0,l.jsx)(w.Z,{value:"locked",children:"Locked"})]}),(0,l.jsx)(f.Z,{size:"small",placeholder:"Search worlds...",value:x,onChange:e=>u(e.target.value),InputProps:{startAdornment:(0,l.jsx)(b.Z,{position:"start",children:(0,l.jsx)(S.Z,{})})},sx:{flexGrow:{xs:1,sm:0},minWidth:{sm:300}}})]}),(0,l.jsxs)(h.Z,{variant:"body2",color:"text.secondary",sx:{mb:2},children:[Z.length," ",1===Z.length?"world":"worlds"]}),0===Z.length?(0,l.jsx)(o.Z,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"200px",gap:2},children:(0,l.jsx)(h.Z,{variant:"h6",color:"text.secondary",children:"No worlds found"})}):(0,l.jsx)(y.ZP,{container:!0,spacing:2,children:Z.map(e=>(0,l.jsx)(y.ZP,{item:!0,xs:12,sm:6,md:4,children:(0,l.jsx)(R,{world:e,onAssign:n,onRelease:t,onDelete:i,loading:c.includes(e.name)})},e.name))})]})}let O={name:"",seed:""};function _(e){let{open:s,onClose:n,onSubmit:t,loading:i=!1}=e,[d,x]=(0,r.useState)(O),[h,g]=(0,r.useState)({});(0,r.useEffect)(()=>{s||(x(O),g({}))},[s]);let p=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;x(s=>({...s,[e]:n})),h[e]&&g(s=>({...s,[e]:""}))};return(0,l.jsx)(u.Z,{open:s,onClose:i?void 0:n,maxWidth:"sm",fullWidth:!0,children:(0,l.jsxs)("form",{onSubmit:e=>{e.preventDefault(),g({});let s=p(d.name);if(s){g({name:s});return}t({name:d.name,...d.seed?{seed:d.seed}:{}})},children:[(0,l.jsx)(m.Z,{children:"Create New World"}),(0,l.jsx)(j.Z,{children:(0,l.jsxs)(o.Z,{sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:[(0,l.jsx)(f.Z,{label:"World Name",value:d.name,onChange:v("name"),error:!!h.name,helperText:h.name||"Only lowercase letters, numbers, and hyphens",fullWidth:!0,autoFocus:!0,disabled:i}),(0,l.jsx)(f.Z,{label:"Seed (optional)",value:d.seed||"",onChange:v("seed"),helperText:"Leave empty for a random seed",fullWidth:!0,disabled:i})]})}),(0,l.jsxs)(Z.Z,{sx:{px:3,pb:2},children:[(0,l.jsx)(a.Z,{onClick:n,disabled:i,children:"Cancel"}),(0,l.jsx)(a.Z,{type:"submit",variant:"contained",disabled:i,startIcon:i?(0,l.jsx)(c.Z,{size:16}):null,children:i?"Creating...":"Create"})]})]})})}var q=n(7178),M=n(92666);function B(e){let{open:s,worldName:n,onClose:t,onSubmit:i,loading:x=!1}=e,[g,p]=(0,r.useState)(""),{data:v,isLoading:y}=(0,M.x$)();(0,r.useEffect)(()=>{s||p("")},[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)(u.Z,{open:s,onClose:x?void 0:t,maxWidth:"sm",fullWidth:!0,children:(0,l.jsxs)("form",{onSubmit:e=>{e.preventDefault(),g&&i(n,g)},children:[(0,l.jsxs)(m.Z,{children:["Assign World: ",n]}),(0,l.jsx)(j.Z,{children:(0,l.jsx)(o.Z,{sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:y?(0,l.jsx)(o.Z,{sx:{display:"flex",justifyContent:"center",py:4},children:(0,l.jsx)(c.Z,{})}):0===b.length?(0,l.jsx)(h.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)(d.Z,{severity:"warning",children:"All servers are currently running. It is recommended to assign worlds to stopped servers."}),(0,l.jsxs)(f.Z,{label:"Select Server",select:!0,value:g,onChange:e=>p(e.target.value),fullWidth:!0,disabled:x,helperText:"Select a server to assign this world to",children:[w.length>0&&(0,l.jsx)(q.Z,{disabled:!0,children:(0,l.jsx)(h.Z,{variant:"caption",color:"text.secondary",children:"Available Servers"})}),w.map(e=>(0,l.jsx)(q.Z,{value:e.name,children:e.name},e.name)),C.length>0&&(0,l.jsx)(q.Z,{disabled:!0,children:(0,l.jsx)(h.Z,{variant:"caption",color:"text.secondary",children:"Running Servers (not recommended)"})}),C.map(e=>(0,l.jsx)(q.Z,{value:e.name,children:e.name},e.name))]})]})})}),(0,l.jsxs)(Z.Z,{sx:{px:3,pb:2},children:[(0,l.jsx)(a.Z,{onClick:t,disabled:x,children:"Cancel"}),(0,l.jsx)(a.Z,{type:"submit",variant:"contained",disabled:x||!g||y,startIcon:x?(0,l.jsx)(c.Z,{size:16}):null,children:x?"Assigning...":"Assign"})]})]})})}function H(){var e,s,n,y;let b=(0,t.Z)(),w=(0,i.Z)(b.breakpoints.down("sm")),[C,S]=(0,r.useState)(!1),[k,W]=(0,r.useState)(null),[z,D]=(0,r.useState)(null),[I,A]=(0,r.useState)(""),[F,L]=(0,r.useState)([]),{data:P,isLoading:E,error:N}=(0,M.Sr)(),R=(0,M.hy)(),O=(0,M.nq)(),q=(0,M.g2)(),H=(0,M.Fv)(),$=async e=>{L(s=>[...s,e]);try{await q.mutateAsync({worldName:e})}catch(e){console.error("Failed to release world:",e)}finally{L(s=>s.filter(s=>s!==e))}};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(x.Z,{elevation:0,sx:{mb:4,p:3,background:e=>"linear-gradient(135deg, ".concat((0,g.Fq)(e.palette.success.main,.1)," 0%, ").concat((0,g.Fq)(e.palette.primary.main,.1)," 100%)"),borderRadius:2,border:e=>"1px solid ".concat((0,g.Fq)(e.palette.success.main,.2)),display:"flex",flexDirection:{xs:"column",sm:"row"},justifyContent:"space-between",alignItems:{xs:"flex-start",sm:"center"},gap:2},children:[(0,l.jsxs)(o.Z,{sx:{display:"flex",alignItems:"center",gap:2},children:[(0,l.jsx)(o.Z,{sx:{display:{xs:"none",sm:"flex"},alignItems:"center",justifyContent:"center",width:56,height:56,borderRadius:2,bgcolor:"success.main",color:"success.contrastText"},children:(0,l.jsx)(v.Z,{sx:{fontSize:32}})}),(0,l.jsxs)(o.Z,{children:[(0,l.jsx)(h.Z,{variant:"h4",component:"h1",fontWeight:"bold",sx:{fontSize:{xs:"1.5rem",sm:"2.125rem"}},children:"Worlds"}),(0,l.jsx)(h.Z,{variant:"body1",color:"text.secondary",children:"Manage your Minecraft worlds"})]})]}),(0,l.jsx)(a.Z,{variant:"contained",startIcon:(0,l.jsx)(p.Z,{}),onClick:()=>S(!0),size:"large",sx:{width:{xs:"100%",sm:"auto"}},children:"Create World"})]}),N&&(0,l.jsxs)(d.Z,{severity:"error",sx:{mb:3},children:["Failed to load worlds: ",N.message]}),R.isError&&(0,l.jsxs)(d.Z,{severity:"error",sx:{mb:3},children:["Failed to create world: ",null===(e=R.error)||void 0===e?void 0:e.message]}),O.isError&&(0,l.jsxs)(d.Z,{severity:"error",sx:{mb:3},children:["Failed to assign world: ",null===(s=O.error)||void 0===s?void 0:s.message]}),q.isError&&(0,l.jsxs)(d.Z,{severity:"error",sx:{mb:3},children:["Failed to release world: ",null===(n=q.error)||void 0===n?void 0:n.message]}),H.isError&&(0,l.jsxs)(d.Z,{severity:"error",sx:{mb:3},children:["Failed to delete world: ",null===(y=H.error)||void 0===y?void 0:y.message]}),E?(0,l.jsx)(o.Z,{sx:{display:"flex",justifyContent:"center",py:8},children:(0,l.jsx)(c.Z,{})}):(0,l.jsx)(T,{worlds:(null==P?void 0:P.worlds)||[],onAssign:e=>W(e),onRelease:$,onDelete:e=>{D(e),A("")},onCreate:()=>S(!0),loadingWorlds:F}),(0,l.jsx)(_,{open:C,onClose:()=>{S(!1),R.reset()},onSubmit:e=>{R.mutate(e,{onSuccess:()=>{S(!1)}})},loading:R.isPending}),(0,l.jsx)(B,{open:!!k,worldName:k||"",onClose:()=>W(null),onSubmit:(e,s)=>{L(s=>[...s,e]),O.mutate({worldName:e,serverName:s},{onSuccess:()=>{W(null)},onSettled:()=>{L(s=>s.filter(s=>s!==e))}})},loading:O.isPending}),(0,l.jsxs)(u.Z,{open:!!z,onClose:()=>{D(null),A("")},maxWidth:"sm",fullWidth:!0,fullScreen:w,children:[(0,l.jsx)(m.Z,{children:"Delete World"}),(0,l.jsxs)(j.Z,{children:[(0,l.jsxs)(h.Z,{sx:{mb:2},children:["This action cannot be undone. Type ",(0,l.jsx)("strong",{children:z})," to confirm deletion."]}),(0,l.jsx)(f.Z,{label:"World name",value:I,onChange:e=>A(e.target.value),fullWidth:!0,autoFocus:!0})]}),(0,l.jsxs)(Z.Z,{sx:{px:3,pb:2},children:[(0,l.jsx)(a.Z,{onClick:()=>{D(null),A("")},children:"Cancel"}),(0,l.jsx)(a.Z,{variant:"contained",color:"error",onClick:()=>{z&&I===z&&(L(e=>[...e,z]),H.mutate({name:z,force:!0},{onSuccess:()=>{D(null),A("")},onSettled:()=>{L(e=>e.filter(e=>e!==z))}}))},disabled:I!==z||H.isPending,startIcon:H.isPending?(0,l.jsx)(c.Z,{size:16}):null,children:H.isPending?"Deleting...":"Delete"})]})]})]})}}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,540,4416,2538,880,5511,6909,6039,2666,3669,2757,1744],function(){return e(e.s=6199)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2626],{40527:function(e,r,t){Promise.resolve().then(t.bind(t,10672))},628:function(e,r,t){"use strict";t.d(r,{Z:function(){return g}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(69899),c=t(11379),x=t(9049);function h(e){return(0,x.ZP)("MuiCard",e)}(0,c.Z)("MuiCard",["root"]);var m=t(94655);let p=["className","raised"],f=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},h,r)},Z=(0,o.ZP)(u.Z,{name:"MuiCard",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({overflow:"hidden"}));var g=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCard"}),{className:i,raised:l=!1}=t,o=(0,s.Z)(t,p),u=(0,n.Z)({},t,{raised:l}),c=f(u);return(0,m.jsx)(Z,(0,n.Z)({className:(0,a.Z)(c.root,i),elevation:l?8:void 0,ref:r,ownerState:u},o))})},41565:function(e,r,t){"use strict";t.d(r,{Z:function(){return Z}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(11379),c=t(9049);function x(e){return(0,c.ZP)("MuiCardContent",e)}(0,u.Z)("MuiCardContent",["root"]);var h=t(94655);let m=["className","component"],p=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},x,r)},f=(0,o.ZP)("div",{name:"MuiCardContent",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({padding:16,"&:last-child":{paddingBottom:24}}));var Z=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCardContent"}),{className:i,component:l="div"}=t,o=(0,s.Z)(t,m),u=(0,n.Z)({},t,{component:l}),c=p(u);return(0,h.jsx)(f,(0,n.Z)({as:l,className:(0,a.Z)(c.root,i),ownerState:u,ref:r},o))})},10672:function(e,r,t){"use strict";t.r(r),t.d(r,{default:function(){return h}});var n=t(94655),s=t(74228),i=t(67337),a=t(7281),l=t(628),o=t(41565),d=t(31317),u=t(41261),c=t(85480),x=t(46725);function h(){let e=(0,s.useRouter)();return(0,n.jsx)(i.Z,{maxWidth:"sm",children:(0,n.jsx)(a.Z,{sx:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",py:4},children:(0,n.jsx)(l.Z,{sx:{width:"100%",maxWidth:500},children:(0,n.jsxs)(o.Z,{sx:{p:4},children:[(0,n.jsx)(d.Z,{variant:"h4",component:"h1",gutterBottom:!0,sx:{fontWeight:600,textAlign:"center",mb:3},children:"Welcome Back"}),(0,n.jsx)(d.Z,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",mb:4},children:"Sign in to manage your Minecraft servers"}),(0,n.jsx)(c.U0,{onSuccess:()=>{e.push("/dashboard")}}),(0,n.jsx)(a.Z,{sx:{mt:3,textAlign:"center"},children:(0,n.jsxs)(d.Z,{variant:"body2",color:"text.secondary",children:["Don't have an account?"," ",(0,n.jsx)(u.Z,{component:x.default,href:"/signup",underline:"hover",children:"Sign up"})]})})]})})})})}},85480:function(e,r,t){"use strict";t.d(r,{U0:function(){return m},WS:function(){return p},Ie:function(){return q}});var n=t(94655),s=t(35106),i=t(7281),a=t(81071),l=t(97436),o=t(52082),d=t(79983),u=t(30417),c=t(36848),x=t(554),h=t(6986);function m(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(!1),[j,v]=(0,s.useState)({}),[y,b]=(0,s.useState)(null),[C,w]=(0,s.useState)(!1),S=()=>{let e={};return t?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)||(e.email="Invalid email address"):e.email="Email is required",p||(e.password="Password is required"),v(e),0===Object.keys(e).length},P=async e=>{if(e.preventDefault(),b(null),S()){w(!0);try{let e=await h.cg.email({email:t,password:p});if(e.error){b(e.error.message||"Invalid credentials"),w(!1);return}r&&r()}catch(e){b("An unexpected error occurred. Please try again."),w(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:P,sx:{display:"flex",flexDirection:"column",gap:2},children:[y&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>b(null),children:y}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:t,onChange:e=>m(e.target.value),error:!!j.email,helperText:j.email,disabled:C,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:Z?"text":"password",value:p,onChange:e=>f(e.target.value),error:!!j.password,helperText:j.password,disabled:C,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{g(!Z)},edge:"end",children:Z?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:C,fullWidth:!0,size:"large",children:C?"Signing in...":"Sign In"})]})}function p(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(""),[j,v]=(0,s.useState)(""),[y,b]=(0,s.useState)(!1),[C,w]=(0,s.useState)(!1),[S,P]=(0,s.useState)({}),[k,W]=(0,s.useState)(null),[q,I]=(0,s.useState)(!1),R=()=>{let e={};return t||(e.name="Name is required"),p?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(p)||(e.email="Invalid email address"):e.email="Email is required",Z?Z.length<8&&(e.password="Password must be at least 8 characters"):e.password="Password is required",j?Z!==j&&(e.confirmPassword="Passwords do not match"):e.confirmPassword="Please confirm your password",P(e),0===Object.keys(e).length},U=async e=>{if(e.preventDefault(),W(null),R()){I(!0);try{let e=await h.y1.email({email:p,password:Z,name:t});if(e.error){W(e.error.message||"Registration failed"),I(!1);return}r&&r()}catch(e){W("An unexpected error occurred. Please try again."),I(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:U,sx:{display:"flex",flexDirection:"column",gap:2},children:[k&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>W(null),children:k}),(0,n.jsx)(l.Z,{label:"Name",type:"text",value:t,onChange:e=>m(e.target.value),error:!!S.name,helperText:S.name,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:p,onChange:e=>f(e.target.value),error:!!S.email,helperText:S.email,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:y?"text":"password",value:Z,onChange:e=>g(e.target.value),error:!!S.password,helperText:S.password,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{b(!y)},edge:"end",children:y?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(l.Z,{label:"Confirm Password",type:C?"text":"password",value:j,onChange:e=>v(e.target.value),error:!!S.confirmPassword,helperText:S.confirmPassword,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{w(!C)},edge:"end",children:C?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:q,fullWidth:!0,size:"large",children:q?"Creating account...":"Sign Up"})]})}var f=t(74228),Z=t(93017),g=t(86702),j=t(88812),v=t(31317),y=t(25333),b=t(69123),C=t(7178),w=t(17820),S=t(73424),P=t(25169),k=t(41094),W=t(78319);function q(){let e=(0,f.useRouter)(),{data:r,isPending:t}=(0,h.kP)(),[a,l]=(0,s.useState)(null),o=()=>{l(null)},c=async()=>{o(),await (0,h.w7)(),e.push("/login")};if(t)return(0,n.jsx)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.jsx)(Z.Z,{size:24})});if(!(null==r?void 0:r.user))return(0,n.jsx)(u.Z,{variant:"contained",color:"primary",onClick:()=>{e.push("/login")},children:"Sign In"});let{user:x}=r,m=((e,r)=>{if(e){let r=e.split(" ");return r.length>=2?"".concat(r[0][0]).concat(r[1][0]).toUpperCase():e.substring(0,2).toUpperCase()}return r?r[0].toUpperCase():"?"})(x.name,x.email);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(d.Z,{onClick:e=>{l(e.currentTarget)},"aria-label":"user menu",children:(0,n.jsx)(g.Z,{sx:{bgcolor:"primary.main"},children:m})}),(0,n.jsxs)(j.Z,{anchorEl:a,open:!!a,onClose:o,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},sx:{mt:1},children:[(0,n.jsxs)(i.Z,{sx:{px:2,py:1.5,minWidth:200},children:[(0,n.jsx)(v.Z,{variant:"subtitle1",fontWeight:"600",children:x.name||"User"}),(0,n.jsx)(v.Z,{variant:"body2",color:"text.secondary",children:x.email}),"admin"===x.role&&(0,n.jsx)(y.Z,{label:"Admin",size:"small",color:"primary",sx:{mt:1}})]}),(0,n.jsx)(b.Z,{}),"admin"===x.role&&(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/admin/users")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(P.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Users"})]}),(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/settings")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(k.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Settings"})]}),(0,n.jsxs)(C.Z,{onClick:c,children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(W.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Logout"})]})]})]})}},6986:function(e,r,t){"use strict";t.d(r,{Cp:function(){return x},Nq:function(){return c},cg:function(){return l},kP:function(){return u},w7:function(){return o},y1:function(){return d},zB:function(){return h}});var n=t(77054),s=t(61648),i=t(35016);let a=(0,n.X)({baseURL:i.env.NEXT_PUBLIC_BETTER_AUTH_URL||"",plugins:[(0,s.zB)()]}),{signIn:l,signOut:o,signUp:d,useSession:u,updateUser:c,changePassword:x}=a,h=a.admin}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,2542,55,7727,9949,3669,2757,1744],function(){return e(e.s=40527)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2626],{40527:function(e,r,t){Promise.resolve().then(t.bind(t,10672))},628:function(e,r,t){"use strict";t.d(r,{Z:function(){return g}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(69899),c=t(11379),x=t(9049);function h(e){return(0,x.ZP)("MuiCard",e)}(0,c.Z)("MuiCard",["root"]);var m=t(94655);let p=["className","raised"],f=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},h,r)},Z=(0,o.ZP)(u.Z,{name:"MuiCard",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({overflow:"hidden"}));var g=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCard"}),{className:i,raised:l=!1}=t,o=(0,s.Z)(t,p),u=(0,n.Z)({},t,{raised:l}),c=f(u);return(0,m.jsx)(Z,(0,n.Z)({className:(0,a.Z)(c.root,i),elevation:l?8:void 0,ref:r,ownerState:u},o))})},41565:function(e,r,t){"use strict";t.d(r,{Z:function(){return Z}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(11379),c=t(9049);function x(e){return(0,c.ZP)("MuiCardContent",e)}(0,u.Z)("MuiCardContent",["root"]);var h=t(94655);let m=["className","component"],p=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},x,r)},f=(0,o.ZP)("div",{name:"MuiCardContent",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({padding:16,"&:last-child":{paddingBottom:24}}));var Z=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCardContent"}),{className:i,component:l="div"}=t,o=(0,s.Z)(t,m),u=(0,n.Z)({},t,{component:l}),c=p(u);return(0,h.jsx)(f,(0,n.Z)({as:l,className:(0,a.Z)(c.root,i),ownerState:u,ref:r},o))})},10672:function(e,r,t){"use strict";t.r(r),t.d(r,{default:function(){return h}});var n=t(94655),s=t(74228),i=t(67337),a=t(7281),l=t(628),o=t(41565),d=t(31317),u=t(41261),c=t(85480),x=t(46725);function h(){let e=(0,s.useRouter)();return(0,n.jsx)(i.Z,{maxWidth:"sm",children:(0,n.jsx)(a.Z,{sx:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",py:4},children:(0,n.jsx)(l.Z,{sx:{width:"100%",maxWidth:500},children:(0,n.jsxs)(o.Z,{sx:{p:4},children:[(0,n.jsx)(d.Z,{variant:"h4",component:"h1",gutterBottom:!0,sx:{fontWeight:600,textAlign:"center",mb:3},children:"Welcome Back"}),(0,n.jsx)(d.Z,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",mb:4},children:"Sign in to manage your Minecraft servers"}),(0,n.jsx)(c.U0,{onSuccess:()=>{e.push("/dashboard")}}),(0,n.jsx)(a.Z,{sx:{mt:3,textAlign:"center"},children:(0,n.jsxs)(d.Z,{variant:"body2",color:"text.secondary",children:["Don't have an account?"," ",(0,n.jsx)(u.Z,{component:x.default,href:"/signup",underline:"hover",children:"Sign up"})]})})]})})})})}},85480:function(e,r,t){"use strict";t.d(r,{U0:function(){return m},WS:function(){return p},Ie:function(){return q}});var n=t(94655),s=t(35106),i=t(7281),a=t(81071),l=t(97436),o=t(52082),d=t(79983),u=t(30417),c=t(36848),x=t(554),h=t(6986);function m(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(!1),[j,v]=(0,s.useState)({}),[y,b]=(0,s.useState)(null),[C,w]=(0,s.useState)(!1),S=()=>{let e={};return t?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)||(e.email="Invalid email address"):e.email="Email is required",p||(e.password="Password is required"),v(e),0===Object.keys(e).length},P=async e=>{if(e.preventDefault(),b(null),S()){w(!0);try{let e=await h.cg.email({email:t,password:p});if(e.error){b(e.error.message||"Invalid credentials"),w(!1);return}r&&r()}catch(e){b("An unexpected error occurred. Please try again."),w(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:P,sx:{display:"flex",flexDirection:"column",gap:2},children:[y&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>b(null),children:y}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:t,onChange:e=>m(e.target.value),error:!!j.email,helperText:j.email,disabled:C,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:Z?"text":"password",value:p,onChange:e=>f(e.target.value),error:!!j.password,helperText:j.password,disabled:C,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{g(!Z)},edge:"end",children:Z?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:C,fullWidth:!0,size:"large",children:C?"Signing in...":"Sign In"})]})}function p(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(""),[j,v]=(0,s.useState)(""),[y,b]=(0,s.useState)(!1),[C,w]=(0,s.useState)(!1),[S,P]=(0,s.useState)({}),[k,W]=(0,s.useState)(null),[q,I]=(0,s.useState)(!1),R=()=>{let e={};return t||(e.name="Name is required"),p?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(p)||(e.email="Invalid email address"):e.email="Email is required",Z?Z.length<8&&(e.password="Password must be at least 8 characters"):e.password="Password is required",j?Z!==j&&(e.confirmPassword="Passwords do not match"):e.confirmPassword="Please confirm your password",P(e),0===Object.keys(e).length},U=async e=>{if(e.preventDefault(),W(null),R()){I(!0);try{let e=await h.y1.email({email:p,password:Z,name:t});if(e.error){W(e.error.message||"Registration failed"),I(!1);return}r&&r()}catch(e){W("An unexpected error occurred. Please try again."),I(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:U,sx:{display:"flex",flexDirection:"column",gap:2},children:[k&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>W(null),children:k}),(0,n.jsx)(l.Z,{label:"Name",type:"text",value:t,onChange:e=>m(e.target.value),error:!!S.name,helperText:S.name,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:p,onChange:e=>f(e.target.value),error:!!S.email,helperText:S.email,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:y?"text":"password",value:Z,onChange:e=>g(e.target.value),error:!!S.password,helperText:S.password,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{b(!y)},edge:"end",children:y?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(l.Z,{label:"Confirm Password",type:C?"text":"password",value:j,onChange:e=>v(e.target.value),error:!!S.confirmPassword,helperText:S.confirmPassword,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{w(!C)},edge:"end",children:C?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:q,fullWidth:!0,size:"large",children:q?"Creating account...":"Sign Up"})]})}var f=t(74228),Z=t(93017),g=t(86702),j=t(88812),v=t(31317),y=t(25333),b=t(69123),C=t(7178),w=t(17820),S=t(73424),P=t(25169),k=t(41094),W=t(78319);function q(){let e=(0,f.useRouter)(),{data:r,isPending:t}=(0,h.kP)(),[a,l]=(0,s.useState)(null),o=()=>{l(null)},c=async()=>{o(),await (0,h.w7)(),e.push("/login")};if(t)return(0,n.jsx)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.jsx)(Z.Z,{size:24})});if(!(null==r?void 0:r.user))return(0,n.jsx)(u.Z,{variant:"contained",color:"primary",onClick:()=>{e.push("/login")},children:"Sign In"});let{user:x}=r,m=((e,r)=>{if(e){let r=e.split(" ");return r.length>=2?"".concat(r[0][0]).concat(r[1][0]).toUpperCase():e.substring(0,2).toUpperCase()}return r?r[0].toUpperCase():"?"})(x.name,x.email);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(d.Z,{onClick:e=>{l(e.currentTarget)},"aria-label":"user menu",children:(0,n.jsx)(g.Z,{sx:{bgcolor:"primary.main"},children:m})}),(0,n.jsxs)(j.Z,{anchorEl:a,open:!!a,onClose:o,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},sx:{mt:1},children:[(0,n.jsxs)(i.Z,{sx:{px:2,py:1.5,minWidth:200},children:[(0,n.jsx)(v.Z,{variant:"subtitle1",fontWeight:"600",children:x.name||"User"}),(0,n.jsx)(v.Z,{variant:"body2",color:"text.secondary",children:x.email}),"admin"===x.role&&(0,n.jsx)(y.Z,{label:"Admin",size:"small",color:"primary",sx:{mt:1}})]}),(0,n.jsx)(b.Z,{}),"admin"===x.role&&(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/admin/users")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(P.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Users"})]}),(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/settings")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(k.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Settings"})]}),(0,n.jsxs)(C.Z,{onClick:c,children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(W.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Logout"})]})]})]})}},6986:function(e,r,t){"use strict";t.d(r,{Cp:function(){return x},Nq:function(){return c},cg:function(){return l},kP:function(){return u},w7:function(){return o},y1:function(){return d},zB:function(){return h}});var n=t(77054),s=t(61648),i=t(35016);let a=(0,n.X)({baseURL:i.env.NEXT_PUBLIC_BETTER_AUTH_URL||"",plugins:[(0,s.zB)()]}),{signIn:l,signOut:o,signUp:d,useSession:u,updateUser:c,changePassword:x}=a,h=a.admin}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,2542,55,2539,9949,3669,2757,1744],function(){return e(e.s=40527)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4966],{24100:function(e,r,t){Promise.resolve().then(t.bind(t,85795))},628:function(e,r,t){"use strict";t.d(r,{Z:function(){return g}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(69899),c=t(11379),x=t(9049);function h(e){return(0,x.ZP)("MuiCard",e)}(0,c.Z)("MuiCard",["root"]);var m=t(94655);let p=["className","raised"],f=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},h,r)},Z=(0,o.ZP)(u.Z,{name:"MuiCard",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({overflow:"hidden"}));var g=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCard"}),{className:i,raised:l=!1}=t,o=(0,s.Z)(t,p),u=(0,n.Z)({},t,{raised:l}),c=f(u);return(0,m.jsx)(Z,(0,n.Z)({className:(0,a.Z)(c.root,i),elevation:l?8:void 0,ref:r,ownerState:u},o))})},41565:function(e,r,t){"use strict";t.d(r,{Z:function(){return Z}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(11379),c=t(9049);function x(e){return(0,c.ZP)("MuiCardContent",e)}(0,u.Z)("MuiCardContent",["root"]);var h=t(94655);let m=["className","component"],p=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},x,r)},f=(0,o.ZP)("div",{name:"MuiCardContent",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({padding:16,"&:last-child":{paddingBottom:24}}));var Z=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCardContent"}),{className:i,component:l="div"}=t,o=(0,s.Z)(t,m),u=(0,n.Z)({},t,{component:l}),c=p(u);return(0,h.jsx)(f,(0,n.Z)({as:l,className:(0,a.Z)(c.root,i),ownerState:u,ref:r},o))})},85795:function(e,r,t){"use strict";t.r(r),t.d(r,{default:function(){return h}});var n=t(94655),s=t(74228),i=t(67337),a=t(7281),l=t(628),o=t(41565),d=t(31317),u=t(41261),c=t(85480),x=t(46725);function h(){let e=(0,s.useRouter)();return(0,n.jsx)(i.Z,{maxWidth:"sm",children:(0,n.jsx)(a.Z,{sx:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",py:4},children:(0,n.jsx)(l.Z,{sx:{width:"100%",maxWidth:500},children:(0,n.jsxs)(o.Z,{sx:{p:4},children:[(0,n.jsx)(d.Z,{variant:"h4",component:"h1",gutterBottom:!0,sx:{fontWeight:600,textAlign:"center",mb:3},children:"Create Account"}),(0,n.jsx)(d.Z,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",mb:4},children:"Sign up to start managing Minecraft servers"}),(0,n.jsx)(c.WS,{onSuccess:()=>{e.push("/dashboard")}}),(0,n.jsx)(a.Z,{sx:{mt:3,textAlign:"center"},children:(0,n.jsxs)(d.Z,{variant:"body2",color:"text.secondary",children:["Already have an account?"," ",(0,n.jsx)(u.Z,{component:x.default,href:"/login",underline:"hover",children:"Sign in"})]})})]})})})})}},85480:function(e,r,t){"use strict";t.d(r,{U0:function(){return m},WS:function(){return p},Ie:function(){return q}});var n=t(94655),s=t(35106),i=t(7281),a=t(81071),l=t(97436),o=t(52082),d=t(79983),u=t(30417),c=t(36848),x=t(554),h=t(6986);function m(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(!1),[j,v]=(0,s.useState)({}),[y,b]=(0,s.useState)(null),[C,w]=(0,s.useState)(!1),S=()=>{let e={};return t?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)||(e.email="Invalid email address"):e.email="Email is required",p||(e.password="Password is required"),v(e),0===Object.keys(e).length},P=async e=>{if(e.preventDefault(),b(null),S()){w(!0);try{let e=await h.cg.email({email:t,password:p});if(e.error){b(e.error.message||"Invalid credentials"),w(!1);return}r&&r()}catch(e){b("An unexpected error occurred. Please try again."),w(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:P,sx:{display:"flex",flexDirection:"column",gap:2},children:[y&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>b(null),children:y}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:t,onChange:e=>m(e.target.value),error:!!j.email,helperText:j.email,disabled:C,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:Z?"text":"password",value:p,onChange:e=>f(e.target.value),error:!!j.password,helperText:j.password,disabled:C,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{g(!Z)},edge:"end",children:Z?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:C,fullWidth:!0,size:"large",children:C?"Signing in...":"Sign In"})]})}function p(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(""),[j,v]=(0,s.useState)(""),[y,b]=(0,s.useState)(!1),[C,w]=(0,s.useState)(!1),[S,P]=(0,s.useState)({}),[k,W]=(0,s.useState)(null),[q,A]=(0,s.useState)(!1),I=()=>{let e={};return t||(e.name="Name is required"),p?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(p)||(e.email="Invalid email address"):e.email="Email is required",Z?Z.length<8&&(e.password="Password must be at least 8 characters"):e.password="Password is required",j?Z!==j&&(e.confirmPassword="Passwords do not match"):e.confirmPassword="Please confirm your password",P(e),0===Object.keys(e).length},R=async e=>{if(e.preventDefault(),W(null),I()){A(!0);try{let e=await h.y1.email({email:p,password:Z,name:t});if(e.error){W(e.error.message||"Registration failed"),A(!1);return}r&&r()}catch(e){W("An unexpected error occurred. Please try again."),A(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:R,sx:{display:"flex",flexDirection:"column",gap:2},children:[k&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>W(null),children:k}),(0,n.jsx)(l.Z,{label:"Name",type:"text",value:t,onChange:e=>m(e.target.value),error:!!S.name,helperText:S.name,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:p,onChange:e=>f(e.target.value),error:!!S.email,helperText:S.email,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:y?"text":"password",value:Z,onChange:e=>g(e.target.value),error:!!S.password,helperText:S.password,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{b(!y)},edge:"end",children:y?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(l.Z,{label:"Confirm Password",type:C?"text":"password",value:j,onChange:e=>v(e.target.value),error:!!S.confirmPassword,helperText:S.confirmPassword,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{w(!C)},edge:"end",children:C?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:q,fullWidth:!0,size:"large",children:q?"Creating account...":"Sign Up"})]})}var f=t(74228),Z=t(93017),g=t(86702),j=t(88812),v=t(31317),y=t(25333),b=t(69123),C=t(7178),w=t(17820),S=t(73424),P=t(25169),k=t(41094),W=t(78319);function q(){let e=(0,f.useRouter)(),{data:r,isPending:t}=(0,h.kP)(),[a,l]=(0,s.useState)(null),o=()=>{l(null)},c=async()=>{o(),await (0,h.w7)(),e.push("/login")};if(t)return(0,n.jsx)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.jsx)(Z.Z,{size:24})});if(!(null==r?void 0:r.user))return(0,n.jsx)(u.Z,{variant:"contained",color:"primary",onClick:()=>{e.push("/login")},children:"Sign In"});let{user:x}=r,m=((e,r)=>{if(e){let r=e.split(" ");return r.length>=2?"".concat(r[0][0]).concat(r[1][0]).toUpperCase():e.substring(0,2).toUpperCase()}return r?r[0].toUpperCase():"?"})(x.name,x.email);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(d.Z,{onClick:e=>{l(e.currentTarget)},"aria-label":"user menu",children:(0,n.jsx)(g.Z,{sx:{bgcolor:"primary.main"},children:m})}),(0,n.jsxs)(j.Z,{anchorEl:a,open:!!a,onClose:o,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},sx:{mt:1},children:[(0,n.jsxs)(i.Z,{sx:{px:2,py:1.5,minWidth:200},children:[(0,n.jsx)(v.Z,{variant:"subtitle1",fontWeight:"600",children:x.name||"User"}),(0,n.jsx)(v.Z,{variant:"body2",color:"text.secondary",children:x.email}),"admin"===x.role&&(0,n.jsx)(y.Z,{label:"Admin",size:"small",color:"primary",sx:{mt:1}})]}),(0,n.jsx)(b.Z,{}),"admin"===x.role&&(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/admin/users")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(P.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Users"})]}),(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/settings")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(k.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Settings"})]}),(0,n.jsxs)(C.Z,{onClick:c,children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(W.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Logout"})]})]})]})}},6986:function(e,r,t){"use strict";t.d(r,{Cp:function(){return x},Nq:function(){return c},cg:function(){return l},kP:function(){return u},w7:function(){return o},y1:function(){return d},zB:function(){return h}});var n=t(77054),s=t(61648),i=t(35016);let a=(0,n.X)({baseURL:i.env.NEXT_PUBLIC_BETTER_AUTH_URL||"",plugins:[(0,s.zB)()]}),{signIn:l,signOut:o,signUp:d,useSession:u,updateUser:c,changePassword:x}=a,h=a.admin}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,2542,55,7727,9949,3669,2757,1744],function(){return e(e.s=24100)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4966],{24100:function(e,r,t){Promise.resolve().then(t.bind(t,85795))},628:function(e,r,t){"use strict";t.d(r,{Z:function(){return g}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(69899),c=t(11379),x=t(9049);function h(e){return(0,x.ZP)("MuiCard",e)}(0,c.Z)("MuiCard",["root"]);var m=t(94655);let p=["className","raised"],f=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},h,r)},Z=(0,o.ZP)(u.Z,{name:"MuiCard",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({overflow:"hidden"}));var g=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCard"}),{className:i,raised:l=!1}=t,o=(0,s.Z)(t,p),u=(0,n.Z)({},t,{raised:l}),c=f(u);return(0,m.jsx)(Z,(0,n.Z)({className:(0,a.Z)(c.root,i),elevation:l?8:void 0,ref:r,ownerState:u},o))})},41565:function(e,r,t){"use strict";t.d(r,{Z:function(){return Z}});var n=t(81500),s=t(32324),i=t(35106),a=t(70316),l=t(65951),o=t(34519),d=t(28057),u=t(11379),c=t(9049);function x(e){return(0,c.ZP)("MuiCardContent",e)}(0,u.Z)("MuiCardContent",["root"]);var h=t(94655);let m=["className","component"],p=e=>{let{classes:r}=e;return(0,l.Z)({root:["root"]},x,r)},f=(0,o.ZP)("div",{name:"MuiCardContent",slot:"Root",overridesResolver:(e,r)=>r.root})(()=>({padding:16,"&:last-child":{paddingBottom:24}}));var Z=i.forwardRef(function(e,r){let t=(0,d.i)({props:e,name:"MuiCardContent"}),{className:i,component:l="div"}=t,o=(0,s.Z)(t,m),u=(0,n.Z)({},t,{component:l}),c=p(u);return(0,h.jsx)(f,(0,n.Z)({as:l,className:(0,a.Z)(c.root,i),ownerState:u,ref:r},o))})},85795:function(e,r,t){"use strict";t.r(r),t.d(r,{default:function(){return h}});var n=t(94655),s=t(74228),i=t(67337),a=t(7281),l=t(628),o=t(41565),d=t(31317),u=t(41261),c=t(85480),x=t(46725);function h(){let e=(0,s.useRouter)();return(0,n.jsx)(i.Z,{maxWidth:"sm",children:(0,n.jsx)(a.Z,{sx:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",py:4},children:(0,n.jsx)(l.Z,{sx:{width:"100%",maxWidth:500},children:(0,n.jsxs)(o.Z,{sx:{p:4},children:[(0,n.jsx)(d.Z,{variant:"h4",component:"h1",gutterBottom:!0,sx:{fontWeight:600,textAlign:"center",mb:3},children:"Create Account"}),(0,n.jsx)(d.Z,{variant:"body2",color:"text.secondary",sx:{textAlign:"center",mb:4},children:"Sign up to start managing Minecraft servers"}),(0,n.jsx)(c.WS,{onSuccess:()=>{e.push("/dashboard")}}),(0,n.jsx)(a.Z,{sx:{mt:3,textAlign:"center"},children:(0,n.jsxs)(d.Z,{variant:"body2",color:"text.secondary",children:["Already have an account?"," ",(0,n.jsx)(u.Z,{component:x.default,href:"/login",underline:"hover",children:"Sign in"})]})})]})})})})}},85480:function(e,r,t){"use strict";t.d(r,{U0:function(){return m},WS:function(){return p},Ie:function(){return q}});var n=t(94655),s=t(35106),i=t(7281),a=t(81071),l=t(97436),o=t(52082),d=t(79983),u=t(30417),c=t(36848),x=t(554),h=t(6986);function m(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(!1),[j,v]=(0,s.useState)({}),[y,b]=(0,s.useState)(null),[C,w]=(0,s.useState)(!1),S=()=>{let e={};return t?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)||(e.email="Invalid email address"):e.email="Email is required",p||(e.password="Password is required"),v(e),0===Object.keys(e).length},P=async e=>{if(e.preventDefault(),b(null),S()){w(!0);try{let e=await h.cg.email({email:t,password:p});if(e.error){b(e.error.message||"Invalid credentials"),w(!1);return}r&&r()}catch(e){b("An unexpected error occurred. Please try again."),w(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:P,sx:{display:"flex",flexDirection:"column",gap:2},children:[y&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>b(null),children:y}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:t,onChange:e=>m(e.target.value),error:!!j.email,helperText:j.email,disabled:C,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:Z?"text":"password",value:p,onChange:e=>f(e.target.value),error:!!j.password,helperText:j.password,disabled:C,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{g(!Z)},edge:"end",children:Z?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:C,fullWidth:!0,size:"large",children:C?"Signing in...":"Sign In"})]})}function p(e){let{onSuccess:r}=e,[t,m]=(0,s.useState)(""),[p,f]=(0,s.useState)(""),[Z,g]=(0,s.useState)(""),[j,v]=(0,s.useState)(""),[y,b]=(0,s.useState)(!1),[C,w]=(0,s.useState)(!1),[S,P]=(0,s.useState)({}),[k,W]=(0,s.useState)(null),[q,A]=(0,s.useState)(!1),I=()=>{let e={};return t||(e.name="Name is required"),p?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(p)||(e.email="Invalid email address"):e.email="Email is required",Z?Z.length<8&&(e.password="Password must be at least 8 characters"):e.password="Password is required",j?Z!==j&&(e.confirmPassword="Passwords do not match"):e.confirmPassword="Please confirm your password",P(e),0===Object.keys(e).length},R=async e=>{if(e.preventDefault(),W(null),I()){A(!0);try{let e=await h.y1.email({email:p,password:Z,name:t});if(e.error){W(e.error.message||"Registration failed"),A(!1);return}r&&r()}catch(e){W("An unexpected error occurred. Please try again."),A(!1)}}};return(0,n.jsxs)(i.Z,{component:"form",onSubmit:R,sx:{display:"flex",flexDirection:"column",gap:2},children:[k&&(0,n.jsx)(a.Z,{severity:"error",onClose:()=>W(null),children:k}),(0,n.jsx)(l.Z,{label:"Name",type:"text",value:t,onChange:e=>m(e.target.value),error:!!S.name,helperText:S.name,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Email",type:"email",value:p,onChange:e=>f(e.target.value),error:!!S.email,helperText:S.email,disabled:q,fullWidth:!0,required:!0}),(0,n.jsx)(l.Z,{label:"Password",type:y?"text":"password",value:Z,onChange:e=>g(e.target.value),error:!!S.password,helperText:S.password,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{b(!y)},edge:"end",children:y?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(l.Z,{label:"Confirm Password",type:C?"text":"password",value:j,onChange:e=>v(e.target.value),error:!!S.confirmPassword,helperText:S.confirmPassword,disabled:q,fullWidth:!0,required:!0,InputProps:{endAdornment:(0,n.jsx)(o.Z,{position:"end",children:(0,n.jsx)(d.Z,{"aria-label":"toggle password visibility",onClick:()=>{w(!C)},edge:"end",children:C?(0,n.jsx)(c.Z,{}):(0,n.jsx)(x.Z,{})})})}}),(0,n.jsx)(u.Z,{type:"submit",variant:"contained",color:"primary",disabled:q,fullWidth:!0,size:"large",children:q?"Creating account...":"Sign Up"})]})}var f=t(74228),Z=t(93017),g=t(86702),j=t(88812),v=t(31317),y=t(25333),b=t(69123),C=t(7178),w=t(17820),S=t(73424),P=t(25169),k=t(41094),W=t(78319);function q(){let e=(0,f.useRouter)(),{data:r,isPending:t}=(0,h.kP)(),[a,l]=(0,s.useState)(null),o=()=>{l(null)},c=async()=>{o(),await (0,h.w7)(),e.push("/login")};if(t)return(0,n.jsx)(i.Z,{sx:{display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.jsx)(Z.Z,{size:24})});if(!(null==r?void 0:r.user))return(0,n.jsx)(u.Z,{variant:"contained",color:"primary",onClick:()=>{e.push("/login")},children:"Sign In"});let{user:x}=r,m=((e,r)=>{if(e){let r=e.split(" ");return r.length>=2?"".concat(r[0][0]).concat(r[1][0]).toUpperCase():e.substring(0,2).toUpperCase()}return r?r[0].toUpperCase():"?"})(x.name,x.email);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(d.Z,{onClick:e=>{l(e.currentTarget)},"aria-label":"user menu",children:(0,n.jsx)(g.Z,{sx:{bgcolor:"primary.main"},children:m})}),(0,n.jsxs)(j.Z,{anchorEl:a,open:!!a,onClose:o,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},sx:{mt:1},children:[(0,n.jsxs)(i.Z,{sx:{px:2,py:1.5,minWidth:200},children:[(0,n.jsx)(v.Z,{variant:"subtitle1",fontWeight:"600",children:x.name||"User"}),(0,n.jsx)(v.Z,{variant:"body2",color:"text.secondary",children:x.email}),"admin"===x.role&&(0,n.jsx)(y.Z,{label:"Admin",size:"small",color:"primary",sx:{mt:1}})]}),(0,n.jsx)(b.Z,{}),"admin"===x.role&&(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/admin/users")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(P.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Users"})]}),(0,n.jsxs)(C.Z,{onClick:()=>{o(),e.push("/settings")},children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(k.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Settings"})]}),(0,n.jsxs)(C.Z,{onClick:c,children:[(0,n.jsx)(w.Z,{children:(0,n.jsx)(W.Z,{fontSize:"small"})}),(0,n.jsx)(S.Z,{children:"Logout"})]})]})]})}},6986:function(e,r,t){"use strict";t.d(r,{Cp:function(){return x},Nq:function(){return c},cg:function(){return l},kP:function(){return u},w7:function(){return o},y1:function(){return d},zB:function(){return h}});var n=t(77054),s=t(61648),i=t(35016);let a=(0,n.X)({baseURL:i.env.NEXT_PUBLIC_BETTER_AUTH_URL||"",plugins:[(0,s.zB)()]}),{signIn:l,signOut:o,signUp:d,useSession:u,updateUser:c,changePassword:x}=a,h=a.admin}},function(e){e.O(0,[6812,9760,5004,7296,7436,1071,2542,55,2539,9949,3669,2757,1744],function(){return e(e.s=24100)}),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1047],{33104:function(e,t,n){var o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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")},26577:function(e,t,n){var o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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")},46121:function(e,t,n){var o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.default)((0,a.jsx)("path",{d:"M5 20h14v-2H5zM19 9h-4V3H9v6H5l7 7z"}),"Download")},81960:function(e,t,n){var o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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")},89573:function(e,t,n){var o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o=n(8091);t.Z=void 0;var r=o(n(66758)),a=n(94655);t.Z=(0,r.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 o,r,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},g=n(16987),h=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 x=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{ignoreAccents:t=!0,ignoreCase:n=!0,limit:o,matchFrom:r="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 o=(a||s)(e);return n&&(o=o.toLowerCase()),t&&(o=v(o)),"start"===r?0===o.indexOf(u):o.indexOf(u)>-1}):e;return"number"==typeof o?p.slice(0,o):p}}(),b=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=b,unstable_classNamePrefix:n="Mui",autoComplete:o=!1,autoHighlight:r=!1,autoSelect:a=!1,blurOnSelect:c=!1,clearOnBlur:s=!e.freeSolo,clearOnEscape:u=!1,componentName:v="useAutocomplete",defaultValue:y=e.multiple?Z:null,disableClearable:S=!1,disableCloseOnSelect:C=!1,disabled:I,disabledItemsFocusable:k=!1,disableListWrap:L=!1,filterOptions:w=x,filterSelectedOptions:M=!1,freeSolo:O=!1,getOptionDisabled:P,getOptionKey:z,getOptionLabel:R=e=>{var t;return null!=(t=e.label)?t:e},groupBy:A,handleHomeEndKeys:H=!e.freeSolo,id:V,includeInputInList:T=!1,inputValue:j,isOptionEqualToValue:E=(e,t)=>e===t,multiple:N=!1,onChange:D,onClose:F,onHighlightChange:W,onInputChange:B,onOpen:q,open:G,openOnFocus:K=!1,options:U,readOnly:X=!1,selectOnFocus:Y=!e.freeSolo,value:_}=e,J=(0,p.Z)(V),Q=R;Q=e=>{let t=R(e);return"string"!=typeof t?String(t):t};let $=l.useRef(!1),ee=l.useRef(!0),et=l.useRef(null),en=l.useRef(null),[eo,er]=l.useState(null),[ea,ei]=l.useState(-1),el=r?0:-1,ec=l.useRef(el),[es,eu]=(0,d.Z)({controlled:_,default:y,name:v}),[ep,ed]=(0,d.Z)({controlled:j,default:"",name:v,state:"inputValue"}),[ef,eg]=l.useState(!1),eh=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=Q(t);n="string"==typeof e?e:""}ep!==n&&(ed(n),B&&B(e,n,"reset"))}},[Q,ep,N,B,ed,s,es]),[ev,em]=(0,d.Z)({controlled:G,default:!1,name:v,state:"open"}),[ex,eb]=l.useState(!0),eZ=!N&&null!=es&&ep===Q(es),ey=ev&&!X,eS=ey?w(U.filter(e=>!(M&&(N?es:[es]).some(t=>null!==t&&E(e,t)))),{inputValue:eZ&&ex?"":ep,getOptionLabel:Q}):[],eC=f({filteredOptions:eS,value:es,inputValue:ep});l.useEffect(()=>{let e=es!==eC.value;(!ef||e)&&(!O||e)&&eh(null,es)},[es,eh,ef,eC.value,O]);let eI=ev&&eS.length>0&&!X,ek=(0,g.Z)(e=>{-1===e?et.current.focus():eo.querySelector('[data-tag-index="'.concat(e,'"]')).focus()});l.useEffect(()=>{N&&ea>es.length-1&&(ei(-1),ek(-1))},[es,N,ea,ek]);let eL=(0,g.Z)(e=>{let{event:t,index:o,reason:r="auto"}=e;if(ec.current=o,-1===o?et.current.removeAttribute("aria-activedescendant"):et.current.setAttribute("aria-activedescendant","".concat(J,"-option-").concat(o)),W&&W(t,-1===o?null:eS[o],r),!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===o){i.scrollTop=0;return}let l=en.current.querySelector('[data-option-index="'.concat(o,'"]'));if(l&&(l.classList.add("".concat(n,"-focused")),"keyboard"===r&&l.classList.add("".concat(n,"-focusVisible")),i.scrollHeight>i.clientHeight&&"mouse"!==r&&"touch"!==r)){let e=i.clientHeight+i.scrollTop,t=l.offsetTop+l.offsetHeight;t>e?i.scrollTop=t-i.clientHeight:l.offsetTop-l.offsetHeight*(A?1.3:0)<i.scrollTop&&(i.scrollTop=l.offsetTop-l.offsetHeight*(A?1.3:0))}}),ew=(0,g.Z)(e=>{let{event:t,diff:n,direction:r="next",reason:a="auto"}=e;if(!ey)return;let i=function(e,t){if(!en.current||e<0||e>=eS.length)return -1;let n=e;for(;;){let o=en.current.querySelector('[data-option-index="'.concat(n,'"]')),r=!k&&(!o||o.disabled||"true"===o.getAttribute("aria-disabled"));if(o&&o.hasAttribute("tabindex")&&!r)return n;if((n="next"===t?(n+1)%eS.length:(n-1+eS.length)%eS.length)===e)return -1}}((()=>{let e=eS.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&&T?-1:L&&-1!==ec.current||Math.abs(n)>1?0:e:t>e?t===e+1&&T?-1:L||Math.abs(n)>1?e:0:t})(),r);if(eL({index:i,reason:a,event:t}),o&&"reset"!==n){if(-1===i)et.current.value=ep;else{let e=Q(eS[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&&eC.filteredOptions&&eC.filteredOptions.length!==eS.length&&eC.inputValue===ep&&(N?es.length===eC.value.length&&eC.value.every((e,t)=>Q(es[t])===Q(e)):((e=eC.value)?Q(e):"")===(es?Q(es):""))){let e=eC.filteredOptions[ec.current];if(e)return m(eS,t=>Q(t)===Q(e))}return -1},eO=l.useCallback(()=>{if(!ey)return;let e=eM();if(-1!==e){ec.current=e;return}let t=N?es[0]:es;if(0===eS.length||null==t){ew({diff:"reset"});return}if(en.current){if(null!=t){let e=eS[ec.current];if(N&&e&&-1!==m(es,t=>E(e,t)))return;let n=m(eS,e=>E(e,t));-1===n?ew({diff:"reset"}):eL({index:n});return}if(ec.current>=eS.length-1){eL({index:eS.length-1});return}eL({index:ec.current})}},[eS.length,!N&&es,M,ew,eL,ey,ep,N]),eP=(0,g.Z)(e=>{(0,h.Z)(en,e),e&&eO()});l.useEffect(()=>{eO()},[eO]);let ez=e=>{!ev&&(em(!0),eb(!0),q&&q(e))},eR=(e,t)=>{ev&&(em(!1),F&&F(e,t))},eA=(e,t,n,o)=>{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,o),eu(t)},eH=l.useRef(!1),eV=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"selectOption",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"options",r=n,a=t;if(N){let e=m(a=Array.isArray(es)?es.slice():[],e=>E(t,e));-1===e?a.push(t):"freeSolo"!==o&&(a.splice(e,1),r="removeOption")}eh(e,a),eA(e,a,r,{option:t}),C||e&&(e.ctrlKey||e.metaKey)||eR(e,r),(!0===c||"touch"===c&&eH.current||"mouse"===c&&!eH.current)&&et.current.blur()},eT=(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=eo.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)),ek(n)},ej=e=>{$.current=!0,ed(""),B&&B(e,"","clear"),eA(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),ek(-1)),229!==t.which))switch(t.key){case"Home":ey&&H&&(t.preventDefault(),ew({diff:"start",direction:"next",reason:"keyboard",event:t}));break;case"End":ey&&H&&(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}),ez(t);break;case"PageDown":t.preventDefault(),ew({diff:5,direction:"next",reason:"keyboard",event:t}),ez(t);break;case"ArrowDown":t.preventDefault(),ew({diff:1,direction:"next",reason:"keyboard",event:t}),ez(t);break;case"ArrowUp":t.preventDefault(),ew({diff:-1,direction:"previous",reason:"keyboard",event:t}),ez(t);break;case"ArrowLeft":eT(t,"previous");break;case"ArrowRight":eT(t,"next");break;case"Enter":if(-1!==ec.current&&ey){let e=eS[ec.current],n=!!P&&P(e);if(t.preventDefault(),n)return;eV(t,e,"selectOption"),o&&et.current.setSelectionRange(et.current.value.length,et.current.value.length)}else O&&""!==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(),ej(t));break;case"Backspace":if(N&&!X&&""===ep&&es.length>0){let e=-1===ea?es.length-1:ea,n=es.slice();n.splice(e,1),eA(t,n,"removeOption",{option:es[e]})}break;case"Delete":if(N&&!X&&""===ep&&es.length>0&&-1!==ea){let e=es.slice();e.splice(ea,1),eA(t,e,"removeOption",{option:es[ea]})}}},eN=e=>{eg(!0),K&&!$.current&&ez(e)},eD=e=>{if(t(en)){et.current.focus();return}eg(!1),ee.current=!0,$.current=!1,a&&-1!==ec.current&&ey?eV(e,eS[ec.current],"blur"):a&&O&&""!==ep?eV(e,ep,"blur","freeSolo"):s&&eh(e,es),eR(e,"blur")},eF=e=>{let t=e.target.value;ep!==t&&(ed(t),eb(!1),B&&B(e,t,"input")),""===t?S||N||eA(e,null,"clear"):ez(e)},eW=e=>{let t=Number(e.currentTarget.getAttribute("data-option-index"));ec.current!==t&&eL({event:e,index:t,reason:"mouse"})},eB=e=>{eL({event:e,index:Number(e.currentTarget.getAttribute("data-option-index")),reason:"touch"}),eH.current=!0},eq=e=>{let t=Number(e.currentTarget.getAttribute("data-option-index"));eV(e,eS[t],"selectOption"),eH.current=!1},eG=e=>t=>{let n=es.slice();n.splice(e,1),eA(t,n,"removeOption",{option:es[e]})},eK=e=>{ev?eR(e,"toggleInput"):ez(e)},eU=e=>{e.currentTarget.contains(e.target)&&e.target.getAttribute("id")!==J&&e.preventDefault()},eX=e=>{e.currentTarget.contains(e.target)&&(et.current.focus(),Y&&ee.current&&et.current.selectionEnd-et.current.selectionStart==0&&et.current.select(),ee.current=!1)},eY=e=>{I||""!==ep&&ev||eK(e)},e_=O&&ep.length>0;e_=e_||(N?es.length>0:null!==es);let eJ=eS;return A&&(eJ=eS.reduce((e,t,n)=>{let o=A(t);return e.length>0&&e[e.length-1].group===o?e[e.length-1].options.push(t):e.push({key:n,index:n,group:o,options:[t]}),e},[])),I&&ef&&eD(),{getRootProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,i.Z)({"aria-owns":eI?"".concat(J,"-listbox"):null},e,{onKeyDown:eE(e),onMouseDown:eU,onClick:eX})},getInputLabelProps:()=>({id:"".concat(J,"-label"),htmlFor:J}),getInputProps:()=>({id:J,value:ep,onBlur:eD,onFocus:eN,onChange:eF,onMouseDown:eY,"aria-activedescendant":ey?"":null,"aria-autocomplete":o?"both":"list","aria-controls":eI?"".concat(J,"-listbox"):void 0,"aria-expanded":eI,autoComplete:"off",ref:et,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:I}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:ej}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:eK}),getTagProps:e=>{let{index:t}=e;return(0,i.Z)({key:t,"data-tag-index":t,tabIndex:-1},!X&&{onDelete:eG(t)})},getListboxProps:()=>({role:"listbox",id:"".concat(J,"-listbox"),"aria-labelledby":"".concat(J,"-label"),ref:eP,onMouseDown:e=>{e.preventDefault()}}),getOptionProps:e=>{var t;let{index:n,option:o}=e,r=(N?es:[es]).some(e=>null!=e&&E(o,e)),a=!!P&&P(o);return{key:null!=(t=null==z?void 0:z(o))?t:Q(o),tabIndex:-1,role:"option",id:"".concat(J,"-option-").concat(n),onMouseMove:eW,onClick:eq,onTouchStart:eB,"data-option-index":n,"aria-disabled":a,"aria-selected":r}},id:J,inputValue:ep,value:es,dirty:e_,expanded:ey&&eo,popupOpen:ey,focused:ef||-1!==ea,anchorEl:eo,setAnchorEl:er,focusedTag:ea,groupedOptions:eJ}},S=n(10612),C=n(34519),I=n(28057),k=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 O=n(94655);let P=["className","color","component","disableGutters","disableSticky","inset"],z=e=>{let{classes:t,color:n,disableGutters:o,inset:r,disableSticky:a}=e,i={root:["root","default"!==n&&"color".concat((0,k.Z)(n)),!o&&"gutters",r&&"inset",!a&&"sticky"]};return(0,s.Z)(i,M,t)},R=(0,C.ZP)("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,"default"!==n.color&&t["color".concat((0,k.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})}),A=l.forwardRef(function(e,t){let n=(0,I.i)({props:e,name:"MuiListSubheader"}),{className:o,color:r="default",component:l="li",disableGutters:s=!1,disableSticky:u=!1,inset:p=!1}=n,d=(0,a.Z)(n,P),f=(0,i.Z)({},n,{color:r,component:l,disableGutters:s,disableSticky:u,inset:p}),g=z(f);return(0,O.jsx)(R,(0,i.Z)({as:l,className:(0,c.Z)(g.root,o),ref:t,ownerState:f},d))});A.muiSkipListHighlight=!0;var H=n(69899),V=n(79983),T=n(25333),j=n(5180),E=n(79254),N=n(47228),D=n(39448),F=n(99933),W=n(12284);function B(e){return(0,w.ZP)("MuiAutocomplete",e)}let q=(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 G=n(38481);let K=["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"],U=["ref"],X=["key"],Y=["key"],_=e=>{let{classes:t,disablePortal:n,expanded:o,focused:r,fullWidth:a,hasClearIcon:i,hasPopupIcon:l,inputFocused:c,popupOpen:u,size:p}=e,d={root:["root",o&&"expanded",r&&"focused",a&&"fullWidth",i&&"hasClearIcon",l&&"hasPopupIcon"],inputRoot:["inputRoot"],input:["input",c&&"inputFocused"],tag:["tag","tagSize".concat((0,k.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,B,t)},J=(0,C.ZP)("div",{name:"MuiAutocomplete",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e,{fullWidth:o,hasClearIcon:r,hasPopupIcon:a,inputFocused:i,size:l}=n;return[{["& .".concat(q.tag)]:t.tag},{["& .".concat(q.tag)]:t["tagSize".concat((0,k.Z)(l))]},{["& .".concat(q.inputRoot)]:t.inputRoot},{["& .".concat(q.input)]:t.input},{["& .".concat(q.input)]:i&&t.inputFocused},t.root,o&&t.fullWidth,a&&t.hasPopupIcon,r&&t.hasClearIcon]}})({["&.".concat(q.focused," .").concat(q.clearIndicator)]:{visibility:"visible"},"@media (pointer: fine)":{["&:hover .".concat(q.clearIndicator)]:{visibility:"visible"}},["& .".concat(q.tag)]:{margin:3,maxWidth:"calc(100% - 6px)"},["& .".concat(q.inputRoot)]:{[".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&")]:{paddingRight:30},[".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&")]:{paddingRight:56},["& .".concat(q.input)]:{width:0,minWidth:30}},["& .".concat(j.Z.root)]:{paddingBottom:1,"& .MuiInput-input":{padding:"4px 4px 4px 0px"}},["& .".concat(j.Z.root,".").concat(E.Z.sizeSmall)]:{["& .".concat(j.Z.input)]:{padding:"2px 4px 3px 0"}},["& .".concat(N.Z.root)]:{padding:9,[".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&")]:{paddingRight:39},[".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&")]:{paddingRight:65},["& .".concat(q.input)]:{padding:"7.5px 4px 7.5px 5px"},["& .".concat(q.endAdornment)]:{right:9}},["& .".concat(N.Z.root,".").concat(E.Z.sizeSmall)]:{paddingTop:6,paddingBottom:6,paddingLeft:6,["& .".concat(q.input)]:{padding:"2.5px 4px 2.5px 8px"}},["& .".concat(D.Z.root)]:{paddingTop:19,paddingLeft:8,[".".concat(q.hasPopupIcon,"&, .").concat(q.hasClearIcon,"&")]:{paddingRight:39},[".".concat(q.hasPopupIcon,".").concat(q.hasClearIcon,"&")]:{paddingRight:65},["& .".concat(D.Z.input)]:{padding:"7px 4px"},["& .".concat(q.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(q.input)]:{paddingTop:16,paddingBottom:17}},["& .".concat(D.Z.root,".").concat(E.Z.hiddenLabel,".").concat(E.Z.sizeSmall)]:{["& .".concat(q.input)]:{paddingTop:8,paddingBottom:9}},["& .".concat(q.input)]:{flexGrow:1,textOverflow:"ellipsis",opacity:0},variants:[{props:{fullWidth:!0},style:{width:"100%"}},{props:{size:"small"},style:{["& .".concat(q.tag)]:{margin:2,maxWidth:"calc(100% - 4px)"}}},{props:{inputFocused:!0},style:{["& .".concat(q.input)]:{opacity:1}}},{props:{multiple:!0},style:{["& .".concat(q.inputRoot)]:{flexWrap:"wrap"}}}]}),Q=(0,C.ZP)("div",{name:"MuiAutocomplete",slot:"EndAdornment",overridesResolver:(e,t)=>t.endAdornment})({position:"absolute",right:0,top:"50%",transform:"translate(0, -50%)"}),$=(0,C.ZP)(V.Z,{name:"MuiAutocomplete",slot:"ClearIndicator",overridesResolver:(e,t)=>t.clearIndicator})({marginRight:-2,padding:4,visibility:"hidden"}),ee=(0,C.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,C.ZP)(S.Z,{name:"MuiAutocomplete",slot:"Popper",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{["& .".concat(q.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,C.ZP)(H.Z,{name:"MuiAutocomplete",slot:"Paper",overridesResolver:(e,t)=>t.paper})(e=>{let{theme:t}=e;return(0,i.Z)({},t.typography.body1,{overflow:"auto"})}),eo=(0,C.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"}}),er=(0,C.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,C.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(q.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(q.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(q.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(q.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(q.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,C.ZP)(A,{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,C.ZP)("ul",{name:"MuiAutocomplete",slot:"GroupUl",overridesResolver:(e,t)=>t.groupUl})({padding:0,["& .".concat(q.option)]:{paddingLeft:24}});var ec=l.forwardRef(function(e,t){var n,s,u,p;let d;let f=(0,I.i)({props:e,name:"MuiAutocomplete"}),{autoComplete:g=!1,autoHighlight:h=!1,autoSelect:v=!1,blurOnSelect:m=!1,ChipProps:x,className:b,clearIcon:Z=o||(o=(0,O.jsx)(F.Z,{fontSize:"small"})),clearOnBlur:C=!f.freeSolo,clearOnEscape:k=!1,clearText:L="Clear",closeText:w="Close",componentsProps:M={},defaultValue:P=f.multiple?[]:null,disableClearable:z=!1,disableCloseOnSelect:R=!1,disabled:A=!1,disabledItemsFocusable:V=!1,disableListWrap:j=!1,disablePortal:E=!1,filterSelectedOptions:N=!1,forcePopupIcon:D="auto",freeSolo:B=!1,fullWidth:q=!1,getLimitTagsText:ec=e=>"+".concat(e),getOptionLabel:es,groupBy:eu,handleHomeEndKeys:ep=!f.freeSolo,includeInputInList:ed=!1,limitTags:ef=-1,ListboxComponent:eg="ul",ListboxProps:eh,loading:ev=!1,loadingText:em="Loading…",multiple:ex=!1,noOptionsText:eb="No options",openOnFocus:eZ=!1,openText:ey="Open",PaperComponent:eS=H.Z,PopperComponent:eC=S.Z,popupIcon:eI=r||(r=(0,O.jsx)(W.Z,{})),readOnly:ek=!1,renderGroup:eL,renderInput:ew,renderOption:eM,renderTags:eO,selectOnFocus:eP=!f.freeSolo,size:ez="medium",slotProps:eR={}}=f,eA=(0,a.Z)(f,K),{getRootProps:eH,getInputProps:eV,getInputLabelProps:eT,getPopupIndicatorProps:ej,getClearProps:eE,getTagProps:eN,getListboxProps:eD,getOptionProps:eF,value:eW,dirty:eB,expanded:eq,id:eG,popupOpen:eK,focused:eU,focusedTag:eX,anchorEl:eY,setAnchorEl:e_,inputValue:eJ,groupedOptions:eQ}=y((0,i.Z)({},f,{componentName:"Autocomplete"})),e$=!z&&!A&&eB&&!ek,e1=(!B||!0===D)&&!1!==D,{onMouseDown:e0}=eV(),{ref:e2}=null!=eh?eh:{},e5=eD(),{ref:e6}=e5,e4=(0,a.Z)(e5,U),e9=(0,G.Z)(e6,e2),e3=es||(e=>{var t;return null!=(t=e.label)?t:e}),e8=(0,i.Z)({},f,{disablePortal:E,expanded:eq,focused:eU,fullWidth:q,getOptionLabel:e3,hasClearIcon:e$,hasPopupIcon:e1,inputFocused:-1===eX,popupOpen:eK,size:ez}),e7=_(e8);if(ex&&eW.length>0){let e=e=>(0,i.Z)({className:e7.tag,disabled:A},eN(e));d=eO?eO(eW,e,e8):eW.map((t,n)=>{let o=e({index:n}),{key:r}=o,l=(0,a.Z)(o,X);return(0,O.jsx)(T.Z,(0,i.Z)({label:e3(t),size:ez},l,x),r)})}if(ef>-1&&Array.isArray(d)){let e=d.length-ef;!eU&&e>0&&(d=d.splice(0,ef)).push((0,O.jsx)("span",{className:e7.tag,children:ec(e)},d.length))}let te=eL||(e=>(0,O.jsxs)("li",{children:[(0,O.jsx)(ei,{className:e7.groupLabel,ownerState:e8,component:"div",children:e.group}),(0,O.jsx)(el,{className:e7.groupUl,ownerState:e8,children:e.children})]},e.key)),tt=eM||((e,t)=>{let{key:n}=e,o=(0,a.Z)(e,Y);return(0,O.jsx)("li",(0,i.Z)({},o,{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:eJ},e8)},to=null!=(n=eR.clearIndicator)?n:M.clearIndicator,tr=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,O.jsxs)(l.Fragment,{children:[(0,O.jsx)(J,(0,i.Z)({ref:t,className:(0,c.Z)(e7.root,b),ownerState:e8},eH(eA),{children:ew({id:eG,disabled:A,fullWidth:!0,size:"small"===ez?"small":void 0,InputLabelProps:eT(),InputProps:(0,i.Z)({ref:e_,className:e7.inputRoot,startAdornment:d,onClick:e=>{e.target===e.currentTarget&&e0(e)}},(e$||e1)&&{endAdornment:(0,O.jsxs)(Q,{className:e7.endAdornment,ownerState:e8,children:[e$?(0,O.jsx)($,(0,i.Z)({},eE(),{"aria-label":L,title:L,ownerState:e8},to,{className:(0,c.Z)(e7.clearIndicator,null==to?void 0:to.className),children:Z})):null,e1?(0,O.jsx)(ee,(0,i.Z)({},ej(),{disabled:A,"aria-label":eK?w:ey,title:eK?w:ey,ownerState:e8},ti,{className:(0,c.Z)(e7.popupIndicator,null==ti?void 0:ti.className),children:eI})):null]})}),inputProps:(0,i.Z)({className:e7.input,disabled:A,readOnly:ek},eV())})})),eY?(0,O.jsx)(et,(0,i.Z)({as:eC,disablePortal:E,style:{width:eY?eY.clientWidth:null},ownerState:e8,role:"presentation",anchorEl:eY,open:eK},ta,{className:(0,c.Z)(e7.popper,null==ta?void 0:ta.className),children:(0,O.jsxs)(en,(0,i.Z)({ownerState:e8,as:eS},tr,{className:(0,c.Z)(e7.paper,null==tr?void 0:tr.className),children:[ev&&0===eQ.length?(0,O.jsx)(eo,{className:e7.loading,ownerState:e8,children:em}):null,0!==eQ.length||B||ev?null:(0,O.jsx)(er,{className:e7.noOptions,ownerState:e8,role:"presentation",onMouseDown:e=>{e.preventDefault()},children:eb}),eQ.length>0?(0,O.jsx)(ea,(0,i.Z)({as:eg,className:e7.listbox,ownerState:e8},e4,eh,{ref:e9,children:eQ.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]})})},17820:function(e,t,n){var o=n(32324),r=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"],g=e=>{let{alignItems:t,classes:n}=e;return(0,l.Z)({root:["root","flex-start"===t&&"alignItemsFlexStart"]},u.f,n)},h=(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,r.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,o.Z)(n,f),u=a.useContext(p.Z),v=(0,r.Z)({},n,{alignItems:u.alignItems}),m=g(v);return(0,d.jsx)(h,(0,r.Z)({className:(0,i.Z)(m.root,l),ownerState:v,ref:t},c))});t.Z=v},12550:function(e,t,n){var o=n(81500),r=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 g=["addEndListener","appear","children","container","direction","easing","in","onEnter","onEntered","onEntering","onExit","onExited","onExiting","style","timeout","TransitionComponent"];function h(e,t,n){let o=function(e,t,n){let o;let r=t.getBoundingClientRect(),a=n&&n.getBoundingClientRect(),i=(0,d.Z)(t);if(t.fakeTransform)o=t.fakeTransform;else{let e=i.getComputedStyle(t);o=e.getPropertyValue("-webkit-transform")||e.getPropertyValue("transform")}let l=0,c=0;if(o&&"none"!==o&&"string"==typeof o){let e=o.split("(")[1].split(")")[0].split(",");l=parseInt(e[4],10),c=parseInt(e[5],10)}return"left"===e?a?"translateX(".concat(a.right+l-r.left,"px)"):"translateX(".concat(i.innerWidth+l-r.left,"px)"):"right"===e?a?"translateX(-".concat(r.right-a.left-l,"px)"):"translateX(-".concat(r.left+r.width-l,"px)"):"up"===e?a?"translateY(".concat(a.bottom+c-r.top,"px)"):"translateY(".concat(i.innerHeight+c-r.top,"px)"):a?"translateY(-".concat(r.top-a.top+r.height-c,"px)"):"translateY(-".concat(r.top+r.height-c,"px)")}(e,t,"function"==typeof n?n():n);o&&(t.style.webkitTransform=o,t.style.transform=o)}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:x,appear:b=!0,children:Z,container:y,direction:S="down",easing:C=v,in:I,onEnter:k,onEntered:L,onEntering:w,onExit:M,onExited:O,onExiting:P,style:z,timeout:R=m,TransitionComponent:A=i.ZP}=e,H=(0,r.Z)(e,g),V=a.useRef(null),T=(0,s.Z)((0,l.Z)(Z),V,t),j=e=>t=>{e&&(void 0===t?e(V.current):e(V.current,t))},E=j((e,t)=>{h(S,e,y),(0,p.n)(e),k&&k(e,t)}),N=j((e,t)=>{let r=(0,p.C)({timeout:R,style:z,easing:C},{mode:"enter"});e.style.webkitTransition=n.transitions.create("-webkit-transform",(0,o.Z)({},r)),e.style.transition=n.transitions.create("transform",(0,o.Z)({},r)),e.style.webkitTransform="none",e.style.transform="none",w&&w(e,t)}),D=j(L),F=j(P),W=j(e=>{let t=(0,p.C)({timeout:R,style:z,easing:C},{mode:"exit"});e.style.webkitTransition=n.transitions.create("-webkit-transform",t),e.style.transition=n.transitions.create("transform",t),h(S,e,y),M&&M(e)}),B=j(e=>{e.style.webkitTransition="",e.style.transition="",O&&O(e)}),q=a.useCallback(()=>{V.current&&h(S,V.current,y)},[S,y]);return a.useEffect(()=>{if(I||"down"===S||"right"===S)return;let e=(0,c.Z)(()=>{V.current&&h(S,V.current,y)}),t=(0,d.Z)(V.current);return t.addEventListener("resize",e),()=>{e.clear(),t.removeEventListener("resize",e)}},[S,I,y]),a.useEffect(()=>{I||q()},[I,q]),(0,f.jsx)(A,(0,o.Z)({nodeRef:V,onEnter:E,onEntered:D,onEntering:N,onExit:W,onExited:B,onExiting:F,addEndListener:e=>{x&&x(V.current,e)},appear:b,in:I,timeout:R},H,{children:(e,t)=>a.cloneElement(Z,(0,o.Z)({ref:T,style:(0,o.Z)({visibility:"exited"!==e||I?void 0:"hidden"},z,Z.props.style)},t))}))});t.Z=v}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1658],{40064:function(e,t,r){r.d(t,{Z:function(){return R}});var o=r(32324),l=r(81500),n=r(35106),a=r(70316),i=r(65951),s=r(85016),c=r(70115),d=r(31317),u=r(38762),p=r(34519),m=r(28057),b=r(11379),f=r(9049);function h(e){return(0,f.ZP)("MuiFormControlLabel",e)}let Z=(0,b.Z)("MuiFormControlLabel",["root","labelPlacementStart","labelPlacementTop","labelPlacementBottom","disabled","label","error","required","asterisk"]);var v=r(95953),g=r(94655);let k=["checked","className","componentsProps","control","disabled","disableTypography","inputRef","label","labelPlacement","name","onChange","required","slotProps","value"],P=e=>{let{classes:t,disabled:r,labelPlacement:o,error:l,required:n}=e,a={root:["root",r&&"disabled","labelPlacement".concat((0,u.Z)(o)),l&&"error",n&&"required"],label:["label",r&&"disabled"],asterisk:["asterisk",l&&"error"]};return(0,i.Z)(a,h,t)},y=(0,p.ZP)("label",{name:"MuiFormControlLabel",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[{["& .".concat(Z.label)]:t.label},t.root,t["labelPlacement".concat((0,u.Z)(r.labelPlacement))]]}})(e=>{let{theme:t,ownerState:r}=e;return(0,l.Z)({display:"inline-flex",alignItems:"center",cursor:"pointer",verticalAlign:"middle",WebkitTapHighlightColor:"transparent",marginLeft:-11,marginRight:16,["&.".concat(Z.disabled)]:{cursor:"default"}},"start"===r.labelPlacement&&{flexDirection:"row-reverse",marginLeft:16,marginRight:-11},"top"===r.labelPlacement&&{flexDirection:"column-reverse",marginLeft:16},"bottom"===r.labelPlacement&&{flexDirection:"column",marginLeft:16},{["& .".concat(Z.label)]:{["&.".concat(Z.disabled)]:{color:(t.vars||t).palette.text.disabled}}})}),x=(0,p.ZP)("span",{name:"MuiFormControlLabel",slot:"Asterisk",overridesResolver:(e,t)=>t.asterisk})(e=>{let{theme:t}=e;return{["&.".concat(Z.error)]:{color:(t.vars||t).palette.error.main}}});var R=n.forwardRef(function(e,t){var r,i;let u=(0,m.i)({props:e,name:"MuiFormControlLabel"}),{className:p,componentsProps:b={},control:f,disabled:h,disableTypography:Z,label:R,labelPlacement:w="end",required:S,slotProps:C={}}=u,F=(0,o.Z)(u,k),N=(0,s.Z)(),B=null!=(r=null!=h?h:f.props.disabled)?r:null==N?void 0:N.disabled,j=null!=S?S:f.props.required,M={disabled:B,required:j};["checked","name","onChange","value","inputRef"].forEach(e=>{void 0===f.props[e]&&void 0!==u[e]&&(M[e]=u[e])});let L=(0,v.Z)({props:u,muiFormControl:N,states:["error"]}),E=(0,l.Z)({},u,{disabled:B,labelPlacement:w,required:j,error:L.error}),q=P(E),I=null!=(i=C.typography)?i:b.typography,A=R;return null==A||A.type===d.Z||Z||(A=(0,g.jsx)(d.Z,(0,l.Z)({component:"span"},I,{className:(0,a.Z)(q.label,null==I?void 0:I.className),children:A}))),(0,g.jsxs)(y,(0,l.Z)({className:(0,a.Z)(q.root,p),ownerState:E,ref:t},F,{children:[n.cloneElement(f,M),j?(0,g.jsxs)(c.Z,{display:"block",children:[A,(0,g.jsxs)(x,{ownerState:E,"aria-hidden":!0,className:q.asterisk,children:[" ","*"]})]}):A]}))})},70115:function(e,t,r){r.d(t,{Z:function(){return w}});var o=r(32324),l=r(81500),n=r(35106),a=r(70316),i=r(41499),s=r(9049),c=r(65951),d=r(48442),u=r(54569),p=r(28131),m=r(8557),b=r(43513),f=r(95731),h=r(94655);let Z=["component","direction","spacing","divider","children","className","useFlexGap"],v=(0,m.Z)(),g=(0,d.Z)("div",{name:"MuiStack",slot:"Root",overridesResolver:(e,t)=>t.root});function k(e){return(0,u.Z)({props:e,name:"MuiStack",defaultTheme:v})}let P=e=>({row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"})[e],y=({ownerState:e,theme:t})=>{let r=(0,l.Z)({display:"flex",flexDirection:"column"},(0,b.k9)({theme:t},(0,b.P$)({values:e.direction,breakpoints:t.breakpoints.values}),e=>({flexDirection:e})));if(e.spacing){let o=(0,f.hB)(t),l=Object.keys(t.breakpoints.values).reduce((t,r)=>(("object"==typeof e.spacing&&null!=e.spacing[r]||"object"==typeof e.direction&&null!=e.direction[r])&&(t[r]=!0),t),{}),n=(0,b.P$)({values:e.direction,base:l}),a=(0,b.P$)({values:e.spacing,base:l});"object"==typeof n&&Object.keys(n).forEach((e,t,r)=>{if(!n[e]){let o=t>0?n[r[t-1]]:"column";n[e]=o}}),r=(0,i.Z)(r,(0,b.k9)({theme:t},a,(t,r)=>e.useFlexGap?{gap:(0,f.NA)(o,t)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${P(r?n[r]:e.direction)}`]:(0,f.NA)(o,t)}}))}return(0,b.dt)(t.breakpoints,r)};var x=r(34519),R=r(28057),w=function(e={}){let{createStyledComponent:t=g,useThemeProps:r=k,componentName:i="MuiStack"}=e,d=()=>(0,c.Z)({root:["root"]},e=>(0,s.ZP)(i,e),{}),u=t(y);return n.forwardRef(function(e,t){let i=r(e),s=(0,p.Z)(i),{component:c="div",direction:m="column",spacing:b=0,divider:f,children:v,className:g,useFlexGap:k=!1}=s,P=(0,o.Z)(s,Z),y=d();return(0,h.jsx)(u,(0,l.Z)({as:c,ownerState:{direction:m,spacing:b,useFlexGap:k},ref:t,className:(0,a.Z)(y.root,g)},P,{children:f?function(e,t){let r=n.Children.toArray(e).filter(Boolean);return r.reduce((e,o,l)=>(e.push(o),l<r.length-1&&e.push(n.cloneElement(t,{key:`separator-${l}`})),e),[])}(v,f):v}))})}({createStyledComponent:(0,x.ZP)("div",{name:"MuiStack",slot:"Root",overridesResolver:(e,t)=>t.root}),useThemeProps:e=>(0,R.i)({props:e,name:"MuiStack"})})},1592:function(e,t,r){r.d(t,{Z:function(){return y}});var o=r(32324),l=r(81500),n=r(35106),a=r(70316),i=r(65951),s=r(38762),c=r(34519),d=r(15651),u=r(18280),p=r(85016),m=r(29084),b=r(11379),f=r(9049);function h(e){return(0,f.ZP)("PrivateSwitchBase",e)}(0,b.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var Z=r(94655);let v=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=e=>{let{classes:t,checked:r,disabled:o,edge:l}=e,n={root:["root",r&&"checked",o&&"disabled",l&&"edge".concat((0,s.Z)(l))],input:["input"]};return(0,i.Z)(n,h,t)},k=(0,c.ZP)(m.Z,{name:"MuiSwitchBase"})(e=>{let{ownerState:t}=e;return(0,l.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})}),P=(0,c.ZP)("input",{name:"MuiSwitchBase",shouldForwardProp:d.Z})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1});var y=n.forwardRef(function(e,t){let{autoFocus:r,checked:n,checkedIcon:i,className:s,defaultChecked:c,disabled:d,disableFocusRipple:m=!1,edge:b=!1,icon:f,id:h,inputProps:y,inputRef:x,name:R,onBlur:w,onChange:S,onFocus:C,readOnly:F,required:N=!1,tabIndex:B,type:j,value:M}=e,L=(0,o.Z)(e,v),[E,q]=(0,u.Z)({controlled:n,default:!!c,name:"SwitchBase",state:"checked"}),I=(0,p.Z)(),A=d;I&&void 0===A&&(A=I.disabled);let D="checkbox"===j||"radio"===j,T=(0,l.Z)({},e,{checked:E,disabled:A,disableFocusRipple:m,edge:b}),$=g(T);return(0,Z.jsxs)(k,(0,l.Z)({component:"span",className:(0,a.Z)($.root,s),centerRipple:!0,focusRipple:!m,disabled:A,tabIndex:null,role:void 0,onFocus:e=>{C&&C(e),I&&I.onFocus&&I.onFocus(e)},onBlur:e=>{w&&w(e),I&&I.onBlur&&I.onBlur(e)},ownerState:T,ref:t},L,{children:[(0,Z.jsx)(P,(0,l.Z)({autoFocus:r,checked:n,defaultChecked:c,className:$.input,disabled:A,id:D?h:void 0,name:R,onChange:e=>{if(e.nativeEvent.defaultPrevented)return;let t=e.target.checked;q(t),S&&S(e,t)},readOnly:F,ref:x,required:N,ownerState:T,tabIndex:B,type:j},"checkbox"===j&&void 0===M?{}:{value:M},y)),E?i:f]}))})}}]);
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1658],{40064:function(e,t,r){r.d(t,{Z:function(){return R}});var o=r(32324),l=r(81500),n=r(35106),a=r(70316),i=r(65951),s=r(85016),c=r(70115),d=r(31317),u=r(38762),p=r(34519),m=r(28057),b=r(11379),f=r(9049);function h(e){return(0,f.ZP)("MuiFormControlLabel",e)}let Z=(0,b.Z)("MuiFormControlLabel",["root","labelPlacementStart","labelPlacementTop","labelPlacementBottom","disabled","label","error","required","asterisk"]);var v=r(95953),g=r(94655);let k=["checked","className","componentsProps","control","disabled","disableTypography","inputRef","label","labelPlacement","name","onChange","required","slotProps","value"],P=e=>{let{classes:t,disabled:r,labelPlacement:o,error:l,required:n}=e,a={root:["root",r&&"disabled","labelPlacement".concat((0,u.Z)(o)),l&&"error",n&&"required"],label:["label",r&&"disabled"],asterisk:["asterisk",l&&"error"]};return(0,i.Z)(a,h,t)},y=(0,p.ZP)("label",{name:"MuiFormControlLabel",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[{["& .".concat(Z.label)]:t.label},t.root,t["labelPlacement".concat((0,u.Z)(r.labelPlacement))]]}})(e=>{let{theme:t,ownerState:r}=e;return(0,l.Z)({display:"inline-flex",alignItems:"center",cursor:"pointer",verticalAlign:"middle",WebkitTapHighlightColor:"transparent",marginLeft:-11,marginRight:16,["&.".concat(Z.disabled)]:{cursor:"default"}},"start"===r.labelPlacement&&{flexDirection:"row-reverse",marginLeft:16,marginRight:-11},"top"===r.labelPlacement&&{flexDirection:"column-reverse",marginLeft:16},"bottom"===r.labelPlacement&&{flexDirection:"column",marginLeft:16},{["& .".concat(Z.label)]:{["&.".concat(Z.disabled)]:{color:(t.vars||t).palette.text.disabled}}})}),x=(0,p.ZP)("span",{name:"MuiFormControlLabel",slot:"Asterisk",overridesResolver:(e,t)=>t.asterisk})(e=>{let{theme:t}=e;return{["&.".concat(Z.error)]:{color:(t.vars||t).palette.error.main}}});var R=n.forwardRef(function(e,t){var r,i;let u=(0,m.i)({props:e,name:"MuiFormControlLabel"}),{className:p,componentsProps:b={},control:f,disabled:h,disableTypography:Z,label:R,labelPlacement:w="end",required:S,slotProps:C={}}=u,F=(0,o.Z)(u,k),N=(0,s.Z)(),B=null!=(r=null!=h?h:f.props.disabled)?r:null==N?void 0:N.disabled,j=null!=S?S:f.props.required,M={disabled:B,required:j};["checked","name","onChange","value","inputRef"].forEach(e=>{void 0===f.props[e]&&void 0!==u[e]&&(M[e]=u[e])});let L=(0,v.Z)({props:u,muiFormControl:N,states:["error"]}),E=(0,l.Z)({},u,{disabled:B,labelPlacement:w,required:j,error:L.error}),q=P(E),I=null!=(i=C.typography)?i:b.typography,A=R;return null==A||A.type===d.Z||Z||(A=(0,g.jsx)(d.Z,(0,l.Z)({component:"span"},I,{className:(0,a.Z)(q.label,null==I?void 0:I.className),children:A}))),(0,g.jsxs)(y,(0,l.Z)({className:(0,a.Z)(q.root,p),ownerState:E,ref:t},F,{children:[n.cloneElement(f,M),j?(0,g.jsxs)(c.Z,{display:"block",children:[A,(0,g.jsxs)(x,{ownerState:E,"aria-hidden":!0,className:q.asterisk,children:[" ","*"]})]}):A]}))})},70115:function(e,t,r){r.d(t,{Z:function(){return w}});var o=r(32324),l=r(81500),n=r(35106),a=r(70316),i=r(41499),s=r(9049),c=r(65951),d=r(48442),u=r(14189),p=r(28131),m=r(8557),b=r(43513),f=r(95731),h=r(94655);let Z=["component","direction","spacing","divider","children","className","useFlexGap"],v=(0,m.Z)(),g=(0,d.Z)("div",{name:"MuiStack",slot:"Root",overridesResolver:(e,t)=>t.root});function k(e){return(0,u.Z)({props:e,name:"MuiStack",defaultTheme:v})}let P=e=>({row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"})[e],y=({ownerState:e,theme:t})=>{let r=(0,l.Z)({display:"flex",flexDirection:"column"},(0,b.k9)({theme:t},(0,b.P$)({values:e.direction,breakpoints:t.breakpoints.values}),e=>({flexDirection:e})));if(e.spacing){let o=(0,f.hB)(t),l=Object.keys(t.breakpoints.values).reduce((t,r)=>(("object"==typeof e.spacing&&null!=e.spacing[r]||"object"==typeof e.direction&&null!=e.direction[r])&&(t[r]=!0),t),{}),n=(0,b.P$)({values:e.direction,base:l}),a=(0,b.P$)({values:e.spacing,base:l});"object"==typeof n&&Object.keys(n).forEach((e,t,r)=>{if(!n[e]){let o=t>0?n[r[t-1]]:"column";n[e]=o}}),r=(0,i.Z)(r,(0,b.k9)({theme:t},a,(t,r)=>e.useFlexGap?{gap:(0,f.NA)(o,t)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${P(r?n[r]:e.direction)}`]:(0,f.NA)(o,t)}}))}return(0,b.dt)(t.breakpoints,r)};var x=r(34519),R=r(28057),w=function(e={}){let{createStyledComponent:t=g,useThemeProps:r=k,componentName:i="MuiStack"}=e,d=()=>(0,c.Z)({root:["root"]},e=>(0,s.ZP)(i,e),{}),u=t(y);return n.forwardRef(function(e,t){let i=r(e),s=(0,p.Z)(i),{component:c="div",direction:m="column",spacing:b=0,divider:f,children:v,className:g,useFlexGap:k=!1}=s,P=(0,o.Z)(s,Z),y=d();return(0,h.jsx)(u,(0,l.Z)({as:c,ownerState:{direction:m,spacing:b,useFlexGap:k},ref:t,className:(0,a.Z)(y.root,g)},P,{children:f?function(e,t){let r=n.Children.toArray(e).filter(Boolean);return r.reduce((e,o,l)=>(e.push(o),l<r.length-1&&e.push(n.cloneElement(t,{key:`separator-${l}`})),e),[])}(v,f):v}))})}({createStyledComponent:(0,x.ZP)("div",{name:"MuiStack",slot:"Root",overridesResolver:(e,t)=>t.root}),useThemeProps:e=>(0,R.i)({props:e,name:"MuiStack"})})},1592:function(e,t,r){r.d(t,{Z:function(){return y}});var o=r(32324),l=r(81500),n=r(35106),a=r(70316),i=r(65951),s=r(38762),c=r(34519),d=r(15651),u=r(18280),p=r(85016),m=r(29084),b=r(11379),f=r(9049);function h(e){return(0,f.ZP)("PrivateSwitchBase",e)}(0,b.Z)("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);var Z=r(94655);let v=["autoFocus","checked","checkedIcon","className","defaultChecked","disabled","disableFocusRipple","edge","icon","id","inputProps","inputRef","name","onBlur","onChange","onFocus","readOnly","required","tabIndex","type","value"],g=e=>{let{classes:t,checked:r,disabled:o,edge:l}=e,n={root:["root",r&&"checked",o&&"disabled",l&&"edge".concat((0,s.Z)(l))],input:["input"]};return(0,i.Z)(n,h,t)},k=(0,c.ZP)(m.Z,{name:"MuiSwitchBase"})(e=>{let{ownerState:t}=e;return(0,l.Z)({padding:9,borderRadius:"50%"},"start"===t.edge&&{marginLeft:"small"===t.size?-3:-12},"end"===t.edge&&{marginRight:"small"===t.size?-3:-12})}),P=(0,c.ZP)("input",{name:"MuiSwitchBase",shouldForwardProp:d.Z})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1});var y=n.forwardRef(function(e,t){let{autoFocus:r,checked:n,checkedIcon:i,className:s,defaultChecked:c,disabled:d,disableFocusRipple:m=!1,edge:b=!1,icon:f,id:h,inputProps:y,inputRef:x,name:R,onBlur:w,onChange:S,onFocus:C,readOnly:F,required:N=!1,tabIndex:B,type:j,value:M}=e,L=(0,o.Z)(e,v),[E,q]=(0,u.Z)({controlled:n,default:!!c,name:"SwitchBase",state:"checked"}),I=(0,p.Z)(),A=d;I&&void 0===A&&(A=I.disabled);let D="checkbox"===j||"radio"===j,T=(0,l.Z)({},e,{checked:E,disabled:A,disableFocusRipple:m,edge:b}),$=g(T);return(0,Z.jsxs)(k,(0,l.Z)({component:"span",className:(0,a.Z)($.root,s),centerRipple:!0,focusRipple:!m,disabled:A,tabIndex:null,role:void 0,onFocus:e=>{C&&C(e),I&&I.onFocus&&I.onFocus(e)},onBlur:e=>{w&&w(e),I&&I.onBlur&&I.onBlur(e)},ownerState:T,ref:t},L,{children:[(0,Z.jsx)(P,(0,l.Z)({autoFocus:r,checked:n,defaultChecked:c,className:$.input,disabled:A,id:D?h:void 0,name:R,onChange:e=>{if(e.nativeEvent.defaultPrevented)return;let t=e.target.checked;q(t),S&&S(e,t)},readOnly:F,ref:x,required:N,ownerState:T,tabIndex:B,type:j},"checkbox"===j&&void 0===M?{}:{value:M},y)),E?i:f]}))})}}]);