@jlongo78/agent-spaces 0.7.6 → 0.8.0

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 (800) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +6 -0
  3. package/.next/standalone/.next/build-manifest.json +2 -2
  4. package/.next/standalone/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/.next/required-server-files.json +19 -19
  6. package/.next/standalone/.next/routes-manifest.json +38 -0
  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_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(desktop)/analytics/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/(desktop)/cortex/page/react-loadable-manifest.json +1 -1
  11. package/.next/standalone/.next/server/app/(desktop)/cortex/page.js.nft.json +1 -1
  12. package/.next/standalone/.next/server/app/(desktop)/cortex/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(desktop)/network/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(desktop)/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(desktop)/projects/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(desktop)/sessions/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/.next/server/app/(desktop)/settings/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(desktop)/terminal/page.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/(desktop)/terminal/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(desktop)/workspaces/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  28. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  29. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  30. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  31. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  32. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  33. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  34. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  36. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  37. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  38. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  39. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  40. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  41. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  42. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  43. package/.next/standalone/.next/server/app/admin/analytics.html +1 -1
  44. package/.next/standalone/.next/server/app/admin/analytics.rsc +6 -7
  45. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics/__PAGE__.segment.rsc +2 -2
  46. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics.segment.rsc +1 -1
  47. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
  48. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  49. package/.next/standalone/.next/server/app/admin/analytics.segments/_full.segment.rsc +6 -7
  50. package/.next/standalone/.next/server/app/admin/analytics.segments/_head.segment.rsc +1 -1
  51. package/.next/standalone/.next/server/app/admin/analytics.segments/_index.segment.rsc +2 -2
  52. package/.next/standalone/.next/server/app/admin/analytics.segments/_tree.segment.rsc +2 -2
  53. package/.next/standalone/.next/server/app/admin/users.html +1 -1
  54. package/.next/standalone/.next/server/app/admin/users.rsc +2 -2
  55. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users/__PAGE__.segment.rsc +1 -1
  56. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users.segment.rsc +1 -1
  57. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
  58. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  59. package/.next/standalone/.next/server/app/admin/users.segments/_full.segment.rsc +2 -2
  60. package/.next/standalone/.next/server/app/admin/users.segments/_head.segment.rsc +1 -1
  61. package/.next/standalone/.next/server/app/admin/users.segments/_index.segment.rsc +2 -2
  62. package/.next/standalone/.next/server/app/admin/users.segments/_tree.segment.rsc +2 -2
  63. package/.next/standalone/.next/server/app/analytics.html +1 -1
  64. package/.next/standalone/.next/server/app/analytics.rsc +3 -3
  65. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics/__PAGE__.segment.rsc +2 -2
  66. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics.segment.rsc +1 -1
  67. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  68. package/.next/standalone/.next/server/app/analytics.segments/_full.segment.rsc +3 -3
  69. package/.next/standalone/.next/server/app/analytics.segments/_head.segment.rsc +1 -1
  70. package/.next/standalone/.next/server/app/analytics.segments/_index.segment.rsc +2 -2
  71. package/.next/standalone/.next/server/app/analytics.segments/_tree.segment.rsc +2 -2
  72. package/.next/standalone/.next/server/app/api/analytics/overview/route.js.nft.json +1 -1
  73. package/.next/standalone/.next/server/app/api/benchmark/lobes/route/app-paths-manifest.json +3 -0
  74. package/.next/standalone/.next/server/app/api/benchmark/lobes/route/build-manifest.json +11 -0
  75. package/.next/standalone/.next/server/app/api/benchmark/lobes/route/server-reference-manifest.json +4 -0
  76. package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js +7 -0
  77. package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js.map +5 -0
  78. package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js.nft.json +1 -0
  79. package/.next/standalone/.next/server/app/api/benchmark/lobes/route_client-reference-manifest.js +2 -0
  80. package/.next/standalone/.next/server/app/api/benchmark/run/route/app-paths-manifest.json +3 -0
  81. package/.next/standalone/.next/server/app/api/benchmark/run/route/build-manifest.json +11 -0
  82. package/.next/standalone/.next/server/app/api/benchmark/run/route/server-reference-manifest.json +4 -0
  83. package/.next/standalone/.next/server/app/api/benchmark/run/route.js +7 -0
  84. package/.next/standalone/.next/server/app/api/benchmark/run/route.js.map +5 -0
  85. package/.next/standalone/.next/server/app/api/benchmark/run/route.js.nft.json +1 -0
  86. package/.next/standalone/.next/server/app/api/benchmark/run/route_client-reference-manifest.js +2 -0
  87. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route/app-paths-manifest.json +3 -0
  88. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route/build-manifest.json +11 -0
  89. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route/server-reference-manifest.json +4 -0
  90. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js +7 -0
  91. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js.map +5 -0
  92. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js.nft.json +1 -0
  93. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route_client-reference-manifest.js +2 -0
  94. package/.next/standalone/.next/server/app/api/benchmark/runs/route/app-paths-manifest.json +3 -0
  95. package/.next/standalone/.next/server/app/api/benchmark/runs/route/build-manifest.json +11 -0
  96. package/.next/standalone/.next/server/app/api/benchmark/runs/route/server-reference-manifest.json +4 -0
  97. package/.next/standalone/.next/server/app/api/benchmark/runs/route.js +7 -0
  98. package/.next/standalone/.next/server/app/api/benchmark/runs/route.js.map +5 -0
  99. package/.next/standalone/.next/server/app/api/benchmark/runs/route.js.nft.json +1 -0
  100. package/.next/standalone/.next/server/app/api/benchmark/runs/route_client-reference-manifest.js +2 -0
  101. package/.next/standalone/.next/server/app/api/benchmark/status/route/app-paths-manifest.json +3 -0
  102. package/.next/standalone/.next/server/app/api/benchmark/status/route/build-manifest.json +11 -0
  103. package/.next/standalone/.next/server/app/api/benchmark/status/route/server-reference-manifest.json +4 -0
  104. package/.next/standalone/.next/server/app/api/benchmark/status/route.js +7 -0
  105. package/.next/standalone/.next/server/app/api/benchmark/status/route.js.map +5 -0
  106. package/.next/standalone/.next/server/app/api/benchmark/status/route.js.nft.json +1 -0
  107. package/.next/standalone/.next/server/app/api/benchmark/status/route_client-reference-manifest.js +2 -0
  108. package/.next/standalone/.next/server/app/api/bulk/route.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/api/config/route.js.nft.json +1 -1
  110. package/.next/standalone/.next/server/app/api/cortex/context/route.js.nft.json +1 -1
  111. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js.nft.json +1 -1
  113. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js.nft.json +1 -1
  114. package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js.nft.json +1 -1
  115. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/api/cortex/export/route.js.nft.json +1 -1
  117. package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js.nft.json +1 -1
  119. package/.next/standalone/.next/server/app/api/cortex/federation/search/route.js.nft.json +1 -1
  120. package/.next/standalone/.next/server/app/api/cortex/federation/teach/route.js.nft.json +1 -1
  121. package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js.nft.json +1 -1
  122. package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js.nft.json +1 -1
  123. package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js.nft.json +1 -1
  125. package/.next/standalone/.next/server/app/api/cortex/import/route.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/app/api/cortex/import/status/route.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js.nft.json +1 -1
  128. package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js.nft.json +1 -1
  129. package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js.nft.json +1 -1
  131. package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js.nft.json +1 -1
  132. package/.next/standalone/.next/server/app/api/cortex/lobes/route.js.nft.json +1 -1
  133. package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js.nft.json +1 -1
  134. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js.nft.json +1 -1
  135. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js.nft.json +1 -1
  137. package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js.nft.json +1 -1
  138. package/.next/standalone/.next/server/app/api/cortex/search/route.js.nft.json +1 -1
  139. package/.next/standalone/.next/server/app/api/cortex/settings/route.js.nft.json +1 -1
  140. package/.next/standalone/.next/server/app/api/cortex/status/route.js.nft.json +1 -1
  141. package/.next/standalone/.next/server/app/api/cortex/timeline/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/cortex/usage/route.js.nft.json +1 -1
  143. package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js.nft.json +1 -1
  144. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  145. package/.next/standalone/.next/server/app/api/files/route.js +1 -1
  146. package/.next/standalone/.next/server/app/api/files/route.js.nft.json +1 -1
  147. package/.next/standalone/.next/server/app/api/folders/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/network/handshake/route.js.nft.json +1 -1
  149. package/.next/standalone/.next/server/app/api/network/projects/route.js.nft.json +1 -1
  150. package/.next/standalone/.next/server/app/api/network/search/route.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js.nft.json +1 -1
  153. package/.next/standalone/.next/server/app/api/network/sessions/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js.nft.json +1 -1
  155. package/.next/standalone/.next/server/app/api/network/workspaces/route.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/app/api/panes/[id]/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/panes/route.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/sync/route.js.nft.json +1 -1
  165. package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -1
  166. package/.next/standalone/.next/server/app/api/tier/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/whisper/route/app-paths-manifest.json +3 -0
  168. package/.next/standalone/.next/server/app/api/whisper/route/build-manifest.json +11 -0
  169. package/.next/standalone/.next/server/app/api/whisper/route/server-reference-manifest.json +4 -0
  170. package/.next/standalone/.next/server/app/api/whisper/route.js +7 -0
  171. package/.next/standalone/.next/server/app/api/whisper/route.js.map +5 -0
  172. package/.next/standalone/.next/server/app/api/whisper/route.js.nft.json +1 -0
  173. package/.next/standalone/.next/server/app/api/whisper/route_client-reference-manifest.js +2 -0
  174. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js.nft.json +1 -1
  177. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js.nft.json +1 -1
  178. package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  181. package/.next/standalone/.next/server/app/cortex.html +1 -1
  182. package/.next/standalone/.next/server/app/cortex.rsc +3 -3
  183. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex/__PAGE__.segment.rsc +2 -2
  184. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex.segment.rsc +1 -1
  185. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  186. package/.next/standalone/.next/server/app/cortex.segments/_full.segment.rsc +3 -3
  187. package/.next/standalone/.next/server/app/cortex.segments/_head.segment.rsc +1 -1
  188. package/.next/standalone/.next/server/app/cortex.segments/_index.segment.rsc +2 -2
  189. package/.next/standalone/.next/server/app/cortex.segments/_tree.segment.rsc +2 -2
  190. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  191. package/.next/standalone/.next/server/app/login.html +1 -1
  192. package/.next/standalone/.next/server/app/login.rsc +2 -2
  193. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +2 -2
  194. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  195. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +2 -2
  196. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  197. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  198. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  199. package/.next/standalone/.next/server/app/m/page_client-reference-manifest.js +1 -1
  200. package/.next/standalone/.next/server/app/m/projects/page_client-reference-manifest.js +1 -1
  201. package/.next/standalone/.next/server/app/m/projects.html +1 -1
  202. package/.next/standalone/.next/server/app/m/projects.rsc +2 -2
  203. package/.next/standalone/.next/server/app/m/projects.segments/_full.segment.rsc +2 -2
  204. package/.next/standalone/.next/server/app/m/projects.segments/_head.segment.rsc +1 -1
  205. package/.next/standalone/.next/server/app/m/projects.segments/_index.segment.rsc +2 -2
  206. package/.next/standalone/.next/server/app/m/projects.segments/_tree.segment.rsc +2 -2
  207. package/.next/standalone/.next/server/app/m/projects.segments/m/projects/__PAGE__.segment.rsc +1 -1
  208. package/.next/standalone/.next/server/app/m/projects.segments/m/projects.segment.rsc +1 -1
  209. package/.next/standalone/.next/server/app/m/projects.segments/m.segment.rsc +1 -1
  210. package/.next/standalone/.next/server/app/m/sessions/[id]/page.js.nft.json +1 -1
  211. package/.next/standalone/.next/server/app/m/sessions/[id]/page_client-reference-manifest.js +1 -1
  212. package/.next/standalone/.next/server/app/m/sessions/page_client-reference-manifest.js +1 -1
  213. package/.next/standalone/.next/server/app/m/sessions.html +1 -1
  214. package/.next/standalone/.next/server/app/m/sessions.rsc +2 -2
  215. package/.next/standalone/.next/server/app/m/sessions.segments/_full.segment.rsc +2 -2
  216. package/.next/standalone/.next/server/app/m/sessions.segments/_head.segment.rsc +1 -1
  217. package/.next/standalone/.next/server/app/m/sessions.segments/_index.segment.rsc +2 -2
  218. package/.next/standalone/.next/server/app/m/sessions.segments/_tree.segment.rsc +2 -2
  219. package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions/__PAGE__.segment.rsc +1 -1
  220. package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions.segment.rsc +1 -1
  221. package/.next/standalone/.next/server/app/m/sessions.segments/m.segment.rsc +1 -1
  222. package/.next/standalone/.next/server/app/m/settings/page_client-reference-manifest.js +1 -1
  223. package/.next/standalone/.next/server/app/m/settings.html +1 -1
  224. package/.next/standalone/.next/server/app/m/settings.rsc +2 -2
  225. package/.next/standalone/.next/server/app/m/settings.segments/_full.segment.rsc +2 -2
  226. package/.next/standalone/.next/server/app/m/settings.segments/_head.segment.rsc +1 -1
  227. package/.next/standalone/.next/server/app/m/settings.segments/_index.segment.rsc +2 -2
  228. package/.next/standalone/.next/server/app/m/settings.segments/_tree.segment.rsc +2 -2
  229. package/.next/standalone/.next/server/app/m/settings.segments/m/settings/__PAGE__.segment.rsc +1 -1
  230. package/.next/standalone/.next/server/app/m/settings.segments/m/settings.segment.rsc +1 -1
  231. package/.next/standalone/.next/server/app/m/settings.segments/m.segment.rsc +1 -1
  232. package/.next/standalone/.next/server/app/m/terminal/page.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/m/terminal/page_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/m/terminal.html +1 -1
  235. package/.next/standalone/.next/server/app/m/terminal.rsc +3 -3
  236. package/.next/standalone/.next/server/app/m/terminal.segments/_full.segment.rsc +3 -3
  237. package/.next/standalone/.next/server/app/m/terminal.segments/_head.segment.rsc +1 -1
  238. package/.next/standalone/.next/server/app/m/terminal.segments/_index.segment.rsc +2 -2
  239. package/.next/standalone/.next/server/app/m/terminal.segments/_tree.segment.rsc +2 -2
  240. package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal/__PAGE__.segment.rsc +2 -2
  241. package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal.segment.rsc +1 -1
  242. package/.next/standalone/.next/server/app/m/terminal.segments/m.segment.rsc +1 -1
  243. package/.next/standalone/.next/server/app/m.html +1 -1
  244. package/.next/standalone/.next/server/app/m.rsc +2 -2
  245. package/.next/standalone/.next/server/app/m.segments/_full.segment.rsc +2 -2
  246. package/.next/standalone/.next/server/app/m.segments/_head.segment.rsc +1 -1
  247. package/.next/standalone/.next/server/app/m.segments/_index.segment.rsc +2 -2
  248. package/.next/standalone/.next/server/app/m.segments/_tree.segment.rsc +2 -2
  249. package/.next/standalone/.next/server/app/m.segments/m/__PAGE__.segment.rsc +1 -1
  250. package/.next/standalone/.next/server/app/m.segments/m.segment.rsc +1 -1
  251. package/.next/standalone/.next/server/app/network.html +1 -1
  252. package/.next/standalone/.next/server/app/network.rsc +2 -2
  253. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network/__PAGE__.segment.rsc +1 -1
  254. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network.segment.rsc +1 -1
  255. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  256. package/.next/standalone/.next/server/app/network.segments/_full.segment.rsc +2 -2
  257. package/.next/standalone/.next/server/app/network.segments/_head.segment.rsc +1 -1
  258. package/.next/standalone/.next/server/app/network.segments/_index.segment.rsc +2 -2
  259. package/.next/standalone/.next/server/app/network.segments/_tree.segment.rsc +2 -2
  260. package/.next/standalone/.next/server/app/projects.html +1 -1
  261. package/.next/standalone/.next/server/app/projects.rsc +2 -2
  262. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects/__PAGE__.segment.rsc +1 -1
  263. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects.segment.rsc +1 -1
  264. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  265. package/.next/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
  266. package/.next/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  267. package/.next/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  268. package/.next/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  269. package/.next/standalone/.next/server/app/sessions.html +1 -1
  270. package/.next/standalone/.next/server/app/sessions.rsc +2 -2
  271. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions/__PAGE__.segment.rsc +1 -1
  272. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions.segment.rsc +1 -1
  273. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  274. package/.next/standalone/.next/server/app/sessions.segments/_full.segment.rsc +2 -2
  275. package/.next/standalone/.next/server/app/sessions.segments/_head.segment.rsc +1 -1
  276. package/.next/standalone/.next/server/app/sessions.segments/_index.segment.rsc +2 -2
  277. package/.next/standalone/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
  278. package/.next/standalone/.next/server/app/settings.html +1 -1
  279. package/.next/standalone/.next/server/app/settings.rsc +2 -2
  280. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings/__PAGE__.segment.rsc +1 -1
  281. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings.segment.rsc +1 -1
  282. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  283. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  284. package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  285. package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  286. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  287. package/.next/standalone/.next/server/app/terminal.html +1 -1
  288. package/.next/standalone/.next/server/app/terminal.rsc +3 -3
  289. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal/__PAGE__.segment.rsc +2 -2
  290. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal.segment.rsc +1 -1
  291. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  292. package/.next/standalone/.next/server/app/terminal.segments/_full.segment.rsc +3 -3
  293. package/.next/standalone/.next/server/app/terminal.segments/_head.segment.rsc +1 -1
  294. package/.next/standalone/.next/server/app/terminal.segments/_index.segment.rsc +2 -2
  295. package/.next/standalone/.next/server/app/terminal.segments/_tree.segment.rsc +2 -2
  296. package/.next/standalone/.next/server/app/vr/page/react-loadable-manifest.json +3 -3
  297. package/.next/standalone/.next/server/app/vr/page_client-reference-manifest.js +1 -1
  298. package/.next/standalone/.next/server/app/vr.html +1 -1
  299. package/.next/standalone/.next/server/app/vr.rsc +3 -3
  300. package/.next/standalone/.next/server/app/vr.segments/_full.segment.rsc +3 -3
  301. package/.next/standalone/.next/server/app/vr.segments/_head.segment.rsc +1 -1
  302. package/.next/standalone/.next/server/app/vr.segments/_index.segment.rsc +2 -2
  303. package/.next/standalone/.next/server/app/vr.segments/_tree.segment.rsc +2 -2
  304. package/.next/standalone/.next/server/app/vr.segments/vr/__PAGE__.segment.rsc +2 -2
  305. package/.next/standalone/.next/server/app/vr.segments/vr.segment.rsc +1 -1
  306. package/.next/standalone/.next/server/app/workspaces.html +1 -1
  307. package/.next/standalone/.next/server/app/workspaces.rsc +2 -2
  308. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces/__PAGE__.segment.rsc +1 -1
  309. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces.segment.rsc +1 -1
  310. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  311. package/.next/standalone/.next/server/app/workspaces.segments/_full.segment.rsc +2 -2
  312. package/.next/standalone/.next/server/app/workspaces.segments/_head.segment.rsc +1 -1
  313. package/.next/standalone/.next/server/app/workspaces.segments/_index.segment.rsc +2 -2
  314. package/.next/standalone/.next/server/app/workspaces.segments/_tree.segment.rsc +2 -2
  315. package/.next/standalone/.next/server/app-paths-manifest.json +6 -0
  316. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0041efe4._.js +2 -2
  317. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00bf0ace._.js +2 -2
  318. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0a837dd9._.js +98 -0
  319. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e71d908._.js +3 -3
  320. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e9142f3._.js +2 -2
  321. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10e47926._.js +1 -1
  322. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1665dc78._.js +2 -2
  323. package/.next/standalone/.next/server/chunks/[root-of-the-server]__175cbabf._.js +2 -2
  324. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1adae357._.js +2 -2
  325. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1d359752._.js +2 -2
  326. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1e8fabeb._.js +2 -2
  327. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1f8deca0._.js +8 -8
  328. package/.next/standalone/.next/server/chunks/[root-of-the-server]__253fdda1._.js +2 -2
  329. package/.next/standalone/.next/server/chunks/[root-of-the-server]__28e6434f._.js +2 -2
  330. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2a386564._.js +3 -3
  331. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2c20fb38._.js +2 -2
  332. package/.next/standalone/.next/server/chunks/[root-of-the-server]__309132cd._.js +1 -1
  333. package/.next/standalone/.next/server/chunks/[root-of-the-server]__33fec964._.js +3 -3
  334. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3786d8ae._.js +2 -2
  335. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3ae92407._.js +2 -2
  336. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3beda9fe._.js +2 -2
  337. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4619e9bd._.js +1 -1
  338. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4a051043._.js +2 -2
  339. package/.next/standalone/.next/server/chunks/[root-of-the-server]__508002e4._.js +2 -2
  340. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5086c373._.js +2 -2
  341. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5913e097._.js +2 -2
  342. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5b5f68d2._.js +2 -2
  343. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5c1f2459._.js +2 -2
  344. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5ec8c977._.js +2 -2
  345. package/.next/standalone/.next/server/chunks/[root-of-the-server]__63cebc6c._.js +2 -2
  346. package/.next/standalone/.next/server/chunks/[root-of-the-server]__64d30d4d._.js +2 -2
  347. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6c54fc2e._.js +2 -2
  348. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6dc1fb7e._.js +2 -2
  349. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6e568102._.js +2 -2
  350. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6faa04c0._.js +2 -2
  351. package/.next/standalone/.next/server/chunks/[root-of-the-server]__74a34dc3._.js +2 -2
  352. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7819e4cf._.js +98 -0
  353. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7e7250a4._.js +2 -2
  354. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8309e0a4._.js +2 -2
  355. package/.next/standalone/.next/server/chunks/[root-of-the-server]__86cc0e2b._.js +6 -6
  356. package/.next/standalone/.next/server/chunks/[root-of-the-server]__89c2565a._.js +2 -2
  357. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8d178ad9._.js +2 -2
  358. package/.next/standalone/.next/server/chunks/[root-of-the-server]__93ee06f3._.js +2 -2
  359. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9e1f0137._.js +98 -0
  360. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9e4c154a._.js +2 -2
  361. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a9d2e1d3._.js +2 -2
  362. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ae53d343._.js +2 -2
  363. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b3a04cef._.js +2 -2
  364. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b4270b77._.js +1 -1
  365. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b6b6ce60._.js +3 -3
  366. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c0757773._.js +98 -0
  367. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c24cfa91._.js +3 -0
  368. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c7c47529._.js +3 -0
  369. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c88b63f7._.js +2 -2
  370. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cba5f007._.js +1 -1
  371. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cbf4ceb0._.js +2 -2
  372. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cefdba2f._.js +2 -2
  373. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cf9e82bb._.js +2 -2
  374. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d2897392._.js +2 -2
  375. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d3b2d856._.js +2 -2
  376. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d73273ca._.js +2 -2
  377. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d8417eb6._.js +2 -2
  378. package/.next/standalone/.next/server/chunks/[root-of-the-server]__dc2a55de._.js +2 -2
  379. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e0d4690b._.js +2 -2
  380. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e3ea8547._.js +98 -0
  381. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e678dd53._.js +1 -1
  382. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e9223f55._.js +2 -2
  383. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ea630076._.js +2 -2
  384. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f26ca49d._.js +1 -1
  385. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f33e1101._.js +2 -2
  386. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f515f865._.js +2 -2
  387. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fceb5d60._.js +2 -2
  388. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fed41403._.js +2 -2
  389. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ff2e98c2._.js +2 -2
  390. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_benchmark_lobes_route_actions_ea7beadb.js +3 -0
  391. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_benchmark_run_route_actions_9ed0ba41.js +3 -0
  392. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_benchmark_runs_[id]_route_actions_39f90307.js +3 -0
  393. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_benchmark_runs_route_actions_37cf958b.js +3 -0
  394. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_benchmark_status_route_actions_009e2cba.js +3 -0
  395. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_whisper_route_actions_be9a633d.js +3 -0
  396. package/.next/standalone/.next/server/chunks/ssr/{_c1cfdd09._.js → [root-of-the-server]__16621ac5._.js} +2 -2
  397. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__66aca5d4._.js +1 -1
  398. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__9c81bd86._.js +3 -0
  399. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__e3bf6054._.js +5 -0
  400. package/.next/standalone/.next/server/chunks/ssr/{_81abf587._.js → _31ada310._.js} +2 -2
  401. package/.next/standalone/.next/server/chunks/ssr/_648a8a2d._.js +3 -0
  402. package/.next/standalone/.next/server/chunks/ssr/_999dae61._.js +3 -0
  403. package/.next/standalone/.next/server/chunks/ssr/_c48c91e5._.js +3 -0
  404. package/.next/standalone/.next/server/chunks/ssr/_f8959434._.js +3 -0
  405. package/.next/standalone/.next/server/chunks/ssr/src_app_(desktop)_cortex_page_tsx_0f33d8b3._.js +1 -1
  406. package/.next/standalone/.next/server/chunks/ssr/src_components_terminal_terminal-pane_tsx_803c5e2c._.js +9 -0
  407. package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__32a0045c._.js +1 -1
  408. package/.next/standalone/.next/server/edge/chunks/_d73df637._.js +1 -1
  409. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  410. package/.next/standalone/.next/server/pages/404.html +1 -1
  411. package/.next/standalone/.next/server/pages/500.html +2 -2
  412. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  413. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  414. package/.next/standalone/.next/static/chunks/157826a3253f8ccf.js +7 -0
  415. package/.next/standalone/.next/static/chunks/{396eac60f496f178.js → 2f9f09924ff9d447.js} +1 -1
  416. package/.next/standalone/.next/static/chunks/{e23f20b51a75a5bb.js → 4ced66ef12d91b38.js} +35 -12
  417. package/.next/standalone/.next/static/chunks/57d04d161b8a01b3.js +7 -0
  418. package/.next/standalone/.next/static/chunks/709c4608e5b935e8.js +1 -0
  419. package/.next/standalone/.next/static/chunks/{7424664c6ffa94bd.js → 7b14d4e609b55b9b.js} +1 -1
  420. package/.next/standalone/.next/static/chunks/7be37f4a56b8f575.js +1 -0
  421. package/.next/standalone/.next/static/chunks/8021d5a2269ff113.js +1 -0
  422. package/.next/standalone/.next/static/chunks/a3fd93a9dde3cacc.js +1 -0
  423. package/.next/standalone/.next/static/chunks/{412140a02893327a.js → afee31c7399daf2a.js} +1 -1
  424. package/.next/standalone/.next/static/chunks/b92fdbf858aeb0b3.js +1 -0
  425. package/.next/standalone/.next/static/chunks/c17274c2f95d4ba2.js +5 -0
  426. package/.next/standalone/.next/static/chunks/e116953dc83d4eec.js +1 -0
  427. package/.next/standalone/.next/static/chunks/e82f4414650587cf.js +7 -0
  428. package/.next/standalone/.next/static/chunks/f6464729e7aa0da0.css +3 -0
  429. package/.next/standalone/LICENSE +661 -0
  430. package/.next/standalone/NOTICE +5 -0
  431. package/.next/standalone/README.md +131 -0
  432. package/.next/standalone/bin/cortex-hook.sh +62 -62
  433. package/.next/standalone/bin/cortex-mcp.js +60 -60
  434. package/.next/standalone/bin/fix-standalone-externals.js +79 -0
  435. package/.next/standalone/bin/lib/auto-setup.js +110 -0
  436. package/.next/standalone/bin/mdns-service.js +171 -0
  437. package/.next/standalone/bin/postinstall.js +35 -0
  438. package/.next/standalone/bin/setup-admin.js +195 -0
  439. package/.next/standalone/bin/spaces-dev.js +247 -0
  440. package/.next/standalone/bin/spaces-install.js +638 -0
  441. package/.next/standalone/bin/spaces-reset-totp.js +50 -0
  442. package/.next/standalone/bin/spaces-service.js +1020 -0
  443. package/.next/standalone/bin/spaces-setup.js +253 -0
  444. package/.next/standalone/bin/spaces.js +788 -0
  445. package/.next/standalone/bin/ssh-auth-keys.sh +68 -0
  446. package/.next/standalone/bin/terminal-server.js +1807 -0
  447. package/.next/standalone/docker-compose.yml +28 -0
  448. package/.next/standalone/docs/architecture.md +387 -0
  449. package/.next/standalone/docs/cortex.md +293 -0
  450. package/.next/standalone/docs/getting-started.md +96 -0
  451. package/.next/standalone/docs/plans/2026-02-24-multi-agent-sessions-design.md +133 -0
  452. package/.next/standalone/docs/plans/2026-02-24-multi-agent-sessions-plan.md +959 -0
  453. package/.next/standalone/docs/plans/2026-03-07-service-command-design.md +146 -0
  454. package/.next/standalone/docs/plans/2026-03-07-service-command-plan.md +254 -0
  455. package/.next/standalone/docs/server-install.md +564 -0
  456. package/.next/standalone/docs/social-card.html +150 -0
  457. package/.next/standalone/docs/superpowers/plans/2026-03-12-spaces-cortex.md +5270 -0
  458. package/.next/standalone/docs/superpowers/plans/2026-03-13-cortex-wiring.md +1387 -1387
  459. package/.next/standalone/docs/superpowers/plans/2026-03-14-cortex-v2-entity-graph.md +1923 -1923
  460. package/.next/standalone/docs/superpowers/plans/2026-03-14-cortex-v2-knowledge-evolution.md +1113 -1113
  461. package/.next/standalone/docs/superpowers/plans/2026-03-15-cortex-v2-boundary-engine.md +853 -853
  462. package/.next/standalone/docs/superpowers/plans/2026-03-15-cortex-v2-context-engine.md +1274 -1274
  463. package/.next/standalone/docs/superpowers/plans/2026-03-15-cortex-v2-signal-ingestion.md +933 -933
  464. package/.next/standalone/docs/superpowers/plans/2026-03-16-cortex-lobes.md +1080 -1080
  465. package/.next/standalone/docs/superpowers/plans/2026-03-16-cortex-v2-gravity-system.md +768 -768
  466. package/.next/standalone/docs/superpowers/plans/2026-03-16-cortex-v2-ui.md +1108 -1108
  467. package/.next/standalone/docs/superpowers/plans/2026-03-18-cortex-ui-integration.md +1846 -1846
  468. package/.next/standalone/docs/superpowers/plans/2026-03-19-vr-phase1-shell.md +1639 -0
  469. package/.next/standalone/docs/superpowers/specs/2026-03-11-universe-view-design.md +320 -0
  470. package/.next/standalone/docs/superpowers/specs/2026-03-12-spaces-brain-design.md +720 -0
  471. package/.next/standalone/docs/superpowers/specs/2026-03-13-cortex-wiring-design.md +268 -268
  472. package/.next/standalone/docs/superpowers/specs/2026-03-14-cortex-v2-design.md +623 -623
  473. package/.next/standalone/docs/superpowers/specs/2026-03-16-cortex-lobes-design.md +263 -263
  474. package/.next/standalone/docs/superpowers/specs/2026-03-16-cortex-v2-ui-design.md +240 -240
  475. package/.next/standalone/docs/superpowers/specs/2026-03-16-pane-ux-design.md +77 -0
  476. package/.next/standalone/docs/superpowers/specs/2026-03-18-cortex-ui-integration-design.md +341 -341
  477. package/.next/standalone/docs/superpowers/specs/2026-03-19-vr-phase1-shell-design.md +288 -0
  478. package/.next/standalone/docs/tiers.md +104 -0
  479. package/.next/standalone/eslint.config.mjs +18 -0
  480. package/.next/standalone/next.config.ts +20 -0
  481. package/.next/standalone/nginx.conf +53 -0
  482. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/README.md +46 -0
  483. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +221 -0
  484. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/index.js +1 -0
  485. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  486. package/.next/standalone/node_modules/@img/sharp-libvips-linux-x64/package.json +42 -0
  487. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +46 -0
  488. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/glib-2.0/include/glibconfig.h +221 -0
  489. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +1 -0
  490. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  491. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +42 -0
  492. package/.next/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +30 -0
  493. package/.next/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  494. package/.next/standalone/node_modules/@img/{sharp-win32-x64 → sharp-linux-x64}/package.json +46 -39
  495. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  496. package/.next/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +46 -0
  497. package/.next/standalone/package-lock.json +14154 -0
  498. package/.next/standalone/package.json +104 -103
  499. package/.next/standalone/postcss.config.mjs +7 -0
  500. package/.next/standalone/scripts/rebuild.cmd +65 -0
  501. package/.next/standalone/scripts/rebuild.sh +59 -0
  502. package/.next/standalone/server.js +1 -1
  503. package/.next/standalone/src/app/(desktop)/admin/analytics/page.tsx +266 -0
  504. package/.next/standalone/src/app/(desktop)/admin/users/page.tsx +399 -0
  505. package/.next/standalone/src/app/(desktop)/analytics/page.tsx +166 -0
  506. package/.next/standalone/src/app/(desktop)/cortex/page.tsx +81 -78
  507. package/.next/standalone/src/app/(desktop)/dashboard-client.tsx +56 -0
  508. package/.next/standalone/src/app/(desktop)/layout.tsx +18 -0
  509. package/.next/standalone/src/app/(desktop)/network/page.tsx +137 -0
  510. package/.next/standalone/src/app/(desktop)/page.tsx +17 -0
  511. package/.next/standalone/src/app/(desktop)/projects/page.tsx +68 -0
  512. package/.next/standalone/src/app/(desktop)/sessions/[id]/page.tsx +519 -0
  513. package/.next/standalone/src/app/(desktop)/sessions/page.tsx +145 -0
  514. package/.next/standalone/src/app/(desktop)/settings/page.tsx +446 -0
  515. package/.next/standalone/src/app/(desktop)/terminal/layout.tsx +7 -0
  516. package/.next/standalone/src/app/(desktop)/terminal/page.tsx +1151 -0
  517. package/.next/standalone/src/app/(desktop)/terminal/pane/[id]/page.tsx +211 -0
  518. package/.next/standalone/src/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page.tsx +192 -0
  519. package/.next/standalone/src/app/(desktop)/workspaces/page.tsx +12 -0
  520. package/.next/standalone/src/app/api/admin/analytics/route.ts +10 -0
  521. package/.next/standalone/src/app/api/admin/users/[id]/route.ts +20 -0
  522. package/.next/standalone/src/app/api/admin/users/route.ts +15 -0
  523. package/.next/standalone/src/app/api/analytics/overview/route.ts +80 -0
  524. package/.next/standalone/src/app/api/auth/login/route.ts +10 -0
  525. package/.next/standalone/src/app/api/auth/logout/route.ts +9 -0
  526. package/.next/standalone/src/app/api/auth/me/route.ts +22 -0
  527. package/.next/standalone/src/app/api/auth/totp/setup/route.ts +10 -0
  528. package/.next/standalone/src/app/api/auth/totp/status/route.ts +10 -0
  529. package/.next/standalone/src/app/api/auth/totp/verify/route.ts +10 -0
  530. package/.next/standalone/src/app/api/benchmark/lobes/route.ts +16 -0
  531. package/.next/standalone/src/app/api/benchmark/run/route.ts +92 -0
  532. package/.next/standalone/src/app/api/benchmark/runs/[id]/route.ts +26 -0
  533. package/.next/standalone/src/app/api/benchmark/runs/route.ts +16 -0
  534. package/.next/standalone/src/app/api/benchmark/status/route.ts +35 -0
  535. package/.next/standalone/src/app/api/bulk/route.ts +34 -0
  536. package/.next/standalone/src/app/api/chat/route.ts +85 -0
  537. package/.next/standalone/src/app/api/config/route.ts +30 -0
  538. package/.next/standalone/src/app/api/cortex/context/route.ts +78 -78
  539. package/.next/standalone/src/app/api/cortex/curation/assess/route.ts +27 -27
  540. package/.next/standalone/src/app/api/cortex/curation/publish/route.ts +23 -23
  541. package/.next/standalone/src/app/api/cortex/curation/refine/route.ts +23 -23
  542. package/.next/standalone/src/app/api/cortex/curation/review/route.ts +29 -29
  543. package/.next/standalone/src/app/api/cortex/curation/seed/route.ts +23 -23
  544. package/.next/standalone/src/app/api/cortex/export/route.ts +40 -40
  545. package/.next/standalone/src/app/api/cortex/federation/pending/route.ts +20 -20
  546. package/.next/standalone/src/app/api/cortex/federation/resolve/route.ts +43 -43
  547. package/.next/standalone/src/app/api/cortex/federation/search/route.ts +35 -35
  548. package/.next/standalone/src/app/api/cortex/federation/teach/route.ts +76 -76
  549. package/.next/standalone/src/app/api/cortex/graph/edges/route.ts +112 -112
  550. package/.next/standalone/src/app/api/cortex/graph/entities/[id]/route.ts +73 -73
  551. package/.next/standalone/src/app/api/cortex/graph/entities/route.ts +75 -75
  552. package/.next/standalone/src/app/api/cortex/graph/populate/route.ts +203 -203
  553. package/.next/standalone/src/app/api/cortex/import/route.ts +75 -75
  554. package/.next/standalone/src/app/api/cortex/import/status/route.ts +15 -15
  555. package/.next/standalone/src/app/api/cortex/ingest/bootstrap/route.ts +29 -29
  556. package/.next/standalone/src/app/api/cortex/ingest/status/route.ts +15 -15
  557. package/.next/standalone/src/app/api/cortex/knowledge/[id]/route.ts +91 -91
  558. package/.next/standalone/src/app/api/cortex/knowledge/route.ts +93 -93
  559. package/.next/standalone/src/app/api/cortex/lobes/[id]/route.ts +67 -67
  560. package/.next/standalone/src/app/api/cortex/lobes/route.ts +22 -22
  561. package/.next/standalone/src/app/api/cortex/lobes/share/route.ts +80 -80
  562. package/.next/standalone/src/app/api/cortex/marketplace/browse/route.ts +43 -43
  563. package/.next/standalone/src/app/api/cortex/marketplace/preview/route.ts +46 -46
  564. package/.next/standalone/src/app/api/cortex/mcp/call/route.ts +11 -11
  565. package/.next/standalone/src/app/api/cortex/mcp/tools/route.ts +6 -6
  566. package/.next/standalone/src/app/api/cortex/search/route.ts +43 -43
  567. package/.next/standalone/src/app/api/cortex/settings/route.ts +33 -33
  568. package/.next/standalone/src/app/api/cortex/status/route.ts +169 -169
  569. package/.next/standalone/src/app/api/cortex/timeline/route.ts +42 -42
  570. package/.next/standalone/src/app/api/cortex/usage/route.ts +31 -31
  571. package/.next/standalone/src/app/api/cortex/workspace/[id]/context/route.ts +41 -41
  572. package/.next/standalone/src/app/api/events/route.ts +40 -0
  573. package/.next/standalone/src/app/api/files/route.ts +187 -0
  574. package/.next/standalone/src/app/api/folders/route.ts +97 -0
  575. package/.next/standalone/src/app/api/network/connect-callback/route.ts +11 -0
  576. package/.next/standalone/src/app/api/network/connect-request/[id]/route.ts +11 -0
  577. package/.next/standalone/src/app/api/network/connect-request/route.ts +17 -0
  578. package/.next/standalone/src/app/api/network/discovered/route.ts +9 -0
  579. package/.next/standalone/src/app/api/network/handshake/route.ts +25 -0
  580. package/.next/standalone/src/app/api/network/health/route.ts +10 -0
  581. package/.next/standalone/src/app/api/network/identity/route.ts +15 -0
  582. package/.next/standalone/src/app/api/network/keys/[id]/route.ts +10 -0
  583. package/.next/standalone/src/app/api/network/keys/route.ts +15 -0
  584. package/.next/standalone/src/app/api/network/nodes/[id]/route.ts +15 -0
  585. package/.next/standalone/src/app/api/network/nodes/check/route.ts +9 -0
  586. package/.next/standalone/src/app/api/network/nodes/route.ts +15 -0
  587. package/.next/standalone/src/app/api/network/projects/route.ts +25 -0
  588. package/.next/standalone/src/app/api/network/proxy/[nodeId]/[...path]/route.ts +15 -0
  589. package/.next/standalone/src/app/api/network/search/route.ts +38 -0
  590. package/.next/standalone/src/app/api/network/sessions/[id]/messages/route.ts +36 -0
  591. package/.next/standalone/src/app/api/network/sessions/[id]/route.ts +34 -0
  592. package/.next/standalone/src/app/api/network/sessions/route.ts +43 -0
  593. package/.next/standalone/src/app/api/network/terminal/token/route.ts +10 -0
  594. package/.next/standalone/src/app/api/network/workspaces/[id]/route.ts +34 -0
  595. package/.next/standalone/src/app/api/network/workspaces/route.ts +61 -0
  596. package/.next/standalone/src/app/api/panes/[id]/route.ts +60 -0
  597. package/.next/standalone/src/app/api/panes/route.ts +39 -0
  598. package/.next/standalone/src/app/api/projects/route.ts +13 -0
  599. package/.next/standalone/src/app/api/search/route.ts +47 -0
  600. package/.next/standalone/src/app/api/sessions/[id]/chat/route.ts +120 -0
  601. package/.next/standalone/src/app/api/sessions/[id]/messages/route.ts +28 -0
  602. package/.next/standalone/src/app/api/sessions/[id]/route.ts +73 -0
  603. package/.next/standalone/src/app/api/sessions/route.ts +64 -0
  604. package/.next/standalone/src/app/api/sync/route.ts +24 -0
  605. package/.next/standalone/src/app/api/tags/route.ts +35 -0
  606. package/.next/standalone/src/app/api/tier/route.ts +16 -0
  607. package/.next/standalone/src/app/api/updates/route.ts +53 -0
  608. package/.next/standalone/src/app/api/whisper/route.ts +90 -0
  609. package/.next/standalone/src/app/api/workspaces/[id]/context/[key]/route.ts +39 -0
  610. package/.next/standalone/src/app/api/workspaces/[id]/context/route.ts +28 -0
  611. package/.next/standalone/src/app/api/workspaces/[id]/messages/[msgId]/route.ts +17 -0
  612. package/.next/standalone/src/app/api/workspaces/[id]/messages/route.ts +39 -0
  613. package/.next/standalone/src/app/api/workspaces/[id]/route.ts +47 -0
  614. package/.next/standalone/src/app/api/workspaces/[id]/sessions/route.ts +62 -0
  615. package/.next/standalone/src/app/api/workspaces/route.ts +79 -0
  616. package/.next/standalone/src/app/globals.css +85 -0
  617. package/.next/standalone/src/app/icon.png +0 -0
  618. package/.next/standalone/src/app/layout.tsx +33 -0
  619. package/.next/standalone/src/app/login/layout.tsx +7 -0
  620. package/.next/standalone/src/app/login/page.tsx +315 -0
  621. package/.next/standalone/src/app/m/layout.tsx +16 -0
  622. package/.next/standalone/src/app/m/page.tsx +118 -0
  623. package/.next/standalone/src/app/m/projects/page.tsx +64 -0
  624. package/.next/standalone/src/app/m/sessions/[id]/page.tsx +168 -0
  625. package/.next/standalone/src/app/m/sessions/page.tsx +177 -0
  626. package/.next/standalone/src/app/m/settings/page.tsx +230 -0
  627. package/.next/standalone/src/app/m/terminal/page.tsx +413 -0
  628. package/.next/standalone/src/app/vr/page.tsx +21 -0
  629. package/.next/standalone/src/app/vr/vr-app.tsx +163 -0
  630. package/.next/standalone/src/app/vr/vr-controls.tsx +139 -0
  631. package/.next/standalone/src/app/vr/vr-door.tsx +82 -0
  632. package/.next/standalone/src/app/vr/vr-environment.tsx +71 -0
  633. package/.next/standalone/src/app/vr/vr-gaze.tsx +89 -0
  634. package/.next/standalone/src/app/vr/vr-layout.ts +49 -0
  635. package/.next/standalone/src/app/vr/vr-lobby.tsx +97 -0
  636. package/.next/standalone/src/app/vr/vr-pane.tsx +195 -0
  637. package/.next/standalone/src/app/vr/vr-room.tsx +79 -0
  638. package/.next/standalone/src/app/vr/vr-terminal.tsx +303 -0
  639. package/.next/standalone/src/components/auth/totp-gate.tsx +183 -0
  640. package/.next/standalone/src/components/bus/activity-panel.tsx +261 -0
  641. package/.next/standalone/src/components/common/color-picker.tsx +35 -0
  642. package/.next/standalone/src/components/common/dev-directory-picker.tsx +339 -0
  643. package/.next/standalone/src/components/common/folder-picker.tsx +200 -0
  644. package/.next/standalone/src/components/common/tag-picker.tsx +190 -0
  645. package/.next/standalone/src/components/common/workspace-picker.tsx +113 -0
  646. package/.next/standalone/src/components/cortex/benchmark-tab.tsx +880 -0
  647. package/.next/standalone/src/components/cortex/constants.ts +29 -29
  648. package/.next/standalone/src/components/cortex/cortex-dashboard.tsx +304 -304
  649. package/.next/standalone/src/components/cortex/cortex-indicator.tsx +44 -44
  650. package/.next/standalone/src/components/cortex/cortex-panel.tsx +140 -140
  651. package/.next/standalone/src/components/cortex/cortex-settings.tsx +221 -221
  652. package/.next/standalone/src/components/cortex/curation-tab.tsx +810 -810
  653. package/.next/standalone/src/components/cortex/entity-detail.tsx +101 -101
  654. package/.next/standalone/src/components/cortex/entity-graph.tsx +382 -382
  655. package/.next/standalone/src/components/cortex/import-dialog.tsx +212 -212
  656. package/.next/standalone/src/components/cortex/injection-badge.tsx +72 -72
  657. package/.next/standalone/src/components/cortex/knowledge-card.tsx +109 -109
  658. package/.next/standalone/src/components/cortex/knowledge-tab.tsx +158 -158
  659. package/.next/standalone/src/components/cortex/lobe-settings.tsx +215 -215
  660. package/.next/standalone/src/components/cortex/marketplace-card.tsx +126 -126
  661. package/.next/standalone/src/components/cortex/marketplace-tab.tsx +113 -113
  662. package/.next/standalone/src/components/dashboard/activity-chart.tsx +41 -0
  663. package/.next/standalone/src/components/dashboard/model-usage-chart.tsx +61 -0
  664. package/.next/standalone/src/components/dashboard/recent-sessions.tsx +68 -0
  665. package/.next/standalone/src/components/dashboard/stats-cards.tsx +36 -0
  666. package/.next/standalone/src/components/files/file-explorer.tsx +703 -0
  667. package/.next/standalone/src/components/layout/providers.tsx +38 -0
  668. package/.next/standalone/src/components/layout/sidebar.tsx +170 -0
  669. package/.next/standalone/src/components/layout/tier-provider.tsx +53 -0
  670. package/.next/standalone/src/components/layout/update-banner.tsx +92 -0
  671. package/.next/standalone/src/components/mobile/bottom-nav.tsx +46 -0
  672. package/.next/standalone/src/components/mobile/mobile-chat-input.tsx +244 -0
  673. package/.next/standalone/src/components/mobile/mobile-header.tsx +44 -0
  674. package/.next/standalone/src/components/mobile/mobile-session-card.tsx +56 -0
  675. package/.next/standalone/src/components/mobile/mobile-terminal-input.tsx +71 -0
  676. package/.next/standalone/src/components/mobile/mobile-terminal-pane.tsx +300 -0
  677. package/.next/standalone/src/components/mobile/mobile-terminal-toolbar.tsx +53 -0
  678. package/.next/standalone/src/components/mobile/pull-to-refresh.tsx +82 -0
  679. package/.next/standalone/src/components/mobile/voice-input.tsx +53 -0
  680. package/.next/standalone/src/components/network/api-key-list.tsx +190 -0
  681. package/.next/standalone/src/components/network/connection-requests.tsx +94 -0
  682. package/.next/standalone/src/components/network/node-add-dialog.tsx +131 -0
  683. package/.next/standalone/src/components/network/node-badge.tsx +26 -0
  684. package/.next/standalone/src/components/network/node-list.tsx +207 -0
  685. package/.next/standalone/src/components/network/node-selector.tsx +49 -0
  686. package/.next/standalone/src/components/sessions/session-filters.tsx +116 -0
  687. package/.next/standalone/src/components/sessions/session-list.tsx +485 -0
  688. package/.next/standalone/src/components/terminal/terminal-pane.tsx +874 -0
  689. package/.next/standalone/src/components/viewer/chat-input.tsx +275 -0
  690. package/.next/standalone/src/components/viewer/message-renderer.tsx +551 -0
  691. package/.next/standalone/src/components/workspace/universe-cluster.tsx +131 -0
  692. package/.next/standalone/src/components/workspace/universe-orb.tsx +128 -0
  693. package/.next/standalone/src/components/workspace/universe-types.ts +22 -0
  694. package/.next/standalone/src/components/workspace/universe-utils.ts +11 -0
  695. package/.next/standalone/src/components/workspace/universe-view.tsx +397 -0
  696. package/.next/standalone/src/components/workspace/workspace-chooser.tsx +616 -0
  697. package/.next/standalone/src/hooks/use-benchmark.ts +71 -0
  698. package/.next/standalone/src/hooks/use-bus.ts +147 -0
  699. package/.next/standalone/src/hooks/use-idle-detection.ts +79 -0
  700. package/.next/standalone/src/hooks/use-network.ts +229 -0
  701. package/.next/standalone/src/hooks/use-sessions.ts +437 -0
  702. package/.next/standalone/src/hooks/use-speech-recognition.ts +113 -0
  703. package/.next/standalone/src/hooks/use-sse.ts +35 -0
  704. package/.next/standalone/src/hooks/use-tier.ts +39 -0
  705. package/.next/standalone/src/lib/agents.ts +70 -0
  706. package/.next/standalone/src/lib/aider/parser.ts +111 -0
  707. package/.next/standalone/src/lib/api.ts +19 -0
  708. package/.next/standalone/src/lib/auth.ts +47 -0
  709. package/.next/standalone/src/lib/claude/parser.ts +212 -0
  710. package/.next/standalone/src/lib/claude/stats.ts +204 -0
  711. package/.next/standalone/src/lib/codex/parser.ts +265 -0
  712. package/.next/standalone/src/lib/config.ts +115 -0
  713. package/.next/standalone/src/lib/cortex/benchmark.ts +67 -0
  714. package/.next/standalone/src/lib/cortex/config.ts +40 -40
  715. package/.next/standalone/src/lib/cortex/debug.ts +10 -10
  716. package/.next/standalone/src/lib/cortex/distillation/usage-store.ts +18 -18
  717. package/.next/standalone/src/lib/cortex/graph/resolver.ts +10 -10
  718. package/.next/standalone/src/lib/cortex/graph/types.ts +22 -22
  719. package/.next/standalone/src/lib/cortex/index.ts +56 -56
  720. package/.next/standalone/src/lib/cortex/ingestion/bootstrap.ts +14 -14
  721. package/.next/standalone/src/lib/cortex/knowledge/compat.ts +14 -14
  722. package/.next/standalone/src/lib/cortex/knowledge/contradiction.ts +10 -10
  723. package/.next/standalone/src/lib/cortex/knowledge/types.ts +67 -67
  724. package/.next/standalone/src/lib/cortex/lobes/config.ts +16 -16
  725. package/.next/standalone/src/lib/cortex/lobes/resolver.ts +8 -8
  726. package/.next/standalone/src/lib/cortex/lobes/shares.ts +14 -14
  727. package/.next/standalone/src/lib/cortex/mcp/server.ts +8 -8
  728. package/.next/standalone/src/lib/cortex/portability/exporter.ts +6 -6
  729. package/.next/standalone/src/lib/cortex/portability/importer.ts +10 -10
  730. package/.next/standalone/src/lib/cortex/retrieval/context-engine.ts +10 -10
  731. package/.next/standalone/src/lib/cortex/types.ts +39 -39
  732. package/.next/standalone/src/lib/cost-calculator.ts +48 -0
  733. package/.next/standalone/src/lib/db/init.ts +71 -0
  734. package/.next/standalone/src/lib/db/queries.ts +718 -0
  735. package/.next/standalone/src/lib/db/schema.ts +202 -0
  736. package/.next/standalone/src/lib/events/sse.ts +36 -0
  737. package/.next/standalone/src/lib/gemini/parser.ts +216 -0
  738. package/.next/standalone/src/lib/license.ts +56 -0
  739. package/.next/standalone/src/lib/pro.ts +31 -0
  740. package/.next/standalone/src/lib/sync/indexer.ts +429 -0
  741. package/.next/standalone/src/lib/sync/watcher.ts +64 -0
  742. package/.next/standalone/src/lib/teams.ts +31 -0
  743. package/.next/standalone/src/lib/telemetry.ts +75 -0
  744. package/.next/standalone/src/lib/terminal/server.ts +128 -0
  745. package/.next/standalone/src/lib/tier.ts +38 -0
  746. package/.next/standalone/src/lib/utils.ts +72 -0
  747. package/.next/standalone/src/middleware.ts +133 -0
  748. package/.next/standalone/src/types/claude.ts +208 -0
  749. package/.next/standalone/src/types/network.ts +61 -0
  750. package/.next/standalone/tests/setup.ts +8 -0
  751. package/.next/standalone/tsconfig.json +34 -34
  752. package/.next/standalone/vitest.config.ts +24 -0
  753. package/LICENSE +661 -661
  754. package/README.md +131 -131
  755. package/bin/cortex-hook.sh +62 -62
  756. package/bin/cortex-mcp.js +60 -60
  757. package/bin/fix-standalone-externals.js +79 -79
  758. package/bin/lib/auto-setup.js +110 -110
  759. package/bin/mdns-service.js +171 -171
  760. package/bin/postinstall.js +35 -35
  761. package/bin/setup-admin.js +195 -195
  762. package/bin/spaces-dev.js +247 -208
  763. package/bin/spaces-install.js +638 -599
  764. package/bin/spaces-reset-totp.js +50 -50
  765. package/bin/spaces-service.js +1020 -1020
  766. package/bin/spaces-setup.js +253 -253
  767. package/bin/spaces.js +788 -776
  768. package/bin/ssh-auth-keys.sh +68 -68
  769. package/bin/terminal-server.js +1807 -1683
  770. package/package.json +104 -103
  771. package/.next/standalone/.claude/settings.local.json +0 -55
  772. package/.next/standalone/.claude/spaces-env.json +0 -1
  773. package/.next/standalone/.next/server/chunks/[root-of-the-server]__eb8acb65._.js +0 -3
  774. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__e921fdfc._.js +0 -5
  775. package/.next/standalone/.next/server/chunks/ssr/_2230ad2d._.js +0 -3
  776. package/.next/standalone/.next/server/chunks/ssr/_5cf334fd._.js +0 -3
  777. package/.next/standalone/.next/server/chunks/ssr/_db0abd0a._.js +0 -3
  778. package/.next/standalone/.next/server/chunks/ssr/_db2fec84._.js +0 -3
  779. package/.next/standalone/.next/server/chunks/ssr/_f4e57187._.js +0 -3
  780. package/.next/standalone/.next/server/chunks/ssr/src_40fa36ce._.js +0 -7
  781. package/.next/standalone/.next/static/chunks/003e7aa1adfe577d.js +0 -1
  782. package/.next/standalone/.next/static/chunks/232d8aae4fefab70.js +0 -1
  783. package/.next/standalone/.next/static/chunks/5325351ef49cb65f.js +0 -1
  784. package/.next/standalone/.next/static/chunks/559735e598ca3cbb.js +0 -1
  785. package/.next/standalone/.next/static/chunks/5d5d7b0095dd52ae.js +0 -1
  786. package/.next/standalone/.next/static/chunks/7a7c0d9d875332a3.js +0 -1
  787. package/.next/standalone/.next/static/chunks/898f380eba90427a.js +0 -1
  788. package/.next/standalone/.next/static/chunks/95339e55722bb4ca.js +0 -5
  789. package/.next/standalone/.next/static/chunks/9cd594813c539df9.js +0 -1
  790. package/.next/standalone/.next/static/chunks/aae9e0fa485bd835.js +0 -5
  791. package/.next/standalone/.next/static/chunks/c1a95aebf6725f64.css +0 -3
  792. package/.next/standalone/.next/static/chunks/c515eb77d9410aa0.js +0 -5
  793. package/.next/standalone/.next/static/chunks/d9ae203a7f123546.js +0 -5
  794. package/.next/standalone/.next/static/chunks/f9f2628207848ac2.js +0 -1
  795. package/.next/standalone/.spaces/cortex-context.md +0 -70
  796. package/.next/standalone/node_modules/@img/sharp-win32-x64/lib/sharp-win32-x64.node +0 -0
  797. /package/.next/standalone/.next/static/{ncDe4k4gvD0788HAnq_3G → PcpzUspSK8QDdwzAJz8br}/_buildManifest.js +0 -0
  798. /package/.next/standalone/.next/static/{ncDe4k4gvD0788HAnq_3G → PcpzUspSK8QDdwzAJz8br}/_clientMiddlewareManifest.json +0 -0
  799. /package/.next/standalone/.next/static/{ncDe4k4gvD0788HAnq_3G → PcpzUspSK8QDdwzAJz8br}/_ssgManifest.js +0 -0
  800. /package/.next/standalone/node_modules/@img/{sharp-win32-x64 → sharp-libvips-linux-x64}/versions.json +0 -0
