@jlongo78/agent-spaces 0.10.0-beta.2 → 0.10.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (721) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +2 -2
  3. package/.next/standalone/.next/server/app/(desktop)/admin/analytics/page_client-reference-manifest.js +1 -1
  4. package/.next/standalone/.next/server/app/(desktop)/admin/users/page_client-reference-manifest.js +1 -1
  5. package/.next/standalone/.next/server/app/(desktop)/analytics/page_client-reference-manifest.js +1 -1
  6. package/.next/standalone/.next/server/app/(desktop)/cortex/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/.next/server/app/(desktop)/network/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(desktop)/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(desktop)/projects/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(desktop)/sessions/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(desktop)/settings/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(desktop)/terminal/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/(desktop)/workspaces/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/_global-error.html +2 -2
  18. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  19. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  20. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  21. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  22. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  23. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  24. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  26. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  27. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  28. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  29. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  30. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  31. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  32. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  33. package/.next/standalone/.next/server/app/admin/analytics.html +1 -1
  34. package/.next/standalone/.next/server/app/admin/analytics.rsc +2 -2
  35. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics/__PAGE__.segment.rsc +1 -1
  36. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics.segment.rsc +1 -1
  37. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
  38. package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  39. package/.next/standalone/.next/server/app/admin/analytics.segments/_full.segment.rsc +2 -2
  40. package/.next/standalone/.next/server/app/admin/analytics.segments/_head.segment.rsc +1 -1
  41. package/.next/standalone/.next/server/app/admin/analytics.segments/_index.segment.rsc +2 -2
  42. package/.next/standalone/.next/server/app/admin/analytics.segments/_tree.segment.rsc +2 -2
  43. package/.next/standalone/.next/server/app/admin/users.html +1 -1
  44. package/.next/standalone/.next/server/app/admin/users.rsc +2 -2
  45. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users/__PAGE__.segment.rsc +1 -1
  46. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users.segment.rsc +1 -1
  47. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
  48. package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  49. package/.next/standalone/.next/server/app/admin/users.segments/_full.segment.rsc +2 -2
  50. package/.next/standalone/.next/server/app/admin/users.segments/_head.segment.rsc +1 -1
  51. package/.next/standalone/.next/server/app/admin/users.segments/_index.segment.rsc +2 -2
  52. package/.next/standalone/.next/server/app/admin/users.segments/_tree.segment.rsc +2 -2
  53. package/.next/standalone/.next/server/app/analytics.html +1 -1
  54. package/.next/standalone/.next/server/app/analytics.rsc +2 -2
  55. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics/__PAGE__.segment.rsc +1 -1
  56. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics.segment.rsc +1 -1
  57. package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  58. package/.next/standalone/.next/server/app/analytics.segments/_full.segment.rsc +2 -2
  59. package/.next/standalone/.next/server/app/analytics.segments/_head.segment.rsc +1 -1
  60. package/.next/standalone/.next/server/app/analytics.segments/_index.segment.rsc +2 -2
  61. package/.next/standalone/.next/server/app/analytics.segments/_tree.segment.rsc +2 -2
  62. package/.next/standalone/.next/server/app/api/admin/analytics/route.js +4 -2
  63. package/.next/standalone/.next/server/app/api/admin/analytics/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/users/[id]/route.js +4 -2
  65. package/.next/standalone/.next/server/app/api/admin/users/[id]/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/admin/users/route.js +4 -2
  67. package/.next/standalone/.next/server/app/api/admin/users/route.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/api/analytics/overview/route.js +5 -4
  69. package/.next/standalone/.next/server/app/api/analytics/overview/route.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/api/auth/login/route.js +3 -2
  71. package/.next/standalone/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/api/auth/logout/route.js +2 -2
  73. package/.next/standalone/.next/server/app/api/auth/logout/route.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/api/auth/me/route.js +3 -2
  75. package/.next/standalone/.next/server/app/api/auth/me/route.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/api/auth/totp/setup/route.js +2 -2
  77. package/.next/standalone/.next/server/app/api/auth/totp/setup/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/auth/totp/status/route.js +2 -2
  79. package/.next/standalone/.next/server/app/api/auth/totp/status/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/auth/totp/verify/route.js +3 -2
  81. package/.next/standalone/.next/server/app/api/auth/totp/verify/route.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js +4 -3
  83. package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/benchmark/run/route.js +4 -3
  85. package/.next/standalone/.next/server/app/api/benchmark/run/route.js.nft.json +1 -1
  86. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js +4 -3
  87. package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/api/benchmark/runs/route.js +4 -3
  89. package/.next/standalone/.next/server/app/api/benchmark/runs/route.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/api/benchmark/status/route.js +4 -3
  91. package/.next/standalone/.next/server/app/api/benchmark/status/route.js.nft.json +1 -1
  92. package/.next/standalone/.next/server/app/api/bulk/route.js +5 -4
  93. package/.next/standalone/.next/server/app/api/bulk/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/chat/route.js +4 -2
  95. package/.next/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  96. package/.next/standalone/.next/server/app/api/claude/usage/route.js +5 -4
  97. package/.next/standalone/.next/server/app/api/claude/usage/route.js.nft.json +1 -1
  98. package/.next/standalone/.next/server/app/api/config/route.js +3 -3
  99. package/.next/standalone/.next/server/app/api/config/route.js.nft.json +1 -1
  100. package/.next/standalone/.next/server/app/api/cortex/context/route.js +4 -3
  101. package/.next/standalone/.next/server/app/api/cortex/context/route.js.nft.json +1 -1
  102. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js +4 -3
  103. package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js.nft.json +1 -1
  104. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js +4 -3
  105. package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js.nft.json +1 -1
  106. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js +4 -3
  107. package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js.nft.json +1 -1
  108. package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js +4 -3
  109. package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js.nft.json +1 -1
  110. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js +4 -3
  111. package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/cortex/export/route.js +4 -3
  113. package/.next/standalone/.next/server/app/api/cortex/export/route.js.nft.json +1 -1
  114. package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js +4 -3
  115. package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js +4 -3
  117. package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/cortex/federation/search/route.js +4 -3
  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 +4 -3
  121. package/.next/standalone/.next/server/app/api/cortex/federation/teach/route.js.nft.json +1 -1
  122. package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js +4 -3
  123. package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js +4 -3
  125. package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js.nft.json +1 -1
  126. package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js +4 -3
  127. package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js.nft.json +1 -1
  128. package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js +4 -3
  129. package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/cortex/import/route.js +4 -3
  131. package/.next/standalone/.next/server/app/api/cortex/import/route.js.nft.json +1 -1
  132. package/.next/standalone/.next/server/app/api/cortex/import/status/route.js +4 -3
  133. package/.next/standalone/.next/server/app/api/cortex/import/status/route.js.nft.json +1 -1
  134. package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js +4 -3
  135. package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js +4 -3
  137. package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js.nft.json +1 -1
  138. package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js +4 -3
  139. package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js.nft.json +1 -1
  140. package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js +4 -3
  141. package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js +4 -3
  143. package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js.nft.json +1 -1
  144. package/.next/standalone/.next/server/app/api/cortex/lobes/route.js +4 -3
  145. package/.next/standalone/.next/server/app/api/cortex/lobes/route.js.nft.json +1 -1
  146. package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js +4 -3
  147. package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js +3 -3
  149. package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js.nft.json +1 -1
  150. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js +3 -3
  151. package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js +4 -3
  153. package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js +4 -3
  155. package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js.nft.json +1 -1
  156. package/.next/standalone/.next/server/app/api/cortex/search/route.js +4 -3
  157. package/.next/standalone/.next/server/app/api/cortex/search/route.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/app/api/cortex/settings/route.js +4 -3
  159. package/.next/standalone/.next/server/app/api/cortex/settings/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/cortex/status/route.js +4 -3
  161. package/.next/standalone/.next/server/app/api/cortex/status/route.js.nft.json +1 -1
  162. package/.next/standalone/.next/server/app/api/cortex/timeline/route.js +4 -3
  163. package/.next/standalone/.next/server/app/api/cortex/timeline/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/cortex/usage/route.js +4 -3
  165. package/.next/standalone/.next/server/app/api/cortex/usage/route.js.nft.json +1 -1
  166. package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js +4 -3
  167. package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/api/events/route.js +5 -3
  169. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/app/api/files/route.js +3 -2
  171. package/.next/standalone/.next/server/app/api/files/route.js.nft.json +1 -1
  172. package/.next/standalone/.next/server/app/api/folders/route.js +3 -3
  173. package/.next/standalone/.next/server/app/api/folders/route.js.nft.json +1 -1
  174. package/.next/standalone/.next/server/app/api/network/connect-callback/route.js +2 -2
  175. package/.next/standalone/.next/server/app/api/network/connect-callback/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/network/connect-request/[id]/route.js +2 -2
  177. package/.next/standalone/.next/server/app/api/network/connect-request/[id]/route.js.nft.json +1 -1
  178. package/.next/standalone/.next/server/app/api/network/connect-request/route.js +2 -2
  179. package/.next/standalone/.next/server/app/api/network/connect-request/route.js.nft.json +1 -1
  180. package/.next/standalone/.next/server/app/api/network/discovered/route.js +2 -2
  181. package/.next/standalone/.next/server/app/api/network/discovered/route.js.nft.json +1 -1
  182. package/.next/standalone/.next/server/app/api/network/handshake/route.js +4 -3
  183. package/.next/standalone/.next/server/app/api/network/handshake/route.js.nft.json +1 -1
  184. package/.next/standalone/.next/server/app/api/network/health/route.js +2 -2
  185. package/.next/standalone/.next/server/app/api/network/health/route.js.nft.json +1 -1
  186. package/.next/standalone/.next/server/app/api/network/identity/route.js +2 -2
  187. package/.next/standalone/.next/server/app/api/network/identity/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/network/keys/[id]/route.js +2 -2
  189. package/.next/standalone/.next/server/app/api/network/keys/[id]/route.js.nft.json +1 -1
  190. package/.next/standalone/.next/server/app/api/network/keys/route.js +2 -2
  191. package/.next/standalone/.next/server/app/api/network/keys/route.js.nft.json +1 -1
  192. package/.next/standalone/.next/server/app/api/network/nodes/[id]/route.js +2 -2
  193. package/.next/standalone/.next/server/app/api/network/nodes/[id]/route.js.nft.json +1 -1
  194. package/.next/standalone/.next/server/app/api/network/nodes/check/route.js +2 -2
  195. package/.next/standalone/.next/server/app/api/network/nodes/check/route.js.nft.json +1 -1
  196. package/.next/standalone/.next/server/app/api/network/nodes/route.js +2 -2
  197. package/.next/standalone/.next/server/app/api/network/nodes/route.js.nft.json +1 -1
  198. package/.next/standalone/.next/server/app/api/network/panes/[id]/route.js +6 -5
  199. package/.next/standalone/.next/server/app/api/network/panes/[id]/route.js.nft.json +1 -1
  200. package/.next/standalone/.next/server/app/api/network/panes/route.js +6 -5
  201. package/.next/standalone/.next/server/app/api/network/panes/route.js.nft.json +1 -1
  202. package/.next/standalone/.next/server/app/api/network/projects/route.js +6 -5
  203. package/.next/standalone/.next/server/app/api/network/projects/route.js.nft.json +1 -1
  204. package/.next/standalone/.next/server/app/api/network/proxy/[nodeId]/[...path]/route.js +2 -2
  205. package/.next/standalone/.next/server/app/api/network/proxy/[nodeId]/[...path]/route.js.nft.json +1 -1
  206. package/.next/standalone/.next/server/app/api/network/search/route.js +6 -5
  207. package/.next/standalone/.next/server/app/api/network/search/route.js.nft.json +1 -1
  208. package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js +6 -5
  209. package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js.nft.json +1 -1
  210. package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js +6 -5
  211. package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js.nft.json +1 -1
  212. package/.next/standalone/.next/server/app/api/network/sessions/route.js +6 -5
  213. package/.next/standalone/.next/server/app/api/network/sessions/route.js.nft.json +1 -1
  214. package/.next/standalone/.next/server/app/api/network/terminal/token/route.js +2 -2
  215. package/.next/standalone/.next/server/app/api/network/terminal/token/route.js.nft.json +1 -1
  216. package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js +6 -5
  217. package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js.nft.json +1 -1
  218. package/.next/standalone/.next/server/app/api/network/workspaces/route.js +6 -5
  219. package/.next/standalone/.next/server/app/api/network/workspaces/route.js.nft.json +1 -1
  220. package/.next/standalone/.next/server/app/api/panes/[id]/diff/route.js +5 -4
  221. package/.next/standalone/.next/server/app/api/panes/[id]/diff/route.js.nft.json +1 -1
  222. package/.next/standalone/.next/server/app/api/panes/[id]/route.js +5 -4
  223. package/.next/standalone/.next/server/app/api/panes/[id]/route.js.nft.json +1 -1
  224. package/.next/standalone/.next/server/app/api/panes/route.js +5 -4
  225. package/.next/standalone/.next/server/app/api/panes/route.js.nft.json +1 -1
  226. package/.next/standalone/.next/server/app/api/projects/route.js +5 -4
  227. package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  228. package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/[...path]/route.js +3 -3
  229. package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/[...path]/route.js.nft.json +1 -1
  230. package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/status/route.js +3 -3
  231. package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/status/route.js.nft.json +1 -1
  232. package/.next/standalone/.next/server/app/api/search/route.js +6 -5
  233. package/.next/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  234. package/.next/standalone/.next/server/app/api/server-config/route.js +2 -2
  235. package/.next/standalone/.next/server/app/api/server-config/route.js.nft.json +1 -1
  236. package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js +5 -3
  237. package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js.nft.json +1 -1
  238. package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js +5 -4
  239. package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js.nft.json +1 -1
  240. package/.next/standalone/.next/server/app/api/sessions/[id]/route.js +5 -4
  241. package/.next/standalone/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  242. package/.next/standalone/.next/server/app/api/sessions/route.js +6 -5
  243. package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
  244. package/.next/standalone/.next/server/app/api/sync/route.js +4 -3
  245. package/.next/standalone/.next/server/app/api/sync/route.js.nft.json +1 -1
  246. package/.next/standalone/.next/server/app/api/tags/route.js +5 -4
  247. package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -1
  248. package/.next/standalone/.next/server/app/api/tier/route.js +4 -3
  249. package/.next/standalone/.next/server/app/api/tier/route.js.nft.json +1 -1
  250. package/.next/standalone/.next/server/app/api/updates/route.js +2 -2
  251. package/.next/standalone/.next/server/app/api/updates/route.js.nft.json +1 -1
  252. package/.next/standalone/.next/server/app/api/whisper/config/route.js +2 -2
  253. package/.next/standalone/.next/server/app/api/whisper/config/route.js.nft.json +1 -1
  254. package/.next/standalone/.next/server/app/api/whisper/route.js +2 -2
  255. package/.next/standalone/.next/server/app/api/whisper/route.js.nft.json +1 -1
  256. package/.next/standalone/.next/server/app/api/wizard/chat/route.js +3 -3
  257. package/.next/standalone/.next/server/app/api/wizard/chat/route.js.nft.json +1 -1
  258. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js +5 -3
  259. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js.nft.json +1 -1
  260. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js +5 -3
  261. package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js.nft.json +1 -1
  262. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js +5 -3
  263. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js.nft.json +1 -1
  264. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js +5 -3
  265. package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js.nft.json +1 -1
  266. package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js +5 -4
  267. package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js.nft.json +1 -1
  268. package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js +5 -4
  269. package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js.nft.json +1 -1
  270. package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route.js +5 -4
  271. package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route.js.nft.json +1 -1
  272. package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route.js +5 -4
  273. package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route.js.nft.json +1 -1
  274. package/.next/standalone/.next/server/app/api/workspaces/route.js +6 -5
  275. package/.next/standalone/.next/server/app/api/workspaces/route.js.nft.json +1 -1
  276. package/.next/standalone/.next/server/app/cortex.html +1 -1
  277. package/.next/standalone/.next/server/app/cortex.rsc +2 -2
  278. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex/__PAGE__.segment.rsc +1 -1
  279. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex.segment.rsc +1 -1
  280. package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  281. package/.next/standalone/.next/server/app/cortex.segments/_full.segment.rsc +2 -2
  282. package/.next/standalone/.next/server/app/cortex.segments/_head.segment.rsc +1 -1
  283. package/.next/standalone/.next/server/app/cortex.segments/_index.segment.rsc +2 -2
  284. package/.next/standalone/.next/server/app/cortex.segments/_tree.segment.rsc +2 -2
  285. package/.next/standalone/.next/server/app/icon.png/route.js +2 -2
  286. package/.next/standalone/.next/server/app/icon.png/route.js.nft.json +1 -1
  287. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  288. package/.next/standalone/.next/server/app/login.html +1 -1
  289. package/.next/standalone/.next/server/app/login.rsc +2 -2
  290. package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +2 -2
  291. package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
  292. package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +2 -2
  293. package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  294. package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  295. package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
  296. package/.next/standalone/.next/server/app/m/page_client-reference-manifest.js +1 -1
  297. package/.next/standalone/.next/server/app/m/projects/page_client-reference-manifest.js +1 -1
  298. package/.next/standalone/.next/server/app/m/projects.html +1 -1
  299. package/.next/standalone/.next/server/app/m/projects.rsc +2 -2
  300. package/.next/standalone/.next/server/app/m/projects.segments/_full.segment.rsc +2 -2
  301. package/.next/standalone/.next/server/app/m/projects.segments/_head.segment.rsc +1 -1
  302. package/.next/standalone/.next/server/app/m/projects.segments/_index.segment.rsc +2 -2
  303. package/.next/standalone/.next/server/app/m/projects.segments/_tree.segment.rsc +2 -2
  304. package/.next/standalone/.next/server/app/m/projects.segments/m/projects/__PAGE__.segment.rsc +1 -1
  305. package/.next/standalone/.next/server/app/m/projects.segments/m/projects.segment.rsc +1 -1
  306. package/.next/standalone/.next/server/app/m/projects.segments/m.segment.rsc +1 -1
  307. package/.next/standalone/.next/server/app/m/sessions/[id]/page_client-reference-manifest.js +1 -1
  308. package/.next/standalone/.next/server/app/m/sessions/page_client-reference-manifest.js +1 -1
  309. package/.next/standalone/.next/server/app/m/sessions.html +1 -1
  310. package/.next/standalone/.next/server/app/m/sessions.rsc +2 -2
  311. package/.next/standalone/.next/server/app/m/sessions.segments/_full.segment.rsc +2 -2
  312. package/.next/standalone/.next/server/app/m/sessions.segments/_head.segment.rsc +1 -1
  313. package/.next/standalone/.next/server/app/m/sessions.segments/_index.segment.rsc +2 -2
  314. package/.next/standalone/.next/server/app/m/sessions.segments/_tree.segment.rsc +2 -2
  315. package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions/__PAGE__.segment.rsc +1 -1
  316. package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions.segment.rsc +1 -1
  317. package/.next/standalone/.next/server/app/m/sessions.segments/m.segment.rsc +1 -1
  318. package/.next/standalone/.next/server/app/m/settings/page_client-reference-manifest.js +1 -1
  319. package/.next/standalone/.next/server/app/m/settings.html +1 -1
  320. package/.next/standalone/.next/server/app/m/settings.rsc +2 -2
  321. package/.next/standalone/.next/server/app/m/settings.segments/_full.segment.rsc +2 -2
  322. package/.next/standalone/.next/server/app/m/settings.segments/_head.segment.rsc +1 -1
  323. package/.next/standalone/.next/server/app/m/settings.segments/_index.segment.rsc +2 -2
  324. package/.next/standalone/.next/server/app/m/settings.segments/_tree.segment.rsc +2 -2
  325. package/.next/standalone/.next/server/app/m/settings.segments/m/settings/__PAGE__.segment.rsc +1 -1
  326. package/.next/standalone/.next/server/app/m/settings.segments/m/settings.segment.rsc +1 -1
  327. package/.next/standalone/.next/server/app/m/settings.segments/m.segment.rsc +1 -1
  328. package/.next/standalone/.next/server/app/m/terminal/page_client-reference-manifest.js +1 -1
  329. package/.next/standalone/.next/server/app/m/terminal.html +1 -1
  330. package/.next/standalone/.next/server/app/m/terminal.rsc +2 -2
  331. package/.next/standalone/.next/server/app/m/terminal.segments/_full.segment.rsc +2 -2
  332. package/.next/standalone/.next/server/app/m/terminal.segments/_head.segment.rsc +1 -1
  333. package/.next/standalone/.next/server/app/m/terminal.segments/_index.segment.rsc +2 -2
  334. package/.next/standalone/.next/server/app/m/terminal.segments/_tree.segment.rsc +2 -2
  335. package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal/__PAGE__.segment.rsc +1 -1
  336. package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal.segment.rsc +1 -1
  337. package/.next/standalone/.next/server/app/m/terminal.segments/m.segment.rsc +1 -1
  338. package/.next/standalone/.next/server/app/m.html +1 -1
  339. package/.next/standalone/.next/server/app/m.rsc +2 -2
  340. package/.next/standalone/.next/server/app/m.segments/_full.segment.rsc +2 -2
  341. package/.next/standalone/.next/server/app/m.segments/_head.segment.rsc +1 -1
  342. package/.next/standalone/.next/server/app/m.segments/_index.segment.rsc +2 -2
  343. package/.next/standalone/.next/server/app/m.segments/_tree.segment.rsc +2 -2
  344. package/.next/standalone/.next/server/app/m.segments/m/__PAGE__.segment.rsc +1 -1
  345. package/.next/standalone/.next/server/app/m.segments/m.segment.rsc +1 -1
  346. package/.next/standalone/.next/server/app/network.html +1 -1
  347. package/.next/standalone/.next/server/app/network.rsc +2 -2
  348. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network/__PAGE__.segment.rsc +1 -1
  349. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network.segment.rsc +1 -1
  350. package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  351. package/.next/standalone/.next/server/app/network.segments/_full.segment.rsc +2 -2
  352. package/.next/standalone/.next/server/app/network.segments/_head.segment.rsc +1 -1
  353. package/.next/standalone/.next/server/app/network.segments/_index.segment.rsc +2 -2
  354. package/.next/standalone/.next/server/app/network.segments/_tree.segment.rsc +2 -2
  355. package/.next/standalone/.next/server/app/projects.html +1 -1
  356. package/.next/standalone/.next/server/app/projects.rsc +2 -2
  357. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects/__PAGE__.segment.rsc +1 -1
  358. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects.segment.rsc +1 -1
  359. package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  360. package/.next/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
  361. package/.next/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  362. package/.next/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  363. package/.next/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  364. package/.next/standalone/.next/server/app/sessions.html +1 -1
  365. package/.next/standalone/.next/server/app/sessions.rsc +2 -2
  366. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions/__PAGE__.segment.rsc +1 -1
  367. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions.segment.rsc +1 -1
  368. package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  369. package/.next/standalone/.next/server/app/sessions.segments/_full.segment.rsc +2 -2
  370. package/.next/standalone/.next/server/app/sessions.segments/_head.segment.rsc +1 -1
  371. package/.next/standalone/.next/server/app/sessions.segments/_index.segment.rsc +2 -2
  372. package/.next/standalone/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
  373. package/.next/standalone/.next/server/app/settings.html +1 -1
  374. package/.next/standalone/.next/server/app/settings.rsc +2 -2
  375. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings/__PAGE__.segment.rsc +1 -1
  376. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings.segment.rsc +1 -1
  377. package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  378. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  379. package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  380. package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  381. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  382. package/.next/standalone/.next/server/app/terminal.html +1 -1
  383. package/.next/standalone/.next/server/app/terminal.rsc +3 -3
  384. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal/__PAGE__.segment.rsc +2 -2
  385. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal.segment.rsc +1 -1
  386. package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  387. package/.next/standalone/.next/server/app/terminal.segments/_full.segment.rsc +3 -3
  388. package/.next/standalone/.next/server/app/terminal.segments/_head.segment.rsc +1 -1
  389. package/.next/standalone/.next/server/app/terminal.segments/_index.segment.rsc +2 -2
  390. package/.next/standalone/.next/server/app/terminal.segments/_tree.segment.rsc +2 -2
  391. package/.next/standalone/.next/server/app/vr/page_client-reference-manifest.js +1 -1
  392. package/.next/standalone/.next/server/app/vr.html +1 -1
  393. package/.next/standalone/.next/server/app/vr.rsc +2 -2
  394. package/.next/standalone/.next/server/app/vr.segments/_full.segment.rsc +2 -2
  395. package/.next/standalone/.next/server/app/vr.segments/_head.segment.rsc +1 -1
  396. package/.next/standalone/.next/server/app/vr.segments/_index.segment.rsc +2 -2
  397. package/.next/standalone/.next/server/app/vr.segments/_tree.segment.rsc +2 -2
  398. package/.next/standalone/.next/server/app/vr.segments/vr/__PAGE__.segment.rsc +1 -1
  399. package/.next/standalone/.next/server/app/vr.segments/vr.segment.rsc +1 -1
  400. package/.next/standalone/.next/server/app/workspaces.html +1 -1
  401. package/.next/standalone/.next/server/app/workspaces.rsc +2 -2
  402. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces/__PAGE__.segment.rsc +1 -1
  403. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces.segment.rsc +1 -1
  404. package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
  405. package/.next/standalone/.next/server/app/workspaces.segments/_full.segment.rsc +2 -2
  406. package/.next/standalone/.next/server/app/workspaces.segments/_head.segment.rsc +1 -1
  407. package/.next/standalone/.next/server/app/workspaces.segments/_index.segment.rsc +2 -2
  408. package/.next/standalone/.next/server/app/workspaces.segments/_tree.segment.rsc +2 -2
  409. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cf5ebdb._.js +3 -0
  410. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0f15af1e._.js +78 -0
  411. package/.next/standalone/.next/server/chunks/[root-of-the-server]__107eab8a._.js +3 -0
  412. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1094360c._.js +1 -1
  413. package/.next/standalone/.next/server/chunks/[root-of-the-server]__118ea5e0._.js +42 -0
  414. package/.next/standalone/.next/server/chunks/[root-of-the-server]__160e7c73._.js +5 -5
  415. package/.next/standalone/.next/server/chunks/[root-of-the-server]__16d4da21._.js +3 -0
  416. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1c542684._.js +3 -0
  417. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1f23bae4._.js +3 -0
  418. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1faefa3e._.js +19 -0
  419. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2145098e._.js +42 -0
  420. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2748c76c._.js +42 -0
  421. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2c08d908._.js +3 -0
  422. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2e29b4bd._.js +3 -0
  423. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__e3ecfd17._.js → [root-of-the-server]__34fd47d2._.js} +3 -3
  424. package/.next/standalone/.next/server/chunks/[root-of-the-server]__366b6cec._.js +78 -0
  425. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4d51508f._.js +3 -0
  426. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5663673e._.js +3 -0
  427. package/.next/standalone/.next/server/chunks/[root-of-the-server]__57e0cc31._.js +133 -0
  428. package/.next/standalone/.next/server/chunks/[root-of-the-server]__57ebbe63._.js +42 -0
  429. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5d3345e4._.js +3 -0
  430. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5ee7aa9d._.js +11 -0
  431. package/.next/standalone/.next/server/chunks/[root-of-the-server]__60caf825._.js +3 -0
  432. package/.next/standalone/.next/server/chunks/[root-of-the-server]__65c9857f._.js +3 -0
  433. package/.next/standalone/.next/server/chunks/[root-of-the-server]__678f6823._.js +3 -0
  434. package/.next/standalone/.next/server/chunks/[root-of-the-server]__685c95d8._.js +3 -0
  435. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__41d4d426._.js → [root-of-the-server]__69568dc2._.js} +1 -1
  436. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6a0bc4ae._.js +3 -0
  437. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6b876561._.js +3 -0
  438. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6e89713c._.js +42 -0
  439. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6f713737._.js +3 -0
  440. package/.next/standalone/.next/server/chunks/[root-of-the-server]__725f10f4._.js +78 -0
  441. package/.next/standalone/.next/server/chunks/[root-of-the-server]__785b0597._.js +38 -0
  442. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7c728bed._.js +3 -0
  443. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7da958b5._.js +42 -0
  444. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7daed406._.js +3 -0
  445. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7f140e4b._.js +78 -0
  446. package/.next/standalone/.next/server/chunks/[root-of-the-server]__80d826f7._.js +3 -0
  447. package/.next/standalone/.next/server/chunks/[root-of-the-server]__83a3c97b._.js +3 -0
  448. package/.next/standalone/.next/server/chunks/[root-of-the-server]__84c15a0e._.js +3 -0
  449. package/.next/standalone/.next/server/chunks/[root-of-the-server]__85c33341._.js +42 -0
  450. package/.next/standalone/.next/server/chunks/[root-of-the-server]__88f3d920._.js +78 -0
  451. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8c916e85._.js +3 -0
  452. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8deb2ae3._.js +3 -0
  453. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8df5a740._.js +3 -0
  454. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8f238bd9._.js +3 -0
  455. package/.next/standalone/.next/server/chunks/[root-of-the-server]__955ab668._.js +3 -0
  456. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9a061e91._.js +42 -0
  457. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a04a87d5._.js +42 -0
  458. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a803051f._.js +42 -0
  459. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ac0a9b09._.js +3 -0
  460. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ac3e37b6._.js +13 -0
  461. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__96685488._.js → [root-of-the-server]__add9e50d._.js} +1 -1
  462. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b57f4274._.js +3 -0
  463. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b84b3426._.js +3 -0
  464. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ba8224a1._.js +42 -0
  465. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bd1c1d0d._.js +42 -0
  466. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c1442c38._.js +42 -0
  467. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c18bdab2._.js +42 -0
  468. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c1efc6a8._.js +3 -0
  469. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c697b87e._.js +3 -0
  470. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c6dc43c6._.js +3 -0
  471. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ccce7f4f._.js +78 -0
  472. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d92f347c._.js +3 -0
  473. package/.next/standalone/.next/server/chunks/[root-of-the-server]__dac9e21e._.js +3 -0
  474. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e3f9ddbc._.js +78 -0
  475. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e66fc05f._.js +3 -0
  476. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e7add82c._.js +3 -0
  477. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fa9a5ec0._.js +42 -0
  478. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ff9f6af0._.js +42 -0
  479. package/.next/standalone/.next/server/chunks/_0142f96b._.js +3 -0
  480. package/.next/standalone/.next/server/chunks/_0ebd30d3._.js +3 -0
  481. package/.next/standalone/.next/server/chunks/_19a59078._.js +3 -0
  482. package/.next/standalone/.next/server/chunks/_1bc02021._.js +11 -0
  483. package/.next/standalone/.next/server/chunks/_1e381a28._.js +3 -0
  484. package/.next/standalone/.next/server/chunks/_2699eda7._.js +3 -0
  485. package/.next/standalone/.next/server/chunks/_2fd02f70._.js +3 -0
  486. package/.next/standalone/.next/server/chunks/_373d522f._.js +3 -0
  487. package/.next/standalone/.next/server/chunks/_43fc1196._.js +3 -0
  488. package/.next/standalone/.next/server/chunks/_48ec4374._.js +3 -0
  489. package/.next/standalone/.next/server/chunks/_563d9ecc._.js +3 -0
  490. package/.next/standalone/.next/server/chunks/_583f9ae2._.js +3 -0
  491. package/.next/standalone/.next/server/chunks/_5a167705._.js +3 -0
  492. package/.next/standalone/.next/server/chunks/_5a8cc3a5._.js +3 -0
  493. package/.next/standalone/.next/server/chunks/_5d894fb4._.js +3 -0
  494. package/.next/standalone/.next/server/chunks/_6bbf8264._.js +3 -0
  495. package/.next/standalone/.next/server/chunks/_6c4bcec1._.js +3 -0
  496. package/.next/standalone/.next/server/chunks/_7a29d111._.js +3 -0
  497. package/.next/standalone/.next/server/chunks/_7d3bab25._.js +3 -0
  498. package/.next/standalone/.next/server/chunks/_7ed4d1a4._.js +3 -0
  499. package/.next/standalone/.next/server/chunks/_8072d20c._.js +3 -0
  500. package/.next/standalone/.next/server/chunks/_81b87c01._.js +3 -0
  501. package/.next/standalone/.next/server/chunks/_881b7b28._.js +3 -0
  502. package/.next/standalone/.next/server/chunks/_902a1d56._.js +3 -0
  503. package/.next/standalone/.next/server/chunks/_96258f1c._.js +3 -0
  504. package/.next/standalone/.next/server/chunks/_96f79f8f._.js +3 -0
  505. package/.next/standalone/.next/server/chunks/_a0379bc2._.js +3 -0
  506. package/.next/standalone/.next/server/chunks/_a0f604e8._.js +3 -0
  507. package/.next/standalone/.next/server/chunks/_a959b121._.js +3 -0
  508. package/.next/standalone/.next/server/chunks/_a975011f._.js +3 -0
  509. package/.next/standalone/.next/server/chunks/_aa956b66._.js +3 -0
  510. package/.next/standalone/.next/server/chunks/_ad7e7d57._.js +3 -0
  511. package/.next/standalone/.next/server/chunks/_aebf2285._.js +3 -0
  512. package/.next/standalone/.next/server/chunks/_b259dda0._.js +36 -0
  513. package/.next/standalone/.next/server/chunks/_b7c60fdc._.js +3 -0
  514. package/.next/standalone/.next/server/chunks/_bd23ddeb._.js +3 -0
  515. package/.next/standalone/.next/server/chunks/_cd02dfbe._.js +3 -0
  516. package/.next/standalone/.next/server/chunks/_d3ecca80._.js +3 -0
  517. package/.next/standalone/.next/server/chunks/_d48dfa43._.js +11 -0
  518. package/.next/standalone/.next/server/chunks/_dba648d6._.js +3 -0
  519. package/.next/standalone/.next/server/chunks/_df42ac6e._.js +3 -0
  520. package/.next/standalone/.next/server/chunks/_dfe0e460._.js +42 -0
  521. package/.next/standalone/.next/server/chunks/_ead2734e._.js +3 -0
  522. package/.next/standalone/.next/server/chunks/_eb4efd0a._.js +3 -0
  523. package/.next/standalone/.next/server/chunks/_eb66a871._.js +3 -0
  524. package/.next/standalone/.next/server/chunks/_ef715efd._.js +3 -0
  525. package/.next/standalone/.next/server/chunks/_f361a656._.js +3 -0
  526. package/.next/standalone/.next/server/chunks/_f54ddbf4._.js +3 -0
  527. package/.next/standalone/.next/server/chunks/_fe2866f2._.js +3 -0
  528. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_4c408326.js +3 -0
  529. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_5603adbc.js +3 -0
  530. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7180f8ad.js +3 -0
  531. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b6be66d9.js +3 -0
  532. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_f7054fd7.js +3 -0
  533. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__66aca5d4._.js +1 -1
  534. package/.next/standalone/.next/server/chunks/ssr/src_app_(desktop)_terminal_page_tsx_de5e8d85._.js +1 -1
  535. package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__90eeddae._.js +1 -1
  536. package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__ca3f649e._.js +1 -1
  537. package/.next/standalone/.next/server/middleware-manifest.json +1 -1
  538. package/.next/standalone/.next/server/pages/404.html +1 -1
  539. package/.next/standalone/.next/server/pages/500.html +2 -2
  540. package/.next/standalone/.next/static/chunks/{732b7502f82e7c37.css → 044decb96250e420.css} +1 -1
  541. package/.next/standalone/.next/static/chunks/{23a9627a951672ed.js → 8b53c673e79b82f1.js} +3 -3
  542. package/.next/standalone/bin/scrub-standalone.js +5 -0
  543. package/.next/standalone/bin/spaces-dev.js +13 -3
  544. package/.next/standalone/bin/spaces.js +25 -4
  545. package/.next/standalone/package-lock.json +2 -2
  546. package/.next/standalone/package.json +3 -2
  547. package/.next/standalone/src/app/(desktop)/terminal/page.tsx +22 -1
  548. package/.next/standalone/src/app/api/network/discovered/route.ts +2 -2
  549. package/.next/standalone/src/app/api/network/nodes/check/route.ts +2 -2
  550. package/.next/standalone/src/app/api/network/nodes/route.ts +2 -2
  551. package/.next/standalone/src/app/api/server-config/route.ts +9 -18
  552. package/.next/standalone/src/lib/admin/api/analytics.ts +1 -8
  553. package/.next/standalone/src/lib/admin/api/users.ts +1 -8
  554. package/.next/standalone/src/lib/admin/api/usersById.ts +1 -8
  555. package/.next/standalone/src/lib/auth/guard.ts +46 -0
  556. package/.next/standalone/src/lib/auth/index.ts +1 -0
  557. package/.next/standalone/src/lib/db/queries.ts +11 -1
  558. package/.next/standalone/src/lib/network/api/discovered.ts +4 -1
  559. package/.next/standalone/src/lib/network/api/identity.ts +6 -0
  560. package/.next/standalone/src/lib/network/api/keys.ts +6 -0
  561. package/.next/standalone/src/lib/network/api/keysById.ts +3 -0
  562. package/.next/standalone/src/lib/network/api/nodes.ts +49 -3
  563. package/.next/standalone/src/lib/network/api/nodesById.ts +5 -0
  564. package/.next/standalone/src/lib/network/api/nodesCheck.ts +4 -1
  565. package/.next/standalone/src/lib/network/api/proxy.ts +5 -0
  566. package/.next/standalone/src/middleware.ts +24 -10
  567. package/.next/standalone/tsconfig.tsbuildinfo +1 -1
  568. package/bin/scrub-standalone.js +5 -0
  569. package/bin/spaces-dev.js +13 -3
  570. package/bin/spaces.js +25 -4
  571. package/package.json +3 -2
  572. package/.next/standalone/.next/server/chunks/[externals]_next_dist_b89b5a39._.js +0 -3
  573. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0153ac12._.js +0 -133
  574. package/.next/standalone/.next/server/chunks/[root-of-the-server]__01a4559c._.js +0 -3
  575. package/.next/standalone/.next/server/chunks/[root-of-the-server]__029ab763._.js +0 -133
  576. package/.next/standalone/.next/server/chunks/[root-of-the-server]__037992dc._.js +0 -141
  577. package/.next/standalone/.next/server/chunks/[root-of-the-server]__06bb204a._.js +0 -133
  578. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fd17dcf._.js +0 -3
  579. package/.next/standalone/.next/server/chunks/[root-of-the-server]__107439ea._.js +0 -133
  580. package/.next/standalone/.next/server/chunks/[root-of-the-server]__12dff461._.js +0 -78
  581. package/.next/standalone/.next/server/chunks/[root-of-the-server]__13eb511a._.js +0 -133
  582. package/.next/standalone/.next/server/chunks/[root-of-the-server]__141c8d34._.js +0 -172
  583. package/.next/standalone/.next/server/chunks/[root-of-the-server]__151efd48._.js +0 -3
  584. package/.next/standalone/.next/server/chunks/[root-of-the-server]__16c141c2._.js +0 -133
  585. package/.next/standalone/.next/server/chunks/[root-of-the-server]__17fee60c._.js +0 -133
  586. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1a525be8._.js +0 -3
  587. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1aea45f5._.js +0 -3
  588. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1cb4ee6b._.js +0 -133
  589. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1e25d3db._.js +0 -133
  590. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1f7566a3._.js +0 -3
  591. package/.next/standalone/.next/server/chunks/[root-of-the-server]__20382bee._.js +0 -133
  592. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2082a624._.js +0 -133
  593. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2091a7ed._.js +0 -42
  594. package/.next/standalone/.next/server/chunks/[root-of-the-server]__24525ae7._.js +0 -133
  595. package/.next/standalone/.next/server/chunks/[root-of-the-server]__284b02fc._.js +0 -42
  596. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2a1a1d0f._.js +0 -42
  597. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2cf17888._.js +0 -42
  598. package/.next/standalone/.next/server/chunks/[root-of-the-server]__323ae5c9._.js +0 -133
  599. package/.next/standalone/.next/server/chunks/[root-of-the-server]__34db98f7._.js +0 -133
  600. package/.next/standalone/.next/server/chunks/[root-of-the-server]__39efba69._.js +0 -3
  601. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3aeedc57._.js +0 -133
  602. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3bbe9d04._.js +0 -78
  603. package/.next/standalone/.next/server/chunks/[root-of-the-server]__3c2324ba._.js +0 -42
  604. package/.next/standalone/.next/server/chunks/[root-of-the-server]__40df3f5d._.js +0 -172
  605. package/.next/standalone/.next/server/chunks/[root-of-the-server]__42a3fe3c._.js +0 -141
  606. package/.next/standalone/.next/server/chunks/[root-of-the-server]__42d5d5be._.js +0 -3
  607. package/.next/standalone/.next/server/chunks/[root-of-the-server]__49821b61._.js +0 -133
  608. package/.next/standalone/.next/server/chunks/[root-of-the-server]__49f58cee._.js +0 -133
  609. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4b9c38dc._.js +0 -141
  610. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4c0ee9c7._.js +0 -133
  611. package/.next/standalone/.next/server/chunks/[root-of-the-server]__530862c6._.js +0 -3
  612. package/.next/standalone/.next/server/chunks/[root-of-the-server]__55504160._.js +0 -133
  613. package/.next/standalone/.next/server/chunks/[root-of-the-server]__599f26fe._.js +0 -42
  614. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5efa69f5._.js +0 -3
  615. package/.next/standalone/.next/server/chunks/[root-of-the-server]__60483ece._.js +0 -3
  616. package/.next/standalone/.next/server/chunks/[root-of-the-server]__61135659._.js +0 -133
  617. package/.next/standalone/.next/server/chunks/[root-of-the-server]__66331034._.js +0 -133
  618. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6887294d._.js +0 -3
  619. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6b9396b4._.js +0 -133
  620. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6cfd7062._.js +0 -166
  621. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6e8d89e2._.js +0 -149
  622. package/.next/standalone/.next/server/chunks/[root-of-the-server]__6f5b3cfe._.js +0 -133
  623. package/.next/standalone/.next/server/chunks/[root-of-the-server]__71d5b087._.js +0 -133
  624. package/.next/standalone/.next/server/chunks/[root-of-the-server]__76434a8e._.js +0 -78
  625. package/.next/standalone/.next/server/chunks/[root-of-the-server]__798bafa7._.js +0 -133
  626. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7b873fdb._.js +0 -78
  627. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7d73f791._.js +0 -133
  628. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7dc76d0e._.js +0 -133
  629. package/.next/standalone/.next/server/chunks/[root-of-the-server]__80a85d1f._.js +0 -133
  630. package/.next/standalone/.next/server/chunks/[root-of-the-server]__81f2a9b7._.js +0 -133
  631. package/.next/standalone/.next/server/chunks/[root-of-the-server]__82f11618._.js +0 -3
  632. package/.next/standalone/.next/server/chunks/[root-of-the-server]__834efefe._.js +0 -42
  633. package/.next/standalone/.next/server/chunks/[root-of-the-server]__853663ea._.js +0 -42
  634. package/.next/standalone/.next/server/chunks/[root-of-the-server]__861f2472._.js +0 -172
  635. package/.next/standalone/.next/server/chunks/[root-of-the-server]__882d0924._.js +0 -133
  636. package/.next/standalone/.next/server/chunks/[root-of-the-server]__88959e7f._.js +0 -133
  637. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8b6c05dc._.js +0 -133
  638. package/.next/standalone/.next/server/chunks/[root-of-the-server]__912a22a4._.js +0 -133
  639. package/.next/standalone/.next/server/chunks/[root-of-the-server]__93d21ad1._.js +0 -42
  640. package/.next/standalone/.next/server/chunks/[root-of-the-server]__94532b09._.js +0 -42
  641. package/.next/standalone/.next/server/chunks/[root-of-the-server]__97e87518._.js +0 -78
  642. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9c13c8d0._.js +0 -78
  643. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9cb13212._.js +0 -133
  644. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9d315363._.js +0 -133
  645. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9ec369db._.js +0 -13
  646. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9f09ade5._.js +0 -133
  647. package/.next/standalone/.next/server/chunks/[root-of-the-server]__9f986ad2._.js +0 -133
  648. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a35913cf._.js +0 -172
  649. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a3641117._.js +0 -78
  650. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a76c75a0._.js +0 -133
  651. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a934c48d._.js +0 -133
  652. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a9431ac6._.js +0 -133
  653. package/.next/standalone/.next/server/chunks/[root-of-the-server]__aa3381a4._.js +0 -133
  654. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ab1cc16c._.js +0 -133
  655. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ab22ca4f._.js +0 -133
  656. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ac20d518._.js +0 -78
  657. package/.next/standalone/.next/server/chunks/[root-of-the-server]__aee3bf91._.js +0 -172
  658. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b1114936._.js +0 -133
  659. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b15ade1f._.js +0 -133
  660. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b2bc7a81._.js +0 -133
  661. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b51446e5._.js +0 -133
  662. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ba344563._.js +0 -133
  663. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c3b2e20c._.js +0 -133
  664. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ca93ae79._.js +0 -42
  665. package/.next/standalone/.next/server/chunks/[root-of-the-server]__cf4a76c0._.js +0 -133
  666. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d20bed9e._.js +0 -78
  667. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d2d59054._.js +0 -133
  668. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d4f1c0c0._.js +0 -38
  669. package/.next/standalone/.next/server/chunks/[root-of-the-server]__d6de7a45._.js +0 -133
  670. package/.next/standalone/.next/server/chunks/[root-of-the-server]__da33b519._.js +0 -133
  671. package/.next/standalone/.next/server/chunks/[root-of-the-server]__dc820e44._.js +0 -133
  672. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e1058e69._.js +0 -133
  673. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e1dfb4d4._.js +0 -3
  674. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e3606cd1._.js +0 -3
  675. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e55b6fc5._.js +0 -133
  676. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e6555dc3._.js +0 -133
  677. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e65c3971._.js +0 -3
  678. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ea9e2d75._.js +0 -133
  679. package/.next/standalone/.next/server/chunks/[root-of-the-server]__ec37cbee._.js +0 -133
  680. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f3c19e4b._.js +0 -42
  681. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f445bd01._.js +0 -3
  682. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f7b0b4da._.js +0 -133
  683. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fb4c016b._.js +0 -133
  684. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fd86530e._.js +0 -78
  685. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fef9b1ec._.js +0 -133
  686. package/.next/standalone/docs/plans/2026-02-24-multi-agent-sessions-design.md +0 -133
  687. package/.next/standalone/docs/plans/2026-02-24-multi-agent-sessions-plan.md +0 -959
  688. package/.next/standalone/docs/plans/2026-03-07-service-command-design.md +0 -146
  689. package/.next/standalone/docs/plans/2026-03-07-service-command-plan.md +0 -254
  690. package/.next/standalone/docs/plans/2026-04-23-consolidate-addons-design.md +0 -212
  691. package/.next/standalone/docs/plans/2026-04-23-consolidate-addons-plan.md +0 -1509
  692. package/.next/standalone/docs/superpowers/plans/2026-03-12-spaces-cortex.md +0 -5270
  693. package/.next/standalone/docs/superpowers/plans/2026-03-13-cortex-wiring.md +0 -1387
  694. package/.next/standalone/docs/superpowers/plans/2026-03-14-cortex-v2-entity-graph.md +0 -1923
  695. package/.next/standalone/docs/superpowers/plans/2026-03-14-cortex-v2-knowledge-evolution.md +0 -1113
  696. package/.next/standalone/docs/superpowers/plans/2026-03-15-cortex-v2-boundary-engine.md +0 -853
  697. package/.next/standalone/docs/superpowers/plans/2026-03-15-cortex-v2-context-engine.md +0 -1274
  698. package/.next/standalone/docs/superpowers/plans/2026-03-15-cortex-v2-signal-ingestion.md +0 -933
  699. package/.next/standalone/docs/superpowers/plans/2026-03-16-cortex-lobes.md +0 -1080
  700. package/.next/standalone/docs/superpowers/plans/2026-03-16-cortex-v2-gravity-system.md +0 -768
  701. package/.next/standalone/docs/superpowers/plans/2026-03-16-cortex-v2-ui.md +0 -1108
  702. package/.next/standalone/docs/superpowers/plans/2026-03-18-cortex-ui-integration.md +0 -1846
  703. package/.next/standalone/docs/superpowers/plans/2026-03-19-vr-phase1-shell.md +0 -1639
  704. package/.next/standalone/docs/superpowers/plans/2026-03-27-dockview-pane-layout.md +0 -98
  705. package/.next/standalone/docs/superpowers/plans/2026-04-21-workspace-todos.md +0 -1097
  706. package/.next/standalone/docs/superpowers/plans/2026-04-22-claude-usage-display.md +0 -749
  707. package/.next/standalone/docs/superpowers/specs/2026-03-11-universe-view-design.md +0 -320
  708. package/.next/standalone/docs/superpowers/specs/2026-03-12-spaces-brain-design.md +0 -720
  709. package/.next/standalone/docs/superpowers/specs/2026-03-13-cortex-wiring-design.md +0 -268
  710. package/.next/standalone/docs/superpowers/specs/2026-03-14-cortex-v2-design.md +0 -623
  711. package/.next/standalone/docs/superpowers/specs/2026-03-16-cortex-lobes-design.md +0 -263
  712. package/.next/standalone/docs/superpowers/specs/2026-03-16-cortex-v2-ui-design.md +0 -240
  713. package/.next/standalone/docs/superpowers/specs/2026-03-16-pane-ux-design.md +0 -77
  714. package/.next/standalone/docs/superpowers/specs/2026-03-18-cortex-ui-integration-design.md +0 -341
  715. package/.next/standalone/docs/superpowers/specs/2026-03-19-vr-phase1-shell-design.md +0 -288
  716. package/.next/standalone/docs/superpowers/specs/2026-03-27-pane-diff-review-and-project-wizard-design.md +0 -322
  717. package/.next/standalone/docs/superpowers/specs/2026-04-21-workspace-todos-design.md +0 -180
  718. package/.next/standalone/docs/superpowers/specs/2026-04-22-claude-usage-display-design.md +0 -183
  719. /package/.next/standalone/.next/static/{Y9EeSGuSi-8qpkLvIBy0a → mimGB6C_ZmJMiVnOe9tqZ}/_buildManifest.js +0 -0
  720. /package/.next/standalone/.next/static/{Y9EeSGuSi-8qpkLvIBy0a → mimGB6C_ZmJMiVnOe9tqZ}/_clientMiddlewareManifest.json +0 -0
  721. /package/.next/standalone/.next/static/{Y9EeSGuSi-8qpkLvIBy0a → mimGB6C_ZmJMiVnOe9tqZ}/_ssgManifest.js +0 -0
