@chorus-aidlc/chorus 0.7.1 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +251 -251
  3. package/.next/standalone/.next/app-path-routes-manifest.json +42 -42
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/prerender-manifest.json +48 -48
  6. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +1 -1
  7. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
  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]/ideas/[ideaUuid]/page.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/[ideaUuid]/page.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/[ideaUuid]/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/page.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/page.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +2 -2
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  41. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  42. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  45. package/.next/standalone/.next/server/app/_not-found.rsc +6 -6
  46. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/.next/server/app/admin/companies/new.html +1 -1
  49. package/.next/standalone/.next/server/app/admin/companies/new.rsc +6 -6
  50. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/admin/companies.html +1 -1
  52. package/.next/standalone/.next/server/app/admin/companies.rsc +6 -6
  53. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/.next/server/app/admin.html +1 -1
  55. package/.next/standalone/.next/server/app/admin.rsc +6 -6
  56. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/auth/session/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  75. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  76. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/documents/[uuid]/route.js +1 -1
  78. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  85. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/mcp/route.js +5 -5
  87. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  91. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  92. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  104. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  105. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route.js +1 -1
  107. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js +1 -1
  112. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  113. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js +1 -1
  114. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  115. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js +1 -1
  116. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route.js +1 -1
  119. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js +1 -1
  124. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js +1 -1
  126. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  127. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js +1 -1
  128. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  129. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js +1 -1
  130. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js +1 -1
  132. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  133. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  135. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  137. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  139. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  141. package/.next/standalone/.next/server/app/index.html +1 -1
  142. package/.next/standalone/.next/server/app/index.rsc +6 -6
  143. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/login/admin.html +1 -1
  145. package/.next/standalone/.next/server/app/login/admin.rsc +6 -6
  146. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  147. package/.next/standalone/.next/server/app/login/callback.html +1 -1
  148. package/.next/standalone/.next/server/app/login/callback.rsc +6 -6
  149. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  151. package/.next/standalone/.next/server/app/login/pick-workspace.html +1 -1
  152. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +6 -6
  153. package/.next/standalone/.next/server/app/login/silent-refresh/page_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/login/silent-refresh.html +1 -1
  155. package/.next/standalone/.next/server/app/login/silent-refresh.rsc +6 -6
  156. package/.next/standalone/.next/server/app/login.html +1 -1
  157. package/.next/standalone/.next/server/app/login.rsc +6 -6
  158. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  159. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/onboarding.html +1 -1
  162. package/.next/standalone/.next/server/app/onboarding.rsc +7 -7
  163. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  164. package/.next/standalone/.next/server/app/projects.html +1 -1
  165. package/.next/standalone/.next/server/app/projects.rsc +8 -8
  166. package/.next/standalone/.next/server/app/settings.html +1 -1
  167. package/.next/standalone/.next/server/app/settings.rsc +8 -8
  168. package/.next/standalone/.next/server/app-paths-manifest.json +42 -42
  169. package/.next/standalone/.next/server/chunks/1002.js +1 -1
  170. package/.next/standalone/.next/server/chunks/1596.js +2 -2
  171. package/.next/standalone/.next/server/chunks/1673.js +1 -0
  172. package/.next/standalone/.next/server/chunks/1871.js +1 -1
  173. package/.next/standalone/.next/server/chunks/2570.js +1 -1
  174. package/.next/standalone/.next/server/chunks/2618.js +1 -1
  175. package/.next/standalone/.next/server/chunks/{2675.js → 3139.js} +1 -1
  176. package/.next/standalone/.next/server/chunks/3405.js +1 -0
  177. package/.next/standalone/.next/server/chunks/4294.js +1 -0
  178. package/.next/standalone/.next/server/chunks/5044.js +1 -0
  179. package/.next/standalone/.next/server/chunks/6207.js +1 -1
  180. package/.next/standalone/.next/server/chunks/6320.js +2 -2
  181. package/.next/standalone/.next/server/chunks/6836.js +1 -0
  182. package/.next/standalone/.next/server/chunks/8322.js +2 -2
  183. package/.next/standalone/.next/server/chunks/8844.js +1 -1
  184. package/.next/standalone/.next/server/chunks/8881.js +1 -1
  185. package/.next/standalone/.next/server/chunks/937.js +2 -2
  186. package/.next/standalone/.next/server/chunks/9508.js +2 -2
  187. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  188. package/.next/standalone/.next/server/next-font-manifest.js +1 -1
  189. package/.next/standalone/.next/server/next-font-manifest.json +1 -1
  190. package/.next/standalone/.next/server/pages/404.html +1 -1
  191. package/.next/standalone/.next/server/pages/500.html +1 -1
  192. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  193. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  194. package/.next/standalone/.next/static/chunks/10739-a14d0dc7271f247e.js +1 -0
  195. package/.next/standalone/.next/static/chunks/19126-f1bc396538752bce.js +1 -0
  196. package/.next/standalone/.next/static/chunks/{53664-a2be2eaacce03f0f.js → 23588-66d80958224a8544.js} +1 -1
  197. package/.next/standalone/.next/static/chunks/32190-a110356fb68a4333.js +1 -0
  198. package/.next/standalone/.next/static/chunks/65371-d3686d82abca6495.js +1 -0
  199. package/.next/standalone/.next/static/chunks/70317-49653c6dce23f1d9.js +1 -0
  200. package/.next/standalone/.next/static/chunks/8731-7869a6ed671c63a3.js +1 -0
  201. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-719f0815a37f19be.js +1 -0
  202. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-bc8c3c0362de377c.js +1 -0
  203. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-c1c4b5798c494341.js +1 -0
  204. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-29ac4172940780e0.js +1 -0
  205. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/ideas/[ideaUuid]/{page-2d820769aa7bcaf6.js → page-e59232665c3a0412.js} +1 -1
  206. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/ideas/{page-dec0e71221d77928.js → page-9b1e02b5e2cfb410.js} +1 -1
  207. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-567e98e9e90a7ef1.js +1 -0
  208. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/{page-bc66567cb9c40bf0.js → page-31f4ffd9778a39ed.js} +1 -1
  209. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/{page-86cfeb421fa97830.js → page-8eded17e1e44522d.js} +1 -1
  210. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-7fe70579023330da.js → page-e5c99f2020b904f5.js} +1 -1
  211. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-8c51993bb3866a55.js → page-7947010e9684fbcf.js} +1 -1
  212. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/{page-80566dcc1cd42bee.js → page-5326f2b34b200e50.js} +1 -1
  213. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-a01b45dbe80aeecf.js +1 -0
  214. package/.next/standalone/.next/static/chunks/app/{layout-22f1a931323bbb60.js → layout-482dee7dace72c88.js} +1 -1
  215. package/.next/standalone/.next/static/chunks/app/onboarding/{page-8d755192f0f67938.js → page-ac0593c045c64013.js} +1 -1
  216. package/.next/standalone/.next/static/css/84edd78de243cde6.css +1 -0
  217. package/.next/standalone/.next/static/css/{ca9796ac54f96058.css → a577d38ad6d7491b.css} +1 -1
  218. package/.next/standalone/.next/static/media/0f1bdadaf30e2d5f-s.woff2 +0 -0
  219. package/.next/standalone/.next/static/media/22a5144ee8d83bca-s.p.woff2 +0 -0
  220. package/.next/standalone/.next/static/media/2c34d62a75506231-s.woff2 +0 -0
  221. package/.next/standalone/.next/static/media/601f5c280d60caca-s.woff2 +0 -0
  222. package/.next/standalone/.next/static/media/9766a7e9e2e0ad5a-s.woff2 +0 -0
  223. package/.next/standalone/.next/static/media/a115172161b307bb-s.woff2 +0 -0
  224. package/.next/standalone/.next/static/media/aa016aab0e6d1295-s.woff2 +0 -0
  225. package/.next/standalone/.next/static/media/b66cf8e69499582a-s.woff2 +0 -0
  226. package/.next/standalone/.next/static/media/d100b2a099e34044-s.woff2 +0 -0
  227. package/.next/standalone/.next/static/media/f5271587012faf78-s.p.woff2 +0 -0
  228. package/.next/standalone/.next/static/media/f639721981034f88-s.woff2 +0 -0
  229. package/.next/standalone/package.json +1 -1
  230. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +7 -1
  231. package/.next/standalone/public/chorus-plugin/agents/proposal-reviewer.md +1 -1
  232. package/.next/standalone/public/chorus-plugin/agents/task-reviewer.md +1 -1
  233. package/.next/standalone/public/chorus-plugin/bin/on-post-verify-task.sh +190 -0
  234. package/.next/standalone/public/chorus-plugin/bin/on-session-start.sh +58 -0
  235. package/.next/standalone/public/chorus-plugin/bin/test-syntax.sh +1 -0
  236. package/.next/standalone/public/chorus-plugin/bin/tests/test-on-post-verify-task.sh +365 -0
  237. package/.next/standalone/public/chorus-plugin/hooks/hooks.json +9 -0
  238. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +2 -1
  239. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +9 -1
  240. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
  241. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +436 -0
  242. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +11 -1
  243. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  244. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  245. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +26 -4
  246. package/README.md +34 -7
  247. package/README.zh.md +15 -8
  248. package/chorus.mjs +56 -12
  249. package/package.json +1 -1
  250. package/.next/standalone/.next/server/chunks/1639.js +0 -1
  251. package/.next/standalone/.next/server/chunks/3300.js +0 -1
  252. package/.next/standalone/.next/server/chunks/8251.js +0 -1
  253. package/.next/standalone/.next/server/chunks/8584.js +0 -1
  254. package/.next/standalone/.next/server/chunks/9051.js +0 -1
  255. package/.next/standalone/.next/static/chunks/10739-5c185aa0432f5d56.js +0 -1
  256. package/.next/standalone/.next/static/chunks/19126-858a24cab6fd338a.js +0 -1
  257. package/.next/standalone/.next/static/chunks/29445-04c4ab36da85b7da.js +0 -1
  258. package/.next/standalone/.next/static/chunks/39611-cc227784ed679a6d.js +0 -1
  259. package/.next/standalone/.next/static/chunks/96919-8cbf6310c703e7af.js +0 -1
  260. package/.next/standalone/.next/static/chunks/99513-24849ff68a8098e1.js +0 -1
  261. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-acddb9c84f5d1607.js +0 -1
  262. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-b4c6141dd26cc506.js +0 -1
  263. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-4bf7bff8d68509f9.js +0 -1
  264. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-37a0cea0ba40c31b.js +0 -1
  265. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-355321010dd82e56.js +0 -1
  266. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-8db25385236a9bbf.js +0 -1
  267. package/.next/standalone/.next/static/css/de70bee13400563f.css +0 -1
  268. package/.next/standalone/.next/static/media/4cf2300e9c8272f7-s.p.woff2 +0 -0
  269. package/.next/standalone/.next/static/media/747892c23ea88013-s.woff2 +0 -0
  270. package/.next/standalone/.next/static/media/8d697b304b401681-s.woff2 +0 -0
  271. package/.next/standalone/.next/static/media/93f479601ee12b01-s.p.woff2 +0 -0
  272. package/.next/standalone/.next/static/media/9610d9e46709d722-s.woff2 +0 -0
  273. package/.next/standalone/.next/static/media/ba015fad6dcf6784-s.woff2 +0 -0
  274. /package/.next/standalone/.next/static/{TJ6qFSxjQGUSajvwbI2qu → bLmYoXAXta69K0xmICa8D}/_buildManifest.js +0 -0
  275. /package/.next/standalone/.next/static/{TJ6qFSxjQGUSajvwbI2qu → bLmYoXAXta69K0xmICa8D}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- "use strict";exports.id=8584,exports.ids=[6643,8584],exports.modules={2852:(a,b,c)=>{c.d(b,{J:()=>g});var d=c(10837);c(21968);var e=c(13277),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...b})}},6019:(a,b,c)=>{c.d(b,{$v:()=>p,EO:()=>l,Lt:()=>h,Rx:()=>q,Zr:()=>r,ck:()=>n,r7:()=>o,tv:()=>i,wd:()=>m});var d=c(10837);c(21968);var e=c(81093),f=c(96307),g=c(42424);function h({...a}){return(0,d.jsx)(e.Root,{"data-slot":"alert-dialog",...a})}function i({...a}){return(0,d.jsx)(e.Trigger,{"data-slot":"alert-dialog-trigger",...a})}function j({...a}){return(0,d.jsx)(e.Portal,{"data-slot":"alert-dialog-portal",...a})}function k({className:a,...b}){return(0,d.jsx)(e.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,f.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",a),...b})}function l({className:a,size:b="default",...c}){return(0,d.jsxs)(j,{children:[(0,d.jsx)(k,{}),(0,d.jsx)(e.Content,{"data-slot":"alert-dialog-content","data-size":b,className:(0,f.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",a),...c})]})}function m({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,f.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",a),...b})}function n({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,f.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",a),...b})}function o({className:a,...b}){return(0,d.jsx)(e.Title,{"data-slot":"alert-dialog-title",className:(0,f.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",a),...b})}function p({className:a,...b}){return(0,d.jsx)(e.Description,{"data-slot":"alert-dialog-description",className:(0,f.cn)("text-muted-foreground text-sm",a),...b})}function q({className:a,variant:b="default",size:c="default",...h}){return(0,d.jsx)(g.$,{variant:b,size:c,asChild:!0,children:(0,d.jsx)(e.Action,{"data-slot":"alert-dialog-action",className:(0,f.cn)(a),...h})})}function r({className:a,variant:b="outline",size:c="default",...h}){return(0,d.jsx)(g.$,{variant:b,size:c,asChild:!0,children:(0,d.jsx)(e.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,f.cn)(a),...h})})}},6537:(a,b,c)=>{c.d(b,{i:()=>u});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(10694),i=c(86460),j=c(16235),k=c(97443),l=c(42424),m=c(2852),n=c(11225),o=c(55732),p=c(42377);p.callServer,p.findSourceMapURL;let q=(0,p.createServerReference)("4004515421cee66239801b5c67f258475b249ba1ea",p.callServer,void 0,p.findSourceMapURL,"claimIdeaAction"),r=(0,p.createServerReference)("6033e1b95a65f202a52a6c893ef6879a5ea6d41f3f",p.callServer,void 0,p.findSourceMapURL,"claimIdeaToAgentAction"),s=(0,p.createServerReference)("60c8e7782eaba4568e3c087b3714fa32c4ced85ddf",p.callServer,void 0,p.findSourceMapURL,"claimIdeaToUserAction"),t=(0,p.createServerReference)("4061a070c7e88c5985f3e622263de70c08970d9483",p.callServer,void 0,p.findSourceMapURL,"releaseIdeaAction");function u({idea:a,projectUuid:b,currentUserUuid:c,onClose:p}){let u=(0,g.c)(),v=(0,f.useRouter)(),[w,x]=(0,e.useState)(!1),[y,z]=(0,e.useState)("self"),[A,B]=(0,e.useState)(""),[C,D]=(0,e.useState)(""),[E,F]=(0,e.useState)([]),[G,H]=(0,e.useState)([]),[I,J]=(0,e.useState)(!0),K=!!a.assignee,L=async()=>{let b;if(x(!0),"self"===y)b=await q(a.uuid);else if("agent"===y&&A)b=await r(a.uuid,A);else if("user"===y&&C)b=await s(a.uuid,C);else{if("release"!==y)return void x(!1);b=await t(a.uuid)}x(!1),b?.success&&(v.refresh(),p())},M="self"===y||"agent"===y&&A||"user"===y&&C||"release"===y&&K;return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"fixed inset-0 z-50 bg-black/40",onClick:p}),(0,d.jsxs)("div",{className:"fixed left-1/2 top-1/2 z-50 w-[400px] -translate-x-1/2 -translate-y-1/2 rounded-2xl bg-white shadow-xl border border-[#E5E0D8]",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between border-b border-[#E5E0D8] px-6 py-5",children:[(0,d.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:u("ideas.assignIdea")}),(0,d.jsx)("button",{onClick:p,className:"text-[#9A9A9A] hover:text-[#6B6B6B] transition-colors",children:(0,d.jsx)(h.A,{className:"h-5 w-5"})})]}),(0,d.jsxs)("div",{className:"p-6 space-y-4",children:[(0,d.jsxs)("div",{className:"rounded-lg bg-[#FAF8F4] p-3",children:[(0,d.jsx)("p",{className:"text-[13px] font-medium text-[#2C2C2C]",children:a.title}),a.content&&(0,d.jsx)("p",{className:"mt-1 text-[11px] text-[#6B6B6B] line-clamp-2",children:a.content})]}),K&&(0,d.jsx)("div",{className:"rounded-lg bg-[#E3F2FD] p-3",children:(0,d.jsxs)("p",{className:"text-xs text-[#1976D2]",children:[u("common.currentAssignee"),": ",(0,d.jsx)("span",{className:"font-medium",children:a.assignee?.name})]})}),(0,d.jsx)("p",{className:"text-[13px] text-[#6B6B6B]",children:u("ideas.selectIdeaAssignee")}),I?(0,d.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,d.jsx)(i.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):(0,d.jsxs)(n.z,{value:y,onValueChange:a=>z(a),className:"space-y-3",children:[(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors cursor-pointer ${"self"===y?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8] hover:border-[#C67A52]/50"}`,onClick:()=>z("self"),children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(n.C,{value:"self",id:"idea-self",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(m.J,{htmlFor:"idea-self",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:u("assign.assignToMyself")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-[#6B6B6B] leading-relaxed",children:u("ideas.assignToMyselfIdeaDesc")})]}),(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors ${"agent"===y?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8]"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>z("agent"),children:[(0,d.jsx)(n.C,{value:"agent",id:"idea-agent",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(m.J,{htmlFor:"idea-agent",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:u("ideas.orAssignToPmAgent")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-[#6B6B6B] leading-relaxed",children:u("ideas.onlySelectedPmAgentCanWork")}),"agent"===y&&(0,d.jsx)("div",{className:"mt-3 ml-6",children:(0,d.jsxs)(o.l6,{value:A,onValueChange:B,children:[(0,d.jsx)(o.bq,{className:"w-full border-[#E5E0D8]",children:(0,d.jsx)(o.yv,{placeholder:u("ideas.selectPmAgent")})}),(0,d.jsx)(o.gC,{children:E.length>0?E.map(a=>(0,d.jsx)(o.eb,{value:a.uuid,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(j.A,{className:"h-4 w-4 text-[#C67A52]"}),(0,d.jsx)("span",{children:a.name})]})},a.uuid)):(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:u("ideas.noPmAgentsAvailable")})})]})})]}),(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors ${"user"===y?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8]"}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5 cursor-pointer",onClick:()=>z("user"),children:[(0,d.jsx)(n.C,{value:"user",id:"idea-user",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(m.J,{htmlFor:"idea-user",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:u("assign.orAssignToUser")})]}),"user"===y&&(0,d.jsx)("div",{className:"mt-3 ml-6",children:(0,d.jsxs)(o.l6,{value:C,onValueChange:D,children:[(0,d.jsx)(o.bq,{className:"w-full border-[#E5E0D8]",children:(0,d.jsx)(o.yv,{placeholder:u("tasks.selectUser")})}),(0,d.jsx)(o.gC,{children:G.length>0?G.map(a=>(0,d.jsx)(o.eb,{value:a.uuid,children:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(k.A,{className:"h-4 w-4 text-[#6B6B6B]"}),(0,d.jsx)("span",{children:a.name||a.email})]})},a.uuid)):(0,d.jsx)("div",{className:"px-3 py-2 text-xs text-[#9A9A9A]",children:u("tasks.noUsersAvailable")})})]})})]}),K&&(0,d.jsxs)("div",{className:`rounded-[10px] p-4 transition-colors cursor-pointer ${"release"===y?"bg-[#FDF8F6] border-2 border-[#C67A52]":"bg-white border border-[#E5E0D8] hover:border-[#C67A52]/50"}`,onClick:()=>z("release"),children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(n.C,{value:"release",id:"idea-release",className:"border-[#C67A52] text-[#C67A52]"}),(0,d.jsx)(m.J,{htmlFor:"idea-release",className:"text-sm font-medium text-[#2C2C2C] cursor-pointer",children:u("assign.releaseAssignee")})]}),(0,d.jsx)("p",{className:"mt-2 ml-6 text-xs text-[#6B6B6B] leading-relaxed",children:u("ideas.releaseIdeaAssigneeDesc")})]})]})]}),(0,d.jsxs)("div",{className:"flex items-center justify-end gap-4 rounded-b-2xl bg-white px-6 py-6 border-t border-[#E5E0D8]",children:[(0,d.jsx)(l.$,{variant:"outline",onClick:p,disabled:w,className:"border-[#E5E0D8]",children:u("common.cancel")}),(0,d.jsx)(l.$,{onClick:L,disabled:w||!M,className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:w?(0,d.jsx)(i.A,{className:"h-4 w-4 animate-spin"}):u("release"===y?"common.release":"common.assign")})]})]})]})}},7046:(a,b,c)=>{c.d(b,{kX:()=>e,od:()=>f,sO:()=>j});var d=c(70936);function e(a,b){return d.NextResponse.json({success:!0,data:a,meta:b})}function f(a,b,c,e){return d.NextResponse.json({success:!0,data:a,meta:{page:b,pageSize:c,total:e}})}let g={BAD_REQUEST:"BAD_REQUEST",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",NOT_FOUND:"NOT_FOUND",CONFLICT:"CONFLICT",VALIDATION_ERROR:"VALIDATION_ERROR",ALREADY_CLAIMED:"ALREADY_CLAIMED",NOT_CLAIMED:"NOT_CLAIMED",INVALID_STATUS_TRANSITION:"INVALID_STATUS_TRANSITION",PERMISSION_DENIED:"PERMISSION_DENIED",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR"},h={[g.BAD_REQUEST]:400,[g.UNAUTHORIZED]:401,[g.FORBIDDEN]:403,[g.NOT_FOUND]:404,[g.CONFLICT]:409,[g.VALIDATION_ERROR]:422,[g.ALREADY_CLAIMED]:409,[g.NOT_CLAIMED]:400,[g.INVALID_STATUS_TRANSITION]:400,[g.PERMISSION_DENIED]:403,[g.INTERNAL_ERROR]:500,[g.DATABASE_ERROR]:500};function i(a,b,c){let e=h[a]||500;return d.NextResponse.json({success:!1,error:{code:a,message:b,details:c}},{status:e})}let j={badRequest:(a,b)=>i(g.BAD_REQUEST,a,b),unauthorized:(a="Authentication required")=>i(g.UNAUTHORIZED,a),forbidden:(a="Access denied")=>i(g.FORBIDDEN,a),notFound:(a="Resource")=>i(g.NOT_FOUND,`${a} not found`),conflict:a=>i(g.CONFLICT,a),validationError:a=>i(g.VALIDATION_ERROR,"Validation failed",a),alreadyClaimed:()=>i(g.ALREADY_CLAIMED,"Resource is already claimed"),notClaimed:()=>i(g.NOT_CLAIMED,"Resource is not claimed"),invalidStatusTransition:(a,b)=>i(g.INVALID_STATUS_TRANSITION,`Invalid status transition from ${a} to ${b}`),permissionDenied:a=>i(g.PERMISSION_DENIED,`Permission denied: ${a}`),internal:(a="Internal server error")=>i(g.INTERNAL_ERROR,a),database:(a="Database error")=>i(g.DATABASE_ERROR,a)}},10297:(a,b,c)=>{c.d(b,{G7:()=>i,L$:()=>l,h_:()=>m,oI:()=>j,uB:()=>h,xL:()=>k});var d=c(10837);c(21968);var e=c(28918),f=c(75888),g=c(96307);function h({className:a,...b}){return(0,d.jsx)(e.uB,{"data-slot":"command",className:(0,g.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...b})}function i({className:a,...b}){return(0,d.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,d.jsx)(f.A,{className:"size-4 shrink-0 opacity-50"}),(0,d.jsx)(e.uB.Input,{"data-slot":"command-input",className:(0,g.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",a),...b})]})}function j({className:a,...b}){return(0,d.jsx)(e.uB.List,{"data-slot":"command-list",className:(0,g.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",a),...b})}function k({...a}){return(0,d.jsx)(e.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...a})}function l({className:a,...b}){return(0,d.jsx)(e.uB.Group,{"data-slot":"command-group",className:(0,g.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...b})}function m({className:a,...b}){return(0,d.jsx)(e.uB.Item,{"data-slot":"command-item",className:(0,g.cn)("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",a),...b})}},11225:(a,b,c)=>{c.d(b,{C:()=>i,z:()=>h});var d=c(10837);c(21968);var e=c(90856),f=c(28121),g=c(96307);function h({className:a,...b}){return(0,d.jsx)(f.Root,{"data-slot":"radio-group",className:(0,g.cn)("grid gap-3",a),...b})}function i({className:a,...b}){return(0,d.jsx)(f.Item,{"data-slot":"radio-group-item",className:(0,g.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",a),...b,children:(0,d.jsx)(f.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,d.jsx)(e.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},12735:(a,b,c)=>{c.d(b,{hD:()=>d}),c(33513),c(86099),c(97307),new(c(16698)).AsyncLocalStorage;class d extends Error{constructor(a,b,c=400,d){super(b),this.code=a,this.status=c,this.details=d,this.name="ApiError"}}},16144:(a,b,c)=>{c.d(b,{Z:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60ee487b6ee7a95212d187583976479e92aeff9d5f",d.callServer,void 0,d.findSourceMapURL,"deleteIdeaAction")},18502:(a,b,c)=>{c.d(b,{J:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40efa334cd5378fdd2735cdbdc9b23b5f566211461",d.callServer,void 0,d.findSourceMapURL,"updateIdeaAction")},20170:(a,b,c)=>{c.d(b,{T:()=>f});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("textarea",{"data-slot":"textarea",className:(0,e.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a),...b})}},22110:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{em:()=>n,yu:()=>o,zS:()=>m});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(23733),i=c(71255),j=c(97307),k=c(12217),l=a([g,h,i]);async function m(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.t8)({companyUuid:b.companyUuid,ideaUuid:a});return{success:!0,data:c}}catch(a){return j.A.error({err:a},"Failed to get elaboration"),{success:!1,error:a instanceof Error?a.message:"Failed to get elaboration"}}}async function n(a,b,c){let d=await (0,g.d)();if(!d)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.Rm)({companyUuid:d.companyUuid,ideaUuid:a,roundUuid:b,actorUuid:d.actorUuid,actorType:d.type,answers:c}),g=await i.z.idea.findFirst({where:{uuid:a,companyUuid:d.companyUuid}});return g&&((0,f.revalidatePath)(`/projects/${g.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${g.projectUuid}/ideas`)),{success:!0,data:e}}catch(a){return j.A.error({err:a},"Failed to submit elaboration answers"),{success:!1,error:a instanceof Error?a.message:"Failed to submit answers"}}}async function o(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{await (0,h.Y_)({companyUuid:c.companyUuid,ideaUuid:a,actorUuid:c.actorUuid,actorType:c.type,reason:b});let d=await i.z.idea.findFirst({where:{uuid:a,companyUuid:c.companyUuid}});return d&&((0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas`)),{success:!0}}catch(a){return j.A.error({err:a},"Failed to skip elaboration"),{success:!1,error:a instanceof Error?a.message:"Failed to skip elaboration"}}}[g,h,i]=l.then?(await l)():l,(0,k.D)([m,n,o]),(0,e.A)(m,"409c7e2e848a704785745d8b3cd8498d2e2630bca0",null),(0,e.A)(n,"702f319e2077ad37c4270562c100077fcbf2c67fa3",null),(0,e.A)(o,"60beceb03c0f9caf18b244a0bd6e2987b282ae7dea",null),d()}catch(a){d(a)}})},23157:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Ax:()=>o,M$:()=>p,UD:()=>r,ZL:()=>q,qN:()=>n});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(61212),i=c(28774),j=c(67738),k=c(97307),l=c(12217),m=a([g,h,i,j]);async function n(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.MY)(b.companyUuid,a);if(!c)return{success:!1,error:"Idea not found"};if("elaborated"===c.status)return{success:!1,error:"Idea is not available for assignment"};return await (0,h.Xo)({ideaUuid:a,companyUuid:b.companyUuid,assigneeType:b.type,assigneeUuid:b.actorUuid,assignedByUuid:b.actorUuid}),await (0,j.createActivity)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"idea",targetUuid:a,actorType:b.type,actorUuid:b.actorUuid,action:"assigned",value:{assigneeType:b.type,assigneeUuid:b.actorUuid}}),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas`),{success:!0}}catch(a){return k.A.error({err:a},"Failed to claim idea"),{success:!1,error:"Failed to claim idea"}}}async function o(a,b){let c=await (0,g.d)();if(!c||"user"!==c.type)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.MY)(c.companyUuid,a);if(!d)return{success:!1,error:"Idea not found"};if("elaborated"===d.status)return{success:!1,error:"Idea is not available for assignment"};return await (0,h.Xo)({ideaUuid:a,companyUuid:c.companyUuid,assigneeType:"agent",assigneeUuid:b,assignedByUuid:c.actorUuid}),await (0,j.createActivity)({companyUuid:c.companyUuid,projectUuid:d.projectUuid,targetType:"idea",targetUuid:a,actorType:"user",actorUuid:c.actorUuid,action:"assigned",value:{assigneeType:"agent",assigneeUuid:b}}),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas`),{success:!0}}catch(a){return k.A.error({err:a},"Failed to claim idea to agent"),{success:!1,error:"Failed to claim idea"}}}async function p(a,b){let c=await (0,g.d)();if(!c||"user"!==c.type)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.MY)(c.companyUuid,a);if(!d)return{success:!1,error:"Idea not found"};if("elaborated"===d.status)return{success:!1,error:"Idea is not available for assignment"};return await (0,h.Xo)({ideaUuid:a,companyUuid:c.companyUuid,assigneeType:"user",assigneeUuid:b,assignedByUuid:c.actorUuid}),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${d.projectUuid}/ideas`),{success:!0}}catch(a){return k.A.error({err:a},"Failed to claim idea to user"),{success:!1,error:"Failed to claim idea"}}}async function q(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.MY)(b.companyUuid,a);if(!c)return{success:!1,error:"Idea not found"};if("elaborated"===c.status)return{success:!1,error:"Idea cannot be released from current status"};return await (0,h.h_)(c.uuid),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas/${a}`),(0,f.revalidatePath)(`/projects/${c.projectUuid}/ideas`),{success:!0}}catch(a){return k.A.error({err:a},"Failed to release idea"),{success:!1,error:"Failed to release idea"}}}async function r(){let a=await (0,g.d)();if(!a||"user"!==a.type)return{agents:[],users:[]};try{let[b,c]=await Promise.all([(0,i.Ad)(a.companyUuid,"pm",a.actorUuid),(0,i.A8)(a.companyUuid)]);return{agents:b,users:c}}catch(a){return k.A.error({err:a},"Failed to get PM agents"),{agents:[],users:[]}}}[g,h,i,j]=m.then?(await m)():m,(0,l.D)([n,o,p,q,r]),(0,e.A)(n,"4004515421cee66239801b5c67f258475b249ba1ea",null),(0,e.A)(o,"6033e1b95a65f202a52a6c893ef6879a5ea6d41f3f",null),(0,e.A)(p,"60c8e7782eaba4568e3c087b3714fa32c4ced85ddf",null),(0,e.A)(q,"4061a070c7e88c5985f3e622263de70c08970d9483",null),(0,e.A)(r,"0001960bafd749f60c5daf5bf3ba30b546ed920c71",null),d()}catch(a){d(a)}})},23733:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Rm:()=>i,Y_:()=>j,t8:()=>k});var e=c(71255),f=c(62729),g=c(85806),h=a([e,g]);async function i({companyUuid:a,ideaUuid:b,roundUuid:c,actorUuid:d,actorType:h,answers:i}){let j=await e.z.elaborationRound.findFirst({where:{uuid:c,ideaUuid:b,companyUuid:a},include:{questions:!0}});if(!j)throw Error("Elaboration round not found");if("pending_answers"!==j.status)throw Error(`Round is '${j.status}', expected 'pending_answers'`);let k=new Date;for(let a of i){let b=j.questions.find(b=>b.questionId===a.questionId);if(!b)throw Error(`Question '${a.questionId}' not found in round`);if(null!==a.selectedOptionId){if(!b.options.find(b=>b.id===a.selectedOptionId))throw Error(`Invalid option '${a.selectedOptionId}' for question '${a.questionId}'`)}else if(!a.customText?.trim())throw Error(`Question '${a.questionId}': custom text is required when no option is selected`);await e.z.elaborationQuestion.update({where:{uuid:b.uuid},data:{selectedOptionId:a.selectedOptionId,customText:a.customText,answeredAt:k,answeredByType:h,answeredByUuid:d}})}(await e.z.elaborationQuestion.findMany({where:{roundUuid:c}})).filter(a=>a.required).every(a=>null!==a.answeredAt)&&(await e.z.elaborationRound.update({where:{uuid:c},data:{status:"answered"}}),await e.z.idea.update({where:{uuid:b},data:{elaborationStatus:"validating"}}));let m=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});await g.f0.createActivity({companyUuid:a,projectUuid:m.projectUuid,targetType:"idea",targetUuid:b,actorType:h,actorUuid:d,action:"elaboration_answered",value:{roundNumber:j.roundNumber,answeredCount:i.length}}),f.B.emitChange({companyUuid:a,projectUuid:m.projectUuid,entityType:"idea",entityUuid:b,action:"updated"});let n=await e.z.elaborationRound.findUnique({where:{uuid:c},include:{questions:!0}});return l(n)}async function j({companyUuid:a,ideaUuid:b,actorUuid:c,actorType:d,reason:h}){let i=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});if(!i)throw Error("Idea not found");if(i.assigneeUuid!==c)throw Error("Only the assigned agent can skip elaboration");if("elaborating"!==i.status)throw Error(`Cannot skip elaboration from status '${i.status}'`);await e.z.idea.update({where:{uuid:b},data:{status:"elaborated",elaborationDepth:"minimal",elaborationStatus:"resolved"}}),await g.f0.createActivity({companyUuid:a,projectUuid:i.projectUuid,targetType:"idea",targetUuid:b,actorType:d,actorUuid:c,action:"elaboration_skipped",value:{reason:h}}),f.B.emitChange({companyUuid:a,projectUuid:i.projectUuid,entityType:"idea",entityUuid:b,action:"updated"})}async function k({companyUuid:a,ideaUuid:b}){let c=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a}});if(!c)throw Error("Idea not found");let d=await e.z.elaborationRound.findMany({where:{ideaUuid:b,companyUuid:a},include:{questions:!0},orderBy:{roundNumber:"asc"}}),f=d.flatMap(a=>a.questions),g=f.filter(a=>null!==a.answeredAt),h=d.filter(a=>"validated"===a.status),i=d.find(a=>"pending_answers"===a.status);return{ideaUuid:b,depth:c.elaborationDepth,status:c.elaborationStatus,rounds:d.map(l),summary:{totalQuestions:f.length,answeredQuestions:g.length,validatedRounds:h.length,pendingRound:i?.roundNumber||null}}}function l(a){return{uuid:a.uuid,roundNumber:a.roundNumber,status:a.status,createdBy:{type:a.createdByType,uuid:a.createdByUuid},validatedAt:a.validatedAt?.toISOString()||null,createdAt:a.createdAt.toISOString(),questions:a.questions.map(m)}}function m(a){return{uuid:a.uuid,questionId:a.questionId,text:a.text,category:a.category,options:a.options,required:a.required,answer:a.answeredAt?{selectedOptionId:a.selectedOptionId,customText:a.customText,answeredAt:a.answeredAt.toISOString(),answeredBy:{type:a.answeredByType,uuid:a.answeredByUuid}}:null,issue:a.issueType?{type:a.issueType,description:a.issueDescription||""}:null}}[e,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},26078:(a,b,c)=>{c.d(b,{RU:()=>h,s8:()=>g});let d={developer_agent:["idea:read","proposal:read","document:read","project:read","task:read","task:write"],pm_agent:["idea:read","idea:write","proposal:read","proposal:write","document:read","document:write","task:read","task:write","project:read","project:write"],admin_agent:["idea:read","idea:write","idea:admin","proposal:read","proposal:write","proposal:admin","document:read","document:write","document:admin","task:read","task:write","task:admin","project:read","project:write","project:admin"]},e=["read","write","admin"],f=new Set(["idea","proposal","document","task","project"].flatMap(a=>e.map(b=>`${a}:${b}`)));function g(a){return f.has(a)}function h(a,b){let c=new Set;if(a)for(let b of a){let a=d[b.endsWith("_agent")?b:`${b}_agent`];if(a)for(let b of a)c.add(b)}if(b)for(let a of b)g(a)&&c.add(a);return c}},27473:(a,b,c)=>{c.d(b,{hD:()=>h,OG:()=>k,YB:()=>m,mA:()=>l,FB:()=>j});var d=c(70936),e=c(7046),f=c(65582);let g=new(c(16698)).AsyncLocalStorage;class h extends Error{constructor(a,b,c=400,d){super(b),this.code=a,this.status=c,this.details=d,this.name="ApiError"}}let i={P2002:"Unique constraint violation",P2025:"Record not found",P2003:"Foreign key constraint violation"};function j(a){return async(b,c)=>{let j=crypto.randomUUID(),k=(0,f.q)({requestId:j});return g.run({requestId:j,logger:k},async()=>{try{return await a(b,c)}catch(a){if((g.getStore()?.logger??f.A).error({err:a},"API error"),a instanceof h)return d.NextResponse.json({success:!1,error:{code:a.code,message:a.message,details:a.details}},{status:a.status});if(a&&"object"==typeof a&&"code"in a){let b=i[a.code];if(b){if("P2025"===a.code)return e.sO.notFound();if("P2002"===a.code)return e.sO.conflict(b);return e.sO.database(b)}}if(a instanceof Error)return e.sO.internal("Internal server error");return e.sO.internal()}})}}async function k(a){try{return await a.json()}catch{throw new h("BAD_REQUEST","Invalid JSON body",400)}}function l(a){let b=new URL(a.url),c={};return b.searchParams.forEach((a,b)=>{c[b]=a}),c}function m(a){let b=l(a),c=Math.max(1,parseInt(b.page||"1",10)),d=Math.min(100,Math.max(1,parseInt(b.pageSize||"20",10)));return{page:c,pageSize:d,skip:(c-1)*d,take:d}}},28774:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A8:()=>p,Ad:()=>o,CG:()=>n,Iq:()=>m,RB:()=>k,Sn:()=>h,d5:()=>l,tN:()=>j,x4:()=>i});var e=c(71255),f=c(77219),g=a([e,f]);async function h({companyUuid:a,name:b,roles:c,ownerUuid:d,persona:f,systemPrompt:g,permissions:h}){return e.z.agent.create({data:{companyUuid:a,name:b,roles:c,ownerUuid:d,persona:f,systemPrompt:g,...void 0!==h&&{permissions:h}},select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0,systemPrompt:!0,ownerUuid:!0,createdAt:!0}})}async function i(a,b,c){if(c&&!await e.z.agent.findFirst({where:{uuid:a,companyUuid:c},select:{uuid:!0}}))throw Error("Agent not found");return e.z.agent.update({where:{uuid:a},data:b,select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0,systemPrompt:!0,ownerUuid:!0,lastActiveAt:!0,createdAt:!0}})}async function j(a,b){return e.z.apiKey.updateMany({where:{agentUuid:a,revokedAt:null},data:{name:b}})}async function k(a){return e.z.agent.delete({where:{uuid:a}})}async function l(a,b,c,d){let f={companyUuid:a,revokedAt:null,...d&&{agent:{ownerUuid:d}}},[g,h]=await Promise.all([e.z.apiKey.findMany({where:f,skip:b,take:c,orderBy:{createdAt:"desc"},include:{agent:{select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0}}}}),e.z.apiKey.count({where:f})]);return{apiKeys:g,total:h}}async function m({companyUuid:a,agentUuid:b,name:c,expiresAt:d}){let{key:g,hash:h,prefix:i}=(0,f.XH)();return{...await e.z.apiKey.create({data:{companyUuid:a,agentUuid:b,keyHash:h,keyPrefix:i,name:c,expiresAt:d},select:{uuid:!0,keyPrefix:!0,name:!0,expiresAt:!0,createdAt:!0}}),key:g}}async function n(a,b,c){return e.z.apiKey.findFirst({where:{uuid:b,companyUuid:a,...c&&{agent:{ownerUuid:c}}},select:{uuid:!0,agentUuid:!0,revokedAt:!0}})}async function o(a,b,c){return e.z.agent.findMany({where:{companyUuid:a,...c&&{ownerUuid:c},OR:[{roles:{has:b}},{roles:{has:`${b}_agent`}}]},select:{uuid:!0,name:!0,roles:!0,ownerUuid:!0},orderBy:{name:"asc"}})}async function p(a){return e.z.user.findMany({where:{companyUuid:a},select:{uuid:!0,name:!0,email:!0},orderBy:{name:"asc"}})}[e,f]=g.then?(await g)():g,d()}catch(a){d(a)}})},31138:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{JQ:()=>o,Z$:()=>p,w$:()=>n,zK:()=>q});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(61212),i=c(97879),j=c(466),k=c(97307),l=c(12217),m=a([g,h,i,j]);async function n(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.i1)({companyUuid:b.companyUuid,projectUuid:a.projectUuid,title:a.title,content:a.content||null,attachments:a.attachments||null,createdByUuid:b.actorUuid});return(0,f.revalidatePath)(`/projects/${a.projectUuid}/ideas`),{success:!0,ideaUuid:c.uuid}}catch(a){return k.A.error({err:a},"Failed to create idea"),{success:!1,error:"Failed to create idea"}}}async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let c=await (0,h.JF)(a.ideaUuid,b.companyUuid,{title:a.title,content:a.content});return(0,f.revalidatePath)(`/projects/${a.projectUuid}/ideas`),{success:!0,idea:c}}catch(a){return k.A.error({err:a},"Failed to update idea"),{success:!1,error:"Failed to update idea"}}}async function p(a,b){if(!await (0,g.d)())return{success:!1,error:"Unauthorized"};try{return await (0,h.Nm)(a),(0,f.revalidatePath)(`/projects/${b}/ideas`),{success:!0}}catch(a){return k.A.error({err:a},"Failed to delete idea"),{success:!1,error:"Failed to delete idea"}}}async function q(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let{ideas:c}=await (0,h.BB)({companyUuid:b.companyUuid,projectUuid:a,skip:0,take:1e3}),d=c.map(a=>a.uuid),[e,f]=await Promise.all([d.length>0?(0,i.e1)(b.companyUuid,d):Promise.resolve({usedIdeas:[]}),d.length>0?(0,j.uA)(b.companyUuid,"idea",d):Promise.resolve({})]),g=e.usedIdeas.map(a=>a.uuid),k={};for(let a of e.usedIdeas)k[a.uuid]=a.proposalUuid;let l=c.map(a=>({...a,commentCount:f[a.uuid]||0}));return{success:!0,data:{ideas:l,usedIdeaUuids:g,ideaProposalMap:k}}}catch(a){return k.A.error({err:a},"Failed to fetch ideas"),{success:!1,error:"Failed to fetch ideas"}}}[g,h,i,j]=m.then?(await m)():m,(0,l.D)([n,o,p,q]),(0,e.A)(n,"407011622364a55cf622bc6ca450f4e59d50867852",null),(0,e.A)(o,"40efa334cd5378fdd2735cdbdc9b23b5f566211461",null),(0,e.A)(p,"60ee487b6ee7a95212d187583976479e92aeff9d5f",null),(0,e.A)(q,"40160cd5e9a08aca7375aefb470815b4c1834b7e5f",null),d()}catch(a){d(a)}})},38390:(a,b,c)=>{c.d(b,{x:()=>e});var d=c(42377);let e=(0,d.createServerReference)("4046bd6d9d24b5c05b8e7465ad674fd309a5e165c9",d.callServer,void 0,d.findSourceMapURL,"getIdeaActivitiesAction")},40869:(a,b,c)=>{c.a(a,async(a,b)=>{try{var d=c(77219);c(86099),c(26078),c(71902);var e=c(86963),f=a([d,e]);[d,e]=f.then?(await f)():f,b()}catch(a){b(a)}})},53870:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Cs:()=>i,lU:()=>k,ui:()=>j});var e=c(71255),f=c(92633),g=a([e,f]);async function h(a,b=!1){let c=await (0,f.LS)(a.createdByUuid),d={uuid:a.uuid,type:a.type,title:a.title,version:a.version,proposalUuid:a.proposalUuid,createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()};return b&&void 0!==a.content&&(d.content=a.content),a.project&&(d.project=a.project),d}async function i(a,b){return e.z.document.findFirst({where:{uuid:b,companyUuid:a}})}async function j(a){let b=await e.z.document.create({data:{companyUuid:a.companyUuid,projectUuid:a.projectUuid,type:a.type,title:a.title,content:a.content,version:1,proposalUuid:a.proposalUuid,createdByUuid:a.createdByUuid},select:{uuid:!0,type:!0,title:!0,content:!0,version:!0,proposalUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return h(b,!0)}async function k(a,{title:b,content:c,incrementVersion:d}){let f={};void 0!==b&&(f.title=b),void 0!==c&&(f.content=c),d&&(f.version={increment:1});let g=await e.z.document.update({where:{uuid:a},data:f,include:{project:{select:{uuid:!0,name:!0}}}});return h(g,!0)}[e,f]=g.then?(await g)():g,d()}catch(a){d(a)}})},61212:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BB:()=>o,JF:()=>s,MY:()=>q,Nm:()=>w,Xo:()=>t,Zl:()=>y,bY:()=>x,h_:()=>u,i1:()=>r});var e=c(71255),f=c(92633),g=c(62729);c(5134);var h=c(12735),i=c(34923),j=c(67738),k=c(97307),l=a([e,f,i,j]);function m(a){switch(a){case"assigned":case"in_progress":return"elaborating";case"proposal_created":case"completed":case"closed":case"pending_review":return"elaborated";default:return a}}async function n(a){let[b,c]=await Promise.all([(0,f.ir)(a.assigneeType,a.assigneeUuid,a.assignedAt,a.assignedByUuid),(0,f.LS)(a.createdByUuid)]);return{uuid:a.uuid,title:a.title,content:a.content,attachments:a.attachments,status:m(a.status),assignee:b,...a.project&&{project:a.project},...null!=a.elaborationStatus&&{elaborationStatus:a.elaborationStatus},...null!=a.elaborationDepth&&{elaborationDepth:a.elaborationDepth},createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}}async function o({companyUuid:a,projectUuid:b,skip:c,take:d,status:f,assignedToMe:g,actorUuid:h,actorType:i}){let j={projectUuid:b,companyUuid:a,...f&&{status:f}};g&&h&&i&&(j.assigneeUuid=h,j.assigneeType=i);let[k,l]=await Promise.all([e.z.idea.findMany({where:j,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,content:!0,attachments:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}}),e.z.idea.count({where:j})]);return{ideas:await Promise.all(k.map(n)),total:l}}async function p(a,b){let c=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return c?n(c):null}async function q(a,b){return e.z.idea.findFirst({where:{uuid:b,companyUuid:a}})}async function r(a){let b=await e.z.idea.create({data:{companyUuid:a.companyUuid,projectUuid:a.projectUuid,title:a.title,content:a.content,attachments:a.attachments||void 0,status:"open",createdByUuid:a.createdByUuid},select:{uuid:!0,title:!0,content:!0,attachments:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return g.B.emitChange({companyUuid:a.companyUuid,projectUuid:a.projectUuid,entityType:"idea",entityUuid:b.uuid,action:"created"}),n(b)}async function s(a,b,c,d){let f=null;if(void 0!==c.content&&d){let b=await e.z.idea.findUnique({where:{uuid:a},select:{content:!0}});f=b?.content??null}let h=await e.z.idea.update({where:{uuid:a},data:c,include:{project:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:h.companyUuid,projectUuid:h.project.uuid,entityType:"idea",entityUuid:h.uuid,action:"updated"}),void 0!==c.content&&d&&c.content&&v(h.companyUuid,h.project.uuid,h.uuid,h.title,f,c.content,d.actorType,d.actorUuid).catch(a=>k.A.error({err:a},"Failed to process idea mentions")),n(h)}async function t({ideaUuid:a,companyUuid:b,assigneeType:c,assigneeUuid:d,assignedByUuid:f}){let h=await e.z.idea.findFirst({where:{uuid:a,companyUuid:b}});if(!h)throw Error("Idea not found");let i=m(h.status);if("elaborated"===i)throw Error("Cannot assign an elaborated Idea");let j="open"===h.status?"elaborating":h.status,k=await e.z.idea.update({where:{uuid:a},data:{status:j,assigneeType:c,assigneeUuid:d,assignedAt:new Date,assignedByUuid:f},include:{project:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:k.companyUuid,projectUuid:k.project.uuid,entityType:"idea",entityUuid:k.uuid,action:"updated"}),n(k)}async function u(a){let b=await e.z.idea.findUnique({where:{uuid:a}});if(!b)throw Error("Idea not found");let c=m(b.status);if("elaborated"===c)throw Error("Cannot release an elaborated Idea");let d=await e.z.idea.update({where:{uuid:a},data:{status:"open",assigneeType:null,assigneeUuid:null,assignedAt:null,assignedByUuid:null,elaborationDepth:null,elaborationStatus:null},include:{project:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:d.companyUuid,projectUuid:d.project.uuid,entityType:"idea",entityUuid:d.uuid,action:"updated"}),n(d)}async function v(a,b,c,d,e,f,g,h){let k=e?i.Xs(e):[],l=i.Xs(f),m=new Set(k.map(a=>`${a.type}:${a.uuid}`)),n=l.filter(a=>!m.has(`${a.type}:${a.uuid}`));if(0!==n.length)for(let e of(await i.AM({companyUuid:a,sourceType:"idea",sourceUuid:c,content:f,actorType:g,actorUuid:h,projectUuid:b,entityTitle:d}),n))(e.type!==g||e.uuid!==h)&&await j.createActivity({companyUuid:a,projectUuid:b,targetType:"idea",targetUuid:c,actorType:g,actorUuid:h,action:"mentioned",value:{mentionedType:e.type,mentionedUuid:e.uuid,mentionedName:e.displayName,sourceType:"idea",sourceUuid:c}})}async function w(a){let b=await e.z.idea.delete({where:{uuid:a}});return g.B.emitChange({companyUuid:b.companyUuid,projectUuid:b.projectUuid,entityType:"idea",entityUuid:b.uuid,action:"deleted"}),b}async function x(a,b,c,d,f="user"){let i=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});if(!i)throw new h.hD("NOT_FOUND","Idea not found",404);let k=await e.z.project.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0,name:!0}});if(!k)throw new h.hD("NOT_FOUND","Target project not found",404);if(i.projectUuid===c)throw new h.hD("BAD_REQUEST","Idea is already in the target project",400);let l=i.projectUuid;await e.z.$transaction(async d=>{await d.idea.update({where:{uuid:b},data:{projectUuid:c}}),await d.proposal.updateMany({where:{companyUuid:a,inputType:"idea",inputUuids:{array_contains:[b]},status:{in:["draft","pending"]}},data:{projectUuid:c}})}),await j.createActivity({companyUuid:a,projectUuid:c,targetType:"idea",targetUuid:b,actorType:f,actorUuid:d,action:"moved",value:{fromProjectUuid:l,fromProjectName:i.project.name,toProjectUuid:c,toProjectName:k.name}}),g.B.emitChange({companyUuid:a,projectUuid:l,entityType:"idea",entityUuid:b,action:"updated"}),g.B.emitChange({companyUuid:a,projectUuid:c,entityType:"idea",entityUuid:b,action:"updated"});let m=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return n(m)}async function y(a,b){let c=await p(a,b);if(!c)return null;let d=await e.z.proposal.findMany({where:{companyUuid:a,projectUuid:c.project?.uuid,status:{in:["approved","pending"]},inputUuids:{array_contains:[b]}},select:{uuid:!0,status:!0,createdAt:!0},orderBy:{createdAt:"desc"}}),f=d.find(a=>"approved"===a.status)??null,g=[];f&&(g=(await e.z.task.findMany({where:{companyUuid:a,proposalUuid:f.uuid},select:{status:!0}})).map(a=>a.status));let h=function(a){switch(m(a.ideaStatus)){case"open":default:return{derivedStatus:"todo",badgeHint:"open"};case"elaborating":if("pending_answers"===a.elaborationStatus)return{derivedStatus:"human_conduct_required",badgeHint:"answer_questions"};return{derivedStatus:"in_progress",badgeHint:"researching"};case"elaborated":if(a.hasPendingProposal)return{derivedStatus:"human_conduct_required",badgeHint:"review_proposal"};if(a.hasApprovedProposal){if(a.taskStatuses.some(a=>"to_verify"===a))return{derivedStatus:"human_conduct_required",badgeHint:"verify_work"};if(a.taskStatuses.length>0&&a.taskStatuses.every(a=>"done"===a||"closed"===a))return{derivedStatus:"done",badgeHint:"done"};return{derivedStatus:"in_progress",badgeHint:"building"}}return{derivedStatus:"in_progress",badgeHint:"planning"}}}({ideaStatus:c.status,elaborationStatus:c.elaborationStatus,hasPendingProposal:d.some(a=>"pending"===a.status),hasApprovedProposal:!!f,taskStatuses:g});return{...c,...h}}[e,f,i,j]=l.then?(await l)():l,d()}catch(a){d(a)}})},66643:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BB:()=>q,JF:()=>u,MY:()=>s,Nm:()=>y,Q7:()=>r,XB:()=>C,bO:()=>o,bY:()=>z,h_:()=>w,i1:()=>t,w9:()=>v,xo:()=>A});var e=c(52618),f=c(76872),g=c(42558),h=c(48873),i=c(27473),j=c(90494),k=c(88437),l=c(65582),m=a([e,f,j,k]);[e,f,j,k]=m.then?(await m)():m;let D={open:["elaborating"],elaborating:["elaborated"],elaborated:[]};function n(a){switch(a){case"assigned":case"in_progress":return"elaborating";case"proposal_created":case"completed":case"closed":case"pending_review":return"elaborated";default:return a}}function o(a,b){return(D[n(a)]||[]).includes(b)}async function p(a){let[b,c]=await Promise.all([(0,f.ir)(a.assigneeType,a.assigneeUuid,a.assignedAt,a.assignedByUuid),(0,f.LS)(a.createdByUuid)]);return{uuid:a.uuid,title:a.title,content:a.content,attachments:a.attachments,status:n(a.status),assignee:b,...a.project&&{project:a.project},...null!=a.elaborationStatus&&{elaborationStatus:a.elaborationStatus},...null!=a.elaborationDepth&&{elaborationDepth:a.elaborationDepth},createdBy:c,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}}async function q({companyUuid:a,projectUuid:b,skip:c,take:d,status:f,assignedToMe:g,actorUuid:h,actorType:i}){let j={projectUuid:b,companyUuid:a,...f&&{status:f}};g&&h&&i&&(j.assigneeUuid=h,j.assigneeType=i);let[k,l]=await Promise.all([e.z.idea.findMany({where:j,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,content:!0,attachments:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}}),e.z.idea.count({where:j})]);return{ideas:await Promise.all(k.map(p)),total:l}}async function r(a,b){let c=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return c?p(c):null}async function s(a,b){return e.z.idea.findFirst({where:{uuid:b,companyUuid:a}})}async function t(a){let b=await e.z.idea.create({data:{companyUuid:a.companyUuid,projectUuid:a.projectUuid,title:a.title,content:a.content,attachments:a.attachments||void 0,status:"open",createdByUuid:a.createdByUuid},select:{uuid:!0,title:!0,content:!0,attachments:!0,status:!0,elaborationStatus:!0,elaborationDepth:!0,assigneeType:!0,assigneeUuid:!0,assignedAt:!0,assignedByUuid:!0,createdByUuid:!0,createdAt:!0,updatedAt:!0}});return g.B.emitChange({companyUuid:a.companyUuid,projectUuid:a.projectUuid,entityType:"idea",entityUuid:b.uuid,action:"created"}),p(b)}async function u(a,b,c,d){let f=null;if(void 0!==c.content&&d){let b=await e.z.idea.findUnique({where:{uuid:a},select:{content:!0}});f=b?.content??null}let h=await e.z.idea.update({where:{uuid:a},data:c,include:{project:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:h.companyUuid,projectUuid:h.project.uuid,entityType:"idea",entityUuid:h.uuid,action:"updated"}),void 0!==c.content&&d&&c.content&&x(h.companyUuid,h.project.uuid,h.uuid,h.title,f,c.content,d.actorType,d.actorUuid).catch(a=>l.A.error({err:a},"Failed to process idea mentions")),p(h)}async function v({ideaUuid:a,companyUuid:b,assigneeType:c,assigneeUuid:d,assignedByUuid:f}){let i=await e.z.idea.findFirst({where:{uuid:a,companyUuid:b}});if(!i||i.assigneeUuid)throw new h.Yy("Idea");let j=n(i.status);if("elaborated"===j)throw Error("Cannot claim an elaborated Idea");let k=await e.z.idea.update({where:{uuid:a},data:{status:"elaborating",assigneeType:c,assigneeUuid:d,assignedAt:new Date,assignedByUuid:f},include:{project:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:k.companyUuid,projectUuid:k.project.uuid,entityType:"idea",entityUuid:k.uuid,action:"updated"}),p(k)}async function w(a){let b=await e.z.idea.findUnique({where:{uuid:a}});if(!b)throw Error("Idea not found");let c=n(b.status);if("elaborated"===c)throw Error("Cannot release an elaborated Idea");let d=await e.z.idea.update({where:{uuid:a},data:{status:"open",assigneeType:null,assigneeUuid:null,assignedAt:null,assignedByUuid:null,elaborationDepth:null,elaborationStatus:null},include:{project:{select:{uuid:!0,name:!0}}}});return g.B.emitChange({companyUuid:d.companyUuid,projectUuid:d.project.uuid,entityType:"idea",entityUuid:d.uuid,action:"updated"}),p(d)}async function x(a,b,c,d,e,f,g,h){let i=e?j.Xs(e):[],l=j.Xs(f),m=new Set(i.map(a=>`${a.type}:${a.uuid}`)),n=l.filter(a=>!m.has(`${a.type}:${a.uuid}`));if(0!==n.length)for(let e of(await j.AM({companyUuid:a,sourceType:"idea",sourceUuid:c,content:f,actorType:g,actorUuid:h,projectUuid:b,entityTitle:d}),n))(e.type!==g||e.uuid!==h)&&await k.createActivity({companyUuid:a,projectUuid:b,targetType:"idea",targetUuid:c,actorType:g,actorUuid:h,action:"mentioned",value:{mentionedType:e.type,mentionedUuid:e.uuid,mentionedName:e.displayName,sourceType:"idea",sourceUuid:c}})}async function y(a){let b=await e.z.idea.delete({where:{uuid:a}});return g.B.emitChange({companyUuid:b.companyUuid,projectUuid:b.projectUuid,entityType:"idea",entityUuid:b.uuid,action:"deleted"}),b}async function z(a,b,c,d,f="user"){let h=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});if(!h)throw new i.hD("NOT_FOUND","Idea not found",404);let j=await e.z.project.findFirst({where:{uuid:c,companyUuid:a},select:{uuid:!0,name:!0}});if(!j)throw new i.hD("NOT_FOUND","Target project not found",404);if(h.projectUuid===c)throw new i.hD("BAD_REQUEST","Idea is already in the target project",400);let l=h.projectUuid;await e.z.$transaction(async d=>{await d.idea.update({where:{uuid:b},data:{projectUuid:c}}),await d.proposal.updateMany({where:{companyUuid:a,inputType:"idea",inputUuids:{array_contains:[b]},status:{in:["draft","pending"]}},data:{projectUuid:c}})}),await k.createActivity({companyUuid:a,projectUuid:c,targetType:"idea",targetUuid:b,actorType:f,actorUuid:d,action:"moved",value:{fromProjectUuid:l,fromProjectName:h.project.name,toProjectUuid:c,toProjectName:j.name}}),g.B.emitChange({companyUuid:a,projectUuid:l,entityType:"idea",entityUuid:b,action:"updated"}),g.B.emitChange({companyUuid:a,projectUuid:c,entityType:"idea",entityUuid:b,action:"updated"});let m=await e.z.idea.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return p(m)}function A(a){switch(n(a.ideaStatus)){case"open":default:return{derivedStatus:"todo",badgeHint:"open"};case"elaborating":if("pending_answers"===a.elaborationStatus)return{derivedStatus:"human_conduct_required",badgeHint:"answer_questions"};return{derivedStatus:"in_progress",badgeHint:"researching"};case"elaborated":if(a.hasPendingProposal)return{derivedStatus:"human_conduct_required",badgeHint:"review_proposal"};if(a.hasApprovedProposal){if(a.taskStatuses.some(a=>"to_verify"===a))return{derivedStatus:"human_conduct_required",badgeHint:"verify_work"};if(a.taskStatuses.length>0&&a.taskStatuses.every(a=>"done"===a||"closed"===a))return{derivedStatus:"done",badgeHint:"done"};return{derivedStatus:"in_progress",badgeHint:"building"}}return{derivedStatus:"in_progress",badgeHint:"planning"}}}async function B(a,b){let c=await e.z.idea.findMany({where:{companyUuid:a,projectUuid:b},select:{uuid:!0,title:!0,status:!0,elaborationStatus:!0,createdAt:!0,updatedAt:!0},orderBy:{createdAt:"desc"}}),d=await e.z.proposal.findMany({where:{companyUuid:a,projectUuid:b,status:{in:["approved","pending"]}},select:{uuid:!0,status:!0,inputUuids:!0,createdAt:!0},orderBy:{createdAt:"desc"}}),f=new Map,g=new Set,h=new Map;for(let a of d){let b=a.inputUuids;if(Array.isArray(b)){for(let c of b)if(h.set(c,(h.get(c)??0)+1),"pending"===a.status)g.add(c);else if("approved"===a.status){let b=f.get(c);(!b||a.createdAt>b.createdAt)&&f.set(c,{uuid:a.uuid,createdAt:a.createdAt})}}}let i=[...new Set([...f.values()].map(a=>a.uuid))],j=new Map;if(i.length>0)for(let b of(await e.z.task.findMany({where:{companyUuid:a,proposalUuid:{in:i}},select:{proposalUuid:!0,status:!0}}))){if(!b.proposalUuid)continue;let a=j.get(b.proposalUuid)||[];a.push(b.status),j.set(b.proposalUuid,a)}return c.map(a=>{let c=f.get(a.uuid),d=c&&j.get(c.uuid)||[],{derivedStatus:e,badgeHint:i}=A({ideaStatus:a.status,elaborationStatus:a.elaborationStatus,hasPendingProposal:g.has(a.uuid),hasApprovedProposal:!!c,taskStatuses:d});return{uuid:a.uuid,title:a.title,status:a.status,derivedStatus:e,badgeHint:i,createdAt:a.createdAt,updatedAt:a.updatedAt,projectUuid:b,proposalCount:h.get(a.uuid)??0,taskCount:d.length}})}let E=["todo","in_progress","human_conduct_required","done"];async function C(a,b){let c=await B(a,b),d={},e={};for(let a of E)d[a]=[],e[a]=0;for(let a of c){let b=a.derivedStatus,c={uuid:a.uuid,title:a.title,status:a.status,derivedStatus:b,badgeHint:a.badgeHint,createdAt:a.createdAt.toISOString()};d[b]&&(d[b].push(c),e[b]++)}return{groups:d,counts:e}}d()}catch(a){d(a)}})},71902:(a,b,c)=>{c(68537),c(97307)},77219:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{XH:()=>h});var e=c(55511),f=c(71255);c(97307);var g=a([f]);f=(g.then?(await g)():g)[0];let i="cho_";function h(){var a;let b=(0,e.randomBytes)(32).toString("base64url"),c=`${i}${b}`,d=(a=c,(0,e.createHash)("sha256").update(a).digest("hex")),f=`${i}${b.slice(0,4)}...${b.slice(-4)}`;return{key:c,hash:d,prefix:f}}d()}catch(a){d(a)}})},80041:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{x:()=>l});var e=c(2613);c(50785);var f=c(9259),g=c(67738),h=c(61212),i=c(97307),j=c(12217),k=a([f,g,h]);async function l(a){let b=await (0,f.d)();if(!b)return{activities:[],total:0};try{let c=await (0,h.MY)(b.companyUuid,a);if(!c)return{activities:[],total:0};return await (0,g.listActivitiesWithActorNames)({companyUuid:b.companyUuid,projectUuid:c.projectUuid,targetType:"idea",targetUuid:a,skip:0,take:50})}catch(a){return i.A.error({err:a},"Failed to get idea activities"),{activities:[],total:0}}}[f,g,h]=k.then?(await k)():k,(0,j.D)([l]),(0,e.A)(l,"4046bd6d9d24b5c05b8e7465ad674fd309a5e165c9",null),d()}catch(a){d(a)}})},82658:(a,b,c)=>{c.d(b,{Ke:()=>i,Nt:()=>g,R6:()=>h});var d=c(10837),e=c(70952),f=c(96307);function g({...a}){return(0,d.jsx)(e.Root,{"data-slot":"collapsible",...a})}function h({...a}){return(0,d.jsx)(e.Trigger,{"data-slot":"collapsible-trigger",...a})}function i({className:a,...b}){return(0,d.jsx)(e.Content,{"data-slot":"collapsible-content",className:(0,f.cn)("overflow-hidden data-[state=open]:animate-[collapsible-down_250ms_ease-in-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-in-out]",a),...b})}},82870:(a,b,c)=>{c.a(a,async(a,b)=>{try{var d=c(71255),e=c(40869),f=c(92633),g=a([d,e,f]);[d,e,f]=g.then?(await g)():g,b()}catch(a){b(a)}})},85806:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{f0:()=>l});var e=c(33994),f=c(61212),g=c(50530),h=c(53870),i=c(97879),j=c(28774),k=c(466),l=c(67738),m=c(82870),n=c(23733),o=a([e,f,g,h,i,j,k,l,m,n]);[e,f,g,h,i,j,k,l,m,n]=o.then?(await o)():o,d()}catch(a){d(a)}})},86099:(a,b,c)=>{c(33513);let d={BAD_REQUEST:"BAD_REQUEST",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",NOT_FOUND:"NOT_FOUND",CONFLICT:"CONFLICT",VALIDATION_ERROR:"VALIDATION_ERROR",ALREADY_CLAIMED:"ALREADY_CLAIMED",NOT_CLAIMED:"NOT_CLAIMED",INVALID_STATUS_TRANSITION:"INVALID_STATUS_TRANSITION",PERMISSION_DENIED:"PERMISSION_DENIED",INTERNAL_ERROR:"INTERNAL_ERROR",DATABASE_ERROR:"DATABASE_ERROR"};d.BAD_REQUEST,d.UNAUTHORIZED,d.FORBIDDEN,d.NOT_FOUND,d.CONFLICT,d.VALIDATION_ERROR,d.ALREADY_CLAIMED,d.NOT_CLAIMED,d.INVALID_STATUS_TRANSITION,d.PERMISSION_DENIED,d.INTERNAL_ERROR,d.DATABASE_ERROR},86625:(a,b,c)=>{c.d(b,{R:()=>u});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(21790),i=c(49102),j=c(20447),k=c(67832),l=c(87461),m=c(86460),n=c(42424),o=c(9994),p=c(82658),q=c(42377);let r=(0,q.createServerReference)("702f319e2077ad37c4270562c100077fcbf2c67fa3",q.callServer,void 0,q.findSourceMapURL,"submitElaborationAnswersAction"),s="__other__",t={functional:"functional",non_functional:"nonFunctional",business_context:"businessContext",technical_context:"technicalContext",user_scenario:"userScenario",scope:"scope"};function u({ideaUuid:a,elaboration:b,onRefresh:c}){let e=(0,g.c)("elaboration"),h=(0,f.useRouter)();if(!b||0===b.rounds.length)return null;let{summary:i,rounds:j}=b;return(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wide text-[#9A9A9A]",children:e("title")}),(0,d.jsx)("span",{className:"text-xs font-medium text-[#C67A52]",children:e("answeredCounter",{answered:i.answeredQuestions,total:i.totalQuestions})})]}),(0,d.jsx)("div",{className:"space-y-2.5",children:j.map(b=>(0,d.jsx)(v,{round:b,ideaUuid:a,onAnswered:async()=>{await c?.(),h.refresh()}},b.uuid))})]})}function v({round:a,ideaUuid:b,onAnswered:c}){let f=(0,g.c)("elaboration"),j="pending_answers"===a.status,k="answered"===a.status||"validated"===a.status||"needs_followup"===a.status,[l,m]=(0,e.useState)(j);return(0,d.jsx)(p.Nt,{open:l,onOpenChange:m,children:(0,d.jsxs)("div",{className:"overflow-hidden rounded-xl border border-[#E5E0D8] bg-white",children:[(0,d.jsx)(p.R6,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",className:`flex w-full items-center justify-between px-4 py-3 text-left transition-colors cursor-pointer hover:bg-[#FAF8F4] ${l?"bg-[#F7F6F3] border-b border-[#E5E0D8]":""}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[l?(0,d.jsx)(h.A,{className:"h-4 w-4 text-[#6B6B6B]"}):(0,d.jsx)(i.A,{className:"h-4 w-4 text-[#6B6B6B]"}),(0,d.jsx)("span",{className:`flex h-[22px] w-[22px] shrink-0 items-center justify-center rounded-full text-[11px] font-semibold text-white ${j?"bg-[#C67A52]":"bg-[#888780]"}`,children:a.roundNumber}),(0,d.jsx)("span",{className:"text-[13px] font-semibold text-[#2C2C2C]",children:f("roundLabel",{number:a.roundNumber})}),!l&&(0,d.jsxs)("span",{className:"text-xs text-[#9A9A9A]",children:["\xb7 ",f("questionCount",{count:a.questions.length})]})]}),k?(0,d.jsx)("span",{className:"rounded bg-[#E8F5E9] px-2 py-0.5 text-[10px] font-medium text-[#2E7D32]",children:f("statusAnswered")}):(0,d.jsx)("span",{className:"rounded bg-[#FFF3E0] px-2 py-0.5 text-[10px] font-medium text-[#E65100]",children:f("pendingAnswers")})]})}),(0,d.jsx)(p.Ke,{children:j?(0,d.jsx)(x,{round:a,ideaUuid:b,onAnswered:c}):(0,d.jsx)(w,{round:a})})]})})}function w({round:a}){let b=(0,g.c)("elaboration");return(0,d.jsx)("div",{className:"space-y-4 px-4 py-4",children:a.questions.map((c,e)=>{let f=c.answer?.selectedOptionId?c.options.find(a=>a.id===c.answer?.selectedOptionId):null,g=c.answer?.customText||f?.label||b("noAnswer"),h=t[c.category]||c.category;return(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,d.jsxs)("span",{className:"text-xs leading-relaxed text-[#6B6B6B]",children:["Q: ",c.text]}),(0,d.jsx)("span",{className:"shrink-0 text-[11px] italic text-[#B0B0B0]",children:b(`category.${h}`)})]}),(0,d.jsxs)("p",{className:"mt-1 text-xs font-medium leading-relaxed text-[#2C2C2C]",children:["A: ",g]}),e<a.questions.length-1&&(0,d.jsx)("div",{className:"mt-4 h-px bg-[#F0EEEA]"})]},c.uuid)})})}function x({round:a,ideaUuid:b,onAnswered:c}){let f=(0,g.c)("elaboration"),[h,p]=(0,e.useState)(0),q=(0,e.useRef)(h),[u,v]=(0,e.useState)("right"),[w,x]=(0,e.useState)({}),[y,z]=(0,e.useState)(!1),[A,B]=(0,e.useState)(null),C=(0,e.useCallback)((a,b)=>{v("left"===b?"right":"left"),p(a)},[]),D=a.questions,E=D[h],F=t[E.category]||E.category,G=(0,e.useCallback)((a,b)=>{if(x(c=>({...c,[a]:{questionId:a,selectedOptionId:b===s?null:b,customText:b===s?c[a]?.customText||"":null}})),b!==s){let a=Math.min(D.length-1,q.current+1);a!==q.current&&setTimeout(()=>C(a,"left"),200)}},[D.length,C]),H=(0,e.useCallback)((a,b)=>{x(c=>({...c,[a]:{...c[a],questionId:a,selectedOptionId:null,customText:b}}))},[]),I=D.filter(a=>a.required).every(a=>{let b=w[a.questionId];return!!b&&!!(b.selectedOptionId||b.customText&&b.customText.trim())}),J=async()=>{z(!0),B(null);let d=Object.values(w),e=await r(b,a.uuid,d);e.success?(await c(),z(!1)):(z(!1),B(e.error||f("submitFailed")))},K=(a=>{let b=w[a];return b?null===b.selectedOptionId&&null!==b.customText&&void 0!==b.customText?s:b.selectedOptionId||null:null})(E.questionId),L=K===s;return(0,d.jsxs)("div",{className:"overflow-hidden p-3.5",children:[(0,d.jsxs)("div",{className:"right"===u?"animate-in slide-in-from-right-4 duration-200":"animate-in slide-in-from-left-4 duration-200",children:[(0,d.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,d.jsx)("div",{className:"flex-1 text-sm text-[#6B6B6B]",children:E.text}),(0,d.jsxs)("div",{className:"flex shrink-0 items-center gap-1",children:[(0,d.jsx)(n.$,{variant:"ghost",size:"icon",onClick:()=>C(h-1,"right"),disabled:0===h,className:"h-7 w-7 text-[#6B6B6B] disabled:opacity-30",children:(0,d.jsx)(j.A,{className:"h-4 w-4"})}),(0,d.jsx)("span",{className:"text-xs text-[#9A9A9A]",children:f("navCounter",{current:h+1,total:D.length})}),(0,d.jsx)(n.$,{variant:"ghost",size:"icon",onClick:()=>C(h+1,"left"),disabled:h===D.length-1,className:"h-7 w-7 text-[#6B6B6B] disabled:opacity-30",children:(0,d.jsx)(i.A,{className:"h-4 w-4"})})]})]}),(0,d.jsxs)("div",{className:"mt-3",children:[E.options.map((a,b)=>{let c=K===a.id;return(0,d.jsxs)("div",{children:[(0,d.jsxs)(n.$,{variant:"ghost",onClick:()=>G(E.questionId,a.id),className:`flex w-full items-center justify-between px-3.5 py-3 h-auto text-left transition-colors rounded-none ${c?"bg-[#F7F6F3]":"hover:bg-[#FAF8F4]"}`,children:[(0,d.jsxs)("span",{className:"flex items-center gap-2.5",children:[(0,d.jsx)("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md bg-[#E5E0D8] text-xs font-medium text-[#5F5E5A]",children:b+1}),(0,d.jsxs)("span",{className:"flex flex-col items-start",children:[(0,d.jsx)("span",{className:"text-[13px] text-[#2C2C2A]",children:a.label}),a.description&&(0,d.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:a.description})]})]}),c&&(0,d.jsx)(k.A,{className:"h-4 w-4 text-[#888780]"})]}),b<E.options.length-1&&(0,d.jsx)("div",{className:"h-px bg-[#F0EEEA]"})]},a.id)}),(0,d.jsx)("div",{className:"h-px bg-[#F0EEEA]"}),(0,d.jsxs)("div",{className:`flex w-full items-center gap-2.5 px-3.5 py-3 transition-colors ${L?"bg-[#F7F6F3]":"hover:bg-[#FAF8F4]"}`,children:[(0,d.jsx)("span",{className:"flex h-7 w-7 shrink-0 cursor-pointer items-center justify-center rounded-md bg-[#E5E0D8]",onClick:()=>G(E.questionId,s),children:(0,d.jsx)(l.A,{className:"h-3.5 w-3.5 text-[#B4B2A9]"})}),L?(0,d.jsx)(o.p,{type:"text",value:w[E.questionId]?.customText||"",onChange:a=>H(E.questionId,a.target.value),placeholder:f("somethingElse"),className:"flex-1 border-none bg-transparent text-[13px] text-[#2C2C2A] placeholder:italic placeholder:text-[#B4B2A9] shadow-none focus-visible:ring-0",autoFocus:!0}):(0,d.jsx)(n.$,{variant:"ghost",onClick:()=>G(E.questionId,s),className:"flex-1 justify-start text-left text-[13px] italic text-[#B4B2A9] h-auto p-0 hover:bg-transparent",children:f("somethingElse")})]})]})]},h),A&&(0,d.jsx)("div",{className:"mt-3 rounded-lg bg-destructive/10 p-2.5 text-[12px] text-destructive",children:A}),(0,d.jsxs)("div",{className:"mt-3 flex items-center justify-between",children:[(0,d.jsxs)("span",{className:"flex items-center gap-1.5 text-[11px] text-[#B0B0B0]",children:[(0,d.jsx)("span",{className:"inline-block h-1.5 w-1.5 rounded-full bg-[#C67A52]"}),f(`category.${F}`)]}),(0,d.jsx)(n.$,{onClick:J,disabled:!I||y,className:"bg-[#C67A52] hover:bg-[#B56A42] text-white text-[13px]",children:y?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(m.A,{className:"mr-2 h-3.5 w-3.5 animate-spin"}),f("submitting")]}):f("submitAnswers")})]})]})}},86942:(a,b,c)=>{c.d(b,{z:()=>e});var d=c(42377);let e=(0,d.createServerReference)("409c7e2e848a704785745d8b3cd8498d2e2630bca0",d.callServer,void 0,d.findSourceMapURL,"getElaborationAction")}};
@@ -1 +0,0 @@
1
- exports.id=9051,exports.ids=[9051],exports.modules={2852:(a,b,c)=>{"use strict";c.d(b,{J:()=>g});var d=c(10837);c(21968);var e=c(13277),f=c(96307);function g({className:a,...b}){return(0,d.jsx)(e.Root,{"data-slot":"label",className:(0,f.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...b})}},5514:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{y:()=>B});var e=c(10837),f=c(21968),g=c(9222),h=c(44787),i=c(22727),j=c(24383),k=c(55775),l=c(27936),m=c(24879),n=c(31009),o=c(45148),p=c(35198),q=c(49599),r=c(42424),s=c(11568),t=c(55111),u=c(73927),v=c(44058),w=c(54722),x=c(86104),y=c(95654),z=c(76172),A=a([x]);x=(A.then?(await A)():A)[0];let C={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]"},D={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},E={in_progress:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E8F5E9] text-[#2E7D32]",open:"bg-[#F5F5F5] text-[#6B6B6B]",to_verify:"bg-[#E3F2FD] text-[#1565C0]"},F=[{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}];function B({projectUuid:a,initialTasks:b,currentUserUuid:c,selectedTaskUuid:d,onTaskSelect:A,onPanelClose:B,proposalUuidFilter:G}){let H=(0,g.c)(),[I,J]=(0,f.useState)(b),[K,L]=(0,f.useState)({}),[M,N]=(0,f.useState)(!1),[O,P]=(0,f.useState)(null),[Q,R]=(0,f.useState)([]),[S,T]=(0,f.useState)(!1),[U,V]=(0,f.useState)([]),[W,X]=(0,f.useState)(!1),[Y,Z]=(0,f.useState)(!1),$=(0,f.useCallback)(async()=>{let b=await (0,t.p)(a);if(b.success){let a=G?b.data.filter(a=>a.proposalUuid&&G.has(a.proposalUuid)):b.data;J(a);let c=await (0,y.h)(a.map(a=>a.uuid));c.success&&c.data&&L(c.data)}},[a,G]);(0,z.eV)("task",$),(0,f.useRef)(G);let _=(0,f.useMemo)(()=>d?I.find(a=>a.uuid===d)??null:null,[d,I]),aa=a=>I.filter(b=>a.includes(b.status)),ab=a=>aa(a).reduce((a,b)=>a+(b.storyPoints||0),0),ac=async b=>{let c;Z(!1);let{destination:d,source:e,draggableId:f}=b;if(!d||d.droppableId===e.droppableId&&d.index===e.index)return;let g=d.droppableId;e.droppableId;let h=I.find(a=>a.uuid===f);if(!h)return;if(F.find(a=>a.id===g),"todo"===g)c="assigned"===h.status?"assigned":"open";else if("in_progress"===g)c="in_progress";else if("to_verify"===g)c="to_verify";else{if("done"!==g)return;c="to_verify"===h.status?"done":"to_verify"}J(a=>a.map(a=>a.uuid===f?{...a,status:c}:a));let i=await (0,u.y)(f,g,a);if(i.success)$();else{if("blocked"in i&&i.blocked&&"blockers"in i){J(a=>a.map(a=>a.uuid===f?{...a,status:h.status}:a)),P(h),R(i.blockers),N(!0);return}if(J(a=>a.map(a=>a.uuid===f?{...a,status:h.status}:a)),"gateBlocked"in i&&i.gateBlocked){let a="unresolvedCriteria"in i&&Array.isArray(i.unresolvedCriteria)?i.unresolvedCriteria:[];V(a),T(!0)}}},ad=async()=>{if(O){X(!0);try{let a=await (0,v.H)(O.uuid,"in_progress");a.success?(N(!1),P(null),R([]),$()):w.q.error("Failed to force move task:",a.error)}finally{X(!1)}}},ae=()=>{N(!1),P(null),R([])};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(h.JY,{onDragStart:()=>{Z(!0)},onDragEnd:ac,children:(0,e.jsx)(m.o,{children:(0,e.jsx)("div",{className:"flex flex-1 gap-4 overflow-x-auto pb-4",children:F.map(a=>{let b=aa(a.statuses);return(0,e.jsxs)("div",{className:"flex w-[300px] flex-shrink-0 flex-col rounded-xl bg-[#F5F2EC] p-4",children:[(0,e.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("h3",{className:"font-medium text-[#2C2C2C]",children:H(`status.${a.labelKey}`)}),(0,e.jsx)("span",{className:"rounded-full bg-white px-2 py-0.5 text-xs font-medium text-[#6B6B6B]",children:b.length})]}),ab(a.statuses)>0&&(0,e.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#9A9A9A]",children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,e.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,e.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),ab(a.statuses),"h"]})]}),(0,e.jsx)(h.gL,{droppableId:a.id,children:(a,c)=>(0,e.jsxs)("div",{ref:a.innerRef,...a.droppableProps,className:`flex-1 space-y-3 overflow-y-auto min-h-[100px] rounded-lg pt-3 pr-3 transition-colors ${c.isDraggingOver?"bg-[#E5E0D8]":""}`,children:[0!==b.length||c.isDraggingOver?b.map((a,b)=>{let c=!!a.dependsOn&&0!==a.dependsOn.length&&a.dependsOn.some(a=>"done"!==a.status&&"closed"!==a.status),d=(c?!a.dependsOn?[]:a.dependsOn.filter(a=>"done"!==a.status&&"closed"!==a.status):[]).map(a=>a.title).join(", ");return(0,e.jsx)(h.sx,{draggableId:a.uuid,index:b,children:(b,f)=>(0,e.jsx)("div",{ref:b.innerRef,...b.draggableProps,...b.dragHandleProps,onClick:()=>{f.isDragging||A(a.uuid)},style:b.draggableProps.style,children:(0,e.jsxs)(n.P.div,{className:"relative",layoutId:Y?void 0:`task-card-${a.uuid}`,transition:o.Yv.spring,children:[K[a.uuid]>0&&(0,e.jsx)("div",{className:"absolute -top-3 -right-3 z-10 flex h-11 w-11 items-center justify-center rounded-full border-2 border-green-400 bg-white shadow-sm",children:(0,e.jsx)("img",{src:"/typing-animation.gif",alt:"",className:"h-8 w-8"})}),(0,e.jsx)(i.D,{entityType:"task",entityUuid:a.uuid,children:(0,e.jsxs)(p.Zp,{className:`cursor-pointer p-4 transition-all ${c?"border-dashed border-[#D1D1D1] opacity-60":"border-[#E5E0D8] hover:border-[#C67A52]"} bg-white hover:shadow-sm ${f.isDragging?"shadow-lg rotate-2":""}`,children:[(0,e.jsxs)("div",{className:"mb-2 flex items-start justify-between",children:[(0,e.jsx)(q.E,{className:C[a.status]||"",children:H(`status.${D[a.status]||a.status}`)}),(0,e.jsx)("div",{className:"flex items-center gap-1.5",children:a.storyPoints&&(0,e.jsxs)("span",{className:"flex items-center gap-1 rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,e.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,e.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),a.storyPoints,"h"]})})]}),(0,e.jsx)("h4",{className:"mb-1 font-medium text-[#2C2C2C]",children:a.title}),a.description&&(0,e.jsx)("p",{className:"mb-2 line-clamp-2 text-sm text-[#6B6B6B]",children:a.description}),c&&(0,e.jsxs)("div",{className:"mb-2 flex items-center gap-1.5 rounded-md bg-[#FFF3E0] px-2 py-1",children:[(0,e.jsx)(j.A,{className:"h-3 w-3 shrink-0 text-[#E65100]"}),(0,e.jsx)("span",{className:"text-[9px] font-medium leading-tight text-[#E65100] line-clamp-1",children:H("tasks.blockedBy",{tasks:d})})]}),(0,e.jsxs)("div",{className:"flex items-center justify-between text-xs text-[#9A9A9A]",children:[a.assignee?(0,e.jsxs)("span",{className:"flex items-center gap-1",children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,e.jsx)("path",{d:"M12 8V4H8"}),(0,e.jsx)("rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"})]}),a.assignee.name]}):"open"===a.status?(0,e.jsx)("span",{className:"text-[#C67A52]",children:H("common.assign")}):(0,e.jsx)("span",{children:H("common.unassigned")}),(0,e.jsxs)("span",{className:"flex items-center gap-1",children:[K[a.uuid]>0&&(0,e.jsxs)(q.E,{variant:"outline",className:"h-4 gap-1 border-green-300 px-1.5 text-[10px] text-green-700",children:[(0,e.jsx)("span",{className:"inline-block h-1.5 w-1.5 rounded-full bg-green-500"}),H("sessions.workerCount",{count:K[a.uuid]})]}),a.acceptanceSummary&&a.acceptanceSummary.total>0&&(()=>{let b=a.acceptanceSummary,c="to_verify"===a.status,d=b.requiredPassed===b.required&&b.required>0,f=b.requiredFailed>0,g="bg-[#F5F2EC] text-[#9A9A9A]";return c&&(g=d?"bg-green-50 text-green-700":f?"bg-red-50 text-[#C4574C]":"bg-amber-50 text-[#D97706]"),(0,e.jsxs)(q.E,{className:`h-4 gap-1 border-0 px-1.5 text-[9px] ${g}`,children:[(0,e.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-2.5 w-2.5",children:[(0,e.jsx)("path",{d:"M9 11l3 3L22 4"}),(0,e.jsx)("path",{d:"M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11"})]}),b.passed,"/",b.total]})})()]})]})]})})]})})},a.uuid)}):(0,e.jsx)("div",{className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:H("tasks.noTasks")}),a.placeholder]})})]},a.id)})})})}),_&&(0,e.jsx)(x.v,{task:_,projectUuid:a,currentUserUuid:c,onClose:B}),(0,e.jsx)(s.lG,{open:M,onOpenChange:a=>{a||ae()},children:(0,e.jsxs)(s.Cf,{className:"max-w-md rounded-2xl",children:[(0,e.jsxs)(s.c7,{children:[(0,e.jsxs)(s.L3,{className:"flex items-center gap-2",children:[(0,e.jsx)(k.A,{className:"h-5 w-5 text-[#E65100]"}),H("tasks.dependencyBlocked")]}),(0,e.jsx)(s.rr,{children:H("tasks.dependencyBlockedDescription")})]}),(0,e.jsxs)("div",{className:"rounded-lg bg-[#FAF8F4] p-3",children:[(0,e.jsx)("p",{className:"mb-2 text-xs font-medium text-[#6B6B6B]",children:H("tasks.blockerList")}),(0,e.jsx)("div",{className:"space-y-2",children:Q.map(a=>(0,e.jsxs)("div",{className:"flex items-center justify-between rounded-lg border border-[#E5E0D8] bg-white p-3",children:[(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("p",{className:"truncate text-sm font-medium text-[#2C2C2C]",children:a.title}),(0,e.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[a.assignee&&(0,e.jsx)("span",{className:"text-xs text-[#6B6B6B]",children:a.assignee.name}),a.sessionCheckin&&(0,e.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#6B6B6B]",children:[(0,e.jsx)(l.A,{className:"h-3 w-3"}),a.sessionCheckin.sessionName]})]})]}),(0,e.jsx)(q.E,{className:`shrink-0 ${E[a.status]||"bg-[#F5F5F5] text-[#6B6B6B]"}`,children:H(`status.${D[a.status]||a.status}`)})]},a.uuid))})]}),(0,e.jsxs)(s.Es,{className:"gap-2 sm:gap-0",children:[(0,e.jsx)(r.$,{variant:"outline",onClick:ae,children:H("common.cancel")}),(0,e.jsx)(r.$,{className:"bg-[#E65100] hover:bg-[#BF4400] text-white",onClick:ad,disabled:W,children:W?H("common.processing"):H("tasks.forceMove")})]})]})}),(0,e.jsx)(s.lG,{open:S,onOpenChange:T,children:(0,e.jsxs)(s.Cf,{className:"max-w-[520px] rounded-2xl p-0 gap-0",children:[(0,e.jsxs)(s.c7,{className:"px-6 pt-6 pb-4",children:[(0,e.jsxs)(s.L3,{className:"flex items-center gap-2.5",children:[(0,e.jsx)(k.A,{className:"h-5 w-5 text-[#C4574C]"}),H("acceptanceCriteria.title")]}),(0,e.jsx)(s.rr,{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:H("acceptanceCriteria.gateBlocked",{count:U.filter(a=>a.required&&"passed"!==a.status).length})})]}),(0,e.jsxs)("div",{className:"px-6 pb-4 space-y-3",children:[(0,e.jsx)("p",{className:"text-[11px] font-semibold text-[#9A9A9A] uppercase tracking-wide",children:H("acceptanceCriteria.title")}),U.map(a=>(0,e.jsxs)("div",{className:`rounded-lg border p-3 space-y-2 ${"failed"===a.status?"border-red-200 bg-white":"border-[#E5E0D8] bg-white"}`,children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)("div",{className:`h-2 w-2 rounded-full shrink-0 ${"failed"===a.status?"bg-[#C4574C]":"bg-[#F59E0B]"}`}),(0,e.jsx)("span",{className:"text-xs font-semibold text-[#2C2C2C]",children:a.description})]}),(0,e.jsxs)("div",{className:"flex items-center gap-2 pl-4",children:[(0,e.jsx)(q.E,{className:`text-[10px] border-0 ${"failed"===a.status?"bg-red-50 text-[#C4574C]":"bg-amber-50 text-[#D97706]"}`,children:H(`acceptanceCriteria.status.${a.status}`)}),(0,e.jsx)(q.E,{className:"text-[10px] border-0 bg-[#FAF8F4] text-[#9A9A9A]",children:a.required?H("acceptanceCriteria.required"):H("acceptanceCriteria.optional")}),!a.evidence&&(0,e.jsx)("span",{className:"text-[10px] italic text-[#9A9A9A]",children:H("acceptanceCriteria.noEvidence")})]}),a.evidence&&(0,e.jsxs)("div",{className:"rounded-md bg-red-50 p-2 ml-4",children:[(0,e.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:H("acceptanceCriteria.verifyEvidence")}),(0,e.jsx)("p",{className:"text-[11px] text-[#2C2C2C] mt-0.5",children:a.evidence})]})]},a.uuid))]}),(0,e.jsx)(s.Es,{className:"border-t border-[#E5E2DC] px-6 py-4",children:(0,e.jsx)(r.$,{className:"rounded-lg bg-[#C4574C] hover:bg-[#A3433A] text-white",onClick:()=>T(!1),children:H("acceptanceCriteria.dismiss")})})]})})]})}d()}catch(a){d(a)}})},6019:(a,b,c)=>{"use strict";c.d(b,{$v:()=>p,EO:()=>l,Lt:()=>h,Rx:()=>q,Zr:()=>r,ck:()=>n,r7:()=>o,tv:()=>i,wd:()=>m});var d=c(10837);c(21968);var e=c(81093),f=c(96307),g=c(42424);function h({...a}){return(0,d.jsx)(e.Root,{"data-slot":"alert-dialog",...a})}function i({...a}){return(0,d.jsx)(e.Trigger,{"data-slot":"alert-dialog-trigger",...a})}function j({...a}){return(0,d.jsx)(e.Portal,{"data-slot":"alert-dialog-portal",...a})}function k({className:a,...b}){return(0,d.jsx)(e.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,f.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",a),...b})}function l({className:a,size:b="default",...c}){return(0,d.jsxs)(j,{children:[(0,d.jsx)(k,{}),(0,d.jsx)(e.Content,{"data-slot":"alert-dialog-content","data-size":b,className:(0,f.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",a),...c})]})}function m({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,f.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",a),...b})}function n({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,f.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",a),...b})}function o({className:a,...b}){return(0,d.jsx)(e.Title,{"data-slot":"alert-dialog-title",className:(0,f.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",a),...b})}function p({className:a,...b}){return(0,d.jsx)(e.Description,{"data-slot":"alert-dialog-description",className:(0,f.cn)("text-muted-foreground text-sm",a),...b})}function q({className:a,variant:b="default",size:c="default",...h}){return(0,d.jsx)(g.$,{variant:b,size:c,asChild:!0,children:(0,d.jsx)(e.Action,{"data-slot":"alert-dialog-action",className:(0,f.cn)(a),...h})})}function r({className:a,variant:b="outline",size:c="default",...h}){return(0,d.jsx)(g.$,{variant:b,size:c,asChild:!0,children:(0,d.jsx)(e.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,f.cn)(a),...h})})}},10297:(a,b,c)=>{"use strict";c.d(b,{G7:()=>i,L$:()=>l,h_:()=>m,oI:()=>j,uB:()=>h,xL:()=>k});var d=c(10837);c(21968);var e=c(28918),f=c(75888),g=c(96307);function h({className:a,...b}){return(0,d.jsx)(e.uB,{"data-slot":"command",className:(0,g.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...b})}function i({className:a,...b}){return(0,d.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,d.jsx)(f.A,{className:"size-4 shrink-0 opacity-50"}),(0,d.jsx)(e.uB.Input,{"data-slot":"command-input",className:(0,g.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",a),...b})]})}function j({className:a,...b}){return(0,d.jsx)(e.uB.List,{"data-slot":"command-list",className:(0,g.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",a),...b})}function k({...a}){return(0,d.jsx)(e.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...a})}function l({className:a,...b}){return(0,d.jsx)(e.uB.Group,{"data-slot":"command-group",className:(0,g.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...b})}function m({className:a,...b}){return(0,d.jsx)(e.uB.Item,{"data-slot":"command-item",className:(0,g.cn)("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",a),...b})}},11225:(a,b,c)=>{"use strict";c.d(b,{C:()=>i,z:()=>h});var d=c(10837);c(21968);var e=c(90856),f=c(28121),g=c(96307);function h({className:a,...b}){return(0,d.jsx)(f.Root,{"data-slot":"radio-group",className:(0,g.cn)("grid gap-3",a),...b})}function i({className:a,...b}){return(0,d.jsx)(f.Item,{"data-slot":"radio-group-item",className:(0,g.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",a),...b,children:(0,d.jsx)(f.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,d.jsx)(e.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},15107:(a,b,c)=>{Promise.resolve().then(c.bind(c,29334))},19520:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Hd:()=>n,nk:()=>p,pw:()=>o,yq:()=>m});var e=c(2613);c(50785);var f=c(5562),g=c(9259),h=c(50530),i=c(67738),j=c(97307),k=c(12217),l=a([g,h,i]);[g,h,i]=l.then?(await l)():l;let q={todo:"open",in_progress:"in_progress",to_verify:"to_verify",done:"done"};async function m(a,b,c){let d=await (0,g.d)();if(!d)return{success:!1,error:"Unauthorized"};try{let e=await (0,h.K4)(d.companyUuid,a);if(!e)return{success:!1,error:"Task not found"};let g=q[b];if(!g)return{success:!1,error:"Invalid column"};if("in_progress"===g){let b=await (0,h.IM)(a);if(!b.resolved)return{success:!1,error:"Dependencies not resolved",blocked:!0,blockers:b.blockers}}if("done"===g&&"to_verify"!==e.status)await (0,h.lC)(a,{status:"to_verify"});else if("done"===g&&"to_verify"===e.status){let b=await (0,h.Ew)(a);if(!b.allowed)return{success:!1,error:b.reason||"Not all required acceptance criteria are passed",gateBlocked:!0,unresolvedCriteria:b.unresolvedCriteria||[]};await (0,h.lC)(a,{status:"done"})}else await (0,h.lC)(a,{status:g});return(0,f.revalidatePath)(`/projects/${c}/tasks`),{success:!0}}catch(a){return j.A.error({err:a},"Failed to move task"),{success:!1,error:"Failed to move task"}}}async function n(a,b){let c=await (0,g.d)();if(!c)return{success:!1,error:"Unauthorized"};try{let d=await (0,h.K4)(c.companyUuid,a);if(!d)return{success:!1,error:"Task not found"};return await (0,h.lC)(a,{status:b}),await (0,i.createActivity)({companyUuid:c.companyUuid,projectUuid:d.projectUuid,targetType:"task",targetUuid:d.uuid,actorType:c.type,actorUuid:c.actorUuid,action:"force_status_change",value:JSON.stringify({from:d.status,to:b})}),{success:!0}}catch(a){return j.A.error({err:a},"Failed to force move task"),{success:!1,error:"Failed to force move task"}}}async function o(a){let b=await (0,g.d)();if(!b)return{success:!1,error:"Unauthorized"};try{let{tasks:c}=await (0,h.Vk)({companyUuid:b.companyUuid,projectUuid:a,skip:0,take:1e3});return{success:!0,data:c}}catch(a){return j.A.error({err:a},"Failed to fetch tasks"),{success:!1,error:"Failed to fetch tasks"}}}async function p(a){let b=await (0,g.d)();if(!b)return{nodes:[],edges:[]};try{return await (0,h.Cm)(b.companyUuid,a)}catch(a){return j.A.error({err:a},"Failed to get project dependencies"),{nodes:[],edges:[]}}}(0,k.D)([m,n,o,p]),(0,e.A)(m,"70152b61cb748897846229118842ce0c46b96a1abd",null),(0,e.A)(n,"60d44249373e6041564928a949b8c57ede4676f603",null),(0,e.A)(o,"40a50a4ce8ce883e434897e548cbdd26cece6b4ceb",null),(0,e.A)(p,"40ff585eecb554f3532597c3783fdee416ae8754c0",null),d()}catch(a){d(a)}})},20170:(a,b,c)=>{"use strict";c.d(b,{T:()=>f});var d=c(10837);c(21968);var e=c(96307);function f({className:a,...b}){return(0,d.jsx)("textarea",{"data-slot":"textarea",className:(0,e.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a),...b})}},24383:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},24879:(a,b,c)=>{"use strict";c.d(b,{o:()=>k});var d=c(10837),e=c(21968),f=c(46005);let g=(0,e.createContext)(null);var h=c(46801),i=c(72443);let j=a=>!a.isLayoutDirty&&a.willUpdate(!1),k=({children:a,id:b,inherit:c=!0})=>{let k=(0,e.useContext)(f.L),l=(0,e.useContext)(g),[m,n]=function(){let a=function(){let a=(0,e.useRef)(!1);return(0,i.E)(()=>(a.current=!0,()=>{a.current=!1}),[]),a}(),[b,c]=(0,e.useState)(0),d=(0,e.useCallback)(()=>{a.current&&c(b+1)},[b]);return[(0,e.useCallback)(()=>h.Gt.postRender(d),[d]),b]}(),o=(0,e.useRef)(null),p=k.id||l;null===o.current&&((a=>!0==(!0===a)||"id"===a)(c)&&p&&(b=b?p+"-"+b:p),o.current={id:b,group:!0===c&&k.group||function(){let a=new Set,b=new WeakMap,c=()=>a.forEach(j);return{add:d=>{a.add(d),b.set(d,d.addEventListener("willUpdate",c))},remove:d=>{a.delete(d);let e=b.get(d);e&&(e(),b.delete(d)),c()},dirty:c}}()});let q=(0,e.useMemo)(()=>({...o.current,forceRender:m}),[n]);return(0,d.jsx)(f.L.Provider,{value:q,children:a})}},27936:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(56556).A)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]])},28774:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{A8:()=>p,Ad:()=>o,CG:()=>n,Iq:()=>m,RB:()=>k,Sn:()=>h,d5:()=>l,tN:()=>j,x4:()=>i});var e=c(71255),f=c(77219),g=a([e,f]);async function h({companyUuid:a,name:b,roles:c,ownerUuid:d,persona:f,systemPrompt:g,permissions:h}){return e.z.agent.create({data:{companyUuid:a,name:b,roles:c,ownerUuid:d,persona:f,systemPrompt:g,...void 0!==h&&{permissions:h}},select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0,systemPrompt:!0,ownerUuid:!0,createdAt:!0}})}async function i(a,b,c){if(c&&!await e.z.agent.findFirst({where:{uuid:a,companyUuid:c},select:{uuid:!0}}))throw Error("Agent not found");return e.z.agent.update({where:{uuid:a},data:b,select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0,systemPrompt:!0,ownerUuid:!0,lastActiveAt:!0,createdAt:!0}})}async function j(a,b){return e.z.apiKey.updateMany({where:{agentUuid:a,revokedAt:null},data:{name:b}})}async function k(a){return e.z.agent.delete({where:{uuid:a}})}async function l(a,b,c,d){let f={companyUuid:a,revokedAt:null,...d&&{agent:{ownerUuid:d}}},[g,h]=await Promise.all([e.z.apiKey.findMany({where:f,skip:b,take:c,orderBy:{createdAt:"desc"},include:{agent:{select:{uuid:!0,name:!0,roles:!0,permissions:!0,persona:!0}}}}),e.z.apiKey.count({where:f})]);return{apiKeys:g,total:h}}async function m({companyUuid:a,agentUuid:b,name:c,expiresAt:d}){let{key:g,hash:h,prefix:i}=(0,f.XH)();return{...await e.z.apiKey.create({data:{companyUuid:a,agentUuid:b,keyHash:h,keyPrefix:i,name:c,expiresAt:d},select:{uuid:!0,keyPrefix:!0,name:!0,expiresAt:!0,createdAt:!0}}),key:g}}async function n(a,b,c){return e.z.apiKey.findFirst({where:{uuid:b,companyUuid:a,...c&&{agent:{ownerUuid:c}}},select:{uuid:!0,agentUuid:!0,revokedAt:!0}})}async function o(a,b,c){return e.z.agent.findMany({where:{companyUuid:a,...c&&{ownerUuid:c},OR:[{roles:{has:b}},{roles:{has:`${b}_agent`}}]},select:{uuid:!0,name:!0,roles:!0,ownerUuid:!0},orderBy:{name:"asc"}})}async function p(a){return e.z.user.findMany({where:{companyUuid:a},select:{uuid:!0,name:!0,email:!0},orderBy:{name:"asc"}})}[e,f]=g.then?(await g)():g,d()}catch(a){d(a)}})},29179:(a,b,c)=>{Promise.resolve().then(c.bind(c,90436))},29334:(a,b,c)=>{"use strict";c.d(b,{TaskViewToggle:()=>d});let d=(0,c(37143).registerClientReference)(function(){throw Error("Attempted to call TaskViewToggle() from the server but TaskViewToggle is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/ubuntu/dev/ai-pm/src/app/(dashboard)/projects/[uuid]/tasks/task-view-toggle.tsx","TaskViewToggle")},44058:(a,b,c)=>{"use strict";c.d(b,{H:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60d44249373e6041564928a949b8c57ede4676f603",d.callServer,void 0,d.findSourceMapURL,"forceMoveTaskToColumnAction")},53739:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"00b90e532ab1af14f03a59ebaf794acdcb1e8e00e2":()=>g.vq,"401c19f5b7d207c4cba88fcbdee5866eb70f265d78":()=>g.Yw,"401d400f977bdb2e53c96b824bed06e5eb5d27b37f":()=>e.Dv,"4031d5da5330dfa122d8300df4f488c4f13fa1d9fe":()=>g.A0,"4037ee2edf72df3a68ba1e20d0b95f368656445ca8":()=>m.h,"403eb1f951029f9e86952fc15cad6fcd97bc7241e2":()=>g.p2,"404b290ebea3f0db599f51adffb8b083d3a8edcae5":()=>l.kq,"405851867c858db547dd452f0019918f1385e0ba82":()=>l.xo,"40587f04bba4020ab6512d4dfce1f1270f96030863":()=>m.J,"406afedcd411eaaa478d46b4f103677baf2db8bcc6":()=>j.f,"4077142db8d2ec1c066a58969b721cb84bc309c1be":()=>g.hR,"4077a5703649e3d1c4349209f65e6d64b6ea5c4d23":()=>k.F,"40a50a4ce8ce883e434897e548cbdd26cece6b4ceb":()=>f.pw,"40d99ce33fa98dde63c6c3af0de97e7ef37cae60cb":()=>e.v5,"40f7a9a62acd203b03bc4bce1bc45bd4b3bc71546d":()=>g.iY,"40ff585eecb554f3532597c3783fdee416ae8754c0":()=>f.nk,"60048fa1d5ef26a606a459457d8fb1984a1900b2b7":()=>h.Nq,"600aa54e0e9c1ebfbce33061f33fa54ae172ce6aba":()=>g.qb,"6016192f1fc8a0ebae45917ad49a14d6e2da8c7ec4":()=>h.IY,"601df9f3e57fbab53bd868d240dd95e5e96a4f125b":()=>l.TK,"6038409dcf4869824ac35ca72e9453a9d7d26b2232":()=>g.y9,"6044118f945eb7ec572d28494f4fc5b2fb4820827d":()=>g.TV,"60729c80a78426b20df988578d998a566a66bc2496":()=>h.hD,"607d2caeb9721178dd2c04ee76b961254a265c6262":()=>i.d,"6087c85c777ab278476906c7c12f9db1d6c24f5275":()=>g.bd,"60a749eb3a1cdc769e1047033577ceecc2f28e72ea":()=>e.Tg,"60d44249373e6041564928a949b8c57ede4676f603":()=>f.Hd,"60ea2934ba4a5b604a82f3617d1f94581311cab833":()=>l.wG,"70152b61cb748897846229118842ce0c46b96a1abd":()=>f.yq,"7042e4bd4e748b78e5378f1256a7824a4a64be3935":()=>i.s});var e=c(22299),f=c(19520),g=c(73393),h=c(71353),i=c(98581),j=c(64029),k=c(72189),l=c(22293),m=c(81751),n=a([e,f,g,h,i,j,k,l,m]);[e,f,g,h,i,j,k,l,m]=n.then?(await n)():n,d()}catch(a){d(a)}})},55111:(a,b,c)=>{"use strict";c.d(b,{p:()=>e});var d=c(42377);let e=(0,d.createServerReference)("40a50a4ce8ce883e434897e548cbdd26cece6b4ceb",d.callServer,void 0,d.findSourceMapURL,"fetchTasksAction")},63748:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{X:()=>n});var e=c(10023),f=c(66530),g=c(26555),h=c(82858),i=c(29662),j=c(71165),k=c(61413),l=c(29334),m=a([i,j,k]);async function n({projectUuid:a,initialSelectedTaskUuid:b}){let c=await (0,i.d)();c||(0,f.redirect)("/login");let d=await (0,g.A)();await (0,k.Yi)(c.companyUuid,a)||(0,f.redirect)("/projects");let{tasks:m}=await (0,j.Vk)({companyUuid:c.companyUuid,projectUuid:a,skip:0,take:1e3}),n=m.reduce((a,b)=>a+(b.storyPoints||0),0);return(0,e.jsxs)("div",{className:"flex h-full flex-col p-4 md:p-8",children:[(0,e.jsx)("div",{className:"mb-6 flex items-center justify-between",children:(0,e.jsxs)("div",{children:[(0,e.jsx)("h1",{className:"text-2xl font-semibold text-[#2C2C2C]",children:d("tasks.title")}),(0,e.jsxs)("div",{className:"mt-1 flex items-center gap-4",children:[(0,e.jsx)("p",{className:"text-sm text-[#6B6B6B]",children:d("tasks.subtitle")}),n>0&&(0,e.jsxs)("div",{className:"flex items-center gap-1.5 rounded-full bg-[#F5F2EC] px-3 py-1",children:[(0,e.jsx)(h.A,{className:"h-3.5 w-3.5 text-[#C67A52]"}),(0,e.jsxs)("span",{className:"text-xs font-medium text-[#6B6B6B]",children:[(0,e.jsx)("span",{className:"text-[#2C2C2C]",children:n.toFixed(1)})," ",d("tasks.agentHours")]})]})]})]})}),(0,e.jsx)(l.TaskViewToggle,{projectUuid:a,initialTasks:m,currentUserUuid:c.actorUuid,initialSelectedTaskUuid:b})]})}[i,j,k]=m.then?(await m)():m,d()}catch(a){d(a)}})},73927:(a,b,c)=>{"use strict";c.d(b,{y:()=>e});var d=c(42377);let e=(0,d.createServerReference)("70152b61cb748897846229118842ce0c46b96a1abd",d.callServer,void 0,d.findSourceMapURL,"moveTaskToColumnAction")},77219:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{XH:()=>h});var e=c(55511),f=c(71255);c(97307);var g=a([f]);f=(g.then?(await g)():g)[0];let i="cho_";function h(){var a;let b=(0,e.randomBytes)(32).toString("base64url"),c=`${i}${b}`,d=(a=c,(0,e.createHash)("sha256").update(a).digest("hex")),f=`${i}${b.slice(0,4)}...${b.slice(-4)}`;return{key:c,hash:d,prefix:f}}d()}catch(a){d(a)}})},79134:(a,b,c)=>{"use strict";c.d(b,{i:()=>p});var d=c(10837),e=c(21968),f=c(47797);c(63410);var g=c(9222),h=c(1007),i=c(86460),j=c(10694),k=c(42424),l=c(60265),m=c(42377);let n=(0,m.createServerReference)("40ff585eecb554f3532597c3783fdee416ae8754c0",m.callServer,void 0,m.findSourceMapURL,"getProjectDependenciesAction");var o=c(89653);function p({projectUuid:a,onTaskSelect:b,refreshKey:c}){let m=(0,g.c)(),p=(0,h.useSearchParams)(),[q,r,s]=(0,f.ck)([]),[t,u,v]=(0,f.fM)([]),[w,x]=(0,e.useState)(!0),[y,z]=(0,e.useState)(null),A=(0,e.useMemo)(()=>{let a=p.get("proposalUuids");if(!a)return null;let b=a.split(",").filter(Boolean);return b.length>0?new Set(b):null},[p]),B=(0,e.useCallback)(async()=>{x(!0);let b=await n(a),c=b.nodes,d=b.edges;if(A){let a=new Set((c=b.nodes.filter(a=>null!==a.proposalUuid&&A.has(a.proposalUuid))).map(a=>a.uuid));d=b.edges.filter(b=>a.has(b.from)&&a.has(b.to))}let e=c.map(a=>({id:a.uuid,type:"taskNode",position:{x:0,y:0},data:{title:a.title,status:a.status,priority:a.priority,proposalUuid:a.proposalUuid}})),f=d.map((a,b)=>({id:`e-${b}`,source:a.to,target:a.from,...l.qK})),{nodes:g,edges:h}=(0,l.nF)(e,f);r(g),u(h),x(!1)},[a,A,r,u]),C=(0,e.useCallback)(async a=>{if(!a.source||!a.target)return;z(null);let b=a.target,c=a.source,d=await (0,o.w)(b,c);if(!d.success)return void z(d.error||m("tasks.failedToAddDep"));await B()},[B]),D=(0,e.useCallback)((a,c)=>{b(c.id)},[b]);return w?(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,d.jsx)(i.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):0===q.length?(0,d.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-[#9A9A9A]",children:m("tasks.noTasksToDisplay")}):(0,d.jsxs)("div",{className:"flex-1 rounded-xl border border-[#E5E0D8] bg-[#FAFAF8] relative",children:[y&&(0,d.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-10 rounded-lg bg-red-50 border border-red-200 px-4 py-2 text-xs text-red-700 shadow-sm",children:[y,(0,d.jsx)(k.$,{variant:"ghost",size:"icon",className:"ml-2 h-5 w-5 font-medium hover:text-red-900",onClick:()=>z(null),children:(0,d.jsx)(j.A,{className:"h-3 w-3"})})]}),(0,d.jsxs)(f.Gc,{nodes:q,edges:t,onNodesChange:s,onEdgesChange:v,onConnect:C,onNodeClick:D,nodeTypes:l.c_,fitView:!0,fitViewOptions:{padding:.2},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},children:[(0,d.jsx)(f.VS,{color:"#E5E0D8",gap:20}),(0,d.jsx)(f.H2,{className:"[&>button]:border-[#E5E0D8] [&>button]:bg-white [&>button]:text-[#2C2C2C] [&>button:hover]:bg-[#FAF8F4]"})]})]})}},82858:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(91533).A)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]])},90436:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{TaskViewToggle:()=>x});var e=c(10837),f=c(21968),g=c(1007),h=c(9222),i=c(32552),j=c(45519),k=c(33407),l=c(92900),m=c(42424),n=c(49599),o=c(35198),p=c(96013),q=c(98625),r=c(95979),s=c(5514),t=c(79134),u=c(86104),v=c(31009),w=a([s,u]);[s,u]=w.then?(await w)():w;let y={open:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E3F2FD] text-[#1976D2]",in_progress:"bg-[#E8F5E9] text-[#5A9E6F]",to_verify:"bg-[#F3E5F5] text-[#7B1FA2]",done:"bg-[#E0F2F1] text-[#00796B]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"},z={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},A=[{id:"all",labelKey:"allStatuses",statuses:[]},{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}],B={high:"bg-red-100 text-red-700",medium:"bg-yellow-100 text-yellow-700",low:"bg-blue-100 text-blue-700"};function x({projectUuid:a,initialTasks:b,currentUserUuid:c,initialSelectedTaskUuid:d}){let w=(0,h.c)(),x=(0,p.a)(),C=(0,g.useSearchParams)(),[D,E]=(0,f.useState)("kanban"),F=`/projects/${a}/tasks`,{selectedId:G,openPanel:H,closePanel:I}=(0,q.T)(F,d),J=(0,f.useMemo)(()=>{let a=C.get("proposalUuids");if(!a)return null;let b=a.split(",").filter(Boolean);return b.length>0?new Set(b):null},[C]),[K,L]=(0,f.useState)(!1),[M,N]=(0,f.useState)(0),[O,P]=(0,f.useState)("all"),Q=(0,f.useMemo)(()=>G?b.find(a=>a.uuid===G)??null:null,[G,b]),R=(0,f.useCallback)(()=>{N(a=>a+1)},[]),S=(0,f.useMemo)(()=>J?b.filter(a=>a.proposalUuid&&J.has(a.proposalUuid)):b,[b,J]),T=(0,f.useMemo)(()=>{let a=A.find(a=>a.id===O);return a&&0!==a.statuses.length?S.filter(b=>a.statuses.includes(b.status)):S},[S,O]);return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("div",{className:"mb-4 overflow-x-auto",children:(0,e.jsx)(r.T,{projectUuid:a})}),(0,e.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,e.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-[#F5F2EC] p-1 w-fit",children:[x&&(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 gap-1.5 rounded-md px-3 text-xs ${"list"===D?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>E("list"),children:[(0,e.jsx)(i.A,{className:"h-3.5 w-3.5"}),w("tasks.listView")]}),!x&&(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 gap-1.5 rounded-md px-3 text-xs ${"kanban"===D?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>E("kanban"),children:[(0,e.jsx)(j.A,{className:"h-3.5 w-3.5"}),w("tasks.kanbanView")]}),(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 gap-1.5 rounded-md px-3 text-xs ${"dag"===D?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>E("dag"),children:[(0,e.jsx)(k.A,{className:"h-3.5 w-3.5"}),w("tasks.dagView")]})]}),(0,e.jsxs)(m.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:()=>{I(),L(!0)},children:[(0,e.jsx)(l.A,{className:"mr-2 h-4 w-4"}),w("tasks.newTask")]})]}),"list"===D?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("div",{className:"mb-4 flex gap-1 overflow-x-auto border-b border-[#E5E0D8] pb-2",children:A.map(a=>{let b=0===a.statuses.length?S.length:S.filter(b=>a.statuses.includes(b.status)).length;return(0,e.jsxs)(m.$,{variant:"ghost",size:"sm",className:`h-8 shrink-0 rounded-md px-3 text-xs ${O===a.id?"bg-[#F5F2EC] text-[#2C2C2C] font-medium":"text-[#6B6B6B] hover:text-[#2C2C2C]"}`,onClick:()=>P(a.id),children:["all"===a.id?w(`tasks.${a.labelKey}`):w(`status.${a.labelKey}`),(0,e.jsx)("span",{className:"ml-1.5 rounded-full bg-white px-1.5 py-0.5 text-[10px] font-medium text-[#6B6B6B]",children:b})]},a.id)})}),(0,e.jsx)("div",{className:"flex-1 space-y-2 overflow-y-auto",children:0===T.length?(0,e.jsx)(v.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:w("tasks.noTasks")}):T.map(a=>(0,e.jsxs)(o.Zp,{className:"cursor-pointer border-[#E5E0D8] bg-white p-4 transition-all hover:border-[#C67A52] hover:shadow-sm",onClick:()=>H(a.uuid),children:[(0,e.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,e.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,e.jsx)("h4",{className:"font-medium text-[#2C2C2C] truncate",children:a.title}),a.description&&(0,e.jsx)("p",{className:"mt-1 line-clamp-1 text-sm text-[#6B6B6B]",children:a.description})]}),(0,e.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[null!=a.storyPoints&&a.storyPoints>0&&(0,e.jsxs)("span",{className:"rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:[a.storyPoints,"h"]}),(0,e.jsx)(n.E,{className:B[a.priority]||"",children:w(`priority.${a.priority}`)}),(0,e.jsx)(n.E,{className:y[a.status]||"",children:w(`status.${z[a.status]||a.status}`)})]})]}),a.assignee&&(0,e.jsx)("div",{className:"mt-2 flex items-center gap-1.5 text-xs text-[#9A9A9A]",children:(0,e.jsx)("span",{className:"truncate",children:a.assignee.name})})]},a.uuid))}),Q&&(0,e.jsx)(u.v,{task:Q,projectUuid:a,currentUserUuid:c,onClose:I,onDependencyChange:R})]}):"kanban"===D?(0,e.jsx)(s.y,{projectUuid:a,initialTasks:S,currentUserUuid:c,selectedTaskUuid:G,onTaskSelect:H,onPanelClose:I,proposalUuidFilter:J}):(0,e.jsxs)("div",{className:"flex flex-1 flex-col",children:[(0,e.jsx)(t.i,{projectUuid:a,onTaskSelect:a=>H(a),refreshKey:M}),Q&&(0,e.jsx)(u.v,{task:Q,projectUuid:a,currentUserUuid:c,onClose:I,onDependencyChange:R})]}),K&&!Q&&(0,e.jsx)(u.v,{task:null,projectUuid:a,currentUserUuid:c,onClose:()=>L(!1),onCreated:()=>L(!1)})]})}d()}catch(a){d(a)}})},91533:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(73426);let e=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),f=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var g={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let h=(0,d.forwardRef)(({color:a="currentColor",size:b=24,strokeWidth:c=2,absoluteStrokeWidth:f,className:h="",children:i,iconNode:j,...k},l)=>(0,d.createElement)("svg",{ref:l,...g,width:b,height:b,stroke:a,strokeWidth:f?24*Number(c)/Number(b):c,className:e("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,b])=>(0,d.createElement)(a,b)),...Array.isArray(i)?i:[i]])),i=(a,b)=>{let c=(0,d.forwardRef)(({className:c,...g},i)=>(0,d.createElement)(h,{ref:i,iconNode:b,className:e(`lucide-${f(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,c),...g}));return c.displayName=f(a),c}},95979:(a,b,c)=>{"use strict";c.d(b,{T:()=>q});var d=c(10837),e=c(21968),f=c(1007),g=c(9222),h=c(65956);let i=(0,c(56556).A)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);var j=c(9810),k=c(10694),l=c(96307),m=c(42424),n=c(49599),o=c(74113),p=c(10297);function q({projectUuid:a}){let b=(0,g.c)("tasks"),c=(0,f.useRouter)(),q=(0,f.usePathname)(),r=(0,f.useSearchParams)(),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)([]),[w,x]=(0,e.useState)(new Set),y=(0,e.useCallback)(a=>{let b=new URLSearchParams(r.toString());a.size>0?b.set("proposalUuids",Array.from(a).join(",")):b.delete("proposalUuids");let d=b.toString();c.replace(`${q}${d?`?${d}`:""}`,{scroll:!1})},[c,q,r]),z=(0,e.useCallback)(a=>{x(b=>{let c=new Set(b);return c.has(a)?c.delete(a):c.add(a),y(c),c})},[y]),A=(0,e.useCallback)(()=>{x(new Set),y(new Set)},[y]),B=w.size>0;return(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5 text-sm text-muted-foreground shrink-0",children:[(0,d.jsx)(h.A,{className:"size-4"}),(0,d.jsxs)("span",{children:[b("proposalFilter.label"),":"]})]}),(0,d.jsxs)(o.AM,{open:s,onOpenChange:t,children:[(0,d.jsx)(o.Wv,{asChild:!0,children:(0,d.jsxs)(m.$,{variant:"outline",size:"sm",role:"combobox","aria-expanded":s,className:(0,l.cn)("justify-between gap-1 min-w-[120px] max-w-[200px] md:min-w-[160px] md:max-w-none",B&&"border-[#C67A52] bg-[#FFF8F4]"),children:[(0,d.jsx)("span",{className:"truncate",children:B?b("proposalFilter.filtered",{filtered:w.size,total:u.length}):b("proposalFilter.allProposals")}),(0,d.jsx)(i,{className:"size-4 shrink-0 opacity-50"})]})}),(0,d.jsx)(o.hl,{className:"w-[300px] p-0",align:"start",children:(0,d.jsxs)(p.uB,{children:[(0,d.jsx)(p.G7,{placeholder:b("proposalFilter.search")}),(0,d.jsxs)(p.oI,{children:[(0,d.jsx)(p.xL,{children:b("proposalFilter.noResults")}),(0,d.jsx)(p.L$,{children:u.map(a=>{let c=w.has(a.uuid);return(0,d.jsxs)(p.h_,{value:a.title,onSelect:()=>z(a.uuid),className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)("div",{className:(0,l.cn)("flex size-4 shrink-0 items-center justify-center rounded-sm border",c?"border-[#C67A52] bg-[#C67A52] text-white":"border-muted-foreground/30"),children:c&&(0,d.jsx)(j.A,{className:"size-3"})}),(0,d.jsx)("span",{className:"truncate",children:a.title})]}),(0,d.jsx)(n.E,{variant:"secondary",className:"ml-2 shrink-0",children:b("proposalFilter.taskCount",{count:a.taskCount})})]},a.uuid)})})]})]})})]}),B&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"flex flex-wrap gap-1 max-w-full",children:u.filter(a=>w.has(a.uuid)).map(a=>(0,d.jsxs)(n.E,{variant:"outline",className:"gap-1 border-[#C67A52] bg-[#FFF8F4] text-[#C67A52]",children:[a.title,(0,d.jsx)("button",{type:"button",className:"ml-0.5 rounded-full hover:bg-[#C67A52]/20",onClick:()=>z(a.uuid),children:(0,d.jsx)(k.A,{className:"size-3"})})]},a.uuid))}),(0,d.jsx)(m.$,{variant:"ghost",size:"xs",onClick:A,className:"text-muted-foreground",children:b("proposalFilter.clear")})]})]})}},96013:(a,b,c)=>{"use strict";c.d(b,{a:()=>e});var d=c(21968);function e(){let[a,b]=(0,d.useState)(!1);return a}}};
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[10739],{2774:(e,t,s)=>{"use strict";s.d(t,{TaskViewToggle:()=>el});var a=s(90508),r=s(1856),n=s(23675),i=s(39268),o=s(83064),l=s(18789),d=s(76111),c=s(5616),u=s(22922),p=s(57731),x=s(48416),m=s(62205),g=s(81531),f=s(56770),h=s(66206);let v=(0,h.A)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);var b=s(60532),j=s(9160),y=s(24377),w=s(17001),C=s(4365);function N(e){let{projectUuid:t}=e,s=(0,i.c)("tasks"),o=(0,n.useRouter)(),l=(0,n.usePathname)(),d=(0,n.useSearchParams)(),[c,x]=(0,r.useState)(!1),[m,g]=(0,r.useState)([]),[h,N]=(0,r.useState)(new Set);(0,r.useEffect)(()=>{let e=d.get("proposalUuids");e?N(new Set(e.split(",").filter(Boolean))):N(new Set)},[d]),(0,r.useEffect)(()=>{let e=!1;return async function(){try{let s=await fetch("/api/projects/".concat(t,"/proposals/summary"));if(!s.ok)return;let a=await s.json();!e&&a.success&&g(a.data)}catch(e){}}(),()=>{e=!0}},[t]);let k=(0,r.useCallback)(e=>{let t=new URLSearchParams(d.toString());e.size>0?t.set("proposalUuids",Array.from(e).join(",")):t.delete("proposalUuids");let s=t.toString();o.replace("".concat(l).concat(s?"?".concat(s):""),{scroll:!1})},[o,l,d]),A=(0,r.useCallback)(e=>{N(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),k(s),s})},[k]),F=(0,r.useCallback)(()=>{N(new Set),k(new Set)},[k]),E=h.size>0;return(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-sm text-muted-foreground shrink-0",children:[(0,a.jsx)(f.A,{className:"size-4"}),(0,a.jsxs)("span",{children:[s("proposalFilter.label"),":"]})]}),(0,a.jsxs)(w.AM,{open:c,onOpenChange:x,children:[(0,a.jsx)(w.Wv,{asChild:!0,children:(0,a.jsxs)(u.$,{variant:"outline",size:"sm",role:"combobox","aria-expanded":c,className:(0,y.cn)("justify-between gap-1 min-w-[120px] max-w-[200px] md:min-w-[160px] md:max-w-none",E&&"border-[#C67A52] bg-[#FFF8F4]"),children:[(0,a.jsx)("span",{className:"truncate",children:E?s("proposalFilter.filtered",{filtered:h.size,total:m.length}):s("proposalFilter.allProposals")}),(0,a.jsx)(v,{className:"size-4 shrink-0 opacity-50"})]})}),(0,a.jsx)(w.hl,{className:"w-[300px] p-0",align:"start",children:(0,a.jsxs)(C.uB,{children:[(0,a.jsx)(C.G7,{placeholder:s("proposalFilter.search")}),(0,a.jsxs)(C.oI,{children:[(0,a.jsx)(C.xL,{children:s("proposalFilter.noResults")}),(0,a.jsx)(C.L$,{children:m.map(e=>{let t=h.has(e.uuid);return(0,a.jsxs)(C.h_,{value:e.title,onSelect:()=>A(e.uuid),className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,a.jsx)("div",{className:(0,y.cn)("flex size-4 shrink-0 items-center justify-center rounded-sm border",t?"border-[#C67A52] bg-[#C67A52] text-white":"border-muted-foreground/30"),children:t&&(0,a.jsx)(b.A,{className:"size-3"})}),(0,a.jsx)("span",{className:"truncate",children:e.title})]}),(0,a.jsx)(p.E,{variant:"secondary",className:"ml-2 shrink-0",children:s("proposalFilter.taskCount",{count:e.taskCount})})]},e.uuid)})})]})]})})]}),E&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"flex flex-wrap gap-1 max-w-full",children:m.filter(e=>h.has(e.uuid)).map(e=>(0,a.jsxs)(p.E,{variant:"outline",className:"gap-1 border-[#C67A52] bg-[#FFF8F4] text-[#C67A52]",children:[e.title,(0,a.jsx)("button",{type:"button",className:"ml-0.5 rounded-full hover:bg-[#C67A52]/20",onClick:()=>A(e.uuid),children:(0,a.jsx)(j.A,{className:"size-3"})})]},e.uuid))}),(0,a.jsx)(u.$,{variant:"ghost",size:"xs",onClick:F,className:"text-muted-foreground",children:s("proposalFilter.clear")})]})]})}var k=s(1976),A=s(96213);let F=(0,h.A)("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);var E=s(17475);let B=(0,h.A)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);var z=s(43827);let P=(0,r.createContext)(null);var S=s(95725),_=s(66506);let D=e=>!e.isLayoutDirty&&e.willUpdate(!1),R=e=>{let{children:t,id:s,inherit:n=!0}=e,i=(0,r.useContext)(z.L),o=(0,r.useContext)(P),[l,d]=function(){let e=function(){let e=(0,r.useRef)(!1);return(0,_.E)(()=>(e.current=!0,()=>{e.current=!1}),[]),e}(),[t,s]=(0,r.useState)(0),a=(0,r.useCallback)(()=>{e.current&&s(t+1)},[t]);return[(0,r.useCallback)(()=>S.Gt.postRender(a),[a]),t]}(),c=(0,r.useRef)(null),u=i.id||o;null===c.current&&((e=>!0==(!0===e)||"id"===e)(n)&&u&&(s=s?u+"-"+s:u),c.current={id:s,group:!0===n&&i.group||function(){let e=new Set,t=new WeakMap,s=()=>e.forEach(D);return{add:a=>{e.add(a),t.set(a,a.addEventListener("willUpdate",s))},remove:a=>{e.delete(a);let r=t.get(a);r&&(r(),t.delete(a)),s()},dirty:s}}()});let p=(0,r.useMemo)(()=>({...c.current,forceRender:l}),[d]);return(0,a.jsx)(z.L.Provider,{value:p,children:t})};var U=s(16544),O=s(65626),T=s(97438),L=s(52217);let M=(0,L.createServerReference)("40a50a4ce8ce883e434897e548cbdd26cece6b4ceb",L.callServer,void 0,L.findSourceMapURL,"fetchTasksAction"),I=(0,L.createServerReference)("70152b61cb748897846229118842ce0c46b96a1abd",L.callServer,void 0,L.findSourceMapURL,"moveTaskToColumnAction"),K=(0,L.createServerReference)("60d44249373e6041564928a949b8c57ede4676f603",L.callServer,void 0,L.findSourceMapURL,"forceMoveTaskToColumnAction");var V=s(67712),$=s(78278),q=s(18543),G=s(63964);let W={open:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E3F2FD] text-[#1976D2]",in_progress:"bg-[#E8F5E9] text-[#5A9E6F]",to_verify:"bg-[#F3E5F5] text-[#7B1FA2]",done:"bg-[#E0F2F1] text-[#00796B]",closed:"bg-[#F5F5F5] text-[#9A9A9A]"},Z={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},H={in_progress:"bg-[#FFF3E0] text-[#E65100]",assigned:"bg-[#E8F5E9] text-[#2E7D32]",open:"bg-[#F5F5F5] text-[#6B6B6B]",to_verify:"bg-[#E3F2FD] text-[#1565C0]"},Y=[{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}];function J(e){let{projectUuid:t,initialTasks:s,currentUserUuid:n,selectedTaskUuid:o,onTaskSelect:l,onPanelClose:d,proposalUuidFilter:c}=e,m=(0,i.c)(),[g,f]=(0,r.useState)(s),[h,v]=(0,r.useState)({}),[b,j]=(0,r.useState)(!1),[y,w]=(0,r.useState)(null),[C,N]=(0,r.useState)([]),[z,P]=(0,r.useState)(!1),[S,_]=(0,r.useState)([]),[D,L]=(0,r.useState)(!1),[J,Q]=(0,r.useState)(!1),X=(0,r.useCallback)(async()=>{let e=await M(t);if(e.success){let t=c?e.data.filter(e=>e.proposalUuid&&c.has(e.proposalUuid)):e.data;f(t);let s=await (0,q.h)(t.map(e=>e.uuid));s.success&&s.data&&v(s.data)}},[t,c]);(0,G.eV)("task",X);let ee=(0,r.useRef)(c);(0,r.useEffect)(()=>{ee.current!==c&&(ee.current=c,X())},[c,X]),(0,r.useEffect)(()=>{0!==s.length&&(0,q.h)(s.map(e=>e.uuid)).then(e=>{e.success&&e.data&&v(e.data)})},[s]);let et=(0,r.useMemo)(()=>{var e;return o&&null!=(e=g.find(e=>e.uuid===o))?e:null},[o,g]),es=e=>g.filter(t=>e.includes(t.status)),ea=e=>es(e).reduce((e,t)=>e+(t.storyPoints||0),0),er=async e=>{let s;Q(!1);let{destination:a,source:r,draggableId:n}=e;if(!a||a.droppableId===r.droppableId&&a.index===r.index)return;let i=a.droppableId;r.droppableId;let o=g.find(e=>e.uuid===n);if(!o)return;if(Y.find(e=>e.id===i),"todo"===i)s="assigned"===o.status?"assigned":"open";else if("in_progress"===i)s="in_progress";else if("to_verify"===i)s="to_verify";else{if("done"!==i)return;s="to_verify"===o.status?"done":"to_verify"}f(e=>e.map(e=>e.uuid===n?{...e,status:s}:e));let l=await I(n,i,t);if(l.success)X();else{if("blocked"in l&&l.blocked&&"blockers"in l){f(e=>e.map(e=>e.uuid===n?{...e,status:o.status}:e)),w(o),N(l.blockers),j(!0);return}f(e=>e.map(e=>e.uuid===n?{...e,status:o.status}:e)),"gateBlocked"in l&&l.gateBlocked&&(_("unresolvedCriteria"in l&&Array.isArray(l.unresolvedCriteria)?l.unresolvedCriteria:[]),P(!0))}},en=async()=>{if(y){L(!0);try{let e=await K(y.uuid,"in_progress");e.success?(j(!1),w(null),N([]),X()):V.q.error("Failed to force move task:",e.error)}finally{L(!1)}}},ei=()=>{j(!1),w(null),N([])};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(k.JY,{onDragStart:()=>{Q(!0)},onDragEnd:er,children:(0,a.jsx)(R,{children:(0,a.jsx)("div",{className:"flex flex-1 gap-4 overflow-x-auto pb-4",children:Y.map(e=>{let t=es(e.statuses);return(0,a.jsxs)("div",{className:"flex w-[300px] flex-shrink-0 flex-col rounded-xl bg-[#F5F2EC] p-4",children:[(0,a.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("h3",{className:"font-medium text-[#2C2C2C]",children:m("status.".concat(e.labelKey))}),(0,a.jsx)("span",{className:"rounded-full bg-white px-2 py-0.5 text-xs font-medium text-[#6B6B6B]",children:t.length})]}),ea(e.statuses)>0&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#9A9A9A]",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,a.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,a.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),ea(e.statuses),"h"]})]}),(0,a.jsx)(k.gL,{droppableId:e.id,children:(e,s)=>(0,a.jsxs)("div",{ref:e.innerRef,...e.droppableProps,className:"flex-1 space-y-3 overflow-y-auto min-h-[100px] rounded-lg pt-3 pr-3 transition-colors ".concat(s.isDraggingOver?"bg-[#E5E0D8]":""),children:[0!==t.length||s.isDraggingOver?t.map((e,t)=>{let s=!!e.dependsOn&&0!==e.dependsOn.length&&e.dependsOn.some(e=>"done"!==e.status&&"closed"!==e.status),r=(s?!e.dependsOn?[]:e.dependsOn.filter(e=>"done"!==e.status&&"closed"!==e.status):[]).map(e=>e.title).join(", ");return(0,a.jsx)(k.sx,{draggableId:e.uuid,index:t,children:(t,n)=>(0,a.jsx)("div",{ref:t.innerRef,...t.draggableProps,...t.dragHandleProps,onClick:()=>{n.isDragging||l(e.uuid)},style:t.draggableProps.style,children:(0,a.jsxs)(U.P.div,{className:"relative",layoutId:J?void 0:"task-card-".concat(e.uuid),transition:O.Yv.spring,children:[h[e.uuid]>0&&(0,a.jsx)("div",{className:"absolute -top-3 -right-3 z-10 flex h-11 w-11 items-center justify-center rounded-full border-2 border-green-400 bg-white shadow-sm",children:(0,a.jsx)("img",{src:"/typing-animation.gif",alt:"",className:"h-8 w-8"})}),(0,a.jsx)(A.D,{entityType:"task",entityUuid:e.uuid,children:(0,a.jsxs)(x.Zp,{className:"cursor-pointer p-4 transition-all ".concat(s?"border-dashed border-[#D1D1D1] opacity-60":"border-[#E5E0D8] hover:border-[#C67A52]"," bg-white hover:shadow-sm ").concat(n.isDragging?"shadow-lg rotate-2":""),children:[(0,a.jsxs)("div",{className:"mb-2 flex items-start justify-between",children:[(0,a.jsx)(p.E,{className:W[e.status]||"",children:m("status.".concat(Z[e.status]||e.status))}),(0,a.jsx)("div",{className:"flex items-center gap-1.5",children:e.storyPoints&&(0,a.jsxs)("span",{className:"flex items-center gap-1 rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,a.jsx)("circle",{cx:"12",cy:"12",r:"10"}),(0,a.jsx)("polyline",{points:"12 6 12 12 16 14"})]}),e.storyPoints,"h"]})})]}),(0,a.jsx)("h4",{className:"mb-1 font-medium text-[#2C2C2C]",children:e.title}),e.description&&(0,a.jsx)("p",{className:"mb-2 line-clamp-2 text-sm text-[#6B6B6B]",children:e.description}),s&&(0,a.jsxs)("div",{className:"mb-2 flex items-center gap-1.5 rounded-md bg-[#FFF3E0] px-2 py-1",children:[(0,a.jsx)(F,{className:"h-3 w-3 shrink-0 text-[#E65100]"}),(0,a.jsx)("span",{className:"text-[9px] font-medium leading-tight text-[#E65100] line-clamp-1",children:m("tasks.blockedBy",{tasks:r})})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between text-xs text-[#9A9A9A]",children:[e.assignee?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3",children:[(0,a.jsx)("path",{d:"M12 8V4H8"}),(0,a.jsx)("rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"})]}),e.assignee.name]}):"open"===e.status?(0,a.jsx)("span",{className:"text-[#C67A52]",children:m("common.assign")}):(0,a.jsx)("span",{children:m("common.unassigned")}),(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[h[e.uuid]>0&&(0,a.jsxs)(p.E,{variant:"outline",className:"h-4 gap-1 border-green-300 px-1.5 text-[10px] text-green-700",children:[(0,a.jsx)("span",{className:"inline-block h-1.5 w-1.5 rounded-full bg-green-500"}),m("sessions.workerCount",{count:h[e.uuid]})]}),e.acceptanceSummary&&e.acceptanceSummary.total>0&&(()=>{let t=e.acceptanceSummary,s="to_verify"===e.status,r=t.requiredPassed===t.required&&t.required>0,n=t.requiredFailed>0,i="bg-[#F5F2EC] text-[#9A9A9A]";return s&&(i=r?"bg-green-50 text-green-700":n?"bg-red-50 text-[#C4574C]":"bg-amber-50 text-[#D97706]"),(0,a.jsxs)(p.E,{className:"h-4 gap-1 border-0 px-1.5 text-[9px] ".concat(i),children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-2.5 w-2.5",children:[(0,a.jsx)("path",{d:"M9 11l3 3L22 4"}),(0,a.jsx)("path",{d:"M21 12v7a2 2 0 01-2 2H5a2 2 0 01-2-2V5a2 2 0 012-2h11"})]}),t.passed,"/",t.total]})})()]})]})]})})]})})},e.uuid)}):(0,a.jsx)("div",{className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:m("tasks.noTasks")}),e.placeholder]})})]},e.id)})})})}),et&&(0,a.jsx)($.v,{task:et,projectUuid:t,currentUserUuid:n,onClose:d}),(0,a.jsx)(T.lG,{open:b,onOpenChange:e=>{e||ei()},children:(0,a.jsxs)(T.Cf,{className:"max-w-md rounded-2xl",children:[(0,a.jsxs)(T.c7,{children:[(0,a.jsxs)(T.L3,{className:"flex items-center gap-2",children:[(0,a.jsx)(E.A,{className:"h-5 w-5 text-[#E65100]"}),m("tasks.dependencyBlocked")]}),(0,a.jsx)(T.rr,{children:m("tasks.dependencyBlockedDescription")})]}),(0,a.jsxs)("div",{className:"rounded-lg bg-[#FAF8F4] p-3",children:[(0,a.jsx)("p",{className:"mb-2 text-xs font-medium text-[#6B6B6B]",children:m("tasks.blockerList")}),(0,a.jsx)("div",{className:"space-y-2",children:C.map(e=>(0,a.jsxs)("div",{className:"flex items-center justify-between rounded-lg border border-[#E5E0D8] bg-white p-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"truncate text-sm font-medium text-[#2C2C2C]",children:e.title}),(0,a.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[e.assignee&&(0,a.jsx)("span",{className:"text-xs text-[#6B6B6B]",children:e.assignee.name}),e.sessionCheckin&&(0,a.jsxs)("span",{className:"flex items-center gap-1 text-xs text-[#6B6B6B]",children:[(0,a.jsx)(B,{className:"h-3 w-3"}),e.sessionCheckin.sessionName]})]})]}),(0,a.jsx)(p.E,{className:"shrink-0 ".concat(H[e.status]||"bg-[#F5F5F5] text-[#6B6B6B]"),children:m("status.".concat(Z[e.status]||e.status))})]},e.uuid))})]}),(0,a.jsxs)(T.Es,{className:"gap-2 sm:gap-0",children:[(0,a.jsx)(u.$,{variant:"outline",onClick:ei,children:m("common.cancel")}),(0,a.jsx)(u.$,{className:"bg-[#E65100] hover:bg-[#BF4400] text-white",onClick:en,disabled:D,children:D?m("common.processing"):m("tasks.forceMove")})]})]})}),(0,a.jsx)(T.lG,{open:z,onOpenChange:P,children:(0,a.jsxs)(T.Cf,{className:"max-w-[520px] rounded-2xl p-0 gap-0",children:[(0,a.jsxs)(T.c7,{className:"px-6 pt-6 pb-4",children:[(0,a.jsxs)(T.L3,{className:"flex items-center gap-2.5",children:[(0,a.jsx)(E.A,{className:"h-5 w-5 text-[#C4574C]"}),m("acceptanceCriteria.title")]}),(0,a.jsx)(T.rr,{className:"text-[13px] leading-relaxed text-[#6B6B6B]",children:m("acceptanceCriteria.gateBlocked",{count:S.filter(e=>e.required&&"passed"!==e.status).length})})]}),(0,a.jsxs)("div",{className:"px-6 pb-4 space-y-3",children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold text-[#9A9A9A] uppercase tracking-wide",children:m("acceptanceCriteria.title")}),S.map(e=>(0,a.jsxs)("div",{className:"rounded-lg border p-3 space-y-2 ".concat("failed"===e.status?"border-red-200 bg-white":"border-[#E5E0D8] bg-white"),children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("div",{className:"h-2 w-2 rounded-full shrink-0 ".concat("failed"===e.status?"bg-[#C4574C]":"bg-[#F59E0B]")}),(0,a.jsx)("span",{className:"text-xs font-semibold text-[#2C2C2C]",children:e.description})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2 pl-4",children:[(0,a.jsx)(p.E,{className:"text-[10px] border-0 ".concat("failed"===e.status?"bg-red-50 text-[#C4574C]":"bg-amber-50 text-[#D97706]"),children:m("acceptanceCriteria.status.".concat(e.status))}),(0,a.jsx)(p.E,{className:"text-[10px] border-0 bg-[#FAF8F4] text-[#9A9A9A]",children:e.required?m("acceptanceCriteria.required"):m("acceptanceCriteria.optional")}),!e.evidence&&(0,a.jsx)("span",{className:"text-[10px] italic text-[#9A9A9A]",children:m("acceptanceCriteria.noEvidence")})]}),e.evidence&&(0,a.jsxs)("div",{className:"rounded-md bg-red-50 p-2 ml-4",children:[(0,a.jsx)("span",{className:"text-[10px] font-medium text-[#9A9A9A]",children:m("acceptanceCriteria.verifyEvidence")}),(0,a.jsx)("p",{className:"text-[11px] text-[#2C2C2C] mt-0.5",children:e.evidence})]})]},e.uuid))]}),(0,a.jsx)(T.Es,{className:"border-t border-[#E5E2DC] px-6 py-4",children:(0,a.jsx)(u.$,{className:"rounded-lg bg-[#C4574C] hover:bg-[#A3433A] text-white",onClick:()=>P(!1),children:m("acceptanceCriteria.dismiss")})})]})})]})}var Q=s(26145);s(33805);var X=s(85226),ee=s(92745);let et=(0,L.createServerReference)("40ff585eecb554f3532597c3783fdee416ae8754c0",L.callServer,void 0,L.findSourceMapURL,"getProjectDependenciesAction");var es=s(32872);function ea(e){let{projectUuid:t,onTaskSelect:s,refreshKey:o}=e,l=(0,i.c)(),d=(0,n.useSearchParams)(),[c,p,x]=(0,Q.ck)([]),[m,g,f]=(0,Q.fM)([]),[h,v]=(0,r.useState)(!0),[b,y]=(0,r.useState)(null),w=(0,r.useMemo)(()=>{let e=d.get("proposalUuids");if(!e)return null;let t=e.split(",").filter(Boolean);return t.length>0?new Set(t):null},[d]),C=(0,r.useCallback)(async()=>{v(!0);let e=await et(t),s=e.nodes,a=e.edges;if(w){let t=new Set((s=e.nodes.filter(e=>null!==e.proposalUuid&&w.has(e.proposalUuid))).map(e=>e.uuid));a=e.edges.filter(e=>t.has(e.from)&&t.has(e.to))}let r=s.map(e=>({id:e.uuid,type:"taskNode",position:{x:0,y:0},data:{title:e.title,status:e.status,priority:e.priority,proposalUuid:e.proposalUuid}})),n=a.map((e,t)=>({id:"e-".concat(t),source:e.to,target:e.from,...ee.qK})),{nodes:i,edges:o}=(0,ee.nF)(r,n);p(i),g(o),v(!1)},[t,w,p,g]);(0,r.useEffect)(()=>{C()},[C,o]);let N=(0,r.useCallback)(async e=>{if(!e.source||!e.target)return;y(null);let t=e.target,s=e.source,a=await (0,es.w)(t,s);if(!a.success)return void y(a.error||l("tasks.failedToAddDep"));await C()},[C]),k=(0,r.useCallback)((e,t)=>{s(t.id)},[s]);return h?(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,a.jsx)(X.A,{className:"h-6 w-6 animate-spin text-[#9A9A9A]"})}):0===c.length?(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-[#9A9A9A]",children:l("tasks.noTasksToDisplay")}):(0,a.jsxs)("div",{className:"flex-1 rounded-xl border border-[#E5E0D8] bg-[#FAFAF8] relative",children:[b&&(0,a.jsxs)("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-10 rounded-lg bg-red-50 border border-red-200 px-4 py-2 text-xs text-red-700 shadow-sm",children:[b,(0,a.jsx)(u.$,{variant:"ghost",size:"icon",className:"ml-2 h-5 w-5 font-medium hover:text-red-900",onClick:()=>y(null),children:(0,a.jsx)(j.A,{className:"h-3 w-3"})})]}),(0,a.jsxs)(Q.Gc,{nodes:c,edges:m,onNodesChange:x,onEdgesChange:f,onConnect:N,onNodeClick:k,nodeTypes:ee.c_,fitView:!0,fitViewOptions:{padding:.2},minZoom:.3,maxZoom:1.5,proOptions:{hideAttribution:!0},children:[(0,a.jsx)(Q.VS,{color:"#E5E0D8",gap:20}),(0,a.jsx)(Q.H2,{className:"[&>button]:border-[#E5E0D8] [&>button]:bg-white [&>button]:text-[#2C2C2C] [&>button:hover]:bg-[#FAF8F4]"})]})]})}let er={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]"},en={open:"open",assigned:"assigned",in_progress:"inProgress",to_verify:"toVerify",done:"done",closed:"closed"},ei=[{id:"all",labelKey:"allStatuses",statuses:[]},{id:"todo",labelKey:"todo",statuses:["open","assigned"]},{id:"in_progress",labelKey:"inProgress",statuses:["in_progress"]},{id:"to_verify",labelKey:"toVerify",statuses:["to_verify"]},{id:"done",labelKey:"done",statuses:["done","closed"]}],eo={high:"bg-red-100 text-red-700",medium:"bg-yellow-100 text-yellow-700",low:"bg-blue-100 text-blue-700"};function el(e){let{projectUuid:t,initialTasks:s,currentUserUuid:f,initialSelectedTaskUuid:h}=e,v=(0,i.c)(),b=(0,m.a)(),j=(0,n.useSearchParams)(),[y,w]=(0,r.useState)("kanban"),C="/projects/".concat(t,"/tasks"),{selectedId:k,openPanel:A,closePanel:F}=(0,g.T)(C,h),E=(0,r.useMemo)(()=>{let e=j.get("proposalUuids");if(!e)return null;let t=e.split(",").filter(Boolean);return t.length>0?new Set(t):null},[j]);(0,r.useEffect)(()=>{b&&"kanban"===y&&w("list")},[b]);let[B,z]=(0,r.useState)(!1),[P,S]=(0,r.useState)(0),[_,D]=(0,r.useState)("all"),R=(0,r.useMemo)(()=>{var e;return k&&null!=(e=s.find(e=>e.uuid===k))?e:null},[k,s]),O=(0,r.useCallback)(()=>{S(e=>e+1)},[]),T=(0,r.useMemo)(()=>E?s.filter(e=>e.proposalUuid&&E.has(e.proposalUuid)):s,[s,E]),L=(0,r.useMemo)(()=>{let e=ei.find(e=>e.id===_);return e&&0!==e.statuses.length?T.filter(t=>e.statuses.includes(t.status)):T},[T,_]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-4 overflow-x-auto",children:(0,a.jsx)(N,{projectUuid:t})}),(0,a.jsxs)("div",{className:"mb-4 flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1 rounded-lg bg-[#F5F2EC] p-1 w-fit",children:[b&&(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 gap-1.5 rounded-md px-3 text-xs ".concat("list"===y?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"),onClick:()=>w("list"),children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"}),v("tasks.listView")]}),!b&&(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 gap-1.5 rounded-md px-3 text-xs ".concat("kanban"===y?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"),onClick:()=>w("kanban"),children:[(0,a.jsx)(l.A,{className:"h-3.5 w-3.5"}),v("tasks.kanbanView")]}),(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 gap-1.5 rounded-md px-3 text-xs ".concat("dag"===y?"bg-white text-[#2C2C2C] shadow-sm":"text-[#6B6B6B] hover:text-[#2C2C2C]"),onClick:()=>w("dag"),children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5"}),v("tasks.dagView")]})]}),(0,a.jsxs)(u.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:()=>{F(),z(!0)},children:[(0,a.jsx)(c.A,{className:"mr-2 h-4 w-4"}),v("tasks.newTask")]})]}),"list"===y?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"mb-4 flex gap-1 overflow-x-auto border-b border-[#E5E0D8] pb-2",children:ei.map(e=>{let t=0===e.statuses.length?T.length:T.filter(t=>e.statuses.includes(t.status)).length;return(0,a.jsxs)(u.$,{variant:"ghost",size:"sm",className:"h-8 shrink-0 rounded-md px-3 text-xs ".concat(_===e.id?"bg-[#F5F2EC] text-[#2C2C2C] font-medium":"text-[#6B6B6B] hover:text-[#2C2C2C]"),onClick:()=>D(e.id),children:["all"===e.id?v("tasks.".concat(e.labelKey)):v("status.".concat(e.labelKey)),(0,a.jsx)("span",{className:"ml-1.5 rounded-full bg-white px-1.5 py-0.5 text-[10px] font-medium text-[#6B6B6B]",children:t})]},e.id)})}),(0,a.jsx)("div",{className:"flex-1 space-y-2 overflow-y-auto",children:0===L.length?(0,a.jsx)(U.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},className:"flex h-24 items-center justify-center rounded-lg border-2 border-dashed border-[#E5E0D8] text-sm text-[#9A9A9A]",children:v("tasks.noTasks")}):L.map(e=>(0,a.jsxs)(x.Zp,{className:"cursor-pointer border-[#E5E0D8] bg-white p-4 transition-all hover:border-[#C67A52] hover:shadow-sm",onClick:()=>A(e.uuid),children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("h4",{className:"font-medium text-[#2C2C2C] truncate",children:e.title}),e.description&&(0,a.jsx)("p",{className:"mt-1 line-clamp-1 text-sm text-[#6B6B6B]",children:e.description})]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2",children:[null!=e.storyPoints&&e.storyPoints>0&&(0,a.jsxs)("span",{className:"rounded bg-[#FFF3E0] px-2 py-0.5 text-xs font-medium text-[#E65100]",children:[e.storyPoints,"h"]}),(0,a.jsx)(p.E,{className:eo[e.priority]||"",children:v("priority.".concat(e.priority))}),(0,a.jsx)(p.E,{className:er[e.status]||"",children:v("status.".concat(en[e.status]||e.status))})]})]}),e.assignee&&(0,a.jsx)("div",{className:"mt-2 flex items-center gap-1.5 text-xs text-[#9A9A9A]",children:(0,a.jsx)("span",{className:"truncate",children:e.assignee.name})})]},e.uuid))}),R&&(0,a.jsx)($.v,{task:R,projectUuid:t,currentUserUuid:f,onClose:F,onDependencyChange:O})]}):"kanban"===y?(0,a.jsx)(J,{projectUuid:t,initialTasks:T,currentUserUuid:f,selectedTaskUuid:k,onTaskSelect:A,onPanelClose:F,proposalUuidFilter:E}):(0,a.jsxs)("div",{className:"flex flex-1 flex-col",children:[(0,a.jsx)(ea,{projectUuid:t,onTaskSelect:e=>A(e),refreshKey:P}),R&&(0,a.jsx)($.v,{task:R,projectUuid:t,currentUserUuid:f,onClose:F,onDependencyChange:O})]}),B&&!R&&(0,a.jsx)($.v,{task:null,projectUuid:t,currentUserUuid:f,onClose:()=>z(!1),onCreated:()=>z(!1)})]})}},4365:(e,t,s)=>{"use strict";s.d(t,{G7:()=>l,L$:()=>u,h_:()=>p,oI:()=>d,uB:()=>o,xL:()=>c});var a=s(90508);s(1856);var r=s(64731),n=s(30044),i=s(24377);function o(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB,{"data-slot":"command",className:(0,i.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...s})}function l(e){let{className:t,...s}=e;return(0,a.jsxs)("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[(0,a.jsx)(n.A,{className:"size-4 shrink-0 opacity-50"}),(0,a.jsx)(r.uB.Input,{"data-slot":"command-input",className:(0,i.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...s})]})}function d(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB.List,{"data-slot":"command-list",className:(0,i.cn)("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",t),...s})}function c(e){let{...t}=e;return(0,a.jsx)(r.uB.Empty,{"data-slot":"command-empty",className:"py-6 text-center text-sm",...t})}function u(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB.Group,{"data-slot":"command-group",className:(0,i.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",t),...s})}function p(e){let{className:t,...s}=e;return(0,a.jsx)(r.uB.Item,{"data-slot":"command-item",className:(0,i.cn)("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",t),...s})}},14554:(e,t,s)=>{"use strict";s.d(t,{p:()=>n});var a=s(90508);s(1856);var r=s(24377);function n(e){let{className:t,type:s,...n}=e;return(0,a.jsx)("input",{type:s,"data-slot":"input",className:(0,r.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...n})}},15972:(e,t,s)=>{"use strict";s.d(t,{T:()=>n});var a=s(90508);s(1856);var r=s(24377);function n(e){let{className:t,...s}=e;return(0,a.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),...s})}},17001:(e,t,s)=>{"use strict";s.d(t,{AM:()=>i,Wv:()=>o,hl:()=>l});var a=s(90508);s(1856);var r=s(79919),n=s(24377);function i(e){let{...t}=e;return(0,a.jsx)(r.Root,{"data-slot":"popover",...t})}function o(e){let{...t}=e;return(0,a.jsx)(r.Trigger,{"data-slot":"popover-trigger",...t})}function l(e){let{className:t,align:s="center",sideOffset:i=4,...o}=e;return(0,a.jsx)(r.Portal,{children:(0,a.jsx)(r.Content,{"data-slot":"popover-content",align:s,sideOffset:i,className:(0,n.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",t),...o})})}},41033:(e,t,s)=>{"use strict";s.d(t,{C:()=>l,z:()=>o});var a=s(90508);s(1856);var r=s(97964),n=s(63197),i=s(24377);function o(e){let{className:t,...s}=e;return(0,a.jsx)(n.Root,{"data-slot":"radio-group",className:(0,i.cn)("grid gap-3",t),...s})}function l(e){let{className:t,...s}=e;return(0,a.jsx)(n.Item,{"data-slot":"radio-group-item",className:(0,i.cn)("border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t),...s,children:(0,a.jsx)(n.Indicator,{"data-slot":"radio-group-indicator",className:"relative flex items-center justify-center",children:(0,a.jsx)(r.A,{className:"fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2"})})})}},51817:(e,t,s)=>{"use strict";s.d(t,{$v:()=>g,EO:()=>u,Lt:()=>o,Rx:()=>f,Zr:()=>h,ck:()=>x,r7:()=>m,tv:()=>l,wd:()=>p});var a=s(90508);s(1856);var r=s(90299),n=s(24377),i=s(22922);function o(e){let{...t}=e;return(0,a.jsx)(r.Root,{"data-slot":"alert-dialog",...t})}function l(e){let{...t}=e;return(0,a.jsx)(r.Trigger,{"data-slot":"alert-dialog-trigger",...t})}function d(e){let{...t}=e;return(0,a.jsx)(r.Portal,{"data-slot":"alert-dialog-portal",...t})}function c(e){let{className:t,...s}=e;return(0,a.jsx)(r.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,n.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...s})}function u(e){let{className:t,size:s="default",...i}=e;return(0,a.jsxs)(d,{children:[(0,a.jsx)(c,{}),(0,a.jsx)(r.Content,{"data-slot":"alert-dialog-content","data-size":s,className:(0,n.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 group/alert-dialog-content fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-lg",t),...i})]})}function p(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,n.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-6 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",t),...s})}function x(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,n.cn)("flex flex-col-reverse gap-2 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",t),...s})}function m(e){let{className:t,...s}=e;return(0,a.jsx)(r.Title,{"data-slot":"alert-dialog-title",className:(0,n.cn)("text-lg font-semibold sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",t),...s})}function g(e){let{className:t,...s}=e;return(0,a.jsx)(r.Description,{"data-slot":"alert-dialog-description",className:(0,n.cn)("text-muted-foreground text-sm",t),...s})}function f(e){let{className:t,variant:s="default",size:o="default",...l}=e;return(0,a.jsx)(i.$,{variant:s,size:o,asChild:!0,children:(0,a.jsx)(r.Action,{"data-slot":"alert-dialog-action",className:(0,n.cn)(t),...l})})}function h(e){let{className:t,variant:s="outline",size:o="default",...l}=e;return(0,a.jsx)(i.$,{variant:s,size:o,asChild:!0,children:(0,a.jsx)(r.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,n.cn)(t),...l})})}},57731:(e,t,s)=>{"use strict";s.d(t,{E:()=>l});var a=s(90508);s(1856);var r=s(49499),n=s(54154),i=s(24377);let o=(0,r.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function l(e){let{className:t,variant:s="default",asChild:r=!1,...l}=e,d=r?n.bL:"span";return(0,a.jsx)(d,{"data-slot":"badge","data-variant":s,className:(0,i.cn)(o({variant:s}),t),...l})}},62205:(e,t,s)=>{"use strict";s.d(t,{a:()=>r});var a=s(1856);function r(){let[e,t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{let e=window.matchMedia("(max-width: 767px)");t(e.matches);let s=e=>t(e.matches);return e.addEventListener("change",s),()=>e.removeEventListener("change",s)},[]),e}},64993:(e,t,s)=>{"use strict";s.d(t,{F:()=>i});var a=s(90508);s(1856);var r=s(65326),n=s(24377);function i(e){let{className:t,children:s,...i}=e;return(0,a.jsxs)(r.Root,{"data-slot":"scroll-area",className:(0,n.cn)("relative",t),...i,children:[(0,a.jsx)(r.Viewport,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:s}),(0,a.jsx)(o,{}),(0,a.jsx)(r.Corner,{})]})}function o(e){let{className:t,orientation:s="vertical",...i}=e;return(0,a.jsx)(r.ScrollAreaScrollbar,{"data-slot":"scroll-area-scrollbar",orientation:s,className:(0,n.cn)("flex touch-none p-px transition-colors select-none","vertical"===s&&"h-full w-2.5 border-l border-l-transparent","horizontal"===s&&"h-2.5 flex-col border-t border-t-transparent",t),...i,children:(0,a.jsx)(r.ScrollAreaThumb,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}},65626:(e,t,s)=>{"use strict";s.d(t,{K5:()=>l,Rf:()=>o,Yv:()=>a,bK:()=>i,qG:()=>n,tE:()=>r});let a={fast:.15,normal:.2,slow:.3,easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1],stagger:.04,staggerFast:.03,spring:{type:"spring",stiffness:500,damping:30},tween:{type:"tween",duration:.2,ease:[0,0,.2,1]}},r={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,y:-4,transition:{duration:a.fast,ease:a.easeOut}}},n={initial:{opacity:0},animate:{opacity:1,transition:{duration:a.normal,ease:a.easeOut}},exit:{opacity:0,transition:{duration:a.fast,ease:a.easeOut}}};a.normal,a.easeOut,a.fast,a.easeOut;let i={initial:{},animate:{transition:{staggerChildren:a.stagger}}},o={initial:{opacity:0,y:8},animate:{opacity:1,y:0,transition:{duration:a.normal,ease:a.easeOut}}},l={initial:{opacity:0,scale:.95,y:-4},animate:{opacity:1,scale:1,y:0,transition:{duration:a.fast,ease:a.easeOut}},exit:{opacity:0,scale:.95,y:-4,transition:{duration:a.fast,ease:a.easeOut}}}},78917:(e,t,s)=>{Promise.resolve().then(s.bind(s,2774))},79919:(e,t,s)=>{"use strict";s.r(t),s.d(t,{Anchor:()=>G,Arrow:()=>J,Close:()=>Y,Content:()=>H,Popover:()=>A,PopoverAnchor:()=>E,PopoverArrow:()=>V,PopoverClose:()=>K,PopoverContent:()=>U,PopoverPortal:()=>D,PopoverTrigger:()=>z,Portal:()=>Z,Root:()=>q,Trigger:()=>W,createPopoverScope:()=>w});var a=s(1856),r=s(33328),n=s(34124),i=s(21032),o=s(63569),l=s(12139),d=s(80491),c=s(40577),u=s(67221),p=s(17533),x=s(19900),m=s(93367),g=s(54154),f=s(66249),h=s(2188),v=s(46523),b=s(90508),j="Popover",[y,w]=(0,i.A)(j,[u.Bk]),C=(0,u.Bk)(),[N,k]=y(j),A=e=>{let{__scopePopover:t,children:s,open:r,defaultOpen:n,onOpenChange:i,modal:o=!1}=e,l=C(t),d=a.useRef(null),[p,x]=a.useState(!1),[m,g]=(0,f.i)({prop:r,defaultProp:null!=n&&n,onChange:i,caller:j});return(0,b.jsx)(u.bL,{...l,children:(0,b.jsx)(N,{scope:t,contentId:(0,c.B)(),triggerRef:d,open:m,onOpenChange:g,onOpenToggle:a.useCallback(()=>g(e=>!e),[g]),hasCustomAnchor:p,onCustomAnchorAdd:a.useCallback(()=>x(!0),[]),onCustomAnchorRemove:a.useCallback(()=>x(!1),[]),modal:o,children:s})})};A.displayName=j;var F="PopoverAnchor",E=a.forwardRef((e,t)=>{let{__scopePopover:s,...r}=e,n=k(F,s),i=C(s),{onCustomAnchorAdd:o,onCustomAnchorRemove:l}=n;return a.useEffect(()=>(o(),()=>l()),[o,l]),(0,b.jsx)(u.Mz,{...i,...r,ref:t})});E.displayName=F;var B="PopoverTrigger",z=a.forwardRef((e,t)=>{let{__scopePopover:s,...a}=e,i=k(B,s),o=C(s),l=(0,n.s)(t,i.triggerRef),d=(0,b.jsx)(m.sG.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":$(i.open),...a,ref:l,onClick:(0,r.mK)(e.onClick,i.onOpenToggle)});return i.hasCustomAnchor?d:(0,b.jsx)(u.Mz,{asChild:!0,...o,children:d})});z.displayName=B;var P="PopoverPortal",[S,_]=y(P,{forceMount:void 0}),D=e=>{let{__scopePopover:t,forceMount:s,children:a,container:r}=e,n=k(P,t);return(0,b.jsx)(S,{scope:t,forceMount:s,children:(0,b.jsx)(x.C,{present:s||n.open,children:(0,b.jsx)(p.Portal,{asChild:!0,container:r,children:a})})})};D.displayName=P;var R="PopoverContent",U=a.forwardRef((e,t)=>{let s=_(R,e.__scopePopover),{forceMount:a=s.forceMount,...r}=e,n=k(R,e.__scopePopover);return(0,b.jsx)(x.C,{present:a||n.open,children:n.modal?(0,b.jsx)(T,{...r,ref:t}):(0,b.jsx)(L,{...r,ref:t})})});U.displayName=R;var O=(0,g.TL)("PopoverContent.RemoveScroll"),T=a.forwardRef((e,t)=>{let s=k(R,e.__scopePopover),i=a.useRef(null),o=(0,n.s)(t,i),l=a.useRef(!1);return a.useEffect(()=>{let e=i.current;if(e)return(0,h.Eq)(e)},[]),(0,b.jsx)(v.A,{as:O,allowPinchZoom:!0,children:(0,b.jsx)(M,{...e,ref:o,trapFocus:s.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,r.mK)(e.onCloseAutoFocus,e=>{var t;e.preventDefault(),l.current||null==(t=s.triggerRef.current)||t.focus()}),onPointerDownOutside:(0,r.mK)(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,s=0===t.button&&!0===t.ctrlKey;l.current=2===t.button||s},{checkForDefaultPrevented:!1}),onFocusOutside:(0,r.mK)(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),L=a.forwardRef((e,t)=>{let s=k(R,e.__scopePopover),r=a.useRef(!1),n=a.useRef(!1);return(0,b.jsx)(M,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{var a,i;null==(a=e.onCloseAutoFocus)||a.call(e,t),t.defaultPrevented||(r.current||null==(i=s.triggerRef.current)||i.focus(),t.preventDefault()),r.current=!1,n.current=!1},onInteractOutside:t=>{var a,i;null==(a=e.onInteractOutside)||a.call(e,t),t.defaultPrevented||(r.current=!0,"pointerdown"===t.detail.originalEvent.type&&(n.current=!0));let o=t.target;(null==(i=s.triggerRef.current)?void 0:i.contains(o))&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&n.current&&t.preventDefault()}})}),M=a.forwardRef((e,t)=>{let{__scopePopover:s,trapFocus:a,onOpenAutoFocus:r,onCloseAutoFocus:n,disableOutsidePointerEvents:i,onEscapeKeyDown:c,onPointerDownOutside:p,onFocusOutside:x,onInteractOutside:m,...g}=e,f=k(R,s),h=C(s);return(0,l.Oh)(),(0,b.jsx)(d.n,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:r,onUnmountAutoFocus:n,children:(0,b.jsx)(o.qW,{asChild:!0,disableOutsidePointerEvents:i,onInteractOutside:m,onEscapeKeyDown:c,onPointerDownOutside:p,onFocusOutside:x,onDismiss:()=>f.onOpenChange(!1),children:(0,b.jsx)(u.UC,{"data-state":$(f.open),role:"dialog",id:f.contentId,...h,...g,ref:t,style:{...g.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),I="PopoverClose",K=a.forwardRef((e,t)=>{let{__scopePopover:s,...a}=e,n=k(I,s);return(0,b.jsx)(m.sG.button,{type:"button",...a,ref:t,onClick:(0,r.mK)(e.onClick,()=>n.onOpenChange(!1))})});K.displayName=I;var V=a.forwardRef((e,t)=>{let{__scopePopover:s,...a}=e,r=C(s);return(0,b.jsx)(u.i3,{...r,...a,ref:t})});function $(e){return e?"open":"closed"}V.displayName="PopoverArrow";var q=A,G=E,W=z,Z=D,H=U,Y=K,J=V},88064:(e,t,s)=>{"use strict";s.d(t,{J:()=>i});var a=s(90508);s(1856);var r=s(58057),n=s(24377);function i(e){let{className:t,...s}=e;return(0,a.jsx)(r.Root,{"data-slot":"label",className:(0,n.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...s})}},91846:(e,t,s)=>{"use strict";s.d(t,{bq:()=>u,eb:()=>x,gC:()=>p,l6:()=>d,yv:()=>c});var a=s(90508);s(1856);var r=s(17730),n=s(60532),i=s(89967),o=s(48218),l=s(24377);function d(e){let{...t}=e;return(0,a.jsx)(o.Root,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,a.jsx)(o.Value,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:s="default",children:n,...i}=e;return(0,a.jsxs)(o.Trigger,{"data-slot":"select-trigger","data-size":s,className:(0,l.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...i,children:[n,(0,a.jsx)(o.Icon,{asChild:!0,children:(0,a.jsx)(r.A,{className:"size-4 opacity-50"})})]})}function p(e){let{className:t,children:s,position:r="item-aligned",align:n="center",...i}=e;return(0,a.jsx)(o.Portal,{children:(0,a.jsxs)(o.Content,{"data-slot":"select-content",className:(0,l.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===r&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:r,align:n,...i,children:[(0,a.jsx)(m,{}),(0,a.jsx)(o.Viewport,{className:(0,l.cn)("p-1","popper"===r&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:s}),(0,a.jsx)(g,{})]})})}function x(e){let{className:t,children:s,...r}=e;return(0,a.jsxs)(o.Item,{"data-slot":"select-item",className:(0,l.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...r,children:[(0,a.jsx)("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,a.jsx)(o.ItemIndicator,{children:(0,a.jsx)(n.A,{className:"size-4"})})}),(0,a.jsx)(o.ItemText,{children:s})]})}function m(e){let{className:t,...s}=e;return(0,a.jsx)(o.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:(0,l.cn)("flex cursor-default items-center justify-center py-1",t),...s,children:(0,a.jsx)(i.A,{className:"size-4"})})}function g(e){let{className:t,...s}=e;return(0,a.jsx)(o.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:(0,l.cn)("flex cursor-default items-center justify-center py-1",t),...s,children:(0,a.jsx)(r.A,{className:"size-4"})})}},97438:(e,t,s)=>{"use strict";s.d(t,{Cf:()=>p,Es:()=>m,L3:()=>g,c7:()=>x,lG:()=>l,rr:()=>f,zM:()=>d});var a=s(90508);s(1856);var r=s(9160),n=s(71350),i=s(24377),o=s(22922);function l(e){let{...t}=e;return(0,a.jsx)(n.Root,{"data-slot":"dialog",...t})}function d(e){let{...t}=e;return(0,a.jsx)(n.Trigger,{"data-slot":"dialog-trigger",...t})}function c(e){let{...t}=e;return(0,a.jsx)(n.Portal,{"data-slot":"dialog-portal",...t})}function u(e){let{className:t,...s}=e;return(0,a.jsx)(n.Overlay,{"data-slot":"dialog-overlay",className:(0,i.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...s})}function p(e){let{className:t,children:s,showCloseButton:o=!0,...l}=e;return(0,a.jsxs)(c,{"data-slot":"dialog-portal",children:[(0,a.jsx)(u,{}),(0,a.jsxs)(n.Content,{"data-slot":"dialog-content",className:(0,i.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none sm:max-w-lg",t),...l,children:[s,o&&(0,a.jsxs)(n.Close,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[(0,a.jsx)(r.A,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function x(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"dialog-header",className:(0,i.cn)("flex flex-col gap-2 text-center sm:text-left",t),...s})}function m(e){let{className:t,showCloseButton:s=!1,children:r,...l}=e;return(0,a.jsxs)("div",{"data-slot":"dialog-footer",className:(0,i.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...l,children:[r,s&&(0,a.jsx)(n.Close,{asChild:!0,children:(0,a.jsx)(o.$,{variant:"outline",children:"Close"})})]})}function g(e){let{className:t,...s}=e;return(0,a.jsx)(n.Title,{"data-slot":"dialog-title",className:(0,i.cn)("text-lg leading-none font-semibold",t),...s})}function f(e){let{className:t,...s}=e;return(0,a.jsx)(n.Description,{"data-slot":"dialog-description",className:(0,i.cn)("text-muted-foreground text-sm",t),...s})}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[19126],{813:(e,t,s)=>{"use strict";s.d(t,{IdeasList:()=>R});var n=s(90508),a=s(1856),r=s(12790),i=s.n(r),l=s(39268),o=s(5425),c=s(94903),d=s(43057),u=s(56770),m=s(48416),p=s(57731),h=s(73693),x=s(37021),f=s(51708),v=s(53664),b=s(63964),g=s(81531),j=s(96213),N=s(16544),P=s(65626);function w(e){let{children:t,className:s}=e;return(0,n.jsx)(N.P.div,{variants:P.bK,initial:"initial",animate:"animate",className:s,children:t})}function y(e){let{children:t,className:s}=e;return(0,n.jsx)(N.P.div,{variants:P.Rf,className:s,children:t})}var E=s(52217);let C=(0,E.createServerReference)("40160cd5e9a08aca7375aefb470815b4c1834b7e5f",E.callServer,void 0,E.findSourceMapURL,"fetchIdeasAction");var A=s(38106);let S={open:{dot:"bg-[#2563EB]",className:"bg-[#DBEAFE] text-[#1D4ED8] border-transparent"},elaborating:{dot:"bg-[#1976D2]",className:"bg-[#E3F2FD] text-[#1976D2] border-transparent"},proposal_created:{dot:"bg-[#FF9800]",className:"bg-[#FFF3E0] text-[#E65100] border-transparent"},completed:{dot:"bg-[#4CAF50]",className:"bg-[#E8F5E9] text-[#2E7D32] border-transparent"},closed:{dot:"bg-[#9A9A9A]",className:"bg-[#F5F5F5] text-[#6B6B6B] border-transparent"}},F={open:"open",elaborating:"elaborating",proposal_created:"proposal_created",completed:"completed",closed:"closed"};function R(e){let{ideas:t,projectUuid:s,currentUserUuid:r,usedIdeaUuids:N,ideaProposalMap:P,initialSelectedIdeaUuid:E}=e,R=(0,l.c)(),[D,B]=(0,a.useState)(t),[M,k]=(0,a.useState)(N),[L,U]=(0,a.useState)(P);(0,a.useEffect)(()=>{B(t)},[t]),(0,a.useEffect)(()=>{k(N)},[N]),(0,a.useEffect)(()=>{U(P)},[P]);let I=(0,a.useCallback)(async()=>{let e=await C(s);e.success&&(B(e.data.ideas),k(e.data.usedIdeaUuids),U(e.data.ideaProposalMap))},[s]);(0,b.eV)("idea",I);let T="/projects/".concat(s,"/ideas"),{selectedId:z,openPanel:_,closePanel:q}=(0,g.T)(T,E),H=new Set(M);(0,a.useEffect)(()=>{z&&!D.some(e=>e.uuid===z)&&q()},[z,D,q]);let V=(0,a.useMemo)(()=>{var e;return z&&null!=(e=D.find(e=>e.uuid===z))?e:null},[z,D]);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(w,{className:"space-y-4",children:D.map(e=>{var t,a;let r=S[e.status]||S.open,l=H.has(e.uuid);return(0,n.jsx)(y,{children:(0,n.jsx)(j.D,{entityType:"idea",entityUuid:e.uuid,children:(0,n.jsxs)(m.Zp,{className:"cursor-pointer border-[#E5E0D8] py-4 transition-all hover:border-[#C67A52]/50 hover:shadow-sm",onClick:()=>_(e.uuid),children:[(0,n.jsxs)(m.aR,{className:"gap-0 py-0",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(h.eu,{size:"sm",children:(0,n.jsx)(h.q5,{className:"bg-[#E5E0D8] text-[#6B6B6B]",children:(null==(t=e.createdBy)?void 0:t.type)==="agent"?(0,n.jsx)(o.A,{className:"h-3 w-3"}):(0,n.jsx)(c.A,{className:"h-3 w-3"})})}),(0,n.jsx)("span",{className:"text-[11px] text-[#6B6B6B]",children:(null==(a=e.createdBy)?void 0:a.name)||R("common.unknown")}),(0,n.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:"•"}),(0,n.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:function(e,t){let s=new Date(e),n=new Date().getTime()-s.getTime(),a=Math.floor(n/6e4),r=Math.floor(n/36e5),i=Math.floor(n/864e5);return a<1?t("time.justNow"):a<60?t("time.minutesAgo",{minutes:a}):r<24?t("time.hoursAgo",{hours:r}):i<7?t("time.daysAgo",{days:i}):(0,A.r)(s)}(e.createdAt,R)})]}),(0,n.jsx)(m.X9,{children:(0,n.jsxs)(p.E,{className:"gap-1.5 text-[10px] ".concat(r.className),children:[(0,n.jsx)("span",{className:"h-1.5 w-1.5 rounded-full ".concat(r.dot)}),l?R("ideas.proposalGenerated"):R("status.".concat(F[e.status]||e.status))]})})]}),(0,n.jsxs)(m.Wu,{className:"space-y-2 py-0",children:[e.assignee&&(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsxs)("span",{className:"text-[11px] text-[#9A9A9A]",children:[R("ideas.assignedTo"),":"]}),(0,n.jsxs)(p.E,{className:"gap-1.5 bg-[#F0F9FF] text-[#0284C7] border-transparent text-[10px]",children:[(0,n.jsx)(o.A,{className:"h-3 w-3"}),e.assignee.name]})]}),(0,n.jsx)("h3",{className:"text-sm font-medium text-[#2C2C2C]",children:e.title}),e.content&&(0,n.jsx)("div",{className:"prose prose-sm max-w-none line-clamp-3 text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,n.jsx)(x.jH,{plugins:{code:f.a},children:e.content})})]}),(0,n.jsxs)(m.wL,{className:"gap-4 py-0 text-[#6B6B6B]",children:[(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)(d.A,{className:"h-3.5 w-3.5"}),(0,n.jsxs)("span",{className:"text-xs",children:[e.commentCount," ",R("comments.title").toLowerCase()]})]}),l&&L[e.uuid]&&(0,n.jsxs)(i(),{href:"/projects/".concat(s,"/proposals/").concat(L[e.uuid]),onClick:e=>e.stopPropagation(),className:"flex items-center gap-1.5 text-[#C67A52] hover:text-[#B56A42] transition-colors",children:[(0,n.jsx)(u.A,{className:"h-3.5 w-3.5"}),(0,n.jsx)("span",{className:"text-xs font-medium",children:R("ideas.viewProposal")})]})]})]})})},e.uuid)})}),V&&(0,n.jsx)(v.D,{idea:V,projectUuid:s,currentUserUuid:r,isUsedInProposal:H.has(V.uuid),onClose:q,onDeleted:q})]})}},19126:(e,t,s)=>{Promise.resolve().then(s.bind(s,52053)),Promise.resolve().then(s.bind(s,90299)),Promise.resolve().then(s.bind(s,65514)),Promise.resolve().then(s.bind(s,98861)),Promise.resolve().then(s.bind(s,38476)),Promise.resolve().then(s.bind(s,74542)),Promise.resolve().then(s.bind(s,71350)),Promise.resolve().then(s.bind(s,39025)),Promise.resolve().then(s.bind(s,75368)),Promise.resolve().then(s.bind(s,89684)),Promise.resolve().then(s.bind(s,58057)),Promise.resolve().then(s.bind(s,6512)),Promise.resolve().then(s.bind(s,25051)),Promise.resolve().then(s.bind(s,4374)),Promise.resolve().then(s.bind(s,19345)),Promise.resolve().then(s.bind(s,79919)),Promise.resolve().then(s.bind(s,17533)),Promise.resolve().then(s.bind(s,99545)),Promise.resolve().then(s.bind(s,63197)),Promise.resolve().then(s.bind(s,65326)),Promise.resolve().then(s.bind(s,48218)),Promise.resolve().then(s.bind(s,56260)),Promise.resolve().then(s.bind(s,60322)),Promise.resolve().then(s.bind(s,79834)),Promise.resolve().then(s.bind(s,6947)),Promise.resolve().then(s.bind(s,88878)),Promise.resolve().then(s.bind(s,34857)),Promise.resolve().then(s.bind(s,97006)),Promise.resolve().then(s.bind(s,45841)),Promise.resolve().then(s.t.bind(s,12790,23)),Promise.resolve().then(s.bind(s,75912)),Promise.resolve().then(s.bind(s,813)),Promise.resolve().then(s.bind(s,58866))},43057:(e,t,s)=>{"use strict";s.d(t,{A:()=>n});let n=(0,s(66206).A)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]])},58866:(e,t,s)=>{"use strict";s.d(t,{AnimatedEmptyState:()=>r});var n=s(90508),a=s(16544);function r(e){let{children:t}=e;return(0,n.jsx)(a.P.div,{initial:{opacity:0,scale:.98},animate:{opacity:1,scale:1},transition:{duration:.2,ease:[0,0,.2,1]},children:t})}},67103:(e,t,s)=>{"use strict";s.d(t,{N:()=>g});var n=s(90508),a=s(1856),r=s(43827),i=s(66071),l=s(66506),o=s(95535),c=s(63605),d=s(8334);function u(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}class m extends a.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if((0,c.s)(t)&&e.isPresent&&!this.props.isPresent&&!1!==this.props.pop){let e=t.offsetParent,s=(0,c.s)(e)&&e.offsetWidth||0,n=(0,c.s)(e)&&e.offsetHeight||0,a=getComputedStyle(t),r=this.props.sizeRef.current;r.height=parseFloat(a.height),r.width=parseFloat(a.width),r.top=t.offsetTop,r.left=t.offsetLeft,r.right=s-r.width-r.left,r.bottom=n-r.height-r.top}return null}componentDidUpdate(){}render(){return this.props.children}}function p(e){var t,s;let{children:r,isPresent:i,anchorX:l,anchorY:o,root:c,pop:p}=e,h=(0,a.useId)(),x=(0,a.useRef)(null),f=(0,a.useRef)({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:v}=(0,a.useContext)(d.Q),b=function(...e){return a.useCallback(function(...e){return t=>{let s=!1,n=e.map(e=>{let n=u(e,t);return s||"function"!=typeof n||(s=!0),n});if(s)return()=>{for(let t=0;t<n.length;t++){let s=n[t];"function"==typeof s?s():u(e[t],null)}}}}(...e),e)}(x,null!=(s=null==(t=r.props)?void 0:t.ref)?s:null==r?void 0:r.ref);return(0,a.useInsertionEffect)(()=>{let{width:e,height:t,top:s,left:n,right:a,bottom:r}=f.current;if(i||!1===p||!x.current||!e||!t)return;x.current.dataset.motionPopId=h;let d=document.createElement("style");v&&(d.nonce=v);let u=null!=c?c:document.head;return u.appendChild(d),d.sheet&&d.sheet.insertRule('\n [data-motion-pop-id="'.concat(h,'"] {\n position: absolute !important;\n width: ').concat(e,"px !important;\n height: ").concat(t,"px !important;\n ").concat("left"===l?"left: ".concat(n):"right: ".concat(a),"px !important;\n ").concat("bottom"===o?"bottom: ".concat(r):"top: ".concat(s),"px !important;\n }\n ")),()=>{var e;null==(e=x.current)||e.removeAttribute("data-motion-pop-id"),u.contains(d)&&u.removeChild(d)}},[i]),(0,n.jsx)(m,{isPresent:i,childRef:x,sizeRef:f,pop:p,children:!1===p?r:a.cloneElement(r,{ref:b})})}let h=e=>{let{children:t,initial:s,isPresent:r,onExitComplete:l,custom:c,presenceAffectsLayout:d,mode:u,anchorX:m,anchorY:h,root:f}=e,v=(0,i.M)(x),b=(0,a.useId)(),g=!0,j=(0,a.useMemo)(()=>(g=!1,{id:b,initial:s,isPresent:r,custom:c,onExitComplete:e=>{for(let t of(v.set(e,!0),v.values()))if(!t)return;l&&l()},register:e=>(v.set(e,!1),()=>v.delete(e))}),[r,v,l]);return d&&g&&(j={...j}),(0,a.useMemo)(()=>{v.forEach((e,t)=>v.set(t,!1))},[r]),a.useEffect(()=>{r||v.size||!l||l()},[r]),t=(0,n.jsx)(p,{pop:"popLayout"===u,isPresent:r,anchorX:m,anchorY:h,root:f,children:t}),(0,n.jsx)(o.t.Provider,{value:j,children:t})};function x(){return new Map}var f=s(99672);let v=e=>e.key||"";function b(e){let t=[];return a.Children.forEach(e,e=>{(0,a.isValidElement)(e)&&t.push(e)}),t}let g=e=>{let{children:t,custom:s,initial:o=!0,onExitComplete:c,presenceAffectsLayout:d=!0,mode:u="sync",propagate:m=!1,anchorX:p="left",anchorY:x="top",root:g}=e,[j,N]=(0,f.xQ)(m),P=(0,a.useMemo)(()=>b(t),[t]),w=m&&!j?[]:P.map(v),y=(0,a.useRef)(!0),E=(0,a.useRef)(P),C=(0,i.M)(()=>new Map),A=(0,a.useRef)(new Set),[S,F]=(0,a.useState)(P),[R,D]=(0,a.useState)(P);(0,l.E)(()=>{y.current=!1,E.current=P;for(let e=0;e<R.length;e++){let t=v(R[e]);w.includes(t)?(C.delete(t),A.current.delete(t)):!0!==C.get(t)&&C.set(t,!1)}},[R,w.length,w.join("-")]);let B=[];if(P!==S){let e=[...P];for(let t=0;t<R.length;t++){let s=R[t],n=v(s);w.includes(n)||(e.splice(t,0,s),B.push(s))}return"wait"===u&&B.length&&(e=B),D(b(e)),F(P),null}let{forceRender:M}=(0,a.useContext)(r.L);return(0,n.jsx)(n.Fragment,{children:R.map(e=>{let t=v(e),a=(!m||!!j)&&(P===R||w.includes(t));return(0,n.jsx)(h,{isPresent:a,initial:(!y.current||!!o)&&void 0,custom:s,presenceAffectsLayout:d,mode:u,root:g,onExitComplete:a?void 0:()=>{if(A.current.has(t)||!C.has(t))return;A.current.add(t),C.set(t,!0);let e=!0;C.forEach(t=>{t||(e=!1)}),e&&(null==M||M(),D(E.current),m&&(null==N||N()),c&&c())},anchorX:p,anchorY:x,children:e},t)})})}},75912:(e,t,s)=>{"use strict";s.d(t,{IdeaCreateForm:()=>b});var n=s(90508),a=s(1856),r=s(23675),i=s(39268),l=s(22922),o=s(14554),c=s(15972),d=s(88064),u=s(48416),m=s(67103),p=s(16544),h=s(60532),x=s(85226),f=s(52217);let v=(0,f.createServerReference)("407011622364a55cf622bc6ca450f4e59d50867852",f.callServer,void 0,f.findSourceMapURL,"createIdeaAction");function b(e){let{projectUuid:t}=e,s=(0,i.c)(),f=(0,r.useRouter)(),[b,g]=(0,a.useTransition)(),[j,N]=(0,a.useState)(""),[P,w]=(0,a.useState)(""),[y,E]=(0,a.useState)(null),[C,A]=(0,a.useState)(!1),S=async e=>{if(e.preventDefault(),E(null),!j.trim())return void E(s("ideas.titleRequired"));g(async()=>{try{let e=await v({projectUuid:t,title:j.trim(),content:P.trim()||void 0});e.success?(A(!0),setTimeout(()=>{N(""),w(""),f.refresh(),A(!1)},600)):E(e.error||s("ideas.createFailed"))}catch(e){E(s("common.genericError"))}})};return(0,n.jsx)(u.Zp,{className:"border-[#E5E0D8] rounded-2xl py-5",children:(0,n.jsx)(u.Wu,{children:(0,n.jsxs)("form",{onSubmit:S,className:"space-y-4",children:[y&&(0,n.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:y}),(0,n.jsxs)("div",{className:"space-y-3",children:[(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)(d.J,{htmlFor:"idea-title",className:"text-[13px] font-medium text-[#2C2C2C]",children:s("ideas.titleLabel")}),(0,n.jsx)(o.p,{id:"idea-title",value:j,onChange:e=>N(e.target.value),placeholder:s("ideas.whatIsYourIdea"),className:"border-[#E5E0D8] text-sm",required:!0})]}),(0,n.jsxs)("div",{className:"space-y-2",children:[(0,n.jsx)(d.J,{htmlFor:"idea-content",className:"text-[13px] font-medium text-[#2C2C2C]",children:s("common.content")}),(0,n.jsx)(c.T,{id:"idea-content",value:P,onChange:e=>w(e.target.value),placeholder:s("ideas.addMoreDetails"),rows:2,className:"border-[#E5E0D8] text-sm resize-none"})]})]}),(0,n.jsx)("div",{className:"flex justify-end",children:(0,n.jsx)(l.$,{type:"submit",disabled:b||C||!j.trim(),size:"sm",className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:(0,n.jsx)(m.N,{mode:"wait",children:C?(0,n.jsx)(p.P.span,{initial:{opacity:0,scale:.5},animate:{opacity:1,scale:1},exit:{opacity:0},transition:{duration:.15},className:"flex items-center gap-2",children:(0,n.jsx)(h.A,{className:"h-3.5 w-3.5"})},"success"):b?(0,n.jsxs)(p.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"flex items-center gap-2",children:[(0,n.jsx)(x.A,{className:"h-4 w-4 animate-spin"}),s("common.creating")]},"loading"):(0,n.jsx)(p.P.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},children:s("ideas.submit")},"idle")})})})]})})})}},81531:(e,t,s)=>{"use strict";s.d(t,{T:()=>a});var n=s(1856);function a(e,t){let[s,a]=(0,n.useState)(null!=t?t:null),[r,i]=(0,n.useState)(()=>new URLSearchParams(window.location.search).get("tab")),l=(0,n.useCallback)((t,s)=>{let n=new URLSearchParams(window.location.search);t?n.set("panel",t):n.delete("panel"),s?n.set("tab",s):n.delete("tab");let a=n.toString();return a?"".concat(e,"?").concat(a):e},[e]),o=(0,n.useCallback)((e,t)=>{let s=l(e,t);window.history.replaceState(null,"",s),a(e),i(null!=t?t:null)},[l]),c=(0,n.useCallback)(()=>{let e=l(null);window.history.replaceState(null,"",e),a(null),i(null)},[l]),d=(0,n.useCallback)(e=>{if(!s)return;let t=l(s,e);window.history.replaceState(null,"",t),i(e)},[l,s]);return(0,n.useEffect)(()=>{function e(){let e=new URLSearchParams(window.location.search),t=e.get("panel");t?(a(t),i(e.get("tab"))):(a(null),i(null))}return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)},[]),{selectedId:s,selectedTab:r,openPanel:o,closePanel:c,switchTab:d}}}}]);