@@ -10,6 +10,6 @@ Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime`}proces
10
10
  Read more: https://nextjs.org/docs/messages/middleware-request-page
11
11
  `)}}class p extends Error{constructor(){super(`The request.ua has been removed in favour of \`userAgent\` function.
12
12
  Read more: https://nextjs.org/docs/messages/middleware-parse-user-agent
13
- `)}}let h="_N_T_",f={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"};function g(e){var t,r,n,i,o,a=[],s=0;function l(){for(;s<e.length&&/\s/.test(e.charAt(s));)s+=1;return s<e.length}for(;s<e.length;){for(t=s,o=!1;l();)if(","===(r=e.charAt(s))){for(n=s,s+=1,l(),i=s;s<e.length&&"="!==(r=e.charAt(s))&&";"!==r&&","!==r;)s+=1;s<e.length&&"="===e.charAt(s)?(o=!0,s=i,a.push(e.substring(t,n)),t=s):s=n+1}else s+=1;(!o||s>=e.length)&&a.push(e.substring(t,e.length))}return a}function v(e){let t={},r=[];if(e)for(let[n,i]of e.entries())"set-cookie"===n.toLowerCase()?(r.push(...g(i)),t[n]=1===r.length?r[0]:r):t[n]=i;return t}function m(e){try{return String(new URL(String(e)))}catch(t){throw Object.defineProperty(Error(`URL is malformed "${String(e)}". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`,{cause:t}),"__NEXT_ERROR_CODE",{value:"E61",enumerable:!1,configurable:!0})}}({...f,GROUP:{builtinReact:[f.reactServerComponents,f.actionBrowser],serverOnly:[f.reactServerComponents,f.actionBrowser,f.instrument,f.middleware],neutralTarget:[f.apiNode,f.apiEdge],clientOnly:[f.serverSideRendering,f.appPagesBrowser],bundled:[f.reactServerComponents,f.actionBrowser,f.serverSideRendering,f.appPagesBrowser,f.shared,f.instrument,f.middleware],appPages:[f.reactServerComponents,f.serverSideRendering,f.appPagesBrowser,f.actionBrowser]}});let b=Symbol("response"),y=Symbol("passThrough"),w=Symbol("waitUntil");class _{constructor(e,t){this[y]=!1,this[w]=t?{kind:"external",function:t}:{kind:"internal",promises:[]}}respondWith(e){this[b]||(this[b]=Promise.resolve(e))}passThroughOnException(){this[y]=!0}waitUntil(e){if("external"===this[w].kind)return(0,this[w].function)(e);this[w].promises.push(e)}}class x extends _{constructor(e){var t;super(e.request,null==(t=e.context)?void 0:t.waitUntil),this.sourcePage=e.page}get request(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}respondWith(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}}function S(e){return e.replace(/\/$/,"")||"/"}function E(e){let t=e.indexOf("#"),r=e.indexOf("?"),n=r>-1&&(t<0||r<t);return n||t>-1?{pathname:e.substring(0,n?r:t),query:n?e.substring(r,t>-1?t:void 0):"",hash:t>-1?e.slice(t):""}:{pathname:e,query:"",hash:""}}function R(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:n,hash:i}=E(e);return`${t}${r}${n}${i}`}function C(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:n,hash:i}=E(e);return`${r}${t}${n}${i}`}function T(e,t){if("string"!=typeof e)return!1;let{pathname:r}=E(e);return r===t||r.startsWith(t+"/")}let O=new WeakMap;function k(e,t){let r;if(!t)return{pathname:e};let n=O.get(t);n||(n=t.map(e=>e.toLowerCase()),O.set(t,n));let i=e.split("/",2);if(!i[1])return{pathname:e};let o=i[1].toLowerCase(),a=n.indexOf(o);return a<0?{pathname:e}:(r=t[a],{pathname:e=e.slice(r.length+1)||"/",detectedLocale:r})}let P=/(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)/;function N(e,t){return new URL(String(e).replace(P,"localhost"),t&&String(t).replace(P,"localhost"))}let A=Symbol("NextURLInternal");class I{constructor(e,t,r){let n,i;"object"==typeof t&&"pathname"in t||"string"==typeof t?(n=t,i=r||{}):i=r||t||{},this[A]={url:N(e,n??i.base),options:i,basePath:""},this.analyze()}analyze(){var e,t,r,n,i;let o=function(e,t){let{basePath:r,i18n:n,trailingSlash:i}=t.nextConfig??{},o={pathname:e,trailingSlash:"/"!==e?e.endsWith("/"):i};r&&T(o.pathname,r)&&(o.pathname=function(e,t){if(!T(e,t))return e;let r=e.slice(t.length);return r.startsWith("/")?r:`/${r}`}(o.pathname,r),o.basePath=r);let a=o.pathname;if(o.pathname.startsWith("/_next/data/")&&o.pathname.endsWith(".json")){let e=o.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/");o.buildId=e[0],a="index"!==e[1]?`/${e.slice(1).join("/")}`:"/",!0===t.parseData&&(o.pathname=a)}if(n){let e=t.i18nProvider?t.i18nProvider.analyze(o.pathname):k(o.pathname,n.locales);o.locale=e.detectedLocale,o.pathname=e.pathname??o.pathname,!e.detectedLocale&&o.buildId&&(e=t.i18nProvider?t.i18nProvider.analyze(a):k(a,n.locales)).detectedLocale&&(o.locale=e.detectedLocale)}return o}(this[A].url.pathname,{nextConfig:this[A].options.nextConfig,parseData:!0,i18nProvider:this[A].options.i18nProvider}),a=function(e,t){let r;if(t?.host&&!Array.isArray(t.host))r=t.host.toString().split(":",1)[0];else{if(!e.hostname)return;r=e.hostname}return r.toLowerCase()}(this[A].url,this[A].options.headers);this[A].domainLocale=this[A].options.i18nProvider?this[A].options.i18nProvider.detectDomainLocale(a):function(e,t,r){if(e){for(let n of(r&&(r=r.toLowerCase()),e))if(t===n.domain?.split(":",1)[0].toLowerCase()||r===n.defaultLocale.toLowerCase()||n.locales?.some(e=>e.toLowerCase()===r))return n}}(null==(t=this[A].options.nextConfig)||null==(e=t.i18n)?void 0:e.domains,a);let s=(null==(r=this[A].domainLocale)?void 0:r.defaultLocale)||(null==(i=this[A].options.nextConfig)||null==(n=i.i18n)?void 0:n.defaultLocale);this[A].url.pathname=o.pathname,this[A].defaultLocale=s,this[A].basePath=o.basePath??"",this[A].buildId=o.buildId,this[A].locale=o.locale??s,this[A].trailingSlash=o.trailingSlash}formatPathname(){var e;let t;return t=function(e,t,r,n){if(!t||t===r)return e;let i=e.toLowerCase();return!n&&(T(i,"/api")||T(i,`/${t.toLowerCase()}`))?e:R(e,`/${t}`)}((e={basePath:this[A].basePath,buildId:this[A].buildId,defaultLocale:this[A].options.forceLocale?void 0:this[A].defaultLocale,locale:this[A].locale,pathname:this[A].url.pathname,trailingSlash:this[A].trailingSlash}).pathname,e.locale,e.buildId?void 0:e.defaultLocale,e.ignorePrefix),(e.buildId||!e.trailingSlash)&&(t=S(t)),e.buildId&&(t=C(R(t,`/_next/data/${e.buildId}`),"/"===e.pathname?"index.json":".json")),t=R(t,e.basePath),!e.buildId&&e.trailingSlash?t.endsWith("/")?t:C(t,"/"):S(t)}formatSearch(){return this[A].url.search}get buildId(){return this[A].buildId}set buildId(e){this[A].buildId=e}get locale(){return this[A].locale??""}set locale(e){var t,r;if(!this[A].locale||!(null==(r=this[A].options.nextConfig)||null==(t=r.i18n)?void 0:t.locales.includes(e)))throw Object.defineProperty(TypeError(`The NextURL configuration includes no locale "${e}"`),"__NEXT_ERROR_CODE",{value:"E597",enumerable:!1,configurable:!0});this[A].locale=e}get defaultLocale(){return this[A].defaultLocale}get domainLocale(){return this[A].domainLocale}get searchParams(){return this[A].url.searchParams}get host(){return this[A].url.host}set host(e){this[A].url.host=e}get hostname(){return this[A].url.hostname}set hostname(e){this[A].url.hostname=e}get port(){return this[A].url.port}set port(e){this[A].url.port=e}get protocol(){return this[A].url.protocol}set protocol(e){this[A].url.protocol=e}get href(){let e=this.formatPathname(),t=this.formatSearch();return`${this.protocol}//${this.host}${e}${t}${this.hash}`}set href(e){this[A].url=N(e),this.analyze()}get origin(){return this[A].url.origin}get pathname(){return this[A].url.pathname}set pathname(e){this[A].url.pathname=e}get hash(){return this[A].url.hash}set hash(e){this[A].url.hash=e}get search(){return this[A].url.search}set search(e){this[A].url.search=e}get password(){return this[A].url.password}set password(e){this[A].url.password=e}get username(){return this[A].url.username}set username(e){this[A].url.username=e}get basePath(){return this[A].basePath}set basePath(e){this[A].basePath=e.startsWith("/")?e:`/${e}`}toString(){return this.href}toJSON(){return this.href}[Symbol.for("edge-runtime.inspect.custom")](){return{href:this.href,origin:this.origin,protocol:this.protocol,username:this.username,password:this.password,host:this.host,hostname:this.hostname,port:this.port,pathname:this.pathname,search:this.search,searchParams:this.searchParams,hash:this.hash}}clone(){return new I(String(this),this[A].options)}}var j,L,M,q,D,U,$,B,H,W,z,V,X=e.i(28042);let F=Symbol("internal request");class G extends Request{constructor(e,t={}){const r="string"!=typeof e&&"url"in e?e.url:String(e);m(r),e instanceof Request?super(e,t):super(r,t);const n=new I(r,{headers:v(this.headers),nextConfig:t.nextConfig});this[F]={cookies:new X.RequestCookies(this.headers),nextUrl:n,url:n.toString()}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,nextUrl:this.nextUrl,url:this.url,bodyUsed:this.bodyUsed,cache:this.cache,credentials:this.credentials,destination:this.destination,headers:Object.fromEntries(this.headers),integrity:this.integrity,keepalive:this.keepalive,method:this.method,mode:this.mode,redirect:this.redirect,referrer:this.referrer,referrerPolicy:this.referrerPolicy,signal:this.signal}}get cookies(){return this[F].cookies}get nextUrl(){return this[F].nextUrl}get page(){throw new d}get ua(){throw new p}get url(){return this[F].url}}class K{static get(e,t,r){let n=Reflect.get(e,t,r);return"function"==typeof n?n.bind(e):n}static set(e,t,r,n){return Reflect.set(e,t,r,n)}static has(e,t){return Reflect.has(e,t)}static deleteProperty(e,t){return Reflect.deleteProperty(e,t)}}let Q=Symbol("internal response"),J=new Set([301,302,303,307,308]);function Y(e,t){var r;if(null==e||null==(r=e.request)?void 0:r.headers){if(!(e.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let r=[];for(let[n,i]of e.request.headers)t.set("x-middleware-request-"+n,i),r.push(n);t.set("x-middleware-override-headers",r.join(","))}}class Z extends Response{constructor(e,t={}){super(e,t);const r=this.headers,n=new Proxy(new X.ResponseCookies(r),{get(e,n,i){switch(n){case"delete":case"set":return(...i)=>{let o=Reflect.apply(e[n],e,i),a=new Headers(r);return o instanceof X.ResponseCookies&&r.set("x-middleware-set-cookie",o.getAll().map(e=>(0,X.stringifyCookie)(e)).join(",")),Y(t,a),o};default:return K.get(e,n,i)}}});this[Q]={cookies:n,url:t.url?new I(t.url,{headers:v(r),nextConfig:t.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[Q].cookies}static json(e,t){let r=Response.json(e,t);return new Z(r.body,r)}static redirect(e,t){let r="number"==typeof t?t:(null==t?void 0:t.status)??307;if(!J.has(r))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let n="object"==typeof t?t:{},i=new Headers(null==n?void 0:n.headers);return i.set("Location",m(e)),new Z(null,{...n,headers:i,status:r})}static rewrite(e,t){let r=new Headers(null==t?void 0:t.headers);return r.set("x-middleware-rewrite",m(e)),Y(t,r),new Z(null,{...t,headers:r})}static next(e){let t=new Headers(null==e?void 0:e.headers);return t.set("x-middleware-next","1"),Y(e,t),new Z(null,{...e,headers:t})}}function ee(e,t){let r="string"==typeof t?new URL(t):t,n=new URL(e,t),i=n.origin===r.origin;return{url:i?n.toString().slice(r.origin.length):n.toString(),isRelative:i}}let et="next-router-prefetch",er=["rsc","next-router-state-tree",et,"next-hmr-refresh","next-router-segment-prefetch"],en="_rsc";class ei extends Error{constructor(){super("Headers cannot be modified. Read more: https://nextjs.org/docs/app/api-reference/functions/headers")}static callable(){throw new ei}}class eo extends Headers{constructor(e){super(),this.headers=new Proxy(e,{get(t,r,n){if("symbol"==typeof r)return K.get(t,r,n);let i=r.toLowerCase(),o=Object.keys(e).find(e=>e.toLowerCase()===i);if(void 0!==o)return K.get(t,o,n)},set(t,r,n,i){if("symbol"==typeof r)return K.set(t,r,n,i);let o=r.toLowerCase(),a=Object.keys(e).find(e=>e.toLowerCase()===o);return K.set(t,a??r,n,i)},has(t,r){if("symbol"==typeof r)return K.has(t,r);let n=r.toLowerCase(),i=Object.keys(e).find(e=>e.toLowerCase()===n);return void 0!==i&&K.has(t,i)},deleteProperty(t,r){if("symbol"==typeof r)return K.deleteProperty(t,r);let n=r.toLowerCase(),i=Object.keys(e).find(e=>e.toLowerCase()===n);return void 0===i||K.deleteProperty(t,i)}})}static seal(e){return new Proxy(e,{get(e,t,r){switch(t){case"append":case"delete":case"set":return ei.callable;default:return K.get(e,t,r)}}})}merge(e){return Array.isArray(e)?e.join(", "):e}static from(e){return e instanceof Headers?e:new eo(e)}append(e,t){let r=this.headers[e];"string"==typeof r?this.headers[e]=[r,t]:Array.isArray(r)?r.push(t):this.headers[e]=t}delete(e){delete this.headers[e]}get(e){let t=this.headers[e];return void 0!==t?this.merge(t):null}has(e){return void 0!==this.headers[e]}set(e,t){this.headers[e]=t}forEach(e,t){for(let[r,n]of this.entries())e.call(t,n,r,this)}*entries(){for(let e of Object.keys(this.headers)){let t=e.toLowerCase(),r=this.get(t);yield[t,r]}}*keys(){for(let e of Object.keys(this.headers)){let t=e.toLowerCase();yield t}}*values(){for(let e of Object.keys(this.headers)){let t=this.get(e);yield t}}[Symbol.iterator](){return this.entries()}}let ea=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class es{disable(){throw ea}getStore(){}run(){throw ea}exit(){throw ea}enterWith(){throw ea}static bind(e){return e}}let el="u">typeof globalThis&&globalThis.AsyncLocalStorage;function eu(){return el?new el:new es}let ec=eu();class ed extends Error{constructor(){super("Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#options")}static callable(){throw new ed}}class ep{static seal(e){return new Proxy(e,{get(e,t,r){switch(t){case"clear":case"delete":case"set":return ed.callable;default:return K.get(e,t,r)}}})}}let eh=Symbol.for("next.mutated.cookies");class ef{static wrap(e,t){let r=new X.ResponseCookies(new Headers);for(let t of e.getAll())r.set(t);let n=[],i=new Set,o=()=>{let e=ec.getStore();if(e&&(e.pathWasRevalidated=1),n=r.getAll().filter(e=>i.has(e.name)),t){let e=[];for(let t of n){let r=new X.ResponseCookies(new Headers);r.set(t),e.push(r.toString())}t(e)}},a=new Proxy(r,{get(e,t,r){switch(t){case eh:return n;case"delete":return function(...t){i.add("string"==typeof t[0]?t[0]:t[0].name);try{return e.delete(...t),a}finally{o()}};case"set":return function(...t){i.add("string"==typeof t[0]?t[0]:t[0].name);try{return e.set(...t),a}finally{o()}};default:return K.get(e,t,r)}}});return a}}function eg(e,t){if("action"!==e.phase)throw new ed}var ev=((j=ev||{}).handleRequest="BaseServer.handleRequest",j.run="BaseServer.run",j.pipe="BaseServer.pipe",j.getStaticHTML="BaseServer.getStaticHTML",j.render="BaseServer.render",j.renderToResponseWithComponents="BaseServer.renderToResponseWithComponents",j.renderToResponse="BaseServer.renderToResponse",j.renderToHTML="BaseServer.renderToHTML",j.renderError="BaseServer.renderError",j.renderErrorToResponse="BaseServer.renderErrorToResponse",j.renderErrorToHTML="BaseServer.renderErrorToHTML",j.render404="BaseServer.render404",j),em=((L=em||{}).loadDefaultErrorComponents="LoadComponents.loadDefaultErrorComponents",L.loadComponents="LoadComponents.loadComponents",L),eb=((M=eb||{}).getRequestHandler="NextServer.getRequestHandler",M.getRequestHandlerWithMetadata="NextServer.getRequestHandlerWithMetadata",M.getServer="NextServer.getServer",M.getServerRequestHandler="NextServer.getServerRequestHandler",M.createServer="createServer.createServer",M),ey=((q=ey||{}).compression="NextNodeServer.compression",q.getBuildId="NextNodeServer.getBuildId",q.createComponentTree="NextNodeServer.createComponentTree",q.clientComponentLoading="NextNodeServer.clientComponentLoading",q.getLayoutOrPageModule="NextNodeServer.getLayoutOrPageModule",q.generateStaticRoutes="NextNodeServer.generateStaticRoutes",q.generateFsStaticRoutes="NextNodeServer.generateFsStaticRoutes",q.generatePublicRoutes="NextNodeServer.generatePublicRoutes",q.generateImageRoutes="NextNodeServer.generateImageRoutes.route",q.sendRenderResult="NextNodeServer.sendRenderResult",q.proxyRequest="NextNodeServer.proxyRequest",q.runApi="NextNodeServer.runApi",q.render="NextNodeServer.render",q.renderHTML="NextNodeServer.renderHTML",q.imageOptimizer="NextNodeServer.imageOptimizer",q.getPagePath="NextNodeServer.getPagePath",q.getRoutesManifest="NextNodeServer.getRoutesManifest",q.findPageComponents="NextNodeServer.findPageComponents",q.getFontManifest="NextNodeServer.getFontManifest",q.getServerComponentManifest="NextNodeServer.getServerComponentManifest",q.getRequestHandler="NextNodeServer.getRequestHandler",q.renderToHTML="NextNodeServer.renderToHTML",q.renderError="NextNodeServer.renderError",q.renderErrorToHTML="NextNodeServer.renderErrorToHTML",q.render404="NextNodeServer.render404",q.startResponse="NextNodeServer.startResponse",q.route="route",q.onProxyReq="onProxyReq",q.apiResolver="apiResolver",q.internalFetch="internalFetch",q),ew=((D=ew||{}).startServer="startServer.startServer",D),e_=((U=e_||{}).getServerSideProps="Render.getServerSideProps",U.getStaticProps="Render.getStaticProps",U.renderToString="Render.renderToString",U.renderDocument="Render.renderDocument",U.createBodyResult="Render.createBodyResult",U),ex=(($=ex||{}).renderToString="AppRender.renderToString",$.renderToReadableStream="AppRender.renderToReadableStream",$.getBodyResult="AppRender.getBodyResult",$.fetch="AppRender.fetch",$),eS=((B=eS||{}).executeRoute="Router.executeRoute",B),eE=((H=eE||{}).runHandler="Node.runHandler",H),eR=((W=eR||{}).runHandler="AppRouteRouteHandlers.runHandler",W),eC=((z=eC||{}).generateMetadata="ResolveMetadata.generateMetadata",z.generateViewport="ResolveMetadata.generateViewport",z),eT=((V=eT||{}).execute="Middleware.execute",V);let eO=new Set(["Middleware.execute","BaseServer.handleRequest","Render.getServerSideProps","Render.getStaticProps","AppRender.fetch","AppRender.getBodyResult","Render.renderDocument","Node.runHandler","AppRouteRouteHandlers.runHandler","ResolveMetadata.generateMetadata","ResolveMetadata.generateViewport","NextNodeServer.createComponentTree","NextNodeServer.findPageComponents","NextNodeServer.getLayoutOrPageModule","NextNodeServer.startResponse","NextNodeServer.clientComponentLoading"]),ek=new Set(["NextNodeServer.findPageComponents","NextNodeServer.createComponentTree","NextNodeServer.clientComponentLoading"]);function eP(e){return null!==e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then}let eN=process.env.NEXT_OTEL_PERFORMANCE_PREFIX,{context:eA,propagation:eI,trace:ej,SpanStatusCode:eL,SpanKind:eM,ROOT_CONTEXT:eq}=t=e.r(11646);class eD extends Error{constructor(e,t){super(),this.bubble=e,this.result=t}}let eU=(e,t)=>{"object"==typeof t&&null!==t&&t instanceof eD&&t.bubble?e.setAttribute("next.bubble",!0):(t&&(e.recordException(t),e.setAttribute("error.type",t.name)),e.setStatus({code:eL.ERROR,message:null==t?void 0:t.message})),e.end()},e$=new Map,eB=t.createContextKey("next.rootSpanId"),eH=0,eW={set(e,t,r){e.push({key:t,value:r})}},ez=(r=new class e{getTracerInstance(){return ej.getTracer("next.js","0.0.1")}getContext(){return eA}getTracePropagationData(){let e=eA.active(),t=[];return eI.inject(e,t,eW),t}getActiveScopeSpan(){return ej.getSpan(null==eA?void 0:eA.active())}withPropagatedContext(e,t,r){let n=eA.active();if(ej.getSpanContext(n))return t();let i=eI.extract(n,e,r);return eA.with(i,t)}trace(...e){let[t,r,n]=e,{fn:i,options:o}="function"==typeof r?{fn:r,options:{}}:{fn:n,options:{...r}},a=o.spanName??t;if(!eO.has(t)&&"1"!==process.env.NEXT_OTEL_VERBOSE||o.hideSpan)return i();let s=this.getSpanContext((null==o?void 0:o.parentSpan)??this.getActiveScopeSpan());s||(s=(null==eA?void 0:eA.active())??eq);let l=s.getValue(eB),u="number"!=typeof l||!e$.has(l),c=eH++;return o.attributes={"next.span_name":a,"next.span_type":t,...o.attributes},eA.with(s.setValue(eB,c),()=>this.getTracerInstance().startActiveSpan(a,o,e=>{let r;eN&&t&&ek.has(t)&&(r="performance"in globalThis&&"measure"in performance?globalThis.performance.now():void 0);let n=!1,a=()=>{!n&&(n=!0,e$.delete(c),r&&performance.measure(`${eN}:next-${(t.split(".").pop()||"").replace(/[A-Z]/g,e=>"-"+e.toLowerCase())}`,{start:r,end:performance.now()}))};if(u&&e$.set(c,new Map(Object.entries(o.attributes??{}))),i.length>1)try{return i(e,t=>eU(e,t))}catch(t){throw eU(e,t),t}finally{a()}try{let t=i(e);if(eP(t))return t.then(t=>(e.end(),t)).catch(t=>{throw eU(e,t),t}).finally(a);return e.end(),a(),t}catch(t){throw eU(e,t),a(),t}}))}wrap(...e){let t=this,[r,n,i]=3===e.length?e:[e[0],{},e[1]];return eO.has(r)||"1"===process.env.NEXT_OTEL_VERBOSE?function(){let e=n;"function"==typeof e&&"function"==typeof i&&(e=e.apply(this,arguments));let o=arguments.length-1,a=arguments[o];if("function"!=typeof a)return t.trace(r,e,()=>i.apply(this,arguments));{let n=t.getContext().bind(eA.active(),a);return t.trace(r,e,(e,t)=>(arguments[o]=function(e){return null==t||t(e),n.apply(this,arguments)},i.apply(this,arguments)))}}:i}startSpan(...e){let[t,r]=e,n=this.getSpanContext((null==r?void 0:r.parentSpan)??this.getActiveScopeSpan());return this.getTracerInstance().startSpan(t,r,n)}getSpanContext(e){return e?ej.setSpan(eA.active(),e):void 0}getRootSpanAttributes(){let e=eA.active().getValue(eB);return e$.get(e)}setRootSpanAttribute(e,t){let r=eA.active().getValue(eB),n=e$.get(r);n&&!n.has(e)&&n.set(e,t)}withSpan(e,t){let r=ej.setSpan(eA.active(),e);return eA.with(r,t)}},()=>r),eV="__prerender_bypass";Symbol("__next_preview_data"),Symbol(eV);class eX{constructor(e,t,r,n){var i;const o=e&&function(e,t){let r=eo.from(e.headers);return{isOnDemandRevalidate:r.get("x-prerender-revalidate")===t.previewModeId,revalidateOnlyGenerated:r.has("x-prerender-revalidate-if-generated")}}(t,e).isOnDemandRevalidate,a=null==(i=r.get(eV))?void 0:i.value;this._isEnabled=!!(!o&&a&&e&&a===e.previewModeId),this._previewModeId=null==e?void 0:e.previewModeId,this._mutableCookies=n}get isEnabled(){return this._isEnabled}enable(){if(!this._previewModeId)throw Object.defineProperty(Error("Invariant: previewProps missing previewModeId this should never happen"),"__NEXT_ERROR_CODE",{value:"E93",enumerable:!1,configurable:!0});this._mutableCookies.set({name:eV,value:this._previewModeId,httpOnly:!0,sameSite:"none",secure:!0,path:"/"}),this._isEnabled=!0}disable(){this._mutableCookies.set({name:eV,value:"",httpOnly:!0,sameSite:"none",secure:!0,path:"/",expires:new Date(0)}),this._isEnabled=!1}}function eF(e,t){if("x-middleware-set-cookie"in e.headers&&"string"==typeof e.headers["x-middleware-set-cookie"]){let r=e.headers["x-middleware-set-cookie"],n=new Headers;for(let e of g(r))n.append("set-cookie",e);for(let e of new X.ResponseCookies(n).getAll())t.set(e)}}let eG=eu();class eK extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),this.name="InvariantError"}}var eQ=e.i(99734);e.i(51615);process.env.NEXT_PRIVATE_DEBUG_CACHE,Symbol.for("@next/cache-handlers");let eJ=Symbol.for("@next/cache-handlers-map"),eY=Symbol.for("@next/cache-handlers-set"),eZ=globalThis;function e0(){if(eZ[eJ])return eZ[eJ].entries()}async function e1(e,t){if(!e)return t();let r=e2(e);try{return await t()}finally{var n,i;let t,o,a=(n=r,i=e2(e),t=new Set(n.pendingRevalidatedTags.map(e=>{let t="object"==typeof e.profile?JSON.stringify(e.profile):e.profile||"";return`${e.tag}:${t}`})),o=new Set(n.pendingRevalidateWrites),{pendingRevalidatedTags:i.pendingRevalidatedTags.filter(e=>{let r="object"==typeof e.profile?JSON.stringify(e.profile):e.profile||"";return!t.has(`${e.tag}:${r}`)}),pendingRevalidates:Object.fromEntries(Object.entries(i.pendingRevalidates).filter(([e])=>!(e in n.pendingRevalidates))),pendingRevalidateWrites:i.pendingRevalidateWrites.filter(e=>!o.has(e))});await e4(e,a)}}function e2(e){return{pendingRevalidatedTags:e.pendingRevalidatedTags?[...e.pendingRevalidatedTags]:[],pendingRevalidates:{...e.pendingRevalidates},pendingRevalidateWrites:e.pendingRevalidateWrites?[...e.pendingRevalidateWrites]:[]}}async function e3(e,t,r){if(0===e.length)return;let n=function(){if(eZ[eY])return eZ[eY].values()}(),i=[],o=new Map;for(let t of e){let e,r=t.profile;for(let[t]of o)if("string"==typeof t&&"string"==typeof r&&t===r||"object"==typeof t&&"object"==typeof r&&JSON.stringify(t)===JSON.stringify(r)||t===r){e=t;break}let n=e||r;o.has(n)||o.set(n,[]),o.get(n).push(t.tag)}for(let[e,s]of o){let o;if(e){let t;if("object"==typeof e)t=e;else if("string"==typeof e){var a;if(!(t=null==r||null==(a=r.cacheLifeProfiles)?void 0:a[e]))throw Object.defineProperty(Error(`Invalid profile provided "${e}" must be configured under cacheLife in next.config or be "max"`),"__NEXT_ERROR_CODE",{value:"E873",enumerable:!1,configurable:!0})}t&&(o={expire:t.expire})}for(let t of n||[])e?i.push(null==t.updateTags?void 0:t.updateTags.call(t,s,o)):i.push(null==t.updateTags?void 0:t.updateTags.call(t,s));t&&i.push(t.revalidateTag(s,o))}await Promise.all(i)}async function e4(e,t){let r=(null==t?void 0:t.pendingRevalidatedTags)??e.pendingRevalidatedTags??[],n=(null==t?void 0:t.pendingRevalidates)??e.pendingRevalidates??{},i=(null==t?void 0:t.pendingRevalidateWrites)??e.pendingRevalidateWrites??[];return Promise.all([e3(r,e.incrementalCache,e),...Object.values(n),...i])}let e6=eu();class e5{constructor({waitUntil:e,onClose:t,onTaskError:r}){this.workUnitStores=new Set,this.waitUntil=e,this.onClose=t,this.onTaskError=r,this.callbackQueue=new eQ.default,this.callbackQueue.pause()}after(e){if(eP(e))this.waitUntil||e9(),this.waitUntil(e.catch(e=>this.reportTaskError("promise",e)));else if("function"==typeof e)this.addCallback(e);else throw Object.defineProperty(Error("`after()`: Argument must be a promise or a function"),"__NEXT_ERROR_CODE",{value:"E50",enumerable:!1,configurable:!0})}addCallback(e){var t;this.waitUntil||e9();let r=eG.getStore();r&&this.workUnitStores.add(r);let n=e6.getStore(),i=n?n.rootTaskSpawnPhase:null==r?void 0:r.phase;this.runCallbacksOnClosePromise||(this.runCallbacksOnClosePromise=this.runCallbacksOnClose(),this.waitUntil(this.runCallbacksOnClosePromise));let o=(t=async()=>{try{await e6.run({rootTaskSpawnPhase:i},()=>e())}catch(e){this.reportTaskError("function",e)}},el?el.bind(t):es.bind(t));this.callbackQueue.add(o)}async runCallbacksOnClose(){return await new Promise(e=>this.onClose(e)),this.runCallbacks()}async runCallbacks(){if(0===this.callbackQueue.size)return;for(let e of this.workUnitStores)e.phase="after";let e=ec.getStore();if(!e)throw Object.defineProperty(new eK("Missing workStore in AfterContext.runCallbacks"),"__NEXT_ERROR_CODE",{value:"E547",enumerable:!1,configurable:!0});return e1(e,()=>(this.callbackQueue.start(),this.callbackQueue.onIdle()))}reportTaskError(e,t){if(console.error("promise"===e?"A promise passed to `after()` rejected:":"An error occurred in a function passed to `after()`:",t),this.onTaskError)try{null==this.onTaskError||this.onTaskError.call(this,t)}catch(e){console.error(Object.defineProperty(new eK("`onTaskError` threw while handling an error thrown from an `after` task",{cause:e}),"__NEXT_ERROR_CODE",{value:"E569",enumerable:!1,configurable:!0}))}}}function e9(){throw Object.defineProperty(Error("`after()` will not work correctly, because `waitUntil` is not available in the current environment."),"__NEXT_ERROR_CODE",{value:"E91",enumerable:!1,configurable:!0})}function e8(e){let t,r={then:(n,i)=>(t||(t=Promise.resolve(e())),t.then(e=>{r.value=e}).catch(()=>{}),t.then(n,i))};return r}class e7{onClose(e){if(this.isClosed)throw Object.defineProperty(Error("Cannot subscribe to a closed CloseController"),"__NEXT_ERROR_CODE",{value:"E365",enumerable:!1,configurable:!0});this.target.addEventListener("close",e),this.listeners++}dispatchClose(){if(this.isClosed)throw Object.defineProperty(Error("Cannot close a CloseController multiple times"),"__NEXT_ERROR_CODE",{value:"E229",enumerable:!1,configurable:!0});this.listeners>0&&this.target.dispatchEvent(new Event("close")),this.isClosed=!0}constructor(){this.target=new EventTarget,this.listeners=0,this.isClosed=!1}}function te(){return{previewModeId:process.env.__NEXT_PREVIEW_MODE_ID||"",previewModeSigningKey:process.env.__NEXT_PREVIEW_MODE_SIGNING_KEY||"",previewModeEncryptionKey:process.env.__NEXT_PREVIEW_MODE_ENCRYPTION_KEY||""}}let tt=Symbol.for("@next/request-context");async function tr(e,t,r){let n=new Set;for(let t of(e=>{let t=["/layout"];if(e.startsWith("/")){let r=e.split("/");for(let e=1;e<r.length+1;e++){let n=r.slice(0,e).join("/");n&&(n.endsWith("/page")||n.endsWith("/route")||(n=`${n}${!n.endsWith("/")?"/":""}layout`),t.push(n))}}return t})(e))t=`${h}${t}`,n.add(t);if(t.pathname&&(!r||0===r.size)){let e=`${h}${t.pathname}`;n.add(e)}n.has(`${h}/`)&&n.add(`${h}/index`),n.has(`${h}/index`)&&n.add(`${h}/`);let i=Array.from(n);return{tags:i,expirationsByCacheKind:function(e){let t=new Map,r=e0();if(r)for(let[n,i]of r)"getExpiration"in i&&t.set(n,e8(async()=>i.getExpiration(e)));return t}(i)}}class tn extends G{constructor(e){super(e.input,e.init),this.sourcePage=e.page}get request(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}respondWith(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}waitUntil(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}}let ti={keys:e=>Array.from(e.keys()),get:(e,t)=>e.get(t)??void 0},to=(e,t)=>ez().withPropagatedContext(e.headers,t,ti),ta=!1;async function ts(t){var r,n,i,o;let a,s,u,c,d;!function(){if(!ta&&(ta=!0,"true"===process.env.NEXT_PRIVATE_TEST_PROXY)){let{interceptTestApis:t,wrapRequestHandler:r}=e.r(94165);t(),to=r(to)}}(),await l();let p=void 0!==globalThis.__BUILD_MANIFEST;t.request.url=t.request.url.replace(/\.rsc($|\?)/,"$1");let h=t.bypassNextUrl?new URL(t.request.url):new I(t.request.url,{headers:t.request.headers,nextConfig:t.request.nextConfig});for(let e of[...h.searchParams.keys()]){let t=h.searchParams.getAll(e),r=function(e){for(let t of["nxtP","nxtI"])if(e!==t&&e.startsWith(t))return e.substring(t.length);return null}(e);if(r){for(let e of(h.searchParams.delete(r),t))h.searchParams.append(r,e);h.searchParams.delete(e)}}let f=process.env.__NEXT_BUILD_ID||"";"buildId"in h&&(f=h.buildId||"",h.buildId="");let g=function(e){let t=new Headers;for(let[r,n]of Object.entries(e))for(let e of Array.isArray(n)?n:[n])void 0!==e&&("number"==typeof e&&(e=e.toString()),t.append(r,e));return t}(t.request.headers),v=g.has("x-nextjs-data"),m="1"===g.get("rsc");v&&"/index"===h.pathname&&(h.pathname="/");let b=new Map;if(!p)for(let e of er){let t=g.get(e);null!==t&&(b.set(e,t),g.delete(e))}let y=h.searchParams.get(en),_=new tn({page:t.page,input:((c=(u="string"==typeof h)?new URL(h):h).searchParams.delete(en),u?c.toString():c).toString(),init:{body:t.request.body,headers:g,method:t.request.method,nextConfig:t.request.nextConfig,signal:t.request.signal}});v&&Object.defineProperty(_,"__isData",{enumerable:!1,value:!0}),!globalThis.__incrementalCacheShared&&t.IncrementalCache&&(globalThis.__incrementalCache=new t.IncrementalCache({CurCacheHandler:t.incrementalCacheHandler,minimalMode:!0,fetchCacheKeyPrefix:"",dev:!1,requestHeaders:t.request.headers,getPrerenderManifest:()=>({version:-1,routes:{},dynamicRoutes:{},notFoundRoutes:[],preview:te()})}));let S=t.request.waitUntil??(null==(r=null==(d=globalThis[tt])?void 0:d.get())?void 0:r.waitUntil),E=new x({request:_,page:t.page,context:S?{waitUntil:S}:void 0});if((a=await to(_,()=>{if("/middleware"===t.page||"/src/middleware"===t.page||"/proxy"===t.page||"/src/proxy"===t.page){let e=E.waitUntil.bind(E),r=new e7;return ez().trace(eT.execute,{spanName:`middleware ${_.method}`,attributes:{"http.target":_.nextUrl.pathname,"http.method":_.method}},async()=>{try{var n,i,o,a,l,u;let c=te(),d=await tr("/",_.nextUrl,null),p=(l=_.nextUrl,u=e=>{s=e},function(e,t,r,n,i,o,a,s,l,u,c,d){function p(e){r&&r.setHeader("Set-Cookie",e)}let h={};return{type:"request",phase:e,implicitTags:o,url:{pathname:n.pathname,search:n.search??""},rootParams:i,get headers(){return h.headers||(h.headers=function(e){let t=eo.from(e);for(let e of er)t.delete(e);return eo.seal(t)}(t.headers)),h.headers},get cookies(){if(!h.cookies){let e=new X.RequestCookies(eo.from(t.headers));eF(t,e),h.cookies=ep.seal(e)}return h.cookies},set cookies(value){h.cookies=value},get mutableCookies(){if(!h.mutableCookies){var f,g;let e,n=(f=t.headers,g=a||(r?p:void 0),e=new X.RequestCookies(eo.from(f)),ef.wrap(e,g));eF(t,n),h.mutableCookies=n}return h.mutableCookies},get userspaceMutableCookies(){if(!h.userspaceMutableCookies){var v;let e;v=this,h.userspaceMutableCookies=e=new Proxy(v.mutableCookies,{get(t,r,n){switch(r){case"delete":return function(...r){return eg(v,"cookies().delete"),t.delete(...r),e};case"set":return function(...r){return eg(v,"cookies().set"),t.set(...r),e};default:return K.get(t,r,n)}}})}return h.userspaceMutableCookies},get draftMode(){return h.draftMode||(h.draftMode=new eX(l,t,this.cookies,this.mutableCookies)),h.draftMode},renderResumeDataCache:null,isHmrRefresh:u,serverComponentsHmrCache:c||globalThis.__serverComponentsHmrCache,devFallbackParams:null}}("action",_,void 0,l,{},d,u,null,c,!1,void 0,null)),h=function({page:e,renderOpts:t,isPrefetchRequest:r,buildId:n,previouslyRevalidatedTags:i,nonce:o}){var a;let s=!t.shouldWaitOnAllReady&&!t.supportsDynamicResponse&&!t.isDraftMode&&!t.isPossibleServerAction,l=t.dev??!1,u=l||s&&(!!process.env.NEXT_DEBUG_BUILD||"1"===process.env.NEXT_SSG_FETCH_METRICS),c={isStaticGeneration:s,page:e,route:(a=e.split("/").reduce((e,t,r,n)=>t?"("===t[0]&&t.endsWith(")")||"@"===t[0]||("page"===t||"route"===t)&&r===n.length-1?e:`${e}/${t}`:e,"")).startsWith("/")?a:`/${a}`,incrementalCache:t.incrementalCache||globalThis.__incrementalCache,cacheLifeProfiles:t.cacheLifeProfiles,isBuildTimePrerendering:t.nextExport,hasReadableErrorStacks:t.hasReadableErrorStacks,fetchCache:t.fetchCache,isOnDemandRevalidate:t.isOnDemandRevalidate,isDraftMode:t.isDraftMode,isPrefetchRequest:r,buildId:n,reactLoadableManifest:(null==t?void 0:t.reactLoadableManifest)||{},assetPrefix:(null==t?void 0:t.assetPrefix)||"",nonce:o,afterContext:function(e){let{waitUntil:t,onClose:r,onAfterTaskError:n}=e;return new e5({waitUntil:t,onClose:r,onTaskError:n})}(t),cacheComponentsEnabled:t.cacheComponents,dev:l,previouslyRevalidatedTags:i,refreshTagsByCacheKind:function(){let e=new Map,t=e0();if(t)for(let[r,n]of t)"refreshTags"in n&&e.set(r,e8(async()=>n.refreshTags()));return e}(),runInCleanSnapshot:el?el.snapshot():function(e,...t){return e(...t)},shouldTrackFetchMetrics:u,reactServerErrorsByDigest:new Map};return t.store=c,c}({page:"/",renderOpts:{cacheLifeProfiles:null==(i=t.request.nextConfig)||null==(n=i.experimental)?void 0:n.cacheLife,cacheComponents:!1,experimental:{isRoutePPREnabled:!1,authInterrupts:!!(null==(a=t.request.nextConfig)||null==(o=a.experimental)?void 0:o.authInterrupts)},supportsDynamicResponse:!0,waitUntil:e,onClose:r.onClose.bind(r),onAfterTaskError:void 0},isPrefetchRequest:"1"===_.headers.get(et),buildId:f??"",previouslyRevalidatedTags:[]});return await ec.run(h,()=>eG.run(p,t.handler,_,E))}finally{setTimeout(()=>{r.dispatchClose()},0)}})}return t.handler(_,E)}))&&!(a instanceof Response))throw Object.defineProperty(TypeError("Expected an instance of Response to be returned"),"__NEXT_ERROR_CODE",{value:"E567",enumerable:!1,configurable:!0});a&&s&&a.headers.set("set-cookie",s);let R=null==a?void 0:a.headers.get("x-middleware-rewrite");if(a&&R&&(m||!p)){let e=new I(R,{forceLocale:!0,headers:t.request.headers,nextConfig:t.request.nextConfig});p||e.host!==_.nextUrl.host||(e.buildId=f||e.buildId,a.headers.set("x-middleware-rewrite",String(e)));let{url:r,isRelative:s}=ee(e.toString(),h.toString());!p&&v&&a.headers.set("x-nextjs-rewrite",r);let l=!s&&(null==(o=t.request.nextConfig)||null==(i=o.experimental)||null==(n=i.clientParamParsingOrigins)?void 0:n.some(t=>new RegExp(t).test(e.origin)));m&&(s||l)&&(h.pathname!==e.pathname&&a.headers.set("x-nextjs-rewritten-path",e.pathname),h.search!==e.search&&a.headers.set("x-nextjs-rewritten-query",e.search.slice(1)))}if(a&&R&&m&&y){let e=new URL(R);e.searchParams.has(en)||(e.searchParams.set(en,y),a.headers.set("x-middleware-rewrite",e.toString()))}let C=null==a?void 0:a.headers.get("Location");if(a&&C&&!p){let e=new I(C,{forceLocale:!1,headers:t.request.headers,nextConfig:t.request.nextConfig});a=new Response(a.body,a),e.host===h.host&&(e.buildId=f||e.buildId,a.headers.set("Location",ee(e,h).url)),v&&(a.headers.delete("Location"),a.headers.set("x-nextjs-redirect",ee(e.toString(),h.toString()).url))}let T=a||Z.next(),O=T.headers.get("x-middleware-override-headers"),k=[];if(O){for(let[e,t]of b)T.headers.set(`x-middleware-request-${e}`,t),k.push(e);k.length>0&&T.headers.set("x-middleware-override-headers",O+","+k.join(","))}return{response:T,waitUntil:("internal"===E[w].kind?Promise.all(E[w].promises).then(()=>{}):void 0)??Promise.resolve(),fetchMetrics:_.fetchMetrics}}e.i(64445),"u"<typeof URLPattern||URLPattern;var tl=e.i(40049);if(new WeakMap,tl.default.unstable_postpone,!1===("Route %%% needs to bail out of prerendering at this point because it used ^^^. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error".includes("needs to bail out of prerendering at this point because it used")&&"Route %%% needs to bail out of prerendering at this point because it used ^^^. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error".includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at __next_root_layout_boundary__ \\([^\\n]*\\)`),RegExp(`\\n\\s+at __next_metadata_boundary__[\\n\\s]`),RegExp(`\\n\\s+at __next_viewport_boundary__[\\n\\s]`),RegExp(`\\n\\s+at __next_outlet_boundary__[\\n\\s]`),e.s([],85835),e.i(85835);let tu=process.env.SPACES_TIER||process.env.NEXT_PUBLIC_TIER||("server"===process.env.NEXT_PUBLIC_EDITION?"federation":"community"),tc="team"===tu||"federation"===tu;async function td(e,t){if(!e)return null;let r=e.split(".");if(2!==r.length)return null;let[n,i]=r,o=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2)o[e/2]=parseInt(t.substring(e,e+2),16);let a=await crypto.subtle.importKey("raw",o,{name:"HMAC",hash:"SHA-256"},!1,["sign"]);if(btoa(String.fromCharCode(...new Uint8Array(await crypto.subtle.sign("HMAC",a,new TextEncoder().encode(n))))).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")!==i)return null;try{let e=atob(n.replace(/-/g,"+").replace(/_/g,"/")),t=JSON.parse(e);if(t.exp<Math.floor(Date.now()/1e3))return null;return{sub:t.sub,role:t.role||"user"}}catch{return null}}async function tp(e){if(!tc)return Z.next();let t=e.nextUrl.pathname;if("/login"===t||"/login/"===t||t.startsWith("/api/tier")||t.startsWith("/api/auth/login")||t.startsWith("/api/auth/logout")||t.startsWith("/api/auth/totp/")||t.startsWith("/_next/")||t.startsWith("/favicon")||t.endsWith(".png")||t.endsWith(".ico")||t.endsWith(".svg")||t.endsWith(".jpg")||t.endsWith(".css")||t.endsWith(".js")||t.startsWith("/api/network/")&&e.headers.get("authorization")?.startsWith("Bearer ")||"POST"===e.method&&("/api/network/connect-request"===t||"/api/network/connect-request/"===t||"/api/network/connect-callback"===t||"/api/network/connect-callback/"===t)||e.headers.get("x-spaces-internal")===(process.env.SPACES_SESSION_SECRET||"").slice(0,16)&&(e.headers.get("host")?.startsWith("localhost")||e.headers.get("host")?.startsWith("127.0.0.1")||e.headers.get("host")?.startsWith("192.168.")))return Z.next();let r=e.cookies.get("spaces-session")?.value,n=process.env.SPACES_SESSION_SECRET||"";if(!n){let t=e.nextUrl.clone();return t.pathname="/login",t.searchParams.set("error","no-secret"),Z.redirect(t)}if(!r){let r=e.nextUrl.clone();return r.pathname="/login",r.searchParams.set("redirectTo",t),Z.redirect(r)}let i=await td(r,n);if(!i){let r=e.nextUrl.clone();return r.pathname="/login",r.searchParams.set("redirectTo",t),Z.redirect(r)}let o=new Headers(e.headers);if(o.set("x-auth-user",i.sub),o.set("x-auth-role",i.role),"/"===t||""===t){let t=e.headers.get("user-agent")||"";if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(t)){let t=e.nextUrl.clone();return t.pathname="/m/",Z.redirect(t)}}return Z.next({request:{headers:o}})}tc||process.env.SPACES_HAS_CORTEX,e.s(["config",0,{matcher:["/","/((?!_next/static|_next/image).*)"]},"middleware",()=>tp],96592);var th=e.i(96592);Object.values({NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401});let tf={...th},tg="/middleware",tv=tf.middleware||tf.default;if("function"!=typeof tv)throw new class extends Error{constructor(e){super(e),this.stack=""}}(`The Middleware file "${tg}" must export a function named \`middleware\` or a default function.`);e.s(["default",0,e=>ts({...e,page:tg,handler:async(...e)=>{try{return await tv(...e)}catch(i){let t=e[0],r=new URL(t.url),n=r.pathname+r.search;throw await a(i,{path:n,method:t.method,headers:Object.fromEntries(t.headers.entries())},{routerKind:"Pages Router",routePath:"/proxy",routeType:"proxy",revalidateReason:void 0}),i}}})],58217)}]);
13
+ `)}}let h="_N_T_",f={shared:"shared",reactServerComponents:"rsc",serverSideRendering:"ssr",actionBrowser:"action-browser",apiNode:"api-node",apiEdge:"api-edge",middleware:"middleware",instrument:"instrument",edgeAsset:"edge-asset",appPagesBrowser:"app-pages-browser",pagesDirBrowser:"pages-dir-browser",pagesDirEdge:"pages-dir-edge",pagesDirNode:"pages-dir-node"};function g(e){var t,r,n,i,o,a=[],s=0;function l(){for(;s<e.length&&/\s/.test(e.charAt(s));)s+=1;return s<e.length}for(;s<e.length;){for(t=s,o=!1;l();)if(","===(r=e.charAt(s))){for(n=s,s+=1,l(),i=s;s<e.length&&"="!==(r=e.charAt(s))&&";"!==r&&","!==r;)s+=1;s<e.length&&"="===e.charAt(s)?(o=!0,s=i,a.push(e.substring(t,n)),t=s):s=n+1}else s+=1;(!o||s>=e.length)&&a.push(e.substring(t,e.length))}return a}function v(e){let t={},r=[];if(e)for(let[n,i]of e.entries())"set-cookie"===n.toLowerCase()?(r.push(...g(i)),t[n]=1===r.length?r[0]:r):t[n]=i;return t}function m(e){try{return String(new URL(String(e)))}catch(t){throw Object.defineProperty(Error(`URL is malformed "${String(e)}". Please use only absolute URLs - https://nextjs.org/docs/messages/middleware-relative-urls`,{cause:t}),"__NEXT_ERROR_CODE",{value:"E61",enumerable:!1,configurable:!0})}}({...f,GROUP:{builtinReact:[f.reactServerComponents,f.actionBrowser],serverOnly:[f.reactServerComponents,f.actionBrowser,f.instrument,f.middleware],neutralTarget:[f.apiNode,f.apiEdge],clientOnly:[f.serverSideRendering,f.appPagesBrowser],bundled:[f.reactServerComponents,f.actionBrowser,f.serverSideRendering,f.appPagesBrowser,f.shared,f.instrument,f.middleware],appPages:[f.reactServerComponents,f.serverSideRendering,f.appPagesBrowser,f.actionBrowser]}});let b=Symbol("response"),y=Symbol("passThrough"),w=Symbol("waitUntil");class _{constructor(e,t){this[y]=!1,this[w]=t?{kind:"external",function:t}:{kind:"internal",promises:[]}}respondWith(e){this[b]||(this[b]=Promise.resolve(e))}passThroughOnException(){this[y]=!0}waitUntil(e){if("external"===this[w].kind)return(0,this[w].function)(e);this[w].promises.push(e)}}class x extends _{constructor(e){var t;super(e.request,null==(t=e.context)?void 0:t.waitUntil),this.sourcePage=e.page}get request(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}respondWith(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}}function S(e){return e.replace(/\/$/,"")||"/"}function E(e){let t=e.indexOf("#"),r=e.indexOf("?"),n=r>-1&&(t<0||r<t);return n||t>-1?{pathname:e.substring(0,n?r:t),query:n?e.substring(r,t>-1?t:void 0):"",hash:t>-1?e.slice(t):""}:{pathname:e,query:"",hash:""}}function R(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:n,hash:i}=E(e);return`${t}${r}${n}${i}`}function C(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:n,hash:i}=E(e);return`${r}${t}${n}${i}`}function T(e,t){if("string"!=typeof e)return!1;let{pathname:r}=E(e);return r===t||r.startsWith(t+"/")}let O=new WeakMap;function k(e,t){let r;if(!t)return{pathname:e};let n=O.get(t);n||(n=t.map(e=>e.toLowerCase()),O.set(t,n));let i=e.split("/",2);if(!i[1])return{pathname:e};let o=i[1].toLowerCase(),a=n.indexOf(o);return a<0?{pathname:e}:(r=t[a],{pathname:e=e.slice(r.length+1)||"/",detectedLocale:r})}let P=/(?!^https?:\/\/)(127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|\[::1\]|localhost)/;function N(e,t){return new URL(String(e).replace(P,"localhost"),t&&String(t).replace(P,"localhost"))}let A=Symbol("NextURLInternal");class I{constructor(e,t,r){let n,i;"object"==typeof t&&"pathname"in t||"string"==typeof t?(n=t,i=r||{}):i=r||t||{},this[A]={url:N(e,n??i.base),options:i,basePath:""},this.analyze()}analyze(){var e,t,r,n,i;let o=function(e,t){let{basePath:r,i18n:n,trailingSlash:i}=t.nextConfig??{},o={pathname:e,trailingSlash:"/"!==e?e.endsWith("/"):i};r&&T(o.pathname,r)&&(o.pathname=function(e,t){if(!T(e,t))return e;let r=e.slice(t.length);return r.startsWith("/")?r:`/${r}`}(o.pathname,r),o.basePath=r);let a=o.pathname;if(o.pathname.startsWith("/_next/data/")&&o.pathname.endsWith(".json")){let e=o.pathname.replace(/^\/_next\/data\//,"").replace(/\.json$/,"").split("/");o.buildId=e[0],a="index"!==e[1]?`/${e.slice(1).join("/")}`:"/",!0===t.parseData&&(o.pathname=a)}if(n){let e=t.i18nProvider?t.i18nProvider.analyze(o.pathname):k(o.pathname,n.locales);o.locale=e.detectedLocale,o.pathname=e.pathname??o.pathname,!e.detectedLocale&&o.buildId&&(e=t.i18nProvider?t.i18nProvider.analyze(a):k(a,n.locales)).detectedLocale&&(o.locale=e.detectedLocale)}return o}(this[A].url.pathname,{nextConfig:this[A].options.nextConfig,parseData:!0,i18nProvider:this[A].options.i18nProvider}),a=function(e,t){let r;if(t?.host&&!Array.isArray(t.host))r=t.host.toString().split(":",1)[0];else{if(!e.hostname)return;r=e.hostname}return r.toLowerCase()}(this[A].url,this[A].options.headers);this[A].domainLocale=this[A].options.i18nProvider?this[A].options.i18nProvider.detectDomainLocale(a):function(e,t,r){if(e){for(let n of(r&&(r=r.toLowerCase()),e))if(t===n.domain?.split(":",1)[0].toLowerCase()||r===n.defaultLocale.toLowerCase()||n.locales?.some(e=>e.toLowerCase()===r))return n}}(null==(t=this[A].options.nextConfig)||null==(e=t.i18n)?void 0:e.domains,a);let s=(null==(r=this[A].domainLocale)?void 0:r.defaultLocale)||(null==(i=this[A].options.nextConfig)||null==(n=i.i18n)?void 0:n.defaultLocale);this[A].url.pathname=o.pathname,this[A].defaultLocale=s,this[A].basePath=o.basePath??"",this[A].buildId=o.buildId,this[A].locale=o.locale??s,this[A].trailingSlash=o.trailingSlash}formatPathname(){var e;let t;return t=function(e,t,r,n){if(!t||t===r)return e;let i=e.toLowerCase();return!n&&(T(i,"/api")||T(i,`/${t.toLowerCase()}`))?e:R(e,`/${t}`)}((e={basePath:this[A].basePath,buildId:this[A].buildId,defaultLocale:this[A].options.forceLocale?void 0:this[A].defaultLocale,locale:this[A].locale,pathname:this[A].url.pathname,trailingSlash:this[A].trailingSlash}).pathname,e.locale,e.buildId?void 0:e.defaultLocale,e.ignorePrefix),(e.buildId||!e.trailingSlash)&&(t=S(t)),e.buildId&&(t=C(R(t,`/_next/data/${e.buildId}`),"/"===e.pathname?"index.json":".json")),t=R(t,e.basePath),!e.buildId&&e.trailingSlash?t.endsWith("/")?t:C(t,"/"):S(t)}formatSearch(){return this[A].url.search}get buildId(){return this[A].buildId}set buildId(e){this[A].buildId=e}get locale(){return this[A].locale??""}set locale(e){var t,r;if(!this[A].locale||!(null==(r=this[A].options.nextConfig)||null==(t=r.i18n)?void 0:t.locales.includes(e)))throw Object.defineProperty(TypeError(`The NextURL configuration includes no locale "${e}"`),"__NEXT_ERROR_CODE",{value:"E597",enumerable:!1,configurable:!0});this[A].locale=e}get defaultLocale(){return this[A].defaultLocale}get domainLocale(){return this[A].domainLocale}get searchParams(){return this[A].url.searchParams}get host(){return this[A].url.host}set host(e){this[A].url.host=e}get hostname(){return this[A].url.hostname}set hostname(e){this[A].url.hostname=e}get port(){return this[A].url.port}set port(e){this[A].url.port=e}get protocol(){return this[A].url.protocol}set protocol(e){this[A].url.protocol=e}get href(){let e=this.formatPathname(),t=this.formatSearch();return`${this.protocol}//${this.host}${e}${t}${this.hash}`}set href(e){this[A].url=N(e),this.analyze()}get origin(){return this[A].url.origin}get pathname(){return this[A].url.pathname}set pathname(e){this[A].url.pathname=e}get hash(){return this[A].url.hash}set hash(e){this[A].url.hash=e}get search(){return this[A].url.search}set search(e){this[A].url.search=e}get password(){return this[A].url.password}set password(e){this[A].url.password=e}get username(){return this[A].url.username}set username(e){this[A].url.username=e}get basePath(){return this[A].basePath}set basePath(e){this[A].basePath=e.startsWith("/")?e:`/${e}`}toString(){return this.href}toJSON(){return this.href}[Symbol.for("edge-runtime.inspect.custom")](){return{href:this.href,origin:this.origin,protocol:this.protocol,username:this.username,password:this.password,host:this.host,hostname:this.hostname,port:this.port,pathname:this.pathname,search:this.search,searchParams:this.searchParams,hash:this.hash}}clone(){return new I(String(this),this[A].options)}}var j,L,M,q,D,U,$,B,H,W,z,V,X=e.i(28042);let F=Symbol("internal request");class G extends Request{constructor(e,t={}){const r="string"!=typeof e&&"url"in e?e.url:String(e);m(r),e instanceof Request?super(e,t):super(r,t);const n=new I(r,{headers:v(this.headers),nextConfig:t.nextConfig});this[F]={cookies:new X.RequestCookies(this.headers),nextUrl:n,url:n.toString()}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,nextUrl:this.nextUrl,url:this.url,bodyUsed:this.bodyUsed,cache:this.cache,credentials:this.credentials,destination:this.destination,headers:Object.fromEntries(this.headers),integrity:this.integrity,keepalive:this.keepalive,method:this.method,mode:this.mode,redirect:this.redirect,referrer:this.referrer,referrerPolicy:this.referrerPolicy,signal:this.signal}}get cookies(){return this[F].cookies}get nextUrl(){return this[F].nextUrl}get page(){throw new d}get ua(){throw new p}get url(){return this[F].url}}class K{static get(e,t,r){let n=Reflect.get(e,t,r);return"function"==typeof n?n.bind(e):n}static set(e,t,r,n){return Reflect.set(e,t,r,n)}static has(e,t){return Reflect.has(e,t)}static deleteProperty(e,t){return Reflect.deleteProperty(e,t)}}let Q=Symbol("internal response"),J=new Set([301,302,303,307,308]);function Y(e,t){var r;if(null==e||null==(r=e.request)?void 0:r.headers){if(!(e.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let r=[];for(let[n,i]of e.request.headers)t.set("x-middleware-request-"+n,i),r.push(n);t.set("x-middleware-override-headers",r.join(","))}}class Z extends Response{constructor(e,t={}){super(e,t);const r=this.headers,n=new Proxy(new X.ResponseCookies(r),{get(e,n,i){switch(n){case"delete":case"set":return(...i)=>{let o=Reflect.apply(e[n],e,i),a=new Headers(r);return o instanceof X.ResponseCookies&&r.set("x-middleware-set-cookie",o.getAll().map(e=>(0,X.stringifyCookie)(e)).join(",")),Y(t,a),o};default:return K.get(e,n,i)}}});this[Q]={cookies:n,url:t.url?new I(t.url,{headers:v(r),nextConfig:t.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[Q].cookies}static json(e,t){let r=Response.json(e,t);return new Z(r.body,r)}static redirect(e,t){let r="number"==typeof t?t:(null==t?void 0:t.status)??307;if(!J.has(r))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let n="object"==typeof t?t:{},i=new Headers(null==n?void 0:n.headers);return i.set("Location",m(e)),new Z(null,{...n,headers:i,status:r})}static rewrite(e,t){let r=new Headers(null==t?void 0:t.headers);return r.set("x-middleware-rewrite",m(e)),Y(t,r),new Z(null,{...t,headers:r})}static next(e){let t=new Headers(null==e?void 0:e.headers);return t.set("x-middleware-next","1"),Y(e,t),new Z(null,{...e,headers:t})}}function ee(e,t){let r="string"==typeof t?new URL(t):t,n=new URL(e,t),i=n.origin===r.origin;return{url:i?n.toString().slice(r.origin.length):n.toString(),isRelative:i}}let et="next-router-prefetch",er=["rsc","next-router-state-tree",et,"next-hmr-refresh","next-router-segment-prefetch"],en="_rsc";class ei extends Error{constructor(){super("Headers cannot be modified. Read more: https://nextjs.org/docs/app/api-reference/functions/headers")}static callable(){throw new ei}}class eo extends Headers{constructor(e){super(),this.headers=new Proxy(e,{get(t,r,n){if("symbol"==typeof r)return K.get(t,r,n);let i=r.toLowerCase(),o=Object.keys(e).find(e=>e.toLowerCase()===i);if(void 0!==o)return K.get(t,o,n)},set(t,r,n,i){if("symbol"==typeof r)return K.set(t,r,n,i);let o=r.toLowerCase(),a=Object.keys(e).find(e=>e.toLowerCase()===o);return K.set(t,a??r,n,i)},has(t,r){if("symbol"==typeof r)return K.has(t,r);let n=r.toLowerCase(),i=Object.keys(e).find(e=>e.toLowerCase()===n);return void 0!==i&&K.has(t,i)},deleteProperty(t,r){if("symbol"==typeof r)return K.deleteProperty(t,r);let n=r.toLowerCase(),i=Object.keys(e).find(e=>e.toLowerCase()===n);return void 0===i||K.deleteProperty(t,i)}})}static seal(e){return new Proxy(e,{get(e,t,r){switch(t){case"append":case"delete":case"set":return ei.callable;default:return K.get(e,t,r)}}})}merge(e){return Array.isArray(e)?e.join(", "):e}static from(e){return e instanceof Headers?e:new eo(e)}append(e,t){let r=this.headers[e];"string"==typeof r?this.headers[e]=[r,t]:Array.isArray(r)?r.push(t):this.headers[e]=t}delete(e){delete this.headers[e]}get(e){let t=this.headers[e];return void 0!==t?this.merge(t):null}has(e){return void 0!==this.headers[e]}set(e,t){this.headers[e]=t}forEach(e,t){for(let[r,n]of this.entries())e.call(t,n,r,this)}*entries(){for(let e of Object.keys(this.headers)){let t=e.toLowerCase(),r=this.get(t);yield[t,r]}}*keys(){for(let e of Object.keys(this.headers)){let t=e.toLowerCase();yield t}}*values(){for(let e of Object.keys(this.headers)){let t=this.get(e);yield t}}[Symbol.iterator](){return this.entries()}}let ea=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class es{disable(){throw ea}getStore(){}run(){throw ea}exit(){throw ea}enterWith(){throw ea}static bind(e){return e}}let el="u">typeof globalThis&&globalThis.AsyncLocalStorage;function eu(){return el?new el:new es}let ec=eu();class ed extends Error{constructor(){super("Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#options")}static callable(){throw new ed}}class ep{static seal(e){return new Proxy(e,{get(e,t,r){switch(t){case"clear":case"delete":case"set":return ed.callable;default:return K.get(e,t,r)}}})}}let eh=Symbol.for("next.mutated.cookies");class ef{static wrap(e,t){let r=new X.ResponseCookies(new Headers);for(let t of e.getAll())r.set(t);let n=[],i=new Set,o=()=>{let e=ec.getStore();if(e&&(e.pathWasRevalidated=1),n=r.getAll().filter(e=>i.has(e.name)),t){let e=[];for(let t of n){let r=new X.ResponseCookies(new Headers);r.set(t),e.push(r.toString())}t(e)}},a=new Proxy(r,{get(e,t,r){switch(t){case eh:return n;case"delete":return function(...t){i.add("string"==typeof t[0]?t[0]:t[0].name);try{return e.delete(...t),a}finally{o()}};case"set":return function(...t){i.add("string"==typeof t[0]?t[0]:t[0].name);try{return e.set(...t),a}finally{o()}};default:return K.get(e,t,r)}}});return a}}function eg(e,t){if("action"!==e.phase)throw new ed}var ev=((j=ev||{}).handleRequest="BaseServer.handleRequest",j.run="BaseServer.run",j.pipe="BaseServer.pipe",j.getStaticHTML="BaseServer.getStaticHTML",j.render="BaseServer.render",j.renderToResponseWithComponents="BaseServer.renderToResponseWithComponents",j.renderToResponse="BaseServer.renderToResponse",j.renderToHTML="BaseServer.renderToHTML",j.renderError="BaseServer.renderError",j.renderErrorToResponse="BaseServer.renderErrorToResponse",j.renderErrorToHTML="BaseServer.renderErrorToHTML",j.render404="BaseServer.render404",j),em=((L=em||{}).loadDefaultErrorComponents="LoadComponents.loadDefaultErrorComponents",L.loadComponents="LoadComponents.loadComponents",L),eb=((M=eb||{}).getRequestHandler="NextServer.getRequestHandler",M.getRequestHandlerWithMetadata="NextServer.getRequestHandlerWithMetadata",M.getServer="NextServer.getServer",M.getServerRequestHandler="NextServer.getServerRequestHandler",M.createServer="createServer.createServer",M),ey=((q=ey||{}).compression="NextNodeServer.compression",q.getBuildId="NextNodeServer.getBuildId",q.createComponentTree="NextNodeServer.createComponentTree",q.clientComponentLoading="NextNodeServer.clientComponentLoading",q.getLayoutOrPageModule="NextNodeServer.getLayoutOrPageModule",q.generateStaticRoutes="NextNodeServer.generateStaticRoutes",q.generateFsStaticRoutes="NextNodeServer.generateFsStaticRoutes",q.generatePublicRoutes="NextNodeServer.generatePublicRoutes",q.generateImageRoutes="NextNodeServer.generateImageRoutes.route",q.sendRenderResult="NextNodeServer.sendRenderResult",q.proxyRequest="NextNodeServer.proxyRequest",q.runApi="NextNodeServer.runApi",q.render="NextNodeServer.render",q.renderHTML="NextNodeServer.renderHTML",q.imageOptimizer="NextNodeServer.imageOptimizer",q.getPagePath="NextNodeServer.getPagePath",q.getRoutesManifest="NextNodeServer.getRoutesManifest",q.findPageComponents="NextNodeServer.findPageComponents",q.getFontManifest="NextNodeServer.getFontManifest",q.getServerComponentManifest="NextNodeServer.getServerComponentManifest",q.getRequestHandler="NextNodeServer.getRequestHandler",q.renderToHTML="NextNodeServer.renderToHTML",q.renderError="NextNodeServer.renderError",q.renderErrorToHTML="NextNodeServer.renderErrorToHTML",q.render404="NextNodeServer.render404",q.startResponse="NextNodeServer.startResponse",q.route="route",q.onProxyReq="onProxyReq",q.apiResolver="apiResolver",q.internalFetch="internalFetch",q),ew=((D=ew||{}).startServer="startServer.startServer",D),e_=((U=e_||{}).getServerSideProps="Render.getServerSideProps",U.getStaticProps="Render.getStaticProps",U.renderToString="Render.renderToString",U.renderDocument="Render.renderDocument",U.createBodyResult="Render.createBodyResult",U),ex=(($=ex||{}).renderToString="AppRender.renderToString",$.renderToReadableStream="AppRender.renderToReadableStream",$.getBodyResult="AppRender.getBodyResult",$.fetch="AppRender.fetch",$),eS=((B=eS||{}).executeRoute="Router.executeRoute",B),eE=((H=eE||{}).runHandler="Node.runHandler",H),eR=((W=eR||{}).runHandler="AppRouteRouteHandlers.runHandler",W),eC=((z=eC||{}).generateMetadata="ResolveMetadata.generateMetadata",z.generateViewport="ResolveMetadata.generateViewport",z),eT=((V=eT||{}).execute="Middleware.execute",V);let eO=new Set(["Middleware.execute","BaseServer.handleRequest","Render.getServerSideProps","Render.getStaticProps","AppRender.fetch","AppRender.getBodyResult","Render.renderDocument","Node.runHandler","AppRouteRouteHandlers.runHandler","ResolveMetadata.generateMetadata","ResolveMetadata.generateViewport","NextNodeServer.createComponentTree","NextNodeServer.findPageComponents","NextNodeServer.getLayoutOrPageModule","NextNodeServer.startResponse","NextNodeServer.clientComponentLoading"]),ek=new Set(["NextNodeServer.findPageComponents","NextNodeServer.createComponentTree","NextNodeServer.clientComponentLoading"]);function eP(e){return null!==e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then}let eN=process.env.NEXT_OTEL_PERFORMANCE_PREFIX,{context:eA,propagation:eI,trace:ej,SpanStatusCode:eL,SpanKind:eM,ROOT_CONTEXT:eq}=t=e.r(11646);class eD extends Error{constructor(e,t){super(),this.bubble=e,this.result=t}}let eU=(e,t)=>{"object"==typeof t&&null!==t&&t instanceof eD&&t.bubble?e.setAttribute("next.bubble",!0):(t&&(e.recordException(t),e.setAttribute("error.type",t.name)),e.setStatus({code:eL.ERROR,message:null==t?void 0:t.message})),e.end()},e$=new Map,eB=t.createContextKey("next.rootSpanId"),eH=0,eW={set(e,t,r){e.push({key:t,value:r})}},ez=(r=new class e{getTracerInstance(){return ej.getTracer("next.js","0.0.1")}getContext(){return eA}getTracePropagationData(){let e=eA.active(),t=[];return eI.inject(e,t,eW),t}getActiveScopeSpan(){return ej.getSpan(null==eA?void 0:eA.active())}withPropagatedContext(e,t,r){let n=eA.active();if(ej.getSpanContext(n))return t();let i=eI.extract(n,e,r);return eA.with(i,t)}trace(...e){let[t,r,n]=e,{fn:i,options:o}="function"==typeof r?{fn:r,options:{}}:{fn:n,options:{...r}},a=o.spanName??t;if(!eO.has(t)&&"1"!==process.env.NEXT_OTEL_VERBOSE||o.hideSpan)return i();let s=this.getSpanContext((null==o?void 0:o.parentSpan)??this.getActiveScopeSpan());s||(s=(null==eA?void 0:eA.active())??eq);let l=s.getValue(eB),u="number"!=typeof l||!e$.has(l),c=eH++;return o.attributes={"next.span_name":a,"next.span_type":t,...o.attributes},eA.with(s.setValue(eB,c),()=>this.getTracerInstance().startActiveSpan(a,o,e=>{let r;eN&&t&&ek.has(t)&&(r="performance"in globalThis&&"measure"in performance?globalThis.performance.now():void 0);let n=!1,a=()=>{!n&&(n=!0,e$.delete(c),r&&performance.measure(`${eN}:next-${(t.split(".").pop()||"").replace(/[A-Z]/g,e=>"-"+e.toLowerCase())}`,{start:r,end:performance.now()}))};if(u&&e$.set(c,new Map(Object.entries(o.attributes??{}))),i.length>1)try{return i(e,t=>eU(e,t))}catch(t){throw eU(e,t),t}finally{a()}try{let t=i(e);if(eP(t))return t.then(t=>(e.end(),t)).catch(t=>{throw eU(e,t),t}).finally(a);return e.end(),a(),t}catch(t){throw eU(e,t),a(),t}}))}wrap(...e){let t=this,[r,n,i]=3===e.length?e:[e[0],{},e[1]];return eO.has(r)||"1"===process.env.NEXT_OTEL_VERBOSE?function(){let e=n;"function"==typeof e&&"function"==typeof i&&(e=e.apply(this,arguments));let o=arguments.length-1,a=arguments[o];if("function"!=typeof a)return t.trace(r,e,()=>i.apply(this,arguments));{let n=t.getContext().bind(eA.active(),a);return t.trace(r,e,(e,t)=>(arguments[o]=function(e){return null==t||t(e),n.apply(this,arguments)},i.apply(this,arguments)))}}:i}startSpan(...e){let[t,r]=e,n=this.getSpanContext((null==r?void 0:r.parentSpan)??this.getActiveScopeSpan());return this.getTracerInstance().startSpan(t,r,n)}getSpanContext(e){return e?ej.setSpan(eA.active(),e):void 0}getRootSpanAttributes(){let e=eA.active().getValue(eB);return e$.get(e)}setRootSpanAttribute(e,t){let r=eA.active().getValue(eB),n=e$.get(r);n&&!n.has(e)&&n.set(e,t)}withSpan(e,t){let r=ej.setSpan(eA.active(),e);return eA.with(r,t)}},()=>r),eV="__prerender_bypass";Symbol("__next_preview_data"),Symbol(eV);class eX{constructor(e,t,r,n){var i;const o=e&&function(e,t){let r=eo.from(e.headers);return{isOnDemandRevalidate:r.get("x-prerender-revalidate")===t.previewModeId,revalidateOnlyGenerated:r.has("x-prerender-revalidate-if-generated")}}(t,e).isOnDemandRevalidate,a=null==(i=r.get(eV))?void 0:i.value;this._isEnabled=!!(!o&&a&&e&&a===e.previewModeId),this._previewModeId=null==e?void 0:e.previewModeId,this._mutableCookies=n}get isEnabled(){return this._isEnabled}enable(){if(!this._previewModeId)throw Object.defineProperty(Error("Invariant: previewProps missing previewModeId this should never happen"),"__NEXT_ERROR_CODE",{value:"E93",enumerable:!1,configurable:!0});this._mutableCookies.set({name:eV,value:this._previewModeId,httpOnly:!0,sameSite:"none",secure:!0,path:"/"}),this._isEnabled=!0}disable(){this._mutableCookies.set({name:eV,value:"",httpOnly:!0,sameSite:"none",secure:!0,path:"/",expires:new Date(0)}),this._isEnabled=!1}}function eF(e,t){if("x-middleware-set-cookie"in e.headers&&"string"==typeof e.headers["x-middleware-set-cookie"]){let r=e.headers["x-middleware-set-cookie"],n=new Headers;for(let e of g(r))n.append("set-cookie",e);for(let e of new X.ResponseCookies(n).getAll())t.set(e)}}let eG=eu();class eK extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),this.name="InvariantError"}}var eQ=e.i(99734);e.i(51615);process.env.NEXT_PRIVATE_DEBUG_CACHE,Symbol.for("@next/cache-handlers");let eJ=Symbol.for("@next/cache-handlers-map"),eY=Symbol.for("@next/cache-handlers-set"),eZ=globalThis;function e0(){if(eZ[eJ])return eZ[eJ].entries()}async function e1(e,t){if(!e)return t();let r=e2(e);try{return await t()}finally{var n,i;let t,o,a=(n=r,i=e2(e),t=new Set(n.pendingRevalidatedTags.map(e=>{let t="object"==typeof e.profile?JSON.stringify(e.profile):e.profile||"";return`${e.tag}:${t}`})),o=new Set(n.pendingRevalidateWrites),{pendingRevalidatedTags:i.pendingRevalidatedTags.filter(e=>{let r="object"==typeof e.profile?JSON.stringify(e.profile):e.profile||"";return!t.has(`${e.tag}:${r}`)}),pendingRevalidates:Object.fromEntries(Object.entries(i.pendingRevalidates).filter(([e])=>!(e in n.pendingRevalidates))),pendingRevalidateWrites:i.pendingRevalidateWrites.filter(e=>!o.has(e))});await e4(e,a)}}function e2(e){return{pendingRevalidatedTags:e.pendingRevalidatedTags?[...e.pendingRevalidatedTags]:[],pendingRevalidates:{...e.pendingRevalidates},pendingRevalidateWrites:e.pendingRevalidateWrites?[...e.pendingRevalidateWrites]:[]}}async function e3(e,t,r){if(0===e.length)return;let n=function(){if(eZ[eY])return eZ[eY].values()}(),i=[],o=new Map;for(let t of e){let e,r=t.profile;for(let[t]of o)if("string"==typeof t&&"string"==typeof r&&t===r||"object"==typeof t&&"object"==typeof r&&JSON.stringify(t)===JSON.stringify(r)||t===r){e=t;break}let n=e||r;o.has(n)||o.set(n,[]),o.get(n).push(t.tag)}for(let[e,s]of o){let o;if(e){let t;if("object"==typeof e)t=e;else if("string"==typeof e){var a;if(!(t=null==r||null==(a=r.cacheLifeProfiles)?void 0:a[e]))throw Object.defineProperty(Error(`Invalid profile provided "${e}" must be configured under cacheLife in next.config or be "max"`),"__NEXT_ERROR_CODE",{value:"E873",enumerable:!1,configurable:!0})}t&&(o={expire:t.expire})}for(let t of n||[])e?i.push(null==t.updateTags?void 0:t.updateTags.call(t,s,o)):i.push(null==t.updateTags?void 0:t.updateTags.call(t,s));t&&i.push(t.revalidateTag(s,o))}await Promise.all(i)}async function e4(e,t){let r=(null==t?void 0:t.pendingRevalidatedTags)??e.pendingRevalidatedTags??[],n=(null==t?void 0:t.pendingRevalidates)??e.pendingRevalidates??{},i=(null==t?void 0:t.pendingRevalidateWrites)??e.pendingRevalidateWrites??[];return Promise.all([e3(r,e.incrementalCache,e),...Object.values(n),...i])}let e6=eu();class e5{constructor({waitUntil:e,onClose:t,onTaskError:r}){this.workUnitStores=new Set,this.waitUntil=e,this.onClose=t,this.onTaskError=r,this.callbackQueue=new eQ.default,this.callbackQueue.pause()}after(e){if(eP(e))this.waitUntil||e9(),this.waitUntil(e.catch(e=>this.reportTaskError("promise",e)));else if("function"==typeof e)this.addCallback(e);else throw Object.defineProperty(Error("`after()`: Argument must be a promise or a function"),"__NEXT_ERROR_CODE",{value:"E50",enumerable:!1,configurable:!0})}addCallback(e){var t;this.waitUntil||e9();let r=eG.getStore();r&&this.workUnitStores.add(r);let n=e6.getStore(),i=n?n.rootTaskSpawnPhase:null==r?void 0:r.phase;this.runCallbacksOnClosePromise||(this.runCallbacksOnClosePromise=this.runCallbacksOnClose(),this.waitUntil(this.runCallbacksOnClosePromise));let o=(t=async()=>{try{await e6.run({rootTaskSpawnPhase:i},()=>e())}catch(e){this.reportTaskError("function",e)}},el?el.bind(t):es.bind(t));this.callbackQueue.add(o)}async runCallbacksOnClose(){return await new Promise(e=>this.onClose(e)),this.runCallbacks()}async runCallbacks(){if(0===this.callbackQueue.size)return;for(let e of this.workUnitStores)e.phase="after";let e=ec.getStore();if(!e)throw Object.defineProperty(new eK("Missing workStore in AfterContext.runCallbacks"),"__NEXT_ERROR_CODE",{value:"E547",enumerable:!1,configurable:!0});return e1(e,()=>(this.callbackQueue.start(),this.callbackQueue.onIdle()))}reportTaskError(e,t){if(console.error("promise"===e?"A promise passed to `after()` rejected:":"An error occurred in a function passed to `after()`:",t),this.onTaskError)try{null==this.onTaskError||this.onTaskError.call(this,t)}catch(e){console.error(Object.defineProperty(new eK("`onTaskError` threw while handling an error thrown from an `after` task",{cause:e}),"__NEXT_ERROR_CODE",{value:"E569",enumerable:!1,configurable:!0}))}}}function e9(){throw Object.defineProperty(Error("`after()` will not work correctly, because `waitUntil` is not available in the current environment."),"__NEXT_ERROR_CODE",{value:"E91",enumerable:!1,configurable:!0})}function e8(e){let t,r={then:(n,i)=>(t||(t=Promise.resolve(e())),t.then(e=>{r.value=e}).catch(()=>{}),t.then(n,i))};return r}class e7{onClose(e){if(this.isClosed)throw Object.defineProperty(Error("Cannot subscribe to a closed CloseController"),"__NEXT_ERROR_CODE",{value:"E365",enumerable:!1,configurable:!0});this.target.addEventListener("close",e),this.listeners++}dispatchClose(){if(this.isClosed)throw Object.defineProperty(Error("Cannot close a CloseController multiple times"),"__NEXT_ERROR_CODE",{value:"E229",enumerable:!1,configurable:!0});this.listeners>0&&this.target.dispatchEvent(new Event("close")),this.isClosed=!0}constructor(){this.target=new EventTarget,this.listeners=0,this.isClosed=!1}}function te(){return{previewModeId:process.env.__NEXT_PREVIEW_MODE_ID||"",previewModeSigningKey:process.env.__NEXT_PREVIEW_MODE_SIGNING_KEY||"",previewModeEncryptionKey:process.env.__NEXT_PREVIEW_MODE_ENCRYPTION_KEY||""}}let tt=Symbol.for("@next/request-context");async function tr(e,t,r){let n=new Set;for(let t of(e=>{let t=["/layout"];if(e.startsWith("/")){let r=e.split("/");for(let e=1;e<r.length+1;e++){let n=r.slice(0,e).join("/");n&&(n.endsWith("/page")||n.endsWith("/route")||(n=`${n}${!n.endsWith("/")?"/":""}layout`),t.push(n))}}return t})(e))t=`${h}${t}`,n.add(t);if(t.pathname&&(!r||0===r.size)){let e=`${h}${t.pathname}`;n.add(e)}n.has(`${h}/`)&&n.add(`${h}/index`),n.has(`${h}/index`)&&n.add(`${h}/`);let i=Array.from(n);return{tags:i,expirationsByCacheKind:function(e){let t=new Map,r=e0();if(r)for(let[n,i]of r)"getExpiration"in i&&t.set(n,e8(async()=>i.getExpiration(e)));return t}(i)}}class tn extends G{constructor(e){super(e.input,e.init),this.sourcePage=e.page}get request(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}respondWith(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}waitUntil(){throw Object.defineProperty(new c({page:this.sourcePage}),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0})}}let ti={keys:e=>Array.from(e.keys()),get:(e,t)=>e.get(t)??void 0},to=(e,t)=>ez().withPropagatedContext(e.headers,t,ti),ta=!1;async function ts(t){var r,n,i,o;let a,s,u,c,d;!function(){if(!ta&&(ta=!0,"true"===process.env.NEXT_PRIVATE_TEST_PROXY)){let{interceptTestApis:t,wrapRequestHandler:r}=e.r(94165);t(),to=r(to)}}(),await l();let p=void 0!==globalThis.__BUILD_MANIFEST;t.request.url=t.request.url.replace(/\.rsc($|\?)/,"$1");let h=t.bypassNextUrl?new URL(t.request.url):new I(t.request.url,{headers:t.request.headers,nextConfig:t.request.nextConfig});for(let e of[...h.searchParams.keys()]){let t=h.searchParams.getAll(e),r=function(e){for(let t of["nxtP","nxtI"])if(e!==t&&e.startsWith(t))return e.substring(t.length);return null}(e);if(r){for(let e of(h.searchParams.delete(r),t))h.searchParams.append(r,e);h.searchParams.delete(e)}}let f=process.env.__NEXT_BUILD_ID||"";"buildId"in h&&(f=h.buildId||"",h.buildId="");let g=function(e){let t=new Headers;for(let[r,n]of Object.entries(e))for(let e of Array.isArray(n)?n:[n])void 0!==e&&("number"==typeof e&&(e=e.toString()),t.append(r,e));return t}(t.request.headers),v=g.has("x-nextjs-data"),m="1"===g.get("rsc");v&&"/index"===h.pathname&&(h.pathname="/");let b=new Map;if(!p)for(let e of er){let t=g.get(e);null!==t&&(b.set(e,t),g.delete(e))}let y=h.searchParams.get(en),_=new tn({page:t.page,input:((c=(u="string"==typeof h)?new URL(h):h).searchParams.delete(en),u?c.toString():c).toString(),init:{body:t.request.body,headers:g,method:t.request.method,nextConfig:t.request.nextConfig,signal:t.request.signal}});v&&Object.defineProperty(_,"__isData",{enumerable:!1,value:!0}),!globalThis.__incrementalCacheShared&&t.IncrementalCache&&(globalThis.__incrementalCache=new t.IncrementalCache({CurCacheHandler:t.incrementalCacheHandler,minimalMode:!0,fetchCacheKeyPrefix:"",dev:!1,requestHeaders:t.request.headers,getPrerenderManifest:()=>({version:-1,routes:{},dynamicRoutes:{},notFoundRoutes:[],preview:te()})}));let S=t.request.waitUntil??(null==(r=null==(d=globalThis[tt])?void 0:d.get())?void 0:r.waitUntil),E=new x({request:_,page:t.page,context:S?{waitUntil:S}:void 0});if((a=await to(_,()=>{if("/middleware"===t.page||"/src/middleware"===t.page||"/proxy"===t.page||"/src/proxy"===t.page){let e=E.waitUntil.bind(E),r=new e7;return ez().trace(eT.execute,{spanName:`middleware ${_.method}`,attributes:{"http.target":_.nextUrl.pathname,"http.method":_.method}},async()=>{try{var n,i,o,a,l,u;let c=te(),d=await tr("/",_.nextUrl,null),p=(l=_.nextUrl,u=e=>{s=e},function(e,t,r,n,i,o,a,s,l,u,c,d){function p(e){r&&r.setHeader("Set-Cookie",e)}let h={};return{type:"request",phase:e,implicitTags:o,url:{pathname:n.pathname,search:n.search??""},rootParams:i,get headers(){return h.headers||(h.headers=function(e){let t=eo.from(e);for(let e of er)t.delete(e);return eo.seal(t)}(t.headers)),h.headers},get cookies(){if(!h.cookies){let e=new X.RequestCookies(eo.from(t.headers));eF(t,e),h.cookies=ep.seal(e)}return h.cookies},set cookies(value){h.cookies=value},get mutableCookies(){if(!h.mutableCookies){var f,g;let e,n=(f=t.headers,g=a||(r?p:void 0),e=new X.RequestCookies(eo.from(f)),ef.wrap(e,g));eF(t,n),h.mutableCookies=n}return h.mutableCookies},get userspaceMutableCookies(){if(!h.userspaceMutableCookies){var v;let e;v=this,h.userspaceMutableCookies=e=new Proxy(v.mutableCookies,{get(t,r,n){switch(r){case"delete":return function(...r){return eg(v,"cookies().delete"),t.delete(...r),e};case"set":return function(...r){return eg(v,"cookies().set"),t.set(...r),e};default:return K.get(t,r,n)}}})}return h.userspaceMutableCookies},get draftMode(){return h.draftMode||(h.draftMode=new eX(l,t,this.cookies,this.mutableCookies)),h.draftMode},renderResumeDataCache:null,isHmrRefresh:u,serverComponentsHmrCache:c||globalThis.__serverComponentsHmrCache,devFallbackParams:null}}("action",_,void 0,l,{},d,u,null,c,!1,void 0,null)),h=function({page:e,renderOpts:t,isPrefetchRequest:r,buildId:n,previouslyRevalidatedTags:i,nonce:o}){var a;let s=!t.shouldWaitOnAllReady&&!t.supportsDynamicResponse&&!t.isDraftMode&&!t.isPossibleServerAction,l=t.dev??!1,u=l||s&&(!!process.env.NEXT_DEBUG_BUILD||"1"===process.env.NEXT_SSG_FETCH_METRICS),c={isStaticGeneration:s,page:e,route:(a=e.split("/").reduce((e,t,r,n)=>t?"("===t[0]&&t.endsWith(")")||"@"===t[0]||("page"===t||"route"===t)&&r===n.length-1?e:`${e}/${t}`:e,"")).startsWith("/")?a:`/${a}`,incrementalCache:t.incrementalCache||globalThis.__incrementalCache,cacheLifeProfiles:t.cacheLifeProfiles,isBuildTimePrerendering:t.nextExport,hasReadableErrorStacks:t.hasReadableErrorStacks,fetchCache:t.fetchCache,isOnDemandRevalidate:t.isOnDemandRevalidate,isDraftMode:t.isDraftMode,isPrefetchRequest:r,buildId:n,reactLoadableManifest:(null==t?void 0:t.reactLoadableManifest)||{},assetPrefix:(null==t?void 0:t.assetPrefix)||"",nonce:o,afterContext:function(e){let{waitUntil:t,onClose:r,onAfterTaskError:n}=e;return new e5({waitUntil:t,onClose:r,onTaskError:n})}(t),cacheComponentsEnabled:t.cacheComponents,dev:l,previouslyRevalidatedTags:i,refreshTagsByCacheKind:function(){let e=new Map,t=e0();if(t)for(let[r,n]of t)"refreshTags"in n&&e.set(r,e8(async()=>n.refreshTags()));return e}(),runInCleanSnapshot:el?el.snapshot():function(e,...t){return e(...t)},shouldTrackFetchMetrics:u,reactServerErrorsByDigest:new Map};return t.store=c,c}({page:"/",renderOpts:{cacheLifeProfiles:null==(i=t.request.nextConfig)||null==(n=i.experimental)?void 0:n.cacheLife,cacheComponents:!1,experimental:{isRoutePPREnabled:!1,authInterrupts:!!(null==(a=t.request.nextConfig)||null==(o=a.experimental)?void 0:o.authInterrupts)},supportsDynamicResponse:!0,waitUntil:e,onClose:r.onClose.bind(r),onAfterTaskError:void 0},isPrefetchRequest:"1"===_.headers.get(et),buildId:f??"",previouslyRevalidatedTags:[]});return await ec.run(h,()=>eG.run(p,t.handler,_,E))}finally{setTimeout(()=>{r.dispatchClose()},0)}})}return t.handler(_,E)}))&&!(a instanceof Response))throw Object.defineProperty(TypeError("Expected an instance of Response to be returned"),"__NEXT_ERROR_CODE",{value:"E567",enumerable:!1,configurable:!0});a&&s&&a.headers.set("set-cookie",s);let R=null==a?void 0:a.headers.get("x-middleware-rewrite");if(a&&R&&(m||!p)){let e=new I(R,{forceLocale:!0,headers:t.request.headers,nextConfig:t.request.nextConfig});p||e.host!==_.nextUrl.host||(e.buildId=f||e.buildId,a.headers.set("x-middleware-rewrite",String(e)));let{url:r,isRelative:s}=ee(e.toString(),h.toString());!p&&v&&a.headers.set("x-nextjs-rewrite",r);let l=!s&&(null==(o=t.request.nextConfig)||null==(i=o.experimental)||null==(n=i.clientParamParsingOrigins)?void 0:n.some(t=>new RegExp(t).test(e.origin)));m&&(s||l)&&(h.pathname!==e.pathname&&a.headers.set("x-nextjs-rewritten-path",e.pathname),h.search!==e.search&&a.headers.set("x-nextjs-rewritten-query",e.search.slice(1)))}if(a&&R&&m&&y){let e=new URL(R);e.searchParams.has(en)||(e.searchParams.set(en,y),a.headers.set("x-middleware-rewrite",e.toString()))}let C=null==a?void 0:a.headers.get("Location");if(a&&C&&!p){let e=new I(C,{forceLocale:!1,headers:t.request.headers,nextConfig:t.request.nextConfig});a=new Response(a.body,a),e.host===h.host&&(e.buildId=f||e.buildId,a.headers.set("Location",ee(e,h).url)),v&&(a.headers.delete("Location"),a.headers.set("x-nextjs-redirect",ee(e.toString(),h.toString()).url))}let T=a||Z.next(),O=T.headers.get("x-middleware-override-headers"),k=[];if(O){for(let[e,t]of b)T.headers.set(`x-middleware-request-${e}`,t),k.push(e);k.length>0&&T.headers.set("x-middleware-override-headers",O+","+k.join(","))}return{response:T,waitUntil:("internal"===E[w].kind?Promise.all(E[w].promises).then(()=>{}):void 0)??Promise.resolve(),fetchMetrics:_.fetchMetrics}}e.i(64445),"u"<typeof URLPattern||URLPattern;var tl=e.i(40049);if(new WeakMap,tl.default.unstable_postpone,!1===("Route %%% needs to bail out of prerendering at this point because it used ^^^. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error".includes("needs to bail out of prerendering at this point because it used")&&"Route %%% needs to bail out of prerendering at this point because it used ^^^. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error".includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at __next_root_layout_boundary__ \\([^\\n]*\\)`),RegExp(`\\n\\s+at __next_metadata_boundary__[\\n\\s]`),RegExp(`\\n\\s+at __next_viewport_boundary__[\\n\\s]`),RegExp(`\\n\\s+at __next_outlet_boundary__[\\n\\s]`),e.s([],85835),e.i(85835);let tu=process.env.SPACES_TIER||process.env.NEXT_PUBLIC_TIER||("server"===process.env.NEXT_PUBLIC_EDITION?"federation":"community"),tc="team"===tu||"federation"===tu;async function td(e,t){if(!e)return null;let r=e.split(".");if(2!==r.length)return null;let[n,i]=r,o=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2)o[e/2]=parseInt(t.substring(e,e+2),16);let a=await crypto.subtle.importKey("raw",o,{name:"HMAC",hash:"SHA-256"},!1,["sign"]);if(btoa(String.fromCharCode(...new Uint8Array(await crypto.subtle.sign("HMAC",a,new TextEncoder().encode(n))))).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")!==i)return null;try{let e=atob(n.replace(/-/g,"+").replace(/_/g,"/")),t=JSON.parse(e);if(t.exp<Math.floor(Date.now()/1e3))return null;return{sub:t.sub,role:t.role||"user"}}catch{return null}}async function tp(e){if(!tc)return Z.next();let t=e.nextUrl.pathname;if("/login"===t||"/login/"===t||t.startsWith("/api/tier")||t.startsWith("/api/auth/login")||t.startsWith("/api/auth/logout")||t.startsWith("/api/auth/totp/")||t.startsWith("/_next/")||t.startsWith("/favicon")||t.endsWith(".png")||t.endsWith(".ico")||t.endsWith(".svg")||t.endsWith(".jpg")||t.endsWith(".css")||t.endsWith(".js")||t.startsWith("/api/network/")&&e.headers.get("authorization")?.startsWith("Bearer ")||"POST"===e.method&&("/api/network/connect-request"===t||"/api/network/connect-request/"===t||"/api/network/connect-callback"===t||"/api/network/connect-callback/"===t)||(e.headers.get("x-spaces-internal")||e.nextUrl.searchParams.get("_internal"))===(process.env.SPACES_SESSION_SECRET||"").slice(0,16)&&(e.headers.get("host")?.startsWith("localhost")||e.headers.get("host")?.startsWith("127.0.0.1")||e.headers.get("host")?.startsWith("192.168.")))return Z.next();let r=e.cookies.get("spaces-session")?.value,n=process.env.SPACES_SESSION_SECRET||"";if(!n){let t=e.nextUrl.clone();return t.pathname="/login",t.searchParams.set("error","no-secret"),Z.redirect(t)}if(!r){let r=e.nextUrl.clone();return r.pathname="/login",r.searchParams.set("redirectTo",t),Z.redirect(r)}let i=await td(r,n);if(!i){let r=e.nextUrl.clone();return r.pathname="/login",r.searchParams.set("redirectTo",t),Z.redirect(r)}let o=new Headers(e.headers);if(o.set("x-auth-user",i.sub),o.set("x-auth-role",i.role),"/"===t||""===t){let t=e.headers.get("user-agent")||"";if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(t)){let t=e.nextUrl.clone();return t.pathname="/m/",Z.redirect(t)}}return Z.next({request:{headers:o}})}tc||process.env.SPACES_HAS_CORTEX,e.s(["config",0,{matcher:["/","/((?!_next/static|_next/image).*)"]},"middleware",()=>tp],96592);var th=e.i(96592);Object.values({NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401});let tf={...th},tg="/middleware",tv=tf.middleware||tf.default;if("function"!=typeof tv)throw new class extends Error{constructor(e){super(e),this.stack=""}}(`The Middleware file "${tg}" must export a function named \`middleware\` or a default function.`);e.s(["default",0,e=>ts({...e,page:tg,handler:async(...e)=>{try{return await tv(...e)}catch(i){let t=e[0],r=new URL(t.url),n=r.pathname+r.search;throw await a(i,{path:n,method:t.method,headers:Object.fromEntries(t.headers.entries())},{routerKind:"Pages Router",routePath:"/proxy",routeType:"proxy",revalidateReason:void 0}),i}}})],58217)}]);
14
14
 
15
15
  //# sourceMappingURL=%5Broot-of-the-server%5D__32a0045c._.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.6",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","@react-three/xr":"^6.6.29","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.8.0",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","@react-three/xr":"^6.6.29","@xterm/addon-canvas":"^0.7.0","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,11 +22,11 @@
22
22
  "wasm": [],
23
23
  "assets": [],
24
24
  "env": {
25
- "__NEXT_BUILD_ID": "ncDe4k4gvD0788HAnq_3G",
26
- "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "itbnFuWGVpzWv9qa8xZsaJkOdOdqzWC6pwcN+/uc6aA=",
27
- "__NEXT_PREVIEW_MODE_ID": "6690daf667967d7be4ecf02a8aa27a76",
28
- "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "6a5b56301e057de9c73c51963a9428591cc757dcf50d6fbf829661e551060021",
29
- "__NEXT_PREVIEW_MODE_SIGNING_KEY": "e2372ac49235308863bcea0383c270f16fda4d123433d69e685530f96a9657ab"
25
+ "__NEXT_BUILD_ID": "PcpzUspSK8QDdwzAJz8br",
26
+ "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "jX9MsG+hsxtNGRSFFvdLga/1LZYncOcmzrsgnMobylc=",
27
+ "__NEXT_PREVIEW_MODE_ID": "e22e119de22ac6a0812e264934592363",
28
+ "__NEXT_PREVIEW_MODE_ENCRYPTION_KEY": "30b28dac424a292e7e9164ee7daabafca42c4c7e8e92877faa74179ea6ad65b0",
29
+ "__NEXT_PREVIEW_MODE_SIGNING_KEY": "144c70eacbfa5375701e5d2b5e0448cd1d6f6504ff8236742464e28a11af6f4e"
30
30
  }
31
31
  }
