bit-office 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +15 -3
- package/dist/index.js.map +1 -1
- package/dist/web/{out/404.html → 404.html} +2 -2
- package/dist/web/_next/static/chunks/29.2a4210219e06b537.js +1 -0
- package/dist/web/_next/static/chunks/388-5a04e93e2531cfb7.js +1 -0
- package/dist/web/{out/_next/static/chunks/176.7af67c16b9732441.js → _next/static/chunks/880.614e72604eb723a3.js} +1 -1
- package/dist/web/_next/static/chunks/904.70db0cb7d0ebff73.js +1 -0
- package/dist/web/{out/_next/static/chunks/app/_not-found/page-0f7c77f58dea5cf2.js → _next/static/chunks/app/_not-found/page-182ed2c105839b2a.js} +1 -1
- package/dist/web/_next/static/chunks/app/layout-72c65340fbaef4c0.js +1 -0
- package/dist/web/_next/static/chunks/app/office/page-40e6628ffa58377f.js +1 -0
- package/dist/web/{out/_next/static/chunks/app/page-94da9de9b62f4f4d.js → _next/static/chunks/app/page-9721074d4b94e149.js} +1 -1
- package/dist/web/_next/static/chunks/app/pair/page-ffb2dcb5753f3161.js +1 -0
- package/dist/web/{out/_next/static/chunks/main-3ed3b5510eeb64f8.js → _next/static/chunks/main-314e1c8a2c4316bd.js} +1 -1
- package/dist/web/{out/_next/static/chunks/main-app-4f4b0701adf58469.js → _next/static/chunks/main-app-baad86574bd560af.js} +1 -1
- package/dist/web/{out/_next/static/chunks/webpack-6eaa423ee729538f.js → _next/static/chunks/webpack-2f6b11d148fba4ca.js} +1 -1
- package/dist/web/{out/index.html → index.html} +2 -2
- package/dist/web/{out/index.txt → index.txt} +2 -2
- package/dist/web/{out/manifest.json → manifest.json} +1 -1
- package/dist/web/{out/office.html → office.html} +3 -3
- package/dist/web/{out/office.txt → office.txt} +2 -2
- package/dist/web/{out/pair.html → pair.html} +2 -2
- package/dist/web/{out/pair.txt → pair.txt} +2 -2
- package/dist/web/{out/sw.js → sw.js} +1 -1
- package/package.json +3 -3
- package/dist/web/out/_next/static/chunks/29.3e7650727aadf8c2.js +0 -1
- package/dist/web/out/_next/static/chunks/904.36d527a30eef4423.js +0 -1
- package/dist/web/out/_next/static/chunks/977-26ddf708be8caf79.js +0 -1
- package/dist/web/out/_next/static/chunks/app/layout-7ca1be140a482711.js +0 -1
- package/dist/web/out/_next/static/chunks/app/office/page-e71fd886e7258e88.js +0 -1
- package/dist/web/out/_next/static/chunks/app/pair/page-667d7c599a584eb6.js +0 -1
- /package/dist/web/{out/Office Tileset → Office Tileset}/LICENSE.txt +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Designs/Office Level 1.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Designs/Office Level 2.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Designs/Office Level 3.5.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Designs/Office Level 3.jpeg +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Designs/Office Level 3.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Designs/Office Level 4.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Palette/Office Palette Large.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Palette/Office Palette Medium.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Palette/Office Palette Small.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Tileset All 16x16 no shadow.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Tileset All 16x16.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Tileset All 32x32 no shadow.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Tileset All 32x32.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Tileset All 48x48 no shadow.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office Tileset All 48x48.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/A2 Office Floors.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/A4 Office Walls.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/A5 Office Floors & Walls.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/B-C-D-E Office 1 No Shadows.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/B-C-D-E Office 1.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/B-C-D-E Office 2 No Shadows.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/B-C-D-E Office 2.png +0 -0
- /package/dist/web/{out/Office Tileset → Office Tileset}/Office VX Ace/README.txt +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/290.d0fe5fb72a5068b2.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/325ca9c7-f84e7e4973790fdf.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/4d67e943-e6a0fd3b5c397505.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/757.6d61de28074ba8d4.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/810.44213c6355518b0b.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/989-4c2c2b3a6c2f8a4a.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/framework-bec628f2b7cc8f6d.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/pages/_app-f4d560c9dbc22e4e.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/pages/_error-492bd157be5771d5.js +0 -0
- /package/dist/web/{out/_next → _next}/static/chunks/polyfills-42372ed130431b0a.js +0 -0
- /package/dist/web/{out/_next/static/e3jju679hIWY5j_P8PYTf → _next/static/qkEGHc9hlA3Whs7S6hFsW}/_buildManifest.js +0 -0
- /package/dist/web/{out/_next/static/e3jju679hIWY5j_P8PYTf → _next/static/qkEGHc9hlA3Whs7S6hFsW}/_ssgManifest.js +0 -0
- /package/dist/web/{out/assets → assets}/characters/char_0.png +0 -0
- /package/dist/web/{out/assets → assets}/characters/char_1.png +0 -0
- /package/dist/web/{out/assets → assets}/characters/char_2.png +0 -0
- /package/dist/web/{out/assets → assets}/characters/char_3.png +0 -0
- /package/dist/web/{out/assets → assets}/characters/char_4.png +0 -0
- /package/dist/web/{out/assets → assets}/characters/char_5.png +0 -0
- /package/dist/web/{out/assets → assets}/walls.png +0 -0
- /package/dist/web/{out/icons → icons}/icon-192.png +0 -0
- /package/dist/web/{out/icons → icons}/icon-512.png +0 -0
- /package/dist/web/{out/pixel-agents-layout.json → pixel-agents-layout.json} +0 -0
- /package/dist/web/{out/workbox-5194662c.js → workbox-5194662c.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[823],{138:(e,t,r)=>{"use strict";r.d(t,{h:()=>u});var o=r(9576);let n="office-chat-history";function l(e){try{let t=[];for(let[,r]of e)(r.messages.length>0||r.name!==r.agentId)&&t.push({agentId:r.agentId,name:r.name,role:r.role,palette:r.palette,personality:r.personality,backend:r.backend,isTeamLead:r.isTeamLead,teamId:r.teamId,messages:r.messages});localStorage.setItem(n,JSON.stringify(t))}catch(e){}}function a(){try{let e=localStorage.getItem(n);if(!e)return new Map;let t=JSON.parse(e),r=new Map;for(let e of t)r.set(e.agentId,e);return r}catch(e){return new Map}}function i(e){try{let t=localStorage.getItem(n);if(!t)return;let r=JSON.parse(t);localStorage.setItem(n,JSON.stringify(r.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){}}function d(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return{agentId:e,name:t,role:r,status:"idle",currentTaskId:null,currentPrompt:null,pendingApproval:null,messages:[],lastLogLine:null}}let u=(0,o.v)((e,t)=>({agents:new Map,teamMessages:[],connected:!1,hydrated:!1,setConnected:t=>e({connected:t}),hydrate:()=>{if(t().hydrated)return;let r=a(),o=function(){try{let e=localStorage.getItem(s);return e?JSON.parse(e):[]}catch(e){return[]}}();if(0===r.size&&0===o.length)return void e({hydrated:!0,teamMessages:o});e(e=>{let t=new Map(e.agents);for(let[e,o]of r)t.has(e)||t.set(e,{...d(e,o.name,o.role),palette:o.palette,personality:o.personality,backend:o.backend,isTeamLead:o.isTeamLead,teamId:o.teamId,messages:o.messages});return{agents:t,teamMessages:o,hydrated:!0}})},getAgent:e=>{var r;return null!=(r=t().agents.get(e))?r:d(e)},removeAgent:t=>{e(e=>{let r=new Map(e.agents);return r.delete(t),i(t),{agents:r}})},clearTeamMessages:()=>{c([]),e({teamMessages:[]})},addUserMessage:(t,r,o)=>{e(e=>{var n;let a=new Map(e.agents),i=null!=(n=a.get(t))?n:d(t);return a.set(t,{...i,messages:[...i.messages,{id:r,role:"user",text:o,timestamp:Date.now()}]}),l(a),{agents:a}})},handleEvent:t=>{e(e=>{var r,o,n,s,u,p,f,g,h,m,y,b,x,k,S,T,C,A,v,E,w,I,W,j,O;let F=new Map(e.agents);switch(t.type){case"AGENT_CREATED":{let e=F.get(t.agentId);if(e)F.set(t.agentId,{...e,name:t.name,role:t.role,palette:null!=(r=t.palette)?r:e.palette,personality:null!=(o=t.personality)?o:e.personality,backend:null!=(n=t.backend)?n:e.backend,isTeamLead:null!=(s=t.isTeamLead)?s:e.isTeamLead,teamId:null!=(u=t.teamId)?u:e.teamId});else{let e=a().get(t.agentId),r=d(t.agentId,t.name,t.role);r.palette=null!=(p=t.palette)?p:null==e?void 0:e.palette,r.personality=null!=(f=t.personality)?f:null==e?void 0:e.personality,r.backend=null!=(g=t.backend)?g:null==e?void 0:e.backend,r.isTeamLead=null!=(h=t.isTeamLead)?h:null==e?void 0:e.isTeamLead,r.teamId=null!=(m=t.teamId)?m:null==e?void 0:e.teamId,e&&(r.messages=e.messages),F.set(t.agentId,r)}l(F);break}case"AGENT_FIRED":F.delete(t.agentId),i(t.agentId);break;case"AGENT_STATUS":{let e=null!=(y=F.get(t.agentId))?y:d(t.agentId);if("idle"===t.status&&"idle"!==e.status)break;F.set(t.agentId,{...e,status:t.status});break}case"TASK_STARTED":{let e=null!=(b=F.get(t.agentId))?b:d(t.agentId);F.set(t.agentId,{...e,status:"working",currentTaskId:t.taskId,currentPrompt:t.prompt,pendingApproval:null,lastLogLine:null});break}case"APPROVAL_NEEDED":{let e=null!=(x=F.get(t.agentId))?x:d(t.agentId);F.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 e=null!=(k=F.get(t.agentId))?k:d(t.agentId),r=t.taskId+"-reply";if(e.messages.some(e=>e.id===r))break;if(e.isTeamLead&&!t.isFinalResult){F.set(t.agentId,{...e,status:"working",currentTaskId:null,pendingApproval:null,lastLogLine:null!=(T=null==(S=t.result.summary)?void 0:S.slice(0,100))?T:"Coordinating team..."});break}let o=[...e.messages,{id:r,role:"agent",text:t.result.summary,timestamp:Date.now(),result:t.result,isFinalResult:t.isFinalResult}];F.set(t.agentId,{...e,status:"done",currentTaskId:null,pendingApproval:null,lastLogLine:null,messages:o}),l(F);break}case"TASK_FAILED":{let e=null!=(C=F.get(t.agentId))?C:d(t.agentId),r=t.taskId+"-error";if(e.messages.some(e=>e.id===r))break;let o="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;F.set(t.agentId,{...e,status:"error",currentTaskId:null,pendingApproval:null,lastLogLine:null,messages:[...e.messages,{id:r,role:"system",text:o,timestamp:Date.now()}]}),l(F);break}case"TASK_DELEGATED":{let e=F.get(t.fromAgentId),r=F.get(t.toAgentId),o=t.taskId+"-delegate";e&&!e.messages.some(e=>e.id===o)&&F.set(t.fromAgentId,{...e,messages:[...e.messages,{id:o,role:"system",text:"Delegated to ".concat(null!=(A=null==r?void 0:r.name)?A:t.toAgentId,": ").concat(t.prompt),timestamp:Date.now()}]});let n=t.taskId+"-received",a=null!=(v=F.get(t.toAgentId))?v:d(t.toAgentId);a.messages.some(e=>e.id===n)||F.set(t.toAgentId,{...a,messages:[...a.messages,{id:n,role:"user",text:"[From ".concat(null!=(E=null==e?void 0:e.name)?E:t.fromAgentId,"] ").concat(t.prompt),timestamp:Date.now()}]}),l(F);break}case"LOG_APPEND":{let e=F.get(t.agentId);e&&F.set(t.agentId,{...e,lastLogLine:t.chunk});break}case"TASK_RESULT_RETURNED":{let e=F.get(t.toAgentId);if(e){let r=F.get(t.fromAgentId),o=t.taskId+"-result-return";if(!e.messages.some(e=>e.id===o)){let n=t.success?"completed":"failed";F.set(t.toAgentId,{...e,messages:[...e.messages,{id:o,role:"system",text:"Result from ".concat(null!=(w=null==r?void 0:r.name)?w:t.fromAgentId," (").concat(n,"): ").concat(t.summary.slice(0,500)),timestamp:Date.now()}]})}}break}case"TEAM_CHAT":{let r=F.get(t.fromAgentId),o=t.toAgentId?F.get(t.toAgentId):void 0,n={id:"tc-".concat(t.timestamp,"-").concat(t.fromAgentId,"-").concat(t.messageType,"-").concat(null!=(I=t.toAgentId)?I:""),fromAgentId:t.fromAgentId,fromAgentName:null!=(W=null==r?void 0:r.name)?W:t.fromAgentId,toAgentId:t.toAgentId,toAgentName:null!=(j=null==o?void 0:o.name)?j:t.toAgentId,message:t.message,messageType:t.messageType,timestamp:t.timestamp};if(e.teamMessages.some(e=>e.id===n.id))break;let l=[...e.teamMessages,n];return c(l),{agents:F,teamMessages:l}}case"TASK_QUEUED":{let e=null!=(O=F.get(t.agentId))?O:d(t.agentId),r=t.taskId+"-queued";e.messages.some(e=>e.id===r)||F.set(t.agentId,{...e,messages:[...e.messages,{id:r,role:"system",text:"Task queued (position #".concat(t.position,"): ").concat(t.prompt.slice(0,100)),timestamp:Date.now()}]})}}return{agents:F}})}}))},1204:(e,t,r)=>{"use strict";r.d(t,{FH:()=>i,Ii:()=>f,PT:()=>c,WC:()=>u,iH:()=>h,iZ:()=>d,qZ:()=>s,si:()=>p,vk:()=>g});var o=r(5195),n=r(2243),l=r(9892),a=r(9631);function i(e,t,r,l,a){let i=r*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===o.nb.WALL||l===o.nb.VOID?null:{...n.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 u=[...s];return u[i]=c,{...e,tiles:d,tileColors:u}}function s(e,t){return f(e,t.type,t.col,t.row)?{...e,furniture:[...e.furniture,t]}:e}function c(e,t){let r=e.furniture.filter(e=>e.uid!==t);return r.length===e.furniture.length?e:{...e,furniture:r}}function d(e,t,r,o){let n=e.furniture.find(e=>e.uid===t);return n&&f(e,n.type,r,o,t)?{...e,furniture:e.furniture.map(e=>e.uid===t?{...e,col:r,row:o}:e)}:e}function u(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"cw",o=e.furniture.find(e=>e.uid===t);if(!o)return e;let n=(0,l.UV)(o.type,r);return n?{...e,furniture:e.furniture.map(e=>e.uid===t?{...e,type:n}:e)}:e}function p(e,t){let r=(0,l.Um)(e);return(null==r?void 0:r.canPlaceOnWalls)?t-(r.footprintH-1):t}function f(e,t,r,n,i){let s=(0,l.Um)(t);if(!s)return!1;if(s.canPlaceOnWalls){let t=n+s.footprintH-1;if(r<0||r+s.footprintW>e.cols||t<0||t>=e.rows)return!1}else if(r<0||n<0||r+s.footprintW>e.cols||n+s.footprintH>e.rows)return!1;let c=s.backgroundTiles||0;for(let t=0;t<s.footprintH;t++)if(!(t<c)&&!(n+t<0)&&(!s.canPlaceOnWalls||!(t<s.footprintH-1)))for(let l=0;l<s.footprintW;l++){let a=(n+t)*e.cols+(r+l),i=e.tiles[a];if(s.canPlaceOnWalls){if(i!==o.nb.WALL)return!1}else if(i===o.nb.VOID||i===o.nb.WALL)return!1}let d=(0,a.Pg)(e.furniture,i),u=null;if(s.canPlaceOnSurfaces)for(let t of(u=new Set,e.furniture)){if(t.uid===i)continue;let e=(0,l.Um)(t.type);if(e&&e.isDesk)for(let r=0;r<e.footprintH;r++)for(let o=0;o<e.footprintW;o++)u.add("".concat(t.col+o,",").concat(t.row+r))}let p=s.backgroundTiles||0;for(let e=0;e<s.footprintH;e++)if(!(e<p)&&!(n+e<0))for(let t=0;t<s.footprintW;t++){let o="".concat(r+t,",").concat(n+e);if(d.has(o)&&!(null==u?void 0:u.has(o)))return!1}return!0}function g(e,t){let{cols:r,rows:n,tiles:l,furniture:a,tileColors:i}=e,s=i||Array(l.length).fill(null),c=r,d=n,u=0,p=0;if("right"===t?c=r+1:"left"===t?(c=r+1,u=1):"down"===t?d=n+1:"up"===t&&(d=n+1,p=1),c>o.Tj||d>o.pX)return null;let f=Array(c*d).fill(o.nb.VOID),g=Array(c*d).fill(null);for(let e=0;e<n;e++)for(let t=0;t<r;t++){let o=e*r+t,n=(e+p)*c+(t+u);f[n]=l[o],g[n]=s[o]}let h=a.map(e=>({...e,col:e.col+u,row:e.row+p}));return{layout:{...e,cols:c,rows:d,tiles:f,tileColors:g,furniture:h},shift:{col:u,row:p}}}function h(e,t,r){for(let o of e.furniture){let e=(0,l.Um)(o.type);if(e){for(let n=0;n<e.footprintH;n++)for(let l=0;l<e.footprintW;l++)if(o.col+l===t&&o.row+n===r)return o}}return null}},1661:(e,t,r)=>{"use strict";r.d(t,{LN:()=>n,Zg:()=>l,fu:()=>s});let o=new Map;function n(e,t,r){let n=o.get(e);if(n)return n;let l=r.colorize?function(e,t){let{h:r,s:o,b:n,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!==n&&(s+=n/200);let c=a(r,o/100,s=Math.max(0,Math.min(1,s)));e.push(c)}i.push(e)}return i}(t,r):s(t,r);return o.set(e,l),l}function l(){o.clear()}function a(e,t,r){let o=(1-Math.abs(2*r-1))*t,n=e/60,l=o*(1-Math.abs(n%2-1)),a=0,s=0,c=0;n<1?(a=o,s=l,c=0):n<2?(a=l,s=o,c=0):n<3?(a=0,s=o,c=l):n<4?(a=0,s=l,c=o):n<5?(a=l,s=0,c=o):(a=o,s=0,c=l);let d=r-o/2,u=Math.round((a+d)*255),p=Math.round((s+d)*255),f=Math.round((c+d)*255);return"#".concat(i(u).toString(16).padStart(2,"0")).concat(i(p).toString(16).padStart(2,"0")).concat(i(f).toString(16).padStart(2,"0")).toUpperCase()}function i(e){return Math.max(0,Math.min(255,e))}function s(e,t){let{h:r,s:o,b:n,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,r){let o=e/255,n=t/255,l=r/255,a=Math.max(o,n,l),i=Math.min(o,n,l),s=(a+i)/2;if(a===i)return[0,0,s];let c=a-i;return[a===o?((n-l)/c+6*(n<l))*60:a===n?((l-o)/c+2)*60:((o-n)/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)),u=((s+r)%360+360)%360,p=Math.max(0,Math.min(1,c+o/100)),f=d;0!==l&&(f=.5+(100+l)/100*(f-.5)),0!==n&&(f+=n/200);let g=a(u,p,f=Math.max(0,Math.min(1,f)));e.push(g)}i.push(e)}return i}},2243:(e,t,r)=>{"use strict";r.d(t,{$L:()=>B,AL:()=>V,BD:()=>er,BZ:()=>y,DH:()=>eo,F2:()=>O,Ii:()=>ee,Jk:()=>es,M1:()=>b,M_:()=>ei,Mo:()=>J,Nd:()=>v,Ns:()=>em,O1:()=>F,O9:()=>el,Ot:()=>h,PA:()=>U,Pk:()=>ek,R_:()=>Y,Rb:()=>f,S3:()=>d,SS:()=>M,Sg:()=>j,TE:()=>Q,Tj:()=>a,W3:()=>x,W7:()=>L,WJ:()=>I,WK:()=>ea,Wn:()=>w,Ww:()=>m,XE:()=>s,Xo:()=>eg,YK:()=>l,YX:()=>R,ZV:()=>en,Zz:()=>et,dn:()=>o,e7:()=>ex,fJ:()=>G,fS:()=>eS,gB:()=>T,gD:()=>q,gi:()=>E,hI:()=>C,he:()=>g,i:()=>K,iE:()=>W,ic:()=>eu,k2:()=>eb,k8:()=>p,l0:()=>H,lO:()=>ed,lY:()=>c,n6:()=>_,nW:()=>ec,o3:()=>ey,oj:()=>$,ou:()=>eh,p7:()=>ef,pX:()=>i,pr:()=>Z,q3:()=>X,qD:()=>P,ql:()=>eT,qt:()=>ep,v3:()=>z,vU:()=>S,wN:()=>k,wh:()=>n,wj:()=>u,y9:()=>D,zY:()=>N,zw:()=>A});let o=16,n=21,l=21,a=64,i=64,s=48,c=.15,d=.3,u=2,p=20,f=3,g=6,h=120,m=240,y=.3,b=6,x=16,k=24,S=30,T=180,C=.3,A="#ccffcc",v=.6,E=.5,w=.33,I=.66,W=6,j=.5,O=.001,F=1,D=.5,P=.5,L=.25,_=[4,3],H=6,R=3,Y=.45,M=1.5,N=.5,z=.5,U=10,B=24,X="#808080",V="rgba(255,255,255,0.12)",G="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)",Q="#00ff00",$="#ff0000",ee="#007fd4",et="rgba(200, 50, 50, 0.85)",er="rgba(50, 120, 200, 0.85)",eo=1,en=10,el=.1,ea=2,ei=.3,es=5,ec=.5,ed=30,eu=6,ep=45,ef=271,eg=3,eh=2,em=8,ey=24,eb=50,ex=500,ek={h:35,s:30,b:15,c:0},eS={h:240,s:25,b:0,c:0},eT={h:0,s:0,b:0,c:0}},2988:(e,t,r)=>{"use strict";r.d(t,{$D:()=>f,Cr:()=>J,Ih:()=>Z,L$:()=>s,SJ:()=>c,US:()=>l,VQ:()=>h,WN:()=>a,Zc:()=>p,bn:()=>V,iK:()=>i,j9:()=>g,mY:()=>u,mr:()=>d});var o=r(5195),n=r(1661);let l=(()=>{let e="#8B6914",t="#A07828",r="#B8922E",o="#6B4E0A",n=[];n.push(Array(32).fill("")),n.push(["",...Array(30).fill(e),""]);for(let o=0;o<4;o++)n.push(["",e,...Array(28).fill(o<1?t:r),e,""]);n.push(["",o,...Array(28).fill(e),o,""]);for(let t=0;t<6;t++)n.push(["",e,...Array(28).fill(r),e,""]);n.push(["",e,...Array(28).fill(t),e,""]);for(let t=0;t<6;t++)n.push(["",e,...Array(28).fill(r),e,""]);n.push(["",o,...Array(28).fill(e),o,""]);for(let o=0;o<4;o++)n.push(["",e,...Array(28).fill(o>2?t:r),e,""]);n.push(["",...Array(30).fill(e),""]);for(let e=0;e<4;e++){let e=Array(32).fill("");e[1]=o,e[2]=o,e[29]=o,e[30]=o,n.push(e)}return n.push(Array(32).fill("")),n.push(Array(32).fill("")),n})(),a=(()=>{let e="#3D8B37",t="#2D6B27",r="#6B4E0A",o="#B85C3A",n="#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,"","","","","","",""],["","","","","","",r,r,"","","","","","","",""],["","","","","","",r,r,"","","","","","","",""],["","","","","","",r,r,"","","","","","","",""],["","","","","",n,n,n,n,n,"","","","","",""],["","","","",n,o,o,o,o,o,n,"","","","",""],["","","","",n,o,o,o,o,o,n,"","","","",""],["","","","",n,o,o,o,o,o,n,"","","","",""],["","","","",n,o,o,o,o,o,n,"","","","",""],["","","","",n,o,o,o,o,o,n,"","","","",""],["","","","",n,o,o,o,o,o,n,"","","","",""],["","","","","",n,o,o,o,n,"","","","","",""],["","","","","","",n,n,n,"","","","","","",""],["","","","","","","","","","","","","","","",""]]})(),i=(()=>{let e="#8B6914",t="#6B4E0A",r="#CC4444",o="#4477AA",n="#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,r,r,o,o,n,n,l,l,r,r,o,o,t,e],[e,t,r,r,o,o,n,n,l,l,r,r,o,o,t,e],[e,t,r,r,o,o,n,n,l,l,r,r,o,o,t,e],[e,t,r,r,o,o,n,n,l,l,r,r,o,o,t,e],[e,t,r,r,o,o,n,n,l,l,r,r,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,a,a,l,l,o,o,n,n,a,a,r,r,t,e],[e,t,a,a,l,l,o,o,n,n,a,a,r,r,t,e],[e,t,a,a,l,l,o,o,n,n,a,a,r,r,t,e],[e,t,a,a,l,l,o,o,n,n,a,a,r,r,t,e],[e,t,a,a,l,l,o,o,n,n,a,a,r,r,t,e],[e,t,a,a,l,l,o,o,n,n,a,a,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,n,n,r,r,a,a,o,o,l,l,n,n,t,e],[e,t,n,n,r,r,a,a,o,o,l,l,n,n,t,e],[e,t,n,n,r,r,a,a,o,o,l,l,n,n,t,e],[e,t,n,n,r,r,a,a,o,o,l,l,n,n,t,e],[e,t,n,n,r,r,a,a,o,o,l,l,n,n,t,e],[e,t,n,n,r,r,a,a,o,o,l,l,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,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",r="#999999",o="#666666";return[["","","","","","","","","","","","","","","",""],["","","","","",r,r,r,r,r,r,"","","","",""],["","","","",r,t,t,t,t,t,t,r,"","","",""],["","","","",r,t,t,t,t,t,t,r,"","","",""],["","","","",r,t,t,t,t,t,t,r,"","","",""],["","","","",r,t,t,t,t,t,t,r,"","","",""],["","","","",r,t,t,t,t,t,t,r,"","","",""],["","","","","",r,r,r,r,r,r,"","","","",""],["","","","","",r,e,e,e,e,r,"","","","",""],["","","","","",r,e,e,e,e,r,"","","","",""],["","","","","",r,e,e,e,e,r,"","","","",""],["","","","","",r,e,e,e,e,r,"","","","",""],["","","","","",r,e,e,e,e,r,"","","","",""],["","","","",r,r,e,e,e,e,r,r,"","","",""],["","","","",r,e,e,e,e,e,e,r,"","","",""],["","","","",r,e,e,e,e,e,e,r,"","","",""],["","","","",r,r,r,r,r,r,r,r,"","","",""],["","","","","",r,o,o,o,o,r,"","","","",""],["","","","","",r,o,o,o,o,r,"","","","",""],["","","","","",r,o,o,o,o,r,"","","","",""],["","","","",r,r,o,o,o,o,r,r,"","","",""],["","","","",r,o,o,o,o,o,o,r,"","","",""],["","","","",r,r,r,r,r,r,r,r,"","","",""],["","","","","","","","","","","","","","","",""]]})(),c=(()=>{let e="#AAAAAA",t="#EEEEFF",r="#CC4444",o="#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,r,r,r,t,t,t,t,t,o,o,o,o,t,t,t,t,t,t,t,r,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,o,o,t,t,r,t,t,t,t,t,t,e,""],["",e,t,t,t,t,r,r,r,r,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,o,o,t,t,e,""],["",e,t,t,t,t,t,t,t,t,t,t,t,o,o,o,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,r,r,r,t,t,t,t,t,t,t,e,""],["",e,t,r,r,t,t,t,t,t,t,t,t,t,t,t,o,o,t,t,t,t,t,t,t,t,t,t,t,t,e,""],["",e,t,t,t,t,t,t,o,o,o,t,t,t,t,t,t,t,t,t,t,t,t,t,r,r,r,r,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",r="#5C3D0A",o="#A07828";return[["","","","","",t,t,t,t,t,t,"","","","",""],["","","","",t,r,r,r,r,r,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,o,o,o,o,r,t,"","","",""],["","","","",t,r,r,r,r,r,r,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,"","","","",""]]})(),u=(()=>{let e="#555555",t="#3A3A5C",r="#6688CC",o="#444444";return[["","","",e,e,e,e,e,e,e,e,e,e,"","",""],["","","",e,t,t,t,t,t,t,t,t,e,"","",""],["","","",e,t,r,r,r,r,r,r,t,e,"","",""],["","","",e,t,r,r,r,r,r,r,t,e,"","",""],["","","",e,t,r,r,r,r,r,r,t,e,"","",""],["","","",e,t,r,r,r,r,r,r,t,e,"","",""],["","","",e,t,r,r,r,r,r,r,t,e,"","",""],["","","",e,t,r,r,r,r,r,r,t,e,"","",""],["","","",e,t,t,t,t,t,t,t,t,e,"","",""],["","","",e,e,e,e,e,e,e,e,e,e,"","",""],["","","","","","","",o,o,"","","","","","",""],["","","","","","","",o,o,"","","","","","",""],["","","","","","",o,o,o,o,"","","","","",""],["","","","","",o,o,o,o,o,o,"","","","",""],["","","","","",o,o,o,o,o,o,"","","","",""],["","","","","","","","","","","","","","","",""]]})(),p=(()=>{let e="#FFDD55",t="#FFEE88",r="#888888",o="#555555",n="#FFFFCC";return[["","","","","","","","","","","","","","","",""],["","","","","","",n,n,n,n,"","","","","",""],["","","","","",n,e,e,e,e,n,"","","","",""],["","","","",n,e,e,t,t,e,e,n,"","","",""],["","","","",e,e,t,t,t,t,e,e,"","","",""],["","","","",e,e,t,t,t,t,e,e,"","","",""],["","","","","",e,e,e,e,e,e,"","","","",""],["","","","","","",r,r,r,r,"","","","","",""],["","","","","","","",r,r,"","","","","","",""],["","","","","","","",r,r,"","","","","","",""],["","","","","","","",r,r,"","","","","","",""],["","","","","","","",r,r,"","","","","","",""],["","","","","","",r,r,r,r,"","","","","",""],["","","","","",o,o,o,o,o,o,"","","","",""],["","","","","",o,o,o,o,o,o,"","","","",""],["","","","","","","","","","","","","","","",""]]})(),f=(()=>{let e="#555566",t="#EEEEFF",r="#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,r,t,r,t,r,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,"","","","",""],["","","","","","","","","","",""]]})(),g=(()=>{let e="#555566",t="#EEEEFF",r="#D4A017",o="#F5C842";return[["","","",e,e,e,e,e,"","",""],["","",e,t,t,t,o,t,e,"",""],["",e,t,t,t,o,o,t,t,e,""],[e,t,t,t,o,o,t,t,t,t,e],[e,t,t,o,o,o,o,o,t,t,e],[e,t,t,t,t,r,r,t,t,t,e],[e,t,t,t,r,r,t,t,t,t,e],[e,t,t,r,r,t,t,t,t,t,e],["",e,t,t,r,t,t,t,t,e,""],["","",e,e,e,e,e,e,e,"",""],["","","","",e,e,e,"","","",""],["","","","","",e,"","","","",""],["","","","","","","","","","",""]]})(),h=(()=>{let e="#555566",t="#EEEEFF",r="#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,r,t,e],[e,t,t,t,t,t,t,r,t,t,e],[e,t,t,r,t,t,r,t,t,t,e],[e,t,t,t,r,r,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,"","","","",""],["","","","","","","","","","",""]]})(),m=[{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"}],y="hair",b="skin",x="shirt",k="pants",S="shoes",T="#FFFFFF";function C(e,t){return e.map(e=>e.map(e=>""===e?"":e===T?T:e===y?t.hair:e===b?t.skin:e===x?t.shirt:e===k?t.pants:e===S?t.shoes:e))}let A=[["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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,"","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],v=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],E=[["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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,"","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],w=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","",b,b,x,x,x,x,x,x,b,b,"","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,b,"","",""],["","","","",b,x,x,x,x,x,x,"",b,"","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],W=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],j=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",y,y,y,y,y,y,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,T,b,b,T,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","",b,b,b,b,b,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],O=[["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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,"","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],F=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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=[["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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,"","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],P=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","",b,b,x,x,x,x,x,x,b,b,"","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",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=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,b,"","",""],["","","","",b,x,x,x,x,x,x,"",b,"","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],_=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],H=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","",y,y,y,y,"","","","","",""],["","","","","",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,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",x,x,x,x,x,x,x,x,"","","",""],["","","","",b,x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","",k,k,k,k,k,k,"","","","",""],["","","","","",k,k,"","",k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],R=[["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",b,x,x,x,x,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",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=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",b,x,x,x,x,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",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,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],M=[["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",b,x,x,x,x,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","","","",k,k,k,"","","","",""],["","","","","","","","",k,k,k,"","","","",""],["","","","","",S,S,"","",S,S,"","","","",""],["","","","","",S,S,"","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],N=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,b,"","","",""],["","","","","",x,x,x,x,x,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],z=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"",b,"","",""],["","","","","",x,x,x,x,x,"","",b,"","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],U=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",b,x,x,x,x,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],B=[["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","",y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",y,y,y,y,y,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,T,b,"","","","",""],["","","","","","",b,b,b,b,b,"","","","",""],["","","","","","",b,b,b,b,"","","","","",""],["","","","","","","",x,x,x,"","","","","",""],["","","","","","",x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",x,x,x,x,x,x,"","","","",""],["","","","","",b,x,x,x,x,b,"","","","",""],["","","","","","",x,x,x,x,"","","","","",""],["","","","","","","",k,k,"","","","","","",""],["","","","","","",k,k,k,k,"","","","","",""],["","","","","","",k,k,"",k,k,"","","","",""],["","","","","","",S,S,"",S,S,"","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""],["","","","","","","","","","","","","","","",""]],X=null;function V(e){X=e,K.clear()}function G(e){return e.map(e=>[...e].reverse())}let K=new Map;function J(e){return X?X[e%X.length].down[1]:null}function Z(e){let t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,l="".concat(e,":").concat(r),a=K.get(l);if(a)return a;if(X){let r=X[e%X.length],n=r.down,l=r.up,a=r.right;t={walk:{[o.OP.DOWN]:[n[0],n[1],n[2],n[1]],[o.OP.UP]:[l[0],l[1],l[2],l[1]],[o.OP.RIGHT]:[a[0],a[1],a[2],a[1]],[o.OP.LEFT]:[G(a[0]),G(a[1]),G(a[2]),G(a[1])]},typing:{[o.OP.DOWN]:[n[3],n[4]],[o.OP.UP]:[l[3],l[4]],[o.OP.RIGHT]:[a[3],a[4]],[o.OP.LEFT]:[G(a[3]),G(a[4])]},reading:{[o.OP.DOWN]:[n[5],n[6]],[o.OP.UP]:[l[5],l[6]],[o.OP.RIGHT]:[a[5],a[6]],[o.OP.LEFT]:[G(a[5]),G(a[6])]}}}else{let r=m[e%m.length],n=e=>C(e,r),l=e=>C(e.map(e=>[...e].reverse()),r);t={walk:{[o.OP.DOWN]:[n(A),n(v),n(E),n(v)],[o.OP.UP]:[n(O),n(F),n(D),n(F)],[o.OP.RIGHT]:[n(R),n(Y),n(M),n(Y)],[o.OP.LEFT]:[l(R),l(Y),l(M),l(Y)]},typing:{[o.OP.DOWN]:[n(w),n(I)],[o.OP.UP]:[n(P),n(L)],[o.OP.RIGHT]:[n(N),n(z)],[o.OP.LEFT]:[l(N),l(z)]},reading:{[o.OP.DOWN]:[n(W),n(j)],[o.OP.UP]:[n(_),n(H)],[o.OP.RIGHT]:[n(U),n(B)],[o.OP.LEFT]:[l(U),l(B)]}}}return 0!==r&&(t=function(e,t){let r={h:t,s:0,b:0,c:0},l=e=>(0,n.fu)(e,r),a=e=>[l(e[0]),l(e[1]),l(e[2]),l(e[3])],i=e=>[l(e[0]),l(e[1])];return{walk:{[o.OP.DOWN]:a(e.walk[o.OP.DOWN]),[o.OP.UP]:a(e.walk[o.OP.UP]),[o.OP.RIGHT]:a(e.walk[o.OP.RIGHT]),[o.OP.LEFT]:a(e.walk[o.OP.LEFT])},typing:{[o.OP.DOWN]:i(e.typing[o.OP.DOWN]),[o.OP.UP]:i(e.typing[o.OP.UP]),[o.OP.RIGHT]:i(e.typing[o.OP.RIGHT]),[o.OP.LEFT]:i(e.typing[o.OP.LEFT])},reading:{[o.OP.DOWN]:i(e.reading[o.OP.DOWN]),[o.OP.UP]:i(e.reading[o.OP.UP]),[o.OP.RIGHT]:i(e.reading[o.OP.RIGHT]),[o.OP.LEFT]:i(e.reading[o.OP.LEFT])}}}(t,r)),K.set(l,t),t}},3423:(e,t,r)=>{Promise.resolve().then(r.bind(r,6180))},4296:(e,t,r)=>{"use strict";r.d(t,{F:()=>h,Q:()=>u});var o=r(2988),n=r(4777),l=r(5055);let a=["down","up","right"];function i(e){return new Promise((t,r)=>{let o=new Image;o.crossOrigin="anonymous",o.onload=()=>t(o),o.onerror=t=>r(Error("Failed to load image: ".concat(e," — ").concat(t))),o.src=e})}function s(e,t,r,o,n){let l=document.createElement("canvas");l.width=o,l.height=n;let a=l.getContext("2d"),i=e.naturalWidth,s=e.naturalHeight,c=Math.max(0,t),d=Math.max(0,r),u=Math.min(t+o,i)-c,p=Math.min(r+n,s)-d;u>0&&p>0&&a.drawImage(e,c,d,u,p,c-t,d-r,u,p);let{data:f}=a.getImageData(0,0,o,n),g=[];for(let e=0;e<n;e++){let t=[];for(let r=0;r<o;r++){let n=(e*o+r)*4,l=f[n],a=f[n+1],i=f[n+2];f[n+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())}g.push(t)}return g}async function c(){let e=[];for(let t=0;t<6;t++){let r=await i("/assets/characters/char_".concat(t,".png")),o={down:[],up:[],right:[]};for(let e=0;e<a.length;e++){let t=a[e],n=32*e,l=[];for(let e=0;e<7;e++){let t=16*e;l.push(s(r,t,n,16,32))}o[t]=l}e.push(o)}return e}async function d(){let e=await i("/assets/walls.png"),t=[];for(let r=0;r<16;r++){let o=r%4*16,n=32*Math.floor(r/4);t.push(s(e,o,n,16,32))}return t}let u=[{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}],p={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 f(){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 r of u){if(t){let o=s(t,r.srcX,r.srcY,r.srcW,r.srcH);if(!function(e){for(let t of e)for(let e of t)if(""!==e)return!1;return!0}(o)){e.set(r.id,o);continue}console.warn("[tileset] empty sprite: ".concat(r.id," at (").concat(r.srcX,",").concat(r.srcY,") ").concat(r.srcW,"\xd7").concat(r.srcH))}let o=p[r.id];o&&e.set(r.id,function(e,t,r,o){let n=[];for(let l=0;l<t;l++){let a=[];for(let n=0;n<e;n++)0===n||n===e-1||0===l||l===t-1?a.push(o):a.push(r);n.push(a)}return n}(r.srcW,r.srcH,o.fill,o.edge))}return{sprites:e}}async function g(){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 h(){let[e,t,r,a]=await Promise.all([c(),d(),f(),g()]),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 r=0;r<7;r++){let{base:o,accent:n}=t[r],l=[];for(let e=0;e<16;e++){let t=[];for(let r=0;r<16;r++){let l=(r+e)%4==0||(3*r+7*e)%11==0;t.push(l?n:o)}l.push(t)}e.push(l)}return e}();return(0,o.bn)(e),(0,l.ZZ)(t),(0,n.Di)(i),{characters:e,walls:t,floors:i,tilesetSprites:r.sprites,layout:a}}},4777:(e,t,r)=>{"use strict";r.d(t,{$0:()=>c,Di:()=>s,QQ:()=>d,To:()=>u,ty:()=>i});var o=r(1661),n=r(2243);let l=Array.from({length:n.dn},()=>Array(n.dn).fill(n.q3)),a=[],i="#3A3A5C";function s(e){a=e,(0,o.Zg)()}function c(){return!0}function d(){return a.length>0?a.length:1}function u(e,t){let r="floor-".concat(e,"-").concat(t.h,"-").concat(t.s,"-").concat(t.b,"-").concat(t.c),n=function(e){let t=e-1;return t<0?null:t<a.length?a[t]:0===a.length&&e>=1?l:null}(e);return n?(0,o.LN)(r,n,{...t,colorize:!0}):Array.from({length:16},()=>Array(16).fill("#FF00FF"))}},5055:(e,t,r)=>{"use strict";r.d(t,{BN:()=>i,ZZ:()=>a,og:()=>c,vb:()=>s});var o=r(5195),n=r(1661);let l=null;function a(e){l=e}function i(){return null!==l}function s(e,t,r){if(!l)return[];let a=e.length,i=a>0?e[0].length:0,s=null!=r?r:i,c=[];for(let r=0;r<a;r++)for(let a=0;a<i;a++){if(e[r][a]!==o.nb.WALL)continue;let i=r*s+a,d=null==t?void 0:t[i],u=d?function(e,t,r,a){if(!l)return null;let i=r.length,s=i>0?r[0].length:0,c=0;t>0&&r[t-1][e]===o.nb.WALL&&(c|=1),e<s-1&&r[t][e+1]===o.nb.WALL&&(c|=2),t<i-1&&r[t+1][e]===o.nb.WALL&&(c|=4),e>0&&r[t][e-1]===o.nb.WALL&&(c|=8);let d=l[c];if(!d)return null;let u="wall-".concat(c,"-").concat(a.h,"-").concat(a.s,"-").concat(a.b,"-").concat(a.c);return{sprite:(0,n.LN)(u,d,{...a,colorize:!0}),offsetY:o.dn-d.length}}(a,r,e,d):function(e,t,r){if(!l)return null;let n=r.length,a=n>0?r[0].length:0,i=0;t>0&&r[t-1][e]===o.nb.WALL&&(i|=1),e<a-1&&r[t][e+1]===o.nb.WALL&&(i|=2),t<n-1&&r[t+1][e]===o.nb.WALL&&(i|=4),e>0&&r[t][e-1]===o.nb.WALL&&(i|=8);let s=l[i];return s?{sprite:s,offsetY:o.dn-s.length}:null}(a,r,e);u&&c.push({sprite:u.sprite,x:a*o.dn,y:r*o.dn+u.offsetY,zY:(r+1)*o.dn})}return c}function c(e){let{h:t,s:r,b:o,c:n}=e,l=.5;0!==n&&(l=.5+(100+n)/100*(l-.5)),0!==o&&(l+=o/200);let a=r/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,u=0;i<1?(c=a,d=s,u=0):i<2?(c=s,d=a,u=0):i<3?(c=0,d=a,u=s):i<4?(c=0,d=s,u=a):i<5?(c=s,d=0,u=a):(c=a,d=0,u=s);let p=l-a/2,f=e=>Math.max(0,Math.min(255,Math.round((e+p)*255)));return"#".concat(f(c).toString(16).padStart(2,"0")).concat(f(d).toString(16).padStart(2,"0")).concat(f(u).toString(16).padStart(2,"0"))}},5149:(e,t,r)=>{"use strict";r.r(t),r.d(t,{clearConnection:()=>a,getConnection:()=>l,getGatewayHttpUrl:()=>i,saveConnection:()=>n});let o="office_connection";function n(e){localStorage.setItem(o,JSON.stringify(e))}function l(){let e=localStorage.getItem(o);if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function a(){localStorage.removeItem(o)}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,r)=>{"use strict";r.d(t,{JM:()=>i,Lp:()=>l,OP:()=>a,Pz:()=>o.BZ,Tj:()=>o.Tj,VF:()=>s,YK:()=>o.YK,dn:()=>o.dn,nb:()=>n,pX:()=>o.pX,wh:()=>o.wh});var o=r(2243);let n={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"}},6180:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>ev});var o=r(206),n=r(1406),l=r(4717),a=r(138),i=r(9984),s=r(6353);let c=s.k5(["idle","working","waiting_approval","done","error"]),d=s.k5(["low","med","high"]),u=s.k5(["yes","no"]),p=s.Ik({type:s.eu("RUN_TASK"),agentId:s.Yj(),taskId:s.Yj(),prompt:s.Yj(),repoPath:s.Yj().optional(),name:s.Yj().optional(),role:s.Yj().optional(),personality:s.Yj().optional(),backend:s.Yj().optional()}),f=s.Ik({type:s.eu("APPROVAL_DECISION"),approvalId:s.Yj(),decision:u}),g=s.Ik({type:s.eu("CANCEL_TASK"),agentId:s.Yj(),taskId:s.Yj()}),h=s.Ik({type:s.eu("PING")}),m=s.Ik({type:s.eu("CREATE_AGENT"),agentId:s.Yj(),name:s.Yj(),role:s.Yj(),palette:s.ai().optional(),personality:s.Yj().optional(),backend:s.Yj().optional()}),y=s.Ik({type:s.eu("FIRE_AGENT"),agentId:s.Yj()}),b=s.Ik({type:s.eu("OPEN_FILE"),path:s.Yj()}),x=s.Ik({type:s.eu("CREATE_TEAM"),leadPresetIndex:s.ai(),memberPresetIndices:s.YO(s.ai()),backends:s.g1(s.Yj(),s.Yj()).optional()}),k=s.Ik({type:s.eu("SERVE_PREVIEW"),filePath:s.Yj()}),S=s.Ik({type:s.eu("STOP_TEAM")}),T=s.Ik({type:s.eu("FIRE_TEAM")});s.gM("type",[p,f,g,h,m,y,b,x,k,S,T]);let C=s.Ik({type:s.eu("AGENT_STATUS"),agentId:s.Yj(),status:c,details:s.Yj().optional()}),A=s.Ik({type:s.eu("TASK_STARTED"),agentId:s.Yj(),taskId:s.Yj(),prompt:s.Yj()}),v=s.Ik({type:s.eu("LOG_APPEND"),agentId:s.Yj(),taskId:s.Yj(),stream:s.k5(["stdout","stderr"]),chunk:s.Yj()}),E=s.Ik({type:s.eu("APPROVAL_NEEDED"),approvalId:s.Yj(),agentId:s.Yj(),taskId:s.Yj(),title:s.Yj(),summary:s.Yj(),riskLevel:d}),w=s.Ik({summary:s.Yj(),fullOutput:s.Yj().optional(),changedFiles:s.YO(s.Yj()),diffStat:s.Yj(),testResult:s.k5(["passed","failed","unknown"]),nextSuggestion:s.Yj().optional(),previewUrl:s.Yj().optional(),previewPath:s.Yj().optional()}),I=s.Ik({type:s.eu("TASK_DONE"),agentId:s.Yj(),taskId:s.Yj(),result:w,isFinalResult:s.zM().optional()}),W=s.Ik({type:s.eu("TASK_FAILED"),agentId:s.Yj(),taskId:s.Yj(),error:s.Yj()}),j=s.Ik({type:s.eu("TASK_DELEGATED"),fromAgentId:s.Yj(),toAgentId:s.Yj(),taskId:s.Yj(),prompt:s.Yj()}),O=s.Ik({type:s.eu("AGENT_CREATED"),agentId:s.Yj(),name:s.Yj(),role:s.Yj(),palette:s.ai().optional(),personality:s.Yj().optional(),backend:s.Yj().optional(),isTeamLead:s.zM().optional(),teamId:s.Yj().optional()}),F=s.Ik({type:s.eu("AGENT_FIRED"),agentId:s.Yj()}),D=s.Ik({type:s.eu("TASK_RESULT_RETURNED"),fromAgentId:s.Yj(),toAgentId:s.Yj(),taskId:s.Yj(),summary:s.Yj(),success:s.zM()}),P=s.Ik({type:s.eu("TEAM_CHAT"),fromAgentId:s.Yj(),toAgentId:s.Yj().optional(),message:s.Yj(),messageType:s.k5(["delegation","result","status"]),taskId:s.Yj().optional(),timestamp:s.ai()}),L=s.Ik({type:s.eu("TASK_QUEUED"),agentId:s.Yj(),taskId:s.Yj(),prompt:s.Yj(),position:s.ai()}),_=s.gM("type",[C,A,v,E,I,W,j,O,F,D,P,L]),H=[{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:"Yuki",role:"QA / Tester",description:"Quick smoke test, verify core works",personality:"You are extremely concise, no fluff, straight to the result. RULES: Only verify core functionality works (max 3-5 checks). Report PASS/FAIL per check with one line of evidence. Do NOT write unit tests or test files unless explicitly asked. Do NOT list improvements, suggestions, or nice-to-haves. Do NOT test edge cases. FORBIDDEN: Do NOT start any HTTP server. Do NOT use agent-browser or any browser automation tool. Do NOT install or run npx packages for testing. Only use file reading, static analysis, and simple CLI commands (like node --check) to verify code. End your report with exactly one line: VERDICT: PASS or VERDICT: FAIL. A FAIL means the feature doesn't start or crashes, not that something could be better."},{palette:5,name:"Marcus",role:"Architect",description:"System design, refactoring",personality:"You speak formally, professionally, in an organized and concise manner."}];var R=r(5149);let Y=null,M=null,N=null,z=null,U=null;function B(){z&&(clearTimeout(z),z=null),N&&(N.onopen=null,N.onmessage=null,N.onclose=null,N.onerror=null,N.close(),N=null)}let X=null;function V(e){if("ws"===X)!function(e){if(!N||N.readyState!==WebSocket.OPEN)return console.warn("[WS] Not connected, dropping command:",e.type);console.log("[WS] Sending command:",e.type,e),N.send(JSON.stringify(e))}(e);else if("ably"===X){if(!M)throw Error("Not connected");console.log("[Web] Sending command:",e.type,e),M.publish(e.type,e).then(()=>console.log("[Web] Command published OK"),e=>console.error("[Web] Command publish failed:",e))}else console.error("[Connection] No active transport")}function G(){"ws"===X?(U=null,B()):"ably"===X&&function(){if(!Y)return;let e=Y.connection.state;"connected"===e||"disconnected"===e||"suspended"===e?Y.close():("connecting"===e||"initialized"===e)&&(Y.connection.once("connected",()=>null==Y?void 0:Y.close()),Y.connection.once("failed",()=>{})),Y=null,M=null}(),X=null}var K=r(2001),J=r(7441),Z=r(2988),q=r(5195),Q=r(2243);class ${pushUndo(e){this.undoStack.push(e),this.undoStack.length>Q.k2&&this.undoStack.shift()}popUndo(){return this.undoStack.pop()||null}pushRedo(e){this.redoStack.push(e),this.redoStack.length>Q.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,r,o,n){this.dragUid=e,this.dragStartCol=t,this.dragStartRow=r,this.dragOffsetCol=o,this.dragOffsetRow=n,this.isDragMoving=!1}clearDrag(){this.dragUid=null,this.isDragMoving=!1}reset(){this.activeTool=q.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=q.VF.SELECT,this.selectedTileType=q.nb.FLOOR_1,this.selectedFurnitureType="desk",this.floorColor={...Q.Pk},this.wallColor={...Q.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 ee=r(1204),et=r(9892);let er="office-layout";var eo=r(9631),en=r(5282);let el=(0,en.default)(()=>r.e(904).then(r.bind(r,6904)),{loadableGenerated:{webpack:()=>[6904]},ssr:!1}),ea=(0,en.default)(()=>r.e(810).then(r.bind(r,9810)),{loadableGenerated:{webpack:()=>[9810]},ssr:!1});(0,en.default)(()=>r.e(290).then(r.bind(r,9290)),{loadableGenerated:{webpack:()=>[9290]},ssr:!1});let ei=(0,en.default)(()=>r.e(29).then(r.bind(r,6029)),{loadableGenerated:{webpack:()=>[6029]},ssr:!1}),es=(0,en.default)(()=>r.e(757).then(r.bind(r,3757)),{loadableGenerated:{webpack:()=>[3757]},ssr:!1}),ec={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"}},ed=/\[?(https?:\/\/[^\s)>\]]+)\]?|((?:open\s+)?\/[\w./-]+\.\w+)/g;function eu(e){let{logLine:t}=e;return(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,o.jsxs)("div",{style:{padding:"8px 12px",backgroundColor:"#1e1a30",color:"#7a8a6a",fontSize:11,fontFamily:"monospace",border:"1px solid #3d2e54",borderLeft:"2px solid #e8b04060",maxWidth:"100%",overflow:"hidden",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:[(0,o.jsx)("span",{style:{opacity:.5,marginRight:6},children:">"}),t||"Thinking..."]})})}function ep(e){let{url:t,onClose:r}=e,[l,a]=(0,n.useState)("loading");return(0,n.useEffect)(()=>{a("loading");let e=setTimeout(()=>a("ready"),3e3);return()=>clearTimeout(e)},[t]),(0,o.jsxs)("div",{style:{position:"fixed",inset:0,zIndex:9999,backgroundColor:"rgba(0,0,0,0.85)",display:"flex",flexDirection:"column"},children:[(0,o.jsxs)("div",{style:{height:40,display:"flex",alignItems:"center",padding:"0 12px",backgroundColor:"#1a1530",gap:8},children:[(0,o.jsx)("span",{style:{flex:1,color:"#888",fontSize:13,fontFamily:"monospace",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t}),(0,o.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",style:{color:"#e8b040",fontSize:11,textDecoration:"none",padding:"2px 8px",border:"1px solid #3d2d10",fontFamily:"monospace"},children:"Open in tab"}),(0,o.jsx)("button",{onClick:r,style:{background:"none",border:"1px solid #444",color:"#aaa",fontSize:16,cursor:"pointer",borderRadius:6,width:28,height:28,display:"flex",alignItems:"center",justifyContent:"center"},children:"✕"})]}),"loading"===l&&(0,o.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:16},children:[(0,o.jsx)("div",{style:{width:32,height:32,border:"3px solid #333",borderTopColor:"#818cf8",borderRadius:"50%",animation:"preview-spin 0.8s linear infinite"}}),(0,o.jsx)("div",{style:{color:"#888",fontSize:14},children:"Starting server..."}),(0,o.jsx)("style",{children:"@keyframes preview-spin { to { transform: rotate(360deg); } }"})]}),"ready"===l&&(0,o.jsx)("iframe",{src:t,style:{flex:1,border:"none",width:"100%"}})]})}function ef(){let e=(0,n.useRef)(null);return(0,n.useEffect)(()=>{let t,r=e.current;if(!r)return;let o=r.getContext("2d");if(!o)return;r.width=window.innerWidth,r.height=window.innerHeight;let n=["#ff6b6b","#feca57","#48dbfb","#ff9ff3","#54a0ff","#5f27cd","#01a3a4","#ff5e57","#0abde3","#10ac84"],l=[],a=r.width,i=r.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:n[Math.floor(Math.random()*n.length)],alpha:1});let s=performance.now(),c=e=>{let r=e-s,n=r>2200?Math.max(0,1-(r-2200)/800):1;for(let t of(o.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),o.save(),o.translate(t.x,t.y),o.rotate(t.rot),o.globalAlpha=n,o.fillStyle=t.color,o.fillRect(-t.w/2,-t.h/2,t.w,t.h),o.restore();r<3e3&&(t=requestAnimationFrame(c))};return t=requestAnimationFrame(c),()=>cancelAnimationFrame(t)},[]),(0,o.jsx)("canvas",{ref:e,style:{position:"fixed",inset:0,zIndex:1e4,pointerEvents:"none"}})}function eg(e){let{previewUrl:t,previewPath:r,onPreview:n,onDismiss:l}=e;return(0,o.jsx)("div",{style:{position:"fixed",inset:0,zIndex:9999,backgroundColor:"rgba(0,0,0,0.7)",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,o.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,o.jsx)("div",{style:{fontSize:32,marginBottom:10},children:"★"}),(0,o.jsx)("div",{className:"px-font",style:{color:"#e8b040",fontSize:13,marginBottom:10,letterSpacing:"0.05em"},children:"Mission Complete!"}),(0,o.jsx)("div",{style:{color:"#9a8a68",fontSize:13,marginBottom:20,lineHeight:1.7,fontFamily:"monospace"},children:"Your task has been completed successfully. Ready for the next mission whenever you are."}),(0,o.jsxs)("div",{style:{display:"flex",gap:10,justifyContent:"center"},children:[t&&(0,o.jsx)("button",{onClick:()=>{r&&V({type:"SERVE_PREVIEW",filePath:r}),n(t)},style:{padding:"9px 20px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",fontSize:12,fontWeight:700,cursor:"pointer",fontFamily:"monospace"},children:"▶ Preview"}),(0,o.jsx)("button",{onClick:l,style:{padding:"9px 20px",border:"1px solid #3d2e54",backgroundColor:"#1e1a30",color:"#9a8a68",fontSize:12,cursor:"pointer",fontFamily:"monospace"},children:"OK"})]})]})})}function eh(e){let{message:t,onConfirm:r,onCancel:n}=e;return(0,o.jsx)("div",{style:{position:"fixed",inset:0,zIndex:1e4,backgroundColor:"rgba(0,0,0,0.65)",display:"flex",alignItems:"center",justifyContent:"center"},onClick:n,children:(0,o.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,o.jsx)("div",{style:{color:"#eee",fontSize:16,lineHeight:1.6,marginBottom:24},children:t}),(0,o.jsxs)("div",{style:{display:"flex",gap:12,justifyContent:"center"},children:[(0,o.jsx)("button",{onClick:n,style:{padding:"9px 28px",borderRadius:8,border:"1px solid #444",backgroundColor:"#2a2a3e",color:"#aaa",fontSize:14,cursor:"pointer"},children:"No"}),(0,o.jsx)("button",{onClick:r,style:{padding:"9px 28px",borderRadius:8,border:"none",backgroundColor:"#dc2626",color:"#fff",fontSize:14,fontWeight:600,cursor:"pointer"},children:"Yes"})]})]})})}let em={pre(e){let{children:t}=e;return(0,o.jsx)("div",{style:{overflowX:"auto",margin:"6px 0",WebkitOverflowScrolling:"touch"},children:t})},p(e){let{children:t}=e;return(0,o.jsx)("div",{style:{margin:"4px 0"},children:t})},code(e){var t;let{className:r,children:n,...l}=e,a=String(n).replace(/\n$/,""),i=(null==r?void 0:r.includes("language-"))||a.includes("\n"),s=a.match(/^open\s+(\/\S+)/),c=s?null:a.match(/^(\/[\w./-]+\.\w+)$/),d=null!=(t=null==s?void 0:s[1])?t:null==c?void 0:c[1];return d?(0,o.jsxs)("pre",{onClick:()=>V({type:"OPEN_FILE",path:d}),style:{backgroundColor:"#1a1830",padding:"8px 10px",borderRadius:6,fontSize:12,cursor:"pointer",border:"1px solid #2a2a4a",display:"flex",alignItems:"center",gap:8,whiteSpace:"pre"},title:"Click to open",children:[(0,o.jsx)("span",{style:{fontSize:14},children:"\uD83D\uDD17"}),(0,o.jsx)("code",{style:{fontFamily:"monospace",color:"#818cf8"},...l,children:a})]}):i?(0,o.jsx)("pre",{style:{backgroundColor:"#1a1830",padding:"8px 10px",borderRadius:6,fontSize:12,whiteSpace:"pre"},children:(0,o.jsx)("code",{style:{fontFamily:"monospace",color:"#a5b4fc"},...l,children:n})}):(0,o.jsx)("code",{style:{backgroundColor:"#1a1830",padding:"1px 5px",borderRadius:4,fontFamily:"monospace",color:"#a5b4fc",fontSize:13},...l,children:n})},table(e){let{children:t}=e;return(0,o.jsx)("div",{style:{overflowX:"auto",margin:"6px 0",WebkitOverflowScrolling:"touch"},children:(0,o.jsx)("table",{style:{borderCollapse:"collapse",fontSize:13,whiteSpace:"nowrap"},children:t})})},th(e){let{children:t}=e;return(0,o.jsx)("th",{style:{padding:"4px 10px",borderBottom:"1px solid #444",textAlign:"left",color:"#e2e8f0"},children:t})},td(e){let{children:t}=e;return(0,o.jsx)("td",{style:{padding:"4px 10px",borderBottom:"1px solid #222"},children:t})},ul(e){let{children:t}=e;return(0,o.jsx)("ul",{style:{margin:"4px 0",paddingLeft:18},children:t})},ol(e){let{children:t}=e;return(0,o.jsx)("ol",{style:{margin:"4px 0",paddingLeft:18},children:t})},a(e){let{href:t,children:r}=e;return(0,o.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",style:{color:"#818cf8",textDecoration:"underline"},children:r})},strong(e){let{children:t}=e;return(0,o.jsx)("strong",{style:{color:"#f0f0f0"},children:t})}};function ey(e){let{text:t}=e;return(0,o.jsx)(J.oz,{urlTransform:e=>e,components:em,children:t.replace(/(https?:\/\/[^\s)>\]]+)/g,"[$1]($1)")})}function eb(e){var t,r,l;let{msg:a,onPreview:i,isTeamLead:s,isTeamMember:c}=e,[d,u]=(0,n.useState)(!1);if("user"===a.role)return(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:8},children:(0,o.jsx)("div",{style:{maxWidth:"80%",padding:"8px 12px",backgroundColor:"#382800",color:"#eddcb8",fontSize:13,wordBreak:"break-word",border:"1px solid #e8b04050",borderLeft:"2px solid #e8b040"},children:function e(t){if("string"==typeof t){let e,r=[],n=0;for(ed.lastIndex=0;null!==(e=ed.exec(t));){e.index>n&&r.push(t.slice(n,e.index));let l=e[1],a=e[2];if(l)r.push((0,o.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+/,"");r.push((0,o.jsx)("span",{onClick:()=>V({type:"OPEN_FILE",path:t}),style:{color:"#e8b040",textDecoration:"underline",cursor:"pointer",fontFamily:"monospace",fontSize:13},title:"Click to open",children:a},e.index))}n=e.index+e[0].length}return 0===r.length?t:(n<t.length&&r.push(t.slice(n)),r)}return Array.isArray(t)?t.map((t,r)=>"string"==typeof t?e(t):t):t}(a.text)})});if("system"===a.role){let e=a.text.startsWith("Delegated to "),t=a.text.startsWith("Result from "),r=a.text.startsWith("Task queued "),n=e||t||r,l=e?"#5aacff44":t?"#48cc6a44":r?"#e8b04044":"#e0484844";return(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,o.jsxs)("div",{style:{maxWidth:"80%",padding:"8px 12px",backgroundColor:e?"#182844":t?"#143822":r?"#282010":"#3e1818",border:"1px solid ".concat(l),color:e?"#7ab8f5":t?"#7ad89a":r?"#e8b040":"#c87070",fontSize:n?11:13,wordBreak:"break-word",fontFamily:"monospace"},className:"chat-markdown",children:[n&&(0,o.jsx)("span",{style:{fontSize:9,opacity:.6,marginRight:4},children:e?"[delegation]":t?"[result]":"[queued]"}),(0,o.jsx)(ey,{text:a.text})]})})}let p=!!((null==(t=a.result)?void 0:t.fullOutput)&&a.result.fullOutput!==a.text&&a.result.fullOutput.length>a.text.length+20);return(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-start",marginBottom:8},children:(0,o.jsxs)("div",{style:{maxWidth:"85%",padding:"8px 12px",backgroundColor:"#231e38",color:"#d8c8a8",fontSize:13,wordBreak:"break-word",overflow:"hidden",minWidth:0,border:"1px solid #3d2e54",borderLeft:"2px solid #3d2e54"},className:"chat-markdown",children:[(0,o.jsx)(ey,{text:d&&(null==(r=a.result)?void 0:r.fullOutput)?a.result.fullOutput:a.text}),p&&(0,o.jsx)("button",{onClick:()=>u(!d),style:{marginTop:6,padding:"3px 8px",backgroundColor:"transparent",color:"#e8b040",border:"1px solid #e8b04040",cursor:"pointer",fontSize:10,fontFamily:"monospace"},children:d?"▲ Collapse":"▼ Full output"}),a.result&&a.result.changedFiles.length>0&&(0,o.jsxs)("div",{style:{marginTop:8,padding:"6px 8px",backgroundColor:"#1a1530",fontSize:11,border:"1px solid #3d2e54"},children:[(0,o.jsxs)("div",{style:{color:"#7a6858",marginBottom:4,fontFamily:"monospace"},children:["Changed ",a.result.changedFiles.length," files"]}),a.result.changedFiles.slice(0,5).map((e,t)=>(0,o.jsx)("div",{style:{fontFamily:"monospace",color:"#e8b040",opacity:.8},children:e},t)),a.result.changedFiles.length>5&&(0,o.jsxs)("div",{style:{color:"#7a6858",fontFamily:"monospace"},children:["...and ",a.result.changedFiles.length-5," more"]})]}),(null==(l=a.result)?void 0:l.previewUrl)&&i&&!c&&(!s||a.isFinalResult)&&(0,o.jsx)("button",{onClick:()=>{a.result.previewPath&&V({type:"SERVE_PREVIEW",filePath:a.result.previewPath}),i(a.result.previewUrl)},style:{marginTop:8,padding:"5px 12px",backgroundColor:"#143a14",color:"#48cc6a",border:"1px solid #48cc6a50",cursor:"pointer",fontSize:11,fontWeight:700,fontFamily:"monospace"},children:"▶ Preview"})]})})}function ex(e){let{palette:t,zoom:r=3,ready:l}=e,a=(0,n.useRef)(null);return(0,n.useEffect)(()=>{var e,o;let n=a.current;if(!n)return;let l=(0,Z.Cr)(t);if(!l)return;let i=l.length,s=null!=(o=null==(e=l[0])?void 0:e.length)?o:0;n.width=s*r,n.height=i*r;let c=n.getContext("2d");if(c){c.clearRect(0,0,n.width,n.height);for(let e=0;e<i;e++)for(let t=0;t<s;t++){let o=l[e][t];o&&(c.fillStyle=o,c.fillRect(t*r,e*r,r,r))}}},[t,r,l]),(0,o.jsx)("canvas",{ref:a,style:{width:16*r,height:32*r,imageRendering:"pixelated"}})}let ek=[{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"}];function eS(e){let{onHire:t,onClose:r,assetsReady:l}=e,[a,i]=(0,n.useState)("claude");return(0,o.jsx)("div",{onClick:r,style:{position:"fixed",inset:0,backgroundColor:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:100},children:(0,o.jsxs)("div",{onClick:e=>e.stopPropagation(),style:{backgroundColor:"#1e1a30",padding:"14px 14px 10px",width:"90%",maxWidth:320,border:"2px solid #3d2e54",boxShadow:"4px 4px 0px rgba(0,0,0,0.5)"},children:[(0,o.jsx)("h2",{className:"px-font",style:{fontSize:10,margin:"0 0 12px",textAlign:"center",color:"#e8b040",letterSpacing:"0.05em"},children:"Hire Agent"}),(0,o.jsxs)("div",{style:{marginBottom:10},children:[(0,o.jsx)("div",{style:{fontSize:9,color:"#7a6858",marginBottom:4,fontFamily:"monospace",letterSpacing:"0.05em"},children:"AI BACKEND"}),(0,o.jsx)("div",{style:{display:"flex",gap:3},children:ek.map(e=>(0,o.jsx)("button",{onClick:()=>i(e.id),style:{flex:1,padding:"5px 4px",fontSize:10,fontWeight:600,border:a===e.id?"1px solid ".concat(e.color):"1px solid #3d2e54",backgroundColor:a===e.id?e.color+"20":"transparent",color:a===e.id?e.color:"#6a5848",cursor:"pointer",fontFamily:"monospace"},children:e.name},e.id))})]}),(0,o.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:H.map(e=>(0,o.jsxs)("button",{onClick:()=>t(e.name,e.description,e.palette,e.personality,a),style:{display:"flex",alignItems:"center",gap:10,padding:"5px 8px",border:"1px solid #3d2e54",backgroundColor:"transparent",cursor:"pointer",textAlign:"left"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="#272040",e.currentTarget.style.borderColor="#e8b04040"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent",e.currentTarget.style.borderColor="#3d2e54"},children:[(0,o.jsx)(ex,{palette:e.palette,zoom:2,ready:l}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsx)("div",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:e.name}),(0,o.jsxs)("div",{style:{fontSize:10,color:"#7a6858"},children:[e.role," \xb7 ",e.description]})]})]},e.palette))}),(0,o.jsx)("button",{onClick:r,style:{width:"100%",marginTop:8,padding:"7px",border:"1px solid #3d2e54",backgroundColor:"transparent",color:"#6a5848",fontSize:11,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 eC(e){let{messages:t,agents:r,assetsReady:l}=e,a=(0,n.useRef)(null);return((0,n.useEffect)(()=>{var e;null==(e=a.current)||e.scrollIntoView({behavior:"smooth"})},[t.length]),0===t.length)?(0,o.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:30,fontSize:11,fontFamily:"monospace"},children:"No team activity yet. Hire a team and send a task to the Team Lead."}):(0,o.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"10px 12px",display:"flex",flexDirection:"column",gap:6},children:[t.map((e,t)=>{var n,a,i,s;if(!e||!e.fromAgentId)return null;let c=null!=(n=eT[e.messageType])?n:eT.status,d=r.get(e.fromAgentId),u=e.toAgentId?r.get(e.toAgentId):void 0,p=null!=(a=e.message)?a:"";return(0,o.jsxs)("div",{style:{padding:"8px 10px",backgroundColor:c.bg,borderLeft:"2px solid ".concat(c.border),border:"1px solid ".concat(c.border,"40")},children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(null==d?void 0:d.palette)!==void 0&&(0,o.jsx)(ex,{palette:d.palette,zoom:1,ready:l}),(0,o.jsx)("span",{style:{fontSize:11,fontWeight:700,color:"#eddcb8"},children:null!=(i=e.fromAgentName)?i:e.fromAgentId}),e.toAgentName&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{style:{fontSize:10,color:"#6a5848"},children:"→"}),(null==u?void 0:u.palette)!==void 0&&(0,o.jsx)(ex,{palette:u.palette,zoom:1,ready:l}),(0,o.jsx)("span",{style:{fontSize:11,fontWeight:700,color:"#eddcb8"},children:e.toAgentName})]}),(0,o.jsx)("span",{style:{marginLeft:"auto",fontSize:8,padding:"1px 4px",backgroundColor:c.border+"20",color:c.border,border:"1px solid ".concat(c.border,"40"),fontFamily:"monospace"},children:c.label})]}),(0,o.jsxs)("div",{style:{fontSize:11,color:"#b09878",wordBreak:"break-word",maxHeight:120,overflow:"hidden",fontFamily:"monospace"},children:[p.slice(0,300),p.length>300?"...":""]}),(0,o.jsx)("div",{style:{fontSize:9,color:"#5a4838",marginTop:4,fontFamily:"monospace"},children:new Date(e.timestamp).toLocaleTimeString()})]},null!=(s=e.id)?s:"tc-".concat(t))}),(0,o.jsx)("div",{ref:a})]})}function eA(e){let{onCreateTeam:t,onClose:r,assetsReady:l}=e,[a,i]=(0,n.useState)(5),[s,c]=(0,n.useState)(H.map((e,t)=>5!==t)),[d,u]=(0,n.useState)({});return(0,o.jsx)("div",{onClick:r,style:{position:"fixed",inset:0,backgroundColor:"rgba(0,0,0,0.6)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:100},children:(0,o.jsxs)("div",{onClick:e=>e.stopPropagation(),style:{backgroundColor:"#1e1a30",padding:"14px 14px 10px",width:"90%",maxWidth:380,border:"2px solid #3d2e54",boxShadow:"4px 4px 0px rgba(0,0,0,0.5)"},children:[(0,o.jsx)("h2",{className:"px-font",style:{fontSize:10,margin:"0 0 12px",textAlign:"center",color:"#e8b040",letterSpacing:"0.05em"},children:"Hire Team"}),(0,o.jsx)("div",{style:{fontSize:9,color:"#7a6858",marginBottom:6,fontFamily:"monospace",letterSpacing:"0.05em"},children:"SELECT TEAM LEAD"}),(0,o.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3,marginBottom:10},children:H.map((e,t)=>{var r;return(0,o.jsxs)("button",{onClick:()=>{i(t),c(e=>e.map((e,r)=>r!==t&&e))},style:{display:"flex",alignItems:"center",gap:8,padding:"5px 8px",border:t===a?"1px solid #e8903070":"1px solid #3d2e54",backgroundColor:t===a?"#261a00":"transparent",cursor:"pointer",textAlign:"left"},children:[(0,o.jsx)(ex,{palette:e.palette,zoom:2,ready:l}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsxs)("div",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:[e.name," ",t===a&&(0,o.jsx)("span",{style:{color:"#e89030",fontSize:8,fontFamily:"monospace"},children:"LEAD"})]}),(0,o.jsx)("div",{style:{fontSize:10,color:"#7a6858"},children:e.role})]}),t!==a&&(0,o.jsx)("input",{type:"checkbox",checked:s[t],onClick:e=>e.stopPropagation(),onChange:()=>{t!==a&&c(e=>{let r=[...e];return r[t]=!r[t],r})},style:{cursor:"pointer",accentColor:"#e8b040"}}),(0,o.jsx)("select",{value:null!=(r=d[String(t)])?r:"claude",onClick:e=>e.stopPropagation(),onChange:e=>u(r=>({...r,[String(t)]:e.target.value})),style:{padding:"2px 4px",border:"1px solid #3d2e54",backgroundColor:"#1a1530",color:"#9a8a68",fontSize:9,cursor:"pointer",fontFamily:"monospace"},children:ek.map(e=>(0,o.jsx)("option",{value:e.id,children:e.name},e.id))})]},e.palette)})}),(0,o.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,o.jsx)("button",{onClick:()=>{let e=s.map((e,t)=>e&&t!==a?t:-1).filter(e=>e>=0);t(a,e,d)},style:{flex:1,padding:"9px",border:"1px solid #e8b04060",backgroundColor:"#382800",color:"#e8b040",fontSize:11,fontWeight:700,cursor:"pointer",fontFamily:"monospace"},children:"Create Team"}),(0,o.jsx)("button",{onClick:r,style:{padding:"9px 14px",border:"1px solid #3d2e54",backgroundColor:"transparent",color:"#6a5848",fontSize:11,cursor:"pointer",fontFamily:"monospace"},children:"Cancel"})]})]})})}function ev(){var e;let t=(0,l.useRouter)(),{agents:r,connected:s,addUserMessage:c,teamMessages:d,clearTeamMessages:u}=(0,a.h)(),[p,f]=(0,n.useState)(null),[g,h]=(0,n.useState)(null),[m,y]=(0,n.useState)(null),[b,x]=(0,n.useState)(!1),{confirm:k,modal:S}=function(){let[e,t]=(0,n.useState)(null),r=(0,n.useCallback)(e=>new Promise(r=>{t({message:e,resolve:r})}),[]),l=(0,n.useCallback)(()=>{null==e||e.resolve(!0),t(null)},[e]),a=(0,n.useCallback)(()=>{null==e||e.resolve(!1),t(null)},[e]);return{confirm:r,modal:e?(0,o.jsx)(eh,{message:e.message,onConfirm:l,onCancel:a}):null}}(),[T,C]=(0,n.useState)(!1),[A,v]=(0,n.useState)(!1),[E,w]=(0,n.useState)(!1),[I,W]=(0,n.useState)("agents"),[j,O]=(0,n.useState)(""),F=(0,n.useRef)(null),[D,P]=(0,n.useState)(!1),[L,H]=(0,n.useState)(!1),[J,Z]=(0,n.useState)(!0),[,en]=(0,n.useState)(0),ed=(0,n.useRef)(new $),em=(0,n.useRef)(null),ey=(0,n.useRef)(1),eT=(0,n.useRef)({x:0,y:0}),[ev,eE]=(0,n.useState)(!1);(0,n.useEffect)(()=>{try{let e=localStorage.getItem("office-sound-enabled");null!==e&&Z(JSON.parse(e))}catch(e){}},[]);let{hydrated:ew}=(0,a.h)(),eI=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(ew){if(null===eI.current){let e=new Set;for(let[,t]of r)for(let r of t.messages)(r.result||r.isFinalResult)&&e.add(r.id);eI.current=e;return}for(let[,e]of r)for(let t of e.messages){if(!t.result||eI.current.has(t.id))continue;eI.current.add(t.id);let r=t.result;(0!==r.changedFiles.length||"unknown"!==r.testResult||r.previewUrl)&&(!e.teamId||e.isTeamLead)&&(!e.isTeamLead||t.isFinalResult)&&(y({previewUrl:r.previewUrl,previewPath:r.previewPath}),x(!0),setTimeout(()=>x(!1),3e3))}}},[ew,r]);let{handleTileClick:eW,handleRightClick:ej,handleDeleteSelected:eO,handleRotateSelected:eF,handleDragStart:eD,handleDragMove:eP,handleDragEnd:eL,updateGhost:e_,handleUndo:eH,handleRedo:eR,handleImportLayout:eY,handleSelectedFurnitureColorChange:eM}=function(e,t,r){let o=(0,n.useRef)(null),l=(0,n.useCallback)(()=>{var e,r;return null!=(r=null==(e=t.current)?void 0:e.layout)?r:null},[t]),a=(0,n.useCallback)(n=>{let l=t.current;l&&(l.setLayout(n),e.current.isDirty=!0,r(),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{try{localStorage.setItem(er,JSON.stringify(n))}catch(e){}},Q.e7))},[t,e,r]),i=(0,n.useCallback)((t,o)=>{var n,i,s,c;let d=e.current,u=l();if(!u)return;let p=d.activeTool;if(t<0||t>=u.cols||o<0||o>=u.rows){let e=null;if(o<0?e="up":o>=u.rows?e="down":t<0?e="left":t>=u.cols&&(e="right"),e){d.pushUndo(u),d.clearRedo();let t=(0,ee.vk)(u,e);t&&a(t.layout)}return}switch(p){case q.VF.TILE_PAINT:d.pushUndo(u),d.clearRedo(),a((0,ee.FH)(u,t,o,d.selectedTileType,d.floorColor));break;case q.VF.WALL_PAINT:{d.pushUndo(u),d.clearRedo();let e=o*u.cols+t;u.tiles[e]===q.nb.WALL?a((0,ee.FH)(u,t,o,q.nb.FLOOR_1,d.floorColor)):a((0,ee.FH)(u,t,o,q.nb.WALL,d.wallColor));break}case q.VF.ERASE:{d.pushUndo(u),d.clearRedo();let e=(0,ee.iH)(u,t,o),r=u;e&&(r=(0,ee.PT)(r,e.uid)),a(r=(0,ee.FH)(r,t,o,q.nb.VOID));break}case q.VF.FURNITURE_PLACE:if(d.selectedFurnitureType){let e=(0,et.Um)(d.selectedFurnitureType);if(e){let r=e.canPlaceOnWalls?(0,ee.si)(d.selectedFurnitureType,o):o;if((0,ee.Ii)(u,d.selectedFurnitureType,t,r)){d.pushUndo(u),d.clearRedo();let e={uid:"f-".concat((0,K.Ak)(6)),type:d.selectedFurnitureType,col:t,row:r,...d.pickedFurnitureColor?{color:d.pickedFurnitureColor}:{}};a((0,ee.qZ)(u,e))}}}break;case q.VF.SELECT:{let e=(0,ee.iH)(u,t,o);d.selectedFurnitureUid=null!=(n=null==e?void 0:e.uid)?n:null,r();break}case q.VF.EYEDROPPER:{let e=o*u.cols+t,n=u.tiles[e];if(void 0!==n&&n!==q.nb.WALL&&n!==q.nb.VOID){d.selectedTileType=n;let t=null==(i=u.tileColors)?void 0:i[e];t&&(d.floorColor={...t}),d.activeTool=q.VF.TILE_PAINT}else if(n===q.nb.WALL){let t=null==(s=u.tileColors)?void 0:s[e];t&&(d.wallColor={...t}),d.activeTool=q.VF.WALL_PAINT}r();break}case q.VF.FURNITURE_PICK:{let e=(0,ee.iH)(u,t,o);e&&(d.selectedFurnitureType=e.type,d.pickedFurnitureColor=null!=(c=e.color)?c:null,d.activeTool=q.VF.FURNITURE_PLACE,r())}}},[e,l,a,r]),s=(0,n.useCallback)((t,r)=>{let o=l();if(!o||t<0||t>=o.cols||r<0||r>=o.rows)return;let n=e.current;n.pushUndo(o),n.clearRedo();let i=(0,ee.iH)(o,t,r),s=o;i&&(s=(0,ee.PT)(s,i.uid)),a(s=(0,ee.FH)(s,t,r,q.nb.VOID))},[e,l,a]),c=(0,n.useCallback)(()=>{let t=e.current,o=l();o&&t.selectedFurnitureUid&&(t.pushUndo(o),t.clearRedo(),a((0,ee.PT)(o,t.selectedFurnitureUid)),t.selectedFurnitureUid=null,r())},[e,l,a,r]),d=(0,n.useCallback)(()=>{let t=e.current,r=l();if(!r||!t.selectedFurnitureUid)return;let o=r.furniture.find(e=>e.uid===t.selectedFurnitureUid);o&&(0,et.ZZ)(o.type)&&(t.pushUndo(r),t.clearRedo(),a((0,ee.WC)(r,t.selectedFurnitureUid)))},[e,l,a]),u=(0,n.useCallback)((t,r)=>{let o=e.current,n=l();if(!n)return;let a=(0,ee.iH)(n,t,r);a&&(o.selectedFurnitureUid=a.uid,o.startDrag(a.uid,t,r,t-a.col,r-a.row),o.pushUndo(n),o.clearRedo())},[e,l]),p=(0,n.useCallback)((t,r)=>{let o=e.current;if(!o.dragUid)return;o.isDragMoving=!0;let n=l();if(!n)return;let a=t-o.dragOffsetCol,i=r-o.dragOffsetRow,s=n.furniture.find(e=>e.uid===o.dragUid);s&&((0,et.Um)(s.type),o.ghostCol=a,o.ghostRow=i,o.ghostValid=(0,ee.Ii)(n,s.type,a,i,o.dragUid))},[e,l]),f=(0,n.useCallback)((t,r)=>{let o=e.current;if(!o.dragUid)return;let n=o.dragUid,i=o.isDragMoving;if(o.clearDrag(),o.clearGhost(),!i)return;let s=l();if(!s)return;let c=t-o.dragOffsetCol,d=r-o.dragOffsetRow;a((0,ee.iZ)(s,n,c,d))},[e,l,a]),g=(0,n.useCallback)((t,r)=>{let o=e.current;if(!o.dragUid)if(o.activeTool===q.VF.FURNITURE_PLACE&&o.selectedFurnitureType){let e=l();if(!e)return;let n=(0,et.Um)(o.selectedFurnitureType);if(!n)return;let a=n.canPlaceOnWalls?(0,ee.si)(o.selectedFurnitureType,r):r;o.ghostCol=t,o.ghostRow=a,o.ghostValid=(0,ee.Ii)(e,o.selectedFurnitureType,t,a)}else o.ghostCol=t,o.ghostRow=r,o.ghostValid=!1},[e,l]),h=(0,n.useCallback)(()=>{let t=e.current,r=l();if(!r)return;let o=t.popUndo();o&&(t.pushRedo(r),a(o))},[e,l,a]),m=(0,n.useCallback)(()=>{let t=e.current,r=l();if(!r)return;let o=t.popRedo();o&&(t.pushUndo(r),a(o))},[e,l,a]);return{handleTileClick:i,handleRightClick:s,handleDeleteSelected:c,handleRotateSelected:d,handleDragStart:u,handleDragMove:p,handleDragEnd:f,updateGhost:g,handleUndo:h,handleRedo:m,handleImportLayout:(0,n.useCallback)(t=>{let r=e.current,o=l();o&&(r.pushUndo(o),r.clearRedo()),a(t)},[e,l,a]),handleSelectedFurnitureColorChange:(0,n.useCallback)(t=>{let r=e.current,o=l();if(!o||!r.selectedFurnitureUid)return;r.pushUndo(o),r.clearRedo();let n=o.furniture.map(e=>e.uid===r.selectedFurnitureUid?{...e,color:null!=t?t:void 0}:e);a({...o,furniture:n})},[e,l,a])}}(ed,em,(0,n.useCallback)(()=>{en(e=>e+1)},[])),eN=(0,n.useCallback)(()=>{P(e=>{let t=!e;return t||ed.current.reset(),t})},[]);!function(e){let{editMode:t,editorRef:r,onUndo:o,onRedo:l,onDeleteSelected:a,onRotateSelected:i,onExitEditMode:s}=e;(0,n.useEffect)(()=>{if(!t)return;let e=e=>{let t=e.ctrlKey||e.metaKey;if(t&&"z"===e.key&&!e.shiftKey){e.preventDefault(),o();return}if(t&&"y"===e.key||t&&"z"===e.key&&e.shiftKey){e.preventDefault(),l();return}if("Delete"===e.key||"Backspace"===e.key){r.current.selectedFurnitureUid&&(e.preventDefault(),a());return}if("r"===e.key||"R"===e.key){r.current.selectedFurnitureUid&&(e.preventDefault(),i());return}if("Escape"===e.key)return void(r.current.selectedFurnitureUid?r.current.selectedFurnitureUid=null:s());let n={1:q.VF.SELECT,2:q.VF.TILE_PAINT,3:q.VF.WALL_PAINT,4:q.VF.ERASE,5:q.VF.FURNITURE_PLACE,6:q.VF.EYEDROPPER};if(n[e.key]){r.current.activeTool=n[e.key],r.current.selectedFurnitureUid=null;return}};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[t,r,o,l,a,i,s])}({editMode:D,editorRef:ed,onUndo:eH,onRedo:eR,onDeleteSelected:eO,onRotateSelected:eF,onExitEditMode:eN});let ez=(0,n.useCallback)(()=>{let e=function(){try{let e=localStorage.getItem(er);if(!e)return null;let t=JSON.parse(e);if(t&&1===t.version)return t}catch(e){}return null}();if(e&&em.current){let t=(0,eo._m)(e);em.current.setLayout(t),en(e=>e+1)}eE(!0)},[]);(0,n.useEffect)(()=>{var e,r;let o=(0,R.getConnection)();if(!o)return void t.push("/pair");return a.h.getState().hydrate(),(G(),"ws"===o.mode&&o.wsUrl)?(X="ws",e=o.wsUrl,B(),U=e,function e(){if(!U)return;let t=new WebSocket(U);t.onopen=()=>{console.log("[WS] Connected"),a.h.getState().setConnected(!0),t.readyState===WebSocket.OPEN&&t.send(JSON.stringify({type:"PING"}))},t.onmessage=e=>{try{let t=_.parse(JSON.parse(e.data));a.h.getState().handleEvent(t)}catch(e){console.error("[WS] Invalid event:",e)}},t.onclose=()=>{console.log("[WS] Disconnected"),a.h.getState().setConnected(!1),N===t&&U&&(N=null,z=setTimeout(e,2e3))},t.onerror=()=>{},N=t}()):"ably"===o.mode&&(X="ably",r=o.machineId,(Y=new i.Realtime({authCallback:async(e,t)=>{try{let e=(0,R.getGatewayHttpUrl)(),o=await fetch("".concat(e,"/ably/token"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({machineId:r})});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",()=>{a.h.getState().setConnected(!0),Y.channels.get("machine:".concat(r,":commands")).publish("PING",{type:"PING"})}),Y.connection.on("disconnected",()=>{a.h.getState().setConnected(!1)}),Y.channels.get("machine:".concat(r,":events")).subscribe(e=>{try{let t=_.parse(e.data);a.h.getState().handleEvent(t)}catch(e){console.error("[Web] Invalid event:",e)}}),M=Y.channels.get("machine:".concat(r,":commands"))),()=>{G()}},[t]);let eU=p?r.get(p):null,eB=(null==eU?void 0:eU.status)==="working"||(null==eU?void 0:eU.status)==="waiting_approval";(0,n.useEffect)(()=>{let e=F.current;if(!e)return;let t=e.parentElement;t&&(t.scrollTop=t.scrollHeight)},[null==eU||null==(e=eU.messages)?void 0:e.length,null==eU?void 0:eU.status]),(0,n.useEffect)(()=>{if(p)return;let e=Array.from(r.values()).find(e=>e.isTeamLead);e&&(f(e.agentId),w(!0))},[r,p]);let eX=(0,n.useCallback)(e=>{f(e),w(!0)},[]),eV=(0,n.useCallback)((e,t,o,n,l)=>{let a=Array.from(r.values()).filter(t=>t.name===e||t.name.match(new RegExp("^".concat(e," \\d+$")))),i=0===a.length?e:"".concat(e," ").concat(a.length+1),s="agent-".concat((0,K.Ak)(6));V({type:"CREATE_AGENT",agentId:s,name:i,role:t,palette:o,personality:n,backend:l}),f(s),w(!0),C(!1)},[r]),eG=(0,n.useCallback)((e,t,r)=>{V({type:"CREATE_TEAM",leadPresetIndex:e,memberPresetIndices:t,backends:r}),v(!1),W("agents")},[]),eK=(0,n.useCallback)(async e=>{var t,o;await k("Fire ".concat(null!=(o=null==(t=r.get(e))?void 0:t.name)?o:e,"?"))&&(V({type:"FIRE_AGENT",agentId:e}),p===e&&(f(null),w(!1)))},[p,r,k]),eJ=Array.from(r.values()).some(e=>!!e.teamId),eZ=Array.from(r.values()).some(e=>!!e.teamId&&("working"===e.status||"waiting_approval"===e.status)),eq=(0,n.useCallback)(()=>{for(let e of(V({type:"STOP_TEAM"}),Array.from(r.values()).filter(e=>!!e.teamId)))V({type:"CANCEL_TASK",agentId:e.agentId,taskId:""})},[r]),eQ=(0,n.useCallback)(async()=>{let e=Array.from(r.values()).filter(e=>!!e.teamId);if(0===e.length)return;let t="Fire the entire team (".concat(e.length," agents)?");if(await k(t)){for(let t of(V({type:"FIRE_TEAM"}),e))V({type:"FIRE_AGENT",agentId:t.agentId});u(),f(null),w(!1),W("agents")}},[r,u,k]),e$=(0,n.useCallback)(()=>{if(!p||!j.trim())return;let e=r.get(p),t=(0,K.Ak)();c(p,t,j.trim()),V({type:"RUN_TASK",agentId:p,taskId:t,prompt:j.trim(),name:null==e?void 0:e.name,role:null==e?void 0:e.role,personality:null==e?void 0:e.personality}),O("")},[p,j,c,r]),e0=(0,n.useCallback)(()=>{p&&V({type:"CANCEL_TASK",agentId:p,taskId:""})},[p]),e1=(0,n.useCallback)((e,t)=>{V({type:"APPROVAL_DECISION",approvalId:e,decision:t})},[]);(0,n.useCallback)(e=>{ey.current=Math.max(Q.DH,Math.min(Q.ZV,e)),en(e=>e+1)},[]);let e2=Array.from(r.values()),e8=ed.current,[e4,e3]=(0,n.useState)(!1);(0,n.useEffect)(()=>{let e=window.matchMedia("(max-width: 768px)");e3(e.matches);let t=e=>e3(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]);let e6=E&&null!==p;return(0,o.jsxs)("div",{style:{height:"100vh",width:"100vw",position:"relative",overflow:"hidden",display:"flex"},children:[(0,o.jsxs)("div",{style:{flex:1,position:"relative",minWidth:0},children:[(0,o.jsx)(el,{onAgentClick:eX,selectedAgent:p,editMode:D,editorRef:ed,stateRef:em,zoomRef:ey,panRef:eT,onTileClick:eW,onTileRightClick:ej,onGhostMove:e_,onDragStart:eD,onDragMove:eP,onDragEnd:eL,onDeleteBtnClick:eO,onRotateBtnClick:eF,onAssetsLoaded:ez}),(0,o.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,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,pointerEvents:"auto"},children:[(0,o.jsx)("h1",{className:"px-font",style:{fontSize:11,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,o.jsx)("span",{style:{fontSize:9,padding:"3px 7px",border:"1px solid ".concat(s?"#2a5c2a":"#5c1a1a"),backgroundColor:s?"#143a14":"#3e1818",color:s?"#48cc6a":"#e04848",fontFamily:"monospace",letterSpacing:"0.05em"},children:s?"● ONLINE":"● OFFLINE"}),D&&(0,o.jsx)("span",{style:{fontSize:9,padding:"3px 7px",border:"1px solid #5a3a10",backgroundColor:"#1a0e00",color:"#e8b040",fontFamily:"monospace"},children:"EDIT MODE"})]})}),D&&(0,o.jsx)(ea,{activeTool:e8.activeTool,selectedTileType:e8.selectedTileType,selectedFurnitureType:e8.selectedFurnitureType,selectedFurnitureUid:e8.selectedFurnitureUid,selectedFurnitureColor:(()=>{var e;if(!e8.selectedFurnitureUid||!em.current)return null;let t=em.current.layout.furniture.find(e=>e.uid===e8.selectedFurnitureUid);return null!=(e=null==t?void 0:t.color)?e:null})(),floorColor:e8.floorColor,wallColor:e8.wallColor,onToolChange:e=>{e8.activeTool=e,e8.clearSelection(),en(e=>e+1)},onTileTypeChange:e=>{e8.selectedTileType=e,en(e=>e+1)},onFloorColorChange:e=>{e8.floorColor=e,en(e=>e+1)},onWallColorChange:e=>{e8.wallColor=e,en(e=>e+1)},onSelectedFurnitureColorChange:eM,onFurnitureTypeChange:e=>{e8.selectedFurnitureType=e,e8.activeTool=q.VF.FURNITURE_PLACE,en(e=>e+1)}}),!e4&&(0,o.jsx)(es,{editMode:D,onToggleEditMode:eN,onOpenSettings:()=>H(!0)})]}),!e4&&(0,o.jsxs)("div",{style:{width:"33vw",minWidth:300,maxWidth:420,flexShrink:0,height:"100vh",backgroundColor:"#1e1a30",borderLeft:"2px solid #3d2e54",display:"flex",flexDirection:"column",overflow:"hidden"},children:[(0,o.jsxs)("div",{style:{padding:"8px 10px 6px",flexShrink:0,borderBottom:"1px solid #2e2448"},children:[(0,o.jsxs)("div",{style:{display:"flex",gap:0,marginBottom:8,border:"1px solid #3d2e54",overflow:"hidden"},children:[(0,o.jsx)("button",{onClick:()=>W("agents"),style:{flex:1,minWidth:0,padding:"10px 6px",fontSize:10,fontWeight:700,border:"none",cursor:"pointer",borderRight:"1px solid #3d2e54",backgroundColor:"agents"===I?"#382800":"#1a1530",color:"agents"===I?"#e8b040":"#6a5848",fontFamily:"'Press Start 2P', monospace",letterSpacing:"0.03em",textAlign:"center",boxShadow:"agents"===I?"inset 0 -2px 0 #e8b040":"none"},children:"Agents"}),(0,o.jsxs)("button",{onClick:()=>W("team"),style:{flex:1,minWidth:0,padding:"10px 6px",fontSize:10,fontWeight:700,border:"none",cursor:"pointer",backgroundColor:"team"===I?"#382800":"#1a1530",color:"team"===I?"#e8b040":"#6a5848",position:"relative",fontFamily:"'Press Start 2P', monospace",letterSpacing:"0.03em",textAlign:"center",boxShadow:"team"===I?"inset 0 -2px 0 #e8b040":"none"},children:["Team",d.length>0&&(0,o.jsx)("span",{style:{marginLeft:5,fontSize:8,padding:"1px 4px",backgroundColor:"#48cc6a22",color:"#48cc6a",border:"1px solid #48cc6a44"},children:d.length})]})]}),(0,o.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,o.jsx)("button",{onClick:()=>C(!0),style:{flex:1,minWidth:0,padding:"9px 6px",border:"1px solid #e8b04060",backgroundColor:"transparent",color:"#e8b040",fontSize:10,fontWeight:700,cursor:"pointer",fontFamily:"'Press Start 2P', monospace",letterSpacing:"0.03em",textAlign:"center"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(200,155,48,0.12)",e.currentTarget.style.borderColor="#e8b040"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent",e.currentTarget.style.borderColor="#e8b04060"},children:"+ Hire"}),eJ?(0,o.jsxs)(o.Fragment,{children:[eZ&&(0,o.jsx)("button",{onClick:eq,style:{flex:1,minWidth:0,padding:"9px 6px",border:"1px solid #e8903070",backgroundColor:"transparent",color:"#e89030",fontSize:10,fontWeight:700,cursor:"pointer",fontFamily:"'Press Start 2P', monospace",letterSpacing:"0.03em",textAlign:"center"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(224,133,48,0.12)",e.currentTarget.style.borderColor="#e89030"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent",e.currentTarget.style.borderColor="#e8903070"},children:"Stop"}),(0,o.jsx)("button",{onClick:eQ,style:{flex:1,minWidth:0,padding:"9px 6px",border:"1px solid #e0484870",backgroundColor:"transparent",color:"#e04848",fontSize:10,fontWeight:700,cursor:"pointer",fontFamily:"'Press Start 2P', monospace",letterSpacing:"0.03em",textAlign:"center"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(212,68,68,0.12)",e.currentTarget.style.borderColor="#e04848"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent",e.currentTarget.style.borderColor="#e0484870"},children:"Fire Team"})]}):(0,o.jsx)("button",{onClick:()=>v(!0),style:{flex:1,minWidth:0,padding:"9px 6px",border:"1px solid #e8903070",backgroundColor:"transparent",color:"#e89030",fontSize:10,fontWeight:700,cursor:"pointer",fontFamily:"'Press Start 2P', monospace",letterSpacing:"0.03em",textAlign:"center"},onMouseEnter:e=>{e.currentTarget.style.backgroundColor="rgba(224,133,48,0.12)",e.currentTarget.style.borderColor="#e89030"},onMouseLeave:e=>{e.currentTarget.style.backgroundColor="transparent",e.currentTarget.style.borderColor="#e8903070"},children:"+ Team"})]})]}),"team"===I&&(0,o.jsx)(eC,{messages:d,agents:r,assetsReady:ev}),(0,o.jsx)("div",{style:{flex:1,overflowY:"auto",padding:"4px 0",display:"agents"===I?"block":"none"},children:e2.map(e=>{var t,n,l,a,i,s,c,d,u,g;let m=null!=(i=ec[e.status])?i:ec.idle,y=E&&p===e.agentId,b=r.get(e.agentId),x=(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);return(0,o.jsxs)("div",{style:{display:"flex",flexDirection:"column",borderBottom:"1px solid #272040",borderLeft:(null==b?void 0:b.teamId)?"3px solid #e8b040":"3px solid transparent"},children:[(0,o.jsxs)("button",{onClick:()=>{y?w(!1):(f(e.agentId),w(!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,o.jsx)(ex,{palette:null!=(s=e.palette)?s:0,zoom:2,ready:ev}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsxs)("div",{style:{fontSize:12,fontWeight:700,color:"#eddcb8",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",display:"flex",alignItems:"center",gap:4},children:[e.name,e.isTeamLead&&(0,o.jsx)("span",{style:{fontSize:8,padding:"1px 4px",backgroundColor:"#e8903028",color:"#e89030",border:"1px solid #e8903060",fontFamily:"monospace",letterSpacing:"0.05em"},children:"LEAD"}),S&&(0,o.jsx)("span",{style:{fontSize:8,padding:"1px 4px",backgroundColor:"#e8b04020",color:"#e8b040",border:"1px solid #e8b04050",fontFamily:"monospace",letterSpacing:"0.05em"},children:"TEAM"})]}),(0,o.jsxs)("div",{style:{fontSize:10,color:"#7a6858",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",display:"flex",alignItems:"center",gap:4,marginTop:2},children:[e.role,e.backend&&(0,o.jsx)("span",{style:{fontSize:8,padding:"1px 4px",backgroundColor:(null!=(c=null==(t=ek.find(t=>t.id===e.backend))?void 0:t.color)?c:"#666")+"18",color:null!=(d=null==(n=ek.find(t=>t.id===e.backend))?void 0:n.color)?d:"#666",border:"1px solid ".concat(null!=(u=null==(l=ek.find(t=>t.id===e.backend))?void 0:l.color)?u:"#666","40")},children:null!=(g=null==(a=ek.find(t=>t.id===e.backend))?void 0:a.name)?g:e.backend})]})]}),(0,o.jsx)("span",{style:{fontSize:9,padding:"2px 5px",backgroundColor:(e.isTeamLead&&"done"===e.status?"#48cc6a":m.color)+"18",color:e.isTeamLead&&"done"===e.status?"#48cc6a":m.color,border:"1px solid ".concat(e.isTeamLead&&"done"===e.status?"#48cc6a":m.color,"40"),flexShrink:0,whiteSpace:"nowrap",fontFamily:"monospace"},children:e.isTeamLead&&"done"===e.status?"✓ Done":(0,o.jsxs)(o.Fragment,{children:["done"===e.status?"✓ ":"working"===e.status?"▶ ":"",m.label]})}),!(null==b?void 0:b.teamId)&&(0,o.jsx)("span",{onClick:t=>{t.stopPropagation(),eK(e.agentId)},style:{fontSize:10,color:"#5a4838",cursor:"pointer",lineHeight:1,padding:"4px",flexShrink:0},onMouseEnter:e=>{e.currentTarget.style.color="#e04848"},onMouseLeave:e=>{e.currentTarget.style.color="#5a4838"},children:"✕"})]}),y&&b&&(0,o.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,o.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"12px 14px",display:"flex",flexDirection:"column",minHeight:0},children:[0===b.messages.length&&(0,o.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:12},children:S?"This agent is managed by the Team Lead":"Send a message to get started"}),b.messages.map(e=>(0,o.jsx)(eb,{msg:e,onPreview:h,isTeamLead:null==b?void 0:b.isTeamLead,isTeamMember:S},e.id)),x&&!b.pendingApproval&&(0,o.jsx)(eu,{logLine:b.lastLogLine}),b.pendingApproval&&(0,o.jsxs)("div",{style:{marginBottom:8,padding:12,backgroundColor:"#261a00",border:"1px solid #e89030"},children:[(0,o.jsxs)("div",{style:{fontSize:11,fontWeight:"bold",color:"#e89030",marginBottom:6,fontFamily:"monospace"},children:["▲ ",b.pendingApproval.title]}),(0,o.jsx)("div",{style:{fontSize:12,color:"#b89868",marginBottom:10,lineHeight:1.5},children:b.pendingApproval.summary}),(0,o.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,o.jsx)("button",{onClick:()=>e1(b.pendingApproval.approvalId,"yes"),style:{flex:1,padding:"8px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",cursor:"pointer",fontWeight:"bold",fontSize:11,fontFamily:"monospace"},children:"▶ Approve"}),(0,o.jsx)("button",{onClick:()=>e1(b.pendingApproval.approvalId,"no"),style:{flex:1,padding:"8px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",cursor:"pointer",fontWeight:"bold",fontSize:11,fontFamily:"monospace"},children:"✕ Reject"})]})]}),(0,o.jsx)("div",{ref:F})]}),(0,o.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",flexShrink:0},children:S?(0,o.jsx)("div",{style:{textAlign:"center",color:"#5a4838",fontSize:11,padding:"8px 0",fontFamily:"monospace"},children:"Tasks are assigned by the Team Lead"}):eB?(0,o.jsx)("button",{onClick:async()=>{await k("Cancel current work?")&&e0()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",fontSize:12,cursor:"pointer",fontFamily:"monospace"},children:"✕ Cancel current work"}):(0,o.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,o.jsx)("input",{value:j,onChange:e=>O(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&e$(),placeholder:"Send a message...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:13,outline:"none"},autoFocus:!0}),(0,o.jsx)("button",{onClick:e$,disabled:!j.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:j.trim()?"#e8b040":"#272040",color:j.trim()?"#16122a":"#5a4838",fontSize:12,cursor:j.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace",transition:"background-color 0.1s"},children:"Send"})]})})]})]},e.agentId)})})]}),e4&&e2.length>0&&!e6&&"team"!==I&&(0,o.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:[(0,o.jsx)("button",{onClick:()=>C(!0),style:{width:44,height:44,flexShrink:0,border:"1px solid #e8b04060",backgroundColor:"rgba(200,155,48,0.12)",color:"#e8b040",fontSize:20,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center"},children:"+"}),(0,o.jsx)("button",{onClick:()=>W("team"),style:{width:44,height:44,flexShrink:0,border:"1px solid #e8903070",backgroundColor:"rgba(224,133,48,0.12)",color:"#e89030",fontSize:10,fontWeight:700,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",fontFamily:"monospace"},children:"Team"}),e2.map(e=>{var t,r;let n=null!=(t=ec[e.status])?t:ec.idle;return(0,o.jsxs)("button",{onClick:()=>{f(e.agentId),w(!0)},style:{position:"relative",flexShrink:0,width:44,height:44,border:p===e.agentId?"1px solid #e8b040":"1px solid #3d2e54",backgroundColor:"#1e1a30",cursor:"pointer",padding:0,display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:[(0,o.jsx)(ex,{palette:null!=(r=e.palette)?r:0,zoom:1,ready:ev}),(0,o.jsx)("span",{style:{position:"absolute",bottom:2,right:2,width:6,height:6,backgroundColor:n.color,border:"1px solid #1e1a30"}})]},e.agentId)})]}),e4&&e6&&(()=>{var e,t;let n=p?r.get(p):null;if(!n)return null;let l=null!=(e=ec[n.status])?e:ec.idle,a="working"===n.status||"waiting_approval"===n.status,i=!!n.teamId&&!n.isTeamLead;return(0,o.jsxs)("div",{style:{position:"absolute",inset:0,zIndex:30,backgroundColor:"#1a1530",display:"flex",flexDirection:"column"},children:[(0,o.jsxs)("div",{onClick:()=>w(!1),style:{padding:"12px 14px",borderBottom:"1px solid #2e2448",display:"flex",alignItems:"center",gap:10,flexShrink:0,backgroundColor:"#1e1a30",cursor:"pointer"},children:[(0,o.jsx)("span",{style:{fontSize:14,color:"#7a6858",marginRight:4},children:"←"}),(0,o.jsx)(ex,{palette:null!=(t=n.palette)?t:0,zoom:2,ready:ev}),(0,o.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,o.jsxs)("div",{style:{fontSize:12,fontWeight:700,color:"#eddcb8",display:"flex",alignItems:"center",gap:4},children:[n.name,n.isTeamLead&&(0,o.jsx)("span",{style:{fontSize:8,padding:"1px 4px",backgroundColor:"#e8903028",color:"#e89030",border:"1px solid #e8903060",fontFamily:"monospace"},children:"LEAD"}),i&&(0,o.jsx)("span",{style:{fontSize:8,padding:"1px 4px",backgroundColor:"#e8b04020",color:"#e8b040",border:"1px solid #e8b04050",fontFamily:"monospace"},children:"TEAM"})]}),(0,o.jsx)("div",{style:{fontSize:10,color:"#7a6858"},children:n.role})]}),(0,o.jsx)("span",{style:{fontSize:9,padding:"2px 6px",backgroundColor:l.color+"18",color:l.color,border:"1px solid ".concat(l.color,"40"),flexShrink:0,fontFamily:"monospace"},children:l.label})]}),(0,o.jsxs)("div",{style:{flex:1,overflowY:"auto",padding:"12px 14px",display:"flex",flexDirection:"column"},children:[0===n.messages.length&&(0,o.jsx)("div",{style:{textAlign:"center",color:"#5a4838",padding:20,fontSize:12,fontFamily:"monospace"},children:i?"This agent is managed by the Team Lead":"Send a message to get started"}),n.messages.map(e=>(0,o.jsx)(eb,{msg:e,onPreview:h,isTeamLead:n.isTeamLead,isTeamMember:i},e.id)),a&&!n.pendingApproval&&(0,o.jsx)(eu,{logLine:n.lastLogLine}),n.pendingApproval&&(0,o.jsxs)("div",{style:{marginBottom:8,padding:12,backgroundColor:"#261a00",border:"1px solid #e89030"},children:[(0,o.jsxs)("div",{style:{fontSize:11,fontWeight:"bold",color:"#e89030",marginBottom:6,fontFamily:"monospace"},children:["▲ ",n.pendingApproval.title]}),(0,o.jsx)("div",{style:{fontSize:12,color:"#b89868",marginBottom:10,lineHeight:1.5},children:n.pendingApproval.summary}),(0,o.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,o.jsx)("button",{onClick:()=>e1(n.pendingApproval.approvalId,"yes"),style:{flex:1,padding:"8px",border:"1px solid #48cc6a",backgroundColor:"#143a14",color:"#48cc6a",cursor:"pointer",fontWeight:"bold",fontSize:11,fontFamily:"monospace"},children:"▶ Approve"}),(0,o.jsx)("button",{onClick:()=>e1(n.pendingApproval.approvalId,"no"),style:{flex:1,padding:"8px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",cursor:"pointer",fontWeight:"bold",fontSize:11,fontFamily:"monospace"},children:"✕ Reject"})]})]}),(0,o.jsx)("div",{ref:F})]}),(0,o.jsx)("div",{style:{padding:"8px 10px",borderTop:"1px solid #2e2448",backgroundColor:"#1a1530",flexShrink:0},children:i?(0,o.jsx)("div",{style:{textAlign:"center",color:"#5a4838",fontSize:11,padding:"8px 0",fontFamily:"monospace"},children:"Tasks are assigned by the Team Lead"}):a?(0,o.jsx)("button",{onClick:async()=>{await k("Cancel current work?")&&e0()},style:{width:"100%",padding:"9px 16px",border:"1px solid #e04848",backgroundColor:"#3e1818",color:"#e04848",fontSize:12,cursor:"pointer",fontFamily:"monospace"},children:"✕ Cancel current work"}):(0,o.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,o.jsx)("input",{value:j,onChange:e=>O(e.target.value),onKeyDown:e=>"Enter"===e.key&&!e.nativeEvent.isComposing&&e$(),placeholder:"Send a message...",style:{flex:1,padding:"9px 12px",border:"1px solid #3d2e54",backgroundColor:"#16122a",color:"#eddcb8",fontSize:13,outline:"none"},autoFocus:!0}),(0,o.jsx)("button",{onClick:e$,disabled:!j.trim(),style:{padding:"9px 14px",border:"none",backgroundColor:j.trim()?"#e8b040":"#272040",color:j.trim()?"#16122a":"#5a4838",fontSize:12,cursor:j.trim()?"pointer":"default",fontWeight:700,fontFamily:"monospace"},children:"Send"})]})})]})})(),e4&&"team"===I&&(0,o.jsxs)("div",{style:{position:"absolute",inset:0,zIndex:30,backgroundColor:"#1a1530",display:"flex",flexDirection:"column"},children:[(0,o.jsxs)("div",{onClick:()=>W("agents"),style:{padding:"12px 14px",borderBottom:"1px solid #2e2448",display:"flex",alignItems:"center",gap:10,flexShrink:0,backgroundColor:"#1e1a30",cursor:"pointer"},children:[(0,o.jsx)("span",{style:{fontSize:14,color:"#7a6858",marginRight:4},children:"←"}),(0,o.jsx)("div",{style:{fontSize:12,fontWeight:700,color:"#eddcb8"},children:"Team Chat"}),(0,o.jsxs)("span",{style:{fontSize:10,color:"#7a6858",fontFamily:"monospace"},children:[d.length," messages"]})]}),(0,o.jsx)(eC,{messages:d,agents:r,assetsReady:ev})]}),T&&(0,o.jsx)(eS,{onHire:eV,onClose:()=>C(!1),assetsReady:ev}),A&&(0,o.jsx)(eA,{onCreateTeam:eG,onClose:()=>v(!1),assetsReady:ev}),em.current&&(0,o.jsx)(ei,{isOpen:L,onClose:()=>H(!1),layout:em.current.layout,onImportLayout:eY,soundEnabled:J,onSoundEnabledChange:Z}),g&&(0,o.jsx)(ep,{url:g,onClose:()=>h(null)}),b&&(0,o.jsx)(ef,{}),m&&(0,o.jsx)(eg,{previewUrl:m.previewUrl,previewPath:m.previewPath,onPreview:e=>{h(e),y(null),x(!1)},onDismiss:()=>{y(null),x(!1)}}),S]})}},9631:(e,t,r)=>{"use strict";r.d(t,{AI:()=>g,CW:()=>m,Co:()=>f,Kf:()=>x,MB:()=>p,Pg:()=>h,_m:()=>k,hF:()=>b,kr:()=>y});var o=r(5195),n=r(9892),l=r(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},u={h:270,s:15,b:20,c:0};function p(e){let t=[];for(let r=0;r<e.rows;r++){let o=[];for(let t=0;t<e.cols;t++)o.push(e.tiles[r*e.cols+t]);t.push(o)}return t}function f(e){let t=new Map;for(let r of e){let e=(0,n.Um)(r.type);if(!e||!e.isDesk)continue;let l=r.row*o.dn+e.sprite.length;for(let o=0;o<e.footprintH;o++)for(let n=0;n<e.footprintW;n++){let e="".concat(r.col+n,",").concat(r.row+o),a=t.get(e);(void 0===a||l>a)&&t.set(e,l)}}let r=[];for(let a of e){let e=(0,n.Um)(a.type);if(!e)continue;let i=a.col*o.dn,s=a.row*o.dn,c=s+e.sprite.length;if("chairs"===e.category&&(c="back"===e.orientation?(a.row+1)*o.dn+1:(a.row+1)*o.dn),e.canPlaceOnSurfaces)for(let r=0;r<e.footprintH;r++)for(let o=0;o<e.footprintW;o++){let e=t.get("".concat(a.col+o,",").concat(a.row+r));void 0!==e&&e+.5>c&&(c=e+.5)}let d=e.sprite;if(a.color){let{h:t,s:r,b:o,c:n}=a.color;d=(0,l.LN)("furn-".concat(a.type,"-").concat(t,"-").concat(r,"-").concat(o,"-").concat(n,"-").concat(+!!a.color.colorize),e.sprite,a.color)}r.push({sprite:d,x:i,y:s,zY:c})}return r}function g(e,t){let r=new Set;for(let o of e){let e=(0,n.Um)(o.type);if(!e)continue;let l=e.backgroundTiles||0;for(let n=0;n<e.footprintH;n++)if(!(n<l))for(let l=0;l<e.footprintW;l++){let e="".concat(o.col+l,",").concat(o.row+n);t&&t.has(e)||r.add(e)}}return r}function h(e,t){return g(t?e.filter(e=>e.uid!==t):e)}function m(e){let t=new Map,r=new Set;for(let t of e){let e=(0,n.Um)(t.type);if(e&&e.isDesk)for(let o=0;o<e.footprintH;o++)for(let n=0;n<e.footprintW;n++)r.add("".concat(t.col+n,",").concat(t.row+o))}let l=[{dc:0,dr:-1,facing:o.OP.UP},{dc:0,dr:1,facing:o.OP.DOWN},{dc:-1,dr:0,facing:o.OP.LEFT},{dc:1,dr:0,facing:o.OP.RIGHT}];for(let a of e){let e=(0,n.Um)(a.type);if(!e||"chairs"!==e.category)continue;let i=0;for(let n=0;n<e.footprintH;n++)for(let s=0;s<e.footprintW;s++){let c=a.col+s,d=a.row+n,u=o.OP.DOWN;if(e.orientation)u=function(e){switch(e){case"front":default:return o.OP.DOWN;case"back":return o.OP.UP;case"left":return o.OP.LEFT;case"right":return o.OP.RIGHT}}(e.orientation);else for(let e of l)if(r.has("".concat(c+e.dc,",").concat(d+e.dr))){u=e.facing;break}let p=0===i?a.uid:"".concat(a.uid,":").concat(i);t.set(p,{uid:p,seatCol:c,seatRow:d,facingDir:u,assigned:!1}),i++}}return t}function y(){let e=o.wh,t=o.YK,r=o.nb.WALL,n=o.nb.FLOOR_1;o.nb.VOID;let l=[],a=[],i={h:195,s:10,b:18,c:0};for(let o=0;o<t;o++)for(let s=0;s<e;s++){let c=0===o||o===t-1||0===s||s===e-1?r:n;l.push(c),a.push(c===n?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:o.JM.DESK,col:t,row:e}),s.push({uid:"ch-".concat(c),type:o.JM.CHAIR,col:t,row:e+2});return s.push({uid:"plant-1",type:o.JM.PLANT,col:1,row:1}),s.push({uid:"plant-2",type:o.JM.PLANT,col:19,row:1}),s.push({uid:"plant-3",type:o.JM.PLANT,col:1,row:19}),s.push({uid:"plant-4",type:o.JM.PLANT,col:19,row:19}),s.push({uid:"shelf-1",type:o.JM.BOOKSHELF,col:1,row:9}),s.push({uid:"shelf-2",type:o.JM.BOOKSHELF,col:19,row:9}),s.push({uid:"cooler-1",type:o.JM.COOLER,col:10,row:19}),s.push({uid:"wb-1",type:o.JM.WHITEBOARD,col:9,row:1}),{version:1,cols:e,rows:t,tiles:l,tileColors:a,furniture:s}}function b(e){return JSON.stringify(e)}function x(e){try{let t=JSON.parse(e);if(t&&1===t.version&&Array.isArray(t.tiles)&&Array.isArray(t.furniture))return S(t)}catch(e){}return null}function k(e){return S(e)}function S(e){if(e.tileColors&&e.tileColors.length===e.tiles.length)return e;let t=[];for(let r of e.tiles)switch(r){case 0:t.push(null);break;case 1:t.push(a);break;case 2:t.push(i);break;case 3:t.push(s);break;case 4:t.push(c);break;case 5:t.push(d);break;case 6:t.push(u);break;default:t.push(r>0?{h:0,s:0,b:0,c:0}:null)}return{...e,tileColors:t}}},9892:(e,t,r)=>{"use strict";r.d(t,{UV:()=>h,Um:()=>f,ZZ:()=>m,Ze:()=>b,Zl:()=>y,ar:()=>p,xr:()=>g});var o=r(5195),n=r(2988),l=r(4296);let a=[{type:o.JM.DESK,label:"Desk",footprintW:2,footprintH:2,sprite:n.US,isDesk:!0,category:"desks"},{type:o.JM.BOOKSHELF,label:"Bookshelf",footprintW:1,footprintH:2,sprite:n.iK,isDesk:!1,category:"storage"},{type:o.JM.PLANT,label:"Plant",footprintW:1,footprintH:1,sprite:n.WN,isDesk:!1,category:"decor"},{type:o.JM.COOLER,label:"Cooler",footprintW:1,footprintH:1,sprite:n.L$,isDesk:!1,category:"misc"},{type:o.JM.WHITEBOARD,label:"Whiteboard",footprintW:2,footprintH:1,sprite:n.SJ,isDesk:!1,category:"decor"},{type:o.JM.CHAIR,label:"Chair",footprintW:1,footprintH:1,sprite:n.mr,isDesk:!1,category:"chairs"},{type:o.JM.PC,label:"PC",footprintW:1,footprintH:1,sprite:n.mY,isDesk:!1,category:"electronics"},{type:o.JM.LAMP,label:"Lamp",footprintW:1,footprintH:1,sprite:n.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,u=new Map;function p(e){for(let o of l.Q){var t,r;let n=e.get(o.id);if(!n)continue;let l=a.findIndex(e=>e.type===o.id),i=(t=o,r=n,{type:t.id,label:t.label,footprintW:t.footprintW,footprintH:t.footprintH,sprite:r,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 o=new Map;for(let e of l.Q)if(e.groupId&&e.orientation){if(e.state&&"off"!==e.state)continue;let t=o.get(e.groupId);t||(t=new Map,o.set(e.groupId,t)),t.set(e.orientation,e.id)}let n=["front","right","back","left"];for(let e of o.values()){if(e.size<2)continue;let t=n.filter(t=>e.has(t));if(t.length<2)continue;let r={};for(let o of t)r[o]=e.get(o);let o={orientations:t,members:r};for(let e of Object.values(r))s.set(e,o)}let i=new Map;for(let e of l.Q)if(e.groupId&&e.state){let t="".concat(e.groupId,"|").concat(e.orientation||""),r=i.get(t);r||(r=new Map,i.set(t,r)),r.set(e.state,e.id)}for(let e of i.values()){let t=e.get("on"),r=e.get("off");t&&r&&(c.set(t,r),c.set(r,t),d.set(r,t),u.set(t,r))}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 r of e.orientations){let o=e.members[r],n=c.get(o);t[r]=null!=n?n:o}let r={orientations:e.orientations,members:t};for(let e of Object.values(t))s.has(e)||s.set(e,r)}}}}function f(e){return a.find(t=>t.type===e)}function g(e){var t;return null!=(t=d.get(e))?t:e}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"cw",r=s.get(e);if(!r)return null;let o=r.orientations.map(e=>r.members[e]),n=o.indexOf(e);if(-1===n)return null;let l=(n+("cw"===t?1:-1)+o.length)%o.length;return o[l]}function m(e){return s.has(e)}function y(e){return a.filter(t=>t.category===e)}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()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{140:(e,t,n)=>{"use strict";function r(e){let{reason:t,children:n}=e;return n}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return r}}),n(7568)},458:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorage",{enumerable:!0,get:function(){return r.workAsyncStorageInstance}});let r=n(4161)},607:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return l}});let r=n(8531)._(n(2663));function l(e,t){var n;let l={};"function"==typeof e&&(l.loader=e);let
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{140:(e,t,n)=>{"use strict";function r(e){let{reason:t,children:n}=e;return n}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return r}}),n(7568)},458:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorage",{enumerable:!0,get:function(){return r.workAsyncStorageInstance}});let r=n(4161)},607:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return l}});let r=n(8531)._(n(2663));function l(e,t){var n;let l={};"function"==typeof e&&(l.loader=e);let o={...l,...t};return(0,r.default)({...o,modules:null==(n=o.loadableGenerated)?void 0:n.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},2663:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i}});let r=n(206),l=n(1406),o=n(140);function u(e){return{default:e&&"default"in e?e.default:e}}n(9825);let a={loader:()=>Promise.resolve(u(()=>null)),loading:null,ssr:!0},i=function(e){let t={...a,...e},n=(0,l.lazy)(()=>t.loader().then(u)),i=t.loading;function c(e){let u=i?(0,r.jsx)(i,{isLoading:!0,pastDelay:!0,error:null}):null,a=!t.ssr||!!t.loading,c=a?l.Suspense:l.Fragment,s=t.ssr?(0,r.jsxs)(r.Fragment,{children:[null,(0,r.jsx)(n,{...e})]}):(0,r.jsx)(o.BailoutToCSR,{reason:"next/dynamic",children:(0,r.jsx)(n,{...e})});return(0,r.jsx)(c,{...a?{fallback:u}:{},children:s})}return c.displayName="LoadableComponent",c}},4161:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return r}});let r=(0,n(4847).createAsyncLocalStorage)()},4717:(e,t,n)=>{"use strict";var r=n(4121);n.o(r,"useRouter")&&n.d(t,{useRouter:function(){return r.useRouter}})},4847:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(t,{bindSnapshot:function(){return u},createAsyncLocalStorage:function(){return o},createSnapshot:function(){return a}});let n=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class r{disable(){throw n}getStore(){}run(){throw n}exit(){throw n}enterWith(){throw n}static bind(e){return e}}let l="undefined"!=typeof globalThis&&globalThis.AsyncLocalStorage;function o(){return l?new l:new r}function u(e){return l?l.bind(e):r.bind(e)}function a(){return l?l.snapshot():function(e,...t){return e(...t)}}},5149:(e,t,n)=>{"use strict";n.r(t),n.d(t,{clearConnection:()=>u,getConnection:()=>o,getGatewayHttpUrl:()=>a,saveConnection:()=>l});let r="office_connection";function l(e){localStorage.setItem(r,JSON.stringify(e))}function o(){let e=localStorage.getItem(r);if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function u(){localStorage.removeItem(r)}function a(){let e=o();return(null==e?void 0:e.wsUrl)?e.wsUrl.replace(/^ws(s?):\/\//,"http$1://"):window.location.origin}},5282:(e,t,n)=>{"use strict";n.d(t,{default:()=>l.a});var r=n(607),l=n.n(r)},7338:(e,t,n)=>{Promise.resolve().then(n.bind(n,8967))},8967:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(206),l=n(1406),o=n(4717);let u=(0,n(5282).default)(()=>n.e(880).then(n.bind(n,2880)),{loadableGenerated:{webpack:()=>[2880]},ssr:!1});function a(){let e=(0,o.useRouter)(),[t,a]=(0,l.useState)(!0);(0,l.useEffect)(()=>{try{let{getConnection:t}=n(5149);t()&&(a(!1),e.replace("/office"))}catch(e){}},[e]);let i=(0,l.useCallback)(()=>{a(!1),e.replace("/pair")},[e]);return t?(0,r.jsx)(u,{onComplete:i}):null}},9825:(e,t,n)=>{"use strict";function r(e){let{moduleIds:t}=e;return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return r}}),n(206),n(7995),n(458),n(1423)}},e=>{e.O(0,[235,388,358],()=>e(e.s=7338)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[863],{4717:(e,t,n)=>{"use strict";var o=n(4121);n.o(o,"useRouter")&&n.d(t,{useRouter:function(){return o.useRouter}})},5149:(e,t,n)=>{"use strict";n.r(t),n.d(t,{clearConnection:()=>a,getConnection:()=>r,getGatewayHttpUrl:()=>l,saveConnection:()=>i});let o="office_connection";function i(e){localStorage.setItem(o,JSON.stringify(e))}function r(){let e=localStorage.getItem(o);if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function a(){localStorage.removeItem(o)}function l(){let e=r();return(null==e?void 0:e.wsUrl)?e.wsUrl.replace(/^ws(s?):\/\//,"http$1://"):window.location.origin}},9600:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var o=n(206),i=n(1406),r=n(4717);function a(){let[e,t]=(0,i.useState)(""),[a,l]=(0,i.useState)(""),[c,s]=(0,i.useState)(""),[d,u]=(0,i.useState)(!1),[f,h]=(0,i.useState)(!1),p=(0,r.useRouter)();async function g(){if("3000"!==window.location.port&&"3002"!==window.location.port)try{let e=await fetch("".concat(window.location.origin,"/connect"),{signal:AbortSignal.timeout(1e3)});if(e.ok){let t=await e.json(),{saveConnection:o}=await Promise.resolve().then(n.bind(n,5149));o({mode:"ws",machineId:t.machineId,wsUrl:window.location.origin.replace(/^http/,"ws")}),p.push("/office");return}}catch(e){}for(let e=9090;e<9100;e++)try{let t="http://localhost:".concat(e),o=await fetch("".concat(t,"/connect"),{signal:AbortSignal.timeout(500)});if(!o.ok)continue;let i=await o.json(),{saveConnection:r}=await Promise.resolve().then(n.bind(n,5149));r({mode:"ws",machineId:i.machineId,wsUrl:"ws://localhost:".concat(e)}),p.push("/office");return}catch(e){}h(!0)}async function m(t){t.preventDefault(),s(""),u(!0);try{let t=e.includes("://")?e:"http://".concat(e),i=await fetch("".concat(t,"/pair/validate"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:a.trim()})}),r=await i.json();if(!i.ok){var o;s(null!=(o=r.error)?o:"Failed to pair");return}let{saveConnection:l}=await Promise.resolve().then(n.bind(n,5149));l({mode:r.hasAbly?"ably":"ws",machineId:r.machineId,wsUrl:r.wsUrl}),p.push("/office")}catch(e){s("Cannot reach gateway. Check the address.")}finally{u(!1)}}return(0,i.useEffect)(()=>{let{getConnection:e}=n(5149);if(e())return void p.push("/office");g()},[p]),(0,o.jsxs)("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"100vh",padding:24},children:[(0,o.jsx)("h1",{style:{fontSize:28,marginBottom:8},children:"Bit Office"}),!f&&(0,o.jsx)("p",{style:{color:"#666",fontSize:14},children:"Connecting..."}),f&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("p",{style:{color:"#aaa",marginBottom:32},children:"Enter your gateway address and pair code"}),(0,o.jsxs)("form",{onSubmit:m,style:{display:"flex",flexDirection:"column",gap:16,width:"100%",maxWidth:320},children:[(0,o.jsx)("label",{style:{fontSize:13,color:"#888"},children:"Gateway Address"}),(0,o.jsx)("input",{type:"text",value:e,onChange:e=>t(e.target.value),placeholder:"your-gateway.com",style:{fontSize:16,padding:"12px 16px",borderRadius:8,border:"2px solid #444",backgroundColor:"#222",color:"#fff",marginTop:-8}}),(0,o.jsx)("label",{style:{fontSize:13,color:"#888"},children:"Pair Code"}),(0,o.jsx)("input",{type:"text",value:a,onChange:e=>l(e.target.value.toUpperCase()),placeholder:"PAIR CODE",maxLength:6,style:{fontSize:32,textAlign:"center",letterSpacing:8,padding:"12px 16px",borderRadius:8,border:"2px solid #444",backgroundColor:"#222",color:"#fff",marginTop:-8}}),(0,o.jsx)("button",{type:"submit",disabled:d||a.length<6||!e.trim(),style:{padding:"12px 24px",borderRadius:8,border:"none",backgroundColor:a.length>=6&&e.trim()?"#4f46e5":"#333",color:"#fff",fontSize:18,cursor:a.length>=6?"pointer":"default"},children:d?"Pairing...":"Connect"})]})]}),c&&(0,o.jsx)("p",{style:{color:"#ef4444",textAlign:"center",marginTop:16},children:c})]})}},9791:(e,t,n)=>{Promise.resolve().then(n.bind(n,9600))}},e=>{e.O(0,[235,388,358],()=>e(e.s=9791)),_N_E=e.O()}]);
|