@ai-development-environment/server 0.0.120 → 0.0.121

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 (182) hide show
  1. package/package.json +1 -1
  2. package/standalone/.next/BUILD_ID +1 -1
  3. package/standalone/.next/build-manifest.json +3 -3
  4. package/standalone/.next/prerender-manifest.json +3 -3
  5. package/standalone/.next/server/app/[locale]/(auth)/register/page.js.nft.json +1 -1
  6. package/standalone/.next/server/app/[locale]/(auth)/sign-in/page.js.nft.json +1 -1
  7. package/standalone/.next/server/app/[locale]/(dashboard)/ai/costs/page.js.nft.json +1 -1
  8. package/standalone/.next/server/app/[locale]/(dashboard)/ai/drafts/new/page.js.nft.json +1 -1
  9. package/standalone/.next/server/app/[locale]/(dashboard)/ai/drafts/page.js.nft.json +1 -1
  10. package/standalone/.next/server/app/[locale]/(dashboard)/ai/plans/[runId]/page.js.nft.json +1 -1
  11. package/standalone/.next/server/app/[locale]/(dashboard)/ai/plans/[runId]/page_client-reference-manifest.js +1 -1
  12. package/standalone/.next/server/app/[locale]/(dashboard)/ai/plans/page.js.nft.json +1 -1
  13. package/standalone/.next/server/app/[locale]/(dashboard)/ai/sessions/[runId]/page.js.nft.json +1 -1
  14. package/standalone/.next/server/app/[locale]/(dashboard)/ai/sessions/[runId]/page_client-reference-manifest.js +1 -1
  15. package/standalone/.next/server/app/[locale]/(dashboard)/ai/sessions/page.js.nft.json +1 -1
  16. package/standalone/.next/server/app/[locale]/(dashboard)/ai/skills/[skillId]/page.js.nft.json +1 -1
  17. package/standalone/.next/server/app/[locale]/(dashboard)/ai/skills/groups/[groupId]/page.js.nft.json +1 -1
  18. package/standalone/.next/server/app/[locale]/(dashboard)/ai/skills/groups/page.js.nft.json +1 -1
  19. package/standalone/.next/server/app/[locale]/(dashboard)/ai/skills/page.js.nft.json +1 -1
  20. package/standalone/.next/server/app/[locale]/(dashboard)/ai/skills/sync/[runId]/page.js.nft.json +1 -1
  21. package/standalone/.next/server/app/[locale]/(dashboard)/ai/usage/page.js.nft.json +1 -1
  22. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/action-center/page.js.nft.json +1 -1
  23. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/agents/[id]/page.js.nft.json +1 -1
  24. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/agents/page.js.nft.json +1 -1
  25. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/apps/[appId]/page.js.nft.json +1 -1
  26. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/apps/[appId]/page_client-reference-manifest.js +1 -1
  27. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/apps/page.js.nft.json +1 -1
  28. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/builds/[buildId]/coverage/page.js.nft.json +1 -1
  29. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/builds/[buildId]/output/route.js.nft.json +1 -1
  30. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/builds/[buildId]/page.js.nft.json +1 -1
  31. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/builds/configurations/[configurationId]/page.js.nft.json +1 -1
  32. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/builds/page.js.nft.json +1 -1
  33. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/changes/page.js.nft.json +1 -1
  34. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/codebases/[codebaseId]/page.js.nft.json +1 -1
  35. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/codebases/page.js.nft.json +1 -1
  36. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/codebases/repositories/[repositoryId]/page.js.nft.json +1 -1
  37. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/commands/[commandId]/edit/page.js.nft.json +1 -1
  38. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/commands/new/page.js.nft.json +1 -1
  39. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/commands/page.js.nft.json +1 -1
  40. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/commands/runs/[runId]/output/route.js.nft.json +1 -1
  41. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/commands/runs/[runId]/page.js.nft.json +1 -1
  42. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/jobs/[jobId]/page.js.nft.json +1 -1
  43. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/notifications/page.js.nft.json +1 -1
  44. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/workflows/[workflowId]/edit/page.js.nft.json +1 -1
  45. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/workflows/[workflowId]/page.js.nft.json +1 -1
  46. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/workflows/new/page.js.nft.json +1 -1
  47. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/workflows/page.js.nft.json +1 -1
  48. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/workflows/runs/[runId]/page.js.nft.json +1 -1
  49. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/worktrees/[worktreeId]/page.js.nft.json +1 -1
  50. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/worktrees/[worktreeId]/page_client-reference-manifest.js +1 -1
  51. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/worktrees/page.js.nft.json +1 -1
  52. package/standalone/.next/server/app/[locale]/(dashboard)/dashboard/worktrees/page_client-reference-manifest.js +1 -1
  53. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/analytics-events/page.js.nft.json +1 -1
  54. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/console-logs/page.js.nft.json +1 -1
  55. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/crashes/[crashId]/page.js.nft.json +1 -1
  56. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/crashes/dsyms/[dsymId]/page.js.nft.json +1 -1
  57. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/crashes/dsyms/page.js.nft.json +1 -1
  58. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/crashes/page.js.nft.json +1 -1
  59. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/push-notifications/page.js.nft.json +1 -1
  60. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/[endpointId]/mocks/page.js.nft.json +1 -1
  61. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/[endpointId]/page.js.nft.json +1 -1
  62. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/breakpoints/page.js.nft.json +1 -1
  63. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/history/[requestId]/page.js.nft.json +1 -1
  64. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/history/page.js.nft.json +1 -1
  65. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/new/page.js.nft.json +1 -1
  66. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/page.js.nft.json +1 -1
  67. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/sse/storage/page.js.nft.json +1 -1
  68. package/standalone/.next/server/app/[locale]/(dashboard)/debugging/unified-events/page.js.nft.json +1 -1
  69. package/standalone/.next/server/app/[locale]/(dashboard)/github/actions/page.js.nft.json +1 -1
  70. package/standalone/.next/server/app/[locale]/(dashboard)/github/actions-cache/page.js.nft.json +1 -1
  71. package/standalone/.next/server/app/[locale]/(dashboard)/github/cache/entries/[id]/page.js.nft.json +1 -1
  72. package/standalone/.next/server/app/[locale]/(dashboard)/github/cache/page.js.nft.json +1 -1
  73. package/standalone/.next/server/app/[locale]/(dashboard)/github/comments/page.js.nft.json +1 -1
  74. package/standalone/.next/server/app/[locale]/(dashboard)/github/pull-requests/[owner]/[repository]/[number]/page.js.nft.json +1 -1
  75. package/standalone/.next/server/app/[locale]/(dashboard)/github/pull-requests/page.js.nft.json +1 -1
  76. package/standalone/.next/server/app/[locale]/(dashboard)/github/webhooks/page.js.nft.json +1 -1
  77. package/standalone/.next/server/app/[locale]/(dashboard)/gitlab/cache/page.js.nft.json +1 -1
  78. package/standalone/.next/server/app/[locale]/(dashboard)/gitlab/comments/page.js.nft.json +1 -1
  79. package/standalone/.next/server/app/[locale]/(dashboard)/gitlab/merge-requests/[projectId]/[iid]/page.js.nft.json +1 -1
  80. package/standalone/.next/server/app/[locale]/(dashboard)/gitlab/merge-requests/page.js.nft.json +1 -1
  81. package/standalone/.next/server/app/[locale]/(dashboard)/gitlab/pipelines/page.js.nft.json +1 -1
  82. package/standalone/.next/server/app/[locale]/(dashboard)/gitlab/webhooks/page.js.nft.json +1 -1
  83. package/standalone/.next/server/app/[locale]/(dashboard)/jira/cache/page.js.nft.json +1 -1
  84. package/standalone/.next/server/app/[locale]/(dashboard)/jira/cache/tickets/[issueKey]/page.js.nft.json +1 -1
  85. package/standalone/.next/server/app/[locale]/(dashboard)/jira/tickets/[issueKey]/page.js.nft.json +1 -1
  86. package/standalone/.next/server/app/[locale]/(dashboard)/jira/tickets/page.js.nft.json +1 -1
  87. package/standalone/.next/server/app/[locale]/(dashboard)/jira/webhooks/page.js.nft.json +1 -1
  88. package/standalone/.next/server/app/[locale]/(dashboard)/system/api-keys/page.js.nft.json +1 -1
  89. package/standalone/.next/server/app/[locale]/(dashboard)/system/build-data/page.js.nft.json +1 -1
  90. package/standalone/.next/server/app/[locale]/(dashboard)/system/credentials/page.js.nft.json +1 -1
  91. package/standalone/.next/server/app/[locale]/(dashboard)/system/devices/[id]/page.js.nft.json +1 -1
  92. package/standalone/.next/server/app/[locale]/(dashboard)/system/devices/enroll/page.js.nft.json +1 -1
  93. package/standalone/.next/server/app/[locale]/(dashboard)/system/devices/page.js.nft.json +1 -1
  94. package/standalone/.next/server/app/[locale]/(dashboard)/system/polling/page.js.nft.json +1 -1
  95. package/standalone/.next/server/app/[locale]/(dashboard)/system/prepare/page.js.nft.json +1 -1
  96. package/standalone/.next/server/app/[locale]/(dashboard)/system/provisioning-profiles/[profileId]/page.js.nft.json +1 -1
  97. package/standalone/.next/server/app/[locale]/(dashboard)/system/provisioning-profiles/page.js.nft.json +1 -1
  98. package/standalone/.next/server/app/[locale]/(dashboard)/system/settings/page.js.nft.json +1 -1
  99. package/standalone/.next/server/app/[locale]/(dashboard)/system/status/page.js.nft.json +1 -1
  100. package/standalone/.next/server/app/[locale]/(dashboard)/system/tailscale/page.js.nft.json +1 -1
  101. package/standalone/.next/server/app/[locale]/(dashboard)/system/tools/page.js.nft.json +1 -1
  102. package/standalone/.next/server/app/[locale]/(dashboard)/system/users/page.js.nft.json +1 -1
  103. package/standalone/.next/server/app/[locale]/page.js.nft.json +1 -1
  104. package/standalone/.next/server/app/_global-error.html +1 -1
  105. package/standalone/.next/server/app/_global-error.rsc +1 -1
  106. package/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  107. package/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  108. package/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  109. package/standalone/.next/server/app/_not-found.html +1 -1
  110. package/standalone/.next/server/app/_not-found.rsc +1 -1
  111. package/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  112. package/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  113. package/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  114. package/standalone/.next/server/app/api/agent/build-artifact-transfers/[transferId]/complete/route.js.nft.json +1 -1
  115. package/standalone/.next/server/app/api/agent/build-artifact-transfers/[transferId]/download/route.js.nft.json +1 -1
  116. package/standalone/.next/server/app/api/agent/build-artifact-transfers/[transferId]/route.js.nft.json +1 -1
  117. package/standalone/.next/server/app/api/agent/build-artifact-transfers/[transferId]/upload/route.js.nft.json +1 -1
  118. package/standalone/.next/server/app/api/agent/dsyms/[dsymId]/dwarf/route.js.nft.json +1 -1
  119. package/standalone/.next/server/app/api/agent/run-attachments/[attachmentId]/route.js.nft.json +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/codebases/by-path/route.js.nft.json +1 -1
  122. package/standalone/.next/server/app/api/codebases/route.js.nft.json +1 -1
  123. package/standalone/.next/server/app/api/crash-files/dsyms/[dsymId]/route.js.nft.json +1 -1
  124. package/standalone/.next/server/app/api/crash-files/reports/[crashId]/route.js.nft.json +1 -1
  125. package/standalone/.next/server/app/api/dsyms/route.js.nft.json +1 -1
  126. package/standalone/.next/server/app/api/dsyms/uploads/[uploadId]/complete/route.js.nft.json +1 -1
  127. package/standalone/.next/server/app/api/dsyms/uploads/[uploadId]/route.js.nft.json +1 -1
  128. package/standalone/.next/server/app/api/dsyms/uploads/route.js.nft.json +1 -1
  129. package/standalone/.next/server/app/api/graphql/route.js.nft.json +1 -1
  130. package/standalone/.next/server/app/api/ios/apns-devices/route.js.nft.json +1 -1
  131. package/standalone/.next/server/app/api/ios/devices/export.tsv/route.js.nft.json +1 -1
  132. package/standalone/.next/server/app/api/ios/enrollment/start/route.js.nft.json +1 -1
  133. package/standalone/.next/server/app/api/ios/notification-devices/route.js.nft.json +1 -1
  134. package/standalone/.next/server/app/api/mcp/route.js.nft.json +1 -1
  135. package/standalone/.next/server/app/api/public/builds/[buildId]/artifacts/[artifactId]/manifest.plist/route.js.nft.json +1 -1
  136. package/standalone/.next/server/app/api/public/builds/[buildId]/artifacts/[artifactId]/route.js.nft.json +1 -1
  137. package/standalone/.next/server/app/api/public/crashes/route.js.nft.json +1 -1
  138. package/standalone/.next/server/app/api/public/github/webhook/route.js.nft.json +1 -1
  139. package/standalone/.next/server/app/api/public/gitlab/webhook/route.js.nft.json +1 -1
  140. package/standalone/.next/server/app/api/public/ios/enrollment-profile/route.js.nft.json +1 -1
  141. package/standalone/.next/server/app/api/public/ios/profile-response/route.js.nft.json +1 -1
  142. package/standalone/.next/server/app/api/public/jira/webhook/route.js.nft.json +1 -1
  143. package/standalone/.next/server/app/api/public/sse/[token]/route.js.nft.json +1 -1
  144. package/standalone/.next/server/app/api/sse/history/export/route.js.nft.json +1 -1
  145. package/standalone/.next/server/app/api/telemetry/analytics-events/route.js.nft.json +1 -1
  146. package/standalone/.next/server/app/api/telemetry/console-logs/route.js.nft.json +1 -1
  147. package/standalone/.next/server/app/api/telemetry/export/route.js.nft.json +1 -1
  148. package/standalone/.next/server/app/api/tools/call/route.js.nft.json +1 -1
  149. package/standalone/.next/server/app/api/tools/catalog/route.js.nft.json +1 -1
  150. package/standalone/.next/server/app/api/worktrees/[worktreeId]/diff-image/route.js.nft.json +1 -1
  151. package/standalone/.next/server/chunks/_068dgv0osa_76._.js +1 -1
  152. package/standalone/.next/server/chunks/_0d9og16-1xzwf._.js +1 -1
  153. package/standalone/.next/server/chunks/_0tihxr172rjr2._.js +1 -1
  154. package/standalone/.next/server/chunks/_0x7v04zuo3n3l._.js +1 -1
  155. package/standalone/.next/server/chunks/_135qoeqd0y1f9._.js +1 -1
  156. package/standalone/.next/server/chunks/_14e7nz9n_7hbq._.js +1 -1
  157. package/standalone/.next/server/chunks/_1540l53pvp5wo._.js +1 -1
  158. package/standalone/.next/server/chunks/_1b4br9kktyl5f._.js +1 -1
  159. package/standalone/.next/server/chunks/_1fr7pyta5d-vs._.js +1 -1
  160. package/standalone/.next/server/chunks/_1olxqem1tg3kh._.js +1 -1
  161. package/standalone/.next/server/chunks/_1qt73el4gl5gk._.js +1 -1
  162. package/standalone/.next/server/chunks/_1sbfoz_fmetq8._.js +1 -1
  163. package/standalone/.next/server/chunks/_1v-7wrerkdl0r._.js +1 -1
  164. package/standalone/.next/server/chunks/_1xosefbi83ac9._.js +1 -1
  165. package/standalone/.next/server/chunks/ssr/_0p490iqgmcfib._.js +1 -1
  166. package/standalone/.next/server/chunks/ssr/_1e94gee9hafua._.js +1 -1
  167. package/standalone/.next/server/chunks/ssr/_21agp4ose6rkv._.js +1 -1
  168. package/standalone/.next/server/chunks/ssr/messages_de_json_[json]_cjs_1uig1ud36h5oz._.js +1 -1
  169. package/standalone/.next/server/chunks/ssr/messages_en_json_[json]_cjs_206072-e4clp3._.js +1 -1
  170. package/standalone/.next/server/chunks/ssr/messages_es_json_[json]_cjs_082yukd_h99n8._.js +1 -1
  171. package/standalone/.next/server/chunks/ssr/messages_fr_json_[json]_cjs_0j6-w0ix_w_ac._.js +1 -1
  172. package/standalone/.next/server/middleware-build-manifest.js +3 -3
  173. package/standalone/.next/server/pages/404.html +1 -1
  174. package/standalone/.next/server/pages/500.html +1 -1
  175. package/standalone/.next/server/preview-props.json +3 -3
  176. package/standalone/.next/server/server-reference-manifest.js +1 -1
  177. package/standalone/.next/server/server-reference-manifest.json +1 -1
  178. package/standalone/.next/static/chunks/{43_tvp8awujkm.js → 3lrrs8j55jfx5.js} +29 -29
  179. package/standalone/package.json +0 -3
  180. /package/standalone/.next/static/{tlglkJtqHCGQYPxc7WQxe → ntwR-kXmw3UwIhfvlU8IC}/_buildManifest.js +0 -0
  181. /package/standalone/.next/static/{tlglkJtqHCGQYPxc7WQxe → ntwR-kXmw3UwIhfvlU8IC}/_clientMiddlewareManifest.js +0 -0
  182. /package/standalone/.next/static/{tlglkJtqHCGQYPxc7WQxe → ntwR-kXmw3UwIhfvlU8IC}/_ssgManifest.js +0 -0
