@chorus-aidlc/chorus 0.11.1 → 0.12.1

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 (669) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +405 -391
  3. package/.next/standalone/.next/app-path-routes-manifest.json +33 -31
  4. package/.next/standalone/.next/build-manifest.json +5 -5
  5. package/.next/standalone/.next/prerender-manifest.json +27 -27
  6. package/.next/standalone/.next/react-loadable-manifest.json +3 -3
  7. package/.next/standalone/.next/routes-manifest.json +8 -0
  8. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +2 -2
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +2 -2
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +2 -2
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +2 -2
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  45. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  49. package/.next/standalone/.next/server/app/_not-found.rsc +3 -3
  50. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/admin/companies/new.html +1 -1
  53. package/.next/standalone/.next/server/app/admin/companies/new.rsc +3 -3
  54. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/admin/companies.html +1 -1
  56. package/.next/standalone/.next/server/app/admin/companies.rsc +3 -3
  57. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/admin.html +1 -1
  59. package/.next/standalone/.next/server/app/admin.rsc +3 -3
  60. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route.js +1 -1
  61. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route.js.nft.json +1 -1
  62. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/admin/companies/route.js +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/companies/route.js.nft.json +1 -1
  65. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/admin/login/route.js +1 -1
  67. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/admin/session/route.js +1 -1
  69. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/agent-connections/route.js +1 -1
  71. package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/agents/[uuid]/route.js +1 -1
  74. package/.next/standalone/.next/server/app/api/agents/[uuid]/route.js.nft.json +1 -1
  75. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  77. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/agents/route.js +1 -1
  80. package/.next/standalone/.next/server/app/api/agents/route.js.nft.json +1 -1
  81. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route.js +1 -1
  83. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/api-keys/route.js +1 -1
  86. package/.next/standalone/.next/server/app/api/api-keys/route.js.nft.json +1 -1
  87. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/auth/callback/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/auth/check-default/route.js +1 -1
  91. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/auth/default-login/route.js +1 -1
  94. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/auth/identify/route.js +1 -1
  96. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/auth/logout/route.js +1 -1
  98. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/auth/refresh/route.js +1 -1
  101. package/.next/standalone/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/auth/session/route.js +1 -1
  103. package/.next/standalone/.next/server/app/api/auth/session/route.js.nft.json +1 -1
  104. package/.next/standalone/.next/server/app/api/auth/session/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/auth/sync-token/route.js +1 -1
  106. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  108. package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
  109. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/daemon/control/route.js +1 -1
  111. package/.next/standalone/.next/server/app/api/daemon/control/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js +1 -1
  114. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js.nft.json +1 -1
  115. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/daemon/executions/route.js +1 -1
  117. package/.next/standalone/.next/server/app/api/daemon/executions/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
  120. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js.nft.json +1 -1
  121. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js +1 -1
  123. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/daemon/resume/route.js +1 -1
  126. package/.next/standalone/.next/server/app/api/daemon/resume/route.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
  129. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
  132. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js.nft.json +1 -1
  133. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
  135. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
  136. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -0
  138. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -0
  139. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -0
  140. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
  141. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
  142. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
  144. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
  145. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
  147. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/documents/[uuid]/route.js +1 -1
  150. package/.next/standalone/.next/server/app/api/documents/[uuid]/route.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
  153. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/events/notifications/route.js +6 -4
  156. package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/events/route.js +7 -5
  159. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  163. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  165. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  166. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  169. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  171. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
  172. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
  173. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  175. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
  176. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  178. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  180. package/.next/standalone/.next/server/app/api/keepalive/route.js +1 -0
  181. package/.next/standalone/.next/server/app/api/keepalive/route.js.nft.json +1 -0
  182. package/.next/standalone/.next/server/app/api/keepalive/route_client-reference-manifest.js +1 -0
  183. package/.next/standalone/.next/server/app/api/mcp/route.js +5 -5
  184. package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  185. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  186. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  187. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  189. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  190. package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
  191. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  192. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
  193. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
  194. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  195. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
  196. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
  197. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  198. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
  199. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
  200. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  201. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
  202. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
  203. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  205. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  206. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  207. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
  208. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
  209. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  210. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route.js +1 -1
  211. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route.js.nft.json +1 -1
  212. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  213. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route.js +1 -1
  214. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route.js.nft.json +1 -1
  215. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  216. package/.next/standalone/.next/server/app/api/project-groups/route.js +1 -1
  217. package/.next/standalone/.next/server/app/api/project-groups/route.js.nft.json +1 -1
  218. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  219. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route.js +1 -1
  220. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route.js.nft.json +1 -1
  221. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  222. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  223. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  224. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  225. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route.js +1 -1
  226. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route.js.nft.json +1 -1
  227. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route.js +1 -1
  229. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route.js.nft.json +1 -1
  230. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  231. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  232. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
  233. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  235. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
  236. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  237. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js +1 -1
  238. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js.nft.json +1 -1
  239. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  240. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js +1 -1
  241. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js.nft.json +1 -1
  242. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  243. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js +1 -1
  244. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js.nft.json +1 -1
  245. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  246. package/.next/standalone/.next/server/app/api/projects/[uuid]/route.js +1 -1
  247. package/.next/standalone/.next/server/app/api/projects/[uuid]/route.js.nft.json +1 -1
  248. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  249. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route.js +1 -1
  250. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route.js.nft.json +1 -1
  251. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  252. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  253. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
  254. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  255. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  256. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
  257. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  258. package/.next/standalone/.next/server/app/api/projects/route.js +1 -1
  259. package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  260. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  261. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js +1 -1
  262. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js.nft.json +1 -1
  263. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  264. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js +1 -1
  265. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js.nft.json +1 -1
  266. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  267. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js +1 -1
  268. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js.nft.json +1 -1
  269. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  270. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js +1 -1
  271. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js.nft.json +1 -1
  272. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  273. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js +1 -1
  274. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js.nft.json +1 -1
  275. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  276. package/.next/standalone/.next/server/app/api/search/route.js +1 -1
  277. package/.next/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  278. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  279. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  280. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
  281. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  282. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  283. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
  284. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  285. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  286. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
  287. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  288. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  289. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
  290. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  291. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  292. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
  293. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  294. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  295. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
  296. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  297. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  298. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
  299. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  300. package/.next/standalone/.next/server/app/index.html +1 -1
  301. package/.next/standalone/.next/server/app/index.rsc +4 -4
  302. package/.next/standalone/.next/server/app/login/admin/page.js +2 -2
  303. package/.next/standalone/.next/server/app/login/admin/page.js.nft.json +1 -1
  304. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  305. package/.next/standalone/.next/server/app/login/admin.html +1 -1
  306. package/.next/standalone/.next/server/app/login/admin.rsc +3 -3
  307. package/.next/standalone/.next/server/app/login/callback/page.js +2 -2
  308. package/.next/standalone/.next/server/app/login/callback/page.js.nft.json +1 -1
  309. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  310. package/.next/standalone/.next/server/app/login/callback.html +1 -1
  311. package/.next/standalone/.next/server/app/login/callback.rsc +4 -4
  312. package/.next/standalone/.next/server/app/login/page.js +2 -2
  313. package/.next/standalone/.next/server/app/login/page.js.nft.json +1 -1
  314. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  315. package/.next/standalone/.next/server/app/login/pick-workspace/page.js +1 -1
  316. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  317. package/.next/standalone/.next/server/app/login/pick-workspace.html +1 -1
  318. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +4 -4
  319. package/.next/standalone/.next/server/app/login/silent-refresh/page.js +1 -1
  320. package/.next/standalone/.next/server/app/login/silent-refresh/page_client-reference-manifest.js +1 -1
  321. package/.next/standalone/.next/server/app/login/silent-refresh.html +1 -1
  322. package/.next/standalone/.next/server/app/login/silent-refresh.rsc +4 -4
  323. package/.next/standalone/.next/server/app/login.html +1 -1
  324. package/.next/standalone/.next/server/app/login.rsc +4 -4
  325. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  326. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  327. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  328. package/.next/standalone/.next/server/app/onboarding.html +1 -1
  329. package/.next/standalone/.next/server/app/onboarding.rsc +4 -4
  330. package/.next/standalone/.next/server/app/page.js +2 -2
  331. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  332. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  333. package/.next/standalone/.next/server/app/projects.html +1 -1
  334. package/.next/standalone/.next/server/app/projects.rsc +5 -5
  335. package/.next/standalone/.next/server/app/settings.html +1 -1
  336. package/.next/standalone/.next/server/app/settings.rsc +5 -5
  337. package/.next/standalone/.next/server/app-paths-manifest.json +33 -31
  338. package/.next/standalone/.next/server/chunks/{5201.js → 1343.js} +2 -2
  339. package/.next/standalone/.next/server/chunks/1463.js +1 -0
  340. package/.next/standalone/.next/server/chunks/1596.js +2 -2
  341. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  342. package/.next/standalone/.next/server/chunks/2622.js +1 -0
  343. package/.next/standalone/.next/server/chunks/2779.js +31 -0
  344. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  345. package/.next/standalone/.next/server/chunks/3219.js +1 -1
  346. package/.next/standalone/.next/server/chunks/3419.js +1 -1
  347. package/.next/standalone/.next/server/chunks/4292.js +1 -0
  348. package/.next/standalone/.next/server/chunks/4872.js +1 -0
  349. package/.next/standalone/.next/server/chunks/5300.js +1 -1
  350. package/.next/standalone/.next/server/chunks/5538.js +1 -0
  351. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  352. package/.next/standalone/.next/server/chunks/6207.js +1 -1
  353. package/.next/standalone/.next/server/chunks/7063.js +2 -2
  354. package/.next/standalone/.next/server/chunks/7064.js +1 -0
  355. package/.next/standalone/.next/server/chunks/7160.js +1 -0
  356. package/.next/standalone/.next/server/chunks/7364.js +1 -0
  357. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  358. package/.next/standalone/.next/server/chunks/7427.js +1 -0
  359. package/.next/standalone/.next/server/chunks/7515.js +1 -0
  360. package/.next/standalone/.next/server/chunks/7578.js +2 -2
  361. package/.next/standalone/.next/server/chunks/{4711.js → 796.js} +6 -6
  362. package/.next/standalone/.next/server/chunks/8732.js +1 -0
  363. package/.next/standalone/.next/server/chunks/9161.js +1 -0
  364. package/.next/standalone/.next/server/chunks/920.js +1 -1
  365. package/.next/standalone/.next/server/chunks/9273.js +1 -0
  366. package/.next/standalone/.next/server/chunks/937.js +3 -3
  367. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  368. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  369. package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  370. package/.next/standalone/.next/server/pages/404.html +1 -1
  371. package/.next/standalone/.next/server/pages/500.html +1 -1
  372. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  373. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  374. package/.next/standalone/.next/server/src/middleware.js +1 -1
  375. package/.next/standalone/.next/static/GmBblfxcDziUENBiEap4B/_buildManifest.js +1 -0
  376. package/.next/standalone/.next/static/chunks/10344-2e9a9d767e2e8ed1.js +1 -0
  377. package/.next/standalone/.next/static/chunks/16467-dd4f928e725306c1.js +1 -0
  378. package/.next/standalone/.next/static/chunks/20081-a2bf5c9f24d5d589.js +1 -0
  379. package/.next/standalone/.next/static/chunks/2280-f48bf99ea9d88ece.js +1 -0
  380. package/.next/standalone/.next/static/chunks/26394-4af487a51dd62832.js +1 -0
  381. package/.next/standalone/.next/static/chunks/27378-9328bcc96ae9872e.js +1 -0
  382. package/.next/standalone/.next/static/chunks/{33187.13c12f5c0821ac57.js → 33187.1328c15b9dab78a8.js} +1 -1
  383. package/.next/standalone/.next/static/chunks/37784-95dee37276b1067b.js +1 -0
  384. package/.next/standalone/.next/static/chunks/46983-8bf90f1ffeb55957.js +1 -0
  385. package/.next/standalone/.next/static/chunks/46999-f53da8f53fe1b8a9.js +1 -0
  386. package/.next/standalone/.next/static/chunks/4860.e3d0dd79a4d37626.js +1 -0
  387. package/.next/standalone/.next/static/chunks/54637-71d281d649ea3a17.js +1 -0
  388. package/.next/standalone/.next/static/chunks/64187-cff8a4b5e96fa8f9.js +10 -0
  389. package/.next/standalone/.next/static/chunks/78917-aa5bbff9248799a4.js +1 -0
  390. package/.next/standalone/.next/static/chunks/80904-973284d1fe916c38.js +1 -0
  391. package/.next/standalone/.next/static/chunks/85573-fb4d2cbd67612d47.js +1 -0
  392. package/.next/standalone/.next/static/chunks/88561-0b14e1564419f215.js +1 -0
  393. package/.next/standalone/.next/static/chunks/89035-faf398b7bbc7d2ed.js +1 -0
  394. package/.next/standalone/.next/static/chunks/89644-2fee0373b890e8e3.js +1 -0
  395. package/.next/standalone/.next/static/chunks/{93346-5489d90bc2d57190.js → 93346-b3e1ebe948fc623f.js} +1 -1
  396. package/.next/standalone/.next/static/chunks/{97784-7b90a17294840e32.js → 97784-42081b75f8cc6da8.js} +1 -1
  397. package/.next/standalone/.next/static/chunks/97868-55f18a05fe483d85.js +1 -0
  398. package/.next/standalone/.next/static/chunks/99373.cc6319fa4cf36081.js +1 -0
  399. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-b3a497ba5eb08036.js +1 -0
  400. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-2944c6c9bc48a7d6.js +1 -0
  401. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-f1b0daea9f947caf.js +1 -0
  402. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-d786f0c18a9c4f06.js +1 -0
  403. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-c68f1eda3779b448.js +1 -0
  404. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-e0935445535c28cb.js +1 -0
  405. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-f824632ff61a9fa7.js +1 -0
  406. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-dbcb6e50fc4816c6.js +1 -0
  407. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-1295bc505e727383.js +1 -0
  408. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page-ceeec49af0396432.js +1 -0
  409. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/page-1286afe43c086d6a.js +1 -0
  410. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-583e58d4d689d38b.js → page-fec019d974ef8d4e.js} +1 -1
  411. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-0fb1d51016f6bd56.js +1 -0
  412. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-f1b0daea9f947caf.js +1 -0
  413. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-f1b0daea9f947caf.js +1 -0
  414. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-f1b0daea9f947caf.js +1 -0
  415. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-f1b0daea9f947caf.js +1 -0
  416. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-f1b0daea9f947caf.js +1 -0
  417. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-f1b0daea9f947caf.js +1 -0
  418. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-f1b0daea9f947caf.js +1 -0
  419. package/.next/standalone/.next/static/chunks/app/api/agents/route-f1b0daea9f947caf.js +1 -0
  420. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-f1b0daea9f947caf.js +1 -0
  421. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-f1b0daea9f947caf.js +1 -0
  422. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-f1b0daea9f947caf.js +1 -0
  423. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-f1b0daea9f947caf.js +1 -0
  424. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-f1b0daea9f947caf.js +1 -0
  425. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-f1b0daea9f947caf.js +1 -0
  426. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-f1b0daea9f947caf.js +1 -0
  427. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-f1b0daea9f947caf.js +1 -0
  428. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-f1b0daea9f947caf.js +1 -0
  429. package/.next/standalone/.next/static/chunks/app/api/auth/refresh/route-f1b0daea9f947caf.js +1 -0
  430. package/.next/standalone/.next/static/chunks/app/api/auth/session/route-f1b0daea9f947caf.js +1 -0
  431. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-f1b0daea9f947caf.js +1 -0
  432. package/.next/standalone/.next/static/chunks/app/api/comments/route-f1b0daea9f947caf.js +1 -0
  433. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-f1b0daea9f947caf.js +1 -0
  434. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-f1b0daea9f947caf.js +1 -0
  435. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-f1b0daea9f947caf.js +1 -0
  436. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-f1b0daea9f947caf.js +1 -0
  437. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-f1b0daea9f947caf.js +1 -0
  438. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-f1b0daea9f947caf.js +1 -0
  439. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-f1b0daea9f947caf.js +1 -0
  440. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-f1b0daea9f947caf.js +1 -0
  441. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-f1b0daea9f947caf.js +1 -0
  442. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-f1b0daea9f947caf.js +1 -0
  443. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-f1b0daea9f947caf.js +1 -0
  444. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-f1b0daea9f947caf.js +1 -0
  445. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-f1b0daea9f947caf.js +1 -0
  446. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-f1b0daea9f947caf.js +1 -0
  447. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-f1b0daea9f947caf.js +1 -0
  448. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-f1b0daea9f947caf.js +1 -0
  449. package/.next/standalone/.next/static/chunks/app/api/events/route-f1b0daea9f947caf.js +1 -0
  450. package/.next/standalone/.next/static/chunks/app/api/health/route-f1b0daea9f947caf.js +1 -0
  451. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-f1b0daea9f947caf.js +1 -0
  452. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-f1b0daea9f947caf.js +1 -0
  453. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-f1b0daea9f947caf.js +1 -0
  454. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-f1b0daea9f947caf.js +1 -0
  455. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-f1b0daea9f947caf.js +1 -0
  456. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-f1b0daea9f947caf.js +1 -0
  457. package/.next/standalone/.next/static/chunks/app/api/keepalive/route-f1b0daea9f947caf.js +1 -0
  458. package/.next/standalone/.next/static/chunks/app/api/mcp/route-f1b0daea9f947caf.js +1 -0
  459. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-f1b0daea9f947caf.js +1 -0
  460. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-f1b0daea9f947caf.js +1 -0
  461. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-f1b0daea9f947caf.js +1 -0
  462. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-f1b0daea9f947caf.js +1 -0
  463. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-f1b0daea9f947caf.js +1 -0
  464. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-f1b0daea9f947caf.js +1 -0
  465. package/.next/standalone/.next/static/chunks/app/api/notifications/route-f1b0daea9f947caf.js +1 -0
  466. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-f1b0daea9f947caf.js +1 -0
  467. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-f1b0daea9f947caf.js +1 -0
  468. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-f1b0daea9f947caf.js +1 -0
  469. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-f1b0daea9f947caf.js +1 -0
  470. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-f1b0daea9f947caf.js +1 -0
  471. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-f1b0daea9f947caf.js +1 -0
  472. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-f1b0daea9f947caf.js +1 -0
  473. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-f1b0daea9f947caf.js +1 -0
  474. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-f1b0daea9f947caf.js +1 -0
  475. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-f1b0daea9f947caf.js +1 -0
  476. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-f1b0daea9f947caf.js +1 -0
  477. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-f1b0daea9f947caf.js +1 -0
  478. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-f1b0daea9f947caf.js +1 -0
  479. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-f1b0daea9f947caf.js +1 -0
  480. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-f1b0daea9f947caf.js +1 -0
  481. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-f1b0daea9f947caf.js +1 -0
  482. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-f1b0daea9f947caf.js +1 -0
  483. package/.next/standalone/.next/static/chunks/app/api/projects/route-f1b0daea9f947caf.js +1 -0
  484. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-f1b0daea9f947caf.js +1 -0
  485. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-f1b0daea9f947caf.js +1 -0
  486. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-f1b0daea9f947caf.js +1 -0
  487. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-f1b0daea9f947caf.js +1 -0
  488. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-f1b0daea9f947caf.js +1 -0
  489. package/.next/standalone/.next/static/chunks/app/api/search/route-f1b0daea9f947caf.js +1 -0
  490. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-f1b0daea9f947caf.js +1 -0
  491. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-f1b0daea9f947caf.js +1 -0
  492. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-f1b0daea9f947caf.js +1 -0
  493. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-f1b0daea9f947caf.js +1 -0
  494. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-f1b0daea9f947caf.js +1 -0
  495. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-f1b0daea9f947caf.js +1 -0
  496. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-f1b0daea9f947caf.js +1 -0
  497. package/.next/standalone/.next/static/chunks/app/layout-e3a49e06950a057f.js +1 -0
  498. package/.next/standalone/.next/static/chunks/app/login/callback/{page-0edd93f50cb4f6ea.js → page-6cad93f5c610b047.js} +1 -1
  499. package/.next/standalone/.next/static/chunks/app/login/page-d2513f477211dd6f.js +1 -0
  500. package/.next/standalone/.next/static/chunks/app/login/pick-workspace/{page-e0444ad8b50121f5.js → page-597e0f3377f18d29.js} +1 -1
  501. package/.next/standalone/.next/static/chunks/app/login/silent-refresh/{page-a9960ea858db6752.js → page-a26d1af61578c96e.js} +1 -1
  502. package/.next/standalone/.next/static/chunks/app/onboarding/page-2936274fb252329e.js +1 -0
  503. package/.next/standalone/.next/static/chunks/app/page-075afd218994d377.js +1 -0
  504. package/.next/standalone/.next/static/chunks/{webpack-039590181c63871d.js → webpack-ed3555ea61243391.js} +1 -1
  505. package/.next/standalone/.next/static/css/6e8fd46b062fd4fc.css +1 -0
  506. package/.next/standalone/package.json +1 -1
  507. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +4 -0
  508. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +4 -0
  509. package/README.md +49 -15
  510. package/README.zh.md +49 -15
  511. package/chorus.mjs +30 -14
  512. package/cli/client-args.mjs +18 -2
  513. package/cli/codex-session-map.mjs +117 -0
  514. package/cli/codex-spawner.mjs +312 -0
  515. package/cli/daemon-agent.mjs +32 -6
  516. package/cli/daemon-banner.mjs +54 -6
  517. package/cli/daemon-config.mjs +118 -0
  518. package/cli/daemon.mjs +348 -167
  519. package/cli/event-router.mjs +273 -12
  520. package/cli/login.mjs +77 -34
  521. package/cli/server-signal-handlers.mjs +41 -0
  522. package/cli/spawner-select.mjs +30 -0
  523. package/cli/sse-listener.mjs +56 -6
  524. package/cli/upload-hooks.mjs +73 -8
  525. package/cli/waker.mjs +36 -8
  526. package/package.json +1 -1
  527. package/prisma/migrations/20260622115159_add_daemon_connection_cwd/migration.sql +9 -0
  528. package/prisma/migrations/20260623020208_task_pinned_target_instance/migration.sql +3 -0
  529. package/prisma/migrations/20260624142248_add_agent_instance/migration.sql +31 -0
  530. package/prisma/migrations/20260624165025_drop_task_target_host_cwd/migration.sql +10 -0
  531. package/prisma/schema.prisma +69 -3
  532. package/.next/standalone/.next/server/chunks/1064.js +0 -1
  533. package/.next/standalone/.next/server/chunks/2213.js +0 -1
  534. package/.next/standalone/.next/server/chunks/3371.js +0 -1
  535. package/.next/standalone/.next/server/chunks/369.js +0 -1
  536. package/.next/standalone/.next/server/chunks/4958.js +0 -1
  537. package/.next/standalone/.next/server/chunks/5039.js +0 -1
  538. package/.next/standalone/.next/server/chunks/5631.js +0 -1
  539. package/.next/standalone/.next/server/chunks/6461.js +0 -1
  540. package/.next/standalone/.next/server/chunks/6712.js +0 -1
  541. package/.next/standalone/.next/server/chunks/7867.js +0 -1
  542. package/.next/standalone/.next/server/chunks/7897.js +0 -1
  543. package/.next/standalone/.next/server/chunks/8012.js +0 -1
  544. package/.next/standalone/.next/server/chunks/8245.js +0 -31
  545. package/.next/standalone/.next/server/chunks/9629.js +0 -1
  546. package/.next/standalone/.next/server/chunks/9725.js +0 -1
  547. package/.next/standalone/.next/static/GQvpOux3M9CaxkMjL9GAI/_buildManifest.js +0 -1
  548. package/.next/standalone/.next/static/chunks/1217-323cc20b73ebfde9.js +0 -1
  549. package/.next/standalone/.next/static/chunks/16984-8ab5580b8e63a200.js +0 -1
  550. package/.next/standalone/.next/static/chunks/1879-7a8b283283218df2.js +0 -1
  551. package/.next/standalone/.next/static/chunks/19276-50b367d7b93d5f34.js +0 -1
  552. package/.next/standalone/.next/static/chunks/23466-e1176a6d814f4897.js +0 -1
  553. package/.next/standalone/.next/static/chunks/38040-a8687f86dd8e9d67.js +0 -1
  554. package/.next/standalone/.next/static/chunks/4860.8bdb37c964f92e48.js +0 -1
  555. package/.next/standalone/.next/static/chunks/59296-783831c43aa0162e.js +0 -1
  556. package/.next/standalone/.next/static/chunks/60648-36ccbee4ce232d52.js +0 -1
  557. package/.next/standalone/.next/static/chunks/60694-68232120903209df.js +0 -1
  558. package/.next/standalone/.next/static/chunks/64648-ece4e2a59672cf63.js +0 -1
  559. package/.next/standalone/.next/static/chunks/66205-8d7eae6a0f0a032d.js +0 -1
  560. package/.next/standalone/.next/static/chunks/66969-12f0b22c51f5a410.js +0 -1
  561. package/.next/standalone/.next/static/chunks/70536-b8bf71098ae11f07.js +0 -1
  562. package/.next/standalone/.next/static/chunks/76803-7ac4024b2ae89843.js +0 -1
  563. package/.next/standalone/.next/static/chunks/78389-b32edc6bd5c570a9.js +0 -1
  564. package/.next/standalone/.next/static/chunks/78584-eb2fa8cf2f266329.js +0 -1
  565. package/.next/standalone/.next/static/chunks/78917-150ed14a99844aab.js +0 -1
  566. package/.next/standalone/.next/static/chunks/84541-1f4c2a40f7722667.js +0 -10
  567. package/.next/standalone/.next/static/chunks/8574-b9739eb8d054c793.js +0 -1
  568. package/.next/standalone/.next/static/chunks/99373.12370329b9ab6beb.js +0 -1
  569. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-0a28456fea4ce95a.js +0 -1
  570. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-a79969c5c9aadacd.js +0 -1
  571. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page-4bc556c2fc8f3d24.js +0 -1
  572. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-a28f0eaa6f4ac94a.js +0 -1
  573. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-ef82b871895245ea.js +0 -1
  574. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-2c9bcbd11ddb8661.js +0 -1
  575. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-630b168598513ce8.js +0 -1
  576. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-99639479cc98965f.js +0 -1
  577. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-335f2450e44a0fba.js +0 -1
  578. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page-4a191d69b2b6e880.js +0 -1
  579. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/page-0faebb478be4c85d.js +0 -1
  580. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-2e8fcb72687100df.js +0 -1
  581. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  582. package/.next/standalone/.next/static/chunks/app/api/admin/companies/route-4bc556c2fc8f3d24.js +0 -1
  583. package/.next/standalone/.next/static/chunks/app/api/admin/login/route-4bc556c2fc8f3d24.js +0 -1
  584. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-4bc556c2fc8f3d24.js +0 -1
  585. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-4bc556c2fc8f3d24.js +0 -1
  586. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  587. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-4bc556c2fc8f3d24.js +0 -1
  588. package/.next/standalone/.next/static/chunks/app/api/agents/route-4bc556c2fc8f3d24.js +0 -1
  589. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  590. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-4bc556c2fc8f3d24.js +0 -1
  591. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-4bc556c2fc8f3d24.js +0 -1
  592. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-4bc556c2fc8f3d24.js +0 -1
  593. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-4bc556c2fc8f3d24.js +0 -1
  594. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-4bc556c2fc8f3d24.js +0 -1
  595. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-4bc556c2fc8f3d24.js +0 -1
  596. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-4bc556c2fc8f3d24.js +0 -1
  597. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-4bc556c2fc8f3d24.js +0 -1
  598. package/.next/standalone/.next/static/chunks/app/api/auth/refresh/route-4bc556c2fc8f3d24.js +0 -1
  599. package/.next/standalone/.next/static/chunks/app/api/auth/session/route-4bc556c2fc8f3d24.js +0 -1
  600. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-4bc556c2fc8f3d24.js +0 -1
  601. package/.next/standalone/.next/static/chunks/app/api/comments/route-4bc556c2fc8f3d24.js +0 -1
  602. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-4bc556c2fc8f3d24.js +0 -1
  603. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-4bc556c2fc8f3d24.js +0 -1
  604. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-4bc556c2fc8f3d24.js +0 -1
  605. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-4bc556c2fc8f3d24.js +0 -1
  606. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-4bc556c2fc8f3d24.js +0 -1
  607. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-4bc556c2fc8f3d24.js +0 -1
  608. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-4bc556c2fc8f3d24.js +0 -1
  609. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-4bc556c2fc8f3d24.js +0 -1
  610. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-4bc556c2fc8f3d24.js +0 -1
  611. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-4bc556c2fc8f3d24.js +0 -1
  612. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-4bc556c2fc8f3d24.js +0 -1
  613. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-4bc556c2fc8f3d24.js +0 -1
  614. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  615. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-4bc556c2fc8f3d24.js +0 -1
  616. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-4bc556c2fc8f3d24.js +0 -1
  617. package/.next/standalone/.next/static/chunks/app/api/events/route-4bc556c2fc8f3d24.js +0 -1
  618. package/.next/standalone/.next/static/chunks/app/api/health/route-4bc556c2fc8f3d24.js +0 -1
  619. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-4bc556c2fc8f3d24.js +0 -1
  620. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-4bc556c2fc8f3d24.js +0 -1
  621. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-4bc556c2fc8f3d24.js +0 -1
  622. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-4bc556c2fc8f3d24.js +0 -1
  623. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-4bc556c2fc8f3d24.js +0 -1
  624. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  625. package/.next/standalone/.next/static/chunks/app/api/mcp/route-4bc556c2fc8f3d24.js +0 -1
  626. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-4bc556c2fc8f3d24.js +0 -1
  627. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-4bc556c2fc8f3d24.js +0 -1
  628. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-4bc556c2fc8f3d24.js +0 -1
  629. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-4bc556c2fc8f3d24.js +0 -1
  630. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-4bc556c2fc8f3d24.js +0 -1
  631. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-4bc556c2fc8f3d24.js +0 -1
  632. package/.next/standalone/.next/static/chunks/app/api/notifications/route-4bc556c2fc8f3d24.js +0 -1
  633. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-4bc556c2fc8f3d24.js +0 -1
  634. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-4bc556c2fc8f3d24.js +0 -1
  635. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  636. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-4bc556c2fc8f3d24.js +0 -1
  637. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-4bc556c2fc8f3d24.js +0 -1
  638. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-4bc556c2fc8f3d24.js +0 -1
  639. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-4bc556c2fc8f3d24.js +0 -1
  640. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-4bc556c2fc8f3d24.js +0 -1
  641. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-4bc556c2fc8f3d24.js +0 -1
  642. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-4bc556c2fc8f3d24.js +0 -1
  643. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-4bc556c2fc8f3d24.js +0 -1
  644. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-4bc556c2fc8f3d24.js +0 -1
  645. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-4bc556c2fc8f3d24.js +0 -1
  646. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  647. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-4bc556c2fc8f3d24.js +0 -1
  648. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-4bc556c2fc8f3d24.js +0 -1
  649. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-4bc556c2fc8f3d24.js +0 -1
  650. package/.next/standalone/.next/static/chunks/app/api/projects/route-4bc556c2fc8f3d24.js +0 -1
  651. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-4bc556c2fc8f3d24.js +0 -1
  652. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-4bc556c2fc8f3d24.js +0 -1
  653. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-4bc556c2fc8f3d24.js +0 -1
  654. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-4bc556c2fc8f3d24.js +0 -1
  655. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  656. package/.next/standalone/.next/static/chunks/app/api/search/route-4bc556c2fc8f3d24.js +0 -1
  657. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  658. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-4bc556c2fc8f3d24.js +0 -1
  659. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-4bc556c2fc8f3d24.js +0 -1
  660. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-4bc556c2fc8f3d24.js +0 -1
  661. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-4bc556c2fc8f3d24.js +0 -1
  662. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-4bc556c2fc8f3d24.js +0 -1
  663. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-4bc556c2fc8f3d24.js +0 -1
  664. package/.next/standalone/.next/static/chunks/app/layout-9963339572e2e64e.js +0 -1
  665. package/.next/standalone/.next/static/chunks/app/login/page-c64b8d40a0781b4c.js +0 -1
  666. package/.next/standalone/.next/static/chunks/app/onboarding/page-e9a69a0c537c704f.js +0 -1
  667. package/.next/standalone/.next/static/chunks/app/page-8b4baa950c78ffe7.js +0 -1
  668. package/.next/standalone/.next/static/css/1d9aaac01758b297.css +0 -1
  669. /package/.next/standalone/.next/static/{GQvpOux3M9CaxkMjL9GAI → GmBblfxcDziUENBiEap4B}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[19835],{4365:(e,t,s)=>{"use strict";s.d(t,{G7:()=>o,L$:()=>m,h_:()=>u,oI:()=>c,uB:()=>l,xL:()=>d});var a=s(90508);s(1856);var r=s(64731),n=s(30044),i=s(24377);function l(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB,{"data-slot":"command",className:(0,i.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...s})}function o(e){let{className:t,...s}=e;return(0,a.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,a.jsx)(n.A,{className:"size-4 shrink-0 opacity-50"}),(0,a.jsx)(r.uB.Input,{"data-slot":"command-input",className:(0,i.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...s})]})}function c(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB.List,{"data-slot":"command-list",className:(0,i.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",t),...s})}function d(e){let{...t}=e;return(0,a.jsx)(r.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...t})}function m(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB.Group,{"data-slot":"command-group",className:(0,i.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",t),...s})}function u(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB.Item,{"data-slot":"command-item",className:(0,i.cn)("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",t),...s})}},6493:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("file-spreadsheet",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]])},6841:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("file-type",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M11 18h2",key:"12mj7e"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"M9 13v-.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 .5.5v.5",key:"qbrxap"}]])},11031:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("clipboard-check",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"m9 14 2 2 4-4",key:"df797q"}]])},12210:(e,t,s)=>{"use strict";s.d(t,{d:()=>i});var a=s(90508);s(1856);var r=s(60322),n=s(24377);function i(e){let{className:t,...s}=e;return(0,a.jsx)(r.Root,{"data-slot":"switch",className:(0,n.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:ring-ring/50 inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...s,children:(0,a.jsx)(r.Thumb,{"data-slot":"switch-thumb",className:(0,n.cn)("bg-background pointer-events-none block size-4 rounded-full ring-0 shadow-lg transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})})}},13108:(e,t,s)=>{"use strict";s.d(t,{C:()=>d,K:()=>u});var a=s(90508),r=s(39268),n=s(97413),i=s(5616),l=s(22922),o=s(14554),c=s(12210);function d(e){let{items:t,onChange:s,disabled:d}=e,m=(0,r.c)(),u=(e,a)=>{let r=t.slice();r[e]={...r[e],...a},s(r)};return(0,a.jsxs)("div",{className:"space-y-3",children:[t.length>0&&(0,a.jsx)("div",{className:"space-y-2",children:t.map((e,r)=>(0,a.jsxs)("div",{className:"flex items-start gap-2 rounded-lg border border-[#E5E2DC] bg-[#FAF8F4] p-2.5",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:(0,a.jsx)(o.p,{value:e.description,onChange:e=>u(r,{description:e.target.value}),placeholder:m("acceptanceCriteria.criterionPlaceholder"),className:"border-[#E5E2DC] text-sm focus-visible:ring-[#C67A52] h-8",disabled:d})}),(0,a.jsxs)("div",{className:"flex items-center gap-2 shrink-0 pt-1",children:[(0,a.jsx)(c.d,{checked:e.required,onCheckedChange:e=>u(r,{required:e}),className:"data-[state=checked]:bg-[#C67A52]",disabled:d}),(0,a.jsx)("span",{className:"text-[10px] font-medium text-[#6B6B6B] min-w-[52px]",children:e.required?m("acceptanceCriteria.required"):m("acceptanceCriteria.optional")}),(0,a.jsx)(l.$,{variant:"outline",size:"sm",className:"h-7 w-7 p-0 border-[#E5E2DC] text-[#9A9A9A] hover:text-[#D32F2F] hover:border-[#D32F2F] hover:bg-[#FFEBEE]",onClick:()=>{s(t.filter((e,t)=>t!==r))},disabled:d,type:"button",children:(0,a.jsx)(n.A,{className:"h-3 w-3"})})]})]},r))}),(0,a.jsxs)(l.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-[#E5E2DC] text-xs text-[#6B6B6B] hover:text-[#C67A52] hover:border-[#C67A52]",onClick:()=>{s([...t,{description:"",required:!0}])},disabled:d,type:"button",children:[(0,a.jsx)(i.A,{className:"h-3 w-3"}),m("acceptanceCriteria.addCriterion")]})]})}function m(e){return{description:e.description.trim(),required:!!e.required}}function u(e,t){if(e.length!==t.length)return!0;for(let s=0;s<e.length;s++){let a=m(e[s]),r=m(t[s]);if(a.description!==r.description||a.required!==r.required)return!0}return!1}},14161:(e,t,s)=>{"use strict";s.d(t,{ProposalEditor:()=>ed});var a=s(90508),r=s(1856),n=s(23675),i=s(39268),l=s(26145),o=s(75380);s(33805);var c=s(10196),d=s.n(c),m=s(56770),u=s(66206);let x=(0,u.A)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);var p=s(75320);let h=(0,u.A)("file-check",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m9 15 2 2 4-4",key:"1grp1n"}]]),f=(0,u.A)("book-marked",[["path",{d:"M10 2v8l3-3 3 3V2",key:"sqw3rj"}],["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]]);var g=s(5616),b=s(17730),v=s(78948);let j=(0,u.A)("list-todo",[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["rect",{x:"3",y:"4",width:"6",height:"6",rx:"1",key:"cif1o7"}]]),N=(0,u.A)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);var y=s(11031),C=s(76111),w=s(47754),A=s(96213),E=s(63964);function k(e,t){let s=new Set(e.map(e=>e.uuid));return t.filter(e=>!s.has(e.uuid)).map(e=>e.uuid)}function F(e,t){let s=new Set(t.map(e=>e.uuid));return e.filter(e=>!s.has(e.uuid)).map(e=>e.uuid)}var D=s(69386),S=s(52217);let B=(0,S.createServerReference)("409a0c6312b04e5557ded8aa7907619e9fc528f7a4",S.callServer,void 0,S.findSourceMapURL,"getProposalDraftsAction");var P=s(48416),R=s(22922),T=s(57731),U=s(14554),M=s(15972),z=s(88064),O=s(97438),_=s(91846),$=s(97261);let q=(0,S.createServerReference)("70c8ee42c49e9a793092947b3a4b0c4b6e8eb5d2df",S.callServer,void 0,S.findSourceMapURL,"updateTaskDraftAction"),L=(0,S.createServerReference)("70cfbeaaee689233b167685c79c685a1250576d09a",S.callServer,void 0,S.findSourceMapURL,"updateDocumentDraftAction"),I=(0,S.createServerReference)("6086f5f1a449c2fd79244acac87bf5ce9848008419",S.callServer,void 0,S.findSourceMapURL,"addDocumentDraftAction"),G=(0,S.createServerReference)("607d5259b0b5c6738b1609aeb2c64518eaff675054",S.callServer,void 0,S.findSourceMapURL,"removeDocumentDraftAction");var V=s(9160),Z=s(57893),J=s(85226),K=s(60532),H=s(97413),Q=s(64993),W=s(13108),X=s(51817),Y=s(16544),ee=s(65626);let et=(0,S.createServerReference)("608202956d80854c0fbf2397d85b821dcba65bab65",S.callServer,void 0,S.findSourceMapURL,"addTaskDraftAction"),es=(0,S.createServerReference)("6083535155f7b8514af0c63fa39e8a0c2c90012730",S.callServer,void 0,S.findSourceMapURL,"removeTaskDraftAction"),ea={high:{bg:"bg-[#FFEBEE]",text:"text-[#C4574C]"},medium:{bg:"bg-[#FFF3E0]",text:"text-[#E65100]"},low:{bg:"bg-[#F5F2EC]",text:"text-[#6B6B6B]"}};function er(e){var t,s;let{taskDraft:l,allTaskDrafts:o,proposalUuid:c,canEdit:d,onClose:m,onSaved:u,onDeleted:x}=e,p=(0,i.c)(),h=(0,n.useRouter)(),[f,b]=(0,r.useTransition)(),[v,j]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=setTimeout(()=>j(!0),300);return()=>clearTimeout(e)},[]);let w=null===l,[A,E]=(0,r.useState)(w),[k,F]=(0,r.useState)((null==l?void 0:l.title)||""),[D,S]=(0,r.useState)((null==l?void 0:l.description)||""),[B,P]=(0,r.useState)((null==l?void 0:l.priority)||"medium"),[O,L]=(0,r.useState)((null==l||null==(t=l.storyPoints)?void 0:t.toString())||""),[I,G]=(0,r.useState)((null==l||null==(s=l.acceptanceCriteriaItems)?void 0:s.map(e=>{var t;return{description:e.description,required:null==(t=e.required)||t}}))||[]),[er,en]=(0,r.useState)([]),[ei,el]=(0,r.useState)(null),eo=w?er:(null==l?void 0:l.dependsOnDraftUuids)||[],ec=(0,r.useMemo)(()=>eo.map(e=>o.find(t=>t.uuid===e)).filter(Boolean),[eo,o]),ed=(0,r.useMemo)(()=>{let e=new Set(eo);return o.filter(t=>t.uuid!==(null==l?void 0:l.uuid)&&!e.has(t.uuid))},[null==l?void 0:l.uuid,eo,o]),em=()=>{var e,t;l&&(F(l.title),S(l.description||""),P(l.priority||"medium"),L((null==(e=l.storyPoints)?void 0:e.toString())||""),G((null==(t=l.acceptanceCriteriaItems)?void 0:t.map(e=>{var t;return{description:e.description,required:null==(t=e.required)||t}}))||[]),el(null),E(!0))},eu=()=>{if(w)return void m();if(E(!1),l){var e,t;F(l.title),S(l.description||""),P(l.priority||"medium"),L((null==(e=l.storyPoints)?void 0:e.toString())||""),G((null==(t=l.acceptanceCriteriaItems)?void 0:t.map(e=>{var t;return{description:e.description,required:null==(t=e.required)||t}}))||[])}el(null)},ex=ea[(null==l?void 0:l.priority)||"medium"]||ea.medium,ep=()=>(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:p("proposals.dependsOn")}),ec.length>0?(0,a.jsx)("div",{className:"mt-2 space-y-1.5",children:ec.map(e=>(0,a.jsxs)("div",{className:"group flex items-center justify-between rounded-lg bg-[#FAF8F4] p-2.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,a.jsx)(C.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C67A52]"}),(0,a.jsx)("span",{className:"text-xs text-[#2C2C2C] truncate",children:e.title})]}),d&&(0,a.jsx)(R.$,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 transition-opacity ml-2 shrink-0",onClick:()=>(e=>{if(w)return void en(t=>t.filter(t=>t!==e));if(!l)return;let t=(l.dependsOnDraftUuids||[]).filter(t=>t!==e);b(async()=>{let e=await q(c,l.uuid,{dependsOnDraftUuids:t});e.success?(h.refresh(),u()):el(e.error||p("proposals.failedToAddDependency"))})})(e.uuid),disabled:f,children:(0,a.jsx)(V.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] hover:text-[#D32F2F]"})})]},e.uuid))}):(0,a.jsx)("p",{className:"mt-2 text-sm italic text-[#9A9A9A]",children:p("proposals.noDependencies")}),d&&ed.length>0&&(0,a.jsx)("div",{className:"mt-3",children:(0,a.jsxs)(_.l6,{onValueChange:e=>(e=>{if(w)return void en(t=>[...t,e]);if(!l)return;if(((e,t)=>{let s=new Set,a=[e];for(;a.length>0;){let e=a.shift();if(e===t)return!0;if(s.has(e))continue;s.add(e);let r=o.find(t=>t.uuid===e);(null==r?void 0:r.dependsOnDraftUuids)&&a.push(...r.dependsOnDraftUuids)}return!1})(e,l.uuid))return void el(p("proposals.cyclicDependency"));el(null);let t=[...l.dependsOnDraftUuids||[],e];b(async()=>{let e=await q(c,l.uuid,{dependsOnDraftUuids:t});e.success?(h.refresh(),u()):el(e.error||p("proposals.failedToAddDependency"))})})(e),children:[(0,a.jsx)(_.bq,{className:"h-8 border-[#E5E0D8] text-xs text-[#6B6B6B] focus:ring-[#C67A52]",children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(g.A,{className:"h-3 w-3"}),(0,a.jsx)(_.yv,{placeholder:p("proposals.selectDependency")})]})}),(0,a.jsx)(_.gC,{children:ed.map(e=>(0,a.jsx)(_.eb,{value:e.uuid,children:(0,a.jsx)("span",{className:"truncate",children:e.title})},e.uuid))})]},ec.length)})]});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:m}),(0,a.jsxs)("div",{className:"fixed right-0 top-14 md:top-0 z-50 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-white shadow-xl border-l border-[#E5E0D8] ".concat(v?"":"animate-in slide-in-from-right duration-300"),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between border-b border-[#F5F2EC] px-6 py-5",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:A?(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:w?p("proposals.newTaskDraft"):p("proposals.editTaskDraft")}):l?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C] truncate",children:l.title}),(0,a.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[l.priority&&(0,a.jsx)(T.E,{className:"text-[10px] font-medium border-0 ".concat(ex.bg," ").concat(ex.text),children:p("priority.".concat(l.priority))}),null!=l.storyPoints&&l.storyPoints>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 rounded bg-[#F5F2EC] px-2 py-0.5 text-xs font-medium text-[#6B6B6B]",children:[(0,a.jsx)(N,{className:"h-2.5 w-2.5 text-[#C67A52]"}),l.storyPoints," SP"]})]})]}):null}),(0,a.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[l&&!A&&d&&(0,a.jsxs)(R.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-[#E5E0D8] text-[#2C2C2C]",onClick:em,children:[(0,a.jsx)(Z.A,{className:"h-3.5 w-3.5 text-[#6B6B6B]"}),(0,a.jsx)("span",{className:"text-xs",children:p("common.edit")})]}),(0,a.jsx)(R.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:A&&!w?eu:m,children:(0,a.jsx)(V.A,{className:"h-4 w-4 text-[#6B6B6B]"})})]})]}),(0,a.jsx)(Q.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,a.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:A?(0,a.jsxs)("div",{className:"space-y-5",children:[ei&&(0,a.jsx)("div",{className:"rounded-lg bg-[#FFEBEE] p-3 text-sm text-[#C4574C]",children:ei}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(z.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-[#2C2C2C]",children:[p("proposals.taskTitle")," *"]}),(0,a.jsx)(U.p,{id:"edit-title",value:k,onChange:e=>F(e.target.value),placeholder:p("proposals.titlePlaceholder"),className:"border-[#E5E2DC] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(z.J,{htmlFor:"edit-description",className:"text-[13px] font-medium text-[#2C2C2C]",children:p("proposals.taskDescription")}),(0,a.jsx)(M.T,{id:"edit-description",value:D,onChange:e=>S(e.target.value),rows:4,className:"border-[#E5E2DC] text-sm resize-none focus-visible:ring-[#C67A52]",placeholder:p("proposals.descriptionPlaceholder")})]}),(0,a.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(z.J,{htmlFor:"edit-priority",className:"text-[13px] font-medium text-[#2C2C2C]",children:p("proposals.taskPriority")}),(0,a.jsxs)(_.l6,{value:B,onValueChange:P,children:[(0,a.jsx)(_.bq,{className:"border-[#E5E2DC] text-sm focus:ring-[#C67A52]",children:(0,a.jsx)(_.yv,{})}),(0,a.jsxs)(_.gC,{children:[(0,a.jsx)(_.eb,{value:"low",children:p("priority.low")}),(0,a.jsx)(_.eb,{value:"medium",children:p("priority.medium")}),(0,a.jsx)(_.eb,{value:"high",children:p("priority.high")})]})]})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(z.J,{htmlFor:"edit-story-points",className:"text-[13px] font-medium text-[#2C2C2C]",children:p("proposals.taskStoryPoints")}),(0,a.jsx)(U.p,{id:"edit-story-points",type:"number",min:"0",step:"0.5",value:O,onChange:e=>L(e.target.value),placeholder:p("proposals.storyPointsPlaceholder"),className:"border-[#E5E2DC] text-sm focus-visible:ring-[#C67A52]"})]})]}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsxs)(z.J,{className:"text-[13px] font-medium text-[#2C2C2C] flex items-center gap-1.5",children:[(0,a.jsx)(y.A,{className:"h-3.5 w-3.5 text-[#C67A52]"}),p("acceptanceCriteria.title")]}),(0,a.jsx)(W.C,{items:I,onChange:G})]}),ep()]}):l?(0,a.jsxs)(Y.P.div,{variants:ee.qG,initial:"initial",animate:"animate",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:p("common.description")}),(0,a.jsx)("div",{className:"mt-2",children:l.description?(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,a.jsx)($.MarkdownContent,{children:l.description})}):(0,a.jsx)("p",{className:"text-sm italic text-[#9A9A9A]",children:p("common.noDescription")})})]}),l.acceptanceCriteria&&(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:p("tasks.acceptanceCriteria")}),(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,a.jsx)($.MarkdownContent,{children:l.acceptanceCriteria})})})]}),l.acceptanceCriteriaItems&&l.acceptanceCriteriaItems.length>0&&(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsxs)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A] flex items-center gap-1.5",children:[(0,a.jsx)(y.A,{className:"h-3 w-3"}),p("acceptanceCriteria.title")]}),(0,a.jsx)("div",{className:"mt-2 space-y-1.5",children:l.acceptanceCriteriaItems.map((e,t)=>{var s,r;return(0,a.jsxs)("div",{className:"flex items-center gap-2.5 rounded-lg bg-[#FAF8F4] p-2.5",children:[(0,a.jsx)("span",{className:"flex-1 text-[13px] text-[#2C2C2C]",children:e.description}),(0,a.jsx)(T.E,{className:"text-[10px] font-medium border-0 shrink-0 ".concat(null==(s=e.required)||s?"bg-[#FFF3E0] text-[#E65100]":"bg-[#F5F2EC] text-[#6B6B6B]"),children:null==(r=e.required)||r?p("acceptanceCriteria.required"):p("acceptanceCriteria.optional")})]},t)})})]}),ei&&(0,a.jsx)("div",{className:"mt-5 rounded-lg bg-[#FFEBEE] p-2.5 text-xs text-[#C4574C]",children:ei}),ep()]}):null})}),(0,a.jsx)("div",{className:"border-t border-[#F5F2EC] px-6 py-4",children:(0,a.jsx)("div",{className:"flex items-center gap-3",children:A?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(R.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:eu,disabled:f,children:p("common.cancel")}),(0,a.jsx)(R.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:()=>{if(!k.trim())return void el(p("proposals.titleRequired"));el(null),b(async()=>{let e,t=I.filter(e=>e.description.trim().length>0),s={title:k.trim(),description:D.trim()||void 0,priority:B,storyPoints:O?parseFloat(O):void 0,acceptanceCriteriaItems:t.length>0?t.map(e=>{var t;return{description:e.description.trim(),required:null==(t=e.required)||t}}):void 0,...w&&er.length>0?{dependsOnDraftUuids:er}:{}};(e=w?await et(c,s):await q(c,l.uuid,s)).success?(E(!1),h.refresh(),u()):el(e.error||p("proposals.failedToSaveTaskDraft"))})},disabled:f||!k.trim(),children:f?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(J.A,{className:"mr-2 h-4 w-4 animate-spin"}),p("common.saving")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(K.A,{className:"mr-2 h-4 w-4"}),w?p("common.create"):p("common.save")]})})]}):l?(0,a.jsxs)(a.Fragment,{children:[d&&(0,a.jsxs)(R.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:em,children:[(0,a.jsx)(Z.A,{className:"mr-2 h-4 w-4"}),p("common.edit")]}),d&&(0,a.jsx)("div",{className:"ml-auto",children:(0,a.jsxs)(X.Lt,{children:[(0,a.jsx)(X.tv,{asChild:!0,children:(0,a.jsx)(R.$,{variant:"outline",size:"icon",className:"h-9 w-9 border-[#E5E0D8] text-[#D32F2F] hover:bg-[#FFEBEE] hover:text-[#D32F2F] hover:border-[#D32F2F]",children:(0,a.jsx)(H.A,{className:"h-4 w-4"})})}),(0,a.jsxs)(X.EO,{children:[(0,a.jsxs)(X.wd,{children:[(0,a.jsx)(X.r7,{children:p("proposals.deleteTaskDraft")}),(0,a.jsx)(X.$v,{children:p("proposals.deleteTaskDraftConfirm")})]}),(0,a.jsxs)(X.ck,{children:[(0,a.jsx)(X.Zr,{children:p("common.cancel")}),(0,a.jsx)(X.Rx,{onClick:()=>{l&&b(async()=>{(await es(c,l.uuid)).success&&(h.refresh(),null==x||x())})},disabled:f,className:"bg-[#D32F2F] hover:bg-[#B71C1C] text-white",children:f?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(J.A,{className:"mr-2 h-4 w-4 animate-spin"}),p("common.delete")]}):p("common.delete")})]})]})]})})]}):null})})]})]})}var en=s(67712);let ei={high:{bg:"bg-[#FFEBEE]",text:"text-[#C4574C]"},medium:{bg:"bg-[#FFF3E0]",text:"text-[#E65100]"},low:{bg:"bg-[#F5F2EC]",text:"text-[#6B6B6B]"}},el={prd:{icon:m.A,bg:"bg-[#FFF3E0]",fg:"text-[#E07A5F]",subtitleKey:"proposals.docSubtitlePrd"},tech_design:{icon:x,bg:"bg-[#E8F0FE]",fg:"text-[#4285F4]",subtitleKey:"proposals.docSubtitleTechDesign"},adr:{icon:p.A,bg:"bg-[#E8F5E9]",fg:"text-[#4CAF50]",subtitleKey:"proposals.docSubtitleAdr"},spec:{icon:h,bg:"bg-[#F3E8FD]",fg:"text-[#7C3AED]",subtitleKey:"proposals.docSubtitleSpec"},guide:{icon:f,bg:"bg-[#FFF8E1]",fg:"text-[#F9A825]",subtitleKey:"proposals.docSubtitleGuide"}},eo={taskDraftNode:function(e){let{data:t}=e,s=(0,i.c)(),r=ei[t.priority||"medium"]||ei.medium;return(0,a.jsxs)("div",{className:"rounded-lg border-2 border-[#E5E2DC] bg-white px-4 py-3 shadow-sm min-w-[200px] max-w-[260px] cursor-pointer hover:border-[#C67A52] transition-colors",children:[(0,a.jsx)(l.h7,{type:"target",position:o.yX.Top,className:"!bg-[#C67A52] !w-2 !h-2"}),(0,a.jsx)("div",{className:"flex items-center gap-2 mb-1.5",children:t.priority&&(0,a.jsx)(T.E,{className:"text-[10px] border-0 ".concat(r.bg," ").concat(r.text),children:s("priority.".concat(t.priority))})}),(0,a.jsx)("p",{className:"text-xs font-medium text-[#2C2C2C] leading-snug line-clamp-2",children:t.title}),(0,a.jsx)(l.h7,{type:"source",position:o.yX.Bottom,className:"!bg-[#C67A52] !w-2 !h-2"})]})}},ec={animated:!0,style:{stroke:"#C67A52",strokeWidth:2},markerEnd:{type:"arrowclosed",color:"#C67A52"}};function ed(e){let{proposalUuid:t,status:s,documentDrafts:o,taskDrafts:c,onStatusChange:u}=e,x=(0,i.c)(),p=(0,n.useRouter)(),[h,f]=(0,r.useTransition)(),{getPresence:S}=(0,w.xQ)();S("proposal",t);let[V,Z]=(0,r.useState)(o),[J,K]=(0,r.useState)(c),[H,Q]=(0,r.useState)(new Set),W=(0,r.useRef)(V);W.current=V;let X=(0,r.useRef)(J);X.current=J;let Y=(0,r.useRef)(null),ee=(0,r.useRef)(null),[et,es]=(0,r.useState)("cards"),[ea,ed]=(0,r.useState)(new Set),[em,eu]=(0,r.useState)(!1),[ex,ep]=(0,r.useState)(null),[eh,ef]=(0,r.useState)("prd"),[eg,eb]=(0,r.useState)(""),[ev,ej]=(0,r.useState)(""),[eN,ey]=(0,r.useState)(null),[eC,ew]=(0,r.useState)(!1),[eA,eE]=(0,r.useState)(null),[ek,eF]=(0,r.useState)(null),eD="draft"===s;(0,E.w0)("proposal",t,async e=>{if(["created","updated","deleted"].includes(e.action)&&!em&&!eN&&!eC)try{var a,r,n,i,l,o,c,d,m,x;let e=await B(t),h=null!=(a=W.current)?a:[],f=null!=(r=X.current)?r:[],g=null!=(n=e.documentDrafts)?n:[],b=null!=(i=e.taskDrafts)?i:[],v=[...k(h,g),...k(f,b)];if(v.length>0){let e=S("proposal",t)[0];if(e)for(let s of v)(0,w.fv)({entityType:"proposal",entityUuid:t,subEntityType:"draft",subEntityUuid:s,agentUuid:e.agentUuid,agentName:e.agentName,action:"mutate"})}let j=[...F(h,g),...F(f,b)];j.length>0?(Y.current=g,ee.current=b,Q(new Set(j)),setTimeout(()=>{var e,t;Z(null!=(e=Y.current)?e:g),K(null!=(t=ee.current)?t:b),Y.current=null,ee.current=null,Q(new Set)},500)):(Y.current=g,ee.current=b,Z(g),K(b)),o=e.status,c=h.length,d=g.length,m=f.length,x=b.length,(null!=o&&o!==s||"draft"===s&&(d!==c||x!==m))&&p.refresh(),null==u||u(null!=(l=e.status)?l:s)}catch(e){en.q.warn("[ProposalEditor] Failed to refresh drafts:",e)}});let eS=(0,r.useMemo)(()=>eN&&J&&J.find(e=>e.uuid===eN)||null,[eN,J]),[eB,eP,eR]=(0,l.ck)([]),[eT,eU,eM]=(0,l.fM)([]);(0,r.useEffect)(()=>{if(!J||0===J.length){eP([]),eU([]);return}let e=J.map(e=>({id:e.uuid,type:"taskDraftNode",position:{x:0,y:0},data:{title:e.title,priority:e.priority||"medium"}})),t=[];J.forEach(e=>{e.dependsOnDraftUuids&&e.dependsOnDraftUuids.forEach((s,a)=>{t.push({id:"e-".concat(e.uuid,"-").concat(a),source:s,target:e.uuid,...ec})})});let{nodes:s,edges:a}=function(e,t){let s=new(d()).graphlib.Graph;return s.setDefaultEdgeLabel(()=>({})),s.setGraph({rankdir:"TB",nodesep:50,ranksep:80}),e.forEach(e=>{s.setNode(e.id,{width:240,height:80})}),t.forEach(e=>{s.setEdge(e.source,e.target)}),d().layout(s),{nodes:e.map(e=>{let t=s.node(e.id);return{...e,position:{x:t.x-120,y:t.y-40}}}),edges:t}}(e,t);eP(s),eU(a)},[J,eP,eU]);let ez=(0,r.useCallback)(async e=>{if(!e.source||!e.target||!eD||e.source===e.target)return;eF(null);let s=e.target,a=e.source,r=null==J?void 0:J.find(e=>e.uuid===s);if(!r)return;let n=r.dependsOnDraftUuids||[];if(n.includes(a))return void eF(x("proposals.dependencyExists"));if(((e,t)=>{let s=new Set,a=[e];for(;a.length>0;){let e=a.shift();if(e===t)return!0;if(s.has(e))continue;s.add(e);let r=null==J?void 0:J.find(t=>t.uuid===e);(null==r?void 0:r.dependsOnDraftUuids)&&a.push(...r.dependsOnDraftUuids)}return!1})(a,s))return void eF(x("proposals.cyclicDependency"));let i=[...n,a];f(async()=>{let e=await q(t,s,{dependsOnDraftUuids:i});e.success?p.refresh():eF(e.error||x("proposals.failedToAddDependency"))})},[eD,J,t,p,f,x]),eO=(0,r.useCallback)((e,t)=>{ew(!1),ey(t.id)},[]),e_=V&&V.length>0,e$=J&&J.length>0,eq=null!==eN||eC;return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(P.Zp,{className:"border-[#E5E2DC] shadow-none rounded-2xl gap-0 py-0 overflow-hidden",children:[(0,a.jsxs)(P.aR,{className:"flex-row items-center justify-between border-b border-[#F5F2EC] px-6 py-4",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(m.A,{className:"h-[18px] w-[18px] text-[#C67A52]"}),(0,a.jsx)(P.ZB,{className:"text-sm font-semibold text-foreground",children:x("proposals.documentDrafts")}),(0,a.jsx)(T.E,{variant:"secondary",className:"border-0 bg-[#F5F2EC] text-[11px] font-medium text-muted-foreground",children:(null==V?void 0:V.length)||0})]}),eD&&(0,a.jsxs)(R.$,{variant:"ghost",size:"sm",onClick:()=>{ep(null),ef("prd"),eb(""),ej(""),eu(!0)},className:"h-7 gap-1 text-xs font-medium text-[#C67A52] hover:bg-[#FFFBF8] hover:text-[#C67A52]",children:[(0,a.jsx)(g.A,{className:"h-3.5 w-3.5"}),x("proposals.addDocumentDraft")]})]}),(0,a.jsx)(P.Wu,{className:"p-0",children:e_?(0,a.jsx)("div",{className:"space-y-0 divide-y divide-[#F5F2EC]",children:V.map(e=>{var s;let r=ea.has(e.uuid),n=el[e.type]||el.guide,i=n.icon;return(0,a.jsx)(A.D,{entityType:"proposal",entityUuid:t,subEntityType:"draft",subEntityUuid:e.uuid,badgeInside:!0,children:(0,a.jsxs)("div",{className:"px-5 py-4 transition-all duration-500 ".concat(H.has(e.uuid)?"opacity-0":""),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("button",{onClick:()=>{var t;return t=e.uuid,void ed(e=>{let s=new Set(e);return s.has(t)?s.delete(t):s.add(t),s})},className:"flex items-center gap-3 text-left cursor-pointer hover:opacity-80 transition-opacity min-w-0",children:[(0,a.jsx)("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-[10px] ".concat(n.bg),children:(0,a.jsx)(i,{className:"h-[18px] w-[18px] ".concat(n.fg)})}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-[13px] font-medium text-foreground truncate",children:e.title}),(0,a.jsx)("div",{className:"text-[11px] text-muted-foreground",children:x(n.subtitleKey)})]}),(0,a.jsx)("span",{className:"text-muted-foreground shrink-0",children:r?(0,a.jsx)(b.A,{className:"h-4 w-4"}):(0,a.jsx)(v.A,{className:"h-4 w-4"})})]}),(0,a.jsxs)("div",{className:"flex gap-1 shrink-0",children:[(0,a.jsx)(D.E,{document:{title:e.title,content:null!=(s=e.content)?s:"",type:e.type,version:"Draft"},variant:"compact"}),eD&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(R.$,{variant:"ghost",size:"sm",onClick:()=>{ep(e),ef(e.type),eb(e.title),ej(e.content),eu(!0)},className:"h-6 text-[11px] text-muted-foreground hover:text-foreground",children:x("proposals.editDraft")}),(0,a.jsx)(R.$,{variant:"ghost",size:"sm",onClick:()=>{confirm(x("common.confirmDelete"))&&f(async()=>{(await G(t,e.uuid)).success&&p.refresh()})},disabled:h,className:"h-6 text-[11px] text-[#C4574C] hover:bg-[#FFEBEE] hover:text-[#C4574C]",children:x("proposals.deleteDraft")})]})]})]}),r&&e.content&&(0,a.jsx)("div",{className:"mt-3 border-t border-[#F5F2EC] pt-4",children:(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-foreground",children:(0,a.jsx)($.MarkdownContent,{children:e.content})})})]})},e.uuid)})}):(0,a.jsxs)("div",{className:"flex flex-col items-center gap-2 px-6 py-8",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-[10px] bg-[#F5F2EC]",children:(0,a.jsx)(m.A,{className:"h-[18px] w-[18px] text-[#D0CCC4]"})}),(0,a.jsx)("p",{className:"text-[13px] text-muted-foreground",children:x("proposals.emptyContainer")})]})})]}),(0,a.jsxs)(P.Zp,{className:"border-[#E5E2DC] shadow-none rounded-2xl gap-0 py-0 overflow-hidden",children:[(0,a.jsxs)(P.aR,{className:"flex-row items-center justify-between border-b border-[#F5F2EC] px-6 py-4",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(j,{className:"h-[18px] w-[18px] text-[#C67A52]"}),(0,a.jsx)(P.ZB,{className:"text-sm font-semibold text-foreground",children:x("proposals.taskDrafts")}),(0,a.jsx)(T.E,{className:"border-0 bg-[#C67A5220] text-[11px] font-semibold text-[#C67A52]",children:(null==J?void 0:J.length)||0})]}),(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[e$&&(0,a.jsxs)("div",{className:"flex rounded-lg bg-[#F5F2EC] p-0.5",children:[(0,a.jsx)("button",{onClick:()=>es("cards"),className:"rounded-md px-3 py-1 text-[11px] font-medium transition-colors ".concat("cards"===et?"bg-white text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:x("proposals.cardsView")}),(0,a.jsx)("button",{onClick:()=>es("dag"),className:"rounded-md px-3 py-1 text-[11px] font-medium transition-colors ".concat("dag"===et?"bg-white text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:"DAG"})]}),eD&&(0,a.jsxs)(R.$,{variant:"ghost",size:"sm",onClick:()=>{ey(null),ew(!0)},className:"h-7 gap-1 text-xs font-medium text-[#C67A52] hover:bg-[#FFFBF8] hover:text-[#C67A52]",children:[(0,a.jsx)(g.A,{className:"h-3.5 w-3.5"}),x("proposals.addTaskDraft")]})]})]}),(0,a.jsx)(P.Wu,{className:"p-0",children:e$?"cards"===et?(0,a.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3 p-5",children:J.map(e=>{var s,r;let n=ei[e.priority||"medium"]||ei.medium,i=(null==(s=e.dependsOnDraftUuids)?void 0:s.length)||0,l=(null==(r=e.acceptanceCriteriaItems)?void 0:r.length)||0,o=eN===e.uuid;return(0,a.jsx)(A.D,{entityType:"proposal",entityUuid:t,subEntityType:"draft",subEntityUuid:e.uuid,children:(0,a.jsxs)("div",{onClick:()=>{ew(!1),ey(e.uuid)},className:"cursor-pointer rounded-[10px] bg-white p-4 transition-all duration-500 flex flex-col gap-2.5 h-full ".concat(H.has(e.uuid)?"opacity-0":""," ").concat(o?"border-[#C67A52] shadow-sm border":"border-[#E5E2DC] hover:border-[#C67A52]/50 border"),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[e.priority&&(0,a.jsx)(T.E,{className:"text-[10px] font-semibold border-0 ".concat(n.bg," ").concat(n.text),children:x("priority.".concat(e.priority))}),null!=e.storyPoints&&e.storyPoints>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-[10px] font-medium text-muted-foreground font-mono",children:[(0,a.jsx)(N,{className:"h-3 w-3 text-muted-foreground"}),e.storyPoints," SP"]})]}),(0,a.jsx)("span",{className:"text-[13px] font-semibold leading-snug text-foreground line-clamp-2",children:e.title}),e.description&&(0,a.jsx)("p",{className:"text-[11px] leading-relaxed text-[#6B6B6B] line-clamp-2",children:e.description}),(0,a.jsxs)("div",{className:"flex items-center gap-3 pt-0.5",children:[l>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-[10px] text-muted-foreground",children:[(0,a.jsx)(y.A,{className:"h-3 w-3 text-[#4CAF50]"}),x("proposals.acCount",{count:l})]}),i>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-[10px] text-muted-foreground",children:[(0,a.jsx)(C.A,{className:"h-3 w-3"}),x("proposals.depCount",{count:i})]})]})]})},e.uuid)})}):(0,a.jsxs)("div",{className:"h-[400px] relative",children:[ek&&(0,a.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-10 rounded-lg bg-red-50 border border-red-200 px-4 py-2 text-xs text-red-700 shadow-sm",children:[ek,(0,a.jsx)("button",{className:"ml-2 font-medium hover:text-red-900",onClick:()=>eF(null),children:"x"})]}),(0,a.jsxs)(l.Gc,{nodes:eB,edges:eT,onNodesChange:eR,onEdgesChange:eM,onConnect:ez,onNodeClick:eO,nodeTypes:eo,fitView:!0,fitViewOptions:{padding:.3},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},children:[(0,a.jsx)(l.VS,{color:"#E5E0D8",gap:20}),(0,a.jsx)(l.H2,{className:"[&>button]:border-[#E5E0D8] [&>button]:bg-white [&>button]:text-[#2C2C2C] [&>button:hover]:bg-[#FAF8F4]"})]})]}):(0,a.jsxs)("div",{className:"flex flex-col items-center gap-2 px-6 py-8",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-[10px] bg-[#F5F2EC]",children:(0,a.jsx)(j,{className:"h-[18px] w-[18px] text-[#D0CCC4]"})}),(0,a.jsx)("p",{className:"text-[13px] text-muted-foreground",children:x("proposals.emptyContainer")})]})})]}),(0,a.jsx)(O.lG,{open:em,onOpenChange:eu,children:(0,a.jsxs)(O.Cf,{className:"max-w-2xl",children:[(0,a.jsx)(O.c7,{children:(0,a.jsx)(O.L3,{children:ex?x("proposals.editDraft"):x("proposals.addDocumentDraft")})}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(z.J,{className:"mb-2 block text-muted-foreground",children:x("proposals.documentType")}),(0,a.jsxs)(_.l6,{value:eh,onValueChange:ef,children:[(0,a.jsx)(_.bq,{className:"border-[#E5E2DC]",children:(0,a.jsx)(_.yv,{})}),(0,a.jsxs)(_.gC,{children:[(0,a.jsx)(_.eb,{value:"prd",children:x("proposals.docTypePrd")}),(0,a.jsx)(_.eb,{value:"tech_design",children:x("proposals.docTypeTechDesign")}),(0,a.jsx)(_.eb,{value:"adr",children:x("proposals.docTypeAdr")}),(0,a.jsx)(_.eb,{value:"spec",children:x("proposals.docTypeSpec")}),(0,a.jsx)(_.eb,{value:"guide",children:x("proposals.docTypeGuide")})]})]})]}),(0,a.jsxs)("div",{children:[(0,a.jsxs)(z.J,{className:"mb-2 block text-muted-foreground",children:[x("proposals.documentTitle")," *"]}),(0,a.jsx)(U.p,{value:eg,onChange:e=>eb(e.target.value),placeholder:x("proposals.titlePlaceholder"),className:"border-[#E5E2DC]"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(z.J,{className:"mb-2 block text-muted-foreground",children:x("proposals.documentContent")}),(0,a.jsx)(M.T,{value:ev,onChange:e=>ej(e.target.value),className:"h-64 resize-none border-[#E5E2DC] font-mono",placeholder:"# Document Title Write your content in Markdown..."})]}),eA&&(0,a.jsx)("div",{className:"rounded-lg bg-[#FFEBEE] p-3 text-sm text-[#C4574C]",children:eA}),(0,a.jsxs)("div",{className:"flex justify-end gap-3",children:[(0,a.jsx)(R.$,{variant:"outline",onClick:()=>eu(!1),disabled:h,className:"border-[#E5E2DC]",children:x("common.cancel")}),(0,a.jsx)(R.$,{onClick:()=>{if(!eg.trim())return void eE(x("proposals.titleRequired"));eE(null),f(async()=>{let e;(e=ex?await L(t,ex.uuid,{type:eh,title:eg.trim(),content:ev}):await I(t,{type:eh,title:eg.trim(),content:ev})).success?(eu(!1),p.refresh()):eE(e.error||x("proposals.failedToSaveDocDraft"))})},disabled:h,className:"bg-[#C67A52] text-white hover:bg-[#B56A42]",children:h?x("common.saving"):x("common.save")})]})]})]})}),eq&&(0,a.jsx)(er,{taskDraft:eC?null:eS,allTaskDrafts:J||[],proposalUuid:t,canEdit:eD,onClose:()=>{ey(null),ew(!1)},onSaved:()=>{eC&&ew(!1)},onDeleted:()=>{ey(null),ew(!1)}})]})}},14554:(e,t,s)=>{"use strict";s.d(t,{p:()=>n});var a=s(90508);s(1856);var r=s(24377);function n(e){let{className:t,type:s,...n}=e;return(0,a.jsx)("input",{type:s,"data-slot":"input",className:(0,r.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...n})}},15044:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]])},16159:(e,t,s)=>{"use strict";s.d(t,{DiscussionDrawer:()=>p});var a=s(90508),r=s(1856),n=s(39268);let i=(0,s(66206).A)("message-circle",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]]);var l=s(22922),o=s(57731),c=s(68923),d=s(96213),m=s(63964),u=s(85573),x=s(13973);function p(e){let{proposalUuid:t,currentUserUuid:s,commentCount:p}=e,h=(0,n.c)(),[f,g]=(0,r.useState)(p),b=(0,r.useCallback)(async()=>{try{let e=await (0,x.d)("proposal",t);if(!e.success)return;g(e.total)}catch(e){}},[t]);return(0,m.w0)("proposal",t,b),(0,a.jsx)(d.D,{entityType:"proposal",entityUuid:t,subEntityType:"comment",children:(0,a.jsxs)(c.cj,{children:[(0,a.jsx)(c.CG,{asChild:!0,children:(0,a.jsxs)(l.$,{variant:"outline",size:"sm",className:"gap-1.5 border-[#E5E0D8] text-[#3D3D3D]",children:[(0,a.jsx)(i,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:h("proposals.discussion")}),f>0&&(0,a.jsx)(o.E,{className:"ml-0.5 h-5 min-w-5 justify-center rounded-full border-0 bg-[#E07A5F] px-1.5 text-[10px] font-semibold text-white",children:f})]})}),(0,a.jsxs)(c.h,{side:"right",className:"w-full sm:w-[420px] sm:max-w-[420px] p-0 flex flex-col",children:[(0,a.jsx)(c.Fm,{className:"border-b border-[#F0EDE8] px-6 py-4",children:(0,a.jsxs)(c.qp,{className:"flex items-center gap-2 text-base",children:[(0,a.jsx)(i,{className:"h-[18px] w-[18px]"}),h("proposals.discussion"),f>0&&(0,a.jsx)("span",{className:"rounded-full bg-[#F0EDE8] px-2 py-0.5 text-xs font-medium text-[#6B6B6B]",children:f})]})}),(0,a.jsx)("div",{className:"flex-1 overflow-y-auto p-6",children:(0,a.jsx)(u.$m,{targetType:"proposal",targetUuid:t,currentUserUuid:s,onCountChange:g})})]})]})})}},17722:(e,t,s)=>{"use strict";s.d(t,{AI:()=>l,_8:()=>i});var a=s(90508);s(1856);var r=s(97438),n=s(24377);function i(e){let{open:t,onOpenChange:s,header:i,footer:l,children:o,className:c,bodyClassName:d,zIndexClassName:m="z-[110]",showCloseButton:u=!0}=e;return(0,a.jsx)(r.lG,{open:t,onOpenChange:s,children:(0,a.jsxs)(r.Cf,{className:(0,n.cn)("flex max-h-[85svh] flex-col gap-0 overflow-hidden p-0",m,c),overlayClassName:m,showCloseButton:u,children:[(0,a.jsx)(r.c7,{className:"shrink-0 border-b border-[#E5E0D8] px-6 py-5 text-left",children:i}),(0,a.jsx)("div",{className:(0,n.cn)("min-h-0 flex-1 overflow-y-auto px-6 py-4",d),children:o}),(0,a.jsx)(r.Es,{className:"shrink-0 border-t border-[#E5E0D8] px-6 py-5",children:l})]})})}let l=r.L3},28874:(e,t,s)=>{"use strict";s.d(t,{ProposalValidationChecklist:()=>b});var a=s(90508),r=s(1856),n=s(39268),i=s(1861),l=s(17475),o=s(30028),c=s(11031),d=s(42533),m=s(89967),u=s(17730),x=s(48416),p=s(57731),h=s(57223);let f={error:i.A,warning:l.A,info:o.A},g={error:{icon:"text-red-500",bg:"bg-red-50",badge:"bg-red-100 text-red-700"},warning:{icon:"text-amber-500",bg:"bg-amber-50",badge:"bg-amber-100 text-amber-700"},info:{icon:"text-blue-500",bg:"bg-blue-50",badge:"bg-blue-100 text-blue-700"}};function b(e){let{projectUuid:t,proposalUuid:s,status:o}=e,b=(0,n.c)("proposalValidation"),[v,j]=(0,r.useState)(null),[N,y]=(0,r.useState)(!0),[C,w]=(0,r.useState)(null),[A,E]=(0,r.useState)(!1);if((0,r.useEffect)(()=>{if("draft"!==o)return;let e=!1;return async function(){try{y(!0),w(null);let a=await fetch("/api/projects/".concat(t,"/proposals/").concat(s,"/validate"));if(!a.ok)throw Error("HTTP ".concat(a.status));let r=await a.json();e||j(r.data)}catch(t){e||w(t instanceof Error?t.message:"Unknown error")}finally{e||y(!1)}}(),()=>{e=!0}},[t,s,o]),"draft"!==o)return null;if(N)return(0,a.jsx)(x.Zp,{className:"border-[#E5E2DC] shadow-none rounded-2xl gap-0 py-0",children:(0,a.jsxs)("div",{className:"flex items-center justify-between px-5 py-3.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-[#C67A52]"}),(0,a.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:b("title")})]}),(0,a.jsx)(h.E,{className:"h-5 w-20"})]})});if(C)return(0,a.jsx)(x.Zp,{className:"border-red-200 shadow-none rounded-2xl gap-0 py-0",children:(0,a.jsxs)("div",{className:"flex items-center justify-between px-5 py-3.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-[#C67A52]"}),(0,a.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:b("title")})]}),(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-xs text-red-600",children:[(0,a.jsx)(i.A,{className:"h-3.5 w-3.5"}),(0,a.jsx)("span",{children:C})]})]})});if(!v)return null;let k={error:[],warning:[],info:[]};for(let e of v.issues)k[e.level].push(e);let F=[...k.error,...k.warning,...k.info],D=k.error.length,S=k.warning.length,B=(0,a.jsxs)("button",{type:"button",onClick:()=>E(!A),className:"flex w-full items-center justify-between px-5 py-3.5 cursor-pointer hover:bg-[#FAF8F4] transition-colors rounded-2xl",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,a.jsx)(c.A,{className:"h-4 w-4 text-[#C67A52]"}),(0,a.jsx)("span",{className:"text-[13px] font-semibold text-foreground",children:b("title")})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2.5",children:[v.valid?(0,a.jsxs)(p.E,{className:"border-0 bg-green-100 text-green-700 text-[11px] font-medium",children:[(0,a.jsx)(d.A,{className:"mr-1 h-3 w-3"}),b("passed")]}):(0,a.jsxs)(a.Fragment,{children:[D>0&&(0,a.jsxs)(p.E,{className:"border-0 bg-red-100 text-red-700 text-[11px] font-medium",children:[(0,a.jsx)(i.A,{className:"mr-1 h-3 w-3"}),b("errorCount",{count:D})]}),S>0&&(0,a.jsxs)(p.E,{className:"border-0 bg-amber-100 text-amber-700 text-[11px] font-medium",children:[(0,a.jsx)(l.A,{className:"mr-1 h-3 w-3"}),b("warningCount",{count:S})]})]}),A?(0,a.jsx)(m.A,{className:"h-4 w-4 text-muted-foreground"}):(0,a.jsx)(u.A,{className:"h-4 w-4 text-muted-foreground"})]})]});return(0,a.jsxs)(x.Zp,{className:"border-[#E5E2DC] shadow-none rounded-2xl gap-0 py-0 overflow-hidden",children:[B,A&&(0,a.jsx)(x.Wu,{className:"px-4 pb-4 pt-0",children:0===F.length?(0,a.jsxs)("div",{className:"flex items-center gap-2 text-xs text-green-600 px-1 py-2",children:[(0,a.jsx)(d.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:b("passed")})]}):(0,a.jsx)("div",{className:"space-y-2",children:F.map((e,t)=>{let s=f[e.level],r=g[e.level];return(0,a.jsxs)("div",{className:"flex items-center gap-2.5 rounded-lg px-3 py-2.5 ".concat(r.bg),children:[(0,a.jsx)(s,{className:"h-3.5 w-3.5 shrink-0 ".concat(r.icon)}),(0,a.jsx)("span",{className:"flex-1 min-w-0 text-xs text-foreground",children:e.field?b(e.id,{title:e.field}):b(e.id)}),(0,a.jsx)(p.E,{className:"shrink-0 border-0 text-[10px] font-medium ".concat(r.badge),children:b(e.level)})]},"".concat(e.id,"-").concat(t))})})})]})}},29532:(e,t,s)=>{"use strict";function a(e,t){return!!e&&!!t&&("user"===e.type?"user"===t.type&&e.uuid===t.uuid:"agent"===e.type?"agent"===t.type&&e.uuid===t.uuid:"agent_instance"===e.type&&"agent"===t.type&&!!e.agentUuid&&e.agentUuid===t.uuid)}function r(e){return!!e&&("agent"===e.type||"agent_instance"===e.type)}s.d(t,{RU:()=>a,bB:()=>r})},31678:(e,t,s)=>{"use strict";s.d(t,{SourceIdeasCard:()=>H});var a=s(90508),r=s(1856),n=s(39268),i=s(29767);let l=(0,s(66206).A)("arrow-up-right",[["path",{d:"M7 7h10v10",key:"1tivn9"}],["path",{d:"M7 17 17 7",key:"1vkiza"}]]);var o=s(48416),c=s(23675),d=s(95900),m=s(57893),u=s(9160),x=s(5425),p=s(85226),h=s(60532),f=s(94903),g=s(42533),b=s(97413),v=s(57731),j=s(22922),N=s(14554),y=s(15972),C=s(88064),w=s(64993),A=s(51817),E=s(73693),k=s(97868),F=s(29532),D=s(85573),S=s(36856),B=s(84281),P=s(7537),R=s(97261),T=s(52776),U=s(91118),M=s(94888),z=s(82278),O=s(93981),_=s(52217);let $=(0,_.createServerReference)("60d1de4e96159ae23ca28723f11125b66ec041abb3",_.callServer,void 0,_.findSourceMapURL,"skipElaborationAction");var q=s(63964),L=s(11166),I=s(16544),G=s(65626),V=s(38106);let Z={open:"bg-[#FFF3E0] text-[#E65100]",elaborating:"bg-[#E3F2FD] text-[#1976D2]",elaborated:"bg-[#E0F2F1] text-[#00796B]"},J={open:"open",elaborating:"elaborating",elaborated:"elaborated"};function K(e){var t;let{idea:s,projectUuid:i,currentUserUuid:l,isUsedInProposal:o,onClose:_,onDeleted:K}=e,H=(0,n.c)(),Q=(0,c.useRouter)(),[W,X]=(0,r.useState)([]),[Y,ee]=(0,r.useState)(!0),[et,es]=(0,r.useState)(!1),[ea,er]=(0,r.useState)(null),en=(0,r.useCallback)(async()=>{let e=await (0,z.z)(s.uuid);e.success&&e.data&&er(e.data)},[s.uuid]);(0,r.useEffect)(()=>{en()},[en]),(0,q.eV)("idea",en);let[ei,el]=(0,r.useState)(!1),[eo,ec]=(0,r.useState)(""),[ed,em]=(0,r.useState)(!1),[eu,ex]=(0,r.useState)(null),[ep,eh]=(0,r.useState)(!1),[ef,eg]=(0,r.useState)(null),[eb,ev]=(0,r.useState)(!1),[ej,eN]=(0,r.useState)(!1),[ey,eC]=(0,r.useState)(s.title),[ew,eA]=(0,r.useState)(s.content||""),[eE,ek]=(0,r.useState)(!1),[eF,eD]=(0,r.useState)(null),[eS,eB]=(0,r.useState)(!1),[eP,eR]=(0,r.useState)(!1),[eT,eU]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=setTimeout(()=>eU(!0),300);return()=>clearTimeout(e)},[]);let eM="elaborated"!==s.status,ez="resolved"===s.elaborationStatus,eO=(0,L.o)({ideaStatus:s.status,elaborationStatus:s.elaborationStatus,elaboration:ea}),e_="elaborating"===s.status&&(!s.elaborationStatus||"resolved"!==s.elaborationStatus)&&(0,F.RU)(null!=(t=s.assignee)?t:null,{type:"user",uuid:l}),e$="elaborated"!==s.status;(0,r.useEffect)(()=>{!async function(){ee(!0),X((await (0,S.x)(s.uuid)).activities),ee(!1)}()},[s.uuid]),(0,r.useEffect)(()=>{eN(!1),eC(s.title),eA(s.content||""),eD(null)},[s.uuid,s.title,s.content]);let eq=()=>{eN(!1),eC(s.title),eA(s.content||""),eD(null)},eL=async()=>{if(!ey.trim())return void eD(H("ideas.titleRequired"));ek(!0),eD(null);let e=await (0,B.J)({ideaUuid:s.uuid,projectUuid:i,title:ey.trim(),content:ew.trim()||null});ek(!1),e.success?(eN(!1),Q.refresh()):eD(e.error||H("ideas.updateFailed"))},eI=async()=>{eB(!0);let e=await (0,P.Z)(s.uuid,i);eB(!1),e.success&&(null==K||K(),_(),Q.refresh())},eG=async()=>{eh(!0),eg(null);let e=await (0,O.e)(s.uuid);eh(!1),e.success?(ev(!0),Q.refresh()):eg(e.error||H("elaboration.verifyFailed"))},eV=async()=>{if(!eo.trim())return void ex(H("elaboration.skipReasonRequired"));em(!0),ex(null);let e=await $(s.uuid,eo.trim());em(!1),e.success?(el(!1),ec(""),Q.refresh()):ex(e.error||H("common.genericError"))};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:_}),(0,a.jsxs)("div",{className:"fixed right-0 top-14 md:top-0 z-50 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-white shadow-xl border-l border-[#E5E0D8] ".concat(eT?"":"animate-in slide-in-from-right duration-300"),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between border-b border-[#F5F2EC] px-6 py-5",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:ej?(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:H("ideas.editIdea")}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C] truncate",children:s.title}),(0,a.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,a.jsx)(v.E,{className:Z[s.status]||"",children:H("status.".concat(J[s.status]||s.status))}),(0,a.jsx)("span",{className:"text-xs text-[#9A9A9A]",children:(0,V.r)(s.createdAt)})]})]})}),(0,a.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[!ej&&(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>eR(!0),title:H("ideas.actions.move"),"aria-label":H("ideas.actions.move"),children:(0,a.jsx)(d.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),e$&&!ej&&(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>{eC(s.title),eA(s.content||""),eD(null),eN(!0)},children:(0,a.jsx)(m.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:ej?eq:_,children:(0,a.jsx)(u.A,{className:"h-4 w-4 text-[#6B6B6B]"})})]})]}),(0,a.jsx)(w.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,a.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:ej?(0,a.jsxs)("div",{className:"space-y-5",children:[eF&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:eF}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(C.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-[#2C2C2C]",children:H("ideas.titleLabel")}),(0,a.jsx)(N.p,{id:"edit-title",value:ey,onChange:e=>eC(e.target.value),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(C.J,{htmlFor:"edit-content",className:"text-[13px] font-medium text-[#2C2C2C]",children:H("common.content")}),(0,a.jsx)(y.T,{id:"edit-content",value:ew,onChange:e=>eA(e.target.value),rows:8,className:"border-[#E5E0D8] text-sm resize-none focus-visible:ring-[#C67A52]"})]})]}):(0,a.jsxs)(I.P.div,{variants:G.qG,initial:"initial",animate:"animate",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:H("common.assignee")}),(0,a.jsx)("div",{className:"mt-2 flex items-center gap-2.5 rounded-lg bg-[#FAF8F4] p-3",children:s.assignee?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(E.eu,{className:"h-7 w-7",children:(0,a.jsx)(E.q5,{className:(0,F.bB)(s.assignee)?"bg-[#C67A52] text-white":"bg-[#E5E0D8] text-[#6B6B6B]",children:(0,F.bB)(s.assignee)?(0,a.jsx)(x.A,{className:"h-3.5 w-3.5"}):s.assignee.name.charAt(0).toUpperCase()})}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-[#2C2C2C]",children:s.assignee.name}),(0,a.jsx)("div",{className:"text-xs text-[#6B6B6B]",children:(0,F.bB)(s.assignee)?"".concat(H("common.agent")," • ").concat(s.assignee.assignedAt?(0,V.r)(s.assignee.assignedAt):""):H("common.user")}),"agent_instance"===s.assignee.type&&s.assignee.instance&&(0,a.jsx)("div",{className:"mt-1",children:(0,a.jsx)(k.jQ,{cwd:s.assignee.instance.cwd,host:s.assignee.instance.host})})]})]}):(0,a.jsx)("span",{className:"text-sm text-[#9A9A9A]",children:H("common.unassigned")})})]}),ea&&ea.rounds.length>0&&(0,a.jsx)("div",{className:"mt-5",children:(0,a.jsx)(M.R,{ideaUuid:s.uuid,elaboration:ea,onRefresh:async()=>{let e=await (0,z.z)(s.uuid);e.success&&e.data&&er(e.data)}})}),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:H("common.content")}),(0,a.jsx)("div",{className:"mt-2",children:s.content?(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,a.jsx)(R.MarkdownContent,{children:s.content})}):(0,a.jsx)("p",{className:"text-sm italic text-[#9A9A9A]",children:H("common.noContent")})})]}),(0,a.jsxs)("div",{className:"mt-5 flex-1",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:H("common.activity")}),(0,a.jsx)("div",{className:"mt-2 space-y-3",children:Y?(0,a.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,a.jsx)(p.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):0===W.length?(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A] italic",children:H("common.noActivity")}):W.map(e=>(0,a.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,a.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-[#9A9A9A]"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("p",{className:"text-[13px] text-[#2C2C2C]",children:function(e,t){let{action:s,actorName:a}=e;switch(s){case"created":case"idea_created":return t("activity.ideaCreated",{actor:a});case"assigned":case"idea_assigned":return t("activity.ideaAssigned",{actor:a});case"claimed":case"idea_claimed":return t("activity.ideaClaimed",{actor:a});case"released":case"idea_released":return t("activity.ideaReleased",{actor:a});case"status_changed":case"idea_status_changed":return t("activity.ideaStatusChanged",{actor:a});case"edited":case"idea_edited":return t("activity.ideaEdited",{actor:a});case"reparented":case"idea_reparented":return t("activity.ideaReparented",{actor:a});case"elaboration_started":return t("activity.elaborationStarted",{actor:a});case"elaboration_answered":return t("activity.elaborationAnswered",{actor:a});case"elaboration_skipped":return t("activity.elaborationSkipped",{actor:a});case"elaboration_resolved":return t("activity.elaborationResolved",{actor:a});case"elaboration_followup":return t("activity.elaborationFollowup",{actor:a});default:return"".concat(a,": ").concat(s)}}(e,H)}),(0,a.jsx)("p",{className:"text-[11px] text-[#9A9A9A]",children:function(e,t){let s=new Date(e),a=new Date().getTime()-s.getTime(),r=Math.floor(a/6e4),n=Math.floor(a/36e5),i=Math.floor(a/864e5);return r<1?t("time.justNow"):r<60?t("time.minutesAgo",{minutes:r}):n<24?t("time.hoursAgo",{hours:n}):i<7?t("time.daysAgo",{days:i}):(0,V.r)(s)}(e.createdAt,H)})]})]},e.uuid))})]}),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:H("comments.title")}),(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsx)(D.$m,{targetType:"idea",targetUuid:s.uuid,currentUserUuid:l,compact:!0})})]})]})})}),(0,a.jsx)("div",{className:"border-t border-[#F5F2EC] px-6 py-4",children:(0,a.jsx)("div",{className:"flex items-center justify-between gap-3",children:ej?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(j.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:eq,disabled:eE,children:H("common.cancel")}),(0,a.jsx)(j.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:eL,disabled:eE||!ey.trim(),children:eE?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.A,{className:"mr-2 h-4 w-4 animate-spin"}),H("common.saving")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.A,{className:"mr-2 h-4 w-4"}),H("ideas.saveChanges")]})})]}):(0,a.jsxs)(a.Fragment,{children:[eM&&(0,a.jsxs)(j.$,{variant:"outline",className:"shrink-0 border-[#E5E0D8] rounded-md px-4 py-2 text-[13px] font-medium",onClick:()=>es(!0),children:[(0,a.jsx)(f.A,{className:"mr-2 h-4 w-4"}),s.assignee?H("common.reassign"):H("common.assign")]}),(0,a.jsxs)("div",{className:"flex-1 min-w-0 flex flex-wrap items-center gap-2",children:[e_&&(0,a.jsx)(j.$,{variant:"outline",size:"sm",className:"border-[#E5E0D8]",onClick:()=>{ec(""),ex(null),el(!0)},children:H("elaboration.skipButton")}),eO&&!eb&&(0,a.jsx)(j.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:eG,disabled:ep,children:ep?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.A,{className:"mr-2 h-4 w-4 animate-spin"}),H("elaboration.verifying")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(g.A,{className:"mr-2 h-4 w-4"}),H("elaboration.verifyButton")]})}),eb&&(0,a.jsx)("span",{className:"text-[11px] text-[#00796B]",children:H("elaboration.verifiedQueuedHint")}),ef&&(0,a.jsx)("span",{className:"text-[11px] text-destructive",children:ef}),"elaborating"===s.status&&!ez&&!eO&&!eb&&!e_&&(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:H("elaboration.elaborationRequiredHint")})]}),(0,a.jsxs)(A.Lt,{children:[(0,a.jsx)(A.tv,{asChild:!0,children:(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"shrink-0 h-8 w-8 border-[#E5E0D8] text-[#EF4444] hover:bg-[#FFEBEE] hover:text-[#EF4444] hover:border-[#EF4444]",children:(0,a.jsx)(b.A,{className:"h-4 w-4"})})}),(0,a.jsxs)(A.EO,{children:[(0,a.jsxs)(A.wd,{children:[(0,a.jsx)(A.r7,{children:H("ideas.deleteIdea")}),(0,a.jsx)(A.$v,{children:H("ideas.deleteIdeaConfirm",{title:s.title})})]}),(0,a.jsxs)(A.ck,{children:[(0,a.jsx)(A.Zr,{children:H("common.cancel")}),(0,a.jsx)(A.Rx,{variant:"destructive",onClick:eI,disabled:eS,children:eS?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.A,{className:"mr-2 h-4 w-4 animate-spin"}),H("common.delete")]}):H("common.delete")})]})]})]})]})})})]}),(0,a.jsx)(A.Lt,{open:ei,onOpenChange:el,children:(0,a.jsxs)(A.EO,{children:[(0,a.jsxs)(A.wd,{children:[(0,a.jsx)(A.r7,{children:H("elaboration.skipConfirmTitle")}),(0,a.jsx)(A.$v,{children:H("elaboration.skipConfirmDescription")})]}),(0,a.jsxs)("div",{className:"space-y-2 py-2",children:[(0,a.jsx)(C.J,{htmlFor:"skip-reason",className:"text-[13px] font-medium text-[#2C2C2C]",children:H("elaboration.skipReasonLabel")}),(0,a.jsx)(N.p,{id:"skip-reason",value:eo,onChange:e=>{ec(e.target.value),eu&&ex(null)},placeholder:H("elaboration.skipReasonPlaceholder"),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0}),eu&&(0,a.jsx)("p",{className:"text-xs text-destructive",children:eu})]}),(0,a.jsxs)(A.ck,{children:[(0,a.jsx)(A.Zr,{disabled:ed,children:H("common.cancel")}),(0,a.jsx)(A.Rx,{onClick:e=>{e.preventDefault(),eV()},disabled:ed||!eo.trim(),className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:ed?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.A,{className:"mr-2 h-4 w-4 animate-spin"}),H("common.processing")]}):H("elaboration.skipButton")})]})]})}),(0,a.jsx)(U.h,{open:eP,onOpenChange:eR,ideaUuid:s.uuid,projectUuid:i,onMoved:()=>{_()}}),et&&(0,a.jsx)(T.i,{idea:{uuid:s.uuid,title:s.title,content:s.content,status:s.status,assignee:s.assignee?{type:s.assignee.type,uuid:s.assignee.uuid,name:s.assignee.name}:null},projectUuid:i,currentUserUuid:l,onClose:()=>{es(!1),_()}})]})}function H(e){let{ideas:t,projectUuid:s,currentUserUuid:c}=e,d=(0,n.c)("proposals"),[m,u]=(0,r.useState)(null);return 0===t.length?null:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(o.Zp,{className:"border-[#E5E2DC] shadow-none rounded-2xl gap-0 py-0 overflow-hidden",children:[(0,a.jsx)(o.aR,{className:"border-b border-[#F5F2EC] px-5 py-4",children:(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(i.A,{className:"h-4 w-4 text-[#C67A52]"}),(0,a.jsx)(o.ZB,{className:"text-[13px] font-semibold text-foreground",children:d("sourceIdeas")})]})}),(0,a.jsx)(o.Wu,{className:"space-y-2 px-5 py-3",children:t.map(e=>(0,a.jsxs)("button",{onClick:()=>u(e),className:"flex w-full items-center gap-2 rounded-lg bg-[#F5F2EC] px-3 py-2 text-left transition-colors hover:bg-[#EDE9E3]",children:[(0,a.jsx)(i.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C67A52]"}),(0,a.jsx)("span",{className:"flex-1 truncate text-xs font-medium text-[#C67A52]",children:e.title}),(0,a.jsx)(l,{className:"h-3 w-3 shrink-0 text-[#9A9A9A]"})]},e.uuid))})]}),m&&(0,a.jsx)(K,{idea:m,projectUuid:s,currentUserUuid:c,isUsedInProposal:!0,onClose:()=>u(null)})]})}},39236:(e,t,s)=>{Promise.resolve().then(s.bind(s,52053)),Promise.resolve().then(s.bind(s,90299)),Promise.resolve().then(s.bind(s,65514)),Promise.resolve().then(s.bind(s,98861)),Promise.resolve().then(s.bind(s,38476)),Promise.resolve().then(s.bind(s,74542)),Promise.resolve().then(s.bind(s,71350)),Promise.resolve().then(s.bind(s,39025)),Promise.resolve().then(s.bind(s,75368)),Promise.resolve().then(s.bind(s,89684)),Promise.resolve().then(s.bind(s,58057)),Promise.resolve().then(s.bind(s,6512)),Promise.resolve().then(s.bind(s,25051)),Promise.resolve().then(s.bind(s,4374)),Promise.resolve().then(s.bind(s,19345)),Promise.resolve().then(s.bind(s,79919)),Promise.resolve().then(s.bind(s,17533)),Promise.resolve().then(s.bind(s,99545)),Promise.resolve().then(s.bind(s,63197)),Promise.resolve().then(s.bind(s,65326)),Promise.resolve().then(s.bind(s,48218)),Promise.resolve().then(s.bind(s,56260)),Promise.resolve().then(s.bind(s,60322)),Promise.resolve().then(s.bind(s,79834)),Promise.resolve().then(s.bind(s,6947)),Promise.resolve().then(s.bind(s,88878)),Promise.resolve().then(s.bind(s,34857)),Promise.resolve().then(s.bind(s,97006)),Promise.resolve().then(s.bind(s,45841)),Promise.resolve().then(s.t.bind(s,12790,23)),Promise.resolve().then(s.bind(s,16159)),Promise.resolve().then(s.bind(s,78193)),Promise.resolve().then(s.bind(s,14161)),Promise.resolve().then(s.bind(s,28874)),Promise.resolve().then(s.bind(s,31678)),Promise.resolve().then(s.bind(s,76546)),Promise.resolve().then(s.bind(s,97261)),Promise.resolve().then(s.bind(s,84247))},65626:(e,t,s)=>{"use strict";s.d(t,{K5:()=>o,Rf:()=>l,Yv:()=>a,bK:()=>i,qG:()=>n,tE:()=>r});let a={fast:.15,normal:.2,slow:.3,easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1],stagger:.04,staggerFast:.03,spring:{type:"spring",stiffness:500,damping:30},tween:{type:"tween",duration:.2,ease:[0,0,.2,1]}},r={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,y:-4,transition:{duration:a.fast,ease:a.easeOut}}},n={initial:{opacity:0},animate:{opacity:1,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,transition:{duration:a.fast,ease:a.easeOut}}};a.normal,a.easeOut,a.fast,a.easeOut;let i={initial:{},animate:{transition:{staggerChildren:a.stagger}}},l={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}}},o={initial:{opacity:0,scale:.95,y:-4},animate:{opacity:1,scale:1,y:0,transition:{duration:a.fast,ease:a.easeOut}},exit:{opacity:0,scale:.95,y:-4,transition:{duration:a.fast,ease:a.easeOut}}}},66343:(e,t,s)=>{"use strict";s.d(t,{SQ:()=>o,_2:()=>c,mB:()=>d,rI:()=>i,ty:()=>l});var a=s(90508);s(1856);var r=s(39025),n=s(24377);function i(e){let{...t}=e;return(0,a.jsx)(r.Root,{"data-slot":"dropdown-menu",...t})}function l(e){let{...t}=e;return(0,a.jsx)(r.Trigger,{"data-slot":"dropdown-menu-trigger",...t})}function o(e){let{className:t,sideOffset:s=4,...i}=e;return(0,a.jsx)(r.Portal,{children:(0,a.jsx)(r.Content,{"data-slot":"dropdown-menu-content",sideOffset:s,className:(0,n.cn)("bg-popover text-popover-foreground z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...i})})}function c(e){let{className:t,inset:s,variant:i="default",...l}=e;return(0,a.jsx)(r.Item,{"data-slot":"dropdown-menu-item","data-inset":s,"data-variant":i,className:(0,n.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0","data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive","data-[inset]:pl-8 [&_svg]:size-4",t),...l})}function d(e){let{className:t,...s}=e;return(0,a.jsx)(r.Separator,{"data-slot":"dropdown-menu-separator",className:(0,n.cn)("bg-border -mx-1 my-1 h-px",t),...s})}},68923:(e,t,s)=>{"use strict";s.d(t,{CG:()=>c,Fm:()=>p,cj:()=>o,h:()=>x,qp:()=>h});var a=s(90508);s(1856);var r=s(9160),n=s(71350),i=s(49499),l=s(24377);function o(e){let{...t}=e;return(0,a.jsx)(n.Root,{"data-slot":"sheet",...t})}function c(e){let{...t}=e;return(0,a.jsx)(n.Trigger,{"data-slot":"sheet-trigger",...t})}function d(e){let{...t}=e;return(0,a.jsx)(n.Portal,{"data-slot":"sheet-portal",...t})}function m(e){let{className:t,...s}=e;return(0,a.jsx)(n.Overlay,{"data-slot":"sheet-overlay",className:(0,l.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...s})}let u=(0,i.F)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 border-b",bottom:"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 border-t",left:"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",right:"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm"}},defaultVariants:{side:"right"}});function x(e){let{className:t,children:s,side:i="right",...o}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(m,{}),(0,a.jsxs)(n.Content,{"data-slot":"sheet-content",className:(0,l.cn)(u({side:i}),t),...o,children:[s,(0,a.jsxs)(n.Close,{"data-slot":"sheet-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none",children:[(0,a.jsx)(r.A,{className:"size-4"}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function p(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"sheet-header",className:(0,l.cn)("flex flex-col gap-2 p-4",t),...s})}function h(e){let{className:t,...s}=e;return(0,a.jsx)(n.Title,{"data-slot":"sheet-title",className:(0,l.cn)("text-foreground text-lg font-semibold",t),...s})}},69386:(e,t,s)=>{"use strict";s.d(t,{E:()=>h});var a=s(90508),r=s(1856),n=s(67587),i=s(56770),l=s(6841),o=s(6493),c=s(85226),d=s(15044),m=s(39268),u=s(66343),x=s(22922),p=s(67712);function h(e){let{document:t,documentUuid:h,variant:f="default"}=e,g=(0,m.c)(),{exportDocument:b,isExporting:v,exportError:j}=function(){let[e,t]=(0,r.useState)(!1),[a,n]=(0,r.useState)(null);return{exportDocument:(0,r.useCallback)(async(e,a)=>{t(!0),n(null);try{let t,n,l=function(e){let t=e.replace(/[\\/:*?"<>|]/g,"").replace(/\s+/g," ").trim().replace(/\s/g,"-");return t.length>0?t:"document"}(e.title);if("md"===a){let{exportAsMarkdownBlob:a}=await s.e(50681).then(s.bind(s,50681));t=a(e),n="md"}else if("pdf"===a){let{exportAsPdf:a}=await s.e(34966).then(s.bind(s,34966));t=await a(e),n="pdf"}else if("docx"===a){let{exportAsDocx:a}=await s.e(9634).then(s.bind(s,9634));t=await a(e),n="docx"}else throw Error("Unsupported export format: ".concat(String(a)));var r=t,i="".concat(l,".").concat(n);let o=URL.createObjectURL(r),c=document.createElement("a");c.href=o,c.download=i,c.rel="noopener",c.style.display="none",document.body.appendChild(c),c.click(),document.body.removeChild(c),setTimeout(()=>URL.revokeObjectURL(o),1e3)}catch(e){n(e instanceof Error?e.message:String(e)),p.q.error("useDocumentExport export failed",e)}finally{t(!1)}},[]),isExporting:e,exportError:a}}(),[N,y]=(0,r.useState)(null);async function C(e){y(e);try{let o=t;if(!o&&h){var s,a,r,i,l;let e=await fetch("/api/documents/".concat(h)),t=await e.json();if(!t.success||!t.data)return void n.oR.error(g("export.exportError"));let c=t.data;o={title:c.title,content:null!=(r=c.content)?r:"",type:c.type,version:c.version,createdAt:c.createdAt,updatedAt:c.updatedAt,createdByName:null!=(i=null==(s=c.createdBy)?void 0:s.name)?i:"",projectName:null!=(l=null==(a=c.project)?void 0:a.name)?l:""}}o&&await b(o,e)}finally{y(null),j&&n.oR.error(j)}}let w=[{format:"md",labelKey:"export.formatMd",icon:i.A},{format:"pdf",labelKey:"export.formatPdf",icon:l.A},{format:"docx",labelKey:"export.formatDocx",icon:o.A}],A="compact"===f;return(0,a.jsxs)(u.rI,{children:[(0,a.jsx)(u.ty,{asChild:!0,children:(0,a.jsxs)(x.$,{variant:"ghost"===f?"ghost":"outline",size:A?"sm":"default",className:A?"h-6 text-[11px] text-muted-foreground hover:text-foreground":"border-[#E5E0D8] text-[#6B6B6B] gap-1.5",disabled:v,children:[v?(0,a.jsx)(c.A,{className:"".concat(A?"h-3 w-3":"h-4 w-4"," animate-spin")}):(0,a.jsx)(d.A,{className:A?"h-3 w-3":"h-4 w-4"}),!A&&g("export.exportDocument")]})}),(0,a.jsx)(u.SQ,{align:"end",className:"w-48",children:w.map(e=>{let{format:t,labelKey:s,icon:r}=e;return(0,a.jsxs)(u._2,{onClick:e=>{e.stopPropagation(),e.preventDefault(),C(t)},disabled:v,children:[N===t?(0,a.jsx)(c.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(r,{className:"h-4 w-4"}),g(s)]},t)})})]})}},75320:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]])},76546:(e,t,s)=>{"use strict";s.d(t,{FormattedDateTime:()=>n});var a=s(90508),r=s(38106);function n(e){let{date:t}=e;return(0,a.jsx)(a.Fragment,{children:(0,r.r)(t)})}},78193:(e,t,s)=>{"use strict";s.d(t,{ProposalActions:()=>F});var a=s(90508),r=s(23675),n=s(1856),i=s(39268),l=s(66206);let o=(0,l.A)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);var c=s(95886),d=s(60532),m=s(9160);let u=(0,l.A)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]),x=(0,l.A)("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]);var p=s(97413),h=s(32470),f=s(56770),g=s(22922),b=s(66343),v=s(97438),j=s(15972),N=s(52217);let y=(0,N.createServerReference)("40b8d625d1edfd0641773fa8d5b5eed0c5d0acd454",N.callServer,void 0,N.findSourceMapURL,"submitProposalAction"),C=(0,N.createServerReference)("6041ace84671ccc904f548e98f76a01032ee0efd2b",N.callServer,void 0,N.findSourceMapURL,"approveProposalAction"),w=(0,N.createServerReference)("60837bae69c3d030fa05b11eda9dd27c5305268827",N.callServer,void 0,N.findSourceMapURL,"rejectProposalAction"),A=(0,N.createServerReference)("604f0cb89b15a6b3509f9cfbabae3a30c9806fb4f8",N.callServer,void 0,N.findSourceMapURL,"closeProposalAction"),E=(0,N.createServerReference)("60c0545f0583adadc30c3214c9c90cbbd4391ac31e",N.callServer,void 0,N.findSourceMapURL,"revokeProposalAction"),k=(0,N.createServerReference)("60b995801f6628d31c939747d17c371723a8b63e08",N.callServer,void 0,N.findSourceMapURL,"deleteProposalAction");function F(e){let{proposalUuid:t,projectUuid:s,status:l,materializedEntities:N}=e,F=(0,i.c)(),D=(0,r.useRouter)(),[S,B]=(0,n.useTransition)(),[P,R]=(0,n.useState)(!1),[T,U]=(0,n.useState)(""),[M,z]=(0,n.useState)(!1),[O,_]=(0,n.useState)(""),[$,q]=(0,n.useState)(!1),[L,I]=(0,n.useState)(""),[G,V]=(0,n.useState)(!1),[Z,J]=(0,n.useState)(""),[K,H]=(0,n.useState)(!1),[Q,W]=(0,n.useState)(!1);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(b.rI,{children:[(0,a.jsx)(b.ty,{asChild:!0,children:(0,a.jsxs)(g.$,{variant:"outline",className:"border-[#E5E0D8] text-[#3D3D3D] gap-1.5",disabled:S,children:[(0,a.jsx)(o,{className:"h-4 w-4"}),(0,a.jsx)("span",{className:"hidden sm:inline",children:F("common.actions")})]})}),(0,a.jsxs)(b.SQ,{align:"end",className:"w-48",children:["draft"===l&&(0,a.jsxs)(b._2,{onClick:()=>H(!0),children:[(0,a.jsx)(c.A,{className:"h-4 w-4"}),F("proposals.submitForReview")]}),"pending"===l&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(b._2,{onClick:()=>R(!0),children:[(0,a.jsx)(d.A,{className:"h-4 w-4 text-[#5A9E6F]"}),F("common.approve")]}),(0,a.jsxs)(b._2,{onClick:()=>z(!0),children:[(0,a.jsx)(m.A,{className:"h-4 w-4 text-[#D32F2F]"}),F("common.reject")]}),(0,a.jsxs)(b._2,{onClick:()=>q(!0),children:[(0,a.jsx)(u,{className:"h-4 w-4"}),F("proposals.closeProposal")]})]}),"approved"===l&&(0,a.jsxs)(b._2,{onClick:()=>V(!0),children:[(0,a.jsx)(x,{className:"h-4 w-4"}),F("proposals.revokeProposal")]}),("draft"===l||"pending"===l||"approved"===l)&&(0,a.jsx)(b.mB,{}),(0,a.jsxs)(b._2,{variant:"destructive",onClick:()=>W(!0),children:[(0,a.jsx)(p.A,{className:"h-4 w-4"}),F("proposals.deleteProposal")]})]})]}),(0,a.jsx)(v.lG,{open:K,onOpenChange:H,children:(0,a.jsxs)(v.Cf,{className:"sm:max-w-md",children:[(0,a.jsxs)(v.c7,{children:[(0,a.jsx)(v.L3,{children:F("proposals.confirmSubmit")}),(0,a.jsx)(v.rr,{children:F("proposals.confirmSubmitDesc")})]}),(0,a.jsxs)(v.Es,{className:"gap-2",children:[(0,a.jsx)(g.$,{variant:"outline",onClick:()=>H(!1),className:"border-[#E5E0D8] text-[#6B6B6B]",children:F("common.cancel")}),(0,a.jsx)(g.$,{onClick:()=>{B(async()=>{(await y(t)).success&&(H(!1),D.refresh())})},disabled:S,className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:F(S?"common.processing":"proposals.submitForReview")})]})]})}),(0,a.jsx)(v.lG,{open:P,onOpenChange:R,children:(0,a.jsxs)(v.Cf,{className:"sm:max-w-md",children:[(0,a.jsxs)(v.c7,{children:[(0,a.jsx)(v.L3,{children:F("proposals.approveProposal")}),(0,a.jsx)(v.rr,{children:F("proposals.approveProposalDesc")})]}),(0,a.jsx)(j.T,{value:T,onChange:e=>U(e.target.value),placeholder:F("proposals.approveNotePlaceholder"),className:"min-h-[100px] border-[#E5E0D8]"}),(0,a.jsxs)(v.Es,{className:"gap-2",children:[(0,a.jsx)(g.$,{variant:"outline",onClick:()=>R(!1),className:"border-[#E5E0D8] text-[#6B6B6B]",children:F("common.cancel")}),(0,a.jsx)(g.$,{onClick:()=>{B(async()=>{(await C(t,T.trim()||void 0)).success&&(R(!1),U(""),D.refresh())})},disabled:S,className:"bg-[#5A9E6F] hover:bg-[#4A8E5F] text-white",children:F(S?"common.processing":"common.approve")})]})]})}),(0,a.jsx)(v.lG,{open:M,onOpenChange:z,children:(0,a.jsxs)(v.Cf,{className:"sm:max-w-md",children:[(0,a.jsxs)(v.c7,{children:[(0,a.jsx)(v.L3,{children:F("proposals.rejectProposal")}),(0,a.jsx)(v.rr,{children:F("proposals.rejectProposalDesc")})]}),(0,a.jsx)(j.T,{value:O,onChange:e=>_(e.target.value),placeholder:F("proposals.rejectReasonPlaceholder"),className:"min-h-[100px] border-[#E5E0D8]"}),(0,a.jsxs)(v.Es,{className:"gap-2",children:[(0,a.jsx)(g.$,{variant:"outline",onClick:()=>z(!1),className:"border-[#E5E0D8] text-[#6B6B6B]",children:F("common.cancel")}),(0,a.jsx)(g.$,{onClick:()=>{B(async()=>{(await w(t,O)).success&&(z(!1),_(""),D.refresh())})},disabled:S||!O.trim(),className:"bg-[#D32F2F] hover:bg-[#B71C1C] text-white",children:F(S?"common.processing":"common.reject")})]})]})}),(0,a.jsx)(v.lG,{open:$,onOpenChange:q,children:(0,a.jsxs)(v.Cf,{className:"sm:max-w-md",children:[(0,a.jsxs)(v.c7,{children:[(0,a.jsx)(v.L3,{children:F("proposals.closeProposal")}),(0,a.jsx)(v.rr,{children:F("proposals.closeProposalDesc")})]}),(0,a.jsx)(j.T,{value:L,onChange:e=>I(e.target.value),placeholder:F("proposals.closeReasonPlaceholder"),className:"min-h-[100px] border-[#E5E0D8]"}),(0,a.jsxs)(v.Es,{className:"gap-2",children:[(0,a.jsx)(g.$,{variant:"outline",onClick:()=>q(!1),className:"border-[#E5E0D8] text-[#6B6B6B]",children:F("common.cancel")}),(0,a.jsx)(g.$,{onClick:()=>{B(async()=>{(await A(t,L)).success&&(q(!1),I(""),D.refresh())})},disabled:S||!L.trim(),className:"bg-[#6B6B6B] hover:bg-[#555555] text-white",children:F(S?"common.processing":"proposals.closeProposal")})]})]})}),(0,a.jsx)(v.lG,{open:G,onOpenChange:V,children:(0,a.jsxs)(v.Cf,{className:"sm:max-w-lg",children:[(0,a.jsxs)(v.c7,{children:[(0,a.jsx)(v.L3,{children:F("proposals.revokeProposal")}),(0,a.jsx)(v.rr,{children:F("proposals.revokeProposalDesc")})]}),N&&(N.tasks.length>0||N.documents.length>0)&&(0,a.jsxs)("div",{className:"space-y-3 rounded-lg border border-[#FFCDD2] bg-[#FFF5F5] p-3",children:[N.tasks.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-semibold text-[#D32F2F] mb-1.5",children:[(0,a.jsx)(h.A,{className:"h-3.5 w-3.5"}),F("proposals.revokeTasksToClose",{count:N.tasks.length})]}),(0,a.jsx)("ul",{className:"space-y-1 pl-5",children:N.tasks.map(e=>(0,a.jsxs)("li",{className:"text-xs text-[#6B6B6B]",children:[e.title,(0,a.jsxs)("span",{className:"ml-1.5 text-[10px] text-muted-foreground",children:["(",e.status,")"]})]},e.uuid))})]}),N.documents.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-xs font-semibold text-[#D32F2F] mb-1.5",children:[(0,a.jsx)(f.A,{className:"h-3.5 w-3.5"}),F("proposals.revokeDocsToDelete",{count:N.documents.length})]}),(0,a.jsx)("ul",{className:"space-y-1 pl-5",children:N.documents.map(e=>(0,a.jsx)("li",{className:"text-xs text-[#6B6B6B]",children:e.title},e.uuid))})]})]}),(0,a.jsx)(j.T,{value:Z,onChange:e=>J(e.target.value),placeholder:F("proposals.revokeReasonPlaceholder"),className:"min-h-[100px] border-[#E5E0D8]"}),(0,a.jsxs)(v.Es,{className:"gap-2",children:[(0,a.jsx)(g.$,{variant:"outline",onClick:()=>V(!1),className:"border-[#E5E0D8] text-[#6B6B6B]",children:F("common.cancel")}),(0,a.jsx)(g.$,{onClick:()=>{B(async()=>{(await E(t,Z.trim()||void 0)).success&&(V(!1),J(""),D.refresh())})},disabled:S,className:"bg-[#D32F2F] hover:bg-[#B71C1C] text-white",children:F(S?"common.processing":"proposals.revokeProposal")})]})]})}),(0,a.jsx)(v.lG,{open:Q,onOpenChange:W,children:(0,a.jsxs)(v.Cf,{className:"sm:max-w-md",children:[(0,a.jsxs)(v.c7,{children:[(0,a.jsx)(v.L3,{children:F("proposals.deleteProposal")}),(0,a.jsx)(v.rr,{children:F("proposals.deleteProposalDesc")})]}),(0,a.jsxs)(v.Es,{className:"gap-2",children:[(0,a.jsx)(g.$,{variant:"outline",onClick:()=>W(!1),className:"border-[#E5E0D8] text-[#6B6B6B]",children:F("common.cancel")}),(0,a.jsx)(g.$,{onClick:()=>{B(async()=>{(await k(t,s)).success&&(W(!1),D.push("/projects/".concat(s,"/proposals")),D.refresh())})},disabled:S,className:"bg-[#D32F2F] hover:bg-[#B71C1C] text-white",children:F(S?"common.processing":"common.delete")})]})]})})]})}},88064:(e,t,s)=>{"use strict";s.d(t,{J:()=>i});var a=s(90508);s(1856);var r=s(58057),n=s(24377);function i(e){let{className:t,...s}=e;return(0,a.jsx)(r.Root,{"data-slot":"label",className:(0,n.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...s})}}},e=>{e.O(0,[41282,93151,41752,30996,57084,59764,12079,18944,12790,26885,14655,71350,30724,16544,27201,16551,97784,14753,89644,45532,70552,15183,26394,27378,64187,37784,16467,97868,85573,10344,74951,65496,77358],()=>e(e.s=39236)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[14730],{9210:(e,r,t)=>{"use strict";t.d(r,{CreateProposalForm:()=>f});var a=t(90508),s=t(1856),i=t(23675),n=t(39268),o=t(60532),d=t(48416),l=t(22922),c=t(14554),u=t(57731),v=t(15972),p=t(88064),b=t(52217);let g=(0,b.createServerReference)("60b31642ef56632bd85988168c9991ec7e870cf1c2",b.callServer,void 0,b.findSourceMapURL,"createProposalAction");function f(e){let{projectUuid:r,availableIdeas:t,preselectedIdeaUuid:b}=e,f=(0,n.c)(),x=(0,i.useRouter)(),[m,h]=(0,s.useTransition)(),[y,j]=(0,s.useState)(""),[w,k]=(0,s.useState)(""),[N,E]=(0,s.useState)(b?[b]:[]),[C,P]=(0,s.useState)(null);return(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)(d.Zp,{className:"border-[#E5E0D8] p-6",children:[(0,a.jsx)("h2",{className:"mb-4 text-lg font-medium text-[#2C2C2C]",children:f("proposals.basicInfo")}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)(p.J,{className:"mb-2 block text-[#6B6B6B]",children:[f("proposals.title")," *"]}),(0,a.jsx)(c.p,{value:y,onChange:e=>j(e.target.value),placeholder:f("proposals.titlePlaceholder"),className:"border-[#E5E0D8]"})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)(p.J,{className:"mb-2 block text-[#6B6B6B]",children:f("common.description")}),(0,a.jsx)(v.T,{value:w,onChange:e=>k(e.target.value),placeholder:f("proposals.descriptionPlaceholder"),className:"h-24 resize-none border-[#E5E0D8]"})]})]})]}),(0,a.jsxs)(d.Zp,{className:"border-[#E5E0D8] p-6",children:[(0,a.jsxs)("h2",{className:"mb-4 text-lg font-medium text-[#2C2C2C]",children:[f("proposals.selectSourceIdeas")," *"]}),0===t.length?(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A]",children:f("proposals.noAvailableIdeas")}):(0,a.jsx)("div",{className:"space-y-2",children:t.map(e=>(0,a.jsxs)("div",{onClick:()=>{var r;return r=e.uuid,void E(e=>e.includes(r)?e.filter(e=>e!==r):[...e,r])},className:"flex cursor-pointer items-center justify-between rounded-lg border p-3 transition-colors ".concat(N.includes(e.uuid)?"border-[#C67A52] bg-[#FFFBF8]":"border-[#E5E0D8] hover:border-[#C67A52]"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsx)("div",{className:"flex h-5 w-5 items-center justify-center rounded border ".concat(N.includes(e.uuid)?"border-[#C67A52] bg-[#C67A52] text-white":"border-[#E5E0D8]"),children:N.includes(e.uuid)&&(0,a.jsx)(o.A,{className:"h-3 w-3",strokeWidth:3})}),(0,a.jsx)("span",{className:"font-medium text-[#2C2C2C]",children:e.title})]}),(0,a.jsx)(u.E,{variant:"outline",className:"text-xs",children:e.status})]},e.uuid))})]}),C&&(0,a.jsx)("div",{className:"rounded-lg bg-[#FFEBEE] p-3 text-sm text-[#D32F2F]",children:C}),(0,a.jsxs)("div",{className:"flex justify-end gap-3",children:[(0,a.jsx)(l.$,{variant:"outline",onClick:()=>x.back(),disabled:m,className:"border-[#E5E0D8]",children:f("common.cancel")}),(0,a.jsx)(l.$,{onClick:()=>y.trim()?0===N.length?void P(f("proposals.selectAtLeastOneIdea")):void(P(null),h(async()=>{let e=await g(r,{title:y.trim(),description:w.trim()||void 0,inputType:"idea",inputUuids:N});e.success&&e.proposal?x.push("/projects/".concat(r,"/proposals/").concat(e.proposal.uuid)):P(e.error||f("proposals.createFailed"))})):void P(f("proposals.titleRequired")),disabled:m,className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:m?f("common.creating"):f("proposals.createAndEdit")})]})]})}},14554:(e,r,t)=>{"use strict";t.d(r,{p:()=>i});var a=t(90508);t(1856);var s=t(24377);function i(e){let{className:r,type:t,...i}=e;return(0,a.jsx)("input",{type:t,"data-slot":"input",className:(0,s.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",r),...i})}},15972:(e,r,t)=>{"use strict";t.d(r,{T:()=>i});var a=t(90508);t(1856);var s=t(24377);function i(e){let{className:r,...t}=e;return(0,a.jsx)("textarea",{"data-slot":"textarea",className:(0,s.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",r),...t})}},22922:(e,r,t)=>{"use strict";t.d(r,{$:()=>d});var a=t(90508);t(1856);var s=t(49499),i=t(54154),n=t(24377);let o=(0,s.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function d(e){let{className:r,variant:t="default",size:s="default",asChild:d=!1,...l}=e,c=d?i.bL:"button";return(0,a.jsx)(c,{"data-slot":"button","data-variant":t,"data-size":s,className:(0,n.cn)(o({variant:t,size:s,className:r})),...l})}},23675:(e,r,t)=>{"use strict";var a=t(84675);t.o(a,"useParams")&&t.d(r,{useParams:function(){return a.useParams}}),t.o(a,"usePathname")&&t.d(r,{usePathname:function(){return a.usePathname}}),t.o(a,"useRouter")&&t.d(r,{useRouter:function(){return a.useRouter}}),t.o(a,"useSearchParams")&&t.d(r,{useSearchParams:function(){return a.useSearchParams}})},24377:(e,r,t)=>{"use strict";t.d(r,{cn:()=>i});var a=t(49251),s=t(58849);function i(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return(0,s.QP)((0,a.$)(r))}},31309:(e,r,t)=>{Promise.resolve().then(t.bind(t,9210))},48416:(e,r,t)=>{"use strict";t.d(r,{BT:()=>d,Wu:()=>l,ZB:()=>o,Zp:()=>i,aR:()=>n});var a=t(90508);t(1856);var s=t(24377);function i(e){let{className:r,...t}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,s.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",r),...t})}function n(e){let{className:r,...t}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",r),...t})}function o(e){let{className:r,...t}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",r),...t})}function d(e){let{className:r,...t}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,s.cn)("text-muted-foreground text-sm",r),...t})}function l(e){let{className:r,...t}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",r),...t})}},52217:(e,r,t)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),!function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(r,{callServer:function(){return a.callServer},createServerReference:function(){return i.createServerReference},findSourceMapURL:function(){return s.findSourceMapURL}});let a=t(53874),s=t(11550),i=t(31802)},57731:(e,r,t)=>{"use strict";t.d(r,{E:()=>d});var a=t(90508);t(1856);var s=t(49499),i=t(54154),n=t(24377);let o=(0,s.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function d(e){let{className:r,variant:t="default",asChild:s=!1,...d}=e,l=s?i.bL:"span";return(0,a.jsx)(l,{"data-slot":"badge","data-variant":t,className:(0,n.cn)(o({variant:t}),r),...d})}},58057:(e,r,t)=>{"use strict";t.r(r),t.d(r,{Label:()=>n,Root:()=>o});var a=t(1856),s=t(93367),i=t(90508),n=a.forwardRef((e,r)=>(0,i.jsx)(s.sG.label,{...e,ref:r,onMouseDown:r=>{var t;r.target.closest("button, input, select, textarea")||(null==(t=e.onMouseDown)||t.call(e,r),!r.defaultPrevented&&r.detail>1&&r.preventDefault())}}));n.displayName="Label";var o=n},60532:(e,r,t)=>{"use strict";t.d(r,{A:()=>a});let a=(0,t(66206).A)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},88064:(e,r,t)=>{"use strict";t.d(r,{J:()=>n});var a=t(90508);t(1856);var s=t(58057),i=t(24377);function n(e){let{className:r,...t}=e;return(0,a.jsx)(s.Root,{"data-slot":"label",className:(0,i.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",r),...t})}},93367:(e,r,t)=>{"use strict";t.d(r,{bL:()=>l,hO:()=>d,sG:()=>o});var a=t(1856),s=t(38129),i=t(54154),n=t(90508),o=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{let t=(0,i.TL)(`Primitive.${r}`),s=a.forwardRef((e,a)=>{let{asChild:s,...i}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,n.jsx)(s?t:r,{...i,ref:a})});return s.displayName=`Primitive.${r}`,{...e,[r]:s}},{});function d(e,r){e&&s.flushSync(()=>e.dispatchEvent(r))}var l=o}},e=>{e.O(0,[12079,18944,74951,65496,77358],()=>e(e.s=31309)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[91143],{24377:(e,t,r)=>{"use strict";r.d(t,{cn:()=>s});var n=r(49251),a=r(58849);function s(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,a.QP)((0,n.$)(t))}},30423:(e,t,r)=>{"use strict";r.d(t,{j:()=>a});let n=["#E06C75","#E5C07B","#98C379","#56B6C2","#61AFEF","#C678DD","#D19A66","#BE5046","#7EC8E3","#C3E88D","#F78C6C","#A9DC76"];function a(e){let t=function(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r)|0;return Math.abs(t)}(e)%n.length;return n[t]}},45477:(e,t,r)=>{"use strict";r.d(t,{z:()=>a});var n=r(87161);function a(){return(0,n.useSyncExternalStore)(s,()=>!0,()=>!1)}function s(){return()=>{}}},47754:(e,t,r)=>{"use strict";r.d(t,{fv:()=>v,xQ:()=>h});var n=r(1856),a=r(63964);let s=new Map,i=new Map,o=new Map,l=new Set,c=0;function d(e,t,r,n){return r?n?"".concat(e,":").concat(t,":").concat(r,":").concat(n):"".concat(e,":").concat(t,":").concat(r):"".concat(e,":").concat(t)}function u(){c++,l.forEach(e=>e())}function f(e){var t;let r=e.subEntityType,n=e.subEntityUuid,a=d(e.entityType,e.entityUuid,r,n),l=function(e,t,r,n,a){let s=d(e,t,n,a);return"".concat(s,":").concat(r)}(e.entityType,e.entityUuid,e.agentUuid,r,n),c=i.get(l);if(c&&Date.now()-c<3e3)return;i.set(l,Date.now());let f={agentUuid:e.agentUuid,agentName:e.agentName,action:e.action,timestamp:Date.now()},p=(null!=(t=s.get(a))?t:[]).filter(t=>t.agentUuid!==e.agentUuid);p.push(f),s.set(a,p);let m=o.get(l);m&&clearTimeout(m);let v=setTimeout(()=>{let t=s.get(a);if(t){let r=t.filter(t=>t.agentUuid!==e.agentUuid);0===r.length?s.delete(a):s.set(a,r)}i.delete(l),o.delete(l),u()},3e3);o.set(l,v),u()}function p(){return c}function m(e){return l.add(e),()=>{l.delete(e)}}function v(e){f({type:"presence",companyUuid:"",projectUuid:"",...e,timestamp:Date.now()})}function h(){return(0,n.useSyncExternalStore)(m,p,p),(0,a.S2)(f),{getPresence:(e,t,r,n)=>{if(r){var a;return null!=(a=s.get(d(e,t,r,n)))?a:[]}let i="".concat(e,":").concat(t),o=new Map;for(let[e,t]of s)if(e===i||e.startsWith(i+":"))for(let e of t){let t=o.get(e.agentUuid);(!t||e.timestamp>t.timestamp)&&o.set(e.agentUuid,e)}return[...o.values()]}}}},48416:(e,t,r)=>{"use strict";r.d(t,{BT:()=>l,Wu:()=>c,ZB:()=>o,Zp:()=>s,aR:()=>i});var n=r(90508);r(1856);var a=r(24377);function s(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card",className:(0,a.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...r})}function i(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,a.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function o(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,a.cn)("leading-none font-semibold",t),...r})}function l(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-description",className:(0,a.cn)("text-muted-foreground text-sm",t),...r})}function c(e){let{className:t,...r}=e;return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,a.cn)("px-6",t),...r})}},57731:(e,t,r)=>{"use strict";r.d(t,{E:()=>l});var n=r(90508);r(1856);var a=r(49499),s=r(54154),i=r(24377);let o=(0,a.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function l(e){let{className:t,variant:r="default",asChild:a=!1,...l}=e,c=a?s.bL:"span";return(0,n.jsx)(c,{"data-slot":"badge","data-variant":r,className:(0,i.cn)(o({variant:r}),t),...l})}},58057:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Label:()=>i,Root:()=>o});var n=r(1856),a=r(93367),s=r(90508),i=n.forwardRef((e,t)=>(0,s.jsx)(a.sG.label,{...e,ref:t,onMouseDown:t=>{var r;t.target.closest("button, input, select, textarea")||(null==(r=e.onMouseDown)||r.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));i.displayName="Label";var o=i},59146:(e,t,r)=>{Promise.resolve().then(r.bind(r,52053)),Promise.resolve().then(r.bind(r,90299)),Promise.resolve().then(r.bind(r,65514)),Promise.resolve().then(r.bind(r,98861)),Promise.resolve().then(r.bind(r,38476)),Promise.resolve().then(r.bind(r,74542)),Promise.resolve().then(r.bind(r,71350)),Promise.resolve().then(r.bind(r,39025)),Promise.resolve().then(r.bind(r,75368)),Promise.resolve().then(r.bind(r,89684)),Promise.resolve().then(r.bind(r,58057)),Promise.resolve().then(r.bind(r,6512)),Promise.resolve().then(r.bind(r,25051)),Promise.resolve().then(r.bind(r,4374)),Promise.resolve().then(r.bind(r,19345)),Promise.resolve().then(r.bind(r,79919)),Promise.resolve().then(r.bind(r,17533)),Promise.resolve().then(r.bind(r,99545)),Promise.resolve().then(r.bind(r,63197)),Promise.resolve().then(r.bind(r,65326)),Promise.resolve().then(r.bind(r,48218)),Promise.resolve().then(r.bind(r,56260)),Promise.resolve().then(r.bind(r,60322)),Promise.resolve().then(r.bind(r,79834)),Promise.resolve().then(r.bind(r,6947)),Promise.resolve().then(r.bind(r,88878)),Promise.resolve().then(r.bind(r,34857)),Promise.resolve().then(r.bind(r,97006)),Promise.resolve().then(r.bind(r,45841)),Promise.resolve().then(r.t.bind(r,12790,23)),Promise.resolve().then(r.bind(r,60912))},60322:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Root:()=>j,Switch:()=>x,SwitchThumb:()=>g,Thumb:()=>E,createSwitchScope:()=>m});var n=r(1856),a=r(33328),s=r(34124),i=r(21032),o=r(66249),l=r(72009),c=r(3705),d=r(93367),u=r(90508),f="Switch",[p,m]=(0,i.A)(f),[v,h]=p(f),x=n.forwardRef((e,t)=>{let{__scopeSwitch:r,name:i,checked:l,defaultChecked:c,required:p,disabled:m,value:h="on",onCheckedChange:x,form:b,...g}=e,[j,E]=n.useState(null),N=(0,s.s)(t,e=>E(e)),k=n.useRef(!1),S=!j||b||!!j.closest("form"),[C,P]=(0,o.i)({prop:l,defaultProp:null!=c&&c,onChange:x,caller:f});return(0,u.jsxs)(v,{scope:r,checked:C,disabled:m,children:[(0,u.jsx)(d.sG.button,{type:"button",role:"switch","aria-checked":C,"aria-required":p,"data-state":w(C),"data-disabled":m?"":void 0,disabled:m,value:h,...g,ref:N,onClick:(0,a.mK)(e.onClick,e=>{P(e=>!e),S&&(k.current=e.isPropagationStopped(),k.current||e.stopPropagation())})}),S&&(0,u.jsx)(y,{control:j,bubbles:!k.current,name:i,value:h,checked:C,required:p,disabled:m,form:b,style:{transform:"translateX(-100%)"}})]})});x.displayName=f;var b="SwitchThumb",g=n.forwardRef((e,t)=>{let{__scopeSwitch:r,...n}=e,a=h(b,r);return(0,u.jsx)(d.sG.span,{"data-state":w(a.checked),"data-disabled":a.disabled?"":void 0,...n,ref:t})});g.displayName=b;var y=n.forwardRef((e,t)=>{let{__scopeSwitch:r,control:a,checked:i,bubbles:o=!0,...d}=e,f=n.useRef(null),p=(0,s.s)(f,t),m=(0,l.Z)(i),v=(0,c.X)(a);return n.useEffect(()=>{let e=f.current;if(!e)return;let t=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(m!==i&&t){let r=new Event("click",{bubbles:o});t.call(e,i),e.dispatchEvent(r)}},[m,i,o]),(0,u.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:i,...d,tabIndex:-1,ref:p,style:{...d.style,...v,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function w(e){return e?"checked":"unchecked"}y.displayName="SwitchBubbleInput";var j=x,E=g},60912:(e,t,r)=>{"use strict";r.d(t,{ProposalKanban:()=>N});var n=r(90508),a=r(1856),s=r(12790),i=r.n(s),o=r(39268),l=r(48416),c=r(57731),d=r(5425),u=r(94903),f=r(97261),p=r(63964),m=r(62205),v=r(96213),h=r(16544),x=r(52217);let b=(0,x.createServerReference)("40eaf0c7b19d63c26aecd8ee1e9c54463107a27d74",x.callServer,void 0,x.findSourceMapURL,"fetchProposalsAction"),g=[{id:"draft",labelKey:"status.draft",statuses:["draft"]},{id:"pending",labelKey:"status.pendingReview",statuses:["pending"]},{id:"completed",labelKey:"proposals.completed",statuses:["approved","closed"]}],y={draft:"bg-[#F5F5F5] text-[#6B6B6B]",pending:"bg-[#FFF3E0] text-[#E65100]",approved:"bg-[#E8F5E9] text-[#2E7D32]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"},w={draft:"draft",pending:"pendingReview",approved:"approved",closed:"closed"},j=[{id:"all",labelKey:"proposals.all",statuses:[]},...g];function E(e){let{proposal:t,projectUuid:r,t:a}=e,s=function(e){var t,r;let n=(null==(t=e.documentDrafts)?void 0:t.length)||0,a=(null==(r=e.taskDrafts)?void 0:r.length)||0;return n>0&&a>0?"proposals.typeDocumentAndTasks":n>0?1===n?"proposals.typeNewDocument":"proposals.typeDocumentUpdate":a>0?"proposals.typeTaskBreakdown":null}(t);return(0,n.jsx)(i(),{href:"/projects/".concat(r,"/proposals/").concat(t.uuid),className:"block",children:(0,n.jsx)(v.D,{entityType:"proposal",entityUuid:t.uuid,children:(0,n.jsxs)(l.Zp,{className:"cursor-pointer border-[#E5E0D8] bg-white p-4 transition-all hover:border-[#C67A52] hover:shadow-sm",children:[(0,n.jsxs)("div",{className:"mb-2 flex items-start justify-between",children:[(0,n.jsx)(c.E,{className:y[t.status]||y.draft,children:a("status.".concat(w[t.status]||t.status))}),s&&(0,n.jsx)("span",{className:"rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:a(s)})]}),(0,n.jsx)("h4",{className:"mb-1 font-medium text-[#2C2C2C]",children:t.title}),t.description&&(0,n.jsx)("div",{className:"prose prose-sm max-w-none mb-2 line-clamp-2 text-sm text-[#6B6B6B]",children:(0,n.jsx)(f.MarkdownContent,{children:t.description})}),(0,n.jsx)("div",{className:"flex items-center justify-between text-xs text-[#9A9A9A]",children:t.createdBy&&(0,n.jsxs)("span",{className:"flex items-center gap-1",children:["agent"===t.createdByType?(0,n.jsx)(d.A,{className:"h-3 w-3"}):(0,n.jsx)(u.A,{className:"h-3 w-3"}),t.createdBy.name]})})]})})})}function N(e){let{projectUuid:t,proposals:r}=e,s=(0,o.c)(),i=(0,m.a)(),[l,c]=(0,a.useState)("all"),[d,u]=(0,a.useState)(r);(0,a.useEffect)(()=>{u(r)},[r]);let f=(0,a.useCallback)(async()=>{let e=await b(t);e.success&&u(e.data)},[t]);(0,p.eV)("proposal",f);let v=e=>d.filter(t=>e.includes(t.status));if(i){let e=j.find(e=>e.id===l)||j[0],r="all"===l?d:v(e.statuses);return(0,n.jsxs)("div",{className:"flex flex-1 flex-col",children:[(0,n.jsx)("div",{className:"flex gap-2 overflow-x-auto pb-3 mb-4",children:j.map(e=>{let t="all"===e.id?d.length:v(e.statuses).length,r=l===e.id;return(0,n.jsxs)("button",{onClick:()=>c(e.id),className:"flex shrink-0 items-center gap-1.5 rounded-full px-3 py-1.5 text-sm font-medium transition-colors ".concat(r?"bg-[#C67A52] text-white":"bg-[#F5F2EC] text-[#6B6B6B] hover:bg-[#EDE9E1]"),children:[s(e.labelKey),(0,n.jsx)("span",{className:"rounded-full px-1.5 py-0.5 text-xs ".concat(r?"bg-white/20 text-white":"bg-white text-[#6B6B6B]"),children:t})]},e.id)})}),(0,n.jsx)("div",{className:"flex-1 space-y-3",children:0===r.length?(0,n.jsx)(h.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:s("proposals.noProposals")}):r.map(e=>(0,n.jsx)(E,{proposal:e,projectUuid:t,t:s},e.uuid))})]})}return(0,n.jsx)("div",{className:"flex flex-1 gap-4 overflow-x-auto pb-4",children:g.map(e=>{let r=v(e.statuses);return(0,n.jsxs)("div",{className:"flex w-[300px] flex-shrink-0 flex-col rounded-xl bg-[#F5F2EC] p-4",children:[(0,n.jsx)("div",{className:"mb-4 flex items-center justify-between",children:(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("h3",{className:"font-medium text-[#2C2C2C]",children:s(e.labelKey)}),(0,n.jsx)("span",{className:"rounded-full bg-white px-2 py-0.5 text-xs font-medium text-[#6B6B6B]",children:r.length})]})}),(0,n.jsx)("div",{className:"flex-1 space-y-4 overflow-y-auto pt-3",children:0===r.length?(0,n.jsx)(h.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:s("proposals.noProposals")}):r.map(e=>(0,n.jsx)(E,{proposal:e,projectUuid:t,t:s},e.uuid))})]},e.id)})})}},62205:(e,t,r)=>{"use strict";r.d(t,{a:()=>a});var n=r(1856);function a(){let[e,t]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{let e=window.matchMedia("(max-width: 767px)");t(e.matches);let r=e=>t(e.matches);return e.addEventListener("change",r),()=>e.removeEventListener("change",r)},[]),e}},63964:(e,t,r)=>{"use strict";r.d(t,{S2:()=>c,eV:()=>l,l9:()=>o,tS:()=>i,w0:()=>d});var n=r(90508),a=r(1856);r(23675);let s=(0,a.createContext)(null);function i(e){let{projectUuid:t,children:r}=e,i=(0,a.useRef)(new Set),o=(0,a.useRef)(new Set),l=(0,a.useRef)(new Set),c=(0,a.useRef)(new Set),d=(0,a.useCallback)(()=>{i.current.forEach(e=>e())},[]),u=(0,a.useCallback)(e=>{o.current.forEach(t=>t(e))},[]);(0,a.useEffect)(()=>{let e,r=null,n=0,a={};function s(){i(),(r=new EventSource(t?"/api/events?projectUuid=".concat(t):"/api/events")).onmessage=t=>{let r=null;try{r=JSON.parse(t.data)}catch(e){return}if(!r)return;if("presence"===r.type)return void l.current.forEach(e=>e(r));if("execution"===r.type)return void c.current.forEach(e=>e(r));let s=r;clearTimeout(e);let i=Date.now(),o=i-n;o>=3e3?(n=i,d()):e=setTimeout(()=>{n=Date.now(),d()},Math.max(1e3,3e3-o));let f=s.entityType;clearTimeout(a[f]),a[f]=setTimeout(()=>{u(s)},300)},r.onerror=()=>{}}function i(){r&&(r.close(),r=null)}function o(){if("visible"===document.visibilityState&&(!r||r.readyState===EventSource.CLOSED))for(let e of(s(),d(),["task","idea","proposal","document","project","project_group"]))u({companyUuid:"",projectUuid:"",entityType:e,entityUuid:"",action:"updated"})}return s(),document.addEventListener("visibilitychange",o),()=>{for(let t in i(),clearTimeout(e),a)clearTimeout(a[t]);document.removeEventListener("visibilitychange",o)}},[t,d,u]);let f=(0,a.useCallback)(e=>(i.current.add(e),()=>{i.current.delete(e)}),[]),p=(0,a.useCallback)(e=>(o.current.add(e),()=>{o.current.delete(e)}),[]),m=(0,a.useCallback)(e=>(l.current.add(e),()=>{l.current.delete(e)}),[]),v=(0,a.useCallback)(e=>(c.current.add(e),()=>{c.current.delete(e)}),[]),h=(0,a.useMemo)(()=>({subscribe:f,subscribeEntity:p,subscribePresence:m,subscribeExecution:v}),[f,p,m,v]);return(0,n.jsx)(s.Provider,{value:h,children:r})}function o(e){let t=(0,a.useContext)(s),r=(0,a.useRef)(e);r.current=e,(0,a.useEffect)(()=>{if(!t)return;let e=()=>r.current();return e(),t.subscribe(e)},[t])}function l(e,t){let r=(0,a.useContext)(s),n=(0,a.useRef)(t);n.current=t;let i=(0,a.useRef)(e);i.current=e,(0,a.useEffect)(()=>{if(r)return r.subscribeEntity(e=>{let t=i.current;(Array.isArray(t)?t.includes(e.entityType):e.entityType===t)&&n.current(e)})},[r])}function c(e){let t=(0,a.useContext)(s),r=(0,a.useRef)(e);r.current=e,(0,a.useEffect)(()=>{if(t)return t.subscribePresence(e=>r.current(e))},[t])}function d(e,t,r){let n=(0,a.useContext)(s),i=(0,a.useRef)(r);i.current=r,(0,a.useEffect)(()=>{if(n)return n.subscribeEntity(r=>{r.entityType===e&&r.entityUuid===t&&i.current(r)})},[n,e,t])}},65514:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Avatar:()=>v,AvatarFallback:()=>g,AvatarImage:()=>x,Fallback:()=>E,Image:()=>j,Root:()=>w,createAvatarScope:()=>f});var n=r(1856),a=r(21032),s=r(32313),i=r(99457),o=r(93367),l=r(45477),c=r(90508),d="Avatar",[u,f]=(0,a.A)(d),[p,m]=u(d),v=n.forwardRef((e,t)=>{let{__scopeAvatar:r,...a}=e,[s,i]=n.useState("idle");return(0,c.jsx)(p,{scope:r,imageLoadingStatus:s,onImageLoadingStatusChange:i,children:(0,c.jsx)(o.sG.span,{...a,ref:t})})});v.displayName=d;var h="AvatarImage",x=n.forwardRef((e,t)=>{let{__scopeAvatar:r,src:a,onLoadingStatusChange:d=()=>{},...u}=e,f=m(h,r),p=function(e,t){let{referrerPolicy:r,crossOrigin:a}=t,s=(0,l.z)(),o=n.useRef(null),c=s?(o.current||(o.current=new window.Image),o.current):null,[d,u]=n.useState(()=>y(c,e));return(0,i.N)(()=>{u(y(c,e))},[c,e]),(0,i.N)(()=>{let e=e=>()=>{u(e)};if(!c)return;let t=e("loaded"),n=e("error");return c.addEventListener("load",t),c.addEventListener("error",n),r&&(c.referrerPolicy=r),"string"==typeof a&&(c.crossOrigin=a),()=>{c.removeEventListener("load",t),c.removeEventListener("error",n)}},[c,a,r]),d}(a,u),v=(0,s.c)(e=>{d(e),f.onImageLoadingStatusChange(e)});return(0,i.N)(()=>{"idle"!==p&&v(p)},[p,v]),"loaded"===p?(0,c.jsx)(o.sG.img,{...u,ref:t,src:a}):null});x.displayName=h;var b="AvatarFallback",g=n.forwardRef((e,t)=>{let{__scopeAvatar:r,delayMs:a,...s}=e,i=m(b,r),[l,d]=n.useState(void 0===a);return n.useEffect(()=>{if(void 0!==a){let e=window.setTimeout(()=>d(!0),a);return()=>window.clearTimeout(e)}},[a]),l&&"loaded"!==i.imageLoadingStatus?(0,c.jsx)(o.sG.span,{...s,ref:t}):null});function y(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?"loaded":"loading"):"error":"idle"}g.displayName=b;var w=v,j=x,E=g},86196:(e,t,r)=>{"use strict";var n=r(1856),a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=n.useState,i=n.useEffect,o=n.useLayoutEffect,l=n.useDebugValue;function c(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!a(e,r)}catch(e){return!0}}var d="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=s({inst:{value:r,getSnapshot:t}}),a=n[0].inst,d=n[1];return o(function(){a.value=r,a.getSnapshot=t,c(a)&&d({inst:a})},[e,r,t]),i(function(){return c(a)&&d({inst:a}),e(function(){c(a)&&d({inst:a})})},[e]),l(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:d},87161:(e,t,r)=>{"use strict";e.exports=r(86196)},94903:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});let n=(0,r(66206).A)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]])},96213:(e,t,r)=>{"use strict";r.d(t,{D:()=>o});var n=r(90508),a=r(47754),s=r(30423),i=r(5425);function o(e){let{entityType:t,entityUuid:r,subEntityType:i,subEntityUuid:o,children:c,badgeInside:d}=e,{getPresence:u}=(0,a.xQ)(),f=u(t,r,i,o),p=f.length>0,m=p&&f.some(e=>"mutate"===e.action),v=p?m?f.find(e=>"mutate"===e.action):f[f.length-1]:null,h=v?(0,s.j)(v.agentName):"transparent";return(0,n.jsxs)("div",{className:"relative",style:p?{outline:"2px ".concat(m?"solid":"dashed"," ").concat(h),outlineOffset:"-2px",borderRadius:"var(--radius)"}:void 0,children:[p&&(0,n.jsxs)("div",{className:"absolute flex gap-1 z-10 justify-end ".concat(d?"top-0.5 right-1.5 max-w-[70%]":"-top-2.5 right-2 max-w-[80%]"),children:[f.slice(0,3).map(e=>(0,n.jsx)(l,{entry:e},e.agentUuid)),f.length>3&&(0,n.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:["+",f.length-3]})]}),c]})}function l(e){let{entry:t}=e,r=(0,s.j)(t.agentName);return(0,n.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:r},children:[(0,n.jsx)(i.A,{className:"h-2.5 w-2.5"}),t.agentName]})}},97261:(e,t,r)=>{"use strict";r.d(t,{MarkdownContent:()=>d});var n=r(90508),a=r(1856),s=r(65700),i=r(19169),o=r(26190);let l={code:i.a,mermaid:o.a},c={mermaid:{fullscreen:!0,download:!0,copy:!0,panZoom:!0}};function d(e){let{children:t,components:r,allowedTags:i,literalTagContent:o}=e,d=function(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=document.documentElement,r=()=>t(e.classList.contains("dark"));r();let n=new MutationObserver(r);return n.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>n.disconnect()},[]),e}(),u=(0,a.useMemo)(()=>({config:{theme:d?"dark":"default"}}),[d]);return(0,n.jsx)(s.jH,{plugins:l,controls:c,mermaid:u,components:r,allowedTags:i,literalTagContent:o,children:t},d?"dark":"light")}}},e=>{e.O(0,[93151,41752,12079,18944,12790,26885,71350,30724,16544,27201,16551,97784,14753,89644,45532,70552,15183,26394,16467,74951,65496,77358],()=>e(e.s=59146)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6725],{},_=>{_.O(0,[41282,93151,41752,30996,57084,59764,8893,12079,18944,12790,26885,14655,71350,30724,16544,27201,16551,97784,14753,89644,45532,70552,15183,26394,27378,64187,37784,56527,97868,85573,46983,78917,74951,65496,77358],()=>_(_.s=78917)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[87674],{},_=>{_.O(0,[41282,93151,41752,30996,57084,59764,8893,12079,18944,12790,26885,14655,71350,30724,16544,27201,16551,97784,14753,89644,45532,70552,15183,26394,27378,64187,37784,56527,97868,85573,46983,78917,74951,65496,77358],()=>_(_.s=78917)),_N_E=_.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11709],{9959:(e,s,t)=>{Promise.resolve().then(t.bind(t,30384))},30384:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>W});var r=t(90508),a=t(1856),n=t(39268),l=t(12790),i=t.n(l),c=t(63964),o=t(1976),d=t(22922),x=t(48416),p=t(57731),u=t(81750),m=t(23217),h=t(29767),g=t(56770),j=t(71388),f=t(17730),b=t(78948),v=t(62898),N=t(5616),w=t(38931),C=t(83064),A=t(51581),y=t(10263),E=t(88634),k=t(5425),D=t(60532),B=t(25373),F=t(55764),G=t(24377);function T(e){let{className:s,value:t,...a}=e;return(0,r.jsx)(F.bL,{"data-slot":"progress",className:(0,G.cn)("bg-[#E5E2DC] relative h-1.5 w-full overflow-hidden rounded-full",s),...a,children:(0,r.jsx)(F.C1,{"data-slot":"progress-indicator",className:"h-full w-full flex-1 rounded-full transition-all duration-500 ease-out",style:{transform:"translateX(-".concat(100-(t||0),"%)"),backgroundColor:"var(--progress-indicator, #C67A52)"}})})}var S=t(95900),P=t(85226),_=t(97438);function O(e){let{open:s,onOpenChange:t,projectName:l,sourceGroupName:i,targetGroupName:c,onConfirm:o}=e,x=(0,n.c)(),[p,u]=(0,a.useTransition)();return(0,r.jsx)(_.lG,{open:s,onOpenChange:t,children:(0,r.jsxs)(_.Cf,{className:"sm:max-w-[440px] gap-0 p-0 rounded-[16px]",showCloseButton:!1,children:[(0,r.jsx)(_.L3,{className:"sr-only",children:x("projectGroups.moveTitle")}),(0,r.jsxs)("div",{className:"flex flex-col items-center gap-4 p-6",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-full bg-[#C67A5220]",children:(0,r.jsx)(S.A,{className:"h-[22px] w-[22px] text-[#C67A52]"})}),(0,r.jsx)("p",{className:"text-base font-semibold text-[#2C2C2C]",children:x("projectGroups.moveTitle")}),(0,r.jsx)(_.rr,{className:"text-center text-[13px] leading-[1.5] text-[#6B6B6B]",children:x("projectGroups.moveDescription",{projectName:l,sourceGroupName:i,targetGroupName:c})})]}),(0,r.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC]",children:[(0,r.jsx)(d.$,{variant:"outline",onClick:()=>t(!1),className:"rounded-lg border-[#E5E2DC] text-[13px]",children:x("common.cancel")}),(0,r.jsxs)(d.$,{onClick:()=>{u(async()=>{await o(),t(!1)})},disabled:p,className:"rounded-lg bg-[#C67A52] hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:[p?(0,r.jsx)(P.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,r.jsx)(D.A,{className:"h-3.5 w-3.5"}),x(p?"common.processing":"projectGroups.confirmMove")]})]})]})})}var R=t(23675),I=t(14554),U=t(88064),$=t(15972),M=t(42305);function z(e){let{open:s,onOpenChange:t,onCreated:l}=e,i=(0,n.c)(),c=(0,R.useRouter)(),[o,x]=(0,a.useTransition)(),[p,u]=(0,a.useState)(""),[m,h]=(0,a.useState)(""),[g,j]=(0,a.useState)(null),f=()=>{p.trim()&&(j(null),x(async()=>{try{let e=await fetch("/api/project-groups",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:p.trim(),description:m.trim()||void 0})}),s=await e.json();s.success?(u(""),h(""),t(!1),null==l||l(),c.refresh()):j(s.error||i("projectGroups.createFailed"))}catch(e){j(i("common.genericError"))}}))};return(0,r.jsx)(_.lG,{open:s,onOpenChange:t,children:(0,r.jsxs)(_.Cf,{className:"sm:max-w-[480px] gap-0 p-0 rounded-[16px]",showCloseButton:!1,children:[(0,r.jsx)(_.c7,{className:"flex flex-row items-center justify-between p-[20px_24px] border-b border-[#E5E2DC]",children:(0,r.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,r.jsx)(E.A,{className:"h-5 w-5 text-[#C67A52]"}),(0,r.jsx)(_.L3,{className:"text-lg font-semibold tracking-[-0.3px] text-[#2C2C2C]",children:i("projectGroups.newGroupTitle")})]})}),(0,r.jsx)(_.rr,{className:"sr-only",children:i("projectGroups.newGroupTitle")}),(0,r.jsxs)("div",{className:"flex flex-col gap-5 p-6",children:[g&&(0,r.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:g}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(U.J,{className:"text-[13px] font-medium text-[#2C2C2C]",children:i("projectGroups.groupName")}),(0,r.jsx)(I.p,{value:p,onChange:e=>u(e.target.value),placeholder:i("projectGroups.groupNamePlaceholder"),className:"h-10 rounded-lg border-[#E5E2DC]",onKeyDown:e=>{!(0,M.P)(e)&&"Enter"===e.key&&p.trim()&&f()}})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(U.J,{className:"text-[13px] font-medium text-[#2C2C2C]",children:i("projectGroups.descriptionOptional")}),(0,r.jsx)($.T,{value:m,onChange:e=>h(e.target.value),placeholder:i("projectGroups.descriptionPlaceholder"),className:"min-h-[80px] rounded-lg border-[#E5E2DC]"})]})]}),(0,r.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC]",children:[(0,r.jsx)(d.$,{variant:"outline",onClick:()=>t(!1),className:"rounded-lg border-[#E5E2DC] text-[13px]",children:i("common.cancel")}),(0,r.jsxs)(d.$,{onClick:f,disabled:o||!p.trim(),className:"rounded-lg bg-[#C67A52] hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:[o?(0,r.jsx)(P.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,r.jsx)(N.A,{className:"h-3.5 w-3.5"}),o?i("common.creating"):i("projectGroups.createGroup")]})]})]})})}var L=t(88738),Z=t(38280);function J(e){return e>=100?{bar:"#1D9E75",text:"#0F6E56"}:e>=60?{bar:"#5DCAA5",text:"#0F6E56"}:e>=30?{bar:"#FAC775",text:"#854F0B"}:{bar:"#F09595",text:"#A32D2D"}}function V(){let e=(0,n.c)("time");return s=>{let t=new Date,r=new Date(s),a=t.getTime()-r.getTime(),n=Math.floor(a/6e4),l=Math.floor(a/36e5),i=Math.floor(a/864e5);return n<1?e("justNow"):n<60?e("minutesAgo",{minutes:n}):l<24?e("hoursAgo",{hours:l}):0===i?e("today"):1===i?e("yesterday"):e("daysAgo",{days:i})}}function K(e){let{counts:s,compact:t=!1}=e,a=(0,n.c)();return(0,r.jsxs)("span",{className:"flex items-center gap-2 text-[#9A9A9A] ".concat(t?"text-[10px]":"text-[11px]"),children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(m.A,{className:"text-[#BDBDBD] ".concat(t?"h-[11px] w-[11px]":"h-3 w-3")}),s.tasks,!t&&" ".concat(a("projects.tasks"))]}),(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(h.A,{className:"text-[#BDBDBD] ".concat(t?"h-[11px] w-[11px]":"h-3 w-3")}),s.ideas,!t&&" ".concat(a("projects.ideas"))]}),(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(g.A,{className:"text-[#BDBDBD] ".concat(t?"h-[11px] w-[11px]":"h-3 w-3")}),s.documents,!t&&" ".concat(a("projects.docs"))]})]})}function H(e){let{project:s}=e,t=(0,n.c)(),a=V(),l=(0,Z.D)(s.name),i=(0,Z.g)(s.name),c=s.counts.tasks>0?Math.round(s.counts.doneTasks/s.counts.tasks*100):0,o=J(c),d=0===s.counts.tasks,x=100===c&&!d;return(0,r.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-[#E5E2DC] bg-white p-4 transition-colors hover:bg-[#F5F2EC]",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg text-[10px] font-bold",style:{backgroundColor:i.bg,color:i.text},children:l}),(0,r.jsx)("span",{className:"truncate text-[13px] font-semibold text-[#2C2C2C]",children:s.name}),d&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#FEF3C7] px-1.5 py-0 text-[10px] font-medium text-[#92400E]",children:t("projects.empty")}),x&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#D1FAE5] px-1.5 py-0 text-[10px] font-medium text-[#065F46]",children:t("projects.complete")})]}),(0,r.jsx)(K,{counts:s.counts}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(T,{value:c,className:"h-1.5 w-full bg-[#F0EDE8]",style:{"--progress-indicator":o.bar}}),(0,r.jsxs)("div",{className:"flex justify-between",children:[(0,r.jsxs)("span",{className:"text-[11px] font-semibold",style:{color:o.text},children:[c,"%"]}),(0,r.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:a(s.updatedAt)})]})]})]})}function X(e){let{project:s,showDivider:t=!0}=e,a=(0,n.c)(),l=V(),i=(0,Z.D)(s.name),c=(0,Z.g)(s.name),o=s.counts.tasks>0?Math.round(s.counts.doneTasks/s.counts.tasks*100):0,d=J(o),x=0===s.counts.tasks,u=100===o&&!x;return(0,r.jsxs)("div",{className:"flex w-full flex-col gap-1.5 px-4 py-2.5 md:flex-row md:items-center md:gap-4 md:px-6 md:py-2",style:t?{borderBottom:"1px solid #0000000a"}:void 0,children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5 md:min-w-0 md:flex-1 md:gap-4",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg text-[10px] font-bold md:h-9 md:w-9 md:rounded-[10px] md:text-[11px]",style:{backgroundColor:c.bg,color:c.text},children:i}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"truncate text-[13px] font-semibold text-[#2C2C2C]",children:s.name}),x&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#FEF3C7] px-1.5 py-0 text-[10px] font-medium text-[#92400E]",children:a("projects.empty")}),u&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#D1FAE5] px-1.5 py-0 text-[10px] font-medium text-[#065F46]",children:a("projects.complete")})]}),(0,r.jsx)("div",{className:"hidden md:block",children:(0,r.jsx)(K,{counts:s.counts})})]})]}),(0,r.jsxs)("div",{className:"flex items-center justify-between md:hidden",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1.5 text-[10px] text-[#9A9A9A]",children:[(0,r.jsx)(K,{counts:s.counts,compact:!0}),(0,r.jsx)("span",{children:"\xb7"}),(0,r.jsx)("span",{children:l(s.updatedAt)})]}),(0,r.jsxs)("span",{className:"text-[10px] font-semibold",style:{color:d.text},children:[o,"%"]})]}),(0,r.jsx)("div",{className:"md:hidden",children:(0,r.jsx)(T,{value:o,className:"h-1 w-full bg-[#F0EDE8]",style:{"--progress-indicator":d.bar}})}),(0,r.jsxs)("div",{className:"hidden w-[200px] shrink-0 items-center gap-2 md:flex",children:[(0,r.jsx)(T,{value:o,className:"h-1.5 flex-1 bg-[#F0EDE8]",style:{"--progress-indicator":d.bar}}),(0,r.jsxs)("span",{className:"w-9 text-right text-[11px] font-semibold",style:{color:d.text},children:[o,"%"]})]}),(0,r.jsx)("span",{className:"hidden w-[80px] shrink-0 text-right text-[11px] text-[#9A9A9A] md:block",children:l(s.updatedAt)})]})}let Y="__ungrouped__";function q(e){let{group:s,projects:t,stats:l,onNewProject:c,defaultOpen:m=!1,viewMode:h}=e,g=(0,n.c)(),[w,C]=(0,a.useState)(m),A=l.totalTasks>0?Math.round(l.completedTasks/l.totalTasks*100):0;return(0,r.jsx)(o.gL,{droppableId:s.uuid,children:(e,a)=>(0,r.jsx)("div",{ref:e.innerRef,...e.droppableProps,children:(0,r.jsx)(u.Nt,{open:w,onOpenChange:C,children:(0,r.jsxs)(x.Zp,{className:"overflow-hidden rounded-2xl border-[#E5E2DC] gap-0 py-0 shadow-none transition-colors hover:border-[#C67A52]/40 ".concat(a.isDraggingOver?"border-[#C67A52] bg-[#C67A5208]":""),children:[(0,r.jsxs)("div",{className:"flex flex-col gap-2 px-4 py-2.5 md:flex-row md:items-center md:justify-between md:px-6 md:py-3",children:[(0,r.jsxs)(u.R6,{className:"flex flex-1 cursor-pointer items-center gap-2.5 text-left md:gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-[#C67A5215] md:h-9 md:w-9",children:(0,r.jsx)(j.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-1.5 md:gap-2",children:[(0,r.jsx)("h2",{className:"truncate text-sm font-semibold text-[#2C2C2C] md:text-base",children:s.name}),(0,r.jsx)(p.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] text-[10px] font-medium text-[#6B6B6B] md:text-[11px]",children:t.length})]}),(0,r.jsxs)("div",{className:"mt-0.5 flex flex-wrap items-center gap-x-3 gap-y-0.5 text-[10px] text-[#9A9A9A] md:text-[11px]",children:[(0,r.jsxs)("span",{children:[l.totalTasks," ",g("projects.tasks")," \xb7"," ",A,"% ",g("projectGroups.complete")]}),(0,r.jsxs)("span",{className:"hidden md:inline",children:[l.openIdeas," ",g("projectGroups.openIdeas")]})]})]}),w?(0,r.jsx)(f.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"}):(0,r.jsx)(b.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"})]}),(0,r.jsxs)("div",{className:"hidden items-center gap-2 md:flex",children:[(0,r.jsx)(i(),{href:"/project-groups/".concat(s.uuid),children:(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",className:"text-xs text-[#C67A52] hover:text-[#B56A42]",children:[g("projectGroups.viewDashboard"),(0,r.jsx)(v.A,{className:"ml-1 h-3 w-3"})]})}),(0,r.jsxs)(d.$,{variant:"outline",size:"sm",className:"border-[#E5E2DC] text-xs",onClick:c,children:[(0,r.jsx)(N.A,{className:"mr-1 h-3 w-3"}),g("projects.newProject")]})]})]}),(0,r.jsx)(u.Ke,{children:(0,r.jsxs)("div",{className:"border-t border-[#0000000a] py-0",children:[0!==t.length||a.isDraggingOver?(0,r.jsx)("div",{className:"grid"===h?"md:grid md:grid-cols-2 md:gap-4 md:p-5 lg:grid-cols-3":"",children:t.map((e,s)=>(0,r.jsx)(o.sx,{draggableId:e.uuid,index:s,children:(a,n)=>(0,r.jsx)("div",{ref:a.innerRef,...a.draggableProps,...a.dragHandleProps,children:(0,r.jsx)(i(),{href:"/projects/".concat(e.uuid,"/dashboard"),draggable:!1,onClick:e=>{n.isDragging&&e.preventDefault()},children:"grid"===h?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"md:hidden transition-colors hover:bg-[#F5F2EC] ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md rounded-lg bg-white":""),children:(0,r.jsx)(X,{project:e,showDivider:s<t.length-1})}),(0,r.jsx)("div",{className:"hidden md:block ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md":""),children:(0,r.jsx)(H,{project:e})})]}):(0,r.jsx)("div",{className:"transition-colors hover:bg-[#F5F2EC] ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md rounded-lg bg-white":""),children:(0,r.jsx)(X,{project:e,showDivider:s<t.length-1})})})})},e.uuid))}):(0,r.jsx)("p",{className:"py-4 text-center text-sm text-[#9A9A9A]",children:g("projectGroups.noProjectsInGroup")}),e.placeholder]})})]})})})})}function Q(e){let{projects:s,onNewProject:t,viewMode:l}=e,c=(0,n.c)(),[m,h]=(0,a.useState)(!1);return(0,r.jsx)(o.gL,{droppableId:Y,children:(e,a)=>0!==s.length||a.isDraggingOver?(0,r.jsx)("div",{ref:e.innerRef,...e.droppableProps,children:(0,r.jsx)(u.Nt,{open:m,onOpenChange:h,children:(0,r.jsxs)(x.Zp,{className:"overflow-hidden rounded-2xl border-[#E5E2DC] gap-0 py-0 shadow-none transition-colors hover:border-[#C67A52]/40 ".concat(a.isDraggingOver?"border-[#C67A52] bg-[#C67A5208]":""),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-2.5 md:px-6 md:py-3",children:[(0,r.jsxs)(u.R6,{className:"flex flex-1 cursor-pointer items-center gap-2.5 text-left md:gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-[#F0EDE8] md:h-9 md:w-9",children:(0,r.jsx)(w.A,{className:"h-4 w-4 text-[#9A9A9A]"})}),(0,r.jsxs)("div",{className:"flex items-center gap-1.5 md:gap-2",children:[(0,r.jsx)("h2",{className:"text-sm font-semibold text-[#6B6B6B] md:text-base",children:c("projectGroups.ungrouped")}),(0,r.jsx)(p.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] text-[10px] font-medium text-[#6B6B6B] md:text-[11px]",children:s.length})]}),m?(0,r.jsx)(f.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"}):(0,r.jsx)(b.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"})]}),(0,r.jsx)("div",{className:"hidden items-center gap-2 md:flex",children:(0,r.jsxs)(d.$,{variant:"outline",size:"sm",className:"shrink-0 border-[#E5E2DC] text-xs",onClick:t,children:[(0,r.jsx)(N.A,{className:"mr-1 h-3 w-3"}),c("projects.newProject")]})})]}),(0,r.jsx)(u.Ke,{children:(0,r.jsxs)("div",{className:"border-t border-[#0000000a] py-0",children:[0===s.length?(0,r.jsx)("p",{className:"py-4 text-center text-sm text-[#9A9A9A]",children:c("projectGroups.noProjectsInGroup")}):(0,r.jsx)("div",{className:"grid"===l?"md:grid md:grid-cols-2 md:gap-4 md:p-5 lg:grid-cols-3":"",children:s.map((e,t)=>(0,r.jsx)(o.sx,{draggableId:e.uuid,index:t,children:(a,n)=>(0,r.jsx)("div",{ref:a.innerRef,...a.draggableProps,...a.dragHandleProps,children:(0,r.jsx)(i(),{href:"/projects/".concat(e.uuid,"/dashboard"),draggable:!1,onClick:e=>{n.isDragging&&e.preventDefault()},children:"grid"===l?(0,r.jsx)("div",{className:n.isDragging?"rotate-1 opacity-90 shadow-md":"",children:(0,r.jsx)(H,{project:e})}):(0,r.jsx)("div",{className:"transition-colors hover:bg-[#F5F2EC] ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md rounded-lg bg-white":""),children:(0,r.jsx)(X,{project:e,showDivider:t<s.length-1})})})})},e.uuid))}),e.placeholder]})})]})})}):(0,r.jsx)("div",{ref:e.innerRef,...e.droppableProps,className:"hidden",children:e.placeholder})})}function W(){var e,s,t,l,i;let p=(0,n.c)(),[u,m]=(0,a.useState)([]),[h,g]=(0,a.useState)([]),[j,f]=(0,a.useState)(!0),[b,v]=(0,a.useState)(null),[F,G]=(0,a.useState)(()=>{{let e=localStorage.getItem("chorus_projects_view_mode");if("list"===e||"grid"===e)return e}return"list"});(0,a.useEffect)(()=>{localStorage.setItem("chorus_projects_view_mode",F)},[F]);let[T,S]=(0,a.useState)(!1),[P,_]=(0,a.useState)(null),[R,I]=(0,a.useState)(!1),[U,$]=(0,a.useState)(!1),M=(0,a.useCallback)(async()=>{try{let[e,s]=await Promise.all([fetch("/api/projects?pageSize=200"),fetch("/api/project-groups")]),t=await e.json(),r=await s.json();t.success&&m(t.data.data||t.data||[]),r.success&&g(r.data.groups||[])}catch(e){}finally{f(!1)}},[]);(0,a.useEffect)(()=>{M(),fetch("/api/agents?pageSize=100").then(e=>e.json()).then(e=>{e.success&&I((e.data.data||e.data||[]).some(e=>{var s;return(null!=(s=e.effectivePermissions)?s:[]).includes("project:write")}))}).catch(()=>{})},[M]),(0,c.eV)(["project","project_group"],()=>{M()});let Z=new Map,J=[];for(let e of u)if(e.groupUuid){let s=Z.get(e.groupUuid)||[];s.push(e),Z.set(e.groupUuid,s)}else J.push(e);function V(e){var s;if(!e)return p("projectGroups.ungrouped");let t=h.find(s=>s.uuid===e);return null!=(s=null==t?void 0:t.name)?s:p("projectGroups.ungrouped")}async function K(){if(!b)return;let e=await fetch("/api/projects/".concat(b.projectUuid,"/group"),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({groupUuid:b.targetGroupUuid})}),s=await e.json();if(!s.success)throw Error(s.error||p("projectGroups.moveFailed"));await M()}return j?(0,r.jsx)("div",{className:"bg-[#FAF8F4] p-4 md:px-8 md:py-6",children:(0,r.jsx)("p",{className:"text-sm text-[#6B6B6B]",children:p("projects.loadingProjects")})}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(o.JY,{onDragEnd:function(e){let{destination:s,source:t,draggableId:r}=e;if(!s||s.droppableId===t.droppableId)return;let a=u.find(e=>e.uuid===r);if(!a)return;let n=s.droppableId===Y?null:s.droppableId,l=a.groupUuid;v({projectUuid:a.uuid,projectName:a.name,sourceGroupName:V(l),targetGroupUuid:n,targetGroupName:V(n)})},children:(0,r.jsxs)("div",{className:"bg-[#FAF8F4] p-4 md:px-8 md:py-6",children:[(0,r.jsxs)("div",{className:"mb-4 md:mb-6",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("h1",{className:"text-2xl font-semibold text-[#2C2C2C]",children:p("projects.title")}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsxs)("div",{className:"hidden overflow-hidden rounded-lg border border-[#E5E2DC] md:flex",children:[(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",onClick:()=>G("list"),className:"flex items-center gap-1.5 rounded-none px-2.5 py-1.5 text-xs font-medium transition-colors ".concat("list"===F?"bg-[#F5F2EC] text-[#C67A52]":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:[(0,r.jsx)(C.A,{className:"h-3.5 w-3.5"}),p("projects.listView")]}),(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",onClick:()=>G("grid"),className:"flex items-center gap-1.5 rounded-none px-2.5 py-1.5 text-xs font-medium transition-colors ".concat("grid"===F?"bg-[#F5F2EC] text-[#C67A52]":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:[(0,r.jsx)(A.A,{className:"h-3.5 w-3.5"}),p("projects.gridView")]})]}),(0,r.jsxs)(d.$,{className:"hidden rounded-xl bg-[#C67A52] px-5 text-white hover:bg-[#B56A42] md:flex",onClick:()=>S(!0),children:[(0,r.jsx)(N.A,{className:"mr-2 h-4 w-4"}),p("projectGroups.newProjectGroup")]})]})]}),(0,r.jsx)("p",{className:"mt-1 text-sm text-[#6B6B6B]",children:p("projects.subtitle")})]}),0===u.length&&0===h.length?(0,r.jsxs)("div",{className:"space-y-5",children:[(0,r.jsx)(x.Zp,{className:"border-[#C67A5230] bg-[#C67A520A] p-6 md:p-8",children:(0,r.jsxs)("div",{className:"flex items-start gap-4",children:[(0,r.jsx)("div",{className:"flex h-11 w-11 shrink-0 items-center justify-center rounded-xl bg-[#C67A5220]",children:(0,r.jsx)(y.A,{className:"h-5 w-5 text-[#C67A52]"})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-lg font-semibold text-[#2C2C2C]",children:p("projects.onboarding.welcomeTitle")}),(0,r.jsx)("p",{className:"mt-1 text-sm text-[#6B6B6B]",children:p("projects.onboarding.welcomeDesc")})]})]})}),(0,r.jsxs)("div",{className:"grid gap-4 md:grid-cols-2",children:[(0,r.jsxs)(x.Zp,{className:"border-[#E5E2DC] p-5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5 mb-2",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-[#C67A5215]",children:(0,r.jsx)(E.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.whatIsGroupTitle")})]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:p("projects.onboarding.whatIsGroupDesc")})]}),(0,r.jsxs)(x.Zp,{className:"border-[#E5E2DC] p-5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5 mb-2",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-[#C67A5215]",children:(0,r.jsx)(w.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.whatIsProjectTitle")})]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:p("projects.onboarding.whatIsProjectDesc")})]})]}),(0,r.jsx)(x.Zp,{className:"border-[#E5E2DC] p-6 md:p-8",children:(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{className:"flex gap-4",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center",children:[(0,r.jsx)("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-[#C67A52] text-xs font-bold text-white",children:"1"}),(0,r.jsx)("div",{className:"mt-2 h-full w-px bg-[#E5E2DC]"})]}),(0,r.jsxs)("div",{className:"flex-1 pb-6",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.step1Title")}),(0,r.jsx)("p",{className:"mt-1 text-[13px] text-[#6B6B6B]",children:p("projects.onboarding.step1Desc")}),(0,r.jsxs)(d.$,{className:"mt-3 rounded-xl bg-[#C67A52] text-white hover:bg-[#B56A42]",onClick:()=>S(!0),children:[(0,r.jsx)(E.A,{className:"mr-2 h-4 w-4"}),p("projects.onboarding.createGroupBtn")]})]})]}),(0,r.jsxs)("div",{className:"flex gap-4",children:[(0,r.jsx)("div",{className:"flex flex-col items-center",children:(0,r.jsx)("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-[#E5E2DC] text-xs font-bold text-[#9A9A9A]",children:"2"})}),(0,r.jsxs)("div",{className:"flex-1",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#9A9A9A]",children:p("projects.onboarding.step2Title")}),(0,r.jsx)("p",{className:"mt-1 text-[13px] text-[#9A9A9A]",children:p("projects.onboarding.step2Desc")})]})]})]})}),R&&(0,r.jsx)(x.Zp,{className:"border-[#E5E2DC] bg-[#F5F2EC] p-5 md:p-6",children:(0,r.jsxs)("div",{className:"flex items-start gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-[#C67A5215]",children:(0,r.jsx)(k.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.agentTipTitle")}),(0,r.jsx)("p",{className:"mt-1 text-[13px] text-[#6B6B6B]",children:p("projects.onboarding.agentTipDesc")}),(0,r.jsxs)("div",{className:"mt-3 relative",children:[(0,r.jsx)("pre",{className:"rounded-lg bg-white border border-[#E5E2DC] p-3 pr-10 text-xs text-[#2C2C2C] whitespace-pre-wrap break-words",children:p("projects.onboarding.agentPromptDefault")}),(0,r.jsx)(d.$,{variant:"ghost",size:"icon",className:"absolute right-2 top-2 h-7 w-7 text-[#9A9A9A] hover:text-[#C67A52]",onClick:()=>{navigator.clipboard.writeText(p("projects.onboarding.agentPromptDefault")),$(!0),setTimeout(()=>$(!1),2e3)},children:U?(0,r.jsx)(D.A,{className:"h-3.5 w-3.5 text-green-600"}):(0,r.jsx)(B.A,{className:"h-3.5 w-3.5"})})]}),U&&(0,r.jsx)("p",{className:"mt-1.5 text-xs text-green-600",children:p("projects.onboarding.copiedPrompt")})]})]})})]}):(0,r.jsxs)("div",{className:"space-y-4",children:[h.map((e,s)=>{let t=Z.get(e.uuid)||[],a=function(e){let s=0,t=0,r=0;for(let a of e)s+=a.counts.tasks,t+=a.counts.doneTasks,r+=a.counts.ideas;return{totalTasks:s,completedTasks:t,openIdeas:r}}(t);return(0,r.jsx)(q,{group:e,projects:t,stats:a,defaultOpen:0===s,viewMode:F,onNewProject:()=>_({groupUuid:e.uuid,groupName:e.name})},e.uuid)}),(0,r.jsx)(Q,{projects:J,viewMode:F,onNewProject:()=>_({groupUuid:null,groupName:p("projectGroups.ungrouped")})}),(0,r.jsxs)(d.$,{className:"w-full rounded-xl bg-[#C67A52] text-white hover:bg-[#B56A42] md:hidden",onClick:()=>S(!0),children:[(0,r.jsx)(N.A,{className:"mr-2 h-4 w-4"}),p("projectGroups.newProjectGroup")]})]})]})}),(0,r.jsx)(O,{open:null!==b,onOpenChange:e=>{e||v(null)},projectName:null!=(e=null==b?void 0:b.projectName)?e:"",sourceGroupName:null!=(s=null==b?void 0:b.sourceGroupName)?s:"",targetGroupName:null!=(t=null==b?void 0:b.targetGroupName)?t:"",onConfirm:K}),(0,r.jsx)(z,{open:T,onOpenChange:S,onCreated:()=>{S(!1),M()}}),(0,r.jsx)(L.C,{open:null!==P,onOpenChange:e=>{e||_(null)},groupUuid:null!=(l=null==P?void 0:P.groupUuid)?l:null,groupName:null!=(i=null==P?void 0:P.groupName)?i:"",onCreated:()=>{_(null),M()}})]})}},57731:(e,s,t)=>{"use strict";t.d(s,{E:()=>c});var r=t(90508);t(1856);var a=t(49499),n=t(54154),l=t(24377);let i=(0,a.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function c(e){let{className:s,variant:t="default",asChild:a=!1,...c}=e,o=a?n.bL:"span";return(0,r.jsx)(o,{"data-slot":"badge","data-variant":t,className:(0,l.cn)(i({variant:t}),s),...c})}},63964:(e,s,t)=>{"use strict";t.d(s,{S2:()=>o,eV:()=>c,l9:()=>i,tS:()=>l,w0:()=>d});var r=t(90508),a=t(1856);t(23675);let n=(0,a.createContext)(null);function l(e){let{projectUuid:s,children:t}=e,l=(0,a.useRef)(new Set),i=(0,a.useRef)(new Set),c=(0,a.useRef)(new Set),o=(0,a.useRef)(new Set),d=(0,a.useCallback)(()=>{l.current.forEach(e=>e())},[]),x=(0,a.useCallback)(e=>{i.current.forEach(s=>s(e))},[]);(0,a.useEffect)(()=>{let e,t=null,r=0,a={};function n(){l(),(t=new EventSource(s?"/api/events?projectUuid=".concat(s):"/api/events")).onmessage=s=>{let t=null;try{t=JSON.parse(s.data)}catch(e){return}if(!t)return;if("presence"===t.type)return void c.current.forEach(e=>e(t));if("execution"===t.type)return void o.current.forEach(e=>e(t));let n=t;clearTimeout(e);let l=Date.now(),i=l-r;i>=3e3?(r=l,d()):e=setTimeout(()=>{r=Date.now(),d()},Math.max(1e3,3e3-i));let p=n.entityType;clearTimeout(a[p]),a[p]=setTimeout(()=>{x(n)},300)},t.onerror=()=>{}}function l(){t&&(t.close(),t=null)}function i(){if("visible"===document.visibilityState&&(!t||t.readyState===EventSource.CLOSED))for(let e of(n(),d(),["task","idea","proposal","document","project","project_group"]))x({companyUuid:"",projectUuid:"",entityType:e,entityUuid:"",action:"updated"})}return n(),document.addEventListener("visibilitychange",i),()=>{for(let s in l(),clearTimeout(e),a)clearTimeout(a[s]);document.removeEventListener("visibilitychange",i)}},[s,d,x]);let p=(0,a.useCallback)(e=>(l.current.add(e),()=>{l.current.delete(e)}),[]),u=(0,a.useCallback)(e=>(i.current.add(e),()=>{i.current.delete(e)}),[]),m=(0,a.useCallback)(e=>(c.current.add(e),()=>{c.current.delete(e)}),[]),h=(0,a.useCallback)(e=>(o.current.add(e),()=>{o.current.delete(e)}),[]),g=(0,a.useMemo)(()=>({subscribe:p,subscribeEntity:u,subscribePresence:m,subscribeExecution:h}),[p,u,m,h]);return(0,r.jsx)(n.Provider,{value:g,children:t})}function i(e){let s=(0,a.useContext)(n),t=(0,a.useRef)(e);t.current=e,(0,a.useEffect)(()=>{if(!s)return;let e=()=>t.current();return e(),s.subscribe(e)},[s])}function c(e,s){let t=(0,a.useContext)(n),r=(0,a.useRef)(s);r.current=s;let l=(0,a.useRef)(e);l.current=e,(0,a.useEffect)(()=>{if(t)return t.subscribeEntity(e=>{let s=l.current;(Array.isArray(s)?s.includes(e.entityType):e.entityType===s)&&r.current(e)})},[t])}function o(e){let s=(0,a.useContext)(n),t=(0,a.useRef)(e);t.current=e,(0,a.useEffect)(()=>{if(s)return s.subscribePresence(e=>t.current(e))},[s])}function d(e,s,t){let r=(0,a.useContext)(n),l=(0,a.useRef)(t);l.current=t,(0,a.useEffect)(()=>{if(r)return r.subscribeEntity(t=>{t.entityType===e&&t.entityUuid===s&&l.current(t)})},[r,e,s])}},81750:(e,s,t)=>{"use strict";t.d(s,{Ke:()=>c,Nt:()=>l,R6:()=>i});var r=t(90508),a=t(38476),n=t(24377);function l(e){let{...s}=e;return(0,r.jsx)(a.Root,{"data-slot":"collapsible",...s})}function i(e){let{...s}=e;return(0,r.jsx)(a.Trigger,{"data-slot":"collapsible-trigger",...s})}function c(e){let{className:s,...t}=e;return(0,r.jsx)(a.Content,{"data-slot":"collapsible-content",className:(0,n.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",s),...t})}}},e=>{e.O(0,[8893,12079,18944,12790,71350,16544,56527,19276,78389,93346,74951,65496,77358],()=>e(e.s=9959)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[11709],{9959:(e,s,t)=>{Promise.resolve().then(t.bind(t,30384))},30384:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>W});var r=t(90508),a=t(1856),n=t(39268),l=t(12790),i=t.n(l),c=t(63964),o=t(1976),d=t(22922),x=t(48416),p=t(57731),u=t(81750),m=t(23217),h=t(29767),g=t(56770),j=t(71388),f=t(17730),b=t(78948),v=t(62898),N=t(5616),w=t(38931),C=t(83064),A=t(51581),y=t(10263),E=t(88634),k=t(5425),D=t(60532),B=t(25373),F=t(55764),G=t(24377);function T(e){let{className:s,value:t,...a}=e;return(0,r.jsx)(F.bL,{"data-slot":"progress",className:(0,G.cn)("bg-[#E5E2DC] relative h-1.5 w-full overflow-hidden rounded-full",s),...a,children:(0,r.jsx)(F.C1,{"data-slot":"progress-indicator",className:"h-full w-full flex-1 rounded-full transition-all duration-500 ease-out",style:{transform:"translateX(-".concat(100-(t||0),"%)"),backgroundColor:"var(--progress-indicator, #C67A52)"}})})}var S=t(95900),P=t(85226),_=t(97438);function O(e){let{open:s,onOpenChange:t,projectName:l,sourceGroupName:i,targetGroupName:c,onConfirm:o}=e,x=(0,n.c)(),[p,u]=(0,a.useTransition)();return(0,r.jsx)(_.lG,{open:s,onOpenChange:t,children:(0,r.jsxs)(_.Cf,{className:"sm:max-w-[440px] gap-0 p-0 rounded-[16px]",showCloseButton:!1,children:[(0,r.jsx)(_.L3,{className:"sr-only",children:x("projectGroups.moveTitle")}),(0,r.jsxs)("div",{className:"flex flex-col items-center gap-4 p-6",children:[(0,r.jsx)("div",{className:"flex h-12 w-12 items-center justify-center rounded-full bg-[#C67A5220]",children:(0,r.jsx)(S.A,{className:"h-[22px] w-[22px] text-[#C67A52]"})}),(0,r.jsx)("p",{className:"text-base font-semibold text-[#2C2C2C]",children:x("projectGroups.moveTitle")}),(0,r.jsx)(_.rr,{className:"text-center text-[13px] leading-[1.5] text-[#6B6B6B]",children:x("projectGroups.moveDescription",{projectName:l,sourceGroupName:i,targetGroupName:c})})]}),(0,r.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC]",children:[(0,r.jsx)(d.$,{variant:"outline",onClick:()=>t(!1),className:"rounded-lg border-[#E5E2DC] text-[13px]",children:x("common.cancel")}),(0,r.jsxs)(d.$,{onClick:()=>{u(async()=>{await o(),t(!1)})},disabled:p,className:"rounded-lg bg-[#C67A52] hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:[p?(0,r.jsx)(P.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,r.jsx)(D.A,{className:"h-3.5 w-3.5"}),x(p?"common.processing":"projectGroups.confirmMove")]})]})]})})}var R=t(23675),I=t(14554),U=t(88064),$=t(15972),M=t(42305);function z(e){let{open:s,onOpenChange:t,onCreated:l}=e,i=(0,n.c)(),c=(0,R.useRouter)(),[o,x]=(0,a.useTransition)(),[p,u]=(0,a.useState)(""),[m,h]=(0,a.useState)(""),[g,j]=(0,a.useState)(null),f=()=>{p.trim()&&(j(null),x(async()=>{try{let e=await fetch("/api/project-groups",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:p.trim(),description:m.trim()||void 0})}),s=await e.json();s.success?(u(""),h(""),t(!1),null==l||l(),c.refresh()):j(s.error||i("projectGroups.createFailed"))}catch(e){j(i("common.genericError"))}}))};return(0,r.jsx)(_.lG,{open:s,onOpenChange:t,children:(0,r.jsxs)(_.Cf,{className:"sm:max-w-[480px] gap-0 p-0 rounded-[16px]",showCloseButton:!1,children:[(0,r.jsx)(_.c7,{className:"flex flex-row items-center justify-between p-[20px_24px] border-b border-[#E5E2DC]",children:(0,r.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,r.jsx)(E.A,{className:"h-5 w-5 text-[#C67A52]"}),(0,r.jsx)(_.L3,{className:"text-lg font-semibold tracking-[-0.3px] text-[#2C2C2C]",children:i("projectGroups.newGroupTitle")})]})}),(0,r.jsx)(_.rr,{className:"sr-only",children:i("projectGroups.newGroupTitle")}),(0,r.jsxs)("div",{className:"flex flex-col gap-5 p-6",children:[g&&(0,r.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:g}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(U.J,{className:"text-[13px] font-medium text-[#2C2C2C]",children:i("projectGroups.groupName")}),(0,r.jsx)(I.p,{value:p,onChange:e=>u(e.target.value),placeholder:i("projectGroups.groupNamePlaceholder"),className:"h-10 rounded-lg border-[#E5E2DC]",onKeyDown:e=>{!(0,M.P)(e)&&"Enter"===e.key&&p.trim()&&f()}})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(U.J,{className:"text-[13px] font-medium text-[#2C2C2C]",children:i("projectGroups.descriptionOptional")}),(0,r.jsx)($.T,{value:m,onChange:e=>h(e.target.value),placeholder:i("projectGroups.descriptionPlaceholder"),className:"min-h-[80px] rounded-lg border-[#E5E2DC]"})]})]}),(0,r.jsxs)("div",{className:"flex justify-end gap-3 p-[16px_24px] border-t border-[#E5E2DC]",children:[(0,r.jsx)(d.$,{variant:"outline",onClick:()=>t(!1),className:"rounded-lg border-[#E5E2DC] text-[13px]",children:i("common.cancel")}),(0,r.jsxs)(d.$,{onClick:f,disabled:o||!p.trim(),className:"rounded-lg bg-[#C67A52] hover:bg-[#B56A42] text-white text-[13px] gap-1.5",children:[o?(0,r.jsx)(P.A,{className:"h-3.5 w-3.5 animate-spin"}):(0,r.jsx)(N.A,{className:"h-3.5 w-3.5"}),o?i("common.creating"):i("projectGroups.createGroup")]})]})]})})}var L=t(88738),Z=t(38280);function J(e){return e>=100?{bar:"#1D9E75",text:"#0F6E56"}:e>=60?{bar:"#5DCAA5",text:"#0F6E56"}:e>=30?{bar:"#FAC775",text:"#854F0B"}:{bar:"#F09595",text:"#A32D2D"}}function V(){let e=(0,n.c)("time");return s=>{let t=new Date,r=new Date(s),a=t.getTime()-r.getTime(),n=Math.floor(a/6e4),l=Math.floor(a/36e5),i=Math.floor(a/864e5);return n<1?e("justNow"):n<60?e("minutesAgo",{minutes:n}):l<24?e("hoursAgo",{hours:l}):0===i?e("today"):1===i?e("yesterday"):e("daysAgo",{days:i})}}function K(e){let{counts:s,compact:t=!1}=e,a=(0,n.c)();return(0,r.jsxs)("span",{className:"flex items-center gap-2 text-[#9A9A9A] ".concat(t?"text-[10px]":"text-[11px]"),children:[(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(m.A,{className:"text-[#BDBDBD] ".concat(t?"h-[11px] w-[11px]":"h-3 w-3")}),s.tasks,!t&&" ".concat(a("projects.tasks"))]}),(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(h.A,{className:"text-[#BDBDBD] ".concat(t?"h-[11px] w-[11px]":"h-3 w-3")}),s.ideas,!t&&" ".concat(a("projects.ideas"))]}),(0,r.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,r.jsx)(g.A,{className:"text-[#BDBDBD] ".concat(t?"h-[11px] w-[11px]":"h-3 w-3")}),s.documents,!t&&" ".concat(a("projects.docs"))]})]})}function H(e){let{project:s}=e,t=(0,n.c)(),a=V(),l=(0,Z.D)(s.name),i=(0,Z.g)(s.name),c=s.counts.tasks>0?Math.round(s.counts.doneTasks/s.counts.tasks*100):0,o=J(c),d=0===s.counts.tasks,x=100===c&&!d;return(0,r.jsxs)("div",{className:"flex flex-col gap-3 rounded-xl border border-[#E5E2DC] bg-white p-4 transition-colors hover:bg-[#F5F2EC]",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg text-[10px] font-bold",style:{backgroundColor:i.bg,color:i.text},children:l}),(0,r.jsx)("span",{className:"truncate text-[13px] font-semibold text-[#2C2C2C]",children:s.name}),d&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#FEF3C7] px-1.5 py-0 text-[10px] font-medium text-[#92400E]",children:t("projects.empty")}),x&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#D1FAE5] px-1.5 py-0 text-[10px] font-medium text-[#065F46]",children:t("projects.complete")})]}),(0,r.jsx)(K,{counts:s.counts}),(0,r.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,r.jsx)(T,{value:c,className:"h-1.5 w-full bg-[#F0EDE8]",style:{"--progress-indicator":o.bar}}),(0,r.jsxs)("div",{className:"flex justify-between",children:[(0,r.jsxs)("span",{className:"text-[11px] font-semibold",style:{color:o.text},children:[c,"%"]}),(0,r.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:a(s.updatedAt)})]})]})]})}function X(e){let{project:s,showDivider:t=!0}=e,a=(0,n.c)(),l=V(),i=(0,Z.D)(s.name),c=(0,Z.g)(s.name),o=s.counts.tasks>0?Math.round(s.counts.doneTasks/s.counts.tasks*100):0,d=J(o),x=0===s.counts.tasks,u=100===o&&!x;return(0,r.jsxs)("div",{className:"flex w-full flex-col gap-1.5 px-4 py-2.5 md:flex-row md:items-center md:gap-4 md:px-6 md:py-2",style:t?{borderBottom:"1px solid #0000000a"}:void 0,children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5 md:min-w-0 md:flex-1 md:gap-4",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg text-[10px] font-bold md:h-9 md:w-9 md:rounded-[10px] md:text-[11px]",style:{backgroundColor:c.bg,color:c.text},children:i}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"truncate text-[13px] font-semibold text-[#2C2C2C]",children:s.name}),x&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#FEF3C7] px-1.5 py-0 text-[10px] font-medium text-[#92400E]",children:a("projects.empty")}),u&&(0,r.jsx)(p.E,{variant:"outline",className:"shrink-0 border-0 bg-[#D1FAE5] px-1.5 py-0 text-[10px] font-medium text-[#065F46]",children:a("projects.complete")})]}),(0,r.jsx)("div",{className:"hidden md:block",children:(0,r.jsx)(K,{counts:s.counts})})]})]}),(0,r.jsxs)("div",{className:"flex items-center justify-between md:hidden",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1.5 text-[10px] text-[#9A9A9A]",children:[(0,r.jsx)(K,{counts:s.counts,compact:!0}),(0,r.jsx)("span",{children:"\xb7"}),(0,r.jsx)("span",{children:l(s.updatedAt)})]}),(0,r.jsxs)("span",{className:"text-[10px] font-semibold",style:{color:d.text},children:[o,"%"]})]}),(0,r.jsx)("div",{className:"md:hidden",children:(0,r.jsx)(T,{value:o,className:"h-1 w-full bg-[#F0EDE8]",style:{"--progress-indicator":d.bar}})}),(0,r.jsxs)("div",{className:"hidden w-[200px] shrink-0 items-center gap-2 md:flex",children:[(0,r.jsx)(T,{value:o,className:"h-1.5 flex-1 bg-[#F0EDE8]",style:{"--progress-indicator":d.bar}}),(0,r.jsxs)("span",{className:"w-9 text-right text-[11px] font-semibold",style:{color:d.text},children:[o,"%"]})]}),(0,r.jsx)("span",{className:"hidden w-[80px] shrink-0 text-right text-[11px] text-[#9A9A9A] md:block",children:l(s.updatedAt)})]})}let Y="__ungrouped__";function q(e){let{group:s,projects:t,stats:l,onNewProject:c,defaultOpen:m=!1,viewMode:h}=e,g=(0,n.c)(),[w,C]=(0,a.useState)(m),A=l.totalTasks>0?Math.round(l.completedTasks/l.totalTasks*100):0;return(0,r.jsx)(o.gL,{droppableId:s.uuid,children:(e,a)=>(0,r.jsx)("div",{ref:e.innerRef,...e.droppableProps,children:(0,r.jsx)(u.Nt,{open:w,onOpenChange:C,children:(0,r.jsxs)(x.Zp,{className:"overflow-hidden rounded-2xl border-[#E5E2DC] gap-0 py-0 shadow-none transition-colors hover:border-[#C67A52]/40 ".concat(a.isDraggingOver?"border-[#C67A52] bg-[#C67A5208]":""),children:[(0,r.jsxs)("div",{className:"flex flex-col gap-2 px-4 py-2.5 md:flex-row md:items-center md:justify-between md:px-6 md:py-3",children:[(0,r.jsxs)(u.R6,{className:"flex flex-1 cursor-pointer items-center gap-2.5 text-left md:gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-[#C67A5215] md:h-9 md:w-9",children:(0,r.jsx)(j.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsxs)("div",{className:"flex items-center gap-1.5 md:gap-2",children:[(0,r.jsx)("h2",{className:"truncate text-sm font-semibold text-[#2C2C2C] md:text-base",children:s.name}),(0,r.jsx)(p.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] text-[10px] font-medium text-[#6B6B6B] md:text-[11px]",children:t.length})]}),(0,r.jsxs)("div",{className:"mt-0.5 flex flex-wrap items-center gap-x-3 gap-y-0.5 text-[10px] text-[#9A9A9A] md:text-[11px]",children:[(0,r.jsxs)("span",{children:[l.totalTasks," ",g("projects.tasks")," \xb7"," ",A,"% ",g("projectGroups.complete")]}),(0,r.jsxs)("span",{className:"hidden md:inline",children:[l.openIdeas," ",g("projectGroups.openIdeas")]})]})]}),w?(0,r.jsx)(f.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"}):(0,r.jsx)(b.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"})]}),(0,r.jsxs)("div",{className:"hidden items-center gap-2 md:flex",children:[(0,r.jsx)(i(),{href:"/project-groups/".concat(s.uuid),children:(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",className:"text-xs text-[#C67A52] hover:text-[#B56A42]",children:[g("projectGroups.viewDashboard"),(0,r.jsx)(v.A,{className:"ml-1 h-3 w-3"})]})}),(0,r.jsxs)(d.$,{variant:"outline",size:"sm",className:"border-[#E5E2DC] text-xs",onClick:c,children:[(0,r.jsx)(N.A,{className:"mr-1 h-3 w-3"}),g("projects.newProject")]})]})]}),(0,r.jsx)(u.Ke,{children:(0,r.jsxs)("div",{className:"border-t border-[#0000000a] py-0",children:[0!==t.length||a.isDraggingOver?(0,r.jsx)("div",{className:"grid"===h?"md:grid md:grid-cols-2 md:gap-4 md:p-5 lg:grid-cols-3":"",children:t.map((e,s)=>(0,r.jsx)(o.sx,{draggableId:e.uuid,index:s,children:(a,n)=>(0,r.jsx)("div",{ref:a.innerRef,...a.draggableProps,...a.dragHandleProps,children:(0,r.jsx)(i(),{href:"/projects/".concat(e.uuid,"/dashboard"),draggable:!1,onClick:e=>{n.isDragging&&e.preventDefault()},children:"grid"===h?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"md:hidden transition-colors hover:bg-[#F5F2EC] ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md rounded-lg bg-white":""),children:(0,r.jsx)(X,{project:e,showDivider:s<t.length-1})}),(0,r.jsx)("div",{className:"hidden md:block ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md":""),children:(0,r.jsx)(H,{project:e})})]}):(0,r.jsx)("div",{className:"transition-colors hover:bg-[#F5F2EC] ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md rounded-lg bg-white":""),children:(0,r.jsx)(X,{project:e,showDivider:s<t.length-1})})})})},e.uuid))}):(0,r.jsx)("p",{className:"py-4 text-center text-sm text-[#9A9A9A]",children:g("projectGroups.noProjectsInGroup")}),e.placeholder]})})]})})})})}function Q(e){let{projects:s,onNewProject:t,viewMode:l}=e,c=(0,n.c)(),[m,h]=(0,a.useState)(!1);return(0,r.jsx)(o.gL,{droppableId:Y,children:(e,a)=>0!==s.length||a.isDraggingOver?(0,r.jsx)("div",{ref:e.innerRef,...e.droppableProps,children:(0,r.jsx)(u.Nt,{open:m,onOpenChange:h,children:(0,r.jsxs)(x.Zp,{className:"overflow-hidden rounded-2xl border-[#E5E2DC] gap-0 py-0 shadow-none transition-colors hover:border-[#C67A52]/40 ".concat(a.isDraggingOver?"border-[#C67A52] bg-[#C67A5208]":""),children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-2.5 md:px-6 md:py-3",children:[(0,r.jsxs)(u.R6,{className:"flex flex-1 cursor-pointer items-center gap-2.5 text-left md:gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-[#F0EDE8] md:h-9 md:w-9",children:(0,r.jsx)(w.A,{className:"h-4 w-4 text-[#9A9A9A]"})}),(0,r.jsxs)("div",{className:"flex items-center gap-1.5 md:gap-2",children:[(0,r.jsx)("h2",{className:"text-sm font-semibold text-[#6B6B6B] md:text-base",children:c("projectGroups.ungrouped")}),(0,r.jsx)(p.E,{variant:"secondary",className:"shrink-0 border-0 bg-[#F0EDE8] text-[10px] font-medium text-[#6B6B6B] md:text-[11px]",children:s.length})]}),m?(0,r.jsx)(f.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"}):(0,r.jsx)(b.A,{className:"ml-auto h-3.5 w-3.5 shrink-0 text-[#9A9A9A] md:h-4 md:w-4"})]}),(0,r.jsx)("div",{className:"hidden items-center gap-2 md:flex",children:(0,r.jsxs)(d.$,{variant:"outline",size:"sm",className:"shrink-0 border-[#E5E2DC] text-xs",onClick:t,children:[(0,r.jsx)(N.A,{className:"mr-1 h-3 w-3"}),c("projects.newProject")]})})]}),(0,r.jsx)(u.Ke,{children:(0,r.jsxs)("div",{className:"border-t border-[#0000000a] py-0",children:[0===s.length?(0,r.jsx)("p",{className:"py-4 text-center text-sm text-[#9A9A9A]",children:c("projectGroups.noProjectsInGroup")}):(0,r.jsx)("div",{className:"grid"===l?"md:grid md:grid-cols-2 md:gap-4 md:p-5 lg:grid-cols-3":"",children:s.map((e,t)=>(0,r.jsx)(o.sx,{draggableId:e.uuid,index:t,children:(a,n)=>(0,r.jsx)("div",{ref:a.innerRef,...a.draggableProps,...a.dragHandleProps,children:(0,r.jsx)(i(),{href:"/projects/".concat(e.uuid,"/dashboard"),draggable:!1,onClick:e=>{n.isDragging&&e.preventDefault()},children:"grid"===l?(0,r.jsx)("div",{className:n.isDragging?"rotate-1 opacity-90 shadow-md":"",children:(0,r.jsx)(H,{project:e})}):(0,r.jsx)("div",{className:"transition-colors hover:bg-[#F5F2EC] ".concat(n.isDragging?"rotate-1 opacity-90 shadow-md rounded-lg bg-white":""),children:(0,r.jsx)(X,{project:e,showDivider:t<s.length-1})})})})},e.uuid))}),e.placeholder]})})]})})}):(0,r.jsx)("div",{ref:e.innerRef,...e.droppableProps,className:"hidden",children:e.placeholder})})}function W(){var e,s,t,l,i;let p=(0,n.c)(),[u,m]=(0,a.useState)([]),[h,g]=(0,a.useState)([]),[j,f]=(0,a.useState)(!0),[b,v]=(0,a.useState)(null),[F,G]=(0,a.useState)(()=>{{let e=localStorage.getItem("chorus_projects_view_mode");if("list"===e||"grid"===e)return e}return"list"});(0,a.useEffect)(()=>{localStorage.setItem("chorus_projects_view_mode",F)},[F]);let[T,S]=(0,a.useState)(!1),[P,_]=(0,a.useState)(null),[R,I]=(0,a.useState)(!1),[U,$]=(0,a.useState)(!1),M=(0,a.useCallback)(async()=>{try{let[e,s]=await Promise.all([fetch("/api/projects?pageSize=200"),fetch("/api/project-groups")]),t=await e.json(),r=await s.json();t.success&&m(t.data.data||t.data||[]),r.success&&g(r.data.groups||[])}catch(e){}finally{f(!1)}},[]);(0,a.useEffect)(()=>{M(),fetch("/api/agents?pageSize=100").then(e=>e.json()).then(e=>{e.success&&I((e.data.data||e.data||[]).some(e=>{var s;return(null!=(s=e.effectivePermissions)?s:[]).includes("project:write")}))}).catch(()=>{})},[M]),(0,c.eV)(["project","project_group"],()=>{M()});let Z=new Map,J=[];for(let e of u)if(e.groupUuid){let s=Z.get(e.groupUuid)||[];s.push(e),Z.set(e.groupUuid,s)}else J.push(e);function V(e){var s;if(!e)return p("projectGroups.ungrouped");let t=h.find(s=>s.uuid===e);return null!=(s=null==t?void 0:t.name)?s:p("projectGroups.ungrouped")}async function K(){if(!b)return;let e=await fetch("/api/projects/".concat(b.projectUuid,"/group"),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({groupUuid:b.targetGroupUuid})}),s=await e.json();if(!s.success)throw Error(s.error||p("projectGroups.moveFailed"));await M()}return j?(0,r.jsx)("div",{className:"bg-[#FAF8F4] p-4 md:px-8 md:py-6",children:(0,r.jsx)("p",{className:"text-sm text-[#6B6B6B]",children:p("projects.loadingProjects")})}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(o.JY,{onDragEnd:function(e){let{destination:s,source:t,draggableId:r}=e;if(!s||s.droppableId===t.droppableId)return;let a=u.find(e=>e.uuid===r);if(!a)return;let n=s.droppableId===Y?null:s.droppableId,l=a.groupUuid;v({projectUuid:a.uuid,projectName:a.name,sourceGroupName:V(l),targetGroupUuid:n,targetGroupName:V(n)})},children:(0,r.jsxs)("div",{className:"bg-[#FAF8F4] p-4 md:px-8 md:py-6",children:[(0,r.jsxs)("div",{className:"mb-4 md:mb-6",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsx)("h1",{className:"text-2xl font-semibold text-[#2C2C2C]",children:p("projects.title")}),(0,r.jsxs)("div",{className:"flex items-center gap-3",children:[(0,r.jsxs)("div",{className:"hidden overflow-hidden rounded-lg border border-[#E5E2DC] md:flex",children:[(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",onClick:()=>G("list"),className:"flex items-center gap-1.5 rounded-none px-2.5 py-1.5 text-xs font-medium transition-colors ".concat("list"===F?"bg-[#F5F2EC] text-[#C67A52]":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:[(0,r.jsx)(C.A,{className:"h-3.5 w-3.5"}),p("projects.listView")]}),(0,r.jsxs)(d.$,{variant:"ghost",size:"sm",onClick:()=>G("grid"),className:"flex items-center gap-1.5 rounded-none px-2.5 py-1.5 text-xs font-medium transition-colors ".concat("grid"===F?"bg-[#F5F2EC] text-[#C67A52]":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:[(0,r.jsx)(A.A,{className:"h-3.5 w-3.5"}),p("projects.gridView")]})]}),(0,r.jsxs)(d.$,{className:"hidden rounded-xl bg-[#C67A52] px-5 text-white hover:bg-[#B56A42] md:flex",onClick:()=>S(!0),children:[(0,r.jsx)(N.A,{className:"mr-2 h-4 w-4"}),p("projectGroups.newProjectGroup")]})]})]}),(0,r.jsx)("p",{className:"mt-1 text-sm text-[#6B6B6B]",children:p("projects.subtitle")})]}),0===u.length&&0===h.length?(0,r.jsxs)("div",{className:"space-y-5",children:[(0,r.jsx)(x.Zp,{className:"border-[#C67A5230] bg-[#C67A520A] p-6 md:p-8",children:(0,r.jsxs)("div",{className:"flex items-start gap-4",children:[(0,r.jsx)("div",{className:"flex h-11 w-11 shrink-0 items-center justify-center rounded-xl bg-[#C67A5220]",children:(0,r.jsx)(y.A,{className:"h-5 w-5 text-[#C67A52]"})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-lg font-semibold text-[#2C2C2C]",children:p("projects.onboarding.welcomeTitle")}),(0,r.jsx)("p",{className:"mt-1 text-sm text-[#6B6B6B]",children:p("projects.onboarding.welcomeDesc")})]})]})}),(0,r.jsxs)("div",{className:"grid gap-4 md:grid-cols-2",children:[(0,r.jsxs)(x.Zp,{className:"border-[#E5E2DC] p-5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5 mb-2",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-[#C67A5215]",children:(0,r.jsx)(E.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.whatIsGroupTitle")})]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:p("projects.onboarding.whatIsGroupDesc")})]}),(0,r.jsxs)(x.Zp,{className:"border-[#E5E2DC] p-5",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2.5 mb-2",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-lg bg-[#C67A5215]",children:(0,r.jsx)(w.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.whatIsProjectTitle")})]}),(0,r.jsx)("p",{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:p("projects.onboarding.whatIsProjectDesc")})]})]}),(0,r.jsx)(x.Zp,{className:"border-[#E5E2DC] p-6 md:p-8",children:(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{className:"flex gap-4",children:[(0,r.jsxs)("div",{className:"flex flex-col items-center",children:[(0,r.jsx)("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-[#C67A52] text-xs font-bold text-white",children:"1"}),(0,r.jsx)("div",{className:"mt-2 h-full w-px bg-[#E5E2DC]"})]}),(0,r.jsxs)("div",{className:"flex-1 pb-6",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.step1Title")}),(0,r.jsx)("p",{className:"mt-1 text-[13px] text-[#6B6B6B]",children:p("projects.onboarding.step1Desc")}),(0,r.jsxs)(d.$,{className:"mt-3 rounded-xl bg-[#C67A52] text-white hover:bg-[#B56A42]",onClick:()=>S(!0),children:[(0,r.jsx)(E.A,{className:"mr-2 h-4 w-4"}),p("projects.onboarding.createGroupBtn")]})]})]}),(0,r.jsxs)("div",{className:"flex gap-4",children:[(0,r.jsx)("div",{className:"flex flex-col items-center",children:(0,r.jsx)("div",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-[#E5E2DC] text-xs font-bold text-[#9A9A9A]",children:"2"})}),(0,r.jsxs)("div",{className:"flex-1",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#9A9A9A]",children:p("projects.onboarding.step2Title")}),(0,r.jsx)("p",{className:"mt-1 text-[13px] text-[#9A9A9A]",children:p("projects.onboarding.step2Desc")})]})]})]})}),R&&(0,r.jsx)(x.Zp,{className:"border-[#E5E2DC] bg-[#F5F2EC] p-5 md:p-6",children:(0,r.jsxs)("div",{className:"flex items-start gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-[#C67A5215]",children:(0,r.jsx)(k.A,{className:"h-4 w-4 text-[#C67A52]"})}),(0,r.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,r.jsx)("h3",{className:"text-sm font-semibold text-[#2C2C2C]",children:p("projects.onboarding.agentTipTitle")}),(0,r.jsx)("p",{className:"mt-1 text-[13px] text-[#6B6B6B]",children:p("projects.onboarding.agentTipDesc")}),(0,r.jsxs)("div",{className:"mt-3 relative",children:[(0,r.jsx)("pre",{className:"rounded-lg bg-white border border-[#E5E2DC] p-3 pr-10 text-xs text-[#2C2C2C] whitespace-pre-wrap break-words",children:p("projects.onboarding.agentPromptDefault")}),(0,r.jsx)(d.$,{variant:"ghost",size:"icon",className:"absolute right-2 top-2 h-7 w-7 text-[#9A9A9A] hover:text-[#C67A52]",onClick:()=>{navigator.clipboard.writeText(p("projects.onboarding.agentPromptDefault")),$(!0),setTimeout(()=>$(!1),2e3)},children:U?(0,r.jsx)(D.A,{className:"h-3.5 w-3.5 text-green-600"}):(0,r.jsx)(B.A,{className:"h-3.5 w-3.5"})})]}),U&&(0,r.jsx)("p",{className:"mt-1.5 text-xs text-green-600",children:p("projects.onboarding.copiedPrompt")})]})]})})]}):(0,r.jsxs)("div",{className:"space-y-4",children:[h.map((e,s)=>{let t=Z.get(e.uuid)||[],a=function(e){let s=0,t=0,r=0;for(let a of e)s+=a.counts.tasks,t+=a.counts.doneTasks,r+=a.counts.ideas;return{totalTasks:s,completedTasks:t,openIdeas:r}}(t);return(0,r.jsx)(q,{group:e,projects:t,stats:a,defaultOpen:0===s,viewMode:F,onNewProject:()=>_({groupUuid:e.uuid,groupName:e.name})},e.uuid)}),(0,r.jsx)(Q,{projects:J,viewMode:F,onNewProject:()=>_({groupUuid:null,groupName:p("projectGroups.ungrouped")})}),(0,r.jsxs)(d.$,{className:"w-full rounded-xl bg-[#C67A52] text-white hover:bg-[#B56A42] md:hidden",onClick:()=>S(!0),children:[(0,r.jsx)(N.A,{className:"mr-2 h-4 w-4"}),p("projectGroups.newProjectGroup")]})]})]})}),(0,r.jsx)(O,{open:null!==b,onOpenChange:e=>{e||v(null)},projectName:null!=(e=null==b?void 0:b.projectName)?e:"",sourceGroupName:null!=(s=null==b?void 0:b.sourceGroupName)?s:"",targetGroupName:null!=(t=null==b?void 0:b.targetGroupName)?t:"",onConfirm:K}),(0,r.jsx)(z,{open:T,onOpenChange:S,onCreated:()=>{S(!1),M()}}),(0,r.jsx)(L.C,{open:null!==P,onOpenChange:e=>{e||_(null)},groupUuid:null!=(l=null==P?void 0:P.groupUuid)?l:null,groupName:null!=(i=null==P?void 0:P.groupName)?i:"",onCreated:()=>{_(null),M()}})]})}},57731:(e,s,t)=>{"use strict";t.d(s,{E:()=>c});var r=t(90508);t(1856);var a=t(49499),n=t(54154),l=t(24377);let i=(0,a.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function c(e){let{className:s,variant:t="default",asChild:a=!1,...c}=e,o=a?n.bL:"span";return(0,r.jsx)(o,{"data-slot":"badge","data-variant":t,className:(0,l.cn)(i({variant:t}),s),...c})}},63964:(e,s,t)=>{"use strict";t.d(s,{S2:()=>o,eV:()=>c,l9:()=>i,tS:()=>l,w0:()=>d});var r=t(90508),a=t(1856);t(23675);let n=(0,a.createContext)(null);function l(e){let{projectUuid:s,children:t}=e,l=(0,a.useRef)(new Set),i=(0,a.useRef)(new Set),c=(0,a.useRef)(new Set),o=(0,a.useRef)(new Set),d=(0,a.useCallback)(()=>{l.current.forEach(e=>e())},[]),x=(0,a.useCallback)(e=>{i.current.forEach(s=>s(e))},[]);(0,a.useEffect)(()=>{let e,t=null,r=0,a={};function n(){l(),(t=new EventSource(s?"/api/events?projectUuid=".concat(s):"/api/events")).onmessage=s=>{let t=null;try{t=JSON.parse(s.data)}catch(e){return}if(!t)return;if("presence"===t.type)return void c.current.forEach(e=>e(t));if("execution"===t.type)return void o.current.forEach(e=>e(t));let n=t;clearTimeout(e);let l=Date.now(),i=l-r;i>=3e3?(r=l,d()):e=setTimeout(()=>{r=Date.now(),d()},Math.max(1e3,3e3-i));let p=n.entityType;clearTimeout(a[p]),a[p]=setTimeout(()=>{x(n)},300)},t.onerror=()=>{}}function l(){t&&(t.close(),t=null)}function i(){if("visible"===document.visibilityState&&(!t||t.readyState===EventSource.CLOSED))for(let e of(n(),d(),["task","idea","proposal","document","project","project_group"]))x({companyUuid:"",projectUuid:"",entityType:e,entityUuid:"",action:"updated"})}return n(),document.addEventListener("visibilitychange",i),()=>{for(let s in l(),clearTimeout(e),a)clearTimeout(a[s]);document.removeEventListener("visibilitychange",i)}},[s,d,x]);let p=(0,a.useCallback)(e=>(l.current.add(e),()=>{l.current.delete(e)}),[]),u=(0,a.useCallback)(e=>(i.current.add(e),()=>{i.current.delete(e)}),[]),m=(0,a.useCallback)(e=>(c.current.add(e),()=>{c.current.delete(e)}),[]),h=(0,a.useCallback)(e=>(o.current.add(e),()=>{o.current.delete(e)}),[]),g=(0,a.useMemo)(()=>({subscribe:p,subscribeEntity:u,subscribePresence:m,subscribeExecution:h}),[p,u,m,h]);return(0,r.jsx)(n.Provider,{value:g,children:t})}function i(e){let s=(0,a.useContext)(n),t=(0,a.useRef)(e);t.current=e,(0,a.useEffect)(()=>{if(!s)return;let e=()=>t.current();return e(),s.subscribe(e)},[s])}function c(e,s){let t=(0,a.useContext)(n),r=(0,a.useRef)(s);r.current=s;let l=(0,a.useRef)(e);l.current=e,(0,a.useEffect)(()=>{if(t)return t.subscribeEntity(e=>{let s=l.current;(Array.isArray(s)?s.includes(e.entityType):e.entityType===s)&&r.current(e)})},[t])}function o(e){let s=(0,a.useContext)(n),t=(0,a.useRef)(e);t.current=e,(0,a.useEffect)(()=>{if(s)return s.subscribePresence(e=>t.current(e))},[s])}function d(e,s,t){let r=(0,a.useContext)(n),l=(0,a.useRef)(t);l.current=t,(0,a.useEffect)(()=>{if(r)return r.subscribeEntity(t=>{t.entityType===e&&t.entityUuid===s&&l.current(t)})},[r,e,s])}},81750:(e,s,t)=>{"use strict";t.d(s,{Ke:()=>c,Nt:()=>l,R6:()=>i});var r=t(90508),a=t(38476),n=t(24377);function l(e){let{...s}=e;return(0,r.jsx)(a.Root,{"data-slot":"collapsible",...s})}function i(e){let{...s}=e;return(0,r.jsx)(a.Trigger,{"data-slot":"collapsible-trigger",...s})}function c(e){let{className:s,...t}=e;return(0,r.jsx)(a.Content,{"data-slot":"collapsible-content",className:(0,n.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",s),...t})}}},e=>{e.O(0,[8893,12079,18944,12790,71350,16544,56527,2280,89035,93346,74951,65496,77358],()=>e(e.s=9959)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[51670],{8907:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>O});var s=a(90508),r=a(1856),n=a(39268),i=a(22922),o=a(51817),l=a(81149),d=a(84052),c=a(5616),u=a(85619),m=a(57893),g=a(17730),x=a(78948),f=a(97645),p=a(36557),h=a(9160),v=a(12790),b=a.n(v),j=a(37750),y=a(26965),w=a(57731),N=a(32277),k=a(52217);let S=(0,k.createServerReference)("00c7490ee13f426951c0859fd6279ee7bc70afe9e8",k.callServer,void 0,k.findSourceMapURL,"getApiKeysAction"),A=(0,k.createServerReference)("4081fe21bb511467948f9c3aea72f15f117fe1bbe8",k.callServer,void 0,k.findSourceMapURL,"deleteApiKeyAction"),z=(0,k.createServerReference)("409a795356e73e887caeaa0cb4d8c94427336e742c",k.callServer,void 0,k.findSourceMapURL,"getAgentSessionsAction"),C=(0,k.createServerReference)("40a0943d6863d6ca01266fdba5eba0fc903f0646e1",k.callServer,void 0,k.findSourceMapURL,"closeSessionAction"),_=(0,k.createServerReference)("4083b26ef1509c8682adecae030229bb2919d51194",k.callServer,void 0,k.findSourceMapURL,"reopenSessionAction"),R=(0,k.createServerReference)("4093cbd40ecffa794507c99c1b9b1c3b4a2197dc68",k.callServer,void 0,k.findSourceMapURL,"updateAgentAction");var E=a(61326),K=a(25359),L=a(48416),U=a(12210),I=a(88064),T=a(67712);let P={taskAssigned:!0,taskStatusChanged:!0,taskVerified:!0,taskReopened:!0,proposalSubmitted:!0,proposalApproved:!0,proposalRejected:!0,ideaClaimed:!0,commentAdded:!0,elaborationRequested:!0,elaborationAnswered:!0,mentioned:!0},B=[{labelKey:"taskEvents",items:[{key:"taskAssigned",labelKey:"taskAssigned"},{key:"taskStatusChanged",labelKey:"taskStatusChanged"},{key:"taskVerified",labelKey:"taskVerified"},{key:"taskReopened",labelKey:"taskReopened"}]},{labelKey:"proposalEvents",items:[{key:"proposalSubmitted",labelKey:"proposalSubmitted"},{key:"proposalApproved",labelKey:"proposalApproved"},{key:"proposalRejected",labelKey:"proposalRejected"}]},{labelKey:"ideaEvents",items:[{key:"ideaClaimed",labelKey:"ideaClaimed"}]},{labelKey:"elaborationEvents",items:[{key:"elaborationRequested",labelKey:"elaborationRequested"},{key:"elaborationAnswered",labelKey:"elaborationAnswered"}]},{labelKey:"commentEvents",items:[{key:"commentAdded",labelKey:"commentAdded"}]},{labelKey:"mentionEvents",items:[{key:"mentioned",labelKey:"mentioned"}]}];function $(){let e=(0,n.c)("notifications.preferences"),[t,a]=(0,r.useState)(P),[i,o]=(0,r.useState)(!0),l=(0,r.useRef)(null);(0,r.useEffect)(()=>{!async function(){try{let e=await fetch("/api/notifications/preferences");if(e.ok){let t=await e.json();if(t.success&&t.data){let{taskAssigned:e,taskStatusChanged:s,taskVerified:r,taskReopened:n,proposalSubmitted:i,proposalApproved:o,proposalRejected:l,ideaClaimed:d,commentAdded:c,elaborationRequested:u,elaborationAnswered:m,mentioned:g}=t.data;a({taskAssigned:e,taskStatusChanged:s,taskVerified:r,taskReopened:n,proposalSubmitted:i,proposalApproved:o,proposalRejected:l,ideaClaimed:d,commentAdded:c,elaborationRequested:null==u||u,elaborationAnswered:null==m||m,mentioned:null==g||g})}}}catch(e){T.q.error("Failed to fetch notification preferences:",e)}finally{o(!1)}}()},[]);let d=(0,r.useCallback)(e=>{l.current&&clearTimeout(l.current),l.current=setTimeout(async()=>{try{await fetch("/api/notifications/preferences",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}catch(e){T.q.error("Failed to save notification preferences:",e)}},500)},[]);return i?null:(0,s.jsx)("div",{className:"space-y-6",children:B.map(r=>(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsx)("h3",{className:"text-sm font-medium text-foreground",children:e(r.labelKey)}),(0,s.jsx)("div",{className:"space-y-3",children:r.items.map(r=>(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(I.J,{htmlFor:r.key,className:"text-sm text-muted-foreground cursor-pointer",children:e(r.labelKey)}),(0,s.jsx)(U.d,{id:r.key,checked:t[r.key],onCheckedChange:e=>((e,s)=>{let r={...t,[e]:s};a(r),d(r)})(r.key,e)})]},r.key))})]},r.labelKey))})}var q=a(38106),D=a(44775);let F=new Set(a(93810).lp);function O(){let e=(0,n.c)(),{locale:t,setLocale:a}=(0,N.Y)(),[v,k]=(0,r.useState)([]),[U,I]=(0,r.useState)(!0),[P,B]=(0,r.useState)(!1),[O,M]=(0,r.useState)(!1),[Z,V]=(0,r.useState)(null),[G,W]=(0,r.useState)({}),[Y,H]=(0,r.useState)({}),[J,Q]=(0,r.useState)({}),[X,ee]=(0,r.useState)(!1),[et,ea]=(0,r.useState)(null),[es,er]=(0,r.useState)(""),[en,ei]=(0,r.useState)("custom"),[eo,el]=(0,r.useState)([]),[ed,ec]=(0,r.useState)(""),[eu,em]=(0,r.useState)(!1);(0,r.useEffect)(()=>{eg()},[]);let eg=async()=>{try{let e=await S();e.success&&e.data&&k(e.data)}catch(e){T.q.error("Failed to fetch API keys:",e)}finally{I(!1)}},ex=async()=>{if(Z)try{let e=await A(Z);e.success?k(v.filter(e=>e.uuid!==Z)):T.q.error("Failed to delete API key:",e.error)}catch(e){T.q.error("Failed to delete API key:",e)}finally{M(!1),V(null)}},ef=async e=>{let t=G[e];if(W(a=>({...a,[e]:!t})),!t&&!Y[e]){Q(t=>({...t,[e]:!0}));let t=await z(e);t.success&&t.data&&H(a=>({...a,[e]:t.data})),Q(t=>({...t,[e]:!1}))}},ep=async(e,t)=>{(await C(e)).success&&H(a=>({...a,[t]:(a[t]||[]).map(t=>t.uuid===e?{...t,status:"closed"}:t)}))},eh=async(e,t)=>{(await _(e)).success&&H(a=>({...a,[t]:(a[t]||[]).map(t=>t.uuid===e?{...t,status:"active",lastActiveAt:new Date().toISOString()}:t)}))},ev=()=>{ee(!1),ea(null),er(""),ei("custom"),el([]),ec("")},eb=async e=>{if(e.preventDefault(),!et||!es)return;let t="custom"===en?[]:[en],a="custom"===en?eo:[];em(!0);try{let e=await R({agentUuid:et.agentUuid,name:es,roles:t,permissions:a,persona:ed||null});if(e.success){let e=Array.from(function(e,t){let a=new Set;if(e)for(let t of e){let e=t.endsWith("_agent")?t:"".concat(t,"_agent"),s=D.o[e];if(s)for(let e of s)a.add(e)}if(t)for(let e of t)F.has(e)&&a.add(e);return a}(t,a));k(s=>s.map(s=>s.agentUuid===et.agentUuid?{...s,name:es,roles:t,permissions:a,effectivePermissions:e,persona:ed||null}:s)),ev()}else T.q.error("Failed to update agent:",e.error)}catch(e){T.q.error("Failed to update agent:",e)}finally{em(!1)}};return U?(0,s.jsx)("div",{className:"flex h-full items-center justify-center",children:(0,s.jsx)("div",{className:"text-[#6B6B6B]",children:e("common.loading")})}):(0,s.jsxs)("div",{className:"p-4 md:p-8",children:[(0,s.jsx)("div",{className:"mb-6 text-xs text-[#9A9A9A]",children:e("settings.breadcrumb")}),(0,s.jsxs)("div",{className:"mb-8",children:[(0,s.jsx)("h1",{className:"text-2xl font-semibold text-[#2C2C2C]",children:e("settings.title")}),(0,s.jsx)("p",{className:"mt-1 text-[13px] text-[#6B6B6B]",children:e("settings.subtitle")})]}),(0,s.jsxs)("div",{className:"mb-8 space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(l.A,{className:"h-5 w-5 text-muted-foreground"}),(0,s.jsx)("h2",{className:"text-base font-semibold text-foreground",children:e("settings.language")})]}),(0,s.jsx)("p",{className:"text-[13px] text-muted-foreground",children:e("settings.languageDesc")}),(0,s.jsx)("div",{className:"flex gap-3",children:K.IB.map(e=>(0,s.jsx)(i.$,{variant:t===e?"default":"outline",size:"sm",onClick:()=>a(e),className:"min-w-[100px]",children:K.L$[e]},e))})]}),(0,s.jsxs)(L.Zp,{className:"mb-8",children:[(0,s.jsxs)(L.aR,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(d.A,{className:"h-5 w-5 text-muted-foreground"}),(0,s.jsx)(L.ZB,{children:e("settings.setupGuide")})]}),(0,s.jsx)(L.BT,{children:e("settings.setupGuideDesc")})]}),(0,s.jsx)(L.Wu,{children:(0,s.jsx)(b(),{href:"/onboarding",children:(0,s.jsx)(i.$,{variant:"outline",children:e("settings.openSetupGuide")})})})]}),(0,s.jsx)("div",{className:"mb-8 border-t border-border"}),(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("h2",{className:"text-base font-semibold text-foreground",children:e("settings.agents")}),(0,s.jsxs)(i.$,{onClick:()=>B(!0),children:[(0,s.jsx)(c.A,{className:"mr-2 h-4 w-4"}),e("settings.createApiKey")]})]}),(0,s.jsx)("p",{className:"text-[13px] text-muted-foreground",children:e("settings.agentsDesc")}),0===v.length?(0,s.jsxs)("div",{className:"rounded-xl border border-border bg-card p-12 text-center",children:[(0,s.jsx)("div",{className:"mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-secondary",children:(0,s.jsx)(u.A,{className:"h-6 w-6 text-muted-foreground"})}),(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:e("settings.noApiKeys")})]}):(0,s.jsx)("div",{className:"space-y-3",children:v.map(t=>{var a;return(0,s.jsxs)("div",{className:"rounded-xl border border-border bg-card p-5",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("div",{className:"flex h-9 w-9 items-center justify-center rounded-lg ".concat(t.roles.includes("developer_agent")?"bg-green-100":"bg-primary/10"),children:(0,s.jsx)(u.A,{className:"h-[18px] w-[18px] ".concat(t.roles.includes("developer_agent")?"text-green-600":"text-primary")})}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-sm font-medium text-foreground",children:t.name||t.keyPrefix+"..."}),(0,s.jsxs)("div",{className:"text-xs text-muted-foreground",children:[t.keyPrefix,"... \xb7 ",e("settings.created")," ",(0,q.r)(t.createdAt)]})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)(i.$,{variant:"outline",size:"sm",onClick:()=>(e=>{var t,a;let s=(t=e.roles,a=e.permissions,1===t.length&&t[0]in D.o&&0===a.length?t[0]:"custom"),r=e.effectivePermissions;ea(e),er(e.name||""),ei(s),el("custom"===s?r:[]),ec(e.persona||""),ee(!0)})(t),children:[(0,s.jsx)(m.A,{className:"mr-1.5 h-3.5 w-3.5"}),e("settings.editAgent")]}),(0,s.jsx)(i.$,{variant:"outline",size:"sm",onClick:()=>{V(t.uuid),M(!0)},className:"text-destructive hover:text-destructive",children:e("common.delete")})]})]}),(0,s.jsxs)("div",{className:"mt-4 border-t border-border pt-3",children:[(0,s.jsxs)("button",{onClick:()=>ef(t.agentUuid),className:"flex w-full items-center gap-2 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[G[t.agentUuid]?(0,s.jsx)(g.A,{className:"h-3.5 w-3.5"}):(0,s.jsx)(x.A,{className:"h-3.5 w-3.5"}),(0,s.jsx)(f.A,{className:"h-3.5 w-3.5"}),(0,s.jsx)("span",{children:e("sessions.title")}),Y[t.agentUuid]&&(0,s.jsx)(w.E,{variant:"secondary",className:"ml-1 h-4 px-1.5 text-[10px]",children:Y[t.agentUuid].length})]}),G[t.agentUuid]&&(0,s.jsx)("div",{className:"mt-2 space-y-2",children:J[t.agentUuid]?(0,s.jsx)("div",{className:"text-xs text-muted-foreground py-2",children:e("common.loading")}):(null==(a=Y[t.agentUuid])?void 0:a.length)?Y[t.agentUuid].map(a=>(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-lg p-2.5 text-xs ".concat("closed"===a.status?"bg-muted/50 text-muted-foreground":"bg-secondary"),children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,s.jsx)("div",{className:"h-2 w-2 rounded-full flex-shrink-0 ".concat("active"===a.status?"bg-green-500":"bg-gray-400")}),(0,s.jsx)("span",{className:"font-medium truncate",children:a.name}),(0,s.jsx)(w.E,{variant:"outline",className:"text-[10px] h-4 px-1 ".concat("active"===a.status?"border-green-300 text-green-700":"border-gray-300 text-gray-500"),children:e("sessions.status".concat(a.status.charAt(0).toUpperCase()+a.status.slice(1)))}),(0,s.jsx)("span",{className:"text-muted-foreground",children:e("sessions.checkins",{count:a.checkins.length})})]}),"closed"===a.status?(0,s.jsx)(i.$,{variant:"ghost",size:"sm",className:"h-6 px-2 text-[10px] text-green-600 hover:text-green-700",onClick:()=>eh(a.uuid,t.agentUuid),children:e("sessions.reopen")}):(0,s.jsx)(i.$,{variant:"ghost",size:"sm",className:"h-6 px-2 text-[10px] text-destructive hover:text-destructive",onClick:()=>ep(a.uuid,t.agentUuid),children:e("sessions.close")})]},a.uuid)):(0,s.jsx)("div",{className:"text-xs text-muted-foreground py-2 italic",children:e("sessions.noSessions")})})]})]},t.uuid)})})]}),(0,s.jsx)("div",{className:"mb-8 border-t border-border"}),(0,s.jsxs)(L.Zp,{children:[(0,s.jsxs)(L.aR,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(p.A,{className:"h-5 w-5 text-muted-foreground"}),(0,s.jsx)(L.ZB,{children:e("notifications.preferences.title")})]}),(0,s.jsx)(L.BT,{children:e("notifications.preferences.description")})]}),(0,s.jsx)(L.Wu,{children:(0,s.jsx)($,{})})]}),P&&(0,s.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/25",children:(0,s.jsx)("div",{className:"max-h-[90vh] w-full max-w-2xl overflow-y-auto rounded-2xl bg-card shadow-xl",children:(0,s.jsx)(j.Y,{createAgentAndKey:E.I,onAgentCreated:()=>{eg()},onClose:()=>{B(!1)}})})}),X&&et&&(0,s.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/25",children:(0,s.jsx)("div",{className:"max-h-[90vh] w-full max-w-[520px] overflow-y-auto rounded-2xl bg-card shadow-xl",children:(0,s.jsxs)("form",{onSubmit:eb,children:[(0,s.jsxs)("div",{className:"flex items-center justify-between border-b border-border px-6 py-5",children:[(0,s.jsx)("h3",{className:"text-lg font-semibold text-foreground",children:e("settings.editAgent")}),(0,s.jsx)(i.$,{type:"button",variant:"ghost",size:"icon",onClick:ev,className:"h-8 w-8",children:(0,s.jsx)(h.A,{className:"h-4 w-4"})})]}),(0,s.jsx)("div",{className:"p-6",children:(0,s.jsx)(y.L,{name:es,onNameChange:er,preset:en,permissions:eo,onPermissionsChange:e=>{ei(e.preset),el(e.permissions)},persona:ed,onPersonaChange:ec,nameInputId:"editName",personaInputId:"edit-agent-persona"})}),(0,s.jsxs)("div",{className:"flex justify-end gap-3 border-t border-border px-6 py-4",children:[(0,s.jsx)(i.$,{type:"button",variant:"outline",onClick:ev,children:e("common.cancel")}),(0,s.jsx)(i.$,{type:"submit",disabled:!es||"custom"===en&&0===eo.length||eu,children:eu?e("settings.saving"):e("settings.saveChanges")})]})]})})}),(0,s.jsx)(o.Lt,{open:O,onOpenChange:M,children:(0,s.jsxs)(o.EO,{children:[(0,s.jsxs)(o.wd,{children:[(0,s.jsx)(o.r7,{children:e("settings.confirmDeleteTitle")}),(0,s.jsx)(o.$v,{children:e("settings.confirmDeleteDesc")})]}),(0,s.jsxs)(o.ck,{children:[(0,s.jsx)(o.Zr,{children:e("common.cancel")}),(0,s.jsx)(o.Rx,{onClick:ex,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:e("common.delete")})]})]})})]})}},12210:(e,t,a)=>{"use strict";a.d(t,{d:()=>i});var s=a(90508);a(1856);var r=a(60322),n=a(24377);function i(e){let{className:t,...a}=e;return(0,s.jsx)(r.Root,{"data-slot":"switch",className:(0,n.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:ring-ring/50 inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...a,children:(0,s.jsx)(r.Thumb,{"data-slot":"switch-thumb",className:(0,n.cn)("bg-background pointer-events-none block size-4 rounded-full ring-0 shadow-lg transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})})}},15272:(e,t,a)=>{var s={"./en.json":[99373,99373],"./zh.json":[4860,4860]};function r(e){if(!a.o(s,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=s[e],r=t[0];return a.e(t[1]).then(()=>a.t(r,19))}r.keys=()=>Object.keys(s),r.id=15272,e.exports=r},15972:(e,t,a)=>{"use strict";a.d(t,{T:()=>n});var s=a(90508);a(1856);var r=a(24377);function n(e){let{className:t,...a}=e;return(0,s.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),...a})}},22922:(e,t,a)=>{"use strict";a.d(t,{$:()=>l});var s=a(90508);a(1856);var r=a(49499),n=a(54154),i=a(24377);let o=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:a="default",size:r="default",asChild:l=!1,...d}=e,c=l?n.bL:"button";return(0,s.jsx)(c,{"data-slot":"button","data-variant":a,"data-size":r,className:(0,i.cn)(o({variant:a,size:r,className:t})),...d})}},24377:(e,t,a)=>{"use strict";a.d(t,{cn:()=>n});var s=a(49251),r=a(58849);function n(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,r.QP)((0,s.$)(t))}},25359:(e,t,a)=>{"use strict";a.d(t,{AL:()=>i,IB:()=>s,L$:()=>n,q:()=>r});let s=["en","zh"],r="en",n={en:"English",zh:"中文"};function i(){if("undefined"==typeof navigator)return r;let e=navigator.language.split("-")[0];return s.includes(e)?e:r}},32277:(e,t,a)=>{"use strict";a.d(t,{LocaleProvider:()=>u,Y:()=>c});var s=a(90508),r=a(1856),n=a(57472),i=a(25359),o=a(67712);let l="chorus-locale",d=(0,r.createContext)(null);function c(){let e=(0,r.useContext)(d);if(!e)throw Error("useLocale must be used within LocaleProvider");return e}function u(e){let{children:t}=e,[c,u]=(0,r.useState)(i.q),[m,g]=(0,r.useState)(null),[x,f]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e,t=localStorage.getItem(l);t&&i.IB.includes(t)?e=t:(e=(0,i.AL)(),localStorage.setItem(l,e)),u(e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),f(!0)},[]),(0,r.useEffect)(()=>{x&&a(15272)("./".concat(c,".json")).then(e=>{g(e.default)}).catch(e=>{o.q.error("Failed to load messages for locale ".concat(c,":"),e),a(15272)("./".concat(i.q,".json")).then(e=>{g(e.default)})})},[c,x]);let p=(0,r.useCallback)(e=>{u(e),localStorage.setItem(l,e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),document.documentElement.lang=e},[]);return x&&m?(0,s.jsx)(d.Provider,{value:{locale:c,setLocale:p},children:(0,s.jsx)(n.A,{locale:c,messages:m,children:t})}):null}},38106:(e,t,a)=>{"use strict";function s(e){let t="string"==typeof e?new Date(e):e;if(isNaN(t.getTime()))return"";let a=t.getFullYear(),s=String(t.getMonth()+1).padStart(2,"0"),r=String(t.getDate()).padStart(2,"0"),n=String(t.getHours()).padStart(2,"0"),i=String(t.getMinutes()).padStart(2,"0");return"".concat(a,"-").concat(s,"-").concat(r," ").concat(n,":").concat(i)}function r(e,t){let a="string"==typeof e?new Date(e):e;return isNaN(a.getTime())?"":a.toLocaleDateString(t,{month:"short",day:"numeric"})}a.d(t,{r:()=>s,s:()=>r})},48416:(e,t,a)=>{"use strict";a.d(t,{BT:()=>l,Wu:()=>d,ZB:()=>o,Zp:()=>n,aR:()=>i});var s=a(90508);a(1856);var r=a(24377);function n(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function i(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function o(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...a})}function l(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...a})}function d(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...a})}},51817:(e,t,a)=>{"use strict";a.d(t,{$v:()=>f,EO:()=>u,Lt:()=>o,Rx:()=>p,Zr:()=>h,ck:()=>g,r7:()=>x,tv:()=>l,wd:()=>m});var s=a(90508);a(1856);var r=a(90299),n=a(24377),i=a(22922);function o(e){let{...t}=e;return(0,s.jsx)(r.Root,{"data-slot":"alert-dialog",...t})}function l(e){let{...t}=e;return(0,s.jsx)(r.Trigger,{"data-slot":"alert-dialog-trigger",...t})}function d(e){let{...t}=e;return(0,s.jsx)(r.Portal,{"data-slot":"alert-dialog-portal",...t})}function c(e){let{className:t,...a}=e;return(0,s.jsx)(r.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,n.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...a})}function u(e){let{className:t,size:a="default",...i}=e;return(0,s.jsxs)(d,{children:[(0,s.jsx)(c,{}),(0,s.jsx)(r.Content,{"data-slot":"alert-dialog-content","data-size":a,className:(0,n.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",t),...i})]})}function m(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,n.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...a})}function g(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,n.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...a})}function x(e){let{className:t,...a}=e;return(0,s.jsx)(r.Title,{"data-slot":"alert-dialog-title",className:(0,n.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...a})}function f(e){let{className:t,...a}=e;return(0,s.jsx)(r.Description,{"data-slot":"alert-dialog-description",className:(0,n.cn)("text-muted-foreground text-sm",t),...a})}function p(e){let{className:t,variant:a="default",size:o="default",...l}=e;return(0,s.jsx)(i.$,{variant:a,size:o,asChild:!0,children:(0,s.jsx)(r.Action,{"data-slot":"alert-dialog-action",className:(0,n.cn)(t),...l})})}function h(e){let{className:t,variant:a="outline",size:o="default",...l}=e;return(0,s.jsx)(i.$,{variant:a,size:o,asChild:!0,children:(0,s.jsx)(r.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,n.cn)(t),...l})})}},57731:(e,t,a)=>{"use strict";a.d(t,{E:()=>l});var s=a(90508);a(1856);var r=a(49499),n=a(54154),i=a(24377);let o=(0,r.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function l(e){let{className:t,variant:a="default",asChild:r=!1,...l}=e,d=r?n.bL:"span";return(0,s.jsx)(d,{"data-slot":"badge","data-variant":a,className:(0,i.cn)(o({variant:a}),t),...l})}},67712:(e,t,a)=>{"use strict";a.d(t,{q:()=>o});var s=a(55036);let r={debug:0,info:1,warn:2,error:3},n=s.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function i(e){return r[e]>=r[n]}let o={debug:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];i("debug")&&console.debug("[Chorus] ".concat(e),...a)},info:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];i("info")&&console.info("[Chorus] ".concat(e),...a)},warn:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];i("warn")&&console.warn("[Chorus] ".concat(e),...a)},error:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];i("error")&&console.error("[Chorus] ".concat(e),...a)}}},81750:(e,t,a)=>{"use strict";a.d(t,{Ke:()=>l,Nt:()=>i,R6:()=>o});var s=a(90508),r=a(38476),n=a(24377);function i(e){let{...t}=e;return(0,s.jsx)(r.Root,{"data-slot":"collapsible",...t})}function o(e){let{...t}=e;return(0,s.jsx)(r.Trigger,{"data-slot":"collapsible-trigger",...t})}function l(e){let{className:t,...a}=e;return(0,s.jsx)(r.Content,{"data-slot":"collapsible-content",className:(0,n.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",t),...a})}},87386:(e,t,a)=>{Promise.resolve().then(a.bind(a,8907))},91846:(e,t,a)=>{"use strict";a.d(t,{bq:()=>u,eb:()=>g,gC:()=>m,l6:()=>d,yv:()=>c});var s=a(90508);a(1856);var r=a(17730),n=a(60532),i=a(89967),o=a(48218),l=a(24377);function d(e){let{...t}=e;return(0,s.jsx)(o.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,s.jsx)(o.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:a="default",children:n,...i}=e;return(0,s.jsxs)(o.Trigger,{"data-slot":"select-trigger","data-size":a,className:(0,l.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...i,children:[n,(0,s.jsx)(o.Icon,{asChild:!0,children:(0,s.jsx)(r.A,{className:"size-4 opacity-50"})})]})}function m(e){let{className:t,children:a,position:r="item-aligned",align:n="center",...i}=e;return(0,s.jsx)(o.Portal,{children:(0,s.jsxs)(o.Content,{"data-slot":"select-content",className:(0,l.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===r&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:r,align:n,...i,children:[(0,s.jsx)(x,{}),(0,s.jsx)(o.Viewport,{className:(0,l.cn)("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:a}),(0,s.jsx)(f,{})]})})}function g(e){let{className:t,children:a,...r}=e;return(0,s.jsxs)(o.Item,{"data-slot":"select-item",className:(0,l.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...r,children:[(0,s.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,s.jsx)(o.ItemIndicator,{children:(0,s.jsx)(n.A,{className:"size-4"})})}),(0,s.jsx)(o.ItemText,{children:a})]})}function x(e){let{className:t,...a}=e;return(0,s.jsx)(o.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,l.cn)("flex cursor-default items-center justify-center py-1",t),...a,children:(0,s.jsx)(i.A,{className:"size-4"})})}function f(e){let{className:t,...a}=e;return(0,s.jsx)(o.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,l.cn)("flex cursor-default items-center justify-center py-1",t),...a,children:(0,s.jsx)(r.A,{className:"size-4"})})}},97261:(e,t,a)=>{"use strict";a.d(t,{MarkdownContent:()=>c});var s=a(90508),r=a(1856),n=a(65700),i=a(19169),o=a(26190);let l={code:i.a,mermaid:o.a},d={mermaid:{fullscreen:!0,download:!0,copy:!0,panZoom:!0}};function c(e){let{children:t,components:a,allowedTags:i,literalTagContent:o}=e,c=function(){let[e,t]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=document.documentElement,a=()=>t(e.classList.contains("dark"));a();let s=new MutationObserver(a);return s.observe(e,{attributes:!0,attributeFilter:["class"]}),()=>s.disconnect()},[]),e}(),u=(0,r.useMemo)(()=>({config:{theme:c?"dark":"default"}}),[c]);return(0,s.jsx)(n.jH,{plugins:l,controls:d,mermaid:u,components:a,allowedTags:i,literalTagContent:o,children:t},c?"dark":"light")}}},e=>{e.O(0,[93151,41752,12079,18944,12790,26885,71350,30724,27201,16551,97784,14753,89644,45532,70552,15183,80904,46999,74951,65496,77358],()=>e(e.s=87386)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1244,2734,4342,4977,5869,6476,6623,7719,8489,11140,12015,12170,12662,13056,13566,13745,14966,17453,17948,21220,23519,24869,27406,27819,29246,31025,32515,33004,33105,33157,33836,34561,37624,38189,38629,38764,39672,40494,40568,41654,42129,42371,44192,44533,44843,48597,48653,48673,51208,52451,52703,52772,55223,56202,56856,57128,58118,59442,60523,65580,66469,68928,70473,70637,70703,71406,73708,73804,78301,80064,80272,82641,82765,85879,86384,86759,87188,87682,90090,90113,90469,91946,93184,93691,97629,98400],{51540:()=>{}},_=>{_.O(0,[74951,65496,77358],()=>_(_.s=51540)),_N_E=_.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1244,2734,4342,4977,5869,6476,6623,7719,8489,11140,12015,12170,12662,13056,13566,13745,14966,17453,17948,21220,23519,24869,27406,27819,29246,31025,32515,33004,33105,33157,33836,34561,37624,38189,38629,38764,39672,40494,40568,41654,42129,42371,44192,44533,44843,48597,48653,48673,51208,52451,52703,52772,55223,56202,56856,57128,58118,59442,60523,65580,66469,68928,70473,70637,70703,71406,73708,73804,78301,80064,80272,82641,82765,85879,86384,86759,87188,87682,90090,90113,90469,91946,93184,93691,97629,98400],{51540:()=>{}},_=>{_.O(0,[74951,65496,77358],()=>_(_.s=51540)),_N_E=_.O()}]);