@ai-development-environment/server 0.0.28 → 0.0.30

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 (402) hide show
  1. package/package.json +1 -1
  2. package/prisma-runtime/prisma/migrations/20260718220000_add_build_freshness/migration.sql +1 -0
  3. package/prisma-runtime/prisma/migrations/20260719010000_add_build_reports/migration.sql +29 -0
  4. package/prisma-runtime/prisma/schema.prisma +24 -0
  5. package/standalone/.next/BUILD_ID +1 -1
  6. package/standalone/.next/app-path-routes-manifest.json +2 -0
  7. package/standalone/.next/build-manifest.json +6 -6
  8. package/standalone/.next/prerender-manifest.json +3 -3
  9. package/standalone/.next/routes-manifest.json +17 -0
  10. package/standalone/.next/server/app/[locale]/actions/page/build-manifest.json +3 -3
  11. package/standalone/.next/server/app/[locale]/actions/page.js.nft.json +1 -1
  12. package/standalone/.next/server/app/[locale]/actions/page_client-reference-manifest.js +1 -1
  13. package/standalone/.next/server/app/[locale]/agents/[id]/page/build-manifest.json +3 -3
  14. package/standalone/.next/server/app/[locale]/agents/[id]/page.js.nft.json +1 -1
  15. package/standalone/.next/server/app/[locale]/agents/[id]/page_client-reference-manifest.js +1 -1
  16. package/standalone/.next/server/app/[locale]/agents/page/build-manifest.json +3 -3
  17. package/standalone/.next/server/app/[locale]/agents/page.js.nft.json +1 -1
  18. package/standalone/.next/server/app/[locale]/agents/page_client-reference-manifest.js +1 -1
  19. package/standalone/.next/server/app/[locale]/build-data/page/build-manifest.json +3 -3
  20. package/standalone/.next/server/app/[locale]/build-data/page.js.nft.json +1 -1
  21. package/standalone/.next/server/app/[locale]/build-data/page_client-reference-manifest.js +1 -1
  22. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/app-paths-manifest.json +3 -0
  23. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/build-manifest.json +16 -0
  24. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/next-font-manifest.json +11 -0
  25. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/react-loadable-manifest.json +1 -0
  26. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/server-reference-manifest.json +4 -0
  27. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js +16 -0
  28. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.map +5 -0
  29. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.nft.json +1 -0
  30. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page_client-reference-manifest.js +3 -0
  31. package/standalone/.next/server/app/[locale]/builds/[buildId]/page/build-manifest.json +3 -3
  32. package/standalone/.next/server/app/[locale]/builds/[buildId]/page.js.nft.json +1 -1
  33. package/standalone/.next/server/app/[locale]/builds/[buildId]/page_client-reference-manifest.js +1 -1
  34. package/standalone/.next/server/app/[locale]/builds/page/build-manifest.json +3 -3
  35. package/standalone/.next/server/app/[locale]/builds/page.js.nft.json +1 -1
  36. package/standalone/.next/server/app/[locale]/builds/page_client-reference-manifest.js +1 -1
  37. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page/build-manifest.json +3 -3
  38. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page.js.nft.json +1 -1
  39. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page_client-reference-manifest.js +1 -1
  40. package/standalone/.next/server/app/[locale]/codebases/page/build-manifest.json +3 -3
  41. package/standalone/.next/server/app/[locale]/codebases/page.js.nft.json +1 -1
  42. package/standalone/.next/server/app/[locale]/codebases/page_client-reference-manifest.js +1 -1
  43. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page/build-manifest.json +3 -3
  44. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page.js.nft.json +1 -1
  45. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page_client-reference-manifest.js +1 -1
  46. package/standalone/.next/server/app/[locale]/comments/page/build-manifest.json +3 -3
  47. package/standalone/.next/server/app/[locale]/comments/page.js.nft.json +1 -1
  48. package/standalone/.next/server/app/[locale]/comments/page_client-reference-manifest.js +1 -1
  49. package/standalone/.next/server/app/[locale]/jira/cache/page/build-manifest.json +3 -3
  50. package/standalone/.next/server/app/[locale]/jira/cache/page.js.nft.json +1 -1
  51. package/standalone/.next/server/app/[locale]/jira/cache/page_client-reference-manifest.js +1 -1
  52. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page/build-manifest.json +3 -3
  53. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page.js.nft.json +1 -1
  54. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  55. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page/build-manifest.json +3 -3
  56. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page.js.nft.json +1 -1
  57. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  58. package/standalone/.next/server/app/[locale]/jira/tickets/page/build-manifest.json +3 -3
  59. package/standalone/.next/server/app/[locale]/jira/tickets/page.js.nft.json +1 -1
  60. package/standalone/.next/server/app/[locale]/jira/tickets/page_client-reference-manifest.js +1 -1
  61. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page/build-manifest.json +3 -3
  62. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page.js.nft.json +1 -1
  63. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page_client-reference-manifest.js +1 -1
  64. package/standalone/.next/server/app/[locale]/page/build-manifest.json +3 -3
  65. package/standalone/.next/server/app/[locale]/page.js.nft.json +1 -1
  66. package/standalone/.next/server/app/[locale]/page_client-reference-manifest.js +1 -1
  67. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page/build-manifest.json +3 -3
  68. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page.js.nft.json +1 -1
  69. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page_client-reference-manifest.js +1 -1
  70. package/standalone/.next/server/app/[locale]/pull-requests/page/build-manifest.json +3 -3
  71. package/standalone/.next/server/app/[locale]/pull-requests/page.js.nft.json +1 -1
  72. package/standalone/.next/server/app/[locale]/pull-requests/page_client-reference-manifest.js +1 -1
  73. package/standalone/.next/server/app/[locale]/settings/page/build-manifest.json +3 -3
  74. package/standalone/.next/server/app/[locale]/settings/page.js.nft.json +1 -1
  75. package/standalone/.next/server/app/[locale]/settings/page_client-reference-manifest.js +1 -1
  76. package/standalone/.next/server/app/[locale]/skills/[skillId]/page/build-manifest.json +3 -3
  77. package/standalone/.next/server/app/[locale]/skills/[skillId]/page.js.nft.json +1 -1
  78. package/standalone/.next/server/app/[locale]/skills/[skillId]/page_client-reference-manifest.js +1 -1
  79. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page/build-manifest.json +3 -3
  80. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page.js.nft.json +1 -1
  81. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page_client-reference-manifest.js +1 -1
  82. package/standalone/.next/server/app/[locale]/skills/groups/page/build-manifest.json +3 -3
  83. package/standalone/.next/server/app/[locale]/skills/groups/page.js.nft.json +1 -1
  84. package/standalone/.next/server/app/[locale]/skills/groups/page_client-reference-manifest.js +1 -1
  85. package/standalone/.next/server/app/[locale]/skills/page/build-manifest.json +3 -3
  86. package/standalone/.next/server/app/[locale]/skills/page.js.nft.json +1 -1
  87. package/standalone/.next/server/app/[locale]/skills/page_client-reference-manifest.js +1 -1
  88. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page/build-manifest.json +3 -3
  89. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page.js.nft.json +1 -1
  90. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page_client-reference-manifest.js +1 -1
  91. package/standalone/.next/server/app/[locale]/tools/page/build-manifest.json +3 -3
  92. package/standalone/.next/server/app/[locale]/tools/page.js.nft.json +1 -1
  93. package/standalone/.next/server/app/[locale]/tools/page_client-reference-manifest.js +1 -1
  94. package/standalone/.next/server/app/[locale]/usage/page/build-manifest.json +3 -3
  95. package/standalone/.next/server/app/[locale]/usage/page.js.nft.json +1 -1
  96. package/standalone/.next/server/app/[locale]/usage/page_client-reference-manifest.js +1 -1
  97. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page/build-manifest.json +3 -3
  98. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page.js.nft.json +1 -1
  99. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page_client-reference-manifest.js +1 -1
  100. package/standalone/.next/server/app/[locale]/worktrees/page/build-manifest.json +3 -3
  101. package/standalone/.next/server/app/[locale]/worktrees/page.js.nft.json +1 -1
  102. package/standalone/.next/server/app/[locale]/worktrees/page_client-reference-manifest.js +1 -1
  103. package/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
  104. package/standalone/.next/server/app/_global-error.html +1 -1
  105. package/standalone/.next/server/app/_global-error.rsc +1 -1
  106. package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  107. package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  108. package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  109. package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  110. package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  111. package/standalone/.next/server/app/_not-found/page/build-manifest.json +3 -3
  112. package/standalone/.next/server/app/_not-found.html +1 -1
  113. package/standalone/.next/server/app/_not-found.rsc +1 -1
  114. package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  115. package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  116. package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  117. package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  118. package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  119. package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  120. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js +2 -2
  121. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js.nft.json +1 -1
  122. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js +2 -2
  123. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js.nft.json +1 -1
  124. package/standalone/.next/server/app/api/codebases/by-path/route.js +2 -2
  125. package/standalone/.next/server/app/api/codebases/by-path/route.js.nft.json +1 -1
  126. package/standalone/.next/server/app/api/codebases/route.js +2 -2
  127. package/standalone/.next/server/app/api/codebases/route.js.nft.json +1 -1
  128. package/standalone/.next/server/app/api/graphql/route.js +2 -2
  129. package/standalone/.next/server/app/api/graphql/route.js.nft.json +1 -1
  130. package/standalone/.next/server/app/api/mcp/route.js +2 -2
  131. package/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  132. package/standalone/.next/server/app/api/tools/call/route.js +2 -2
  133. package/standalone/.next/server/app/api/tools/call/route.js.nft.json +1 -1
  134. package/standalone/.next/server/app/api/tools/catalog/route.js +2 -2
  135. package/standalone/.next/server/app/api/tools/catalog/route.js.nft.json +1 -1
  136. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/app-paths-manifest.json +3 -0
  137. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/build-manifest.json +9 -0
  138. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route/server-reference-manifest.json +4 -0
  139. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js +10 -0
  140. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.map +5 -0
  141. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.nft.json +1 -0
  142. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route_client-reference-manifest.js +3 -0
  143. package/standalone/.next/server/app-paths-manifest.json +2 -0
  144. package/standalone/.next/server/chunks/1oeh_server_app_api_worktrees_[worktreeId]_diff-image_route_actions_0nie5n3.js +3 -0
  145. package/standalone/.next/server/chunks/{[root-of-the-server]__1iv83x0._.js → [root-of-the-server]__0-ypkf7._.js} +1 -1
  146. package/standalone/.next/server/chunks/{[root-of-the-server]__08w_8a-._.js → [root-of-the-server]__00ku6-v._.js} +1 -1
  147. package/standalone/.next/server/chunks/{[root-of-the-server]__0yfvw4a._.js → [root-of-the-server]__0138gz-._.js} +1 -1
  148. package/standalone/.next/server/chunks/{[root-of-the-server]__0r5s0h6._.js → [root-of-the-server]__02vqwey._.js} +2 -2
  149. package/standalone/.next/server/chunks/{[root-of-the-server]__098f8w4._.js → [root-of-the-server]__056cnsc._.js} +1 -1
  150. package/standalone/.next/server/chunks/{[root-of-the-server]__1l6ed2g._.js → [root-of-the-server]__08mfybr._.js} +2 -2
  151. package/standalone/.next/server/chunks/{[root-of-the-server]__0cs2bfc._.js → [root-of-the-server]__08u874i._.js} +1 -1
  152. package/standalone/.next/server/chunks/{[root-of-the-server]__01h2pl1._.js → [root-of-the-server]__09skp6r._.js} +1 -1
  153. package/standalone/.next/server/chunks/{[root-of-the-server]__1mgcft0._.js → [root-of-the-server]__09v6swg._.js} +1 -1
  154. package/standalone/.next/server/chunks/{[root-of-the-server]__0h0mvv8._.js → [root-of-the-server]__0aiyd05._.js} +1 -1
  155. package/standalone/.next/server/chunks/{[root-of-the-server]__14-aq4c._.js → [root-of-the-server]__0cyubup._.js} +1 -1
  156. package/standalone/.next/server/chunks/{[root-of-the-server]__0_l5rqe._.js → [root-of-the-server]__0da1wsf._.js} +1 -1
  157. package/standalone/.next/server/chunks/[root-of-the-server]__0e1fqyr._.js +3 -0
  158. package/standalone/.next/server/chunks/{[root-of-the-server]__1frrx8s._.js → [root-of-the-server]__0f3ptor._.js} +2 -2
  159. package/standalone/.next/server/chunks/{[root-of-the-server]__0k01mi-._.js → [root-of-the-server]__0fih0li._.js} +1 -1
  160. package/standalone/.next/server/chunks/{[root-of-the-server]__02qjyhj._.js → [root-of-the-server]__0g0tnct._.js} +1 -1
  161. package/standalone/.next/server/chunks/{[root-of-the-server]__1ehdq4c._.js → [root-of-the-server]__0gbor-2._.js} +1 -1
  162. package/standalone/.next/server/chunks/{[root-of-the-server]__09lyzw2._.js → [root-of-the-server]__0mj6qcr._.js} +2 -2
  163. package/standalone/.next/server/chunks/{[root-of-the-server]__14uwobw._.js → [root-of-the-server]__0p_h088._.js} +1 -1
  164. package/standalone/.next/server/chunks/[root-of-the-server]__0rwpsai._.js +3 -0
  165. package/standalone/.next/server/chunks/{[root-of-the-server]__0i4bd9d._.js → [root-of-the-server]__0vvjqp5._.js} +1 -1
  166. package/standalone/.next/server/chunks/{[root-of-the-server]__04rx7b9._.js → [root-of-the-server]__0w20bq-._.js} +2 -2
  167. package/standalone/.next/server/chunks/{[root-of-the-server]__0hmrx3m._.js → [root-of-the-server]__0wf0pka._.js} +1 -1
  168. package/standalone/.next/server/chunks/{[root-of-the-server]__0nxj1ky._.js → [root-of-the-server]__0wg2umj._.js} +1 -1
  169. package/standalone/.next/server/chunks/{[root-of-the-server]__17bgip6._.js → [root-of-the-server]__0xa_els._.js} +1 -1
  170. package/standalone/.next/server/chunks/{[root-of-the-server]__0wx4-1l._.js → [root-of-the-server]__0xukz2x._.js} +2 -2
  171. package/standalone/.next/server/chunks/[root-of-the-server]__0zyqmd4._.js +122 -0
  172. package/standalone/.next/server/chunks/[root-of-the-server]__1-z6lg_._.js +3 -0
  173. package/standalone/.next/server/chunks/{[root-of-the-server]__0kxltc8._.js → [root-of-the-server]__15_clsj._.js} +1 -1
  174. package/standalone/.next/server/chunks/{[root-of-the-server]__020ggc3._.js → [root-of-the-server]__15aat79._.js} +1 -1
  175. package/standalone/.next/server/chunks/{[root-of-the-server]__00_-x1w._.js → [root-of-the-server]__15bbm2q._.js} +2 -2
  176. package/standalone/.next/server/chunks/{[root-of-the-server]__09c7zmy._.js → [root-of-the-server]__16l4wed._.js} +1 -1
  177. package/standalone/.next/server/chunks/{[root-of-the-server]__04hrhu3._.js → [root-of-the-server]__19zwwdv._.js} +1 -1
  178. package/standalone/.next/server/chunks/{[root-of-the-server]__0d4_f1e._.js → [root-of-the-server]__1a5_am-._.js} +1 -1
  179. package/standalone/.next/server/chunks/[root-of-the-server]__1ajaiy1._.js +3 -0
  180. package/standalone/.next/server/chunks/[root-of-the-server]__1dtlzq1._.js +3 -0
  181. package/standalone/.next/server/chunks/[root-of-the-server]__1kpqohm._.js +3 -0
  182. package/standalone/.next/server/chunks/[root-of-the-server]__1l7234r._.js +3 -0
  183. package/standalone/.next/server/chunks/{[root-of-the-server]__0c02fce._.js → [root-of-the-server]__1oa-sy6._.js} +2 -2
  184. package/standalone/.next/server/chunks/[root-of-the-server]__1vip3sa._.js +3 -0
  185. package/standalone/.next/server/chunks/[root-of-the-server]__1vxtcsq._.js +3 -0
  186. package/standalone/.next/server/chunks/{[root-of-the-server]__0cryh-d._.js → [root-of-the-server]__1wtng3p._.js} +1 -1
  187. package/standalone/.next/server/chunks/[root-of-the-server]__1wu654b._.js +3 -0
  188. package/standalone/.next/server/chunks/[root-of-the-server]__1x2nph5._.js +3 -0
  189. package/standalone/.next/server/chunks/[root-of-the-server]__1xk-0be._.js +3 -0
  190. package/standalone/.next/server/chunks/[root-of-the-server]__210dhdj._.js +3 -0
  191. package/standalone/.next/server/chunks/_0exkna-._.js +164 -8
  192. package/standalone/.next/server/chunks/{_0bru086._.js → _0jurkow._.js} +26 -26
  193. package/standalone/.next/server/chunks/{_00mzn-u._.js → _0rx5rfm._.js} +27 -27
  194. package/standalone/.next/server/chunks/_0tufgj0._.js +234 -78
  195. package/standalone/.next/server/chunks/_0w2eghf._.js +164 -8
  196. package/standalone/.next/server/chunks/_152rnkf._.js +17 -17
  197. package/standalone/.next/server/chunks/{_1_g2i-t._.js → _16x77b_._.js} +27 -27
  198. package/standalone/.next/server/chunks/_1dbqy8c._.js +17 -17
  199. package/standalone/.next/server/chunks/_1vrixpc._.js +17 -17
  200. package/standalone/.next/server/chunks/_1yfz-9u._.js +17 -17
  201. package/standalone/.next/server/chunks/src_0o4-snj._.js +1 -1
  202. package/standalone/.next/server/chunks/ssr/1oeh_server_app_[locale]_builds_[buildId]_coverage_page_actions_20i_0zd.js +3 -0
  203. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__08bbv6z._.js +9 -0
  204. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ckj6wg._.js +13 -0
  205. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eit075._.js +3 -0
  206. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsac-e._.js +15 -0
  207. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0uo4dhz._.js +11 -0
  208. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__10-ftkj._.js +3 -0
  209. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__15v1geo._.js +3 -0
  210. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1qm_j4s._.js +3 -0
  211. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1s6_fta._.js +3 -0
  212. package/standalone/.next/server/chunks/ssr/_0-o77zz._.js +3 -0
  213. package/standalone/.next/server/chunks/ssr/_00m30gw._.js +3 -0
  214. package/standalone/.next/server/chunks/ssr/_03961l6._.js +3 -0
  215. package/standalone/.next/server/chunks/ssr/_08q5hnx._.js +35 -0
  216. package/standalone/.next/server/chunks/ssr/_093--4s._.js +3 -0
  217. package/standalone/.next/server/chunks/ssr/{_1kaz2gq._.js → _09lh67h._.js} +2 -2
  218. package/standalone/.next/server/chunks/ssr/_0a1ligo._.js +3 -0
  219. package/standalone/.next/server/chunks/ssr/{_1h3p6oi._.js → _0cw_tqx._.js} +2 -2
  220. package/standalone/.next/server/chunks/ssr/{_0hoc_fd._.js → _0ddgabq._.js} +2 -2
  221. package/standalone/.next/server/chunks/ssr/_0dq-84j._.js +22 -0
  222. package/standalone/.next/server/chunks/ssr/_0dy1ovj._.js +3 -0
  223. package/standalone/.next/server/chunks/ssr/_0ezo890._.js +3 -0
  224. package/standalone/.next/server/chunks/ssr/_0id1774._.js +13 -0
  225. package/standalone/.next/server/chunks/ssr/_0j48up8._.js +1 -1
  226. package/standalone/.next/server/chunks/ssr/_0nhtqty._.js +1 -1
  227. package/standalone/.next/server/chunks/ssr/_0oh246z._.js +3 -0
  228. package/standalone/.next/server/chunks/ssr/{_1r9ohdr._.js → _0q8sy0w._.js} +2 -2
  229. package/standalone/.next/server/chunks/ssr/_0qra30j._.js +3 -0
  230. package/standalone/.next/server/chunks/ssr/_0t2jwg3._.js +109 -0
  231. package/standalone/.next/server/chunks/ssr/{_13jl9nw._.js → _0ufkrvm._.js} +2 -2
  232. package/standalone/.next/server/chunks/ssr/{_0sp1ojg._.js → _0vjihfb._.js} +26 -2
  233. package/standalone/.next/server/chunks/ssr/_0xh-lyy._.js +3 -0
  234. package/standalone/.next/server/chunks/ssr/_1-2qcpf._.js +3 -0
  235. package/standalone/.next/server/chunks/ssr/_15erjna._.js +3 -0
  236. package/standalone/.next/server/chunks/ssr/_17a3xuq._.js +3 -0
  237. package/standalone/.next/server/chunks/ssr/_17p59oz._.js +3 -0
  238. package/standalone/.next/server/chunks/ssr/_1bzibio._.js +109 -0
  239. package/standalone/.next/server/chunks/ssr/_1c2fde9._.js +11 -0
  240. package/standalone/.next/server/chunks/ssr/_1ekznx8._.js +3 -0
  241. package/standalone/.next/server/chunks/ssr/_1k1tyz4._.js +3 -0
  242. package/standalone/.next/server/chunks/ssr/{_1dsdn7w._.js → _1n9rteq._.js} +8 -2
  243. package/standalone/.next/server/chunks/ssr/_1och_zk._.js +3 -0
  244. package/standalone/.next/server/chunks/ssr/_1tpguta._.js +3 -0
  245. package/standalone/.next/server/chunks/ssr/_1v1lo7c._.js +3 -0
  246. package/standalone/.next/server/chunks/ssr/_1vv-dg-._.js +3 -0
  247. package/standalone/.next/server/chunks/ssr/_1zgu74l._.js +1 -1
  248. package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud._.js +1 -1
  249. package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-._.js +1 -1
  250. package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd._.js +1 -1
  251. package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0i._.js +1 -1
  252. package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uzalot.js +4 -0
  253. package/standalone/.next/server/chunks/ssr/src_components_agents_agent-detail_tsx_0lfa4ui._.js +2 -2
  254. package/standalone/.next/server/chunks/ssr/src_components_builds_build-detail-page_tsx_0q1lvps._.js +15 -13
  255. package/standalone/.next/server/chunks/ssr/src_components_builds_builds-page_tsx_17qzmsl._.js +8 -12
  256. package/standalone/.next/server/chunks/ssr/src_components_builds_coverage-report-page_tsx_1nhwba1._.js +11 -0
  257. package/standalone/.next/server/chunks/ssr/src_components_codebases_repository-detail-page_tsx_20_7wk_._.js +5 -5
  258. package/standalone/.next/server/chunks/ssr/src_components_github_actions-page_tsx_18434xt._.js +5 -5
  259. package/standalone/.next/server/chunks/ssr/src_components_github_pull-requests-page_tsx_1il3ga-._.js +12 -12
  260. package/standalone/.next/server/chunks/ssr/src_components_jira_cache-page_tsx_1znt1yl._.js +1 -1
  261. package/standalone/.next/server/chunks/ssr/src_components_skills_skill-sync-page_tsx_15sidhb._.js +1 -1
  262. package/standalone/.next/server/chunks/ssr/src_components_skills_skills-page_tsx_0o1nlbg._.js +3 -3
  263. package/standalone/.next/server/chunks/ssr/src_components_tools_tools-page_tsx_0k1jqcz._.js +2 -2
  264. package/standalone/.next/server/chunks/ssr/src_components_worktrees_worktree-detail-page_tsx_1oexgu_._.js +21 -4
  265. package/standalone/.next/server/functions-config-manifest.json +3 -0
  266. package/standalone/.next/server/middleware-build-manifest.js +6 -6
  267. package/standalone/.next/server/next-font-manifest.js +1 -1
  268. package/standalone/.next/server/next-font-manifest.json +4 -0
  269. package/standalone/.next/server/pages/404.html +1 -1
  270. package/standalone/.next/server/pages/500.html +1 -1
  271. package/standalone/.next/server/server-reference-manifest.js +1 -1
  272. package/standalone/.next/server/server-reference-manifest.json +1 -1
  273. package/standalone/.next/static/chunks/041g9raf1naqv.js +48 -0
  274. package/standalone/.next/static/chunks/08ujwkhzkokhf.js +1 -0
  275. package/standalone/.next/static/chunks/0a82bgw37ev__.js +33 -0
  276. package/standalone/.next/static/chunks/0cw4z7_m01m5f.js +31 -0
  277. package/standalone/.next/static/chunks/0emxr8tr7kji0.js +33 -0
  278. package/standalone/.next/static/chunks/0h8zu6aywqh1-.js +27 -0
  279. package/standalone/.next/static/chunks/0ng892ycfzv2q.js +1 -0
  280. package/standalone/.next/static/chunks/0tgtji0dbbefa.js +107 -0
  281. package/standalone/.next/static/chunks/15_8kla24ff9f.js +1 -0
  282. package/standalone/.next/static/chunks/16-l4kp9o217d.js +1 -0
  283. package/standalone/.next/static/chunks/1c7ci5ai5qyfo.js +1 -0
  284. package/standalone/.next/static/chunks/1egccqmgk3kbi.js +1 -0
  285. package/standalone/.next/static/chunks/1gwvywh0e6i17.js +3 -0
  286. package/standalone/.next/static/chunks/1hehq94hslvbl.js +7 -0
  287. package/standalone/.next/static/chunks/1k5cw41bd4e5r.js +51 -0
  288. package/standalone/.next/static/chunks/{1rivge68m21sm.js → 1mprxk0uebv70.js} +10 -10
  289. package/standalone/.next/static/chunks/1rus13s58mkxy.js +1 -0
  290. package/standalone/.next/static/chunks/{2fzxwi39odugq.js → 1rwqeg_l_plzt.js} +1 -1
  291. package/standalone/.next/static/chunks/1u_jwc-bo10k3.js +1 -0
  292. package/standalone/.next/static/chunks/1ut0xkaqsykm4.js +7 -0
  293. package/standalone/.next/static/chunks/1w_zvfx_jdyv_.js +29 -0
  294. package/standalone/.next/static/chunks/2-wrd12dmwbo-.js +1 -0
  295. package/standalone/.next/static/chunks/23kut2_l2y2-w.js +9 -0
  296. package/standalone/.next/static/chunks/23xyv764-kx8z.js +38 -0
  297. package/standalone/.next/static/chunks/{1wihkuyju-wa-.js → 25haryfoj4x3h.js} +1 -1
  298. package/standalone/.next/static/chunks/{0fr0zp4cwlyrr.js → 28ljy-uz6n_g9.js} +2 -2
  299. package/standalone/.next/static/chunks/29zl8lgsa28tb.js +1 -0
  300. package/standalone/.next/static/chunks/{0w8rd_g6hnvmz.js → 2__bi79el56lb.js} +5 -5
  301. package/standalone/.next/static/chunks/2aq80hyo4l8a2.js +7 -0
  302. package/standalone/.next/static/chunks/{24a_ux27e8jj4.js → 2l_wayk-ioguc.js} +1 -1
  303. package/standalone/.next/static/chunks/2swvzbwm_dr9y.js +1 -0
  304. package/standalone/.next/static/chunks/{0m26h4h36cb_0.js → 3120xcqaqci82.js} +1 -1
  305. package/standalone/.next/static/chunks/315cis1es_5t3.js +41 -0
  306. package/standalone/.next/static/chunks/321feys_9vp2v.js +33 -0
  307. package/standalone/.next/static/chunks/{0d-e51sawr2y8.js → 34oyci46fsc5w.js} +1 -1
  308. package/standalone/.next/static/chunks/{1nqkxeuycfmrt.js → 36_1bjzx79v18.js} +5 -5
  309. package/standalone/.next/static/chunks/37mczlawlcx5l.js +1 -0
  310. package/standalone/.next/static/chunks/3ajj69p_sj615.js +1 -0
  311. package/standalone/.next/static/chunks/{1tcqtaedz7922.js → 3d4ijy7zglgv5.js} +1 -1
  312. package/standalone/.next/static/chunks/3ir4b8po439x7.js +40 -0
  313. package/standalone/.next/static/chunks/3p7wbgo7qd6_m.css +1 -0
  314. package/standalone/.next/static/chunks/3q0q6_ntq8aa5.js +51 -0
  315. package/standalone/.next/static/chunks/3r-6igcofcwxj.js +107 -0
  316. package/standalone/.next/static/chunks/{0m--47yk9j-ec.js → 3tycetq7o8g3h.js} +1 -1
  317. package/standalone/.next/static/chunks/3vg6y29m047x9.js +31 -0
  318. package/standalone/.next/static/chunks/{0biu8z1f8c42u.js → 40ovzayigkz_-.js} +1 -1
  319. package/standalone/.next/static/chunks/41wq-96yyl0uw.js +1 -0
  320. package/standalone/.next/static/chunks/44xu63hsh11xp.js +1 -0
  321. package/standalone/.next/static/chunks/{turbopack-1rw7om86c18dg.js → turbopack-1v9ogj_5hv56l.js} +1 -1
  322. package/standalone/src/services/builds/build-freshness.test.ts +107 -0
  323. package/standalone/src/services/builds/build-freshness.ts +73 -0
  324. package/standalone/src/services/builds/builds.service.test.ts +222 -8
  325. package/standalone/src/services/builds/builds.service.ts +514 -3
  326. package/standalone/.next/server/chunks/[root-of-the-server]__0qjhcow._.js +0 -122
  327. package/standalone/.next/server/chunks/[root-of-the-server]__1878s0b._.js +0 -3
  328. package/standalone/.next/server/chunks/[root-of-the-server]__18zrtty._.js +0 -3
  329. package/standalone/.next/server/chunks/[root-of-the-server]__1_xz_m2._.js +0 -3
  330. package/standalone/.next/server/chunks/[root-of-the-server]__1mx1hqe._.js +0 -3
  331. package/standalone/.next/server/chunks/[root-of-the-server]__1sjjkyp._.js +0 -3
  332. package/standalone/.next/server/chunks/[root-of-the-server]__1vk9266._.js +0 -3
  333. package/standalone/.next/server/chunks/[root-of-the-server]__1yn6pds._.js +0 -3
  334. package/standalone/.next/server/chunks/[root-of-the-server]__1zwpjfo._.js +0 -3
  335. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__03m5q8h._.js +0 -27
  336. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06bk7ik._.js +0 -3
  337. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06f05jg._.js +0 -3
  338. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0oj1os4._.js +0 -3
  339. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1349-us._.js +0 -3
  340. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1osx7qy._.js +0 -27
  341. package/standalone/.next/server/chunks/ssr/_09l5w5d._.js +0 -3
  342. package/standalone/.next/server/chunks/ssr/_0_726fj._.js +0 -3
  343. package/standalone/.next/server/chunks/ssr/_0a1zku5._.js +0 -3
  344. package/standalone/.next/server/chunks/ssr/_0bvpmhm._.js +0 -97
  345. package/standalone/.next/server/chunks/ssr/_0ndnmkz._.js +0 -3
  346. package/standalone/.next/server/chunks/ssr/_0pe56xv._.js +0 -3
  347. package/standalone/.next/server/chunks/ssr/_0pu14lm._.js +0 -3
  348. package/standalone/.next/server/chunks/ssr/_1-1mnp6._.js +0 -3
  349. package/standalone/.next/server/chunks/ssr/_1-7r8vu._.js +0 -3
  350. package/standalone/.next/server/chunks/ssr/_10evhql._.js +0 -3
  351. package/standalone/.next/server/chunks/ssr/_142x9wn._.js +0 -22
  352. package/standalone/.next/server/chunks/ssr/_1_ta7g1._.js +0 -3
  353. package/standalone/.next/server/chunks/ssr/_1eol9we._.js +0 -3
  354. package/standalone/.next/server/chunks/ssr/_1ey5mmy._.js +0 -3
  355. package/standalone/.next/server/chunks/ssr/_1fdyu2w._.js +0 -3
  356. package/standalone/.next/server/chunks/ssr/_1h3t5g1._.js +0 -3
  357. package/standalone/.next/server/chunks/ssr/_1kemhyd._.js +0 -39
  358. package/standalone/.next/server/chunks/ssr/_1kmkrz5._.js +0 -3
  359. package/standalone/.next/server/chunks/ssr/_1lseili._.js +0 -3
  360. package/standalone/.next/server/chunks/ssr/_1oh35yj._.js +0 -3
  361. package/standalone/.next/server/chunks/ssr/_1vhf014._.js +0 -3
  362. package/standalone/.next/server/chunks/ssr/_1x13g5y._.js +0 -3
  363. package/standalone/.next/server/chunks/ssr/_1yzb5-u._.js +0 -11
  364. package/standalone/.next/server/chunks/ssr/_1za3z6k._.js +0 -97
  365. package/standalone/.next/server/chunks/ssr/src_components_0wvh73y._.js +0 -11
  366. package/standalone/.next/server/chunks/ssr/src_components_github_167_ydi._.js +0 -35
  367. package/standalone/.next/static/chunks/00dx8gu-2oyqe.js +0 -45
  368. package/standalone/.next/static/chunks/091l-ij_cv0b6.js +0 -41
  369. package/standalone/.next/static/chunks/0a3s519wuzjet.js +0 -1
  370. package/standalone/.next/static/chunks/0j5n6p9i-vyzo.js +0 -9
  371. package/standalone/.next/static/chunks/0sp_r-c6262te.js +0 -3
  372. package/standalone/.next/static/chunks/0weklluydd2mf.js +0 -23
  373. package/standalone/.next/static/chunks/1eehbcjby4go8.js +0 -95
  374. package/standalone/.next/static/chunks/1joeb4m-mmn69.js +0 -7
  375. package/standalone/.next/static/chunks/1xjd6ye7mxyf5.js +0 -7
  376. package/standalone/.next/static/chunks/23_75iur2dq8p.js +0 -1
  377. package/standalone/.next/static/chunks/24sd_kmnetibb.js +0 -1
  378. package/standalone/.next/static/chunks/278dxvyf095b_.js +0 -55
  379. package/standalone/.next/static/chunks/27k7_zc-iuppd.js +0 -1
  380. package/standalone/.next/static/chunks/2baaj4mpr6i-i.js +0 -1
  381. package/standalone/.next/static/chunks/2cj2ndz_e0hbz.js +0 -1
  382. package/standalone/.next/static/chunks/2dwchs_6y_o5f.js +0 -1
  383. package/standalone/.next/static/chunks/2hv6pkoloju0g.js +0 -33
  384. package/standalone/.next/static/chunks/2lgsgstcvc7uk.css +0 -1
  385. package/standalone/.next/static/chunks/2sqprazdqp7f7.js +0 -1
  386. package/standalone/.next/static/chunks/32agjzrkphjrl.js +0 -9
  387. package/standalone/.next/static/chunks/33y_b6dqfx3tk.js +0 -1
  388. package/standalone/.next/static/chunks/399uxexoo8x7f.js +0 -33
  389. package/standalone/.next/static/chunks/39ecics7n8z5m.js +0 -1
  390. package/standalone/.next/static/chunks/3_kaby2qep1pd.js +0 -34
  391. package/standalone/.next/static/chunks/3h1pxh5fd97ym.js +0 -27
  392. package/standalone/.next/static/chunks/3jbfibit05k5o.js +0 -29
  393. package/standalone/.next/static/chunks/3oyhf7rk2xr_g.js +0 -1
  394. package/standalone/.next/static/chunks/3q7vh58-5dkv2.js +0 -25
  395. package/standalone/.next/static/chunks/3td_-1s61zkpa.js +0 -38
  396. package/standalone/.next/static/chunks/3xkoiasuwi3ms.js +0 -95
  397. package/standalone/.next/static/chunks/41s57pssydrel.js +0 -43
  398. package/standalone/.next/static/chunks/42flok13o-l0b.js +0 -1
  399. package/standalone/.next/static/chunks/43gw6_6hbw18w.js +0 -51
  400. /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_buildManifest.js +0 -0
  401. /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_clientMiddlewareManifest.js +0 -0
  402. /package/standalone/.next/static/{_pMjurqsAcC478HIzIe-d → ePu377E66yy0icQx3ykQJ}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,326999,e=>{"use strict";var t=e.i(271645);function r(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)}}function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function o(...e){return t.useCallback(function(...e){return t=>{let r=!1,o=e.map(e=>{let o=n(e,t);return r||"function"!=typeof o||(r=!0),o});if(r)return()=>{for(let t=0;t<o.length;t++){let r=o[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}"u">typeof window&&window.document&&window.document.createElement;var i=e.i(30030),a=e.i(610772),l=globalThis?.document?t.useLayoutEffect:()=>{};t[" useEffectEvent ".trim().toString()],t[" useInsertionEffect ".trim().toString()];var u=t[" useInsertionEffect ".trim().toString()]||l;Symbol("RADIX:SYNC_STATE");var s=e.i(726330),c=e.i(765491),f=e.i(774606),p=e.i(296626);function d(e){let r=t.forwardRef((r,n)=>{var i;let a,l,{children:u,...s}=r,c=null,f=!1,p=[];y(u)&&"function"==typeof b&&(u=b(u._payload)),t.Children.forEach(u,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===h){f=!0;let t="child"in e.props?e.props.child:e.props.children;y(t)&&"function"==typeof b&&(t=b(t._payload)),c=m(e,t),p.push(c?.props?.children)}else p.push(e)}),c?c=t.cloneElement(c,void 0,p):!f&&1===t.Children.count(u)&&t.isValidElement(u)&&(c=u);let d=c?(i=c,(l=(a=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?i.ref:(l=(a=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,g=o(n,d);if(!c){if(u||0===u)throw Error(f?v(e):P(e));return u}let x=function(e,t){let r={...t};for(let n in t){let o=e[n],i=t[n];/^on[A-Z]/.test(n)?o&&i?r[n]=(...e)=>{let t=i(...e);return o(...e),t}:o&&(r[n]=o):"style"===n?r[n]={...o,...i}:"className"===n&&(r[n]=[o,i].filter(Boolean).join(" "))}return{...e,...r}}(s,c.props??{});return c.type!==t.Fragment&&(x.ref=n?g:d),t.cloneElement(c,x)});return r.displayName=`${e}.Slot`,r}e.i(174080);var h=Symbol.for("radix.slottable"),m=(e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null},g=Symbol.for("react.lazy");function y(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===g&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var P=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,v=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,b=t[" use ".trim().toString()],x=e.i(843476),j=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{let n=d(`Primitive.${r}`),o=t.forwardRef((e,t)=>{let{asChild:o,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,x.jsx)(o?n:r,{...i,ref:t})});return o.displayName=`Primitive.${r}`,{...e,[r]:o}},{}),R=e.i(303536),E=e.i(985369),C=e.i(186312),O="Dialog",[w,_]=(0,i.createContextScope)(O),[S,D]=w(O),L=e=>{let{__scopeDialog:r,children:n,open:o,defaultOpen:i,onOpenChange:l,modal:s=!0}=e,c=t.useRef(null),f=t.useRef(null),[p,d]=function({prop:e,defaultProp:r,onChange:n=()=>{},caller:o}){let[i,a,l]=function({defaultProp:e,onChange:r}){let[n,o]=t.useState(e),i=t.useRef(n),a=t.useRef(r);return u(()=>{a.current=r},[r]),t.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,o,a]}({defaultProp:r,onChange:n}),s=void 0!==e,c=s?e:i;{let r=t.useRef(void 0!==e);t.useEffect(()=>{let e=r.current;if(e!==s){let t=s?"controlled":"uncontrolled";console.warn(`${o} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}r.current=s},[s,o])}return[c,t.useCallback(t=>{if(s){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else a(t)},[s,e,a,l])]}({prop:o,defaultProp:i??!1,onChange:l,caller:O});return(0,x.jsx)(S,{scope:r,triggerRef:c,contentRef:f,contentId:(0,a.useId)(),titleId:(0,a.useId)(),descriptionId:(0,a.useId)(),open:p,onOpenChange:d,onOpenToggle:t.useCallback(()=>d(e=>!e),[d]),modal:s,children:n})};L.displayName=O;var k="DialogTrigger",N=t.forwardRef((e,t)=>{let{__scopeDialog:n,...i}=e,a=D(k,n),l=o(t,a.triggerRef);return(0,x.jsx)(j.button,{type:"button","aria-haspopup":"dialog","aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":Y(a.open),...i,ref:l,onClick:r(e.onClick,a.onOpenToggle)})});N.displayName=k;var T="DialogPortal",[A,$]=w(T,{forceMount:void 0}),I=e=>{let{__scopeDialog:r,forceMount:n,children:o,container:i}=e,a=D(T,r);return(0,x.jsx)(A,{scope:r,forceMount:n,children:t.Children.map(o,e=>(0,x.jsx)(p.Presence,{present:n||a.open,children:(0,x.jsx)(f.Portal,{asChild:!0,container:i,children:e})}))})};I.displayName=T;var M="DialogOverlay",F=t.forwardRef((e,t)=>{let r=$(M,e.__scopeDialog),{forceMount:n=r.forceMount,...o}=e,i=D(M,e.__scopeDialog);return i.modal?(0,x.jsx)(p.Presence,{present:n||i.open,children:(0,x.jsx)(z,{...o,ref:t})}):null});F.displayName=M;var U=d("DialogOverlay.RemoveScroll"),z=t.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,i=D(M,r),a=o(t,(0,s.useDismissableLayerSurface)());return(0,x.jsx)(E.RemoveScroll,{as:U,allowPinchZoom:!0,shards:[i.contentRef],children:(0,x.jsx)(j.div,{"data-state":Y(i.open),...n,ref:a,style:{pointerEvents:"auto",...n.style}})})}),W="DialogContent",B=t.forwardRef((e,t)=>{let r=$(W,e.__scopeDialog),{forceMount:n=r.forceMount,...o}=e,i=D(W,e.__scopeDialog);return(0,x.jsx)(p.Presence,{present:n||i.open,children:i.modal?(0,x.jsx)(K,{...o,ref:t}):(0,x.jsx)(V,{...o,ref:t})})});B.displayName=W;var K=t.forwardRef((e,n)=>{let i=D(W,e.__scopeDialog),a=t.useRef(null),l=o(n,i.contentRef,a);return t.useEffect(()=>{let e=a.current;if(e)return(0,C.hideOthers)(e)},[]),(0,x.jsx)(q,{...e,ref:l,trapFocus:i.open,disableOutsidePointerEvents:i.open,onCloseAutoFocus:r(e.onCloseAutoFocus,e=>{e.preventDefault(),i.triggerRef.current?.focus()}),onPointerDownOutside:r(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,r=0===t.button&&!0===t.ctrlKey;(2===t.button||r)&&e.preventDefault()}),onFocusOutside:r(e.onFocusOutside,e=>e.preventDefault())})}),V=t.forwardRef((e,r)=>{let n=D(W,e.__scopeDialog),o=t.useRef(!1),i=t.useRef(!1);return(0,x.jsx)(q,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(o.current||n.triggerRef.current?.focus(),t.preventDefault()),o.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(o.current=!0,"pointerdown"===t.detail.originalEvent.type&&(i.current=!0));let r=t.target;n.triggerRef.current?.contains(r)&&t.preventDefault(),"focusin"===t.detail.originalEvent.type&&i.current&&t.preventDefault()}})}),q=t.forwardRef((e,t)=>{let{__scopeDialog:r,trapFocus:n,onOpenAutoFocus:o,onCloseAutoFocus:i,...a}=e,l=D(W,r);return(0,R.useFocusGuards)(),(0,x.jsx)(x.Fragment,{children:(0,x.jsx)(c.FocusScope,{asChild:!0,loop:!0,trapped:n,onMountAutoFocus:o,onUnmountAutoFocus:i,children:(0,x.jsx)(s.DismissableLayer,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":Y(l.open),...a,ref:t,deferPointerDownOutside:!0,onDismiss:()=>l.onOpenChange(!1)})})})}),X="DialogTitle",Z=t.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,o=D(X,r);return(0,x.jsx)(j.h2,{id:o.titleId,...n,ref:t})});Z.displayName=X;var Q="DialogDescription",G=t.forwardRef((e,t)=>{let{__scopeDialog:r,...n}=e,o=D(Q,r);return(0,x.jsx)(j.p,{id:o.descriptionId,...n,ref:t})});G.displayName=Q;var H="DialogClose",J=t.forwardRef((e,t)=>{let{__scopeDialog:n,...o}=e,i=D(H,n);return(0,x.jsx)(j.button,{type:"button",...o,ref:t,onClick:r(e.onClick,()=>i.onOpenChange(!1))})});function Y(e){return e?"open":"closed"}J.displayName=H,e.s(["Close",0,J,"Content",0,B,"Description",0,G,"Dialog",0,L,"DialogClose",0,J,"DialogContent",0,B,"DialogDescription",0,G,"DialogOverlay",0,F,"DialogPortal",0,I,"DialogTitle",0,Z,"DialogTrigger",0,N,"Overlay",0,F,"Portal",0,I,"Root",0,L,"Title",0,Z,"Trigger",0,N,"WarningProvider",0,e=>e.children,"createDialogScope",0,_],326999)},998183,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return u},searchParamsToUrlQuery:function(){return i},urlQueryToSearchParams:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});function i(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function a(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,a(e));else t.set(r,a(n));return t}function u(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},718967,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return y},MiddlewareNotFoundError:function(){return x},MissingStaticPage:function(){return b},NormalizeError:function(){return P},PageNotFoundError:function(){return v},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return i},execOnce:function(){return a},getDisplayName:function(){return f},getLocationOrigin:function(){return s},getURL:function(){return c},isAbsoluteUrl:function(){return u},isResSent:function(){return p},loadGetInitialProps:function(){return h},normalizeRepeatedSlashes:function(){return d},stringifyError:function(){return j}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=["CLS","FCP","FID","INP","LCP","TTFB"];function a(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,u=e=>l.test(e);function s(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=s();return e.substring(t.length)}function f(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function p(e){return e.finished||e.headersSent}function d(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function h(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await h(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&p(r))return n;if(!n)throw Object.defineProperty(Error(`"${f(e)}.getInitialProps()" should resolve to an object. But found "${n}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return n}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class y extends Error{}class P extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class b extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class x extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function j(e){return JSON.stringify({message:e.message,stack:e.stack})}},233525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},396661,e=>{"use strict";e.s(["mergeClasses",0,(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim()])},871987,388973,e=>{"use strict";e.s(["default",0,{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}],871987),e.s(["hasA11yProp",0,e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1}],388973)},505014,e=>{"use strict";var t=e.i(271645),r=e.i(871987),n=e.i(388973),o=e.i(396661);let i=(0,t.createContext)({}),a=(0,t.forwardRef)(({color:e,size:a,strokeWidth:l,absoluteStrokeWidth:u,className:s="",children:c,iconNode:f,...p},d)=>{let{size:h=24,strokeWidth:m=2,absoluteStrokeWidth:g=!1,color:y="currentColor",className:P=""}=(0,t.useContext)(i)??{},v=u??g?24*Number(l??m)/Number(a??h):l??m;return(0,t.createElement)("svg",{ref:d,...r.default,width:a??h??r.default.width,height:a??h??r.default.height,stroke:e??y,strokeWidth:v,className:(0,o.mergeClasses)("lucide",P,s),...!c&&!(0,n.hasA11yProp)(p)&&{"aria-hidden":"true"},...p},[...f.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(c)?c:[c]])});e.s(["default",0,a],505014)},618566,(e,t,r)=>{t.exports=e.r(976562)},195057,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return l},formatWithValidation:function(){return s},urlObjectKeys:function(){return u}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(190809)._(e.r(998183)),a=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:r}=e,n=e.protocol||"",o=e.pathname||"",l=e.hash||"",u=e.query||"",s=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?s=t+e.host:r&&(s=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(s+=":"+e.port)),u&&"object"==typeof u&&(u=String(i.urlQueryToSearchParams(u)));let c=e.search||u&&`?${u}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||a.test(n))&&!1!==s?(s="//"+(s||""),o&&"/"!==o[0]&&(o="/"+o)):s||(s=""),l&&"#"!==l[0]&&(l="#"+l),c&&"?"!==c[0]&&(c="?"+c),o=o.replace(/[?#]/g,encodeURIComponent),c=c.replace("#","%23"),`${n}${s}${o}${c}${l}`}let u=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function s(e){return l(e)}},818581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=e.r(271645);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=i(e,n)),t&&(o.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},573668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return i}});let n=e.r(718967),o=e.r(652817);function i(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,o.hasBasePath)(r.pathname)}catch(e){return!1}}},284508,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},522016,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return y},useLinkStatus:function(){return v}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(190809),a=e.r(843476),l=i._(e.r(271645)),u=e.r(195057),s=e.r(8372),c=e.r(818581),f=e.r(718967),p=e.r(405550);e.r(233525);let d=e.r(388540),h=e.r(91949),m=e.r(573668),g=e.r(509396);function y(t){var r,n;let o,i,y,[v,b]=(0,l.useOptimistic)(h.IDLE_LINK_STATUS),x=(0,l.useRef)(null),{href:j,as:R,children:E,prefetch:C=null,passHref:O,replace:w,shallow:_,scroll:S,onClick:D,onMouseEnter:L,onTouchStart:k,legacyBehavior:N=!1,onNavigate:T,transitionTypes:A,ref:$,unstable_dynamicOnHover:I,...M}=t;o=E,N&&("string"==typeof o||"number"==typeof o)&&(o=(0,a.jsx)("a",{children:o}));let F=l.default.useContext(s.AppRouterContext),U=!1!==C,z=!1!==C?null===(n=C)||"auto"===n?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,W="string"==typeof(r=R||j)?r:(0,u.formatUrl)(r);if(N){if(o?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});i=l.default.Children.only(o)}let B=N?i&&"object"==typeof i&&i.ref:$,K=l.default.useCallback(e=>(null!==F&&(x.current=(0,h.mountLinkInstance)(e,W,F,z,U,b)),()=>{x.current&&((0,h.unmountLinkForCurrentNavigation)(x.current),x.current=null),(0,h.unmountPrefetchableInstance)(e)}),[U,W,F,z,b]),V={ref:(0,c.useMergedRef)(K,B),onClick(t){N||"function"!=typeof D||D(t),N&&i.props&&"function"==typeof i.props.onClick&&i.props.onClick(t),!F||t.defaultPrevented||function(t,r,n,o,i,a,u){if("u">typeof window){let s,{nodeName:c}=t.currentTarget;if("A"===c.toUpperCase()&&((s=t.currentTarget.getAttribute("target"))&&"_self"!==s||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){o&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),a){let e=!1;if(a({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:f}=e.r(699781);l.default.startTransition(()=>{f(r,o?"replace":"push",!1===i?d.ScrollBehavior.NoScroll:d.ScrollBehavior.Default,n.current,u)})}}(t,W,x,w,S,T,A)},onMouseEnter(e){N||"function"!=typeof L||L(e),N&&i.props&&"function"==typeof i.props.onMouseEnter&&i.props.onMouseEnter(e),F&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===I)},onTouchStart:function(e){N||"function"!=typeof k||k(e),N&&i.props&&"function"==typeof i.props.onTouchStart&&i.props.onTouchStart(e),F&&U&&(0,h.onNavigationIntent)(e.currentTarget,!0===I)}};return(0,f.isAbsoluteUrl)(W)?V.href=W:N&&!O&&("a"!==i.type||"href"in i.props)||(V.href=(0,p.addBasePath)(W)),y=N?l.default.cloneElement(i,V):(0,a.jsx)("a",{...M,...V,children:o}),(0,a.jsx)(P.Provider,{value:v,children:y})}e.r(284508);let P=(0,l.createContext)(h.IDLE_LINK_STATUS),v=()=>(0,l.useContext)(P);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},549092,489790,33165,77105,e=>{"use strict";var t=e.i(247167);function r(e){let t;return("object"==typeof e?null==e.host&&null==e.hostname:!/^[a-z]+:/i.test(e))&&(null==(t="object"==typeof e?e.pathname:e)||!!t.startsWith("/"))}function n(e,t){let r=e;return/^\/(\?.*)?$/.test(t)&&(t=t.slice(1)),r+=t}function o(e,t,r){return"string"==typeof e?e:e[t]||r}function i(e){let r=function(){try{return"true"===t.default.env._next_intl_trailing_slash}catch{return!1}}(),[n,...o]=e.split("#"),i=o.join("#"),a=n;if("/"!==a){let e=a.endsWith("/");r&&!e?a+="/":!r&&e&&(a=a.slice(0,-1))}return i&&(a+="#"+i),a}function a(e,t){let r,n=i(e),o=i(t);return(r=n.replace(/\/\[\[(\.\.\.[^\]]+)\]\]/g,"(?:/(.*))?").replace(/\[\[(\.\.\.[^\]]+)\]\]/g,"(?:/(.*))?").replace(/\[(\.\.\.[^\]]+)\]/g,"(.+)").replace(/\[([^\]]+)\]/g,"([^/]+)"),RegExp(`^${r}$`)).test(o)}function l(e,t){return"never"!==t.mode&&t.prefixes?.[e]||u(e)}function u(e){return"/"+e}function s(e){return e.includes("[[...")}function c(e){return e.includes("[...")}function f(e){return e.includes("[")}function p(e,t){let r=e.split("/"),n=t.split("/"),o=Math.max(r.length,n.length);for(let e=0;e<o;e++){let t=r[e],o=n[e];if(!t&&o)return -1;if(t&&!o)return 1;if(t||o){if(!f(t)&&f(o))return -1;if(f(t)&&!f(o))return 1;if(!c(t)&&c(o))return -1;if(c(t)&&!c(o))return 1;if(!s(t)&&s(o))return -1;if(s(t)&&!s(o))return 1}}return 0}function d(e){return e.sort(p)}e.s(["getLocaleAsPrefix",0,u,"getLocalePrefix",0,l,"getLocalizedTemplate",0,o,"getSortedPathnames",0,d,"hasPathnamePrefixed",0,function(e,t){return t===e||t.startsWith(`${e}/`)},"isLocalizableHref",0,r,"isPromise",0,function(e){return"function"==typeof e.then},"matchesPathname",0,a,"normalizeTrailingSlash",0,i,"prefixPathname",0,n,"unprefixPathname",0,function(e,t){return e.replace(RegExp(`^${t}`),"")||"/"}],549092);var h=e.i(522016),m=e.i(618566),g=e.i(271645),y=e.i(861745);function P(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))Array.isArray(n)?n.forEach(e=>{t.append(r,String(e))}):t.set(r,String(n));return"?"+t.toString()}function v(e,t=window.location.pathname){return"/"===e?t:t.replace(e,"")}function b(e,t,r,n){if(!e||n===r||null==n||!t)return;let o=v(t),{name:i,...a}=e;a.path||(a.path=""!==o?o:"/");let l=`${i}=${n};`;for(let[e,t]of Object.entries(a))l+=`${"maxAge"===e?"max-age":e}`,"boolean"!=typeof t&&(l+="="+t),l+=";";document.cookie=l}e.s(["applyPathnamePrefix",0,function(e,t,o,i){let a,{mode:u}=o.localePrefix;if(void 0!==i)a=i;else if(r(e)){let e=o.domains?.find(e=>e.locales.includes(t)),r=e?.localePrefix||u;"always"===r?a=!0:"as-needed"===r&&(a=e?t!==e.defaultLocale:t!==o.defaultLocale)}return a?n(l(t,o.localePrefix),e):e},"compileLocalizedPathname",0,function({pathname:e,locale:t,params:r,pathnames:n,query:a}){function l(e){let l,u=n[e];return u?(l=o(u,t,e),r&&Object.entries(r).forEach(([e,t])=>{let r,n;Array.isArray(t)?(r=`(\\[)?\\[...${e}\\](\\])?`,n=t.map(e=>String(e)).join("/")):(r=`\\[${e}\\]`,n=String(t)),l=l.replace(RegExp(r,"g"),n)}),l=new URL(l=l.replace(/\[\[\.\.\..+\]\]/g,""),"http://l").pathname):l=e,l=i(l),a&&(l+=P(a)),l}if("string"==typeof e)return l(e);{let{pathname:t,...r}=e;return{...r,pathname:l(t)}}},"getBasePath",0,v,"getRoute",0,function(e,t,r){let n=d(Object.keys(r)),i=decodeURI(t);for(let t of n){let n=r[t];if("string"==typeof n){if(a(n,i))return t}else if(a(o(n,e,t),i))return t}return t},"normalizeNameOrNameWithParams",0,function(e){return"string"==typeof e?{pathname:e}:e},"serializeSearchParams",0,P],489790),e.s(["default",0,b],33165);var x=e.i(843476),j=(0,g.forwardRef)(function({href:e,locale:t,localeCookie:r,onClick:n,prefetch:o,...i},a){let l=(0,y.useLocale)(),u=null!=t&&t!==l,s=(0,m.usePathname)();return u&&(o=!1),(0,x.jsx)(h.default,{ref:a,href:e,hrefLang:u?t:void 0,onClick:function(e){b(r,s,l,t),n&&n(e)},prefetch:o,...i})});e.s(["default",0,j],77105)},520133,e=>{"use strict";var t=e.i(618566),r=e.i(271645),n=e.i(861745),o=r["use".trim()],i=e.i(549092),a=e.i(77105),l=e.i(489790),u=e.i(843476),s=e.i(33165);let{Link:c,redirect:f,usePathname:p,useRouter:d,getPathname:h}=function(e){let{Link:c,config:f,getPathname:p,...d}=function(e,n){var s,c,f;let p={...s=n||{},localePrefix:"object"==typeof(f=s.localePrefix)?f:{mode:f||"always"},localeCookie:!!((c=s.localeCookie)??1)&&{name:"NEXT_LOCALE",sameSite:"lax",..."object"==typeof c&&c},localeDetection:s.localeDetection??!0,alternateLinks:s.alternateLinks??!0},d=p.pathnames,h=(0,r.forwardRef)(function({href:t,locale:r,...n},l){let s,c;"object"==typeof t?(s=t.pathname,c=t.params):s=t;let f=(0,i.isLocalizableHref)(t),h=e(),g=(0,i.isPromise)(h)?o(h):h,y=f?m({locale:r||g,href:null==d?s:{pathname:s,params:c},forcePrefix:null!=r||void 0}):s;return(0,u.jsx)(a.default,{ref:l,href:"object"==typeof t?{...t,pathname:y}:y,locale:r,localeCookie:p.localeCookie,...n})});function m(e){let t,{forcePrefix:r,href:n,locale:o}=e;return null==d?"object"==typeof n?(t=n.pathname,n.query&&(t+=(0,l.serializeSearchParams)(n.query))):t=n:t=(0,l.compileLocalizedPathname)({locale:o,...(0,l.normalizeNameOrNameWithParams)(n),pathnames:p.pathnames}),(0,l.applyPathnamePrefix)(t,o,p,r)}function g(e){return function(t,...r){return e(m(t),...r)}}return{config:p,Link:h,redirect:g(t.redirect),permanentRedirect:g(t.permanentRedirect),getPathname:m}}(n.useLocale,e);return{...d,Link:c,usePathname:function(){let e,o,a=(e=(0,t.usePathname)(),o=(0,n.useLocale)(),(0,r.useMemo)(()=>{if(!e)return e;let t=e,r=(0,i.getLocalePrefix)(o,f.localePrefix);if((0,i.hasPathnamePrefixed)(r,e))t=(0,i.unprefixPathname)(e,r);else if("never"!==f.localePrefix.mode&&f.localePrefix.prefixes){let r=(0,i.getLocaleAsPrefix)(o);(0,i.hasPathnamePrefixed)(r,e)&&(t=(0,i.unprefixPathname)(e,r))}return t},[f.localePrefix,o,e])),u=(0,n.useLocale)();return(0,r.useMemo)(()=>a&&f.pathnames?(0,l.getRoute)(u,a,f.pathnames):a,[u,a])},useRouter:function(){let e=(0,t.useRouter)(),o=(0,n.useLocale)(),i=(0,t.usePathname)();return(0,r.useMemo)(()=>{function t(e){return function(t,r){let{locale:n,...a}=r||{},l=[p({href:t,locale:n||o,forcePrefix:null!=n||void 0})];Object.keys(a).length>0&&l.push(a),(0,s.default)(f.localeCookie,i,o,n),e(...l)}}return{...e,push:t(e.push),replace:t(e.replace),prefetch:t(e.prefetch)}},[o,i,e])},getPathname:p}}({locales:["en","es","fr","de"],defaultLocale:"en",localePrefix:"always"});e.s(["Link",0,c,"usePathname",0,p,"useRouter",0,d],520133)}]);
@@ -1,33 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,482022,e=>{"use strict";let t=(0,e.i(456420).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],482022)},986253,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["default",0,t])},716327,e=>{"use strict";var t=e.i(26495);e.s(["ChevronDown",()=>t.default])},630299,e=>{"use strict";let t=(0,e.i(456420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["default",0,t])},784774,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:n,...i}){return(0,t.jsx)("div",{className:(0,r.cn)("w-full overflow-x-auto",n),children:(0,t.jsx)("table",{className:(0,r.cn)("w-full caption-bottom text-sm",e),...i})})},"TableBody",0,function({className:e,...n}){return(0,t.jsx)("tbody",{className:(0,r.cn)("divide-y",e),...n})},"TableCell",0,function({className:e,...n}){return(0,t.jsx)("td",{className:(0,r.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...n})},"TableFooter",0,function({className:e,...n}){return(0,t.jsx)("tfoot",{className:(0,r.cn)("border-t bg-muted/50 font-medium",e),...n})},"TableHead",0,function({className:e,...n}){return(0,t.jsx)("th",{className:(0,r.cn)("h-10 whitespace-nowrap px-3 text-left align-middle text-xs font-medium text-muted-foreground",e),...n})},"TableHeader",0,function({className:e,...n}){return(0,t.jsx)("thead",{className:(0,r.cn)("border-b",e),...n})},"TableRow",0,function({className:e,...n}){return(0,t.jsx)("tr",{className:(0,r.cn)("transition-colors hover:bg-muted/40",e),...n})}])},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},508734,e=>{"use strict";let t=(0,e.i(456420).default)("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"}]]);e.s(["Copy",0,t],508734)},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let i=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,n.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,n.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,n.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...s}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,n.cn)(i({variant:r,className:e})),...s})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,n.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},842727,e=>{"use strict";var t=e.i(271645);function r(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)}}"u">typeof window&&window.document&&window.document.createElement;var n=e.i(75830);function i(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function s(...e){return t.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=i(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():i(e[t],null)}}}}(...e),e)}var l=e.i(30030),a=e.i(610772);e.i(174080);var o=Symbol.for("radix.slottable"),c=Symbol.for("react.lazy");function u(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===c&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var d=t[" use ".trim().toString()],m=e.i(843476),p=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var n;let i,l=(n=`Primitive.${r}`,(i=t.forwardRef((e,r)=>{var i;let l,a,{children:c,...m}=e,p=null,h=!1,f=[];u(c)&&"function"==typeof d&&(c=d(c._payload)),t.Children.forEach(c,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===o){h=!0;let r="child"in e.props?e.props.child:e.props.children;u(r)&&"function"==typeof d&&(r=d(r._payload)),p=((e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null})(e,r),f.push(p?.props?.children)}else f.push(e)}),p?p=t.cloneElement(p,void 0,f):!h&&1===t.Children.count(c)&&t.isValidElement(c)&&(p=c);let x=p?(i=p,(a=(l=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?i.ref:(a=(l=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,g=s(r,x);if(!p){if(c||0===c){let e,t;throw Error(h?(e=n,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=n,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return c}let y=function(e,t){let r={...t};for(let n in t){let i=e[n],s=t[n];/^on[A-Z]/.test(n)?i&&s?r[n]=(...e)=>{let t=s(...e);return i(...e),t}:i&&(r[n]=i):"style"===n?r[n]={...i,...s}:"className"===n&&(r[n]=[i,s].filter(Boolean).join(" "))}return{...e,...r}}(m,p.props??{});return p.type!==t.Fragment&&(y.ref=r?g:x),t.cloneElement(p,y)})).displayName=`${n}.Slot`,i),a=t.forwardRef((e,t)=>{let{asChild:n,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,m.jsx)(n?l:r,{...i,ref:t})});return a.displayName=`Primitive.${r}`,{...e,[r]:a}},{}),h=e.i(30207),f=globalThis?.document?t.useLayoutEffect:()=>{};t[" useEffectEvent ".trim().toString()],t[" useInsertionEffect ".trim().toString()];var x=t[" useInsertionEffect ".trim().toString()]||f;Symbol("RADIX:SYNC_STATE");var g=e.i(586318),y=!1,b=t[" useSyncExternalStore ".trim().toString()];function j(){return()=>{}}var v="function"==typeof b?function(){return b(j,()=>!0,()=>!1)}:function(){let[e,r]=t.useState(y);return t.useEffect(()=>{y||(y=!0,r(!0))},[]),e},w="rovingFocusGroup.onEntryFocus",k={bubbles:!1,cancelable:!0},S="RovingFocusGroup",[T,R,C]=(0,n.createCollection)(S),[N,E]=(0,l.createContextScope)(S,[C]),[I,D]=N(S),M=t.forwardRef((e,t)=>(0,m.jsx)(T.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,m.jsx)(T.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,m.jsx)(A,{...e,ref:t})})}));M.displayName=S;var A=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:i,orientation:l,loop:a=!1,dir:o,currentTabStopId:c,defaultCurrentTabStopId:u,onCurrentTabStopIdChange:d,onEntryFocus:f,preventScrollOnEntryFocus:y=!1,...b}=e,j=t.useRef(null),v=s(n,j),T=(0,g.useDirection)(o),[C,N]=function({prop:e,defaultProp:r,onChange:n=()=>{},caller:i}){let[s,l,a]=function({defaultProp:e,onChange:r}){let[n,i]=t.useState(e),s=t.useRef(n),l=t.useRef(r);return x(()=>{l.current=r},[r]),t.useEffect(()=>{s.current!==n&&(l.current?.(n),s.current=n)},[n,s]),[n,i,l]}({defaultProp:r,onChange:n}),o=void 0!==e,c=o?e:s;{let r=t.useRef(void 0!==e);t.useEffect(()=>{let e=r.current;if(e!==o){let t=o?"controlled":"uncontrolled";console.warn(`${i} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}r.current=o},[o,i])}return[c,t.useCallback(t=>{if(o){let r="function"==typeof t?t(e):t;r!==e&&a.current?.(r)}else l(t)},[o,e,l,a])]}({prop:c,defaultProp:u??null,onChange:d,caller:S}),[E,D]=t.useState(!1),M=(0,h.useCallbackRef)(f),A=R(i),$=t.useRef(!1),[P,U]=t.useState(0);return t.useEffect(()=>{let e=j.current;if(e)return e.addEventListener(w,M),()=>e.removeEventListener(w,M)},[M]),(0,m.jsx)(I,{scope:i,orientation:l,dir:T,loop:a,currentTabStopId:C,onItemFocus:t.useCallback(e=>N(e),[N]),onItemShiftTab:t.useCallback(()=>D(!0),[]),onFocusableItemAdd:t.useCallback(()=>U(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>U(e=>e-1),[]),children:(0,m.jsx)(p.div,{tabIndex:E||0===P?-1:0,"data-orientation":l,...b,ref:v,style:{outline:"none",...e.style},onMouseDown:r(e.onMouseDown,()=>{$.current=!0}),onFocus:r(e.onFocus,e=>{let t=!$.current;if(e.target===e.currentTarget&&t&&!E){let t=new CustomEvent(w,k);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=A().filter(e=>e.focusable);q([e.find(e=>e.active),e.find(e=>e.id===C),...e].filter(Boolean).map(e=>e.ref.current),y)}}$.current=!1}),onBlur:r(e.onBlur,()=>D(!1))})})}),$="RovingFocusGroupItem",P=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:i,focusable:s=!0,active:l=!1,tabStopId:o,children:c,...u}=e,d=(0,a.useId)(),h=o||d,x=D($,i),g=x.currentTabStopId===h,y=R(i),{onFocusableItemAdd:b,onFocusableItemRemove:j,currentTabStopId:w}=x,k=v();return f(()=>{if(k&&s)return b(),()=>j()},[k,s,b,j]),t.useEffect(()=>{if(!k&&s)return b(),()=>j()},[k,s,b,j]),(0,m.jsx)(T.ItemSlot,{scope:i,id:h,focusable:s,active:l,children:(0,m.jsx)(p.span,{tabIndex:g?0:-1,"data-orientation":x.orientation,...u,ref:n,onMouseDown:r(e.onMouseDown,e=>{s?x.onItemFocus(h):e.preventDefault()}),onFocus:r(e.onFocus,()=>x.onItemFocus(h)),onKeyDown:r(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void x.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,r){var n;let i=(n=e.key,"rtl"!==r?n:"ArrowLeft"===n?"ArrowRight":"ArrowRight"===n?"ArrowLeft":n);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(i))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(i)))return U[i]}(e,x.orientation,x.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let i=y().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)i.reverse();else if("prev"===t||"next"===t){var r,n;"prev"===t&&i.reverse();let s=i.indexOf(e.currentTarget);i=x.loop?(r=i,n=s+1,r.map((e,t)=>r[(n+t)%r.length])):i.slice(s+1)}setTimeout(()=>q(i))}}),children:"function"==typeof c?c({isCurrentTabStop:g,hasTabStop:null!=w}):c})})});P.displayName=$;var U={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function q(e,t=!1){let r=document.activeElement;for(let n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}e.s(["Item",0,P,"Root",0,M,"createRovingFocusGroupScope",0,E],842727)},560972,e=>{"use strict";let t=(0,e.i(456420).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);e.s(["default",0,t])},356505,853138,e=>{"use strict";var t=e.i(843476),r=e.i(456420);let n=(0,r.default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);e.s(["AlertTriangle",0,n],853138);var i=e.i(482022),s=e.i(269846);let l=(0,r.default)("maximize-2",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]]);var a=e.i(948148),o=e.i(271645),c=e.i(653090),u=e.i(278015),d=e.i(762279),m=e.i(456743),p=e.i(929592),h=e.i(487486),f=e.i(519455),x=e.i(515288),g=e.i(906197),y=e.i(980376),b=e.i(987968),j=e.i(520133),v=e.i(637611),w=e.i(741725),k=e.i(467511);let S={highest:"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300",high:"border-orange-500/30 bg-orange-500/10 text-orange-700 dark:text-orange-300",medium:"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",low:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",lowest:"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300"};function T(e){return e?new Date(e).toLocaleString():"—"}function R({ticket:e}){let r=(0,a.useTranslations)("jiraTickets"),n=[[r("assignee"),(0,t.jsx)(c.JiraUser,{avatarUrl:e.assigneeAvatarUrl,name:e.assignee??r("unassigned")},"assignee")],[r("reporter"),e.reporter?(0,t.jsx)(c.JiraUser,{avatarUrl:e.reporter.avatarUrl,name:e.reporter.displayName},"reporter"):"—"],[r("created"),T(e.createdAt)],[r("updated"),T(e.updatedAt)],[r("due"),T(e.dueAt)],[r("resolved"),T(e.resolvedAt)]];return(0,t.jsx)("dl",{className:"grid gap-3 rounded-lg bg-muted/50 p-4 text-sm sm:grid-cols-2",children:n.map(([e,r])=>(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"mt-0.5 font-medium",children:r})]},e))})}function C({label:e,values:r}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:"mt-1",children:r.join(", ")})]})}e.s(["JiraTicketDrawer",0,function({issueKey:e,onClose:r,onTicketChange:c}){let T=(0,a.useTranslations)("jiraTickets"),[N,E]=(0,o.useState)(null),[I,D]=(0,o.useState)(null),[M,A]=(0,o.useState)(!1),[$,P]=(0,o.useState)(!1);(0,o.useEffect)(()=>{if(!e){let e=window.setTimeout(()=>E(null),0);return()=>window.clearTimeout(e)}let t=window.setTimeout(async()=>{A(!0);try{let t=await (0,v.controlPlaneRequest)(`query JiraTicket($issueKey: ID!) { jiraTicket(issueKey: $issueKey) { ${k.JIRA_TICKET_DETAIL_FIELDS} } }`,{issueKey:e});E(t.jiraTicket),D(null)}catch(e){D(e instanceof Error?e.message:String(e))}finally{A(!1)}},0);return()=>window.clearTimeout(t)},[e]);let U=e=>{E(e),c?.(e)};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(y.Sheet,{onOpenChange:e=>{e||r()},open:!!e,children:(0,t.jsxs)(y.SheetContent,{className:"w-[min(48rem,95vw)] overflow-y-auto sm:max-w-3xl",children:[(0,t.jsxs)(y.SheetHeader,{className:"border-b pr-12",children:[(0,t.jsx)(y.SheetTitle,{children:N?.key??e??T("ticket")}),(0,t.jsx)(y.SheetDescription,{children:N?.summary??T("loadingTicket")})]}),(0,t.jsxs)("div",{className:"space-y-6 px-4 pb-6",children:[M&&(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(b.Spinner,{}),T("loadingTicket")]}),I&&(0,t.jsx)(p.Alert,{variant:"destructive",children:(0,t.jsx)(p.AlertDescription,{children:I})}),N&&(0,t.jsxs)(t.Fragment,{children:[(N.cache.stale||N.commentsCache.stale)&&(0,t.jsxs)(p.Alert,{className:"border-amber-500/30 bg-amber-500/10",children:[(0,t.jsx)(n,{}),(0,t.jsx)(p.AlertDescription,{children:T("staleTicket")})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)(h.Badge,{children:N.status}),N.issueType&&(0,t.jsx)(h.Badge,{children:N.issueType}),N.priority&&(0,t.jsx)(h.Badge,{className:S[N.priority.trim().toLowerCase()],children:N.priority})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsxs)(f.Button,{onClick:()=>P(!0),size:"sm",variant:"outline",children:[(0,t.jsx)(s.GitBranch,{})," ",T("worktreeAction")]}),(0,t.jsx)(f.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)(j.Link,{href:`/jira/tickets/${encodeURIComponent(N.key)}`,children:[(0,t.jsx)(l,{})," ",T("openFullDetails")]})}),(0,t.jsx)(f.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,t.jsxs)("a",{href:N.jiraUrl,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(i.ExternalLink,{})," ",T("openInJira")]})})]})]}),(0,t.jsx)(d.JiraTicketActions,{onTicketChange:U,ticket:N}),(0,t.jsx)(R,{ticket:N}),(0,t.jsx)("section",{children:(0,t.jsx)(x.Card,{size:"sm",children:(0,t.jsx)(x.CardContent,{children:(0,t.jsx)(u.JiraRichTextBlock,{content:N.descriptionContent,header:(0,t.jsx)("h3",{className:"font-semibold",children:T("descriptionTitle")}),headerClassName:"border-b pb-2",value:N.description})})})}),(N.labels.length>0||N.components.length>0||N.fixVersions.length>0||N.sprintNames.length>0)&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:T("classification")}),(0,t.jsxs)("dl",{className:"grid gap-3 text-sm sm:grid-cols-2",children:[N.labels.length>0&&(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-muted-foreground",children:T("labels")}),(0,t.jsx)("dd",{className:"mt-1 flex flex-wrap gap-1",children:N.labels.map(e=>(0,t.jsx)(h.Badge,{children:e},e))})]}),N.components.length>0&&(0,t.jsx)(C,{label:T("components"),values:N.components.map(e=>e.name)}),N.fixVersions.length>0&&(0,t.jsx)(C,{label:T("fixVersions"),values:N.fixVersions.map(e=>e.name)}),N.sprintNames.length>0&&(0,t.jsx)(C,{label:T("sprints"),values:N.sprintNames})]})]}),(N.parent||N.subtasks.length>0||N.issueLinks.length>0)&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:T("relatedIssues")}),(0,t.jsx)(g.ItemGroup,{className:"gap-2",children:[...N.parent?[N.parent]:[],...N.subtasks,...N.issueLinks].map((e,r)=>(0,t.jsx)(g.Item,{asChild:!0,size:"xs",variant:"outline",children:(0,t.jsxs)(j.Link,{href:`/jira/tickets/${encodeURIComponent(e.key)}`,children:[(0,t.jsxs)(g.ItemContent,{children:[(0,t.jsxs)(g.ItemTitle,{className:"leading-tight",children:[e.key," · ",e.summary]}),(0,t.jsx)(g.ItemDescription,{className:"leading-tight",children:e.relationship})]}),(0,t.jsx)(g.ItemActions,{children:e.status&&(0,t.jsx)(h.Badge,{children:e.status})})]})},`${e.key}-${r}`))})]}),N.attachments.length>0&&(0,t.jsxs)("section",{children:[(0,t.jsx)("h3",{className:"mb-2 font-semibold",children:T("attachments")}),(0,t.jsx)(g.ItemGroup,{className:"gap-2",children:N.attachments.map(e=>(0,t.jsx)(g.Item,{asChild:!0,variant:"outline",children:(0,t.jsxs)("a",{href:e.contentUrl??"#",rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(g.ItemContent,{children:(0,t.jsx)(g.ItemTitle,{children:e.filename})}),(0,t.jsx)(g.ItemActions,{className:"text-xs text-muted-foreground",children:e.size?`${Math.round(e.size/1024)} KB`:""})]})},e.id))})]}),(0,t.jsx)(m.JiraTicketComments,{onTicketChange:U,ticket:N})]})]})]})}),N&&(0,t.jsx)(w.TicketWorktreeDialog,{issueKey:N.key,onOpenChange:P,open:$})]})}],356505)},948812,e=>{"use strict";function t(e){return`${e.repositoryNameWithOwner}#${e.number}`}e.s(["pullRequestCommentsHref",0,function(e){return`/comments?pullRequest=${encodeURIComponent(t(e))}`},"pullRequestDetailHref",0,function(e){let[t="",r=""]=e.repositoryNameWithOwner.split("/");return`/pull-requests/${encodeURIComponent(t)}/${encodeURIComponent(r)}/${e.number}`},"pullRequestKey",0,t])},647776,395925,e=>{"use strict";var t=e.i(843476),r=e.i(716327),n=e.i(482022);let i=(0,e.i(456420).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);e.s(["RotateCcw",0,i],395925);var s=e.i(948148),l=e.i(271645),a=e.i(487486),o=e.i(519455),c=e.i(755146),u=e.i(987968),d=e.i(746798),m=e.i(637611);function p({pipeline:e,repositoryId:r,onPipelineRetried:n,onError:a}){let c=(0,s.useTranslations)("pullRequests"),[h,f]=(0,l.useState)(!1),x=async t=>{if(t.stopPropagation(),e.canRetry&&e.checkSuiteId){f(!0);try{let t=await (0,m.controlPlaneRequest)(`mutation RetryGitHubPipeline(
2
- $repositoryId: ID!
3
- $checkSuiteId: ID!
4
- ) {
5
- retryGitHubPipeline(
6
- repositoryId: $repositoryId
7
- checkSuiteId: $checkSuiteId
8
- ) { id name status url checkSuiteId canRetry retryUnavailableReason jobs { id name status url canRetry retryUnavailableReason steps { number name status } } }
9
- }`,{repositoryId:r,checkSuiteId:e.checkSuiteId});n?.(t.retryGitHubPipeline),a?.(null)}catch(e){a?.(e instanceof Error?e.message:String(e))}finally{f(!1)}}},g=(0,t.jsxs)(o.Button,{disabled:h||!e.canRetry||!e.checkSuiteId,onClick:e=>void x(e),size:"sm",variant:"outline",children:[h?(0,t.jsx)(u.Spinner,{}):(0,t.jsx)(i,{}),c(h?"retrying":"retry")]});if(!e.retryUnavailableReason||h)return g;let y=c(`retryUnavailable.${e.retryUnavailableReason}`);return(0,t.jsx)(d.TooltipProvider,{children:(0,t.jsxs)(d.Tooltip,{children:[(0,t.jsx)(d.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("span",{"aria-label":y,className:"inline-flex",tabIndex:0,children:g})}),(0,t.jsx)(d.TooltipContent,{children:y})]})})}function h(e){return"SUCCESS"===e?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"PENDING"===e||"EXPECTED"===e||"QUEUED"===e||"IN_PROGRESS"===e||"ACTION_REQUIRED"===e?"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300":"FAILURE"===e||"ERROR"===e||"CANCELLED"===e||"STALE"===e||"STARTUP_FAILURE"===e||"TIMED_OUT"===e?"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300":"border-slate-500/30 bg-slate-500/10 text-slate-700 dark:text-slate-300"}e.s(["PipelineMenu",0,function({pipelineStatus:e,pipelines:i,repositoryId:u,onPipelineRetried:d}){let m=(0,s.useTranslations)("pullRequests"),[f,x]=(0,l.useState)(null),g=e=>e.stopPropagation();return(0,t.jsxs)(c.DropdownMenu,{children:[(0,t.jsx)(c.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsxs)(o.Button,{className:`h-5 rounded-full px-2 py-0.5 text-xs ${h(e)}`,onClick:g,variant:"outline",children:[m(`pipelineStates.${e}`),(0,t.jsx)(r.ChevronDown,{className:"size-3"})]})}),(0,t.jsxs)(c.DropdownMenuContent,{align:"end",className:"w-80",onClick:g,children:[(0,t.jsx)(c.DropdownMenuLabel,{children:m("pipelineMenuTitle")}),(0,t.jsx)(c.DropdownMenuSeparator,{}),f&&(0,t.jsx)("p",{className:"px-2 py-1.5 text-xs text-destructive",children:f}),0===i.length?(0,t.jsx)("p",{className:"px-2 py-3 text-sm text-muted-foreground",children:m("noPipelines")}):(0,t.jsx)("div",{className:"space-y-1 p-1",children:i.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-2 rounded-md px-2 py-2 hover:bg-muted",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[e.url?(0,t.jsxs)("a",{className:"flex min-w-0 items-center gap-1 text-sm font-medium hover:underline",href:e.url,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)("span",{className:"truncate",children:e.name}),(0,t.jsx)(n.ExternalLink,{className:"size-3 shrink-0"})]}):(0,t.jsx)("p",{className:"truncate text-sm font-medium",children:e.name}),(0,t.jsx)(a.Badge,{className:`mt-1 ${h(e.status)}`,children:m(`pipelineStates.${e.status}`)})]}),e.checkSuiteId&&(0,t.jsx)(p,{onError:x,onPipelineRetried:d,pipeline:e,repositoryId:u})]},e.id))})]})]})},"RetryPipelineButton",0,p,"pipelineStateClass",0,h],647776)},346194,113030,e=>{"use strict";var t=e.i(843476);let r=(0,e.i(456420).default)("git-merge",[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]]);e.s(["GitMerge",0,r],113030);var n=e.i(948148),i=e.i(271645),s=e.i(929592),l=e.i(519455),a=e.i(776639),o=e.i(793479),c=e.i(110204),u=e.i(967489),d=e.i(987968),m=e.i(624687),p=e.i(637611);let h="__github_account_default__";e.s(["MergePullRequestButton",0,function({pullRequest:e,onMerged:f,size:x="sm",variant:g="outline",open:y,onOpenChange:b,showTrigger:j=!0}){let v=(0,n.useTranslations)("pullRequests"),[w,k]=(0,i.useState)(!1),[S,T]=(0,i.useState)(null),[R,C]=(0,i.useState)(""),[N,E]=(0,i.useState)(""),[I,D]=(0,i.useState)(""),[M,A]=(0,i.useState)(h),[$,P]=(0,i.useState)(!1),[U,q]=(0,i.useState)(!1),[_,F]=(0,i.useState)(null),[L="",B=""]=e.repositoryNameWithOwner.split("/",2),O=y??w,H=e=>{e||(P(!1),T(null),F(null)),void 0===y&&k(e),b?.(e)};(0,i.useEffect)(()=>{if(!O)return;let t=!0,r=window.setTimeout(()=>{P(!0),T(null),F(null),(0,p.controlPlaneRequest)(`query GitHubPullRequestMergeOptions(
10
- $owner: String!
11
- $name: String!
12
- $number: Int!
13
- ) {
14
- githubPullRequestMergeOptions(
15
- owner: $owner
16
- name: $name
17
- number: $number
18
- ) {
19
- availableMethods
20
- commitEmails
21
- defaultCommitEmail
22
- defaultCommitHeadline
23
- defaultCommitBody
24
- canMerge
25
- blockedReason
26
- }
27
- }`,{owner:L,name:B,number:e.number}).then(e=>{if(!t)return;let r=e.githubPullRequestMergeOptions;T(r),C(r.availableMethods[0]??""),E(r.defaultCommitHeadline),D(r.defaultCommitBody),A(r.defaultCommitEmail??h)}).catch(e=>{t&&F(e instanceof Error?e.message:String(e))}).finally(()=>{t&&P(!1)})},0);return()=>{t=!1,window.clearTimeout(r)}},[B,O,L,e.number]);let z=async()=>{if(R&&S?.canMerge&&N.trim()){q(!0),F(null);try{let t=await (0,p.controlPlaneRequest)(`mutation MergeGitHubPullRequest(
28
- $input: MergeGitHubPullRequestInput!
29
- ) {
30
- mergeGitHubPullRequest(input: $input) {
31
- id state url mergedAt
32
- }
33
- }`,{input:{owner:L,name:B,number:e.number,method:R,commitHeadline:N,commitBody:I,authorEmail:M===h?null:M}});H(!1),await f?.(t.mergeGitHubPullRequest)}catch(e){F(e instanceof Error?e.message:String(e))}finally{q(!1)}}},G=S?.blockedReason??null;return(0,t.jsxs)(t.Fragment,{children:[j&&(0,t.jsxs)(l.Button,{onClick:e=>{e.stopPropagation(),H(!0)},size:x,type:"button",variant:g,children:[(0,t.jsx)(r,{}),v("merge")]}),(0,t.jsx)(a.Dialog,{onOpenChange:e=>{U||H(e)},open:O,children:(0,t.jsxs)(a.DialogContent,{className:"sm:max-w-xl",children:[(0,t.jsxs)(a.DialogHeader,{children:[(0,t.jsx)(a.DialogTitle,{children:v("mergePullRequest")}),(0,t.jsx)(a.DialogDescription,{children:v("mergePullRequestDescription",{repository:e.repositoryNameWithOwner,number:e.number})})]}),!$&&(S||_)?(0,t.jsxs)("div",{className:"space-y-4",children:[(_||G)&&(0,t.jsx)(s.Alert,{variant:"destructive",children:(0,t.jsx)(s.AlertDescription,{children:_||G})}),S&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(c.Label,{className:"mb-1.5 block",htmlFor:"merge-method",children:v("mergeType")}),(0,t.jsxs)(u.Select,{disabled:U||0===S.availableMethods.length,onValueChange:e=>C(e),value:R,children:[(0,t.jsx)(u.SelectTrigger,{id:"merge-method",children:(0,t.jsx)(u.SelectValue,{placeholder:v("selectMergeType")})}),(0,t.jsx)(u.SelectContent,{children:S.availableMethods.map(e=>(0,t.jsx)(u.SelectItem,{value:e,children:v(`mergeTypes.${e}`)},e))})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(c.Label,{className:"mb-1.5 block",htmlFor:"merge-commit-headline",children:v("commitMessage")}),(0,t.jsx)(o.Input,{disabled:U,id:"merge-commit-headline",onChange:e=>E(e.target.value),value:N})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(c.Label,{className:"mb-1.5 block",htmlFor:"merge-commit-body",children:v("commitDescription")}),(0,t.jsx)(m.Textarea,{className:"min-h-28",disabled:U,id:"merge-commit-body",onChange:e=>D(e.target.value),value:I})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(c.Label,{className:"mb-1.5 block",htmlFor:"merge-email",children:v("commitEmail")}),(0,t.jsxs)(u.Select,{disabled:U,onValueChange:A,value:M,children:[(0,t.jsx)(u.SelectTrigger,{id:"merge-email",children:(0,t.jsx)(u.SelectValue,{})}),(0,t.jsxs)(u.SelectContent,{children:[(0,t.jsx)(u.SelectItem,{value:h,children:v("githubDefaultEmail")}),S.commitEmails.map(e=>(0,t.jsx)(u.SelectItem,{value:e,children:e},e))]})]})]})]})]}):(0,t.jsxs)("div",{className:"flex items-center gap-2 py-6 text-sm text-muted-foreground",children:[(0,t.jsx)(d.Spinner,{})," ",v("loadingMergeOptions")]}),(0,t.jsxs)(a.DialogFooter,{children:[(0,t.jsx)(l.Button,{disabled:U,onClick:()=>H(!1),type:"button",variant:"outline",children:v("cancelMerge")}),(0,t.jsxs)(l.Button,{disabled:$||U||!S?.canMerge||!R||!N.trim(),onClick:()=>void z(),type:"button",children:[U?(0,t.jsx)(d.Spinner,{}):(0,t.jsx)(r,{}),U?v("merging"):v("mergePullRequest")]})]})]})})]})}],346194)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,778434,e=>{"use strict";e.s(["AGENT_FIELDS",0,"id name hostname version osVersion architecture cpuModel memoryTotalBytes memoryFreeBytes diskTotalBytes diskFreeBytes capabilities baseRepoDirectory derivedDataLocationMode derivedDataPath buildsDirectory defaultBuildsDirectory effectiveBuildsDirectory connectionStatus ipAddress lastSeenAt disconnectedAt createdAt","JOB_FIELDS",0,"id agentId kind payload status error result timeoutSeconds createdAt startedAt finishedAt updatedAt","JOB_LOG_FIELDS",0,"id jobId sequence stream message createdAt"])},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let i=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,n.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,n.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,n.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...s}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,n.cn)(i({variant:r,className:e})),...s})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,n.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},508734,e=>{"use strict";let t=(0,e.i(456420).default)("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"}]]);e.s(["Copy",0,t],508734)},929592,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let i=(0,r.cva)("group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current"}},defaultVariants:{variant:"default"}});e.s(["Alert",0,function({className:e,variant:r,...s}){return(0,t.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,n.cn)(i({variant:r}),e),...s})},"AlertDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-description",className:(0,n.cn)("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4",e),...r})}])},515288,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Card",0,function({className:e,size:n="default",...i}){return(0,t.jsx)("div",{"data-slot":"card","data-size":n,className:(0,r.cn)("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",e),...i})},"CardAction",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-action",className:(0,r.cn)("col-start-2 row-span-2 row-start-1 self-start justify-self-end",e),...n})},"CardContent",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-(--card-spacing)",e),...n})},"CardDescription",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...n})},"CardFooter",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-footer",className:(0,r.cn)("flex items-center rounded-b-xl border-t bg-muted/50 p-(--card-spacing)",e),...n})},"CardHeader",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",e),...n})},"CardTitle",0,function({className:e,...n}){return(0,t.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",e),...n})}])},758379,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t])},987968,e=>{"use strict";var t=e.i(843476),r=e.i(975157),n=e.i(758379),n=n;e.s(["Spinner",0,function({className:e,...i}){return(0,t.jsx)(n.default,{"data-slot":"spinner",role:"status","aria-label":"Loading",className:(0,r.cn)("size-4 animate-spin",e),...i})}],987968)},637611,e=>{"use strict";var t,r,n=e.i(247167);function i(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function s(e){return"object"===i(e)}function o(e,t){return e.length<124?e:t}var a=((t=a||{})[t.InternalServerError=4500]="InternalServerError",t[t.InternalClientError=4005]="InternalClientError",t[t.BadRequest=4400]="BadRequest",t[t.BadResponse=4004]="BadResponse",t[t.Unauthorized=4401]="Unauthorized",t[t.Forbidden=4403]="Forbidden",t[t.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",t[t.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",t[t.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",t[t.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",t[t.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",t),l=((r=l||{}).ConnectionInit="connection_init",r.ConnectionAck="connection_ack",r.Ping="ping",r.Pong="pong",r.Subscribe="subscribe",r.Next="next",r.Error="error",r.Complete="complete",r);function c(e){if(!s(e))throw Error(`Message is expected to be an object, but got ${i(e)}`);if(!e.type)throw Error("Message is missing the 'type' property");if("string"!=typeof e.type)throw Error(`Message is expects the 'type' property to be a string, but got ${i(e.type)}`);switch(e.type){case"connection_init":case"connection_ack":case"ping":case"pong":if(null!=e.payload&&!s(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${e.payload}"`);break;case"subscribe":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${i(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!s(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${i(e.payload)}`);if("string"!=typeof e.payload.query)throw Error(`"${e.type}" message payload expects the 'query' property to be a string, but got ${i(e.payload.query)}`);if(null!=e.payload.variables&&!s(e.payload.variables))throw Error(`"${e.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${i(e.payload.variables)}`);if(null!=e.payload.operationName&&"string"!==i(e.payload.operationName))throw Error(`"${e.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${i(e.payload.operationName)}`);if(null!=e.payload.extensions&&!s(e.payload.extensions))throw Error(`"${e.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${i(e.payload.extensions)}`);break;case"next":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${i(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!s(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${i(e.payload)}`);break;case"error":var t;if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${i(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!(Array.isArray(t=e.payload)&&t.length>0&&t.every(e=>"message"in e)))throw Error(`"${e.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(e.payload)}`);break;case"complete":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${i(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);break;default:throw Error(`Invalid message 'type' property "${e.type}"`)}return e}function d(e,t){return c(e),JSON.stringify(e,t)}class u extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function p(e){return s(e)&&"code"in e&&"reason"in e}async function f(e,t){let r=await fetch("/api/graphql",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:e,variables:t})}),n=await r.json();if(!r.ok||n.errors?.length||!n.data)throw Error(n.errors?.map(e=>e.message).join("; ")||`HTTP ${r.status}`);return n.data}let h=null;function m(){let e=n.default.env.NEXT_PUBLIC_AGENT_WS_URL;return e||("https:"===window.location.protocol?`wss://${window.location.host}/graphql`:`ws://${window.location.hostname}:3091/graphql`)}e.s(["controlPlaneRequest",0,f,"controlPlaneSubscriptions",0,function(){return h??=function(t){let r,n,i,s,{url:f,connectionParams:h,lazy:m=!0,onNonLazyError:y=console.error,lazyCloseTimeout:g=0,keepAlive:x=0,disablePong:v,connectionAckWaitTimeout:b=0,retryAttempts:w=5,retryWait:j=async function(e){let t=Math.pow(2,e);await new Promise(e=>setTimeout(e,1e3*t+Math.floor(2700*Math.random()+300)))},shouldRetry:E=p,on:k,webSocketImpl:S,generateID:N=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})},jsonMessageReplacer:C,jsonMessageReviver:A}=t;if(S){var T;if(!("function"==typeof(T=S)&&"constructor"in T&&"CLOSED"in T&&"CLOSING"in T&&"CONNECTING"in T&&"OPEN"in T))throw Error("Invalid WebSocket implementation provided");r=S}else r="u">typeof WebSocket?WebSocket:e.g.WebSocket||e.g.MozWebSocket;if(!r)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let R=r,$=(n={},i={on:(e,t)=>(n[e]=t,()=>{delete n[e]}),emit(e){"id"in e&&n[e.id]?.(e)}},s={connecting:k?.connecting?[k.connecting]:[],opened:k?.opened?[k.opened]:[],connected:k?.connected?[k.connected]:[],ping:k?.ping?[k.ping]:[],pong:k?.pong?[k.pong]:[],message:k?.message?[i.emit,k.message]:[i.emit],closed:k?.closed?[k.closed]:[],error:k?.error?[k.error]:[]},{onMessage:i.on,on(e,t){let r=s[e];return r.push(t),()=>{r.splice(r.indexOf(t),1)}},emit(e,...t){for(let r of[...s[e]])r(...t)}});function I(e){let t=[$.on("error",r=>{t.forEach(e=>e()),e(r)}),$.on("closed",r=>{t.forEach(e=>e()),e(r)})]}let M,O=0,z,P=!1,_=0,D=!1;async function B(){clearTimeout(z);let[e,t]=await (M??(M=new Promise((e,t)=>(async()=>{let r,n;if(P){if(await j(_),!O)return M=void 0,t({code:1e3,reason:"All Subscriptions Gone"});_++}$.emit("connecting",P);let i=new R("function"==typeof f?await f():f,"graphql-transport-ws");function s(){isFinite(x)&&x>0&&(clearTimeout(n),n=setTimeout(()=>{i.readyState===R.OPEN&&(i.send(d({type:l.Ping})),$.emit("ping",!1,void 0))},x))}I(e=>{M=void 0,clearTimeout(r),clearTimeout(n),t(e),e instanceof u&&(i.close(4499,"Terminated"),i.onerror=null,i.onclose=null)}),i.onerror=e=>$.emit("error",e),i.onclose=e=>$.emit("closed",e),i.onopen=async()=>{try{$.emit("opened",i);let e="function"==typeof h?await h():h;if(i.readyState!==R.OPEN)return;i.send(d(e?{type:l.ConnectionInit,payload:e}:{type:l.ConnectionInit},C)),isFinite(b)&&b>0&&(r=setTimeout(()=>{i.close(a.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},b)),s()}catch(e){$.emit("error",e),i.close(a.InternalClientError,o(e instanceof Error?e.message:String(e),"Internal client error"))}};let p=!1;i.onmessage=({data:t})=>{try{let n=c("string"==typeof t?JSON.parse(t,A):t);if($.emit("message",n),"ping"===n.type||"pong"===n.type){$.emit(n.type,!0,n.payload),"pong"===n.type?s():v||(i.send(d(n.payload?{type:l.Pong,payload:n.payload}:{type:l.Pong})),$.emit("pong",!1,n.payload));return}if(p)return;if(n.type!==l.ConnectionAck)throw Error(`First message cannot be of type ${n.type}`);clearTimeout(r),p=!0,$.emit("connected",i,n.payload,P),P=!1,_=0,e([i,new Promise((e,t)=>I(t))])}catch(e){i.onmessage=null,$.emit("error",e),i.close(a.BadResponse,o(e instanceof Error?e.message:String(e),"Bad response"))}}})())));e.readyState===R.CLOSING&&await t;let r=()=>{},n=new Promise(e=>r=e);return[e,r,Promise.race([n.then(()=>{O||(isFinite(g)&&g>0?z=setTimeout(()=>{e.readyState===R.OPEN&&e.close(1e3,"Normal Closure")},g):e.close(1e3,"Normal Closure"))}),t])]}function q(e){var t;if(p(e)&&(![1e3,1001,1006,1005,1012,1013,1014].includes(t=e.code)&&t>=1e3&&t<=1999||[a.InternalServerError,a.InternalClientError,a.BadRequest,a.BadResponse,a.Unauthorized,a.SubprotocolNotAcceptable,a.SubscriberAlreadyExists,a.TooManyInitialisationRequests].includes(e.code)))throw e;if(D)return!1;if(p(e)&&1e3===e.code)return O>0;if(!w||_>=w||!E(e))throw e;return P=!0}function L(e,t){let r=N(e),n=!1,i=!1,s=()=>{O--,n=!0};return(async()=>{for(O++;;)try{let[o,a,c]=await B();if(n)return a();let u=$.onMessage(r,e=>{switch(e.type){case l.Next:return void t.next(e.payload);case l.Error:i=!0,n=!0,t.error(e.payload),s();return;case l.Complete:n=!0,s();return}});o.send(d({id:r,type:l.Subscribe,payload:e},C)),s=()=>{n||o.readyState!==R.OPEN||o.send(d({id:r,type:l.Complete},C)),O--,n=!0,a()},await c.finally(u);return}catch(e){if(!q(e))return}})().then(()=>{i||t.complete()}).catch(e=>{t.error(e)}),()=>{n||s()}}return m||(async()=>{for(O++;;)try{let[,,e]=await B();await e}catch(e){try{if(!q(e))return}catch(e){return y?.(e)}}})(),{on:$.on,subscribe:L,iterate(e){let t=[],r={done:!1,error:null,resolve:()=>{}},n=L(e,{next(e){t.push(e),r.resolve()},error(e){r.done=!0,r.error=e,r.resolve()},complete(){r.done=!0,r.resolve()}}),i=async function*(){for(;;){for(t.length||await new Promise(e=>r.resolve=e);t.length;)yield t.shift();if(r.error)throw r.error;if(r.done)return}}();return i.throw=async e=>(r.done||(r.done=!0,r.error=e,r.resolve()),{done:!0,value:void 0}),i.return=async()=>(n(),{done:!0,value:void 0}),i},async dispose(){if(D=!0,M){let[e]=await M;e.close(1e3,"Normal Closure")}},terminate(){M&&$.emit("closed",new u)}}}({url:m,lazy:!0,retryAttempts:1/0,shouldRetry:()=>!0})}],637611)},487486,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(709840),i=e.i(975157);let s=(0,r.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});e.s(["Badge",0,function({className:e,variant:r="default",asChild:o=!1,...a}){let l=o?n.Slot.Root:"span";return(0,t.jsx)(l,{className:(0,i.cn)(s({variant:r}),e),"data-slot":"badge","data-variant":r,...a})}])},643957,e=>{"use strict";let t=(0,e.i(456420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",0,t])},999682,e=>{"use strict";var t=e.i(271645);e.s(["usePrevious",0,function(e){let r=t.useRef({value:e,previous:e});return t.useMemo(()=>(r.current.value!==e&&(r.current.previous=r.current.value,r.current.value=e),r.current.previous),[e])}])},593698,e=>{"use strict";var t=e.i(643957);e.s(["CheckIcon",()=>t.default])},75830,586318,e=>{"use strict";var t=e.i(271645),r=e.i(30030);function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return t.useCallback(function(...e){return t=>{let r=!1,i=e.map(e=>{let i=n(e,t);return r||"function"!=typeof i||(r=!0),i});if(r)return()=>{for(let t=0;t<i.length;t++){let r=i[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}function s(e){let r=t.forwardRef((r,n)=>{var s;let l,f,{children:h,...m}=r,y=null,g=!1,x=[];c(h)&&"function"==typeof p&&(h=p(h._payload)),t.Children.forEach(h,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===o){g=!0;let t="child"in e.props?e.props.child:e.props.children;c(t)&&"function"==typeof p&&(t=p(t._payload)),y=a(e,t),x.push(y?.props?.children)}else x.push(e)}),y?y=t.cloneElement(y,void 0,x):!g&&1===t.Children.count(h)&&t.isValidElement(h)&&(y=h);let v=y?(s=y,(f=(l=Object.getOwnPropertyDescriptor(s.props,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?s.ref:(f=(l=Object.getOwnPropertyDescriptor(s,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?s.props.ref:s.props.ref||s.ref):void 0,b=i(n,v);if(!y){if(h||0===h)throw Error(g?u(e):d(e));return h}let w=function(e,t){let r={...t};for(let n in t){let i=e[n],s=t[n];/^on[A-Z]/.test(n)?i&&s?r[n]=(...e)=>{let t=s(...e);return i(...e),t}:i&&(r[n]=i):"style"===n?r[n]={...i,...s}:"className"===n&&(r[n]=[i,s].filter(Boolean).join(" "))}return{...e,...r}}(m,y.props??{});return y.type!==t.Fragment&&(w.ref=n?b:v),t.cloneElement(y,w)});return r.displayName=`${e}.Slot`,r}var o=Symbol.for("radix.slottable"),a=(e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null},l=Symbol.for("react.lazy");function c(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===l&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var d=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,u=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,p=t[" use ".trim().toString()],f=e.i(843476),h=new WeakMap;function m(e,t){var r,n;let i,s,o;if("at"in Array.prototype)return Array.prototype.at.call(e,t);let a=(r=e,n=t,i=r.length,(o=(s=y(n))>=0?s:i+s)<0||o>=i?-1:o);return -1===a?void 0:e[a]}function y(e){return e!=e||0===e?0:Math.trunc(e)}(class e extends Map{#e;constructor(e){super(e),this.#e=[...super.keys()],h.set(this,!0)}set(e,t){return h.get(this)&&(this.has(e)?this.#e[this.#e.indexOf(e)]=e:this.#e.push(e)),super.set(e,t),this}insert(e,t,r){let n,i=this.has(t),s=this.#e.length,o=y(e),a=o>=0?o:s+o,l=a<0||a>=s?-1:a;if(l===this.size||i&&l===this.size-1||-1===l)return this.set(t,r),this;let c=this.size+ +!i;o<0&&a++;let d=[...this.#e],u=!1;for(let e=a;e<c;e++)if(a===e){let s=d[e];d[e]===t&&(s=d[e+1]),i&&this.delete(t),n=this.get(s),this.set(t,r)}else{u||d[e-1]!==t||(u=!0);let r=d[u?e:e-1],i=n;n=this.get(r),this.delete(r),this.set(r,i)}return this}with(t,r,n){let i=new e(this);return i.insert(t,r,n),i}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,r){let n=this.#e.indexOf(e);return -1===n?this:this.insert(n,t,r)}after(e){let t=this.#e.indexOf(e);if(-1!==(t=-1===t||t===this.size-1?-1:t+1))return this.entryAt(t)}setAfter(e,t,r){let n=this.#e.indexOf(e);return -1===n?this:this.insert(n+1,t,r)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#e=[],super.clear()}delete(e){let t=super.delete(e);return t&&this.#e.splice(this.#e.indexOf(e),1),t}deleteAt(e){let t=this.keyAt(e);return void 0!==t&&this.delete(t)}at(e){let t=m(this.#e,e);if(void 0!==t)return this.get(t)}entryAt(e){let t=m(this.#e,e);if(void 0!==t)return[t,this.get(t)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return m(this.#e,e)}from(e,t){let r=this.indexOf(e);if(-1===r)return;let n=r+t;return n<0&&(n=0),n>=this.size&&(n=this.size-1),this.at(n)}keyFrom(e,t){let r=this.indexOf(e);if(-1===r)return;let n=r+t;return n<0&&(n=0),n>=this.size&&(n=this.size-1),this.keyAt(n)}find(e,t){let r=0;for(let n of this){if(Reflect.apply(e,t,[n,r,this]))return n;r++}}findIndex(e,t){let r=0;for(let n of this){if(Reflect.apply(e,t,[n,r,this]))return r;r++}return -1}filter(t,r){let n=[],i=0;for(let e of this)Reflect.apply(t,r,[e,i,this])&&n.push(e),i++;return new e(n)}map(t,r){let n=[],i=0;for(let e of this)n.push([e[0],Reflect.apply(t,r,[e,i,this])]),i++;return new e(n)}reduce(...e){let[t,r]=e,n=0,i=r??this.at(0);for(let r of this)i=0===n&&1===e.length?r:Reflect.apply(t,this,[i,r,n,this]),n++;return i}reduceRight(...e){let[t,r]=e,n=r??this.at(-1);for(let r=this.size-1;r>=0;r--){let i=this.at(r);n=r===this.size-1&&1===e.length?i:Reflect.apply(t,this,[n,i,r,this])}return n}toSorted(t){return new e([...this.entries()].sort(t))}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let r=this.keyAt(e),n=this.get(r);t.set(r,n)}return t}toSpliced(...t){let r=[...this.entries()];return r.splice(...t),new e(r)}slice(t,r){let n=new e,i=this.size-1;if(void 0===t)return n;t<0&&(t+=this.size),void 0!==r&&r>0&&(i=r-1);for(let e=t;e<=i;e++){let t=this.keyAt(e),r=this.get(t);n.set(t,r)}return n}every(e,t){let r=0;for(let n of this){if(!Reflect.apply(e,t,[n,r,this]))return!1;r++}return!0}some(e,t){let r=0;for(let n of this){if(Reflect.apply(e,t,[n,r,this]))return!0;r++}return!1}}),e.s(["createCollection",0,function(e){let n=e+"CollectionProvider",[o,a]=(0,r.createContextScope)(n),[l,c]=o(n,{collectionRef:{current:null},itemMap:new Map}),d=e=>{let{scope:r,children:n}=e,i=t.useRef(null),s=t.useRef(new Map).current;return(0,f.jsx)(l,{scope:r,itemMap:s,collectionRef:i,children:n})};d.displayName=n;let u=e+"CollectionSlot",p=s(u),h=t.forwardRef((e,t)=>{let{scope:r,children:n}=e,s=i(t,c(u,r).collectionRef);return(0,f.jsx)(p,{ref:s,children:n})});h.displayName=u;let m=e+"CollectionItemSlot",y="data-radix-collection-item",g=s(m),x=t.forwardRef((e,r)=>{let{scope:n,children:s,...o}=e,a=t.useRef(null),l=i(r,a),d=c(m,n);return t.useEffect(()=>(d.itemMap.set(a,{ref:a,...o}),()=>void d.itemMap.delete(a))),(0,f.jsx)(g,{...{[y]:""},ref:l,children:s})});return x.displayName=m,[{Provider:d,Slot:h,ItemSlot:x},function(r){let n=c(e+"CollectionConsumer",r);return t.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${y}]`));return Array.from(n.itemMap.values()).sort((e,r)=>t.indexOf(e.ref.current)-t.indexOf(r.ref.current))},[n.collectionRef,n.itemMap])},a]}],75830);var g=t.createContext(void 0);e.s(["useDirection",0,function(e){let r=t.useContext(g);return e||r||"ltr"}],586318)},26495,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},144716,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);e.s(["default",0,t])},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],77071)},675926,e=>{"use strict";var t=e.i(843476),r=e.i(948148),n=e.i(487486),i=e.i(975157);e.s(["StatusBadge",0,function({status:e}){let s=(0,r.useTranslations)("status"),o="ONLINE"===e||"RUNNING"===e||"SUCCEEDED"===e,a="FAILED"===e||"TIMED_OUT"===e;return(0,t.jsx)(n.Badge,{className:(0,i.cn)(o&&"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300",a&&"border-destructive/30 bg-destructive/10 text-destructive"),variant:o||a?"outline":"secondary",children:s(e.toLowerCase())})}])},697270,e=>{"use strict";var t=e.i(843476),r=e.i(508734);let n=(0,e.i(456420).default)("laptop",[["path",{d:"M18 5a2 2 0 0 1 2 2v8.526a2 2 0 0 0 .212.897l1.068 2.127a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45l1.068-2.127A2 2 0 0 0 4 15.526V7a2 2 0 0 1 2-2z",key:"1pdavp"}],["path",{d:"M20.054 15.987H3.946",key:"14rxg9"}]]);var i=e.i(77071),s=e.i(741120),o=e.i(948148),a=e.i(271645),l=e.i(929592),c=e.i(519455),d=e.i(515288),u=e.i(82612),p=e.i(987968),f=e.i(967489),h=e.i(520133),m=e.i(462777),y=e.i(637611),g=e.i(675926),x=e.i(778434);let v=`query Agents { agents { ${x.AGENT_FIELDS} } }`;e.s(["AgentsList",0,function({localServerOrigins:e=[]}){let b=(0,o.useTranslations)("agents"),[w,j]=(0,a.useState)([]),[E,k]=(0,a.useState)(!0),[S,N]=(0,a.useState)(null),[C,A]=(0,a.useState)(null),[T,R]=(0,a.useState)(null),$=(0,a.useCallback)(async()=>{try{let e=await (0,y.controlPlaneRequest)(v);j(e.agents),N(null)}catch(e){N(e instanceof Error?e.message:String(e))}finally{k(!1)}},[]);(0,a.useEffect)(()=>{let e=window.setTimeout(()=>void $(),0),t=(0,y.controlPlaneSubscriptions)().subscribe({query:`subscription { agentChanged { ${x.AGENT_FIELDS} } }`},{next:e=>{let t=e.data?.agentChanged;t&&j(e=>{let r=e.findIndex(e=>e.id===t.id);return -1===r?[t,...e]:e.map((e,n)=>n===r?t:e)})},error:()=>void 0,complete:()=>void 0});return()=>{window.clearTimeout(e),t()}},[$]);let I=async()=>{try{let e=await (0,y.controlPlaneRequest)("mutation { createAgentEnrollmentToken { token expiresAt } }");A(e.createAgentEnrollmentToken)}catch(e){N(e instanceof Error?e.message:String(e))}},M=async()=>{try{await (0,m.copyText)(z)}catch{N(b("copyFailed"))}},O=window.location.origin,z=C?`control-agent enroll --server ${T??O??"http://127.0.0.1:3090"} --enrollment-token ${C.token}`:"",P=[...new Set([O,...e].filter(e=>!!e))];return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-6xl flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:b("title")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:b("description")})]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(c.Button,{onClick:()=>void $(),variant:"outline",children:[(0,t.jsx)(s.RefreshCw,{}),b("refresh")]}),(0,t.jsxs)(c.Button,{onClick:()=>void I(),children:[(0,t.jsx)(i.Plus,{}),b("enroll")]})]})]}),C&&(0,t.jsx)(d.Card,{children:(0,t.jsxs)(d.CardContent,{children:[(0,t.jsx)("h2",{className:"font-medium",children:b("enrollmentTitle")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:b("enrollmentDescription")}),(0,t.jsxs)(f.Select,{onValueChange:R,value:T??O??void 0,children:[(0,t.jsx)(f.SelectTrigger,{"aria-label":b("serverAddress"),className:"mt-3 w-full sm:w-auto sm:min-w-72",children:(0,t.jsx)(f.SelectValue,{placeholder:b("serverAddress")})}),(0,t.jsx)(f.SelectContent,{align:"start",children:P.map(e=>(0,t.jsx)(f.SelectItem,{value:e,children:e},e))})]}),(0,t.jsxs)("div",{className:"mt-3 flex items-start gap-2 rounded-lg bg-muted p-3",children:[(0,t.jsx)("code",{className:"min-w-0 flex-1 break-all text-xs",children:z}),(0,t.jsx)(c.Button,{"aria-label":b("copy"),onClick:()=>void M(),size:"icon-sm",variant:"ghost",children:(0,t.jsx)(r.Copy,{})})]}),(0,t.jsx)("p",{className:"mt-2 text-xs text-muted-foreground",children:b("expires",{date:new Date(C.expiresAt).toLocaleString()})})]})}),S&&(0,t.jsx)(l.Alert,{variant:"destructive",children:(0,t.jsx)(l.AlertDescription,{children:S})}),E?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(p.Spinner,{}),b("loading")]}):0===w.length?(0,t.jsx)(u.Empty,{className:"border py-10",children:(0,t.jsxs)(u.EmptyHeader,{children:[(0,t.jsx)(u.EmptyMedia,{variant:"icon",children:(0,t.jsx)(n,{})}),(0,t.jsx)(u.EmptyTitle,{children:b("emptyTitle")}),(0,t.jsx)(u.EmptyDescription,{children:b("emptyDescription")})]})}):(0,t.jsx)("div",{className:"grid gap-3 md:grid-cols-2 xl:grid-cols-3",children:w.map(e=>(0,t.jsx)(h.Link,{href:`/agents/${e.id}`,className:"rounded-xl outline-none focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(d.Card,{className:"h-full transition-colors hover:bg-muted/50",children:(0,t.jsxs)(d.CardContent,{children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("h2",{className:"truncate font-medium",children:e.name}),(0,t.jsx)("p",{className:"truncate text-sm text-muted-foreground",children:e.hostname})]}),(0,t.jsx)(g.StatusBadge,{status:e.connectionStatus})]}),(0,t.jsxs)("dl",{className:"mt-4 grid grid-cols-2 gap-2 text-xs text-muted-foreground",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{children:b("version")}),(0,t.jsx)("dd",{className:"text-foreground",children:e.version})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{children:b("platform")}),(0,t.jsx)("dd",{className:"text-foreground",children:e.cpuModel??e.architecture})]}),(0,t.jsxs)("div",{className:"col-span-2",children:[(0,t.jsx)("dt",{children:b("lastSeen")}),(0,t.jsx)("dd",{className:"text-foreground",children:e.lastSeenAt?new Date(e.lastSeenAt).toLocaleString():b("never")})]})]})]})})},e.id))})]})}],697270)}]);
@@ -1,34 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,82612,e=>{"use strict";var t=e.i(843476),a=e.i(225913),r=e.i(975157);let i=(0,a.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,r.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...a})},"EmptyDescription",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,r.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...a})},"EmptyHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,r.cn)("flex max-w-sm flex-col items-center gap-2",e),...a})},"EmptyMedia",0,function({className:e,variant:a="default",...n}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":a,className:(0,r.cn)(i({variant:a,className:e})),...n})},"EmptyTitle",0,function({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,r.cn)("font-heading text-sm font-medium tracking-tight",e),...a})}])},784774,e=>{"use strict";var t=e.i(843476),a=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:r,...i}){return(0,t.jsx)("div",{className:(0,a.cn)("w-full overflow-x-auto",r),children:(0,t.jsx)("table",{className:(0,a.cn)("w-full caption-bottom text-sm",e),...i})})},"TableBody",0,function({className:e,...r}){return(0,t.jsx)("tbody",{className:(0,a.cn)("divide-y",e),...r})},"TableCell",0,function({className:e,...r}){return(0,t.jsx)("td",{className:(0,a.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...r})},"TableFooter",0,function({className:e,...r}){return(0,t.jsx)("tfoot",{className:(0,a.cn)("border-t bg-muted/50 font-medium",e),...r})},"TableHead",0,function({className:e,...r}){return(0,t.jsx)("th",{className:(0,a.cn)("h-10 whitespace-nowrap px-3 text-left align-middle text-xs font-medium text-muted-foreground",e),...r})},"TableHeader",0,function({className:e,...r}){return(0,t.jsx)("thead",{className:(0,a.cn)("border-b",e),...r})},"TableRow",0,function({className:e,...r}){return(0,t.jsx)("tr",{className:(0,a.cn)("transition-colors hover:bg-muted/40",e),...r})}])},573474,e=>{"use strict";let t=(0,e.i(456420).default)("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.s(["Trash2",0,t],573474)},340953,e=>{"use strict";var t=e.i(843476),a=e.i(271645),r=e.i(30030);function i(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function n(...e){return a.useCallback(function(...e){return t=>{let a=!1,r=e.map(e=>{let r=i(e,t);return a||"function"!=typeof r||(a=!0),r});if(a)return()=>{for(let t=0;t<r.length;t++){let a=r[t];"function"==typeof a?a():i(e[t],null)}}}}(...e),e)}var l=e.i(326999);"u">typeof window&&window.document&&window.document.createElement;var s="AlertDialog",[o,d]=(0,r.createContextScope)(s,[l.createDialogScope]),c=(0,l.createDialogScope)(),u=e=>{let{__scopeAlertDialog:a,...r}=e,i=c(a);return(0,t.jsx)(l.Root,{...i,...r,modal:!0})};u.displayName=s;var p=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,n=c(r);return(0,t.jsx)(l.Trigger,{...n,...i,ref:a})});p.displayName="AlertDialogTrigger";var f=e=>{let{__scopeAlertDialog:a,...r}=e,i=c(a);return(0,t.jsx)(l.Portal,{...i,...r})};f.displayName="AlertDialogPortal";var x=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,n=c(r);return(0,t.jsx)(l.Overlay,{...n,...i,ref:a})});x.displayName="AlertDialogOverlay";var m="AlertDialogContent",[h,g]=o(m),j=a.forwardRef((e,r)=>{let{__scopeAlertDialog:i,children:s,...o}=e,d=c(i),u=n(r,a.useRef(null)),p=a.useRef(null);return(0,t.jsx)(h,{scope:i,cancelRef:p,children:(0,t.jsx)(l.Content,{role:"alertdialog",...d,...o,ref:u,onOpenAutoFocus:function(e,t,{checkForDefaultPrevented:a=!0}={}){return function(r){if(e?.(r),!1===a||!r||!r.defaultPrevented)return t?.(r)}}(o.onOpenAutoFocus,e=>{e.preventDefault(),p.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:s})})});j.displayName=m;var b=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,n=c(r);return(0,t.jsx)(l.Title,{...n,...i,ref:a})});b.displayName="AlertDialogTitle";var v=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,n=c(r);return(0,t.jsx)(l.Description,{...n,...i,ref:a})});v.displayName="AlertDialogDescription";var y=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,n=c(r);return(0,t.jsx)(l.Close,{...n,...i,ref:a})});y.displayName="AlertDialogAction";var w="AlertDialogCancel",C=a.forwardRef((e,a)=>{let{__scopeAlertDialog:r,...i}=e,{cancelRef:s}=g(w,r),o=c(r),d=n(a,s);return(0,t.jsx)(l.Close,{...o,...i,ref:d})});C.displayName=w,e.s(["Action",0,y,"AlertDialog",0,u,"AlertDialogAction",0,y,"AlertDialogCancel",0,C,"AlertDialogContent",0,j,"AlertDialogDescription",0,v,"AlertDialogOverlay",0,x,"AlertDialogPortal",0,f,"AlertDialogTitle",0,b,"AlertDialogTrigger",0,p,"Cancel",0,C,"Content",0,j,"Description",0,v,"Overlay",0,x,"Portal",0,f,"Root",0,u,"Title",0,b,"Trigger",0,p,"createAlertDialogScope",0,d],691162);var S=e.i(691162),S=S,N=e.i(975157),D=e.i(519455);function k({...e}){return(0,t.jsx)(S.Root,{"data-slot":"alert-dialog",...e})}function T({...e}){return(0,t.jsx)(S.Trigger,{"data-slot":"alert-dialog-trigger",...e})}function B({...e}){return(0,t.jsx)(S.Portal,{"data-slot":"alert-dialog-portal",...e})}function E({className:e,...a}){return(0,t.jsx)(S.Overlay,{"data-slot":"alert-dialog-overlay",className:(0,N.cn)("fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...a})}function A({className:e,size:a="default",...r}){return(0,t.jsxs)(B,{children:[(0,t.jsx)(E,{}),(0,t.jsx)(S.Content,{"data-slot":"alert-dialog-content","data-size":a,className:(0,N.cn)("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...r})]})}function R({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,N.cn)("grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]",e),...a})}function I({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,N.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end",e),...a})}function z({className:e,...a}){return(0,t.jsx)(S.Title,{"data-slot":"alert-dialog-title",className:(0,N.cn)("font-heading text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2",e),...a})}function L({className:e,...a}){return(0,t.jsx)(S.Description,{"data-slot":"alert-dialog-description",className:(0,N.cn)("text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),...a})}function P({className:e,variant:a="default",size:r="default",...i}){return(0,t.jsx)(D.Button,{variant:a,size:r,asChild:!0,children:(0,t.jsx)(S.Action,{"data-slot":"alert-dialog-action",className:(0,N.cn)(e),...i})})}function $({className:e,variant:a="outline",size:r="default",...i}){return(0,t.jsx)(D.Button,{variant:a,size:r,asChild:!0,children:(0,t.jsx)(S.Cancel,{"data-slot":"alert-dialog-cancel",className:(0,N.cn)(e),...i})})}e.s(["ConfirmationDialog",0,function({actionLabel:e,cancelLabel:a,description:r,onConfirm:i,onOpenChange:n,open:l,title:s,trigger:o}){return(0,t.jsxs)(k,{onOpenChange:n,open:l,children:[o&&(0,t.jsx)(T,{asChild:!0,children:o}),(0,t.jsxs)(A,{children:[(0,t.jsxs)(R,{children:[(0,t.jsx)(z,{children:s}),(0,t.jsx)(L,{children:r})]}),(0,t.jsxs)(I,{children:[(0,t.jsx)($,{children:a}),(0,t.jsx)(P,{onClick:()=>void i(),variant:"destructive",children:e})]})]})]})}],340953)},77071,e=>{"use strict";let t=(0,e.i(456420).default)("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);e.s(["Plus",0,t],77071)},776639,e=>{"use strict";var t=e.i(843476),a=e.i(560964),r=e.i(964053),i=e.i(519455),n=e.i(975157);function l({...e}){return(0,t.jsx)(r.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function s({className:e,...a}){return(0,t.jsx)(r.Dialog.Overlay,{className:(0,n.cn)("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),"data-slot":"dialog-overlay",...a})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(r.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:o,showCloseButton:d=!0,...c}){return(0,t.jsxs)(l,{children:[(0,t.jsx)(s,{}),(0,t.jsxs)(r.Dialog.Content,{className:(0,n.cn)("fixed top-1/2 left-1/2 z-50 grid max-h-[85dvh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),"data-slot":"dialog-content",...c,children:[o,d&&(0,t.jsx)(r.Dialog.Close,{asChild:!0,"data-slot":"dialog-close",children:(0,t.jsxs)(i.Button,{className:"absolute top-2 right-2",size:"icon-sm",variant:"ghost",children:[(0,t.jsx)(a.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})})]})]})},"DialogDescription",0,function({className:e,...a}){return(0,t.jsx)(r.Dialog.Description,{className:(0,n.cn)("text-sm text-muted-foreground *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",e),"data-slot":"dialog-description",...a})},"DialogFooter",0,function({className:e,showCloseButton:a=!1,children:l,...s}){return(0,t.jsxs)("div",{className:(0,n.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),"data-slot":"dialog-footer",...s,children:[l,a&&(0,t.jsx)(r.Dialog.Close,{asChild:!0,children:(0,t.jsx)(i.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...a}){return(0,t.jsx)("div",{className:(0,n.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...a})},"DialogTitle",0,function({className:e,...a}){return(0,t.jsx)(r.Dialog.Title,{className:(0,n.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...a})}])},59497,e=>{"use strict";var t=e.i(843476),a=e.i(271645);function r(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return a.useCallback(function(...e){return t=>{let a=!1,i=e.map(e=>{let i=r(e,t);return a||"function"!=typeof i||(a=!0),i});if(a)return()=>{for(let t=0;t<i.length;t++){let a=i[t];"function"==typeof a?a():r(e[t],null)}}}}(...e),e)}var n=e.i(30030);function l(e,t,{checkForDefaultPrevented:a=!0}={}){return function(r){if(e?.(r),!1===a||!r||!r.defaultPrevented)return t?.(r)}}"u">typeof window&&window.document&&window.document.createElement;var s=globalThis?.document?a.useLayoutEffect:()=>{};a[" useEffectEvent ".trim().toString()],a[" useInsertionEffect ".trim().toString()];var o=a[" useInsertionEffect ".trim().toString()]||s;Symbol("RADIX:SYNC_STATE");var d=e.i(999682),c=e.i(635804),u=e.i(296626);e.i(174080);var p=Symbol.for("radix.slottable"),f=Symbol.for("react.lazy");function x(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===f&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var m=a[" use ".trim().toString()],h=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var n;let l,s=(n=`Primitive.${r}`,(l=a.forwardRef((e,t)=>{var r;let l,s,{children:o,...d}=e,c=null,u=!1,f=[];x(o)&&"function"==typeof m&&(o=m(o._payload)),a.Children.forEach(o,e=>{var t;if(t=e,a.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===p){u=!0;let t="child"in e.props?e.props.child:e.props.children;x(t)&&"function"==typeof m&&(t=m(t._payload)),c=((e,t)=>{if("child"in e.props){let t=e.props.child;return a.isValidElement(t)?a.cloneElement(t,void 0,e.props.children(t.props.children)):null}return a.isValidElement(t)?t:null})(e,t),f.push(c?.props?.children)}else f.push(e)}),c?c=a.cloneElement(c,void 0,f):!u&&1===a.Children.count(o)&&a.isValidElement(o)&&(c=o);let h=c?(r=c,(s=(l=Object.getOwnPropertyDescriptor(r.props,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?r.ref:(s=(l=Object.getOwnPropertyDescriptor(r,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?r.props.ref:r.props.ref||r.ref):void 0,g=i(t,h);if(!c){if(o||0===o){let e,t;throw Error(u?(e=n,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=n,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return o}let j=function(e,t){let a={...t};for(let r in t){let i=e[r],n=t[r];/^on[A-Z]/.test(r)?i&&n?a[r]=(...e)=>{let t=n(...e);return i(...e),t}:i&&(a[r]=i):"style"===r?a[r]={...i,...n}:"className"===r&&(a[r]=[i,n].filter(Boolean).join(" "))}return{...e,...a}}(d,c.props??{});return c.type!==a.Fragment&&(j.ref=t?g:h),a.cloneElement(c,j)})).displayName=`${n}.Slot`,l),o=a.forwardRef((e,a)=>{let{asChild:i,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(i?s:r,{...n,ref:a})});return o.displayName=`Primitive.${r}`,{...e,[r]:o}},{}),g="Checkbox",[j,b]=(0,n.createContextScope)(g),[v,y]=j(g);function w(e){let{__scopeCheckbox:r,checked:i,children:n,defaultChecked:l,disabled:s,form:d,name:c,onCheckedChange:u,required:p,value:f="on",internal_do_not_use_render:x}=e,[m,h]=function({prop:e,defaultProp:t,onChange:r=()=>{},caller:i}){let[n,l,s]=function({defaultProp:e,onChange:t}){let[r,i]=a.useState(e),n=a.useRef(r),l=a.useRef(t);return o(()=>{l.current=t},[t]),a.useEffect(()=>{n.current!==r&&(l.current?.(r),n.current=r)},[r,n]),[r,i,l]}({defaultProp:t,onChange:r}),d=void 0!==e,c=d?e:n;{let t=a.useRef(void 0!==e);a.useEffect(()=>{let e=t.current;if(e!==d){let t=d?"controlled":"uncontrolled";console.warn(`${i} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=d},[d,i])}return[c,a.useCallback(t=>{if(d){let a="function"==typeof t?t(e):t;a!==e&&s.current?.(a)}else l(t)},[d,e,l,s])]}({prop:i,defaultProp:l??!1,onChange:u,caller:g}),[j,b]=a.useState(null),[y,w]=a.useState(null),C=a.useRef(!1),S=!j||!!d||!!j.closest("form"),N={checked:m,disabled:s,setChecked:h,control:j,setControl:b,name:c,form:d,value:f,hasConsumerStoppedPropagationRef:C,required:p,defaultChecked:!E(l)&&l,isFormControl:S,bubbleInput:y,setBubbleInput:w};return(0,t.jsx)(v,{scope:r,...N,children:"function"==typeof x?x(N):n})}var C="CheckboxTrigger",S=a.forwardRef(({__scopeCheckbox:e,onKeyDown:r,onClick:n,...s},o)=>{let{control:d,value:c,disabled:u,checked:p,required:f,setControl:x,setChecked:m,hasConsumerStoppedPropagationRef:g,isFormControl:j,bubbleInput:b}=y(C,e),v=i(o,x),w=a.useRef(p);return a.useEffect(()=>{let e=d?.form;if(e){let t=()=>m(w.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[d,m]),(0,t.jsx)(h.button,{type:"button",role:"checkbox","aria-checked":E(p)?"mixed":p,"aria-required":f,"data-state":A(p),"data-disabled":u?"":void 0,disabled:u,value:c,...s,ref:v,onKeyDown:l(r,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:l(n,e=>{m(e=>!!E(e)||!e),b&&j&&(g.current=e.isPropagationStopped(),g.current||e.stopPropagation())})})});S.displayName=C;var N=a.forwardRef((e,a)=>{let{__scopeCheckbox:r,name:i,checked:n,defaultChecked:l,required:s,disabled:o,value:d,onCheckedChange:c,form:u,...p}=e;return(0,t.jsx)(w,{__scopeCheckbox:r,checked:n,defaultChecked:l,disabled:o,required:s,onCheckedChange:c,name:i,form:u,value:d,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S,{...p,ref:a,__scopeCheckbox:r}),e&&(0,t.jsx)(B,{__scopeCheckbox:r})]})})});N.displayName=g;var D="CheckboxIndicator",k=a.forwardRef((e,a)=>{let{__scopeCheckbox:r,forceMount:i,...n}=e,l=y(D,r);return(0,t.jsx)(u.Presence,{present:i||E(l.checked)||!0===l.checked,children:(0,t.jsx)(h.span,{"data-state":A(l.checked),"data-disabled":l.disabled?"":void 0,...n,ref:a,style:{pointerEvents:"none",...e.style}})})});k.displayName=D;var T="CheckboxBubbleInput",B=a.forwardRef(({__scopeCheckbox:e,...r},n)=>{let{control:l,hasConsumerStoppedPropagationRef:s,checked:o,defaultChecked:u,required:p,disabled:f,name:x,value:m,form:g,bubbleInput:j,setBubbleInput:b}=y(T,e),v=i(n,b),w=(0,d.usePrevious)(o),C=(0,c.useSize)(l);a.useEffect(()=>{if(!j)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!s.current;if(w!==o&&e){let a=new Event("click",{bubbles:t});j.indeterminate=E(o),e.call(j,!E(o)&&o),j.dispatchEvent(a)}},[j,w,o,s]);let S=a.useRef(!E(o)&&o);return(0,t.jsx)(h.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??S.current,required:p,disabled:f,name:x,value:m,form:g,...r,tabIndex:-1,ref:v,style:{...r.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function E(e){return"indeterminate"===e}function A(e){return E(e)?"indeterminate":e?"checked":"unchecked"}B.displayName=T,e.s(["Checkbox",0,N,"CheckboxIndicator",0,k,"Indicator",0,k,"Root",0,N,"createCheckboxScope",0,b,"unstable_BubbleInput",0,B,"unstable_CheckboxBubbleInput",0,B,"unstable_CheckboxProvider",0,w,"unstable_CheckboxTrigger",0,S,"unstable_Provider",0,w,"unstable_Trigger",0,S],388474);var R=e.i(388474),R=R,I=e.i(975157),z=e.i(593698);e.s(["Checkbox",0,function({className:e,...a}){return(0,t.jsx)(R.Root,{"data-slot":"checkbox",className:(0,I.cn)("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",e),...a,children:(0,t.jsx)(R.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:(0,t.jsx)(z.CheckIcon,{})})})}],59497)},768877,e=>{"use strict";let t=(0,e.i(456420).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",0,t],768877)},229490,e=>{"use strict";var t=e.i(843476),a=e.i(768877),r=e.i(93384),i=e.i(77071);let n=(0,e.i(456420).default)("scroll-text",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]);var l=e.i(573474),s=e.i(861745),o=e.i(948148),d=e.i(271645),c=e.i(340953),u=e.i(929592),p=e.i(487486),f=e.i(519455),x=e.i(515288),m=e.i(59497),h=e.i(776639),g=e.i(82612),j=e.i(793479),b=e.i(110204),v=e.i(967489),y=e.i(987968),w=e.i(784774),C=e.i(677572),S=e.i(624687),N=e.i(520133),D=e.i(637611);let k=`
2
- id requestId jobId status action destinationType destination snapshot commandSummary artifactDirectory errorCode error
3
- createdAt startedAt finishedAt durationMs updatedAt
4
- artifacts { id kind relativePath sizeBytes checksum metadata createdAt }
5
- `,T=`
6
- id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior createdAt updatedAt
7
- `,B=`export default async function preBuild({
8
- buildId,
9
- branch,
10
- destination,
11
- action,
12
- }) {
13
- // Runs before the build from the worktree root.
14
- }`,E=`export default async function postBuild({
15
- buildId,
16
- branch,
17
- destination,
18
- action,
19
- buildFolder,
20
- failed,
21
- cancelled,
22
- errorCode,
23
- error,
24
- }) {
25
- // Runs after every build attempt from the worktree root.
26
- }`,A=["ALL","QUEUED","PREPARING","RUNNING","SUCCEEDED","FAILED","CANCELLED"];function R({open:e,script:a,onOpenChange:r,onSaved:i}){let n=(0,o.useTranslations)("builds"),[l,s]=(0,d.useState)(a?.name??""),[c,p]=(0,d.useState)(a?a.preBuildScript??"":B),[x,g]=(0,d.useState)(a?a.postBuildScript??"":E),[w,C]=(0,d.useState)(a?.enabledByDefault??!1),[N,k]=(0,d.useState)(a?.timeoutSeconds??300),[T,A]=(0,d.useState)(a?.failureBehavior??"FAIL_BUILD"),[I,z]=(0,d.useState)(!1),[L,P]=(0,d.useState)(null),$=async()=>{z(!0),P(null);try{await (0,D.controlPlaneRequest)(`mutation SaveBuildScript($input: SaveBuildScriptInput!) {
27
- saveBuildScript(input: $input) { id }
28
- }`,{input:{id:a?.id??null,name:l,preBuildScript:c||null,postBuildScript:x||null,enabledByDefault:w,timeoutSeconds:N,failureBehavior:T}}),await i(),r(!1)}catch(e){P(e instanceof Error?e.message:String(e))}finally{z(!1)}};return(0,t.jsx)(h.Dialog,{onOpenChange:r,open:e,children:(0,t.jsxs)(h.DialogContent,{className:"sm:max-w-2xl",children:[(0,t.jsxs)(h.DialogHeader,{children:[(0,t.jsx)(h.DialogTitle,{children:n(a?"editScript":"newScript")}),(0,t.jsx)(h.DialogDescription,{children:n("scriptDescription")})]}),L&&(0,t.jsx)(u.Alert,{variant:"destructive",children:(0,t.jsx)(u.AlertDescription,{children:L})}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"build-script-name",children:n("name")}),(0,t.jsx)(j.Input,{id:"build-script-name",onChange:e=>s(e.target.value),value:l})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"pre-build-script",children:n("preBuildScript")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:n("preBuildScriptHelp")}),(0,t.jsx)(S.Textarea,{className:"font-mono text-xs",id:"pre-build-script",onChange:e=>p(e.target.value),rows:8,value:c})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"post-build-script",children:n("postBuildScript")}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:n("postBuildScriptHelp")}),(0,t.jsx)(S.Textarea,{className:"font-mono text-xs",id:"post-build-script",onChange:e=>g(e.target.value),rows:8,value:x})]}),(0,t.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{htmlFor:"script-timeout",children:n("timeout")}),(0,t.jsx)(j.Input,{id:"script-timeout",min:1,max:3600,onChange:e=>k(Number(e.target.value)),type:"number",value:N})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(b.Label,{children:n("failureBehavior")}),(0,t.jsxs)(v.Select,{onValueChange:e=>A(e),value:T,children:[(0,t.jsx)(v.SelectTrigger,{children:(0,t.jsx)(v.SelectValue,{})}),(0,t.jsxs)(v.SelectContent,{children:[(0,t.jsx)(v.SelectItem,{value:"FAIL_BUILD",children:n("failureBehaviors.FAIL_BUILD")}),(0,t.jsx)(v.SelectItem,{value:"CONTINUE",children:n("failureBehaviors.CONTINUE")})]})]})]})]}),(0,t.jsxs)("label",{className:"flex items-center gap-2",children:[(0,t.jsx)(m.Checkbox,{checked:w,onCheckedChange:e=>C(!!e)}),n("enabledByDefault")]})]}),(0,t.jsxs)(h.DialogFooter,{children:[(0,t.jsx)(f.Button,{onClick:()=>r(!1),type:"button",variant:"outline",children:n("cancel")}),(0,t.jsxs)(f.Button,{disabled:I||!l.trim()||!c.trim()&&!x.trim(),onClick:()=>void $(),type:"button",children:[I&&(0,t.jsx)(y.Spinner,{})," ",n("save")]})]})]})})}e.s(["BuildsPage",0,function(){let e=(0,o.useTranslations)("builds"),h=(0,s.useLocale)(),[j,b]=(0,d.useState)([]),[S,B]=(0,d.useState)([]),[E,I]=(0,d.useState)("ALL"),[z,L]=(0,d.useState)(null),[P,$]=(0,d.useState)(!0),[_,H]=(0,d.useState)(!1),[O,M]=(0,d.useState)(null),[F,V]=(0,d.useState)(!1),[U,q]=(0,d.useState)(null),[K,W]=(0,d.useState)(new Set),[X,G]=(0,d.useState)(!1),[Y,Q]=(0,d.useState)(!1),Z=(0,d.useCallback)(async e=>{e?H(!0):$(!0);try{let t=await (0,D.controlPlaneRequest)(`query BuildsPage($after: ID, $status: BuildStatus) {
29
- builds(first: 50, after: $after, status: $status) {
30
- items { ${k} }
31
- nextCursor
32
- }
33
- buildScripts { ${T} }
34
- }`,{after:e??null,status:"ALL"===E?null:E});b(a=>e?[...a,...t.builds.items]:t.builds.items),L(t.builds.nextCursor),B(t.buildScripts),M(null)}catch(e){M(e instanceof Error?e.message:String(e))}finally{$(!1),H(!1)}},[E]);(0,d.useEffect)(()=>{let e=window.setTimeout(()=>void Z(),0);return()=>window.clearTimeout(e)},[Z]),(0,d.useEffect)(()=>(0,D.controlPlaneSubscriptions)().subscribe({query:"subscription BuildsChanged { buildsChanged { id } }"},{next:()=>void Z(),error:()=>void 0,complete:()=>void 0}),[Z]);let J=async e=>{try{await (0,D.controlPlaneRequest)("mutation DeleteBuildScript($id: ID!) { deleteBuildScript(id: $id) }",{id:e}),await Z()}catch(e){M(e instanceof Error?e.message:String(e))}},ee=(0,d.useMemo)(()=>{let e=[],t=new Intl.DateTimeFormat(h,{dateStyle:"full"});for(let a of j){let r=new Date(a.startedAt??a.createdAt),i=`${r.getFullYear()}-${r.getMonth()}-${r.getDate()}`,n=e.at(-1);n?.dateKey===i?n.items.push(a):e.push({key:`${i}-${a.id}`,dateKey:i,label:t.format(r),items:[a]})}return e},[j,h]),et=async()=>{if(K.size){Q(!0),M(null);try{await (0,D.controlPlaneRequest)("mutation DeleteBuilds($ids: [ID!]!) { deleteBuilds(ids: $ids) }",{ids:[...K]}),W(new Set),G(!1),await Z()}catch(e){M(e instanceof Error?e.message:String(e))}finally{Q(!1)}}};return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-6xl flex-col gap-6",children:[(0,t.jsx)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:e("title")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("description")})]})}),O&&(0,t.jsx)(u.Alert,{variant:"destructive",children:(0,t.jsx)(u.AlertDescription,{children:O})}),(0,t.jsxs)(C.Tabs,{defaultValue:"history",children:[(0,t.jsxs)(C.TabsList,{children:[(0,t.jsxs)(C.TabsTrigger,{value:"history",children:[(0,t.jsx)(r.Hammer,{})," ",e("history")]}),(0,t.jsxs)(C.TabsTrigger,{value:"scripts",children:[(0,t.jsx)(n,{})," ",e("buildScripts")]})]}),(0,t.jsxs)(C.TabsContent,{className:"space-y-4",value:"history",children:[(0,t.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[K.size>0&&(0,t.jsxs)(f.Button,{disabled:Y,onClick:()=>G(!0),variant:"destructive",children:[Y?(0,t.jsx)(y.Spinner,{}):(0,t.jsx)(l.Trash2,{}),e("deleteSelected",{count:K.size})]}),(0,t.jsxs)(v.Select,{onValueChange:e=>{W(new Set),I(e)},value:E,children:[(0,t.jsx)(v.SelectTrigger,{className:"w-48","aria-label":e("filterStatus"),children:(0,t.jsx)(v.SelectValue,{})}),(0,t.jsx)(v.SelectContent,{children:A.map(a=>(0,t.jsx)(v.SelectItem,{value:a,children:"ALL"===a?e("allStatuses"):e(`statuses.${a}`)},a))})]})]}),P&&!j.length?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-muted-foreground",children:[(0,t.jsx)(y.Spinner,{})," ",e("loading")]}):j.length?(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("div",{className:"overflow-x-auto rounded-lg border",children:(0,t.jsxs)(w.Table,{children:[(0,t.jsx)(w.TableHeader,{children:(0,t.jsxs)(w.TableRow,{className:"hover:bg-transparent",children:[(0,t.jsx)(w.TableHead,{className:"w-12",children:(0,t.jsx)("span",{className:"sr-only",children:e("selectBuilds")})}),(0,t.jsx)(w.TableHead,{children:e("build")}),(0,t.jsx)(w.TableHead,{children:e("status")}),(0,t.jsx)(w.TableHead,{children:e("action")}),(0,t.jsx)(w.TableHead,{children:e("destination")}),(0,t.jsx)(w.TableHead,{children:e("startedAt")}),(0,t.jsx)(w.TableHead,{children:e("duration")}),(0,t.jsx)(w.TableHead,{children:e("artifacts")}),(0,t.jsx)(w.TableHead,{className:"text-right",children:(0,t.jsx)("span",{className:"sr-only",children:e("actionsLabel")})})]})}),(0,t.jsx)(w.TableBody,{children:ee.map(r=>{let i=r.items.map(e=>e.id),n=i.filter(e=>K.has(e)).length;return(0,t.jsxs)(d.Fragment,{children:[(0,t.jsxs)(w.TableRow,{className:"bg-muted/20 hover:bg-muted/20",children:[(0,t.jsx)(w.TableCell,{className:"py-1.5",children:(0,t.jsx)(m.Checkbox,{"aria-label":e("selectDate",{date:r.label}),checked:n===i.length||n>0&&"indeterminate",onCheckedChange:e=>W(t=>{let a=new Set(t);for(let t of i)!0===e?a.add(t):a.delete(t);return a})})}),(0,t.jsx)(w.TableCell,{className:"py-1.5 text-xs font-normal text-muted-foreground",colSpan:8,children:r.label})]}),r.items.map(r=>{var i;let n,l,s,o=(n=r.snapshot.repository,l=r.snapshot.worktree,{repository:n?.name??"—",worktree:l?.branch??l?.folder??"—"});return(0,t.jsxs)(w.TableRow,{children:[(0,t.jsx)(w.TableCell,{children:(0,t.jsx)(m.Checkbox,{"aria-label":e("selectBuild",{id:r.id}),checked:K.has(r.id),onCheckedChange:e=>W(t=>{let a=new Set(t);return!0===e?a.add(r.id):a.delete(r.id),a})})}),(0,t.jsxs)(w.TableCell,{className:"min-w-56 whitespace-normal",children:[(0,t.jsx)(N.Link,{className:"font-medium hover:underline",href:`/builds/${r.id}`,children:o.repository}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:o.worktree})]}),(0,t.jsx)(w.TableCell,{children:(0,t.jsx)(p.Badge,{variant:"FAILED"===(i=r.status)?"destructive":"SUCCEEDED"===i?"default":"secondary",children:e(`statuses.${r.status}`)})}),(0,t.jsx)(w.TableCell,{children:(0,t.jsx)(p.Badge,{variant:"outline",children:e(`actions.${r.action}`)})}),(0,t.jsx)(w.TableCell,{children:r.destination.name}),(0,t.jsx)(w.TableCell,{className:"whitespace-nowrap text-xs",children:(s=r.startedAt??r.createdAt)?new Date(s).toLocaleString(h):"—"}),(0,t.jsx)(w.TableCell,{className:"whitespace-nowrap",children:null===r.durationMs?"—":e("durationSeconds",{count:Math.round(r.durationMs/1e3)})}),(0,t.jsx)(w.TableCell,{children:r.artifacts.length?e("artifactCount",{count:r.artifacts.length}):"—"}),(0,t.jsx)(w.TableCell,{className:"text-right",children:(0,t.jsx)(f.Button,{asChild:!0,size:"icon-sm",variant:"ghost",children:(0,t.jsx)(N.Link,{"aria-label":e("viewBuild"),href:`/builds/${r.id}`,children:(0,t.jsx)(a.ArrowRight,{})})})})]},r.id)})]},r.key)})})]})}),z&&(0,t.jsx)("div",{className:"flex justify-center",children:(0,t.jsxs)(f.Button,{disabled:_,onClick:()=>void Z(z),variant:"outline",children:[_&&(0,t.jsx)(y.Spinner,{})," ",e("loadMore")]})})]}):(0,t.jsx)(g.Empty,{className:"border py-12",children:(0,t.jsxs)(g.EmptyHeader,{children:[(0,t.jsx)(g.EmptyMedia,{variant:"icon",children:(0,t.jsx)(r.Hammer,{})}),(0,t.jsx)(g.EmptyTitle,{children:e("emptyTitle")}),(0,t.jsx)(g.EmptyDescription,{children:e("emptyDescription")})]})})]}),(0,t.jsxs)(C.TabsContent,{className:"space-y-4",value:"scripts",children:[(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsxs)(f.Button,{onClick:()=>{q(null),V(!0)},children:[(0,t.jsx)(i.Plus,{})," ",e("newScript")]})}),S.length?(0,t.jsx)("div",{className:"grid gap-3 lg:grid-cols-2",children:S.map(a=>(0,t.jsxs)(x.Card,{children:[(0,t.jsx)(x.CardHeader,{children:(0,t.jsxs)(x.CardTitle,{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("span",{children:a.name}),a.enabledByDefault&&(0,t.jsx)(p.Badge,{children:e("defaultEnabled")})]})}),(0,t.jsxs)(x.CardContent,{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap gap-2 text-xs text-muted-foreground",children:[a.preBuildScript&&(0,t.jsx)(p.Badge,{variant:"outline",children:e("preBuild")}),a.postBuildScript&&(0,t.jsx)(p.Badge,{variant:"outline",children:e("postBuild")}),(0,t.jsx)("span",{children:e("timeoutSeconds",{count:a.timeoutSeconds})}),(0,t.jsx)("span",{children:e(`failureBehaviors.${a.failureBehavior}`)})]}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsx)(f.Button,{onClick:()=>{q(a),V(!0)},size:"sm",variant:"outline",children:e("edit")}),(0,t.jsx)(f.Button,{"aria-label":e("deleteScript"),onClick:()=>void J(a.id),size:"icon-sm",variant:"destructive",children:(0,t.jsx)(l.Trash2,{})})]})]})]},a.id))}):(0,t.jsx)(g.Empty,{className:"border py-12",children:(0,t.jsxs)(g.EmptyHeader,{children:[(0,t.jsx)(g.EmptyMedia,{variant:"icon",children:(0,t.jsx)(n,{})}),(0,t.jsx)(g.EmptyTitle,{children:e("noScripts")}),(0,t.jsx)(g.EmptyDescription,{children:e("noScriptsDescription")})]})})]})]}),F&&(0,t.jsx)(R,{onOpenChange:V,onSaved:Z,open:F,script:U}),(0,t.jsx)(c.ConfirmationDialog,{actionLabel:e("deleteBuilds"),cancelLabel:e("cancel"),description:e("deleteBuildsDescription",{count:K.size}),onConfirm:et,onOpenChange:G,open:X,title:e("deleteBuildsTitle",{count:K.size})})]})}],229490)}]);
@@ -1,27 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,59497,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function l(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function a(...e){return r.useCallback(function(...e){return t=>{let r=!1,a=e.map(e=>{let a=l(e,t);return r||"function"!=typeof a||(r=!0),a});if(r)return()=>{for(let t=0;t<a.length;t++){let r=a[t];"function"==typeof r?r():l(e[t],null)}}}}(...e),e)}var i=e.i(30030);function n(e,t,{checkForDefaultPrevented:r=!0}={}){return function(l){if(e?.(l),!1===r||!l||!l.defaultPrevented)return t?.(l)}}"u">typeof window&&window.document&&window.document.createElement;var s=globalThis?.document?r.useLayoutEffect:()=>{};r[" useEffectEvent ".trim().toString()],r[" useInsertionEffect ".trim().toString()];var o=r[" useInsertionEffect ".trim().toString()]||s;Symbol("RADIX:SYNC_STATE");var d=e.i(999682),c=e.i(635804),u=e.i(296626);e.i(174080);var m=Symbol.for("radix.slottable"),p=Symbol.for("react.lazy");function h(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===p&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var x=r[" use ".trim().toString()],f=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,l)=>{var i;let n,s=(i=`Primitive.${l}`,(n=r.forwardRef((e,t)=>{var l;let n,s,{children:o,...d}=e,c=null,u=!1,p=[];h(o)&&"function"==typeof x&&(o=x(o._payload)),r.Children.forEach(o,e=>{var t;if(t=e,r.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===m){u=!0;let t="child"in e.props?e.props.child:e.props.children;h(t)&&"function"==typeof x&&(t=x(t._payload)),c=((e,t)=>{if("child"in e.props){let t=e.props.child;return r.isValidElement(t)?r.cloneElement(t,void 0,e.props.children(t.props.children)):null}return r.isValidElement(t)?t:null})(e,t),p.push(c?.props?.children)}else p.push(e)}),c?c=r.cloneElement(c,void 0,p):!u&&1===r.Children.count(o)&&r.isValidElement(o)&&(c=o);let f=c?(l=c,(s=(n=Object.getOwnPropertyDescriptor(l.props,"ref")?.get)&&"isReactWarning"in n&&n.isReactWarning)?l.ref:(s=(n=Object.getOwnPropertyDescriptor(l,"ref")?.get)&&"isReactWarning"in n&&n.isReactWarning)?l.props.ref:l.props.ref||l.ref):void 0,b=a(t,f);if(!c){if(o||0===o){let e,t;throw Error(u?(e=i,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=i,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return o}let v=function(e,t){let r={...t};for(let l in t){let a=e[l],i=t[l];/^on[A-Z]/.test(l)?a&&i?r[l]=(...e)=>{let t=i(...e);return a(...e),t}:a&&(r[l]=a):"style"===l?r[l]={...a,...i}:"className"===l&&(r[l]=[a,i].filter(Boolean).join(" "))}return{...e,...r}}(d,c.props??{});return c.type!==r.Fragment&&(v.ref=t?b:f),r.cloneElement(c,v)})).displayName=`${i}.Slot`,n),o=r.forwardRef((e,r)=>{let{asChild:a,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(a?s:l,{...i,ref:r})});return o.displayName=`Primitive.${l}`,{...e,[l]:o}},{}),b="Checkbox",[v,y]=(0,i.createContextScope)(b),[g,j]=v(b);function w(e){let{__scopeCheckbox:l,checked:a,children:i,defaultChecked:n,disabled:s,form:d,name:c,onCheckedChange:u,required:m,value:p="on",internal_do_not_use_render:h}=e,[x,f]=function({prop:e,defaultProp:t,onChange:l=()=>{},caller:a}){let[i,n,s]=function({defaultProp:e,onChange:t}){let[l,a]=r.useState(e),i=r.useRef(l),n=r.useRef(t);return o(()=>{n.current=t},[t]),r.useEffect(()=>{i.current!==l&&(n.current?.(l),i.current=l)},[l,i]),[l,a,n]}({defaultProp:t,onChange:l}),d=void 0!==e,c=d?e:i;{let t=r.useRef(void 0!==e);r.useEffect(()=>{let e=t.current;if(e!==d){let t=d?"controlled":"uncontrolled";console.warn(`${a} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=d},[d,a])}return[c,r.useCallback(t=>{if(d){let r="function"==typeof t?t(e):t;r!==e&&s.current?.(r)}else n(t)},[d,e,n,s])]}({prop:a,defaultProp:n??!1,onChange:u,caller:b}),[v,y]=r.useState(null),[j,w]=r.useState(null),R=r.useRef(!1),C=!v||!!d||!!v.closest("form"),k={checked:x,disabled:s,setChecked:f,control:v,setControl:y,name:c,form:d,value:p,hasConsumerStoppedPropagationRef:R,required:m,defaultChecked:!I(n)&&n,isFormControl:C,bubbleInput:j,setBubbleInput:w};return(0,t.jsx)(g,{scope:l,...k,children:"function"==typeof h?h(k):i})}var R="CheckboxTrigger",C=r.forwardRef(({__scopeCheckbox:e,onKeyDown:l,onClick:i,...s},o)=>{let{control:d,value:c,disabled:u,checked:m,required:p,setControl:h,setChecked:x,hasConsumerStoppedPropagationRef:b,isFormControl:v,bubbleInput:y}=j(R,e),g=a(o,h),w=r.useRef(m);return r.useEffect(()=>{let e=d?.form;if(e){let t=()=>x(w.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[d,x]),(0,t.jsx)(f.button,{type:"button",role:"checkbox","aria-checked":I(m)?"mixed":m,"aria-required":p,"data-state":q(m),"data-disabled":u?"":void 0,disabled:u,value:c,...s,ref:g,onKeyDown:n(l,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:n(i,e=>{x(e=>!!I(e)||!e),y&&v&&(b.current=e.isPropagationStopped(),b.current||e.stopPropagation())})})});C.displayName=R;var k=r.forwardRef((e,r)=>{let{__scopeCheckbox:l,name:a,checked:i,defaultChecked:n,required:s,disabled:o,value:d,onCheckedChange:c,form:u,...m}=e;return(0,t.jsx)(w,{__scopeCheckbox:l,checked:i,defaultChecked:n,disabled:o,required:s,onCheckedChange:c,name:a,form:u,value:d,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(C,{...m,ref:r,__scopeCheckbox:l}),e&&(0,t.jsx)(S,{__scopeCheckbox:l})]})})});k.displayName=b;var E="CheckboxIndicator",N=r.forwardRef((e,r)=>{let{__scopeCheckbox:l,forceMount:a,...i}=e,n=j(E,l);return(0,t.jsx)(u.Presence,{present:a||I(n.checked)||!0===n.checked,children:(0,t.jsx)(f.span,{"data-state":q(n.checked),"data-disabled":n.disabled?"":void 0,...i,ref:r,style:{pointerEvents:"none",...e.style}})})});N.displayName=E;var T="CheckboxBubbleInput",S=r.forwardRef(({__scopeCheckbox:e,...l},i)=>{let{control:n,hasConsumerStoppedPropagationRef:s,checked:o,defaultChecked:u,required:m,disabled:p,name:h,value:x,form:b,bubbleInput:v,setBubbleInput:y}=j(T,e),g=a(i,y),w=(0,d.usePrevious)(o),R=(0,c.useSize)(n);r.useEffect(()=>{if(!v)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!s.current;if(w!==o&&e){let r=new Event("click",{bubbles:t});v.indeterminate=I(o),e.call(v,!I(o)&&o),v.dispatchEvent(r)}},[v,w,o,s]);let C=r.useRef(!I(o)&&o);return(0,t.jsx)(f.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??C.current,required:m,disabled:p,name:h,value:x,form:b,...l,tabIndex:-1,ref:g,style:{...l.style,...R,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function I(e){return"indeterminate"===e}function q(e){return I(e)?"indeterminate":e?"checked":"unchecked"}S.displayName=T,e.s(["Checkbox",0,k,"CheckboxIndicator",0,N,"Indicator",0,N,"Root",0,k,"createCheckboxScope",0,y,"unstable_BubbleInput",0,S,"unstable_CheckboxBubbleInput",0,S,"unstable_CheckboxProvider",0,w,"unstable_CheckboxTrigger",0,C,"unstable_Provider",0,w,"unstable_Trigger",0,C],388474);var D=e.i(388474),D=D,A=e.i(975157),L=e.i(593698);e.s(["Checkbox",0,function({className:e,...r}){return(0,t.jsx)(D.Root,{"data-slot":"checkbox",className:(0,A.cn)("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",e),...r,children:(0,t.jsx)(D.Indicator,{"data-slot":"checkbox-indicator",className:"grid place-content-center text-current transition-none [&>svg]:size-3.5",children:(0,t.jsx)(L.CheckIcon,{})})})}],59497)},730274,e=>{"use strict";let t=(0,e.i(456420).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);e.s(["Send",0,t],730274)},142833,e=>{"use strict";var t=e.i(843476),r=e.i(159888),l=e.i(689664),a=e.i(508734),i=e.i(772382),n=e.i(948148),s=e.i(271645),o=e.i(519455),d=e.i(462777),c=e.i(975157);function u({bodyHtml:e,className:r}){return(0,t.jsx)("div",{className:(0,c.cn)("prose prose-sm max-w-none break-words dark:prose-invert prose-a:text-primary prose-pre:overflow-x-auto [&_details>summary]:cursor-pointer",r),dangerouslySetInnerHTML:{__html:e}})}e.s(["GitHubMarkdownBlock",0,function({body:e,bodyHtml:m,emptyLabel:p,header:h,headerActions:x,headerClassName:f}){let b=(0,n.useTranslations)("githubComments"),[v,y]=(0,s.useState)("RENDERED"),[g,j]=(0,s.useState)("IDLE");(0,s.useEffect)(()=>{if("COPIED"!==g)return;let e=window.setTimeout(()=>j("IDLE"),2e3);return()=>window.clearTimeout(e)},[g]);let w=async()=>{try{await (0,d.copyText)(e),j("COPIED")}catch{j("FAILED")}};return(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:(0,c.cn)("flex flex-wrap items-center justify-between gap-2",f),children:[(0,t.jsx)("div",{className:"min-w-0",children:h}),(e||x)&&(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[x,e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(o.Button,{onClick:()=>y(e=>"RENDERED"===e?"MARKDOWN":"RENDERED"),size:"xs",type:"button",variant:"outline",children:["RENDERED"===v?(0,t.jsx)(r.Braces,{}):(0,t.jsx)(i.Eye,{}),b("RENDERED"===v?"viewRaw":"viewRendered")]}),(0,t.jsxs)(o.Button,{"aria-label":b("copy"),onClick:()=>void w(),size:"xs",type:"button",variant:"outline",children:["COPIED"===g?(0,t.jsx)(l.Check,{}):(0,t.jsx)(a.Copy,{}),b("COPIED"===g?"copied":"copy")]})]})]})]}),"FAILED"===g&&(0,t.jsx)("p",{className:"text-xs text-destructive",children:b("copyFailed")}),e?"MARKDOWN"===v?(0,t.jsx)("pre",{className:"rounded-lg bg-muted p-3 text-xs whitespace-pre-wrap break-words [overflow-wrap:anywhere]",children:e}):(0,t.jsx)(u,{bodyHtml:m}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:p})]})}])},16781,e=>{"use strict";var t=e.i(843476),r=e.i(482022),l=e.i(730274),a=e.i(948148),i=e.i(271645),n=e.i(142833),s=e.i(948812),o=e.i(929592),d=e.i(799676),c=e.i(487486),u=e.i(519455),m=e.i(515288),p=e.i(987968),h=e.i(624687),x=e.i(520133),f=e.i(637611);function b(e,t){let r=Math.round((Date.parse(e)-Date.now())/1e3),l=new Intl.RelativeTimeFormat(t,{numeric:"auto"});for(let[e,t]of[["year",31536e3],["month",2592e3],["week",604800],["day",86400],["hour",3600],["minute",60]])if(Math.abs(r)>=t)return l.format(Math.round(r/t),e);return l.format(r,"second")}function v({actor:e,compact:r=!1}){let l=(0,a.useTranslations)("githubComments");return e?(0,t.jsxs)("a",{className:"inline-flex min-w-0 items-center gap-2 hover:underline",href:e.url,rel:"noreferrer",target:"_blank",children:[(0,t.jsxs)(d.Avatar,{className:r?"size-5":"size-7",children:[(0,t.jsx)(d.AvatarImage,{alt:"",src:e.avatarUrl}),(0,t.jsx)(d.AvatarFallback,{children:e.login.slice(0,1).toUpperCase()})]}),(0,t.jsxs)("span",{className:"truncate",children:["@",e.login]})]}):(0,t.jsx)("span",{children:l("unknownAuthor")})}function y(e,t){if("FILE"===e.subjectType)return`${e.path} \xb7 ${t}`;let r=e.line??e.originalLine,l=e.startLine??e.originalStartLine;return null===r?e.path:`${e.path} \xb7 L${l&&l!==r?`${l}–`:""}${r}`}function g({label:e,url:l}){return(0,t.jsx)(u.Button,{asChild:!0,size:"icon-xs",title:e,variant:"outline",children:(0,t.jsx)("a",{"aria-label":e,href:l,rel:"noreferrer",target:"_blank",children:(0,t.jsx)(r.ExternalLink,{})})})}e.s(["ReviewAuthor",0,v,"ReviewThreadCard",0,function({locale:e,onReplyAdded:r,onStateChanged:d,thread:j}){let w=(0,a.useTranslations)("githubComments"),[R,C]=(0,i.useState)(""),[k,E]=(0,i.useState)(!1),[N,T]=(0,i.useState)(!1),[S,I]=(0,i.useState)(null),q=async e=>{if(e.preventDefault(),R.trim()&&j.viewerCanReply){E(!0);try{let e=await (0,f.controlPlaneRequest)(`mutation ReplyToGitHubReviewThread($threadId: ID!, $body: String!) {
2
- replyToGitHubReviewThread(threadId: $threadId, body: $body) {
3
- id body bodyText bodyHtml url author { login avatarUrl url } createdAt updatedAt
4
- }
5
- }`,{threadId:j.id,body:R});r(j.id,e.replyToGitHubReviewThread),C(""),I(null)}catch(e){I(e instanceof Error?e.message:String(e))}finally{E(!1)}}},D=async()=>{let e=!j.isResolved;if((!e||j.viewerCanResolve)&&(e||j.viewerCanUnresolve)){T(!0);try{let t=await (0,f.controlPlaneRequest)(`mutation SetGitHubReviewThreadResolved(
6
- $threadId: ID!
7
- $resolved: Boolean!
8
- ) {
9
- setGitHubReviewThreadResolved(
10
- threadId: $threadId
11
- resolved: $resolved
12
- ) { id isResolved viewerCanResolve viewerCanUnresolve resolvedBy { login avatarUrl url } }
13
- }`,{threadId:j.id,resolved:e});d(t.setGitHubReviewThreadResolved),I(null)}catch(e){I(e instanceof Error?e.message:String(e))}finally{T(!1)}}},A=j.isResolved?j.viewerCanUnresolve:j.viewerCanResolve;return(0,t.jsx)(m.Card,{children:(0,t.jsxs)(m.CardContent,{className:"space-y-5",children:[(0,t.jsx)(n.GitHubMarkdownBlock,{body:j.rootComment.body,bodyHtml:j.rootComment.bodyHtml,emptyLabel:"—",header:(0,t.jsxs)("div",{className:"min-w-0 space-y-2",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-sm",children:[(0,t.jsx)(v,{actor:j.rootComment.author}),(0,t.jsx)("span",{className:"text-muted-foreground",children:"·"}),(0,t.jsx)("time",{className:"text-muted-foreground",dateTime:j.rootComment.createdAt,title:new Date(j.rootComment.createdAt).toLocaleString(e),children:b(j.rootComment.createdAt,e)})]}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-xs",children:[(0,t.jsx)(c.Badge,{className:"max-w-full",title:y(j,w("fileComment")),variant:"outline",children:y(j,w("fileComment"))}),j.isOutdated&&(0,t.jsx)(c.Badge,{variant:"secondary",children:w("outdated")}),(0,t.jsx)(c.Badge,{variant:j.isResolved?"secondary":"outline",children:j.isResolved?w("resolved"):w("unresolved")}),(0,t.jsxs)(x.Link,{className:"font-medium text-primary hover:underline",href:(0,s.pullRequestDetailHref)(j.pullRequest),children:[j.pullRequest.repositoryNameWithOwner," #",j.pullRequest.number]})]})]}),headerActions:(0,t.jsx)(g,{label:w("openInGitHub"),url:j.rootComment.url}),headerClassName:"border-b pb-4"}),j.replies.length>0&&(0,t.jsx)("div",{className:"space-y-3",children:j.replies.map(r=>(0,t.jsx)(m.Card,{size:"sm",children:(0,t.jsx)(m.CardContent,{children:(0,t.jsx)(n.GitHubMarkdownBlock,{body:r.body,bodyHtml:r.bodyHtml,emptyLabel:"—",header:(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2 text-xs",children:[(0,t.jsx)(v,{actor:r.author,compact:!0}),(0,t.jsx)("span",{className:"text-muted-foreground",children:"·"}),(0,t.jsx)("time",{className:"text-muted-foreground",dateTime:r.createdAt,children:b(r.createdAt,e)})]}),headerActions:(0,t.jsx)(g,{label:w("openReplyInGitHub"),url:r.url}),headerClassName:"border-b pb-3"})})},r.id))}),S&&(0,t.jsx)(o.Alert,{variant:"destructive",children:(0,t.jsx)(o.AlertDescription,{children:S})}),(0,t.jsxs)("form",{className:"space-y-3",onSubmit:q,children:[(0,t.jsx)(h.Textarea,{"aria-label":w("reply"),disabled:!j.viewerCanReply||k,onChange:e=>C(e.target.value),placeholder:j.viewerCanReply?w("replyPlaceholder"):w("replyUnavailable"),value:R}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-end gap-2",children:[(0,t.jsxs)(u.Button,{disabled:!A||N,onClick:()=>void D(),type:"button",variant:"outline",children:[N&&(0,t.jsx)(p.Spinner,{}),j.isResolved?w("reopen"):w("resolve")]}),(0,t.jsxs)(u.Button,{disabled:!j.viewerCanReply||k||!R.trim(),type:"submit",children:[k?(0,t.jsx)(p.Spinner,{}):(0,t.jsx)(l.Send,{}),k?w("replying"):w("sendReply")]})]})]})]})})},"relativeAge",0,b])},360107,e=>{"use strict";var t=e.i(843476),r=e.i(482022),l=e.i(851817),a=e.i(882505),i=e.i(927735),n=e.i(741120),s=e.i(861745),o=e.i(948148),d=e.i(271645),c=e.i(948812),u=e.i(16781),m=e.i(929592),p=e.i(519455),h=e.i(59497),x=e.i(82612),f=e.i(110204),b=e.i(337355),v=e.i(987968),y=e.i(784774),g=e.i(808562),j=e.i(520133),w=e.i(637611);let R="github-comments-layout",C="__all_pull_requests__",k=`
14
- id isResolved isOutdated subjectType path line startLine originalLine originalStartLine
15
- viewerCanReply viewerCanResolve viewerCanUnresolve
16
- resolvedBy { login avatarUrl url }
17
- pullRequest { id number title url repositoryNameWithOwner }
18
- rootComment { id body bodyText bodyHtml url author { login avatarUrl url } createdAt updatedAt }
19
- replies { id body bodyText bodyHtml url author { login avatarUrl url } createdAt updatedAt }
20
- `;function E(e,t=!0){let r=new URLSearchParams(window.location.search);e?r.set("pullRequest",e):r.delete("pullRequest");let l=r.toString(),a=`${window.location.pathname}${l?`?${l}`:""}`;t?window.history.pushState(null,"",a):window.history.replaceState(null,"",a)}function N({checked:e,id:r,label:l,onCheckedChange:a}){return(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(h.Checkbox,{checked:e,id:r,onCheckedChange:e=>a(!!e)}),(0,t.jsx)(f.Label,{htmlFor:r,children:l})]})}function T({locale:e,threads:l}){let a=(0,o.useTranslations)("githubComments");return(0,t.jsx)("div",{className:"overflow-x-auto rounded-lg border",children:(0,t.jsxs)(y.Table,{children:[(0,t.jsx)(y.TableHeader,{children:(0,t.jsxs)(y.TableRow,{className:"hover:bg-transparent",children:[(0,t.jsx)(y.TableHead,{children:a("author")}),(0,t.jsx)(y.TableHead,{children:a("pullRequest")}),(0,t.jsx)(y.TableHead,{children:a("comment")}),(0,t.jsx)(y.TableHead,{children:a("date")}),(0,t.jsx)(y.TableHead,{children:a("replies")}),(0,t.jsx)(y.TableHead,{className:"text-right",children:a("github")})]})}),(0,t.jsx)(y.TableBody,{children:l.map(l=>(0,t.jsxs)(y.TableRow,{children:[(0,t.jsx)(y.TableCell,{className:"min-w-40",children:(0,t.jsx)(u.ReviewAuthor,{actor:l.rootComment.author,compact:!0})}),(0,t.jsx)(y.TableCell,{className:"min-w-64 whitespace-normal",children:(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsxs)(j.Link,{className:"font-semibold text-primary hover:underline",href:(0,c.pullRequestDetailHref)(l.pullRequest),children:[l.pullRequest.repositoryNameWithOwner," #",l.pullRequest.number]}),(0,t.jsx)(j.Link,{className:"text-sm hover:underline",href:(0,c.pullRequestDetailHref)(l.pullRequest),children:l.pullRequest.title})]})}),(0,t.jsx)(y.TableCell,{className:"min-w-80 whitespace-pre-wrap",children:l.rootComment.bodyText}),(0,t.jsx)(y.TableCell,{className:"whitespace-nowrap text-muted-foreground",children:(0,t.jsx)("time",{dateTime:l.rootComment.createdAt,children:(0,u.relativeAge)(l.rootComment.createdAt,e)})}),(0,t.jsx)(y.TableCell,{children:l.replies.length}),(0,t.jsx)(y.TableCell,{className:"text-right",children:(0,t.jsx)(p.Button,{asChild:!0,size:"icon-sm",variant:"ghost",children:(0,t.jsx)("a",{"aria-label":a("openInGitHub"),href:l.rootComment.url,rel:"noreferrer",target:"_blank",children:(0,t.jsx)(r.ExternalLink,{})})})})]},l.id))})]})})}e.s(["CommentsPage",0,function({initialPullRequest:e=null}){let r=(0,o.useTranslations)("githubComments"),h=(0,s.useLocale)(),[y,S]=(0,d.useState)(null),[I,q]=(0,d.useState)(null),[D,A]=(0,d.useState)(!0),[L,H]=(0,d.useState)(!1),[$,P]=(0,d.useState)(null),[_,B]=(0,d.useState)(e??""),[O,M]=(0,d.useState)(!0),[G,U]=(0,d.useState)(!0),[z,F]=(0,d.useState)(!0),[W,K]=(0,d.useState)("cards"),V=(0,d.useCallback)(async()=>{try{let e=await (0,w.controlPlaneRequest)("query GitHubCommentsConfiguration { githubSettings { tokenConfigured updatedAt } }");S(e.githubSettings),P(null)}catch(e){P(e instanceof Error?e.message:String(e))}finally{A(!1)}},[]),X=(0,d.useCallback)(async()=>{H(!0);try{let e=await (0,w.controlPlaneRequest)(`query GitHubReviewThreads {
21
- githubReviewThreads {
22
- viewerLogin
23
- truncated
24
- pullRequests { id number title url repositoryNameWithOwner }
25
- threads { ${k} }
26
- }
27
- }`);q(e.githubReviewThreads),P(null)}catch(e){P(e instanceof Error?e.message:String(e))}finally{H(!1)}},[]);(0,d.useEffect)(()=>{let e=window.setTimeout(()=>void V(),0);return()=>window.clearTimeout(e)},[V]),(0,d.useEffect)(()=>{let e=window.localStorage.getItem(R);if("cards"!==e&&"table"!==e)return;let t=window.setTimeout(()=>K(e),0);return()=>window.clearTimeout(t)},[]),(0,d.useEffect)(()=>{if(!y?.tokenConfigured||I||L)return;let e=window.setTimeout(()=>void X(),0);return()=>window.clearTimeout(e)},[X,L,I,y?.tokenConfigured]),(0,d.useEffect)(()=>{let e=()=>B(new URLSearchParams(window.location.search).get("pullRequest")??"");return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)},[]),(0,d.useEffect)(()=>{!I||!_||I.pullRequests.some(e=>(0,c.pullRequestKey)(e)===_)||E(null,!1)},[I,_]);let Y=_&&I?.pullRequests.some(e=>(0,c.pullRequestKey)(e)===_)?_:"",Z=(0,d.useMemo)(()=>[{value:C,label:r("allPullRequests")},...I?.pullRequests.map(e=>({value:(0,c.pullRequestKey)(e),label:`#${e.number} ${e.title}`,description:e.repositoryNameWithOwner,keywords:`${e.repositoryNameWithOwner} ${e.number} ${e.title}`}))??[]],[I?.pullRequests,r]),J=(0,d.useMemo)(()=>{if(!I||!O&&!G)return[];let e=I.viewerLogin.toLowerCase();return I.threads.filter(t=>(!Y||(0,c.pullRequestKey)(t.pullRequest)===Y)&&(t.rootComment.author?.login.toLowerCase()===e?!!O:!!G)&&(!z||!t.isResolved))},[O,G,I,z,Y]),Q=(e,t)=>{q(r=>r?{...r,threads:r.threads.map(r=>r.id===e?{...r,replies:[...r.replies,t]}:r)}:r)},ee=e=>{q(t=>t?{...t,threads:t.threads.map(t=>t.id===e.id?{...t,...e}:t)}:t)};return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-[1800px] flex-col gap-5",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:r("title")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:r("description")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)(p.Button,{disabled:!y?.tokenConfigured||L,onClick:()=>void X(),variant:"outline",children:[(0,t.jsx)(n.RefreshCw,{className:L?"animate-spin":void 0}),r("refresh")]}),(0,t.jsxs)(g.ToggleGroup,{"aria-label":r("layout"),onValueChange:e=>{("cards"===e||"table"===e)&&(K(e),window.localStorage.setItem(R,e))},size:"sm",spacing:0,type:"single",value:W,variant:"outline",children:[(0,t.jsx)(g.ToggleGroupItem,{"aria-label":r("cards"),value:"cards",children:(0,t.jsx)(l.Grid2X2,{})}),(0,t.jsx)(g.ToggleGroupItem,{"aria-label":r("table"),value:"table",children:(0,t.jsx)(a.List,{})})]})]})]}),$&&(0,t.jsx)(m.Alert,{variant:"destructive",children:(0,t.jsx)(m.AlertDescription,{children:$})}),D?(0,t.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(v.Spinner,{})," ",r("loadingConfiguration")]}):y?.tokenConfigured?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-end gap-5 rounded-lg border p-4",children:[(0,t.jsxs)("div",{className:"min-w-64 flex-1",children:[(0,t.jsx)(f.Label,{className:"mb-2 block",children:r("pullRequestFilter")}),(0,t.jsx)(b.SearchableSelect,{ariaLabel:r("pullRequestFilter"),emptyMessage:r("noPullRequestMatches"),onValueChange:e=>{let t=e===C?"":e;B(t),E(t||null)},options:Z,placeholder:r("allPullRequests"),searchPlaceholder:r("searchPullRequests"),value:Y||C})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-5 pb-2",children:[(0,t.jsx)(N,{checked:O,id:"comments-current-user",label:r("currentUser"),onCheckedChange:M}),(0,t.jsx)(N,{checked:G,id:"comments-other-users",label:r("otherUsers"),onCheckedChange:U}),(0,t.jsx)(N,{checked:z,id:"comments-unresolved",label:r("unresolved"),onCheckedChange:F})]})]}),I?.truncated&&(0,t.jsx)(m.Alert,{children:(0,t.jsx)(m.AlertDescription,{children:r("truncated")})}),L&&!I?(0,t.jsxs)("div",{className:"flex items-center gap-2 py-10 text-sm text-muted-foreground",children:[(0,t.jsx)(v.Spinner,{})," ",r("loading")]}):0===J.length?(0,t.jsx)(x.Empty,{className:"border py-12",children:(0,t.jsxs)(x.EmptyHeader,{children:[(0,t.jsx)(x.EmptyMedia,{variant:"icon",children:(0,t.jsx)(i.MessageSquareText,{})}),(0,t.jsx)(x.EmptyTitle,{children:r("empty")}),(0,t.jsx)(x.EmptyDescription,{children:r("emptyDescription")})]})}):"cards"===W?(0,t.jsx)("div",{className:"space-y-5",children:J.map(e=>(0,t.jsx)(u.ReviewThreadCard,{locale:h,onReplyAdded:Q,onStateChanged:ee,thread:e},e.id))}):(0,t.jsx)(T,{locale:h,threads:J})]}):(0,t.jsxs)(x.Empty,{className:"border py-12",children:[(0,t.jsxs)(x.EmptyHeader,{children:[(0,t.jsx)(x.EmptyMedia,{variant:"icon",children:(0,t.jsx)(i.MessageSquareText,{})}),(0,t.jsx)(x.EmptyTitle,{children:r("credentialsRequired")}),(0,t.jsx)(x.EmptyDescription,{children:r("credentialsDescription")})]}),(0,t.jsx)(p.Button,{asChild:!0,className:"mt-4",children:(0,t.jsx)(j.Link,{href:"/settings",children:r("openSettings")})})]})]})}])}]);