@chorus-aidlc/chorus 0.12.1 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +416 -369
  3. package/.next/standalone/.next/app-path-routes-manifest.json +36 -34
  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 +36 -30
  7. package/.next/standalone/.next/routes-manifest.json +16 -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]/graph/page.js +2 -0
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -0
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -0
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +2 -2
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +1 -1
  45. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  48. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  52. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  53. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/admin/companies/new.html +1 -1
  56. package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
  57. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/admin/companies.html +1 -1
  59. package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
  60. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/admin.html +1 -1
  62. package/.next/standalone/.next/server/app/admin.rsc +2 -2
  63. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/auth/session/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  87. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  107. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/keepalive/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -0
  131. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -0
  132. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -0
  133. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  145. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/index.html +1 -1
  152. package/.next/standalone/.next/server/app/index.rsc +2 -2
  153. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/login/admin.html +1 -1
  155. package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
  156. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  157. package/.next/standalone/.next/server/app/login/callback.html +1 -1
  158. package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
  159. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/login/pick-workspace.html +1 -1
  162. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
  163. package/.next/standalone/.next/server/app/login/silent-refresh/page_client-reference-manifest.js +1 -1
  164. package/.next/standalone/.next/server/app/login/silent-refresh.html +1 -1
  165. package/.next/standalone/.next/server/app/login/silent-refresh.rsc +2 -2
  166. package/.next/standalone/.next/server/app/login.html +1 -1
  167. package/.next/standalone/.next/server/app/login.rsc +2 -2
  168. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  169. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  170. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  171. package/.next/standalone/.next/server/app/onboarding.html +1 -1
  172. package/.next/standalone/.next/server/app/onboarding.rsc +3 -3
  173. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/projects.html +1 -1
  175. package/.next/standalone/.next/server/app/projects.rsc +4 -4
  176. package/.next/standalone/.next/server/app/settings.html +1 -1
  177. package/.next/standalone/.next/server/app/settings.rsc +4 -4
  178. package/.next/standalone/.next/server/app-paths-manifest.json +36 -34
  179. package/.next/standalone/.next/server/chunks/1113.js +2 -2
  180. package/.next/standalone/.next/server/chunks/1337.js +1 -1
  181. package/.next/standalone/.next/server/chunks/1463.js +1 -1
  182. package/.next/standalone/.next/server/chunks/1559.js +13 -0
  183. package/.next/standalone/.next/server/chunks/{2779.js → 178.js} +3 -3
  184. package/.next/standalone/.next/server/chunks/2315.js +1 -1
  185. package/.next/standalone/.next/server/chunks/2364.js +2 -2
  186. package/.next/standalone/.next/server/chunks/2631.js +2 -2
  187. package/.next/standalone/.next/server/chunks/282.js +1 -1
  188. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  189. package/.next/standalone/.next/server/chunks/298.js +1 -0
  190. package/.next/standalone/.next/server/chunks/3197.js +3 -0
  191. package/.next/standalone/.next/server/chunks/3217.js +1 -1
  192. package/.next/standalone/.next/server/chunks/3219.js +1 -1
  193. package/.next/standalone/.next/server/chunks/3373.js +1 -0
  194. package/.next/standalone/.next/server/chunks/3680.js +1 -1
  195. package/.next/standalone/.next/server/chunks/4157.js +1 -1
  196. package/.next/standalone/.next/server/chunks/4193.js +1 -1
  197. package/.next/standalone/.next/server/chunks/4375.js +2 -2
  198. package/.next/standalone/.next/server/chunks/4615.js +1 -1
  199. package/.next/standalone/.next/server/chunks/5011.js +1 -0
  200. package/.next/standalone/.next/server/chunks/5090.js +1 -1
  201. package/.next/standalone/.next/server/chunks/5217.js +1 -1
  202. package/.next/standalone/.next/server/chunks/5319.js +1 -1
  203. package/.next/standalone/.next/server/chunks/5453.js +1 -1
  204. package/.next/standalone/.next/server/chunks/5511.js +1 -1
  205. package/.next/standalone/.next/server/chunks/5957.js +1 -0
  206. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  207. package/.next/standalone/.next/server/chunks/6207.js +1 -1
  208. package/.next/standalone/.next/server/chunks/679.js +1 -0
  209. package/.next/standalone/.next/server/chunks/6813.js +1 -0
  210. package/.next/standalone/.next/server/chunks/7217.js +1 -1
  211. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  212. package/.next/standalone/.next/server/chunks/7421.js +1 -0
  213. package/.next/standalone/.next/server/chunks/7912.js +1 -0
  214. package/.next/standalone/.next/server/chunks/796.js +6 -6
  215. package/.next/standalone/.next/server/chunks/8431.js +1 -1
  216. package/.next/standalone/.next/server/chunks/8812.js +1 -1
  217. package/.next/standalone/.next/server/chunks/8821.js +1 -0
  218. package/.next/standalone/.next/server/chunks/903.js +1 -1
  219. package/.next/standalone/.next/server/chunks/920.js +1 -1
  220. package/.next/standalone/.next/server/chunks/937.js +1 -1
  221. package/.next/standalone/.next/server/chunks/9849.js +2 -2
  222. package/.next/standalone/.next/server/chunks/{7063.js → 9855.js} +2 -2
  223. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  224. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  225. package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  226. package/.next/standalone/.next/server/pages/404.html +1 -1
  227. package/.next/standalone/.next/server/pages/500.html +1 -1
  228. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  229. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  230. package/.next/standalone/.next/static/chunks/10919-7f63b2801a92b8c6.js +1 -0
  231. package/.next/standalone/.next/static/chunks/{16551-68896c0ca7966ebf.js → 16551-d129ae0de4a04d69.js} +5 -5
  232. package/.next/standalone/.next/static/chunks/1891-d4a9e756fefba3a9.js +1 -0
  233. package/.next/standalone/.next/static/chunks/22190.149dd0799cbcba06.js +1 -0
  234. package/.next/standalone/.next/static/chunks/{2351.35085ef2663aaa44.js → 2351.a2908f154b03857c.js} +1 -1
  235. package/.next/standalone/.next/static/chunks/{29047.664290ff8a84b205.js → 29047.65b677c7f3e6459f.js} +1 -1
  236. package/.next/standalone/.next/static/chunks/2987-c15f09093b821b24.js +1 -0
  237. package/.next/standalone/.next/static/chunks/{30682.c8fc49d63bf75772.js → 30682.b12a9bef588e7b03.js} +1 -1
  238. package/.next/standalone/.next/static/chunks/31467.9f8adfa602f97fcf.js +115 -0
  239. package/.next/standalone/.next/static/chunks/{33187.1328c15b9dab78a8.js → 33187.13c12f5c0821ac57.js} +1 -1
  240. package/.next/standalone/.next/static/chunks/{33665.20ed9144405f8b21.js → 33665.804ece4d6c6e4eca.js} +3 -3
  241. package/.next/standalone/.next/static/chunks/34520.1a6c6a7c421b0ff3.js +1 -0
  242. package/.next/standalone/.next/static/chunks/36493-5326c14a7240edc8.js +1 -0
  243. package/.next/standalone/.next/static/chunks/43741-aeea04ab873ac4e9.js +1 -0
  244. package/.next/standalone/.next/static/chunks/{47066.7848777fc81f5714.js → 47066.214cf62dd898ea16.js} +1 -1
  245. package/.next/standalone/.next/static/chunks/4860.c3c83713d1f163a5.js +1 -0
  246. package/.next/standalone/.next/static/chunks/48782.4ca261e8e23a8983.js +24 -0
  247. package/.next/standalone/.next/static/chunks/49852-5337f139a2f87c46.js +1 -0
  248. package/.next/standalone/.next/static/chunks/49965-fa11628d5ac8fbbe.js +1 -0
  249. package/.next/standalone/.next/static/chunks/56812-a6fe5225adc0b2ff.js +1 -0
  250. package/.next/standalone/.next/static/chunks/58699.364d357d33fcb52f.js +80 -0
  251. package/.next/standalone/.next/static/chunks/61963.fd130ba09dd25e2e.js +23 -0
  252. package/.next/standalone/.next/static/chunks/64894-71b047ae8ef2f3d8.js +1 -0
  253. package/.next/standalone/.next/static/chunks/65317.ab0c5ecb4164b291.js +148 -0
  254. package/.next/standalone/.next/static/chunks/{69477.4b854e377a3860cc.js → 69477.5b79cd575f93298f.js} +1 -1
  255. package/.next/standalone/.next/static/chunks/{69763.37d07a3035805bc7.js → 69763.003df47b4ee38644.js} +1 -1
  256. package/.next/standalone/.next/static/chunks/7317.8e3ce1ce083425d8.js +5 -0
  257. package/.next/standalone/.next/static/chunks/73506.b9c053e2335b6084.js +1 -0
  258. package/.next/standalone/.next/static/chunks/78966.075119c3a72135ed.js +1 -0
  259. package/.next/standalone/.next/static/chunks/79806.21f1d23ca273000d.js +4 -0
  260. package/.next/standalone/.next/static/chunks/85947.c813bf8bc6e1d675.js +90 -0
  261. package/.next/standalone/.next/static/chunks/8796-69e708cb8603d8b4.js +1 -0
  262. package/.next/standalone/.next/static/chunks/91666-3fd4f3512a53ff20.js +1 -0
  263. package/.next/standalone/.next/static/chunks/91709.ed3bfd285c518df1.js +287 -0
  264. package/.next/standalone/.next/static/chunks/94400.0d371a4d306a614b.js +1 -0
  265. package/.next/standalone/.next/static/chunks/96028.cdbf36dca753e70f.js +215 -0
  266. package/.next/standalone/.next/static/chunks/{96132.3bac072bb2743fb5.js → 96132.ab9b9433c7b2fa1c.js} +1 -1
  267. package/.next/standalone/.next/static/chunks/97263-018d631416efa5cd.js +1 -0
  268. package/.next/standalone/.next/static/chunks/{97784-42081b75f8cc6da8.js → 97784-7b90a17294840e32.js} +1 -1
  269. package/.next/standalone/.next/static/chunks/99373.2b68fce200cc323e.js +1 -0
  270. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-6061b60d52262d3c.js +1 -0
  271. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-78ab05c72bcd04fd.js +1 -0
  272. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/{page-f1b0daea9f947caf.js → page-31ae6abada6e6a64.js} +1 -1
  273. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-478cce81afbfc145.js +1 -0
  274. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/{page-c68f1eda3779b448.js → page-494b80e61b485870.js} +1 -1
  275. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/{page-e0935445535c28cb.js → page-7ebb779f0db4c58b.js} +1 -1
  276. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-bfbfc5005de2be13.js +1 -0
  277. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-fbb4dd4124525f97.js +1 -0
  278. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-164fe175720b24a1.js +1 -0
  279. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-2742c745a90f843f.js +1 -0
  280. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-ceeec49af0396432.js → page-f2313bf05387b39b.js} +1 -1
  281. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-1286afe43c086d6a.js → page-955e8fd8d7b0b7c8.js} +1 -1
  282. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-fec019d974ef8d4e.js → page-0bc22273214e522f.js} +1 -1
  283. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/{page-0fb1d51016f6bd56.js → page-960ab78b5055780c.js} +1 -1
  284. package/.next/standalone/.next/static/chunks/app/api/admin/companies/[uuid]/{route-f1b0daea9f947caf.js → route-31ae6abada6e6a64.js} +1 -1
  285. package/.next/standalone/.next/static/chunks/app/api/admin/companies/{route-f1b0daea9f947caf.js → route-31ae6abada6e6a64.js} +1 -1
  286. package/.next/standalone/.next/static/chunks/app/api/admin/login/{route-f1b0daea9f947caf.js → route-31ae6abada6e6a64.js} +1 -1
  287. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-31ae6abada6e6a64.js +1 -0
  288. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-31ae6abada6e6a64.js +1 -0
  289. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-31ae6abada6e6a64.js +1 -0
  290. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-31ae6abada6e6a64.js +1 -0
  291. package/.next/standalone/.next/static/chunks/app/api/agents/route-31ae6abada6e6a64.js +1 -0
  292. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-31ae6abada6e6a64.js +1 -0
  293. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-31ae6abada6e6a64.js +1 -0
  294. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-31ae6abada6e6a64.js +1 -0
  295. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-31ae6abada6e6a64.js +1 -0
  296. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-31ae6abada6e6a64.js +1 -0
  297. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-31ae6abada6e6a64.js +1 -0
  298. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-31ae6abada6e6a64.js +1 -0
  299. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-31ae6abada6e6a64.js +1 -0
  300. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-31ae6abada6e6a64.js +1 -0
  301. package/.next/standalone/.next/static/chunks/app/api/auth/refresh/route-31ae6abada6e6a64.js +1 -0
  302. package/.next/standalone/.next/static/chunks/app/api/auth/session/route-31ae6abada6e6a64.js +1 -0
  303. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-31ae6abada6e6a64.js +1 -0
  304. package/.next/standalone/.next/static/chunks/app/api/comments/route-31ae6abada6e6a64.js +1 -0
  305. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-31ae6abada6e6a64.js +1 -0
  306. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-31ae6abada6e6a64.js +1 -0
  307. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-31ae6abada6e6a64.js +1 -0
  308. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-31ae6abada6e6a64.js +1 -0
  309. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-31ae6abada6e6a64.js +1 -0
  310. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-31ae6abada6e6a64.js +1 -0
  311. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-31ae6abada6e6a64.js +1 -0
  312. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-31ae6abada6e6a64.js +1 -0
  313. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-31ae6abada6e6a64.js +1 -0
  314. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-31ae6abada6e6a64.js +1 -0
  315. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-31ae6abada6e6a64.js +1 -0
  316. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-31ae6abada6e6a64.js +1 -0
  317. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-31ae6abada6e6a64.js +1 -0
  318. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-31ae6abada6e6a64.js +1 -0
  319. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-31ae6abada6e6a64.js +1 -0
  320. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-31ae6abada6e6a64.js +1 -0
  321. package/.next/standalone/.next/static/chunks/app/api/events/route-31ae6abada6e6a64.js +1 -0
  322. package/.next/standalone/.next/static/chunks/app/api/health/route-31ae6abada6e6a64.js +1 -0
  323. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-31ae6abada6e6a64.js +1 -0
  324. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-31ae6abada6e6a64.js +1 -0
  325. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-31ae6abada6e6a64.js +1 -0
  326. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-31ae6abada6e6a64.js +1 -0
  327. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-31ae6abada6e6a64.js +1 -0
  328. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-31ae6abada6e6a64.js +1 -0
  329. package/.next/standalone/.next/static/chunks/app/api/keepalive/route-31ae6abada6e6a64.js +1 -0
  330. package/.next/standalone/.next/static/chunks/app/api/mcp/route-31ae6abada6e6a64.js +1 -0
  331. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-31ae6abada6e6a64.js +1 -0
  332. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-31ae6abada6e6a64.js +1 -0
  333. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-31ae6abada6e6a64.js +1 -0
  334. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-31ae6abada6e6a64.js +1 -0
  335. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-31ae6abada6e6a64.js +1 -0
  336. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-31ae6abada6e6a64.js +1 -0
  337. package/.next/standalone/.next/static/chunks/app/api/notifications/route-31ae6abada6e6a64.js +1 -0
  338. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-31ae6abada6e6a64.js +1 -0
  339. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-31ae6abada6e6a64.js +1 -0
  340. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-31ae6abada6e6a64.js +1 -0
  341. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-31ae6abada6e6a64.js +1 -0
  342. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-31ae6abada6e6a64.js +1 -0
  343. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-31ae6abada6e6a64.js +1 -0
  344. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-31ae6abada6e6a64.js +1 -0
  345. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-31ae6abada6e6a64.js +1 -0
  346. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-31ae6abada6e6a64.js +1 -0
  347. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-31ae6abada6e6a64.js +1 -0
  348. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-31ae6abada6e6a64.js +1 -0
  349. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-31ae6abada6e6a64.js +1 -0
  350. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-31ae6abada6e6a64.js +1 -0
  351. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/resource-graph/route-31ae6abada6e6a64.js +1 -0
  352. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-31ae6abada6e6a64.js +1 -0
  353. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-31ae6abada6e6a64.js +1 -0
  354. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-31ae6abada6e6a64.js +1 -0
  355. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-31ae6abada6e6a64.js +1 -0
  356. package/.next/standalone/.next/static/chunks/app/api/projects/route-31ae6abada6e6a64.js +1 -0
  357. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-31ae6abada6e6a64.js +1 -0
  358. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-31ae6abada6e6a64.js +1 -0
  359. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-31ae6abada6e6a64.js +1 -0
  360. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-31ae6abada6e6a64.js +1 -0
  361. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-31ae6abada6e6a64.js +1 -0
  362. package/.next/standalone/.next/static/chunks/app/api/search/route-31ae6abada6e6a64.js +1 -0
  363. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-31ae6abada6e6a64.js +1 -0
  364. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-31ae6abada6e6a64.js +1 -0
  365. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-31ae6abada6e6a64.js +1 -0
  366. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-31ae6abada6e6a64.js +1 -0
  367. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-31ae6abada6e6a64.js +1 -0
  368. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-31ae6abada6e6a64.js +1 -0
  369. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-31ae6abada6e6a64.js +1 -0
  370. package/.next/standalone/.next/static/chunks/app/onboarding/{page-2936274fb252329e.js → page-500aded75bf11ed6.js} +1 -1
  371. package/.next/standalone/.next/static/chunks/{f57f1d5e.71d2022a2e2d95ba.js → f57f1d5e.c345ce68aa5052a7.js} +1 -1
  372. package/.next/standalone/.next/static/chunks/{fcc64ffe-de8d357e657bd162.js → fcc64ffe-2c36a6b45f81782c.js} +3 -3
  373. package/.next/standalone/.next/static/chunks/webpack-7483083a976ed3d7.js +1 -0
  374. package/.next/standalone/.next/static/css/ed6baccd62b81c4e.css +1 -0
  375. package/.next/standalone/package.json +3 -1
  376. package/README.md +8 -0
  377. package/README.zh.md +8 -0
  378. package/chorus.mjs +118 -34
  379. package/cli/embedded-db.mjs +234 -0
  380. package/package.json +3 -1
  381. package/.next/standalone/.next/server/chunks/1596.js +0 -13
  382. package/.next/standalone/.next/server/chunks/2622.js +0 -1
  383. package/.next/standalone/.next/server/chunks/4292.js +0 -1
  384. package/.next/standalone/.next/server/chunks/4872.js +0 -1
  385. package/.next/standalone/.next/server/chunks/5538.js +0 -1
  386. package/.next/standalone/.next/server/chunks/6096.js +0 -3
  387. package/.next/standalone/.next/server/chunks/7427.js +0 -1
  388. package/.next/standalone/.next/server/chunks/8732.js +0 -1
  389. package/.next/standalone/.next/server/chunks/9161.js +0 -1
  390. package/.next/standalone/.next/static/chunks/10344-2e9a9d767e2e8ed1.js +0 -1
  391. package/.next/standalone/.next/static/chunks/22190.ee4e8f3ac0189d87.js +0 -1
  392. package/.next/standalone/.next/static/chunks/2280-f48bf99ea9d88ece.js +0 -1
  393. package/.next/standalone/.next/static/chunks/31467.2013df596c751e6e.js +0 -115
  394. package/.next/standalone/.next/static/chunks/34520.34ba1239c9b5a275.js +0 -1
  395. package/.next/standalone/.next/static/chunks/46983-8bf90f1ffeb55957.js +0 -1
  396. package/.next/standalone/.next/static/chunks/46999-f53da8f53fe1b8a9.js +0 -1
  397. package/.next/standalone/.next/static/chunks/4860.e3d0dd79a4d37626.js +0 -1
  398. package/.next/standalone/.next/static/chunks/48782.5b60e8a0f22f6da1.js +0 -24
  399. package/.next/standalone/.next/static/chunks/54637-71d281d649ea3a17.js +0 -1
  400. package/.next/standalone/.next/static/chunks/58245-b2ea112ace9624d2.js +0 -1
  401. package/.next/standalone/.next/static/chunks/58699.fa3b8ce67889f23b.js +0 -80
  402. package/.next/standalone/.next/static/chunks/61963.18e80afc0dac41e3.js +0 -23
  403. package/.next/standalone/.next/static/chunks/65317.7179d4bc41c8075a.js +0 -148
  404. package/.next/standalone/.next/static/chunks/7317.1a06bc56028637f6.js +0 -5
  405. package/.next/standalone/.next/static/chunks/73506.7423a313220e1769.js +0 -1
  406. package/.next/standalone/.next/static/chunks/78917-aa5bbff9248799a4.js +0 -1
  407. package/.next/standalone/.next/static/chunks/79806.d210b93e41d4d7ff.js +0 -4
  408. package/.next/standalone/.next/static/chunks/85573-fb4d2cbd67612d47.js +0 -1
  409. package/.next/standalone/.next/static/chunks/85947.cf4ac5dd618283ee.js +0 -90
  410. package/.next/standalone/.next/static/chunks/88561-0b14e1564419f215.js +0 -1
  411. package/.next/standalone/.next/static/chunks/89035-faf398b7bbc7d2ed.js +0 -1
  412. package/.next/standalone/.next/static/chunks/91709.f7c8eff0c3692bd6.js +0 -287
  413. package/.next/standalone/.next/static/chunks/94400.30696ed643217da2.js +0 -1
  414. package/.next/standalone/.next/static/chunks/96028.427c0bd44fa35314.js +0 -215
  415. package/.next/standalone/.next/static/chunks/99373.cc6319fa4cf36081.js +0 -1
  416. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-b3a497ba5eb08036.js +0 -1
  417. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/page-2944c6c9bc48a7d6.js +0 -1
  418. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-d786f0c18a9c4f06.js +0 -1
  419. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-f824632ff61a9fa7.js +0 -1
  420. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-dbcb6e50fc4816c6.js +0 -1
  421. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-1295bc505e727383.js +0 -1
  422. package/.next/standalone/.next/static/chunks/app/api/admin/session/route-f1b0daea9f947caf.js +0 -1
  423. package/.next/standalone/.next/static/chunks/app/api/agent-connections/route-f1b0daea9f947caf.js +0 -1
  424. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/route-f1b0daea9f947caf.js +0 -1
  425. package/.next/standalone/.next/static/chunks/app/api/agents/[uuid]/sessions/route-f1b0daea9f947caf.js +0 -1
  426. package/.next/standalone/.next/static/chunks/app/api/agents/route-f1b0daea9f947caf.js +0 -1
  427. package/.next/standalone/.next/static/chunks/app/api/api-keys/[uuid]/route-f1b0daea9f947caf.js +0 -1
  428. package/.next/standalone/.next/static/chunks/app/api/api-keys/route-f1b0daea9f947caf.js +0 -1
  429. package/.next/standalone/.next/static/chunks/app/api/auth/callback/route-f1b0daea9f947caf.js +0 -1
  430. package/.next/standalone/.next/static/chunks/app/api/auth/check-default/route-f1b0daea9f947caf.js +0 -1
  431. package/.next/standalone/.next/static/chunks/app/api/auth/company-oidc/route-f1b0daea9f947caf.js +0 -1
  432. package/.next/standalone/.next/static/chunks/app/api/auth/default-login/route-f1b0daea9f947caf.js +0 -1
  433. package/.next/standalone/.next/static/chunks/app/api/auth/identify/route-f1b0daea9f947caf.js +0 -1
  434. package/.next/standalone/.next/static/chunks/app/api/auth/logout/route-f1b0daea9f947caf.js +0 -1
  435. package/.next/standalone/.next/static/chunks/app/api/auth/me/route-f1b0daea9f947caf.js +0 -1
  436. package/.next/standalone/.next/static/chunks/app/api/auth/refresh/route-f1b0daea9f947caf.js +0 -1
  437. package/.next/standalone/.next/static/chunks/app/api/auth/session/route-f1b0daea9f947caf.js +0 -1
  438. package/.next/standalone/.next/static/chunks/app/api/auth/sync-token/route-f1b0daea9f947caf.js +0 -1
  439. package/.next/standalone/.next/static/chunks/app/api/comments/route-f1b0daea9f947caf.js +0 -1
  440. package/.next/standalone/.next/static/chunks/app/api/daemon/control/route-f1b0daea9f947caf.js +0 -1
  441. package/.next/standalone/.next/static/chunks/app/api/daemon/execution-state/route-f1b0daea9f947caf.js +0 -1
  442. package/.next/standalone/.next/static/chunks/app/api/daemon/executions/route-f1b0daea9f947caf.js +0 -1
  443. package/.next/standalone/.next/static/chunks/app/api/daemon/pending-turns/route-f1b0daea9f947caf.js +0 -1
  444. package/.next/standalone/.next/static/chunks/app/api/daemon/report-interrupt/route-f1b0daea9f947caf.js +0 -1
  445. package/.next/standalone/.next/static/chunks/app/api/daemon/resume/route-f1b0daea9f947caf.js +0 -1
  446. package/.next/standalone/.next/static/chunks/app/api/daemon/transcript/route-f1b0daea9f947caf.js +0 -1
  447. package/.next/standalone/.next/static/chunks/app/api/daemon/turn-advance/route-f1b0daea9f947caf.js +0 -1
  448. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/instruction/route-f1b0daea9f947caf.js +0 -1
  449. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/repoint/route-f1b0daea9f947caf.js +0 -1
  450. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/[sessionUuid]/route-f1b0daea9f947caf.js +0 -1
  451. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/ad-hoc/route-f1b0daea9f947caf.js +0 -1
  452. package/.next/standalone/.next/static/chunks/app/api/daemon-sessions/route-f1b0daea9f947caf.js +0 -1
  453. package/.next/standalone/.next/static/chunks/app/api/documents/[uuid]/route-f1b0daea9f947caf.js +0 -1
  454. package/.next/standalone/.next/static/chunks/app/api/entities/[type]/[uuid]/root-idea/route-f1b0daea9f947caf.js +0 -1
  455. package/.next/standalone/.next/static/chunks/app/api/events/notifications/route-f1b0daea9f947caf.js +0 -1
  456. package/.next/standalone/.next/static/chunks/app/api/events/route-f1b0daea9f947caf.js +0 -1
  457. package/.next/standalone/.next/static/chunks/app/api/health/route-f1b0daea9f947caf.js +0 -1
  458. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/claim/route-f1b0daea9f947caf.js +0 -1
  459. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/preview/route-f1b0daea9f947caf.js +0 -1
  460. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/move/route-f1b0daea9f947caf.js +0 -1
  461. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/parent/route-f1b0daea9f947caf.js +0 -1
  462. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/release/route-f1b0daea9f947caf.js +0 -1
  463. package/.next/standalone/.next/static/chunks/app/api/ideas/[uuid]/route-f1b0daea9f947caf.js +0 -1
  464. package/.next/standalone/.next/static/chunks/app/api/keepalive/route-f1b0daea9f947caf.js +0 -1
  465. package/.next/standalone/.next/static/chunks/app/api/mcp/route-f1b0daea9f947caf.js +0 -1
  466. package/.next/standalone/.next/static/chunks/app/api/me/assignments/route-f1b0daea9f947caf.js +0 -1
  467. package/.next/standalone/.next/static/chunks/app/api/mentionables/route-f1b0daea9f947caf.js +0 -1
  468. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/archive/route-f1b0daea9f947caf.js +0 -1
  469. package/.next/standalone/.next/static/chunks/app/api/notifications/[uuid]/read/route-f1b0daea9f947caf.js +0 -1
  470. package/.next/standalone/.next/static/chunks/app/api/notifications/preferences/route-f1b0daea9f947caf.js +0 -1
  471. package/.next/standalone/.next/static/chunks/app/api/notifications/read-all/route-f1b0daea9f947caf.js +0 -1
  472. package/.next/standalone/.next/static/chunks/app/api/notifications/route-f1b0daea9f947caf.js +0 -1
  473. package/.next/standalone/.next/static/chunks/app/api/notifications/unread-count/route-f1b0daea9f947caf.js +0 -1
  474. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/dashboard/route-f1b0daea9f947caf.js +0 -1
  475. package/.next/standalone/.next/static/chunks/app/api/project-groups/[uuid]/route-f1b0daea9f947caf.js +0 -1
  476. package/.next/standalone/.next/static/chunks/app/api/project-groups/route-f1b0daea9f947caf.js +0 -1
  477. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/activity/route-f1b0daea9f947caf.js +0 -1
  478. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/available/route-f1b0daea9f947caf.js +0 -1
  479. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/documents/route-f1b0daea9f947caf.js +0 -1
  480. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/group/route-f1b0daea9f947caf.js +0 -1
  481. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/route-f1b0daea9f947caf.js +0 -1
  482. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/ideas/tracker/route-f1b0daea9f947caf.js +0 -1
  483. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route-f1b0daea9f947caf.js +0 -1
  484. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/route-f1b0daea9f947caf.js +0 -1
  485. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/proposals/summary/route-f1b0daea9f947caf.js +0 -1
  486. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/route-f1b0daea9f947caf.js +0 -1
  487. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/stats/route-f1b0daea9f947caf.js +0 -1
  488. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/dependencies/route-f1b0daea9f947caf.js +0 -1
  489. package/.next/standalone/.next/static/chunks/app/api/projects/[uuid]/tasks/route-f1b0daea9f947caf.js +0 -1
  490. package/.next/standalone/.next/static/chunks/app/api/projects/route-f1b0daea9f947caf.js +0 -1
  491. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/approve/route-f1b0daea9f947caf.js +0 -1
  492. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/close/route-f1b0daea9f947caf.js +0 -1
  493. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/reject/route-f1b0daea9f947caf.js +0 -1
  494. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/revoke/route-f1b0daea9f947caf.js +0 -1
  495. package/.next/standalone/.next/static/chunks/app/api/proposals/[uuid]/route-f1b0daea9f947caf.js +0 -1
  496. package/.next/standalone/.next/static/chunks/app/api/search/route-f1b0daea9f947caf.js +0 -1
  497. package/.next/standalone/.next/static/chunks/app/api/sessions/[uuid]/route-f1b0daea9f947caf.js +0 -1
  498. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/claim/route-f1b0daea9f947caf.js +0 -1
  499. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route-f1b0daea9f947caf.js +0 -1
  500. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/dependencies/route-f1b0daea9f947caf.js +0 -1
  501. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/release/route-f1b0daea9f947caf.js +0 -1
  502. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/route-f1b0daea9f947caf.js +0 -1
  503. package/.next/standalone/.next/static/chunks/app/api/tasks/[uuid]/sessions/route-f1b0daea9f947caf.js +0 -1
  504. package/.next/standalone/.next/static/chunks/webpack-ed3555ea61243391.js +0 -1
  505. package/.next/standalone/.next/static/css/6e8fd46b062fd4fc.css +0 -1
  506. /package/.next/standalone/.next/static/{GmBblfxcDziUENBiEap4B → W3KEB0tOAICVtfAUfR_M9}/_buildManifest.js +0 -0
  507. /package/.next/standalone/.next/static/{GmBblfxcDziUENBiEap4B → W3KEB0tOAICVtfAUfR_M9}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- exports.id=6207,exports.ids=[6207],exports.modules={16352:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/ubuntu/dev/ai-pm/src/app/(dashboard)/layout.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/dev/ai-pm/src/app/(dashboard)/layout.tsx","default")},21002:(a,b,c)=>{"use strict";c.d(b,{Z:()=>h});var d=c(10837),e=c(1007),f=c(31009),g=c(45148);function h({children:a}){let b=function(a){let b=a.match(/^(\/projects\/[a-f0-9-]{36}\/(tasks|documents|proposals))\/.+$/);return b?b[1]:a}((0,e.usePathname)());return(0,d.jsx)(f.P.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:g.Yv.normal,ease:g.Yv.easeOut},className:"flex-1 flex flex-col",children:a},b)}},22299:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Dv:()=>n,Tg:()=>o,v5:()=>p});var e=c(2613);c(50785);var f=c(4687),g=c(9259),h=c(33994),i=c(5562),j=c(30457),k=c(97307),l=c(12217),m=a([g,h,j]);async function n(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{if(!await (0,h.xx)(b.companyUuid,a))return{success:!1,error:"Project not found"}}catch(a){return k.default.error({err:a},"Failed to delete project"),{success:!1,error:"Failed to delete project"}}(0,f.redirect)("/projects")}async function o(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.vr)(c.companyUuid,a,b);if(!d)return{success:!1,error:"Project not found"};return(0,i.revalidatePath)(`/projects/${a}/dashboard`),{success:!0,data:d}}catch(a){return k.default.error({err:a},"Failed to update project"),{success:!1,error:"Failed to update project"}}}async function p(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,j.UL)(b.companyUuid,a);return{success:!0,data:c}}catch(a){return k.default.error({err:a},"Failed to fetch active sessions"),{success:!1,error:"Failed to fetch active sessions"}}}[g,h,j]=m.then?(await m)():m,(0,l.D)([n,o,p]),(0,e.A)(n,"40a1e37396f58e0b94f8b4249861aa7dbe6c809e92",null),(0,e.A)(o,"60fb600bbe0e82e8e87fd60f7661e93363117dd04d",null),(0,e.A)(p,"40ea6dfe37c6920497fa8f7b8211547e6621f58ef2",null),d()}catch(a){d(a)}})},25104:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{G:()=>s});var e=c(10837),f=c(21968),g=c(9222),h=c(58270),i=c(51592),j=c(74113),k=c(42424),l=c(70028),m=c(68797),n=a([m]);function o({state:a}){return"error"===a?(0,e.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 shrink-0 rounded-full bg-[#D97706] opacity-90"}):(0,e.jsx)("span",{className:"shrink-0",children:(0,e.jsx)(m.md,{online:"online"===a,size:"md"})})}function p({connection:a,executions:b,showHost:c,nowMs:d}){let f=(0,g.c)("agentPresence"),j=(0,g.c)("agentConnections"),{text:k,dot:l}=(0,m.c0)(a,b,d),n=b.filter(a=>"running"===a.status),o=b.filter(a=>"queued"===a.status),p=n.length>0||o.length>0,q="online"===a.effectiveStatus;return(0,e.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,e.jsx)(m.A4,{connection:a,showHost:c,activity:k,dot:l}),p?(0,e.jsxs)("div",{className:"flex flex-col gap-4 pl-1",children:[n.length>0&&(0,e.jsx)(m.wL,{icon:h.A,label:j("execRunning"),count:n.length,children:n.map(a=>(0,e.jsx)(m.lb,{exec:a,nowMs:d,layout:"stacked"},a.uuid))}),o.length>0&&(0,e.jsx)(m.wL,{icon:i.A,label:j("execQueued"),count:o.length,children:o.map(a=>(0,e.jsx)(m.lb,{exec:a,nowMs:d,layout:"stacked"},a.uuid))})]}):q&&(0,e.jsx)("p",{className:"pl-1 text-[12px] text-[#9A9A9A]",children:f("connectionIdle")})]})}function q({group:a,executionsByConnection:b,nowMs:c,expanded:d,onToggle:f}){return(0,e.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,e.jsx)(m.u,{group:a,expanded:d,onToggle:f}),d&&(0,e.jsx)("div",{className:"flex flex-col gap-3 pl-7",children:a.connections.map(d=>(0,e.jsx)(p,{connection:d,executions:b[d.uuid]??[],showHost:a.multiHost,nowMs:c},d.uuid))})]})}function r({groups:a,executionsByConnection:b,nowMs:c}){let[d,g]=(0,f.useState)(new Set);return 0===a.length?(0,e.jsx)(m.Bs,{variant:"compact"}):(0,e.jsx)("div",{className:"flex flex-col gap-5",children:a.map(a=>(0,e.jsx)(q,{group:a,executionsByConnection:b,nowMs:c,expanded:d.has(a.agentUuid),onToggle:()=>{let b;return b=a.agentUuid,g(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})}},a.agentUuid))})}m=(n.then?(await n)():n)[0];let u={online:"border-[#E7E1D7] bg-[#FCFBF8] hover:bg-[#FBF4EF] hover:border-[#E2D6C9]",idle:"border-[#EAE5DC] bg-[#FAF8F4] hover:bg-[#F6F2EC]",loading:"border-[#EAE5DC] bg-[#FAF8F4]",error:"border-[#EBD9C4] bg-[#FFF9F2] hover:bg-[#FEF3E4]"};function s({mobile:a=!1}){let b,c=(0,g.c)("agentPresence"),{status:d,onlineCount:f,connections:h,executionsByConnection:i,setModalOpen:n}=(0,l.$d)(),p=a?"text-[12.5px]":"text-[11.5px]",q="loading"===d?"loading":"error"===d?"error":f>0?"online":"idle";if("error"===d)b=(0,e.jsx)("span",{className:`truncate font-medium text-[#B45309] ${p}`,children:c("unavailable")});else if("loading"===d)b=(0,e.jsx)("span",{className:`truncate text-muted-foreground/70 ${p}`,children:c("loading")});else{let d=f>0?"text-[#15803D]":"text-foreground/80";b=(0,e.jsxs)("span",{className:`flex min-w-0 items-baseline gap-1.5 truncate ${p}`,children:[(0,e.jsx)("span",{className:`font-semibold leading-none tabular-nums ${d} ${a?"text-[17px]":"text-[15px]"}`,children:f}),(0,e.jsx)("span",{className:"truncate text-muted-foreground",children:c("onlineUnit",{count:f})})]})}let r=(0,m.Jk)((0,m.fb)(h,i),i).filter(a=>a.onlineCount>0);return(0,e.jsxs)(j.AM,{children:[(0,e.jsx)(j.Wv,{asChild:!0,children:(0,e.jsxs)(k.$,{variant:"ghost","aria-label":c("pillAria"),className:`group h-auto w-full justify-start gap-2.5 rounded-xl border px-3 ${a?"py-2.5":"py-2"} shadow-[0_1px_2px_rgba(44,44,44,0.03)] transition-colors ${u[q]}`,children:[(0,e.jsx)(o,{state:q}),b]})}),(0,e.jsx)(j.hl,{align:"start",side:"top",sideOffset:8,className:"max-h-[60vh] w-[min(92vw,400px)] overflow-y-auto p-3",children:(0,e.jsx)(t,{groups:r,executionsByConnection:i,onViewAll:()=>n(!0)})})]})}function t({groups:a,executionsByConnection:b,onViewAll:c}){let d=(0,g.c)("agentPresence"),f=(0,m.le)();return(0,e.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,e.jsx)("div",{className:"flex items-center justify-between",children:(0,e.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-[#6B6B6B]",children:d("popoverTitle")})}),(0,e.jsx)(r,{groups:a,executionsByConnection:b,nowMs:f}),(0,e.jsx)(k.$,{variant:"ghost",size:"sm",onClick:c,className:"w-full justify-center text-[12px] font-medium text-[#C67A52] hover:bg-[#C67A5214] hover:text-[#A65F3C]",children:d("viewAll")})]})}d()}catch(a){d(a)}})},25678:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>N});var e=c(10837),f=c(21968),g=c(1007),h=c(9222),i=c(81512),j=c.n(i),k=c(42424),l=c(76723),m=c(65956),n=c(4065),o=c(10529),p=c(28605),q=c(33650),r=c(59169),s=c(35209),t=c(21790),u=c(71833),v=c(46839),w=c(93524),x=c(97513),y=c(76172),z=c(70028),A=c(24314),B=c(25104),C=c(68797),D=c(52758),E=c(66887),F=c(94143),G=c(33559),H=c(21002),I=c(29003),J=c(78323),K=c(31009),L=c(45148);c(54722);var M=a([B,C]);function N({children:a}){let b=(0,g.useRouter)(),c=(0,g.usePathname)(),d=(0,h.c)(),[i,M]=(0,f.useState)(null),[N,O]=(0,f.useState)(null),[P,Q]=(0,f.useState)([]),[R,S]=(0,f.useState)(!0),[T,U]=(0,f.useState)(!1),[V,W]=(0,f.useState)(!1),[X,Y]=(0,f.useState)(!1),Z=function(a){let b=a.match(/^\/projects\/([a-f0-9-]{36})(\/|$)/);return b?b[1]:null}(c),$=function(a){let b=a.match(/^\/project-groups\/([a-f0-9-]{36})(\/|$)/);return b?b[1]:null}(c),[_,aa]=(0,f.useState)(null),ab="/projects"===c||"/settings"===c||c.startsWith("/project-groups"),ac=Z&&!ab,ad=c.match(/^\/projects\/[a-f0-9-]{36}\/tasks(\/|$)/),ae=async()=>{try{await (0,w.ri)()}catch{(0,w.w9)()}b.push("/login")};if(R)return(0,e.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,e.jsx)("div",{className:"text-muted-foreground",children:d("common.loading")})});let af=[{href:"/projects",label:d("nav.projects"),icon:q.A},{href:"/settings",label:d("nav.settings"),icon:r.A}],ag=a=>a.endsWith("/dashboard")?c===a:"/projects"===a?"/projects"===c:c===a||c.startsWith(a+"/"),ah=({mobile:a=!1})=>{let c=a?"text-[15px]":"text-[13px]",f=a?"h-5 w-5":"h-4 w-4",g=a?"gap-1.5":"gap-1",h=a?"h-10":"",q=a?"text-[13px]":"text-[11px]",r=a?"text-[15px]":"text-[13px]",v=a?"text-[12px]":"text-[11px]";return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("div",{className:"flex flex-col gap-8 p-6",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,e.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-7 w-7"}),(0,e.jsx)("span",{className:"text-base font-semibold text-foreground",children:d("common.appName")})]}),(0,e.jsx)("div",{className:"hidden md:block",children:(0,e.jsx)(E.r,{})})]}),!a&&(0,e.jsx)(G.K,{currentProjectUuid:Z||void 0,currentProjectName:N?.name,currentGroupUuid:$||void 0,currentGroupName:_||void 0}),(0,e.jsx)("nav",{className:`flex flex-col ${g}`,children:ac&&Z?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(j(),{href:"/projects",children:(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",className:`w-full justify-start gap-2.5 text-muted-foreground hover:text-foreground ${c} ${h}`,children:[(0,e.jsx)(s.A,{className:a?"h-4 w-4":"h-3 w-3"}),d("nav.backToProjects")]})}),N&&(0,e.jsxs)("div",{className:"relative mt-2",children:[(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",onClick:()=>P.length>0&&U(!T),className:`w-full justify-between px-3 py-1.5 ${0===P.length?"cursor-default":""}`,children:[(0,e.jsx)("span",{className:`truncate font-semibold uppercase tracking-wider text-foreground ${q}`,children:N.name}),P.length>0&&(0,e.jsx)(t.A,{className:`h-3 w-3 text-muted-foreground transition-transform ${T?"rotate-180":""}`})]}),(0,e.jsx)(J.N,{children:T&&P.length>0&&(0,e.jsx)(K.P.div,{variants:L.K5,initial:"initial",animate:"animate",exit:"exit",className:"absolute left-0 right-0 top-full z-10 mt-1 origin-top rounded-lg border border-border bg-card py-1 shadow-lg",children:P.map(a=>(0,e.jsx)(k.$,{variant:"ghost",size:"sm",onClick:()=>{U(!1),b.push(`/projects/${a.uuid}/dashboard`)},className:`w-full justify-start px-3 py-2 ${c} [&>*]:truncate text-muted-foreground`,children:(0,e.jsx)("span",{className:"truncate",children:a.name})},a.uuid))})})]}),(0,e.jsx)("div",{className:`mt-2 flex flex-col ${g}`,children:[{href:`/projects/${Z}/dashboard`,label:d("nav.overview"),icon:l.A},{href:`/projects/${Z}/documents`,label:d("nav.documents"),icon:m.A},{href:`/projects/${Z}/proposals`,label:d("nav.proposals"),icon:n.A},{href:`/projects/${Z}/tasks`,label:d("nav.tasks"),icon:o.A},{href:`/projects/${Z}/activity`,label:d("nav.activity"),icon:p.A}].map(a=>{let b=ag(a.href),d=a.icon;return(0,e.jsx)(j(),{href:a.href,children:(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",className:`relative w-full justify-start gap-2.5 ${c} ${h} ${b?"font-medium text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[b&&(0,e.jsx)(K.P.div,{layoutId:"nav-active",className:"absolute inset-0 rounded-md bg-secondary",transition:{type:"spring",stiffness:500,damping:30}}),(0,e.jsxs)("span",{className:"relative flex items-center gap-2.5",children:[(0,e.jsx)(d,{className:`${f} ${b?"text-primary":""}`}),a.label]})]})},a.href)})})]}):(0,e.jsx)(e.Fragment,{children:(0,e.jsx)("div",{className:`flex flex-col ${g}`,children:af.map(a=>{let b=ag(a.href),d=a.icon;return(0,e.jsx)(j(),{href:a.href,children:(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",className:`relative w-full justify-start gap-2.5 ${c} ${h} ${b?"font-medium text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[b&&(0,e.jsx)(K.P.div,{layoutId:"nav-active",className:"absolute inset-0 rounded-md bg-secondary",transition:{type:"spring",stiffness:500,damping:30}}),(0,e.jsxs)("span",{className:"relative flex items-center gap-2.5",children:[(0,e.jsx)(d,{className:`${f} ${b?"text-primary":""}`}),a.label]})]})},a.href)})})})})]}),(0,e.jsxs)("div",{className:"mt-auto flex flex-col gap-1 px-4 pb-4",children:[(0,e.jsx)(B.G,{mobile:a}),(0,e.jsx)("div",{className:"px-2 pt-1",children:(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("div",{className:`flex items-center justify-center rounded-full bg-primary font-medium text-primary-foreground ${a?"h-10 w-10 text-base":"h-9 w-9 text-sm"}`,children:i?.name?.charAt(0)||"U"}),(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("div",{className:`truncate font-medium text-foreground ${r}`,children:i?.name}),(0,e.jsx)("div",{className:`truncate text-muted-foreground ${v}`,children:i?.email})]}),(0,e.jsx)(k.$,{variant:"ghost",size:"icon",onClick:ae,title:d("common.signOut"),className:"h-8 w-8 text-muted-foreground hover:text-foreground",children:(0,e.jsx)(u.A,{className:"h-4 w-4"})})]})})]})]})};return(0,e.jsxs)(D.p,{children:[(0,e.jsx)(A.OJ,{children:(0,e.jsxs)(z.Oj,{children:[(0,e.jsx)(C.MH,{}),(0,e.jsxs)("div",{className:"flex min-h-screen bg-background",children:[(0,e.jsx)("header",{className:"fixed top-0 left-0 right-0 z-30 border-b border-border bg-card md:hidden",children:(0,e.jsxs)("div",{className:"flex h-14 items-center justify-between px-4",children:[(0,e.jsx)("button",{onClick:()=>W(!0),"aria-label":d("nav.openMenu"),children:(0,e.jsx)(v.A,{className:"h-5 w-5 text-muted-foreground"})}),(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-6 w-6"}),(0,e.jsx)("span",{className:"text-sm font-semibold text-foreground",children:d("common.appName")})]}),(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)(G.K,{currentProjectUuid:Z||void 0,currentProjectName:N?.name,currentGroupUuid:$||void 0,currentGroupName:_||void 0}),(0,e.jsx)(E.r,{})]})]})}),(0,e.jsx)(F.cj,{open:V,onOpenChange:W,children:(0,e.jsx)(F.h,{side:"left",className:"w-[280px] p-0",children:(0,e.jsx)("div",{className:"flex h-full flex-col justify-between overflow-y-auto",children:(0,e.jsx)(ah,{mobile:!0})})})}),(0,e.jsx)("aside",{className:"hidden md:sticky md:top-0 md:flex h-screen w-[220px] flex-shrink-0 flex-col justify-between overflow-y-auto border-r border-border bg-card",children:(0,e.jsx)(ah,{})}),ac&&Z?(0,e.jsxs)(y.tS,{projectUuid:Z,children:[(0,e.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,e.jsx)("div",{className:`mx-auto w-full flex-1 flex flex-col ${ad?"":"max-w-[1200px]"}`,children:(0,e.jsx)(H.Z,{children:a})})}),(0,e.jsx)(x.B,{projectUuid:Z,projectName:N?.name||""})]}):"/projects"===c||c.startsWith("/project-groups")?(0,e.jsx)(y.tS,{children:(0,e.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,e.jsx)("div",{className:`mx-auto w-full flex-1 flex flex-col ${ad?"":"max-w-[1200px]"}`,children:(0,e.jsx)(H.Z,{children:a})})})}):(0,e.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,e.jsx)("div",{className:`mx-auto w-full flex-1 flex flex-col ${ad?"":"max-w-[1200px]"}`,children:(0,e.jsx)(H.Z,{children:a})})})]})]})}),(0,e.jsx)(I.l,{position:X?"top-center":"top-right",closeButton:!X})]})}[B,C]=M.then?(await M)():M,d()}catch(a){d(a)}})},29003:(a,b,c)=>{"use strict";c.d(b,{l:()=>f});var d=c(10837),e=c(76549);let f=({...a})=>(0,d.jsx)(e.l$,{className:"toaster group",...a})},33559:(a,b,c)=>{"use strict";c.d(b,{K:()=>z});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(75888),i=c(86691),j=c(86460),k=c(78323),l=c(31009),m=c(45148),n=c(96307),o=c(42424),p=c(9994),q=c(49599),r=c(74645),s=c(11568),t=c(55732),u=c(54722),v=c(42087);let w=["all","task","idea","proposal","document","project"],x={task:"bg-[#EBF5FF] text-[#2563EB] border-[#2563EB]/20",idea:"bg-[#FEF9C3] text-[#A16207] border-[#A16207]/20",proposal:"bg-[#FFF7ED] text-[#C67A52] border-[#C67A52]/20",document:"bg-[#F3E8FF] text-[#7C3AED] border-[#7C3AED]/20",project:"bg-[#ECFDF5] text-[#059669] border-[#059669]/20",project_group:"bg-[#F0FDFA] text-[#0D9488] border-[#0D9488]/20"},y={all:"filterAll",task:"filterTasks",idea:"filterIdeas",proposal:"filterProposals",document:"filterDocuments",project:"filterProjects",project_group:"filterProjects"};function z({currentProjectUuid:a,currentProjectName:b,currentGroupUuid:c,currentGroupName:z}){let A=(0,g.c)("search"),B=(0,g.c)("time"),C=(0,f.useRouter)(),[D,E]=(0,e.useState)(""),[F,G]=(0,e.useState)(a?"project":c?"group":"global"),[H,I]=(0,e.useState)([]),[J,K]=(0,e.useState)(!1),[L,M]=(0,e.useState)(!1),[N,O]=(0,e.useState)("all"),[P,Q]=(0,e.useState)(0),R=(0,e.useRef)(null),S=(0,e.useRef)([]),T=(0,e.useRef)(void 0),U=(0,e.useCallback)(async(b,d,e="all")=>{if(!b.trim()){I([]),K(!1);return}K(!0);try{let f=new URLSearchParams({q:b.trim(),scope:d,limit:"20"});"project"===d&&a?f.set("scopeUuid",a):"group"===d&&c&&f.set("scopeUuid",c),"all"!==e&&f.set("types",e);let g=await fetch(`/api/search?${f.toString()}`,{credentials:"include"});if(!g.ok){u.q.error("Search failed:",g.status),I([]);return}let h=await g.json();h.success?I(h.data.results):I([])}catch(a){u.q.error("Search error:",a),I([])}finally{K(!1)}},[a,c]),V=(0,e.useCallback)(a=>{E(a),T.current&&clearTimeout(T.current),a.trim()?T.current=setTimeout(()=>{U(a,F,N)},300):(I([]),K(!1))},[F,N,U]),W=(0,e.useCallback)(a=>{G(a),D.trim()&&U(D,a,N)},[D,N,U]),X=(0,e.useCallback)(a=>{O(a),Q(0),D.trim()&&U(D,F,a)},[D,F,U]),Y=(0,e.useCallback)(a=>{switch(M(!1),a.entityType){case"task":a.projectUuid&&C.push(`/projects/${a.projectUuid}/tasks/${a.uuid}`);break;case"idea":a.projectUuid&&C.push(`/projects/${a.projectUuid}/dashboard?panel=${a.uuid}`);break;case"proposal":a.projectUuid&&C.push(`/projects/${a.projectUuid}/proposals/${a.uuid}`);break;case"document":a.projectUuid&&C.push(`/projects/${a.projectUuid}/documents/${a.uuid}`);break;case"project":C.push(`/projects/${a.uuid}/dashboard`);break;case"project_group":C.push("/projects")}},[C]);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(o.$,{variant:"outline",size:"icon",onClick:()=>M(!0),className:"md:w-full md:justify-start md:gap-3 h-9 md:px-3 text-muted-foreground font-normal",children:[(0,d.jsx)(h.A,{className:"h-4 w-4 shrink-0"}),(0,d.jsx)("span",{className:"hidden md:inline truncate text-sm",children:A("placeholder")}),(0,d.jsxs)("kbd",{className:"ml-auto pointer-events-none hidden md:flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[10px] font-medium",children:[(0,d.jsx)(i.A,{className:"h-3 w-3"}),(0,d.jsx)("span",{children:"K"})]})]}),(0,d.jsx)(s.lG,{open:L,onOpenChange:M,children:(0,d.jsxs)(s.Cf,{className:"w-[calc(100vw-2rem)] sm:max-w-[600px] p-0 gap-0 overflow-hidden [&>button]:hidden [&>*]:min-w-0 top-4 sm:top-[20%] translate-y-0","aria-describedby":void 0,children:[(0,d.jsx)(s.L3,{className:"sr-only",children:A("placeholder")}),(0,d.jsxs)("div",{className:"flex items-center gap-2 border-b px-3 sm:px-4 py-3",children:[(0,d.jsx)(h.A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,d.jsx)(p.p,{ref:R,type:"text",placeholder:A("placeholder"),value:D,onChange:a=>V(a.target.value),onKeyDown:a=>{!(0,v.P)(a)&&("ArrowDown"===a.key?(a.preventDefault(),Q(a=>{let b=Math.min(a+1,H.length-1);return S.current[b]?.scrollIntoView({block:"nearest"}),b})):"ArrowUp"===a.key?(a.preventDefault(),Q(a=>{let b=Math.max(a-1,0);return S.current[b]?.scrollIntoView({block:"nearest"}),b})):"Enter"===a.key&&H.length>0&&(a.preventDefault(),Y(H[P])))},className:"border-0 shadow-none focus-visible:ring-0 h-8 px-0 text-sm min-w-0"}),J&&(0,d.jsx)(j.A,{className:"h-4 w-4 shrink-0 animate-spin text-muted-foreground"}),(0,d.jsxs)(t.l6,{value:F,onValueChange:a=>W(a),children:[(0,d.jsx)(t.bq,{className:"w-auto h-7 text-xs gap-1 border-dashed shrink-0",children:(0,d.jsx)(t.yv,{})}),(0,d.jsxs)(t.gC,{children:[(0,d.jsx)(t.eb,{value:"global",children:A("scopeGlobal")}),c&&(0,d.jsx)(t.eb,{value:"group",children:z||A("scopeGroup")}),a&&(0,d.jsx)(t.eb,{value:"project",children:b||A("scopeProject")})]})]})]}),D.trim()&&(0,d.jsx)("div",{className:"flex items-center gap-1 border-b px-4 py-2 overflow-x-auto",children:w.map(a=>(0,d.jsx)(o.$,{variant:N===a?"default":"ghost",size:"sm",onClick:()=>X(a),className:(0,n.cn)("h-7 px-3 text-xs rounded-full shrink-0",N===a?"bg-foreground text-background hover:bg-foreground/90":"text-muted-foreground hover:text-foreground"),children:A(y[a])},a))}),(0,d.jsx)(r.F,{className:"max-h-[400px]",children:(0,d.jsx)(k.N,{mode:"wait",children:D.trim()?J?(0,d.jsx)(l.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:m.Yv.fast},children:(0,d.jsxs)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:[(0,d.jsx)(j.A,{className:"h-5 w-5 animate-spin mx-auto mb-2"}),A("placeholder"),"..."]})},"loading"):0===H.length?(0,d.jsx)(l.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:m.Yv.fast},children:(0,d.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:A("noResults")})},"no-results"):(0,d.jsx)(l.P.div,{initial:"initial",animate:"animate",transition:{staggerChildren:m.Yv.staggerFast},className:"p-2",children:H.map((a,b)=>(0,d.jsx)(l.P.div,{variants:m.Rf,children:(0,d.jsxs)("button",{ref:a=>{S.current[b]=a},onClick:()=>Y(a),onMouseEnter:()=>Q(b),className:(0,n.cn)("block w-full text-left px-3 py-2.5 rounded-lg transition-colors cursor-pointer overflow-hidden",b===P?"bg-accent":"hover:bg-accent/50"),children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5 mb-0.5",children:[(0,d.jsx)(q.E,{variant:"outline",className:(0,n.cn)("text-[10px] px-1.5 py-0 shrink-0",x[a.entityType]||"bg-muted text-muted-foreground"),children:A(`entityType.${a.entityType}`)}),a.status&&(0,d.jsx)(q.E,{variant:"secondary",className:"text-[10px] px-1.5 py-0 shrink-0",children:a.status}),a.projectName&&(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground line-clamp-1 ml-auto",children:a.projectName})]}),(0,d.jsx)("div",{className:"font-medium text-sm line-clamp-1 break-all",children:a.title}),a.snippet&&(0,d.jsx)("div",{className:"text-xs text-muted-foreground line-clamp-1 mt-0.5 break-all",children:a.snippet}),(0,d.jsx)("div",{className:"text-[10px] text-muted-foreground mt-1",children:(a=>{let b=Math.floor((Date.now()-new Date(a).getTime())/1e3);return b<60?B("justNow"):b<3600?B("minutesAgo",{minutes:Math.floor(b/60)}):b<86400?B("hoursAgo",{hours:Math.floor(b/3600)}):B("daysAgo",{days:Math.floor(b/86400)})})(a.updatedAt)})]})},`${a.entityType}-${a.uuid}`))},`results-${N}`):(0,d.jsx)(l.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:m.Yv.fast},children:(0,d.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:A("placeholder")})},"empty")})}),(0,d.jsxs)("div",{className:"hidden sm:flex items-center justify-between border-t px-4 py-2 text-[10px] text-muted-foreground",children:[(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"↑"}),(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"↓"}),A("filterAll")]}),(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"⏎"}),"Open"]})]}),(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"Esc"}),"Close"]})]})]})})]})}},33994:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Yi:()=>i,hF:()=>h,vr:()=>j,xx:()=>k});var e=c(71255),f=c(62729),g=a([e]);async function h({companyUuid:a,skip:b,take:c}){let[d,f]=await Promise.all([e.z.project.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0}}}}),e.z.project.count({where:{companyUuid:a}})]);return{projects:d,total:f}}async function i(a,b){return!!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function j(a,b,c){let d=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return d?e.z.project.update({where:{uuid:d.uuid},data:c,select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}}):null}async function k(a,b){let c=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return!!c&&(await e.z.project.delete({where:{uuid:c.uuid}}),f.B.emitChange({companyUuid:a,projectUuid:b,entityType:"project",entityUuid:b,action:"deleted"}),!0)}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},46795:(a,b,c)=>{Promise.resolve().then(c.bind(c,25678))},52758:(a,b,c)=>{"use strict";c.d(b,{h:()=>t,p:()=>s});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(76549),i=c(24838),j=c(98893),k=c(97825),l=c(59129),m=c(61131),n=c(24714),o=c(73112),p=c(93524);let q=(0,e.createContext)(null),r=new Set(["agent_checkin"]);function s({children:a}){let[b,c]=(0,e.useState)(0),s=(0,e.useRef)(new Set),t=(0,f.useRouter)(),u=(0,g.c)("notifications"),v=(0,e.useCallback)(()=>{s.current.forEach(a=>a())},[]),w=(0,e.useCallback)(async()=>{try{let a=await (0,p.tm)("/api/notifications?readFilter=unread&take=0");if(a.ok){let b=await a.json();b.success&&c(b.data.unreadCount)}}catch{}},[]),x=(0,e.useCallback)(()=>{w(),v()},[w,v]);(0,e.useCallback)(a=>{if(!a.action||r.has(a.action)||!a.entityTitle||!a.actorName)return;let b=u(`types.${a.action}`),c=a.entityTitle,e=`${a.actorName} \xb7 ${b}`;(0,h.oR)(c,{description:e,icon:function(a){switch(a){case"task_assigned":case"idea_claimed":return(0,d.jsx)(i.A,{className:"h-4 w-4 text-[#C67A52]"});case"proposal_approved":case"task_verified":return(0,d.jsx)(j.A,{className:"h-4 w-4 text-green-600"});case"proposal_rejected":case"task_reopened":return(0,d.jsx)(k.A,{className:"h-4 w-4 text-red-500"});case"comment_added":return(0,d.jsx)(l.A,{className:"h-4 w-4 text-orange-500"});case"mentioned":return(0,d.jsx)(m.A,{className:"h-4 w-4 text-blue-600"});case"proposal_submitted":return(0,d.jsx)(n.A,{className:"h-4 w-4 text-blue-500"});case"task_status_changed":return(0,d.jsx)(o.A,{className:"h-4 w-4 text-blue-500"});default:return(0,d.jsx)(n.A,{className:"h-4 w-4 text-muted-foreground"})}}(a.action),duration:5e3,action:a.entityType&&a.entityUuid&&a.projectUuid?{label:u("viewDetail"),onClick:()=>t.push(function(a,b,c){let d=`/projects/${c}`;switch(a){case"task":return`${d}/tasks/${b}`;case"idea":return`${d}/dashboard?panel=${b}`;case"proposal":return`${d}/proposals/${b}`;case"document":return`${d}/documents/${b}`;default:return d}}(a.entityType,a.entityUuid,a.projectUuid))}:void 0})},[u,t]);let y=(0,e.useMemo)(()=>({unreadCount:b,refreshNotifications:x}),[b,x]);return(0,d.jsx)(q.Provider,{value:y,children:a})}function t(){let a=(0,e.useContext)(q);return a||{unreadCount:0,refreshNotifications:()=>{}}}},66887:(a,b,c)=>{"use strict";c.d(b,{r:()=>E});var d=c(10837),e=c(21968),f=c(86677),g=c(74113),h=c(42424),i=c(52758),j=c(1007),k=c(9222),l=c(81512),m=c.n(l),n=c(24838),o=c(98893),p=c(97825),q=c(59129),r=c(61131),s=c(24714),t=c(73112),u=c(27362),v=c(31009),w=c(45148),x=c(94372),y=c(74645),z=c(49599),A=c(93524);let B=[{bg:"bg-amber-100 dark:bg-amber-900/30",text:"text-amber-800 dark:text-amber-300"},{bg:"bg-blue-100 dark:bg-blue-900/30",text:"text-blue-800 dark:text-blue-300"},{bg:"bg-emerald-100 dark:bg-emerald-900/30",text:"text-emerald-800 dark:text-emerald-300"},{bg:"bg-violet-100 dark:bg-violet-900/30",text:"text-violet-800 dark:text-violet-300"},{bg:"bg-rose-100 dark:bg-rose-900/30",text:"text-rose-800 dark:text-rose-300"},{bg:"bg-cyan-100 dark:bg-cyan-900/30",text:"text-cyan-800 dark:text-cyan-300"},{bg:"bg-orange-100 dark:bg-orange-900/30",text:"text-orange-800 dark:text-orange-300"},{bg:"bg-indigo-100 dark:bg-indigo-900/30",text:"text-indigo-800 dark:text-indigo-300"}],C=new Set(["agent_checkin"]);function D({onClose:a}){let b=(0,k.c)("notifications"),c=(0,j.useRouter)(),{refreshNotifications:f}=(0,i.h)(),g=(0,e.useCallback)(a=>{let c=Date.now()-new Date(a).getTime(),d=Math.floor(c/6e4),e=Math.floor(c/36e5),f=Math.floor(c/864e5);return d<1?b("justNow"):d<60?b("minutesAgo",{count:d}):e<24?b("hoursAgo",{count:e}):b("daysAgo",{count:f})},[b]),[l,D]=(0,e.useState)([]),[E,F]=(0,e.useState)([]),[G,H]=(0,e.useState)(0),[I,J]=(0,e.useState)(0),[K,L]=(0,e.useState)(!0),M=(0,e.useCallback)(async(a,b)=>{let c=new URLSearchParams({limit:"20",offset:String(b)});a&&c.set("unreadOnly","true");let d=await (0,A.tm)(`/api/notifications?${c}`);if(!d.ok)return null;let e=await d.json();return e.success?e.data:null},[]),N=async()=>{await (0,A.tm)("/api/notifications/read-all",{method:"POST"}),F([]),J(0),D(a=>a.map(a=>a.readAt?a:{...a,readAt:new Date().toISOString()})),f()},O=async b=>{b.readAt||((0,A.tm)(`/api/notifications/${b.uuid}/read`,{method:"PATCH"}),F(a=>a.filter(a=>a.uuid!==b.uuid)),D(a=>a.map(a=>a.uuid===b.uuid?{...a,readAt:new Date().toISOString()}:a)),f()),a(),c.push(function(a){let{action:b,entityType:c,entityUuid:d,projectUuid:e}=a,f=`/projects/${e}`;if("report_created"===b)return`${f}/dashboard?panel=${d}&tab=overview`;switch(c){case"task":return`${f}/tasks/${d}`;case"idea":return`${f}/dashboard?panel=${d}`;case"proposal":return`${f}/proposals/${d}`;case"document":return`${f}/documents/${d}`;default:return f}}(b))},P=async a=>{let b=a?E:l,c=await M(a,b.length);c&&(a?F(a=>[...a,...c.notifications]):D(a=>[...a,...c.notifications]))},Q=a=>{let{Icon:c,color:e}=function(a){switch(a){case"task_assigned":case"idea_claimed":return{Icon:n.A,color:"text-[#C67A52]"};case"proposal_approved":case"task_verified":return{Icon:o.A,color:"text-green-600"};case"proposal_rejected":case"task_reopened":return{Icon:p.A,color:"text-red-500"};case"comment_added":return{Icon:q.A,color:"text-orange-500"};case"mentioned":return{Icon:r.A,color:"text-blue-600"};case"proposal_submitted":return{Icon:s.A,color:"text-blue-500"};case"task_status_changed":return{Icon:t.A,color:"text-blue-500"};case"report_created":return{Icon:u.A,color:"text-emerald-600"};default:return{Icon:s.A,color:"text-muted-foreground"}}}(a.action),f=function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return B[Math.abs(b)%B.length]}(a.projectUuid),h=!a.readAt;return(0,d.jsx)(v.P.div,{variants:w.Rf,children:(0,d.jsxs)("button",{onClick:()=>O(a),className:"flex w-full gap-3 px-4 py-3 text-left hover:bg-muted/50 transition-colors border-b border-border last:border-b-0",children:[(0,d.jsx)("div",{className:"mt-1.5 flex-shrink-0",children:h?(0,d.jsx)("div",{className:"h-2 w-2 rounded-full bg-[#C67A52]"}):(0,d.jsx)("div",{className:"h-2 w-2"})}),(0,d.jsx)("div",{className:"mt-0.5 flex-shrink-0",children:(0,d.jsx)(c,{className:`h-4 w-4 ${e}`})}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)(z.E,{variant:"secondary",className:`mb-1 block h-auto max-w-full whitespace-normal break-words px-1.5 py-0 text-[10px] font-medium ${f.bg} ${f.text} border-0`,children:a.projectName}),(0,d.jsx)("div",{className:"text-[13px] font-medium text-foreground break-words",children:a.entityTitle}),(0,d.jsx)("div",{className:"text-[12px] text-muted-foreground break-words",children:b(`types.${a.action}`)}),(0,d.jsxs)("div",{className:"mt-0.5 text-[11px] text-muted-foreground break-words",children:[a.actorName," \xb7 ",g(a.createdAt)]})]})]})},a.uuid)},R=(a,c,e)=>{let f=a.filter(a=>!C.has(a.action));return K?(0,d.jsxs)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:[b("loadMore"),"..."]}):0===f.length?(0,d.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:c?b("noUnread"):b("noNotifications")}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(v.P.div,{initial:"initial",animate:"animate",transition:{staggerChildren:.04},children:f.map(Q)}),f.length<e&&(0,d.jsx)("div",{className:"p-3 text-center",children:(0,d.jsx)(h.$,{variant:"ghost",size:"sm",className:"text-xs",onClick:()=>P(c),children:b("loadMore")})})]})};return(0,d.jsxs)("div",{className:"w-[calc(100vw-2rem)] max-w-[360px]",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between border-b border-border px-4 py-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:b("title")}),(0,d.jsx)(h.$,{variant:"ghost",size:"sm",className:"h-auto p-0 text-xs text-primary hover:text-primary/80",onClick:N,children:b("markAllRead")})]}),(0,d.jsxs)(x.tU,{defaultValue:"unread",className:"gap-0",children:[(0,d.jsxs)(x.j7,{className:"w-full rounded-none border-b border-border bg-transparent px-4 py-0 h-9",children:[(0,d.jsxs)(x.Xi,{value:"unread",className:"text-xs rounded-none data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:[b("tabUnread")," ",I>0&&`(${I})`]}),(0,d.jsx)(x.Xi,{value:"all",className:"text-xs rounded-none data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:b("tabAll")})]}),(0,d.jsx)(x.av,{value:"all",className:"mt-0",children:(0,d.jsx)(v.P.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.15},children:(0,d.jsx)(y.F,{className:"max-h-[400px] overflow-y-auto [&_[data-slot=scroll-area-viewport]>div]:!block",children:R(l,!1,G)})},"tab-all")}),(0,d.jsx)(x.av,{value:"unread",className:"mt-0",children:(0,d.jsx)(v.P.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.15},children:(0,d.jsx)(y.F,{className:"max-h-[400px] overflow-y-auto [&_[data-slot=scroll-area-viewport]>div]:!block",children:R(E,!0,I)})},"tab-unread")})]}),(0,d.jsx)("div",{className:"border-t border-border px-4 py-2 text-center",children:(0,d.jsx)(m(),{href:"/settings",onClick:a,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:b("notificationPreferences")})})]})}function E(){let{unreadCount:a}=(0,i.h)(),[b,c]=(0,e.useState)(!1);return(0,d.jsxs)(g.AM,{open:b,onOpenChange:c,children:[(0,d.jsx)(g.Wv,{asChild:!0,children:(0,d.jsxs)(h.$,{variant:"ghost",size:"icon",className:"relative h-8 w-8 text-muted-foreground hover:text-foreground",children:[(0,d.jsx)(f.A,{className:"h-4 w-4"}),a>0&&(0,d.jsx)("span",{className:"absolute -top-0.5 -right-0.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-[#C67A52] px-1 text-[10px] font-medium text-white animate-[pulse-badge_1.5s_ease-in-out_infinite]",children:a>99?"99+":a})]})}),(0,d.jsx)(g.hl,{align:"start",sideOffset:8,className:"w-auto p-0 rounded-lg",children:(0,d.jsx)(D,{onClose:()=>c(!1)})})]})}},76172:(a,b,c)=>{"use strict";c.d(b,{S2:()=>j,eV:()=>i,l9:()=>h,tS:()=>g,w0:()=>k});var d=c(10837),e=c(21968);c(1007);let f=(0,e.createContext)(null);function g({projectUuid:a,children:b}){let c=(0,e.useRef)(new Set),g=(0,e.useRef)(new Set),h=(0,e.useRef)(new Set),i=(0,e.useRef)(new Set);(0,e.useCallback)(()=>{c.current.forEach(a=>a())},[]),(0,e.useCallback)(a=>{g.current.forEach(b=>b(a))},[]);let j=(0,e.useCallback)(a=>(c.current.add(a),()=>{c.current.delete(a)}),[]),k=(0,e.useCallback)(a=>(g.current.add(a),()=>{g.current.delete(a)}),[]),l=(0,e.useCallback)(a=>(h.current.add(a),()=>{h.current.delete(a)}),[]),m=(0,e.useCallback)(a=>(i.current.add(a),()=>{i.current.delete(a)}),[]),n=(0,e.useMemo)(()=>({subscribe:j,subscribeEntity:k,subscribePresence:l,subscribeExecution:m}),[j,k,l,m]);return(0,d.jsx)(f.Provider,{value:n,children:b})}function h(a){(0,e.useContext)(f),(0,e.useRef)(a).current=a}function i(a,b){(0,e.useContext)(f),(0,e.useRef)(b).current=b,(0,e.useRef)(a).current=a}function j(a){(0,e.useContext)(f),(0,e.useRef)(a).current=a}function k(a,b,c){(0,e.useContext)(f),(0,e.useRef)(c).current=c}},86547:(a,b,c)=>{Promise.resolve().then(c.bind(c,16352))},94143:(a,b,c)=>{"use strict";c.d(b,{CG:()=>j,Fm:()=>o,cj:()=>i,h:()=>n,qp:()=>p});var d=c(10837);c(21968);var e=c(10694),f=c(14220),g=c(35973),h=c(96307);function i({...a}){return(0,d.jsx)(f.Root,{"data-slot":"sheet",...a})}function j({...a}){return(0,d.jsx)(f.Trigger,{"data-slot":"sheet-trigger",...a})}function k({...a}){return(0,d.jsx)(f.Portal,{"data-slot":"sheet-portal",...a})}function l({className:a,...b}){return(0,d.jsx)(f.Overlay,{"data-slot":"sheet-overlay",className:(0,h.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",a),...b})}let m=(0,g.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 n({className:a,children:b,side:c="right",...g}){return(0,d.jsxs)(k,{children:[(0,d.jsx)(l,{}),(0,d.jsxs)(f.Content,{"data-slot":"sheet-content",className:(0,h.cn)(m({side:c}),a),...g,children:[b,(0,d.jsxs)(f.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,d.jsx)(e.A,{className:"size-4"}),(0,d.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function o({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"sheet-header",className:(0,h.cn)("flex flex-col gap-2 p-4",a),...b})}function p({className:a,...b}){return(0,d.jsx)(f.Title,{"data-slot":"sheet-title",className:(0,h.cn)("text-foreground text-lg font-semibold",a),...b})}},97513:(a,b,c)=>{"use strict";c.d(b,{B:()=>o});var d=c(10837),e=c(21968),f=c(9222),g=c(15640),h=c(11568);c(54722);let i=[{cx:54,cy:135,topY:117},{cx:96,cy:114,topY:96},{cx:120,cy:118,topY:108},{cx:155,cy:115,topY:105},{cx:146,cy:148,topY:130},{cx:95,cy:149,topY:138},{cx:133,cy:168,topY:158}],j=Array.from({length:7},(a,b)=>b).sort((a,b)=>i[a].topY-i[b].topY);function k({slots:a,projectName:b,agentCount:c,collapsed:f=!1,effects:g,onEffectsConsumed:h}){let k=(0,e.useRef)(null),l=(0,e.useRef)({}),m=(0,e.useRef)(!1),n=(0,e.useRef)(0),o=(0,e.useRef)(0),p=(0,e.useRef)(0),q=(0,e.useRef)(Array.from({length:7},()=>({state:"empty",cycleIndex:0,frameTicks:0,ticksPerFrame:1,stateTimer:0}))),r=(0,e.useRef)(a),s=(0,e.useRef)(b),t=(0,e.useRef)(c),u=(0,e.useRef)(f),v=(0,e.useRef)([]),w=(0,e.useCallback)(a=>{a.fillStyle="#d0d0e0",a.fillRect(0,0,256,16),a.fillStyle="#e4e4f0",a.fillRect(0,0,256,1),a.fillStyle="#9999aa",a.fillRect(0,15,256,1),a.font="bold 7px monospace",a.textBaseline="middle",a.fillStyle="#333",a.textAlign="left";let b=s.current,c=b.length>20?b.slice(0,18)+"..":b;a.fillText(c,6,8),a.textAlign="right",a.fillStyle="#336";let d=t.current;a.fillText(`${d} agent${1!==d?"s":""}`,250,8),a.textAlign="start",a.textBaseline="alphabetic"},[]),x=(0,e.useCallback)((a,b)=>{let c=r.current[b];if(!c?.sessionName)return;let d=i[b];a.font="5px monospace",a.textAlign="center",a.textBaseline="bottom";let e=c.sessionName.length>12?c.sessionName.slice(0,10)+"..":c.sessionName,f=a.measureText(e).width,g=d.cx,h=d.topY-4;a.fillStyle="rgba(0,0,0,0.55)",a.fillRect(g-f/2-2,h-6,f+4,7),a.fillStyle="#fff",a.fillText(e,g,h),a.textAlign="start",a.textBaseline="alphabetic"},[]),y=(0,e.useCallback)(a=>{for(let b of v.current){let c=b.elapsed/b.duration,d=i[b.slotIndex]||i[0];switch(b.type){case"bulb":{let b=c<.1?c/.1:c>.8?(1-c)/.2:1,e=d.cx,f=d.topY-14-2*Math.sin(c*Math.PI*4);a.fillStyle=`rgba(255, 220, 50, ${.3*b})`,a.beginPath(),a.arc(e,f,8,0,2*Math.PI),a.fill(),a.fillStyle=`rgba(255, 230, 80, ${b})`,a.beginPath(),a.arc(e,f,4,0,2*Math.PI),a.fill(),a.fillStyle=`rgba(255, 255, 200, ${b})`,a.fillRect(e-1,f-1,2,2),a.fillStyle=`rgba(180, 180, 180, ${b})`,a.fillRect(e-2,f+3,4,2);break}case"document":{let b=256+(d.cx-256)*Math.min(2*c,1),e=d.topY-10+-15*Math.sin(c*Math.PI);a.globalAlpha=c>.8?(1-c)/.2:1,a.fillStyle="#f8f8f0",a.fillRect(b,e,8,10),a.strokeStyle="#aaa",a.lineWidth=.5,a.strokeRect(b,e,8,10),a.fillStyle="#ccc",a.fillRect(b+1.5,e+2,5,1),a.fillRect(b+1.5,e+4,4,1),a.fillRect(b+1.5,e+6,5,1),a.globalAlpha=1;break}case"stars":{let b=c>.7?(1-c)/.3:1,e=d.cx,f=d.cy;for(let d=0;d<8;d++){let g=d/8*Math.PI*2+c*Math.PI*3,h=10+15*c,i=e+Math.cos(g)*h,j=f+Math.sin(g)*h,k=["#FFD700","#FF6B6B","#4ECDC4","#A78BFA"];a.fillStyle=k[d%k.length],a.globalAlpha=b*(.5+.5*Math.sin(c*Math.PI*6+d));let l=1.5+.5*Math.sin(c*Math.PI*4+d);a.fillRect(i-l/2,j-l/2,l,l)}a.globalAlpha=1;break}case"flash":{let b=c<.3?c/.3:(1-c)/.7;a.fillStyle=`rgba(255, 255, 255, ${.6*b})`,a.fillRect(0,16,256,240)}}}},[]),z=(0,e.useCallback)((a,b)=>{a.clearRect(0,0,768,768),a.save(),a.scale(3,3);let c=b.floor;for(let d of(c?.complete&&c.naturalWidth&&a.drawImage(c,0,0,256,256),j)){let c=q.current[d];if("empty"===c.state)continue;let e="typing"===c.state&&c.cycleIndex%2==1,f=b[`char${d}-frame${e?2:1}`];if(f?.complete&&f.naturalWidth){"celebrate"===c.state&&(a.save(),a.globalAlpha=.85+.15*Math.sin(Date.now()/200));let b="looking"===c.state?+Math.sin(Date.now()/300):0;0!==b&&(a.save(),a.translate(0,b)),a.drawImage(f,0,0,256,256),0!==b&&a.restore(),"celebrate"===c.state&&a.restore()}x(a,d)}w(a),y(a),a.restore()},[w,x,y]),A=(0,e.useCallback)(a=>{for(let b=0;b<7;b++){let c=q.current[b];"empty"!==c.state&&(c.stateTimer+=a,"celebrate"===c.state&&c.stateTimer>=3e3&&(c.state="idle",c.cycleIndex=0,c.frameTicks=0,c.stateTimer=0),"looking"===c.state&&c.stateTimer>=1500&&(c.state="idle",c.cycleIndex=0,c.frameTicks=0,c.stateTimer=0),"typing"===c.state&&(c.frameTicks++,c.frameTicks>=c.ticksPerFrame&&(c.frameTicks=0,c.cycleIndex=(c.cycleIndex+1)%2)))}let b=v.current;for(let c=b.length-1;c>=0;c--)b[c].elapsed+=a,b[c].elapsed>=b[c].duration&&b.splice(c,1)},[]),B=(0,e.useCallback)(a=>{if(u.current){n.current=requestAnimationFrame(B),o.current=a;return}let b=a-o.current;o.current=a,p.current+=b;let c=!1;for(;p.current>=10;)p.current-=10,A(10),c=!0;if(c){let a=k.current,b=a?.getContext("2d");b&&m.current&&z(b,l.current)}n.current=requestAnimationFrame(B)},[A,z]);return(0,d.jsx)("canvas",{ref:k,width:768,height:768,className:"w-full",style:{imageRendering:"pixelated",aspectRatio:"1 / 1"}})}!function(){let a={floor:"floor.png"};for(let b=0;b<7;b++)a[`char${b}-frame1`]=`char${b}-frame1.png`,a[`char${b}-frame2`]=`char${b}-frame2.png`}();var l=c(42377);let m=(0,l.createServerReference)("40ea6dfe37c6920497fa8f7b8211547e6621f58ef2",l.callServer,void 0,l.findSourceMapURL,"getProjectActiveSessionsAction");var n=c(76172);function o({projectUuid:a,projectName:b}){let c=(0,f.c)("pixelCanvas"),[i,j]=(0,e.useState)(!1),[l,o]=(0,e.useState)(Array.from({length:7},()=>({state:"empty"}))),[p,q]=(0,e.useState)(0),[r,s]=(0,e.useState)([]),t=(0,e.useCallback)(async()=>{let b=await m(a);if(!b.success||!b.data)return;let c=b.data;o(Array.from({length:7},(a,b)=>{let d=c[b];return d?{state:"typing",sessionName:d.sessionName}:{state:"empty"}})),q(c.length)},[a]);(0,n.l9)(t);let u=(0,e.useCallback)(()=>{s([])},[]);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"fixed bottom-4 right-4 md:bottom-6 md:right-6 z-40 cursor-pointer",onClick:()=>j(!0),children:(0,d.jsxs)("div",{className:"relative transition-transform hover:scale-105",children:[(0,d.jsx)("div",{className:"overflow-hidden rounded-lg border-2 border-border bg-card shadow-lg hover:shadow-xl",children:(0,d.jsx)(g.default,{src:"/typing-animation.gif",alt:c("title"),width:72,height:72,unoptimized:!0,className:"block scale-[1.3]"})}),p>0&&(0,d.jsx)("span",{className:"absolute -top-3 -right-3 flex h-7 min-w-7 items-center justify-center rounded-full bg-[#B87351] text-xs font-bold text-white shadow-md",children:p})]})}),(0,d.jsx)(h.lG,{open:i,onOpenChange:j,children:(0,d.jsxs)(h.Cf,{className:"sm:max-w-2xl p-4",children:[(0,d.jsxs)(h.L3,{className:"text-sm",children:[b," — ",c("title")]}),(0,d.jsx)(h.rr,{className:"sr-only",children:c("title")}),(0,d.jsx)("div",{className:"overflow-hidden rounded-lg border border-border",children:(0,d.jsx)(k,{slots:l,projectName:b,agentCount:p,collapsed:!i,effects:r,onEffectsConsumed:u})})]})})]})}}};
1
+ exports.id=6207,exports.ids=[6207],exports.modules={16352:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/ubuntu/dev/ai-pm/src/app/(dashboard)/layout.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/dev/ai-pm/src/app/(dashboard)/layout.tsx","default")},21002:(a,b,c)=>{"use strict";c.d(b,{Z:()=>h});var d=c(10837),e=c(1007),f=c(31009),g=c(45148);function h({children:a}){let b=function(a){let b=a.match(/^(\/projects\/[a-f0-9-]{36}\/(tasks|documents|proposals))\/.+$/);return b?b[1]:a}((0,e.usePathname)());return(0,d.jsx)(f.P.div,{initial:{opacity:0,y:6},animate:{opacity:1,y:0},transition:{duration:g.Yv.normal,ease:g.Yv.easeOut},className:"flex-1 flex flex-col",children:a},b)}},22299:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Dv:()=>n,Tg:()=>o,v5:()=>p});var e=c(2613);c(50785);var f=c(4687),g=c(9259),h=c(33994),i=c(5562),j=c(30457),k=c(97307),l=c(12217),m=a([g,h,j]);async function n(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{if(!await (0,h.xx)(b.companyUuid,a))return{success:!1,error:"Project not found"}}catch(a){return k.default.error({err:a},"Failed to delete project"),{success:!1,error:"Failed to delete project"}}(0,f.redirect)("/projects")}async function o(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.vr)(c.companyUuid,a,b);if(!d)return{success:!1,error:"Project not found"};return(0,i.revalidatePath)(`/projects/${a}/dashboard`),{success:!0,data:d}}catch(a){return k.default.error({err:a},"Failed to update project"),{success:!1,error:"Failed to update project"}}}async function p(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,j.UL)(b.companyUuid,a);return{success:!0,data:c}}catch(a){return k.default.error({err:a},"Failed to fetch active sessions"),{success:!1,error:"Failed to fetch active sessions"}}}[g,h,j]=m.then?(await m)():m,(0,l.D)([n,o,p]),(0,e.A)(n,"409db7f6e003318164f6d5e905de5ef25499df6272",null),(0,e.A)(o,"60b676dc5952816cc03a8a179ffd5427257d5c2a64",null),(0,e.A)(p,"403c4b2b8ac56840fd13e63448944e859aa9bdc446",null),d()}catch(a){d(a)}})},25104:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{G:()=>s});var e=c(10837),f=c(21968),g=c(9222),h=c(58270),i=c(51592),j=c(74113),k=c(42424),l=c(70028),m=c(68797),n=a([m]);function o({state:a}){return"error"===a?(0,e.jsx)("span",{"aria-hidden":!0,className:"inline-flex h-2.5 w-2.5 shrink-0 rounded-full bg-[#D97706] opacity-90"}):(0,e.jsx)("span",{className:"shrink-0",children:(0,e.jsx)(m.md,{online:"online"===a,size:"md"})})}function p({connection:a,executions:b,showHost:c,nowMs:d}){let f=(0,g.c)("agentPresence"),j=(0,g.c)("agentConnections"),{text:k,dot:l}=(0,m.c0)(a,b,d),n=b.filter(a=>"running"===a.status),o=b.filter(a=>"queued"===a.status),p=n.length>0||o.length>0,q="online"===a.effectiveStatus;return(0,e.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,e.jsx)(m.A4,{connection:a,showHost:c,activity:k,dot:l}),p?(0,e.jsxs)("div",{className:"flex flex-col gap-4 pl-1",children:[n.length>0&&(0,e.jsx)(m.wL,{icon:h.A,label:j("execRunning"),count:n.length,children:n.map(a=>(0,e.jsx)(m.lb,{exec:a,nowMs:d,layout:"stacked"},a.uuid))}),o.length>0&&(0,e.jsx)(m.wL,{icon:i.A,label:j("execQueued"),count:o.length,children:o.map(a=>(0,e.jsx)(m.lb,{exec:a,nowMs:d,layout:"stacked"},a.uuid))})]}):q&&(0,e.jsx)("p",{className:"pl-1 text-[12px] text-[#9A9A9A]",children:f("connectionIdle")})]})}function q({group:a,executionsByConnection:b,nowMs:c,expanded:d,onToggle:f}){return(0,e.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,e.jsx)(m.u,{group:a,expanded:d,onToggle:f}),d&&(0,e.jsx)("div",{className:"flex flex-col gap-3 pl-7",children:a.connections.map(d=>(0,e.jsx)(p,{connection:d,executions:b[d.uuid]??[],showHost:a.multiHost,nowMs:c},d.uuid))})]})}function r({groups:a,executionsByConnection:b,nowMs:c}){let[d,g]=(0,f.useState)(new Set);return 0===a.length?(0,e.jsx)(m.Bs,{variant:"compact"}):(0,e.jsx)("div",{className:"flex flex-col gap-5",children:a.map(a=>(0,e.jsx)(q,{group:a,executionsByConnection:b,nowMs:c,expanded:d.has(a.agentUuid),onToggle:()=>{let b;return b=a.agentUuid,g(a=>{let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c})}},a.agentUuid))})}m=(n.then?(await n)():n)[0];let u={online:"border-[#E7E1D7] bg-[#FCFBF8] hover:bg-[#FBF4EF] hover:border-[#E2D6C9]",idle:"border-[#EAE5DC] bg-[#FAF8F4] hover:bg-[#F6F2EC]",loading:"border-[#EAE5DC] bg-[#FAF8F4]",error:"border-[#EBD9C4] bg-[#FFF9F2] hover:bg-[#FEF3E4]"};function s({mobile:a=!1}){let b,c=(0,g.c)("agentPresence"),{status:d,onlineCount:f,connections:h,executionsByConnection:i,setModalOpen:n}=(0,l.$d)(),p=a?"text-[12.5px]":"text-[11.5px]",q="loading"===d?"loading":"error"===d?"error":f>0?"online":"idle";if("error"===d)b=(0,e.jsx)("span",{className:`truncate font-medium text-[#B45309] ${p}`,children:c("unavailable")});else if("loading"===d)b=(0,e.jsx)("span",{className:`truncate text-muted-foreground/70 ${p}`,children:c("loading")});else{let d=f>0?"text-[#15803D]":"text-foreground/80";b=(0,e.jsxs)("span",{className:`flex min-w-0 items-baseline gap-1.5 truncate ${p}`,children:[(0,e.jsx)("span",{className:`font-semibold leading-none tabular-nums ${d} ${a?"text-[17px]":"text-[15px]"}`,children:f}),(0,e.jsx)("span",{className:"truncate text-muted-foreground",children:c("onlineUnit",{count:f})})]})}let r=(0,m.Jk)((0,m.fb)(h,i),i).filter(a=>a.onlineCount>0);return(0,e.jsxs)(j.AM,{children:[(0,e.jsx)(j.Wv,{asChild:!0,children:(0,e.jsxs)(k.$,{variant:"ghost","aria-label":c("pillAria"),className:`group h-auto w-full justify-start gap-2.5 rounded-xl border px-3 ${a?"py-2.5":"py-2"} shadow-[0_1px_2px_rgba(44,44,44,0.03)] transition-colors ${u[q]}`,children:[(0,e.jsx)(o,{state:q}),b]})}),(0,e.jsx)(j.hl,{align:"start",side:"top",sideOffset:8,className:"max-h-[60vh] w-[min(92vw,400px)] overflow-y-auto p-3",children:(0,e.jsx)(t,{groups:r,executionsByConnection:i,onViewAll:()=>n(!0)})})]})}function t({groups:a,executionsByConnection:b,onViewAll:c}){let d=(0,g.c)("agentPresence"),f=(0,m.le)();return(0,e.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,e.jsx)("div",{className:"flex items-center justify-between",children:(0,e.jsx)("span",{className:"text-[12px] font-semibold uppercase tracking-wide text-[#6B6B6B]",children:d("popoverTitle")})}),(0,e.jsx)(r,{groups:a,executionsByConnection:b,nowMs:f}),(0,e.jsx)(k.$,{variant:"ghost",size:"sm",onClick:c,className:"w-full justify-center text-[12px] font-medium text-[#C67A52] hover:bg-[#C67A5214] hover:text-[#A65F3C]",children:d("viewAll")})]})}d()}catch(a){d(a)}})},25324:(a,b,c)=>{"use strict";c.d(b,{B:()=>o});var d=c(10837),e=c(21968),f=c(9222),g=c(15640),h=c(11568);c(54722);let i=[{cx:54,cy:135,topY:117},{cx:96,cy:114,topY:96},{cx:120,cy:118,topY:108},{cx:155,cy:115,topY:105},{cx:146,cy:148,topY:130},{cx:95,cy:149,topY:138},{cx:133,cy:168,topY:158}],j=Array.from({length:7},(a,b)=>b).sort((a,b)=>i[a].topY-i[b].topY);function k({slots:a,projectName:b,agentCount:c,collapsed:f=!1,effects:g,onEffectsConsumed:h}){let k=(0,e.useRef)(null),l=(0,e.useRef)({}),m=(0,e.useRef)(!1),n=(0,e.useRef)(0),o=(0,e.useRef)(0),p=(0,e.useRef)(0),q=(0,e.useRef)(Array.from({length:7},()=>({state:"empty",cycleIndex:0,frameTicks:0,ticksPerFrame:1,stateTimer:0}))),r=(0,e.useRef)(a),s=(0,e.useRef)(b),t=(0,e.useRef)(c),u=(0,e.useRef)(f),v=(0,e.useRef)([]),w=(0,e.useCallback)(a=>{a.fillStyle="#d0d0e0",a.fillRect(0,0,256,16),a.fillStyle="#e4e4f0",a.fillRect(0,0,256,1),a.fillStyle="#9999aa",a.fillRect(0,15,256,1),a.font="bold 7px monospace",a.textBaseline="middle",a.fillStyle="#333",a.textAlign="left";let b=s.current,c=b.length>20?b.slice(0,18)+"..":b;a.fillText(c,6,8),a.textAlign="right",a.fillStyle="#336";let d=t.current;a.fillText(`${d} agent${1!==d?"s":""}`,250,8),a.textAlign="start",a.textBaseline="alphabetic"},[]),x=(0,e.useCallback)((a,b)=>{let c=r.current[b];if(!c?.sessionName)return;let d=i[b];a.font="5px monospace",a.textAlign="center",a.textBaseline="bottom";let e=c.sessionName.length>12?c.sessionName.slice(0,10)+"..":c.sessionName,f=a.measureText(e).width,g=d.cx,h=d.topY-4;a.fillStyle="rgba(0,0,0,0.55)",a.fillRect(g-f/2-2,h-6,f+4,7),a.fillStyle="#fff",a.fillText(e,g,h),a.textAlign="start",a.textBaseline="alphabetic"},[]),y=(0,e.useCallback)(a=>{for(let b of v.current){let c=b.elapsed/b.duration,d=i[b.slotIndex]||i[0];switch(b.type){case"bulb":{let b=c<.1?c/.1:c>.8?(1-c)/.2:1,e=d.cx,f=d.topY-14-2*Math.sin(c*Math.PI*4);a.fillStyle=`rgba(255, 220, 50, ${.3*b})`,a.beginPath(),a.arc(e,f,8,0,2*Math.PI),a.fill(),a.fillStyle=`rgba(255, 230, 80, ${b})`,a.beginPath(),a.arc(e,f,4,0,2*Math.PI),a.fill(),a.fillStyle=`rgba(255, 255, 200, ${b})`,a.fillRect(e-1,f-1,2,2),a.fillStyle=`rgba(180, 180, 180, ${b})`,a.fillRect(e-2,f+3,4,2);break}case"document":{let b=256+(d.cx-256)*Math.min(2*c,1),e=d.topY-10+-15*Math.sin(c*Math.PI);a.globalAlpha=c>.8?(1-c)/.2:1,a.fillStyle="#f8f8f0",a.fillRect(b,e,8,10),a.strokeStyle="#aaa",a.lineWidth=.5,a.strokeRect(b,e,8,10),a.fillStyle="#ccc",a.fillRect(b+1.5,e+2,5,1),a.fillRect(b+1.5,e+4,4,1),a.fillRect(b+1.5,e+6,5,1),a.globalAlpha=1;break}case"stars":{let b=c>.7?(1-c)/.3:1,e=d.cx,f=d.cy;for(let d=0;d<8;d++){let g=d/8*Math.PI*2+c*Math.PI*3,h=10+15*c,i=e+Math.cos(g)*h,j=f+Math.sin(g)*h,k=["#FFD700","#FF6B6B","#4ECDC4","#A78BFA"];a.fillStyle=k[d%k.length],a.globalAlpha=b*(.5+.5*Math.sin(c*Math.PI*6+d));let l=1.5+.5*Math.sin(c*Math.PI*4+d);a.fillRect(i-l/2,j-l/2,l,l)}a.globalAlpha=1;break}case"flash":{let b=c<.3?c/.3:(1-c)/.7;a.fillStyle=`rgba(255, 255, 255, ${.6*b})`,a.fillRect(0,16,256,240)}}}},[]),z=(0,e.useCallback)((a,b)=>{a.clearRect(0,0,768,768),a.save(),a.scale(3,3);let c=b.floor;for(let d of(c?.complete&&c.naturalWidth&&a.drawImage(c,0,0,256,256),j)){let c=q.current[d];if("empty"===c.state)continue;let e="typing"===c.state&&c.cycleIndex%2==1,f=b[`char${d}-frame${e?2:1}`];if(f?.complete&&f.naturalWidth){"celebrate"===c.state&&(a.save(),a.globalAlpha=.85+.15*Math.sin(Date.now()/200));let b="looking"===c.state?+Math.sin(Date.now()/300):0;0!==b&&(a.save(),a.translate(0,b)),a.drawImage(f,0,0,256,256),0!==b&&a.restore(),"celebrate"===c.state&&a.restore()}x(a,d)}w(a),y(a),a.restore()},[w,x,y]),A=(0,e.useCallback)(a=>{for(let b=0;b<7;b++){let c=q.current[b];"empty"!==c.state&&(c.stateTimer+=a,"celebrate"===c.state&&c.stateTimer>=3e3&&(c.state="idle",c.cycleIndex=0,c.frameTicks=0,c.stateTimer=0),"looking"===c.state&&c.stateTimer>=1500&&(c.state="idle",c.cycleIndex=0,c.frameTicks=0,c.stateTimer=0),"typing"===c.state&&(c.frameTicks++,c.frameTicks>=c.ticksPerFrame&&(c.frameTicks=0,c.cycleIndex=(c.cycleIndex+1)%2)))}let b=v.current;for(let c=b.length-1;c>=0;c--)b[c].elapsed+=a,b[c].elapsed>=b[c].duration&&b.splice(c,1)},[]),B=(0,e.useCallback)(a=>{if(u.current){n.current=requestAnimationFrame(B),o.current=a;return}let b=a-o.current;o.current=a,p.current+=b;let c=!1;for(;p.current>=10;)p.current-=10,A(10),c=!0;if(c){let a=k.current,b=a?.getContext("2d");b&&m.current&&z(b,l.current)}n.current=requestAnimationFrame(B)},[A,z]);return(0,d.jsx)("canvas",{ref:k,width:768,height:768,className:"w-full",style:{imageRendering:"pixelated",aspectRatio:"1 / 1"}})}!function(){let a={floor:"floor.png"};for(let b=0;b<7;b++)a[`char${b}-frame1`]=`char${b}-frame1.png`,a[`char${b}-frame2`]=`char${b}-frame2.png`}();var l=c(42377);let m=(0,l.createServerReference)("403c4b2b8ac56840fd13e63448944e859aa9bdc446",l.callServer,void 0,l.findSourceMapURL,"getProjectActiveSessionsAction");var n=c(76172);function o({projectUuid:a,projectName:b}){let c=(0,f.c)("pixelCanvas"),[i,j]=(0,e.useState)(!1),[l,o]=(0,e.useState)(Array.from({length:7},()=>({state:"empty"}))),[p,q]=(0,e.useState)(0),[r,s]=(0,e.useState)([]),t=(0,e.useCallback)(async()=>{let b=await m(a);if(!b.success||!b.data)return;let c=b.data;o(Array.from({length:7},(a,b)=>{let d=c[b];return d?{state:"typing",sessionName:d.sessionName}:{state:"empty"}})),q(c.length)},[a]);(0,n.l9)(t);let u=(0,e.useCallback)(()=>{s([])},[]);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"fixed bottom-4 right-4 md:bottom-6 md:right-6 z-40 cursor-pointer",onClick:()=>j(!0),children:(0,d.jsxs)("div",{className:"relative transition-transform hover:scale-105",children:[(0,d.jsx)("div",{className:"overflow-hidden rounded-lg border-2 border-border bg-card shadow-lg hover:shadow-xl",children:(0,d.jsx)(g.default,{src:"/typing-animation.gif",alt:c("title"),width:72,height:72,unoptimized:!0,className:"block scale-[1.3]"})}),p>0&&(0,d.jsx)("span",{className:"absolute -top-3 -right-3 flex h-7 min-w-7 items-center justify-center rounded-full bg-[#B87351] text-xs font-bold text-white shadow-md",children:p})]})}),(0,d.jsx)(h.lG,{open:i,onOpenChange:j,children:(0,d.jsxs)(h.Cf,{className:"sm:max-w-2xl p-4",children:[(0,d.jsxs)(h.L3,{className:"text-sm",children:[b," — ",c("title")]}),(0,d.jsx)(h.rr,{className:"sr-only",children:c("title")}),(0,d.jsx)("div",{className:"overflow-hidden rounded-lg border border-border",children:(0,d.jsx)(k,{slots:l,projectName:b,agentCount:p,collapsed:!i,effects:r,onEffectsConsumed:u})})]})})]})}},25678:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>O});var e=c(10837),f=c(21968),g=c(1007),h=c(9222),i=c(81512),j=c.n(i),k=c(42424),l=c(76723),m=c(65956),n=c(4065),o=c(10529),p=c(20312),q=c(28605),r=c(33650),s=c(59169),t=c(35209),u=c(21790),v=c(71833),w=c(46839),x=c(93524),y=c(25324),z=c(76172),A=c(70028),B=c(24314),C=c(25104),D=c(68797),E=c(52758),F=c(66887),G=c(94143),H=c(33559),I=c(21002),J=c(29003),K=c(78323),L=c(31009),M=c(45148);c(54722);var N=a([C,D]);function O({children:a}){let b=(0,g.useRouter)(),c=(0,g.usePathname)(),d=(0,h.c)(),[i,N]=(0,f.useState)(null),[O,P]=(0,f.useState)(null),[Q,R]=(0,f.useState)([]),[S,T]=(0,f.useState)(!0),[U,V]=(0,f.useState)(!1),[W,X]=(0,f.useState)(!1),[Y,Z]=(0,f.useState)(!1),$=function(a){let b=a.match(/^\/projects\/([a-f0-9-]{36})(\/|$)/);return b?b[1]:null}(c),_=function(a){let b=a.match(/^\/project-groups\/([a-f0-9-]{36})(\/|$)/);return b?b[1]:null}(c),[aa,ab]=(0,f.useState)(null),ac="/projects"===c||"/settings"===c||c.startsWith("/project-groups"),ad=$&&!ac,ae=c.match(/^\/projects\/[a-f0-9-]{36}\/(tasks|graph)(\/|$)/),af=async()=>{try{await (0,x.ri)()}catch{(0,x.w9)()}b.push("/login")};if(S)return(0,e.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,e.jsx)("div",{className:"text-muted-foreground",children:d("common.loading")})});let ag=[{href:"/projects",label:d("nav.projects"),icon:r.A},{href:"/settings",label:d("nav.settings"),icon:s.A}],ah=a=>a.endsWith("/dashboard")?c===a:"/projects"===a?"/projects"===c:c===a||c.startsWith(a+"/"),ai=({mobile:a=!1})=>{let c=a?"text-[15px]":"text-[13px]",f=a?"h-5 w-5":"h-4 w-4",g=a?"gap-1.5":"gap-1",h=a?"h-10":"",r=a?"text-[13px]":"text-[11px]",s=a?"text-[15px]":"text-[13px]",w=a?"text-[12px]":"text-[11px]";return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("div",{className:"flex flex-col gap-8 p-6",children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,e.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-7 w-7"}),(0,e.jsx)("span",{className:"text-base font-semibold text-foreground",children:d("common.appName")})]}),(0,e.jsx)("div",{className:"hidden md:block",children:(0,e.jsx)(F.r,{})})]}),!a&&(0,e.jsx)(H.K,{currentProjectUuid:$||void 0,currentProjectName:O?.name,currentGroupUuid:_||void 0,currentGroupName:aa||void 0}),(0,e.jsx)("nav",{className:`flex flex-col ${g}`,children:ad&&$?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(j(),{href:"/projects",children:(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",className:`w-full justify-start gap-2.5 text-muted-foreground hover:text-foreground ${c} ${h}`,children:[(0,e.jsx)(t.A,{className:a?"h-4 w-4":"h-3 w-3"}),d("nav.backToProjects")]})}),O&&(0,e.jsxs)("div",{className:"relative mt-2",children:[(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",onClick:()=>Q.length>0&&V(!U),className:`w-full justify-between px-3 py-1.5 ${0===Q.length?"cursor-default":""}`,children:[(0,e.jsx)("span",{className:`truncate font-semibold uppercase tracking-wider text-foreground ${r}`,children:O.name}),Q.length>0&&(0,e.jsx)(u.A,{className:`h-3 w-3 text-muted-foreground transition-transform ${U?"rotate-180":""}`})]}),(0,e.jsx)(K.N,{children:U&&Q.length>0&&(0,e.jsx)(L.P.div,{variants:M.K5,initial:"initial",animate:"animate",exit:"exit",className:"absolute left-0 right-0 top-full z-10 mt-1 origin-top rounded-lg border border-border bg-card py-1 shadow-lg",children:Q.map(a=>(0,e.jsx)(k.$,{variant:"ghost",size:"sm",onClick:()=>{V(!1),b.push(`/projects/${a.uuid}/dashboard`)},className:`w-full justify-start px-3 py-2 ${c} [&>*]:truncate text-muted-foreground`,children:(0,e.jsx)("span",{className:"truncate",children:a.name})},a.uuid))})})]}),(0,e.jsx)("div",{className:`mt-2 flex flex-col ${g}`,children:[{href:`/projects/${$}/dashboard`,label:d("nav.overview"),icon:l.A},{href:`/projects/${$}/documents`,label:d("nav.documents"),icon:m.A},{href:`/projects/${$}/proposals`,label:d("nav.proposals"),icon:n.A},{href:`/projects/${$}/tasks`,label:d("nav.tasks"),icon:o.A},{href:`/projects/${$}/graph`,label:d("nav.graph"),icon:p.A},{href:`/projects/${$}/activity`,label:d("nav.activity"),icon:q.A}].map(a=>{let b=ah(a.href),d=a.icon;return(0,e.jsx)(j(),{href:a.href,children:(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",className:`relative w-full justify-start gap-2.5 ${c} ${h} ${b?"font-medium text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[b&&(0,e.jsx)(L.P.div,{layoutId:"nav-active",className:"absolute inset-0 rounded-md bg-secondary",transition:{type:"spring",stiffness:500,damping:30}}),(0,e.jsxs)("span",{className:"relative flex items-center gap-2.5",children:[(0,e.jsx)(d,{className:`${f} ${b?"text-primary":""}`}),a.label]})]})},a.href)})})]}):(0,e.jsx)(e.Fragment,{children:(0,e.jsx)("div",{className:`flex flex-col ${g}`,children:ag.map(a=>{let b=ah(a.href),d=a.icon;return(0,e.jsx)(j(),{href:a.href,children:(0,e.jsxs)(k.$,{variant:"ghost",size:"sm",className:`relative w-full justify-start gap-2.5 ${c} ${h} ${b?"font-medium text-foreground":"text-muted-foreground hover:text-foreground"}`,children:[b&&(0,e.jsx)(L.P.div,{layoutId:"nav-active",className:"absolute inset-0 rounded-md bg-secondary",transition:{type:"spring",stiffness:500,damping:30}}),(0,e.jsxs)("span",{className:"relative flex items-center gap-2.5",children:[(0,e.jsx)(d,{className:`${f} ${b?"text-primary":""}`}),a.label]})]})},a.href)})})})})]}),(0,e.jsxs)("div",{className:"mt-auto flex flex-col gap-1 px-4 pb-4",children:[(0,e.jsx)(C.G,{mobile:a}),(0,e.jsx)("div",{className:"px-2 pt-1",children:(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("div",{className:`flex items-center justify-center rounded-full bg-primary font-medium text-primary-foreground ${a?"h-10 w-10 text-base":"h-9 w-9 text-sm"}`,children:i?.name?.charAt(0)||"U"}),(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("div",{className:`truncate font-medium text-foreground ${s}`,children:i?.name}),(0,e.jsx)("div",{className:`truncate text-muted-foreground ${w}`,children:i?.email})]}),(0,e.jsx)(k.$,{variant:"ghost",size:"icon",onClick:af,title:d("common.signOut"),className:"h-8 w-8 text-muted-foreground hover:text-foreground",children:(0,e.jsx)(v.A,{className:"h-4 w-4"})})]})})]})]})};return(0,e.jsxs)(E.p,{children:[(0,e.jsx)(B.OJ,{children:(0,e.jsxs)(A.Oj,{children:[(0,e.jsx)(D.MH,{}),(0,e.jsxs)("div",{className:"flex min-h-screen bg-background",children:[(0,e.jsx)("header",{className:"fixed top-0 left-0 right-0 z-30 border-b border-border bg-card md:hidden",children:(0,e.jsxs)("div",{className:"flex h-14 items-center justify-between px-4",children:[(0,e.jsx)("button",{onClick:()=>X(!0),"aria-label":d("nav.openMenu"),children:(0,e.jsx)(w.A,{className:"h-5 w-5 text-muted-foreground"})}),(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-6 w-6"}),(0,e.jsx)("span",{className:"text-sm font-semibold text-foreground",children:d("common.appName")})]}),(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)(H.K,{currentProjectUuid:$||void 0,currentProjectName:O?.name,currentGroupUuid:_||void 0,currentGroupName:aa||void 0}),(0,e.jsx)(F.r,{})]})]})}),(0,e.jsx)(G.cj,{open:W,onOpenChange:X,children:(0,e.jsx)(G.h,{side:"left",className:"w-[280px] p-0",children:(0,e.jsx)("div",{className:"flex h-full flex-col justify-between overflow-y-auto",children:(0,e.jsx)(ai,{mobile:!0})})})}),(0,e.jsx)("aside",{className:"hidden md:sticky md:top-0 md:flex h-screen w-[220px] flex-shrink-0 flex-col justify-between overflow-y-auto border-r border-border bg-card",children:(0,e.jsx)(ai,{})}),ad&&$?(0,e.jsxs)(z.tS,{projectUuid:$,children:[(0,e.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,e.jsx)("div",{className:`mx-auto w-full flex-1 flex flex-col ${ae?"":"max-w-[1200px]"}`,children:(0,e.jsx)(I.Z,{children:a})})}),(0,e.jsx)(y.B,{projectUuid:$,projectName:O?.name||""})]}):"/projects"===c||c.startsWith("/project-groups")?(0,e.jsx)(z.tS,{children:(0,e.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,e.jsx)("div",{className:`mx-auto w-full flex-1 flex flex-col ${ae?"":"max-w-[1200px]"}`,children:(0,e.jsx)(I.Z,{children:a})})})}):(0,e.jsx)("main",{className:"flex-1 flex flex-col overflow-auto pt-14 md:pt-0",children:(0,e.jsx)("div",{className:`mx-auto w-full flex-1 flex flex-col ${ae?"":"max-w-[1200px]"}`,children:(0,e.jsx)(I.Z,{children:a})})})]})]})}),(0,e.jsx)(J.l,{position:Y?"top-center":"top-right",closeButton:!Y})]})}[C,D]=N.then?(await N)():N,d()}catch(a){d(a)}})},29003:(a,b,c)=>{"use strict";c.d(b,{l:()=>f});var d=c(10837),e=c(76549);let f=({...a})=>(0,d.jsx)(e.l$,{className:"toaster group",...a})},33559:(a,b,c)=>{"use strict";c.d(b,{K:()=>z});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(75888),i=c(86691),j=c(86460),k=c(78323),l=c(31009),m=c(45148),n=c(96307),o=c(42424),p=c(9994),q=c(49599),r=c(74645),s=c(11568),t=c(55732),u=c(54722),v=c(42087);let w=["all","task","idea","proposal","document","project"],x={task:"bg-[#EBF5FF] text-[#2563EB] border-[#2563EB]/20",idea:"bg-[#FEF9C3] text-[#A16207] border-[#A16207]/20",proposal:"bg-[#FFF7ED] text-[#C67A52] border-[#C67A52]/20",document:"bg-[#F3E8FF] text-[#7C3AED] border-[#7C3AED]/20",project:"bg-[#ECFDF5] text-[#059669] border-[#059669]/20",project_group:"bg-[#F0FDFA] text-[#0D9488] border-[#0D9488]/20"},y={all:"filterAll",task:"filterTasks",idea:"filterIdeas",proposal:"filterProposals",document:"filterDocuments",project:"filterProjects",project_group:"filterProjects"};function z({currentProjectUuid:a,currentProjectName:b,currentGroupUuid:c,currentGroupName:z}){let A=(0,g.c)("search"),B=(0,g.c)("time"),C=(0,f.useRouter)(),[D,E]=(0,e.useState)(""),[F,G]=(0,e.useState)(a?"project":c?"group":"global"),[H,I]=(0,e.useState)([]),[J,K]=(0,e.useState)(!1),[L,M]=(0,e.useState)(!1),[N,O]=(0,e.useState)("all"),[P,Q]=(0,e.useState)(0),R=(0,e.useRef)(null),S=(0,e.useRef)([]),T=(0,e.useRef)(void 0),U=(0,e.useCallback)(async(b,d,e="all")=>{if(!b.trim()){I([]),K(!1);return}K(!0);try{let f=new URLSearchParams({q:b.trim(),scope:d,limit:"20"});"project"===d&&a?f.set("scopeUuid",a):"group"===d&&c&&f.set("scopeUuid",c),"all"!==e&&f.set("types",e);let g=await fetch(`/api/search?${f.toString()}`,{credentials:"include"});if(!g.ok){u.q.error("Search failed:",g.status),I([]);return}let h=await g.json();h.success?I(h.data.results):I([])}catch(a){u.q.error("Search error:",a),I([])}finally{K(!1)}},[a,c]),V=(0,e.useCallback)(a=>{E(a),T.current&&clearTimeout(T.current),a.trim()?T.current=setTimeout(()=>{U(a,F,N)},300):(I([]),K(!1))},[F,N,U]),W=(0,e.useCallback)(a=>{G(a),D.trim()&&U(D,a,N)},[D,N,U]),X=(0,e.useCallback)(a=>{O(a),Q(0),D.trim()&&U(D,F,a)},[D,F,U]),Y=(0,e.useCallback)(a=>{switch(M(!1),a.entityType){case"task":a.projectUuid&&C.push(`/projects/${a.projectUuid}/tasks/${a.uuid}`);break;case"idea":a.projectUuid&&C.push(`/projects/${a.projectUuid}/dashboard?panel=${a.uuid}`);break;case"proposal":a.projectUuid&&C.push(`/projects/${a.projectUuid}/proposals/${a.uuid}`);break;case"document":a.projectUuid&&C.push(`/projects/${a.projectUuid}/documents/${a.uuid}`);break;case"project":C.push(`/projects/${a.uuid}/dashboard`);break;case"project_group":C.push("/projects")}},[C]);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(o.$,{variant:"outline",size:"icon",onClick:()=>M(!0),className:"md:w-full md:justify-start md:gap-3 h-9 md:px-3 text-muted-foreground font-normal",children:[(0,d.jsx)(h.A,{className:"h-4 w-4 shrink-0"}),(0,d.jsx)("span",{className:"hidden md:inline truncate text-sm",children:A("placeholder")}),(0,d.jsxs)("kbd",{className:"ml-auto pointer-events-none hidden md:flex h-5 select-none items-center gap-1 rounded border bg-muted px-1.5 font-mono text-[10px] font-medium",children:[(0,d.jsx)(i.A,{className:"h-3 w-3"}),(0,d.jsx)("span",{children:"K"})]})]}),(0,d.jsx)(s.lG,{open:L,onOpenChange:M,children:(0,d.jsxs)(s.Cf,{className:"w-[calc(100vw-2rem)] sm:max-w-[600px] p-0 gap-0 overflow-hidden [&>button]:hidden [&>*]:min-w-0 top-4 sm:top-[20%] translate-y-0","aria-describedby":void 0,children:[(0,d.jsx)(s.L3,{className:"sr-only",children:A("placeholder")}),(0,d.jsxs)("div",{className:"flex items-center gap-2 border-b px-3 sm:px-4 py-3",children:[(0,d.jsx)(h.A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),(0,d.jsx)(p.p,{ref:R,type:"text",placeholder:A("placeholder"),value:D,onChange:a=>V(a.target.value),onKeyDown:a=>{!(0,v.P)(a)&&("ArrowDown"===a.key?(a.preventDefault(),Q(a=>{let b=Math.min(a+1,H.length-1);return S.current[b]?.scrollIntoView({block:"nearest"}),b})):"ArrowUp"===a.key?(a.preventDefault(),Q(a=>{let b=Math.max(a-1,0);return S.current[b]?.scrollIntoView({block:"nearest"}),b})):"Enter"===a.key&&H.length>0&&(a.preventDefault(),Y(H[P])))},className:"border-0 shadow-none focus-visible:ring-0 h-8 px-0 text-sm min-w-0"}),J&&(0,d.jsx)(j.A,{className:"h-4 w-4 shrink-0 animate-spin text-muted-foreground"}),(0,d.jsxs)(t.l6,{value:F,onValueChange:a=>W(a),children:[(0,d.jsx)(t.bq,{className:"w-auto h-7 text-xs gap-1 border-dashed shrink-0",children:(0,d.jsx)(t.yv,{})}),(0,d.jsxs)(t.gC,{children:[(0,d.jsx)(t.eb,{value:"global",children:A("scopeGlobal")}),c&&(0,d.jsx)(t.eb,{value:"group",children:z||A("scopeGroup")}),a&&(0,d.jsx)(t.eb,{value:"project",children:b||A("scopeProject")})]})]})]}),D.trim()&&(0,d.jsx)("div",{className:"flex items-center gap-1 border-b px-4 py-2 overflow-x-auto",children:w.map(a=>(0,d.jsx)(o.$,{variant:N===a?"default":"ghost",size:"sm",onClick:()=>X(a),className:(0,n.cn)("h-7 px-3 text-xs rounded-full shrink-0",N===a?"bg-foreground text-background hover:bg-foreground/90":"text-muted-foreground hover:text-foreground"),children:A(y[a])},a))}),(0,d.jsx)(r.F,{className:"max-h-[400px]",children:(0,d.jsx)(k.N,{mode:"wait",children:D.trim()?J?(0,d.jsx)(l.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:m.Yv.fast},children:(0,d.jsxs)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:[(0,d.jsx)(j.A,{className:"h-5 w-5 animate-spin mx-auto mb-2"}),A("placeholder"),"..."]})},"loading"):0===H.length?(0,d.jsx)(l.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:m.Yv.fast},children:(0,d.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:A("noResults")})},"no-results"):(0,d.jsx)(l.P.div,{initial:"initial",animate:"animate",transition:{staggerChildren:m.Yv.staggerFast},className:"p-2",children:H.map((a,b)=>(0,d.jsx)(l.P.div,{variants:m.Rf,children:(0,d.jsxs)("button",{ref:a=>{S.current[b]=a},onClick:()=>Y(a),onMouseEnter:()=>Q(b),className:(0,n.cn)("block w-full text-left px-3 py-2.5 rounded-lg transition-colors cursor-pointer overflow-hidden",b===P?"bg-accent":"hover:bg-accent/50"),children:[(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5 mb-0.5",children:[(0,d.jsx)(q.E,{variant:"outline",className:(0,n.cn)("text-[10px] px-1.5 py-0 shrink-0",x[a.entityType]||"bg-muted text-muted-foreground"),children:A(`entityType.${a.entityType}`)}),a.status&&(0,d.jsx)(q.E,{variant:"secondary",className:"text-[10px] px-1.5 py-0 shrink-0",children:a.status}),a.projectName&&(0,d.jsx)("span",{className:"text-[10px] text-muted-foreground line-clamp-1 ml-auto",children:a.projectName})]}),(0,d.jsx)("div",{className:"font-medium text-sm line-clamp-1 break-all",children:a.title}),a.snippet&&(0,d.jsx)("div",{className:"text-xs text-muted-foreground line-clamp-1 mt-0.5 break-all",children:a.snippet}),(0,d.jsx)("div",{className:"text-[10px] text-muted-foreground mt-1",children:(a=>{let b=Math.floor((Date.now()-new Date(a).getTime())/1e3);return b<60?B("justNow"):b<3600?B("minutesAgo",{minutes:Math.floor(b/60)}):b<86400?B("hoursAgo",{hours:Math.floor(b/3600)}):B("daysAgo",{days:Math.floor(b/86400)})})(a.updatedAt)})]})},`${a.entityType}-${a.uuid}`))},`results-${N}`):(0,d.jsx)(l.P.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:m.Yv.fast},children:(0,d.jsx)("div",{className:"p-8 text-center text-sm text-muted-foreground",children:A("placeholder")})},"empty")})}),(0,d.jsxs)("div",{className:"hidden sm:flex items-center justify-between border-t px-4 py-2 text-[10px] text-muted-foreground",children:[(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"↑"}),(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"↓"}),A("filterAll")]}),(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"⏎"}),"Open"]})]}),(0,d.jsxs)("span",{className:"flex items-center gap-1",children:[(0,d.jsx)("kbd",{className:"rounded border px-1 py-0.5 font-mono",children:"Esc"}),"Close"]})]})]})})]})}},33994:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Yi:()=>i,hF:()=>h,vr:()=>j,xx:()=>k});var e=c(71255),f=c(62729),g=a([e]);async function h({companyUuid:a,skip:b,take:c}){let[d,f]=await Promise.all([e.z.project.findMany({where:{companyUuid:a},skip:b,take:c,orderBy:{updatedAt:"desc"},select:{uuid:!0,name:!0,description:!0,groupUuid:!0,createdAt:!0,updatedAt:!0,_count:{select:{ideas:!0,documents:!0,tasks:!0,proposals:!0}}}}),e.z.project.count({where:{companyUuid:a}})]);return{projects:d,total:f}}async function i(a,b){return!!await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}})}async function j(a,b,c){let d=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return d?e.z.project.update({where:{uuid:d.uuid},data:c,select:{uuid:!0,name:!0,description:!0,createdAt:!0,updatedAt:!0}}):null}async function k(a,b){let c=await e.z.project.findFirst({where:{uuid:b,companyUuid:a},select:{uuid:!0}});return!!c&&(await e.z.project.delete({where:{uuid:c.uuid}}),f.B.emitChange({companyUuid:a,projectUuid:b,entityType:"project",entityUuid:b,action:"deleted"}),!0)}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},46795:(a,b,c)=>{Promise.resolve().then(c.bind(c,25678))},52758:(a,b,c)=>{"use strict";c.d(b,{h:()=>t,p:()=>s});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(76549),i=c(24838),j=c(98893),k=c(97825),l=c(59129),m=c(61131),n=c(24714),o=c(73112),p=c(93524);let q=(0,e.createContext)(null),r=new Set(["agent_checkin"]);function s({children:a}){let[b,c]=(0,e.useState)(0),s=(0,e.useRef)(new Set),t=(0,f.useRouter)(),u=(0,g.c)("notifications"),v=(0,e.useCallback)(()=>{s.current.forEach(a=>a())},[]),w=(0,e.useCallback)(async()=>{try{let a=await (0,p.tm)("/api/notifications?readFilter=unread&take=0");if(a.ok){let b=await a.json();b.success&&c(b.data.unreadCount)}}catch{}},[]),x=(0,e.useCallback)(()=>{w(),v()},[w,v]);(0,e.useCallback)(a=>{if(!a.action||r.has(a.action)||!a.entityTitle||!a.actorName)return;let b=u(`types.${a.action}`),c=a.entityTitle,e=`${a.actorName} \xb7 ${b}`;(0,h.oR)(c,{description:e,icon:function(a){switch(a){case"task_assigned":case"idea_claimed":return(0,d.jsx)(i.A,{className:"h-4 w-4 text-[#C67A52]"});case"proposal_approved":case"task_verified":return(0,d.jsx)(j.A,{className:"h-4 w-4 text-green-600"});case"proposal_rejected":case"task_reopened":return(0,d.jsx)(k.A,{className:"h-4 w-4 text-red-500"});case"comment_added":return(0,d.jsx)(l.A,{className:"h-4 w-4 text-orange-500"});case"mentioned":return(0,d.jsx)(m.A,{className:"h-4 w-4 text-blue-600"});case"proposal_submitted":return(0,d.jsx)(n.A,{className:"h-4 w-4 text-blue-500"});case"task_status_changed":return(0,d.jsx)(o.A,{className:"h-4 w-4 text-blue-500"});default:return(0,d.jsx)(n.A,{className:"h-4 w-4 text-muted-foreground"})}}(a.action),duration:5e3,action:a.entityType&&a.entityUuid&&a.projectUuid?{label:u("viewDetail"),onClick:()=>t.push(function(a,b,c){let d=`/projects/${c}`;switch(a){case"task":return`${d}/tasks/${b}`;case"idea":return`${d}/dashboard?panel=${b}`;case"proposal":return`${d}/proposals/${b}`;case"document":return`${d}/documents/${b}`;default:return d}}(a.entityType,a.entityUuid,a.projectUuid))}:void 0})},[u,t]);let y=(0,e.useMemo)(()=>({unreadCount:b,refreshNotifications:x}),[b,x]);return(0,d.jsx)(q.Provider,{value:y,children:a})}function t(){let a=(0,e.useContext)(q);return a||{unreadCount:0,refreshNotifications:()=>{}}}},66887:(a,b,c)=>{"use strict";c.d(b,{r:()=>E});var d=c(10837),e=c(21968),f=c(86677),g=c(74113),h=c(42424),i=c(52758),j=c(1007),k=c(9222),l=c(81512),m=c.n(l),n=c(24838),o=c(98893),p=c(97825),q=c(59129),r=c(61131),s=c(24714),t=c(73112),u=c(27362),v=c(31009),w=c(45148),x=c(94372),y=c(74645),z=c(49599),A=c(93524);let B=[{bg:"bg-amber-100 dark:bg-amber-900/30",text:"text-amber-800 dark:text-amber-300"},{bg:"bg-blue-100 dark:bg-blue-900/30",text:"text-blue-800 dark:text-blue-300"},{bg:"bg-emerald-100 dark:bg-emerald-900/30",text:"text-emerald-800 dark:text-emerald-300"},{bg:"bg-violet-100 dark:bg-violet-900/30",text:"text-violet-800 dark:text-violet-300"},{bg:"bg-rose-100 dark:bg-rose-900/30",text:"text-rose-800 dark:text-rose-300"},{bg:"bg-cyan-100 dark:bg-cyan-900/30",text:"text-cyan-800 dark:text-cyan-300"},{bg:"bg-orange-100 dark:bg-orange-900/30",text:"text-orange-800 dark:text-orange-300"},{bg:"bg-indigo-100 dark:bg-indigo-900/30",text:"text-indigo-800 dark:text-indigo-300"}],C=new Set(["agent_checkin"]);function D({onClose:a}){let b=(0,k.c)("notifications"),c=(0,j.useRouter)(),{refreshNotifications:f}=(0,i.h)(),g=(0,e.useCallback)(a=>{let c=Date.now()-new Date(a).getTime(),d=Math.floor(c/6e4),e=Math.floor(c/36e5),f=Math.floor(c/864e5);return d<1?b("justNow"):d<60?b("minutesAgo",{count:d}):e<24?b("hoursAgo",{count:e}):b("daysAgo",{count:f})},[b]),[l,D]=(0,e.useState)([]),[E,F]=(0,e.useState)([]),[G,H]=(0,e.useState)(0),[I,J]=(0,e.useState)(0),[K,L]=(0,e.useState)(!0),M=(0,e.useCallback)(async(a,b)=>{let c=new URLSearchParams({limit:"20",offset:String(b)});a&&c.set("unreadOnly","true");let d=await (0,A.tm)(`/api/notifications?${c}`);if(!d.ok)return null;let e=await d.json();return e.success?e.data:null},[]),N=async()=>{await (0,A.tm)("/api/notifications/read-all",{method:"POST"}),F([]),J(0),D(a=>a.map(a=>a.readAt?a:{...a,readAt:new Date().toISOString()})),f()},O=async b=>{b.readAt||((0,A.tm)(`/api/notifications/${b.uuid}/read`,{method:"PATCH"}),F(a=>a.filter(a=>a.uuid!==b.uuid)),D(a=>a.map(a=>a.uuid===b.uuid?{...a,readAt:new Date().toISOString()}:a)),f()),a(),c.push(function(a){let{action:b,entityType:c,entityUuid:d,projectUuid:e}=a,f=`/projects/${e}`;if("report_created"===b)return`${f}/dashboard?panel=${d}&tab=overview`;switch(c){case"task":return`${f}/tasks/${d}`;case"idea":return`${f}/dashboard?panel=${d}`;case"proposal":return`${f}/proposals/${d}`;case"document":return`${f}/documents/${d}`;default:return f}}(b))},P=async a=>{let b=a?E:l,c=await M(a,b.length);c&&(a?F(a=>[...a,...c.notifications]):D(a=>[...a,...c.notifications]))},Q=a=>{let{Icon:c,color:e}=function(a){switch(a){case"task_assigned":case"idea_claimed":return{Icon:n.A,color:"text-[#C67A52]"};case"proposal_approved":case"task_verified":return{Icon:o.A,color:"text-green-600"};case"proposal_rejected":case"task_reopened":return{Icon:p.A,color:"text-red-500"};case"comment_added":return{Icon:q.A,color:"text-orange-500"};case"mentioned":return{Icon:r.A,color:"text-blue-600"};case"proposal_submitted":return{Icon:s.A,color:"text-blue-500"};case"task_status_changed":return{Icon:t.A,color:"text-blue-500"};case"report_created":return{Icon:u.A,color:"text-emerald-600"};default:return{Icon:s.A,color:"text-muted-foreground"}}}(a.action),f=function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return B[Math.abs(b)%B.length]}(a.projectUuid),h=!a.readAt;return(0,d.jsx)(v.P.div,{variants:w.Rf,children:(0,d.jsxs)("button",{onClick:()=>O(a),className:"flex w-full gap-3 px-4 py-3 text-left hover:bg-muted/50 transition-colors border-b border-border last:border-b-0",children:[(0,d.jsx)("div",{className:"mt-1.5 flex-shrink-0",children:h?(0,d.jsx)("div",{className:"h-2 w-2 rounded-full bg-[#C67A52]"}):(0,d.jsx)("div",{className:"h-2 w-2"})}),(0,d.jsx)("div",{className:"mt-0.5 flex-shrink-0",children:(0,d.jsx)(c,{className:`h-4 w-4 ${e}`})}),(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)(z.E,{variant:"secondary",className:`mb-1 block h-auto max-w-full whitespace-normal break-words px-1.5 py-0 text-[10px] font-medium ${f.bg} ${f.text} border-0`,children:a.projectName}),(0,d.jsx)("div",{className:"text-[13px] font-medium text-foreground break-words",children:a.entityTitle}),(0,d.jsx)("div",{className:"text-[12px] text-muted-foreground break-words",children:b(`types.${a.action}`)}),(0,d.jsxs)("div",{className:"mt-0.5 text-[11px] text-muted-foreground break-words",children:[a.actorName," \xb7 ",g(a.createdAt)]})]})]})},a.uuid)},R=(a,c,e)=>{let f=a.filter(a=>!C.has(a.action));return K?(0,d.jsxs)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:[b("loadMore"),"..."]}):0===f.length?(0,d.jsx)("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:c?b("noUnread"):b("noNotifications")}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(v.P.div,{initial:"initial",animate:"animate",transition:{staggerChildren:.04},children:f.map(Q)}),f.length<e&&(0,d.jsx)("div",{className:"p-3 text-center",children:(0,d.jsx)(h.$,{variant:"ghost",size:"sm",className:"text-xs",onClick:()=>P(c),children:b("loadMore")})})]})};return(0,d.jsxs)("div",{className:"w-[calc(100vw-2rem)] max-w-[360px]",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between border-b border-border px-4 py-3",children:[(0,d.jsx)("h3",{className:"text-sm font-semibold text-foreground",children:b("title")}),(0,d.jsx)(h.$,{variant:"ghost",size:"sm",className:"h-auto p-0 text-xs text-primary hover:text-primary/80",onClick:N,children:b("markAllRead")})]}),(0,d.jsxs)(x.tU,{defaultValue:"unread",className:"gap-0",children:[(0,d.jsxs)(x.j7,{className:"w-full rounded-none border-b border-border bg-transparent px-4 py-0 h-9",children:[(0,d.jsxs)(x.Xi,{value:"unread",className:"text-xs rounded-none data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:[b("tabUnread")," ",I>0&&`(${I})`]}),(0,d.jsx)(x.Xi,{value:"all",className:"text-xs rounded-none data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary",children:b("tabAll")})]}),(0,d.jsx)(x.av,{value:"all",className:"mt-0",children:(0,d.jsx)(v.P.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.15},children:(0,d.jsx)(y.F,{className:"max-h-[400px] overflow-y-auto [&_[data-slot=scroll-area-viewport]>div]:!block",children:R(l,!1,G)})},"tab-all")}),(0,d.jsx)(x.av,{value:"unread",className:"mt-0",children:(0,d.jsx)(v.P.div,{initial:{opacity:0},animate:{opacity:1},transition:{duration:.15},children:(0,d.jsx)(y.F,{className:"max-h-[400px] overflow-y-auto [&_[data-slot=scroll-area-viewport]>div]:!block",children:R(E,!0,I)})},"tab-unread")})]}),(0,d.jsx)("div",{className:"border-t border-border px-4 py-2 text-center",children:(0,d.jsx)(m(),{href:"/settings",onClick:a,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:b("notificationPreferences")})})]})}function E(){let{unreadCount:a}=(0,i.h)(),[b,c]=(0,e.useState)(!1);return(0,d.jsxs)(g.AM,{open:b,onOpenChange:c,children:[(0,d.jsx)(g.Wv,{asChild:!0,children:(0,d.jsxs)(h.$,{variant:"ghost",size:"icon",className:"relative h-8 w-8 text-muted-foreground hover:text-foreground",children:[(0,d.jsx)(f.A,{className:"h-4 w-4"}),a>0&&(0,d.jsx)("span",{className:"absolute -top-0.5 -right-0.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-[#C67A52] px-1 text-[10px] font-medium text-white animate-[pulse-badge_1.5s_ease-in-out_infinite]",children:a>99?"99+":a})]})}),(0,d.jsx)(g.hl,{align:"start",sideOffset:8,className:"w-auto p-0 rounded-lg",children:(0,d.jsx)(D,{onClose:()=>c(!1)})})]})}},76172:(a,b,c)=>{"use strict";c.d(b,{S2:()=>j,eV:()=>i,l9:()=>h,tS:()=>g,w0:()=>k});var d=c(10837),e=c(21968);c(1007);let f=(0,e.createContext)(null);function g({projectUuid:a,children:b}){let c=(0,e.useRef)(new Set),g=(0,e.useRef)(new Set),h=(0,e.useRef)(new Set),i=(0,e.useRef)(new Set);(0,e.useCallback)(()=>{c.current.forEach(a=>a())},[]),(0,e.useCallback)(a=>{g.current.forEach(b=>b(a))},[]);let j=(0,e.useCallback)(a=>(c.current.add(a),()=>{c.current.delete(a)}),[]),k=(0,e.useCallback)(a=>(g.current.add(a),()=>{g.current.delete(a)}),[]),l=(0,e.useCallback)(a=>(h.current.add(a),()=>{h.current.delete(a)}),[]),m=(0,e.useCallback)(a=>(i.current.add(a),()=>{i.current.delete(a)}),[]),n=(0,e.useMemo)(()=>({subscribe:j,subscribeEntity:k,subscribePresence:l,subscribeExecution:m}),[j,k,l,m]);return(0,d.jsx)(f.Provider,{value:n,children:b})}function h(a){(0,e.useContext)(f),(0,e.useRef)(a).current=a}function i(a,b){(0,e.useContext)(f),(0,e.useRef)(b).current=b,(0,e.useRef)(a).current=a}function j(a){(0,e.useContext)(f),(0,e.useRef)(a).current=a}function k(a,b,c){(0,e.useContext)(f),(0,e.useRef)(c).current=c}},86547:(a,b,c)=>{Promise.resolve().then(c.bind(c,16352))},94143:(a,b,c)=>{"use strict";c.d(b,{CG:()=>j,Fm:()=>o,cj:()=>i,h:()=>n,qp:()=>p});var d=c(10837);c(21968);var e=c(10694),f=c(14220),g=c(35973),h=c(96307);function i({...a}){return(0,d.jsx)(f.Root,{"data-slot":"sheet",...a})}function j({...a}){return(0,d.jsx)(f.Trigger,{"data-slot":"sheet-trigger",...a})}function k({...a}){return(0,d.jsx)(f.Portal,{"data-slot":"sheet-portal",...a})}function l({className:a,...b}){return(0,d.jsx)(f.Overlay,{"data-slot":"sheet-overlay",className:(0,h.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",a),...b})}let m=(0,g.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 n({className:a,children:b,side:c="right",...g}){return(0,d.jsxs)(k,{children:[(0,d.jsx)(l,{}),(0,d.jsxs)(f.Content,{"data-slot":"sheet-content",className:(0,h.cn)(m({side:c}),a),...g,children:[b,(0,d.jsxs)(f.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,d.jsx)(e.A,{className:"size-4"}),(0,d.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function o({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"sheet-header",className:(0,h.cn)("flex flex-col gap-2 p-4",a),...b})}function p({className:a,...b}){return(0,d.jsx)(f.Title,{"data-slot":"sheet-title",className:(0,h.cn)("text-foreground text-lg font-semibold",a),...b})}}};
@@ -0,0 +1 @@
1
+ exports.id=679,exports.ids=[679],exports.modules={8777:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Cs:()=>o,Nn:()=>s,YE:()=>n,lC:()=>l,lU:()=>r,ui:()=>p,yZ:()=>m});var e=c(52618),f=c(76872),g=c(42558),h=c(88437),i=c(65582),j=a([e,f,h]);[e,f,h]=j.then?(await j)():j;let t=i.default.child({module:"document.service"});async function k(a,b=!1){let c=await (0,f.LS)(a.createdByUuid),d={uuid:a.uuid,type:a.type,title:a.title,version:a.version,proposalUuid:a.proposalUuid,createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()};return b&&void 0!==a.content&&(d.content=a.content),a.project&&(d.project=a.project),d}async function l({companyUuid:a,projectUuid:b,skip:c,take:d,type:f}){let g={projectUuid:b,companyUuid:a,...f&&{type:f}},[h,i]=await Promise.all([e.z.document.findMany({where:g,skip:c,take:d,orderBy:{updatedAt:"desc"},select:{uuid:!0,type:!0,title:!0,version:!0,proposalUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}}),e.z.document.count({where:g})]);return{documents:await Promise.all(h.map(a=>k(a))),total:i}}async function m(a,b,c){if(0===b.length)return[];let d={companyUuid:a,proposalUuid:{in:b},...c&&{type:c}},f=await e.z.document.findMany({where:d,orderBy:{createdAt:"desc"},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,proposalUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return Promise.all(f.map(a=>k(a,!0)))}async function n(a,b){let c=await e.z.document.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return c?k(c,!0):null}async function o(a,b){return e.z.document.findFirst({where:{uuid:b,companyUuid:a}})}async function p(a){let b=await e.z.document.create({data:{companyUuid:a.companyUuid,projectUuid:a.projectUuid,type:a.type,title:a.title,content:a.content,version:1,proposalUuid:a.proposalUuid,createdByUuid:a.createdByUuid},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,proposalUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return"report"===a.type&&await q(a,b.uuid),k(b,!0)}async function q(a,b){try{g.B.emitChange({companyUuid:a.companyUuid,projectUuid:a.projectUuid,entityType:"document",entityUuid:b,action:"created",actorUuid:a.createdByUuid})}catch(c){t.warn({err:c,reportUuid:b,proposalUuid:a.proposalUuid},"Failed to emit document/created event for report")}if(!a.proposalUuid)return;let c=null;try{let b=await e.z.proposal.findFirst({where:{uuid:a.proposalUuid,companyUuid:a.companyUuid},select:{inputType:!0,inputUuids:!0}});if(b&&"idea"===b.inputType&&Array.isArray(b.inputUuids)){let a=b.inputUuids[0];"string"==typeof a&&a.length>0&&(c=a)}}catch(c){t.warn({err:c,reportUuid:b,proposalUuid:a.proposalUuid},"Failed to resolve parent Idea for report side effects");return}if(c){try{g.B.emitChange({companyUuid:a.companyUuid,projectUuid:a.projectUuid,entityType:"idea",entityUuid:c,action:"updated",actorUuid:a.createdByUuid})}catch(d){t.warn({err:d,reportUuid:b,ideaUuid:c,proposalUuid:a.proposalUuid},"Failed to emit idea/updated event for report")}try{let d=await (0,f.LS)(a.createdByUuid),e=d?.type??"agent";await h.createActivity({companyUuid:a.companyUuid,projectUuid:a.projectUuid,targetType:"idea",targetUuid:c,actorType:e,actorUuid:a.createdByUuid,action:"report_created",value:{reportUuid:b,proposalUuid:a.proposalUuid,reportTitle:a.title}})}catch(d){t.warn({err:d,reportUuid:b,ideaUuid:c,proposalUuid:a.proposalUuid},"Failed to record report_created Activity")}}}async function r(a,{title:b,content:c,incrementVersion:d}){let f={};void 0!==b&&(f.title=b),void 0!==c&&(f.content=c),d&&(f.version={increment:1});let g=await e.z.document.update({where:{uuid:a},data:f,include:{project:{select:{uuid:!0,name:!0}}}});return k(g,!0)}async function s(a){return e.z.document.delete({where:{uuid:a}})}d()}catch(a){d(a)}})},12102:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("file-text",[["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:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},19720:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).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"}]])},33863:(a,b,c)=>{"use strict";c.d(b,{SQ:()=>i,_2:()=>j,mB:()=>k,rI:()=>g,ty:()=>h});var d=c(10837);c(21968);var e=c(5989),f=c(96307);function g({...a}){return(0,d.jsx)(e.Root,{"data-slot":"dropdown-menu",...a})}function h({...a}){return(0,d.jsx)(e.Trigger,{"data-slot":"dropdown-menu-trigger",...a})}function i({className:a,sideOffset:b=4,...c}){return(0,d.jsx)(e.Portal,{children:(0,d.jsx)(e.Content,{"data-slot":"dropdown-menu-content",sideOffset:b,className:(0,f.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",a),...c})})}function j({className:a,inset:b,variant:c="default",...g}){return(0,d.jsx)(e.Item,{"data-slot":"dropdown-menu-item","data-inset":b,"data-variant":c,className:(0,f.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",a),...g})}function k({className:a,...b}){return(0,d.jsx)(e.Separator,{"data-slot":"dropdown-menu-separator",className:(0,f.cn)("bg-border -mx-1 my-1 h-px",a),...b})}},37066:(a,b,c)=>{"use strict";c.d(b,{A:()=>g});var d=c(77592),e=c(50117);let f=["en","zh"],g=(0,d.A)(async()=>{let a=await (0,e.UL)(),b=a.get("chorus-locale")?.value,d=b&&f.includes(b)?b:"en";return{locale:d,messages:(await c(76565)(`./${d}.json`)).default}})},42558:(a,b,c)=>{"use strict";c.d(b,{T:()=>p,B:()=>t});var d=c(94735),e=c(55511),f=c(18481),g=c.n(f),h=c(65582);let i=h.default.child({module:"redis"}),j=function(){if(process.env.REDIS_URL)return process.env.REDIS_URL;let a=process.env.REDIS_HOST;if(!a)return;let b=process.env.REDIS_PORT||"6379",c=process.env.REDIS_USERNAME||"default",d=process.env.REDIS_PASSWORD,e="rediss";return d?`${e}://${c}:${encodeURIComponent(d)}@${a}:${b}`:`${e}://${a}:${b}`}(),k=globalThis;function l(a){let b=new(g())(j,{lazyConnect:!0,maxRetriesPerRequest:null,retryStrategy(b){let c=Math.min(200*b,5e3);return i.warn({name:a,delay:c,attempt:b},"Reconnecting"),c}});return b.on("error",b=>{i.error({name:a,err:b},"Redis error")}),b.on("connect",()=>{i.info({name:a},"Connected")}),b}function m(){return j?(k.redisPub||(k.redisPub=l("pub")),k.redisPub):null}function n(){return j?(k.redisSub||(k.redisSub=l("sub")),k.redisSub):null}let o=h.default.child({module:"event-bus"});function p(a){return`control:${a}`}let q="chorus:events";class r extends d.EventEmitter{static{this.THROTTLE_WINDOW_MS=2e3}static{this.EVICTION_INTERVAL_MS=3e4}static{this.EVICTION_TTL_MS=3e4}async connect(){if(this._connected||!j)return;this._connected=!0;let a=n(),b=m();a&&(await a.connect(),b&&await b.connect(),await a.subscribe(q),a.on("message",(a,b)=>{try{let a=JSON.parse(b);if(a._origin===this._instanceId)return;let c=null!==a.data&&"object"==typeof a.data?{...a.data,_remote:!0}:a.data;super.emit(a.channel,c)}catch{}}))}emit(a,...b){if("string"==typeof a&&j){let c=m();if(c&&"ready"===c.status){let d={_origin:this._instanceId,channel:a,data:b[0]};c.publish(q,JSON.stringify(d)).catch(()=>{})}}return super.emit(a,...b)}emitPresence(a){let b=`${a.agentUuid}:${a.entityType}:${a.entityUuid}${a.subEntityType?`:${a.subEntityType}`:""}${a.subEntityUuid?`:${a.subEntityUuid}`:""}`,c=Date.now(),d=this._presenceThrottle.get(b);d&&c-d<r.THROTTLE_WINDOW_MS||(this._presenceThrottle.set(b,c),this._ensureEvictionTimer(),this.emit("presence",a))}_ensureEvictionTimer(){!this._evictionTimer&&(this._evictionTimer=setInterval(()=>{let a=Date.now();for(let[b,c]of this._presenceThrottle)a-c>=r.EVICTION_TTL_MS&&this._presenceThrottle.delete(b);0===this._presenceThrottle.size&&(clearInterval(this._evictionTimer),this._evictionTimer=null)},r.EVICTION_INTERVAL_MS),this._evictionTimer&&"object"==typeof this._evictionTimer&&"unref"in this._evictionTimer&&this._evictionTimer.unref())}get _throttleMapSize(){return this._presenceThrottle.size}_resetPresenceState(){this._presenceThrottle.clear(),this._evictionTimer&&(clearInterval(this._evictionTimer),this._evictionTimer=null)}emitChange(a){this.emit("change",a)}async disconnect(){let a=m(),b=n();b&&await b.quit().catch(()=>{}),a&&await a.quit().catch(()=>{}),this._connected=!1}constructor(...a){super(...a),this._connected=!1,this._instanceId=(0,e.randomUUID)(),this._presenceThrottle=new Map,this._evictionTimer=null}}let s=globalThis,t=s.chorusEventBus??=new r;j&&t.connect().catch(a=>{o.error({err:a},"Redis connect failed, falling back to memory")})},43538:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]])},51899:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("palette",[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]])},61159:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("clipboard-list",[["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:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]])},63413:(a,b,c)=>{"use strict";c.d(b,{cn:()=>f});var d=c(34269),e=c(42711);function f(...a){return(0,e.QP)((0,d.$)(a))}},69540:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{h:()=>o,q:()=>n});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(53870),i=c(67738),j=c(33994),k=c(97307),l=c(12217),m=a([g,h,i,j]);async function n(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{if(!await (0,j.Yi)(b.companyUuid,a.projectUuid))return{success:!1,error:"Project not found"};let c=await (0,h.ui)({companyUuid:b.companyUuid,projectUuid:a.projectUuid,type:a.type,title:a.title,content:a.content,createdByUuid:b.actorUuid});return await (0,i.createActivity)({companyUuid:b.companyUuid,projectUuid:a.projectUuid,targetType:"document",targetUuid:c.uuid,actorType:b.type,actorUuid:b.actorUuid,action:"document_created"}),(0,f.revalidatePath)(`/projects/${a.projectUuid}/documents`),{success:!0,documentUuid:c.uuid}}catch(a){return k.default.error({err:a},"Failed to create document"),{success:!1,error:"Failed to create document"}}}async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"unauthorized"};try{let c=await (0,h.NH)(a);if(!c)return{success:!1,error:"not_found"};if(c.companyUuid!==b.companyUuid)return{success:!1,error:"forbidden"};return await (0,h.Nn)(c.uuid),(0,f.revalidatePath)(`/projects/${c.projectUuid}/documents`),{success:!0,projectUuid:c.projectUuid}}catch(c){k.default.error({err:c,documentUuid:a},"Failed to delete document");let b=c instanceof Error?c.message:"Failed to delete document";return{success:!1,error:b}}}[g,h,i,j]=m.then?(await m)():m,(0,l.D)([n,o]),(0,e.A)(n,"407a1279d865f4239ab11a5b83770f955afd0cf2f5",null),(0,e.A)(o,"4018347ee9f92f7136e5111f48e42c8c41d1be2d86",null),d()}catch(a){d(a)}})},74236:(a,b,c)=>{"use strict";c.d(b,{Wu:()=>i,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10023);c(73426);var e=c(63413);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.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",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}},76565:(a,b,c)=>{var d={"./en.json":[87368,7368],"./zh.json":[72961,2961]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=76565,a.exports=e},88437:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{createActivity:()=>k,listActivities:()=>i,listActivitiesWithActorNames:()=>j});var e=c(52618),f=c(42558),g=c(76872),h=a([e,g]);async function i({companyUuid:a,projectUuid:b,skip:c,take:d,targetType:f,targetUuid:g}){let h={projectUuid:b,companyUuid:a,...f&&{targetType:f},...g&&{targetUuid:g}},[i,j]=await Promise.all([e.z.activity.findMany({where:h,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,targetType:!0,targetUuid:!0,actorType:!0,actorUuid:!0,action:!0,value:!0,sessionUuid:!0,sessionName:!0,createdAt:!0}}),e.z.activity.count({where:h})]);return{activities:i,total:j}}async function j(a){let{activities:b,total:c}=await i(a);return{activities:await Promise.all(b.map(async a=>{let b=await (0,g.lR)(a.actorType,a.actorUuid);return{uuid:a.uuid,targetType:a.targetType,targetUuid:a.targetUuid,action:a.action,actorType:a.actorType,actorName:b||"Unknown",value:a.value,sessionUuid:a.sessionUuid,sessionName:a.sessionName,createdAt:a.createdAt.toISOString()}})),total:c}}async function k({companyUuid:a,projectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j,sessionUuid:k,sessionName:l}){let m=await e.z.activity.create({data:{companyUuid:a,projectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j||void 0,sessionUuid:k||void 0,sessionName:l||void 0}});return f.B.emit("activity",{companyUuid:a,projectUuid:b,targetType:c,targetUuid:d,actorType:g,actorUuid:h,action:i,value:j,sessionUuid:k,sessionName:l,uuid:m.uuid}),m}[e,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},92523:(a,b,c)=>{"use strict";c.d(b,{E:()=>q});var d=c(10837),e=c(21968),f=c(76549),g=c(65956),h=c(56556);let i=(0,h.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"}]]),j=(0,h.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"}]]);var k=c(86460);let l=(0,h.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"}]]);var m=c(9222),n=c(33863),o=c(42424),p=c(54722);function q({document:a,documentUuid:b,variant:h="default"}){let q=(0,m.c)(),{exportDocument:r,isExporting:s,exportError:t}=function(){let[a,b]=(0,e.useState)(!1),[d,f]=(0,e.useState)(null);return{exportDocument:(0,e.useCallback)(async(a,d)=>{b(!0),f(null);try{let b,f,h=function(a){let b=a.replace(/[\\/:*?"<>|]/g,"").replace(/\s+/g," ").trim().replace(/\s/g,"-");return b.length>0?b:"document"}(a.title);if("md"===d){let{exportAsMarkdownBlob:d}=await c.e(1997).then(c.bind(c,31997));b=d(a),f="md"}else if("pdf"===d){let{exportAsPdf:d}=await c.e(6044).then(c.bind(c,46044));b=await d(a),f="pdf"}else if("docx"===d){let{exportAsDocx:d}=await c.e(7002).then(c.bind(c,57002));b=await d(a),f="docx"}else throw Error(`Unsupported export format: ${String(d)}`);var e=b,g=`${h}.${f}`;let i=URL.createObjectURL(e),j=document.createElement("a");j.href=i,j.download=g,j.rel="noopener",j.style.display="none",document.body.appendChild(j),j.click(),document.body.removeChild(j),setTimeout(()=>URL.revokeObjectURL(i),1e3)}catch(a){f(a instanceof Error?a.message:String(a)),p.q.error("useDocumentExport export failed",a)}finally{b(!1)}},[]),isExporting:a,exportError:d}}(),[u,v]=(0,e.useState)(null);async function w(c){v(c);try{let d=a;if(!d&&b){let a=await fetch(`/api/documents/${b}`),c=await a.json();if(!c.success||!c.data)return void f.oR.error(q("export.exportError"));let e=c.data;d={title:e.title,content:e.content??"",type:e.type,version:e.version,createdAt:e.createdAt,updatedAt:e.updatedAt,createdByName:e.createdBy?.name??"",projectName:e.project?.name??""}}d&&await r(d,c)}finally{v(null),t&&f.oR.error(t)}}let x=[{format:"md",labelKey:"export.formatMd",icon:g.A},{format:"pdf",labelKey:"export.formatPdf",icon:i},{format:"docx",labelKey:"export.formatDocx",icon:j}],y="compact"===h;return(0,d.jsxs)(n.rI,{children:[(0,d.jsx)(n.ty,{asChild:!0,children:(0,d.jsxs)(o.$,{variant:"ghost"===h?"ghost":"outline",size:y?"sm":"default",className:y?"h-6 text-[11px] text-muted-foreground hover:text-foreground":"border-[#E5E0D8] text-[#6B6B6B] gap-1.5",disabled:s,children:[s?(0,d.jsx)(k.A,{className:`${y?"h-3 w-3":"h-4 w-4"} animate-spin`}):(0,d.jsx)(l,{className:y?"h-3 w-3":"h-4 w-4"}),!y&&q("export.exportDocument")]})}),(0,d.jsx)(n.SQ,{align:"end",className:"w-48",children:x.map(({format:a,labelKey:b,icon:c})=>(0,d.jsxs)(n._2,{onClick:b=>{b.stopPropagation(),b.preventDefault(),w(a)},disabled:s,children:[u===a?(0,d.jsx)(k.A,{className:"h-4 w-4 animate-spin"}):(0,d.jsx)(c,{className:"h-4 w-4"}),q(b)]},a))})]})}}};
@@ -0,0 +1 @@
1
+ exports.id=6813,exports.ids=[6813],exports.modules={5514:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{y:()=>C});var e=c(10837),f=c(21968),g=c(9222),h=c(44787),i=c(22727),j=c(24383),k=c(55775),l=c(27936),m=c(68797),n=c(24879),o=c(31009),p=c(45148),q=c(35198),r=c(49599),s=c(42424),t=c(11568),u=c(77635),v=c(79420),w=c(23582),x=c(54722),y=c(86104),z=c(8972),A=c(76172),B=a([m,y]);[m,y]=B.then?(await B)():B;let D={open:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E3F2FD] text-[#1976D2]",in_progress:"bg-[#E8F5E9] text-[#5A9E6F]",to_verify:"bg-[#F3E5F5] text-[#7B1FA2]",done:"bg-[#E0F2F1] text-[#00796B]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"},E={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},F={in_progress:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E8F5E9] text-[#2E7D32]",open:"bg-[#F5F5F5] text-[#6B6B6B]",to_verify:"bg-[#E3F2FD] text-[#1565C0]"},G=[{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}];function C({projectUuid:a,initialTasks:b,currentUserUuid:c,selectedTaskUuid:d,onTaskSelect:B,onPanelClose:C,proposalUuidFilter:H}){let I=(0,g.c)(),[J,K]=(0,f.useState)(b),[L,M]=(0,f.useState)({}),[N,O]=(0,f.useState)(!1),[P,Q]=(0,f.useState)(null),[R,S]=(0,f.useState)([]),[T,U]=(0,f.useState)(!1),[V,W]=(0,f.useState)([]),[X,Y]=(0,f.useState)(!1),[Z,$]=(0,f.useState)(!1),_=(0,f.useCallback)(async()=>{let b=await (0,u.p)(a);if(b.success){let a=H?b.data.filter(a=>a.proposalUuid&&H.has(a.proposalUuid)):b.data;K(a);let c=await (0,z.h)(a.map(a=>a.uuid));c.success&&c.data&&M(c.data)}},[a,H]);(0,A.eV)("task",_),(0,f.useRef)(H);let aa=(0,f.useMemo)(()=>d?J.find(a=>a.uuid===d)??null:null,[d,J]),ab=a=>J.filter(b=>a.includes(b.status)),ac=a=>ab(a).reduce((a,b)=>a+(b.storyPoints||0),0),ad=async b=>{let c;$(!1);let{destination:d,source:e,draggableId:f}=b;if(!d||d.droppableId===e.droppableId&&d.index===e.index)return;let g=d.droppableId;e.droppableId;let h=J.find(a=>a.uuid===f);if(!h)return;if(G.find(a=>a.id===g),"todo"===g)c="assigned"===h.status?"assigned":"open";else if("in_progress"===g)c="in_progress";else if("to_verify"===g)c="to_verify";else{if("done"!==g)return;c="to_verify"===h.status?"done":"to_verify"}K(a=>a.map(a=>a.uuid===f?{...a,status:c}:a));let i=await (0,v.y)(f,g,a);if(i.success)_();else{if("blocked"in i&&i.blocked&&"blockers"in i){K(a=>a.map(a=>a.uuid===f?{...a,status:h.status}:a)),Q(h),S(i.blockers),O(!0);return}if(K(a=>a.map(a=>a.uuid===f?{...a,status:h.status}:a)),"gateBlocked"in i&&i.gateBlocked){let a="unresolvedCriteria"in i&&Array.isArray(i.unresolvedCriteria)?i.unresolvedCriteria:[];W(a),U(!0)}}},ae=async()=>{if(P){Y(!0);try{let a=await (0,w.H)(P.uuid,"in_progress");a.success?(O(!1),Q(null),S([]),_()):x.q.error("Failed to force move task:",a.error)}finally{Y(!1)}}},af=()=>{O(!1),Q(null),S([])};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(h.JY,{onDragStart:()=>{$(!0)},onDragEnd:ad,children:(0,e.jsx)(n.o,{children:(0,e.jsx)("div",{className:"flex flex-1 gap-4 overflow-x-auto pb-4",children:G.map(a=>{let b=ab(a.statuses);return(0,e.jsxs)("div",{className:"flex w-[300px] flex-shrink-0 flex-col rounded-xl bg-[#F5F2EC] p-4",children:[(0,e.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("h3",{className:"font-medium text-[#2C2C2C]",children:I(`status.${a.labelKey}`)}),(0,e.jsx)("span",{className:"rounded-full bg-white px-2 py-0.5 text-xs font-medium text-[#6B6B6B]",children:b.length})]}),ac(a.statuses)>0&&(0,e.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#9A9A9A]",children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,e.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,e.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),ac(a.statuses),"h"]})]}),(0,e.jsx)(h.gL,{droppableId:a.id,children:(a,c)=>(0,e.jsxs)("div",{ref:a.innerRef,...a.droppableProps,className:`flex-1 space-y-3 overflow-y-auto min-h-[100px] rounded-lg pt-3 pr-3 transition-colors ${c.isDraggingOver?"bg-[#E5E0D8]":""}`,children:[0!==b.length||c.isDraggingOver?b.map((a,b)=>{let c=!!a.dependsOn&&0!==a.dependsOn.length&&a.dependsOn.some(a=>"done"!==a.status&&"closed"!==a.status),d=(c?!a.dependsOn?[]:a.dependsOn.filter(a=>"done"!==a.status&&"closed"!==a.status):[]).map(a=>a.title).join(", ");return(0,e.jsx)(h.sx,{draggableId:a.uuid,index:b,children:(b,f)=>(0,e.jsx)("div",{ref:b.innerRef,...b.draggableProps,...b.dragHandleProps,onClick:()=>{f.isDragging||B(a.uuid)},style:b.draggableProps.style,children:(0,e.jsxs)(o.P.div,{className:"relative",layoutId:Z?void 0:`task-card-${a.uuid}`,transition:p.Yv.spring,children:[L[a.uuid]>0&&(0,e.jsx)("div",{className:"absolute -top-3 -right-3 z-10 flex h-11 w-11 items-center justify-center rounded-full border-2 border-green-400 bg-white shadow-sm",children:(0,e.jsx)("img",{src:"/typing-animation.gif",alt:"",className:"h-8 w-8"})}),(0,e.jsx)(i.D,{entityType:"task",entityUuid:a.uuid,children:(0,e.jsxs)(q.Zp,{className:`cursor-pointer p-4 transition-all ${c?"border-dashed border-[#D1D1D1] opacity-60":"border-[#E5E0D8] hover:border-[#C67A52]"} bg-white hover:shadow-sm ${f.isDragging?"shadow-lg rotate-2":""}`,children:[(0,e.jsxs)("div",{className:"mb-2 flex items-start justify-between",children:[(0,e.jsx)(r.E,{className:D[a.status]||"",children:I(`status.${E[a.status]||a.status}`)}),(0,e.jsx)("div",{className:"flex items-center gap-1.5",children:a.storyPoints&&(0,e.jsxs)("span",{className:"flex items-center gap-1 rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,e.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,e.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),a.storyPoints,"h"]})})]}),(0,e.jsx)("h4",{className:"mb-1 font-medium text-[#2C2C2C]",children:a.title}),a.description&&(0,e.jsx)("p",{className:"mb-2 line-clamp-2 text-sm text-[#6B6B6B]",children:a.description}),c&&(0,e.jsxs)("div",{className:"mb-2 flex items-center gap-1.5 rounded-md bg-[#FFF3E0] px-2 py-1",children:[(0,e.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-[#E65100]"}),(0,e.jsx)("span",{className:"text-[9px] font-medium leading-tight text-[#E65100] line-clamp-1",children:I("tasks.blockedBy",{tasks:d})})]}),(0,e.jsxs)("div",{className:"flex items-start justify-between gap-2 text-xs text-[#9A9A9A]",children:[a.assignee?(0,e.jsxs)("span",{className:"flex min-w-0 flex-col gap-0.5",children:[(0,e.jsxs)("span",{className:"flex items-center gap-1",children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3 shrink-0",children:[(0,e.jsx)("path",{d:"M12 8V4H8"}),(0,e.jsx)("rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"})]}),(0,e.jsx)("span",{className:"truncate",children:a.assignee.name})]}),"agent_instance"===a.assignee.type&&a.assignee.instance&&(0,e.jsx)(m.jQ,{cwd:a.assignee.instance.cwd,host:a.assignee.instance.host,showHost:!1,className:"pl-4"})]}):"open"===a.status?(0,e.jsx)("span",{className:"text-[#C67A52]",children:I("common.assign")}):(0,e.jsx)("span",{children:I("common.unassigned")}),(0,e.jsxs)("span",{className:"flex items-center gap-1",children:[L[a.uuid]>0&&(0,e.jsxs)(r.E,{variant:"outline",className:"h-4 gap-1 border-green-300 px-1.5 text-[10px] text-green-700",children:[(0,e.jsx)("span",{className:"inline-block h-1.5 w-1.5 rounded-full bg-green-500"}),I("sessions.workerCount",{count:L[a.uuid]})]}),a.acceptanceSummary&&a.acceptanceSummary.total>0&&(()=>{let b=a.acceptanceSummary,c="to_verify"===a.status,d=b.requiredPassed===b.required&&b.required>0,f=b.requiredFailed>0,g="bg-[#F5F2EC] text-[#9A9A9A]";return c&&(g=d?"bg-green-50 text-green-700":f?"bg-red-50 text-[#C4574C]":"bg-amber-50 text-[#D97706]"),(0,e.jsxs)(r.E,{className:`h-4 gap-1 border-0 px-1.5 text-[9px] ${g}`,children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-2.5 w-2.5",children:[(0,e.jsx)("path",{d:"M9 11l3 3L22 4"}),(0,e.jsx)("path",{d:"M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11"})]}),b.passed,"/",b.total]})})()]})]})]})})]})})},a.uuid)}):(0,e.jsx)("div",{className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:I("tasks.noTasks")}),a.placeholder]})})]},a.id)})})})}),aa&&(0,e.jsx)(y.v,{task:aa,projectUuid:a,currentUserUuid:c,onClose:C}),(0,e.jsx)(t.lG,{open:N,onOpenChange:a=>{a||af()},children:(0,e.jsxs)(t.Cf,{className:"max-w-md rounded-2xl",children:[(0,e.jsxs)(t.c7,{children:[(0,e.jsxs)(t.L3,{className:"flex items-center gap-2",children:[(0,e.jsx)(k.A,{className:"h-5 w-5 text-[#E65100]"}),I("tasks.dependencyBlocked")]}),(0,e.jsx)(t.rr,{children:I("tasks.dependencyBlockedDescription")})]}),(0,e.jsxs)("div",{className:"rounded-lg bg-[#FAF8F4] p-3",children:[(0,e.jsx)("p",{className:"mb-2 text-xs font-medium text-[#6B6B6B]",children:I("tasks.blockerList")}),(0,e.jsx)("div",{className:"space-y-2",children:R.map(a=>(0,e.jsxs)("div",{className:"flex items-center justify-between rounded-lg border border-[#E5E0D8] bg-white p-3",children:[(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("p",{className:"truncate text-sm font-medium text-[#2C2C2C]",children:a.title}),(0,e.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[a.assignee&&(0,e.jsx)("span",{className:"text-xs text-[#6B6B6B]",children:a.assignee.name}),a.sessionCheckin&&(0,e.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#6B6B6B]",children:[(0,e.jsx)(l.A,{className:"h-3 w-3"}),a.sessionCheckin.sessionName]})]})]}),(0,e.jsx)(r.E,{className:`shrink-0 ${F[a.status]||"bg-[#F5F5F5] text-[#6B6B6B]"}`,children:I(`status.${E[a.status]||a.status}`)})]},a.uuid))})]}),(0,e.jsxs)(t.Es,{className:"gap-2 sm:gap-0",children:[(0,e.jsx)(s.$,{variant:"outline",onClick:af,children:I("common.cancel")}),(0,e.jsx)(s.$,{className:"bg-[#E65100] hover:bg-[#BF4400] text-white",onClick:ae,disabled:X,children:X?I("common.processing"):I("tasks.forceMove")})]})]})}),(0,e.jsx)(t.lG,{open:T,onOpenChange:U,children:(0,e.jsxs)(t.Cf,{className:"max-w-[520px] rounded-2xl p-0 gap-0",children:[(0,e.jsxs)(t.c7,{className:"px-6 pt-6 pb-4",children:[(0,e.jsxs)(t.L3,{className:"flex items-center gap-2.5",children:[(0,e.jsx)(k.A,{className:"h-5 w-5 text-[#C4574C]"}),I("acceptanceCriteria.title")]}),(0,e.jsx)(t.rr,{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:I("acceptanceCriteria.gateBlocked",{count:V.filter(a=>a.required&&"passed"!==a.status).length})})]}),(0,e.jsxs)("div",{className:"px-6 pb-4 space-y-3",children:[(0,e.jsx)("p",{className:"text-[11px] font-semibold text-[#9A9A9A] uppercase tracking-wide",children:I("acceptanceCriteria.title")}),V.map(a=>(0,e.jsxs)("div",{className:`rounded-lg border p-3 space-y-2 ${"failed"===a.status?"border-red-200 bg-white":"border-[#E5E0D8] bg-white"}`,children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("div",{className:`h-2 w-2 rounded-full shrink-0 ${"failed"===a.status?"bg-[#C4574C]":"bg-[#F59E0B]"}`}),(0,e.jsx)("span",{className:"text-xs font-semibold text-[#2C2C2C]",children:a.description})]}),(0,e.jsxs)("div",{className:"flex items-center gap-2 pl-4",children:[(0,e.jsx)(r.E,{className:`text-[10px] border-0 ${"failed"===a.status?"bg-red-50 text-[#C4574C]":"bg-amber-50 text-[#D97706]"}`,children:I(`acceptanceCriteria.status.${a.status}`)}),(0,e.jsx)(r.E,{className:"text-[10px] border-0 bg-[#FAF8F4] text-[#9A9A9A]",children:a.required?I("acceptanceCriteria.required"):I("acceptanceCriteria.optional")}),!a.evidence&&(0,e.jsx)("span",{className:"text-[10px] italic text-[#9A9A9A]",children:I("acceptanceCriteria.noEvidence")})]}),a.evidence&&(0,e.jsxs)("div",{className:"rounded-md bg-red-50 p-2 ml-4",children:[(0,e.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:I("acceptanceCriteria.verifyEvidence")}),(0,e.jsx)("p",{className:"text-[11px] text-[#2C2C2C] mt-0.5",children:a.evidence})]})]},a.uuid))]}),(0,e.jsx)(t.Es,{className:"border-t border-[#E5E2DC] px-6 py-4",children:(0,e.jsx)(s.$,{className:"rounded-lg bg-[#C4574C] hover:bg-[#A3433A] text-white",onClick:()=>U(!1),children:I("acceptanceCriteria.dismiss")})})]})})]})}d()}catch(a){d(a)}})},7046:(a,b,c)=>{"use strict";c.d(b,{kX:()=>e,od:()=>f,sO:()=>j});var d=c(70936);function e(a,b){return d.NextResponse.json({success:!0,data:a,meta:b})}function f(a,b,c,e){return d.NextResponse.json({success:!0,data:a,meta:{page:b,pageSize:c,total:e}})}let g={BAD_REQUEST:"BAD_REQUEST",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",NOT_FOUND:"NOT_FOUND",CONFLICT:"CONFLICT",VALIDATION_ERROR:"VALIDATION_ERROR",ALREADY_CLAIMED:"ALREADY_CLAIMED",NOT_CLAIMED:"NOT_CLAIMED",INVALID_STATUS_TRANSITION:"INVALID_STATUS_TRANSITION",PERMISSION_DENIED:"PERMISSION_DENIED",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR"},h={[g.BAD_REQUEST]:400,[g.UNAUTHORIZED]:401,[g.FORBIDDEN]:403,[g.NOT_FOUND]:404,[g.CONFLICT]:409,[g.VALIDATION_ERROR]:422,[g.ALREADY_CLAIMED]:409,[g.NOT_CLAIMED]:400,[g.INVALID_STATUS_TRANSITION]:400,[g.PERMISSION_DENIED]:403,[g.INTERNAL_ERROR]:500,[g.DATABASE_ERROR]:500};function i(a,b,c){let e=h[a]||500;return d.NextResponse.json({success:!1,error:{code:a,message:b,details:c}},{status:e})}let j={badRequest:(a,b)=>i(g.BAD_REQUEST,a,b),unauthorized:(a="Authentication required")=>i(g.UNAUTHORIZED,a),forbidden:(a="Access denied")=>i(g.FORBIDDEN,a),notFound:(a="Resource")=>i(g.NOT_FOUND,`${a} not found`),conflict:a=>i(g.CONFLICT,a),validationError:a=>i(g.VALIDATION_ERROR,"Validation failed",a),alreadyClaimed:()=>i(g.ALREADY_CLAIMED,"Resource is already claimed"),notClaimed:()=>i(g.NOT_CLAIMED,"Resource is not claimed"),invalidStatusTransition:(a,b)=>i(g.INVALID_STATUS_TRANSITION,`Invalid status transition from ${a} to ${b}`),permissionDenied:a=>i(g.PERMISSION_DENIED,`Permission denied: ${a}`),internal:(a="Internal server error")=>i(g.INTERNAL_ERROR,a),database:(a="Database error")=>i(g.DATABASE_ERROR,a)}},15107:(a,b,c)=>{Promise.resolve().then(c.bind(c,29334))},19520:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Hd:()=>n,nk:()=>p,pw:()=>o,yq:()=>m});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(50530),i=c(67738),j=c(97307),k=c(12217),l=a([g,h,i]);[g,h,i]=l.then?(await l)():l;let q={todo:"open",in_progress:"in_progress",to_verify:"to_verify",done:"done"};async function m(a,b,c){let d=await (0,g.d)();if(!d)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.K4)(d.companyUuid,a);if(!e)return{success:!1,error:"Task not found"};let g=q[b];if(!g)return{success:!1,error:"Invalid column"};if("in_progress"===g){let b=await (0,h.IM)(a);if(!b.resolved)return{success:!1,error:"Dependencies not resolved",blocked:!0,blockers:b.blockers}}if("done"===g&&"to_verify"!==e.status)await (0,h.lC)(a,{status:"to_verify"});else if("done"===g&&"to_verify"===e.status){let b=await (0,h.Ew)(a);if(!b.allowed)return{success:!1,error:b.reason||"Not all required acceptance criteria are passed",gateBlocked:!0,unresolvedCriteria:b.unresolvedCriteria||[]};await (0,h.lC)(a,{status:"done"})}else await (0,h.lC)(a,{status:g});return(0,f.revalidatePath)(`/projects/${c}/tasks`),{success:!0}}catch(a){return j.default.error({err:a},"Failed to move task"),{success:!1,error:"Failed to move task"}}}async function n(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};return await (0,h.lC)(a,{status:b}),await (0,i.createActivity)({companyUuid:c.companyUuid,projectUuid:d.projectUuid,targetType:"task",targetUuid:d.uuid,actorType:c.type,actorUuid:c.actorUuid,action:"force_status_change",value:JSON.stringify({from:d.status,to:b})}),{success:!0}}catch(a){return j.default.error({err:a},"Failed to force move task"),{success:!1,error:"Failed to force move task"}}}async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let{tasks:c}=await (0,h.Vk)({companyUuid:b.companyUuid,projectUuid:a,skip:0,take:1e3});return{success:!0,data:c}}catch(a){return j.default.error({err:a},"Failed to fetch tasks"),{success:!1,error:"Failed to fetch tasks"}}}async function p(a){let b=await (0,g.d)();if(!b)return{nodes:[],edges:[]};try{return await (0,h.Cm)(b.companyUuid,a)}catch(a){return j.default.error({err:a},"Failed to get project dependencies"),{nodes:[],edges:[]}}}(0,k.D)([m,n,o,p]),(0,e.A)(m,"705ad97d7b028a954e55e778520fea32e7a0b6ceed",null),(0,e.A)(n,"60c0ed7298ec8d71478312dcd6ac4845e6a82a6200",null),(0,e.A)(o,"404cee168ecdd47b66b7d210534ea1980c051a47ba",null),(0,e.A)(p,"40bc3748cee9ea9d6bb788d23580eb759bb45d9caf",null),d()}catch(a){d(a)}})},23582:(a,b,c)=>{"use strict";c.d(b,{H:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60c0ed7298ec8d71478312dcd6ac4845e6a82a6200",d.callServer,void 0,d.findSourceMapURL,"forceMoveTaskToColumnAction")},24879:(a,b,c)=>{"use strict";c.d(b,{o:()=>k});var d=c(10837),e=c(21968),f=c(46005);let g=(0,e.createContext)(null);var h=c(46801),i=c(72443);let j=a=>!a.isLayoutDirty&&a.willUpdate(!1),k=({children:a,id:b,inherit:c=!0})=>{let k=(0,e.useContext)(f.L),l=(0,e.useContext)(g),[m,n]=function(){let a=function(){let a=(0,e.useRef)(!1);return(0,i.E)(()=>(a.current=!0,()=>{a.current=!1}),[]),a}(),[b,c]=(0,e.useState)(0),d=(0,e.useCallback)(()=>{a.current&&c(b+1)},[b]);return[(0,e.useCallback)(()=>h.Gt.postRender(d),[d]),b]}(),o=(0,e.useRef)(null),p=k.id||l;null===o.current&&((a=>!0==(!0===a)||"id"===a)(c)&&p&&(b=b?p+"-"+b:p),o.current={id:b,group:!0===c&&k.group||function(){let a=new Set,b=new WeakMap,c=()=>a.forEach(j);return{add:d=>{a.add(d),b.set(d,d.addEventListener("willUpdate",c))},remove:d=>{a.delete(d);let e=b.get(d);e&&(e(),b.delete(d)),c()},dirty:c}}()});let q=(0,e.useMemo)(()=>({...o.current,forceRender:m}),[n]);return(0,d.jsx)(f.L.Provider,{value:q,children:a})}},29179:(a,b,c)=>{Promise.resolve().then(c.bind(c,90436))},29334:(a,b,c)=>{"use strict";c.d(b,{TaskViewToggle:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call TaskViewToggle() from the server but TaskViewToggle is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/dev/ai-pm/src/app/(dashboard)/projects/[uuid]/tasks/task-view-toggle.tsx","TaskViewToggle")},37066:(a,b,c)=>{"use strict";c.d(b,{A:()=>g});var d=c(77592),e=c(50117);let f=["en","zh"],g=(0,d.A)(async()=>{let a=await (0,e.UL)(),b=a.get("chorus-locale")?.value,d=b&&f.includes(b)?b:"en";return{locale:d,messages:(await c(76565)(`./${d}.json`)).default}})},39268:(a,b,c)=>{"use strict";c.d(b,{T:()=>q});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(65956),i=c(56149),j=c(9810),k=c(10694),l=c(96307),m=c(42424),n=c(49599),o=c(74113),p=c(10297);function q({projectUuid:a}){let b=(0,g.c)("tasks"),c=(0,f.useRouter)(),q=(0,f.usePathname)(),r=(0,f.useSearchParams)(),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)([]),[w,x]=(0,e.useState)(new Set),y=(0,e.useCallback)(a=>{let b=new URLSearchParams(r.toString());a.size>0?b.set("proposalUuids",Array.from(a).join(",")):b.delete("proposalUuids");let d=b.toString();c.replace(`${q}${d?`?${d}`:""}`,{scroll:!1})},[c,q,r]),z=(0,e.useCallback)(a=>{x(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),y(c),c})},[y]),A=(0,e.useCallback)(()=>{x(new Set),y(new Set)},[y]),B=w.size>0;return(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5 text-sm text-muted-foreground shrink-0",children:[(0,d.jsx)(h.A,{className:"size-4"}),(0,d.jsxs)("span",{children:[b("proposalFilter.label"),":"]})]}),(0,d.jsxs)(o.AM,{open:s,onOpenChange:t,children:[(0,d.jsx)(o.Wv,{asChild:!0,children:(0,d.jsxs)(m.$,{variant:"outline",size:"sm",role:"combobox","aria-expanded":s,className:(0,l.cn)("justify-between gap-1 min-w-[120px] max-w-[200px] md:min-w-[160px] md:max-w-none",B&&"border-[#C67A52] bg-[#FFF8F4]"),children:[(0,d.jsx)("span",{className:"truncate",children:B?b("proposalFilter.filtered",{filtered:w.size,total:u.length}):b("proposalFilter.allProposals")}),(0,d.jsx)(i.A,{className:"size-4 shrink-0 opacity-50"})]})}),(0,d.jsx)(o.hl,{className:"w-[300px] p-0",align:"start",children:(0,d.jsxs)(p.uB,{children:[(0,d.jsx)(p.G7,{placeholder:b("proposalFilter.search")}),(0,d.jsxs)(p.oI,{children:[(0,d.jsx)(p.xL,{children:b("proposalFilter.noResults")}),(0,d.jsx)(p.L$,{children:u.map(a=>{let c=w.has(a.uuid);return(0,d.jsxs)(p.h_,{value:a.title,onSelect:()=>z(a.uuid),className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)("div",{className:(0,l.cn)("flex size-4 shrink-0 items-center justify-center rounded-sm border",c?"border-[#C67A52] bg-[#C67A52] text-white":"border-muted-foreground/30"),children:c&&(0,d.jsx)(j.A,{className:"size-3"})}),(0,d.jsx)("span",{className:"truncate",children:a.title})]}),(0,d.jsx)(n.E,{variant:"secondary",className:"ml-2 shrink-0",children:b("proposalFilter.taskCount",{count:a.taskCount})})]},a.uuid)})})]})]})})]}),B&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"flex flex-wrap gap-1 max-w-full",children:u.filter(a=>w.has(a.uuid)).map(a=>(0,d.jsxs)(n.E,{variant:"outline",className:"gap-1 border-[#C67A52] bg-[#FFF8F4] text-[#C67A52]",children:[a.title,(0,d.jsx)("button",{type:"button",className:"ml-0.5 rounded-full hover:bg-[#C67A52]/20",onClick:()=>z(a.uuid),children:(0,d.jsx)(k.A,{className:"size-3"})})]},a.uuid))}),(0,d.jsx)(m.$,{variant:"ghost",size:"xs",onClick:A,className:"text-muted-foreground",children:b("proposalFilter.clear")})]})]})}},45519:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]])},63748:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{X:()=>n});var e=c(10023),f=c(66530),g=c(26555),h=c(82858),i=c(29662),j=c(71165),k=c(61413),l=c(29334),m=a([i,j,k]);async function n({projectUuid:a,initialSelectedTaskUuid:b}){let c=await (0,i.d)();c||(0,f.redirect)("/login");let d=await (0,g.A)();await (0,k.Yi)(c.companyUuid,a)||(0,f.redirect)("/projects");let{tasks:m}=await (0,j.Vk)({companyUuid:c.companyUuid,projectUuid:a,skip:0,take:1e3}),n=m.reduce((a,b)=>a+(b.storyPoints||0),0);return(0,e.jsxs)("div",{className:"flex h-full flex-col p-4 md:p-8",children:[(0,e.jsx)("div",{className:"mb-6 flex items-center justify-between",children:(0,e.jsxs)("div",{children:[(0,e.jsx)("h1",{className:"text-2xl font-semibold text-[#2C2C2C]",children:d("tasks.title")}),(0,e.jsxs)("div",{className:"mt-1 flex items-center gap-4",children:[(0,e.jsx)("p",{className:"text-sm text-[#6B6B6B]",children:d("tasks.subtitle")}),n>0&&(0,e.jsxs)("div",{className:"flex items-center gap-1.5 rounded-full bg-[#F5F2EC] px-3 py-1",children:[(0,e.jsx)(h.A,{className:"h-3.5 w-3.5 text-[#C67A52]"}),(0,e.jsxs)("span",{className:"text-xs font-medium text-[#6B6B6B]",children:[(0,e.jsx)("span",{className:"text-[#2C2C2C]",children:n.toFixed(1)})," ",d("tasks.agentHours")]})]})]})]})}),(0,e.jsx)(l.TaskViewToggle,{projectUuid:a,initialTasks:m,currentUserUuid:c.actorUuid,initialSelectedTaskUuid:b})]})}[i,j,k]=m.then?(await m)():m,d()}catch(a){d(a)}})},70890:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"0023c6f7ec24f54dd602497f497bf98da9e89b4a04":()=>g.vq,"400ede6c568b753e07aadbb23344821cedf6f043bb":()=>l.kq,"401d4f94bca46a545a7f42466d24e5d8085b2160da":()=>g.iY,"40332e4c2ef74df4e9a32775fd6d01c2f110a4236f":()=>l.xo,"403c4b2b8ac56840fd13e63448944e859aa9bdc446":()=>e.v5,"40414bcf29b14a9c5f50bdf855d7d8dad5de824a89":()=>g.p2,"404cee168ecdd47b66b7d210534ea1980c051a47ba":()=>f.pw,"405579ef25cfe80ae81a9f32e196203be1d8cc701b":()=>g.Yw,"4067ecc8485dfd2f454aa33f11d573790aff009abc":()=>g.hR,"409db7f6e003318164f6d5e905de5ef25499df6272":()=>e.Dv,"40a8fa8e23d47b2ad5bd7c7f5ae9ddae3d3edc1d75":()=>g.G3,"40aee19b1029eac01e076385a2cf67aa1bdaded488":()=>g.A0,"40bc3748cee9ea9d6bb788d23580eb759bb45d9caf":()=>f.nk,"40e5d68b0b0f55391a9abbf0e3595962d225f207ad":()=>k.F,"40f3289dbdb4d4008fd47038ad89ba12a49b6f70ea":()=>m.J,"40f4f3d8c7278702dbbfe13fdeede75f4f0b71c0a2":()=>j.f,"40f78ac5b8cb639898f587e8a1e82da30a8032f60d":()=>m.h,"6012b97cafa14fc00926d4fced8619f6e1d10640e1":()=>h.hD,"601ab55b8f259f4cc0f581d5c6434bd022bcd9b55b":()=>h.Nq,"602b418130f4d04150465b98e3f6ab21e04a52b96d":()=>g.bd,"606637b028fbe01af6ab76d974706bffa79f30dc94":()=>g.TV,"60a84eff1f453025947c8ae758adfc13b7f028f2e2":()=>l.wG,"60b352af4c9b80610567bb59dfa820b02a3932a864":()=>l.TK,"60b5c700d7e0e92702664292edd33eddb8c61f56ce":()=>g.y9,"60b676dc5952816cc03a8a179ffd5427257d5c2a64":()=>e.Tg,"60c0ed7298ec8d71478312dcd6ac4845e6a82a6200":()=>f.Hd,"60fbe608a98d9fa72d0dfcb00e257265809036a07b":()=>h.IY,"702487b066c812833e1e9f5c101f3db713a9f1ce7a":()=>g.qb,"70519761271750b6d87e832e8dbe4c0847af6b0df1":()=>i.s,"705ad97d7b028a954e55e778520fea32e7a0b6ceed":()=>f.yq,"70da7ad886a7c95b61008abdc2b487250aa7ec64d8":()=>i.d});var e=c(22299),f=c(19520),g=c(73393),h=c(71353),i=c(98581),j=c(64029),k=c(72189),l=c(22293),m=c(81751),n=a([e,f,g,h,i,j,k,l,m]);[e,f,g,h,i,j,k,l,m]=n.then?(await n)():n,d()}catch(a){d(a)}})},76565:(a,b,c)=>{var d={"./en.json":[87368,7368],"./zh.json":[72961,2961]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=76565,a.exports=e},77635:(a,b,c)=>{"use strict";c.d(b,{p:()=>e});var d=c(42377);let e=(0,d.createServerReference)("404cee168ecdd47b66b7d210534ea1980c051a47ba",d.callServer,void 0,d.findSourceMapURL,"fetchTasksAction")},79420:(a,b,c)=>{"use strict";c.d(b,{y:()=>e});var d=c(42377);let e=(0,d.createServerReference)("705ad97d7b028a954e55e778520fea32e7a0b6ceed",d.callServer,void 0,d.findSourceMapURL,"moveTaskToColumnAction")},82858:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]])},90436:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{TaskViewToggle:()=>x});var e=c(10837),f=c(21968),g=c(1007),h=c(9222),i=c(32552),j=c(45519),k=c(33407),l=c(92900),m=c(42424),n=c(49599),o=c(35198),p=c(96013),q=c(98625),r=c(39268),s=c(5514),t=c(92643),u=c(86104),v=c(31009),w=a([s,u]);[s,u]=w.then?(await w)():w;let y={open:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E3F2FD] text-[#1976D2]",in_progress:"bg-[#E8F5E9] text-[#5A9E6F]",to_verify:"bg-[#F3E5F5] text-[#7B1FA2]",done:"bg-[#E0F2F1] text-[#00796B]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"},z={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},A=[{id:"all",labelKey:"allStatuses",statuses:[]},{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}],B={high:"bg-red-100 text-red-700",medium:"bg-yellow-100 text-yellow-700",low:"bg-blue-100 text-blue-700"};function x({projectUuid:a,initialTasks:b,currentUserUuid:c,initialSelectedTaskUuid:d}){let w=(0,h.c)(),x=(0,p.a)(),C=(0,g.useSearchParams)(),[D,E]=(0,f.useState)("kanban"),F=`/projects/${a}/tasks`,{selectedId:G,openPanel:H,closePanel:I}=(0,q.T)(F,d),J=(0,f.useMemo)(()=>{let a=C.get("proposalUuids");if(!a)return null;let b=a.split(",").filter(Boolean);return b.length>0?new Set(b):null},[C]),[K,L]=(0,f.useState)(!1),[M,N]=(0,f.useState)(0),[O,P]=(0,f.useState)("all"),Q=(0,f.useMemo)(()=>G?b.find(a=>a.uuid===G)??null:null,[G,b]),R=(0,f.useCallback)(()=>{N(a=>a+1)},[]),S=(0,f.useMemo)(()=>J?b.filter(a=>a.proposalUuid&&J.has(a.proposalUuid)):b,[b,J]),T=(0,f.useMemo)(()=>{let a=A.find(a=>a.id===O);return a&&0!==a.statuses.length?S.filter(b=>a.statuses.includes(b.status)):S},[S,O]);return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("div",{className:"mb-4 overflow-x-auto",children:(0,e.jsx)(r.T,{projectUuid:a})}),(0,e.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-[#F5F2EC] p-1 w-fit",children:[x&&(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 gap-1.5 rounded-md px-3 text-xs ${"list"===D?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>E("list"),children:[(0,e.jsx)(i.A,{className:"h-3.5 w-3.5"}),w("tasks.listView")]}),!x&&(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 gap-1.5 rounded-md px-3 text-xs ${"kanban"===D?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>E("kanban"),children:[(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"}),w("tasks.kanbanView")]}),(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 gap-1.5 rounded-md px-3 text-xs ${"dag"===D?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>E("dag"),children:[(0,e.jsx)(k.A,{className:"h-3.5 w-3.5"}),w("tasks.dagView")]})]}),(0,e.jsxs)(m.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:()=>{I(),L(!0)},children:[(0,e.jsx)(l.A,{className:"mr-2 h-4 w-4"}),w("tasks.newTask")]})]}),"list"===D?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("div",{className:"mb-4 flex gap-1 overflow-x-auto border-b border-[#E5E0D8] pb-2",children:A.map(a=>{let b=0===a.statuses.length?S.length:S.filter(b=>a.statuses.includes(b.status)).length;return(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 shrink-0 rounded-md px-3 text-xs ${O===a.id?"bg-[#F5F2EC] text-[#2C2C2C] font-medium":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>P(a.id),children:["all"===a.id?w(`tasks.${a.labelKey}`):w(`status.${a.labelKey}`),(0,e.jsx)("span",{className:"ml-1.5 rounded-full bg-white px-1.5 py-0.5 text-[10px] font-medium text-[#6B6B6B]",children:b})]},a.id)})}),(0,e.jsx)("div",{className:"flex-1 space-y-2 overflow-y-auto",children:0===T.length?(0,e.jsx)(v.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:w("tasks.noTasks")}):T.map(a=>(0,e.jsxs)(o.Zp,{className:"cursor-pointer border-[#E5E0D8] bg-white p-4 transition-all hover:border-[#C67A52] hover:shadow-sm",onClick:()=>H(a.uuid),children:[(0,e.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("h4",{className:"font-medium text-[#2C2C2C] truncate",children:a.title}),a.description&&(0,e.jsx)("p",{className:"mt-1 line-clamp-1 text-sm text-[#6B6B6B]",children:a.description})]}),(0,e.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[null!=a.storyPoints&&a.storyPoints>0&&(0,e.jsxs)("span",{className:"rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:[a.storyPoints,"h"]}),(0,e.jsx)(n.E,{className:B[a.priority]||"",children:w(`priority.${a.priority}`)}),(0,e.jsx)(n.E,{className:y[a.status]||"",children:w(`status.${z[a.status]||a.status}`)})]})]}),a.assignee&&(0,e.jsx)("div",{className:"mt-2 flex items-center gap-1.5 text-xs text-[#9A9A9A]",children:(0,e.jsx)("span",{className:"truncate",children:a.assignee.name})})]},a.uuid))}),Q&&(0,e.jsx)(u.v,{task:Q,projectUuid:a,currentUserUuid:c,onClose:I,onDependencyChange:R})]}):"kanban"===D?(0,e.jsx)(s.y,{projectUuid:a,initialTasks:S,currentUserUuid:c,selectedTaskUuid:G,onTaskSelect:H,onPanelClose:I,proposalUuidFilter:J}):(0,e.jsxs)("div",{className:"flex flex-1 flex-col",children:[(0,e.jsx)(t.i,{projectUuid:a,onTaskSelect:a=>H(a),refreshKey:M}),Q&&(0,e.jsx)(u.v,{task:Q,projectUuid:a,currentUserUuid:c,onClose:I,onDependencyChange:R})]}),K&&!Q&&(0,e.jsx)(u.v,{task:null,projectUuid:a,currentUserUuid:c,onClose:()=>L(!1),onCreated:()=>L(!1)})]})}d()}catch(a){d(a)}})},91533:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(73426);let e=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),f=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var g={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let h=(0,d.forwardRef)(({color:a="currentColor",size:b=24,strokeWidth:c=2,absoluteStrokeWidth:f,className:h="",children:i,iconNode:j,...k},l)=>(0,d.createElement)("svg",{ref:l,...g,width:b,height:b,stroke:a,strokeWidth:f?24*Number(c)/Number(b):c,className:e("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,b])=>(0,d.createElement)(a,b)),...Array.isArray(i)?i:[i]])),i=(a,b)=>{let c=(0,d.forwardRef)(({className:c,...g},i)=>(0,d.createElement)(h,{ref:i,iconNode:b,className:e(`lucide-${f(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,c),...g}));return c.displayName=f(a),c}},92643:(a,b,c)=>{"use strict";c.d(b,{i:()=>p});var d=c(10837),e=c(21968),f=c(47797);c(63410);var g=c(9222),h=c(1007),i=c(86460),j=c(10694),k=c(42424),l=c(60265),m=c(42377);let n=(0,m.createServerReference)("40bc3748cee9ea9d6bb788d23580eb759bb45d9caf",m.callServer,void 0,m.findSourceMapURL,"getProjectDependenciesAction");var o=c(84986);function p({projectUuid:a,onTaskSelect:b,refreshKey:c}){let m=(0,g.c)(),p=(0,h.useSearchParams)(),[q,r,s]=(0,f.ck)([]),[t,u,v]=(0,f.fM)([]),[w,x]=(0,e.useState)(!0),[y,z]=(0,e.useState)(null),A=(0,e.useMemo)(()=>{let a=p.get("proposalUuids");if(!a)return null;let b=a.split(",").filter(Boolean);return b.length>0?new Set(b):null},[p]),B=(0,e.useCallback)(async()=>{x(!0);let b=await n(a),c=b.nodes,d=b.edges;if(A){let a=new Set((c=b.nodes.filter(a=>null!==a.proposalUuid&&A.has(a.proposalUuid))).map(a=>a.uuid));d=b.edges.filter(b=>a.has(b.from)&&a.has(b.to))}let e=c.map(a=>({id:a.uuid,type:"taskNode",position:{x:0,y:0},data:{title:a.title,status:a.status,priority:a.priority,proposalUuid:a.proposalUuid}})),f=d.map((a,b)=>({id:`e-${b}`,source:a.to,target:a.from,...l.qK})),{nodes:g,edges:h}=(0,l.nF)(e,f);r(g),u(h),x(!1)},[a,A,r,u]),C=(0,e.useCallback)(async a=>{if(!a.source||!a.target)return;z(null);let b=a.target,c=a.source,d=await (0,o.w)(b,c);if(!d.success)return void z(d.error||m("tasks.failedToAddDep"));await B()},[B]),D=(0,e.useCallback)((a,c)=>{b(c.id)},[b]);return w?(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,d.jsx)(i.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):0===q.length?(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-[#9A9A9A]",children:m("tasks.noTasksToDisplay")}):(0,d.jsxs)("div",{className:"flex-1 rounded-xl border border-[#E5E0D8] bg-[#FAFAF8] relative",children:[y&&(0,d.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:[y,(0,d.jsx)(k.$,{variant:"ghost",size:"icon",className:"ml-2 h-5 w-5 font-medium hover:text-red-900",onClick:()=>z(null),children:(0,d.jsx)(j.A,{className:"h-3 w-3"})})]}),(0,d.jsxs)(f.Gc,{nodes:q,edges:t,onNodesChange:s,onEdgesChange:v,onConnect:C,onNodeClick:D,nodeTypes:l.c_,fitView:!0,fitViewOptions:{padding:.2},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},children:[(0,d.jsx)(f.VS,{color:"#E5E0D8",gap:20}),(0,d.jsx)(f.H2,{className:"[&>button]:border-[#E5E0D8] [&>button]:bg-white [&>button]:text-[#2C2C2C] [&>button:hover]:bg-[#FAF8F4]"})]})]})}},96013:(a,b,c)=>{"use strict";c.d(b,{a:()=>e});var d=c(21968);function e(){let[a,b]=(0,d.useState)(!1);return a}}};
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=7217,exports.ids=[7217],exports.modules={47217:(a,b,c)=>{c.d(b,{diagram:()=>aa});var d=c(6335),e=c(42292),f=c(84030);function g(a,b){let c;if(void 0===b)for(let b of a)null!=b&&(c>b||void 0===c&&b>=b)&&(c=b);else{let d=-1;for(let e of a)null!=(e=b(e,++d,a))&&(c>e||void 0===c&&e>=e)&&(c=e)}return c}function h(a){return a.target.depth}function i(a,b){return a.sourceLinks.length?a.depth:b-1}function j(a,b){let c=0;if(void 0===b)for(let b of a)(b*=1)&&(c+=b);else{let d=-1;for(let e of a)(e=+b(e,++d,a))&&(c+=e)}return c}function k(a,b){let c;if(void 0===b)for(let b of a)null!=b&&(c<b||void 0===c&&b>=b)&&(c=b);else{let d=-1;for(let e of a)null!=(e=b(e,++d,a))&&(c<e||void 0===c&&e>=e)&&(c=e)}return c}function l(a){return function(){return a}}function m(a,b){return o(a.source,b.source)||a.index-b.index}function n(a,b){return o(a.target,b.target)||a.index-b.index}function o(a,b){return a.y0-b.y0}function p(a){return a.value}function q(a){return a.index}function r(a){return a.nodes}function s(a){return a.links}function t(a,b){let c=a.get(b);if(!c)throw Error("missing: "+b);return c}function u({nodes:a}){for(let b of a){let a=b.y0,c=a;for(let c of b.sourceLinks)c.y0=a+c.width/2,a+=c.width;for(let a of b.targetLinks)a.y1=c+a.width/2,c+=a.width}}var v=Math.PI,w=2*v,x=w-1e-6;function y(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function z(){return new y}y.prototype=z.prototype={constructor:y,moveTo:function(a,b){this._+="M"+(this._x0=this._x1=+a)+","+(this._y0=this._y1=+b)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(a,b){this._+="L"+(this._x1=+a)+","+(this._y1=+b)},quadraticCurveTo:function(a,b,c,d){this._+="Q"+ +a+","+ +b+","+(this._x1=+c)+","+(this._y1=+d)},bezierCurveTo:function(a,b,c,d,e,f){this._+="C"+ +a+","+ +b+","+ +c+","+ +d+","+(this._x1=+e)+","+(this._y1=+f)},arcTo:function(a,b,c,d,e){a*=1,b*=1,c*=1,d*=1,e*=1;var f=this._x1,g=this._y1,h=c-a,i=d-b,j=f-a,k=g-b,l=j*j+k*k;if(e<0)throw Error("negative radius: "+e);if(null===this._x1)this._+="M"+(this._x1=a)+","+(this._y1=b);else if(l>1e-6)if(Math.abs(k*h-i*j)>1e-6&&e){var m=c-f,n=d-g,o=h*h+i*i,p=Math.sqrt(o),q=Math.sqrt(l),r=e*Math.tan((v-Math.acos((o+l-(m*m+n*n))/(2*p*q)))/2),s=r/q,t=r/p;Math.abs(s-1)>1e-6&&(this._+="L"+(a+s*j)+","+(b+s*k)),this._+="A"+e+","+e+",0,0,"+ +(k*m>j*n)+","+(this._x1=a+t*h)+","+(this._y1=b+t*i)}else this._+="L"+(this._x1=a)+","+(this._y1=b)},arc:function(a,b,c,d,e,f){a*=1,b*=1,c*=1,f=!!f;var g=c*Math.cos(d),h=c*Math.sin(d),i=a+g,j=b+h,k=1^f,l=f?d-e:e-d;if(c<0)throw Error("negative radius: "+c);null===this._x1?this._+="M"+i+","+j:(Math.abs(this._x1-i)>1e-6||Math.abs(this._y1-j)>1e-6)&&(this._+="L"+i+","+j),c&&(l<0&&(l=l%w+w),l>x?this._+="A"+c+","+c+",0,1,"+k+","+(a-g)+","+(b-h)+"A"+c+","+c+",0,1,"+k+","+(this._x1=i)+","+(this._y1=j):l>1e-6&&(this._+="A"+c+","+c+",0,"+ +(l>=v)+","+k+","+(this._x1=a+c*Math.cos(e))+","+(this._y1=b+c*Math.sin(e))))},rect:function(a,b,c,d){this._+="M"+(this._x0=this._x1=+a)+","+(this._y0=this._y1=+b)+"h"+ +c+"v"+ +d+"h"+-c+"Z"},toString:function(){return this._}};var A=Array.prototype.slice;function B(a){return function(){return a}}function C(a){return a[0]}function D(a){return a[1]}function E(a){return a.source}function F(a){return a.target}function G(a,b,c,d,e){a.moveTo(b,c),a.bezierCurveTo(b=(b+d)/2,c,b,e,d,e)}function H(a){return[a.source.x1,a.y0]}function I(a){return[a.target.x0,a.y1]}var J=function(){var a=(0,e.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,9],c=[1,10],d=[1,5,10,12],f={trace:(0,e.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:(0,e.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 7:let i=d.findOrCreateNode(f[h-4].trim().replaceAll('""','"')),j=d.findOrCreateNode(f[h-2].trim().replaceAll('""','"')),k=parseFloat(f[h].trim());d.addLink(i,j,k);break;case 8:case 9:case 11:this.$=f[h];break;case 10:this.$=f[h-1]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:b,20:c},{1:[2,6],7:11,10:[1,12]},a(c,[2,4],{9:13,5:[1,14]}),{12:[1,15]},a(d,[2,8]),a(d,[2,9]),{19:[1,16]},a(d,[2,11]),{1:[2,1]},{1:[2,5]},a(c,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:b,20:c},{15:18,16:7,17:8,18:b,20:c},{18:[1,19]},a(c,[2,3]),{12:[1,20]},a(d,[2,10]),{15:21,16:7,17:8,18:b,20:c},a([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:(0,e.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,e.K2)(function(a){var b=this,c=[0],d=[],f=[null],g=[],h=this.table,i="",j=0,k=0,l=0,m=g.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;g.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,e.K2)(function(a){c.length=c.length-2*a,f.length=f.length-a,g.length=g.length-a},"popStack"),(0,e.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=h[v]&&h[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],h[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),f.push(n.yytext),g.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,i=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=f[f.length-z],C._$={first_line:g[g.length-(z||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(z||1)].first_column,last_column:g[g.length-1].last_column},r&&(C._$.range=[g[g.length-(z||1)].range[0],g[g.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[i,k,j,o,w[1],f,g].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),f=f.slice(0,-1*z),g=g.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),f.push(C.$),g.push(C._$),A=h[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function g(){this.yy={}}return f.lexer={EOF:1,parseError:(0,e.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,e.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,e.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:(0,e.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,e.K2)(function(){return this._more=!0,this},"more"),reject:(0,e.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,e.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,e.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,e.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,e.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,e.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,e.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,e.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,e.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,e.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,e.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,e.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,e.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,e.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,e.K2)(function(a,b,c,d){switch(c){case 0:case 1:return this.pushState("csv"),4;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;case 6:return 20;case 7:return this.popState("escaped_text"),18;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}},(0,e.K2)(g,"Parser"),g.prototype=f,f.Parser=g,new g}();J.parser=J;var K=[],L=[],M=new Map,N=(0,e.K2)(()=>{K=[],L=[],M=new Map,(0,d.IU)()},"clear"),O=class{constructor(a,b,c=0){this.source=a,this.target=b,this.value=c}static{(0,e.K2)(this,"SankeyLink")}},P=(0,e.K2)((a,b,c)=>{K.push(new O(a,b,c))},"addLink"),Q=class{constructor(a){this.ID=a}static{(0,e.K2)(this,"SankeyNode")}},R=(0,e.K2)(a=>{a=d.Y2.sanitizeText(a,(0,d.D7)());let b=M.get(a);return void 0===b&&(b=new Q(a),M.set(a,b),L.push(b)),b},"findOrCreateNode"),S=(0,e.K2)(()=>L,"getNodes"),T=(0,e.K2)(()=>K,"getLinks"),U=(0,e.K2)(()=>({nodes:L.map(a=>({id:a.ID})),links:K.map(a=>({source:a.source.ID,target:a.target.ID,value:a.value}))}),"getGraph"),V={nodesMap:M,getConfig:(0,e.K2)(()=>(0,d.D7)().sankey,"getConfig"),getNodes:S,getLinks:T,getGraph:U,addLink:P,findOrCreateNode:R,getAccTitle:d.iN,setAccTitle:d.SV,getAccDescription:d.m7,setAccDescription:d.EI,getDiagramTitle:d.ab,setDiagramTitle:d.ke,clear:N},W=class a{static{(0,e.K2)(this,"Uid")}static{this.count=0}static next(b){return new a(b+ ++a.count)}constructor(a){this.id=a,this.href=`#${a}`}toString(){return"url("+this.href+")"}},X={left:function(a){return a.depth},right:function(a,b){return b-1-a.height},center:function(a){return a.targetLinks.length?a.depth:a.sourceLinks.length?g(a.sourceLinks,h)-1:0},justify:i},Y=(0,e.K2)(function(a,b,c,h){let v,w,{securityLevel:x,sankey:y}=(0,d.D7)(),J=d.ME.sankey;"sandbox"===x&&(v=(0,f.Ltv)("#i"+b));let K="sandbox"===x?(0,f.Ltv)(v.nodes()[0].contentDocument.body):(0,f.Ltv)("body"),L="sandbox"===x?K.select(`[id="${b}"]`):(0,f.Ltv)(`[id="${b}"]`),M=y?.width??J.width,N=y?.height??J.width,O=y?.useMaxWidth??J.useMaxWidth,P=y?.nodeAlignment??J.nodeAlignment,Q=y?.prefix??J.prefix,R=y?.suffix??J.suffix,S=y?.showValues??J.showValues,T=h.db.getGraph(),U=X[P];(function(){let a,b,c=0,d=0,e=1,f=1,h=24,v=8,w,x=q,y=i,z=r,A=s,B=6;function C(){let i={nodes:z.apply(null,arguments),links:A.apply(null,arguments)};return function({nodes:a,links:c}){for(let[b,c]of a.entries())c.index=b,c.sourceLinks=[],c.targetLinks=[];let d=new Map(a.map((b,c)=>[x(b,c,a),b]));for(let[a,b]of c.entries()){b.index=a;let{source:c,target:e}=b;"object"!=typeof c&&(c=b.source=t(d,c)),"object"!=typeof e&&(e=b.target=t(d,e)),c.sourceLinks.push(b),e.targetLinks.push(b)}if(null!=b)for(let{sourceLinks:c,targetLinks:d}of a)c.sort(b),d.sort(b)}(i),function({nodes:a}){for(let b of a)b.value=void 0===b.fixedValue?Math.max(j(b.sourceLinks,p),j(b.targetLinks,p)):b.fixedValue}(i),function({nodes:a}){let b=a.length,c=new Set(a),d=new Set,e=0;for(;c.size;){for(let a of c)for(let{target:b}of(a.depth=e,a.sourceLinks))d.add(b);if(++e>b)throw Error("circular link");c=d,d=new Set}}(i),function({nodes:a}){let b=a.length,c=new Set(a),d=new Set,e=0;for(;c.size;){for(let a of c)for(let{source:b}of(a.height=e,a.targetLinks))d.add(b);if(++e>b)throw Error("circular link");c=d,d=new Set}}(i),function(i){let l=function({nodes:b}){let d=k(b,a=>a.depth)+1,f=(e-c-h)/(d-1),g=Array(d);for(let a of b){let b=Math.max(0,Math.min(d-1,Math.floor(y.call(null,a,d))));a.layer=b,a.x0=c+b*f,a.x1=a.x0+h,g[b]?g[b].push(a):g[b]=[a]}if(a)for(let b of g)b.sort(a);return g}(i);w=Math.min(v,(f-d)/(k(l,a=>a.length)-1));let q=g(l,a=>(f-d-(a.length-1)*w)/j(a,p));for(let a of l){let c=d;for(let b of a)for(let a of(b.y0=c,b.y1=c+b.value*q,c=b.y1+w,b.sourceLinks))a.width=a.value*q;c=(f-c+w)/(a.length+1);for(let b=0;b<a.length;++b){let d=a[b];d.y0+=c*(b+1),d.y1+=c*(b+1)}var r=a;if(void 0===b)for(let{sourceLinks:a,targetLinks:b}of r)a.sort(n),b.sort(m)}for(let b=0;b<B;++b){let c=Math.pow(.99,b),d=Math.max(1-c,(b+1)/B);(function(b,c,d){for(let e=b.length,f=e-2;f>=0;--f){let e=b[f];for(let a of e){let b=0,d=0;for(let{target:c,value:e}of a.sourceLinks){let f=e*(c.layer-a.layer);b+=function(a,b){let c=b.y0-(b.targetLinks.length-1)*w/2;for(let{source:d,width:e}of b.targetLinks){if(d===a)break;c+=e+w}for(let{target:d,width:e}of a.sourceLinks){if(d===b)break;c-=e}return c}(a,c)*f,d+=f}if(!(d>0))continue;let e=(b/d-a.y0)*c;a.y0+=e,a.y1+=e,G(a)}void 0===a&&e.sort(o),D(e,d)}})(l,c,d),function(b,c,d){for(let e=1,f=b.length;e<f;++e){let f=b[e];for(let a of f){let b=0,d=0;for(let{source:c,value:e}of a.targetLinks){let f=e*(a.layer-c.layer);b+=function(a,b){let c=a.y0-(a.sourceLinks.length-1)*w/2;for(let{target:d,width:e}of a.sourceLinks){if(d===b)break;c+=e+w}for(let{source:d,width:e}of b.targetLinks){if(d===a)break;c-=e}return c}(c,a)*f,d+=f}if(!(d>0))continue;let e=(b/d-a.y0)*c;a.y0+=e,a.y1+=e,G(a)}void 0===a&&f.sort(o),D(f,d)}}(l,c,d)}}(i),u(i),i}function D(a,b){let c=a.length>>1,e=a[c];F(a,e.y0-w,c-1,b),E(a,e.y1+w,c+1,b),F(a,f,a.length-1,b),E(a,d,0,b)}function E(a,b,c,d){for(;c<a.length;++c){let e=a[c],f=(b-e.y0)*d;f>1e-6&&(e.y0+=f,e.y1+=f),b=e.y1+w}}function F(a,b,c,d){for(;c>=0;--c){let e=a[c],f=(e.y1-b)*d;f>1e-6&&(e.y0-=f,e.y1-=f),b=e.y0-w}}function G({sourceLinks:a,targetLinks:c}){if(void 0===b){for(let{source:{sourceLinks:a}}of c)a.sort(n);for(let{target:{targetLinks:b}}of a)b.sort(m)}}return C.update=function(a){return u(a),a},C.nodeId=function(a){return arguments.length?(x="function"==typeof a?a:l(a),C):x},C.nodeAlign=function(a){return arguments.length?(y="function"==typeof a?a:l(a),C):y},C.nodeSort=function(b){return arguments.length?(a=b,C):a},C.nodeWidth=function(a){return arguments.length?(h=+a,C):h},C.nodePadding=function(a){return arguments.length?(v=w=+a,C):v},C.nodes=function(a){return arguments.length?(z="function"==typeof a?a:l(a),C):z},C.links=function(a){return arguments.length?(A="function"==typeof a?a:l(a),C):A},C.linkSort=function(a){return arguments.length?(b=a,C):b},C.size=function(a){return arguments.length?(c=d=0,e=+a[0],f=+a[1],C):[e-c,f-d]},C.extent=function(a){return arguments.length?(c=+a[0][0],e=+a[1][0],d=+a[0][1],f=+a[1][1],C):[[c,d],[e,f]]},C.iterations=function(a){return arguments.length?(B=+a,C):B},C})().nodeId(a=>a.id).nodeWidth(10).nodePadding(10+15*!!S).nodeAlign(U).extent([[0,0],[M,N]])(T);let V=(0,f.UMr)(f.zt);L.append("g").attr("class","nodes").selectAll(".node").data(T.nodes).join("g").attr("class","node").attr("id",a=>(a.uid=W.next("node-")).id).attr("transform",function(a){return"translate("+a.x0+","+a.y0+")"}).attr("x",a=>a.x0).attr("y",a=>a.y0).append("rect").attr("height",a=>a.y1-a.y0).attr("width",a=>a.x1-a.x0).attr("fill",a=>V(a.id));let Y=(0,e.K2)(({id:a,value:b})=>S?`${a}
1
+ "use strict";exports.id=7217,exports.ids=[7217],exports.modules={47217:(a,b,c)=>{c.d(b,{diagram:()=>aa});var d=c(6335),e=c(42292),f=c(72636);function g(a,b){let c;if(void 0===b)for(let b of a)null!=b&&(c>b||void 0===c&&b>=b)&&(c=b);else{let d=-1;for(let e of a)null!=(e=b(e,++d,a))&&(c>e||void 0===c&&e>=e)&&(c=e)}return c}function h(a){return a.target.depth}function i(a,b){return a.sourceLinks.length?a.depth:b-1}function j(a,b){let c=0;if(void 0===b)for(let b of a)(b*=1)&&(c+=b);else{let d=-1;for(let e of a)(e=+b(e,++d,a))&&(c+=e)}return c}function k(a,b){let c;if(void 0===b)for(let b of a)null!=b&&(c<b||void 0===c&&b>=b)&&(c=b);else{let d=-1;for(let e of a)null!=(e=b(e,++d,a))&&(c<e||void 0===c&&e>=e)&&(c=e)}return c}function l(a){return function(){return a}}function m(a,b){return o(a.source,b.source)||a.index-b.index}function n(a,b){return o(a.target,b.target)||a.index-b.index}function o(a,b){return a.y0-b.y0}function p(a){return a.value}function q(a){return a.index}function r(a){return a.nodes}function s(a){return a.links}function t(a,b){let c=a.get(b);if(!c)throw Error("missing: "+b);return c}function u({nodes:a}){for(let b of a){let a=b.y0,c=a;for(let c of b.sourceLinks)c.y0=a+c.width/2,a+=c.width;for(let a of b.targetLinks)a.y1=c+a.width/2,c+=a.width}}var v=Math.PI,w=2*v,x=w-1e-6;function y(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function z(){return new y}y.prototype=z.prototype={constructor:y,moveTo:function(a,b){this._+="M"+(this._x0=this._x1=+a)+","+(this._y0=this._y1=+b)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(a,b){this._+="L"+(this._x1=+a)+","+(this._y1=+b)},quadraticCurveTo:function(a,b,c,d){this._+="Q"+ +a+","+ +b+","+(this._x1=+c)+","+(this._y1=+d)},bezierCurveTo:function(a,b,c,d,e,f){this._+="C"+ +a+","+ +b+","+ +c+","+ +d+","+(this._x1=+e)+","+(this._y1=+f)},arcTo:function(a,b,c,d,e){a*=1,b*=1,c*=1,d*=1,e*=1;var f=this._x1,g=this._y1,h=c-a,i=d-b,j=f-a,k=g-b,l=j*j+k*k;if(e<0)throw Error("negative radius: "+e);if(null===this._x1)this._+="M"+(this._x1=a)+","+(this._y1=b);else if(l>1e-6)if(Math.abs(k*h-i*j)>1e-6&&e){var m=c-f,n=d-g,o=h*h+i*i,p=Math.sqrt(o),q=Math.sqrt(l),r=e*Math.tan((v-Math.acos((o+l-(m*m+n*n))/(2*p*q)))/2),s=r/q,t=r/p;Math.abs(s-1)>1e-6&&(this._+="L"+(a+s*j)+","+(b+s*k)),this._+="A"+e+","+e+",0,0,"+ +(k*m>j*n)+","+(this._x1=a+t*h)+","+(this._y1=b+t*i)}else this._+="L"+(this._x1=a)+","+(this._y1=b)},arc:function(a,b,c,d,e,f){a*=1,b*=1,c*=1,f=!!f;var g=c*Math.cos(d),h=c*Math.sin(d),i=a+g,j=b+h,k=1^f,l=f?d-e:e-d;if(c<0)throw Error("negative radius: "+c);null===this._x1?this._+="M"+i+","+j:(Math.abs(this._x1-i)>1e-6||Math.abs(this._y1-j)>1e-6)&&(this._+="L"+i+","+j),c&&(l<0&&(l=l%w+w),l>x?this._+="A"+c+","+c+",0,1,"+k+","+(a-g)+","+(b-h)+"A"+c+","+c+",0,1,"+k+","+(this._x1=i)+","+(this._y1=j):l>1e-6&&(this._+="A"+c+","+c+",0,"+ +(l>=v)+","+k+","+(this._x1=a+c*Math.cos(e))+","+(this._y1=b+c*Math.sin(e))))},rect:function(a,b,c,d){this._+="M"+(this._x0=this._x1=+a)+","+(this._y0=this._y1=+b)+"h"+ +c+"v"+ +d+"h"+-c+"Z"},toString:function(){return this._}};var A=Array.prototype.slice;function B(a){return function(){return a}}function C(a){return a[0]}function D(a){return a[1]}function E(a){return a.source}function F(a){return a.target}function G(a,b,c,d,e){a.moveTo(b,c),a.bezierCurveTo(b=(b+d)/2,c,b,e,d,e)}function H(a){return[a.source.x1,a.y0]}function I(a){return[a.target.x0,a.y1]}var J=function(){var a=(0,e.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,9],c=[1,10],d=[1,5,10,12],f={trace:(0,e.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:(0,e.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 7:let i=d.findOrCreateNode(f[h-4].trim().replaceAll('""','"')),j=d.findOrCreateNode(f[h-2].trim().replaceAll('""','"')),k=parseFloat(f[h].trim());d.addLink(i,j,k);break;case 8:case 9:case 11:this.$=f[h];break;case 10:this.$=f[h-1]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:b,20:c},{1:[2,6],7:11,10:[1,12]},a(c,[2,4],{9:13,5:[1,14]}),{12:[1,15]},a(d,[2,8]),a(d,[2,9]),{19:[1,16]},a(d,[2,11]),{1:[2,1]},{1:[2,5]},a(c,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:b,20:c},{15:18,16:7,17:8,18:b,20:c},{18:[1,19]},a(c,[2,3]),{12:[1,20]},a(d,[2,10]),{15:21,16:7,17:8,18:b,20:c},a([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:(0,e.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,e.K2)(function(a){var b=this,c=[0],d=[],f=[null],g=[],h=this.table,i="",j=0,k=0,l=0,m=g.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;g.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,e.K2)(function(a){c.length=c.length-2*a,f.length=f.length-a,g.length=g.length-a},"popStack"),(0,e.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=h[v]&&h[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],h[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),f.push(n.yytext),g.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,i=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=f[f.length-z],C._$={first_line:g[g.length-(z||1)].first_line,last_line:g[g.length-1].last_line,first_column:g[g.length-(z||1)].first_column,last_column:g[g.length-1].last_column},r&&(C._$.range=[g[g.length-(z||1)].range[0],g[g.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[i,k,j,o,w[1],f,g].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),f=f.slice(0,-1*z),g=g.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),f.push(C.$),g.push(C._$),A=h[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function g(){this.yy={}}return f.lexer={EOF:1,parseError:(0,e.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,e.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,e.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:(0,e.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var e=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,e.K2)(function(){return this._more=!0,this},"more"),reject:(0,e.K2)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,e.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,e.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,e.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,e.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,e.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,e.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,e.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,e.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,e.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,e.K2)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,e.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,e.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,e.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,e.K2)(function(a,b,c,d){switch(c){case 0:case 1:return this.pushState("csv"),4;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;case 6:return 20;case 7:return this.popState("escaped_text"),18;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}},(0,e.K2)(g,"Parser"),g.prototype=f,f.Parser=g,new g}();J.parser=J;var K=[],L=[],M=new Map,N=(0,e.K2)(()=>{K=[],L=[],M=new Map,(0,d.IU)()},"clear"),O=class{constructor(a,b,c=0){this.source=a,this.target=b,this.value=c}static{(0,e.K2)(this,"SankeyLink")}},P=(0,e.K2)((a,b,c)=>{K.push(new O(a,b,c))},"addLink"),Q=class{constructor(a){this.ID=a}static{(0,e.K2)(this,"SankeyNode")}},R=(0,e.K2)(a=>{a=d.Y2.sanitizeText(a,(0,d.D7)());let b=M.get(a);return void 0===b&&(b=new Q(a),M.set(a,b),L.push(b)),b},"findOrCreateNode"),S=(0,e.K2)(()=>L,"getNodes"),T=(0,e.K2)(()=>K,"getLinks"),U=(0,e.K2)(()=>({nodes:L.map(a=>({id:a.ID})),links:K.map(a=>({source:a.source.ID,target:a.target.ID,value:a.value}))}),"getGraph"),V={nodesMap:M,getConfig:(0,e.K2)(()=>(0,d.D7)().sankey,"getConfig"),getNodes:S,getLinks:T,getGraph:U,addLink:P,findOrCreateNode:R,getAccTitle:d.iN,setAccTitle:d.SV,getAccDescription:d.m7,setAccDescription:d.EI,getDiagramTitle:d.ab,setDiagramTitle:d.ke,clear:N},W=class a{static{(0,e.K2)(this,"Uid")}static{this.count=0}static next(b){return new a(b+ ++a.count)}constructor(a){this.id=a,this.href=`#${a}`}toString(){return"url("+this.href+")"}},X={left:function(a){return a.depth},right:function(a,b){return b-1-a.height},center:function(a){return a.targetLinks.length?a.depth:a.sourceLinks.length?g(a.sourceLinks,h)-1:0},justify:i},Y=(0,e.K2)(function(a,b,c,h){let v,w,{securityLevel:x,sankey:y}=(0,d.D7)(),J=d.ME.sankey;"sandbox"===x&&(v=(0,f.Ltv)("#i"+b));let K="sandbox"===x?(0,f.Ltv)(v.nodes()[0].contentDocument.body):(0,f.Ltv)("body"),L="sandbox"===x?K.select(`[id="${b}"]`):(0,f.Ltv)(`[id="${b}"]`),M=y?.width??J.width,N=y?.height??J.width,O=y?.useMaxWidth??J.useMaxWidth,P=y?.nodeAlignment??J.nodeAlignment,Q=y?.prefix??J.prefix,R=y?.suffix??J.suffix,S=y?.showValues??J.showValues,T=h.db.getGraph(),U=X[P];(function(){let a,b,c=0,d=0,e=1,f=1,h=24,v=8,w,x=q,y=i,z=r,A=s,B=6;function C(){let i={nodes:z.apply(null,arguments),links:A.apply(null,arguments)};return function({nodes:a,links:c}){for(let[b,c]of a.entries())c.index=b,c.sourceLinks=[],c.targetLinks=[];let d=new Map(a.map((b,c)=>[x(b,c,a),b]));for(let[a,b]of c.entries()){b.index=a;let{source:c,target:e}=b;"object"!=typeof c&&(c=b.source=t(d,c)),"object"!=typeof e&&(e=b.target=t(d,e)),c.sourceLinks.push(b),e.targetLinks.push(b)}if(null!=b)for(let{sourceLinks:c,targetLinks:d}of a)c.sort(b),d.sort(b)}(i),function({nodes:a}){for(let b of a)b.value=void 0===b.fixedValue?Math.max(j(b.sourceLinks,p),j(b.targetLinks,p)):b.fixedValue}(i),function({nodes:a}){let b=a.length,c=new Set(a),d=new Set,e=0;for(;c.size;){for(let a of c)for(let{target:b}of(a.depth=e,a.sourceLinks))d.add(b);if(++e>b)throw Error("circular link");c=d,d=new Set}}(i),function({nodes:a}){let b=a.length,c=new Set(a),d=new Set,e=0;for(;c.size;){for(let a of c)for(let{source:b}of(a.height=e,a.targetLinks))d.add(b);if(++e>b)throw Error("circular link");c=d,d=new Set}}(i),function(i){let l=function({nodes:b}){let d=k(b,a=>a.depth)+1,f=(e-c-h)/(d-1),g=Array(d);for(let a of b){let b=Math.max(0,Math.min(d-1,Math.floor(y.call(null,a,d))));a.layer=b,a.x0=c+b*f,a.x1=a.x0+h,g[b]?g[b].push(a):g[b]=[a]}if(a)for(let b of g)b.sort(a);return g}(i);w=Math.min(v,(f-d)/(k(l,a=>a.length)-1));let q=g(l,a=>(f-d-(a.length-1)*w)/j(a,p));for(let a of l){let c=d;for(let b of a)for(let a of(b.y0=c,b.y1=c+b.value*q,c=b.y1+w,b.sourceLinks))a.width=a.value*q;c=(f-c+w)/(a.length+1);for(let b=0;b<a.length;++b){let d=a[b];d.y0+=c*(b+1),d.y1+=c*(b+1)}var r=a;if(void 0===b)for(let{sourceLinks:a,targetLinks:b}of r)a.sort(n),b.sort(m)}for(let b=0;b<B;++b){let c=Math.pow(.99,b),d=Math.max(1-c,(b+1)/B);(function(b,c,d){for(let e=b.length,f=e-2;f>=0;--f){let e=b[f];for(let a of e){let b=0,d=0;for(let{target:c,value:e}of a.sourceLinks){let f=e*(c.layer-a.layer);b+=function(a,b){let c=b.y0-(b.targetLinks.length-1)*w/2;for(let{source:d,width:e}of b.targetLinks){if(d===a)break;c+=e+w}for(let{target:d,width:e}of a.sourceLinks){if(d===b)break;c-=e}return c}(a,c)*f,d+=f}if(!(d>0))continue;let e=(b/d-a.y0)*c;a.y0+=e,a.y1+=e,G(a)}void 0===a&&e.sort(o),D(e,d)}})(l,c,d),function(b,c,d){for(let e=1,f=b.length;e<f;++e){let f=b[e];for(let a of f){let b=0,d=0;for(let{source:c,value:e}of a.targetLinks){let f=e*(a.layer-c.layer);b+=function(a,b){let c=a.y0-(a.sourceLinks.length-1)*w/2;for(let{target:d,width:e}of a.sourceLinks){if(d===b)break;c+=e+w}for(let{source:d,width:e}of b.targetLinks){if(d===a)break;c-=e}return c}(c,a)*f,d+=f}if(!(d>0))continue;let e=(b/d-a.y0)*c;a.y0+=e,a.y1+=e,G(a)}void 0===a&&f.sort(o),D(f,d)}}(l,c,d)}}(i),u(i),i}function D(a,b){let c=a.length>>1,e=a[c];F(a,e.y0-w,c-1,b),E(a,e.y1+w,c+1,b),F(a,f,a.length-1,b),E(a,d,0,b)}function E(a,b,c,d){for(;c<a.length;++c){let e=a[c],f=(b-e.y0)*d;f>1e-6&&(e.y0+=f,e.y1+=f),b=e.y1+w}}function F(a,b,c,d){for(;c>=0;--c){let e=a[c],f=(e.y1-b)*d;f>1e-6&&(e.y0-=f,e.y1-=f),b=e.y0-w}}function G({sourceLinks:a,targetLinks:c}){if(void 0===b){for(let{source:{sourceLinks:a}}of c)a.sort(n);for(let{target:{targetLinks:b}}of a)b.sort(m)}}return C.update=function(a){return u(a),a},C.nodeId=function(a){return arguments.length?(x="function"==typeof a?a:l(a),C):x},C.nodeAlign=function(a){return arguments.length?(y="function"==typeof a?a:l(a),C):y},C.nodeSort=function(b){return arguments.length?(a=b,C):a},C.nodeWidth=function(a){return arguments.length?(h=+a,C):h},C.nodePadding=function(a){return arguments.length?(v=w=+a,C):v},C.nodes=function(a){return arguments.length?(z="function"==typeof a?a:l(a),C):z},C.links=function(a){return arguments.length?(A="function"==typeof a?a:l(a),C):A},C.linkSort=function(a){return arguments.length?(b=a,C):b},C.size=function(a){return arguments.length?(c=d=0,e=+a[0],f=+a[1],C):[e-c,f-d]},C.extent=function(a){return arguments.length?(c=+a[0][0],e=+a[1][0],d=+a[0][1],f=+a[1][1],C):[[c,d],[e,f]]},C.iterations=function(a){return arguments.length?(B=+a,C):B},C})().nodeId(a=>a.id).nodeWidth(10).nodePadding(10+15*!!S).nodeAlign(U).extent([[0,0],[M,N]])(T);let V=(0,f.UMr)(f.zt);L.append("g").attr("class","nodes").selectAll(".node").data(T.nodes).join("g").attr("class","node").attr("id",a=>(a.uid=W.next("node-")).id).attr("transform",function(a){return"translate("+a.x0+","+a.y0+")"}).attr("x",a=>a.x0).attr("y",a=>a.y0).append("rect").attr("height",a=>a.y1-a.y0).attr("width",a=>a.x1-a.x0).attr("fill",a=>V(a.id));let Y=(0,e.K2)(({id:a,value:b})=>S?`${a}
2
2
  ${Q}${Math.round(100*b)/100}${R}`:a,"getText");L.append("g").attr("class","node-labels").attr("font-size",14).selectAll("text").data(T.nodes).join("text").attr("x",a=>a.x0<M/2?a.x1+6:a.x0-6).attr("y",a=>(a.y1+a.y0)/2).attr("dy",`${S?"0":"0.35"}em`).attr("text-anchor",a=>a.x0<M/2?"start":"end").text(Y);let Z=L.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(T.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),$=y?.linkColor??"gradient";if("gradient"===$){let a=Z.append("linearGradient").attr("id",a=>(a.uid=W.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",a=>a.source.x1).attr("x2",a=>a.target.x0);a.append("stop").attr("offset","0%").attr("stop-color",a=>V(a.source.id)),a.append("stop").attr("offset","100%").attr("stop-color",a=>V(a.target.id))}switch($){case"gradient":w=(0,e.K2)(a=>a.uid,"coloring");break;case"source":w=(0,e.K2)(a=>V(a.source.id),"coloring");break;case"target":w=(0,e.K2)(a=>V(a.target.id),"coloring");break;default:w=$}Z.append("path").attr("d",(function(a){var b=E,c=F,d=C,e=D,f=null;function g(){var g,h=A.call(arguments),i=b.apply(this,h),j=c.apply(this,h);if(f||(f=g=z()),a(f,+d.apply(this,(h[0]=i,h)),+e.apply(this,h),+d.apply(this,(h[0]=j,h)),+e.apply(this,h)),g)return f=null,g+""||null}return g.source=function(a){return arguments.length?(b=a,g):b},g.target=function(a){return arguments.length?(c=a,g):c},g.x=function(a){return arguments.length?(d="function"==typeof a?a:B(+a),g):d},g.y=function(a){return arguments.length?(e="function"==typeof a?a:B(+a),g):e},g.context=function(a){return arguments.length?(f=null==a?null:a,g):f},g})(G).source(H).target(I)).attr("stroke",w).attr("stroke-width",a=>Math.max(1,a.width)),(0,d.ot)(void 0,L,0,O)},"draw"),Z=(0,e.K2)(a=>a.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,"\n").trim(),"prepareTextForParsing"),$=(0,e.K2)(a=>`.label {
3
3
  font-family: ${a.fontFamily};
4
4
  }`,"getStyles"),_=J.parse.bind(J);J.parse=a=>_(Z(a));var aa={styles:$,parser:J,db:V,renderer:{draw:Y}}}};