@chorus-aidlc/chorus 0.13.1 → 0.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +321 -320
  3. package/.next/standalone/.next/app-path-routes-manifest.json +37 -37
  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 +2 -2
  7. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -2
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  41. package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
  42. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/admin/companies/new.html +1 -1
  45. package/.next/standalone/.next/server/app/admin/companies/new.rsc +2 -2
  46. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/admin/companies.html +1 -1
  48. package/.next/standalone/.next/server/app/admin/companies.rsc +2 -2
  49. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/admin.html +1 -1
  51. package/.next/standalone/.next/server/app/admin.rsc +2 -2
  52. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/api/agent-connections/route.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  60. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  74. package/.next/standalone/.next/server/app/api/comments/route.js.nft.json +1 -1
  75. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/daemon/executions/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
  82. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js.nft.json +1 -1
  83. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js.nft.json +1 -1
  85. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/daemon/resume/route.js.nft.json +1 -1
  87. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js.nft.json +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.js +1 -1
  92. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js.nft.json +1 -1
  93. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
  95. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js.nft.json +1 -1
  96. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
  98. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js.nft.json +1 -1
  99. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
  101. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js.nft.json +1 -1
  102. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
  104. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js.nft.json +1 -1
  105. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
  107. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js.nft.json +1 -1
  108. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
  111. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js.nft.json +1 -1
  112. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
  114. package/.next/standalone/.next/server/app/api/events/notifications/route.js.nft.json +1 -1
  115. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/events/route.js +1 -1
  117. package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
  118. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  121. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
  122. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  124. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
  125. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  127. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
  128. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
  130. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js.nft.json +1 -1
  131. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  133. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
  134. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  136. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
  137. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
  139. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js.nft.json +1 -1
  140. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/api/mcp/route.js +2 -2
  142. package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  143. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  145. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  146. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  148. package/.next/standalone/.next/server/app/api/mentionables/route.js.nft.json +1 -1
  149. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
  151. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js.nft.json +1 -1
  152. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  153. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
  154. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js.nft.json +1 -1
  155. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  156. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
  157. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js.nft.json +1 -1
  158. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  159. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
  160. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js.nft.json +1 -1
  161. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  163. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  164. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  165. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
  166. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  169. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  170. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  171. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  173. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  174. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  175. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  176. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  178. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
  179. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  180. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  181. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
  182. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  183. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  184. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  185. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  186. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
  187. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js.nft.json +1 -1
  188. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  189. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  190. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  191. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  192. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
  193. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  194. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  195. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
  196. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  197. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  198. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  199. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  200. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  201. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  202. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  203. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  205. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  206. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
  207. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  208. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  209. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
  210. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  211. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  212. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
  213. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  214. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  215. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
  216. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  217. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  218. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
  219. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  220. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  221. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
  222. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  223. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  224. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
  225. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  226. package/.next/standalone/.next/server/app/index.html +1 -1
  227. package/.next/standalone/.next/server/app/index.rsc +2 -2
  228. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  229. package/.next/standalone/.next/server/app/login/admin.html +1 -1
  230. package/.next/standalone/.next/server/app/login/admin.rsc +2 -2
  231. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  232. package/.next/standalone/.next/server/app/login/callback.html +1 -1
  233. package/.next/standalone/.next/server/app/login/callback.rsc +2 -2
  234. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  235. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  236. package/.next/standalone/.next/server/app/login/pick-workspace.html +1 -1
  237. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +2 -2
  238. package/.next/standalone/.next/server/app/login.html +1 -1
  239. package/.next/standalone/.next/server/app/login.rsc +2 -2
  240. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  241. package/.next/standalone/.next/server/app/onboarding.html +1 -1
  242. package/.next/standalone/.next/server/app/onboarding.rsc +2 -2
  243. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  244. package/.next/standalone/.next/server/app/projects.html +1 -1
  245. package/.next/standalone/.next/server/app/projects.rsc +2 -2
  246. package/.next/standalone/.next/server/app/settings.html +1 -1
  247. package/.next/standalone/.next/server/app/settings.rsc +2 -2
  248. package/.next/standalone/.next/server/app-paths-manifest.json +37 -37
  249. package/.next/standalone/.next/server/chunks/1463.js +1 -0
  250. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  251. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  252. package/.next/standalone/.next/server/chunks/3219.js +1 -1
  253. package/.next/standalone/.next/server/chunks/4827.js +1 -1
  254. package/.next/standalone/.next/server/chunks/5011.js +1 -0
  255. package/.next/standalone/.next/server/chunks/5631.js +1 -0
  256. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  257. package/.next/standalone/.next/server/chunks/6817.js +1 -1
  258. package/.next/standalone/.next/server/chunks/7160.js +1 -1
  259. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  260. package/.next/standalone/.next/server/chunks/7578.js +1 -1
  261. package/.next/standalone/.next/server/chunks/8448.js +1 -1
  262. package/.next/standalone/.next/server/chunks/8577.js +1 -1
  263. package/.next/standalone/.next/server/chunks/920.js +1 -1
  264. package/.next/standalone/.next/server/chunks/{5095.js → 9855.js} +2 -2
  265. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  266. package/.next/standalone/.next/server/middleware-manifest.json +1 -1
  267. package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  268. package/.next/standalone/.next/server/pages/404.html +1 -1
  269. package/.next/standalone/.next/server/pages/500.html +1 -1
  270. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  271. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  272. package/.next/standalone/.next/static/chunks/225-7b0507c29df705f1.js +1 -0
  273. package/.next/standalone/.next/static/chunks/38366.62260b57e5f4b09d.js +1 -0
  274. package/.next/standalone/.next/static/chunks/{4860.7844c573cb3914f3.js → 4860.18e9c1a01636e309.js} +1 -1
  275. package/.next/standalone/.next/static/chunks/63820-551bca4e19d0119c.js +1 -0
  276. package/.next/standalone/.next/static/chunks/{80350-8ac8d602965bb4df.js → 80350-20c953d484f262ff.js} +1 -1
  277. package/.next/standalone/.next/static/chunks/96752-ad15cc38599f12e2.js +1 -0
  278. package/.next/standalone/.next/static/chunks/{99373.6f0ec031fb759d88.js → 99373.c4a36dcd46ec841e.js} +1 -1
  279. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-b2db3da2d7945904.js +1 -0
  280. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-b3b2b2ba3d60893e.js +1 -0
  281. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/{page-9f0ebba7e855b2f9.js → page-0aff1fa7a814188c.js} +1 -1
  282. package/.next/standalone/.next/static/chunks/{webpack-fe12dfe2e0d0e4f3.js → webpack-3551a4c7f9bfe638.js} +1 -1
  283. package/.next/standalone/.next/static/css/a80bf83b9122bfc5.css +1 -0
  284. package/.next/standalone/package.json +1 -1
  285. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  286. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  287. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +1 -1
  288. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  289. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +9 -1
  290. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  291. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +3 -1
  292. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  293. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  294. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +1 -1
  295. package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
  296. package/.next/standalone/public/skill/chorus/SKILL.md +1 -1
  297. package/.next/standalone/public/skill/code-reviewer-chorus/SKILL.md +1 -1
  298. package/.next/standalone/public/skill/develop-chorus/SKILL.md +1 -1
  299. package/.next/standalone/public/skill/idea-chorus/SKILL.md +9 -1
  300. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +3 -1
  301. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +1 -1
  302. package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +1 -1
  303. package/.next/standalone/public/skill/review-chorus/SKILL.md +1 -1
  304. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +1 -1
  305. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +1 -1
  306. package/package.json +1 -1
  307. package/prisma/migrations/20260707104706_add_idea_is_container/migration.sql +2 -0
  308. package/prisma/schema.prisma +1 -0
  309. package/.next/standalone/.next/server/chunks/1114.js +0 -1
  310. package/.next/standalone/.next/server/chunks/8497.js +0 -1
  311. package/.next/standalone/.next/server/chunks/8895.js +0 -1
  312. package/.next/standalone/.next/static/chunks/225-8a41a800021f3d11.js +0 -1
  313. package/.next/standalone/.next/static/chunks/58262-395c00e04f610a32.js +0 -1
  314. package/.next/standalone/.next/static/chunks/78966.075119c3a72135ed.js +0 -1
  315. package/.next/standalone/.next/static/chunks/94528-ed3f03485480f5e5.js +0 -1
  316. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-f72f17eb58614d2b.js +0 -1
  317. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-3238e0b5474c60f6.js +0 -1
  318. package/.next/standalone/.next/static/css/3f3ae2bdc9e55259.css +0 -1
  319. /package/.next/standalone/.next/static/{eORNzMShbzkJbNfQT8MbW → CIg9Mtv4fKIeKqPY5Rczv}/_buildManifest.js +0 -0
  320. /package/.next/standalone/.next/static/{eORNzMShbzkJbNfQT8MbW → CIg9Mtv4fKIeKqPY5Rczv}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[225],{225:(e,t,s)=>{s.d(t,{D:()=>eQ});var a=s(90508),n=s(1856),i=s(39268),l=s(23675),r=s(67587),c=s(64131),d=s(95900),o=s(57893),x=s(9160),u=s(85226),m=s(53881),p=s(48127),h=s(42533),f=s(97413),j=s(22922),g=s(64993),v=s(57731),b=s(14554),N=s(15972),y=s(88064),A=s(12210),w=s(51817),C=s(63964),k=s(5425),F=s(84247),E=s(80490),B=s(97261),S=s(16544),D=s(65626),_=s(73693),U=s(92691),T=s(84169),P=s(29532);function R(e){let{assignee:t,onReassign:s,editable:n}=e,l=(0,i.c)("common"),r=!0===n&&"function"==typeof s,c=l(t?"reassign":"assign"),d=t?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(_.eu,{className:"h-7 w-7",children:(0,a.jsx)(_.q5,{className:(0,P.bB)(t)?"bg-[#C67A52] text-white":"bg-[#E5E0D8] text-[#6B6B6B]",children:(0,P.bB)(t)?(0,a.jsx)(k.A,{className:"h-3.5 w-3.5"}):t.name.charAt(0).toUpperCase()})}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-[#2C2C2C]",children:t.name}),(0,a.jsx)("div",{className:"text-xs text-[#6B6B6B]",children:l((0,P.bB)(t)?"agent":"user")}),"agent_instance"===t.type&&t.instance&&(0,a.jsx)("div",{className:"mt-1",children:(0,a.jsx)(T.jQ,{cwd:t.instance.cwd,host:t.instance.host})})]})]}):(0,a.jsx)("span",{className:"text-sm text-[#9A9A9A]",children:l("unassigned")}),o="mt-2 flex items-center gap-2.5 rounded-lg bg-[#FAF8F4] p-3";return(0,a.jsxs)("div",{children:[(0,a.jsx)(y.J,{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:l("assignee")}),r?(0,a.jsx)(U.Bc,{delayDuration:300,children:(0,a.jsxs)(U.m_,{children:[(0,a.jsx)(U.k$,{asChild:!0,children:(0,a.jsx)("button",{type:"button",onClick:s,"aria-label":c,className:"".concat(o," w-full cursor-pointer text-left"),children:d})}),(0,a.jsx)(U.ZI,{children:c})]})}):(0,a.jsx)("div",{className:o,children:d})]})}function I(e){let{idea:t,elaboration:s,isLoading:n,onRefresh:l,onReassign:r,canReassign:c}=e,d=(0,i.c)("ideaTracker"),o=(0,i.c)("common");return n?(0,a.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,a.jsx)(u.A,{className:"h-5 w-5 animate-spin text-[#C67A52]"})}):(0,a.jsxs)(S.P.div,{variants:D.qG,initial:"initial",animate:"animate",children:[(0,a.jsx)(R,{assignee:t.assignee,onReassign:r,editable:c}),(0,a.jsx)(F.Separator,{className:"my-5 bg-[#F5F2EC]"}),s&&s.rounds.length>0?(0,a.jsx)("div",{children:(0,a.jsx)(E.R,{ideaUuid:t.uuid,elaboration:s,onRefresh:l})}):"open"===t.status?(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-8 text-center",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-[#FFF3E0]",children:(0,a.jsx)(k.A,{className:"h-5 w-5 text-[#E65100]"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-sm font-medium text-[#2C2C2C]",children:d("panel.elaborationNotStarted")}),(0,a.jsx)("p",{className:"mt-1 text-xs text-[#9A9A9A]",children:d("panel.elaborationNotStartedDesc")})]})]}):(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-8 text-center",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-[#E3F2FD]",children:(0,a.jsx)(k.A,{className:"h-5 w-5 text-[#1976D2]"})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-sm font-medium text-[#2C2C2C]",children:d("panel.elaborationWaiting")}),(0,a.jsx)("p",{className:"mt-1 text-xs text-[#9A9A9A]",children:d("panel.elaborationWaitingDesc")})]})]}),t.content&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(F.Separator,{className:"my-5 bg-[#F5F2EC]"}),(0,a.jsxs)("div",{children:[(0,a.jsx)(y.J,{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:o("content")}),(0,a.jsx)("div",{className:"mt-2",children:(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,a.jsx)(B.MarkdownContent,{children:t.content})})})]})]})]})}var L=s(12790),M=s.n(L),z=s(71921),$=s(78948),q=s(37915),O=s(17730),V=s(32470),J=s(96213),H=s(47754),Q=s(92745),K=s(82523),W=s(41528),G=s(14145),X=s(67712);function Z(e){let{idea:t,projectUuid:s,onTaskClick:l,onDocClick:r,initialProposals:c}=e,d=(0,i.c)("ideaTracker"),[o,x]=(0,n.useState)(null!=c?c:[]),[m,p]=(0,n.useState)(!c),h=(0,n.useCallback)(async()=>{try{let e=await (0,W.U)(s,t.uuid);if(e.success)return x(e.data),e.data}catch(e){X.q.error("Failed to fetch proposals:",e)}finally{p(!1)}return[]},[s,t.uuid]);(0,n.useEffect)(()=>{c||h()},[h,c]);let f=(0,n.useRef)(o);f.current=o;let{getPresence:j}=(0,H.xQ)();return((0,C.eV)("proposal",async()=>{let e=f.current;for(let i of(await h())){var t,s,a,n;let l=e.find(e=>e.uuid===i.uuid);if(!l)continue;let r=new Set((null!=(t=l.documentDrafts)?t:[]).map(e=>e.uuid)),c=new Set((null!=(s=l.taskDrafts)?s:[]).map(e=>e.uuid)),d=(null!=(a=i.documentDrafts)?a:[]).filter(e=>e.uuid&&!r.has(e.uuid)),o=(null!=(n=i.taskDrafts)?n:[]).filter(e=>e.uuid&&!c.has(e.uuid)),x=[...d.map(e=>e.uuid),...o.map(e=>e.uuid)];if(x.length>0){let e=j("proposal",i.uuid)[0];if(e)for(let t of x)(0,H.fv)({entityType:"proposal",entityUuid:i.uuid,subEntityType:"draft",subEntityUuid:t,agentUuid:e.agentUuid,agentName:e.agentName,action:"mutate"})}}}),m)?(0,a.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,a.jsx)(u.A,{className:"h-5 w-5 animate-spin text-[#C67A52]"})}):0===o.length?(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-12 text-center",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-[#F3E5F5]",children:(0,a.jsx)(z.A,{className:"h-5 w-5 text-[#7B1FA2]"})}),(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A]",children:d("panel.noProposals")})]}):(0,a.jsx)("div",{className:"space-y-5",children:o.map(e=>(0,a.jsx)(ee,{proposal:e,projectUuid:s,onTaskClick:l,onDocClick:r},e.uuid))})}let Y={draft:"bg-[#F5F5F5] text-[#6B6B6B]",pending:"bg-[#FFF3E0] text-[#E65100]",approved:"bg-[#E8F5E9] text-[#5A9E6F]",rejected:"bg-[#FFEBEE] text-[#C4574C]",revised:"bg-[#E3F2FD] text-[#1976D2]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"};function ee(e){let{proposal:t,projectUuid:s,onTaskClick:l,onDocClick:r}=e,c=(0,i.c)("ideaTracker"),d=(0,i.c)(),o=(0,i.c)("proposals"),x=(0,i.c)("tasks"),u=(0,i.c)("documents"),m=t.documentDrafts||[],p=t.taskDrafts||[],[h,f]=(0,n.useState)(new Set),[g,b]=(0,n.useState)("cards"),[N,y]=(0,n.useState)([]),A="approved"===t.status;(0,n.useEffect)(()=>{A&&(0,G.c)(s,t.uuid).then(e=>{e.success&&y(e.data||[])}).catch(e=>X.q.error("Failed to fetch materialized tasks:",e))},[A,s,t.uuid]);let w=(0,n.useMemo)(()=>{let e=new Map;for(let t of N)e.set(t.title,t);return e},[N]),{dagTasks:C,dagEdges:k,dagHeight:F}=(0,n.useMemo)(()=>{let e=p.map(e=>{let t=w.get(e.title);return{uuid:(null==t?void 0:t.uuid)||e.uuid,title:e.title,status:(null==t?void 0:t.status)||"open",priority:e.priority||"medium"}}),t=[],s=new Map(p.map(e=>[e.uuid,e]));for(let e of p)if(e.dependsOnDraftUuids)for(let a of e.dependsOnDraftUuids){let n=w.get(e.title),i=s.get(a),l=i?w.get(i.title):void 0;t.push({from:(null==n?void 0:n.uuid)||e.uuid,to:(null==l?void 0:l.uuid)||a})}return{dagTasks:e,dagEdges:t,dagHeight:Math.max(350,90*e.length)}},[p,w]),E=A?N.filter(e=>"done"===e.status||"closed"===e.status).length:0;return(0,a.jsxs)("div",{className:"space-y-5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("h3",{className:"text-[14px] font-semibold text-[#2C2C2C] truncate flex-1",children:t.title}),(0,a.jsx)(v.E,{className:"text-[11px] font-semibold border-0 shrink-0 ".concat(Y[t.status]||""),children:d("status.".concat(t.status))})]}),t.description&&(0,a.jsx)("div",{className:"max-h-[120px] overflow-y-auto text-[13px] leading-relaxed text-[#4A4A4A] prose prose-sm max-w-none [&_h1]:text-sm [&_h2]:text-[13px] [&_h3]:text-xs [&_p]:text-[13px] [&_p]:text-[#4A4A4A] [&_p]:my-1.5 [&_li]:text-[13px] [&_li]:text-[#4A4A4A] [&_ul]:my-1 [&_ol]:my-1 [&_strong]:text-[#2C2C2C]",children:(0,a.jsx)(B.MarkdownContent,{children:(0,K.j)(t.description)})}),(0,a.jsxs)(M(),{href:"/projects/".concat(s,"/proposals/").concat(t.uuid),className:"flex items-center gap-1 text-[13px] font-medium text-[#C67A52] hover:underline",children:[c("panel.viewProposal"),(0,a.jsx)($.A,{className:"h-3.5 w-3.5"})]}),m.length>0&&(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[1px] text-[#9A9A9A]",children:o(A?"documents":"documentDrafts")}),(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:m.length})]}),(0,a.jsx)("div",{className:"space-y-0",children:m.map((e,s)=>(0,a.jsx)(J.D,{entityType:"proposal",entityUuid:t.uuid,subEntityType:"draft",subEntityUuid:e.uuid||"draft-".concat(s),badgeInside:!0,children:(0,a.jsxs)(j.$,{variant:"ghost",className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-3.5 hover:bg-[#FAF8F4] transition-colors cursor-pointer -mx-1 px-1 rounded-lg",onClick:()=>e.content&&(null==r?void 0:r({title:e.title,type:e.type,content:e.content})),children:[(0,a.jsx)(q.A,{className:"h-3.5 w-3.5 shrink-0 text-[#B4B2A9]"}),(0,a.jsx)(v.E,{variant:"outline",className:"shrink-0 text-[10px] font-medium border-[#E5E0D8] text-[#6B6B6B] bg-[#F5F2EC] px-2 py-0.5 font-mono",children:u(K.y[e.type]||"typeOther")}),(0,a.jsx)("span",{className:"flex-1 min-w-0 text-left text-[13px] text-[#2C2C2A] truncate",children:e.title})]})},e.uuid||s))})]}),(p.length>0||N.length>0)&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between pb-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[1px] text-[#9A9A9A]",children:o(A?"tasks":"taskDrafts")}),(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:A&&N.length>0?N.length:p.length})]}),(0,a.jsxs)("span",{className:"text-[12px] text-[#9A9A9A]",children:[E,"/",A&&N.length>0?N.length:p.length]})]}),(0,a.jsx)("div",{className:"-mx-6 border-t border-[#E5E0D8]"}),k.length>0&&(0,a.jsxs)("div",{className:"flex gap-0.5 rounded-lg border border-[#E5E0D8] bg-[#F7F6F3] p-0.5 mt-3 w-fit",children:[(0,a.jsx)(j.$,{variant:"ghost",size:"sm",onClick:()=>b("cards"),className:"rounded-md px-2.5 py-1 h-auto text-[11px] font-medium transition-colors ".concat("cards"===g?"bg-white text-[#2C2C2C] shadow-sm":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:o("cardsView")}),(0,a.jsx)(j.$,{variant:"ghost",size:"sm",onClick:()=>b("dag"),className:"rounded-md px-2.5 py-1 h-auto text-[11px] font-medium transition-colors ".concat("dag"===g?"bg-white text-[#2C2C2C] shadow-sm":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:x("dagView")})]}),"cards"===g&&(0,a.jsx)("div",{className:"space-y-0",children:A&&N.length>0?N.map(e=>(0,a.jsx)(J.D,{entityType:"task",entityUuid:e.uuid,badgeInside:!0,children:(0,a.jsx)(ea,{task:{uuid:e.uuid,title:e.title},expanded:!1,onToggle:()=>{},onNavigate:l?()=>l(e.uuid):void 0,taskStatus:e.status})},e.uuid)):p.map((e,s)=>(0,a.jsx)(J.D,{entityType:"proposal",entityUuid:t.uuid,subEntityType:"draft",subEntityUuid:e.uuid,badgeInside:!0,children:(0,a.jsx)(ea,{task:e,expanded:h.has(s),onToggle:()=>{f(e=>{let t=new Set(e);return t.has(s)?t.delete(s):t.add(s),t})}})},e.uuid))}),"dag"===g&&(0,a.jsx)("div",{className:"mt-3",children:(0,a.jsx)(Q._u,{tasks:C,edges:k,readonly:!0,height:F,onNodeClick:l})})]}),0===m.length&&0===p.length&&0===N.length&&(0,a.jsx)("p",{className:"text-xs text-[#9A9A9A] italic",children:o("emptyContainer")})]})}let et={open:"border-[#D9D9D9] bg-white",assigned:"border-[#1976D2] bg-[#1976D2]",in_progress:"border-[#5A9E6F] bg-[#5A9E6F]",to_verify:"border-[#7B1FA2] bg-[#7B1FA2]",done:"border-[#00796B] bg-[#00796B]",closed:"border-[#9A9A9A] bg-[#9A9A9A]"},es={open:null,assigned:null,in_progress:{className:"bg-[#E8F5E9] text-[#5A9E6F]",key:"inProgress"},to_verify:{className:"bg-[#F3E5F5] text-[#7B1FA2]",key:"toVerify"},done:{className:"bg-[#E0F2F1] text-[#00796B]",key:"done"},closed:{className:"bg-[#F5F5F5] text-[#9A9A9A]",key:"done"}};function ea(e){let{task:t,expanded:s,onToggle:n,onNavigate:l,taskStatus:r}=e,c=(0,i.c)("proposals"),d=(0,i.c)("acceptanceCriteria"),o=(0,i.c)("status"),x=t.acceptanceCriteriaItems||[],u=!!(t.description||x.length>0),m=r?et[r]||et.open:"border-[#D9D9D9] bg-white",p=r?es[r]:null,h=(0,a.jsx)("span",{className:"shrink-0 h-2 w-2 rounded-full border-[1.5px] ".concat(m," transition-colors")}),f=(0,a.jsx)("span",{className:"flex-1 min-w-0 text-[13px] leading-snug truncate text-[#6B6B6B]",children:t.title}),g=p?(0,a.jsx)("span",{className:"shrink-0 rounded px-1.5 py-0.5 text-[10px] font-medium ".concat(p.className),children:o(p.key)}):null;return l?(0,a.jsxs)(j.$,{variant:"ghost",onClick:l,className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-4 cursor-pointer hover:bg-[#FAF8F4] -mx-1 px-1 rounded-lg transition-colors",children:[(0,a.jsx)(q.A,{className:"h-3.5 w-3.5 shrink-0 text-[#B4B2A9]"}),h,f,g]}):(0,a.jsxs)("div",{children:[(0,a.jsxs)(j.$,{variant:"ghost",onClick:u?n:void 0,className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-4 ".concat(u?"cursor-pointer hover:bg-[#FAF8F4] -mx-1 px-1 rounded-lg":""," transition-colors"),children:[s?(0,a.jsx)(O.A,{className:"h-3.5 w-3.5 shrink-0 text-[#B4B2A9]"}):(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[#B4B2A9]"}),h,f,g]}),s&&u&&(0,a.jsxs)("div",{className:"pb-3 pl-5 space-y-3",children:[t.description&&(0,a.jsx)("p",{className:"text-[11px] leading-relaxed text-[#6B6B6B]",children:t.description}),x.length>0&&(0,a.jsxs)("div",{className:"rounded-lg bg-[#FAF8F4] p-3 space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(V.A,{className:"h-3.5 w-3.5 text-[#888780]"}),(0,a.jsx)("span",{className:"text-[11px] font-semibold text-[#2C2C2C]",children:c("taskAcceptanceCriteria")})]}),(0,a.jsx)("div",{className:"space-y-1.5",children:x.map((e,t)=>(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsx)("p",{className:"text-[11px] leading-snug text-[#4A4A4A] flex-1",children:e.description}),!1!==e.required&&(0,a.jsx)("span",{className:"shrink-0 text-[10px] font-medium text-[#E65100]",children:d("required")})]},t))})]})]})]})}var en=s(29767),ei=s(69443),el=s(56770),er=s(60532),ec=s(97964),ed=s(52217);let eo=(0,ed.createServerReference)("4047a90ef603a47130bdb4ef5104e862199b20d3eb",ed.callServer,void 0,ed.findSourceMapURL,"getElaborationAction");var ex=s(90795);function eu(e){let{idea:t,proposals:s,tasks:l,onSelectTask:r}=e,c=(0,i.c)("ideaTracker"),d=(0,i.c)(),[o,x]=(0,n.useState)(null),[u,m]=(0,n.useState)(new Set);(0,n.useEffect)(()=>{"open"!==t.status&&eo(t.uuid).then(e=>{e.success&&e.data&&x(e.data)})},[t.uuid,t.status]);let p=(0,n.useMemo)(()=>"open"===t.status?"idea_created":"elaborating"===t.status||0===s.length?"elaboration":s.some(e=>"approved"===e.status)&&l.length>0?"tasks":"proposal",[t.status,s,l]),h=(0,n.useMemo)(()=>{let e=["idea_created","elaboration","proposal","tasks"],t=e.indexOf(p);return e.map((e,s)=>({id:e,labelKey:({idea_created:"panel.timeline.ideaCreated",elaboration:"panel.timeline.elaboration",proposal:"panel.timeline.proposal",tasks:"panel.timeline.tasksProgress"})[e],status:s<t?"completed":s===t?"active":"upcoming",icon:({idea_created:(0,a.jsx)(en.A,{className:"h-3.5 w-3.5"}),elaboration:(0,a.jsx)(ei.A,{className:"h-3.5 w-3.5"}),proposal:(0,a.jsx)(z.A,{className:"h-3.5 w-3.5"}),tasks:(0,a.jsx)(V.A,{className:"h-3.5 w-3.5"})})[e]}))},[p]);(0,n.useEffect)(()=>{let e=h.find(e=>"active"===e.status);e&&m(new Set([e.id]))},[p]);let f=(0,n.useCallback)(e=>{m(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]),j=(0,n.useMemo)(()=>"open"===t.status?c("panel.timeline.noElaboration"):"skipped"===t.elaborationStatus?c("panel.timeline.elaborationSkipped"):"resolved"===t.elaborationStatus&&o?c("panel.timeline.elaborationComplete",{count:o.summary.totalQuestions}):"elaborating"===t.status?c("panel.timeline.elaborationInProgress"):o&&o.summary.totalQuestions>0?c("panel.timeline.elaborationComplete",{count:o.summary.totalQuestions}):c("panel.timeline.noElaboration"),[t.status,t.elaborationStatus,o,c]),g=(0,n.useMemo)(()=>{if(0===s.length)return c("panel.timeline.noProposal");let e=s.filter(e=>"approved"===e.status).length,t=s.filter(e=>"pending"===e.status).length;if(e>0&&1===s.length)return c("panel.timeline.proposalApproved");if(e>0)return c("panel.timeline.proposalsApproved",{count:e,total:s.length});if(t>0)return c("panel.timeline.proposalPending");switch(s[0].status){case"draft":default:return c("panel.timeline.proposalDraft");case"rejected":return c("panel.timeline.proposalRejected")}},[s,c]),v=(0,n.useMemo)(()=>{let e=0,t=0;for(let r of s){var a,n,i,l;e+=null!=(i=null==(a=r.documentDrafts)?void 0:a.length)?i:0,t+=null!=(l=null==(n=r.taskDrafts)?void 0:n.length)?l:0}return{docCount:e,taskDraftCount:t}},[s]),b=(0,n.useMemo)(()=>{let e=l.filter(e=>"done"===e.status||"closed"===e.status).length,t=l.filter(e=>"in_progress"===e.status).length;return{done:e,inProgress:t,toVerify:l.filter(e=>"to_verify"===e.status).length,open:l.filter(e=>"open"===e.status||"assigned"===e.status).length,total:l.length}},[l]);return(0,a.jsx)("div",{className:"space-y-0",children:h.map((e,n)=>{let i=u.has(e.id),x=n===h.length-1;return(0,a.jsxs)("div",{className:"flex gap-3",children:[(0,a.jsxs)("div",{className:"flex flex-col items-center w-5 shrink-0",children:[(0,a.jsx)("div",{className:"mt-1",children:"completed"===e.status?(0,a.jsx)("div",{className:"h-5 w-5 rounded-full bg-[#E0F2F1] flex items-center justify-center",children:(0,a.jsx)(er.A,{className:"h-3 w-3 text-[#00796B]"})}):"active"===e.status?(0,a.jsx)("div",{className:"h-5 w-5 rounded-full bg-[#C67A52] flex items-center justify-center",children:(0,a.jsx)(ec.A,{className:"h-2 w-2 fill-white text-white"})}):(0,a.jsx)("div",{className:"h-5 w-5 rounded-full border-2 border-dashed border-[#D9D9D9] flex items-center justify-center",children:(0,a.jsx)(ec.A,{className:"h-2 w-2 text-[#D9D9D9]"})})}),!x&&(0,a.jsx)("div",{className:"flex-1 w-px bg-[#E5E0D8] mt-1 min-h-[8px]"})]}),(0,a.jsxs)("div",{className:"flex-1 min-w-0 ".concat(x?"pb-0":"pb-4"),children:[(0,a.jsxs)("button",{onClick:()=>f(e.id),className:"flex items-center gap-1.5 w-full text-left group cursor-pointer",children:[i?(0,a.jsx)(O.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] shrink-0"}):(0,a.jsx)($.A,{className:"h-3.5 w-3.5 text-[#9A9A9A] shrink-0"}),(0,a.jsx)("span",{className:"text-[13px] font-medium ".concat("active"===e.status?"text-[#C67A52]":"completed"===e.status?"text-[#2C2C2C]":"text-[#9A9A9A]"),children:c(e.labelKey)}),!i&&(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A] truncate ml-1",children:(e=>{switch(e.id){case"idea_created":return t.createdBy?t.createdBy.name:"";case"elaboration":return j;case"proposal":return g;case"tasks":return l.length>0?c("panel.timeline.tasksComplete",{done:b.done,total:b.total}):c("panel.timeline.noTasks");default:return""}})(e)})]}),(e=>{let n=u.has(e.id);switch(e.id){case"idea_created":return n?(0,a.jsxs)("div",{className:"mt-2 space-y-1.5",children:[t.createdBy&&(0,a.jsx)("p",{className:"text-[12px] text-[#6B6B6B]",children:c("panel.timeline.createdBy",{name:t.createdBy.name})}),(0,a.jsx)("p",{className:"text-[12px] text-[#9A9A9A]",children:(0,ex.fw)(t.createdAt,d)}),t.content&&(0,a.jsxs)("p",{className:"text-[12px] text-[#6B6B6B] line-clamp-2",children:[t.content.slice(0,120),t.content.length>120?"...":""]})]}):null;case"elaboration":return n?(0,a.jsxs)("div",{className:"mt-2 space-y-1.5",children:[(0,a.jsx)("p",{className:"text-[12px] text-[#6B6B6B]",children:j}),o&&o.rounds.length>0&&(0,a.jsx)("p",{className:"text-[12px] text-[#9A9A9A]",children:c("panel.timeline.rounds",{count:o.rounds.length})})]}):null;case"proposal":return n?(0,a.jsxs)("div",{className:"mt-2 space-y-1.5",children:[(0,a.jsx)("p",{className:"text-[12px] text-[#6B6B6B]",children:g}),s.length>0&&(0,a.jsxs)("div",{className:"space-y-1",children:[v.docCount>0&&(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-[12px] text-[#9A9A9A]",children:[(0,a.jsx)(el.A,{className:"h-3 w-3"}),(0,a.jsx)("span",{children:c("panel.timeline.documents",{count:v.docCount})})]}),v.taskDraftCount>0&&(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-[12px] text-[#9A9A9A]",children:[(0,a.jsx)(V.A,{className:"h-3 w-3"}),(0,a.jsx)("span",{children:c("panel.timeline.tasks",{count:v.taskDraftCount})})]})]})]}):null;case"tasks":return n?(0,a.jsx)("div",{className:"mt-2 space-y-2",children:0===l.length?(0,a.jsx)("p",{className:"text-[12px] text-[#9A9A9A]",children:c("panel.timeline.noTasks")}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)("div",{className:"flex-1 h-1.5 rounded-full bg-[#F0EDE8] overflow-hidden flex",children:[b.done>0&&(0,a.jsx)("div",{className:"h-full bg-[#00796B]",style:{width:"".concat(b.done/b.total*100,"%")}}),b.inProgress>0&&(0,a.jsx)("div",{className:"h-full bg-[#1976D2]",style:{width:"".concat(b.inProgress/b.total*100,"%")}}),b.toVerify>0&&(0,a.jsx)("div",{className:"h-full bg-[#7B1FA2]",style:{width:"".concat(b.toVerify/b.total*100,"%")}})]}),(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A] shrink-0",children:c("panel.timeline.tasksComplete",{done:b.done,total:b.total})})]}),(0,a.jsxs)("div",{className:"space-y-1",children:[l.slice(0,5).map(e=>(0,a.jsxs)("button",{onClick:()=>r(e.uuid),className:"flex items-center gap-2 w-full text-left rounded-md px-2 py-1.5 hover:bg-[#F5F2EC] transition-colors group cursor-pointer",children:[(0,a.jsx)(q.A,{className:"h-3 w-3 text-[#D9D9D9] shrink-0 group-hover:text-[#C67A52]"}),(0,a.jsx)("span",{className:"h-2 w-2 rounded-full shrink-0 ".concat((0,ex.eT)(e.status))}),(0,a.jsx)("span",{className:"flex-1 text-[12px] text-[#2C2C2C] truncate group-hover:text-[#C67A52]",children:e.title})]},e.uuid)),l.length>5&&(0,a.jsx)("p",{className:"text-[11px] text-[#9A9A9A] px-2",children:c("panel.timeline.moreItems",{count:l.length-5})})]})]})}):null;default:return null}})(e)]})]},e.id)})})}let em=(0,ed.createServerReference)("60946d7963b917a5c70ca1925c0ea530fe03822d36",ed.callServer,void 0,ed.findSourceMapURL,"getReportsForIdeaAction");function ep(e){let{projectUuid:t,ideaUuid:s,proposals:l,onDocClick:r}=e,c=(0,i.c)("idea"),d=(0,i.c)("documents"),[o,x]=(0,n.useState)([]),[m,p]=(0,n.useState)(!0),h=l.some(e=>"approved"===e.status),f=(0,n.useCallback)(async()=>{if(!h){x([]),p(!1);return}try{let e=await em(t,s);if(e.success){let t=[...e.data].sort((e,t)=>new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime());x(t.map(e=>{var t;return{uuid:e.uuid,title:e.title,type:e.type,content:null!=(t=e.content)?t:null,createdAt:e.createdAt}}))}}catch(e){X.q.error("Failed to fetch reports for idea:",e)}finally{p(!1)}},[t,s,h]);return((0,n.useEffect)(()=>{p(!0),f()},[f]),(0,C.eV)("document",f),m)?h?(0,a.jsx)("div",{className:"flex items-center justify-center py-3",children:(0,a.jsx)(u.A,{className:"h-4 w-4 animate-spin text-[#C67A52]"})}):null:0===o.length?null:(0,a.jsxs)("div",{className:"mt-6 space-y-3",children:[(0,a.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,a.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-[1px] text-[#9A9A9A]",children:c("reportsList")}),(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:o.length}),(0,a.jsxs)("span",{className:"text-[11px] text-[#B4B2A9]",children:["\xb7 ",c("reportsAcrossProposals")]})]}),(0,a.jsx)("div",{className:"space-y-0",children:o.map(e=>(0,a.jsxs)(j.$,{variant:"ghost",className:"w-full justify-start h-auto text-left flex items-center gap-2.5 py-3.5 hover:bg-[#FAF8F4] transition-colors cursor-pointer -mx-1 px-1 rounded-lg",onClick:()=>{var t;return r({title:e.title,type:"report",content:null!=(t=e.content)?t:""})},children:[(0,a.jsx)(q.A,{className:"h-3.5 w-3.5 shrink-0 text-[#B4B2A9]"}),(0,a.jsx)(v.E,{variant:"outline",className:"shrink-0 text-[10px] font-medium border-[#E5E0D8] text-[#6B6B6B] bg-[#F5F2EC] px-2 py-0.5 font-mono",children:d(K.y[e.type]||"typeOther")}),(0,a.jsx)("span",{className:"flex-1 min-w-0 text-left text-[13px] text-[#2C2C2A] truncate",children:e.title})]},e.uuid))})]})}var eh=s(94903),ef=s(24756);let ej=["in_progress","to_verify","open","assigned","done","closed"];function eg(e){let{tasks:t,projectUuid:s,proposalUuids:l,onSelectTask:r}=e,c=(0,i.c)("ideaTracker"),[d,o]=(0,n.useState)({}),x=(0,n.useMemo)(()=>t.map(e=>e.uuid),[t]),u=(0,n.useCallback)(async()=>{if(0===x.length)return;let e=await (0,ef.h)(x);e.success&&e.data&&o(e.data)},[x]);(0,n.useEffect)(()=>{u()},[u]),(0,C.eV)("task",u);let m=(0,n.useMemo)(()=>{let e=[];for(let s of ej){let a=t.filter(e=>e.status===s);a.length>0&&e.push({status:s,tasks:a})}let s=new Set(ej),a=t.filter(e=>!s.has(e.status));return a.length>0&&e.push({status:"other",tasks:a}),e},[t]),[p,h]=(0,n.useState)(new Set),f=(0,n.useMemo)(()=>{let e=t.length,s=t.filter(e=>"done"===e.status||"closed"===e.status).length,a=0,n=0,i=0,l=0;for(let e of t)e.acceptanceSummary&&(a+=e.acceptanceSummary.total,n+=e.acceptanceSummary.passed,i+=e.acceptanceSummary.required,l+=e.acceptanceSummary.requiredPassed);return{total:e,done:s,acTotal:a,acPassed:n,acRequired:i,acRequiredPassed:l}},[t]);return 0===t.length?(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-3 py-12 text-center",children:[(0,a.jsx)(V.A,{className:"h-8 w-8 text-[#D9D9D9]"}),(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A]",children:c("panel.taskList.noTasks")})]}):(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-3 rounded-lg bg-[#FAFAF7] px-3 py-2",children:[(0,a.jsx)("span",{className:"text-[12px] text-[#6B6B6B]",children:c("panel.taskList.summary",{done:f.done,total:f.total})}),f.acTotal>0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"text-[12px] text-[#D9D9D9]",children:"\xb7"}),(0,a.jsx)("span",{className:"text-[12px] text-[#6B6B6B]",children:c("panel.taskList.acSummary",{passed:f.acRequiredPassed,total:f.acRequired})})]}),l.length>0&&(0,a.jsxs)(M(),{href:"/projects/".concat(s,"/tasks?proposalUuids=").concat(l.join(",")),className:"ml-auto flex items-center gap-1 text-[13px] font-medium text-[#C67A52] shrink-0",children:[c("panel.taskList.viewKanban"),(0,a.jsx)($.A,{className:"h-3.5 w-3.5"})]})]}),m.map(e=>{let t=p.has(e.status);return(0,a.jsxs)("div",{children:[(0,a.jsxs)("button",{onClick:()=>{var t;return t=e.status,void h(e=>{let s=new Set(e);return s.has(t)?s.delete(t):s.add(t),s})},className:"flex items-center gap-2 w-full text-left py-1.5 group cursor-pointer",children:[t?(0,a.jsx)($.A,{className:"h-3.5 w-3.5 text-[#9A9A9A]"}):(0,a.jsx)(O.A,{className:"h-3.5 w-3.5 text-[#9A9A9A]"}),(0,a.jsx)("span",{className:"h-2 w-2 rounded-full shrink-0 ".concat((0,ex.eT)(e.status))}),(0,a.jsx)("span",{className:"text-[13px] font-medium text-[#2C2C2C]",children:function(e,t){switch(e){case"in_progress":return t("panel.taskList.inProgress");case"to_verify":return t("panel.taskList.toVerify");case"open":return t("panel.taskList.open");case"assigned":return t("panel.taskList.assigned");case"done":return t("panel.taskList.done");case"closed":return t("panel.taskList.closed");default:return e}}(e.status,c)}),(0,a.jsx)("span",{className:"text-[11px] text-[#9A9A9A] ml-auto",children:e.tasks.length})]}),!t&&(0,a.jsx)("div",{className:"ml-3 space-y-0.5",children:e.tasks.map(e=>{let t=d[e.uuid]||0,s=e.acceptanceSummary;return(0,a.jsx)(J.D,{entityType:"task",entityUuid:e.uuid,badgeInside:!0,children:(0,a.jsxs)("button",{onClick:()=>r(e.uuid),className:"flex items-center gap-2 w-full text-left rounded-md px-2.5 py-2 hover:bg-[#F5F2EC] transition-colors group cursor-pointer",children:[(0,a.jsx)(q.A,{className:"h-3.5 w-3.5 text-[#D9D9D9] shrink-0 group-hover:text-[#C67A52]"}),(0,a.jsx)("span",{className:"h-1.5 w-1.5 rounded-full shrink-0 ".concat((0,ex.eT)(e.status))}),(0,a.jsx)("span",{className:"flex-1 text-[13px] text-[#2C2C2C] truncate group-hover:text-[#C67A52]",children:e.title}),s&&s.total>0&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-0.5 shrink-0 rounded-full bg-[#F0EDE8] px-1.5 py-0.5 text-[10px] text-[#6B6B6B]",children:[(0,a.jsx)(er.A,{className:"h-2.5 w-2.5"}),s.requiredPassed,"/",s.required]}),e.assignee&&(0,a.jsxs)("span",{className:"shrink-0 inline-flex items-center gap-1 text-[10px] text-[#9A9A9A] max-w-[72px] truncate",title:e.assignee.name,children:[(0,a.jsx)(eh.A,{className:"h-2.5 w-2.5 shrink-0"}),e.assignee.name.split(/[@\s]/)[0]]}),t>0&&(0,a.jsx)("span",{className:"inline-flex items-center justify-center h-4 min-w-[16px] rounded-full bg-[#E8F5E9] text-[#2E7D32] text-[9px] font-semibold shrink-0",title:c("panel.taskList.workersActive",{count:t}),children:t})]})},e.uuid)})})]},e.status)})]})}var ev=s(5712);function eb(e){let{ideaUuid:t}=e,s=(0,i.c)(),[l,r]=(0,n.useState)([]),[c,d]=(0,n.useState)(!0),o=(0,n.useCallback)(async()=>{d(!0),r((await (0,ev.x)(t)).activities),d(!1)},[t]);return(0,n.useEffect)(()=>{o()},[o]),(0,a.jsxs)("div",{className:"mt-5",children:[(0,a.jsx)(y.J,{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:s("common.activity")}),(0,a.jsx)("div",{className:"mt-2",children:c?(0,a.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,a.jsx)(u.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):0===l.length?(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A] italic",children:s("common.noActivity")}):l.map((e,t)=>(0,a.jsxs)("div",{className:"flex items-stretch gap-2.5",children:[(0,a.jsxs)("div",{className:"flex flex-col items-center w-2 shrink-0",children:[(0,a.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded-full border-[1.5px] border-[#D9D9D9] bg-white"}),t<l.length-1&&(0,a.jsx)("div",{className:"flex-1 w-px bg-[#E5E0D8] mt-1"})]}),(0,a.jsxs)("div",{className:"flex-1 pb-3",children:[(0,a.jsx)("p",{className:"text-[13px] text-[#2C2C2C]",children:function(e,t){let{action:s,actorName:a}=e;switch(s){case"created":case"idea_created":return t("activity.ideaCreated",{actor:a});case"assigned":case"idea_assigned":return t("activity.ideaAssigned",{actor:a});case"claimed":case"idea_claimed":return t("activity.ideaClaimed",{actor:a});case"released":case"idea_released":return t("activity.ideaReleased",{actor:a});case"status_changed":case"idea_status_changed":return t("activity.ideaStatusChanged",{actor:a});case"edited":case"idea_edited":return t("activity.ideaEdited",{actor:a});case"reparented":case"idea_reparented":return t("activity.ideaReparented",{actor:a});case"elaboration_started":return t("activity.elaborationStarted",{actor:a});case"elaboration_answered":return t("activity.elaborationAnswered",{actor:a});case"elaboration_skipped":return t("activity.elaborationSkipped",{actor:a});case"elaboration_resolved":return t("activity.elaborationResolved",{actor:a});case"elaboration_followup":return t("activity.elaborationFollowup",{actor:a});default:return t("activity.genericAction",{actor:a,action:s})}}(e,s)}),(0,a.jsx)("p",{className:"text-[11px] text-[#9A9A9A]",children:(0,ex.fw)(e.createdAt,s)})]})]},e.uuid))})]})}var eN=s(57362);function ey(e){let{ideaUuid:t,currentUserUuid:s,commentCount:l,onCommentCountChange:r}=e,c=(0,i.c)("ideaTracker"),[d,o]=(0,n.useState)("comments");return(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"flex gap-1 rounded-lg bg-[#F5F2EC] p-0.5",children:[(0,a.jsxs)("button",{onClick:()=>o("comments"),className:"flex-1 rounded-md px-3 py-1.5 text-[13px] font-medium transition-colors flex items-center justify-center gap-1.5 cursor-pointer ".concat("comments"===d?"bg-white text-[#2C2C2C] shadow-sm":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:[c("panel.activityTab.comments"),l>0&&(0,a.jsx)("span",{className:"inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-[#F5F2EC] text-[#6B6B6B] text-[10px] font-semibold leading-none",children:l})]}),(0,a.jsx)("button",{onClick:()=>o("activity"),className:"flex-1 rounded-md px-3 py-1.5 text-[13px] font-medium transition-colors cursor-pointer ".concat("activity"===d?"bg-white text-[#2C2C2C] shadow-sm":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:c("panel.activityTab.activity")})]}),(0,a.jsx)("div",{children:"activity"===d?(0,a.jsx)(eb,{ideaUuid:t}):(0,a.jsx)(eN.$m,{targetType:"idea",targetUuid:t,currentUserUuid:s,onCountChange:r,compact:!0})})]})}var eA=s(25347),ew=s(24522),eC=s(72992),ek=s(14741),eF=s(30028),eE=s(97438),eB=s(4365),eS=s(24377);let eD=(0,ed.createServerReference)("40dea3a5d82afa8a50d325d86aeffd2c101d45343f",ed.callServer,void 0,ed.findSourceMapURL,"getProjectIdeasForPickerAction"),e_=(0,ed.createServerReference)("606347076f72433d83088fa304ea5b8936197847dc",ed.callServer,void 0,ed.findSourceMapURL,"setIdeaParentAction");function eU(e){let{open:t,onOpenChange:s,ideaUuid:c,ideaTitle:d,projectUuid:o,currentParentUuid:x,descendantUuids:m,onChanged:p}=e,h=(0,i.c)("ideaTracker.lineage"),f=(0,i.c)("common"),g=(0,l.useRouter)(),[v,b]=(0,n.useState)([]),[N,y]=(0,n.useState)(!1),[A,w]=(0,n.useState)(!1),[C,k]=(0,n.useState)(!1),[F,E]=(0,n.useState)(null),B=new Set([c,...m]),S=(0,n.useCallback)(async()=>{w(!0),E(null);try{let e=await eD(o);e.success?(b(e.data),y(e.hasMore)):E(e.error)}catch(e){X.q.error("Failed to load parent candidates:",e),E(h("saveFailed"))}w(!1)},[o,h]);(0,n.useEffect)(()=>{t&&S()},[t,S]);let D=async e=>{if(!C){k(!0),E(null);try{let t=await e_(c,e);t.success?(r.oR.success(e?h("save"):h("detach")),s(!1),g.refresh(),p()):E(t.error||h("saveFailed"))}catch(e){E(e instanceof Error?e.message:h("saveFailed"))}k(!1)}};return(0,a.jsx)(eE.lG,{open:t,onOpenChange:s,children:(0,a.jsxs)(eE.Cf,{children:[(0,a.jsxs)(eE.c7,{children:[(0,a.jsx)(eE.L3,{children:h("setParentTitle")}),(0,a.jsx)(eE.rr,{children:h("setParentDescription",{title:d})})]}),(0,a.jsxs)("div",{className:"min-w-0 space-y-3 pt-1",children:[A?(0,a.jsx)("div",{className:"flex h-40 items-center justify-center",children:(0,a.jsx)(u.A,{className:"h-5 w-5 animate-spin text-[#9A9A9A]"})}):(0,a.jsx)("div",{className:"rounded-md border border-[#E5E0D8]",children:(0,a.jsxs)(eB.uB,{children:[(0,a.jsx)(eB.G7,{placeholder:h("searchPlaceholder")}),(0,a.jsxs)(eB.oI,{children:[(0,a.jsx)(eB.xL,{children:h("noCandidates")}),(0,a.jsx)(eB.L$,{children:v.map(e=>{let t=B.has(e.uuid),s=e.uuid===x;return(0,a.jsxs)(eB.h_,{value:e.title,disabled:t,onSelect:()=>{t||D(e.uuid)},className:(0,eS.cn)("flex min-w-0 items-center justify-between gap-2",t&&"opacity-55",s&&"bg-[#C67A52]/10"),children:[(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate text-[13px] text-[#2C2C2A]",children:e.title}),t&&(0,a.jsxs)("span",{className:"flex shrink-0 items-center gap-1 text-[11px] font-medium text-[#B0654A]",children:[(0,a.jsx)(ek.A,{className:"h-3 w-3"}),h("cycleBlocked")]})]},e.uuid)})})]})]})}),(0,a.jsxs)("div",{className:"flex items-start gap-2 rounded-md bg-[#FBF0EB] px-3 py-2.5",children:[(0,a.jsx)(eF.A,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-[#B0654A]"}),(0,a.jsx)("p",{className:"text-[12px] leading-relaxed text-[#9A5238]",children:h("cycleWarning")})]}),N&&(0,a.jsx)("p",{className:"px-1 text-[12px] text-[#A8A498]",role:"status",children:h("pickerTruncated")}),F&&(0,a.jsx)("p",{className:"text-xs text-destructive",role:"alert",children:F})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3 pt-2",children:[x?(0,a.jsx)(j.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:()=>D(null),disabled:C,children:h("detach")}):(0,a.jsx)("span",{}),(0,a.jsx)(j.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:()=>s(!1),disabled:C,children:f("cancel")})]})]})})}var eT=s(875),eP=s(38845),eR=s(86750);let eI=(0,ed.createServerReference)("4040f002467cca317c082889a14041485f531d95ef",ed.callServer,void 0,ed.findSourceMapURL,"getIdeaAction");var eL=s(40888),eM=s(11982),ez=s(15906),e$=s(11083),eq=s(11166),eO=s(23552),eV=s(30603),eJ=s(38106),eH=s(77390);function eQ(e){var t,s;let{ideaUuid:k,projectUuid:F,currentUserUuid:E,onClose:B,onNavigate:S}=e,D=(0,i.c)(),_=(0,i.c)("ideaTracker"),U=(0,i.c)("status"),T=(0,i.c)("ideaTracker.lineage"),P=(0,l.useRouter)(),[R,L]=(0,n.useState)(null),[M,z]=(0,n.useState)(!0),[$,q]=(0,n.useState)(null),[O,V]=(0,n.useState)([]),[J,H]=(0,n.useState)([]),[Q,K]=(0,n.useState)("overview"),[Y,ee]=(0,n.useState)(new Set(["overview"])),[et,es]=(0,n.useState)(!1),[ea,en]=(0,n.useState)(0),[ei,el]=(0,n.useState)(!1),[er,ec]=(0,n.useState)(!1),[ed,eo]=(0,n.useState)(null),[em,eh]=(0,n.useState)(!0),[ef,ej]=(0,n.useState)(!1),[ev,eb]=(0,n.useState)(null),[eN,ek]=(0,n.useState)(!1),[eF,eE]=(0,n.useState)(!1),[eB,eS]=(0,n.useState)(""),[eD,e_]=(0,n.useState)(""),[eQ,eK]=(0,n.useState)(!1),[eW,eG]=(0,n.useState)(null),[eX,eZ]=(0,n.useState)(!1),[eY,e0]=(0,n.useState)(!1),[e2,e1]=(0,n.useState)(!1),[e5,e9]=(0,n.useState)(!1),[e3,e6]=(0,n.useState)(null),[e4,e8]=(0,n.useState)(null),[e7,te]=(0,n.useState)(null),tt=(0,n.useCallback)(e=>{te(null),e6(e)},[]),ts=(0,n.useCallback)(e=>{e6(null),e8(null),te(e)},[]),[ta,tn]=(0,n.useState)(!1);(0,n.useEffect)(()=>{let e=window.matchMedia("(min-width: 960px)");tn(e.matches);let t=e=>tn(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]);let[ti,tl]=(0,n.useState)(!1);(0,n.useEffect)(()=>{let e=setTimeout(()=>tl(!0),300);return()=>clearTimeout(e)},[]);let tr=(0,n.useCallback)(e=>{let t=new URLSearchParams(window.location.search);t.set("tab",e),window.history.replaceState(null,"","".concat(window.location.pathname,"?").concat(t.toString()))},[]),tc=(0,n.useCallback)(async()=>{try{let e=await eI(k);e.success?(L(e.data),q(null)):q(_("Not found"===e.error?"panel.notFound":"panel.loadFailed"))}catch(e){q(_("panel.loadFailed"))}finally{z(!1)}},[k,_]);(0,n.useEffect)(()=>{z(!0),tc()},[tc]),(0,C.eV)("idea",tc),(0,C.eV)("proposal",tc),(0,C.eV)("task",tc);let td=null==R?void 0:R.uuid,to=null==R?void 0:R.status,tx=(0,n.useCallback)(async()=>{if(!td||"open"===to)return void V([]);try{let e=await (0,W.U)(F,td);e.success&&V(e.data)}catch(e){X.q.error("Failed to fetch proposals:",e)}},[F,td,to]);(0,n.useEffect)(()=>{tx()},[tx]),(0,C.eV)("proposal",tx);let tu=(0,n.useCallback)(async()=>{let e=O.filter(e=>"approved"===e.status);if(0===e.length)return void H([]);try{let t=(await Promise.all(e.map(e=>(0,G.c)(F,e.uuid)))).flatMap(e=>e.success&&e.data?e.data.map(e=>{var t,s,a;return{uuid:e.uuid,title:e.title,status:e.status,commentCount:null!=(t=e.commentCount)?t:0,assignee:null!=(s=e.assignee)?s:null,acceptanceSummary:null!=(a=e.acceptanceSummary)?a:null}}):[]);H(t)}catch(e){X.q.error("Failed to fetch tasks:",e)}},[F,O]);(0,n.useEffect)(()=>{tu()},[tu]),(0,C.eV)("task",tu);let tm=(0,n.useCallback)(async()=>{if(!td)return;let e=await (0,eM.z)(td);e.success&&e.data&&eo(e.data),eh(!1)},[td]);(0,n.useEffect)(()=>{tm()},[tm]),(0,C.eV)("idea",tm);let tp=(0,n.useMemo)(()=>R?function(e,t,s){let a=["overview"];return a.push("elaboration"),t.length>0&&a.push("proposal"),s.length>0&&a.push("tasks"),a.push("activity"),a}(0,O,J):["overview","activity"],[R,O,J]),th=(0,n.useRef)(new URLSearchParams(window.location.search).get("tab")),tf=R?function(e){switch(e){case"open":case"researching":case"answer_questions":return"elaboration";case"planning":case"review_proposal":return"proposal";case"building":case"verify_work":return"tasks";default:return"overview"}}(R.badgeHint):"overview";(0,n.useEffect)(()=>{let e;if(!R||et)return;let t=th.current;if(t)if(!tp.includes(t))return;else e=t,th.current=null,es(!0);else if(tp.includes(tf))e=tf;else{if("overview"!==tf)return;e="overview"}K(e),ee(t=>new Set([...t,e])),tr(e)},[null==R?void 0:R.uuid,tf,tp]),(0,n.useEffect)(()=>{es(!1)},[k]),(0,n.useEffect)(()=>{tp.includes(Q)||K("overview")},[tp,Q]);let tj=(0,n.useMemo)(()=>J.filter(e=>"in_progress"===e.status||"assigned"===e.status||"to_verify"===e.status).length,[J]),tg=(0,n.useCallback)(()=>{if(!e3)return void e8(null);(0,eL.Q)(e3).then(e=>{e.success&&e8(e.data)}).catch(e=>X.q.error("Failed to load task details:",e))},[e3]);(0,n.useEffect)(()=>{tg()},[tg]),(0,C.eV)("task",tg),(0,n.useEffect)(()=>{eE(!1),eS((null==R?void 0:R.title)||""),e_((null==R?void 0:R.content)||""),eG(null)},[null==R?void 0:R.uuid,null==R?void 0:R.title,null==R?void 0:R.content]);let tv=()=>{eE(!1),eS((null==R?void 0:R.title)||""),e_((null==R?void 0:R.content)||""),eG(null)},tb=async()=>{if(!R||!eB.trim())return void eG(D("ideas.titleRequired"));eK(!0),eG(null);let e=await (0,eP.J)({ideaUuid:R.uuid,projectUuid:F,title:eB.trim(),content:eD.trim()||null});eK(!1),e.success?(eE(!1),await tc(),P.refresh()):eG(e.error||D("ideas.updateFailed"))},tN=async()=>{if(!R)return;ec(!0);let e=await (0,eR.Z)(R.uuid,F);ec(!1),e.success&&(B(),P.refresh())},ty=async()=>{if(!R)return;ej(!0),eb(null);let e=await (0,ez.e)(R.uuid);ej(!1),e.success?(ek(!0),await tc(),P.refresh()):eb(e.error||D("elaboration.verifyFailed"))},tA=async e=>{var t;if(!R)return;eZ(!0),L({...R,isContainer:e});let s=await (0,eP.J)({ideaUuid:R.uuid,projectUuid:F,title:R.title,content:null!=(t=R.content)?t:null,isContainer:e});eZ(!1),s.success?(await tc(),P.refresh()):(L({...R,isContainer:!e}),r.oR.error(s.error||D("ideas.updateFailed")))},tw=(null==R?void 0:R.derivedStatus)||"todo",tC=(null==R?void 0:R.isContainer)===!0,tk=!!R&&"elaborated"!==R.status,tF=(0,eq.o)({ideaStatus:null==R?void 0:R.status,elaborationStatus:null==R?void 0:R.elaborationStatus,elaboration:ed});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:B}),(0,a.jsxs)("div",{className:"fixed right-0 top-14 md:top-0 z-50 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col border-l border-[#E5E0D8] bg-white shadow-xl ".concat(ti?"":"animate-in slide-in-from-right duration-300"),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between border-b border-[#F5F2EC] px-6 py-5",children:[(0,a.jsx)("div",{className:"flex-1 min-w-0",children:M?(0,a.jsx)("div",{className:"h-5 w-40 animate-pulse rounded bg-[#F5F2EC]"}):R?eF?(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:D("ideas.editIdea")}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider ".concat(tC?"text-[#B26B3D]":"text-[#B4B2A9]"),children:tC?T("typeTheme"):T("typeIdea")}),(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C] truncate",children:R.title}),(0,a.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,a.jsx)(v.E,{className:ex._5[tw]||ex._5.todo,children:R.badgeHint?_("badge.".concat(ex.Wl[R.badgeHint]||"open")):U(ex.Bj[tw]||"todo")}),tC&&R.childProgress&&R.childProgress.total>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-xs font-medium text-[#B26B3D]",title:T("childrenDone",{done:R.childProgress.done,total:R.childProgress.total}),children:[(0,a.jsx)(eH.C,{done:R.childProgress.done,total:R.childProgress.total,size:13,stroke:2}),R.childProgress.done,"/",R.childProgress.total]}),(0,a.jsx)("span",{className:"text-xs text-[#9A9A9A]",children:(0,eJ.r)(R.createdAt)})]})]}):(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:_("panel.notFound")})}),(0,a.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[R&&!eF&&(0,a.jsxs)(j.$,{variant:"outline",size:"sm",className:"h-8 gap-1.5 border-[#E5E0D8] px-2.5",onClick:()=>e9(!0),title:T("deriveIdea"),"aria-label":T("deriveIdea"),children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 text-[#C67A52]"}),(0,a.jsx)("span",{className:"text-[12px] font-medium text-[#C67A52]",children:T("derive")})]}),R&&!eF&&(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>e0(!0),title:D("ideas.actions.move"),"aria-label":D("ideas.actions.move"),children:(0,a.jsx)(d.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),R&&"elaborated"!==R.status&&!eF&&(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>{R&&(eS(R.title),e_(R.content||""),eG(null),eE(!0))},title:D("ideas.editIdea"),children:(0,a.jsx)(o.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:eF?tv:B,children:(0,a.jsx)(x.A,{className:"h-4 w-4 text-[#6B6B6B]"})})]})]}),R&&!M&&!eF&&(0,a.jsx)("div",{className:"border-b border-[#F5F2EC] px-6",children:(0,a.jsx)("div",{className:"flex gap-0 -mb-px",children:tp.map(e=>(0,a.jsxs)("button",{onClick:()=>{K(e),es(!0),ee(t=>new Set([...t,e])),tr(e)},className:"relative flex items-center gap-1.5 px-3 py-2.5 text-[13px] font-medium transition-colors cursor-pointer ".concat(Q===e?"text-[#C67A52] border-b-2 border-[#C67A52]":"text-[#9A9A9A] hover:text-[#6B6B6B]"),children:[_("panel.tabs.".concat(e)),"tasks"===e&&tj>0&&(0,a.jsx)("span",{className:"inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-[#E3F2FD] text-[#1976D2] text-[10px] font-semibold leading-none",children:tj}),"activity"===e&&ea>0&&(0,a.jsx)("span",{className:"inline-flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full bg-[#F5F2EC] text-[#6B6B6B] text-[10px] font-semibold leading-none",children:ea})]},e))})}),(0,a.jsx)(g.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,a.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:M?(0,a.jsxs)("div",{className:"flex flex-1 items-center justify-center py-12",children:[(0,a.jsx)(u.A,{className:"h-6 w-6 animate-spin text-[#C67A52]"}),(0,a.jsx)("span",{className:"ml-2 text-sm text-[#9A9A9A]",children:_("loading")})]}):$?(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center py-12",children:(0,a.jsx)("p",{className:"text-sm text-[#9A9A9A]",children:$})}):R?eF?(0,a.jsxs)("div",{className:"space-y-5",children:[eW&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:eW}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(y.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-[#2C2C2C]",children:D("ideas.titleLabel")}),(0,a.jsx)(b.p,{id:"edit-title",value:eB,onChange:e=>eS(e.target.value),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(y.J,{htmlFor:"edit-content",className:"text-[13px] font-medium text-[#2C2C2C]",children:D("common.content")}),(0,a.jsx)(N.T,{id:"edit-content",value:eD,onChange:e=>e_(e.target.value),rows:8,className:"border-[#E5E0D8] text-sm resize-none focus-visible:ring-[#C67A52]"})]})]}):(0,a.jsxs)(a.Fragment,{children:[Y.has("overview")&&(0,a.jsxs)("div",{style:{display:"overview"===Q?"block":"none"},children:[(0,a.jsxs)("div",{className:"mb-5 flex items-start justify-between gap-3 rounded-lg border border-[#EFEBE3] bg-[#FAF8F4] px-3.5 py-3",children:[(0,a.jsxs)("div",{className:"min-w-0 space-y-0.5",children:[(0,a.jsxs)(y.J,{htmlFor:"container-toggle",className:"flex items-center gap-1.5 text-[13px] font-medium text-[#2C2C2C]",children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 text-[#C67A52]","aria-hidden":!0}),T("container")]}),(0,a.jsx)("p",{className:"text-[11px] leading-relaxed text-[#888780]",children:T("containerDescription")})]}),(0,a.jsx)(A.d,{id:"container-toggle",checked:tC,disabled:eX,onCheckedChange:tA,"aria-label":T("makeContainer")})]}),(0,a.jsx)(eu,{idea:R,proposals:O,tasks:J,onSelectTask:tt}),(0,a.jsxs)("div",{className:"mt-5 space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5 text-[#C67A52]"}),(0,a.jsx)("span",{className:"text-[12px] font-semibold text-[#5F5E5A]",children:T("title")})]}),(0,a.jsxs)(j.$,{variant:"outline",size:"sm",className:"h-7 gap-1 border-[#E5E0D8] px-2 text-[11px] text-[#6B6B6B]",onClick:()=>e1(!0),children:[(0,a.jsx)(o.A,{className:"h-3 w-3"}),R.parentUuid?T("changeParent"):T("setParent")]})]}),R.parent?(0,a.jsxs)("button",{type:"button",onClick:()=>null==S?void 0:S(R.parent.uuid),className:"flex w-full items-center gap-2 rounded-lg bg-[#FAF8F4] px-3 py-2.5 text-left transition-colors hover:bg-[#F5F2EC]",children:[(0,a.jsx)(m.A,{className:"h-3.5 w-3.5 shrink-0 text-[#888780]"}),(0,a.jsx)("span",{className:"shrink-0 text-[12px] text-[#888780]",children:T("derivedFrom")}),(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate text-[12px] font-medium text-[#5F5E5A]",children:R.parent.title})]}):(0,a.jsx)("p",{className:"px-1 text-[12px] text-[#A8A498]",children:T("noParent")}),R.children&&R.children.length>0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-1 pt-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("span",{className:"text-[12px] font-medium text-[#5F5E5A]",children:T("derivedIdeas")}),(0,a.jsx)("span",{className:"text-[11px] text-[#888780]",children:R.children.length})]}),(()=>{let e=R.children.filter(e=>"done"===e.derivedStatus).length,t=R.children.length;return(0,a.jsxs)("span",{className:"flex items-center gap-1.5 text-[12px] text-[#7A7A75]",title:T("childrenDone",{done:e,total:t}),children:[(0,a.jsx)(eH.C,{done:e,total:t,size:14,stroke:2}),e,"/",t]})})()]}),(0,a.jsx)("div",{className:"overflow-hidden rounded-lg border border-[#EFEBE3]",children:R.children.map((e,t)=>(0,a.jsxs)("div",{children:[t>0&&(0,a.jsx)("div",{className:"h-px bg-[#F0EEEA]"}),(0,a.jsxs)("button",{type:"button",onClick:()=>null==S?void 0:S(e.uuid),className:"flex w-full items-center justify-between gap-2 px-3 py-2.5 text-left transition-colors hover:bg-[#FAF8F4]",children:[(0,a.jsxs)("span",{className:"flex min-w-0 items-center gap-2",children:[(0,a.jsx)(p.A,{className:"h-3.5 w-3.5 shrink-0 text-[#C2BDB2]"}),(0,a.jsx)("span",{className:"truncate text-[12px] text-[#2C2C2A]",children:e.title})]}),(0,a.jsx)(v.E,{className:"shrink-0 border-0 text-[10px] ".concat(ex._5[e.derivedStatus]||ex._5.todo),children:U(ex.Bj[e.derivedStatus]||"todo")})]})]},e.uuid))})]})]}),(0,a.jsx)(ep,{projectUuid:F,ideaUuid:R.uuid,proposals:O,onDocClick:ts})]}),tp.includes("elaboration")&&Y.has("elaboration")&&(0,a.jsx)("div",{style:{display:"elaboration"===Q?"block":"none"},children:(0,a.jsx)(I,{idea:R,elaboration:ed,isLoading:em,onRefresh:async()=>{await tm(),await tc()},onReassign:()=>el(!0),canReassign:tk})}),tp.includes("proposal")&&Y.has("proposal")&&(0,a.jsx)("div",{style:{display:"proposal"===Q?"block":"none"},children:(0,a.jsx)(Z,{idea:R,projectUuid:F,onTaskClick:tt,onDocClick:ts,initialProposals:O})}),tp.includes("tasks")&&Y.has("tasks")&&(0,a.jsx)("div",{style:{display:"tasks"===Q?"block":"none"},children:(0,a.jsx)(eg,{tasks:J,projectUuid:F,proposalUuids:O.filter(e=>"approved"===e.status).map(e=>e.uuid),onSelectTask:tt})}),Y.has("activity")&&(0,a.jsx)("div",{style:{display:"activity"===Q?"block":"none"},children:(0,a.jsx)(ey,{ideaUuid:R.uuid,currentUserUuid:E,commentCount:ea,onCommentCountChange:en})})]}):null})}),R&&!M&&(0,a.jsx)("div",{className:"border-t border-[#F5F2EC] px-6 py-4",children:eF?(0,a.jsxs)("div",{className:"flex items-center justify-end gap-3",children:[(0,a.jsx)(j.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:tv,disabled:eQ,children:D("common.cancel")}),(0,a.jsx)(j.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:tb,disabled:eQ||!eB.trim(),children:eQ?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(u.A,{className:"mr-2 h-4 w-4 animate-spin"}),D("common.save")]}):D("common.save")})]}):(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,a.jsxs)("div",{className:"flex-1 min-w-0 flex flex-wrap items-center gap-2",children:[!tC&&(0,a.jsxs)(a.Fragment,{children:[tF&&!eN&&(0,a.jsx)(j.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:ty,disabled:ef,children:ef?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(u.A,{className:"mr-2 h-4 w-4 animate-spin"}),D("elaboration.verifying")]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(h.A,{className:"mr-2 h-4 w-4"}),D("elaboration.verifyButton")]})}),eN&&(0,a.jsx)("span",{className:"text-[11px] text-[#00796B]",children:D("elaboration.verifiedQueuedHint")}),ev&&(0,a.jsx)("span",{className:"text-[11px] text-destructive",children:ev}),(0,a.jsx)(eO.w,{ideaUuid:R.uuid,assignee:R.assignee,proposals:O,tasks:J,onStarted:()=>{tc()}}),(0,a.jsx)(eV.s,{ideaUuid:R.uuid,assignee:R.assignee,proposals:O,tasks:J,onStarted:()=>{tc()}})]}),tC&&(0,a.jsx)("span",{className:"text-[11px] text-[#888780]",children:T("containerHint")})]}),(0,a.jsxs)(w.Lt,{children:[(0,a.jsx)(w.tv,{asChild:!0,children:(0,a.jsx)(j.$,{variant:"outline",size:"icon",className:"shrink-0 h-8 w-8 border-[#E5E0D8] text-[#EF4444] hover:bg-[#FFEBEE] hover:text-[#EF4444] hover:border-[#EF4444]",children:(0,a.jsx)(f.A,{className:"h-4 w-4"})})}),(0,a.jsxs)(w.EO,{children:[(0,a.jsxs)(w.wd,{children:[(0,a.jsx)(w.r7,{children:D("ideas.deleteIdea")}),(0,a.jsx)(w.$v,{children:D("ideas.deleteIdeaConfirm",{title:R.title})})]}),(0,a.jsxs)(w.ck,{children:[(0,a.jsx)(w.Zr,{children:D("common.cancel")}),(0,a.jsx)(w.Rx,{variant:"destructive",onClick:tN,disabled:er,children:er?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(u.A,{className:"mr-2 h-4 w-4 animate-spin"}),D("common.delete")]}):D("common.delete")})]})]})]})]})})]}),(0,a.jsx)(eC.h,{open:eY,onOpenChange:e0,ideaUuid:k,projectUuid:F,onMoved:()=>B()}),R&&(0,a.jsx)(eU,{open:e2,onOpenChange:e1,ideaUuid:R.uuid,ideaTitle:R.title,projectUuid:F,currentParentUuid:null!=(t=R.parentUuid)?t:null,descendantUuids:null!=(s=R.descendantUuids)?s:[],onChanged:tc}),R&&(0,a.jsx)(eT.i,{open:e5,onOpenChange:e9,projectUuid:F,parentUuid:R.uuid,parentTitle:R.title,onCreated:e=>{r.oR.success(T("deriveIdea")),P.refresh(),null==S||S(e)}}),ei&&R&&(0,a.jsx)(e$.i,{idea:{uuid:R.uuid,title:R.title,content:R.content,status:R.status,assignee:R.assignee?{type:R.assignee.type,uuid:R.assignee.uuid,name:R.assignee.name}:null},projectUuid:F,currentUserUuid:E,onClose:()=>{el(!1),tc()}}),e3&&e4&&(0,a.jsx)(eA.v,{task:e4,projectUuid:F,currentUserUuid:E,mode:ta?"sidebyside":"overlay",onClose:()=>{e6(null),e8(null)},onBack:()=>{e6(null),e8(null)}}),e7&&(0,a.jsx)(ew.K,{title:e7.title,type:e7.type,content:e7.content,mode:ta?"sidebyside":"overlay",onClose:()=>te(null),onBack:()=>te(null)})]})}},875:(e,t,s)=>{s.d(t,{i:()=>g});var a=s(90508),n=s(1856),i=s(39268),l=s(85226),r=s(22922),c=s(97438),d=s(14554),o=s(15972),x=s(88064),u=s(39077),m=s(39674),p=s(42305),h=s(62990),f=s(59208),j=s(84169);function g(e){var t;let{open:s,onOpenChange:g,projectUuid:v,onCreated:b,parentUuid:N,parentTitle:y}=e,A=(0,i.c)("ideaTracker"),w=(0,i.c)("ideaTracker.lineage"),C=!!N,k=(0,i.c)("common"),[F,E]=(0,n.useState)(""),[B,S]=(0,n.useState)(""),[D,_]=(0,n.useState)(!1),[U,T]=(0,n.useState)(!1),[P,R]=(0,n.useState)(null),[I,L]=(0,n.useState)(!1),M=(0,f.kz)(),z=(null!=(t=null==M?void 0:M.connections)?t:[]).some(e=>"online"===e.effectiveStatus),[$,q]=(0,n.useState)("form"),O=C?"form":$,V=async()=>{let e=F.trim();if(e){T(!0),R(null);try{var t;let s=await fetch("/api/projects/".concat(v,"/ideas"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:e,content:B.trim()||void 0,...N?{parentUuid:N}:{},...D?{isContainer:!0}:{}})}),a=await s.json();a.success&&(null==(t=a.data)?void 0:t.uuid)?(E(""),S(""),_(!1),g(!1),null==b||b(a.data.uuid)):R(a.error||A("error.createFailed"))}catch(e){R(A("error.createFailed"))}finally{T(!1)}}},J=(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"space-y-4 py-2",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(x.J,{htmlFor:"idea-title",children:A("newIdea.ideaTitle")}),(0,a.jsx)(d.p,{id:"idea-title",value:F,onChange:e=>E(e.target.value),placeholder:A("newIdea.titlePlaceholder"),autoFocus:!0,onKeyDown:e=>{!(0,p.P)(e)&&"Enter"===e.key&&!e.shiftKey&&F.trim()&&(e.preventDefault(),V())}})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)(x.J,{htmlFor:"idea-content",children:[A("newIdea.description"),(0,a.jsxs)("span",{className:"ml-1 text-xs font-normal text-[#9A9A9A]",children:["(",k("optional"),")"]})]}),(0,a.jsx)(o.T,{id:"idea-content",value:B,onChange:e=>S(e.target.value),placeholder:A("newIdea.descriptionPlaceholder"),rows:4,className:"resize-none"})]}),(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(u.S,{id:"idea-is-container",checked:D,onCheckedChange:e=>_(!0===e),className:"mt-0.5"}),(0,a.jsxs)("div",{className:"grid gap-1 leading-none",children:[(0,a.jsx)(x.J,{htmlFor:"idea-is-container",className:"cursor-pointer",children:w("makeContainer")}),(0,a.jsx)("p",{className:"text-xs font-normal text-[#9A9A9A]",children:w("containerHint")})]})]}),P&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 px-3 py-2 text-[12px] text-destructive",children:P})]}),(0,a.jsxs)(c.Es,{children:[(0,a.jsx)(r.$,{variant:"outline",onClick:()=>g(!1),disabled:U,children:k("cancel")}),(0,a.jsxs)(r.$,{onClick:V,disabled:U||!F.trim(),className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:[U?(0,a.jsx)(l.A,{className:"mr-2 h-4 w-4 animate-spin"}):null,k("create")]})]})]}),H=async e=>{let t=await (0,h.tm)("/api/ideas/conversational",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectUuid:v,agentUuid:e.agentUuid,connectionUuid:e.connectionUuid,descriptionText:e.userText,...I?{decompose:!0}:{}})});if(!t.ok){let e=null;try{let s=await t.json();"string"==typeof(null==s?void 0:s.error)&&s.error&&(e=s.error)}catch(e){}throw new j.fF(t.status,e)}let s=null;try{var a;let e=await t.json();(null==e?void 0:e.success)&&(null==(a=e.data)?void 0:a.session)&&(s=e.data.session)}catch(e){}if(!s)throw new j.fF(t.status,null);return s},Q=(0,a.jsxs)("div",{className:"space-y-3 py-2",children:[(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)(u.S,{id:"idea-decompose",checked:I,onCheckedChange:e=>L(!0===e),className:"mt-0.5"}),(0,a.jsxs)("div",{className:"grid gap-1 leading-none",children:[(0,a.jsx)(x.J,{htmlFor:"idea-decompose",className:"cursor-pointer",children:A("newIdea.decompose")}),(0,a.jsx)("p",{className:"text-xs font-normal text-[#9A9A9A]",children:A("newIdea.decomposeHint")})]})]}),(0,a.jsx)(j.jH,{dispatch:H,onStarted:e=>{g(!1),null==M||M.openChatForSession(e)}})]});return(0,a.jsx)(c.lG,{open:s,onOpenChange:g,children:(0,a.jsxs)(c.Cf,{className:"sm:max-w-[480px]",children:[(0,a.jsxs)(c.c7,{children:[(0,a.jsx)(c.L3,{children:C?w("deriveIdea"):A("newIdea.title")}),C&&y&&(0,a.jsxs)("p",{className:"text-[13px] text-[#6B6B6B]",children:[w("derivedFrom")," \xb7 ",y]})]}),!C&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(m.tU,{value:O,onValueChange:e=>q(e),children:(0,a.jsxs)(m.j7,{className:"grid w-full grid-cols-2",children:[(0,a.jsx)(m.Xi,{value:"form",children:A("newIdea.modeForm")}),(0,a.jsx)(m.Xi,{value:"conversation",disabled:!z,children:A("newIdea.modeConversation")})]})}),!z&&(0,a.jsxs)("div",{className:"rounded-xl border border-[#EFEBE4] bg-[#FCFBF8] px-3 py-2",children:[(0,a.jsx)("p",{className:"px-1 pt-1 text-[12px] font-medium text-[#6B6B6B]",children:A("newIdea.modeConversationOfflineHint")}),(0,a.jsx)(j.Bs,{variant:"compact"})]})]}),"form"===O?J:Q]})})}},24522:(e,t,s)=>{s.d(t,{K:()=>p});var a=s(90508),n=s(1856),i=s(39268),l=s(70633),r=s(9160),c=s(22922),d=s(57731),o=s(64993),x=s(97261),u=s(82523),m=s(90795);function p(e){let{title:t,type:s,content:p,mode:h="overlay",onClose:f,onBack:j}=e,g=(0,i.c)("documents"),[v,b]=(0,n.useState)(!1);(0,n.useEffect)(()=>{let e=setTimeout(()=>b(!0),300);return()=>clearTimeout(e)},[]),(0,n.useEffect)(()=>{let e=e=>{"Escape"!==e.key||e.defaultPrevented||(e.preventDefault(),f())};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[f]);let N="sidebyside"===h;return(0,a.jsxs)(a.Fragment,{children:[!N&&(0,a.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:f}),(0,a.jsxs)("div",{className:"fixed top-14 md:top-0 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-white shadow-xl border-l border-[#E5E0D8] ".concat(N?"z-40 ".concat(v?"":"animate-in slide-in-from-right duration-300"):"z-50 right-0 ".concat(v?"":"animate-in slide-in-from-right duration-300")),style:N?{right:"".concat(m.L8,"px")}:void 0,children:[(0,a.jsxs)("div",{className:"flex items-center justify-between border-b border-[#F5F2EC] px-6 py-5",children:[j&&(0,a.jsx)(c.$,{variant:"ghost",size:"icon",className:"mr-2 h-8 w-8 shrink-0",onClick:j,children:(0,a.jsx)(l.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C] truncate",children:t}),(0,a.jsx)("div",{className:"mt-1.5",children:(0,a.jsx)(d.E,{variant:"outline",className:"text-[10px] font-medium border-[#E5E0D8] text-[#6B6B6B] bg-[#F5F2EC] px-2 py-0.5 font-mono",children:g(u.y[s]||"typeOther")})})]}),(0,a.jsx)(c.$,{variant:"outline",size:"icon",className:"ml-4 h-8 w-8 shrink-0 border-[#E5E0D8]",onClick:f,children:(0,a.jsx)(r.A,{className:"h-4 w-4 text-[#6B6B6B]"})})]}),(0,a.jsx)(o.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,a.jsx)("div",{className:"px-6 py-5 text-[13px] leading-relaxed text-[#2C2C2A] prose prose-sm max-w-none [&_h1]:text-lg [&_h1]:font-semibold [&_h1]:mt-4 [&_h1]:mb-2 [&_h2]:text-base [&_h2]:font-semibold [&_h2]:mt-3 [&_h2]:mb-1.5 [&_h3]:text-sm [&_h3]:font-medium [&_h3]:mt-2 [&_h3]:mb-1 [&_p]:text-[13px] [&_p]:text-[#4A4A4A] [&_p]:my-1.5 [&_li]:text-[13px] [&_li]:text-[#4A4A4A] [&_ul]:my-1 [&_ol]:my-1 [&_strong]:text-[#2C2C2C] [&_code]:text-[12px] [&_code]:bg-[#F5F2EC] [&_code]:px-1 [&_code]:py-0.5 [&_code]:rounded [&_pre]:bg-[#FAF8F4] [&_pre]:p-3 [&_pre]:rounded-lg [&_pre]:my-2",children:(0,a.jsx)(x.MarkdownContent,{children:(0,u.j)(p)})})})]})]})}},39077:(e,t,s)=>{s.d(t,{S:()=>r});var a=s(90508);s(1856);var n=s(60532),i=s(98861),l=s(24377);function r(e){let{className:t,...s}=e;return(0,a.jsx)(i.Root,{"data-slot":"checkbox",className:(0,l.cn)("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...s,children:(0,a.jsx)(i.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none",children:(0,a.jsx)(n.A,{className:"size-3.5"})})})}},39674:(e,t,s)=>{s.d(t,{Xi:()=>c,av:()=>d,j7:()=>r,tU:()=>l});var a=s(90508);s(1856);var n=s(79834),i=s(24377);function l(e){let{className:t,...s}=e;return(0,a.jsx)(n.Root,{"data-slot":"tabs",className:(0,i.cn)("flex flex-col gap-2",t),...s})}function r(e){let{className:t,...s}=e;return(0,a.jsx)(n.List,{"data-slot":"tabs-list",className:(0,i.cn)("bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",t),...s})}function c(e){let{className:t,...s}=e;return(0,a.jsx)(n.Trigger,{"data-slot":"tabs-trigger",className:(0,i.cn)("data-[state=active]:bg-background data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring inline-flex items-center justify-center gap-1.5 rounded-md px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...s})}function d(e){let{className:t,...s}=e;return(0,a.jsx)(n.Content,{"data-slot":"tabs-content",className:(0,i.cn)("flex-1 outline-none",t),...s})}},40888:(e,t,s)=>{s.d(t,{Q:()=>n});var a=s(52217);let n=(0,a.createServerReference)("40bf94f62ce0ce8184a8c8659a8cf5c81cb64708e8",a.callServer,void 0,a.findSourceMapURL,"getTaskAction")},77390:(e,t,s)=>{s.d(t,{C:()=>i});var a=s(90508),n=s(24377);function i(e){let{done:t,total:s,size:i=14,stroke:l=2,className:r,color:c="#B26B3D",trackColor:d="#EAD9C8"}=e,o=(i-l)/2,x=2*Math.PI*o,u=s>0?Math.min(1,Math.max(0,t/s)):0,m=s>0&&t>=s;return(0,a.jsxs)("svg",{width:i,height:i,viewBox:"0 0 ".concat(i," ").concat(i),className:(0,n.cn)("shrink-0",r),role:"img","aria-label":"".concat(t,"/").concat(s),children:[(0,a.jsx)("circle",{cx:i/2,cy:i/2,r:o,fill:"none",stroke:d,strokeWidth:l}),u>0&&(0,a.jsx)("circle",{cx:i/2,cy:i/2,r:o,fill:"none",stroke:m?"#1D9E75":c,strokeWidth:l,strokeDasharray:x,strokeDashoffset:x*(1-u),strokeLinecap:"round",transform:"rotate(-90 ".concat(i/2," ").concat(i/2,")")})]})}},82523:(e,t,s)=>{function a(e){return e.replace(/\\n/g,"\n")}s.d(t,{j:()=>a,y:()=>n});let n={prd:"typePrd",tech_design:"typeTechDesign",adr:"typeAdr",spec:"typeSpec",guide:"typeGuide",design:"typeDesign",note:"typeNote",report:"typeReport",other:"typeOther"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[38366],{15985:(e,t,l)=>{l.r(t),l.d(t,{ForceGraphCanvas:()=>z,MindMapCanvas:()=>D,centerTransformFor:()=>A,fitTransformFor:()=>_,pinchTransform:()=>S,resolveFocusAlpha:()=>T});var r=l(90508),n=l(1856),i=l(39268),a=l(5616),o=l(66206);let s=(0,o.A)("minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]),u=(0,o.A)("maximize",[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3",key:"1dcmit"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3",key:"1e4gt3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3",key:"wsl5sc"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3",key:"18trek"}]]);var c=l(22922),f=l(92691),d=l(47754),h=l(30423),g=l(76542);let x="#F0EEEA",p={open:{labelKeySuffix:"open",fg:"#888780"},researching:{labelKeySuffix:"researching",fg:"#7F77DD"},answer_questions:{labelKeySuffix:"answerQuestions",fg:"#C47A20"},planning:{labelKeySuffix:"planning",fg:"#7F77DD"},review_proposal:{labelKeySuffix:"reviewProposal",fg:"#C47A20"},building:{labelKeySuffix:"building",fg:"#7F77DD"},verify_work:{labelKeySuffix:"verifyWork",fg:"#C47A20"},done:{labelKeySuffix:"done",fg:"#1D9E75"},closed:{labelKeySuffix:"closed",fg:"#888780"}},y={draft:"bg-[#F5F5F5] text-[#6B6B6B]",pending:"bg-[#FFF3E0] text-[#E65100]",approved:"bg-[#E8F5E9] text-[#2E7D32]",rejected:"bg-[#FFEBEE] text-[#C62828]",revised:"bg-[#F5F5F5] text-[#6B6B6B]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"},m={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]"},b={open:"open",draft:"draft",pending:"pendingReview",approved:"approved",rejected:"rejected",revised:"draft",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},v={prd:"bg-[#E3F2FD] text-[#1976D2]",tech_design:"bg-[#F3E5F5] text-[#7B1FA2]",adr:"bg-[#FFF8E1] text-[#9A6B00]",spec:"bg-[#E8F5E9] text-[#5A9E6F]",guide:"bg-[#E0F2F1] text-[#00796B]",report:"bg-[#FFF8E1] text-[#9A6B00]",design:"bg-[#F3E5F5] text-[#7B1FA2]",note:"bg-[#FFF3E0] text-[#E65100]",other:"bg-[#F5F5F5] text-[#6B6B6B]"},F={prd:"documents.typePrd",tech_design:"documents.typeTechDesign",adr:"documents.typeAdr",spec:"documents.typeSpec",guide:"documents.typeGuide",report:"documents.typeReport",design:"documents.typeDesign",note:"documents.typeNote",other:"documents.typeOther"},M={labelKey:"graph.status.unknown",colorClass:"bg-[#F5F5F5] text-[#6B6B6B]",bg:"#F5F5F5",fg:"#6B6B6B"};function w(e){let t=e.match(/bg-\[(#[0-9A-Fa-f]{3,8})\]/),l=e.match(/text-\[(#[0-9A-Fa-f]{3,8})\]/);return{bg:t?t[1]:M.bg,fg:l?l[1]:M.fg}}function k(e){let{title:t,x:l,y:n}=e;return(0,r.jsx)("div",{"data-testid":"node-tooltip",role:"tooltip",className:"pointer-events-none absolute z-20 max-w-[260px] rounded-lg border border-[#EAE4DB] bg-white px-3 py-2 shadow-lg",style:{left:l,top:n},children:(0,r.jsx)("p",{className:"text-sm font-medium leading-snug text-[#2C2C2C]",children:t})})}Object.keys(p),Object.keys(y),Object.keys(m),Object.keys(v);let C={idea:"#7C4DFF",proposal:"#2563EB",task:"#E8833A",document:"#00897B"},E={idea:["M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5","M9 18h6","M10 22h4"],proposal:["M9 2h6a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z","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","M12 11h4","M12 16h4","M8 11h.01","M8 16h.01"],task:["M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344","m9 11 3 3L22 4"],document:["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","M14 2v5a1 1 0 0 0 1 1h5","M10 9H8","M16 13H8","M16 17H8"]},B={derive:"#CFC6B6",lineage:"#7C4DFF",depends:"#E8833A"};function T(e,t,l){return t?t.has(e)?1:.18:l&&l.size>0?l.has(e)?1:.18:1}function A(e,t,l){return{scale:l,tx:t.width/2-e.x*l,ty:t.height/2-e.y*l}}function S(e,t){let l=Math.min(2.5,Math.max(.2,e.view.scale*(t.dist/e.dist))),r=(e.midpoint.x-e.view.tx)/e.view.scale,n=(e.midpoint.y-e.view.ty)/e.view.scale;return{scale:l,tx:t.midpoint.x-r*l,ty:t.midpoint.y-n*l}}let j=e=>1-Math.pow(1-e,3);function D(e){var t;let{nodes:l,links:o,selectedId:D,onNodeClick:z,matchIds:K=null,currentMatchId:W=null,centerNodeId:H=null}=e,{getPresence:L}=(0,d.xQ)(),V=(0,i.c)(),Y=(0,n.useMemo)(()=>({idea:V("graph.nodeType.idea"),proposal:V("graph.nodeType.proposal"),task:V("graph.nodeType.task"),document:V("graph.nodeType.document")}),[V]),O=(0,n.useCallback)(e=>{if(!e.status)return null;let t=function(e,t){if(!t||"unknown"===t)return M;if("idea"===e){let e=p[t];if(!e)return M;let l="bg-[".concat(x,"] text-[").concat(e.fg,"]");return{labelKey:"ideaTracker.badge.".concat(e.labelKeySuffix),colorClass:l,bg:x,fg:e.fg}}if("document"===e){let e=v[t],l=F[t];if(!e||!l)return M;let{bg:r,fg:n}=w(e);return{labelKey:l,colorClass:e,bg:r,fg:n}}let l=("proposal"===e?y:m)[t],r=b[t];if(!l||!r)return M;let{bg:n,fg:i}=w(l);return{labelKey:"status.".concat(r),colorClass:l,bg:n,fg:i}}(e.type,e.status);return{bg:t.bg,fg:t.fg,label:V(t.labelKey)}},[V]),X=(0,n.useRef)(null),$=(0,n.useRef)(null),[q,Z]=(0,n.useState)({width:800,height:600}),[G,Q]=(0,n.useState)(null),[U,J]=(0,n.useState)(null),ee=(0,n.useRef)(U);ee.current=U;let et=(0,n.useMemo)(()=>(0,g.U)(l,o),[l,o]),el=(0,n.useMemo)(()=>{let e=new Map;for(let t of l)e.set(t.id,t);return e},[l]),er=G&&null!=(t=el.get(G))?t:null,en=et.treeParentById,ei=(0,n.useMemo)(()=>{let e=new Map;for(let t of l)e.set(t.id,new Set);for(let[l,r]of en){var t;null==(t=e.get(r))||t.add(l)}return e},[l,en]),ea=null!=G?G:D,eo=(0,n.useMemo)(()=>{if(!ea||!el.has(ea))return null;let e=new Set([ea]),t=ea;for(;void 0!==t;){let l=en.get(t);if(void 0===l||e.has(l))break;e.add(l),t=l}let l=[ea];for(;l.length;){var r;let t=l.pop();for(let n of null!=(r=ei.get(t))?r:[])e.has(n)||(e.add(n),l.push(n))}return e},[ea,el,en,ei]),es=(0,n.useRef)(new Map),eu=(0,n.useRef)(new Map),ec=(0,n.useRef)({scale:1,tx:0,ty:0}),ef=(0,n.useRef)(!1),ed=(0,n.useRef)(null);(0,n.useEffect)(()=>{var e,t;let l=es.current,r=eu.current,n=performance.now(),i=et.positions;for(let[t,a]of i){let i=el.get(t);if(!i)continue;let o={x:a.x,y:a.y},s=l.get(t);if(s&&!s.exit){let l=null!=(e=r.get(t))?e:s.to;(l.x!==o.x||l.y!==o.y)&&(s.from={...l},s.to=o,s.start=n,s.enter=!1),s.node=i}else l.set(t,{from:{...o},to:o,start:n,enter:!0,exit:!1,node:i}),r.set(t,{...o})}for(let[e,a]of l)i.has(e)||a.exit||(a.exit=!0,a.enter=!1,a.start=n,a.from=null!=(t=r.get(e))?t:a.to,a.to=a.from);ex()},[et,el]),(0,n.useEffect)(()=>{let e=X.current;if(!e)return;let t=(e,t)=>Z({width:Math.max(1,Math.floor(e)),height:Math.max(1,Math.floor(t))}),l=new ResizeObserver(e=>{var l;let r=null==(l=e[0])?void 0:l.contentRect;r&&t(r.width,r.height)});return l.observe(e),t(e.clientWidth,e.clientHeight),()=>l.disconnect()},[]),(0,n.useEffect)(()=>{!ef.current&&0!==et.positions.size&&(q.width<=1||q.height<=1||(ef.current=!0,function(e,t,l){let r=_(e,t);r&&(l.current=r)}(et,q,ec),ex()))},[et,q]);let eh=(0,n.useCallback)(()=>{var e;ed.current=null;let t=$.current;if(!t)return;let r=t.getContext("2d");if(!r)return;let n=window.devicePixelRatio||1,{width:i,height:a}=q,s=Math.floor(i*n),u=Math.floor(a*n);t.width!==s&&(t.width=s),t.height!==u&&(t.height=u);let c=ec.current,f=es.current,d=eu.current,g=performance.now(),x=!1;for(let[e,t]of f){let l=Math.min(1,(g-t.start)/300),r=j(l);l<1&&(x=!0),t.exit?(d.set(e,{...t.from}),l>=1&&(f.delete(e),d.delete(e))):d.set(e,{x:t.from.x+(t.to.x-t.from.x)*r,y:t.from.y+(t.to.y-t.from.y)*r})}for(let[e,t]of(r.setTransform(n,0,0,n,0,0),r.fillStyle="#FAF8F4",r.fillRect(0,0,i,a),r.setTransform(n*c.scale,0,0,n*c.scale,n*c.tx,n*c.ty),function(e,t){var l,r,n,i,a,o,s;let{links:u,treeParentById:c,rendered:f,anims:d,hoverId:h,selectedId:g,focusLineage:x}=t,p=null!=h?h:g,y=e=>c.get(e.target)===e.source;for(let t of u){if(!y(t))continue;let n=f.get(t.source),i=f.get(t.target);if(!n||!i||(null==(l=d.get(t.source))?void 0:l.exit)||(null==(r=d.get(t.target))?void 0:r.exit))continue;let a=!p||(o=x,s=t,!!o&&o.has(s.source)&&o.has(s.target)),u=B[t.kind];e.save(),e.strokeStyle=a?u:I(u,.35),e.lineWidth=p&&(t.source===p||t.target===p)?2.4:1.5,function(e,t,l){let r=t.x+100,n=t.y,i=l.x-100,a=l.y,o=r+(i-r)/2;e.beginPath(),e.moveTo(r,n),e.bezierCurveTo(o,n,o,a,i,a)}(e,n,i),e.stroke(),P(e,n,i,e.strokeStyle),e.restore()}for(let t of u){if(y(t))continue;let l=f.get(t.source),r=f.get(t.target);if(!l||!r||(null==(n=d.get(t.source))?void 0:n.exit)||(null==(i=d.get(t.target))?void 0:i.exit))continue;let o=!!p&&(t.source===p||t.target===p||null!=x&&(x.has(t.source)||x.has(t.target))),s=null!=(a=B[t.kind])?a:"#E8833A";e.save(),e.setLineDash([6,5]),e.lineWidth=o?2:1.2,e.strokeStyle=o?s:I(s,.18),function(e,t,l){let r=(t.x+l.x)/2,n=(t.y+l.y)/2-Math.min(40,.15*Math.abs(l.x-t.x));e.beginPath(),e.moveTo(t.x,t.y),e.quadraticCurveTo(r,n,l.x,l.y)}(e,l,r),e.stroke(),o&&P(e,l,r,s),e.restore()}}(r,{links:o,treeParentById:en,rendered:d,anims:f,hoverId:G,selectedId:D,focusLineage:eo}),f)){let l=d.get(e);if(!l)continue;let n=j(Math.min(1,(g-t.start)/300)),i=1,a=1;t.enter?(i=n,a=.85+.15*n):t.exit&&(i=1-n,a=1-.1*n),function(e,t,l,r){let{opacity:n,scale:i,hoverId:a,selectedId:o,focusLineage:s,matchIds:u,currentMatchId:c,getPresence:f,typeLabels:d,resolveStatusPill:g}=r,x=t.type,p=C[x],y=T(t.id,s,u),m=t.id===o,b=t.id===a,v=null!=c&&t.id===c;e.save(),e.globalAlpha=n*y,1!==i&&(e.translate(l.x,l.y),e.scale(i,i),e.translate(-l.x,-l.y));let F=l.x-100,M=l.y-23,w=f(x,t.id),k=w.find(e=>"mutate"===e.action),B=null!=k?k:w[w.length-1];if(B){let t=(0,h.j)(B.agentName);e.save(),e.shadowColor=t,e.shadowBlur=18,e.lineWidth=2.5,e.strokeStyle=t,k||e.setLineDash([5,4]),R(e,F-4,M-4,208,54,15),e.stroke(),e.restore(),e.save(),e.setLineDash([]),e.font="600 9px ui-sans-serif, system-ui";let l=B.agentName,r=e.measureText(l).width+12,n=M-4-15-3;e.fillStyle=t,R(e,F,n,r,15,5),e.fill(),e.fillStyle="#FFFFFF",e.textAlign="left",e.textBaseline="middle",e.fillText(l,F+6,n+7.5+.5),e.restore()}(b||m)&&(e.save(),e.shadowColor=p,e.shadowBlur=b?26:16,e.fillStyle=p,e.globalAlpha=0,R(e,F,M,200,46,12),e.fill(),e.restore()),e.fillStyle="#FFFFFF",e.strokeStyle=m?p:"#EAE4DB",e.lineWidth=m?2:1,R(e,F,M,200,46,12),e.fill(),e.stroke(),v&&(e.save(),e.globalAlpha=n,e.strokeStyle="#EC4899",e.lineWidth=2.5,R(e,F-3,M-3,206,52,14),e.stroke(),e.restore());let A=F+8,S=l.y-15;e.fillStyle=p,R(e,A,S,30,30,9),e.fill(),function(e,t,l,r,n){let i=6.6,a=(n-2*i)/24;for(let n of(e.save(),e.translate(l+i,r+i),e.scale(a,a),e.strokeStyle="#FFFFFF",e.lineWidth=2,e.lineCap="round",e.lineJoin="round",t))e.stroke(new Path2D(n));e.restore()}(e,E[x],A,S,30);let j=!!t.hasAffordance,D=A+30+10,z=F+200-(j?40:12),P=z-D,_=l.y-8;e.textAlign="left",e.textBaseline="alphabetic",e.font="600 9px ui-monospace, monospace",e.fillStyle=p,e.fillText(d[x],D,_);let K=e.measureText(d[x]).width,W=g(t);if(W){let t=z-(D+K+6);if(t>=16){e.font="600 9px ui-sans-serif, system-ui";let l=N(e,W.label,t-10),r=Math.min(t,e.measureText(l).width+10),n=z-r,i=_-12+2;e.fillStyle=W.bg,R(e,n,i,r,12,5),e.fill(),e.fillStyle=W.fg,e.textBaseline="middle",e.fillText(l,n+5,i+6+.5),e.textBaseline="alphabetic"}}if(e.fillStyle="#2C2C2C",e.font="500 12px ui-sans-serif, system-ui",e.textAlign="left",e.fillText(N(e,t.title,P-4),D,l.y+7),j){var H;let r=F+200-40;e.strokeStyle="#EFEAE2",e.lineWidth=1,e.beginPath(),e.moveTo(r,M+7),e.lineTo(r,M+46-7),e.stroke(),e.fillStyle=I(p,b?.16:.08),R(e,r+4,M+6,30,34,8),e.fill();let n=r+20-1,i=!t.expanded,a=null!=(H=t.childCount)?H:0;e.strokeStyle=p,e.lineWidth=2,e.lineCap="round";let o=i&&a>0?l.y-4:l.y;e.beginPath(),e.moveTo(n-5,o),e.lineTo(n+5,o),i&&(e.moveTo(n,o-5),e.lineTo(n,o+5)),e.stroke(),i&&a>0&&(e.fillStyle=p,e.font="600 9px ui-sans-serif, system-ui",e.textAlign="center",e.textBaseline="middle",e.fillText("".concat(a),n,l.y+9))}e.restore()}(r,t.node,l,{opacity:i,scale:a,hoverId:G,selectedId:D,focusLineage:eo,matchIds:K,currentMatchId:W,getPresence:L,typeLabels:Y,resolveStatusPill:O})}let p=G?d.get(G):void 0,y=!!G&&(null==(e=f.get(G))?void 0:e.exit);if(p&&!y){let e=p.x*c.scale+c.tx,t=p.y*c.scale+c.ty,l=100*c.scale,r=e+l+12,n=r+260<=i-8?r:e-l-12-260;n=Math.max(8,Math.min(n,i-260-8));let o=t-32;o=Math.max(8,Math.min(o,a-64-8)),J(e=>e&&.5>Math.abs(e.x-n)&&.5>Math.abs(e.y-o)?e:{x:n,y:o})}else null!==ee.current&&J(null);(x||function(e,t){for(let l of t)if(e(l.type,l.id).length>0)return!0;return!1}(L,l))&&ex()},[q,o,en,G,D,eo,K,W,L,l,Y,O]),eg=(0,n.useRef)(eh);eg.current=eh;let ex=(0,n.useCallback)(()=>{null==ed.current&&(ed.current=requestAnimationFrame(()=>eg.current()))},[]);(0,n.useEffect)(()=>{ex()},[G,D,eo,K,W,q,L,ex]),(0,n.useEffect)(()=>{if(!H||q.width<=1||q.height<=1)return;let e=et.positions.get(H);e&&(ec.current=A(e,q,ec.current.scale),ex())},[H,et,q,ex]),(0,n.useEffect)(()=>()=>{null!=ed.current&&(cancelAnimationFrame(ed.current),ed.current=null),null!=eF.current&&(clearTimeout(eF.current),eF.current=null)},[]);let ep=(0,n.useRef)(null),ey=(0,n.useRef)(new Map),em=(0,n.useRef)(null),eb=(0,n.useRef)(!1),ev=(0,n.useRef)(null),eF=(0,n.useRef)(null),eM=(0,n.useCallback)(()=>{null!==eF.current&&(clearTimeout(eF.current),eF.current=null)},[]),ew=(0,n.useCallback)(()=>{let e=[...ey.current.values()];if(2!==e.length)return null;let[t,l]=e,r=l.x-t.x,n=l.y-t.y;return{midpoint:{x:(t.x+l.x)/2,y:(t.y+l.y)/2},dist:Math.hypot(r,n)||1}},[]),ek=(0,n.useCallback)((e,t)=>{let l=ec.current;return{x:(e-l.tx)/l.scale,y:(t-l.ty)/l.scale}},[]),eC=(0,n.useCallback)((e,t)=>{let l=eu.current;for(let[n,i]of es.current){if(i.exit)continue;let a=l.get(n);if(a&&e>=a.x-100&&e<=a.x+100&&t>=a.y-23&&t<=a.y+23){var r;return null!=(r=i.node)?r:null}}return null},[]),eE=(0,n.useCallback)(e=>{var t,l,r;let n=null==(t=$.current)?void 0:t.getBoundingClientRect();if(!n)return;let i=e.clientX-n.left,a=e.clientY-n.top;if(ey.current.set(e.pointerId,{x:i,y:a}),null==(l=(r=e.target).setPointerCapture)||l.call(r,e.pointerId),ey.current.size>=2){eb.current=!0;let e=ew();e&&(em.current={...e,view:{...ec.current}}),ep.current&&(ep.current.moved=!0),eM();return}ep.current={startX:i,startY:a,origTx:ec.current.tx,origTy:ec.current.ty,moved:!1}},[ew,eM]),eB=(0,n.useCallback)(e=>{var t;let l=null==(t=$.current)?void 0:t.getBoundingClientRect();if(!l)return;let r=e.clientX-l.left,n=e.clientY-l.top;ey.current.has(e.pointerId)&&ey.current.set(e.pointerId,{x:r,y:n});let i=em.current;if(i){let e=ew();e&&(ec.current=S(i,e),ex());return}let a=ep.current;if(a){let e=r-a.startX,t=n-a.startY;!a.moved&&Math.abs(e)+Math.abs(t)>3&&(a.moved=!0),a.moved&&(ec.current={...ec.current,tx:a.origTx+e,ty:a.origTy+t},ex());return}let o=ek(r,n),s=eC(o.x,o.y),u=s?s.id:null;Q(e=>e===u?e:u)},[eC,ek,ex,ew]),eT=(0,n.useCallback)((e,t)=>{var l;let r=ec.current,n=_(et,q),i=Math.min(2.5,(null!=(l=null==n?void 0:n.scale)?l:r.scale)*2),a=(e-r.tx)/r.scale,o=(t-r.ty)/r.scale;ec.current={scale:i,tx:e-a*i,ty:t-o*i},ex()},[et,q,ex]),eA=(0,n.useCallback)(e=>{var t,l,r;let n=null==(t=$.current)?void 0:t.getBoundingClientRect();if(ey.current.delete(e.pointerId),null==(l=(r=e.target).releasePointerCapture)||l.call(r,e.pointerId),ey.current.size<2&&(em.current=null),eb.current){ep.current=null,0===ey.current.size&&(eb.current=!1);return}let i=ep.current;if(ep.current=null,!n||(null==i?void 0:i.moved))return;let a=e.clientX-n.left,o=e.clientY-n.top,s=performance.now(),u=ev.current;if(u&&s-u.t<=300&&30>=Math.hypot(a-u.x,o-u.y)){ev.current=null,eM();let e=_(et,q);null!==e&&.01>Math.abs(ec.current.scale-e.scale)?eT(a,o):e&&(ec.current=e,ex());return}ev.current={x:a,y:o,t:s};let c=ek(a,o),f=eC(c.x,c.y);if(!f)return;let d=!1;if(f.hasAffordance){let e=eu.current.get(f.id);if(e){let t=e.x+100;c.x>=t-40&&23>=Math.abs(c.y-e.y)&&(d=!0)}}if("touch"===e.pointerType&&!d){eM();let{id:e,type:t}=f;eF.current=setTimeout(()=>{eF.current=null,z(e,t,!1)},300);return}z(f.id,f.type,d)},[eC,ek,z,et,q,eT,ex,eM]),eS=(0,n.useCallback)(e=>{var t,l;ey.current.delete(e.pointerId),null==(t=(l=e.target).releasePointerCapture)||t.call(l,e.pointerId),ey.current.size<2&&(em.current=null),0===ey.current.size&&(ep.current=null,eb.current=!1)},[]),ej=(0,n.useCallback)((e,t,l)=>{let r=ec.current,n=Math.min(2.5,Math.max(.2,r.scale*e)),i=(t-r.tx)/r.scale,a=(l-r.ty)/r.scale;ec.current={scale:n,tx:t-i*n,ty:l-a*n},ex()},[ex]),eD=(0,n.useRef)(ej);eD.current=ej,(0,n.useEffect)(()=>{let e=$.current;if(!e)return;let t=t=>{let l=e.getBoundingClientRect(),r=t.clientX-l.left,n=t.clientY-l.top;t.preventDefault();let i=t.ctrlKey?.01:.0015;eD.current(Math.exp(-t.deltaY*i),r,n)};return e.addEventListener("wheel",t,{passive:!1}),()=>e.removeEventListener("wheel",t)},[ex]);let ez=(0,n.useCallback)(()=>{ej(1.3,q.width/2,q.height/2)},[ej,q.width,q.height]),eP=(0,n.useCallback)(()=>{ej(.7692307692307692,q.width/2,q.height/2)},[ej,q.width,q.height]),eR=(0,n.useCallback)(()=>{let e=_(et,q);e&&(ec.current=e,ex())},[et,q,ex]),eN=et.positions.size>0;return(0,r.jsxs)("div",{ref:X,className:"absolute inset-0",children:[(0,r.jsx)("canvas",{ref:$,className:"block h-full w-full touch-none",style:{width:q.width,height:q.height,cursor:G?"pointer":"grab"},onPointerDown:eE,onPointerMove:eB,onPointerUp:eA,onPointerCancel:eS,onPointerLeave:()=>Q(null)}),er&&U&&(0,r.jsx)(k,{title:er.title,x:U.x,y:U.y}),eN&&(0,r.jsx)(f.Bc,{delayDuration:300,children:(0,r.jsxs)("div",{className:"absolute bottom-3 left-3 flex flex-col gap-1 rounded-lg border border-[#EAE4DB] bg-white/95 p-1 shadow-sm backdrop-blur-sm",children:[(0,r.jsxs)(f.m_,{children:[(0,r.jsx)(f.k$,{asChild:!0,children:(0,r.jsx)(c.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:ez,"aria-label":V("graph.zoom.in"),"data-testid":"graph-zoom-in",className:"text-[#6B6B6B]",children:(0,r.jsx)(a.A,{className:"h-4 w-4"})})}),(0,r.jsx)(f.ZI,{side:"right",children:V("graph.zoom.in")})]}),(0,r.jsxs)(f.m_,{children:[(0,r.jsx)(f.k$,{asChild:!0,children:(0,r.jsx)(c.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:eP,"aria-label":V("graph.zoom.out"),"data-testid":"graph-zoom-out",className:"text-[#6B6B6B]",children:(0,r.jsx)(s,{className:"h-4 w-4"})})}),(0,r.jsx)(f.ZI,{side:"right",children:V("graph.zoom.out")})]}),(0,r.jsxs)(f.m_,{children:[(0,r.jsx)(f.k$,{asChild:!0,children:(0,r.jsx)(c.$,{type:"button",variant:"ghost",size:"icon-sm",onClick:eR,"aria-label":V("graph.zoom.fit"),"data-testid":"graph-zoom-fit",className:"text-[#6B6B6B]",children:(0,r.jsx)(u,{className:"h-4 w-4"})})}),(0,r.jsx)(f.ZI,{side:"right",children:V("graph.zoom.fit")})]})]})})]})}let z=D;function P(e,t,l,r){let n=l.x-100,i=l.y,a=Math.atan2(i-t.y,n-t.x);e.save(),e.setLineDash([]),e.fillStyle=r,e.beginPath(),e.moveTo(n,i),e.lineTo(n-6*Math.cos(a-Math.PI/6),i-6*Math.sin(a-Math.PI/6)),e.lineTo(n-6*Math.cos(a+Math.PI/6),i-6*Math.sin(a+Math.PI/6)),e.closePath(),e.fill(),e.restore()}function R(e,t,l,r,n,i){let a=Math.min(i,r/2,n/2);e.beginPath(),e.moveTo(t+a,l),e.arcTo(t+r,l,t+r,l+n,a),e.arcTo(t+r,l+n,t,l+n,a),e.arcTo(t,l+n,t,l,a),e.arcTo(t,l,t+r,l,a),e.closePath()}function N(e,t,l){if(e.measureText(t).width<=l)return t;let r=0,n=t.length;for(;r<n;){let i=r+n+1>>1;e.measureText(t.slice(0,i)+"…").width<=l?r=i:n=i-1}return t.slice(0,r)+"…"}function I(e,t){let l=Math.round(255*t).toString(16).padStart(2,"0");return"".concat(e).concat(l)}function _(e,t){let l=1/0,r=1/0,n=-1/0,i=-1/0;for(let t of e.positions.values())t.x-100<l&&(l=t.x-100),t.x+100>n&&(n=t.x+100),t.y-23<r&&(r=t.y-23),t.y+23>i&&(i=t.y+23);if(!Number.isFinite(l))return null;let a=n-l||1,o=i-r||1,s=Math.min(2,Math.max(.2,Math.min((t.width-120)/a,(t.height-120)/o))),u=(l+n)/2,c=(r+i)/2;return{scale:s,tx:t.width/2-u*s,ty:t.height/2-c*s}}}}]);