@chorus-aidlc/chorus 0.9.2 → 0.9.3

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 (227) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +187 -187
  3. package/.next/standalone/.next/app-path-routes-manifest.json +38 -38
  4. package/.next/standalone/.next/build-manifest.json +2 -2
  5. package/.next/standalone/.next/prerender-manifest.json +42 -42
  6. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  7. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/[ideaUuid]/page.js +1 -1
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/[ideaUuid]/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/[ideaUuid]/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/page.js +1 -1
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/ideas/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  37. package/.next/standalone/.next/server/app/_not-found.rsc +1 -1
  38. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/admin/companies/new.html +1 -1
  41. package/.next/standalone/.next/server/app/admin/companies/new.rsc +1 -1
  42. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/admin/companies.html +1 -1
  44. package/.next/standalone/.next/server/app/admin/companies.rsc +1 -1
  45. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/admin.html +1 -1
  47. package/.next/standalone/.next/server/app/admin.rsc +1 -1
  48. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  51. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  53. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  54. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  56. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  58. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  59. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  61. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  63. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  64. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  66. package/.next/standalone/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -1
  67. package/.next/standalone/.next/server/app/api/auth/session/route_client-reference-manifest.js +1 -1
  68. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  69. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  72. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  73. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  75. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  77. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  78. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js.nft.json +1 -1
  79. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  81. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  84. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js.nft.json +1 -1
  85. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  87. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  89. package/.next/standalone/.next/server/app/api/mcp/route.js +3 -3
  90. package/.next/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  91. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  93. package/.next/standalone/.next/server/app/api/me/assignments/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  97. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  101. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  107. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js.nft.json +1 -1
  108. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  109. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  111. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  112. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js.nft.json +1 -1
  113. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  115. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js +1 -1
  118. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js +1 -1
  120. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js +1 -1
  122. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  123. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  126. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  129. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js.nft.json +1 -1
  130. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  131. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js +1 -1
  133. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js +1 -1
  135. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js +1 -1
  137. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js +1 -1
  139. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js +1 -1
  141. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  143. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  144. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js.nft.json +1 -1
  145. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  147. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js.nft.json +1 -1
  148. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  149. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  150. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  153. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js.nft.json +1 -1
  154. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  155. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  156. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js.nft.json +1 -1
  157. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  159. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js.nft.json +1 -1
  160. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  161. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  162. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js.nft.json +1 -1
  163. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  164. package/.next/standalone/.next/server/app/index.html +1 -1
  165. package/.next/standalone/.next/server/app/index.rsc +1 -1
  166. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  167. package/.next/standalone/.next/server/app/login/admin.html +1 -1
  168. package/.next/standalone/.next/server/app/login/admin.rsc +1 -1
  169. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  170. package/.next/standalone/.next/server/app/login/callback.html +1 -1
  171. package/.next/standalone/.next/server/app/login/callback.rsc +1 -1
  172. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  173. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/login/pick-workspace.html +1 -1
  175. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +1 -1
  176. package/.next/standalone/.next/server/app/login/silent-refresh/page_client-reference-manifest.js +1 -1
  177. package/.next/standalone/.next/server/app/login/silent-refresh.html +1 -1
  178. package/.next/standalone/.next/server/app/login/silent-refresh.rsc +1 -1
  179. package/.next/standalone/.next/server/app/login.html +1 -1
  180. package/.next/standalone/.next/server/app/login.rsc +1 -1
  181. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  182. package/.next/standalone/.next/server/app/onboarding.html +1 -1
  183. package/.next/standalone/.next/server/app/onboarding.rsc +1 -1
  184. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  185. package/.next/standalone/.next/server/app/projects.html +1 -1
  186. package/.next/standalone/.next/server/app/projects.rsc +1 -1
  187. package/.next/standalone/.next/server/app/settings.html +1 -1
  188. package/.next/standalone/.next/server/app/settings.rsc +1 -1
  189. package/.next/standalone/.next/server/app-paths-manifest.json +38 -38
  190. package/.next/standalone/.next/server/chunks/1165.js +1 -1
  191. package/.next/standalone/.next/server/chunks/7228.js +2 -2
  192. package/.next/standalone/.next/server/chunks/7578.js +2 -2
  193. package/.next/standalone/.next/server/chunks/896.js +1 -0
  194. package/.next/standalone/.next/server/chunks/9508.js +2 -2
  195. package/.next/standalone/.next/server/middleware-manifest.json +1 -1
  196. package/.next/standalone/.next/server/pages/404.html +1 -1
  197. package/.next/standalone/.next/server/pages/500.html +1 -1
  198. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  199. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  200. package/.next/standalone/package.json +1 -1
  201. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  202. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  203. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +1 -1
  204. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +1 -1
  205. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +1 -1
  206. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  207. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +13 -4
  208. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +9 -4
  209. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  210. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +2 -2
  211. package/.next/standalone/public/install-codex.sh +200 -90
  212. package/.next/standalone/public/skill/brainstorm-chorus/SKILL.md +1 -1
  213. package/.next/standalone/public/skill/chorus/SKILL.md +55 -3
  214. package/.next/standalone/public/skill/develop-chorus/SKILL.md +2 -2
  215. package/.next/standalone/public/skill/idea-chorus/SKILL.md +1 -1
  216. package/.next/standalone/public/skill/package.json +21 -5
  217. package/.next/standalone/public/skill/proposal-chorus/SKILL.md +13 -4
  218. package/.next/standalone/public/skill/proposal-reviewer-chorus/SKILL.md +198 -0
  219. package/.next/standalone/public/skill/quick-dev-chorus/SKILL.md +9 -4
  220. package/.next/standalone/public/skill/review-chorus/SKILL.md +13 -3
  221. package/.next/standalone/public/skill/task-reviewer-chorus/SKILL.md +219 -0
  222. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +529 -0
  223. package/.next/standalone/public/test-install-codex.sh +4 -0
  224. package/package.json +1 -1
  225. package/.next/standalone/.next/server/chunks/1002.js +0 -1
  226. /package/.next/standalone/.next/static/{-kClYg0a7zvFcgkw_LnG7 → uuDSoqvm-WWenZQ6dXPT7}/_buildManifest.js +0 -0
  227. /package/.next/standalone/.next/static/{-kClYg0a7zvFcgkw_LnG7 → uuDSoqvm-WWenZQ6dXPT7}/_ssgManifest.js +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";exports.id=9508,exports.ids=[7578,9508],exports.modules={27380:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{D:()=>P});var e=c(10837),f=c(21968),g=c(1007),h=c(81512),i=c.n(h),j=c(9222),k=c(24364),l=c(87461),m=c(10694),n=c(16235),o=c(86460),p=c(9810),q=c(97443),r=c(65956),s=c(79543),t=c(49599),u=c(42424),v=c(9994),w=c(20170),x=c(2852),y=c(74645),z=c(6019),A=c(80251),B=c(56828);c(90274);var C=c(97113),D=c(94570),E=c(97450),F=c(86545),G=c(88513),H=c(75797),I=c(72274),J=c(66685),K=c(76172),L=c(31009),M=c(45148),N=c(76664),O=a([B,E]);[B,E]=O.then?(await O)():O;let Q={open:"bg-[#FFF3E0] text-[#E65100]",elaborating:"bg-[#E3F2FD] text-[#1976D2]",elaborated:"bg-[#E0F2F1] text-[#00796B]"},R={open:"open",elaborating:"elaborating",elaborated:"elaborated"};function P({idea:a,projectUuid:b,currentUserUuid:c,isUsedInProposal:d,onClose:h,onDeleted:O}){let P=(0,j.c)(),S=(0,g.useRouter)(),[T,U]=(0,f.useState)([]),[V,W]=(0,f.useState)(!0),[X,Y]=(0,f.useState)(!1),[Z,$]=(0,f.useState)(null),_=(0,f.useCallback)(async()=>{let b=await (0,I.z)(a.uuid);b.success&&b.data&&$(b.data)},[a.uuid]);(0,K.eV)("idea",_);let[aa,ab]=(0,f.useState)(!1),[ac,ad]=(0,f.useState)(""),[ae,af]=(0,f.useState)(!1),[ag,ah]=(0,f.useState)(null),[ai,aj]=(0,f.useState)(!1),[ak,al]=(0,f.useState)(a.title),[am,an]=(0,f.useState)(a.content||""),[ao,ap]=(0,f.useState)(!1),[aq,ar]=(0,f.useState)(null),[as,at]=(0,f.useState)(!1),[au,av]=(0,f.useState)(!1),[aw,ax]=(0,f.useState)(!1),ay="elaborated"!==a.status,az="resolved"===a.elaborationStatus,aA=("elaborating"===a.status||"elaborated"===a.status)&&az,aB="elaborating"===a.status&&(!a.elaborationStatus||"resolved"!==a.elaborationStatus)&&a.assignee?.uuid===c,aC="elaborated"!==a.status,aD=()=>{aj(!1),al(a.title),an(a.content||""),ar(null)},aE=async()=>{if(!ak.trim())return void ar(P("ideas.titleRequired"));ap(!0),ar(null);let c=await (0,C.J)({ideaUuid:a.uuid,projectUuid:b,title:ak.trim(),content:am.trim()||null});ap(!1),c.success?(aj(!1),S.refresh()):ar(c.error||P("ideas.updateFailed"))},aF=async()=>{at(!0);let c=await (0,D.Z)(a.uuid,b);at(!1),c.success&&(O?.(),h(),S.refresh())},aG=async()=>{if(!ac.trim())return void ah(P("elaboration.skipReasonRequired"));af(!0),ah(null);let b=await (0,J.y)(a.uuid,ac.trim());af(!1),b.success?(ab(!1),ad(""),S.refresh()):ah(b.error||P("common.genericError"))};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:h}),(0,e.jsxs)("div",{className:`fixed right-0 top-14 md:top-0 z-50 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-white shadow-xl border-l border-[#E5E0D8] ${aw?"":"animate-in slide-in-from-right duration-300"}`,children:[(0,e.jsxs)("div",{className:"flex items-center justify-between border-b border-[#F5F2EC] px-6 py-5",children:[(0,e.jsx)("div",{className:"flex-1 min-w-0",children:ai?(0,e.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:P("ideas.editIdea")}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C] truncate",children:a.title}),(0,e.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,e.jsx)(t.E,{className:Q[a.status]||"",children:P(`status.${R[a.status]||a.status}`)}),(0,e.jsx)("span",{className:"text-xs text-[#9A9A9A]",children:(0,N.r)(a.createdAt)})]})]})}),(0,e.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[!ai&&(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>av(!0),title:P("ideas.actions.move"),"aria-label":P("ideas.actions.move"),children:(0,e.jsx)(k.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),aC&&!ai&&(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>{al(a.title),an(a.content||""),ar(null),aj(!0)},children:(0,e.jsx)(l.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:ai?aD:h,children:(0,e.jsx)(m.A,{className:"h-4 w-4 text-[#6B6B6B]"})})]})]}),(0,e.jsx)(y.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,e.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:ai?(0,e.jsxs)("div",{className:"space-y-5",children:[aq&&(0,e.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:aq}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(x.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-[#2C2C2C]",children:P("ideas.titleLabel")}),(0,e.jsx)(v.p,{id:"edit-title",value:ak,onChange:a=>al(a.target.value),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0})]}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(x.J,{htmlFor:"edit-content",className:"text-[13px] font-medium text-[#2C2C2C]",children:P("common.content")}),(0,e.jsx)(w.T,{id:"edit-content",value:am,onChange:a=>an(a.target.value),rows:8,className:"border-[#E5E0D8] text-sm resize-none focus-visible:ring-[#C67A52]"})]})]}):(0,e.jsxs)(L.P.div,{variants:M.qG,initial:"initial",animate:"animate",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("common.assignee")}),(0,e.jsx)("div",{className:"mt-2 flex items-center gap-2.5 rounded-lg bg-[#FAF8F4] p-3",children:a.assignee?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(A.eu,{className:"h-7 w-7",children:(0,e.jsx)(A.q5,{className:"agent"===a.assignee.type?"bg-[#C67A52] text-white":"bg-[#E5E0D8] text-[#6B6B6B]",children:"agent"===a.assignee.type?(0,e.jsx)(n.A,{className:"h-3.5 w-3.5"}):a.assignee.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{children:[(0,e.jsx)("div",{className:"text-sm font-medium text-[#2C2C2C]",children:a.assignee.name}),(0,e.jsx)("div",{className:"text-xs text-[#6B6B6B]",children:"agent"===a.assignee.type?`${P("common.agent")} • ${a.assignee.assignedAt?(0,N.r)(a.assignee.assignedAt):""}`:P("common.user")})]})]}):(0,e.jsx)("span",{className:"text-sm text-[#9A9A9A]",children:P("common.unassigned")})})]}),Z&&Z.rounds.length>0&&(0,e.jsx)("div",{className:"mt-5",children:(0,e.jsx)(H.R,{ideaUuid:a.uuid,elaboration:Z,onRefresh:async()=>{let b=await (0,I.z)(a.uuid);b.success&&b.data&&$(b.data)}})}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("common.content")}),(0,e.jsx)("div",{className:"mt-2",children:a.content?(0,e.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,e.jsx)(E.MarkdownContent,{children:a.content})}):(0,e.jsx)("p",{className:"text-sm italic text-[#9A9A9A]",children:P("common.noContent")})})]}),(0,e.jsxs)("div",{className:"mt-5 flex-1",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("common.activity")}),(0,e.jsx)("div",{className:"mt-2 space-y-3",children:V?(0,e.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,e.jsx)(o.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):0===T.length?(0,e.jsx)("p",{className:"text-sm text-[#9A9A9A] italic",children:P("common.noActivity")}):T.map(a=>(0,e.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,e.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-[#9A9A9A]"}),(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)("p",{className:"text-[13px] text-[#2C2C2C]",children:function(a,b){let{action:c,actorName:d}=a;switch(c){case"created":case"idea_created":return b("activity.ideaCreated",{actor:d});case"assigned":case"idea_assigned":return b("activity.ideaAssigned",{actor:d});case"claimed":case"idea_claimed":return b("activity.ideaClaimed",{actor:d});case"released":case"idea_released":return b("activity.ideaReleased",{actor:d});case"status_changed":case"idea_status_changed":return b("activity.ideaStatusChanged",{actor:d});case"elaboration_started":return b("activity.elaborationStarted",{actor:d});case"elaboration_answered":return b("activity.elaborationAnswered",{actor:d});case"elaboration_skipped":return b("activity.elaborationSkipped",{actor:d});case"elaboration_resolved":return b("activity.elaborationResolved",{actor:d});case"elaboration_followup":return b("activity.elaborationFollowup",{actor:d});default:return`${d}: ${c}`}}(a,P)}),(0,e.jsx)("p",{className:"text-[11px] text-[#9A9A9A]",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,N.r)(c)}(a.createdAt,P)})]})]},a.uuid))})]}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("comments.title")}),(0,e.jsx)("div",{className:"mt-2",children:(0,e.jsx)(B.$,{targetType:"idea",targetUuid:a.uuid,currentUserUuid:c,compact:!0})})]})]})})}),(0,e.jsx)("div",{className:"border-t border-[#F5F2EC] px-6 py-4",children:(0,e.jsx)("div",{className:"flex items-center justify-between gap-3",children:ai?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(u.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:aD,disabled:ao,children:P("common.cancel")}),(0,e.jsx)(u.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:aE,disabled:ao||!ak.trim(),children:ao?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),P("common.saving")]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(p.A,{className:"mr-2 h-4 w-4"}),P("ideas.saveChanges")]})})]}):(0,e.jsxs)(e.Fragment,{children:[ay&&(0,e.jsxs)(u.$,{variant:"outline",className:"shrink-0 border-[#E5E0D8] rounded-md px-4 py-2 text-[13px] font-medium",onClick:()=>Y(!0),children:[(0,e.jsx)(q.A,{className:"mr-2 h-4 w-4"}),a.assignee?P("common.reassign"):P("common.assign")]}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[aB&&(0,e.jsx)(u.$,{variant:"outline",size:"sm",className:"border-[#E5E0D8]",onClick:()=>{ad(""),ah(null),ab(!0)},children:P("elaboration.skipButton")}),aA&&(0,e.jsx)(i(),{href:`/projects/${b}/proposals/new?ideaUuid=${a.uuid}`,children:(0,e.jsxs)(u.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:[(0,e.jsx)(r.A,{className:"mr-2 h-4 w-4"}),P("proposals.createProposal")]})}),"elaborating"===a.status&&!az&&!aB&&(0,e.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:P("elaboration.elaborationRequiredHint")})]}),(0,e.jsxs)(z.Lt,{children:[(0,e.jsx)(z.tv,{asChild:!0,children:(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"shrink-0 h-8 w-8 border-[#E5E0D8] text-[#EF4444] hover:bg-[#FFEBEE] hover:text-[#EF4444] hover:border-[#EF4444]",children:(0,e.jsx)(s.A,{className:"h-4 w-4"})})}),(0,e.jsxs)(z.EO,{children:[(0,e.jsxs)(z.wd,{children:[(0,e.jsx)(z.r7,{children:P("ideas.deleteIdea")}),(0,e.jsx)(z.$v,{children:P("ideas.deleteIdeaConfirm",{title:a.title})})]}),(0,e.jsxs)(z.ck,{children:[(0,e.jsx)(z.Zr,{children:P("common.cancel")}),(0,e.jsx)(z.Rx,{variant:"destructive",onClick:aF,disabled:as,children:as?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),P("common.delete")]}):P("common.delete")})]})]})]})]})})})]}),(0,e.jsx)(z.Lt,{open:aa,onOpenChange:ab,children:(0,e.jsxs)(z.EO,{children:[(0,e.jsxs)(z.wd,{children:[(0,e.jsx)(z.r7,{children:P("elaboration.skipConfirmTitle")}),(0,e.jsx)(z.$v,{children:P("elaboration.skipConfirmDescription")})]}),(0,e.jsxs)("div",{className:"space-y-2 py-2",children:[(0,e.jsx)(x.J,{htmlFor:"skip-reason",className:"text-[13px] font-medium text-[#2C2C2C]",children:P("elaboration.skipReasonLabel")}),(0,e.jsx)(v.p,{id:"skip-reason",value:ac,onChange:a=>{ad(a.target.value),ag&&ah(null)},placeholder:P("elaboration.skipReasonPlaceholder"),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0}),ag&&(0,e.jsx)("p",{className:"text-xs text-destructive",children:ag})]}),(0,e.jsxs)(z.ck,{children:[(0,e.jsx)(z.Zr,{disabled:ae,children:P("common.cancel")}),(0,e.jsx)(z.Rx,{onClick:a=>{a.preventDefault(),aG()},disabled:ae||!ac.trim(),className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:ae?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),P("common.processing")]}):P("elaboration.skipButton")})]})]})}),(0,e.jsx)(G.h,{open:au,onOpenChange:av,ideaUuid:a.uuid,projectUuid:b,onMoved:()=>{h()}}),X&&(0,e.jsx)(F.i,{idea:{uuid:a.uuid,title:a.title,content:a.content,status:a.status,assignee:a.assignee?{type:a.assignee.type,uuid:a.assignee.uuid,name:a.assignee.name}:null},projectUuid:b,currentUserUuid:c,onClose:()=>{Y(!1),h()}})]})}d()}catch(a){d(a)}})},54349:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Hu:()=>n,eT:()=>m,fg:()=>l,uA:()=>q});var e=c(52618),f=c(76872),g=c(90494),h=c(88437),i=c(42558),j=c(65582),k=a([e,f,g,h]);async function l({companyUuid:a,targetType:b,targetUuid:c,skip:d,take:g}){if(!await (0,f._9)(b,c,a))return{comments:[],total:0};let h={companyUuid:a,targetType:b,targetUuid:c},[i,j]=await Promise.all([e.z.comment.findMany({where:h,skip:d,take:g,orderBy:{createdAt:"asc"},select:{uuid:!0,targetType:!0,targetUuid:!0,content:!0,authorType:!0,authorUuid:!0,createdAt:!0,updatedAt:!0}}),e.z.comment.count({where:h})]);return{comments:await Promise.all(i.map(async a=>{let b=await (0,f.lR)(a.authorType,a.authorUuid);return{uuid:a.uuid,targetType:a.targetType,targetUuid:a.targetUuid,content:a.content,author:{type:a.authorType,uuid:a.authorUuid,name:b??"Unknown"},createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}})),total:j}}async function m({companyUuid:a,targetType:b,targetUuid:c,content:d,authorType:g,authorUuid:h}){if(!await (0,f._9)(b,c,a))throw Error(`Target ${b} with UUID ${c} not found`);let k=await e.z.comment.create({data:{companyUuid:a,targetType:b,targetUuid:c,content:d,authorType:g,authorUuid:h},select:{uuid:!0,targetType:!0,targetUuid:!0,content:!0,authorType:!0,authorUuid:!0,createdAt:!0,updatedAt:!0}}),l=await (0,f.lR)(k.authorType,k.authorUuid);return n(b,c).then(d=>{d&&i.B.emitChange({companyUuid:a,projectUuid:d,entityType:b,entityUuid:c,action:"updated",actorUuid:h})}).catch(()=>{}),p(a,b,c,k.uuid,d,g,h).catch(a=>j.A.error({err:a},"Failed to process comment mentions")),{uuid:k.uuid,targetType:k.targetType,targetUuid:k.targetUuid,content:k.content,author:{type:k.authorType,uuid:k.authorUuid,name:l??"Unknown"},createdAt:k.createdAt.toISOString(),updatedAt:k.updatedAt.toISOString()}}async function n(a,b,c){let d=c?{companyUuid:c}:{};switch(a){case"task":{let a=await e.z.task.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}case"idea":{let a=await e.z.idea.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}case"proposal":{let a=await e.z.proposal.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}case"document":{let a=await e.z.document.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}default:return null}}async function o(a,b){switch(a){case"task":{let a=await e.z.task.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Task"}case"idea":{let a=await e.z.idea.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Idea"}case"proposal":{let a=await e.z.proposal.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Proposal"}case"document":{let a=await e.z.document.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Document"}default:return"Unknown"}}async function p(a,b,c,d,e,f,i){let j=g.Xs(e);if(0===j.length)return;let k=await n(b,c);if(!k)return;let l=await o(b,c);for(let m of(await g.AM({companyUuid:a,sourceType:"comment",sourceUuid:d,content:e,actorType:f,actorUuid:i,projectUuid:k,entityTitle:l}),j))(m.type!==f||m.uuid!==i)&&await h.createActivity({companyUuid:a,projectUuid:k,targetType:b,targetUuid:c,actorType:f,actorUuid:i,action:"mentioned",value:{mentionedType:m.type,mentionedUuid:m.uuid,mentionedName:m.displayName,sourceType:"comment",sourceUuid:d}})}async function q(a,b,c){if(0===c.length)return{};let d=await e.z.comment.groupBy({by:["targetUuid"],where:{companyUuid:a,targetType:b,targetUuid:{in:c}},_count:{targetUuid:!0}}),f={};for(let a of c)f[a]=0;for(let a of d)f[a.targetUuid]=a._count.targetUuid;return f}[e,f,g,h]=k.then?(await k)():k,d()}catch(a){d(a)}})},57578:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{AU:()=>p,Bf:()=>K,CA:()=>F,Eh:()=>H,FD:()=>D,HF:()=>s,IV:()=>B,LJ:()=>C,M9:()=>E,PK:()=>w,TC:()=>z,X2:()=>x,e1:()=>o,fS:()=>q,gF:()=>y,gT:()=>G,lh:()=>J,nW:()=>I,op:()=>v,tM:()=>A,v3:()=>n,wV:()=>r});var e=c(55511),f=c(52618),g=c(18818),h=c(76872),i=c(42558),j=a([f,h]);function k(a){return{...a,uuid:a.uuid||(0,e.randomUUID)()}}function l(a){return{...a,uuid:a.uuid||(0,e.randomUUID)()}}async function m(a){let b="user"===a.createdByType?"user":"agent",[c,d]=await Promise.all([(0,h.LS)(a.createdByUuid,b),(0,h.SJ)(a.reviewedByUuid,a.reviewNote,a.reviewedAt)]),e={uuid:a.uuid,title:a.title,description:a.description,inputType:a.inputType,inputUuids:a.inputUuids,documentDrafts:a.documentDrafts,taskDrafts:a.taskDrafts,status:a.status,createdBy:c,createdByType:a.createdByType,review:d,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()};return a.project&&(e.project=a.project),e}async function n(a,b){let c=await f.z.proposal.findFirst({where:{uuid:b,companyUuid:a}});if(!c)throw Error("Proposal not found");let d=[],e=c.documentDrafts||[],g=c.taskDrafts||[],h=c.inputUuids||[];for(let a of(0===e.length&&d.push({id:"E1",level:"error",message:"Proposal must contain at least one document draft"}),e))(!a.content||a.content.length<100)&&d.push({id:"E2",level:"error",message:`Document draft "${a.title}" must have content with at least 100 characters`,field:a.title});if(0===g.length&&d.push({id:"E3",level:"error",message:"Proposal must contain at least one task draft"}),0===h.length&&d.push({id:"E4",level:"error",message:"Proposal must have at least one input (idea or other source)"}),"idea"===c.inputType&&h.length>0)for(let b of(await f.z.idea.findMany({where:{uuid:{in:h},companyUuid:a},select:{uuid:!0,title:!0,elaborationStatus:!0}})))"resolved"!==b.elaborationStatus&&d.push({id:"E5",level:"error",message:`Input idea "${b.title}" has unresolved elaboration (status: ${b.elaborationStatus})`,field:b.title});for(let a of(e.some(a=>"tech_design"===a.type)||d.push({id:"W1",level:"warning",message:"Proposal should contain at least one tech design document draft"}),g))a.description&&0!==a.description.trim().length||d.push({id:"W2",level:"warning",message:`Task draft "${a.title}" is missing a description`,field:a.title});for(let a of g)a.acceptanceCriteriaItems&&0!==a.acceptanceCriteriaItems.length||d.push({id:"E-AC",level:"error",message:`Task draft "${a.title}" is missing acceptance criteria (structured items required)`,field:a.title});for(let a of(g.length>=2&&(g.some(a=>a.dependsOnDraftUuids&&a.dependsOnDraftUuids.length>0)||d.push({id:"W4",level:"warning",message:"When there are multiple tasks, at least one should declare dependencies"})),c.description&&0!==c.description.trim().length||d.push({id:"W5",level:"warning",message:"Proposal description should not be empty"}),g))a.priority||d.push({id:"I1",level:"info",message:`Task draft "${a.title}" does not have a priority set`,field:a.title});for(let a of g)null==a.storyPoints&&d.push({id:"I2",level:"info",message:`Task draft "${a.title}" does not have story points set`,field:a.title});return{valid:!d.some(a=>"error"===a.level),issues:d}}async function o(a,b){let c=await f.z.proposal.findMany({where:{companyUuid:a,inputType:"idea"},select:{uuid:!0,title:!0,inputUuids:!0}}),d=[];for(let a of c){let c=a.inputUuids;for(let e of b)c.includes(e)&&d.push({uuid:e,proposalUuid:a.uuid,proposalTitle:a.title})}return{available:0===d.length,usedIdeas:d}}async function p(a,b,c,d){let e=await f.z.idea.findMany({where:{uuid:{in:b},companyUuid:a},select:{uuid:!0,assigneeType:!0,assigneeUuid:!0}}),g=[];for(let a of e)(a.assigneeType!==d||a.assigneeUuid!==c)&&g.push(a.uuid);return{valid:0===g.length,unassignedIdeas:g}}async function q(a,b,c){let d=(await f.z.proposal.findMany({where:{projectUuid:b,companyUuid:a},orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,description:!0,inputType:!0,inputUuids:!0,documentDrafts:!0,taskDrafts:!0,status:!0,createdByUuid:!0,createdByType:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,createdAt:!0,updatedAt:!0}})).filter(a=>Array.isArray(a.inputUuids)&&a.inputUuids.includes(c));return Promise.all(d.map(a=>m(a)))}async function r({companyUuid:a,projectUuid:b,skip:c,take:d,status:e}){let g={projectUuid:b,companyUuid:a,...e&&{status:e}},[h,i]=await Promise.all([f.z.proposal.findMany({where:g,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,description:!0,inputType:!0,inputUuids:!0,documentDrafts:!0,taskDrafts:!0,status:!0,createdByUuid:!0,createdByType:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,createdAt:!0,updatedAt:!0}}),f.z.proposal.count({where:g})]);return{proposals:await Promise.all(h.map(a=>m(a))),total:i}}async function s(a,b){let c=await f.z.proposal.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return c?m(c):null}function t(a){return{uuid:a.uuid,type:a.type,title:a.title,contentLength:(a.content??"").length}}function u(a){let b={uuid:a.uuid,title:a.title,acceptanceCriteriaCount:a.acceptanceCriteriaItems?.length??0};return void 0!==a.priority&&(b.priority=a.priority),void 0!==a.storyPoints&&(b.storyPoints=a.storyPoints),void 0!==a.dependsOnDraftUuids&&(b.dependsOnDraftUuids=a.dependsOnDraftUuids),b}async function v(a,b,c){let d=await s(a,b);if(!d)return null;let{documentDrafts:e,taskDrafts:f,...g}=d;switch(c){case"documents":return{...g,section:"documents",documentDrafts:e};case"tasks":return{...g,section:"tasks",taskDrafts:f};case"full":return{...d,section:"full"};default:return{...g,section:"basic",documentDraftCount:e?.length??0,taskDraftCount:f?.length??0,documentDraftIndex:(e??[]).map(t),taskDraftIndex:(f??[]).map(u)}}}async function w(a,b){return f.z.proposal.findFirst({where:{uuid:b,companyUuid:a}})}async function x(a){let b=a.documentDrafts?.map(k),c=a.taskDrafts?.map(l),d=await f.z.proposal.create({data:{companyUuid:a.companyUuid,projectUuid:a.projectUuid,title:a.title,description:a.description,inputType:a.inputType,inputUuids:a.inputUuids,...b&&{documentDrafts:b},...c&&{taskDrafts:c},status:"draft",createdByUuid:a.createdByUuid,createdByType:a.createdByType||"agent"},select:{uuid:!0,title:!0,description:!0,inputType:!0,inputUuids:!0,documentDrafts:!0,taskDrafts:!0,status:!0,createdByUuid:!0,createdByType:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,createdAt:!0,updatedAt:!0}});return i.B.emitChange({companyUuid:a.companyUuid,projectUuid:a.projectUuid,entityType:"proposal",entityUuid:d.uuid,action:"created"}),m(d)}async function y(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b}});if(!e)throw Error("Proposal not found");let{updatedProposal:g,materializedTasks:h,materializedDocuments:j}=await f.z.$transaction(async b=>{let f=await b.proposal.update({where:{uuid:a},data:{status:"approved",reviewedByUuid:c,reviewNote:d||null,reviewedAt:new Date},include:{project:{select:{uuid:!0,name:!0}}}}),g=e.documentDrafts,h=e.taskDrafts,i=[],j=[];if(g&&g.length>0){let a=await b.document.createManyAndReturn({data:g.map(a=>({companyUuid:e.companyUuid,projectUuid:e.projectUuid,type:a.type||"prd",title:a.title,content:a.content||null,version:1,proposalUuid:e.uuid,createdByUuid:e.createdByUuid})),select:{uuid:!0,title:!0}});for(let b=0;b<g.length;b++)j.push({draftUuid:g[b].uuid,documentUuid:a[b].uuid,title:a[b].title})}if(h&&h.length>0){for(let a of h)if(a.acceptanceCriteriaItems&&a.acceptanceCriteriaItems.length>0)for(let b=0;b<a.acceptanceCriteriaItems.length;b++){let c=a.acceptanceCriteriaItems[b];if(!c.description||"string"!=typeof c.description||0===c.description.trim().length)throw Error(`Task draft "${a.title}": acceptanceCriteriaItems[${b}] has an empty or invalid description`)}let a=await b.task.createManyAndReturn({data:h.map(a=>({companyUuid:e.companyUuid,projectUuid:e.projectUuid,title:a.title,description:a.description||null,status:"open",priority:a.priority||"medium",storyPoints:a.storyPoints||null,acceptanceCriteria:a.acceptanceCriteria||null,proposalUuid:e.uuid,createdByUuid:e.createdByUuid})),select:{uuid:!0,title:!0}}),c=new Map;for(let b=0;b<h.length;b++)c.set(h[b].uuid,a[b].uuid),i.push({draftUuid:h[b].uuid,taskUuid:a[b].uuid,title:a[b].title});let d=[];for(let a of h)if(a.dependsOnDraftUuids&&a.dependsOnDraftUuids.length>0){let b=c.get(a.uuid);if(!b)continue;for(let e of a.dependsOnDraftUuids){let a=c.get(e);a&&d.push({taskUuid:b,dependsOnUuid:a})}}d.length>0&&await b.taskDependency.createMany({data:d});let f=[];for(let a of h)if(a.acceptanceCriteriaItems&&a.acceptanceCriteriaItems.length>0){let b=c.get(a.uuid);if(!b)continue;for(let c=0;c<a.acceptanceCriteriaItems.length;c++){let d=a.acceptanceCriteriaItems[c];f.push({taskUuid:b,description:d.description.trim(),required:d.required??!0,sortOrder:c})}}f.length>0&&await b.acceptanceCriterion.createMany({data:f})}return{updatedProposal:f,materializedTasks:i,materializedDocuments:j}},{timeout:15e3});i.B.emitChange({companyUuid:e.companyUuid,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"});let k=await m(g);return h.length>0&&(k.materializedTasks=h),j.length>0&&(k.materializedDocuments=j),k}async function z(a,b){let[c,d]=await Promise.all([f.z.task.findMany({where:{companyUuid:a,proposalUuid:b,status:{not:"closed"}},select:{uuid:!0,title:!0,status:!0},orderBy:{createdAt:"asc"}}),f.z.document.findMany({where:{companyUuid:a,proposalUuid:b},select:{uuid:!0,title:!0},orderBy:{createdAt:"asc"}})]);return{tasks:c,documents:d}}async function A(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b}});if(!e)throw Error("Proposal not found");if("approved"!==e.status)throw Error("Only approved proposals can be revoked");let[g,h]=await Promise.all([f.z.task.findMany({where:{proposalUuid:e.uuid,status:{not:"closed"}},select:{uuid:!0,title:!0}}),f.z.document.findMany({where:{proposalUuid:e.uuid},select:{uuid:!0,title:!0}})]),j=g.map(a=>({uuid:a.uuid,title:a.title})),k=h.map(a=>({uuid:a.uuid,title:a.title}));return await f.z.$transaction(async b=>{let f=j.map(a=>a.uuid),g=k.map(a=>a.uuid);f.length>0&&(await b.sessionTaskCheckin.deleteMany({where:{taskUuid:{in:f}}}),await b.taskDependency.deleteMany({where:{dependsOnUuid:{in:f},taskUuid:{notIn:f}}}),await b.task.updateMany({where:{proposalUuid:e.uuid},data:{status:"closed"}})),g.length>0&&(await b.comment.deleteMany({where:{targetType:"document",targetUuid:{in:g}}}),await b.document.deleteMany({where:{proposalUuid:e.uuid}})),await b.proposal.update({where:{uuid:a},data:{status:"draft",reviewedByUuid:c,reviewedAt:new Date,reviewNote:d||null}})},{timeout:15e3}),i.B.emitChange({companyUuid:e.companyUuid,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),{proposalUuid:a,closedTasks:j,deletedDocuments:k}}async function B(a,b,c){let d=await f.z.proposal.update({where:{uuid:a},data:{status:"draft",reviewedByUuid:b,reviewNote:c,reviewedAt:new Date},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:d.companyUuid,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:d.uuid,action:"updated"}),m(d)}async function C(a,b,c){let d=await f.z.proposal.update({where:{uuid:a},data:{status:"closed",reviewedByUuid:b,reviewNote:c,reviewedAt:new Date},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:d.companyUuid,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:d.uuid,action:"updated"}),m(d)}async function D(a,b){let c=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b}});if(!c)throw Error("Proposal not found");if("draft"!==c.status)throw Error("Only draft proposals can be submitted for review");let d=await n(b,a);if(!d.valid){let a=d.issues.map(a=>`[${a.level}] ${a.message}`);throw Error(`Proposal validation failed:
2
- ${a.join("\n")}`)}let e=await f.z.proposal.update({where:{uuid:a},data:{status:"pending"},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:e.companyUuid,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:e.uuid,action:"updated"}),m(e)}async function E(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=d.documentDrafts||[],g=k(c),h=[...e,g],j=await f.z.proposal.update({where:{uuid:a},data:{documentDrafts:h},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),m(j)}async function F(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=d.taskDrafts||[],g=l(c),h=[...e,g],j=await f.z.proposal.update({where:{uuid:a},data:{taskDrafts:h},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),m(j)}async function G(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!e)throw Error("Proposal not found or not in draft status");let g=e.documentDrafts||[],h=g.findIndex(a=>a.uuid===c);if(-1===h)throw Error("Document draft not found");g[h]={...g[h],...d};let j=await f.z.proposal.update({where:{uuid:a},data:{documentDrafts:g},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),m(j)}async function H(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!e)throw Error("Proposal not found or not in draft status");let g=e.taskDrafts||[],h=g.findIndex(a=>a.uuid===c);if(-1===h)throw Error("Task draft not found");g[h]={...g[h],...d};let j=await f.z.proposal.update({where:{uuid:a},data:{taskDrafts:g},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),m(j)}async function I(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=(d.documentDrafts||[]).filter(a=>a.uuid!==c),h=await f.z.proposal.update({where:{uuid:a},data:{documentDrafts:e.length>0?e:g.D1.Fj},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),m(h)}async function J(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=(d.taskDrafts||[]).filter(a=>a.uuid!==c).map(a=>({...a,dependsOnDraftUuids:a.dependsOnDraftUuids?.filter(a=>a!==c)})),h=await f.z.proposal.update({where:{uuid:a},data:{taskDrafts:e.length>0?e:g.D1.Fj},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),m(h)}async function K(a,b){let c=await f.z.proposal.findMany({where:{companyUuid:a,projectUuid:b,status:"approved"},select:{uuid:!0,title:!0,createdAt:!0},orderBy:{createdAt:"asc"}}),d=await f.z.task.groupBy({by:["proposalUuid"],where:{companyUuid:a,projectUuid:b,proposalUuid:{in:c.map(a=>a.uuid)}},_count:!0}),e=new Map(d.map(a=>[a.proposalUuid,a._count]));return c.map((a,b)=>({uuid:a.uuid,title:a.title,sequenceNumber:b+1,taskCount:e.get(a.uuid)??0}))}[f,h]=j.then?(await j)():j,d()}catch(a){d(a)}})},61007:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(91533).A)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]])},63413:(a,b,c)=>{c.d(b,{cn:()=>f});var d=c(34269),e=c(42711);function f(...a){return(0,e.QP)((0,d.$)(a))}},66685:(a,b,c)=>{c.d(b,{y:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60bc14a8d39f0f24588050cac093c9f3dd936825ee",d.callServer,void 0,d.findSourceMapURL,"skipElaborationAction")},74236:(a,b,c)=>{c.d(b,{Wu:()=>i,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10023);c(73426);var e=c(63413);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}}};
1
+ "use strict";exports.id=9508,exports.ids=[7578,9508],exports.modules={27380:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{D:()=>P});var e=c(10837),f=c(21968),g=c(1007),h=c(81512),i=c.n(h),j=c(9222),k=c(24364),l=c(87461),m=c(10694),n=c(16235),o=c(86460),p=c(9810),q=c(97443),r=c(65956),s=c(79543),t=c(49599),u=c(42424),v=c(9994),w=c(20170),x=c(2852),y=c(74645),z=c(6019),A=c(80251),B=c(56828);c(90274);var C=c(97113),D=c(94570),E=c(97450),F=c(86545),G=c(88513),H=c(75797),I=c(72274),J=c(66685),K=c(76172),L=c(31009),M=c(45148),N=c(76664),O=a([B,E]);[B,E]=O.then?(await O)():O;let Q={open:"bg-[#FFF3E0] text-[#E65100]",elaborating:"bg-[#E3F2FD] text-[#1976D2]",elaborated:"bg-[#E0F2F1] text-[#00796B]"},R={open:"open",elaborating:"elaborating",elaborated:"elaborated"};function P({idea:a,projectUuid:b,currentUserUuid:c,isUsedInProposal:d,onClose:h,onDeleted:O}){let P=(0,j.c)(),S=(0,g.useRouter)(),[T,U]=(0,f.useState)([]),[V,W]=(0,f.useState)(!0),[X,Y]=(0,f.useState)(!1),[Z,$]=(0,f.useState)(null),_=(0,f.useCallback)(async()=>{let b=await (0,I.z)(a.uuid);b.success&&b.data&&$(b.data)},[a.uuid]);(0,K.eV)("idea",_);let[aa,ab]=(0,f.useState)(!1),[ac,ad]=(0,f.useState)(""),[ae,af]=(0,f.useState)(!1),[ag,ah]=(0,f.useState)(null),[ai,aj]=(0,f.useState)(!1),[ak,al]=(0,f.useState)(a.title),[am,an]=(0,f.useState)(a.content||""),[ao,ap]=(0,f.useState)(!1),[aq,ar]=(0,f.useState)(null),[as,at]=(0,f.useState)(!1),[au,av]=(0,f.useState)(!1),[aw,ax]=(0,f.useState)(!1),ay="elaborated"!==a.status,az="resolved"===a.elaborationStatus,aA=("elaborating"===a.status||"elaborated"===a.status)&&az,aB="elaborating"===a.status&&(!a.elaborationStatus||"resolved"!==a.elaborationStatus)&&a.assignee?.uuid===c,aC="elaborated"!==a.status,aD=()=>{aj(!1),al(a.title),an(a.content||""),ar(null)},aE=async()=>{if(!ak.trim())return void ar(P("ideas.titleRequired"));ap(!0),ar(null);let c=await (0,C.J)({ideaUuid:a.uuid,projectUuid:b,title:ak.trim(),content:am.trim()||null});ap(!1),c.success?(aj(!1),S.refresh()):ar(c.error||P("ideas.updateFailed"))},aF=async()=>{at(!0);let c=await (0,D.Z)(a.uuid,b);at(!1),c.success&&(O?.(),h(),S.refresh())},aG=async()=>{if(!ac.trim())return void ah(P("elaboration.skipReasonRequired"));af(!0),ah(null);let b=await (0,J.y)(a.uuid,ac.trim());af(!1),b.success?(ab(!1),ad(""),S.refresh()):ah(b.error||P("common.genericError"))};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("div",{className:"fixed inset-0 z-40 bg-black/20",onClick:h}),(0,e.jsxs)("div",{className:`fixed right-0 top-14 md:top-0 z-50 flex h-[calc(100%-3.5rem)] md:h-full w-full md:w-[480px] flex-col bg-white shadow-xl border-l border-[#E5E0D8] ${aw?"":"animate-in slide-in-from-right duration-300"}`,children:[(0,e.jsxs)("div",{className:"flex items-center justify-between border-b border-[#F5F2EC] px-6 py-5",children:[(0,e.jsx)("div",{className:"flex-1 min-w-0",children:ai?(0,e.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C]",children:P("ideas.editIdea")}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("h2",{className:"text-base font-semibold text-[#2C2C2C] truncate",children:a.title}),(0,e.jsxs)("div",{className:"mt-1.5 flex items-center gap-2",children:[(0,e.jsx)(t.E,{className:Q[a.status]||"",children:P(`status.${R[a.status]||a.status}`)}),(0,e.jsx)("span",{className:"text-xs text-[#9A9A9A]",children:(0,N.r)(a.createdAt)})]})]})}),(0,e.jsxs)("div",{className:"flex items-center gap-2 ml-4",children:[!ai&&(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>av(!0),title:P("ideas.actions.move"),"aria-label":P("ideas.actions.move"),children:(0,e.jsx)(k.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),aC&&!ai&&(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:()=>{al(a.title),an(a.content||""),ar(null),aj(!0)},children:(0,e.jsx)(l.A,{className:"h-4 w-4 text-[#6B6B6B]"})}),(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"h-8 w-8 border-[#E5E0D8]",onClick:ai?aD:h,children:(0,e.jsx)(m.A,{className:"h-4 w-4 text-[#6B6B6B]"})})]})]}),(0,e.jsx)(y.F,{className:"flex-1 min-h-0 [&_[data-slot=scroll-area-viewport]>div]:!block",children:(0,e.jsx)("div",{className:"flex min-h-full flex-col px-6 py-5",children:ai?(0,e.jsxs)("div",{className:"space-y-5",children:[aq&&(0,e.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:aq}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(x.J,{htmlFor:"edit-title",className:"text-[13px] font-medium text-[#2C2C2C]",children:P("ideas.titleLabel")}),(0,e.jsx)(v.p,{id:"edit-title",value:ak,onChange:a=>al(a.target.value),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0})]}),(0,e.jsxs)("div",{className:"space-y-2",children:[(0,e.jsx)(x.J,{htmlFor:"edit-content",className:"text-[13px] font-medium text-[#2C2C2C]",children:P("common.content")}),(0,e.jsx)(w.T,{id:"edit-content",value:am,onChange:a=>an(a.target.value),rows:8,className:"border-[#E5E0D8] text-sm resize-none focus-visible:ring-[#C67A52]"})]})]}):(0,e.jsxs)(L.P.div,{variants:M.qG,initial:"initial",animate:"animate",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("common.assignee")}),(0,e.jsx)("div",{className:"mt-2 flex items-center gap-2.5 rounded-lg bg-[#FAF8F4] p-3",children:a.assignee?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(A.eu,{className:"h-7 w-7",children:(0,e.jsx)(A.q5,{className:"agent"===a.assignee.type?"bg-[#C67A52] text-white":"bg-[#E5E0D8] text-[#6B6B6B]",children:"agent"===a.assignee.type?(0,e.jsx)(n.A,{className:"h-3.5 w-3.5"}):a.assignee.name.charAt(0).toUpperCase()})}),(0,e.jsxs)("div",{children:[(0,e.jsx)("div",{className:"text-sm font-medium text-[#2C2C2C]",children:a.assignee.name}),(0,e.jsx)("div",{className:"text-xs text-[#6B6B6B]",children:"agent"===a.assignee.type?`${P("common.agent")} • ${a.assignee.assignedAt?(0,N.r)(a.assignee.assignedAt):""}`:P("common.user")})]})]}):(0,e.jsx)("span",{className:"text-sm text-[#9A9A9A]",children:P("common.unassigned")})})]}),Z&&Z.rounds.length>0&&(0,e.jsx)("div",{className:"mt-5",children:(0,e.jsx)(H.R,{ideaUuid:a.uuid,elaboration:Z,onRefresh:async()=>{let b=await (0,I.z)(a.uuid);b.success&&b.data&&$(b.data)}})}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("common.content")}),(0,e.jsx)("div",{className:"mt-2",children:a.content?(0,e.jsx)("div",{className:"prose prose-sm max-w-none text-[13px] leading-relaxed text-[#2C2C2C]",children:(0,e.jsx)(E.MarkdownContent,{children:a.content})}):(0,e.jsx)("p",{className:"text-sm italic text-[#9A9A9A]",children:P("common.noContent")})})]}),(0,e.jsxs)("div",{className:"mt-5 flex-1",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("common.activity")}),(0,e.jsx)("div",{className:"mt-2 space-y-3",children:V?(0,e.jsx)("div",{className:"flex items-center justify-center py-4",children:(0,e.jsx)(o.A,{className:"h-4 w-4 animate-spin text-[#9A9A9A]"})}):0===T.length?(0,e.jsx)("p",{className:"text-sm text-[#9A9A9A] italic",children:P("common.noActivity")}):T.map(a=>(0,e.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,e.jsx)("div",{className:"mt-1.5 h-2 w-2 shrink-0 rounded-full bg-[#9A9A9A]"}),(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)("p",{className:"text-[13px] text-[#2C2C2C]",children:function(a,b){let{action:c,actorName:d}=a;switch(c){case"created":case"idea_created":return b("activity.ideaCreated",{actor:d});case"assigned":case"idea_assigned":return b("activity.ideaAssigned",{actor:d});case"claimed":case"idea_claimed":return b("activity.ideaClaimed",{actor:d});case"released":case"idea_released":return b("activity.ideaReleased",{actor:d});case"status_changed":case"idea_status_changed":return b("activity.ideaStatusChanged",{actor:d});case"elaboration_started":return b("activity.elaborationStarted",{actor:d});case"elaboration_answered":return b("activity.elaborationAnswered",{actor:d});case"elaboration_skipped":return b("activity.elaborationSkipped",{actor:d});case"elaboration_resolved":return b("activity.elaborationResolved",{actor:d});case"elaboration_followup":return b("activity.elaborationFollowup",{actor:d});default:return`${d}: ${c}`}}(a,P)}),(0,e.jsx)("p",{className:"text-[11px] text-[#9A9A9A]",children:function(a,b){let c=new Date(a),d=new Date().getTime()-c.getTime(),e=Math.floor(d/6e4),f=Math.floor(d/36e5),g=Math.floor(d/864e5);return e<1?b("time.justNow"):e<60?b("time.minutesAgo",{minutes:e}):f<24?b("time.hoursAgo",{hours:f}):g<7?b("time.daysAgo",{days:g}):(0,N.r)(c)}(a.createdAt,P)})]})]},a.uuid))})]}),(0,e.jsxs)("div",{className:"mt-5",children:[(0,e.jsx)("label",{className:"text-[11px] font-medium uppercase tracking-wider text-[#9A9A9A]",children:P("comments.title")}),(0,e.jsx)("div",{className:"mt-2",children:(0,e.jsx)(B.$,{targetType:"idea",targetUuid:a.uuid,currentUserUuid:c,compact:!0})})]})]})})}),(0,e.jsx)("div",{className:"border-t border-[#F5F2EC] px-6 py-4",children:(0,e.jsx)("div",{className:"flex items-center justify-between gap-3",children:ai?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(u.$,{variant:"outline",className:"border-[#E5E0D8]",onClick:aD,disabled:ao,children:P("common.cancel")}),(0,e.jsx)(u.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",onClick:aE,disabled:ao||!ak.trim(),children:ao?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),P("common.saving")]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(p.A,{className:"mr-2 h-4 w-4"}),P("ideas.saveChanges")]})})]}):(0,e.jsxs)(e.Fragment,{children:[ay&&(0,e.jsxs)(u.$,{variant:"outline",className:"shrink-0 border-[#E5E0D8] rounded-md px-4 py-2 text-[13px] font-medium",onClick:()=>Y(!0),children:[(0,e.jsx)(q.A,{className:"mr-2 h-4 w-4"}),a.assignee?P("common.reassign"):P("common.assign")]}),(0,e.jsxs)("div",{className:"flex-1 min-w-0",children:[aB&&(0,e.jsx)(u.$,{variant:"outline",size:"sm",className:"border-[#E5E0D8]",onClick:()=>{ad(""),ah(null),ab(!0)},children:P("elaboration.skipButton")}),aA&&(0,e.jsx)(i(),{href:`/projects/${b}/proposals/new?ideaUuid=${a.uuid}`,children:(0,e.jsxs)(u.$,{className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:[(0,e.jsx)(r.A,{className:"mr-2 h-4 w-4"}),P("proposals.createProposal")]})}),"elaborating"===a.status&&!az&&!aB&&(0,e.jsx)("span",{className:"text-[11px] text-[#9A9A9A]",children:P("elaboration.elaborationRequiredHint")})]}),(0,e.jsxs)(z.Lt,{children:[(0,e.jsx)(z.tv,{asChild:!0,children:(0,e.jsx)(u.$,{variant:"outline",size:"icon",className:"shrink-0 h-8 w-8 border-[#E5E0D8] text-[#EF4444] hover:bg-[#FFEBEE] hover:text-[#EF4444] hover:border-[#EF4444]",children:(0,e.jsx)(s.A,{className:"h-4 w-4"})})}),(0,e.jsxs)(z.EO,{children:[(0,e.jsxs)(z.wd,{children:[(0,e.jsx)(z.r7,{children:P("ideas.deleteIdea")}),(0,e.jsx)(z.$v,{children:P("ideas.deleteIdeaConfirm",{title:a.title})})]}),(0,e.jsxs)(z.ck,{children:[(0,e.jsx)(z.Zr,{children:P("common.cancel")}),(0,e.jsx)(z.Rx,{variant:"destructive",onClick:aF,disabled:as,children:as?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),P("common.delete")]}):P("common.delete")})]})]})]})]})})})]}),(0,e.jsx)(z.Lt,{open:aa,onOpenChange:ab,children:(0,e.jsxs)(z.EO,{children:[(0,e.jsxs)(z.wd,{children:[(0,e.jsx)(z.r7,{children:P("elaboration.skipConfirmTitle")}),(0,e.jsx)(z.$v,{children:P("elaboration.skipConfirmDescription")})]}),(0,e.jsxs)("div",{className:"space-y-2 py-2",children:[(0,e.jsx)(x.J,{htmlFor:"skip-reason",className:"text-[13px] font-medium text-[#2C2C2C]",children:P("elaboration.skipReasonLabel")}),(0,e.jsx)(v.p,{id:"skip-reason",value:ac,onChange:a=>{ad(a.target.value),ag&&ah(null)},placeholder:P("elaboration.skipReasonPlaceholder"),className:"border-[#E5E0D8] text-sm focus-visible:ring-[#C67A52]",autoFocus:!0}),ag&&(0,e.jsx)("p",{className:"text-xs text-destructive",children:ag})]}),(0,e.jsxs)(z.ck,{children:[(0,e.jsx)(z.Zr,{disabled:ae,children:P("common.cancel")}),(0,e.jsx)(z.Rx,{onClick:a=>{a.preventDefault(),aG()},disabled:ae||!ac.trim(),className:"bg-[#C67A52] hover:bg-[#B56A42] text-white",children:ae?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(o.A,{className:"mr-2 h-4 w-4 animate-spin"}),P("common.processing")]}):P("elaboration.skipButton")})]})]})}),(0,e.jsx)(G.h,{open:au,onOpenChange:av,ideaUuid:a.uuid,projectUuid:b,onMoved:()=>{h()}}),X&&(0,e.jsx)(F.i,{idea:{uuid:a.uuid,title:a.title,content:a.content,status:a.status,assignee:a.assignee?{type:a.assignee.type,uuid:a.assignee.uuid,name:a.assignee.name}:null},projectUuid:b,currentUserUuid:c,onClose:()=>{Y(!1),h()}})]})}d()}catch(a){d(a)}})},54349:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Hu:()=>n,eT:()=>m,fg:()=>l,uA:()=>q});var e=c(52618),f=c(76872),g=c(90494),h=c(88437),i=c(42558),j=c(65582),k=a([e,f,g,h]);async function l({companyUuid:a,targetType:b,targetUuid:c,skip:d,take:g}){if(!await (0,f._9)(b,c,a))return{comments:[],total:0};let h={companyUuid:a,targetType:b,targetUuid:c},[i,j]=await Promise.all([e.z.comment.findMany({where:h,skip:d,take:g,orderBy:{createdAt:"asc"},select:{uuid:!0,targetType:!0,targetUuid:!0,content:!0,authorType:!0,authorUuid:!0,createdAt:!0,updatedAt:!0}}),e.z.comment.count({where:h})]);return{comments:await Promise.all(i.map(async a=>{let b=await (0,f.lR)(a.authorType,a.authorUuid);return{uuid:a.uuid,targetType:a.targetType,targetUuid:a.targetUuid,content:a.content,author:{type:a.authorType,uuid:a.authorUuid,name:b??"Unknown"},createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()}})),total:j}}async function m({companyUuid:a,targetType:b,targetUuid:c,content:d,authorType:g,authorUuid:h}){if(!await (0,f._9)(b,c,a))throw Error(`Target ${b} with UUID ${c} not found`);let k=await e.z.comment.create({data:{companyUuid:a,targetType:b,targetUuid:c,content:d,authorType:g,authorUuid:h},select:{uuid:!0,targetType:!0,targetUuid:!0,content:!0,authorType:!0,authorUuid:!0,createdAt:!0,updatedAt:!0}}),l=await (0,f.lR)(k.authorType,k.authorUuid);return n(b,c).then(d=>{d&&i.B.emitChange({companyUuid:a,projectUuid:d,entityType:b,entityUuid:c,action:"updated",actorUuid:h})}).catch(()=>{}),p(a,b,c,k.uuid,d,g,h).catch(a=>j.A.error({err:a},"Failed to process comment mentions")),{uuid:k.uuid,targetType:k.targetType,targetUuid:k.targetUuid,content:k.content,author:{type:k.authorType,uuid:k.authorUuid,name:l??"Unknown"},createdAt:k.createdAt.toISOString(),updatedAt:k.updatedAt.toISOString()}}async function n(a,b,c){let d=c?{companyUuid:c}:{};switch(a){case"task":{let a=await e.z.task.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}case"idea":{let a=await e.z.idea.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}case"proposal":{let a=await e.z.proposal.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}case"document":{let a=await e.z.document.findFirst({where:{uuid:b,...d},select:{projectUuid:!0}});return a?.projectUuid??null}default:return null}}async function o(a,b){switch(a){case"task":{let a=await e.z.task.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Task"}case"idea":{let a=await e.z.idea.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Idea"}case"proposal":{let a=await e.z.proposal.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Proposal"}case"document":{let a=await e.z.document.findUnique({where:{uuid:b},select:{title:!0}});return a?.title??"Unknown Document"}default:return"Unknown"}}async function p(a,b,c,d,e,f,i){let j=g.Xs(e);if(0===j.length)return;let k=await n(b,c);if(!k)return;let l=await o(b,c);for(let m of(await g.AM({companyUuid:a,sourceType:"comment",sourceUuid:d,content:e,actorType:f,actorUuid:i,projectUuid:k,entityTitle:l}),j))(m.type!==f||m.uuid!==i)&&await h.createActivity({companyUuid:a,projectUuid:k,targetType:b,targetUuid:c,actorType:f,actorUuid:i,action:"mentioned",value:{mentionedType:m.type,mentionedUuid:m.uuid,mentionedName:m.displayName,sourceType:"comment",sourceUuid:d}})}async function q(a,b,c){if(0===c.length)return{};let d=await e.z.comment.groupBy({by:["targetUuid"],where:{companyUuid:a,targetType:b,targetUuid:{in:c}},_count:{targetUuid:!0}}),f={};for(let a of c)f[a]=0;for(let a of d)f[a.targetUuid]=a._count.targetUuid;return f}[e,f,g,h]=k.then?(await k)():k,d()}catch(a){d(a)}})},57578:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{AU:()=>q,Bf:()=>L,CA:()=>G,Eh:()=>I,FD:()=>E,HF:()=>t,IV:()=>C,LJ:()=>D,M9:()=>F,PK:()=>x,TC:()=>A,X2:()=>y,e1:()=>p,fS:()=>r,gF:()=>z,gT:()=>H,lh:()=>K,nW:()=>J,op:()=>w,tM:()=>B,v3:()=>o,wV:()=>s});var e=c(55511),f=c(52618),g=c(18818),h=c(76872),i=c(42558),j=c(68775),k=a([f,h]);function l(a){return{...a,uuid:a.uuid||(0,e.randomUUID)()}}function m(a){return{...a,uuid:a.uuid||(0,e.randomUUID)()}}async function n(a){let b="user"===a.createdByType?"user":"agent",[c,d]=await Promise.all([(0,h.LS)(a.createdByUuid,b),(0,h.SJ)(a.reviewedByUuid,a.reviewNote,a.reviewedAt)]),e={uuid:a.uuid,title:a.title,description:a.description,inputType:a.inputType,inputUuids:a.inputUuids,documentDrafts:a.documentDrafts,taskDrafts:a.taskDrafts,status:a.status,createdBy:c,createdByType:a.createdByType,review:d,createdAt:a.createdAt.toISOString(),updatedAt:a.updatedAt.toISOString()};return a.project&&(e.project=a.project),e}async function o(a,b){let c=await f.z.proposal.findFirst({where:{uuid:b,companyUuid:a}});if(!c)throw Error("Proposal not found");let d=[],e=c.documentDrafts||[],g=c.taskDrafts||[],h=c.inputUuids||[];for(let a of(0===e.length&&d.push({id:"E1",level:"error",message:"Proposal must contain at least one document draft"}),e))(!a.content||a.content.length<100)&&d.push({id:"E2",level:"error",message:`Document draft "${a.title}" must have content with at least 100 characters`,field:a.title});if(0===g.length&&d.push({id:"E3",level:"error",message:"Proposal must contain at least one task draft"}),0===h.length&&d.push({id:"E4",level:"error",message:"Proposal must have at least one input (idea or other source)"}),"idea"===c.inputType&&h.length>0)for(let b of(await f.z.idea.findMany({where:{uuid:{in:h},companyUuid:a},select:{uuid:!0,title:!0,elaborationStatus:!0}})))"resolved"!==b.elaborationStatus&&d.push({id:"E5",level:"error",message:`Input idea "${b.title}" has unresolved elaboration (status: ${b.elaborationStatus})`,field:b.title});for(let a of(e.some(a=>"tech_design"===a.type)||d.push({id:"W1",level:"warning",message:"Proposal should contain at least one tech design document draft"}),g))a.description&&0!==a.description.trim().length||d.push({id:"W2",level:"warning",message:`Task draft "${a.title}" is missing a description`,field:a.title});for(let a of g)a.acceptanceCriteriaItems&&0!==a.acceptanceCriteriaItems.length||d.push({id:"E-AC",level:"error",message:`Task draft "${a.title}" is missing acceptance criteria (structured items required)`,field:a.title});for(let a of(g.length>=2&&(g.some(a=>a.dependsOnDraftUuids&&a.dependsOnDraftUuids.length>0)||d.push({id:"W4",level:"warning",message:"When there are multiple tasks, at least one should declare dependencies"})),c.description&&0!==c.description.trim().length||d.push({id:"W5",level:"warning",message:"Proposal description should not be empty"}),g))a.priority||d.push({id:"I1",level:"info",message:`Task draft "${a.title}" does not have a priority set`,field:a.title});for(let a of g)null==a.storyPoints&&d.push({id:"I2",level:"info",message:`Task draft "${a.title}" does not have story points set`,field:a.title});return{valid:!d.some(a=>"error"===a.level),issues:d}}async function p(a,b){let c=await f.z.proposal.findMany({where:{companyUuid:a,inputType:"idea"},select:{uuid:!0,title:!0,inputUuids:!0}}),d=[];for(let a of c){let c=a.inputUuids;for(let e of b)c.includes(e)&&d.push({uuid:e,proposalUuid:a.uuid,proposalTitle:a.title})}return{available:0===d.length,usedIdeas:d}}async function q(a,b,c,d){let e=await f.z.idea.findMany({where:{uuid:{in:b},companyUuid:a},select:{uuid:!0,assigneeType:!0,assigneeUuid:!0}}),g=[];for(let a of e)(a.assigneeType!==d||a.assigneeUuid!==c)&&g.push(a.uuid);return{valid:0===g.length,unassignedIdeas:g}}async function r(a,b,c){let d=(await f.z.proposal.findMany({where:{projectUuid:b,companyUuid:a},orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,description:!0,inputType:!0,inputUuids:!0,documentDrafts:!0,taskDrafts:!0,status:!0,createdByUuid:!0,createdByType:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,createdAt:!0,updatedAt:!0}})).filter(a=>Array.isArray(a.inputUuids)&&a.inputUuids.includes(c));return Promise.all(d.map(a=>n(a)))}async function s({companyUuid:a,projectUuid:b,skip:c,take:d,status:e}){let g={projectUuid:b,companyUuid:a,...e&&{status:e}},[h,i]=await Promise.all([f.z.proposal.findMany({where:g,skip:c,take:d,orderBy:{createdAt:"desc"},select:{uuid:!0,title:!0,description:!0,inputType:!0,inputUuids:!0,documentDrafts:!0,taskDrafts:!0,status:!0,createdByUuid:!0,createdByType:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,createdAt:!0,updatedAt:!0}}),f.z.proposal.count({where:g})]);return{proposals:await Promise.all(h.map(a=>n(a))),total:i}}async function t(a,b){let c=await f.z.proposal.findFirst({where:{uuid:b,companyUuid:a},include:{project:{select:{uuid:!0,name:!0}}}});return c?n(c):null}function u(a){return{uuid:a.uuid,type:a.type,title:a.title,contentLength:(a.content??"").length}}function v(a){let b={uuid:a.uuid,title:a.title,acceptanceCriteriaCount:a.acceptanceCriteriaItems?.length??0};return void 0!==a.priority&&(b.priority=a.priority),void 0!==a.storyPoints&&(b.storyPoints=a.storyPoints),void 0!==a.dependsOnDraftUuids&&(b.dependsOnDraftUuids=a.dependsOnDraftUuids),b}async function w(a,b,c){let d=await t(a,b);if(!d)return null;let{documentDrafts:e,taskDrafts:f,...g}=d;switch(c){case"documents":return{...g,section:"documents",documentDrafts:e};case"tasks":return{...g,section:"tasks",taskDrafts:f};case"full":return{...d,section:"full"};default:return{...g,section:"basic",documentDraftCount:e?.length??0,taskDraftCount:f?.length??0,documentDraftIndex:(e??[]).map(u),taskDraftIndex:(f??[]).map(v)}}}async function x(a,b){return f.z.proposal.findFirst({where:{uuid:b,companyUuid:a}})}async function y(a){let b=a.documentDrafts?.map(l),c=a.taskDrafts?.map(m),d=await f.z.proposal.create({data:{companyUuid:a.companyUuid,projectUuid:a.projectUuid,title:a.title,description:a.description,inputType:a.inputType,inputUuids:a.inputUuids,...b&&{documentDrafts:b},...c&&{taskDrafts:c},status:"draft",createdByUuid:a.createdByUuid,createdByType:a.createdByType||"agent"},select:{uuid:!0,title:!0,description:!0,inputType:!0,inputUuids:!0,documentDrafts:!0,taskDrafts:!0,status:!0,createdByUuid:!0,createdByType:!0,reviewedByUuid:!0,reviewNote:!0,reviewedAt:!0,createdAt:!0,updatedAt:!0}});return i.B.emitChange({companyUuid:a.companyUuid,projectUuid:a.projectUuid,entityType:"proposal",entityUuid:d.uuid,action:"created"}),n(d)}async function z(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b}});if(!e)throw Error("Proposal not found");let{updatedProposal:g,materializedTasks:h,materializedDocuments:k}=await f.z.$transaction(async b=>{let f=await b.proposal.update({where:{uuid:a},data:{status:"approved",reviewedByUuid:c,reviewNote:d||null,reviewedAt:new Date},include:{project:{select:{uuid:!0,name:!0}}}}),g=e.documentDrafts,h=e.taskDrafts,i=[],k=[];if(g&&g.length>0){let a=await b.document.createManyAndReturn({data:g.map(a=>({companyUuid:e.companyUuid,projectUuid:e.projectUuid,type:a.type||"prd",title:a.title,content:a.content||null,version:1,proposalUuid:e.uuid,createdByUuid:e.createdByUuid})),select:{uuid:!0,title:!0}});for(let b=0;b<g.length;b++)k.push({draftUuid:g[b].uuid,documentUuid:a[b].uuid,title:a[b].title})}if(h&&h.length>0){for(let a of h)if(a.acceptanceCriteriaItems&&a.acceptanceCriteriaItems.length>0&&!(0,j.hY)(a.acceptanceCriteriaItems))throw Error(`Task draft "${a.title}": acceptanceCriteriaItems has no non-empty description`);let a=await b.task.createManyAndReturn({data:h.map(a=>({companyUuid:e.companyUuid,projectUuid:e.projectUuid,title:a.title,description:a.description||null,status:"open",priority:a.priority||"medium",storyPoints:a.storyPoints||null,acceptanceCriteria:a.acceptanceCriteria||null,proposalUuid:e.uuid,createdByUuid:e.createdByUuid})),select:{uuid:!0,title:!0}}),c=new Map;for(let b=0;b<h.length;b++)c.set(h[b].uuid,a[b].uuid),i.push({draftUuid:h[b].uuid,taskUuid:a[b].uuid,title:a[b].title});let d=[];for(let a of h)if(a.dependsOnDraftUuids&&a.dependsOnDraftUuids.length>0){let b=c.get(a.uuid);if(!b)continue;for(let e of a.dependsOnDraftUuids){let a=c.get(e);a&&d.push({taskUuid:b,dependsOnUuid:a})}}d.length>0&&await b.taskDependency.createMany({data:d});let f=[];for(let a of h){let b=c.get(a.uuid);b&&(0,j.Ch)(a.acceptanceCriteriaItems).forEach((a,c)=>{f.push({taskUuid:b,description:a.description,required:a.required,sortOrder:c})})}f.length>0&&await b.acceptanceCriterion.createMany({data:f})}return{updatedProposal:f,materializedTasks:i,materializedDocuments:k}},{timeout:15e3});i.B.emitChange({companyUuid:e.companyUuid,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"});let l=await n(g);return h.length>0&&(l.materializedTasks=h),k.length>0&&(l.materializedDocuments=k),l}async function A(a,b){let[c,d]=await Promise.all([f.z.task.findMany({where:{companyUuid:a,proposalUuid:b,status:{not:"closed"}},select:{uuid:!0,title:!0,status:!0},orderBy:{createdAt:"asc"}}),f.z.document.findMany({where:{companyUuid:a,proposalUuid:b},select:{uuid:!0,title:!0},orderBy:{createdAt:"asc"}})]);return{tasks:c,documents:d}}async function B(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b}});if(!e)throw Error("Proposal not found");if("approved"!==e.status)throw Error("Only approved proposals can be revoked");let[g,h]=await Promise.all([f.z.task.findMany({where:{proposalUuid:e.uuid,status:{not:"closed"}},select:{uuid:!0,title:!0}}),f.z.document.findMany({where:{proposalUuid:e.uuid},select:{uuid:!0,title:!0}})]),j=g.map(a=>({uuid:a.uuid,title:a.title})),k=h.map(a=>({uuid:a.uuid,title:a.title}));return await f.z.$transaction(async b=>{let f=j.map(a=>a.uuid),g=k.map(a=>a.uuid);f.length>0&&(await b.sessionTaskCheckin.deleteMany({where:{taskUuid:{in:f}}}),await b.taskDependency.deleteMany({where:{dependsOnUuid:{in:f},taskUuid:{notIn:f}}}),await b.task.updateMany({where:{proposalUuid:e.uuid},data:{status:"closed"}})),g.length>0&&(await b.comment.deleteMany({where:{targetType:"document",targetUuid:{in:g}}}),await b.document.deleteMany({where:{proposalUuid:e.uuid}})),await b.proposal.update({where:{uuid:a},data:{status:"draft",reviewedByUuid:c,reviewedAt:new Date,reviewNote:d||null}})},{timeout:15e3}),i.B.emitChange({companyUuid:e.companyUuid,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),{proposalUuid:a,closedTasks:j,deletedDocuments:k}}async function C(a,b,c){let d=await f.z.proposal.update({where:{uuid:a},data:{status:"draft",reviewedByUuid:b,reviewNote:c,reviewedAt:new Date},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:d.companyUuid,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:d.uuid,action:"updated"}),n(d)}async function D(a,b,c){let d=await f.z.proposal.update({where:{uuid:a},data:{status:"closed",reviewedByUuid:b,reviewNote:c,reviewedAt:new Date},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:d.companyUuid,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:d.uuid,action:"updated"}),n(d)}async function E(a,b){let c=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b}});if(!c)throw Error("Proposal not found");if("draft"!==c.status)throw Error("Only draft proposals can be submitted for review");let d=await o(b,a);if(!d.valid){let a=d.issues.map(a=>`[${a.level}] ${a.message}`);throw Error(`Proposal validation failed:
2
+ ${a.join("\n")}`)}let e=await f.z.proposal.update({where:{uuid:a},data:{status:"pending"},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:e.companyUuid,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:e.uuid,action:"updated"}),n(e)}async function F(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=d.documentDrafts||[],g=l(c),h=[...e,g],j=await f.z.proposal.update({where:{uuid:a},data:{documentDrafts:h},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),n(j)}async function G(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");if(!(0,j.hY)(c.acceptanceCriteriaItems))throw Error(j.se);let e=d.taskDrafts||[],g=m({...c,acceptanceCriteriaItems:(0,j.Ch)(c.acceptanceCriteriaItems)}),h=[...e,g],k=await f.z.proposal.update({where:{uuid:a},data:{taskDrafts:h},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),n(k)}async function H(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!e)throw Error("Proposal not found or not in draft status");let g=e.documentDrafts||[],h=g.findIndex(a=>a.uuid===c);if(-1===h)throw Error("Document draft not found");g[h]={...g[h],...d};let j=await f.z.proposal.update({where:{uuid:a},data:{documentDrafts:g},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),n(j)}async function I(a,b,c,d){let e=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!e)throw Error("Proposal not found or not in draft status");let g=e.taskDrafts||[],h=g.findIndex(a=>a.uuid===c);if(-1===h)throw Error("Task draft not found");let k={...d};if("acceptanceCriteriaItems"in d){if(!(0,j.hY)(d.acceptanceCriteriaItems))throw Error(j.se);k.acceptanceCriteriaItems=(0,j.Ch)(d.acceptanceCriteriaItems)}g[h]={...g[h],...k};let l=await f.z.proposal.update({where:{uuid:a},data:{taskDrafts:g},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:e.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),n(l)}async function J(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=(d.documentDrafts||[]).filter(a=>a.uuid!==c),h=await f.z.proposal.update({where:{uuid:a},data:{documentDrafts:e.length>0?e:g.D1.Fj},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),n(h)}async function K(a,b,c){let d=await f.z.proposal.findFirst({where:{uuid:a,companyUuid:b,status:"draft"}});if(!d)throw Error("Proposal not found or not in draft status");let e=(d.taskDrafts||[]).filter(a=>a.uuid!==c).map(a=>({...a,dependsOnDraftUuids:a.dependsOnDraftUuids?.filter(a=>a!==c)})),h=await f.z.proposal.update({where:{uuid:a},data:{taskDrafts:e.length>0?e:g.D1.Fj},include:{project:{select:{uuid:!0,name:!0}}}});return i.B.emitChange({companyUuid:b,projectUuid:d.projectUuid,entityType:"proposal",entityUuid:a,action:"updated"}),n(h)}async function L(a,b){let c=await f.z.proposal.findMany({where:{companyUuid:a,projectUuid:b,status:"approved"},select:{uuid:!0,title:!0,createdAt:!0},orderBy:{createdAt:"asc"}}),d=await f.z.task.groupBy({by:["proposalUuid"],where:{companyUuid:a,projectUuid:b,proposalUuid:{in:c.map(a=>a.uuid)}},_count:!0}),e=new Map(d.map(a=>[a.proposalUuid,a._count]));return c.map((a,b)=>({uuid:a.uuid,title:a.title,sequenceNumber:b+1,taskCount:e.get(a.uuid)??0}))}[f,h]=k.then?(await k)():k,d()}catch(a){d(a)}})},61007:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(91533).A)("lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]])},63413:(a,b,c)=>{c.d(b,{cn:()=>f});var d=c(34269),e=c(42711);function f(...a){return(0,e.QP)((0,d.$)(a))}},66685:(a,b,c)=>{c.d(b,{y:()=>e});var d=c(42377);let e=(0,d.createServerReference)("60bc14a8d39f0f24588050cac093c9f3dd936825ee",d.callServer,void 0,d.findSourceMapURL,"skipElaborationAction")},74236:(a,b,c)=>{c.d(b,{Wu:()=>i,ZB:()=>h,Zp:()=>f,aR:()=>g});var d=c(10023);c(73426);var e=c(63413);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}}};
@@ -18,7 +18,7 @@
18
18
  "wasm": [],
19
19
  "assets": [],
20
20
  "env": {
21
- "__NEXT_BUILD_ID": "-kClYg0a7zvFcgkw_LnG7",
21
+ "__NEXT_BUILD_ID": "uuDSoqvm-WWenZQ6dXPT7",
22
22
  "NEXT_SERVER_ACTIONS_ENCRYPTION_KEY": "41pZSnZ4NHBZO+l00i563KC1cwLis+W9awtFCF0eKD4=",
23
23
  "__NEXT_PREVIEW_MODE_ID": "56f817af8aac38a44c95f30bfab2be03",
24
24
  "__NEXT_PREVIEW_MODE_SIGNING_KEY": "2c2d74ded17a49127a8a906d879df8f99d242302c92f99e7fbf5bd249952fc67",
@@ -1 +1 @@
1
- <!DOCTYPE html><!--_kClYg0a7zvFcgkw_LnG7--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/22a5144ee8d83bca-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/f5271587012faf78-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/84edd78de243cde6.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/ea3f196c7951f8d6.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-8e0df5e10bc6b98f.js"/><script src="/_next/static/chunks/f40797d1-f5f1a98f6dea9bac.js" async=""></script><script src="/_next/static/chunks/65496-22ab1b8fb7a144f0.js" async=""></script><script src="/_next/static/chunks/main-app-ec87f2c9ef083ff1.js" async=""></script><script src="/_next/static/chunks/12079-0574108f1e035a69.js" async=""></script><script src="/_next/static/chunks/app/layout-482dee7dace72c88.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>Chorus</title><meta name="description" content="AI Agent &amp; Human collaboration platform for the AI-Driven Development Lifecycle"/><meta property="og:title" content="Chorus"/><meta property="og:description" content="AI Agent &amp; Human collaboration platform for the AI-Driven Development Lifecycle"/><meta property="og:site_name" content="Chorus"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Chorus"/><meta name="twitter:description" content="AI Agent &amp; Human collaboration platform for the AI-Driven Development Lifecycle"/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="256x256"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_246ccd __variable_4c40f6 antialiased"><div hidden=""><!--$--><!--/$--></div><script src="/_next/static/chunks/webpack-8e0df5e10bc6b98f.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[32277,[\"12079\",\"static/chunks/12079-0574108f1e035a69.js\",\"7177\",\"static/chunks/app/layout-482dee7dace72c88.js\"],\"LocaleProvider\"]\n3:I[77999,[],\"\"]\n4:I[29459,[],\"\"]\n5:I[12870,[],\"OutletBoundary\"]\n7:I[52955,[],\"AsyncMetadataOutlet\"]\n9:I[12870,[],\"ViewportBoundary\"]\nb:I[12870,[],\"MetadataBoundary\"]\nc:\"$Sreact.suspense\"\ne:I[34837,[],\"\"]\n:HL[\"/_next/static/media/22a5144ee8d83bca-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/f5271587012faf78-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/84edd78de243cde6.css\",\"style\"]\n:HL[\"/_next/static/css/ea3f196c7951f8d6.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"-kClYg0a7zvFcgkw_LnG7\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/84edd78de243cde6.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/ea3f196c7951f8d6.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_246ccd __variable_4c40f6 antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$L6\",[\"$\",\"$L7\",null,{\"promise\":\"$@8\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]],[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$c\",null,{\"fallback\":null,\"children\":\"$Ld\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\n"])</script><script>self.__next_f.push([1,"f:I[46691,[],\"IconMark\"]\n"])</script><script>self.__next_f.push([1,"8:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Chorus\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI Agent \u0026 Human collaboration platform for the AI-Driven Development Lifecycle\"}],[\"$\",\"meta\",\"2\",{\"property\":\"og:title\",\"content\":\"Chorus\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:description\",\"content\":\"AI Agent \u0026 Human collaboration platform for the AI-Driven Development Lifecycle\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:site_name\",\"content\":\"Chorus\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"7\",{\"name\":\"twitter:title\",\"content\":\"Chorus\"}],[\"$\",\"meta\",\"8\",{\"name\":\"twitter:description\",\"content\":\"AI Agent \u0026 Human collaboration platform for the AI-Driven Development Lifecycle\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"256x256\"}],[\"$\",\"$Lf\",\"10\",{}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:\"$8:metadata\"\n"])</script></body></html>
1
+ <!DOCTYPE html><!--uuDSoqvm_WWenZQ6dXPT7--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/22a5144ee8d83bca-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/f5271587012faf78-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/84edd78de243cde6.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/ea3f196c7951f8d6.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-8e0df5e10bc6b98f.js"/><script src="/_next/static/chunks/f40797d1-f5f1a98f6dea9bac.js" async=""></script><script src="/_next/static/chunks/65496-22ab1b8fb7a144f0.js" async=""></script><script src="/_next/static/chunks/main-app-ec87f2c9ef083ff1.js" async=""></script><script src="/_next/static/chunks/12079-0574108f1e035a69.js" async=""></script><script src="/_next/static/chunks/app/layout-482dee7dace72c88.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>Chorus</title><meta name="description" content="AI Agent &amp; Human collaboration platform for the AI-Driven Development Lifecycle"/><meta property="og:title" content="Chorus"/><meta property="og:description" content="AI Agent &amp; Human collaboration platform for the AI-Driven Development Lifecycle"/><meta property="og:site_name" content="Chorus"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Chorus"/><meta name="twitter:description" content="AI Agent &amp; Human collaboration platform for the AI-Driven Development Lifecycle"/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="256x256"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_246ccd __variable_4c40f6 antialiased"><div hidden=""><!--$--><!--/$--></div><script src="/_next/static/chunks/webpack-8e0df5e10bc6b98f.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[32277,[\"12079\",\"static/chunks/12079-0574108f1e035a69.js\",\"7177\",\"static/chunks/app/layout-482dee7dace72c88.js\"],\"LocaleProvider\"]\n3:I[77999,[],\"\"]\n4:I[29459,[],\"\"]\n5:I[12870,[],\"OutletBoundary\"]\n7:I[52955,[],\"AsyncMetadataOutlet\"]\n9:I[12870,[],\"ViewportBoundary\"]\nb:I[12870,[],\"MetadataBoundary\"]\nc:\"$Sreact.suspense\"\ne:I[34837,[],\"\"]\n:HL[\"/_next/static/media/22a5144ee8d83bca-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/f5271587012faf78-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/84edd78de243cde6.css\",\"style\"]\n:HL[\"/_next/static/css/ea3f196c7951f8d6.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"uuDSoqvm-WWenZQ6dXPT7\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/84edd78de243cde6.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/ea3f196c7951f8d6.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_246ccd __variable_4c40f6 antialiased\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$L6\",[\"$\",\"$L7\",null,{\"promise\":\"$@8\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]],[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$c\",null,{\"fallback\":null,\"children\":\"$Ld\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\n"])</script><script>self.__next_f.push([1,"f:I[46691,[],\"IconMark\"]\n"])</script><script>self.__next_f.push([1,"8:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Chorus\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI Agent \u0026 Human collaboration platform for the AI-Driven Development Lifecycle\"}],[\"$\",\"meta\",\"2\",{\"property\":\"og:title\",\"content\":\"Chorus\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:description\",\"content\":\"AI Agent \u0026 Human collaboration platform for the AI-Driven Development Lifecycle\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:site_name\",\"content\":\"Chorus\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"7\",{\"name\":\"twitter:title\",\"content\":\"Chorus\"}],[\"$\",\"meta\",\"8\",{\"name\":\"twitter:description\",\"content\":\"AI Agent \u0026 Human collaboration platform for the AI-Driven Development Lifecycle\"}],[\"$\",\"link\",\"9\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"256x256\"}],[\"$\",\"$Lf\",\"10\",{}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:\"$8:metadata\"\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-8e0df5e10bc6b98f.js" defer=""></script><script src="/_next/static/chunks/framework-b8dfed57aa9742af.js" defer=""></script><script src="/_next/static/chunks/main-fbadaf198cba7522.js" defer=""></script><script src="/_next/static/chunks/pages/_app-8e54c612c8c83750.js" defer=""></script><script src="/_next/static/chunks/pages/_error-165a1f19230c8aad.js" defer=""></script><script src="/_next/static/-kClYg0a7zvFcgkw_LnG7/_buildManifest.js" defer=""></script><script src="/_next/static/-kClYg0a7zvFcgkw_LnG7/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"-kClYg0a7zvFcgkw_LnG7","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-8e0df5e10bc6b98f.js" defer=""></script><script src="/_next/static/chunks/framework-b8dfed57aa9742af.js" defer=""></script><script src="/_next/static/chunks/main-fbadaf198cba7522.js" defer=""></script><script src="/_next/static/chunks/pages/_app-8e54c612c8c83750.js" defer=""></script><script src="/_next/static/chunks/pages/_error-165a1f19230c8aad.js" defer=""></script><script src="/_next/static/uuDSoqvm-WWenZQ6dXPT7/_buildManifest.js" defer=""></script><script src="/_next/static/uuDSoqvm-WWenZQ6dXPT7/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"uuDSoqvm-WWenZQ6dXPT7","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>