bit-office 1.2.2 → 1.2.3

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 (101) hide show
  1. package/dist/index.js +5247 -1840
  2. package/dist/index.js.map +1 -1
  3. package/dist/web/404.html +60 -50
  4. package/dist/web/_next/static/chunks/262.c930af897fc1ae41.js +1 -0
  5. package/dist/web/_next/static/chunks/27.d81804d60bc0f4f0.js +1 -0
  6. package/dist/web/_next/static/chunks/276-7203e26618727a54.js +1 -0
  7. package/dist/web/_next/static/chunks/29.5e4e3e30b02d00ad.js +1 -0
  8. package/dist/web/_next/static/chunks/290.247befe60cb2d28d.js +1 -0
  9. package/dist/web/_next/static/chunks/293.e3a551b691c61d55.js +1 -0
  10. package/dist/web/_next/static/chunks/297.2c14111a5babdc3f.js +1 -0
  11. package/dist/web/_next/static/chunks/336.8eafff71d277c552.js +1 -0
  12. package/dist/web/_next/static/chunks/337.d02d761d8479a26b.js +1 -0
  13. package/dist/web/_next/static/chunks/363.e8a82fede2ce0268.js +1 -0
  14. package/dist/web/_next/static/chunks/368.17f62d3909ec67e9.js +1 -0
  15. package/dist/web/_next/static/chunks/484.9bea1cffd0a0c25d.js +1 -0
  16. package/dist/web/_next/static/chunks/606.64076fb5c9a76eb8.js +1 -0
  17. package/dist/web/_next/static/chunks/611.a9c4df24fea6fe06.js +1 -0
  18. package/dist/web/_next/static/chunks/689-57cf7e431c713dac.js +1 -0
  19. package/dist/web/_next/static/chunks/729.f8f9847d2d765724.js +1 -0
  20. package/dist/web/_next/static/chunks/73.84b7325688d17248.js +1 -0
  21. package/dist/web/_next/static/chunks/757.704acf1f09ac05cb.js +1 -0
  22. package/dist/web/_next/static/chunks/767-52fa35b605461336.js +1 -0
  23. package/dist/web/_next/static/chunks/794.4c6f7ebfcb65fff9.js +1 -0
  24. package/dist/web/_next/static/chunks/810.39f7a3b8c687a8e4.js +1 -0
  25. package/dist/web/_next/static/chunks/849.04bc4b508495ab91.js +1 -0
  26. package/dist/web/_next/static/chunks/853.1223037341c73df9.js +1 -0
  27. package/dist/web/_next/static/chunks/88.219a7fc3735b6d2b.js +1 -0
  28. package/dist/web/_next/static/chunks/880.0799bc27d833d679.js +1 -0
  29. package/dist/web/_next/static/chunks/883.9832cb2358508994.js +1 -0
  30. package/dist/web/_next/static/chunks/895.b20c839956b4d7fa.js +1 -0
  31. package/dist/web/_next/static/chunks/913.d5d32ae6956a650a.js +1 -0
  32. package/dist/web/_next/static/chunks/955.8d32a077607d5dd4.js +1 -0
  33. package/dist/web/_next/static/chunks/999.59e64ccb62c7e043.js +1 -0
  34. package/dist/web/_next/static/chunks/app/_not-found/page-fc90e6f750996b0a.js +1 -0
  35. package/dist/web/_next/static/chunks/app/join/{page-7e3ac640395d940a.js → page-98fb24f2e87aa173.js} +1 -1
  36. package/dist/web/_next/static/chunks/app/layout-a57e585fdbd6e50f.js +1 -0
  37. package/dist/web/_next/static/chunks/app/not-found-fc90e6f750996b0a.js +1 -0
  38. package/dist/web/_next/static/chunks/app/office/page-7e64f4657627f13b.js +1 -0
  39. package/dist/web/_next/static/chunks/app/pair/page-67f86e4adcdf34ea.js +1 -0
  40. package/dist/web/_next/static/chunks/webpack-ecac0d5245a37138.js +1 -0
  41. package/dist/web/_next/static/css/7a1e811bf3f4909f.css +3 -0
  42. package/dist/web/index.html +60 -50
  43. package/dist/web/index.txt +73 -65
  44. package/dist/web/join.html +60 -50
  45. package/dist/web/join.txt +74 -66
  46. package/dist/web/manifest.json +1 -1
  47. package/dist/web/office.html +61 -50
  48. package/dist/web/office.txt +74 -66
  49. package/dist/web/offices/cute-whimsical.jpeg +0 -0
  50. package/dist/web/offices/cute-whimsical.zip +0 -0
  51. package/dist/web/offices/cyberpunk.jpeg +0 -0
  52. package/dist/web/offices/cyberpunk.zip +0 -0
  53. package/dist/web/offices/darkLegend.jpeg +0 -0
  54. package/dist/web/offices/darkLegend.zip +0 -0
  55. package/dist/web/offices/easternFantasy.jpeg +0 -0
  56. package/dist/web/offices/easternFantasy.zip +0 -0
  57. package/dist/web/offices/gothic.jpeg +0 -0
  58. package/dist/web/offices/gothic.zip +0 -0
  59. package/dist/web/offices/historical.jpeg +0 -0
  60. package/dist/web/offices/historical.zip +0 -0
  61. package/dist/web/offices/index.json +26 -25
  62. package/dist/web/offices/modern-cozy.jpeg +0 -0
  63. package/dist/web/offices/modern-cozy.jpg +0 -0
  64. package/dist/web/offices/modern-cozy.zip +0 -0
  65. package/dist/web/offices/mythological.jpeg +0 -0
  66. package/dist/web/offices/mythological.zip +0 -0
  67. package/dist/web/offices/nostalgic.jpeg +0 -0
  68. package/dist/web/offices/nostalgic.zip +0 -0
  69. package/dist/web/offices/postApocalyptic.jpeg +0 -0
  70. package/dist/web/offices/postApocalyptic.zip +0 -0
  71. package/dist/web/offices/sifi.jpeg +0 -0
  72. package/dist/web/offices/sifi.zip +0 -0
  73. package/dist/web/offices/westernFantasy.jpeg +0 -0
  74. package/dist/web/offices/westernFantasy.zip +0 -0
  75. package/dist/web/pair.html +60 -50
  76. package/dist/web/pair.txt +74 -66
  77. package/dist/web/sw.js +1 -1
  78. package/dist/web/workbox-a92c5218.js +1 -0
  79. package/package.json +2 -2
  80. package/dist/web/_next/static/chunks/29.a4a95a903c8b8e7b.js +0 -1
  81. package/dist/web/_next/static/chunks/290.345f536a557e23ec.js +0 -1
  82. package/dist/web/_next/static/chunks/336.033a979c6c5fe642.js +0 -1
  83. package/dist/web/_next/static/chunks/368.61fa3954c03d8818.js +0 -1
  84. package/dist/web/_next/static/chunks/632.d16ffbb5e23a43f2.js +0 -1
  85. package/dist/web/_next/static/chunks/757.a611f4691f6b1582.js +0 -1
  86. package/dist/web/_next/static/chunks/810.44213c6355518b0b.js +0 -1
  87. package/dist/web/_next/static/chunks/880.614e72604eb723a3.js +0 -1
  88. package/dist/web/_next/static/chunks/989-6be071435f8fdadf.js +0 -1
  89. package/dist/web/_next/static/chunks/app/_not-found/page-182ed2c105839b2a.js +0 -1
  90. package/dist/web/_next/static/chunks/app/layout-72c65340fbaef4c0.js +0 -1
  91. package/dist/web/_next/static/chunks/app/office/page-358079be75bf327f.js +0 -1
  92. package/dist/web/_next/static/chunks/app/pair/page-c47333f71aa3f4ef.js +0 -1
  93. package/dist/web/_next/static/chunks/webpack-1c3347ded5c6a52b.js +0 -1
  94. package/dist/web/offices/Nostalgic.jpeg +0 -0
  95. package/dist/web/offices/Nostalgic.zip +0 -0
  96. package/dist/web/offices/modernCozy.jpeg +0 -0
  97. package/dist/web/offices/modernCozy.zip +0 -0
  98. package/dist/web/workbox-5194662c.js +0 -1
  99. /package/dist/web/_next/static/{0Clbb0V7-cqhwpr3pjKk1 → 30c0_3N7JM7PsUvSPrOdD}/_buildManifest.js +0 -0
  100. /package/dist/web/_next/static/{0Clbb0V7-cqhwpr3pjKk1 → 30c0_3N7JM7PsUvSPrOdD}/_ssgManifest.js +0 -0
  101. /package/dist/web/_next/static/chunks/{325ca9c7-f84e7e4973790fdf.js → 325ca9c7.f84e7e4973790fdf.js} +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[149,823],{138:(e,t,o)=>{"use strict";o.d(t,{h:()=>g});var n=o(9576);let r="office-chat-history";function l(e){try{let t=[];for(let[,o]of e)!o.isExternal&&(o.messages.length>0||o.name!==o.agentId)&&t.push({agentId:o.agentId,name:o.name,role:o.role,palette:o.palette,personality:o.personality,backend:o.backend,isTeamLead:o.isTeamLead,teamId:o.teamId,messages:o.messages});localStorage.setItem(r,JSON.stringify(t))}catch(e){}}function a(){try{let e=localStorage.getItem(r);if(!e)return new Map;let t=JSON.parse(e),o=new Map;for(let e of t)o.set(e.agentId,e);return o}catch(e){return new Map}}function i(e){try{let t=localStorage.getItem(r);if(!t)return;let o=JSON.parse(t);localStorage.setItem(r,JSON.stringify(o.filter(t=>t.agentId!==e)))}catch(e){}}let s="office-team-messages";function c(e){try{let t=e.slice(-200);localStorage.setItem(s,JSON.stringify(t))}catch(e){}}let d="office-team-phase";function p(e){try{let t={};for(let[o,n]of e)t[o]=n;localStorage.setItem(d,JSON.stringify(t))}catch(e){}}function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return{agentId:e,name:t,role:o,status:"idle",currentTaskId:null,currentPrompt:null,pendingApproval:null,messages:[],lastLogLine:null,tokenUsage:{inputTokens:0,outputTokens:0}}}let g=(0,n.v)((e,t)=>({agents:new Map,agentDefs:[],teamMessages:[],teamPhases:new Map,role:"owner",suggestions:[],projectList:[],viewingProjectId:null,viewingProjectEvents:[],viewingProjectName:null,pendingPreviewUrl:null,connected:!1,hydrated:!1,consumePreviewUrl:()=>{let o=t().pendingPreviewUrl;return o&&e({pendingPreviewUrl:null}),o},setConnected:t=>e({connected:t}),setRole:t=>e({role:t}),hydrate:()=>{if(t().hydrated)return;let o=a(),n=function(){try{let e=localStorage.getItem(s);return e?JSON.parse(e):[]}catch(e){return[]}}(),r=function(){try{let e=localStorage.getItem(d);if(!e)return new Map;let t=JSON.parse(e);return new Map(Object.entries(t))}catch(e){return new Map}}();if(0===o.size&&0===n.length&&0===r.size)return void e({hydrated:!0,teamMessages:n,teamPhases:r});e(e=>{let t=new Map(e.agents);for(let[e,n]of o)t.has(e)||t.set(e,{...u(e,n.name,n.role),palette:n.palette,personality:n.personality,backend:n.backend,isTeamLead:n.isTeamLead,teamId:n.teamId,messages:n.messages});return{agents:t,teamMessages:n,teamPhases:r,hydrated:!0}})},getAgent:e=>{var o;return null!=(o=t().agents.get(e))?o:u(e)},removeAgent:t=>{e(e=>{let o=new Map(e.agents);return o.delete(t),i(t),{agents:o}})},clearTeamMessages:()=>{c([]),p(new Map),e({teamMessages:[],teamPhases:new Map})},clearViewingProject:()=>{e({viewingProjectId:null,viewingProjectEvents:[],viewingProjectName:null})},addUserMessage:(t,o,n)=>{e(e=>{var r;let a=new Map(e.agents),i=null!=(r=a.get(t))?r:u(t);return a.set(t,{...i,messages:[...i.messages,{id:o,role:"user",text:n,timestamp:Date.now()}]}),l(a),{agents:a}})},handleEvent:t=>{e(e=>{var o,n,r,s,d,g,f,m,h,x,y,b,k,S,v,C,T,j,w,E,A,I,F,W,D,P,O,L,R,_,z,H;let Y=new Map(e.agents);switch(t.type){case"AGENTS_SYNC":{let e=new Set(t.agentIds);for(let t of Y.keys())e.has(t)||Y.delete(t);break}case"AGENT_CREATED":{let e=Y.get(t.agentId);if(e)Y.set(t.agentId,{...e,name:t.name,role:t.role,palette:null!=(o=t.palette)?o:e.palette,personality:null!=(n=t.personality)?n:e.personality,backend:null!=(r=t.backend)?r:e.backend,isTeamLead:null!=(s=t.isTeamLead)?s:e.isTeamLead,teamId:null!=(d=t.teamId)?d:e.teamId,isExternal:null!=(g=t.isExternal)?g:e.isExternal,pid:null!=(f=t.pid)?f:e.pid,cwd:null!=(m=t.cwd)?m:e.cwd,startedAt:null!=(h=t.startedAt)?h:e.startedAt});else{let e=t.isExternal?void 0:a().get(t.agentId),o=u(t.agentId,t.name,t.role);o.palette=null!=(x=t.palette)?x:null==e?void 0:e.palette,o.personality=null!=(y=t.personality)?y:null==e?void 0:e.personality,o.backend=null!=(b=t.backend)?b:null==e?void 0:e.backend,o.isTeamLead=null!=(k=t.isTeamLead)?k:null==e?void 0:e.isTeamLead,o.teamId=null!=(S=t.teamId)?S:null==e?void 0:e.teamId,o.isExternal=t.isExternal,o.pid=t.pid,o.cwd=t.cwd,o.startedAt=t.startedAt,e&&(o.messages=e.messages),Y.set(t.agentId,o)}if(!t.isExternal){let o=Y.get(t.agentId);(null==e?void 0:e.isTeamLead)&&!(null==o?void 0:o.isTeamLead)&&(console.warn("[Store] isTeamLead LOST for ".concat(t.agentId,"! event.isTeamLead=").concat(t.isTeamLead,", existing=").concat(e.isTeamLead)),console.trace()),l(Y)}break}case"AGENT_FIRED":{Y.delete(t.agentId),i(t.agentId);let o=new Map(e.teamPhases);for(let[e,n]of o)n.leadAgentId===t.agentId&&o.delete(e);if(o.size!==e.teamPhases.size)return p(o),{agents:Y,teamPhases:o};break}case"AGENT_STATUS":{let e=null!=(v=Y.get(t.agentId))?v:u(t.agentId);Y.set(t.agentId,{...e,status:t.status});break}case"TASK_STARTED":{let e=null!=(C=Y.get(t.agentId))?C:u(t.agentId);Y.set(t.agentId,{...e,status:"working",currentTaskId:t.taskId,currentPrompt:t.prompt,pendingApproval:null,lastLogLine:null});break}case"APPROVAL_NEEDED":{let e=null!=(T=Y.get(t.agentId))?T:u(t.agentId);Y.set(t.agentId,{...e,status:"waiting_approval",pendingApproval:{approvalId:t.approvalId,title:t.title,summary:t.summary,riskLevel:t.riskLevel}});break}case"TASK_DONE":{let o=null!=(j=Y.get(t.agentId))?j:u(t.agentId),n=t.taskId+"-reply";if(o.messages.some(e=>e.id===n))break;let r=!1;if(o.isTeamLead){for(let[,o]of e.teamPhases)if(o.leadAgentId===t.agentId){r=["create","design","complete"].includes(o.phase);break}}let a=null!=(w=o._tokenBaseline)?w:{inputTokens:0,outputTokens:0},i=o.tokenUsage.inputTokens>a.inputTokens||o.tokenUsage.outputTokens>a.outputTokens?o.tokenUsage:t.result.tokenUsage?{inputTokens:o.tokenUsage.inputTokens+t.result.tokenUsage.inputTokens,outputTokens:o.tokenUsage.outputTokens+t.result.tokenUsage.outputTokens}:o.tokenUsage;if(o.isTeamLead&&!t.isFinalResult&&!r){Y.set(t.agentId,{...o,status:"working",currentTaskId:null,pendingApproval:null,lastLogLine:null!=(A=null==(E=t.result.summary)?void 0:E.slice(0,100))?A:"Coordinating team...",tokenUsage:i,_tokenBaseline:i});break}let s=[...o.messages,{id:n,role:"agent",text:t.result.summary,timestamp:Date.now(),result:t.result,isFinalResult:t.isFinalResult}];Y.set(t.agentId,{...o,status:"done",currentTaskId:null,pendingApproval:null,lastLogLine:null,messages:s,tokenUsage:i,_tokenBaseline:i}),l(Y);break}case"TASK_FAILED":{let e=null!=(I=Y.get(t.agentId))?I:u(t.agentId),o=t.taskId+"-error";if(e.messages.some(e=>e.id===o))break;let n="Task cancelled by user"===t.error?"Current task has been cancelled. Tell me continue to pick up where I left off, or start something entirely new.":t.error;Y.set(t.agentId,{...e,status:"error",currentTaskId:null,pendingApproval:null,lastLogLine:null,messages:[...e.messages,{id:o,role:"system",text:n,timestamp:Date.now()}]}),l(Y);break}case"TASK_DELEGATED":{let e=Y.get(t.fromAgentId),o=Y.get(t.toAgentId),n=t.taskId+"-delegate";e&&!e.messages.some(e=>e.id===n)&&Y.set(t.fromAgentId,{...e,messages:[...e.messages,{id:n,role:"system",text:"Delegated to ".concat(null!=(F=null==o?void 0:o.name)?F:t.toAgentId,": ").concat(t.prompt),timestamp:Date.now()}]});let r=t.taskId+"-received",a=null!=(W=Y.get(t.toAgentId))?W:u(t.toAgentId);a.messages.some(e=>e.id===r)||Y.set(t.toAgentId,{...a,messages:[...a.messages,{id:r,role:"user",text:"[From ".concat(null!=(D=null==e?void 0:e.name)?D:t.fromAgentId,"] ").concat(t.prompt),timestamp:Date.now()}]}),l(Y);break}case"LOG_APPEND":{let e=Y.get(t.agentId);if(e&&(Y.set(t.agentId,{...e,lastLogLine:t.chunk}),e.isExternal&&t.chunk)){let o=Date.now(),n=e.messages.length>0?e.messages[e.messages.length-1]:null;if(n&&"agent"===n.role&&o-n.timestamp<3e3){let r=[...e.messages];r[r.length-1]={...n,text:t.chunk,timestamp:o},Y.set(t.agentId,{...Y.get(t.agentId),messages:r})}else{let e="ext-log-".concat(o);Y.set(t.agentId,{...Y.get(t.agentId),messages:[...Y.get(t.agentId).messages,{id:e,role:"agent",text:t.chunk,timestamp:o}]})}}break}case"TASK_RESULT_RETURNED":{let e=Y.get(t.toAgentId);if(e){let o=Y.get(t.fromAgentId),n=t.taskId+"-result-return";if(!e.messages.some(e=>e.id===n)){let r=t.success?"completed":"failed";Y.set(t.toAgentId,{...e,messages:[...e.messages,{id:n,role:"system",text:"Result from ".concat(null!=(P=null==o?void 0:o.name)?P:t.fromAgentId," (").concat(r,"): ").concat(t.summary.slice(0,500)),timestamp:Date.now()}]})}}break}case"TEAM_CHAT":{let o=Y.get(t.fromAgentId),n=t.toAgentId?Y.get(t.toAgentId):void 0,r={id:"tc-".concat(t.timestamp,"-").concat(t.fromAgentId,"-").concat(t.messageType,"-").concat(null!=(O=t.toAgentId)?O:""),fromAgentId:t.fromAgentId,fromAgentName:null!=(L=null==o?void 0:o.name)?L:t.fromAgentId,toAgentId:t.toAgentId,toAgentName:null!=(R=null==n?void 0:n.name)?R:t.toAgentId,message:t.message,messageType:t.messageType,timestamp:t.timestamp};if(e.teamMessages.some(e=>e.id===r.id))break;let l=[...e.teamMessages,r];return c(l),{agents:Y,teamMessages:l}}case"TASK_QUEUED":{let e=null!=(_=Y.get(t.agentId))?_:u(t.agentId),o=t.taskId+"-queued";e.messages.some(e=>e.id===o)||Y.set(t.agentId,{...e,messages:[...e.messages,{id:o,role:"system",text:"Task queued (position #".concat(t.position,"): ").concat(t.prompt.slice(0,100)),timestamp:Date.now()}]});break}case"TOKEN_UPDATE":{let e=null!=(z=Y.get(t.agentId))?z:u(t.agentId),o=null!=(H=e._tokenBaseline)?H:{inputTokens:0,outputTokens:0};Y.set(t.agentId,{...e,tokenUsage:{inputTokens:o.inputTokens+t.inputTokens,outputTokens:o.outputTokens+t.outputTokens}});break}case"AGENT_DEFS":return{agents:Y,agentDefs:t.agents};case"TEAM_PHASE":{let o=new Map(e.teamPhases);return o.set(t.teamId,{phase:t.phase,leadAgentId:t.leadAgentId}),p(o),{agents:Y,teamPhases:o}}case"SUGGESTION":{let o=[...e.suggestions,{text:t.text,author:t.author,timestamp:t.timestamp}];return o.length>50&&o.shift(),{agents:Y,suggestions:o}}case"PREVIEW_READY":return{agents:Y,pendingPreviewUrl:t.url};case"PROJECT_LIST":return{agents:Y,projectList:t.projects};case"PROJECT_DATA":return{agents:Y,viewingProjectId:t.projectId,viewingProjectName:t.name,viewingProjectEvents:t.events}}return{agents:Y}})}}))},533:(e,t,o)=>{"use strict";o.r(t),o.d(t,{default:()=>ei});var n=o(206),r=o(1406),l=o(4717),a=o(138),i=o(5026),s=o(5149),c=o(2001),d=o(7441),p=o(2988),u=o(5195),g=o(2243);class f{pushUndo(e){this.undoStack.push(e),this.undoStack.length>g.k2&&this.undoStack.shift()}popUndo(){return this.undoStack.pop()||null}pushRedo(e){this.redoStack.push(e),this.redoStack.length>g.k2&&this.redoStack.shift()}popRedo(){return this.redoStack.pop()||null}clearRedo(){this.redoStack=[]}clearSelection(){this.selectedFurnitureUid=null}clearGhost(){this.ghostCol=-1,this.ghostRow=-1,this.ghostValid=!1}startDrag(e,t,o,n,r){this.dragUid=e,this.dragStartCol=t,this.dragStartRow=o,this.dragOffsetCol=n,this.dragOffsetRow=r,this.isDragMoving=!1}clearDrag(){this.dragUid=null,this.isDragMoving=!1}reset(){this.activeTool=u.VF.SELECT,this.selectedFurnitureUid=null,this.ghostCol=-1,this.ghostRow=-1,this.ghostValid=!1,this.isDragging=!1,this.wallDragAdding=null,this.undoStack=[],this.redoStack=[],this.isDirty=!1,this.dragUid=null,this.isDragMoving=!1}constructor(){this.isEditMode=!1,this.activeTool=u.VF.SELECT,this.selectedTileType=u.nb.FLOOR_1,this.selectedFurnitureType="desk",this.floorColor={...g.Pk},this.wallColor={...g.fS},this.wallDragAdding=null,this.pickedFurnitureColor=null,this.ghostCol=-1,this.ghostRow=-1,this.ghostValid=!1,this.selectedFurnitureUid=null,this.isDragging=!1,this.undoStack=[],this.redoStack=[],this.isDirty=!1,this.dragUid=null,this.dragStartCol=0,this.dragStartRow=0,this.dragOffsetCol=0,this.dragOffsetRow=0,this.isDragMoving=!1}}var m=o(1204),h=o(9892);let x={external:"#5aacff",team:"#d4a017",normal:"#8a7a6a"};function y(e){if(e.isExternal){var t;return{label:"".concat(null!=(t=e.pid)?t:"?"),color:x.external}}return{label:e.name.split(/[\s(]/)[0],color:e.teamId?x.team:x.normal}}function b(e){return e.pendingApproval?"permission":"working"===e.status?"working":"done"===e.status||"error"===e.status?"waiting":null}var k=o(5282);let S=(0,k.default)(()=>o.e(368).then(o.bind(o,368)),{loadableGenerated:{webpack:()=>[368]},ssr:!1}),v=(0,k.default)(()=>o.e(810).then(o.bind(o,9810)),{loadableGenerated:{webpack:()=>[9810]},ssr:!1});(0,k.default)(()=>o.e(290).then(o.bind(o,9290)),{loadableGenerated:{webpack:()=>[9290]},ssr:!1});let C=(0,k.default)(()=>Promise.all([o.e(712),o.e(29)]).then(o.bind(o,6029)),{loadableGenerated:{webpack:()=>[6029]},ssr:!1}),T=(0,k.default)(()=>o.e(757).then(o.bind(o,3757)),{loadableGenerated:{webpack:()=>[3757]},ssr:!1}),j=(0,k.default)(()=>o.e(336).then(o.bind(o,336)),{loadableGenerated:{webpack:()=>[336]},ssr:!1}),w=(0,k.default)(()=>Promise.all([o.e(712),o.e(632)]).then(o.bind(o,632)),{loadableGenerated:{webpack:()=>[632]},ssr:!1}),E={idle:{color:"#7a7060",label:"Idle"},working:{color:"#5aacff",label:"Working..."},waiting_approval:{color:"#e89030",label:"Needs Approval"},done:{color:"#48cc6a",label:"Done"},error:{color:"#e04848",label:"Error"}},A=/\[?(https?:\/\/[^\s)>\]]+)\]?|((?:open\s+)?\/[\w./-]+\.\w+)/g;function I(e){let{logLine:t}=e;return(0,n.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,n.jsxs)("div",{style:{padding:"8px 12px",backgroundColor:"#1e1a30",color:"#7a8a6a",fontSize:12,fontFamily:"monospace",border:"1px solid #3d2e54",borderLeft:"2px solid #e8b04060",maxWidth:"100%",overflow:"hidden",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:[(0,n.jsx)("span",{style:{opacity:.5,marginRight:6},children:">"}),t||"Thinking..."]})})}let F=[{key:"creativity",label:"Creativity",icon:"✦"},{key:"visual",label:"Visual",icon:"◈"},{key:"interaction",label:"Interaction",icon:"⚡"},{key:"completeness",label:"Completeness",icon:"●"},{key:"engagement",label:"Engagement",icon:"♥"}];function W(e){let{label:t,icon:o,value:l,onChange:a}=e,[i,s]=(0,r.useState)(0);return(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,height:24},children:[(0,n.jsxs)("span",{style:{width:100,fontSize:11,color:"rgba(255,255,255,0.5)",fontFamily:"monospace"},children:[o," ",t]}),(0,n.jsx)("div",{style:{display:"flex",gap:2},onMouseLeave:()=>s(0),children:[1,2,3,4,5].map(e=>(0,n.jsx)("span",{onClick:()=>a(e===l?0:e),onMouseEnter:()=>s(e),style:{cursor:"pointer",fontSize:14,lineHeight:1,color:e<=(i||l)?"#e8b040":"rgba(255,255,255,0.15)",transition:"color 0.1s"},children:"★"},e))}),l>0&&(0,n.jsxs)("span",{style:{fontSize:10,color:"rgba(255,255,255,0.3)",fontFamily:"monospace"},children:[l,"/5"]})]})}function D(e){let{url:t,onClose:o,savedRatings:l,submitted:a,onRate:i}=e,[s,c]=(0,r.useState)("loading"),[d,p]=(0,r.useState)(!1),[u,g]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{c("loading");let e=setTimeout(()=>c("ready"),3e3);return()=>clearTimeout(e)},[t]),(0,n.jsxs)("div",{style:{position:"fixed",inset:0,zIndex:9999,backgroundColor:"rgba(0,0,0,0.85)",display:"flex",flexDirection:"column"},children:[(0,n.jsxs)("div",{style:{height:40,display:"flex",alignItems:"center",padding:"0 12px",backgroundColor:"#1a1530",gap:8},children:[(0,n.jsx)("span",{style:{flex:1,color:"#888",fontSize:14,fontFamily:"monospace",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t}),(0,n.jsx)("button",{onClick:()=>p(!0),style:{background:a?"rgba(72,204,106,0.1)":"none",border:a?"1px solid rgba(72,204,106,0.3)":"1px solid rgba(232,176,64,0.3)",color:a?"#48cc6a":"#e8b040",fontSize:11,cursor:"pointer",padding:"2px 10px",fontFamily:"monospace"},children:a?"Rated ✓":"★ Rate"}),(0,n.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",style:{color:"#e8b040",fontSize:12,textDecoration:"none",padding:"2px 8px",border:"1px solid #3d2d10",fontFamily:"monospace"},children:"Open in tab"}),(0,n.jsx)("button",{onClick:()=>{g(!0)},style:{background:"none",border:"1px solid #444",color:"#aaa",fontSize:17,cursor:"pointer",borderRadius:6,width:28,height:28,display:"flex",alignItems:"center",justifyContent:"center"},children:"✕"})]}),(0,n.jsxs)("div",{style:{flex:1,position:"relative"},children:["loading"===s&&(0,n.jsxs)("div",{style:{position:"absolute",inset:0,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:16},children:[(0,n.jsx)("div",{style:{width:32,height:32,border:"3px solid #333",borderTopColor:"#818cf8",borderRadius:"50%",animation:"preview-spin 0.8s linear infinite"}}),(0,n.jsx)("div",{style:{color:"#888",fontSize:15},children:"Starting server..."}),(0,n.jsx)("style",{children:"@keyframes preview-spin { to { transform: rotate(360deg); } }"})]}),"ready"===s&&(0,n.jsx)("iframe",{src:t,style:{width:"100%",height:"100%",border:"none",...u||d?{pointerEvents:"none",visibility:"hidden"}:{}},onLoad:e=>e.target.focus()})]}),(d||u)&&(0,n.jsx)(z,{initialRatings:l,onSubmit:e=>{i(e),p(!1),u&&o()},onSkip:()=>{p(!1),u&&o()}})]})}function P(){let e=(0,r.useRef)(null);return(0,r.useEffect)(()=>{let t,o=e.current;if(!o)return;let n=o.getContext("2d");if(!n)return;o.width=window.innerWidth,o.height=window.innerHeight;let r=["#ff6b6b","#feca57","#48dbfb","#ff9ff3","#54a0ff","#5f27cd","#01a3a4","#ff5e57","#0abde3","#10ac84"],l=[],a=o.width,i=o.height;for(let e=0;e<120;e++)l.push({x:Math.random()*a,y:-Math.random()*i*.8,vx:(Math.random()-.5)*2,vy:1.5+3*Math.random(),w:6+8*Math.random(),h:4+6*Math.random(),rot:Math.random()*Math.PI*2,rotSpeed:(Math.random()-.5)*.15,color:r[Math.floor(Math.random()*r.length)],alpha:1});let s=performance.now(),c=e=>{let o=e-s,r=o>2200?Math.max(0,1-(o-2200)/800):1;for(let t of(n.clearRect(0,0,a,i),l))t.x+=t.vx+.5*Math.sin(.002*e+t.rot),t.y+=t.vy,t.rot+=t.rotSpeed,t.x<-20&&(t.x=a+20),t.x>a+20&&(t.x=-20),t.y>i+20&&(t.y=-10,t.x=Math.random()*a),n.save(),n.translate(t.x,t.y),n.rotate(t.rot),n.globalAlpha=r,n.fillStyle=t.color,n.fillRect(-t.w/2,-t.h/2,t.w,t.h),n.restore();o<3e3&&(t=requestAnimationFrame(c))};return t=requestAnimationFrame(c),()=>cancelAnimationFrame(t)},[]),(0,n.jsx)("canvas",{ref:e,style:{position:"fixed",inset:0,zIndex:1e4,pointerEvents:"none"}})}function O(e){return e.previewUrl?e.previewUrl:e.previewCmd&&e.previewPort?"http://localhost:9101":e.previewPath?"http://localhost:9100/".concat(e.previewPath.split("/").pop()):e.entryFile&&/\.html?$/i.test(e.entryFile)?"http://localhost:9100/".concat(e.entryFile.split("/").pop()):void 0}function L(e){return!!(e.previewUrl||e.previewCmd&&e.previewPort||e.previewPath||e.entryFile&&/\.html?$/i.test(e.entryFile))}function R(e){if(e)return e.replace(/\*\*/g,"").replace(/`/g,"").replace(/^_+|_+$/g,"").trim()||void 0}function _(e){let t=R(e.previewCmd),o=R(e.entryFile),n=R(e.previewPath);return t&&e.previewPort?{type:"SERVE_PREVIEW",previewCmd:t,previewPort:e.previewPort,cwd:e.projectDir}:n?{type:"SERVE_PREVIEW",filePath:n}:o&&/\.html?$/i.test(o)&&e.projectDir?{type:"SERVE_PREVIEW",filePath:e.projectDir+"/"+o}:t?{type:"SERVE_PREVIEW",previewCmd:t,cwd:e.projectDir}:o&&!/\.html?$/i.test(o)?{type:"SERVE_PREVIEW",previewCmd:o,cwd:e.projectDir}:null}function z(e){let{onSubmit:t,onSkip:o,initialRatings:l}=e,[a,i]=(0,r.useState)(null!=l?l:{}),s=Object.values(a).some(e=>e&&e>0);return(0,n.jsx)("div",{style:{position:"fixed",inset:0,zIndex:1e4,backgroundColor:"rgba(0,0,0,0.75)",display:"flex",alignItems:"center",justifyContent:"center"},onClick:o,children:(0,n.jsxs)("div",{style:{backgroundColor:"#1a1530",padding:"22px 20px",border:"2px solid rgba(232,176,64,0.4)",boxShadow:"0 0 40px rgba(200,155,48,0.1)",width:280},onClick:e=>e.stopPropagation(),children:[(0,n.jsx)("div",{style:{fontSize:13,color:"#e8b040",fontFamily:"monospace",fontWeight:600,marginBottom:14,textAlign:"center"},children:"Rate this project"}),(0,n.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:F.map(e=>{var t;return(0,n.jsx)(W,{label:e.label,icon:e.icon,value:null!=(t=a[e.key])?t:0,onChange:t=>i(o=>({...o,[e.key]:t}))},e.key)})}),(0,n.jsxs)("div",{style:{display:"flex",gap:8,marginTop:16,justifyContent:"center"},children:[(0,n.jsx)("button",{onClick:o,style:{padding:"6px 16px",border:"1px solid rgba(255,255,255,0.1)",background:"none",color:"rgba(255,255,255,0.35)",fontSize:11,fontFamily:"monospace",cursor:"pointer"},children:"Skip"}),(0,n.jsx)("button",{onClick:()=>{s&&t(Object.fromEntries(Object.entries(a).filter(e=>{let[,t]=e;return t&&t>0})))},disabled:!s,style:{padding:"6px 16px",border:"1px solid rgba(72,204,106,0.3)",background:s?"rgba(72,204,106,0.12)":"rgba(255,255,255,0.03)",color:s?"#48cc6a":"rgba(255,255,255,0.2)",fontSize:11,fontFamily:"monospace",cursor:s?"pointer":"default"},children:"Submit"})]})]})})}function H(e){let{previewUrl:t,previewPath:o,onPreview:r,onDismiss:l,previewCmd:a,previewPort:s,projectDir:c,entryFile:d}=e,p={previewUrl:t,previewCmd:a,previewPort:s,previewPath:o,entryFile:d},u=L(p),g=!u&&_({previewPath:o,previewCmd:a,previewPort:s,projectDir:c,entryFile:d});return(0,n.jsx)("div",{style:{position:"fixed",inset:0,zIndex:9999,backgroundColor:"rgba(0,0,0,0.7)",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.jsxs)("div",{style:{backgroundColor:"#231e38",padding:"28px 24px",maxWidth:420,width:"90%",textAlign:"center",border:"2px solid #e8b040",boxShadow:"0 0 40px rgba(200,155,48,0.15), 4px 4px 0px rgba(0,0,0,0.5)"},children:[(0,n.jsx)("div",{style:{fontSize:34,marginBottom:10},children:"★"}),(0,n.jsx)("div",{className:"px-font",style:{color:"#e8b040",fontSize:14,marginBottom:10,letterSpacing:"0.05em"},children:"Mission Complete!"}),(0,n.jsx)("div",{style:{color:"#9a8a68",fontSize:14,marginBottom:20,lineHeight:1.7,fontFamily:"monospace"},children:"Your task has been completed successfully. Ready for the next mission whenever you are."}),(0,n.jsxs)("div",{style:{display:"flex",gap:10,justifyContent:"center"},children:[u&&(0,n.jsx)("button",{onClick:()=>{let e=_({previewPath:o,previewCmd:a,previewPort:s,projectDir:c,entryFile:d});e&&(0,i.S8)(e);let t=O(p);t&&r(t)},style:{padding:"9px 20px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",fontSize:13,fontWeight:700,cursor:"pointer",fontFamily:"monospace"},children:"▶ Preview"}),g&&(0,n.jsx)("button",{onClick:()=>{let e=_({previewPath:o,previewCmd:a,previewPort:s,projectDir:c,entryFile:d});e&&(0,i.S8)(e),l()},style:{padding:"9px 20px",border:"1px solid #5aacff",backgroundColor:"#0f1e3a",color:"#5aacff",fontSize:13,fontWeight:700,cursor:"pointer",fontFamily:"monospace"},children:"▶ Launch"}),(0,n.jsx)("button",{onClick:l,style:{padding:"9px 20px",border:"1px solid #3d2e54",backgroundColor:"#1e1a30",color:"#9a8a68",fontSize:13,cursor:"pointer",fontFamily:"monospace"},children:"OK"})]})]})})}function Y(e){let{message:t,onConfirm:o,onCancel:r}=e;return(0,n.jsx)("div",{style:{position:"fixed",inset:0,zIndex:1e4,backgroundColor:"rgba(0,0,0,0.65)",display:"flex",alignItems:"center",justifyContent:"center"},onClick:r,children:(0,n.jsxs)("div",{style:{backgroundColor:"#1a1a2e",borderRadius:14,padding:"28px 24px",maxWidth:380,width:"90%",textAlign:"center",border:"1px solid #333",boxShadow:"0 16px 48px rgba(0,0,0,0.5)"},onClick:e=>e.stopPropagation(),children:[(0,n.jsx)("div",{style:{color:"#eee",fontSize:17,lineHeight:1.6,marginBottom:24},children:t}),(0,n.jsxs)("div",{style:{display:"flex",gap:12,justifyContent:"center"},children:[(0,n.jsx)("button",{onClick:r,style:{padding:"9px 28px",borderRadius:8,border:"1px solid #444",backgroundColor:"#2a2a3e",color:"#aaa",fontSize:15,cursor:"pointer"},children:"No"}),(0,n.jsx)("button",{onClick:o,style:{padding:"9px 28px",borderRadius:8,border:"none",backgroundColor:"#dc2626",color:"#fff",fontSize:15,fontWeight:600,cursor:"pointer"},children:"Yes"})]})]})})}let M={pre(e){let{children:t}=e;return(0,n.jsx)("div",{style:{overflowX:"auto",margin:"6px 0",WebkitOverflowScrolling:"touch"},children:t})},p(e){let{children:t}=e;return(0,n.jsx)("div",{style:{margin:"4px 0"},children:t})},code(e){var t;let{className:o,children:r,...l}=e,a=String(r).replace(/\n$/,""),s=(null==o?void 0:o.includes("language-"))||a.includes("\n"),c=a.match(/^open\s+(\/\S+)/),d=c?null:a.match(/^(\/[\w./-]+\.\w+)$/),p=null!=(t=null==c?void 0:c[1])?t:null==d?void 0:d[1];return p?(0,n.jsxs)("pre",{onClick:()=>(0,i.S8)({type:"OPEN_FILE",path:p}),style:{backgroundColor:"#1a1830",padding:"8px 10px",borderRadius:6,fontSize:13,cursor:"pointer",border:"1px solid #2a2a4a",display:"flex",alignItems:"center",gap:8,whiteSpace:"pre-wrap",wordBreak:"break-all"},title:"Click to open",children:[(0,n.jsx)("span",{style:{fontSize:15},children:"\uD83D\uDD17"}),(0,n.jsx)("code",{style:{fontFamily:"monospace",color:"#818cf8"},...l,children:a})]}):s?(0,n.jsx)("pre",{style:{backgroundColor:"#1a1830",padding:"8px 10px",borderRadius:6,fontSize:13,whiteSpace:"pre-wrap",wordBreak:"break-all"},children:(0,n.jsx)("code",{style:{fontFamily:"monospace",color:"#a5b4fc"},...l,children:r})}):(0,n.jsx)("code",{style:{backgroundColor:"#1a1830",padding:"1px 5px",borderRadius:4,fontFamily:"monospace",color:"#a5b4fc",fontSize:14},...l,children:r})},table(e){let{children:t}=e;return(0,n.jsx)("div",{style:{overflowX:"auto",margin:"6px 0",WebkitOverflowScrolling:"touch"},children:(0,n.jsx)("table",{style:{borderCollapse:"collapse",fontSize:14,whiteSpace:"nowrap"},children:t})})},th(e){let{children:t}=e;return(0,n.jsx)("th",{style:{padding:"4px 10px",borderBottom:"1px solid #444",textAlign:"left",color:"#e2e8f0"},children:t})},td(e){let{children:t}=e;return(0,n.jsx)("td",{style:{padding:"4px 10px",borderBottom:"1px solid #222"},children:t})},ul(e){let{children:t}=e;return(0,n.jsx)("ul",{style:{margin:"4px 0",paddingLeft:18},children:t})},ol(e){let{children:t}=e;return(0,n.jsx)("ol",{style:{margin:"4px 0",paddingLeft:18},children:t})},a(e){let{href:t,children:o}=e;return(0,n.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",style:{color:"#818cf8",textDecoration:"underline",wordBreak:"break-all"},children:o})},strong(e){let{children:t}=e;return(0,n.jsx)("strong",{style:{color:"#f0f0f0"},children:t})}};function N(e){return e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"k":String(e)}function U(e){let{inputTokens:t,outputTokens:o}=e;return 0===t&&0===o?null:(0,n.jsxs)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:"#48cc6a18",color:"#48cc6a",border:"1px solid #48cc6a40",fontFamily:"monospace",whiteSpace:"nowrap"},title:"Input: ".concat(t.toLocaleString()," / Output: ").concat(o.toLocaleString()),children:["↑",N(t)," ","↓",N(o)]})}function B(e){let{text:t}=e;return(0,n.jsx)(d.oz,{urlTransform:e=>e,components:M,children:t.replace(/(https?:\/\/[^\s)>\]]+)/g,"[$1]($1)")})}function G(e){var t,o,l,a,s,c,d,p,u,g;let{msg:f,onPreview:m,isTeamLead:h,isTeamMember:x,teamPhase:y}=e,[b,k]=(0,r.useState)(!1);if("user"===f.role)return(0,n.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:8},children:(0,n.jsx)("div",{style:{maxWidth:"80%",padding:"8px 12px",backgroundColor:"#382800",color:"#eddcb8",fontSize:14,wordBreak:"break-word",border:"1px solid #e8b04050",borderLeft:"2px solid #e8b040"},children:function e(t){if("string"==typeof t){let e,o=[],r=0;for(A.lastIndex=0;null!==(e=A.exec(t));){e.index>r&&o.push(t.slice(r,e.index));let l=e[1],a=e[2];if(l)o.push((0,n.jsx)("a",{href:l,target:"_blank",rel:"noopener noreferrer",style:{color:"#e8b040",textDecoration:"underline"},children:l},e.index));else if(a){let t=a.replace(/^open\s+/,"");o.push((0,n.jsx)("span",{onClick:()=>(0,i.S8)({type:"OPEN_FILE",path:t}),style:{color:"#e8b040",textDecoration:"underline",cursor:"pointer",fontFamily:"monospace",fontSize:14},title:"Click to open",children:a},e.index))}r=e.index+e[0].length}return 0===o.length?t:(r<t.length&&o.push(t.slice(r)),o)}return Array.isArray(t)?t.map((t,o)=>"string"==typeof t?e(t):t):t}(f.text)})});if("system"===f.role){let e=f.text.startsWith("Delegated to "),t=f.text.startsWith("Result from "),o=f.text.startsWith("Task queued "),r=e||t||o,l=e?"#5aacff44":t?"#48cc6a44":o?"#e8b04044":"#e0484844";return(0,n.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,n.jsxs)("div",{style:{maxWidth:"80%",padding:"8px 12px",backgroundColor:e?"#182844":t?"#143822":o?"#282010":"#3e1818",border:"1px solid ".concat(l),color:e?"#7ab8f5":t?"#7ad89a":o?"#e8b040":"#c87070",fontSize:r?11:13,wordBreak:"break-word",fontFamily:"monospace"},className:"chat-markdown",children:[r&&(0,n.jsx)("span",{style:{fontSize:10,opacity:.6,marginRight:4},children:e?"[delegation]":t?"[result]":"[queued]"}),(0,n.jsx)(B,{text:f.text})]})})}let S=!!((null==(t=f.result)?void 0:t.fullOutput)&&f.result.fullOutput!==f.text&&f.result.fullOutput.length>f.text.length+20),v=f.text.match(/\[PLAN\]([\s\S]*?)\[\/PLAN\]/i),C=null==v||null==(o=v[1])?void 0:o.trim(),T=C?f.text.replace(/\[PLAN\][\s\S]*?\[\/PLAN\]/i,"").trim():null;if(h&&f.isFinalResult&&f.result){let e=f.result,t=e.summary.replace(/ENTRY_FILE:\s*.+/gi,"").replace(/PROJECT_DIR:\s*.+/gi,"").replace(/SUMMARY:\s*/gi,"").trim(),o=null!=(p=e.entryFile)?p:null==(s=e.summary.match(/ENTRY_FILE:\s*(.+)/i))||null==(a=s[1])?void 0:a.trim(),r=null!=(u=e.projectDir)?u:null==(d=e.summary.match(/PROJECT_DIR:\s*(.+)/i))||null==(c=d[1])?void 0:c.trim(),l=null!=(g=e.changedFiles)?g:[];return(0,n.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,n.jsxs)("div",{style:{maxWidth:"90%",width:"100%",border:"2px solid #48cc6a",backgroundColor:"#0a1f12",overflow:"hidden"},children:[(0,n.jsxs)("div",{style:{padding:"10px 14px",backgroundColor:"#143a14",borderBottom:"1px solid #48cc6a40",display:"flex",alignItems:"center",gap:8},children:[(0,n.jsx)("span",{style:{fontSize:15},children:"✓"}),(0,n.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"#48cc6a",fontFamily:"monospace",letterSpacing:"0.08em"},children:"PROJECT DELIVERED"})]}),(0,n.jsx)("div",{style:{padding:"12px 14px"},className:"chat-markdown",children:(0,n.jsx)("div",{style:{color:"#d8c8a8",fontSize:14,lineHeight:1.6},children:(0,n.jsx)(B,{text:t||"Project completed successfully."})})}),(r||o)&&(0,n.jsxs)("div",{style:{padding:"8px 14px",borderTop:"1px solid #48cc6a20",display:"flex",gap:16,flexWrap:"wrap"},children:[r&&(0,n.jsxs)("div",{style:{fontSize:12,fontFamily:"monospace"},children:[(0,n.jsx)("span",{style:{color:"#7a8a6a"},children:"Directory: "}),(0,n.jsx)("span",{style:{color:"#e8b040"},children:r})]}),o&&(0,n.jsxs)("div",{style:{fontSize:12,fontFamily:"monospace"},children:[(0,n.jsx)("span",{style:{color:"#7a8a6a"},children:"Entry: "}),(0,n.jsx)("span",{style:{color:"#e8b040",cursor:"pointer",textDecoration:"underline"},onClick:()=>(0,i.S8)({type:"OPEN_FILE",path:o}),children:o})]})]}),l.length>0&&(0,n.jsxs)("div",{style:{padding:"8px 14px",borderTop:"1px solid #48cc6a20"},children:[(0,n.jsxs)("div",{style:{fontSize:11,color:"#7a8a6a",marginBottom:4,fontFamily:"monospace"},children:[l.length," FILES"]}),l.slice(0,8).map((e,t)=>(0,n.jsx)("div",{style:{fontSize:12,fontFamily:"monospace",color:"#b8a878",padding:"1px 0"},children:e},t)),l.length>8&&(0,n.jsxs)("div",{style:{fontSize:11,color:"#5a4838",fontFamily:"monospace"},children:["...and ",l.length-8," more"]})]}),L(e)&&m&&(0,n.jsx)("div",{style:{padding:"10px 14px",borderTop:"1px solid #48cc6a20"},children:(0,n.jsx)("button",{onClick:()=>{let t=_(e);t&&(0,i.S8)(t);let o=O(e);o&&m(o)},style:{width:"100%",padding:"10px 16px",backgroundColor:"#143a14",color:"#48cc6a",border:"1px solid #48cc6a50",cursor:"pointer",fontSize:13,fontWeight:700,fontFamily:"monospace"},children:"▶ Preview Result"})}),!L(e)&&_(e)&&(0,n.jsx)("div",{style:{padding:"10px 14px",borderTop:"1px solid #48cc6a20"},children:(0,n.jsx)("button",{onClick:()=>{let t=_(e);t&&(0,i.S8)(t)},style:{width:"100%",padding:"10px 16px",backgroundColor:"#0f1e3a",color:"#5aacff",border:"1px solid #5aacff50",cursor:"pointer",fontSize:13,fontWeight:700,fontFamily:"monospace"},children:"▶ Launch App"})}),(0,n.jsx)("div",{style:{padding:"8px 14px",borderTop:"1px solid #48cc6a20",fontSize:12,color:"#5a7a5a",fontFamily:"monospace"},children:"Send feedback to request changes, or End Project to start fresh."})]})})}return(0,n.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,n.jsxs)("div",{style:{maxWidth:"85%",padding:"8px 12px",backgroundColor:"#231e38",color:"#d8c8a8",fontSize:14,wordBreak:"break-word",overflow:"hidden",minWidth:0,border:"1px solid #3d2e54",borderLeft:"2px solid #3d2e54"},className:"chat-markdown",children:[C?(0,n.jsxs)(n.Fragment,{children:[T&&(0,n.jsx)(B,{text:T}),(0,n.jsxs)("div",{style:{marginTop:8*!!T,padding:"10px 12px",border:"2px solid #e8b040",backgroundColor:"#261a00",borderRadius:0},children:[(0,n.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"#e8b040",fontFamily:"monospace",letterSpacing:"0.1em",marginBottom:8},children:"PROJECT PLAN"}),(0,n.jsx)("div",{style:{color:"#eddcb8",fontSize:13},children:(0,n.jsx)(B,{text:C})})]})]}):(0,n.jsx)(B,{text:b&&(null==(l=f.result)?void 0:l.fullOutput)?f.result.fullOutput:f.text}),S&&!C&&(0,n.jsx)("button",{onClick:()=>k(!b),style:{marginTop:6,padding:"3px 8px",backgroundColor:"transparent",color:"#e8b040",border:"1px solid #e8b04040",cursor:"pointer",fontSize:11,fontFamily:"monospace"},children:b?"▲ Collapse":"▼ Full output"}),f.result&&f.result.changedFiles.length>0&&!C&&(0,n.jsxs)("div",{style:{marginTop:8,padding:"6px 8px",backgroundColor:"#1a1530",fontSize:12,border:"1px solid #3d2e54"},children:[(0,n.jsxs)("div",{style:{color:"#7a6858",marginBottom:4,fontFamily:"monospace"},children:["Changed ",f.result.changedFiles.length," files"]}),f.result.changedFiles.slice(0,5).map((e,t)=>(0,n.jsx)("div",{style:{fontFamily:"monospace",color:"#e8b040",opacity:.8},children:e},t)),f.result.changedFiles.length>5&&(0,n.jsxs)("div",{style:{color:"#7a6858",fontFamily:"monospace"},children:["...and ",f.result.changedFiles.length-5," more"]})]}),f.result&&L(f.result)&&m&&!x&&!h&&(0,n.jsx)("button",{onClick:()=>{let e=f.result,t=_(e);t&&(0,i.S8)(t);let o=O(e);o&&setTimeout(()=>m(o),1500*!e.previewUrl)},style:{marginTop:8,padding:"5px 12px",backgroundColor:"#143a14",color:"#48cc6a",border:"1px solid #48cc6a50",cursor:"pointer",fontSize:12,fontWeight:700,fontFamily:"monospace"},children:"▶ Preview"})]})})}function X(e){let{palette:t,zoom:o=3,ready:l}=e,a=(0,r.useRef)(null);return(0,r.useEffect)(()=>{var e,n;let r=a.current;if(!r)return;let l=(0,p.Cr)(t);if(!l)return;let i=l.length,s=null!=(n=null==(e=l[0])?void 0:e.length)?n:0;r.width=s*o,r.height=i*o;let c=r.getContext("2d");if(c){c.clearRect(0,0,r.width,r.height);for(let e=0;e<i;e++)for(let t=0;t<s;t++){let n=l[e][t];n&&(c.fillStyle=n,c.fillRect(t*o,e*o,o,o))}}},[t,o,l]),(0,n.jsx)("canvas",{ref:a,style:{width:16*o,height:32*o,imageRendering:"pixelated"}})}function V(e){let{visible:t}=e,[o,l]=(0,r.useState)(0),[a,i]=(0,r.useState)(!1),[s,c]=(0,r.useState)(1),[d,p]=(0,r.useState)(!1);return((0,r.useEffect)(()=>{l(Math.floor(6*Math.random())),i(!0)},[]),(0,r.useEffect)(()=>{t&&(l(Math.floor(6*Math.random())),c(1),p(!1))},[t]),(0,r.useEffect)(()=>{if(!t&&a){let e=setTimeout(()=>c(0),50),t=setTimeout(()=>p(!0),700);return()=>{clearTimeout(e),clearTimeout(t)}}},[t,a]),d||!a)?null:(0,n.jsxs)("div",{style:{position:"absolute",inset:0,zIndex:50,background:"#0e0c1a",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:16,opacity:s,transition:"opacity 0.6s ease",pointerEvents:t?"auto":"none"},children:[(0,n.jsx)("style",{children:"\n @keyframes loading-walk-sprite {\n 0% { background-position-x: 0px; }\n 25% { background-position-x: -64px; }\n 50% { background-position-x: -128px; }\n 75% { background-position-x: -64px; }\n 100% { background-position-x: 0px; }\n }\n @keyframes loading-walk-move {\n 0% { transform: translateX(-60px) scaleX(1); }\n 45% { transform: translateX(60px) scaleX(1); }\n 50% { transform: translateX(60px) scaleX(-1); }\n 95% { transform: translateX(-60px) scaleX(-1); }\n 100% { transform: translateX(-60px) scaleX(1); }\n }\n "}),(0,n.jsx)("div",{style:{position:"relative",width:64,height:128},children:(0,n.jsx)("div",{style:{width:64,height:128,backgroundImage:"url(".concat("/assets/characters/char_".concat(o,".png"),")"),backgroundSize:"448px 384px",backgroundPositionY:"-256px",imageRendering:"pixelated",animation:"loading-walk-sprite 0.5s steps(1) infinite, loading-walk-move 3s linear infinite"}})}),(0,n.jsxs)("div",{style:{fontFamily:"monospace",fontSize:13,color:"#7a6858",letterSpacing:"0.05em"},children:["Loading office",(0,n.jsx)("span",{style:{display:"inline-block",width:"1.5em",textAlign:"left"},children:(0,n.jsx)(K,{})})]})]})}function K(){let[e,t]=(0,r.useState)("");return(0,r.useEffect)(()=>{let e=setInterval(()=>{t(e=>e.length>=3?"":e+".")},400);return()=>clearInterval(e)},[]),(0,n.jsx)(n.Fragment,{children:e})}let J=[{id:"claude",name:"Claude",color:"#d97706"},{id:"codex",name:"Codex",color:"#a855f7"},{id:"gemini",name:"Gemini",color:"#3b82f6"},{id:"aider",name:"Aider",color:"#22c55e"},{id:"opencode",name:"OpenCode",color:"#06b6d4"}],Z=[{label:"Friendly & Casual",value:"You speak in a friendly, casual, encouraging, and natural tone."},{label:"Professional & Concise",value:"You speak formally, professionally, in an organized and concise manner."},{label:"Aggressive & Fast",value:"You are aggressive, action-first, always pursuing speed and efficiency."},{label:"Patient Mentor",value:"You teach patiently, explain the reasoning, and guide like a mentor."}],q=["Frontend Dev","Backend Dev","Fullstack Dev","Game Dev","Data Scientist","DevOps Engineer","Mobile Dev","UI/UX Designer","QA Engineer"],$={"Frontend Dev":["React","Next.js","CSS","TypeScript","Vue","Tailwind","HTML","Webpack"],"Backend Dev":["Node.js","Python","APIs","Database","SQL","Redis","GraphQL","Docker"],"Fullstack Dev":["React","Node.js","TypeScript","APIs","Database","CSS","Next.js","Docker"],"Game Dev":["PixiJS","Three.js","Canvas","Pygame","WebGL","Unity","Godot","TypeScript","Physics"],"Data Scientist":["Python","Pandas","ML","TensorFlow","Data Viz","Jupyter","NumPy","SQL"],"DevOps Engineer":["Docker","K8s","CI/CD","AWS","Terraform","Linux","Monitoring","Bash"],"Mobile Dev":["React Native","Swift","Kotlin","Flutter","iOS","Android","TypeScript","Expo"],"UI/UX Designer":["Figma","CSS","Design Systems","Prototyping","Animation","Accessibility","Tailwind"],"QA Engineer":["Testing","Cypress","Jest","Playwright","Automation","CI/CD","Performance","A11y"]};function Q(e){var t,o,l,a;let{onSave:i,onClose:s,assetsReady:d,editAgent:p}=e,[u,g]=(0,r.useState)(null!=(t=null==p?void 0:p.palette)?t:0),[f,m]=(0,r.useState)(null!=(o=null==p?void 0:p.name)?o:""),[h,x]=(0,r.useState)(()=>{if(!(null==p?void 0:p.role))return 0;let e=q.indexOf(p.role);return e>=0?e:-1}),[y,b]=(0,r.useState)(()=>(null==p?void 0:p.role)?q.indexOf(p.role)>=0?"":p.role:""),[k,S]=(0,r.useState)(()=>{var e,t;return new Set((null==p?void 0:p.skills)?p.skills.split(",").map(e=>e.trim()).filter(Boolean):null!=(t=null==(e=$[q[0]])?void 0:e.slice(0,4))?t:[])}),[v,C]=(0,r.useState)(""),T=h>=0?q[h]:y.trim(),j=h>=0&&null!=(l=$[q[h]])?l:[],w=e=>{S(t=>{let o=new Set(t);return o.has(e)?o.delete(e):o.add(e),o})},E=()=>{let e=v.trim();e&&!k.has(e)&&(S(t=>new Set(t).add(e)),C(""))},[A,I]=(0,r.useState)(()=>{if(!p)return 0;let e=Z.findIndex(e=>e.value===p.personality);return e>=0?e:4}),[F,W]=(0,r.useState)(null!=(a=null==p?void 0:p.personality)?a:""),D=A<4?Z[A].value:F;return(0,n.jsx)("div",{onClick:s,style:{position:"fixed",inset:0,backgroundColor:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:110},children:(0,n.jsxs)("div",{onClick:e=>e.stopPropagation(),style:{backgroundColor:"#1e1a30",padding:"18px 18px 14px",width:"90%",maxWidth:400,border:"2px solid #3d2e54",boxShadow:"4px 4px 0px rgba(0,0,0,0.5)",maxHeight:"90vh",overflowY:"auto"},children:[(0,n.jsx)("h2",{className:"px-font",style:{fontSize:14,margin:"0 0 12px",textAlign:"center",color:"#e8b040",letterSpacing:"0.05em"},children:p?"Edit Agent":"Create Agent"}),(0,n.jsxs)("div",{style:{marginBottom:10},children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"AVATAR"}),(0,n.jsx)("div",{style:{display:"flex",gap:4},children:[0,1,2,3,4,5].map(e=>(0,n.jsx)("button",{onClick:()=>g(e),style:{padding:3,border:u===e?"2px solid #e8b040":"2px solid #3d2e54",backgroundColor:u===e?"#382800":"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,n.jsx)(X,{palette:e,zoom:2,ready:d})},e))})]}),(0,n.jsxs)("div",{style:{marginBottom:8},children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"NAME"}),(0,n.jsx)("input",{value:f,onChange:e=>m(e.target.value),placeholder:"Agent name",style:{width:"100%",padding:"7px 10px",fontSize:14,fontFamily:"monospace",border:"1px solid #3d2e54",backgroundColor:"#14112a",color:"#eddcb8",boxSizing:"border-box"}})]}),(0,n.jsxs)("div",{style:{marginBottom:8},children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"ROLE"}),(0,n.jsxs)("select",{value:h,onChange:e=>(e=>{if(x(e),e>=0){var t;let o=null!=(t=$[q[e]])?t:[];o.some(e=>k.has(e))||S(new Set(o.slice(0,4)))}})(Number(e.target.value)),style:{width:"100%",padding:"7px 10px",fontSize:14,fontFamily:"monospace",border:"1px solid #3d2e54",backgroundColor:"#14112a",color:"#eddcb8",boxSizing:"border-box",cursor:"pointer"},children:[q.map((e,t)=>(0,n.jsx)("option",{value:t,children:e},e)),(0,n.jsx)("option",{value:-1,children:"Custom..."})]}),-1===h&&(0,n.jsx)("input",{value:y,onChange:e=>b(e.target.value),placeholder:"e.g. Python Expert",style:{width:"100%",padding:"7px 10px",fontSize:14,fontFamily:"monospace",border:"1px solid #3d2e54",backgroundColor:"#14112a",color:"#eddcb8",boxSizing:"border-box",marginTop:4}})]}),(0,n.jsxs)("div",{style:{marginBottom:8},children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"SKILLS"}),j.length>0&&(0,n.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginBottom:8},children:j.map(e=>{let t=k.has(e);return(0,n.jsx)("button",{onClick:()=>w(e),style:{padding:"4px 10px",fontSize:13,fontFamily:"monospace",border:t?"1px solid #e8b04080":"1px solid #3d2e54",backgroundColor:t?"#382800":"transparent",color:t?"#e8b040":"#7a6858",cursor:"pointer"},children:e},e)})}),(()=>{let e=Array.from(k).filter(e=>!j.includes(e));return 0===e.length?null:(0,n.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:5,marginBottom:8},children:e.map(e=>(0,n.jsxs)("span",{style:{padding:"4px 10px",fontSize:13,fontFamily:"monospace",border:"1px solid #5aacff60",backgroundColor:"#182844",color:"#5aacff",display:"flex",alignItems:"center",gap:4},children:[e,(0,n.jsx)("span",{onClick:()=>w(e),style:{cursor:"pointer",fontSize:15,lineHeight:1,color:"#5aacff80"},children:"\xd7"})]},e))})})(),(0,n.jsxs)("div",{style:{display:"flex",gap:4},children:[(0,n.jsx)("input",{value:v,onChange:e=>C(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),E())},placeholder:"Add custom skill...",style:{flex:1,padding:"6px 10px",fontSize:13,fontFamily:"monospace",border:"1px solid #3d2e54",backgroundColor:"#14112a",color:"#eddcb8",boxSizing:"border-box"}}),(0,n.jsx)("button",{onClick:E,style:{padding:"5px 12px",fontSize:15,fontWeight:700,border:"1px solid #3d2e54",backgroundColor:"transparent",color:"#7a6858",cursor:"pointer",fontFamily:"monospace"},children:"+"})]})]}),(0,n.jsxs)("div",{style:{marginBottom:10},children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"PERSONALITY"}),(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:[Z.map((e,t)=>(0,n.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:6,padding:"4px 6px",cursor:"pointer",fontSize:13,color:A===t?"#eddcb8":"#7a6858",fontFamily:"monospace"},children:[(0,n.jsx)("input",{type:"radio",name:"personality",checked:A===t,onChange:()=>I(t),style:{accentColor:"#e8b040",cursor:"pointer"}}),e.label]},t)),(0,n.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:6,padding:"4px 6px",cursor:"pointer",fontSize:13,color:4===A?"#eddcb8":"#7a6858",fontFamily:"monospace"},children:[(0,n.jsx)("input",{type:"radio",name:"personality",checked:4===A,onChange:()=>I(4),style:{accentColor:"#e8b040",cursor:"pointer"}}),"Custom"]}),4===A&&(0,n.jsx)("textarea",{value:F,onChange:e=>W(e.target.value),placeholder:"Describe the personality...",rows:2,style:{width:"100%",padding:"7px 10px",fontSize:13,fontFamily:"monospace",border:"1px solid #3d2e54",backgroundColor:"#14112a",color:"#eddcb8",resize:"vertical",boxSizing:"border-box",marginTop:2}})]})]}),(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("button",{onClick:()=>{var e,t;f.trim()&&i({id:p?p.id:(f.trim().toLowerCase().replace(/[^a-z0-9\u4e00-\u9fff]+/g,"-").replace(/^-|-$/g,"")||"agent")+"-".concat((0,c.Ak)(4)),name:f.trim(),role:T,skills:Array.from(k).join(", "),personality:D,palette:u,isBuiltin:null!=(e=null==p?void 0:p.isBuiltin)&&e,teamRole:null!=(t=null==p?void 0:p.teamRole)?t:"dev"})},style:{flex:1,padding:"9px",border:"1px solid #e8b04060",backgroundColor:"#382800",color:"#e8b040",fontSize:14,fontWeight:700,cursor:"pointer",fontFamily:"monospace",opacity:f.trim()?1:.4},disabled:!f.trim(),children:p?"Save":"Create"}),(0,n.jsx)("button",{onClick:s,style:{padding:"9px 16px",border:"1px solid #3d2e54",backgroundColor:"transparent",color:"#6a5848",fontSize:14,cursor:"pointer",fontFamily:"monospace"},children:"Cancel"})]})]})})}function ee(e){let{agentDefs:t,onHire:o,onCreate:l,onEdit:a,onDelete:i,onClose:s,assetsReady:c}=e,[d,p]=(0,r.useState)("claude"),[u,g]=(0,r.useState)(null),f=t.filter(e=>e.isBuiltin&&"leader"!==e.teamRole),m=t.filter(e=>!e.isBuiltin&&"leader"!==e.teamRole);return(0,n.jsx)("div",{onClick:s,style:{position:"fixed",inset:0,backgroundColor:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:100},children:(0,n.jsxs)("div",{onClick:e=>e.stopPropagation(),style:{backgroundColor:"#1e1a30",padding:"18px 18px 14px",width:"90%",maxWidth:420,border:"2px solid #3d2e54",boxShadow:"4px 4px 0px rgba(0,0,0,0.5)",maxHeight:"90vh",overflowY:"auto"},children:[(0,n.jsx)("h2",{className:"px-font",style:{fontSize:14,margin:"0 0 14px",textAlign:"center",color:"#e8b040",letterSpacing:"0.05em"},children:"Hire Agent"}),(0,n.jsxs)("div",{style:{marginBottom:12},children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:5,fontFamily:"monospace",letterSpacing:"0.05em"},children:"AI BACKEND"}),(0,n.jsx)("div",{style:{display:"flex",gap:4},children:J.map(e=>(0,n.jsx)("button",{onClick:()=>p(e.id),style:{flex:1,padding:"6px 4px",fontSize:13,fontWeight:600,border:d===e.id?"1px solid ".concat(e.color):"1px solid #3d2e54",backgroundColor:d===e.id?e.color+"20":"transparent",color:d===e.id?e.color:"#6a5848",cursor:"pointer",fontFamily:"monospace"},children:e.name},e.id))})]}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:5,fontFamily:"monospace",letterSpacing:"0.05em"},children:"BUILT-IN AGENTS"}),(0,n.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:5,marginBottom:10},children:f.map(e=>(0,n.jsxs)("button",{onClick:()=>o(e,d),onMouseEnter:t=>{g(e.id),t.currentTarget.style.borderColor="#e8b04040"},onMouseLeave:e=>{g(null),e.currentTarget.style.borderColor="#3d2e54"},title:e.skills?"Skills: ".concat(e.skills):void 0,style:{display:"flex",flexDirection:"column",alignItems:"center",padding:"12px 6px 10px",position:"relative",border:"1px solid #3d2e54",backgroundColor:"transparent",cursor:"pointer",textAlign:"center",transition:"border-color 0.15s"},children:[(0,n.jsx)(X,{palette:e.palette,zoom:2,ready:c}),(0,n.jsx)("div",{style:{fontSize:14,fontWeight:700,color:"#eddcb8",marginTop:6,width:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginTop:2,width:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.role}),u===e.id&&(0,n.jsx)("span",{onClick:t=>{t.stopPropagation(),a(e)},style:{position:"absolute",top:4,right:4,fontSize:15,color:"#7a6858",cursor:"pointer",padding:"2px 4px"},title:"Edit",children:"✎"})]},e.id))}),m.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:5,fontFamily:"monospace",letterSpacing:"0.05em"},children:"MY AGENTS"}),(0,n.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:5,marginBottom:10},children:m.map(e=>(0,n.jsxs)("button",{onClick:()=>o(e,d),onMouseEnter:t=>{g(e.id),t.currentTarget.style.borderColor="#e8b04040"},onMouseLeave:e=>{g(null),e.currentTarget.style.borderColor="#3d2e54"},title:e.skills?"Skills: ".concat(e.skills):void 0,style:{display:"flex",flexDirection:"column",alignItems:"center",padding:"12px 6px 10px",position:"relative",border:"1px solid #3d2e54",backgroundColor:"transparent",cursor:"pointer",textAlign:"center",transition:"border-color 0.15s"},children:[(0,n.jsx)(X,{palette:e.palette,zoom:2,ready:c}),(0,n.jsx)("div",{style:{fontSize:14,fontWeight:700,color:"#eddcb8",marginTop:6,width:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginTop:2,width:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.role}),u===e.id&&(0,n.jsxs)("span",{style:{position:"absolute",top:4,right:4,display:"flex",gap:2,alignItems:"center"},children:[(0,n.jsx)("span",{onClick:t=>{t.stopPropagation(),a(e)},style:{fontSize:15,color:"#7a6858",cursor:"pointer",padding:"2px 4px"},title:"Edit",children:"✎"}),(0,n.jsx)("span",{onClick:t=>{t.stopPropagation(),i(e.id)},style:{fontSize:16,color:"#e04848",cursor:"pointer",padding:"2px 4px",fontWeight:700},title:"Delete",children:"\xd7"})]})]},e.id))})]}),(0,n.jsx)("button",{onClick:s,style:{width:"100%",padding:"9px",border:"1px solid #3d2e54",backgroundColor:"transparent",color:"#6a5848",fontSize:14,cursor:"pointer",fontFamily:"monospace"},children:"Cancel"})]})})}let et={delegation:{bg:"#182844",border:"#5aacff",label:"Delegated"},result:{bg:"#143822",border:"#48cc6a",label:"Result"},status:{bg:"#261a00",border:"#e8b040",label:"Status"}};function eo(e){let{messages:t,agents:o,assetsReady:l}=e,a=(0,r.useRef)(null);return((0,r.useEffect)(()=>{var e;null==(e=a.current)||e.scrollIntoView({behavior:"smooth"})},[t.length]),0===t.length)?(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:30,fontSize:12,fontFamily:"monospace"},children:"No team activity yet. Hire a team and send a task to the Team Lead."}):(0,n.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"10px 12px",display:"flex",flexDirection:"column",gap:6},children:[t.map((e,t)=>{var r,a,i,s;if(!e||!e.fromAgentId)return null;let c=null!=(r=et[e.messageType])?r:et.status,d=o.get(e.fromAgentId),p=e.toAgentId?o.get(e.toAgentId):void 0,u=null!=(a=e.message)?a:"";return(0,n.jsxs)("div",{style:{padding:"8px 10px",backgroundColor:c.bg,borderLeft:"2px solid ".concat(c.border),border:"1px solid ".concat(c.border,"40")},children:[(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(null==d?void 0:d.palette)!==void 0&&(0,n.jsx)(X,{palette:d.palette,zoom:1,ready:l}),(0,n.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:null!=(i=e.fromAgentName)?i:e.fromAgentId}),e.toAgentName&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{style:{fontSize:11,color:"#6a5848"},children:"→"}),(null==p?void 0:p.palette)!==void 0&&(0,n.jsx)(X,{palette:p.palette,zoom:1,ready:l}),(0,n.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:e.toAgentName})]}),(0,n.jsx)("span",{style:{marginLeft:"auto",fontSize:9,padding:"1px 4px",backgroundColor:c.border+"20",color:c.border,border:"1px solid ".concat(c.border,"40"),fontFamily:"monospace"},children:c.label})]}),(0,n.jsxs)("div",{style:{fontSize:12,color:"#b09878",wordBreak:"break-word",maxHeight:120,overflow:"hidden",fontFamily:"monospace"},children:[u.slice(0,300),u.length>300?"...":""]}),(0,n.jsx)("div",{style:{fontSize:10,color:"#5a4838",marginTop:4,fontFamily:"monospace"},children:new Date(e.timestamp).toLocaleTimeString()})]},null!=(s=e.id)?s:"tc-".concat(t))}),(0,n.jsx)("div",{ref:a})]})}function en(e){var t,o,r;let{msg:l,agents:a,assetsReady:i,maxChars:s=150,shadow:c}=e,d=null!=(t=et[l.messageType])?t:et.status,p=a.get(l.fromAgentId),u=l.toAgentId?a.get(l.toAgentId):void 0,g=null!=(o=l.message)?o:"";return(0,n.jsxs)("div",{style:{padding:"8px 10px",backgroundColor:d.bg,borderLeft:"2px solid ".concat(d.border),border:"1px solid ".concat(d.border,"40"),boxShadow:c?"0 2px 12px rgba(0,0,0,0.5)":void 0},children:[(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(null==p?void 0:p.palette)!==void 0&&(0,n.jsx)(X,{palette:p.palette,zoom:1,ready:i}),(0,n.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:null!=(r=l.fromAgentName)?r:l.fromAgentId}),l.toAgentName&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{style:{fontSize:11,color:"#6a5848"},children:"→"}),(null==u?void 0:u.palette)!==void 0&&(0,n.jsx)(X,{palette:u.palette,zoom:1,ready:i}),(0,n.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:l.toAgentName})]}),(0,n.jsx)("span",{style:{marginLeft:"auto",fontSize:9,padding:"1px 4px",backgroundColor:d.border+"20",color:d.border,border:"1px solid ".concat(d.border,"40"),fontFamily:"monospace"},children:d.label})]}),(0,n.jsxs)("div",{style:{fontSize:12,color:"#b09878",wordBreak:"break-word",maxHeight:80,overflow:"hidden",fontFamily:"monospace"},children:[g.slice(0,s),g.length>s?"...":""]})]})}function er(e){let{messages:t,agents:o,assetsReady:l}=e,[a,i]=(0,r.useState)(null),[s,c]=(0,r.useState)(!1),d=(0,r.useRef)(t.length),p=(0,r.useRef)(null);return((0,r.useEffect)(()=>{if(t.length>d.current){let e=t[t.length-1];e&&e.fromAgentId&&(p.current&&clearTimeout(p.current),i(e),c(!0),p.current=setTimeout(()=>{c(!1),p.current=setTimeout(()=>i(null),400)},5e3))}d.current=t.length},[t.length,t]),(0,r.useEffect)(()=>()=>{p.current&&clearTimeout(p.current)},[]),a)?(0,n.jsx)("div",{style:{position:"absolute",top:0,right:0,zIndex:20,width:300,maxWidth:"40vw",transform:s?"translateX(0)":"translateX(calc(100% + 16px))",opacity:+!!s,transition:"transform 0.35s ease, opacity 0.35s ease",pointerEvents:"none"},children:(0,n.jsx)(en,{msg:a,agents:o,assetsReady:l,maxChars:120,shadow:!0})}):null}function el(e){let{messages:t,agents:o,assetsReady:l,onClear:a}=e,[i,s]=(0,r.useState)(!0),c=(0,r.useRef)(null);return(0,r.useEffect)(()=>{var e;i||null==(e=c.current)||e.scrollIntoView({behavior:"smooth"})},[t.length,i]),(0,n.jsxs)("div",{style:{borderTop:"1px solid #2e2448",padding:"6px 0"},children:[(0,n.jsxs)("div",{onClick:()=>s(!i),style:{padding:"4px 12px 6px",fontSize:10,color:"#6a5848",fontFamily:"monospace",letterSpacing:"0.05em",textTransform:"uppercase",cursor:"pointer",display:"flex",alignItems:"center",gap:6},children:[(0,n.jsx)("span",{style:{width:10,textAlign:"center"},children:i?"▶":"▼"}),"Activity (",t.length,")",a&&(0,n.jsx)("span",{onClick:e=>{e.stopPropagation(),a()},style:{marginLeft:"auto",fontSize:9,padding:"1px 5px",color:"#7a6858",border:"1px solid #3d2e5480",cursor:"pointer"},onMouseEnter:e=>{e.currentTarget.style.color="#e04848",e.currentTarget.style.borderColor="#e0484880"},onMouseLeave:e=>{e.currentTarget.style.color="#7a6858",e.currentTarget.style.borderColor="#3d2e5480"},children:"CLEAR"})]}),!i&&(0,n.jsxs)("div",{style:{overflowY:"auto",padding:"0 8px",display:"flex",flexDirection:"column",gap:4},children:[t.map((e,t)=>{var r;return e&&e.fromAgentId?(0,n.jsx)(en,{msg:e,agents:o,assetsReady:l},null!=(r=e.id)?r:"tc-".concat(t)):null}),(0,n.jsx)("div",{ref:c})]})]})}function ea(e){var t,o;let{agentDefs:l,onCreateTeam:a,onClose:i,assetsReady:s}=e,c=l.find(e=>"leader"===e.teamRole),d=l.find(e=>"reviewer"===e.teamRole),p=l.filter(e=>"dev"===e.teamRole),[u,g]=(0,r.useState)(null!=(o=null==(t=p[0])?void 0:t.id)?o:""),[f,m]=(0,r.useState)({}),h=[];return c&&h.push({def:c,label:"LEAD"}),d&&h.push({def:d,label:"REVIEWER"}),(0,n.jsx)("div",{onClick:i,style:{position:"fixed",inset:0,backgroundColor:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:100},children:(0,n.jsxs)("div",{onClick:e=>e.stopPropagation(),style:{backgroundColor:"#1e1a30",padding:"18px 18px 14px",width:"90%",maxWidth:440,border:"2px solid #3d2e54",boxShadow:"4px 4px 0px rgba(0,0,0,0.5)",maxHeight:"90vh",overflowY:"auto"},children:[(0,n.jsx)("h2",{className:"px-font",style:{fontSize:14,margin:"0 0 14px",textAlign:"center",color:"#e8b040",letterSpacing:"0.05em"},children:"Hire Team"}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:6,fontFamily:"monospace",letterSpacing:"0.05em"},children:"SELECT TEAM MEMBERS"}),(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,marginBottom:12},children:[h.map(e=>{var t;let{def:o,label:r}=e;return(0,n.jsxs)("div",{title:o.skills?"Skills: ".concat(o.skills):void 0,style:{display:"flex",alignItems:"center",gap:8,padding:"7px 10px",border:"1px solid #e8903070",backgroundColor:"#261a00",textAlign:"left"},children:[(0,n.jsx)(X,{palette:o.palette,zoom:2,ready:s}),(0,n.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,n.jsxs)("div",{style:{fontSize:15,fontWeight:700,color:"#eddcb8"},children:[o.name," ",(0,n.jsx)("span",{style:{color:"#e89030",fontSize:11,fontFamily:"monospace"},children:r})]}),(0,n.jsx)("div",{style:{fontSize:13,color:"#7a6858"},children:o.role})]}),(0,n.jsx)("select",{value:null!=(t=f[o.id])?t:"claude",onClick:e=>e.stopPropagation(),onChange:e=>m(t=>({...t,[o.id]:e.target.value})),style:{padding:"3px 6px",border:"1px solid #3d2e54",backgroundColor:"#1a1530",color:"#9a8a68",fontSize:12,cursor:"pointer",fontFamily:"monospace"},children:J.map(e=>(0,n.jsx)("option",{value:e.id,children:e.name},e.id))})]},o.id)}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginTop:4,marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"DEV AGENT (pick 1)"}),(0,n.jsx)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:5},children:p.map(e=>{var t;let o=u===e.id;return(0,n.jsxs)("button",{onClick:()=>g(e.id),title:e.skills?"Skills: ".concat(e.skills):void 0,style:{display:"flex",flexDirection:"column",alignItems:"center",padding:"12px 6px 10px",border:o?"1px solid #e8b04060":"1px solid #3d2e54",backgroundColor:o?"#2a2200":"transparent",cursor:"pointer",textAlign:"center",opacity:o?1:.5,transition:"opacity 0.15s, border-color 0.15s, background-color 0.15s"},children:[(0,n.jsx)(X,{palette:e.palette,zoom:2,ready:s}),(0,n.jsx)("div",{style:{fontSize:14,fontWeight:700,color:"#eddcb8",marginTop:6,width:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.name}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginTop:2,width:"100%",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.role}),(0,n.jsx)("select",{value:null!=(t=f[e.id])?t:"claude",onClick:t=>{t.stopPropagation(),g(e.id)},onChange:t=>{g(e.id),m(o=>({...o,[e.id]:t.target.value}))},style:{marginTop:6,padding:"3px 6px",border:"1px solid #3d2e54",backgroundColor:"#1a1530",color:"#9a8a68",fontSize:12,cursor:"pointer",fontFamily:"monospace"},children:J.map(e=>(0,n.jsx)("option",{value:e.id,children:e.name},e.id))})]},e.id)})})]}),(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("button",{onClick:()=>{if(!c)return;let e=[];u&&e.push(u),d&&e.push(d.id),a(c.id,e,f)},style:{flex:1,padding:"9px",border:"1px solid #e8b04060",backgroundColor:"#382800",color:"#e8b040",fontSize:14,fontWeight:700,cursor:"pointer",fontFamily:"monospace",opacity:c?1:.4},disabled:!c,children:"Create Team"}),(0,n.jsx)("button",{onClick:i,style:{padding:"9px 16px",border:"1px solid #3d2e54",backgroundColor:"transparent",color:"#6a5848",fontSize:14,cursor:"pointer",fontFamily:"monospace"},children:"Cancel"})]})]})})}function ei(){var e;let t=(0,l.useRouter)(),{agents:d,connected:p,addUserMessage:x,teamMessages:k,clearTeamMessages:A,teamPhases:F,agentDefs:W,role:L,suggestions:R,setRole:_}=(0,a.h)(),[z,M]=(0,r.useState)(null),[N,B]=(0,r.useState)(null),[K,Z]=(0,r.useState)({}),[q,$]=(0,r.useState)(!1),[et,en]=(0,r.useState)(null),[ei,es]=(0,r.useState)(!1),{confirm:ec,modal:ed}=function(){let[e,t]=(0,r.useState)(null),o=(0,r.useCallback)(e=>new Promise(o=>{t({message:e,resolve:o})}),[]),l=(0,r.useCallback)(()=>{null==e||e.resolve(!0),t(null)},[e]),a=(0,r.useCallback)(()=>{null==e||e.resolve(!1),t(null)},[e]);return{confirm:o,modal:e?(0,n.jsx)(Y,{message:e.message,onConfirm:l,onCancel:a}):null}}(),[ep,eu]=(0,r.useState)(!1),[eg,ef]=(0,r.useState)(!1),[em,eh]=(0,r.useState)(!1),[ex,ey]=(0,r.useState)(null),[eb,ek]=(0,r.useState)(!1),[eS,ev]=(0,r.useState)(!1),[eC,eT]=(0,r.useState)("agents"),[ej,ew]=(0,r.useState)(""),eE=(0,r.useRef)(null),[eA,eI]=(0,r.useState)(!1),[eF,eW]=(0,r.useState)(!1),[eD,eP]=(0,r.useState)(!1),[eO,eL]=(0,r.useState)(!1),[eR,e_]=(0,r.useState)(null),[ez,eH]=(0,r.useState)(!1),[eY,eM]=(0,r.useState)(!1),[eN,eU]=(0,r.useState)(!1),[eB,eG]=(0,r.useState)(!1),eX=new URLSearchParams(window.location.search).has("test");(0,r.useEffect)(()=>{eG(new URLSearchParams(window.location.search).has("demo"))},[]);let[eV,eK]=(0,r.useState)(1),[eJ,eZ]=(0,r.useState)(!0),[,eq]=(0,r.useState)(0),e$=(0,r.useRef)(new f),eQ=(0,r.useRef)(null),[e0,e1]=(0,r.useState)(null),e2=(0,r.useRef)(1),e8=(0,r.useRef)({x:0,y:0}),[e4,e5]=(0,r.useState)(!1),e3=(0,r.useRef)(new Set),e6=(0,r.useRef)(new Map),e9=(0,r.useRef)(new Map),e7=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!e0)return;let e=a.h.getState();for(let[o,n]of e.agents){var t;let{label:e,color:r}=y(n);e0.addAgent(o,{name:n.name,label:e,labelColor:r,isExternal:!!n.isExternal,palette:n.palette}),e0.updateAgent(o,n.status,b(n),!!n.teamId),e3.current.add(o),e6.current.set(o,n.messages.length),e9.current.set(o,null!=(t=n.lastLogLine)?t:null)}return e7.current=e.teamMessages.length,()=>{e3.current.clear(),e6.current.clear(),e9.current.clear(),e7.current=0}},[e0]),(0,r.useEffect)(()=>{if(e0)return a.h.subscribe(e=>{let t=new Set(e.agents.keys());for(let[t,n]of e.agents){var o;if(!e3.current.has(t)){let{label:e,color:o}=y(n);e0.addAgent(t,{name:n.name,label:e,labelColor:o,isExternal:!!n.isExternal,palette:n.palette}),e3.current.add(t)}e0.updateAgent(t,n.status,b(n),!!n.teamId);let e=null!=(o=e6.current.get(t))?o:0,r=n.messages.length;if(r>e){let e=n.messages[r-1];e&&"user"!==e.role&&e0.showSpeechBubble(t,e.text)}e6.current.set(t,r);let l=e9.current.get(t);n.lastLogLine&&n.lastLogLine!==l&&e0.showSpeechBubble(t,n.lastLogLine),e9.current.set(t,n.lastLogLine)}let n=e7.current;if(e.teamMessages.length>n)for(let t=n;t<e.teamMessages.length;t++){let o=e.teamMessages[t],n=o.toAgentName,r=n?"".concat(n,": ").concat(o.message):o.message;e0.showSpeechBubble(o.fromAgentId,r)}for(let o of(e7.current=e.teamMessages.length,e3.current))t.has(o)||(e0.removeAgent(o),e3.current.delete(o),e6.current.delete(o),e9.current.delete(o))})},[e0]),(0,r.useEffect)(()=>{null==e0||e0.selectAgent(z)},[e0,z]);let te=(0,a.h)(e=>e.pendingPreviewUrl);(0,r.useEffect)(()=>{te&&N&&(B(te),a.h.getState().consumePreviewUrl())},[te,N]),(0,r.useEffect)(()=>{try{let e=localStorage.getItem("office-sound-enabled");null!==e&&eZ(JSON.parse(e))}catch(e){}},[]);let{hydrated:tt}=(0,a.h)(),to=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(tt){if(null===to.current){let e=new Set;for(let[,t]of d)for(let o of t.messages)(o.result||o.isFinalResult)&&e.add(o.id);to.current=e;return}for(let[,e]of d)for(let t of e.messages){if(!t.result||to.current.has(t.id))continue;to.current.add(t.id);let o=t.result;(0!==o.changedFiles.length||"unknown"!==o.testResult||o.previewUrl||o.previewCmd||o.previewPath)&&(!e.teamId||e.isTeamLead)&&(!e.isTeamLead||t.isFinalResult)&&(en({previewUrl:o.previewUrl,previewPath:o.previewPath,previewCmd:o.previewCmd,previewPort:o.previewPort,projectDir:o.projectDir,entryFile:o.entryFile}),Z({}),$(!1),es(!0),setTimeout(()=>es(!1),3e3))}}},[tt,d]);let{handleTileClick:tn,handleRightClick:tr,handleDeleteSelected:tl,handleRotateSelected:ta,handleDragStart:ti,handleDragMove:ts,handleDragEnd:tc,updateGhost:td,handleUndo:tp,handleRedo:tu,handleImportLayout:tg,handleSelectedFurnitureColorChange:tf}=function(e,t,o){let n=(0,r.useRef)(null),l=(0,r.useCallback)(()=>{var e,o;return null!=(o=null==(e=t.current)?void 0:e.layout)?o:null},[t]),a=(0,r.useCallback)(r=>{let l=t.current;l&&(l.setLayout(r),e.current.isDirty=!0,o(),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>{try{localStorage.setItem("office-layout",JSON.stringify(r))}catch(e){}},g.e7))},[t,e,o]),i=(0,r.useCallback)((t,n)=>{var r,i,s,d;let p=e.current,g=l();if(!g)return;let f=p.activeTool;if(t<0||t>=g.cols||n<0||n>=g.rows){let e=null;if(n<0?e="up":n>=g.rows?e="down":t<0?e="left":t>=g.cols&&(e="right"),e){p.pushUndo(g),p.clearRedo();let t=(0,m.vk)(g,e);t&&a(t.layout)}return}switch(f){case u.VF.TILE_PAINT:p.pushUndo(g),p.clearRedo(),a((0,m.FH)(g,t,n,p.selectedTileType,p.floorColor));break;case u.VF.WALL_PAINT:{p.pushUndo(g),p.clearRedo();let e=n*g.cols+t;g.tiles[e]===u.nb.WALL?a((0,m.FH)(g,t,n,u.nb.FLOOR_1,p.floorColor)):a((0,m.FH)(g,t,n,u.nb.WALL,p.wallColor));break}case u.VF.ERASE:{p.pushUndo(g),p.clearRedo();let e=(0,m.iH)(g,t,n),o=g;e&&(o=(0,m.PT)(o,e.uid)),a(o=(0,m.FH)(o,t,n,u.nb.VOID));break}case u.VF.FURNITURE_PLACE:if(p.selectedFurnitureType){let e=(0,h.Um)(p.selectedFurnitureType);if(e){let o=e.canPlaceOnWalls?(0,m.si)(p.selectedFurnitureType,n):n;if((0,m.Ii)(g,p.selectedFurnitureType,t,o)){p.pushUndo(g),p.clearRedo();let e={uid:"f-".concat((0,c.Ak)(6)),type:p.selectedFurnitureType,col:t,row:o,...p.pickedFurnitureColor?{color:p.pickedFurnitureColor}:{}};a((0,m.qZ)(g,e))}}}break;case u.VF.SELECT:{let e=(0,m.iH)(g,t,n);p.selectedFurnitureUid=null!=(r=null==e?void 0:e.uid)?r:null,o();break}case u.VF.EYEDROPPER:{let e=n*g.cols+t,r=g.tiles[e];if(void 0!==r&&r!==u.nb.WALL&&r!==u.nb.VOID){p.selectedTileType=r;let t=null==(i=g.tileColors)?void 0:i[e];t&&(p.floorColor={...t}),p.activeTool=u.VF.TILE_PAINT}else if(r===u.nb.WALL){let t=null==(s=g.tileColors)?void 0:s[e];t&&(p.wallColor={...t}),p.activeTool=u.VF.WALL_PAINT}o();break}case u.VF.FURNITURE_PICK:{let e=(0,m.iH)(g,t,n);e&&(p.selectedFurnitureType=e.type,p.pickedFurnitureColor=null!=(d=e.color)?d:null,p.activeTool=u.VF.FURNITURE_PLACE,o())}}},[e,l,a,o]),s=(0,r.useCallback)((t,o)=>{let n=l();if(!n||t<0||t>=n.cols||o<0||o>=n.rows)return;let r=e.current;r.pushUndo(n),r.clearRedo();let i=(0,m.iH)(n,t,o),s=n;i&&(s=(0,m.PT)(s,i.uid)),a(s=(0,m.FH)(s,t,o,u.nb.VOID))},[e,l,a]),d=(0,r.useCallback)(()=>{let t=e.current,n=l();n&&t.selectedFurnitureUid&&(t.pushUndo(n),t.clearRedo(),a((0,m.PT)(n,t.selectedFurnitureUid)),t.selectedFurnitureUid=null,o())},[e,l,a,o]),p=(0,r.useCallback)(()=>{let t=e.current,o=l();if(!o||!t.selectedFurnitureUid)return;let n=o.furniture.find(e=>e.uid===t.selectedFurnitureUid);n&&(0,h.ZZ)(n.type)&&(t.pushUndo(o),t.clearRedo(),a((0,m.WC)(o,t.selectedFurnitureUid)))},[e,l,a]),f=(0,r.useCallback)((t,o)=>{let n=e.current,r=l();if(!r)return;let a=(0,m.iH)(r,t,o);a&&(n.selectedFurnitureUid=a.uid,n.startDrag(a.uid,t,o,t-a.col,o-a.row),n.pushUndo(r),n.clearRedo())},[e,l]),x=(0,r.useCallback)((t,o)=>{let n=e.current;if(!n.dragUid)return;n.isDragMoving=!0;let r=l();if(!r)return;let a=t-n.dragOffsetCol,i=o-n.dragOffsetRow,s=r.furniture.find(e=>e.uid===n.dragUid);s&&((0,h.Um)(s.type),n.ghostCol=a,n.ghostRow=i,n.ghostValid=(0,m.Ii)(r,s.type,a,i,n.dragUid))},[e,l]),y=(0,r.useCallback)((t,o)=>{let n=e.current;if(!n.dragUid)return;let r=n.dragUid,i=n.isDragMoving;if(n.clearDrag(),n.clearGhost(),!i)return;let s=l();if(!s)return;let c=t-n.dragOffsetCol,d=o-n.dragOffsetRow;a((0,m.iZ)(s,r,c,d))},[e,l,a]),b=(0,r.useCallback)((t,o)=>{let n=e.current;if(!n.dragUid)if(n.activeTool===u.VF.FURNITURE_PLACE&&n.selectedFurnitureType){let e=l();if(!e)return;let r=(0,h.Um)(n.selectedFurnitureType);if(!r)return;let a=r.canPlaceOnWalls?(0,m.si)(n.selectedFurnitureType,o):o;n.ghostCol=t,n.ghostRow=a,n.ghostValid=(0,m.Ii)(e,n.selectedFurnitureType,t,a)}else n.ghostCol=t,n.ghostRow=o,n.ghostValid=!1},[e,l]),k=(0,r.useCallback)(()=>{let t=e.current,o=l();if(!o)return;let n=t.popUndo();n&&(t.pushRedo(o),a(n))},[e,l,a]),S=(0,r.useCallback)(()=>{let t=e.current,o=l();if(!o)return;let n=t.popRedo();n&&(t.pushUndo(o),a(n))},[e,l,a]);return{handleTileClick:i,handleRightClick:s,handleDeleteSelected:d,handleRotateSelected:p,handleDragStart:f,handleDragMove:x,handleDragEnd:y,updateGhost:b,handleUndo:k,handleRedo:S,handleImportLayout:(0,r.useCallback)(t=>{let o=e.current,n=l();n&&(o.pushUndo(n),o.clearRedo()),a(t)},[e,l,a]),handleSelectedFurnitureColorChange:(0,r.useCallback)(t=>{let o=e.current,n=l();if(!n||!o.selectedFurnitureUid)return;o.pushUndo(n),o.clearRedo();let r=n.furniture.map(e=>e.uid===o.selectedFurnitureUid?{...e,color:null!=t?t:void 0}:e);a({...n,furniture:r})},[e,l,a])}}(e$,eQ,(0,r.useCallback)(()=>{eq(e=>e+1)},[])),tm=(0,r.useCallback)(e=>{let t=document.querySelector("canvas");if(!(null==t?void 0:t.parentElement))return;let o=t.parentElement.clientWidth,n=t.parentElement.clientHeight,r=e.cols*g.dn,l=e.rows*g.dn;e2.current=Math.max(g.DH,Math.min(o/r,n/l,g.ZV)),e8.current={x:0,y:0}},[e2,e8]),th=(0,r.useCallback)((e,t)=>{let o=eQ.current;o&&(o.setBackgroundImage(t),tg(e),eK(e.cols/e.rows),requestAnimationFrame(()=>requestAnimationFrame(()=>tm(e))))},[eQ,tg,tm]),tx=(0,r.useCallback)(()=>{eI(e=>{let t=!e;return t||e$.current.reset(),t})},[]);!function(e){let{editMode:t,editorRef:o,onUndo:n,onRedo:l,onDeleteSelected:a,onRotateSelected:i,onExitEditMode:s}=e;(0,r.useEffect)(()=>{if(!t)return;let e=e=>{let t=e.ctrlKey||e.metaKey;if(t&&"z"===e.key&&!e.shiftKey){e.preventDefault(),n();return}if(t&&"y"===e.key||t&&"z"===e.key&&e.shiftKey){e.preventDefault(),l();return}if("Delete"===e.key||"Backspace"===e.key){o.current.selectedFurnitureUid&&(e.preventDefault(),a());return}if("r"===e.key||"R"===e.key){o.current.selectedFurnitureUid&&(e.preventDefault(),i());return}if("Escape"===e.key)return void(o.current.selectedFurnitureUid?o.current.selectedFurnitureUid=null:s());let r={1:u.VF.SELECT,2:u.VF.TILE_PAINT,3:u.VF.WALL_PAINT,4:u.VF.ERASE,5:u.VF.FURNITURE_PLACE,6:u.VF.EYEDROPPER};if(r[e.key]){o.current.activeTool=r[e.key],o.current.selectedFurnitureUid=null;return}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[t,o,n,l,a,i,s])}({editMode:eA,editorRef:e$,onUndo:tp,onRedo:tu,onDeleteSelected:tl,onRotateSelected:ta,onExitEditMode:tx});let ty=(0,r.useCallback)(async()=>{let e=eQ.current;if(e)try{let{loadDefaultOffice:t}=await Promise.all([o.e(712),o.e(632)]).then(o.bind(o,632)),n=await t();n&&(e.setBackgroundImage(n.backgroundImage),tg(n.layout),e_(n.officeId),eK(n.layout.cols/n.layout.rows),requestAnimationFrame(()=>requestAnimationFrame(()=>tm(n.layout))))}catch(e){console.warn("[OfficePage] Failed to load default office zip:",e)}e5(!0)},[]),tb=(0,r.useCallback)(e=>{e1(e)},[]);(0,r.useEffect)(()=>{var e;let n=(0,s.getConnection)();if(!n||!n.sessionToken){if(n&&!n.sessionToken){let{clearConnection:e}=o(5149);e()}t.push("/pair");return}return _(null!=(e=n.role)?e:"owner"),a.h.getState().hydrate(),(0,i.Ng)(n)},[t,_]);let tk=z?d.get(z):null,tS=(null==tk?void 0:tk.status)==="working"||(null==tk?void 0:tk.status)==="waiting_approval";(0,r.useEffect)(()=>{let e=eE.current;if(!e)return;let t=e.parentElement;t&&(t.scrollTop=t.scrollHeight)},[null==tk||null==(e=tk.messages)?void 0:e.length,null==tk?void 0:tk.status]),(0,r.useEffect)(()=>{if(z)return;let e=Array.from(d.values()).find(e=>e.isTeamLead);e&&(M(e.agentId),ek(!0))},[d,z]);let tv=(0,r.useCallback)(e=>{M(e),ek(!0);let t=d.get(e);t&&(t.isExternal?eT("external"):t.teamId?eT("team"):eT("agents"))},[d]),tC=(0,r.useCallback)((e,t)=>{let o=Array.from(d.values()).filter(t=>t.name===e.name||t.name.match(new RegExp("^".concat(e.name," \\d+$")))),n=0===o.length?e.name:"".concat(e.name," ").concat(o.length+1),r="agent-".concat((0,c.Ak)(6));(0,i.S8)({type:"CREATE_AGENT",agentId:r,name:n,role:e.skills?"".concat(e.role," — ").concat(e.skills):e.role,palette:e.palette,personality:e.personality,backend:t}),M(r),ek(!0),eu(!1)},[d]),tT=(0,r.useCallback)((e,t,o)=>{(0,i.S8)({type:"CREATE_TEAM",leadId:e,memberIds:t,backends:o}),ef(!1),eT("team"),M(null),ek(!1),ev(!0)},[]),tj=(0,r.useCallback)(e=>{(0,i.S8)({type:"SAVE_AGENT_DEF",agent:e}),eh(!1),ey(null)},[]),tw=(0,r.useCallback)(e=>{(0,i.S8)({type:"DELETE_AGENT_DEF",agentDefId:e})},[]),tE=(0,r.useCallback)(async e=>{let t=d.get(e);if(null==t?void 0:t.isExternal){if(!await ec("Kill external process ".concat(t.name,"? (PID ").concat(t.pid,")")))return;(0,i.S8)({type:"KILL_EXTERNAL",agentId:e})}else{var o;if(!await ec("Fire ".concat(null!=(o=null==t?void 0:t.name)?o:e,"?")))return;(0,i.S8)({type:"FIRE_AGENT",agentId:e})}z===e&&(M(null),ek(!1))},[z,d,ec]),tA=Array.from(d.values()).some(e=>!!e.teamId),tI=Array.from(d.values()).some(e=>!!e.teamId&&("working"===e.status||"waiting_approval"===e.status)),tF=(0,r.useCallback)(()=>{for(let e of((0,i.S8)({type:"STOP_TEAM"}),Array.from(d.values()).filter(e=>!!e.teamId)))(0,i.S8)({type:"CANCEL_TASK",agentId:e.agentId,taskId:""})},[d]),tW=(0,r.useCallback)(async()=>{let e=Array.from(d.values()).filter(e=>!!e.teamId);if(0===e.length)return;let t="Fire the entire team (".concat(e.length," agents)?");if(await ec(t)){for(let t of((0,i.S8)({type:"FIRE_TEAM"}),e))(0,i.S8)({type:"FIRE_AGENT",agentId:t.agentId});A(),M(null),ek(!1),ev(!1)}},[d,A,ec]),tD=(0,r.useCallback)(()=>{if(!z||!ej.trim())return;let e=d.get(z);if(null==e?void 0:e.isExternal)return;let t=(0,c.Ak)();x(z,t,ej.trim()),(0,i.S8)({type:"RUN_TASK",agentId:z,taskId:t,prompt:ej.trim(),name:null==e?void 0:e.name,role:null==e?void 0:e.role,personality:null==e?void 0:e.personality}),ew("")},[z,ej,x,d]),tP=(0,r.useCallback)(()=>{z&&(0,i.S8)({type:"CANCEL_TASK",agentId:z,taskId:""})},[z]),tO=(0,r.useCallback)(e=>{for(let[,t]of F)if(t.leadAgentId===e)return t.phase;return null},[F]);z&&tO(z);let tL=(0,r.useCallback)(()=>{z&&(0,i.S8)({type:"APPROVE_PLAN",agentId:z})},[z]),tR=(0,r.useCallback)(()=>{if(!z)return;let e=d.get(z);(0,i.S8)({type:"END_PROJECT",agentId:z,name:null==e?void 0:e.name,role:null==e?void 0:e.role,personality:null==e?void 0:e.personality,backend:null==e?void 0:e.backend}),A()},[z,d,A]),t_=(0,r.useCallback)((e,t)=>{(0,i.S8)({type:"APPROVAL_DECISION",approvalId:e,decision:t})},[]);(0,r.useCallback)(e=>{e2.current=Math.max(g.DH,Math.min(g.ZV,e)),eq(e=>e+1)},[]);let tz=Array.from(d.values()),tH=tz.filter(e=>!!e.teamId),tY=tz.filter(e=>!e.teamId&&!e.isExternal),tM=tz.filter(e=>!!e.isExternal),tN=e$.current,[tU,tB]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=window.matchMedia("(max-width: 768px)");tB(e.matches);let t=e=>tB(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]);let tG="owner"===L,tX="collaborator"===L,tV="spectator"===L,[tK,tJ]=(0,r.useState)(""),[tZ,tq]=(0,r.useState)(null),t$=(0,r.useCallback)(()=>{tK.trim()&&((0,i.S8)({type:"SUGGEST",text:tK.trim()}),tJ(""))},[tK]),[tQ,t0]=(0,r.useState)(!1),t1=(0,r.useCallback)(async e=>{try{var t,n;let{getGatewayHttpUrl:r}=await Promise.resolve().then(o.bind(o,5149)),l=r(),a=window.prompt("Enter your pair code to create a share link:");if(!a)return;let i=await fetch("".concat(l,"/share/create"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:a.trim(),role:e})});if(i.ok){let e=await i.json(),o="".concat(window.location.origin,"/join?token=").concat(e.token,"&gateway=").concat(encodeURIComponent(l));tq(o),null==(t=navigator.clipboard)||t.writeText(o).catch(()=>{})}else{let e=await i.json().catch(()=>({}));alert(null!=(n=e.error)?n:"Failed to create share link")}}catch(e){console.error("[Share] Failed to create share link:",e)}t0(!1)},[]),t2=eb&&null!==z;return(0,n.jsxs)("div",{style:{height:"100vh",width:"100vw",position:"relative",overflow:"hidden",display:"flex"},children:[(0,n.jsx)("div",{style:{flex:1,position:"relative",minWidth:0,display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:(0,n.jsxs)("div",{style:{width:"min(100%, calc(100vh * ".concat(eV,"))"),height:"min(100%, calc(100vw / ".concat(eV,"))"),aspectRatio:"".concat(eV),position:"relative",maxHeight:"100vh"},children:[(0,n.jsx)(S,{onAdapterReady:tb,onAgentClick:tv,editMode:eA,editorRef:e$,officeStateRef:eQ,zoomRef:e2,panRef:e8,onTileClick:tn,onTileRightClick:tr,onGhostMove:td,onDragStart:ti,onDragMove:ts,onDragEnd:tc,onDeleteBtnClick:tl,onRotateBtnClick:ta,onAssetsLoaded:ty}),(0,n.jsx)(V,{visible:!e4}),(0,n.jsx)("div",{style:{position:"absolute",top:0,left:0,right:0,zIndex:10,padding:"10px 16px",display:"flex",alignItems:"center",gap:12,background:"linear-gradient(to bottom, rgba(22,18,42,0.90) 0%, rgba(22,18,42,0) 100%)",pointerEvents:"none"},children:(0,n.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,pointerEvents:"auto"},children:[(0,n.jsx)("h1",{className:"px-font",style:{fontSize:12,margin:0,color:"#e8b040",textShadow:"2px 2px 0px rgba(0,0,0,0.8), 0 0 12px rgba(200,155,48,0.3)",letterSpacing:"0.05em"},children:"Bit Office"}),(0,n.jsx)("span",{style:{fontSize:10,padding:"3px 7px",border:"1px solid ".concat(p?"#2a5c2a":"#5c1a1a"),backgroundColor:p?"#143a14":"#3e1818",color:p?"#48cc6a":"#e04848",fontFamily:"monospace",letterSpacing:"0.05em"},children:p?"● ONLINE":"● OFFLINE"}),eA&&(0,n.jsx)("span",{style:{fontSize:10,padding:"3px 7px",border:"1px solid #5a3a10",backgroundColor:"#1a0e00",color:"#e8b040",fontFamily:"monospace"},children:"EDIT MODE"}),tV&&(0,n.jsx)("span",{style:{fontSize:10,padding:"3px 7px",border:"1px solid #3b82f6",backgroundColor:"#1a2744",color:"#7ab8f5",fontFamily:"monospace",letterSpacing:"0.05em"},children:"WATCHING"}),tX&&(0,n.jsx)("span",{style:{fontSize:10,padding:"3px 7px",border:"1px solid #a855f7",backgroundColor:"#2d1a44",color:"#c084fc",fontFamily:"monospace",letterSpacing:"0.05em"},children:"COLLABORATOR"}),tG&&(0,n.jsxs)("div",{style:{position:"relative"},children:[(0,n.jsx)("span",{onClick:()=>t0(!tQ),style:{fontSize:10,padding:"3px 7px",cursor:"pointer",border:"1px solid #a855f760",backgroundColor:tQ?"#a855f720":"transparent",color:"#c084fc",fontFamily:"monospace",letterSpacing:"0.05em"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="#a855f720"},onMouseLeave:e=>{tQ||(e.currentTarget.style.backgroundColor="transparent")},children:"SHARE"}),tQ&&(0,n.jsxs)("div",{style:{position:"absolute",top:"100%",left:0,marginTop:4,zIndex:50,backgroundColor:"#1e1a30",border:"1px solid #3d2e54",display:"flex",flexDirection:"column",minWidth:160},children:[(0,n.jsx)("button",{onClick:()=>t1("collaborator"),style:{padding:"8px 12px",border:"none",backgroundColor:"transparent",color:"#c084fc",fontSize:12,cursor:"pointer",textAlign:"left",fontFamily:"monospace"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="#a855f720"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:"Collaborator link"}),(0,n.jsx)("button",{onClick:()=>t1("spectator"),style:{padding:"8px 12px",border:"none",backgroundColor:"transparent",color:"#7ab8f5",fontSize:12,cursor:"pointer",textAlign:"left",fontFamily:"monospace"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="#3b82f620"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:"Spectator link"})]})]})]})}),eA&&(0,n.jsx)(v,{activeTool:tN.activeTool,selectedTileType:tN.selectedTileType,selectedFurnitureType:tN.selectedFurnitureType,selectedFurnitureUid:tN.selectedFurnitureUid,selectedFurnitureColor:(()=>{var e;if(!tN.selectedFurnitureUid||!eQ.current)return null;let t=eQ.current.layout.furniture.find(e=>e.uid===tN.selectedFurnitureUid);return null!=(e=null==t?void 0:t.color)?e:null})(),floorColor:tN.floorColor,wallColor:tN.wallColor,onToolChange:e=>{tN.activeTool=e,tN.clearSelection(),eq(e=>e+1)},onTileTypeChange:e=>{tN.selectedTileType=e,eq(e=>e+1)},onFloorColorChange:e=>{tN.floorColor=e,eq(e=>e+1)},onWallColorChange:e=>{tN.wallColor=e,eq(e=>e+1)},onSelectedFurnitureColorChange:tf,onFurnitureTypeChange:e=>{tN.selectedFurnitureType=e,tN.activeTool=u.VF.FURNITURE_PLACE,eq(e=>e+1)}}),!tU&&(0,n.jsx)(T,{editMode:eA,onToggleEditMode:tx,onOpenSettings:()=>eW(!0),onOpenHistory:()=>eP(!0),onOpenOfficeSwitcher:()=>eL(!0),showEditorControls:ez,testActive:eY,onToggleTest:eX?()=>{let e=eQ.current;e&&(e.hasTestCharacters()?(e.clearTestCharacters(),eM(!1)):(e.spawnTestCharacters(),eM(!0)))}:void 0}),k.length>0&&(0,n.jsx)(er,{messages:k,agents:d,assetsReady:e4})]})}),!tU&&(0,n.jsx)("div",{style:{width:"35vw",minWidth:260,flexShrink:0,height:"100vh",backgroundColor:"#1e1a30",borderLeft:"2px solid #3d2e54",display:"flex",flexDirection:"column",overflow:"hidden"},children:(0,n.jsx)("div",{style:{flex:1,overflowY:"auto",display:"flex",flexDirection:"column"},children:(()=>{let e=e=>{var t,o,r,l,a,i,s,c,p,u,g,f,m,h;let x=null!=(a=E[e.status])?a:E.idle,y=eb&&z===e.agentId,b=d.get(e.agentId),k=(null==b?void 0:b.status)==="working"||(null==b?void 0:b.status)==="waiting_approval",S=!!(null==b?void 0:b.teamId)&&!(null==b?void 0:b.isTeamLead),v=!!(null==b?void 0:b.isExternal);return(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",margin:"3px 6px",border:y?"1px solid #e8b04040":"1px solid #2e2448",backgroundColor:y?"#1e1a34":"#1a1530",transition:"border-color 0.2s, background-color 0.2s"},children:[(0,n.jsxs)("button",{onClick:()=>{y?ek(!1):(M(e.agentId),ek(!0))},style:{display:"flex",alignItems:"center",gap:10,padding:"10px 12px",background:y?"#272040":"transparent",border:"none",cursor:"pointer",textAlign:"left",width:"100%",transition:"background-color 0.1s",...y?{position:"sticky",top:0,zIndex:2,backgroundColor:"#272040"}:{}},onMouseEnter:e=>{y||(e.currentTarget.style.backgroundColor="#231e38")},onMouseLeave:e=>{y||(e.currentTarget.style.backgroundColor="transparent")},children:[(0,n.jsx)(X,{palette:null!=(i=e.palette)?i:0,zoom:2,ready:e4}),(0,n.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,n.jsxs)("div",{style:{fontSize:13,fontWeight:700,color:"#eddcb8",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",display:"flex",alignItems:"center",gap:4},children:[e.name,e.isTeamLead&&(0,n.jsx)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:"#e8903028",color:"#e89030",border:"1px solid #e8903060",fontFamily:"monospace",letterSpacing:"0.05em"},children:"LEAD"}),S&&(0,n.jsx)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:"#e8b04020",color:"#e8b040",border:"1px solid #e8b04050",fontFamily:"monospace",letterSpacing:"0.05em"},children:"TEAM"}),e.backend&&(0,n.jsx)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:(null!=(s=null==(t=J.find(t=>t.id===e.backend))?void 0:t.color)?s:"#666")+"18",color:null!=(c=null==(o=J.find(t=>t.id===e.backend))?void 0:o.color)?c:"#666",border:"1px solid ".concat(null!=(p=null==(r=J.find(t=>t.id===e.backend))?void 0:r.color)?p:"#666","40")},children:null!=(u=null==(l=J.find(t=>t.id===e.backend))?void 0:l.name)?u:e.backend}),b&&b.tokenUsage.inputTokens>0&&(0,n.jsx)(U,{inputTokens:b.tokenUsage.inputTokens,outputTokens:b.tokenUsage.outputTokens})]}),(0,n.jsx)("div",{style:{fontSize:11,color:"#7a6858",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",display:"flex",alignItems:"center",gap:4,marginTop:2},title:v&&(null==b?void 0:b.cwd)?b.cwd:void 0,children:v&&(null==b?void 0:b.cwd)?b.cwd.split("/").pop():e.role})]}),(0,n.jsx)("span",{style:{fontSize:10,padding:"2px 5px",backgroundColor:(e.isTeamLead&&"done"===e.status?"#48cc6a":x.color)+"18",color:e.isTeamLead&&"done"===e.status?"#48cc6a":x.color,border:"1px solid ".concat(e.isTeamLead&&"done"===e.status?"#48cc6a":x.color,"40"),flexShrink:0,whiteSpace:"nowrap",fontFamily:"monospace"},children:e.isTeamLead&&"done"===e.status?"✓ Done":(0,n.jsxs)(n.Fragment,{children:["done"===e.status?"✓ ":"working"===e.status?"▶ ":"",x.label]})}),(null==b?void 0:b.isTeamLead)&&(()=>{var t,o,r;let l=tO(e.agentId);if(!l)return null;let a={create:"#5aacff",design:"#e8b040",execute:"#e89030",complete:"#48cc6a"};return(0,n.jsx)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:(null!=(t=a[l])?t:"#888")+"18",color:null!=(o=a[l])?o:"#888",border:"1px solid ".concat(null!=(r=a[l])?r:"#888","40"),flexShrink:0,whiteSpace:"nowrap",fontFamily:"monospace",textTransform:"uppercase",letterSpacing:"0.05em"},children:l})})(),!(null==b?void 0:b.teamId)&&tG&&(0,n.jsx)("span",{onClick:t=>{t.stopPropagation(),tE(e.agentId)},style:{fontSize:11,color:"#c04040",cursor:"pointer",lineHeight:1,padding:"4px",flexShrink:0},onMouseEnter:e=>{e.currentTarget.style.color="#ff4040"},onMouseLeave:e=>{e.currentTarget.style.color="#c04040"},children:"✕"})]}),y&&b&&v&&(0,n.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",backgroundColor:"#1a1530",minHeight:0,height:"calc(100vh - 200px)",maxHeight:"calc(100vh - 160px)",overflow:"hidden"},children:[(0,n.jsxs)("div",{style:{padding:"10px 14px",borderBottom:"1px solid #272040",flexShrink:0},children:[(0,n.jsx)("div",{style:{fontSize:11,color:"#5aacff",marginBottom:6,fontFamily:"monospace",letterSpacing:"0.05em"},children:"EXTERNAL PROCESS"}),(0,n.jsxs)("div",{style:{display:"flex",gap:12,fontSize:11,color:"#7a6858",fontFamily:"monospace",flexWrap:"wrap"},children:[(0,n.jsx)("span",{children:null!=(g=b.backend)?g:"unknown"}),(0,n.jsxs)("span",{children:["PID ",null!=(f=b.pid)?f:"—"]}),(0,n.jsx)("span",{title:null!=(m=b.cwd)?m:void 0,style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:160},children:null!=(h=b.cwd)?h:"—"})]})]}),(0,n.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"12px 14px",display:"flex",flexDirection:"column",minHeight:0},children:[0===b.messages.length&&(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:13},children:"Waiting for output..."}),b.messages.map(e=>(0,n.jsx)(G,{msg:e},e.id))]}),(0,n.jsx)("div",{style:{padding:"8px 10px",backgroundColor:"#182844",border:"1px solid #3b82f640",fontSize:12,color:"#7ab8f5",fontFamily:"monospace",textAlign:"center",flexShrink:0},children:"Read-only — this process is running externally"})]}),y&&b&&!v&&(0,n.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",backgroundColor:"#1a1530",minHeight:0,height:"calc(100vh - 200px)",maxHeight:"calc(100vh - 160px)",overflow:"hidden"},children:[(0,n.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"12px 14px",display:"flex",flexDirection:"column",minHeight:0},children:[(null==b?void 0:b.isTeamLead)&&(()=>{let t=tO(e.agentId);if(!t)return null;let o={create:{color:"#5aacff",icon:"\uD83D\uDCAC",hint:"Chat with your team lead to define the project"},design:{color:"#e8b040",icon:"\uD83D\uDCCB",hint:"Review the plan — approve it or give feedback"},execute:{color:"#e89030",icon:"⚡",hint:"Team is building your project"},complete:{color:"#48cc6a",icon:"✓",hint:"Review results — give feedback or end project"}}[t];return o?(0,n.jsxs)("div",{style:{padding:"6px 10px",marginBottom:8,backgroundColor:o.color+"10",border:"1px solid ".concat(o.color,"30"),display:"flex",alignItems:"center",gap:6,fontSize:12,fontFamily:"monospace"},children:[(0,n.jsx)("span",{children:o.icon}),(0,n.jsx)("span",{style:{color:o.color,fontWeight:700,textTransform:"uppercase",fontSize:10,letterSpacing:"0.05em"},children:t}),(0,n.jsx)("span",{style:{color:"#7a6858"},children:o.hint})]}):null})(),0===b.messages.length&&(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:13},children:S?"This agent is managed by the Team Lead":"Send a message to get started"}),b.messages.map(t=>(0,n.jsx)(G,{msg:t,onPreview:B,isTeamLead:null==b?void 0:b.isTeamLead,isTeamMember:S,teamPhase:(null==b?void 0:b.isTeamLead)?tO(e.agentId):null},t.id)),k&&!b.pendingApproval&&(0,n.jsx)(I,{logLine:b.lastLogLine}),b.pendingApproval&&(0,n.jsxs)("div",{style:{marginBottom:8,padding:12,backgroundColor:"#261a00",border:"1px solid #e89030"},children:[(0,n.jsxs)("div",{style:{fontSize:12,fontWeight:"bold",color:"#e89030",marginBottom:6,fontFamily:"monospace"},children:["▲"," ",b.pendingApproval.title]}),(0,n.jsx)("div",{style:{fontSize:13,color:"#b89868",marginBottom:10,lineHeight:1.5},children:b.pendingApproval.summary}),tG&&(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsxs)("button",{onClick:()=>t_(b.pendingApproval.approvalId,"yes"),style:{flex:1,padding:"8px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",cursor:"pointer",fontWeight:"bold",fontSize:12,fontFamily:"monospace"},children:["▶"," Approve"]}),(0,n.jsxs)("button",{onClick:()=>t_(b.pendingApproval.approvalId,"no"),style:{flex:1,padding:"8px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",cursor:"pointer",fontWeight:"bold",fontSize:12,fontFamily:"monospace"},children:["✕"," Reject"]})]})]}),(0,n.jsx)("div",{ref:eE})]}),!tV&&R.length>0&&(0,n.jsxs)("div",{style:{padding:"6px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",maxHeight:120,overflowY:"auto"},children:[(0,n.jsx)("div",{style:{fontSize:10,color:"#a855f7",fontFamily:"monospace",marginBottom:4,letterSpacing:"0.05em"},children:"SUGGESTIONS"}),R.slice(-10).map((e,t)=>(0,n.jsxs)("div",{style:{fontSize:12,color:"#c084fc",marginBottom:2,lineHeight:1.4},children:[(0,n.jsxs)("span",{style:{color:"#7c3aed",fontWeight:600},children:[e.author,":"]})," ",e.text]},t))]}),(()=>{let t=(null==b?void 0:b.isTeamLead)?tO(e.agentId):null;return tV?(0,n.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#182844",flexShrink:0,fontSize:12,color:"#7ab8f5",fontFamily:"monospace",textAlign:"center"},children:"Watching — read-only mode"}):tX?(0,n.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",flexShrink:0},children:(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:tK,onChange:e=>tJ(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&t$(),placeholder:"Share an idea...",maxLength:500,style:{flex:1,padding:"9px 12px",border:"1px solid #7c3aed40",backgroundColor:"#16122a",color:"#c084fc",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:t$,disabled:!tK.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:tK.trim()?"#a855f7":"#272040",color:tK.trim()?"#fff":"#5a4838",fontSize:13,cursor:tK.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Suggest"})]})}):(0,n.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",flexShrink:0},children:S?(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",fontSize:12,padding:"8px 0",fontFamily:"monospace"},children:"Tasks are assigned by the Team Lead"}):"execute"===t&&k?(0,n.jsxs)("button",{onClick:async()=>{await ec("Cancel current work?")&&tP()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",fontSize:13,cursor:"pointer",fontFamily:"monospace"},children:["✕"," Cancel current work"]}):"execute"!==t||k?"design"!==t||k?"complete"!==t||k?tS?(0,n.jsxs)("button",{onClick:async()=>{await ec("Cancel current work?")&&tP()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",fontSize:13,cursor:"pointer",fontFamily:"monospace"},children:["✕"," Cancel current work"]}):(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Send a message...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"},autoFocus:!0}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace",transition:"background-color 0.1s"},children:"Send"})]}):(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Request changes...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]}),(0,n.jsx)("button",{onClick:async()=>{await ec("End this project and start a new one?")&&tR()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e89030",backgroundColor:"#261a00",color:"#e89030",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:"End Project"})]}):(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[(0,n.jsxs)("button",{onClick:tL,style:{width:"100%",padding:"9px 16px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:["▶"," Approve Plan"]}),(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Or give feedback...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]})]}):(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Send a message...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]}),(0,n.jsx)("button",{onClick:async()=>{await ec("End this project and start a new one?")&&tR()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e89030",backgroundColor:"#261a00",color:"#e89030",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:"End Project"})]})})})()]})]},e.agentId)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{style:{display:"flex",background:"linear-gradient(to bottom, rgba(40,30,65,0.6), transparent)",padding:"0 4px"},children:[{key:"agents",label:"Agents",count:tY.length,color:"#e8b040"},{key:"team",label:"Team",count:tH.length,color:"#e89030"},{key:"external",label:"External",count:tM.length,color:"#5aacff"}].map(e=>{let t=eC===e.key;return(0,n.jsxs)("button",{onClick:()=>eT(e.key),style:{flex:1,padding:"12px 0 10px",cursor:"pointer",backgroundColor:t?e.color+"30":"rgba(255,255,255,0.05)",border:"none",borderBottom:t?"2px solid ".concat(e.color):"2px solid transparent",display:"flex",alignItems:"center",justifyContent:"center",gap:6,transition:"all 0.15s",borderRadius:"4px 4px 0 0"},onMouseEnter:e=>{t||(e.currentTarget.style.backgroundColor="rgba(255,255,255,0.03)")},onMouseLeave:e=>{t||(e.currentTarget.style.backgroundColor="transparent")},children:[(0,n.jsx)("span",{style:{fontSize:13,fontWeight:700,color:t?"#fff":"rgba(255, 255, 255, 0.45)",fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",letterSpacing:"0.02em",textShadow:t?"0 0 8px ".concat(e.color,"60"):"none"},children:e.label}),e.count>0&&(0,n.jsx)("span",{style:{fontSize:10,padding:"2px 6px",backgroundColor:t?e.color+"20":"transparent",color:t?e.color:"rgba(255, 255, 255, 0.35)",border:"1px solid ".concat(t?e.color+"50":"rgba(255, 255, 255, 0.1)"),borderRadius:4,fontWeight:600},children:e.count})]},e.key)})}),"agents"===eC&&tG&&(0,n.jsxs)("div",{style:{display:"flex",gap:8,padding:"8px 12px",borderBottom:"1px solid #2e2448",alignItems:"center"},children:[(0,n.jsx)("span",{onClick:()=>eu(!0),style:{fontSize:12,fontWeight:700,cursor:"pointer",padding:"5px 10px",borderRadius:3,backgroundColor:"transparent",color:"#e8b040",border:"1px solid #e8b04060",fontFamily:"monospace"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(200,155,48,0.15)"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:"+ Hire"}),(0,n.jsx)("span",{style:{flex:1}}),(0,n.jsx)("span",{onClick:()=>{ey(null),eh(!0)},style:{fontSize:12,fontWeight:700,cursor:"pointer",padding:"5px 10px",borderRadius:3,backgroundColor:"transparent",color:"#e8b040",border:"1px solid #e8b04060",fontFamily:"monospace"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(200,155,48,0.15)"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:"+ Create"})]}),"team"===eC&&tG&&(0,n.jsxs)("div",{style:{display:"flex",gap:8,padding:"8px 12px",borderBottom:"1px solid #2e2448",alignItems:"center"},children:[!tA&&(0,n.jsx)("span",{onClick:()=>ef(!0),style:{fontSize:12,fontWeight:700,cursor:"pointer",padding:"5px 10px",borderRadius:3,backgroundColor:"transparent",color:"#e89030",border:"1px solid #e8903060",fontFamily:"monospace"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(224,133,48,0.15)"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:"+ Hire Team"}),tA&&tI&&(0,n.jsx)("span",{onClick:tF,style:{fontSize:12,fontWeight:700,color:"#e89030",cursor:"pointer",padding:"5px 10px",borderRadius:3,backgroundColor:"transparent",border:"1px solid #e8903060",fontFamily:"monospace",letterSpacing:"0.03em"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(232,144,48,0.15)"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:"Stop Work"}),tA&&(0,n.jsx)("span",{style:{flex:1}}),tA&&(0,n.jsxs)("span",{onClick:tW,style:{fontSize:12,fontWeight:700,color:"#c04040",cursor:"pointer",padding:"5px 10px",borderRadius:3,backgroundColor:"transparent",border:"1px solid #c0404060",fontFamily:"monospace",letterSpacing:"0.03em"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(192,64,64,0.15)"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent"},children:["✕"," Fire Team"]})]}),"external"===eC&&(0,n.jsx)("div",{style:{flex:1,display:"flex",flexDirection:"column",minHeight:0,overflowY:"auto"},children:0===tM.length?(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:12,fontFamily:"monospace"},children:"No external agents detected"}):tM.map(t=>e(t))}),"agents"===eC&&(0,n.jsx)("div",{style:{flex:1,display:"flex",flexDirection:"column",minHeight:0,overflowY:"auto"},children:0===tY.length?(0,n.jsxs)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:12,fontFamily:"monospace"},children:["No agents yet ","—"," click [+ Hire] to hire one"]}):tY.map(t=>e(t))}),"team"===eC&&(0,n.jsx)("div",{style:{flex:1,display:"flex",flexDirection:"column",minHeight:0,overflowY:"auto"},children:0===tH.length?(0,n.jsxs)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:12,fontFamily:"monospace"},children:["No team yet ","—"," click [+ Hire Team] to hire a team"]}):(0,n.jsxs)(n.Fragment,{children:[tH.map(t=>e(t)),(()=>{let e=0,t=0;for(let o of tH)e+=o.tokenUsage.inputTokens,t+=o.tokenUsage.outputTokens;return 0===e&&0===t?null:(0,n.jsxs)("div",{style:{padding:"6px 14px",borderTop:"1px solid #2e2448",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[(0,n.jsx)("span",{style:{fontSize:10,color:"#7a6858",fontFamily:"monospace"},children:"Team Tokens"}),(0,n.jsx)(U,{inputTokens:e,outputTokens:t})]})})(),k.length>0&&(0,n.jsx)(el,{messages:k,agents:d,assetsReady:e4,onClear:A})]})})]})})()})}),tU&&tz.length>0&&!t2&&!eS&&(0,n.jsxs)("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:20,padding:"8px 12px",display:"flex",alignItems:"center",gap:8,background:"linear-gradient(to top, rgba(22,18,42,0.95) 0%, rgba(22,18,42,0.7) 80%, transparent 100%)",overflowX:"auto"},children:[tG&&(0,n.jsx)("button",{onClick:()=>eu(!0),style:{width:44,height:44,flexShrink:0,border:"1px solid #e8b04060",backgroundColor:"rgba(200,155,48,0.12)",color:"#e8b040",fontSize:22,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center"},children:"+"}),(0,n.jsx)("button",{onClick:()=>ev(!0),style:{width:44,height:44,flexShrink:0,border:"1px solid #e8903070",backgroundColor:"rgba(224,133,48,0.12)",color:"#e89030",fontSize:11,fontWeight:700,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontFamily:"monospace"},children:"Team"}),tz.map(e=>{var t,o;let r=null!=(t=E[e.status])?t:E.idle;return(0,n.jsxs)("button",{onClick:()=>{M(e.agentId),ek(!0)},style:{position:"relative",flexShrink:0,width:44,height:44,border:z===e.agentId?"1px solid #e8b040":"1px solid #3d2e54",backgroundColor:"#1e1a30",cursor:"pointer",padding:0,display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:[(0,n.jsx)(X,{palette:null!=(o=e.palette)?o:0,zoom:1,ready:e4}),(0,n.jsx)("span",{style:{position:"absolute",bottom:2,right:2,width:6,height:6,backgroundColor:r.color,border:"1px solid #1e1a30"}})]},e.agentId)})]}),tU&&t2&&(()=>{var e,t;let o=z?d.get(z):null;if(!o)return null;let r=null!=(e=E[o.status])?e:E.idle,l="working"===o.status||"waiting_approval"===o.status,a=!!o.teamId&&!o.isTeamLead;return(0,n.jsxs)("div",{style:{position:"absolute",inset:0,zIndex:30,backgroundColor:"#1a1530",display:"flex",flexDirection:"column"},children:[(0,n.jsxs)("div",{onClick:()=>ek(!1),style:{padding:"12px 14px",borderBottom:"1px solid #2e2448",display:"flex",alignItems:"center",gap:10,flexShrink:0,backgroundColor:"#1e1a30",cursor:"pointer"},children:[(0,n.jsx)("span",{style:{fontSize:15,color:"#7a6858",marginRight:4},children:"←"}),(0,n.jsx)(X,{palette:null!=(t=o.palette)?t:0,zoom:2,ready:e4}),(0,n.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,n.jsxs)("div",{style:{fontSize:13,fontWeight:700,color:"#eddcb8",display:"flex",alignItems:"center",gap:4},children:[o.name,o.isTeamLead&&(0,n.jsx)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:"#e8903028",color:"#e89030",border:"1px solid #e8903060",fontFamily:"monospace"},children:"LEAD"}),a&&(0,n.jsx)("span",{style:{fontSize:9,padding:"1px 4px",backgroundColor:"#e8b04020",color:"#e8b040",border:"1px solid #e8b04050",fontFamily:"monospace"},children:"TEAM"}),o.tokenUsage.inputTokens>0&&(0,n.jsx)(U,{inputTokens:o.tokenUsage.inputTokens,outputTokens:o.tokenUsage.outputTokens})]}),(0,n.jsx)("div",{style:{fontSize:11,color:"#7a6858"},children:o.role})]}),(0,n.jsx)("span",{style:{fontSize:10,padding:"2px 6px",backgroundColor:r.color+"18",color:r.color,border:"1px solid ".concat(r.color,"40"),flexShrink:0,fontFamily:"monospace"},children:r.label})]}),(0,n.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"12px 14px",display:"flex",flexDirection:"column"},children:[o.isTeamLead&&(()=>{let e=tO(o.agentId);if(!e)return null;let t={create:{color:"#5aacff",icon:"\uD83D\uDCAC",hint:"Define the project"},design:{color:"#e8b040",icon:"\uD83D\uDCCB",hint:"Review the plan"},execute:{color:"#e89030",icon:"⚡",hint:"Team is building"},complete:{color:"#48cc6a",icon:"✓",hint:"Review results"}}[e];return t?(0,n.jsxs)("div",{style:{padding:"5px 8px",marginBottom:8,backgroundColor:t.color+"10",border:"1px solid ".concat(t.color,"30"),display:"flex",alignItems:"center",gap:6,fontSize:11,fontFamily:"monospace"},children:[(0,n.jsx)("span",{children:t.icon}),(0,n.jsx)("span",{style:{color:t.color,fontWeight:700,textTransform:"uppercase",fontSize:9,letterSpacing:"0.05em"},children:e}),(0,n.jsx)("span",{style:{color:"#7a6858"},children:t.hint})]}):null})(),0===o.messages.length&&(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:13,fontFamily:"monospace"},children:a?"This agent is managed by the Team Lead":"Send a message to get started"}),o.messages.map(e=>(0,n.jsx)(G,{msg:e,onPreview:B,isTeamLead:o.isTeamLead,isTeamMember:a,teamPhase:o.isTeamLead?tO(o.agentId):null},e.id)),l&&!o.pendingApproval&&(0,n.jsx)(I,{logLine:o.lastLogLine}),o.pendingApproval&&(0,n.jsxs)("div",{style:{marginBottom:8,padding:12,backgroundColor:"#261a00",border:"1px solid #e89030"},children:[(0,n.jsxs)("div",{style:{fontSize:12,fontWeight:"bold",color:"#e89030",marginBottom:6,fontFamily:"monospace"},children:["▲ ",o.pendingApproval.title]}),(0,n.jsx)("div",{style:{fontSize:13,color:"#b89868",marginBottom:10,lineHeight:1.5},children:o.pendingApproval.summary}),(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("button",{onClick:()=>t_(o.pendingApproval.approvalId,"yes"),style:{flex:1,padding:"8px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",cursor:"pointer",fontWeight:"bold",fontSize:12,fontFamily:"monospace"},children:"▶ Approve"}),(0,n.jsx)("button",{onClick:()=>t_(o.pendingApproval.approvalId,"no"),style:{flex:1,padding:"8px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",cursor:"pointer",fontWeight:"bold",fontSize:12,fontFamily:"monospace"},children:"✕ Reject"})]})]}),(0,n.jsx)("div",{ref:eE})]}),!tV&&R.length>0&&(0,n.jsxs)("div",{style:{padding:"6px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",maxHeight:80,overflowY:"auto"},children:[(0,n.jsx)("div",{style:{fontSize:10,color:"#a855f7",fontFamily:"monospace",marginBottom:4,letterSpacing:"0.05em"},children:"SUGGESTIONS"}),R.slice(-5).map((e,t)=>(0,n.jsxs)("div",{style:{fontSize:11,color:"#c084fc",marginBottom:2,lineHeight:1.3},children:[(0,n.jsxs)("span",{style:{color:"#7c3aed",fontWeight:600},children:[e.author,":"]})," ",e.text]},t))]}),(()=>{let e=o.isTeamLead?tO(o.agentId):null;return tV?(0,n.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#182844",flexShrink:0,fontSize:12,color:"#7ab8f5",fontFamily:"monospace",textAlign:"center"},children:"Watching — read-only mode"}):tX?(0,n.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",flexShrink:0},children:(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:tK,onChange:e=>tJ(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&t$(),placeholder:"Share an idea...",maxLength:500,style:{flex:1,padding:"9px 12px",border:"1px solid #7c3aed40",backgroundColor:"#16122a",color:"#c084fc",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:t$,disabled:!tK.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:tK.trim()?"#a855f7":"#272040",color:tK.trim()?"#fff":"#5a4838",fontSize:13,cursor:tK.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Suggest"})]})}):(0,n.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",flexShrink:0},children:a?(0,n.jsx)("div",{style:{textAlign:"center",color:"#5a4838",fontSize:12,padding:"8px 0",fontFamily:"monospace"},children:"Tasks are assigned by the Team Lead"}):"execute"===e&&l?(0,n.jsx)("button",{onClick:async()=>{await ec("Cancel current work?")&&tP()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",fontSize:13,cursor:"pointer",fontFamily:"monospace"},children:"✕ Cancel current work"}):"execute"!==e||l?"design"!==e||l?"complete"!==e||l?l?(0,n.jsx)("button",{onClick:async()=>{await ec("Cancel current work?")&&tP()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",fontSize:13,cursor:"pointer",fontFamily:"monospace"},children:"✕ Cancel current work"}):(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Send a message...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"},autoFocus:!0}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]}):(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Request changes...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]}),(0,n.jsx)("button",{onClick:async()=>{await ec("End this project and start a new one?")&&tR()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e89030",backgroundColor:"#261a00",color:"#e89030",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:"End Project"})]}):(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[(0,n.jsx)("button",{onClick:tL,style:{width:"100%",padding:"9px 16px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:"▶ Approve Plan"}),(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Or give feedback...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]})]}):(0,n.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[(0,n.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,n.jsx)("input",{value:ej,onChange:e=>ew(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&tD(),placeholder:"Send a message...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:14,outline:"none"}}),(0,n.jsx)("button",{onClick:tD,disabled:!ej.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:ej.trim()?"#e8b040":"#272040",color:ej.trim()?"#16122a":"#5a4838",fontSize:13,cursor:ej.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]}),(0,n.jsx)("button",{onClick:async()=>{await ec("End this project and start a new one?")&&tR()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e89030",backgroundColor:"#261a00",color:"#e89030",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:"End Project"})]})})})()]})})(),tU&&eS&&(0,n.jsxs)("div",{style:{position:"absolute",inset:0,zIndex:30,backgroundColor:"#1a1530",display:"flex",flexDirection:"column"},children:[(0,n.jsxs)("div",{onClick:()=>ev(!1),style:{padding:"12px 14px",borderBottom:"1px solid #2e2448",display:"flex",alignItems:"center",gap:10,flexShrink:0,backgroundColor:"#1e1a30",cursor:"pointer"},children:[(0,n.jsx)("span",{style:{fontSize:15,color:"#7a6858",marginRight:4},children:"←"}),(0,n.jsx)("div",{style:{fontSize:13,fontWeight:700,color:"#eddcb8"},children:"Team Chat"}),(0,n.jsxs)("span",{style:{fontSize:11,color:"#7a6858",fontFamily:"monospace"},children:[k.length," messages"]})]}),(0,n.jsx)(eo,{messages:k,agents:d,assetsReady:e4})]}),ep&&(0,n.jsx)(ee,{agentDefs:W,onHire:tC,onCreate:()=>{eu(!1),ey(null),eh(!0)},onEdit:e=>{eu(!1),ey(e),eh(!0)},onDelete:tw,onClose:()=>eu(!1),assetsReady:e4}),eg&&(0,n.jsx)(ea,{agentDefs:W,onCreateTeam:tT,onClose:()=>ef(!1),assetsReady:e4}),em&&(0,n.jsx)(Q,{onSave:tj,onClose:()=>{eh(!1),ey(null)},assetsReady:e4,editAgent:ex}),eQ.current&&(0,n.jsx)(C,{isOpen:eF,onClose:()=>eW(!1),layout:eQ.current.layout,onImportLayout:tg,onImportRoomZip:th,soundEnabled:eJ,onSoundEnabledChange:eZ}),(0,n.jsx)(w,{isOpen:eO,onClose:()=>eL(!1),onSelect:(e,t)=>{e5(!1),th(e,t);try{let e=localStorage.getItem("office-selected-id");e&&e_(e)}catch(e){}setTimeout(()=>e5(!0),800)},currentOfficeId:eR}),(0,n.jsx)(j,{isOpen:eD,onClose:()=>eP(!1),onPreview:(e,t)=>{let o=O(e);o&&B(o),t&&Object.keys(t).length>0&&(Z(t),$(!0))}}),N&&(0,n.jsx)(D,{url:N,savedRatings:K,submitted:q,onRate:e=>{Z(e),$(!0),(0,i.S8)({type:"RATE_PROJECT",ratings:e})},onClose:()=>B(null)}),ei&&(0,n.jsx)(P,{}),et&&(0,n.jsx)(H,{previewUrl:et.previewUrl,previewPath:et.previewPath,previewCmd:et.previewCmd,previewPort:et.previewPort,projectDir:et.projectDir,entryFile:et.entryFile,onPreview:e=>{B(e),en(null),es(!1)},onDismiss:()=>{en(null),es(!1)}}),tZ&&(0,n.jsx)("div",{style:{position:"fixed",inset:0,zIndex:100,backgroundColor:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center"},onClick:()=>tq(null),children:(0,n.jsxs)("div",{style:{backgroundColor:"#1e1a30",border:"1px solid #3d2e54",padding:24,maxWidth:420,width:"90%"},onClick:e=>e.stopPropagation(),children:[(0,n.jsx)("div",{style:{fontSize:15,fontWeight:700,color:"#eddcb8",marginBottom:12},children:"Share Link Created"}),(0,n.jsx)("div",{style:{fontSize:12,color:"#7a6858",marginBottom:8},children:"Link copied to clipboard!"}),(0,n.jsx)("input",{readOnly:!0,value:tZ,style:{width:"100%",padding:"8px 10px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:12,fontFamily:"monospace",outline:"none"},onFocus:e=>e.target.select()}),(0,n.jsx)("button",{onClick:()=>tq(null),style:{marginTop:12,padding:"8px 20px",border:"none",backgroundColor:"#e8b040",color:"#16122a",fontSize:13,cursor:"pointer",fontWeight:700,fontFamily:"monospace"},children:"OK"})]})}),ed,eB&&!eN&&(0,n.jsx)("button",{onClick:()=>{eU(!0),function(e){let t=a.h,o=e=>t.getState().handleEvent(e),n=[],r=(e,t)=>n.push(setTimeout(t,e)),l="demo-leader",i="demo-dev",s="demo-reviewer",c="demo-team",d=Date.now(),p=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"status",r=arguments.length>3?arguments[3]:void 0;return o({type:"TEAM_CHAT",fromAgentId:e,toAgentId:r,message:t,messageType:n,timestamp:d++})},u=(e,t)=>o({type:"LOG_APPEND",agentId:e,taskId:"demo-task",stream:"stdout",chunk:t});o({type:"AGENT_CREATED",agentId:l,name:"Ash (Leader)",role:"Team Leader",teamId:c,isTeamLead:!0,palette:0,isExternal:!1}),o({type:"AGENT_CREATED",agentId:i,name:"Leo",role:"Developer",teamId:c,palette:1,isExternal:!1}),o({type:"AGENT_CREATED",agentId:s,name:"Mae",role:"Code Reviewer",teamId:c,palette:2,isExternal:!1}),r(500,()=>{o({type:"AGENT_STATUS",agentId:l,status:"working"}),o({type:"AGENT_STATUS",agentId:i,status:"working"}),o({type:"AGENT_STATUS",agentId:s,status:"working"})}),r(2e3,()=>p(l,"Alright team! Let's build a space shooter game with PixiJS.")),r(5e3,()=>p(l,"Build the complete game — player controls, enemies, scoring, and sound effects.","delegation",i)),r(8e3,()=>p(l,"Stand by to review Leo's code when he's done.","delegation",s)),r(11e3,()=>u(i,"Setting up project structure")),r(14e3,()=>u(i,"Building player ship and controls")),r(17e3,()=>u(i,"Adding enemy waves and collision")),r(2e4,()=>u(i,"Implementing score system and UI")),r(23e3,()=>{u(i,"Build passed. All files verified."),p(i,"Space shooter complete — 5 enemy types, power-ups, and high score system.","result")}),r(26e3,()=>u(s,"Checking file structure")),r(29e3,()=>u(s,"Reading game logic and collision detection")),r(32e3,()=>p(s,"VERDICT: PASS — Clean code, smooth gameplay loop, all features working.","result")),r(35e3,()=>p(l,"Great work everyone! The space shooter is ready to ship.","result")),r(39e3,()=>{o({type:"AGENT_FIRED",agentId:l}),o({type:"AGENT_FIRED",agentId:i}),o({type:"AGENT_FIRED",agentId:s}),t.setState({teamMessages:[]}),e()})}(()=>eU(!1))},style:{position:"fixed",bottom:16,left:16,zIndex:50,background:"rgba(232, 176, 64, 0.15)",border:"1px solid rgba(232, 176, 64, 0.4)",color:"#e8b040",padding:"6px 14px",cursor:"pointer",fontSize:11,fontFamily:"monospace",fontWeight:600},children:"Run Demo"})]})}},1204:(e,t,o)=>{"use strict";o.d(t,{FH:()=>i,Ii:()=>g,PT:()=>c,WC:()=>p,iH:()=>m,iZ:()=>d,qZ:()=>s,si:()=>u,vk:()=>f});var n=o(5195),r=o(2243),l=o(9892),a=o(9631);function i(e,t,o,l,a){let i=o*e.cols+t;if(i<0||i>=e.tiles.length)return e;let s=e.tileColors||Array(e.tiles.length).fill(null),c=null!=a?a:l===n.nb.WALL||l===n.nb.VOID?null:{...r.ql};if(e.tiles[i]===l){let t=s[i];if(null===c&&null===t||c&&t&&c.h===t.h&&c.s===t.s&&c.b===t.b&&c.c===t.c&&!!c.colorize==!!t.colorize)return e}let d=[...e.tiles];d[i]=l;let p=[...s];return p[i]=c,{...e,tiles:d,tileColors:p}}function s(e,t){return g(e,t.type,t.col,t.row)?{...e,furniture:[...e.furniture,t]}:e}function c(e,t){let o=e.furniture.filter(e=>e.uid!==t);return o.length===e.furniture.length?e:{...e,furniture:o}}function d(e,t,o,n){let r=e.furniture.find(e=>e.uid===t);return r&&g(e,r.type,o,n,t)?{...e,furniture:e.furniture.map(e=>e.uid===t?{...e,col:o,row:n}:e)}:e}function p(e,t){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"cw",n=e.furniture.find(e=>e.uid===t);if(!n)return e;let r=(0,l.UV)(n.type,o);return r?{...e,furniture:e.furniture.map(e=>e.uid===t?{...e,type:r}:e)}:e}function u(e,t){let o=(0,l.Um)(e);return(null==o?void 0:o.canPlaceOnWalls)?t-(o.footprintH-1):t}function g(e,t,o,r,i){let s=(0,l.Um)(t);if(!s)return!1;if(s.canPlaceOnWalls){let t=r+s.footprintH-1;if(o<0||o+s.footprintW>e.cols||t<0||t>=e.rows)return!1}else if(o<0||r<0||o+s.footprintW>e.cols||r+s.footprintH>e.rows)return!1;let c=s.backgroundTiles||0;for(let t=0;t<s.footprintH;t++)if(!(t<c)&&!(r+t<0)&&(!s.canPlaceOnWalls||!(t<s.footprintH-1)))for(let l=0;l<s.footprintW;l++){let a=(r+t)*e.cols+(o+l),i=e.tiles[a];if(s.canPlaceOnWalls){if(i!==n.nb.WALL)return!1}else if(i===n.nb.VOID||i===n.nb.WALL)return!1}let d=(0,a.Pg)(e.furniture,i),p=null;if(s.canPlaceOnSurfaces)for(let t of(p=new Set,e.furniture)){if(t.uid===i)continue;let e=(0,l.Um)(t.type);if(e&&e.isDesk)for(let o=0;o<e.footprintH;o++)for(let n=0;n<e.footprintW;n++)p.add("".concat(t.col+n,",").concat(t.row+o))}let u=s.backgroundTiles||0;for(let e=0;e<s.footprintH;e++)if(!(e<u)&&!(r+e<0))for(let t=0;t<s.footprintW;t++){let n="".concat(o+t,",").concat(r+e);if(d.has(n)&&!(null==p?void 0:p.has(n)))return!1}return!0}function f(e,t){let{cols:o,rows:r,tiles:l,furniture:a,tileColors:i}=e,s=i||Array(l.length).fill(null),c=o,d=r,p=0,u=0;if("right"===t?c=o+1:"left"===t?(c=o+1,p=1):"down"===t?d=r+1:"up"===t&&(d=r+1,u=1),c>n.Tj||d>n.pX)return null;let g=Array(c*d).fill(n.nb.VOID),f=Array(c*d).fill(null);for(let e=0;e<r;e++)for(let t=0;t<o;t++){let n=e*o+t,r=(e+u)*c+(t+p);g[r]=l[n],f[r]=s[n]}let m=a.map(e=>({...e,col:e.col+p,row:e.row+u}));return{layout:{...e,cols:c,rows:d,tiles:g,tileColors:f,furniture:m},shift:{col:p,row:u}}}function m(e,t,o){for(let n of e.furniture){let e=(0,l.Um)(n.type);if(e){for(let r=0;r<e.footprintH;r++)for(let l=0;l<e.footprintW;l++)if(n.col+l===t&&n.row+r===o)return n}}return null}},1661:(e,t,o)=>{"use strict";o.d(t,{LN:()=>r,Zg:()=>l,fu:()=>s});let n=new Map;function r(e,t,o){let r=n.get(e);if(r)return r;let l=o.colorize?function(e,t){let{h:o,s:n,b:r,c:l}=t,i=[];for(let t of e){let e=[];for(let i of t){if(""===i){e.push("");continue}let t=parseInt(i.slice(1,3),16),s=(.299*t+.587*parseInt(i.slice(3,5),16)+.114*parseInt(i.slice(5,7),16))/255;0!==l&&(s=.5+(100+l)/100*(s-.5)),0!==r&&(s+=r/200);let c=a(o,n/100,s=Math.max(0,Math.min(1,s)));e.push(c)}i.push(e)}return i}(t,o):s(t,o);return n.set(e,l),l}function l(){n.clear()}function a(e,t,o){let n=(1-Math.abs(2*o-1))*t,r=e/60,l=n*(1-Math.abs(r%2-1)),a=0,s=0,c=0;r<1?(a=n,s=l,c=0):r<2?(a=l,s=n,c=0):r<3?(a=0,s=n,c=l):r<4?(a=0,s=l,c=n):r<5?(a=l,s=0,c=n):(a=n,s=0,c=l);let d=o-n/2,p=Math.round((a+d)*255),u=Math.round((s+d)*255),g=Math.round((c+d)*255);return"#".concat(i(p).toString(16).padStart(2,"0")).concat(i(u).toString(16).padStart(2,"0")).concat(i(g).toString(16).padStart(2,"0")).toUpperCase()}function i(e){return Math.max(0,Math.min(255,e))}function s(e,t){let{h:o,s:n,b:r,c:l}=t,i=[];for(let t of e){let e=[];for(let i of t){if(""===i){e.push("");continue}let t=parseInt(i.slice(1,3),16),[s,c,d]=function(e,t,o){let n=e/255,r=t/255,l=o/255,a=Math.max(n,r,l),i=Math.min(n,r,l),s=(a+i)/2;if(a===i)return[0,0,s];let c=a-i;return[a===n?((r-l)/c+6*(r<l))*60:a===r?((l-n)/c+2)*60:((n-r)/c+4)*60,s>.5?c/(2-a-i):c/(a+i),s]}(t,parseInt(i.slice(3,5),16),parseInt(i.slice(5,7),16)),p=((s+o)%360+360)%360,u=Math.max(0,Math.min(1,c+n/100)),g=d;0!==l&&(g=.5+(100+l)/100*(g-.5)),0!==r&&(g+=r/200);let f=a(p,u,g=Math.max(0,Math.min(1,g)));e.push(f)}i.push(e)}return i}},2243:(e,t,o)=>{"use strict";o.d(t,{$L:()=>B,AL:()=>X,BD:()=>eo,BZ:()=>x,DH:()=>er,F2:()=>W,Ii:()=>ee,Jk:()=>ec,M1:()=>y,M_:()=>es,Mo:()=>J,Nd:()=>j,Ns:()=>ex,O1:()=>D,O9:()=>ea,Ot:()=>m,PA:()=>U,Pk:()=>eS,R_:()=>H,Rb:()=>g,S3:()=>d,SS:()=>Y,Sg:()=>F,TE:()=>$,Tj:()=>a,W3:()=>b,W7:()=>L,WJ:()=>A,WK:()=>ei,Wn:()=>E,Ww:()=>h,XE:()=>s,Xo:()=>em,YK:()=>l,YX:()=>z,ZV:()=>el,Zz:()=>et,dn:()=>n,e7:()=>ek,eR:()=>en,fJ:()=>V,fS:()=>ev,gB:()=>v,gD:()=>q,gi:()=>w,hI:()=>C,he:()=>f,i:()=>K,iE:()=>I,ic:()=>eu,k2:()=>eb,k8:()=>u,l0:()=>_,lO:()=>ep,lY:()=>c,n6:()=>R,nW:()=>ed,o3:()=>ey,oj:()=>Q,ou:()=>eh,p7:()=>ef,pX:()=>i,pr:()=>Z,q3:()=>G,qD:()=>O,ql:()=>eC,qt:()=>eg,v3:()=>N,vU:()=>S,wN:()=>k,wh:()=>r,wj:()=>p,y9:()=>P,zY:()=>M,zw:()=>T});let n=16,r=21,l=21,a=64,i=64,s=48,c=.15,d=.3,p=2,u=20,g=3,f=6,m=120,h=240,x=.3,y=6,b=16,k=24,S=30,v=180,C=.3,T="#ccffcc",j=.6,w=.5,E=.33,A=.66,I=6,F=.5,W=.001,D=1,P=.5,O=.5,L=.25,R=[4,3],_=6,z=3,H=.45,Y=1.5,M=.5,N=.5,U=10,B=28,G="#808080",X="rgba(255,255,255,0.12)",V="rgba(255,255,255,0.08)",K=[2,2],J="rgba(60, 130, 220, 0.25)",Z="rgba(60, 130, 220, 0.5)",q="rgba(255, 255, 255, 0.06)",$="#00ff00",Q="#ff0000",ee="#007fd4",et="rgba(200, 50, 50, 0.85)",eo="rgba(50, 120, 200, 0.85)",en=!1,er=.25,el=10,ea=.1,ei=2,es=.3,ec=8,ed=.5,ep=30,eu=6,eg=45,ef=271,em=3,eh=2,ex=8,ey=24,eb=50,ek=500,eS={h:35,s:30,b:15,c:0},ev={h:240,s:25,b:0,c:0},eC={h:0,s:0,b:0,c:0}},2988:(e,t,o)=>{"use strict";o.d(t,{$D:()=>g,Cr:()=>J,Ih:()=>Z,L$:()=>s,SJ:()=>c,US:()=>l,VQ:()=>m,WN:()=>a,Zc:()=>u,bn:()=>X,iK:()=>i,j9:()=>f,mY:()=>p,mr:()=>d});var n=o(5195),r=o(1661);let l=(()=>{let e="#8B6914",t="#A07828",o="#B8922E",n="#6B4E0A",r=[];r.push(Array(32).fill("")),r.push(["",...Array(30).fill(e),""]);for(let n=0;n<4;n++)r.push(["",e,...Array(28).fill(n<1?t:o),e,""]);r.push(["",n,...Array(28).fill(e),n,""]);for(let t=0;t<6;t++)r.push(["",e,...Array(28).fill(o),e,""]);r.push(["",e,...Array(28).fill(t),e,""]);for(let t=0;t<6;t++)r.push(["",e,...Array(28).fill(o),e,""]);r.push(["",n,...Array(28).fill(e),n,""]);for(let n=0;n<4;n++)r.push(["",e,...Array(28).fill(n>2?t:o),e,""]);r.push(["",...Array(30).fill(e),""]);for(let e=0;e<4;e++){let e=Array(32).fill("");e[1]=n,e[2]=n,e[29]=n,e[30]=n,r.push(e)}return r.push(Array(32).fill("")),r.push(Array(32).fill("")),r})(),a=(()=>{let e="#3D8B37",t="#2D6B27",o="#6B4E0A",n="#B85C3A",r="#8B4422";return[["","","","","","",e,e,"","","","","","","",""],["","","","","",e,e,e,e,"","","","","","",""],["","","","",e,e,t,e,e,e,"","","","","",""],["","","",e,e,t,e,e,t,e,e,"","","","",""],["","",e,e,e,e,e,e,e,e,e,e,"","","",""],["",e,e,t,e,e,e,e,e,e,t,e,e,"","",""],["",e,e,e,e,t,e,e,t,e,e,e,e,"","",""],["","",e,e,e,e,e,e,e,e,e,e,"","","",""],["","","",e,e,e,t,e,e,e,e,"","","","",""],["","","","",e,e,e,e,e,e,"","","","","",""],["","","","","",e,e,e,e,"","","","","","",""],["","","","","","",o,o,"","","","","","","",""],["","","","","","",o,o,"","","","","","","",""],["","","","","","",o,o,"","","","","","","",""],["","","","","",r,r,r,r,r,"","","","","",""],["","","","",r,n,n,n,n,n,r,"","","","",""],["","","","",r,n,n,n,n,n,r,"","","","",""],["","","","",r,n,n,n,n,n,r,"","","","",""],["","","","",r,n,n,n,n,n,r,"","","","",""],["","","","",r,n,n,n,n,n,r,"","","","",""],["","","","",r,n,n,n,n,n,r,"","","","",""],["","","","","",r,n,n,n,r,"","","","","",""],["","","","","","",r,r,r,"","","","","","",""],["","","","","","","","","","","","","","","",""]]})(),i=(()=>{let e="#8B6914",t="#6B4E0A",o="#CC4444",n="#4477AA",r="#44AA66",l="#CCAA33",a="#9955AA";return[["",e,e,e,e,e,e,e,e,e,e,e,e,e,e,""],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,o,o,n,n,r,r,l,l,o,o,n,n,t,e],[e,t,o,o,n,n,r,r,l,l,o,o,n,n,t,e],[e,t,o,o,n,n,r,r,l,l,o,o,n,n,t,e],[e,t,o,o,n,n,r,r,l,l,o,o,n,n,t,e],[e,t,o,o,n,n,r,r,l,l,o,o,n,n,t,e],[e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,a,a,l,l,n,n,r,r,a,a,o,o,t,e],[e,t,a,a,l,l,n,n,r,r,a,a,o,o,t,e],[e,t,a,a,l,l,n,n,r,r,a,a,o,o,t,e],[e,t,a,a,l,l,n,n,r,r,a,a,o,o,t,e],[e,t,a,a,l,l,n,n,r,r,a,a,o,o,t,e],[e,t,a,a,l,l,n,n,r,r,a,a,o,o,t,e],[e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,r,r,o,o,a,a,n,n,l,l,r,r,t,e],[e,t,r,r,o,o,a,a,n,n,l,l,r,r,t,e],[e,t,r,r,o,o,a,a,n,n,l,l,r,r,t,e],[e,t,r,r,o,o,a,a,n,n,l,l,r,r,t,e],[e,t,r,r,o,o,a,a,n,n,l,l,r,r,t,e],[e,t,r,r,o,o,a,a,n,n,l,l,r,r,t,e],[e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e],[e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e],["",e,e,e,e,e,e,e,e,e,e,e,e,e,e,""]]})(),s=(()=>{let e="#CCDDEE",t="#88BBDD",o="#999999",n="#666666";return[["","","","","","","","","","","","","","","",""],["","","","","",o,o,o,o,o,o,"","","","",""],["","","","",o,t,t,t,t,t,t,o,"","","",""],["","","","",o,t,t,t,t,t,t,o,"","","",""],["","","","",o,t,t,t,t,t,t,o,"","","",""],["","","","",o,t,t,t,t,t,t,o,"","","",""],["","","","",o,t,t,t,t,t,t,o,"","","",""],["","","","","",o,o,o,o,o,o,"","","","",""],["","","","","",o,e,e,e,e,o,"","","","",""],["","","","","",o,e,e,e,e,o,"","","","",""],["","","","","",o,e,e,e,e,o,"","","","",""],["","","","","",o,e,e,e,e,o,"","","","",""],["","","","","",o,e,e,e,e,o,"","","","",""],["","","","",o,o,e,e,e,e,o,o,"","","",""],["","","","",o,e,e,e,e,e,e,o,"","","",""],["","","","",o,e,e,e,e,e,e,o,"","","",""],["","","","",o,o,o,o,o,o,o,o,"","","",""],["","","","","",o,n,n,n,n,o,"","","","",""],["","","","","",o,n,n,n,n,o,"","","","",""],["","","","","",o,n,n,n,n,o,"","","","",""],["","","","",o,o,n,n,n,n,o,o,"","","",""],["","","","",o,n,n,n,n,n,n,o,"","","",""],["","","","",o,o,o,o,o,o,o,o,"","","",""],["","","","","","","","","","","","","","","",""]]})(),c=(()=>{let e="#AAAAAA",t="#EEEEFF",o="#CC4444",n="#4477AA";return[["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],["",e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e,""],["",e,t,t,o,o,o,t,t,t,t,t,n,n,n,n,t,t,t,t,t,t,t,o,t,t,t,t,t,t,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,n,n,t,t,o,t,t,t,t,t,t,e,""],["",e,t,t,t,t,o,o,o,o,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,n,n,t,t,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,n,n,n,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,o,o,o,t,t,t,t,t,t,t,e,""],["",e,t,o,o,t,t,t,t,t,t,t,t,t,t,t,n,n,t,t,t,t,t,t,t,t,t,t,t,t,e,""],["",e,t,t,t,t,t,t,n,n,n,t,t,t,t,t,t,t,t,t,t,t,t,t,o,o,o,o,t,t,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,e,""],["",e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,""],["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""]]})(),d=(()=>{let e="#8B6914",t="#6B4E0A",o="#5C3D0A",n="#A07828";return[["","","","","",t,t,t,t,t,t,"","","","",""],["","","","",t,o,o,o,o,o,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,n,n,n,n,o,t,"","","",""],["","","","",t,o,o,o,o,o,o,t,"","","",""],["","","","","",t,t,t,t,t,t,"","","","",""],["","","","","","",t,e,e,t,"","","","","",""],["","","","","","",t,e,e,t,"","","","","",""],["","","","","",t,t,t,t,t,t,"","","","",""],["","","","","",t,"","","","",t,"","","","",""],["","","","","",t,"","","","",t,"","","","",""]]})(),p=(()=>{let e="#555555",t="#3A3A5C",o="#6688CC",n="#444444";return[["","","",e,e,e,e,e,e,e,e,e,e,"","",""],["","","",e,t,t,t,t,t,t,t,t,e,"","",""],["","","",e,t,o,o,o,o,o,o,t,e,"","",""],["","","",e,t,o,o,o,o,o,o,t,e,"","",""],["","","",e,t,o,o,o,o,o,o,t,e,"","",""],["","","",e,t,o,o,o,o,o,o,t,e,"","",""],["","","",e,t,o,o,o,o,o,o,t,e,"","",""],["","","",e,t,o,o,o,o,o,o,t,e,"","",""],["","","",e,t,t,t,t,t,t,t,t,e,"","",""],["","","",e,e,e,e,e,e,e,e,e,e,"","",""],["","","","","","","",n,n,"","","","","","",""],["","","","","","","",n,n,"","","","","","",""],["","","","","","",n,n,n,n,"","","","","",""],["","","","","",n,n,n,n,n,n,"","","","",""],["","","","","",n,n,n,n,n,n,"","","","",""],["","","","","","","","","","","","","","","",""]]})(),u=(()=>{let e="#FFDD55",t="#FFEE88",o="#888888",n="#555555",r="#FFFFCC";return[["","","","","","","","","","","","","","","",""],["","","","","","",r,r,r,r,"","","","","",""],["","","","","",r,e,e,e,e,r,"","","","",""],["","","","",r,e,e,t,t,e,e,r,"","","",""],["","","","",e,e,t,t,t,t,e,e,"","","",""],["","","","",e,e,t,t,t,t,e,e,"","","",""],["","","","","",e,e,e,e,e,e,"","","","",""],["","","","","","",o,o,o,o,"","","","","",""],["","","","","","","",o,o,"","","","","","",""],["","","","","","","",o,o,"","","","","","",""],["","","","","","","",o,o,"","","","","","",""],["","","","","","","",o,o,"","","","","","",""],["","","","","","",o,o,o,o,"","","","","",""],["","","","","",n,n,n,n,n,n,"","","","",""],["","","","","",n,n,n,n,n,n,"","","","",""],["","","","","","","","","","","","","","","",""]]})(),g=(()=>{let e="#555566",t="#EEEEFF",o="#CCA700";return[["","","",e,e,e,e,e,"","",""],["","",e,t,t,t,t,t,e,"",""],["",e,t,t,t,t,t,t,t,e,""],[e,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,e],[e,t,t,o,t,o,t,o,t,t,e],[e,t,t,t,t,t,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,e],["",e,t,t,t,t,t,t,t,e,""],["","",e,e,e,e,e,e,e,"",""],["","","","",e,e,e,"","","",""],["","","","","",e,"","","","",""],["","","","","","","","","","",""]]})(),f=(()=>{let e="#555566",t="#EEEEFF",o="#D4A017",n="#F5C842";return[["","","",e,e,e,e,e,"","",""],["","",e,t,t,t,n,t,e,"",""],["",e,t,t,t,n,n,t,t,e,""],[e,t,t,t,n,n,t,t,t,t,e],[e,t,t,n,n,n,n,n,t,t,e],[e,t,t,t,t,o,o,t,t,t,e],[e,t,t,t,o,o,t,t,t,t,e],[e,t,t,o,o,t,t,t,t,t,e],["",e,t,t,o,t,t,t,t,e,""],["","",e,e,e,e,e,e,e,"",""],["","","","",e,e,e,"","","",""],["","","","","",e,"","","","",""],["","","","","","","","","","",""]]})(),m=(()=>{let e="#555566",t="#EEEEFF",o="#44BB66";return[["","","",e,e,e,e,e,"","",""],["","",e,t,t,t,t,t,e,"",""],["",e,t,t,t,t,t,t,t,e,""],[e,t,t,t,t,t,t,t,o,t,e],[e,t,t,t,t,t,t,o,t,t,e],[e,t,t,o,t,t,o,t,t,t,e],[e,t,t,t,o,o,t,t,t,t,e],[e,t,t,t,t,t,t,t,t,t,e],["",e,t,t,t,t,t,t,t,e,""],["","",e,e,e,e,e,e,e,"",""],["","","","",e,e,e,"","","",""],["","","","","",e,"","","","",""],["","","","","","","","","","",""]]})(),h=[{skin:"#FFCC99",shirt:"#4488CC",pants:"#334466",hair:"#553322",shoes:"#222222"},{skin:"#FFCC99",shirt:"#CC4444",pants:"#333333",hair:"#FFD700",shoes:"#222222"},{skin:"#DEB887",shirt:"#44AA66",pants:"#334444",hair:"#222222",shoes:"#333333"},{skin:"#FFCC99",shirt:"#AA55CC",pants:"#443355",hair:"#AA4422",shoes:"#222222"},{skin:"#DEB887",shirt:"#CCAA33",pants:"#444433",hair:"#553322",shoes:"#333333"},{skin:"#FFCC99",shirt:"#FF8844",pants:"#443322",hair:"#111111",shoes:"#222222"}],x="hair",y="skin",b="shirt",k="pants",S="shoes",v="#FFFFFF";function C(e,t){return e.map(e=>e.map(e=>""===e?"":e===v?v:e===x?t.hair:e===y?t.skin:e===b?t.shirt:e===k?t.pants:e===S?t.shoes:e))}let T=[["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","",k,k,"","","","",k,k,"","","",""],["","","","",k,k,"","","","",k,k,"","","",""],["","","","",S,S,"","","","","",S,S,"","",""],["","","","",S,S,"","","","","",S,S,"","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],j=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],w=[["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","",S,S,"","","","","","",k,k,"","",""],["","","",S,S,"","","","","","",k,k,"","",""],["","","","","","","","","","",S,S,"","","",""],["","","","","","","","","","",S,S,"","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],E=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","",y,y,b,b,b,b,b,b,y,y,"","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],A=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,y,"","",""],["","","","",y,b,b,b,b,b,b,"",y,"","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],I=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],F=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,v,y,y,v,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],W=[["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","",k,k,"","","","",k,k,"","","",""],["","","","",k,k,"","","","",k,k,"","","",""],["","","",S,S,"","","","","","",S,S,"","",""],["","","",S,S,"","","","","","",S,S,"","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],D=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],P=[["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","",S,S,"","","","","","",k,k,"","",""],["","","",S,S,"","","","","","",k,k,"","",""],["","","","","","","","","","",S,S,"","","",""],["","","","","","","","","","",S,S,"","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],O=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","",y,y,b,b,b,b,b,b,y,y,"","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],L=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,y,"","",""],["","","","",y,b,b,b,b,b,b,"",y,"","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],R=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],_=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",b,b,b,b,b,b,b,b,"","","",""],["","","","",y,b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],z=[["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",y,b,b,b,b,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,"","","",k,k,"","","",""],["","","","","",k,k,"","","",k,k,"","","",""],["","","","","",S,S,"","","","",S,S,"","",""],["","","","","",S,S,"","","","",S,S,"","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],H=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",y,b,b,b,b,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],Y=[["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",y,b,b,b,b,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","","","",k,k,k,"","","","",""],["","","","","","","","",k,k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","",S,S,"","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],M=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,y,"","","",""],["","","","","",b,b,b,b,b,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],N=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"",y,"","",""],["","","","","",b,b,b,b,b,"","",y,"","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],U=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",y,b,b,b,b,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],B=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,v,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","","","",b,b,b,"","","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",y,b,b,b,b,y,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],G=null;function X(e){G=e,K.clear()}function V(e){return e.map(e=>[...e].reverse())}let K=new Map;function J(e){return G?G[e%G.length].down[1]:null}function Z(e){let t,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,l="".concat(e,":").concat(o),a=K.get(l);if(a)return a;if(G){let o=G[e%G.length],r=o.down,l=o.up,a=o.right;t={walk:{[n.OP.DOWN]:[r[0],r[1],r[2],r[1]],[n.OP.UP]:[l[0],l[1],l[2],l[1]],[n.OP.RIGHT]:[a[0],a[1],a[2],a[1]],[n.OP.LEFT]:[V(a[0]),V(a[1]),V(a[2]),V(a[1])]},typing:{[n.OP.DOWN]:[r[3],r[4]],[n.OP.UP]:[l[3],l[4]],[n.OP.RIGHT]:[a[3],a[4]],[n.OP.LEFT]:[V(a[3]),V(a[4])]},reading:{[n.OP.DOWN]:[r[5],r[6]],[n.OP.UP]:[l[5],l[6]],[n.OP.RIGHT]:[a[5],a[6]],[n.OP.LEFT]:[V(a[5]),V(a[6])]}}}else{let o=h[e%h.length],r=e=>C(e,o),l=e=>C(e.map(e=>[...e].reverse()),o);t={walk:{[n.OP.DOWN]:[r(T),r(j),r(w),r(j)],[n.OP.UP]:[r(W),r(D),r(P),r(D)],[n.OP.RIGHT]:[r(z),r(H),r(Y),r(H)],[n.OP.LEFT]:[l(z),l(H),l(Y),l(H)]},typing:{[n.OP.DOWN]:[r(E),r(A)],[n.OP.UP]:[r(O),r(L)],[n.OP.RIGHT]:[r(M),r(N)],[n.OP.LEFT]:[l(M),l(N)]},reading:{[n.OP.DOWN]:[r(I),r(F)],[n.OP.UP]:[r(R),r(_)],[n.OP.RIGHT]:[r(U),r(B)],[n.OP.LEFT]:[l(U),l(B)]}}}return 0!==o&&(t=function(e,t){let o={h:t,s:0,b:0,c:0},l=e=>(0,r.fu)(e,o),a=e=>[l(e[0]),l(e[1]),l(e[2]),l(e[3])],i=e=>[l(e[0]),l(e[1])];return{walk:{[n.OP.DOWN]:a(e.walk[n.OP.DOWN]),[n.OP.UP]:a(e.walk[n.OP.UP]),[n.OP.RIGHT]:a(e.walk[n.OP.RIGHT]),[n.OP.LEFT]:a(e.walk[n.OP.LEFT])},typing:{[n.OP.DOWN]:i(e.typing[n.OP.DOWN]),[n.OP.UP]:i(e.typing[n.OP.UP]),[n.OP.RIGHT]:i(e.typing[n.OP.RIGHT]),[n.OP.LEFT]:i(e.typing[n.OP.LEFT])},reading:{[n.OP.DOWN]:i(e.reading[n.OP.DOWN]),[n.OP.UP]:i(e.reading[n.OP.UP]),[n.OP.RIGHT]:i(e.reading[n.OP.RIGHT]),[n.OP.LEFT]:i(e.reading[n.OP.LEFT])}}}(t,o)),K.set(l,t),t}},3423:(e,t,o)=>{Promise.resolve().then(o.bind(o,533))},4296:(e,t,o)=>{"use strict";o.d(t,{F:()=>m,Q:()=>p});var n=o(2988),r=o(4777),l=o(5055);let a=["down","up","right"];function i(e){return new Promise((t,o)=>{let n=new Image;n.crossOrigin="anonymous",n.onload=()=>t(n),n.onerror=t=>o(Error("Failed to load image: ".concat(e," — ").concat(t))),n.src=e})}function s(e,t,o,n,r){let l=document.createElement("canvas");l.width=n,l.height=r;let a=l.getContext("2d"),i=e.naturalWidth,s=e.naturalHeight,c=Math.max(0,t),d=Math.max(0,o),p=Math.min(t+n,i)-c,u=Math.min(o+r,s)-d;p>0&&u>0&&a.drawImage(e,c,d,p,u,c-t,d-o,p,u);let{data:g}=a.getImageData(0,0,n,r),f=[];for(let e=0;e<r;e++){let t=[];for(let o=0;o<n;o++){let r=(e*n+o)*4,l=g[r],a=g[r+1],i=g[r+2];g[r+3]<128?t.push(""):t.push("#".concat(l.toString(16).padStart(2,"0")).concat(a.toString(16).padStart(2,"0")).concat(i.toString(16).padStart(2,"0")).toUpperCase())}f.push(t)}return f}async function c(){let e=[];for(let t=0;t<6;t++){let o=await i("/assets/characters/char_".concat(t,".png")),n={down:[],up:[],right:[]};for(let e=0;e<a.length;e++){let t=a[e],r=32*e,l=[];for(let e=0;e<7;e++){let t=16*e;l.push(s(o,t,r,16,32))}n[t]=l}e.push(n)}return e}async function d(){let e=await i("/assets/walls.png"),t=[];for(let o=0;o<16;o++){let n=o%4*16,r=32*Math.floor(o/4);t.push(s(e,n,r,16,32))}return t}let p=[{id:"ASSET_4",label:"Wooden Counter",srcX:128,srcY:0,srcW:48,srcH:32,footprintW:3,footprintH:2,isDesk:!0,category:"desks",backgroundTiles:1},{id:"ASSET_7",label:"White Counter",srcX:80,srcY:23,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!0,category:"desks",backgroundTiles:1},{id:"ASSET_15",label:"Plastic Counter",srcX:128,srcY:64,srcW:48,srcH:32,footprintW:3,footprintH:2,isDesk:!0,category:"desks",backgroundTiles:1},{id:"ASSET_NEW_106",label:"Wooden Table",srcX:16,srcY:-9,srcW:48,srcH:32,footprintW:3,footprintH:2,isDesk:!0,category:"desks",backgroundTiles:1},{id:"ASSET_27_A",label:"Large Table",srcX:0,srcY:544,srcW:32,srcH:64,footprintW:2,footprintH:4,isDesk:!0,category:"desks",backgroundTiles:1},{id:"ASSET_46",label:"Vertical Table",srcX:16,srcY:288,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!0,category:"desks"},{id:"ASSET_NEW_112",label:"Coffee Table",srcX:96,srcY:512,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!0,category:"desks",backgroundTiles:1},{id:"ASSET_50_0_0",label:"Wood Coffee Table",srcX:64,srcY:299,srcW:32,srcH:16,footprintW:2,footprintH:1,isDesk:!0,category:"desks"},{id:"ASSET_17",label:"Wooden Bookshelf",srcX:128,srcY:512,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_18",label:"Full Bookshelf",srcX:160,srcY:512,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_27_B_A_A",label:"Bookshelf Tall",srcX:128,srcY:183,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_27_B_A_B_A",label:"Full Bookshelf Tall",srcX:144,srcY:183,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_27_B_A_B_B_A",label:"Cabinet Tall",srcX:160,srcY:183,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_28",label:"White Bookshelf",srcX:192,srcY:184,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_41_0_1",label:"Fridge",srcX:208,srcY:264,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_139",label:"Crates",srcX:224,srcY:447,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"storage",backgroundTiles:1},{id:"ASSET_32",label:"Chair Front",srcX:0,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_38",label:"Chair Back",srcX:16,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_33",label:"Chair Right",srcX:32,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_34",label:"Chair Left",srcX:48,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_35",label:"Office Chair Front",srcX:64,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_39",label:"Office Chair Back",srcX:80,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_36",label:"Office Chair Right",srcX:96,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_37",label:"Office Chair Left",srcX:112,srcY:258,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_49",label:"Stool",srcX:0,srcY:290,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"chairs"},{id:"ASSET_NEW_110",label:"Large Chair Right",srcX:192,srcY:512,srcW:16,srcH:48,footprintW:1,footprintH:3,isDesk:!1,category:"chairs"},{id:"ASSET_NEW_111",label:"Large Chair Left",srcX:208,srcY:512,srcW:16,srcH:48,footprintW:1,footprintH:3,isDesk:!1,category:"chairs"},{id:"ASSET_90",label:"Computer + Coffee",srcX:192,srcY:358,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_74",label:"CRT Monitor Off",srcX:128,srcY:360,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0},{id:"ASSET_76",label:"CRT Monitor On",srcX:160,srcY:360,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0},{id:"ASSET_78",label:"Monitor Off",srcX:192,srcY:359,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0},{id:"ASSET_79",label:"Monitor On",srcX:224,srcY:359,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0},{id:"ASSET_107",label:"Laptop Off",srcX:128,srcY:384,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_108",label:"Laptop On",srcX:144,srcY:384,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_99",label:"Laptop Left",srcX:177,srcY:386,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_109",label:"Laptop Back",srcX:192,srcY:386,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_61",label:"Telephone",srcX:192,srcY:304,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_123",label:"Server",srcX:131,srcY:417,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_126",label:"Printer",srcX:216,srcY:423,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"electronics",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_63",label:"Wood Window",srcX:32,srcY:319,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_64",label:"White Window",srcX:64,srcY:319,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_80",label:"Small Window Wood",srcX:80,srcY:351,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_81",label:"Small Window White",srcX:96,srcY:351,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_83",label:"Clock White",srcX:0,srcY:360,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_84",label:"Clock Color",srcX:15,srcY:352,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_101",label:"Painting",srcX:0,srcY:384,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_102",label:"Painting 2",srcX:32,srcY:384,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_103",label:"Small Painting",srcX:64,srcY:384,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_118",label:"Chart 1",srcX:32,srcY:415,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_122",label:"Chalkboard",srcX:0,srcY:415,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_134",label:"Chart 2",srcX:0,srcY:448,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"wall",canPlaceOnWalls:!0},{id:"ASSET_140",label:"White Plant",srcX:32,srcY:448,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"decor",backgroundTiles:1},{id:"ASSET_141",label:"White Plant 2",srcX:32,srcY:448,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"decor",backgroundTiles:1},{id:"ASSET_142",label:"Plant",srcX:32,srcY:448,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"decor",backgroundTiles:1},{id:"ASSET_143",label:"Plant 2",srcX:32,srcY:448,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"decor",backgroundTiles:1},{id:"ASSET_72",label:"Red Book",srcX:163,srcY:336,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"decor",canPlaceOnSurfaces:!0},{id:"ASSET_100",label:"Paper",srcX:240,srcY:384,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"decor",canPlaceOnSurfaces:!0,backgroundTiles:1},{id:"ASSET_40",label:"Vending Machine",srcX:224,srcY:264,srcW:32,srcH:32,footprintW:2,footprintH:2,isDesk:!1,category:"misc",backgroundTiles:1},{id:"ASSET_42",label:"Water Cooler",srcX:142,srcY:264,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"misc",backgroundTiles:1},{id:"ASSET_44",label:"Bin",srcX:128,srcY:278,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"misc"},{id:"ASSET_51",label:"Coffee Mug",srcX:225,srcY:299,srcW:16,srcH:16,footprintW:1,footprintH:1,isDesk:!1,category:"misc",canPlaceOnSurfaces:!0},{id:"ASSET_55",label:"Coffee Machine",srcX:161,srcY:309,srcW:16,srcH:32,footprintW:1,footprintH:2,isDesk:!1,category:"misc",canPlaceOnSurfaces:!0,backgroundTiles:1}],u={ASSET_17:{fill:"#8B6914",edge:"#5B4910"},ASSET_18:{fill:"#7B5910",edge:"#4B3908"},ASSET_27_A:{fill:"#D4C090",edge:"#B8A070"},ASSET_NEW_106:{fill:"#C8B480",edge:"#A89460"},ASSET_NEW_110:{fill:"#9B5050",edge:"#6B3030"},ASSET_NEW_111:{fill:"#9B5050",edge:"#6B3030"},ASSET_NEW_112:{fill:"#D4C090",edge:"#B8A070"}};async function g(){let e=new Map,t=null;try{t=await i("/Office%20Tileset/Office%20Tileset%20All%2016x16.png?v=".concat(Date.now())),console.log("[tileset] loaded ".concat(t.naturalWidth,"\xd7").concat(t.naturalHeight))}catch(e){console.warn("[tileset] tileset image not found, using fallback sprites only")}for(let o of p){if(t){let n=s(t,o.srcX,o.srcY,o.srcW,o.srcH);if(!function(e){for(let t of e)for(let e of t)if(""!==e)return!1;return!0}(n)){e.set(o.id,n);continue}console.warn("[tileset] empty sprite: ".concat(o.id," at (").concat(o.srcX,",").concat(o.srcY,") ").concat(o.srcW,"\xd7").concat(o.srcH))}let n=u[o.id];n&&e.set(o.id,function(e,t,o,n){let r=[];for(let l=0;l<t;l++){let a=[];for(let r=0;r<e;r++)0===r||r===e-1||0===l||l===t-1?a.push(n):a.push(o);r.push(a)}return r}(o.srcW,o.srcH,n.fill,n.edge))}return{sprites:e}}async function f(){try{let e=await fetch("/pixel-agents-layout.json");if(!e.ok)return null;let t=await e.json();if(t&&1===t.version&&Array.isArray(t.tiles))return t;return null}catch(e){return null}}async function m(){let[e,t,o,a]=await Promise.all([c(),d(),g(),f()]),i=function(){let e=[],t=[{base:"#C8B896",accent:"#B8A886"},{base:"#D4C4A0",accent:"#C4B490"},{base:"#B0A888",accent:"#A09878"},{base:"#A89078",accent:"#988068"},{base:"#C0B898",accent:"#B0A888"},{base:"#B8A890",accent:"#A89880"},{base:"#D0C0A0",accent:"#C0B090"}];for(let o=0;o<7;o++){let{base:n,accent:r}=t[o],l=[];for(let e=0;e<16;e++){let t=[];for(let o=0;o<16;o++){let l=(o+e)%4==0||(3*o+7*e)%11==0;t.push(l?r:n)}l.push(t)}e.push(l)}return e}();return(0,n.bn)(e),(0,l.ZZ)(t),(0,r.Di)(i),{characters:e,walls:t,floors:i,tilesetSprites:o.sprites,layout:a}}},4777:(e,t,o)=>{"use strict";o.d(t,{$0:()=>c,Di:()=>s,QQ:()=>d,To:()=>p,ty:()=>i});var n=o(1661),r=o(2243);let l=Array.from({length:r.dn},()=>Array(r.dn).fill(r.q3)),a=[],i="#3A3A5C";function s(e){a=e,(0,n.Zg)()}function c(){return!0}function d(){return a.length>0?a.length:1}function p(e,t){let o="floor-".concat(e,"-").concat(t.h,"-").concat(t.s,"-").concat(t.b,"-").concat(t.c),r=function(e){let t=e-1;return t<0?null:t<a.length?a[t]:0===a.length&&e>=1?l:null}(e);return r?(0,n.LN)(o,r,{...t,colorize:!0}):Array.from({length:16},()=>Array(16).fill("#FF00FF"))}},5026:(e,t,o)=>{"use strict";o.d(t,{Ng:()=>ep,S8:()=>eu});var n=o(9984),r=o(6353);let l=r.k5(["idle","working","waiting_approval","done","error"]),a=r.k5(["low","med","high"]),i=r.k5(["yes","no"]),s=r.k5(["create","design","execute","complete"]);r.k5(["owner","collaborator","spectator"]);let c=r.Ik({type:r.eu("RUN_TASK"),agentId:r.Yj(),taskId:r.Yj(),prompt:r.Yj(),repoPath:r.Yj().optional(),name:r.Yj().optional(),role:r.Yj().optional(),personality:r.Yj().optional(),backend:r.Yj().optional(),teamId:r.Yj().optional()}),d=r.Ik({type:r.eu("APPROVAL_DECISION"),approvalId:r.Yj(),decision:i}),p=r.Ik({type:r.eu("CANCEL_TASK"),agentId:r.Yj(),taskId:r.Yj()}),u=r.Ik({type:r.eu("PING")}),g=r.Ik({type:r.eu("CREATE_AGENT"),agentId:r.Yj(),name:r.Yj(),role:r.Yj(),palette:r.ai().optional(),personality:r.Yj().optional(),backend:r.Yj().optional(),teamId:r.Yj().optional()}),f=r.Ik({type:r.eu("FIRE_AGENT"),agentId:r.Yj()}),m=r.Ik({type:r.eu("OPEN_FILE"),path:r.Yj()}),h=r.Ik({type:r.eu("CREATE_TEAM"),leadId:r.Yj(),memberIds:r.YO(r.Yj()),backends:r.g1(r.Yj(),r.Yj()).optional()}),x=r.Ik({type:r.eu("SERVE_PREVIEW"),filePath:r.Yj().optional(),previewCmd:r.Yj().optional(),previewPort:r.ai().optional(),cwd:r.Yj().optional()}),y=r.Ik({type:r.eu("STOP_TEAM")}),b=r.Ik({type:r.eu("FIRE_TEAM")}),k=r.Ik({type:r.eu("KILL_EXTERNAL"),agentId:r.Yj()}),S=r.Ik({type:r.eu("APPROVE_PLAN"),agentId:r.Yj()}),v=r.Ik({type:r.eu("END_PROJECT"),agentId:r.Yj(),name:r.Yj().optional(),role:r.Yj().optional(),personality:r.Yj().optional(),backend:r.Yj().optional()}),C=r.Ik({type:r.eu("SAVE_AGENT_DEF"),agent:r.Ik({id:r.Yj(),name:r.Yj(),role:r.Yj(),skills:r.Yj(),personality:r.Yj(),palette:r.ai(),isBuiltin:r.zM(),teamRole:r.k5(["dev","reviewer","leader"])})}),T=r.Ik({type:r.eu("DELETE_AGENT_DEF"),agentDefId:r.Yj()}),j=r.Ik({type:r.eu("SUGGEST"),text:r.Yj().max(500),author:r.Yj().max(30).optional()}),w=r.Ik({type:r.eu("RATE_PROJECT"),projectId:r.Yj().optional(),ratings:r.g1(r.Yj(),r.ai().min(1).max(5))}),E=r.Ik({type:r.eu("LIST_PROJECTS")}),A=r.Ik({type:r.eu("LOAD_PROJECT"),projectId:r.Yj()});r.gM("type",[c,d,p,u,g,f,m,h,x,y,b,k,S,v,C,T,j,w,E,A]);let I=r.Ik({type:r.eu("AGENT_STATUS"),agentId:r.Yj(),status:l,details:r.Yj().optional()}),F=r.Ik({type:r.eu("TASK_STARTED"),agentId:r.Yj(),taskId:r.Yj(),prompt:r.Yj()}),W=r.Ik({type:r.eu("LOG_APPEND"),agentId:r.Yj(),taskId:r.Yj(),stream:r.k5(["stdout","stderr"]),chunk:r.Yj()}),D=r.Ik({type:r.eu("APPROVAL_NEEDED"),approvalId:r.Yj(),agentId:r.Yj(),taskId:r.Yj(),title:r.Yj(),summary:r.Yj(),riskLevel:a}),P=r.Ik({inputTokens:r.ai(),outputTokens:r.ai()}),O=r.Ik({summary:r.Yj(),fullOutput:r.Yj().optional(),changedFiles:r.YO(r.Yj()),diffStat:r.Yj(),testResult:r.k5(["passed","failed","unknown"]),nextSuggestion:r.Yj().optional(),previewUrl:r.Yj().optional(),previewPath:r.Yj().optional(),entryFile:r.Yj().optional(),projectDir:r.Yj().optional(),previewCmd:r.Yj().optional(),previewPort:r.ai().optional(),tokenUsage:P.optional()}),L=r.Ik({type:r.eu("TASK_DONE"),agentId:r.Yj(),taskId:r.Yj(),result:O,isFinalResult:r.zM().optional()}),R=r.Ik({type:r.eu("TASK_FAILED"),agentId:r.Yj(),taskId:r.Yj(),error:r.Yj()}),_=r.Ik({type:r.eu("TASK_DELEGATED"),fromAgentId:r.Yj(),toAgentId:r.Yj(),taskId:r.Yj(),prompt:r.Yj()}),z=r.Ik({type:r.eu("AGENT_CREATED"),agentId:r.Yj(),name:r.Yj(),role:r.Yj(),palette:r.ai().optional(),personality:r.Yj().optional(),backend:r.Yj().optional(),isTeamLead:r.zM().optional(),teamId:r.Yj().optional(),isExternal:r.zM().optional(),pid:r.ai().optional(),cwd:r.Yj().optional(),startedAt:r.ai().optional()}),H=r.Ik({type:r.eu("AGENT_FIRED"),agentId:r.Yj()}),Y=r.Ik({type:r.eu("TASK_RESULT_RETURNED"),fromAgentId:r.Yj(),toAgentId:r.Yj(),taskId:r.Yj(),summary:r.Yj(),success:r.zM()}),M=r.Ik({type:r.eu("TEAM_CHAT"),fromAgentId:r.Yj(),toAgentId:r.Yj().optional(),message:r.Yj(),messageType:r.k5(["delegation","result","status"]),taskId:r.Yj().optional(),timestamp:r.ai()}),N=r.Ik({type:r.eu("TASK_QUEUED"),agentId:r.Yj(),taskId:r.Yj(),prompt:r.Yj(),position:r.ai()}),U=r.Ik({type:r.eu("TOKEN_UPDATE"),agentId:r.Yj(),inputTokens:r.ai(),outputTokens:r.ai()}),B=r.Ik({type:r.eu("TEAM_PHASE"),teamId:r.Yj(),phase:s,leadAgentId:r.Yj()}),G=r.Ik({type:r.eu("SUGGESTION"),text:r.Yj(),author:r.Yj(),timestamp:r.ai()}),X=r.Ik({type:r.eu("AGENT_DEFS"),agents:r.YO(r.Ik({id:r.Yj(),name:r.Yj(),role:r.Yj(),skills:r.Yj(),personality:r.Yj(),palette:r.ai(),isBuiltin:r.zM(),teamRole:r.k5(["dev","reviewer","leader"])}))}),V=r.Ik({type:r.eu("AGENTS_SYNC"),agentIds:r.YO(r.Yj())}),K=r.Ik({entryFile:r.Yj().optional(),projectDir:r.Yj().optional(),previewCmd:r.Yj().optional(),previewPort:r.ai().optional()}).optional(),J=r.Ik({type:r.eu("PROJECT_LIST"),projects:r.YO(r.Ik({id:r.Yj(),name:r.Yj(),startedAt:r.ai(),endedAt:r.ai(),agentNames:r.YO(r.Yj()),eventCount:r.ai(),preview:K,tokenUsage:r.Ik({inputTokens:r.ai(),outputTokens:r.ai()}).optional(),ratings:r.g1(r.Yj(),r.ai()).optional()}))}),Z=r.Ik({type:r.eu("PROJECT_DATA"),projectId:r.Yj(),name:r.Yj(),startedAt:r.ai(),endedAt:r.ai(),events:r.YO(r.bz())}),q=r.Ik({type:r.eu("PREVIEW_READY"),url:r.Yj()}),$=r.gM("type",[V,I,F,W,D,L,R,_,z,H,Y,M,N,U,B,X,G,J,Z,q]);[{palette:0,name:"Alex",role:"Frontend Dev",description:"UI components, React/Next.js/CSS",personality:"You speak in a friendly, casual, encouraging, and natural tone."},{palette:1,name:"Mia",role:"Backend Dev",description:"APIs, database, server logic",personality:"You speak formally, professionally, in an organized and concise manner."},{palette:2,name:"Leo",role:"Fullstack Dev",description:"End-to-end, frontend + backend",personality:"You are aggressive, action-first, always pursuing speed and efficiency."},{palette:3,name:"Sophie",role:"Code Reviewer",description:"Review PRs, find bugs, quality",personality:"You teach patiently, explain the reasoning, and guide like a mentor."},{palette:4,name:"Kai",role:"Game Dev",description:"Web games, PixiJS/Three.js/Canvas",personality:"You are enthusiastic, creative, and obsessive about game feel. You care deeply about smooth animations, tight controls, and the little details that make a game satisfying to play."},{palette:5,name:"Marcus",role:"Team Lead",description:"Creative direction, planning, delegation",personality:"You have strong product intuition and communicate with clarity and vision. You focus on the big picture, make decisive creative calls, and keep the team aligned.",isLeader:!0}].findIndex(e=>e.isLeader);var Q=o(138),ee=o(5149);let et=null,eo=null,en=null,er=null,el=null,ea=null;function ei(){er&&(clearTimeout(er),er=null),en&&(en.onopen=null,en.onmessage=null,en.onclose=null,en.onerror=null,en.close(),en=null)}function es(e){if(!en||en.readyState!==WebSocket.OPEN)return void console.warn("[WS] Not connected, dropping command:",e.type);console.log("[WS] Sending command:",e.type,e),en.send(JSON.stringify(e))}let ec=null,ed=0;function ep(e){var t,r,l,a;eg();let i=++ed;return"ws"===e.mode&&e.wsUrl?(ec="ws",t=e.wsUrl,r=e.sessionToken,ei(),el=t,ea=null!=r?r:null,function e(){if(!el)return;let t=new WebSocket(el);t.onopen=()=>{console.log("[WS] Connected"),t.readyState===WebSocket.OPEN&&ea&&t.send(JSON.stringify({type:"AUTH",sessionToken:ea})),Q.h.getState().setConnected(!0),t.readyState===WebSocket.OPEN&&t.send(JSON.stringify({type:"PING"}))},t.onmessage=e=>{try{let t=JSON.parse(e.data);if("AUTH_FAILED"===t.type){console.log("[WS] AUTH_FAILED — clearing connection and redirecting to /pair"),ei(),el=null;let{clearConnection:e}=o(5149);e(),window.location.href="/pair";return}let n=$.parse(t);Q.h.getState().handleEvent(n)}catch(e){console.error("[WS] Invalid event:",e)}},t.onclose=()=>{console.log("[WS] Disconnected"),Q.h.getState().setConnected(!1),en===t&&el&&(en=null,er=setTimeout(e,2e3))},t.onerror=()=>{},en=t}()):"ably"===e.mode&&(ec="ably",l=e.machineId,a=e.sessionToken,(et=new n.Realtime({authCallback:async(e,t)=>{try{let e=(0,ee.getGatewayHttpUrl)(),o=await fetch("".concat(e,"/ably/token"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({machineId:l,sessionToken:a})});if(!o.ok)throw Error("Token request failed");let n=await o.json();t(null,n)}catch(e){t(e instanceof Error?e.message:String(e),null)}}})).connection.on("connected",()=>{Q.h.getState().setConnected(!0),et.channels.get("machine:".concat(l,":commands")).publish("PING",{type:"PING"})}),et.connection.on("disconnected",()=>{Q.h.getState().setConnected(!1)}),et.channels.get("machine:".concat(l,":events")).subscribe(e=>{try{let t=$.parse(e.data);Q.h.getState().handleEvent(t)}catch(e){console.error("[Web] Invalid event:",e)}}),eo=et.channels.get("machine:".concat(l,":commands"))),()=>{ed===i&&eg()}}function eu(e){if("ws"===ec)es(e);else if("ably"===ec){if(!eo)throw Error("Not connected");console.log("[Web] Sending command:",e.type,e),eo.publish(e.type,e).then(()=>console.log("[Web] Command published OK"),e=>console.error("[Web] Command publish failed:",e))}else console.warn("[Connection] No active transport, attempting WS fallback"),es(e)}function eg(){"ws"===ec?(el=null,ei()):"ably"===ec&&function(){if(!et)return;let e=et.connection.state;"connected"===e||"disconnected"===e||"suspended"===e?et.close():("connecting"===e||"initialized"===e)&&(et.connection.once("connected",()=>null==et?void 0:et.close()),et.connection.once("failed",()=>{})),et=null,eo=null}(),ec=null}},5055:(e,t,o)=>{"use strict";o.d(t,{BN:()=>i,ZZ:()=>a,og:()=>c,vb:()=>s});var n=o(5195),r=o(1661);let l=null;function a(e){l=e}function i(){return null!==l}function s(e,t,o){if(!l)return[];let a=e.length,i=a>0?e[0].length:0,s=null!=o?o:i,c=[];for(let o=0;o<a;o++)for(let a=0;a<i;a++){if(e[o][a]!==n.nb.WALL)continue;let i=o*s+a,d=null==t?void 0:t[i],p=d?function(e,t,o,a){if(!l)return null;let i=o.length,s=i>0?o[0].length:0,c=0;t>0&&o[t-1][e]===n.nb.WALL&&(c|=1),e<s-1&&o[t][e+1]===n.nb.WALL&&(c|=2),t<i-1&&o[t+1][e]===n.nb.WALL&&(c|=4),e>0&&o[t][e-1]===n.nb.WALL&&(c|=8);let d=l[c];if(!d)return null;let p="wall-".concat(c,"-").concat(a.h,"-").concat(a.s,"-").concat(a.b,"-").concat(a.c);return{sprite:(0,r.LN)(p,d,{...a,colorize:!0}),offsetY:n.dn-d.length}}(a,o,e,d):function(e,t,o){if(!l)return null;let r=o.length,a=r>0?o[0].length:0,i=0;t>0&&o[t-1][e]===n.nb.WALL&&(i|=1),e<a-1&&o[t][e+1]===n.nb.WALL&&(i|=2),t<r-1&&o[t+1][e]===n.nb.WALL&&(i|=4),e>0&&o[t][e-1]===n.nb.WALL&&(i|=8);let s=l[i];return s?{sprite:s,offsetY:n.dn-s.length}:null}(a,o,e);p&&c.push({sprite:p.sprite,x:a*n.dn,y:o*n.dn+p.offsetY,zY:(o+1)*n.dn})}return c}function c(e){let{h:t,s:o,b:n,c:r}=e,l=.5;0!==r&&(l=.5+(100+r)/100*(l-.5)),0!==n&&(l+=n/200);let a=o/100*(1-Math.abs(2*(l=Math.max(0,Math.min(1,l)))-1)),i=t/60,s=a*(1-Math.abs(i%2-1)),c=0,d=0,p=0;i<1?(c=a,d=s,p=0):i<2?(c=s,d=a,p=0):i<3?(c=0,d=a,p=s):i<4?(c=0,d=s,p=a):i<5?(c=s,d=0,p=a):(c=a,d=0,p=s);let u=l-a/2,g=e=>Math.max(0,Math.min(255,Math.round((e+u)*255)));return"#".concat(g(c).toString(16).padStart(2,"0")).concat(g(d).toString(16).padStart(2,"0")).concat(g(p).toString(16).padStart(2,"0"))}},5149:(e,t,o)=>{"use strict";o.r(t),o.d(t,{clearConnection:()=>a,getConnection:()=>l,getGatewayHttpUrl:()=>i,saveConnection:()=>r});let n="office_connection";function r(e){sessionStorage.setItem(n,JSON.stringify(e)),"owner"!==e.role&&e.role||localStorage.setItem(n,JSON.stringify(e))}function l(){var e;let t=null!=(e=sessionStorage.getItem(n))?e:localStorage.getItem(n);if(!t)return null;try{return JSON.parse(t)}catch(e){return null}}function a(){sessionStorage.removeItem(n),localStorage.removeItem(n)}function i(){let e=l();return(null==e?void 0:e.wsUrl)?e.wsUrl.replace(/^ws(s?):\/\//,"http$1://"):window.location.origin}},5195:(e,t,o)=>{"use strict";o.d(t,{JM:()=>i,Lp:()=>l,OP:()=>a,Pz:()=>n.BZ,Tj:()=>n.Tj,VF:()=>s,YK:()=>n.YK,dn:()=>n.dn,nb:()=>r,pX:()=>n.pX,wh:()=>n.wh});var n=o(2243);let r={WALL:0,FLOOR_1:1,FLOOR_2:2,FLOOR_3:3,FLOOR_4:4,FLOOR_5:5,FLOOR_6:6,FLOOR_7:7,VOID:8},l={IDLE:"idle",WALK:"walk",TYPE:"type"},a={DOWN:0,LEFT:1,RIGHT:2,UP:3},i={DESK:"desk",BOOKSHELF:"bookshelf",PLANT:"plant",COOLER:"cooler",WHITEBOARD:"whiteboard",CHAIR:"chair",PC:"pc",LAMP:"lamp",TS_DESK_WOOD:"ts-desk-wood",TS_DESK_GRAY:"ts-desk-gray",TS_TABLE_LONG:"ts-table-long",TS_BOOKSHELF:"ts-bookshelf",TS_CABINET:"ts-cabinet",TS_BOOKSHELF_COLOR:"ts-bookshelf-color",TS_COUCH_RED:"ts-couch-red",TS_COUCH_BLUE:"ts-couch-blue",TS_CHAIR_GREEN:"ts-chair-green",TS_CHAIR_OFFICE:"ts-chair-office",TS_COMPUTER:"ts-computer",TS_LAPTOP:"ts-laptop",TS_MONITOR:"ts-monitor",TS_PHONE:"ts-phone",TS_PLANT:"ts-plant",TS_PLANT_TALL:"ts-plant-tall",TS_PAINTING:"ts-painting",TS_FRAME_SMALL:"ts-frame-small",TS_CLOCK:"ts-clock",TS_COOLER:"ts-cooler",TS_BOXES:"ts-boxes",TS_WHITEBOARD:"ts-whiteboard"},s={SELECT:"select",TILE_PAINT:"tile_paint",WALL_PAINT:"wall_paint",ERASE:"erase",FURNITURE_PLACE:"furniture_place",FURNITURE_PICK:"furniture_pick",EYEDROPPER:"eyedropper"}},9631:(e,t,o)=>{"use strict";o.d(t,{AI:()=>f,CW:()=>h,Co:()=>g,Kf:()=>b,MB:()=>u,Pg:()=>m,hF:()=>y,kr:()=>x});var n=o(5195),r=o(9892),l=o(1661);let a={h:210,s:20,b:22,c:0},i={h:35,s:30,b:15,c:0},s={h:150,s:15,b:20,c:0},c={h:30,s:40,b:25,c:0},d={h:195,s:10,b:18,c:0},p={h:270,s:15,b:20,c:0};function u(e){let t=[];for(let o=0;o<e.rows;o++){let n=[];for(let t=0;t<e.cols;t++)n.push(e.tiles[o*e.cols+t]);t.push(n)}return t}function g(e){let t=new Map;for(let o of e){let e=(0,r.Um)(o.type);if(!e||!e.isDesk)continue;let l=o.row*n.dn+e.sprite.length;for(let n=0;n<e.footprintH;n++)for(let r=0;r<e.footprintW;r++){let e="".concat(o.col+r,",").concat(o.row+n),a=t.get(e);(void 0===a||l>a)&&t.set(e,l)}}let o=[];for(let a of e){let e=(0,r.Um)(a.type);if(!e||a.uid.startsWith("obj-"))continue;let i=a.col*n.dn,s=a.row*n.dn,c=s+e.sprite.length;if(e.backgroundTiles&&e.backgroundTiles>=e.footprintH?c=s:"chairs"===e.category&&(c="back"===e.orientation?(a.row+1)*n.dn+1:(a.row+e.footprintH)*n.dn),e.canPlaceOnSurfaces)for(let o=0;o<e.footprintH;o++)for(let n=0;n<e.footprintW;n++){let e=t.get("".concat(a.col+n,",").concat(a.row+o));void 0!==e&&e+.5>c&&(c=e+.5)}let d=e.sprite;if(a.color){let{h:t,s:o,b:n,c:r}=a.color;d=(0,l.LN)("furn-".concat(a.type,"-").concat(t,"-").concat(o,"-").concat(n,"-").concat(r,"-").concat(+!!a.color.colorize),e.sprite,a.color)}o.push({sprite:d,x:i,y:s,zY:c})}return o}function f(e,t){let o=new Set;for(let n of e){let e=(0,r.Um)(n.type);if(!e)continue;let l=e.backgroundTiles||0;for(let r=0;r<e.footprintH;r++)if(!(r<l))for(let l=0;l<e.footprintW;l++){let e="".concat(n.col+l,",").concat(n.row+r);t&&t.has(e)||o.add(e)}}return o}function m(e,t){return f(t?e.filter(e=>e.uid!==t):e)}function h(e){let t=new Map,o=new Map;for(let t of e){let e=(0,r.Um)(t.type);if(e&&e.isDesk)for(let n=0;n<e.footprintH;n++)for(let r=0;r<e.footprintW;r++)o.set("".concat(t.col+r,",").concat(t.row+n),t)}let l=new Map;for(let t of e){let e=(0,r.Um)(t.type);if(e&&"chairs"===e.category)for(let o=0;o<e.footprintH;o++)for(let r=0;r<e.footprintW;r++){let a="".concat(t.col+r,",").concat(t.row+o),i=e.orientation?function(e){switch(e){case"front":default:return n.OP.DOWN;case"back":return n.OP.UP;case"left":return n.OP.LEFT;case"right":return n.OP.RIGHT}}(e.orientation):n.OP.DOWN;l.set(a,{item:t,facing:i})}}let a=new Set,i=new Set;for(let[e,r]of o){if(i.has(r.uid))continue;let[o,s]=e.split(","),c=parseInt(o),d=parseInt(s),p=null;for(let e=1;e<=3&&!p;e++)for(let t of[{dc:0,dr:-e,facingDesk:n.OP.DOWN},{dc:0,dr:e,facingDesk:n.OP.UP},{dc:-e,dr:0,facingDesk:n.OP.RIGHT},{dc:e,dr:0,facingDesk:n.OP.LEFT}]){let o="".concat(c+t.dc,",").concat(d+t.dr),n=l.get(o);if(n&&!a.has(o)){p={key:o,item:n.item,facing:n.facing,facingDesk:t.facingDesk,dist:e};break}}p?(a.add(p.key),t.set(p.item.uid,{uid:p.item.uid,seatCol:p.item.col,seatRow:p.item.row,facingDir:p.facingDesk,assigned:!1})):t.set(r.uid,{uid:r.uid,seatCol:c,seatRow:d,facingDir:n.OP.DOWN,assigned:!1}),i.add(r.uid)}for(let[e,o]of l)a.has(e)||t.set(o.item.uid+":rest",{uid:o.item.uid+":rest",seatCol:o.item.col,seatRow:o.item.row,facingDir:o.facing,assigned:!1,isRest:!0});return t}function x(){let e=n.wh,t=n.YK,o=n.nb.WALL,r=n.nb.FLOOR_1;n.nb.VOID;let l=[],a=[],i={h:195,s:10,b:18,c:0};for(let n=0;n<t;n++)for(let s=0;s<e;s++){let c=0===n||n===t-1||0===s||s===e-1?o:r;l.push(c),a.push(c===r?i:null)}let s=[],c=0,d=[3,7,11,15];for(let e of[2,6,10,14])for(let t of d)c++,s.push({uid:"desk-".concat(c),type:n.JM.DESK,col:t,row:e}),s.push({uid:"ch-".concat(c),type:n.JM.CHAIR,col:t,row:e+2});return s.push({uid:"plant-1",type:n.JM.PLANT,col:1,row:1}),s.push({uid:"plant-2",type:n.JM.PLANT,col:19,row:1}),s.push({uid:"plant-3",type:n.JM.PLANT,col:1,row:19}),s.push({uid:"plant-4",type:n.JM.PLANT,col:19,row:19}),s.push({uid:"shelf-1",type:n.JM.BOOKSHELF,col:1,row:9}),s.push({uid:"shelf-2",type:n.JM.BOOKSHELF,col:19,row:9}),s.push({uid:"cooler-1",type:n.JM.COOLER,col:10,row:19}),s.push({uid:"wb-1",type:n.JM.WHITEBOARD,col:9,row:1}),{version:1,cols:e,rows:t,tiles:l,tileColors:a,furniture:s}}function y(e){return JSON.stringify(e)}function b(e){try{let o=JSON.parse(e);if(o&&1===o.version&&Array.isArray(o.tiles)&&Array.isArray(o.furniture)){var t=o;if(t.tileColors&&t.tileColors.length===t.tiles.length)return t;let e=[];for(let o of t.tiles)switch(o){case 0:e.push(null);break;case 1:e.push(a);break;case 2:e.push(i);break;case 3:e.push(s);break;case 4:e.push(c);break;case 5:e.push(d);break;case 6:e.push(p);break;default:e.push(o>0?{h:0,s:0,b:0,c:0}:null)}return{...t,tileColors:e}}}catch(e){}return null}},9892:(e,t,o)=>{"use strict";o.d(t,{F$:()=>y,UV:()=>m,Um:()=>g,ZZ:()=>h,Ze:()=>b,Zl:()=>x,ar:()=>u,hS:()=>a,xr:()=>f});var n=o(5195),r=o(2988),l=o(4296);let a=[{type:n.JM.DESK,label:"Desk",footprintW:2,footprintH:2,sprite:r.US,isDesk:!0,category:"desks"},{type:n.JM.BOOKSHELF,label:"Bookshelf",footprintW:1,footprintH:2,sprite:r.iK,isDesk:!1,category:"storage"},{type:n.JM.PLANT,label:"Plant",footprintW:1,footprintH:1,sprite:r.WN,isDesk:!1,category:"decor"},{type:n.JM.COOLER,label:"Cooler",footprintW:1,footprintH:1,sprite:r.L$,isDesk:!1,category:"misc"},{type:n.JM.WHITEBOARD,label:"Whiteboard",footprintW:2,footprintH:1,sprite:r.SJ,isDesk:!1,category:"decor"},{type:n.JM.CHAIR,label:"Chair",footprintW:1,footprintH:1,sprite:r.mr,isDesk:!1,category:"chairs"},{type:n.JM.PC,label:"PC",footprintW:1,footprintH:1,sprite:r.mY,isDesk:!1,category:"electronics"},{type:n.JM.LAMP,label:"Lamp",footprintW:1,footprintH:1,sprite:r.Zc,isDesk:!1,category:"decor"}],i=[{id:"desks",label:"Desks"},{id:"chairs",label:"Chairs"},{id:"storage",label:"Storage"},{id:"electronics",label:"Tech"},{id:"decor",label:"Decor"},{id:"wall",label:"Wall"},{id:"misc",label:"Misc"}],s=new Map,c=new Map,d=new Map,p=new Map;function u(e){for(let n of l.Q){var t,o;let r=e.get(n.id);if(!r)continue;let l=a.findIndex(e=>e.type===n.id),i=(t=n,o=r,{type:t.id,label:t.label,footprintW:t.footprintW,footprintH:t.footprintH,sprite:o,isDesk:t.isDesk,category:t.category,canPlaceOnSurfaces:t.canPlaceOnSurfaces,backgroundTiles:t.backgroundTiles,canPlaceOnWalls:t.canPlaceOnWalls,...t.orientation?{orientation:t.orientation}:{}});l>=0?a[l]=i:a.push(i)}let n=new Map;for(let e of l.Q)if(e.groupId&&e.orientation){if(e.state&&"off"!==e.state)continue;let t=n.get(e.groupId);t||(t=new Map,n.set(e.groupId,t)),t.set(e.orientation,e.id)}let r=["front","right","back","left"];for(let e of n.values()){if(e.size<2)continue;let t=r.filter(t=>e.has(t));if(t.length<2)continue;let o={};for(let n of t)o[n]=e.get(n);let n={orientations:t,members:o};for(let e of Object.values(o))s.set(e,n)}let i=new Map;for(let e of l.Q)if(e.groupId&&e.state){let t="".concat(e.groupId,"|").concat(e.orientation||""),o=i.get(t);o||(o=new Map,i.set(t,o)),o.set(e.state,e.id)}for(let e of i.values()){let t=e.get("on"),o=e.get("off");t&&o&&(c.set(t,o),c.set(o,t),d.set(o,t),p.set(t,o))}for(let e of l.Q)if(e.groupId&&e.orientation&&"on"===e.state){let t=c.get(e.id);if(t){let e=s.get(t);if(e){let t={};for(let o of e.orientations){let n=e.members[o],r=c.get(n);t[o]=null!=r?r:n}let o={orientations:e.orientations,members:t};for(let e of Object.values(t))s.has(e)||s.set(e,o)}}}}function g(e){return a.find(t=>t.type===e)}function f(e){var t;return null!=(t=d.get(e))?t:e}function m(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"cw",o=s.get(e);if(!o)return null;let n=o.orientations.map(e=>o.members[e]),r=n.indexOf(e);if(-1===r)return null;let l=(r+("cw"===t?1:-1)+n.length)%n.length;return n[l]}function h(e){return s.has(e)}function x(e){return a.filter(t=>t.category===e)}function y(e){for(let[o,n]of e){let e=a.findIndex(e=>e.type===o);var t=n.tag;let r=(null!=t?t:"").toLowerCase().trim();"desk"===r||"table"===r||"chair"===r||"seat"===r||r.includes("sofa")||r.includes("couch");let l={type:o,label:n.label,footprintW:n.footprintW,footprintH:n.footprintH,sprite:n.sprite,isDesk:!1,category:"decor"};e>=0?a[e]=l:a.push(l)}}function b(){let e=new Set;for(let t of a)t.category&&e.add(t.category);return i.filter(t=>e.has(t.id))}}},e=>{e.O(0,[284,989,235,388,358],()=>e(e.s=3423)),_N_E=e.O()}]);