@chorus-aidlc/chorus 0.14.1 → 0.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +468 -446
  3. package/.next/standalone/.next/app-path-routes-manifest.json +48 -45
  4. package/.next/standalone/.next/build-manifest.json +5 -5
  5. package/.next/standalone/.next/prerender-manifest.json +36 -36
  6. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
  7. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +2 -2
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  46. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  50. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  51. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
  54. package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
  55. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/admin/companies.html +2 -2
  57. package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
  58. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/admin.html +2 -2
  60. package/.next/standalone/.next/server/app/admin.rsc +2 -2
  61. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/mcp/route.js +2 -2
  107. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/project-visits/pin/route.js +1 -0
  120. package/.next/standalone/.next/server/app/api/project-visits/pin/route.js.nft.json +1 -0
  121. package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -0
  122. package/.next/standalone/.next/server/app/api/project-visits/route.js +1 -0
  123. package/.next/standalone/.next/server/app/api/project-visits/route.js.nft.json +1 -0
  124. package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -0
  125. package/.next/standalone/.next/server/app/api/project-visits/visit/route.js +1 -0
  126. package/.next/standalone/.next/server/app/api/project-visits/visit/route.js.nft.json +1 -0
  127. package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -0
  128. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  145. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  153. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  156. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  159. package/.next/standalone/.next/server/app/index.html +2 -2
  160. package/.next/standalone/.next/server/app/index.rsc +2 -2
  161. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/login/admin.html +2 -2
  163. package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
  164. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  165. package/.next/standalone/.next/server/app/login/callback.html +2 -2
  166. package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
  167. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
  170. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
  171. package/.next/standalone/.next/server/app/login.html +2 -2
  172. package/.next/standalone/.next/server/app/login.rsc +2 -2
  173. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  175. package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
  176. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/projects.html +2 -2
  178. package/.next/standalone/.next/server/app/projects.rsc +4 -4
  179. package/.next/standalone/.next/server/app/settings.html +2 -2
  180. package/.next/standalone/.next/server/app/settings.rsc +3 -3
  181. package/.next/standalone/.next/server/app-paths-manifest.json +48 -45
  182. package/.next/standalone/.next/server/chunks/1318.js +1 -0
  183. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  184. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  185. package/.next/standalone/.next/server/chunks/3219.js +1 -1
  186. package/.next/standalone/.next/server/chunks/3407.js +1 -0
  187. package/.next/standalone/.next/server/chunks/457.js +1 -0
  188. package/.next/standalone/.next/server/chunks/5245.js +1 -1
  189. package/.next/standalone/.next/server/chunks/595.js +1 -0
  190. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  191. package/.next/standalone/.next/server/chunks/6207.js +1 -1
  192. package/.next/standalone/.next/server/chunks/6449.js +1 -0
  193. package/.next/standalone/.next/server/chunks/6506.js +1 -1
  194. package/.next/standalone/.next/server/chunks/6515.js +2 -2
  195. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  196. package/.next/standalone/.next/server/chunks/7530.js +1 -1
  197. package/.next/standalone/.next/server/chunks/7762.js +1 -1
  198. package/.next/standalone/.next/server/chunks/8454.js +1 -1
  199. package/.next/standalone/.next/server/chunks/920.js +1 -1
  200. package/.next/standalone/.next/server/chunks/9213.js +1 -1
  201. package/.next/standalone/.next/server/chunks/9378.js +1 -1
  202. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  203. package/.next/standalone/.next/server/middleware-manifest.json +1 -1
  204. package/.next/standalone/.next/server/pages/404.html +2 -2
  205. package/.next/standalone/.next/server/pages/500.html +1 -1
  206. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  207. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  208. package/.next/standalone/.next/static/XTQkt8fOQEK4mZkZTFQ_E/_buildManifest.js +1 -0
  209. package/.next/standalone/.next/static/chunks/{11595.7784dfe509c100a4.js → 11595.fbbfc784ff9ee566.js} +1 -1
  210. package/.next/standalone/.next/static/chunks/13867-a95a4555fcb7b13b.js +1 -0
  211. package/.next/standalone/.next/static/chunks/{24537-ef5b301140cf3a58.js → 24537-7d71bf10329d1be1.js} +1 -1
  212. package/.next/standalone/.next/static/chunks/{27030-3ae1d0e29245b23e.js → 27030-19cd50b9d47b3be6.js} +1 -1
  213. package/.next/standalone/.next/static/chunks/{28680-dff79c4467712199.js → 28680-f9c5e04f67982cb6.js} +1 -1
  214. package/.next/standalone/.next/static/chunks/31308-bb4a97b3f39c22dd.js +1 -0
  215. package/.next/standalone/.next/static/chunks/{21188-43211c9e40bf0d63.js → 33277-9926b461045318b3.js} +1 -1
  216. package/.next/standalone/.next/static/chunks/{33456.3bd7ba05bd39259b.js → 33456.b67f1146831e9f2b.js} +1 -1
  217. package/.next/standalone/.next/static/chunks/37035-514bbb31cd13bda1.js +1 -0
  218. package/.next/standalone/.next/static/chunks/{42605-029b5426175cdee9.js → 39479-5af3460208d8cc56.js} +1 -1
  219. package/.next/standalone/.next/static/chunks/{4860.4803e40814d50dd0.js → 4860.3491d748fdde968e.js} +1 -1
  220. package/.next/standalone/.next/static/chunks/73510-c338cef00ca3cfaf.js +1 -0
  221. package/.next/standalone/.next/static/chunks/{78917-c0a9a11fe437a752.js → 78917-a297b76c6daa9f5d.js} +1 -1
  222. package/.next/standalone/.next/static/chunks/{99373.0457580c532530bc.js → 99373.827383575665ce2f.js} +1 -1
  223. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-12d81eedb519461c.js +1 -0
  224. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-2af5f2f159c8e32b.js +1 -0
  225. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-d1c49cfe592deeb8.js +1 -0
  226. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/{page-e5202e9b7669576c.js → page-996b8a87b4b986f1.js} +1 -1
  227. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/{page-d9323dc8b6c974f7.js → page-77771ef395e19922.js} +1 -1
  228. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/{page-20054b1cec8ed1d2.js → page-c62c7d7cf9833060.js} +1 -1
  229. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-d098269dcaa06de7.js +1 -0
  230. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page-8eea1e0cea60758f.js +1 -0
  231. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/page-658f31ac6a28ec82.js +1 -0
  232. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/page-6df01fa989cca27b.js +1 -0
  233. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  234. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-d1c49cfe592deeb8.js +1 -0
  235. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-d1c49cfe592deeb8.js +1 -0
  236. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-d1c49cfe592deeb8.js +1 -0
  237. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-d1c49cfe592deeb8.js +1 -0
  238. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  239. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-d1c49cfe592deeb8.js +1 -0
  240. package/.next/standalone/.next/static/chunks/app/api/agents/route-d1c49cfe592deeb8.js +1 -0
  241. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  242. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-d1c49cfe592deeb8.js +1 -0
  243. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-d1c49cfe592deeb8.js +1 -0
  244. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-d1c49cfe592deeb8.js +1 -0
  245. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-d1c49cfe592deeb8.js +1 -0
  246. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-d1c49cfe592deeb8.js +1 -0
  247. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-d1c49cfe592deeb8.js +1 -0
  248. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-d1c49cfe592deeb8.js +1 -0
  249. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-d1c49cfe592deeb8.js +1 -0
  250. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-d1c49cfe592deeb8.js +1 -0
  251. package/.next/standalone/.next/static/chunks/app/api/comments/route-d1c49cfe592deeb8.js +1 -0
  252. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-d1c49cfe592deeb8.js +1 -0
  253. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-d1c49cfe592deeb8.js +1 -0
  254. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-d1c49cfe592deeb8.js +1 -0
  255. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-d1c49cfe592deeb8.js +1 -0
  256. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-d1c49cfe592deeb8.js +1 -0
  257. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-d1c49cfe592deeb8.js +1 -0
  258. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-d1c49cfe592deeb8.js +1 -0
  259. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-d1c49cfe592deeb8.js +1 -0
  260. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-d1c49cfe592deeb8.js +1 -0
  261. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-d1c49cfe592deeb8.js +1 -0
  262. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-d1c49cfe592deeb8.js +1 -0
  263. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-d1c49cfe592deeb8.js +1 -0
  264. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-d1c49cfe592deeb8.js +1 -0
  265. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  266. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-d1c49cfe592deeb8.js +1 -0
  267. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-d1c49cfe592deeb8.js +1 -0
  268. package/.next/standalone/.next/static/chunks/app/api/events/route-d1c49cfe592deeb8.js +1 -0
  269. package/.next/standalone/.next/static/chunks/app/api/health/route-d1c49cfe592deeb8.js +1 -0
  270. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-d1c49cfe592deeb8.js +1 -0
  271. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-d1c49cfe592deeb8.js +1 -0
  272. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-d1c49cfe592deeb8.js +1 -0
  273. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-d1c49cfe592deeb8.js +1 -0
  274. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-d1c49cfe592deeb8.js +1 -0
  275. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  276. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-d1c49cfe592deeb8.js +1 -0
  277. package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-d1c49cfe592deeb8.js +1 -0
  278. package/.next/standalone/.next/static/chunks/app/api/mcp/route-d1c49cfe592deeb8.js +1 -0
  279. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-d1c49cfe592deeb8.js +1 -0
  280. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-d1c49cfe592deeb8.js +1 -0
  281. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-d1c49cfe592deeb8.js +1 -0
  282. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-d1c49cfe592deeb8.js +1 -0
  283. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-d1c49cfe592deeb8.js +1 -0
  284. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-d1c49cfe592deeb8.js +1 -0
  285. package/.next/standalone/.next/static/chunks/app/api/notifications/route-d1c49cfe592deeb8.js +1 -0
  286. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-d1c49cfe592deeb8.js +1 -0
  287. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-d1c49cfe592deeb8.js +1 -0
  288. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  289. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-d1c49cfe592deeb8.js +1 -0
  290. package/.next/standalone/.next/static/chunks/app/api/project-visits/pin/route-d1c49cfe592deeb8.js +1 -0
  291. package/.next/standalone/.next/static/chunks/app/api/project-visits/route-d1c49cfe592deeb8.js +1 -0
  292. package/.next/standalone/.next/static/chunks/app/api/project-visits/visit/route-d1c49cfe592deeb8.js +1 -0
  293. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-d1c49cfe592deeb8.js +1 -0
  294. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-d1c49cfe592deeb8.js +1 -0
  295. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-d1c49cfe592deeb8.js +1 -0
  296. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-d1c49cfe592deeb8.js +1 -0
  297. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-d1c49cfe592deeb8.js +1 -0
  298. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-d1c49cfe592deeb8.js +1 -0
  299. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-d1c49cfe592deeb8.js +1 -0
  300. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-d1c49cfe592deeb8.js +1 -0
  301. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-d1c49cfe592deeb8.js +1 -0
  302. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-d1c49cfe592deeb8.js +1 -0
  303. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  304. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-d1c49cfe592deeb8.js +1 -0
  305. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-d1c49cfe592deeb8.js +1 -0
  306. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-d1c49cfe592deeb8.js +1 -0
  307. package/.next/standalone/.next/static/chunks/app/api/projects/route-d1c49cfe592deeb8.js +1 -0
  308. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-d1c49cfe592deeb8.js +1 -0
  309. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-d1c49cfe592deeb8.js +1 -0
  310. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-d1c49cfe592deeb8.js +1 -0
  311. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-d1c49cfe592deeb8.js +1 -0
  312. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  313. package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  314. package/.next/standalone/.next/static/chunks/app/api/references/route-d1c49cfe592deeb8.js +1 -0
  315. package/.next/standalone/.next/static/chunks/app/api/search/route-d1c49cfe592deeb8.js +1 -0
  316. package/.next/standalone/.next/static/chunks/app/api/session/route-d1c49cfe592deeb8.js +1 -0
  317. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  318. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-d1c49cfe592deeb8.js +1 -0
  319. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-d1c49cfe592deeb8.js +1 -0
  320. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-d1c49cfe592deeb8.js +1 -0
  321. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-d1c49cfe592deeb8.js +1 -0
  322. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-d1c49cfe592deeb8.js +1 -0
  323. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-d1c49cfe592deeb8.js +1 -0
  324. package/.next/standalone/.next/static/chunks/app/onboarding/{page-ece3f647133d446e.js → page-b178eb3215360d91.js} +1 -1
  325. package/.next/standalone/.next/static/chunks/{webpack-96be8d6bd0d3d25f.js → webpack-567d9ffe31a0a5ee.js} +1 -1
  326. package/.next/standalone/.next/static/css/617133917710c831.css +1 -0
  327. package/.next/standalone/package.json +1 -1
  328. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  329. package/.next/standalone/public/chorus-plugin/bin/on-post-verify-task.sh +1 -1
  330. package/.next/standalone/public/chorus-plugin/bin/on-session-start.sh +29 -5
  331. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  332. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +17 -2
  333. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +2 -2
  334. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
  335. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  336. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
  337. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  338. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  339. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +2 -2
  340. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
  341. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +2 -2
  342. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +1 -1
  343. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
  344. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
  345. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
  346. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
  347. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +2 -2
  348. package/.next/standalone/public/kiro-plugin/.kiro/steering/chorus.md +14 -1
  349. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
  350. package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
  351. package/.next/standalone/public/skill/chorus/SKILL.md +2 -2
  352. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +1 -1
  353. package/.next/standalone/public/skill/develop-chorus/SKILL.md +2 -2
  354. package/.next/standalone/public/skill/idea-chorus/SKILL.md +1 -1
  355. package/.next/standalone/public/skill/package.json +1 -1
  356. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +1 -1
  357. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +1 -1
  358. package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +1 -1
  359. package/.next/standalone/public/skill/review-chorus/SKILL.md +1 -1
  360. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +1 -1
  361. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +3 -3
  362. package/README.ja.md +10 -10
  363. package/README.ko.md +10 -10
  364. package/README.md +10 -10
  365. package/README.zh.md +10 -10
  366. package/cli/lineage.mjs +20 -0
  367. package/package.json +1 -1
  368. package/prisma/migrations/20260718062756_add_project_visit/migration.sql +29 -0
  369. package/prisma/schema.prisma +22 -0
  370. package/.next/standalone/.next/server/chunks/2382.js +0 -1
  371. package/.next/standalone/.next/server/chunks/4797.js +0 -1
  372. package/.next/standalone/.next/server/chunks/8062.js +0 -1
  373. package/.next/standalone/.next/server/chunks/8204.js +0 -1
  374. package/.next/standalone/.next/server/chunks/9979.js +0 -1
  375. package/.next/standalone/.next/static/C9o43aSSZ0ebgki6mQ0-b/_buildManifest.js +0 -1
  376. package/.next/standalone/.next/static/chunks/43111-7a4e08dc82bb3022.js +0 -1
  377. package/.next/standalone/.next/static/chunks/4939-ff22e2b42ad57f7f.js +0 -1
  378. package/.next/standalone/.next/static/chunks/84169-5beb288902aea242.js +0 -1
  379. package/.next/standalone/.next/static/chunks/93346-1d4cd71b8713a8a6.js +0 -1
  380. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-00ff2f6753bb4603.js +0 -1
  381. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-5824e6affe244f83.js +0 -1
  382. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-55ce87d16bc689f3.js +0 -1
  383. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-c83c5d1b4599e737.js +0 -1
  384. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page-278d30ee1dd7e315.js +0 -1
  385. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/page-5a22db5f8504e61d.js +0 -1
  386. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/page-47a17dbadfbc75ad.js +0 -1
  387. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-55ce87d16bc689f3.js +0 -1
  388. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-55ce87d16bc689f3.js +0 -1
  389. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-55ce87d16bc689f3.js +0 -1
  390. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-55ce87d16bc689f3.js +0 -1
  391. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-55ce87d16bc689f3.js +0 -1
  392. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-55ce87d16bc689f3.js +0 -1
  393. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-55ce87d16bc689f3.js +0 -1
  394. package/.next/standalone/.next/static/chunks/app/api/agents/route-55ce87d16bc689f3.js +0 -1
  395. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-55ce87d16bc689f3.js +0 -1
  396. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-55ce87d16bc689f3.js +0 -1
  397. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-55ce87d16bc689f3.js +0 -1
  398. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-55ce87d16bc689f3.js +0 -1
  399. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-55ce87d16bc689f3.js +0 -1
  400. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-55ce87d16bc689f3.js +0 -1
  401. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-55ce87d16bc689f3.js +0 -1
  402. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-55ce87d16bc689f3.js +0 -1
  403. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-55ce87d16bc689f3.js +0 -1
  404. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-55ce87d16bc689f3.js +0 -1
  405. package/.next/standalone/.next/static/chunks/app/api/comments/route-55ce87d16bc689f3.js +0 -1
  406. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-55ce87d16bc689f3.js +0 -1
  407. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-55ce87d16bc689f3.js +0 -1
  408. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-55ce87d16bc689f3.js +0 -1
  409. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-55ce87d16bc689f3.js +0 -1
  410. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-55ce87d16bc689f3.js +0 -1
  411. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-55ce87d16bc689f3.js +0 -1
  412. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-55ce87d16bc689f3.js +0 -1
  413. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-55ce87d16bc689f3.js +0 -1
  414. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-55ce87d16bc689f3.js +0 -1
  415. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-55ce87d16bc689f3.js +0 -1
  416. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-55ce87d16bc689f3.js +0 -1
  417. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-55ce87d16bc689f3.js +0 -1
  418. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-55ce87d16bc689f3.js +0 -1
  419. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-55ce87d16bc689f3.js +0 -1
  420. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-55ce87d16bc689f3.js +0 -1
  421. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-55ce87d16bc689f3.js +0 -1
  422. package/.next/standalone/.next/static/chunks/app/api/events/route-55ce87d16bc689f3.js +0 -1
  423. package/.next/standalone/.next/static/chunks/app/api/health/route-55ce87d16bc689f3.js +0 -1
  424. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-55ce87d16bc689f3.js +0 -1
  425. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-55ce87d16bc689f3.js +0 -1
  426. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-55ce87d16bc689f3.js +0 -1
  427. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-55ce87d16bc689f3.js +0 -1
  428. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-55ce87d16bc689f3.js +0 -1
  429. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-55ce87d16bc689f3.js +0 -1
  430. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/wake-preview/route-55ce87d16bc689f3.js +0 -1
  431. package/.next/standalone/.next/static/chunks/app/api/ideas/conversational/route-55ce87d16bc689f3.js +0 -1
  432. package/.next/standalone/.next/static/chunks/app/api/mcp/route-55ce87d16bc689f3.js +0 -1
  433. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-55ce87d16bc689f3.js +0 -1
  434. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-55ce87d16bc689f3.js +0 -1
  435. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-55ce87d16bc689f3.js +0 -1
  436. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-55ce87d16bc689f3.js +0 -1
  437. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-55ce87d16bc689f3.js +0 -1
  438. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-55ce87d16bc689f3.js +0 -1
  439. package/.next/standalone/.next/static/chunks/app/api/notifications/route-55ce87d16bc689f3.js +0 -1
  440. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-55ce87d16bc689f3.js +0 -1
  441. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-55ce87d16bc689f3.js +0 -1
  442. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-55ce87d16bc689f3.js +0 -1
  443. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-55ce87d16bc689f3.js +0 -1
  444. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-55ce87d16bc689f3.js +0 -1
  445. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-55ce87d16bc689f3.js +0 -1
  446. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-55ce87d16bc689f3.js +0 -1
  447. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-55ce87d16bc689f3.js +0 -1
  448. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-55ce87d16bc689f3.js +0 -1
  449. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-55ce87d16bc689f3.js +0 -1
  450. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-55ce87d16bc689f3.js +0 -1
  451. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-55ce87d16bc689f3.js +0 -1
  452. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-55ce87d16bc689f3.js +0 -1
  453. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-55ce87d16bc689f3.js +0 -1
  454. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-55ce87d16bc689f3.js +0 -1
  455. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-55ce87d16bc689f3.js +0 -1
  456. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-55ce87d16bc689f3.js +0 -1
  457. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-55ce87d16bc689f3.js +0 -1
  458. package/.next/standalone/.next/static/chunks/app/api/projects/route-55ce87d16bc689f3.js +0 -1
  459. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-55ce87d16bc689f3.js +0 -1
  460. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-55ce87d16bc689f3.js +0 -1
  461. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-55ce87d16bc689f3.js +0 -1
  462. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-55ce87d16bc689f3.js +0 -1
  463. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-55ce87d16bc689f3.js +0 -1
  464. package/.next/standalone/.next/static/chunks/app/api/references/[uuid]/route-55ce87d16bc689f3.js +0 -1
  465. package/.next/standalone/.next/static/chunks/app/api/references/route-55ce87d16bc689f3.js +0 -1
  466. package/.next/standalone/.next/static/chunks/app/api/search/route-55ce87d16bc689f3.js +0 -1
  467. package/.next/standalone/.next/static/chunks/app/api/session/route-55ce87d16bc689f3.js +0 -1
  468. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-55ce87d16bc689f3.js +0 -1
  469. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-55ce87d16bc689f3.js +0 -1
  470. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-55ce87d16bc689f3.js +0 -1
  471. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-55ce87d16bc689f3.js +0 -1
  472. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-55ce87d16bc689f3.js +0 -1
  473. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-55ce87d16bc689f3.js +0 -1
  474. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-55ce87d16bc689f3.js +0 -1
  475. package/.next/standalone/.next/static/css/5f09fa856a63632f.css +0 -1
  476. /package/.next/standalone/.next/static/{C9o43aSSZ0ebgki6mQ0-b → XTQkt8fOQEK4mZkZTFQ_E}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[84169],{15972:(e,t,n)=>{n.d(t,{T:()=>s});var a=n(90508);n(1856);var r=n(24377);function s(e){let{className:t,...n}=e;return(0,a.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),...n})}},16349:(e,t,n)=>{n.d(t,{As:()=>c,OJ:()=>d});var a=n(90508),r=n(1856),s=n(91814),i=n(62990),l=n(67712);let o=(0,r.createContext)(null);function d(e){let{children:t}=e,n=(0,s.r)(),[d,c]=(0,r.useState)(null),[u,x]=(0,r.useState)(null),[m,f]=(0,r.useState)(!0),[g,h]=(0,r.useState)(null),p=(0,r.useCallback)(()=>{c(null),x(null),h("Session expired. Please log in again."),(0,i.cC)(),n.push("/login")},[n]),v=(0,r.useCallback)(async()=>{try{let e=await (0,i.tm)("/api/session");if(401===e.status&&(e=await (0,i.tm)("/api/session"),401===e.status&&await (0,i.IT)()&&(e=await (0,i.tm)("/api/session")),401===e.status))return p(),!1;let t=await e.json();if(t.success)return c(t.data.user),x(t.data.company),!0;return!1}catch(e){return!1}},[p]);(0,r.useEffect)(()=>{(async()=>{f(!0),await v(),f(!1)})()},[v]);let b=(0,r.useRef)(v);b.current=v;let j=(0,r.useRef)(!1);(0,r.useEffect)(()=>{let e=async()=>{if(!j.current){j.current=!0;try{await b.current()}finally{j.current=!1}}},t=t=>{t.persisted&&e()},n=()=>{"visible"===document.visibilityState&&e()};return window.addEventListener("pageshow",t),document.addEventListener("visibilitychange",n),()=>{window.removeEventListener("pageshow",t),document.removeEventListener("visibilitychange",n)}},[]);let w=async()=>{try{await fetch("/api/session",{method:"DELETE"}),await (0,i.ri)(),c(null),x(null),n.push("/login")}catch(e){l.q.error("Logout error:",e),(0,i.w9)(),n.push("/login")}},y=async()=>{await v()};return(0,a.jsx)(o.Provider,{value:{user:d,company:u,loading:m,error:g,logout:w,refreshSession:y},children:t})}function c(){let e=(0,r.useContext)(o);if(!e)throw Error("useAuth must be used within an AuthProvider");return e}},17001:(e,t,n)=>{n.d(t,{AM:()=>i,Wv:()=>l,hl:()=>o});var a=n(90508);n(1856);var r=n(79919),s=n(24377);function i(e){let{...t}=e;return(0,a.jsx)(r.Root,{"data-slot":"popover",...t})}function l(e){let{...t}=e;return(0,a.jsx)(r.Trigger,{"data-slot":"popover-trigger",...t})}function o(e){let{className:t,align:n="center",sideOffset:i=4,...l}=e;return(0,a.jsx)(r.Portal,{children:(0,a.jsx)(r.Content,{"data-slot":"popover-content",align:n,sideOffset:i,className:(0,s.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",t),...l})})}},21180:(e,t,n)=>{n.d(t,{V:()=>c});var a=n(90508),r=n(1856),s=n(39268),i=n(42305),l=n(22922),o=n(97438),d=n(78307);function c(e){var t;let{open:n,agentName:c,instances:u,onConfirm:x,onCancel:m}=e,f=(0,s.c)("wakeCwdPicker"),[g,h]=(0,r.useState)(null);(0,r.useEffect)(()=>{var e;n&&h(null!=(e=u[0])?e:null)},[n,u]);let p=new Set(u.map(e=>e.host)).size;return(0,a.jsx)(o.lG,{open:n,onOpenChange:e=>{e||m()},children:(0,a.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,a.jsxs)(o.c7,{className:"shrink-0",children:[(0,a.jsx)(o.L3,{children:f("title")}),(0,a.jsx)(o.rr,{children:f("subtitle",{name:c,count:u.length,hosts:p})})]}),(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:e=>{!("Enter"!==e.key||(0,i.P)(e))&&g&&(e.preventDefault(),x(g))},children:(0,a.jsx)(d.O,{instances:u,selectedConnectionUuid:null!=(t=null==g?void 0:g.connectionUuid)?t:null,onSelect:h,ariaLabel:f("title")})}),(0,a.jsxs)(o.Es,{className:"shrink-0",children:[(0,a.jsx)(l.$,{variant:"ghost",onClick:m,children:f("cancel")}),(0,a.jsx)(l.$,{disabled:!g,onClick:()=>{g&&x(g)},children:f("confirm")})]})]})})}},22922:(e,t,n)=>{n.d(t,{$:()=>o});var a=n(90508);n(1856);var r=n(49499),s=n(54154),i=n(24377);let l=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function o(e){let{className:t,variant:n="default",size:r="default",asChild:o=!1,...d}=e,c=o?s.bL:"button";return(0,a.jsx)(c,{"data-slot":"button","data-variant":n,"data-size":r,className:(0,i.cn)(l({variant:n,size:r,className:t})),...d})}},24377:(e,t,n)=>{n.d(t,{cn:()=>s});var a=n(49251),r=n(58849);function s(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,r.QP)((0,a.$)(t))}},24900:(e,t,n)=>{n.d(t,{g9:()=>i,kn:()=>s});let a="agentPresence.unknownPath",r="agentPresence.unknownHost";function s(e){var t,n;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null===e)return{label:a,title:a,isUnknown:!0};let s=null!=(t=r.tailSegments)?t:2,i=null!=(n=r.charBudget)?n:28,l=e.replace(/\\/g,"/").split("/").filter(e=>e.length>0);if(0===l.length)return{label:e,title:e,isUnknown:!1};let o=l.length>s,d=l.slice(-s),c=(e,t)=>{let n=e.join("/");return t?"".concat("…/").concat(n):n},u=d,x=o,m=c(u,x);for(;m.length>i&&u.length>1;)m=c(u=u.slice(1),x=!0);return{label:m,title:e,isUnknown:!1}}function i(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(""===e)return{label:r,title:r,isUnknown:!0};let a=null!=(t=n.charBudget)?t:18;if(e.length<=a)return{label:e,title:e,isUnknown:!1};let s=Math.max(0,a-1);return{label:"".concat(e.slice(0,s)).concat("…"),title:e,isUnknown:!1}}},30509:(e,t,n)=>{n.d(t,{HB:()=>r,JK:()=>l,XQ:()=>i,bN:()=>o,vh:()=>s});var a=n(14655);function r(e){let t=function(e){let t=window.location.origin,n=new a.O({store:window.localStorage});return{authority:e.issuer,client_id:e.clientId,redirect_uri:"".concat(t,"/login/callback"),post_logout_redirect_uri:"".concat(t,"/login"),response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,userStore:n,extraQueryParams:{company:e.companyUuid}}}(e);return new a.$5(t)}function s(e){localStorage.setItem("oidc_config",JSON.stringify(e))}function i(){let e=localStorage.getItem("oidc_config");if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function l(){localStorage.removeItem("oidc_config")}function o(e){return{sub:e.profile.sub,email:e.profile.email,name:e.profile.name,picture:e.profile.picture,accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_at,idToken:e.id_token}}},37627:(e,t,n)=>{n.d(t,{m:()=>r});var a=n(90508);function r(e){let{online:t,size:n="sm"}=e,r="md"===n?"h-2.5 w-2.5":"h-2 w-2";return t?(0,a.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex ".concat(r," items-center justify-center"),children:[(0,a.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-[#22C55E] opacity-30 motion-safe:animate-ping"}),(0,a.jsx)("span",{className:"relative inline-flex ".concat("md"===n?"h-1.5 w-1.5":"h-1 w-1"," rounded-full bg-[#22C55E]")})]}):(0,a.jsx)("span",{"aria-hidden":!0,className:"".concat(r," rounded-full bg-[#9A9A9A] opacity-60")})}n(57731)},41033:(e,t,n)=>{n.d(t,{C:()=>o,z:()=>l});var a=n(90508);n(1856);var r=n(97964),s=n(63197),i=n(24377);function l(e){let{className:t,...n}=e;return(0,a.jsx)(s.Root,{"data-slot":"radio-group",className:(0,i.cn)("grid gap-3",t),...n})}function o(e){let{className:t,...n}=e;return(0,a.jsx)(s.Item,{"data-slot":"radio-group-item",className:(0,i.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:(0,a.jsx)(s.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,a.jsx)(r.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},42305:(e,t,n)=>{n.d(t,{P:()=>a});function a(e){return("nativeEvent"in e?e.nativeEvent:e).isComposing||229===e.keyCode}},48416:(e,t,n)=>{n.d(t,{BT:()=>o,Wu:()=>d,ZB:()=>l,Zp:()=>s,aR:()=>i});var a=n(90508);n(1856);var r=n(24377);function s(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...n})}function i(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...n})}function l(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...n})}function o(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...n})}function d(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...n})}},51817:(e,t,n)=>{n.d(t,{$v:()=>g,EO:()=>u,Lt:()=>l,Rx:()=>h,Zr:()=>p,ck:()=>m,r7:()=>f,tv:()=>o,wd:()=>x});var a=n(90508);n(1856);var r=n(90299),s=n(24377),i=n(22922);function l(e){let{...t}=e;return(0,a.jsx)(r.Root,{"data-slot":"alert-dialog",...t})}function o(e){let{...t}=e;return(0,a.jsx)(r.Trigger,{"data-slot":"alert-dialog-trigger",...t})}function d(e){let{...t}=e;return(0,a.jsx)(r.Portal,{"data-slot":"alert-dialog-portal",...t})}function c(e){let{className:t,...n}=e;return(0,a.jsx)(r.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,s.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...n})}function u(e){let{className:t,size:n="default",...i}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(c,{}),(0,a.jsx)(r.Content,{"data-slot":"alert-dialog-content","data-size":n,className:(0,s.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",t),...i})]})}function x(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,s.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...n})}function m(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,s.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...n})}function f(e){let{className:t,...n}=e;return(0,a.jsx)(r.Title,{"data-slot":"alert-dialog-title",className:(0,s.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...n})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(r.Description,{"data-slot":"alert-dialog-description",className:(0,s.cn)("text-muted-foreground text-sm",t),...n})}function h(e){let{className:t,variant:n="default",size:l="default",...o}=e;return(0,a.jsx)(i.$,{variant:n,size:l,asChild:!0,children:(0,a.jsx)(r.Action,{"data-slot":"alert-dialog-action",className:(0,s.cn)(t),...o})})}function p(e){let{className:t,variant:n="outline",size:l="default",...o}=e;return(0,a.jsx)(i.$,{variant:n,size:l,asChild:!0,children:(0,a.jsx)(r.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,s.cn)(t),...o})})}},57731:(e,t,n)=>{n.d(t,{E:()=>o});var a=n(90508);n(1856);var r=n(49499),s=n(54154),i=n(24377);let l=(0,r.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function o(e){let{className:t,variant:n="default",asChild:r=!1,...o}=e,d=r?s.bL:"span";return(0,a.jsx)(d,{"data-slot":"badge","data-variant":n,className:(0,i.cn)(l({variant:n}),t),...o})}},59208:(e,t,n)=>{n.d(t,{$d:()=>d,Oj:()=>o,kz:()=>c});var a=n(90508),r=n(1856),s=n(62990),i=n(67712);let l=(0,r.createContext)(null);function o(e){let{children:t}=e,[n,o]=(0,r.useState)("loading"),[d,c]=(0,r.useState)([]),[u,x]=(0,r.useState)({}),[m,f]=(0,r.useState)(!1),[g,h]=(0,r.useState)(!1),[p,v]=(0,r.useState)(null),[b,j]=(0,r.useState)(null),w=(0,r.useRef)(new Set),y=(0,r.useRef)({}),N=(0,r.useRef)(0),k=(0,r.useRef)(!1),C=(0,r.useRef)({sawAuth401:!1,sawHealthy:!1}),A=(0,r.useCallback)(async()=>{try{let t=await (0,s.tm)("/api/agent-connections");if(!t.ok){401===t.status&&(C.current.sawAuth401=!0),o("error");return}C.current.sawHealthy=!0;let n=await t.json();if(n.success){var e;c(null!=(e=n.data.connections)?e:[]),o("ok")}else o("error")}catch(e){i.q.error("Failed to fetch agent connections:",e),o("error")}},[]),E=(0,r.useCallback)(async()=>{let e={...y.current};try{let n=await (0,s.tm)("/api/daemon/executions");if(!n.ok){401===n.status&&(C.current.sawAuth401=!0);return}C.current.sawHealthy=!0;let a=await n.json();if(a.success){var t;let n=function(e){let t={};for(let r of e){var n,a;(null!=(a=t[n=r.connectionUuid])?a:t[n]=[]).push(r)}return t}(null!=(t=a.data.executions)?t:[]);x(t=>{let a={...n};for(let n of Object.keys(y.current))y.current[n]!==e[n]&&(void 0===t[n]?delete a[n]:a[n]=t[n]);return a})}}catch(e){i.q.error("Failed to fetch daemon executions:",e)}finally{f(!0)}},[]);(0,r.useEffect)(()=>{let e=null,t=!1,n=async()=>{if(C.current={sawAuth401:!1,sawHealthy:!1},await Promise.all([A(),E()]),t)return;let{sawAuth401:n,sawHealthy:a}=C.current;n&&!a?(N.current+=1,N.current>=2&&e&&(clearInterval(e),e=null,k.current=!0,i.q.warn("Agent-presence poll paused: session appears dead (consecutive 401 ticks). Will re-arm on next visibility."))):a&&(N.current=0)},a=()=>{k.current=!1,N.current=0,n(),e=setInterval(n,15e3)},r=()=>{"visible"===document.visibilityState&&k.current&&!t&&a()};return a(),document.addEventListener("visibilitychange",r),()=>{t=!0,e&&clearInterval(e),document.removeEventListener("visibilitychange",r)}},[A,E]),(0,r.useEffect)(()=>{let e=null;function t(){n(),(e=new EventSource(!p?"/api/events":"/api/events?sessionUuid=".concat(encodeURIComponent(p)))).onmessage=e=>{let t=null;try{t=JSON.parse(e.data)}catch(e){return}if(t&&!function(e,t){if("transcript"!==e.type)return!1;for(let n of t)n(e);return!0}(t,w.current)&&"execution"===t.type){var n;let e=t;y.current[e.connectionUuid]=(null!=(n=y.current[e.connectionUuid])?n:0)+1,x(t=>(function(e,t){let n={...e};return 0===t.executions.length?delete n[t.connectionUuid]:n[t.connectionUuid]=t.executions,n})(t,e))}},e.onerror=()=>{}}function n(){e&&(e.close(),e=null)}function a(){"visible"===document.visibilityState&&(e&&e.readyState===EventSource.OPEN||(t(),E()))}return t(),document.addEventListener("visibilitychange",a),()=>{n(),document.removeEventListener("visibilitychange",a)}},[E,p]);let U=(0,r.useMemo)(()=>d.filter(e=>"online"===e.effectiveStatus).length,[d]),S=(0,r.useCallback)(e=>(w.current.add(e),()=>{w.current.delete(e)}),[]),F=(0,r.useCallback)((e,t)=>{j(t?{agentUuid:e,pin:t}:{agentUuid:e}),h(!0)},[]),T=(0,r.useCallback)(e=>{j({agentUuid:e.agentUuid,sessionUuid:e.uuid,sessionSeed:e}),h(!0)},[]),z=(0,r.useCallback)(()=>{j(null)},[]),_=(0,r.useMemo)(()=>({status:n,connections:d,onlineCount:U,executionsByConnection:u,executionsLoaded:m,modalOpen:g,setModalOpen:h,openSession:p,setOpenSession:v,subscribeTranscript:S,focusTarget:b,openChatForAgent:F,openChatForSession:T,clearChatFocusTarget:z,refreshConnections:A}),[n,d,U,u,m,g,p,S,b,F,T,z,A]);return(0,a.jsx)(l.Provider,{value:_,children:t})}function d(){let e=(0,r.useContext)(l);if(!e)throw Error("useAgentPresence must be used within an AgentPresenceProvider");return e}function c(){return(0,r.useContext)(l)}},62990:(e,t,n)=>{n.d(t,{IT:()=>d,cC:()=>u,hj:()=>i,ri:()=>x,tm:()=>c,w9:()=>l});var a=n(30509);let r=null;function s(){if(!r){let e=(0,a.XQ)();e&&(r=(0,a.HB)(e))}return r}function i(e){return(0,a.vh)(e),r=(0,a.HB)(e)}function l(){r=null}async function o(){let e=s();if(!e)return null;try{return await e.getUser()}catch(e){return null}}async function d(){let e=await o();if(!(null==e?void 0:e.refresh_token)||!e.access_token)return!1;try{return(await fetch("/api/auth/sync-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e.access_token,refreshToken:e.refresh_token})})).ok}catch(e){return!1}}async function c(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fetch(e,{...t,credentials:"same-origin"})}async function u(){let e=s();if(e)try{await e.removeUser()}catch(e){}l(),(0,a.JK)()}async function x(){try{await fetch("/api/auth/logout",{method:"POST"})}catch(e){}let e=s();if(e)try{await e.removeUser()}catch(e){}l(),(0,a.JK)()}},64993:(e,t,n)=>{n.d(t,{F:()=>i});var a=n(90508);n(1856);var r=n(65326),s=n(24377);function i(e){let{className:t,children:n,...i}=e;return(0,a.jsxs)(r.Root,{"data-slot":"scroll-area",className:(0,s.cn)("relative",t),...i,children:[(0,a.jsx)(r.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:n}),(0,a.jsx)(l,{}),(0,a.jsx)(r.Corner,{})]})}function l(e){let{className:t,orientation:n="vertical",...i}=e;return(0,a.jsx)(r.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:n,className:(0,s.cn)("flex touch-none p-px transition-colors select-none","vertical"===n&&"h-full w-2.5 border-l border-l-transparent","horizontal"===n&&"h-2.5 flex-col border-t border-t-transparent",t),...i,children:(0,a.jsx)(r.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}},67712:(e,t,n)=>{n.d(t,{q:()=>l});var a=n(55036);let r={debug:0,info:1,warn:2,error:3},s=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function i(e){return r[e]>=r[s]}let l={debug:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];i("debug")&&console.debug("[Chorus] ".concat(e),...n)},info:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];i("info")&&console.info("[Chorus] ".concat(e),...n)},warn:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];i("warn")&&console.warn("[Chorus] ".concat(e),...n)},error:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),a=1;a<t;a++)n[a-1]=arguments[a];i("error")&&console.error("[Chorus] ".concat(e),...n)}}},78307:(e,t,n)=>{n.d(t,{C:()=>u,O:()=>f});var a=n(90508),r=n(1856),s=n(39268),i=n(71388),l=n(41033),o=n(24377),d=n(24900),c=n(37627);function u(e){return e.filter(e=>"online"===e.effectiveStatus)}function x(e){let{cwd:t,formatOptions:n}=e,r=(0,s.c)(),l=(0,d.kn)(t,n),c=l.isUnknown?r(l.label):l.label,u=l.isUnknown?r(l.title):l.title;return(0,a.jsxs)("span",{title:u,className:(0,o.cn)("inline-flex min-w-0 items-center gap-1.5 rounded-md border border-border bg-background px-2 py-0.5","font-mono text-xs",l.isUnknown?"text-muted-foreground italic":"text-foreground"),children:[(0,a.jsx)(i.A,{className:"size-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,a.jsx)("span",{className:"truncate",children:c})]})}function m(e){let{host:t,formatOptions:n}=e,r=(0,s.c)(),i=(0,d.g9)(t,n),l=i.isUnknown?r(i.label):i.label,o=i.isUnknown?r(i.title):i.title;return(0,a.jsx)("span",{title:o,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:l})}function f(e){let{instances:t,selectedConnectionUuid:n,onSelect:i,className:d,cwdFormatOptions:u,hostFormatOptions:f,ariaLabel:g}=e,h=(0,s.c)("mentionInstance"),p=(0,r.useMemo)(()=>new Set(t.map(e=>e.host)).size>1,[t]),v=1===t.length?t[0]:null;return((0,r.useEffect)(()=>{v&&n!==v.connectionUuid&&i(v)},[v,n]),0===t.length)?(0,a.jsx)("div",{className:(0,o.cn)("py-2 text-xs text-muted-foreground",d),children:h("noInstances")}):(0,a.jsx)(l.z,{"aria-label":null!=g?g:h("title"),value:null!=n?n:void 0,onValueChange:e=>{let n=t.find(t=>t.connectionUuid===e);n&&i(n)},className:(0,o.cn)("gap-1.5",d),children:t.map(e=>{var t;let r=n===e.connectionUuid;return(0,a.jsxs)("div",{role:"presentation",tabIndex:-1,onClick:()=>i(e),className:(0,o.cn)("flex items-center gap-2.5 rounded-md border px-2.5 py-2 transition-colors","cursor-pointer border-border hover:bg-background",r&&"border-primary bg-background"),children:[(0,a.jsx)("span",{className:"flex shrink-0 items-center","aria-hidden":!0,children:(0,a.jsx)(c.m,{online:!0})}),(0,a.jsxs)("span",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,a.jsx)(x,{cwd:e.cwd,formatOptions:u}),p&&(0,a.jsx)(m,{host:e.host,formatOptions:f})]}),(0,a.jsx)(l.C,{value:e.connectionUuid,"aria-label":null!=(t=e.cwd)?t:void 0,className:"shrink-0"})]},e.connectionUuid)})})}},81750:(e,t,n)=>{n.d(t,{Ke:()=>o,Nt:()=>i,R6:()=>l});var a=n(90508),r=n(38476),s=n(24377);function i(e){let{...t}=e;return(0,a.jsx)(r.Root,{"data-slot":"collapsible",...t})}function l(e){let{...t}=e;return(0,a.jsx)(r.Trigger,{"data-slot":"collapsible-trigger",...t})}function o(e){let{className:t,...n}=e;return(0,a.jsx)(r.Content,{"data-slot":"collapsible-content",className:(0,s.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",t),...n})}},84169:(e,t,n)=>{n.d(t,{MH:()=>e4,u:()=>_,jQ:()=>O,fF:()=>eC,jH:()=>eA,Bs:()=>ek,lb:()=>Y,wL:()=>ee,A4:()=>z,Gm:()=>e6,md:()=>u.m,Jk:()=>A,fb:()=>E,c0:()=>S,le:()=>s});var a=n(1856),r=n(39268);function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,[t,n]=(0,a.useState)(()=>Date.now());return(0,a.useEffect)(()=>{let t=setInterval(()=>n(Date.now()),e);return()=>clearInterval(t)},[e]),t}function i(){let e=(0,r.c)("time");return(0,a.useCallback)((t,n)=>{let a=n-new Date(t).getTime(),r=Math.floor(a/6e4),s=Math.floor(a/36e5),i=Math.floor(a/864e5);return r<1?e("justNow"):r<60?e("minutesAgo",{minutes:r}):s<24?e("hoursAgo",{hours:s}):e("daysAgo",{days:i})},[e])}function l(e){return e<10?"0".concat(e):String(e)}function o(){let e=(0,r.c)("agentConnections");return(0,a.useCallback)((t,n)=>{let a=Math.floor(Math.max(0,n-new Date(t).getTime())/1e3),r=Math.floor(a/86400),s=Math.floor(a%86400/3600),i=Math.floor(a%3600/60),o="".concat(l(s),":").concat(l(i),":").concat(l(a%60));return r>0?e("uptimeMonoDays",{days:r,time:o}):o},[e])}function d(){let e=(0,r.c)("agentConnections");return(0,a.useCallback)(t=>{switch(t){case"claude_code":return e("clientClaudeCode");case"openclaw":return e("clientOpenclaw");case"codex":return e("clientCodex");case"kiro":return e("clientKiro");default:return e("clientUnknown")}},[e])}function c(e){if(!e.projectUuid)return null;switch(e.entityType){case"task":return"/projects/".concat(e.projectUuid,"/tasks/").concat(e.entityUuid);case"idea":return"/projects/".concat(e.projectUuid,"/dashboard?panel=").concat(e.entityUuid);case"proposal":return"/projects/".concat(e.projectUuid,"/proposals/").concat(e.entityUuid);case"document":return"/projects/".concat(e.projectUuid,"/documents/").concat(e.entityUuid);default:return null}}var u=n(37627),x=n(90508),m=n(5425),f=n(93134),g=n(57731),h=n(24900),p=n(51509),v=n(71388),b=n(68842),j=n(17730),w=n(22922);function y(e){let t=null==e?void 0:e.trim();return t?t.toLocaleLowerCase("en-US"):"￿"}function N(e){return null===e?"￿":e}function k(e,t){return e<t?-1:+(e>t)}function C(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return[...e].sort((e,n)=>{var a,r;return U(e,null!=(a=t[e.uuid])?a:[])-U(n,null!=(r=t[n.uuid])?r:[])||k(y(e.agentName),y(n.agentName))||k(e.agentUuid,n.agentUuid)||k(N(e.cwd),N(n.cwd))||k(e.host,n.host)||k(e.clientType,n.clientType)||k(e.uuid,n.uuid)})}function A(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=C(e,t),a=[],r=new Map;for(let e of n)r.has(e.agentUuid)||(r.set(e.agentUuid,[]),a.push(e.agentUuid)),r.get(e.agentUuid).push(e);return a.map(e=>{let t=r.get(e),n=new Set(t.map(e=>e.host)).size>1;return{agentUuid:e,agentName:t[0].agentName,clientType:t[0].clientType,connections:t,onlineCount:t.filter(e=>"online"===e.effectiveStatus).length,multiHost:n,singleHost:n?void 0:t[0].host}})}function E(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return C(e.filter(e=>"online"===e.effectiveStatus),t)}function U(e,t){return"online"!==e.effectiveStatus?3:t.some(e=>"running"===e.status)?0:t.some(e=>"queued"===e.status)?1:2}function S(e,t,n){let a=(0,r.c)("agentPresence.drilldown"),s=o(),l=i(),d=function(e,t){if("online"!==e.effectiveStatus)return{state:"offline",runningStartedAt:null,queuedCount:0};let n=t.filter(e=>"running"===e.status),a=t.filter(e=>"queued"===e.status);if(n.length>0){var r;let e=[...n].sort((e,t)=>{var n,a;return(null!=(n=e.startedAt)?n:e.createdAt).localeCompare(null!=(a=t.startedAt)?a:t.createdAt)})[0];return{state:"running",runningStartedAt:null!=(r=e.startedAt)?r:e.createdAt,queuedCount:a.length}}return a.length>0?{state:"queued",runningStartedAt:null,queuedCount:a.length}:{state:"idle",runningStartedAt:null,queuedCount:0}}(e,t);switch(d.state){case"offline":return{text:a("offlineSince",{time:l(e.lastSeenAt,n)}),dot:(0,x.jsx)(u.m,{online:!1,size:"md"})};case"running":return{text:a("runningFor",{time:d.runningStartedAt?s(d.runningStartedAt,n):""}),dot:(0,x.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 rounded-full bg-primary"})};case"queued":return{text:a("queuedCount",{count:d.queuedCount}),dot:(0,x.jsx)(u.m,{online:!0,size:"md"})};default:return{text:a("idle"),dot:(0,x.jsx)(u.m,{online:!0,size:"md"})}}}function F(e){let{cwd:t,formatOptions:n}=e,a=(0,r.c)("agentPresence"),s=(0,h.kn)(null!=t?t:null,n),i=s.isUnknown?a("unknownPath"):s.label,l=s.isUnknown?a("unknownPath"):s.title,o=s.isUnknown?p.A:v.A;return(0,x.jsxs)("span",{title:l,className:"inline-flex min-w-0 items-center gap-1.5 rounded-md bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-1",children:[(0,x.jsx)(o,{className:"h-3.5 w-3.5 shrink-0 text-[#9A8E7E]","aria-hidden":!0}),(0,x.jsx)("span",{className:"min-w-0 truncate font-mono text-[12px] font-semibold ".concat(s.isUnknown?"text-muted-foreground":"text-[#3A3631]"),children:i})]})}function T(e){let{host:t}=e,n=(0,r.c)("agentPresence"),a=(0,h.g9)(t),s=a.isUnknown?n("unknownHost"):a.label,i=a.isUnknown?n("unknownHost"):a.title;return(0,x.jsxs)("span",{title:i,className:"inline-flex min-w-0 max-w-[140px] shrink items-center gap-1 truncate font-mono text-[11px] text-muted-foreground",children:[(0,x.jsx)(b.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,x.jsx)("span",{className:"truncate",children:s})]})}function z(e){let{connection:t,showHost:n,activity:a,dot:r}=e,s="online"===t.effectiveStatus,i=n||!!a;return(0,x.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,x.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[(0,x.jsx)(F,{cwd:t.cwd}),i&&(0,x.jsxs)("div",{className:"flex min-w-0 items-center gap-1.5 pl-0.5",children:[n&&(0,x.jsx)(T,{host:t.host}),n&&a&&(0,x.jsx)("span",{"aria-hidden":!0,className:"shrink-0 text-[11px] text-[#C9C2B6]",children:"\xb7"}),a&&(0,x.jsx)("span",{className:"min-w-0 truncate text-[11px] text-muted-foreground",children:a})]})]}),(0,x.jsx)("span",{className:"shrink-0",children:null!=r?r:(0,x.jsx)(u.m,{online:s,size:"md"})})]})}function _(e){var t,n;let{group:a,expanded:s,onToggle:i}=e,l=(0,r.c)("agentPresence"),o=(0,r.c)("agentPresence.drilldown"),c=(0,r.c)("agentConnections"),f=d(),g=(null==(t=a.agentName)?void 0:t.trim())||c("unknownAgent"),h=a.onlineCount>0,p="function"==typeof i,v=new Set(a.connections.map(e=>e.host)).size,b=""===a.singleHost?l("unknownHost"):null!=(n=a.singleHost)?n:"",y=a.multiHost?"".concat(f(a.clientType)," \xb7 ").concat(o("hostsCount",{count:v})):"".concat(f(a.clientType)," \xb7 ").concat(b),N=(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(j.A,{className:"h-4 w-4 shrink-0 text-[#B7AE9F] transition-transform ".concat(p&&s?"rotate-180":""),"aria-hidden":!0}),(0,x.jsx)("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-lg",style:{backgroundColor:h?"#C67A5214":"#9A9A9A14"},children:(0,x.jsx)(m.A,{className:"h-5 w-5",style:{color:h?"#C67A52":"#9A9A9A"},"aria-hidden":!0})}),(0,x.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,x.jsx)("div",{className:"truncate text-[14px] font-semibold text-foreground",children:g}),(0,x.jsx)("div",{className:"mt-0.5 truncate text-[12px] text-muted-foreground",children:y})]}),(0,x.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[(0,x.jsx)("span",{className:"text-[12px] text-muted-foreground",children:o("instancesCount",{count:a.connections.length})}),(0,x.jsx)(u.m,{online:h,size:"md"})]})]});return p?(0,x.jsx)(w.$,{type:"button",variant:"ghost",onClick:i,"aria-expanded":s,"aria-label":o(s?"collapseAgent":"expandAgent",{agent:g}),className:"flex h-auto w-full items-center justify-start gap-2.5 rounded-lg px-1.5 py-1 hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]",children:N}):(0,x.jsx)("div",{className:"flex items-center gap-2.5",children:N})}function M(e){var t,n;let{connection:a,size:s}=e,i=(0,r.c)("agentConnections"),l=d(),o="online"===a.effectiveStatus,c=o?m.A:f.A,u=(null==(t=a.agentName)?void 0:t.trim())||i("unknownAgent"),p=null!=(n=a.clientVersion)?n:i("versionUnknown"),v=(0,h.g9)(a.host),b=v.isUnknown?i("hostUnknown"):v.label,j=v.isUnknown?i("hostUnknown"):v.title;return(0,x.jsxs)("div",{className:"flex min-w-0 items-center gap-3",children:[(0,x.jsx)("div",{className:"".concat("lg"===s?"h-12 w-12":"md"===s?"h-10 w-10":"h-9 w-9"," ").concat("lg"===s?"rounded-xl":"rounded-lg"," flex shrink-0 items-center justify-center"),style:{backgroundColor:o?"#C67A5214":"#9A9A9A14"},children:(0,x.jsx)(c,{className:"lg"===s?"h-6 w-6":"md"===s?"h-5 w-5":"h-4 w-4",style:{color:o?"#C67A52":"#9A9A9A"}})}),(0,x.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,x.jsx)("div",{className:"truncate font-semibold text-foreground ".concat("lg"===s?"text-[20px]":"md"===s?"text-[16px]":"text-[14px]"),children:u}),(0,x.jsxs)("div",{className:"mt-1 flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",children:[(0,x.jsx)(F,{cwd:a.cwd}),(0,x.jsx)(g.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-2 py-0.5 text-[10px] font-medium text-muted-foreground",children:l(a.clientType)}),(0,x.jsxs)("span",{title:j,className:"truncate font-mono text-[11px] text-muted-foreground",children:["v",p," \xb7 ",b]})]})]})]})}var I=n(78307);n(21180);var B=n(24377);function O(e){let{cwd:t,host:n,showHost:a=!0,className:s}=e,i=(0,r.c)(),l=(0,h.kn)(t),o=l.isUnknown?i(l.label):l.label,d=l.isUnknown?i(l.title):l.title,c=(0,h.g9)(n),u=c.isUnknown?i(c.label):c.label,m=c.isUnknown?i(c.title):c.title;return(0,x.jsxs)("span",{className:(0,B.cn)("inline-flex min-w-0 items-center gap-1.5",s),children:[(0,x.jsxs)("span",{title:d,className:(0,B.cn)("inline-flex min-w-0 items-center gap-1 rounded border border-border bg-background px-1.5 py-0.5","font-mono text-[10px]",l.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),children:[(0,x.jsx)(v.A,{className:"size-2.5 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,x.jsx)("span",{className:"truncate",children:o})]}),a&&(0,x.jsx)("span",{title:m,className:"shrink-0 truncate font-mono text-[10px] text-muted-foreground",children:u})]})}var q=n(67587),L=n(12790),D=n.n(L),R=n(13142),P=n(85226),H=n(59133),$=n(88591),K=n(43057),J=n(20578),V=n(10263),W=n(51817),Z=n(62990),G=n(67712);function Q(e){var t;let{exec:n}=e,s=(0,r.c)("agentConnections"),i=(0,r.c)("common"),[l,o]=(0,a.useState)(!1),[d,c]=(0,a.useState)(!1),u=(null==(t=n.entityTitle)?void 0:t.trim())||s("execEntityUnknown"),m=async()=>{c(!0);try{let e=await (0,Z.tm)("/api/daemon/control",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"interrupt",targetConnectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=s("interruptError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}q.oR.error(t);return}q.oR.success(s("interruptSuccess",{title:u})),o(!1)}catch(e){G.q.error("Failed to request daemon interrupt:",e),q.oR.error(s("interruptError"))}finally{c(!1)}};return(0,x.jsxs)(W.Lt,{open:l,onOpenChange:e=>!d&&o(e),children:[(0,x.jsx)(W.tv,{asChild:!0,children:(0,x.jsxs)(w.$,{variant:"ghost",size:"sm","aria-label":s("interruptAria"),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E] hover:bg-[#FEF3C7] dark:hover:bg-[#33270f] hover:text-[#92400E]",children:[(0,x.jsx)(R.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),s("interrupt")]})}),(0,x.jsxs)(W.EO,{children:[(0,x.jsxs)(W.wd,{children:[(0,x.jsx)(W.r7,{children:s("interruptConfirmTitle")}),(0,x.jsx)(W.$v,{children:s("interruptConfirmBody",{title:u})})]}),(0,x.jsxs)(W.ck,{children:[(0,x.jsx)(W.Zr,{disabled:d,children:i("cancel")}),(0,x.jsx)(W.Rx,{variant:"destructive",disabled:d,onClick:e=>{e.preventDefault(),m()},children:d?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(P.A,{className:"mr-2 h-4 w-4 motion-safe:animate-spin","aria-hidden":!0}),s("interrupting")]}):s("interruptConfirmAction")})]})]})]})}function X(e){var t;let{exec:n}=e,s=(0,r.c)("agentConnections"),[i,l]=(0,a.useState)(!1),o=(null==(t=n.entityTitle)?void 0:t.trim())||s("execEntityUnknown"),d=async()=>{l(!0);try{let e=await (0,Z.tm)("/api/daemon/resume",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:n.connectionUuid,entityType:n.entityType,entityUuid:n.entityUuid})});if(!e.ok){let t=s("resumeError");try{let n=await e.json();n&&"string"==typeof n.error&&n.error&&(t=n.error)}catch(e){}q.oR.error(t);return}q.oR.success(s("resumeSuccess",{title:o}))}catch(e){G.q.error("Failed to request daemon resume:",e),q.oR.error(s("resumeError"))}finally{l(!1)}};return(0,x.jsxs)(w.$,{variant:"ghost",size:"sm",disabled:i,"aria-label":s("resumeAria"),onClick:()=>void d(),className:"h-7 shrink-0 gap-1.5 rounded-lg px-2.5 text-[12px] font-medium text-[#15803D] dark:text-[#4FD07A] hover:bg-[#DCFCE7] dark:hover:bg-[#13291d] hover:text-[#166534]",children:[i?(0,x.jsx)(P.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,x.jsx)(H.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),i?s("resuming"):s("resume")]})}function Y(e){var t,n;let{exec:s,nowMs:i,layout:l="inline"}=e,d=(0,r.c)("agentConnections"),u=o(),m=function(){let e=(0,r.c)("agentConnections");return(0,a.useCallback)(t=>{switch(t){case"task":return e("entityTask");case"idea":return e("entityIdea");case"proposal":return e("entityProposal");case"document":return e("entityDocument");case"daemon_session":return e("entityConversation");default:return e("entityUnknown")}},[e])}(),h="running"===s.status,p="interrupted"===s.status,v=p&&"user"===s.interruptedReason,b="stacked"===l,j="daemon_session"===s.entityType,w=j?(null==(t=s.entityTitle)?void 0:t.trim())||d("execConversation"):(null==(n=s.entityTitle)?void 0:n.trim())||d("execEntityUnknown"),y=c(s),N=b?"line-clamp-2":"truncate",k=(0,x.jsx)("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg ".concat(h?"bg-primary/[0.08]":p?"bg-[#FEF3C7] dark:bg-[#33270f]":"bg-[#F0EDE8] dark:bg-[#1f1e1c]"),"aria-hidden":!0,children:h?(0,x.jsx)(P.A,{className:"h-4 w-4 text-primary motion-safe:animate-spin"}):p?(0,x.jsx)($.A,{className:"h-4 w-4 text-[#B45309] dark:text-[#E0A34E]"}):(0,x.jsx)(f.A,{className:"h-4 w-4 text-muted-foreground"})}),C=(0,x.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,x.jsxs)("div",{className:"flex items-center gap-1.5",children:[j?(0,x.jsx)(K.A,{className:"h-3.5 w-3.5 shrink-0 text-primary","aria-hidden":!0}):(0,x.jsx)(g.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 text-[10px] font-medium text-muted-foreground",children:m(s.entityType)}),y?(0,x.jsxs)(D(),{href:y,className:"group inline-flex min-w-0 items-center gap-1.5 ".concat(N," text-[14px] font-medium text-foreground hover:text-primary"),children:[(0,x.jsx)("span",{className:N,children:w}),(0,x.jsx)(J.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C8C3BA] group-hover:text-primary"})]}):(0,x.jsx)("span",{className:"block ".concat(N," text-[14px] font-medium ").concat(j?"text-foreground":"text-muted-foreground"),children:w})]}),s.rootIdeaTitle&&(0,x.jsxs)("div",{className:"mt-1 flex items-center gap-1.5",children:[(0,x.jsx)(V.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,x.jsx)("span",{className:"".concat(b?"":"truncate"," text-[11px] text-[#9A8C7E]"),children:d("execSession",{idea:s.rootIdeaTitle})})]})]}),A=h?(0,x.jsxs)(x.Fragment,{children:[s.startedAt&&(0,x.jsx)("span",{className:"font-mono text-[12px] font-medium tabular-nums text-[#15803D] dark:text-[#4FD07A]",title:d("execElapsedLabel"),children:u(s.startedAt,i)}),(0,x.jsx)(Q,{exec:s})]}):p?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsxs)(g.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#FEF3C7] dark:bg-[#33270f] px-2 py-0.5 text-[10px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,x.jsx)($.A,{className:"h-3 w-3","aria-hidden":!0}),d(v?"execInterruptedUser":"execInterruptedCrash")]}),(0,x.jsx)(X,{exec:s})]}):(0,x.jsx)("span",{className:"text-[11px] font-medium text-muted-foreground",children:d("execWaiting")});return b?(0,x.jsxs)("li",{className:"flex flex-col gap-2 rounded-xl border border-border bg-card px-3.5 py-3",children:[(0,x.jsxs)("div",{className:"flex items-start gap-3",children:[k,C]}),(0,x.jsx)("div",{className:"flex flex-wrap items-center gap-2 pl-11",children:A})]}):(0,x.jsxs)("li",{className:"flex items-center gap-3 rounded-xl border border-border bg-card px-3.5 py-3",children:[k,C,h||p?(0,x.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:A}):(0,x.jsx)("span",{className:"shrink-0 text-[11px] font-medium text-muted-foreground",children:d("execWaiting")})]})}function ee(e){let{icon:t,label:n,count:a,children:r}=e;return(0,x.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,x.jsxs)("div",{className:"flex items-center gap-2",children:[(0,x.jsx)(t,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,x.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-muted-foreground",children:n}),(0,x.jsx)(g.E,{variant:"secondary",className:"border-0 bg-[#F0EDE8] dark:bg-[#1f1e1c] px-1.5 py-0 font-mono text-[10px] font-medium text-[#9A8C7E]",children:a})]}),(0,x.jsx)("ul",{className:"flex flex-col gap-2",children:r})]})}var et=n(88853),en=n(50153),ea=n(5329),er=n(15972),es=n(91846),ei=n(42305);function el(e){return e.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}})}async function eo(e,t){return em(e,t)}function ed(e){let{value:t,onChange:n,onSend:a,pending:s,disabled:i,disabledReason:l,placeholder:o,sendLabel:d,layout:c,controllableExecution:u}=e,m=(0,r.c)("agentConnections"),f=0===t.trim().length,g=i||s||f,h=(0,x.jsxs)(w.$,{type:"button",size:"sm",onClick:a,disabled:g,"aria-label":d,className:"h-8 shrink-0 gap-1.5 rounded-lg bg-primary px-3.5 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[s?(0,x.jsx)(P.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,x.jsx)(et.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),d]}),p=null!=u?u:null,v=p?"running"===p.status?(0,x.jsx)(Q,{exec:p}):"interrupted"===p.status&&"user"===p.interruptedReason?(0,x.jsx)(X,{exec:p}):"interrupted"===p.status&&"crash"===p.interruptedReason?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)("span",{className:"text-[11px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:m("execCrashExited")}),(0,x.jsx)(X,{exec:p})]}):null:null,b=(0,x.jsxs)("div",{className:"absolute bottom-2 right-2 z-10 flex shrink-0 items-center gap-2",children:[v,h]}),j=i?(0,x.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,x.jsx)(en.A,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,x.jsx)("span",{className:"min-w-0",children:l})]}):null;return(0,x.jsxs)("div",{className:"flex flex-col gap-2.5",children:[j,(0,x.jsxs)("div",{className:"relative",children:[(0,x.jsx)(er.T,{value:t,onChange:e=>n(e.target.value),onKeyDown:e=>{(0,ei.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),g||a())},disabled:i||s,placeholder:o,rows:3,className:"min-h-[76px] resize-none rounded-xl border-border bg-card pb-12 text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),b]})]})}function ec(e){let{sessionUuid:t,originOnline:n,layout:s="inline",controllableExecution:i,agentUuid:l,onlineConnections:o=[],onSessionStarted:d}=e,c=(0,r.c)("agentConnections"),u=(0,r.c)("daemonChat"),[m,f]=(0,a.useState)(""),[g,h]=(0,a.useState)(!1),[p,v]=(0,a.useState)(!1),b=!n&&!!l&&o.length>0,j=async()=>{let e=m.trim();if(0!==e.length){h(!0);try{let n=await (0,Z.tm)("/api/daemon-sessions/".concat(t,"/instruction"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({instructionText:e})});if(!n.ok)return void q.oR.error(await em(n,c("instructionError")));f("")}catch(e){G.q.error("Failed to send daemon instruction:",e),q.oR.error(c("instructionError"))}finally{h(!1)}}};return(0,x.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,x.jsx)(ed,{value:m,onChange:f,onSend:j,pending:g,disabled:!n,disabledReason:n?null:u("originOfflineNote"),placeholder:u("replyPlaceholder"),sendLabel:c("send"),layout:s,controllableExecution:i}),b&&(p?(0,x.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,x.jsx)("span",{className:"text-[12px] font-medium text-muted-foreground",children:u("continueOnlineHelp")}),(0,x.jsx)(eu,{sessionUuid:t,onlineConnections:o,layout:s,onRepointed:d})]}):(0,x.jsxs)(w.$,{type:"button",variant:"outline",size:"sm",onClick:()=>v(!0),className:"h-8 w-fit gap-1.5 rounded-lg border-[#E5D5C6] dark:border-[#33302a] bg-card text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-[#A65F3C]",children:[(0,x.jsx)(ea.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),u("continueOnlineAction")]}))]})}function eu(e){var t,n,s;let{sessionUuid:i,onlineConnections:l,layout:o,onRepointed:d}=e,c=(0,r.c)("agentConnections"),u=(0,r.c)("assignInstance"),m=(0,r.c)("daemonChat"),f=(0,a.useMemo)(()=>l.map(e=>{var t,n;return{connectionUuid:e.uuid,host:null!=(t=e.host)?t:"",cwd:null!=(n=e.cwd)?n:null,effectiveStatus:e.effectiveStatus}}),[l]),[g,p]=(0,a.useState)(null!=(n=null==(t=l[0])?void 0:t.uuid)?n:""),[v,b]=(0,a.useState)(""),[j,w]=(0,a.useState)(!1),y=null!=(s=f.find(e=>e.connectionUuid===g&&"online"===e.effectiveStatus))?s:null,N=(0,a.useMemo)(()=>new Set(f.map(e=>e.host)).size>1,[f]),k=async()=>{let e=v.trim();if(g&&0!==e.length){w(!0);try{let n=await (0,Z.tm)("/api/daemon-sessions/".concat(i,"/repoint"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({connectionUuid:g,instructionText:e})});if(!n.ok)return void q.oR.error(await em(n,c("instructionError")));let a=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(a=e.data.session)}catch(e){}q.oR.success(m("continueOnlineStarted")),b(""),a&&(null==d||d(a))}catch(e){G.q.error("Failed to re-point daemon session:",e),q.oR.error(c("instructionError"))}finally{w(!1)}}},C=(()=>{if(!y)return null;let e=(0,h.kn)(y.cwd),t=e.isUnknown?u(e.label):e.label;if(N){let e=(0,h.g9)(y.host),n=e.isUnknown?u(e.label):e.label;return u("sendingToWithHost",{path:t,host:n})}return u("sendingTo",{path:t})})();return(0,x.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[(0,x.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,x.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:u("workingDirectory")}),(0,x.jsx)(I.O,{instances:f,selectedConnectionUuid:g||null,onSelect:e=>p(e.connectionUuid),ariaLabel:c("pickConnection")})]}),C&&(0,x.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,x.jsx)(et.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,x.jsx)("span",{className:"min-w-0 truncate",children:C})]}),(0,x.jsx)(ed,{value:v,onChange:b,onSend:k,pending:j,disabled:!y,disabledReason:y?null:u("offlineCantRun"),placeholder:c("sendInstructionPlaceholder"),sendLabel:c("send"),layout:o})]})}function ex(e){var t,n,s;let{agentUuid:i,onlineConnections:l,layout:o,hideHeader:d=!1,onStarted:c}=e,u=(0,r.c)("agentConnections"),m=(0,r.c)("assignInstance"),f=(0,a.useMemo)(()=>el(l),[l]),[g,p]=(0,a.useState)(null!=(n=null==(t=l[0])?void 0:t.uuid)?n:""),[v,b]=(0,a.useState)(""),[j,w]=(0,a.useState)(!1),y=null!=(s=f.find(e=>e.connectionUuid===g&&"online"===e.effectiveStatus))?s:null,N=(0,a.useMemo)(()=>new Set(f.map(e=>e.host)).size>1,[f]),k=async()=>{let e=v.trim();if(g&&0!==e.length){w(!0);try{let n=await (0,Z.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:i,connectionUuid:g,instructionText:e})});if(!n.ok)return void q.oR.error(await em(n,u("instructionError")));let a=null;try{var t;let e=await n.json();(null==e?void 0:e.success)&&(null==(t=e.data)?void 0:t.session)&&(a=e.data.session)}catch(e){}q.oR.success(u("adHocSessionStarted")),b(""),a&&(null==c||c(a))}catch(e){G.q.error("Failed to start ad-hoc daemon session:",e),q.oR.error(u("instructionError"))}finally{w(!1)}}},C=(()=>{if(!y)return null;let e=(0,h.kn)(y.cwd),t=e.isUnknown?m(e.label):e.label;if(N){let e=(0,h.g9)(y.host),n=e.isUnknown?m(e.label):e.label;return m("sendingToWithHost",{path:t,host:n})}return m("sendingTo",{path:t})})();return(0,x.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-dashed border-border bg-card p-4",children:[!d&&(0,x.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,x.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:u("adHocTitle")}),(0,x.jsx)("span",{className:"text-[12px] leading-relaxed text-muted-foreground",children:m("liveSendNote")})]}),(0,x.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,x.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:m("workingDirectory")}),(0,x.jsx)(I.O,{instances:f,selectedConnectionUuid:g||null,onSelect:e=>p(e.connectionUuid),ariaLabel:u("pickConnection")})]}),C&&(0,x.jsxs)("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[(0,x.jsx)(et.A,{className:"h-3 w-3 shrink-0 text-muted-foreground","aria-hidden":!0}),(0,x.jsx)("span",{className:"min-w-0 truncate",children:C})]}),(0,x.jsx)(ed,{value:v,onChange:b,onSend:k,pending:j,disabled:!y,disabledReason:y?null:m("offlineCantRun"),placeholder:u("sendInstructionPlaceholder"),sendLabel:u("startSession"),layout:o})]})}async function em(e,t){try{let t=await e.json();if(t&&"string"==typeof t.error&&t.error)return t.error}catch(e){}return t}var ef=n(17475),eg=n(59208),eh=n(60532),ep=n(25373),ev=n(39180);let eb="@chorus-aidlc/chorus",ej="npx ".concat(eb," daemon"),ew="npx ".concat(eb," login"),ey="/onboarding";function eN(e){let{command:t}=e,n=(0,r.c)("daemonConnectCta"),[s,i]=(0,a.useState)(!1),l=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),i(!0),setTimeout(()=>i(!1),2e3)}catch(e){G.q.error("Failed to copy daemon command:",e)}};return(0,x.jsxs)("div",{className:"flex items-center gap-2",children:[(0,x.jsx)("code",{className:"flex-1 overflow-x-auto rounded-md bg-foreground px-3 py-2 font-mono text-[12.5px] leading-relaxed text-background",children:t}),(0,x.jsx)(w.$,{variant:"outline",size:"sm",onClick:l,"aria-label":n(s?"copied":"copy"),"aria-live":"polite",className:"shrink-0",children:s?(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(eh.A,{className:"mr-1 h-4 w-4 text-green-500"}),n("copied")]}):(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(ep.A,{className:"mr-1 h-4 w-4"}),n("copy")]})})]})}function ek(e){let{variant:t}=e,n=(0,r.c)("daemonConnectCta");return"compact"===t?(0,x.jsxs)("div",{className:"flex flex-col gap-2.5 px-1 py-1.5",children:[(0,x.jsxs)("div",{className:"flex items-start gap-2",children:[(0,x.jsx)(ev.A,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":!0}),(0,x.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:n("body")})]}),(0,x.jsx)(eN,{command:ej}),(0,x.jsx)("p",{className:"text-[11.5px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:ew})}),(0,x.jsx)(D(),{href:ey,className:"text-[12px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]}):(0,x.jsxs)("div",{className:"flex w-full flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-5 text-left",children:[(0,x.jsxs)("div",{className:"flex items-center gap-2",children:[(0,x.jsx)(ev.A,{className:"h-4 w-4 text-primary","aria-hidden":!0}),(0,x.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:n("headline")})]}),(0,x.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:n("bodyLong")}),(0,x.jsx)(eN,{command:ej}),(0,x.jsx)("p",{className:"text-[12px] leading-relaxed text-muted-foreground",children:n("loginNote",{command:ew})}),(0,x.jsx)(D(),{href:ey,className:"text-[12.5px] font-medium text-primary hover:text-[#A65F3C] hover:underline",children:n("learnMore")})]})}class eC extends Error{constructor(e,t){super(null!=t?t:"Dispatch failed with status ".concat(e)),this.name="ConversationalDispatchError",this.status=e,this.serverMessage=t}}function eA(e){var t,n,s,i,l;let{buildInstruction:o,dispatch:d,offlineFallback:c,onStarted:u,defaultAgentUuid:m}=e,f=(0,r.c)("conversationalEntry"),g=(0,eg.kz)(),h=(0,a.useMemo)(()=>{var e;return(null!=(e=null==g?void 0:g.connections)?e:[]).filter(e=>"online"===e.effectiveStatus)},[null==g?void 0:g.connections]),p=(0,a.useMemo)(()=>(function(e){let t=new Map;for(let a of e){let e=t.get(a.agentUuid);if(e)e.connections.push(a);else{var n;t.set(a.agentUuid,{agentUuid:a.agentUuid,agentName:(null==(n=a.agentName)?void 0:n.trim())||a.agentUuid.slice(0,8),connections:[a]})}}return[...t.values()]})(h),[h]),[v,b]=(0,a.useState)(null),j=null!=(n=null!=(t=p.find(e=>e.agentUuid===v))?t:p.find(e=>e.agentUuid===m))?n:1===p.length?p[0]:null,[y,N]=(0,a.useState)(null),k=(0,a.useMemo)(()=>{var e;return el(null!=(e=null==j?void 0:j.connections)?e:[])},[j]),C=null!=(s=k.find(e=>e.connectionUuid===y))?s:null,[A,E]=(0,a.useState)(""),[U,S]=(0,a.useState)(!1),[F,T]=(0,a.useState)(null),z=A.trim(),_=A.length>3e3,M=U||!j||!C||0===z.length||_,B=async e=>{let t=await (0,Z.tm)("/api/daemon-sessions/ad-hoc",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({agentUuid:e.agentUuid,connectionUuid:e.connectionUuid,instructionText:o?o(e.userText):e.userText})});if(!t.ok)throw new eC(t.status,await eo(t,""));try{var n;let e=await t.json();if((null==e?void 0:e.success)&&(null==(n=e.data)?void 0:n.session))return e.data.session}catch(e){}throw new eC(t.status,null)},O=async()=>{if(!M&&j&&C){S(!0),T(null);try{let e=await (null!=d?d:B)({agentUuid:j.agentUuid,connectionUuid:C.connectionUuid,userText:z});E(""),u(e)}catch(e){if(e instanceof eC){T(e.serverMessage||(409===e.status?f("connectionWentOffline"):f("sendError"))),409===e.status&&(null==g||g.refreshConnections());return}G.q.error("Failed to dispatch conversational entry:",e),T(f("sendError"))}finally{S(!1)}}};if(0===h.length)return(0,x.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,x.jsx)("p",{className:"text-[12.5px] leading-relaxed text-muted-foreground",children:f("noOnlineDaemon")}),null!=c?c:(0,x.jsx)(ek,{variant:"compact"})]});let q=A.length>=2500;return(0,x.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,x.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,x.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:f("agentLabel")}),(0,x.jsxs)(es.l6,{value:null!=(i=null==j?void 0:j.agentUuid)?i:"",onValueChange:e=>{b(e),N(null)},children:[(0,x.jsx)(es.bq,{"aria-label":f("agentLabel"),children:(0,x.jsx)(es.yv,{placeholder:f("agentPlaceholder")})}),(0,x.jsx)(es.gC,{children:p.map(e=>(0,x.jsx)(es.eb,{value:e.agentUuid,children:e.agentName},e.agentUuid))})]})]}),j?(0,x.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,x.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:f("instanceLabel")}),(0,x.jsx)(I.O,{instances:k,selectedConnectionUuid:null!=(l=null==C?void 0:C.connectionUuid)?l:null,onSelect:e=>N(e.connectionUuid),ariaLabel:f("instanceLabel")})]}):(0,x.jsx)("p",{className:"text-[12px] text-muted-foreground",children:f("pickAgentFirst")}),(0,x.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,x.jsx)(er.T,{value:A,onChange:e=>E(e.target.value),onKeyDown:e=>{(0,ei.P)(e)||"Enter"===e.key&&!e.shiftKey&&(e.preventDefault(),M||O())},disabled:U,placeholder:f("placeholder"),rows:5,className:"min-h-[120px] resize-none rounded-xl border-border bg-card text-[14px] text-foreground placeholder:text-[#9A9A9A] focus-visible:border-primary focus-visible:ring-primary/30"}),q&&(0,x.jsx)("span",{"aria-live":"polite",className:_?"self-end text-[11px] font-medium text-[#B3261E] dark:text-[#F08078]":"self-end text-[11px] text-muted-foreground",children:f("charCounter",{count:A.length,max:3e3})})]}),F&&(0,x.jsxs)("div",{className:"flex items-start gap-1.5 text-[12px] font-medium text-[#B45309] dark:text-[#E0A34E]",children:[(0,x.jsx)(ef.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,x.jsx)("span",{className:"min-w-0",children:F})]}),(0,x.jsxs)(w.$,{type:"button",onClick:O,disabled:M,className:"gap-1.5 self-end rounded-lg bg-primary px-4 text-[13px] font-medium text-white hover:bg-[#B56A44] disabled:bg-border disabled:text-[#9A9A9A]",children:[U?(0,x.jsx)(P.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,x.jsx)(et.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),F?f("retry"):f("send")]})]})}var eE=n(48416),eU=n(78134),eS=n(97438),eF=n(37915),eT=n(6748);function ez(e){let{status:t}=e;return"running"===t?(0,x.jsxs)("span",{"aria-hidden":!0,className:"relative inline-flex h-2.5 w-2.5 items-center justify-center",children:[(0,x.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-30 motion-safe:animate-ping"}),(0,x.jsx)("span",{className:"relative inline-flex h-1.5 w-1.5 rounded-full bg-primary"})]}):"interrupted"===t?(0,x.jsx)($.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#B45309] dark:text-[#E0A34E]"}):"error"===t?(0,x.jsx)(ef.A,{"aria-hidden":!0,className:"h-3.5 w-3.5 text-[#DC2626] dark:text-[#F08078]"}):(0,x.jsx)("span",{"aria-hidden":!0,className:"h-2 w-2 rounded-full bg-[#D7D2C9] dark:bg-[#2a2822]"})}function e_(e){let{row:t,selected:n,onSelect:a,nowMs:s}=e,l=(0,r.c)("daemonChat"),o=i(),d="running"===t.status?l("running"):"interrupted"===t.status?l("statusInterrupted"):"error"===t.status?l("statusError"):null;return(0,x.jsxs)(w.$,{variant:"ghost",onClick:a,"aria-current":n?"true":void 0,className:"relative h-auto w-full justify-start gap-0 rounded-none px-0 py-0 text-left transition-colors ".concat(n?"bg-[#FBF4EF] dark:bg-[#221e1b] hover:bg-[#FBF4EF] dark:hover:bg-[#26241f]":"bg-card hover:bg-background"),children:[n&&(0,x.jsx)("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-primary"}),(0,x.jsxs)("span",{className:"flex w-full items-center gap-3 px-4 py-3.5",children:[(0,x.jsx)("span",{className:"flex w-2.5 shrink-0 justify-center",children:(0,x.jsx)(ez,{status:t.status})}),(0,x.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,x.jsxs)("span",{className:"flex items-center gap-1.5",children:[t.ideaAnchored&&(0,x.jsxs)(g.E,{variant:"secondary",className:"shrink-0 gap-1 border-0 bg-[#F3ECFB] dark:bg-[#221a30] px-1.5 py-0 text-[10px] font-medium text-[#7C5BC0] dark:text-[#B79AF0]",children:[(0,x.jsx)(V.A,{className:"h-2.5 w-2.5","aria-hidden":!0}),l("badgeIdea")]}),(0,x.jsx)("span",{className:"truncate text-[14px] font-semibold text-foreground",children:t.title})]}),(0,x.jsxs)("span",{className:"mt-0.5 flex items-center gap-1.5",children:[d&&(0,x.jsx)("span",{className:"text-[10px] font-semibold uppercase tracking-wide ".concat("running"===t.status?"text-primary":"error"===t.status?"text-[#DC2626] dark:text-[#F08078]":"text-[#B45309] dark:text-[#E0A34E]"),children:d}),(0,x.jsx)("span",{className:"truncate font-mono text-[10px] text-muted-foreground",children:o(t.session.lastTurnAt,s)})]})]})]})]})}function eM(e){let{agents:t,selectedAgentUuid:n,onSelectAgent:a,rows:i,selectedSessionUuid:l,onSelectSession:o,onNewConversation:d,visibleCount:c,onLoadMore:u}=e,m=(0,r.c)("daemonChat"),f=s(),g=i.slice(0,c),h=i.length>c,p=null===l;return(0,x.jsxs)("div",{className:"flex h-full flex-col gap-3",children:[(0,x.jsxs)("div",{className:"flex flex-col gap-1.5 px-1",children:[(0,x.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:m("agentSelectLabel")}),(0,x.jsxs)(es.l6,{value:null!=n?n:void 0,onValueChange:a,children:[(0,x.jsx)(es.bq,{"aria-label":m("agentSelectLabel"),className:"w-full rounded-lg border-border bg-card text-[13px] text-foreground",children:(0,x.jsx)(es.yv,{placeholder:m("agentSelectPlaceholder")})}),(0,x.jsx)(es.gC,{children:t.map(e=>(0,x.jsx)(es.eb,{value:e.agentUuid,children:e.agentName},e.agentUuid))})]})]}),(0,x.jsx)("div",{className:"px-1",children:(0,x.jsxs)(w.$,{type:"button",onClick:d,"aria-current":p?"true":void 0,className:"h-9 w-full justify-center gap-1.5 rounded-lg text-[13px] font-medium ".concat(p?"bg-primary text-white hover:bg-[#B56A44]":"border border-[#E5D2C2] dark:border-[#33302a] bg-[#FBF4EF] dark:bg-[#221e1b] text-primary hover:bg-[#F6E9DF] dark:hover:bg-[#26241f]"),children:[(0,x.jsx)(ea.A,{className:"h-4 w-4","aria-hidden":!0}),m("newConversationButton")]})}),(0,x.jsxs)(eE.Zp,{className:"flex min-h-0 flex-1 flex-col gap-0 overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:[(0,x.jsxs)("div",{className:"flex items-center justify-between px-4 py-3.5",children:[(0,x.jsx)("span",{className:"font-mono text-[11px] font-medium uppercase tracking-[1px] text-muted-foreground",children:m("listHeader")}),(0,x.jsx)("span",{className:"font-mono text-[11px] font-medium text-muted-foreground",children:i.length})]}),(0,x.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),0===i.length?(0,x.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-1.5 p-8 text-center",children:[(0,x.jsx)("p",{className:"text-[13px] font-medium text-muted-foreground",children:m("noSessions.title")}),(0,x.jsx)("p",{className:"max-w-[220px] text-[12px] leading-relaxed text-muted-foreground",children:m("noSessions.body")})]}):(0,x.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto",children:[g.map((e,t)=>(0,x.jsxs)("div",{children:[(0,x.jsx)(e_,{row:e,selected:l===e.session.uuid,onSelect:()=>o(e.session.uuid),nowMs:f}),t<g.length-1&&(0,x.jsx)("div",{className:"h-px w-full bg-[#F2EEE7] dark:bg-[#201e1a]"})]},e.session.uuid)),h&&(0,x.jsx)("div",{className:"px-4 py-3",children:(0,x.jsx)(w.$,{variant:"ghost",size:"sm",onClick:u,className:"h-8 w-full rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:m("loadMore")})})]})]})]})}var eI=n(94599),eB=n(30028),eO=n(44575),eq=n(89967),eL=n(64993),eD=n(81750),eR=n(32470),eP=n(83553),eH=n(69011),e$=n(23380),eK=n(72256),eJ=n(97261);function eV(e){let{message:t,agentName:n}=e,a=(0,r.c)("daemonChat"),s="user"===t.role,i=s?a("roleYou"):n||a("roleAgent"),l=function(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})}(t.createdAt);return(0,x.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[(0,x.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,x.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wide ".concat(s?"text-primary":"text-muted-foreground"),children:i}),l&&(0,x.jsx)("span",{className:"font-mono text-[10px] tabular-nums text-muted-foreground",children:l})]}),s?(0,x.jsx)("p",{className:"whitespace-pre-wrap break-words text-[13px] leading-relaxed text-foreground",children:t.text}):(0,x.jsx)("div",{className:"prose prose-sm w-full min-w-0 max-w-full break-words text-[13px] leading-relaxed text-foreground [&_a]:break-all [&_code]:[overflow-wrap:anywhere] [&_img]:h-auto [&_img]:max-w-full [&_pre]:max-w-full [&_pre]:overflow-x-auto [&_table]:block [&_table]:max-w-full [&_table]:overflow-x-auto",children:(0,x.jsx)(eJ.MarkdownContent,{children:t.text})})]})}let eW={task_assigned:{icon:eR.A,labelKey:"triggerTask"},mentioned:{icon:eP.A,labelKey:"triggerMention"},elaboration:{icon:eH.A,labelKey:"triggerElaboration"},human_instruction:{icon:e$.A,labelKey:"triggerInstruction"},resume:{icon:eK.A,labelKey:"triggerResume"}};function eZ(e){var t;let{turn:n,agentName:a,linkedExecution:s}=e,i=(0,r.c)("daemonChat"),l=eW[n.trigger],o=null!=(t=null==l?void 0:l.icon)?t:eR.A,d=i(l?l.labelKey:"triggerUnknown"),u="running"===n.status,m="pending"===n.status,f="interrupted"===n.status,h=i("running"===n.status?"turnStatusRunning":"pending"===n.status?"turnStatusPending":f?"turnStatusInterrupted":"turnStatusEnded"),p=n.messages.filter(e=>!e.uuid.startsWith("synthetic:")),v=s?c(s):null,b=i((null==s?void 0:s.entityType)==="idea"?"openIdea":"openTask");return(0,x.jsxs)("div",{className:"flex gap-3",children:[(0,x.jsx)("div",{"aria-hidden":!0,className:"relative w-[3px] shrink-0 rounded-full ".concat(u||m?"bg-primary":"bg-[#EFEBE4] dark:bg-[#201e1b]"),children:u&&(0,x.jsx)("span",{className:"absolute inset-0 rounded-full bg-primary opacity-40 motion-safe:animate-pulse"})}),(0,x.jsxs)("div",{className:"min-w-0 flex-1 pb-2",children:[(0,x.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2.5 gap-y-1",children:[(0,x.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,x.jsx)(o,{className:"h-3.5 w-3.5 text-primary","aria-hidden":!0}),(0,x.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-foreground",children:d})]}),(0,x.jsx)("span",{className:"font-mono text-[10px] uppercase tracking-wide text-muted-foreground",children:i("turnLabel",{seq:n.seq})}),(0,x.jsxs)(g.E,{variant:"secondary",className:"gap-1 border-0 px-1.5 py-0 text-[10px] font-medium ".concat(u?"bg-[#FBF0E8] dark:bg-[#221e1b] text-primary":m?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-[#9A8C7E]":f?"bg-[#F5EEE3] dark:bg-[#221e19] text-[#A8763E] dark:text-[#E0B070]":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"),title:f&&n.interruptedReason?n.interruptedReason:void 0,children:[u&&(0,x.jsx)(P.A,{className:"h-2.5 w-2.5 motion-safe:animate-spin","aria-hidden":!0}),h]}),v&&(0,x.jsxs)(D(),{href:v,className:"group inline-flex items-center gap-1 text-[11px] font-medium text-primary hover:text-[#B56A44]",children:[b,(0,x.jsx)(J.A,{className:"h-3 w-3","aria-hidden":!0})]})]}),n.promptText&&n.promptText.trim().length>0&&(0,x.jsx)("p",{className:"mt-2 whitespace-pre-wrap break-words rounded-lg bg-[#FCFBF8] dark:bg-[#1e1d1b] px-3 py-2 text-[13px] leading-relaxed text-muted-foreground",children:n.promptText}),(0,x.jsx)("div",{className:"mt-3 flex min-w-0 flex-col gap-3",children:p.length>0?p.map(e=>(0,x.jsx)(eV,{message:e,agentName:a},e.uuid)):(0,x.jsx)("p",{className:"text-[12px] italic text-muted-foreground",children:i("turnNoMessages")})})]})]})}function eG(e){let{label:t,value:n,mono:a}=e;return(0,x.jsxs)("div",{children:[(0,x.jsx)("div",{className:"text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:t}),(0,x.jsx)("div",{className:"mt-0.5 truncate text-[13px] font-medium text-foreground ".concat(a?"font-mono":""),children:n})]})}function eQ(e){let{cwd:t,host:n,crossHost:a}=e,s=(0,r.c)(),i=(0,r.c)("transcriptHeader"),l=(0,h.kn)(t),o=l.isUnknown?s(l.label):l.label,d=l.isUnknown?s(l.title):l.title,c=a?(0,h.g9)(n):null,u=c?c.isUnknown?s(c.label):c.label:null,m=c?c.isUnknown?s(c.title):c.title:null;return(0,x.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[(0,x.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[#F1ECE3] dark:bg-[#201e1a] px-2 py-0.5 ".concat(l.isUnknown?"italic text-muted-foreground":"text-muted-foreground"),title:"".concat(i("cwdAriaLabel"),": ").concat(d),"aria-label":"".concat(i("cwdAriaLabel"),": ").concat(d),children:[(0,x.jsx)(v.A,{className:"h-3 w-3 shrink-0 text-[#9A8C7E]","aria-hidden":!0}),(0,x.jsx)("span",{className:"truncate font-mono text-[11px] font-medium",children:o})]}),null!==u&&(0,x.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 text-[11px] font-medium text-muted-foreground",title:"".concat(i("hostAriaLabel"),": ").concat(m),"aria-label":"".concat(i("hostAriaLabel"),": ").concat(m),children:[(0,x.jsx)(eI.A,{className:"h-3 w-3 shrink-0","aria-hidden":!0}),(0,x.jsx)("span",{className:"truncate ".concat((null==c?void 0:c.isUnknown)?"italic":""),children:u})]})]})}function eX(e){let{sessionId:t}=e,n=(0,r.c)("daemonChat"),[s,i]=(0,a.useState)(!1),l=n(s?"sessionIdCopied":"copySessionId"),o=async()=>{try{var e;await (null==(e=navigator.clipboard)?void 0:e.writeText(t)),i(!0),setTimeout(()=>i(!1),2e3)}catch(e){G.q.error("Failed to copy session id:",e)}};return(0,x.jsxs)(w.$,{variant:"ghost",size:"sm",onClick:o,title:l,"aria-label":l,"aria-live":"polite",className:"inline-flex h-auto items-center gap-1.5 px-1.5 py-0.5 text-[12px] font-medium text-muted-foreground hover:bg-transparent hover:text-foreground",children:[s?(0,x.jsx)(eh.A,{className:"h-3.5 w-3.5 text-green-600","aria-hidden":!0}):(0,x.jsx)(ep.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),(0,x.jsx)("span",{className:s?"inline":"hidden lg:inline",children:l})]})}function eY(e){var t,n,l,d,c;let{session:u,turns:m,title:f,loading:h,error:p,originConnection:v,originOnline:b,originCrossHost:y=!1,sessionExecutions:N,executionsByUuid:k,footerLayout:C="inline",hasMoreEarlier:A,loadingEarlier:E,onLoadEarlier:U,originAgentOnlineConnections:S=[],onSessionStarted:F}=e,T=(0,r.c)("daemonChat"),z=s(),_=i(),I=o(),B=o(),O=(null==v||null==(t=v.agentName)?void 0:t.trim())||T("roleAgent"),q=(0,a.useMemo)(()=>{var e;let t=m.find(e=>"running"===e.status);return null!=(e=null!=t?t:m[m.length-1])?e:null},[m]),L=(0,a.useMemo)(()=>{let e=N.find(e=>"running"===e.status);if(e)return e;let t=N.find(e=>"interrupted"===e.status&&"user"===e.interruptedReason);if(t)return t;let n=N.find(e=>"interrupted"===e.status&&"crash"===e.interruptedReason);return null!=n?n:null},[N]),D=(0,a.useMemo)(()=>L&&"running"===L.status?L:null,[L]),R=(0,a.useRef)(null),H=null==(n=m[m.length-1])?void 0:n.uuid,$=null!=(d=null==(l=m[m.length-1])?void 0:l.messages.length)?d:0;(0,a.useEffect)(()=>{var e;null==(e=R.current)||e.scrollIntoView({block:"end"})},[H,$]);let K=(null==u?void 0:u.status)==="ended";return(0,x.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,x.jsxs)("div",{className:"flex flex-col gap-2 px-6 py-2.5 lg:gap-3 lg:py-4",children:[(0,x.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,x.jsx)("h3",{className:"truncate text-[17px] font-semibold text-foreground min-w-0",children:f}),v&&(0,x.jsx)("div",{className:"shrink-0",children:(0,x.jsx)(eQ,{cwd:v.cwd,host:v.host,crossHost:y})})]}),(0,x.jsxs)(eD.Nt,{children:[(0,x.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,x.jsx)(g.E,{variant:"secondary",className:"border-0 px-2 py-0.5 text-[10px] font-medium ".concat(K?"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground":"bg-[#DCFCE7] dark:bg-[#13291d] text-[#15803D] dark:text-[#4FD07A]"),children:T(K?"statusEnded":"statusActive")}),q&&"running"===q.status&&(0,x.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-[11px] font-medium text-primary",children:[(0,x.jsxs)("span",{className:"relative inline-flex h-2 w-2 items-center justify-center",children:[(0,x.jsx)("span",{className:"absolute inline-flex h-full w-full rounded-full bg-primary opacity-40 motion-safe:animate-ping"}),(0,x.jsx)("span",{className:"relative inline-flex h-1 w-1 rounded-full bg-primary"})]}),T("running"),(null==D?void 0:D.startedAt)&&(0,x.jsx)("span",{className:"font-mono tabular-nums text-primary",title:T("runningElapsedLabel"),children:B(D.startedAt,z)})]}),(u||v)&&(0,x.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[u&&(0,x.jsx)(eX,{sessionId:u.sessionId}),v&&(0,x.jsxs)(eD.R6,{className:"group inline-flex items-center gap-1.5 text-[12px] font-medium text-muted-foreground hover:text-foreground",children:[(0,x.jsx)(eB.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),T("detailsLabel"),(0,x.jsx)(j.A,{className:"h-3.5 w-3.5 transition-transform group-data-[state=open]:rotate-180","aria-hidden":!0})]})]})]}),v&&(0,x.jsx)(eD.Ke,{children:(0,x.jsxs)("div",{className:"mt-3 flex flex-col gap-3 rounded-xl border border-[#EFEBE4] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] p-4",children:[(0,x.jsx)(M,{connection:v,size:"sm"}),(0,x.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[b&&(0,x.jsx)(eG,{label:T("detailUptime"),value:I(v.connectedAt,z),mono:!0}),(0,x.jsx)(eG,{label:T("detailHost"),value:""===v.host?T("detailsHostUnknown"):v.host,mono:!0}),v.startedAt&&(0,x.jsx)(eG,{label:T("detailStarted"),value:_(v.startedAt,z)})]})]})})]})]}),(0,x.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),p?(0,x.jsx)("div",{className:"flex flex-1 items-center justify-center p-8",children:(0,x.jsxs)(eE.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none",children:[(0,x.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,x.jsx)(en.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,x.jsx)("h4",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:T("loadErrorTitle")}),(0,x.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:T("loadErrorBody")})]})}):h?(0,x.jsx)("div",{className:"flex flex-1 items-center justify-center p-8 text-[13px] text-muted-foreground",children:T("transcriptLoading")}):(0,x.jsx)(eL.F,{className:"daemon-transcript-scroll min-h-0 w-full flex-1",children:(0,x.jsxs)("div",{className:"flex w-full min-w-0 flex-col gap-3 px-6 py-3 lg:gap-5 lg:py-5",children:[(0,x.jsxs)("p",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-muted-foreground",children:[(0,x.jsx)(eO.A,{className:"mt-0.5 h-3 w-3 shrink-0","aria-hidden":!0}),(0,x.jsx)("span",{children:T("privacyNote")})]}),A&&(0,x.jsx)("div",{className:"flex justify-center",children:(0,x.jsxs)(w.$,{variant:"ghost",size:"sm",onClick:U,disabled:E,className:"h-8 gap-1.5 rounded-lg text-[12px] font-medium text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[E?(0,x.jsx)(P.A,{className:"h-3.5 w-3.5 motion-safe:animate-spin","aria-hidden":!0}):(0,x.jsx)(eq.A,{className:"h-3.5 w-3.5","aria-hidden":!0}),T(E?"loadingEarlier":"loadEarlier")]})}),m.map(e=>{var t;return(0,x.jsx)(eZ,{turn:e,agentName:O,linkedExecution:e.executionUuid&&null!=(t=k.get(e.executionUuid))?t:null},e.uuid)}),(0,x.jsx)("div",{ref:R})]})}),!p&&u&&(0,x.jsx)("div",{className:"flex flex-col gap-3 border-t border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-6 py-2.5 lg:py-4",children:(0,x.jsx)(ec,{sessionUuid:u.uuid,originOnline:b,layout:C,controllableExecution:L,agentUuid:null!=(c=null==v?void 0:v.agentUuid)?c:null,onlineConnections:S,onSessionStarted:F})})]})}function e0(e){let{agentUuid:t,agentName:n,onlineConnections:a,onStarted:s}=e,i=(0,r.c)("daemonChat"),l=null!==t&&a.length>0;return(0,x.jsxs)("div",{className:"flex h-full min-h-0 flex-col",children:[(0,x.jsxs)("div",{className:"flex flex-col gap-1.5 px-6 py-4",children:[(0,x.jsxs)("h3",{className:"flex items-center gap-2 text-[17px] font-semibold text-foreground",children:[(0,x.jsx)(ea.A,{className:"h-[18px] w-[18px] text-primary","aria-hidden":!0}),i("newConversationTitle")]}),(0,x.jsx)("p",{className:"text-[13px] leading-relaxed text-muted-foreground",children:t?i("newConversationBody",{agent:n}):i("newConversationNoAgent")})]}),(0,x.jsx)("div",{className:"h-px w-full bg-[#EFEBE4] dark:bg-[#201e1b]"}),(0,x.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto px-6 py-5",children:l?(0,x.jsx)(ex,{agentUuid:t,onlineConnections:a,layout:"inline",hideHeader:!0,onStarted:s}):(0,x.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-2.5 rounded-xl border border-dashed border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center",children:[(0,x.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,x.jsx)(en.A,{className:"h-5 w-5 text-[#B45309] dark:text-[#E0A34E]","aria-hidden":!0})}),(0,x.jsx)("p",{className:"text-[13px] font-medium text-[#92400E] dark:text-[#E0A34E]",children:i("newConversationNoOnlineTitle")}),(0,x.jsx)("p",{className:"max-w-[300px] text-[12px] leading-relaxed text-muted-foreground",children:i("newConversationNoOnlineBody")})]})})]})}function e1(e,t){return e.filter(e=>(function(e,t){var n;let a=null!=(n=t.directIdeaUuid)?n:t.sessionId.includes("::")?t.sessionId.split("::")[0]:null;return a?"idea"===e.entityType&&e.entityUuid===a||e.directIdeaUuid===a:"daemon_session"===e.entityType&&e.entityUuid===t.sessionId})(e,t))}function e2(e,t){if(0===e.length||t.seq>e[e.length-1].seq)return[...e,t];let n=e.findIndex(e=>e.seq>t.seq),a=-1===n?e.length:n;return[...e.slice(0,a),t,...e.slice(a)]}function e5(e,t){let n=new Map;for(let t of e)n.set(t.uuid,t);for(let e of t){let t=n.get(e.uuid);if(!t){n.set(e.uuid,e);continue}let a=new Set(t.messages.map(e=>e.uuid)),r=e.messages.filter(e=>!a.has(e.uuid));n.set(e.uuid,{...e,messages:[...t.messages,...r]})}return[...n.values()].sort((e,t)=>e.seq-t.seq)}function e3(){var e,t,n;let s=(0,r.c)("daemonChat"),{status:i,connections:l,executionsByConnection:o,setOpenSession:d,subscribeTranscript:c,focusTarget:u,clearChatFocusTarget:m}=(0,eg.$d)(),[f,g]=(0,a.useState)([]),[h,p]=(0,a.useState)("loading"),v=(0,a.useCallback)(async()=>{try{let t=await (0,Z.tm)("/api/daemon-sessions");if(!t.ok)return void p("error");let n=await t.json();if(n.success){var e;g(null!=(e=n.data.sessions)?e:[]),p("ok")}else p("error")}catch(e){G.q.error("Failed to fetch daemon sessions:",e),p("error")}},[]);(0,a.useEffect)(()=>{v();let e=setInterval(v,15e3);return()=>clearInterval(e)},[v]);let b=(0,a.useMemo)(()=>{let e=new Map;for(let n of l){var t;!e.has(n.agentUuid)&&(null==(t=n.agentName)?void 0:t.trim())&&e.set(n.agentUuid,n.agentName.trim())}return[...new Set([...l.map(e=>e.agentUuid),...f.map(e=>e.agentUuid)])].map(t=>{var n;return{agentUuid:t,agentName:null!=(n=e.get(t))?n:s("roleAgent")}})},[l,f,s]),j=(0,a.useMemo)(()=>{var e,t,n;let a=null;for(let e of f)(!a||e.lastTurnAt>a.lastTurnAt)&&(a={agentUuid:e.agentUuid,lastTurnAt:e.lastTurnAt});return null!=(n=null!=(t=null==a?void 0:a.agentUuid)?t:null==(e=b[0])?void 0:e.agentUuid)?n:null},[f,b]),[y,N]=(0,a.useState)(null),k=y&&b.some(e=>e.agentUuid===y)?y:j;(0,a.useEffect)(()=>{!y&&"ok"===i&&"ok"===h&&j&&N(j)},[y,i,h,j]);let C=(0,a.useCallback)(e=>{var t,n,a;if(null==(t=e.title)?void 0:t.trim())return e.title.trim();if(e.directIdeaUuid)return(null==(a=e.ideaTitle)?void 0:a.trim())?e.ideaTitle.trim():s("conversationIdea",{id:e.directIdeaUuid.slice(0,8)});let r=null==(n=e.firstInstruction)?void 0:n.trim();if(r){let e=r.replace(/\s+/g," ").trim();return e.length>60?"".concat(e.slice(0,60).trimEnd(),"…"):e}return s("conversationAdHoc",{id:e.sessionId.slice(0,8)})},[s]),A=(0,a.useMemo)(()=>k?f.filter(e=>e.agentUuid===k).sort((e,t)=>e.lastTurnAt<t.lastTurnAt?1:-1).map(e=>{var t;return{session:e,title:C(e),ideaAnchored:null!=e.directIdeaUuid,status:function(e,t){let n=e1(e,t);if(n.some(e=>"running"===e.status))return"running";let a=n.find(e=>"interrupted"===e.status);return a?"user"===a.interruptedReason?"interrupted":"error":null}(null!=(t=o[e.originConnectionUuid])?t:[],e)}}):[],[f,k,o,C]),[E,U]=(0,a.useState)(12);(0,a.useEffect)(()=>{U(12)},[k]);let[S,F]=(0,a.useState)(null),T=(0,a.useMemo)(()=>{var e;return null!=(e=A.find(e=>e.session.uuid===S))?e:null},[A,S]),[z,_]=(0,a.useState)(null),[M,I]=(0,a.useState)([]),[B,O]=(0,a.useState)(!1),[q,L]=(0,a.useState)(!1),[D,R]=(0,a.useState)(!1),[P,H]=(0,a.useState)(!1),[$,K]=(0,a.useState)(null),J=(0,a.useRef)(0),V=null!=(t=null==T?void 0:T.session.uuid)?t:null;(0,a.useEffect)(()=>(d(V),()=>d(null)),[V,d]),(0,a.useEffect)(()=>{if(!V){_(null),I([]),L(!1),R(!1),K(null);return}let e=++J.current;O(!0),L(!1),R(!1),K(null),I([]),(async()=>{try{let t=await (0,Z.tm)("/api/daemon-sessions/".concat(V));if(e!==J.current)return;if(!t.ok)return void L(!0);let n=await t.json();if(e!==J.current)return;if(n.success){let e=n.data;_(e),I(t=>{var n;return e5(t,null!=(n=e.turns)?n:[])}),R(!!e.hasMore),K(null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq?{turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq}:null)}else L(!0)}catch(t){if(e!==J.current)return;G.q.error("Failed to fetch daemon session detail:",t),L(!0)}finally{e===J.current&&O(!1)}})()},[V]);let W=(0,a.useCallback)(async()=>{if(!V||P||!$)return;let{turnSeq:e,msgSeq:t}=$,n=J.current;H(!0);try{let a=await (0,Z.tm)("/api/daemon-sessions/".concat(V,"?beforeTurnSeq=").concat(e,"&beforeMsgSeq=").concat(t));if(n!==J.current||!a.ok)return;let r=await a.json();if(n!==J.current)return;if(r.success){let e=r.data;I(t=>{var n;return e5(null!=(n=e.turns)?n:[],t)}),R(!!e.hasMore),null!==e.oldestTurnSeq&&null!==e.oldestMsgSeq&&K({turnSeq:e.oldestTurnSeq,msgSeq:e.oldestMsgSeq})}}catch(e){G.q.error("Failed to load earlier transcript turns:",e)}finally{H(!1)}},[V,P,$]);(0,a.useEffect)(()=>{if(V)return c(e=>{I(t=>(function(e,t){var n,a;let r=e.findIndex(e=>e.uuid===t.turn.uuid);if("turn_created"===t.trigger){let n={...t.turn,messages:[]};if(-1===r)return e2(e,n);let a=[...e];return a[r]={...n,messages:e[r].messages},a}if(-1===r)return e2(e,{...t.turn,messages:null!=(n=t.messages)?n:[]});let s=[...e];if("turn_status_changed"===t.trigger)return s[r]={...s[r],...t.turn},s;let i=new Set(s[r].messages.map(e=>e.uuid)),l=(null!=(a=t.messages)?a:[]).filter(e=>!i.has(e.uuid));return s[r]={...s[r],...t.turn,messages:[...s[r].messages,...l]},s})(t,e))})},[V,c]);let Q=(0,a.useMemo)(()=>{var e;let t=null==z?void 0:z.session.originConnectionUuid;return t&&null!=(e=l.find(e=>e.uuid===t))?e:null},[z,l]),X=(null==Q?void 0:Q.effectiveStatus)==="online",Y=(0,a.useMemo)(()=>{let e=null==Q?void 0:Q.agentUuid;if(!e)return!1;let t=new Set;for(let n of l)n.agentUuid===e&&""!==n.host&&t.add(n.host);return t.size>1},[Q,l]),ee=(0,a.useMemo)(()=>k?l.filter(e=>e.agentUuid===k&&"online"===e.effectiveStatus):[],[l,k]),et=(0,a.useMemo)(()=>{let e=null==Q?void 0:Q.agentUuid;return e?l.filter(t=>t.agentUuid===e&&"online"===t.effectiveStatus):[]},[Q,l]),ea=null!=(n=null==(e=b.find(e=>e.agentUuid===k))?void 0:e.agentName)?n:s("roleAgent"),er=(0,a.useMemo)(()=>{var e;let t=null==z?void 0:z.session;if(!t)return[];let n=e1(null!=(e=o[t.originConnectionUuid])?e:[],t);return n.length>0?n:e1(Object.values(o).flat(),t)},[z,o]),es=(0,a.useMemo)(()=>{let e=new Map;for(let t of er)e.set(t.uuid,t);return e},[er]),ei=T?T.title:z?C(z.session):"",[el,eo]=(0,a.useState)(!1);(0,a.useEffect)(()=>{el&&S&&!A.some(e=>e.session.uuid===S)&&eo(!1)},[A,el,S]);let ed=(0,a.useCallback)(e=>{F(e)},[]),ec=(0,a.useCallback)(()=>{F(null),eo(!0)},[]),eu=(0,a.useCallback)(e=>{let t={uuid:e.uuid,agentUuid:e.agentUuid,sessionId:e.sessionId,directIdeaUuid:e.directIdeaUuid,originConnectionUuid:e.originConnectionUuid,status:e.status,title:e.title,lastTurnAt:e.lastTurnAt,originOnline:!0,firstInstruction:null,ideaTitle:null};g(n=>{let a=n.findIndex(e=>e.uuid===t.uuid);if(-1===a)return[t,...n];let r=[...n];return r[a]={...r[a],originConnectionUuid:e.originConnectionUuid,originOnline:!0,status:e.status,lastTurnAt:e.lastTurnAt},r}),_(t=>t&&t.session.uuid===e.uuid?{...t,session:{...t.session,originConnectionUuid:e.originConnectionUuid,status:e.status,lastTurnAt:e.lastTurnAt}}:t),F(e.uuid),v()},[v]);(0,a.useEffect)(()=>{u&&(N(u.agentUuid),u.sessionSeed?(eu(u.sessionSeed),eo(!0)):u.sessionUuid?(F(u.sessionUuid),eo(!0)):F(null),m())},[u,m,eu]);let ex="loading"===i&&"loading"===h,em="error"===h&&0===f.length,ef="ok"===h&&0===f.length&&0===b.length,eh=e=>{var t;return(0,x.jsx)(eY,{session:null!=(t=null==z?void 0:z.session)?t:null,turns:M,title:ei,loading:B,error:q,originConnection:Q,originOnline:X,originCrossHost:Y,sessionExecutions:er,executionsByUuid:es,footerLayout:e,hasMoreEarlier:D,loadingEarlier:P,onLoadEarlier:W,originAgentOnlineConnections:et,onSessionStarted:eu})},ep=eh("inline"),ev=(0,x.jsx)(e0,{agentUuid:k,agentName:ea,onlineConnections:ee,onStarted:eu}),eb=T?eh("stacked"):ev;return(0,x.jsxs)("div",{className:"flex h-full min-h-0 flex-col bg-background",children:[el&&(0,x.jsxs)("div",{className:"flex h-full min-h-0 flex-col lg:hidden",children:[(0,x.jsx)("div",{className:"flex shrink-0 items-center gap-1 border-b border-[#EFEBE4] dark:border-[#2a2a2e] bg-background px-3 py-2.5",children:(0,x.jsxs)(w.$,{variant:"ghost",size:"sm",onClick:()=>eo(!1),className:"h-9 gap-1 px-2 text-[15px] font-normal text-primary hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:text-primary",children:[(0,x.jsx)(eF.A,{className:"h-5 w-5"}),s("mobileBack")]})}),(0,x.jsx)("div",{className:"min-h-0 flex-1",children:eb})]}),(0,x.jsxs)("div",{className:"".concat(el?"hidden lg:flex":"flex"," h-full min-h-0 flex-col gap-3 overflow-y-auto px-4 py-3 lg:overflow-hidden md:px-8 md:py-4 lg:gap-3 lg:px-8 lg:py-4"),children:[(0,x.jsx)("header",{className:"flex flex-col",children:(0,x.jsx)("h2",{className:"text-[22px] font-semibold text-foreground lg:text-[24px]",children:s("title")})}),ex?(0,x.jsx)("p",{className:"text-sm text-muted-foreground",children:s("loading")}):em?(0,x.jsxs)(eE.Zp,{className:"items-center gap-3 rounded-2xl border-[#E7D9C9] dark:border-[#33302a] bg-[#FFF9F3] dark:bg-[#2a2113] p-8 text-center shadow-none md:p-12",children:[(0,x.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-[#D9770615]",children:(0,x.jsx)(en.A,{className:"h-6 w-6 text-[#B45309] dark:text-[#E0A34E]"})}),(0,x.jsx)("h3",{className:"text-base font-semibold text-[#92400E] dark:text-[#E0A34E]",children:s("loadErrorTitle")}),(0,x.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:s("loadErrorBody")})]}):ef?(0,x.jsxs)(eE.Zp,{className:"items-center gap-4 rounded-2xl border-border bg-card p-8 text-center shadow-none md:p-12",children:[(0,x.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-xl bg-primary/[0.08]",children:(0,x.jsx)(eT.A,{className:"h-6 w-6 text-primary"})}),(0,x.jsx)("h3",{className:"text-base font-semibold text-foreground",children:s("noAgents.title")}),(0,x.jsx)("p",{className:"max-w-md text-[13px] leading-relaxed text-muted-foreground",children:s("noAgents.body")}),(0,x.jsx)("div",{className:"w-full max-w-md text-left",children:(0,x.jsx)(ek,{variant:"prominent"})})]}):(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)("div",{className:"flex flex-col gap-3 lg:hidden",children:(0,x.jsx)(eM,{agents:b,selectedAgentUuid:k,onSelectAgent:e=>{N(e),F(null)},rows:A,selectedSessionUuid:S,onSelectSession:e=>{ed(e),eo(!0)},onNewConversation:ec,visibleCount:E,onLoadMore:()=>U(e=>e+12)})}),(0,x.jsxs)("div",{className:"hidden min-h-0 flex-1 gap-5 lg:flex",children:[(0,x.jsx)("div",{className:"flex w-[320px] shrink-0 flex-col",children:(0,x.jsx)(eM,{agents:b,selectedAgentUuid:k,onSelectAgent:e=>{N(e),F(null)},rows:A,selectedSessionUuid:S,onSelectSession:ed,onNewConversation:ec,visibleCount:E,onLoadMore:()=>U(e=>e+12)})}),(0,x.jsx)(eE.Zp,{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border-border bg-card p-0 shadow-none",children:T?ep:ev})]})]})]})]})}function e4(){let e=(0,r.c)("daemonChat"),{modalOpen:t,setModalOpen:n}=(0,eg.$d)();return(0,x.jsx)(eS.lG,{open:t,onOpenChange:n,children:(0,x.jsxs)(eS.Cf,{className:"flex h-dvh max-h-dvh w-screen max-w-none flex-col gap-0 overflow-hidden rounded-none border-0 p-0 sm:h-[92vh] sm:max-h-[92vh] sm:w-[min(96vw,1100px)] sm:max-w-[min(96vw,1100px)] sm:rounded-lg sm:border",children:[(0,x.jsxs)(eU.bL,{children:[(0,x.jsx)(eS.L3,{children:e("title")}),(0,x.jsx)(eS.rr,{children:e("subtitle")})]}),(0,x.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:(0,x.jsx)(e3,{})})]})})}var e9=n(17001),e8=n(16349);function e6(e){let{mention:t,displayName:n}=e,s=(0,r.c)("mention"),i=(0,r.c)("agentPresence"),{openChatForAgent:l}=(0,eg.$d)(),{user:o}=(0,e8.As)(),{pinned:d,online:c,ownerUuid:m,host:f,cwd:p}=function(e){let{connections:t}=(0,eg.$d)(),{uuid:n,pinnedHost:r,pinnedCwd:s}=e,i="pinnedHost"in e||"pinnedCwd"in e;return(0,a.useMemo)(()=>(function(e,t){var n,a,r,s,i,l;let o=void 0!==e.pinnedHost||void 0!==e.pinnedCwd,d=t.filter(t=>t.agentUuid===e.uuid);if(o){let t=null!=(r=e.pinnedHost)?r:null,n=null!=(s=e.pinnedCwd)?s:null,l=d.find(e=>e.host===t&&e.cwd===n);return l?{pinned:!0,online:"online"===l.effectiveStatus,ownerUuid:l.ownerUuid,host:l.host,cwd:l.cwd}:{pinned:!0,online:!1,ownerUuid:null!=(i=null==(a=d[0])?void 0:a.ownerUuid)?i:null,host:t,cwd:n}}let c=d.find(e=>"online"===e.effectiveStatus);return{pinned:!1,online:void 0!==c,ownerUuid:null!=(l=null==(n=null!=c?c:d[0])?void 0:n.ownerUuid)?l:null,host:null,cwd:null}})(i?{uuid:n,pinnedHost:r,pinnedCwd:s}:{uuid:n},t),[t,n,r,s,i])}(void 0!==t.pinnedHost||void 0!==t.pinnedCwd?{uuid:t.uuid,pinnedHost:t.pinnedHost,pinnedCwd:t.pinnedCwd}:{uuid:t.uuid}),v=(null==o?void 0:o.uuid)!=null&&o.uuid===m&&c,b=s(c?"online":"offline"),j=d?(0,h.kn)(p):null,y=d?(0,h.g9)(null!=f?f:""):null;return(0,x.jsxs)(e9.AM,{children:[(0,x.jsx)(e9.Wv,{asChild:!0,children:(0,x.jsxs)(g.E,{variant:"secondary",className:"cursor-pointer gap-1 align-baseline","aria-label":s("badgeAria",{name:n,status:b}),children:[(0,x.jsx)(u.m,{online:c}),(0,x.jsxs)("span",{children:["@",n]})]})}),(0,x.jsx)(e9.hl,{className:"w-64",align:"start",children:(0,x.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,x.jsxs)("div",{className:"flex items-center gap-2",children:[(0,x.jsx)(u.m,{online:c,size:"md"}),(0,x.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,x.jsx)("p",{className:"truncate text-sm font-semibold text-foreground",children:n}),(0,x.jsx)("p",{className:"text-xs text-muted-foreground",children:b})]})]}),d&&j&&y&&(0,x.jsxs)("dl",{className:"flex flex-col gap-1.5 text-xs",children:[(0,x.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,x.jsx)("dt",{className:"text-muted-foreground",children:s("workingDirectory")}),(0,x.jsx)("dd",{className:"truncate font-mono text-foreground",title:j.isUnknown?i("unknownPath"):j.title,children:j.isUnknown?i("unknownPath"):j.label})]}),(0,x.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,x.jsx)("dt",{className:"text-muted-foreground",children:s("host")}),(0,x.jsx)("dd",{className:"truncate font-mono text-foreground",title:y.isUnknown?i("unknownHost"):y.title,children:y.isUnknown?i("unknownHost"):y.label})]})]}),v&&(0,x.jsxs)(w.$,{size:"sm",variant:"outline",className:"w-full",onClick:()=>{l(t.uuid,d?{host:null!=f?f:"",cwd:null!=p?p:null}:void 0)},children:[(0,x.jsx)(K.A,{}),s("openConversation")]})]})})]})}},91814:(e,t,n)=>{n.d(t,{r:()=>s});var a=n(27290),r=n(1856);function s(){let e=(0,a.r)({delay:120});return(0,r.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},91846:(e,t,n)=>{n.d(t,{bq:()=>u,eb:()=>m,gC:()=>x,l6:()=>d,yv:()=>c});var a=n(90508);n(1856);var r=n(17730),s=n(60532),i=n(89967),l=n(48218),o=n(24377);function d(e){let{...t}=e;return(0,a.jsx)(l.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,a.jsx)(l.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:n="default",children:s,...i}=e;return(0,a.jsxs)(l.Trigger,{"data-slot":"select-trigger","data-size":n,className:(0,o.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...i,children:[s,(0,a.jsx)(l.Icon,{asChild:!0,children:(0,a.jsx)(r.A,{className:"size-4 opacity-50"})})]})}function x(e){let{className:t,children:n,position:r="item-aligned",align:s="center",...i}=e;return(0,a.jsx)(l.Portal,{children:(0,a.jsxs)(l.Content,{"data-slot":"select-content",className:(0,o.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===r&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:r,align:s,...i,children:[(0,a.jsx)(f,{}),(0,a.jsx)(l.Viewport,{className:(0,o.cn)("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:n}),(0,a.jsx)(g,{})]})})}function m(e){let{className:t,children:n,...r}=e;return(0,a.jsxs)(l.Item,{"data-slot":"select-item",className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...r,children:[(0,a.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,a.jsx)(l.ItemIndicator,{children:(0,a.jsx)(s.A,{className:"size-4"})})}),(0,a.jsx)(l.ItemText,{children:n})]})}function f(e){let{className:t,...n}=e;return(0,a.jsx)(l.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(i.A,{className:"size-4"})})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(l.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,o.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(r.A,{className:"size-4"})})}},97261:(e,t,n)=>{n.d(t,{MarkdownContent:()=>u});var a=n(90508),r=n(1856),s=n(65700),i=n(19169),l=n(26190);let o=i.a,d=(0,i.V)({themes:["github-dark","github-dark"]});i.a,l.a;let c={mermaid:{fullscreen:!0,download:!0,copy:!0,panZoom:!0}};function u(e){let{children:t,components:n,allowedTags:i,literalTagContent:u}=e,x=function(){let[e,t]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=document.documentElement,n=()=>t(e.classList.contains("dark"));n();let a=new MutationObserver(n);return a.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>a.disconnect()},[]),e}(),m=(0,r.useMemo)(()=>({config:{theme:x?"dark":"default"}}),[x]),f=(0,r.useMemo)(()=>({code:x?d:o,mermaid:l.a}),[x]);return(0,a.jsx)(s.jH,{plugins:f,controls:c,mermaid:m,components:n,allowedTags:i,literalTagContent:u,children:t},x?"dark":"light")}},97438:(e,t,n)=>{n.d(t,{Cf:()=>x,Es:()=>f,L3:()=>g,c7:()=>m,lG:()=>o,rr:()=>h,zM:()=>d});var a=n(90508);n(1856);var r=n(9160),s=n(71350),i=n(24377),l=n(22922);function o(e){let{...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"dialog",...t})}function d(e){let{...t}=e;return(0,a.jsx)(s.Trigger,{"data-slot":"dialog-trigger",...t})}function c(e){let{...t}=e;return(0,a.jsx)(s.Portal,{"data-slot":"dialog-portal",...t})}function u(e){let{className:t,...n}=e;return(0,a.jsx)(s.Overlay,{"data-slot":"dialog-overlay",className:(0,i.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...n})}function x(e){let{className:t,overlayClassName:n,children:l,showCloseButton:o=!0,...d}=e;return(0,a.jsxs)(c,{"data-slot":"dialog-portal",children:[(0,a.jsx)(u,{className:n}),(0,a.jsxs)(s.Content,{"data-slot":"dialog-content",className:(0,i.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none sm:max-w-lg",t),...d,children:[l,o&&(0,a.jsxs)(s.Close,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,a.jsx)(r.A,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function m(e){let{className:t,...n}=e;return(0,a.jsx)("div",{"data-slot":"dialog-header",className:(0,i.cn)("flex flex-col gap-2 text-center sm:text-left",t),...n})}function f(e){let{className:t,showCloseButton:n=!1,children:r,...o}=e;return(0,a.jsxs)("div",{"data-slot":"dialog-footer",className:(0,i.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...o,children:[r,n&&(0,a.jsx)(s.Close,{asChild:!0,children:(0,a.jsx)(l.$,{variant:"outline",children:"Close"})})]})}function g(e){let{className:t,...n}=e;return(0,a.jsx)(s.Title,{"data-slot":"dialog-title",className:(0,i.cn)("text-lg leading-none font-semibold",t),...n})}function h(e){let{className:t,...n}=e;return(0,a.jsx)(s.Description,{"data-slot":"dialog-description",className:(0,i.cn)("text-muted-foreground text-sm",t),...n})}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[93346],{14554:(e,t,a)=>{a.d(t,{p:()=>s});var r=a(90508);a(1856);var n=a(24377);function s(e){let{className:t,type:a,...s}=e;return(0,r.jsx)("input",{type:a,"data-slot":"input",className:(0,n.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...s})}},15972:(e,t,a)=>{a.d(t,{T:()=>s});var r=a(90508);a(1856);var n=a(24377);function s(e){let{className:t,...a}=e;return(0,r.jsx)("textarea",{"data-slot":"textarea",className:(0,n.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),...a})}},22922:(e,t,a)=>{a.d(t,{$:()=>d});var r=a(90508);a(1856);var n=a(49499),s=a(54154),o=a(24377);let i=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function d(e){let{className:t,variant:a="default",size:n="default",asChild:d=!1,...l}=e,c=d?s.bL:"button";return(0,r.jsx)(c,{"data-slot":"button","data-variant":a,"data-size":n,className:(0,o.cn)(i({variant:a,size:n,className:t})),...l})}},24377:(e,t,a)=>{a.d(t,{cn:()=>s});var r=a(49251),n=a(58849);function s(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,n.QP)((0,r.$)(t))}},38280:(e,t,a)=>{a.d(t,{Dj:()=>n,gl:()=>s,sB:()=>o});let r=[{bg:"#F5C4B3",text:"#712B13",darkBg:"#4a2a1e",darkText:"#F5C4B3"},{bg:"#FAC775",text:"#633806",darkBg:"#4a3a1a",darkText:"#FAD79B"},{bg:"#CECBF6",text:"#3C3489",darkBg:"#2f2c52",darkText:"#CECBF6"},{bg:"#B5D4F4",text:"#0C447C",darkBg:"#1e3450",darkText:"#B5D4F4"},{bg:"#C0DD97",text:"#27500A",darkBg:"#2c3d1c",darkText:"#C0DD97"},{bg:"#9FE1CB",text:"#085041",darkBg:"#183d34",darkText:"#9FE1CB"},{bg:"#F4C0D1",text:"#72243E",darkBg:"#48242f",darkText:"#F4C0D1"},{bg:"#FADBB5",text:"#6B3A10",darkBg:"#463421",darkText:"#FADBB5"}];function n(e){let t=e.trim().split(/\s+/);return t.length>=2?(t[0][0]+t[1][0]).toUpperCase():e.slice(0,2).toUpperCase()}function s(e){let t=0;for(let a=0;a<e.length;a++)t=e.charCodeAt(a)+((t<<5)-t);return r[Math.abs(t)%r.length]}function o(e){return{"--icon-bg":e.bg,"--icon-text":e.text,"--icon-bg-dark":e.darkBg,"--icon-text-dark":e.darkText}}},42305:(e,t,a)=>{a.d(t,{P:()=>r});function r(e){return("nativeEvent"in e?e.nativeEvent:e).isComposing||229===e.keyCode}},48416:(e,t,a)=>{a.d(t,{BT:()=>d,Wu:()=>l,ZB:()=>i,Zp:()=>s,aR:()=>o});var r=a(90508);a(1856);var n=a(24377);function s(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,n.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function o(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,n.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function i(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,n.cn)("leading-none font-semibold",t),...a})}function d(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-description",className:(0,n.cn)("text-muted-foreground text-sm",t),...a})}function l(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,n.cn)("px-6",t),...a})}},88064:(e,t,a)=>{a.d(t,{J:()=>o});var r=a(90508);a(1856);var n=a(58057),s=a(24377);function o(e){let{className:t,...a}=e;return(0,r.jsx)(n.Root,{"data-slot":"label",className:(0,s.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...a})}},88738:(e,t,a)=>{a.d(t,{C:()=>b});var r=a(90508),n=a(1856),s=a(91814),o=a(39268),i=a(67103),d=a(16544),l=a(60532),c=a(85226),u=a(5616),x=a(97438),g=a(22922),p=a(14554),f=a(88064),m=a(15972),v=a(42305);function b(e){let{open:t,onOpenChange:a,groupUuid:b,groupName:h,onCreated:j}=e,k=(0,o.c)(),y=(0,s.r)(),[N,C]=(0,n.useTransition)(),[w,B]=(0,n.useState)(""),[E,T]=(0,n.useState)(""),[z,D]=(0,n.useState)(null),[F,_]=(0,n.useState)(!1),P=h||k("projectGroups.ungrouped"),A=()=>{w.trim()&&(D(null),C(async()=>{try{let e=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:w.trim(),description:E.trim()||void 0,groupUuid:b||void 0})}),t=await e.json();t.success?(_(!0),setTimeout(()=>{B(""),T(""),a(!1),null==j||j(),y.refresh(),_(!1)},600)):D(t.error||k("projects.createFailed"))}catch(e){D(k("common.genericError"))}}))};return(0,r.jsx)(x.lG,{open:t,onOpenChange:a,children:(0,r.jsxs)(x.Cf,{className:"sm:max-w-[480px] gap-0 p-0 rounded-[16px]",showCloseButton:!1,children:[(0,r.jsx)(x.c7,{className:"flex flex-row items-center justify-between p-[20px_24px] border-b border-[#E5E2DC] dark:border-[#2a2a2e]",children:(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)(x.L3,{className:"text-lg font-semibold tracking-[-0.3px] text-foreground",children:k("projectGroups.newProjectTitle")}),(0,r.jsx)("p",{className:"text-xs text-muted-foreground",children:k("projectGroups.creatingIn",{groupName:P})})]})}),(0,r.jsx)(x.rr,{className:"sr-only",children:k("projectGroups.newProjectTitle")}),(0,r.jsxs)("div",{className:"flex flex-col gap-5 p-6",children:[z&&(0,r.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:z}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(f.J,{className:"text-[13px] font-medium text-foreground",children:k("projectGroups.projectTitle")}),(0,r.jsx)(p.p,{value:w,onChange:e=>B(e.target.value),placeholder:k("projectGroups.projectTitlePlaceholder"),className:"h-10 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]",onKeyDown:e=>{!(0,v.P)(e)&&"Enter"===e.key&&w.trim()&&A()}})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(f.J,{className:"text-[13px] font-medium text-foreground",children:k("common.description")}),(0,r.jsx)(m.T,{value:E,onChange:e=>T(e.target.value),placeholder:k("projectGroups.projectDescriptionPlaceholder"),className:"min-h-[80px] rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]"})]})]}),(0,r.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC] dark:border-[#2a2a2e]",children:[(0,r.jsx)(g.$,{variant:"outline",onClick:()=>a(!1),className:"rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] text-[13px]",children:k("common.cancel")}),(0,r.jsx)(g.$,{onClick:A,disabled:N||F||!w.trim(),className:"rounded-lg bg-primary hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:(0,r.jsx)(i.N,{mode:"wait",children:F?(0,r.jsx)(d.P.span,{initial:{opacity:0,scale:.5},animate:{opacity:1,scale:1},exit:{opacity:0},transition:{duration:.15},className:"flex items-center gap-2",children:(0,r.jsx)(l.A,{className:"h-3.5 w-3.5"})},"success"):N?(0,r.jsxs)(d.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,r.jsx)(c.A,{className:"h-3.5 w-3.5 animate-spin"}),k("common.creating")]},"loading"):(0,r.jsxs)(d.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,r.jsx)(u.A,{className:"h-3.5 w-3.5"}),k("projectGroups.createProject")]},"idle")})})]})]})})}},91814:(e,t,a)=>{a.d(t,{r:()=>s});var r=a(27290),n=a(1856);function s(){let e=(0,r.r)({delay:120});return(0,n.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},97438:(e,t,a)=>{a.d(t,{Cf:()=>x,Es:()=>p,L3:()=>f,c7:()=>g,lG:()=>d,rr:()=>m,zM:()=>l});var r=a(90508);a(1856);var n=a(9160),s=a(71350),o=a(24377),i=a(22922);function d(e){let{...t}=e;return(0,r.jsx)(s.Root,{"data-slot":"dialog",...t})}function l(e){let{...t}=e;return(0,r.jsx)(s.Trigger,{"data-slot":"dialog-trigger",...t})}function c(e){let{...t}=e;return(0,r.jsx)(s.Portal,{"data-slot":"dialog-portal",...t})}function u(e){let{className:t,...a}=e;return(0,r.jsx)(s.Overlay,{"data-slot":"dialog-overlay",className:(0,o.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...a})}function x(e){let{className:t,overlayClassName:a,children:i,showCloseButton:d=!0,...l}=e;return(0,r.jsxs)(c,{"data-slot":"dialog-portal",children:[(0,r.jsx)(u,{className:a}),(0,r.jsxs)(s.Content,{"data-slot":"dialog-content",className:(0,o.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none sm:max-w-lg",t),...l,children:[i,d&&(0,r.jsxs)(s.Close,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,r.jsx)(n.A,{}),(0,r.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function g(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"dialog-header",className:(0,o.cn)("flex flex-col gap-2 text-center sm:text-left",t),...a})}function p(e){let{className:t,showCloseButton:a=!1,children:n,...d}=e;return(0,r.jsxs)("div",{"data-slot":"dialog-footer",className:(0,o.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...d,children:[n,a&&(0,r.jsx)(s.Close,{asChild:!0,children:(0,r.jsx)(i.$,{variant:"outline",children:"Close"})})]})}function f(e){let{className:t,...a}=e;return(0,r.jsx)(s.Title,{"data-slot":"dialog-title",className:(0,o.cn)("text-lg leading-none font-semibold",t),...a})}function m(e){let{className:t,...a}=e;return(0,r.jsx)(s.Description,{"data-slot":"dialog-description",className:(0,o.cn)("text-muted-foreground text-sm",t),...a})}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[69305],{5877:(e,t,a)=>{Promise.resolve().then(a.bind(a,25478))},14554:(e,t,a)=>{"use strict";a.d(t,{p:()=>n});var r=a(90508);a(1856);var s=a(24377);function n(e){let{className:t,type:a,...n}=e;return(0,r.jsx)("input",{type:a,"data-slot":"input",className:(0,s.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...n})}},15272:(e,t,a)=>{var r={"./en.json":[99373,99373],"./ja.json":[11595,11595],"./ko.json":[33456,33456],"./zh.json":[4860,4860]};function s(e){if(!a.o(r,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=r[e],s=t[0];return a.e(t[1]).then(()=>a.t(s,19))}s.keys=()=>Object.keys(r),s.id=15272,e.exports=s},25359:(e,t,a)=>{"use strict";a.d(t,{AL:()=>o,IB:()=>r,L$:()=>n,q:()=>s});let r=["en","zh","ko","ja"],s="en",n={en:"English",zh:"中文",ko:"한국어",ja:"日本語"};function o(){if("undefined"==typeof navigator)return s;let e=navigator.language.split("-")[0];return r.includes(e)?e:s}},25478:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>eM});var r=a(90508),s=a(1856),n=a(23675),o=a(91814),l=a(39268),i=a(12790),c=a.n(i),d=a(22922),u=a(32239),m=a(56770),x=a(50609),f=a(23217),p=a(20094),h=a(97645),g=a(94152),b=a(52309),j=a(70633),v=a(17730),y=a(90683),w=a(9111),N=a(62990),k=a(93114),A=a(97438),C=a(67712);let S=[{cx:54,cy:135,topY:117},{cx:96,cy:114,topY:96},{cx:120,cy:118,topY:108},{cx:155,cy:115,topY:105},{cx:146,cy:148,topY:130},{cx:95,cy:149,topY:138},{cx:133,cy:168,topY:158}],E=Array.from({length:7},(e,t)=>t).sort((e,t)=>S[e].topY-S[t].topY),F={bulb:2e3,document:1500,stars:2500,flash:400},P=function(){let e={floor:"floor.png"};for(let t=0;t<7;t++)e["char".concat(t,"-frame1")]="char".concat(t,"-frame1.png"),e["char".concat(t,"-frame2")]="char".concat(t,"-frame2.png");return e}();function T(e){let{slots:t,projectName:a,agentCount:n,collapsed:o=!1,effects:l,onEffectsConsumed:i}=e,c=(0,s.useRef)(null),d=(0,s.useRef)({}),u=(0,s.useRef)(!1),m=(0,s.useRef)(0),x=(0,s.useRef)(0),f=(0,s.useRef)(0),p=(0,s.useRef)(Array.from({length:7},()=>({state:"empty",cycleIndex:0,frameTicks:0,ticksPerFrame:1,stateTimer:0}))),h=(0,s.useRef)(t),g=(0,s.useRef)(a),b=(0,s.useRef)(n),j=(0,s.useRef)(o),v=(0,s.useRef)([]);(0,s.useEffect)(()=>{h.current=t;for(let r=0;r<7;r++){var e,a;let s=null!=(a=null==(e=t[r])?void 0:e.state)?a:"empty",n=p.current[r];n.state!==s&&(n.state=s,n.cycleIndex=0,n.frameTicks=0,n.stateTimer=0)}},[t]),(0,s.useEffect)(()=>{g.current=a},[a]),(0,s.useEffect)(()=>{b.current=n},[n]),(0,s.useEffect)(()=>{j.current=o},[o]),(0,s.useEffect)(()=>{l&&0!==l.length&&(l.forEach(e=>{var t;v.current.push({type:e.type,slotIndex:null!=(t=e.slotIndex)?t:0,elapsed:0,duration:F[e.type]})}),null==i||i())},[l,i]);let y=(0,s.useCallback)(e=>{e.fillStyle="#d0d0e0",e.fillRect(0,0,256,16),e.fillStyle="#e4e4f0",e.fillRect(0,0,256,1),e.fillStyle="#9999aa",e.fillRect(0,15,256,1),e.font="bold 7px monospace",e.textBaseline="middle",e.fillStyle="#333",e.textAlign="left";let t=g.current,a=t.length>20?t.slice(0,18)+"..":t;e.fillText(a,6,8),e.textAlign="right",e.fillStyle="#336";let r=b.current;e.fillText("".concat(r," agent").concat(1!==r?"s":""),250,8),e.textAlign="start",e.textBaseline="alphabetic"},[]),w=(0,s.useCallback)((e,t)=>{let a=h.current[t];if(!(null==a?void 0:a.sessionName))return;let r=S[t];e.font="5px monospace",e.textAlign="center",e.textBaseline="bottom";let s=a.sessionName.length>12?a.sessionName.slice(0,10)+"..":a.sessionName,n=e.measureText(s).width,o=r.cx,l=r.topY-4;e.fillStyle="rgba(0,0,0,0.55)",e.fillRect(o-n/2-2,l-6,n+4,7),e.fillStyle="#fff",e.fillText(s,o,l),e.textAlign="start",e.textBaseline="alphabetic"},[]),N=(0,s.useCallback)(e=>{for(let t of v.current){let a=t.elapsed/t.duration,r=S[t.slotIndex]||S[0];switch(t.type){case"bulb":{let t=a<.1?a/.1:a>.8?(1-a)/.2:1,s=r.cx,n=r.topY-14-2*Math.sin(a*Math.PI*4);e.fillStyle="rgba(255, 220, 50, ".concat(.3*t,")"),e.beginPath(),e.arc(s,n,8,0,2*Math.PI),e.fill(),e.fillStyle="rgba(255, 230, 80, ".concat(t,")"),e.beginPath(),e.arc(s,n,4,0,2*Math.PI),e.fill(),e.fillStyle="rgba(255, 255, 200, ".concat(t,")"),e.fillRect(s-1,n-1,2,2),e.fillStyle="rgba(180, 180, 180, ".concat(t,")"),e.fillRect(s-2,n+3,4,2);break}case"document":{let t=256+(r.cx-256)*Math.min(2*a,1),s=r.topY-10+-15*Math.sin(a*Math.PI);e.globalAlpha=a>.8?(1-a)/.2:1,e.fillStyle="#f8f8f0",e.fillRect(t,s,8,10),e.strokeStyle="#aaa",e.lineWidth=.5,e.strokeRect(t,s,8,10),e.fillStyle="#ccc",e.fillRect(t+1.5,s+2,5,1),e.fillRect(t+1.5,s+4,4,1),e.fillRect(t+1.5,s+6,5,1),e.globalAlpha=1;break}case"stars":{let t=a>.7?(1-a)/.3:1,s=r.cx,n=r.cy;for(let r=0;r<8;r++){let o=r/8*Math.PI*2+a*Math.PI*3,l=10+15*a,i=s+Math.cos(o)*l,c=n+Math.sin(o)*l,d=["#FFD700","#FF6B6B","#4ECDC4","#A78BFA"];e.fillStyle=d[r%d.length],e.globalAlpha=t*(.5+.5*Math.sin(a*Math.PI*6+r));let u=1.5+.5*Math.sin(a*Math.PI*4+r);e.fillRect(i-u/2,c-u/2,u,u)}e.globalAlpha=1;break}case"flash":{let t=a<.3?a/.3:(1-a)/.7;e.fillStyle="rgba(255, 255, 255, ".concat(.6*t,")"),e.fillRect(0,16,256,240)}}}},[]),k=(0,s.useCallback)((e,t)=>{e.clearRect(0,0,768,768),e.save(),e.scale(3,3);let a=t.floor;for(let r of((null==a?void 0:a.complete)&&a.naturalWidth&&e.drawImage(a,0,0,256,256),E)){let a=p.current[r];if("empty"===a.state)continue;let s="typing"===a.state&&a.cycleIndex%2==1,n=t["char".concat(r,"-frame").concat(s?2:1)];if((null==n?void 0:n.complete)&&n.naturalWidth){"celebrate"===a.state&&(e.save(),e.globalAlpha=.85+.15*Math.sin(Date.now()/200));let t="looking"===a.state?+Math.sin(Date.now()/300):0;0!==t&&(e.save(),e.translate(0,t)),e.drawImage(n,0,0,256,256),0!==t&&e.restore(),"celebrate"===a.state&&e.restore()}w(e,r)}y(e),N(e),e.restore()},[y,w,N]),A=(0,s.useCallback)(e=>{for(let t=0;t<7;t++){let a=p.current[t];"empty"!==a.state&&(a.stateTimer+=e,"celebrate"===a.state&&a.stateTimer>=3e3&&(a.state="idle",a.cycleIndex=0,a.frameTicks=0,a.stateTimer=0),"looking"===a.state&&a.stateTimer>=1500&&(a.state="idle",a.cycleIndex=0,a.frameTicks=0,a.stateTimer=0),"typing"===a.state&&(a.frameTicks++,a.frameTicks>=a.ticksPerFrame&&(a.frameTicks=0,a.cycleIndex=(a.cycleIndex+1)%2)))}let t=v.current;for(let a=t.length-1;a>=0;a--)t[a].elapsed+=e,t[a].elapsed>=t[a].duration&&t.splice(a,1)},[]),T=(0,s.useCallback)(e=>{if(j.current){m.current=requestAnimationFrame(T),x.current=e;return}let t=e-x.current;x.current=e,f.current+=t;let a=!1;for(;f.current>=10;)f.current-=10,A(10),a=!0;if(a){let e=c.current,t=null==e?void 0:e.getContext("2d");t&&u.current&&k(t,d.current)}m.current=requestAnimationFrame(T)},[A,k]);return(0,s.useEffect)(()=>{let e=!1;return new Promise(e=>{let t={},a=Object.entries(P),r=0,s=a.length;a.forEach(a=>{let[n,o]=a,l=new Image;l.onload=()=>{++r===s&&e(t)},l.onerror=()=>{C.q.warn("Failed to load sprite:",n,o),++r===s&&e(t)},l.src="".concat("/sprites/").concat(o),t[n]=l})}).then(t=>{if(e)return;d.current=t,u.current=!0;let a=c.current,r=null==a?void 0:a.getContext("2d");r&&(r.imageSmoothingEnabled=!1,k(r,t)),x.current=performance.now(),m.current=requestAnimationFrame(T)}),()=>{e=!0,m.current&&cancelAnimationFrame(m.current)}},[k,T]),(0,r.jsx)("canvas",{ref:c,width:768,height:768,className:"w-full",style:{imageRendering:"pixelated",aspectRatio:"1 / 1"}})}var R=a(52217);let _=(0,R.createServerReference)("403d50db0a6210a79345aec08dcd7d0778f5afb4c9",R.callServer,void 0,R.findSourceMapURL,"getProjectActiveSessionsAction");var I=a(63964);function M(e){let{projectUuid:t,projectName:a}=e,n=(0,l.c)("pixelCanvas"),[o,i]=(0,s.useState)(!1),[c,d]=(0,s.useState)(Array.from({length:7},()=>({state:"empty"}))),[u,m]=(0,s.useState)(0),[x,f]=(0,s.useState)([]),p=(0,s.useCallback)(async()=>{let e=await _(t);if(!e.success||!e.data)return;let a=e.data;d(Array.from({length:7},(e,t)=>{let r=a[t];return r?{state:"typing",sessionName:r.sessionName}:{state:"empty"}})),m(a.length)},[t]);(0,I.l9)(p);let h=(0,s.useCallback)(()=>{f([])},[]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"fixed bottom-4 right-4 md:bottom-6 md:right-6 z-40 cursor-pointer",onClick:()=>i(!0),children:(0,r.jsxs)("div",{className:"relative transition-transform hover:scale-105",children:[(0,r.jsx)("div",{className:"overflow-hidden rounded-lg border-2 border-border bg-card shadow-lg hover:shadow-xl",children:(0,r.jsx)(k.default,{src:"/typing-animation.gif",alt:n("title"),width:72,height:72,unoptimized:!0,className:"block scale-[1.3]"})}),u>0&&(0,r.jsx)("span",{className:"absolute -top-3 -right-3 flex h-7 min-w-7 items-center justify-center rounded-full bg-[#B87351] text-xs font-bold text-white shadow-md",children:u})]})}),(0,r.jsx)(A.lG,{open:o,onOpenChange:i,children:(0,r.jsxs)(A.Cf,{className:"sm:max-w-2xl p-4",children:[(0,r.jsxs)(A.L3,{className:"text-sm",children:[a," — ",n("title")]}),(0,r.jsx)(A.rr,{className:"sr-only",children:n("title")}),(0,r.jsx)("div",{className:"overflow-hidden rounded-lg border border-border",children:(0,r.jsx)(T,{slots:c,projectName:a,agentCount:u,collapsed:!o,effects:x,onEffectsConsumed:h})})]})})]})}var U=a(59208),D=a(16349),O=a(62482),z=a(32470),L=a(17001),B=a(84169);function $(e){let{state:t}=e;return"error"===t?(0,r.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 shrink-0 rounded-full bg-[#D97706] opacity-90"}):(0,r.jsx)("span",{className:"shrink-0",children:(0,r.jsx)(B.md,{online:"online"===t,size:"md"})})}function Y(e){let{connection:t,executions:a,showHost:s,nowMs:n}=e,o=(0,l.c)("agentPresence"),i=(0,l.c)("agentConnections"),{text:c,dot:d}=(0,B.c0)(t,a,n),u=a.filter(e=>"running"===e.status),m=a.filter(e=>"queued"===e.status),x=u.length>0||m.length>0,f="online"===t.effectiveStatus;return(0,r.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,r.jsx)(B.A4,{connection:t,showHost:s,activity:c,dot:d}),x?(0,r.jsxs)("div",{className:"flex flex-col gap-4 pl-1",children:[u.length>0&&(0,r.jsx)(B.wL,{icon:O.A,label:i("execRunning"),count:u.length,children:u.map(e=>(0,r.jsx)(B.lb,{exec:e,nowMs:n,layout:"stacked"},e.uuid))}),m.length>0&&(0,r.jsx)(B.wL,{icon:z.A,label:i("execQueued"),count:m.length,children:m.map(e=>(0,r.jsx)(B.lb,{exec:e,nowMs:n,layout:"stacked"},e.uuid))})]}):f&&(0,r.jsx)("p",{className:"pl-1 text-[12px] text-muted-foreground",children:o("connectionIdle")})]})}function q(e){let{group:t,executionsByConnection:a,nowMs:s,expanded:n,onToggle:o}=e;return(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsx)(B.u,{group:t,expanded:n,onToggle:o}),n&&(0,r.jsx)("div",{className:"flex flex-col gap-3 pl-7",children:t.connections.map(e=>{var n;return(0,r.jsx)(Y,{connection:e,executions:null!=(n=a[e.uuid])?n:[],showHost:t.multiHost,nowMs:s},e.uuid)})})]})}function H(e){let{groups:t,executionsByConnection:a,nowMs:n}=e,[o,l]=(0,s.useState)(new Set);return 0===t.length?(0,r.jsx)(B.Bs,{variant:"compact"}):(0,r.jsx)("div",{className:"flex flex-col gap-5",children:t.map(e=>(0,r.jsx)(q,{group:e,executionsByConnection:a,nowMs:n,expanded:o.has(e.agentUuid),onToggle:()=>{let t;return t=e.agentUuid,l(e=>{let a=new Set(e);return a.has(t)?a.delete(t):a.add(t),a})}},e.agentUuid))})}let G={online:"border-[#E7E1D7] dark:border-[#2a2a2e] bg-[#FCFBF8] dark:bg-[#1e1d1b] hover:bg-[#FBF4EF] dark:hover:bg-[#26241f] hover:border-[#E2D6C9] dark:hover:border-[#3a3a40]",idle:"border-[#EAE5DC] dark:border-[#2a2a2e] bg-background hover:bg-[#F6F2EC] dark:hover:bg-[#26241f]",loading:"border-[#EAE5DC] dark:border-[#2a2a2e] bg-background",error:"border-[#EBD9C4] dark:border-[#3a2f1a] bg-[#FFF9F2] dark:bg-[#2a2113] hover:bg-[#FEF3E4] dark:hover:bg-[#332a17]"};function W(e){let t,{mobile:a=!1}=e,s=(0,l.c)("agentPresence"),{status:n,onlineCount:o,connections:i,executionsByConnection:c,setModalOpen:u}=(0,U.$d)(),m=a?"text-[12.5px]":"text-[11.5px]",x="loading"===n?"loading":"error"===n?"error":o>0?"online":"idle";if("error"===n)t=(0,r.jsx)("span",{className:"truncate font-medium text-[#B45309] dark:text-[#E0A34E] ".concat(m),children:s("unavailable")});else if("loading"===n)t=(0,r.jsx)("span",{className:"truncate text-muted-foreground/70 ".concat(m),children:s("loading")});else{let e=o>0?"text-[#15803D] dark:text-[#4FD07A]":"text-foreground/80";t=(0,r.jsxs)("span",{className:"flex min-w-0 items-baseline gap-1.5 truncate ".concat(m),children:[(0,r.jsx)("span",{className:"font-semibold leading-none tabular-nums ".concat(e," ").concat(a?"text-[17px]":"text-[15px]"),children:o}),(0,r.jsx)("span",{className:"truncate text-muted-foreground",children:s("onlineUnit",{count:o})})]})}let f=(0,B.Jk)((0,B.fb)(i,c),c).filter(e=>e.onlineCount>0);return(0,r.jsxs)(L.AM,{children:[(0,r.jsx)(L.Wv,{asChild:!0,children:(0,r.jsxs)(d.$,{variant:"ghost","aria-label":s("pillAria"),className:"group h-auto w-full justify-start gap-2.5 rounded-xl border px-3 ".concat(a?"py-2.5":"py-2"," shadow-[0_1px_2px_rgba(44,44,44,0.03)] transition-colors ").concat(G[x]),children:[(0,r.jsx)($,{state:x}),t]})}),(0,r.jsx)(L.hl,{align:"start",side:"top",sideOffset:8,className:"max-h-[60vh] w-[min(92vw,400px)] overflow-y-auto p-3",children:(0,r.jsx)(V,{groups:f,executionsByConnection:c,onViewAll:()=>u(!0)})})]})}function V(e){let{groups:t,executionsByConnection:a,onViewAll:s}=e,n=(0,l.c)("agentPresence"),o=(0,B.le)();return(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsx)("div",{className:"flex items-center justify-between",children:(0,r.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-muted-foreground",children:n("popoverTitle")})}),(0,r.jsx)(H,{groups:t,executionsByConnection:a,nowMs:o}),(0,r.jsx)(d.$,{variant:"ghost",size:"sm",onClick:s,className:"w-full justify-center text-[12px] font-medium text-primary hover:bg-primary/[0.08] hover:text-[#A65F3C]",children:n("viewAll")})]})}var K=a(62926),J=a(67587),Q=a(11966),X=a(42533),Z=a(1861),ee=a(43057),et=a(83553),ea=a(95886),er=a(11080);let es=(0,s.createContext)(null),en=new Set(["agent_checkin"]);function eo(e){let{children:t}=e,[a,n]=(0,s.useState)(0),i=(0,s.useRef)(new Set),c=(0,o.r)(),d=(0,l.c)("notifications"),u=(0,s.useCallback)(()=>{i.current.forEach(e=>e())},[]),m=(0,s.useCallback)(async()=>{try{let e=await (0,N.tm)("/api/notifications?readFilter=unread&take=0");if(e.ok){let t=await e.json();t.success&&n(t.data.unreadCount)}}catch(e){}},[]),x=(0,s.useCallback)(()=>{m(),u()},[m,u]),f=(0,s.useCallback)(e=>{if(!e.action||en.has(e.action)||!e.entityTitle||!e.actorName)return;let t=d("types.".concat(e.action)),a=e.entityTitle,s="".concat(e.actorName," \xb7 ").concat(t);(0,J.oR)(a,{description:s,icon:function(e){switch(e){case"task_assigned":case"idea_claimed":return(0,r.jsx)(Q.A,{className:"h-4 w-4 text-[#C67A52]"});case"proposal_approved":case"task_verified":return(0,r.jsx)(X.A,{className:"h-4 w-4 text-green-600"});case"proposal_rejected":case"task_reopened":return(0,r.jsx)(Z.A,{className:"h-4 w-4 text-red-500"});case"comment_added":return(0,r.jsx)(ee.A,{className:"h-4 w-4 text-orange-500"});case"mentioned":return(0,r.jsx)(et.A,{className:"h-4 w-4 text-blue-600"});case"proposal_submitted":return(0,r.jsx)(ea.A,{className:"h-4 w-4 text-blue-500"});case"task_status_changed":return(0,r.jsx)(er.A,{className:"h-4 w-4 text-blue-500"});default:return(0,r.jsx)(ea.A,{className:"h-4 w-4 text-muted-foreground"})}}(e.action),duration:5e3,action:e.entityType&&e.entityUuid&&e.projectUuid?{label:d("viewDetail"),onClick:()=>c.push(function(e,t,a){let r="/projects/".concat(a);switch(e){case"task":return"".concat(r,"/tasks/").concat(t);case"idea":return"".concat(r,"/dashboard?panel=").concat(t);case"proposal":return"".concat(r,"/proposals/").concat(t);case"document":return"".concat(r,"/documents/").concat(t);default:return r}}(e.entityType,e.entityUuid,e.projectUuid))}:void 0})},[d,c]);(0,s.useEffect)(()=>{let e,t=null;function a(){r(),(t=new EventSource("/api/events/notifications")).onmessage=t=>{try{let e=JSON.parse(t.data);"number"==typeof e.unreadCount&&n(e.unreadCount),"new_notification"===e.type&&f(e)}catch(e){}clearTimeout(e),e=setTimeout(u,300)},t.onerror=()=>{}}function r(){t&&(t.close(),t=null)}function s(){"visible"===document.visibilityState?(a(),m()):r()}return a(),m(),document.addEventListener("visibilitychange",s),()=>{r(),clearTimeout(e),document.removeEventListener("visibilitychange",s)}},[m,u,f]);let p=(0,s.useMemo)(()=>({unreadCount:a,refreshNotifications:x}),[a,x]);return(0,r.jsx)(es.Provider,{value:p,children:t})}function el(){let e=(0,s.useContext)(es);return e||{unreadCount:0,refreshNotifications:()=>{}}}var ei=a(36557),ec=a(11426),ed=a(16544),eu=a(65626),em=a(39674),ex=a(64993),ef=a(57731);let ep=[{bg:"bg-amber-100 dark:bg-amber-900/30",text:"text-amber-800 dark:text-amber-300"},{bg:"bg-blue-100 dark:bg-blue-900/30",text:"text-blue-800 dark:text-blue-300"},{bg:"bg-emerald-100 dark:bg-emerald-900/30",text:"text-emerald-800 dark:text-emerald-300"},{bg:"bg-violet-100 dark:bg-violet-900/30",text:"text-violet-800 dark:text-violet-300"},{bg:"bg-rose-100 dark:bg-rose-900/30",text:"text-rose-800 dark:text-rose-300"},{bg:"bg-cyan-100 dark:bg-cyan-900/30",text:"text-cyan-800 dark:text-cyan-300"},{bg:"bg-orange-100 dark:bg-orange-900/30",text:"text-orange-800 dark:text-orange-300"},{bg:"bg-indigo-100 dark:bg-indigo-900/30",text:"text-indigo-800 dark:text-indigo-300"}],eh=new Set(["agent_checkin"]);function eg(e){let{onClose:t}=e,a=(0,l.c)("notifications"),n=(0,o.r)(),{refreshNotifications:i}=el(),u=(0,s.useCallback)(e=>{let t=Date.now()-new Date(e).getTime(),r=Math.floor(t/6e4),s=Math.floor(t/36e5),n=Math.floor(t/864e5);return r<1?a("justNow"):r<60?a("minutesAgo",{count:r}):s<24?a("hoursAgo",{count:s}):a("daysAgo",{count:n})},[a]),[m,x]=(0,s.useState)([]),[f,p]=(0,s.useState)([]),[h,g]=(0,s.useState)(0),[b,j]=(0,s.useState)(0),[v,y]=(0,s.useState)(!0),w=(0,s.useCallback)(async(e,t)=>{let a=new URLSearchParams({limit:"20",offset:String(t)});e&&a.set("unreadOnly","true");let r=await (0,N.tm)("/api/notifications?".concat(a));if(!r.ok)return null;let s=await r.json();return s.success?s.data:null},[]);(0,s.useEffect)(()=>{let e=!1;return async function(){y(!0);let[t,a]=await Promise.all([w(!1,0),w(!0,0)]);e||(t&&(x(t.notifications),g(t.notifications.length<20?t.notifications.length:999)),a&&(p(a.notifications),j(a.unreadCount)),y(!1))}(),()=>{e=!0}},[w]);let k=async()=>{await (0,N.tm)("/api/notifications/read-all",{method:"POST"}),p([]),j(0),x(e=>e.map(e=>e.readAt?e:{...e,readAt:new Date().toISOString()})),i()},A=async e=>{e.readAt||((0,N.tm)("/api/notifications/".concat(e.uuid,"/read"),{method:"PATCH"}),p(t=>t.filter(t=>t.uuid!==e.uuid)),x(t=>t.map(t=>t.uuid===e.uuid?{...t,readAt:new Date().toISOString()}:t)),i()),t(),n.push(function(e){let{action:t,entityType:a,entityUuid:r,projectUuid:s}=e,n="/projects/".concat(s);if("report_created"===t)return"".concat(n,"/dashboard?panel=").concat(r,"&tab=overview");switch(a){case"task":return"".concat(n,"/tasks/").concat(r);case"idea":return"".concat(n,"/dashboard?panel=").concat(r);case"proposal":return"".concat(n,"/proposals/").concat(r);case"document":return"".concat(n,"/documents/").concat(r);default:return n}}(e))},C=async e=>{let t=e?f:m,a=await w(e,t.length);a&&(e?p(e=>[...e,...a.notifications]):x(e=>[...e,...a.notifications]))},S=e=>{let{Icon:t,color:s}=function(e){switch(e){case"task_assigned":case"idea_claimed":return{Icon:Q.A,color:"text-primary"};case"proposal_approved":case"task_verified":return{Icon:X.A,color:"text-green-600"};case"proposal_rejected":case"task_reopened":return{Icon:Z.A,color:"text-red-500"};case"comment_added":return{Icon:ee.A,color:"text-orange-500"};case"mentioned":return{Icon:et.A,color:"text-blue-600"};case"proposal_submitted":return{Icon:ea.A,color:"text-blue-500"};case"task_status_changed":return{Icon:er.A,color:"text-blue-500"};case"report_created":return{Icon:ec.A,color:"text-emerald-600"};default:return{Icon:ea.A,color:"text-muted-foreground"}}}(e.action),n=function(e){let t=0;for(let a=0;a<e.length;a++)t=31*t+e.charCodeAt(a)|0;return ep[Math.abs(t)%ep.length]}(e.projectUuid),o=!e.readAt;return(0,r.jsx)(ed.P.div,{variants:eu.Rf,children:(0,r.jsxs)("button",{onClick:()=>A(e),className:"flex w-full gap-3 px-4 py-3 text-left hover:bg-muted/50 transition-colors border-b border-border last:border-b-0",children:[(0,r.jsx)("div",{className:"mt-1.5 flex-shrink-0",children:o?(0,r.jsx)("div",{className:"h-2 w-2 rounded-full bg-primary"}):(0,r.jsx)("div",{className:"h-2 w-2"})}),(0,r.jsx)("div",{className:"mt-0.5 flex-shrink-0",children:(0,r.jsx)(t,{className:"h-4 w-4 ".concat(s)})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)(ef.E,{variant:"secondary",className:"mb-1 block h-auto max-w-full whitespace-normal break-words px-1.5 py-0 text-[10px] font-medium ".concat(n.bg," ").concat(n.text," border-0"),children:e.projectName}),(0,r.jsx)("div",{className:"text-[13px] font-medium text-foreground break-words",children:e.entityTitle}),(0,r.jsx)("div",{className:"text-[12px] text-muted-foreground break-words",children:a("types.".concat(e.action))}),(0,r.jsxs)("div",{className:"mt-0.5 text-[11px] text-muted-foreground break-words",children:[e.actorName," \xb7 ",u(e.createdAt)]})]})]})},e.uuid)},E=(e,t,s)=>{let n=e.filter(e=>!eh.has(e.action));return v?(0,r.jsxs)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:[a("loadMore"),"..."]}):0===n.length?(0,r.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:t?a("noUnread"):a("noNotifications")}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(ed.P.div,{initial:"initial",animate:"animate",transition:{staggerChildren:.04},children:n.map(S)}),n.length<s&&(0,r.jsx)("div",{className:"p-3 text-center",children:(0,r.jsx)(d.$,{variant:"ghost",size:"sm",className:"text-xs",onClick:()=>C(t),children:a("loadMore")})})]})};return(0,r.jsxs)("div",{className:"w-[calc(100vw-2rem)] max-w-[360px]",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between border-b border-border px-4 py-3",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:a("title")}),(0,r.jsx)(d.$,{variant:"ghost",size:"sm",className:"h-auto p-0 text-xs text-primary hover:text-primary/80",onClick:k,children:a("markAllRead")})]}),(0,r.jsxs)(em.tU,{defaultValue:"unread",className:"gap-0",children:[(0,r.jsxs)(em.j7,{className:"w-full rounded-none border-b border-border bg-transparent px-4 py-0 h-9",children:[(0,r.jsxs)(em.Xi,{value:"unread",className:"text-xs rounded-none data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:[a("tabUnread")," ",b>0&&"(".concat(b,")")]}),(0,r.jsx)(em.Xi,{value:"all",className:"text-xs rounded-none data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:a("tabAll")})]}),(0,r.jsx)(em.av,{value:"all",className:"mt-0",children:(0,r.jsx)(ed.P.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.15},children:(0,r.jsx)(ex.F,{className:"max-h-[400px] overflow-y-auto [&_[data-slot=scroll-area-viewport]>div]:!block",children:E(m,!1,h)})},"tab-all")}),(0,r.jsx)(em.av,{value:"unread",className:"mt-0",children:(0,r.jsx)(ed.P.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.15},children:(0,r.jsx)(ex.F,{className:"max-h-[400px] overflow-y-auto [&_[data-slot=scroll-area-viewport]>div]:!block",children:E(f,!0,b)})},"tab-unread")})]}),(0,r.jsx)("div",{className:"border-t border-border px-4 py-2 text-center",children:(0,r.jsx)(c(),{href:"/settings",onClick:t,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:a("notificationPreferences")})})]})}function eb(){let{unreadCount:e}=el(),[t,a]=(0,s.useState)(!1);return(0,r.jsxs)(L.AM,{open:t,onOpenChange:a,children:[(0,r.jsx)(L.Wv,{asChild:!0,children:(0,r.jsxs)(d.$,{variant:"ghost",size:"icon",className:"relative h-8 w-8 text-muted-foreground hover:text-foreground",children:[(0,r.jsx)(ei.A,{className:"h-4 w-4"}),e>0&&(0,r.jsx)("span",{className:"absolute -top-0.5 -right-0.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[10px] font-medium text-white animate-[pulse-badge_1.5s_ease-in-out_infinite]",children:e>99?"99+":e})]})}),(0,r.jsx)(L.hl,{align:"start",sideOffset:8,className:"w-auto p-0 rounded-lg",children:(0,r.jsx)(eg,{onClose:()=>a(!1)})})]})}var ej=a(68923),ev=a(30044),ey=a(9225),ew=a(85226),eN=a(67103),ek=a(24377),eA=a(14554),eC=a(91846),eS=a(42305);let eE=["all","task","idea","proposal","document","project"],eF={task:"bg-[#EBF5FF] dark:bg-[#132638] text-[#2563EB] dark:text-[#6AA0F5] border-[#2563EB]/20",idea:"bg-[#FEF9C3] dark:bg-[#332e0f] text-[#A16207] dark:text-[#E0B44E] border-[#A16207]/20",proposal:"bg-[#FFF7ED] dark:bg-[#33270f] text-primary border-primary/20",document:"bg-[#F3E8FF] dark:bg-[#261636] text-[#7C3AED] dark:text-[#B79AF0] border-[#7C3AED]/20",project:"bg-[#ECFDF5] dark:bg-[#122a20] text-[#059669] dark:text-[#4FD1A0] border-[#059669]/20",project_group:"bg-[#F0FDFA] dark:bg-[#122a29] text-[#0D9488] dark:text-[#4FD1C0] border-[#0D9488]/20"},eP={all:"filterAll",task:"filterTasks",idea:"filterIdeas",proposal:"filterProposals",document:"filterDocuments",project:"filterProjects",project_group:"filterProjects"};function eT(e){let{currentProjectUuid:t,currentProjectName:a,currentGroupUuid:n,currentGroupName:i}=e,c=(0,l.c)("search"),u=(0,l.c)("time"),m=(0,o.r)(),[x,f]=(0,s.useState)(""),[p,h]=(0,s.useState)(t?"project":n?"group":"global"),[g,b]=(0,s.useState)([]),[j,v]=(0,s.useState)(!1),[y,w]=(0,s.useState)(!1),[N,k]=(0,s.useState)("all"),[S,E]=(0,s.useState)(0),F=(0,s.useRef)(null),P=(0,s.useRef)([]),T=(0,s.useRef)(void 0);(0,s.useEffect)(()=>{h(t?"project":n?"group":"global")},[t,n]),(0,s.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&"k"===e.key&&!e.defaultPrevented&&(e.preventDefault(),w(!0))};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,s.useEffect)(()=>{y?setTimeout(()=>{var e;return null==(e=F.current)?void 0:e.focus()},0):(f(""),b([]),k("all"))},[y]);let R=(0,s.useCallback)(async function(e,a){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"all";if(!e.trim()){b([]),v(!1);return}v(!0);try{let s=new URLSearchParams({q:e.trim(),scope:a,limit:"20"});"project"===a&&t?s.set("scopeUuid",t):"group"===a&&n&&s.set("scopeUuid",n),"all"!==r&&s.set("types",r);let o=await fetch("/api/search?".concat(s.toString()),{credentials:"include"});if(!o.ok){C.q.error("Search failed:",o.status),b([]);return}let l=await o.json();l.success?b(l.data.results):b([])}catch(e){C.q.error("Search error:",e),b([])}finally{v(!1)}},[t,n]),_=(0,s.useCallback)(e=>{f(e),T.current&&clearTimeout(T.current),e.trim()?T.current=setTimeout(()=>{R(e,p,N)},300):(b([]),v(!1))},[p,N,R]),I=(0,s.useCallback)(e=>{h(e),x.trim()&&R(x,e,N)},[x,N,R]),M=(0,s.useCallback)(e=>{k(e),E(0),x.trim()&&R(x,p,e)},[x,p,R]);(0,s.useEffect)(()=>{E(0)},[g]);let U=(0,s.useCallback)(e=>{switch(w(!1),e.entityType){case"task":e.projectUuid&&m.push("/projects/".concat(e.projectUuid,"/tasks/").concat(e.uuid));break;case"idea":e.projectUuid&&m.push("/projects/".concat(e.projectUuid,"/dashboard?panel=").concat(e.uuid));break;case"proposal":e.projectUuid&&m.push("/projects/".concat(e.projectUuid,"/proposals/").concat(e.uuid));break;case"document":e.projectUuid&&m.push("/projects/".concat(e.projectUuid,"/documents/").concat(e.uuid));break;case"project":m.push("/projects/".concat(e.uuid,"/dashboard"));break;case"project_group":m.push("/projects")}},[m]);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(d.$,{variant:"outline",size:"icon",onClick:()=>w(!0),className:"md:w-full md:justify-start md:gap-3 h-9 md:px-3 text-muted-foreground font-normal",children:[(0,r.jsx)(ev.A,{className:"h-4 w-4 shrink-0"}),(0,r.jsx)("span",{className:"hidden md:inline truncate text-sm",children:c("placeholder")}),(0,r.jsxs)("kbd",{className:"ml-auto pointer-events-none hidden md:flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[10px] font-medium",children:[(0,r.jsx)(ey.A,{className:"h-3 w-3"}),(0,r.jsx)("span",{children:"K"})]})]}),(0,r.jsx)(A.lG,{open:y,onOpenChange:w,children:(0,r.jsxs)(A.Cf,{className:"w-[calc(100vw-2rem)] sm:max-w-[600px] p-0 gap-0 overflow-hidden [&>button]:hidden [&>*]:min-w-0 top-4 sm:top-[20%] translate-y-0","aria-describedby":void 0,children:[(0,r.jsx)(A.L3,{className:"sr-only",children:c("placeholder")}),(0,r.jsxs)("div",{className:"flex items-center gap-2 border-b px-3 sm:px-4 py-3",children:[(0,r.jsx)(ev.A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,r.jsx)(eA.p,{ref:F,type:"text",placeholder:c("placeholder"),value:x,onChange:e=>_(e.target.value),onKeyDown:e=>{!(0,eS.P)(e)&&("ArrowDown"===e.key?(e.preventDefault(),E(e=>{var t;let a=Math.min(e+1,g.length-1);return null==(t=P.current[a])||t.scrollIntoView({block:"nearest"}),a})):"ArrowUp"===e.key?(e.preventDefault(),E(e=>{var t;let a=Math.max(e-1,0);return null==(t=P.current[a])||t.scrollIntoView({block:"nearest"}),a})):"Enter"===e.key&&g.length>0&&(e.preventDefault(),U(g[S])))},className:"border-0 shadow-none focus-visible:ring-0 h-8 px-0 text-sm min-w-0"}),j&&(0,r.jsx)(ew.A,{className:"h-4 w-4 shrink-0 animate-spin text-muted-foreground"}),(0,r.jsxs)(eC.l6,{value:p,onValueChange:e=>I(e),children:[(0,r.jsx)(eC.bq,{className:"w-auto h-7 text-xs gap-1 border-dashed shrink-0",children:(0,r.jsx)(eC.yv,{})}),(0,r.jsxs)(eC.gC,{children:[(0,r.jsx)(eC.eb,{value:"global",children:c("scopeGlobal")}),n&&(0,r.jsx)(eC.eb,{value:"group",children:i||c("scopeGroup")}),t&&(0,r.jsx)(eC.eb,{value:"project",children:a||c("scopeProject")})]})]})]}),x.trim()&&(0,r.jsx)("div",{className:"flex items-center gap-1 border-b px-4 py-2 overflow-x-auto",children:eE.map(e=>(0,r.jsx)(d.$,{variant:N===e?"default":"ghost",size:"sm",onClick:()=>M(e),className:(0,ek.cn)("h-7 px-3 text-xs rounded-full shrink-0",N===e?"bg-foreground text-background hover:bg-foreground/90":"text-muted-foreground hover:text-foreground"),children:c(eP[e])},e))}),(0,r.jsx)(ex.F,{className:"max-h-[400px]",children:(0,r.jsx)(eN.N,{mode:"wait",children:x.trim()?j?(0,r.jsx)(ed.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:eu.Yv.fast},children:(0,r.jsxs)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:[(0,r.jsx)(ew.A,{className:"h-5 w-5 animate-spin mx-auto mb-2"}),c("placeholder"),"..."]})},"loading"):0===g.length?(0,r.jsx)(ed.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:eu.Yv.fast},children:(0,r.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:c("noResults")})},"no-results"):(0,r.jsx)(ed.P.div,{initial:"initial",animate:"animate",transition:{staggerChildren:eu.Yv.staggerFast},className:"p-2",children:g.map((e,t)=>(0,r.jsx)(ed.P.div,{variants:eu.Rf,children:(0,r.jsxs)("button",{ref:e=>{P.current[t]=e},onClick:()=>U(e),onMouseEnter:()=>E(t),className:(0,ek.cn)("block w-full text-left px-3 py-2.5 rounded-lg transition-colors cursor-pointer overflow-hidden",t===S?"bg-accent":"hover:bg-accent/50"),children:[(0,r.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5 mb-0.5",children:[(0,r.jsx)(ef.E,{variant:"outline",className:(0,ek.cn)("text-[10px] px-1.5 py-0 shrink-0",eF[e.entityType]||"bg-muted text-muted-foreground"),children:c("entityType.".concat(e.entityType))}),e.status&&(0,r.jsx)(ef.E,{variant:"secondary",className:"text-[10px] px-1.5 py-0 shrink-0",children:e.status}),e.projectName&&(0,r.jsx)("span",{className:"text-[10px] text-muted-foreground line-clamp-1 ml-auto",children:e.projectName})]}),(0,r.jsx)("div",{className:"font-medium text-sm line-clamp-1 break-all",children:e.title}),e.snippet&&(0,r.jsx)("div",{className:"text-xs text-muted-foreground line-clamp-1 mt-0.5 break-all",children:e.snippet}),(0,r.jsx)("div",{className:"text-[10px] text-muted-foreground mt-1",children:(e=>{let t=Math.floor((Date.now()-new Date(e).getTime())/1e3);return t<60?u("justNow"):t<3600?u("minutesAgo",{minutes:Math.floor(t/60)}):t<86400?u("hoursAgo",{hours:Math.floor(t/3600)}):u("daysAgo",{days:Math.floor(t/86400)})})(e.updatedAt)})]})},"".concat(e.entityType,"-").concat(e.uuid)))},"results-".concat(N)):(0,r.jsx)(ed.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:eu.Yv.fast},children:(0,r.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:c("placeholder")})},"empty")})}),(0,r.jsxs)("div",{className:"hidden sm:flex items-center justify-between border-t px-4 py-2 text-[10px] text-muted-foreground",children:[(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"↑"}),(0,r.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"↓"}),c("filterAll")]}),(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"⏎"}),"Open"]})]}),(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"Esc"}),"Close"]})]})]})})]})}function eR(e){let{children:t}=e,a=function(e){let t=e.match(/^(\/projects\/[a-f0-9-]{36}\/(tasks|documents|proposals))\/.+$/);return t?t[1]:e}((0,n.usePathname)());return(0,r.jsx)(ed.P.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:eu.Yv.normal,ease:eu.Yv.easeOut},className:"flex-1 flex flex-col",children:t},a)}var e_=a(73748);let eI=e=>{let{style:t,...a}=e,{resolvedTheme:s}=(0,e_.D)();return(0,r.jsx)(J.l$,{theme:"dark"===s?"dark":"light",className:"toaster group",...a,style:{...t,"--normal-bg":"var(--color-card)","--normal-text":"var(--color-foreground)","--normal-border":"var(--color-border)"}})};function eM(e){let{children:t}=e,a=(0,o.r)(),i=(0,n.usePathname)(),k=(0,l.c)(),[A,S]=(0,s.useState)(null),[E,F]=(0,s.useState)(null),[P,T]=(0,s.useState)([]),[R,_]=(0,s.useState)(!0),[O,z]=(0,s.useState)(!1),[L,$]=(0,s.useState)(!1),[Y,q]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let e=window.matchMedia("(max-width: 767px)");q(e.matches);let t=e=>q(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]),(0,s.useEffect)(()=>{$(!1)},[i]);let H=function(e){let t=e.match(/^\/projects\/([a-f0-9-]{36})(\/|$)/);return t?t[1]:null}(i),G=function(e){let t=e.match(/^\/project-groups\/([a-f0-9-]{36})(\/|$)/);return t?t[1]:null}(i),[V,J]=(0,s.useState)(null);(0,s.useEffect)(()=>{if(!G)return void J(null);(0,N.tm)("/api/project-groups/".concat(G)).then(e=>e.ok?e.json():null).then(e=>{(null==e?void 0:e.success)&&J(e.data.name)}).catch(()=>J(null))},[G]);let Q="/projects"===i||"/settings"===i||i.startsWith("/project-groups"),X=H&&!Q,Z=i.match(/^\/projects\/[a-f0-9-]{36}\/(tasks|graph)(\/|$)/);(0,s.useEffect)(()=>{ee()},[]),(0,s.useEffect)(()=>{if(!H||Q){F(null),T([]);return}let e=!1;return async function(){try{var t;let a=await (0,N.tm)("/api/projects/".concat(H));if(!a.ok||e)return;let r=await a.json();if(!r.success||e)return;let s={uuid:r.data.uuid,name:r.data.name,groupUuid:null!=(t=r.data.groupUuid)?t:null};if(F(s),s.groupUuid){let t=await (0,N.tm)("/api/project-groups/".concat(s.groupUuid));if(!t.ok||e)return;let a=await t.json();a.success&&!e&&T((a.data.projects||[]).filter(e=>e.uuid!==H))}else T([])}catch(e){C.q.error("Failed to fetch current project:",e)}}(),()=>{e=!0}},[H,Q]);let ee=async()=>{try{let e=await (0,N.tm)("/api/session");if(401===e.status&&(e=await (0,N.tm)("/api/session")),401===e.status||!e.ok)return void _(!1);let t=await e.json();t.success&&t.data.user&&S({uuid:t.data.user.uuid,email:t.data.user.email,name:t.data.user.name||t.data.user.email})}catch(e){C.q.error("Session check failed:",e)}_(!1)},et=async()=>{try{await (0,N.ri)()}catch(e){(0,N.w9)()}a.push("/login")};if(R)return(0,r.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,r.jsx)("div",{className:"text-muted-foreground",children:k("common.loading")})});let ea=[{href:"/projects",label:k("nav.projects"),icon:g.A},{href:"/settings",label:k("nav.settings"),icon:b.A}],er=e=>e.endsWith("/dashboard")?i===e:"/projects"===e?"/projects"===i:i===e||i.startsWith(e+"/"),es=e=>{var t;let{mobile:s=!1}=e,n=s?"text-[15px]":"text-[13px]",o=s?"h-5 w-5":"h-4 w-4",l=s?"gap-1.5":"gap-1",i=s?"h-10":"",g=s?"text-[13px]":"text-[11px]",b=s?"text-[15px]":"text-[13px]",w=s?"text-[12px]":"text-[11px]";return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"flex flex-col gap-8 p-6",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,r.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-7 w-7"}),(0,r.jsx)("span",{className:"text-base font-semibold text-foreground",children:k("common.appName")})]}),(0,r.jsx)("div",{className:"hidden md:block",children:(0,r.jsx)(eb,{})})]}),!s&&(0,r.jsx)(eT,{currentProjectUuid:H||void 0,currentProjectName:null==E?void 0:E.name,currentGroupUuid:G||void 0,currentGroupName:V||void 0}),(0,r.jsx)("nav",{className:"flex flex-col ".concat(l),children:X&&H?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(c(),{href:"/projects",children:(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",className:"w-full justify-start gap-2.5 text-muted-foreground hover:text-foreground ".concat(n," ").concat(i),children:[(0,r.jsx)(j.A,{className:s?"h-4 w-4":"h-3 w-3"}),k("nav.backToProjects")]})}),E&&(0,r.jsxs)("div",{className:"relative mt-2",children:[(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",onClick:()=>P.length>0&&z(!O),className:"w-full justify-between px-3 py-1.5 ".concat(0===P.length?"cursor-default":""),children:[(0,r.jsx)("span",{className:"truncate font-semibold uppercase tracking-wider text-foreground ".concat(g),children:E.name}),P.length>0&&(0,r.jsx)(v.A,{className:"h-3 w-3 text-muted-foreground transition-transform ".concat(O?"rotate-180":"")})]}),(0,r.jsx)(eN.N,{children:O&&P.length>0&&(0,r.jsx)(ed.P.div,{variants:eu.K5,initial:"initial",animate:"animate",exit:"exit",className:"absolute left-0 right-0 top-full z-10 mt-1 origin-top rounded-lg border border-border bg-card py-1 shadow-lg",children:P.map(e=>(0,r.jsx)(d.$,{variant:"ghost",size:"sm",onClick:()=>{z(!1),a.push("/projects/".concat(e.uuid,"/dashboard"))},className:"w-full justify-start px-3 py-2 ".concat(n," [&>*]:truncate text-muted-foreground"),children:(0,r.jsx)("span",{className:"truncate",children:e.name})},e.uuid))})})]}),(0,r.jsx)("div",{className:"mt-2 flex flex-col ".concat(l),children:[{href:"/projects/".concat(H,"/dashboard"),label:k("nav.overview"),icon:u.A},{href:"/projects/".concat(H,"/documents"),label:k("nav.documents"),icon:m.A},{href:"/projects/".concat(H,"/proposals"),label:k("nav.proposals"),icon:x.A},{href:"/projects/".concat(H,"/tasks"),label:k("nav.tasks"),icon:f.A},{href:"/projects/".concat(H,"/graph"),label:k("nav.graph"),icon:p.A},{href:"/projects/".concat(H,"/activity"),label:k("nav.activity"),icon:h.A}].map(e=>{let t=er(e.href),a=e.icon;return(0,r.jsx)(c(),{href:e.href,children:(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",className:"relative w-full justify-start gap-2.5 ".concat(n," ").concat(i," ").concat(t?"font-medium text-foreground":"text-muted-foreground hover:text-foreground"),children:[t&&(0,r.jsx)(ed.P.div,{layoutId:"nav-active",className:"absolute inset-0 rounded-md bg-secondary",transition:{type:"spring",stiffness:500,damping:30}}),(0,r.jsxs)("span",{className:"relative flex items-center gap-2.5",children:[(0,r.jsx)(a,{className:"".concat(o," ").concat(t?"text-primary":"")}),e.label]})]})},e.href)})})]}):(0,r.jsx)(r.Fragment,{children:(0,r.jsx)("div",{className:"flex flex-col ".concat(l),children:ea.map(e=>{let t=er(e.href),a=e.icon;return(0,r.jsx)(c(),{href:e.href,children:(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",className:"relative w-full justify-start gap-2.5 ".concat(n," ").concat(i," ").concat(t?"font-medium text-foreground":"text-muted-foreground hover:text-foreground"),children:[t&&(0,r.jsx)(ed.P.div,{layoutId:"nav-active",className:"absolute inset-0 rounded-md bg-secondary",transition:{type:"spring",stiffness:500,damping:30}}),(0,r.jsxs)("span",{className:"relative flex items-center gap-2.5",children:[(0,r.jsx)(a,{className:"".concat(o," ").concat(t?"text-primary":"")}),e.label]})]})},e.href)})})})})]}),(0,r.jsxs)("div",{className:"mt-auto flex flex-col gap-1 px-4 pb-4",children:[(0,r.jsx)(K.H,{mobile:s}),(0,r.jsx)(W,{mobile:s}),(0,r.jsx)("div",{className:"px-2 pt-1",children:(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("div",{className:"flex items-center justify-center rounded-full bg-primary font-medium text-primary-foreground ".concat(s?"h-10 w-10 text-base":"h-9 w-9 text-sm"),children:(null==A||null==(t=A.name)?void 0:t.charAt(0))||"U"}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"truncate font-medium text-foreground ".concat(b),children:null==A?void 0:A.name}),(0,r.jsx)("div",{className:"truncate text-muted-foreground ".concat(w),children:null==A?void 0:A.email})]}),(0,r.jsx)(d.$,{variant:"ghost",size:"icon",onClick:et,title:k("common.signOut"),className:"h-8 w-8 text-muted-foreground hover:text-foreground",children:(0,r.jsx)(y.A,{className:"h-4 w-4"})})]})})]})]})};return(0,r.jsxs)(eo,{children:[(0,r.jsx)(D.OJ,{children:(0,r.jsxs)(U.Oj,{children:[(0,r.jsx)(B.MH,{}),(0,r.jsxs)("div",{className:"flex min-h-screen bg-background",children:[(0,r.jsx)("header",{className:"fixed top-0 left-0 right-0 z-30 border-b border-border bg-card md:hidden",children:(0,r.jsxs)("div",{className:"flex h-14 items-center justify-between px-4",children:[(0,r.jsx)("button",{onClick:()=>$(!0),"aria-label":k("nav.openMenu"),children:(0,r.jsx)(w.A,{className:"h-5 w-5 text-muted-foreground"})}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-6 w-6"}),(0,r.jsx)("span",{className:"text-sm font-semibold text-foreground",children:k("common.appName")})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(eT,{currentProjectUuid:H||void 0,currentProjectName:null==E?void 0:E.name,currentGroupUuid:G||void 0,currentGroupName:V||void 0}),(0,r.jsx)(eb,{})]})]})}),(0,r.jsx)(ej.cj,{open:L,onOpenChange:$,children:(0,r.jsx)(ej.h,{side:"left",className:"w-[280px] p-0",children:(0,r.jsx)("div",{className:"flex h-full flex-col justify-between overflow-y-auto",children:(0,r.jsx)(es,{mobile:!0})})})}),(0,r.jsx)("aside",{className:"hidden md:sticky md:top-0 md:flex h-screen w-[220px] flex-shrink-0 flex-col justify-between overflow-y-auto border-r border-border bg-card",children:(0,r.jsx)(es,{})}),X&&H?(0,r.jsxs)(I.tS,{projectUuid:H,children:[(0,r.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,r.jsx)("div",{className:"mx-auto w-full flex-1 flex flex-col ".concat(Z?"":"max-w-[1200px]"),children:(0,r.jsx)(eR,{children:t})})}),(0,r.jsx)(M,{projectUuid:H,projectName:(null==E?void 0:E.name)||""})]}):"/projects"===i||i.startsWith("/project-groups")?(0,r.jsx)(I.tS,{children:(0,r.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,r.jsx)("div",{className:"mx-auto w-full flex-1 flex flex-col ".concat(Z?"":"max-w-[1200px]"),children:(0,r.jsx)(eR,{children:t})})})}):(0,r.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,r.jsx)("div",{className:"mx-auto w-full flex-1 flex flex-col ".concat(Z?"":"max-w-[1200px]"),children:(0,r.jsx)(eR,{children:t})})})]})]})}),(0,r.jsx)(eI,{position:Y?"top-center":"top-right",closeButton:!Y})]})}},32277:(e,t,a)=>{"use strict";a.d(t,{LocaleProvider:()=>u,Y:()=>d});var r=a(90508),s=a(1856),n=a(57472),o=a(25359),l=a(67712);let i="chorus-locale",c=(0,s.createContext)(null);function d(){let e=(0,s.useContext)(c);if(!e)throw Error("useLocale must be used within LocaleProvider");return e}function u(e){let{children:t}=e,[d,u]=(0,s.useState)(o.q),[m,x]=(0,s.useState)(null),[f,p]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let e,t=localStorage.getItem(i);t&&o.IB.includes(t)?e=t:(e=(0,o.AL)(),localStorage.setItem(i,e)),u(e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),p(!0)},[]),(0,s.useEffect)(()=>{f&&a(15272)("./".concat(d,".json")).then(e=>{x(e.default)}).catch(e=>{l.q.error("Failed to load messages for locale ".concat(d,":"),e),a(15272)("./".concat(o.q,".json")).then(e=>{x(e.default)})})},[d,f]);let h=(0,s.useCallback)(e=>{u(e),localStorage.setItem(i,e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),document.documentElement.lang=e},[]);return f&&m?(0,r.jsx)(c.Provider,{value:{locale:d,setLocale:h},children:(0,r.jsx)(n.A,{locale:d,messages:m,children:t})}):null}},39674:(e,t,a)=>{"use strict";a.d(t,{Xi:()=>i,av:()=>c,j7:()=>l,tU:()=>o});var r=a(90508);a(1856);var s=a(79834),n=a(24377);function o(e){let{className:t,...a}=e;return(0,r.jsx)(s.Root,{"data-slot":"tabs",className:(0,n.cn)("flex flex-col gap-2",t),...a})}function l(e){let{className:t,...a}=e;return(0,r.jsx)(s.List,{"data-slot":"tabs-list",className:(0,n.cn)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...a})}function i(e){let{className:t,...a}=e;return(0,r.jsx)(s.Trigger,{"data-slot":"tabs-trigger",className:(0,n.cn)("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a})}function c(e){let{className:t,...a}=e;return(0,r.jsx)(s.Content,{"data-slot":"tabs-content",className:(0,n.cn)("flex-1 outline-none",t),...a})}},62926:(e,t,a)=>{"use strict";a.d(t,{H:()=>p});var r=a(90508),s=a(1856),n=a(73748),o=a(39268),l=a(57930),i=a(86589),c=a(68842),d=a(81149),u=a(22922),m=a(66343),x=a(32277),f=a(25359);function p(e){let{mobile:t=!1}=e,a=(0,o.c)(),{theme:p,setTheme:h}=(0,n.D)(),{locale:g,setLocale:b}=(0,x.Y)(),[j,v]=(0,s.useState)(!1);(0,s.useEffect)(()=>v(!0),[]);let y=j?p:void 0,w="light"===y?l.A:"dark"===y?i.A:c.A,N=a("light"===y?"theme.light":"dark"===y?"theme.dark":"theme.system"),k=t?"h-8 min-w-8 px-2":"h-7 min-w-7 px-1.5",A=t?"h-4 w-4":"h-3.5 w-3.5";return(0,r.jsxs)("div",{className:"flex items-center gap-1 px-2 pt-0.5",children:[(0,r.jsxs)(m.rI,{children:[(0,r.jsx)(m.ty,{asChild:!0,children:(0,r.jsxs)(u.$,{variant:"ghost",size:"sm",className:"".concat(k," justify-center gap-1.5 text-muted-foreground hover:text-foreground"),"aria-label":a("theme.toggleLabel"),title:a("theme.toggleLabel"),children:[(0,r.jsx)(w,{className:A}),(0,r.jsx)("span",{className:"text-[12px] font-medium",suppressHydrationWarning:!0,children:j?N:a("theme.system")})]})}),(0,r.jsxs)(m.SQ,{align:"start",side:"top",className:"w-40",children:[(0,r.jsx)(m.lp,{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:a("theme.toggleLabel")}),(0,r.jsxs)(m.Hr,{value:null!=y?y:"system",onValueChange:e=>h(e),children:[(0,r.jsxs)(m.Ht,{value:"light",children:[(0,r.jsx)(l.A,{className:"mr-2 h-4 w-4"}),a("theme.light")]}),(0,r.jsxs)(m.Ht,{value:"dark",children:[(0,r.jsx)(i.A,{className:"mr-2 h-4 w-4"}),a("theme.dark")]}),(0,r.jsxs)(m.Ht,{value:"system",children:[(0,r.jsx)(c.A,{className:"mr-2 h-4 w-4"}),a("theme.system")]})]})]})]}),(0,r.jsx)("span",{className:"h-4 w-px bg-border","aria-hidden":!0}),(0,r.jsxs)(m.rI,{children:[(0,r.jsx)(m.ty,{asChild:!0,children:(0,r.jsxs)(u.$,{variant:"ghost",size:"sm",className:"".concat(k," justify-center gap-1.5 text-muted-foreground hover:text-foreground"),"aria-label":a("settings.language"),title:a("settings.language"),children:[(0,r.jsx)(d.A,{className:A}),(0,r.jsx)("span",{className:"text-[12px] font-medium leading-none",children:f.L$[g]})]})}),(0,r.jsxs)(m.SQ,{align:"start",side:"top",className:"w-40",children:[(0,r.jsx)(m.lp,{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:a("settings.language")}),(0,r.jsx)(m.Hr,{value:g,onValueChange:e=>b(e),children:f.IB.map(e=>(0,r.jsx)(m.Ht,{value:e,children:f.L$[e]},e))})]})]})]})}},63964:(e,t,a)=>{"use strict";a.d(t,{S2:()=>c,eV:()=>i,l9:()=>l,tS:()=>o,w0:()=>d});var r=a(90508),s=a(1856);a(91814);let n=(0,s.createContext)(null);function o(e){let{projectUuid:t,children:a}=e,o=(0,s.useRef)(new Set),l=(0,s.useRef)(new Set),i=(0,s.useRef)(new Set),c=(0,s.useRef)(new Set),d=(0,s.useCallback)(()=>{o.current.forEach(e=>e())},[]),u=(0,s.useCallback)(e=>{l.current.forEach(t=>t(e))},[]);(0,s.useEffect)(()=>{let e,a=null,r=0,s={};function n(){o(),(a=new EventSource(t?"/api/events?projectUuid=".concat(t):"/api/events")).onmessage=t=>{let a=null;try{a=JSON.parse(t.data)}catch(e){return}if(!a)return;if("presence"===a.type)return void i.current.forEach(e=>e(a));if("execution"===a.type)return void c.current.forEach(e=>e(a));let n=a;clearTimeout(e);let o=Date.now(),l=o-r;l>=3e3?(r=o,d()):e=setTimeout(()=>{r=Date.now(),d()},Math.max(1e3,3e3-l));let m=n.entityType;clearTimeout(s[m]),s[m]=setTimeout(()=>{u(n)},300)},a.onerror=()=>{}}function o(){a&&(a.close(),a=null)}function l(){if("visible"===document.visibilityState&&(!a||a.readyState===EventSource.CLOSED))for(let e of(n(),d(),["task","idea","proposal","document","project","project_group"]))u({companyUuid:"",projectUuid:"",entityType:e,entityUuid:"",action:"updated"})}return n(),document.addEventListener("visibilitychange",l),()=>{for(let t in o(),clearTimeout(e),s)clearTimeout(s[t]);document.removeEventListener("visibilitychange",l)}},[t,d,u]);let m=(0,s.useCallback)(e=>(o.current.add(e),()=>{o.current.delete(e)}),[]),x=(0,s.useCallback)(e=>(l.current.add(e),()=>{l.current.delete(e)}),[]),f=(0,s.useCallback)(e=>(i.current.add(e),()=>{i.current.delete(e)}),[]),p=(0,s.useCallback)(e=>(c.current.add(e),()=>{c.current.delete(e)}),[]),h=(0,s.useMemo)(()=>({subscribe:m,subscribeEntity:x,subscribePresence:f,subscribeExecution:p}),[m,x,f,p]);return(0,r.jsx)(n.Provider,{value:h,children:a})}function l(e){let t=(0,s.useContext)(n),a=(0,s.useRef)(e);a.current=e,(0,s.useEffect)(()=>{if(!t)return;let e=()=>a.current();return e(),t.subscribe(e)},[t])}function i(e,t){let a=(0,s.useContext)(n),r=(0,s.useRef)(t);r.current=t;let o=(0,s.useRef)(e);o.current=e,(0,s.useEffect)(()=>{if(a)return a.subscribeEntity(e=>{let t=o.current;(Array.isArray(t)?t.includes(e.entityType):e.entityType===t)&&r.current(e)})},[a])}function c(e){let t=(0,s.useContext)(n),a=(0,s.useRef)(e);a.current=e,(0,s.useEffect)(()=>{if(t)return t.subscribePresence(e=>a.current(e))},[t])}function d(e,t,a){let r=(0,s.useContext)(n),o=(0,s.useRef)(a);o.current=a,(0,s.useEffect)(()=>{if(r)return r.subscribeEntity(a=>{a.entityType===e&&a.entityUuid===t&&o.current(a)})},[r,e,t])}},65626:(e,t,a)=>{"use strict";a.d(t,{K5:()=>i,Rf:()=>l,Yv:()=>r,bK:()=>o,qG:()=>n,tE:()=>s});let r={fast:.15,normal:.2,slow:.3,easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1],stagger:.04,staggerFast:.03,spring:{type:"spring",stiffness:500,damping:30},tween:{type:"tween",duration:.2,ease:[0,0,.2,1]}},s={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:r.normal,ease:r.easeOut}},exit:{opacity:0,y:-4,transition:{duration:r.fast,ease:r.easeOut}}},n={initial:{opacity:0},animate:{opacity:1,transition:{duration:r.normal,ease:r.easeOut}},exit:{opacity:0,transition:{duration:r.fast,ease:r.easeOut}}};r.normal,r.easeOut,r.fast,r.easeOut;let o={initial:{},animate:{transition:{staggerChildren:r.stagger}}},l={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:r.normal,ease:r.easeOut}}},i={initial:{opacity:0,scale:.95,y:-4},animate:{opacity:1,scale:1,y:0,transition:{duration:r.fast,ease:r.easeOut}},exit:{opacity:0,scale:.95,y:-4,transition:{duration:r.fast,ease:r.easeOut}}}},66343:(e,t,a)=>{"use strict";a.d(t,{Hr:()=>f,Ht:()=>u,SQ:()=>c,_2:()=>d,lp:()=>m,mB:()=>x,rI:()=>l,ty:()=>i});var r=a(90508);a(1856);var s=a(97964),n=a(39025),o=a(24377);function l(e){let{...t}=e;return(0,r.jsx)(n.Root,{"data-slot":"dropdown-menu",...t})}function i(e){let{...t}=e;return(0,r.jsx)(n.Trigger,{"data-slot":"dropdown-menu-trigger",...t})}function c(e){let{className:t,sideOffset:a=4,...s}=e;return(0,r.jsx)(n.Portal,{children:(0,r.jsx)(n.Content,{"data-slot":"dropdown-menu-content",sideOffset:a,className:(0,o.cn)("bg-popover text-popover-foreground z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s})})}function d(e){let{className:t,inset:a,variant:s="default",...l}=e;return(0,r.jsx)(n.Item,{"data-slot":"dropdown-menu-item","data-inset":a,"data-variant":s,className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0","data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive","data-[inset]:pl-8 [&_svg]:size-4",t),...l})}function u(e){let{className:t,children:a,...l}=e;return(0,r.jsxs)(n.RadioItem,{"data-slot":"dropdown-menu-radio-item",className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:size-4",t),...l,children:[(0,r.jsx)("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:(0,r.jsx)(n.ItemIndicator,{children:(0,r.jsx)(s.A,{className:"size-2 fill-current"})})}),a]})}function m(e){let{className:t,inset:a,...s}=e;return(0,r.jsx)(n.Label,{"data-slot":"dropdown-menu-label","data-inset":a,className:(0,o.cn)("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",t),...s})}function x(e){let{className:t,...a}=e;return(0,r.jsx)(n.Separator,{"data-slot":"dropdown-menu-separator",className:(0,o.cn)("bg-border -mx-1 my-1 h-px",t),...a})}function f(e){let{...t}=e;return(0,r.jsx)(n.RadioGroup,{"data-slot":"dropdown-menu-radio-group",...t})}},68923:(e,t,a)=>{"use strict";a.d(t,{CG:()=>c,Fm:()=>f,cj:()=>i,h:()=>x,qp:()=>p});var r=a(90508);a(1856);var s=a(9160),n=a(71350),o=a(49499),l=a(24377);function i(e){let{...t}=e;return(0,r.jsx)(n.Root,{"data-slot":"sheet",...t})}function c(e){let{...t}=e;return(0,r.jsx)(n.Trigger,{"data-slot":"sheet-trigger",...t})}function d(e){let{...t}=e;return(0,r.jsx)(n.Portal,{"data-slot":"sheet-portal",...t})}function u(e){let{className:t,...a}=e;return(0,r.jsx)(n.Overlay,{"data-slot":"sheet-overlay",className:(0,l.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...a})}let m=(0,o.F)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 border-b",bottom:"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 border-t",left:"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",right:"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm"}},defaultVariants:{side:"right"}});function x(e){let{className:t,children:a,side:o="right",...i}=e;return(0,r.jsxs)(d,{children:[(0,r.jsx)(u,{}),(0,r.jsxs)(n.Content,{"data-slot":"sheet-content",className:(0,l.cn)(m({side:o}),t),...i,children:[a,(0,r.jsxs)(n.Close,{"data-slot":"sheet-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none",children:[(0,r.jsx)(s.A,{className:"size-4"}),(0,r.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function f(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"sheet-header",className:(0,l.cn)("flex flex-col gap-2 p-4",t),...a})}function p(e){let{className:t,...a}=e;return(0,r.jsx)(n.Title,{"data-slot":"sheet-title",className:(0,l.cn)("text-foreground text-lg font-semibold",t),...a})}}},e=>{e.O(0,[93151,41752,12079,18944,27290,12790,26885,21932,14655,30724,16544,94170,83285,27201,16551,97784,14753,45532,70552,89836,15183,38296,87325,39025,43111,84169,74951,65496,77358],()=>e(e.s=5877)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[14997],{17475:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},30509:(e,t,r)=>{"use strict";r.d(t,{HB:()=>n,JK:()=>l,XQ:()=>o,bN:()=>i,vh:()=>s});var a=r(14655);function n(e){let t=function(e){let t=window.location.origin,r=new a.O({store:window.localStorage});return{authority:e.issuer,client_id:e.clientId,redirect_uri:"".concat(t,"/login/callback"),post_logout_redirect_uri:"".concat(t,"/login"),response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,userStore:r,extraQueryParams:{company:e.companyUuid}}}(e);return new a.$5(t)}function s(e){localStorage.setItem("oidc_config",JSON.stringify(e))}function o(){let e=localStorage.getItem("oidc_config");if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function l(){localStorage.removeItem("oidc_config")}function i(e){return{sub:e.profile.sub,email:e.profile.email,name:e.profile.name,picture:e.profile.picture,accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_at,idToken:e.id_token}}},38106:(e,t,r)=>{"use strict";function a(e){let t="string"==typeof e?new Date(e):e;if(isNaN(t.getTime()))return"";let r=t.getFullYear(),a=String(t.getMonth()+1).padStart(2,"0"),n=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),o=String(t.getMinutes()).padStart(2,"0");return"".concat(r,"-").concat(a,"-").concat(n," ").concat(s,":").concat(o)}function n(e,t){let r="string"==typeof e?new Date(e):e;return isNaN(r.getTime())?"":r.toLocaleDateString(t,{month:"short",day:"numeric"})}r.d(t,{r:()=>a,s:()=>n})},52309:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},62990:(e,t,r)=>{"use strict";r.d(t,{IT:()=>c,cC:()=>u,hj:()=>o,ri:()=>p,tm:()=>d,w9:()=>l});var a=r(30509);let n=null;function s(){if(!n){let e=(0,a.XQ)();e&&(n=(0,a.HB)(e))}return n}function o(e){return(0,a.vh)(e),n=(0,a.HB)(e)}function l(){n=null}async function i(){let e=s();if(!e)return null;try{return await e.getUser()}catch(e){return null}}async function c(){let e=await i();if(!(null==e?void 0:e.refresh_token)||!e.access_token)return!1;try{return(await fetch("/api/auth/sync-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e.access_token,refreshToken:e.refresh_token})})).ok}catch(e){return!1}}async function d(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fetch(e,{...t,credentials:"same-origin"})}async function u(){let e=s();if(e)try{await e.removeUser()}catch(e){}l(),(0,a.JK)()}async function p(){try{await fetch("/api/auth/logout",{method:"POST"})}catch(e){}let e=s();if(e)try{await e.removeUser()}catch(e){}l(),(0,a.JK)()}},71350:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Close:()=>es,Content:()=>er,Description:()=>en,Dialog:()=>C,DialogClose:()=>W,DialogContent:()=>M,DialogDescription:()=>H,DialogOverlay:()=>T,DialogPortal:()=>_,DialogTitle:()=>J,DialogTrigger:()=>D,Overlay:()=>et,Portal:()=>ee,Root:()=>X,Title:()=>ea,Trigger:()=>Y,WarningProvider:()=>L,createDialogScope:()=>y});var a=r(1856),n=r(33328),s=r(34124),o=r(21032),l=r(40577),i=r(66249),c=r(63569),d=r(80491),u=r(17533),p=r(19900),m=r(93367),x=r(12139),f=r(46523),g=r(2188),h=r(54154),j=r(90508),v="Dialog",[b,y]=(0,o.A)(v),[N,w]=b(v),C=e=>{let{__scopeDialog:t,children:r,open:n,defaultOpen:s,onOpenChange:o,modal:c=!0}=e,d=a.useRef(null),u=a.useRef(null),[p,m]=(0,i.i)({prop:n,defaultProp:null!=s&&s,onChange:o,caller:v});return(0,j.jsx)(N,{scope:t,triggerRef:d,contentRef:u,contentId:(0,l.B)(),titleId:(0,l.B)(),descriptionId:(0,l.B)(),open:p,onOpenChange:m,onOpenToggle:a.useCallback(()=>m(e=>!e),[m]),modal:c,children:r})};C.displayName=v;var A="DialogTrigger",D=a.forwardRef((e,t)=>{let{__scopeDialog:r,...a}=e,o=w(A,r),l=(0,s.s)(t,o.triggerRef);return(0,j.jsx)(m.sG.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":$(o.open),...a,ref:l,onClick:(0,n.mK)(e.onClick,o.onOpenToggle)})});D.displayName=A;var k="DialogPortal",[E,S]=b(k,{forceMount:void 0}),_=e=>{let{__scopeDialog:t,forceMount:r,children:n,container:s}=e,o=w(k,t);return(0,j.jsx)(E,{scope:t,forceMount:r,children:a.Children.map(n,e=>(0,j.jsx)(p.C,{present:r||o.open,children:(0,j.jsx)(u.Portal,{asChild:!0,container:s,children:e})}))})};_.displayName=k;var O="DialogOverlay",T=a.forwardRef((e,t)=>{let r=S(O,e.__scopeDialog),{forceMount:a=r.forceMount,...n}=e,s=w(O,e.__scopeDialog);return s.modal?(0,j.jsx)(p.C,{present:a||s.open,children:(0,j.jsx)(R,{...n,ref:t})}):null});T.displayName=O;var P=(0,h.TL)("DialogOverlay.RemoveScroll"),R=a.forwardRef((e,t)=>{let{__scopeDialog:r,...a}=e,n=w(O,r);return(0,j.jsx)(f.A,{as:P,allowPinchZoom:!0,shards:[n.contentRef],children:(0,j.jsx)(m.sG.div,{"data-state":$(n.open),...a,ref:t,style:{pointerEvents:"auto",...a.style}})})}),I="DialogContent",M=a.forwardRef((e,t)=>{let r=S(I,e.__scopeDialog),{forceMount:a=r.forceMount,...n}=e,s=w(I,e.__scopeDialog);return(0,j.jsx)(p.C,{present:a||s.open,children:s.modal?(0,j.jsx)(F,{...n,ref:t}):(0,j.jsx)(B,{...n,ref:t})})});M.displayName=I;var F=a.forwardRef((e,t)=>{let r=w(I,e.__scopeDialog),o=a.useRef(null),l=(0,s.s)(t,r.contentRef,o);return a.useEffect(()=>{let e=o.current;if(e)return(0,g.Eq)(e)},[]),(0,j.jsx)(G,{...e,ref:l,trapFocus:r.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,n.mK)(e.onCloseAutoFocus,e=>{var t;e.preventDefault(),null==(t=r.triggerRef.current)||t.focus()}),onPointerDownOutside:(0,n.mK)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,r=0===t.button&&!0===t.ctrlKey;(2===t.button||r)&&e.preventDefault()}),onFocusOutside:(0,n.mK)(e.onFocusOutside,e=>e.preventDefault())})}),B=a.forwardRef((e,t)=>{let r=w(I,e.__scopeDialog),n=a.useRef(!1),s=a.useRef(!1);return(0,j.jsx)(G,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{var a,o;null==(a=e.onCloseAutoFocus)||a.call(e,t),t.defaultPrevented||(n.current||null==(o=r.triggerRef.current)||o.focus(),t.preventDefault()),n.current=!1,s.current=!1},onInteractOutside:t=>{var a,o;null==(a=e.onInteractOutside)||a.call(e,t),t.defaultPrevented||(n.current=!0,"pointerdown"===t.detail.originalEvent.type&&(s.current=!0));let l=t.target;(null==(o=r.triggerRef.current)?void 0:o.contains(l))&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&s.current&&t.preventDefault()}})}),G=a.forwardRef((e,t)=>{let{__scopeDialog:r,trapFocus:n,onOpenAutoFocus:o,onCloseAutoFocus:l,...i}=e,u=w(I,r),p=a.useRef(null),m=(0,s.s)(t,p);return(0,x.Oh)(),(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(d.n,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:o,onUnmountAutoFocus:l,children:(0,j.jsx)(c.qW,{role:"dialog",id:u.contentId,"aria-describedby":u.descriptionId,"aria-labelledby":u.titleId,"data-state":$(u.open),...i,ref:m,onDismiss:()=>u.onOpenChange(!1)})}),(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(V,{titleId:u.titleId}),(0,j.jsx)(Z,{contentRef:p,descriptionId:u.descriptionId})]})]})}),K="DialogTitle",J=a.forwardRef((e,t)=>{let{__scopeDialog:r,...a}=e,n=w(K,r);return(0,j.jsx)(m.sG.h2,{id:n.titleId,...a,ref:t})});J.displayName=K;var U="DialogDescription",H=a.forwardRef((e,t)=>{let{__scopeDialog:r,...a}=e,n=w(U,r);return(0,j.jsx)(m.sG.p,{id:n.descriptionId,...a,ref:t})});H.displayName=U;var z="DialogClose",W=a.forwardRef((e,t)=>{let{__scopeDialog:r,...a}=e,s=w(z,r);return(0,j.jsx)(m.sG.button,{type:"button",...a,ref:t,onClick:(0,n.mK)(e.onClick,()=>s.onOpenChange(!1))})});function $(e){return e?"open":"closed"}W.displayName=z;var q="DialogTitleWarning",[L,Q]=(0,o.q)(q,{contentName:I,titleName:K,docsSlug:"dialog"}),V=e=>{let{titleId:t}=e,r=Q(q),n="`".concat(r.contentName,"` requires a `").concat(r.titleName,"` for the component to be accessible for screen reader users.\n\nIf you want to hide the `").concat(r.titleName,"`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/").concat(r.docsSlug);return a.useEffect(()=>{t&&(document.getElementById(t)||console.error(n))},[n,t]),null},Z=e=>{let{contentRef:t,descriptionId:r}=e,n=Q("DialogDescriptionWarning"),s="Warning: Missing `Description` or `aria-describedby={undefined}` for {".concat(n.contentName,"}.");return a.useEffect(()=>{var e;let a=null==(e=t.current)?void 0:e.getAttribute("aria-describedby");r&&a&&(document.getElementById(r)||console.warn(s))},[s,t,r]),null},X=C,Y=D,ee=_,et=T,er=M,ea=J,en=H,es=W},77298:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>k});var a=r(90508),n=r(1856),s=r(23675),o=r(91814),l=r(39268),i=r(12790),c=r.n(i),d=r(48416),u=r(22922),p=r(71388),m=r(52309),x=r(5616),f=r(78948),g=r(62990),h=r(97438),j=r(14554),v=r(88064),b=r(97413),y=r(17475);function N(e){let{open:t,onOpenChange:r,groupUuid:s,groupName:i,groupDescription:c,projectCount:d,onUpdated:p}=e,x=(0,l.c)("projectGroups"),f=(0,o.r)(),[N,w]=(0,n.useState)(i),[C,A]=(0,n.useState)(null!=c?c:""),[D,k]=(0,n.useState)(!1),[E,S]=(0,n.useState)(!1),[_,O]=(0,n.useState)(!1),[T,P]=(0,n.useState)(!1),R=async()=>{if(N.trim()){k(!0);try{let e=await (0,g.tm)("/api/project-groups/".concat(s),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:N.trim(),description:C.trim()||null})});(await e.json()).success&&p()}finally{k(!1)}}},I=async()=>{S(!0);try{let e=await (0,g.tm)(T?"/api/project-groups/".concat(s,"?deleteProjects=true"):"/api/project-groups/".concat(s),{method:"DELETE"});(await e.json()).success&&(r(!1),f.push("/projects"))}finally{S(!1)}};return(0,a.jsx)(h.lG,{open:t,onOpenChange:e=>{e&&(w(i),A(null!=c?c:""),O(!1),P(!1)),r(e)},children:(0,a.jsxs)(h.Cf,{className:"max-w-[480px] gap-0 p-0",children:[(0,a.jsx)(h.c7,{className:"border-b border-[#E5E2DC] dark:border-[#2a2a2e] px-6 py-5",children:(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(m.A,{className:"h-5 w-5 text-primary"}),(0,a.jsx)(h.L3,{className:"text-[18px] font-semibold tracking-tight text-foreground",children:x("manageGroup")})]})}),(0,a.jsxs)("div",{className:"space-y-5 px-6 py-5",children:[(0,a.jsxs)("div",{className:"space-y-1.5",children:[(0,a.jsx)(v.J,{className:"text-[13px] font-medium text-foreground",children:x("groupName")}),(0,a.jsx)(j.p,{value:N,onChange:e=>w(e.target.value),className:"h-10 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] text-[13px] focus-visible:ring-primary"})]}),(0,a.jsxs)("div",{className:"space-y-1.5",children:[(0,a.jsx)(v.J,{className:"text-[13px] font-medium text-foreground",children:x("descriptionOptional")}),(0,a.jsx)("textarea",{value:C,onChange:e=>A(e.target.value),rows:3,className:"w-full rounded-lg border border-[#E5E2DC] dark:border-[#2a2a2e] px-3 py-2.5 text-[13px] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-1",placeholder:x("descriptionPlaceholder")})]}),(0,a.jsx)("div",{className:"flex justify-end",children:(0,a.jsx)(u.$,{onClick:R,disabled:D||!N.trim()||N===i&&C===(null!=c?c:""),className:"rounded-lg bg-primary text-[13px] font-medium text-white hover:bg-[#B56A42]",children:x(D?"saving":"saveChanges")})})]}),(0,a.jsx)("div",{className:"border-t border-[#E5E2DC] dark:border-[#2a2a2e] px-6 py-5",children:_?(0,a.jsxs)("div",{className:"space-y-3 rounded-lg border border-red-200 bg-red-50 p-4",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 text-[13px] font-semibold text-red-700",children:[(0,a.jsx)(y.A,{className:"h-4 w-4"}),x("deleteConfirmTitle")]}),(0,a.jsx)("p",{className:"text-[12px] text-red-600",children:x("deleteConfirmDesc")}),d>0&&(0,a.jsxs)("div",{className:"space-y-2 pt-1",children:[(0,a.jsxs)("label",{className:"flex cursor-pointer items-center gap-2 text-[12px] text-foreground",children:[(0,a.jsx)("input",{type:"radio",name:"deleteOption",checked:!T,onChange:()=>P(!1),className:"accent-primary"}),x("deleteKeepProjects",{count:d})]}),(0,a.jsxs)("label",{className:"flex cursor-pointer items-center gap-2 text-[12px] text-red-600",children:[(0,a.jsx)("input",{type:"radio",name:"deleteOption",checked:T,onChange:()=>P(!0),className:"accent-red-600"}),x("deleteWithProjects",{count:d})]})]}),(0,a.jsxs)("div",{className:"flex gap-2 pt-1",children:[(0,a.jsx)(u.$,{variant:"outline",size:"sm",onClick:()=>O(!1),className:"rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] text-[12px]",children:x("cancel")}),(0,a.jsxs)(u.$,{size:"sm",onClick:I,disabled:E,className:"rounded-lg bg-red-600 text-[12px] text-white hover:bg-red-700",children:[(0,a.jsx)(b.A,{className:"mr-1 h-3 w-3"}),x(E?"deleting":"confirmDelete")]})]})]}):(0,a.jsxs)("button",{onClick:()=>O(!0),className:"flex w-full cursor-pointer items-center gap-2 rounded-lg border border-red-200 bg-red-50 px-4 py-3 text-left text-[13px] font-medium text-red-600 transition-colors hover:border-red-300 hover:bg-red-100",children:[(0,a.jsx)(b.A,{className:"h-4 w-4"}),x("deleteGroup")]})})]})})}var w=r(88738),C=r(38280),A=r(38106);let D={task:"#5A9E6F",idea:"#C67A52",proposal:"#1976D2",document:"#9A9A9A"};function k(){let e=(0,s.useParams)(),t=(0,o.r)(),r=(0,l.c)(),[i,h]=(0,n.useState)(null),[j,v]=(0,n.useState)(!0),[b,y]=(0,n.useState)(null),[k,E]=(0,n.useState)(!1),[S,_]=(0,n.useState)(!1),O=async()=>{try{let a=await (0,g.tm)("/api/project-groups/".concat(e.uuid,"/dashboard"));if(!a.ok){if(404===a.status)return void t.push("/projects");y(r("common.genericError"));return}let n=await a.json();n.success?h(n.data):y(n.error||r("common.genericError"))}catch(e){y(r("common.genericError"))}finally{v(!1)}};if((0,n.useEffect)(()=>{O()},[e.uuid]),j)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,a.jsx)("span",{className:"text-[13px] text-[#9A9A9A]",children:r("common.loading")})});if(b||!i)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,a.jsx)("span",{className:"text-[13px] text-[#9A9A9A]",children:b||r("common.genericError")})});let{group:T,stats:P,projects:R,recentActivity:I}=i,M=[{label:r("groupDashboard.statProjects"),value:P.projectCount,valueColor:"text-foreground"},{label:r("groupDashboard.statTotalTasks"),value:P.totalTasks,valueColor:"text-primary"},{label:r("groupDashboard.statCompletionRate"),value:"".concat(P.completionRate,"%"),valueColor:"text-[#5A9E6F] dark:text-[#6FD19A]"},{label:r("groupDashboard.statOpenIdeas"),value:P.openIdeas,valueColor:"text-foreground"},{label:r("groupDashboard.statActiveProposals"),value:P.activeProposals,valueColor:"text-primary"}];return(0,a.jsxs)("div",{className:"flex h-full flex-col gap-6 bg-background p-4 md:p-6 lg:p-8",children:[(0,a.jsx)("div",{className:"flex items-center justify-between",children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-[12px]",children:[(0,a.jsx)(c(),{href:"/projects",className:"text-primary hover:underline",children:r("nav.projects")}),(0,a.jsx)("span",{className:"text-[#9A9A9A]",children:"/"}),(0,a.jsx)("span",{className:"text-[#9A9A9A]",children:T.name})]})}),(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-3.5",children:[(0,a.jsx)("div",{className:"flex h-11 w-11 items-center justify-center rounded-xl bg-primary",children:(0,a.jsx)(p.A,{className:"h-[22px] w-[22px] text-white"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-[24px] font-semibold tracking-tight text-foreground",children:T.name}),(0,a.jsx)("p",{className:"text-[13px] text-muted-foreground",children:r("groupDashboard.subtitle",{count:P.projectCount})})]})]}),(0,a.jsxs)(u.$,{variant:"outline",size:"sm",onClick:()=>E(!0),className:"gap-2 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] bg-card text-[13px] font-medium text-foreground hover:border-primary hover:bg-card",children:[(0,a.jsx)(m.A,{className:"h-3.5 w-3.5 text-muted-foreground"}),r("projectGroups.manageGroup")]})]}),(0,a.jsx)("div",{className:"grid grid-cols-2 gap-4 sm:grid-cols-3 lg:grid-cols-5",children:M.map(e=>(0,a.jsxs)(d.Zp,{className:"rounded-2xl border-[#E5E2DC] dark:border-[#2a2a2e] bg-card !gap-1 p-4 !py-4 shadow-none",children:[(0,a.jsx)("p",{className:"text-[12px] font-normal text-[#9A9A9A]",children:e.label}),(0,a.jsx)("p",{className:"mt-1.5 text-[32px] font-semibold leading-none tracking-tight ".concat(e.valueColor),children:e.value})]},e.label))}),(0,a.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col gap-6 lg:flex-row",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("h2",{className:"text-[14px] font-semibold text-foreground",children:r("groupDashboard.projectsInGroup")}),(0,a.jsxs)(u.$,{size:"sm",onClick:()=>_(!0),className:"gap-1.5 rounded-lg bg-primary text-[12px] font-medium text-white hover:bg-[#B56A42]",children:[(0,a.jsx)(x.A,{className:"h-3.5 w-3.5"}),r("groupDashboard.newProject")]})]}),(0,a.jsx)("div",{className:"flex flex-col gap-2",children:R.length>0?R.map(e=>{let t=(0,C.Dj)(e.name),n=(0,C.gl)(e.name);return(0,a.jsx)(c(),{href:"/projects/".concat(e.uuid,"/dashboard"),children:(0,a.jsxs)("div",{className:"flex cursor-pointer items-center justify-between rounded-xl border border-[#E5E2DC] dark:border-[#2a2a2e] bg-card py-3 px-4 transition-all hover:border-primary hover:shadow-sm",children:[(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsx)("div",{className:"project-icon flex h-8 w-8 shrink-0 items-center justify-center rounded-lg text-[11px] font-bold",style:(0,C.sB)(n),children:t}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[13px] font-semibold text-foreground",children:e.name}),(0,a.jsx)("p",{className:"text-[11px] text-[#9A9A9A]",children:r("groupDashboard.projectStats",{tasks:e.taskCount,completion:e.completionRate})})]})]}),(0,a.jsx)(f.A,{className:"h-4 w-4 text-[#9A9A9A]"})]})},e.uuid)}):(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center rounded-xl border border-dashed border-[#E5E2DC] dark:border-[#2a2a2e] bg-background px-8 py-12",children:[(0,a.jsx)(p.A,{className:"mb-3 h-8 w-8 text-[#D0CCC4]"}),(0,a.jsx)("p",{className:"text-[13px] font-medium text-[#9A9A9A]",children:r("groupDashboard.noProjects")}),(0,a.jsx)("p",{className:"mt-1 text-[11px] text-[#C0BDB7]",children:r("groupDashboard.noProjectsHint")})]})})]}),(0,a.jsxs)("div",{className:"flex w-full flex-col gap-4 lg:w-[420px] lg:shrink-0",children:[(0,a.jsx)("h2",{className:"text-[14px] font-semibold text-foreground",children:r("dashboard.recentActivity")}),(0,a.jsx)(d.Zp,{className:"flex flex-col overflow-hidden rounded-2xl border-[#E5E2DC] dark:border-[#2a2a2e] bg-card !gap-0 !py-0 shadow-none",children:I.length>0?I.slice(0,5).map((e,t)=>{var n;let s=null!=(n=D[e.targetType])?n:"#9A9A9A";return(0,a.jsxs)("div",{className:"flex items-start gap-3 px-4 py-3.5 ".concat(t<Math.min(I.length,5)-1?"border-b border-[#E5E2DC] dark:border-[#2a2a2e]":""),children:[(0,a.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded",style:{backgroundColor:s}}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"text-[12px] leading-[1.4] text-foreground",children:function(e){var t;let r=null!=(t=({created:"created",updated:"updated",approved:"approved",rejected:"rejected",claimed:"claimed",completed:"completed",verified:"verified",submitted:"submitted",assigned:"assigned",status_changed:"updated"})[e.action])?t:e.action,a=e.targetType;return"".concat(a.charAt(0).toUpperCase()+a.slice(1)," ").concat(r)}(e)}),(0,a.jsxs)("p",{className:"mt-1 text-[11px] text-[#9A9A9A]",children:[e.projectName," \xb7"," ",function(e,t){let r=Math.floor((Date.now()-new Date(e).getTime())/6e4);if(r<1)return t("time.justNow");if(r<60)return t("time.minutesAgo",{minutes:r});let a=Math.floor(r/60);if(a<24)return t("time.hoursAgo",{hours:a});let n=Math.floor(a/24);return n<7?t("time.daysAgo",{days:n}):(0,A.r)(e)}(e.createdAt,r)]})]})]},e.uuid)}):(0,a.jsx)("div",{className:"flex items-center justify-center p-8",children:(0,a.jsx)("p",{className:"text-[13px] text-[#9A9A9A]",children:r("dashboard.noRecentActivity")})})})]})]}),(0,a.jsx)(w.C,{open:S,onOpenChange:_,groupUuid:T.uuid,groupName:T.name,onCreated:()=>{_(!1),O()}}),(0,a.jsx)(N,{open:k,onOpenChange:E,groupUuid:T.uuid,groupName:T.name,groupDescription:T.description,projectCount:P.projectCount,onUpdated:()=>{E(!1),O()}})]})}},96967:(e,t,r)=>{Promise.resolve().then(r.bind(r,77298))},97413:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])}},e=>{e.O(0,[12079,18944,27290,12790,21932,14655,16544,15653,93346,74951,65496,77358],()=>e(e.s=96967)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2734,3216,4342,4977,5869,6476,6623,7719,8489,11140,12015,12170,12662,13056,13566,14966,17453,17948,21220,23519,24058,24869,27406,27819,29246,30754,31025,32515,33004,33105,33157,33836,34561,37624,38189,38629,38764,39672,40494,40568,41654,42129,42371,44192,44533,44843,48597,48653,48673,50575,52451,52703,52772,55223,56202,56856,57128,58118,59442,60468,60523,65580,66469,68928,70473,70637,70703,71406,73708,73804,78301,80064,80272,82641,82765,85879,86384,86759,87188,87682,90090,90113,90469,91946,93184,93691,97629,97636,98400],{51540:()=>{}},_=>{_.O(0,[74951,65496,77358],()=>_(_.s=51540)),_N_E=_.O()}]);