@jlongo78/agent-spaces 0.7.2 → 0.7.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (605) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +8 -0
  3. package/.next/standalone/.next/build-manifest.json +2 -2
  4. package/.next/standalone/.next/routes-manifest.json +48 -0
  5. package/.next/standalone/.next/server/app/(desktop)/admin/analytics/page.js +1 -1
  6. package/.next/standalone/.next/server/app/(desktop)/admin/analytics/page.js.nft.json +1 -1
  7. package/.next/standalone/.next/server/app/(desktop)/admin/analytics/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(desktop)/admin/users/page.js +1 -1
  9. package/.next/standalone/.next/server/app/(desktop)/admin/users/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(desktop)/admin/users/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(desktop)/analytics/page.js +1 -1
  12. package/.next/standalone/.next/server/app/(desktop)/analytics/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/(desktop)/analytics/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(desktop)/cortex/page.js +1 -1
  15. package/.next/standalone/.next/server/app/(desktop)/cortex/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(desktop)/cortex/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(desktop)/network/page.js +1 -1
  18. package/.next/standalone/.next/server/app/(desktop)/network/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/(desktop)/network/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(desktop)/page.js +1 -1
  21. package/.next/standalone/.next/server/app/(desktop)/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/(desktop)/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(desktop)/projects/page.js +1 -1
  24. package/.next/standalone/.next/server/app/(desktop)/projects/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/(desktop)/projects/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page.js +1 -1
  27. package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(desktop)/sessions/page.js +1 -1
  30. package/.next/standalone/.next/server/app/(desktop)/sessions/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/(desktop)/sessions/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(desktop)/settings/page.js +1 -1
  33. package/.next/standalone/.next/server/app/(desktop)/settings/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/(desktop)/settings/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(desktop)/terminal/page.js +1 -1
  36. package/.next/standalone/.next/server/app/(desktop)/terminal/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(desktop)/terminal/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page.js +1 -1
  39. package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page.js +1 -1
  42. package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(desktop)/workspaces/page.js +1 -1
  45. package/.next/standalone/.next/server/app/(desktop)/workspaces/page.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/(desktop)/workspaces/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  48. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  49. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  50. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  51. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  52. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  53. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  54. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  56. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  57. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  58. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  59. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  60. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  61. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  62. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  63. package/.next/standalone/.next/server/app/admin/analytics.html +1 -1
  64. package/.next/standalone/.next/server/app/admin/analytics.rsc +17 -16
  65. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics/__PAGE__.segment.rsc +2 -2
  66. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics.segment.rsc +1 -1
  67. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
  68. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  69. package/.next/standalone/.next/server/app/admin/analytics.segments/_full.segment.rsc +17 -16
  70. package/.next/standalone/.next/server/app/admin/analytics.segments/_head.segment.rsc +1 -1
  71. package/.next/standalone/.next/server/app/admin/analytics.segments/_index.segment.rsc +2 -2
  72. package/.next/standalone/.next/server/app/admin/analytics.segments/_tree.segment.rsc +2 -2
  73. package/.next/standalone/.next/server/app/admin/users.html +1 -1
  74. package/.next/standalone/.next/server/app/admin/users.rsc +17 -16
  75. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users/__PAGE__.segment.rsc +2 -2
  76. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users.segment.rsc +1 -1
  77. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
  78. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  79. package/.next/standalone/.next/server/app/admin/users.segments/_full.segment.rsc +17 -16
  80. package/.next/standalone/.next/server/app/admin/users.segments/_head.segment.rsc +1 -1
  81. package/.next/standalone/.next/server/app/admin/users.segments/_index.segment.rsc +2 -2
  82. package/.next/standalone/.next/server/app/admin/users.segments/_tree.segment.rsc +2 -2
  83. package/.next/standalone/.next/server/app/analytics.html +1 -1
  84. package/.next/standalone/.next/server/app/analytics.rsc +17 -16
  85. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics/__PAGE__.segment.rsc +2 -2
  86. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics.segment.rsc +1 -1
  87. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  88. package/.next/standalone/.next/server/app/analytics.segments/_full.segment.rsc +17 -16
  89. package/.next/standalone/.next/server/app/analytics.segments/_head.segment.rsc +1 -1
  90. package/.next/standalone/.next/server/app/analytics.segments/_index.segment.rsc +2 -2
  91. package/.next/standalone/.next/server/app/analytics.segments/_tree.segment.rsc +2 -2
  92. package/.next/standalone/.next/server/app/api/admin/analytics/route.js +1 -1
  93. package/.next/standalone/.next/server/app/api/admin/analytics/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/admin/users/[id]/route.js +1 -1
  95. package/.next/standalone/.next/server/app/api/admin/users/[id]/route.js.nft.json +1 -1
  96. package/.next/standalone/.next/server/app/api/admin/users/route.js +1 -1
  97. package/.next/standalone/.next/server/app/api/admin/users/route.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/app/api/analytics/overview/route.js +3 -3
  99. package/.next/standalone/.next/server/app/api/analytics/overview/route.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/app/api/auth/login/route.js +1 -1
  101. package/.next/standalone/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  102. package/.next/standalone/.next/server/app/api/auth/logout/route.js +1 -1
  103. package/.next/standalone/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
  104. package/.next/standalone/.next/server/app/api/auth/me/route.js +1 -1
  105. package/.next/standalone/.next/server/app/api/auth/me/route.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/app/api/auth/totp/setup/route.js +1 -1
  107. package/.next/standalone/.next/server/app/api/auth/totp/setup/route.js.nft.json +1 -1
  108. package/.next/standalone/.next/server/app/api/auth/totp/status/route.js +1 -1
  109. package/.next/standalone/.next/server/app/api/auth/totp/status/route.js.nft.json +1 -1
  110. package/.next/standalone/.next/server/app/api/auth/totp/verify/route.js +1 -1
  111. package/.next/standalone/.next/server/app/api/auth/totp/verify/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/bulk/route.js +2 -2
  113. package/.next/standalone/.next/server/app/api/bulk/route.js.nft.json +1 -1
  114. package/.next/standalone/.next/server/app/api/chat/route.js +1 -1
  115. package/.next/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/api/config/route.js +1 -1
  117. package/.next/standalone/.next/server/app/api/config/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/cortex/context/route.js +1 -1
  119. package/.next/standalone/.next/server/app/api/cortex/context/route.js.nft.json +1 -1
  120. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route/app-paths-manifest.json +3 -0
  121. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route/build-manifest.json +11 -0
  122. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route/server-reference-manifest.json +4 -0
  123. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js +7 -0
  124. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js.map +5 -0
  125. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js.nft.json +1 -0
  126. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route_client-reference-manifest.js +2 -0
  127. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route/app-paths-manifest.json +3 -0
  128. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route/build-manifest.json +11 -0
  129. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route/server-reference-manifest.json +4 -0
  130. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js +7 -0
  131. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js.map +5 -0
  132. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js.nft.json +1 -0
  133. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route_client-reference-manifest.js +2 -0
  134. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route/app-paths-manifest.json +3 -0
  135. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route/build-manifest.json +11 -0
  136. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route/server-reference-manifest.json +4 -0
  137. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js +7 -0
  138. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js.map +5 -0
  139. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js.nft.json +1 -0
  140. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route_client-reference-manifest.js +2 -0
  141. package/.next/standalone/.next/server/app/api/cortex/curation/review/route/app-paths-manifest.json +3 -0
  142. package/.next/standalone/.next/server/app/api/cortex/curation/review/route/build-manifest.json +11 -0
  143. package/.next/standalone/.next/server/app/api/cortex/curation/review/route/server-reference-manifest.json +4 -0
  144. package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js +7 -0
  145. package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js.map +5 -0
  146. package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js.nft.json +1 -0
  147. package/.next/standalone/.next/server/app/api/cortex/curation/review/route_client-reference-manifest.js +2 -0
  148. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route/app-paths-manifest.json +3 -0
  149. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route/build-manifest.json +11 -0
  150. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route/server-reference-manifest.json +4 -0
  151. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js +7 -0
  152. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js.map +5 -0
  153. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js.nft.json +1 -0
  154. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route_client-reference-manifest.js +2 -0
  155. package/.next/standalone/.next/server/app/api/cortex/export/route.js +1 -1
  156. package/.next/standalone/.next/server/app/api/cortex/export/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js +1 -1
  158. package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js +1 -1
  160. package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/app/api/cortex/federation/search/route.js +1 -1
  162. package/.next/standalone/.next/server/app/api/cortex/federation/search/route.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/app/api/cortex/federation/teach/route.js +1 -1
  164. package/.next/standalone/.next/server/app/api/cortex/federation/teach/route.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js +1 -1
  166. package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js +1 -1
  168. package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js.nft.json +1 -1
  169. package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js +1 -1
  170. package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js.nft.json +1 -1
  171. package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js +1 -1
  172. package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/cortex/import/route.js +1 -1
  174. package/.next/standalone/.next/server/app/api/cortex/import/route.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/api/cortex/import/status/route.js +1 -1
  176. package/.next/standalone/.next/server/app/api/cortex/import/status/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js +1 -1
  178. package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js +1 -1
  180. package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js +1 -1
  182. package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js.nft.json +1 -1
  183. package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js +1 -1
  184. package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js +1 -1
  186. package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js.nft.json +1 -1
  187. package/.next/standalone/.next/server/app/api/cortex/lobes/route.js +1 -1
  188. package/.next/standalone/.next/server/app/api/cortex/lobes/route.js.nft.json +1 -1
  189. package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js +1 -1
  190. package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route/app-paths-manifest.json +3 -0
  192. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route/build-manifest.json +11 -0
  193. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route/server-reference-manifest.json +4 -0
  194. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js +7 -0
  195. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js.map +5 -0
  196. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js.nft.json +1 -0
  197. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route_client-reference-manifest.js +2 -0
  198. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route/app-paths-manifest.json +3 -0
  199. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route/build-manifest.json +11 -0
  200. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route/server-reference-manifest.json +4 -0
  201. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js +7 -0
  202. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js.map +5 -0
  203. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js.nft.json +1 -0
  204. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route_client-reference-manifest.js +2 -0
  205. package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js +1 -1
  206. package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js.nft.json +1 -1
  207. package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js +1 -1
  208. package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/app/api/cortex/search/route.js +1 -1
  210. package/.next/standalone/.next/server/app/api/cortex/search/route.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/app/api/cortex/settings/route.js +1 -1
  212. package/.next/standalone/.next/server/app/api/cortex/settings/route.js.nft.json +1 -1
  213. package/.next/standalone/.next/server/app/api/cortex/status/route.js +1 -1
  214. package/.next/standalone/.next/server/app/api/cortex/status/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/cortex/timeline/route.js +1 -1
  216. package/.next/standalone/.next/server/app/api/cortex/timeline/route.js.nft.json +1 -1
  217. package/.next/standalone/.next/server/app/api/cortex/usage/route.js +1 -1
  218. package/.next/standalone/.next/server/app/api/cortex/usage/route.js.nft.json +1 -1
  219. package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js +1 -1
  220. package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js.nft.json +1 -1
  221. package/.next/standalone/.next/server/app/api/events/route.js +1 -1
  222. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  223. package/.next/standalone/.next/server/app/api/files/route.js +1 -1
  224. package/.next/standalone/.next/server/app/api/files/route.js.nft.json +1 -1
  225. package/.next/standalone/.next/server/app/api/folders/route.js +1 -1
  226. package/.next/standalone/.next/server/app/api/folders/route.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/app/api/network/connect-callback/route.js +1 -1
  228. package/.next/standalone/.next/server/app/api/network/connect-callback/route.js.nft.json +1 -1
  229. package/.next/standalone/.next/server/app/api/network/connect-request/[id]/route.js +1 -1
  230. package/.next/standalone/.next/server/app/api/network/connect-request/[id]/route.js.nft.json +1 -1
  231. package/.next/standalone/.next/server/app/api/network/connect-request/route.js +1 -1
  232. package/.next/standalone/.next/server/app/api/network/connect-request/route.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/api/network/discovered/route.js +1 -1
  234. package/.next/standalone/.next/server/app/api/network/discovered/route.js.nft.json +1 -1
  235. package/.next/standalone/.next/server/app/api/network/handshake/route.js +1 -1
  236. package/.next/standalone/.next/server/app/api/network/handshake/route.js.nft.json +1 -1
  237. package/.next/standalone/.next/server/app/api/network/health/route.js +1 -1
  238. package/.next/standalone/.next/server/app/api/network/health/route.js.nft.json +1 -1
  239. package/.next/standalone/.next/server/app/api/network/identity/route.js +1 -1
  240. package/.next/standalone/.next/server/app/api/network/identity/route.js.nft.json +1 -1
  241. package/.next/standalone/.next/server/app/api/network/keys/[id]/route.js +1 -1
  242. package/.next/standalone/.next/server/app/api/network/keys/[id]/route.js.nft.json +1 -1
  243. package/.next/standalone/.next/server/app/api/network/keys/route.js +1 -1
  244. package/.next/standalone/.next/server/app/api/network/keys/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/network/nodes/[id]/route.js +1 -1
  246. package/.next/standalone/.next/server/app/api/network/nodes/[id]/route.js.nft.json +1 -1
  247. package/.next/standalone/.next/server/app/api/network/nodes/check/route.js +1 -1
  248. package/.next/standalone/.next/server/app/api/network/nodes/check/route.js.nft.json +1 -1
  249. package/.next/standalone/.next/server/app/api/network/nodes/route.js +1 -1
  250. package/.next/standalone/.next/server/app/api/network/nodes/route.js.nft.json +1 -1
  251. package/.next/standalone/.next/server/app/api/network/projects/route.js +1 -1
  252. package/.next/standalone/.next/server/app/api/network/projects/route.js.nft.json +1 -1
  253. package/.next/standalone/.next/server/app/api/network/proxy/[nodeId]/[...path]/route.js +1 -1
  254. package/.next/standalone/.next/server/app/api/network/proxy/[nodeId]/[...path]/route.js.nft.json +1 -1
  255. package/.next/standalone/.next/server/app/api/network/search/route.js +1 -1
  256. package/.next/standalone/.next/server/app/api/network/search/route.js.nft.json +1 -1
  257. package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js +1 -1
  258. package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js.nft.json +1 -1
  259. package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js +1 -1
  260. package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js.nft.json +1 -1
  261. package/.next/standalone/.next/server/app/api/network/sessions/route.js +1 -1
  262. package/.next/standalone/.next/server/app/api/network/sessions/route.js.nft.json +1 -1
  263. package/.next/standalone/.next/server/app/api/network/terminal/token/route.js +1 -1
  264. package/.next/standalone/.next/server/app/api/network/terminal/token/route.js.nft.json +1 -1
  265. package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js +1 -1
  266. package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js.nft.json +1 -1
  267. package/.next/standalone/.next/server/app/api/network/workspaces/route.js +1 -1
  268. package/.next/standalone/.next/server/app/api/network/workspaces/route.js.nft.json +1 -1
  269. package/.next/standalone/.next/server/app/api/panes/[id]/route.js +2 -2
  270. package/.next/standalone/.next/server/app/api/panes/[id]/route.js.nft.json +1 -1
  271. package/.next/standalone/.next/server/app/api/panes/route.js +2 -2
  272. package/.next/standalone/.next/server/app/api/panes/route.js.nft.json +1 -1
  273. package/.next/standalone/.next/server/app/api/projects/route.js +2 -2
  274. package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  275. package/.next/standalone/.next/server/app/api/search/route.js +2 -2
  276. package/.next/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  277. package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js +1 -1
  278. package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js.nft.json +1 -1
  279. package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js +2 -2
  280. package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js.nft.json +1 -1
  281. package/.next/standalone/.next/server/app/api/sessions/[id]/route.js +2 -2
  282. package/.next/standalone/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  283. package/.next/standalone/.next/server/app/api/sessions/route.js +2 -2
  284. package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
  285. package/.next/standalone/.next/server/app/api/sync/route.js +1 -1
  286. package/.next/standalone/.next/server/app/api/sync/route.js.nft.json +1 -1
  287. package/.next/standalone/.next/server/app/api/tags/route.js +2 -2
  288. package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -1
  289. package/.next/standalone/.next/server/app/api/tier/route.js +1 -1
  290. package/.next/standalone/.next/server/app/api/tier/route.js.nft.json +1 -1
  291. package/.next/standalone/.next/server/app/api/updates/route/app-paths-manifest.json +3 -0
  292. package/.next/standalone/.next/server/app/api/updates/route/build-manifest.json +11 -0
  293. package/.next/standalone/.next/server/app/api/updates/route/server-reference-manifest.json +4 -0
  294. package/.next/standalone/.next/server/app/api/updates/route.js +7 -0
  295. package/.next/standalone/.next/server/app/api/updates/route.js.map +5 -0
  296. package/.next/standalone/.next/server/app/api/updates/route.js.nft.json +1 -0
  297. package/.next/standalone/.next/server/app/api/updates/route_client-reference-manifest.js +2 -0
  298. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js +1 -1
  299. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js.nft.json +1 -1
  300. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js +1 -1
  301. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js.nft.json +1 -1
  302. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js +1 -1
  303. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js.nft.json +1 -1
  304. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js +1 -1
  305. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js.nft.json +1 -1
  306. package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js +2 -2
  307. package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js.nft.json +1 -1
  308. package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js +2 -2
  309. package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js.nft.json +1 -1
  310. package/.next/standalone/.next/server/app/api/workspaces/route.js +2 -2
  311. package/.next/standalone/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  312. package/.next/standalone/.next/server/app/cortex.html +1 -1
  313. package/.next/standalone/.next/server/app/cortex.rsc +17 -16
  314. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex/__PAGE__.segment.rsc +2 -2
  315. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex.segment.rsc +1 -1
  316. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  317. package/.next/standalone/.next/server/app/cortex.segments/_full.segment.rsc +17 -16
  318. package/.next/standalone/.next/server/app/cortex.segments/_head.segment.rsc +1 -1
  319. package/.next/standalone/.next/server/app/cortex.segments/_index.segment.rsc +2 -2
  320. package/.next/standalone/.next/server/app/cortex.segments/_tree.segment.rsc +2 -2
  321. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  322. package/.next/standalone/.next/server/app/login.html +1 -1
  323. package/.next/standalone/.next/server/app/login.rsc +2 -2
  324. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +2 -2
  325. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  326. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +2 -2
  327. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  328. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  329. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  330. package/.next/standalone/.next/server/app/m/page.js.nft.json +1 -1
  331. package/.next/standalone/.next/server/app/m/page_client-reference-manifest.js +1 -1
  332. package/.next/standalone/.next/server/app/m/projects/page.js.nft.json +1 -1
  333. package/.next/standalone/.next/server/app/m/projects/page_client-reference-manifest.js +1 -1
  334. package/.next/standalone/.next/server/app/m/projects.html +1 -1
  335. package/.next/standalone/.next/server/app/m/projects.rsc +4 -4
  336. package/.next/standalone/.next/server/app/m/projects.segments/_full.segment.rsc +4 -4
  337. package/.next/standalone/.next/server/app/m/projects.segments/_head.segment.rsc +1 -1
  338. package/.next/standalone/.next/server/app/m/projects.segments/_index.segment.rsc +2 -2
  339. package/.next/standalone/.next/server/app/m/projects.segments/_tree.segment.rsc +2 -2
  340. package/.next/standalone/.next/server/app/m/projects.segments/m/projects/__PAGE__.segment.rsc +2 -2
  341. package/.next/standalone/.next/server/app/m/projects.segments/m/projects.segment.rsc +1 -1
  342. package/.next/standalone/.next/server/app/m/projects.segments/m.segment.rsc +2 -2
  343. package/.next/standalone/.next/server/app/m/sessions/[id]/page.js.nft.json +1 -1
  344. package/.next/standalone/.next/server/app/m/sessions/[id]/page_client-reference-manifest.js +1 -1
  345. package/.next/standalone/.next/server/app/m/sessions/page.js.nft.json +1 -1
  346. package/.next/standalone/.next/server/app/m/sessions/page_client-reference-manifest.js +1 -1
  347. package/.next/standalone/.next/server/app/m/sessions.html +1 -1
  348. package/.next/standalone/.next/server/app/m/sessions.rsc +4 -4
  349. package/.next/standalone/.next/server/app/m/sessions.segments/_full.segment.rsc +4 -4
  350. package/.next/standalone/.next/server/app/m/sessions.segments/_head.segment.rsc +1 -1
  351. package/.next/standalone/.next/server/app/m/sessions.segments/_index.segment.rsc +2 -2
  352. package/.next/standalone/.next/server/app/m/sessions.segments/_tree.segment.rsc +2 -2
  353. package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions/__PAGE__.segment.rsc +2 -2
  354. package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions.segment.rsc +1 -1
  355. package/.next/standalone/.next/server/app/m/sessions.segments/m.segment.rsc +2 -2
  356. package/.next/standalone/.next/server/app/m/settings/page.js.nft.json +1 -1
  357. package/.next/standalone/.next/server/app/m/settings/page_client-reference-manifest.js +1 -1
  358. package/.next/standalone/.next/server/app/m/settings.html +1 -1
  359. package/.next/standalone/.next/server/app/m/settings.rsc +4 -4
  360. package/.next/standalone/.next/server/app/m/settings.segments/_full.segment.rsc +4 -4
  361. package/.next/standalone/.next/server/app/m/settings.segments/_head.segment.rsc +1 -1
  362. package/.next/standalone/.next/server/app/m/settings.segments/_index.segment.rsc +2 -2
  363. package/.next/standalone/.next/server/app/m/settings.segments/_tree.segment.rsc +2 -2
  364. package/.next/standalone/.next/server/app/m/settings.segments/m/settings/__PAGE__.segment.rsc +2 -2
  365. package/.next/standalone/.next/server/app/m/settings.segments/m/settings.segment.rsc +1 -1
  366. package/.next/standalone/.next/server/app/m/settings.segments/m.segment.rsc +2 -2
  367. package/.next/standalone/.next/server/app/m/terminal/page.js.nft.json +1 -1
  368. package/.next/standalone/.next/server/app/m/terminal/page_client-reference-manifest.js +1 -1
  369. package/.next/standalone/.next/server/app/m/terminal.html +1 -1
  370. package/.next/standalone/.next/server/app/m/terminal.rsc +4 -4
  371. package/.next/standalone/.next/server/app/m/terminal.segments/_full.segment.rsc +4 -4
  372. package/.next/standalone/.next/server/app/m/terminal.segments/_head.segment.rsc +1 -1
  373. package/.next/standalone/.next/server/app/m/terminal.segments/_index.segment.rsc +2 -2
  374. package/.next/standalone/.next/server/app/m/terminal.segments/_tree.segment.rsc +2 -2
  375. package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal/__PAGE__.segment.rsc +2 -2
  376. package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal.segment.rsc +1 -1
  377. package/.next/standalone/.next/server/app/m/terminal.segments/m.segment.rsc +2 -2
  378. package/.next/standalone/.next/server/app/m.html +1 -1
  379. package/.next/standalone/.next/server/app/m.rsc +4 -4
  380. package/.next/standalone/.next/server/app/m.segments/_full.segment.rsc +4 -4
  381. package/.next/standalone/.next/server/app/m.segments/_head.segment.rsc +1 -1
  382. package/.next/standalone/.next/server/app/m.segments/_index.segment.rsc +2 -2
  383. package/.next/standalone/.next/server/app/m.segments/_tree.segment.rsc +2 -2
  384. package/.next/standalone/.next/server/app/m.segments/m/__PAGE__.segment.rsc +2 -2
  385. package/.next/standalone/.next/server/app/m.segments/m.segment.rsc +2 -2
  386. package/.next/standalone/.next/server/app/network.html +1 -1
  387. package/.next/standalone/.next/server/app/network.rsc +17 -16
  388. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network/__PAGE__.segment.rsc +2 -2
  389. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network.segment.rsc +1 -1
  390. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  391. package/.next/standalone/.next/server/app/network.segments/_full.segment.rsc +17 -16
  392. package/.next/standalone/.next/server/app/network.segments/_head.segment.rsc +1 -1
  393. package/.next/standalone/.next/server/app/network.segments/_index.segment.rsc +2 -2
  394. package/.next/standalone/.next/server/app/network.segments/_tree.segment.rsc +2 -2
  395. package/.next/standalone/.next/server/app/projects.html +1 -1
  396. package/.next/standalone/.next/server/app/projects.rsc +17 -16
  397. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects/__PAGE__.segment.rsc +2 -2
  398. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects.segment.rsc +1 -1
  399. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  400. package/.next/standalone/.next/server/app/projects.segments/_full.segment.rsc +17 -16
  401. package/.next/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  402. package/.next/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  403. package/.next/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  404. package/.next/standalone/.next/server/app/sessions.html +1 -1
  405. package/.next/standalone/.next/server/app/sessions.rsc +17 -16
  406. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions/__PAGE__.segment.rsc +2 -2
  407. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions.segment.rsc +1 -1
  408. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  409. package/.next/standalone/.next/server/app/sessions.segments/_full.segment.rsc +17 -16
  410. package/.next/standalone/.next/server/app/sessions.segments/_head.segment.rsc +1 -1
  411. package/.next/standalone/.next/server/app/sessions.segments/_index.segment.rsc +2 -2
  412. package/.next/standalone/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
  413. package/.next/standalone/.next/server/app/settings.html +1 -1
  414. package/.next/standalone/.next/server/app/settings.rsc +17 -16
  415. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings/__PAGE__.segment.rsc +2 -2
  416. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings.segment.rsc +1 -1
  417. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  418. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +17 -16
  419. package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  420. package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  421. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  422. package/.next/standalone/.next/server/app/terminal.html +1 -1
  423. package/.next/standalone/.next/server/app/terminal.rsc +17 -16
  424. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal/__PAGE__.segment.rsc +2 -2
  425. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal.segment.rsc +1 -1
  426. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  427. package/.next/standalone/.next/server/app/terminal.segments/_full.segment.rsc +17 -16
  428. package/.next/standalone/.next/server/app/terminal.segments/_head.segment.rsc +1 -1
  429. package/.next/standalone/.next/server/app/terminal.segments/_index.segment.rsc +2 -2
  430. package/.next/standalone/.next/server/app/terminal.segments/_tree.segment.rsc +2 -2
  431. package/.next/standalone/.next/server/app/workspaces.html +1 -1
  432. package/.next/standalone/.next/server/app/workspaces.rsc +17 -16
  433. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces/__PAGE__.segment.rsc +2 -2
  434. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces.segment.rsc +1 -1
  435. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap.segment.rsc +5 -4
  436. package/.next/standalone/.next/server/app/workspaces.segments/_full.segment.rsc +17 -16
  437. package/.next/standalone/.next/server/app/workspaces.segments/_head.segment.rsc +1 -1
  438. package/.next/standalone/.next/server/app/workspaces.segments/_index.segment.rsc +2 -2
  439. package/.next/standalone/.next/server/app/workspaces.segments/_tree.segment.rsc +2 -2
  440. package/.next/standalone/.next/server/app-paths-manifest.json +8 -0
  441. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0041efe4._.js +98 -0
  442. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__4d5f802e._.js → [root-of-the-server]__00bf0ace._.js} +2 -2
  443. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0fac388d._.js → [root-of-the-server]__08a68343._.js} +2 -2
  444. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0955695e._.js → [root-of-the-server]__0add852f._.js} +2 -2
  445. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__2a7a798c._.js → [root-of-the-server]__0c113ed0._.js} +2 -2
  446. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__776b2fd5._.js → [root-of-the-server]__0e1a27e0._.js} +2 -2
  447. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__805ab6d4._.js → [root-of-the-server]__0e71d908._.js} +2 -2
  448. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__fcfb3d9b._.js → [root-of-the-server]__0e9142f3._.js} +2 -2
  449. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0b622fbb._.js → [root-of-the-server]__10e47926._.js} +2 -2
  450. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__6b94cc47._.js → [root-of-the-server]__1194f2c1._.js} +2 -2
  451. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__65015776._.js → [root-of-the-server]__1665dc78._.js} +2 -2
  452. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__a1c90b00._.js → [root-of-the-server]__175cbabf._.js} +2 -2
  453. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__6c6cfe82._.js → [root-of-the-server]__19c2d094._.js} +2 -2
  454. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__efefd88d._.js → [root-of-the-server]__1adae357._.js} +2 -2
  455. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1d359752._.js +98 -0
  456. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__d2bbb75a._.js → [root-of-the-server]__1e8fabeb._.js} +2 -2
  457. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__c13f151f._.js → [root-of-the-server]__1f8deca0._.js} +2 -2
  458. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__3331633d._.js → [root-of-the-server]__253fdda1._.js} +2 -2
  459. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__d0439252._.js → [root-of-the-server]__28e6434f._.js} +2 -2
  460. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__3ba575ca._.js → [root-of-the-server]__2a386564._.js} +13 -13
  461. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__7901e2ab._.js → [root-of-the-server]__2acbd703._.js} +2 -2
  462. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__466c7e18._.js → [root-of-the-server]__2acefabb._.js} +2 -2
  463. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__8cddfa2d._.js → [root-of-the-server]__2c20fb38._.js} +2 -2
  464. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__4837b8c0._.js → [root-of-the-server]__309132cd._.js} +2 -2
  465. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__6d211342._.js → [root-of-the-server]__3786d8ae._.js} +2 -2
  466. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__f3e94a15._.js → [root-of-the-server]__3ae92407._.js} +2 -2
  467. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__7799fe3c._.js → [root-of-the-server]__3beda9fe._.js} +2 -2
  468. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__25d1fc87._.js → [root-of-the-server]__3e3f25a1._.js} +2 -2
  469. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0c59850c._.js → [root-of-the-server]__4619e9bd._.js} +2 -2
  470. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__3beca461._.js → [root-of-the-server]__4a051043._.js} +2 -2
  471. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__bc97ddc7._.js → [root-of-the-server]__50208a5f._.js} +2 -2
  472. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__7b4dd49b._.js → [root-of-the-server]__508002e4._.js} +2 -2
  473. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__57b959fd._.js → [root-of-the-server]__5086c373._.js} +2 -2
  474. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__ce1f6530._.js → [root-of-the-server]__5913e097._.js} +2 -2
  475. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__a4823fef._.js → [root-of-the-server]__5b5f68d2._.js} +2 -2
  476. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__b9761ef0._.js → [root-of-the-server]__5c1f2459._.js} +3 -3
  477. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__aeb7413c._.js → [root-of-the-server]__5ec8c977._.js} +2 -2
  478. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__df6bc9e9._.js → [root-of-the-server]__5f8c694a._.js} +2 -2
  479. package/.next/standalone/.next/server/chunks/[root-of-the-server]__63cebc6c._.js +98 -0
  480. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__e85d0854._.js → [root-of-the-server]__64d30d4d._.js} +2 -2
  481. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__ce0bdfd8._.js → [root-of-the-server]__6c54fc2e._.js} +2 -2
  482. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__bc0ee8ae._.js → [root-of-the-server]__6dc1fb7e._.js} +2 -2
  483. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__91eb478b._.js → [root-of-the-server]__6e568102._.js} +2 -2
  484. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__c476045d._.js → [root-of-the-server]__6faa04c0._.js} +2 -2
  485. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__3aa57139._.js → [root-of-the-server]__727d05f1._.js} +2 -2
  486. package/.next/standalone/.next/server/chunks/[root-of-the-server]__74a34dc3._.js +98 -0
  487. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__8ca5cdb4._.js → [root-of-the-server]__75d12b32._.js} +2 -2
  488. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__05885ab1._.js → [root-of-the-server]__7e7250a4._.js} +2 -2
  489. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__9952246f._.js → [root-of-the-server]__8309e0a4._.js} +2 -2
  490. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__5e1e3386._.js → [root-of-the-server]__86cc0e2b._.js} +2 -2
  491. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__1a211143._.js → [root-of-the-server]__8915603e._.js} +2 -2
  492. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__db7825cc._.js → [root-of-the-server]__89c2565a._.js} +2 -2
  493. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__b000379d._.js → [root-of-the-server]__8d178ad9._.js} +2 -2
  494. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__3ae85e7a._.js → [root-of-the-server]__93ee06f3._.js} +2 -2
  495. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__6a2926b6._.js → [root-of-the-server]__9e4c154a._.js} +2 -2
  496. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__31f028ec._.js → [root-of-the-server]__a1fbc199._.js} +2 -2
  497. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__aa7644c6._.js → [root-of-the-server]__a9d2e1d3._.js} +2 -2
  498. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__b60a5497._.js → [root-of-the-server]__ae53d343._.js} +2 -2
  499. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__f5f82d4b._.js → [root-of-the-server]__b3a04cef._.js} +2 -2
  500. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b4270b77._.js +3 -0
  501. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__dd9f454c._.js → [root-of-the-server]__b6b6ce60._.js} +2 -2
  502. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b9545dd9._.js +3 -0
  503. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__41ae8be6._.js → [root-of-the-server]__c200e21a._.js} +2 -2
  504. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__190b05d8._.js → [root-of-the-server]__c3c74ca4._.js} +2 -2
  505. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c88b63f7._.js +98 -0
  506. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__6c674ff1._.js → [root-of-the-server]__cbf4ceb0._.js} +2 -2
  507. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__8d28317b._.js → [root-of-the-server]__cefdba2f._.js} +2 -2
  508. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0dd51116._.js → [root-of-the-server]__cf3c60c2._.js} +2 -2
  509. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__dae7832b._.js → [root-of-the-server]__cf9e82bb._.js} +2 -2
  510. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__de96c005._.js → [root-of-the-server]__d15515e3._.js} +2 -2
  511. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__2367f5a6._.js → [root-of-the-server]__d2897392._.js} +2 -2
  512. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__7b4e92a1._.js → [root-of-the-server]__d3b2d856._.js} +2 -2
  513. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__81ece563._.js → [root-of-the-server]__d73273ca._.js} +2 -2
  514. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__a5b5007a._.js → [root-of-the-server]__d8417eb6._.js} +2 -2
  515. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__73409f3d._.js → [root-of-the-server]__db4726bc._.js} +2 -2
  516. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__17e04588._.js → [root-of-the-server]__dc2a55de._.js} +2 -2
  517. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__67c4abf3._.js → [root-of-the-server]__dc6e2e5f._.js} +2 -2
  518. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__4d225634._.js → [root-of-the-server]__e0d4690b._.js} +2 -2
  519. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e678dd53._.js +3 -0
  520. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__a3b0b968._.js → [root-of-the-server]__e9223f55._.js} +2 -2
  521. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__91522ce2._.js → [root-of-the-server]__ea630076._.js} +2 -2
  522. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0644670b._.js → [root-of-the-server]__eb8acb65._.js} +2 -2
  523. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__bbdbb0e1._.js → [root-of-the-server]__eee4c5e8._.js} +2 -2
  524. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__2a21471b._.js → [root-of-the-server]__f26ca49d._.js} +2 -2
  525. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__6c15c973._.js → [root-of-the-server]__f33e1101._.js} +2 -2
  526. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__5bbc73ff._.js → [root-of-the-server]__f3a4c668._.js} +2 -2
  527. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__2bfbbec2._.js → [root-of-the-server]__f515f865._.js} +2 -2
  528. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fceb5d60._.js +98 -0
  529. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__d9c653fc._.js → [root-of-the-server]__fed41403._.js} +2 -2
  530. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__c09d4b86._.js → [root-of-the-server]__ff2e98c2._.js} +2 -2
  531. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_curation_assess_route_actions_3e8ef2a6.js +3 -0
  532. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_curation_publish_route_actions_49238be3.js +3 -0
  533. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_curation_refine_route_actions_05675688.js +3 -0
  534. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_curation_review_route_actions_5cbb5f6b.js +3 -0
  535. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_curation_seed_route_actions_21084bdb.js +3 -0
  536. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_marketplace_browse_route_actions_7ed0768c.js +3 -0
  537. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cortex_marketplace_preview_route_actions_38d4cc17.js +3 -0
  538. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_updates_route_actions_91efaab5.js +3 -0
  539. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__23f374a2._.js +3 -0
  540. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__66aca5d4._.js +1 -1
  541. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__efef0a06._.js → [root-of-the-server]__ca5beb09._.js} +2 -2
  542. package/.next/standalone/.next/server/chunks/ssr/{_b4db3983._.js → _01842037._.js} +2 -2
  543. package/.next/standalone/.next/server/chunks/ssr/{_7dd2ac82._.js → _036cbaa2._.js} +1 -1
  544. package/.next/standalone/.next/server/chunks/ssr/_10c0d382._.js +3 -0
  545. package/.next/standalone/.next/server/chunks/ssr/_163d0838._.js +3 -0
  546. package/.next/standalone/.next/server/chunks/ssr/{_9303a965._.js → _43455582._.js} +1 -1
  547. package/.next/standalone/.next/server/chunks/ssr/{_7e63066a._.js → _67887e33._.js} +2 -2
  548. package/.next/standalone/.next/server/chunks/ssr/_950142a4._.js +1 -1
  549. package/.next/standalone/.next/server/chunks/ssr/src_02bae6e5._.js +3 -0
  550. package/.next/standalone/.next/server/chunks/ssr/src_app_(desktop)_terminal_page_tsx_de5e8d85._.js +2 -2
  551. package/.next/standalone/.next/server/edge/chunks/_d73df637._.js +1 -1
  552. package/.next/standalone/.next/server/middleware-manifest.json +1 -1
  553. package/.next/standalone/.next/server/pages/404.html +1 -1
  554. package/.next/standalone/.next/server/pages/500.html +2 -2
  555. package/.next/standalone/.next/static/chunks/{a7b2795949a6c63e.js → 224aab5107987011.js} +2 -2
  556. package/.next/standalone/.next/static/chunks/415827af44b8c374.js +1 -0
  557. package/.next/standalone/.next/static/chunks/8a7f58872c123a53.css +3 -0
  558. package/.next/standalone/.next/static/chunks/b0484608571d975a.js +1 -0
  559. package/.next/standalone/.next/static/chunks/{e35e863c09511a51.js → b42a38df3e418ff0.js} +1 -1
  560. package/.next/standalone/.next/static/chunks/{0e61e67b7b8fc3f3.js → c418112e102673ce.js} +1 -1
  561. package/.next/standalone/.next/static/chunks/d6474f65a17c483e.js +1 -0
  562. package/.next/standalone/.next/static/chunks/e2f0a2330dedff4b.js +85 -0
  563. package/.next/standalone/.next/static/chunks/f0c8b3f8cc1939ec.js +1 -0
  564. package/.next/standalone/docs/superpowers/plans/2026-03-18-cortex-ui-integration.md +1846 -0
  565. package/.next/standalone/docs/superpowers/specs/2026-03-18-cortex-ui-integration-design.md +341 -0
  566. package/.next/standalone/package.json +1 -1
  567. package/.next/standalone/src/app/(desktop)/cortex/page.tsx +7 -4
  568. package/.next/standalone/src/app/api/cortex/curation/assess/route.ts +27 -0
  569. package/.next/standalone/src/app/api/cortex/curation/publish/route.ts +23 -0
  570. package/.next/standalone/src/app/api/cortex/curation/refine/route.ts +23 -0
  571. package/.next/standalone/src/app/api/cortex/curation/review/route.ts +29 -0
  572. package/.next/standalone/src/app/api/cortex/curation/seed/route.ts +23 -0
  573. package/.next/standalone/src/app/api/cortex/graph/populate/route.ts +3 -3
  574. package/.next/standalone/src/app/api/cortex/import/route.ts +51 -19
  575. package/.next/standalone/src/app/api/cortex/marketplace/browse/route.ts +43 -0
  576. package/.next/standalone/src/app/api/cortex/marketplace/preview/route.ts +46 -0
  577. package/.next/standalone/src/app/api/cortex/status/route.ts +40 -0
  578. package/.next/standalone/src/components/cortex/constants.ts +29 -0
  579. package/.next/standalone/src/components/cortex/cortex-dashboard.tsx +80 -4
  580. package/.next/standalone/src/components/cortex/curation-tab.tsx +810 -0
  581. package/.next/standalone/src/components/cortex/import-dialog.tsx +212 -0
  582. package/.next/standalone/src/components/cortex/knowledge-card.tsx +1 -19
  583. package/.next/standalone/src/components/cortex/knowledge-tab.tsx +103 -1
  584. package/.next/standalone/src/components/cortex/lobe-settings.tsx +16 -0
  585. package/.next/standalone/src/components/cortex/marketplace-card.tsx +126 -0
  586. package/.next/standalone/src/components/cortex/marketplace-tab.tsx +113 -0
  587. package/.next/standalone/src/lib/cortex/types.ts +1 -0
  588. package/bin/spaces-service.js +21 -9
  589. package/bin/spaces.js +85 -12
  590. package/bin/terminal-server.js +13 -2
  591. package/package.json +1 -1
  592. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d85c4a8b._.js +0 -98
  593. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ecce08b._.js +0 -3
  594. package/.next/standalone/.next/server/chunks/ssr/_cd50a174._.js +0 -3
  595. package/.next/standalone/.next/server/chunks/ssr/_e7a9e2b0._.js +0 -3
  596. package/.next/standalone/.next/server/chunks/ssr/src_133a7c8a._.js +0 -3
  597. package/.next/standalone/.next/static/chunks/441b03060c26dfd8.css +0 -3
  598. package/.next/standalone/.next/static/chunks/58d78765e5140dcb.js +0 -1
  599. package/.next/standalone/.next/static/chunks/78dd908e70bf8c4b.js +0 -85
  600. package/.next/standalone/.next/static/chunks/9196173f0d081f2c.js +0 -1
  601. package/.next/standalone/.next/static/chunks/9bd8a119aaeafc9e.js +0 -1
  602. package/.next/standalone/src/components/cortex/context-tab.tsx +0 -171
  603. /package/.next/standalone/.next/static/{L3G_bc6BtAETwbN4_gS1c → Ku7_sP1T1UuqtRhUTiJZw}/_buildManifest.js +0 -0
  604. /package/.next/standalone/.next/static/{L3G_bc6BtAETwbN4_gS1c → Ku7_sP1T1UuqtRhUTiJZw}/_clientMiddlewareManifest.json +0 -0
  605. /package/.next/standalone/.next/static/{L3G_bc6BtAETwbN4_gS1c → Ku7_sP1T1UuqtRhUTiJZw}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- module.exports=[66490,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(15618),e=a.i(96221),f=a.i(80386),g=a.i(87532),h=a.i(63588),i=a.i(96101),j=a.i(41710),k=a.i(5784),l=a.i(50522),m=a.i(60137);let n=(0,m.default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);var o=a.i(81560),p=a.i(99464),q=a.i(33441),r=a.i(33508),s=a.i(5151),t=a.i(81010);let u=(0,m.default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]),v=(0,m.default)("arrow-left-to-line",[["path",{d:"M3 19V5",key:"rwsyhb"}],["path",{d:"m13 6-6 6 6 6",key:"1yhaz7"}],["path",{d:"M7 12h14",key:"uoisry"}]]);var w=a.i(44494),x=a.i(92e3),y=a.i(60246),z=a.i(61545),A=a.i(50944),B=a.i(55402),C=a.i(63002);let D=(0,m.default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]),E=(0,m.default)("folder-plus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);var F=a.i(67552),G=a.i(21161),H=a.i(19032);function I({value:a,onChange:d}){let[f,g]=(0,c.useState)(!1),[h,j]=(0,c.useState)([]),[k,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(""),[p,q]=(0,c.useState)(null),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)("list"),[v,w]=(0,c.useState)(!1),[x,y]=(0,c.useState)(""),[z,A]=(0,c.useState)(""),[B,C]=(0,c.useState)(!1),I=(0,c.useRef)(null);(0,c.useEffect)(()=>{fetch((0,H.api)("/api/config")).then(a=>a.json()).then(a=>{j(a.devDirectories||[]),m(!0)}).catch(()=>m(!0))},[]),(0,c.useEffect)(()=>{f&&"browse"===t&&n&&(s(!0),fetch((0,H.api)(`/api/folders?path=${encodeURIComponent(n)}`)).then(a=>a.json()).then(a=>{q(a),s(!1)}).catch(()=>s(!1)))},[f,t,n]),(0,c.useEffect)(()=>{let a=a=>{I.current&&!I.current.contains(a.target)&&g(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[]);let J=()=>{f?g(!1):(1===h.length?(u("browse"),o(h[0])):u("list"),g(!0))},K=a=>{d(a),g(!1)},L=a=>{o(a)},M=async()=>{if(x.trim()&&p?.current){C(!0),A("");try{let a=await fetch((0,H.api)("/api/folders"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parent:p.current,name:x.trim()})});if(a.ok){let{path:b}=await a.json();w(!1),y(""),K(b)}else{let b=await a.json();A(b.error||"Failed to create folder")}}catch{A("Failed to create folder")}C(!1)}},N=h.find(a=>p?.current===a||p?.current?.startsWith(a+"/")),O=N?.split("/").pop()||"",P=N&&p?.current?p.current.slice(N.length):"",Q=P?P.split("/").filter(Boolean):[];return(0,b.jsxs)("div",{ref:I,className:"relative",children:[(0,b.jsxs)("div",{className:"flex items-center gap-0",children:[(0,b.jsx)("input",{type:"text",placeholder:"Working directory",value:a,onChange:a=>d(a.target.value),onFocus:()=>{f||J()},className:"flex-1 px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-l-md focus:outline-none focus:border-indigo-500 text-white font-mono"}),(0,b.jsx)("button",{type:"button",onClick:J,className:"px-3 py-2 text-sm bg-zinc-700 border border-zinc-700 border-l-0 rounded-r-md hover:bg-zinc-600 text-zinc-300 hover:text-white transition-colors",title:"Browse folders",children:(0,b.jsx)(i.FolderOpen,{className:"w-4 h-4"})})]}),f&&(0,b.jsxs)("div",{className:"absolute z-50 top-full left-0 right-0 mt-1 bg-zinc-800 border border-zinc-700 rounded-md shadow-xl overflow-hidden",children:[k?0===h.length&&"list"===t?(0,b.jsxs)("div",{className:"py-6 px-4 text-center",children:[(0,b.jsx)(G.Settings,{className:"w-5 h-5 text-zinc-500 mx-auto mb-2"}),(0,b.jsx)("p",{className:"text-xs text-zinc-400 mb-1",children:"No development directories configured"}),(0,b.jsx)("p",{className:"text-[11px] text-zinc-500",children:"Add them in Settings to browse project folders here."})]}):"list"===t?(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"px-3 py-1.5 border-b border-zinc-700/50 text-[11px] text-zinc-500 font-medium",children:"Development Directories"}),(0,b.jsx)("div",{className:"max-h-[250px] overflow-y-auto",children:h.map(a=>(0,b.jsxs)("button",{className:"w-full flex items-center gap-2 px-3 py-2 text-xs hover:bg-zinc-700 transition-colors group",onClick:()=>{u("browse"),o(a)},onDoubleClick:()=>K(a),title:"Click to browse, double-click to select",children:[(0,b.jsx)(D,{className:"w-3.5 h-3.5 text-amber-500/70"}),(0,b.jsx)("span",{className:"font-mono text-white truncate flex-1 text-left",children:a}),(0,b.jsx)(l.ChevronRight,{className:"w-3 h-3 text-zinc-600 group-hover:text-zinc-400"})]},a))})]}):(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center gap-0.5 px-2 py-1.5 border-b border-zinc-700/50 overflow-x-auto text-[11px] flex-nowrap",children:[h.length>1&&(0,b.jsx)("button",{onClick:()=>{u("list"),q(null),w(!1)},className:"text-zinc-400 hover:text-white flex-shrink-0 p-0.5 mr-0.5",title:"Back to dev directories",children:(0,b.jsx)(F.ChevronUp,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>N&&L(N),className:"text-zinc-400 hover:text-white flex-shrink-0",children:O}),Q.map((a,c)=>{let d=N+"/"+Q.slice(0,c+1).join("/");return(0,b.jsxs)("span",{className:"flex items-center gap-0.5 flex-shrink-0",children:[(0,b.jsx)(l.ChevronRight,{className:"w-2.5 h-2.5 text-zinc-600"}),(0,b.jsx)("button",{onClick:()=>L(d),className:"text-zinc-400 hover:text-white hover:underline",children:a})]},c)})]}),(0,b.jsx)("div",{className:"max-h-[250px] overflow-y-auto",children:r||!p?(0,b.jsx)("div",{className:"flex items-center justify-center py-6",children:(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-400"})}):p.error?(0,b.jsx)("div",{className:"py-4 px-3 text-xs text-red-400 text-center",children:p.error}):(0,b.jsxs)(b.Fragment,{children:[p?.parent&&(0,b.jsxs)("button",{onClick:()=>L(p.parent),className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-zinc-400 hover:text-white hover:bg-zinc-700/50 transition-colors border-b border-zinc-700/30",children:[(0,b.jsx)(F.ChevronUp,{className:"w-3.5 h-3.5"}),(0,b.jsx)("span",{children:".."})]}),(0,b.jsxs)("button",{onClick:()=>K(p.current),className:"w-full flex items-center gap-2 px-3 py-2 text-xs text-indigo-400 hover:bg-indigo-500/10 transition-colors border-b border-zinc-700/30 font-medium",children:[(0,b.jsx)(i.FolderOpen,{className:"w-3.5 h-3.5"}),(0,b.jsx)("span",{children:"Select this folder"}),(0,b.jsx)("span",{className:"ml-auto text-[10px] text-zinc-500 font-mono truncate max-w-[200px]",children:p.current.split("/").pop()})]}),v?(0,b.jsxs)("div",{className:"px-3 py-2 border-b border-zinc-700/30 space-y-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("input",{autoFocus:!0,value:x,onChange:a=>{y(a.target.value),A("")},onKeyDown:a=>{"Enter"===a.key&&M(),"Escape"===a.key&&w(!1)},placeholder:"Folder name",className:"flex-1 px-2 py-1 text-xs bg-zinc-900 border border-zinc-600 rounded text-white focus:outline-none focus:border-green-500"}),(0,b.jsx)("button",{onClick:M,disabled:B||!x.trim(),className:"px-2.5 py-1 text-xs bg-green-600 hover:bg-green-500 text-white rounded disabled:opacity-40",children:B?"...":"Create"}),(0,b.jsx)("button",{onClick:()=>w(!1),className:"px-1.5 py-1 text-xs text-zinc-500 hover:text-white",children:"✕"})]}),z&&(0,b.jsx)("div",{className:"text-[10px] text-red-400",children:z})]}):(0,b.jsxs)("button",{onClick:()=>{w(!0),A("")},className:"w-full flex items-center gap-2 px-3 py-2 text-xs text-green-400 hover:bg-green-500/10 transition-colors border-b border-zinc-700/30",children:[(0,b.jsx)(E,{className:"w-3.5 h-3.5"}),(0,b.jsx)("span",{children:"New folder"})]}),p?.folders.length===0?(0,b.jsx)("div",{className:"py-3 px-3 text-[11px] text-zinc-500 text-center",children:"No subfolders"}):p?.folders.map(a=>(0,b.jsxs)("button",{onClick:()=>L(a.path),onDoubleClick:()=>K(a.path),className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-white hover:bg-zinc-700 transition-colors",title:"Click to open, double-click to select",children:[(0,b.jsx)(D,{className:"w-3.5 h-3.5 text-amber-500/70"}),(0,b.jsx)("span",{className:"truncate",children:a.name})]},a.path))]})})]}):(0,b.jsx)("div",{className:"flex items-center justify-center py-6",children:(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-400"})}),(0,b.jsx)("div",{className:"border-t border-zinc-700/50 px-2 py-1 flex justify-end",children:(0,b.jsx)("button",{onClick:()=>g(!1),className:"text-[11px] text-zinc-500 hover:text-white px-2 py-0.5",children:"Close"})})]})]})}var J=a.i(1279),K=a.i(97498);function L({value:a,onChange:c}){let{hasNetwork:d}=(0,K.useTier)(),{data:e}=(0,J.useNodes)(d);return Array.isArray(e)&&0!==e.length?(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Node"}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(w.Globe,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-3.5 h-3.5 text-zinc-500"}),(0,b.jsxs)("select",{value:a,onChange:a=>c(a.target.value),className:"w-full pl-8 pr-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white appearance-none",children:[(0,b.jsx)("option",{value:"",children:"Local (this machine)"}),e.map(a=>(0,b.jsx)("option",{value:a.id,disabled:"offline"===a.status,children:"offline"===a.status?`${a.name} (offline)`:a.name},a.id))]})]})]}):null}var M=a.i(79082),N=a.i(5699),O=a.i(59603),P=a.i(92759);let Q=(0,m.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var R=a.i(33217),S=a.i(70025),T=a.i(37927);function U({workspaceId:a,panes:d,collapsed:e,onToggle:f}){let g,i,j,k,[m,n]=(0,c.useState)("messages"),[p,q]=(0,c.useState)(""),r=(0,c.useRef)(null),{data:s=[]}=(0,R.useQuery)({queryKey:["workspace-messages",a,void 0],queryFn:async()=>{let b=new URLSearchParams;return(await fetch((0,H.api)(`/api/workspaces/${a}/messages?${b}`))).json()},enabled:!!a,refetchInterval:3e3}),{data:t=[]}=(0,R.useQuery)({queryKey:["workspace-context",a],queryFn:async()=>(await fetch((0,H.api)(`/api/workspaces/${a}/context`))).json(),enabled:!!a}),u=(g=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async b=>(await fetch((0,H.api)(`/api/workspaces/${a}/messages`),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...b,senderName:b.senderName||"User",type:b.type||"message"})})).json(),onSuccess:()=>{g.invalidateQueries({queryKey:["workspace-messages",a]})}})),v=(i=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async({messageId:b,status:c})=>(await fetch((0,H.api)(`/api/workspaces/${a}/messages/${b}`),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:c})})).json(),onSuccess:()=>{i.invalidateQueries({queryKey:["workspace-messages",a]})}})),w=(j=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async()=>{await fetch((0,H.api)(`/api/workspaces/${a}/messages`),{method:"DELETE"})},onSuccess:()=>{j.invalidateQueries({queryKey:["workspace-messages",a]})}})),x=(k=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async()=>{await fetch((0,H.api)(`/api/workspaces/${a}/context`),{method:"DELETE"})},onSuccess:()=>{k.invalidateQueries({queryKey:["workspace-context",a]})}})),y=s.filter(a=>"pending_approval"===a.status).length;(0,c.useEffect)(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},[s]);let z=()=>{p.trim()&&a&&(u.mutate({content:p.trim()}),q(""))};return e?(0,b.jsxs)("button",{onClick:f,className:"flex-shrink-0 w-10 border-l border-zinc-800 bg-zinc-900 flex flex-col items-center pt-3 gap-2",children:[(0,b.jsx)(Q,{className:"w-4 h-4 text-zinc-400"}),(0,b.jsx)(h.MessageSquare,{className:"w-4 h-4 text-zinc-400"}),y>0&&(0,b.jsx)("span",{className:"bg-amber-500 text-black text-xs font-bold rounded-full w-5 h-5 flex items-center justify-center",children:y})]}):(0,b.jsxs)("div",{className:"flex-shrink-0 w-80 border-l border-zinc-800 bg-zinc-900 flex flex-col",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-zinc-800",children:[(0,b.jsxs)("div",{className:"flex gap-1",children:[(0,b.jsxs)("button",{onClick:()=>n("messages"),className:`px-2 py-1 text-xs rounded ${"messages"===m?"bg-zinc-700 text-white":"text-zinc-400 hover:text-zinc-300"}`,children:["Messages",y>0&&(0,b.jsx)("span",{className:"ml-1 bg-amber-500 text-black text-xs font-bold rounded-full px-1.5",children:y})]}),(0,b.jsx)("button",{onClick:()=>n("context"),className:`px-2 py-1 text-xs rounded ${"context"===m?"bg-zinc-700 text-white":"text-zinc-400 hover:text-zinc-300"}`,children:"Context"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("button",{onClick:()=>"messages"===m?w.mutate():x.mutate(),className:"text-zinc-500 hover:text-red-400",title:"messages"===m?"Clear all messages":"Clear all context",children:(0,b.jsx)(o.Trash2,{className:"w-3.5 h-3.5"})}),(0,b.jsx)("button",{onClick:f,className:"text-zinc-400 hover:text-zinc-300",children:(0,b.jsx)(l.ChevronRight,{className:"w-4 h-4"})})]})]}),"messages"===m&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{ref:r,className:"flex-1 overflow-y-auto p-2 space-y-2",children:[[...s].reverse().map(a=>(0,b.jsx)(V,{message:a,panes:d,onApprove:()=>v.mutate({messageId:a.id,status:"approved"}),onReject:()=>v.mutate({messageId:a.id,status:"rejected"})},a.id)),0===s.length&&(0,b.jsx)("p",{className:"text-zinc-500 text-xs text-center py-8",children:"No messages yet. Agents will appear here."})]}),(0,b.jsx)("div",{className:"border-t border-zinc-800 p-2",children:(0,b.jsxs)("div",{className:"flex gap-1",children:[(0,b.jsx)("input",{value:p,onChange:a=>q(a.target.value),onKeyDown:a=>"Enter"===a.key&&!a.shiftKey&&z(),placeholder:"Message workspace...",className:"flex-1 bg-zinc-800 border border-zinc-700 rounded px-2 py-1 text-sm text-zinc-200 placeholder-zinc-500 focus:outline-none focus:border-zinc-600"}),(0,b.jsx)("button",{onClick:z,disabled:!p.trim(),className:"px-2 py-1 bg-indigo-600 hover:bg-indigo-500 disabled:bg-zinc-700 disabled:text-zinc-500 rounded text-sm",children:(0,b.jsx)(P.Send,{className:"w-3.5 h-3.5"})})]})})]}),"context"===m&&(0,b.jsx)(W,{workspaceId:a,context:t})]})}function V({message:a,panes:c,onApprove:d,onReject:e}){let f=c.find(b=>b.id===a.paneId),g="pending_approval"===a.status,h="rejected"===a.status;return(0,b.jsxs)("div",{className:`rounded p-2 text-xs ${g?"bg-amber-950/50 border border-amber-800/50":h?"bg-zinc-800/50 opacity-50":"bg-zinc-800/50"}`,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,b.jsxs)("span",{className:"font-medium text-zinc-300",children:[f&&(0,b.jsx)("span",{className:"inline-block w-2 h-2 rounded-full mr-1",style:{backgroundColor:f.color||"#6366f1"}}),a.senderName]}),(0,b.jsx)("span",{className:"text-zinc-500",children:new Date(a.created).toLocaleTimeString()})]}),(0,b.jsx)("p",{className:"text-zinc-300 whitespace-pre-wrap",children:a.content}),g&&(0,b.jsxs)("div",{className:"flex gap-1 mt-2",children:[(0,b.jsxs)("button",{onClick:d,className:"flex items-center gap-1 px-2 py-0.5 bg-green-700 hover:bg-green-600 rounded text-white text-xs",children:[(0,b.jsx)(q.Check,{className:"w-3 h-3"})," Approve"]}),(0,b.jsxs)("button",{onClick:e,className:"flex items-center gap-1 px-2 py-0.5 bg-zinc-700 hover:bg-zinc-600 rounded text-zinc-300 text-xs",children:[(0,b.jsx)(r.X,{className:"w-3 h-3"})," Reject"]})]}),"rejected"===a.status&&(0,b.jsx)("span",{className:"text-red-400 text-xs mt-1 block",children:"Rejected"})]})}function W({workspaceId:a,context:d}){let e,f,[g,h]=(0,c.useState)(""),[i,j]=(0,c.useState)(""),k=(e=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async({key:b,value:c})=>(await fetch((0,H.api)(`/api/workspaces/${a}/context/${encodeURIComponent(b)}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:c})})).json(),onSuccess:()=>{e.invalidateQueries({queryKey:["workspace-context",a]})}})),l=(f=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async b=>{await fetch((0,H.api)(`/api/workspaces/${a}/context/${encodeURIComponent(b)}`),{method:"DELETE"})},onSuccess:()=>{f.invalidateQueries({queryKey:["workspace-context",a]})}})),m=()=>{g.trim()&&i.trim()&&(k.mutate({key:g.trim(),value:i.trim()}),h(""),j(""))};return(0,b.jsxs)("div",{className:"flex-1 overflow-y-auto p-2 space-y-2",children:[d.map(a=>(0,b.jsxs)("div",{className:"bg-zinc-800/50 rounded p-2 text-xs",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,b.jsx)("span",{className:"font-mono font-medium text-indigo-300",children:a.key}),(0,b.jsx)("button",{onClick:()=>l.mutate(a.key),className:"text-zinc-500 hover:text-red-400",children:(0,b.jsx)(r.X,{className:"w-3 h-3"})})]}),(0,b.jsx)("p",{className:"text-zinc-300 whitespace-pre-wrap font-mono text-xs",children:a.value}),(0,b.jsxs)("span",{className:"text-zinc-500 text-xs",children:["by ",a.updatedBy]})]},a.key)),(0,b.jsxs)("div",{className:"border-t border-zinc-800 pt-2 space-y-1",children:[(0,b.jsx)("input",{value:g,onChange:a=>h(a.target.value),placeholder:"Key",className:"w-full bg-zinc-800 border border-zinc-700 rounded px-2 py-1 text-xs text-zinc-200 placeholder-zinc-500 focus:outline-none"}),(0,b.jsx)("input",{value:i,onChange:a=>j(a.target.value),placeholder:"Value",onKeyDown:a=>"Enter"===a.key&&m(),className:"w-full bg-zinc-800 border border-zinc-700 rounded px-2 py-1 text-xs text-zinc-200 placeholder-zinc-500 focus:outline-none"}),(0,b.jsx)("button",{onClick:m,disabled:!g.trim()||!i.trim(),className:"w-full px-2 py-1 bg-indigo-600 hover:bg-indigo-500 disabled:bg-zinc-700 disabled:text-zinc-500 rounded text-xs",children:"Add Entry"})]})]})}var X=a.i(58037),Y=a.i(77156),Z=a.i(41379),$=a.i(33350);function _({workspaceId:a,workspaceName:e}){let[f,g]=(0,c.useState)(null),[h,i]=(0,c.useState)([]),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(""),[n,o]=(0,c.useState)(null);(0,c.useEffect)(()=>{Promise.all([fetch((0,H.api)(`/api/cortex/lobes/${a}`)).then(a=>{if(!a.ok)throw Error(`${a.status} ${a.statusText}`);return a.json()}),fetch((0,H.api)("/api/cortex/lobes")).then(a=>a.json()).catch(()=>({lobes:[]}))]).then(([b,c])=>{g(b.config??null),i((c.lobes||[]).filter(b=>b.workspaceId!==a))}).catch(a=>o(a.message||"Failed to load"))},[a]);let p=async b=>{if(f){g({...f,...b}),k(!0);try{let c=await fetch((0,H.api)(`/api/cortex/lobes/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json();d.config&&g(d.config)}catch{}finally{k(!1)}}},q=()=>{if(!f||!l.trim())return;let a=l.trim();f.tags.includes(a)||p({tags:[...f.tags,a]}),m("")};return n?(0,b.jsx)("div",{className:"text-[11px] text-red-400/80",children:n}):f?(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsx)("div",{className:"text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Knowledge Lobe"}),(0,b.jsxs)("button",{onClick:()=>p({isPrivate:!f.isPrivate}),disabled:j,className:"flex items-center gap-2 w-full text-left group disabled:opacity-50",children:[(0,b.jsx)("span",{className:`flex items-center justify-center w-4 h-4 rounded border transition-colors ${f.isPrivate?"bg-amber-500/20 border-amber-500/40 text-amber-400":"bg-zinc-800 border-zinc-700 text-zinc-500 group-hover:border-zinc-500"}`,children:f.isPrivate?(0,b.jsx)(Z.EyeOff,{className:"w-2.5 h-2.5"}):(0,b.jsx)(Y.Eye,{className:"w-2.5 h-2.5"})}),(0,b.jsx)("span",{className:"text-xs text-zinc-400 group-hover:text-zinc-300 transition-colors",children:f.isPrivate?"Private — hidden from other workspaces":"Visible to other workspaces"})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1 text-[10px] text-zinc-500",children:[(0,b.jsx)($.Tag,{className:"w-3 h-3"}),(0,b.jsx)("span",{children:"Topics"}),(0,b.jsx)("span",{className:"text-zinc-700 ml-1",children:"— Cortex uses these to scope knowledge retrieval"})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-1",children:[f.tags.map(a=>(0,b.jsxs)("span",{className:"flex items-center gap-1 px-1.5 py-0.5 bg-purple-500/10 border border-purple-500/20 rounded text-[11px] text-purple-300",children:[a,(0,b.jsx)("button",{onClick:()=>{f&&p({tags:f.tags.filter(b=>b!==a)})},className:"hover:text-red-400 transition-colors",children:(0,b.jsx)(r.X,{className:"w-2.5 h-2.5"})})]},a)),(0,b.jsxs)("span",{className:"flex items-center gap-0.5",children:[(0,b.jsx)("input",{type:"text",value:l,onChange:a=>m(a.target.value),onKeyDown:a=>{"Enter"===a.key&&q()},placeholder:"add topic...",className:"w-20 px-1.5 py-0.5 bg-zinc-800 border border-zinc-700 rounded text-[11px] text-zinc-300 placeholder-zinc-600 focus:outline-none focus:border-purple-500/50"}),l.trim()&&(0,b.jsx)("button",{onClick:q,className:"text-purple-400 hover:text-purple-300 transition-colors",children:(0,b.jsx)(d.Plus,{className:"w-3 h-3"})})]})]})]}),h.length>0&&!f.isPrivate&&(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("div",{className:"text-[10px] text-zinc-500",children:"Sibling access — uncheck to block a workspace from this lobe"}),(0,b.jsx)("div",{className:"space-y-0.5",children:h.map(a=>{let c=f.excludedFrom.includes(a.workspaceId);return(0,b.jsxs)("button",{onClick:()=>{var b;return b=a.workspaceId,void(!f||p({excludedFrom:f.excludedFrom.includes(b)?f.excludedFrom.filter(a=>a!==b):[...f.excludedFrom,b]}))},disabled:j,className:"flex items-center gap-2 w-full px-2 py-1 rounded text-left hover:bg-zinc-800/50 transition-colors disabled:opacity-50",children:[(0,b.jsx)("span",{className:`w-3 h-3 rounded-sm border flex items-center justify-center transition-colors ${c?"border-zinc-700 bg-zinc-800":"border-purple-500/50 bg-purple-500/20"}`,children:!c&&(0,b.jsx)("svg",{className:"w-2 h-2 text-purple-400",viewBox:"0 0 12 12",fill:"none",children:(0,b.jsx)("path",{d:"M2 6l3 3 5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsx)("span",{className:`text-xs ${c?"text-zinc-600 line-through":"text-zinc-300"}`,children:a.name})]},a.workspaceId)})})]})]}):(0,b.jsx)("div",{className:"text-[11px] text-zinc-600",children:"Loading..."})}let aa=(0,m.default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);var ab=a.i(4720);let ac=(0,m.default)("file-code",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]),ad=(0,m.default)("file-braces",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]]),ae=(0,m.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]),af=(0,m.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var ag=a.i(52495);let ah=(0,m.default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]),ai=(0,m.default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]),aj="spaces-file-viewer",ak="spaces-file-viewer-state";function al(){try{let a=localStorage.getItem(ak);if(a)return JSON.parse(a)}catch{}return{x:0,y:0,w:800,h:600,wasPoppedOut:!1}}function am(a){try{let b=al();localStorage.setItem(ak,JSON.stringify({...b,...a}))}catch{}}function an(a){return a?({".ts":"text-blue-300",".tsx":"text-blue-300",".js":"text-yellow-300",".jsx":"text-yellow-300",".json":"text-green-300",".md":"text-zinc-300",".css":"text-pink-300",".scss":"text-pink-300",".html":"text-orange-300",".xml":"text-orange-300",".py":"text-emerald-300",".rb":"text-red-300",".go":"text-cyan-300",".rs":"text-orange-300",".sh":"text-green-300",".bash":"text-green-300",".yml":"text-purple-300",".yaml":"text-purple-300",".sql":"text-blue-200",".graphql":"text-pink-200"})[a]||"text-zinc-300":""}function ao({item:a}){if(a.isDir)return(0,b.jsx)(D,{className:"w-3.5 h-3.5 text-amber-500/70 flex-shrink-0"});let c=a.ext||"";return[".png",".jpg",".jpeg",".gif",".webp",".svg",".ico",".bmp"].includes(c)?(0,b.jsx)(ae,{className:"w-3.5 h-3.5 text-emerald-400/70 flex-shrink-0"}):[".ts",".tsx",".js",".jsx",".py",".rb",".go",".rs"].includes(c)?(0,b.jsx)(ac,{className:"w-3.5 h-3.5 text-blue-400/70 flex-shrink-0"}):".json"===c?(0,b.jsx)(ad,{className:"w-3.5 h-3.5 text-green-400/70 flex-shrink-0"}):[".md",".txt",".yml",".yaml"].includes(c)?(0,b.jsx)(ab.FileText,{className:"w-3.5 h-3.5 text-zinc-400/70 flex-shrink-0"}):(0,b.jsx)(aa,{className:"w-3.5 h-3.5 text-zinc-500/70 flex-shrink-0"})}function ap(a){return a<1024?`${a}B`:a<1048576?`${(a/1024).toFixed(1)}KB`:`${(a/1048576).toFixed(1)}MB`}function aq({onClose:a,navigateTo:d}){let[e,f]=(0,c.useState)([]),[g,h]=(0,c.useState)(""),[i,j]=(0,c.useState)(""),[k,l]=(0,c.useState)([]),[m,n]=(0,c.useState)(null),[o,p]=(0,c.useState)(new Set),[q,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(!1),[w,x]=(0,c.useState)(!1),y=(0,c.useRef)(null),z=(0,c.useRef)(null),A=(0,c.useRef)(null),B=(0,c.useRef)(!0);(0,c.useEffect)(()=>(B.current=!0,z.current=new BroadcastChannel(aj),z.current.onmessage=a=>{a.data?.type==="pop-in"&&(am({wasPoppedOut:!1}),x(!1),y.current=null,A.current&&(clearInterval(A.current),A.current=null))},()=>{B.current=!1,z.current?.close(),A.current&&clearInterval(A.current)}),[]),(0,c.useEffect)(()=>{fetch((0,H.api)("/api/config")).then(a=>a.json()).then(a=>{let b=a.devDirectories||[];f(b),b.length>0&&!g&&(h(b[0]),j(b[0]))}).catch(()=>{})},[]),(0,c.useEffect)(()=>{if(!d)return;let a=e.find(a=>d===a||d.startsWith(a+"/")||d.startsWith(a+"\\"));a?h(a):h(d),j(d),p(new Set)},[d,e]),(0,c.useEffect)(()=>{if(w&&q&&z.current)try{z.current.postMessage({type:"file-update",file:q})}catch{}},[q,w]);let C=(0,c.useRef)(!1);(0,c.useEffect)(()=>{C.current=!1;let a=al();a.wasPoppedOut&&a.lastFilePath&&fetch((0,H.api)(`/api/files?file=${encodeURIComponent(a.lastFilePath)}`)).then(a=>a.json()).then(a=>{a&&!a.error&&(s(a),C.current||(C.current=!0,setTimeout(()=>F(a),50)))}).catch(()=>{})},[]),(0,c.useEffect)(()=>()=>{if(y.current&&!y.current.closed){am({wasPoppedOut:!0});try{y.current.close()}catch{}}A.current&&(clearInterval(A.current),A.current=null)},[]);let D=(0,c.useCallback)(async a=>{try{let b=await fetch((0,H.api)(`/api/files?path=${encodeURIComponent(a)}`)),c=await b.json();return{items:c.items||[],parent:c.parent||null}}catch{return{items:[],parent:null}}},[]);(0,c.useEffect)(()=>{i&&(u(!0),D(i).then(a=>{l(a.items),n(a.parent),u(!1)}))},[i,D]);let E=async a=>{if(a.isDir)p(b=>{let c=new Set(b);return c.has(a.path)?c.delete(a.path):c.add(a.path),c});else try{let b=await fetch((0,H.api)(`/api/files?file=${encodeURIComponent(a.path)}`)),c=await b.json();s(c),am({lastFilePath:a.path})}catch{s({name:a.name,path:a.path,size:0,ext:a.ext||"",error:"Failed to load"})}},F=a=>{let b=al(),c=b.w||800,d=b.h||600,e=b.x||window.screenX+(window.outerWidth-c)/2,f=b.y||window.screenY+(window.outerHeight-d)/2,g=window.open("about:blank","spaces-file-viewer",`width=${c},height=${d},left=${e},top=${f}`);if(g){var h;y.current=g,x(!0),am({wasPoppedOut:!0}),h=a.name,g.document.write(`<!DOCTYPE html><html><head><title>${h} — Spaces</title>
1
+ module.exports=[66490,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(15618),e=a.i(96221),f=a.i(80386),g=a.i(87532),h=a.i(63588),i=a.i(96101),j=a.i(41710),k=a.i(5784),l=a.i(50522),m=a.i(60137);let n=(0,m.default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);var o=a.i(81560),p=a.i(99464),q=a.i(33441),r=a.i(33508),s=a.i(5151),t=a.i(81010);let u=(0,m.default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]),v=(0,m.default)("arrow-left-to-line",[["path",{d:"M3 19V5",key:"rwsyhb"}],["path",{d:"m13 6-6 6 6 6",key:"1yhaz7"}],["path",{d:"M7 12h14",key:"uoisry"}]]);var w=a.i(44494),x=a.i(92e3),y=a.i(60246),z=a.i(61545),A=a.i(50944),B=a.i(55402),C=a.i(63002);let D=(0,m.default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]),E=(0,m.default)("folder-plus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);var F=a.i(67552),G=a.i(21161),H=a.i(19032);function I({value:a,onChange:d}){let[f,g]=(0,c.useState)(!1),[h,j]=(0,c.useState)([]),[k,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(""),[p,q]=(0,c.useState)(null),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)("list"),[v,w]=(0,c.useState)(!1),[x,y]=(0,c.useState)(""),[z,A]=(0,c.useState)(""),[B,C]=(0,c.useState)(!1),I=(0,c.useRef)(null);(0,c.useEffect)(()=>{fetch((0,H.api)("/api/config")).then(a=>a.json()).then(a=>{j(a.devDirectories||[]),m(!0)}).catch(()=>m(!0))},[]),(0,c.useEffect)(()=>{f&&"browse"===t&&n&&(s(!0),fetch((0,H.api)(`/api/folders?path=${encodeURIComponent(n)}`)).then(a=>a.json()).then(a=>{q(a),s(!1)}).catch(()=>s(!1)))},[f,t,n]),(0,c.useEffect)(()=>{let a=a=>{I.current&&!I.current.contains(a.target)&&g(!1)};return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[]);let J=()=>{f?g(!1):(1===h.length?(u("browse"),o(h[0])):u("list"),g(!0))},K=a=>{d(a),g(!1)},L=a=>{o(a)},M=async()=>{if(x.trim()&&p?.current){C(!0),A("");try{let a=await fetch((0,H.api)("/api/folders"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({parent:p.current,name:x.trim()})});if(a.ok){let{path:b}=await a.json();w(!1),y(""),K(b)}else{let b=await a.json();A(b.error||"Failed to create folder")}}catch{A("Failed to create folder")}C(!1)}},N=h.find(a=>p?.current===a||p?.current?.startsWith(a+"/")),O=N?.split("/").pop()||"",P=N&&p?.current?p.current.slice(N.length):"",Q=P?P.split("/").filter(Boolean):[];return(0,b.jsxs)("div",{ref:I,className:"relative",children:[(0,b.jsxs)("div",{className:"flex items-center gap-0",children:[(0,b.jsx)("input",{type:"text",placeholder:"Working directory",value:a,onChange:a=>d(a.target.value),onFocus:()=>{f||J()},className:"flex-1 px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-l-md focus:outline-none focus:border-indigo-500 text-white font-mono"}),(0,b.jsx)("button",{type:"button",onClick:J,className:"px-3 py-2 text-sm bg-zinc-700 border border-zinc-700 border-l-0 rounded-r-md hover:bg-zinc-600 text-zinc-300 hover:text-white transition-colors",title:"Browse folders",children:(0,b.jsx)(i.FolderOpen,{className:"w-4 h-4"})})]}),f&&(0,b.jsxs)("div",{className:"absolute z-50 top-full left-0 right-0 mt-1 bg-zinc-800 border border-zinc-700 rounded-md shadow-xl overflow-hidden",children:[k?0===h.length&&"list"===t?(0,b.jsxs)("div",{className:"py-6 px-4 text-center",children:[(0,b.jsx)(G.Settings,{className:"w-5 h-5 text-zinc-500 mx-auto mb-2"}),(0,b.jsx)("p",{className:"text-xs text-zinc-400 mb-1",children:"No development directories configured"}),(0,b.jsx)("p",{className:"text-[11px] text-zinc-500",children:"Add them in Settings to browse project folders here."})]}):"list"===t?(0,b.jsxs)("div",{children:[(0,b.jsx)("div",{className:"px-3 py-1.5 border-b border-zinc-700/50 text-[11px] text-zinc-500 font-medium",children:"Development Directories"}),(0,b.jsx)("div",{className:"max-h-[250px] overflow-y-auto",children:h.map(a=>(0,b.jsxs)("button",{className:"w-full flex items-center gap-2 px-3 py-2 text-xs hover:bg-zinc-700 transition-colors group",onClick:()=>{u("browse"),o(a)},onDoubleClick:()=>K(a),title:"Click to browse, double-click to select",children:[(0,b.jsx)(D,{className:"w-3.5 h-3.5 text-amber-500/70"}),(0,b.jsx)("span",{className:"font-mono text-white truncate flex-1 text-left",children:a}),(0,b.jsx)(l.ChevronRight,{className:"w-3 h-3 text-zinc-600 group-hover:text-zinc-400"})]},a))})]}):(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center gap-0.5 px-2 py-1.5 border-b border-zinc-700/50 overflow-x-auto text-[11px] flex-nowrap",children:[h.length>1&&(0,b.jsx)("button",{onClick:()=>{u("list"),q(null),w(!1)},className:"text-zinc-400 hover:text-white flex-shrink-0 p-0.5 mr-0.5",title:"Back to dev directories",children:(0,b.jsx)(F.ChevronUp,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>N&&L(N),className:"text-zinc-400 hover:text-white flex-shrink-0",children:O}),Q.map((a,c)=>{let d=N+"/"+Q.slice(0,c+1).join("/");return(0,b.jsxs)("span",{className:"flex items-center gap-0.5 flex-shrink-0",children:[(0,b.jsx)(l.ChevronRight,{className:"w-2.5 h-2.5 text-zinc-600"}),(0,b.jsx)("button",{onClick:()=>L(d),className:"text-zinc-400 hover:text-white hover:underline",children:a})]},c)})]}),(0,b.jsx)("div",{className:"max-h-[250px] overflow-y-auto",children:r||!p?(0,b.jsx)("div",{className:"flex items-center justify-center py-6",children:(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-400"})}):p.error?(0,b.jsx)("div",{className:"py-4 px-3 text-xs text-red-400 text-center",children:p.error}):(0,b.jsxs)(b.Fragment,{children:[p?.parent&&(0,b.jsxs)("button",{onClick:()=>L(p.parent),className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-zinc-400 hover:text-white hover:bg-zinc-700/50 transition-colors border-b border-zinc-700/30",children:[(0,b.jsx)(F.ChevronUp,{className:"w-3.5 h-3.5"}),(0,b.jsx)("span",{children:".."})]}),(0,b.jsxs)("button",{onClick:()=>K(p.current),className:"w-full flex items-center gap-2 px-3 py-2 text-xs text-indigo-400 hover:bg-indigo-500/10 transition-colors border-b border-zinc-700/30 font-medium",children:[(0,b.jsx)(i.FolderOpen,{className:"w-3.5 h-3.5"}),(0,b.jsx)("span",{children:"Select this folder"}),(0,b.jsx)("span",{className:"ml-auto text-[10px] text-zinc-500 font-mono truncate max-w-[200px]",children:p.current.split("/").pop()})]}),v?(0,b.jsxs)("div",{className:"px-3 py-2 border-b border-zinc-700/30 space-y-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,b.jsx)("input",{autoFocus:!0,value:x,onChange:a=>{y(a.target.value),A("")},onKeyDown:a=>{"Enter"===a.key&&M(),"Escape"===a.key&&w(!1)},placeholder:"Folder name",className:"flex-1 px-2 py-1 text-xs bg-zinc-900 border border-zinc-600 rounded text-white focus:outline-none focus:border-green-500"}),(0,b.jsx)("button",{onClick:M,disabled:B||!x.trim(),className:"px-2.5 py-1 text-xs bg-green-600 hover:bg-green-500 text-white rounded disabled:opacity-40",children:B?"...":"Create"}),(0,b.jsx)("button",{onClick:()=>w(!1),className:"px-1.5 py-1 text-xs text-zinc-500 hover:text-white",children:"✕"})]}),z&&(0,b.jsx)("div",{className:"text-[10px] text-red-400",children:z})]}):(0,b.jsxs)("button",{onClick:()=>{w(!0),A("")},className:"w-full flex items-center gap-2 px-3 py-2 text-xs text-green-400 hover:bg-green-500/10 transition-colors border-b border-zinc-700/30",children:[(0,b.jsx)(E,{className:"w-3.5 h-3.5"}),(0,b.jsx)("span",{children:"New folder"})]}),p?.folders.length===0?(0,b.jsx)("div",{className:"py-3 px-3 text-[11px] text-zinc-500 text-center",children:"No subfolders"}):p?.folders.map(a=>(0,b.jsxs)("button",{onClick:()=>L(a.path),onDoubleClick:()=>K(a.path),className:"w-full flex items-center gap-2 px-3 py-1.5 text-xs text-white hover:bg-zinc-700 transition-colors",title:"Click to open, double-click to select",children:[(0,b.jsx)(D,{className:"w-3.5 h-3.5 text-amber-500/70"}),(0,b.jsx)("span",{className:"truncate",children:a.name})]},a.path))]})})]}):(0,b.jsx)("div",{className:"flex items-center justify-center py-6",children:(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-400"})}),(0,b.jsx)("div",{className:"border-t border-zinc-700/50 px-2 py-1 flex justify-end",children:(0,b.jsx)("button",{onClick:()=>g(!1),className:"text-[11px] text-zinc-500 hover:text-white px-2 py-0.5",children:"Close"})})]})]})}var J=a.i(1279),K=a.i(97498);function L({value:a,onChange:c}){let{hasNetwork:d}=(0,K.useTier)(),{data:e}=(0,J.useNodes)(d);return Array.isArray(e)&&0!==e.length?(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Node"}),(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(w.Globe,{className:"absolute left-3 top-1/2 -translate-y-1/2 w-3.5 h-3.5 text-zinc-500"}),(0,b.jsxs)("select",{value:a,onChange:a=>c(a.target.value),className:"w-full pl-8 pr-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white appearance-none",children:[(0,b.jsx)("option",{value:"",children:"Local (this machine)"}),e.map(a=>(0,b.jsx)("option",{value:a.id,disabled:"offline"===a.status,children:"offline"===a.status?`${a.name} (offline)`:a.name},a.id))]})]})]}):null}var M=a.i(79082),N=a.i(5699),O=a.i(59603),P=a.i(92759);let Q=(0,m.default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var R=a.i(33217),S=a.i(70025),T=a.i(37927);function U({workspaceId:a,panes:d,collapsed:e,onToggle:f}){let g,i,j,k,[m,n]=(0,c.useState)("messages"),[p,q]=(0,c.useState)(""),r=(0,c.useRef)(null),{data:s=[]}=(0,R.useQuery)({queryKey:["workspace-messages",a,void 0],queryFn:async()=>{let b=new URLSearchParams;return(await fetch((0,H.api)(`/api/workspaces/${a}/messages?${b}`))).json()},enabled:!!a,refetchInterval:3e3}),{data:t=[]}=(0,R.useQuery)({queryKey:["workspace-context",a],queryFn:async()=>(await fetch((0,H.api)(`/api/workspaces/${a}/context`))).json(),enabled:!!a}),u=(g=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async b=>(await fetch((0,H.api)(`/api/workspaces/${a}/messages`),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...b,senderName:b.senderName||"User",type:b.type||"message"})})).json(),onSuccess:()=>{g.invalidateQueries({queryKey:["workspace-messages",a]})}})),v=(i=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async({messageId:b,status:c})=>(await fetch((0,H.api)(`/api/workspaces/${a}/messages/${b}`),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:c})})).json(),onSuccess:()=>{i.invalidateQueries({queryKey:["workspace-messages",a]})}})),w=(j=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async()=>{await fetch((0,H.api)(`/api/workspaces/${a}/messages`),{method:"DELETE"})},onSuccess:()=>{j.invalidateQueries({queryKey:["workspace-messages",a]})}})),x=(k=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async()=>{await fetch((0,H.api)(`/api/workspaces/${a}/context`),{method:"DELETE"})},onSuccess:()=>{k.invalidateQueries({queryKey:["workspace-context",a]})}})),y=s.filter(a=>"pending_approval"===a.status).length;(0,c.useEffect)(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},[s]);let z=()=>{p.trim()&&a&&(u.mutate({content:p.trim()}),q(""))};return e?(0,b.jsxs)("button",{onClick:f,className:"flex-shrink-0 w-10 border-l border-zinc-800 bg-zinc-900 flex flex-col items-center pt-3 gap-2",children:[(0,b.jsx)(Q,{className:"w-4 h-4 text-zinc-400"}),(0,b.jsx)(h.MessageSquare,{className:"w-4 h-4 text-zinc-400"}),y>0&&(0,b.jsx)("span",{className:"bg-amber-500 text-black text-xs font-bold rounded-full w-5 h-5 flex items-center justify-center",children:y})]}):(0,b.jsxs)("div",{className:"flex-shrink-0 w-80 border-l border-zinc-800 bg-zinc-900 flex flex-col",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-zinc-800",children:[(0,b.jsxs)("div",{className:"flex gap-1",children:[(0,b.jsxs)("button",{onClick:()=>n("messages"),className:`px-2 py-1 text-xs rounded ${"messages"===m?"bg-zinc-700 text-white":"text-zinc-400 hover:text-zinc-300"}`,children:["Messages",y>0&&(0,b.jsx)("span",{className:"ml-1 bg-amber-500 text-black text-xs font-bold rounded-full px-1.5",children:y})]}),(0,b.jsx)("button",{onClick:()=>n("context"),className:`px-2 py-1 text-xs rounded ${"context"===m?"bg-zinc-700 text-white":"text-zinc-400 hover:text-zinc-300"}`,children:"Context"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("button",{onClick:()=>"messages"===m?w.mutate():x.mutate(),className:"text-zinc-500 hover:text-red-400",title:"messages"===m?"Clear all messages":"Clear all context",children:(0,b.jsx)(o.Trash2,{className:"w-3.5 h-3.5"})}),(0,b.jsx)("button",{onClick:f,className:"text-zinc-400 hover:text-zinc-300",children:(0,b.jsx)(l.ChevronRight,{className:"w-4 h-4"})})]})]}),"messages"===m&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{ref:r,className:"flex-1 overflow-y-auto p-2 space-y-2",children:[[...s].reverse().map(a=>(0,b.jsx)(V,{message:a,panes:d,onApprove:()=>v.mutate({messageId:a.id,status:"approved"}),onReject:()=>v.mutate({messageId:a.id,status:"rejected"})},a.id)),0===s.length&&(0,b.jsx)("p",{className:"text-zinc-500 text-xs text-center py-8",children:"No messages yet. Agents will appear here."})]}),(0,b.jsx)("div",{className:"border-t border-zinc-800 p-2",children:(0,b.jsxs)("div",{className:"flex gap-1",children:[(0,b.jsx)("input",{value:p,onChange:a=>q(a.target.value),onKeyDown:a=>"Enter"===a.key&&!a.shiftKey&&z(),placeholder:"Message workspace...",className:"flex-1 bg-zinc-800 border border-zinc-700 rounded px-2 py-1 text-sm text-zinc-200 placeholder-zinc-500 focus:outline-none focus:border-zinc-600"}),(0,b.jsx)("button",{onClick:z,disabled:!p.trim(),className:"px-2 py-1 bg-indigo-600 hover:bg-indigo-500 disabled:bg-zinc-700 disabled:text-zinc-500 rounded text-sm",children:(0,b.jsx)(P.Send,{className:"w-3.5 h-3.5"})})]})})]}),"context"===m&&(0,b.jsx)(W,{workspaceId:a,context:t})]})}function V({message:a,panes:c,onApprove:d,onReject:e}){let f=c.find(b=>b.id===a.paneId),g="pending_approval"===a.status,h="rejected"===a.status;return(0,b.jsxs)("div",{className:`rounded p-2 text-xs ${g?"bg-amber-950/50 border border-amber-800/50":h?"bg-zinc-800/50 opacity-50":"bg-zinc-800/50"}`,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,b.jsxs)("span",{className:"font-medium text-zinc-300",children:[f&&(0,b.jsx)("span",{className:"inline-block w-2 h-2 rounded-full mr-1",style:{backgroundColor:f.color||"#6366f1"}}),a.senderName]}),(0,b.jsx)("span",{className:"text-zinc-500",children:new Date(a.created).toLocaleTimeString()})]}),(0,b.jsx)("p",{className:"text-zinc-300 whitespace-pre-wrap",children:a.content}),g&&(0,b.jsxs)("div",{className:"flex gap-1 mt-2",children:[(0,b.jsxs)("button",{onClick:d,className:"flex items-center gap-1 px-2 py-0.5 bg-green-700 hover:bg-green-600 rounded text-white text-xs",children:[(0,b.jsx)(q.Check,{className:"w-3 h-3"})," Approve"]}),(0,b.jsxs)("button",{onClick:e,className:"flex items-center gap-1 px-2 py-0.5 bg-zinc-700 hover:bg-zinc-600 rounded text-zinc-300 text-xs",children:[(0,b.jsx)(r.X,{className:"w-3 h-3"})," Reject"]})]}),"rejected"===a.status&&(0,b.jsx)("span",{className:"text-red-400 text-xs mt-1 block",children:"Rejected"})]})}function W({workspaceId:a,context:d}){let e,f,[g,h]=(0,c.useState)(""),[i,j]=(0,c.useState)(""),k=(e=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async({key:b,value:c})=>(await fetch((0,H.api)(`/api/workspaces/${a}/context/${encodeURIComponent(b)}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:c})})).json(),onSuccess:()=>{e.invalidateQueries({queryKey:["workspace-context",a]})}})),l=(f=(0,T.useQueryClient)(),(0,S.useMutation)({mutationFn:async b=>{await fetch((0,H.api)(`/api/workspaces/${a}/context/${encodeURIComponent(b)}`),{method:"DELETE"})},onSuccess:()=>{f.invalidateQueries({queryKey:["workspace-context",a]})}})),m=()=>{g.trim()&&i.trim()&&(k.mutate({key:g.trim(),value:i.trim()}),h(""),j(""))};return(0,b.jsxs)("div",{className:"flex-1 overflow-y-auto p-2 space-y-2",children:[d.map(a=>(0,b.jsxs)("div",{className:"bg-zinc-800/50 rounded p-2 text-xs",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,b.jsx)("span",{className:"font-mono font-medium text-indigo-300",children:a.key}),(0,b.jsx)("button",{onClick:()=>l.mutate(a.key),className:"text-zinc-500 hover:text-red-400",children:(0,b.jsx)(r.X,{className:"w-3 h-3"})})]}),(0,b.jsx)("p",{className:"text-zinc-300 whitespace-pre-wrap font-mono text-xs",children:a.value}),(0,b.jsxs)("span",{className:"text-zinc-500 text-xs",children:["by ",a.updatedBy]})]},a.key)),(0,b.jsxs)("div",{className:"border-t border-zinc-800 pt-2 space-y-1",children:[(0,b.jsx)("input",{value:g,onChange:a=>h(a.target.value),placeholder:"Key",className:"w-full bg-zinc-800 border border-zinc-700 rounded px-2 py-1 text-xs text-zinc-200 placeholder-zinc-500 focus:outline-none"}),(0,b.jsx)("input",{value:i,onChange:a=>j(a.target.value),placeholder:"Value",onKeyDown:a=>"Enter"===a.key&&m(),className:"w-full bg-zinc-800 border border-zinc-700 rounded px-2 py-1 text-xs text-zinc-200 placeholder-zinc-500 focus:outline-none"}),(0,b.jsx)("button",{onClick:m,disabled:!g.trim()||!i.trim(),className:"w-full px-2 py-1 bg-indigo-600 hover:bg-indigo-500 disabled:bg-zinc-700 disabled:text-zinc-500 rounded text-xs",children:"Add Entry"})]})]})}var X=a.i(58037),Y=a.i(77156),Z=a.i(41379),$=a.i(33350);function _({workspaceId:a,workspaceName:e}){let[f,g]=(0,c.useState)(null),[h,i]=(0,c.useState)([]),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(""),[n,o]=(0,c.useState)(null);(0,c.useEffect)(()=>{Promise.all([fetch((0,H.api)(`/api/cortex/lobes/${a}`)).then(a=>{if(!a.ok)throw Error(`${a.status} ${a.statusText}`);return a.json()}),fetch((0,H.api)("/api/cortex/lobes")).then(a=>a.json()).catch(()=>({lobes:[]}))]).then(([b,c])=>{g(b.config??null),i((c.lobes||[]).filter(b=>b.workspaceId!==a))}).catch(a=>o(a.message||"Failed to load"))},[a]);let p=async b=>{if(f){g({...f,...b}),k(!0);try{let c=await fetch((0,H.api)(`/api/cortex/lobes/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json();d.config&&g(d.config)}catch{}finally{k(!1)}}},q=()=>{if(!f||!l.trim())return;let a=l.trim();f.tags.includes(a)||p({tags:[...f.tags,a]}),m("")};return n?(0,b.jsx)("div",{className:"text-[11px] text-red-400/80",children:n}):f?(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsx)("div",{className:"text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Knowledge Lobe"}),(0,b.jsxs)("button",{onClick:()=>p({isPrivate:!f.isPrivate}),disabled:j,className:"flex items-center gap-2 w-full text-left group disabled:opacity-50",children:[(0,b.jsx)("span",{className:`flex items-center justify-center w-4 h-4 rounded border transition-colors ${f.isPrivate?"bg-amber-500/20 border-amber-500/40 text-amber-400":"bg-zinc-800 border-zinc-700 text-zinc-500 group-hover:border-zinc-500"}`,children:f.isPrivate?(0,b.jsx)(Z.EyeOff,{className:"w-2.5 h-2.5"}):(0,b.jsx)(Y.Eye,{className:"w-2.5 h-2.5"})}),(0,b.jsx)("span",{className:"text-xs text-zinc-400 group-hover:text-zinc-300 transition-colors",children:f.isPrivate?"Private — hidden from other workspaces":"Visible to other workspaces"})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1 text-[10px] text-zinc-500",children:[(0,b.jsx)($.Tag,{className:"w-3 h-3"}),(0,b.jsx)("span",{children:"Topics"}),(0,b.jsx)("span",{className:"text-zinc-700 ml-1",children:"— Cortex uses these to scope knowledge retrieval"})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-1",children:[f.tags.map(a=>(0,b.jsxs)("span",{className:"flex items-center gap-1 px-1.5 py-0.5 bg-purple-500/10 border border-purple-500/20 rounded text-[11px] text-purple-300",children:[a,(0,b.jsx)("button",{onClick:()=>{f&&p({tags:f.tags.filter(b=>b!==a)})},className:"hover:text-red-400 transition-colors",children:(0,b.jsx)(r.X,{className:"w-2.5 h-2.5"})})]},a)),(0,b.jsxs)("span",{className:"flex items-center gap-0.5",children:[(0,b.jsx)("input",{type:"text",value:l,onChange:a=>m(a.target.value),onKeyDown:a=>{"Enter"===a.key&&q()},placeholder:"add topic...",className:"w-20 px-1.5 py-0.5 bg-zinc-800 border border-zinc-700 rounded text-[11px] text-zinc-300 placeholder-zinc-600 focus:outline-none focus:border-purple-500/50"}),l.trim()&&(0,b.jsx)("button",{onClick:q,className:"text-purple-400 hover:text-purple-300 transition-colors",children:(0,b.jsx)(d.Plus,{className:"w-3 h-3"})})]})]})]}),(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsxs)("div",{className:"text-[10px] text-zinc-500",children:["Domain Context",(0,b.jsx)("span",{className:"text-zinc-700 ml-1",children:"— injected into distillation prompts for better extraction"})]}),(0,b.jsx)("textarea",{value:f.domain_context||"",onChange:a=>p({domain_context:a.target.value}),placeholder:"Describe the domain expertise this lobe should focus on. E.g. 'This workspace covers CFB power plant engineering.'",rows:3,disabled:j,className:"w-full px-2 py-1.5 bg-zinc-800 border border-zinc-700 rounded text-[11px] text-zinc-300 placeholder-zinc-600 focus:outline-none focus:border-purple-500/50 resize-y disabled:opacity-50"})]}),h.length>0&&!f.isPrivate&&(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)("div",{className:"text-[10px] text-zinc-500",children:"Sibling access — uncheck to block a workspace from this lobe"}),(0,b.jsx)("div",{className:"space-y-0.5",children:h.map(a=>{let c=f.excludedFrom.includes(a.workspaceId);return(0,b.jsxs)("button",{onClick:()=>{var b;return b=a.workspaceId,void(!f||p({excludedFrom:f.excludedFrom.includes(b)?f.excludedFrom.filter(a=>a!==b):[...f.excludedFrom,b]}))},disabled:j,className:"flex items-center gap-2 w-full px-2 py-1 rounded text-left hover:bg-zinc-800/50 transition-colors disabled:opacity-50",children:[(0,b.jsx)("span",{className:`w-3 h-3 rounded-sm border flex items-center justify-center transition-colors ${c?"border-zinc-700 bg-zinc-800":"border-purple-500/50 bg-purple-500/20"}`,children:!c&&(0,b.jsx)("svg",{className:"w-2 h-2 text-purple-400",viewBox:"0 0 12 12",fill:"none",children:(0,b.jsx)("path",{d:"M2 6l3 3 5-5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,b.jsx)("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsx)("span",{className:`text-xs ${c?"text-zinc-600 line-through":"text-zinc-300"}`,children:a.name})]},a.workspaceId)})})]})]}):(0,b.jsx)("div",{className:"text-[11px] text-zinc-600",children:"Loading..."})}let aa=(0,m.default)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]);var ab=a.i(4720);let ac=(0,m.default)("file-code",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]]),ad=(0,m.default)("file-braces",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]]),ae=(0,m.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]),af=(0,m.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);var ag=a.i(52495);let ah=(0,m.default)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);var ai=a.i(73320);let aj="spaces-file-viewer",ak="spaces-file-viewer-state";function al(){try{let a=localStorage.getItem(ak);if(a)return JSON.parse(a)}catch{}return{x:0,y:0,w:800,h:600,wasPoppedOut:!1}}function am(a){try{let b=al();localStorage.setItem(ak,JSON.stringify({...b,...a}))}catch{}}function an(a){return a?({".ts":"text-blue-300",".tsx":"text-blue-300",".js":"text-yellow-300",".jsx":"text-yellow-300",".json":"text-green-300",".md":"text-zinc-300",".css":"text-pink-300",".scss":"text-pink-300",".html":"text-orange-300",".xml":"text-orange-300",".py":"text-emerald-300",".rb":"text-red-300",".go":"text-cyan-300",".rs":"text-orange-300",".sh":"text-green-300",".bash":"text-green-300",".yml":"text-purple-300",".yaml":"text-purple-300",".sql":"text-blue-200",".graphql":"text-pink-200"})[a]||"text-zinc-300":""}function ao({item:a}){if(a.isDir)return(0,b.jsx)(D,{className:"w-3.5 h-3.5 text-amber-500/70 flex-shrink-0"});let c=a.ext||"";return[".png",".jpg",".jpeg",".gif",".webp",".svg",".ico",".bmp"].includes(c)?(0,b.jsx)(ae,{className:"w-3.5 h-3.5 text-emerald-400/70 flex-shrink-0"}):[".ts",".tsx",".js",".jsx",".py",".rb",".go",".rs"].includes(c)?(0,b.jsx)(ac,{className:"w-3.5 h-3.5 text-blue-400/70 flex-shrink-0"}):".json"===c?(0,b.jsx)(ad,{className:"w-3.5 h-3.5 text-green-400/70 flex-shrink-0"}):[".md",".txt",".yml",".yaml"].includes(c)?(0,b.jsx)(ab.FileText,{className:"w-3.5 h-3.5 text-zinc-400/70 flex-shrink-0"}):(0,b.jsx)(aa,{className:"w-3.5 h-3.5 text-zinc-500/70 flex-shrink-0"})}function ap(a){return a<1024?`${a}B`:a<1048576?`${(a/1024).toFixed(1)}KB`:`${(a/1048576).toFixed(1)}MB`}function aq({onClose:a,navigateTo:d}){let[e,f]=(0,c.useState)([]),[g,h]=(0,c.useState)(""),[i,j]=(0,c.useState)(""),[k,l]=(0,c.useState)([]),[m,n]=(0,c.useState)(null),[o,p]=(0,c.useState)(new Set),[q,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(!1),[w,x]=(0,c.useState)(!1),y=(0,c.useRef)(null),z=(0,c.useRef)(null),A=(0,c.useRef)(null),B=(0,c.useRef)(!0);(0,c.useEffect)(()=>(B.current=!0,z.current=new BroadcastChannel(aj),z.current.onmessage=a=>{a.data?.type==="pop-in"&&(am({wasPoppedOut:!1}),x(!1),y.current=null,A.current&&(clearInterval(A.current),A.current=null))},()=>{B.current=!1,z.current?.close(),A.current&&clearInterval(A.current)}),[]),(0,c.useEffect)(()=>{fetch((0,H.api)("/api/config")).then(a=>a.json()).then(a=>{let b=a.devDirectories||[];f(b),b.length>0&&!g&&(h(b[0]),j(b[0]))}).catch(()=>{})},[]),(0,c.useEffect)(()=>{if(!d)return;let a=e.find(a=>d===a||d.startsWith(a+"/")||d.startsWith(a+"\\"));a?h(a):h(d),j(d),p(new Set)},[d,e]),(0,c.useEffect)(()=>{if(w&&q&&z.current)try{z.current.postMessage({type:"file-update",file:q})}catch{}},[q,w]);let C=(0,c.useRef)(!1);(0,c.useEffect)(()=>{C.current=!1;let a=al();a.wasPoppedOut&&a.lastFilePath&&fetch((0,H.api)(`/api/files?file=${encodeURIComponent(a.lastFilePath)}`)).then(a=>a.json()).then(a=>{a&&!a.error&&(s(a),C.current||(C.current=!0,setTimeout(()=>F(a),50)))}).catch(()=>{})},[]),(0,c.useEffect)(()=>()=>{if(y.current&&!y.current.closed){am({wasPoppedOut:!0});try{y.current.close()}catch{}}A.current&&(clearInterval(A.current),A.current=null)},[]);let D=(0,c.useCallback)(async a=>{try{let b=await fetch((0,H.api)(`/api/files?path=${encodeURIComponent(a)}`)),c=await b.json();return{items:c.items||[],parent:c.parent||null}}catch{return{items:[],parent:null}}},[]);(0,c.useEffect)(()=>{i&&(u(!0),D(i).then(a=>{l(a.items),n(a.parent),u(!1)}))},[i,D]);let E=async a=>{if(a.isDir)p(b=>{let c=new Set(b);return c.has(a.path)?c.delete(a.path):c.add(a.path),c});else try{let b=await fetch((0,H.api)(`/api/files?file=${encodeURIComponent(a.path)}`)),c=await b.json();s(c),am({lastFilePath:a.path})}catch{s({name:a.name,path:a.path,size:0,ext:a.ext||"",error:"Failed to load"})}},F=a=>{let b=al(),c=b.w||800,d=b.h||600,e=b.x||window.screenX+(window.outerWidth-c)/2,f=b.y||window.screenY+(window.outerHeight-d)/2,g=window.open("about:blank","spaces-file-viewer",`width=${c},height=${d},left=${e},top=${f}`);if(g){var h;y.current=g,x(!0),am({wasPoppedOut:!0}),h=a.name,g.document.write(`<!DOCTYPE html><html><head><title>${h} — Spaces</title>
2
2
  <style>
3
3
  * { margin: 0; padding: 0; box-sizing: border-box; }
4
4
  body { background: #0a0a0a; color: #e4e4e7; font-family: system-ui, sans-serif; overflow: auto; }
@@ -82,6 +82,6 @@ module.exports=[66490,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(15618
82
82
  if (e.data?.type === 'file-update') renderFile(e.data.file);
83
83
  if (e.data?.type === 'close-popup') { savePos(); window.close(); }
84
84
  };
85
- </script></body></html>`),g.document.close(),setTimeout(()=>{z.current?.postMessage({type:"file-update",file:a})},100),A.current&&clearInterval(A.current),A.current=setInterval(()=>{y.current?.closed&&(am({wasPoppedOut:!1}),B.current&&x(!1),y.current=null,A.current&&(clearInterval(A.current),A.current=null))},500)}},G=(0,c.useRef)(null),[I,J]=(0,c.useState)(!1),[K,L]=(0,c.useState)(!1),M=async a=>{if(i&&0!==a.length){J(!0);try{let b=new FormData;for(let c of(b.append("dir",i),Array.from(a)))b.append("files",c);await fetch((0,H.api)("/api/files"),{method:"POST",body:b});let c=await D(i);l(c.items)}catch{}finally{J(!1)}}},N=g?i.replace(g,"").replace(/^[/\\]/,""):"",O=N?N.split(/[/\\]/):[],P=q&&!w,Q=m&&i!==g;return g?(0,b.jsxs)("div",{className:"h-full flex flex-col bg-zinc-950 border-r border-zinc-800",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-zinc-800/50 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Files"}),(0,b.jsx)("button",{onClick:a,className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",children:(0,b.jsx)(r.X,{className:"w-3.5 h-3.5"})})]}),e.length>1&&(0,b.jsx)("div",{className:"flex items-center gap-1 px-3 py-1.5 border-b border-zinc-800/30 flex-shrink-0 overflow-x-auto",children:e.map(a=>{let c=a.split(/[/\\]/).pop()||a,d=a===g;return(0,b.jsx)("button",{onClick:()=>{h(a),j(a),p(new Set),s(null)},className:`px-2 py-0.5 text-[10px] rounded transition-colors flex-shrink-0 ${d?"bg-amber-500/15 text-amber-400 border border-amber-500/30":"text-zinc-500 hover:text-zinc-300 border border-transparent"}`,title:a,children:c},a)})}),(0,b.jsxs)("div",{className:"flex items-center gap-1 px-3 py-1.5 border-b border-zinc-800/30 overflow-x-auto text-[10px] flex-shrink-0",children:[Q&&(0,b.jsx)("button",{onClick:()=>{m&&i!==g&&j(m)},className:"text-zinc-500 hover:text-zinc-300 flex-shrink-0",children:(0,b.jsx)(af,{className:"w-3 h-3"})}),(0,b.jsx)("input",{ref:G,type:"file",multiple:!0,className:"hidden",onChange:a=>{a.target.files&&M(a.target.files),a.target.value=""}}),(0,b.jsx)("button",{onClick:()=>G.current?.click(),className:"text-zinc-600 hover:text-zinc-300 flex-shrink-0 ml-auto",title:"Upload files to current directory",children:(0,b.jsx)(ai,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>j(g),className:"text-zinc-500 hover:text-zinc-300 truncate flex-shrink-0",children:g.split(/[/\\]/).pop()}),O.map((a,c)=>(0,b.jsxs)("span",{className:"flex items-center gap-1 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-zinc-700",children:"/"}),(0,b.jsx)("button",{onClick:()=>{j(g+"/"+O.slice(0,c+1).join("/"))},className:"text-zinc-500 hover:text-zinc-300",children:a})]},c))]}),w&&q&&(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 border-b border-zinc-800/30 bg-zinc-900/50 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500",children:"Viewing:"}),(0,b.jsx)("span",{className:"text-[10px] text-zinc-400 font-mono truncate flex-1",children:q.name}),(0,b.jsx)("button",{onClick:()=>{am({wasPoppedOut:!1}),y.current&&!y.current.closed&&y.current.close(),y.current=null,x(!1),A.current&&(clearInterval(A.current),A.current=null)},className:"text-zinc-500 hover:text-zinc-300 transition-colors",title:"Pop back into panel",children:(0,b.jsx)(v,{className:"w-3 h-3"})})]}),(0,b.jsxs)("div",{className:"flex-1 flex flex-col min-h-0 overflow-hidden",children:[(0,b.jsx)("div",{className:`overflow-y-auto ${P?"max-h-[40%] border-b border-zinc-800/30":"flex-1"} ${K?"ring-2 ring-inset ring-amber-500/50 bg-amber-500/5":""}`,onDragOver:a=>{a.preventDefault(),L(!0)},onDragLeave:()=>L(!1),onDrop:a=>{a.preventDefault(),L(!1),a.dataTransfer.files.length>0&&M(a.dataTransfer.files)},children:I?(0,b.jsx)("div",{className:"p-3 text-xs text-amber-400",children:"Uploading..."}):t?(0,b.jsx)("div",{className:"p-3 text-xs text-zinc-600",children:"Loading..."}):0===k.length?(0,b.jsx)("div",{className:"p-3 text-xs text-zinc-600",children:"Empty directory"}):(0,b.jsx)("div",{className:"py-1",children:k.map(a=>(0,b.jsx)(as,{item:a,depth:0,expanded:o.has(a.path),expandedDirs:o,onClick:E,loadDir:D,activeFile:q?.path},a.path))})}),P&&(0,b.jsxs)("div",{className:"flex-1 flex flex-col min-h-0 overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-1.5 border-b border-zinc-800/30 flex-shrink-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[(0,b.jsx)("span",{className:`text-xs font-mono truncate ${an(q.ext)}`,children:q.name}),(0,b.jsx)("span",{className:"text-[9px] text-zinc-600",children:q.lines?`${q.lines} lines`:ap(q.size)}),q.truncated&&(0,b.jsx)("span",{className:"text-[9px] text-amber-500",children:"(truncated)"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("button",{onClick:()=>{var a,b;let c;return q&&(a=q.path,b=q.name,void((c=document.createElement("a")).href=(0,H.api)(`/api/files?raw=${encodeURIComponent(a)}`),c.download=b,c.click()))},className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",title:"Download file",children:(0,b.jsx)(ah,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>{q&&F(q)},className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",title:"Open in new window",children:(0,b.jsx)(ag.ExternalLink,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>s(null),className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",children:(0,b.jsx)(r.X,{className:"w-3 h-3"})})]})]}),(0,b.jsx)("div",{className:"flex-1 overflow-auto",children:(0,b.jsx)(ar,{file:q})})]})]})]}):(0,b.jsxs)("div",{className:"h-full flex flex-col bg-zinc-950 border-r border-zinc-800",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-zinc-800/50 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Files"}),(0,b.jsx)("button",{onClick:a,className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",children:(0,b.jsx)(r.X,{className:"w-3.5 h-3.5"})})]}),(0,b.jsx)("div",{className:"p-3 text-xs text-zinc-500",children:0===e.length?"No development directories configured. Add them in Settings.":"Loading..."})]})}function ar({file:a}){return a.error?(0,b.jsx)("div",{className:"p-3 text-xs text-red-400",children:a.error}):a.image&&a.rawUrl?(0,b.jsx)("div",{className:"flex items-center justify-center p-4 min-h-[200px]",children:(0,b.jsx)("img",{src:(0,H.api)(a.rawUrl),alt:a.name,className:"max-w-full max-h-[60vh] object-contain rounded"})}):a.image&&a.tooLarge?(0,b.jsxs)("div",{className:"p-3 text-xs text-zinc-500",children:["Image too large (",ap(a.size),")"]}):a.pdf&&a.rawUrl?(0,b.jsx)("iframe",{src:(0,H.api)(a.rawUrl),className:"w-full h-full border-none",title:a.name}):a.binary?(0,b.jsxs)("div",{className:"p-3 text-xs text-zinc-500",children:["Binary file (",a.ext,", ",ap(a.size),")"]}):void 0!==a.content?(0,b.jsx)("pre",{className:"text-[11px] leading-4 font-mono p-0 m-0",children:(0,b.jsx)("table",{className:"border-collapse w-full",children:(0,b.jsx)("tbody",{children:a.content.split("\n").map((c,d)=>(0,b.jsxs)("tr",{className:"hover:bg-zinc-800/30",children:[(0,b.jsx)("td",{className:"text-right pr-3 pl-3 text-zinc-700 select-none w-[1%] whitespace-nowrap",children:d+1}),(0,b.jsx)("td",{className:`pr-3 whitespace-pre ${an(a.ext)}`,children:c||" "})]},d))})})}):null}function as({item:a,depth:d,expanded:e,expandedDirs:f,onClick:g,loadDir:h,activeFile:i}){let[j,m]=(0,c.useState)(null);(0,c.useEffect)(()=>{e&&a.isDir&&!j&&h(a.path).then(a=>m(a.items))},[e,a.isDir,a.path,j,h]);let n=i===a.path;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("button",{onClick:()=>g(a),className:`flex items-center gap-1.5 w-full text-left px-2 py-[3px] text-[11px] transition-colors ${n?"bg-indigo-500/10 text-indigo-300":"text-zinc-400 hover:bg-zinc-800/50 hover:text-zinc-200"}`,style:{paddingLeft:`${8+14*d}px`},children:[a.isDir?e?(0,b.jsx)(k.ChevronDown,{className:"w-3 h-3 text-zinc-600 flex-shrink-0"}):(0,b.jsx)(l.ChevronRight,{className:"w-3 h-3 text-zinc-600 flex-shrink-0"}):(0,b.jsx)("span",{className:"w-3 flex-shrink-0"}),(0,b.jsx)(ao,{item:a}),(0,b.jsx)("span",{className:"truncate",children:a.name})]}),e&&a.isDir&&j&&j.map(a=>(0,b.jsx)(as,{item:a,depth:d+1,expanded:f.has(a.path),expandedDirs:f,onClick:g,loadDir:h,activeFile:i},a.path))]})}function at(){return(0,b.jsx)(M.TotpGate,{children:a=>(0,b.jsx)(au,{terminalToken:a})})}function au({terminalToken:a}){let m=(0,A.useRouter)(),{basePath:D,hasNetwork:E,hasCollaboration:F,hasCortex:G}=(0,K.useTier)(),[J,M]=(0,c.useState)([]),[P,Q]=(0,c.useState)(!0),[R,S]=(0,c.useState)(!0),[V,W]=(0,c.useState)(!1),[Y,Z]=(0,c.useState)(null),[$,aa]=(0,c.useState)(new Set),[ab,ac]=(0,c.useState)(!1),[ad,ae]=(0,c.useState)(!0);!function(){let a=(0,T.useQueryClient)(),{hasCollaboration:b}=(0,K.useTier)();(0,c.useEffect)(()=>{if(!b)return;let c=new EventSource((0,H.api)("/api/events")),d=()=>{a.invalidateQueries({queryKey:["workspace-messages"]})},e=()=>{a.invalidateQueries({queryKey:["workspace-context"]})};return c.addEventListener("workspace:message",d),c.addEventListener("workspace:request",d),c.addEventListener("workspace:context_updated",e),()=>{c.removeEventListener("workspace:message",d),c.removeEventListener("workspace:request",d),c.removeEventListener("workspace:context_updated",e),c.close()}},[a,b])}();let[af,ag]=(0,c.useState)([]),[ah,ai]=(0,c.useState)(null),[aj,ak]=(0,c.useState)(!1),[al,am]=(0,c.useState)(!1),[an,ao]=(0,c.useState)(""),[ap,ar]=(0,c.useState)("#6366f1"),[as,at]=(0,c.useState)(null),[au,av]=(0,c.useState)(""),[aw,ax]=(0,c.useState)(null),[ay,az]=(0,c.useState)(!1),[aA,aB]=(0,c.useState)(null),aC=(0,c.useCallback)(a=>{aB(a),az(!0)},[]),[aD,aE]=(0,c.useState)(""),[aF,aG]=(0,c.useState)(""),[aH,aI]=(0,c.useState)("#6366f1"),[aJ,aK]=(0,c.useState)(""),[aL,aM]=(0,c.useState)("claude"),[aN,aO]=(0,c.useState)("new"),[aP,aQ]=(0,c.useState)(""),[aR,aS]=(0,c.useState)(""),aT=(0,O.useRemoteWorkspaces)(),[aU,aV]=(0,c.useState)(new Set),aW=(0,c.useCallback)(a=>{aV(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},[]),[aX,aY]=(0,c.useState)(""),[aZ,a$]=(0,c.useState)([]),[a_,a0]=(0,c.useState)(!1),[a1,a2]=(0,c.useState)(!1),[a3,a4]=(0,c.useState)(null),[a5,a6]=(0,c.useState)(!0),a7=(0,c.useRef)(null),a8=(0,c.useRef)(null),a9=(0,c.useRef)(null),ba=(0,c.useCallback)(async()=>{let a=await fetch((0,H.api)("/api/workspaces")),b=await a.json();ag(b);let c=b.find(a=>a.isActive);return ai(c||null),S(!1),c||null},[]),bb=(0,c.useCallback)(async()=>{let a=await fetch((0,H.api)("/api/panes")),b=await a.json();M(b);let c=new Set;for(let a of b)a.isPopout&&c.add(a.id);aa(c),Q(!1)},[]);(0,c.useEffect)(()=>{ba()},[ba]),(0,c.useEffect)(()=>{ab&&bb()},[ab,bb]),(0,c.useEffect)(()=>{let a=new BroadcastChannel("spaces-panes");return a9.current=a,a.onmessage=a=>{let b=a.data;"popout-opened"===b.type?aa(a=>new Set(a).add(b.paneId)):"popout-closed"===b.type?(aa(a=>{let c=new Set(a);return c.delete(b.paneId),c}),M(a=>a.map(a=>a.id===b.paneId?{...a,isPopout:!1}:a))):"pane-updated"===b.type&&M(a=>a.map(a=>a.id===b.paneId?{...a,...b.data}:a))},()=>a.close()},[bb]);let[bc,bd]=(0,c.useState)(0);(0,c.useEffect)(()=>{if(!P)for(let a of J)a.isPopout&&bi(a)},[P,bc]),(0,c.useEffect)(()=>{if("claude"!==aL||"resume"!==aN)return;a0(!0);let a=setTimeout(()=>{let a=new URLSearchParams({sortBy:"modified",sortDir:"DESC",limit:"200"});aX&&a.set("search",aX),a5&&aF&&a.set("projectPath",aF),a.set("agentType",aL),fetch((0,H.api)(`/api/sessions?${a}`)).then(a=>a.json()).then(a=>{a$(a.sessions||[]),a0(!1)}).catch(()=>a0(!1))},300*!!aX);return()=>clearTimeout(a)},[aL,aN,aX,a5,aF]),(0,c.useEffect)(()=>{function a(a){a7.current&&!a7.current.contains(a.target)&&a2(!1),a8.current&&!a8.current.contains(a.target)&&ak(!1)}return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[]);let be=(0,c.useCallback)(async()=>{let a,b=N.AGENT_TYPES[aL],c=aF||a3?.projectPath||"/";"shell"!==aL&&(a="resume"===aN&&b?.supportsResume?a3?.sessionId||aJ:"new");let d=aD||(a3?a3.customName||a3.firstPrompt?.slice(0,50)||b?.name||"Agent":"")||("shell"===aL?"Terminal":b?.name||"Agent"),e=ah?.collaboration&&"shell"!==aL,f=await fetch((0,H.api)("/api/panes"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:d,color:aH,cwd:c,claudeSessionId:a,agentType:aL,customCommand:"custom"===aL?aP:void 0,nodeId:aR||void 0,isCollaborating:e||void 0})}),g=await f.json();M(a=>[...a,g]),(0,X.track)("pane_created",{agentType:aL}),W(!1),aE(""),aG(""),aI("#6366f1"),aK(""),aM("shell"),aO("new"),aQ(""),aS(""),a4(null),aY("")},[aD,aF,aH,aJ,aL,aN,aP,aR,a3]),bf=(0,c.useCallback)(async a=>{let b=J.find(b=>b.id===a);await fetch((0,H.api)(`/api/panes/${a}`),{method:"DELETE"}),M(b=>b.filter(b=>b.id!==a)),b&&(0,X.track)("pane_closed",{agentType:b.agentType}),Y===a&&Z(null),aa(b=>{let c=new Set(b);return c.delete(a),c})},[Y,J]),bg=(0,c.useCallback)(async(a,b)=>{await fetch((0,H.api)(`/api/panes/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),M(c=>c.map(c=>c.id===a?{...c,...b}:c))},[]),bh=(0,c.useCallback)(a=>{Z(b=>b===a?null:a)},[]),bi=(0,c.useCallback)(a=>{let b=a.winWidth||900,c=a.winHeight||600,d=a.winX??Math.round(screen.width/2-b/2),e=a.winY??Math.round(screen.height/2-c/2),f=`left=${d},top=${e},width=${b},height=${c},menubar=no,toolbar=no,location=no,status=no`;window.open((0,H.api)(`/terminal/pane/${a.id}`),`spaces-pane-${a.id}`,f),aa(b=>new Set(b).add(a.id)),fetch((0,H.api)(`/api/panes/${a.id}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isPopout:!0,winX:d,winY:e,winWidth:b,winHeight:c})})},[]),bj=(0,c.useCallback)(a=>{let b=J.find(b=>b.id===a);b&&bi(b)},[J,bi]),bk=(0,c.useCallback)(async a=>{a9.current?.postMessage({type:"close-popouts"}),await fetch((0,H.api)(`/api/panes/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isPopout:!1})}),aa(b=>{let c=new Set(b);return c.delete(a),c})},[]),bl=(0,c.useCallback)(()=>{$.size>0&&(a9.current?.postMessage({type:"close-popouts"}),aa(new Set))},[$]),bm=(0,c.useCallback)(async a=>{bl(),await fetch((0,H.api)("/api/workspaces"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"switch",workspaceId:a})}),Z(null),await ba(),await bb(),ak(!1),ab?(0,X.track)("workspace_switched"):(0,X.track)("workspace_entered"),ac(!0),bd(a=>a+1)},[ba,bb,bl,ab]),bn=(0,c.useCallback)(async()=>{an.trim()&&ah&&(await fetch((0,H.api)("/api/workspaces"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"duplicate",sourceId:ah.id,name:an.trim(),color:ap})}),ao(""),ar("#6366f1"),am(!1),await ba())},[an,ap,ah,ba]),bo=(0,c.useCallback)(async()=>{let a=await fetch((0,H.api)("/api/workspaces"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:"New Space",color:"#6366f1"})}),b=await a.json();(0,X.track)("workspace_created"),await bm(b.id)},[bm]),bp=(0,c.useCallback)(async a=>{bl(),await fetch((0,H.api)(`/api/workspaces/${a}`),{method:"DELETE"}),(0,X.track)("workspace_deleted"),await ba(),await bb(),ak(!1)},[ba,bb,bl]),bq=(0,c.useCallback)(()=>{bl(),M([]),ac(!1)},[bl]),br=(0,c.useCallback)(async(a,b)=>{await fetch((0,H.api)(`/api/workspaces/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}),at(null),await ba()},[ba]),bs=J.filter(a=>!$.has(a.id));return ab?P?(0,b.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,b.jsx)(e.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):(0,b.jsxs)("div",{className:"h-screen flex flex-col bg-zinc-950 text-zinc-100",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b border-zinc-800 flex-shrink-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("button",{onClick:bq,className:"p-1.5 -ml-1 text-zinc-500 hover:text-white hover:bg-zinc-800 rounded-md transition-colors",title:"Close space and go home",children:(0,b.jsx)(t.Home,{className:"w-4 h-4"})}),(0,b.jsx)("div",{className:"w-px h-4 bg-zinc-800"}),(0,b.jsx)("h1",{className:"text-sm font-semibold",children:"Spaces"}),(0,b.jsxs)("div",{ref:a8,className:"relative",children:[(0,b.jsxs)("button",{onClick:()=>ak(!aj),className:"flex items-center gap-1.5 px-2.5 py-1 text-xs bg-zinc-800 border border-zinc-700 rounded-md hover:border-zinc-600 transition-colors",children:[ah&&(0,b.jsx)("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:ah.color}}),(0,b.jsx)("span",{className:"max-w-[150px] truncate",children:ah?.name||"No space"}),(0,b.jsx)(k.ChevronDown,{className:"w-3 h-3 text-zinc-500"})]}),aj&&(0,b.jsxs)("div",{className:"absolute z-50 top-full left-0 mt-1 w-72 bg-zinc-800 border border-zinc-700 rounded-md shadow-xl overflow-hidden",children:[(0,b.jsx)("div",{className:"p-2 border-b border-zinc-700/50 text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Switch Space"}),(0,b.jsx)("div",{className:"max-h-[300px] overflow-y-auto",children:af.map(a=>(0,b.jsx)("div",{className:"flex items-center gap-2 hover:bg-zinc-700/50 transition-colors group",children:as===a.id?(0,b.jsxs)("div",{className:"flex items-center gap-1 flex-1 px-3 py-2",children:[(0,b.jsx)("input",{autoFocus:!0,value:au,onChange:a=>av(a.target.value),onKeyDown:b=>{"Enter"===b.key&&br(a.id,au),"Escape"===b.key&&at(null)},className:"flex-1 bg-transparent border border-zinc-600 rounded px-1.5 py-0.5 text-xs focus:outline-none focus:border-indigo-400"}),(0,b.jsx)("button",{onClick:()=>br(a.id,au),className:"text-green-400 hover:text-green-300",children:(0,b.jsx)(q.Check,{className:"w-3 h-3"})})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("button",{onClick:()=>bm(a.id),className:"flex items-center gap-2 flex-1 px-3 py-2 text-left",children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsx)("span",{className:"text-xs text-white truncate flex-1",children:a.name}),(0,b.jsxs)("span",{className:"text-[10px] text-zinc-500",children:[a.paneCount||0," panes"]}),a.isActive&&(0,b.jsx)("span",{className:"text-[10px] text-indigo-400",children:"active"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-0.5 pr-2 opacity-0 group-hover:opacity-100",children:[(0,b.jsx)("button",{onClick:b=>{b.stopPropagation(),at(a.id),av(a.name)},className:"p-1 text-zinc-500 hover:text-white rounded",title:"Rename",children:(0,b.jsx)(p.Pencil,{className:"w-2.5 h-2.5"})}),!a.isActive&&af.length>1&&(0,b.jsx)("button",{onClick:b=>{b.stopPropagation(),confirm(`Delete space "${a.name}" and all its panes?`)&&bp(a.id)},className:"p-1 text-zinc-500 hover:text-red-400 rounded",title:"Delete",children:(0,b.jsx)(o.Trash2,{className:"w-2.5 h-2.5"})})]})]})},a.id))}),(0,b.jsxs)("div",{className:"border-t border-zinc-700/50 p-1.5 flex gap-1",children:[(0,b.jsxs)("button",{onClick:bo,className:"flex items-center gap-1.5 px-2.5 py-1.5 text-[11px] text-zinc-400 hover:text-white hover:bg-zinc-700 rounded transition-colors flex-1",children:[(0,b.jsx)(d.Plus,{className:"w-3 h-3"})," New Empty"]}),(0,b.jsxs)("button",{onClick:()=>{am(!0),ak(!1)},className:"flex items-center gap-1.5 px-2.5 py-1.5 text-[11px] text-zinc-400 hover:text-white hover:bg-zinc-700 rounded transition-colors flex-1",children:[(0,b.jsx)(s.Copy,{className:"w-3 h-3"})," Duplicate Current"]})]})]})]}),(0,b.jsxs)("span",{className:"text-[11px] text-zinc-500",children:[bs.length," pane",1!==bs.length?"s":"",$.size>0&&` + ${$.size} popped out`]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)("button",{onClick:()=>az(!ay),className:`flex items-center gap-1.5 px-2.5 py-1.5 text-xs rounded-md border transition-colors ${ay?"border-amber-500/50 bg-amber-600/20 text-amber-400":"border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,title:ay?"Hide file explorer":"Show file explorer",children:[(0,b.jsx)(i.FolderOpen,{className:"w-3.5 h-3.5"}),"Files"]}),F&&ah&&(0,b.jsxs)("button",{onClick:async()=>{let a=!ah.collaboration;for(let b of(await fetch((0,H.api)(`/api/workspaces/${ah.id}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({collaboration:a})}),ai(b=>b?{...b,collaboration:a}:b),ag(b=>b.map(b=>b.id===ah.id?{...b,collaboration:a}:b)),J.filter(a=>a.workspaceId===ah.id&&"shell"!==a.agentType)))b.isCollaborating!==a&&await bg(b.id,{isCollaborating:a})},className:`flex items-center gap-1.5 px-2.5 py-1.5 text-xs rounded-md border transition-colors ${ah.collaboration?"border-indigo-500/50 bg-indigo-600/20 text-indigo-400":"border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,title:ah.collaboration?"Collaboration enabled — click to disable":"Enable collaboration for this workspace",children:[(0,b.jsx)(y.Users,{className:"w-3.5 h-3.5"}),"Collab"]}),(0,b.jsxs)("button",{onClick:bq,className:"flex items-center gap-1.5 px-3 py-1.5 text-xs border border-zinc-700 text-zinc-400 rounded-md hover:text-white hover:border-zinc-600 transition-colors",title:"Close space and return home",children:[(0,b.jsx)(u,{className:"w-3.5 h-3.5"}),"Close"]}),(0,b.jsxs)("button",{onClick:()=>W(!0),className:"flex items-center gap-1.5 px-3 py-1.5 text-xs bg-indigo-600 text-white rounded-md hover:bg-indigo-500 transition-colors",children:[(0,b.jsx)(d.Plus,{className:"w-3.5 h-3.5"}),"Add Pane"]})]})]}),al&&(0,b.jsx)("div",{className:"border-b border-zinc-800 bg-zinc-900 px-4 py-3",children:(0,b.jsxs)("div",{className:"max-w-md flex items-center gap-2",children:[(0,b.jsx)(n,{className:"w-4 h-4 text-indigo-400 flex-shrink-0"}),(0,b.jsx)("input",{autoFocus:!0,type:"text",placeholder:"New space name...",value:an,onChange:a=>ao(a.target.value),onKeyDown:a=>"Enter"===a.key&&bn(),className:"flex-1 px-3 py-1.5 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white"}),(0,b.jsx)(C.ColorPicker,{value:ap,onChange:ar}),(0,b.jsx)("button",{onClick:bn,disabled:!an.trim(),className:"px-3 py-1.5 text-xs bg-indigo-600 text-white rounded-md hover:bg-indigo-500 disabled:opacity-50",children:"Save"}),(0,b.jsx)("button",{onClick:()=>am(!1),className:"p-1.5 text-zinc-400 hover:text-white",children:(0,b.jsx)(r.X,{className:"w-4 h-4"})})]})}),V&&(0,b.jsx)("div",{className:"border-b border-zinc-800 bg-zinc-900 px-4 py-4",children:(0,b.jsxs)("div",{className:"max-w-lg space-y-3",children:[(0,b.jsx)("h3",{className:"text-sm font-semibold",children:"Add Pane"}),(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Agent"}),(0,b.jsx)("div",{className:"grid grid-cols-3 gap-1.5",children:N.AGENT_LIST.map(a=>(0,b.jsxs)("button",{onClick:()=>{aM(a.id),aO("new"),a4(null),aK("")},className:`flex items-center gap-2 px-3 py-2 rounded-md border text-left transition-colors ${aL===a.id?"border-indigo-500 bg-indigo-600/20 text-white":"border-zinc-700 text-zinc-400 hover:text-white hover:border-zinc-600"}`,children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("div",{className:"text-xs font-medium truncate",children:a.name}),(0,b.jsx)("div",{className:"text-[10px] text-zinc-500 truncate",children:a.description})]})]},a.id))})]}),N.AGENT_TYPES[aL]?.supportsResume&&(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("button",{onClick:()=>{aO("new"),a4(null),aK("")},className:`px-3 py-1.5 text-xs rounded-md border transition-colors ${"new"===aN?"bg-indigo-600 border-indigo-500 text-white":"border-zinc-700 text-zinc-400 hover:text-white hover:border-zinc-600"}`,children:"New Session"}),(0,b.jsx)("button",{onClick:()=>aO("resume"),className:`px-3 py-1.5 text-xs rounded-md border transition-colors ${"resume"===aN?"bg-indigo-600 border-indigo-500 text-white":"border-zinc-700 text-zinc-400 hover:text-white hover:border-zinc-600"}`,children:"Resume Session"})]}),"custom"===aL&&(0,b.jsx)("input",{type:"text",placeholder:"Command to run (e.g. python agent.py)",value:aP,onChange:a=>aQ(a.target.value),className:"w-full px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white font-mono"}),(0,b.jsx)(L,{value:aR,onChange:aS}),(0,b.jsx)("input",{type:"text",placeholder:"Title (optional)",value:aD,onChange:a=>aE(a.target.value),className:"w-full px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white"}),aR?(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Working directory (on remote node)"}),(0,b.jsx)("input",{type:"text",placeholder:"e.g. /home/user/project or ~ for home",value:aF,onChange:a=>aG(a.target.value),className:"w-full px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white font-mono"})]}):(0,b.jsx)(I,{value:aF,onChange:aG}),"claude"===aL&&"resume"===aN&&(0,b.jsxs)("div",{ref:a7,className:"relative",children:[a3?(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md",children:[(0,b.jsx)(h.MessageSquare,{className:"w-3.5 h-3.5 text-indigo-400 flex-shrink-0"}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-white truncate",children:a3.customName||a3.firstPrompt?.slice(0,60)||"Untitled"}),(0,b.jsxs)("div",{className:"text-[10px] text-zinc-500 flex items-center gap-2",children:[(0,b.jsx)("span",{children:a3.projectName}),(0,b.jsxs)("span",{children:[a3.messageCount," msgs"]}),(0,b.jsxs)("span",{className:"font-mono",children:[a3.sessionId.slice(0,8),"..."]})]})]}),(0,b.jsx)("button",{onClick:()=>{a4(null),a2(!0)},className:"text-zinc-400 hover:text-white text-xs",children:"Change"})]}):(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md cursor-text",onClick:()=>a2(!0),children:[(0,b.jsx)(g.Search,{className:"w-3.5 h-3.5 text-zinc-500"}),(0,b.jsx)("input",{type:"text",placeholder:"Search sessions by name, prompt, or project...",value:aX,onChange:a=>{aY(a.target.value),a2(!0)},onFocus:()=>a2(!0),className:"flex-1 bg-transparent focus:outline-none text-white placeholder:text-zinc-500"}),aF&&(0,b.jsx)("button",{onClick:a=>{a.stopPropagation(),a6(!a5)},className:`flex-shrink-0 px-1.5 py-0.5 text-[10px] rounded border transition-colors ${a5?"border-indigo-500/50 bg-indigo-600/20 text-indigo-400":"border-zinc-600 text-zinc-500 hover:text-zinc-400"}`,title:a5?"Showing sessions for this directory — click to show all":"Showing all sessions — click to filter by directory",children:a5?aF.split("/").pop():"All"}),(0,b.jsx)(k.ChevronDown,{className:"w-3.5 h-3.5 text-zinc-500"})]}),a1&&!a3&&(0,b.jsx)("div",{className:"absolute z-50 top-full left-0 right-0 mt-1 max-h-[300px] overflow-y-auto bg-zinc-800 border border-zinc-700 rounded-md shadow-xl",children:a_?(0,b.jsxs)("div",{className:"flex items-center justify-center py-6",children:[(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-400"}),(0,b.jsx)("span",{className:"text-xs text-zinc-400 ml-2",children:"Loading sessions..."})]}):0===aZ.length?(0,b.jsx)("div",{className:"py-4 px-3 text-xs text-zinc-500 text-center",children:aX?"No sessions match your search":"No sessions found"}):aZ.map(a=>(0,b.jsx)("button",{onClick:()=>{a4(a),aK(a.sessionId),!aF&&a.projectPath&&aG(a.projectPath),aD||aE(a.customName||""),a2(!1)},className:"w-full text-left px-3 py-2.5 hover:bg-zinc-700 border-b border-zinc-700/50 last:border-0 transition-colors",children:(0,b.jsxs)("div",{className:"flex items-start gap-2",children:[(0,b.jsx)(h.MessageSquare,{className:"w-3.5 h-3.5 text-indigo-400 mt-0.5 flex-shrink-0"}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-xs text-white truncate",children:a.customName||a.firstPrompt?.slice(0,70)||"Untitled session"}),(0,b.jsxs)("div",{className:"flex items-center gap-2 mt-0.5",children:[(0,b.jsxs)("span",{className:"text-[10px] text-indigo-400/70 flex items-center gap-0.5",children:[(0,b.jsx)(i.FolderOpen,{className:"w-2.5 h-2.5"}),a.projectName]}),(0,b.jsxs)("span",{className:"text-[10px] text-zinc-500",children:[a.messageCount," msgs"]}),(0,b.jsxs)("span",{className:"text-[10px] text-zinc-500 flex items-center gap-0.5",children:[(0,b.jsx)(j.Clock,{className:"w-2.5 h-2.5"}),new Date(a.modified).toLocaleDateString()]}),a.starred&&(0,b.jsx)("span",{className:"text-[10px]",children:"★"})]}),a.tags?.length>0&&(0,b.jsx)("div",{className:"flex gap-1 mt-1",children:a.tags.map(a=>(0,b.jsx)("span",{className:"text-[9px] px-1.5 py-0.5 bg-zinc-700 rounded text-zinc-400",children:a},a))})]})]})},a.sessionId))})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Color"}),(0,b.jsx)(C.ColorPicker,{value:aH,onChange:aI})]}),(0,b.jsxs)("div",{className:"flex gap-2 pt-1",children:[(0,b.jsx)("button",{onClick:be,disabled:"custom"===aL&&!aP.trim(),className:"px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500 disabled:opacity-50 disabled:cursor-not-allowed",children:"Create"}),(0,b.jsx)("button",{onClick:()=>W(!1),className:"px-4 py-2 text-sm border border-zinc-700 text-zinc-400 rounded-md hover:text-white hover:border-zinc-600",children:"Cancel"})]})]})}),$.size>0&&(0,b.jsxs)("div",{className:"flex items-center gap-2 px-4 py-1.5 border-b border-zinc-800 bg-zinc-900/50",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500",children:"Popped out:"}),J.filter(a=>$.has(a.id)).map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,b.jsxs)("button",{onClick:()=>bi(a),className:"flex items-center gap-1 px-2 py-0.5 text-[10px] bg-zinc-800 border border-zinc-700 rounded-l text-zinc-400 hover:text-white hover:border-zinc-600",title:"Focus popout window",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:a.color}}),a.title]}),(0,b.jsx)("button",{onClick:()=>bk(a.id),className:"px-1 py-0.5 text-[10px] bg-zinc-800 border border-zinc-700 border-l-0 rounded-r text-zinc-500 hover:text-white hover:border-zinc-600",title:"Pop back into grid",children:(0,b.jsx)(v,{className:"w-2.5 h-2.5"})})]},a.id))]}),(0,b.jsxs)("div",{className:"flex-1 flex overflow-hidden min-h-0",children:[ay&&(0,b.jsx)("div",{className:"w-64 flex-shrink-0",children:(0,b.jsx)(aq,{onClose:()=>az(!1),navigateTo:aA})}),0===bs.length&&0===$.size?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"text-center space-y-3",children:[(0,b.jsx)("img",{src:`${D}/spaces_icon.png`,alt:"Spaces",className:"w-16 h-16 mx-auto opacity-30"}),(0,b.jsx)("p",{className:"text-zinc-500",children:"No panes yet."}),(0,b.jsx)("p",{className:"text-zinc-600 text-xs",children:"Add a pane to start a shell, Claude, Codex, Gemini, or any agent."}),(0,b.jsxs)("button",{onClick:()=>W(!0),className:"px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500 inline-flex items-center gap-2",children:[(0,b.jsx)(d.Plus,{className:"w-4 h-4"}),"Add your first pane"]})]})}):0===bs.length?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"text-center space-y-2",children:[(0,b.jsx)("p",{className:"text-zinc-500 text-sm",children:"All panes are popped out to separate windows."}),(0,b.jsxs)("button",{onClick:()=>W(!0),className:"px-3 py-1.5 text-xs text-zinc-400 hover:text-white border border-zinc-700 rounded-md hover:border-zinc-600 inline-flex items-center gap-1.5",children:[(0,b.jsx)(d.Plus,{className:"w-3.5 h-3.5"}),"Add another pane"]})]})}):(0,b.jsx)("div",{className:"flex-1 p-2 gap-2 overflow-auto h-full relative",style:{display:"grid",gridTemplateColumns:1===bs.length?"1fr":bs.length<=2||bs.length<=4?"repeat(2, 1fr)":"repeat(3, 1fr)",gridAutoRows:bs.length<=2?"1fr":"minmax(300px, 1fr)"},children:bs.map(c=>Y&&Y!==c.id?null:(0,b.jsx)(B.TerminalPane,{pane:c,onClose:bf,onUpdate:bg,isMaximized:Y===c.id,onToggleMaximize:bh,onPopout:bj,onBrowse:aC,terminalToken:a,workspaceCollaboration:ah?.collaboration},c.id))}),ah?.collaboration&&(0,b.jsx)(U,{workspaceId:ah?.id??null,panes:bs.map(a=>({id:a.id,title:a.title,agentType:a.agentType,color:a.color})),collapsed:ad,onToggle:()=>ae(!ad)})]})]}):(0,b.jsxs)("div",{className:"h-screen flex flex-col bg-zinc-950 text-zinc-100",children:[(0,b.jsx)("div",{className:"absolute top-4 left-4",children:(0,b.jsxs)("button",{onClick:()=>m.push("/"),className:"flex items-center gap-2 px-3 py-1.5 text-xs text-zinc-500 hover:text-white hover:bg-zinc-800 rounded-md transition-colors",children:[(0,b.jsx)(t.Home,{className:"w-3.5 h-3.5"}),"Home"]})}),(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center p-8 overflow-y-auto min-h-0",children:(0,b.jsxs)("div",{className:"w-full max-w-2xl my-auto",children:[(0,b.jsxs)("div",{className:"text-center mb-10",children:[(0,b.jsx)("img",{src:`${D}/spaces_icon.png`,alt:"Spaces",className:"w-16 h-16 mx-auto mb-4"}),(0,b.jsx)("h1",{className:"text-2xl font-bold mb-2",children:"Spaces"}),(0,b.jsx)("p",{className:"text-zinc-400 text-sm",children:"Choose a workspace to open, or create a new one."})]}),R?(0,b.jsx)("div",{className:"flex justify-center py-12",children:(0,b.jsx)(e.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"grid grid-cols-2 gap-3 mb-6",children:af.map(a=>(0,b.jsxs)("div",{className:`relative bg-zinc-900 border rounded-lg transition-all ${aw===a.id?"border-zinc-600":"border-zinc-800 hover:border-zinc-600 hover:bg-zinc-800/50"}`,children:[(0,b.jsxs)("button",{onClick:()=>bm(a.id),className:"flex items-center gap-3 p-4 text-left w-full group",children:[(0,b.jsx)("span",{className:"w-3.5 h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-sm font-medium text-white truncate",children:a.name}),(0,b.jsxs)("div",{className:"text-xs text-zinc-500 mt-0.5",children:[a.paneCount||0," pane",1!==(a.paneCount||0)?"s":"",a.isActive&&(0,b.jsx)("span",{className:"text-indigo-400 ml-2",children:"last active"})]})]}),(0,b.jsx)(f.Terminal,{className:"w-4 h-4 text-zinc-600 group-hover:text-zinc-400 transition-colors"})]}),G&&(0,b.jsx)("button",{onClick:()=>ax(aw===a.id?null:a.id),className:`absolute top-2 right-2 p-1 rounded transition-colors ${aw===a.id?"text-purple-400 bg-purple-500/10":"text-zinc-700 hover:text-zinc-400"}`,title:"Knowledge lobe settings",children:(0,b.jsx)(z.Brain,{className:"w-3.5 h-3.5"})}),aw===a.id&&(0,b.jsx)("div",{className:"px-4 pb-4 border-t border-zinc-800/50 pt-3",children:(0,b.jsx)(_,{workspaceId:a.id,workspaceName:a.name})})]},a.id))}),(0,b.jsx)("div",{className:"flex justify-center",children:(0,b.jsxs)("button",{onClick:bo,className:"flex items-center gap-2 px-4 py-2.5 text-sm border border-zinc-700 text-zinc-400 rounded-lg hover:text-white hover:border-zinc-500 transition-colors",children:[(0,b.jsx)(d.Plus,{className:"w-4 h-4"}),"New Workspace"]})}),E&&aT.isLoading&&(0,b.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4 mt-6 border-t border-zinc-800",children:[(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-500"}),(0,b.jsx)("span",{className:"text-xs text-zinc-500",children:"Loading network spaces..."})]}),E&&aT.data?.remote&&aT.data.remote.length>0&&(0,b.jsxs)("div",{className:"mt-6 border-t border-zinc-800 pt-6",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,b.jsx)(w.Globe,{className:"w-4 h-4 text-zinc-500"}),(0,b.jsx)("h2",{className:"text-sm font-medium text-zinc-400",children:"Network Spaces"})]}),aT.data.remote.map(a=>(0,b.jsxs)("div",{className:"mb-3",children:[(0,b.jsxs)("button",{onClick:()=>aW(a.nodeId),className:"flex items-center gap-2 w-full px-2 py-1.5 text-left text-xs text-zinc-400 hover:text-white rounded-md hover:bg-zinc-800/50 transition-colors",children:[aU.has(a.nodeId)?(0,b.jsx)(l.ChevronRight,{className:"w-3.5 h-3.5 text-zinc-600"}):(0,b.jsx)(k.ChevronDown,{className:"w-3.5 h-3.5 text-zinc-600"}),(0,b.jsx)(w.Globe,{className:"w-3 h-3 text-zinc-600"}),(0,b.jsx)("span",{className:"font-medium",children:a.nodeName}),(0,b.jsxs)("span",{className:"text-zinc-600",children:[a.workspaces.length," space",1!==a.workspaces.length?"s":""]})]}),!aU.has(a.nodeId)&&(0,b.jsx)("div",{className:"grid grid-cols-2 gap-2 mt-2 ml-5",children:a.workspaces.map(c=>(0,b.jsxs)("button",{onClick:()=>{m.push(`/terminal/remote/${a.nodeId}/${c.id}`)},className:"flex items-center gap-3 p-3 bg-zinc-900/50 border border-zinc-800/50 rounded-lg hover:border-zinc-600 hover:bg-zinc-800/30 transition-colors text-left group",children:[(0,b.jsx)("span",{className:"w-3 h-3 rounded-full flex-shrink-0 ring-1 ring-zinc-700",style:{backgroundColor:c.color}}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-xs font-medium text-zinc-300 truncate",children:c.name}),(0,b.jsxs)("div",{className:"text-[10px] text-zinc-600 mt-0.5",children:[c.paneCount||0," pane",1!==(c.paneCount||0)?"s":""]})]}),(0,b.jsx)(w.Globe,{className:"w-3 h-3 text-zinc-700 group-hover:text-zinc-500 transition-colors"})]},`${a.nodeId}-${c.id}`))})]},a.nodeId)),aT.data.errors&&aT.data.errors.length>0&&(0,b.jsx)("div",{className:"mt-3 space-y-1",children:aT.data.errors.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 text-[10px] text-zinc-600",children:[(0,b.jsx)(x.AlertCircle,{className:"w-3 h-3 text-red-500/50"}),(0,b.jsxs)("span",{children:[a.nodeName,": ",a.error]})]},a.nodeId))})]})]})]})})]})}a.s(["default",()=>at],66490)}];
85
+ </script></body></html>`),g.document.close(),setTimeout(()=>{z.current?.postMessage({type:"file-update",file:a})},100),A.current&&clearInterval(A.current),A.current=setInterval(()=>{y.current?.closed&&(am({wasPoppedOut:!1}),B.current&&x(!1),y.current=null,A.current&&(clearInterval(A.current),A.current=null))},500)}},G=(0,c.useRef)(null),[I,J]=(0,c.useState)(!1),[K,L]=(0,c.useState)(!1),M=async a=>{if(i&&0!==a.length){J(!0);try{let b=new FormData;for(let c of(b.append("dir",i),Array.from(a)))b.append("files",c);await fetch((0,H.api)("/api/files"),{method:"POST",body:b});let c=await D(i);l(c.items)}catch{}finally{J(!1)}}},N=g?i.replace(g,"").replace(/^[/\\]/,""):"",O=N?N.split(/[/\\]/):[],P=q&&!w,Q=m&&i!==g;return g?(0,b.jsxs)("div",{className:"h-full flex flex-col bg-zinc-950 border-r border-zinc-800",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-zinc-800/50 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Files"}),(0,b.jsx)("button",{onClick:a,className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",children:(0,b.jsx)(r.X,{className:"w-3.5 h-3.5"})})]}),e.length>1&&(0,b.jsx)("div",{className:"flex items-center gap-1 px-3 py-1.5 border-b border-zinc-800/30 flex-shrink-0 overflow-x-auto",children:e.map(a=>{let c=a.split(/[/\\]/).pop()||a,d=a===g;return(0,b.jsx)("button",{onClick:()=>{h(a),j(a),p(new Set),s(null)},className:`px-2 py-0.5 text-[10px] rounded transition-colors flex-shrink-0 ${d?"bg-amber-500/15 text-amber-400 border border-amber-500/30":"text-zinc-500 hover:text-zinc-300 border border-transparent"}`,title:a,children:c},a)})}),(0,b.jsxs)("div",{className:"flex items-center gap-1 px-3 py-1.5 border-b border-zinc-800/30 overflow-x-auto text-[10px] flex-shrink-0",children:[Q&&(0,b.jsx)("button",{onClick:()=>{m&&i!==g&&j(m)},className:"text-zinc-500 hover:text-zinc-300 flex-shrink-0",children:(0,b.jsx)(af,{className:"w-3 h-3"})}),(0,b.jsx)("input",{ref:G,type:"file",multiple:!0,className:"hidden",onChange:a=>{a.target.files&&M(a.target.files),a.target.value=""}}),(0,b.jsx)("button",{onClick:()=>G.current?.click(),className:"text-zinc-600 hover:text-zinc-300 flex-shrink-0 ml-auto",title:"Upload files to current directory",children:(0,b.jsx)(ai.Upload,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>j(g),className:"text-zinc-500 hover:text-zinc-300 truncate flex-shrink-0",children:g.split(/[/\\]/).pop()}),O.map((a,c)=>(0,b.jsxs)("span",{className:"flex items-center gap-1 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-zinc-700",children:"/"}),(0,b.jsx)("button",{onClick:()=>{j(g+"/"+O.slice(0,c+1).join("/"))},className:"text-zinc-500 hover:text-zinc-300",children:a})]},c))]}),w&&q&&(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 border-b border-zinc-800/30 bg-zinc-900/50 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500",children:"Viewing:"}),(0,b.jsx)("span",{className:"text-[10px] text-zinc-400 font-mono truncate flex-1",children:q.name}),(0,b.jsx)("button",{onClick:()=>{am({wasPoppedOut:!1}),y.current&&!y.current.closed&&y.current.close(),y.current=null,x(!1),A.current&&(clearInterval(A.current),A.current=null)},className:"text-zinc-500 hover:text-zinc-300 transition-colors",title:"Pop back into panel",children:(0,b.jsx)(v,{className:"w-3 h-3"})})]}),(0,b.jsxs)("div",{className:"flex-1 flex flex-col min-h-0 overflow-hidden",children:[(0,b.jsx)("div",{className:`overflow-y-auto ${P?"max-h-[40%] border-b border-zinc-800/30":"flex-1"} ${K?"ring-2 ring-inset ring-amber-500/50 bg-amber-500/5":""}`,onDragOver:a=>{a.preventDefault(),L(!0)},onDragLeave:()=>L(!1),onDrop:a=>{a.preventDefault(),L(!1),a.dataTransfer.files.length>0&&M(a.dataTransfer.files)},children:I?(0,b.jsx)("div",{className:"p-3 text-xs text-amber-400",children:"Uploading..."}):t?(0,b.jsx)("div",{className:"p-3 text-xs text-zinc-600",children:"Loading..."}):0===k.length?(0,b.jsx)("div",{className:"p-3 text-xs text-zinc-600",children:"Empty directory"}):(0,b.jsx)("div",{className:"py-1",children:k.map(a=>(0,b.jsx)(as,{item:a,depth:0,expanded:o.has(a.path),expandedDirs:o,onClick:E,loadDir:D,activeFile:q?.path},a.path))})}),P&&(0,b.jsxs)("div",{className:"flex-1 flex flex-col min-h-0 overflow-hidden",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-1.5 border-b border-zinc-800/30 flex-shrink-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-1.5 min-w-0",children:[(0,b.jsx)("span",{className:`text-xs font-mono truncate ${an(q.ext)}`,children:q.name}),(0,b.jsx)("span",{className:"text-[9px] text-zinc-600",children:q.lines?`${q.lines} lines`:ap(q.size)}),q.truncated&&(0,b.jsx)("span",{className:"text-[9px] text-amber-500",children:"(truncated)"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-1",children:[(0,b.jsx)("button",{onClick:()=>{var a,b;let c;return q&&(a=q.path,b=q.name,void((c=document.createElement("a")).href=(0,H.api)(`/api/files?raw=${encodeURIComponent(a)}`),c.download=b,c.click()))},className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",title:"Download file",children:(0,b.jsx)(ah,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>{q&&F(q)},className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",title:"Open in new window",children:(0,b.jsx)(ag.ExternalLink,{className:"w-3 h-3"})}),(0,b.jsx)("button",{onClick:()=>s(null),className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",children:(0,b.jsx)(r.X,{className:"w-3 h-3"})})]})]}),(0,b.jsx)("div",{className:"flex-1 overflow-auto",children:(0,b.jsx)(ar,{file:q})})]})]})]}):(0,b.jsxs)("div",{className:"h-full flex flex-col bg-zinc-950 border-r border-zinc-800",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-zinc-800/50 flex-shrink-0",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Files"}),(0,b.jsx)("button",{onClick:a,className:"p-0.5 text-zinc-600 hover:text-zinc-300 transition-colors",children:(0,b.jsx)(r.X,{className:"w-3.5 h-3.5"})})]}),(0,b.jsx)("div",{className:"p-3 text-xs text-zinc-500",children:0===e.length?"No development directories configured. Add them in Settings.":"Loading..."})]})}function ar({file:a}){return a.error?(0,b.jsx)("div",{className:"p-3 text-xs text-red-400",children:a.error}):a.image&&a.rawUrl?(0,b.jsx)("div",{className:"flex items-center justify-center p-4 min-h-[200px]",children:(0,b.jsx)("img",{src:(0,H.api)(a.rawUrl),alt:a.name,className:"max-w-full max-h-[60vh] object-contain rounded"})}):a.image&&a.tooLarge?(0,b.jsxs)("div",{className:"p-3 text-xs text-zinc-500",children:["Image too large (",ap(a.size),")"]}):a.pdf&&a.rawUrl?(0,b.jsx)("iframe",{src:(0,H.api)(a.rawUrl),className:"w-full h-full border-none",title:a.name}):a.binary?(0,b.jsxs)("div",{className:"p-3 text-xs text-zinc-500",children:["Binary file (",a.ext,", ",ap(a.size),")"]}):void 0!==a.content?(0,b.jsx)("pre",{className:"text-[11px] leading-4 font-mono p-0 m-0",children:(0,b.jsx)("table",{className:"border-collapse w-full",children:(0,b.jsx)("tbody",{children:a.content.split("\n").map((c,d)=>(0,b.jsxs)("tr",{className:"hover:bg-zinc-800/30",children:[(0,b.jsx)("td",{className:"text-right pr-3 pl-3 text-zinc-700 select-none w-[1%] whitespace-nowrap",children:d+1}),(0,b.jsx)("td",{className:`pr-3 whitespace-pre ${an(a.ext)}`,children:c||" "})]},d))})})}):null}function as({item:a,depth:d,expanded:e,expandedDirs:f,onClick:g,loadDir:h,activeFile:i}){let[j,m]=(0,c.useState)(null);(0,c.useEffect)(()=>{e&&a.isDir&&!j&&h(a.path).then(a=>m(a.items))},[e,a.isDir,a.path,j,h]);let n=i===a.path;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("button",{onClick:()=>g(a),className:`flex items-center gap-1.5 w-full text-left px-2 py-[3px] text-[11px] transition-colors ${n?"bg-indigo-500/10 text-indigo-300":"text-zinc-400 hover:bg-zinc-800/50 hover:text-zinc-200"}`,style:{paddingLeft:`${8+14*d}px`},children:[a.isDir?e?(0,b.jsx)(k.ChevronDown,{className:"w-3 h-3 text-zinc-600 flex-shrink-0"}):(0,b.jsx)(l.ChevronRight,{className:"w-3 h-3 text-zinc-600 flex-shrink-0"}):(0,b.jsx)("span",{className:"w-3 flex-shrink-0"}),(0,b.jsx)(ao,{item:a}),(0,b.jsx)("span",{className:"truncate",children:a.name})]}),e&&a.isDir&&j&&j.map(a=>(0,b.jsx)(as,{item:a,depth:d+1,expanded:f.has(a.path),expandedDirs:f,onClick:g,loadDir:h,activeFile:i},a.path))]})}function at(){return(0,b.jsx)(M.TotpGate,{children:a=>(0,b.jsx)(au,{terminalToken:a})})}function au({terminalToken:a}){let m=(0,A.useRouter)(),{basePath:D,hasNetwork:E,hasCollaboration:F,hasCortex:G}=(0,K.useTier)(),[J,M]=(0,c.useState)([]),[P,Q]=(0,c.useState)(!0),[R,S]=(0,c.useState)(!0),[V,W]=(0,c.useState)(!1),[Y,Z]=(0,c.useState)(null),[$,aa]=(0,c.useState)(new Set),[ab,ac]=(0,c.useState)(!1),[ad,ae]=(0,c.useState)(!0);!function(){let a=(0,T.useQueryClient)(),{hasCollaboration:b}=(0,K.useTier)();(0,c.useEffect)(()=>{if(!b)return;let c=new EventSource((0,H.api)("/api/events")),d=()=>{a.invalidateQueries({queryKey:["workspace-messages"]})},e=()=>{a.invalidateQueries({queryKey:["workspace-context"]})};return c.addEventListener("workspace:message",d),c.addEventListener("workspace:request",d),c.addEventListener("workspace:context_updated",e),()=>{c.removeEventListener("workspace:message",d),c.removeEventListener("workspace:request",d),c.removeEventListener("workspace:context_updated",e),c.close()}},[a,b])}();let[af,ag]=(0,c.useState)([]),[ah,ai]=(0,c.useState)(null),[aj,ak]=(0,c.useState)(!1),[al,am]=(0,c.useState)(!1),[an,ao]=(0,c.useState)(""),[ap,ar]=(0,c.useState)("#6366f1"),[as,at]=(0,c.useState)(null),[au,av]=(0,c.useState)(""),[aw,ax]=(0,c.useState)(null),[ay,az]=(0,c.useState)(!1),[aA,aB]=(0,c.useState)(null),aC=(0,c.useCallback)(a=>{aB(a),az(!0)},[]),[aD,aE]=(0,c.useState)(""),[aF,aG]=(0,c.useState)(""),[aH,aI]=(0,c.useState)("#6366f1"),[aJ,aK]=(0,c.useState)(""),[aL,aM]=(0,c.useState)("claude"),[aN,aO]=(0,c.useState)("new"),[aP,aQ]=(0,c.useState)(""),[aR,aS]=(0,c.useState)(""),aT=(0,O.useRemoteWorkspaces)(),[aU,aV]=(0,c.useState)(new Set),aW=(0,c.useCallback)(a=>{aV(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),c})},[]),[aX,aY]=(0,c.useState)(""),[aZ,a$]=(0,c.useState)([]),[a_,a0]=(0,c.useState)(!1),[a1,a2]=(0,c.useState)(!1),[a3,a4]=(0,c.useState)(null),[a5,a6]=(0,c.useState)(!0),a7=(0,c.useRef)(null),a8=(0,c.useRef)(null),a9=(0,c.useRef)(null),ba=(0,c.useCallback)(async()=>{let a=await fetch((0,H.api)("/api/workspaces")),b=await a.json();ag(b);let c=b.find(a=>a.isActive);return ai(c||null),S(!1),c||null},[]),bb=(0,c.useCallback)(async()=>{let a=await fetch((0,H.api)("/api/panes")),b=await a.json();M(b);let c=new Set;for(let a of b)a.isPopout&&c.add(a.id);aa(c),Q(!1)},[]);(0,c.useEffect)(()=>{ba()},[ba]),(0,c.useEffect)(()=>{ab&&bb()},[ab,bb]),(0,c.useEffect)(()=>{let a=new BroadcastChannel("spaces-panes");return a9.current=a,a.onmessage=a=>{let b=a.data;"popout-opened"===b.type?aa(a=>new Set(a).add(b.paneId)):"popout-closed"===b.type?(aa(a=>{let c=new Set(a);return c.delete(b.paneId),c}),M(a=>a.map(a=>a.id===b.paneId?{...a,isPopout:!1}:a))):"pane-updated"===b.type&&M(a=>a.map(a=>a.id===b.paneId?{...a,...b.data}:a))},()=>a.close()},[bb]);let[bc,bd]=(0,c.useState)(0);(0,c.useEffect)(()=>{if(!P)for(let a of J)a.isPopout&&bi(a)},[P,bc]),(0,c.useEffect)(()=>{if("claude"!==aL||"resume"!==aN)return;a0(!0);let a=setTimeout(()=>{let a=new URLSearchParams({sortBy:"modified",sortDir:"DESC",limit:"200"});aX&&a.set("search",aX),a5&&aF&&a.set("projectPath",aF),a.set("agentType",aL),fetch((0,H.api)(`/api/sessions?${a}`)).then(a=>a.json()).then(a=>{a$(a.sessions||[]),a0(!1)}).catch(()=>a0(!1))},300*!!aX);return()=>clearTimeout(a)},[aL,aN,aX,a5,aF]),(0,c.useEffect)(()=>{function a(a){a7.current&&!a7.current.contains(a.target)&&a2(!1),a8.current&&!a8.current.contains(a.target)&&ak(!1)}return document.addEventListener("mousedown",a),()=>document.removeEventListener("mousedown",a)},[]);let be=(0,c.useCallback)(async()=>{let a,b=N.AGENT_TYPES[aL],c=aF||a3?.projectPath||"/";"shell"!==aL&&(a="resume"===aN&&b?.supportsResume?a3?.sessionId||aJ:"new");let d=aD||(a3?a3.customName||a3.firstPrompt?.slice(0,50)||b?.name||"Agent":"")||("shell"===aL?"Terminal":b?.name||"Agent"),e=ah?.collaboration&&"shell"!==aL,f=await fetch((0,H.api)("/api/panes"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:d,color:aH,cwd:c,claudeSessionId:a,agentType:aL,customCommand:"custom"===aL?aP:void 0,nodeId:aR||void 0,isCollaborating:e||void 0})}),g=await f.json();M(a=>[...a,g]),(0,X.track)("pane_created",{agentType:aL}),W(!1),aE(""),aG(""),aI("#6366f1"),aK(""),aM("shell"),aO("new"),aQ(""),aS(""),a4(null),aY("")},[aD,aF,aH,aJ,aL,aN,aP,aR,a3]),bf=(0,c.useCallback)(async a=>{let b=J.find(b=>b.id===a);await fetch((0,H.api)(`/api/panes/${a}`),{method:"DELETE"}),M(b=>b.filter(b=>b.id!==a)),b&&(0,X.track)("pane_closed",{agentType:b.agentType}),Y===a&&Z(null),aa(b=>{let c=new Set(b);return c.delete(a),c})},[Y,J]),bg=(0,c.useCallback)(async(a,b)=>{await fetch((0,H.api)(`/api/panes/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),M(c=>c.map(c=>c.id===a?{...c,...b}:c))},[]),bh=(0,c.useCallback)(a=>{Z(b=>b===a?null:a)},[]),bi=(0,c.useCallback)(a=>{let b=a.winWidth||900,c=a.winHeight||600,d=a.winX??Math.round(screen.width/2-b/2),e=a.winY??Math.round(screen.height/2-c/2),f=`left=${d},top=${e},width=${b},height=${c},menubar=no,toolbar=no,location=no,status=no`;window.open((0,H.api)(`/terminal/pane/${a.id}`),`spaces-pane-${a.id}`,f),aa(b=>new Set(b).add(a.id)),fetch((0,H.api)(`/api/panes/${a.id}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isPopout:!0,winX:d,winY:e,winWidth:b,winHeight:c})})},[]),bj=(0,c.useCallback)(a=>{let b=J.find(b=>b.id===a);b&&bi(b)},[J,bi]),bk=(0,c.useCallback)(async a=>{a9.current?.postMessage({type:"close-popouts"}),await fetch((0,H.api)(`/api/panes/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isPopout:!1})}),aa(b=>{let c=new Set(b);return c.delete(a),c})},[]),bl=(0,c.useCallback)(()=>{$.size>0&&(a9.current?.postMessage({type:"close-popouts"}),aa(new Set))},[$]),bm=(0,c.useCallback)(async a=>{bl(),await fetch((0,H.api)("/api/workspaces"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"switch",workspaceId:a})}),Z(null),await ba(),await bb(),ak(!1),ab?(0,X.track)("workspace_switched"):(0,X.track)("workspace_entered"),ac(!0),bd(a=>a+1)},[ba,bb,bl,ab]),bn=(0,c.useCallback)(async()=>{an.trim()&&ah&&(await fetch((0,H.api)("/api/workspaces"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"duplicate",sourceId:ah.id,name:an.trim(),color:ap})}),ao(""),ar("#6366f1"),am(!1),await ba())},[an,ap,ah,ba]),bo=(0,c.useCallback)(async()=>{let a=await fetch((0,H.api)("/api/workspaces"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:"New Space",color:"#6366f1"})}),b=await a.json();(0,X.track)("workspace_created"),await bm(b.id)},[bm]),bp=(0,c.useCallback)(async a=>{bl(),await fetch((0,H.api)(`/api/workspaces/${a}`),{method:"DELETE"}),(0,X.track)("workspace_deleted"),await ba(),await bb(),ak(!1)},[ba,bb,bl]),bq=(0,c.useCallback)(()=>{bl(),M([]),ac(!1)},[bl]),br=(0,c.useCallback)(async(a,b)=>{await fetch((0,H.api)(`/api/workspaces/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:b})}),at(null),await ba()},[ba]),bs=J.filter(a=>!$.has(a.id));return ab?P?(0,b.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,b.jsx)(e.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):(0,b.jsxs)("div",{className:"h-screen flex flex-col bg-zinc-950 text-zinc-100",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between px-4 py-2 border-b border-zinc-800 flex-shrink-0",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("button",{onClick:bq,className:"p-1.5 -ml-1 text-zinc-500 hover:text-white hover:bg-zinc-800 rounded-md transition-colors",title:"Close space and go home",children:(0,b.jsx)(t.Home,{className:"w-4 h-4"})}),(0,b.jsx)("div",{className:"w-px h-4 bg-zinc-800"}),(0,b.jsx)("h1",{className:"text-sm font-semibold",children:"Spaces"}),(0,b.jsxs)("div",{ref:a8,className:"relative",children:[(0,b.jsxs)("button",{onClick:()=>ak(!aj),className:"flex items-center gap-1.5 px-2.5 py-1 text-xs bg-zinc-800 border border-zinc-700 rounded-md hover:border-zinc-600 transition-colors",children:[ah&&(0,b.jsx)("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:ah.color}}),(0,b.jsx)("span",{className:"max-w-[150px] truncate",children:ah?.name||"No space"}),(0,b.jsx)(k.ChevronDown,{className:"w-3 h-3 text-zinc-500"})]}),aj&&(0,b.jsxs)("div",{className:"absolute z-50 top-full left-0 mt-1 w-72 bg-zinc-800 border border-zinc-700 rounded-md shadow-xl overflow-hidden",children:[(0,b.jsx)("div",{className:"p-2 border-b border-zinc-700/50 text-[10px] text-zinc-500 uppercase tracking-wider font-medium",children:"Switch Space"}),(0,b.jsx)("div",{className:"max-h-[300px] overflow-y-auto",children:af.map(a=>(0,b.jsx)("div",{className:"flex items-center gap-2 hover:bg-zinc-700/50 transition-colors group",children:as===a.id?(0,b.jsxs)("div",{className:"flex items-center gap-1 flex-1 px-3 py-2",children:[(0,b.jsx)("input",{autoFocus:!0,value:au,onChange:a=>av(a.target.value),onKeyDown:b=>{"Enter"===b.key&&br(a.id,au),"Escape"===b.key&&at(null)},className:"flex-1 bg-transparent border border-zinc-600 rounded px-1.5 py-0.5 text-xs focus:outline-none focus:border-indigo-400"}),(0,b.jsx)("button",{onClick:()=>br(a.id,au),className:"text-green-400 hover:text-green-300",children:(0,b.jsx)(q.Check,{className:"w-3 h-3"})})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("button",{onClick:()=>bm(a.id),className:"flex items-center gap-2 flex-1 px-3 py-2 text-left",children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsx)("span",{className:"text-xs text-white truncate flex-1",children:a.name}),(0,b.jsxs)("span",{className:"text-[10px] text-zinc-500",children:[a.paneCount||0," panes"]}),a.isActive&&(0,b.jsx)("span",{className:"text-[10px] text-indigo-400",children:"active"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-0.5 pr-2 opacity-0 group-hover:opacity-100",children:[(0,b.jsx)("button",{onClick:b=>{b.stopPropagation(),at(a.id),av(a.name)},className:"p-1 text-zinc-500 hover:text-white rounded",title:"Rename",children:(0,b.jsx)(p.Pencil,{className:"w-2.5 h-2.5"})}),!a.isActive&&af.length>1&&(0,b.jsx)("button",{onClick:b=>{b.stopPropagation(),confirm(`Delete space "${a.name}" and all its panes?`)&&bp(a.id)},className:"p-1 text-zinc-500 hover:text-red-400 rounded",title:"Delete",children:(0,b.jsx)(o.Trash2,{className:"w-2.5 h-2.5"})})]})]})},a.id))}),(0,b.jsxs)("div",{className:"border-t border-zinc-700/50 p-1.5 flex gap-1",children:[(0,b.jsxs)("button",{onClick:bo,className:"flex items-center gap-1.5 px-2.5 py-1.5 text-[11px] text-zinc-400 hover:text-white hover:bg-zinc-700 rounded transition-colors flex-1",children:[(0,b.jsx)(d.Plus,{className:"w-3 h-3"})," New Empty"]}),(0,b.jsxs)("button",{onClick:()=>{am(!0),ak(!1)},className:"flex items-center gap-1.5 px-2.5 py-1.5 text-[11px] text-zinc-400 hover:text-white hover:bg-zinc-700 rounded transition-colors flex-1",children:[(0,b.jsx)(s.Copy,{className:"w-3 h-3"})," Duplicate Current"]})]})]})]}),(0,b.jsxs)("span",{className:"text-[11px] text-zinc-500",children:[bs.length," pane",1!==bs.length?"s":"",$.size>0&&` + ${$.size} popped out`]})]}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsxs)("button",{onClick:()=>az(!ay),className:`flex items-center gap-1.5 px-2.5 py-1.5 text-xs rounded-md border transition-colors ${ay?"border-amber-500/50 bg-amber-600/20 text-amber-400":"border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,title:ay?"Hide file explorer":"Show file explorer",children:[(0,b.jsx)(i.FolderOpen,{className:"w-3.5 h-3.5"}),"Files"]}),F&&ah&&(0,b.jsxs)("button",{onClick:async()=>{let a=!ah.collaboration;for(let b of(await fetch((0,H.api)(`/api/workspaces/${ah.id}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({collaboration:a})}),ai(b=>b?{...b,collaboration:a}:b),ag(b=>b.map(b=>b.id===ah.id?{...b,collaboration:a}:b)),J.filter(a=>a.workspaceId===ah.id&&"shell"!==a.agentType)))b.isCollaborating!==a&&await bg(b.id,{isCollaborating:a})},className:`flex items-center gap-1.5 px-2.5 py-1.5 text-xs rounded-md border transition-colors ${ah.collaboration?"border-indigo-500/50 bg-indigo-600/20 text-indigo-400":"border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:border-zinc-600"}`,title:ah.collaboration?"Collaboration enabled — click to disable":"Enable collaboration for this workspace",children:[(0,b.jsx)(y.Users,{className:"w-3.5 h-3.5"}),"Collab"]}),(0,b.jsxs)("button",{onClick:bq,className:"flex items-center gap-1.5 px-3 py-1.5 text-xs border border-zinc-700 text-zinc-400 rounded-md hover:text-white hover:border-zinc-600 transition-colors",title:"Close space and return home",children:[(0,b.jsx)(u,{className:"w-3.5 h-3.5"}),"Close"]}),(0,b.jsxs)("button",{onClick:()=>W(!0),className:"flex items-center gap-1.5 px-3 py-1.5 text-xs bg-indigo-600 text-white rounded-md hover:bg-indigo-500 transition-colors",children:[(0,b.jsx)(d.Plus,{className:"w-3.5 h-3.5"}),"Add Pane"]})]})]}),al&&(0,b.jsx)("div",{className:"border-b border-zinc-800 bg-zinc-900 px-4 py-3",children:(0,b.jsxs)("div",{className:"max-w-md flex items-center gap-2",children:[(0,b.jsx)(n,{className:"w-4 h-4 text-indigo-400 flex-shrink-0"}),(0,b.jsx)("input",{autoFocus:!0,type:"text",placeholder:"New space name...",value:an,onChange:a=>ao(a.target.value),onKeyDown:a=>"Enter"===a.key&&bn(),className:"flex-1 px-3 py-1.5 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white"}),(0,b.jsx)(C.ColorPicker,{value:ap,onChange:ar}),(0,b.jsx)("button",{onClick:bn,disabled:!an.trim(),className:"px-3 py-1.5 text-xs bg-indigo-600 text-white rounded-md hover:bg-indigo-500 disabled:opacity-50",children:"Save"}),(0,b.jsx)("button",{onClick:()=>am(!1),className:"p-1.5 text-zinc-400 hover:text-white",children:(0,b.jsx)(r.X,{className:"w-4 h-4"})})]})}),V&&(0,b.jsx)("div",{className:"border-b border-zinc-800 bg-zinc-900 px-4 py-4",children:(0,b.jsxs)("div",{className:"max-w-lg space-y-3",children:[(0,b.jsx)("h3",{className:"text-sm font-semibold",children:"Add Pane"}),(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Agent"}),(0,b.jsx)("div",{className:"grid grid-cols-3 gap-1.5",children:N.AGENT_LIST.map(a=>(0,b.jsxs)("button",{onClick:()=>{aM(a.id),aO("new"),a4(null),aK("")},className:`flex items-center gap-2 px-3 py-2 rounded-md border text-left transition-colors ${aL===a.id?"border-indigo-500 bg-indigo-600/20 text-white":"border-zinc-700 text-zinc-400 hover:text-white hover:border-zinc-600"}`,children:[(0,b.jsx)("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("div",{className:"text-xs font-medium truncate",children:a.name}),(0,b.jsx)("div",{className:"text-[10px] text-zinc-500 truncate",children:a.description})]})]},a.id))})]}),N.AGENT_TYPES[aL]?.supportsResume&&(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)("button",{onClick:()=>{aO("new"),a4(null),aK("")},className:`px-3 py-1.5 text-xs rounded-md border transition-colors ${"new"===aN?"bg-indigo-600 border-indigo-500 text-white":"border-zinc-700 text-zinc-400 hover:text-white hover:border-zinc-600"}`,children:"New Session"}),(0,b.jsx)("button",{onClick:()=>aO("resume"),className:`px-3 py-1.5 text-xs rounded-md border transition-colors ${"resume"===aN?"bg-indigo-600 border-indigo-500 text-white":"border-zinc-700 text-zinc-400 hover:text-white hover:border-zinc-600"}`,children:"Resume Session"})]}),"custom"===aL&&(0,b.jsx)("input",{type:"text",placeholder:"Command to run (e.g. python agent.py)",value:aP,onChange:a=>aQ(a.target.value),className:"w-full px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white font-mono"}),(0,b.jsx)(L,{value:aR,onChange:aS}),(0,b.jsx)("input",{type:"text",placeholder:"Title (optional)",value:aD,onChange:a=>aE(a.target.value),className:"w-full px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white"}),aR?(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Working directory (on remote node)"}),(0,b.jsx)("input",{type:"text",placeholder:"e.g. /home/user/project or ~ for home",value:aF,onChange:a=>aG(a.target.value),className:"w-full px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md focus:outline-none focus:border-indigo-500 text-white font-mono"})]}):(0,b.jsx)(I,{value:aF,onChange:aG}),"claude"===aL&&"resume"===aN&&(0,b.jsxs)("div",{ref:a7,className:"relative",children:[a3?(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md",children:[(0,b.jsx)(h.MessageSquare,{className:"w-3.5 h-3.5 text-indigo-400 flex-shrink-0"}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-white truncate",children:a3.customName||a3.firstPrompt?.slice(0,60)||"Untitled"}),(0,b.jsxs)("div",{className:"text-[10px] text-zinc-500 flex items-center gap-2",children:[(0,b.jsx)("span",{children:a3.projectName}),(0,b.jsxs)("span",{children:[a3.messageCount," msgs"]}),(0,b.jsxs)("span",{className:"font-mono",children:[a3.sessionId.slice(0,8),"..."]})]})]}),(0,b.jsx)("button",{onClick:()=>{a4(null),a2(!0)},className:"text-zinc-400 hover:text-white text-xs",children:"Change"})]}):(0,b.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 text-sm bg-zinc-800 border border-zinc-700 rounded-md cursor-text",onClick:()=>a2(!0),children:[(0,b.jsx)(g.Search,{className:"w-3.5 h-3.5 text-zinc-500"}),(0,b.jsx)("input",{type:"text",placeholder:"Search sessions by name, prompt, or project...",value:aX,onChange:a=>{aY(a.target.value),a2(!0)},onFocus:()=>a2(!0),className:"flex-1 bg-transparent focus:outline-none text-white placeholder:text-zinc-500"}),aF&&(0,b.jsx)("button",{onClick:a=>{a.stopPropagation(),a6(!a5)},className:`flex-shrink-0 px-1.5 py-0.5 text-[10px] rounded border transition-colors ${a5?"border-indigo-500/50 bg-indigo-600/20 text-indigo-400":"border-zinc-600 text-zinc-500 hover:text-zinc-400"}`,title:a5?"Showing sessions for this directory — click to show all":"Showing all sessions — click to filter by directory",children:a5?aF.split("/").pop():"All"}),(0,b.jsx)(k.ChevronDown,{className:"w-3.5 h-3.5 text-zinc-500"})]}),a1&&!a3&&(0,b.jsx)("div",{className:"absolute z-50 top-full left-0 right-0 mt-1 max-h-[300px] overflow-y-auto bg-zinc-800 border border-zinc-700 rounded-md shadow-xl",children:a_?(0,b.jsxs)("div",{className:"flex items-center justify-center py-6",children:[(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-400"}),(0,b.jsx)("span",{className:"text-xs text-zinc-400 ml-2",children:"Loading sessions..."})]}):0===aZ.length?(0,b.jsx)("div",{className:"py-4 px-3 text-xs text-zinc-500 text-center",children:aX?"No sessions match your search":"No sessions found"}):aZ.map(a=>(0,b.jsx)("button",{onClick:()=>{a4(a),aK(a.sessionId),!aF&&a.projectPath&&aG(a.projectPath),aD||aE(a.customName||""),a2(!1)},className:"w-full text-left px-3 py-2.5 hover:bg-zinc-700 border-b border-zinc-700/50 last:border-0 transition-colors",children:(0,b.jsxs)("div",{className:"flex items-start gap-2",children:[(0,b.jsx)(h.MessageSquare,{className:"w-3.5 h-3.5 text-indigo-400 mt-0.5 flex-shrink-0"}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-xs text-white truncate",children:a.customName||a.firstPrompt?.slice(0,70)||"Untitled session"}),(0,b.jsxs)("div",{className:"flex items-center gap-2 mt-0.5",children:[(0,b.jsxs)("span",{className:"text-[10px] text-indigo-400/70 flex items-center gap-0.5",children:[(0,b.jsx)(i.FolderOpen,{className:"w-2.5 h-2.5"}),a.projectName]}),(0,b.jsxs)("span",{className:"text-[10px] text-zinc-500",children:[a.messageCount," msgs"]}),(0,b.jsxs)("span",{className:"text-[10px] text-zinc-500 flex items-center gap-0.5",children:[(0,b.jsx)(j.Clock,{className:"w-2.5 h-2.5"}),new Date(a.modified).toLocaleDateString()]}),a.starred&&(0,b.jsx)("span",{className:"text-[10px]",children:"★"})]}),a.tags?.length>0&&(0,b.jsx)("div",{className:"flex gap-1 mt-1",children:a.tags.map(a=>(0,b.jsx)("span",{className:"text-[9px] px-1.5 py-0.5 bg-zinc-700 rounded text-zinc-400",children:a},a))})]})]})},a.sessionId))})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("label",{className:"text-[11px] text-zinc-400 mb-1.5 block",children:"Color"}),(0,b.jsx)(C.ColorPicker,{value:aH,onChange:aI})]}),(0,b.jsxs)("div",{className:"flex gap-2 pt-1",children:[(0,b.jsx)("button",{onClick:be,disabled:"custom"===aL&&!aP.trim(),className:"px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500 disabled:opacity-50 disabled:cursor-not-allowed",children:"Create"}),(0,b.jsx)("button",{onClick:()=>W(!1),className:"px-4 py-2 text-sm border border-zinc-700 text-zinc-400 rounded-md hover:text-white hover:border-zinc-600",children:"Cancel"})]})]})}),$.size>0&&(0,b.jsxs)("div",{className:"flex items-center gap-2 px-4 py-1.5 border-b border-zinc-800 bg-zinc-900/50",children:[(0,b.jsx)("span",{className:"text-[10px] text-zinc-500",children:"Popped out:"}),J.filter(a=>$.has(a.id)).map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-0.5",children:[(0,b.jsxs)("button",{onClick:()=>bi(a),className:"flex items-center gap-1 px-2 py-0.5 text-[10px] bg-zinc-800 border border-zinc-700 rounded-l text-zinc-400 hover:text-white hover:border-zinc-600",title:"Focus popout window",children:[(0,b.jsx)("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:a.color}}),a.title]}),(0,b.jsx)("button",{onClick:()=>bk(a.id),className:"px-1 py-0.5 text-[10px] bg-zinc-800 border border-zinc-700 border-l-0 rounded-r text-zinc-500 hover:text-white hover:border-zinc-600",title:"Pop back into grid",children:(0,b.jsx)(v,{className:"w-2.5 h-2.5"})})]},a.id))]}),(0,b.jsxs)("div",{className:"flex-1 flex overflow-hidden min-h-0",children:[ay&&(0,b.jsx)("div",{className:"w-64 flex-shrink-0",children:(0,b.jsx)(aq,{onClose:()=>az(!1),navigateTo:aA})}),0===bs.length&&0===$.size?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"text-center space-y-3",children:[(0,b.jsx)("img",{src:`${D}/spaces_icon.png`,alt:"Spaces",className:"w-16 h-16 mx-auto opacity-30"}),(0,b.jsx)("p",{className:"text-zinc-500",children:"No panes yet."}),(0,b.jsx)("p",{className:"text-zinc-600 text-xs",children:"Add a pane to start a shell, Claude, Codex, Gemini, or any agent."}),(0,b.jsxs)("button",{onClick:()=>W(!0),className:"px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500 inline-flex items-center gap-2",children:[(0,b.jsx)(d.Plus,{className:"w-4 h-4"}),"Add your first pane"]})]})}):0===bs.length?(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,b.jsxs)("div",{className:"text-center space-y-2",children:[(0,b.jsx)("p",{className:"text-zinc-500 text-sm",children:"All panes are popped out to separate windows."}),(0,b.jsxs)("button",{onClick:()=>W(!0),className:"px-3 py-1.5 text-xs text-zinc-400 hover:text-white border border-zinc-700 rounded-md hover:border-zinc-600 inline-flex items-center gap-1.5",children:[(0,b.jsx)(d.Plus,{className:"w-3.5 h-3.5"}),"Add another pane"]})]})}):(0,b.jsx)("div",{className:"flex-1 p-2 gap-2 overflow-auto h-full relative",style:{display:"grid",gridTemplateColumns:1===bs.length?"1fr":bs.length<=2||bs.length<=4?"repeat(2, 1fr)":"repeat(3, 1fr)",gridAutoRows:bs.length<=2?"1fr":"minmax(300px, 1fr)"},children:bs.map(c=>Y&&Y!==c.id?null:(0,b.jsx)(B.TerminalPane,{pane:c,onClose:bf,onUpdate:bg,isMaximized:Y===c.id,onToggleMaximize:bh,onPopout:bj,onBrowse:aC,terminalToken:a,workspaceCollaboration:ah?.collaboration},c.id))}),ah?.collaboration&&(0,b.jsx)(U,{workspaceId:ah?.id??null,panes:bs.map(a=>({id:a.id,title:a.title,agentType:a.agentType,color:a.color})),collapsed:ad,onToggle:()=>ae(!ad)})]})]}):(0,b.jsxs)("div",{className:"h-screen flex flex-col bg-zinc-950 text-zinc-100",children:[(0,b.jsx)("div",{className:"absolute top-4 left-4",children:(0,b.jsxs)("button",{onClick:()=>m.push("/"),className:"flex items-center gap-2 px-3 py-1.5 text-xs text-zinc-500 hover:text-white hover:bg-zinc-800 rounded-md transition-colors",children:[(0,b.jsx)(t.Home,{className:"w-3.5 h-3.5"}),"Home"]})}),(0,b.jsx)("div",{className:"flex-1 flex items-center justify-center p-8 overflow-y-auto min-h-0",children:(0,b.jsxs)("div",{className:"w-full max-w-2xl my-auto",children:[(0,b.jsxs)("div",{className:"text-center mb-10",children:[(0,b.jsx)("img",{src:`${D}/spaces_icon.png`,alt:"Spaces",className:"w-16 h-16 mx-auto mb-4"}),(0,b.jsx)("h1",{className:"text-2xl font-bold mb-2",children:"Spaces"}),(0,b.jsx)("p",{className:"text-zinc-400 text-sm",children:"Choose a workspace to open, or create a new one."})]}),R?(0,b.jsx)("div",{className:"flex justify-center py-12",children:(0,b.jsx)(e.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{className:"grid grid-cols-2 gap-3 mb-6",children:af.map(a=>(0,b.jsxs)("div",{className:`relative bg-zinc-900 border rounded-lg transition-all ${aw===a.id?"border-zinc-600":"border-zinc-800 hover:border-zinc-600 hover:bg-zinc-800/50"}`,children:[(0,b.jsxs)("button",{onClick:()=>bm(a.id),className:"flex items-center gap-3 p-4 text-left w-full group",children:[(0,b.jsx)("span",{className:"w-3.5 h-3.5 rounded-full flex-shrink-0",style:{backgroundColor:a.color}}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-sm font-medium text-white truncate",children:a.name}),(0,b.jsxs)("div",{className:"text-xs text-zinc-500 mt-0.5",children:[a.paneCount||0," pane",1!==(a.paneCount||0)?"s":"",a.isActive&&(0,b.jsx)("span",{className:"text-indigo-400 ml-2",children:"last active"})]})]}),(0,b.jsx)(f.Terminal,{className:"w-4 h-4 text-zinc-600 group-hover:text-zinc-400 transition-colors"})]}),G&&(0,b.jsx)("button",{onClick:()=>ax(aw===a.id?null:a.id),className:`absolute top-2 right-2 p-1 rounded transition-colors ${aw===a.id?"text-purple-400 bg-purple-500/10":"text-zinc-700 hover:text-zinc-400"}`,title:"Knowledge lobe settings",children:(0,b.jsx)(z.Brain,{className:"w-3.5 h-3.5"})}),aw===a.id&&(0,b.jsx)("div",{className:"px-4 pb-4 border-t border-zinc-800/50 pt-3",children:(0,b.jsx)(_,{workspaceId:a.id,workspaceName:a.name})})]},a.id))}),(0,b.jsx)("div",{className:"flex justify-center",children:(0,b.jsxs)("button",{onClick:bo,className:"flex items-center gap-2 px-4 py-2.5 text-sm border border-zinc-700 text-zinc-400 rounded-lg hover:text-white hover:border-zinc-500 transition-colors",children:[(0,b.jsx)(d.Plus,{className:"w-4 h-4"}),"New Workspace"]})}),E&&aT.isLoading&&(0,b.jsxs)("div",{className:"flex items-center justify-center gap-2 py-4 mt-6 border-t border-zinc-800",children:[(0,b.jsx)(e.Loader2,{className:"w-4 h-4 animate-spin text-zinc-500"}),(0,b.jsx)("span",{className:"text-xs text-zinc-500",children:"Loading network spaces..."})]}),E&&aT.data?.remote&&aT.data.remote.length>0&&(0,b.jsxs)("div",{className:"mt-6 border-t border-zinc-800 pt-6",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,b.jsx)(w.Globe,{className:"w-4 h-4 text-zinc-500"}),(0,b.jsx)("h2",{className:"text-sm font-medium text-zinc-400",children:"Network Spaces"})]}),aT.data.remote.map(a=>(0,b.jsxs)("div",{className:"mb-3",children:[(0,b.jsxs)("button",{onClick:()=>aW(a.nodeId),className:"flex items-center gap-2 w-full px-2 py-1.5 text-left text-xs text-zinc-400 hover:text-white rounded-md hover:bg-zinc-800/50 transition-colors",children:[aU.has(a.nodeId)?(0,b.jsx)(l.ChevronRight,{className:"w-3.5 h-3.5 text-zinc-600"}):(0,b.jsx)(k.ChevronDown,{className:"w-3.5 h-3.5 text-zinc-600"}),(0,b.jsx)(w.Globe,{className:"w-3 h-3 text-zinc-600"}),(0,b.jsx)("span",{className:"font-medium",children:a.nodeName}),(0,b.jsxs)("span",{className:"text-zinc-600",children:[a.workspaces.length," space",1!==a.workspaces.length?"s":""]})]}),!aU.has(a.nodeId)&&(0,b.jsx)("div",{className:"grid grid-cols-2 gap-2 mt-2 ml-5",children:a.workspaces.map(c=>(0,b.jsxs)("button",{onClick:()=>{m.push(`/terminal/remote/${a.nodeId}/${c.id}`)},className:"flex items-center gap-3 p-3 bg-zinc-900/50 border border-zinc-800/50 rounded-lg hover:border-zinc-600 hover:bg-zinc-800/30 transition-colors text-left group",children:[(0,b.jsx)("span",{className:"w-3 h-3 rounded-full flex-shrink-0 ring-1 ring-zinc-700",style:{backgroundColor:c.color}}),(0,b.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,b.jsx)("div",{className:"text-xs font-medium text-zinc-300 truncate",children:c.name}),(0,b.jsxs)("div",{className:"text-[10px] text-zinc-600 mt-0.5",children:[c.paneCount||0," pane",1!==(c.paneCount||0)?"s":""]})]}),(0,b.jsx)(w.Globe,{className:"w-3 h-3 text-zinc-700 group-hover:text-zinc-500 transition-colors"})]},`${a.nodeId}-${c.id}`))})]},a.nodeId)),aT.data.errors&&aT.data.errors.length>0&&(0,b.jsx)("div",{className:"mt-3 space-y-1",children:aT.data.errors.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1.5 text-[10px] text-zinc-600",children:[(0,b.jsx)(x.AlertCircle,{className:"w-3 h-3 text-red-500/50"}),(0,b.jsxs)("span",{children:[a.nodeName,": ",a.error]})]},a.nodeId))})]})]})]})})]})}a.s(["default",()=>at],66490)}];
86
86
 
87
87
  //# sourceMappingURL=src_app_%28desktop%29_terminal_page_tsx_de5e8d85._.js.map
@@ -1,3 +1,3 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["chunks/_d73df637._.js",4730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.7.2",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js"},files:["bin/",".next/standalone/"],engines:{node:">=20.9.0"},repository:{type:"git",url:"git+https://github.com/jlongo78/spaces.git"},keywords:["ai","agent","workspace","terminal","claude","codex","gemini"],homepage:"http://www.agentspaces.co",license:"AGPL-3.0-only",scripts:{start:"node bin/spaces.js",dev:"node bin/spaces-dev.js",build:"cross-env STANDALONE=1 next build && node -e \"const fs=require('fs');fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});fs.cpSync('public','.next/standalone/public',{recursive:true})\" && node bin/fix-standalone-externals.js",prepublishOnly:"npm run build",setup:"node bin/spaces-setup.js","setup-admin":"node bin/setup-admin.js","server:build":"next build","server:start":"next start --port 3457",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",lint:"eslint"},dependencies:{"@huggingface/transformers":"^3.8.1","@lancedb/lancedb":"^0.26.2","@modelcontextprotocol/sdk":"^1.27.1","@react-three/drei":"^10.7.7","@react-three/fiber":"^9.5.0","@react-three/postprocessing":"^3.0.4","better-sqlite3":"^12.6.2","bonjour-service":"^1.3.0","force-graph":"^1.51.2","node-pty":"^1.1.0",three:"^0.183.2",ws:"^8.19.0"},devDependencies:{"@tailwindcss/postcss":"^4","@tanstack/react-query":"^5.90.21","@types/better-sqlite3":"^7.6.13","@types/node":"^20","@types/qrcode":"^1.5.6","@types/react":"^19","@types/react-dom":"^19","@types/three":"^0.183.1","@types/ws":"^8.18.1","@vitest/coverage-v8":"^4.0.18","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0",chokidar:"^5.0.0","class-variance-authority":"^0.7.1",clsx:"^2.1.1","cross-env":"^10.1.0","date-fns":"^4.1.0",eslint:"^9","eslint-config-next":"16.1.6",geist:"^1.4.1","lucide-react":"^0.575.0",next:"16.1.6",otpauth:"^9.5.0","posthog-js":"^1.352.0","posthog-node":"^5.21.2",qrcode:"^1.5.4",react:"19.2.3","react-dom":"19.2.3","react-markdown":"^10.1.0",recharts:"^3.7.0","rehype-highlight":"^7.0.2","remark-gfm":"^4.0.1","tailwind-merge":"^3.5.0",tailwindcss:"^4",typescript:"^5",vitest:"^4.0.18",xterm:"^5.3.0"},optionalDependencies:{"@types/qrcode":"^1.5.6",otpauth:"^9.5.0",qrcode:"^1.5.4"}})},35825,(e,t,s)=>{self._ENTRIES||={};let n=Promise.resolve().then(()=>e.i(58217));n.catch(()=>{}),self._ENTRIES.middleware_middleware=new Proxy(n,{get(e,t){if("then"===t)return(t,s)=>e.then(t,s);let s=(...s)=>e.then(e=>(0,e[t])(...s));return s.then=(s,n)=>e.then(e=>e[t]).then(s,n),s}})}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["chunks/_d73df637._.js",4730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.7.4",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js"},files:["bin/",".next/standalone/"],engines:{node:">=20.9.0"},repository:{type:"git",url:"git+https://github.com/jlongo78/spaces.git"},keywords:["ai","agent","workspace","terminal","claude","codex","gemini"],homepage:"http://www.agentspaces.co",license:"AGPL-3.0-only",scripts:{start:"node bin/spaces.js",dev:"node bin/spaces-dev.js",build:"cross-env STANDALONE=1 next build && node -e \"const fs=require('fs');fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});fs.cpSync('public','.next/standalone/public',{recursive:true})\" && node bin/fix-standalone-externals.js",prepublishOnly:"npm run build",setup:"node bin/spaces-setup.js","setup-admin":"node bin/setup-admin.js","server:build":"next build","server:start":"next start --port 3457",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",lint:"eslint"},dependencies:{"@huggingface/transformers":"^3.8.1","@lancedb/lancedb":"^0.26.2","@modelcontextprotocol/sdk":"^1.27.1","@react-three/drei":"^10.7.7","@react-three/fiber":"^9.5.0","@react-three/postprocessing":"^3.0.4","better-sqlite3":"^12.6.2","bonjour-service":"^1.3.0","force-graph":"^1.51.2","node-pty":"^1.1.0",three:"^0.183.2",ws:"^8.19.0"},devDependencies:{"@tailwindcss/postcss":"^4","@tanstack/react-query":"^5.90.21","@types/better-sqlite3":"^7.6.13","@types/node":"^20","@types/qrcode":"^1.5.6","@types/react":"^19","@types/react-dom":"^19","@types/three":"^0.183.1","@types/ws":"^8.18.1","@vitest/coverage-v8":"^4.0.18","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0",chokidar:"^5.0.0","class-variance-authority":"^0.7.1",clsx:"^2.1.1","cross-env":"^10.1.0","date-fns":"^4.1.0",eslint:"^9","eslint-config-next":"16.1.6",geist:"^1.4.1","lucide-react":"^0.575.0",next:"16.1.6",otpauth:"^9.5.0","posthog-js":"^1.352.0","posthog-node":"^5.21.2",qrcode:"^1.5.4",react:"19.2.3","react-dom":"19.2.3","react-markdown":"^10.1.0",recharts:"^3.7.0","rehype-highlight":"^7.0.2","remark-gfm":"^4.0.1","tailwind-merge":"^3.5.0",tailwindcss:"^4",typescript:"^5",vitest:"^4.0.18",xterm:"^5.3.0"},optionalDependencies:{"@types/qrcode":"^1.5.6",otpauth:"^9.5.0",qrcode:"^1.5.4"}})},35825,(e,t,s)=>{self._ENTRIES||={};let n=Promise.resolve().then(()=>e.i(58217));n.catch(()=>{}),self._ENTRIES.middleware_middleware=new Proxy(n,{get(e,t){if("then"===t)return(t,s)=>e.then(t,s);let s=(...s)=>e.then(e=>(0,e[t])(...s));return s.then=(s,n)=>e.then(e=>e[t]).then(s,n),s}})}]);
2
2
 
3
3
  //# sourceMappingURL=_d73df637._.js.map
@@ -22,7 +22,7 @@
22
22
  "wasm": [],
23
23
  "assets": [],
24
24
  "env": {
25
- "__NEXT_BUILD_ID": "L3G_bc6BtAETwbN4_gS1c",
25
+ "__NEXT_BUILD_ID": "Ku7_sP1T1UuqtRhUTiJZw",
26
26
  "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "itbnFuWGVpzWv9qa8xZsaJkOdOdqzWC6pwcN+/uc6aA=",
27
27
  "__NEXT_PREVIEW_MODE_ID": "6690daf667967d7be4ecf02a8aa27a76",
28
28
  "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "6a5b56301e057de9c73c51963a9428591cc757dcf50d6fbf829661e551060021",
@@ -1 +1 @@
1
- <!DOCTYPE html><!--L3G_bc6BtAETwbN4_gS1c--><html lang="en" class="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/441b03060c26dfd8.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/9b2c5451f0b67975.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/e7772d64463868eb.js" async=""></script><script src="/_next/static/chunks/c0e3303ecca1ef39.js" async=""></script><script src="/_next/static/chunks/f091501564eb2ea3.js" async=""></script><script src="/_next/static/chunks/turbopack-4c21186b79fb4c10.js" async=""></script><script src="/_next/static/chunks/577398c3f602f9d2.js" async=""></script><script src="/_next/static/chunks/56ddb2d75f5beb1a.js" async=""></script><script src="/_next/static/chunks/ff1a16fafef87110.js" async=""></script><script src="/_next/static/chunks/483effa74d32093a.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Spaces</title><meta name="description" content="Agent workspace manager for Claude, Codex, Gemini, and more"/><link rel="icon" href="/icon.png"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geistsans_d5a4f12f-module__Ur3q_a__variable geistmono_157ca88a-module__iaM1Ya__variable antialiased bg-zinc-950 text-zinc-100"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/9b2c5451f0b67975.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[12524,[\"/_next/static/chunks/577398c3f602f9d2.js\",\"/_next/static/chunks/56ddb2d75f5beb1a.js\"],\"Providers\"]\n3:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n5:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n:HL[\"/_next/static/chunks/441b03060c26dfd8.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"L3G_bc6BtAETwbN4_gS1c\",\"c\":[\"\",\"_not-found\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/441b03060c26dfd8.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/577398c3f602f9d2.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/56ddb2d75f5beb1a.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"geistsans_d5a4f12f-module__Ur3q_a__variable geistmono_157ca88a-module__iaM1Ya__variable antialiased bg-zinc-950 text-zinc-100\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[27201,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"IconMark\"]\n7:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Spaces\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Agent workspace manager for Claude, Codex, Gemini, and more\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.png\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
1
+ <!DOCTYPE html><!--Ku7_sP1T1UuqtRhUTiJZw--><html lang="en" class="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/8a7f58872c123a53.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/9b2c5451f0b67975.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/e7772d64463868eb.js" async=""></script><script src="/_next/static/chunks/c0e3303ecca1ef39.js" async=""></script><script src="/_next/static/chunks/f091501564eb2ea3.js" async=""></script><script src="/_next/static/chunks/turbopack-4c21186b79fb4c10.js" async=""></script><script src="/_next/static/chunks/577398c3f602f9d2.js" async=""></script><script src="/_next/static/chunks/56ddb2d75f5beb1a.js" async=""></script><script src="/_next/static/chunks/ff1a16fafef87110.js" async=""></script><script src="/_next/static/chunks/483effa74d32093a.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>Spaces</title><meta name="description" content="Agent workspace manager for Claude, Codex, Gemini, and more"/><link rel="icon" href="/icon.png"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geistsans_d5a4f12f-module__Ur3q_a__variable geistmono_157ca88a-module__iaM1Ya__variable antialiased bg-zinc-950 text-zinc-100"><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/9b2c5451f0b67975.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[12524,[\"/_next/static/chunks/577398c3f602f9d2.js\",\"/_next/static/chunks/56ddb2d75f5beb1a.js\"],\"Providers\"]\n3:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n4:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n5:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n:HL[\"/_next/static/chunks/8a7f58872c123a53.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Ku7_sP1T1UuqtRhUTiJZw\",\"c\":[\"\",\"_not-found\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/8a7f58872c123a53.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/577398c3f602f9d2.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/56ddb2d75f5beb1a.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"geistsans_d5a4f12f-module__Ur3q_a__variable geistmono_157ca88a-module__iaM1Ya__variable antialiased bg-zinc-950 text-zinc-100\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[27201,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"IconMark\"]\n7:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Spaces\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Agent workspace manager for Claude, Codex, Gemini, and more\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/icon.png\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
@@ -1,2 +1,2 @@
1
- <!DOCTYPE html><!--L3G_bc6BtAETwbN4_gS1c--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/9b2c5451f0b67975.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/e7772d64463868eb.js" async=""></script><script src="/_next/static/chunks/c0e3303ecca1ef39.js" async=""></script><script src="/_next/static/chunks/f091501564eb2ea3.js" async=""></script><script src="/_next/static/chunks/turbopack-4c21186b79fb4c10.js" async=""></script><script src="/_next/static/chunks/ff1a16fafef87110.js" async=""></script><script src="/_next/static/chunks/483effa74d32093a.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
2
- @media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/9b2c5451f0b67975.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"L3G_bc6BtAETwbN4_gS1c\",\"c\":[\"\",\"_global-error\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/ff1a16fafef87110.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/483effa74d32093a.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><!--Ku7_sP1T1UuqtRhUTiJZw--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/9b2c5451f0b67975.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/e7772d64463868eb.js" async=""></script><script src="/_next/static/chunks/c0e3303ecca1ef39.js" async=""></script><script src="/_next/static/chunks/f091501564eb2ea3.js" async=""></script><script src="/_next/static/chunks/turbopack-4c21186b79fb4c10.js" async=""></script><script src="/_next/static/chunks/ff1a16fafef87110.js" async=""></script><script src="/_next/static/chunks/483effa74d32093a.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: Internal Server Error.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
2
+ @media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/9b2c5451f0b67975.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n7:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"ViewportBoundary\"]\n9:I[97367,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"MetadataBoundary\"]\nb:I[68027,[\"/_next/static/chunks/ff1a16fafef87110.js\",\"/_next/static/chunks/483effa74d32093a.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Ku7_sP1T1UuqtRhUTiJZw\",\"c\":[\"\",\"_global-error\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/ff1a16fafef87110.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/483effa74d32093a.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L9\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$La\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$b\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\na:[]\n"])</script></body></html>