@chorus-aidlc/chorus 0.17.0 → 0.17.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (481) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-build-manifest.json +519 -519
  3. package/.next/standalone/.next/app-path-routes-manifest.json +44 -44
  4. package/.next/standalone/.next/build-manifest.json +6 -6
  5. package/.next/standalone/.next/prerender-manifest.json +45 -45
  6. package/.next/standalone/.next/react-loadable-manifest.json +1 -1
  7. package/.next/standalone/.next/required-server-files.json +4 -4
  8. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js +2 -2
  9. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page.js.nft.json +1 -1
  10. package/.next/standalone/.next/server/app/(dashboard)/project-groups/[uuid]/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js +2 -2
  12. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/activity/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js +2 -2
  15. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/[ideaUuid]/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js +2 -2
  18. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/dashboard/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js +2 -2
  21. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js +2 -2
  24. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/documents/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js +2 -2
  27. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/graph/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js +2 -2
  30. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js +2 -2
  33. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/new/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js +2 -2
  36. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/proposals/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js +2 -2
  39. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js +2 -2
  42. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/(dashboard)/projects/[uuid]/tasks/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js +3 -3
  45. package/.next/standalone/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js +2 -2
  48. package/.next/standalone/.next/server/app/(dashboard)/settings/page.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/(dashboard)/settings/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
  51. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/_not-found.html +2 -2
  53. package/.next/standalone/.next/server/app/_not-found.rsc +5 -5
  54. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page.js +2 -2
  55. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/admin/companies/[uuid]/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/.next/server/app/admin/companies/new/page.js +2 -2
  58. package/.next/standalone/.next/server/app/admin/companies/new/page.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/admin/companies/new/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/.next/server/app/admin/companies/new.html +2 -2
  61. package/.next/standalone/.next/server/app/admin/companies/new.rsc +7 -7
  62. package/.next/standalone/.next/server/app/admin/companies/page.js +2 -2
  63. package/.next/standalone/.next/server/app/admin/companies/page.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/admin/companies/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/.next/server/app/admin/companies.html +2 -2
  66. package/.next/standalone/.next/server/app/admin/companies.rsc +7 -7
  67. package/.next/standalone/.next/server/app/admin/page.js +2 -2
  68. package/.next/standalone/.next/server/app/admin/page.js.nft.json +1 -1
  69. package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
  70. package/.next/standalone/.next/server/app/admin.html +2 -2
  71. package/.next/standalone/.next/server/app/admin.rsc +7 -7
  72. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route.js +1 -1
  73. package/.next/standalone/.next/server/app/api/admin/companies/[uuid]/route_client-reference-manifest.js +1 -1
  74. package/.next/standalone/.next/server/app/api/admin/companies/route.js +1 -1
  75. package/.next/standalone/.next/server/app/api/admin/companies/route_client-reference-manifest.js +1 -1
  76. package/.next/standalone/.next/server/app/api/admin/login/route.js +1 -1
  77. package/.next/standalone/.next/server/app/api/admin/login/route_client-reference-manifest.js +1 -1
  78. package/.next/standalone/.next/server/app/api/admin/session/route.js +1 -1
  79. package/.next/standalone/.next/server/app/api/admin/session/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/.next/server/app/api/agent-connections/route.js +1 -1
  81. package/.next/standalone/.next/server/app/api/agent-connections/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/.next/server/app/api/agents/[uuid]/route.js +1 -1
  83. package/.next/standalone/.next/server/app/api/agents/[uuid]/route_client-reference-manifest.js +1 -1
  84. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route.js +1 -1
  85. package/.next/standalone/.next/server/app/api/agents/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  86. package/.next/standalone/.next/server/app/api/agents/route.js +1 -1
  87. package/.next/standalone/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
  88. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/api-keys/[uuid]/route_client-reference-manifest.js +1 -1
  90. package/.next/standalone/.next/server/app/api/api-keys/route.js +1 -1
  91. package/.next/standalone/.next/server/app/api/api-keys/route_client-reference-manifest.js +1 -1
  92. package/.next/standalone/.next/server/app/api/auth/callback/route.js +1 -1
  93. package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/.next/server/app/api/auth/check-default/route.js +1 -1
  95. package/.next/standalone/.next/server/app/api/auth/check-default/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/.next/server/app/api/auth/company-oidc/route.js +1 -1
  97. package/.next/standalone/.next/server/app/api/auth/company-oidc/route_client-reference-manifest.js +1 -1
  98. package/.next/standalone/.next/server/app/api/auth/default-login/route.js +1 -1
  99. package/.next/standalone/.next/server/app/api/auth/default-login/route_client-reference-manifest.js +1 -1
  100. package/.next/standalone/.next/server/app/api/auth/identify/route.js +1 -1
  101. package/.next/standalone/.next/server/app/api/auth/identify/route_client-reference-manifest.js +1 -1
  102. package/.next/standalone/.next/server/app/api/auth/logout/route.js +1 -1
  103. package/.next/standalone/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/api/auth/me/route.js +1 -1
  105. package/.next/standalone/.next/server/app/api/auth/me/route_client-reference-manifest.js +1 -1
  106. package/.next/standalone/.next/server/app/api/auth/sync-token/route.js +1 -1
  107. package/.next/standalone/.next/server/app/api/auth/sync-token/route_client-reference-manifest.js +1 -1
  108. package/.next/standalone/.next/server/app/api/comments/route.js +1 -1
  109. package/.next/standalone/.next/server/app/api/comments/route_client-reference-manifest.js +1 -1
  110. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route.js +1 -1
  111. package/.next/standalone/.next/server/app/api/daemon/connection-heartbeat/route_client-reference-manifest.js +1 -1
  112. package/.next/standalone/.next/server/app/api/daemon/control/route.js +1 -1
  113. package/.next/standalone/.next/server/app/api/daemon/control/route_client-reference-manifest.js +1 -1
  114. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route.js +1 -1
  115. package/.next/standalone/.next/server/app/api/daemon/directory-request/report/route_client-reference-manifest.js +1 -1
  116. package/.next/standalone/.next/server/app/api/daemon/execution-state/route.js +1 -1
  117. package/.next/standalone/.next/server/app/api/daemon/execution-state/route_client-reference-manifest.js +1 -1
  118. package/.next/standalone/.next/server/app/api/daemon/executions/route.js +1 -1
  119. package/.next/standalone/.next/server/app/api/daemon/executions/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route.js +1 -1
  121. package/.next/standalone/.next/server/app/api/daemon/pending-turns/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route.js +1 -1
  123. package/.next/standalone/.next/server/app/api/daemon/report-interrupt/route_client-reference-manifest.js +1 -1
  124. package/.next/standalone/.next/server/app/api/daemon/resume/route.js +1 -1
  125. package/.next/standalone/.next/server/app/api/daemon/resume/route_client-reference-manifest.js +1 -1
  126. package/.next/standalone/.next/server/app/api/daemon/transcript/route.js +1 -1
  127. package/.next/standalone/.next/server/app/api/daemon/transcript/route_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route.js +1 -1
  129. package/.next/standalone/.next/server/app/api/daemon/turn-advance/route_client-reference-manifest.js +1 -1
  130. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route.js +1 -1
  131. package/.next/standalone/.next/server/app/api/daemon-directory-requests/[uuid]/route_client-reference-manifest.js +1 -1
  132. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route.js +1 -1
  133. package/.next/standalone/.next/server/app/api/daemon-directory-requests/route_client-reference-manifest.js +1 -1
  134. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route.js +1 -1
  135. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/instruction/route_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route.js +1 -1
  137. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/repoint/route_client-reference-manifest.js +1 -1
  138. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route.js +1 -1
  139. package/.next/standalone/.next/server/app/api/daemon-sessions/[sessionUuid]/route_client-reference-manifest.js +1 -1
  140. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route.js +1 -1
  141. package/.next/standalone/.next/server/app/api/daemon-sessions/ad-hoc/route_client-reference-manifest.js +1 -1
  142. package/.next/standalone/.next/server/app/api/daemon-sessions/route.js +1 -1
  143. package/.next/standalone/.next/server/app/api/daemon-sessions/route_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/api/documents/[uuid]/route.js +1 -1
  145. package/.next/standalone/.next/server/app/api/documents/[uuid]/route_client-reference-manifest.js +1 -1
  146. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route.js +1 -1
  147. package/.next/standalone/.next/server/app/api/entities/[type]/[uuid]/root-idea/route_client-reference-manifest.js +1 -1
  148. package/.next/standalone/.next/server/app/api/events/notifications/route.js +1 -1
  149. package/.next/standalone/.next/server/app/api/events/notifications/route_client-reference-manifest.js +1 -1
  150. package/.next/standalone/.next/server/app/api/events/route.js +14 -6
  151. package/.next/standalone/.next/server/app/api/events/route_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/api/health/route.js +1 -1
  153. package/.next/standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  154. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route.js +1 -1
  155. package/.next/standalone/.next/server/app/api/ideas/[uuid]/claim/route_client-reference-manifest.js +1 -1
  156. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route.js +1 -1
  157. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/preview/route_client-reference-manifest.js +1 -1
  158. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route.js +1 -1
  159. package/.next/standalone/.next/server/app/api/ideas/[uuid]/move/route_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route.js +1 -1
  161. package/.next/standalone/.next/server/app/api/ideas/[uuid]/parent/route_client-reference-manifest.js +1 -1
  162. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route.js +1 -1
  163. package/.next/standalone/.next/server/app/api/ideas/[uuid]/release/route_client-reference-manifest.js +1 -1
  164. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route.js +1 -1
  165. package/.next/standalone/.next/server/app/api/ideas/[uuid]/route_client-reference-manifest.js +1 -1
  166. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route.js +1 -1
  167. package/.next/standalone/.next/server/app/api/ideas/[uuid]/wake-preview/route_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/api/ideas/conversational/route.js +1 -1
  169. package/.next/standalone/.next/server/app/api/ideas/conversational/route_client-reference-manifest.js +1 -1
  170. package/.next/standalone/.next/server/app/api/mcp/route.js +4 -4
  171. package/.next/standalone/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -1
  172. package/.next/standalone/.next/server/app/api/me/assignments/route.js +1 -1
  173. package/.next/standalone/.next/server/app/api/me/assignments/route_client-reference-manifest.js +1 -1
  174. package/.next/standalone/.next/server/app/api/mentionables/route.js +1 -1
  175. package/.next/standalone/.next/server/app/api/mentionables/route_client-reference-manifest.js +1 -1
  176. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route.js +1 -1
  177. package/.next/standalone/.next/server/app/api/notifications/[uuid]/archive/route_client-reference-manifest.js +1 -1
  178. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route.js +1 -1
  179. package/.next/standalone/.next/server/app/api/notifications/[uuid]/read/route_client-reference-manifest.js +1 -1
  180. package/.next/standalone/.next/server/app/api/notifications/preferences/route.js +1 -1
  181. package/.next/standalone/.next/server/app/api/notifications/preferences/route_client-reference-manifest.js +1 -1
  182. package/.next/standalone/.next/server/app/api/notifications/read-all/route.js +1 -1
  183. package/.next/standalone/.next/server/app/api/notifications/read-all/route_client-reference-manifest.js +1 -1
  184. package/.next/standalone/.next/server/app/api/notifications/route.js +1 -1
  185. package/.next/standalone/.next/server/app/api/notifications/route_client-reference-manifest.js +1 -1
  186. package/.next/standalone/.next/server/app/api/notifications/unread-count/route.js +1 -1
  187. package/.next/standalone/.next/server/app/api/notifications/unread-count/route_client-reference-manifest.js +1 -1
  188. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route.js +1 -1
  189. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/dashboard/route_client-reference-manifest.js +1 -1
  190. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route.js +1 -1
  191. package/.next/standalone/.next/server/app/api/project-groups/[uuid]/route_client-reference-manifest.js +1 -1
  192. package/.next/standalone/.next/server/app/api/project-groups/route.js +1 -1
  193. package/.next/standalone/.next/server/app/api/project-groups/route_client-reference-manifest.js +1 -1
  194. package/.next/standalone/.next/server/app/api/project-visits/pin/route.js +1 -1
  195. package/.next/standalone/.next/server/app/api/project-visits/pin/route_client-reference-manifest.js +1 -1
  196. package/.next/standalone/.next/server/app/api/project-visits/route.js +1 -1
  197. package/.next/standalone/.next/server/app/api/project-visits/route_client-reference-manifest.js +1 -1
  198. package/.next/standalone/.next/server/app/api/project-visits/visit/route.js +1 -1
  199. package/.next/standalone/.next/server/app/api/project-visits/visit/route_client-reference-manifest.js +1 -1
  200. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route.js +1 -1
  201. package/.next/standalone/.next/server/app/api/projects/[uuid]/activity/route_client-reference-manifest.js +1 -1
  202. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route.js +1 -1
  203. package/.next/standalone/.next/server/app/api/projects/[uuid]/agent-cwds/route_client-reference-manifest.js +1 -1
  204. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route.js +1 -1
  205. package/.next/standalone/.next/server/app/api/projects/[uuid]/available/route_client-reference-manifest.js +1 -1
  206. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route.js +1 -1
  207. package/.next/standalone/.next/server/app/api/projects/[uuid]/documents/route_client-reference-manifest.js +1 -1
  208. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route.js +1 -1
  209. package/.next/standalone/.next/server/app/api/projects/[uuid]/group/route_client-reference-manifest.js +1 -1
  210. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route.js +1 -1
  211. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/route_client-reference-manifest.js +1 -1
  212. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route.js +1 -1
  213. package/.next/standalone/.next/server/app/api/projects/[uuid]/ideas/tracker/route_client-reference-manifest.js +1 -1
  214. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route.js +1 -1
  215. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/[proposalUuid]/validate/route_client-reference-manifest.js +1 -1
  216. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route.js +1 -1
  217. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/route_client-reference-manifest.js +1 -1
  218. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route.js +1 -1
  219. package/.next/standalone/.next/server/app/api/projects/[uuid]/proposals/summary/route_client-reference-manifest.js +1 -1
  220. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route.js +1 -1
  221. package/.next/standalone/.next/server/app/api/projects/[uuid]/resource-graph/route_client-reference-manifest.js +1 -1
  222. package/.next/standalone/.next/server/app/api/projects/[uuid]/route.js +1 -1
  223. package/.next/standalone/.next/server/app/api/projects/[uuid]/route_client-reference-manifest.js +1 -1
  224. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route.js +1 -1
  225. package/.next/standalone/.next/server/app/api/projects/[uuid]/stats/route_client-reference-manifest.js +1 -1
  226. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route.js +1 -1
  227. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/dependencies/route_client-reference-manifest.js +1 -1
  228. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route.js +1 -1
  229. package/.next/standalone/.next/server/app/api/projects/[uuid]/tasks/route_client-reference-manifest.js +1 -1
  230. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route.js +1 -1
  231. package/.next/standalone/.next/server/app/api/projects/agent-cwd-options/route_client-reference-manifest.js +1 -1
  232. package/.next/standalone/.next/server/app/api/projects/route.js +1 -1
  233. package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  234. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route.js +1 -1
  235. package/.next/standalone/.next/server/app/api/proposals/[uuid]/approve/route_client-reference-manifest.js +1 -1
  236. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route.js +1 -1
  237. package/.next/standalone/.next/server/app/api/proposals/[uuid]/close/route_client-reference-manifest.js +1 -1
  238. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route.js +1 -1
  239. package/.next/standalone/.next/server/app/api/proposals/[uuid]/reject/route_client-reference-manifest.js +1 -1
  240. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route.js +1 -1
  241. package/.next/standalone/.next/server/app/api/proposals/[uuid]/revoke/route_client-reference-manifest.js +1 -1
  242. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route.js +1 -1
  243. package/.next/standalone/.next/server/app/api/proposals/[uuid]/route_client-reference-manifest.js +1 -1
  244. package/.next/standalone/.next/server/app/api/references/[uuid]/route.js +1 -1
  245. package/.next/standalone/.next/server/app/api/references/[uuid]/route_client-reference-manifest.js +1 -1
  246. package/.next/standalone/.next/server/app/api/references/route.js +1 -1
  247. package/.next/standalone/.next/server/app/api/references/route_client-reference-manifest.js +1 -1
  248. package/.next/standalone/.next/server/app/api/search/route.js +1 -1
  249. package/.next/standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  250. package/.next/standalone/.next/server/app/api/session/route.js +1 -1
  251. package/.next/standalone/.next/server/app/api/session/route_client-reference-manifest.js +1 -1
  252. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route.js +1 -1
  253. package/.next/standalone/.next/server/app/api/sessions/[uuid]/route_client-reference-manifest.js +1 -1
  254. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route.js +1 -1
  255. package/.next/standalone/.next/server/app/api/tasks/[uuid]/claim/route_client-reference-manifest.js +1 -1
  256. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route.js +1 -1
  257. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/[dependsOnUuid]/route_client-reference-manifest.js +1 -1
  258. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route.js +1 -1
  259. package/.next/standalone/.next/server/app/api/tasks/[uuid]/dependencies/route_client-reference-manifest.js +1 -1
  260. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route.js +1 -1
  261. package/.next/standalone/.next/server/app/api/tasks/[uuid]/release/route_client-reference-manifest.js +1 -1
  262. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route.js +1 -1
  263. package/.next/standalone/.next/server/app/api/tasks/[uuid]/route_client-reference-manifest.js +1 -1
  264. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route.js +1 -1
  265. package/.next/standalone/.next/server/app/api/tasks/[uuid]/sessions/route_client-reference-manifest.js +1 -1
  266. package/.next/standalone/.next/server/app/favicon.ico/route.js +1 -1
  267. package/.next/standalone/.next/server/app/index.html +2 -2
  268. package/.next/standalone/.next/server/app/index.rsc +6 -6
  269. package/.next/standalone/.next/server/app/login/admin/page.js +2 -2
  270. package/.next/standalone/.next/server/app/login/admin/page.js.nft.json +1 -1
  271. package/.next/standalone/.next/server/app/login/admin/page_client-reference-manifest.js +1 -1
  272. package/.next/standalone/.next/server/app/login/admin.html +2 -2
  273. package/.next/standalone/.next/server/app/login/admin.rsc +6 -6
  274. package/.next/standalone/.next/server/app/login/callback/page.js +2 -2
  275. package/.next/standalone/.next/server/app/login/callback/page.js.nft.json +1 -1
  276. package/.next/standalone/.next/server/app/login/callback/page_client-reference-manifest.js +1 -1
  277. package/.next/standalone/.next/server/app/login/callback.html +2 -2
  278. package/.next/standalone/.next/server/app/login/callback.rsc +6 -6
  279. package/.next/standalone/.next/server/app/login/page.js +2 -2
  280. package/.next/standalone/.next/server/app/login/page.js.nft.json +1 -1
  281. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  282. package/.next/standalone/.next/server/app/login/pick-workspace/page.js +2 -2
  283. package/.next/standalone/.next/server/app/login/pick-workspace/page.js.nft.json +1 -1
  284. package/.next/standalone/.next/server/app/login/pick-workspace/page_client-reference-manifest.js +1 -1
  285. package/.next/standalone/.next/server/app/login/pick-workspace.html +2 -2
  286. package/.next/standalone/.next/server/app/login/pick-workspace.rsc +6 -6
  287. package/.next/standalone/.next/server/app/login.html +2 -2
  288. package/.next/standalone/.next/server/app/login.rsc +6 -6
  289. package/.next/standalone/.next/server/app/onboarding/page.js +2 -2
  290. package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
  291. package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  292. package/.next/standalone/.next/server/app/onboarding.html +2 -2
  293. package/.next/standalone/.next/server/app/onboarding.rsc +6 -6
  294. package/.next/standalone/.next/server/app/page.js +2 -2
  295. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  296. package/.next/standalone/.next/server/app/projects.html +2 -2
  297. package/.next/standalone/.next/server/app/projects.rsc +7 -7
  298. package/.next/standalone/.next/server/app/settings.html +2 -2
  299. package/.next/standalone/.next/server/app/settings.rsc +7 -7
  300. package/.next/standalone/.next/server/app-paths-manifest.json +44 -44
  301. package/.next/standalone/.next/server/chunks/1114.js +1 -1
  302. package/.next/standalone/.next/server/chunks/1267.js +1 -0
  303. package/.next/standalone/.next/server/chunks/1318.js +1 -1
  304. package/.next/standalone/.next/server/chunks/1559.js +2 -2
  305. package/.next/standalone/.next/server/chunks/{3831.js → 2536.js} +6 -4
  306. package/.next/standalone/.next/server/chunks/2570.js +2 -2
  307. package/.next/standalone/.next/server/chunks/2572.js +1 -1
  308. package/.next/standalone/.next/server/chunks/2940.js +1 -1
  309. package/.next/standalone/.next/server/chunks/2953.js +1 -0
  310. package/.next/standalone/.next/server/chunks/2961.js +1 -1
  311. package/.next/standalone/.next/server/chunks/3197.js +1 -1
  312. package/.next/standalone/.next/server/chunks/378.js +4 -4
  313. package/.next/standalone/.next/server/chunks/4827.js +1 -1
  314. package/.next/standalone/.next/server/chunks/5162.js +1 -0
  315. package/.next/standalone/.next/server/chunks/5245.js +1 -1
  316. package/.next/standalone/.next/server/chunks/{5706.js → 6080.js} +1 -1
  317. package/.next/standalone/.next/server/chunks/6113.js +1 -1
  318. package/.next/standalone/.next/server/chunks/6145.js +1 -0
  319. package/.next/standalone/.next/server/chunks/6506.js +1 -1
  320. package/.next/standalone/.next/server/chunks/6515.js +2 -2
  321. package/.next/standalone/.next/server/chunks/6689.js +1 -0
  322. package/.next/standalone/.next/server/chunks/6753.js +3 -3
  323. package/.next/standalone/.next/server/chunks/679.js +1 -1
  324. package/.next/standalone/.next/server/chunks/7368.js +1 -1
  325. package/.next/standalone/.next/server/chunks/7530.js +1 -1
  326. package/.next/standalone/.next/server/chunks/8454.js +1 -1
  327. package/.next/standalone/.next/server/chunks/920.js +1 -1
  328. package/.next/standalone/.next/server/chunks/9213.js +1 -1
  329. package/.next/standalone/.next/server/chunks/9378.js +1 -1
  330. package/.next/standalone/.next/server/chunks/9667.js +1 -0
  331. package/.next/standalone/.next/server/chunks/9931.js +1 -0
  332. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  333. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  334. package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  335. package/.next/standalone/.next/server/next-font-manifest.js +1 -1
  336. package/.next/standalone/.next/server/next-font-manifest.json +1 -1
  337. package/.next/standalone/.next/server/pages/404.html +2 -2
  338. package/.next/standalone/.next/server/pages/500.html +1 -1
  339. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  340. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  341. package/.next/standalone/.next/server/src/middleware.js +2 -2
  342. package/.next/standalone/.next/static/chunks/{11595.bbe40924d18958bf.js → 11595.b81c0bf7732c3b62.js} +1 -1
  343. package/.next/standalone/.next/static/chunks/24808-e3d95efc7ec039c5.js +1 -0
  344. package/.next/standalone/.next/static/chunks/{31308-bb4a97b3f39c22dd.js → 31308-32614efb88305738.js} +1 -1
  345. package/.next/standalone/.next/static/chunks/{33456.5499eb8e892b110a.js → 33456.cfc9aa607a62e879.js} +1 -1
  346. package/.next/standalone/.next/static/chunks/38366.fb931fab9c756890.js +1 -0
  347. package/.next/standalone/.next/static/chunks/{4860.be77046fb2b3a2bd.js → 4860.41351a823cf400e4.js} +1 -1
  348. package/.next/standalone/.next/static/chunks/51468-194d894e563580dd.js +1 -0
  349. package/.next/standalone/.next/static/chunks/61570-527701d072d00a24.js +1 -0
  350. package/.next/standalone/.next/static/chunks/65066-6da35d5cb080c7f5.js +1 -0
  351. package/.next/standalone/.next/static/chunks/{65096-f756aac39efad7a3.js → 65096-8295f53f97c40d47.js} +1 -1
  352. package/.next/standalone/.next/static/chunks/72875-0987d09cd8406614.js +1 -0
  353. package/.next/standalone/.next/static/chunks/75936-79860953212592fd.js +1 -0
  354. package/.next/standalone/.next/static/chunks/{78917-a8a8dff98857c045.js → 79919-e02963faee5cb563.js} +1 -1
  355. package/.next/standalone/.next/static/chunks/94643-e8f5fa25e2340cc8.js +1 -0
  356. package/.next/standalone/.next/static/chunks/{99373.111493dc260a2a04.js → 99373.633f7c25e64bcdac.js} +1 -1
  357. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-bb5ef11586301c72.js +1 -0
  358. package/.next/standalone/.next/static/chunks/app/(dashboard)/project-groups/[uuid]/{page-974781e4886529f8.js → page-82e90e222d6bc547.js} +1 -1
  359. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/activity/page-f1eccb50d38d8982.js +1 -0
  360. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-eecb38fa4b8eb4e8.js +1 -0
  361. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-725373108da1b08c.js +1 -0
  362. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-cd7ec77596304a07.js +1 -0
  363. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-97a9e6f949002004.js +1 -0
  364. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-7d2f4713697eb0a7.js +1 -0
  365. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-cec15f4b835d34fc.js +1 -0
  366. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-0225f87552b977d9.js +1 -0
  367. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/[taskUuid]/{page-15bb6e1696668512.js → page-4ee117e690fda56f.js} +1 -1
  368. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/tasks/{page-2bea97214b1595cc.js → page-7fbc46dfb7b22bd3.js} +1 -1
  369. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/page-069c9738e516436b.js +1 -0
  370. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-8b30678a58e7b2ee.js +1 -0
  371. package/.next/standalone/.next/static/chunks/app/_not-found/{page-166b410da84336d4.js → page-b9d672df79b35e87.js} +1 -1
  372. package/.next/standalone/.next/static/chunks/app/admin/companies/[uuid]/{page-b2458ed001dc8177.js → page-56118c51122ad639.js} +1 -1
  373. package/.next/standalone/.next/static/chunks/app/admin/companies/new/page-4e20deb41357171c.js +1 -0
  374. package/.next/standalone/.next/static/chunks/app/admin/companies/page-0632f245bf9c1c27.js +1 -0
  375. package/.next/standalone/.next/static/chunks/app/admin/layout-725ab2331c642f36.js +1 -0
  376. package/.next/standalone/.next/static/chunks/app/admin/{page-0cc8cf246db43e5d.js → page-5a0271dd2b8b36fd.js} +1 -1
  377. package/.next/standalone/.next/static/chunks/app/{layout-985054e973f66999.js → layout-098288cec4490c5d.js} +1 -1
  378. package/.next/standalone/.next/static/chunks/app/login/admin/page-c8e40259e5d3d9e0.js +1 -0
  379. package/.next/standalone/.next/static/chunks/app/login/callback/page-527652f6c1a39274.js +1 -0
  380. package/.next/standalone/.next/static/chunks/app/login/{page-9b34375d1b5579d7.js → page-0a16a64855b771ef.js} +1 -1
  381. package/.next/standalone/.next/static/chunks/app/login/pick-workspace/page-47375a86e2375202.js +1 -0
  382. package/.next/standalone/.next/static/chunks/app/onboarding/{page-540da64d7ba16dc7.js → page-4fce966dc96d4ff1.js} +1 -1
  383. package/.next/standalone/.next/static/chunks/app/{page-79e2d32e69788bd2.js → page-91dbf7dfd85f805f.js} +1 -1
  384. package/.next/standalone/.next/static/chunks/main-app-1a7cacecc8900a4d.js +1 -0
  385. package/.next/standalone/.next/static/chunks/{webpack-7cbb3ba6792f1fb3.js → webpack-1bfc783412a06fc5.js} +1 -1
  386. package/.next/standalone/.next/static/css/1d9cf83f50b6db00.css +1 -0
  387. package/.next/standalone/package.json +2 -1
  388. package/.next/standalone/public/chorus-plugin/.claude-plugin/plugin.json +1 -1
  389. package/.next/standalone/public/chorus-plugin/bin/chorus-api.sh +1 -1
  390. package/.next/standalone/public/chorus-plugin/skills/brainstorm/SKILL.md +1 -1
  391. package/.next/standalone/public/chorus-plugin/skills/chorus/SKILL.md +2 -2
  392. package/.next/standalone/public/chorus-plugin/skills/chorus-cli/SKILL.md +11 -1
  393. package/.next/standalone/public/chorus-plugin/skills/develop/SKILL.md +2 -2
  394. package/.next/standalone/public/chorus-plugin/skills/docs/SKILL.md +1 -1
  395. package/.next/standalone/public/chorus-plugin/skills/idea/SKILL.md +2 -2
  396. package/.next/standalone/public/chorus-plugin/skills/openspec-aware/SKILL.md +1 -1
  397. package/.next/standalone/public/chorus-plugin/skills/orchestrate/SKILL.md +1 -1
  398. package/.next/standalone/public/chorus-plugin/skills/proposal/SKILL.md +1 -1
  399. package/.next/standalone/public/chorus-plugin/skills/quick-dev/SKILL.md +1 -1
  400. package/.next/standalone/public/chorus-plugin/skills/review/SKILL.md +1 -1
  401. package/.next/standalone/public/chorus-plugin/skills/yolo/SKILL.md +3 -3
  402. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-brainstorm/SKILL.md +1 -1
  403. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-cli/SKILL.md +11 -1
  404. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-develop/SKILL.md +2 -2
  405. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-docs/SKILL.md +1 -1
  406. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-idea/SKILL.md +2 -2
  407. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-openspec-aware/SKILL.md +1 -1
  408. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-orchestrate/SKILL.md +1 -1
  409. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-proposal/SKILL.md +1 -1
  410. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-quick-dev/SKILL.md +1 -1
  411. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-review/SKILL.md +1 -1
  412. package/.next/standalone/public/kiro-plugin/.kiro/skills/chorus-yolo/SKILL.md +3 -3
  413. package/.next/standalone/public/kiro-plugin/.kiro/steering/chorus.md +1 -1
  414. package/.next/standalone/public/kiro-plugin/bin/chorus-api.sh +1 -1
  415. package/.next/standalone/public/kiro-plugin/manifest.txt +1 -0
  416. package/.next/standalone/public/skill/chorus/SKILL.md +1 -1
  417. package/.next/standalone/public/skill/develop-chorus/SKILL.md +1 -1
  418. package/.next/standalone/public/skill/idea-chorus/SKILL.md +1 -1
  419. package/.next/standalone/public/skill/yolo-chorus/SKILL.md +2 -2
  420. package/.next/standalone/server.js +1 -1
  421. package/README.ja.md +5 -1
  422. package/README.ko.md +5 -1
  423. package/README.md +5 -1
  424. package/README.zh.md +5 -1
  425. package/cli/agent-backend-prompt.mjs +5 -0
  426. package/cli/agent-launcher.mjs +341 -0
  427. package/cli/agents.mjs +12 -0
  428. package/cli/claude-spawner.mjs +52 -15
  429. package/cli/credentials.mjs +107 -1
  430. package/cli/daemon-agent.mjs +4 -2
  431. package/cli/init/adapters.mjs +5 -5
  432. package/cli/init/agent-type-map.mjs +5 -5
  433. package/cli/init/contracts.mjs +2 -0
  434. package/cli/init/install-methods.mjs +206 -31
  435. package/cli/init/pi-mcp-config.mjs +166 -0
  436. package/cli/init/steps/credential-seed.mjs +56 -3
  437. package/cli/init-args.mjs +4 -1
  438. package/cli/init.mjs +47 -2
  439. package/cli/kiro-spawner.mjs +1 -0
  440. package/cli/pi-spawner.mjs +286 -0
  441. package/cli/spawner-select.mjs +7 -1
  442. package/cli/upload-hooks.mjs +25 -1
  443. package/cli/waker.mjs +89 -38
  444. package/package.json +2 -1
  445. package/.next/standalone/.env +0 -18
  446. package/.next/standalone/.next/server/chunks/1437.js +0 -1
  447. package/.next/standalone/.next/server/chunks/3045.js +0 -1
  448. package/.next/standalone/.next/server/chunks/4545.js +0 -1
  449. package/.next/standalone/.next/server/chunks/6207.js +0 -1
  450. package/.next/standalone/.next/server/chunks/7091.js +0 -1
  451. package/.next/standalone/.next/server/chunks/9449.js +0 -1
  452. package/.next/standalone/.next/server/chunks/9458.js +0 -1
  453. package/.next/standalone/.next/static/chunks/18139-e6ef4b5869593f8e.js +0 -1
  454. package/.next/standalone/.next/static/chunks/28856-ef2cb58fbd404ef9.js +0 -1
  455. package/.next/standalone/.next/static/chunks/38366.e6e0132b8ba873d6.js +0 -1
  456. package/.next/standalone/.next/static/chunks/66873-e3be53f41b3f2255.js +0 -1
  457. package/.next/standalone/.next/static/chunks/70303-aec3d52ad87602a3.js +0 -1
  458. package/.next/standalone/.next/static/chunks/76201-83b26515f85ce37c.js +0 -1
  459. package/.next/standalone/.next/static/chunks/94643-ffa140f765c73daf.js +0 -1
  460. package/.next/standalone/.next/static/chunks/97663-9c3ae4fd60b353db.js +0 -1
  461. package/.next/standalone/.next/static/chunks/app/(dashboard)/layout-40fe7d026c5a7c6d.js +0 -1
  462. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/activity/page-20632dbec5a6dbc0.js +0 -1
  463. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/dashboard/page-87d4d0fe90fca28c.js +0 -1
  464. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/[documentUuid]/page-1206abaee85dc915.js +0 -1
  465. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/documents/page-474e494097c8945f.js +0 -1
  466. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/graph/page-e902b19328092ccf.js +0 -1
  467. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/[proposalUuid]/page-f273288c3530aa0f.js +0 -1
  468. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/new/page-6568a7b08bf9a54b.js +0 -1
  469. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/[uuid]/proposals/page-fbd3c27b68666234.js +0 -1
  470. package/.next/standalone/.next/static/chunks/app/(dashboard)/projects/page-9d79e285b6fd2f8d.js +0 -1
  471. package/.next/standalone/.next/static/chunks/app/(dashboard)/settings/page-2bf7ceee62b574c7.js +0 -1
  472. package/.next/standalone/.next/static/chunks/app/admin/companies/new/page-e35dce890d6dfd8d.js +0 -1
  473. package/.next/standalone/.next/static/chunks/app/admin/companies/page-ef720c2b0856166c.js +0 -1
  474. package/.next/standalone/.next/static/chunks/app/admin/layout-c66ce38cbd88982a.js +0 -1
  475. package/.next/standalone/.next/static/chunks/app/login/admin/page-f032b6db3bd20a2c.js +0 -1
  476. package/.next/standalone/.next/static/chunks/app/login/callback/page-ec23211506e688ee.js +0 -1
  477. package/.next/standalone/.next/static/chunks/app/login/pick-workspace/page-7e4664af2c787d08.js +0 -1
  478. package/.next/standalone/.next/static/chunks/main-app-ec87f2c9ef083ff1.js +0 -1
  479. package/.next/standalone/.next/static/css/5f52bd39b284ccdf.css +0 -1
  480. /package/.next/standalone/.next/static/{0spgxl3lP26Fl1otd1D7R → WSN4XeA1kUCI6CeEHcaT_}/_buildManifest.js +0 -0
  481. /package/.next/standalone/.next/static/{0spgxl3lP26Fl1otd1D7R → WSN4XeA1kUCI6CeEHcaT_}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[72866],{5425:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},14554:(e,t,a)=>{"use strict";a.d(t,{p:()=>i});var s=a(90508);a(1856);var r=a(24377);function i(e){let{className:t,type:a,...i}=e;return(0,s.jsx)("input",{type:a,"data-slot":"input",className:(0,r.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...i})}},19811:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]])},22922:(e,t,a)=>{"use strict";a.d(t,{$:()=>l});var s=a(90508);a(1856);var r=a(49499),i=a(54154),n=a(24377);let d=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:a="default",size:r="default",asChild:l=!1,...o}=e,c=l?i.bL:"button";return(0,s.jsx)(c,{"data-slot":"button","data-variant":a,"data-size":r,className:(0,n.cn)(d({variant:a,size:r,className:t})),...o})}},24377:(e,t,a)=>{"use strict";a.d(t,{cn:()=>i});var s=a(49251),r=a(58849);function i(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,r.QP)((0,s.$)(t))}},38106:(e,t,a)=>{"use strict";function s(e){let t="string"==typeof e?new Date(e):e;if(isNaN(t.getTime()))return"";let a=t.getFullYear(),s=String(t.getMonth()+1).padStart(2,"0"),r=String(t.getDate()).padStart(2,"0"),i=String(t.getHours()).padStart(2,"0"),n=String(t.getMinutes()).padStart(2,"0");return"".concat(a,"-").concat(s,"-").concat(r," ").concat(i,":").concat(n)}function r(e,t){let a="string"==typeof e?new Date(e):e;return isNaN(a.getTime())?"":a.toLocaleDateString(t,{month:"short",day:"numeric"})}a.d(t,{r:()=>s,s:()=>r})},48416:(e,t,a)=>{"use strict";a.d(t,{BT:()=>l,Wu:()=>o,ZB:()=>d,Zp:()=>i,aR:()=>n});var s=a(90508);a(1856);var r=a(24377);function i(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function n(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function d(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...a})}function l(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...a})}function o(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...a})}},50932:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},57731:(e,t,a)=>{"use strict";a.d(t,{E:()=>l});var s=a(90508);a(1856);var r=a(49499),i=a(54154),n=a(24377);let d=(0,r.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function l(e){let{className:t,variant:a="default",asChild:r=!1,...l}=e,o=r?i.bL:"span";return(0,s.jsx)(o,{"data-slot":"badge","data-variant":a,className:(0,n.cn)(d({variant:a}),t),...l})}},58057:(e,t,a)=>{"use strict";a.r(t),a.d(t,{Label:()=>n,Root:()=>d});var s=a(1856),r=a(93367),i=a(90508),n=s.forwardRef((e,t)=>(0,i.jsx)(r.sG.label,{...e,ref:t,onMouseDown:t=>{var a;t.target.closest("button, input, select, textarea")||(null==(a=e.onMouseDown)||a.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));n.displayName="Label";var d=n},70633:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},83942:(e,t,a)=>{Promise.resolve().then(a.bind(a,94377))},85619:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]])},88064:(e,t,a)=>{"use strict";a.d(t,{J:()=>n});var s=a(90508);a(1856);var r=a(58057),i=a(24377);function n(e){let{className:t,...a}=e;return(0,s.jsx)(r.Root,{"data-slot":"label",className:(0,i.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...a})}},91814:(e,t,a)=>{"use strict";a.d(t,{r:()=>i});var s=a(27290),r=a(1856);function i(){let e=(0,s.r)({delay:120});return(0,r.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},93367:(e,t,a)=>{"use strict";a.d(t,{bL:()=>o,hO:()=>l,sG:()=>d});var s=a(1856),r=a(38129),i=a(54154),n=a(90508),d=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let a=(0,i.TL)(`Primitive.${t}`),r=s.forwardRef((e,s)=>{let{asChild:r,...i}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,n.jsx)(r?a:t,{...i,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function l(e,t){e&&r.flushSync(()=>e.dispatchEvent(t))}var o=d},94152:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]])},94377:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>N});var s=a(90508),r=a(1856),i=a(91814),n=a(12790),d=a.n(n),l=a(39268),o=a(22922),c=a(14554),u=a(88064),m=a(57731),h=a(48416),x=a(70633),v=a(97413),p=a(50932),g=a(5425),f=a(94152),b=a(19811),y=a(85619),j=a(38106);function N(e){let{params:t}=e,a=(0,l.c)(),{uuid:n}=(0,r.use)(t),N=(0,i.r)(),[k,w]=(0,r.useState)(null),[M,A]=(0,r.useState)(!0),[C,S]=(0,r.useState)(!1),[z,D]=(0,r.useState)(""),[E,I]=(0,r.useState)(""),[T,Z]=(0,r.useState)(""),[_,H]=(0,r.useState)(""),[F,L]=(0,r.useState)(""),[P,R]=(0,r.useState)("");(0,r.useEffect)(()=>{$()},[n]);let $=async()=>{try{let t=await fetch("/api/admin/companies/".concat(n)),s=await t.json();if(s.success){let e=s.data;w(e),Z(e.name),H(e.emailDomains.join(", ")),L(e.oidcIssuer||""),R(e.oidcClientId||"")}else{var e;D((null==(e=s.error)?void 0:e.message)||a("admin.companyNotFound"))}}catch(e){D(a("admin.failedToLoad"))}finally{A(!1)}},B=async e=>{e.preventDefault(),D(""),I(""),S(!0);try{let e=_.split(",").map(e=>e.trim()).filter(e=>e.length>0),s=!!(F.trim()&&P.trim()),r=await fetch("/api/admin/companies/".concat(n),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:T.trim(),emailDomains:e,oidcIssuer:F.trim()||null,oidcClientId:P.trim()||null,oidcEnabled:s})}),i=await r.json();if(!i.success){var t;D((null==(t=i.error)?void 0:t.message)||a("admin.failedToUpdate"));return}I(a("admin.companyUpdated")),$()}catch(e){D(a("admin.networkError"))}finally{S(!1)}},V=async()=>{if(confirm(a("admin.deleteCompanyConfirmFull",{name:(null==k?void 0:k.name)||""})))try{let t=await fetch("/api/admin/companies/".concat(n),{method:"DELETE"});if(t.ok)N.push("/admin/companies");else{var e;let s=await t.json();D((null==(e=s.error)?void 0:e.message)||a("admin.failedToDelete"))}}catch(e){D(a("admin.networkError"))}};return M?(0,s.jsx)("div",{className:"flex min-h-full items-center justify-center bg-background",children:(0,s.jsx)("div",{className:"text-muted-foreground",children:a("common.loading")})}):k?(0,s.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,s.jsx)("div",{className:"mb-6",children:(0,s.jsx)(d(),{href:"/admin/companies",children:(0,s.jsxs)(o.$,{variant:"ghost",size:"sm",children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4"}),a("admin.backToCompanies")]})})}),(0,s.jsxs)("div",{className:"mb-6 flex items-start justify-between",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:k.name}),(0,s.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:a("admin.createdOn",{date:(0,j.r)(k.createdAt)})})]}),(0,s.jsxs)(o.$,{variant:"destructive",onClick:V,children:[(0,s.jsx)(v.A,{className:"mr-2 h-4 w-4"}),a("admin.deleteCompany")]})]}),(0,s.jsxs)("div",{className:"mb-6 grid gap-4 md:grid-cols-3",children:[(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{className:"pb-2",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(h.ZB,{className:"text-sm font-medium text-muted-foreground",children:a("admin.tableUsers")}),(0,s.jsx)(p.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,s.jsx)(h.Wu,{children:(0,s.jsx)("div",{className:"text-2xl font-semibold",children:k.userCount})})]}),(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{className:"pb-2",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(h.ZB,{className:"text-sm font-medium text-muted-foreground",children:a("admin.tableAgents")}),(0,s.jsx)(g.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,s.jsx)(h.Wu,{children:(0,s.jsx)("div",{className:"text-2xl font-semibold",children:k.agentCount})})]}),(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{className:"pb-2",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(h.ZB,{className:"text-sm font-medium text-muted-foreground",children:a("admin.projects")}),(0,s.jsx)(f.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,s.jsx)(h.Wu,{children:(0,s.jsx)("div",{className:"text-2xl font-semibold",children:k.projectCount})})]})]}),(0,s.jsxs)("form",{onSubmit:B,className:"space-y-6",children:[(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(b.A,{className:"h-4 w-4"}),(0,s.jsx)(h.ZB,{className:"text-sm font-medium",children:a("admin.basicInfo")})]})}),(0,s.jsxs)(h.Wu,{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"name",children:a("admin.companyName")}),(0,s.jsx)(c.p,{id:"name",value:T,onChange:e=>Z(e.target.value),required:!0,disabled:C})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"emailDomains",children:a("admin.emailDomains")}),(0,s.jsx)(c.p,{id:"emailDomains",value:_,onChange:e=>H(e.target.value),placeholder:a("admin.emailDomainsPlaceholder"),disabled:C}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.emailDomainsHelp")})]})]})]}),(0,s.jsxs)(h.Zp,{children:[(0,s.jsxs)(h.aR,{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(y.A,{className:"h-4 w-4"}),(0,s.jsx)(h.ZB,{className:"text-sm font-medium",children:a("admin.oidcConfig")})]}),k.oidcEnabled?(0,s.jsx)(m.E,{variant:"success",children:a("admin.oidcEnabled")}):(0,s.jsx)(m.E,{variant:"warning",children:a("admin.oidcNotConfigured")})]}),(0,s.jsx)(h.BT,{children:a("admin.oidcConfigDesc")})]}),(0,s.jsxs)(h.Wu,{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"oidcIssuer",children:a("admin.oidcIssuerUrl")}),(0,s.jsx)(c.p,{id:"oidcIssuer",type:"url",value:F,onChange:e=>L(e.target.value),placeholder:a("admin.oidcIssuerUrlPlaceholder"),disabled:C}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.oidcIssuerUrlHelp")})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"oidcClientId",children:a("admin.clientId")}),(0,s.jsx)(c.p,{id:"oidcClientId",value:P,onChange:e=>R(e.target.value),placeholder:a("admin.clientIdPlaceholder"),disabled:C}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.clientIdHelp")})]})]})]}),z&&(0,s.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:z}),E&&(0,s.jsx)("div",{className:"rounded-lg bg-green-50 p-3 text-sm text-green-600",children:E}),(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)(o.$,{type:"submit",disabled:C,children:C?a("common.saving"):a("admin.saveChanges")}),(0,s.jsx)(d(),{href:"/admin/companies",children:(0,s.jsx)(o.$,{type:"button",variant:"outline",disabled:C,children:a("common.cancel")})})]})]})]}):(0,s.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,s.jsx)("div",{className:"mb-6",children:(0,s.jsx)(d(),{href:"/admin/companies",children:(0,s.jsxs)(o.$,{variant:"ghost",size:"sm",children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4"}),a("admin.backToCompanies")]})})}),(0,s.jsx)("div",{className:"rounded-lg bg-destructive/10 p-4 text-sm text-destructive",children:z||a("admin.companyNotFound")})]})}},97413:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])}},e=>{e.O(0,[12079,18944,27290,12790,74951,65496,77358],()=>e(e.s=83942)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[72866],{5425:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},14554:(e,t,a)=>{"use strict";a.d(t,{p:()=>i});var s=a(90508);a(1856);var r=a(24377);function i(e){let{className:t,type:a,...i}=e;return(0,s.jsx)("input",{type:a,"data-slot":"input",className:(0,r.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...i})}},19811:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]])},22922:(e,t,a)=>{"use strict";a.d(t,{$:()=>l});var s=a(90508);a(1856);var r=a(49499),i=a(54154),n=a(24377);let d=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:a="default",size:r="default",asChild:l=!1,...o}=e,c=l?i.bL:"button";return(0,s.jsx)(c,{"data-slot":"button","data-variant":a,"data-size":r,className:(0,n.cn)(d({variant:a,size:r,className:t})),...o})}},24377:(e,t,a)=>{"use strict";a.d(t,{cn:()=>i});var s=a(49251),r=a(58849);function i(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,r.QP)((0,s.$)(t))}},38106:(e,t,a)=>{"use strict";function s(e){let t="string"==typeof e?new Date(e):e;if(isNaN(t.getTime()))return"";let a=t.getFullYear(),s=String(t.getMonth()+1).padStart(2,"0"),r=String(t.getDate()).padStart(2,"0"),i=String(t.getHours()).padStart(2,"0"),n=String(t.getMinutes()).padStart(2,"0");return"".concat(a,"-").concat(s,"-").concat(r," ").concat(i,":").concat(n)}function r(e,t){let a="string"==typeof e?new Date(e):e;return isNaN(a.getTime())?"":a.toLocaleDateString(t,{month:"short",day:"numeric"})}a.d(t,{r:()=>s,s:()=>r})},48416:(e,t,a)=>{"use strict";a.d(t,{BT:()=>l,Wu:()=>o,ZB:()=>d,Zp:()=>i,aR:()=>n});var s=a(90508);a(1856);var r=a(24377);function i(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function n(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function d(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...a})}function l(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...a})}function o(e){let{className:t,...a}=e;return(0,s.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...a})}},50932:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},57731:(e,t,a)=>{"use strict";a.d(t,{E:()=>l});var s=a(90508);a(1856);var r=a(49499),i=a(54154),n=a(24377);let d=(0,r.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function l(e){let{className:t,variant:a="default",asChild:r=!1,...l}=e,o=r?i.bL:"span";return(0,s.jsx)(o,{"data-slot":"badge","data-variant":a,className:(0,n.cn)(d({variant:a}),t),...l})}},58057:(e,t,a)=>{"use strict";a.r(t),a.d(t,{Label:()=>n,Root:()=>d});var s=a(1856),r=a(93367),i=a(90508),n=s.forwardRef((e,t)=>(0,i.jsx)(r.sG.label,{...e,ref:t,onMouseDown:t=>{var a;t.target.closest("button, input, select, textarea")||(null==(a=e.onMouseDown)||a.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));n.displayName="Label";var d=n},70633:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},85556:(e,t,a)=>{Promise.resolve().then(a.bind(a,94377))},85619:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]])},88064:(e,t,a)=>{"use strict";a.d(t,{J:()=>n});var s=a(90508);a(1856);var r=a(58057),i=a(24377);function n(e){let{className:t,...a}=e;return(0,s.jsx)(r.Root,{"data-slot":"label",className:(0,i.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...a})}},91814:(e,t,a)=>{"use strict";a.d(t,{r:()=>i});var s=a(27290),r=a(1856);function i(){let e=(0,s.r)({delay:120});return(0,r.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},93367:(e,t,a)=>{"use strict";a.d(t,{bL:()=>o,hO:()=>l,sG:()=>d});var s=a(1856),r=a(38129),i=a(54154),n=a(90508),d=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let a=(0,i.TL)(`Primitive.${t}`),r=s.forwardRef((e,s)=>{let{asChild:r,...i}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,n.jsx)(r?a:t,{...i,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function l(e,t){e&&r.flushSync(()=>e.dispatchEvent(t))}var o=d},94152:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("folder-kanban",[["path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.93a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z",key:"1fr9dc"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M12 10v2",key:"hh53o1"}],["path",{d:"M16 10v6",key:"1d6xys"}]])},94377:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>N});var s=a(90508),r=a(1856),i=a(91814),n=a(12790),d=a.n(n),l=a(39268),o=a(22922),c=a(14554),u=a(88064),m=a(57731),h=a(48416),x=a(70633),v=a(97413),p=a(50932),g=a(5425),f=a(94152),b=a(19811),y=a(85619),j=a(38106);function N(e){let{params:t}=e,a=(0,l.c)(),{uuid:n}=(0,r.use)(t),N=(0,i.r)(),[k,w]=(0,r.useState)(null),[M,A]=(0,r.useState)(!0),[C,S]=(0,r.useState)(!1),[z,D]=(0,r.useState)(""),[E,I]=(0,r.useState)(""),[T,Z]=(0,r.useState)(""),[_,H]=(0,r.useState)(""),[F,L]=(0,r.useState)(""),[P,R]=(0,r.useState)("");(0,r.useEffect)(()=>{$()},[n]);let $=async()=>{try{let t=await fetch("/api/admin/companies/".concat(n)),s=await t.json();if(s.success){let e=s.data;w(e),Z(e.name),H(e.emailDomains.join(", ")),L(e.oidcIssuer||""),R(e.oidcClientId||"")}else{var e;D((null==(e=s.error)?void 0:e.message)||a("admin.companyNotFound"))}}catch(e){D(a("admin.failedToLoad"))}finally{A(!1)}},B=async e=>{e.preventDefault(),D(""),I(""),S(!0);try{let e=_.split(",").map(e=>e.trim()).filter(e=>e.length>0),s=!!(F.trim()&&P.trim()),r=await fetch("/api/admin/companies/".concat(n),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:T.trim(),emailDomains:e,oidcIssuer:F.trim()||null,oidcClientId:P.trim()||null,oidcEnabled:s})}),i=await r.json();if(!i.success){var t;D((null==(t=i.error)?void 0:t.message)||a("admin.failedToUpdate"));return}I(a("admin.companyUpdated")),$()}catch(e){D(a("admin.networkError"))}finally{S(!1)}},V=async()=>{if(confirm(a("admin.deleteCompanyConfirmFull",{name:(null==k?void 0:k.name)||""})))try{let t=await fetch("/api/admin/companies/".concat(n),{method:"DELETE"});if(t.ok)N.push("/admin/companies");else{var e;let s=await t.json();D((null==(e=s.error)?void 0:e.message)||a("admin.failedToDelete"))}}catch(e){D(a("admin.networkError"))}};return M?(0,s.jsx)("div",{className:"flex min-h-full items-center justify-center bg-background",children:(0,s.jsx)("div",{className:"text-muted-foreground",children:a("common.loading")})}):k?(0,s.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,s.jsx)("div",{className:"mb-6",children:(0,s.jsx)(d(),{href:"/admin/companies",children:(0,s.jsxs)(o.$,{variant:"ghost",size:"sm",children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4"}),a("admin.backToCompanies")]})})}),(0,s.jsxs)("div",{className:"mb-6 flex items-start justify-between",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:k.name}),(0,s.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:a("admin.createdOn",{date:(0,j.r)(k.createdAt)})})]}),(0,s.jsxs)(o.$,{variant:"destructive",onClick:V,children:[(0,s.jsx)(v.A,{className:"mr-2 h-4 w-4"}),a("admin.deleteCompany")]})]}),(0,s.jsxs)("div",{className:"mb-6 grid gap-4 md:grid-cols-3",children:[(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{className:"pb-2",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(h.ZB,{className:"text-sm font-medium text-muted-foreground",children:a("admin.tableUsers")}),(0,s.jsx)(p.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,s.jsx)(h.Wu,{children:(0,s.jsx)("div",{className:"text-2xl font-semibold",children:k.userCount})})]}),(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{className:"pb-2",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(h.ZB,{className:"text-sm font-medium text-muted-foreground",children:a("admin.tableAgents")}),(0,s.jsx)(g.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,s.jsx)(h.Wu,{children:(0,s.jsx)("div",{className:"text-2xl font-semibold",children:k.agentCount})})]}),(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{className:"pb-2",children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(h.ZB,{className:"text-sm font-medium text-muted-foreground",children:a("admin.projects")}),(0,s.jsx)(f.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,s.jsx)(h.Wu,{children:(0,s.jsx)("div",{className:"text-2xl font-semibold",children:k.projectCount})})]})]}),(0,s.jsxs)("form",{onSubmit:B,className:"space-y-6",children:[(0,s.jsxs)(h.Zp,{children:[(0,s.jsx)(h.aR,{children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(b.A,{className:"h-4 w-4"}),(0,s.jsx)(h.ZB,{className:"text-sm font-medium",children:a("admin.basicInfo")})]})}),(0,s.jsxs)(h.Wu,{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"name",children:a("admin.companyName")}),(0,s.jsx)(c.p,{id:"name",value:T,onChange:e=>Z(e.target.value),required:!0,disabled:C})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"emailDomains",children:a("admin.emailDomains")}),(0,s.jsx)(c.p,{id:"emailDomains",value:_,onChange:e=>H(e.target.value),placeholder:a("admin.emailDomainsPlaceholder"),disabled:C}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.emailDomainsHelp")})]})]})]}),(0,s.jsxs)(h.Zp,{children:[(0,s.jsxs)(h.aR,{children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(y.A,{className:"h-4 w-4"}),(0,s.jsx)(h.ZB,{className:"text-sm font-medium",children:a("admin.oidcConfig")})]}),k.oidcEnabled?(0,s.jsx)(m.E,{variant:"success",children:a("admin.oidcEnabled")}):(0,s.jsx)(m.E,{variant:"warning",children:a("admin.oidcNotConfigured")})]}),(0,s.jsx)(h.BT,{children:a("admin.oidcConfigDesc")})]}),(0,s.jsxs)(h.Wu,{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"oidcIssuer",children:a("admin.oidcIssuerUrl")}),(0,s.jsx)(c.p,{id:"oidcIssuer",type:"url",value:F,onChange:e=>L(e.target.value),placeholder:a("admin.oidcIssuerUrlPlaceholder"),disabled:C}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.oidcIssuerUrlHelp")})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(u.J,{htmlFor:"oidcClientId",children:a("admin.clientId")}),(0,s.jsx)(c.p,{id:"oidcClientId",value:P,onChange:e=>R(e.target.value),placeholder:a("admin.clientIdPlaceholder"),disabled:C}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.clientIdHelp")})]})]})]}),z&&(0,s.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:z}),E&&(0,s.jsx)("div",{className:"rounded-lg bg-green-50 p-3 text-sm text-green-600",children:E}),(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)(o.$,{type:"submit",disabled:C,children:C?a("common.saving"):a("admin.saveChanges")}),(0,s.jsx)(d(),{href:"/admin/companies",children:(0,s.jsx)(o.$,{type:"button",variant:"outline",disabled:C,children:a("common.cancel")})})]})]})]}):(0,s.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,s.jsx)("div",{className:"mb-6",children:(0,s.jsx)(d(),{href:"/admin/companies",children:(0,s.jsxs)(o.$,{variant:"ghost",size:"sm",children:[(0,s.jsx)(x.A,{className:"mr-2 h-4 w-4"}),a("admin.backToCompanies")]})})}),(0,s.jsx)("div",{className:"rounded-lg bg-destructive/10 p-4 text-sm text-destructive",children:z||a("admin.companyNotFound")})]})}},97413:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])}},e=>{e.O(0,[12079,18944,27290,12790,74951,65496,77358],()=>e(e.s=85556)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[41395],{5616:(e,a,r)=>{"use strict";r.d(a,{A:()=>t});let t=(0,r(66206).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},14554:(e,a,r)=>{"use strict";r.d(a,{p:()=>s});var t=r(90508);r(1856);var i=r(24377);function s(e){let{className:a,type:r,...s}=e;return(0,t.jsx)("input",{type:r,"data-slot":"input",className:(0,i.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",a),...s})}},19811:(e,a,r)=>{"use strict";r.d(a,{A:()=>t});let t=(0,r(66206).A)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]])},22922:(e,a,r)=>{"use strict";r.d(a,{$:()=>o});var t=r(90508);r(1856);var i=r(49499),s=r(54154),n=r(24377);let d=(0,i.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function o(e){let{className:a,variant:r="default",size:i="default",asChild:o=!1,...l}=e,c=o?s.bL:"button";return(0,t.jsx)(c,{"data-slot":"button","data-variant":r,"data-size":i,className:(0,n.cn)(d({variant:r,size:i,className:a})),...l})}},24377:(e,a,r)=>{"use strict";r.d(a,{cn:()=>s});var t=r(49251),i=r(58849);function s(){for(var e=arguments.length,a=Array(e),r=0;r<e;r++)a[r]=arguments[r];return(0,i.QP)((0,t.$)(a))}},41930:(e,a,r)=>{"use strict";r.r(a),r.d(a,{default:()=>f});var t=r(90508),i=r(1856),s=r(91814),n=r(12790),d=r.n(n),o=r(39268),l=r(48416),c=r(22922),u=r(14554),m=r(88064),v=r(57731),h=r(70633),p=r(19811),x=r(85619),g=r(5616);function f(){let e=(0,s.r)(),a=(0,o.c)(),[r,n]=(0,i.useState)(!1),[f,b]=(0,i.useState)(""),[y,j]=(0,i.useState)({name:"",emailDomain:"",oidcIssuer:"",oidcClientId:""}),w=async r=>{r.preventDefault(),b(""),n(!0);try{let r=await fetch("/api/admin/companies",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:y.name.trim(),emailDomains:[y.emailDomain.trim()],oidcIssuer:y.oidcIssuer.trim(),oidcClientId:y.oidcClientId.trim()})}),i=await r.json();if(!i.success){var t;b((null==(t=i.error)?void 0:t.message)||a("admin.createCompanyFailed"));return}e.push("/admin/companies/".concat(i.data.uuid))}catch(e){b(a("admin.networkError"))}finally{n(!1)}};return(0,t.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,t.jsx)("div",{className:"mb-6",children:(0,t.jsx)(d(),{href:"/admin/companies",children:(0,t.jsxs)(c.$,{variant:"ghost",size:"sm",children:[(0,t.jsx)(h.A,{className:"mr-2 h-4 w-4"}),a("admin.backToCompanies")]})})}),(0,t.jsxs)("div",{className:"mb-6",children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:a("admin.createCompany")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:a("admin.createCompanyDesc")})]}),(0,t.jsxs)("form",{onSubmit:w,className:"space-y-6",children:[f&&(0,t.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:f}),(0,t.jsxs)(l.Zp,{children:[(0,t.jsx)(l.aR,{children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(p.A,{className:"h-4 w-4"}),(0,t.jsx)(l.ZB,{className:"text-sm font-medium",children:a("admin.basicInfo")})]})}),(0,t.jsxs)(l.Wu,{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(m.J,{htmlFor:"name",children:a("admin.companyName")}),(0,t.jsx)(u.p,{id:"name",value:y.name,onChange:e=>j({...y,name:e.target.value}),placeholder:a("admin.companyNamePlaceholder"),required:!0,disabled:r})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(m.J,{htmlFor:"emailDomain",children:a("admin.emailDomain")}),(0,t.jsx)(u.p,{id:"emailDomain",value:y.emailDomain,onChange:e=>j({...y,emailDomain:e.target.value}),placeholder:a("admin.emailDomainPlaceholder"),required:!0,disabled:r}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.emailDomainHelp")})]})]})]}),(0,t.jsxs)(l.Zp,{children:[(0,t.jsxs)(l.aR,{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(x.A,{className:"h-4 w-4"}),(0,t.jsx)(l.ZB,{className:"text-sm font-medium",children:a("admin.oidcConfig")})]}),(0,t.jsx)(v.E,{variant:"destructive",className:"text-[11px]",children:a("admin.required")})]}),(0,t.jsx)(l.BT,{children:a("admin.oidcConfigDesc")})]}),(0,t.jsxs)(l.Wu,{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(m.J,{htmlFor:"oidcIssuer",children:a("admin.oidcIssuerUrl")}),(0,t.jsx)(u.p,{id:"oidcIssuer",type:"url",value:y.oidcIssuer,onChange:e=>j({...y,oidcIssuer:e.target.value}),placeholder:a("admin.oidcIssuerUrlPlaceholder"),required:!0,disabled:r}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:a("admin.oidcIssuerUrlHelp")})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(m.J,{htmlFor:"oidcClientId",children:a("admin.clientId")}),(0,t.jsx)(u.p,{id:"oidcClientId",value:y.oidcClientId,onChange:e=>j({...y,oidcClientId:e.target.value}),placeholder:a("admin.clientIdPlaceholder"),required:!0,disabled:r})]})]})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)(c.$,{type:"submit",disabled:r||!y.name||!y.emailDomain||!y.oidcIssuer||!y.oidcClientId,children:[(0,t.jsx)(g.A,{className:"mr-2 h-4 w-4"}),r?a("common.creating"):a("admin.createCompany")]}),(0,t.jsx)(d(),{href:"/admin/companies",children:(0,t.jsx)(c.$,{type:"button",variant:"outline",disabled:r,children:a("common.cancel")})})]})]})]})}},48416:(e,a,r)=>{"use strict";r.d(a,{BT:()=>o,Wu:()=>l,ZB:()=>d,Zp:()=>s,aR:()=>n});var t=r(90508);r(1856);var i=r(24377);function s(e){let{className:a,...r}=e;return(0,t.jsx)("div",{"data-slot":"card",className:(0,i.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...r})}function n(e){let{className:a,...r}=e;return(0,t.jsx)("div",{"data-slot":"card-header",className:(0,i.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),...r})}function d(e){let{className:a,...r}=e;return(0,t.jsx)("div",{"data-slot":"card-title",className:(0,i.cn)("leading-none font-semibold",a),...r})}function o(e){let{className:a,...r}=e;return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,i.cn)("text-muted-foreground text-sm",a),...r})}function l(e){let{className:a,...r}=e;return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,i.cn)("px-6",a),...r})}},53709:(e,a,r)=>{Promise.resolve().then(r.bind(r,41930))},57731:(e,a,r)=>{"use strict";r.d(a,{E:()=>o});var t=r(90508);r(1856);var i=r(49499),s=r(54154),n=r(24377);let d=(0,i.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function o(e){let{className:a,variant:r="default",asChild:i=!1,...o}=e,l=i?s.bL:"span";return(0,t.jsx)(l,{"data-slot":"badge","data-variant":r,className:(0,n.cn)(d({variant:r}),a),...o})}},58057:(e,a,r)=>{"use strict";r.r(a),r.d(a,{Label:()=>n,Root:()=>d});var t=r(1856),i=r(93367),s=r(90508),n=t.forwardRef((e,a)=>(0,s.jsx)(i.sG.label,{...e,ref:a,onMouseDown:a=>{var r;a.target.closest("button, input, select, textarea")||(null==(r=e.onMouseDown)||r.call(e,a),!a.defaultPrevented&&a.detail>1&&a.preventDefault())}}));n.displayName="Label";var d=n},70633:(e,a,r)=>{"use strict";r.d(a,{A:()=>t});let t=(0,r(66206).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},85619:(e,a,r)=>{"use strict";r.d(a,{A:()=>t});let t=(0,r(66206).A)("key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]])},88064:(e,a,r)=>{"use strict";r.d(a,{J:()=>n});var t=r(90508);r(1856);var i=r(58057),s=r(24377);function n(e){let{className:a,...r}=e;return(0,t.jsx)(i.Root,{"data-slot":"label",className:(0,s.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...r})}},91814:(e,a,r)=>{"use strict";r.d(a,{r:()=>s});var t=r(27290),i=r(1856);function s(){let e=(0,t.r)({delay:120});return(0,i.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},93367:(e,a,r)=>{"use strict";r.d(a,{bL:()=>l,hO:()=>o,sG:()=>d});var t=r(1856),i=r(38129),s=r(54154),n=r(90508),d=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{let r=(0,s.TL)(`Primitive.${a}`),i=t.forwardRef((e,t)=>{let{asChild:i,...s}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,n.jsx)(i?r:a,{...s,ref:t})});return i.displayName=`Primitive.${a}`,{...e,[a]:i}},{});function o(e,a){e&&i.flushSync(()=>e.dispatchEvent(a))}var l=d}},e=>{e.O(0,[12079,18944,27290,12790,74951,65496,77358],()=>e(e.s=53709)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[38722],{5464:(e,t,a)=>{Promise.resolve().then(a.bind(a,49918))},5616:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},22922:(e,t,a)=>{"use strict";a.d(t,{$:()=>c});var r=a(90508);a(1856);var s=a(49499),n=a(54154),i=a(24377);let d=(0,s.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:t,variant:a="default",size:s="default",asChild:c=!1,...o}=e,l=c?n.bL:"button";return(0,r.jsx)(l,{"data-slot":"button","data-variant":a,"data-size":s,className:(0,i.cn)(d({variant:a,size:s,className:t})),...o})}},24377:(e,t,a)=>{"use strict";a.d(t,{cn:()=>n});var r=a(49251),s=a(58849);function n(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,s.QP)((0,r.$)(t))}},25373:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]])},30028:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},48416:(e,t,a)=>{"use strict";a.d(t,{BT:()=>c,Wu:()=>o,ZB:()=>d,Zp:()=>n,aR:()=>i});var r=a(90508);a(1856);var s=a(24377);function n(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,s.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function i(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function d(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...a})}function c(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-description",className:(0,s.cn)("text-muted-foreground text-sm",t),...a})}function o(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...a})}},49918:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>A});var r=a(90508),s=a(1856),n=a(12790),i=a.n(n),d=a(39268),c=a(48416),o=a(22922),l=a(57731),u=a(24377);function m(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,r.jsx)("table",{"data-slot":"table",className:(0,u.cn)("w-full caption-bottom text-sm",t),...a})})}function h(e){let{className:t,...a}=e;return(0,r.jsx)("thead",{"data-slot":"table-header",className:(0,u.cn)("[&_tr]:border-b",t),...a})}function x(e){let{className:t,...a}=e;return(0,r.jsx)("tbody",{"data-slot":"table-body",className:(0,u.cn)("[&_tr:last-child]:border-0",t),...a})}function g(e){let{className:t,...a}=e;return(0,r.jsx)("tr",{"data-slot":"table-row",className:(0,u.cn)("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",t),...a})}function f(e){let{className:t,...a}=e;return(0,r.jsx)("th",{"data-slot":"table-head",className:(0,u.cn)("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...a})}function v(e){let{className:t,...a}=e;return(0,r.jsx)("td",{"data-slot":"table-cell",className:(0,u.cn)("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...a})}var p=a(5616),b=a(30028),j=a(60532),y=a(25373),w=a(57893),N=a(97413),k=a(67712);function A(){let e=(0,d.c)(),[t,a]=(0,s.useState)([]),[n,u]=(0,s.useState)(!0),[A,C]=(0,s.useState)(0),[z,E]=(0,s.useState)(!1),_=()=>"".concat(window.location.origin,"/login/callback");(0,s.useEffect)(()=>{M()},[]);let M=async()=>{try{let t=await fetch("/api/admin/companies?pageSize=50"),r=await t.json();if(r.success){var e;a(r.data),C((null==(e=r.meta)?void 0:e.total)||0)}}catch(e){k.q.error("Failed to fetch companies:",e)}finally{u(!1)}},L=async(t,a)=>{if(confirm(e("admin.deleteCompanyConfirm",{name:a})))try{let a=await fetch("/api/admin/companies/".concat(t),{method:"DELETE"});if(a.ok)M();else{var r;let t=await a.json();alert((null==(r=t.error)?void 0:r.message)||e("admin.failedToDelete"))}}catch(t){alert(e("admin.networkError"))}},S=async()=>{let e=_();try{await navigator.clipboard.writeText(e),E(!0),setTimeout(()=>E(!1),2e3)}catch(a){let t=document.createElement("textarea");t.value=e,document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t),E(!0),setTimeout(()=>E(!1),2e3)}};return(0,r.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,r.jsxs)("div",{className:"mb-6 flex items-center justify-between",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:e("admin.companies")}),(0,r.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("admin.registeredOrgsCount",{count:A})})]}),(0,r.jsx)(i(),{href:"/admin/companies/new",children:(0,r.jsxs)(o.$,{children:[(0,r.jsx)(p.A,{className:"mr-2 h-4 w-4"}),e("admin.addCompany")]})})]}),(0,r.jsx)(c.Zp,{className:"mb-6",children:(0,r.jsx)(c.Wu,{className:"pt-6",children:(0,r.jsxs)("div",{className:"flex items-start gap-3",children:[(0,r.jsx)("div",{className:"flex h-8 w-8 flex-shrink-0 items-center justify-center rounded-lg bg-blue-50",children:(0,r.jsx)(b.A,{className:"h-4 w-4 text-blue-600"})}),(0,r.jsxs)("div",{className:"flex-1",children:[(0,r.jsx)(c.ZB,{className:"text-sm font-medium",children:e("admin.oidcRedirectUri")}),(0,r.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.oidcRedirectUriDesc")}),(0,r.jsxs)("div",{className:"mt-2 flex items-center gap-2",children:[(0,r.jsx)("code",{className:"flex-1 rounded-lg border bg-secondary px-3 py-2 text-xs",children:_()}),(0,r.jsx)(o.$,{variant:"outline",size:"sm",onClick:S,children:z?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{className:"mr-1.5 h-3.5 w-3.5 text-green-600"}),e("common.copied")]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(y.A,{className:"mr-1.5 h-3.5 w-3.5"}),e("common.copy")]})})]})]})]})})}),(0,r.jsx)(c.Zp,{children:(0,r.jsxs)(m,{children:[(0,r.jsx)(h,{children:(0,r.jsxs)(g,{children:[(0,r.jsx)(f,{children:e("admin.tableName")}),(0,r.jsx)(f,{children:e("admin.tableEmailDomains")}),(0,r.jsx)(f,{children:e("admin.tableOidcStatus")}),(0,r.jsx)(f,{className:"text-right",children:e("admin.tableUsers")}),(0,r.jsx)(f,{className:"text-right",children:e("admin.tableAgents")}),(0,r.jsx)(f,{className:"text-right",children:e("admin.tableActions")})]})}),(0,r.jsx)(x,{children:n?(0,r.jsx)(g,{children:(0,r.jsx)(v,{colSpan:6,className:"py-8 text-center",children:(0,r.jsx)("span",{className:"text-muted-foreground",children:e("common.loading")})})}):0===t.length?(0,r.jsx)(g,{children:(0,r.jsx)(v,{colSpan:6,className:"py-8 text-center",children:(0,r.jsxs)("span",{className:"text-muted-foreground",children:[e("admin.noCompanies")," ",(0,r.jsx)(i(),{href:"/admin/companies/new",className:"text-foreground underline hover:no-underline",children:e("admin.addFirstCompany")})]})})}):t.map(t=>(0,r.jsxs)(g,{children:[(0,r.jsx)(v,{className:"font-medium",children:t.name}),(0,r.jsx)(v,{children:t.emailDomains.length>0?(0,r.jsx)("div",{className:"flex flex-wrap gap-1",children:t.emailDomains.map(e=>(0,r.jsx)(l.E,{variant:"secondary",children:e},e))}):(0,r.jsx)("span",{className:"text-muted-foreground",children:"—"})}),(0,r.jsx)(v,{children:t.oidcEnabled?(0,r.jsx)(l.E,{variant:"success",children:e("admin.oidcConfigured")}):(0,r.jsx)(l.E,{variant:"warning",children:e("admin.oidcNotConfigured")})}),(0,r.jsx)(v,{className:"text-right text-muted-foreground",children:t.userCount}),(0,r.jsx)(v,{className:"text-right text-muted-foreground",children:t.agentCount}),(0,r.jsx)(v,{className:"text-right",children:(0,r.jsxs)("div",{className:"flex justify-end gap-1",children:[(0,r.jsx)(i(),{href:"/admin/companies/".concat(t.uuid),children:(0,r.jsx)(o.$,{variant:"ghost",size:"icon",children:(0,r.jsx)(w.A,{className:"h-4 w-4"})})}),(0,r.jsx)(o.$,{variant:"ghost",size:"icon",className:"text-destructive hover:text-destructive",onClick:()=>L(t.uuid,t.name),children:(0,r.jsx)(N.A,{className:"h-4 w-4"})})]})})]},t.uuid))})]})})]})}},57731:(e,t,a)=>{"use strict";a.d(t,{E:()=>c});var r=a(90508);a(1856);var s=a(49499),n=a(54154),i=a(24377);let d=(0,s.F)("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline",success:"bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-100",warning:"bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-100"}},defaultVariants:{variant:"default"}});function c(e){let{className:t,variant:a="default",asChild:s=!1,...c}=e,o=s?n.bL:"span";return(0,r.jsx)(o,{"data-slot":"badge","data-variant":a,className:(0,i.cn)(d({variant:a}),t),...c})}},57893:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},60532:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},67712:(e,t,a)=>{"use strict";a.d(t,{q:()=>d});var r=a(55036);let s={debug:0,info:1,warn:2,error:3},n=r.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function i(e){return s[e]>=s[n]}let d={debug:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];i("debug")&&console.debug("[Chorus] ".concat(e),...a)},info:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];i("info")&&console.info("[Chorus] ".concat(e),...a)},warn:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];i("warn")&&console.warn("[Chorus] ".concat(e),...a)},error:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];i("error")&&console.error("[Chorus] ".concat(e),...a)}}},97413:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])}},e=>{e.O(0,[12079,18944,12790,74951,65496,77358],()=>e(e.s=5464)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[57581],{15272:(e,t,a)=>{var s={"./en.json":[99373,99373],"./ja.json":[11595,11595],"./ko.json":[33456,33456],"./zh.json":[4860,4860]};function r(e){if(!a.o(s,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=s[e],r=t[0];return a.e(t[1]).then(()=>a.t(r,19))}r.keys=()=>Object.keys(s),r.id=15272,e.exports=r},19811:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]])},22922:(e,t,a)=>{"use strict";a.d(t,{$:()=>l});var s=a(90508);a(1856);var r=a(49499),n=a(54154),o=a(24377);let i=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:a="default",size:r="default",asChild:l=!1,...d}=e,c=l?n.bL:"button";return(0,s.jsx)(c,{"data-slot":"button","data-variant":a,"data-size":r,className:(0,o.cn)(i({variant:a,size:r,className:t})),...d})}},24377:(e,t,a)=>{"use strict";a.d(t,{cn:()=>n});var s=a(49251),r=a(58849);function n(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,r.QP)((0,s.$)(t))}},25359:(e,t,a)=>{"use strict";a.d(t,{AL:()=>o,IB:()=>s,L$:()=>n,q:()=>r});let s=["en","zh","ko","ja"],r="en",n={en:"English",zh:"中文",ko:"한국어",ja:"日本語"};function o(){if("undefined"==typeof navigator)return r;let e=navigator.language.split("-")[0];return s.includes(e)?e:r}},29271:(e,t,a)=>{Promise.resolve().then(a.bind(a,72964))},32239:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},32277:(e,t,a)=>{"use strict";a.d(t,{LocaleProvider:()=>u,Y:()=>c});var s=a(90508),r=a(1856),n=a(57472),o=a(25359),i=a(67712);let l="chorus-locale",d=(0,r.createContext)(null);function c(){let e=(0,r.useContext)(d);if(!e)throw Error("useLocale must be used within LocaleProvider");return e}function u(e){let{children:t}=e,[c,u]=(0,r.useState)(o.q),[m,h]=(0,r.useState)(null),[f,g]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e,t=localStorage.getItem(l);t&&o.IB.includes(t)?e=t:(e=(0,o.AL)(),localStorage.setItem(l,e)),u(e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),g(!0)},[]),(0,r.useEffect)(()=>{f&&a(15272)("./".concat(c,".json")).then(e=>{h(e.default)}).catch(e=>{i.q.error("Failed to load messages for locale ".concat(c,":"),e),a(15272)("./".concat(o.q,".json")).then(e=>{h(e.default)})})},[c,f]);let p=(0,r.useCallback)(e=>{u(e),localStorage.setItem(l,e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),document.documentElement.lang=e},[]);return f&&m?(0,s.jsx)(d.Provider,{value:{locale:c,setLocale:p},children:(0,s.jsx)(n.A,{locale:c,messages:m,children:t})}):null}},57472:(e,t,a)=>{"use strict";a.d(t,{A:()=>n});var s=a(12079),r=a(90508);function n(e){let{locale:t,...a}=e;if(!t)throw Error(void 0);return(0,r.jsx)(s.Dk,{locale:t,...a})}},57930:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]])},62926:(e,t,a)=>{"use strict";a.d(t,{H:()=>g});var s=a(90508),r=a(1856),n=a(73748),o=a(39268),i=a(57930),l=a(86589),d=a(68842),c=a(81149),u=a(22922),m=a(66343),h=a(32277),f=a(25359);function g(e){let{mobile:t=!1}=e,a=(0,o.c)(),{theme:g,setTheme:p}=(0,n.D)(),{locale:x,setLocale:v}=(0,h.Y)(),[y,b]=(0,r.useState)(!1);(0,r.useEffect)(()=>b(!0),[]);let j=y?g:void 0,k="light"===j?i.A:"dark"===j?l.A:d.A,w=a("light"===j?"theme.light":"dark"===j?"theme.dark":"theme.system"),N=t?"h-8 min-w-8 px-2":"h-7 min-w-7 px-1.5",A=t?"h-4 w-4":"h-3.5 w-3.5";return(0,s.jsxs)("div",{className:"flex items-center gap-1 px-2 pt-0.5",children:[(0,s.jsxs)(m.rI,{children:[(0,s.jsx)(m.ty,{asChild:!0,children:(0,s.jsxs)(u.$,{variant:"ghost",size:"sm",className:"".concat(N," justify-center gap-1.5 text-muted-foreground hover:text-foreground"),"aria-label":a("theme.toggleLabel"),title:a("theme.toggleLabel"),children:[(0,s.jsx)(k,{className:A}),(0,s.jsx)("span",{className:"text-[12px] font-medium",suppressHydrationWarning:!0,children:y?w:a("theme.system")})]})}),(0,s.jsxs)(m.SQ,{align:"start",side:"top",className:"w-40",children:[(0,s.jsx)(m.lp,{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:a("theme.toggleLabel")}),(0,s.jsxs)(m.Hr,{value:null!=j?j:"system",onValueChange:e=>p(e),children:[(0,s.jsxs)(m.Ht,{value:"light",children:[(0,s.jsx)(i.A,{className:"mr-2 h-4 w-4"}),a("theme.light")]}),(0,s.jsxs)(m.Ht,{value:"dark",children:[(0,s.jsx)(l.A,{className:"mr-2 h-4 w-4"}),a("theme.dark")]}),(0,s.jsxs)(m.Ht,{value:"system",children:[(0,s.jsx)(d.A,{className:"mr-2 h-4 w-4"}),a("theme.system")]})]})]})]}),(0,s.jsx)("span",{className:"h-4 w-px bg-border","aria-hidden":!0}),(0,s.jsxs)(m.rI,{children:[(0,s.jsx)(m.ty,{asChild:!0,children:(0,s.jsxs)(u.$,{variant:"ghost",size:"sm",className:"".concat(N," justify-center gap-1.5 text-muted-foreground hover:text-foreground"),"aria-label":a("settings.language"),title:a("settings.language"),children:[(0,s.jsx)(c.A,{className:A}),(0,s.jsx)("span",{className:"text-[12px] font-medium leading-none",children:f.L$[x]})]})}),(0,s.jsxs)(m.SQ,{align:"start",side:"top",className:"w-40",children:[(0,s.jsx)(m.lp,{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:a("settings.language")}),(0,s.jsx)(m.Hr,{value:x,onValueChange:e=>v(e),children:f.IB.map(e=>(0,s.jsx)(m.Ht,{value:e,children:f.L$[e]},e))})]})]})]})}},66093:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]])},66343:(e,t,a)=>{"use strict";a.d(t,{Hr:()=>f,Ht:()=>u,SQ:()=>d,_2:()=>c,lp:()=>m,mB:()=>h,rI:()=>i,ty:()=>l});var s=a(90508);a(1856);var r=a(97964),n=a(39025),o=a(24377);function i(e){let{...t}=e;return(0,s.jsx)(n.Root,{"data-slot":"dropdown-menu",...t})}function l(e){let{...t}=e;return(0,s.jsx)(n.Trigger,{"data-slot":"dropdown-menu-trigger",...t})}function d(e){let{className:t,sideOffset:a=4,...r}=e;return(0,s.jsx)(n.Portal,{children:(0,s.jsx)(n.Content,{"data-slot":"dropdown-menu-content",sideOffset:a,className:(0,o.cn)("bg-popover text-popover-foreground z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...r})})}function c(e){let{className:t,inset:a,variant:r="default",...i}=e;return(0,s.jsx)(n.Item,{"data-slot":"dropdown-menu-item","data-inset":a,"data-variant":r,className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0","data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive","data-[inset]:pl-8 [&_svg]:size-4",t),...i})}function u(e){let{className:t,children:a,...i}=e;return(0,s.jsxs)(n.RadioItem,{"data-slot":"dropdown-menu-radio-item",className:(0,o.cn)("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:size-4",t),...i,children:[(0,s.jsx)("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:(0,s.jsx)(n.ItemIndicator,{children:(0,s.jsx)(r.A,{className:"size-2 fill-current"})})}),a]})}function m(e){let{className:t,inset:a,...r}=e;return(0,s.jsx)(n.Label,{"data-slot":"dropdown-menu-label","data-inset":a,className:(0,o.cn)("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",t),...r})}function h(e){let{className:t,...a}=e;return(0,s.jsx)(n.Separator,{"data-slot":"dropdown-menu-separator",className:(0,o.cn)("bg-border -mx-1 my-1 h-px",t),...a})}function f(e){let{...t}=e;return(0,s.jsx)(n.RadioGroup,{"data-slot":"dropdown-menu-radio-group",...t})}},67712:(e,t,a)=>{"use strict";a.d(t,{q:()=>i});var s=a(55036);let r={debug:0,info:1,warn:2,error:3},n=s.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function o(e){return r[e]>=r[n]}let i={debug:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];o("debug")&&console.debug("[Chorus] ".concat(e),...a)},info:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];o("info")&&console.info("[Chorus] ".concat(e),...a)},warn:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];o("warn")&&console.warn("[Chorus] ".concat(e),...a)},error:function(e){for(var t=arguments.length,a=Array(t>1?t-1:0),s=1;s<t;s++)a[s-1]=arguments[s];o("error")&&console.error("[Chorus] ".concat(e),...a)}}},68842:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]])},72964:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>x});var s=a(90508),r=a(1856),n=a(23675),o=a(91814),i=a(12790),l=a.n(i),d=a(39268),c=a(22922),u=a(62926),m=a(32239),h=a(19811),f=a(66093),g=a(90683),p=a(67712);function x(e){let{children:t}=e,a=(0,d.c)(),i=(0,o.r)(),x=(0,n.usePathname)(),[v,y]=(0,r.useState)(null),[b,j]=(0,r.useState)(!0);(0,r.useEffect)(()=>{k()},[]);let k=async()=>{try{let e=await fetch("/api/admin/session"),t=await e.json();t.success?y({email:t.data.email}):i.push("/login")}catch(e){i.push("/login")}finally{j(!1)}},w=async()=>{try{await fetch("/api/admin/session",{method:"DELETE"}),i.push("/login")}catch(e){p.q.error("Logout failed")}};if(b)return(0,s.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,s.jsx)("div",{className:"text-muted-foreground",children:a("common.loading")})});if(!v)return null;let N=[{href:"/admin",label:a("admin.dashboard"),icon:m.A},{href:"/admin/companies",label:a("admin.companies"),icon:h.A}];return(0,s.jsxs)("div",{className:"flex min-h-screen bg-background",children:[(0,s.jsxs)("aside",{className:"flex w-56 flex-col border-r bg-card",children:[(0,s.jsxs)("div",{className:"flex h-16 items-center gap-2 border-b px-4",children:[(0,s.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded bg-destructive",children:(0,s.jsx)(f.A,{className:"h-4 w-4 text-destructive-foreground"})}),(0,s.jsx)("span",{className:"font-semibold",children:a("admin.title")})]}),(0,s.jsx)("nav",{className:"flex-1 space-y-1 p-4",children:N.map(e=>{let t=x===e.href||"/admin"!==e.href&&x.startsWith(e.href),a=e.icon;return(0,s.jsx)(l(),{href:e.href,children:(0,s.jsxs)(c.$,{variant:t?"secondary":"ghost",className:"w-full justify-start",children:[(0,s.jsx)(a,{className:"mr-3 h-5 w-5"}),e.label]})},e.href)})}),(0,s.jsxs)("div",{className:"border-t p-4",children:[(0,s.jsx)("div",{className:"mb-2 truncate text-sm text-muted-foreground",children:v.email}),(0,s.jsx)("div",{className:"mb-1 -ml-2",children:(0,s.jsx)(u.H,{})}),(0,s.jsxs)(c.$,{variant:"ghost",className:"w-full justify-start",onClick:w,children:[(0,s.jsx)(g.A,{className:"mr-2 h-4 w-4"}),a("common.signOut")]})]})]}),(0,s.jsx)("main",{className:"flex-1 overflow-auto",children:t})]})}},73748:(e,t,a)=>{"use strict";a.d(t,{D:()=>c,N:()=>u});var s=a(1856),r=(e,t,a,s,r,n,o,i)=>{let l=document.documentElement,d=["light","dark"];function c(t){var a;(Array.isArray(e)?e:[e]).forEach(e=>{let a="class"===e,s=a&&n?r.map(e=>n[e]||e):r;a?(l.classList.remove(...s),l.classList.add(n&&n[t]?n[t]:t)):l.setAttribute(e,t)}),a=t,i&&d.includes(a)&&(l.style.colorScheme=a)}if(s)c(s);else try{let e=localStorage.getItem(t)||a,s=o&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(s)}catch(e){}},n=["light","dark"],o="(prefers-color-scheme: dark)",i="undefined"==typeof window,l=s.createContext(void 0),d={setTheme:e=>{},themes:[]},c=()=>{var e;return null!=(e=s.useContext(l))?e:d},u=e=>s.useContext(l)?s.createElement(s.Fragment,null,e.children):s.createElement(h,{...e}),m=["light","dark"],h=e=>{let{forcedTheme:t,disableTransitionOnChange:a=!1,enableSystem:r=!0,enableColorScheme:i=!0,storageKey:d="theme",themes:c=m,defaultTheme:u=r?"system":"light",attribute:h="data-theme",value:v,children:y,nonce:b,scriptProps:j}=e,[k,w]=s.useState(()=>g(d,u)),[N,A]=s.useState(()=>"system"===k?x():k),E=v?Object.values(v):c,S=s.useCallback(e=>{let t=e;if(!t)return;"system"===e&&r&&(t=x());let s=v?v[t]:t,o=a?p(b):null,l=document.documentElement,d=e=>{"class"===e?(l.classList.remove(...E),s&&l.classList.add(s)):e.startsWith("data-")&&(s?l.setAttribute(e,s):l.removeAttribute(e))};if(Array.isArray(h)?h.forEach(d):d(h),i){let e=n.includes(u)?u:null,a=n.includes(t)?t:e;l.style.colorScheme=a}null==o||o()},[b]),C=s.useCallback(e=>{let t="function"==typeof e?e(k):e;w(t);try{localStorage.setItem(d,t)}catch(e){}},[k]),L=s.useCallback(e=>{A(x(e)),"system"===k&&r&&!t&&S("system")},[k,t]);s.useEffect(()=>{let e=window.matchMedia(o);return e.addListener(L),L(e),()=>e.removeListener(L)},[L]),s.useEffect(()=>{let e=e=>{e.key===d&&(e.newValue?w(e.newValue):C(u))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[C]),s.useEffect(()=>{S(null!=t?t:k)},[t,k]);let z=s.useMemo(()=>({theme:k,setTheme:C,forcedTheme:t,resolvedTheme:"system"===k?N:k,themes:r?[...c,"system"]:c,systemTheme:r?N:void 0}),[k,C,t,N,r,c]);return s.createElement(l.Provider,{value:z},s.createElement(f,{forcedTheme:t,storageKey:d,attribute:h,enableSystem:r,enableColorScheme:i,defaultTheme:u,value:v,themes:c,nonce:b,scriptProps:j}),y)},f=s.memo(e=>{let{forcedTheme:t,storageKey:a,attribute:n,enableSystem:o,enableColorScheme:i,defaultTheme:l,value:d,themes:c,nonce:u,scriptProps:m}=e,h=JSON.stringify([n,a,l,t,c,d,o,i]).slice(1,-1);return s.createElement("script",{...m,suppressHydrationWarning:!0,nonce:"undefined"==typeof window?u:"",dangerouslySetInnerHTML:{__html:"(".concat(r.toString(),")(").concat(h,")")}})}),g=(e,t)=>{let a;if(!i){try{a=localStorage.getItem(e)||void 0}catch(e){}return a||t}},p=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},x=e=>(e||(e=window.matchMedia(o)),e.matches?"dark":"light")},81149:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]])},86589:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]])},90683:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("log-out",[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]])},91814:(e,t,a)=>{"use strict";a.d(t,{r:()=>n});var s=a(27290),r=a(1856);function n(){let e=(0,s.r)({delay:120});return(0,r.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},97964:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(66206).A)("circle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]])}},e=>{e.O(0,[12079,18944,27290,12790,21932,94170,39025,74951,65496,77358],()=>e(e.s=29271)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[93698],{5425:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},5616:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},19811:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]])},22922:(e,t,s)=>{"use strict";s.d(t,{$:()=>c});var a=s(90508);s(1856);var r=s(49499),n=s(54154),d=s(24377);let i=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:t,variant:s="default",size:r="default",asChild:c=!1,...o}=e,l=c?n.bL:"button";return(0,a.jsx)(l,{"data-slot":"button","data-variant":s,"data-size":r,className:(0,d.cn)(i({variant:s,size:r,className:t})),...o})}},24377:(e,t,s)=>{"use strict";s.d(t,{cn:()=>n});var a=s(49251),r=s(58849);function n(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,r.QP)((0,a.$)(t))}},31484:(e,t,s)=>{Promise.resolve().then(s.bind(s,56831))},48416:(e,t,s)=>{"use strict";s.d(t,{BT:()=>c,Wu:()=>o,ZB:()=>i,Zp:()=>n,aR:()=>d});var a=s(90508);s(1856);var r=s(24377);function n(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...s})}function d(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...s})}function i(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...s})}function c(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...s})}function o(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...s})}},50932:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},56831:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>f});var a=s(90508),r=s(1856),n=s(12790),d=s.n(n),i=s(39268),c=s(48416),o=s(22922),l=s(19811),u=s(50932),m=s(5425),x=s(5616),h=s(67712);function f(){let e=(0,i.c)(),[t,s]=(0,r.useState)(null),[n,f]=(0,r.useState)(!0);(0,r.useEffect)(()=>{g()},[]);let g=async()=>{try{let t=await fetch("/api/admin/companies?pageSize=1"),a=await t.json();if(a.success){var e;s({totalCompanies:(null==(e=a.meta)?void 0:e.total)||0,totalUsers:0,totalAgents:0})}}catch(e){h.q.error("Failed to fetch stats:",e)}finally{f(!1)}};return(0,a.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,a.jsxs)("div",{className:"mb-8",children:[(0,a.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:e("admin.dashboard")}),(0,a.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("admin.welcome")})]}),(0,a.jsxs)("div",{className:"mb-8 grid gap-4 md:grid-cols-3",children:[(0,a.jsxs)(c.Zp,{children:[(0,a.jsx)(c.aR,{className:"pb-2",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.ZB,{className:"text-sm font-medium text-muted-foreground",children:e("admin.totalCompanies")}),(0,a.jsx)(l.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,a.jsxs)(c.Wu,{children:[(0,a.jsx)("div",{className:"text-3xl font-semibold",children:n?"...":(null==t?void 0:t.totalCompanies)||0}),(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.registeredOrgs")})]})]}),(0,a.jsxs)(c.Zp,{children:[(0,a.jsx)(c.aR,{className:"pb-2",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.ZB,{className:"text-sm font-medium text-muted-foreground",children:e("admin.totalUsers")}),(0,a.jsx)(u.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,a.jsxs)(c.Wu,{children:[(0,a.jsx)("div",{className:"text-3xl font-semibold",children:n?"...":(null==t?void 0:t.totalUsers)||0}),(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.humanUsers")})]})]}),(0,a.jsxs)(c.Zp,{children:[(0,a.jsx)(c.aR,{className:"pb-2",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.ZB,{className:"text-sm font-medium text-muted-foreground",children:e("admin.totalAgents")}),(0,a.jsx)(m.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,a.jsxs)(c.Wu,{children:[(0,a.jsx)("div",{className:"text-3xl font-semibold",children:n?"...":(null==t?void 0:t.totalAgents)||0}),(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.aiAgents")})]})]})]}),(0,a.jsxs)(c.Zp,{children:[(0,a.jsxs)(c.aR,{children:[(0,a.jsx)(c.ZB,{children:e("admin.quickActions")}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:e("admin.commonTasks")})]}),(0,a.jsx)(c.Wu,{children:(0,a.jsxs)("div",{className:"grid gap-4 md:grid-cols-2",children:[(0,a.jsx)(d(),{href:"/admin/companies/new",children:(0,a.jsxs)(o.$,{variant:"outline",className:"h-auto w-full justify-start gap-4 p-4",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-secondary",children:(0,a.jsx)(x.A,{className:"h-5 w-5"})}),(0,a.jsxs)("div",{className:"text-left",children:[(0,a.jsx)("div",{className:"font-medium",children:e("admin.addCompany")}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:e("admin.addCompanyDesc")})]})]})}),(0,a.jsx)(d(),{href:"/admin/companies",children:(0,a.jsxs)(o.$,{variant:"outline",className:"h-auto w-full justify-start gap-4 p-4",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-secondary",children:(0,a.jsx)(l.A,{className:"h-5 w-5"})}),(0,a.jsxs)("div",{className:"text-left",children:[(0,a.jsx)("div",{className:"font-medium",children:e("admin.manageCompanies")}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:e("admin.manageCompaniesDesc")})]})]})})]})})]})]})}},67712:(e,t,s)=>{"use strict";s.d(t,{q:()=>i});var a=s(55036);let r={debug:0,info:1,warn:2,error:3},n=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function d(e){return r[e]>=r[n]}let i={debug:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("debug")&&console.debug("[Chorus] ".concat(e),...s)},info:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("info")&&console.info("[Chorus] ".concat(e),...s)},warn:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("warn")&&console.warn("[Chorus] ".concat(e),...s)},error:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("error")&&console.error("[Chorus] ".concat(e),...s)}}}},e=>{e.O(0,[12079,18944,12790,74951,65496,77358],()=>e(e.s=31484)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[93698],{5425:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},5616:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]])},19811:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]])},22922:(e,t,s)=>{"use strict";s.d(t,{$:()=>c});var a=s(90508);s(1856);var r=s(49499),n=s(54154),d=s(24377);let i=(0,r.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:t,variant:s="default",size:r="default",asChild:c=!1,...o}=e,l=c?n.bL:"button";return(0,a.jsx)(l,{"data-slot":"button","data-variant":s,"data-size":r,className:(0,d.cn)(i({variant:s,size:r,className:t})),...o})}},24377:(e,t,s)=>{"use strict";s.d(t,{cn:()=>n});var a=s(49251),r=s(58849);function n(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return(0,r.QP)((0,a.$)(t))}},48416:(e,t,s)=>{"use strict";s.d(t,{BT:()=>c,Wu:()=>o,ZB:()=>i,Zp:()=>n,aR:()=>d});var a=s(90508);s(1856);var r=s(24377);function n(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,r.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...s})}function d(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...s})}function i(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("leading-none font-semibold",t),...s})}function c(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-muted-foreground text-sm",t),...s})}function o(e){let{className:t,...s}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-6",t),...s})}},50932:(e,t,s)=>{"use strict";s.d(t,{A:()=>a});let a=(0,s(66206).A)("users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]])},52314:(e,t,s)=>{Promise.resolve().then(s.bind(s,56831))},56831:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>f});var a=s(90508),r=s(1856),n=s(12790),d=s.n(n),i=s(39268),c=s(48416),o=s(22922),l=s(19811),u=s(50932),m=s(5425),x=s(5616),h=s(67712);function f(){let e=(0,i.c)(),[t,s]=(0,r.useState)(null),[n,f]=(0,r.useState)(!0);(0,r.useEffect)(()=>{g()},[]);let g=async()=>{try{let t=await fetch("/api/admin/companies?pageSize=1"),a=await t.json();if(a.success){var e;s({totalCompanies:(null==(e=a.meta)?void 0:e.total)||0,totalUsers:0,totalAgents:0})}}catch(e){h.q.error("Failed to fetch stats:",e)}finally{f(!1)}};return(0,a.jsxs)("div",{className:"min-h-full bg-background px-8 py-6",children:[(0,a.jsxs)("div",{className:"mb-8",children:[(0,a.jsx)("h1",{className:"text-2xl font-semibold text-foreground",children:e("admin.dashboard")}),(0,a.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("admin.welcome")})]}),(0,a.jsxs)("div",{className:"mb-8 grid gap-4 md:grid-cols-3",children:[(0,a.jsxs)(c.Zp,{children:[(0,a.jsx)(c.aR,{className:"pb-2",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.ZB,{className:"text-sm font-medium text-muted-foreground",children:e("admin.totalCompanies")}),(0,a.jsx)(l.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,a.jsxs)(c.Wu,{children:[(0,a.jsx)("div",{className:"text-3xl font-semibold",children:n?"...":(null==t?void 0:t.totalCompanies)||0}),(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.registeredOrgs")})]})]}),(0,a.jsxs)(c.Zp,{children:[(0,a.jsx)(c.aR,{className:"pb-2",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.ZB,{className:"text-sm font-medium text-muted-foreground",children:e("admin.totalUsers")}),(0,a.jsx)(u.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,a.jsxs)(c.Wu,{children:[(0,a.jsx)("div",{className:"text-3xl font-semibold",children:n?"...":(null==t?void 0:t.totalUsers)||0}),(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.humanUsers")})]})]}),(0,a.jsxs)(c.Zp,{children:[(0,a.jsx)(c.aR,{className:"pb-2",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.ZB,{className:"text-sm font-medium text-muted-foreground",children:e("admin.totalAgents")}),(0,a.jsx)(m.A,{className:"h-4 w-4 text-muted-foreground"})]})}),(0,a.jsxs)(c.Wu,{children:[(0,a.jsx)("div",{className:"text-3xl font-semibold",children:n?"...":(null==t?void 0:t.totalAgents)||0}),(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:e("admin.aiAgents")})]})]})]}),(0,a.jsxs)(c.Zp,{children:[(0,a.jsxs)(c.aR,{children:[(0,a.jsx)(c.ZB,{children:e("admin.quickActions")}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:e("admin.commonTasks")})]}),(0,a.jsx)(c.Wu,{children:(0,a.jsxs)("div",{className:"grid gap-4 md:grid-cols-2",children:[(0,a.jsx)(d(),{href:"/admin/companies/new",children:(0,a.jsxs)(o.$,{variant:"outline",className:"h-auto w-full justify-start gap-4 p-4",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-secondary",children:(0,a.jsx)(x.A,{className:"h-5 w-5"})}),(0,a.jsxs)("div",{className:"text-left",children:[(0,a.jsx)("div",{className:"font-medium",children:e("admin.addCompany")}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:e("admin.addCompanyDesc")})]})]})}),(0,a.jsx)(d(),{href:"/admin/companies",children:(0,a.jsxs)(o.$,{variant:"outline",className:"h-auto w-full justify-start gap-4 p-4",children:[(0,a.jsx)("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-secondary",children:(0,a.jsx)(l.A,{className:"h-5 w-5"})}),(0,a.jsxs)("div",{className:"text-left",children:[(0,a.jsx)("div",{className:"font-medium",children:e("admin.manageCompanies")}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:e("admin.manageCompaniesDesc")})]})]})})]})})]})]})}},67712:(e,t,s)=>{"use strict";s.d(t,{q:()=>i});var a=s(55036);let r={debug:0,info:1,warn:2,error:3},n=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function d(e){return r[e]>=r[n]}let i={debug:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("debug")&&console.debug("[Chorus] ".concat(e),...s)},info:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("info")&&console.info("[Chorus] ".concat(e),...s)},warn:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("warn")&&console.warn("[Chorus] ".concat(e),...s)},error:function(e){for(var t=arguments.length,s=Array(t>1?t-1:0),a=1;a<t;a++)s[a-1]=arguments[a];d("error")&&console.error("[Chorus] ".concat(e),...s)}}}},e=>{e.O(0,[12079,18944,12790,74951,65496,77358],()=>e(e.s=52314)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7177],{15272:(e,t,r)=>{var n={"./en.json":[99373,99373],"./ja.json":[11595,11595],"./ko.json":[33456,33456],"./zh.json":[4860,4860]};function o(e){if(!r.o(n,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=n[e],o=t[0];return r.e(t[1]).then(()=>r.t(o,19))}o.keys=()=>Object.keys(n),o.id=15272,e.exports=o},25359:(e,t,r)=>{"use strict";r.d(t,{AL:()=>s,IB:()=>n,L$:()=>a,q:()=>o});let n=["en","zh","ko","ja"],o="en",a={en:"English",zh:"中文",ko:"한국어",ja:"日本語"};function s(){if("undefined"==typeof navigator)return o;let e=navigator.language.split("-")[0];return n.includes(e)?e:o}},32277:(e,t,r)=>{"use strict";r.d(t,{LocaleProvider:()=>m,Y:()=>u});var n=r(90508),o=r(1856),a=r(57472),s=r(25359),l=r(67712);let c="chorus-locale",i=(0,o.createContext)(null);function u(){let e=(0,o.useContext)(i);if(!e)throw Error("useLocale must be used within LocaleProvider");return e}function m(e){let{children:t}=e,[u,m]=(0,o.useState)(s.q),[d,h]=(0,o.useState)(null),[f,v]=(0,o.useState)(!1);(0,o.useEffect)(()=>{let e,t=localStorage.getItem(c);t&&s.IB.includes(t)?e=t:(e=(0,s.AL)(),localStorage.setItem(c,e)),m(e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),v(!0)},[]),(0,o.useEffect)(()=>{f&&r(15272)("./".concat(u,".json")).then(e=>{h(e.default)}).catch(e=>{l.q.error("Failed to load messages for locale ".concat(u,":"),e),r(15272)("./".concat(s.q,".json")).then(e=>{h(e.default)})})},[u,f]);let y=(0,o.useCallback)(e=>{m(e),localStorage.setItem(c,e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),document.documentElement.lang=e},[]);return f&&d?(0,n.jsx)(i.Provider,{value:{locale:u,setLocale:y},children:(0,n.jsx)(a.A,{locale:u,messages:d,children:t})}):null}},40834:(e,t,r)=>{"use strict";r.d(t,{ProgressProvider:()=>a});var n=r(90508),o=r(27290);function a(e){let{children:t}=e;return(0,n.jsx)(o.V,{height:"3px",color:"hsl(var(--primary))",delay:120,options:{showSpinner:!1},disableSameURL:!0,shallowRouting:!0,children:t})}},49408:e=>{e.exports={style:{fontFamily:"'Geist Mono', 'Geist Mono Fallback'",fontStyle:"normal"},className:"__className_c29908",variable:"__variable_c29908"}},57472:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(12079),o=r(90508);function a(e){let{locale:t,...r}=e;if(!t)throw Error(void 0);return(0,o.jsx)(n.Dk,{locale:t,...r})}},61666:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,66160,23)),Promise.resolve().then(r.t.bind(r,49408,23)),Promise.resolve().then(r.t.bind(r,94651,23)),Promise.resolve().then(r.bind(r,40834)),Promise.resolve().then(r.bind(r,99846)),Promise.resolve().then(r.bind(r,32277))},66160:e=>{e.exports={style:{fontFamily:"'Geist', 'Geist Fallback'",fontStyle:"normal"},className:"__className_246ccd",variable:"__variable_246ccd"}},67712:(e,t,r)=>{"use strict";r.d(t,{q:()=>l});var n=r(55036);let o={debug:0,info:1,warn:2,error:3},a=n.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function s(e){return o[e]>=o[a]}let l={debug:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("debug")&&console.debug("[Chorus] ".concat(e),...r)},info:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("info")&&console.info("[Chorus] ".concat(e),...r)},warn:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("warn")&&console.warn("[Chorus] ".concat(e),...r)},error:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("error")&&console.error("[Chorus] ".concat(e),...r)}}},73748:(e,t,r)=>{"use strict";r.d(t,{D:()=>u,N:()=>m});var n=r(1856),o=(e,t,r,n,o,a,s,l)=>{let c=document.documentElement,i=["light","dark"];function u(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&a?o.map(e=>a[e]||e):o;r?(c.classList.remove(...n),c.classList.add(a&&a[t]?a[t]:t)):c.setAttribute(e,t)}),r=t,l&&i.includes(r)&&(c.style.colorScheme=r)}if(n)u(n);else try{let e=localStorage.getItem(t)||r,n=s&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;u(n)}catch(e){}},a=["light","dark"],s="(prefers-color-scheme: dark)",l="undefined"==typeof window,c=n.createContext(void 0),i={setTheme:e=>{},themes:[]},u=()=>{var e;return null!=(e=n.useContext(c))?e:i},m=e=>n.useContext(c)?n.createElement(n.Fragment,null,e.children):n.createElement(h,{...e}),d=["light","dark"],h=e=>{let{forcedTheme:t,disableTransitionOnChange:r=!1,enableSystem:o=!0,enableColorScheme:l=!0,storageKey:i="theme",themes:u=d,defaultTheme:m=o?"system":"light",attribute:h="data-theme",value:b,children:p,nonce:w,scriptProps:S}=e,[E,k]=n.useState(()=>v(i,m)),[C,_]=n.useState(()=>"system"===E?g():E),L=b?Object.values(b):u,T=n.useCallback(e=>{let t=e;if(!t)return;"system"===e&&o&&(t=g());let n=b?b[t]:t,s=r?y(w):null,c=document.documentElement,i=e=>{"class"===e?(c.classList.remove(...L),n&&c.classList.add(n)):e.startsWith("data-")&&(n?c.setAttribute(e,n):c.removeAttribute(e))};if(Array.isArray(h)?h.forEach(i):i(h),l){let e=a.includes(m)?m:null,r=a.includes(t)?t:e;c.style.colorScheme=r}null==s||s()},[w]),x=n.useCallback(e=>{let t="function"==typeof e?e(E):e;k(t);try{localStorage.setItem(i,t)}catch(e){}},[E]),P=n.useCallback(e=>{_(g(e)),"system"===E&&o&&!t&&T("system")},[E,t]);n.useEffect(()=>{let e=window.matchMedia(s);return e.addListener(P),P(e),()=>e.removeListener(P)},[P]),n.useEffect(()=>{let e=e=>{e.key===i&&(e.newValue?k(e.newValue):x(m))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[x]),n.useEffect(()=>{T(null!=t?t:E)},[t,E]);let j=n.useMemo(()=>({theme:E,setTheme:x,forcedTheme:t,resolvedTheme:"system"===E?C:E,themes:o?[...u,"system"]:u,systemTheme:o?C:void 0}),[E,x,t,C,o,u]);return n.createElement(c.Provider,{value:j},n.createElement(f,{forcedTheme:t,storageKey:i,attribute:h,enableSystem:o,enableColorScheme:l,defaultTheme:m,value:b,themes:u,nonce:w,scriptProps:S}),p)},f=n.memo(e=>{let{forcedTheme:t,storageKey:r,attribute:a,enableSystem:s,enableColorScheme:l,defaultTheme:c,value:i,themes:u,nonce:m,scriptProps:d}=e,h=JSON.stringify([a,r,c,t,u,i,s,l]).slice(1,-1);return n.createElement("script",{...d,suppressHydrationWarning:!0,nonce:"undefined"==typeof window?m:"",dangerouslySetInnerHTML:{__html:"(".concat(o.toString(),")(").concat(h,")")}})}),v=(e,t)=>{let r;if(!l){try{r=localStorage.getItem(e)||void 0}catch(e){}return r||t}},y=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},g=e=>(e||(e=window.matchMedia(s)),e.matches?"dark":"light")},94651:()=>{},99846:(e,t,r)=>{"use strict";r.d(t,{ThemeProvider:()=>a});var n=r(90508),o=r(73748);function a(e){let{children:t,...r}=e;return(0,n.jsx)(o.N,{attribute:"class",defaultTheme:"system",enableSystem:!0,storageKey:"chorus-theme",disableTransitionOnChange:!0,...r,children:t})}}},e=>{e.O(0,[53169,32492,12079,27290,74951,65496,77358],()=>e(e.s=61666)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7177],{15272:(e,t,r)=>{var n={"./en.json":[99373,99373],"./ja.json":[11595,11595],"./ko.json":[33456,33456],"./zh.json":[4860,4860]};function o(e){if(!r.o(n,e))return Promise.resolve().then(()=>{var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=n[e],o=t[0];return r.e(t[1]).then(()=>r.t(o,19))}o.keys=()=>Object.keys(n),o.id=15272,e.exports=o},21922:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,66160,23)),Promise.resolve().then(r.t.bind(r,49408,23)),Promise.resolve().then(r.t.bind(r,94651,23)),Promise.resolve().then(r.bind(r,40834)),Promise.resolve().then(r.bind(r,99846)),Promise.resolve().then(r.bind(r,32277))},25359:(e,t,r)=>{"use strict";r.d(t,{AL:()=>s,IB:()=>n,L$:()=>a,q:()=>o});let n=["en","zh","ko","ja"],o="en",a={en:"English",zh:"中文",ko:"한국어",ja:"日本語"};function s(){if("undefined"==typeof navigator)return o;let e=navigator.language.split("-")[0];return n.includes(e)?e:o}},32277:(e,t,r)=>{"use strict";r.d(t,{LocaleProvider:()=>m,Y:()=>u});var n=r(90508),o=r(1856),a=r(57472),s=r(25359),l=r(67712);let c="chorus-locale",i=(0,o.createContext)(null);function u(){let e=(0,o.useContext)(i);if(!e)throw Error("useLocale must be used within LocaleProvider");return e}function m(e){let{children:t}=e,[u,m]=(0,o.useState)(s.q),[d,h]=(0,o.useState)(null),[f,v]=(0,o.useState)(!1);(0,o.useEffect)(()=>{let e,t=localStorage.getItem(c);t&&s.IB.includes(t)?e=t:(e=(0,s.AL)(),localStorage.setItem(c,e)),m(e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),v(!0)},[]),(0,o.useEffect)(()=>{f&&r(15272)("./".concat(u,".json")).then(e=>{h(e.default)}).catch(e=>{l.q.error("Failed to load messages for locale ".concat(u,":"),e),r(15272)("./".concat(s.q,".json")).then(e=>{h(e.default)})})},[u,f]);let y=(0,o.useCallback)(e=>{m(e),localStorage.setItem(c,e),document.cookie="chorus-locale=".concat(e,";path=/;max-age=").concat(31536e3,";SameSite=Lax"),document.documentElement.lang=e},[]);return f&&d?(0,n.jsx)(i.Provider,{value:{locale:u,setLocale:y},children:(0,n.jsx)(a.A,{locale:u,messages:d,children:t})}):null}},40834:(e,t,r)=>{"use strict";r.d(t,{ProgressProvider:()=>a});var n=r(90508),o=r(27290);function a(e){let{children:t}=e;return(0,n.jsx)(o.V,{height:"3px",color:"hsl(var(--primary))",delay:120,options:{showSpinner:!1},disableSameURL:!0,shallowRouting:!0,children:t})}},49408:e=>{e.exports={style:{fontFamily:"'Geist Mono', 'Geist Mono Fallback'",fontStyle:"normal"},className:"__className_c29908",variable:"__variable_c29908"}},57472:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});var n=r(12079),o=r(90508);function a(e){let{locale:t,...r}=e;if(!t)throw Error(void 0);return(0,o.jsx)(n.Dk,{locale:t,...r})}},66160:e=>{e.exports={style:{fontFamily:"'Geist', 'Geist Fallback'",fontStyle:"normal"},className:"__className_246ccd",variable:"__variable_246ccd"}},67712:(e,t,r)=>{"use strict";r.d(t,{q:()=>l});var n=r(55036);let o={debug:0,info:1,warn:2,error:3},a=n.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function s(e){return o[e]>=o[a]}let l={debug:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("debug")&&console.debug("[Chorus] ".concat(e),...r)},info:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("info")&&console.info("[Chorus] ".concat(e),...r)},warn:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("warn")&&console.warn("[Chorus] ".concat(e),...r)},error:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];s("error")&&console.error("[Chorus] ".concat(e),...r)}}},73748:(e,t,r)=>{"use strict";r.d(t,{D:()=>u,N:()=>m});var n=r(1856),o=(e,t,r,n,o,a,s,l)=>{let c=document.documentElement,i=["light","dark"];function u(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&a?o.map(e=>a[e]||e):o;r?(c.classList.remove(...n),c.classList.add(a&&a[t]?a[t]:t)):c.setAttribute(e,t)}),r=t,l&&i.includes(r)&&(c.style.colorScheme=r)}if(n)u(n);else try{let e=localStorage.getItem(t)||r,n=s&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;u(n)}catch(e){}},a=["light","dark"],s="(prefers-color-scheme: dark)",l="undefined"==typeof window,c=n.createContext(void 0),i={setTheme:e=>{},themes:[]},u=()=>{var e;return null!=(e=n.useContext(c))?e:i},m=e=>n.useContext(c)?n.createElement(n.Fragment,null,e.children):n.createElement(h,{...e}),d=["light","dark"],h=e=>{let{forcedTheme:t,disableTransitionOnChange:r=!1,enableSystem:o=!0,enableColorScheme:l=!0,storageKey:i="theme",themes:u=d,defaultTheme:m=o?"system":"light",attribute:h="data-theme",value:b,children:p,nonce:w,scriptProps:S}=e,[E,k]=n.useState(()=>v(i,m)),[C,_]=n.useState(()=>"system"===E?g():E),L=b?Object.values(b):u,T=n.useCallback(e=>{let t=e;if(!t)return;"system"===e&&o&&(t=g());let n=b?b[t]:t,s=r?y(w):null,c=document.documentElement,i=e=>{"class"===e?(c.classList.remove(...L),n&&c.classList.add(n)):e.startsWith("data-")&&(n?c.setAttribute(e,n):c.removeAttribute(e))};if(Array.isArray(h)?h.forEach(i):i(h),l){let e=a.includes(m)?m:null,r=a.includes(t)?t:e;c.style.colorScheme=r}null==s||s()},[w]),x=n.useCallback(e=>{let t="function"==typeof e?e(E):e;k(t);try{localStorage.setItem(i,t)}catch(e){}},[E]),P=n.useCallback(e=>{_(g(e)),"system"===E&&o&&!t&&T("system")},[E,t]);n.useEffect(()=>{let e=window.matchMedia(s);return e.addListener(P),P(e),()=>e.removeListener(P)},[P]),n.useEffect(()=>{let e=e=>{e.key===i&&(e.newValue?k(e.newValue):x(m))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[x]),n.useEffect(()=>{T(null!=t?t:E)},[t,E]);let j=n.useMemo(()=>({theme:E,setTheme:x,forcedTheme:t,resolvedTheme:"system"===E?C:E,themes:o?[...u,"system"]:u,systemTheme:o?C:void 0}),[E,x,t,C,o,u]);return n.createElement(c.Provider,{value:j},n.createElement(f,{forcedTheme:t,storageKey:i,attribute:h,enableSystem:o,enableColorScheme:l,defaultTheme:m,value:b,themes:u,nonce:w,scriptProps:S}),p)},f=n.memo(e=>{let{forcedTheme:t,storageKey:r,attribute:a,enableSystem:s,enableColorScheme:l,defaultTheme:c,value:i,themes:u,nonce:m,scriptProps:d}=e,h=JSON.stringify([a,r,c,t,u,i,s,l]).slice(1,-1);return n.createElement("script",{...d,suppressHydrationWarning:!0,nonce:"undefined"==typeof window?m:"",dangerouslySetInnerHTML:{__html:"(".concat(o.toString(),")(").concat(h,")")}})}),v=(e,t)=>{let r;if(!l){try{r=localStorage.getItem(e)||void 0}catch(e){}return r||t}},y=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},g=e=>(e||(e=window.matchMedia(s)),e.matches?"dark":"light")},94651:()=>{},99846:(e,t,r)=>{"use strict";r.d(t,{ThemeProvider:()=>a});var n=r(90508),o=r(73748);function a(e){let{children:t,...r}=e;return(0,n.jsx)(o.N,{attribute:"class",defaultTheme:"system",enableSystem:!0,storageKey:"chorus-theme",disableTransitionOnChange:!0,...r,children:t})}}},e=>{e.O(0,[53169,32492,12079,27290,74951,65496,77358],()=>e(e.s=21922)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[43252],{4714:(e,t,a)=>{Promise.resolve().then(a.bind(a,11725))},6985:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},11725:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>b});var r=a(90508),s=a(1856),i=a(23675),n=a(91814),d=a(12790),l=a.n(d),o=a(39268),c=a(48416),u=a(22922),m=a(14554),p=a(88064),v=a(66093),f=a(6985),x=a(38709),h=a(70633);function g(){let e=(0,o.c)(),t=(0,n.r)(),a=(0,i.useSearchParams)(),[d,g]=(0,s.useState)(""),[b,y]=(0,s.useState)(""),[j,w]=(0,s.useState)(!1),[N,k]=(0,s.useState)(""),[z,A]=(0,s.useState)(!1),[S,_]=(0,s.useState)(!1);(0,s.useEffect)(()=>{let e=a.get("email");e&&(g(e),_(!0))},[a]);let P=async a=>{a.preventDefault(),k(""),A(!0);try{let a=await fetch("/api/admin/login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:d,password:b})}),s=await a.json();if(!s.success){var r;k((null==(r=s.error)?void 0:r.message)||e("admin.invalidCredentials"));return}t.push(s.data.redirectTo||"/admin")}catch(t){k(e("login.networkError"))}finally{A(!1)}};return(0,r.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:(0,r.jsx)(c.Zp,{className:"w-full max-w-[400px]",children:(0,r.jsxs)(c.Wu,{className:"p-10",children:[(0,r.jsxs)("div",{className:"mb-8 flex flex-col items-center gap-2",children:[(0,r.jsx)(v.A,{className:"h-12 w-12 text-destructive"}),(0,r.jsx)("h1",{className:"text-[28px] font-semibold text-foreground",children:e("admin.title")}),S&&(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:d})]}),(0,r.jsxs)("form",{onSubmit:P,className:"space-y-4",children:[!S&&(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsx)(p.J,{htmlFor:"email",children:e("admin.email")}),(0,r.jsx)(m.p,{id:"email",type:"email",placeholder:e("admin.emailPlaceholder"),value:d,onChange:e=>g(e.target.value),required:!0,disabled:z,autoFocus:!0})]}),(0,r.jsxs)("div",{className:"space-y-2",children:[(0,r.jsx)(p.J,{htmlFor:"password",children:e("admin.password")}),(0,r.jsxs)("div",{className:"relative",children:[(0,r.jsx)(m.p,{id:"password",type:j?"text":"password",placeholder:e("admin.passwordPlaceholder"),value:b,onChange:e=>y(e.target.value),required:!0,disabled:z,autoFocus:S,className:"pr-10"}),(0,r.jsx)(u.$,{type:"button",variant:"ghost",size:"icon",onClick:()=>w(!j),className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent",children:j?(0,r.jsx)(f.A,{className:"h-5 w-5 text-muted-foreground"}):(0,r.jsx)(x.A,{className:"h-5 w-5 text-muted-foreground"})})]})]}),N&&(0,r.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:N}),(0,r.jsx)(u.$,{type:"submit",disabled:z,variant:"destructive",className:"w-full",children:z?e("admin.signingIn"):e("admin.signInAsAdmin")})]}),(0,r.jsx)("div",{className:"mt-8 flex justify-center",children:(0,r.jsx)(l(),{href:"/login",children:(0,r.jsxs)(u.$,{variant:"ghost",size:"sm",className:"gap-1",children:[(0,r.jsx)(h.A,{className:"h-4 w-4"}),e("admin.backToEmail")]})})})]})})})}function b(){let e=(0,o.c)();return(0,r.jsx)(s.Suspense,{fallback:(0,r.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,r.jsx)("div",{className:"text-muted-foreground",children:e("common.loading")})}),children:(0,r.jsx)(g,{})})}},14554:(e,t,a)=>{"use strict";a.d(t,{p:()=>i});var r=a(90508);a(1856);var s=a(24377);function i(e){let{className:t,type:a,...i}=e;return(0,r.jsx)("input",{type:a,"data-slot":"input",className:(0,s.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...i})}},22922:(e,t,a)=>{"use strict";a.d(t,{$:()=>l});var r=a(90508);a(1856);var s=a(49499),i=a(54154),n=a(24377);let d=(0,s.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:a="default",size:s="default",asChild:l=!1,...o}=e,c=l?i.bL:"button";return(0,r.jsx)(c,{"data-slot":"button","data-variant":a,"data-size":s,className:(0,n.cn)(d({variant:a,size:s,className:t})),...o})}},24377:(e,t,a)=>{"use strict";a.d(t,{cn:()=>i});var r=a(49251),s=a(58849);function i(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,s.QP)((0,r.$)(t))}},38709:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},48416:(e,t,a)=>{"use strict";a.d(t,{BT:()=>l,Wu:()=>o,ZB:()=>d,Zp:()=>i,aR:()=>n});var r=a(90508);a(1856);var s=a(24377);function i(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card",className:(0,s.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...a})}function n(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-header",className:(0,s.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...a})}function d(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-title",className:(0,s.cn)("leading-none font-semibold",t),...a})}function l(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-description",className:(0,s.cn)("text-muted-foreground text-sm",t),...a})}function o(e){let{className:t,...a}=e;return(0,r.jsx)("div",{"data-slot":"card-content",className:(0,s.cn)("px-6",t),...a})}},58057:(e,t,a)=>{"use strict";a.r(t),a.d(t,{Label:()=>n,Root:()=>d});var r=a(1856),s=a(93367),i=a(90508),n=r.forwardRef((e,t)=>(0,i.jsx)(s.sG.label,{...e,ref:t,onMouseDown:t=>{var a;t.target.closest("button, input, select, textarea")||(null==(a=e.onMouseDown)||a.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));n.displayName="Label";var d=n},66093:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]])},70633:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(66206).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},88064:(e,t,a)=>{"use strict";a.d(t,{J:()=>n});var r=a(90508);a(1856);var s=a(58057),i=a(24377);function n(e){let{className:t,...a}=e;return(0,r.jsx)(s.Root,{"data-slot":"label",className:(0,i.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...a})}},91814:(e,t,a)=>{"use strict";a.d(t,{r:()=>i});var r=a(27290),s=a(1856);function i(){let e=(0,r.r)({delay:120});return(0,s.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},93367:(e,t,a)=>{"use strict";a.d(t,{bL:()=>o,hO:()=>l,sG:()=>d});var r=a(1856),s=a(38129),i=a(54154),n=a(90508),d=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let a=(0,i.TL)(`Primitive.${t}`),s=r.forwardRef((e,r)=>{let{asChild:s,...i}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,n.jsx)(s?a:t,{...i,ref:r})});return s.displayName=`Primitive.${t}`,{...e,[t]:s}},{});function l(e,t){e&&s.flushSync(()=>e.dispatchEvent(t))}var o=d}},e=>{e.O(0,[12079,18944,27290,12790,74951,65496,77358],()=>e(e.s=4714)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[69934],{2151:(e,r,t)=>{"use strict";t.r(r),t.d(r,{default:()=>h});var n=t(90508),a=t(1856),s=t(91814),i=t(39268),o=t(30509),c=t(62990),l=t(48416),u=t(22922);let d=(0,t(66206).A)("music",[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]]);var f=t(85226),g=t(67712);function h(){let e=(0,s.r)(),r=(0,i.c)("login"),[t,h]=(0,a.useState)(""),[p,m]=(0,a.useState)("processingLogin"),v=(0,a.useRef)(!1);(0,a.useEffect)(()=>{v.current||(v.current=!0,x())},[]);let x=async()=>{try{let n=(0,o.XQ)();if(!n){h(r("sessionExpired")),setTimeout(()=>e.push("/login"),2e3);return}m("completingAuth");let a=(0,o.HB)(n),s=await a.signinRedirectCallback();if(!s)throw Error("No user returned from OIDC provider");m("registeringUser");let i=(0,o.bN)(s),l=await fetch("/api/auth/callback",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({companyUuid:n.companyUuid,oidcSub:i.sub,email:i.email,name:i.name,accessToken:s.access_token,refreshToken:s.refresh_token})}),u=await l.json();if(!u.success){var t;throw Error((null==(t=u.error)?void 0:t.message)||"Failed to register user")}if((0,c.hj)(n),m("loginSuccess"),localStorage.getItem("chorus_onboarding_completed"))return void e.push("/projects");try{let r=await fetch("/api/agents"),t=await r.json();if(t.success&&0===t.data.length)return void e.push("/onboarding")}catch(e){}e.push("/projects")}catch(e){g.q.error("OIDC callback error:",e),h(e instanceof Error?e.message:r("authFailed"))}};return(0,n.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:(0,n.jsx)(l.Zp,{className:"w-full max-w-[400px]",children:(0,n.jsxs)(l.Wu,{className:"p-10",children:[(0,n.jsxs)("div",{className:"mb-8 flex flex-col items-center gap-2",children:[(0,n.jsx)(d,{className:"h-12 w-12 text-foreground"}),(0,n.jsx)("h1",{className:"text-[28px] font-semibold text-foreground",children:r("title")})]}),t?(0,n.jsxs)("div",{className:"space-y-4",children:[(0,n.jsx)("div",{className:"rounded-lg bg-destructive/10 p-4 text-center text-sm text-destructive",children:t}),(0,n.jsx)(u.$,{onClick:()=>e.push("/login"),className:"w-full",children:r("backToLogin")})]}):(0,n.jsx)("div",{className:"space-y-4",children:(0,n.jsxs)("div",{className:"flex items-center justify-center gap-3",children:[(0,n.jsx)(f.A,{className:"h-5 w-5 animate-spin text-foreground"}),(0,n.jsx)("span",{className:"text-sm text-muted-foreground",children:r(p)})]})})]})})})}},13248:(e,r,t)=>{Promise.resolve().then(t.bind(t,2151))},22922:(e,r,t)=>{"use strict";t.d(r,{$:()=>c});var n=t(90508);t(1856);var a=t(49499),s=t(54154),i=t(24377);let o=(0,a.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:r,variant:t="default",size:a="default",asChild:c=!1,...l}=e,u=c?s.bL:"button";return(0,n.jsx)(u,{"data-slot":"button","data-variant":t,"data-size":a,className:(0,i.cn)(o({variant:t,size:a,className:r})),...l})}},24377:(e,r,t)=>{"use strict";t.d(r,{cn:()=>s});var n=t(49251),a=t(58849);function s(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];return(0,a.QP)((0,n.$)(r))}},30509:(e,r,t)=>{"use strict";t.d(r,{HB:()=>a,JK:()=>o,XQ:()=>i,bN:()=>c,vh:()=>s});var n=t(14655);function a(e){let r=function(e){let r=window.location.origin,t=new n.O({store:window.localStorage});return{authority:e.issuer,client_id:e.clientId,redirect_uri:"".concat(r,"/login/callback"),post_logout_redirect_uri:"".concat(r,"/login"),response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,userStore:t,extraQueryParams:{company:e.companyUuid}}}(e);return new n.$5(r)}function s(e){localStorage.setItem("oidc_config",JSON.stringify(e))}function i(){let e=localStorage.getItem("oidc_config");if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function o(){localStorage.removeItem("oidc_config")}function c(e){return{sub:e.profile.sub,email:e.profile.email,name:e.profile.name,picture:e.profile.picture,accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_at,idToken:e.id_token}}},48416:(e,r,t)=>{"use strict";t.d(r,{BT:()=>c,Wu:()=>l,ZB:()=>o,Zp:()=>s,aR:()=>i});var n=t(90508);t(1856);var a=t(24377);function s(e){let{className:r,...t}=e;return(0,n.jsx)("div",{"data-slot":"card",className:(0,a.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",r),...t})}function i(e){let{className:r,...t}=e;return(0,n.jsx)("div",{"data-slot":"card-header",className:(0,a.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",r),...t})}function o(e){let{className:r,...t}=e;return(0,n.jsx)("div",{"data-slot":"card-title",className:(0,a.cn)("leading-none font-semibold",r),...t})}function c(e){let{className:r,...t}=e;return(0,n.jsx)("div",{"data-slot":"card-description",className:(0,a.cn)("text-muted-foreground text-sm",r),...t})}function l(e){let{className:r,...t}=e;return(0,n.jsx)("div",{"data-slot":"card-content",className:(0,a.cn)("px-6",r),...t})}},62990:(e,r,t)=>{"use strict";t.d(r,{IT:()=>l,cC:()=>d,hj:()=>i,ri:()=>f,tm:()=>u,w9:()=>o});var n=t(30509);let a=null;function s(){if(!a){let e=(0,n.XQ)();e&&(a=(0,n.HB)(e))}return a}function i(e){return(0,n.vh)(e),a=(0,n.HB)(e)}function o(){a=null}async function c(){let e=s();if(!e)return null;try{return await e.getUser()}catch(e){return null}}async function l(){let e=await c();if(!(null==e?void 0:e.refresh_token)||!e.access_token)return!1;try{return(await fetch("/api/auth/sync-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e.access_token,refreshToken:e.refresh_token})})).ok}catch(e){return!1}}async function u(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fetch(e,{...r,credentials:"same-origin"})}async function d(){let e=s();if(e)try{await e.removeUser()}catch(e){}o(),(0,n.JK)()}async function f(){try{await fetch("/api/auth/logout",{method:"POST"})}catch(e){}let e=s();if(e)try{await e.removeUser()}catch(e){}o(),(0,n.JK)()}},67712:(e,r,t)=>{"use strict";t.d(r,{q:()=>o});var n=t(55036);let a={debug:0,info:1,warn:2,error:3},s=n.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function i(e){return a[e]>=a[s]}let o={debug:function(e){for(var r=arguments.length,t=Array(r>1?r-1:0),n=1;n<r;n++)t[n-1]=arguments[n];i("debug")&&console.debug("[Chorus] ".concat(e),...t)},info:function(e){for(var r=arguments.length,t=Array(r>1?r-1:0),n=1;n<r;n++)t[n-1]=arguments[n];i("info")&&console.info("[Chorus] ".concat(e),...t)},warn:function(e){for(var r=arguments.length,t=Array(r>1?r-1:0),n=1;n<r;n++)t[n-1]=arguments[n];i("warn")&&console.warn("[Chorus] ".concat(e),...t)},error:function(e){for(var r=arguments.length,t=Array(r>1?r-1:0),n=1;n<r;n++)t[n-1]=arguments[n];i("error")&&console.error("[Chorus] ".concat(e),...t)}}},85226:(e,r,t)=>{"use strict";t.d(r,{A:()=>n});let n=(0,t(66206).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},91814:(e,r,t)=>{"use strict";t.d(r,{r:()=>s});var n=t(27290),a=t(1856);function s(){let e=(0,n.r)({delay:120});return(0,a.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}}},e=>{e.O(0,[12079,18944,27290,14655,74951,65496,77358],()=>e(e.s=13248)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[74520],{6985:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},14554:(e,t,r)=>{"use strict";r.d(t,{p:()=>i});var a=r(90508);r(1856);var n=r(24377);function i(e){let{className:t,type:r,...i}=e;return(0,a.jsx)("input",{type:r,"data-slot":"input",className:(0,n.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...i})}},22922:(e,t,r)=>{"use strict";r.d(t,{$:()=>l});var a=r(90508);r(1856);var n=r(49499),i=r(54154),s=r(24377);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:r="default",size:n="default",asChild:l=!1,...c}=e,d=l?i.bL:"button";return(0,a.jsx)(d,{"data-slot":"button","data-variant":r,"data-size":n,className:(0,s.cn)(o({variant:r,size:n,className:t})),...c})}},24377:(e,t,r)=>{"use strict";r.d(t,{cn:()=>i});var a=r(49251),n=r(58849);function i(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.QP)((0,a.$)(t))}},30509:(e,t,r)=>{"use strict";r.d(t,{HB:()=>n,JK:()=>o,XQ:()=>s,bN:()=>l,vh:()=>i});var a=r(14655);function n(e){let t=function(e){let t=window.location.origin,r=new a.O({store:window.localStorage});return{authority:e.issuer,client_id:e.clientId,redirect_uri:"".concat(t,"/login/callback"),post_logout_redirect_uri:"".concat(t,"/login"),response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,userStore:r,extraQueryParams:{company:e.companyUuid}}}(e);return new a.$5(t)}function i(e){localStorage.setItem("oidc_config",JSON.stringify(e))}function s(){let e=localStorage.getItem("oidc_config");if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function o(){localStorage.removeItem("oidc_config")}function l(e){return{sub:e.profile.sub,email:e.profile.email,name:e.profile.name,picture:e.profile.picture,accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_at,idToken:e.id_token}}},31317:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>v});var a=r(90508),n=r(1856),i=r(91814),s=r(39268),o=r(30509),l=r(62990),c=r(48416),d=r(22922),u=r(14554),m=r(88064),f=r(62898),p=r(6985),h=r(38709),g=r(67712);function v(){let e=(0,i.r)(),t=(0,s.c)(),[r,v]=(0,n.useState)(""),[x,y]=(0,n.useState)(""),[b,w]=(0,n.useState)(!1),[j,k]=(0,n.useState)(""),[N,_]=(0,n.useState)(!1),[S,C]=(0,n.useState)(null),[A,z]=(0,n.useState)(!1),[P,T]=(0,n.useState)(!1),[O,I]=(0,n.useState)(!1),[E,J]=(0,n.useState)(null);(0,n.useEffect)(()=>{!async function(){try{var e;let t=await fetch("/api/auth/check-default"),r=await t.json();r.success&&(null==(e=r.data)?void 0:e.enabled)&&(C(r.data),r.data.superAdminCollision&&J([{kind:"super_admin"},{kind:"default_auth"}]))}catch(e){}finally{z(!0)}}()},[]),(0,n.useEffect)(()=>{let t=!1;return async function(){try{let a=await fetch("/api/admin/session"),n=await a.json().catch(()=>({}));if(!t&&(null==n?void 0:n.success))return void e.replace("/admin");let i=await (0,l.tm)("/api/session");if(401===i.status&&(i=await (0,l.tm)("/api/session")),401===i.status&&await (0,l.IT)()&&(i=await (0,l.tm)("/api/session")),!t&&i.ok){var r;let t=await i.json().catch(()=>({}));if((null==t?void 0:t.success)&&(null==t||null==(r=t.data)?void 0:r.user))return void e.replace("/projects")}}catch(e){}finally{t||T(!0)}}(),()=>{t=!0}},[e]);let L=async a=>{a.preventDefault(),k(""),_(!0);try{let a=await fetch("/api/auth/default-login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:r,password:x})}),i=await a.json();if(!i.success){var n;k((null==(n=i.error)?void 0:n.message)||t("login.defaultAuth.error"));return}if(localStorage.getItem("chorus_onboarding_completed"))return void e.push("/projects");try{let t=await fetch("/api/agents"),r=await t.json();if(r.success&&0===r.data.length)return void e.push("/onboarding")}catch(e){}e.push("/projects")}catch(e){k(t("login.networkError"))}finally{_(!1)}},$=async e=>{let t={issuer:e.oidcIssuer,clientId:e.oidcClientId,companyUuid:e.uuid,companyName:e.name};(0,o.vh)(t);let a=(0,o.HB)(t);await a.signinRedirect({extraQueryParams:{login_hint:r}})},F=async a=>{a.preventDefault(),k(""),_(!0);try{var n,i;let a=await fetch("/api/auth/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:r})}),s=await a.json();if(!s.success)return void k((null==(n=s.error)?void 0:n.message)||t("common.genericError"));let o=s.data;"super_admin"===o.type?e.push("/login/admin?email=".concat(encodeURIComponent(r))):"multi_role"===o.type?J(null!=(i=o.roles)?i:[]):"oidc_multi_match"===o.type?e.push("/login/pick-workspace?email=".concat(encodeURIComponent(r))):"oidc"===o.type&&o.company?await $(o.company):k(o.message||t("login.noOrganizationFound"))}catch(e){g.q.error("Login error:",e),k(t("login.networkError"))}finally{_(!1)}},R=async a=>{if(k(""),"super_admin"===a.kind)return void e.push("/login/admin?email=".concat(encodeURIComponent(r)));if("default_auth"===a.kind){J(null),I(!1),y("");return}if("oidc"===a.kind&&a.company)try{await $(a.company)}catch(e){g.q.error("OIDC redirect error:",e),k(t("login.networkError"))}};if(!A||!P)return(0,a.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,a.jsx)("div",{className:"text-muted-foreground",children:t("common.loading")})});let U=null!==E,M=!U&&(null==S?void 0:S.enabled)&&!O;return(0,a.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:(0,a.jsx)(c.Zp,{className:"w-full max-w-[400px]",children:(0,a.jsxs)(c.Wu,{className:"p-10",children:[(0,a.jsxs)("div",{className:"mb-8 flex flex-col items-center gap-2",children:[(0,a.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-12 w-12"}),(0,a.jsx)("h1",{className:"text-[28px] font-semibold text-foreground",children:t("login.title")}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:t("login.subtitle")})]}),U?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("p",{className:"mb-4 text-center text-sm text-muted-foreground",children:t("login.rolePicker.title")}),(0,a.jsx)("div",{className:"flex flex-col gap-3",children:(null!=E?E:[]).map((e,r)=>(0,a.jsx)(c.Zp,{className:"border-border py-0 shadow-none transition-colors hover:border-ring",children:(0,a.jsxs)(d.$,{type:"button",variant:"ghost",onClick:()=>R(e),className:"flex h-auto w-full items-center gap-3 px-4 py-3 text-left hover:bg-transparent",children:[(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-medium text-foreground",children:"super_admin"===e.kind?t("login.rolePicker.superAdmin"):"default_auth"===e.kind?t("login.rolePicker.regularUser"):e.company?t("login.rolePicker.oidcCompany",{company:e.company.name}):t("login.rolePicker.oidcCompanyFallback")}),(0,a.jsx)(f.A,{className:"h-4 w-4 shrink-0 text-muted-foreground","aria-hidden":"true"})]})},"oidc"===e.kind&&e.company?"oidc-".concat(e.company.uuid):"".concat(e.kind,"-").concat(r)))}),j&&(0,a.jsx)("div",{className:"mt-4 rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:j}),(0,a.jsx)("div",{className:"mt-6 flex justify-center",children:(0,a.jsx)(d.$,{variant:"link",size:"sm",onClick:()=>{J(null),k(""),y(""),I(!1)},children:t("login.rolePicker.back")})})]}):M?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("form",{onSubmit:L,className:"space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(m.J,{htmlFor:"email",children:t("login.defaultAuth.email")}),(0,a.jsx)(u.p,{id:"email",type:"email",value:r,onChange:e=>v(e.target.value),required:!0,disabled:N})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(m.J,{htmlFor:"password",children:t("login.defaultAuth.password")}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)(u.p,{id:"password",type:b?"text":"password",value:x,onChange:e=>y(e.target.value),required:!0,disabled:N,autoFocus:!0,className:"pr-10"}),(0,a.jsx)(d.$,{type:"button",variant:"ghost",size:"icon",onClick:()=>w(!b),className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent",children:b?(0,a.jsx)(p.A,{className:"h-5 w-5 text-muted-foreground"}):(0,a.jsx)(h.A,{className:"h-5 w-5 text-muted-foreground"})})]})]}),j&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:j}),(0,a.jsx)(d.$,{type:"submit",disabled:N,className:"w-full",children:N?t("login.checking"):t("login.defaultAuth.submit")})]}),(0,a.jsxs)("div",{className:"mt-6 flex items-center gap-3",children:[(0,a.jsx)("div",{className:"h-px flex-1 bg-border"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:t("login.defaultAuth.orDivider")}),(0,a.jsx)("div",{className:"h-px flex-1 bg-border"})]}),(0,a.jsx)("div",{className:"mt-4 flex justify-center",children:(0,a.jsx)(d.$,{variant:"link",size:"sm",onClick:()=>{I(!0),k(""),y("")},children:t("login.defaultAuth.ssoLink")})})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("form",{onSubmit:F,className:"space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(m.J,{htmlFor:"email",children:t("login.email")}),(0,a.jsx)(u.p,{id:"email",type:"email",placeholder:t("login.emailPlaceholder"),value:r,onChange:e=>v(e.target.value),required:!0,disabled:N})]}),j&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:j}),(0,a.jsx)(d.$,{type:"submit",disabled:N,className:"w-full",children:N?t("login.checking"):t("login.continue")})]}),(0,a.jsx)("p",{className:"mt-8 text-center text-xs text-muted-foreground",children:t("login.helpText")}),(null==S?void 0:S.enabled)&&(0,a.jsx)("div",{className:"mt-4 flex justify-center",children:(0,a.jsx)(d.$,{variant:"link",size:"sm",onClick:()=>{I(!1),k("")},children:t("login.backToLogin")})})]})]})})})}},38709:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},48416:(e,t,r)=>{"use strict";r.d(t,{BT:()=>l,Wu:()=>c,ZB:()=>o,Zp:()=>i,aR:()=>s});var a=r(90508);r(1856);var n=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,n.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...r})}function s(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,n.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function o(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,n.cn)("leading-none font-semibold",t),...r})}function l(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,n.cn)("text-muted-foreground text-sm",t),...r})}function c(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,n.cn)("px-6",t),...r})}},53494:(e,t,r)=>{Promise.resolve().then(r.bind(r,31317))},58057:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Label:()=>s,Root:()=>o});var a=r(1856),n=r(93367),i=r(90508),s=a.forwardRef((e,t)=>(0,i.jsx)(n.sG.label,{...e,ref:t,onMouseDown:t=>{var r;t.target.closest("button, input, select, textarea")||(null==(r=e.onMouseDown)||r.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));s.displayName="Label";var o=s},62898:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},62990:(e,t,r)=>{"use strict";r.d(t,{IT:()=>c,cC:()=>u,hj:()=>s,ri:()=>m,tm:()=>d,w9:()=>o});var a=r(30509);let n=null;function i(){if(!n){let e=(0,a.XQ)();e&&(n=(0,a.HB)(e))}return n}function s(e){return(0,a.vh)(e),n=(0,a.HB)(e)}function o(){n=null}async function l(){let e=i();if(!e)return null;try{return await e.getUser()}catch(e){return null}}async function c(){let e=await l();if(!(null==e?void 0:e.refresh_token)||!e.access_token)return!1;try{return(await fetch("/api/auth/sync-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e.access_token,refreshToken:e.refresh_token})})).ok}catch(e){return!1}}async function d(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fetch(e,{...t,credentials:"same-origin"})}async function u(){let e=i();if(e)try{await e.removeUser()}catch(e){}o(),(0,a.JK)()}async function m(){try{await fetch("/api/auth/logout",{method:"POST"})}catch(e){}let e=i();if(e)try{await e.removeUser()}catch(e){}o(),(0,a.JK)()}},67712:(e,t,r)=>{"use strict";r.d(t,{q:()=>o});var a=r(55036);let n={debug:0,info:1,warn:2,error:3},i=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function s(e){return n[e]>=n[i]}let o={debug:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("debug")&&console.debug("[Chorus] ".concat(e),...r)},info:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("info")&&console.info("[Chorus] ".concat(e),...r)},warn:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("warn")&&console.warn("[Chorus] ".concat(e),...r)},error:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("error")&&console.error("[Chorus] ".concat(e),...r)}}},88064:(e,t,r)=>{"use strict";r.d(t,{J:()=>s});var a=r(90508);r(1856);var n=r(58057),i=r(24377);function s(e){let{className:t,...r}=e;return(0,a.jsx)(n.Root,{"data-slot":"label",className:(0,i.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}},91814:(e,t,r)=>{"use strict";r.d(t,{r:()=>i});var a=r(27290),n=r(1856);function i(){let e=(0,a.r)({delay:120});return(0,n.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},93367:(e,t,r)=>{"use strict";r.d(t,{bL:()=>c,hO:()=>l,sG:()=>o});var a=r(1856),n=r(38129),i=r(54154),s=r(90508),o=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let r=(0,i.TL)(`Primitive.${t}`),n=a.forwardRef((e,a)=>{let{asChild:n,...i}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,s.jsx)(n?r:t,{...i,ref:a})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function l(e,t){e&&n.flushSync(()=>e.dispatchEvent(t))}var c=o}},e=>{e.O(0,[12079,18944,27290,14655,74951,65496,77358],()=>e(e.s=53494)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[74520],{6985:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},14554:(e,t,r)=>{"use strict";r.d(t,{p:()=>i});var a=r(90508);r(1856);var n=r(24377);function i(e){let{className:t,type:r,...i}=e;return(0,a.jsx)("input",{type:r,"data-slot":"input",className:(0,n.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",t),...i})}},22922:(e,t,r)=>{"use strict";r.d(t,{$:()=>l});var a=r(90508);r(1856);var n=r(49499),i=r(54154),s=r(24377);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function l(e){let{className:t,variant:r="default",size:n="default",asChild:l=!1,...c}=e,d=l?i.bL:"button";return(0,a.jsx)(d,{"data-slot":"button","data-variant":r,"data-size":n,className:(0,s.cn)(o({variant:r,size:n,className:t})),...c})}},24377:(e,t,r)=>{"use strict";r.d(t,{cn:()=>i});var a=r(49251),n=r(58849);function i(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.QP)((0,a.$)(t))}},30509:(e,t,r)=>{"use strict";r.d(t,{HB:()=>n,JK:()=>o,XQ:()=>s,bN:()=>l,vh:()=>i});var a=r(14655);function n(e){let t=function(e){let t=window.location.origin,r=new a.O({store:window.localStorage});return{authority:e.issuer,client_id:e.clientId,redirect_uri:"".concat(t,"/login/callback"),post_logout_redirect_uri:"".concat(t,"/login"),response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,userStore:r,extraQueryParams:{company:e.companyUuid}}}(e);return new a.$5(t)}function i(e){localStorage.setItem("oidc_config",JSON.stringify(e))}function s(){let e=localStorage.getItem("oidc_config");if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function o(){localStorage.removeItem("oidc_config")}function l(e){return{sub:e.profile.sub,email:e.profile.email,name:e.profile.name,picture:e.profile.picture,accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_at,idToken:e.id_token}}},31317:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>v});var a=r(90508),n=r(1856),i=r(91814),s=r(39268),o=r(30509),l=r(62990),c=r(48416),d=r(22922),u=r(14554),m=r(88064),f=r(62898),p=r(6985),h=r(38709),g=r(67712);function v(){let e=(0,i.r)(),t=(0,s.c)(),[r,v]=(0,n.useState)(""),[x,y]=(0,n.useState)(""),[b,w]=(0,n.useState)(!1),[j,k]=(0,n.useState)(""),[N,_]=(0,n.useState)(!1),[S,C]=(0,n.useState)(null),[A,z]=(0,n.useState)(!1),[P,T]=(0,n.useState)(!1),[O,I]=(0,n.useState)(!1),[E,J]=(0,n.useState)(null);(0,n.useEffect)(()=>{!async function(){try{var e;let t=await fetch("/api/auth/check-default"),r=await t.json();r.success&&(null==(e=r.data)?void 0:e.enabled)&&(C(r.data),r.data.superAdminCollision&&J([{kind:"super_admin"},{kind:"default_auth"}]))}catch(e){}finally{z(!0)}}()},[]),(0,n.useEffect)(()=>{let t=!1;return async function(){try{let a=await fetch("/api/admin/session"),n=await a.json().catch(()=>({}));if(!t&&(null==n?void 0:n.success))return void e.replace("/admin");let i=await (0,l.tm)("/api/session");if(401===i.status&&(i=await (0,l.tm)("/api/session")),401===i.status&&await (0,l.IT)()&&(i=await (0,l.tm)("/api/session")),!t&&i.ok){var r;let t=await i.json().catch(()=>({}));if((null==t?void 0:t.success)&&(null==t||null==(r=t.data)?void 0:r.user))return void e.replace("/projects")}}catch(e){}finally{t||T(!0)}}(),()=>{t=!0}},[e]);let L=async a=>{a.preventDefault(),k(""),_(!0);try{let a=await fetch("/api/auth/default-login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:r,password:x})}),i=await a.json();if(!i.success){var n;k((null==(n=i.error)?void 0:n.message)||t("login.defaultAuth.error"));return}if(localStorage.getItem("chorus_onboarding_completed"))return void e.push("/projects");try{let t=await fetch("/api/agents"),r=await t.json();if(r.success&&0===r.data.length)return void e.push("/onboarding")}catch(e){}e.push("/projects")}catch(e){k(t("login.networkError"))}finally{_(!1)}},$=async e=>{let t={issuer:e.oidcIssuer,clientId:e.oidcClientId,companyUuid:e.uuid,companyName:e.name};(0,o.vh)(t);let a=(0,o.HB)(t);await a.signinRedirect({extraQueryParams:{login_hint:r}})},F=async a=>{a.preventDefault(),k(""),_(!0);try{var n,i;let a=await fetch("/api/auth/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:r})}),s=await a.json();if(!s.success)return void k((null==(n=s.error)?void 0:n.message)||t("common.genericError"));let o=s.data;"super_admin"===o.type?e.push("/login/admin?email=".concat(encodeURIComponent(r))):"multi_role"===o.type?J(null!=(i=o.roles)?i:[]):"oidc_multi_match"===o.type?e.push("/login/pick-workspace?email=".concat(encodeURIComponent(r))):"oidc"===o.type&&o.company?await $(o.company):k(o.message||t("login.noOrganizationFound"))}catch(e){g.q.error("Login error:",e),k(t("login.networkError"))}finally{_(!1)}},R=async a=>{if(k(""),"super_admin"===a.kind)return void e.push("/login/admin?email=".concat(encodeURIComponent(r)));if("default_auth"===a.kind){J(null),I(!1),y("");return}if("oidc"===a.kind&&a.company)try{await $(a.company)}catch(e){g.q.error("OIDC redirect error:",e),k(t("login.networkError"))}};if(!A||!P)return(0,a.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background",children:(0,a.jsx)("div",{className:"text-muted-foreground",children:t("common.loading")})});let U=null!==E,M=!U&&(null==S?void 0:S.enabled)&&!O;return(0,a.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:(0,a.jsx)(c.Zp,{className:"w-full max-w-[400px]",children:(0,a.jsxs)(c.Wu,{className:"p-10",children:[(0,a.jsxs)("div",{className:"mb-8 flex flex-col items-center gap-2",children:[(0,a.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-12 w-12"}),(0,a.jsx)("h1",{className:"text-[28px] font-semibold text-foreground",children:t("login.title")}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:t("login.subtitle")})]}),U?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("p",{className:"mb-4 text-center text-sm text-muted-foreground",children:t("login.rolePicker.title")}),(0,a.jsx)("div",{className:"flex flex-col gap-3",children:(null!=E?E:[]).map((e,r)=>(0,a.jsx)(c.Zp,{className:"border-border py-0 shadow-none transition-colors hover:border-ring",children:(0,a.jsxs)(d.$,{type:"button",variant:"ghost",onClick:()=>R(e),className:"flex h-auto w-full items-center gap-3 px-4 py-3 text-left hover:bg-transparent",children:[(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate text-sm font-medium text-foreground",children:"super_admin"===e.kind?t("login.rolePicker.superAdmin"):"default_auth"===e.kind?t("login.rolePicker.regularUser"):e.company?t("login.rolePicker.oidcCompany",{company:e.company.name}):t("login.rolePicker.oidcCompanyFallback")}),(0,a.jsx)(f.A,{className:"h-4 w-4 shrink-0 text-muted-foreground","aria-hidden":"true"})]})},"oidc"===e.kind&&e.company?"oidc-".concat(e.company.uuid):"".concat(e.kind,"-").concat(r)))}),j&&(0,a.jsx)("div",{className:"mt-4 rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:j}),(0,a.jsx)("div",{className:"mt-6 flex justify-center",children:(0,a.jsx)(d.$,{variant:"link",size:"sm",onClick:()=>{J(null),k(""),y(""),I(!1)},children:t("login.rolePicker.back")})})]}):M?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("form",{onSubmit:L,className:"space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(m.J,{htmlFor:"email",children:t("login.defaultAuth.email")}),(0,a.jsx)(u.p,{id:"email",type:"email",value:r,onChange:e=>v(e.target.value),required:!0,disabled:N})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(m.J,{htmlFor:"password",children:t("login.defaultAuth.password")}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)(u.p,{id:"password",type:b?"text":"password",value:x,onChange:e=>y(e.target.value),required:!0,disabled:N,autoFocus:!0,className:"pr-10"}),(0,a.jsx)(d.$,{type:"button",variant:"ghost",size:"icon",onClick:()=>w(!b),className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent",children:b?(0,a.jsx)(p.A,{className:"h-5 w-5 text-muted-foreground"}):(0,a.jsx)(h.A,{className:"h-5 w-5 text-muted-foreground"})})]})]}),j&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:j}),(0,a.jsx)(d.$,{type:"submit",disabled:N,className:"w-full",children:N?t("login.checking"):t("login.defaultAuth.submit")})]}),(0,a.jsxs)("div",{className:"mt-6 flex items-center gap-3",children:[(0,a.jsx)("div",{className:"h-px flex-1 bg-border"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:t("login.defaultAuth.orDivider")}),(0,a.jsx)("div",{className:"h-px flex-1 bg-border"})]}),(0,a.jsx)("div",{className:"mt-4 flex justify-center",children:(0,a.jsx)(d.$,{variant:"link",size:"sm",onClick:()=>{I(!0),k(""),y("")},children:t("login.defaultAuth.ssoLink")})})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("form",{onSubmit:F,className:"space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(m.J,{htmlFor:"email",children:t("login.email")}),(0,a.jsx)(u.p,{id:"email",type:"email",placeholder:t("login.emailPlaceholder"),value:r,onChange:e=>v(e.target.value),required:!0,disabled:N})]}),j&&(0,a.jsx)("div",{className:"rounded-lg bg-destructive/10 p-3 text-sm text-destructive",children:j}),(0,a.jsx)(d.$,{type:"submit",disabled:N,className:"w-full",children:N?t("login.checking"):t("login.continue")})]}),(0,a.jsx)("p",{className:"mt-8 text-center text-xs text-muted-foreground",children:t("login.helpText")}),(null==S?void 0:S.enabled)&&(0,a.jsx)("div",{className:"mt-4 flex justify-center",children:(0,a.jsx)(d.$,{variant:"link",size:"sm",onClick:()=>{I(!1),k("")},children:t("login.backToLogin")})})]})]})})})}},38709:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},48416:(e,t,r)=>{"use strict";r.d(t,{BT:()=>l,Wu:()=>c,ZB:()=>o,Zp:()=>i,aR:()=>s});var a=r(90508);r(1856);var n=r(24377);function i(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,n.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...r})}function s(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,n.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function o(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,n.cn)("leading-none font-semibold",t),...r})}function l(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,n.cn)("text-muted-foreground text-sm",t),...r})}function c(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,n.cn)("px-6",t),...r})}},58057:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Label:()=>s,Root:()=>o});var a=r(1856),n=r(93367),i=r(90508),s=a.forwardRef((e,t)=>(0,i.jsx)(n.sG.label,{...e,ref:t,onMouseDown:t=>{var r;t.target.closest("button, input, select, textarea")||(null==(r=e.onMouseDown)||r.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));s.displayName="Label";var o=s},59420:(e,t,r)=>{Promise.resolve().then(r.bind(r,31317))},62898:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},62990:(e,t,r)=>{"use strict";r.d(t,{IT:()=>c,cC:()=>u,hj:()=>s,ri:()=>m,tm:()=>d,w9:()=>o});var a=r(30509);let n=null;function i(){if(!n){let e=(0,a.XQ)();e&&(n=(0,a.HB)(e))}return n}function s(e){return(0,a.vh)(e),n=(0,a.HB)(e)}function o(){n=null}async function l(){let e=i();if(!e)return null;try{return await e.getUser()}catch(e){return null}}async function c(){let e=await l();if(!(null==e?void 0:e.refresh_token)||!e.access_token)return!1;try{return(await fetch("/api/auth/sync-token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accessToken:e.access_token,refreshToken:e.refresh_token})})).ok}catch(e){return!1}}async function d(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fetch(e,{...t,credentials:"same-origin"})}async function u(){let e=i();if(e)try{await e.removeUser()}catch(e){}o(),(0,a.JK)()}async function m(){try{await fetch("/api/auth/logout",{method:"POST"})}catch(e){}let e=i();if(e)try{await e.removeUser()}catch(e){}o(),(0,a.JK)()}},67712:(e,t,r)=>{"use strict";r.d(t,{q:()=>o});var a=r(55036);let n={debug:0,info:1,warn:2,error:3},i=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function s(e){return n[e]>=n[i]}let o={debug:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("debug")&&console.debug("[Chorus] ".concat(e),...r)},info:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("info")&&console.info("[Chorus] ".concat(e),...r)},warn:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("warn")&&console.warn("[Chorus] ".concat(e),...r)},error:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];s("error")&&console.error("[Chorus] ".concat(e),...r)}}},88064:(e,t,r)=>{"use strict";r.d(t,{J:()=>s});var a=r(90508);r(1856);var n=r(58057),i=r(24377);function s(e){let{className:t,...r}=e;return(0,a.jsx)(n.Root,{"data-slot":"label",className:(0,i.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}},91814:(e,t,r)=>{"use strict";r.d(t,{r:()=>i});var a=r(27290),n=r(1856);function i(){let e=(0,a.r)({delay:120});return(0,n.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}},93367:(e,t,r)=>{"use strict";r.d(t,{bL:()=>c,hO:()=>l,sG:()=>o});var a=r(1856),n=r(38129),i=r(54154),s=r(90508),o=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let r=(0,i.TL)(`Primitive.${t}`),n=a.forwardRef((e,a)=>{let{asChild:n,...i}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,s.jsx)(n?r:t,{...i,ref:a})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function l(e,t){e&&n.flushSync(()=>e.dispatchEvent(t))}var c=o}},e=>{e.O(0,[12079,18944,27290,14655,74951,65496,77358],()=>e(e.s=59420)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[772],{22922:(e,t,r)=>{"use strict";r.d(t,{$:()=>c});var a=r(90508);r(1856);var n=r(49499),s=r(54154),i=r(24377);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium cursor-pointer transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function c(e){let{className:t,variant:r="default",size:n="default",asChild:c=!1,...d}=e,l=c?s.bL:"button";return(0,a.jsx)(l,{"data-slot":"button","data-variant":r,"data-size":n,className:(0,i.cn)(o({variant:r,size:n,className:t})),...d})}},24377:(e,t,r)=>{"use strict";r.d(t,{cn:()=>s});var a=r(49251),n=r(58849);function s(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.QP)((0,a.$)(t))}},30509:(e,t,r)=>{"use strict";r.d(t,{HB:()=>n,JK:()=>o,XQ:()=>i,bN:()=>c,vh:()=>s});var a=r(14655);function n(e){let t=function(e){let t=window.location.origin,r=new a.O({store:window.localStorage});return{authority:e.issuer,client_id:e.clientId,redirect_uri:"".concat(t,"/login/callback"),post_logout_redirect_uri:"".concat(t,"/login"),response_type:"code",scope:"openid profile email",automaticSilentRenew:!1,userStore:r,extraQueryParams:{company:e.companyUuid}}}(e);return new a.$5(t)}function s(e){localStorage.setItem("oidc_config",JSON.stringify(e))}function i(){let e=localStorage.getItem("oidc_config");if(!e)return null;try{return JSON.parse(e)}catch(e){return null}}function o(){localStorage.removeItem("oidc_config")}function c(e){return{sub:e.profile.sub,email:e.profile.email,name:e.profile.name,picture:e.profile.picture,accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_at,idToken:e.id_token}}},33066:(e,t,r)=>{Promise.resolve().then(r.bind(r,61839))},38280:(e,t,r)=>{"use strict";r.d(t,{Dj:()=>n,gl:()=>s,sB:()=>i});let a=[{bg:"#F5C4B3",text:"#712B13",darkBg:"#4a2a1e",darkText:"#F5C4B3"},{bg:"#FAC775",text:"#633806",darkBg:"#4a3a1a",darkText:"#FAD79B"},{bg:"#CECBF6",text:"#3C3489",darkBg:"#2f2c52",darkText:"#CECBF6"},{bg:"#B5D4F4",text:"#0C447C",darkBg:"#1e3450",darkText:"#B5D4F4"},{bg:"#C0DD97",text:"#27500A",darkBg:"#2c3d1c",darkText:"#C0DD97"},{bg:"#9FE1CB",text:"#085041",darkBg:"#183d34",darkText:"#9FE1CB"},{bg:"#F4C0D1",text:"#72243E",darkBg:"#48242f",darkText:"#F4C0D1"},{bg:"#FADBB5",text:"#6B3A10",darkBg:"#463421",darkText:"#FADBB5"}];function n(e){let t=e.trim().split(/\s+/);return t.length>=2?(t[0][0]+t[1][0]).toUpperCase():e.slice(0,2).toUpperCase()}function s(e){let t=0;for(let r=0;r<e.length;r++)t=e.charCodeAt(r)+((t<<5)-t);return a[Math.abs(t)%a.length]}function i(e){return{"--icon-bg":e.bg,"--icon-text":e.text,"--icon-bg-dark":e.darkBg,"--icon-text-dark":e.darkText}}},48416:(e,t,r)=>{"use strict";r.d(t,{BT:()=>c,Wu:()=>d,ZB:()=>o,Zp:()=>s,aR:()=>i});var a=r(90508);r(1856);var n=r(24377);function s(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card",className:(0,n.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",t),...r})}function i(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-header",className:(0,n.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",t),...r})}function o(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-title",className:(0,n.cn)("leading-none font-semibold",t),...r})}function c(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-description",className:(0,n.cn)("text-muted-foreground text-sm",t),...r})}function d(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"card-content",className:(0,n.cn)("px-6",t),...r})}},61839:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>m});var a=r(90508),n=r(1856),s=r(23675),i=r(91814),o=r(39268),c=r(62898),d=r(48416),l=r(22922),u=r(30509),g=r(67712),p=r(38280);function m(){let e=(0,i.r)(),t=(0,s.useSearchParams)(),r=(0,o.c)(),m=t.get("email"),x="";try{x=m?decodeURIComponent(m):""}catch(e){x=""}let[f,h]=(0,n.useState)({status:"loading"}),[v,b]=(0,n.useState)(null);(0,n.useEffect)(()=>{if(!x)return void e.replace("/login");let t=!1;return async function(){try{var a,n;let s=await fetch("/api/auth/identify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:x})}),i=await s.json();if(t)return;if(!i.success)return void h({status:"error"});let o=i.data;if("oidc_multi_match"===o.type){let e=null!=(a=o.candidates)?a:[];if(0===e.length)return void h({status:"empty",message:r("login.pickWorkspace.noCandidates")});h({status:"ready",candidates:e});return}if("oidc"===o.type&&o.company){let e={issuer:o.company.oidcIssuer,clientId:o.company.oidcClientId,companyUuid:o.company.uuid,companyName:o.company.name};(0,u.vh)(e);let t=(0,u.HB)(e);await t.signinRedirect({extraQueryParams:{login_hint:x}});return}if("not_found"===o.type)return void h({status:"empty",message:null!=(n=o.message)?n:r("login.pickWorkspace.noCandidates")});e.replace("/login")}catch(e){g.q.error("pick-workspace identify error:",e),t||h({status:"error"})}}(),()=>{t=!0}},[x,e,r]);let y=(0,n.useCallback)(async e=>{b(e.uuid);try{let t=await fetch("/api/auth/company-oidc?uuid=".concat(encodeURIComponent(e.uuid),"&email=").concat(encodeURIComponent(x))),r=await t.json();if(!r.success||!r.data){h({status:"error"}),b(null);return}let a={issuer:r.data.oidcIssuer,clientId:r.data.oidcClientId,companyUuid:r.data.uuid,companyName:r.data.name};(0,u.vh)(a);let n=(0,u.HB)(a);await n.signinRedirect({extraQueryParams:{login_hint:x}})}catch(e){g.q.error("pick-workspace select error:",e),h({status:"error"}),b(null)}},[x]);return(0,a.jsx)("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:(0,a.jsx)(d.Zp,{className:"w-full max-w-[440px]",children:(0,a.jsxs)(d.Wu,{className:"p-10",children:[(0,a.jsxs)("div",{className:"mb-6 flex flex-col items-center gap-2",children:[(0,a.jsx)("img",{src:"/chorus-icon.png",alt:"Chorus",className:"h-12 w-12"}),(0,a.jsx)("h1",{className:"text-[22px] font-semibold text-foreground",children:r("login.pickWorkspace.title")}),"ready"===f.status&&(0,a.jsx)("p",{className:"text-center text-sm text-muted-foreground",children:r("login.pickWorkspace.subtitle",{count:f.candidates.length})})]}),"loading"===f.status&&(0,a.jsx)("p",{className:"py-6 text-center text-sm text-muted-foreground",children:r("login.pickWorkspace.loading")}),"error"===f.status&&(0,a.jsx)("p",{className:"py-6 text-center text-sm text-destructive",children:r("login.pickWorkspace.errorLoading")}),"empty"===f.status&&(0,a.jsx)("p",{className:"py-6 text-center text-sm text-muted-foreground",children:f.message}),"ready"===f.status&&(0,a.jsx)("div",{className:"flex flex-col gap-3",children:f.candidates.map(e=>{let t=v===e.uuid,r=(0,p.gl)(e.name);return(0,a.jsx)(d.Zp,{className:"border-border py-0 shadow-none transition-colors hover:border-ring",children:(0,a.jsxs)(l.$,{type:"button",variant:"ghost",onClick:()=>y(e),disabled:null!==v,"aria-busy":t,className:"flex h-auto w-full items-center gap-3 px-4 py-3 text-left hover:bg-transparent",children:[(0,a.jsx)("span",{className:"project-icon flex h-10 w-10 shrink-0 items-center justify-center rounded-md text-sm font-semibold",style:(0,p.sB)(r),"aria-hidden":"true",children:(0,p.Dj)(e.name)}),(0,a.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col",children:[(0,a.jsx)("span",{className:"truncate text-sm font-medium text-foreground",children:e.name}),(0,a.jsx)("span",{className:"truncate text-xs text-muted-foreground",children:e.oidcIssuerHost})]}),(0,a.jsx)(c.A,{className:"h-4 w-4 shrink-0 text-muted-foreground","aria-hidden":"true"})]})},e.uuid)})}),(0,a.jsxs)("div",{className:"mt-6 flex flex-wrap items-center justify-center gap-x-2 gap-y-1 text-center text-xs text-muted-foreground",children:[x&&(0,a.jsx)("span",{className:"truncate",title:x,children:x}),(0,a.jsx)(l.$,{variant:"link",size:"sm",onClick:()=>e.push("/login"),className:"h-auto p-0 text-xs",children:r("login.pickWorkspace.differentEmail")})]})]})})})}},62898:(e,t,r)=>{"use strict";r.d(t,{A:()=>a});let a=(0,r(66206).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},67712:(e,t,r)=>{"use strict";r.d(t,{q:()=>o});var a=r(55036);let n={debug:0,info:1,warn:2,error:3},s=a.env.NEXT_PUBLIC_LOG_LEVEL||"warn";function i(e){return n[e]>=n[s]}let o={debug:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];i("debug")&&console.debug("[Chorus] ".concat(e),...r)},info:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];i("info")&&console.info("[Chorus] ".concat(e),...r)},warn:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];i("warn")&&console.warn("[Chorus] ".concat(e),...r)},error:function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];i("error")&&console.error("[Chorus] ".concat(e),...r)}}},91814:(e,t,r)=>{"use strict";r.d(t,{r:()=>s});var a=r(27290),n=r(1856);function s(){let e=(0,a.r)({delay:120});return(0,n.useMemo)(()=>({...e,refresh:()=>e.refresh({showProgress:!1})}),[e])}}},e=>{e.O(0,[12079,18944,27290,14655,74951,65496,77358],()=>e(e.s=33066)),_N_E=e.O()}]);