32
32
  },
@@ -1 +1 @@
1
- <!DOCTYPE html><!--ncDe4k4gvD0788HAnq_3G--><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/c1a95aebf6725f64.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/fdc09bd135846960.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/045c83caa4d15373.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-e1a0994ed4af988c.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/fdc09bd135846960.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/c1a95aebf6725f64.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"ncDe4k4gvD0788HAnq_3G\",\"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/c1a95aebf6725f64.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><!--PcpzUspSK8QDdwzAJz8br--><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/f6464729e7aa0da0.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/fdc09bd135846960.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/045c83caa4d15373.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-e1a0994ed4af988c.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/fdc09bd135846960.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/f6464729e7aa0da0.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"PcpzUspSK8QDdwzAJz8br\",\"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/f6464729e7aa0da0.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><!--ncDe4k4gvD0788HAnq_3G--><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/fdc09bd135846960.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/045c83caa4d15373.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-e1a0994ed4af988c.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/fdc09bd135846960.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\":\"ncDe4k4gvD0788HAnq_3G\",\"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><!--PcpzUspSK8QDdwzAJz8br--><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/fdc09bd135846960.js"/><script src="/_next/static/chunks/8977251fc56ec5d7.js" async=""></script><script src="/_next/static/chunks/045c83caa4d15373.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-e1a0994ed4af988c.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/fdc09bd135846960.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\":\"PcpzUspSK8QDdwzAJz8br\",\"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 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"itbnFuWGVpzWv9qa8xZsaJkOdOdqzWC6pwcN+/uc6aA=\"\n}"
1
+ self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"jX9MsG+hsxtNGRSFFvdLga/1LZYncOcmzrsgnMobylc=\"\n}"
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "node": {},
3
3
  "edge": {},