@@ -111,7 +111,7 @@
111
111
  refreshWorktreePullRequest(id: $id) { ${aG.Y} }
112
112
  }`,{id:i.id});l(a.refreshWorktreePullRequest),m(null)}catch(a){m(a instanceof Error?a.message:String(a))}finally{R(!1)}},ae=async(b,c=!1)=>{O(!0);try{let d=await (0,ay.W)(`mutation ChangeWorktreeBranch($input: ChangeWorktreeBranchInput!) {
113
113
  changeWorktreeBranch(input: $input) { id }
114
- }`,{input:{worktreeId:i.id,selection:b,requestId:(0,av.e)(),stashOnFailure:c}});await (0,aI.t)(d.changeWorktreeBranch.id),await a.onReload(),T(null),V(null),y(!1),m(null)}finally{O(!1)}},ag=async()=>{if(S)try{V(null),await ae(S,!0)}catch(a){V(a instanceof Error?a.message:String(a))}},ah=a.group.codebase.defaultBranch,ai=!!(ah&&(d=a.overview,e=a.group.codebase.id,f=i.id,d.agents.some(a=>a.codebases.some(a=>a.codebase.id===e&&a.worktrees.some(a=>a.id!==f&&a.branch===ah))))),ak=!a.branchManagementEnabled||"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress,al=async()=>{if(ah)try{await ae({mode:"EXISTING",branchName:ah,baseBranch:ah})}catch(a){m(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(ao.V,{onOpenChange:a=>{y(a),a||(T(null),V(null))},open:x,children:[(0,b.jsxs)(aj.G,{children:[(0,b.jsx)(aj.X,{asChild:!0,children:(0,b.jsx)(ao.r,{asChild:!0,children:v??(0,b.jsx)(af.K,{"aria-label":w("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(z.f,{})})})}),(0,b.jsxs)(aj.L,{align:q,alignOffset:r,className:"w-72",onCloseAutoFocus:a=>{W.current&&(W.current=!1,a.preventDefault(),y(!0))},children:[(0,b.jsxs)(aj.r,{onSelect:()=>{(0,av.d)(i.folder).catch(a=>m(String(a)))},children:[(0,b.jsx)(o.f,{})," ",w("copyPath")]}),X.length>0&&(0,b.jsxs)(aj.r,{disabled:!!Y,onSelect:()=>H(!0),title:Y??void 0,children:[(0,b.jsx)(A.f,{})," ",w("moveToAgent")]}),(0,b.jsxs)(aj.r,{disabled:ak,onSelect:()=>{W.current=!0},children:[(0,b.jsx)(t.f,{})," ",w("changeBranch")]}),ah&&!ai&&(0,b.jsxs)(aj.r,{disabled:ak||M||i.branch===ah,onSelect:()=>void al(),children:[M?(0,b.jsx)(aq.f,{}):(0,b.jsx)(t.f,{})," ",w("changeBranchToDefault",{branch:ah})]}),(0,b.jsxs)(aj.r,{disabled:"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress||!Z?.agent.capabilities.includes("worktree.commit")||!i.hasStagedChanges&&!i.hasUnstagedChanges,onSelect:()=>F(!0),children:[(0,b.jsx)(u.f,{})," ",w("commit")]}),"NONE"!==k&&(0,b.jsx)(bo,{icon:(0,b.jsx)(p.f,{}),label:w("CODE_INSIDERS"===k?"openInsiders":"openCode"),operation:"OPEN_EDITOR",disabled:!!a.group.blockingJob,props:{...a,onCompleted:a.onReload}}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/${a.group.codebase.id}`,children:[(0,b.jsx)(p.f,{})," ",w("viewCodebase")]})}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/repositories/${a.group.repository.id}`,children:[(0,b.jsx)(s.f,{})," ",w("viewRepository")]})}),i.branch&&/^github\.com\/[^/]+\/[^/]+$/i.test(a.group.repository.canonicalOrigin)&&(0,b.jsxs)(aj.r,{disabled:Q,onSelect:()=>void ac(),children:[Q?(0,b.jsx)(aq.f,{}):(0,b.jsx)(E.f,{})," ",w("refreshPullRequest")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(I.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("tags")})]}),j.map(a=>(0,b.jsxs)(aj.Q,{checked:_.has(a.id),onCheckedChange:b=>void aa(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,az.f)("size-3 rounded-full border",aW[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(aj.r,{onSelect:n,children:[(0,b.jsx)(D.f,{})," ",w("manageTags")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center justify-between gap-1.5 py-0 leading-none",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(B.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("highlight")})]}),(0,b.jsx)(af.K,{"aria-label":w("clearHighlight"),className:"size-6",disabled:!i.highlightColor,onClick:a=>{a.stopPropagation(),ab(null)},size:"icon-sm",variant:"ghost",children:(0,b.jsx)(K.f,{className:"size-3"})})]}),(0,b.jsx)(at.z,{"aria-label":w("highlight"),className:"grid w-full grid-cols-8 gap-1 px-1.5 pb-1",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&ab(a)},size:"sm",spacing:1,type:"single",value:i.highlightColor??"",variant:"outline",children:aM.map(a=>(0,b.jsx)(at.H,{"aria-label":a,className:(0,az.f)("aspect-square h-auto w-full min-w-0 p-0",aW[a],aX[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),!i.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.r,{disabled:$,onSelect:()=>L(!0),variant:"destructive",children:[(0,b.jsx)(K.f,{})," ",w("deleteWorktree")]})]})]})]}),(0,b.jsxs)(ao.T,{align:q,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:w("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:(0,P.f)(i.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(aB.f,{busy:M,onSubmit:a=>ae(a),onSubmitError:a=>{T(i.hasStagedChanges||i.hasUnstagedChanges?a:null)},recovery:S?(0,b.jsx)(ad.J,{children:(0,b.jsxs)(ad.p,{className:"space-y-2",children:[(0,b.jsx)("p",{children:w("stashRetryHelp")}),U&&(0,b.jsx)("p",{className:"text-destructive",children:U}),(0,b.jsxs)(af.K,{disabled:M,onClick:()=>void ag(),size:"sm",type:"button",variant:"outline",children:[M&&(0,b.jsx)(aq.f,{}),w("stashAndRetry")]})]})}):null,submitLabel:w("changeBranch"),target:aZ(a.group,i)})]})]}),G&&(0,b.jsx)(bi,{onOpenChange:H,open:G,props:a,targets:X.filter(b=>bf(b,a.overview))}),C&&(0,b.jsx)(bh,{onOpenChange:F,onReload:a.onReload,open:C,worktree:i}),!i.primary&&J&&(0,b.jsx)(bj,{onOpenChange:L,open:J,props:a})]})}function bh({worktree:a,open:d,onOpenChange:e,onReload:f}){let g=(0,N.f)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!0),[p,q]=(0,c.useState)(new Set),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!1;return(0,aH.I)(a.id).then(a=>{b||(i(a),m(!0===a.commitSigningEnabled),q(new Set(a.changes.filter(a=>a.staged).map(a=>a.path))))}).catch(a=>{b||u(a instanceof Error?a.message:String(a))}),()=>{b=!0}},[a.id]);let v=async()=>{s(!0),u(null);try{let b=await (0,ay.W)(`mutation CommitWorktree($input: CommitWorktreeInput!) {
114
+ }`,{input:{worktreeId:i.id,selection:b,requestId:(0,av.e)(),stashOnFailure:c}});await (0,aI.t)(d.changeWorktreeBranch.id),await a.onReload(),T(null),V(null),y(!1),m(null)}finally{O(!1)}},ag=async()=>{if(S)try{V(null),await ae(S,!0)}catch(a){V(a instanceof Error?a.message:String(a))}},ah=a.group.codebase.defaultBranch,ai=!!(ah&&(d=a.overview,e=a.group.codebase.id,f=i.id,d.agents.some(a=>a.codebases.some(a=>a.codebase.id===e&&a.worktrees.some(a=>a.id!==f&&a.branch===ah))))),ak=!a.branchManagementEnabled||"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress,al=async()=>{if(ah)try{await ae({mode:"EXISTING",branchName:ah,baseBranch:ah})}catch(a){m(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(ao.V,{onOpenChange:a=>{y(a),a||(T(null),V(null))},open:x,children:[(0,b.jsxs)(aj.G,{children:[(0,b.jsx)(aj.X,{asChild:!0,children:(0,b.jsx)(ao.r,{asChild:!0,children:v??(0,b.jsx)(af.K,{"aria-label":w("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(z.f,{})})})}),(0,b.jsxs)(aj.L,{align:q,alignOffset:r,className:"w-72",onCloseAutoFocus:a=>{W.current&&(W.current=!1,a.preventDefault(),y(!0))},children:[(0,b.jsxs)(aj.r,{onSelect:()=>{(0,av.d)(i.folder).catch(a=>m(String(a)))},children:[(0,b.jsx)(o.f,{})," ",w("copyPath")]}),(0,b.jsxs)(aj.r,{disabled:!i.branch,onSelect:()=>{i.branch&&(0,av.d)(i.branch).catch(a=>m(String(a)))},children:[(0,b.jsx)(t.f,{})," ",w("copyBranchName")]}),X.length>0&&(0,b.jsxs)(aj.r,{disabled:!!Y,onSelect:()=>H(!0),title:Y??void 0,children:[(0,b.jsx)(A.f,{})," ",w("moveToAgent")]}),(0,b.jsxs)(aj.r,{disabled:ak,onSelect:()=>{W.current=!0},children:[(0,b.jsx)(t.f,{})," ",w("changeBranch")]}),ah&&!ai&&(0,b.jsxs)(aj.r,{disabled:ak||M||i.branch===ah,onSelect:()=>void al(),children:[M?(0,b.jsx)(aq.f,{}):(0,b.jsx)(t.f,{})," ",w("changeBranchToDefault",{branch:ah})]}),(0,b.jsxs)(aj.r,{disabled:"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress||!Z?.agent.capabilities.includes("worktree.commit")||!i.hasStagedChanges&&!i.hasUnstagedChanges,onSelect:()=>F(!0),children:[(0,b.jsx)(u.f,{})," ",w("commit")]}),"NONE"!==k&&(0,b.jsx)(bo,{icon:(0,b.jsx)(p.f,{}),label:w("CODE_INSIDERS"===k?"openInsiders":"openCode"),operation:"OPEN_EDITOR",disabled:!!a.group.blockingJob,props:{...a,onCompleted:a.onReload}}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/${a.group.codebase.id}`,children:[(0,b.jsx)(p.f,{})," ",w("viewCodebase")]})}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/repositories/${a.group.repository.id}`,children:[(0,b.jsx)(s.f,{})," ",w("viewRepository")]})}),i.branch&&/^github\.com\/[^/]+\/[^/]+$/i.test(a.group.repository.canonicalOrigin)&&(0,b.jsxs)(aj.r,{disabled:Q,onSelect:()=>void ac(),children:[Q?(0,b.jsx)(aq.f,{}):(0,b.jsx)(E.f,{})," ",w("refreshPullRequest")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(I.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("tags")})]}),j.map(a=>(0,b.jsxs)(aj.Q,{checked:_.has(a.id),onCheckedChange:b=>void aa(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,az.f)("size-3 rounded-full border",aW[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(aj.r,{onSelect:n,children:[(0,b.jsx)(D.f,{})," ",w("manageTags")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center justify-between gap-1.5 py-0 leading-none",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(B.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("highlight")})]}),(0,b.jsx)(af.K,{"aria-label":w("clearHighlight"),className:"size-6",disabled:!i.highlightColor,onClick:a=>{a.stopPropagation(),ab(null)},size:"icon-sm",variant:"ghost",children:(0,b.jsx)(K.f,{className:"size-3"})})]}),(0,b.jsx)(at.z,{"aria-label":w("highlight"),className:"grid w-full grid-cols-8 gap-1 px-1.5 pb-1",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&ab(a)},size:"sm",spacing:1,type:"single",value:i.highlightColor??"",variant:"outline",children:aM.map(a=>(0,b.jsx)(at.H,{"aria-label":a,className:(0,az.f)("aspect-square h-auto w-full min-w-0 p-0",aW[a],aX[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),!i.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.r,{disabled:$,onSelect:()=>L(!0),variant:"destructive",children:[(0,b.jsx)(K.f,{})," ",w("deleteWorktree")]})]})]})]}),(0,b.jsxs)(ao.T,{align:q,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:w("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:(0,P.f)(i.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(aB.f,{busy:M,onSubmit:a=>ae(a),onSubmitError:a=>{T(i.hasStagedChanges||i.hasUnstagedChanges?a:null)},recovery:S?(0,b.jsx)(ad.J,{children:(0,b.jsxs)(ad.p,{className:"space-y-2",children:[(0,b.jsx)("p",{children:w("stashRetryHelp")}),U&&(0,b.jsx)("p",{className:"text-destructive",children:U}),(0,b.jsxs)(af.K,{disabled:M,onClick:()=>void ag(),size:"sm",type:"button",variant:"outline",children:[M&&(0,b.jsx)(aq.f,{}),w("stashAndRetry")]})]})}):null,submitLabel:w("changeBranch"),target:aZ(a.group,i)})]})]}),G&&(0,b.jsx)(bi,{onOpenChange:H,open:G,props:a,targets:X.filter(b=>bf(b,a.overview))}),C&&(0,b.jsx)(bh,{onOpenChange:F,onReload:a.onReload,open:C,worktree:i}),!i.primary&&J&&(0,b.jsx)(bj,{onOpenChange:L,open:J,props:a})]})}function bh({worktree:a,open:d,onOpenChange:e,onReload:f}){let g=(0,N.f)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!0),[p,q]=(0,c.useState)(new Set),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!1;return(0,aH.I)(a.id).then(a=>{b||(i(a),m(!0===a.commitSigningEnabled),q(new Set(a.changes.filter(a=>a.staged).map(a=>a.path))))}).catch(a=>{b||u(a instanceof Error?a.message:String(a))}),()=>{b=!0}},[a.id]);let v=async()=>{s(!0),u(null);try{let b=await (0,ay.W)(`mutation CommitWorktree($input: CommitWorktreeInput!) {
115
115
  commitWorktree(input: $input) { id }
116
116
  }`,{input:{worktreeId:a.id,message:j,signed:l,stageAll:n,paths:n?[]:[...p],requestId:(0,av.e)()}});await (0,aI.t)(b.commitWorktree.id),await f(),e(!1)}catch(a){u(a instanceof Error?a.message:String(a))}finally{s(!1)}};return(0,b.jsx)(ai.N,{onOpenChange:e,open:d,children:(0,b.jsxs)(ai.d,{className:"max-h-[min(42rem,calc(100vh-2rem))] overflow-y-auto sm:max-w-lg",children:[(0,b.jsxs)(ai.s,{children:[(0,b.jsx)(ai.F,{children:g("commitTitle")}),(0,b.jsx)(ai.C,{children:g("commitDescription")})]}),(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)(an.f,{htmlFor:"worktree-commit-message",children:g("commitMessage")}),(0,b.jsx)(au.f,{autoFocus:!0,id:"worktree-commit-message",onChange:a=>k(a.target.value),placeholder:g("commitMessagePlaceholder"),rows:4,value:j})]}),(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,b.jsx)(ah.f,{checked:l,onCheckedChange:a=>m(!!a)}),g("signedCommit")]}),(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,b.jsx)(ah.f,{checked:n,onCheckedChange:a=>o(!!a)}),g("stageAll")]}),!n&&h&&(0,b.jsx)("div",{className:"max-h-64 space-y-1 overflow-y-auto rounded-md border p-2",children:h.changes.map(a=>(0,b.jsxs)("label",{className:"flex items-start gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[(0,b.jsx)(ah.f,{checked:p.has(a.path),onCheckedChange:b=>{q(c=>{let d=new Set(c);return b?d.add(a.path):d.delete(a.path),d})}}),(0,b.jsx)("span",{className:"break-all font-mono text-xs",children:a.path})]},a.path))}),!h&&!t&&(0,b.jsx)(aq.f,{}),t&&(0,b.jsx)(ad.J,{variant:"destructive",children:(0,b.jsx)(ad.p,{children:t})})]}),(0,b.jsxs)(ai.c,{children:[(0,b.jsx)(af.K,{disabled:r,onClick:()=>e(!1),variant:"outline",children:g("cancel")}),(0,b.jsxs)(af.K,{disabled:r||!h||!j.trim()||!n&&0===p.size,onClick:()=>void v(),children:[r&&(0,b.jsx)(aq.f,{})," ",g("commit")]})]})]})})}function bi({props:a,targets:d,open:e,onOpenChange:f}){let g=(0,N.f)("worktrees"),h=1===d.length?d[0].group.codebase.id:"",[i,j]=(0,c.useState)(h),[k,l]=(0,c.useState)("__new__"),[m,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(null),u=d.some(a=>a.group.codebase.id===i)?i:1===d.length?d[0].group.codebase.id:"",v=d.find(a=>a.group.codebase.id===u),w=d.map(a=>({value:a.group.codebase.id,label:`${a.agentGroup.agent.name} \xb7 ${a.group.repository.name}`,description:a.group.codebase.folder,keywords:`${a.agentGroup.agent.hostname} ${a.group.repository.displayOrigin}`})),x=v?.group.worktrees.find(a=>a.id===k),y=v?.group.worktrees.find(b=>b.branch===a.worktree.branch),z=!a.worktree.primary&&a.overview.agents.some(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)&&b.agent.capabilities.includes("worktree.delete")),A=async b=>{if("AWAITING_STASH"===b.status){t(b),await a.onReload();return}if("FAILED"===b.status)throw Error(b.error||g("moveFailed"));if("CANCELLED"===b.status)throw Error(g("moveCancelled"));a.onError("SUCCEEDED_WITH_WARNING"===b.status?b.warning:null),await a.onReload(),a.onMoved?.(b),f(!1)},B=async()=>{if(v){p(!0),r(null);try{let b=await (0,ay.W)(`mutation MoveWorktree($input: MoveWorktreeInput!) {
117
117
  moveWorktree(input: $input) {
@@ -111,7 +111,7 @@
111
111
  refreshWorktreePullRequest(id: $id) { ${aG.Y} }
112
112
  }`,{id:i.id});l(a.refreshWorktreePullRequest),m(null)}catch(a){m(a instanceof Error?a.message:String(a))}finally{R(!1)}},ae=async(b,c=!1)=>{O(!0);try{let d=await (0,ay.W)(`mutation ChangeWorktreeBranch($input: ChangeWorktreeBranchInput!) {
113
113
  changeWorktreeBranch(input: $input) { id }
114
- }`,{input:{worktreeId:i.id,selection:b,requestId:(0,av.e)(),stashOnFailure:c}});await (0,aI.t)(d.changeWorktreeBranch.id),await a.onReload(),T(null),V(null),y(!1),m(null)}finally{O(!1)}},ag=async()=>{if(S)try{V(null),await ae(S,!0)}catch(a){V(a instanceof Error?a.message:String(a))}},ah=a.group.codebase.defaultBranch,ai=!!(ah&&(d=a.overview,e=a.group.codebase.id,f=i.id,d.agents.some(a=>a.codebases.some(a=>a.codebase.id===e&&a.worktrees.some(a=>a.id!==f&&a.branch===ah))))),ak=!a.branchManagementEnabled||"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress,al=async()=>{if(ah)try{await ae({mode:"EXISTING",branchName:ah,baseBranch:ah})}catch(a){m(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(ao.V,{onOpenChange:a=>{y(a),a||(T(null),V(null))},open:x,children:[(0,b.jsxs)(aj.G,{children:[(0,b.jsx)(aj.X,{asChild:!0,children:(0,b.jsx)(ao.r,{asChild:!0,children:v??(0,b.jsx)(af.K,{"aria-label":w("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(z.f,{})})})}),(0,b.jsxs)(aj.L,{align:q,alignOffset:r,className:"w-72",onCloseAutoFocus:a=>{W.current&&(W.current=!1,a.preventDefault(),y(!0))},children:[(0,b.jsxs)(aj.r,{onSelect:()=>{(0,av.d)(i.folder).catch(a=>m(String(a)))},children:[(0,b.jsx)(o.f,{})," ",w("copyPath")]}),X.length>0&&(0,b.jsxs)(aj.r,{disabled:!!Y,onSelect:()=>H(!0),title:Y??void 0,children:[(0,b.jsx)(A.f,{})," ",w("moveToAgent")]}),(0,b.jsxs)(aj.r,{disabled:ak,onSelect:()=>{W.current=!0},children:[(0,b.jsx)(t.f,{})," ",w("changeBranch")]}),ah&&!ai&&(0,b.jsxs)(aj.r,{disabled:ak||M||i.branch===ah,onSelect:()=>void al(),children:[M?(0,b.jsx)(aq.f,{}):(0,b.jsx)(t.f,{})," ",w("changeBranchToDefault",{branch:ah})]}),(0,b.jsxs)(aj.r,{disabled:"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress||!Z?.agent.capabilities.includes("worktree.commit")||!i.hasStagedChanges&&!i.hasUnstagedChanges,onSelect:()=>F(!0),children:[(0,b.jsx)(u.f,{})," ",w("commit")]}),"NONE"!==k&&(0,b.jsx)(bo,{icon:(0,b.jsx)(p.f,{}),label:w("CODE_INSIDERS"===k?"openInsiders":"openCode"),operation:"OPEN_EDITOR",disabled:!!a.group.blockingJob,props:{...a,onCompleted:a.onReload}}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/${a.group.codebase.id}`,children:[(0,b.jsx)(p.f,{})," ",w("viewCodebase")]})}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/repositories/${a.group.repository.id}`,children:[(0,b.jsx)(s.f,{})," ",w("viewRepository")]})}),i.branch&&/^github\.com\/[^/]+\/[^/]+$/i.test(a.group.repository.canonicalOrigin)&&(0,b.jsxs)(aj.r,{disabled:Q,onSelect:()=>void ac(),children:[Q?(0,b.jsx)(aq.f,{}):(0,b.jsx)(E.f,{})," ",w("refreshPullRequest")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(I.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("tags")})]}),j.map(a=>(0,b.jsxs)(aj.Q,{checked:_.has(a.id),onCheckedChange:b=>void aa(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,az.f)("size-3 rounded-full border",aW[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(aj.r,{onSelect:n,children:[(0,b.jsx)(D.f,{})," ",w("manageTags")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center justify-between gap-1.5 py-0 leading-none",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(B.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("highlight")})]}),(0,b.jsx)(af.K,{"aria-label":w("clearHighlight"),className:"size-6",disabled:!i.highlightColor,onClick:a=>{a.stopPropagation(),ab(null)},size:"icon-sm",variant:"ghost",children:(0,b.jsx)(K.f,{className:"size-3"})})]}),(0,b.jsx)(at.z,{"aria-label":w("highlight"),className:"grid w-full grid-cols-8 gap-1 px-1.5 pb-1",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&ab(a)},size:"sm",spacing:1,type:"single",value:i.highlightColor??"",variant:"outline",children:aM.map(a=>(0,b.jsx)(at.H,{"aria-label":a,className:(0,az.f)("aspect-square h-auto w-full min-w-0 p-0",aW[a],aX[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),!i.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.r,{disabled:$,onSelect:()=>L(!0),variant:"destructive",children:[(0,b.jsx)(K.f,{})," ",w("deleteWorktree")]})]})]})]}),(0,b.jsxs)(ao.T,{align:q,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:w("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:(0,P.f)(i.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(aB.f,{busy:M,onSubmit:a=>ae(a),onSubmitError:a=>{T(i.hasStagedChanges||i.hasUnstagedChanges?a:null)},recovery:S?(0,b.jsx)(ad.J,{children:(0,b.jsxs)(ad.p,{className:"space-y-2",children:[(0,b.jsx)("p",{children:w("stashRetryHelp")}),U&&(0,b.jsx)("p",{className:"text-destructive",children:U}),(0,b.jsxs)(af.K,{disabled:M,onClick:()=>void ag(),size:"sm",type:"button",variant:"outline",children:[M&&(0,b.jsx)(aq.f,{}),w("stashAndRetry")]})]})}):null,submitLabel:w("changeBranch"),target:aZ(a.group,i)})]})]}),G&&(0,b.jsx)(bi,{onOpenChange:H,open:G,props:a,targets:X.filter(b=>bf(b,a.overview))}),C&&(0,b.jsx)(bh,{onOpenChange:F,onReload:a.onReload,open:C,worktree:i}),!i.primary&&J&&(0,b.jsx)(bj,{onOpenChange:L,open:J,props:a})]})}function bh({worktree:a,open:d,onOpenChange:e,onReload:f}){let g=(0,N.f)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!0),[p,q]=(0,c.useState)(new Set),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!1;return(0,aH.I)(a.id).then(a=>{b||(i(a),m(!0===a.commitSigningEnabled),q(new Set(a.changes.filter(a=>a.staged).map(a=>a.path))))}).catch(a=>{b||u(a instanceof Error?a.message:String(a))}),()=>{b=!0}},[a.id]);let v=async()=>{s(!0),u(null);try{let b=await (0,ay.W)(`mutation CommitWorktree($input: CommitWorktreeInput!) {
114
+ }`,{input:{worktreeId:i.id,selection:b,requestId:(0,av.e)(),stashOnFailure:c}});await (0,aI.t)(d.changeWorktreeBranch.id),await a.onReload(),T(null),V(null),y(!1),m(null)}finally{O(!1)}},ag=async()=>{if(S)try{V(null),await ae(S,!0)}catch(a){V(a instanceof Error?a.message:String(a))}},ah=a.group.codebase.defaultBranch,ai=!!(ah&&(d=a.overview,e=a.group.codebase.id,f=i.id,d.agents.some(a=>a.codebases.some(a=>a.codebase.id===e&&a.worktrees.some(a=>a.id!==f&&a.branch===ah))))),ak=!a.branchManagementEnabled||"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress,al=async()=>{if(ah)try{await ae({mode:"EXISTING",branchName:ah,baseBranch:ah})}catch(a){m(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(ao.V,{onOpenChange:a=>{y(a),a||(T(null),V(null))},open:x,children:[(0,b.jsxs)(aj.G,{children:[(0,b.jsx)(aj.X,{asChild:!0,children:(0,b.jsx)(ao.r,{asChild:!0,children:v??(0,b.jsx)(af.K,{"aria-label":w("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(z.f,{})})})}),(0,b.jsxs)(aj.L,{align:q,alignOffset:r,className:"w-72",onCloseAutoFocus:a=>{W.current&&(W.current=!1,a.preventDefault(),y(!0))},children:[(0,b.jsxs)(aj.r,{onSelect:()=>{(0,av.d)(i.folder).catch(a=>m(String(a)))},children:[(0,b.jsx)(o.f,{})," ",w("copyPath")]}),(0,b.jsxs)(aj.r,{disabled:!i.branch,onSelect:()=>{i.branch&&(0,av.d)(i.branch).catch(a=>m(String(a)))},children:[(0,b.jsx)(t.f,{})," ",w("copyBranchName")]}),X.length>0&&(0,b.jsxs)(aj.r,{disabled:!!Y,onSelect:()=>H(!0),title:Y??void 0,children:[(0,b.jsx)(A.f,{})," ",w("moveToAgent")]}),(0,b.jsxs)(aj.r,{disabled:ak,onSelect:()=>{W.current=!0},children:[(0,b.jsx)(t.f,{})," ",w("changeBranch")]}),ah&&!ai&&(0,b.jsxs)(aj.r,{disabled:ak||M||i.branch===ah,onSelect:()=>void al(),children:[M?(0,b.jsx)(aq.f,{}):(0,b.jsx)(t.f,{})," ",w("changeBranchToDefault",{branch:ah})]}),(0,b.jsxs)(aj.r,{disabled:"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress||!Z?.agent.capabilities.includes("worktree.commit")||!i.hasStagedChanges&&!i.hasUnstagedChanges,onSelect:()=>F(!0),children:[(0,b.jsx)(u.f,{})," ",w("commit")]}),"NONE"!==k&&(0,b.jsx)(bo,{icon:(0,b.jsx)(p.f,{}),label:w("CODE_INSIDERS"===k?"openInsiders":"openCode"),operation:"OPEN_EDITOR",disabled:!!a.group.blockingJob,props:{...a,onCompleted:a.onReload}}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/${a.group.codebase.id}`,children:[(0,b.jsx)(p.f,{})," ",w("viewCodebase")]})}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/repositories/${a.group.repository.id}`,children:[(0,b.jsx)(s.f,{})," ",w("viewRepository")]})}),i.branch&&/^github\.com\/[^/]+\/[^/]+$/i.test(a.group.repository.canonicalOrigin)&&(0,b.jsxs)(aj.r,{disabled:Q,onSelect:()=>void ac(),children:[Q?(0,b.jsx)(aq.f,{}):(0,b.jsx)(E.f,{})," ",w("refreshPullRequest")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(I.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("tags")})]}),j.map(a=>(0,b.jsxs)(aj.Q,{checked:_.has(a.id),onCheckedChange:b=>void aa(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,az.f)("size-3 rounded-full border",aW[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(aj.r,{onSelect:n,children:[(0,b.jsx)(D.f,{})," ",w("manageTags")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center justify-between gap-1.5 py-0 leading-none",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(B.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("highlight")})]}),(0,b.jsx)(af.K,{"aria-label":w("clearHighlight"),className:"size-6",disabled:!i.highlightColor,onClick:a=>{a.stopPropagation(),ab(null)},size:"icon-sm",variant:"ghost",children:(0,b.jsx)(K.f,{className:"size-3"})})]}),(0,b.jsx)(at.z,{"aria-label":w("highlight"),className:"grid w-full grid-cols-8 gap-1 px-1.5 pb-1",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&ab(a)},size:"sm",spacing:1,type:"single",value:i.highlightColor??"",variant:"outline",children:aM.map(a=>(0,b.jsx)(at.H,{"aria-label":a,className:(0,az.f)("aspect-square h-auto w-full min-w-0 p-0",aW[a],aX[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),!i.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.r,{disabled:$,onSelect:()=>L(!0),variant:"destructive",children:[(0,b.jsx)(K.f,{})," ",w("deleteWorktree")]})]})]})]}),(0,b.jsxs)(ao.T,{align:q,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:w("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:(0,P.f)(i.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(aB.f,{busy:M,onSubmit:a=>ae(a),onSubmitError:a=>{T(i.hasStagedChanges||i.hasUnstagedChanges?a:null)},recovery:S?(0,b.jsx)(ad.J,{children:(0,b.jsxs)(ad.p,{className:"space-y-2",children:[(0,b.jsx)("p",{children:w("stashRetryHelp")}),U&&(0,b.jsx)("p",{className:"text-destructive",children:U}),(0,b.jsxs)(af.K,{disabled:M,onClick:()=>void ag(),size:"sm",type:"button",variant:"outline",children:[M&&(0,b.jsx)(aq.f,{}),w("stashAndRetry")]})]})}):null,submitLabel:w("changeBranch"),target:aZ(a.group,i)})]})]}),G&&(0,b.jsx)(bi,{onOpenChange:H,open:G,props:a,targets:X.filter(b=>bf(b,a.overview))}),C&&(0,b.jsx)(bh,{onOpenChange:F,onReload:a.onReload,open:C,worktree:i}),!i.primary&&J&&(0,b.jsx)(bj,{onOpenChange:L,open:J,props:a})]})}function bh({worktree:a,open:d,onOpenChange:e,onReload:f}){let g=(0,N.f)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!0),[p,q]=(0,c.useState)(new Set),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!1;return(0,aH.I)(a.id).then(a=>{b||(i(a),m(!0===a.commitSigningEnabled),q(new Set(a.changes.filter(a=>a.staged).map(a=>a.path))))}).catch(a=>{b||u(a instanceof Error?a.message:String(a))}),()=>{b=!0}},[a.id]);let v=async()=>{s(!0),u(null);try{let b=await (0,ay.W)(`mutation CommitWorktree($input: CommitWorktreeInput!) {
115
115
  commitWorktree(input: $input) { id }
116
116
  }`,{input:{worktreeId:a.id,message:j,signed:l,stageAll:n,paths:n?[]:[...p],requestId:(0,av.e)()}});await (0,aI.t)(b.commitWorktree.id),await f(),e(!1)}catch(a){u(a instanceof Error?a.message:String(a))}finally{s(!1)}};return(0,b.jsx)(ai.N,{onOpenChange:e,open:d,children:(0,b.jsxs)(ai.d,{className:"max-h-[min(42rem,calc(100vh-2rem))] overflow-y-auto sm:max-w-lg",children:[(0,b.jsxs)(ai.s,{children:[(0,b.jsx)(ai.F,{children:g("commitTitle")}),(0,b.jsx)(ai.C,{children:g("commitDescription")})]}),(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)(an.f,{htmlFor:"worktree-commit-message",children:g("commitMessage")}),(0,b.jsx)(au.f,{autoFocus:!0,id:"worktree-commit-message",onChange:a=>k(a.target.value),placeholder:g("commitMessagePlaceholder"),rows:4,value:j})]}),(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,b.jsx)(ah.f,{checked:l,onCheckedChange:a=>m(!!a)}),g("signedCommit")]}),(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,b.jsx)(ah.f,{checked:n,onCheckedChange:a=>o(!!a)}),g("stageAll")]}),!n&&h&&(0,b.jsx)("div",{className:"max-h-64 space-y-1 overflow-y-auto rounded-md border p-2",children:h.changes.map(a=>(0,b.jsxs)("label",{className:"flex items-start gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[(0,b.jsx)(ah.f,{checked:p.has(a.path),onCheckedChange:b=>{q(c=>{let d=new Set(c);return b?d.add(a.path):d.delete(a.path),d})}}),(0,b.jsx)("span",{className:"break-all font-mono text-xs",children:a.path})]},a.path))}),!h&&!t&&(0,b.jsx)(aq.f,{}),t&&(0,b.jsx)(ad.J,{variant:"destructive",children:(0,b.jsx)(ad.p,{children:t})})]}),(0,b.jsxs)(ai.c,{children:[(0,b.jsx)(af.K,{disabled:r,onClick:()=>e(!1),variant:"outline",children:g("cancel")}),(0,b.jsxs)(af.K,{disabled:r||!h||!j.trim()||!n&&0===p.size,onClick:()=>void v(),children:[r&&(0,b.jsx)(aq.f,{})," ",g("commit")]})]})]})})}function bi({props:a,targets:d,open:e,onOpenChange:f}){let g=(0,N.f)("worktrees"),h=1===d.length?d[0].group.codebase.id:"",[i,j]=(0,c.useState)(h),[k,l]=(0,c.useState)("__new__"),[m,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(null),u=d.some(a=>a.group.codebase.id===i)?i:1===d.length?d[0].group.codebase.id:"",v=d.find(a=>a.group.codebase.id===u),w=d.map(a=>({value:a.group.codebase.id,label:`${a.agentGroup.agent.name} \xb7 ${a.group.repository.name}`,description:a.group.codebase.folder,keywords:`${a.agentGroup.agent.hostname} ${a.group.repository.displayOrigin}`})),x=v?.group.worktrees.find(a=>a.id===k),y=v?.group.worktrees.find(b=>b.branch===a.worktree.branch),z=!a.worktree.primary&&a.overview.agents.some(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)&&b.agent.capabilities.includes("worktree.delete")),A=async b=>{if("AWAITING_STASH"===b.status){t(b),await a.onReload();return}if("FAILED"===b.status)throw Error(b.error||g("moveFailed"));if("CANCELLED"===b.status)throw Error(g("moveCancelled"));a.onError("SUCCEEDED_WITH_WARNING"===b.status?b.warning:null),await a.onReload(),a.onMoved?.(b),f(!1)},B=async()=>{if(v){p(!0),r(null);try{let b=await (0,ay.W)(`mutation MoveWorktree($input: MoveWorktreeInput!) {
117
117
  moveWorktree(input: $input) {
@@ -111,7 +111,7 @@
111
111
  refreshWorktreePullRequest(id: $id) { ${aG.Y} }
112
112
  }`,{id:i.id});l(a.refreshWorktreePullRequest),m(null)}catch(a){m(a instanceof Error?a.message:String(a))}finally{R(!1)}},ae=async(b,c=!1)=>{O(!0);try{let d=await (0,ay.W)(`mutation ChangeWorktreeBranch($input: ChangeWorktreeBranchInput!) {
113
113
  changeWorktreeBranch(input: $input) { id }
114
- }`,{input:{worktreeId:i.id,selection:b,requestId:(0,av.e)(),stashOnFailure:c}});await (0,aI.t)(d.changeWorktreeBranch.id),await a.onReload(),T(null),V(null),y(!1),m(null)}finally{O(!1)}},ag=async()=>{if(S)try{V(null),await ae(S,!0)}catch(a){V(a instanceof Error?a.message:String(a))}},ah=a.group.codebase.defaultBranch,ai=!!(ah&&(d=a.overview,e=a.group.codebase.id,f=i.id,d.agents.some(a=>a.codebases.some(a=>a.codebase.id===e&&a.worktrees.some(a=>a.id!==f&&a.branch===ah))))),ak=!a.branchManagementEnabled||"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress,al=async()=>{if(ah)try{await ae({mode:"EXISTING",branchName:ah,baseBranch:ah})}catch(a){m(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(ao.V,{onOpenChange:a=>{y(a),a||(T(null),V(null))},open:x,children:[(0,b.jsxs)(aj.G,{children:[(0,b.jsx)(aj.X,{asChild:!0,children:(0,b.jsx)(ao.r,{asChild:!0,children:v??(0,b.jsx)(af.K,{"aria-label":w("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(z.f,{})})})}),(0,b.jsxs)(aj.L,{align:q,alignOffset:r,className:"w-72",onCloseAutoFocus:a=>{W.current&&(W.current=!1,a.preventDefault(),y(!0))},children:[(0,b.jsxs)(aj.r,{onSelect:()=>{(0,av.d)(i.folder).catch(a=>m(String(a)))},children:[(0,b.jsx)(o.f,{})," ",w("copyPath")]}),X.length>0&&(0,b.jsxs)(aj.r,{disabled:!!Y,onSelect:()=>H(!0),title:Y??void 0,children:[(0,b.jsx)(A.f,{})," ",w("moveToAgent")]}),(0,b.jsxs)(aj.r,{disabled:ak,onSelect:()=>{W.current=!0},children:[(0,b.jsx)(t.f,{})," ",w("changeBranch")]}),ah&&!ai&&(0,b.jsxs)(aj.r,{disabled:ak||M||i.branch===ah,onSelect:()=>void al(),children:[M?(0,b.jsx)(aq.f,{}):(0,b.jsx)(t.f,{})," ",w("changeBranchToDefault",{branch:ah})]}),(0,b.jsxs)(aj.r,{disabled:"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress||!Z?.agent.capabilities.includes("worktree.commit")||!i.hasStagedChanges&&!i.hasUnstagedChanges,onSelect:()=>F(!0),children:[(0,b.jsx)(u.f,{})," ",w("commit")]}),"NONE"!==k&&(0,b.jsx)(bo,{icon:(0,b.jsx)(p.f,{}),label:w("CODE_INSIDERS"===k?"openInsiders":"openCode"),operation:"OPEN_EDITOR",disabled:!!a.group.blockingJob,props:{...a,onCompleted:a.onReload}}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/${a.group.codebase.id}`,children:[(0,b.jsx)(p.f,{})," ",w("viewCodebase")]})}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/repositories/${a.group.repository.id}`,children:[(0,b.jsx)(s.f,{})," ",w("viewRepository")]})}),i.branch&&/^github\.com\/[^/]+\/[^/]+$/i.test(a.group.repository.canonicalOrigin)&&(0,b.jsxs)(aj.r,{disabled:Q,onSelect:()=>void ac(),children:[Q?(0,b.jsx)(aq.f,{}):(0,b.jsx)(E.f,{})," ",w("refreshPullRequest")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(I.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("tags")})]}),j.map(a=>(0,b.jsxs)(aj.Q,{checked:_.has(a.id),onCheckedChange:b=>void aa(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,az.f)("size-3 rounded-full border",aW[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(aj.r,{onSelect:n,children:[(0,b.jsx)(D.f,{})," ",w("manageTags")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center justify-between gap-1.5 py-0 leading-none",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(B.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("highlight")})]}),(0,b.jsx)(af.K,{"aria-label":w("clearHighlight"),className:"size-6",disabled:!i.highlightColor,onClick:a=>{a.stopPropagation(),ab(null)},size:"icon-sm",variant:"ghost",children:(0,b.jsx)(K.f,{className:"size-3"})})]}),(0,b.jsx)(at.z,{"aria-label":w("highlight"),className:"grid w-full grid-cols-8 gap-1 px-1.5 pb-1",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&ab(a)},size:"sm",spacing:1,type:"single",value:i.highlightColor??"",variant:"outline",children:aM.map(a=>(0,b.jsx)(at.H,{"aria-label":a,className:(0,az.f)("aspect-square h-auto w-full min-w-0 p-0",aW[a],aX[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),!i.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.r,{disabled:$,onSelect:()=>L(!0),variant:"destructive",children:[(0,b.jsx)(K.f,{})," ",w("deleteWorktree")]})]})]})]}),(0,b.jsxs)(ao.T,{align:q,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:w("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:(0,P.f)(i.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(aB.f,{busy:M,onSubmit:a=>ae(a),onSubmitError:a=>{T(i.hasStagedChanges||i.hasUnstagedChanges?a:null)},recovery:S?(0,b.jsx)(ad.J,{children:(0,b.jsxs)(ad.p,{className:"space-y-2",children:[(0,b.jsx)("p",{children:w("stashRetryHelp")}),U&&(0,b.jsx)("p",{className:"text-destructive",children:U}),(0,b.jsxs)(af.K,{disabled:M,onClick:()=>void ag(),size:"sm",type:"button",variant:"outline",children:[M&&(0,b.jsx)(aq.f,{}),w("stashAndRetry")]})]})}):null,submitLabel:w("changeBranch"),target:aZ(a.group,i)})]})]}),G&&(0,b.jsx)(bi,{onOpenChange:H,open:G,props:a,targets:X.filter(b=>bf(b,a.overview))}),C&&(0,b.jsx)(bh,{onOpenChange:F,onReload:a.onReload,open:C,worktree:i}),!i.primary&&J&&(0,b.jsx)(bj,{onOpenChange:L,open:J,props:a})]})}function bh({worktree:a,open:d,onOpenChange:e,onReload:f}){let g=(0,N.f)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!0),[p,q]=(0,c.useState)(new Set),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!1;return(0,aH.I)(a.id).then(a=>{b||(i(a),m(!0===a.commitSigningEnabled),q(new Set(a.changes.filter(a=>a.staged).map(a=>a.path))))}).catch(a=>{b||u(a instanceof Error?a.message:String(a))}),()=>{b=!0}},[a.id]);let v=async()=>{s(!0),u(null);try{let b=await (0,ay.W)(`mutation CommitWorktree($input: CommitWorktreeInput!) {
114
+ }`,{input:{worktreeId:i.id,selection:b,requestId:(0,av.e)(),stashOnFailure:c}});await (0,aI.t)(d.changeWorktreeBranch.id),await a.onReload(),T(null),V(null),y(!1),m(null)}finally{O(!1)}},ag=async()=>{if(S)try{V(null),await ae(S,!0)}catch(a){V(a instanceof Error?a.message:String(a))}},ah=a.group.codebase.defaultBranch,ai=!!(ah&&(d=a.overview,e=a.group.codebase.id,f=i.id,d.agents.some(a=>a.codebases.some(a=>a.codebase.id===e&&a.worktrees.some(a=>a.id!==f&&a.branch===ah))))),ak=!a.branchManagementEnabled||"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress,al=async()=>{if(ah)try{await ae({mode:"EXISTING",branchName:ah,baseBranch:ah})}catch(a){m(a instanceof Error?a.message:String(a))}};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(ao.V,{onOpenChange:a=>{y(a),a||(T(null),V(null))},open:x,children:[(0,b.jsxs)(aj.G,{children:[(0,b.jsx)(aj.X,{asChild:!0,children:(0,b.jsx)(ao.r,{asChild:!0,children:v??(0,b.jsx)(af.K,{"aria-label":w("customize"),size:"icon-sm",variant:"ghost",children:(0,b.jsx)(z.f,{})})})}),(0,b.jsxs)(aj.L,{align:q,alignOffset:r,className:"w-72",onCloseAutoFocus:a=>{W.current&&(W.current=!1,a.preventDefault(),y(!0))},children:[(0,b.jsxs)(aj.r,{onSelect:()=>{(0,av.d)(i.folder).catch(a=>m(String(a)))},children:[(0,b.jsx)(o.f,{})," ",w("copyPath")]}),(0,b.jsxs)(aj.r,{disabled:!i.branch,onSelect:()=>{i.branch&&(0,av.d)(i.branch).catch(a=>m(String(a)))},children:[(0,b.jsx)(t.f,{})," ",w("copyBranchName")]}),X.length>0&&(0,b.jsxs)(aj.r,{disabled:!!Y,onSelect:()=>H(!0),title:Y??void 0,children:[(0,b.jsx)(A.f,{})," ",w("moveToAgent")]}),(0,b.jsxs)(aj.r,{disabled:ak,onSelect:()=>{W.current=!0},children:[(0,b.jsx)(t.f,{})," ",w("changeBranch")]}),ah&&!ai&&(0,b.jsxs)(aj.r,{disabled:ak||M||i.branch===ah,onSelect:()=>void al(),children:[M?(0,b.jsx)(aq.f,{}):(0,b.jsx)(t.f,{})," ",w("changeBranchToDefault",{branch:ah})]}),(0,b.jsxs)(aj.r,{disabled:"AVAILABLE"!==i.availability||!!a.group.blockingJob||i.rebaseInProgress||!Z?.agent.capabilities.includes("worktree.commit")||!i.hasStagedChanges&&!i.hasUnstagedChanges,onSelect:()=>F(!0),children:[(0,b.jsx)(u.f,{})," ",w("commit")]}),"NONE"!==k&&(0,b.jsx)(bo,{icon:(0,b.jsx)(p.f,{}),label:w("CODE_INSIDERS"===k?"openInsiders":"openCode"),operation:"OPEN_EDITOR",disabled:!!a.group.blockingJob,props:{...a,onCompleted:a.onReload}}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/${a.group.codebase.id}`,children:[(0,b.jsx)(p.f,{})," ",w("viewCodebase")]})}),(0,b.jsx)(aj.r,{asChild:!0,children:(0,b.jsxs)(aA.L,{href:`/dashboard/codebases/repositories/${a.group.repository.id}`,children:[(0,b.jsx)(s.f,{})," ",w("viewRepository")]})}),i.branch&&/^github\.com\/[^/]+\/[^/]+$/i.test(a.group.repository.canonicalOrigin)&&(0,b.jsxs)(aj.r,{disabled:Q,onSelect:()=>void ac(),children:[Q?(0,b.jsx)(aq.f,{}):(0,b.jsx)(E.f,{})," ",w("refreshPullRequest")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center gap-1.5 leading-none",children:[(0,b.jsx)(I.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("tags")})]}),j.map(a=>(0,b.jsxs)(aj.Q,{checked:_.has(a.id),onCheckedChange:b=>void aa(a.id,!!b),children:[(0,b.jsx)("span",{className:(0,az.f)("size-3 rounded-full border",aW[a.color])})," ",a.name]},a.id)),(0,b.jsxs)(aj.r,{onSelect:n,children:[(0,b.jsx)(D.f,{})," ",w("manageTags")]}),(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.B,{className:"flex items-center justify-between gap-1.5 py-0 leading-none",children:[(0,b.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,b.jsx)(B.f,{className:"size-3"}),(0,b.jsx)("span",{children:w("highlight")})]}),(0,b.jsx)(af.K,{"aria-label":w("clearHighlight"),className:"size-6",disabled:!i.highlightColor,onClick:a=>{a.stopPropagation(),ab(null)},size:"icon-sm",variant:"ghost",children:(0,b.jsx)(K.f,{className:"size-3"})})]}),(0,b.jsx)(at.z,{"aria-label":w("highlight"),className:"grid w-full grid-cols-8 gap-1 px-1.5 pb-1",onClick:a=>a.stopPropagation(),onValueChange:a=>{a&&ab(a)},size:"sm",spacing:1,type:"single",value:i.highlightColor??"",variant:"outline",children:aM.map(a=>(0,b.jsx)(at.H,{"aria-label":a,className:(0,az.f)("aspect-square h-auto w-full min-w-0 p-0",aW[a],aX[a],"data-[state=on]:ring-2 data-[state=on]:ring-foreground"),value:a},a))}),!i.primary&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.U,{}),(0,b.jsxs)(aj.r,{disabled:$,onSelect:()=>L(!0),variant:"destructive",children:[(0,b.jsx)(K.f,{})," ",w("deleteWorktree")]})]})]})]}),(0,b.jsxs)(ao.T,{align:q,className:"z-60 w-[min(28rem,calc(100vw-2rem))]",children:[(0,b.jsxs)("div",{className:"mb-4",children:[(0,b.jsx)("h3",{className:"font-semibold",children:w("changeBranch")}),(0,b.jsx)("p",{className:"mt-1 truncate font-mono text-xs text-muted-foreground",children:(0,P.f)(i.folder,a.baseRepoDirectory)})]}),(0,b.jsx)(aB.f,{busy:M,onSubmit:a=>ae(a),onSubmitError:a=>{T(i.hasStagedChanges||i.hasUnstagedChanges?a:null)},recovery:S?(0,b.jsx)(ad.J,{children:(0,b.jsxs)(ad.p,{className:"space-y-2",children:[(0,b.jsx)("p",{children:w("stashRetryHelp")}),U&&(0,b.jsx)("p",{className:"text-destructive",children:U}),(0,b.jsxs)(af.K,{disabled:M,onClick:()=>void ag(),size:"sm",type:"button",variant:"outline",children:[M&&(0,b.jsx)(aq.f,{}),w("stashAndRetry")]})]})}):null,submitLabel:w("changeBranch"),target:aZ(a.group,i)})]})]}),G&&(0,b.jsx)(bi,{onOpenChange:H,open:G,props:a,targets:X.filter(b=>bf(b,a.overview))}),C&&(0,b.jsx)(bh,{onOpenChange:F,onReload:a.onReload,open:C,worktree:i}),!i.primary&&J&&(0,b.jsx)(bj,{onOpenChange:L,open:J,props:a})]})}function bh({worktree:a,open:d,onOpenChange:e,onReload:f}){let g=(0,N.f)("worktrees"),[h,i]=(0,c.useState)(null),[j,k]=(0,c.useState)(""),[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(!0),[p,q]=(0,c.useState)(new Set),[r,s]=(0,c.useState)(!1),[t,u]=(0,c.useState)(null);(0,c.useEffect)(()=>{let b=!1;return(0,aH.I)(a.id).then(a=>{b||(i(a),m(!0===a.commitSigningEnabled),q(new Set(a.changes.filter(a=>a.staged).map(a=>a.path))))}).catch(a=>{b||u(a instanceof Error?a.message:String(a))}),()=>{b=!0}},[a.id]);let v=async()=>{s(!0),u(null);try{let b=await (0,ay.W)(`mutation CommitWorktree($input: CommitWorktreeInput!) {
115
115
  commitWorktree(input: $input) { id }
116
116
  }`,{input:{worktreeId:a.id,message:j,signed:l,stageAll:n,paths:n?[]:[...p],requestId:(0,av.e)()}});await (0,aI.t)(b.commitWorktree.id),await f(),e(!1)}catch(a){u(a instanceof Error?a.message:String(a))}finally{s(!1)}};return(0,b.jsx)(ai.N,{onOpenChange:e,open:d,children:(0,b.jsxs)(ai.d,{className:"max-h-[min(42rem,calc(100vh-2rem))] overflow-y-auto sm:max-w-lg",children:[(0,b.jsxs)(ai.s,{children:[(0,b.jsx)(ai.F,{children:g("commitTitle")}),(0,b.jsx)(ai.C,{children:g("commitDescription")})]}),(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-1.5",children:[(0,b.jsx)(an.f,{htmlFor:"worktree-commit-message",children:g("commitMessage")}),(0,b.jsx)(au.f,{autoFocus:!0,id:"worktree-commit-message",onChange:a=>k(a.target.value),placeholder:g("commitMessagePlaceholder"),rows:4,value:j})]}),(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,b.jsx)(ah.f,{checked:l,onCheckedChange:a=>m(!!a)}),g("signedCommit")]}),(0,b.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,b.jsx)(ah.f,{checked:n,onCheckedChange:a=>o(!!a)}),g("stageAll")]}),!n&&h&&(0,b.jsx)("div",{className:"max-h-64 space-y-1 overflow-y-auto rounded-md border p-2",children:h.changes.map(a=>(0,b.jsxs)("label",{className:"flex items-start gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[(0,b.jsx)(ah.f,{checked:p.has(a.path),onCheckedChange:b=>{q(c=>{let d=new Set(c);return b?d.add(a.path):d.delete(a.path),d})}}),(0,b.jsx)("span",{className:"break-all font-mono text-xs",children:a.path})]},a.path))}),!h&&!t&&(0,b.jsx)(aq.f,{}),t&&(0,b.jsx)(ad.J,{variant:"destructive",children:(0,b.jsx)(ad.p,{children:t})})]}),(0,b.jsxs)(ai.c,{children:[(0,b.jsx)(af.K,{disabled:r,onClick:()=>e(!1),variant:"outline",children:g("cancel")}),(0,b.jsxs)(af.K,{disabled:r||!h||!j.trim()||!n&&0===p.size,onClick:()=>void v(),children:[r&&(0,b.jsx)(aq.f,{})," ",g("commit")]})]})]})})}function bi({props:a,targets:d,open:e,onOpenChange:f}){let g=(0,N.f)("worktrees"),h=1===d.length?d[0].group.codebase.id:"",[i,j]=(0,c.useState)(h),[k,l]=(0,c.useState)("__new__"),[m,n]=(0,c.useState)(!1),[o,p]=(0,c.useState)(!1),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(null),u=d.some(a=>a.group.codebase.id===i)?i:1===d.length?d[0].group.codebase.id:"",v=d.find(a=>a.group.codebase.id===u),w=d.map(a=>({value:a.group.codebase.id,label:`${a.agentGroup.agent.name} \xb7 ${a.group.repository.name}`,description:a.group.codebase.folder,keywords:`${a.agentGroup.agent.hostname} ${a.group.repository.displayOrigin}`})),x=v?.group.worktrees.find(a=>a.id===k),y=v?.group.worktrees.find(b=>b.branch===a.worktree.branch),z=!a.worktree.primary&&a.overview.agents.some(b=>b.codebases.some(b=>b.codebase.id===a.group.codebase.id)&&b.agent.capabilities.includes("worktree.delete")),A=async b=>{if("AWAITING_STASH"===b.status){t(b),await a.onReload();return}if("FAILED"===b.status)throw Error(b.error||g("moveFailed"));if("CANCELLED"===b.status)throw Error(g("moveCancelled"));a.onError("SUCCEEDED_WITH_WARNING"===b.status?b.warning:null),await a.onReload(),a.onMoved?.(b),f(!1)},B=async()=>{if(v){p(!0),r(null);try{let b=await (0,ay.W)(`mutation MoveWorktree($input: MoveWorktreeInput!) {
117
117
  moveWorktree(input: $input) {