@chorus-aidlc/chorus 0.18.1 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +183 -183
  3. package/.next/standalone/.next/app-path-routes-manifest.json +33 -33
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/prerender-manifest.json +24 -24
  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_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -2
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +2 -2
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  40. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  44. package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
  45. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
  48. package/.next/standalone/.next/server/app/admin/companies/new.rsc +1 -1
  49. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/admin/companies.html +2 -2
  51. package/.next/standalone/.next/server/app/admin/companies.rsc +1 -1
  52. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/admin.html +2 -2
  54. package/.next/standalone/.next/server/app/admin.rsc +1 -1
  55. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  145. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/index.html +2 -2
  153. package/.next/standalone/.next/server/app/index.rsc +1 -1
  154. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/login/admin.html +2 -2
  156. package/.next/standalone/.next/server/app/login/admin.rsc +1 -1
  157. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/login/callback.html +2 -2
  159. package/.next/standalone/.next/server/app/login/callback.rsc +1 -1
  160. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
  163. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +1 -1
  164. package/.next/standalone/.next/server/app/login.html +2 -2
  165. package/.next/standalone/.next/server/app/login.rsc +1 -1
  166. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  167. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  168. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  170. package/.next/standalone/.next/server/app/onboarding.rsc +2 -2
  171. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/projects.html +2 -2
  173. package/.next/standalone/.next/server/app/projects.rsc +2 -2
  174. package/.next/standalone/.next/server/app/settings.html +2 -2
  175. package/.next/standalone/.next/server/app/settings.rsc +3 -3
  176. package/.next/standalone/.next/server/app-paths-manifest.json +33 -33
  177. package/.next/standalone/.next/server/chunks/1318.js +1 -1
  178. package/.next/standalone/.next/server/chunks/1559.js +2 -2
  179. package/.next/standalone/.next/server/chunks/{2195.js → 1683.js} +1 -1
  180. package/.next/standalone/.next/server/chunks/3341.js +1 -0
  181. package/.next/standalone/.next/server/chunks/5453.js +1 -1
  182. package/.next/standalone/.next/server/chunks/5489.js +1 -1
  183. package/.next/standalone/.next/server/chunks/6607.js +1 -0
  184. package/.next/standalone/.next/server/chunks/679.js +1 -1
  185. package/.next/standalone/.next/server/chunks/{2460.js → 7400.js} +1 -1
  186. package/.next/standalone/.next/server/chunks/8185.js +1 -0
  187. package/.next/standalone/.next/server/chunks/{8030.js → 9848.js} +2 -2
  188. package/.next/standalone/.next/server/chunks/9931.js +1 -1
  189. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  190. package/.next/standalone/.next/server/pages/404.html +2 -2
  191. package/.next/standalone/.next/server/pages/500.html +1 -1
  192. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  193. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  194. package/.next/standalone/.next/static/chunks/18751-3616e33050e9611e.js +1 -0
  195. package/.next/standalone/.next/static/chunks/26020-7b4756ba0aa906cf.js +1 -0
  196. package/.next/standalone/.next/static/chunks/{25080-25ad29e64c855338.js → 44437-d13183f50281116f.js} +1 -1
  197. package/.next/standalone/.next/static/chunks/59713-426f81b6576173d8.js +1 -0
  198. package/.next/standalone/.next/static/chunks/60351-bdef539874e5027e.js +1 -0
  199. package/.next/standalone/.next/static/chunks/79919-1e7e294a06f2c4a0.js +1 -0
  200. package/.next/standalone/.next/static/chunks/99733-5a2e39f57fbda32d.js +1 -0
  201. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-072a6b8f0a48b1b6.js +1 -0
  202. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-198a3ff89ae871b9.js +1 -0
  203. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-a506de82e8997714.js +1 -0
  204. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/{page-57c698dea2fa6e29.js → page-dc54fafa22d21863.js} +1 -1
  205. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/{page-d2bb622855e746f1.js → page-6eb5d3cb036a78e0.js} +1 -1
  206. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-69c6f0190623e19b.js +1 -0
  207. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-2a52f747e6fac5a7.js +1 -0
  208. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/{page-46a0ddfd0421b0a8.js → page-22cce567a85ea291.js} +1 -1
  209. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-3a83748ce0ae1c4f.js → page-301f21a3ae52e318.js} +1 -1
  210. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-8af9bb9f96ab0258.js → page-dd123990c14e9768.js} +1 -1
  211. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-548231f8c9856489.js +1 -0
  212. package/.next/standalone/.next/static/chunks/app/onboarding/page-5914ff3d878a3c34.js +1 -0
  213. package/.next/standalone/package.json +1 -1
  214. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  215. package/.next/standalone/public/chorus-plugin/agents/code-reviewer.md +63 -6
  216. package/.next/standalone/public/chorus-plugin/agents/proposal-reviewer.md +60 -6
  217. package/.next/standalone/public/chorus-plugin/agents/task-reviewer.md +75 -8
  218. package/.next/standalone/public/chorus-plugin/bin/chorus-api.sh +1 -1
  219. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  220. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +1 -1
  221. package/.next/standalone/public/chorus-plugin/skills/chorus-cli/SKILL.md +1 -1
  222. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  223. package/.next/standalone/public/chorus-plugin/skills/docs/SKILL.md +1 -1
  224. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
  225. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  226. package/.next/standalone/public/chorus-plugin/skills/orchestrate/SKILL.md +1 -1
  227. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
  228. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  229. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  230. package/.next/standalone/public/chorus-plugin/skills/spec-lite/SKILL.md +1 -1
  231. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
  232. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-code-reviewer.json +56 -1
  233. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-proposal-reviewer.json +79 -1
  234. package/.next/standalone/public/kiro-plugin/.kiro/agents/chorus-task-reviewer.json +56 -1
  235. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
  236. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-cli/SKILL.md +1 -1
  237. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +1 -1
  238. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-docs/SKILL.md +1 -1
  239. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +1 -1
  240. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
  241. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-orchestrate/SKILL.md +1 -1
  242. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
  243. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
  244. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
  245. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-spec-lite/SKILL.md +1 -1
  246. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +1 -1
  247. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
  248. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +60 -4
  249. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +58 -5
  250. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +72 -6
  251. package/README.ja.md +3 -1
  252. package/README.ko.md +3 -1
  253. package/README.md +3 -1
  254. package/README.zh.md +3 -1
  255. package/package.json +1 -1
  256. package/.next/standalone/.next/server/chunks/2758.js +0 -1
  257. package/.next/standalone/.next/server/chunks/4066.js +0 -1
  258. package/.next/standalone/.next/server/chunks/7675.js +0 -1
  259. package/.next/standalone/.next/static/chunks/14628-283d3983d1fb36c9.js +0 -1
  260. package/.next/standalone/.next/static/chunks/28698-7fb271ffc6e63a26.js +0 -1
  261. package/.next/standalone/.next/static/chunks/32736-aeaaa1e4c4d5529b.js +0 -1
  262. package/.next/standalone/.next/static/chunks/75257-99c0ce24b436847b.js +0 -1
  263. package/.next/standalone/.next/static/chunks/79919-0c6dcda1dd8646f0.js +0 -1
  264. package/.next/standalone/.next/static/chunks/91328-f501e3c3ca519a92.js +0 -1
  265. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-f3c6431432d42c7c.js +0 -1
  266. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-5d723f974bdad33b.js +0 -1
  267. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-8d3b1f4d8b76d66c.js +0 -1
  268. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-fc255dc3612032b9.js +0 -1
  269. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-f032ee8a80d1f56a.js +0 -1
  270. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-b02939820affdae5.js +0 -1
  271. package/.next/standalone/.next/static/chunks/app/onboarding/page-d2c0c7951114e763.js +0 -1
  272. /package/.next/standalone/.next/static/{dot63ILT878Tloqi7Czj_ → Pmji9kEq8T2lM6AKQkZji}/_buildManifest.js +0 -0
  273. /package/.next/standalone/.next/static/{dot63ILT878Tloqi7Czj_ → Pmji9kEq8T2lM6AKQkZji}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=1559,exports.ids=[1559],exports.modules={10174:(a,b,c)=>{function d(a){if(!a)return{pinnedHost:null,pinnedCwd:null};let b=new URLSearchParams(a),c=b.has("cwd"),d=b.has("host");if(!c&&!d)return{pinnedHost:null,pinnedCwd:null};let e=b.get("cwd")??"",f=b.get("host"),g={pinnedCwd:c&&""!==e?e:null,pinnedHost:d?f??"":null};return"1"===b.get("runtime")&&(g.runtimeCwd=!0),g}function e(a,b,c,d,f,g=!1){return`@[${a}](${b}:${c}${function(a,b,c=!1){if(null==a&&null==b)return"";let d=a=>encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"),e=[];return e.push(`cwd=${null==b?"":d(b)}`),null!=a&&e.push(`host=${d(a)}`),c&&e.push("runtime=1"),`?${e.join("&")}`}(d,f,g)})`}c.d(b,{$v:()=>e,vE:()=>d})},10696:(a,b,c)=>{c.d(b,{J:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40907c2f19d80c1e0e1c51e133c86e2859fe26b259",d.callServer,void 0,d.findSourceMapURL,"deleteCommentAction")},11573:(a,b,c)=>{c.d(b,{j:()=>e});let d=["#E06C75","#E5C07B","#98C379","#56B6C2","#61AFEF","#C678DD","#D19A66","#BE5046","#7EC8E3","#C3E88D","#F78C6C","#A9DC76"];function e(a){let b=function(a){let b=0;for(let c=0;c<a.length;c++)b=(b<<5)-b+a.charCodeAt(c)|0;return Math.abs(b)}(a)%d.length;return d[b]}},22727:(a,b,c)=>{c.d(b,{D:()=>h});var d=c(10837),e=c(90061),f=c(11573),g=c(6871);function h({entityType:a,entityUuid:b,subEntityType:c,subEntityUuid:g,children:h,badgeInside:j}){let{getPresence:k}=(0,e.xQ)(),l=k(a,b,c,g),m=l.length>0,n=m&&l.some(a=>"mutate"===a.action),o=m?n?l.find(a=>"mutate"===a.action):l[l.length-1]:null,p=o?(0,f.j)(o.agentName):"transparent";return(0,d.jsxs)("div",{className:"relative",style:m?{outline:`2px ${n?"solid":"dashed"} ${p}`,outlineOffset:"-2px",borderRadius:"var(--radius)"}:void 0,children:[m&&(0,d.jsxs)("div",{className:`absolute flex gap-1 z-10 justify-end ${j?"top-0.5 right-1.5 max-w-[70%]":"-top-2.5 right-2 max-w-[80%]"}`,children:[l.slice(0,3).map(a=>(0,d.jsx)(i,{entry:a},a.agentUuid)),l.length>3&&(0,d.jsxs)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white bg-gray-500 whitespace-nowrap",children:["+",l.length-3]})]}),h]})}function i({entry:a}){let b=(0,f.j)(a.agentName);return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white whitespace-nowrap animate-in fade-in duration-300 ease-out sm:text-[11px] sm:px-2",style:{backgroundColor:b},children:[(0,d.jsx)(g.AgentAvatar,{name:a.agentName,size:14,className:"rounded-full"}),a.agentName]})}},24433:(a,b,c)=>{c.d(b,{c5:()=>w});var d=c(10837),e=c(21968),f=c(87864),g=c(45150),h=c(49101),i=c(9222),j=c(96307),k=c(54722),l=c(42087),m=c(10174),n=c(23871),o=c(11568),p=c(42424),q=c(6871);let r=h.A.extend({addAttributes(){return{...this.parent?.(),mentionType:{default:"user",parseHTML:a=>a.getAttribute("data-mention-type")||"user",renderHTML:a=>({"data-mention-type":a.mentionType||"user"})},pinnedHost:{default:null,parseHTML:a=>a.getAttribute("data-pinned-host"),renderHTML:a=>null==a.pinnedHost?{}:{"data-pinned-host":String(a.pinnedHost)}},pinnedCwd:{default:null,parseHTML:a=>a.getAttribute("data-pinned-cwd"),renderHTML:a=>null==a.pinnedCwd?{}:{"data-pinned-cwd":String(a.pinnedCwd)}},runtimeCwd:{default:!1,parseHTML:a=>"true"===a.getAttribute("data-runtime-cwd"),renderHTML:a=>a.runtimeCwd?{"data-runtime-cwd":"true"}:{}}}}});function s(a){let b=a.getJSON();return b.content?b.content.map(a=>(function a(b){if("mention"===b.type){let a=b.attrs;return a?(0,m.$v)(a.label||a.id,a.mentionType||"user",a.id,a.pinnedHost??null,a.pinnedCwd??null,!0===a.runtimeCwd):""}if("text"===b.type)return b.text||"";if("hardBreak"===b.type)return"\n";let c=b.content;return c?c.map(a).join(""):""})(a)).join("\n"):""}function t(a){if(!a)return{type:"doc",content:[{type:"paragraph"}]};let b=/@\[([^\]]+)\]\((user|agent):([a-f0-9-]+)(?:\?([^)]*))?\)/g;return{type:"doc",content:a.split("\n").map(a=>{let c,d=[],e=0,f=RegExp(b.source,"g");for(;null!==(c=f.exec(a));){c.index>e&&d.push({type:"text",text:a.slice(e,c.index)});let{pinnedHost:b,pinnedCwd:f,runtimeCwd:g}=(0,m.vE)(c[4]);d.push({type:"mention",attrs:{id:c[3],label:c[1],mentionType:c[2],pinnedHost:b,pinnedCwd:f,runtimeCwd:!0===g}}),e=c.index+c[0].length}return e<a.length&&d.push({type:"text",text:a.slice(e)}),{type:"paragraph",content:d.length>0?d:void 0}})}}function u(a,b,c,d,e,f,g){if(e.innerHTML="",b){let a=document.createElement("div");a.className="flex items-center justify-center py-3 px-4",a.innerHTML='<div class="h-4 w-4 animate-spin rounded-full border-2 border-[#9A9A9A] border-t-transparent"></div>',e.appendChild(a);return}if(0===a.length){let a=document.createElement("div");a.className="py-2 px-3 text-xs text-muted-foreground",a.textContent="No results",e.appendChild(a);return}let h=document.createElement("div");h.className="py-1";let i=0,j=a=>{if(g)return void g(a,c);c({id:a.uuid,label:a.name,mentionType:a.type})},k=()=>{h.innerHTML="",a.forEach((a,b)=>{let c=document.createElement("button");c.type="button",c.className=`flex w-full items-center gap-2.5 px-3 py-1.5 text-left text-sm transition-colors ${b===i?"bg-background text-foreground":"text-muted-foreground hover:bg-background"}`,c.onclick=()=>j(a);let d=document.createElement("div");if(d.className="relative shrink-0","agent"===a.type){let b=(0,q.Pf)(a.name,"animated");if(b){let c=document.createElement("div");c.className="h-6 w-6 overflow-hidden rounded-full bg-muted";let e=document.createElement("img");e.src=b,e.alt=a.name,e.draggable=!1,e.className="h-full w-full origin-top scale-[1.5] -translate-y-[10%]",c.appendChild(e),d.appendChild(c)}else{let a=document.createElement("div");a.className="flex h-6 w-6 items-center justify-center rounded-full bg-primary text-white",a.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 8V4H8"/><rect width="16" height="12" x="4" y="8" rx="2"/><path d="M2 14h2"/><path d="M20 14h2"/><path d="M15 13v2"/><path d="M9 13v2"/></svg>',d.appendChild(a)}}else{let a=document.createElement("div");a.className="flex h-6 w-6 items-center justify-center rounded-full bg-border text-muted-foreground",a.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',d.appendChild(a)}if("agent"===a.type&&a.online){let a=document.createElement("span");a.className="absolute -bottom-0.5 -right-0.5 h-2 w-2 rounded-full bg-[#22C55E] ring-2 ring-white",a.title=f.online,d.appendChild(a)}let e=document.createElement("div");e.className="min-w-0 flex-1";let g=document.createElement("div");if(g.className="truncate text-xs font-medium",g.textContent=a.name,e.appendChild(g),a.email){let b=document.createElement("div");b.className="truncate text-[10px] text-muted-foreground",b.textContent=a.email,e.appendChild(b)}if("agent"===a.type&&a.online){let b=a.activeCount??0,c=document.createElement("div");b>0?(c.className="mt-0.5 truncate text-[10px] font-medium text-[#15803D] dark:text-[#4FD07A]",c.textContent=`▶ ${f.activeCount(b)}`):(c.className="mt-0.5 truncate text-[10px] text-muted-foreground",c.textContent=f.idle),e.appendChild(c)}c.appendChild(d),c.appendChild(e),h.appendChild(c)})};k(),e.appendChild(h),d.current={onKeyDown:({event:b})=>!(0,l.P)(b)&&("ArrowUp"===b.key?(i=i<=0?a.length-1:i-1,k(),!0):"ArrowDown"===b.key?(i=i>=a.length-1?0:i+1,k(),!0):"Enter"===b.key?(a[i]&&j(a[i]),!0):"Escape"===b.key)}}function v({open:a,agentName:b,instances:c,onConfirm:f,onCancel:g}){let h=(0,i.c)("mentionInstance"),[j,k]=(0,e.useState)(null),m=new Set(c.map(a=>a.host)).size;return(0,d.jsx)(o.lG,{open:a,onOpenChange:a=>{a||g()},children:(0,d.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,d.jsxs)(o.c7,{className:"shrink-0",children:[(0,d.jsx)(o.L3,{children:h("title")}),(0,d.jsx)(o.rr,{children:h("subtitle",{name:b,count:c.length,hosts:m})})]}),(0,d.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:a=>{!("Enter"!==a.key||(0,l.P)(a))&&j&&(a.preventDefault(),f(j))},children:(0,d.jsx)(n.O,{instances:c,selectedConnectionUuid:j?.connectionUuid??null,onSelect:k,ariaLabel:h("title")})}),(0,d.jsxs)(o.Es,{className:"shrink-0",children:[(0,d.jsx)(p.$,{variant:"ghost",onClick:g,children:h("cancel")}),(0,d.jsx)(p.$,{disabled:!j,onClick:()=>{j&&f(j)},children:h("confirm")})]})]})})}let w=(0,e.forwardRef)(({value:a,onChange:b,placeholder:c,className:h,disabled:n,onSubmit:o,entityType:p,entityUuid:q},w)=>{let x=(0,e.useRef)([]),y=(0,e.useRef)(!1),z=(0,e.useRef)(null),A=(0,e.useRef)(null),B=(0,e.useRef)(null),C=(0,e.useRef)(null),[,D]=(0,e.useState)(0),E=(0,e.useRef)(!1),F=(0,i.c)("mention"),G=(0,e.useRef)({online:"",offline:"",idle:"",activeCount:()=>""});G.current={online:F("online"),offline:F("offline"),idle:F("idle"),activeCount:a=>F("activeCount",{count:a})};let H=(0,e.useCallback)((a,b)=>{let c=`/api/mentionables?q=${encodeURIComponent(a)}&limit=${b}&withInstances=1`;return p&&q&&(c+=`&entityType=${encodeURIComponent(p)}&entityUuid=${encodeURIComponent(q)}`),c},[p,q]),I=function(a,b){let c=(0,e.useRef)(null),d=(0,e.useRef)(a);return d.current=a,(0,e.useCallback)(a=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>d.current(a),250)},[250])}((0,e.useCallback)(async a=>{y.current=!0,D(a=>a+1);try{let b=await fetch(H(a,10));if(b.ok){let a=await b.json();a.success&&(x.current=a.data)}}catch{x.current=[]}finally{y.current=!1,D(a=>a+1)}},[H]),250),[J,K]=(0,e.useState)(null),L=(0,e.useCallback)((a,b,c)=>{b({id:a.uuid,label:a.name,mentionType:a.type,pinnedHost:c?c.host:null,pinnedCwd:c?c.cwd:null,runtimeCwd:c?.runtimeCwd===!0})},[]),M=(0,e.useRef)(()=>{});M.current=(a,b)=>{let c=function(a){if("agent"===a.type&&a.projectFixedCwd)return{kind:"insert",pin:{host:a.projectFixedCwd.host,cwd:a.projectFixedCwd.cwd,runtimeCwd:!0}};if(a.isIdeaAssignee&&a.ideaPin)return{kind:"insert",pin:{host:a.ideaPin.host,cwd:a.ideaPin.cwd}};let b="agent"===a.type?(a.instances??[]).filter(a=>"online"===a.effectiveStatus):[];return b.length>=2?{kind:"pick",onlineInstances:b}:1===b.length?{kind:"insert",pin:b[0]}:{kind:"insert",pin:null}}(a);if("pick"===c.kind)return void K({item:a,onlineInstances:c.onlineInstances,command:b});L(a,b,c.pin??void 0)};let N=(0,e.useCallback)((a,b)=>M.current(a,b),[]);(0,e.useEffect)(()=>{B.current&&C.current&&u(x.current,y.current,C.current,z,B.current,G.current,N)});let O=(0,f.hG)({immediatelyRender:!1,extensions:[g.A.configure({heading:!1,blockquote:!1,codeBlock:!1,bulletList:!1,orderedList:!1,listItem:!1,horizontalRule:!1}),r.configure({HTMLAttributes:{class:"text-blue-600 font-medium"},renderText:({node:a})=>`@${a.attrs.label??a.attrs.id}`,suggestion:{char:"@",allowSpaces:!0,items:({query:a})=>(I(a),x.current),render:()=>({onStart:a=>{let b=document.createElement("div");if(b.className="z-[100] rounded-md border border-border bg-card shadow-md min-w-[200px] max-w-[300px] overflow-hidden",B.current=b,C.current=a.command,a.clientRect){let c="function"==typeof a.clientRect?a.clientRect():a.clientRect;c&&(b.style.position="fixed",b.style.left=`${c.left}px`,window.innerHeight-c.bottom<220?b.style.bottom=`${window.innerHeight-c.top+4}px`:b.style.top=`${c.bottom+4}px`)}(A.current??document.body).appendChild(b),u(x.current,y.current,a.command,z,b,G.current,N)},onUpdate:a=>{if(C.current=a.command,B.current&&a.clientRect){let b="function"==typeof a.clientRect?a.clientRect():a.clientRect;b&&(B.current.style.left=`${b.left}px`,window.innerHeight-b.bottom<220?(B.current.style.top="",B.current.style.bottom=`${window.innerHeight-b.top+4}px`):(B.current.style.bottom="",B.current.style.top=`${b.bottom+4}px`))}B.current&&u(x.current,y.current,a.command,z,B.current,G.current,N)},onKeyDown:a=>!!z.current&&z.current.onKeyDown(a),onExit:()=>{B.current?.remove(),B.current=null,C.current=null,x.current=[],y.current=!1}})}})],content:t(a),editable:!n,editorProps:{attributes:{class:(0,j.cn)("min-h-[36px] max-h-[120px] overflow-y-auto px-3 py-2 text-sm outline-none","prose prose-sm max-w-none [&_p]:my-0"),"data-placeholder":c||""},handleKeyDown:(a,b)=>!(0,l.P)(b)&&"Enter"===b.key&&!b.shiftKey&&!B.current&&!!o&&(b.preventDefault(),o(),!0)},onUpdate:({editor:a})=>{E.current=!0,b(s(a))}});(0,e.useEffect)(()=>{if(!O||E.current){E.current=!1;return}s(O)!==a&&O.commands.setContent(t(a))},[a,O]),(0,e.useEffect)(()=>{O&&O.setEditable(!n)},[n,O]);let P=(0,e.useCallback)(a=>{if(!O)return;let b=null!==a.pinnedHost||null!==a.pinnedCwd?{host:a.pinnedHost??"",cwd:a.pinnedCwd,runtimeCwd:!0===a.runtimeCwd}:null,c=function(a,b,c=null){let d=b.type.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),e=b.uuid.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(RegExp(`@\\[[^\\]]+\\]\\(${d}:${e}(?:\\?[^)]*)?\\)\\s*$`,"i").test(a))return{value:a,appended:!1};let f=(0,m.$v)(b.name,b.type,b.uuid,c?.host??null,c?.cwd??null,c?.runtimeCwd===!0),g=a.length>0&&!/\s$/.test(a)?" ":"";return{value:`${a}${g}${f} `,appended:!0}}(s(O),{type:a.mentionType,uuid:a.id,name:a.label},b);c.appended&&O.commands.setContent(t(c.value)),O.commands.focus("end")},[O]),Q=(0,e.useCallback)(async a=>{let b=a;if("agent"===a.type){let c=await fetch(H(a.name,50));if(!c.ok)throw Error("Failed to load Agent mention routing");let d=await c.json();if(!d.success||!Array.isArray(d.data))throw Error("Invalid Agent mention routing response");b=function(a,b){let c=b.find(b=>b.type===a.type&&b.uuid===a.uuid);if(!c)throw Error("Reply author is unavailable for mention routing");return c}(a,d.data)}M.current(b,a=>{P(a)})},[H,P]);return(0,e.useImperativeHandle)(w,()=>({focus:()=>O?.commands.focus(),clear:()=>{O?.commands.clearContent(),b("")},replyToAuthor:Q}),[O,b,Q]),(0,d.jsxs)("div",{ref:A,className:(0,j.cn)("relative rounded-md border border-input bg-transparent shadow-xs transition-[color,box-shadow]","focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",n&&"cursor-not-allowed opacity-50",h),children:[(0,d.jsx)(f.$Z,{editor:O}),(0,d.jsx)(v,{open:null!==J,agentName:J?.item.name??"",instances:J?.onlineInstances??[],onConfirm:a=>{!function(a,b,c){c.close(),a&&c.defer(()=>{try{c.focusEditor(),c.insert(a,b)}catch(a){c.onError(a)}})}(J,a,{close:()=>K(null),insert:(a,b)=>L(a.item,a.command,b),defer:a=>requestAnimationFrame(a),focusEditor:()=>O?.commands.focus(),onError:a=>k.q.error("MentionEditor: cwd-pinned mention insert failed",a)})},onCancel:()=>K(null)}),(0,d.jsx)("style",{children:`
1
+ "use strict";exports.id=1559,exports.ids=[1559],exports.modules={5412:(a,b,c)=>{c.d(b,{J:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40d9e6e89c37a22967f1e0317a42682af514b7b628",d.callServer,void 0,d.findSourceMapURL,"deleteCommentAction")},10174:(a,b,c)=>{function d(a){if(!a)return{pinnedHost:null,pinnedCwd:null};let b=new URLSearchParams(a),c=b.has("cwd"),d=b.has("host");if(!c&&!d)return{pinnedHost:null,pinnedCwd:null};let e=b.get("cwd")??"",f=b.get("host"),g={pinnedCwd:c&&""!==e?e:null,pinnedHost:d?f??"":null};return"1"===b.get("runtime")&&(g.runtimeCwd=!0),g}function e(a,b,c,d,f,g=!1){return`@[${a}](${b}:${c}${function(a,b,c=!1){if(null==a&&null==b)return"";let d=a=>encodeURIComponent(a).replace(/\(/g,"%28").replace(/\)/g,"%29"),e=[];return e.push(`cwd=${null==b?"":d(b)}`),null!=a&&e.push(`host=${d(a)}`),c&&e.push("runtime=1"),`?${e.join("&")}`}(d,f,g)})`}c.d(b,{$v:()=>e,vE:()=>d})},11573:(a,b,c)=>{c.d(b,{j:()=>e});let d=["#E06C75","#E5C07B","#98C379","#56B6C2","#61AFEF","#C678DD","#D19A66","#BE5046","#7EC8E3","#C3E88D","#F78C6C","#A9DC76"];function e(a){let b=function(a){let b=0;for(let c=0;c<a.length;c++)b=(b<<5)-b+a.charCodeAt(c)|0;return Math.abs(b)}(a)%d.length;return d[b]}},22727:(a,b,c)=>{c.d(b,{D:()=>h});var d=c(10837),e=c(90061),f=c(11573),g=c(6871);function h({entityType:a,entityUuid:b,subEntityType:c,subEntityUuid:g,children:h,badgeInside:j}){let{getPresence:k}=(0,e.xQ)(),l=k(a,b,c,g),m=l.length>0,n=m&&l.some(a=>"mutate"===a.action),o=m?n?l.find(a=>"mutate"===a.action):l[l.length-1]:null,p=o?(0,f.j)(o.agentName):"transparent";return(0,d.jsxs)("div",{className:"relative",style:m?{outline:`2px ${n?"solid":"dashed"} ${p}`,outlineOffset:"-2px",borderRadius:"var(--radius)"}:void 0,children:[m&&(0,d.jsxs)("div",{className:`absolute flex gap-1 z-10 justify-end ${j?"top-0.5 right-1.5 max-w-[70%]":"-top-2.5 right-2 max-w-[80%]"}`,children:[l.slice(0,3).map(a=>(0,d.jsx)(i,{entry:a},a.agentUuid)),l.length>3&&(0,d.jsxs)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white bg-gray-500 whitespace-nowrap",children:["+",l.length-3]})]}),h]})}function i({entry:a}){let b=(0,f.j)(a.agentName);return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-[10px] font-medium text-white whitespace-nowrap animate-in fade-in duration-300 ease-out sm:text-[11px] sm:px-2",style:{backgroundColor:b},children:[(0,d.jsx)(g.AgentAvatar,{name:a.agentName,size:14,className:"rounded-full"}),a.agentName]})}},24433:(a,b,c)=>{c.d(b,{c5:()=>w});var d=c(10837),e=c(21968),f=c(87864),g=c(45150),h=c(49101),i=c(9222),j=c(96307),k=c(54722),l=c(42087),m=c(10174),n=c(23871),o=c(11568),p=c(42424),q=c(6871);let r=h.A.extend({addAttributes(){return{...this.parent?.(),mentionType:{default:"user",parseHTML:a=>a.getAttribute("data-mention-type")||"user",renderHTML:a=>({"data-mention-type":a.mentionType||"user"})},pinnedHost:{default:null,parseHTML:a=>a.getAttribute("data-pinned-host"),renderHTML:a=>null==a.pinnedHost?{}:{"data-pinned-host":String(a.pinnedHost)}},pinnedCwd:{default:null,parseHTML:a=>a.getAttribute("data-pinned-cwd"),renderHTML:a=>null==a.pinnedCwd?{}:{"data-pinned-cwd":String(a.pinnedCwd)}},runtimeCwd:{default:!1,parseHTML:a=>"true"===a.getAttribute("data-runtime-cwd"),renderHTML:a=>a.runtimeCwd?{"data-runtime-cwd":"true"}:{}}}}});function s(a){let b=a.getJSON();return b.content?b.content.map(a=>(function a(b){if("mention"===b.type){let a=b.attrs;return a?(0,m.$v)(a.label||a.id,a.mentionType||"user",a.id,a.pinnedHost??null,a.pinnedCwd??null,!0===a.runtimeCwd):""}if("text"===b.type)return b.text||"";if("hardBreak"===b.type)return"\n";let c=b.content;return c?c.map(a).join(""):""})(a)).join("\n"):""}function t(a){if(!a)return{type:"doc",content:[{type:"paragraph"}]};let b=/@\[([^\]]+)\]\((user|agent):([a-f0-9-]+)(?:\?([^)]*))?\)/g;return{type:"doc",content:a.split("\n").map(a=>{let c,d=[],e=0,f=RegExp(b.source,"g");for(;null!==(c=f.exec(a));){c.index>e&&d.push({type:"text",text:a.slice(e,c.index)});let{pinnedHost:b,pinnedCwd:f,runtimeCwd:g}=(0,m.vE)(c[4]);d.push({type:"mention",attrs:{id:c[3],label:c[1],mentionType:c[2],pinnedHost:b,pinnedCwd:f,runtimeCwd:!0===g}}),e=c.index+c[0].length}return e<a.length&&d.push({type:"text",text:a.slice(e)}),{type:"paragraph",content:d.length>0?d:void 0}})}}function u(a,b,c,d,e,f,g){if(e.innerHTML="",b){let a=document.createElement("div");a.className="flex items-center justify-center py-3 px-4",a.innerHTML='<div class="h-4 w-4 animate-spin rounded-full border-2 border-[#9A9A9A] border-t-transparent"></div>',e.appendChild(a);return}if(0===a.length){let a=document.createElement("div");a.className="py-2 px-3 text-xs text-muted-foreground",a.textContent="No results",e.appendChild(a);return}let h=document.createElement("div");h.className="py-1";let i=0,j=a=>{if(g)return void g(a,c);c({id:a.uuid,label:a.name,mentionType:a.type})},k=()=>{h.innerHTML="",a.forEach((a,b)=>{let c=document.createElement("button");c.type="button",c.className=`flex w-full items-center gap-2.5 px-3 py-1.5 text-left text-sm transition-colors ${b===i?"bg-background text-foreground":"text-muted-foreground hover:bg-background"}`,c.onclick=()=>j(a);let d=document.createElement("div");if(d.className="relative shrink-0","agent"===a.type){let b=(0,q.Pf)(a.name,"animated");if(b){let c=document.createElement("div");c.className="h-6 w-6 overflow-hidden rounded-full bg-muted";let e=document.createElement("img");e.src=b,e.alt=a.name,e.draggable=!1,e.className="h-full w-full origin-top scale-[1.5] -translate-y-[10%]",c.appendChild(e),d.appendChild(c)}else{let a=document.createElement("div");a.className="flex h-6 w-6 items-center justify-center rounded-full bg-primary text-white",a.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 8V4H8"/><rect width="16" height="12" x="4" y="8" rx="2"/><path d="M2 14h2"/><path d="M20 14h2"/><path d="M15 13v2"/><path d="M9 13v2"/></svg>',d.appendChild(a)}}else{let a=document.createElement("div");a.className="flex h-6 w-6 items-center justify-center rounded-full bg-border text-muted-foreground",a.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',d.appendChild(a)}if("agent"===a.type&&a.online){let a=document.createElement("span");a.className="absolute -bottom-0.5 -right-0.5 h-2 w-2 rounded-full bg-[#22C55E] ring-2 ring-white",a.title=f.online,d.appendChild(a)}let e=document.createElement("div");e.className="min-w-0 flex-1";let g=document.createElement("div");if(g.className="truncate text-xs font-medium",g.textContent=a.name,e.appendChild(g),a.email){let b=document.createElement("div");b.className="truncate text-[10px] text-muted-foreground",b.textContent=a.email,e.appendChild(b)}if("agent"===a.type&&a.online){let b=a.activeCount??0,c=document.createElement("div");b>0?(c.className="mt-0.5 truncate text-[10px] font-medium text-[#15803D] dark:text-[#4FD07A]",c.textContent=`▶ ${f.activeCount(b)}`):(c.className="mt-0.5 truncate text-[10px] text-muted-foreground",c.textContent=f.idle),e.appendChild(c)}c.appendChild(d),c.appendChild(e),h.appendChild(c)})};k(),e.appendChild(h),d.current={onKeyDown:({event:b})=>!(0,l.P)(b)&&("ArrowUp"===b.key?(i=i<=0?a.length-1:i-1,k(),!0):"ArrowDown"===b.key?(i=i>=a.length-1?0:i+1,k(),!0):"Enter"===b.key?(a[i]&&j(a[i]),!0):"Escape"===b.key)}}function v({open:a,agentName:b,instances:c,onConfirm:f,onCancel:g}){let h=(0,i.c)("mentionInstance"),[j,k]=(0,e.useState)(null),m=new Set(c.map(a=>a.host)).size;return(0,d.jsx)(o.lG,{open:a,onOpenChange:a=>{a||g()},children:(0,d.jsxs)(o.Cf,{className:"z-[110] flex max-h-[85svh] flex-col gap-0 sm:max-w-md",overlayClassName:"z-[110]",children:[(0,d.jsxs)(o.c7,{className:"shrink-0",children:[(0,d.jsx)(o.L3,{children:h("title")}),(0,d.jsx)(o.rr,{children:h("subtitle",{name:b,count:c.length,hosts:m})})]}),(0,d.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto py-3",onKeyDown:a=>{!("Enter"!==a.key||(0,l.P)(a))&&j&&(a.preventDefault(),f(j))},children:(0,d.jsx)(n.O,{instances:c,selectedConnectionUuid:j?.connectionUuid??null,onSelect:k,ariaLabel:h("title")})}),(0,d.jsxs)(o.Es,{className:"shrink-0",children:[(0,d.jsx)(p.$,{variant:"ghost",onClick:g,children:h("cancel")}),(0,d.jsx)(p.$,{disabled:!j,onClick:()=>{j&&f(j)},children:h("confirm")})]})]})})}let w=(0,e.forwardRef)(({value:a,onChange:b,placeholder:c,className:h,disabled:n,onSubmit:o,entityType:p,entityUuid:q},w)=>{let x=(0,e.useRef)([]),y=(0,e.useRef)(!1),z=(0,e.useRef)(null),A=(0,e.useRef)(null),B=(0,e.useRef)(null),C=(0,e.useRef)(null),[,D]=(0,e.useState)(0),E=(0,e.useRef)(!1),F=(0,i.c)("mention"),G=(0,e.useRef)({online:"",offline:"",idle:"",activeCount:()=>""});G.current={online:F("online"),offline:F("offline"),idle:F("idle"),activeCount:a=>F("activeCount",{count:a})};let H=(0,e.useCallback)((a,b)=>{let c=`/api/mentionables?q=${encodeURIComponent(a)}&limit=${b}&withInstances=1`;return p&&q&&(c+=`&entityType=${encodeURIComponent(p)}&entityUuid=${encodeURIComponent(q)}`),c},[p,q]),I=function(a,b){let c=(0,e.useRef)(null),d=(0,e.useRef)(a);return d.current=a,(0,e.useCallback)(a=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>d.current(a),250)},[250])}((0,e.useCallback)(async a=>{y.current=!0,D(a=>a+1);try{let b=await fetch(H(a,10));if(b.ok){let a=await b.json();a.success&&(x.current=a.data)}}catch{x.current=[]}finally{y.current=!1,D(a=>a+1)}},[H]),250),[J,K]=(0,e.useState)(null),L=(0,e.useCallback)((a,b,c)=>{b({id:a.uuid,label:a.name,mentionType:a.type,pinnedHost:c?c.host:null,pinnedCwd:c?c.cwd:null,runtimeCwd:c?.runtimeCwd===!0})},[]),M=(0,e.useRef)(()=>{});M.current=(a,b)=>{let c=function(a){if("agent"===a.type&&a.projectFixedCwd)return{kind:"insert",pin:{host:a.projectFixedCwd.host,cwd:a.projectFixedCwd.cwd,runtimeCwd:!0}};if(a.isIdeaAssignee&&a.ideaPin)return{kind:"insert",pin:{host:a.ideaPin.host,cwd:a.ideaPin.cwd}};let b="agent"===a.type?(a.instances??[]).filter(a=>"online"===a.effectiveStatus):[];return b.length>=2?{kind:"pick",onlineInstances:b}:1===b.length?{kind:"insert",pin:b[0]}:{kind:"insert",pin:null}}(a);if("pick"===c.kind)return void K({item:a,onlineInstances:c.onlineInstances,command:b});L(a,b,c.pin??void 0)};let N=(0,e.useCallback)((a,b)=>M.current(a,b),[]);(0,e.useEffect)(()=>{B.current&&C.current&&u(x.current,y.current,C.current,z,B.current,G.current,N)});let O=(0,f.hG)({immediatelyRender:!1,extensions:[g.A.configure({heading:!1,blockquote:!1,codeBlock:!1,bulletList:!1,orderedList:!1,listItem:!1,horizontalRule:!1}),r.configure({HTMLAttributes:{class:"text-blue-600 font-medium"},renderText:({node:a})=>`@${a.attrs.label??a.attrs.id}`,suggestion:{char:"@",allowSpaces:!0,items:({query:a})=>(I(a),x.current),render:()=>({onStart:a=>{let b=document.createElement("div");if(b.className="z-[100] rounded-md border border-border bg-card shadow-md min-w-[200px] max-w-[300px] overflow-hidden",B.current=b,C.current=a.command,a.clientRect){let c="function"==typeof a.clientRect?a.clientRect():a.clientRect;c&&(b.style.position="fixed",b.style.left=`${c.left}px`,window.innerHeight-c.bottom<220?b.style.bottom=`${window.innerHeight-c.top+4}px`:b.style.top=`${c.bottom+4}px`)}(A.current??document.body).appendChild(b),u(x.current,y.current,a.command,z,b,G.current,N)},onUpdate:a=>{if(C.current=a.command,B.current&&a.clientRect){let b="function"==typeof a.clientRect?a.clientRect():a.clientRect;b&&(B.current.style.left=`${b.left}px`,window.innerHeight-b.bottom<220?(B.current.style.top="",B.current.style.bottom=`${window.innerHeight-b.top+4}px`):(B.current.style.bottom="",B.current.style.top=`${b.bottom+4}px`))}B.current&&u(x.current,y.current,a.command,z,B.current,G.current,N)},onKeyDown:a=>!!z.current&&z.current.onKeyDown(a),onExit:()=>{B.current?.remove(),B.current=null,C.current=null,x.current=[],y.current=!1}})}})],content:t(a),editable:!n,editorProps:{attributes:{class:(0,j.cn)("min-h-[36px] max-h-[120px] overflow-y-auto px-3 py-2 text-sm outline-none","prose prose-sm max-w-none [&_p]:my-0"),"data-placeholder":c||""},handleKeyDown:(a,b)=>!(0,l.P)(b)&&"Enter"===b.key&&!b.shiftKey&&!B.current&&!!o&&(b.preventDefault(),o(),!0)},onUpdate:({editor:a})=>{E.current=!0,b(s(a))}});(0,e.useEffect)(()=>{if(!O||E.current){E.current=!1;return}s(O)!==a&&O.commands.setContent(t(a))},[a,O]),(0,e.useEffect)(()=>{O&&O.setEditable(!n)},[n,O]);let P=(0,e.useCallback)(a=>{if(!O)return;let b=null!==a.pinnedHost||null!==a.pinnedCwd?{host:a.pinnedHost??"",cwd:a.pinnedCwd,runtimeCwd:!0===a.runtimeCwd}:null,c=function(a,b,c=null){let d=b.type.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),e=b.uuid.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(RegExp(`@\\[[^\\]]+\\]\\(${d}:${e}(?:\\?[^)]*)?\\)\\s*$`,"i").test(a))return{value:a,appended:!1};let f=(0,m.$v)(b.name,b.type,b.uuid,c?.host??null,c?.cwd??null,c?.runtimeCwd===!0),g=a.length>0&&!/\s$/.test(a)?" ":"";return{value:`${a}${g}${f} `,appended:!0}}(s(O),{type:a.mentionType,uuid:a.id,name:a.label},b);c.appended&&O.commands.setContent(t(c.value)),O.commands.focus("end")},[O]),Q=(0,e.useCallback)(async a=>{let b=a;if("agent"===a.type){let c=await fetch(H(a.name,50));if(!c.ok)throw Error("Failed to load Agent mention routing");let d=await c.json();if(!d.success||!Array.isArray(d.data))throw Error("Invalid Agent mention routing response");b=function(a,b){let c=b.find(b=>b.type===a.type&&b.uuid===a.uuid);if(!c)throw Error("Reply author is unavailable for mention routing");return c}(a,d.data)}M.current(b,a=>{P(a)})},[H,P]);return(0,e.useImperativeHandle)(w,()=>({focus:()=>O?.commands.focus(),clear:()=>{O?.commands.clearContent(),b("")},replyToAuthor:Q}),[O,b,Q]),(0,d.jsxs)("div",{ref:A,className:(0,j.cn)("relative rounded-md border border-input bg-transparent shadow-xs transition-[color,box-shadow]","focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",n&&"cursor-not-allowed opacity-50",h),children:[(0,d.jsx)(f.$Z,{editor:O}),(0,d.jsx)(v,{open:null!==J,agentName:J?.item.name??"",instances:J?.onlineInstances??[],onConfirm:a=>{!function(a,b,c){c.close(),a&&c.defer(()=>{try{c.focusEditor(),c.insert(a,b)}catch(a){c.onError(a)}})}(J,a,{close:()=>K(null),insert:(a,b)=>L(a.item,a.command,b),defer:a=>requestAnimationFrame(a),focusEditor:()=>O?.commands.focus(),onError:a=>k.q.error("MentionEditor: cwd-pinned mention insert failed",a)})},onCancel:()=>K(null)}),(0,d.jsx)("style",{children:`
2
2
  .tiptap p.is-editor-empty:first-child::before {
3
3
  content: attr(data-placeholder);
4
4
  color: #9A9A9A;
@@ -10,4 +10,4 @@
10
10
  color: #2563eb;
11
11
  font-weight: 500;
12
12
  }
13
- `})]})});w.displayName="MentionEditor"},29460:(a,b,c)=>{c.d(b,{d:()=>e});var d=c(42377);let e=(0,d.createServerReference)("70402b584ffe421700acebba56bbf972745b095cb5",d.callServer,void 0,d.findSourceMapURL,"getCommentsAction")},29662:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(50117),f=c(74438),g=c(15264),h=a([f]);async function i(){let a=await (0,e.UL)(),b=a.get("oidc_access_token")?.value;if(b)return(0,f.QD)(b);let c=a.get("user_session")?.value;if(c){let a=await (0,g.$Y)(c);if(a)return{type:"user",companyUuid:a.companyUuid,actorUuid:a.userUuid,email:a.email,name:a.name}}return null}f=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},56828:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$m:()=>L});var e=c(10837),f=c(21968),g=c(9222),h=c(97443),i=c(86460),j=c(24714),k=c(33091),l=c(70595),m=c(46557),n=c(79543),o=c(42424),p=c(80251),q=c(6871),r=c(24433),s=c(29460),t=c(98688),u=c(10696),v=c(82831),w=c(68797),x=c(76172),y=c(22727),z=c(11573),A=c(76664),B=c(76549),C=c(33863),D=c(94143),E=c(6019),F=a([v,w]);function G(a){return()=>{}}function H(){return!1}function I(a){return"agent"===a.type?(0,e.jsx)(w.Gm,{mention:a,displayName:a.displayName},a.index):(0,e.jsxs)("span",{className:"text-blue-600 font-medium",title:`${a.type}: ${a.uuid}`,children:["@",a.displayName]},a.index)}function J(a,b){let c=new Map;for(let b of a)c.set(b.uuid,b);for(let a of b)c.set(a.uuid,a);return[...c.values()].sort((a,b)=>a.createdAt!==b.createdAt?a.createdAt<b.createdAt?1:-1:a.uuid<b.uuid?1:-1)}async function K(a,b,c=5){let d=new Set(a.map(a=>a.uuid)),e=[],f=null,g=!1,h=0,i=!1,j=null,k=!1;for(let a=0;a<c;a++){let a=await b(f);if(!a)break;if(k=!0,h=a.total,e.push(...a.comments),i=a.hasMore,j=a.nextCursor,a.comments.some(a=>d.has(a.uuid))||!a.hasMore){g=!0;break}f=a.nextCursor}return k?g?{comments:J(a,e),total:h,contiguous:!0,resetOldestCursor:null,resetHasMore:!1}:{comments:J([],e),total:h,contiguous:!1,resetOldestCursor:j,resetHasMore:i}:null}function L({targetType:a,targetUuid:b,currentUserUuid:c,onCountChange:d,compact:l=!1}){let m=(0,g.c)(),[n,q]=(0,f.useState)(""),[v,w]=(0,f.useState)([]),[z,A]=(0,f.useState)(!0),[C,D]=(0,f.useState)(null),[E,F]=(0,f.useState)(!1),[G,H]=(0,f.useState)(!1),[I,L]=(0,f.useState)(null),[M,O]=(0,f.useState)(!1),[P,Q]=(0,f.useState)(0),R=(0,f.useRef)(null),S=(0,f.useRef)(null),T=(0,f.useRef)(new Set),U=(0,f.useRef)(new Set),V=(0,f.useRef)(v);V.current=v;let W=(0,f.useRef)(I);W.current=I;let X=(0,f.useRef)(M);X.current=M;let Y=(0,f.useRef)(E);Y.current=E;let Z=(0,f.useRef)(z);Z.current=z;let $=l?"h-6 w-6":"h-[30px] w-[30px]",_=l?"gap-2":"gap-2.5",aa=(0,f.useCallback)(async()=>{A(!0),D(null);let c=await (0,s.d)(a,b,{limit:10});c.success?(w(c.comments),L(c.nextCursor),O(c.hasMore),Q(c.total)):D(c.error),A(!1)},[a,b]);(0,f.useCallback)(async()=>{if(Y.current||Z.current||!X.current||!W.current)return;F(!0);let c=await (0,s.d)(a,b,{cursor:W.current,limit:10});c.success&&(w(a=>J(a,c.comments)),L(c.nextCursor),O(c.hasMore),Q(c.total)),F(!1)},[a,b]),(0,x.w0)(a,b,d=>{c&&d.actorUuid===c||K(V.current,async c=>{let d=await (0,s.d)(a,b,{cursor:c,limit:10});return d.success?d:null}).then(a=>{a&&(w(a.comments),Q(a.total),a.contiguous||(L(a.resetOldestCursor),O(a.resetHasMore)))})});let ab=async()=>{if(!n.trim()||G)return;H(!0);let c=await (0,t.s)(a,b,n);if(H(!1),c.success){let a=!V.current.some(a=>a.uuid===c.comment.uuid);w(a=>J(a,[c.comment])),a&&Q(a=>a+1),q(""),R.current?.clear()}else B.oR.error(c.error)},ac=(0,f.useCallback)(a=>{R.current?.replyToAuthor(a).catch(()=>{B.oR.error(m("comments.replyFailed"))})},[m]),ad=(0,f.useCallback)(async a=>{if(U.current.has(a))return!0;if(T.current.has(a))return!1;T.current.add(a);try{if(!(await (0,u.J)(a)).success)return B.oR.error(m("comments.deleteFailed")),!1;if(U.current.add(a),V.current.some(b=>b.uuid===a)){let b=V.current.filter(b=>b.uuid!==a);V.current=b,w(b),Q(a=>Math.max(0,a-1))}return!0}finally{T.current.delete(a)}},[m]);return(0,e.jsx)(y.D,{entityType:a,entityUuid:b,subEntityType:"comment",children:(0,e.jsxs)("div",{className:"flex flex-col gap-0",children:[(0,e.jsxs)("div",{className:`flex items-center ${_} pb-3 border-b border-[#F0EDE8] dark:border-[#26241f]`,children:[(0,e.jsx)(p.eu,{className:`${l?"h-6 w-6":"h-7 w-7"} shrink-0`,children:(0,e.jsx)(p.q5,{className:"bg-border text-muted-foreground",children:(0,e.jsx)(h.A,{className:`${l?"h-3 w-3":"h-3.5 w-3.5"}`})})}),(0,e.jsx)("div",{className:"flex-1 min-w-0",children:(0,e.jsx)(r.c5,{ref:R,value:n,onChange:q,onSubmit:ab,placeholder:m("comments.addComment"),className:"border border-border bg-card text-sm rounded-lg",disabled:G,entityType:a,entityUuid:b})}),(0,e.jsx)(o.$,{size:"sm",className:"shrink-0 gap-1 bg-[#E07A5F] text-white hover:bg-[#D06A4F]",disabled:!n.trim()||G,onClick:ab,children:G?(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"})})]}),z?(0,e.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"})}):C?(0,e.jsxs)("div",{className:"flex flex-col items-center gap-2 py-8 text-sm text-muted-foreground",children:[(0,e.jsx)(k.A,{className:"h-4 w-4"}),(0,e.jsx)("p",{children:m("comments.loadError")}),(0,e.jsx)(o.$,{variant:"outline",size:"sm",onClick:aa,children:m("comments.retry")})]}):0===v.length?(0,e.jsx)("p",{className:"py-8 text-center text-sm text-muted-foreground italic",children:m("comments.noComments")}):(0,e.jsxs)("div",{children:[v.map(a=>(0,e.jsx)(N,{comment:a,compact:l,avatarSize:$,gap:_,t:m,currentUserUuid:c,onReply:ac,onDelete:ad},a.uuid)),(0,e.jsx)("div",{ref:S,"aria-hidden":"true"}),E?(0,e.jsxs)("div",{className:"flex items-center justify-center py-4",children:[(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"}),(0,e.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:m("comments.loadingMore")})]}):!M&&(0,e.jsx)("p",{className:"py-4 text-center text-xs text-muted-foreground italic",children:m("comments.noMoreComments")})]})]})})}function M({author:a,canDelete:b,t:c,onReply:d,onDelete:g}){let h=(0,f.useSyncExternalStore)(G,H,()=>!1),[j,k]=(0,f.useState)(!1),[p,q]=(0,f.useState)(!1),[r,s]=(0,f.useState)(!1),t=(0,f.useRef)(null),u=(0,f.useRef)(!1),v=a=>{a.preventDefault(),u.current||t.current?.focus(),u.current=!1},w=a=>{u.current=!0,k(!1);let b=()=>a();"function"==typeof window.requestAnimationFrame?window.requestAnimationFrame(b):window.setTimeout(b,0)},x=(0,e.jsx)(o.$,{ref:t,type:"button",variant:"ghost",size:"icon",className:"relative -my-1 size-6 shrink-0 rounded-md text-muted-foreground hover:bg-accent hover:text-foreground before:absolute before:-inset-2.5 before:content-[''] sm:before:hidden","aria-label":c("comments.actionsLabel",{name:a.name}),children:(0,e.jsx)(l.A,{className:"size-4","aria-hidden":!0})}),y=()=>w(d),z=()=>w(()=>q(!0));return(0,e.jsxs)(e.Fragment,{children:[h?(0,e.jsxs)(D.cj,{open:j,onOpenChange:k,children:[(0,e.jsx)(D.CG,{asChild:!0,children:x}),(0,e.jsxs)(D.h,{side:"bottom","data-comment-actions-variant":"mobile",className:"max-h-[min(82svh,32rem)] gap-0 overflow-hidden rounded-t-2xl pb-[max(1rem,env(safe-area-inset-bottom))]",onCloseAutoFocus:v,children:[(0,e.jsx)("div",{className:"mx-auto mt-2 h-1 w-10 shrink-0 rounded-full bg-muted-foreground/25","aria-hidden":!0}),(0,e.jsxs)(D.Fm,{className:"border-b px-4 pt-3 pb-3 text-left",children:[(0,e.jsx)(D.qp,{children:c("comments.actionsTitle")}),(0,e.jsx)(D.Qs,{children:c("comments.actionsDescription",{name:a.name})})]}),(0,e.jsxs)("div",{className:"overflow-y-auto overscroll-contain px-2 py-2",children:[(0,e.jsxs)(o.$,{type:"button",variant:"ghost",className:"min-h-11 w-full justify-start gap-3 rounded-lg px-3 text-sm",onClick:y,children:[(0,e.jsx)(m.A,{className:"size-5","aria-hidden":!0}),c("comments.reply")]}),b&&(0,e.jsx)("div",{className:"mt-1 border-t pt-1",children:(0,e.jsxs)(o.$,{type:"button",variant:"ghost",className:"min-h-11 w-full justify-start gap-3 rounded-lg px-3 text-sm text-destructive hover:bg-destructive/10 hover:text-destructive focus-visible:text-destructive",onClick:z,children:[(0,e.jsx)(n.A,{className:"size-5","aria-hidden":!0}),c("comments.delete")]})})]})]})]}):(0,e.jsxs)(C.rI,{open:j,onOpenChange:k,children:[(0,e.jsx)(C.ty,{asChild:!0,children:x}),(0,e.jsxs)(C.SQ,{align:"end","data-comment-actions-variant":"desktop",className:"z-[100] w-44",onCloseAutoFocus:v,children:[(0,e.jsxs)(C._2,{onSelect:y,children:[(0,e.jsx)(m.A,{"aria-hidden":!0}),c("comments.reply")]}),b&&(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(C.mB,{}),(0,e.jsxs)(C._2,{variant:"destructive",onSelect:z,children:[(0,e.jsx)(n.A,{"aria-hidden":!0}),c("comments.delete")]})]})]})]}),(0,e.jsx)(E.Lt,{open:p,onOpenChange:a=>{r||q(a)},children:(0,e.jsxs)(E.EO,{className:"z-[120]",overlayClassName:"z-[120]",onCloseAutoFocus:a=>{a.preventDefault(),t.current?.focus()},children:[(0,e.jsxs)(E.wd,{children:[(0,e.jsx)(E.r7,{children:c("comments.deleteTitle")}),(0,e.jsx)(E.$v,{children:c("comments.deleteDescription")})]}),(0,e.jsxs)(E.ck,{children:[(0,e.jsx)(E.Zr,{disabled:r,children:c("common.cancel")}),(0,e.jsxs)(E.Rx,{variant:"destructive",disabled:r,onClick:async a=>{a.preventDefault(),s(!0);let b=await g();s(!1),b&&q(!1)},children:[r&&(0,e.jsx)(i.A,{className:"animate-spin","aria-hidden":!0}),c("comments.deleteConfirm")]})]})]})})]})}function N({comment:a,compact:b,avatarSize:c,gap:d,t:g,currentUserUuid:h,onReply:i,onDelete:j}){let[k,l]=(0,f.useState)(!1),m="agent"===a.author.type,n=!!h&&("user"===a.author.type&&a.author.uuid===h||"agent"===a.author.type&&a.author.owner?.uuid===h),r=m?(0,z.j)(a.author.name):null,s=a.content.length>200,t=r?`${r}18`:void 0;return(0,e.jsxs)("div",{className:`flex ${d} py-3 border-b border-[#F0EDE8] dark:border-[#26241f] last:border-b-0`,children:[m?(0,e.jsx)(q.AgentAvatar,{name:a.author.name,size:b?24:30,className:"shrink-0 rounded-full"}):(0,e.jsx)(p.eu,{className:`${c} shrink-0`,children:(0,e.jsx)(p.q5,{className:"bg-border text-muted-foreground text-[11px] font-medium",children:a.author.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,e.jsxs)("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-1.5",children:[(0,e.jsx)("span",{className:`${b?"text-xs":"text-[13px]"} font-semibold text-[#1A1A1A] dark:text-[#CFCFCF]`,children:a.author.name}),(0,e.jsx)("span",{style:m?{backgroundColor:t,color:r??void 0}:void 0,className:`inline-flex items-center rounded px-1.5 py-px text-[9px] font-medium ${m?"":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"}`,children:g(m?"comments.roleAgent":"comments.roleHuman")}),(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,A.r)(c)}(a.createdAt,g)})]}),(0,e.jsx)(M,{author:{type:m?"agent":"user",uuid:a.author.uuid,name:a.author.name},canDelete:n,t:g,onReply:()=>i({type:m?"agent":"user",uuid:a.author.uuid,name:a.author.name}),onDelete:()=>j(a.uuid)})]}),m&&a.author.owner&&(0,e.jsx)("div",{className:"flex items-center gap-1 mt-0.5",children:(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground italic",children:g("comments.onBehalfOf",{name:a.author.owner.name})})}),(0,e.jsx)("div",{className:`mt-1 ${b?"text-xs":"text-[13px]"} leading-relaxed text-[#3D3D3D] dark:text-[#d8d2ca] max-w-none [&_h1]:text-sm [&_h1]:font-semibold [&_h1]:mt-2 [&_h1]:mb-1 [&_h2]:text-[13px] [&_h2]:font-semibold [&_h2]:mt-2 [&_h2]:mb-1 [&_h3]:text-[13px] [&_h3]:font-semibold [&_h3]:mt-1.5 [&_h3]:mb-0.5 [&_p]:my-1 [&_ul]:my-1 [&_ol]:my-1 [&_li]:my-0.5 [&_code]:bg-secondary [&_code]:text-foreground [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_a]:text-primary [&_pre]:bg-secondary [&_pre]:text-foreground`,children:s&&!k?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(v.z7,{renderMention:I,children:a.content.slice(0,200)+"..."}),(0,e.jsx)(o.$,{variant:"link",size:"sm",onClick:()=>l(!0),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:g("comments.showMore")})]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(v.z7,{renderMention:I,children:a.content}),s&&(0,e.jsx)(o.$,{variant:"link",size:"sm",onClick:()=>l(!1),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:g("comments.showLess")})]})})]})]})}[v,w]=F.then?(await F)():F,d()}catch(a){d(a)}})},61413:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LS:()=>p,U$:()=>l,U1:()=>i,Yi:()=>j,gA:()=>m,hF:()=>h,vr:()=>n,xx:()=>o,yx:()=>k});var e=c(52618),f=c(42558),g=a([e]);async function h({companyUuid:a,skip:b,take:c}){let[d,f]=await Promise.all([e.z.project.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0}}}}),e.z.project.count({where:{companyUuid:a}})]);return{projects:d,total:f}}async function i(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0,activities:!0}}}})}async function j(a,b){return!!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function k(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0}})}async function l(a,b){return(await e.z.project.findMany({where:{companyUuid:a,groupUuid:b},select:{uuid:!0}})).map(a=>a.uuid)}async function m({companyUuid:a,name:b,description:c,groupUuid:d}){let g=await e.z.project.create({data:{companyUuid:a,name:b,description:c,groupUuid:d??null},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0}});return f.B.emitChange({companyUuid:a,projectUuid:g.uuid,entityType:"project",entityUuid:g.uuid,action:"created"}),g}async function n(a,b,c){let d=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return d?e.z.project.update({where:{uuid:d.uuid},data:c,select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}}):null}async function o(a,b){let c=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return!!c&&(await e.z.project.delete({where:{uuid:c.uuid}}),f.B.emitChange({companyUuid:a,projectUuid:b,entityType:"project",entityUuid:b,action:"deleted"}),!0)}async function p(a,b){let[c,d,f,g]=await Promise.all([e.z.idea.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.task.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.proposal.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.document.count({where:{projectUuid:b,companyUuid:a}})]),h=new Map(c.map(a=>[a.status,a._count])),i=c.reduce((a,b)=>a+b._count,0),j=h.get("open")||0,k=new Map(d.map(a=>[a.status,a._count])),l=d.reduce((a,b)=>a+b._count,0),m=k.get("in_progress")||0,n=(k.get("open")||0)+(k.get("assigned")||0),o=k.get("to_verify")||0,p=(k.get("done")||0)+(k.get("closed")||0),q=new Map(f.map(a=>[a.status,a._count])),r=f.reduce((a,b)=>a+b._count,0),s=q.get("pending")||0;return{ideas:{total:i,open:j},tasks:{total:l,inProgress:m,todo:n,toVerify:o,done:p},proposals:{total:r,pending:s},documents:{total:g}}}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},76664:(a,b,c)=>{function d(a){let b="string"==typeof a?new Date(a):a;if(isNaN(b.getTime()))return"";let c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0"),f=String(b.getHours()).padStart(2,"0"),g=String(b.getMinutes()).padStart(2,"0");return`${c}-${d}-${e} ${f}:${g}`}function e(a,b){let c="string"==typeof a?new Date(a):a;return isNaN(c.getTime())?"":c.toLocaleDateString(b,{month:"short",day:"numeric"})}c.d(b,{r:()=>d,s:()=>e})},82831:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{z7:()=>k});var e=c(10837),f=c(21968),g=c.n(f),h=c(97450),i=c(10174),j=a([h]);h=(j.then?(await j)():j)[0];let n=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:\?([^)]*))?\)/gi,o="chorus-mention";function k({children:a,renderMention:b}){if(!a||"string"!=typeof a)return null;if(!new RegExp(n.source,n.flags.replace("g","")).test(a))return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{children:a})});if(b)return(0,e.jsx)(l,{renderMention:b,children:a});let{processed:c,mentions:d}=function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j,runtimeCwd:k}=(0,i.vE)(f),l={displayName:c,type:d,uuid:e};return(null!==h||null!==j)&&(l.pinnedHost=h,l.pinnedCwd=j,k&&(l.runtimeCwd=!0)),b.push(l),`\u200B\u200BMENTION_${g}\u200B\u200B`}),mentions:b}}(a);return(0,e.jsx)(m,{mentions:d,children:(0,e.jsx)(h.MarkdownContent,{children:c})})}function l({children:a,renderMention:b}){let{processed:c,mentions:d}=g().useMemo(()=>(function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j,runtimeCwd:k}=(0,i.vE)(f),l={type:d.toLowerCase(),uuid:e.toLowerCase(),displayName:c};(null!==h||null!==j)&&(l.pinnedHost=h,l.pinnedCwd=j,k&&(l.runtimeCwd=!0)),b.push(l);let m=`@${c}`.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return`<${o} idx="${g}">${m}</${o}>`}),mentions:b}})(a),[a]),f=g().useMemo(()=>({[o]:({idx:a})=>{let c=void 0===a?NaN:parseInt(a,10),f=Number.isInteger(c)?d[c]:void 0;return f?(0,e.jsx)(e.Fragment,{children:b({...f,index:c})}):null}}),[d,b]);return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{components:f,allowedTags:{[o]:["idx"]},literalTagContent:[o],children:c})})}function m({children:a,mentions:b}){let c=g().useRef(null);return(0,e.jsx)("div",{ref:c,className:"overflow-hidden [&_pre]:overflow-x-auto",children:a})}d()}catch(a){d(a)}})},90061:(a,b,c)=>{c.d(b,{fv:()=>p,xQ:()=>q});var d=c(21968),e=c(76172);let f=new Map,g=new Map,h=new Map,i=new Set,j=0;function k(a,b,c,d){return c?d?`${a}:${b}:${c}:${d}`:`${a}:${b}:${c}`:`${a}:${b}`}function l(){j++,i.forEach(a=>a())}function m(a){let b=a.subEntityType,c=a.subEntityUuid,d=k(a.entityType,a.entityUuid,b,c),e=function(a,b,c,d,e){let f=k(a,b,d,e);return`${f}:${c}`}(a.entityType,a.entityUuid,a.agentUuid,b,c),i=g.get(e);if(i&&Date.now()-i<3e3)return;g.set(e,Date.now());let j={agentUuid:a.agentUuid,agentName:a.agentName,action:a.action,timestamp:Date.now()},m=(f.get(d)??[]).filter(b=>b.agentUuid!==a.agentUuid);m.push(j),f.set(d,m);let n=h.get(e);n&&clearTimeout(n);let o=setTimeout(()=>{let b=f.get(d);if(b){let c=b.filter(b=>b.agentUuid!==a.agentUuid);0===c.length?f.delete(d):f.set(d,c)}g.delete(e),h.delete(e),l()},3e3);h.set(e,o),l()}function n(){return j}function o(a){return i.add(a),()=>{i.delete(a)}}function p(a){m({type:"presence",companyUuid:"",projectUuid:"",...a,timestamp:Date.now()})}function q(){return(0,d.useSyncExternalStore)(o,n,n),(0,e.S2)(m),{getPresence:(a,b,c,d)=>{if(c)return f.get(k(a,b,c,d))??[];let e=`${a}:${b}`,g=new Map;for(let[a,b]of f)if(a===e||a.startsWith(e+":"))for(let a of b){let b=g.get(a.agentUuid);(!b||a.timestamp>b.timestamp)&&g.set(a.agentUuid,a)}return[...g.values()]}}}},98581:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Jg:()=>n,dv:()=>l,sZ:()=>m});var e=c(2613);c(50785);var f=c(9259),g=c(466),h=c(67738),i=c(97307),j=c(12217),k=a([f,g,h]);[f,g,h]=k.then?(await k)():k;let o=["idea","proposal","task","document"];async function l(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!o.includes(a))return{success:!1,error:`Invalid target type: ${a}`};try{let e=await (0,g.fg)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,cursor:c?.cursor??null,limit:c?.limit??10}),f=await (0,g.Yt)(e.comments);return{success:!0,comments:f,total:e.total,nextCursor:e.nextCursor??null,hasMore:e.hasMore??!1}}catch(b){return i.default.error({err:b,targetType:a},"Failed to get comments"),{success:!1,error:"Failed to load comments"}}}async function m(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!o.includes(a))return{success:!1,error:`Invalid target type: ${a}`};if(!c.trim())return{success:!1,error:"Comment content is required"};try{let e=await (0,g.eT)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,content:c.trim(),authorType:d.type,authorUuid:d.actorUuid}),f=await (0,g.Hu)(a,b,d.companyUuid);f&&await (0,h.createActivity)({companyUuid:d.companyUuid,projectUuid:f,targetType:a,targetUuid:b,actorType:d.type,actorUuid:d.actorUuid,action:"comment_added"});let[i]=await (0,g.Yt)([e]);return{success:!0,comment:i}}catch(b){return i.default.error({err:b,targetType:a},"Failed to create comment"),{success:!1,error:"Failed to create comment"}}}async function n(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"Unauthorized"};try{return await (0,g.Tu)({companyUuid:b.companyUuid,commentUuid:a,actingUserUuid:b.actorUuid}),{success:!0}}catch(b){return i.default.error({err:b,commentUuid:a},"Failed to delete comment"),{success:!1,error:"Failed to delete comment"}}}(0,j.D)([l,m,n]),(0,e.A)(l,"70402b584ffe421700acebba56bbf972745b095cb5",null),(0,e.A)(m,"702a621be2035de428c30748715a0b309219df4dd9",null),(0,e.A)(n,"40907c2f19d80c1e0e1c51e133c86e2859fe26b259",null),d()}catch(a){d(a)}})},98688:(a,b,c)=>{c.d(b,{s:()=>e});var d=c(42377);let e=(0,d.createServerReference)("702a621be2035de428c30748715a0b309219df4dd9",d.callServer,void 0,d.findSourceMapURL,"createCommentAction")}};
13
+ `})]})});w.displayName="MentionEditor"},29662:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(50117),f=c(74438),g=c(15264),h=a([f]);async function i(){let a=await (0,e.UL)(),b=a.get("oidc_access_token")?.value;if(b)return(0,f.QD)(b);let c=a.get("user_session")?.value;if(c){let a=await (0,g.$Y)(c);if(a)return{type:"user",companyUuid:a.companyUuid,actorUuid:a.userUuid,email:a.email,name:a.name}}return null}f=(h.then?(await h)():h)[0],d()}catch(a){d(a)}})},48736:(a,b,c)=>{c.d(b,{d:()=>e});var d=c(42377);let e=(0,d.createServerReference)("7035542b5e5ffdfc0c2de346ac891a63cd941902b3",d.callServer,void 0,d.findSourceMapURL,"getCommentsAction")},56828:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$m:()=>L});var e=c(10837),f=c(21968),g=c(9222),h=c(97443),i=c(86460),j=c(24714),k=c(33091),l=c(70595),m=c(46557),n=c(79543),o=c(42424),p=c(80251),q=c(6871),r=c(24433),s=c(48736),t=c(95190),u=c(5412),v=c(82831),w=c(68797),x=c(76172),y=c(22727),z=c(11573),A=c(76664),B=c(76549),C=c(33863),D=c(94143),E=c(6019),F=a([v,w]);function G(a){return()=>{}}function H(){return!1}function I(a){return"agent"===a.type?(0,e.jsx)(w.Gm,{mention:a,displayName:a.displayName},a.index):(0,e.jsxs)("span",{className:"text-blue-600 font-medium",title:`${a.type}: ${a.uuid}`,children:["@",a.displayName]},a.index)}function J(a,b){let c=new Map;for(let b of a)c.set(b.uuid,b);for(let a of b)c.set(a.uuid,a);return[...c.values()].sort((a,b)=>a.createdAt!==b.createdAt?a.createdAt<b.createdAt?1:-1:a.uuid<b.uuid?1:-1)}async function K(a,b,c=5){let d=new Set(a.map(a=>a.uuid)),e=[],f=null,g=!1,h=0,i=!1,j=null,k=!1;for(let a=0;a<c;a++){let a=await b(f);if(!a)break;if(k=!0,h=a.total,e.push(...a.comments),i=a.hasMore,j=a.nextCursor,a.comments.some(a=>d.has(a.uuid))||!a.hasMore){g=!0;break}f=a.nextCursor}return k?g?{comments:J(a,e),total:h,contiguous:!0,resetOldestCursor:null,resetHasMore:!1}:{comments:J([],e),total:h,contiguous:!1,resetOldestCursor:j,resetHasMore:i}:null}function L({targetType:a,targetUuid:b,currentUserUuid:c,onCountChange:d,compact:l=!1}){let m=(0,g.c)(),[n,q]=(0,f.useState)(""),[v,w]=(0,f.useState)([]),[z,A]=(0,f.useState)(!0),[C,D]=(0,f.useState)(null),[E,F]=(0,f.useState)(!1),[G,H]=(0,f.useState)(!1),[I,L]=(0,f.useState)(null),[M,O]=(0,f.useState)(!1),[P,Q]=(0,f.useState)(0),R=(0,f.useRef)(null),S=(0,f.useRef)(null),T=(0,f.useRef)(new Set),U=(0,f.useRef)(new Set),V=(0,f.useRef)(v);V.current=v;let W=(0,f.useRef)(I);W.current=I;let X=(0,f.useRef)(M);X.current=M;let Y=(0,f.useRef)(E);Y.current=E;let Z=(0,f.useRef)(z);Z.current=z;let $=l?"h-6 w-6":"h-[30px] w-[30px]",_=l?"gap-2":"gap-2.5",aa=(0,f.useCallback)(async()=>{A(!0),D(null);let c=await (0,s.d)(a,b,{limit:10});c.success?(w(c.comments),L(c.nextCursor),O(c.hasMore),Q(c.total)):D(c.error),A(!1)},[a,b]);(0,f.useCallback)(async()=>{if(Y.current||Z.current||!X.current||!W.current)return;F(!0);let c=await (0,s.d)(a,b,{cursor:W.current,limit:10});c.success&&(w(a=>J(a,c.comments)),L(c.nextCursor),O(c.hasMore),Q(c.total)),F(!1)},[a,b]),(0,x.w0)(a,b,d=>{c&&d.actorUuid===c||K(V.current,async c=>{let d=await (0,s.d)(a,b,{cursor:c,limit:10});return d.success?d:null}).then(a=>{a&&(w(a.comments),Q(a.total),a.contiguous||(L(a.resetOldestCursor),O(a.resetHasMore)))})});let ab=async()=>{if(!n.trim()||G)return;H(!0);let c=await (0,t.s)(a,b,n);if(H(!1),c.success){let a=!V.current.some(a=>a.uuid===c.comment.uuid);w(a=>J(a,[c.comment])),a&&Q(a=>a+1),q(""),R.current?.clear()}else B.oR.error(c.error)},ac=(0,f.useCallback)(a=>{R.current?.replyToAuthor(a).catch(()=>{B.oR.error(m("comments.replyFailed"))})},[m]),ad=(0,f.useCallback)(async a=>{if(U.current.has(a))return!0;if(T.current.has(a))return!1;T.current.add(a);try{if(!(await (0,u.J)(a)).success)return B.oR.error(m("comments.deleteFailed")),!1;if(U.current.add(a),V.current.some(b=>b.uuid===a)){let b=V.current.filter(b=>b.uuid!==a);V.current=b,w(b),Q(a=>Math.max(0,a-1))}return!0}finally{T.current.delete(a)}},[m]);return(0,e.jsx)(y.D,{entityType:a,entityUuid:b,subEntityType:"comment",children:(0,e.jsxs)("div",{className:"flex flex-col gap-0",children:[(0,e.jsxs)("div",{className:`flex items-center ${_} pb-3 border-b border-[#F0EDE8] dark:border-[#26241f]`,children:[(0,e.jsx)(p.eu,{className:`${l?"h-6 w-6":"h-7 w-7"} shrink-0`,children:(0,e.jsx)(p.q5,{className:"bg-border text-muted-foreground",children:(0,e.jsx)(h.A,{className:`${l?"h-3 w-3":"h-3.5 w-3.5"}`})})}),(0,e.jsx)("div",{className:"flex-1 min-w-0",children:(0,e.jsx)(r.c5,{ref:R,value:n,onChange:q,onSubmit:ab,placeholder:m("comments.addComment"),className:"border border-border bg-card text-sm rounded-lg",disabled:G,entityType:a,entityUuid:b})}),(0,e.jsx)(o.$,{size:"sm",className:"shrink-0 gap-1 bg-[#E07A5F] text-white hover:bg-[#D06A4F]",disabled:!n.trim()||G,onClick:ab,children:G?(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"})})]}),z?(0,e.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"})}):C?(0,e.jsxs)("div",{className:"flex flex-col items-center gap-2 py-8 text-sm text-muted-foreground",children:[(0,e.jsx)(k.A,{className:"h-4 w-4"}),(0,e.jsx)("p",{children:m("comments.loadError")}),(0,e.jsx)(o.$,{variant:"outline",size:"sm",onClick:aa,children:m("comments.retry")})]}):0===v.length?(0,e.jsx)("p",{className:"py-8 text-center text-sm text-muted-foreground italic",children:m("comments.noComments")}):(0,e.jsxs)("div",{children:[v.map(a=>(0,e.jsx)(N,{comment:a,compact:l,avatarSize:$,gap:_,t:m,currentUserUuid:c,onReply:ac,onDelete:ad},a.uuid)),(0,e.jsx)("div",{ref:S,"aria-hidden":"true"}),E?(0,e.jsxs)("div",{className:"flex items-center justify-center py-4",children:[(0,e.jsx)(i.A,{className:"h-4 w-4 animate-spin text-muted-foreground"}),(0,e.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:m("comments.loadingMore")})]}):!M&&(0,e.jsx)("p",{className:"py-4 text-center text-xs text-muted-foreground italic",children:m("comments.noMoreComments")})]})]})})}function M({author:a,canDelete:b,t:c,onReply:d,onDelete:g}){let h=(0,f.useSyncExternalStore)(G,H,()=>!1),[j,k]=(0,f.useState)(!1),[p,q]=(0,f.useState)(!1),[r,s]=(0,f.useState)(!1),t=(0,f.useRef)(null),u=(0,f.useRef)(!1),v=a=>{a.preventDefault(),u.current||t.current?.focus(),u.current=!1},w=a=>{u.current=!0,k(!1);let b=()=>a();"function"==typeof window.requestAnimationFrame?window.requestAnimationFrame(b):window.setTimeout(b,0)},x=(0,e.jsx)(o.$,{ref:t,type:"button",variant:"ghost",size:"icon",className:"relative -my-1 size-6 shrink-0 rounded-md text-muted-foreground hover:bg-accent hover:text-foreground before:absolute before:-inset-2.5 before:content-[''] sm:before:hidden","aria-label":c("comments.actionsLabel",{name:a.name}),children:(0,e.jsx)(l.A,{className:"size-4","aria-hidden":!0})}),y=()=>w(d),z=()=>w(()=>q(!0));return(0,e.jsxs)(e.Fragment,{children:[h?(0,e.jsxs)(D.cj,{open:j,onOpenChange:k,children:[(0,e.jsx)(D.CG,{asChild:!0,children:x}),(0,e.jsxs)(D.h,{side:"bottom","data-comment-actions-variant":"mobile",className:"max-h-[min(82svh,32rem)] gap-0 overflow-hidden rounded-t-2xl pb-[max(1rem,env(safe-area-inset-bottom))]",onCloseAutoFocus:v,children:[(0,e.jsx)("div",{className:"mx-auto mt-2 h-1 w-10 shrink-0 rounded-full bg-muted-foreground/25","aria-hidden":!0}),(0,e.jsxs)(D.Fm,{className:"border-b px-4 pt-3 pb-3 text-left",children:[(0,e.jsx)(D.qp,{children:c("comments.actionsTitle")}),(0,e.jsx)(D.Qs,{children:c("comments.actionsDescription",{name:a.name})})]}),(0,e.jsxs)("div",{className:"overflow-y-auto overscroll-contain px-2 py-2",children:[(0,e.jsxs)(o.$,{type:"button",variant:"ghost",className:"min-h-11 w-full justify-start gap-3 rounded-lg px-3 text-sm",onClick:y,children:[(0,e.jsx)(m.A,{className:"size-5","aria-hidden":!0}),c("comments.reply")]}),b&&(0,e.jsx)("div",{className:"mt-1 border-t pt-1",children:(0,e.jsxs)(o.$,{type:"button",variant:"ghost",className:"min-h-11 w-full justify-start gap-3 rounded-lg px-3 text-sm text-destructive hover:bg-destructive/10 hover:text-destructive focus-visible:text-destructive",onClick:z,children:[(0,e.jsx)(n.A,{className:"size-5","aria-hidden":!0}),c("comments.delete")]})})]})]})]}):(0,e.jsxs)(C.rI,{open:j,onOpenChange:k,children:[(0,e.jsx)(C.ty,{asChild:!0,children:x}),(0,e.jsxs)(C.SQ,{align:"end","data-comment-actions-variant":"desktop",className:"z-[100] w-44",onCloseAutoFocus:v,children:[(0,e.jsxs)(C._2,{onSelect:y,children:[(0,e.jsx)(m.A,{"aria-hidden":!0}),c("comments.reply")]}),b&&(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(C.mB,{}),(0,e.jsxs)(C._2,{variant:"destructive",onSelect:z,children:[(0,e.jsx)(n.A,{"aria-hidden":!0}),c("comments.delete")]})]})]})]}),(0,e.jsx)(E.Lt,{open:p,onOpenChange:a=>{r||q(a)},children:(0,e.jsxs)(E.EO,{className:"z-[120]",overlayClassName:"z-[120]",onCloseAutoFocus:a=>{a.preventDefault(),t.current?.focus()},children:[(0,e.jsxs)(E.wd,{children:[(0,e.jsx)(E.r7,{children:c("comments.deleteTitle")}),(0,e.jsx)(E.$v,{children:c("comments.deleteDescription")})]}),(0,e.jsxs)(E.ck,{children:[(0,e.jsx)(E.Zr,{disabled:r,children:c("common.cancel")}),(0,e.jsxs)(E.Rx,{variant:"destructive",disabled:r,onClick:async a=>{a.preventDefault(),s(!0);let b=await g();s(!1),b&&q(!1)},children:[r&&(0,e.jsx)(i.A,{className:"animate-spin","aria-hidden":!0}),c("comments.deleteConfirm")]})]})]})})]})}function N({comment:a,compact:b,avatarSize:c,gap:d,t:g,currentUserUuid:h,onReply:i,onDelete:j}){let[k,l]=(0,f.useState)(!1),m="agent"===a.author.type,n=!!h&&("user"===a.author.type&&a.author.uuid===h||"agent"===a.author.type&&a.author.owner?.uuid===h),r=m?(0,z.j)(a.author.name):null,s=a.content.length>200,t=r?`${r}18`:void 0;return(0,e.jsxs)("div",{className:`flex ${d} py-3 border-b border-[#F0EDE8] dark:border-[#26241f] last:border-b-0`,children:[m?(0,e.jsx)(q.AgentAvatar,{name:a.author.name,size:b?24:30,className:"shrink-0 rounded-full"}):(0,e.jsx)(p.eu,{className:`${c} shrink-0`,children:(0,e.jsx)(p.q5,{className:"bg-border text-muted-foreground text-[11px] font-medium",children:a.author.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,e.jsxs)("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-1.5",children:[(0,e.jsx)("span",{className:`${b?"text-xs":"text-[13px]"} font-semibold text-[#1A1A1A] dark:text-[#CFCFCF]`,children:a.author.name}),(0,e.jsx)("span",{style:m?{backgroundColor:t,color:r??void 0}:void 0,className:`inline-flex items-center rounded px-1.5 py-px text-[9px] font-medium ${m?"":"bg-[#F0EDE8] dark:bg-[#1f1e1c] text-muted-foreground"}`,children:g(m?"comments.roleAgent":"comments.roleHuman")}),(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,A.r)(c)}(a.createdAt,g)})]}),(0,e.jsx)(M,{author:{type:m?"agent":"user",uuid:a.author.uuid,name:a.author.name},canDelete:n,t:g,onReply:()=>i({type:m?"agent":"user",uuid:a.author.uuid,name:a.author.name}),onDelete:()=>j(a.uuid)})]}),m&&a.author.owner&&(0,e.jsx)("div",{className:"flex items-center gap-1 mt-0.5",children:(0,e.jsx)("span",{className:"text-[11px] text-muted-foreground italic",children:g("comments.onBehalfOf",{name:a.author.owner.name})})}),(0,e.jsx)("div",{className:`mt-1 ${b?"text-xs":"text-[13px]"} leading-relaxed text-[#3D3D3D] dark:text-[#d8d2ca] max-w-none [&_h1]:text-sm [&_h1]:font-semibold [&_h1]:mt-2 [&_h1]:mb-1 [&_h2]:text-[13px] [&_h2]:font-semibold [&_h2]:mt-2 [&_h2]:mb-1 [&_h3]:text-[13px] [&_h3]:font-semibold [&_h3]:mt-1.5 [&_h3]:mb-0.5 [&_p]:my-1 [&_ul]:my-1 [&_ol]:my-1 [&_li]:my-0.5 [&_code]:bg-secondary [&_code]:text-foreground [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_a]:text-primary [&_pre]:bg-secondary [&_pre]:text-foreground`,children:s&&!k?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(v.z7,{renderMention:I,children:a.content.slice(0,200)+"..."}),(0,e.jsx)(o.$,{variant:"link",size:"sm",onClick:()=>l(!0),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:g("comments.showMore")})]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(v.z7,{renderMention:I,children:a.content}),s&&(0,e.jsx)(o.$,{variant:"link",size:"sm",onClick:()=>l(!1),className:"h-auto p-0 text-[#E07A5F] dark:text-[#F0A088] text-xs font-medium mt-1",children:g("comments.showLess")})]})})]})]})}[v,w]=F.then?(await F)():F,d()}catch(a){d(a)}})},61413:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LS:()=>p,U$:()=>l,U1:()=>i,Yi:()=>j,gA:()=>m,hF:()=>h,vr:()=>n,xx:()=>o,yx:()=>k});var e=c(52618),f=c(42558),g=a([e]);async function h({companyUuid:a,skip:b,take:c}){let[d,f]=await Promise.all([e.z.project.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0}}}}),e.z.project.count({where:{companyUuid:a}})]);return{projects:d,total:f}}async function i(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0,activities:!0}}}})}async function j(a,b){return!!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function k(a,b){return e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0,name:!0}})}async function l(a,b){return(await e.z.project.findMany({where:{companyUuid:a,groupUuid:b},select:{uuid:!0}})).map(a=>a.uuid)}async function m({companyUuid:a,name:b,description:c,groupUuid:d}){let g=await e.z.project.create({data:{companyUuid:a,name:b,description:c,groupUuid:d??null},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0}});return f.B.emitChange({companyUuid:a,projectUuid:g.uuid,entityType:"project",entityUuid:g.uuid,action:"created"}),g}async function n(a,b,c){let d=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return d?e.z.project.update({where:{uuid:d.uuid},data:c,select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}}):null}async function o(a,b){let c=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return!!c&&(await e.z.project.delete({where:{uuid:c.uuid}}),f.B.emitChange({companyUuid:a,projectUuid:b,entityType:"project",entityUuid:b,action:"deleted"}),!0)}async function p(a,b){let[c,d,f,g]=await Promise.all([e.z.idea.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.task.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.proposal.groupBy({by:["status"],where:{projectUuid:b,companyUuid:a},_count:!0}),e.z.document.count({where:{projectUuid:b,companyUuid:a}})]),h=new Map(c.map(a=>[a.status,a._count])),i=c.reduce((a,b)=>a+b._count,0),j=h.get("open")||0,k=new Map(d.map(a=>[a.status,a._count])),l=d.reduce((a,b)=>a+b._count,0),m=k.get("in_progress")||0,n=(k.get("open")||0)+(k.get("assigned")||0),o=k.get("to_verify")||0,p=(k.get("done")||0)+(k.get("closed")||0),q=new Map(f.map(a=>[a.status,a._count])),r=f.reduce((a,b)=>a+b._count,0),s=q.get("pending")||0;return{ideas:{total:i,open:j},tasks:{total:l,inProgress:m,todo:n,toVerify:o,done:p},proposals:{total:r,pending:s},documents:{total:g}}}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},76664:(a,b,c)=>{function d(a){let b="string"==typeof a?new Date(a):a;if(isNaN(b.getTime()))return"";let c=b.getFullYear(),d=String(b.getMonth()+1).padStart(2,"0"),e=String(b.getDate()).padStart(2,"0"),f=String(b.getHours()).padStart(2,"0"),g=String(b.getMinutes()).padStart(2,"0");return`${c}-${d}-${e} ${f}:${g}`}function e(a,b){let c="string"==typeof a?new Date(a):a;return isNaN(c.getTime())?"":c.toLocaleDateString(b,{month:"short",day:"numeric"})}c.d(b,{r:()=>d,s:()=>e})},82831:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{z7:()=>k});var e=c(10837),f=c(21968),g=c.n(f),h=c(97450),i=c(10174),j=a([h]);h=(j.then?(await j)():j)[0];let n=/@\[([^\]]+)\]\((user|agent):([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:\?([^)]*))?\)/gi,o="chorus-mention";function k({children:a,renderMention:b}){if(!a||"string"!=typeof a)return null;if(!new RegExp(n.source,n.flags.replace("g","")).test(a))return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{children:a})});if(b)return(0,e.jsx)(l,{renderMention:b,children:a});let{processed:c,mentions:d}=function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j,runtimeCwd:k}=(0,i.vE)(f),l={displayName:c,type:d,uuid:e};return(null!==h||null!==j)&&(l.pinnedHost=h,l.pinnedCwd=j,k&&(l.runtimeCwd=!0)),b.push(l),`\u200B\u200BMENTION_${g}\u200B\u200B`}),mentions:b}}(a);return(0,e.jsx)(m,{mentions:d,children:(0,e.jsx)(h.MarkdownContent,{children:c})})}function l({children:a,renderMention:b}){let{processed:c,mentions:d}=g().useMemo(()=>(function(a){let b=[],c=new RegExp(n.source,n.flags);return{processed:a.replace(c,(a,c,d,e,f)=>{let g=b.length,{pinnedHost:h,pinnedCwd:j,runtimeCwd:k}=(0,i.vE)(f),l={type:d.toLowerCase(),uuid:e.toLowerCase(),displayName:c};(null!==h||null!==j)&&(l.pinnedHost=h,l.pinnedCwd=j,k&&(l.runtimeCwd=!0)),b.push(l);let m=`@${c}`.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return`<${o} idx="${g}">${m}</${o}>`}),mentions:b}})(a),[a]),f=g().useMemo(()=>({[o]:({idx:a})=>{let c=void 0===a?NaN:parseInt(a,10),f=Number.isInteger(c)?d[c]:void 0;return f?(0,e.jsx)(e.Fragment,{children:b({...f,index:c})}):null}}),[d,b]);return(0,e.jsx)("div",{className:"overflow-hidden [&_pre]:overflow-x-auto",children:(0,e.jsx)(h.MarkdownContent,{components:f,allowedTags:{[o]:["idx"]},literalTagContent:[o],children:c})})}function m({children:a,mentions:b}){let c=g().useRef(null);return(0,e.jsx)("div",{ref:c,className:"overflow-hidden [&_pre]:overflow-x-auto",children:a})}d()}catch(a){d(a)}})},90061:(a,b,c)=>{c.d(b,{fv:()=>p,xQ:()=>q});var d=c(21968),e=c(76172);let f=new Map,g=new Map,h=new Map,i=new Set,j=0;function k(a,b,c,d){return c?d?`${a}:${b}:${c}:${d}`:`${a}:${b}:${c}`:`${a}:${b}`}function l(){j++,i.forEach(a=>a())}function m(a){let b=a.subEntityType,c=a.subEntityUuid,d=k(a.entityType,a.entityUuid,b,c),e=function(a,b,c,d,e){let f=k(a,b,d,e);return`${f}:${c}`}(a.entityType,a.entityUuid,a.agentUuid,b,c),i=g.get(e);if(i&&Date.now()-i<3e3)return;g.set(e,Date.now());let j={agentUuid:a.agentUuid,agentName:a.agentName,action:a.action,timestamp:Date.now()},m=(f.get(d)??[]).filter(b=>b.agentUuid!==a.agentUuid);m.push(j),f.set(d,m);let n=h.get(e);n&&clearTimeout(n);let o=setTimeout(()=>{let b=f.get(d);if(b){let c=b.filter(b=>b.agentUuid!==a.agentUuid);0===c.length?f.delete(d):f.set(d,c)}g.delete(e),h.delete(e),l()},3e3);h.set(e,o),l()}function n(){return j}function o(a){return i.add(a),()=>{i.delete(a)}}function p(a){m({type:"presence",companyUuid:"",projectUuid:"",...a,timestamp:Date.now()})}function q(){return(0,d.useSyncExternalStore)(o,n,n),(0,e.S2)(m),{getPresence:(a,b,c,d)=>{if(c)return f.get(k(a,b,c,d))??[];let e=`${a}:${b}`,g=new Map;for(let[a,b]of f)if(a===e||a.startsWith(e+":"))for(let a of b){let b=g.get(a.agentUuid);(!b||a.timestamp>b.timestamp)&&g.set(a.agentUuid,a)}return[...g.values()]}}}},95190:(a,b,c)=>{c.d(b,{s:()=>e});var d=c(42377);let e=(0,d.createServerReference)("703f89d250cae0656b09c364a0fb4125eb6d7746a7",d.callServer,void 0,d.findSourceMapURL,"createCommentAction")},98581:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Jg:()=>n,dv:()=>l,sZ:()=>m});var e=c(2613);c(50785);var f=c(9259),g=c(466),h=c(67738),i=c(97307),j=c(12217),k=a([f,g,h]);[f,g,h]=k.then?(await k)():k;let o=["idea","proposal","task","document"];async function l(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!o.includes(a))return{success:!1,error:`Invalid target type: ${a}`};try{let e=await (0,g.fg)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,cursor:c?.cursor??null,limit:c?.limit??10}),f=await (0,g.Yt)(e.comments);return{success:!0,comments:f,total:e.total,nextCursor:e.nextCursor??null,hasMore:e.hasMore??!1}}catch(b){return i.default.error({err:b,targetType:a},"Failed to get comments"),{success:!1,error:"Failed to load comments"}}}async function m(a,b,c){let d=await (0,f.d)();if(!d)return{success:!1,error:"Unauthorized"};if(!o.includes(a))return{success:!1,error:`Invalid target type: ${a}`};if(!c.trim())return{success:!1,error:"Comment content is required"};try{let e=await (0,g.eT)({companyUuid:d.companyUuid,targetType:a,targetUuid:b,content:c.trim(),authorType:d.type,authorUuid:d.actorUuid}),f=await (0,g.Hu)(a,b,d.companyUuid);f&&await (0,h.createActivity)({companyUuid:d.companyUuid,projectUuid:f,targetType:a,targetUuid:b,actorType:d.type,actorUuid:d.actorUuid,action:"comment_added"});let[i]=await (0,g.Yt)([e]);return{success:!0,comment:i}}catch(b){return i.default.error({err:b,targetType:a},"Failed to create comment"),{success:!1,error:"Failed to create comment"}}}async function n(a){let b=await (0,f.d)();if(!b)return{success:!1,error:"Unauthorized"};try{return await (0,g.Tu)({companyUuid:b.companyUuid,commentUuid:a,actingUserUuid:b.actorUuid}),{success:!0}}catch(b){return i.default.error({err:b,commentUuid:a},"Failed to delete comment"),{success:!1,error:"Failed to delete comment"}}}(0,j.D)([l,m,n]),(0,e.A)(l,"7035542b5e5ffdfc0c2de346ac891a63cd941902b3",null),(0,e.A)(m,"703f89d250cae0656b09c364a0fb4125eb6d7746a7",null),(0,e.A)(n,"40d9e6e89c37a22967f1e0317a42682af514b7b628",null),d()}catch(a){d(a)}})}};
@@ -1 +1 @@
1
- "use strict";exports.id=2195,exports.ids=[2195],exports.modules={2852:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(10837);c(21968);var e=c(13277),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.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",a),...b})}},13277:(a,b,c)=>{c.r(b),c.d(b,{Label:()=>g,Root:()=>h});var d=c(21968),e=c(16551),f=c(10837),g=d.forwardRef((a,b)=>(0,f.jsx)(e.sG.label,{...a,ref:b,onMouseDown:b=>{b.target.closest("button, input, select, textarea")||(a.onMouseDown?.(b),!b.defaultPrevented&&b.detail>1&&b.preventDefault())}}));g.displayName="Label";var h=g},22776:(a,b,c)=>{c.d(b,{O:()=>n});var d=c(10837),e=c(21968),f=c(9222),g=c(86460),h=c(80697);let i=(0,c(56556).A)("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]]);var j=c(79543),k=c(6871),l=c(42424),m=c(59469);let n=(0,e.forwardRef)(function({projectUuid:a,agentError:b},c){let n=(0,f.c)(),[o,p]=(0,e.useState)([]),[q,r]=(0,e.useState)({}),[s,t]=(0,e.useState)(new Set),[u,v]=(0,e.useState)(!0),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)({}),C=(0,e.useCallback)(async()=>{v(!0),z(!1);try{let b=await fetch(a?`/api/projects/${encodeURIComponent(a)}/agent-cwds`:"/api/projects/agent-cwd-options"),c=await b.json();if(!b.ok||!c.success)throw Error("load failed");p(c.data.agents)}catch{z(!0)}finally{v(!1)}},[a]);(0,e.useEffect)(()=>{C()},[C]);let D=(a,b)=>{r(a),t(b)};return(0,e.useImperativeHandle)(c,()=>({validate:async()=>{let a=[];for(let b of Object.values(q))try{let c=await (0,m.q)(b);a.push(c),r(a=>({...a,[b.agentUuid]:c}))}catch(c){let a=c instanceof Error?c.message:"INTERNAL_ERROR";return B(c=>({...c,[b.agentUuid]:n(`directoryBrowser.errors.${a}`)})),x(b.agentUuid),null}return{upserts:a,clears:[...s]}}}),[s,q,n]),(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:n("projectSettings.agentCwds.title")}),(0,d.jsx)("p",{className:"mt-1 text-[12px] text-muted-foreground",children:n("projectSettings.agentCwds.description")})]}),u&&(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,d.jsx)(g.A,{className:"size-4 animate-spin"}),n("projectSettings.agentCwds.loading")]}),y&&(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3",role:"alert",children:[(0,d.jsx)("span",{className:"text-xs text-destructive",children:n("projectSettings.agentCwds.loadFailed")}),(0,d.jsxs)(l.$,{type:"button",size:"sm",variant:"outline",onClick:()=>void C(),children:[(0,d.jsx)(h.A,{className:"mr-2 size-3.5"}),n("common.retry")]})]}),!u&&!y&&0===o.length&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:n("projectSettings.agentCwds.emptyOnline")}),o.map(c=>{let e=q[c.agent.uuid],f=s.has(c.agent.uuid)?null:e?{host:e.host,cwd:e.cwd,status:"valid"}:c.preference;return(0,d.jsxs)("div",{className:"min-w-0 rounded-lg border border-border p-4",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-start justify-between gap-3",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-start gap-2.5",children:[(0,d.jsx)(k.AgentAvatar,{name:c.agent.name,size:"sm",className:"mt-0.5 rounded-md"}),(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("p",{className:"truncate text-[13px] font-semibold",children:c.agent.name}),f?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("p",{className:"mt-1 break-all font-mono text-[11px]",children:f.cwd}),(0,d.jsx)("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",children:f.host}),(0,d.jsx)("p",{className:"valid"===f.status?"mt-1 text-[11px] text-emerald-700 dark:text-emerald-400":"mt-1 text-[11px] text-destructive",children:n(`projectSettings.agentCwds.status.${f.status}`)})]}):(0,d.jsx)("p",{className:"mt-1 text-[11px] text-muted-foreground",children:n("projectSettings.agentCwds.notConfigured")})]})]}),(0,d.jsxs)("div",{className:"flex shrink-0 gap-1",children:[(0,d.jsx)(l.$,{type:"button",size:"icon",variant:"ghost",title:n(f?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),"aria-label":n(f?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),onClick:()=>x(w===c.agent.uuid?null:c.agent.uuid),children:(0,d.jsx)(i,{className:"size-4"})}),f&&(0,d.jsx)(l.$,{type:"button",size:"icon",variant:"ghost",className:"text-destructive",title:n("projectSettings.agentCwds.clear"),"aria-label":n("projectSettings.agentCwds.clear"),onClick:()=>(b=>{let c={...q};delete c[b];let d=new Set(s);a&&d.add(b),D(c,d)})(c.agent.uuid),children:(0,d.jsx)(j.A,{className:"size-4"})})]})]}),w===c.agent.uuid&&(0,d.jsxs)("div",{className:"mt-4 border-t border-border pt-4",children:[(0,d.jsx)(m.e,{agentUuid:c.agent.uuid,instances:c.onlineInstances,showConfirm:!1,onValidated:()=>void 0,onSelectionChange:a=>((a,b)=>{if(!a)return;let c=new Set(s);c.delete(b),D({...q,[b]:a},c),B(a=>{let c={...a};return delete c[b],c})})(a,c.agent.uuid)}),(A[c.agent.uuid]||b?.agentUuid===c.agent.uuid)&&(0,d.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:A[c.agent.uuid]||b?.message})]}),w!==c.agent.uuid&&b?.agentUuid===c.agent.uuid&&(0,d.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:b.message})]},c.agent.uuid)})]})})},24916:(a,b,c)=>{c.d(b,{C:()=>t});var d=c(10837),e=c(21968),f=c(68884),g=c(9222),h=c(78323),i=c(31009),j=c(9810),k=c(86460),l=c(92900),m=c(11568),n=c(42424),o=c(9994),p=c(2852),q=c(20170),r=c(42087),s=c(22776);function t({open:a,onOpenChange:b,groupUuid:c,groupName:t,onCreated:u}){let v=(0,g.c)(),w=(0,f.r)(),[x,y]=(0,e.useTransition)(),[z,A]=(0,e.useState)(""),[B,C]=(0,e.useState)(""),[D,E]=(0,e.useState)(null),[F,G]=(0,e.useState)(null),[H,I]=(0,e.useState)(!1),J=(0,e.useRef)(null),K=t||v("projectGroups.ungrouped"),L=async()=>{if(!z.trim())return;E(null),G(null);let a=await J.current?.validate();a&&y(async()=>{try{let d=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:z.trim(),description:B.trim()||void 0,groupUuid:c||void 0,agentCwds:a.upserts.map(({agentUuid:a,validationRequestUuid:b})=>({agentUuid:a,validationRequestUuid:b}))})}),e=await d.json();if(e.success)I(!0),setTimeout(()=>{A(""),C(""),b(!1),u?.(),w.refresh(),I(!1)},600);else{let a="object"==typeof e.error&&e.error?e.error.message:e.error,b="object"==typeof e.error&&e.error&&"string"==typeof e.error.details?.agentUuid?e.error.details.agentUuid:null;b?G({agentUuid:b,message:a||v("projects.createFailed")}):E(a||v("projects.createFailed"))}}catch{E(v("common.genericError"))}})};return(0,d.jsx)(m.lG,{open:a,onOpenChange:b,children:(0,d.jsxs)(m.Cf,{className:"flex max-h-[90svh] flex-col gap-0 overflow-hidden rounded-[16px] p-0 sm:max-w-[620px]",showCloseButton:!1,children:[(0,d.jsx)(m.c7,{className:"flex flex-row items-center justify-between p-[20px_24px] border-b border-[#E5E2DC] dark:border-[#2a2a2e]",children:(0,d.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,d.jsx)(m.L3,{className:"text-lg font-semibold tracking-[-0.3px] text-foreground",children:v("projectGroups.newProjectTitle")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:v("projectGroups.creatingIn",{groupName:K})})]})}),(0,d.jsx)(m.rr,{className:"sr-only",children:v("projectGroups.newProjectTitle")}),(0,d.jsxs)("div",{className:"flex min-h-0 flex-col gap-5 overflow-y-auto p-6",children:[D&&(0,d.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:D}),(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,d.jsx)(p.J,{className:"text-[13px] font-medium text-foreground",children:v("projectGroups.projectTitle")}),(0,d.jsx)(o.p,{value:z,onChange:a=>A(a.target.value),placeholder:v("projectGroups.projectTitlePlaceholder"),className:"h-10 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]",onKeyDown:a=>{!(0,r.P)(a)&&"Enter"===a.key&&z.trim()&&L()}})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,d.jsx)(p.J,{className:"text-[13px] font-medium text-foreground",children:v("common.description")}),(0,d.jsx)(q.T,{value:B,onChange:a=>C(a.target.value),placeholder:v("projectGroups.projectDescriptionPlaceholder"),className:"min-h-[80px] rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]"})]}),(0,d.jsx)("div",{className:"border-t border-border pt-5",children:(0,d.jsx)(s.O,{ref:J,agentError:F})})]}),(0,d.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC] dark:border-[#2a2a2e]",children:[(0,d.jsx)(n.$,{variant:"outline",onClick:()=>b(!1),className:"rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] text-[13px]",children:v("common.cancel")}),(0,d.jsx)(n.$,{onClick:L,disabled:x||H||!z.trim(),className:"rounded-lg bg-primary hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:(0,d.jsx)(h.N,{mode:"wait",children:H?(0,d.jsx)(i.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,d.jsx)(j.A,{className:"h-3.5 w-3.5"})},"success"):x?(0,d.jsxs)(i.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,d.jsx)(k.A,{className:"h-3.5 w-3.5 animate-spin"}),v("common.creating")]},"loading"):(0,d.jsxs)(i.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5"}),v("projectGroups.createProject")]},"idle")})})]})]})})}},79543:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).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"}]])},80002:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"4032359f4ee7b7cb3ec1a623f480d4cd004e63128e":()=>e.v5,"40b097f3949a1bec55d825b65849cdd84a44348dc4":()=>e.Dv,"6043c28fe327b04d685121820bbb276b70e35e045d":()=>e.Tg});var e=c(22299),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},92900:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])}};
1
+ "use strict";exports.id=1683,exports.ids=[1683],exports.modules={2852:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(10837);c(21968);var e=c(13277),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.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",a),...b})}},13277:(a,b,c)=>{c.r(b),c.d(b,{Label:()=>g,Root:()=>h});var d=c(21968),e=c(16551),f=c(10837),g=d.forwardRef((a,b)=>(0,f.jsx)(e.sG.label,{...a,ref:b,onMouseDown:b=>{b.target.closest("button, input, select, textarea")||(a.onMouseDown?.(b),!b.defaultPrevented&&b.detail>1&&b.preventDefault())}}));g.displayName="Label";var h=g},22776:(a,b,c)=>{c.d(b,{O:()=>n});var d=c(10837),e=c(21968),f=c(9222),g=c(86460),h=c(80697);let i=(0,c(56556).A)("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]]);var j=c(79543),k=c(6871),l=c(42424),m=c(59469);let n=(0,e.forwardRef)(function({projectUuid:a,agentError:b},c){let n=(0,f.c)(),[o,p]=(0,e.useState)([]),[q,r]=(0,e.useState)({}),[s,t]=(0,e.useState)(new Set),[u,v]=(0,e.useState)(!0),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)({}),C=(0,e.useCallback)(async()=>{v(!0),z(!1);try{let b=await fetch(a?`/api/projects/${encodeURIComponent(a)}/agent-cwds`:"/api/projects/agent-cwd-options"),c=await b.json();if(!b.ok||!c.success)throw Error("load failed");p(c.data.agents)}catch{z(!0)}finally{v(!1)}},[a]);(0,e.useEffect)(()=>{C()},[C]);let D=(a,b)=>{r(a),t(b)};return(0,e.useImperativeHandle)(c,()=>({validate:async()=>{let a=[];for(let b of Object.values(q))try{let c=await (0,m.q)(b);a.push(c),r(a=>({...a,[b.agentUuid]:c}))}catch(c){let a=c instanceof Error?c.message:"INTERNAL_ERROR";return B(c=>({...c,[b.agentUuid]:n(`directoryBrowser.errors.${a}`)})),x(b.agentUuid),null}return{upserts:a,clears:[...s]}}}),[s,q,n]),(0,d.jsxs)("div",{className:"flex min-w-0 flex-col gap-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"text-[14px] font-semibold text-foreground",children:n("projectSettings.agentCwds.title")}),(0,d.jsx)("p",{className:"mt-1 text-[12px] text-muted-foreground",children:n("projectSettings.agentCwds.description")})]}),u&&(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[(0,d.jsx)(g.A,{className:"size-4 animate-spin"}),n("projectSettings.agentCwds.loading")]}),y&&(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3",role:"alert",children:[(0,d.jsx)("span",{className:"text-xs text-destructive",children:n("projectSettings.agentCwds.loadFailed")}),(0,d.jsxs)(l.$,{type:"button",size:"sm",variant:"outline",onClick:()=>void C(),children:[(0,d.jsx)(h.A,{className:"mr-2 size-3.5"}),n("common.retry")]})]}),!u&&!y&&0===o.length&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:n("projectSettings.agentCwds.emptyOnline")}),o.map(c=>{let e=q[c.agent.uuid],f=s.has(c.agent.uuid)?null:e?{host:e.host,cwd:e.cwd,status:"valid"}:c.preference;return(0,d.jsxs)("div",{className:"min-w-0 rounded-lg border border-border p-4",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-start justify-between gap-3",children:[(0,d.jsxs)("div",{className:"flex min-w-0 items-start gap-2.5",children:[(0,d.jsx)(k.AgentAvatar,{name:c.agent.name,size:"sm",className:"mt-0.5 rounded-md"}),(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("p",{className:"truncate text-[13px] font-semibold",children:c.agent.name}),f?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("p",{className:"mt-1 break-all font-mono text-[11px]",children:f.cwd}),(0,d.jsx)("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",children:f.host}),(0,d.jsx)("p",{className:"valid"===f.status?"mt-1 text-[11px] text-emerald-700 dark:text-emerald-400":"mt-1 text-[11px] text-destructive",children:n(`projectSettings.agentCwds.status.${f.status}`)})]}):(0,d.jsx)("p",{className:"mt-1 text-[11px] text-muted-foreground",children:n("projectSettings.agentCwds.notConfigured")})]})]}),(0,d.jsxs)("div",{className:"flex shrink-0 gap-1",children:[(0,d.jsx)(l.$,{type:"button",size:"icon",variant:"ghost",title:n(f?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),"aria-label":n(f?"projectSettings.agentCwds.replace":"projectSettings.agentCwds.configure"),onClick:()=>x(w===c.agent.uuid?null:c.agent.uuid),children:(0,d.jsx)(i,{className:"size-4"})}),f&&(0,d.jsx)(l.$,{type:"button",size:"icon",variant:"ghost",className:"text-destructive",title:n("projectSettings.agentCwds.clear"),"aria-label":n("projectSettings.agentCwds.clear"),onClick:()=>(b=>{let c={...q};delete c[b];let d=new Set(s);a&&d.add(b),D(c,d)})(c.agent.uuid),children:(0,d.jsx)(j.A,{className:"size-4"})})]})]}),w===c.agent.uuid&&(0,d.jsxs)("div",{className:"mt-4 border-t border-border pt-4",children:[(0,d.jsx)(m.e,{agentUuid:c.agent.uuid,instances:c.onlineInstances,showConfirm:!1,onValidated:()=>void 0,onSelectionChange:a=>((a,b)=>{if(!a)return;let c=new Set(s);c.delete(b),D({...q,[b]:a},c),B(a=>{let c={...a};return delete c[b],c})})(a,c.agent.uuid)}),(A[c.agent.uuid]||b?.agentUuid===c.agent.uuid)&&(0,d.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:A[c.agent.uuid]||b?.message})]}),w!==c.agent.uuid&&b?.agentUuid===c.agent.uuid&&(0,d.jsx)("p",{className:"mt-2 text-xs text-destructive",role:"alert",children:b.message})]},c.agent.uuid)})]})})},24916:(a,b,c)=>{c.d(b,{C:()=>t});var d=c(10837),e=c(21968),f=c(68884),g=c(9222),h=c(78323),i=c(31009),j=c(9810),k=c(86460),l=c(92900),m=c(11568),n=c(42424),o=c(9994),p=c(2852),q=c(20170),r=c(42087),s=c(22776);function t({open:a,onOpenChange:b,groupUuid:c,groupName:t,onCreated:u}){let v=(0,g.c)(),w=(0,f.r)(),[x,y]=(0,e.useTransition)(),[z,A]=(0,e.useState)(""),[B,C]=(0,e.useState)(""),[D,E]=(0,e.useState)(null),[F,G]=(0,e.useState)(null),[H,I]=(0,e.useState)(!1),J=(0,e.useRef)(null),K=t||v("projectGroups.ungrouped"),L=async()=>{if(!z.trim())return;E(null),G(null);let a=await J.current?.validate();a&&y(async()=>{try{let d=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:z.trim(),description:B.trim()||void 0,groupUuid:c||void 0,agentCwds:a.upserts.map(({agentUuid:a,validationRequestUuid:b})=>({agentUuid:a,validationRequestUuid:b}))})}),e=await d.json();if(e.success)I(!0),setTimeout(()=>{A(""),C(""),b(!1),u?.(),w.refresh(),I(!1)},600);else{let a="object"==typeof e.error&&e.error?e.error.message:e.error,b="object"==typeof e.error&&e.error&&"string"==typeof e.error.details?.agentUuid?e.error.details.agentUuid:null;b?G({agentUuid:b,message:a||v("projects.createFailed")}):E(a||v("projects.createFailed"))}}catch{E(v("common.genericError"))}})};return(0,d.jsx)(m.lG,{open:a,onOpenChange:b,children:(0,d.jsxs)(m.Cf,{className:"flex max-h-[90svh] flex-col gap-0 overflow-hidden rounded-[16px] p-0 sm:max-w-[620px]",showCloseButton:!1,children:[(0,d.jsx)(m.c7,{className:"flex flex-row items-center justify-between p-[20px_24px] border-b border-[#E5E2DC] dark:border-[#2a2a2e]",children:(0,d.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,d.jsx)(m.L3,{className:"text-lg font-semibold tracking-[-0.3px] text-foreground",children:v("projectGroups.newProjectTitle")}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:v("projectGroups.creatingIn",{groupName:K})})]})}),(0,d.jsx)(m.rr,{className:"sr-only",children:v("projectGroups.newProjectTitle")}),(0,d.jsxs)("div",{className:"flex min-h-0 flex-col gap-5 overflow-y-auto p-6",children:[D&&(0,d.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:D}),(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,d.jsx)(p.J,{className:"text-[13px] font-medium text-foreground",children:v("projectGroups.projectTitle")}),(0,d.jsx)(o.p,{value:z,onChange:a=>A(a.target.value),placeholder:v("projectGroups.projectTitlePlaceholder"),className:"h-10 rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]",onKeyDown:a=>{!(0,r.P)(a)&&"Enter"===a.key&&z.trim()&&L()}})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,d.jsx)(p.J,{className:"text-[13px] font-medium text-foreground",children:v("common.description")}),(0,d.jsx)(q.T,{value:B,onChange:a=>C(a.target.value),placeholder:v("projectGroups.projectDescriptionPlaceholder"),className:"min-h-[80px] rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e]"})]}),(0,d.jsx)("div",{className:"border-t border-border pt-5",children:(0,d.jsx)(s.O,{ref:J,agentError:F})})]}),(0,d.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC] dark:border-[#2a2a2e]",children:[(0,d.jsx)(n.$,{variant:"outline",onClick:()=>b(!1),className:"rounded-lg border-[#E5E2DC] dark:border-[#2a2a2e] text-[13px]",children:v("common.cancel")}),(0,d.jsx)(n.$,{onClick:L,disabled:x||H||!z.trim(),className:"rounded-lg bg-primary hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:(0,d.jsx)(h.N,{mode:"wait",children:H?(0,d.jsx)(i.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,d.jsx)(j.A,{className:"h-3.5 w-3.5"})},"success"):x?(0,d.jsxs)(i.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,d.jsx)(k.A,{className:"h-3.5 w-3.5 animate-spin"}),v("common.creating")]},"loading"):(0,d.jsxs)(i.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,d.jsx)(l.A,{className:"h-3.5 w-3.5"}),v("projectGroups.createProject")]},"idle")})})]})]})})}},45362:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"40676875817a939d2142b6e9cf8ffc9a8883770b83":()=>e.v5,"40a3732d36ca1f76a0ce27b237b17338fa2b23e0a7":()=>e.Dv,"60d5bed621f040ce775b8408ac3f462fc6118ec19a":()=>e.Tg});var e=c(22299),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},79543:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).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"}]])},92900:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=3341,exports.ids=[3341],exports.modules={644:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},19262:(a,b,c)=>{c.d(b,{b:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60c10fa5dd6952f01142a1456982a240c12442e2c1",d.callServer,void 0,d.findSourceMapURL,"updateTaskStatusAction")},20408:(a,b,c)=>{c.d(b,{h:()=>e});var d=c(42377);let e=(0,d.createServerReference)("605cbb1f8b46835b430f18dcef39dd28632b094667",d.callServer,void 0,d.findSourceMapURL,"markCriteriaAction")},21326:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]])},22144:(a,b,c)=>{c.d(b,{w:()=>e});var d=c(42377);let e=(0,d.createServerReference)("6050adbfc3b1ea92a452c67266e845ce96ae1ab998",d.callServer,void 0,d.findSourceMapURL,"addTaskDependencyAction")},22293:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{TK:()=>l,kq:()=>m,wG:()=>k,xo:()=>j});var e=c(2613);c(50785);var f=c(9259),g=c(50530),h=c(12217),i=a([f,g]);async function j(a){let b=await (0,f.d)();if(!b)return{dependsOn:[],dependedBy:[]};try{return await g.vQ(b.companyUuid,a)}catch{return{dependsOn:[],dependedBy:[]}}}async function k(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};try{return await g.QL(c.companyUuid,a,b),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Unknown error"}}}async function l(a,b){let c=await (0,f.d)();if(!c)return{success:!1,error:"Unauthorized"};try{return await g.j9(c.companyUuid,a,b),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Unknown error"}}}async function m(a){let b=await (0,f.d)();if(!b)return{tasks:[]};try{return{tasks:(await g.Vk({companyUuid:b.companyUuid,projectUuid:a,skip:0,take:1e3})).tasks.map(a=>({uuid:a.uuid,title:a.title,status:a.status}))}}catch{return{tasks:[]}}}[f,g]=i.then?(await i)():i,(0,h.D)([j,k,l,m]),(0,e.A)(j,"406f33f3fc3f5f9b3e1020fb30380ce413600fb5d9",null),(0,e.A)(k,"6050adbfc3b1ea92a452c67266e845ce96ae1ab998",null),(0,e.A)(l,"60cd5b9ffd2f0f3642b5cf5eac23ce0a11576690cf",null),(0,e.A)(m,"4054d374ec70669e4bed7f8c9eeb518a9530a49394",null),d()}catch(a){d(a)}})},26621:(a,b,c)=>{c.d(b,{k:()=>e});var d=c(42377);let e=(0,d.createServerReference)("4054d374ec70669e4bed7f8c9eeb518a9530a49394",d.callServer,void 0,d.findSourceMapURL,"getProjectTasksForDependencyAction")},30726:(a,b,c)=>{c.d(b,{T:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60cd5b9ffd2f0f3642b5cf5eac23ce0a11576690cf",d.callServer,void 0,d.findSourceMapURL,"removeTaskDependencyAction")},39172:(a,b,c)=>{c.d(b,{x:()=>e});var d=c(42377);let e=(0,d.createServerReference)("406f33f3fc3f5f9b3e1020fb30380ce413600fb5d9",d.callServer,void 0,d.findSourceMapURL,"getTaskDependenciesAction")},43818:(a,b,c)=>{c.d(b,{N:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60a5999aa056f2e385dff057326f6c88278bdebd49",d.callServer,void 0,d.findSourceMapURL,"resetCriterionAction")},44673:(a,b,c)=>{c.d(b,{T:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60d99d7eb55aed8325d1718c6bf8d816206c64ad9c",d.callServer,void 0,d.findSourceMapURL,"deleteTaskAction")},54941:(a,b,c)=>{c.d(b,{J:()=>e});var d=c(42377);let e=(0,d.createServerReference)("408b1686f71f1b40fc1c35a14939994964029e630a",d.callServer,void 0,d.findSourceMapURL,"getTaskSessionsAction")},59179:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(56556).A)("timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]])},60265:(a,b,c)=>{c.d(b,{_u:()=>x,c_:()=>r,nF:()=>w,qK:()=>u});var d=c(10837),e=c(21968),f=c(47797),g=c(92460);c(63410);var h=c(24346),i=c.n(h),j=c(9222),k=c(49599),l=c(74798);let m={open:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",assigned:"bg-[#E3F2FD] dark:bg-[#13253a] text-[#1976D2] dark:text-[#5AA9F0]",in_progress:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#5A9E6F] dark:text-[#6FD19A]",to_verify:"bg-[#F3E5F5] dark:bg-[#281630] text-[#7B1FA2] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] dark:bg-[#12292a] text-[#00796B] dark:text-[#4FD1C0]",closed:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-muted-foreground"},n={open:"#E65100",assigned:"#1976D2",in_progress:"#5A9E6F",to_verify:"#7B1FA2",done:"#00796B",closed:"#9A9A9A"},o={low:"priority.low",medium:"priority.medium",high:"priority.high",critical:"priority.critical"},p={open:"status.open",assigned:"status.assigned",in_progress:"status.inProgress",to_verify:"status.toVerify",done:"status.done",closed:"status.closed"},q={low:"bg-[#9A9A9A]",medium:"bg-[#E65100]",high:"bg-[#D32F2F]",critical:"bg-[#B71C1C]"},r={taskNode:function({data:a}){let b=(0,j.c)();return(0,d.jsxs)("div",{className:"rounded-lg border-2 border-[#E5E2DC] dark:border-[#2a2a2e] bg-card px-4 py-3 shadow-sm min-w-[200px] max-w-[260px] cursor-pointer hover:border-primary transition-colors",children:[(0,d.jsx)(f.h7,{type:"target",position:g.yX.Top,className:"!bg-primary !w-2 !h-2"}),(0,d.jsxs)("div",{className:"flex items-center gap-2 mb-1.5",children:[(0,d.jsx)(k.E,{className:`text-[10px] ${m[a.status]||""}`,children:b(p[a.status]||a.status)}),(0,d.jsxs)("div",{className:"flex items-center gap-1",children:[(0,d.jsx)("div",{className:`h-1.5 w-1.5 rounded-full ${q[a.priority]||""}`}),(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground",children:b(o[a.priority]||a.priority)})]})]}),(0,d.jsx)("p",{className:"text-xs font-medium text-foreground leading-snug line-clamp-2",children:a.title}),(0,d.jsx)(f.h7,{type:"source",position:g.yX.Bottom,className:"!bg-primary !w-2 !h-2"})]})}},s={taskNode:function({data:a}){let b=n[a.status]||"#E5E0D8";return(0,d.jsxs)("div",{className:"rounded-md border-[1.5px] bg-card px-2.5 py-1.5 shadow-sm",style:{borderColor:b,width:t},children:[(0,d.jsx)(f.h7,{type:"target",position:g.yX.Top,className:"!bg-primary !w-1.5 !h-1.5"}),(0,d.jsx)("p",{className:"text-[10px] font-medium text-foreground leading-tight line-clamp-2",children:a.title}),(0,d.jsx)(f.h7,{type:"source",position:g.yX.Bottom,className:"!bg-primary !w-1.5 !h-1.5"})]})}},t=150,u={animated:!0,style:{stroke:"#C67A52",strokeWidth:2},markerEnd:{type:"arrowclosed",color:"#C67A52"}},v={animated:!0,style:{stroke:"#C67A52",strokeWidth:1.5},markerEnd:{type:"arrowclosed",color:"#C67A52"}};function w(a,b,c){let d=c?.nodeWidth??240,e=c?.nodeHeight??80,f=new(i()).graphlib.Graph;return f.setDefaultEdgeLabel(()=>({})),f.setGraph({rankdir:"TB",nodesep:c?.nodesep??50,ranksep:c?.ranksep??80}),a.forEach(a=>{f.setNode(a.id,{width:d,height:e})}),b.forEach(a=>{f.setEdge(a.source,a.target)}),i().layout(f),{nodes:a.map(a=>{let b=f.node(a.id);return{...a,position:{x:b.x-d/2,y:b.y-e/2}}}),edges:b}}function x({tasks:a,edges:b,readonly:c=!1,compact:g=!1,height:h,onNodeClick:i,className:k}){let m=(0,j.c)(),n=(0,l.W)(),{layoutedNodes:o,layoutedEdges:p}=(0,e.useMemo)(()=>{let c=a.map(a=>({id:a.uuid,type:"taskNode",position:{x:0,y:0},data:{title:a.title,status:a.status,priority:a.priority,proposalUuid:a.proposalUuid??null}})),d=w(c,b.map((a,b)=>({id:`e-${b}`,source:a.to,target:a.from,...g?v:u})),g?{nodeWidth:t,nodeHeight:50,nodesep:20,ranksep:40}:void 0);return{layoutedNodes:d.nodes,layoutedEdges:d.edges}},[a,b,g]);return 0===a.length?(0,d.jsx)("div",{className:`flex items-center justify-center text-sm text-muted-foreground ${k||""}`,style:h?{height:h}:void 0,children:m("tasks.noTasksToDisplay")}):(0,d.jsx)("div",{className:`rounded-[10px] border border-border bg-[#F7F6F3] dark:bg-[#1e1d1b] ${k||""}`,style:h?{height:h}:void 0,children:(0,d.jsxs)(f.Gc,{colorMode:n?"dark":"light",nodes:o,edges:p,nodeTypes:g?s:r,onNodeClick:i?(a,b)=>i(b.id):void 0,fitView:!0,fitViewOptions:{padding:.2},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},nodesDraggable:!c,nodesConnectable:!c,elementsSelectable:!c,panOnDrag:!0,zoomOnScroll:!0,children:[(0,d.jsx)(f.VS,{color:n?"#40392f":"#E5E0D8",gap:20}),!c&&(0,d.jsx)(f.H2,{className:"[&>button]:border-border [&>button]:bg-card [&>button]:text-foreground [&>button:hover]:bg-background"})]})})}},64029:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{f:()=>l});var e=c(2613);c(50785);var f=c(9259),g=c(67738),h=c(50530),i=c(97307),j=c(12217),k=a([f,g,h]);async function l(a){let b=await (0,f.d)();if(!b)return{activities:[],total:0};try{let c=await (0,h.K4)(b.companyUuid,a);if(!c)return{activities:[],total:0};return await (0,g.listActivitiesWithActorNames)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"task",targetUuid:a,skip:0,take:50})}catch(a){return i.default.error({err:a},"Failed to get task activities"),{activities:[],total:0}}}[f,g,h]=k.then?(await k)():k,(0,j.D)([l]),(0,e.A)(l,"40cb584a215fe8191373087e4debf49b9c7b9dbe87",null),d()}catch(a){d(a)}})},71353:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{IY:()=>n,Nq:()=>m,hD:()=>l});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(50530),i=c(97307),j=c(12217),k=a([g,h]);async function l(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};if("user"!==c.type&&"super_admin"!==c.type)return{success:!1,error:"Only users can verify acceptance criteria"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};let e=await (0,h._T)(c.companyUuid,a,b,{type:c.type,actorUuid:c.actorUuid});return(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks`),{success:!0,data:e}}catch(a){return i.default.error({err:a},"Failed to mark acceptance criteria"),{success:!1,error:"Failed to mark acceptance criteria"}}}async function m(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};if("user"!==c.type&&"super_admin"!==c.type)return{success:!1,error:"Only users can reset acceptance criteria"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};return await (0,h.Qi)(c.companyUuid,a,b),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks`),{success:!0}}catch(a){return i.default.error({err:a},"Failed to reset acceptance criterion"),{success:!1,error:"Failed to reset acceptance criterion"}}}async function n(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};let e=await (0,h.cn)(c.companyUuid,a,b,{type:c.type,actorUuid:c.actorUuid});return(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks`),{success:!0,data:e}}catch(a){return i.default.error({err:a},"Failed to self-check acceptance criteria"),{success:!1,error:"Failed to self-check acceptance criteria"}}}[g,h]=k.then?(await k)():k,(0,j.D)([l,m,n]),(0,e.A)(l,"605cbb1f8b46835b430f18dcef39dd28632b094667",null),(0,e.A)(m,"60a5999aa056f2e385dff057326f6c88278bdebd49",null),(0,e.A)(n,"608241db08f95d08432246a17cf4cf1ecf913e3cf1",null),d()}catch(a){d(a)}})},72189:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{F:()=>k});var e=c(2613);c(50785);var f=c(9259),g=c(97879),h=c(97307),i=c(12217),j=a([f,g]);async function k(a){let b=await (0,f.d)();if(!b)return null;try{let c=await (0,g.PK)(b.companyUuid,a);if(!c)return null;return{uuid:c.uuid,title:c.title}}catch(a){return h.default.error({err:a},"Failed to get task source"),null}}[f,g]=j.then?(await j)():j,(0,i.D)([k]),(0,e.A)(k,"4021c326c28395d19a7652812a33eb6c296a959d3d",null),d()}catch(a){d(a)}})},73393:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A0:()=>w,G3:()=>A,M0:()=>r,TV:()=>y,Yw:()=>x,bd:()=>t,hR:()=>u,iY:()=>p,p2:()=>s,qb:()=>q,vq:()=>z,y9:()=>v});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(50530),i=c(28774),j=c(61076),k=c(25383),l=c(67738),m=c(97307),n=c(12217),o=a([g,h,i,j,k,l]);async function p(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.K4)(b.companyUuid,a);if(!c)return{success:!1,error:"Task not found"};if("open"!==c.status&&"assigned"!==c.status)return{success:!1,error:"Task is not available for claiming"};return await (0,h.QK)({taskUuid:a,companyUuid:b.companyUuid,assigneeType:b.type,assigneeUuid:b.actorUuid,assignedByType:"user",assignedByUuid:b.actorUuid}),await (0,l.createActivity)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"task",targetUuid:a,actorType:b.type,actorUuid:b.actorUuid,action:"assigned",value:{assigneeType:b.type,assigneeUuid:b.actorUuid}}),(0,f.revalidatePath)(`/projects/${c.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to claim task"),{success:!1,error:"Failed to claim task"}}}async function q(a,b,c){let d=await (0,g.d)();if(!d||"user"!==d.type)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.K4)(d.companyUuid,a);if(!e)return{success:!1,error:"Task not found"};if("open"!==e.status&&"assigned"!==e.status)return{success:!1,error:"Task is not available for claiming"};let g=await (0,k.gt)({companyUuid:d.companyUuid,actorUserUuid:d.actorUuid,projectUuid:e.projectUuid,agentUuid:b}),i="project_fixed"===g.source?g.agentInstanceUuid:c;return await (0,h.QK)({taskUuid:a,companyUuid:d.companyUuid,assigneeType:"agent",assigneeUuid:b,assignedByType:"user",assignedByUuid:d.actorUuid,instanceUuid:i??void 0,cwdSource:"project_fixed"===g.source?g.source:null,cwdHost:"project_fixed"===g.source?g.host:null,runtimeCwd:"project_fixed"===g.source?g.cwd:null}),await (0,l.createActivity)({companyUuid:d.companyUuid,projectUuid:e.projectUuid,targetType:"task",targetUuid:a,actorType:d.type,actorUuid:d.actorUuid,action:"assigned",value:{assigneeType:"agent",assigneeUuid:b,...i?{instanceUuid:i}:{},..."project_fixed"===g.source?{resolvedCwdSource:g.source,resolvedCwdHost:g.host,resolvedRuntimeCwd:g.cwd}:{}}}),(0,f.revalidatePath)(`/projects/${e.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${e.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to claim task to agent"),{success:!1,error:"Failed to claim task"}}}async function r(a,b,c){let d=await (0,g.d)();if(!d||"user"!==d.type)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.K4)(d.companyUuid,a);if(!e)return{success:!1,error:"Task not found"};if("open"!==e.status&&"assigned"!==e.status)return{success:!1,error:"Task is not available for claiming"};return await (0,h.QK)({taskUuid:a,companyUuid:d.companyUuid,assigneeType:"agent",assigneeUuid:b,assignedByType:"user",assignedByUuid:d.actorUuid,instanceUuid:c}),(0,f.revalidatePath)(`/projects/${e.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${e.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to reassign task instance (no wake)"),{success:!1,error:"Failed to reassign task"}}}async function s(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.K4)(b.companyUuid,a);if(!c)return{success:!1,error:"Task not found"};if("assigned"!==c.status&&"in_progress"!==c.status)return{success:!1,error:"Task is not in assigned status"};return await (0,h.Fp)(a),await (0,l.createActivity)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"task",targetUuid:a,actorType:b.type,actorUuid:b.actorUuid,action:"released"}),(0,f.revalidatePath)(`/projects/${c.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to release task"),{success:!1,error:"Failed to release task"}}}async function t(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};return await (0,h.lC)(a,{status:b}),await (0,l.createActivity)({companyUuid:c.companyUuid,projectUuid:d.projectUuid,targetType:"task",targetUuid:a,actorType:c.type,actorUuid:c.actorUuid,action:"status_changed",value:{status:b}}),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to update task status"),{success:!1,error:"Failed to update task status"}}}async function u(a){let b=await (0,g.d)();if(!b||"user"!==b.type)return{success:!1,error:"Only humans can verify tasks"};try{let c=await (0,h.K4)(b.companyUuid,a);if(!c)return{success:!1,error:"Task not found"};if("to_verify"!==c.status)return{success:!1,error:"Task is not in to_verify status"};let d=await (0,h.Ew)(a);if(!d.allowed)return{success:!1,error:d.reason||"Not all required acceptance criteria are passed"};return await (0,h.lC)(a,{status:"done"}),(0,f.revalidatePath)(`/projects/${c.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to verify task"),{success:!1,error:"Failed to verify task"}}}async function v(a,b){let c=await (0,g.d)();if(!c||"user"!==c.type)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};if("open"!==d.status&&"assigned"!==d.status)return{success:!1,error:"Task is not available for assigning"};return await (0,h.QK)({taskUuid:a,companyUuid:c.companyUuid,assigneeType:"user",assigneeUuid:b,assignedByType:"user",assignedByUuid:c.actorUuid}),await (0,l.createActivity)({companyUuid:c.companyUuid,projectUuid:d.projectUuid,targetType:"task",targetUuid:a,actorType:c.type,actorUuid:c.actorUuid,action:"assigned",value:{assigneeType:"user",assigneeUuid:b}}),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to assign task to user"),{success:!1,error:"Failed to assign task"}}}async function w(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.UT)({companyUuid:b.companyUuid,projectUuid:a.projectUuid,title:a.title,description:a.description||null,priority:a.priority||"medium",storyPoints:a.storyPoints,acceptanceCriteria:a.acceptanceCriteria,createdByUuid:b.actorUuid});return await (0,l.createActivity)({companyUuid:b.companyUuid,projectUuid:a.projectUuid,targetType:"task",targetUuid:c.uuid,actorType:b.type,actorUuid:b.actorUuid,action:"task_created"}),(0,f.revalidatePath)(`/projects/${a.projectUuid}/tasks`),{success:!0,taskUuid:c.uuid}}catch(a){return m.default.error({err:a},"Failed to create task"),{success:!1,error:"Failed to create task"}}}async function x(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{if(!await (0,h.K4)(b.companyUuid,a.taskUuid))return{success:!1,error:"Task not found"};return await (0,h.lC)(a.taskUuid,{title:a.title,description:a.description,priority:a.priority,storyPoints:a.storyPoints,acceptanceCriteria:a.acceptanceCriteria}),void 0!==a.acceptanceCriteriaItems&&await (0,h.Pf)(b.companyUuid,a.taskUuid,a.acceptanceCriteriaItems),(0,f.revalidatePath)(`/projects/${a.projectUuid}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to update task"),{success:!1,error:a instanceof Error?a.message:"Failed to update task"}}}async function y(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{if(!await (0,h.K4)(c.companyUuid,a))return{success:!1,error:"Task not found"};return await (0,h.vq)(a),(0,f.revalidatePath)(`/projects/${b}/tasks`),{success:!0}}catch(a){return m.default.error({err:a},"Failed to delete task"),{success:!1,error:"Failed to delete task"}}}async function z(){let a=await (0,g.d)();if(!a||"user"!==a.type)return{agents:[],users:[]};try{let[b,c]=await Promise.all([(0,i.ic)(a.companyUuid,"task:write",a.actorUuid),(0,i.A8)(a.companyUuid)]);return{agents:b,users:c,currentUserUuid:a.actorUuid}}catch(a){return m.default.error({err:a},"Failed to get assignable agents"),{agents:[],users:[]}}}async function A(a,b){let c=await (0,g.d)();if(!c||"user"!==c.type)return{instances:[],resolvedTarget:null};try{let[d,e]=await Promise.all([(0,j._R)(c.companyUuid,a),b?(0,k.gt)({companyUuid:c.companyUuid,actorUserUuid:c.actorUuid,projectUuid:b,agentUuid:a}):null]);return{instances:d.map(a=>({connectionUuid:a.uuid,agentInstanceUuid:a.agentInstanceUuid,host:a.host,cwd:a.cwd,effectiveStatus:a.effectiveStatus})),resolvedTarget:e}}catch(a){return m.default.error({err:a},"Failed to get agent instances"),{instances:[],resolvedTarget:null}}}[g,h,i,j,k,l]=o.then?(await o)():o,(0,n.D)([p,q,r,s,t,u,v,w,x,y,z,A]),(0,e.A)(p,"40463c7f77974106477d76a89d1ee4486f55963dd6",null),(0,e.A)(q,"70746d9ea5222fc60f865ea96b1475294f4a19b25d",null),(0,e.A)(r,"70c38ed2edb85c0bc312b8d0f069f9d6111b715929",null),(0,e.A)(s,"40ab97054dc3d0d1c5c895af15bf67eeba700550c0",null),(0,e.A)(t,"60c10fa5dd6952f01142a1456982a240c12442e2c1",null),(0,e.A)(u,"40698ab9e0929a33f6f4bcf33a782f4c1ea3e77f64",null),(0,e.A)(v,"60a79c9295940ff806d19c97c3e7a3a0f600011689",null),(0,e.A)(w,"40330f0f36ddb89b0ec22ff9886619d2c69df56633",null),(0,e.A)(x,"40cb4d98ec1029253735f581a325c0be6f9cebefa6",null),(0,e.A)(y,"60d99d7eb55aed8325d1718c6bf8d816206c64ad9c",null),(0,e.A)(z,"00f279664a92b49d999bca87045c22ff98ded4cdc4",null),(0,e.A)(A,"601125b193b401eba97d33398b6738a97a90540595",null),d()}catch(a){d(a)}})},74196:(a,b,c)=>{c.d(b,{f:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40cb584a215fe8191373087e4debf49b9c7b9dbe87",d.callServer,void 0,d.findSourceMapURL,"getTaskActivitiesAction")},75268:(a,b,c)=>{c.d(b,{Y:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40cb4d98ec1029253735f581a325c0be6f9cebefa6",d.callServer,void 0,d.findSourceMapURL,"updateTaskFieldsAction")},76212:(a,b,c)=>{c.d(b,{F:()=>e});var d=c(42377);let e=(0,d.createServerReference)("4021c326c28395d19a7652812a33eb6c296a959d3d",d.callServer,void 0,d.findSourceMapURL,"getTaskSourceAction")},77521:(a,b,c)=>{c.d(b,{Bj:()=>i,L8:()=>e,Wl:()=>j,_5:()=>h,eT:()=>f,fw:()=>g});var d=c(76664);let e=480;function f(a){switch(a){case"done":return"bg-[#00796B]";case"in_progress":return"bg-[#1976D2]";case"to_verify":return"bg-[#7B1FA2]";case"open":case"assigned":return"bg-[#E65100]";case"closed":return"bg-[#9A9A9A]";default:return"bg-[#D9D9D9]"}}function g(a,b){let c=new Date(a),e=new Date().getTime()-c.getTime(),f=Math.floor(e/6e4),g=Math.floor(e/36e5),h=Math.floor(e/864e5);return f<1?b("time.justNow"):f<60?b("time.minutesAgo",{minutes:f}):g<24?b("time.hoursAgo",{hours:g}):h<7?b("time.daysAgo",{days:h}):(0,d.r)(c)}let h={todo:"bg-[#FFF3E0] text-[#E65100] dark:bg-[#3a2a12] dark:text-[#F0A050]",in_progress:"bg-[#E3F2FD] text-[#1976D2] dark:bg-[#13253a] dark:text-[#5AA9F0]",human_conduct_required:"bg-[#F3E5F5] text-[#7B1FA2] dark:bg-[#281630] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] text-[#00796B] dark:bg-[#12292a] dark:text-[#4FD1C0]"},i={todo:"todo",in_progress:"inProgress",human_conduct_required:"humanConductRequired",done:"done"},j={open:"open",researching:"researching",answer_questions:"answerQuestions",planning:"planning",review_proposal:"reviewProposal",building:"building",verify_work:"verifyWork",done:"done"}},81751:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{J:()=>l,h:()=>m});var e=c(2613);c(50785);var f=c(4687),g=c(9259),h=c(30457),i=c(97307),j=c(12217),k=a([g,h]);async function l(a){let b=await (0,g.d)();b||(0,f.redirect)("/login");try{let c=await (0,h.OU)(b.companyUuid,a);return{success:!0,data:c}}catch(a){return i.default.error({err:a},"Failed to fetch task sessions"),{success:!1,error:"Failed to fetch task sessions"}}}async function m(a){let b=await (0,g.d)();b||(0,f.redirect)("/login");try{let c=await (0,h.y_)(b.companyUuid,a);return{success:!0,data:c}}catch(a){return i.default.error({err:a},"Failed to fetch batch worker counts"),{success:!1,error:"Failed to fetch batch worker counts"}}}[g,h]=k.then?(await k)():k,(0,j.D)([l,m]),(0,e.A)(l,"408b1686f71f1b40fc1c35a14939994964029e630a",null),(0,e.A)(m,"40fc6c378c65f87abfa368bd7a5cd80ad46a117d1b",null),d()}catch(a){d(a)}})},86104:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{v:()=>ae});var e=c(10837),f=c(21968),g=c(68884),h=c(9222),i=c(33407),j=c(10694),k=c(92900),l=c(35209),m=c(87461),n=c(65956),o=c(86460),p=c(67832),q=c(98893),r=c(97825),s=c(59179),t=c(55775),u=c(9810),v=c(97443),w=c(58270),x=c(644),y=c(21326),z=c(79543),A=c(49599),B=c(35198),C=c(42424),D=c(9994),E=c(20170),F=c(2852),G=c(74645),H=c(55732),I=c(6019),J=c(80251),K=c(6871),L=c(68797),M=c(7086),N=c(19262),O=c(88327),P=c(75268),Q=c(44673),R=c(20408),S=c(43818),T=c(56828),U=c(23192);c(74196),c(76212);var V=c(97450),W=c(73908),X=c(99224);c(39172),c(26621);var Y=c(22144),Z=c(30726);c(54941);var $=c(76664),_=c(31009),aa=c(45148),ab=c(77521),ac=a([L,T,V]);[L,T,V]=ac.then?(await ac)():ac;let af={open:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",assigned:"bg-[#E3F2FD] dark:bg-[#13253a] text-[#1976D2] dark:text-[#5AA9F0]",in_progress:"bg-[#E8F5E9] dark:bg-[#14281a] text-[#5A9E6F] dark:text-[#6FD19A]",to_verify:"bg-[#F3E5F5] dark:bg-[#281630] text-[#7B1FA2] dark:text-[#C98FE0]",done:"bg-[#E0F2F1] dark:bg-[#12292a] text-[#00796B] dark:text-[#4FD1C0]",closed:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-[#9A9A9A]"},ag={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},ah={low:"bg-[#F5F5F5] dark:bg-[#1e1e20] text-[#9A9A9A]",medium:"bg-[#FFF3E0] dark:bg-[#3a2a12] text-[#E65100] dark:text-[#F0A050]",high:"bg-[#FEE2E2] dark:bg-[#331619] text-[#D32F2F] dark:text-[#F08078]",critical:"bg-[#FFCDD2] dark:bg-[#3a181c] text-[#B71C1C] dark:text-[#F08078]"},ai={low:"lowPriority",medium:"mediumPriority",high:"highPriority",critical:"criticalPriority"};function ad(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,$.r)(c)}function ae({task:a,projectUuid:b,currentUserUuid:c,mode:d="overlay",onClose:ac,onCreated:ae,onDependencyChange:aj,onBack:ak}){let al=(0,h.c)(),am=(0,g.r)(),[an,ao]=(0,f.useState)(!1),[ap,aq]=(0,f.useState)(!1),[ar,as]=(0,f.useState)([]),[at,au]=(0,f.useState)(!0),[av,aw]=(0,f.useState)(null),[ax,ay]=(0,f.useState)(!1),[az,aA]=(0,f.useState)([]),[aB,aC]=(0,f.useState)([]),[aD,aE]=(0,f.useState)(!1),[aF,aG]=(0,f.useState)([]),[aH,aI]=(0,f.useState)(null),[aJ,aK]=(0,f.useState)([]),[aL,aM]=(0,f.useState)([]),aN=null===a,[aO,aP]=(0,f.useState)(aN),[aQ,aR]=(0,f.useState)(a?.title||""),[aS,aT]=(0,f.useState)(a?.description||""),[aU,aV]=(0,f.useState)(a?.priority||"medium"),[aW,aX]=(0,f.useState)(a?.storyPoints!=null?String(a.storyPoints):""),[aY,aZ]=(0,f.useState)((a?.acceptanceCriteriaItems??[]).map(a=>({description:a.description,required:a.required??!0}))),[a$,a_]=(0,f.useState)(!1),[a0,a1]=(0,f.useState)(null),[a2,a3]=(0,f.useState)(!1),a4=(0,M.RU)(a?.assignee??null,{type:"user",uuid:c}),a5=a4&&a?.status==="assigned",a6=a4&&a?.status==="in_progress",a7=a?.status==="to_verify",a8=async b=>{if(!a)return;aq(!0);let c=await (0,N.b)(a.uuid,b);aq(!1),c.success&&(ac(),am.refresh())},a9=()=>{if(aN)return void ac();aP(!1),a&&(aR(a.title),aT(a.description||""),aV(a.priority),aX(null!=a.storyPoints?String(a.storyPoints):""),aZ((a.acceptanceCriteriaItems??[]).map(a=>({description:a.description,required:a.required??!0})))),a1(null)},ba=async()=>{if(!aQ.trim())return void a1(al("tasks.titleRequired"));a_(!0),a1(null);let c=aW.trim()?parseFloat(aW):null;if(aN){let a=await (0,O.A)({projectUuid:b,title:aQ.trim(),description:aS.trim()||void 0,priority:aU,storyPoints:c,acceptanceCriteria:null});a_(!1),a.success?(aL.length>0&&a.taskUuid&&(await Promise.all(aL.map(b=>(0,Y.w)(a.taskUuid,b.uuid))),aj?.()),ae?.(),ac(),am.refresh()):a1(a.error||al("tasks.createFailed"))}else{let d=(a.acceptanceCriteriaItems??[]).map(a=>({description:a.description,required:a.required??!0})),e=aY.filter(a=>a.description.trim().length>0),f=(0,W.K)(d,e);if(f&&0===e.length){a_(!1),a1(al("acceptanceCriteria.atLeastOneRequired"));return}let g=await (0,P.Y)({taskUuid:a.uuid,projectUuid:b,title:aQ.trim(),description:aS.trim()||null,priority:aU,storyPoints:c,...f?{acceptanceCriteriaItems:e.map(a=>({description:a.description.trim(),required:a.required}))}:{}});a_(!1),g.success?(aP(!1),am.refresh()):a1(g.error||al("tasks.updateFailed"))}},bb=async()=>{if(!a)return;a3(!0);let c=await (0,Q.T)(a.uuid,b);a3(!1),c.success&&(ac(),am.refresh())},bc=async b=>{if(!a)return;aI(null);let c=await (0,Y.w)(a.uuid,b);if(c.success){let a=aF.find(a=>a.uuid===b);a&&aA(b=>[...b,a]),aj?.()}else aI(c.error||al("tasks.failedToAddDep"))},bd=async b=>{if(!a)return;aI(null);let c=await (0,Z.T)(a.uuid,b);c.success?(aA(a=>a.filter(a=>a.uuid!==b)),aj?.()):aI(c.error||al("tasks.failedToRemoveDep"))},be=async b=>{if(!a)return;aI(null);let c=await (0,Z.T)(b,a.uuid);c.success?(aC(a=>a.filter(a=>a.uuid!==b)),aj?.()):aI(c.error||al("tasks.failedToRemoveDep"))},bf=aF.filter(b=>b.uuid!==a?.uuid&&!az.some(a=>a.uuid===b.uuid)),bg=aF.filter(a=>!aL.some(b=>b.uuid===a.uuid)),bh="sidebyside"===d;return(0,e.jsxs)(e.Fragment,{children:[!bh&&(0,e.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:ac}),(0,e.jsxs)("div",{className:`fixed top-14 md:top-0 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-card shadow-xl border-l border-border ${bh?`z-40 ${an?"":"animate-in slide-in-from-right duration-300"}`:`z-50 right-0 ${an?"":"animate-in slide-in-from-right duration-300"}`}`,style:bh?{right:`${ab.L8}px`}:void 0,children:[(0,e.jsxs)("div",{className:"flex items-center justify-between border-b border-secondary px-6 py-5",children:[ak&&(0,e.jsx)(C.$,{variant:"ghost",size:"icon",className:"mr-2 h-8 w-8 shrink-0",onClick:ak,children:(0,e.jsx)(l.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,e.jsx)("div",{className:"flex-1 min-w-0",children:aO?(0,e.jsx)("h2",{className:"text-base font-semibold text-foreground",children:aN?al("tasks.createTaskTitle"):al("tasks.editTask")}):a?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("h2",{className:"text-base font-semibold text-foreground truncate",children:a.title}),(0,e.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,e.jsx)(A.E,{className:af[a.status]||"",children:al(`status.${ag[a.status]||a.status}`)}),(0,e.jsx)(A.E,{className:ah[a.priority]||"",children:al(`priority.${ai[a.priority]||a.priority}`)}),a.storyPoints&&(0,e.jsxs)("span",{className:"rounded bg-secondary px-2 py-0.5 text-xs font-medium text-muted-foreground",children:[a.storyPoints,"h"]})]})]}):null}),(0,e.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[a&&!aO&&(0,e.jsxs)(C.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-border text-foreground",onClick:()=>{a&&(aR(a.title),aT(a.description||""),aV(a.priority),aX(null!=a.storyPoints?String(a.storyPoints):""),aZ((a.acceptanceCriteriaItems??[]).map(a=>({description:a.description,required:a.required??!0}))),a1(null),aP(!0))},children:[(0,e.jsx)(m.A,{className:"h-3.5 w-3.5 text-muted-foreground"}),(0,e.jsx)("span",{className:"text-xs",children:al("common.edit")})]}),(0,e.jsx)(C.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-border",onClick:aO&&!aN?a9:ac,children:(0,e.jsx)(j.A,{className:"h-4 w-4 text-muted-foreground"})})]})]}),(0,e.jsx)(G.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,e.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:aO?(0,e.jsxs)("div",{className:"space-y-5",children:[a0&&(0,e.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:a0}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(F.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-foreground",children:al("tasks.titleLabel")}),(0,e.jsx)(D.p,{id:"edit-title",value:aQ,onChange:a=>aR(a.target.value),className:"border-border text-sm focus-visible:ring-primary",autoFocus:!0})]}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(F.J,{htmlFor:"edit-description",className:"text-[13px] font-medium text-foreground",children:al("tasks.descriptionLabel")}),(0,e.jsx)(E.T,{id:"edit-description",value:aS,onChange:a=>aT(a.target.value),rows:4,className:"border-border text-sm resize-none focus-visible:ring-primary"})]}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(F.J,{htmlFor:"edit-priority",className:"text-[13px] font-medium text-foreground",children:al("tasks.priorityLabel")}),(0,e.jsxs)(H.l6,{value:aU,onValueChange:aV,children:[(0,e.jsx)(H.bq,{className:"border-border text-sm focus:ring-primary",children:(0,e.jsx)(H.yv,{})}),(0,e.jsxs)(H.gC,{children:[(0,e.jsx)(H.eb,{value:"low",children:al("priority.low")}),(0,e.jsx)(H.eb,{value:"medium",children:al("priority.medium")}),(0,e.jsx)(H.eb,{value:"high",children:al("priority.high")})]})]})]}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(F.J,{htmlFor:"edit-story-points",className:"text-[13px] font-medium text-foreground",children:al("tasks.storyPointsLabel")}),(0,e.jsx)(D.p,{id:"edit-story-points",type:"number",min:"0",step:"0.5",value:aW,onChange:a=>aX(a.target.value),className:"border-border text-sm focus-visible:ring-primary"})]}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(F.J,{className:"text-[13px] font-medium text-foreground",children:al("acceptanceCriteria.title")}),(0,e.jsx)(W.C,{items:aY,onChange:aZ})]}),aN&&(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(F.J,{className:"text-[13px] font-medium text-foreground",children:al("tasks.dependencies")}),aL.length>0&&(0,e.jsx)("div",{className:"space-y-1.5",children:aL.map(a=>(0,e.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-background p-2.5",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-primary"}),(0,e.jsx)("span",{className:"text-xs text-foreground truncate",children:a.title}),(0,e.jsx)(A.E,{className:`shrink-0 text-[10px] ${af[a.status]||""}`,children:al(`status.${ag[a.status]||a.status}`)})]}),(0,e.jsx)(C.$,{type:"button",variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>aM(b=>b.filter(b=>b.uuid!==a.uuid)),children:(0,e.jsx)(j.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},a.uuid))}),bg.length>0&&(0,e.jsxs)(H.l6,{onValueChange:a=>{let b=aF.find(b=>b.uuid===a);b&&aM(a=>[...a,b])},children:[(0,e.jsx)(H.bq,{className:"h-8 border-border text-xs text-muted-foreground focus:ring-primary",children:(0,e.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,e.jsx)(k.A,{className:"h-3 w-3"}),(0,e.jsx)(H.yv,{placeholder:al("tasks.addDependency")})]})}),(0,e.jsx)(H.gC,{children:bg.map(a=>(0,e.jsx)(H.eb,{value:a.uuid,children:(0,e.jsx)("span",{className:"truncate",children:a.title})},a.uuid))})]},aL.length)]})]}):a?(0,e.jsxs)(_.P.div,{variants:aa.qG,initial:"initial",animate:"animate",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("common.assignee")}),(0,e.jsx)("div",{className:"mt-2 flex items-center gap-2.5 rounded-lg bg-background p-3",children:a.assignee?(0,e.jsxs)(e.Fragment,{children:[(0,M.bB)(a.assignee)?(0,e.jsx)(K.AgentAvatar,{name:a.assignee.name,size:28,className:"rounded-full"}):(0,e.jsx)(J.eu,{className:"h-7 w-7",children:(0,e.jsx)(J.q5,{className:"bg-border text-muted-foreground",children:a.assignee.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{className:"min-w-0",children:[(0,e.jsx)("div",{className:"text-sm font-medium text-foreground",children:a.assignee.name}),(0,e.jsx)("div",{className:"text-xs text-muted-foreground",children:(0,M.bB)(a.assignee)?`${al("common.agent")} • ${a.assignee.assignedAt?(0,$.r)(a.assignee.assignedAt):""}`:al("common.user")}),"agent_instance"===a.assignee.type&&a.assignee.instance&&(0,e.jsx)("div",{className:"mt-1",children:(0,e.jsx)(L.jQ,{cwd:a.assignee.instance.cwd,host:a.assignee.instance.host})})]})]}):(0,e.jsx)("span",{className:"text-sm text-[#9A9A9A]",children:al("common.unassigned")})})]}),aJ.length>0&&(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("sessions.activeWorkers")}),(0,e.jsx)("div",{className:"mt-2 space-y-1.5",children:aJ.map(a=>(0,e.jsxs)("div",{className:"flex items-center gap-2.5 rounded-lg bg-background p-2.5",children:[(0,e.jsxs)("div",{className:"relative flex-shrink-0",children:[(0,e.jsx)(K.AgentAvatar,{name:a.agentName,size:28,className:"rounded-full"}),(0,e.jsx)("span",{className:"absolute -bottom-0.5 -right-0.5 h-2 w-2 rounded-full bg-green-500 ring-2 ring-background"})]}),(0,e.jsxs)("div",{className:"min-w-0",children:[(0,e.jsx)("div",{className:"text-xs font-medium text-foreground truncate",children:a.sessionName}),(0,e.jsxs)("div",{className:"text-[10px] text-[#9A9A9A]",children:[a.agentName," \xb7 ",ad(a.checkinAt,al)]})]})]},a.sessionUuid))})]}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("common.description")}),(0,e.jsx)("div",{className:"mt-2",children:a.description?(0,e.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-foreground",children:(0,e.jsx)(V.MarkdownContent,{children:a.description})}):(0,e.jsx)("p",{className:"text-sm italic text-[#9A9A9A]",children:al("common.noDescription")})})]}),a.acceptanceCriteria&&!(a.acceptanceCriteriaItems&&a.acceptanceCriteriaItems.length>0)&&(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("tasks.acceptanceCriteria")}),(0,e.jsx)("div",{className:"mt-2",children:(0,e.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-foreground",children:(0,e.jsx)(V.MarkdownContent,{children:a.acceptanceCriteria})})})]}),av&&(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("common.source")}),(0,e.jsx)("a",{href:`/projects/${b}/proposals/${av.uuid}`,className:"mt-2 flex items-center justify-between rounded-lg bg-background p-3 hover:bg-[#F0EDE5] dark:hover:bg-[#26241f] transition-colors",children:(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)(n.A,{className:"h-3.5 w-3.5 text-primary"}),(0,e.jsx)("span",{className:"text-xs text-foreground",children:av.title})]})})]}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("tasks.dependencies")}),aH&&(0,e.jsx)("div",{className:"mt-2 rounded-lg bg-destructive/10 p-2.5 text-xs text-destructive",children:aH}),aD?(0,e.jsx)("div",{className:"mt-2 flex items-center justify-center py-4",children:(0,e.jsx)(o.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):(0,e.jsxs)(e.Fragment,{children:[az.length>0&&(0,e.jsxs)("div",{className:"mt-2",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1.5 mb-1.5",children:[(0,e.jsx)(p.A,{className:"h-3 w-3 text-[#9A9A9A]"}),(0,e.jsx)("span",{className:"text-[10px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("tasks.dependsOn")})]}),(0,e.jsx)("div",{className:"space-y-1.5",children:az.map(a=>(0,e.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-background p-3",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-primary"}),(0,e.jsx)("span",{className:"text-xs text-foreground truncate",children:a.title}),(0,e.jsx)(A.E,{className:`shrink-0 text-[10px] ${af[a.status]||""}`,children:al(`status.${ag[a.status]||a.status}`)})]}),(0,e.jsx)(C.$,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>bd(a.uuid),children:(0,e.jsx)(j.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},a.uuid))})]}),aB.length>0&&(0,e.jsxs)("div",{className:"mt-3",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1.5 mb-1.5",children:[(0,e.jsx)(p.A,{className:"h-3 w-3 rotate-180 text-[#9A9A9A]"}),(0,e.jsx)("span",{className:"text-[10px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("tasks.blockedByThis")})]}),(0,e.jsx)("div",{className:"space-y-1.5",children:aB.map(a=>(0,e.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-background p-3",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,e.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground"}),(0,e.jsx)("span",{className:"text-xs text-foreground truncate",children:a.title}),(0,e.jsx)(A.E,{className:`shrink-0 text-[10px] ${af[a.status]||""}`,children:al(`status.${ag[a.status]||a.status}`)})]}),(0,e.jsx)(C.$,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>be(a.uuid),children:(0,e.jsx)(j.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},a.uuid))})]}),0===az.length&&0===aB.length&&(0,e.jsx)("p",{className:"mt-2 text-sm italic text-[#9A9A9A]",children:al("tasks.noDependencies")}),bf.length>0&&(0,e.jsx)("div",{className:"mt-3",children:(0,e.jsxs)(H.l6,{onValueChange:a=>bc(a),children:[(0,e.jsx)(H.bq,{className:"h-8 border-border text-xs text-muted-foreground focus:ring-primary",children:(0,e.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,e.jsx)(k.A,{className:"h-3 w-3"}),(0,e.jsx)(H.yv,{placeholder:al("tasks.addDependency")})]})}),(0,e.jsx)(H.gC,{children:bf.map(a=>(0,e.jsx)(H.eb,{value:a.uuid,children:(0,e.jsx)("span",{className:"truncate",children:a.title})},a.uuid))})]},az.length)})]})]}),a&&a.acceptanceCriteriaItems&&a.acceptanceCriteriaItems.length>0&&(()=>{let b=a.acceptanceCriteriaItems,c=a.acceptanceSummary,d=a=>"passed"===a?(0,e.jsx)(q.A,{className:"h-4 w-4 text-green-600 dark:text-[#6FD19A]"}):"failed"===a?(0,e.jsx)(r.A,{className:"h-4 w-4 text-red-600 dark:text-[#F08078]"}):(0,e.jsx)(s.A,{className:"h-4 w-4 text-yellow-600 dark:text-[#E0B44E]"}),f=a=>"passed"===a?"bg-green-50 text-green-700 dark:bg-[#14281a] dark:text-[#6FD19A]":"failed"===a?"bg-red-50 text-red-700 dark:bg-[#331619] dark:text-[#F08078]":"bg-yellow-50 text-yellow-700 dark:bg-[#332a12] dark:text-[#E0B44E]",g=async(b,c)=>{(await (0,R.h)(a.uuid,[{uuid:b,status:c}])).success&&am.refresh()};return(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("acceptanceCriteria.title")}),c&&(0,e.jsx)(A.E,{className:f(a.acceptanceStatus||"pending"),variant:"secondary",children:al("acceptanceCriteria.progress",{passed:c.passed,total:c.total})})]}),(0,e.jsxs)("div",{className:"mt-2 space-y-2",children:[b.map(b=>(0,e.jsx)(B.Zp,{className:"p-3",children:(0,e.jsxs)("div",{className:"flex items-start gap-2",children:[(0,e.jsx)("div",{className:"mt-0.5 shrink-0",children:d(b.status)}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,e.jsx)("span",{className:"text-xs text-foreground",children:b.description}),(0,e.jsx)(A.E,{variant:"outline",className:"text-[10px] shrink-0",children:b.required?al("acceptanceCriteria.required"):al("acceptanceCriteria.optional")})]}),(0,e.jsxs)("div",{className:"mt-2 space-y-1",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2 text-[10px]",children:[(0,e.jsx)("span",{className:"text-[#9A9A9A] w-20 shrink-0",children:al("acceptanceCriteria.devSelfCheck")}),(0,e.jsxs)(A.E,{className:`text-[10px] ${f(b.devStatus)}`,variant:"secondary",children:[d(b.devStatus),(0,e.jsx)("span",{className:"ml-1",children:al(`acceptanceCriteria.status.${b.devStatus}`)})]})]}),(0,e.jsxs)("div",{className:"flex items-center gap-2 text-[10px]",children:[(0,e.jsx)("span",{className:"text-[#9A9A9A] w-20 shrink-0",children:al("acceptanceCriteria.verification")}),(0,e.jsxs)(A.E,{className:`text-[10px] ${f(b.status)}`,variant:"secondary",children:[d(b.status),(0,e.jsx)("span",{className:"ml-1",children:al(`acceptanceCriteria.status.${b.status}`)})]})]})]}),b.devEvidence&&(0,e.jsxs)("div",{className:"mt-2 rounded bg-background p-2",children:[(0,e.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:al("acceptanceCriteria.devEvidence")}),(0,e.jsx)("p",{className:"text-[11px] text-foreground mt-0.5",children:b.devEvidence})]}),b.evidence&&(0,e.jsxs)("div",{className:"mt-2 rounded bg-background p-2",children:[(0,e.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:al("acceptanceCriteria.verifyEvidence")}),(0,e.jsx)("p",{className:"text-[11px] text-foreground mt-0.5",children:b.evidence})]}),"pending"===b.status?(0,e.jsxs)("div",{className:"mt-2 flex gap-2",children:[(0,e.jsxs)(C.$,{size:"sm",variant:"outline",className:"h-8 min-h-[44px] sm:min-h-0 flex-1 sm:flex-none text-xs text-green-700 dark:text-[#6FD19A] border-green-200 dark:border-[#2a4a34] hover:bg-green-50 dark:hover:bg-[#14281a]",onClick:()=>g(b.uuid,"passed"),children:[(0,e.jsx)(q.A,{className:"h-3.5 w-3.5 mr-1"}),al("acceptanceCriteria.pass")]}),(0,e.jsxs)(C.$,{size:"sm",variant:"outline",className:"h-8 min-h-[44px] sm:min-h-0 flex-1 sm:flex-none text-xs text-red-700 dark:text-[#F08078] border-red-200 dark:border-[#5a2a2e] hover:bg-red-50 dark:hover:bg-[#331619]",onClick:()=>g(b.uuid,"failed"),children:[(0,e.jsx)(r.A,{className:"h-3.5 w-3.5 mr-1"}),al("acceptanceCriteria.fail")]})]}):(0,e.jsx)("div",{className:"mt-2",children:(0,e.jsx)(C.$,{size:"sm",variant:"ghost",className:"h-7 min-h-[44px] sm:min-h-0 text-xs text-[#9A9A9A] hover:text-foreground",onClick:async()=>{(await (0,S.N)(a.uuid,b.uuid)).success&&am.refresh()},children:al("acceptanceCriteria.undoVerification")})})]})]})},b.uuid)),c&&(c.requiredPending>0||c.requiredFailed>0)&&(0,e.jsxs)("div",{className:"flex items-center gap-2 rounded-lg bg-yellow-50 dark:bg-[#332a12] p-3 mt-2",children:[(0,e.jsx)(t.A,{className:"h-4 w-4 text-yellow-600 dark:text-[#E0B44E] shrink-0"}),(0,e.jsx)("span",{className:"text-xs text-yellow-700 dark:text-[#E0B44E]",children:al("acceptanceCriteria.gateBlocked",{count:c.requiredPending+c.requiredFailed})})]}),c&&0===c.requiredPending&&0===c.requiredFailed&&c.required>0&&(0,e.jsxs)("div",{className:"flex items-center gap-2 rounded-lg bg-green-50 dark:bg-[#14281a] p-3 mt-2",children:[(0,e.jsx)(q.A,{className:"h-4 w-4 text-green-600 dark:text-[#6FD19A] shrink-0"}),(0,e.jsx)("span",{className:"text-xs text-green-700 dark:text-[#6FD19A]",children:al("acceptanceCriteria.gateReady")})]})]})]})})(),(0,e.jsxs)("div",{className:"mt-5 flex-1",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("common.activity")}),(0,e.jsx)("div",{className:"mt-2 space-y-3",children:at?(0,e.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,e.jsx)(o.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):0===ar.length?(0,e.jsx)("p",{className:"text-sm text-[#9A9A9A] italic",children:al("common.noActivity")}):ar.map(a=>(0,e.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,e.jsx)("div",{className:"flex h-5 w-5 items-center justify-center rounded-full bg-secondary",children:(0,e.jsx)("div",{className:`h-2 w-2 rounded-full ${function(a){switch(a){case"task_created":return"bg-primary";case"task_assigned":case"task_claimed":return"bg-[#1976D2]";case"task_started":return"bg-[#5A9E6F]";case"task_submitted":return"bg-[#7B1FA2]";case"task_completed":case"task_verified":return"bg-[#00796B]";case"task_released":return"bg-[#E65100]";default:return"bg-muted-foreground"}}(a.action)}`})}),(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)("p",{className:"text-xs text-foreground",children:function(a,b){let c=a.sessionName?`${a.actorName} / ${a.sessionName}`:a.actorName,{action:d}=a;switch(d){case"task_created":return b("activity.taskCreated",{actor:c});case"task_assigned":return b("activity.taskAssigned",{actor:c});case"task_claimed":return b("activity.taskClaimed",{actor:c});case"task_started":return b("activity.taskStarted",{actor:c});case"task_submitted":return b("activity.taskSubmitted",{actor:c});case"task_completed":case"task_verified":return b("activity.taskCompleted",{actor:c});case"task_released":return b("activity.taskReleased",{actor:c});case"task_status_changed":return b("activity.taskStatusChanged",{actor:c});default:return`${c}: ${d}`}}(a,al)}),(0,e.jsx)("p",{className:"text-[10px] text-[#9A9A9A]",children:ad(a.createdAt,al)})]})]},a.uuid))})]}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("references.title")}),(0,e.jsx)("div",{className:"mt-2",children:(0,e.jsx)(U.ReferencesSection,{targetType:"task",targetUuid:a.uuid,canWrite:!0,compact:!0})})]}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:al("comments.title")}),(0,e.jsx)("div",{className:"mt-3",children:(0,e.jsx)(T.$m,{targetType:"task",targetUuid:a.uuid,currentUserUuid:c,compact:!0})})]})]}):null})}),(0,e.jsx)("div",{className:"border-t border-secondary px-6 py-4",children:(0,e.jsx)("div",{className:"flex items-center gap-3",children:aO?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(C.$,{variant:"outline",className:"border-border",onClick:a9,disabled:a$,children:al("common.cancel")}),(0,e.jsx)(C.$,{className:"bg-primary hover:bg-[#B56A42] text-white",onClick:ba,disabled:a$||!aQ.trim(),children:a$?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),al("common.saving")]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(u.A,{className:"mr-2 h-4 w-4"}),aN?al("common.create"):al("tasks.saveChanges")]})})]}):a?(0,e.jsxs)(e.Fragment,{children:["done"!==a.status&&"closed"!==a.status&&(0,e.jsxs)(C.$,{variant:"outline",className:"border-border",onClick:()=>ay(!0),disabled:ap,children:[(0,e.jsx)(v.A,{className:"mr-2 h-4 w-4"}),al("common.assign")]}),a5&&(0,e.jsxs)(C.$,{className:"flex-1 bg-[#1976D2] hover:bg-[#1565C0] text-white",onClick:()=>a8("in_progress"),disabled:ap,children:[(0,e.jsx)(w.A,{className:"mr-2 h-4 w-4"}),al("tasks.startWork")]}),a6&&(0,e.jsxs)(C.$,{className:"flex-1 bg-[#7B1FA2] hover:bg-[#6A1B9A] text-white",onClick:()=>a8("to_verify"),disabled:ap,children:[(0,e.jsx)(x.A,{className:"mr-2 h-4 w-4"}),al("tasks.submitForReview")]}),a7&&(0,e.jsxs)(C.$,{className:"flex-1 bg-[#22C55E] hover:bg-[#16A34A] text-white",onClick:()=>a8("done"),disabled:ap,children:[(0,e.jsx)(y.A,{className:"mr-2 h-4 w-4"}),al("tasks.markAsVerified")]}),("done"===a.status||"closed"===a.status)&&(0,e.jsx)("div",{className:"text-sm text-[#9A9A9A] text-center w-full",children:al("tasks.taskCompleted")}),(0,e.jsx)("div",{className:"ml-auto",children:(0,e.jsxs)(I.Lt,{children:[(0,e.jsx)(I.tv,{asChild:!0,children:(0,e.jsx)(C.$,{variant:"outline",size:"icon",className:"h-9 w-9 border-border text-[#D32F2F] dark:text-[#F08078] hover:bg-[#FFEBEE] dark:hover:bg-[#331619] hover:text-[#D32F2F] hover:border-[#D32F2F]",children:(0,e.jsx)(z.A,{className:"h-4 w-4"})})}),(0,e.jsxs)(I.EO,{children:[(0,e.jsxs)(I.wd,{children:[(0,e.jsx)(I.r7,{children:al("tasks.deleteTask")}),(0,e.jsx)(I.$v,{children:al("tasks.deleteTaskConfirm",{title:a.title})})]}),(0,e.jsxs)(I.ck,{children:[(0,e.jsx)(I.Zr,{children:al("common.cancel")}),(0,e.jsx)(I.Rx,{variant:"destructive",onClick:bb,disabled:a2,children:a2?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),al("common.delete")]}):al("common.delete")})]})]})]})})]}):null})})]}),a&&ax&&(0,e.jsx)(X.Q,{task:a,projectUuid:b,currentUserUuid:c,onClose:()=>ay(!1)})]})}d()}catch(a){d(a)}})},88327:(a,b,c)=>{c.d(b,{A:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40330f0f36ddb89b0ec22ff9886619d2c69df56633",d.callServer,void 0,d.findSourceMapURL,"createTaskAction")},91298:(a,b,c)=>{c.d(b,{h:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40fc6c378c65f87abfa368bd7a5cd80ad46a117d1b",d.callServer,void 0,d.findSourceMapURL,"getBatchWorkerCountsAction")},98625:(a,b,c)=>{c.d(b,{T:()=>f});var d=c(21968),e=c(1007);function f(a,b){let c=(0,e.useSearchParams)(),f=(0,d.useRef)(!1),g=!f.current;f.current=!0;let h=c.get("panel")??(g?b??null:null),i=c.get("tab"),j=(0,d.useCallback)((b,c)=>{let d=new URLSearchParams(window.location.search);b?d.set("panel",b):d.delete("panel"),c?d.set("tab",c):d.delete("tab");let e=d.toString();return e?`${a}?${e}`:a},[a]),k=(0,d.useCallback)((a,b)=>{window.history.replaceState(null,"",j(a,b))},[j]),l=(0,d.useCallback)(()=>{window.history.replaceState(null,"",j(null))},[j]),m=(0,d.useCallback)(a=>{h&&window.history.replaceState(null,"",j(h,a))},[j,h]);return{selectedId:h,selectedTab:i,openPanel:k,closePanel:l,switchTab:m}}},99224:(a,b,c)=>{c.d(b,{Q:()=>y});var d=c(10837),e=c(21968),f=c(68884),g=c(9222),h=c(86460),i=c(21692),j=c(97443),k=c(42424),l=c(6871),m=c(94214),n=c(2852),o=c(11225),p=c(55732),q=c(23871),r=c(27696),s=c(27876),t=c(42377);t.callServer,t.findSourceMapURL,t.callServer,t.findSourceMapURL;let u=(0,t.createServerReference)("40463c7f77974106477d76a89d1ee4486f55963dd6",t.callServer,void 0,t.findSourceMapURL,"claimTaskAction"),v=(0,t.createServerReference)("70746d9ea5222fc60f865ea96b1475294f4a19b25d",t.callServer,void 0,t.findSourceMapURL,"claimTaskToAgentAction"),w=(0,t.createServerReference)("60a79c9295940ff806d19c97c3e7a3a0f600011689",t.callServer,void 0,t.findSourceMapURL,"claimTaskToUserAction"),x=(0,t.createServerReference)("40ab97054dc3d0d1c5c895af15bf67eeba700550c0",t.callServer,void 0,t.findSourceMapURL,"releaseTaskAction");function y({task:a,projectUuid:b,currentUserUuid:c,onClose:t}){let y=(0,g.c)(),z=(0,f.r)(),[A,B]=(0,e.useState)(!1),[C,D]=(0,e.useState)("self"),[E,F]=(0,e.useState)(""),[G,H]=(0,e.useState)(""),[I,J]=(0,e.useState)([]),[K,L]=(0,e.useState)([]),[M,N]=(0,e.useState)(!0),[O,P]=(0,e.useState)(null),[Q,R]=(0,e.useState)([]),[S,T]=(0,e.useState)(!1),[U,V]=(0,e.useState)(null),[W,X]=(0,e.useState)(null),Y=!!a.assignee,Z=Q.find(a=>a.connectionUuid===W)??null,$=new Set(Q.map(a=>a.host)).size>1,_=async()=>{let b;if(B(!0),P(null),"self"===C)b=await u(a.uuid);else if("agent"===C&&E)b=await v(a.uuid,E,Z?.agentInstanceUuid??void 0);else if("user"===C&&G)b=await w(a.uuid,G);else{if("release"!==C)return void B(!1);b=await x(a.uuid)}B(!1),b?.success?(t(),z.refresh()):b?.error&&P(b.error)},aa="self"===C||"agent"===C&&E||"user"===C&&G||"release"===C&&Y;return(0,d.jsxs)(m._8,{open:!0,onOpenChange:a=>{a||t()},className:"bg-card sm:max-w-[400px]",header:(0,d.jsx)(m.AI,{className:"text-base font-semibold text-foreground",children:y("tasks.assignTask")}),footer:(0,d.jsxs)("div",{className:"flex w-full items-center justify-end gap-4",children:[(0,d.jsx)(k.$,{variant:"outline",onClick:t,disabled:A,className:"border-border",children:y("common.cancel")}),(0,d.jsx)(k.$,{onClick:_,disabled:A||!aa,className:"bg-primary hover:bg-[#B56A42] text-white",children:A?(0,d.jsx)(h.A,{className:"h-4 w-4 animate-spin"}):"release"===C?y("common.release"):function(){if("agent"!==C||!Z)return y("common.assign");let a=(0,r.kn)(Z.cwd),b=a.isUnknown?y(a.label):a.label,c=(0,r.g9)(Z.host),d=c.isUnknown?y(c.label):c.label;return $?y("assignInstance.assignToWithHost",{path:b,host:d}):y("assignInstance.assignTo",{path:b})}()})]}),bodyClassName:"space-y-4",children:[(0,d.jsxs)("div",{className:"rounded-lg bg-background p-3",children:[(0,d.jsx)("p",{className:"text-[13px] font-medium text-foreground",children:a.title}),a.description&&(0,d.jsx)("p",{className:"mt-1 text-[11px] text-muted-foreground line-clamp-2",children:a.description})]}),Y&&(0,d.jsx)("div",{className:"rounded-lg bg-[#E3F2FD] dark:bg-[#13253a] p-3",children:(0,d.jsxs)("p",{className:"text-xs text-[#1976D2] dark:text-[#5AA9F0]",children:[y("common.currentAssignee"),": ",(0,d.jsx)("span",{className:"font-medium",children:a.assignee?.name})]})}),O&&(0,d.jsx)("div",{className:"rounded-lg bg-[#FEE2E2] dark:bg-[#331619] p-3",children:(0,d.jsx)("p",{className:"text-xs text-[#D32F2F] dark:text-[#F08078]",children:O})}),(0,d.jsx)("p",{className:"text-[13px] text-muted-foreground",children:y("assign.selectAssignee")}),M?(0,d.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,d.jsx)(h.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):(0,d.jsxs)(o.z,{value:C,onValueChange:a=>D(a),className:"space-y-3",children:[(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors cursor-pointer ${"self"===C?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border hover:border-primary/50"}`,onClick:()=>D("self"),children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(o.C,{value:"self",id:"self",className:"border-primary text-primary"}),(0,d.jsx)(n.J,{htmlFor:"self",className:"text-sm font-medium text-foreground cursor-pointer",children:y("assign.assignToMyself")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-muted-foreground leading-relaxed",children:y("assign.assignToMyselfDesc")})]}),(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors ${"agent"===C?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>D("agent"),children:[(0,d.jsx)(o.C,{value:"agent",id:"agent",className:"border-primary text-primary"}),(0,d.jsx)(n.J,{htmlFor:"agent",className:"text-sm font-medium text-foreground cursor-pointer",children:y("assign.orAssignToAgent")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-muted-foreground leading-relaxed",children:y("tasks.onlySelectedAgentCanWork")}),"agent"===C&&(0,d.jsxs)("div",{className:"mt-3 ml-6 space-y-3",children:[(0,d.jsxs)(p.l6,{value:E,onValueChange:F,children:[(0,d.jsx)(p.bq,{className:"w-full border-border",children:(0,d.jsx)(p.yv,{placeholder:y("tasks.selectAgent")})}),(0,d.jsx)(p.gC,{className:"z-[120]",children:I.length>0?I.map(a=>(0,d.jsx)(p.eb,{value:a.uuid,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(l.AgentAvatar,{name:a.name,size:16,className:"rounded-full"}),(0,d.jsx)("span",{children:a.name})]})},a.uuid)):(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:y("tasks.noAgentsAvailable")})})]}),E&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:y("assignInstance.workingDirectory")}),S?(0,d.jsxs)("div",{className:"flex items-center gap-2 py-2 text-xs text-[#9A9A9A]",children:[(0,d.jsx)(h.A,{className:"h-3.5 w-3.5 animate-spin"}),y("assignInstance.loadingInstances")]}):U?.source==="project_fixed"?(0,d.jsx)(s.Y,{target:U}):0===Q.length?(0,d.jsx)("p",{className:"rounded-lg bg-background p-2.5 text-[11px] leading-relaxed text-muted-foreground",children:y("assignInstance.noInstances")}):(0,d.jsx)(q.O,{instances:Q,selectedConnectionUuid:W,onSelect:a=>X(a.connectionUuid),ariaLabel:y("assignInstance.workingDirectory")}),U?.source!=="project_fixed"&&(0,d.jsxs)("div",{className:"flex items-start gap-1.5 text-[11px] leading-relaxed text-[#9A8C7E]",children:[(0,d.jsx)(i.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":!0}),(0,d.jsx)("span",{children:y("assignInstance.pinNote")})]})]})]})]}),(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors ${"user"===C?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>D("user"),children:[(0,d.jsx)(o.C,{value:"user",id:"user",className:"border-primary text-primary"}),(0,d.jsx)(n.J,{htmlFor:"user",className:"text-sm font-medium text-foreground cursor-pointer",children:y("assign.orAssignToUser")})]}),"user"===C&&(0,d.jsx)("div",{className:"mt-3 ml-6",children:(0,d.jsxs)(p.l6,{value:G,onValueChange:H,children:[(0,d.jsx)(p.bq,{className:"w-full border-border",children:(0,d.jsx)(p.yv,{placeholder:y("tasks.selectUser")})}),(0,d.jsx)(p.gC,{className:"z-[120]",children:K.length>0?K.map(a=>(0,d.jsx)(p.eb,{value:a.uuid,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(j.A,{className:"h-4 w-4 text-muted-foreground"}),(0,d.jsx)("span",{children:a.name||a.email})]})},a.uuid)):(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:y("tasks.noUsersAvailable")})})]})})]}),Y&&(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors cursor-pointer ${"release"===C?"bg-[#FDF8F6] dark:bg-[#201d1b] border-2 border-primary":"bg-card border border-border hover:border-primary/50"}`,onClick:()=>D("release"),children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(o.C,{value:"release",id:"release",className:"border-primary text-primary"}),(0,d.jsx)(n.J,{htmlFor:"release",className:"text-sm font-medium text-foreground cursor-pointer",children:y("assign.releaseAssignee")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-muted-foreground leading-relaxed",children:y("assign.releaseAssigneeDesc")})]})]})]})}}};