4
- "encryptionKey": "itbnFuWGVpzWv9qa8xZsaJkOdOdqzWC6pwcN+/uc6aA="
4
+ "encryptionKey": "jX9MsG+hsxtNGRSFFvdLga/1LZYncOcmzrsgnMobylc="
5
5
  }
@@ -0,0 +1,7 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,71689,e=>{"use strict";let t=(0,e.i(75254).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",()=>t],71689)},31278,e=>{"use strict";let t=(0,e.i(75254).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],31278)},88699,e=>{"use strict";let t=(0,e.i(75254).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",()=>t],88699)},43531,e=>{"use strict";let t=(0,e.i(75254).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["Check",()=>t],43531)},68054,e=>{"use strict";let t=(0,e.i(75254).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);e.s(["Terminal",()=>t],68054)},69074,e=>{"use strict";let t=(0,e.i(75254).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"}]]);e.s(["Upload",()=>t],69074)},34623,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(31278),s=e.i(39616),a=e.i(18566),i=e.i(9165),o=e.i(29320);let c="spaces-terminal-token";function l({children:e}){let l=(0,a.useRouter)(),{isDesktop:d,basePath:u}=(0,o.useTier)(),[m,x]=(0,r.useState)("loading"),[p,h]=(0,r.useState)(""),[f,g]=(0,r.useState)(""),[b,y]=(0,r.useState)(""),[v,w]=(0,r.useState)(!1),k=(0,r.useRef)(null),j=`${u}/spaces_icon.png`;(0,r.useEffect)(()=>{if(d){h("desktop-local"),x("authorized");return}function e(){let e=sessionStorage.getItem(c);if(e){h(e),x("authorized");return}fetch((0,i.api)("/api/auth/totp/status")).then(e=>e.json()).then(e=>{e.enabled?(x("prompt"),setTimeout(()=>k.current?.focus(),100)):x("not-setup")}).catch(()=>x("not-setup"))}fetch((0,i.api)("/api/auth/me")).then(t=>{if(t.ok){h("session-auth"),x("authorized");return}return e()}).catch(()=>e())},[d]);let N=(0,r.useCallback)(async e=>{if(6!==e.length)return;w(!0),y("");let t=await fetch((0,i.api)("/api/auth/totp/verify"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e,action:"verify"})}),r=await t.json();w(!1),r.success&&r.terminalToken?(sessionStorage.setItem(c,r.terminalToken),h(r.terminalToken),x("authorized")):(y(r.error||"Invalid code"),g(""),k.current?.focus())},[]);return"loading"===m?(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsx)(n.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):"authorized"===m?(0,t.jsx)(t.Fragment,{children:e(p)}):"not-setup"===m?(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsxs)("div",{className:"text-center space-y-4 max-w-sm",children:[(0,t.jsx)("img",{src:j,alt:"Spaces",className:"w-12 h-12 mx-auto opacity-40"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-white",children:"2FA Required"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Two-factor authentication must be set up before you can use terminals."}),(0,t.jsxs)("button",{onClick:()=>l.push("/settings"),className:"inline-flex items-center gap-2 px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500",children:[(0,t.jsx)(s.Settings,{className:"w-4 h-4"}),"Go to Settings"]})]})}):(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsxs)("div",{className:"text-center space-y-4 max-w-sm",children:[(0,t.jsx)("img",{src:j,alt:"Spaces",className:"w-12 h-12 mx-auto"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-white",children:"Terminal Verification"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Enter the 6-digit code from your authenticator app."}),(0,t.jsxs)("div",{children:[(0,t.jsx)("input",{ref:k,type:"text",inputMode:"numeric",autoComplete:"one-time-code",placeholder:"000000",value:f,onChange:e=>{let t;g(t=e.target.value.replace(/\D/g,"").slice(0,6)),y(""),6===t.length&&N(t)},disabled:v,className:"w-48 px-3 py-3 text-2xl font-mono tracking-[0.4em] text-center bg-zinc-800 border border-zinc-700 rounded-lg focus:outline-none focus:border-indigo-500 text-white disabled:opacity-50",autoFocus:!0}),v&&(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 mt-3 text-xs text-zinc-400",children:[(0,t.jsx)(n.Loader2,{className:"w-3 h-3 animate-spin"}),"Verifying..."]}),b&&(0,t.jsx)("p",{className:"text-sm text-red-400 mt-3",children:b})]}),(0,t.jsx)("p",{className:"text-[11px] text-zinc-600",children:"Token is valid for 8 hours after verification."})]})})}e.s(["TotpGate",()=>l])},73359,e=>{"use strict";let t={claude:{id:"claude",name:"Claude Code",command:"claude",resumeFlag:"--resume",supportsResume:!0,color:"#d97706",description:"Anthropic Claude Code CLI"},codex:{id:"codex",name:"Codex CLI",command:"codex",resumeFlag:"resume",supportsResume:!0,color:"#10b981",description:"OpenAI Codex CLI"},gemini:{id:"gemini",name:"Gemini CLI",command:"gemini",resumeFlag:"--resume",supportsResume:!0,color:"#3b82f6",description:"Google Gemini CLI"},aider:{id:"aider",name:"Aider",command:"aider",resumeFlag:"",supportsResume:!1,color:"#8b5cf6",description:"AI pair programming in your terminal"},shell:{id:"shell",name:"Shell",command:"",resumeFlag:"",supportsResume:!1,color:"#71717a",description:"Plain terminal shell"},custom:{id:"custom",name:"Custom",command:"",resumeFlag:"",supportsResume:!1,color:"#ec4899",description:"Custom command"}},r=Object.values(t);e.s(["AGENT_LIST",0,r,"AGENT_TYPES",0,t])},87951,87246,e=>{"use strict";var t=e.i(75254);let r=(0,t.default)("mic",[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]]);e.s(["Mic",()=>r],87951);let n=(0,t.default)("mic-off",[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M15 9.34V5a3 3 0 0 0-5.68-1.33",key:"1gzdoj"}],["path",{d:"M16.95 16.95A7 7 0 0 1 5 12v-2",key:"cqa7eg"}],["path",{d:"M18.89 13.23A7 7 0 0 0 19 12v-2",key:"16hl24"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v3a3 3 0 0 0 5.12 2.12",key:"r2i35w"}]]);e.s(["MicOff",()=>n],87246)},24134,78917,e=>{"use strict";var t=e.i(47167),r=e.i(18050),n=e.i(71645),s=e.i(74080),a=e.i(37727),i=e.i(88699),o=e.i(43531),c=e.i(75254);let l=(0,c.default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]),d=(0,c.default)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]),u=(0,c.default)("minimize-2",[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]]),m=(0,c.default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",()=>m],78917);var x=e.i(48256),p=e.i(61911),h=e.i(87951),f=e.i(87246),g=e.i(69074),b=e.i(75157),y=e.i(73359),v=e.i(29320);let w=t.default.env.NEXT_PUBLIC_WS_PATH;function k({pane:t,onClose:c,onUpdate:k,isMaximized:j,onToggleMaximize:N,onPopout:z,onBrowse:C,isPopout:S,terminalToken:T,workspaceCollaboration:R}){let{hasCortex:E}=(0,v.useTier)(),P=(0,n.useRef)(null),A=(0,n.useRef)(null),M=(0,n.useRef)(null),$=(0,n.useRef)(null),L=(0,n.useRef)(""),O=(0,n.useRef)(null),F=()=>{try{$.current?.fit()}catch{}},[I,D]=(0,n.useState)(!1),[q,B]=(0,n.useState)(!1),[G,U]=(0,n.useState)(t.title),[_,J]=(0,n.useState)(!1),[W,H]=(0,n.useState)({x:0,y:0}),K=(0,n.useRef)(null),V=(0,n.useRef)(null),[Y,Q]=(0,n.useState)(!1),[X,Z]=(0,n.useState)(0),[ee,et]=(0,n.useState)([]),[er,en]=(0,n.useState)(!1),[es,ea]=(0,n.useState)(!1),[ei,eo]=(0,n.useState)("idle"),ec=(0,n.useRef)(!1),[el,ed]=(0,n.useState)(""),eu=(0,n.useRef)(null);(0,n.useEffect)(()=>{let e=navigator.userAgent||"";en(/Quest|Oculus|Pacific/i.test(e))},[]);let em=(0,n.useRef)(t);em.current=t;let ex=(0,n.useRef)(k);ex.current=k;let ep=(0,n.useRef)(T);ep.current=T;let eh=(0,n.useRef)(()=>{}),ef=(0,n.useRef)(!1),eg=(0,n.useRef)(!1),eb=(0,n.useRef)(null),ey=(0,n.useRef)(0),ev=(0,n.useCallback)(async()=>{if(!P.current)return;em.current,eg.current=!1,ey.current=0;let{Terminal:t}=await e.A(16049),{FitAddon:r}=await e.A(59439),{WebLinksAddon:n}=await e.A(16091);A.current&&A.current.dispose();let s=/Quest|Oculus|Pacific/i.test(navigator.userAgent),a=new t({cursorBlink:!s,disableStdin:s,fontSize:13,fontFamily:"'Cascadia Code', 'Fira Code', 'JetBrains Mono', Consolas, monospace",scrollback:1e4,fastScrollModifier:"alt",smoothScrollDuration:0,theme:{background:"#0a0a0a",foreground:"#e4e4e7",cursor:"#6366f1",selectionBackground:"#6366f133",black:"#18181b",red:"#ef4444",green:"#22c55e",yellow:"#eab308",blue:"#3b82f6",magenta:"#a855f7",cyan:"#06b6d4",white:"#e4e4e7",brightBlack:"#52525b",brightRed:"#f87171",brightGreen:"#4ade80",brightYellow:"#facc15",brightBlue:"#60a5fa",brightMagenta:"#c084fc",brightCyan:"#22d3ee",brightWhite:"#fafafa"},allowProposedApi:!0}),i=new r,o=new n;a.loadAddon(i),a.loadAddon(o),await new Promise(e=>requestAnimationFrame(()=>{if(P.current){a.open(P.current);try{i.fit()}catch{}}e()})),a.attachCustomKeyEventHandler(e=>"keydown"!==e.type||(e.ctrlKey&&"c"===e.key&&a.hasSelection()?(navigator.clipboard.writeText(a.getSelection()),a.clearSelection(),!1):!e.ctrlKey||"v"!==e.key||(e.preventDefault(),navigator.clipboard.readText().then(e=>{e&&M.current?.readyState===WebSocket.OPEN&&M.current.send(JSON.stringify({type:"data",data:e}))}),!1))),A.current=a,$.current=i,requestAnimationFrame(()=>requestAnimationFrame(F)),setTimeout(F,300);let c=()=>{let e,t,r,n,s;if(eg.current)return;ey.current>0&&(a.write("\x1b[2J\x1b[H"),a.clear());let i=new WebSocket((t=new URLSearchParams({paneId:(e=em.current).id,cwd:e.cwd,agentType:e.agentType||"shell",cols:String(a.cols),rows:String(a.rows)}),e.claudeSessionId&&t.set("agentSession",e.claudeSessionId),e.customCommand&&t.set("customCommand",e.customCommand),e.nodeId&&t.set("nodeId",e.nodeId),(r=ep.current)&&t.set("terminalToken",r),n=w||"/ws",s="https:"===location.protocol?"wss:":"ws:",`${s}//${location.host}${n}?${t}`));M.current=i,i.onopen=()=>{D(!0),Q(!1),ef.current=!1,ey.current=0,setTimeout(F,150)},i.onmessage=e=>{try{let r=JSON.parse(e.data);if("data"===r.type){var t;t=r.data,L.current+=t,null===O.current&&(O.current=requestAnimationFrame(()=>{O.current=null;let e=L.current;L.current="",e&&A.current&&(e=e.replace(/\x1b\[3J/g,""),A.current.write(e))}))}else if("exit"===r.type){Q(!0),ef.current=!0;let e=r.reason?` — ${r.reason}`:"";a.write(`\r
2
+ \x1b[90m[Process exited with code ${r.exitCode}${e}]\x1b[0m\r
3
+ `)}else"error"===r.type?a.write(`\r
4
+ \x1b[31m${r.data}\x1b[0m\r
5
+ `):"session-detected"===r.type?ex.current(em.current.id,{claudeSessionId:r.sessionId}):"cortex-injection"===r.type?(Z(r.count||0),r.items&&et(r.items)):"collab-updated"===r.type&&ex.current(em.current.id,{isCollaborating:r.isCollaborating})}catch{}},i.onclose=()=>{if(D(!1),!ef.current&&!eg.current){let e=ey.current;if(e<20){let t=Math.min(1e3*Math.pow(1.5,e),3e4);ey.current=e+1,eb.current=setTimeout(c,t)}}},i.onerror=()=>{D(!1)}};a.onData(e=>{M.current?.readyState===WebSocket.OPEN&&M.current.send(JSON.stringify({type:"data",data:e}))}),a.onResize(({cols:e,rows:t})=>{M.current?.readyState===WebSocket.OPEN&&M.current.send(JSON.stringify({type:"resize",cols:e,rows:t}))}),c()},[]);(0,n.useEffect)(()=>(ev(),()=>{eg.current=!0,eb.current&&clearTimeout(eb.current),M.current?.close(),A.current?.dispose()}),[ev]),(0,n.useEffect)(()=>{let e,t=new ResizeObserver(()=>{cancelAnimationFrame(e),e=requestAnimationFrame(F)});return P.current&&t.observe(P.current),()=>{cancelAnimationFrame(e),t.disconnect()}},[]),(0,n.useEffect)(()=>{setTimeout(F,50)},[j,er]);let ew=()=>{k(t.id,{title:G}),B(!1)},ek=e=>{M.current?.readyState===WebSocket.OPEN&&M.current.send(JSON.stringify({type:"data",data:e}))},ej=(0,n.useRef)(null),eN=!("u">typeof navigator&&/Quest|Oculus|Pacific/i.test(navigator.userAgent))&&("SpeechRecognition"in window||"webkitSpeechRecognition"in window),ez=()=>{if(!ec.current)return;let e=window.SpeechRecognition||window.webkitSpeechRecognition;if(!e)return;let t=new e;t.continuous=!0,t.interimResults=!0,t.lang="en-US";let r=0;t.onresult=e=>{if(!ec.current)return;let t="";for(let r=0;r<e.results.length;r++)e.results[r].isFinal&&(t+=e.results[r][0].transcript);if(t.length>r){var n=t.slice(r);if(M.current?.readyState===WebSocket.OPEN){let e=`\x1b[200~${n}\x1b[201~`;M.current.send(JSON.stringify({type:"data",data:e}))}r=t.length}},t.onerror=e=>{if("not-allowed"===e.error||"service-not-allowed"===e.error){ec.current=!1,ea(!1),eo("idle");return}ec.current&&setTimeout(ez,500)},t.onend=()=>{ec.current?setTimeout(ez,100):eo("idle")},t.onstart=()=>eo("listening"),ej.current=t,t.start()};(0,n.useEffect)(()=>()=>{if(ec.current=!1,ej.current)try{ej.current.abort()}catch{}},[]);let[eC,eS]=(0,n.useState)(null),[eT,eR]=(0,n.useState)(!1),eE=(0,n.useRef)(null);return eh.current=(0,n.useCallback)(async e=>{if(0===e.length)return;let t=em.current.cwd||"/",r=new FormData;for(let n of(r.append("dir",t),e))r.append("files",n);let n=e.map(e=>e.name).join(", ");eS(`Uploading ${e.length} file${e.length>1?"s":""}...`),eE.current&&clearTimeout(eE.current);try{let e=await fetch("/api/files",{method:"POST",body:r});if(e.ok){let r=await e.json();eS(`Uploaded ${r.files?.join(", ")||n} to ${t}`);let s=A.current;s&&s.write(`\r
6
+ \x1b[90m[Uploaded ${r.files?.join(", ")||n} → ${t}]\x1b[0m\r
7
+ `)}else eS("Upload failed")}catch{eS("Upload failed")}eE.current=setTimeout(()=>eS(null),4e3)},[]),(0,n.useEffect)(()=>{let e=P.current;if(!e)return;let t=t=>{if(!e.contains(t.target))return;let r=t.clipboardData?.items;if(!r)return;let n=[];for(let e=0;e<r.length;e++){let t=r[e];if("file"===t.kind){let e=t.getAsFile();e&&n.push(e)}}n.length>0&&(t.preventDefault(),t.stopPropagation(),eh.current(n))};document.addEventListener("paste",t,!0);let r=e=>{e.preventDefault(),e.stopPropagation(),eR(!0)},n=t=>{t.preventDefault(),e&&!e.contains(t.relatedTarget)&&eR(!1)},s=e=>{e.preventDefault(),e.stopPropagation(),eR(!1);let t=[];if(e.dataTransfer?.files)for(let r=0;r<e.dataTransfer.files.length;r++)t.push(e.dataTransfer.files[r]);t.length>0&&eh.current(t)};return e.addEventListener("dragover",r),e.addEventListener("dragleave",n),e.addEventListener("drop",s),()=>{document.removeEventListener("paste",t,!0),e.removeEventListener("dragover",r),e.removeEventListener("dragleave",n),e.removeEventListener("drop",s)}},[]),(0,n.useEffect)(()=>{if(!_)return;let e=e=>{let t=e.target;K.current&&!K.current.contains(t)&&V.current&&!V.current.contains(t)&&J(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[_]),(0,r.jsxs)("div",{className:(0,b.cn)("flex flex-col border rounded-lg overflow-hidden",j?"absolute inset-0 z-40 !rounded-none":"","border-zinc-700"),style:{borderColor:`${t.color}60`},children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 px-3 py-1.5 text-xs select-none flex-shrink-0",style:{backgroundColor:`${t.color}30`,borderBottom:`1px solid ${t.color}40`},children:[(0,r.jsxs)("div",{ref:K,className:"flex-shrink-0",children:[(0,r.jsx)("button",{onClick:e=>{let t=e.currentTarget.getBoundingClientRect();H({x:t.left,y:t.bottom+6}),J(!_)},className:"w-3 h-3 rounded-full hover:ring-2 hover:ring-zinc-500 ring-offset-1 ring-offset-zinc-900 transition-shadow cursor-pointer",style:{backgroundColor:t.color},title:"Change color"}),_&&(0,s.createPortal)((0,r.jsx)("div",{ref:V,className:"fixed z-[9999] bg-zinc-800 border border-zinc-600 rounded-xl p-3 shadow-2xl",style:{left:W.x,top:W.y},children:(0,r.jsx)("div",{className:"grid grid-cols-4 gap-2.5",style:{width:132},children:["#ef4444","#f97316","#f59e0b","#eab308","#84cc16","#22c55e","#14b8a6","#06b6d4","#3b82f6","#6366f1","#8b5cf6","#a855f7","#d946ef","#ec4899","#f43f5e","#78716c"].map(e=>(0,r.jsx)("button",{onClick:()=>{k(t.id,{color:e}),J(!1)},className:`w-7 h-7 rounded-full border-2 transition-all hover:scale-110 ${t.color===e?"border-white scale-110 shadow-lg":"border-transparent hover:border-zinc-500"}`,style:{backgroundColor:e}},e))})}),document.body)]}),q?(0,r.jsxs)("div",{className:"flex items-center gap-1 flex-1",children:[(0,r.jsx)("input",{autoFocus:!0,value:G,onChange:e=>U(e.target.value),onKeyDown:e=>{"Enter"===e.key&&ew(),"Escape"===e.key&&(U(t.title),B(!1))},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,r.jsx)("button",{onClick:ew,className:"text-green-400 hover:text-green-300",children:(0,r.jsx)(o.Check,{className:"w-3 h-3"})})]}):(0,r.jsxs)("div",{className:"flex items-center gap-1 flex-1 min-w-0 group/title",children:[(0,r.jsx)("span",{onDoubleClick:()=>B(!0),className:"truncate text-zinc-300 font-medium cursor-default",children:t.title}),(0,r.jsx)("button",{onClick:()=>B(!0),className:"text-zinc-600 hover:text-zinc-300 opacity-0 group-hover/title:opacity-100 transition-opacity flex-shrink-0",title:"Rename",children:(0,r.jsx)(i.Pencil,{className:"w-2.5 h-2.5"})})]}),(0,r.jsx)("button",{onClick:()=>C?.(t.cwd),className:"text-[10px] text-zinc-500 truncate max-w-[120px] hover:text-amber-400 transition-colors",title:`Browse ${t.cwd}`,children:t.cwd.split(/[/\\]/).pop()}),t.agentType&&"shell"!==t.agentType&&(0,r.jsx)("span",{className:"text-[9px] px-1.5 py-0.5 rounded font-medium",style:{backgroundColor:`${y.AGENT_TYPES[t.agentType]?.color||"#6366f1"}20`,color:y.AGENT_TYPES[t.agentType]?.color||"#6366f1"},children:y.AGENT_TYPES[t.agentType]?.name||t.agentType}),t.nodeId&&(0,r.jsxs)("span",{className:"text-[9px] px-1.5 py-0.5 rounded font-medium bg-blue-500/10 text-blue-400 flex items-center gap-0.5",children:[(0,r.jsx)(x.Globe,{className:"w-2.5 h-2.5"}),"remote"]}),R&&"shell"!==t.agentType&&(0,r.jsx)("button",{onClick:async()=>{let e=!t.isCollaborating;await k(t.id,{isCollaborating:e}),M.current?.readyState===WebSocket.OPEN&&M.current.send(JSON.stringify({type:"collab-toggle",isCollaborating:e}))},className:`transition-colors ${t.isCollaborating?"text-indigo-400 hover:text-indigo-300":"text-zinc-600 hover:text-zinc-400"}`,title:t.isCollaborating?"Collaborating — click to opt out":"Not collaborating — click to opt in",children:(0,r.jsx)(p.Users,{className:"w-3 h-3"})}),!I&&!Y&&(0,r.jsx)("span",{className:"text-[10px] text-yellow-500",children:"connecting..."}),Y&&(0,r.jsx)("button",{onClick:()=>{eg.current=!0,eb.current&&clearTimeout(eb.current),M.current?.close(),A.current?.dispose(),Q(!1),ef.current=!1,setTimeout(ev,100)},className:"text-zinc-400 hover:text-white",title:"Restart",children:(0,r.jsx)(l,{className:"w-3 h-3"})}),!S&&z&&(0,r.jsx)("button",{onClick:()=>{z&&(eg.current=!0,eb.current&&clearTimeout(eb.current),M.current?.close(),A.current?.dispose(),z(t.id))},className:"text-zinc-300 hover:text-white",title:"Pop out to new window",children:(0,r.jsx)(m,{className:"w-3 h-3"})}),(0,r.jsx)("button",{onClick:()=>N(t.id),className:"text-zinc-300 hover:text-white",title:j?"Restore":"Maximize",children:j?(0,r.jsx)(u,{className:"w-3 h-3"}):(0,r.jsx)(d,{className:"w-3 h-3"})}),(0,r.jsx)("button",{onClick:()=>{confirm("Close this terminal?")&&c(t.id)},className:"text-zinc-300 hover:text-red-400",title:"Close",children:(0,r.jsx)(a.X,{className:"w-3 h-3"})})]}),(0,r.jsxs)("div",{ref:P,className:"flex-1 relative bg-[#0a0a0a]",style:{minHeight:j?er?"calc(100vh - 180px)":"calc(100vh - 100px)":"300px"},onClick:er?e=>{e.preventDefault(),eu.current?.focus()}:void 0,children:[eT&&(0,r.jsx)("div",{className:"absolute inset-0 z-10 bg-indigo-500/10 border-2 border-dashed border-indigo-400 flex items-center justify-center pointer-events-none",children:(0,r.jsxs)("div",{className:"flex items-center gap-2 bg-zinc-900/90 px-4 py-2 rounded-lg text-sm text-indigo-300",children:[(0,r.jsx)(g.Upload,{className:"w-4 h-4"}),"Drop files to upload to ",t.cwd.split(/[/\\]/).pop()||t.cwd]})}),eC&&(0,r.jsx)("div",{className:"absolute bottom-2 left-1/2 -translate-x-1/2 z-10 bg-zinc-800/95 border border-zinc-600 px-3 py-1.5 rounded-lg text-xs text-zinc-300 shadow-lg",children:eC})]}),er&&(0,r.jsxs)("div",{className:"flex flex-col gap-1 px-2 py-1.5 flex-shrink-0 border-t border-zinc-700",style:{backgroundColor:`${t.color}15`,borderTopColor:`${t.color}30`},children:[(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)("input",{ref:eu,type:"text",value:el,onChange:e=>ed(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),ek(el?el+"\r":"\r"),ed(""))},placeholder:"Type or use mic...",className:"flex-1 bg-zinc-900 text-zinc-200 text-sm px-3 py-2 rounded border border-zinc-600 focus:border-zinc-400 focus:outline-none font-mono placeholder:text-zinc-600",autoComplete:"off",autoCorrect:"on",spellCheck:!1}),(0,r.jsx)("button",{onClick:()=>{ek(el?el+"\r":"\r"),ed(""),eu.current?.focus()},className:"px-3 py-2 text-[11px] font-mono bg-indigo-600 hover:bg-indigo-500 text-white rounded border border-indigo-500 font-medium",children:"Send"})]}),(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)("button",{onClick:()=>{ek("\x1b"),eu.current?.focus()},className:"px-2 py-1 text-[10px] font-mono bg-zinc-800 hover:bg-zinc-700 text-zinc-400 rounded border border-zinc-700",children:"Esc"}),(0,r.jsx)("button",{onClick:()=>{ek(" "),eu.current?.focus()},className:"px-2 py-1 text-[10px] font-mono bg-zinc-800 hover:bg-zinc-700 text-zinc-400 rounded border border-zinc-700",children:"Tab"}),(0,r.jsx)("button",{onClick:()=>{ek("\x03"),eu.current?.focus()},className:"px-2 py-1 text-[10px] font-mono bg-zinc-800 hover:bg-zinc-700 text-zinc-400 rounded border border-zinc-700",children:"Ctrl+C"}),(0,r.jsx)("button",{onClick:()=>{ek("\x1b[A"),eu.current?.focus()},className:"px-2 py-1 text-[10px] font-mono bg-zinc-800 hover:bg-zinc-700 text-zinc-400 rounded border border-zinc-700",children:"↑"}),(0,r.jsx)("button",{onClick:()=>{ek("\x1b[B"),eu.current?.focus()},className:"px-2 py-1 text-[10px] font-mono bg-zinc-800 hover:bg-zinc-700 text-zinc-400 rounded border border-zinc-700",children:"↓"}),(0,r.jsx)("div",{className:"flex-1"}),(0,r.jsx)("button",{onClick:()=>{ed(""),eu.current?.focus()},className:"px-2 py-1 text-[10px] font-mono bg-zinc-800 hover:bg-zinc-700 text-zinc-400 rounded border border-zinc-700",children:"Clear"})]})]}),!er&&eN&&(0,r.jsxs)("div",{className:"flex items-center justify-end gap-1 px-2 py-1 flex-shrink-0 border-t border-zinc-700/50",style:{backgroundColor:`${t.color}08`},children:[es&&(0,r.jsx)("span",{className:"text-[10px] text-green-400 animate-pulse mr-1",children:"Listening..."}),(0,r.jsx)("button",{onClick:()=>{if(ec.current){if(ec.current=!1,ea(!1),eo("idle"),ej.current){try{ej.current.abort()}catch{}ej.current=null}}else eN&&(ec.current=!0,ea(!0),ez(),setTimeout(()=>A.current?.focus(),100))},className:(0,b.cn)("p-1 rounded border transition-all",es?"bg-green-900/50 border-green-500 text-green-400 hover:bg-red-900/50 hover:border-red-600 hover:text-red-400 shadow-[0_0_8px_rgba(34,197,94,0.3)]":"bg-zinc-800/50 border-zinc-700 text-zinc-500 hover:text-zinc-300 hover:bg-zinc-700"),title:es?"Stop voice mode":"Start voice dictation",children:es?(0,r.jsx)(f.MicOff,{className:"w-3.5 h-3.5"}):(0,r.jsx)(h.Mic,{className:"w-3.5 h-3.5"})})]})]})}e.s(["TerminalPane",()=>k],24134)},63209,e=>{"use strict";let t=(0,e.i(75254).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",()=>t],63209)},10160,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(18566),s=e.i(31278),a=e.i(71689),i=e.i(48256),o=e.i(68054),c=e.i(63209),l=e.i(24134),d=e.i(34623),u=e.i(9165);function m({params:e}){return(0,t.jsx)(d.TotpGate,{children:r=>(0,t.jsx)(x,{params:e,terminalToken:r})})}function x({params:e,terminalToken:d}){let m=(0,n.useRouter)(),[x,p]=(0,r.useState)(null),[h,f]=(0,r.useState)(null),[g,b]=(0,r.useState)([]),[y,v]=(0,r.useState)(""),[w,k]=(0,r.useState)("#6366f1"),[j,N]=(0,r.useState)(""),[z,C]=(0,r.useState)(!0),[S,T]=(0,r.useState)(null),[R,E]=(0,r.useState)(null);(0,r.useEffect)(()=>{e.then(e=>{p(e.nodeId),f(e.workspaceId)})},[e]),(0,r.useEffect)(()=>{x&&h&&Promise.all([fetch((0,u.api)(`/api/network/proxy/${x}/workspaces/${h}`)).then(e=>{if(!e.ok)throw Error(`Failed to fetch workspace (${e.status})`);return e.json()}),fetch((0,u.api)(`/api/network/proxy/${x}/workspaces`)).then(e=>{if(!e.ok)throw Error(`Failed to fetch workspaces (${e.status})`);return e.json()})]).then(([e,t])=>{b((e.panes||[]).map(e=>({...e,nodeId:x,isPopout:!!e.isPopout})));let r=t.workspaces?.find(e=>String(e.id)===h);r&&(v(r.name),k(r.color),N(r.nodeName||"")),C(!1)}).catch(e=>{T(e.message),C(!1)})},[x,h]);let P=(0,r.useCallback)(()=>{},[]),A=(0,r.useCallback)(()=>{},[]),M=(0,r.useCallback)(e=>{E(t=>t===e?null:e)},[]);if(z)return(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsx)(s.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})});if(S)return(0,t.jsxs)("div",{className:"h-screen flex flex-col items-center justify-center bg-zinc-950 text-zinc-100",children:[(0,t.jsx)(c.AlertCircle,{className:"w-8 h-8 text-red-500 mb-3"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400 mb-4",children:S}),(0,t.jsxs)("button",{onClick:()=>m.push("/terminal"),className:"flex items-center gap-2 px-4 py-2 text-sm border border-zinc-700 text-zinc-400 rounded-lg hover:text-white hover:border-zinc-500 transition-colors",children:[(0,t.jsx)(a.ArrowLeft,{className:"w-4 h-4"}),"Back to Spaces"]})]});let $=g.filter(e=>!e.isPopout);return(0,t.jsxs)("div",{className:"h-screen flex flex-col bg-zinc-950 text-zinc-100",children:[(0,t.jsx)("div",{className:"flex items-center justify-between px-4 py-2 border-b border-zinc-800 flex-shrink-0",children:(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("button",{onClick:()=>m.push("/terminal"),className:"p-1.5 -ml-1 text-zinc-500 hover:text-white hover:bg-zinc-800 rounded-md transition-colors",title:"Back to Spaces",children:(0,t.jsx)(a.ArrowLeft,{className:"w-4 h-4"})}),(0,t.jsx)("div",{className:"w-px h-4 bg-zinc-800"}),(0,t.jsx)(i.Globe,{className:"w-3.5 h-3.5 text-zinc-500"}),(0,t.jsx)("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:w}}),(0,t.jsx)("span",{className:"text-sm font-semibold",children:y||"Remote Workspace"}),j&&(0,t.jsxs)("span",{className:"text-xs text-zinc-500",children:["on ",j]}),(0,t.jsxs)("span",{className:"text-[11px] text-zinc-500",children:[$.length," pane",1!==$.length?"s":""]})]})}),0===$.length?(0,t.jsx)("div",{className:"flex-1 flex items-center justify-center",children:(0,t.jsxs)("div",{className:"text-center space-y-2",children:[(0,t.jsx)(o.Terminal,{className:"w-10 h-10 text-zinc-700 mx-auto"}),(0,t.jsx)("p",{className:"text-zinc-500 text-sm",children:"This remote workspace has no panes."})]})}):(0,t.jsx)("div",{className:"flex-1 p-2 gap-2 overflow-auto",style:{display:"grid",gridTemplateColumns:1===$.length?"1fr":$.length<=2||$.length<=4?"repeat(2, 1fr)":"repeat(3, 1fr)",gridAutoRows:$.length<=2?"1fr":"minmax(300px, 1fr)"},children:$.map(e=>R&&R!==e.id?null:(0,t.jsx)(l.TerminalPane,{pane:e,onClose:P,onUpdate:A,isMaximized:R===e.id,onToggleMaximize:M,terminalToken:d},e.id))})]})}e.s(["default",()=>m])},16049,e=>{e.v(t=>Promise.all(["static/chunks/e40d2bd3b4ce8192.js"].map(t=>e.l(t))).then(()=>t(44908)))},59439,e=>{e.v(t=>Promise.all(["static/chunks/af8bfb72187b7cbf.js"].map(t=>e.l(t))).then(()=>t(93309)))},16091,e=>{e.v(t=>Promise.all(["static/chunks/9768207ca0a51abd.js"].map(t=>e.l(t))).then(()=>t(52216)))}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:i=2,absoluteStrokeWidth:a,className:l="",children:o,iconNode:c,...u},d)=>(0,t.createElement)("svg",{ref:d,...s,width:n,height:n,stroke:e,strokeWidth:a?24*Number(i)/Number(n):i,className:r("lucide",l),...!o&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(u)&&{"aria-hidden":"true"},...u},[...c.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(o)?o:[o]])),a=(e,s)=>{let a=(0,t.forwardRef)(({className:a,...l},o)=>(0,t.createElement)(i,{ref:o,iconNode:s,className:r(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,a),...l}));return a.displayName=n(e),a};e.s(["default",()=>a],75254)},31278,e=>{"use strict";let t=(0,e.i(75254).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],31278)},18566,(e,t,r)=>{t.exports=e.r(76562)},39616,e=>{"use strict";let t=(0,e.i(75254).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Settings",()=>t],39616)},34623,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(31278),s=e.i(39616),i=e.i(18566),a=e.i(9165),l=e.i(29320);let o="spaces-terminal-token";function c({children:e}){let c=(0,i.useRouter)(),{isDesktop:u,basePath:d}=(0,l.useTier)(),[f,m]=(0,r.useState)("loading"),[p,h]=(0,r.useState)(""),[x,g]=(0,r.useState)(""),[j,b]=(0,r.useState)(""),[y,w]=(0,r.useState)(!1),v=(0,r.useRef)(null),k=`${d}/spaces_icon.png`;(0,r.useEffect)(()=>{if(u){h("desktop-local"),m("authorized");return}function e(){let e=sessionStorage.getItem(o);if(e){h(e),m("authorized");return}fetch((0,a.api)("/api/auth/totp/status")).then(e=>e.json()).then(e=>{e.enabled?(m("prompt"),setTimeout(()=>v.current?.focus(),100)):m("not-setup")}).catch(()=>m("not-setup"))}fetch((0,a.api)("/api/auth/me")).then(t=>{if(t.ok){h("session-auth"),m("authorized");return}return e()}).catch(()=>e())},[u]);let N=(0,r.useCallback)(async e=>{if(6!==e.length)return;w(!0),b("");let t=await fetch((0,a.api)("/api/auth/totp/verify"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e,action:"verify"})}),r=await t.json();w(!1),r.success&&r.terminalToken?(sessionStorage.setItem(o,r.terminalToken),h(r.terminalToken),m("authorized")):(b(r.error||"Invalid code"),g(""),v.current?.focus())},[]);return"loading"===f?(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsx)(n.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):"authorized"===f?(0,t.jsx)(t.Fragment,{children:e(p)}):"not-setup"===f?(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsxs)("div",{className:"text-center space-y-4 max-w-sm",children:[(0,t.jsx)("img",{src:k,alt:"Spaces",className:"w-12 h-12 mx-auto opacity-40"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-white",children:"2FA Required"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Two-factor authentication must be set up before you can use terminals."}),(0,t.jsxs)("button",{onClick:()=>c.push("/settings"),className:"inline-flex items-center gap-2 px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500",children:[(0,t.jsx)(s.Settings,{className:"w-4 h-4"}),"Go to Settings"]})]})}):(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsxs)("div",{className:"text-center space-y-4 max-w-sm",children:[(0,t.jsx)("img",{src:k,alt:"Spaces",className:"w-12 h-12 mx-auto"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-white",children:"Terminal Verification"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Enter the 6-digit code from your authenticator app."}),(0,t.jsxs)("div",{children:[(0,t.jsx)("input",{ref:v,type:"text",inputMode:"numeric",autoComplete:"one-time-code",placeholder:"000000",value:x,onChange:e=>{let t;g(t=e.target.value.replace(/\D/g,"").slice(0,6)),b(""),6===t.length&&N(t)},disabled:y,className:"w-48 px-3 py-3 text-2xl font-mono tracking-[0.4em] text-center bg-zinc-800 border border-zinc-700 rounded-lg focus:outline-none focus:border-indigo-500 text-white disabled:opacity-50",autoFocus:!0}),y&&(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 mt-3 text-xs text-zinc-400",children:[(0,t.jsx)(n.Loader2,{className:"w-3 h-3 animate-spin"}),"Verifying..."]}),j&&(0,t.jsx)("p",{className:"text-sm text-red-400 mt-3",children:j})]}),(0,t.jsx)("p",{className:"text-[11px] text-zinc-600",children:"Token is valid for 8 hours after verification."})]})})}e.s(["TotpGate",()=>c])},67585,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return s}});let n=e.r(32061);function s({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},9885,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},52157,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return o}});let n=e.r(18050),s=e.r(74080),i=e.r(63599),a=e.r(9885),l=e.r(43369);function o({moduleIds:e}){if("u">typeof window)return null;let t=i.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let o=(0,l.getDeploymentIdQueryOrEmptyString)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,a.encodeURIPath)(e)}${o}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,s.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return c}});let n=e.r(18050),s=e.r(71645),i=e.r(67585),a=e.r(52157);function l(e){return{default:e&&"default"in e?e.default:e}}let o={loader:()=>Promise.resolve(l(()=>null)),loading:null,ssr:!0},c=function(e){let t={...o,...e},r=(0,s.lazy)(()=>t.loader().then(l)),c=t.loading;function u(e){let l=c?(0,n.jsx)(c,{isLoading:!0,pastDelay:!0,error:null}):null,o=!t.ssr||!!t.loading,u=o?s.Suspense:s.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(a.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(i.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(u,{...o?{fallback:l}:{},children:d})}return u.displayName="LoadableComponent",u}},70703,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(55682)._(e.r(69093));function s(e,t){let r={};"function"==typeof e&&(r.loader=e);let s={...r,...t};return(0,n.default)({...s,modules:s.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},14696,e=>{"use strict";var t=e.i(18050),r=e.i(70703),n=e.i(34623);let s=(0,r.default)(()=>e.A(97194).then(e=>({default:e.VRApp})),{loadableGenerated:{modules:[82525]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"h-screen w-screen bg-zinc-950 flex items-center justify-center text-zinc-400",children:"Loading VR..."})});function i(){return(0,t.jsx)(n.TotpGate,{children:e=>(0,t.jsx)(s,{terminalToken:e})})}e.s(["default",()=>i])},97194,e=>{e.v(t=>Promise.all(["static/chunks/7a7c0d9d875332a3.js","static/chunks/e40d2bd3b4ce8192.js","static/chunks/e23f20b51a75a5bb.js","static/chunks/481cc11ae80b08b1.js"].map(t=>e.l(t))).then(()=>t(82525)))}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var s={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:i=2,absoluteStrokeWidth:a,className:l="",children:o,iconNode:c,...u},d)=>(0,t.createElement)("svg",{ref:d,...s,width:n,height:n,stroke:e,strokeWidth:a?24*Number(i)/Number(n):i,className:r("lucide",l),...!o&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(u)&&{"aria-hidden":"true"},...u},[...c.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(o)?o:[o]])),a=(e,s)=>{let a=(0,t.forwardRef)(({className:a,...l},o)=>(0,t.createElement)(i,{ref:o,iconNode:s,className:r(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,a),...l}));return a.displayName=n(e),a};e.s(["default",()=>a],75254)},31278,e=>{"use strict";let t=(0,e.i(75254).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["Loader2",()=>t],31278)},18566,(e,t,r)=>{t.exports=e.r(76562)},39616,e=>{"use strict";let t=(0,e.i(75254).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);e.s(["Settings",()=>t],39616)},34623,e=>{"use strict";var t=e.i(18050),r=e.i(71645),n=e.i(31278),s=e.i(39616),i=e.i(18566),a=e.i(9165),l=e.i(29320);let o="spaces-terminal-token";function c({children:e}){let c=(0,i.useRouter)(),{isDesktop:u,basePath:d}=(0,l.useTier)(),[f,m]=(0,r.useState)("loading"),[p,h]=(0,r.useState)(""),[x,g]=(0,r.useState)(""),[j,y]=(0,r.useState)(""),[b,w]=(0,r.useState)(!1),v=(0,r.useRef)(null),k=`${d}/spaces_icon.png`;(0,r.useEffect)(()=>{if(u){h("desktop-local"),m("authorized");return}function e(){let e=sessionStorage.getItem(o);if(e){h(e),m("authorized");return}fetch((0,a.api)("/api/auth/totp/status")).then(e=>e.json()).then(e=>{e.enabled?(m("prompt"),setTimeout(()=>v.current?.focus(),100)):m("not-setup")}).catch(()=>m("not-setup"))}fetch((0,a.api)("/api/auth/me")).then(t=>{if(t.ok){h("session-auth"),m("authorized");return}return e()}).catch(()=>e())},[u]);let N=(0,r.useCallback)(async e=>{if(6!==e.length)return;w(!0),y("");let t=await fetch((0,a.api)("/api/auth/totp/verify"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e,action:"verify"})}),r=await t.json();w(!1),r.success&&r.terminalToken?(sessionStorage.setItem(o,r.terminalToken),h(r.terminalToken),m("authorized")):(y(r.error||"Invalid code"),g(""),v.current?.focus())},[]);return"loading"===f?(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsx)(n.Loader2,{className:"w-6 h-6 animate-spin text-indigo-500"})}):"authorized"===f?(0,t.jsx)(t.Fragment,{children:e(p)}):"not-setup"===f?(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsxs)("div",{className:"text-center space-y-4 max-w-sm",children:[(0,t.jsx)("img",{src:k,alt:"Spaces",className:"w-12 h-12 mx-auto opacity-40"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-white",children:"2FA Required"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Two-factor authentication must be set up before you can use terminals."}),(0,t.jsxs)("button",{onClick:()=>c.push("/settings"),className:"inline-flex items-center gap-2 px-4 py-2 text-sm bg-indigo-600 text-white rounded-md hover:bg-indigo-500",children:[(0,t.jsx)(s.Settings,{className:"w-4 h-4"}),"Go to Settings"]})]})}):(0,t.jsx)("div",{className:"flex items-center justify-center h-screen bg-zinc-950",children:(0,t.jsxs)("div",{className:"text-center space-y-4 max-w-sm",children:[(0,t.jsx)("img",{src:k,alt:"Spaces",className:"w-12 h-12 mx-auto"}),(0,t.jsx)("h2",{className:"text-lg font-semibold text-white",children:"Terminal Verification"}),(0,t.jsx)("p",{className:"text-sm text-zinc-400",children:"Enter the 6-digit code from your authenticator app."}),(0,t.jsxs)("div",{children:[(0,t.jsx)("input",{ref:v,type:"text",inputMode:"numeric",autoComplete:"one-time-code",placeholder:"000000",value:x,onChange:e=>{let t;g(t=e.target.value.replace(/\D/g,"").slice(0,6)),y(""),6===t.length&&N(t)},disabled:b,className:"w-48 px-3 py-3 text-2xl font-mono tracking-[0.4em] text-center bg-zinc-800 border border-zinc-700 rounded-lg focus:outline-none focus:border-indigo-500 text-white disabled:opacity-50",autoFocus:!0}),b&&(0,t.jsxs)("div",{className:"flex items-center justify-center gap-2 mt-3 text-xs text-zinc-400",children:[(0,t.jsx)(n.Loader2,{className:"w-3 h-3 animate-spin"}),"Verifying..."]}),j&&(0,t.jsx)("p",{className:"text-sm text-red-400 mt-3",children:j})]}),(0,t.jsx)("p",{className:"text-[11px] text-zinc-600",children:"Token is valid for 8 hours after verification."})]})})}e.s(["TotpGate",()=>c])},67585,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return s}});let n=e.r(32061);function s({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},9885,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},52157,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return o}});let n=e.r(18050),s=e.r(74080),i=e.r(63599),a=e.r(9885),l=e.r(43369);function o({moduleIds:e}){if("u">typeof window)return null;let t=i.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let o=(0,l.getDeploymentIdQueryOrEmptyString)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,a.encodeURIPath)(e)}${o}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,s.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},69093,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return c}});let n=e.r(18050),s=e.r(71645),i=e.r(67585),a=e.r(52157);function l(e){return{default:e&&"default"in e?e.default:e}}let o={loader:()=>Promise.resolve(l(()=>null)),loading:null,ssr:!0},c=function(e){let t={...o,...e},r=(0,s.lazy)(()=>t.loader().then(l)),c=t.loading;function u(e){let l=c?(0,n.jsx)(c,{isLoading:!0,pastDelay:!0,error:null}):null,o=!t.ssr||!!t.loading,u=o?s.Suspense:s.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(a.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(i.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(u,{...o?{fallback:l}:{},children:d})}return u.displayName="LoadableComponent",u}},70703,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(55682)._(e.r(69093));function s(e,t){let r={};"function"==typeof e&&(r.loader=e);let s={...r,...t};return(0,n.default)({...s,modules:s.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},14696,e=>{"use strict";var t=e.i(18050),r=e.i(70703),n=e.i(34623);let s=(0,r.default)(()=>e.A(97194).then(e=>({default:e.VRApp})),{loadableGenerated:{modules:[82525]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"h-screen w-screen bg-zinc-950 flex items-center justify-center text-zinc-400",children:"Loading VR..."})});function i(){return(0,t.jsx)(n.TotpGate,{children:e=>(0,t.jsx)(s,{terminalToken:e})})}e.s(["default",()=>i])},97194,e=>{e.v(t=>Promise.all(["static/chunks/e116953dc83d4eec.js","static/chunks/e40d2bd3b4ce8192.js","static/chunks/481cc11ae80b08b1.js","static/chunks/4ced66ef12d91b38.js"].map(t=>e.l(t))).then(()=>t(82525)))}]);