@@ -0,0 +1,78 @@
1
+ module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var s=Object.defineProperty,n=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>E,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>c,stringifyCookie:()=>u};for(var p in l)s(o,p,{get:l[p],enumerable:!0});function u(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),s=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?s:`${s}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[s,n]=[r.slice(0,e),r.slice(e+1)];try{t.set(s,decodeURIComponent(null!=n?n:"true"))}catch{}}return t}function c(e){if(!e)return;let[[t,r],...s]=d(e),{domain:n,expires:a,httponly:i,maxage:o,path:l,samesite:p,secure:u,partitioned:c,priority:E}=Object.fromEntries(s.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,f,T={name:t,value:decodeURIComponent(r),domain:n,...a&&{expires:new Date(a)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...p&&{sameSite:m.includes(g=(g=p).toLowerCase())?g:void 0},...u&&{secure:!0},...E&&{priority:h.includes(f=(f=E).toLowerCase())?f:void 0},...c&&{partitioned:!0}};let e={};for(let t in T)T[t]&&(e[t]=T[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of a(t))i.call(e,r)||void 0===r||s(e,r,{get:()=>t[r],enumerable:!(o=n(t,r))||o.enumerable});return e})(s({},"__esModule",{value:!0}),o);var m=["strict","lax","none"],h=["low","medium","high"],E=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let s="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===s).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,s=this._parsed;return s.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(s).map(([e,t])=>u(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>u(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,s;this._parsed=new Map,this._headers=e;const n=null!=(s=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?s:[];for(const e of Array.isArray(n)?n:function(e){if(!e)return[];var t,r,s,n,a,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,a=!1;l();)if(","===(r=e.charAt(o))){for(s=o,o+=1,l(),n=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(a=!0,o=n,i.push(e.substring(t,s)),t=o):o=s+1}else o+=1;(!a||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(n)){const t=c(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let s="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===s)}has(e){return this._parsed.has(e)}set(...e){let[t,r,s]=1===e.length?[e[0].name,e[0].value,e[0]]:e,n=this._parsed;return n.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...s})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=u(r);t.append("set-cookie",e)}}(n,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(u).join("; ")}}},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},299357,e=>{"use strict";let t="1"===process.env.SPACES_MULTIUSER||"1"===process.env.NEXT_PUBLIC_MULTIUSER,r=!t;function s(){let s="0.0.0";try{s=e.r(804730).version}catch{}return{tier:t?"team":"community",version:s,hasAuth:t,hasAdmin:t,hasCollaboration:t,hasNetwork:!0,hasMultiuser:t,hasCortex:"1"===process.env.SPACES_HAS_CORTEX,isDesktop:r,basePath:""}}e.s(["IS_MULTIUSER",0,t,"getTierFlags",()=>s])},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.10.0-beta.4",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js","spaces-msg":"./bin/spaces-msg.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",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",prepack:"node bin/scrub-standalone.js",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:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@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","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0",otpauth:"^9.0.0",qrcode:"^1.5.0","react-resizable-panels":"^4.7.6",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"}})},908146,e=>{"use strict";var t=e.i(89171),r=e.i(299357);let s=["127.","::1","::ffff:127."];function n(e){let n;return r.IS_MULTIUSER?"admin"!==e.headers.get("x-auth-role")?t.NextResponse.json({error:"Admin required"},{status:403}):null:(n=e.headers.get("x-spaces-remote-ip")||"",s.some(e=>n.startsWith(e)))?null:t.NextResponse.json({error:"Management endpoints are restricted to localhost in desktop mode. Run in multiuser mode (SPACES_MULTIUSER=1) for remote admin."},{status:403})}e.s(["requireAdmin",()=>n])},362562,(e,t,r)=>{t.exports=e.x("module",()=>require("module"))},708784,e=>{"use strict";var t=e.i(362562),r=e.i(254799),s=e.i(814747),n=e.i(522734),a=e.i(446786);let i=(0,t.createRequire)("/ROOT/src/lib/admin/db.ts")("better-sqlite3"),o=s.default.join(a.default.homedir(),".spaces","admin.db"),l=null;function p(){if(l)return l;let e=s.default.dirname(o);n.default.existsSync(e)||n.default.mkdirSync(e,{recursive:!0});let t=new i(o);return t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL"),t.pragma("foreign_keys = ON"),t.exec(`
2
+ CREATE TABLE IF NOT EXISTS users (
3
+ id TEXT PRIMARY KEY,
4
+ username TEXT NOT NULL UNIQUE,
5
+ password_hash TEXT NOT NULL,
6
+ display_name TEXT NOT NULL DEFAULT '',
7
+ shell_user TEXT NOT NULL,
8
+ role TEXT NOT NULL DEFAULT 'user',
9
+ totp_secret TEXT,
10
+ totp_enabled INTEGER DEFAULT 0,
11
+ created TEXT DEFAULT (datetime('now'))
12
+ );
13
+
14
+ CREATE TABLE IF NOT EXISTS login_events (
15
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
16
+ username TEXT NOT NULL,
17
+ timestamp TEXT NOT NULL DEFAULT (datetime('now')),
18
+ ip_address TEXT,
19
+ user_agent TEXT
20
+ );
21
+
22
+ CREATE TABLE IF NOT EXISTS terminal_sessions (
23
+ id TEXT PRIMARY KEY,
24
+ username TEXT NOT NULL,
25
+ agent_type TEXT NOT NULL DEFAULT 'shell',
26
+ started_at TEXT NOT NULL DEFAULT (datetime('now')),
27
+ ended_at TEXT,
28
+ duration_seconds INTEGER
29
+ );
30
+
31
+ CREATE INDEX IF NOT EXISTS idx_login_events_username ON login_events(username);
32
+ CREATE INDEX IF NOT EXISTS idx_login_events_timestamp ON login_events(timestamp);
33
+ CREATE INDEX IF NOT EXISTS idx_terminal_sessions_username ON terminal_sessions(username);
34
+ CREATE INDEX IF NOT EXISTS idx_terminal_sessions_started_at ON terminal_sessions(started_at);
35
+ `),l=t,t}function u(e){let t=r.default.randomBytes(16).toString("hex"),s=r.default.scryptSync(e,t,64).toString("hex");return`${t}:${s}`}function d(e,t){let[s,n]=t.split(":");if(!s||!n)return!1;let a=r.default.scryptSync(e,s,64).toString("hex");return r.default.timingSafeEqual(Buffer.from(n,"hex"),Buffer.from(a,"hex"))}function c(e){let t=p(),s=r.default.randomUUID(),n=u(e.password);return t.prepare(`
36
+ INSERT INTO users (id, username, password_hash, display_name, shell_user, role)
37
+ VALUES (?, ?, ?, ?, ?, ?)
38
+ `).run(s,e.username,n,e.displayName,e.shellUser,e.role||"user"),m(e.username)}function m(e){return p().prepare("SELECT * FROM users WHERE username = ?").get(e)}function h(e){return p().prepare("SELECT * FROM users WHERE id = ?").get(e)}function E(){return p().prepare("SELECT * FROM users ORDER BY created").all()}function g(e,t){let r=p(),s=[],n=[];void 0!==t.displayName&&(s.push("display_name = ?"),n.push(t.displayName)),void 0!==t.shellUser&&(s.push("shell_user = ?"),n.push(t.shellUser)),void 0!==t.role&&(s.push("role = ?"),n.push(t.role)),void 0!==t.password&&(s.push("password_hash = ?"),n.push(u(t.password))),void 0!==t.totpSecret&&(s.push("totp_secret = ?"),n.push(t.totpSecret)),void 0!==t.totpEnabled&&(s.push("totp_enabled = ?"),n.push(+!!t.totpEnabled)),0!==s.length&&(n.push(e),r.prepare(`UPDATE users SET ${s.join(", ")} WHERE id = ?`).run(...n),T.clear())}function f(e){p().prepare("DELETE FROM users WHERE id = ?").run(e),T.clear()}let T=new Map;function _(e){let t=T.get(e);if(t&&t.expires>Date.now())return t.shellUser;let r=m(e),s=r?.shell_user||e;return T.set(e,{shellUser:s,expires:Date.now()+6e4}),s}function x(e,t,r){p().prepare("INSERT INTO login_events (username, ip_address, user_agent) VALUES (?, ?, ?)").run(e,t||null,r||null)}function y(e){return p().prepare(`
39
+ SELECT username, timestamp, ip_address, user_agent
40
+ FROM login_events
41
+ WHERE timestamp >= datetime('now', ?)
42
+ ORDER BY timestamp DESC
43
+ `).all(`-${e} days`)}function S(e){return p().prepare(`
44
+ SELECT id, username, agent_type, started_at, ended_at, duration_seconds
45
+ FROM terminal_sessions
46
+ WHERE started_at >= datetime('now', ?)
47
+ ORDER BY started_at DESC
48
+ `).all(`-${e} days`)}function v(){return p().prepare("SELECT COUNT(*) as count FROM terminal_sessions WHERE ended_at IS NULL").get().count}function R(e){return p().prepare(`
49
+ SELECT date(timestamp) as date, COUNT(*) as count
50
+ FROM login_events
51
+ WHERE timestamp >= datetime('now', ?)
52
+ GROUP BY date(timestamp)
53
+ ORDER BY date
54
+ `).all(`-${e} days`)}function O(e){return p().prepare(`
55
+ SELECT date(started_at) as date,
56
+ CAST(SUM(COALESCE(duration_seconds, 0)) / 60.0 AS REAL) as minutes
57
+ FROM terminal_sessions
58
+ WHERE started_at >= datetime('now', ?)
59
+ GROUP BY date(started_at)
60
+ ORDER BY date
61
+ `).all(`-${e} days`)}function A(e){return p().prepare(`
62
+ SELECT
63
+ ts.username,
64
+ COUNT(ts.id) as session_count,
65
+ CAST(SUM(COALESCE(ts.duration_seconds, 0)) / 60.0 AS REAL) as total_minutes,
66
+ MAX(le.last_login) as last_login
67
+ FROM terminal_sessions ts
68
+ LEFT JOIN (
69
+ SELECT username, MAX(timestamp) as last_login
70
+ FROM login_events
71
+ GROUP BY username
72
+ ) le ON ts.username = le.username
73
+ WHERE ts.started_at >= datetime('now', ?)
74
+ GROUP BY ts.username
75
+ ORDER BY total_minutes DESC
76
+ `).all(`-${e} days`)}e.s(["createUser",()=>c,"deleteUser",()=>f,"getActiveSessionCount",()=>v,"getDailyLoginCounts",()=>R,"getDailySessionMinutes",()=>O,"getLoginEvents",()=>y,"getTerminalSessions",()=>S,"getUser",()=>m,"getUserById",()=>h,"getUserSessionSummary",()=>A,"listUsers",()=>E,"recordLogin",()=>x,"resolveShellUser",()=>_,"updateUser",()=>g,"verifyPassword",()=>d])}];
77
+
78
+ //# sourceMappingURL=%5Broot-of-the-server%5D__7f140e4b._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},184085,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),f=e.i(10372),m=e.i(193695);e.i(52474);var v=e.i(600220),w=e.i(233405),E=e.i(708784),y=e.i(908146);function g(e){return{id:e.id,username:e.username,displayName:e.display_name,shellUser:e.shell_user,role:e.role,totpEnabled:!!e.totp_enabled,created:e.created}}async function C(e,{params:t}){let r=(0,y.requireAdmin)(e);if(r)return r;let{id:n}=await t,a=(0,E.getUserById)(n);return a?Response.json(g(a)):Response.json({error:"User not found"},{status:404})}async function x(e,{params:t}){let r=(0,y.requireAdmin)(e);if(r)return r;let{id:n}=await t;if(!(0,E.getUserById)(n))return Response.json({error:"User not found"},{status:404});let a=await e.json(),s={};if(void 0!==a.displayName&&(s.displayName=a.displayName),void 0!==a.shellUser){try{(0,w.execFileSync)("id",[a.shellUser],{stdio:"pipe"})}catch{return Response.json({error:`OS user "${a.shellUser}" does not exist. Create it first with: sudo useradd -m ${a.shellUser}`},{status:400})}s.shellUser=a.shellUser}if(void 0!==a.role&&(s.role=a.role),void 0!==a.password){if(a.password.length<8)return Response.json({error:"Password must be at least 8 characters"},{status:400});s.password=a.password}a.totpReset&&(s.totpSecret=null,s.totpEnabled=!1),(0,E.updateUser)(n,s);let o=(0,E.getUserById)(n);return Response.json(g(o))}async function U(t,{params:r}){let n=(0,y.requireAdmin)(t);if(n)return n;let{id:a}=await r,s=(0,E.getUserById)(a);if(!s)return Response.json({error:"User not found"},{status:404});let o=t.headers.get("x-auth-user")||e.r(446786).userInfo().username;return s.username===o?Response.json({error:"Cannot delete your own account"},{status:400}):((0,E.deleteUser)(a),Response.json({ok:!0}))}async function A(e,t){return C(e,t)}async function N(e,t){return x(e,t)}async function T(e,t){return U(e,t)}e.s(["DELETE",()=>T,"GET",()=>A,"PUT",()=>N],786264);var b=e.i(786264);let P=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/admin/users/[id]/route",pathname:"/api/admin/users/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/admin/users/[id]/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:_,workUnitAsyncStorage:O,serverHooks:S}=P;function I(){return(0,n.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:O})}async function q(e,t,n){P.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/admin/users/[id]/route";w=w.replace(/\/index$/,"")||"/";let E=await P.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:y,params:g,nextConfig:C,parsedUrl:x,isDraftMode:U,prerenderManifest:A,routerServerContext:N,isOnDemandRevalidate:T,revalidateOnlyGenerated:b,resolvedPathname:_,clientReferenceManifest:O,serverActionsManifest:S}=E,I=(0,i.normalizeAppPath)(w),q=!!(A.dynamicRoutes[I]||A.routes[_]),j=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,x,!1):t.end("This page could not be found"),null);if(q&&!U){let e=!!A.routes[_],t=A.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(C.experimental.adapterPath)return await j();throw new m.NoFallbackError}}let H=null;!q||P.isDev||U||(H="/index"===(H=_)?"/":H);let k=!0===P.isDev||!q,D=q&&!k;S&&O&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:O,serverActionsManifest:S});let M=e.method||"GET",$=(0,s.getTracer)(),B=$.getActiveScopeSpan(),F={params:g,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:k,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:C.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>P.onRequestError(e,t,n,a,N)},sharedContext:{buildId:y}},K=new l.NodeNextRequest(e),L=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let o=async e=>P.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${w}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&T&&b&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=F.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(K,L,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await P.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,N),t}},d=await P.handleResponse({req:e,nextConfig:C,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:b,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:i});if(!q)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),U&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&q||m.delete(f.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,R.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(K,L,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};B?await l(B):await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await P.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:T})},!1,N),q)throw t;return await (0,p.sendResponse)(K,L,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>I,"routeModule",()=>P,"serverHooks",()=>S,"workAsyncStorage",()=>_,"workUnitAsyncStorage",()=>O],184085)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__80d826f7._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[227577,e=>{"use strict";e.i(768724);var t=e.i(793765),r=e.i(908146),n=e.i(691180),a=e.i(279174);e.s(["clearSessionCookie",()=>n.clearSessionCookie,"getAuthRole",()=>t.getAuthRole,"getAuthUser",()=>t.getAuthUser,"getCurrentUser",()=>t.getCurrentUser,"getSessionSecretHex",()=>n.getSessionSecretHex,"issueSessionToken",()=>n.issueSessionToken,"requireAdmin",()=>r.requireAdmin,"setSessionCookie",()=>n.setSessionCookie,"totp",0,a,"verifySessionToken",()=>n.verifySessionToken,"withUser",()=>t.withUser])},792687,e=>{"use strict";var t=e.i(362562),r=e.i(814747);let n=null,a=!1;function s(){if(!a){let s=[r.default.join(process.cwd(),"package.json")];for(let e of(process.env.NODE_PATH||"").split(r.default.delimiter))e&&s.push(r.default.join(e,"_anchor.js"));for(let e of s)try{n=(0,t.createRequire)(e)("@spaces/cortex");break}catch{}if(a=!0,n&&!n.hasHostAdapter())try{let t=e.r(227577),r=e.r(798003),a=e.r(507304),s="1"===process.env.SPACES_HAS_CORTEX;n.setHostAdapter({getAuthUser:e=>t.getAuthUser(e),withUser:(e,r)=>t.withUser(e,r),getCurrentUser:()=>t.getCurrentUser(),getUserPaths:e=>r.getUserPaths(e),getDb:()=>a.getDb(),hasCortex:()=>s,isFederation:()=>!0})}catch{}}return n}function o(){return s()}async function i(){return s()?.getCortex()??null}function l(){return s()?.isCortexAvailable()??!1}function u(){c=null,s()?.resetCortex()}let c=null;async function d(){if(c)return c;let e=s();if(!e)return null;let t=await e.getCortex();if(!t)return null;try{let{createClient:r,EmbeddedConnection:n,RemoteConnection:a,loadConfig:s}=e,o=[new n({name:"local",domains:t.domainRegistry.list(),writable:!0,default:!0,primary:!0,engine:t})];try{for(let e of s().connections)"remote"===e.type&&o.push(new a(e))}catch{}return c=r({connections:o})}catch(e){return console.warn("[cortex] Client library not available, multi-server disabled:",e),null}}e.s(["getCortex",()=>i,"getCortexAddon",()=>o,"getCortexClient",()=>d,"isCortexAvailable",()=>l,"resetCortex",()=>u])},341381,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),g=e.i(626937),f=e.i(10372),R=e.i(193695);e.i(52474);var v=e.i(600220),C=e.i(89171);e.i(768724);var x=e.i(793765),w=e.i(798003),A=e.i(792687);let m={distillation:{input_tokens:0,output_tokens:0,calls:0,estimated_cost_usd:0,last_updated:""},by_model:{}};var E=e.i(814747);async function y(e){let t=(0,x.getAuthUser)(e);return(0,x.withUser)(t,()=>{var e;let{spacesDir:r}=(0,w.getUserPaths)(t),n=(e=E.default.join(r,"cortex","usage.json"),(0,A.getCortexAddon)()?.readUsage?.(e)??m);return C.NextResponse.json(n)})}async function U(t){let r=(0,x.getAuthUser)(t);return(0,x.withUser)(r,async()=>{let{spacesDir:t}=(0,w.getUserPaths)(r),n=E.default.join(t,"cortex","usage.json");try{let t=await e.A(323970);t.existsSync(n)&&t.unlinkSync(n)}catch{}return C.NextResponse.json({success:!0})})}e.s(["DELETE",()=>U,"GET",()=>y,"dynamic",0,"force-dynamic"],680191);var S=e.i(680191);let T=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cortex/usage/route",pathname:"/api/cortex/usage",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cortex/usage/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:b,workUnitAsyncStorage:P,serverHooks:_}=T;function k(){return(0,n.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:P})}async function N(e,t,n){T.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let C="/api/cortex/usage/route";C=C.replace(/\/index$/,"")||"/";let x=await T.prepare(e,t,{srcPage:C,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:w,params:A,nextConfig:m,parsedUrl:E,isDraftMode:y,prerenderManifest:U,routerServerContext:S,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,resolvedPathname:_,clientReferenceManifest:k,serverActionsManifest:N}=x,H=(0,i.normalizeAppPath)(C),O=!!(U.dynamicRoutes[H]||U.routes[_]),j=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,E,!1):t.end("This page could not be found"),null);if(O&&!y){let e=!!U.routes[_],t=U.dynamicRoutes[H];if(t&&!1===t.fallback&&!e){if(m.experimental.adapterPath)return await j();throw new R.NoFallbackError}}let q=null;!O||T.isDev||y||(q="/index"===(q=_)?"/":q);let D=!0===T.isDev||!O,I=O&&!D;N&&k&&(0,o.setManifestsSingleton)({page:C,clientReferenceManifest:k,serverActionsManifest:N});let M=e.method||"GET",F=(0,s.getTracer)(),$=F.getActiveScopeSpan(),K={params:A,prerenderManifest:U,renderOpts:{experimental:{authInterrupts:!!m.experimental.authInterrupts},cacheComponents:!!m.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:m.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>T.onRequestError(e,t,n,a,S)},sharedContext:{buildId:w}},L=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(L,(0,u.signalFromNodeResponse)(t));try{let o=async e=>T.handle(G,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${C}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&b&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(a);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=K.renderOpts.collectedTags;if(!O)return await (0,p.sendResponse)(L,B,s,K.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await T.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:I,isOnDemandRevalidate:b})},!1,S),t}},c=await T.handleResponse({req:e,nextConfig:m,cacheKey:q,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:U,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:i});if(!O)return null;if((null==c||null==(s=c.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",b?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),y&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let R=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return i&&O||R.delete(f.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||R.get("Cache-Control")||R.set("Cache-Control",(0,g.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(L,B,new Response(c.value.body,{headers:R,status:c.value.status||200})),null};$?await l($):await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${C}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof R.NoFallbackError||await T.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:I,isOnDemandRevalidate:b})},!1,S),O)throw t;return await (0,p.sendResponse)(L,B,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>k,"routeModule",()=>T,"serverHooks",()=>_,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>P],341381)},323970,e=>{e.v(e=>Promise.resolve().then(()=>e(522734)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__83a3c97b._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[233405,(e,s,n)=>{s.exports=e.x("child_process",()=>require("child_process"))},451200,(e,s,n)=>{"use strict";let t=null;s.exports.init=function(e){t=e},s.exports.getDeps=function(){return t}},365836,e=>{"use strict";var s=e.i(507304),n=e.i(460569);e.i(768724);var t=e.i(793765),i=e.i(451200),r=e.i(618393);let o=new Set,c=new Set,l=!1,a=0;async function d(){let d=(0,t.getCurrentUser)();if(o.has(d)){let e=Date.now();e-a>3e5&&(a=e,(0,n.buildFtsIndex)().catch(()=>{}));return}if((0,s.getDb)(),o.add(d),!l){l=!0;let{sseManager:n}=await e.A(972354);i.init({getDb:s.getDb,sseManager:n}),"function"==typeof r.runMigrations&&r.runMigrations((0,s.getDb)())}if(!c.has(d)){c.add(d);try{let e=await (0,n.fullSync)();console.log(`[spaces:${d}] Synced ${e.projects} projects, ${e.sessions} sessions`);let s=await (0,n.enrichMissingSessions)();s>0&&console.log(`[spaces:${d}] Enriched ${s} sessions from JSONL`),a=Date.now(),(0,n.buildFtsIndex)((e,s)=>{e>0&&e%10==0&&console.log(`[spaces:${d}] FTS indexing: ${e}/${s}`)}).then(e=>{e>0&&console.log(`[spaces:${d}] FTS indexed ${e} sessions`)}).catch(e=>{console.error(`[spaces:${d}] FTS indexing error:`,e)})}catch(e){console.error(`[spaces:${d}] Sync error:`,e)}finally{c.delete(d)}}}e.s(["ensureInitialized",()=>d])},972354,e=>{e.v(s=>Promise.all(["server/chunks/src_lib_events_sse_ts_1ad73980._.js"].map(s=>e.l(s))).then(()=>s(920776)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__84c15a0e._.js.map
@@ -0,0 +1,42 @@
1
+ module.exports=[590231,e=>{"use strict";var t=e.i(298564),r=e.i(254799),s=e.i(522734),n=e.i(446786),a=e.i(814747);let i=a.default.join(n.default.homedir(),".spaces","terminal_secret"),o=null;async function u(e){let u,d,l,c,p;try{if(u=(0,t.requireNetworkAuth)(e),"terminal"!==u.permissions&&"admin"!==u.permissions)return Response.json({error:`API key has "${u.permissions}" permission — "terminal" or "admin" is required.`},{status:403})}catch(e){if(e instanceof t.NetworkAuthError)return Response.json({error:e.message},{status:401});throw e}let f=(l={sub:u.username||n.default.userInfo().username,exp:Math.floor(Date.now()/1e3)+28800},c=Buffer.from(JSON.stringify(l)).toString("base64url"),p=r.default.createHmac("sha256",function(){if(o)return o;if(s.default.existsSync(i))return o=Buffer.from(s.default.readFileSync(i,"utf-8").trim(),"hex");let e=r.default.randomBytes(32),t=a.default.dirname(i);return s.default.existsSync(t)||s.default.mkdirSync(t,{recursive:!0}),s.default.writeFileSync(i,e.toString("hex"),{mode:384}),o=e,e}()).update(c).digest("base64url"),`${c}.${p}`),m=e.headers.get("host")||"localhost:3457",h="https"===e.headers.get("x-forwarded-proto")?"wss":"ws",y=process.env.NEXT_PUBLIC_WS_PATH,N=process.env.SPACES_WS_PORT;return d=y?`${h}://${m.split(":")[0]}${y}`:N?`ws://${m.split(":")[0]}:${N}`:`${h}://${m}/ws`,Response.json({token:f,wsUrl:d})}e.s(["POST",()=>u])},866910,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146);async function n(e){let n=(0,s.requireAdmin)(e);if(n)return n;let a=(0,r.listNodes)();return t.NextResponse.json(a)}async function a(e){let n,a=(0,s.requireAdmin)(e);if(a)return a;let{url:i,apiKey:o,name:u}=await e.json();if(!i||!o)return t.NextResponse.json({error:"URL and API key are required"},{status:400});if("string"!=typeof i)return t.NextResponse.json({error:"URL must be a string"},{status:400});let d=i.replace(/\/+$/,""),l=function(e){let t;try{t=new URL(e)}catch{return"URL is not parseable"}if("http:"!==t.protocol&&"https:"!==t.protocol)return"URL must be http or https";let r=t.hostname.toLowerCase();if(["localhost","0.0.0.0"].includes(r))return"Loopback hostnames are not allowed";let s=r.match(/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/);if(s){let[e,t]=[parseInt(s[1],10),parseInt(s[2],10)];if(127===e)return"Loopback IPs are not allowed";if(10===e||192===e&&168===t||172===e&&t>=16&&t<=31)return"Private IPs are not allowed";if(169===e&&254===t)return"Link-local IPs are not allowed";if(0===e)return"Reserved IPs are not allowed"}return r.startsWith("[::1")||"::1"===r?"Loopback IPs are not allowed":r.startsWith("[fe80")||r.startsWith("fe80:")?"Link-local IPs are not allowed":r.startsWith("[fc")||r.startsWith("[fd")||r.startsWith("fc")||r.startsWith("fd")?"Private IPs are not allowed":null}(d);if(l)return t.NextResponse.json({error:l},{status:400});try{let e=`${d}/api/network/handshake/`,r=await fetch(e,{headers:{Authorization:`Bearer ${o}`},signal:AbortSignal.timeout(1e4)});if(!r.ok)return t.NextResponse.json({error:`Handshake failed with status ${r.status}`},{status:400});n=await r.json()}catch(e){return t.NextResponse.json({error:`Cannot reach node: ${e.message}`},{status:400})}(0,r.addNode)({id:n.nodeId,name:u||n.nodeName,url:d,apiKey:o}),(0,r.updateNodeStatus)(n.nodeId,"online",{sessionCount:n.sessionCount,version:n.version,name:u||n.nodeName});let c=(0,r.getNode)(n.nodeId);return t.NextResponse.json(c,{status:201})}e.s(["GET",()=>n,"POST",()=>a])},973436,526804,e=>{"use strict";e.i(866910),e.i(94668),e.i(585550),e.i(288938),e.i(637943),e.i(936896),e.i(70832),e.i(222853),e.i(321185),e.i(89171),e.i(298564),e.i(590231),e.i(618765),e.i(525997);var t=e.i(139195);class r{baseUrl;apiKey;nodeId;constructor(e,t){this.baseUrl=e.url.replace(/\/+$/,""),this.apiKey=t,this.nodeId=e.id}async request(e,t){let r=process.env.NODE_TLS_REJECT_UNAUTHORIZED;this.baseUrl.startsWith("https")&&(process.env.NODE_TLS_REJECT_UNAUTHORIZED="0");try{let r=await fetch(`${this.baseUrl}${e}`,{...t,headers:{Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json",...t?.headers},redirect:"follow",signal:AbortSignal.timeout(1e4)});if(!r.ok){let e=await r.text();return{ok:!1,error:`HTTP ${r.status}: ${e}`,nodeId:this.nodeId}}let s=await r.json();return{ok:!0,data:s}}catch(e){return{ok:!1,error:e.message||"Request failed",nodeId:this.nodeId}}finally{void 0===r?delete process.env.NODE_TLS_REJECT_UNAUTHORIZED:process.env.NODE_TLS_REJECT_UNAUTHORIZED=r}}async handshake(){return this.request("/api/network/handshake")}async health(){return this.request("/api/network/health")}async getSessions(e){let t=new URLSearchParams(e||{});return this.request(`/api/network/sessions?${t}`)}async getSession(e){return this.request(`/api/network/sessions/${e}`)}async getMessages(e,t=0,r=50){return this.request(`/api/network/sessions/${e}/messages?offset=${t}&limit=${r}`)}async search(e,t){let r=new URLSearchParams({q:e,...t});return this.request(`/api/network/search?${r}`)}async getProjects(){return this.request("/api/network/projects")}async getWorkspaces(){return this.request("/api/network/workspaces/")}async getWorkspacePanes(e){return this.request(`/api/network/workspaces/${e}/`)}async getTerminalToken(){return this.request("/api/network/terminal/token",{method:"POST"})}}async function s(e,s){let n=(0,t.listNodes)().filter(e=>"offline"!==e.status),a=[],i=e.sessions.map(e=>({...e})),o=e.total;return await Promise.allSettled(n.map(async e=>{let n=(0,t.getNodeApiKey)(e.id);if(!n)return void a.push({nodeId:e.id,nodeName:e.name,error:"No API key"});let u=new r(e,n),d=await u.getSessions(s);if(d.ok){for(let t of d.data.sessions)i.push({...t,nodeId:e.id,nodeName:e.name});o+=d.data.total}else a.push({nodeId:e.id,nodeName:e.name,error:d.error})})),i.sort((e,t)=>new Date(t.modified).getTime()-new Date(e.modified).getTime()),{sessions:i,total:o,errors:a}}async function n(e,s,n){let a=(0,t.listNodes)().filter(e=>"offline"!==e.status),i=[],o=e.map(e=>({...e}));return await Promise.allSettled(a.map(async e=>{let a=(0,t.getNodeApiKey)(e.id);if(!a)return void i.push({nodeId:e.id,nodeName:e.name,error:"No API key"});let u=new r(e,a),d=await u.search(s,n);if(d.ok)for(let t of d.data.results)o.push({...t,nodeId:e.id,nodeName:e.name});else i.push({nodeId:e.id,nodeName:e.name,error:d.error})})),o.sort((e,t)=>e.rank-t.rank),{results:o,errors:i}}async function a(){let e=(0,t.listNodes)().filter(e=>"offline"!==e.status),s=[],n=[];return await Promise.allSettled(e.map(async e=>{let a=(0,t.getNodeApiKey)(e.id);if(!a)return void s.push({nodeId:e.id,nodeName:e.name,error:"No API key"});let i=new r(e,a),o=await i.getWorkspaces();if(o.ok){let t=o.data.workspaces.map(t=>({...t,nodeId:e.id,nodeName:e.name}));n.push({nodeId:e.id,nodeName:e.name,workspaces:t})}else s.push({nodeId:e.id,nodeName:e.name,error:o.error})})),{nodes:n,errors:s}}e.s(["aggregateSearch",()=>n,"aggregateSessions",()=>s,"aggregateWorkspaces",()=>a],526804),e.s([],973436)},585550,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146);async function n(e){let n=(0,s.requireAdmin)(e);if(n)return n;let a=(0,r.listNodes)(),i=[];return await Promise.allSettled(a.map(async e=>{let t=(0,r.getNodeApiKey)(e.id);if(!t){(0,r.updateNodeStatus)(e.id,"error",{lastError:"No API key"}),i.push({nodeId:e.id,status:"error",error:"No API key"});return}try{let s=await fetch(`${e.url}/api/network/health`,{headers:{Authorization:`Bearer ${t}`},signal:AbortSignal.timeout(1e4)});if(s.ok){let n,a=await s.json();try{let r=await fetch(`${e.url}/api/network/handshake`,{headers:{Authorization:`Bearer ${t}`},signal:AbortSignal.timeout(1e4)});r.ok&&(n=(await r.json()).sessionCount)}catch{}(0,r.updateNodeStatus)(e.id,"online",{version:a.version,lastError:null,sessionCount:n}),i.push({nodeId:e.id,status:"online"})}else{let t=await s.text();(0,r.updateNodeStatus)(e.id,"error",{lastError:`HTTP ${s.status}: ${t}`}),i.push({nodeId:e.id,status:"error",error:`HTTP ${s.status}`})}}catch(t){(0,r.updateNodeStatus)(e.id,"offline",{lastError:t.message}),i.push({nodeId:e.id,status:"offline",error:t.message})}})),t.NextResponse.json({results:i})}e.s(["POST",()=>n])},321185,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146);async function n(e,{params:n}){let a=(0,s.requireAdmin)(e);if(a)return a;let{nodeId:i,path:o}=await n,u=(0,r.getNode)(i);if(!u)return t.NextResponse.json({error:"Node not found"},{status:404});let d=(0,r.getNodeApiKey)(i);if(!d)return t.NextResponse.json({error:"No API key for node"},{status:500});let l=`/api/network/${o.join("/")}`,c=e.nextUrl.search,p=`${u.url}${l}${c}`;try{let e=await fetch(p,{headers:{Authorization:`Bearer ${d}`},signal:AbortSignal.timeout(15e3)}),r=await e.json();return t.NextResponse.json(r,{status:e.status})}catch(e){return t.NextResponse.json({error:`Proxy error: ${e.message}`},{status:502})}}async function a(e,{params:n}){let a=(0,s.requireAdmin)(e);if(a)return a;let{nodeId:i,path:o}=await n,u=(0,r.getNode)(i);if(!u)return t.NextResponse.json({error:"Node not found"},{status:404});let d=(0,r.getNodeApiKey)(i);if(!d)return t.NextResponse.json({error:"No API key for node"},{status:500});let l=`/api/network/${o.join("/")}`,c=e.nextUrl.search,p=`${u.url}${l}${c}`;try{let r=await e.text(),s=await fetch(p,{method:"POST",headers:{Authorization:`Bearer ${d}`,"Content-Type":"application/json"},body:r,signal:AbortSignal.timeout(15e3)}),n=await s.json();return t.NextResponse.json(n,{status:s.status})}catch(e){return t.NextResponse.json({error:`Proxy error: ${e.message}`},{status:502})}}e.s(["GET",()=>n,"POST",()=>a])},94668,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146);async function n(e,{params:n}){let a=(0,s.requireAdmin)(e);if(a)return a;let{id:i}=await n,o=await e.json();if(!(0,r.getNode)(i))return t.NextResponse.json({error:"Node not found"},{status:404});(0,r.updateNode)(i,o);let u=(0,r.getNode)(i);return t.NextResponse.json(u)}async function a(e,{params:n}){let a=(0,s.requireAdmin)(e);if(a)return a;let{id:i}=await n;return(0,r.getNode)(i)?((0,r.removeNode)(i),t.NextResponse.json({ok:!0})):t.NextResponse.json({error:"Node not found"},{status:404})}e.s(["DELETE",()=>a,"PUT",()=>n])},637943,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146),n=e.i(446786);async function a(e){let a=(0,s.requireAdmin)(e);if(a)return a;let i=e.headers.get("x-auth-user")||n.default.userInfo().username,o=(0,r.listApiKeys)(i);return t.NextResponse.json(o)}async function i(n){let a=(0,s.requireAdmin)(n);if(a)return a;let{name:i,permissions:o}=await n.json();if(!i||"string"!=typeof i||!i.trim())return t.NextResponse.json({error:"Name is required"},{status:400});let u=n.headers.get("x-auth-user")||e.r(446786).userInfo().username,{rawKey:d,record:l}=(0,r.createApiKey)(i.trim(),o||"read",u);return t.NextResponse.json({rawKey:d,...l},{status:201})}e.s(["GET",()=>a,"POST",()=>i])},618765,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146);async function n(e){let n=(0,s.requireAdmin)(e);if(n)return n;let a=(0,r.getDiscoveredNodes)();return t.NextResponse.json(a)}e.s(["GET",()=>n])},70832,e=>{"use strict";var t=e.i(89171),r=e.i(298564),s=e.i(525997);async function n(e){try{(0,r.requireNetworkAuth)(e)}catch(e){if(e instanceof r.NetworkAuthError)return t.NextResponse.json({error:e.message},{status:401});throw e}let n=(0,s.getNodeIdentity)();return t.NextResponse.json({nodeId:n.nodeId,nodeName:n.nodeName,version:n.version,sessionCount:0,projectCount:0,workspaceCount:0})}e.s(["GET",()=>n])},288938,e=>{"use strict";var t=e.i(89171),r=e.i(525997),s=e.i(908146);async function n(){let e=(0,r.getNodeIdentity)();return t.NextResponse.json(e)}async function a(e){let n=(0,s.requireAdmin)(e);if(n)return n;let{name:a}=await e.json();if(!a||"string"!=typeof a||!a.trim())return t.NextResponse.json({error:"Name is required"},{status:400});(0,r.setNodeName)(a.trim());let i=(0,r.getNodeIdentity)();return t.NextResponse.json(i)}e.s(["GET",()=>n,"PUT",()=>a])},936896,e=>{"use strict";var t=e.i(89171),r=e.i(139195),s=e.i(908146),n=e.i(446786);async function a(e,{params:a}){let i=(0,s.requireAdmin)(e);if(i)return i;let{id:o}=await a,u=e.headers.get("x-auth-user")||n.default.userInfo().username,d=(0,r.getNetworkDb)().prepare("SELECT username FROM api_keys WHERE id = ?").get(o);return d?d.username&&d.username!==u?t.NextResponse.json({error:"Not authorized to revoke this key"},{status:403}):((0,r.revokeApiKey)(o),t.NextResponse.json({ok:!0})):t.NextResponse.json({error:"Key not found"},{status:404})}e.s(["DELETE",()=>a])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},451200,(e,t,r)=>{"use strict";let s=null;t.exports.init=function(e){s=e},t.exports.getDeps=function(){return s}},365836,e=>{"use strict";var t=e.i(507304),r=e.i(460569);e.i(768724);var s=e.i(793765),n=e.i(451200),a=e.i(618393);let i=new Set,o=new Set,u=!1,d=0;async function l(){let l=(0,s.getCurrentUser)();if(i.has(l)){let e=Date.now();e-d>3e5&&(d=e,(0,r.buildFtsIndex)().catch(()=>{}));return}if((0,t.getDb)(),i.add(l),!u){u=!0;let{sseManager:r}=await e.A(972354);n.init({getDb:t.getDb,sseManager:r}),"function"==typeof a.runMigrations&&a.runMigrations((0,t.getDb)())}if(!o.has(l)){o.add(l);try{let e=await (0,r.fullSync)();console.log(`[spaces:${l}] Synced ${e.projects} projects, ${e.sessions} sessions`);let t=await (0,r.enrichMissingSessions)();t>0&&console.log(`[spaces:${l}] Enriched ${t} sessions from JSONL`),d=Date.now(),(0,r.buildFtsIndex)((e,t)=>{e>0&&e%10==0&&console.log(`[spaces:${l}] FTS indexing: ${e}/${t}`)}).then(e=>{e>0&&console.log(`[spaces:${l}] FTS indexed ${e} sessions`)}).catch(e=>{console.error(`[spaces:${l}] FTS indexing error:`,e)})}catch(e){console.error(`[spaces:${l}] Sync error:`,e)}finally{o.delete(l)}}}e.s(["ensureInitialized",()=>l])},525997,e=>{"use strict";var t=e.i(254799),r=e.i(522734),s=e.i(814747),n=e.i(446786);let a=s.default.join(n.default.homedir(),".spaces","node.json"),i=null;function o(){try{let e=s.default.join(process.cwd(),"package.json");return JSON.parse(r.default.readFileSync(e,"utf-8")).version||"0.0.0"}catch{return"0.0.0"}}function u(){if(i)return{...i,version:o()};let e=s.default.dirname(a);if(r.default.existsSync(e)||r.default.mkdirSync(e,{recursive:!0}),r.default.existsSync(a))try{let e=JSON.parse(r.default.readFileSync(a,"utf-8"));return i={nodeId:e.nodeId,nodeName:e.nodeName||n.default.hostname(),version:o(),createdAt:e.createdAt}}catch{}let u={nodeId:t.default.randomUUID(),nodeName:n.default.hostname(),version:o(),createdAt:new Date().toISOString()};return r.default.writeFileSync(a,JSON.stringify({nodeId:u.nodeId,nodeName:u.nodeName,createdAt:u.createdAt},null,2),{mode:384}),i=u,u}function d(e){let t=u(),s={nodeId:t.nodeId,nodeName:e,createdAt:t.createdAt};r.default.writeFileSync(a,JSON.stringify(s,null,2),{mode:384}),i={...s,version:o()}}e.s(["getNodeIdentity",()=>u,"setNodeName",()=>d])},139195,e=>{"use strict";var t=e.i(785148),r=e.i(254799),s=e.i(814747),n=e.i(522734),a=e.i(446786);let i=s.default.join(a.default.homedir(),".spaces","network.db"),o=s.default.join(a.default.homedir(),".spaces","terminal_secret"),u=null;function d(){if(u)return u;let e=s.default.dirname(i);n.default.existsSync(e)||n.default.mkdirSync(e,{recursive:!0});let r=new t.default(i);r.pragma("journal_mode = WAL"),r.pragma("synchronous = NORMAL"),r.pragma("foreign_keys = ON"),r.exec(`
2
+ CREATE TABLE IF NOT EXISTS nodes (
3
+ id TEXT PRIMARY KEY,
4
+ name TEXT NOT NULL,
5
+ url TEXT NOT NULL,
6
+ api_key_encrypted TEXT NOT NULL,
7
+ api_key_hint TEXT NOT NULL DEFAULT '',
8
+ status TEXT NOT NULL DEFAULT 'unknown',
9
+ last_seen TEXT,
10
+ last_error TEXT,
11
+ session_count INTEGER DEFAULT 0,
12
+ version TEXT,
13
+ discovered_via TEXT DEFAULT 'manual',
14
+ created TEXT DEFAULT (datetime('now')),
15
+ updated TEXT DEFAULT (datetime('now'))
16
+ );
17
+
18
+ CREATE TABLE IF NOT EXISTS api_keys (
19
+ id TEXT PRIMARY KEY,
20
+ name TEXT NOT NULL,
21
+ key_hash TEXT NOT NULL,
22
+ key_prefix TEXT NOT NULL DEFAULT '',
23
+ permissions TEXT NOT NULL DEFAULT 'read',
24
+ last_used TEXT,
25
+ created TEXT DEFAULT (datetime('now')),
26
+ expires TEXT,
27
+ username TEXT
28
+ );
29
+ `);try{r.exec("ALTER TABLE api_keys ADD COLUMN username TEXT")}catch{}return u=r,r}function l(){if(n.default.existsSync(o))return Buffer.from(n.default.readFileSync(o,"utf-8").trim(),"hex");let e=r.default.randomBytes(32),t=s.default.dirname(o);return n.default.existsSync(t)||n.default.mkdirSync(t,{recursive:!0}),n.default.writeFileSync(o,e.toString("hex"),{mode:384}),e}function c(e){return{id:e.id,name:e.name,url:e.url,apiKeyHint:e.api_key_hint,status:e.status,lastSeen:e.last_seen,lastError:e.last_error,sessionCount:e.session_count,version:e.version,discoveredVia:e.discovered_via,created:e.created,updated:e.updated}}function p(e){return{id:e.id,name:e.name,keyPrefix:e.key_prefix,permissions:e.permissions,lastUsed:e.last_used,created:e.created,expires:e.expires,username:e.username||null}}function f(e){var t;let s,n,a,i,o,u=d(),c=e.id||r.default.randomUUID(),p=(t=e.apiKey,s=l(),n=r.default.randomBytes(12),a=r.default.createCipheriv("aes-256-gcm",s,n),i=Buffer.concat([a.update(t,"utf-8"),a.final()]),o=a.getAuthTag(),`${n.toString("base64")}:${o.toString("base64")}:${i.toString("base64")}`),f=e.apiKey.slice(-4);return u.prepare(`
30
+ INSERT INTO nodes (id, name, url, api_key_encrypted, api_key_hint, discovered_via)
31
+ VALUES (?, ?, ?, ?, ?, ?)
32
+ ON CONFLICT(id) DO UPDATE SET
33
+ name=excluded.name, url=excluded.url,
34
+ api_key_encrypted=excluded.api_key_encrypted,
35
+ api_key_hint=excluded.api_key_hint,
36
+ updated=datetime('now')
37
+ `).run(c,e.name,e.url,p,f,e.discoveredVia||"manual"),h(c)}function m(e){d().prepare("DELETE FROM nodes WHERE id = ?").run(e)}function h(e){let t=d().prepare("SELECT * FROM nodes WHERE id = ?").get(e);return t?c(t):null}function y(){return d().prepare("SELECT * FROM nodes ORDER BY created").all().map(c)}function N(e,t,r){let s=d(),n=["status = ?","updated = datetime('now')"],a=[t];"online"===t&&n.push("last_seen = datetime('now')"),r?.lastError!==void 0&&(n.push("last_error = ?"),a.push(r.lastError)),r?.sessionCount!==void 0&&(n.push("session_count = ?"),a.push(r.sessionCount)),r?.version!==void 0&&(n.push("version = ?"),a.push(r.version)),r?.name!==void 0&&(n.push("name = ?"),a.push(r.name)),a.push(e),s.prepare(`UPDATE nodes SET ${n.join(", ")} WHERE id = ?`).run(...a)}function E(e,t){let r=d(),s=["updated = datetime('now')"],n=[];void 0!==t.name&&(s.push("name = ?"),n.push(t.name)),void 0!==t.url&&(s.push("url = ?"),n.push(t.url)),n.push(e),r.prepare(`UPDATE nodes SET ${s.join(", ")} WHERE id = ?`).run(...n)}function T(e){let t=d().prepare("SELECT api_key_encrypted FROM nodes WHERE id = ?").get(e);if(!t)return null;try{return function(e){let t=l(),[s,n,a]=e.split(":");if(!s||!n||!a)throw Error("Invalid encrypted key format");let i=Buffer.from(s,"base64"),o=Buffer.from(n,"base64"),u=Buffer.from(a,"base64"),d=r.default.createDecipheriv("aes-256-gcm",t,i);return d.setAuthTag(o),Buffer.concat([d.update(u),d.final()]).toString("utf-8")}(t.api_key_encrypted)}catch{return null}}function g(e,t="read",s){let n,a,i=d(),o=r.default.randomUUID(),u=`spk_${r.default.randomBytes(32).toString("hex")}`,l=(n=r.default.randomBytes(16).toString("hex"),a=r.default.scryptSync(u,n,64).toString("hex"),`${n}:${a}`),c=u.slice(0,12);return i.prepare(`
38
+ INSERT INTO api_keys (id, name, key_hash, key_prefix, permissions, username)
39
+ VALUES (?, ?, ?, ?, ?, ?)
40
+ `).run(o,e,l,c,t,s||null),{rawKey:u,record:p(i.prepare("SELECT * FROM api_keys WHERE id = ?").get(o))}}function w(e){let t=d();for(let s of t.prepare("SELECT * FROM api_keys").all())if(!(s.expires&&new Date(s.expires)<new Date)&&function(e,t){let[s,n]=t.split(":");if(!s||!n)return!1;let a=r.default.scryptSync(e,s,64).toString("hex");try{return r.default.timingSafeEqual(Buffer.from(n,"hex"),Buffer.from(a,"hex"))}catch{return!1}}(e,s.key_hash))return t.prepare("UPDATE api_keys SET last_used = datetime('now') WHERE id = ?").run(s.id),p(s);return null}function k(e){let t=d();return e?t.prepare("SELECT * FROM api_keys WHERE username = ? ORDER BY created").all(e).map(p):t.prepare("SELECT * FROM api_keys ORDER BY created").all().map(p)}function S(e){d().prepare("DELETE FROM api_keys WHERE id = ?").run(e)}function A(){return d().prepare("SELECT * FROM nodes WHERE discovered_via = 'mdns' AND api_key_encrypted = '' ORDER BY created").all().map(c)}e.s(["addNode",()=>f,"createApiKey",()=>g,"getDiscoveredNodes",()=>A,"getNetworkDb",()=>d,"getNode",()=>h,"getNodeApiKey",()=>T,"listApiKeys",()=>k,"listNodes",()=>y,"removeNode",()=>m,"revokeApiKey",()=>S,"updateNode",()=>E,"updateNodeStatus",()=>N,"validateApiKey",()=>w])},298564,e=>{"use strict";var t=e.i(139195);function r(e){let r=function(e){let r=e.headers.get("authorization");if(!r)return null;let s=r.match(/^Bearer\s+(spk_\w+)$/);return s?(0,t.validateApiKey)(s[1]):null}(e);if(!r)throw new s("Invalid or missing API key");return r}class s extends Error{constructor(e){super(e),this.name="NetworkAuthError"}}e.s(["NetworkAuthError",()=>s,"requireNetworkAuth",()=>r])},222853,e=>{"use strict";var t=e.i(89171),r=e.i(298564),s=e.i(525997);async function n(e){try{(0,r.requireNetworkAuth)(e)}catch(e){if(e instanceof r.NetworkAuthError)return t.NextResponse.json({error:e.message},{status:401});throw e}let n=(0,s.getNodeIdentity)();return t.NextResponse.json({status:"ok",nodeId:n.nodeId,nodeName:n.nodeName,version:n.version,uptime:process.uptime()})}e.s(["GET",()=>n])}];
41
+
42
+ //# sourceMappingURL=%5Broot-of-the-server%5D__85c33341._.js.map
@@ -0,0 +1,78 @@
1
+ module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var s=Object.defineProperty,n=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},u={RequestCookies:()=>E,ResponseCookies:()=>h,parseCookie:()=>d,parseSetCookie:()=>f,stringifyCookie:()=>p};for(var l in u)s(o,l,{get:u[l],enumerable:!0});function p(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),s=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?s:`${s}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[s,n]=[r.slice(0,e),r.slice(e+1)];try{t.set(s,decodeURIComponent(null!=n?n:"true"))}catch{}}return t}function f(e){if(!e)return;let[[t,r],...s]=d(e),{domain:n,expires:a,httponly:i,maxage:o,path:u,samesite:l,secure:p,partitioned:f,priority:E}=Object.fromEntries(s.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var h,S,g={name:t,value:decodeURIComponent(r),domain:n,...a&&{expires:new Date(a)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:u,...l&&{sameSite:m.includes(h=(h=l).toLowerCase())?h:void 0},...p&&{secure:!0},...E&&{priority:c.includes(S=(S=E).toLowerCase())?S:void 0},...f&&{partitioned:!0}};let e={};for(let t in g)g[t]&&(e[t]=g[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of a(t))i.call(e,r)||void 0===r||s(e,r,{get:()=>t[r],enumerable:!(o=n(t,r))||o.enumerable});return e})(s({},"__esModule",{value:!0}),o);var m=["strict","lax","none"],c=["low","medium","high"],E=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let s="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===s).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,s=this._parsed;return s.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(s).map(([e,t])=>p(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>p(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},h=class{constructor(e){var t,r,s;this._parsed=new Map,this._headers=e;const n=null!=(s=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?s:[];for(const e of Array.isArray(n)?n:function(e){if(!e)return[];var t,r,s,n,a,i=[],o=0;function u(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,a=!1;u();)if(","===(r=e.charAt(o))){for(s=o,o+=1,u(),n=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(a=!0,o=n,i.push(e.substring(t,s)),t=o):o=s+1}else o+=1;(!a||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(n)){const t=f(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let s="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===s)}has(e){return this._parsed.has(e)}set(...e){let[t,r,s]=1===e.length?[e[0].name,e[0].value,e[0]]:e,n=this._parsed;return n.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...s})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=p(r);t.append("set-cookie",e)}}(n,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(p).join("; ")}}},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},362562,(e,t,r)=>{t.exports=e.x("module",()=>require("module"))},708784,e=>{"use strict";var t=e.i(362562),r=e.i(254799),s=e.i(814747),n=e.i(522734),a=e.i(446786);let i=(0,t.createRequire)("/ROOT/src/lib/admin/db.ts")("better-sqlite3"),o=s.default.join(a.default.homedir(),".spaces","admin.db"),u=null;function l(){if(u)return u;let e=s.default.dirname(o);n.default.existsSync(e)||n.default.mkdirSync(e,{recursive:!0});let t=new i(o);return t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL"),t.pragma("foreign_keys = ON"),t.exec(`
2
+ CREATE TABLE IF NOT EXISTS users (
3
+ id TEXT PRIMARY KEY,
4
+ username TEXT NOT NULL UNIQUE,
5
+ password_hash TEXT NOT NULL,
6
+ display_name TEXT NOT NULL DEFAULT '',
7
+ shell_user TEXT NOT NULL,
8
+ role TEXT NOT NULL DEFAULT 'user',
9
+ totp_secret TEXT,
10
+ totp_enabled INTEGER DEFAULT 0,
11
+ created TEXT DEFAULT (datetime('now'))
12
+ );
13
+
14
+ CREATE TABLE IF NOT EXISTS login_events (
15
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
16
+ username TEXT NOT NULL,
17
+ timestamp TEXT NOT NULL DEFAULT (datetime('now')),
18
+ ip_address TEXT,
19
+ user_agent TEXT
20
+ );
21
+
22
+ CREATE TABLE IF NOT EXISTS terminal_sessions (
23
+ id TEXT PRIMARY KEY,
24
+ username TEXT NOT NULL,
25
+ agent_type TEXT NOT NULL DEFAULT 'shell',
26
+ started_at TEXT NOT NULL DEFAULT (datetime('now')),
27
+ ended_at TEXT,
28
+ duration_seconds INTEGER
29
+ );
30
+
31
+ CREATE INDEX IF NOT EXISTS idx_login_events_username ON login_events(username);
32
+ CREATE INDEX IF NOT EXISTS idx_login_events_timestamp ON login_events(timestamp);
33
+ CREATE INDEX IF NOT EXISTS idx_terminal_sessions_username ON terminal_sessions(username);
34
+ CREATE INDEX IF NOT EXISTS idx_terminal_sessions_started_at ON terminal_sessions(started_at);
35
+ `),u=t,t}function p(e){let t=r.default.randomBytes(16).toString("hex"),s=r.default.scryptSync(e,t,64).toString("hex");return`${t}:${s}`}function d(e,t){let[s,n]=t.split(":");if(!s||!n)return!1;let a=r.default.scryptSync(e,s,64).toString("hex");return r.default.timingSafeEqual(Buffer.from(n,"hex"),Buffer.from(a,"hex"))}function f(e){let t=l(),s=r.default.randomUUID(),n=p(e.password);return t.prepare(`
36
+ INSERT INTO users (id, username, password_hash, display_name, shell_user, role)
37
+ VALUES (?, ?, ?, ?, ?, ?)
38
+ `).run(s,e.username,n,e.displayName,e.shellUser,e.role||"user"),m(e.username)}function m(e){return l().prepare("SELECT * FROM users WHERE username = ?").get(e)}function c(e){return l().prepare("SELECT * FROM users WHERE id = ?").get(e)}function E(){return l().prepare("SELECT * FROM users ORDER BY created").all()}function h(e,t){let r=l(),s=[],n=[];void 0!==t.displayName&&(s.push("display_name = ?"),n.push(t.displayName)),void 0!==t.shellUser&&(s.push("shell_user = ?"),n.push(t.shellUser)),void 0!==t.role&&(s.push("role = ?"),n.push(t.role)),void 0!==t.password&&(s.push("password_hash = ?"),n.push(p(t.password))),void 0!==t.totpSecret&&(s.push("totp_secret = ?"),n.push(t.totpSecret)),void 0!==t.totpEnabled&&(s.push("totp_enabled = ?"),n.push(+!!t.totpEnabled)),0!==s.length&&(n.push(e),r.prepare(`UPDATE users SET ${s.join(", ")} WHERE id = ?`).run(...n),g.clear())}function S(e){l().prepare("DELETE FROM users WHERE id = ?").run(e),g.clear()}let g=new Map;function T(e){let t=g.get(e);if(t&&t.expires>Date.now())return t.shellUser;let r=m(e),s=r?.shell_user||e;return g.set(e,{shellUser:s,expires:Date.now()+6e4}),s}function _(e,t,r){l().prepare("INSERT INTO login_events (username, ip_address, user_agent) VALUES (?, ?, ?)").run(e,t||null,r||null)}function y(e){return l().prepare(`
39
+ SELECT username, timestamp, ip_address, user_agent
40
+ FROM login_events
41
+ WHERE timestamp >= datetime('now', ?)
42
+ ORDER BY timestamp DESC
43
+ `).all(`-${e} days`)}function x(e){return l().prepare(`
44
+ SELECT id, username, agent_type, started_at, ended_at, duration_seconds
45
+ FROM terminal_sessions
46
+ WHERE started_at >= datetime('now', ?)
47
+ ORDER BY started_at DESC
48
+ `).all(`-${e} days`)}function O(){return l().prepare("SELECT COUNT(*) as count FROM terminal_sessions WHERE ended_at IS NULL").get().count}function R(e){return l().prepare(`
49
+ SELECT date(timestamp) as date, COUNT(*) as count
50
+ FROM login_events
51
+ WHERE timestamp >= datetime('now', ?)
52
+ GROUP BY date(timestamp)
53
+ ORDER BY date
54
+ `).all(`-${e} days`)}function v(e){return l().prepare(`
55
+ SELECT date(started_at) as date,
56
+ CAST(SUM(COALESCE(duration_seconds, 0)) / 60.0 AS REAL) as minutes
57
+ FROM terminal_sessions
58
+ WHERE started_at >= datetime('now', ?)
59
+ GROUP BY date(started_at)
60
+ ORDER BY date
61
+ `).all(`-${e} days`)}function A(e){return l().prepare(`
62
+ SELECT
63
+ ts.username,
64
+ COUNT(ts.id) as session_count,
65
+ CAST(SUM(COALESCE(ts.duration_seconds, 0)) / 60.0 AS REAL) as total_minutes,
66
+ MAX(le.last_login) as last_login
67
+ FROM terminal_sessions ts
68
+ LEFT JOIN (
69
+ SELECT username, MAX(timestamp) as last_login
70
+ FROM login_events
71
+ GROUP BY username
72
+ ) le ON ts.username = le.username
73
+ WHERE ts.started_at >= datetime('now', ?)
74
+ GROUP BY ts.username
75
+ ORDER BY total_minutes DESC
76
+ `).all(`-${e} days`)}e.s(["createUser",()=>f,"deleteUser",()=>S,"getActiveSessionCount",()=>O,"getDailyLoginCounts",()=>R,"getDailySessionMinutes",()=>v,"getLoginEvents",()=>y,"getTerminalSessions",()=>x,"getUser",()=>m,"getUserById",()=>c,"getUserSessionSummary",()=>A,"listUsers",()=>E,"recordLogin",()=>_,"resolveShellUser",()=>T,"updateUser",()=>h,"verifyPassword",()=>d])},279174,e=>{"use strict";var t=e.i(362562),r=e.i(254799),s=e.i(522734),n=e.i(814747);let{TOTP:a,Secret:i}=(0,t.createRequire)("/ROOT/src/lib/auth/totp.ts")("otpauth"),o=n.default.join(process.env.HOME||"/home/"+e.r(446786).userInfo().username,".spaces","terminal_secret"),u=null;function l(){return u||(u=function(){if(s.default.existsSync(o))return Buffer.from(s.default.readFileSync(o,"utf-8").trim(),"hex");let e=r.default.randomBytes(32),t=n.default.dirname(o);return s.default.existsSync(t)||s.default.mkdirSync(t,{recursive:!0}),s.default.writeFileSync(o,e.toString("hex"),{mode:384}),e}()),u}function p(e){let t=new a({issuer:"Spaces",label:e,algorithm:"SHA1",digits:6,period:30,secret:new i({size:20})});return{secret:t.secret.base32,uri:t.toString()}}function d(e,t){return null!==new a({issuer:"Spaces",algorithm:"SHA1",digits:6,period:30,secret:i.fromBase32(e)}).validate({token:t,window:1})}function f(e){let t=JSON.stringify({sub:e,exp:Math.floor(Date.now()/1e3)+28800}),s=Buffer.from(t).toString("base64url"),n=r.default.createHmac("sha256",l()).update(s).digest("base64url");return`${s}.${n}`}function m(e){if(!e)return null;let t=e.split(".");if(2!==t.length)return null;let[s,n]=t,a=r.default.createHmac("sha256",l()).update(s).digest("base64url");if(!r.default.timingSafeEqual(Buffer.from(n),Buffer.from(a)))return null;try{let e=JSON.parse(Buffer.from(s,"base64url").toString());if(e.exp<Math.floor(Date.now()/1e3))return null;return e.sub||null}catch{return null}}e.s(["generateSecret",()=>p,"issueTerminalToken",()=>f,"verifyCode",()=>d,"verifyTerminalToken",()=>m])},691180,e=>{"use strict";var t=e.i(254799),r=e.i(522734),s=e.i(814747);let n=s.default.join(process.env.HOME||process.env.USERPROFILE||e.r(446786).homedir(),".spaces","session_secret"),a=null;function i(){return a||(a=function(){if(process.env.SPACES_SESSION_SECRET)return Buffer.from(process.env.SPACES_SESSION_SECRET,"hex");if(r.default.existsSync(n))return Buffer.from(r.default.readFileSync(n,"utf-8").trim(),"hex");let e=t.default.randomBytes(32),a=s.default.dirname(n);return r.default.existsSync(a)||r.default.mkdirSync(a,{recursive:!0}),r.default.writeFileSync(n,e.toString("hex"),{mode:384}),e}()),a}function o(e,r){let s=JSON.stringify({sub:e,role:r,exp:Math.floor(Date.now()/1e3)+86400}),n=Buffer.from(s).toString("base64url"),a=t.default.createHmac("sha256",i()).update(n).digest("base64url");return`${n}.${a}`}function u(e){if(!e)return null;let r=e.split(".");if(2!==r.length)return null;let[s,n]=r,a=t.default.createHmac("sha256",i()).update(s).digest("base64url");if(!t.default.timingSafeEqual(Buffer.from(n),Buffer.from(a)))return null;try{let e=JSON.parse(Buffer.from(s,"base64url").toString());if(e.exp<Math.floor(Date.now()/1e3))return null;return{sub:e.sub,role:e.role||"user"}}catch{return null}}let l="spaces-session";function p(e,t){let r="1"===process.env.SPACES_SECURE_COOKIES,s=`${l}=${t}; HttpOnly; SameSite=Lax; Path=/; Max-Age=86400${r?"; Secure":""}`;e.headers.append("Set-Cookie",s)}function d(e){let t="1"===process.env.SPACES_SECURE_COOKIES,r=`${l}=; HttpOnly; SameSite=Lax; Path=/; Max-Age=0${t?"; Secure":""}`;e.headers.append("Set-Cookie",r)}function f(){return i().toString("hex")}e.s(["clearSessionCookie",()=>d,"getSessionSecretHex",()=>f,"issueSessionToken",()=>o,"setSessionCookie",()=>p,"verifySessionToken",()=>u])}];
77
+
78
+ //# sourceMappingURL=%5Broot-of-the-server%5D__88f3d920._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>f,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>c,stringifyCookie:()=>p};for(var u in l)n(o,u,{get:l[u],enumerable:!0});function p(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,s]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=s?s:"true"))}catch{}}return t}function c(e){if(!e)return;let[[t,r],...n]=d(e),{domain:s,expires:a,httponly:i,maxage:o,path:l,samesite:u,secure:p,partitioned:c,priority:f}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,x,v={name:t,value:decodeURIComponent(r),domain:s,...a&&{expires:new Date(a)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...u&&{sameSite:h.includes(g=(g=u).toLowerCase())?g:void 0},...p&&{secure:!0},...f&&{priority:m.includes(x=(x=f).toLowerCase())?x:void 0},...c&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of a(t))i.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(o=s(t,r))||o.enumerable});return e})(n({},"__esModule",{value:!0}),o);var h=["strict","lax","none"],m=["low","medium","high"],f=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>p(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>p(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const s=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(s)?s:function(e){if(!e)return[];var t,r,n,s,a,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,a=!1;l();)if(","===(r=e.charAt(o))){for(n=o,o+=1,l(),s=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(a=!0,o=s,i.push(e.substring(t,n)),t=o):o=n+1}else o+=1;(!a||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(s)){const t=c(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,s=this._parsed;return s.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=p(r);t.append("set-cookie",e)}}(s,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(p).join("; ")}}},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.10.0-beta.4",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js","spaces-msg":"./bin/spaces-msg.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",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",prepack:"node bin/scrub-standalone.js",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:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@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","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0",otpauth:"^9.0.0",qrcode:"^1.5.0","react-resizable-panels":"^4.7.6",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"}})},299357,e=>{"use strict";let t="1"===process.env.SPACES_MULTIUSER||"1"===process.env.NEXT_PUBLIC_MULTIUSER,r=!t;function n(){let n="0.0.0";try{n=e.r(804730).version}catch{}return{tier:t?"team":"community",version:n,hasAuth:t,hasAdmin:t,hasCollaboration:t,hasNetwork:!0,hasMultiuser:t,hasCortex:"1"===process.env.SPACES_HAS_CORTEX,isDesktop:r,basePath:""}}e.s(["IS_MULTIUSER",0,t,"getTierFlags",()=>n])},908146,e=>{"use strict";var t=e.i(89171),r=e.i(299357);let n=["127.","::1","::ffff:127."];function s(e){let s;return r.IS_MULTIUSER?"admin"!==e.headers.get("x-auth-role")?t.NextResponse.json({error:"Admin required"},{status:403}):null:(s=e.headers.get("x-spaces-remote-ip")||"",n.some(e=>s.startsWith(e)))?null:t.NextResponse.json({error:"Management endpoints are restricted to localhost in desktop mode. Run in multiuser mode (SPACES_MULTIUSER=1) for remote admin."},{status:403})}e.s(["requireAdmin",()=>s])},859669,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),s=e.i(759756),a=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),p=e.i(995169),d=e.i(47587),c=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),g=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(89171),y=e.i(908146),b=e.i(522734),R=e.i(446786),w=e.i(814747);let A=w.default.join(R.default.homedir(),".spaces","server.json");function C(){try{if(b.default.existsSync(A))return JSON.parse(b.default.readFileSync(A,"utf-8"))}catch{}return{}}async function S(e){let t=(0,y.requireAdmin)(e);if(t)return t;let{port:r,basePath:n,multiuser:s}=C();return v.NextResponse.json({port:r??3457,basePath:n??"",multiuser:!!s})}async function E(e){let t,r,n=(0,y.requireAdmin)(e);if(n)return n;let s=await e.json().catch(()=>({})),a={};"boolean"==typeof s.multiuser&&(a.multiuser=s.multiuser);let i=(t={...C(),...a},r=w.default.dirname(A),b.default.existsSync(r)||b.default.mkdirSync(r,{recursive:!0}),b.default.writeFileSync(A,JSON.stringify(t,null,2)),t);return v.NextResponse.json({port:i.port??3457,basePath:i.basePath??"",multiuser:!!i.multiuser})}e.s(["GET",()=>S,"PATCH",()=>E],346711);var _=e.i(346711);let k=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/server-config/route",pathname:"/api/server-config",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/server-config/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:j,workUnitAsyncStorage:O,serverHooks:P}=k;function q(){return(0,n.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:O})}async function N(e,t,n){k.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/server-config/route";v=v.replace(/\/index$/,"")||"/";let y=await k.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:b,params:R,nextConfig:w,parsedUrl:A,isDraftMode:C,prerenderManifest:S,routerServerContext:E,isOnDemandRevalidate:_,revalidateOnlyGenerated:j,resolvedPathname:O,clientReferenceManifest:P,serverActionsManifest:q}=y,N=(0,o.normalizeAppPath)(v),T=!!(S.dynamicRoutes[N]||S.routes[O]),U=async()=>((null==E?void 0:E.render404)?await E.render404(e,t,A,!1):t.end("This page could not be found"),null);if(T&&!C){let e=!!S.routes[O],t=S.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await U();throw new g.NoFallbackError}}let I=null;!T||k.isDev||C||(I="/index"===(I=O)?"/":I);let D=!0===k.isDev||!T,M=T&&!D;q&&P&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:P,serverActionsManifest:q});let $=e.method||"GET",H=(0,a.getTracer)(),L=H.getActiveScopeSpan(),F={params:R,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>k.onRequestError(e,t,n,s,E)},sharedContext:{buildId:b}},K=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let i=async e=>k.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${v}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var a,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&_&&j&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await i(s);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=F.renderOpts.collectedTags;if(!T)return await (0,c.sendResponse)(K,B,a,F.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await k.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:_})},!1,E),t}},p=await k.handleResponse({req:e,nextConfig:w,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:_,revalidateOnlyGenerated:j,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:o});if(!T)return null;if((null==p||null==(a=p.value)?void 0:a.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(l=p.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",_?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return o&&T||g.delete(f.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,m.getCacheControlHeader)(p.cacheControl)),await (0,c.sendResponse)(K,B,new Response(p.value.body,{headers:g,status:p.value.status||200})),null};L?await l(L):await H.withPropagatedContext(e.headers,()=>H.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${v}`,kind:a.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await k.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:_})},!1,E),T)throw t;return await (0,c.sendResponse)(K,B,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>q,"routeModule",()=>k,"serverHooks",()=>P,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>O],859669)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__8c916e85._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,i={},l={RequestCookies:()=>m,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>c,stringifyCookie:()=>u};for(var p in l)n(i,p,{get:l[p],enumerable:!0});function u(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function c(e){if(!e)return;let[[t,r],...n]=d(e),{domain:a,expires:s,httponly:o,maxage:i,path:l,samesite:p,secure:u,partitioned:c,priority:m}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,x,v={name:t,value:decodeURIComponent(r),domain:a,...s&&{expires:new Date(s)},...o&&{httpOnly:!0},..."string"==typeof i&&{maxAge:Number(i)},path:l,...p&&{sameSite:h.includes(g=(g=p).toLowerCase())?g:void 0},...u&&{secure:!0},...m&&{priority:f.includes(x=(x=m).toLowerCase())?x:void 0},...c&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of s(t))o.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(i=a(t,r))||i.enumerable});return e})(n({},"__esModule",{value:!0}),i);var h=["strict","lax","none"],f=["low","medium","high"],m=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>u(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>u(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const a=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,n,a,s,o=[],i=0;function l(){for(;i<e.length&&/\s/.test(e.charAt(i));)i+=1;return i<e.length}for(;i<e.length;){for(t=i,s=!1;l();)if(","===(r=e.charAt(i))){for(n=i,i+=1,l(),a=i;i<e.length&&"="!==(r=e.charAt(i))&&";"!==r&&","!==r;)i+=1;i<e.length&&"="===e.charAt(i)?(s=!0,i=a,o.push(e.substring(t,n)),t=i):i=n+1}else i+=1;(!s||i>=e.length)&&o.push(e.substring(t,e.length))}return o}(a)){const t=c(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=u(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(u).join("; ")}}},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},164248,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),p=e.i(487718),u=e.i(995169),d=e.i(47587),c=e.i(666012),h=e.i(570101),f=e.i(626937),m=e.i(10372),g=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(89171),y=e.i(522734),R=e.i(814747);function w(e){if(process.env[e])return process.env[e];for(let t of[R.default.join(process.cwd(),".env.local"),R.default.resolve("/ROOT/src/app/api/whisper","../../../../.env.local"),R.default.resolve("/ROOT/src/app/api/whisper","../../../.env.local"),R.default.resolve("/ROOT/src/app/api/whisper","../../.env.local")])try{if(!y.default.existsSync(t))continue;let r=y.default.readFileSync(t,"utf-8").match(RegExp(`^${e}=(.+)$`,"m"));if(r?.[1]?.trim())return console.log(`[Whisper] Found ${e} in ${t}`),r[1].trim()}catch{continue}}async function A(e){try{let t=(await e.formData()).get("audio");if(!t||!(t instanceof Blob))return v.NextResponse.json({error:"No audio file provided"},{status:400});let r=w("GROQ_API_KEY"),n=w("OPENAI_API_KEY");if(console.log(`[Whisper] Backend: ${r?"Groq":n?"OpenAI":"NONE"}`),!r&&!n)return v.NextResponse.json({error:"No transcription API key configured. Set GROQ_API_KEY or OPENAI_API_KEY in .env.local"},{status:500});let a=new FormData;a.append("file",t,"audio.webm"),a.append("model",r?"whisper-large-v3":"whisper-1"),a.append("response_format","json"),a.append("language","en");let s=await fetch(r?"https://api.groq.com/openai/v1/audio/transcriptions":"https://api.openai.com/v1/audio/transcriptions",{method:"POST",headers:{Authorization:`Bearer ${r||n}`},body:a,signal:AbortSignal.timeout(15e3)});if(!s.ok){let e=await s.text().catch(()=>"Unknown error");return console.error(`[Whisper] ${s.status}: ${e}`),v.NextResponse.json({error:"Transcription failed"},{status:502})}let o=await s.json();return v.NextResponse.json({text:o.text||"",backend:r?"groq":"openai"})}catch(e){return console.error("[Whisper] Error:",e.message),v.NextResponse.json({error:"Internal error"},{status:500})}}e.s(["POST",()=>A,"dynamic",0,"force-dynamic"],967580);var _=e.i(967580);let E=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/whisper/route",pathname:"/api/whisper",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/whisper/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:b,workUnitAsyncStorage:O,serverHooks:C}=E;function S(){return(0,n.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:O})}async function k(e,t,n){E.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/whisper/route";v=v.replace(/\/index$/,"")||"/";let y=await E.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,params:w,nextConfig:A,parsedUrl:_,isDraftMode:b,prerenderManifest:O,routerServerContext:C,isOnDemandRevalidate:S,revalidateOnlyGenerated:k,resolvedPathname:P,clientReferenceManifest:j,serverActionsManifest:N}=y,T=(0,i.normalizeAppPath)(v),$=!!(O.dynamicRoutes[T]||O.routes[P]),I=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,_,!1):t.end("This page could not be found"),null);if($&&!b){let e=!!O.routes[P],t=O.dynamicRoutes[T];if(t&&!1===t.fallback&&!e){if(A.experimental.adapterPath)return await I();throw new g.NoFallbackError}}let q=null;!$||E.isDev||b||(q="/index"===(q=P)?"/":q);let D=!0===E.isDev||!$,U=$&&!D;N&&j&&(0,o.setManifestsSingleton)({page:v,clientReferenceManifest:j,serverActionsManifest:N});let H=e.method||"GET",M=(0,s.getTracer)(),K=M.getActiveScopeSpan(),F={params:w,prerenderManifest:O,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:A.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>E.onRequestError(e,t,n,a,C)},sharedContext:{buildId:R}},B=new l.NodeNextRequest(e),L=new l.NodeNextResponse(t),G=p.NextRequestAdapter.fromNodeNextRequest(B,(0,p.signalFromNodeResponse)(t));try{let o=async e=>E.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${v}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let p=async({previousCacheEntry:r})=>{try{if(!i&&S&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let p=F.renderOpts.collectedTags;if(!$)return await (0,c.sendResponse)(B,L,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);p&&(t[m.NEXT_CACHE_TAGS_HEADER]=p),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await E.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:S})},!1,C),t}},u=await E.handleResponse({req:e,nextConfig:A,cacheKey:q,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:k,responseGenerator:p,waitUntil:n.waitUntil,isMinimalMode:i});if(!$)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&$||g.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,c.sendResponse)(B,L,new Response(u.value.body,{headers:g,status:u.value.status||200})),null};K?await l(K):await M.withPropagatedContext(e.headers,()=>M.trace(u.BaseServerSpan.handleRequest,{spanName:`${H} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await E.onRequestError(e,t,{routerKind:"App Router",routePath:T,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:S})},!1,C),$)throw t;return await (0,c.sendResponse)(B,L,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>S,"routeModule",()=>E,"serverHooks",()=>C,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>O],164248)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__8deb2ae3._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},451200,(e,t,r)=>{"use strict";let n=null;t.exports.init=function(e){n=e},t.exports.getDeps=function(){return n}},365836,e=>{"use strict";var t=e.i(507304),r=e.i(460569);e.i(768724);var n=e.i(793765),s=e.i(451200),a=e.i(618393);let o=new Set,i=new Set,l=!1,d=0;async function u(){let u=(0,n.getCurrentUser)();if(o.has(u)){let e=Date.now();e-d>3e5&&(d=e,(0,r.buildFtsIndex)().catch(()=>{}));return}if((0,t.getDb)(),o.add(u),!l){l=!0;let{sseManager:r}=await e.A(972354);s.init({getDb:t.getDb,sseManager:r}),"function"==typeof a.runMigrations&&a.runMigrations((0,t.getDb)())}if(!i.has(u)){i.add(u);try{let e=await (0,r.fullSync)();console.log(`[spaces:${u}] Synced ${e.projects} projects, ${e.sessions} sessions`);let t=await (0,r.enrichMissingSessions)();t>0&&console.log(`[spaces:${u}] Enriched ${t} sessions from JSONL`),d=Date.now(),(0,r.buildFtsIndex)((e,t)=>{e>0&&e%10==0&&console.log(`[spaces:${u}] FTS indexing: ${e}/${t}`)}).then(e=>{e>0&&console.log(`[spaces:${u}] FTS indexed ${e} sessions`)}).catch(e=>{console.error(`[spaces:${u}] FTS indexing error:`,e)})}catch(e){console.error(`[spaces:${u}] Sync error:`,e)}finally{i.delete(u)}}}e.s(["ensureInitialized",()=>u])},954467,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),s=e.i(759756),a=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),f=e.i(10372),v=e.i(193695);e.i(52474);var g=e.i(600220),w=e.i(89171);e.i(768724);var x=e.i(793765),m=e.i(365836),E=e.i(550837);async function y(e,{params:t}){let r=(0,x.getAuthUser)(e);return(0,x.withUser)(r,async()=>{await (0,m.ensureInitialized)();let{id:r,todoId:n}=await t,s=parseInt(r,10),a=parseInt(n,10);if(!Number.isFinite(s)||!Number.isFinite(a))return w.NextResponse.json({error:"invalid workspace or todo id"},{status:400});let o=await e.json().catch(()=>null);if(!o||void 0===o.text&&void 0===o.completed)return w.NextResponse.json({error:"text or completed required"},{status:400});try{let e=(0,E.updateWorkspaceTodo)(s,a,{text:"string"==typeof o.text?o.text:void 0,completed:"boolean"==typeof o.completed?o.completed:void 0});if(!e)return w.NextResponse.json({error:"not found"},{status:404});return w.NextResponse.json(e)}catch(t){let e=t instanceof Error?t.message:"update failed";return w.NextResponse.json({error:e},{status:400})}})}async function C(e,{params:t}){let r=(0,x.getAuthUser)(e);return(0,x.withUser)(r,async()=>{await (0,m.ensureInitialized)();let{id:e,todoId:r}=await t,n=parseInt(e,10),s=parseInt(r,10);return Number.isFinite(n)&&Number.isFinite(s)?((0,E.deleteWorkspaceTodo)(n,s),w.NextResponse.json({ok:!0})):w.NextResponse.json({error:"invalid workspace or todo id"},{status:400})})}e.s(["DELETE",()=>C,"PATCH",()=>y],319839);var N=e.i(319839);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/workspaces/[id]/todos/[todoId]/route",pathname:"/api/workspaces/[id]/todos/[todoId]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/workspaces/[id]/todos/[todoId]/route.ts",nextConfigOutput:"standalone",userland:N}),{workAsyncStorage:A,workUnitAsyncStorage:T,serverHooks:S}=b;function I(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:T})}async function _(e,t,n){b.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/workspaces/[id]/todos/[todoId]/route";w=w.replace(/\/index$/,"")||"/";let x=await b.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:m,params:E,nextConfig:y,parsedUrl:C,isDraftMode:N,prerenderManifest:A,routerServerContext:T,isOnDemandRevalidate:S,revalidateOnlyGenerated:I,resolvedPathname:_,clientReferenceManifest:P,serverActionsManifest:k}=x,O=(0,i.normalizeAppPath)(w),D=!!(A.dynamicRoutes[O]||A.routes[_]),U=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,C,!1):t.end("This page could not be found"),null);if(D&&!N){let e=!!A.routes[_],t=A.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await U();throw new v.NoFallbackError}}let $=null;!D||b.isDev||N||($="/index"===($=_)?"/":$);let j=!0===b.isDev||!D,H=D&&!j;k&&P&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:P,serverActionsManifest:k});let F=e.method||"GET",q=(0,a.getTracer)(),M=q.getActiveScopeSpan(),K={params:E,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:j,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>b.onRequestError(e,t,n,s,T)},sharedContext:{buildId:m}},L=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),z=d.NextRequestAdapter.fromNodeNextRequest(L,(0,d.signalFromNodeResponse)(t));try{let o=async e=>b.handle(z,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=q.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${F} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${w}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var a,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&S&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=K.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(L,B,a,K.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,T),t}},u=await b.handleResponse({req:e,nextConfig:y,cacheKey:$,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:I,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:i});if(!D)return null;if((null==u||null==(a=u.value)?void 0:a.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let v=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&D||v.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||v.get("Cache-Control")||v.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(L,B,new Response(u.value.body,{headers:v,status:u.value.status||200})),null};M?await l(M):await q.withPropagatedContext(e.headers,()=>q.trace(u.BaseServerSpan.handleRequest,{spanName:`${F} ${w}`,kind:a.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},l))}catch(t){if(t instanceof v.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:S})},!1,T),D)throw t;return await (0,p.sendResponse)(L,B,new Response(null,{status:500})),null}}e.s(["handler",()=>_,"patchFetch",()=>I,"routeModule",()=>b,"serverHooks",()=>S,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>T],954467)},972354,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_events_sse_ts_1ad73980._.js"].map(t=>e.l(t))).then(()=>t(920776)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__8df5a740._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},866129,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),m=e.i(10372),f=e.i(193695);e.i(52474);var v=e.i(600220),E=e.i(233405),w=e.i(708784),g=e.i(908146);async function y(e){let t=(0,g.requireAdmin)(e);if(t)return t;let r=(0,w.listUsers)().map(e=>({id:e.id,username:e.username,displayName:e.display_name,shellUser:e.shell_user,role:e.role,totpEnabled:!!e.totp_enabled,created:e.created}));return Response.json(r)}async function x(e){let t=(0,g.requireAdmin)(e);if(t)return t;try{let{username:t,password:r,displayName:a,shellUser:n,role:s}=await e.json();if(!t||!r||!n)return Response.json({error:"username, password, and shellUser are required"},{status:400});if(r.length<8)return Response.json({error:"Password must be at least 8 characters"},{status:400});try{(0,E.execFileSync)("id",[n],{stdio:"pipe"})}catch{return Response.json({error:`OS user "${n}" does not exist. Create it first with: sudo useradd -m ${n}`},{status:400})}let o=(0,w.createUser)({username:t,password:r,displayName:a||t,shellUser:n,role:s||"user"});return Response.json({id:o.id,username:o.username,displayName:o.display_name,shellUser:o.shell_user,role:o.role,totpEnabled:!!o.totp_enabled,created:o.created})}catch(e){if(e.message?.includes("UNIQUE constraint"))return Response.json({error:"Username already exists"},{status:409});return console.error("[Admin Users POST]",e),Response.json({error:"Internal server error"},{status:500})}}async function C(e){return y(e)}async function A(e){return x(e)}e.s(["GET",()=>C,"POST",()=>A],709814);var _=e.i(709814);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/admin/users/route",pathname:"/api/admin/users",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/admin/users/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:T,workUnitAsyncStorage:b,serverHooks:P}=N;function U(){return(0,a.patchFetch)({workAsyncStorage:T,workUnitAsyncStorage:b})}async function O(e,t,a){N.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/admin/users/route";E=E.replace(/\/index$/,"")||"/";let w=await N.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:g,params:y,nextConfig:x,parsedUrl:C,isDraftMode:A,prerenderManifest:_,routerServerContext:T,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,resolvedPathname:U,clientReferenceManifest:O,serverActionsManifest:S}=w,q=(0,i.normalizeAppPath)(E),H=!!(_.dynamicRoutes[q]||_.routes[U]),I=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,C,!1):t.end("This page could not be found"),null);if(H&&!A){let e=!!_.routes[U],t=_.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(x.experimental.adapterPath)return await I();throw new f.NoFallbackError}}let j=null;!H||N.isDev||A||(j="/index"===(j=U)?"/":j);let k=!0===N.isDev||!H,D=H&&!k;S&&O&&(0,o.setManifestsSingleton)({page:E,clientReferenceManifest:O,serverActionsManifest:S});let M=e.method||"GET",$=(0,s.getTracer)(),F=$.getActiveScopeSpan(),K={params:y,prerenderManifest:_,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:k,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:x.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>N.onRequestError(e,t,a,n,T)},sharedContext:{buildId:g}},B=new l.NodeNextRequest(e),L=new l.NodeNextResponse(t),G=u.NextRequestAdapter.fromNodeNextRequest(B,(0,u.signalFromNodeResponse)(t));try{let o=async e=>N.handle(G,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${E}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&b&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=K.renderOpts.collectedTags;if(!H)return await (0,p.sendResponse)(B,L,s,K.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,a=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:b})},!1,T),t}},d=await N.handleResponse({req:e,nextConfig:x,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:_,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!H)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",b?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&H||f.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,R.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,L,new Response(d.value.body,{headers:f,status:d.value.status||200})),null};F?await l(F):await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${E}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:b})},!1,T),H)throw t;return await (0,p.sendResponse)(B,L,new Response(null,{status:500})),null}}e.s(["handler",()=>O,"patchFetch",()=>U,"routeModule",()=>N,"serverHooks",()=>P,"workAsyncStorage",()=>T,"workUnitAsyncStorage",()=>b],866129)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__8f238bd9._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},442315,(e,t,r)=>{"use strict";t.exports=e.r(918622)},347540,(e,t,r)=>{"use strict";t.exports=e.r(442315).vendored["react-rsc"].React},819481,(e,t,r)=>{"use strict";var n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,o={},l={RequestCookies:()=>g,ResponseCookies:()=>f,parseCookie:()=>u,parseSetCookie:()=>c,stringifyCookie:()=>d};for(var p in l)n(o,p,{get:l[p],enumerable:!0});function d(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function u(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,s]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=s?s:"true"))}catch{}}return t}function c(e){if(!e)return;let[[t,r],...n]=u(e),{domain:s,expires:a,httponly:i,maxage:o,path:l,samesite:p,secure:d,partitioned:c,priority:g}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var f,x,v={name:t,value:decodeURIComponent(r),domain:s,...a&&{expires:new Date(a)},...i&&{httpOnly:!0},..."string"==typeof o&&{maxAge:Number(o)},path:l,...p&&{sameSite:h.includes(f=(f=p).toLowerCase())?f:void 0},...d&&{secure:!0},...g&&{priority:m.includes(x=(x=g).toLowerCase())?x:void 0},...c&&{partitioned:!0}};let e={};for(let t in v)v[t]&&(e[t]=v[t]);return e}}t.exports=((e,t,r,o)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let r of a(t))i.call(e,r)||void 0===r||n(e,r,{get:()=>t[r],enumerable:!(o=s(t,r))||o.enumerable});return e})(n({},"__esModule",{value:!0}),o);var h=["strict","lax","none"],m=["low","medium","high"],g=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of u(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>d(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>d(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},f=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const s=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(s)?s:function(e){if(!e)return[];var t,r,n,s,a,i=[],o=0;function l(){for(;o<e.length&&/\s/.test(e.charAt(o));)o+=1;return o<e.length}for(;o<e.length;){for(t=o,a=!1;l();)if(","===(r=e.charAt(o))){for(n=o,o+=1,l(),s=o;o<e.length&&"="!==(r=e.charAt(o))&&";"!==r&&","!==r;)o+=1;o<e.length&&"="===e.charAt(o)?(a=!0,o=s,i.push(e.substring(t,n)),t=o):o=n+1}else o+=1;(!a||o>=e.length)&&i.push(e.substring(t,e.length))}return i}(s)){const t=c(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,s=this._parsed;return s.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=d(r);t.append("set-cookie",e)}}(s,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(d).join("; ")}}},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},299357,e=>{"use strict";let t="1"===process.env.SPACES_MULTIUSER||"1"===process.env.NEXT_PUBLIC_MULTIUSER,r=!t;function n(){let n="0.0.0";try{n=e.r(804730).version}catch{}return{tier:t?"team":"community",version:n,hasAuth:t,hasAdmin:t,hasCollaboration:t,hasNetwork:!0,hasMultiuser:t,hasCortex:"1"===process.env.SPACES_HAS_CORTEX,isDesktop:r,basePath:""}}e.s(["IS_MULTIUSER",0,t,"getTierFlags",()=>n])},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.10.0-beta.4",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js","spaces-msg":"./bin/spaces-msg.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",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",prepack:"node bin/scrub-standalone.js",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:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@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","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0",otpauth:"^9.0.0",qrcode:"^1.5.0","react-resizable-panels":"^4.7.6",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"}})},908146,e=>{"use strict";var t=e.i(89171),r=e.i(299357);let n=["127.","::1","::ffff:127."];function s(e){let s;return r.IS_MULTIUSER?"admin"!==e.headers.get("x-auth-role")?t.NextResponse.json({error:"Admin required"},{status:403}):null:(s=e.headers.get("x-spaces-remote-ip")||"",n.some(e=>s.startsWith(e)))?null:t.NextResponse.json({error:"Management endpoints are restricted to localhost in desktop mode. Run in multiuser mode (SPACES_MULTIUSER=1) for remote admin."},{status:403})}e.s(["requireAdmin",()=>s])},237765,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),s=e.i(759756),a=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),p=e.i(487718),d=e.i(995169),u=e.i(47587),c=e.i(666012),h=e.i(570101),m=e.i(626937),g=e.i(10372),f=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(89171);e.i(768724);var y=e.i(793765),b=e.i(798003);async function R(e){let t=(0,y.getAuthUser)(e);return(0,y.withUser)(t,()=>{let e=(0,b.readConfig)(t);return v.NextResponse.json(e)})}async function w(t){let r=(0,y.getAuthUser)(t);return(0,y.withUser)(r,async()=>{let n=await t.json(),s={};if("boolean"==typeof n.telemetryOptOut&&(s.telemetryOptOut=n.telemetryOptOut),Array.isArray(n.devDirectories)){let{isAbsolute:t,resolve:r}=e.r(814747);s.devDirectories=n.devDirectories.filter(e=>"string"==typeof e&&t(e)).map(e=>r(e))}"boolean"==typeof n.todosEnabled&&(s.todosEnabled=n.todosEnabled);let a=(0,b.writeConfig)(r,s);return v.NextResponse.json(a)})}e.s(["GET",()=>R,"PUT",()=>w],577025);var A=e.i(577025);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/config/route",pathname:"/api/config",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/config/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:E,workUnitAsyncStorage:_,serverHooks:S}=C;function k(){return(0,n.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:_})}async function j(e,t,n){C.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/config/route";v=v.replace(/\/index$/,"")||"/";let y=await C.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:b,params:R,nextConfig:w,parsedUrl:A,isDraftMode:E,prerenderManifest:_,routerServerContext:S,isOnDemandRevalidate:k,revalidateOnlyGenerated:j,resolvedPathname:O,clientReferenceManifest:P,serverActionsManifest:U}=y,q=(0,o.normalizeAppPath)(v),T=!!(_.dynamicRoutes[q]||_.routes[O]),N=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,A,!1):t.end("This page could not be found"),null);if(T&&!E){let e=!!_.routes[O],t=_.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await N();throw new f.NoFallbackError}}let D=null;!T||C.isDev||E||(D="/index"===(D=O)?"/":D);let I=!0===C.isDev||!T,M=T&&!I;U&&P&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:P,serverActionsManifest:U});let $=e.method||"GET",H=(0,a.getTracer)(),L=H.getActiveScopeSpan(),F={params:R,prerenderManifest:_,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:I,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>C.onRequestError(e,t,n,s,S)},sharedContext:{buildId:b}},K=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),G=p.NextRequestAdapter.fromNodeNextRequest(K,(0,p.signalFromNodeResponse)(t));try{let i=async e=>C.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${v}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var a,l;let p=async({previousCacheEntry:r})=>{try{if(!o&&k&&j&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await i(s);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let p=F.renderOpts.collectedTags;if(!T)return await (0,c.sendResponse)(K,B,a,F.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);p&&(t[g.NEXT_CACHE_TAGS_HEADER]=p),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:k})},!1,S),t}},d=await C.handleResponse({req:e,nextConfig:w,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:_,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:j,responseGenerator:p,waitUntil:n.waitUntil,isMinimalMode:o});if(!T)return null;if((null==d||null==(a=d.value)?void 0:a.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&T||f.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(K,B,new Response(d.value.body,{headers:f,status:d.value.status||200})),null};L?await l(L):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${v}`,kind:a.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:k})},!1,S),T)throw t;return await (0,c.sendResponse)(K,B,new Response(null,{status:500})),null}}e.s(["handler",()=>j,"patchFetch",()=>k,"routeModule",()=>C,"serverHooks",()=>S,"workAsyncStorage",()=>E,"workUnitAsyncStorage",()=>_],237765)}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__955ab668._.js.map