@ai-development-environment/server 0.0.29 → 0.0.31

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 (357) hide show
  1. package/package.json +1 -1
  2. package/prisma-runtime/prisma/migrations/20260719010000_add_build_reports/migration.sql +29 -0
  3. package/prisma-runtime/prisma/schema.prisma +23 -0
  4. package/standalone/.next/BUILD_ID +1 -1
  5. package/standalone/.next/app-path-routes-manifest.json +3 -0
  6. package/standalone/.next/build-manifest.json +6 -6
  7. package/standalone/.next/prerender-manifest.json +3 -3
  8. package/standalone/.next/routes-manifest.json +26 -0
  9. package/standalone/.next/server/app/[locale]/actions/page/build-manifest.json +3 -3
  10. package/standalone/.next/server/app/[locale]/actions/page.js.nft.json +1 -1
  11. package/standalone/.next/server/app/[locale]/actions/page_client-reference-manifest.js +1 -1
  12. package/standalone/.next/server/app/[locale]/agents/[id]/page/build-manifest.json +3 -3
  13. package/standalone/.next/server/app/[locale]/agents/[id]/page.js.nft.json +1 -1
  14. package/standalone/.next/server/app/[locale]/agents/[id]/page_client-reference-manifest.js +1 -1
  15. package/standalone/.next/server/app/[locale]/agents/page/build-manifest.json +3 -3
  16. package/standalone/.next/server/app/[locale]/agents/page.js.nft.json +1 -1
  17. package/standalone/.next/server/app/[locale]/agents/page_client-reference-manifest.js +1 -1
  18. package/standalone/.next/server/app/[locale]/build-data/page/build-manifest.json +3 -3
  19. package/standalone/.next/server/app/[locale]/build-data/page.js.nft.json +1 -1
  20. package/standalone/.next/server/app/[locale]/build-data/page_client-reference-manifest.js +1 -1
  21. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/app-paths-manifest.json +3 -0
  22. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/build-manifest.json +16 -0
  23. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/next-font-manifest.json +11 -0
  24. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/react-loadable-manifest.json +1 -0
  25. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page/server-reference-manifest.json +4 -0
  26. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js +16 -0
  27. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.map +5 -0
  28. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page.js.nft.json +1 -0
  29. package/standalone/.next/server/app/[locale]/builds/[buildId]/coverage/page_client-reference-manifest.js +3 -0
  30. package/standalone/.next/server/app/[locale]/builds/[buildId]/page/build-manifest.json +3 -3
  31. package/standalone/.next/server/app/[locale]/builds/[buildId]/page.js.nft.json +1 -1
  32. package/standalone/.next/server/app/[locale]/builds/[buildId]/page_client-reference-manifest.js +1 -1
  33. package/standalone/.next/server/app/[locale]/builds/page/build-manifest.json +3 -3
  34. package/standalone/.next/server/app/[locale]/builds/page.js.nft.json +1 -1
  35. package/standalone/.next/server/app/[locale]/builds/page_client-reference-manifest.js +1 -1
  36. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page/build-manifest.json +3 -3
  37. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page.js.nft.json +1 -1
  38. package/standalone/.next/server/app/[locale]/codebases/[codebaseId]/page_client-reference-manifest.js +1 -1
  39. package/standalone/.next/server/app/[locale]/codebases/page/build-manifest.json +3 -3
  40. package/standalone/.next/server/app/[locale]/codebases/page.js.nft.json +1 -1
  41. package/standalone/.next/server/app/[locale]/codebases/page_client-reference-manifest.js +1 -1
  42. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page/build-manifest.json +3 -3
  43. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page.js.nft.json +1 -1
  44. package/standalone/.next/server/app/[locale]/codebases/repositories/[repositoryId]/page_client-reference-manifest.js +1 -1
  45. package/standalone/.next/server/app/[locale]/comments/page/build-manifest.json +3 -3
  46. package/standalone/.next/server/app/[locale]/comments/page.js.nft.json +1 -1
  47. package/standalone/.next/server/app/[locale]/comments/page_client-reference-manifest.js +1 -1
  48. package/standalone/.next/server/app/[locale]/jira/cache/page/build-manifest.json +3 -3
  49. package/standalone/.next/server/app/[locale]/jira/cache/page.js.nft.json +1 -1
  50. package/standalone/.next/server/app/[locale]/jira/cache/page_client-reference-manifest.js +1 -1
  51. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page/build-manifest.json +3 -3
  52. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page.js.nft.json +1 -1
  53. package/standalone/.next/server/app/[locale]/jira/cache/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  54. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page/build-manifest.json +3 -3
  55. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page.js.nft.json +1 -1
  56. package/standalone/.next/server/app/[locale]/jira/tickets/[issueKey]/page_client-reference-manifest.js +1 -1
  57. package/standalone/.next/server/app/[locale]/jira/tickets/page/build-manifest.json +3 -3
  58. package/standalone/.next/server/app/[locale]/jira/tickets/page.js.nft.json +1 -1
  59. package/standalone/.next/server/app/[locale]/jira/tickets/page_client-reference-manifest.js +1 -1
  60. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page/build-manifest.json +3 -3
  61. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page.js.nft.json +1 -1
  62. package/standalone/.next/server/app/[locale]/jobs/[jobId]/page_client-reference-manifest.js +1 -1
  63. package/standalone/.next/server/app/[locale]/page/build-manifest.json +3 -3
  64. package/standalone/.next/server/app/[locale]/page.js.nft.json +1 -1
  65. package/standalone/.next/server/app/[locale]/page_client-reference-manifest.js +1 -1
  66. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page/build-manifest.json +3 -3
  67. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page.js.nft.json +1 -1
  68. package/standalone/.next/server/app/[locale]/pull-requests/[owner]/[repository]/[number]/page_client-reference-manifest.js +1 -1
  69. package/standalone/.next/server/app/[locale]/pull-requests/page/build-manifest.json +3 -3
  70. package/standalone/.next/server/app/[locale]/pull-requests/page.js.nft.json +1 -1
  71. package/standalone/.next/server/app/[locale]/pull-requests/page_client-reference-manifest.js +1 -1
  72. package/standalone/.next/server/app/[locale]/settings/page/build-manifest.json +3 -3
  73. package/standalone/.next/server/app/[locale]/settings/page.js.nft.json +1 -1
  74. package/standalone/.next/server/app/[locale]/settings/page_client-reference-manifest.js +1 -1
  75. package/standalone/.next/server/app/[locale]/skills/[skillId]/page/build-manifest.json +3 -3
  76. package/standalone/.next/server/app/[locale]/skills/[skillId]/page.js.nft.json +1 -1
  77. package/standalone/.next/server/app/[locale]/skills/[skillId]/page_client-reference-manifest.js +1 -1
  78. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page/build-manifest.json +3 -3
  79. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page.js.nft.json +1 -1
  80. package/standalone/.next/server/app/[locale]/skills/groups/[groupId]/page_client-reference-manifest.js +1 -1
  81. package/standalone/.next/server/app/[locale]/skills/groups/page/build-manifest.json +3 -3
  82. package/standalone/.next/server/app/[locale]/skills/groups/page.js.nft.json +1 -1
  83. package/standalone/.next/server/app/[locale]/skills/groups/page_client-reference-manifest.js +1 -1
  84. package/standalone/.next/server/app/[locale]/skills/page/build-manifest.json +3 -3
  85. package/standalone/.next/server/app/[locale]/skills/page.js.nft.json +1 -1
  86. package/standalone/.next/server/app/[locale]/skills/page_client-reference-manifest.js +1 -1
  87. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page/build-manifest.json +3 -3
  88. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page.js.nft.json +1 -1
  89. package/standalone/.next/server/app/[locale]/skills/sync/[runId]/page_client-reference-manifest.js +1 -1
  90. package/standalone/.next/server/app/[locale]/tools/page/build-manifest.json +3 -3
  91. package/standalone/.next/server/app/[locale]/tools/page.js.nft.json +1 -1
  92. package/standalone/.next/server/app/[locale]/tools/page_client-reference-manifest.js +1 -1
  93. package/standalone/.next/server/app/[locale]/usage/page/build-manifest.json +3 -3
  94. package/standalone/.next/server/app/[locale]/usage/page.js.nft.json +1 -1
  95. package/standalone/.next/server/app/[locale]/usage/page_client-reference-manifest.js +1 -1
  96. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page/build-manifest.json +3 -3
  97. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page.js.nft.json +1 -1
  98. package/standalone/.next/server/app/[locale]/worktrees/[worktreeId]/page_client-reference-manifest.js +1 -1
  99. package/standalone/.next/server/app/[locale]/worktrees/page/build-manifest.json +3 -3
  100. package/standalone/.next/server/app/[locale]/worktrees/page.js.nft.json +1 -1
  101. package/standalone/.next/server/app/[locale]/worktrees/page_client-reference-manifest.js +1 -1
  102. package/standalone/.next/server/app/_global-error/page/build-manifest.json +3 -3
  103. package/standalone/.next/server/app/_global-error.html +1 -1
  104. package/standalone/.next/server/app/_global-error.rsc +1 -1
  105. package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  106. package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  107. package/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  108. package/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  109. package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  110. package/standalone/.next/server/app/_not-found/page/build-manifest.json +3 -3
  111. package/standalone/.next/server/app/_not-found.html +1 -1
  112. package/standalone/.next/server/app/_not-found.rsc +1 -1
  113. package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  114. package/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  115. package/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  116. package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  117. package/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  118. package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  119. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js +1 -1
  120. package/standalone/.next/server/app/api/build-artifact-uploads/[uploadId]/route.js.nft.json +1 -1
  121. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route/app-paths-manifest.json +3 -0
  122. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route/build-manifest.json +9 -0
  123. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route/server-reference-manifest.json +4 -0
  124. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js +11 -0
  125. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js.map +5 -0
  126. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js.nft.json +1 -0
  127. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route_client-reference-manifest.js +3 -0
  128. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js +4 -3
  129. package/standalone/.next/server/app/api/builds/[buildId]/artifacts/[artifactId]/route.js.nft.json +1 -1
  130. package/standalone/.next/server/app/api/codebases/by-path/route.js.nft.json +1 -1
  131. package/standalone/.next/server/app/api/codebases/route.js.nft.json +1 -1
  132. package/standalone/.next/server/app/api/graphql/route.js.nft.json +1 -1
  133. package/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  134. package/standalone/.next/server/app/api/tools/call/route.js.nft.json +1 -1
  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 +3 -0
  144. package/standalone/.next/server/chunks/07_e_builds_[buildId]_artifacts_[artifactId]_manifest_plist_route_actions_18mzaf3.js +3 -0
  145. package/standalone/.next/server/chunks/1oeh_server_app_api_worktrees_[worktreeId]_diff-image_route_actions_0nie5n3.js +3 -0
  146. package/standalone/.next/server/chunks/[root-of-the-server]__08mnmfs._.js +3 -0
  147. package/standalone/.next/server/chunks/[root-of-the-server]__0906ea6._.js +3 -0
  148. package/standalone/.next/server/chunks/{[root-of-the-server]__0-ypkf7._.js → [root-of-the-server]__09v6swg._.js} +1 -1
  149. package/standalone/.next/server/chunks/{[root-of-the-server]__1wtng3p._.js → [root-of-the-server]__0aiyd05._.js} +1 -1
  150. package/standalone/.next/server/chunks/{[root-of-the-server]__09skp6r._.js → [root-of-the-server]__0cz4ap5._.js} +1 -1
  151. package/standalone/.next/server/chunks/[root-of-the-server]__0nvcazp._.js +3 -0
  152. package/standalone/.next/server/chunks/[root-of-the-server]__12807ia._.js +3 -0
  153. package/standalone/.next/server/chunks/[root-of-the-server]__15_clsj._.js +3 -0
  154. package/standalone/.next/server/chunks/[root-of-the-server]__1csx222._.js +3 -0
  155. package/standalone/.next/server/chunks/[root-of-the-server]__1ix62p0._.js +122 -0
  156. package/standalone/.next/server/chunks/[root-of-the-server]__1j-hk6b._.js +3 -0
  157. package/standalone/.next/server/chunks/{[root-of-the-server]__15aat79._.js → [root-of-the-server]__1j0u03u._.js} +1 -1
  158. package/standalone/.next/server/chunks/{[root-of-the-server]__0c02fce._.js → [root-of-the-server]__1oa-sy6._.js} +2 -2
  159. package/standalone/.next/server/chunks/[root-of-the-server]__1qmvsu_._.js +3 -0
  160. package/standalone/.next/server/chunks/[root-of-the-server]__1vxtcsq._.js +3 -0
  161. package/standalone/.next/server/chunks/[root-of-the-server]__1w59u6o._.js +3 -0
  162. package/standalone/.next/server/chunks/[root-of-the-server]__1z-3x8k._.js +3 -0
  163. package/standalone/.next/server/chunks/_0exkna-._.js +193 -8
  164. package/standalone/.next/server/chunks/_0jurkow._.js +1 -1
  165. package/standalone/.next/server/chunks/_0rx5rfm._.js +1 -1
  166. package/standalone/.next/server/chunks/_0tufgj0._.js +263 -78
  167. package/standalone/.next/server/chunks/_0w2eghf._.js +193 -8
  168. package/standalone/.next/server/chunks/_152rnkf._.js +17 -17
  169. package/standalone/.next/server/chunks/_16x77b_._.js +1 -1
  170. package/standalone/.next/server/chunks/_1dbqy8c._.js +17 -17
  171. package/standalone/.next/server/chunks/_1vrixpc._.js +17 -17
  172. package/standalone/.next/server/chunks/_1yfz-9u._.js +17 -17
  173. package/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_08x37wy.js +6 -0
  174. package/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_0eghv0a.js +3 -0
  175. package/standalone/.next/server/chunks/src_0o4-snj._.js +1 -1
  176. package/standalone/.next/server/chunks/ssr/1oeh_server_app_[locale]_builds_[buildId]_coverage_page_actions_20i_0zd.js +3 -0
  177. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__08bbv6z._.js +9 -0
  178. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ckj6wg._.js +13 -0
  179. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0eit075._.js +3 -0
  180. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qy28ku._.js +3 -0
  181. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0tsac-e._.js +15 -0
  182. package/standalone/.next/server/chunks/ssr/{_19fwji0._.js → [root-of-the-server]__0uo4dhz._.js} +2 -2
  183. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__15v1geo._.js +3 -0
  184. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1qm_j4s._.js +3 -0
  185. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1s6_fta._.js +3 -0
  186. package/standalone/.next/server/chunks/ssr/_0-o77zz._.js +3 -0
  187. package/standalone/.next/server/chunks/ssr/_00m30gw._.js +3 -0
  188. package/standalone/.next/server/chunks/ssr/_03961l6._.js +3 -0
  189. package/standalone/.next/server/chunks/ssr/{_00ye62k._.js → _08q5hnx._.js} +2 -2
  190. package/standalone/.next/server/chunks/ssr/_093--4s._.js +3 -0
  191. package/standalone/.next/server/chunks/ssr/{_1kaz2gq._.js → _09lh67h._.js} +2 -2
  192. package/standalone/.next/server/chunks/ssr/_0a1ligo._.js +3 -0
  193. package/standalone/.next/server/chunks/ssr/{_1h3p6oi._.js → _0cw_tqx._.js} +2 -2
  194. package/standalone/.next/server/chunks/ssr/_0dq-84j._.js +22 -0
  195. package/standalone/.next/server/chunks/ssr/_0dy1ovj._.js +3 -0
  196. package/standalone/.next/server/chunks/ssr/_0ezo890._.js +3 -0
  197. package/standalone/.next/server/chunks/ssr/{_1_1j9nd._.js → _0id1774._.js} +3 -3
  198. package/standalone/.next/server/chunks/ssr/_0j48up8._.js +1 -1
  199. package/standalone/.next/server/chunks/ssr/_0nhtqty._.js +1 -1
  200. package/standalone/.next/server/chunks/ssr/_0oh246z._.js +3 -0
  201. package/standalone/.next/server/chunks/ssr/_0q8sy0w._.js +3 -0
  202. package/standalone/.next/server/chunks/ssr/_0qra30j._.js +3 -0
  203. package/standalone/.next/server/chunks/ssr/_0t2jwg3._.js +109 -0
  204. package/standalone/.next/server/chunks/ssr/{_1zyjq9y._.js → _0ufkrvm._.js} +2 -2
  205. package/standalone/.next/server/chunks/ssr/{_07tglcd._.js → _0vjihfb._.js} +2 -10
  206. package/standalone/.next/server/chunks/ssr/_0xh-lyy._.js +3 -0
  207. package/standalone/.next/server/chunks/ssr/_15erjna._.js +3 -0
  208. package/standalone/.next/server/chunks/ssr/_17a3xuq._.js +3 -0
  209. package/standalone/.next/server/chunks/ssr/_17p59oz._.js +1 -1
  210. package/standalone/.next/server/chunks/ssr/_1bzibio._.js +109 -0
  211. package/standalone/.next/server/chunks/ssr/{_12ws_f2._.js → _1c2fde9._.js} +2 -2
  212. package/standalone/.next/server/chunks/ssr/{_0mr9u9p._.js → _1dnm1d4._.js} +2 -2
  213. package/standalone/.next/server/chunks/ssr/_1ekznx8._.js +3 -0
  214. package/standalone/.next/server/chunks/ssr/{_1r2rmfp._.js → _1f5k6bj._.js} +2 -2
  215. package/standalone/.next/server/chunks/ssr/_1k1tyz4._.js +3 -0
  216. package/standalone/.next/server/chunks/ssr/_1och_zk._.js +3 -0
  217. package/standalone/.next/server/chunks/ssr/{_0xrpdyy._.js → _1tpguta._.js} +2 -2
  218. package/standalone/.next/server/chunks/ssr/_1v1lo7c._.js +3 -0
  219. package/standalone/.next/server/chunks/ssr/_1vv-dg-._.js +3 -0
  220. package/standalone/.next/server/chunks/ssr/_1zgu74l._.js +1 -1
  221. package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud._.js +1 -1
  222. package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-._.js +1 -1
  223. package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd._.js +1 -1
  224. package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0i._.js +1 -1
  225. package/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1uzalot.js +4 -0
  226. package/standalone/.next/server/chunks/ssr/src_components_builds_build-detail-page_tsx_0q1lvps._.js +25 -9
  227. package/standalone/.next/server/chunks/ssr/src_components_builds_coverage-report-page_tsx_1nhwba1._.js +11 -0
  228. package/standalone/.next/server/chunks/ssr/src_components_codebases_repository-detail-page_tsx_20_7wk_._.js +5 -5
  229. package/standalone/.next/server/chunks/ssr/src_components_jira_cache-page_tsx_1znt1yl._.js +1 -1
  230. package/standalone/.next/server/chunks/ssr/src_components_skills_skill-sync-page_tsx_15sidhb._.js +1 -1
  231. package/standalone/.next/server/chunks/ssr/src_components_skills_skills-page_tsx_0o1nlbg._.js +3 -3
  232. package/standalone/.next/server/chunks/ssr/src_components_worktrees_worktree-detail-page_tsx_1oexgu_._.js +13 -5
  233. package/standalone/.next/server/functions-config-manifest.json +7 -1
  234. package/standalone/.next/server/middleware-build-manifest.js +6 -6
  235. package/standalone/.next/server/next-font-manifest.js +1 -1
  236. package/standalone/.next/server/next-font-manifest.json +4 -0
  237. package/standalone/.next/server/pages/404.html +1 -1
  238. package/standalone/.next/server/pages/500.html +1 -1
  239. package/standalone/.next/server/server-reference-manifest.js +1 -1
  240. package/standalone/.next/server/server-reference-manifest.json +1 -1
  241. package/standalone/.next/static/chunks/08ujwkhzkokhf.js +1 -0
  242. package/standalone/.next/static/chunks/{16tfdsma_h0r5.js → 0a82bgw37ev__.js} +1 -1
  243. package/standalone/.next/static/chunks/0cw4z7_m01m5f.js +31 -0
  244. package/standalone/.next/static/chunks/0emxr8tr7kji0.js +33 -0
  245. package/standalone/.next/static/chunks/0h8zu6aywqh1-.js +27 -0
  246. package/standalone/.next/static/chunks/0hwbkceik59kx.js +35 -0
  247. package/standalone/.next/static/chunks/0mq066ue0yufb.js +7 -0
  248. package/standalone/.next/static/chunks/0ng892ycfzv2q.js +1 -0
  249. package/standalone/.next/static/chunks/0tgtji0dbbefa.js +107 -0
  250. package/standalone/.next/static/chunks/15_8kla24ff9f.js +1 -0
  251. package/standalone/.next/static/chunks/16-l4kp9o217d.js +1 -0
  252. package/standalone/.next/static/chunks/175269y15-grc.js +48 -0
  253. package/standalone/.next/static/chunks/1c7ci5ai5qyfo.js +1 -0
  254. package/standalone/.next/static/chunks/1egccqmgk3kbi.js +1 -0
  255. package/standalone/.next/static/chunks/1gwvywh0e6i17.js +3 -0
  256. package/standalone/.next/static/chunks/1hehq94hslvbl.js +7 -0
  257. package/standalone/.next/static/chunks/1k5cw41bd4e5r.js +51 -0
  258. package/standalone/.next/static/chunks/{2rjf8o4g23no8.js → 1mprxk0uebv70.js} +1 -1
  259. package/standalone/.next/static/chunks/1rus13s58mkxy.js +1 -0
  260. package/standalone/.next/static/chunks/{2fzxwi39odugq.js → 1rwqeg_l_plzt.js} +1 -1
  261. package/standalone/.next/static/chunks/1u_jwc-bo10k3.js +1 -0
  262. package/standalone/.next/static/chunks/1w_zvfx_jdyv_.js +29 -0
  263. package/standalone/.next/static/chunks/2-wrd12dmwbo-.js +1 -0
  264. package/standalone/.next/static/chunks/208k3moxxd_53.js +51 -0
  265. package/standalone/.next/static/chunks/23kut2_l2y2-w.js +9 -0
  266. package/standalone/.next/static/chunks/{1nnp0crt0mi_-.js → 23xyv764-kx8z.js} +12 -12
  267. package/standalone/.next/static/chunks/{1wihkuyju-wa-.js → 25haryfoj4x3h.js} +1 -1
  268. package/standalone/.next/static/chunks/{0fr0zp4cwlyrr.js → 28ljy-uz6n_g9.js} +2 -2
  269. package/standalone/.next/static/chunks/{4013cp3x6bvuw.js → 2__bi79el56lb.js} +5 -5
  270. package/standalone/.next/static/chunks/2aq80hyo4l8a2.js +7 -0
  271. package/standalone/.next/static/chunks/{24a_ux27e8jj4.js → 2l_wayk-ioguc.js} +1 -1
  272. package/standalone/.next/static/chunks/2swvzbwm_dr9y.js +1 -0
  273. package/standalone/.next/static/chunks/2zwijj9t6y7gn.js +7 -0
  274. package/standalone/.next/static/chunks/{0m26h4h36cb_0.js → 3120xcqaqci82.js} +1 -1
  275. package/standalone/.next/static/chunks/{3-u7pvogc5_bx.js → 315cis1es_5t3.js} +12 -12
  276. package/standalone/.next/static/chunks/321feys_9vp2v.js +33 -0
  277. package/standalone/.next/static/chunks/{0d-e51sawr2y8.js → 34oyci46fsc5w.js} +1 -1
  278. package/standalone/.next/static/chunks/37mczlawlcx5l.js +1 -0
  279. package/standalone/.next/static/chunks/398uw5_4-ciaz.css +1 -0
  280. package/standalone/.next/static/chunks/{1tcqtaedz7922.js → 3d4ijy7zglgv5.js} +1 -1
  281. package/standalone/.next/static/chunks/3ir4b8po439x7.js +40 -0
  282. package/standalone/.next/static/chunks/3l2g83119oyl0.js +1 -0
  283. package/standalone/.next/static/chunks/3r-6igcofcwxj.js +107 -0
  284. package/standalone/.next/static/chunks/{0m--47yk9j-ec.js → 3tycetq7o8g3h.js} +1 -1
  285. package/standalone/.next/static/chunks/{0biu8z1f8c42u.js → 40ovzayigkz_-.js} +1 -1
  286. package/standalone/.next/static/chunks/41wq-96yyl0uw.js +1 -0
  287. package/standalone/.next/static/chunks/44xu63hsh11xp.js +1 -0
  288. package/standalone/.next/static/chunks/{turbopack-1rw7om86c18dg.js → turbopack-1v9ogj_5hv56l.js} +1 -1
  289. package/standalone/src/services/builds/artifact-cache.test.ts +241 -0
  290. package/standalone/src/services/builds/artifact-cache.ts +235 -0
  291. package/standalone/src/services/builds/artifact-transfer.ts +2 -1
  292. package/standalone/src/services/builds/builds.service.test.ts +55 -0
  293. package/standalone/src/services/builds/builds.service.ts +499 -17
  294. package/standalone/.next/server/chunks/[root-of-the-server]__02vqwey._.js +0 -3
  295. package/standalone/.next/server/chunks/[root-of-the-server]__1oahp4o._.js +0 -122
  296. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0361lgt._.js +0 -33
  297. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__06f05jg._.js +0 -3
  298. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ay4_3d._.js +0 -37
  299. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dm8osz._.js +0 -3
  300. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1349-us._.js +0 -3
  301. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1xv798-._.js +0 -3
  302. package/standalone/.next/server/chunks/ssr/[root-of-the-server]__1z955gh._.js +0 -3
  303. package/standalone/.next/server/chunks/ssr/_0bvpmhm._.js +0 -101
  304. package/standalone/.next/server/chunks/ssr/_0eb36qa._.js +0 -3
  305. package/standalone/.next/server/chunks/ssr/_0ndnmkz._.js +0 -3
  306. package/standalone/.next/server/chunks/ssr/_0nm6upn._.js +0 -3
  307. package/standalone/.next/server/chunks/ssr/_0pe56xv._.js +0 -3
  308. package/standalone/.next/server/chunks/ssr/_0quhjav._.js +0 -3
  309. package/standalone/.next/server/chunks/ssr/_0w05v7m._.js +0 -3
  310. package/standalone/.next/server/chunks/ssr/_0xozjkz._.js +0 -3
  311. package/standalone/.next/server/chunks/ssr/_1-1mnp6._.js +0 -3
  312. package/standalone/.next/server/chunks/ssr/_1-7r8vu._.js +0 -3
  313. package/standalone/.next/server/chunks/ssr/_1-grolz._.js +0 -3
  314. package/standalone/.next/server/chunks/ssr/_10evhql._.js +0 -3
  315. package/standalone/.next/server/chunks/ssr/_142x9wn._.js +0 -22
  316. package/standalone/.next/server/chunks/ssr/_1_ta7g1._.js +0 -3
  317. package/standalone/.next/server/chunks/ssr/_1ey5mmy._.js +0 -3
  318. package/standalone/.next/server/chunks/ssr/_1fdyu2w._.js +0 -3
  319. package/standalone/.next/server/chunks/ssr/_1g3i459._.js +0 -15
  320. package/standalone/.next/server/chunks/ssr/_1g_aflc._.js +0 -3
  321. package/standalone/.next/server/chunks/ssr/_1lcwubl._.js +0 -3
  322. package/standalone/.next/server/chunks/ssr/_1lseili._.js +0 -3
  323. package/standalone/.next/server/chunks/ssr/_1za3z6k._.js +0 -101
  324. package/standalone/.next/server/chunks/ssr/_20ufqtr._.js +0 -3
  325. package/standalone/.next/static/chunks/0a3s519wuzjet.js +0 -1
  326. package/standalone/.next/static/chunks/0newuocvg03xy.js +0 -3
  327. package/standalone/.next/static/chunks/0rlomhlt6030e.js +0 -1
  328. package/standalone/.next/static/chunks/1802j8gq2g47d.js +0 -7
  329. package/standalone/.next/static/chunks/1_tnhhn4f122y.js +0 -9
  330. package/standalone/.next/static/chunks/1eny65xy2ho48.js +0 -1
  331. package/standalone/.next/static/chunks/1joeb4m-mmn69.js +0 -7
  332. package/standalone/.next/static/chunks/1l4bkigul15i3.js +0 -25
  333. package/standalone/.next/static/chunks/1qd6cse_d9ae1.js +0 -99
  334. package/standalone/.next/static/chunks/2-mxmazwsh-wz.js +0 -1
  335. package/standalone/.next/static/chunks/24sd_kmnetibb.js +0 -1
  336. package/standalone/.next/static/chunks/27k7_zc-iuppd.js +0 -1
  337. package/standalone/.next/static/chunks/2baaj4mpr6i-i.js +0 -1
  338. package/standalone/.next/static/chunks/2cj2ndz_e0hbz.js +0 -1
  339. package/standalone/.next/static/chunks/2fzwgr2iq_783.css +0 -1
  340. package/standalone/.next/static/chunks/2hv6pkoloju0g.js +0 -33
  341. package/standalone/.next/static/chunks/2jbygfc0lzu0t.js +0 -55
  342. package/standalone/.next/static/chunks/2n7u72nxziv_5.js +0 -7
  343. package/standalone/.next/static/chunks/2sqprazdqp7f7.js +0 -1
  344. package/standalone/.next/static/chunks/2x8qovg070057.js +0 -1
  345. package/standalone/.next/static/chunks/3-zh9b0tcttiw.js +0 -33
  346. package/standalone/.next/static/chunks/31wyih3wwkeid.js +0 -1
  347. package/standalone/.next/static/chunks/33y_b6dqfx3tk.js +0 -1
  348. package/standalone/.next/static/chunks/3h1pxh5fd97ym.js +0 -27
  349. package/standalone/.next/static/chunks/3jbfibit05k5o.js +0 -29
  350. package/standalone/.next/static/chunks/3jd8_7lna-j_x.js +0 -40
  351. package/standalone/.next/static/chunks/3jv2gnnn4vx-j.js +0 -43
  352. package/standalone/.next/static/chunks/3k0oakdayt9yt.js +0 -40
  353. package/standalone/.next/static/chunks/3pgngh8lg3be3.js +0 -99
  354. package/standalone/.next/static/chunks/43gw6_6hbw18w.js +0 -51
  355. /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → sJ09NBDjsLncJEkHNWbdR}/_buildManifest.js +0 -0
  356. /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → sJ09NBDjsLncJEkHNWbdR}/_clientMiddlewareManifest.js +0 -0
  357. /package/standalone/.next/static/{8uBWJ8MOV-OEPe88M3PhU → sJ09NBDjsLncJEkHNWbdR}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,110204,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function o(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}e.i(174080);var n=Symbol.for("radix.slottable"),i=Symbol.for("react.lazy");function a(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===i&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var s=r[" use ".trim().toString()],l=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,i)=>{var l;let d,c=(l=`Primitive.${i}`,(d=r.forwardRef((e,t)=>{var i;let d,c,{children:u,...p}=e,f=null,g=!1,y=[];a(u)&&"function"==typeof s&&(u=s(u._payload)),r.Children.forEach(u,e=>{var t;if(t=e,r.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===n){g=!0;let t="child"in e.props?e.props.child:e.props.children;a(t)&&"function"==typeof s&&(t=s(t._payload)),f=((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),y.push(f?.props?.children)}else y.push(e)}),f?f=r.cloneElement(f,void 0,y):!g&&1===r.Children.count(u)&&r.isValidElement(u)&&(f=u);let h=f?(i=f,(c=(d=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in d&&d.isReactWarning)?i.ref:(c=(d=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in d&&d.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,m=function(...e){return r.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=o(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():o(e[t],null)}}}}(...e),e)}(t,h);if(!f){if(u||0===u){let e,t;throw Error(g?(e=l,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=l,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return u}let x=function(e,t){let r={...t};for(let o in t){let n=e[o],i=t[o];/^on[A-Z]/.test(o)?n&&i?r[o]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[o]=n):"style"===o?r[o]={...n,...i}:"className"===o&&(r[o]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(p,f.props??{});return f.type!==r.Fragment&&(x.ref=t?m:h),r.cloneElement(f,x)})).displayName=`${l}.Slot`,d),u=r.forwardRef((e,r)=>{let{asChild:o,...n}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(o?c:i,{...n,ref:r})});return u.displayName=`Primitive.${i}`,{...e,[i]:u}},{}),d=r.forwardRef((e,r)=>(0,t.jsx)(l.label,{...e,ref:r,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));d.displayName="Label",e.s(["Label",0,d,"Root",0,d],973741);var c=e.i(973741),c=c,u=e.i(975157);e.s(["Label",0,function({className:e,...r}){return(0,t.jsx)(c.Root,{"data-slot":"label",className:(0,u.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...r})}],110204)},624687,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Textarea",0,function({className:e,...o}){return(0,t.jsx)("textarea",{className:(0,r.cn)("min-h-24 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-xs outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50",e),...o})}])},929592,e=>{"use strict";var t=e.i(843476),r=e.i(225913),o=e.i(975157);let n=(0,r.cva)("group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current"}},defaultVariants:{variant:"default"}});e.s(["Alert",0,function({className:e,variant:r,...i}){return(0,t.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,o.cn)(n({variant:r}),e),...i})},"AlertDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-description",className:(0,o.cn)("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4",e),...r})}])},758379,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t])},637611,e=>{"use strict";var t,r,o=e.i(247167);function n(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function i(e){return"object"===n(e)}function a(e,t){return e.length<124?e:t}var s=((t=s||{})[t.InternalServerError=4500]="InternalServerError",t[t.InternalClientError=4005]="InternalClientError",t[t.BadRequest=4400]="BadRequest",t[t.BadResponse=4004]="BadResponse",t[t.Unauthorized=4401]="Unauthorized",t[t.Forbidden=4403]="Forbidden",t[t.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",t[t.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",t[t.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",t[t.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",t[t.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",t),l=((r=l||{}).ConnectionInit="connection_init",r.ConnectionAck="connection_ack",r.Ping="ping",r.Pong="pong",r.Subscribe="subscribe",r.Next="next",r.Error="error",r.Complete="complete",r);function d(e){if(!i(e))throw Error(`Message is expected to be an object, but got ${n(e)}`);if(!e.type)throw Error("Message is missing the 'type' property");if("string"!=typeof e.type)throw Error(`Message is expects the 'type' property to be a string, but got ${n(e.type)}`);switch(e.type){case"connection_init":case"connection_ack":case"ping":case"pong":if(null!=e.payload&&!i(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${e.payload}"`);break;case"subscribe":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!i(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${n(e.payload)}`);if("string"!=typeof e.payload.query)throw Error(`"${e.type}" message payload expects the 'query' property to be a string, but got ${n(e.payload.query)}`);if(null!=e.payload.variables&&!i(e.payload.variables))throw Error(`"${e.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${n(e.payload.variables)}`);if(null!=e.payload.operationName&&"string"!==n(e.payload.operationName))throw Error(`"${e.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${n(e.payload.operationName)}`);if(null!=e.payload.extensions&&!i(e.payload.extensions))throw Error(`"${e.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${n(e.payload.extensions)}`);break;case"next":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!i(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${n(e.payload)}`);break;case"error":var t;if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!(Array.isArray(t=e.payload)&&t.length>0&&t.every(e=>"message"in e)))throw Error(`"${e.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(e.payload)}`);break;case"complete":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${n(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);break;default:throw Error(`Invalid message 'type' property "${e.type}"`)}return e}function c(e,t){return d(e),JSON.stringify(e,t)}class u extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function p(e){return i(e)&&"code"in e&&"reason"in e}async function f(e,t){let r=await fetch("/api/graphql",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:e,variables:t})}),o=await r.json();if(!r.ok||o.errors?.length||!o.data)throw Error(o.errors?.map(e=>e.message).join("; ")||`HTTP ${r.status}`);return o.data}let g=null;function y(){let e=o.default.env.NEXT_PUBLIC_AGENT_WS_URL;return e||("https:"===window.location.protocol?`wss://${window.location.host}/graphql`:`ws://${window.location.hostname}:3091/graphql`)}e.s(["controlPlaneRequest",0,f,"controlPlaneSubscriptions",0,function(){return g??=function(t){let r,o,n,i,{url:f,connectionParams:g,lazy:y=!0,onNonLazyError:h=console.error,lazyCloseTimeout:m=0,keepAlive:x=0,disablePong:b,connectionAckWaitTimeout:v=0,retryAttempts:w=5,retryWait:E=async function(e){let t=Math.pow(2,e);await new Promise(e=>setTimeout(e,1e3*t+Math.floor(2700*Math.random()+300)))},shouldRetry:C=p,on:k,webSocketImpl:S,generateID:j=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})},jsonMessageReplacer:N,jsonMessageReviver:R}=t;if(S){var $;if(!("function"==typeof($=S)&&"constructor"in $&&"CLOSED"in $&&"CLOSING"in $&&"CONNECTING"in $&&"OPEN"in $))throw Error("Invalid WebSocket implementation provided");r=S}else r="u">typeof WebSocket?WebSocket:e.g.WebSocket||e.g.MozWebSocket;if(!r)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let A=r,O=(o={},n={on:(e,t)=>(o[e]=t,()=>{delete o[e]}),emit(e){"id"in e&&o[e.id]?.(e)}},i={connecting:k?.connecting?[k.connecting]:[],opened:k?.opened?[k.opened]:[],connected:k?.connected?[k.connected]:[],ping:k?.ping?[k.ping]:[],pong:k?.pong?[k.pong]:[],message:k?.message?[n.emit,k.message]:[n.emit],closed:k?.closed?[k.closed]:[],error:k?.error?[k.error]:[]},{onMessage:n.on,on(e,t){let r=i[e];return r.push(t),()=>{r.splice(r.indexOf(t),1)}},emit(e,...t){for(let r of[...i[e]])r(...t)}});function z(e){let t=[O.on("error",r=>{t.forEach(e=>e()),e(r)}),O.on("closed",r=>{t.forEach(e=>e()),e(r)})]}let T,P=0,I,_=!1,M=0,D=!1;async function q(){clearTimeout(I);let[e,t]=await (T??(T=new Promise((e,t)=>(async()=>{let r,o;if(_){if(await E(M),!P)return T=void 0,t({code:1e3,reason:"All Subscriptions Gone"});M++}O.emit("connecting",_);let n=new A("function"==typeof f?await f():f,"graphql-transport-ws");function i(){isFinite(x)&&x>0&&(clearTimeout(o),o=setTimeout(()=>{n.readyState===A.OPEN&&(n.send(c({type:l.Ping})),O.emit("ping",!1,void 0))},x))}z(e=>{T=void 0,clearTimeout(r),clearTimeout(o),t(e),e instanceof u&&(n.close(4499,"Terminated"),n.onerror=null,n.onclose=null)}),n.onerror=e=>O.emit("error",e),n.onclose=e=>O.emit("closed",e),n.onopen=async()=>{try{O.emit("opened",n);let e="function"==typeof g?await g():g;if(n.readyState!==A.OPEN)return;n.send(c(e?{type:l.ConnectionInit,payload:e}:{type:l.ConnectionInit},N)),isFinite(v)&&v>0&&(r=setTimeout(()=>{n.close(s.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},v)),i()}catch(e){O.emit("error",e),n.close(s.InternalClientError,a(e instanceof Error?e.message:String(e),"Internal client error"))}};let p=!1;n.onmessage=({data:t})=>{try{let o=d("string"==typeof t?JSON.parse(t,R):t);if(O.emit("message",o),"ping"===o.type||"pong"===o.type){O.emit(o.type,!0,o.payload),"pong"===o.type?i():b||(n.send(c(o.payload?{type:l.Pong,payload:o.payload}:{type:l.Pong})),O.emit("pong",!1,o.payload));return}if(p)return;if(o.type!==l.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(r),p=!0,O.emit("connected",n,o.payload,_),_=!1,M=0,e([n,new Promise((e,t)=>z(t))])}catch(e){n.onmessage=null,O.emit("error",e),n.close(s.BadResponse,a(e instanceof Error?e.message:String(e),"Bad response"))}}})())));e.readyState===A.CLOSING&&await t;let r=()=>{},o=new Promise(e=>r=e);return[e,r,Promise.race([o.then(()=>{P||(isFinite(m)&&m>0?I=setTimeout(()=>{e.readyState===A.OPEN&&e.close(1e3,"Normal Closure")},m):e.close(1e3,"Normal Closure"))}),t])]}function W(e){var t;if(p(e)&&(![1e3,1001,1006,1005,1012,1013,1014].includes(t=e.code)&&t>=1e3&&t<=1999||[s.InternalServerError,s.InternalClientError,s.BadRequest,s.BadResponse,s.Unauthorized,s.SubprotocolNotAcceptable,s.SubscriberAlreadyExists,s.TooManyInitialisationRequests].includes(e.code)))throw e;if(D)return!1;if(p(e)&&1e3===e.code)return P>0;if(!w||M>=w||!C(e))throw e;return _=!0}function B(e,t){let r=j(e),o=!1,n=!1,i=()=>{P--,o=!0};return(async()=>{for(P++;;)try{let[a,s,d]=await q();if(o)return s();let u=O.onMessage(r,e=>{switch(e.type){case l.Next:return void t.next(e.payload);case l.Error:n=!0,o=!0,t.error(e.payload),i();return;case l.Complete:o=!0,i();return}});a.send(c({id:r,type:l.Subscribe,payload:e},N)),i=()=>{o||a.readyState!==A.OPEN||a.send(c({id:r,type:l.Complete},N)),P--,o=!0,s()},await d.finally(u);return}catch(e){if(!W(e))return}})().then(()=>{n||t.complete()}).catch(e=>{t.error(e)}),()=>{o||i()}}return y||(async()=>{for(P++;;)try{let[,,e]=await q();await e}catch(e){try{if(!W(e))return}catch(e){return h?.(e)}}})(),{on:O.on,subscribe:B,iterate(e){let t=[],r={done:!1,error:null,resolve:()=>{}},o=B(e,{next(e){t.push(e),r.resolve()},error(e){r.done=!0,r.error=e,r.resolve()},complete(){r.done=!0,r.resolve()}}),n=async function*(){for(;;){for(t.length||await new Promise(e=>r.resolve=e);t.length;)yield t.shift();if(r.error)throw r.error;if(r.done)return}}();return n.throw=async e=>(r.done||(r.done=!0,r.error=e,r.resolve()),{done:!0,value:void 0}),n.return=async()=>(o(),{done:!0,value:void 0}),n},async dispose(){if(D=!0,T){let[e]=await T;e.close(1e3,"Normal Closure")}},terminate(){T&&O.emit("closed",new u)}}}({url:y,lazy:!0,retryAttempts:1/0,shouldRetry:()=>!0})}],637611)},515288,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Card",0,function({className:e,size:o="default",...n}){return(0,t.jsx)("div",{"data-slot":"card","data-size":o,className:(0,r.cn)("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",e),...n})},"CardAction",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-action",className:(0,r.cn)("col-start-2 row-span-2 row-start-1 self-start justify-self-end",e),...o})},"CardContent",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-(--card-spacing)",e),...o})},"CardDescription",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...o})},"CardFooter",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-footer",className:(0,r.cn)("flex items-center rounded-b-xl border-t bg-muted/50 p-(--card-spacing)",e),...o})},"CardHeader",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",e),...o})},"CardTitle",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",e),...o})}])},987968,e=>{"use strict";var t=e.i(843476),r=e.i(975157),o=e.i(758379),o=o;e.s(["Spinner",0,function({className:e,...n}){return(0,t.jsx)(o.default,{"data-slot":"spinner",role:"status","aria-label":"Loading",className:(0,r.cn)("size-4 animate-spin",e),...n})}],987968)},487486,e=>{"use strict";var t=e.i(843476),r=e.i(225913),o=e.i(709840),n=e.i(975157);let i=(0,r.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",success:"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300 [a]:hover:bg-emerald-500/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});e.s(["Badge",0,function({className:e,variant:r="default",asChild:a=!1,...s}){let l=a?o.Slot.Root:"span";return(0,t.jsx)(l,{className:(0,n.cn)(i({variant:r}),e),"data-slot":"badge","data-variant":r,...s})}])},643957,e=>{"use strict";let t=(0,e.i(456420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["default",0,t])},593698,e=>{"use strict";var t=e.i(643957);e.s(["CheckIcon",()=>t.default])},999682,e=>{"use strict";var t=e.i(271645);e.s(["usePrevious",0,function(e){let r=t.useRef({value:e,previous:e});return t.useMemo(()=>(r.current.value!==e&&(r.current.previous=r.current.value,r.current.value=e),r.current.previous),[e])}])},75830,586318,e=>{"use strict";var t=e.i(271645),r=e.i(30030);function o(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function n(...e){return t.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=o(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():o(e[t],null)}}}}(...e),e)}function i(e){let r=t.forwardRef((r,o)=>{var i;let l,f,{children:g,...y}=r,h=null,m=!1,x=[];d(g)&&"function"==typeof p&&(g=p(g._payload)),t.Children.forEach(g,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===a){m=!0;let t="child"in e.props?e.props.child:e.props.children;d(t)&&"function"==typeof p&&(t=p(t._payload)),h=s(e,t),x.push(h?.props?.children)}else x.push(e)}),h?h=t.cloneElement(h,void 0,x):!m&&1===t.Children.count(g)&&t.isValidElement(g)&&(h=g);let b=h?(i=h,(f=(l=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?i.ref:(f=(l=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in l&&l.isReactWarning)?i.props.ref:i.props.ref||i.ref):void 0,v=n(o,b);if(!h){if(g||0===g)throw Error(m?u(e):c(e));return g}let w=function(e,t){let r={...t};for(let o in t){let n=e[o],i=t[o];/^on[A-Z]/.test(o)?n&&i?r[o]=(...e)=>{let t=i(...e);return n(...e),t}:n&&(r[o]=n):"style"===o?r[o]={...n,...i}:"className"===o&&(r[o]=[n,i].filter(Boolean).join(" "))}return{...e,...r}}(y,h.props??{});return h.type!==t.Fragment&&(w.ref=o?v:b),t.cloneElement(h,w)});return r.displayName=`${e}.Slot`,r}var a=Symbol.for("radix.slottable"),s=(e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null},l=Symbol.for("react.lazy");function d(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===l&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var c=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,u=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,p=t[" use ".trim().toString()],f=e.i(843476),g=new WeakMap;function y(e,t){var r,o;let n,i,a;if("at"in Array.prototype)return Array.prototype.at.call(e,t);let s=(r=e,o=t,n=r.length,(a=(i=h(o))>=0?i:n+i)<0||a>=n?-1:a);return -1===s?void 0:e[s]}function h(e){return e!=e||0===e?0:Math.trunc(e)}(class e extends Map{#e;constructor(e){super(e),this.#e=[...super.keys()],g.set(this,!0)}set(e,t){return g.get(this)&&(this.has(e)?this.#e[this.#e.indexOf(e)]=e:this.#e.push(e)),super.set(e,t),this}insert(e,t,r){let o,n=this.has(t),i=this.#e.length,a=h(e),s=a>=0?a:i+a,l=s<0||s>=i?-1:s;if(l===this.size||n&&l===this.size-1||-1===l)return this.set(t,r),this;let d=this.size+ +!n;a<0&&s++;let c=[...this.#e],u=!1;for(let e=s;e<d;e++)if(s===e){let i=c[e];c[e]===t&&(i=c[e+1]),n&&this.delete(t),o=this.get(i),this.set(t,r)}else{u||c[e-1]!==t||(u=!0);let r=c[u?e:e-1],n=o;o=this.get(r),this.delete(r),this.set(r,n)}return this}with(t,r,o){let n=new e(this);return n.insert(t,r,o),n}before(e){let t=this.#e.indexOf(e)-1;if(!(t<0))return this.entryAt(t)}setBefore(e,t,r){let o=this.#e.indexOf(e);return -1===o?this:this.insert(o,t,r)}after(e){let t=this.#e.indexOf(e);if(-1!==(t=-1===t||t===this.size-1?-1:t+1))return this.entryAt(t)}setAfter(e,t,r){let o=this.#e.indexOf(e);return -1===o?this:this.insert(o+1,t,r)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#e=[],super.clear()}delete(e){let t=super.delete(e);return t&&this.#e.splice(this.#e.indexOf(e),1),t}deleteAt(e){let t=this.keyAt(e);return void 0!==t&&this.delete(t)}at(e){let t=y(this.#e,e);if(void 0!==t)return this.get(t)}entryAt(e){let t=y(this.#e,e);if(void 0!==t)return[t,this.get(t)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return y(this.#e,e)}from(e,t){let r=this.indexOf(e);if(-1===r)return;let o=r+t;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.at(o)}keyFrom(e,t){let r=this.indexOf(e);if(-1===r)return;let o=r+t;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.keyAt(o)}find(e,t){let r=0;for(let o of this){if(Reflect.apply(e,t,[o,r,this]))return o;r++}}findIndex(e,t){let r=0;for(let o of this){if(Reflect.apply(e,t,[o,r,this]))return r;r++}return -1}filter(t,r){let o=[],n=0;for(let e of this)Reflect.apply(t,r,[e,n,this])&&o.push(e),n++;return new e(o)}map(t,r){let o=[],n=0;for(let e of this)o.push([e[0],Reflect.apply(t,r,[e,n,this])]),n++;return new e(o)}reduce(...e){let[t,r]=e,o=0,n=r??this.at(0);for(let r of this)n=0===o&&1===e.length?r:Reflect.apply(t,this,[n,r,o,this]),o++;return n}reduceRight(...e){let[t,r]=e,o=r??this.at(-1);for(let r=this.size-1;r>=0;r--){let n=this.at(r);o=r===this.size-1&&1===e.length?n:Reflect.apply(t,this,[o,n,r,this])}return o}toSorted(t){return new e([...this.entries()].sort(t))}toReversed(){let t=new e;for(let e=this.size-1;e>=0;e--){let r=this.keyAt(e),o=this.get(r);t.set(r,o)}return t}toSpliced(...t){let r=[...this.entries()];return r.splice(...t),new e(r)}slice(t,r){let o=new e,n=this.size-1;if(void 0===t)return o;t<0&&(t+=this.size),void 0!==r&&r>0&&(n=r-1);for(let e=t;e<=n;e++){let t=this.keyAt(e),r=this.get(t);o.set(t,r)}return o}every(e,t){let r=0;for(let o of this){if(!Reflect.apply(e,t,[o,r,this]))return!1;r++}return!0}some(e,t){let r=0;for(let o of this){if(Reflect.apply(e,t,[o,r,this]))return!0;r++}return!1}}),e.s(["createCollection",0,function(e){let o=e+"CollectionProvider",[a,s]=(0,r.createContextScope)(o),[l,d]=a(o,{collectionRef:{current:null},itemMap:new Map}),c=e=>{let{scope:r,children:o}=e,n=t.useRef(null),i=t.useRef(new Map).current;return(0,f.jsx)(l,{scope:r,itemMap:i,collectionRef:n,children:o})};c.displayName=o;let u=e+"CollectionSlot",p=i(u),g=t.forwardRef((e,t)=>{let{scope:r,children:o}=e,i=n(t,d(u,r).collectionRef);return(0,f.jsx)(p,{ref:i,children:o})});g.displayName=u;let y=e+"CollectionItemSlot",h="data-radix-collection-item",m=i(y),x=t.forwardRef((e,r)=>{let{scope:o,children:i,...a}=e,s=t.useRef(null),l=n(r,s),c=d(y,o);return t.useEffect(()=>(c.itemMap.set(s,{ref:s,...a}),()=>void c.itemMap.delete(s))),(0,f.jsx)(m,{...{[h]:""},ref:l,children:i})});return x.displayName=y,[{Provider:c,Slot:g,ItemSlot:x},function(r){let o=d(e+"CollectionConsumer",r);return t.useCallback(()=>{let e=o.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${h}]`));return Array.from(o.itemMap.values()).sort((e,r)=>t.indexOf(e.ref.current)-t.indexOf(r.ref.current))},[o.collectionRef,o.itemMap])},s]}],75830);var m=t.createContext(void 0);e.s(["useDirection",0,function(e){let r=t.useContext(m);return e||r||"ltr"}],586318)},26495,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},144716,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-up",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);e.s(["default",0,t])},776639,e=>{"use strict";var t=e.i(843476),r=e.i(560964),o=e.i(964053),n=e.i(519455),i=e.i(975157);function a({...e}){return(0,t.jsx)(o.Dialog.Portal,{"data-slot":"dialog-portal",...e})}function s({className:e,...r}){return(0,t.jsx)(o.Dialog.Overlay,{className:(0,i.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)(o.Dialog.Root,{"data-slot":"dialog",...e})},"DialogContent",0,function({className:e,children:l,showCloseButton:d=!0,...c}){return(0,t.jsxs)(a,{children:[(0,t.jsx)(s,{}),(0,t.jsxs)(o.Dialog.Content,{className:(0,i.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:[l,d&&(0,t.jsx)(o.Dialog.Close,{asChild:!0,"data-slot":"dialog-close",children:(0,t.jsxs)(n.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)(o.Dialog.Description,{className:(0,i.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:a,...s}){return(0,t.jsxs)("div",{className:(0,i.cn)("-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 sm:flex-row sm:justify-end",e),"data-slot":"dialog-footer",...s,children:[a,r&&(0,t.jsx)(o.Dialog.Close,{asChild:!0,children:(0,t.jsx)(n.Button,{variant:"outline",children:"Close"})})]})},"DialogHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{className:(0,i.cn)("flex flex-col gap-2",e),"data-slot":"dialog-header",...r})},"DialogTitle",0,function({className:e,...r}){return(0,t.jsx)(o.Dialog.Title,{className:(0,i.cn)("font-heading text-base leading-none font-medium",e),"data-slot":"dialog-title",...r})}])}]);
@@ -0,0 +1,107 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,939050,506184,868401,e=>{"use strict";var t=e.i(456420);let r=(0,t.default)("move-right",[["path",{d:"M18 8L22 12L18 16",key:"1r0oui"}],["path",{d:"M2 12H22",key:"1m8cig"}]]);e.s(["MoveRight",0,r],939050);let a=(0,t.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"}]]);e.s(["Paintbrush",0,a],506184);let s=(0,t.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"}]]);e.s(["Tags",0,s],868401)},488143,(e,t,r)=>{"use strict";function a({widthInt:e,heightInt:t,blurWidth:r,blurHeight:s,blurDataURL:n,objectFit:i}){let l=r?40*r:e,o=s?40*s:t,d=l&&o?`viewBox='0 0 ${l} ${o}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${d}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${d?"none":"contain"===i?"xMidYMid":"cover"===i?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${n}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return a}})},987690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={VALID_LOADERS:function(){return n},imageConfigDefault:function(){return i}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=["default","imgix","cloudinary","akamai","custom"],i={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},908927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return d}}),e.r(233525);let a=e.r(543369),s=e.r(488143),n=e.r(987690),i=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function o(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function d({src:e,sizes:t,unoptimized:r=!1,priority:c=!1,preload:u=!1,loading:h,className:p,quality:m,width:g,height:x,fill:b=!1,style:f,overrideSrc:j,onLoad:v,onLoadingComplete:w,placeholder:y="empty",blurDataURL:k,fetchPriority:S,decoding:C="async",layout:I,objectFit:N,objectPosition:T,lazyBoundary:E,lazyRoot:D,...A},B){var R;let _,P,O,{imgConf:L,showAltText:W,blurComplete:$,defaultLoader:M}=B,U=L||n.imageConfigDefault;if("allSizes"in U)_=U;else{let e=[...U.deviceSizes,...U.imageSizes].sort((e,t)=>e-t),t=U.deviceSizes.sort((e,t)=>e-t),r=U.qualities?.sort((e,t)=>e-t);_={...U,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===M)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let q=A.loader||M;delete A.loader,delete A.srcSet;let F="__next_img_default"in q;if(F){if("custom"===_.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
2
+ Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=q;q=t=>{let{config:r,...a}=t;return e(a)}}if(I){"fill"===I&&(b=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[I];e&&(f={...f,...e});let r={responsive:"100vw",fill:"100vw"}[I];r&&!t&&(t=r)}let z="",H=o(g),V=o(x);if((R=e)&&"object"==typeof R&&(l(R)||void 0!==R.src)){let t=l(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(P=t.blurWidth,O=t.blurHeight,k=k||t.blurDataURL,z=t.src,!b)if(H||V){if(H&&!V){let e=H/t.width;V=Math.round(t.height*e)}else if(!H&&V){let e=V/t.height;H=Math.round(t.width*e)}}else H=t.width,V=t.height}let G=!c&&!u&&("lazy"===h||void 0===h);(!(e="string"==typeof e?e:z)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,G=!1),_.unoptimized&&(r=!0),F&&!_.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let K=o(m),J=Object.assign(b?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:N,objectPosition:T}:{},W?{}:{color:"transparent"},f),Y=$||"empty"===y?null:"blur"===y?`url("data:image/svg+xml;charset=utf-8,${(0,s.getImageBlurSvg)({widthInt:H,heightInt:V,blurWidth:P,blurHeight:O,blurDataURL:k||"",objectFit:J.objectFit})}")`:`url("${y}")`,X=i.includes(J.objectFit)?"fill"===J.objectFit?"100% 100%":"cover":J.objectFit,Q=Y?{backgroundSize:X,backgroundPosition:J.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:Y}:{},Z=function({config:e,src:t,unoptimized:r,width:s,quality:n,sizes:i,loader:l}){if(r){if(t.startsWith("/")&&!t.startsWith("//")){let e=(0,a.getDeploymentId)();if(e){let r=t.indexOf("?");if(-1!==r){let a=new URLSearchParams(t.slice(r+1));a.get("dpl")||(a.append("dpl",e),t=t.slice(0,r)+"?"+a.toString())}else t+=`?dpl=${e}`}}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:o,kind:d}=function({deviceSizes:e,allSizes:t},r,a){if(a){let r=/(^|\s)(1?\d?\d)vw/g,s=[];for(let e;e=r.exec(a);)s.push(parseInt(e[2]));if(s.length){let r=.01*Math.min(...s);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,s,i),c=o.length-1;return{sizes:i||"w"!==d?i:"100vw",srcSet:o.map((r,a)=>`${l({config:e,src:t,quality:n,width:r})} ${"w"===d?r:a+1}${d}`).join(", "),src:l({config:e,src:t,quality:n,width:o[c]})}}({config:_,src:e,unoptimized:r,width:H,quality:K,sizes:t,loader:q}),ee=G?"lazy":h;return{props:{...A,loading:ee,fetchPriority:S,width:H,height:V,decoding:C,className:p,style:{...J,...Q},sizes:Z.sizes,srcSet:Z.srcSet,src:j||Z.src},meta:{unoptimized:r,preload:u||c,placeholder:y,fill:b}}}},898879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let a=e.r(271645),s="u"<typeof window,n=s?()=>{}:a.useLayoutEffect,i=s?()=>{}:a.useEffect;function l(e){let{headManager:t,reduceComponentsToState:r}=e;function l(){if(t&&t.mountedInstances){let e=a.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return s&&(t?.mountedInstances?.add(e.children),l()),n(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),n(()=>(t&&(t._pendingUpdate=l),()=>{t&&(t._pendingUpdate=l)})),i(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},325633,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return g},defaultHead:function(){return u}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(555682),i=e.r(190809),l=e.r(843476),o=i._(e.r(271645)),d=n._(e.r(898879)),c=e.r(742732);function u(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function h(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===o.default.Fragment?e.concat(o.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(233525);let p=["name","httpEquiv","charSet","itemProp"];function m(e){let t,r,a,s;return e.reduce(h,[]).reverse().concat(u().reverse()).filter((t=new Set,r=new Set,a=new Set,s={},e=>{let n=!0,i=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){i=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?n=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?n=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)a.has(r)?n=!1:a.add(r);else{let t=e.props[r],a=s[r]||new Set;("name"!==r||!i)&&a.has(t)?n=!1:(a.add(t),s[r]=a)}}}return n})).reverse().map((e,t)=>{let r=e.key||t;return o.default.cloneElement(e,{key:r})})}let g=function({children:e}){let t=(0,o.useContext)(c.HeadManagerContext);return(0,l.jsx)(d.default,{reduceComponentsToState:m,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},918556,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return n}});let a=e.r(555682)._(e.r(271645)),s=e.r(987690),n=a.default.createContext(s.imageConfigDefault)},65856,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return a}});let a=e.r(555682)._(e.r(271645)).default.createContext(null)},670965,(e,t,r)=>{"use strict";function a(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,t.qualities[0]):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return a}})},1948,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return i}});let a=e.r(670965),s=e.r(543369);function n({config:e,src:t,width:r,quality:i}){let l=(0,s.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")){let e=t.indexOf("?");if(-1!==e){let r=new URLSearchParams(t.slice(e+1)),a=r.get("dpl");if(a){l=a,r.delete("dpl");let s=r.toString();t=t.slice(0,e)+(s?"?"+s:"")}}}if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
3
+ Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let o=(0,a.findClosestQuality)(i,e);return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${o}${t.startsWith("/")&&l?`&dpl=${l}`:""}`}n.__next_img_default=!0;let i=n},605500,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return v}});let a=e.r(555682),s=e.r(190809),n=e.r(843476),i=s._(e.r(271645)),l=a._(e.r(174080)),o=a._(e.r(325633)),d=e.r(908927),c=e.r(987690),u=e.r(918556);e.r(233525);let h=e.r(65856),p=a._(e.r(1948)),m=e.r(818581),g={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function x(e,t,r,a,s,n,i){let l=e?.src;e&&e["data-loaded-src"]!==l&&(e["data-loaded-src"]=l,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&s(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let a=!1,s=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>a,isPropagationStopped:()=>s,persist:()=>{},preventDefault:()=>{a=!0,t.preventDefault()},stopPropagation:()=>{s=!0,t.stopPropagation()}})}a?.current&&a.current(e)}}))}function b(e){return i.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let f=(0,i.forwardRef)(({src:e,srcSet:t,sizes:r,height:a,width:s,decoding:l,className:o,style:d,fetchPriority:c,placeholder:u,loading:h,unoptimized:p,fill:g,onLoadRef:f,onLoadingCompleteRef:j,setBlurComplete:v,setShowAltText:w,sizesInput:y,onLoad:k,onError:S,...C},I)=>{let N=(0,i.useCallback)(e=>{e&&(S&&(e.src=e.src),e.complete&&x(e,u,f,j,v,p,y))},[e,u,f,j,v,S,p,y]),T=(0,m.useMergedRef)(I,N);return(0,n.jsx)("img",{...C,...b(c),loading:h,width:s,height:a,decoding:l,"data-nimg":g?"fill":"1",className:o,style:d,sizes:r,srcSet:t,src:e,ref:T,onLoad:e=>{x(e.currentTarget,u,f,j,v,p,y)},onError:e=>{w(!0),"empty"!==u&&v(!0),S&&S(e)}})});function j({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...b(t.fetchPriority)};return e&&l.default.preload?(l.default.preload(t.src,r),null):(0,n.jsx)(o.default,{children:(0,n.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let v=(0,i.forwardRef)((e,t)=>{let r=(0,i.useContext)(h.RouterContext),a=(0,i.useContext)(u.ImageConfigContext),s=(0,i.useMemo)(()=>{let e=g||a||c.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),s=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:s,localPatterns:"u"<typeof window?a?.localPatterns:e.localPatterns}},[a]),{onLoad:l,onLoadingComplete:o}=e,m=(0,i.useRef)(l);(0,i.useEffect)(()=>{m.current=l},[l]);let x=(0,i.useRef)(o);(0,i.useEffect)(()=>{x.current=o},[o]);let[b,v]=(0,i.useState)(!1),[w,y]=(0,i.useState)(!1),{props:k,meta:S}=(0,d.getImgProps)(e,{defaultLoader:p.default,imgConf:s,blurComplete:b,showAltText:w});return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(f,{...k,unoptimized:S.unoptimized,placeholder:S.placeholder,fill:S.fill,onLoadRef:m,onLoadingCompleteRef:x,setBlurComplete:v,setShowAltText:y,sizesInput:e.sizes,ref:t}),S.preload?(0,n.jsx)(j,{isAppRouter:!r,imgAttributes:k}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},794909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return c},getImageProps:function(){return d}};for(var s in a)Object.defineProperty(r,s,{enumerable:!0,get:a[s]});let n=e.r(555682),i=e.r(908927),l=e.r(605500),o=n._(e.r(1948));function d(e){let{props:t}=(0,i.getImgProps)(e,{defaultLoader:o.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let c=l.Image},657688,(e,t,r)=>{t.exports=e.r(794909)},448295,455329,942230,756283,e=>{"use strict";var t=e.i(843476),r=e.i(93384),a=e.i(741120),s=e.i(456420);let n=(0,s.default)("test-tube-diagonal",[["path",{d:"M21 7 6.82 21.18a2.83 2.83 0 0 1-3.99-.01a2.83 2.83 0 0 1 0-4L17 3",key:"1ub6xw"}],["path",{d:"m16 2 6 6",key:"1gw87d"}],["path",{d:"M12 16H4",key:"1cjfip"}]]);var i=e.i(948148),l=e.i(271645),o=e.i(929592),d=e.i(487486),c=e.i(519455),u=e.i(515288),h=e.i(59497),p=e.i(776639),m=e.i(793479),g=e.i(110204),x=e.i(337822),b=e.i(967489),f=e.i(987968),j=e.i(624687),v=e.i(520133),w=e.i(462777),y=e.i(637611),k=e.i(975157),S=e.i(920950);let C=`
4
+ id type
5
+ configurations {
6
+ id name iconKey scheme buildConfiguration defaultAction advancedSettings createdAt updatedAt
7
+ source { id kind relativePath }
8
+ observation { id scopeKey status schemes configurations testPlans error stale headSha xcodeVersion lastParseAttemptAt lastParsedAt }
9
+ }
10
+ allowedScripts {
11
+ position
12
+ script { id name preBuildScript postBuildScript enabledByDefault timeoutSeconds failureBehavior }
13
+ }
14
+ `,I=`
15
+ id scopeKey status schemes configurations testPlans error stale headSha xcodeVersion lastParseAttemptAt lastParsedAt
16
+ `,N=["BUILD","TEST","ANALYZE","ARCHIVE","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"];function T({codebaseId:e,worktreeId:r,open:s,onOpenChange:n,onStarted:x,coverageMode:v=!1}){let E=(0,i.useTranslations)("builds"),[D,A]=(0,l.useState)(null),[B,R]=(0,l.useState)([]),[_,P]=(0,l.useState)(""),[O,L]=(0,l.useState)("BUILD"),[W,$]=(0,l.useState)({}),[M,U]=(0,l.useState)([]),[q,F]=(0,l.useState)("SIMULATOR"),[z,H]=(0,l.useState)(""),[V,G]=(0,l.useState)(new Set),[K,J]=(0,l.useState)({}),[Y,X]=(0,l.useState)("{}"),[Q,Z]=(0,l.useState)(!0),[ee,et]=(0,l.useState)(!1),[er,ea]=(0,l.useState)(!1),[es,en]=(0,l.useState)(null),ei=D?.configurations.find(e=>e.id===_),el=ei?W[ei.id]??ei.observation:null;(0,l.useEffect)(()=>{let t=!1;return(0,y.controlPlaneRequest)(`query StartBuildProject($codebaseId: ID!, $worktreeId: ID!) {
17
+ iosAppProject(codebaseId: $codebaseId) { ${C} }
18
+ builds(first: 50, status: SUCCEEDED, worktreeId: $worktreeId) {
19
+ items { id action destinationType snapshot createdAt }
20
+ }
21
+ }`,{codebaseId:e,worktreeId:r}).then(e=>{if(t)return;A(e.iosAppProject),R(e.builds.items);let r=e.iosAppProject?.configurations[0];r&&(P(r.id),L(v?"TEST":r.defaultAction),J(r.advancedSettings??{}),G(new Set(e.iosAppProject.allowedScripts.filter(e=>e.script.enabledByDefault).map(e=>e.script.id))))}).catch(e=>en(e instanceof Error?e.message:String(e))).finally(()=>{t||Z(!1)}),()=>{t=!0}},[e,v,r]);let eo=(0,l.useMemo)(()=>B.filter(e=>{if("BUILD_FOR_TESTING"!==e.action||e.destinationType!==q)return!1;let t=e.snapshot.configuration,r="string"==typeof K.testPlan?K.testPlan:null,a=t?.advancedSettings?.testPlan;return t?.id===_&&(!r||!a||r===a)}),[K.testPlan,_,q,B]),ed=eo.find(e=>e.id===K.priorBuildForTestingId)?.id??eo[0]?.id??null,ec=async(e,t)=>{et(!0),en(null),U([]),H("");try{let a=await (0,y.controlPlaneRequest)(`mutation InspectStartBuildDestinations($input: InspectBuildDestinationsInput!) {
22
+ inspectBuildDestinations(input: $input)
23
+ }`,{input:{worktreeId:r,configurationId:e.id,action:t,requestId:(0,w.createClientId)()}});U(a.inspectBuildDestinations);let s="ARCHIVE"===t?"PHYSICAL_DEVICE":a.inspectBuildDestinations.some(e=>"SIMULATOR"===e.type)?"SIMULATOR":"PHYSICAL_DEVICE";F(s),H(a.inspectBuildDestinations.find(e=>e.type===s)?.id??"")}catch(e){en(e instanceof Error?e.message:String(e))}finally{et(!1)}},eu=async e=>{et(!0),en(null);try{let t=(await (0,y.controlPlaneRequest)(`mutation ReparseStartBuild($configurationId: ID!, $worktreeId: ID!, $requestId: ID!) {
24
+ reparseBuildConfiguration(configurationId: $configurationId, worktreeId: $worktreeId, requestId: $requestId) {
25
+ ${I}
26
+ }
27
+ }`,{configurationId:e.id,worktreeId:r,requestId:(0,w.createClientId)()})).reparseBuildConfiguration;if($(r=>({...r,[e.id]:t})),"VALID"!==t.status)throw Error(t.error||E("configurationInvalid"));await ec(e,O)}catch(e){en(e instanceof Error?e.message:String(e))}finally{et(!1)}};(0,l.useEffect)(()=>{if(!ei||Q)return;let e=window.setTimeout(()=>void ec(ei,O),0);return()=>window.clearTimeout(e)},[_,O,Q]);let eh=(0,l.useMemo)(()=>M.filter(e=>e.type===q),[M,q]),ep=M.find(e=>e.id===z),em=ei?`xcrun xcodebuild ${"PROJECT"===ei.source.kind?`-project ${ei.source.relativePath}`:"WORKSPACE"===ei.source.kind?`-workspace ${ei.source.relativePath}`:""} -scheme ${JSON.stringify(ei.scheme)} -configuration ${JSON.stringify(ei.buildConfiguration)} -destination ${JSON.stringify(ep?.name??"<destination>")} -hideShellScriptEnvironment ${O.toLowerCase().replaceAll("_","-")}${"TEST_WITHOUT_BUILDING"===O&&ed?` \xb7 ${E("priorBuildSummary",{id:ed})}`:""}`:"",eg=async()=>{if(ei&&ep){ea(!0),en(null);try{let e={};try{let t=JSON.parse(Y);if(!t||"object"!=typeof t||Array.isArray(t))throw Error();e=t}catch{throw Error(E("overridesInvalid"))}let t=await (0,y.controlPlaneRequest)(`mutation StartIosBuild($input: StartBuildInput!) {
28
+ ${v?"startWorktreeCoverage":"startBuild"}(input: $input) { id }
29
+ }`,{input:{worktreeId:r,configurationId:ei.id,destination:ep,scriptIds:[...V],action:O,advancedSettings:{...K,buildSettingOverrides:e,...v?{codeCoverage:!0,parseTestResults:!0}:{},..."TEST_WITHOUT_BUILDING"===O?{priorBuildForTestingId:ed,priorTestProductsPath:null,priorXctestrunPath:null}:{}},requestId:(0,w.createClientId)()}});n(!1);let a=t.startBuild??t.startWorktreeCoverage;if(!a)throw Error(E("startBuildFailed"));x(a.id)}catch(e){en(e instanceof Error?e.message:String(e))}finally{ea(!1)}}};return(0,t.jsx)(p.Dialog,{onOpenChange:n,open:s,children:(0,t.jsxs)(p.DialogContent,{className:"sm:max-w-3xl",children:[(0,t.jsxs)(p.DialogHeader,{children:[(0,t.jsx)(p.DialogTitle,{children:E(v?"startWorktreeCoverage":"startBuild")}),(0,t.jsx)(p.DialogDescription,{children:E(v?"startWorktreeCoverageDescription":"startBuildDescription")})]}),es&&(0,t.jsx)(o.Alert,{variant:"destructive",children:(0,t.jsx)(o.AlertDescription,{children:es})}),Q?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-muted-foreground",children:[(0,t.jsx)(f.Spinner,{})," ",E("loading")]}):D?.configurations.length?(0,t.jsxs)("div",{className:"space-y-5",children:[(0,t.jsxs)("section",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("configuration")}),(0,t.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:D.configurations.map(e=>(0,t.jsxs)("button",{className:`rounded-xl border p-3 text-left transition-colors ${e.id===_?"border-primary bg-primary/5":"hover:bg-muted/50"}`,onClick:()=>{P(e.id),L(v?"TEST":e.defaultAction),J(e.advancedSettings??{})},type:"button",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)("span",{className:"flex items-center gap-2 font-medium",children:[(0,t.jsx)(S.ConfigurationIcon,{iconKey:e.iconKey}),e.name]}),(0,t.jsx)(d.Badge,{variant:"outline",children:((W[e.id]??e.observation)?.status??"UNPARSED").toLocaleLowerCase().split("_").filter(Boolean).map(e=>`${e.charAt(0).toLocaleUpperCase()}${e.slice(1)}`).join(" ")})]}),(0,t.jsxs)("p",{className:"mt-1 text-xs text-muted-foreground",children:[e.scheme," · ",e.buildConfiguration]})]},e.id))})]}),ei&&(0,t.jsx)(u.Card,{children:(0,t.jsxs)(u.CardContent,{className:"space-y-2 text-sm",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"font-mono text-xs",children:ei.source.relativePath}),(0,t.jsxs)("p",{className:"text-xs text-muted-foreground",children:[ei.scheme," ·"," ",ei.buildConfiguration]})]}),(0,t.jsxs)(c.Button,{disabled:ee,onClick:()=>void eu(ei),size:"sm",type:"button",variant:"outline",children:[ee?(0,t.jsx)(f.Spinner,{}):(0,t.jsx)(a.RefreshCw,{})," ",E("reparse")]})]}),el?.error&&(0,t.jsx)("p",{className:"text-xs text-destructive",children:el.error})]})}),(0,t.jsxs)("div",{className:"grid gap-4 sm:grid-cols-3",children:[(0,t.jsxs)("div",{className:(0,k.cn)("space-y-2",v&&"hidden"),children:[(0,t.jsx)(g.Label,{children:E("action")}),(0,t.jsxs)(b.Select,{onValueChange:e=>L(e),value:O,children:[(0,t.jsx)(b.SelectTrigger,{children:(0,t.jsx)(b.SelectValue,{})}),(0,t.jsx)(b.SelectContent,{children:N.map(e=>(0,t.jsx)(b.SelectItem,{value:e,children:E(`actions.${e}`)},e))})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("destinationType")}),(0,t.jsxs)(b.Select,{disabled:"ARCHIVE"===O,onValueChange:e=>{F(e),H(M.find(t=>t.type===e)?.id??"")},value:q,children:[(0,t.jsx)(b.SelectTrigger,{children:(0,t.jsx)(b.SelectValue,{})}),(0,t.jsxs)(b.SelectContent,{children:[(0,t.jsx)(b.SelectItem,{value:"SIMULATOR",children:E("simulator")}),(0,t.jsx)(b.SelectItem,{value:"PHYSICAL_DEVICE",children:E("physicalDevice")})]})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("device")}),(0,t.jsxs)(b.Select,{disabled:ee||!eh.length,onValueChange:H,value:z,children:[(0,t.jsx)(b.SelectTrigger,{children:(0,t.jsx)(b.SelectValue,{placeholder:E("selectDevice")})}),(0,t.jsx)(b.SelectContent,{children:eh.map(e=>(0,t.jsxs)(b.SelectItem,{value:e.id,children:[e.generic?"SIMULATOR"===e.type?E("anySimulator"):E("anyPhysicalDevice"):e.name,e.osVersion?` \xb7 ${e.osVersion}`:""]},e.id))})]})]})]}),"TEST_WITHOUT_BUILDING"===O&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("priorBuildForTesting")}),(0,t.jsxs)(b.Select,{disabled:!eo.length,onValueChange:e=>J(t=>({...t,priorBuildForTestingId:e,priorTestProductsPath:null,priorXctestrunPath:null})),value:ed??"",children:[(0,t.jsx)(b.SelectTrigger,{children:(0,t.jsx)(b.SelectValue,{placeholder:E("selectPriorBuildForTesting")})}),(0,t.jsx)(b.SelectContent,{children:eo.map(e=>(0,t.jsxs)(b.SelectItem,{value:e.id,children:[new Date(e.createdAt).toLocaleString()," ·"," ",e.id]},e.id))})]}),!eo.length&&(0,t.jsx)("p",{className:"text-xs text-destructive",children:E("noPriorBuildForTesting")})]}),["TEST","BUILD_FOR_TESTING","TEST_WITHOUT_BUILDING"].includes(O)&&(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("testPlan")}),(0,t.jsxs)(b.Select,{onValueChange:e=>J(t=>({...t,testPlan:"__SCHEME_DEFAULT__"===e?null:e})),value:String(K.testPlan??"__SCHEME_DEFAULT__"),children:[(0,t.jsx)(b.SelectTrigger,{children:(0,t.jsx)(b.SelectValue,{})}),(0,t.jsxs)(b.SelectContent,{children:[(0,t.jsx)(b.SelectItem,{value:"__SCHEME_DEFAULT__",children:E("schemeDefaultTestPlan")}),"string"==typeof K.testPlan&&K.testPlan&&!el?.testPlans.includes(K.testPlan)&&(0,t.jsxs)(b.SelectItem,{value:K.testPlan,children:[K.testPlan," · ",E("savedValueUnavailable")]}),el?.testPlans.map(e=>(0,t.jsx)(b.SelectItem,{value:e,children:e},e))]})]})]}),D.allowedScripts.length>0&&(0,t.jsxs)("section",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("scripts")}),(0,t.jsx)("div",{className:"grid gap-2 sm:grid-cols-2",children:D.allowedScripts.map(({script:e})=>(0,t.jsxs)("label",{className:"flex items-start gap-2 rounded-lg border p-2",children:[(0,t.jsx)(h.Checkbox,{checked:V.has(e.id),onCheckedChange:t=>{G(r=>{let a=new Set(r);return t?a.add(e.id):a.delete(e.id),a})}}),(0,t.jsxs)("span",{children:[(0,t.jsx)("span",{className:"block text-sm font-medium",children:e.name}),(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:[e.preBuildScript?E("preBuild"):"",e.preBuildScript&&e.postBuildScript?" · ":"",e.postBuildScript?E("postBuild"):""]})]})]},e.id))})]}),(0,t.jsxs)("details",{className:"rounded-xl border p-3",children:[(0,t.jsx)("summary",{className:"cursor-pointer font-medium",children:E("advancedSettings")}),(0,t.jsxs)("div",{className:"mt-4 grid gap-4 sm:grid-cols-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{htmlFor:"development-team",children:E("developmentTeam")}),(0,t.jsx)(m.Input,{id:"development-team",onChange:e=>J(t=>({...t,developmentTeam:e.target.value||null})),value:String(K.developmentTeam??"")})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("packageResolution")}),(0,t.jsxs)(b.Select,{onValueChange:e=>J(t=>({...t,packageResolution:e})),value:String(K.packageResolution??"DEFAULT"),children:[(0,t.jsx)(b.SelectTrigger,{children:(0,t.jsx)(b.SelectValue,{})}),(0,t.jsx)(b.SelectContent,{children:["DEFAULT","RESOLVED_ONLY","SKIP_UPDATES","DISABLE_AUTOMATIC"].map(e=>(0,t.jsx)(b.SelectItem,{value:e,children:e},e))})]})]}),(0,t.jsxs)("label",{className:"flex items-center gap-2",children:[(0,t.jsx)(h.Checkbox,{checked:v||!!K.codeCoverage,disabled:v,onCheckedChange:e=>J(t=>({...t,codeCoverage:!!e}))}),E("codeCoverage")]}),["TEST","TEST_WITHOUT_BUILDING"].includes(O)&&(0,t.jsxs)("label",{className:"flex items-center gap-2",children:[(0,t.jsx)(h.Checkbox,{checked:v||!1!==K.parseTestResults,disabled:v,onCheckedChange:e=>J(t=>({...t,parseTestResults:!!e}))}),E("parseTestResults")]}),(0,t.jsxs)("label",{className:"flex items-center gap-2",children:[(0,t.jsx)(h.Checkbox,{checked:!!K.allowProvisioningUpdates,onCheckedChange:e=>J(t=>({...t,allowProvisioningUpdates:!!e}))}),E("allowProvisioningUpdates")]}),(0,t.jsxs)("div",{className:"space-y-2 sm:col-span-2",children:[(0,t.jsx)(g.Label,{htmlFor:"build-setting-overrides",children:E("buildSettingOverrides")}),(0,t.jsx)(j.Textarea,{className:"font-mono text-xs",id:"build-setting-overrides",onChange:e=>X(e.target.value),rows:4,value:Y})]})]})]}),(0,t.jsxs)("section",{className:"space-y-2",children:[(0,t.jsx)(g.Label,{children:E("commandPreview")}),(0,t.jsx)("pre",{className:"overflow-x-auto rounded-lg bg-muted p-3 text-xs whitespace-pre-wrap",children:em})]})]}):(0,t.jsx)(o.Alert,{children:(0,t.jsx)(o.AlertDescription,{children:E("noConfigurations")})}),(0,t.jsxs)(p.DialogFooter,{children:[(0,t.jsx)(c.Button,{onClick:()=>n(!1),type:"button",variant:"outline",children:E("cancel")}),(0,t.jsxs)(c.Button,{disabled:Q||ee||er||!ei||!ep||"TEST_WITHOUT_BUILDING"===O&&!ed,onClick:()=>void eg(),type:"button",children:[er&&(0,t.jsx)(f.Spinner,{})," ",E("startBuild")]})]})]})})}e.s(["StartBuildButton",0,function({codebaseId:e,worktreeId:a,disabled:s,disabledReason:n,buildSettingsHref:o,size:d="sm"}){let u=(0,i.useTranslations)("builds"),h=(0,v.useRouter)(),[p,m]=(0,l.useState)(!1),[g,b]=(0,l.useState)(!1),f=(0,l.useRef)(null),j=()=>{null!==f.current&&(window.clearTimeout(f.current),f.current=null)},w=()=>{j(),b(!0)},y=()=>{j(),f.current=window.setTimeout(()=>b(!1),150)};return(0,l.useEffect)(()=>()=>{null!==f.current&&window.clearTimeout(f.current)},[]),(0,t.jsxs)(t.Fragment,{children:[s&&o?(0,t.jsxs)(x.Popover,{onOpenChange:b,open:g,children:[(0,t.jsx)(x.PopoverAnchor,{asChild:!0,children:(0,t.jsxs)(c.Button,{"aria-disabled":"true","aria-expanded":g,"aria-haspopup":"dialog",className:"cursor-not-allowed opacity-50",onClick:w,onFocus:w,onMouseEnter:w,onMouseLeave:y,size:d,title:n??void 0,type:"button",children:[(0,t.jsx)(r.Hammer,{})," ",u("build")]})}),(0,t.jsx)(x.PopoverContent,{align:"start",className:"w-auto max-w-64 p-2 text-xs",onBlurCapture:y,onFocusCapture:j,onMouseEnter:j,onMouseLeave:y,onOpenAutoFocus:e=>e.preventDefault(),side:"top",children:(0,t.jsx)(v.Link,{className:"font-medium underline-offset-4 hover:underline",href:o,children:u("configureBuilds")})})]}):(0,t.jsxs)(c.Button,{disabled:s,onClick:()=>m(!0),size:d,title:n??void 0,type:"button",children:[(0,t.jsx)(r.Hammer,{})," ",u("build")]}),p&&(0,t.jsx)(T,{codebaseId:e,onOpenChange:m,onStarted:e=>h.push(`/builds/${e}`),open:p,worktreeId:a})]})},"WorktreeCoverageButton",0,function({codebaseId:e,worktreeId:r,disabled:a,onStarted:s}){let o=(0,i.useTranslations)("builds"),d=(0,v.useRouter)(),[u,h]=(0,l.useState)(!1);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(c.Button,{disabled:a,onClick:()=>h(!0),type:"button",children:[(0,t.jsx)(n,{})," ",o("generateWorktreeCoverage")]}),u&&(0,t.jsx)(T,{codebaseId:e,coverageMode:!0,onOpenChange:h,onStarted:e=>{s?.(e),d.push(`/builds/${e}`)},open:u,worktreeId:r})]})}],448295);var E=e.i(716327);let D=(0,s.default)("file-code-corner",[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]]),A=(0,s.default)("images",[["path",{d:"m22 11-1.296-1.296a2.4 2.4 0 0 0-3.408 0L11 16",key:"9kzy35"}],["path",{d:"M4 8a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2",key:"1t0f0t"}],["circle",{cx:"13",cy:"7",r:"1",fill:"currentColor",key:"1obus6"}],["rect",{x:"8",y:"2",width:"14",height:"14",rx:"2",key:"1gvhby"}]]);var B=e.i(861745),R=e.i(657688),_=e.i(784774);let P=`
30
+ id codebaseId gitDirectory folder relativePath primary branch headSha upstream ahead behind syncState
31
+ baseBranch baseBranchOverride baseAhead baseBehind hasStagedChanges hasUnstagedChanges highlightColor availability statusError
32
+ pushStatus
33
+ ticketKey ticketTitle ticketStatus lastCheckedAt missingAt createdAt updatedAt
34
+ tags { id name color createdAt updatedAt }
35
+ activeJob { id agentId kind payload status idempotencyKey result error timeoutSeconds createdAt startedAt finishedAt updatedAt }
36
+ 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 }
37
+ latestBuild {
38
+ id status action destinationType destination outOfDate createdAt
39
+ artifacts { id kind }
40
+ }
41
+ `,O=`
42
+ id folder observedOrigin branch headSha upstream ahead behind syncState availability statusError
43
+ defaultBranch localBranches remoteBranches lastCheckedAt lastFetchedAt lastFetchAttemptAt lastFetchError createdAt updatedAt
44
+ `,L=`mutation InspectWorktree($id: ID!, $requestId: ID!) {
45
+ inspectWorktree(id: $id, requestId: $requestId) {
46
+ commits { sha subject authorName authoredAt additions deletions }
47
+ changes { path previousPath changeType staged unstaged untracked conflicted stagedAdditions stagedDeletions unstagedAdditions unstagedDeletions }
48
+ branchChanges { path previousPath changeType additions deletions binary image }
49
+ commitsTruncated changesTruncated branchChangesTruncated
50
+ }
51
+ }`,W=`mutation InspectWorktreeDiff($input: WorktreeDiffInput!) {
52
+ inspectWorktreeDiff(input: $input) {
53
+ files { path previousPath changeType additions deletions binary image }
54
+ patch image binary truncated beforeAvailable afterAvailable
55
+ }
56
+ }`;function $({detail:e}){let r=(0,i.useTranslations)("worktrees"),a=(0,B.useLocale)();return(0,t.jsxs)("div",{className:"w-full space-y-4 border-t pt-4","data-testid":"worktree-detail","data-worktree-navigation-ignore":"true",children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-2 font-medium",children:r("changes",{count:e.changes.length})}),(0,t.jsx)("div",{className:"max-h-80 overflow-auto rounded-md border",children:e.changes.length?(0,t.jsx)(_.Table,{"aria-label":r("changes",{count:e.changes.length}),className:"min-w-[36rem] table-fixed text-xs",children:(0,t.jsx)(_.TableBody,{children:e.changes.map(e=>(0,t.jsxs)(_.TableRow,{children:[(0,t.jsx)(_.TableCell,{className:"max-w-0 px-2 py-1.5 font-mono",children:(0,t.jsx)("span",{className:"block truncate",title:e.path,children:e.path})}),(0,t.jsx)(_.TableCell,{className:"w-px px-2 py-1.5",children:(0,t.jsxs)("div",{className:"flex items-center justify-end gap-2",children:[e.conflicted&&(0,t.jsx)(d.Badge,{className:"px-1.5",variant:"destructive",children:r("conflicted")}),e.staged&&(0,t.jsx)(X,{additions:e.stagedAdditions,deletions:e.stagedDeletions,label:r("staged")}),e.unstaged&&(0,t.jsx)(X,{additions:e.unstagedAdditions,deletions:e.unstagedDeletions,label:r("unstaged")}),e.untracked&&(0,t.jsx)(X,{additions:e.unstagedAdditions,deletions:e.unstagedDeletions,label:r("untracked")})]})})]},e.path))})}):(0,t.jsx)("p",{className:"p-3 text-sm text-muted-foreground",children:r("noChanges")})})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-2 font-medium",children:r("commits",{count:e.commits.length})}),(0,t.jsx)("div",{className:"max-h-80 overflow-auto rounded-md border",children:e.commits.length?(0,t.jsx)(_.Table,{"aria-label":r("commits",{count:e.commits.length}),className:"min-w-[36rem] table-fixed text-xs",children:(0,t.jsx)(_.TableBody,{children:e.commits.map(e=>(0,t.jsxs)(_.TableRow,{children:[(0,t.jsx)(_.TableCell,{className:"w-24 px-2 py-1.5 font-mono text-muted-foreground",children:e.sha.slice(0,8)}),(0,t.jsx)(_.TableCell,{className:"max-w-0 px-2 py-1.5",children:(0,t.jsxs)("div",{className:"flex min-w-0 items-baseline gap-2",children:[(0,t.jsx)("span",{className:"truncate font-medium",children:e.subject}),(0,t.jsxs)("span",{className:"shrink-0 text-muted-foreground",children:[e.authorName," ·"," ",new Date(e.authoredAt).toLocaleString(a)]})]})}),(0,t.jsx)(_.TableCell,{className:"w-24 px-2 py-1.5 text-right",children:(0,t.jsx)(Q,{additions:e.additions,deletions:e.deletions})})]},e.sha))})}):(0,t.jsx)("p",{className:"p-3 text-sm text-muted-foreground",children:r("noCommits")})})]})]})}function M({label:e,prefix:r,summary:a,children:s}){let[n,i]=(0,l.useState)(!1);return(0,t.jsxs)("div",{children:[(0,t.jsxs)("button",{"aria-expanded":n,className:"flex min-h-8 w-full items-center gap-2 px-2 py-1.5 text-left hover:bg-muted/40",onClick:()=>i(e=>!e),type:"button",children:[(0,t.jsx)(E.ChevronDown,{className:(0,k.cn)("size-3.5 shrink-0 transition-transform",n&&"rotate-180")}),r&&(0,t.jsx)("span",{className:"shrink-0 font-mono text-xs text-muted-foreground",children:r}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs",title:e,children:e}),(0,t.jsx)("span",{className:"shrink-0",children:a})]}),n&&s&&(0,t.jsx)("div",{className:"border-t bg-muted/10 p-3",children:s})]})}function U({worktreeId:e,commitSha:r}){let{value:a,loading:s,error:n}=z(e,"COMMIT",null,null,r);return s?(0,t.jsx)(J,{}):n?(0,t.jsx)(Y,{value:n}):(0,t.jsx)("div",{className:"divide-y rounded-md border bg-background",children:a?.files.map(a=>(0,t.jsx)(q,{commitSha:r,file:a,scope:"COMMIT",worktreeId:e},`${a.previousPath??""}:${a.path}`))})}function q({file:e,worktreeId:r,scope:a,commitSha:s}){return(0,t.jsx)(M,{label:e.path,summary:(0,t.jsxs)("span",{className:"inline-flex items-center gap-2",children:[e.image?(0,t.jsx)(A,{className:"size-4"}):(0,t.jsx)(D,{className:"size-4"}),(0,t.jsx)(d.Badge,{variant:"outline",children:e.changeType}),(0,t.jsx)(Q,{additions:e.additions,deletions:e.deletions})]}),children:(0,t.jsx)(F,{commitSha:s,path:e.path,previousPath:e.previousPath,scope:a,worktreeId:r})})}function F({label:e,worktreeId:r,path:a,previousPath:s,scope:n,commitSha:l}){let o=(0,i.useTranslations)("worktreeDetail"),{value:d,loading:c,error:u}=z(r,n,a,s??null,l??null);return(0,t.jsxs)("div",{className:"space-y-2",children:[e&&(0,t.jsx)("p",{className:"text-xs font-medium uppercase text-muted-foreground",children:e}),c?(0,t.jsx)(J,{}):u?(0,t.jsx)(Y,{value:u}):d?.image?(0,t.jsx)(V,{commitSha:l,diff:d,path:a,previousPath:s,scope:n,worktreeId:r}):d?.patch?(0,t.jsx)(H,{patch:d.patch,truncated:d.truncated}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:o(d?.truncated?"diffTooLarge":d?.binary?"binaryFileChanged":"noTextChanges")})]})}function z(e,t,r,a,s){let[n,i]=(0,l.useState)(null),[o,d]=(0,l.useState)(!0),[c,u]=(0,l.useState)(null);return(0,l.useEffect)(()=>{let n=!1;return(0,y.controlPlaneRequest)(W,{input:{worktreeId:e,scope:t,path:r,previousPath:a,commitSha:s,requestId:(0,w.createClientId)()}}).then(e=>{n||i(e.inspectWorktreeDiff)}).catch(e=>{n||u(e instanceof Error?e.message:String(e))}).finally(()=>{n||d(!1)}),()=>{n=!0}},[s,r,a,t,e]),{value:n,loading:o,error:c}}function H({patch:e,truncated:r}){let a=(0,i.useTranslations)("worktreeDetail");return(0,t.jsxs)("div",{className:"overflow-auto rounded-md border bg-neutral-950 font-mono text-xs text-neutral-100",children:[e.split("\n").map((e,r)=>(0,t.jsx)("div",{className:(0,k.cn)("min-w-max px-3 whitespace-pre",e.startsWith("+")&&!e.startsWith("+++")&&"bg-emerald-950/70 text-emerald-200",e.startsWith("-")&&!e.startsWith("---")&&"bg-red-950/70 text-red-200",e.startsWith("@@")&&"bg-blue-950/60 text-blue-200"),children:e||" "},`${r}:${e}`)),r&&(0,t.jsx)("p",{className:"border-t p-2 text-amber-300",children:a("diffLimit")})]})}function V({worktreeId:e,path:r,previousPath:a,scope:s,commitSha:n,diff:o}){let d=(0,i.useTranslations)("worktreeDetail"),[u,h]=(0,l.useState)("SIDE_BY_SIDE"),[p,g]=(0,l.useState)(50),x=t=>{let i=new URLSearchParams({scope:s,path:r,side:t});return a&&i.set("previousPath",a),n&&i.set("commitSha",n),`/api/worktrees/${encodeURIComponent(e)}/diff-image?${i}`},b=o.beforeAvailable?x("BEFORE"):null,f=o.afterAvailable?x("AFTER"):null;return(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)(c.Button,{onClick:()=>h("SIDE_BY_SIDE"),size:"sm",variant:"SIDE_BY_SIDE"===u?"default":"outline",children:d("sideBySide")}),(0,t.jsx)(c.Button,{onClick:()=>h("OVERLAP"),size:"sm",variant:"OVERLAP"===u?"default":"outline",children:d("overlap")}),"OVERLAP"===u&&(0,t.jsx)(m.Input,{"aria-label":d("imageTransparency"),className:"w-48",max:100,min:0,onChange:e=>g(Number(e.target.value)),type:"range",value:p})]}),"SIDE_BY_SIDE"===u?(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsx)(G,{label:d("before"),url:b}),(0,t.jsx)(G,{label:d("after"),url:f})]}):(0,t.jsxs)("div",{className:"relative min-h-64 overflow-hidden rounded-md border bg-[repeating-conic-gradient(#ddd_0_25%,#fff_0_50%)_0/20px_20px] dark:bg-[repeating-conic-gradient(#222_0_25%,#333_0_50%)_0/20px_20px]",children:[b&&(0,t.jsx)(R.default,{alt:"Before",className:"absolute inset-0 size-full object-contain",fill:!0,src:b,unoptimized:!0}),f&&(0,t.jsx)(R.default,{alt:"After",className:"absolute inset-0 size-full object-contain",fill:!0,src:f,style:{opacity:p/100},unoptimized:!0}),!b&&!f&&(0,t.jsx)(K,{})]})]})}function G({label:e,url:r}){return(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-xs font-medium text-muted-foreground",children:e}),(0,t.jsx)("div",{className:"flex min-h-64 items-center justify-center overflow-hidden rounded-md border bg-muted/30",children:r?(0,t.jsx)(R.default,{alt:e,className:"max-h-[36rem] max-w-full object-contain",height:1024,src:r,unoptimized:!0,width:1024}):(0,t.jsx)(K,{})})]})}function K(){let e=(0,i.useTranslations)("worktreeDetail");return(0,t.jsx)("span",{className:"text-sm text-muted-foreground",children:e("noImageSide")})}function J(){let e=(0,i.useTranslations)("worktreeDetail");return(0,t.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(f.Spinner,{})," ",e("loadingDiff")]})}function Y({value:e}){return(0,t.jsx)("p",{className:"text-sm text-destructive",children:e})}function X({label:e,additions:r,deletions:a}){return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 whitespace-nowrap text-muted-foreground",children:[(0,t.jsx)("span",{children:e}),(0,t.jsx)(Q,{additions:r,deletions:a})]})}function Q({additions:e,deletions:r}){return null===e&&null===r?(0,t.jsx)("span",{className:"text-muted-foreground",children:"—"}):(0,t.jsxs)("span",{className:"inline-flex gap-1 tabular-nums",children:[(0,t.jsxs)("span",{className:"text-emerald-700 dark:text-emerald-400",children:["+",e??0]}),(0,t.jsxs)("span",{className:"text-red-700 dark:text-red-400",children:["−",r??0]})]})}async function Z(e){return(await (0,y.controlPlaneRequest)(L,{id:e,requestId:(0,w.createClientId)()})).inspectWorktree}e.s(["CODEBASE_FIELDS",0,O,"INSPECT_WORKTREE_DIFF_MUTATION",0,W,"INSPECT_WORKTREE_MUTATION",0,L,"WORKTREE_FIELDS",0,P],455329),e.s(["BranchChangesPanel",0,function({files:e,truncated:r,worktreeId:a}){let s=(0,i.useTranslations)("worktreeDetail");return(0,t.jsxs)("div",{className:"space-y-3",children:[e.length?(0,t.jsx)("div",{className:"divide-y rounded-md border",children:e.map(e=>(0,t.jsx)(q,{file:e,scope:"BRANCH",worktreeId:a},`${e.previousPath??""}:${e.path}`))}):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:s("noBranchChanges")}),r&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:s("diffTruncated")})]})},"WorktreeDetailPanel",0,function({detail:e,worktreeId:r,inline:a=!1}){let s=(0,i.useTranslations)("worktrees"),n=(0,B.useLocale)();return a?(0,t.jsx)($,{detail:e}):(0,t.jsxs)("div",{className:(0,k.cn)("w-full space-y-4",a&&"border-t pt-4"),"data-testid":"worktree-detail","data-worktree-navigation-ignore":a?"true":void 0,children:[(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-2 font-medium",children:s("changes",{count:e.changes.length})}),(0,t.jsx)("div",{className:"divide-y rounded-md border",children:e.changes.length?e.changes.map(e=>(0,t.jsx)(M,{label:e.path,summary:(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[e.conflicted&&(0,t.jsx)(d.Badge,{variant:"destructive",children:s("conflicted")}),e.staged&&(0,t.jsx)(X,{additions:e.stagedAdditions,deletions:e.stagedDeletions,label:s("staged")}),e.unstaged&&(0,t.jsx)(X,{additions:e.unstagedAdditions,deletions:e.unstagedDeletions,label:s("unstaged")}),e.untracked&&(0,t.jsx)(X,{additions:e.unstagedAdditions,deletions:e.unstagedDeletions,label:s("untracked")})]}),children:r?(0,t.jsxs)("div",{className:"space-y-3",children:[e.staged&&(0,t.jsx)(F,{label:s("staged"),path:e.path,previousPath:e.previousPath,scope:"STAGED",worktreeId:r}),e.unstaged&&(0,t.jsx)(F,{label:s("unstaged"),path:e.path,scope:"UNSTAGED",worktreeId:r}),e.untracked&&(0,t.jsx)(F,{label:s("untracked"),path:e.path,scope:"UNTRACKED",worktreeId:r})]}):null},e.path)):(0,t.jsx)("p",{className:"p-3 text-sm text-muted-foreground",children:s("noChanges")})})]}),(0,t.jsxs)("section",{children:[(0,t.jsx)("h2",{className:"mb-2 font-medium",children:s("commits",{count:e.commits.length})}),(0,t.jsx)("div",{className:"divide-y rounded-md border",children:e.commits.length?e.commits.map(e=>(0,t.jsx)(M,{label:e.subject,prefix:e.sha.slice(0,8),summary:(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:[e.authorName," ·"," ",new Date(e.authoredAt).toLocaleString(n)," ·"," ",(0,t.jsx)(Q,{additions:e.additions,deletions:e.deletions})]}),children:r?(0,t.jsx)(U,{commitSha:e.sha,worktreeId:r}):null},e.sha)):(0,t.jsx)("p",{className:"p-3 text-sm text-muted-foreground",children:s("noCommits")})})]}),(e.commitsTruncated||e.changesTruncated)&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:s("truncated")})]})}],942230),e.s(["inspectWorktree",0,Z,"useLiveWorktree",0,function(e){let[t,r]=(0,l.useState)(null),a=(0,l.useCallback)(t=>{r(r=>({sourceUpdatedAt:e.updatedAt,value:r?.sourceUpdatedAt===e.updatedAt?{...r.value,...t}:t}))},[e.updatedAt]),s=(0,l.useCallback)(e=>{let t={};null!==e.hasStagedChanges&&(t.hasStagedChanges=e.hasStagedChanges),null!==e.hasUnstagedChanges&&(t.hasUnstagedChanges=e.hasUnstagedChanges),null!==e.pushStatus&&(t.pushStatus=e.pushStatus),"string"==typeof e.headSha&&Object.assign(t,{branch:e.branch,headSha:e.headSha,upstream:e.upstream,ahead:e.ahead,behind:e.behind,syncState:e.syncState??"UNKNOWN",baseAhead:e.baseAhead,baseBehind:e.baseBehind}),Object.keys(t).length&&a(t)},[a]);return{worktree:t?.sourceUpdatedAt===e.updatedAt?{...e,...t.value}:e,applyActivity:s,setUnstagedChanges:(0,l.useCallback)(e=>a({hasUnstagedChanges:e}),[a])}},"useQueuedWorktreeInspection",0,function(e){let t=(0,l.useRef)(!1),r=(0,l.useRef)(!1);return(0,l.useCallback)(async()=>{if(t.current){r.current=!0;return}t.current=!0;try{do r.current=!1,await e();while(r.current)}finally{t.current=!1}},[e])},"useWorktreeActivitySubscription",0,function(e,t,r){let a=(0,l.useRef)(r);(0,l.useEffect)(()=>{a.current=r},[r]),(0,l.useEffect)(()=>{if(!t)return;let r=!1,s=0,n=null,i=()=>void 0,l=e=>{r||e!==s||null!==n||(n=window.setTimeout(()=>{n=null,o()},1e3))},o=()=>{let t=++s;i=(0,y.controlPlaneSubscriptions)().subscribe({query:`subscription WorktreeInspectionChanged($worktreeId: ID!) {
57
+ worktreeInspectionChanged(worktreeId: $worktreeId) {
58
+ worktreeId branch headSha upstream ahead behind syncState baseAhead baseBehind
59
+ hasStagedChanges hasUnstagedChanges pushStatus observedAt
60
+ }
61
+ }`,variables:{worktreeId:e}},{next:e=>{let t=e.data?.worktreeInspectionChanged;t&&a.current(t)},error:()=>l(t),complete:()=>l(t)})};return o(),()=>{r=!0,s+=1,null!==n&&window.clearTimeout(n),i()}},[t,e])}],756283)},267572,e=>{"use strict";var t=e.i(843476),r=e.i(271645),a=e.i(876561),s=e.i(635416),n=e.i(768877),i=e.i(96892),l=e.i(689664),o=e.i(716327),d=e.i(867927),c=e.i(452330),u=e.i(482022),h=e.i(269846),p=e.i(634398),m=e.i(851817),g=e.i(882505),x=e.i(648119),b=e.i(939050),f=e.i(506184),j=e.i(515281),v=e.i(77071),w=e.i(741120),y=e.i(395925),k=e.i(856522),S=e.i(566595),C=e.i(868401),I=e.i(573474),N=e.i(725981),T=e.i(861745),E=e.i(948148),D=e.i(778434),A=e.i(90969),B=e.i(771777),R=e.i(866026),_=e.i(448295),P=e.i(346194),O=e.i(647776),L=e.i(948812),W=e.i(356505),$=e.i(929592),M=e.i(487486),U=e.i(519455),q=e.i(515288),F=e.i(59497),z=e.i(776639),H=e.i(755146),V=e.i(82612),G=e.i(793479),K=e.i(906197),J=e.i(110204),Y=e.i(337822),X=e.i(337355),Q=e.i(987968),Z=e.i(967489),ee=e.i(784774),et=e.i(808562),er=e.i(462777),ea=e.i(637611),es=e.i(975157),en=e.i(520133),ei=e.i(284494),el=e.i(942230),eo=e.i(455329),ed=e.i(756283),ec=e.i(440289),eu=e.i(940276);let eh=["gray","stone","red","rose","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink"],ep="worktrees-layout",em="__all__";function eg(e,t){return e.some(e=>("string"==typeof e||"number"==typeof e)&&String(e).toLocaleLowerCase().includes(t))}function ex(e,t){let r=t.query.trim().toLocaleLowerCase();return r||t.agentId||t.repositoryId?e.flatMap(e=>{if(t.agentId&&e.agent.id!==t.agentId)return[];let a=r.length>0&&eg([e.agent.id,e.agent.name,e.agent.hostname],r),s=e.codebases.flatMap(e=>{if(t.repositoryId&&e.repository.id!==t.repositoryId)return[];let s=r.length>0&&eg([e.repository.id,e.repository.name,e.repository.description,e.repository.canonicalOrigin,e.repository.displayOrigin,e.codebase.id,e.codebase.folder,e.codebase.observedOrigin,e.codebase.branch,e.codebase.defaultBranch],r),n=!r||a||s?e.worktrees:e.worktrees.filter(e=>eg([e.id,e.branch,e.folder,e.relativePath,e.ticketKey,e.ticketTitle,e.ticketStatus,e.pullRequest?.number,e.pullRequest?.title,e.pullRequest?.repositoryNameWithOwner,e.pullRequest?.jiraKey,...e.tags.map(e=>e.name)],r));return n.length?[{...e,worktrees:n}]:[]});return s.length?[{...e,codebases:s}]:[]}):e}function eb(e,t){if(!t)return e;let r=/^[A-Za-z]:[\\/]/.test(t)||t.startsWith("\\\\"),a=r?"\\":"/",s=e=>r?e.replaceAll("/","\\"):e,n=e=>(r?/^[A-Za-z]:\\$/.test(e):"/"===e)?e:e.replace(/[\\/]+$/,""),i=n(s(t)),l=n(s(e)),o=r?i.toLocaleLowerCase():i,d=r?l.toLocaleLowerCase():l;if(d===o)return".";let c=i.endsWith(a)?i:`${i}${a}`,u=r?c.toLocaleLowerCase():c;return d.startsWith(u)?l.slice(c.length):e}function ef(e){return{hasChanges:e.hasStagedChanges||e.hasUnstagedChanges,stageOperation:e.hasStagedChanges&&!e.hasUnstagedChanges?"UNSTAGE_ALL":"STAGE_ALL"}}let ej={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"},ev={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"},ew={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 ey({moves:e,onReload:a,onError:s,onNotice:n}){let i=(0,E.useTranslations)("worktrees"),[l,o]=(0,r.useState)(null),d=async e=>{o(e.id);try{await (0,ea.controlPlaneRequest)(`mutation RetryWorktreeMove($id: ID!) {
62
+ retryWorktreeMoveWithStash(id: $id) { id status }
63
+ }`,{id:e.id});let t=await (0,ec.waitForWorktreeMove)(e.id);if("FAILED"===t.status)throw Error(t.error||i("moveFailed"));n("SUCCEEDED_WITH_WARNING"===t.status?t.warning||i("moveCompletedWithWarning"):i("moveCompleted")),s(null),await a()}catch(e){s(e instanceof Error?e.message:String(e))}finally{o(null)}},c=async e=>{o(e.id);try{await (0,ea.controlPlaneRequest)(`mutation CancelWorktreeMove($id: ID!) {
64
+ cancelWorktreeMove(id: $id) { id status }
65
+ }`,{id:e.id}),n(i("moveCancelled")),s(null),await a()}catch(e){s(e instanceof Error?e.message:String(e))}finally{o(null)}};return(0,t.jsx)("div",{className:"space-y-2",children:e.map(e=>(0,t.jsx)($.Alert,{children:(0,t.jsxs)($.AlertDescription,{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"font-medium",children:i("moveProgress",{branch:e.branch})}),(0,t.jsx)("p",{className:"text-muted-foreground",children:"AWAITING_STASH"===e.status?e.error||i("moveNeedsStash"):i(`moveStatus.${e.status}`)})]}),"AWAITING_STASH"===e.status?(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(U.Button,{disabled:l===e.id,onClick:()=>void c(e),size:"sm",variant:"outline",children:i("cancelMove")}),(0,t.jsxs)(U.Button,{disabled:l===e.id,onClick:()=>void d(e),size:"sm",children:[l===e.id&&(0,t.jsx)(Q.Spinner,{}),i("stashAndContinue")]})]}):(0,t.jsx)(Q.Spinner,{})]})},e.id))})}function ek(e,t){return{codebaseId:e.codebase.id,...t?{worktreeId:t.id}:{},defaultBranch:e.codebase.defaultBranch,currentBranch:t?.branch,currentBaseBranch:t?.baseBranch,localBranches:e.codebase.localBranches,remoteBranches:e.codebase.remoteBranches,unavailableBranches:e.worktrees.flatMap(e=>e.branch&&e.id!==t?.id?[e.branch]:[])}}function eS({overview:e,onCreated:a}){let s=(0,E.useTranslations)("worktrees"),n=e.agents.flatMap(e=>e.codebases.flatMap(t=>"ONLINE"===e.agent.connectionStatus&&e.agent.capabilities.includes("worktree.branch")&&"AVAILABLE"===t.codebase.availability&&!t.worktrees.some(e=>e.activeJob)?[{agentGroup:e,group:t}]:[])),[i,l]=(0,r.useState)(1===n.length?n[0].group.codebase.id:""),[o,d]=(0,r.useState)(!1),c=n.some(e=>e.group.codebase.id===i)?i:1===n.length?n[0].group.codebase.id:"",u=n.find(e=>e.group.codebase.id===c),h=n.map(({agentGroup:e,group:t})=>({value:t.codebase.id,label:`${t.repository.name} \xb7 ${e.agent.name}`,description:t.codebase.folder,keywords:`${t.repository.displayOrigin} ${e.agent.hostname}`})),p=async e=>{if(!u)throw Error(s("selectCodebase"));d(!0);try{let t=await (0,ea.controlPlaneRequest)(`mutation CreateWorktree($input: CreateWorktreeInput!) {
66
+ createWorktree(input: $input) { id }
67
+ }`,{input:{codebaseId:u.group.codebase.id,selection:e,requestId:(0,er.createClientId)()}});await (0,ec.waitForWorktreeJob)(t.createWorktree.id),await a()}finally{d(!1)}};return(0,t.jsxs)(q.Card,{children:[(0,t.jsx)(q.CardHeader,{className:"border-b",children:(0,t.jsxs)(q.CardTitle,{className:"flex items-center gap-2",children:[(0,t.jsx)(v.Plus,{})," ",s("createWorktree")]})}),(0,t.jsxs)(q.CardContent,{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(J.Label,{className:"mb-1.5 block",children:s("repositoryCheckout")}),(0,t.jsx)(X.SearchableSelect,{ariaLabel:s("repositoryCheckout"),disabled:o||0===h.length,emptyMessage:s("noEligibleCodebases"),onValueChange:l,options:h,placeholder:s("selectCodebase"),searchPlaceholder:s("searchCodebases"),value:c})]}),u?(0,t.jsx)(ei.WorktreeBranchForm,{busy:o,onSubmit:p,submitLabel:s("createWorktree"),target:ek(u.group)},u.group.codebase.id):(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:h.length?s("selectCodebaseHelp"):s("noEligibleCodebases")})]})]})}function eC({agentGroup:e,layout:r,allTags:a,editorVariant:s,inspectionRefreshToken:n,onReload:i,onUpdate:l,onError:o,onManageTags:d,onOpenTicket:c,overview:u}){let h=(0,E.useTranslations)("worktrees"),p="ONLINE"===e.agent.connectionStatus&&e.agent.capabilities.includes("worktree.watch"),m="ONLINE"===e.agent.connectionStatus&&e.agent.capabilities.includes("worktree.branch");return(0,t.jsxs)("section",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 border-b pb-2",children:[(0,t.jsx)("h2",{className:"text-lg font-semibold",children:e.agent.name}),(0,t.jsx)(M.Badge,{variant:"ONLINE"===e.agent.connectionStatus?"success":"secondary",children:h("ONLINE"===e.agent.connectionStatus?"online":"offline")}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:e.agent.hostname})]}),e.codebases.map(h=>(0,t.jsxs)("section",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h3",{className:"font-medium",children:h.repository.name}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:h.repository.displayOrigin})]}),(0,t.jsx)(eI,{codebase:h.codebase})]}),"cards"===r?(0,t.jsx)("div",{className:"space-y-3",children:h.worktrees.map(r=>(0,t.jsx)(eN,{allTags:a,baseRepoDirectory:e.agent.baseRepoDirectory,branchManagementEnabled:m,editorVariant:s,group:h,inspectionRefreshToken:n,liveUpdatesEnabled:p,onError:o,onManageTags:d,onOpenTicket:c,onReload:i,onUpdate:l,overview:u,worktree:r},r.id))}):(0,t.jsx)(eH,{allTags:a,baseRepoDirectory:e.agent.baseRepoDirectory,branchManagementEnabled:m,editorVariant:s,group:h,inspectionRefreshToken:n,liveUpdatesEnabled:p,onError:o,onManageTags:d,onOpenTicket:c,onReload:i,onUpdate:l,overview:u})]},h.codebase.id))]})}function eI({codebase:e}){let a=(0,E.useTranslations)("worktrees"),s=(0,T.useLocale)(),[n,i]=(0,r.useState)(null);(0,r.useEffect)(()=>{let e=()=>i(new Date().getTime()),t=window.setTimeout(e,0),r=window.setInterval(e,1e3);return()=>{window.clearTimeout(t),window.clearInterval(r)}},[]);let l=e.lastFetchedAt&&null!==n?Math.max(0,n-new Date(e.lastFetchedAt).getTime()):null,o=null===l?a("neverFetched"):l<6e4?a("secondsAgo",{count:Math.floor(l/1e3)}):new Intl.RelativeTimeFormat(s,{numeric:"auto"}).format(-Math.floor(l/6e4),"minute");return(0,t.jsx)("span",{className:(0,es.cn)("text-xs text-muted-foreground",e.lastFetchError&&"text-destructive"),title:e.lastFetchError??void 0,children:a("lastFetched",{value:o})})}function eN(e){let{inspectionRefreshToken:a,onError:s}=e,{worktree:n,applyActivity:i,setUnstagedChanges:l}=(0,ed.useLiveWorktree)(e.worktree),c={...e,worktree:n},[u,h]=(0,r.useState)(!1),[p,m]=(0,r.useState)(null),[g,x]=(0,r.useState)(!1),b=(0,r.useRef)(0),f=(0,r.useRef)(a),j=(0,E.useTranslations)("worktrees"),v=(0,en.useRouter)(),w=(0,r.useCallback)(async()=>{let e=++b.current;x(!0);try{let t=await (0,ed.inspectWorktree)(n.id);if(e!==b.current)return;m(t),l(t.changes.some(e=>e.unstaged||e.untracked||e.conflicted)),s(null)}catch(t){e===b.current&&s(t instanceof Error?t.message:String(t))}finally{e===b.current&&x(!1)}},[s,l,n.id]),y=(0,ed.useQueuedWorktreeInspection)(w),k=(0,r.useCallback)(e=>{i(e),u&&y()},[i,u,y]);(0,ed.useWorktreeActivitySubscription)(n.id,e.liveUpdatesEnabled&&"AVAILABLE"===n.availability,k),(0,r.useEffect)(()=>{if(f.current===a||(f.current=a,!u))return;let e=window.setTimeout(()=>void y(),0);return()=>window.clearTimeout(e)},[u,a,y]);let S=()=>{let e=!u;h(e),e&&!p&&y()};return(0,t.jsxs)(q.Card,{className:(0,es.cn)("cursor-pointer transition-colors hover:bg-muted/30",n.highlightColor&&ej[n.highlightColor]),onClick:e=>{(0,eu.shouldNavigateWorktreeSurface)(e)&&v.push((0,eu.worktreeDetailHref)(n.id))},children:[(0,t.jsxs)(q.CardHeader,{className:"grid-cols-1! border-b @md/card-header:grid-cols-[minmax(0,1fr)_auto]!",children:[(0,t.jsxs)(q.CardTitle,{className:"min-w-0",children:[(0,t.jsxs)(U.Button,{"aria-expanded":u,className:"h-auto w-full max-w-full justify-start gap-1 p-1 text-left",onClick:()=>void S(),variant:"ghost",children:[u?(0,t.jsx)(o.ChevronDown,{}):(0,t.jsx)(d.ChevronRight,{}),(0,t.jsx)("span",{className:"truncate font-mono",children:n.branch??n.headSha?.slice(0,10)??j("detached")})]}),(n.ticketKey||n.ticketTitle)&&(0,t.jsx)(eE,{...c})]}),(0,t.jsxs)(q.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,t.jsx)(eL,{worktree:n}),n.hasUnstagedChanges&&(0,t.jsx)(M.Badge,{variant:"destructive",children:j("dirty")}),(0,t.jsx)(eT,{worktree:n}),(0,t.jsx)(eM,{...c})]})]}),(0,t.jsxs)(q.CardContent,{className:"space-y-4",children:[(0,t.jsx)(eD,{...c,detailsExpanded:u,onToggleDetails:S}),g&&(0,t.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(Q.Spinner,{})," ",j("loadingDetails")]}),u&&p&&(0,t.jsx)(el.WorktreeDetailPanel,{detail:p,inline:!0})]}),(0,t.jsx)(q.CardFooter,{className:"flex-wrap gap-2","data-worktree-navigation-ignore":!0,children:(0,t.jsx)(eF,{...c,onCompleted:async()=>{await e.onReload(),u&&await y()}})})]})}function eT({worktree:e}){let r=(0,E.useTranslations)("worktrees"),a=e.branch??e.headSha?.slice(0,10)??r("detached"),s=r("openWorktreeDetails",{branch:a});return(0,t.jsx)(U.Button,{asChild:!0,size:"icon-sm",variant:"ghost",children:(0,t.jsx)(en.Link,{"aria-label":s,href:(0,eu.worktreeDetailHref)(e.id),title:s,children:(0,t.jsx)(n.ArrowRight,{})})})}function eE({worktree:e,onOpenTicket:r,compact:a=!1}){let s=`${e.ticketKey??""}${e.ticketTitle?`${e.ticketKey?" — ":""}${e.ticketTitle}`:""}`;return(0,t.jsxs)("div",{className:(0,es.cn)("flex max-w-full flex-wrap items-center gap-1.5 font-normal",a?"mt-0.5 text-xs":"mt-1 text-sm"),children:[e.ticketKey?(0,t.jsx)(U.Button,{className:"h-auto min-w-0 justify-start truncate p-0 text-left font-normal",onClick:()=>r(e.ticketKey),title:s,type:"button",variant:"link",children:s}):(0,t.jsx)("p",{className:"min-w-0 truncate text-muted-foreground",title:s,children:s}),e.ticketStatus&&(e.ticketKey?(0,t.jsx)(M.Badge,{asChild:!0,variant:"secondary",children:(0,t.jsx)("button",{onClick:()=>r(e.ticketKey),type:"button",children:e.ticketStatus})}):(0,t.jsx)(M.Badge,{variant:"secondary",children:e.ticketStatus}))]})}function eD(e){let{worktree:r,group:a,baseRepoDirectory:s,detailsExpanded:n,onToggleDetails:i}=e,l=(0,E.useTranslations)("worktrees");return(0,t.jsxs)("div",{className:"space-y-3 text-sm",children:[(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsx)(eK,{label:l("path"),mono:!0,value:eb(r.folder,s)}),(0,t.jsx)(eW,{...e})]}),(0,t.jsx)(eB,{label:l("upToDate"),children:(0,t.jsx)(e_,{worktree:r})}),(0,t.jsx)(eR,{...e}),(0,t.jsx)(eB,{label:l("pullRequest"),children:(0,t.jsx)(eP,{detailsExpanded:n,onToggleDetails:i,worktree:r})}),r.latestBuild&&(0,t.jsx)(eA,{build:r.latestBuild,onCompleted:e.onReload,onError:e.onError}),(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[r.statusError&&(0,t.jsx)("span",{className:"text-xs text-destructive",children:r.statusError}),!a.codebase.defaultBranch&&!r.baseBranchOverride&&(0,t.jsx)("span",{className:"text-xs text-destructive",children:l("baseUnavailable")})]})]})}function eA({build:e,onCompleted:r,onError:a}){let s=(0,E.useTranslations)("worktrees"),n=(0,E.useTranslations)("builds"),i="SUCCEEDED"===e.status&&e.artifacts.some(e=>"RUNNABLE_APP"===e.kind);return(0,t.jsxs)(eB,{label:s("latestBuild"),children:[(0,t.jsx)(M.Badge,{asChild:!0,variant:"outline",children:(0,t.jsx)(en.Link,{href:`/builds/${e.id}`,children:n(`actions.${e.action}`)})}),(0,t.jsx)(M.Badge,{variant:(0,A.buildStatusVariant)(e.status),children:n(`statuses.${e.status}`)}),e.outOfDate&&(0,t.jsx)(M.Badge,{className:"border-amber-500/40 text-amber-700 dark:text-amber-300",variant:"outline",children:n("outOfDate")}),(0,t.jsx)(B.RebuildButton,{buildId:e.id,onCompleted:()=>r(),onError:a,size:"sm"}),i&&(0,t.jsx)(R.RunBuildControls,{buildId:e.id,destinationType:e.destinationType,onCompleted:r,onError:a,preferredDestination:e.destination,size:"sm"})]})}function eB({label:e,children:r}){return(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,t.jsx)("p",{className:"w-24 shrink-0 text-xs text-muted-foreground",children:e}),(0,t.jsx)("div",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:r})]})}function eR({compact:e=!1,...r}){let{worktree:a}=r,s=(0,E.useTranslations)("worktrees");return(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[!e&&(0,t.jsx)("span",{className:"w-24 shrink-0 text-xs text-muted-foreground",children:s("tags")}),(0,t.jsx)(eM,{...r,contentAlign:e?"end":"start",contentAlignOffset:e?0:-100,trigger:(0,t.jsx)(U.Button,{"aria-label":`${s("tags")}: ${a.branch??s("detached")}`,className:(0,es.cn)("h-auto min-h-7 max-w-full justify-start px-1 py-1 text-left font-normal",!e&&"-mx-1"),type:"button",variant:"ghost",children:(0,t.jsxs)("span",{className:"flex min-w-0 flex-wrap items-center gap-1.5",children:[a.tags.map(e=>(0,t.jsx)(eG,{tag:e},e.id)),!a.tags.length&&(0,t.jsx)("span",{className:"text-muted-foreground",children:"—"})]})})})]})}function e_({worktree:e}){let r=(0,E.useTranslations)("worktrees"),a=0===e.baseBehind;return(0,t.jsx)(M.Badge,{className:a?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":null===e.baseBehind?void 0:"border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300",variant:"outline",children:null===e.baseBehind?r("unknown"):a?r("yes"):r("notUpToDate",{count:e.baseBehind})})}function eP({worktree:e,detailsExpanded:r,onToggleDetails:a}){var s;let n=(0,E.useTranslations)("worktrees");return(0,t.jsxs)(t.Fragment,{children:[e.pullRequest?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(eO,{pullRequest:e.pullRequest}),(0,t.jsx)(O.PipelineMenu,{pipelineStatus:e.pullRequest.pipelineStatus,pipelines:e.pullRequest.pipelines,repositoryId:e.pullRequest.repositoryGithubId}),(0,t.jsx)(M.Badge,{className:"APPROVED"===(s=e.pullRequest.reviewDecision)?"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300":"CHANGES_REQUESTED"===s?"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:n(`review.${e.pullRequest.reviewDecision}`)}),(0,t.jsx)(M.Badge,{asChild:!0,className:0===e.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,t.jsx)(en.Link,{href:(0,L.pullRequestCommentsHref)(e.pullRequest),children:n("comments",{count:e.pullRequest.unresolvedReviewThreadCount})})})]}):(0,t.jsx)("span",{className:"text-muted-foreground",children:"—"}),a?(0,t.jsx)(M.Badge,{asChild:!0,variant:"secondary",children:(0,t.jsx)("button",{"aria-expanded":r,onClick:a,type:"button",children:n("branchCommits",{count:e.baseAhead??0})})}):(0,t.jsx)(M.Badge,{variant:"secondary",children:n("branchCommits",{count:e.baseAhead??0})})]})}function eO({pullRequest:e}){let r=(0,E.useTranslations)("worktrees");return(0,t.jsxs)(H.DropdownMenu,{children:[(0,t.jsx)(H.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)(M.Badge,{asChild:!0,children:(0,t.jsxs)("button",{type:"button",children:["PR #",e.number]})})}),(0,t.jsxs)(H.DropdownMenuContent,{align:"start",className:"w-44",children:[(0,t.jsx)(H.DropdownMenuItem,{asChild:!0,children:(0,t.jsxs)("a",{href:e.url,rel:"noreferrer",target:"_blank",children:[(0,t.jsx)(u.ExternalLink,{}),r("openInGitHub")]})}),(0,t.jsx)(H.DropdownMenuItem,{asChild:!0,children:(0,t.jsxs)(en.Link,{href:(0,L.pullRequestDetailHref)(e),children:[(0,t.jsx)(p.GitPullRequest,{}),r("openDetails")]})})]})]})}function eL({worktree:e}){var r,a;let n=(0,E.useTranslations)("worktrees");return"IN_SYNC"===e.syncState||0===e.ahead&&0===e.behind?(0,t.jsx)(M.Badge,{className:"border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300",variant:"outline",children:n("inSync")}):null!==e.ahead||null!==e.behind?(0,t.jsxs)(t.Fragment,{children:[null!==e.ahead&&(0,t.jsxs)(M.Badge,{className:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",variant:"outline",children:[(0,t.jsx)(i.ArrowUp,{"data-icon":"inline-start"}),n("ahead",{count:e.ahead})]}),null!==e.behind&&(0,t.jsxs)(M.Badge,{className:"border-blue-500/30 bg-blue-500/10 text-blue-700 dark:text-blue-300",variant:"outline",children:[(0,t.jsx)(s.ArrowDown,{"data-icon":"inline-start"}),n("behind",{count:e.behind})]})]}):(0,t.jsx)(M.Badge,{variant:"outline",children:(r=e,a=n,"AHEAD"===r.syncState?a("ahead",{count:r.ahead??0}):"BEHIND"===r.syncState?a("behind",{count:r.behind??0}):a("DIVERGED"===r.syncState?"diverged":"IN_SYNC"===r.syncState?"upToDate":"NO_UPSTREAM"===r.syncState?"unpublished":"DETACHED"===r.syncState?"detached":"unknown"))})}function eW(e){let{worktree:a,group:s,onUpdate:n,onError:i,compact:l=!1}=e,o=(0,E.useTranslations)("worktrees"),[d,c]=(0,r.useState)(!1),[u,h]=(0,r.useState)(!1),p="__inherit_remote_default__",m=Array.from(new Set([a.baseBranchOverride,s.codebase.defaultBranch,...s.codebase.remoteBranches].filter(e=>!!e))),g=async e=>{h(!0);try{let t=await (0,ea.controlPlaneRequest)(`mutation UpdateWorktreeBase($id: ID!, $baseBranch: String) {
68
+ updateWorktreeBaseBranch(id: $id, baseBranch: $baseBranch) { ${eo.WORKTREE_FIELDS} }
69
+ }`,{id:a.id,baseBranch:e||null});n(t.updateWorktreeBaseBranch),i(null),c(!1)}catch(e){i(e instanceof Error?e.message:String(e))}finally{h(!1)}};return(0,t.jsxs)("div",{className:"min-w-0",children:[!l&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:o("baseBranch")}),(0,t.jsx)("div",{className:(0,es.cn)("flex min-h-6 min-w-0 items-center gap-1",!l&&"mt-0.5"),children:d?(0,t.jsxs)(Z.Select,{disabled:u,onOpenChange:c,onValueChange:e=>void g(e===p?"":e),open:d,value:a.baseBranchOverride??(s.codebase.defaultBranch?p:void 0),children:[(0,t.jsx)(Z.SelectTrigger,{"aria-label":o("baseBranch"),className:"h-7 min-w-40 max-w-full font-mono text-xs",size:"sm",children:(0,t.jsx)(Z.SelectValue,{placeholder:o("baseUnavailable")})}),(0,t.jsxs)(Z.SelectContent,{align:"start",children:[s.codebase.defaultBranch&&(0,t.jsxs)(Z.SelectItem,{value:p,children:[s.codebase.defaultBranch," · ",o("inheritBase")]}),m.map(e=>(0,t.jsx)(Z.SelectItem,{value:e,children:e},e))]})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"truncate font-mono text-xs",title:a.baseBranch??void 0,children:a.baseBranch??"—"}),(0,t.jsx)(U.Button,{"aria-label":o("editBase"),onClick:()=>c(!0),size:"icon-xs",variant:"ghost",children:(0,t.jsx)(j.Pencil,{})})]})})]})}function e$(e,t){let r=t.activeMoves.some(t=>t.sourceCodebaseId===e.group.codebase.id||t.targetCodebaseId===e.group.codebase.id);return"ONLINE"===e.agentGroup.agent.connectionStatus&&e.agentGroup.agent.capabilities.includes("worktree.move.checkout")&&"AVAILABLE"===e.group.codebase.availability&&!e.group.worktrees.some(e=>e.activeJob)&&!r}function eM(e){let a,s,{worktree:n,allTags:i,onUpdate:l,onError:o,onManageTags:d,contentAlign:c="end",contentAlignOffset:u=0,trigger:p}=e,m=(0,E.useTranslations)("worktrees"),[g,j]=(0,r.useState)(!1),[w,y]=(0,r.useState)(!1),[k,S]=(0,r.useState)(!1),[N,T]=(0,r.useState)(!1),[D,A]=(0,r.useState)(null),[B,R]=(0,r.useState)(null),_=(0,r.useRef)(!1),P=(a=e.overview.agents.find(t=>t.codebases.some(t=>t.codebase.id===e.group.codebase.id)))?e.overview.agents.flatMap(t=>t.agent.id===a.agent.id?[]:t.codebases.flatMap(r=>r.repository.id===e.group.repository.id?[{agentGroup:t,group:r}]:[])):[],O=(s=e.overview.agents.find(t=>t.codebases.some(t=>t.codebase.id===e.group.codebase.id)))&&"ONLINE"===s.agent.connectionStatus&&s.agent.capabilities.includes("worktree.move.push")?"AVAILABLE"!==e.worktree.availability||e.worktree.activeJob||e.overview.activeMoves.some(t=>t.sourceCodebaseId===e.group.codebase.id||t.targetCodebaseId===e.group.codebase.id)?m("moveBlocked.busy"):e.worktree.branch&&e.worktree.headSha?e.worktree.hasStagedChanges||e.worktree.hasUnstagedChanges||"DIRTY"===e.worktree.pushStatus?m("moveBlocked.dirty"):"BEHIND"===e.worktree.pushStatus?m("moveBlocked.behind"):"DIVERGED"===e.worktree.pushStatus?m("moveBlocked.diverged"):"READY"!==e.worktree.pushStatus?m("moveBlocked.unknown"):P.some(t=>e$(t,e.overview))?null:m("moveBlocked.destination"):m("moveBlocked.detached"):m("moveBlocked.agent"),L=e.overview.agents.find(t=>t.codebases.some(t=>t.codebase.id===e.group.codebase.id)),W=!L||"ONLINE"!==L.agent.connectionStatus||!L.agent.capabilities.includes("worktree.delete")||"AVAILABLE"!==n.availability||!!n.activeJob||e.overview.activeMoves.some(t=>t.sourceCodebaseId===e.group.codebase.id||t.targetCodebaseId===e.group.codebase.id),M=new Set(n.tags.map(e=>e.id)),q=async(e,t)=>{let r=t?[...M,e]:[...M].filter(t=>t!==e);try{let e=await (0,ea.controlPlaneRequest)(`mutation SetWorktreeTags($id: ID!, $tagIds: [ID!]!) { setWorktreeTags(id: $id, tagIds: $tagIds) { ${eo.WORKTREE_FIELDS} } }`,{id:n.id,tagIds:r});l(e.setWorktreeTags),o(null)}catch(e){o(e instanceof Error?e.message:String(e))}},F=async e=>{try{let t=await (0,ea.controlPlaneRequest)(`mutation HighlightWorktree($id: ID!, $color: String) { updateWorktreeHighlight(id: $id, color: $color) { ${eo.WORKTREE_FIELDS} } }`,{id:n.id,color:e});l(t.updateWorktreeHighlight),o(null)}catch(e){o(e instanceof Error?e.message:String(e))}},z=async(t,r=!1)=>{T(!0);try{let a=await (0,ea.controlPlaneRequest)(`mutation ChangeWorktreeBranch($input: ChangeWorktreeBranchInput!) {
70
+ changeWorktreeBranch(input: $input) { id }
71
+ }`,{input:{worktreeId:n.id,selection:t,requestId:(0,er.createClientId)(),stashOnFailure:r}});await (0,ec.waitForWorktreeJob)(a.changeWorktreeBranch.id),await e.onReload(),A(null),R(null),j(!1),o(null)}finally{T(!1)}},V=async()=>{if(D)try{R(null),await z(D,!0)}catch(e){R(e instanceof Error?e.message:String(e))}};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)(Y.Popover,{onOpenChange:e=>{j(e),e||(A(null),R(null))},open:g,children:[(0,t.jsxs)(H.DropdownMenu,{children:[(0,t.jsx)(H.DropdownMenuTrigger,{asChild:!0,children:(0,t.jsx)(Y.PopoverAnchor,{asChild:!0,children:p??(0,t.jsx)(U.Button,{"aria-label":m("customize"),size:"icon-sm",variant:"ghost",children:(0,t.jsx)(x.MoreHorizontal,{})})})}),(0,t.jsxs)(H.DropdownMenuContent,{align:c,alignOffset:u,className:"w-72",onCloseAutoFocus:e=>{_.current&&(_.current=!1,e.preventDefault(),j(!0))},children:[P.length>0&&(0,t.jsxs)(H.DropdownMenuItem,{disabled:!!O,onSelect:()=>y(!0),title:O??void 0,children:[(0,t.jsx)(b.MoveRight,{})," ",m("moveToAgent")]}),(0,t.jsxs)(H.DropdownMenuItem,{disabled:!e.branchManagementEnabled||"AVAILABLE"!==n.availability||!!n.activeJob,onSelect:()=>{_.current=!0},children:[(0,t.jsx)(h.GitBranch,{})," ",m("changeBranch")]}),(0,t.jsx)(H.DropdownMenuSeparator,{}),(0,t.jsxs)(H.DropdownMenuLabel,{className:"flex items-center gap-1.5 leading-none",children:[(0,t.jsx)(C.Tags,{className:"size-3"}),(0,t.jsx)("span",{children:m("tags")})]}),i.map(e=>(0,t.jsxs)(H.DropdownMenuCheckboxItem,{checked:M.has(e.id),onCheckedChange:t=>void q(e.id,!!t),children:[(0,t.jsx)("span",{className:(0,es.cn)("size-3 rounded-full border",ew[e.color])})," ",e.name]},e.id)),(0,t.jsxs)(H.DropdownMenuItem,{onSelect:d,children:[(0,t.jsx)(v.Plus,{})," ",m("manageTags")]}),(0,t.jsx)(H.DropdownMenuSeparator,{}),(0,t.jsxs)(H.DropdownMenuLabel,{className:"flex items-center gap-1.5 leading-none",children:[(0,t.jsx)(f.Paintbrush,{className:"size-3"}),(0,t.jsx)("span",{children:m("highlight")})]}),(0,t.jsxs)(et.ToggleGroup,{"aria-label":m("highlight"),className:"grid grid-cols-7 gap-1 p-2",onClick:e=>e.stopPropagation(),onValueChange:e=>{e&&F("__none__"===e?null:e)},size:"sm",spacing:1,type:"single",value:n.highlightColor??"__none__",variant:"outline",children:[(0,t.jsx)(et.ToggleGroupItem,{"aria-label":m("clearHighlight"),className:"size-7 min-w-0 p-0",value:"__none__",children:(0,t.jsx)(I.Trash2,{className:"size-3"})}),eh.map(e=>(0,t.jsx)(et.ToggleGroupItem,{"aria-label":e,className:(0,es.cn)("size-7 min-w-0 p-0",ew[e],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:e},e))]}),!n.primary&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H.DropdownMenuSeparator,{}),(0,t.jsxs)(H.DropdownMenuItem,{disabled:W,onSelect:()=>S(!0),variant:"destructive",children:[(0,t.jsx)(I.Trash2,{})," ",m("deleteWorktree")]})]})]})]}),(0,t.jsxs)(Y.PopoverContent,{align:c,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,t.jsxs)("div",{className:"mb-4",children:[(0,t.jsx)("h3",{className:"font-semibold",children:m("changeBranch")}),(0,t.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:eb(n.folder,e.baseRepoDirectory)})]}),(0,t.jsx)(ei.WorktreeBranchForm,{busy:N,onSubmit:e=>z(e),onSubmitError:e=>{A(n.hasStagedChanges||n.hasUnstagedChanges?e:null)},recovery:D?(0,t.jsx)($.Alert,{children:(0,t.jsxs)($.AlertDescription,{className:"space-y-2",children:[(0,t.jsx)("p",{children:m("stashRetryHelp")}),B&&(0,t.jsx)("p",{className:"text-destructive",children:B}),(0,t.jsxs)(U.Button,{disabled:N,onClick:()=>void V(),size:"sm",type:"button",variant:"outline",children:[N&&(0,t.jsx)(Q.Spinner,{}),m("stashAndRetry")]})]})}):null,submitLabel:m("changeBranch"),target:ek(e.group,n)})]})]}),w&&(0,t.jsx)(eU,{onOpenChange:y,open:w,props:e,targets:P.filter(t=>e$(t,e.overview))}),!n.primary&&k&&(0,t.jsx)(eq,{onOpenChange:S,open:k,props:e})]})}function eU({props:e,targets:a,open:s,onOpenChange:n}){let i=(0,E.useTranslations)("worktrees"),l=1===a.length?a[0].group.codebase.id:"",[o,d]=(0,r.useState)(l),[c,u]=(0,r.useState)("__new__"),[h,p]=(0,r.useState)(!1),[m,g]=(0,r.useState)(!1),[x,b]=(0,r.useState)(null),[f,j]=(0,r.useState)(null),v=a.some(e=>e.group.codebase.id===o)?o:1===a.length?a[0].group.codebase.id:"",w=a.find(e=>e.group.codebase.id===v),y=a.map(e=>({value:e.group.codebase.id,label:`${e.agentGroup.agent.name} \xb7 ${e.group.repository.name}`,description:e.group.codebase.folder,keywords:`${e.agentGroup.agent.hostname} ${e.group.repository.displayOrigin}`})),k=w?.group.worktrees.find(e=>e.id===c),S=w?.group.worktrees.find(t=>t.branch===e.worktree.branch),C=!e.worktree.primary&&e.overview.agents.some(t=>t.codebases.some(t=>t.codebase.id===e.group.codebase.id)&&t.agent.capabilities.includes("worktree.delete")),I=async t=>{if("AWAITING_STASH"===t.status){j(t),await e.onReload();return}if("FAILED"===t.status)throw Error(t.error||i("moveFailed"));if("CANCELLED"===t.status)throw Error(i("moveCancelled"));e.onError("SUCCEEDED_WITH_WARNING"===t.status?t.warning:null),await e.onReload(),e.onMoved?.(t),n(!1)},N=async()=>{if(w){g(!0),b(null);try{let t=await (0,ea.controlPlaneRequest)(`mutation MoveWorktree($input: MoveWorktreeInput!) {
72
+ moveWorktree(input: $input) {
73
+ id sourceWorktreeId sourceCodebaseId targetCodebaseId targetWorktreeId destinationMode
74
+ branch headSha deleteSource status sourceJobId targetJobId cleanupJobId error warning
75
+ createdAt updatedAt finishedAt
76
+ }
77
+ }`,{input:{sourceWorktreeId:e.worktree.id,targetCodebaseId:w.group.codebase.id,targetWorktreeId:"__new__"===c?null:c,deleteSource:h,requestId:(0,er.createClientId)()}});await I(await (0,ec.waitForWorktreeMove)(t.moveWorktree.id))}catch(e){b(e instanceof Error?e.message:String(e))}finally{g(!1)}}},T=async()=>{if(f){g(!0),b(null);try{await (0,ea.controlPlaneRequest)(`mutation RetryMove($id: ID!) {
78
+ retryWorktreeMoveWithStash(id: $id) { id status }
79
+ }`,{id:f.id}),await I(await (0,ec.waitForWorktreeMove)(f.id))}catch(e){b(e instanceof Error?e.message:String(e))}finally{g(!1)}}},D=async()=>{if(f){g(!0);try{await (0,ea.controlPlaneRequest)(`mutation CancelMove($id: ID!) {
80
+ cancelWorktreeMove(id: $id) { id status }
81
+ }`,{id:f.id}),await e.onReload(),n(!1)}catch(e){b(e instanceof Error?e.message:String(e))}finally{g(!1)}}};return(0,t.jsx)(z.Dialog,{onOpenChange:e=>!m&&n(e),open:s,children:(0,t.jsxs)(z.DialogContent,{className:"sm:max-w-xl",children:[(0,t.jsxs)(z.DialogHeader,{children:[(0,t.jsx)(z.DialogTitle,{children:i("moveToAgent")}),(0,t.jsx)(z.DialogDescription,{children:i("moveDescription",{branch:e.worktree.branch??""})})]}),f?(0,t.jsx)($.Alert,{children:(0,t.jsxs)($.AlertDescription,{className:"space-y-3",children:[(0,t.jsx)("p",{children:f.error||i("moveNeedsStash")}),(0,t.jsx)("p",{className:"text-muted-foreground",children:i("moveStashHelp")})]})}):(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(J.Label,{className:"mb-1.5 block",children:i("destinationAgent")}),(0,t.jsx)(X.SearchableSelect,{ariaLabel:i("destinationAgent"),disabled:m,emptyMessage:i("noMoveDestinations"),onValueChange:e=>{d(e),u("__new__")},options:y,placeholder:i("selectDestinationAgent"),searchPlaceholder:i("searchDestinationAgents"),value:v})]}),w&&(0,t.jsxs)("div",{children:[(0,t.jsx)(J.Label,{className:"mb-1.5 block",children:i("destinationWorktree")}),(0,t.jsxs)(Z.Select,{disabled:m,onValueChange:u,value:c,children:[(0,t.jsx)(Z.SelectTrigger,{"aria-label":i("destinationWorktree"),children:(0,t.jsx)(Z.SelectValue,{})}),(0,t.jsxs)(Z.SelectContent,{children:[(0,t.jsx)(Z.SelectItem,{disabled:!!S,value:"__new__",children:i("createDestinationWorktree")}),w.group.worktrees.filter(e=>"AVAILABLE"===e.availability).map(e=>(0,t.jsxs)(Z.SelectItem,{disabled:!!S&&S.id!==e.id,value:e.id,children:[e.branch??i("detached")," ·"," ",e.relativePath]},e.id))]})]})]}),k&&(k.hasStagedChanges||k.hasUnstagedChanges)&&(0,t.jsx)($.Alert,{children:(0,t.jsx)($.AlertDescription,{children:i("dirtyDestinationWarning")})}),(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)(F.Checkbox,{checked:h,disabled:!C||m,id:`delete-source-${e.worktree.id}`,onCheckedChange:e=>p(!!e)}),(0,t.jsxs)("div",{children:[(0,t.jsx)(J.Label,{htmlFor:`delete-source-${e.worktree.id}`,children:i("deleteOldWorktree")}),!C&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:i("deleteOldWorktreeDisabled")})]})]})]}),x&&(0,t.jsx)($.Alert,{variant:"destructive",children:(0,t.jsx)($.AlertDescription,{children:x})}),(0,t.jsxs)(z.DialogFooter,{children:[(0,t.jsx)(U.Button,{disabled:m,onClick:()=>f?void D():n(!1),variant:"outline",children:f?i("cancelMove"):i("cancel")}),(0,t.jsxs)(U.Button,{disabled:m||!f&&!w,onClick:()=>f?void T():void N(),children:[m&&(0,t.jsx)(Q.Spinner,{}),f?i("stashAndContinue"):i("moveWorktree")]})]})]})})}function eq({props:e,open:a,onOpenChange:s}){let n=(0,E.useTranslations)("worktrees"),[i,l]=(0,r.useState)(!1),[o,d]=(0,r.useState)(!1),[c,u]=(0,r.useState)(null),h=!!(e.worktree.branch&&(e.group.codebase.remoteBranches.includes(e.worktree.branch)||e.worktree.upstream===`origin/${e.worktree.branch}`)),p=e.worktree.branch===e.group.codebase.defaultBranch,m=async()=>{d(!0),u(null);try{let t=await (0,ea.controlPlaneRequest)(`mutation DeleteWorktree($input: DeleteWorktreeInput!) {
82
+ deleteWorktree(input: $input) { id }
83
+ }`,{input:{worktreeId:e.worktree.id,deleteRemoteBranch:i,requestId:(0,er.createClientId)()}});await (0,ec.waitForWorktreeJob)(t.deleteWorktree.id),await e.onReload(),e.onError(null),e.onDeleted?.(),s(!1)}catch(e){u(e instanceof Error?e.message:String(e))}finally{d(!1)}};return(0,t.jsx)(z.Dialog,{onOpenChange:e=>!o&&s(e),open:a,children:(0,t.jsxs)(z.DialogContent,{children:[(0,t.jsxs)(z.DialogHeader,{children:[(0,t.jsx)(z.DialogTitle,{children:n("deleteWorktree")}),(0,t.jsx)(z.DialogDescription,{children:n("deleteWorktreeDescription",{path:eb(e.worktree.folder,e.baseRepoDirectory)})})]}),(0,t.jsx)($.Alert,{variant:"destructive",children:(0,t.jsx)($.AlertDescription,{children:n("deleteWorktreeWarning")})}),h&&(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)(F.Checkbox,{checked:i,disabled:o||p,id:`delete-remote-${e.worktree.id}`,onCheckedChange:e=>l(!!e)}),(0,t.jsxs)("div",{children:[(0,t.jsx)(J.Label,{htmlFor:`delete-remote-${e.worktree.id}`,children:n("deleteRemoteBranch",{branch:e.worktree.branch??""})}),p&&(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:n("defaultRemoteProtected")})]})]}),c&&(0,t.jsx)($.Alert,{variant:"destructive",children:(0,t.jsx)($.AlertDescription,{children:c})}),(0,t.jsxs)(z.DialogFooter,{children:[(0,t.jsx)(U.Button,{disabled:o,onClick:()=>s(!1),variant:"outline",children:n("cancel")}),(0,t.jsxs)(U.Button,{disabled:o,onClick:()=>void m(),variant:"destructive",children:[o&&(0,t.jsx)(Q.Spinner,{}),n("deleteWorktree")]})]})]})})}function eF(e){let{worktree:r,editorVariant:s}=e,n=(0,E.useTranslations)("worktrees"),i="AVAILABLE"!==r.availability||!!r.activeJob,o=ef(r),d=e.overview.agents.find(t=>t.codebases.some(t=>t.codebase.id===e.group.codebase.id))?.agent,u=d?.connectionStatus==="ONLINE"&&d.capabilities.includes("ios.build.run")&&!1===e.group.iosBuildConfigured,h="AVAILABLE"!==r.availability||!d||"ONLINE"!==d.connectionStatus||!d.capabilities.includes("ios.build.run")||!1===e.group.iosBuildConfigured;return(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsx)(_.StartBuildButton,{buildSettingsHref:u?`/codebases/repositories/${e.group.repository.id}`:void 0,codebaseId:e.group.codebase.id,disabled:h,disabledReason:d&&"ONLINE"===d.connectionStatus?d.capabilities.includes("ios.build.run")?!1===e.group.iosBuildConfigured?n("iosBuildNotConfigured"):"AVAILABLE"!==r.availability?n("worktreeUnavailable"):null:n("agentUnsupported"):n("agentOffline"),worktreeId:r.id}),r.pullRequest&&(0,t.jsx)(P.MergePullRequestButton,{onMerged:e.onCompleted,pullRequest:r.pullRequest}),"NONE"!==s&&(0,t.jsx)(ez,{icon:(0,t.jsx)(c.Code2,{}),label:n("CODE_INSIDERS"===s?"openInsiders":"openCode"),operation:"OPEN_EDITOR",props:e}),(0,t.jsx)(ez,{confirm:!0,icon:(0,t.jsx)(N.Upload,{}),label:n("forcePush"),operation:"FORCE_PUSH",props:e,disabled:i||!r.upstream}),(0,t.jsx)(ez,{confirm:!0,icon:(0,t.jsx)(w.RefreshCw,{}),label:n("sync"),operation:"SYNC",props:e,disabled:i||!r.upstream||!r.baseBranch||0===r.baseBehind}),(0,t.jsx)(ez,{icon:(0,t.jsx)(N.Upload,{}),label:n(r.upstream?"push":"publish"),operation:"PUSH",props:e,disabled:i||!r.branch}),(0,t.jsx)(ez,{confirm:!0,icon:(0,t.jsx)(y.RotateCcw,{}),label:n("reset"),operation:"RESET",props:e,disabled:i||!r.upstream}),(0,t.jsx)(ez,{icon:(0,t.jsx)(a.Archive,{}),label:n("stashAll"),operation:"STASH_ALL",props:e,disabled:i||!o.hasChanges}),(0,t.jsx)(ez,{icon:(0,t.jsx)(l.Check,{}),label:n("UNSTAGE_ALL"===o.stageOperation?"unstageAll":"stageAll"),operation:o.stageOperation,props:e,disabled:i||!o.hasChanges}),r.activeJob&&(0,t.jsxs)("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,t.jsx)(Q.Spinner,{})," ",n("operationRunning")]})]})}function ez({props:e,operation:a,label:s,icon:n,confirm:i=!1,disabled:o=!1}){let d=(0,E.useTranslations)("worktrees"),[c,u]=(0,r.useState)(!1),[h,p]=(0,r.useState)(!1),m=(0,r.useRef)(null);(0,r.useEffect)(()=>()=>{m.current&&window.clearTimeout(m.current)},[]);let g=async()=>{if(i&&!c){u(!0),m.current=window.setTimeout(()=>u(!1),5e3);return}p(!0),u(!1);try{let t=await (0,ea.controlPlaneRequest)("mutation RunWorktreeOperation($input: RunWorktreeOperationInput!) { runWorktreeOperation(input: $input) { id } }",{input:{worktreeId:e.worktree.id,operation:a,requestId:(0,er.createClientId)()}});e.onError(null),await e.onCompleted(),await (0,ec.waitForWorktreeJob)(t.runWorktreeOperation.id),await e.onCompleted()}catch(t){e.onError(t instanceof Error?t.message:String(t))}finally{p(!1)}};return(0,t.jsxs)(U.Button,{disabled:o||h,onClick:()=>void g(),size:"sm",variant:c?"destructive":"outline",children:[h?(0,t.jsx)(Q.Spinner,{}):c?(0,t.jsx)(l.Check,{}):n," ",c?d("confirmAction"):s]})}function eH(e){let a=(0,E.useTranslations)("worktrees");return(0,t.jsx)("div",{className:"rounded-xl border",children:(0,t.jsxs)(ee.Table,{children:[(0,t.jsx)(ee.TableHeader,{children:(0,t.jsxs)(ee.TableRow,{children:[(0,t.jsx)(ee.TableHead,{children:a("branch")}),(0,t.jsx)(ee.TableHead,{children:a("path")}),(0,t.jsx)(ee.TableHead,{children:a("baseBranch")}),(0,t.jsx)(ee.TableHead,{children:a("upToDate")}),(0,t.jsx)(ee.TableHead,{children:a("tags")}),(0,t.jsx)(ee.TableHead,{children:a("pullRequest")}),(0,t.jsx)(ee.TableHead,{children:a("origin")}),(0,t.jsx)(ee.TableHead,{})]})}),(0,t.jsx)(ee.TableBody,{children:e.group.worktrees.map(t=>(0,r.createElement)(eV,{...e,key:t.id,worktree:t}))})]})})}function eV(e){let{baseRepoDirectory:a,inspectionRefreshToken:s,onError:n}=e,{worktree:i,applyActivity:l,setUnstagedChanges:c}=(0,ed.useLiveWorktree)(e.worktree),u={...e,worktree:i},h=(0,E.useTranslations)("worktrees"),p=(0,en.useRouter)(),[m,g]=(0,r.useState)(!1),[x,b]=(0,r.useState)(null),[f,j]=(0,r.useState)(!1),v=(0,r.useRef)(0),w=(0,r.useRef)(s),y=(0,r.useCallback)(async()=>{let e=++v.current;j(!0);try{let t=await (0,ed.inspectWorktree)(i.id);if(e!==v.current)return;b(t),c(t.changes.some(e=>e.unstaged||e.untracked||e.conflicted)),n(null)}catch(t){e===v.current&&n(t instanceof Error?t.message:String(t))}finally{e===v.current&&j(!1)}},[n,c,i.id]),k=(0,ed.useQueuedWorktreeInspection)(y),S=(0,r.useCallback)(e=>{l(e),m&&k()},[l,m,k]);(0,ed.useWorktreeActivitySubscription)(i.id,e.liveUpdatesEnabled&&"AVAILABLE"===i.availability,S),(0,r.useEffect)(()=>{if(w.current===s||(w.current=s,!m))return;let e=window.setTimeout(()=>void k(),0);return()=>window.clearTimeout(e)},[m,s,k]);let C=()=>{let e=!m;g(e),e&&!x&&k()},I=i.highlightColor&&ej[i.highlightColor];return(0,t.jsxs)(r.Fragment,{children:[(0,t.jsxs)(ee.TableRow,{className:(0,es.cn)("cursor-pointer transition-colors hover:bg-muted/50",I),onClick:e=>{(0,eu.shouldNavigateWorktreeSurface)(e)&&p.push((0,eu.worktreeDetailHref)(i.id))},children:[(0,t.jsxs)(ee.TableCell,{children:[(0,t.jsxs)(U.Button,{"aria-expanded":m,className:"max-w-full px-0 font-mono",onClick:()=>void C(),variant:"ghost",children:[m?(0,t.jsx)(o.ChevronDown,{}):(0,t.jsx)(d.ChevronRight,{}),(0,t.jsx)("span",{className:"truncate",children:i.branch??h("detached")})]}),(i.ticketKey||i.ticketTitle)&&(0,t.jsx)(eE,{...u,compact:!0})]}),(0,t.jsx)(ee.TableCell,{className:"font-mono text-xs",children:eb(i.folder,a)}),(0,t.jsx)(ee.TableCell,{children:(0,t.jsx)(eW,{...u,compact:!0})}),(0,t.jsx)(ee.TableCell,{children:(0,t.jsx)(e_,{worktree:i})}),(0,t.jsx)(ee.TableCell,{children:(0,t.jsx)(eR,{...u,compact:!0})}),(0,t.jsx)(ee.TableCell,{children:(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-1.5",children:(0,t.jsx)(eP,{detailsExpanded:m,onToggleDetails:C,worktree:i})})}),(0,t.jsx)(ee.TableCell,{children:(0,t.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[(0,t.jsx)(eL,{worktree:i}),i.hasUnstagedChanges&&(0,t.jsx)(M.Badge,{variant:"destructive",children:h("dirty")})]})}),(0,t.jsx)(ee.TableCell,{children:(0,t.jsxs)("div",{className:"flex items-center justify-end gap-1",children:[(0,t.jsx)(eT,{worktree:i}),(0,t.jsx)(eM,{...u})]})})]}),(0,t.jsx)(ee.TableRow,{className:(0,es.cn)(I),children:(0,t.jsx)(ee.TableCell,{colSpan:8,children:(0,t.jsx)(eF,{...u,onCompleted:async()=>{await e.onReload(),m&&await k()}})})}),m&&(0,t.jsx)(ee.TableRow,{className:(0,es.cn)(I),children:(0,t.jsx)(ee.TableCell,{colSpan:8,children:f&&!x?(0,t.jsx)(Q.Spinner,{}):x?(0,t.jsx)(el.WorktreeDetailPanel,{detail:x,inline:!0}):null})})]})}function eG({tag:e}){return(0,t.jsx)(M.Badge,{className:ev[e.color],children:e.name})}function eK({label:e,value:r,mono:a=!1}){return(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:e}),(0,t.jsx)("p",{className:(0,es.cn)("flex min-h-6 items-center truncate",a&&"font-mono text-xs"),title:r,children:r})]})}function eJ({open:e,onOpenChange:a,tags:s,onChanged:n}){let i=(0,E.useTranslations)("worktrees"),[l,o]=(0,r.useState)(null),[d,c]=(0,r.useState)(""),[u,h]=(0,r.useState)("blue"),[p,m]=(0,r.useState)(null),g=async e=>{e.preventDefault();try{await (0,ea.controlPlaneRequest)("mutation SaveTag($input: SaveWorktreeTagInput!) { saveWorktreeTag(input: $input) { id } }",{input:{id:l?.id??null,name:d,color:u}}),o(null),c(""),h("blue"),m(null),await n()}catch(e){m(e instanceof Error?e.message:String(e))}},x=async e=>{try{await (0,ea.controlPlaneRequest)("mutation DeleteTag($id: ID!) { deleteWorktreeTag(id: $id) }",{id:e}),await n()}catch(e){m(e instanceof Error?e.message:String(e))}};return(0,t.jsx)(z.Dialog,{onOpenChange:a,open:e,children:(0,t.jsxs)(z.DialogContent,{children:[(0,t.jsxs)(z.DialogHeader,{children:[(0,t.jsx)(z.DialogTitle,{children:i("manageTags")}),(0,t.jsx)(z.DialogDescription,{children:i("manageTagsDescription")})]}),p&&(0,t.jsx)($.Alert,{variant:"destructive",children:(0,t.jsx)($.AlertDescription,{children:p})}),(0,t.jsx)(K.ItemGroup,{className:"gap-2",children:s.map(e=>(0,t.jsxs)(K.Item,{size:"sm",variant:"outline",children:[(0,t.jsx)(K.ItemContent,{children:(0,t.jsx)(K.ItemTitle,{children:(0,t.jsx)(eG,{tag:e})})}),(0,t.jsxs)(K.ItemActions,{children:[(0,t.jsx)(U.Button,{onClick:()=>{o(e),c(e.name),h(e.color)},size:"sm",variant:"outline",children:i("edit")}),(0,t.jsx)(U.Button,{onClick:()=>void x(e.id),size:"icon-sm",variant:"destructive",children:(0,t.jsx)(I.Trash2,{})})]})]},e.id))}),(0,t.jsxs)("form",{className:"space-y-3 border-t pt-3",onSubmit:g,children:[(0,t.jsx)(J.Label,{htmlFor:"tag-name",children:l?i("editTag"):i("createTag")}),(0,t.jsx)(G.Input,{id:"tag-name",maxLength:40,onChange:e=>c(e.target.value),required:!0,value:d}),(0,t.jsx)(et.ToggleGroup,{"aria-label":i("highlight"),className:"grid grid-cols-12 gap-1",onValueChange:e=>{e&&h(e)},size:"sm",spacing:1,type:"single",value:u,variant:"outline",children:eh.map(e=>(0,t.jsx)(et.ToggleGroupItem,{"aria-label":e,className:(0,es.cn)("size-7 min-w-0 p-0",ew[e],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:e},e))}),(0,t.jsx)(z.DialogFooter,{children:(0,t.jsxs)(U.Button,{type:"submit",children:[(0,t.jsx)(k.Save,{})," ",i("saveTag")]})})]})]})})}function eY({open:e,onOpenChange:s,onChanged:n}){let i=(0,E.useTranslations)("worktrees"),[l,o]=(0,r.useState)([]),[d,c]=(0,r.useState)(null),u=(0,r.useCallback)(async()=>{try{let e=await (0,ea.controlPlaneRequest)(`query HiddenWorktrees { hiddenWorktrees { ${eo.WORKTREE_FIELDS} } }`);o(e.hiddenWorktrees),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}},[]);(0,r.useEffect)(()=>{if(!e)return;let t=window.setTimeout(()=>void u(),0);return()=>window.clearTimeout(t)},[e,u]);let p=async e=>{try{await (0,ea.controlPlaneRequest)(e?"mutation PurgeHidden($id: ID!) { purgeHiddenWorktree(id: $id) }":"mutation PurgeAllHidden { purgeAllHiddenWorktrees }",e?{id:e}:void 0),await u(),await n()}catch(e){c(e instanceof Error?e.message:String(e))}};return(0,t.jsx)(z.Dialog,{onOpenChange:s,open:e,children:(0,t.jsxs)(z.DialogContent,{className:"sm:max-w-3xl",children:[(0,t.jsxs)(z.DialogHeader,{children:[(0,t.jsx)(z.DialogTitle,{children:i("hiddenTitle")}),(0,t.jsx)(z.DialogDescription,{children:i("hiddenDescription")})]}),d&&(0,t.jsx)($.Alert,{variant:"destructive",children:(0,t.jsx)($.AlertDescription,{children:d})}),(0,t.jsx)("div",{className:"max-h-96 overflow-y-auto",children:l.length?(0,t.jsx)(K.ItemGroup,{className:"gap-2",children:l.map(e=>(0,t.jsxs)(K.Item,{variant:"outline",children:[(0,t.jsx)(K.ItemMedia,{variant:"icon",children:(0,t.jsx)(h.GitBranch,{})}),(0,t.jsxs)(K.ItemContent,{className:"min-w-0",children:[(0,t.jsx)(K.ItemTitle,{className:"font-mono",children:e.branch??i("detached")}),(0,t.jsx)(K.ItemDescription,{className:"truncate",title:e.folder,children:e.folder})]}),(0,t.jsx)(K.ItemActions,{children:(0,t.jsxs)(U.Button,{onClick:()=>void p(e.id),size:"sm",variant:"destructive",children:[(0,t.jsx)(I.Trash2,{})," ",i("purge")]})})]},e.id))}):(0,t.jsx)(V.Empty,{className:"border-0 py-8",children:(0,t.jsxs)(V.EmptyHeader,{children:[(0,t.jsx)(V.EmptyMedia,{variant:"icon",children:(0,t.jsx)(a.Archive,{})}),(0,t.jsx)(V.EmptyTitle,{children:i("noHidden")})]})})}),(0,t.jsx)(z.DialogFooter,{children:l.length>0&&(0,t.jsxs)(U.Button,{onClick:()=>void p(),variant:"destructive",children:[(0,t.jsx)(I.Trash2,{})," ",i("purgeAll")]})})]})})}e.s(["ActionRow",0,eF,"BaseBranchControl",0,eW,"BaseFreshnessBadge",0,e_,"OriginStatusBadges",0,eL,"PullRequestBadges",0,eP,"TagManagerDialog",0,eJ,"WorktreeMenus",0,eM,"WorktreeMetadata",0,eD,"WorktreeTagsMenu",0,eR,"WorktreeTicketLink",0,eE,"WorktreesPage",0,function(){let e=(0,E.useTranslations)("worktrees"),[s,n]=(0,r.useState)(()=>new URLSearchParams(window.location.search).get("issue")),[i,l]=(0,r.useState)(null),[o,d]=(0,r.useState)(()=>"table"===window.localStorage.getItem(ep)?"table":"cards"),[c,u]=(0,r.useState)(!0),[p,x]=(0,r.useState)(!1),[b,f]=(0,r.useState)(null),[j,v]=(0,r.useState)(null),[y,k]=(0,r.useState)(0),[C,I]=(0,r.useState)(!1),[T,A]=(0,r.useState)(!1),[B,R]=(0,r.useState)(""),[_,P]=(0,r.useState)(em),[O,L]=(0,r.useState)(em),M=(0,r.useRef)(0),q=(0,r.useCallback)(async()=>{let e=++M.current;try{let t=await (0,ea.controlPlaneRequest)(`query WorktreeOverview {
84
+ worktreeOverview {
85
+ hiddenCount
86
+ settings { editorVariant updatedAt }
87
+ tags { id name color createdAt updatedAt }
88
+ activeMoves {
89
+ id sourceWorktreeId sourceCodebaseId targetCodebaseId targetWorktreeId destinationMode
90
+ branch headSha deleteSource status sourceJobId targetJobId cleanupJobId error warning
91
+ createdAt updatedAt finishedAt
92
+ }
93
+ agents {
94
+ agent { ${D.AGENT_FIELDS} }
95
+ codebases {
96
+ iosBuildConfigured
97
+ repository { id canonicalOrigin displayOrigin name description jiraBranchRegex keepBaseBranchUpToDate createdAt updatedAt }
98
+ codebase { ${eo.CODEBASE_FIELDS} }
99
+ worktrees { ${eo.WORKTREE_FIELDS} }
100
+ }
101
+ }
102
+ }
103
+ }`);if(e!==M.current)return;l(t.worktreeOverview),f(null)}catch(t){e===M.current&&f(t instanceof Error?t.message:String(t))}finally{e===M.current&&u(!1)}},[]);(0,r.useEffect)(()=>{let e=window.setTimeout(()=>void q(),0),t=window.setInterval(()=>void q(),3e4),r=(0,ea.controlPlaneSubscriptions)(),a=r.subscribe({query:"subscription WorktreesChanged { worktreeOverviewChanged { worktreeId codebaseId } }"},{next:()=>void q(),error:()=>void 0,complete:()=>void 0}),s=r.subscribe({query:"subscription WorktreeBuildsChanged { buildsChanged { id } }"},{next:()=>void q(),error:()=>void 0,complete:()=>void 0});return()=>{window.clearTimeout(e),window.clearInterval(t),M.current+=1,a(),s()}},[q]),(0,r.useEffect)(()=>{let e=()=>n(new URLSearchParams(window.location.search).get("issue"));return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)},[]);let F=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}`:""}`),n(e)},z=async()=>{u(!0),x(!0);try{await (0,ea.controlPlaneRequest)(`mutation RefreshWorktrees {
104
+ refreshWorktrees
105
+ }`),await q(),k(e=>e+1),f(null)}catch(e){f(e instanceof Error?e.message:String(e))}finally{x(!1),u(!1)}},H=async()=>{let t=i?.agents.flatMap(e=>e.codebases.map(e=>e.codebase.id))??[];if(t.length){x(!0);try{await (0,ea.controlPlaneRequest)(`mutation FetchWorktreeCodebases($input: RunCodebaseOperationInput!) {
106
+ fetchCodebases(input: $input) { jobs { id } skipped { codebaseId reason } }
107
+ }`,{input:{codebaseIds:t,requestId:(0,er.createClientId)()}}),v(e("fetchStarted")),f(null),await q()}catch(e){f(e instanceof Error?e.message:String(e)),v(null)}finally{x(!1)}}},K=e=>{l(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)},J=(0,r.useMemo)(()=>{let e=new Map;return i?.agents.forEach(t=>t.codebases.forEach(t=>e.set(t.repository.id,{id:t.repository.id,name:t.repository.name}))),[...e.values()].sort((e,t)=>e.name.localeCompare(t.name))},[i]),Y=(0,r.useMemo)(()=>ex(i?.agents??[],{query:B,agentId:_===em?null:_,repositoryId:O===em?null:O}),[_,i,B,O]),X=!!B.trim()||_!==em||O!==em;return(0,t.jsxs)("section",{className:"flex w-full flex-col gap-6",children:[(0,t.jsxs)("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h1",{className:"text-2xl font-semibold tracking-tight",children:e("title")}),(0,t.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:e("description")})]}),(0,t.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,t.jsxs)(U.Button,{disabled:p,onClick:()=>void z(),variant:"outline",children:[(0,t.jsx)(w.RefreshCw,{className:c?"animate-spin":void 0})," ",e("refresh")]}),(0,t.jsxs)(U.Button,{disabled:p||!i?.agents.length,onClick:()=>void H(),variant:"outline",children:[(0,t.jsx)(N.Upload,{})," ",e("fetchNow")]}),(0,t.jsxs)(U.Button,{onClick:()=>A(!0),variant:"outline",children:[(0,t.jsx)(a.Archive,{})," ",e("hidden",{count:i?.hiddenCount??0})]}),(0,t.jsxs)(et.ToggleGroup,{"aria-label":`${e("cards")} / ${e("table")}`,onValueChange:e=>{("cards"===e||"table"===e)&&(d(e),window.localStorage.setItem(ep,e))},size:"sm",spacing:0,type:"single",value:o,variant:"outline",children:[(0,t.jsx)(et.ToggleGroupItem,{"aria-label":e("cards"),className:"px-2",value:"cards",children:(0,t.jsx)(m.Grid2X2,{})}),(0,t.jsx)(et.ToggleGroupItem,{"aria-label":e("table"),className:"px-2",value:"table",children:(0,t.jsx)(g.List,{})})]})]})]}),b&&(0,t.jsx)($.Alert,{variant:"destructive",children:(0,t.jsx)($.AlertDescription,{children:b})}),j&&(0,t.jsx)($.Alert,{children:(0,t.jsx)($.AlertDescription,{children:j})}),i&&i.agents.length>0&&(0,t.jsxs)("div",{"aria-label":e("filters"),className:"flex flex-wrap gap-2",role:"search",children:[(0,t.jsxs)("div",{className:"relative min-w-0 flex-[2_1_18rem]",children:[(0,t.jsx)(S.Search,{className:"pointer-events-none absolute top-1/2 left-3 size-4 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(G.Input,{"aria-label":e("searchWorktrees"),className:"pl-9",onChange:e=>R(e.target.value),placeholder:e("searchWorktreesPlaceholder"),type:"search",value:B})]}),(0,t.jsx)("div",{className:"min-w-0 flex-[1_1_12rem]",children:(0,t.jsxs)(Z.Select,{onValueChange:P,value:_,children:[(0,t.jsx)(Z.SelectTrigger,{"aria-label":e("filterByAgent"),className:"w-full",children:(0,t.jsx)(Z.SelectValue,{})}),(0,t.jsxs)(Z.SelectContent,{children:[(0,t.jsx)(Z.SelectItem,{value:em,children:e("allAgents")}),i.agents.map(e=>(0,t.jsx)(Z.SelectItem,{value:e.agent.id,children:e.agent.name},e.agent.id))]})]})}),(0,t.jsx)("div",{className:"min-w-0 flex-[1_1_12rem]",children:(0,t.jsxs)(Z.Select,{onValueChange:L,value:O,children:[(0,t.jsx)(Z.SelectTrigger,{"aria-label":e("filterByRepository"),className:"w-full",children:(0,t.jsx)(Z.SelectValue,{})}),(0,t.jsxs)(Z.SelectContent,{children:[(0,t.jsx)(Z.SelectItem,{value:em,children:e("allRepositories")}),J.map(e=>(0,t.jsx)(Z.SelectItem,{value:e.id,children:e.name},e.id))]})]})})]}),i&&i.activeMoves.length>0&&(0,t.jsx)(ey,{moves:i.activeMoves,onError:f,onNotice:v,onReload:q}),i&&(0,t.jsx)(eS,{onCreated:async()=>{await q(),v(e("worktreeCreated"))},overview:i}),c&&!i?(0,t.jsxs)("p",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,t.jsx)(Q.Spinner,{})," ",e("loading")]}):i?.agents.length?X&&0===Y.length?(0,t.jsx)(V.Empty,{className:"border py-12",children:(0,t.jsxs)(V.EmptyHeader,{children:[(0,t.jsx)(V.EmptyMedia,{variant:"icon",children:(0,t.jsx)(S.Search,{})}),(0,t.jsx)(V.EmptyTitle,{children:e("noMatchingWorktrees")}),(0,t.jsx)(V.EmptyDescription,{children:e("noMatchingWorktreesDescription")})]})}):Y.map(e=>(0,t.jsx)(eC,{agentGroup:e,allTags:i.tags,editorVariant:i.settings.editorVariant,inspectionRefreshToken:y,layout:o,onError:f,onManageTags:()=>I(!0),onOpenTicket:e=>F(e),onReload:q,onUpdate:K,overview:i},e.agent.id)):(0,t.jsx)(V.Empty,{className:"border py-12",children:(0,t.jsxs)(V.EmptyHeader,{children:[(0,t.jsx)(V.EmptyMedia,{variant:"icon",children:(0,t.jsx)(h.GitBranch,{})}),(0,t.jsx)(V.EmptyTitle,{children:e("emptyTitle")}),(0,t.jsx)(V.EmptyDescription,{children:e("emptyDescription")})]})}),(0,t.jsx)(eJ,{onChanged:q,onOpenChange:I,open:C,tags:i?.tags??[]}),(0,t.jsx)(eY,{onChanged:q,onOpenChange:A,open:T}),(0,t.jsx)(W.JiraTicketDrawer,{issueKey:s,onClose:()=>F(null)})]})},"displayedWorktreePath",0,eb,"filterWorktreeAgentGroups",0,ex,"worktreeChangeActionState",0,ef])}]);
@@ -0,0 +1 @@
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)},59497,e=>{"use strict";var t=e.i(843476),r=e.i(271645);function n(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function o(...e){return r.useCallback(function(...e){return t=>{let r=!1,o=e.map(e=>{let o=n(e,t);return r||"function"!=typeof o||(r=!0),o});if(r)return()=>{for(let t=0;t<o.length;t++){let r=o[t];"function"==typeof r?r():n(e[t],null)}}}}(...e),e)}var i=e.i(30030);function a(e,t,{checkForDefaultPrevented:r=!0}={}){return function(n){if(e?.(n),!1===r||!n||!n.defaultPrevented)return t?.(n)}}"u">typeof window&&window.document&&window.document.createElement;var l=globalThis?.document?r.useLayoutEffect:()=>{};r[" useEffectEvent ".trim().toString()],r[" useInsertionEffect ".trim().toString()];var c=r[" useInsertionEffect ".trim().toString()]||l;Symbol("RADIX:SYNC_STATE");var s=e.i(999682),u=e.i(635804),d=e.i(296626);e.i(174080);var f=Symbol.for("radix.slottable"),p=Symbol.for("react.lazy");function m(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===p&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var h=r[" use ".trim().toString()],y=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,n)=>{var i;let a,l=(i=`Primitive.${n}`,(a=r.forwardRef((e,t)=>{var n;let a,l,{children:c,...s}=e,u=null,d=!1,p=[];m(c)&&"function"==typeof h&&(c=h(c._payload)),r.Children.forEach(c,e=>{var t;if(t=e,r.isValidElement(t)&&"function"==typeof t.type&&"__radixId"in t.type&&t.type.__radixId===f){d=!0;let t="child"in e.props?e.props.child:e.props.children;m(t)&&"function"==typeof h&&(t=h(t._payload)),u=((e,t)=>{if("child"in e.props){let t=e.props.child;return r.isValidElement(t)?r.cloneElement(t,void 0,e.props.children(t.props.children)):null}return r.isValidElement(t)?t:null})(e,t),p.push(u?.props?.children)}else p.push(e)}),u?u=r.cloneElement(u,void 0,p):!d&&1===r.Children.count(c)&&r.isValidElement(c)&&(u=c);let y=u?(n=u,(l=(a=Object.getOwnPropertyDescriptor(n.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?n.ref:(l=(a=Object.getOwnPropertyDescriptor(n,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?n.props.ref:n.props.ref||n.ref):void 0,v=o(t,y);if(!u){if(c||0===c){let e,t;throw Error(d?(e=i,`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`):(t=i,`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`))}return c}let b=function(e,t){let r={...t};for(let n in t){let o=e[n],i=t[n];/^on[A-Z]/.test(n)?o&&i?r[n]=(...e)=>{let t=i(...e);return o(...e),t}:o&&(r[n]=o):"style"===n?r[n]={...o,...i}:"className"===n&&(r[n]=[o,i].filter(Boolean).join(" "))}return{...e,...r}}(s,u.props??{});return u.type!==r.Fragment&&(b.ref=t?v:y),r.cloneElement(u,b)})).displayName=`${i}.Slot`,a),c=r.forwardRef((e,r)=>{let{asChild:o,...i}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(o?l:n,{...i,ref:r})});return c.displayName=`Primitive.${n}`,{...e,[n]:c}},{}),v="Checkbox",[b,g]=(0,i.createContextScope)(v),[x,w]=b(v);function k(e){let{__scopeCheckbox:n,checked:o,children:i,defaultChecked:a,disabled:l,form:s,name:u,onCheckedChange:d,required:f,value:p="on",internal_do_not_use_render:m}=e,[h,y]=function({prop:e,defaultProp:t,onChange:n=()=>{},caller:o}){let[i,a,l]=function({defaultProp:e,onChange:t}){let[n,o]=r.useState(e),i=r.useRef(n),a=r.useRef(t);return c(()=>{a.current=t},[t]),r.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,o,a]}({defaultProp:t,onChange:n}),s=void 0!==e,u=s?e:i;{let t=r.useRef(void 0!==e);r.useEffect(()=>{let e=t.current;if(e!==s){let t=s?"controlled":"uncontrolled";console.warn(`${o} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=s},[s,o])}return[u,r.useCallback(t=>{if(s){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else a(t)},[s,e,a,l])]}({prop:o,defaultProp:a??!1,onChange:d,caller:v}),[b,g]=r.useState(null),[w,k]=r.useState(null),E=r.useRef(!1),j=!b||!!s||!!b.closest("form"),R={checked:h,disabled:l,setChecked:y,control:b,setControl:g,name:u,form:s,value:p,hasConsumerStoppedPropagationRef:E,required:f,defaultChecked:!_(a)&&a,isFormControl:j,bubbleInput:w,setBubbleInput:k};return(0,t.jsx)(x,{scope:n,...R,children:"function"==typeof m?m(R):i})}var E="CheckboxTrigger",j=r.forwardRef(({__scopeCheckbox:e,onKeyDown:n,onClick:i,...l},c)=>{let{control:s,value:u,disabled:d,checked:f,required:p,setControl:m,setChecked:h,hasConsumerStoppedPropagationRef:v,isFormControl:b,bubbleInput:g}=w(E,e),x=o(c,m),k=r.useRef(f);return r.useEffect(()=>{let e=s?.form;if(e){let t=()=>h(k.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[s,h]),(0,t.jsx)(y.button,{type:"button",role:"checkbox","aria-checked":_(f)?"mixed":f,"aria-required":p,"data-state":N(f),"data-disabled":d?"":void 0,disabled:d,value:u,...l,ref:x,onKeyDown:a(n,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:a(i,e=>{h(e=>!!_(e)||!e),g&&b&&(v.current=e.isPropagationStopped(),v.current||e.stopPropagation())})})});j.displayName=E;var R=r.forwardRef((e,r)=>{let{__scopeCheckbox:n,name:o,checked:i,defaultChecked:a,required:l,disabled:c,value:s,onCheckedChange:u,form:d,...f}=e;return(0,t.jsx)(k,{__scopeCheckbox:n,checked:i,defaultChecked:a,disabled:c,required:l,onCheckedChange:u,name:o,form:d,value:s,internal_do_not_use_render:({isFormControl:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(j,{...f,ref:r,__scopeCheckbox:n}),e&&(0,t.jsx)(I,{__scopeCheckbox:n})]})})});R.displayName=v;var S="CheckboxIndicator",C=r.forwardRef((e,r)=>{let{__scopeCheckbox:n,forceMount:o,...i}=e,a=w(S,n);return(0,t.jsx)(d.Presence,{present:o||_(a.checked)||!0===a.checked,children:(0,t.jsx)(y.span,{"data-state":N(a.checked),"data-disabled":a.disabled?"":void 0,...i,ref:r,style:{pointerEvents:"none",...e.style}})})});C.displayName=S;var T="CheckboxBubbleInput",I=r.forwardRef(({__scopeCheckbox:e,...n},i)=>{let{control:a,hasConsumerStoppedPropagationRef:l,checked:c,defaultChecked:d,required:f,disabled:p,name:m,value:h,form:v,bubbleInput:b,setBubbleInput:g}=w(T,e),x=o(i,g),k=(0,s.usePrevious)(c),E=(0,u.useSize)(a);r.useEffect(()=>{if(!b)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(k!==c&&e){let r=new Event("click",{bubbles:t});b.indeterminate=_(c),e.call(b,!_(c)&&c),b.dispatchEvent(r)}},[b,k,c,l]);let j=r.useRef(!_(c)&&c);return(0,t.jsx)(y.input,{type:"checkbox","aria-hidden":!0,defaultChecked:d??j.current,required:f,disabled:p,name:m,value:h,form:v,...n,tabIndex:-1,ref:x,style:{...n.style,...E,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function _(e){return"indeterminate"===e}function N(e){return _(e)?"indeterminate":e?"checked":"unchecked"}I.displayName=T,e.s(["Checkbox",0,R,"CheckboxIndicator",0,C,"Indicator",0,C,"Root",0,R,"createCheckboxScope",0,g,"unstable_BubbleInput",0,I,"unstable_CheckboxBubbleInput",0,I,"unstable_CheckboxProvider",0,k,"unstable_CheckboxTrigger",0,j,"unstable_Provider",0,k,"unstable_Trigger",0,j],388474);var D=e.i(388474),D=D,P=e.i(975157),$=e.i(593698);e.s(["Checkbox",0,function({className:e,...r}){return(0,t.jsx)(D.Root,{"data-slot":"checkbox",className:(0,P.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)($.CheckIcon,{})})})}],59497)},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)},986253,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["default",0,t])},716327,e=>{"use strict";var t=e.i(26495);e.s(["ChevronDown",()=>t.default])},867927,e=>{"use strict";var t=e.i(986253);e.s(["ChevronRight",()=>t.default])},482022,e=>{"use strict";let t=(0,e.i(456420).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],482022)},630299,e=>{"use strict";let t=(0,e.i(456420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["default",0,t])},784774,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:n,...o}){return(0,t.jsx)("div",{className:(0,r.cn)("w-full overflow-x-auto",n),children:(0,t.jsx)("table",{className:(0,r.cn)("w-full caption-bottom text-sm",e),...o})})},"TableBody",0,function({className:e,...n}){return(0,t.jsx)("tbody",{className:(0,r.cn)("divide-y",e),...n})},"TableCell",0,function({className:e,...n}){return(0,t.jsx)("td",{className:(0,r.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...n})},"TableFooter",0,function({className:e,...n}){return(0,t.jsx)("tfoot",{className:(0,r.cn)("border-t bg-muted/50 font-medium",e),...n})},"TableHead",0,function({className:e,...n}){return(0,t.jsx)("th",{className:(0,r.cn)("h-10 whitespace-nowrap px-3 text-left align-middle text-xs font-medium text-muted-foreground",e),...n})},"TableHeader",0,function({className:e,...n}){return(0,t.jsx)("thead",{className:(0,r.cn)("border-b",e),...n})},"TableRow",0,function({className:e,...n}){return(0,t.jsx)("tr",{className:(0,r.cn)("transition-colors hover:bg-muted/40",e),...n})}])},689664,e=>{"use strict";var t=e.i(643957);e.s(["Check",()=>t.default])},508734,e=>{"use strict";let t=(0,e.i(456420).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],508734)},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),n=e.i(975157);let o=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,n.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,n.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,n.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...i}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,n.cn)(o({variant:r,className:e})),...i})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,n.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},842727,e=>{"use strict";var t=e.i(271645);function r(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),!1===n||!r||!r.defaultPrevented)return t?.(r)}}"u">typeof window&&window.document&&window.document.createElement;var n=e.i(75830);function o(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function i(...e){return t.useCallback(function(...e){return t=>{let r=!1,n=e.map(e=>{let n=o(e,t);return r||"function"!=typeof n||(r=!0),n});if(r)return()=>{for(let t=0;t<n.length;t++){let r=n[t];"function"==typeof r?r():o(e[t],null)}}}}(...e),e)}var a=e.i(30030),l=e.i(610772);e.i(174080);var c=Symbol.for("radix.slottable"),s=Symbol.for("react.lazy");function u(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===s&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}var d=t[" use ".trim().toString()],f=e.i(843476),p=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,r)=>{var n;let o,a=(n=`Primitive.${r}`,(o=t.forwardRef((e,r)=>{var o;let a,l,{children:s,...f}=e,p=null,m=!1,h=[];u(s)&&"function"==typeof d&&(s=d(s._payload)),t.Children.forEach(s,e=>{var r;if(r=e,t.isValidElement(r)&&"function"==typeof r.type&&"__radixId"in r.type&&r.type.__radixId===c){m=!0;let r="child"in e.props?e.props.child:e.props.children;u(r)&&"function"==typeof d&&(r=d(r._payload)),p=((e,r)=>{if("child"in e.props){let r=e.props.child;return t.isValidElement(r)?t.cloneElement(r,void 0,e.props.children(r.props.children)):null}return t.isValidElement(r)?r:null})(e,r),h.push(p?.props?.children)}else h.push(e)}),p?p=t.cloneElement(p,void 0,h):!m&&1===t.Children.count(s)&&t.isValidElement(s)&&(p=s);let y=p?(o=p,(l=(a=Object.getOwnPropertyDescriptor(o.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?o.ref:(l=(a=Object.getOwnPropertyDescriptor(o,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?o.props.ref:o.props.ref||o.ref):void 0,v=i(r,y);if(!p){if(s||0===s){let e,t;throw Error(m?(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 b=function(e,t){let r={...t};for(let n in t){let o=e[n],i=t[n];/^on[A-Z]/.test(n)?o&&i?r[n]=(...e)=>{let t=i(...e);return o(...e),t}:o&&(r[n]=o):"style"===n?r[n]={...o,...i}:"className"===n&&(r[n]=[o,i].filter(Boolean).join(" "))}return{...e,...r}}(f,p.props??{});return p.type!==t.Fragment&&(b.ref=r?v:y),t.cloneElement(p,b)})).displayName=`${n}.Slot`,o),l=t.forwardRef((e,t)=>{let{asChild:n,...o}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,f.jsx)(n?a:r,{...o,ref:t})});return l.displayName=`Primitive.${r}`,{...e,[r]:l}},{}),m=e.i(30207),h=globalThis?.document?t.useLayoutEffect:()=>{};t[" useEffectEvent ".trim().toString()],t[" useInsertionEffect ".trim().toString()];var y=t[" useInsertionEffect ".trim().toString()]||h;Symbol("RADIX:SYNC_STATE");var v=e.i(586318),b=!1,g=t[" useSyncExternalStore ".trim().toString()];function x(){return()=>{}}var w="function"==typeof g?function(){return g(x,()=>!0,()=>!1)}:function(){let[e,r]=t.useState(b);return t.useEffect(()=>{b||(b=!0,r(!0))},[]),e},k="rovingFocusGroup.onEntryFocus",E={bubbles:!1,cancelable:!0},j="RovingFocusGroup",[R,S,C]=(0,n.createCollection)(j),[T,I]=(0,a.createContextScope)(j,[C]),[_,N]=T(j),D=t.forwardRef((e,t)=>(0,f.jsx)(R.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,f.jsx)(R.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,f.jsx)(P,{...e,ref:t})})}));D.displayName=j;var P=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:o,orientation:a,loop:l=!1,dir:c,currentTabStopId:s,defaultCurrentTabStopId:u,onCurrentTabStopIdChange:d,onEntryFocus:h,preventScrollOnEntryFocus:b=!1,...g}=e,x=t.useRef(null),w=i(n,x),R=(0,v.useDirection)(c),[C,T]=function({prop:e,defaultProp:r,onChange:n=()=>{},caller:o}){let[i,a,l]=function({defaultProp:e,onChange:r}){let[n,o]=t.useState(e),i=t.useRef(n),a=t.useRef(r);return y(()=>{a.current=r},[r]),t.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,o,a]}({defaultProp:r,onChange:n}),c=void 0!==e,s=c?e:i;{let r=t.useRef(void 0!==e);t.useEffect(()=>{let e=r.current;if(e!==c){let t=c?"controlled":"uncontrolled";console.warn(`${o} is changing from ${e?"controlled":"uncontrolled"} to ${t}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}r.current=c},[c,o])}return[s,t.useCallback(t=>{if(c){let r="function"==typeof t?t(e):t;r!==e&&l.current?.(r)}else a(t)},[c,e,a,l])]}({prop:s,defaultProp:u??null,onChange:d,caller:j}),[I,N]=t.useState(!1),D=(0,m.useCallbackRef)(h),P=S(o),$=t.useRef(!1),[A,F]=t.useState(0);return t.useEffect(()=>{let e=x.current;if(e)return e.addEventListener(k,D),()=>e.removeEventListener(k,D)},[D]),(0,f.jsx)(_,{scope:o,orientation:a,dir:R,loop:l,currentTabStopId:C,onItemFocus:t.useCallback(e=>T(e),[T]),onItemShiftTab:t.useCallback(()=>N(!0),[]),onFocusableItemAdd:t.useCallback(()=>F(e=>e+1),[]),onFocusableItemRemove:t.useCallback(()=>F(e=>e-1),[]),children:(0,f.jsx)(p.div,{tabIndex:I||0===A?-1:0,"data-orientation":a,...g,ref:w,style:{outline:"none",...e.style},onMouseDown:r(e.onMouseDown,()=>{$.current=!0}),onFocus:r(e.onFocus,e=>{let t=!$.current;if(e.target===e.currentTarget&&t&&!I){let t=new CustomEvent(k,E);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=P().filter(e=>e.focusable);M([e.find(e=>e.active),e.find(e=>e.id===C),...e].filter(Boolean).map(e=>e.ref.current),b)}}$.current=!1}),onBlur:r(e.onBlur,()=>N(!1))})})}),$="RovingFocusGroupItem",A=t.forwardRef((e,n)=>{let{__scopeRovingFocusGroup:o,focusable:i=!0,active:a=!1,tabStopId:c,children:s,...u}=e,d=(0,l.useId)(),m=c||d,y=N($,o),v=y.currentTabStopId===m,b=S(o),{onFocusableItemAdd:g,onFocusableItemRemove:x,currentTabStopId:k}=y,E=w();return h(()=>{if(E&&i)return g(),()=>x()},[E,i,g,x]),t.useEffect(()=>{if(!E&&i)return g(),()=>x()},[E,i,g,x]),(0,f.jsx)(R.ItemSlot,{scope:o,id:m,focusable:i,active:a,children:(0,f.jsx)(p.span,{tabIndex:v?0:-1,"data-orientation":y.orientation,...u,ref:n,onMouseDown:r(e.onMouseDown,e=>{i?y.onItemFocus(m):e.preventDefault()}),onFocus:r(e.onFocus,()=>y.onItemFocus(m)),onKeyDown:r(e.onKeyDown,e=>{if("Tab"===e.key&&e.shiftKey)return void y.onItemShiftTab();if(e.target!==e.currentTarget)return;let t=function(e,t,r){var n;let o=(n=e.key,"rtl"!==r?n:"ArrowLeft"===n?"ArrowRight":"ArrowRight"===n?"ArrowLeft":n);if(!("vertical"===t&&["ArrowLeft","ArrowRight"].includes(o))&&!("horizontal"===t&&["ArrowUp","ArrowDown"].includes(o)))return F[o]}(e,y.orientation,y.dir);if(void 0!==t){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let o=b().filter(e=>e.focusable).map(e=>e.ref.current);if("last"===t)o.reverse();else if("prev"===t||"next"===t){var r,n;"prev"===t&&o.reverse();let i=o.indexOf(e.currentTarget);o=y.loop?(r=o,n=i+1,r.map((e,t)=>r[(n+t)%r.length])):o.slice(i+1)}setTimeout(()=>M(o))}}),children:"function"==typeof s?s({isCurrentTabStop:v,hasTabStop:null!=k}):s})})});A.displayName=$;var F={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function M(e,t=!1){let r=document.activeElement;for(let n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}e.s(["Item",0,A,"Root",0,D,"createRovingFocusGroupScope",0,I],842727)},560972,e=>{"use strict";let t=(0,e.i(456420).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);e.s(["default",0,t])},170428,e=>{"use strict";let t=(0,e.i(456420).default)("git-compare-arrows",[["circle",{cx:"5",cy:"6",r:"3",key:"1qnov2"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7",key:"1yj91y"}],["path",{d:"m15 9-3-3 3-3",key:"1lwv8l"}],["circle",{cx:"19",cy:"18",r:"3",key:"1qljk2"}],["path",{d:"M12 18H7a2 2 0 0 1-2-2V9",key:"16sdep"}],["path",{d:"m9 15 3 3-3 3",key:"1m3kbl"}]]);e.s(["GitCompareArrows",0,t],170428)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,986253,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);e.s(["default",0,t])},929592,e=>{"use strict";var t=e.i(843476),r=e.i(225913),o=e.i(975157);let a=(0,r.cva)("group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current"}},defaultVariants:{variant:"default"}});e.s(["Alert",0,function({className:e,variant:r,...n}){return(0,t.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,o.cn)(a({variant:r}),e),...n})},"AlertDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"alert-description",className:(0,o.cn)("text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4",e),...r})}])},515288,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Card",0,function({className:e,size:o="default",...a}){return(0,t.jsx)("div",{"data-slot":"card","data-size":o,className:(0,r.cn)("group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",e),...a})},"CardAction",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-action",className:(0,r.cn)("col-start-2 row-span-2 row-start-1 self-start justify-self-end",e),...o})},"CardContent",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-content",className:(0,r.cn)("px-(--card-spacing)",e),...o})},"CardDescription",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-description",className:(0,r.cn)("text-sm text-muted-foreground",e),...o})},"CardFooter",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-footer",className:(0,r.cn)("flex items-center rounded-b-xl border-t bg-muted/50 p-(--card-spacing)",e),...o})},"CardHeader",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-header",className:(0,r.cn)("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)",e),...o})},"CardTitle",0,function({className:e,...o}){return(0,t.jsx)("div",{"data-slot":"card-title",className:(0,r.cn)("font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",e),...o})}])},758379,e=>{"use strict";let t=(0,e.i(456420).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);e.s(["default",0,t])},987968,e=>{"use strict";var t=e.i(843476),r=e.i(975157),o=e.i(758379),o=o;e.s(["Spinner",0,function({className:e,...a}){return(0,t.jsx)(o.default,{"data-slot":"spinner",role:"status","aria-label":"Loading",className:(0,r.cn)("size-4 animate-spin",e),...a})}],987968)},637611,e=>{"use strict";var t,r,o=e.i(247167);function a(e){return null===e?"null":Array.isArray(e)?"array":typeof e}function n(e){return"object"===a(e)}function s(e,t){return e.length<124?e:t}var i=((t=i||{})[t.InternalServerError=4500]="InternalServerError",t[t.InternalClientError=4005]="InternalClientError",t[t.BadRequest=4400]="BadRequest",t[t.BadResponse=4004]="BadResponse",t[t.Unauthorized=4401]="Unauthorized",t[t.Forbidden=4403]="Forbidden",t[t.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",t[t.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",t[t.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",t[t.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",t[t.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",t),c=((r=c||{}).ConnectionInit="connection_init",r.ConnectionAck="connection_ack",r.Ping="ping",r.Pong="pong",r.Subscribe="subscribe",r.Next="next",r.Error="error",r.Complete="complete",r);function l(e){if(!n(e))throw Error(`Message is expected to be an object, but got ${a(e)}`);if(!e.type)throw Error("Message is missing the 'type' property");if("string"!=typeof e.type)throw Error(`Message is expects the 'type' property to be a string, but got ${a(e.type)}`);switch(e.type){case"connection_init":case"connection_ack":case"ping":case"pong":if(null!=e.payload&&!n(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${e.payload}"`);break;case"subscribe":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${a(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!n(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${a(e.payload)}`);if("string"!=typeof e.payload.query)throw Error(`"${e.type}" message payload expects the 'query' property to be a string, but got ${a(e.payload.query)}`);if(null!=e.payload.variables&&!n(e.payload.variables))throw Error(`"${e.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${a(e.payload.variables)}`);if(null!=e.payload.operationName&&"string"!==a(e.payload.operationName))throw Error(`"${e.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${a(e.payload.operationName)}`);if(null!=e.payload.extensions&&!n(e.payload.extensions))throw Error(`"${e.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${a(e.payload.extensions)}`);break;case"next":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${a(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!n(e.payload))throw Error(`"${e.type}" message expects the 'payload' property to be an object, but got ${a(e.payload)}`);break;case"error":var t;if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${a(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);if(!(Array.isArray(t=e.payload)&&t.length>0&&t.every(e=>"message"in e)))throw Error(`"${e.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(e.payload)}`);break;case"complete":if("string"!=typeof e.id)throw Error(`"${e.type}" message expects the 'id' property to be a string, but got ${a(e.id)}`);if(!e.id)throw Error(`"${e.type}" message requires a non-empty 'id' property`);break;default:throw Error(`Invalid message 'type' property "${e.type}"`)}return e}function d(e,t){return l(e),JSON.stringify(e,t)}class p extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function u(e){return n(e)&&"code"in e&&"reason"in e}async function m(e,t){let r=await fetch("/api/graphql",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:e,variables:t})}),o=await r.json();if(!r.ok||o.errors?.length||!o.data)throw Error(o.errors?.map(e=>e.message).join("; ")||`HTTP ${r.status}`);return o.data}let y=null;function g(){let e=o.default.env.NEXT_PUBLIC_AGENT_WS_URL;return e||("https:"===window.location.protocol?`wss://${window.location.host}/graphql`:`ws://${window.location.hostname}:3091/graphql`)}e.s(["controlPlaneRequest",0,m,"controlPlaneSubscriptions",0,function(){return y??=function(t){let r,o,a,n,{url:m,connectionParams:y,lazy:g=!0,onNonLazyError:f=console.error,lazyCloseTimeout:h=0,keepAlive:x=0,disablePong:b,connectionAckWaitTimeout:v=0,retryAttempts:w=5,retryWait:E=async function(e){let t=Math.pow(2,e);await new Promise(e=>setTimeout(e,1e3*t+Math.floor(2700*Math.random()+300)))},shouldRetry:N=u,on:C,webSocketImpl:S,generateID:T=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})},jsonMessageReplacer:j,jsonMessageReviver:A}=t;if(S){var $;if(!("function"==typeof($=S)&&"constructor"in $&&"CLOSED"in $&&"CLOSING"in $&&"CONNECTING"in $&&"OPEN"in $))throw Error("Invalid WebSocket implementation provided");r=S}else r="u">typeof WebSocket?WebSocket:e.g.WebSocket||e.g.MozWebSocket;if(!r)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let k=r,I=(o={},a={on:(e,t)=>(o[e]=t,()=>{delete o[e]}),emit(e){"id"in e&&o[e.id]?.(e)}},n={connecting:C?.connecting?[C.connecting]:[],opened:C?.opened?[C.opened]:[],connected:C?.connected?[C.connected]:[],ping:C?.ping?[C.ping]:[],pong:C?.pong?[C.pong]:[],message:C?.message?[a.emit,C.message]:[a.emit],closed:C?.closed?[C.closed]:[],error:C?.error?[C.error]:[]},{onMessage:a.on,on(e,t){let r=n[e];return r.push(t),()=>{r.splice(r.indexOf(t),1)}},emit(e,...t){for(let r of[...n[e]])r(...t)}});function R(e){let t=[I.on("error",r=>{t.forEach(e=>e()),e(r)}),I.on("closed",r=>{t.forEach(e=>e()),e(r)})]}let _,O=0,P,M=!1,q=0,B=!1;async function z(){clearTimeout(P);let[e,t]=await (_??(_=new Promise((e,t)=>(async()=>{let r,o;if(M){if(await E(q),!O)return _=void 0,t({code:1e3,reason:"All Subscriptions Gone"});q++}I.emit("connecting",M);let a=new k("function"==typeof m?await m():m,"graphql-transport-ws");function n(){isFinite(x)&&x>0&&(clearTimeout(o),o=setTimeout(()=>{a.readyState===k.OPEN&&(a.send(d({type:c.Ping})),I.emit("ping",!1,void 0))},x))}R(e=>{_=void 0,clearTimeout(r),clearTimeout(o),t(e),e instanceof p&&(a.close(4499,"Terminated"),a.onerror=null,a.onclose=null)}),a.onerror=e=>I.emit("error",e),a.onclose=e=>I.emit("closed",e),a.onopen=async()=>{try{I.emit("opened",a);let e="function"==typeof y?await y():y;if(a.readyState!==k.OPEN)return;a.send(d(e?{type:c.ConnectionInit,payload:e}:{type:c.ConnectionInit},j)),isFinite(v)&&v>0&&(r=setTimeout(()=>{a.close(i.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},v)),n()}catch(e){I.emit("error",e),a.close(i.InternalClientError,s(e instanceof Error?e.message:String(e),"Internal client error"))}};let u=!1;a.onmessage=({data:t})=>{try{let o=l("string"==typeof t?JSON.parse(t,A):t);if(I.emit("message",o),"ping"===o.type||"pong"===o.type){I.emit(o.type,!0,o.payload),"pong"===o.type?n():b||(a.send(d(o.payload?{type:c.Pong,payload:o.payload}:{type:c.Pong})),I.emit("pong",!1,o.payload));return}if(u)return;if(o.type!==c.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(r),u=!0,I.emit("connected",a,o.payload,M),M=!1,q=0,e([a,new Promise((e,t)=>R(t))])}catch(e){a.onmessage=null,I.emit("error",e),a.close(i.BadResponse,s(e instanceof Error?e.message:String(e),"Bad response"))}}})())));e.readyState===k.CLOSING&&await t;let r=()=>{},o=new Promise(e=>r=e);return[e,r,Promise.race([o.then(()=>{O||(isFinite(h)&&h>0?P=setTimeout(()=>{e.readyState===k.OPEN&&e.close(1e3,"Normal Closure")},h):e.close(1e3,"Normal Closure"))}),t])]}function D(e){var t;if(u(e)&&(![1e3,1001,1006,1005,1012,1013,1014].includes(t=e.code)&&t>=1e3&&t<=1999||[i.InternalServerError,i.InternalClientError,i.BadRequest,i.BadResponse,i.Unauthorized,i.SubprotocolNotAcceptable,i.SubscriberAlreadyExists,i.TooManyInitialisationRequests].includes(e.code)))throw e;if(B)return!1;if(u(e)&&1e3===e.code)return O>0;if(!w||q>=w||!N(e))throw e;return M=!0}function L(e,t){let r=T(e),o=!1,a=!1,n=()=>{O--,o=!0};return(async()=>{for(O++;;)try{let[s,i,l]=await z();if(o)return i();let p=I.onMessage(r,e=>{switch(e.type){case c.Next:return void t.next(e.payload);case c.Error:a=!0,o=!0,t.error(e.payload),n();return;case c.Complete:o=!0,n();return}});s.send(d({id:r,type:c.Subscribe,payload:e},j)),n=()=>{o||s.readyState!==k.OPEN||s.send(d({id:r,type:c.Complete},j)),O--,o=!0,i()},await l.finally(p);return}catch(e){if(!D(e))return}})().then(()=>{a||t.complete()}).catch(e=>{t.error(e)}),()=>{o||n()}}return g||(async()=>{for(O++;;)try{let[,,e]=await z();await e}catch(e){try{if(!D(e))return}catch(e){return f?.(e)}}})(),{on:I.on,subscribe:L,iterate(e){let t=[],r={done:!1,error:null,resolve:()=>{}},o=L(e,{next(e){t.push(e),r.resolve()},error(e){r.done=!0,r.error=e,r.resolve()},complete(){r.done=!0,r.resolve()}}),a=async function*(){for(;;){for(t.length||await new Promise(e=>r.resolve=e);t.length;)yield t.shift();if(r.error)throw r.error;if(r.done)return}}();return a.throw=async e=>(r.done||(r.done=!0,r.error=e,r.resolve()),{done:!0,value:void 0}),a.return=async()=>(o(),{done:!0,value:void 0}),a},async dispose(){if(B=!0,_){let[e]=await _;e.close(1e3,"Normal Closure")}},terminate(){_&&I.emit("closed",new p)}}}({url:g,lazy:!0,retryAttempts:1/0,shouldRetry:()=>!0})}],637611)},784774,e=>{"use strict";var t=e.i(843476),r=e.i(975157);e.s(["Table",0,function({className:e,containerClassName:o,...a}){return(0,t.jsx)("div",{className:(0,r.cn)("w-full overflow-x-auto",o),children:(0,t.jsx)("table",{className:(0,r.cn)("w-full caption-bottom text-sm",e),...a})})},"TableBody",0,function({className:e,...o}){return(0,t.jsx)("tbody",{className:(0,r.cn)("divide-y",e),...o})},"TableCell",0,function({className:e,...o}){return(0,t.jsx)("td",{className:(0,r.cn)("whitespace-nowrap px-3 py-3 align-middle",e),...o})},"TableFooter",0,function({className:e,...o}){return(0,t.jsx)("tfoot",{className:(0,r.cn)("border-t bg-muted/50 font-medium",e),...o})},"TableHead",0,function({className:e,...o}){return(0,t.jsx)("th",{className:(0,r.cn)("h-10 whitespace-nowrap px-3 text-left align-middle text-xs font-medium text-muted-foreground",e),...o})},"TableHeader",0,function({className:e,...o}){return(0,t.jsx)("thead",{className:(0,r.cn)("border-b",e),...o})},"TableRow",0,function({className:e,...o}){return(0,t.jsx)("tr",{className:(0,r.cn)("transition-colors hover:bg-muted/40",e),...o})}])},26495,e=>{"use strict";let t=(0,e.i(456420).default)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);e.s(["default",0,t])},716327,e=>{"use strict";var t=e.i(26495);e.s(["ChevronDown",()=>t.default])},867927,e=>{"use strict";var t=e.i(986253);e.s(["ChevronRight",()=>t.default])},741120,e=>{"use strict";let t=(0,e.i(456420).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);e.s(["RefreshCw",0,t],741120)},82612,e=>{"use strict";var t=e.i(843476),r=e.i(225913),o=e.i(975157);let a=(0,r.cva)("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"}},defaultVariants:{variant:"default"}});e.s(["Empty",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty",className:(0,o.cn)("flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-xl border-dashed p-6 text-center text-balance",e),...r})},"EmptyDescription",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-description",className:(0,o.cn)("text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",e),...r})},"EmptyHeader",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-header",className:(0,o.cn)("flex max-w-sm flex-col items-center gap-2",e),...r})},"EmptyMedia",0,function({className:e,variant:r="default",...n}){return(0,t.jsx)("div",{"data-slot":"empty-icon","data-variant":r,className:(0,o.cn)(a({variant:r,className:e})),...n})},"EmptyTitle",0,function({className:e,...r}){return(0,t.jsx)("div",{"data-slot":"empty-title",className:(0,o.cn)("font-heading text-sm font-medium tracking-tight",e),...r})}])},462777,e=>{"use strict";async function t(e){if(navigator.clipboard?.writeText)try{await navigator.clipboard.writeText(e);return}catch{}let t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.append(t),t.select();let r=document.execCommand("copy");if(t.remove(),!r)throw Error("Copy is not supported by this browser")}e.s(["copyText",0,t,"createClientId",0,function(){try{if(globalThis.crypto?.randomUUID)return globalThis.crypto.randomUUID()}catch{}if(globalThis.crypto?.getRandomValues)try{let e=globalThis.crypto.getRandomValues(new Uint8Array(16));return Array.from(e,e=>e.toString(16).padStart(2,"0")).join("")}catch{}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}])},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"])},990142,e=>{"use strict";RegExp("^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$"),e.s(["CCUSAGE_REPORT_JOB_KIND",0,"ccusage.report"])}]);