@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,97 +0,0 @@
1
- module.exports=[307048,532055,873142,a=>{"use strict";var b=a.i(187924),c=a.i(32886),d=a.i(415925),e=a.i(786304),f=a.i(206015),g=a.i(368114);function h({label:a,additions:c,deletions:d}){return(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 whitespace-nowrap text-muted-foreground",children:[(0,b.jsx)("span",{children:a}),(0,b.jsx)(i,{additions:c,deletions:d})]})}function i({additions:a,deletions:c}){return null===a&&null===c?(0,b.jsx)("span",{className:"text-muted-foreground",children:"—"}):(0,b.jsxs)("span",{className:"inline-flex gap-1 tabular-nums",children:[(0,b.jsxs)("span",{className:"text-emerald-700 dark:text-emerald-400",children:["+",a??0]}),(0,b.jsxs)("span",{className:"text-red-700 dark:text-red-400",children:["−",c??0]})]})}a.s(["WorktreeDetailPanel",0,function({detail:a,inline:j=!1}){let k=(0,d.useTranslations)("worktrees"),l=(0,c.useLocale)();return(0,b.jsxs)("div",{className:(0,g.cn)("w-full space-y-4",j&&"border-t pt-4"),"data-testid":"worktree-detail","data-worktree-navigation-ignore":j?"true":void 0,children:[(0,b.jsxs)("section",{className:"w-full",children:[(0,b.jsx)("h2",{className:"mb-2 font-medium",children:k("changes",{count:a.changes.length})}),(0,b.jsx)("div",{className:(0,g.cn)("overflow-auto rounded-md border",j&&"max-h-80"),children:a.changes.length?(0,b.jsx)(f.Table,{"aria-label":k("changes",{count:a.changes.length}),className:"min-w-[36rem] table-fixed text-xs",children:(0,b.jsx)(f.TableBody,{children:a.changes.map(a=>(0,b.jsxs)(f.TableRow,{children:[(0,b.jsx)(f.TableCell,{className:"max-w-0 px-2 py-1.5 font-mono",children:(0,b.jsx)("span",{className:"block truncate",title:a.path,children:a.path})}),(0,b.jsx)(f.TableCell,{className:"w-px px-2 py-1.5",children:(0,b.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[a.conflicted&&(0,b.jsx)(e.Badge,{className:"px-1.5",variant:"destructive",children:k("conflicted")}),a.staged&&(0,b.jsx)(h,{additions:a.stagedAdditions,deletions:a.stagedDeletions,label:k("staged")}),a.unstaged&&(0,b.jsx)(h,{additions:a.unstagedAdditions,deletions:a.unstagedDeletions,label:k("unstaged")}),a.untracked&&(0,b.jsx)(h,{additions:a.unstagedAdditions,deletions:a.unstagedDeletions,label:k("untracked")})]})})]},a.path))})}):(0,b.jsx)("p",{className:"p-3 text-sm text-muted-foreground",children:k("noChanges")})})]}),(0,b.jsxs)("section",{className:"w-full",children:[(0,b.jsx)("h2",{className:"mb-2 font-medium",children:k("commits",{count:a.commits.length})}),(0,b.jsx)("div",{className:(0,g.cn)("overflow-auto rounded-md border",j&&"max-h-80"),children:a.commits.length?(0,b.jsx)(f.Table,{"aria-label":k("commits",{count:a.commits.length}),className:"min-w-[36rem] table-fixed text-xs",children:(0,b.jsx)(f.TableBody,{children:a.commits.map(a=>(0,b.jsxs)(f.TableRow,{children:[(0,b.jsx)(f.TableCell,{className:"w-24 px-2 py-1.5 font-mono text-muted-foreground",children:a.sha.slice(0,8)}),(0,b.jsx)(f.TableCell,{className:"max-w-0 px-2 py-1.5",children:(0,b.jsxs)("div",{className:"flex min-w-0 items-baseline gap-2",children:[(0,b.jsx)("span",{className:"truncate font-medium",children:a.subject}),(0,b.jsxs)("span",{className:"shrink-0 text-muted-foreground",children:[a.authorName," ·"," ",new Date(a.authoredAt).toLocaleString(l)]})]})}),(0,b.jsx)(f.TableCell,{className:"w-24 px-2 py-1.5 text-right",children:(0,b.jsx)(i,{additions:a.additions,deletions:a.deletions})})]},a.sha))})}):(0,b.jsx)("p",{className:"p-3 text-sm text-muted-foreground",children:k("noCommits")})})]}),(a.commitsTruncated||a.changesTruncated)&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:k("truncated")})]})}],307048);let j=`
2
- id codebaseId gitDirectory folder relativePath primary branch headSha upstream ahead behind syncState
3
- baseBranch baseBranchOverride baseAhead baseBehind hasStagedChanges hasUnstagedChanges highlightColor availability statusError
4
- pushStatus
5
- ticketKey ticketTitle ticketStatus lastCheckedAt missingAt createdAt updatedAt
6
- tags { id name color createdAt updatedAt }
7
- activeJob { id agentId kind payload status idempotencyKey result error timeoutSeconds createdAt startedAt finishedAt updatedAt }
8
- pullRequest { id number title url repositoryGithubId repositoryNameWithOwner repositoryUrl labels jiraKey pipelineStatus pipelines { id name status url checkSuiteId canRetry retryUnavailableReason jobs { id name status url canRetry retryUnavailableReason steps { number name status } } } reviewDecision unresolvedReviewThreadCount createdAt }
9
- `,k=`
10
- id folder observedOrigin branch headSha upstream ahead behind syncState availability statusError
11
- defaultBranch localBranches remoteBranches lastCheckedAt lastFetchedAt lastFetchAttemptAt lastFetchError createdAt updatedAt
12
- `,l=`mutation InspectWorktree($id: ID!, $requestId: ID!) {
13
- inspectWorktree(id: $id, requestId: $requestId) {
14
- commits { sha subject authorName authoredAt additions deletions }
15
- changes { path staged unstaged untracked conflicted stagedAdditions stagedDeletions unstagedAdditions unstagedDeletions }
16
- commitsTruncated changesTruncated
17
- }
18
- }`;a.s(["CODEBASE_FIELDS",0,k,"INSPECT_WORKTREE_MUTATION",0,l,"WORKTREE_FIELDS",0,j],532055);var m=a.i(572131),n=a.i(873555),o=a.i(460280);async function p(a){return(await (0,o.controlPlaneRequest)(l,{id:a,requestId:(0,n.createClientId)()})).inspectWorktree}a.s(["inspectWorktree",0,p,"useLiveWorktree",0,function(a){let[b,c]=(0,m.useState)(null),d=(0,m.useCallback)(b=>{c(c=>({sourceUpdatedAt:a.updatedAt,value:c?.sourceUpdatedAt===a.updatedAt?{...c.value,...b}:b}))},[a.updatedAt]),e=(0,m.useCallback)(a=>{let b={};null!==a.hasStagedChanges&&(b.hasStagedChanges=a.hasStagedChanges),null!==a.hasUnstagedChanges&&(b.hasUnstagedChanges=a.hasUnstagedChanges),null!==a.pushStatus&&(b.pushStatus=a.pushStatus),"string"==typeof a.headSha&&Object.assign(b,{branch:a.branch,headSha:a.headSha,upstream:a.upstream,ahead:a.ahead,behind:a.behind,syncState:a.syncState??"UNKNOWN",baseAhead:a.baseAhead,baseBehind:a.baseBehind}),Object.keys(b).length&&d(b)},[d]);return{worktree:b?.sourceUpdatedAt===a.updatedAt?{...a,...b.value}:a,applyActivity:e,setUnstagedChanges:(0,m.useCallback)(a=>d({hasUnstagedChanges:a}),[d])}},"useQueuedWorktreeInspection",0,function(a){let b=(0,m.useRef)(!1),c=(0,m.useRef)(!1);return(0,m.useCallback)(async()=>{if(b.current){c.current=!0;return}b.current=!0;try{do c.current=!1,await a();while(c.current)}finally{b.current=!1}},[a])},"useWorktreeActivitySubscription",0,function(a,b,c){let d=(0,m.useRef)(c);(0,m.useEffect)(()=>{d.current=c},[c]),(0,m.useEffect)(()=>{if(!b)return;let c=!1,e=0,f=null,g=()=>void 0,h=a=>{c||a!==e||null!==f||(f=window.setTimeout(()=>{f=null,i()},1e3))},i=()=>{let b=++e;g=(0,o.controlPlaneSubscriptions)().subscribe({query:`subscription WorktreeInspectionChanged($worktreeId: ID!) {
19
- worktreeInspectionChanged(worktreeId: $worktreeId) {
20
- worktreeId branch headSha upstream ahead behind syncState baseAhead baseBehind
21
- hasStagedChanges hasUnstagedChanges pushStatus observedAt
22
- }
23
- }`,variables:{worktreeId:a}},{next:a=>{let b=a.data?.worktreeInspectionChanged;b&&d.current(b)},error:()=>h(b),complete:()=>h(b)})};return i(),()=>{c=!0,e+=1,null!==f&&window.clearTimeout(f),g()}},[b,a])}],873142)},347929,327598,51279,33019,303894,26052,a=>{"use strict";var b=a.i(164831);let c=(0,b.default)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);a.s(["ArrowDown",0,c],347929);let d=(0,b.default)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);a.s(["ArrowUp",0,d],327598);let e=(0,b.default)("move-right",[["path",{d:"M18 8L22 12L18 16",key:"1r0oui"}],["path",{d:"M2 12H22",key:"1m8cig"}]]);a.s(["MoveRight",0,e],51279);let f=(0,b.default)("paintbrush",[["path",{d:"m14.622 17.897-10.68-2.913",key:"vj2p1u"}],["path",{d:"M18.376 2.622a1 1 0 1 1 3.002 3.002L17.36 9.643a.5.5 0 0 0 0 .707l.944.944a2.41 2.41 0 0 1 0 3.408l-.944.944a.5.5 0 0 1-.707 0L8.354 7.348a.5.5 0 0 1 0-.707l.944-.944a2.41 2.41 0 0 1 3.408 0l.944.944a.5.5 0 0 0 .707 0z",key:"18tc5c"}],["path",{d:"M9 8c-1.804 2.71-3.97 3.46-6.583 3.948a.507.507 0 0 0-.302.819l7.32 8.883a1 1 0 0 0 1.185.204C12.735 20.405 16 16.792 16 15",key:"ytzfxy"}]]);a.s(["Paintbrush",0,f],33019);let g=(0,b.default)("tags",[["path",{d:"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z",key:"16rjxf"}],["path",{d:"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193",key:"178nd4"}],["circle",{cx:"10.5",cy:"6.5",r:".5",fill:"currentColor",key:"12ikhr"}]]);a.s(["Tags",0,g],303894);var h=a.i(187924),i=a.i(933434),j=a.i(519783),k=a.i(415925),l=a.i(572131),m=a.i(124348),n=a.i(786304),o=a.i(699570),p=a.i(591119),q=a.i(315055),r=a.i(814574),s=a.i(866718),t=a.i(870430),u=a.i(580701),v=a.i(668684),w=a.i(429246),x=a.i(555027),y=a.i(873555),z=a.i(460280),A=a.i(77018);let B=`
24
- id type
25
- configurations {
26
- id name iconKey scheme buildConfiguration defaultAction advancedSettings createdAt updatedAt
27
- source { id kind relativePath }
28
- observation { id scopeKey status schemes configurations testPlans error stale headSha xcodeVersion lastParseAttemptAt lastParsedAt }
29
- }
30
- allowedScripts {
31
- position
32
- script { id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior }
33
- }
34
- `,C=`
35
- id scopeKey status schemes configurations testPlans error stale headSha xcodeVersion lastParseAttemptAt lastParsedAt
36
- `,D=["BUILD","TEST","ANALYZE","ARCHIVE","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"];function E({codebaseId:a,worktreeId:b,open:c,onOpenChange:d,onStarted:e}){let f=(0,k.useTranslations)("builds"),[g,i]=(0,l.useState)(null),[x,F]=(0,l.useState)([]),[G,H]=(0,l.useState)(""),[I,J]=(0,l.useState)("BUILD"),[K,L]=(0,l.useState)({}),[M,N]=(0,l.useState)([]),[O,P]=(0,l.useState)("SIMULATOR"),[Q,R]=(0,l.useState)(""),[S,T]=(0,l.useState)(new Set),[U,V]=(0,l.useState)({}),[W,X]=(0,l.useState)("{}"),[Y,Z]=(0,l.useState)(!0),[$,_]=(0,l.useState)(!1),[aa,ab]=(0,l.useState)(!1),[ac,ad]=(0,l.useState)(null),ae=g?.configurations.find(a=>a.id===G),af=ae?K[ae.id]??ae.observation:null;(0,l.useEffect)(()=>{let c=!1;return(0,z.controlPlaneRequest)(`query StartBuildProject($codebaseId: ID!, $worktreeId: ID!) {
37
- iosAppProject(codebaseId: $codebaseId) { ${B} }
38
- builds(first: 50, status: SUCCEEDED, worktreeId: $worktreeId) {
39
- items { id action destinationType snapshot createdAt }
40
- }
41
- }`,{codebaseId:a,worktreeId:b}).then(a=>{if(c)return;i(a.iosAppProject),F(a.builds.items);let b=a.iosAppProject?.configurations[0];b&&(H(b.id),J(b.defaultAction),V(b.advancedSettings??{}),T(new Set(a.iosAppProject.allowedScripts.filter(a=>a.script.enabledByDefault).map(a=>a.script.id))))}).catch(a=>ad(a instanceof Error?a.message:String(a))).finally(()=>{c||Z(!1)}),()=>{c=!0}},[a,b]);let ag=(0,l.useMemo)(()=>x.filter(a=>{if("BUILD_FOR_TESTING"!==a.action||a.destinationType!==O)return!1;let b=a.snapshot.configuration,c="string"==typeof U.testPlan?U.testPlan:null,d=b?.advancedSettings?.testPlan;return b?.id===G&&(!c||!d||c===d)}),[U.testPlan,G,O,x]),ah=ag.find(a=>a.id===U.priorBuildForTestingId)?.id??ag[0]?.id??null,ai=async(a,c)=>{_(!0),ad(null),N([]),R("");try{let d=await (0,z.controlPlaneRequest)(`mutation InspectStartBuildDestinations($input: InspectBuildDestinationsInput!) {
42
- inspectBuildDestinations(input: $input)
43
- }`,{input:{worktreeId:b,configurationId:a.id,action:c,requestId:(0,y.createClientId)()}});N(d.inspectBuildDestinations);let e="ARCHIVE"===c?"PHYSICAL_DEVICE":d.inspectBuildDestinations.some(a=>"SIMULATOR"===a.type)?"SIMULATOR":"PHYSICAL_DEVICE";P(e),R(d.inspectBuildDestinations.find(a=>a.type===e)?.id??"")}catch(a){ad(a instanceof Error?a.message:String(a))}finally{_(!1)}},aj=async a=>{_(!0),ad(null);try{let c=(await (0,z.controlPlaneRequest)(`mutation ReparseStartBuild($configurationId: ID!, $worktreeId: ID!, $requestId: ID!) {
44
- reparseBuildConfiguration(configurationId: $configurationId, worktreeId: $worktreeId, requestId: $requestId) {
45
- ${C}
46
- }
47
- }`,{configurationId:a.id,worktreeId:b,requestId:(0,y.createClientId)()})).reparseBuildConfiguration;if(L(b=>({...b,[a.id]:c})),"VALID"!==c.status)throw Error(c.error||f("configurationInvalid"));await ai(a,I)}catch(a){ad(a instanceof Error?a.message:String(a))}finally{_(!1)}};(0,l.useEffect)(()=>{if(!ae||Y)return;let a=window.setTimeout(()=>void ai(ae,I),0);return()=>window.clearTimeout(a)},[G,I,Y]);let ak=(0,l.useMemo)(()=>M.filter(a=>a.type===O),[M,O]),al=M.find(a=>a.id===Q),am=ae?`xcrun xcodebuild ${"PROJECT"===ae.source.kind?`-project ${ae.source.relativePath}`:"WORKSPACE"===ae.source.kind?`-workspace ${ae.source.relativePath}`:""} -scheme ${JSON.stringify(ae.scheme)} -configuration ${JSON.stringify(ae.buildConfiguration)} -destination ${JSON.stringify(al?.name??"<destination>")} -hideShellScriptEnvironment ${I.toLowerCase().replaceAll("_","-")}${"TEST_WITHOUT_BUILDING"===I&&ah?` \xb7 ${f("priorBuildSummary",{id:ah})}`:""}`:"",an=async()=>{if(ae&&al){ab(!0),ad(null);try{let a={};try{let b=JSON.parse(W);if(!b||"object"!=typeof b||Array.isArray(b))throw Error();a=b}catch{throw Error(f("overridesInvalid"))}let c=await (0,z.controlPlaneRequest)(`mutation StartIosBuild($input: StartBuildInput!) {
48
- startBuild(input: $input) { id }
49
- }`,{input:{worktreeId:b,configurationId:ae.id,destination:al,scriptIds:[...S],action:I,advancedSettings:{...U,buildSettingOverrides:a,..."TEST_WITHOUT_BUILDING"===I?{priorBuildForTestingId:ah,priorTestProductsPath:null,priorXctestrunPath:null}:{}},requestId:(0,y.createClientId)()}});d(!1),e(c.startBuild.id)}catch(a){ad(a instanceof Error?a.message:String(a))}finally{ab(!1)}}};return(0,h.jsx)(r.Dialog,{onOpenChange:d,open:c,children:(0,h.jsxs)(r.DialogContent,{className:"sm:max-w-3xl",children:[(0,h.jsxs)(r.DialogHeader,{children:[(0,h.jsx)(r.DialogTitle,{children:f("startBuild")}),(0,h.jsx)(r.DialogDescription,{children:f("startBuildDescription")})]}),ac&&(0,h.jsx)(m.Alert,{variant:"destructive",children:(0,h.jsx)(m.AlertDescription,{children:ac})}),Y?(0,h.jsxs)("p",{className:"flex items-center gap-2 text-muted-foreground",children:[(0,h.jsx)(v.Spinner,{})," ",f("loading")]}):g?.configurations.length?(0,h.jsxs)("div",{className:"space-y-5",children:[(0,h.jsxs)("section",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("configuration")}),(0,h.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:g.configurations.map(a=>(0,h.jsxs)("button",{className:`rounded-xl border p-3 text-left transition-colors ${a.id===G?"border-primary bg-primary/5":"hover:bg-muted/50"}`,onClick:()=>{H(a.id),J(a.defaultAction),V(a.advancedSettings??{})},type:"button",children:[(0,h.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,h.jsxs)("span",{className:"flex items-center gap-2 font-medium",children:[(0,h.jsx)(A.ConfigurationIcon,{iconKey:a.iconKey}),a.name]}),(0,h.jsx)(n.Badge,{variant:"outline",children:(K[a.id]??a.observation)?.status??"UNPARSED"})]}),(0,h.jsxs)("p",{className:"mt-1 text-xs text-muted-foreground",children:[a.scheme," · ",a.buildConfiguration]})]},a.id))})]}),ae&&(0,h.jsx)(p.Card,{children:(0,h.jsxs)(p.CardContent,{className:"space-y-2 text-sm",children:[(0,h.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,h.jsxs)("div",{children:[(0,h.jsx)("p",{className:"font-mono text-xs",children:ae.source.relativePath}),(0,h.jsxs)("p",{className:"text-xs text-muted-foreground",children:[ae.scheme," ·"," ",ae.buildConfiguration]})]}),(0,h.jsxs)(o.Button,{disabled:$,onClick:()=>void aj(ae),size:"sm",type:"button",variant:"outline",children:[$?(0,h.jsx)(v.Spinner,{}):(0,h.jsx)(j.RefreshCw,{})," ",f("reparse")]})]}),af?.error&&(0,h.jsx)("p",{className:"text-xs text-destructive",children:af.error})]})}),(0,h.jsxs)("div",{className:"grid gap-4 sm:grid-cols-3",children:[(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("action")}),(0,h.jsxs)(u.Select,{onValueChange:a=>J(a),value:I,children:[(0,h.jsx)(u.SelectTrigger,{children:(0,h.jsx)(u.SelectValue,{})}),(0,h.jsx)(u.SelectContent,{children:D.map(a=>(0,h.jsx)(u.SelectItem,{value:a,children:f(`actions.${a}`)},a))})]})]}),(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("destinationType")}),(0,h.jsxs)(u.Select,{disabled:"ARCHIVE"===I,onValueChange:a=>{P(a),R(M.find(b=>b.type===a)?.id??"")},value:O,children:[(0,h.jsx)(u.SelectTrigger,{children:(0,h.jsx)(u.SelectValue,{})}),(0,h.jsxs)(u.SelectContent,{children:[(0,h.jsx)(u.SelectItem,{value:"SIMULATOR",children:f("simulator")}),(0,h.jsx)(u.SelectItem,{value:"PHYSICAL_DEVICE",children:f("physicalDevice")})]})]})]}),(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("device")}),(0,h.jsxs)(u.Select,{disabled:$||!ak.length,onValueChange:R,value:Q,children:[(0,h.jsx)(u.SelectTrigger,{children:(0,h.jsx)(u.SelectValue,{placeholder:f("selectDevice")})}),(0,h.jsx)(u.SelectContent,{children:ak.map(a=>(0,h.jsxs)(u.SelectItem,{value:a.id,children:[a.generic?"SIMULATOR"===a.type?f("anySimulator"):f("anyPhysicalDevice"):a.name,a.osVersion?` \xb7 ${a.osVersion}`:""]},a.id))})]})]})]}),"TEST_WITHOUT_BUILDING"===I&&(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("priorBuildForTesting")}),(0,h.jsxs)(u.Select,{disabled:!ag.length,onValueChange:a=>V(b=>({...b,priorBuildForTestingId:a,priorTestProductsPath:null,priorXctestrunPath:null})),value:ah??"",children:[(0,h.jsx)(u.SelectTrigger,{children:(0,h.jsx)(u.SelectValue,{placeholder:f("selectPriorBuildForTesting")})}),(0,h.jsx)(u.SelectContent,{children:ag.map(a=>(0,h.jsxs)(u.SelectItem,{value:a.id,children:[new Date(a.createdAt).toLocaleString()," ·"," ",a.id]},a.id))})]}),!ag.length&&(0,h.jsx)("p",{className:"text-xs text-destructive",children:f("noPriorBuildForTesting")})]}),["TEST","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"].includes(I)&&(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("testPlan")}),(0,h.jsxs)(u.Select,{onValueChange:a=>V(b=>({...b,testPlan:"__SCHEME_DEFAULT__"===a?null:a})),value:String(U.testPlan??"__SCHEME_DEFAULT__"),children:[(0,h.jsx)(u.SelectTrigger,{children:(0,h.jsx)(u.SelectValue,{})}),(0,h.jsxs)(u.SelectContent,{children:[(0,h.jsx)(u.SelectItem,{value:"__SCHEME_DEFAULT__",children:f("schemeDefaultTestPlan")}),"string"==typeof U.testPlan&&U.testPlan&&!af?.testPlans.includes(U.testPlan)&&(0,h.jsxs)(u.SelectItem,{value:U.testPlan,children:[U.testPlan," · ",f("savedValueUnavailable")]}),af?.testPlans.map(a=>(0,h.jsx)(u.SelectItem,{value:a,children:a},a))]})]})]}),g.allowedScripts.length>0&&(0,h.jsxs)("section",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("scripts")}),(0,h.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:g.allowedScripts.map(({script:a})=>(0,h.jsxs)("label",{className:"flex items-start gap-2 rounded-lg border p-2",children:[(0,h.jsx)(q.Checkbox,{checked:S.has(a.id),onCheckedChange:b=>{T(c=>{let d=new Set(c);return b?d.add(a.id):d.delete(a.id),d})}}),(0,h.jsxs)("span",{children:[(0,h.jsx)("span",{className:"block text-sm font-medium",children:a.name}),(0,h.jsxs)("span",{className:"text-xs text-muted-foreground",children:[a.preBuildScript?f("preBuild"):"",a.preBuildScript&&a.postBuildScript?" · ":"",a.postBuildScript?f("postBuild"):""]})]})]},a.id))})]}),(0,h.jsxs)("details",{className:"rounded-xl border p-3",children:[(0,h.jsx)("summary",{className:"cursor-pointer font-medium",children:f("advancedSettings")}),(0,h.jsxs)("div",{className:"mt-4 grid gap-4 sm:grid-cols-2",children:[(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{htmlFor:"development-team",children:f("developmentTeam")}),(0,h.jsx)(s.Input,{id:"development-team",onChange:a=>V(b=>({...b,developmentTeam:a.target.value||null})),value:String(U.developmentTeam??"")})]}),(0,h.jsxs)("div",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("packageResolution")}),(0,h.jsxs)(u.Select,{onValueChange:a=>V(b=>({...b,packageResolution:a})),value:String(U.packageResolution??"DEFAULT"),children:[(0,h.jsx)(u.SelectTrigger,{children:(0,h.jsx)(u.SelectValue,{})}),(0,h.jsx)(u.SelectContent,{children:["DEFAULT","RESOLVED_ONLY","SKIP_UPDATES","DISABLE_AUTOMATIC"].map(a=>(0,h.jsx)(u.SelectItem,{value:a,children:a},a))})]})]}),(0,h.jsxs)("label",{className:"flex items-center gap-2",children:[(0,h.jsx)(q.Checkbox,{checked:!!U.codeCoverage,onCheckedChange:a=>V(b=>({...b,codeCoverage:!!a}))}),f("codeCoverage")]}),(0,h.jsxs)("label",{className:"flex items-center gap-2",children:[(0,h.jsx)(q.Checkbox,{checked:!!U.allowProvisioningUpdates,onCheckedChange:a=>V(b=>({...b,allowProvisioningUpdates:!!a}))}),f("allowProvisioningUpdates")]}),(0,h.jsxs)("div",{className:"space-y-2 sm:col-span-2",children:[(0,h.jsx)(t.Label,{htmlFor:"build-setting-overrides",children:f("buildSettingOverrides")}),(0,h.jsx)(w.Textarea,{className:"font-mono text-xs",id:"build-setting-overrides",onChange:a=>X(a.target.value),rows:4,value:W})]})]})]}),(0,h.jsxs)("section",{className:"space-y-2",children:[(0,h.jsx)(t.Label,{children:f("commandPreview")}),(0,h.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-muted p-3 text-xs whitespace-pre-wrap",children:am})]})]}):(0,h.jsx)(m.Alert,{children:(0,h.jsx)(m.AlertDescription,{children:f("noConfigurations")})}),(0,h.jsxs)(r.DialogFooter,{children:[(0,h.jsx)(o.Button,{onClick:()=>d(!1),type:"button",variant:"outline",children:f("cancel")}),(0,h.jsxs)(o.Button,{disabled:Y||$||aa||!ae||!al||"TEST_WITHOUT_BUILDING"===I&&!ah,onClick:()=>void an(),type:"button",children:[aa&&(0,h.jsx)(v.Spinner,{})," ",f("startBuild")]})]})]})})}a.s(["StartBuildButton",0,function({codebaseId:a,worktreeId:b,disabled:c,disabledReason:d,size:e="sm"}){let f=(0,k.useTranslations)("builds"),g=(0,x.useRouter)(),[j,m]=(0,l.useState)(!1);return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsxs)(o.Button,{disabled:c,onClick:()=>m(!0),size:e,title:d??void 0,type:"button",children:[(0,h.jsx)(i.Hammer,{})," ",f("build")]}),j&&(0,h.jsx)(E,{codebaseId:a,onOpenChange:m,onStarted:a=>g.push(`/builds/${a}`),open:j,worktreeId:b})]})}],26052)},435526,a=>{"use strict";var b=a.i(187924),c=a.i(572131),d=a.i(979762),e=a.i(347929),f=a.i(818783),g=a.i(327598),h=a.i(752562),i=a.i(589027),j=a.i(141146),k=a.i(617770),l=a.i(168370),m=a.i(239315),n=a.i(993492),o=a.i(369251),p=a.i(528684),q=a.i(272944),r=a.i(51279),s=a.i(33019),t=a.i(590629),u=a.i(403512),v=a.i(519783),w=a.i(533838),x=a.i(879675),y=a.i(233540),z=a.i(303894),A=a.i(980180),B=a.i(201661),C=a.i(32886),D=a.i(415925),E=a.i(437823),F=a.i(26052),G=a.i(205956),H=a.i(313481),I=a.i(275401),J=a.i(785668),K=a.i(124348),L=a.i(786304),M=a.i(699570),N=a.i(591119),O=a.i(315055),P=a.i(814574),Q=a.i(335732),R=a.i(46524),S=a.i(866718),T=a.i(779711),U=a.i(870430),V=a.i(599209),W=a.i(150253),X=a.i(668684),Y=a.i(580701),Z=a.i(206015),$=a.i(210787),_=a.i(873555),aa=a.i(460280),ab=a.i(368114),ac=a.i(555027),ad=a.i(830976),ae=a.i(307048),af=a.i(532055),ag=a.i(873142),ah=a.i(971734),ai=a.i(914036);let aj=["gray","stone","red","rose","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink"],ak="__all__";function al(a,b){return a.some(a=>("string"==typeof a||"number"==typeof a)&&String(a).toLocaleLowerCase().includes(b))}function am(a,b){let c=b.query.trim().toLocaleLowerCase();return c||b.agentId||b.repositoryId?a.flatMap(a=>{if(b.agentId&&a.agent.id!==b.agentId)return[];let d=c.length>0&&al([a.agent.id,a.agent.name,a.agent.hostname],c),e=a.codebases.flatMap(a=>{if(b.repositoryId&&a.repository.id!==b.repositoryId)return[];let e=c.length>0&&al([a.repository.id,a.repository.name,a.repository.description,a.repository.canonicalOrigin,a.repository.displayOrigin,a.codebase.id,a.codebase.folder,a.codebase.observedOrigin,a.codebase.branch,a.codebase.defaultBranch],c),f=!c||d||e?a.worktrees:a.worktrees.filter(a=>al([a.id,a.branch,a.folder,a.relativePath,a.ticketKey,a.ticketTitle,a.ticketStatus,a.pullRequest?.number,a.pullRequest?.title,a.pullRequest?.repositoryNameWithOwner,a.pullRequest?.jiraKey,...a.tags.map(a=>a.name)],c));return f.length?[{...a,worktrees:f}]:[]});return e.length?[{...a,codebases:e}]:[]}):a}function an(a,b){if(!b)return a;let c=/^[A-Za-z]:[\\/]/.test(b)||b.startsWith("\\\\"),d=c?"\\":"/",e=a=>c?a.replaceAll("/","\\"):a,f=a=>(c?/^[A-Za-z]:\\$/.test(a):"/"===a)?a:a.replace(/[\\/]+$/,""),g=f(e(b)),h=f(e(a)),i=c?g.toLocaleLowerCase():g,j=c?h.toLocaleLowerCase():h;if(j===i)return".";let k=g.endsWith(d)?g:`${g}${d}`,l=c?k.toLocaleLowerCase():k;return j.startsWith(l)?h.slice(k.length):a}function ao(a){return{hasChanges:a.hasStagedChanges||a.hasUnstagedChanges,stageOperation:a.hasStagedChanges&&!a.hasUnstagedChanges?"UNSTAGE_ALL":"STAGE_ALL"}}let ap={gray:"border-slate-500/30 bg-slate-500/10 hover:border-slate-500/50 hover:bg-slate-500/20",stone:"border-stone-500/30 bg-stone-500/10 hover:border-stone-500/50 hover:bg-stone-500/20",red:"border-red-500/30 bg-red-500/10 hover:border-red-500/50 hover:bg-red-500/20",rose:"border-rose-500/30 bg-rose-500/10 hover:border-rose-500/50 hover:bg-rose-500/20",orange:"border-orange-500/30 bg-orange-500/10 hover:border-orange-500/50 hover:bg-orange-500/20",amber:"border-amber-500/30 bg-amber-500/10 hover:border-amber-500/50 hover:bg-amber-500/20",yellow:"border-yellow-500/30 bg-yellow-500/10 hover:border-yellow-500/50 hover:bg-yellow-500/20",lime:"border-lime-500/30 bg-lime-500/10 hover:border-lime-500/50 hover:bg-lime-500/20",green:"border-green-500/30 bg-green-500/10 hover:border-green-500/50 hover:bg-green-500/20",emerald:"border-emerald-500/30 bg-emerald-500/10 hover:border-emerald-500/50 hover:bg-emerald-500/20",teal:"border-teal-500/30 bg-teal-500/10 hover:border-teal-500/50 hover:bg-teal-500/20",cyan:"border-cyan-500/30 bg-cyan-500/10 hover:border-cyan-500/50 hover:bg-cyan-500/20",sky:"border-sky-500/30 bg-sky-500/10 hover:border-sky-500/50 hover:bg-sky-500/20",blue:"border-blue-500/30 bg-blue-500/10 hover:border-blue-500/50 hover:bg-blue-500/20",indigo:"border-indigo-500/30 bg-indigo-500/10 hover:border-indigo-500/50 hover:bg-indigo-500/20",violet:"border-violet-500/30 bg-violet-500/10 hover:border-violet-500/50 hover:bg-violet-500/20",purple:"border-purple-500/30 bg-purple-500/10 hover:border-purple-500/50 hover:bg-purple-500/20",fuchsia:"border-fuchsia-500/30 bg-fuchsia-500/10 hover:border-fuchsia-500/50 hover:bg-fuchsia-500/20",pink:"border-pink-500/30 bg-pink-500/10 hover:border-pink-500/50 hover:bg-pink-500/20"},aq={gray:"border-slate-500/40 bg-slate-500/15 text-slate-700 dark:text-slate-300",stone:"border-stone-500/40 bg-stone-500/15 text-stone-700 dark:text-stone-300",red:"border-red-500/40 bg-red-500/15 text-red-700 dark:text-red-300",rose:"border-rose-500/40 bg-rose-500/15 text-rose-700 dark:text-rose-300",orange:"border-orange-500/40 bg-orange-500/15 text-orange-700 dark:text-orange-300",amber:"border-amber-500/40 bg-amber-500/15 text-amber-800 dark:text-amber-300",yellow:"border-yellow-500/40 bg-yellow-500/15 text-yellow-800 dark:text-yellow-300",lime:"border-lime-500/40 bg-lime-500/15 text-lime-800 dark:text-lime-300",green:"border-green-500/40 bg-green-500/15 text-green-700 dark:text-green-300",emerald:"border-emerald-500/40 bg-emerald-500/15 text-emerald-700 dark:text-emerald-300",teal:"border-teal-500/40 bg-teal-500/15 text-teal-700 dark:text-teal-300",cyan:"border-cyan-500/40 bg-cyan-500/15 text-cyan-700 dark:text-cyan-300",sky:"border-sky-500/40 bg-sky-500/15 text-sky-700 dark:text-sky-300",blue:"border-blue-500/40 bg-blue-500/15 text-blue-700 dark:text-blue-300",indigo:"border-indigo-500/40 bg-indigo-500/15 text-indigo-700 dark:text-indigo-300",violet:"border-violet-500/40 bg-violet-500/15 text-violet-700 dark:text-violet-300",purple:"border-purple-500/40 bg-purple-500/15 text-purple-700 dark:text-purple-300",fuchsia:"border-fuchsia-500/40 bg-fuchsia-500/15 text-fuchsia-700 dark:text-fuchsia-300",pink:"border-pink-500/40 bg-pink-500/15 text-pink-700 dark:text-pink-300"},ar={gray:"border-slate-600 bg-slate-500",stone:"border-stone-600 bg-stone-500",red:"border-red-600 bg-red-500",rose:"border-rose-600 bg-rose-500",orange:"border-orange-600 bg-orange-500",amber:"border-amber-600 bg-amber-500",yellow:"border-yellow-600 bg-yellow-500",lime:"border-lime-600 bg-lime-500",green:"border-green-600 bg-green-500",emerald:"border-emerald-600 bg-emerald-500",teal:"border-teal-600 bg-teal-500",cyan:"border-cyan-600 bg-cyan-500",sky:"border-sky-600 bg-sky-500",blue:"border-blue-600 bg-blue-500",indigo:"border-indigo-600 bg-indigo-500",violet:"border-violet-600 bg-violet-500",purple:"border-purple-600 bg-purple-500",fuchsia:"border-fuchsia-600 bg-fuchsia-500",pink:"border-pink-600 bg-pink-500"};function as({moves:a,onReload:d,onError:e,onNotice:f}){let g=(0,D.useTranslations)("worktrees"),[h,i]=(0,c.useState)(null),j=async a=>{i(a.id);try{await (0,aa.controlPlaneRequest)(`mutation RetryWorktreeMove($id: ID!) {
50
- retryWorktreeMoveWithStash(id: $id) { id status }
51
- }`,{id:a.id});let b=await (0,ah.waitForWorktreeMove)(a.id);if("FAILED"===b.status)throw Error(b.error||g("moveFailed"));f("SUCCEEDED_WITH_WARNING"===b.status?b.warning||g("moveCompletedWithWarning"):g("moveCompleted")),e(null),await d()}catch(a){e(a instanceof Error?a.message:String(a))}finally{i(null)}},k=async a=>{i(a.id);try{await (0,aa.controlPlaneRequest)(`mutation CancelWorktreeMove($id: ID!) {
52
- cancelWorktreeMove(id: $id) { id status }
53
- }`,{id:a.id}),f(g("moveCancelled")),e(null),await d()}catch(a){e(a instanceof Error?a.message:String(a))}finally{i(null)}};return(0,b.jsx)("div",{className:"space-y-2",children:a.map(a=>(0,b.jsx)(K.Alert,{children:(0,b.jsxs)(K.AlertDescription,{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("p",{className:"font-medium",children:g("moveProgress",{branch:a.branch})}),(0,b.jsx)("p",{className:"text-muted-foreground",children:"AWAITING_STASH"===a.status?a.error||g("moveNeedsStash"):g(`moveStatus.${a.status}`)})]}),"AWAITING_STASH"===a.status?(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsx)(M.Button,{disabled:h===a.id,onClick:()=>void k(a),size:"sm",variant:"outline",children:g("cancelMove")}),(0,b.jsxs)(M.Button,{disabled:h===a.id,onClick:()=>void j(a),size:"sm",children:[h===a.id&&(0,b.jsx)(X.Spinner,{}),g("stashAndContinue")]})]}):(0,b.jsx)(X.Spinner,{})]})},a.id))})}function at(a,b){return{codebaseId:a.codebase.id,...b?{worktreeId:b.id}:{},defaultBranch:a.codebase.defaultBranch,currentBranch:b?.branch,currentBaseBranch:b?.baseBranch,localBranches:a.codebase.localBranches,remoteBranches:a.codebase.remoteBranches,unavailableBranches:a.worktrees.flatMap(a=>a.branch&&a.id!==b?.id?[a.branch]:[])}}function au({overview:a,onCreated:d}){let e=(0,D.useTranslations)("worktrees"),f=a.agents.flatMap(a=>a.codebases.flatMap(b=>"ONLINE"===a.agent.connectionStatus&&a.agent.capabilities.includes("worktree.branch")&&"AVAILABLE"===b.codebase.availability&&!b.worktrees.some(a=>a.activeJob)?[{agentGroup:a,group:b}]:[])),[g,h]=(0,c.useState)(1===f.length?f[0].group.codebase.id:""),[i,j]=(0,c.useState)(!1),k=f.some(a=>a.group.codebase.id===g)?g:1===f.length?f[0].group.codebase.id:"",l=f.find(a=>a.group.codebase.id===k),m=f.map(({agentGroup:a,group:b})=>({value:b.codebase.id,label:`${b.repository.name} \xb7 ${a.agent.name}`,description:b.codebase.folder,keywords:`${b.repository.displayOrigin} ${a.agent.hostname}`})),n=async a=>{if(!l)throw Error(e("selectCodebase"));j(!0);try{let b=await (0,aa.controlPlaneRequest)(`mutation CreateWorktree($input: CreateWorktreeInput!) {
54
- createWorktree(input: $input) { id }
55
- }`,{input:{codebaseId:l.group.codebase.id,selection:a,requestId:(0,_.createClientId)()}});await (0,ah.waitForWorktreeJob)(b.createWorktree.id),await d()}finally{j(!1)}};return(0,b.jsxs)(N.Card,{children:[(0,b.jsx)(N.CardHeader,{className:"border-b",children:(0,b.jsxs)(N.CardTitle,{className:"flex items-center gap-2",children:[(0,b.jsx)(u.Plus,{})," ",e("createWorktree")]})}),(0,b.jsxs)(N.CardContent,{className:"space-y-4",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)(U.Label,{className:"mb-1.5 block",children:e("repositoryCheckout")}),(0,b.jsx)(W.SearchableSelect,{ariaLabel:e("repositoryCheckout"),disabled:i||0===m.length,emptyMessage:e("noEligibleCodebases"),onValueChange:h,options:m,placeholder:e("selectCodebase"),searchPlaceholder:e("searchCodebases"),value:k})]}),l?(0,b.jsx)(ad.WorktreeBranchForm,{busy:i,onSubmit:n,submitLabel:e("createWorktree"),target:at(l.group)},l.group.codebase.id):(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:m.length?e("selectCodebaseHelp"):e("noEligibleCodebases")})]})]})}function av({agentGroup:a,layout:c,allTags:d,editorVariant:e,inspectionRefreshToken:f,onReload:g,onUpdate:h,onError:i,onManageTags:j,onOpenTicket:k,overview:l}){let m=(0,D.useTranslations)("worktrees"),n="ONLINE"===a.agent.connectionStatus&&a.agent.capabilities.includes("worktree.watch"),o="ONLINE"===a.agent.connectionStatus&&a.agent.capabilities.includes("worktree.branch");return(0,b.jsxs)("section",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 border-b pb-2",children:[(0,b.jsx)("h2",{className:"text-lg font-semibold",children:a.agent.name}),(0,b.jsx)(L.Badge,{children:m("ONLINE"===a.agent.connectionStatus?"online":"offline")}),(0,b.jsx)("span",{className:"text-xs text-muted-foreground",children:a.agent.hostname})]}),a.codebases.map(m=>(0,b.jsxs)("section",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("h3",{className:"font-medium",children:m.repository.name}),(0,b.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:m.repository.displayOrigin})]}),(0,b.jsx)(aw,{codebase:m.codebase})]}),"cards"===c?(0,b.jsx)("div",{className:"space-y-3",children:m.worktrees.map(c=>(0,b.jsx)(ax,{allTags:d,baseRepoDirectory:a.agent.baseRepoDirectory,branchManagementEnabled:o,editorVariant:e,group:m,inspectionRefreshToken:f,liveUpdatesEnabled:n,onError:i,onManageTags:j,onOpenTicket:k,onReload:g,onUpdate:h,overview:l,worktree:c},c.id))}):(0,b.jsx)(aO,{allTags:d,baseRepoDirectory:a.agent.baseRepoDirectory,branchManagementEnabled:o,editorVariant:e,group:m,inspectionRefreshToken:f,liveUpdatesEnabled:n,onError:i,onManageTags:j,onOpenTicket:k,onReload:g,onUpdate:h,overview:l})]},m.codebase.id))]})}function aw({codebase:a}){let d=(0,D.useTranslations)("worktrees"),e=(0,C.useLocale)(),[f,g]=(0,c.useState)(null);(0,c.useEffect)(()=>{let a=()=>g(new Date().getTime()),b=window.setTimeout(a,0),c=window.setInterval(a,1e3);return()=>{window.clearTimeout(b),window.clearInterval(c)}},[]);let h=a.lastFetchedAt&&null!==f?Math.max(0,f-new Date(a.lastFetchedAt).getTime()):null,i=null===h?d("neverFetched"):h<6e4?d("secondsAgo",{count:Math.floor(h/1e3)}):new Intl.RelativeTimeFormat(e,{numeric:"auto"}).format(-Math.floor(h/6e4),"minute");return(0,b.jsx)("span",{className:(0,ab.cn)("text-xs text-muted-foreground",a.lastFetchError&&"text-destructive"),title:a.lastFetchError??void 0,children:d("lastFetched",{value:i})})}function ax(a){let{inspectionRefreshToken:d,onError:e}=a,{worktree:f,applyActivity:g,setUnstagedChanges:h}=(0,ag.useLiveWorktree)(a.worktree),k={...a,worktree:f},[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(null),[p,q]=(0,c.useState)(!1),r=(0,c.useRef)(0),s=(0,c.useRef)(d),t=(0,D.useTranslations)("worktrees"),u=(0,ac.useRouter)(),v=(0,c.useCallback)(async()=>{let a=++r.current;q(!0);try{let b=await (0,ag.inspectWorktree)(f.id);if(a!==r.current)return;o(b),h(b.changes.some(a=>a.unstaged||a.untracked||a.conflicted)),e(null)}catch(b){a===r.current&&e(b instanceof Error?b.message:String(b))}finally{a===r.current&&q(!1)}},[e,h,f.id]),w=(0,ag.useQueuedWorktreeInspection)(v),x=(0,c.useCallback)(a=>{g(a),l&&w()},[g,l,w]);(0,ag.useWorktreeActivitySubscription)(f.id,a.liveUpdatesEnabled&&"AVAILABLE"===f.availability,x),(0,c.useEffect)(()=>{if(s.current===d||(s.current=d,!l))return;let a=window.setTimeout(()=>void w(),0);return()=>window.clearTimeout(a)},[l,d,w]);let y=()=>{let a=!l;m(a),a&&!n&&w()};return(0,b.jsxs)(N.Card,{className:(0,ab.cn)("cursor-pointer transition-colors hover:bg-muted/30",f.highlightColor&&ap[f.highlightColor]),onClick:a=>{(0,ai.shouldNavigateWorktreeSurface)(a)&&u.push((0,ai.worktreeDetailHref)(f.id))},children:[(0,b.jsxs)(N.CardHeader,{className:"grid-cols-1! border-b @md/card-header:grid-cols-[minmax(0,1fr)_auto]!",children:[(0,b.jsxs)(N.CardTitle,{className:"min-w-0",children:[(0,b.jsxs)(M.Button,{"aria-expanded":l,className:"h-auto w-full max-w-full justify-start gap-1 p-1 text-left",onClick:()=>void y(),variant:"ghost",children:[l?(0,b.jsx)(i.ChevronDown,{}):(0,b.jsx)(j.ChevronRight,{}),(0,b.jsx)("span",{className:"truncate font-mono",children:f.branch??f.headSha?.slice(0,10)??t("detached")})]}),(f.ticketKey||f.ticketTitle)&&(0,b.jsx)(az,{...k})]}),(0,b.jsxs)(N.CardAction,{className:"col-start-1 row-span-1 row-start-auto flex max-w-full flex-wrap items-center justify-start gap-1 justify-self-start @md/card-header:col-start-2 @md/card-header:row-span-2 @md/card-header:row-start-1 @md/card-header:justify-end @md/card-header:justify-self-end",children:[(0,b.jsx)(aG,{worktree:f}),f.hasUnstagedChanges&&(0,b.jsx)(L.Badge,{variant:"destructive",children:t("dirty")}),(0,b.jsx)(ay,{worktree:f}),(0,b.jsx)(aJ,{...k})]})]}),(0,b.jsxs)(N.CardContent,{className:"space-y-4",children:[(0,b.jsx)(aA,{...k,detailsExpanded:l,onToggleDetails:y}),p&&(0,b.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,b.jsx)(X.Spinner,{})," ",t("loadingDetails")]}),l&&n&&(0,b.jsx)(ae.WorktreeDetailPanel,{detail:n,inline:!0})]}),(0,b.jsx)(N.CardFooter,{className:"flex-wrap gap-2","data-worktree-navigation-ignore":!0,children:(0,b.jsx)(aM,{...k,onCompleted:async()=>{await a.onReload(),l&&await w()}})})]})}function ay({worktree:a}){let c=(0,D.useTranslations)("worktrees"),d=a.branch??a.headSha?.slice(0,10)??c("detached"),e=c("openWorktreeDetails",{branch:d});return(0,b.jsx)(M.Button,{asChild:!0,size:"icon-sm",variant:"ghost",children:(0,b.jsx)(ac.Link,{"aria-label":e,href:(0,ai.worktreeDetailHref)(a.id),title:e,children:(0,b.jsx)(f.ArrowRight,{})})})}function az({worktree:a,onOpenTicket:c,compact:d=!1}){let e=`${a.ticketKey??""}${a.ticketTitle?`${a.ticketKey?" — ":""}${a.ticketTitle}`:""}`;return(0,b.jsxs)("div",{className:(0,ab.cn)("flex max-w-full flex-wrap items-center gap-1.5 font-normal",d?"mt-0.5 text-xs":"mt-1 text-sm"),children:[a.ticketKey?(0,b.jsx)(M.Button,{className:"h-auto min-w-0 justify-start truncate p-0 text-left font-normal",onClick:()=>c(a.ticketKey),title:e,type:"button",variant:"link",children:e}):(0,b.jsx)("p",{className:"min-w-0 truncate text-muted-foreground",title:e,children:e}),a.ticketStatus&&(a.ticketKey?(0,b.jsx)(L.Badge,{asChild:!0,variant:"secondary",children:(0,b.jsx)("button",{onClick:()=>c(a.ticketKey),type:"button",children:a.ticketStatus})}):(0,b.jsx)(L.Badge,{variant:"secondary",children:a.ticketStatus}))]})}function aA(a){let{worktree:c,group:d,baseRepoDirectory:e,detailsExpanded:f,onToggleDetails:g}=a,h=(0,D.useTranslations)("worktrees");return(0,b.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,b.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,b.jsx)(aR,{label:h("path"),mono:!0,value:an(c.folder,e)}),(0,b.jsx)(aH,{...a})]}),(0,b.jsx)(aB,{label:h("upToDate"),children:(0,b.jsx)(aD,{worktree:c})}),(0,b.jsx)(aC,{...a}),(0,b.jsx)(aB,{label:h("pullRequest"),children:(0,b.jsx)(aE,{detailsExpanded:f,onToggleDetails:g,worktree:c})}),(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[c.statusError&&(0,b.jsx)("span",{className:"text-xs text-destructive",children:c.statusError}),!d.codebase.defaultBranch&&!c.baseBranchOverride&&(0,b.jsx)("span",{className:"text-xs text-destructive",children:h("baseUnavailable")})]})]})}function aB({label:a,children:c}){return(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,b.jsx)("p",{className:"w-24 shrink-0 text-xs text-muted-foreground",children:a}),(0,b.jsx)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:c})]})}function aC({compact:a=!1,...c}){let{worktree:d}=c,e=(0,D.useTranslations)("worktrees");return(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[!a&&(0,b.jsx)("span",{className:"w-24 shrink-0 text-xs text-muted-foreground",children:e("tags")}),(0,b.jsx)(aJ,{...c,contentAlign:a?"end":"start",contentAlignOffset:a?0:-100,trigger:(0,b.jsx)(M.Button,{"aria-label":`${e("tags")}: ${d.branch??e("detached")}`,className:(0,ab.cn)("h-auto min-h-7 max-w-full justify-start px-1 py-1 text-left font-normal",!a&&"-mx-1"),type:"button",variant:"ghost",children:(0,b.jsxs)("span",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[d.tags.map(a=>(0,b.jsx)(aQ,{tag:a},a.id)),!d.tags.length&&(0,b.jsx)("span",{className:"text-muted-foreground",children:"—"})]})})})]})}function aD({worktree:a}){let c=(0,D.useTranslations)("worktrees"),d=0===a.baseBehind;return(0,b.jsx)(L.Badge,{className:d?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":null===a.baseBehind?void 0:"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",variant:"outline",children:null===a.baseBehind?c("unknown"):d?c("yes"):c("notUpToDate",{count:a.baseBehind})})}function aE({worktree:a,detailsExpanded:c,onToggleDetails:d}){var e;let f=(0,D.useTranslations)("worktrees");return(0,b.jsxs)(b.Fragment,{children:[a.pullRequest?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aF,{pullRequest:a.pullRequest}),(0,b.jsx)(H.PipelineMenu,{pipelineStatus:a.pullRequest.pipelineStatus,pipelines:a.pullRequest.pipelines,repositoryId:a.pullRequest.repositoryGithubId}),(0,b.jsx)(L.Badge,{className:"APPROVED"===(e=a.pullRequest.reviewDecision)?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"CHANGES_REQUESTED"===e?"border-red-500/30 bg-red-500/10 text-red-700 dark:text-red-300":"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",children:f(`review.${a.pullRequest.reviewDecision}`)}),(0,b.jsx)(L.Badge,{asChild:!0,className:0===a.pullRequest.unresolvedReviewThreadCount?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",children:(0,b.jsx)(ac.Link,{href:(0,I.pullRequestCommentsHref)(a.pullRequest),children:f("comments",{count:a.pullRequest.unresolvedReviewThreadCount})})})]}):(0,b.jsx)("span",{className:"text-muted-foreground",children:"—"}),d?(0,b.jsx)(L.Badge,{asChild:!0,variant:"secondary",children:(0,b.jsx)("button",{"aria-expanded":c,onClick:d,type:"button",children:f("branchCommits",{count:a.baseAhead??0})})}):(0,b.jsx)(L.Badge,{variant:"secondary",children:f("branchCommits",{count:a.baseAhead??0})})]})}function aF({pullRequest:a}){let c=(0,D.useTranslations)("worktrees");return(0,b.jsxs)(Q.DropdownMenu,{children:[(0,b.jsx)(Q.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(L.Badge,{asChild:!0,children:(0,b.jsxs)("button",{type:"button",children:["PR #",a.number]})})}),(0,b.jsxs)(Q.DropdownMenuContent,{align:"start",className:"w-44",children:[(0,b.jsx)(Q.DropdownMenuItem,{asChild:!0,children:(0,b.jsxs)("a",{href:a.url,rel:"noreferrer",target:"_blank",children:[(0,b.jsx)(l.ExternalLink,{}),c("openInGitHub")]})}),(0,b.jsx)(Q.DropdownMenuItem,{asChild:!0,children:(0,b.jsxs)(ac.Link,{href:(0,I.pullRequestDetailHref)(a),children:[(0,b.jsx)(n.GitPullRequest,{}),c("openDetails")]})})]})]})}function aG({worktree:a}){var c,d;let f=(0,D.useTranslations)("worktrees");return"IN_SYNC"===a.syncState||0===a.ahead&&0===a.behind?(0,b.jsx)(L.Badge,{className:"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300",variant:"outline",children:f("inSync")}):null!==a.ahead||null!==a.behind?(0,b.jsxs)(b.Fragment,{children:[null!==a.ahead&&(0,b.jsxs)(L.Badge,{className:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",variant:"outline",children:[(0,b.jsx)(g.ArrowUp,{"data-icon":"inline-start"}),f("ahead",{count:a.ahead})]}),null!==a.behind&&(0,b.jsxs)(L.Badge,{className:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",variant:"outline",children:[(0,b.jsx)(e.ArrowDown,{"data-icon":"inline-start"}),f("behind",{count:a.behind})]})]}):(0,b.jsx)(L.Badge,{variant:"outline",children:(c=a,d=f,"AHEAD"===c.syncState?d("ahead",{count:c.ahead??0}):"BEHIND"===c.syncState?d("behind",{count:c.behind??0}):d("DIVERGED"===c.syncState?"diverged":"IN_SYNC"===c.syncState?"upToDate":"NO_UPSTREAM"===c.syncState?"unpublished":"DETACHED"===c.syncState?"detached":"unknown"))})}function aH(a){let{worktree:d,group:e,onUpdate:f,onError:g,compact:h=!1}=a,i=(0,D.useTranslations)("worktrees"),[j,k]=(0,c.useState)(!1),[l,m]=(0,c.useState)(!1),n="__inherit_remote_default__",o=Array.from(new Set([d.baseBranchOverride,e.codebase.defaultBranch,...e.codebase.remoteBranches].filter(a=>!!a))),p=async a=>{m(!0);try{let b=await (0,aa.controlPlaneRequest)(`mutation UpdateWorktreeBase($id: ID!, $baseBranch: String) {
56
- updateWorktreeBaseBranch(id: $id, baseBranch: $baseBranch) { ${af.WORKTREE_FIELDS} }
57
- }`,{id:d.id,baseBranch:a||null});f(b.updateWorktreeBaseBranch),g(null),k(!1)}catch(a){g(a instanceof Error?a.message:String(a))}finally{m(!1)}};return(0,b.jsxs)("div",{className:"min-w-0",children:[!h&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:i("baseBranch")}),(0,b.jsx)("div",{className:(0,ab.cn)("flex min-h-6 min-w-0 items-center gap-1",!h&&"mt-0.5"),children:j?(0,b.jsxs)(Y.Select,{disabled:l,onOpenChange:k,onValueChange:a=>void p(a===n?"":a),open:j,value:d.baseBranchOverride??(e.codebase.defaultBranch?n:void 0),children:[(0,b.jsx)(Y.SelectTrigger,{"aria-label":i("baseBranch"),className:"h-7 min-w-40 max-w-full font-mono text-xs",size:"sm",children:(0,b.jsx)(Y.SelectValue,{placeholder:i("baseUnavailable")})}),(0,b.jsxs)(Y.SelectContent,{align:"start",children:[e.codebase.defaultBranch&&(0,b.jsxs)(Y.SelectItem,{value:n,children:[e.codebase.defaultBranch," · ",i("inheritBase")]}),o.map(a=>(0,b.jsx)(Y.SelectItem,{value:a,children:a},a))]})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{className:"truncate font-mono text-xs",title:d.baseBranch??void 0,children:d.baseBranch??"—"}),(0,b.jsx)(M.Button,{"aria-label":i("editBase"),onClick:()=>k(!0),size:"icon-xs",variant:"ghost",children:(0,b.jsx)(t.Pencil,{})})]})})]})}function aI(a,b){let c=b.activeMoves.some(b=>b.sourceCodebaseId===a.group.codebase.id||b.targetCodebaseId===a.group.codebase.id);return"ONLINE"===a.agentGroup.agent.connectionStatus&&a.agentGroup.agent.capabilities.includes("worktree.move.checkout")&&"AVAILABLE"===a.group.codebase.availability&&!a.group.worktrees.some(a=>a.activeJob)&&!c}function aJ(a){let d,e,{worktree:f,allTags:g,onUpdate:h,onError:i,onManageTags:j,contentAlign:k="end",contentAlignOffset:l=0,trigger:n}=a,o=(0,D.useTranslations)("worktrees"),[p,t]=(0,c.useState)(!1),[v,w]=(0,c.useState)(!1),[x,y]=(0,c.useState)(!1),[B,C]=(0,c.useState)(!1),[E,F]=(0,c.useState)(null),[G,H]=(0,c.useState)(null),I=(0,c.useRef)(!1),J=(d=a.overview.agents.find(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)))?a.overview.agents.flatMap(b=>b.agent.id===d.agent.id?[]:b.codebases.flatMap(c=>c.repository.id===a.group.repository.id?[{agentGroup:b,group:c}]:[])):[],L=(e=a.overview.agents.find(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)))&&"ONLINE"===e.agent.connectionStatus&&e.agent.capabilities.includes("worktree.move.push")?"AVAILABLE"!==a.worktree.availability||a.worktree.activeJob||a.overview.activeMoves.some(b=>b.sourceCodebaseId===a.group.codebase.id||b.targetCodebaseId===a.group.codebase.id)?o("moveBlocked.busy"):a.worktree.branch&&a.worktree.headSha?a.worktree.hasStagedChanges||a.worktree.hasUnstagedChanges||"DIRTY"===a.worktree.pushStatus?o("moveBlocked.dirty"):"BEHIND"===a.worktree.pushStatus?o("moveBlocked.behind"):"DIVERGED"===a.worktree.pushStatus?o("moveBlocked.diverged"):"READY"!==a.worktree.pushStatus?o("moveBlocked.unknown"):J.some(b=>aI(b,a.overview))?null:o("moveBlocked.destination"):o("moveBlocked.detached"):o("moveBlocked.agent"),N=a.overview.agents.find(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)),O=!N||"ONLINE"!==N.agent.connectionStatus||!N.agent.capabilities.includes("worktree.delete")||"AVAILABLE"!==f.availability||!!f.activeJob||a.overview.activeMoves.some(b=>b.sourceCodebaseId===a.group.codebase.id||b.targetCodebaseId===a.group.codebase.id),P=new Set(f.tags.map(a=>a.id)),R=async(a,b)=>{let c=b?[...P,a]:[...P].filter(b=>b!==a);try{let a=await (0,aa.controlPlaneRequest)(`mutation SetWorktreeTags($id: ID!, $tagIds: [ID!]!) { setWorktreeTags(id: $id, tagIds: $tagIds) { ${af.WORKTREE_FIELDS} } }`,{id:f.id,tagIds:c});h(a.setWorktreeTags),i(null)}catch(a){i(a instanceof Error?a.message:String(a))}},S=async a=>{try{let b=await (0,aa.controlPlaneRequest)(`mutation HighlightWorktree($id: ID!, $color: String) { updateWorktreeHighlight(id: $id, color: $color) { ${af.WORKTREE_FIELDS} } }`,{id:f.id,color:a});h(b.updateWorktreeHighlight),i(null)}catch(a){i(a instanceof Error?a.message:String(a))}},T=async(b,c=!1)=>{C(!0);try{let d=await (0,aa.controlPlaneRequest)(`mutation ChangeWorktreeBranch($input: ChangeWorktreeBranchInput!) {
58
- changeWorktreeBranch(input: $input) { id }
59
- }`,{input:{worktreeId:f.id,selection:b,requestId:(0,_.createClientId)(),stashOnFailure:c}});await (0,ah.waitForWorktreeJob)(d.changeWorktreeBranch.id),await a.onReload(),F(null),H(null),t(!1),i(null)}finally{C(!1)}},U=async()=>{if(E)try{H(null),await T(E,!0)}catch(a){H(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(V.Popover,{onOpenChange:a=>{t(a),a||(F(null),H(null))},open:p,children:[(0,b.jsxs)(Q.DropdownMenu,{children:[(0,b.jsx)(Q.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(V.PopoverAnchor,{asChild:!0,children:n??(0,b.jsx)(M.Button,{"aria-label":o("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(q.MoreHorizontal,{})})})}),(0,b.jsxs)(Q.DropdownMenuContent,{align:k,alignOffset:l,className:"w-72",onCloseAutoFocus:a=>{I.current&&(I.current=!1,a.preventDefault(),t(!0))},children:[J.length>0&&(0,b.jsxs)(Q.DropdownMenuItem,{disabled:!!L,onSelect:()=>w(!0),title:L??void 0,children:[(0,b.jsx)(r.MoveRight,{})," ",o("moveToAgent")]}),(0,b.jsxs)(Q.DropdownMenuItem,{disabled:!a.branchManagementEnabled||"AVAILABLE"!==f.availability||!!f.activeJob,onSelect:()=>{I.current=!0},children:[(0,b.jsx)(m.GitBranch,{})," ",o("changeBranch")]}),(0,b.jsx)(Q.DropdownMenuSeparator,{}),(0,b.jsxs)(Q.DropdownMenuLabel,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(z.Tags,{className:"size-3"}),(0,b.jsx)("span",{children:o("tags")})]}),g.map(a=>(0,b.jsxs)(Q.DropdownMenuCheckboxItem,{checked:P.has(a.id),onCheckedChange:b=>void R(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,ab.cn)("size-3 rounded-full border",ar[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(Q.DropdownMenuItem,{onSelect:j,children:[(0,b.jsx)(u.Plus,{})," ",o("manageTags")]}),(0,b.jsx)(Q.DropdownMenuSeparator,{}),(0,b.jsxs)(Q.DropdownMenuLabel,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(s.Paintbrush,{className:"size-3"}),(0,b.jsx)("span",{children:o("highlight")})]}),(0,b.jsxs)($.ToggleGroup,{"aria-label":o("highlight"),className:"grid grid-cols-7 gap-1 p-2",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&S("__none__"===a?null:a)},size:"sm",spacing:1,type:"single",value:f.highlightColor??"__none__",variant:"outline",children:[(0,b.jsx)($.ToggleGroupItem,{"aria-label":o("clearHighlight"),className:"size-7 min-w-0 p-0",value:"__none__",children:(0,b.jsx)(A.Trash2,{className:"size-3"})}),aj.map(a=>(0,b.jsx)($.ToggleGroupItem,{"aria-label":a,className:(0,ab.cn)("size-7 min-w-0 p-0",ar[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))]}),!f.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(Q.DropdownMenuSeparator,{}),(0,b.jsxs)(Q.DropdownMenuItem,{disabled:O,onSelect:()=>y(!0),variant:"destructive",children:[(0,b.jsx)(A.Trash2,{})," ",o("deleteWorktree")]})]})]})]}),(0,b.jsxs)(V.PopoverContent,{align:k,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:o("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:an(f.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(ad.WorktreeBranchForm,{busy:B,onSubmit:a=>T(a),onSubmitError:a=>{F(f.hasStagedChanges||f.hasUnstagedChanges?a:null)},recovery:E?(0,b.jsx)(K.Alert,{children:(0,b.jsxs)(K.AlertDescription,{className:"space-y-2",children:[(0,b.jsx)("p",{children:o("stashRetryHelp")}),G&&(0,b.jsx)("p",{className:"text-destructive",children:G}),(0,b.jsxs)(M.Button,{disabled:B,onClick:()=>void U(),size:"sm",type:"button",variant:"outline",children:[B&&(0,b.jsx)(X.Spinner,{}),o("stashAndRetry")]})]})}):null,submitLabel:o("changeBranch"),target:at(a.group,f)})]})]}),v&&(0,b.jsx)(aK,{onOpenChange:w,open:v,props:a,targets:J.filter(b=>aI(b,a.overview))}),!f.primary&&x&&(0,b.jsx)(aL,{onOpenChange:y,open:x,props:a})]})}function aK({props:a,targets:d,open:e,onOpenChange:f}){let g=(0,D.useTranslations)("worktrees"),h=1===d.length?d[0].group.codebase.id:"",[i,j]=(0,c.useState)(h),[k,l]=(0,c.useState)("__new__"),[m,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(null),u=d.some(a=>a.group.codebase.id===i)?i:1===d.length?d[0].group.codebase.id:"",v=d.find(a=>a.group.codebase.id===u),w=d.map(a=>({value:a.group.codebase.id,label:`${a.agentGroup.agent.name} \xb7 ${a.group.repository.name}`,description:a.group.codebase.folder,keywords:`${a.agentGroup.agent.hostname} ${a.group.repository.displayOrigin}`})),x=v?.group.worktrees.find(a=>a.id===k),y=v?.group.worktrees.find(b=>b.branch===a.worktree.branch),z=!a.worktree.primary&&a.overview.agents.some(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)&&b.agent.capabilities.includes("worktree.delete")),A=async b=>{if("AWAITING_STASH"===b.status){t(b),await a.onReload();return}if("FAILED"===b.status)throw Error(b.error||g("moveFailed"));if("CANCELLED"===b.status)throw Error(g("moveCancelled"));a.onError("SUCCEEDED_WITH_WARNING"===b.status?b.warning:null),await a.onReload(),a.onMoved?.(b),f(!1)},B=async()=>{if(v){p(!0),r(null);try{let b=await (0,aa.controlPlaneRequest)(`mutation MoveWorktree($input: MoveWorktreeInput!) {
60
- moveWorktree(input: $input) {
61
- id sourceWorktreeId sourceCodebaseId targetCodebaseId targetWorktreeId destinationMode
62
- branch headSha deleteSource status sourceJobId targetJobId cleanupJobId error warning
63
- createdAt updatedAt finishedAt
64
- }
65
- }`,{input:{sourceWorktreeId:a.worktree.id,targetCodebaseId:v.group.codebase.id,targetWorktreeId:"__new__"===k?null:k,deleteSource:m,requestId:(0,_.createClientId)()}});await A(await (0,ah.waitForWorktreeMove)(b.moveWorktree.id))}catch(a){r(a instanceof Error?a.message:String(a))}finally{p(!1)}}},C=async()=>{if(s){p(!0),r(null);try{await (0,aa.controlPlaneRequest)(`mutation RetryMove($id: ID!) {
66
- retryWorktreeMoveWithStash(id: $id) { id status }
67
- }`,{id:s.id}),await A(await (0,ah.waitForWorktreeMove)(s.id))}catch(a){r(a instanceof Error?a.message:String(a))}finally{p(!1)}}},E=async()=>{if(s){p(!0);try{await (0,aa.controlPlaneRequest)(`mutation CancelMove($id: ID!) {
68
- cancelWorktreeMove(id: $id) { id status }
69
- }`,{id:s.id}),await a.onReload(),f(!1)}catch(a){r(a instanceof Error?a.message:String(a))}finally{p(!1)}}};return(0,b.jsx)(P.Dialog,{onOpenChange:a=>!o&&f(a),open:e,children:(0,b.jsxs)(P.DialogContent,{className:"sm:max-w-xl",children:[(0,b.jsxs)(P.DialogHeader,{children:[(0,b.jsx)(P.DialogTitle,{children:g("moveToAgent")}),(0,b.jsx)(P.DialogDescription,{children:g("moveDescription",{branch:a.worktree.branch??""})})]}),s?(0,b.jsx)(K.Alert,{children:(0,b.jsxs)(K.AlertDescription,{className:"space-y-3",children:[(0,b.jsx)("p",{children:s.error||g("moveNeedsStash")}),(0,b.jsx)("p",{className:"text-muted-foreground",children:g("moveStashHelp")})]})}):(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)(U.Label,{className:"mb-1.5 block",children:g("destinationAgent")}),(0,b.jsx)(W.SearchableSelect,{ariaLabel:g("destinationAgent"),disabled:o,emptyMessage:g("noMoveDestinations"),onValueChange:a=>{j(a),l("__new__")},options:w,placeholder:g("selectDestinationAgent"),searchPlaceholder:g("searchDestinationAgents"),value:u})]}),v&&(0,b.jsxs)("div",{children:[(0,b.jsx)(U.Label,{className:"mb-1.5 block",children:g("destinationWorktree")}),(0,b.jsxs)(Y.Select,{disabled:o,onValueChange:l,value:k,children:[(0,b.jsx)(Y.SelectTrigger,{"aria-label":g("destinationWorktree"),children:(0,b.jsx)(Y.SelectValue,{})}),(0,b.jsxs)(Y.SelectContent,{children:[(0,b.jsx)(Y.SelectItem,{disabled:!!y,value:"__new__",children:g("createDestinationWorktree")}),v.group.worktrees.filter(a=>"AVAILABLE"===a.availability).map(a=>(0,b.jsxs)(Y.SelectItem,{disabled:!!y&&y.id!==a.id,value:a.id,children:[a.branch??g("detached")," ·"," ",a.relativePath]},a.id))]})]})]}),x&&(x.hasStagedChanges||x.hasUnstagedChanges)&&(0,b.jsx)(K.Alert,{children:(0,b.jsx)(K.AlertDescription,{children:g("dirtyDestinationWarning")})}),(0,b.jsxs)("div",{className:"flex items-start gap-2",children:[(0,b.jsx)(O.Checkbox,{checked:m,disabled:!z||o,id:`delete-source-${a.worktree.id}`,onCheckedChange:a=>n(!!a)}),(0,b.jsxs)("div",{children:[(0,b.jsx)(U.Label,{htmlFor:`delete-source-${a.worktree.id}`,children:g("deleteOldWorktree")}),!z&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:g("deleteOldWorktreeDisabled")})]})]})]}),q&&(0,b.jsx)(K.Alert,{variant:"destructive",children:(0,b.jsx)(K.AlertDescription,{children:q})}),(0,b.jsxs)(P.DialogFooter,{children:[(0,b.jsx)(M.Button,{disabled:o,onClick:()=>s?void E():f(!1),variant:"outline",children:s?g("cancelMove"):g("cancel")}),(0,b.jsxs)(M.Button,{disabled:o||!s&&!v,onClick:()=>s?void C():void B(),children:[o&&(0,b.jsx)(X.Spinner,{}),s?g("stashAndContinue"):g("moveWorktree")]})]})]})})}function aL({props:a,open:d,onOpenChange:e}){let f=(0,D.useTranslations)("worktrees"),[g,h]=(0,c.useState)(!1),[i,j]=(0,c.useState)(!1),[k,l]=(0,c.useState)(null),m=!!(a.worktree.branch&&(a.group.codebase.remoteBranches.includes(a.worktree.branch)||a.worktree.upstream===`origin/${a.worktree.branch}`)),n=a.worktree.branch===a.group.codebase.defaultBranch,o=async()=>{j(!0),l(null);try{let b=await (0,aa.controlPlaneRequest)(`mutation DeleteWorktree($input: DeleteWorktreeInput!) {
70
- deleteWorktree(input: $input) { id }
71
- }`,{input:{worktreeId:a.worktree.id,deleteRemoteBranch:g,requestId:(0,_.createClientId)()}});await (0,ah.waitForWorktreeJob)(b.deleteWorktree.id),await a.onReload(),a.onError(null),a.onDeleted?.(),e(!1)}catch(a){l(a instanceof Error?a.message:String(a))}finally{j(!1)}};return(0,b.jsx)(P.Dialog,{onOpenChange:a=>!i&&e(a),open:d,children:(0,b.jsxs)(P.DialogContent,{children:[(0,b.jsxs)(P.DialogHeader,{children:[(0,b.jsx)(P.DialogTitle,{children:f("deleteWorktree")}),(0,b.jsx)(P.DialogDescription,{children:f("deleteWorktreeDescription",{path:an(a.worktree.folder,a.baseRepoDirectory)})})]}),(0,b.jsx)(K.Alert,{variant:"destructive",children:(0,b.jsx)(K.AlertDescription,{children:f("deleteWorktreeWarning")})}),m&&(0,b.jsxs)("div",{className:"flex items-start gap-2",children:[(0,b.jsx)(O.Checkbox,{checked:g,disabled:i||n,id:`delete-remote-${a.worktree.id}`,onCheckedChange:a=>h(!!a)}),(0,b.jsxs)("div",{children:[(0,b.jsx)(U.Label,{htmlFor:`delete-remote-${a.worktree.id}`,children:f("deleteRemoteBranch",{branch:a.worktree.branch??""})}),n&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:f("defaultRemoteProtected")})]})]}),k&&(0,b.jsx)(K.Alert,{variant:"destructive",children:(0,b.jsx)(K.AlertDescription,{children:k})}),(0,b.jsxs)(P.DialogFooter,{children:[(0,b.jsx)(M.Button,{disabled:i,onClick:()=>e(!1),variant:"outline",children:f("cancel")}),(0,b.jsxs)(M.Button,{disabled:i,onClick:()=>void o(),variant:"destructive",children:[i&&(0,b.jsx)(X.Spinner,{}),f("deleteWorktree")]})]})]})})}function aM(a){let{worktree:c,editorVariant:e}=a,f=(0,D.useTranslations)("worktrees"),g="AVAILABLE"!==c.availability||!!c.activeJob,i=ao(c),j=a.overview.agents.find(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id))?.agent,l="AVAILABLE"!==c.availability||!j||"ONLINE"!==j.connectionStatus||!j.capabilities.includes("ios.build.run")||!1===a.group.iosBuildConfigured;return(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)(F.StartBuildButton,{codebaseId:a.group.codebase.id,disabled:l,disabledReason:j&&"ONLINE"===j.connectionStatus?j.capabilities.includes("ios.build.run")?!1===a.group.iosBuildConfigured?f("iosBuildNotConfigured"):"AVAILABLE"!==c.availability?f("worktreeUnavailable"):null:f("agentUnsupported"):f("agentOffline"),worktreeId:c.id}),c.pullRequest&&(0,b.jsx)(G.MergePullRequestButton,{onMerged:a.onCompleted,pullRequest:c.pullRequest}),"NONE"!==e&&(0,b.jsx)(aN,{icon:(0,b.jsx)(k.Code2,{}),label:f("CODE_INSIDERS"===e?"openInsiders":"openCode"),operation:"OPEN_EDITOR",props:a}),(0,b.jsx)(aN,{confirm:!0,icon:(0,b.jsx)(B.Upload,{}),label:f("forcePush"),operation:"FORCE_PUSH",props:a,disabled:g||!c.upstream}),(0,b.jsx)(aN,{confirm:!0,icon:(0,b.jsx)(v.RefreshCw,{}),label:f("sync"),operation:"SYNC",props:a,disabled:g||!c.upstream||!c.baseBranch||0===c.baseBehind}),(0,b.jsx)(aN,{icon:(0,b.jsx)(B.Upload,{}),label:f(c.upstream?"push":"publish"),operation:"PUSH",props:a,disabled:g||!c.branch}),(0,b.jsx)(aN,{confirm:!0,icon:(0,b.jsx)(w.RotateCcw,{}),label:f("reset"),operation:"RESET",props:a,disabled:g||!c.upstream}),(0,b.jsx)(aN,{icon:(0,b.jsx)(d.Archive,{}),label:f("stashAll"),operation:"STASH_ALL",props:a,disabled:g||!i.hasChanges}),(0,b.jsx)(aN,{icon:(0,b.jsx)(h.Check,{}),label:f("UNSTAGE_ALL"===i.stageOperation?"unstageAll":"stageAll"),operation:i.stageOperation,props:a,disabled:g||!i.hasChanges}),c.activeJob&&(0,b.jsxs)("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,b.jsx)(X.Spinner,{})," ",f("operationRunning")]})]})}function aN({props:a,operation:d,label:e,icon:f,confirm:g=!1,disabled:i=!1}){let j=(0,D.useTranslations)("worktrees"),[k,l]=(0,c.useState)(!1),[m,n]=(0,c.useState)(!1),o=(0,c.useRef)(null);(0,c.useEffect)(()=>()=>{o.current&&window.clearTimeout(o.current)},[]);let p=async()=>{if(g&&!k){l(!0),o.current=window.setTimeout(()=>l(!1),5e3);return}n(!0),l(!1);try{let b=await (0,aa.controlPlaneRequest)("mutation RunWorktreeOperation($input: RunWorktreeOperationInput!) { runWorktreeOperation(input: $input) { id } }",{input:{worktreeId:a.worktree.id,operation:d,requestId:(0,_.createClientId)()}});a.onError(null),await a.onCompleted(),await (0,ah.waitForWorktreeJob)(b.runWorktreeOperation.id),await a.onCompleted()}catch(b){a.onError(b instanceof Error?b.message:String(b))}finally{n(!1)}};return(0,b.jsxs)(M.Button,{disabled:i||m,onClick:()=>void p(),size:"sm",variant:k?"destructive":"outline",children:[m?(0,b.jsx)(X.Spinner,{}):k?(0,b.jsx)(h.Check,{}):f," ",k?j("confirmAction"):e]})}function aO(a){let d=(0,D.useTranslations)("worktrees");return(0,b.jsx)("div",{className:"rounded-xl border",children:(0,b.jsxs)(Z.Table,{children:[(0,b.jsx)(Z.TableHeader,{children:(0,b.jsxs)(Z.TableRow,{children:[(0,b.jsx)(Z.TableHead,{children:d("branch")}),(0,b.jsx)(Z.TableHead,{children:d("path")}),(0,b.jsx)(Z.TableHead,{children:d("baseBranch")}),(0,b.jsx)(Z.TableHead,{children:d("upToDate")}),(0,b.jsx)(Z.TableHead,{children:d("tags")}),(0,b.jsx)(Z.TableHead,{children:d("pullRequest")}),(0,b.jsx)(Z.TableHead,{children:d("origin")}),(0,b.jsx)(Z.TableHead,{})]})}),(0,b.jsx)(Z.TableBody,{children:a.group.worktrees.map(b=>(0,c.createElement)(aP,{...a,key:b.id,worktree:b}))})]})})}function aP(a){let{baseRepoDirectory:d,inspectionRefreshToken:e,onError:f}=a,{worktree:g,applyActivity:h,setUnstagedChanges:k}=(0,ag.useLiveWorktree)(a.worktree),l={...a,worktree:g},m=(0,D.useTranslations)("worktrees"),n=(0,ac.useRouter)(),[o,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(!1),u=(0,c.useRef)(0),v=(0,c.useRef)(e),w=(0,c.useCallback)(async()=>{let a=++u.current;t(!0);try{let b=await (0,ag.inspectWorktree)(g.id);if(a!==u.current)return;r(b),k(b.changes.some(a=>a.unstaged||a.untracked||a.conflicted)),f(null)}catch(b){a===u.current&&f(b instanceof Error?b.message:String(b))}finally{a===u.current&&t(!1)}},[f,k,g.id]),x=(0,ag.useQueuedWorktreeInspection)(w),y=(0,c.useCallback)(a=>{h(a),o&&x()},[h,o,x]);(0,ag.useWorktreeActivitySubscription)(g.id,a.liveUpdatesEnabled&&"AVAILABLE"===g.availability,y),(0,c.useEffect)(()=>{if(v.current===e||(v.current=e,!o))return;let a=window.setTimeout(()=>void x(),0);return()=>window.clearTimeout(a)},[o,e,x]);let z=()=>{let a=!o;p(a),a&&!q&&x()},A=g.highlightColor&&ap[g.highlightColor];return(0,b.jsxs)(c.Fragment,{children:[(0,b.jsxs)(Z.TableRow,{className:(0,ab.cn)("cursor-pointer transition-colors hover:bg-muted/50",A),onClick:a=>{(0,ai.shouldNavigateWorktreeSurface)(a)&&n.push((0,ai.worktreeDetailHref)(g.id))},children:[(0,b.jsxs)(Z.TableCell,{children:[(0,b.jsxs)(M.Button,{"aria-expanded":o,className:"max-w-full px-0 font-mono",onClick:()=>void z(),variant:"ghost",children:[o?(0,b.jsx)(i.ChevronDown,{}):(0,b.jsx)(j.ChevronRight,{}),(0,b.jsx)("span",{className:"truncate",children:g.branch??m("detached")})]}),(g.ticketKey||g.ticketTitle)&&(0,b.jsx)(az,{...l,compact:!0})]}),(0,b.jsx)(Z.TableCell,{className:"font-mono text-xs",children:an(g.folder,d)}),(0,b.jsx)(Z.TableCell,{children:(0,b.jsx)(aH,{...l,compact:!0})}),(0,b.jsx)(Z.TableCell,{children:(0,b.jsx)(aD,{worktree:g})}),(0,b.jsx)(Z.TableCell,{children:(0,b.jsx)(aC,{...l,compact:!0})}),(0,b.jsx)(Z.TableCell,{children:(0,b.jsx)("div",{className:"flex flex-wrap items-center gap-1.5",children:(0,b.jsx)(aE,{detailsExpanded:o,onToggleDetails:z,worktree:g})})}),(0,b.jsx)(Z.TableCell,{children:(0,b.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[(0,b.jsx)(aG,{worktree:g}),g.hasUnstagedChanges&&(0,b.jsx)(L.Badge,{variant:"destructive",children:m("dirty")})]})}),(0,b.jsx)(Z.TableCell,{children:(0,b.jsxs)("div",{className:"flex items-center justify-end gap-1",children:[(0,b.jsx)(ay,{worktree:g}),(0,b.jsx)(aJ,{...l})]})})]}),(0,b.jsx)(Z.TableRow,{className:(0,ab.cn)(A),children:(0,b.jsx)(Z.TableCell,{colSpan:8,children:(0,b.jsx)(aM,{...l,onCompleted:async()=>{await a.onReload(),o&&await x()}})})}),o&&(0,b.jsx)(Z.TableRow,{className:(0,ab.cn)(A),children:(0,b.jsx)(Z.TableCell,{colSpan:8,children:s&&!q?(0,b.jsx)(X.Spinner,{}):q?(0,b.jsx)(ae.WorktreeDetailPanel,{detail:q,inline:!0}):null})})]})}function aQ({tag:a}){return(0,b.jsx)(L.Badge,{className:aq[a.color],children:a.name})}function aR({label:a,value:c,mono:d=!1}){return(0,b.jsxs)("div",{className:"min-w-0",children:[(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:a}),(0,b.jsx)("p",{className:(0,ab.cn)("flex min-h-6 items-center truncate",d&&"font-mono text-xs"),title:c,children:c})]})}function aS({open:a,onOpenChange:d,tags:e,onChanged:f}){let g=(0,D.useTranslations)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)("blue"),[n,o]=(0,c.useState)(null),p=async a=>{a.preventDefault();try{await (0,aa.controlPlaneRequest)("mutation SaveTag($input: SaveWorktreeTagInput!) { saveWorktreeTag(input: $input) { id } }",{input:{id:h?.id??null,name:j,color:l}}),i(null),k(""),m("blue"),o(null),await f()}catch(a){o(a instanceof Error?a.message:String(a))}},q=async a=>{try{await (0,aa.controlPlaneRequest)("mutation DeleteTag($id: ID!) { deleteWorktreeTag(id: $id) }",{id:a}),await f()}catch(a){o(a instanceof Error?a.message:String(a))}};return(0,b.jsx)(P.Dialog,{onOpenChange:d,open:a,children:(0,b.jsxs)(P.DialogContent,{children:[(0,b.jsxs)(P.DialogHeader,{children:[(0,b.jsx)(P.DialogTitle,{children:g("manageTags")}),(0,b.jsx)(P.DialogDescription,{children:g("manageTagsDescription")})]}),n&&(0,b.jsx)(K.Alert,{variant:"destructive",children:(0,b.jsx)(K.AlertDescription,{children:n})}),(0,b.jsx)(T.ItemGroup,{className:"gap-2",children:e.map(a=>(0,b.jsxs)(T.Item,{size:"sm",variant:"outline",children:[(0,b.jsx)(T.ItemContent,{children:(0,b.jsx)(T.ItemTitle,{children:(0,b.jsx)(aQ,{tag:a})})}),(0,b.jsxs)(T.ItemActions,{children:[(0,b.jsx)(M.Button,{onClick:()=>{i(a),k(a.name),m(a.color)},size:"sm",variant:"outline",children:g("edit")}),(0,b.jsx)(M.Button,{onClick:()=>void q(a.id),size:"icon-sm",variant:"destructive",children:(0,b.jsx)(A.Trash2,{})})]})]},a.id))}),(0,b.jsxs)("form",{className:"space-y-3 border-t pt-3",onSubmit:p,children:[(0,b.jsx)(U.Label,{htmlFor:"tag-name",children:h?g("editTag"):g("createTag")}),(0,b.jsx)(S.Input,{id:"tag-name",maxLength:40,onChange:a=>k(a.target.value),required:!0,value:j}),(0,b.jsx)($.ToggleGroup,{"aria-label":g("highlight"),className:"grid grid-cols-12 gap-1",onValueChange:a=>{a&&m(a)},size:"sm",spacing:1,type:"single",value:l,variant:"outline",children:aj.map(a=>(0,b.jsx)($.ToggleGroupItem,{"aria-label":a,className:(0,ab.cn)("size-7 min-w-0 p-0",ar[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),(0,b.jsx)(P.DialogFooter,{children:(0,b.jsxs)(M.Button,{type:"submit",children:[(0,b.jsx)(x.Save,{})," ",g("saveTag")]})})]})]})})}function aT({open:a,onOpenChange:e,onChanged:f}){let g=(0,D.useTranslations)("worktrees"),[h,i]=(0,c.useState)([]),[j,k]=(0,c.useState)(null),l=(0,c.useCallback)(async()=>{try{let a=await (0,aa.controlPlaneRequest)(`query HiddenWorktrees { hiddenWorktrees { ${af.WORKTREE_FIELDS} } }`);i(a.hiddenWorktrees),k(null)}catch(a){k(a instanceof Error?a.message:String(a))}},[]);(0,c.useEffect)(()=>{if(!a)return;let b=window.setTimeout(()=>void l(),0);return()=>window.clearTimeout(b)},[a,l]);let n=async a=>{try{await (0,aa.controlPlaneRequest)(a?"mutation PurgeHidden($id: ID!) { purgeHiddenWorktree(id: $id) }":"mutation PurgeAllHidden { purgeAllHiddenWorktrees }",a?{id:a}:void 0),await l(),await f()}catch(a){k(a instanceof Error?a.message:String(a))}};return(0,b.jsx)(P.Dialog,{onOpenChange:e,open:a,children:(0,b.jsxs)(P.DialogContent,{className:"sm:max-w-3xl",children:[(0,b.jsxs)(P.DialogHeader,{children:[(0,b.jsx)(P.DialogTitle,{children:g("hiddenTitle")}),(0,b.jsx)(P.DialogDescription,{children:g("hiddenDescription")})]}),j&&(0,b.jsx)(K.Alert,{variant:"destructive",children:(0,b.jsx)(K.AlertDescription,{children:j})}),(0,b.jsx)("div",{className:"max-h-96 overflow-y-auto",children:h.length?(0,b.jsx)(T.ItemGroup,{className:"gap-2",children:h.map(a=>(0,b.jsxs)(T.Item,{variant:"outline",children:[(0,b.jsx)(T.ItemMedia,{variant:"icon",children:(0,b.jsx)(m.GitBranch,{})}),(0,b.jsxs)(T.ItemContent,{className:"min-w-0",children:[(0,b.jsx)(T.ItemTitle,{className:"font-mono",children:a.branch??g("detached")}),(0,b.jsx)(T.ItemDescription,{className:"truncate",title:a.folder,children:a.folder})]}),(0,b.jsx)(T.ItemActions,{children:(0,b.jsxs)(M.Button,{onClick:()=>void n(a.id),size:"sm",variant:"destructive",children:[(0,b.jsx)(A.Trash2,{})," ",g("purge")]})})]},a.id))}):(0,b.jsx)(R.Empty,{className:"border-0 py-8",children:(0,b.jsxs)(R.EmptyHeader,{children:[(0,b.jsx)(R.EmptyMedia,{variant:"icon",children:(0,b.jsx)(d.Archive,{})}),(0,b.jsx)(R.EmptyTitle,{children:g("noHidden")})]})})}),(0,b.jsx)(P.DialogFooter,{children:h.length>0&&(0,b.jsxs)(M.Button,{onClick:()=>void n(),variant:"destructive",children:[(0,b.jsx)(A.Trash2,{})," ",g("purgeAll")]})})]})})}a.s(["ActionRow",0,aM,"BaseBranchControl",0,aH,"BaseFreshnessBadge",0,aD,"OriginStatusBadges",0,aG,"PullRequestBadges",0,aE,"TagManagerDialog",0,aS,"WorktreeMenus",0,aJ,"WorktreeMetadata",0,aA,"WorktreeTagsMenu",0,aC,"WorktreeTicketLink",0,az,"WorktreesPage",0,function(){let a=(0,D.useTranslations)("worktrees"),[e,f]=(0,c.useState)(()=>null),[g,h]=(0,c.useState)(null),[i,j]=(0,c.useState)(()=>"cards"),[k,l]=(0,c.useState)(!0),[n,q]=(0,c.useState)(!1),[r,s]=(0,c.useState)(null),[t,u]=(0,c.useState)(null),[w,x]=(0,c.useState)(0),[z,A]=(0,c.useState)(!1),[C,F]=(0,c.useState)(!1),[G,H]=(0,c.useState)(""),[I,L]=(0,c.useState)(ak),[N,O]=(0,c.useState)(ak),P=(0,c.useRef)(0),Q=(0,c.useCallback)(async()=>{let a=++P.current;try{let b=await (0,aa.controlPlaneRequest)(`query WorktreeOverview {
72
- worktreeOverview {
73
- hiddenCount
74
- settings { editorVariant updatedAt }
75
- tags { id name color createdAt updatedAt }
76
- activeMoves {
77
- id sourceWorktreeId sourceCodebaseId targetCodebaseId targetWorktreeId destinationMode
78
- branch headSha deleteSource status sourceJobId targetJobId cleanupJobId error warning
79
- createdAt updatedAt finishedAt
80
- }
81
- agents {
82
- agent { ${E.AGENT_FIELDS} }
83
- codebases {
84
- iosBuildConfigured
85
- repository { id canonicalOrigin displayOrigin name description jiraBranchRegex keepBaseBranchUpToDate createdAt updatedAt }
86
- codebase { ${af.CODEBASE_FIELDS} }
87
- worktrees { ${af.WORKTREE_FIELDS} }
88
- }
89
- }
90
- }
91
- }`);if(a!==P.current)return;h(b.worktreeOverview),s(null)}catch(b){a===P.current&&s(b instanceof Error?b.message:String(b))}finally{a===P.current&&l(!1)}},[]);(0,c.useEffect)(()=>{let a=window.setTimeout(()=>void Q(),0),b=window.setInterval(()=>void Q(),3e4),c=(0,aa.controlPlaneSubscriptions)().subscribe({query:"subscription WorktreesChanged { worktreeOverviewChanged { worktreeId codebaseId } }"},{next:()=>void Q(),error:()=>void 0,complete:()=>void 0});return()=>{window.clearTimeout(a),window.clearInterval(b),P.current+=1,c()}},[Q]),(0,c.useEffect)(()=>{let a=()=>f(new URLSearchParams(window.location.search).get("issue"));return window.addEventListener("popstate",a),()=>window.removeEventListener("popstate",a)},[]);let T=a=>{let b,c;b=new URLSearchParams(window.location.search),a?b.set("issue",a):b.delete("issue"),c=b.toString(),window.history.pushState(null,"",`${window.location.pathname}${c?`?${c}`:""}`),f(a)},U=async()=>{l(!0),q(!0);try{await (0,aa.controlPlaneRequest)(`mutation RefreshWorktrees {
92
- refreshWorktrees
93
- }`),await Q(),x(a=>a+1),s(null)}catch(a){s(a instanceof Error?a.message:String(a))}finally{q(!1),l(!1)}},V=async()=>{let b=g?.agents.flatMap(a=>a.codebases.map(a=>a.codebase.id))??[];if(b.length){q(!0);try{await (0,aa.controlPlaneRequest)(`mutation FetchWorktreeCodebases($input: RunCodebaseOperationInput!) {
94
- fetchCodebases(input: $input) { jobs { id } skipped { codebaseId reason } }
95
- }`,{input:{codebaseIds:b,requestId:(0,_.createClientId)()}}),u(a("fetchStarted")),s(null),await Q()}catch(a){s(a instanceof Error?a.message:String(a)),u(null)}finally{q(!1)}}},W=a=>{h(b=>b?{...b,agents:b.agents.map(b=>({...b,codebases:b.codebases.map(b=>({...b,worktrees:b.worktrees.map(b=>b.id===a.id?{...b,...a,ticketKey:a.ticketKey??b.ticketKey,ticketTitle:a.ticketTitle??b.ticketTitle,ticketStatus:a.ticketStatus??b.ticketStatus,pullRequest:a.pullRequest??b.pullRequest}:b)}))}))}:b)},Z=(0,c.useMemo)(()=>{let a=new Map;return g?.agents.forEach(b=>b.codebases.forEach(b=>a.set(b.repository.id,{id:b.repository.id,name:b.repository.name}))),[...a.values()].sort((a,b)=>a.name.localeCompare(b.name))},[g]),ab=(0,c.useMemo)(()=>am(g?.agents??[],{query:G,agentId:I===ak?null:I,repositoryId:N===ak?null:N}),[I,g,G,N]),ac=!!G.trim()||I!==ak||N!==ak;return(0,b.jsxs)("section",{className:"flex w-full flex-col gap-6",children:[(0,b.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,b.jsxs)("div",{children:[(0,b.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:a("title")}),(0,b.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:a("description")})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsxs)(M.Button,{disabled:n,onClick:()=>void U(),variant:"outline",children:[(0,b.jsx)(v.RefreshCw,{className:k?"animate-spin":void 0})," ",a("refresh")]}),(0,b.jsxs)(M.Button,{disabled:n||!g?.agents.length,onClick:()=>void V(),variant:"outline",children:[(0,b.jsx)(B.Upload,{})," ",a("fetchNow")]}),(0,b.jsxs)(M.Button,{onClick:()=>F(!0),variant:"outline",children:[(0,b.jsx)(d.Archive,{})," ",a("hidden",{count:g?.hiddenCount??0})]}),(0,b.jsxs)($.ToggleGroup,{"aria-label":`${a("cards")} / ${a("table")}`,onValueChange:a=>{("cards"===a||"table"===a)&&(j(a),window.localStorage.setItem("worktrees-layout",a))},size:"sm",spacing:0,type:"single",value:i,variant:"outline",children:[(0,b.jsx)($.ToggleGroupItem,{"aria-label":a("cards"),className:"px-2",value:"cards",children:(0,b.jsx)(o.Grid2X2,{})}),(0,b.jsx)($.ToggleGroupItem,{"aria-label":a("table"),className:"px-2",value:"table",children:(0,b.jsx)(p.List,{})})]})]})]}),r&&(0,b.jsx)(K.Alert,{variant:"destructive",children:(0,b.jsx)(K.AlertDescription,{children:r})}),t&&(0,b.jsx)(K.Alert,{children:(0,b.jsx)(K.AlertDescription,{children:t})}),g&&g.agents.length>0&&(0,b.jsxs)("div",{"aria-label":a("filters"),className:"flex flex-wrap gap-2",role:"search",children:[(0,b.jsxs)("div",{className:"relative min-w-0 flex-[2_1_18rem]",children:[(0,b.jsx)(y.Search,{className:"pointer-events-none absolute top-1/2 left-3 size-4 -translate-y-1/2 text-muted-foreground"}),(0,b.jsx)(S.Input,{"aria-label":a("searchWorktrees"),className:"pl-9",onChange:a=>H(a.target.value),placeholder:a("searchWorktreesPlaceholder"),type:"search",value:G})]}),(0,b.jsx)("div",{className:"min-w-0 flex-[1_1_12rem]",children:(0,b.jsxs)(Y.Select,{onValueChange:L,value:I,children:[(0,b.jsx)(Y.SelectTrigger,{"aria-label":a("filterByAgent"),className:"w-full",children:(0,b.jsx)(Y.SelectValue,{})}),(0,b.jsxs)(Y.SelectContent,{children:[(0,b.jsx)(Y.SelectItem,{value:ak,children:a("allAgents")}),g.agents.map(a=>(0,b.jsx)(Y.SelectItem,{value:a.agent.id,children:a.agent.name},a.agent.id))]})]})}),(0,b.jsx)("div",{className:"min-w-0 flex-[1_1_12rem]",children:(0,b.jsxs)(Y.Select,{onValueChange:O,value:N,children:[(0,b.jsx)(Y.SelectTrigger,{"aria-label":a("filterByRepository"),className:"w-full",children:(0,b.jsx)(Y.SelectValue,{})}),(0,b.jsxs)(Y.SelectContent,{children:[(0,b.jsx)(Y.SelectItem,{value:ak,children:a("allRepositories")}),Z.map(a=>(0,b.jsx)(Y.SelectItem,{value:a.id,children:a.name},a.id))]})]})})]}),g&&g.activeMoves.length>0&&(0,b.jsx)(as,{moves:g.activeMoves,onError:s,onNotice:u,onReload:Q}),g&&(0,b.jsx)(au,{onCreated:async()=>{await Q(),u(a("worktreeCreated"))},overview:g}),k&&!g?(0,b.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,b.jsx)(X.Spinner,{})," ",a("loading")]}):g?.agents.length?ac&&0===ab.length?(0,b.jsx)(R.Empty,{className:"border py-12",children:(0,b.jsxs)(R.EmptyHeader,{children:[(0,b.jsx)(R.EmptyMedia,{variant:"icon",children:(0,b.jsx)(y.Search,{})}),(0,b.jsx)(R.EmptyTitle,{children:a("noMatchingWorktrees")}),(0,b.jsx)(R.EmptyDescription,{children:a("noMatchingWorktreesDescription")})]})}):ab.map(a=>(0,b.jsx)(av,{agentGroup:a,allTags:g.tags,editorVariant:g.settings.editorVariant,inspectionRefreshToken:w,layout:i,onError:s,onManageTags:()=>A(!0),onOpenTicket:a=>T(a),onReload:Q,onUpdate:W,overview:g},a.agent.id)):(0,b.jsx)(R.Empty,{className:"border py-12",children:(0,b.jsxs)(R.EmptyHeader,{children:[(0,b.jsx)(R.EmptyMedia,{variant:"icon",children:(0,b.jsx)(m.GitBranch,{})}),(0,b.jsx)(R.EmptyTitle,{children:a("emptyTitle")}),(0,b.jsx)(R.EmptyDescription,{children:a("emptyDescription")})]})}),(0,b.jsx)(aS,{onChanged:Q,onOpenChange:A,open:z,tags:g?.tags??[]}),(0,b.jsx)(aT,{onChanged:Q,onOpenChange:F,open:C}),(0,b.jsx)(J.JiraTicketDrawer,{issueKey:e,onClose:()=>T(null)})]})},"displayedWorktreePath",0,an,"filterWorktreeAgentGroups",0,am,"worktreeChangeActionState",0,ao])}];
96
-
97
- //# sourceMappingURL=_1za3z6k._.js.map
@@ -1,11 +0,0 @@
1
- module.exports=[785668,390702,a=>{"use strict";var b=a.i(187924),c=a.i(164831);let d=(0,c.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"}]]);a.s(["AlertTriangle",0,d],390702);var e=a.i(168370),f=a.i(239315);let g=(0,c.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 h=a.i(415925),i=a.i(572131),j=a.i(674215),k=a.i(65775),l=a.i(194478),m=a.i(103810),n=a.i(124348),o=a.i(786304),p=a.i(699570),q=a.i(591119),r=a.i(779711),s=a.i(757061),t=a.i(668684),u=a.i(555027),v=a.i(460280),w=a.i(492845),x=a.i(181899);let y={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 z(a){return a?new Date(a).toLocaleString():"—"}function A({ticket:a}){let c=(0,h.useTranslations)("jiraTickets"),d=[[c("assignee"),(0,b.jsx)(j.JiraUser,{avatarUrl:a.assigneeAvatarUrl,name:a.assignee??c("unassigned")},"assignee")],[c("reporter"),a.reporter?(0,b.jsx)(j.JiraUser,{avatarUrl:a.reporter.avatarUrl,name:a.reporter.displayName},"reporter"):"—"],[c("created"),z(a.createdAt)],[c("updated"),z(a.updatedAt)],[c("due"),z(a.dueAt)],[c("resolved"),z(a.resolvedAt)]];return(0,b.jsx)("dl",{className:"grid gap-3 rounded-lg bg-muted/50 p-4 text-sm sm:grid-cols-2",children:d.map(([a,c])=>(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{className:"text-xs text-muted-foreground",children:a}),(0,b.jsx)("dd",{className:"mt-0.5 font-medium",children:c})]},a))})}function B({label:a,values:c}){return(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{className:"text-muted-foreground",children:a}),(0,b.jsx)("dd",{className:"mt-1",children:c.join(", ")})]})}a.s(["JiraTicketDrawer",0,function({issueKey:a,onClose:c,onTicketChange:j}){let z=(0,h.useTranslations)("jiraTickets"),[C,D]=(0,i.useState)(null),[E,F]=(0,i.useState)(null),[G,H]=(0,i.useState)(!1),[I,J]=(0,i.useState)(!1);(0,i.useEffect)(()=>{if(!a){let a=window.setTimeout(()=>D(null),0);return()=>window.clearTimeout(a)}let b=window.setTimeout(async()=>{H(!0);try{let b=await (0,v.controlPlaneRequest)(`query JiraTicket($issueKey: ID!) { jiraTicket(issueKey: $issueKey) { ${x.JIRA_TICKET_DETAIL_FIELDS} } }`,{issueKey:a});D(b.jiraTicket),F(null)}catch(a){F(a instanceof Error?a.message:String(a))}finally{H(!1)}},0);return()=>window.clearTimeout(b)},[a]);let K=a=>{D(a),j?.(a)};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s.Sheet,{onOpenChange:a=>{a||c()},open:!!a,children:(0,b.jsxs)(s.SheetContent,{className:"w-[min(48rem,95vw)] overflow-y-auto sm:max-w-3xl",children:[(0,b.jsxs)(s.SheetHeader,{className:"border-b pr-12",children:[(0,b.jsx)(s.SheetTitle,{children:C?.key??a??z("ticket")}),(0,b.jsx)(s.SheetDescription,{children:C?.summary??z("loadingTicket")})]}),(0,b.jsxs)("div",{className:"space-y-6 px-4 pb-6",children:[G&&(0,b.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,b.jsx)(t.Spinner,{}),z("loadingTicket")]}),E&&(0,b.jsx)(n.Alert,{variant:"destructive",children:(0,b.jsx)(n.AlertDescription,{children:E})}),C&&(0,b.jsxs)(b.Fragment,{children:[(C.cache.stale||C.commentsCache.stale)&&(0,b.jsxs)(n.Alert,{className:"border-amber-500/30 bg-amber-500/10",children:[(0,b.jsx)(d,{}),(0,b.jsx)(n.AlertDescription,{children:z("staleTicket")})]}),(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsx)(o.Badge,{children:C.status}),C.issueType&&(0,b.jsx)(o.Badge,{children:C.issueType}),C.priority&&(0,b.jsx)(o.Badge,{className:y[C.priority.trim().toLowerCase()],children:C.priority})]}),(0,b.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,b.jsxs)(p.Button,{onClick:()=>J(!0),size:"sm",variant:"outline",children:[(0,b.jsx)(f.GitBranch,{})," ",z("worktreeAction")]}),(0,b.jsx)(p.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,b.jsxs)(u.Link,{href:`/jira/tickets/${encodeURIComponent(C.key)}`,children:[(0,b.jsx)(g,{})," ",z("openFullDetails")]})}),(0,b.jsx)(p.Button,{asChild:!0,size:"sm",variant:"outline",children:(0,b.jsxs)("a",{href:C.jiraUrl,rel:"noreferrer",target:"_blank",children:[(0,b.jsx)(e.ExternalLink,{})," ",z("openInJira")]})})]})]}),(0,b.jsx)(l.JiraTicketActions,{onTicketChange:K,ticket:C}),(0,b.jsx)(A,{ticket:C}),(0,b.jsx)("section",{children:(0,b.jsx)(q.Card,{size:"sm",children:(0,b.jsx)(q.CardContent,{children:(0,b.jsx)(k.JiraRichTextBlock,{content:C.descriptionContent,header:(0,b.jsx)("h3",{className:"font-semibold",children:z("descriptionTitle")}),headerClassName:"border-b pb-2",value:C.description})})})}),(C.labels.length>0||C.components.length>0||C.fixVersions.length>0||C.sprintNames.length>0)&&(0,b.jsxs)("section",{children:[(0,b.jsx)("h3",{className:"mb-2 font-semibold",children:z("classification")}),(0,b.jsxs)("dl",{className:"grid gap-3 text-sm sm:grid-cols-2",children:[C.labels.length>0&&(0,b.jsxs)("div",{children:[(0,b.jsx)("dt",{className:"text-muted-foreground",children:z("labels")}),(0,b.jsx)("dd",{className:"mt-1 flex flex-wrap gap-1",children:C.labels.map(a=>(0,b.jsx)(o.Badge,{children:a},a))})]}),C.components.length>0&&(0,b.jsx)(B,{label:z("components"),values:C.components.map(a=>a.name)}),C.fixVersions.length>0&&(0,b.jsx)(B,{label:z("fixVersions"),values:C.fixVersions.map(a=>a.name)}),C.sprintNames.length>0&&(0,b.jsx)(B,{label:z("sprints"),values:C.sprintNames})]})]}),(C.parent||C.subtasks.length>0||C.issueLinks.length>0)&&(0,b.jsxs)("section",{children:[(0,b.jsx)("h3",{className:"mb-2 font-semibold",children:z("relatedIssues")}),(0,b.jsx)(r.ItemGroup,{className:"gap-2",children:[...C.parent?[C.parent]:[],...C.subtasks,...C.issueLinks].map((a,c)=>(0,b.jsx)(r.Item,{asChild:!0,size:"xs",variant:"outline",children:(0,b.jsxs)(u.Link,{href:`/jira/tickets/${encodeURIComponent(a.key)}`,children:[(0,b.jsxs)(r.ItemContent,{children:[(0,b.jsxs)(r.ItemTitle,{className:"leading-tight",children:[a.key," · ",a.summary]}),(0,b.jsx)(r.ItemDescription,{className:"leading-tight",children:a.relationship})]}),(0,b.jsx)(r.ItemActions,{children:a.status&&(0,b.jsx)(o.Badge,{children:a.status})})]})},`${a.key}-${c}`))})]}),C.attachments.length>0&&(0,b.jsxs)("section",{children:[(0,b.jsx)("h3",{className:"mb-2 font-semibold",children:z("attachments")}),(0,b.jsx)(r.ItemGroup,{className:"gap-2",children:C.attachments.map(a=>(0,b.jsx)(r.Item,{asChild:!0,variant:"outline",children:(0,b.jsxs)("a",{href:a.contentUrl??"#",rel:"noreferrer",target:"_blank",children:[(0,b.jsx)(r.ItemContent,{children:(0,b.jsx)(r.ItemTitle,{children:a.filename})}),(0,b.jsx)(r.ItemActions,{className:"text-xs text-muted-foreground",children:a.size?`${Math.round(a.size/1024)} KB`:""})]})},a.id))})]}),(0,b.jsx)(m.JiraTicketComments,{onTicketChange:K,ticket:C})]})]})]})}),C&&(0,b.jsx)(w.TicketWorktreeDialog,{issueKey:C.key,onOpenChange:J,open:I})]})}],785668)},275401,a=>{"use strict";function b(a){return`${a.repositoryNameWithOwner}#${a.number}`}a.s(["pullRequestCommentsHref",0,function(a){return`/comments?pullRequest=${encodeURIComponent(b(a))}`},"pullRequestDetailHref",0,function(a){let[b="",c=""]=a.repositoryNameWithOwner.split("/");return`/pull-requests/${encodeURIComponent(b)}/${encodeURIComponent(c)}/${a.number}`},"pullRequestKey",0,b])},313481,533838,a=>{"use strict";var b=a.i(187924),c=a.i(589027),d=a.i(168370);let e=(0,a.i(164831).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"}]]);a.s(["RotateCcw",0,e],533838);var f=a.i(415925),g=a.i(572131),h=a.i(786304),i=a.i(699570),j=a.i(335732),k=a.i(668684),l=a.i(785259),m=a.i(460280);function n({pipeline:a,repositoryId:c,onPipelineRetried:d,onError:h}){let j=(0,f.useTranslations)("pullRequests"),[o,p]=(0,g.useState)(!1),q=async b=>{if(b.stopPropagation(),a.canRetry&&a.checkSuiteId){p(!0);try{let b=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:c,checkSuiteId:a.checkSuiteId});d?.(b.retryGitHubPipeline),h?.(null)}catch(a){h?.(a instanceof Error?a.message:String(a))}finally{p(!1)}}},r=(0,b.jsxs)(i.Button,{disabled:o||!a.canRetry||!a.checkSuiteId,onClick:a=>void q(a),size:"sm",variant:"outline",children:[o?(0,b.jsx)(k.Spinner,{}):(0,b.jsx)(e,{}),j(o?"retrying":"retry")]});if(!a.retryUnavailableReason||o)return r;let s=j(`retryUnavailable.${a.retryUnavailableReason}`);return(0,b.jsx)(l.TooltipProvider,{children:(0,b.jsxs)(l.Tooltip,{children:[(0,b.jsx)(l.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{"aria-label":s,className:"inline-flex",tabIndex:0,children:r})}),(0,b.jsx)(l.TooltipContent,{children:s})]})})}function o(a){return"SUCCESS"===a?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"PENDING"===a||"EXPECTED"===a||"QUEUED"===a||"IN_PROGRESS"===a||"ACTION_REQUIRED"===a?"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300":"FAILURE"===a||"ERROR"===a||"CANCELLED"===a||"STALE"===a||"STARTUP_FAILURE"===a||"TIMED_OUT"===a?"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"}a.s(["PipelineMenu",0,function({pipelineStatus:a,pipelines:e,repositoryId:k,onPipelineRetried:l}){let m=(0,f.useTranslations)("pullRequests"),[p,q]=(0,g.useState)(null),r=a=>a.stopPropagation();return(0,b.jsxs)(j.DropdownMenu,{children:[(0,b.jsx)(j.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsxs)(i.Button,{className:`h-5 rounded-full px-2 py-0.5 text-xs ${o(a)}`,onClick:r,variant:"outline",children:[m(`pipelineStates.${a}`),(0,b.jsx)(c.ChevronDown,{className:"size-3"})]})}),(0,b.jsxs)(j.DropdownMenuContent,{align:"end",className:"w-80",onClick:r,children:[(0,b.jsx)(j.DropdownMenuLabel,{children:m("pipelineMenuTitle")}),(0,b.jsx)(j.DropdownMenuSeparator,{}),p&&(0,b.jsx)("p",{className:"px-2 py-1.5 text-xs text-destructive",children:p}),0===e.length?(0,b.jsx)("p",{className:"px-2 py-3 text-sm text-muted-foreground",children:m("noPipelines")}):(0,b.jsx)("div",{className:"space-y-1 p-1",children:e.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 rounded-md px-2 py-2 hover:bg-muted",children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[a.url?(0,b.jsxs)("a",{className:"flex min-w-0 items-center gap-1 text-sm font-medium hover:underline",href:a.url,rel:"noreferrer",target:"_blank",children:[(0,b.jsx)("span",{className:"truncate",children:a.name}),(0,b.jsx)(d.ExternalLink,{className:"size-3 shrink-0"})]}):(0,b.jsx)("p",{className:"truncate text-sm font-medium",children:a.name}),(0,b.jsx)(h.Badge,{className:`mt-1 ${o(a.status)}`,children:m(`pipelineStates.${a.status}`)})]}),a.checkSuiteId&&(0,b.jsx)(n,{onError:q,onPipelineRetried:l,pipeline:a,repositoryId:k})]},a.id))})]})]})},"RetryPipelineButton",0,n,"pipelineStateClass",0,o],313481)}];
10
-
11
- //# sourceMappingURL=src_components_0wvh73y._.js.map
@@ -1,35 +0,0 @@
1
- module.exports=[275401,a=>{"use strict";function b(a){return`${a.repositoryNameWithOwner}#${a.number}`}a.s(["pullRequestCommentsHref",0,function(a){return`/comments?pullRequest=${encodeURIComponent(b(a))}`},"pullRequestDetailHref",0,function(a){let[b="",c=""]=a.repositoryNameWithOwner.split("/");return`/pull-requests/${encodeURIComponent(b)}/${encodeURIComponent(c)}/${a.number}`},"pullRequestKey",0,b])},313481,533838,a=>{"use strict";var b=a.i(187924),c=a.i(589027),d=a.i(168370);let e=(0,a.i(164831).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"}]]);a.s(["RotateCcw",0,e],533838);var f=a.i(415925),g=a.i(572131),h=a.i(786304),i=a.i(699570),j=a.i(335732),k=a.i(668684),l=a.i(785259),m=a.i(460280);function n({pipeline:a,repositoryId:c,onPipelineRetried:d,onError:h}){let j=(0,f.useTranslations)("pullRequests"),[o,p]=(0,g.useState)(!1),q=async b=>{if(b.stopPropagation(),a.canRetry&&a.checkSuiteId){p(!0);try{let b=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:c,checkSuiteId:a.checkSuiteId});d?.(b.retryGitHubPipeline),h?.(null)}catch(a){h?.(a instanceof Error?a.message:String(a))}finally{p(!1)}}},r=(0,b.jsxs)(i.Button,{disabled:o||!a.canRetry||!a.checkSuiteId,onClick:a=>void q(a),size:"sm",variant:"outline",children:[o?(0,b.jsx)(k.Spinner,{}):(0,b.jsx)(e,{}),j(o?"retrying":"retry")]});if(!a.retryUnavailableReason||o)return r;let s=j(`retryUnavailable.${a.retryUnavailableReason}`);return(0,b.jsx)(l.TooltipProvider,{children:(0,b.jsxs)(l.Tooltip,{children:[(0,b.jsx)(l.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{"aria-label":s,className:"inline-flex",tabIndex:0,children:r})}),(0,b.jsx)(l.TooltipContent,{children:s})]})})}function o(a){return"SUCCESS"===a?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"PENDING"===a||"EXPECTED"===a||"QUEUED"===a||"IN_PROGRESS"===a||"ACTION_REQUIRED"===a?"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300":"FAILURE"===a||"ERROR"===a||"CANCELLED"===a||"STALE"===a||"STARTUP_FAILURE"===a||"TIMED_OUT"===a?"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"}a.s(["PipelineMenu",0,function({pipelineStatus:a,pipelines:e,repositoryId:k,onPipelineRetried:l}){let m=(0,f.useTranslations)("pullRequests"),[p,q]=(0,g.useState)(null),r=a=>a.stopPropagation();return(0,b.jsxs)(j.DropdownMenu,{children:[(0,b.jsx)(j.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsxs)(i.Button,{className:`h-5 rounded-full px-2 py-0.5 text-xs ${o(a)}`,onClick:r,variant:"outline",children:[m(`pipelineStates.${a}`),(0,b.jsx)(c.ChevronDown,{className:"size-3"})]})}),(0,b.jsxs)(j.DropdownMenuContent,{align:"end",className:"w-80",onClick:r,children:[(0,b.jsx)(j.DropdownMenuLabel,{children:m("pipelineMenuTitle")}),(0,b.jsx)(j.DropdownMenuSeparator,{}),p&&(0,b.jsx)("p",{className:"px-2 py-1.5 text-xs text-destructive",children:p}),0===e.length?(0,b.jsx)("p",{className:"px-2 py-3 text-sm text-muted-foreground",children:m("noPipelines")}):(0,b.jsx)("div",{className:"space-y-1 p-1",children:e.map(a=>(0,b.jsxs)("div",{className:"flex items-center gap-2 rounded-md px-2 py-2 hover:bg-muted",children:[(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[a.url?(0,b.jsxs)("a",{className:"flex min-w-0 items-center gap-1 text-sm font-medium hover:underline",href:a.url,rel:"noreferrer",target:"_blank",children:[(0,b.jsx)("span",{className:"truncate",children:a.name}),(0,b.jsx)(d.ExternalLink,{className:"size-3 shrink-0"})]}):(0,b.jsx)("p",{className:"truncate text-sm font-medium",children:a.name}),(0,b.jsx)(h.Badge,{className:`mt-1 ${o(a.status)}`,children:m(`pipelineStates.${a.status}`)})]}),a.checkSuiteId&&(0,b.jsx)(n,{onError:q,onPipelineRetried:l,pipeline:a,repositoryId:k})]},a.id))})]})]})},"RetryPipelineButton",0,n,"pipelineStateClass",0,o],313481)},205956,105606,a=>{"use strict";var b=a.i(187924);let c=(0,a.i(164831).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"}]]);a.s(["GitMerge",0,c],105606);var d=a.i(415925),e=a.i(572131),f=a.i(124348),g=a.i(699570),h=a.i(814574),i=a.i(866718),j=a.i(870430),k=a.i(580701),l=a.i(668684),m=a.i(429246),n=a.i(460280);let o="__github_account_default__";a.s(["MergePullRequestButton",0,function({pullRequest:a,onMerged:p,size:q="sm",variant:r="outline",open:s,onOpenChange:t,showTrigger:u=!0}){let v=(0,d.useTranslations)("pullRequests"),[w,x]=(0,e.useState)(!1),[y,z]=(0,e.useState)(null),[A,B]=(0,e.useState)(""),[C,D]=(0,e.useState)(""),[E,F]=(0,e.useState)(""),[G,H]=(0,e.useState)(o),[I,J]=(0,e.useState)(!1),[K,L]=(0,e.useState)(!1),[M,N]=(0,e.useState)(null),[O="",P=""]=a.repositoryNameWithOwner.split("/",2),Q=s??w,R=a=>{a||(J(!1),z(null),N(null)),void 0===s&&x(a),t?.(a)};(0,e.useEffect)(()=>{if(!Q)return;let b=!0,c=window.setTimeout(()=>{J(!0),z(null),N(null),(0,n.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:O,name:P,number:a.number}).then(a=>{if(!b)return;let c=a.githubPullRequestMergeOptions;z(c),B(c.availableMethods[0]??""),D(c.defaultCommitHeadline),F(c.defaultCommitBody),H(c.defaultCommitEmail??o)}).catch(a=>{b&&N(a instanceof Error?a.message:String(a))}).finally(()=>{b&&J(!1)})},0);return()=>{b=!1,window.clearTimeout(c)}},[P,Q,O,a.number]);let S=async()=>{if(A&&y?.canMerge&&C.trim()){L(!0),N(null);try{let b=await (0,n.controlPlaneRequest)(`mutation MergeGitHubPullRequest(
28
- $input: MergeGitHubPullRequestInput!
29
- ) {
30
- mergeGitHubPullRequest(input: $input) {
31
- id state url mergedAt
32
- }
33
- }`,{input:{owner:O,name:P,number:a.number,method:A,commitHeadline:C,commitBody:E,authorEmail:G===o?null:G}});R(!1),await p?.(b.mergeGitHubPullRequest)}catch(a){N(a instanceof Error?a.message:String(a))}finally{L(!1)}}},T=y?.blockedReason??null;return(0,b.jsxs)(b.Fragment,{children:[u&&(0,b.jsxs)(g.Button,{onClick:a=>{a.stopPropagation(),R(!0)},size:q,type:"button",variant:r,children:[(0,b.jsx)(c,{}),v("merge")]}),(0,b.jsx)(h.Dialog,{onOpenChange:a=>{K||R(a)},open:Q,children:(0,b.jsxs)(h.DialogContent,{className:"sm:max-w-xl",children:[(0,b.jsxs)(h.DialogHeader,{children:[(0,b.jsx)(h.DialogTitle,{children:v("mergePullRequest")}),(0,b.jsx)(h.DialogDescription,{children:v("mergePullRequestDescription",{repository:a.repositoryNameWithOwner,number:a.number})})]}),!I&&(y||M)?(0,b.jsxs)("div",{className:"space-y-4",children:[(M||T)&&(0,b.jsx)(f.Alert,{variant:"destructive",children:(0,b.jsx)(f.AlertDescription,{children:M||T})}),y&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{children:[(0,b.jsx)(j.Label,{className:"mb-1.5 block",htmlFor:"merge-method",children:v("mergeType")}),(0,b.jsxs)(k.Select,{disabled:K||0===y.availableMethods.length,onValueChange:a=>B(a),value:A,children:[(0,b.jsx)(k.SelectTrigger,{id:"merge-method",children:(0,b.jsx)(k.SelectValue,{placeholder:v("selectMergeType")})}),(0,b.jsx)(k.SelectContent,{children:y.availableMethods.map(a=>(0,b.jsx)(k.SelectItem,{value:a,children:v(`mergeTypes.${a}`)},a))})]})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)(j.Label,{className:"mb-1.5 block",htmlFor:"merge-commit-headline",children:v("commitMessage")}),(0,b.jsx)(i.Input,{disabled:K,id:"merge-commit-headline",onChange:a=>D(a.target.value),value:C})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)(j.Label,{className:"mb-1.5 block",htmlFor:"merge-commit-body",children:v("commitDescription")}),(0,b.jsx)(m.Textarea,{className:"min-h-28",disabled:K,id:"merge-commit-body",onChange:a=>F(a.target.value),value:E})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)(j.Label,{className:"mb-1.5 block",htmlFor:"merge-email",children:v("commitEmail")}),(0,b.jsxs)(k.Select,{disabled:K,onValueChange:H,value:G,children:[(0,b.jsx)(k.SelectTrigger,{id:"merge-email",children:(0,b.jsx)(k.SelectValue,{})}),(0,b.jsxs)(k.SelectContent,{children:[(0,b.jsx)(k.SelectItem,{value:o,children:v("githubDefaultEmail")}),y.commitEmails.map(a=>(0,b.jsx)(k.SelectItem,{value:a,children:a},a))]})]})]})]})]}):(0,b.jsxs)("div",{className:"flex items-center gap-2 py-6 text-sm text-muted-foreground",children:[(0,b.jsx)(l.Spinner,{})," ",v("loadingMergeOptions")]}),(0,b.jsxs)(h.DialogFooter,{children:[(0,b.jsx)(g.Button,{disabled:K,onClick:()=>R(!1),type:"button",variant:"outline",children:v("cancelMerge")}),(0,b.jsxs)(g.Button,{disabled:I||K||!y?.canMerge||!A||!C.trim(),onClick:()=>void S(),type:"button",children:[K?(0,b.jsx)(l.Spinner,{}):(0,b.jsx)(c,{}),K?v("merging"):v("mergePullRequest")]})]})]})})]})}],205956)}];
34
-
35
- //# sourceMappingURL=src_components_github_167_ydi._.js.map
@@ -1,45 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,711241,e=>{"use strict";let t=(0,e.i(456420).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);e.s(["ArrowLeft",0,t],711241)},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"])},856522,e=>{"use strict";let t=(0,e.i(456420).default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);e.s(["Save",0,t],856522)},566595,e=>{"use strict";var t=e.i(630299);e.s(["Search",()=>t.default])},648119,e=>{"use strict";var t=e.i(560972);e.s(["MoreHorizontal",()=>t.default])},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)},59497,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function a(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return r.useCallback(function(...e){return t=>{let r=!1,i=e.map(e=>{let i=a(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():a(e[t],null)}}}}(...e),e)}var n=e.i(30030);function o(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e?.(a),!1===r||!a||!a.defaultPrevented)return t?.(a)}}"u">typeof window&&window.document&&window.document.createElement;var l=globalThis?.document?r.useLayoutEffect:()=>{};r[" useEffectEvent ".trim().toString()],r[" useInsertionEffect ".trim().toString()];var s=r[" useInsertionEffect ".trim().toString()]||l;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"),g=Symbol.for("react.lazy");function f(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 m=r[" use ".trim().toString()],h=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{var n;let o,l=(n=`Primitive.${a}`,(o=r.forwardRef((e,t)=>{var a;let o,l,{children:s,...d}=e,c=null,u=!1,g=[];f(s)&&"function"==typeof m&&(s=m(s._payload)),r.Children.forEach(s,e=>{var t;if(t=e,r.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;f(t)&&"function"==typeof m&&(t=m(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),g.push(c?.props?.children)}else g.push(e)}),c?c=r.cloneElement(c,void 0,g):!u&&1===r.Children.count(s)&&r.isValidElement(s)&&(c=s);let h=c?(a=c,(l=(o=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in o&&o.isReactWarning)?a.ref:(l=(o=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in o&&o.isReactWarning)?a.props.ref:a.props.ref||a.ref):void 0,v=i(t,h);if(!c){if(s||0===s){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 s}let x=function(e,t){let r={...t};for(let a in t){let i=e[a],n=t[a];/^on[A-Z]/.test(a)?i&&n?r[a]=(...e)=>{let t=n(...e);return i(...e),t}:i&&(r[a]=i):"style"===a?r[a]={...i,...n}:"className"===a&&(r[a]=[i,n].filter(Boolean).join(" "))}return{...e,...r}}(d,c.props??{});return c.type!==r.Fragment&&(x.ref=t?v:h),r.cloneElement(c,x)})).displayName=`${n}.Slot`,o),s=r.forwardRef((e,r)=>{let{asChild:i,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(i?l:a,{...n,ref:r})});return s.displayName=`Primitive.${a}`,{...e,[a]:s}},{}),v="Checkbox",[x,b]=(0,n.createContextScope)(v),[y,k]=x(v);function w(e){let{__scopeCheckbox:a,checked:i,children:n,defaultChecked:o,disabled:l,form:d,name:c,onCheckedChange:u,required:p,value:g="on",internal_do_not_use_render:f}=e,[m,h]=function({prop:e,defaultProp:t,onChange:a=()=>{},caller:i}){let[n,o,l]=function({defaultProp:e,onChange:t}){let[a,i]=r.useState(e),n=r.useRef(a),o=r.useRef(t);return s(()=>{o.current=t},[t]),r.useEffect(()=>{n.current!==a&&(o.current?.(a),n.current=a)},[a,n]),[a,i,o]}({defaultProp:t,onChange:a}),d=void 0!==e,c=d?e:n;{let t=r.useRef(void 0!==e);r.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,r.useCallback(t=>{if(d){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else o(t)},[d,e,o,l])]}({prop:i,defaultProp:o??!1,onChange:u,caller:v}),[x,b]=r.useState(null),[k,w]=r.useState(null),j=r.useRef(!1),E=!x||!!d||!!x.closest("form"),C={checked:m,disabled:l,setChecked:h,control:x,setControl:b,name:c,form:d,value:g,hasConsumerStoppedPropagationRef:j,required:p,defaultChecked:!N(o)&&o,isFormControl:E,bubbleInput:k,setBubbleInput:w};return(0,t.jsx)(y,{scope:a,...C,children:"function"==typeof f?f(C):n})}var j="CheckboxTrigger",E=r.forwardRef(({__scopeCheckbox:e,onKeyDown:a,onClick:n,...l},s)=>{let{control:d,value:c,disabled:u,checked:p,required:g,setControl:f,setChecked:m,hasConsumerStoppedPropagationRef:v,isFormControl:x,bubbleInput:b}=k(j,e),y=i(s,f),w=r.useRef(p);return r.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":N(p)?"mixed":p,"aria-required":g,"data-state":I(p),"data-disabled":u?"":void 0,disabled:u,value:c,...l,ref:y,onKeyDown:o(a,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:o(n,e=>{m(e=>!!N(e)||!e),b&&x&&(v.current=e.isPropagationStopped(),v.current||e.stopPropagation())})})});E.displayName=j;var C=r.forwardRef((e,r)=>{let{__scopeCheckbox:a,name:i,checked:n,defaultChecked:o,required:l,disabled:s,value:d,onCheckedChange:c,form:u,...p}=e;return(0,t.jsx)(w,{__scopeCheckbox:a,checked:n,defaultChecked:o,disabled:s,required:l,onCheckedChange:c,name:i,form:u,value:d,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(E,{...p,ref:r,__scopeCheckbox:a}),e&&(0,t.jsx)(_,{__scopeCheckbox:a})]})})});C.displayName=v;var S="CheckboxIndicator",R=r.forwardRef((e,r)=>{let{__scopeCheckbox:a,forceMount:i,...n}=e,o=k(S,a);return(0,t.jsx)(u.Presence,{present:i||N(o.checked)||!0===o.checked,children:(0,t.jsx)(h.span,{"data-state":I(o.checked),"data-disabled":o.disabled?"":void 0,...n,ref:r,style:{pointerEvents:"none",...e.style}})})});R.displayName=S;var T="CheckboxBubbleInput",_=r.forwardRef(({__scopeCheckbox:e,...a},n)=>{let{control:o,hasConsumerStoppedPropagationRef:l,checked:s,defaultChecked:u,required:p,disabled:g,name:f,value:m,form:v,bubbleInput:x,setBubbleInput:b}=k(T,e),y=i(n,b),w=(0,d.usePrevious)(s),j=(0,c.useSize)(o);r.useEffect(()=>{if(!x)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(w!==s&&e){let r=new Event("click",{bubbles:t});x.indeterminate=N(s),e.call(x,!N(s)&&s),x.dispatchEvent(r)}},[x,w,s,l]);let E=r.useRef(!N(s)&&s);return(0,t.jsx)(h.input,{type:"checkbox","aria-hidden":!0,defaultChecked:u??E.current,required:p,disabled:g,name:f,value:m,form:v,...a,tabIndex:-1,ref:y,style:{...a.style,...j,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function N(e){return"indeterminate"===e}function I(e){return N(e)?"indeterminate":e?"checked":"unchecked"}_.displayName=T,e.s(["Checkbox",0,C,"CheckboxIndicator",0,R,"Indicator",0,R,"Root",0,C,"createCheckboxScope",0,b,"unstable_BubbleInput",0,_,"unstable_CheckboxBubbleInput",0,_,"unstable_CheckboxProvider",0,w,"unstable_CheckboxTrigger",0,E,"unstable_Provider",0,w,"unstable_Trigger",0,E],388474);var D=e.i(388474),D=D,A=e.i(975157),M=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)(M.CheckIcon,{})})})}],59497)},776639,e=>{"use strict";var t=e.i(843476),r=e.i(560964),a=e.i(964053),i=e.i(519455),n=e.i(975157);function o({...e}){return(0,t.jsx)(a.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function l({className:e,...r}){return(0,t.jsx)(a.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",...r})}e.s(["Dialog",0,function({...e}){return(0,t.jsx)(a.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:s,showCloseButton:d=!0,...c}){return(0,t.jsxs)(o,{children:[(0,t.jsx)(l,{}),(0,t.jsxs)(a.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:[s,d&&(0,t.jsx)(a.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)(r.XIcon,{}),(0,t.jsx)("span",{className:"sr-only",children:"Close"})]})})]})]})},"DialogDescription",0,function({className:e,...r}){return(0,t.jsx)(a.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",...r})},"DialogFooter",0,function({className:e,showCloseButton:r=!1,children:o,...l}){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",...l,children:[o,r&&(0,t.jsx)(a.Dialog.Close,{asChild:!0,children:(0,t.jsx)(i.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,n.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...r})},"DialogTitle",0,function({className:e,...r}){return(0,t.jsx)(a.Dialog.Title,{className:(0,n.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...r})}])},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)},515281,e=>{"use strict";let t=(0,e.i(456420).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],515281)},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)},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 a=e.i(948148),i=e.i(271645),n=e.i(929592),o=e.i(519455),l=e.i(776639),s=e.i(793479),d=e.i(110204),c=e.i(967489),u=e.i(987968),p=e.i(624687),g=e.i(637611);let f="__github_account_default__";e.s(["MergePullRequestButton",0,function({pullRequest:e,onMerged:m,size:h="sm",variant:v="outline",open:x,onOpenChange:b,showTrigger:y=!0}){let k=(0,a.useTranslations)("pullRequests"),[w,j]=(0,i.useState)(!1),[E,C]=(0,i.useState)(null),[S,R]=(0,i.useState)(""),[T,_]=(0,i.useState)(""),[N,I]=(0,i.useState)(""),[D,A]=(0,i.useState)(f),[M,O]=(0,i.useState)(!1),[P,B]=(0,i.useState)(!1),[L,z]=(0,i.useState)(null),[$="",W=""]=e.repositoryNameWithOwner.split("/",2),G=x??w,F=e=>{e||(O(!1),C(null),z(null)),void 0===x&&j(e),b?.(e)};(0,i.useEffect)(()=>{if(!G)return;let t=!0,r=window.setTimeout(()=>{O(!0),C(null),z(null),(0,g.controlPlaneRequest)(`query GitHubPullRequestMergeOptions(
2
- $owner: String!
3
- $name: String!
4
- $number: Int!
5
- ) {
6
- githubPullRequestMergeOptions(
7
- owner: $owner
8
- name: $name
9
- number: $number
10
- ) {
11
- availableMethods
12
- commitEmails
13
- defaultCommitEmail
14
- defaultCommitHeadline
15
- defaultCommitBody
16
- canMerge
17
- blockedReason
18
- }
19
- }`,{owner:$,name:W,number:e.number}).then(e=>{if(!t)return;let r=e.githubPullRequestMergeOptions;C(r),R(r.availableMethods[0]??""),_(r.defaultCommitHeadline),I(r.defaultCommitBody),A(r.defaultCommitEmail??f)}).catch(e=>{t&&z(e instanceof Error?e.message:String(e))}).finally(()=>{t&&O(!1)})},0);return()=>{t=!1,window.clearTimeout(r)}},[W,G,$,e.number]);let H=async()=>{if(S&&E?.canMerge&&T.trim()){B(!0),z(null);try{let t=await (0,g.controlPlaneRequest)(`mutation MergeGitHubPullRequest(
20
- $input: MergeGitHubPullRequestInput!
21
- ) {
22
- mergeGitHubPullRequest(input: $input) {
23
- id state url mergedAt
24
- }
25
- }`,{input:{owner:$,name:W,number:e.number,method:S,commitHeadline:T,commitBody:N,authorEmail:D===f?null:D}});F(!1),await m?.(t.mergeGitHubPullRequest)}catch(e){z(e instanceof Error?e.message:String(e))}finally{B(!1)}}},V=E?.blockedReason??null;return(0,t.jsxs)(t.Fragment,{children:[y&&(0,t.jsxs)(o.Button,{onClick:e=>{e.stopPropagation(),F(!0)},size:h,type:"button",variant:v,children:[(0,t.jsx)(r,{}),k("merge")]}),(0,t.jsx)(l.Dialog,{onOpenChange:e=>{P||F(e)},open:G,children:(0,t.jsxs)(l.DialogContent,{className:"sm:max-w-xl",children:[(0,t.jsxs)(l.DialogHeader,{children:[(0,t.jsx)(l.DialogTitle,{children:k("mergePullRequest")}),(0,t.jsx)(l.DialogDescription,{children:k("mergePullRequestDescription",{repository:e.repositoryNameWithOwner,number:e.number})})]}),!M&&(E||L)?(0,t.jsxs)("div",{className:"space-y-4",children:[(L||V)&&(0,t.jsx)(n.Alert,{variant:"destructive",children:(0,t.jsx)(n.AlertDescription,{children:L||V})}),E&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(d.Label,{className:"mb-1.5 block",htmlFor:"merge-method",children:k("mergeType")}),(0,t.jsxs)(c.Select,{disabled:P||0===E.availableMethods.length,onValueChange:e=>R(e),value:S,children:[(0,t.jsx)(c.SelectTrigger,{id:"merge-method",children:(0,t.jsx)(c.SelectValue,{placeholder:k("selectMergeType")})}),(0,t.jsx)(c.SelectContent,{children:E.availableMethods.map(e=>(0,t.jsx)(c.SelectItem,{value:e,children:k(`mergeTypes.${e}`)},e))})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(d.Label,{className:"mb-1.5 block",htmlFor:"merge-commit-headline",children:k("commitMessage")}),(0,t.jsx)(s.Input,{disabled:P,id:"merge-commit-headline",onChange:e=>_(e.target.value),value:T})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(d.Label,{className:"mb-1.5 block",htmlFor:"merge-commit-body",children:k("commitDescription")}),(0,t.jsx)(p.Textarea,{className:"min-h-28",disabled:P,id:"merge-commit-body",onChange:e=>I(e.target.value),value:N})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)(d.Label,{className:"mb-1.5 block",htmlFor:"merge-email",children:k("commitEmail")}),(0,t.jsxs)(c.Select,{disabled:P,onValueChange:A,value:D,children:[(0,t.jsx)(c.SelectTrigger,{id:"merge-email",children:(0,t.jsx)(c.SelectValue,{})}),(0,t.jsxs)(c.SelectContent,{children:[(0,t.jsx)(c.SelectItem,{value:f,children:k("githubDefaultEmail")}),E.commitEmails.map(e=>(0,t.jsx)(c.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)(u.Spinner,{})," ",k("loadingMergeOptions")]}),(0,t.jsxs)(l.DialogFooter,{children:[(0,t.jsx)(o.Button,{disabled:P,onClick:()=>F(!1),type:"button",variant:"outline",children:k("cancelMerge")}),(0,t.jsxs)(o.Button,{disabled:M||P||!E?.canMerge||!S||!T.trim(),onClick:()=>void H(),type:"button",children:[P?(0,t.jsx)(u.Spinner,{}):(0,t.jsx)(r,{}),P?k("merging"):k("mergePullRequest")]})]})]})})]})}],346194)},452330,725981,e=>{"use strict";var t=e.i(456420);let r=(0,t.default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);e.s(["Code2",0,r],452330);let a=(0,t.default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);e.s(["Upload",0,a],725981)},21357,e=>{"use strict";let t=(0,e.i(456420).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);e.s(["Play",0,t],21357)},876561,e=>{"use strict";let t=(0,e.i(456420).default)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);e.s(["Archive",0,t],876561)},920950,e=>{"use strict";var t=e.i(843476),r=e.i(876561),a=e.i(93384),i=e.i(21357),n=e.i(456420);let o=(0,n.default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]),l=(0,n.default)("smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]),s=(0,n.default)("test-tube",[["path",{d:"M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5c-1.4 0-2.5-1.1-2.5-2.5V2",key:"125lnx"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M14.5 16h-5",key:"1ox875"}]]),d={archive:r.Archive,hammer:a.Hammer,play:i.Play,rocket:o,smartphone:l,"test-tube":s};e.s(["ConfigurationIcon",0,function({iconKey:e}){if(!e)return null;let r=d[e];return r?(0,t.jsx)(r,{"aria-hidden":!0,className:"size-4"}):null}],920950)},434719,e=>{"use strict";let t=String.raw`\b([A-Z][A-Z0-9_]*-\d+)\b`;e.s(["DEFAULT_JIRA_BRANCH_REGEX",0,t,"DEFAULT_WORKTREE_FETCH_INTERVAL_SECONDS",0,300,"MAX_WORKTREE_FETCH_INTERVAL_SECONDS",0,86400,"MIN_WORKTREE_FETCH_INTERVAL_SECONDS",0,60,"WORKTREE_BRANCH_JOB_KIND",0,"worktree.branch","WORKTREE_DELETE_JOB_KIND",0,"worktree.delete","WORKTREE_INSPECT_JOB_KIND",0,"worktree.inspect","WORKTREE_MOVE_CHECKOUT_JOB_KIND",0,"worktree.move.checkout","WORKTREE_MOVE_PUSH_JOB_KIND",0,"worktree.move.push","WORKTREE_OPERATION_JOB_KIND",0,"worktree.operation","WORKTREE_WATCH_JOB_KIND",0,"worktree.watch"])},851817,882505,808562,e=>{"use strict";var t=e.i(456420);let r=(0,t.default)("grid-2x2",[["path",{d:"M12 3v18",key:"108xh3"}],["path",{d:"M3 12h18",key:"1i2n21"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]);e.s(["Grid2X2",0,r],851817);let a=(0,t.default)("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]);e.s(["List",0,a],882505);var i=e.i(843476),n=e.i(271645),o=e.i(30030);function l(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}e.i(174080);var s=Symbol.for("radix.slottable"),d=Symbol.for("react.lazy");function c(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===d&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var u=n[" use ".trim().toString()],p=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{var r;let a,o=(r=`Primitive.${t}`,(a=n.forwardRef((e,t)=>{var a;let i,o,{children:d,...p}=e,g=null,f=!1,m=[];c(d)&&"function"==typeof u&&(d=u(d._payload)),n.Children.forEach(d,e=>{var t;if(t=e,n.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===s){f=!0;let t="child"in e.props?e.props.child:e.props.children;c(t)&&"function"==typeof u&&(t=u(t._payload)),g=((e,t)=>{if("child"in e.props){let t=e.props.child;return n.isValidElement(t)?n.cloneElement(t,void 0,e.props.children(t.props.children)):null}return n.isValidElement(t)?t:null})(e,t),m.push(g?.props?.children)}else m.push(e)}),g?g=n.cloneElement(g,void 0,m):!f&&1===n.Children.count(d)&&n.isValidElement(d)&&(g=d);let h=g?(a=g,(o=(i=Object.getOwnPropertyDescriptor(a.props,"ref")?.get)&&"isReactWarning"in i&&i.isReactWarning)?a.ref:(o=(i=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in i&&i.isReactWarning)?a.props.ref:a.props.ref||a.ref):void 0,v=function(...e){return n.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)}(t,h);if(!g){if(d||0===d){let e,t;throw Error(f?(e=r,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=r,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return d}let x=function(e,t){let r={...t};for(let a in t){let i=e[a],n=t[a];/^on[A-Z]/.test(a)?i&&n?r[a]=(...e)=>{let t=n(...e);return i(...e),t}:i&&(r[a]=i):"style"===a?r[a]={...i,...n}:"className"===a&&(r[a]=[i,n].filter(Boolean).join(" "))}return{...e,...r}}(p,g.props??{});return g.type!==n.Fragment&&(x.ref=t?v:h),n.cloneElement(g,x)})).displayName=`${r}.Slot`,a),d=n.forwardRef((e,r)=>{let{asChild:a,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,i.jsx)(a?o:t,{...n,ref:r})});return d.displayName=`Primitive.${t}`,{...e,[t]:d}},{}),g=e.i(842727);"u">typeof window&&window.document&&window.document.createElement;var f=globalThis?.document?n.useLayoutEffect:()=>{};n[" useEffectEvent ".trim().toString()],n[" useInsertionEffect ".trim().toString()];var m=n[" useInsertionEffect ".trim().toString()]||f;function h({prop:e,defaultProp:t,onChange:r=()=>{},caller:a}){let[i,o,l]=function({defaultProp:e,onChange:t}){let[r,a]=n.useState(e),i=n.useRef(r),o=n.useRef(t);return m(()=>{o.current=t},[t]),n.useEffect(()=>{i.current!==r&&(o.current?.(r),i.current=r)},[r,i]),[r,a,o]}({defaultProp:t,onChange:r}),s=void 0!==e,d=s?e:i;{let t=n.useRef(void 0!==e);n.useEffect(()=>{let e=t.current;if(e!==s){let t=s?"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=s},[s,a])}return[d,n.useCallback(t=>{if(s){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else o(t)},[s,e,o,l])]}Symbol("RADIX:SYNC_STATE");var v="Toggle",x=n.forwardRef((e,t)=>{let{pressed:r,defaultPressed:a,onPressedChange:n,...o}=e,[l,s]=h({prop:r,onChange:n,defaultProp:a??!1,caller:v});return(0,i.jsx)(p.button,{type:"button","aria-pressed":l,"data-state":l?"on":"off","data-disabled":e.disabled?"":void 0,...o,ref:t,onClick:function(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e?.(a),!1===r||!a||!a.defaultPrevented)return t?.(a)}}(e.onClick,()=>{e.disabled||s(!l)})})});x.displayName=v;var b=e.i(586318),y="ToggleGroup",[k,w]=(0,o.createContextScope)(y,[g.createRovingFocusGroupScope]),j=(0,g.createRovingFocusGroupScope)(),E=n.forwardRef((e,t)=>{let{type:r,...a}=e;if("single"===r)return(0,i.jsx)(R,{role:"radiogroup",...a,ref:t});if("multiple"===r)return(0,i.jsx)(T,{role:"toolbar",...a,ref:t});throw Error(`Missing prop \`type\` expected on \`${y}\``)});E.displayName=y;var[C,S]=k(y),R=n.forwardRef((e,t)=>{let{value:r,defaultValue:a,onValueChange:o=()=>{},...l}=e,[s,d]=h({prop:r,defaultProp:a??"",onChange:o,caller:y});return(0,i.jsx)(C,{scope:e.__scopeToggleGroup,type:"single",value:n.useMemo(()=>s?[s]:[],[s]),onItemActivate:d,onItemDeactivate:n.useCallback(()=>d(""),[d]),children:(0,i.jsx)(I,{...l,ref:t})})}),T=n.forwardRef((e,t)=>{let{value:r,defaultValue:a,onValueChange:o=()=>{},...l}=e,[s,d]=h({prop:r,defaultProp:a??[],onChange:o,caller:y}),c=n.useCallback(e=>d((t=[])=>[...t,e]),[d]),u=n.useCallback(e=>d((t=[])=>t.filter(t=>t!==e)),[d]);return(0,i.jsx)(C,{scope:e.__scopeToggleGroup,type:"multiple",value:s,onItemActivate:c,onItemDeactivate:u,children:(0,i.jsx)(I,{...l,ref:t})})});E.displayName=y;var[_,N]=k(y),I=n.forwardRef((e,t)=>{let{__scopeToggleGroup:r,disabled:a=!1,rovingFocus:n=!0,orientation:o,dir:l,loop:s=!0,...d}=e,c=j(r),u=(0,b.useDirection)(l),f={dir:u,...d};return(0,i.jsx)(_,{scope:r,rovingFocus:n,disabled:a,children:n?(0,i.jsx)(g.Root,{asChild:!0,...c,orientation:o,dir:u,loop:s,children:(0,i.jsx)(p.div,{...f,ref:t})}):(0,i.jsx)(p.div,{...f,ref:t})})}),D="ToggleGroupItem",A=n.forwardRef((e,t)=>{let r=S(D,e.__scopeToggleGroup),a=N(D,e.__scopeToggleGroup),o=j(e.__scopeToggleGroup),l=r.value.includes(e.value),s=a.disabled||e.disabled,d={...e,pressed:l,disabled:s},c=n.useRef(null);return a.rovingFocus?(0,i.jsx)(g.Item,{asChild:!0,...o,focusable:!s,active:l,ref:c,children:(0,i.jsx)(M,{...d,ref:t})}):(0,i.jsx)(M,{...d,ref:t})});A.displayName=D;var M=n.forwardRef((e,t)=>{let{__scopeToggleGroup:r,value:a,...n}=e,o=S(D,r),l={role:"radio","aria-checked":e.pressed,"aria-pressed":void 0},s="single"===o.type?l:void 0;return(0,i.jsx)(x,{...s,...n,ref:t,onPressedChange:e=>{e?o.onItemActivate(a):o.onItemDeactivate(a)}})});e.s(["Item",0,A,"Root",0,E,"ToggleGroup",0,E,"ToggleGroupItem",0,A,"createToggleGroupScope",0,w],459881);var O=e.i(459881),O=O,P=e.i(975157),B=e.i(225913);"u">typeof window&&window.document&&window.document.createElement;var L=globalThis?.document?n.useLayoutEffect:()=>{};n[" useEffectEvent ".trim().toString()],n[" useInsertionEffect ".trim().toString()];var z=n[" useInsertionEffect ".trim().toString()]||L;Symbol("RADIX:SYNC_STATE");var $=e.i(743556),W=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,t)=>{let r=(0,$.createSlot)(`Primitive.${t}`),a=n.forwardRef((e,a)=>{let{asChild:n,...o}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,i.jsx)(n?r:t,{...o,ref:a})});return a.displayName=`Primitive.${t}`,{...e,[t]:a}},{}),G="Toggle",F=n.forwardRef((e,t)=>{let{pressed:r,defaultPressed:a,onPressedChange:o,...l}=e,[s,d]=function({prop:e,defaultProp:t,onChange:r=()=>{},caller:a}){let[i,o,l]=function({defaultProp:e,onChange:t}){let[r,a]=n.useState(e),i=n.useRef(r),o=n.useRef(t);return z(()=>{o.current=t},[t]),n.useEffect(()=>{i.current!==r&&(o.current?.(r),i.current=r)},[r,i]),[r,a,o]}({defaultProp:t,onChange:r}),s=void 0!==e,d=s?e:i;{let t=n.useRef(void 0!==e);n.useEffect(()=>{let e=t.current;if(e!==s){let t=s?"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=s},[s,a])}return[d,n.useCallback(t=>{if(s){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else o(t)},[s,e,o,l])]}({prop:r,onChange:o,defaultProp:a??!1,caller:G});return(0,i.jsx)(W.button,{type:"button","aria-pressed":s,"data-state":s?"on":"off","data-disabled":e.disabled?"":void 0,...l,ref:t,onClick:function(e,t,{checkForDefaultPrevented:r=!0}={}){return function(a){if(e?.(a),!1===r||!a||!a.defaultPrevented)return t?.(a)}}(e.onClick,()=>{e.disabled||d(!s)})})});F.displayName=G,e.s(["Root",0,F,"Toggle",0,F],864225),e.i(864225);let H=(0,B.cva)("group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent hover:bg-muted"},size:{default:"h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",sm:"h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2"}},defaultVariants:{variant:"default",size:"default"}}),V=n.createContext({size:"default",variant:"default",spacing:2,orientation:"horizontal"});e.s(["ToggleGroup",0,function({className:e,variant:t,size:r,spacing:a=2,orientation:n="horizontal",children:o,...l}){return(0,i.jsx)(O.Root,{"data-slot":"toggle-group","data-variant":t,"data-size":r,"data-spacing":a,"data-orientation":n,style:{"--gap":a},className:(0,P.cn)("group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch",e),...l,children:(0,i.jsx)(V.Provider,{value:{variant:t,size:r,spacing:a,orientation:n},children:o})})},"ToggleGroupItem",0,function({className:e,children:t,variant:r="default",size:a="default",...o}){let l=n.useContext(V);return(0,i.jsx)(O.Item,{"data-slot":"toggle-group-item","data-variant":l.variant||r,"data-size":l.size||a,"data-spacing":l.spacing,className:(0,P.cn)("shrink-0 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t",H({variant:l.variant||r,size:l.size||a}),e),...o,children:t})}],808562)},547,e=>{"use strict";var t=e.i(843476),r=e.i(434719),a=e.i(711241),i=e.i(269846),n=e.i(741120),o=e.i(861745),l=e.i(948148),s=e.i(271645),d=e.i(778434),c=e.i(356505),u=e.i(929592),p=e.i(487486),g=e.i(519455),f=e.i(515288),m=e.i(82612),h=e.i(987968),v=e.i(520133),x=e.i(637611),b=e.i(942230),y=e.i(455329),k=e.i(756283),w=e.i(940276),j=e.i(267572);let E=`query WorktreeDetailOverview {
26
- worktreeOverview {
27
- hiddenCount
28
- settings { editorVariant updatedAt }
29
- tags { id name color createdAt updatedAt }
30
- activeMoves {
31
- id sourceWorktreeId sourceCodebaseId targetCodebaseId targetWorktreeId destinationMode
32
- branch headSha deleteSource status sourceJobId targetJobId cleanupJobId error warning
33
- createdAt updatedAt finishedAt
34
- }
35
- agents {
36
- agent { ${d.AGENT_FIELDS} }
37
- codebases {
38
- iosBuildConfigured
39
- repository { id canonicalOrigin displayOrigin name description jiraBranchRegex keepBaseBranchUpToDate createdAt updatedAt }
40
- codebase { ${y.CODEBASE_FIELDS} }
41
- worktrees { ${y.WORKTREE_FIELDS} }
42
- }
43
- }
44
- }
45
- }`;function C({entry:e,overview:i,loadError:d,onReload:m,onUpdate:y}){let E=(0,l.useTranslations)("worktreeDetail"),R=(0,l.useTranslations)("worktrees"),T=(0,o.useLocale)(),_=(0,v.useRouter)(),[N,I]=(0,s.useState)(()=>new URLSearchParams(window.location.search).get("issue")),[D,A]=(0,s.useState)(null),[M,O]=(0,s.useState)(!1),[P,B]=(0,s.useState)(!1),[L,z]=(0,s.useState)(!1),[$,W]=(0,s.useState)(null),G=(0,s.useRef)(0),{worktree:F,applyActivity:H,setUnstagedChanges:V}=(0,k.useLiveWorktree)(e.worktree),K=i.activeMoves.some(t=>t.sourceCodebaseId===e.group.codebase.id||t.targetCodebaseId===e.group.codebase.id),q="ONLINE"===e.agentGroup.agent.connectionStatus&&e.agentGroup.agent.capabilities.includes(r.WORKTREE_INSPECT_JOB_KIND)&&"AVAILABLE"===F.availability&&!F.activeJob&&!K,J="ONLINE"===e.agentGroup.agent.connectionStatus&&e.agentGroup.agent.capabilities.includes(r.WORKTREE_WATCH_JOB_KIND),U=(0,s.useCallback)(async()=>{if(!q)return;let e=++G.current;B(!0);try{let t=await (0,k.inspectWorktree)(F.id);if(e!==G.current)return;A(t),V(t.changes.some(e=>e.unstaged||e.untracked||e.conflicted)),W(null)}catch(t){e===G.current&&W(t instanceof Error?t.message:String(t))}finally{e===G.current&&B(!1)}},[q,V,F.id]),X=(0,k.useQueuedWorktreeInspection)(U);(0,s.useEffect)(()=>{if(!q)return;let e=window.setTimeout(()=>void X(),0);return()=>window.clearTimeout(e)},[q,X]);let Z=(0,s.useCallback)(e=>{H(e),q&&X()},[H,q,X]);(0,k.useWorktreeActivitySubscription)(F.id,J&&"AVAILABLE"===F.availability,Z),(0,s.useEffect)(()=>{let e=()=>I(new URLSearchParams(window.location.search).get("issue"));return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)},[]);let Y=e=>{let t,r;t=new URLSearchParams(window.location.search),e?t.set("issue",e):t.delete("issue"),r=t.toString(),window.history.pushState(null,"",`${window.location.pathname}${r?`?${r}`:""}`),I(e)},Q=(0,s.useCallback)(async()=>{await m(),q&&await X()},[q,m,X]),ee=async()=>{z(!0);try{await (0,x.controlPlaneRequest)("mutation RefreshWorktrees { refreshWorktrees }"),await Q(),W(null)}catch(e){W(e instanceof Error?e.message:String(e))}finally{z(!1)}},et={worktree:F,group:e.group,allTags:i.tags,baseRepoDirectory:e.agentGroup.agent.baseRepoDirectory,branchManagementEnabled:"ONLINE"===e.agentGroup.agent.connectionStatus&&e.agentGroup.agent.capabilities.includes("worktree.branch"),editorVariant:i.settings.editorVariant,inspectionRefreshToken:0,liveUpdatesEnabled:J,onReload:Q,onUpdate:y,onError:W,onManageTags:()=>O(!0),onOpenTicket:e=>Y(e),onDeleted:()=>_.push("/worktrees"),onMoved:e=>{e.targetWorktreeId&&_.push((0,w.worktreeDetailHref)(e.targetWorktreeId))},overview:i},er=new Intl.DateTimeFormat(T,{dateStyle:"medium",timeStyle:"short"}),ea=e=>e?er.format(new Date(e)):"—",ei=q?null:"OFFLINE"===e.agentGroup.agent.connectionStatus?E("inspectionOffline"):"AVAILABLE"!==F.availability?F.statusError||E("inspectionUnavailable"):E(F.activeJob||K?"inspectionBusy":"inspectionUnsupported");return(0,t.jsxs)("section",{className:"mx-auto flex w-full max-w-6xl flex-col gap-5",children:[(0,t.jsx)("div",{children:(0,t.jsx)(g.Button,{asChild:!0,className:"-ml-2",size:"sm",variant:"ghost",children:(0,t.jsxs)(v.Link,{href:"/worktrees",children:[(0,t.jsx)(a.ArrowLeft,{})," ",E("back")]})})}),(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsxs)("p",{className:"text-sm text-muted-foreground",children:[e.group.repository.name," · ",e.agentGroup.agent.name]}),(0,t.jsx)("h1",{className:"mt-1 truncate font-mono text-2xl font-semibold tracking-tight",children:F.branch??F.headSha?.slice(0,10)??R("detached")}),(0,t.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",title:F.folder,children:(0,j.displayedWorktreePath)(F.folder,e.agentGroup.agent.baseRepoDirectory)}),(0,t.jsxs)("div",{className:"mt-3 flex flex-wrap items-center gap-2",children:[(0,t.jsx)(p.Badge,{variant:"secondary",children:F.primary?R("primary"):E("linked")}),(0,t.jsx)(j.OriginStatusBadges,{worktree:F}),F.hasStagedChanges||F.hasUnstagedChanges?(0,t.jsx)(p.Badge,{variant:"destructive",children:R("dirty")}):null,"AVAILABLE"!==F.availability&&(0,t.jsx)(p.Badge,{variant:"destructive",children:F.availability})]}),(F.ticketKey||F.ticketTitle)&&(0,t.jsx)(j.WorktreeTicketLink,{...et})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsxs)(g.Button,{disabled:L,onClick:()=>void ee(),variant:"outline",children:[(0,t.jsx)(n.RefreshCw,{className:L?"animate-spin":void 0}),E("refresh")]}),(0,t.jsx)(j.WorktreeMenus,{...et})]})]}),(d||$||F.statusError)&&(0,t.jsx)(u.Alert,{variant:"destructive",children:(0,t.jsx)(u.AlertDescription,{children:$||d||F.statusError})}),ei&&(0,t.jsx)(u.Alert,{children:(0,t.jsx)(u.AlertDescription,{children:ei})}),(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{className:"border-b",children:(0,t.jsx)(f.CardTitle,{children:E("actions")})}),(0,t.jsx)(f.CardContent,{children:(0,t.jsx)(j.ActionRow,{...et,onCompleted:Q})})]}),(0,t.jsxs)("div",{className:"grid gap-5 lg:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]",children:[(0,t.jsxs)(f.Card,{className:"min-w-0",children:[(0,t.jsx)(f.CardHeader,{className:"border-b",children:(0,t.jsx)(f.CardTitle,{children:E("workingTree")})}),(0,t.jsx)(f.CardContent,{children:P&&!D?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(h.Spinner,{})," ",R("loadingDetails")]}):D?(0,t.jsx)(b.WorktreeDetailPanel,{detail:D}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:q?E("inspectionFailed"):"—"})})]}),(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{className:"border-b",children:(0,t.jsx)(f.CardTitle,{children:E("overview")})}),(0,t.jsx)(f.CardContent,{children:(0,t.jsxs)("dl",{className:"space-y-3 text-sm",children:[(0,t.jsx)(S,{label:E("repository"),children:(0,t.jsx)(v.Link,{className:"text-primary hover:underline",href:`/codebases/${e.group.codebase.id}`,children:e.group.repository.name})}),(0,t.jsx)(S,{label:E("origin"),mono:!0,children:e.group.repository.displayOrigin}),(0,t.jsxs)(S,{label:E("agent"),children:[e.agentGroup.agent.name," ·"," ",e.agentGroup.agent.hostname]}),(0,t.jsx)(S,{label:E("folder"),mono:!0,children:F.folder}),(0,t.jsx)(S,{label:E("head"),mono:!0,children:F.headSha??"—"}),(0,t.jsx)(S,{label:E("upstream"),mono:!0,children:F.upstream??"—"}),(0,t.jsx)(S,{label:E("originStatus"),children:(0,t.jsx)(j.OriginStatusBadges,{worktree:F})}),(0,t.jsx)(S,{label:E("baseStatus"),children:(0,t.jsx)(j.BaseFreshnessBadge,{worktree:F})}),(0,t.jsx)(S,{label:E("lastChecked"),children:ea(F.lastCheckedAt)}),(0,t.jsx)(S,{label:E("lastFetched"),children:ea(e.group.codebase.lastFetchedAt)})]})})]}),(0,t.jsxs)(f.Card,{children:[(0,t.jsx)(f.CardHeader,{className:"border-b",children:(0,t.jsx)(f.CardTitle,{children:E("management")})}),(0,t.jsx)(f.CardContent,{children:(0,t.jsx)(j.WorktreeMetadata,{...et})})]})]})]}),(0,t.jsx)(c.JiraTicketDrawer,{issueKey:N,onClose:()=>Y(null)}),(0,t.jsx)(j.TagManagerDialog,{onChanged:m,onOpenChange:O,open:M,tags:i.tags})]})}function S({label:e,children:r,mono:a=!1}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("dt",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("dd",{className:a?"mt-0.5 break-all font-mono text-xs":"mt-0.5",children:r})]})}e.s(["WorktreeDetailPage",0,function({worktreeId:e}){let r=(0,l.useTranslations)("worktreeDetail"),[n,o]=(0,s.useState)(null),[d,c]=(0,s.useState)(!0),[p,f]=(0,s.useState)(null),b=(0,s.useRef)(0),y=(0,s.useRef)(null),k=(0,s.useCallback)(async()=>{let t=++b.current;try{let r=await (0,x.controlPlaneRequest)(E);if(t!==b.current)return;y.current=(0,w.findWorktreeOverviewEntry)(r.worktreeOverview,e)?.group.codebase.id??null,o(r.worktreeOverview),f(null)}catch(e){t===b.current&&f(e instanceof Error?e.message:String(e))}finally{t===b.current&&c(!1)}},[e]);(0,s.useEffect)(()=>{y.current=null;let t=window.setTimeout(()=>void k(),0),r=window.setInterval(()=>void k(),3e4),a=(0,x.controlPlaneSubscriptions)().subscribe({query:"subscription WorktreeDetailChanged { worktreeOverviewChanged { worktreeId codebaseId } }"},{next:t=>{let r=t.data?.worktreeOverviewChanged;r&&null!==r.worktreeId&&r.worktreeId!==e&&(null===r.codebaseId||r.codebaseId!==y.current)||k()},error:()=>void 0,complete:()=>void 0});return()=>{window.clearTimeout(t),window.clearInterval(r),b.current+=1,a()}},[k,e]);let j=(0,s.useMemo)(()=>n?(0,w.findWorktreeOverviewEntry)(n,e):null,[n,e]),S=(0,s.useCallback)(e=>{o(t=>t?{...t,agents:t.agents.map(t=>({...t,codebases:t.codebases.map(t=>({...t,worktrees:t.worktrees.map(t=>t.id===e.id?{...t,...e,ticketKey:e.ticketKey??t.ticketKey,ticketTitle:e.ticketTitle??t.ticketTitle,ticketStatus:e.ticketStatus??t.ticketStatus,pullRequest:e.pullRequest??t.pullRequest}:t)}))}))}:t)},[]);return d&&!n?(0,t.jsxs)("p",{className:"mx-auto flex max-w-6xl items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(h.Spinner,{})," ",r("loading")]}):n&&j?(0,t.jsx)(C,{entry:j,loadError:p,onReload:k,onUpdate:S,overview:n},j.worktree.id):(0,t.jsxs)("section",{className:"mx-auto w-full max-w-6xl space-y-5",children:[p&&(0,t.jsx)(u.Alert,{variant:"destructive",children:(0,t.jsx)(u.AlertDescription,{children:p})}),(0,t.jsxs)(m.Empty,{className:"border py-12",children:[(0,t.jsxs)(m.EmptyHeader,{children:[(0,t.jsx)(m.EmptyMedia,{variant:"icon",children:(0,t.jsx)(i.GitBranch,{})}),(0,t.jsx)(m.EmptyTitle,{children:r("notFound")}),(0,t.jsx)(m.EmptyDescription,{children:r("notFoundDescription")})]}),(0,t.jsx)(g.Button,{asChild:!0,className:"mt-4",variant:"outline",children:(0,t.jsxs)(v.Link,{href:"/worktrees",children:[(0,t.jsx)(a.ArrowLeft,{})," ",r("back")]})})]})]})}])}]);