ryco-cli 0.1.28 → 0.1.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. package/README.md +37 -0
  2. package/dist/{AcpAdapter-CG1wRWcf.mjs → AcpAdapter-CKWzfB3Q.mjs} +4 -4
  3. package/dist/{AcpAdapter-8CSe4HK7.cjs → AcpAdapter-DjP0IHpH.cjs} +6 -6
  4. package/dist/{AcpNativeLogging-DbjnRnTf.cjs → AcpNativeLogging-5gTPK9Fq.cjs} +1 -1
  5. package/dist/{AcpNativeLogging-B6TtnnKL.mjs → AcpNativeLogging-Do0LktDb.mjs} +1 -1
  6. package/dist/{AcpRegistryDriver-16ZTxUs3.cjs → AcpRegistryDriver-BblCFfev.cjs} +3 -3
  7. package/dist/{AcpRegistryDriver-DZFasKaz.mjs → AcpRegistryDriver-BzohT-PC.mjs} +3 -3
  8. package/dist/{AzureDevOpsSourceControlProvider-DmJD1-WL.cjs → AzureDevOpsSourceControlProvider-CKSvfuDS.cjs} +1 -1
  9. package/dist/{AzureDevOpsSourceControlProvider-d5Ogsspk.mjs → AzureDevOpsSourceControlProvider-DRWSXTml.mjs} +1 -1
  10. package/dist/{BitbucketSourceControlProvider-B-ZwKj72.cjs → BitbucketSourceControlProvider-Bvl_q1o2.cjs} +1 -1
  11. package/dist/{BitbucketSourceControlProvider-DplKc8Wo.mjs → BitbucketSourceControlProvider-D5UVAc9z.mjs} +1 -1
  12. package/dist/{ClaudeDriver-0gGVop27.mjs → ClaudeDriver-BuQ_azDw.mjs} +7 -7
  13. package/dist/{ClaudeDriver-r0lJ9vmE.cjs → ClaudeDriver-DZkz0QPr.cjs} +8 -8
  14. package/dist/{CodexDriver-bJAbhSwY.cjs → CodexDriver-6Ph2cjAW.cjs} +5 -5
  15. package/dist/{CodexDriver-baT02xVb.mjs → CodexDriver-Bi49RIL4.mjs} +4 -4
  16. package/dist/{CodexTextGeneration-Dwp6X3dq.mjs → CodexTextGeneration-C5TIspJA.mjs} +4 -4
  17. package/dist/{CodexTextGeneration-DFZ5y4gj.cjs → CodexTextGeneration-sXPR9eld.cjs} +4 -4
  18. package/dist/{CopilotDriver-C0OhnSB1.mjs → CopilotDriver-Bcdpz6U_.mjs} +5 -5
  19. package/dist/{CopilotDriver-B_jEqfYQ.cjs → CopilotDriver-D6P0xgRX.cjs} +5 -5
  20. package/dist/{CursorDriver-DinXkGP9.mjs → CursorDriver-CRnDGwEv.mjs} +6 -6
  21. package/dist/{CursorDriver-BBFEW7ZI.cjs → CursorDriver-DMJ7sGSx.cjs} +7 -7
  22. package/dist/{ForgejoSourceControlProvider-iG9o7aZB.cjs → ForgejoSourceControlProvider-D4jGdaJX.cjs} +1 -1
  23. package/dist/{ForgejoSourceControlProvider-Dr0fxfud.mjs → ForgejoSourceControlProvider-Dl_Fk3RY.mjs} +1 -1
  24. package/dist/{GitHubSourceControlProvider-CnIu0n2Y.mjs → GitHubSourceControlProvider-DnwKf0ap.mjs} +1 -1
  25. package/dist/{GitHubSourceControlProvider-L1yFpep4.cjs → GitHubSourceControlProvider-QMe-zymI.cjs} +1 -1
  26. package/dist/{GitLabSourceControlProvider-BZdwXdJl.mjs → GitLabSourceControlProvider-Cj07OTBD.mjs} +1 -1
  27. package/dist/{GitLabSourceControlProvider-CrcBR6KQ.cjs → GitLabSourceControlProvider-CvvN5pHt.cjs} +1 -1
  28. package/dist/{GrokDriver-pX-N6HGS.mjs → GrokDriver-Bvq1jP3S.mjs} +7 -7
  29. package/dist/{GrokDriver-D_Ylzh5z.cjs → GrokDriver-jy8JIvYY.cjs} +10 -10
  30. package/dist/{Metrics-Bf96NJ4j.cjs → Metrics-C0LSU8s7.cjs} +979 -976
  31. package/dist/{Metrics-BjqGlIP4.mjs → Metrics-CnmjpbWk.mjs} +979 -976
  32. package/dist/{NodeSqliteClient-BGg70C7Q.cjs → NodeSqliteClient-D8bzGgPN.cjs} +1 -1
  33. package/dist/{OpenCodeDriver-BFEw5t09.cjs → OpenCodeDriver-Bu5D19tl.cjs} +6 -6
  34. package/dist/{OpenCodeDriver-Byu1pf_i.mjs → OpenCodeDriver-DhyVaBMT.mjs} +5 -5
  35. package/dist/{SideQuestionIsolation-81IoAuoi.mjs → SideQuestionIsolation-B-aE6aBz.mjs} +1 -1
  36. package/dist/{SideQuestionIsolation-CMPkCUP0.cjs → SideQuestionIsolation-CtJ4wX83.cjs} +1 -1
  37. package/dist/bin.cjs +8580 -305
  38. package/dist/bin.mjs +8560 -268
  39. package/dist/client/assets/{AccountSettings-DF6okodO.js → AccountSettings-v6-r6gYl.js} +1 -1
  40. package/dist/client/assets/{AiFocusSettings-BNNr6MW3.js → AiFocusSettings-BVdLON0q.js} +1 -1
  41. package/dist/client/assets/{AnimatedHeight-q2A-ikJ5.js → AnimatedHeight-UXn4-nUd.js} +1 -1
  42. package/dist/client/assets/{AppearanceSettings-BD0MZkm7.js → AppearanceSettings-DRChsQnN.js} +1 -1
  43. package/dist/client/assets/{BranchToolbar.logic-DN0He2gp.js → BranchToolbar.logic-YN3KjVr9.js} +1 -1
  44. package/dist/client/assets/{BrowserPanel-C_ddyv_7.js → BrowserPanel-Dxw3stFP.js} +1 -1
  45. package/dist/client/assets/{ChatRightPanel-B62ml3EW.js → ChatRightPanel-CygpcJiF.js} +5 -5
  46. package/dist/client/assets/{ChatThreadRouteView-BnvzR19h.js → ChatThreadRouteView-DYLZFHu0.js} +1 -1
  47. package/dist/client/assets/{CommandPaletteDialog-KtIlImWg.js → CommandPaletteDialog-BRvBzP1R.js} +1 -1
  48. package/dist/client/assets/{CompositeRoot-CTspN_gA.js → CompositeRoot-BeEGGWwn.js} +1 -1
  49. package/dist/client/assets/{ComputerUseSettings-B4KnZnFy.js → ComputerUseSettings-Cq8Pi0ZU.js} +1 -1
  50. package/dist/client/assets/{ConnectionsSettings-BW1hWm-b.js → ConnectionsSettings-RSYtexxd.js} +2 -2
  51. package/dist/client/assets/{ContextHandoffEndpointLabel-BCNMjnEV.js → ContextHandoffEndpointLabel-CeGDLNA4.js} +1 -1
  52. package/dist/client/assets/{DiagnosticsSettings-Biqth29E.js → DiagnosticsSettings-CDa6MVx4.js} +1 -1
  53. package/dist/client/assets/{DialogHandle-B1kG1DEu.js → DialogHandle-BE7egDQQ.js} +1 -1
  54. package/dist/client/assets/{DialogPopup-CZ-twaqA.js → DialogPopup-NfwDyR5c.js} +1 -1
  55. package/dist/client/assets/DialogRoot-C4mtzigX.js +1 -0
  56. package/dist/client/assets/{DialogTitle-D8Vib3Xi.js → DialogTitle-B_Q4DykI.js} +1 -1
  57. package/dist/client/assets/{DialogTrigger-C8WNfJfY.js → DialogTrigger-BSqd4Crj.js} +1 -1
  58. package/dist/client/assets/{DialogViewport-BzuRIust.js → DialogViewport-B6w_ROOE.js} +1 -1
  59. package/dist/client/assets/{DraftChatThreadRouteView-Bf196For.js → DraftChatThreadRouteView-JW_bXVrM.js} +1 -1
  60. package/dist/client/assets/{ExternalIdentityWeb.logic-DsTJQkg-.js → ExternalIdentityWeb.logic-BlKX8J9h.js} +1 -1
  61. package/dist/client/assets/{GlassSurface-R5jo7uZp.js → GlassSurface-DDG4eTlj.js} +1 -1
  62. package/dist/client/assets/{HostedConnectionControls-xi9LAlqs.js → HostedConnectionControls-CscV6hm1.js} +1 -1
  63. package/dist/client/assets/{HostedHubRoot-B5cJPL0b.js → HostedHubRoot-gp7-ClBP.js} +1 -1
  64. package/dist/client/assets/{HostedNativeAuthorizationRoute-BPxYI2S8.js → HostedNativeAuthorizationRoute-j7oSlakZ.js} +1 -1
  65. package/dist/client/assets/{HostedNodeRenameDialog-CZ6B6eOA.js → HostedNodeRenameDialog-D1DSiTpx.js} +1 -1
  66. package/dist/client/assets/{HostedRelayTrustNotice-Da0fanPZ.js → HostedRelayTrustNotice-B9jp4SRh.js} +1 -1
  67. package/dist/client/assets/{IntegrationsSettingsPanel-CVIFEYar.js → IntegrationsSettingsPanel-DH7SfWtV.js} +1 -1
  68. package/dist/client/assets/{KeybindingsSettings-FJVISTz3.js → KeybindingsSettings-DkgYYSHS.js} +1 -1
  69. package/dist/client/assets/{LazyBrowserPanel-ChCZntfd.js → LazyBrowserPanel-D4e76vc_.js} +1 -1
  70. package/dist/client/assets/{McpServersSettings-D5qSFad1.js → McpServersSettings-Dc1kPa-X.js} +1 -1
  71. package/dist/client/assets/{MobileSheet-BZwVUjae.js → MobileSheet-lT--mLEz.js} +1 -1
  72. package/dist/client/assets/{NodeSecuritySettings-C9eJS4Wt.js → NodeSecuritySettings-DcfSx4KT.js} +1 -1
  73. package/dist/client/assets/{NullStore-iCZTvdl5.js → NullStore-8d2s-Re3.js} +1 -1
  74. package/dist/client/assets/{OnboardingDialog-lWnlzsHQ.js → OnboardingDialog-CnLjwM6Z.js} +1 -1
  75. package/dist/client/assets/{OpinionatedPluginsSettings-DQ77FhYa.js → OpinionatedPluginsSettings-BTJyS3rN.js} +1 -1
  76. package/dist/client/assets/{PdfAttachmentPreview-CmCBedSk.js → PdfAttachmentPreview-C8-hT8KQ.js} +1 -1
  77. package/dist/client/assets/{PhoneGetAppInterstitial-DU7Pjbrv.js → PhoneGetAppInterstitial-Zh0zpBgT.js} +1 -1
  78. package/dist/client/assets/{PhoneHome-D91zzTlE.js → PhoneHome-CIMkuDJF.js} +1 -1
  79. package/dist/client/assets/{PhoneSettingsSurface-vyuCLVtH.js → PhoneSettingsSurface-CfZQxJNI.js} +1 -1
  80. package/dist/client/assets/{ProvidersSettingsPanel-QMtod_bc.js → ProvidersSettingsPanel-DAVSiwE1.js} +1 -1
  81. package/dist/client/assets/{QuitShortcutFeedback-Bti16E53.js → QuitShortcutFeedback-Qs9XsuZ4.js} +1 -1
  82. package/dist/client/assets/{RedactedSensitiveText-9r8QC1lJ.js → RedactedSensitiveText-BHGbQJwB.js} +1 -1
  83. package/dist/client/assets/{RootAppShell-CYT2IfYW.js → RootAppShell-T056pByH.js} +2 -2
  84. package/dist/client/assets/{Separator-ClXl-hQH.js → Separator-B6Esv57Y.js} +1 -1
  85. package/dist/client/assets/{SettingsDialog-BUcF48F9.js → SettingsDialog-BERU2Qg7.js} +1 -1
  86. package/dist/client/assets/{SettingsPanels-BydjDF1I.js → SettingsPanels-De_XZOQF.js} +1 -1
  87. package/dist/client/assets/{SettingsPanels.editor-zrq4ZT2j.js → SettingsPanels.editor-Dkva9gX_.js} +1 -1
  88. package/dist/client/assets/{SourceControlSettings-CqVmc4sB.js → SourceControlSettings-B4HS17cB.js} +1 -1
  89. package/dist/client/assets/{StatisticsPage-k-gimGKE.js → StatisticsPage-Bj2ftFdH.js} +1 -1
  90. package/dist/client/assets/{StatisticsPanel-CtShfsl4.js → StatisticsPanel-Dw7GBBmd.js} +1 -1
  91. package/dist/client/assets/{StatisticsSettingsLink-BapVo9aC.js → StatisticsSettingsLink-_XL3ABoI.js} +1 -1
  92. package/dist/client/assets/{ThreadTerminalDrawer-Bfs5NCNv.js → ThreadTerminalDrawer-CPPzQSXN.js} +1 -1
  93. package/dist/client/assets/{ThreadWorkspacePanel-L6uNQRNX.js → ThreadWorkspacePanel-DWKU7Omm.js} +1 -1
  94. package/dist/client/assets/{abnfDiagram-N423BO3Z-BzwwixLv.js → abnfDiagram-N423BO3Z-ByEe3mC0.js} +1 -1
  95. package/dist/client/assets/{activity-CPE_7Kqw.js → activity-CwTUF6lv.js} +1 -1
  96. package/dist/client/assets/{alert-DVbwtykC.js → alert-DQEkrtUJ.js} +1 -1
  97. package/dist/client/assets/{appChrome-B_VWWDFj.js → appChrome-TkWLAGxk.js} +1 -1
  98. package/dist/client/assets/architecture-7GRP2DOG-HS59zfrk.js +1 -0
  99. package/dist/client/assets/{architectureDiagram-T3A2C74G-DEiVciWZ.js → architectureDiagram-T3A2C74G-Bd-yxaTr.js} +1 -1
  100. package/dist/client/assets/{arrow-left-Ce-aUiy1.js → arrow-left-DUOpzEbP.js} +1 -1
  101. package/dist/client/assets/{arrow-right-BEwkAmxp.js → arrow-right-HOYJnPKw.js} +1 -1
  102. package/dist/client/assets/{arrow-up-right-CLCNhOeC.js → arrow-up-right-DHnMKuVA.js} +1 -1
  103. package/dist/client/assets/{authorization-BugIGt5e.js → authorization-D8dOcEYq.js} +1 -1
  104. package/dist/client/assets/{badge-DqZmJa1g.js → badge-2AZ3HfVS.js} +1 -1
  105. package/dist/client/assets/{blockDiagram-VBNYF7ZC-C-PBzm5g.js → blockDiagram-VBNYF7ZC-CPDBonMC.js} +1 -1
  106. package/dist/client/assets/{bot-k1yDQ5mQ.js → bot-DxjPA7Bw.js} +1 -1
  107. package/dist/client/assets/{c4Diagram-5PPSVZJV-DB6SIv2V.js → c4Diagram-5PPSVZJV-BM6pAiqT.js} +1 -1
  108. package/dist/client/assets/{capabilities-C9OPiefV.js → capabilities-CsHjxjab.js} +1 -1
  109. package/dist/client/assets/channel-Dn3_cOkm.js +1 -0
  110. package/dist/client/assets/{chart-column-CVU4MshQ.js → chart-column-Cg7d41tb.js} +1 -1
  111. package/dist/client/assets/chevron-right-Dsw16yGn.js +1 -0
  112. package/dist/client/assets/{chunk-2GRJ4B5K-CFM4Ac_N.js → chunk-2GRJ4B5K-DVKozJ41.js} +1 -1
  113. package/dist/client/assets/{chunk-4I5QYGJK-a9tLNjnj.js → chunk-4I5QYGJK-BRoMwPkW.js} +1 -1
  114. package/dist/client/assets/{chunk-5RXB4S5H-CbEb4Ht8.js → chunk-5RXB4S5H-DFMKyoqP.js} +1 -1
  115. package/dist/client/assets/{chunk-6Q2QTUOP-DPUmSmhc.js → chunk-6Q2QTUOP-Ba6UENe9.js} +1 -1
  116. package/dist/client/assets/{chunk-7Z6QIM7H-Ba8d__CQ.js → chunk-7Z6QIM7H-B87gYLWH.js} +1 -1
  117. package/dist/client/assets/{chunk-GF5L2VYU-BKOdlQ2f.js → chunk-GF5L2VYU-DZ840GRQ.js} +1 -1
  118. package/dist/client/assets/{chunk-I66GZJ75-DAfCveu2.js → chunk-I66GZJ75-BO6p4Aqg.js} +1 -1
  119. package/dist/client/assets/{chunk-JQJVKLGR-CPzgDuD8.js → chunk-JQJVKLGR-5dTfVinz.js} +1 -1
  120. package/dist/client/assets/{chunk-KBJHAD2P-X87J_pHD.js → chunk-KBJHAD2P-BeWfBZdP.js} +1 -1
  121. package/dist/client/assets/{chunk-NSK5VX7P-BgrjQWAz.js → chunk-NSK5VX7P-DuRkdn5k.js} +1 -1
  122. package/dist/client/assets/{chunk-QR6OTTB3-NTX__XXO.js → chunk-QR6OTTB3-Duz4Y_uE.js} +1 -1
  123. package/dist/client/assets/{chunk-UBXNYLIW-BVySE3ty.js → chunk-UBXNYLIW-D-z8URgN.js} +1 -1
  124. package/dist/client/assets/{chunk-W5SLKNZC-0-ctjkBJ.js → chunk-W5SLKNZC-AGjFjjoJ.js} +1 -1
  125. package/dist/client/assets/{chunk-WRU74C26-AGGo_1S7.js → chunk-WRU74C26-BgY3UiXB.js} +1 -1
  126. package/dist/client/assets/classDiagram-JCYQIIEL-ZQvrS8No.js +1 -0
  127. package/dist/client/assets/classDiagram-v2-OCEON4UE-ZQvrS8No.js +1 -0
  128. package/dist/client/assets/{clipboard-copy-C3icJCGA.js → clipboard-copy-BWf3JuTE.js} +1 -1
  129. package/dist/client/assets/{cynefin-OW5HDTMX-BR32cltb.js → cynefin-OW5HDTMX-BuOAGqlK.js} +1 -1
  130. package/dist/client/assets/{cynefinDiagram-MW4NZA55-B7S5bXUw.js → cynefinDiagram-MW4NZA55-DqV0Aokp.js} +1 -1
  131. package/dist/client/assets/{dagre-VZM6K2ZE-BZOfZvme.js → dagre-VZM6K2ZE-D_GFquDW.js} +1 -1
  132. package/dist/client/assets/{data-list-E_dNBqgV.js → data-list-BJCq3CVP.js} +1 -1
  133. package/dist/client/assets/{desktopWorkspace-DIoIhyml.js → desktopWorkspace-_iM6B9Kf.js} +1 -1
  134. package/dist/client/assets/{deviceName-BY2WK012.js → deviceName-C2N8ZRX3.js} +1 -1
  135. package/dist/client/assets/{diagram-7IWD3JNH-CypfFHxI.js → diagram-7IWD3JNH-B1wlsNg2.js} +1 -1
  136. package/dist/client/assets/{diagram-B4RE2ZJO-CaYsJtDz.js → diagram-B4RE2ZJO-D-CYoym7.js} +1 -1
  137. package/dist/client/assets/{diagram-LBJQPF4R-BdhZtcd2.js → diagram-LBJQPF4R-DqJ9NCqt.js} +1 -1
  138. package/dist/client/assets/{diagram-Q27KOJAE-CW1SMIBy.js → diagram-Q27KOJAE-3yp1D2u4.js} +1 -1
  139. package/dist/client/assets/{diagram-UB23O5K3-Cq8GGDkV.js → diagram-UB23O5K3-Byp25nGC.js} +1 -1
  140. package/dist/client/assets/{download-Fq1MsYfI.js → download-DsYNYJeu.js} +1 -1
  141. package/dist/client/assets/{ebnfDiagram-BXEA7PRR-CE78Op8p.js → ebnfDiagram-BXEA7PRR-B_IM1l6o.js} +1 -1
  142. package/dist/client/assets/{editorPreferences-DzxKMQJx.js → editorPreferences-D8q1ItMW.js} +1 -1
  143. package/dist/client/assets/{empty-DXTz-nBL.js → empty-BbJHvskr.js} +1 -1
  144. package/dist/client/assets/{erDiagram-JOGREHBK-Bn6BFae6.js → erDiagram-JOGREHBK--OtcrCRJ.js} +1 -1
  145. package/dist/client/assets/eventmodeling-NTZA5JFV-Dj71kuPV.js +1 -0
  146. package/dist/client/assets/flowDiagram-UKHOOZJN-BaAiwuvL.js +1 -0
  147. package/dist/client/assets/{ganttDiagram-PKOTCBZU-C8NbmUQP.js → ganttDiagram-PKOTCBZU-w0seBi3Q.js} +1 -1
  148. package/dist/client/assets/{gitGraph-4MIJSDKK-Dg7W2mOf.js → gitGraph-4MIJSDKK-BOJ0lcSW.js} +1 -1
  149. package/dist/client/assets/{gitGraphDiagram-DS77QQ5N-XEC1jydW.js → gitGraphDiagram-DS77QQ5N-BMfOCCYn.js} +1 -1
  150. package/dist/client/assets/{group-CcSMHbpZ.js → group-tVMKGp7Q.js} +1 -1
  151. package/dist/client/assets/{hostedConnectionCoordinator-BkxMXc2s.js → hostedConnectionCoordinator-BuRWCvUG.js} +1 -1
  152. package/dist/client/assets/hostedPairing-5n5srRC9.js +1 -0
  153. package/dist/client/assets/{hubRoutes-Ch__ge2L.js → hubRoutes-jcMPIFy3.js} +1 -1
  154. package/dist/client/assets/{index-3zoAo5bo.js → index-BqZvnGNr.js} +1 -1
  155. package/dist/client/assets/{info-A6RAGUB7-CPN5xH7s.js → info-A6RAGUB7-acjBTQ5o.js} +1 -1
  156. package/dist/client/assets/{infoDiagram-6WML65LV-DbXXnE3-.js → infoDiagram-6WML65LV-DB01Nc2m.js} +1 -1
  157. package/dist/client/assets/{input-zI-YDU9i.js → input-BDWSVClC.js} +1 -1
  158. package/dist/client/assets/{ishikawaDiagram-WSZJBQD7-DAjJrXWe.js → ishikawaDiagram-WSZJBQD7-KhZTvm-J.js} +1 -1
  159. package/dist/client/assets/{journeyDiagram-NVQOT4AX-CaGm-K-C.js → journeyDiagram-NVQOT4AX-C3JCYk-2.js} +1 -1
  160. package/dist/client/assets/{kanban-definition-27J2QSJJ-C2YRqY28.js → kanban-definition-27J2QSJJ-Dbo0C1s6.js} +1 -1
  161. package/dist/client/assets/{kbd-DlXUKjl1.js → kbd-Dxm5Elqj.js} +1 -1
  162. package/dist/client/assets/{key-round-DLUapaUr.js → key-round-CETZqe3h.js} +1 -1
  163. package/dist/client/assets/{layers-3D4z3mrk.js → layers-Dqez1Uq8.js} +1 -1
  164. package/dist/client/assets/{log-out-BxEBqpSs.js → log-out-D5-aSBAz.js} +1 -1
  165. package/dist/client/assets/{logging-C6tXZlGQ.js → logging-B_qXVrk6.js} +1 -1
  166. package/dist/client/assets/{main-DsnAjTqg.js → main-DAbEANjY.js} +2 -2
  167. package/dist/client/assets/{mermaid-parser.core-Dhd66igk.js → mermaid-parser.core-B6Q-3x_q.js} +2 -2
  168. package/dist/client/assets/{mermaidEngine-3NZnIFOn.js → mermaidEngine-DksLcesB.js} +3 -3
  169. package/dist/client/assets/{mindmap-definition-FAOFIHXS-SuO77jBW.js → mindmap-definition-FAOFIHXS-LaMzRxqw.js} +1 -1
  170. package/dist/client/assets/{motion-B4mmVewo.js → motion-BdscFixQ.js} +1 -1
  171. package/dist/client/assets/{packet-AYTQ26CC-BZwkWo3N.js → packet-AYTQ26CC-BHhg59Si.js} +1 -1
  172. package/dist/client/assets/{pairingUrl-rQM9kSGT.js → pairingUrl-Dn1e2CVw.js} +1 -1
  173. package/dist/client/assets/{palette-BXA2I3bI.js → palette-92ylWqeC.js} +1 -1
  174. package/dist/client/assets/{pegDiagram-VL7TDLO6-DgWypDaQ.js → pegDiagram-VL7TDLO6-s7l7UD9d.js} +1 -1
  175. package/dist/client/assets/{pie-WAS4IAKB-C1iJ73d9.js → pie-WAS4IAKB-DygX31Z9.js} +1 -1
  176. package/dist/client/assets/{pieDiagram-7S7Q4E2Y-DK1OTG7x.js → pieDiagram-7S7Q4E2Y-bb6I9TtZ.js} +1 -1
  177. package/dist/client/assets/{play-CJNYRuck.js → play-DUvOxTpL.js} +1 -1
  178. package/dist/client/assets/{primary-CQh_KHGG.js → primary-DZjgHvyf.js} +3 -3
  179. package/dist/client/assets/{providerDriverMeta-DJ9TrG26.js → providerDriverMeta-T2YbXzuS.js} +1 -1
  180. package/dist/client/assets/{qr-code-CBzdIN1G.js → qr-code-D4CtBq2F.js} +1 -1
  181. package/dist/client/assets/{qr-code-HMr6crTy.js → qr-code-dbkTo07n.js} +1 -1
  182. package/dist/client/assets/{quadrantDiagram-CIZ2JOQS-CIgZ3afX.js → quadrantDiagram-CIZ2JOQS-Cj1Y68ZF.js} +1 -1
  183. package/dist/client/assets/{radar-RG4KPBEZ-vq15KQ2S.js → radar-RG4KPBEZ-FHM3ftPp.js} +1 -1
  184. package/dist/client/assets/{radio-group-1yuMmVHi.js → radio-group-CRnHYWa8.js} +1 -1
  185. package/dist/client/assets/{railroad-74A4TZTK-DWMARNIs.js → railroad-74A4TZTK-CPMn18Cm.js} +1 -1
  186. package/dist/client/assets/railroad-abnf-HS5TGJTU-DxU7Mt1k.js +1 -0
  187. package/dist/client/assets/railroad-ebnf-LZEXJU2U-BYAPVjRd.js +1 -0
  188. package/dist/client/assets/railroad-peg-WCYAUIDC-BOqgR_X7.js +1 -0
  189. package/dist/client/assets/{railroadDiagram-AXF67PYL-rE9Jx5yK.js → railroadDiagram-AXF67PYL-DyV3SuDj.js} +1 -1
  190. package/dist/client/assets/{refresh-cw-DBJIPv7m.js → refresh-cw-CgDa2Ok_.js} +1 -1
  191. package/dist/client/assets/{requirementDiagram-LRYGKXZP-Dkz6KTug.js → requirementDiagram-LRYGKXZP-_xEAGWaH.js} +1 -1
  192. package/dist/client/assets/runtime-BwHA1GUS.js +18 -0
  193. package/dist/client/assets/{sankeyDiagram-W5VNT64P-qCyqmTya.js → sankeyDiagram-W5VNT64P-Clf6oTLi.js} +1 -1
  194. package/dist/client/assets/{save-BFsP9OG2.js → save-C8h0AMdl.js} +1 -1
  195. package/dist/client/assets/{scroll-area-CxjQJZM9.js → scroll-area-7n2X_RLQ.js} +1 -1
  196. package/dist/client/assets/{scrollEdges-CXvSHaVb.js → scrollEdges-BXYnwntN.js} +1 -1
  197. package/dist/client/assets/{separator-D3j91Nju.js → separator-CL1qjMqJ.js} +1 -1
  198. package/dist/client/assets/{sequenceDiagram-SI44F4Z6-GCGWxGKL.js → sequenceDiagram-SI44F4Z6-CcYtQLSe.js} +1 -1
  199. package/dist/client/assets/{settingsLayout-3SUkadS6.js → settingsLayout-DxsFwhF0.js} +1 -1
  200. package/dist/client/assets/{sheet-BOQ2T2gY.js → sheet-CGiaw8-i.js} +1 -1
  201. package/dist/client/assets/{shield-Colgxqw7.js → shield-DPC4oHTi.js} +1 -1
  202. package/dist/client/assets/{shield-alert-CWQ-fgqm.js → shield-alert-CwH36qZb.js} +1 -1
  203. package/dist/client/assets/{shield-check-Dgpx5EQs.js → shield-check-CGD7sEeF.js} +1 -1
  204. package/dist/client/assets/{sidebar-BIv8pHHx.js → sidebar-Cc6ANbOP.js} +1 -1
  205. package/dist/client/assets/{sidebarProjectFolders-BpKCw8IR.js → sidebarProjectFolders-DO2Uv84F.js} +1 -1
  206. package/dist/client/assets/{sidebarStatusText-DSeDlb-o.js → sidebarStatusText-B4AtFXZo.js} +1 -1
  207. package/dist/client/assets/{sidebarUndo-DzblmE6P.js → sidebarUndo-gdSrfa4O.js} +1 -1
  208. package/dist/client/assets/{skeleton-BdJ4w_TS.js → skeleton-rS3IgBob.js} +1 -1
  209. package/dist/client/assets/{smartphone-DhBEWfKK.js → smartphone-DgVJfbv3.js} +1 -1
  210. package/dist/client/assets/square-Cr9X8U6y.js +1 -0
  211. package/dist/client/assets/{src-DHNjfMxR.js → src-C3Y_imaX.js} +1 -1
  212. package/dist/client/assets/{star-BAzXRepp.js → star-Cqay-Cae.js} +1 -1
  213. package/dist/client/assets/{stateDiagram-OKZ733FA-D8fRUjov.js → stateDiagram-OKZ733FA-DEKURpRP.js} +1 -1
  214. package/dist/client/assets/stateDiagram-v2-UEYNNEHI-CWtHILqh.js +1 -0
  215. package/dist/client/assets/storeSelectors-CTDWheMy.js +1 -0
  216. package/dist/client/assets/{swimlanes-SLNWSIFB-BKy9AxWZ.js → swimlanes-SLNWSIFB-DrR6sbi6.js} +1 -1
  217. package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-DuaPce9O.js +8 -0
  218. package/dist/client/assets/{switch-DgLijJhN.js → switch-DnpJB2xv.js} +1 -1
  219. package/dist/client/assets/{timeline-definition-Z64GVDOM-DV53IwmP.js → timeline-definition-Z64GVDOM-bQJvmJx5.js} +1 -1
  220. package/dist/client/assets/{toggle-BgR-G8hl.js → toggle-D10FsFoE.js} +1 -1
  221. package/dist/client/assets/{toggle-group-DRIEnEQy.js → toggle-group-BhzbQPEQ.js} +1 -1
  222. package/dist/client/assets/{tokenModePresentation-Bh3mJ9H-.js → tokenModePresentation-BkS-mry_.js} +1 -1
  223. package/dist/client/assets/{tooltip-CsNk2GK1.js → tooltip-BlweKBxc.js} +1 -1
  224. package/dist/client/assets/{treeView-Q6P3EWNA-BgFMn3HH.js → treeView-Q6P3EWNA-D4Ex5QTp.js} +1 -1
  225. package/dist/client/assets/{treemap-WGGIJYW6-B45XVWgo.js → treemap-WGGIJYW6-C4B6Y6qM.js} +1 -1
  226. package/dist/client/assets/{unplug-0SZT8Az_.js → unplug-B1dczi-t.js} +1 -1
  227. package/dist/client/assets/{usage-DF8oQrsy.js → usage-BBwaxMif.js} +1 -1
  228. package/dist/client/assets/useAppSidebarCollapsed-CFy476E3.js +1 -0
  229. package/dist/client/assets/useBaseUiId-DKOjzmu3.js +1 -0
  230. package/dist/client/assets/{useLabelableId-CTlGVpp_.js → useLabelableId-DQbY2GG1.js} +1 -1
  231. package/dist/client/assets/{useNavigate-xewFGSmS.js → useNavigate-B8oXtF30.js} +1 -1
  232. package/dist/client/assets/{usePhoneThreadActions-CuSwvIb4.js → usePhoneThreadActions-6DCLiyJ5.js} +1 -1
  233. package/dist/client/assets/{usePopupViewport-CCXjC0oV.js → usePopupViewport-CNWcP7Od.js} +1 -1
  234. package/dist/client/assets/{useScrollLock-DkiskCYn.js → useScrollLock-BbKeKZdj.js} +1 -1
  235. package/dist/client/assets/{useStatistics-C5V0rg9r.js → useStatistics-B76_r68I.js} +1 -1
  236. package/dist/client/assets/{useTriggerFocusGuards-Cd4IS7Sl.js → useTriggerFocusGuards-BC4Wb3GI.js} +1 -1
  237. package/dist/client/assets/{useValueChanged-DUWoN5BG.js → useValueChanged-BkTbyZdO.js} +1 -1
  238. package/dist/client/assets/{user-round-BtyrzbBf.js → user-round-CLy1Qy1Y.js} +1 -1
  239. package/dist/client/assets/{vennDiagram-T6HMQDX7-DAr5h306.js → vennDiagram-T6HMQDX7-8iiroXim.js} +1 -1
  240. package/dist/client/assets/{vscode-icons-LDoILSKI.js → vscode-icons-CJBVQtq5.js} +1 -1
  241. package/dist/client/assets/{wardley-WFR3VGLG-6MSUlbTx.js → wardley-WFR3VGLG-DpyNUbTc.js} +1 -1
  242. package/dist/client/assets/{wardleyDiagram-T6FBY63Y-Bwv8xq6E.js → wardleyDiagram-T6FBY63Y-CI7is3QO.js} +1 -1
  243. package/dist/client/assets/{workspaceMetadataProjection-DzVpakWU.js → workspaceMetadataProjection-aqZEXDrQ.js} +1 -1
  244. package/dist/client/assets/{wrench-BDHgkqDa.js → wrench-7pbbxqrZ.js} +1 -1
  245. package/dist/client/assets/{xychartDiagram-ELKLHX3M-Be0CbWLp.js → xychartDiagram-ELKLHX3M-BTEX3m2y.js} +1 -1
  246. package/dist/client/index.html +1 -1
  247. package/dist/{deviceHostWorker-CYnrwfrv.cjs → deviceHostWorker-D4HauWIV.cjs} +1 -1
  248. package/dist/{git-BKwGfw8A.mjs → git-9xWsJYIH.mjs} +1 -1
  249. package/dist/{git-Dn5wrgFY.cjs → git-xIkXFy_l.cjs} +2 -2
  250. package/dist/{makeManagedServerProvider-B_lPFNpL.mjs → makeManagedServerProvider-B90UKjnv.mjs} +1 -1
  251. package/dist/{makeManagedServerProvider-CUwxc0Pn.cjs → makeManagedServerProvider-CF776SAO.cjs} +2 -2
  252. package/dist/resource-monitor/ryco-resource-monitor +0 -0
  253. package/dist/resource-monitor/ryco-resource-monitor.exe +0 -0
  254. package/dist/resource-monitor/win32-arm64/ryco-resource-monitor.exe +0 -0
  255. package/dist/resource-monitor/win32-x64/ryco-resource-monitor.exe +0 -0
  256. package/dist/{rolldown-runtime-LGfotAqq.cjs → rolldown-runtime-HbSU0i7K.cjs} +7 -0
  257. package/dist/{src-BzVJd3Me.cjs → src-CARHuYkT.cjs} +1059 -178
  258. package/dist/{src-7E1M4gTQ.mjs → src-CtsgPPhb.mjs} +198 -97
  259. package/package.json +1 -1
  260. package/dist/client/assets/DialogRoot-CEU7Xp57.js +0 -1
  261. package/dist/client/assets/architecture-7GRP2DOG-B6OTx_1D.js +0 -1
  262. package/dist/client/assets/channel-D_j9jK0M.js +0 -1
  263. package/dist/client/assets/chevron-right-D3dUAoht.js +0 -1
  264. package/dist/client/assets/classDiagram-JCYQIIEL-Ck79EbLj.js +0 -1
  265. package/dist/client/assets/classDiagram-v2-OCEON4UE-Ck79EbLj.js +0 -1
  266. package/dist/client/assets/eventmodeling-NTZA5JFV-COIUUd8Y.js +0 -1
  267. package/dist/client/assets/flowDiagram-UKHOOZJN-Cdhu8N9G.js +0 -1
  268. package/dist/client/assets/hostedPairing-CqhLPQqG.js +0 -1
  269. package/dist/client/assets/railroad-abnf-HS5TGJTU-DtRRa_PL.js +0 -1
  270. package/dist/client/assets/railroad-ebnf-LZEXJU2U-WQz4QHTw.js +0 -1
  271. package/dist/client/assets/railroad-peg-WCYAUIDC-1gkGEpqz.js +0 -1
  272. package/dist/client/assets/runtime-DpHhg0dl.js +0 -18
  273. package/dist/client/assets/square--aW0vCo4.js +0 -1
  274. package/dist/client/assets/stateDiagram-v2-UEYNNEHI-vKQeXqcV.js +0 -1
  275. package/dist/client/assets/storeSelectors-BFVEGU0F.js +0 -1
  276. package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-qtmvcwUS.js +0 -8
  277. package/dist/client/assets/useAppSidebarCollapsed-CvO9sEQ7.js +0 -1
  278. package/dist/client/assets/useBaseUiId-B5nK6G4h.js +0 -1
@@ -1,5 +1,5 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/main-BqSANuAs.css","assets/ThreadTerminalDrawer-BrP-ENHg.css"])))=>i.map(i=>d[i]);
2
- import{n as e,r as t,t as n}from"./rolldown-runtime-hePW80VL.js";import{t as r}from"./index-3zoAo5bo.js";import{Gt as i,K as a,Kt as o,Pt as s,W as c,Xt as l,Yt as u,a as d,it as f,n as p,ot as m,pt as h,q as g,qt as _,st as v}from"./primary-CQh_KHGG.js";import{$ as y,Aa as b,B as x,Fa as S,H as C,Il as w,Nl as T,Si as E,_a as D,at as O,bi as k,bt as A,f as j,fo as M,ga as N,ht as P,it as F,lt as I,mo as L,o as R,po as z,t as ee,ut as te,xi as B,xt as ne,yi as re,yt as ie}from"./src-DHNjfMxR.js";import{$a as V,$i as ae,$l as H,$s as U,$t as oe,Aa as se,An as ce,Ar as le,At as ue,Ba as de,Bi as fe,Bl as pe,Bn as me,Ca as he,Ci as ge,Ct as _e,Di as ve,Dn as ye,Ei as be,El as xe,Fa as Se,Fn as Ce,Fr as we,Ga as Te,Gc as Ee,Gi as De,Gr as Oe,Ha as ke,Hi as Ae,Ht as je,Ia as Me,Ir as Ne,It as Pe,Ja as Fe,Ji as Ie,Jr as Le,K as Re,Ka as ze,Ki as Be,Kr as Ve,Ks as He,La as Ue,Lr as We,Lt as Ge,Ma as Ke,Ms as qe,Mt as Je,Na as Ye,Nl as Xe,Nn as Ze,Oi as Qe,On as $e,P as et,Pa as tt,Pl as nt,Qi as rt,Qr as W,Qt as it,Ra as at,Rl as ot,Rn as st,Rt as ct,Sa as lt,Si as ut,Ss as dt,St as ft,Ta as pt,Ti as mt,Ua as ht,Ui as gt,Ul as _t,V as vt,Va as yt,Vi as bt,Vl as xt,Vr as St,Vt as Ct,Wa as wt,Wi as Tt,Wt as Et,Xa as Dt,Xi as Ot,Xs as kt,Ya as At,Yi as jt,Za as Mt,Zi as Nt,Zr as Pt,Zs as Ft,Zt as It,_ as Lt,_a as Rt,_i as zt,aa as Bt,ai as Vt,an as Ht,ao as Ut,at as Wt,au as Gt,ba as Kt,bl as qt,bn as Jt,bt as Yt,ca as Xt,ci as Zt,cn as Qt,co as $t,cr as en,ct as tn,cu as nn,d as rn,da as an,di as on,do as sn,dt as cn,du as ln,ea as un,ei as G,eo as dn,eu as fn,f as pn,fa as mn,fi as hn,fn as gn,fo as _n,ft as vn,fu as yn,g as bn,ga as xn,gi as Sn,gr as Cn,gt as wn,ha as Tn,hi as En,ho as Dn,ht as On,hu as kn,ia as An,ii as jn,in as Mn,it as Nn,jr as Pn,js as Fn,jt as In,ki as Ln,kn as Rn,kt as zn,la as Bn,ln as Vn,lo as Hn,lr as Un,lt as Wn,lu as Gn,m as Kn,ma as qn,mi as Jn,mo as Yn,mr as Xn,na as Zn,nc as Qn,nn as $n,no as er,nt as tr,nu as nr,oa as rr,on as ir,oo as ar,or,os as sr,ot as cr,p as lr,pa as ur,pi as dr,po as fr,pr,pt as mr,qa as hr,qi as gr,qr as _r,ra as vr,ri as yr,rn as br,rt as xr,ru as Sr,sa as Cr,si as wr,sn as Tr,so as Er,sr as Dr,st as Or,su as kr,ta as Ar,tc as jr,ti as Mr,tn as Nr,to as Pr,tt as Fr,tu as Ir,ua as Lr,ui as Rr,un as K,uo as zr,ur as Br,ut as Vr,uu as Hr,va as Ur,vi as Wr,vn as Gr,wi as Kr,wr as qr,wt as Jr,x as Yr,xa as Xr,xi as Zr,y as Qr,ya as $r,yt as ei,za as ti,zi as ni,zt as ri}from"./runtime-DpHhg0dl.js";import{t as ii}from"./react-CwJFpaho.js";import{$ as ai,$n as oi,Ar as si,Bn as ci,Cn as li,Cr as ui,Ct as di,Dr as fi,Dt as pi,Er as mi,Et as hi,Fr as gi,Ft as _i,Gt as vi,Hn as yi,In as bi,Ir as xi,It as Si,J as Ci,Jn as wi,Jt as Ti,K as Ei,Kn as Di,Lr as Oi,Lt as ki,Mr as Ai,Mt as ji,Nr as Mi,Nt as Ni,Or as Pi,Pt as Fi,Q as Ii,Qn as Li,Qt as Ri,R as zi,Rr as Bi,Rt as Vi,Sn as Hi,Sr as Ui,St as Wi,Tt as Gi,Un as Ki,Ut as qi,Vn as Ji,Wn as Yi,X as Xi,Xn as Zi,Xt as Qi,Y as $i,Yn as ea,Yt as ta,Z as na,Zn as ra,Zt as ia,_r as aa,_t as oa,a as sa,at as ca,br as la,bt as ua,c as da,cn as fa,ct as pa,dn as ma,dr as ha,dt as ga,f as _a,fr as va,ft as ya,gn as ba,gr as xa,gt as Sa,h as Ca,hn as wa,hr as Ta,ht as Ea,i as Da,it as Oa,jt as ka,kr as Aa,l as ja,lr as Ma,lt as Na,m as Pa,mn as Fa,mr as Ia,mt as La,n as Ra,nt as za,o as Ba,or as Va,ot as Ha,p as Ua,pt as Wa,q as Ga,qn as Ka,qt as qa,r as Ja,rn as Ya,rt as Xa,s as Za,st as Qa,t as $a,tn as eo,tt as to,un as no,ur as ro,ut as io,v as ao,vr as oo,vt as so,wr as co,wt as lo,xn as uo,xt as fo,y as po,yn as mo,yr as ho,yt as go,z as _o,zr as vo,zt as yo}from"./switch-DgLijJhN.js";import{t as bo}from"./compiler-runtime-C4g8XhC5.js";import{v as xo}from"./NullStore-iCZTvdl5.js";import{i as So,n as Co,t as wo}from"./tooltip-CsNk2GK1.js";import{a as To,c as Eo,i as Do,n as Oo,o as ko,r as Ao,s as jo,t as Mo}from"./badge-DqZmJa1g.js";import{a as No,n as Po,o as Fo,t as Io}from"./motion-B4mmVewo.js";import{c as Lo,d as Ro,f as zo,i as Bo,u as Vo}from"./hostedConnectionCoordinator-BkxMXc2s.js";import{t as Ho}from"./useNavigate-xewFGSmS.js";import{t as Uo}from"./arrow-left-Ce-aUiy1.js";import{t as Wo}from"./arrow-right-BEwkAmxp.js";import{n as Go,p as Ko,r as qo}from"./HostedConnectionControls-xi9LAlqs.js";import{t as Jo}from"./bot-k1yDQ5mQ.js";import{$ as Yo,A as Xo,B as Zo,D as Qo,E as $o,J as es,K as ts,N as ns,O as rs,P as is,Q as as,T as os,U as ss,V as cs,W as ls,X as us,Y as ds,Z as fs,_ as ps,b as ms,c as hs,d as gs,et as _s,f as vs,g as ys,h as bs,k as xs,l as Ss,m as Cs,n as ws,p as Ts,t as Es,u as Ds,v as Os,w as ks,x as As,y as js}from"./ContextHandoffEndpointLabel-BCNMjnEV.js";import{t as Ms}from"./chevron-right-D3dUAoht.js";import{n as Ns,r as Ps,t as Fs}from"./tokenModePresentation-Bh3mJ9H-.js";import{i as Is,n as Ls,t as Rs}from"./capabilities-C9OPiefV.js";import{n as zs,t as Bs}from"./layers-3D4z3mrk.js";import{_ as Vs,b as Hs,c as Us,d as Ws,f as Gs,g as Ks,i as qs,l as Js,o as Ys,r as Xs,s as Zs,u as Qs,v as $s,y as ec}from"./SettingsPanels.editor-zrq4ZT2j.js";import{n as tc,t as nc}from"./play-CJNYRuck.js";import{t as rc}from"./refresh-cw-DBJIPv7m.js";import{t as ic}from"./shield-alert-CWQ-fgqm.js";import{t as ac}from"./shield-check-Dgpx5EQs.js";import{t as oc}from"./square--aW0vCo4.js";import{a as sc,i as cc,n as lc,t as uc}from"./editorPreferences-DzxKMQJx.js";import{t as dc}from"./wrench-BDHgkqDa.js";import{t as fc}from"./toastHelpers-CSQRKo4F.js";import{i as pc,r as mc}from"./perfInstrumentation-BT27w4tn.js";import{t as hc}from"./authorization-BugIGt5e.js";import{P as gc,b as _c,i as vc,l as yc,r as bc}from"./sidebarUndo-DzblmE6P.js";import{t as xc}from"./usePresentationTier-hxB7Yv_Q.js";import{_ as Sc,a as Cc,d as wc,f as Tc,g as Ec,h as Dc,i as Oc,l as kc,m as Ac,n as jc,o as Mc,p as Nc,r as Pc,s as Fc,t as Ic,u as Lc,v as Rc}from"./BranchToolbar.logic-DN0He2gp.js";import{i as zc,n as Bc,o as Vc}from"./desktopWorkspace-DIoIhyml.js";import{n as Hc}from"./deviceName-BY2WK012.js";import{t as Uc}from"./shallow-B--PNURq.js";import"./storeSelectors-BFVEGU0F.js";import{t as Wc}from"./useBaseUiId-B5nK6G4h.js";import{t as Gc}from"./useValueChanged-DUWoN5BG.js";import{t as Kc}from"./useControlled-CgAAWIy9.js";import{i as qc,n as Jc,r as Yc,s as Xc,t as Zc,u as Qc}from"./useLabelableId-CTlGVpp_.js";import{a as $c,i as el,n as tl,o as nl,r as rl,t as il}from"./radio-group-1yuMmVHi.js";import{t as al}from"./input-zI-YDU9i.js";import{t as ol}from"./scroll-area-CxjQJZM9.js";import{o as sl,t as cl}from"./sheet-BOQ2T2gY.js";import{t as ll}from"./skeleton-BdJ4w_TS.js";import{m as ul,p as dl,t as fl}from"./sidebar-BIv8pHHx.js";import{i as pl,n as ml,r as hl,t as gl}from"./alert-DVbwtykC.js";import{a as _l,c as vl,i as yl,n as bl,o as xl,r as Sl,s as Cl,t as wl}from"./MobileSheet-BZwVUjae.js";import{t as Tl}from"./GlassSurface-R5jo7uZp.js";import{t as El}from"./useLongPress-CUmLovQ7.js";import{n as Dl,t as Ol}from"./appChrome-B_VWWDFj.js";import{t as kl}from"./useTheme-B441xg4F.js";import{t as Al}from"./toggle-BgR-G8hl.js";import{a as jl}from"./settingsLayout-3SUkadS6.js";import{t as Ml}from"./useAppSidebarCollapsed-CvO9sEQ7.js";import"./usage-DF8oQrsy.js";import{n as Nl,r as Pl,t as Fl}from"./usePhoneThreadActions-CuSwvIb4.js";import{i as Il,n as Ll,o as Rl,r as zl,s as Bl,t as Vl}from"./liquidGlass-CA2o_Cq0.js";import{t as Hl}from"./AnimatedHeight-q2A-ikJ5.js";import{n as Ul,t as Wl}from"./group-CcSMHbpZ.js";import{$ as Gl,A as Kl,B as ql,C as Jl,D as Yl,E as Xl,O as Zl,P as Ql,R as $l,S as eu,T as tu,U as nu,W as ru,X as iu,a as au,b as ou,et as su,f as cu,i as lu,k as uu,mt as du,tt as fu,u as pu,ut as mu,x as hu,z as gu}from"./main-DsnAjTqg.js";var _u={name:`arrow-left-right`,size:24,node:[[`path`,{d:`M8 3 4 7l4 4`,key:`9rb6wj`}],[`path`,{d:`M4 7h16`,key:`6tx8e3`}],[`path`,{d:`m16 21 4-4-4-4`,key:`siv7j2`}],[`path`,{d:`M20 17H4`,key:`h6l3hr`}]]};_u.node;var vu=Dn(_u),yu={name:`bookmark`,size:24,node:[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]};yu.node;var bu=Dn(yu),xu={name:`brain`,size:24,node:[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]};xu.node;var Su=Dn(xu),Cu={name:`bug`,size:24,node:[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]};Cu.node;var wu=Dn(Cu),Tu={name:`clipboard-list`,size:24,node:[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]};Tu.node;var Eu=Dn(Tu),Du={name:`cloud-upload`,size:24,node:[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]],aliases:[`upload-cloud`]};Du.node;var Ou=Dn(Du),ku={name:`corner-down-left`,size:24,node:[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]};ku.node;var Au=Dn(ku),ju={name:`expand`,size:24,node:[[`path`,{d:`m15 15 6 6`,key:`1s409w`}],[`path`,{d:`m15 9 6-6`,key:`ko1vev`}],[`path`,{d:`M21 16v5h-5`,key:`1ck2sf`}],[`path`,{d:`M21 8V3h-5`,key:`1qoq8a`}],[`path`,{d:`M3 16v5h5`,key:`1t08am`}],[`path`,{d:`m3 21 6-6`,key:`wwnumi`}],[`path`,{d:`M3 8V3h5`,key:`1ln10m`}],[`path`,{d:`M9 9 3 3`,key:`v551iv`}]]};ju.node;var Mu=Dn(ju),Nu={name:`file-braces`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]],aliases:[`file-json`]};Nu.node;var Pu=Dn(Nu),Fu={name:`flask-conical`,size:24,node:[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]};Fu.node;var Iu=Dn(Fu),Lu={name:`folder-git-2`,size:24,node:[[`path`,{d:`M18 19a5 5 0 0 1-5-5v8`,key:`sz5oeg`}],[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]};Lu.node;var Ru=Dn(Lu),zu={name:`git-branch-plus`,size:24,node:[[`path`,{d:`M6 3v12`,key:`qpgusn`}],[`path`,{d:`M18 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`1d02ji`}],[`path`,{d:`M6 21a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`chk6ph`}],[`path`,{d:`M15 6a9 9 0 0 0-9 9`,key:`or332x`}],[`path`,{d:`M18 15v6`,key:`9wciyi`}],[`path`,{d:`M21 18h-6`,key:`139f0c`}]]};zu.node;var Bu=Dn(zu),Vu={name:`hammer`,size:24,node:[[`path`,{d:`m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9`,key:`1hayfq`}],[`path`,{d:`m18 15 4-4`,key:`16gjal`}],[`path`,{d:`m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5`,key:`15ts47`}]]};Vu.node;var Hu=Dn(Vu),Uu={name:`list-todo`,size:24,node:[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`rect`,{x:`3`,y:`4`,width:`6`,height:`6`,rx:`1`,key:`cif1o7`}]]};Uu.node;var Wu=Dn(Uu),Gu={name:`lock-open`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 9.9-1`,key:`1mm8w8`}]],aliases:[`unlock`]};Gu.node;var Ku=Dn(Gu),qu={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]};qu.node;var Ju=Dn(qu),Yu={name:`maximize-2`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]};Yu.node;var Xu=Dn(Yu),Zu={name:`message-circle-question-mark`,size:24,node:[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`message-circle-question`]};Zu.node;var Qu=Dn(Zu),$u={name:`message-square-plus`,size:24,node:[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M12 8v6`,key:`1ib9pf`}],[`path`,{d:`M9 11h6`,key:`1fldmi`}]]};$u.node;var ed=Dn($u),td={name:`move`,size:24,node:[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`m15 19-3 3-3-3`,key:`11eu04`}],[`path`,{d:`m19 9 3 3-3 3`,key:`1mg7y2`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`m5 9-3 3 3 3`,key:`j64kie`}],[`path`,{d:`m9 5 3-3 3 3`,key:`l8vdw6`}]]};td.node;var nd=Dn(td),rd={name:`panel-bottom`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 15h18`,key:`5xshup`}]]};rd.node;var id=Dn(rd),ad={name:`panel-right`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]};ad.node;var od=Dn(ad),sd={name:`paperclip`,size:24,node:[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]};sd.node;var cd=Dn(sd),ld={name:`square-terminal`,size:24,node:[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]],aliases:[`terminal-square`]};ld.node;var ud=Dn(ld),dd={name:`target`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]};dd.node;var fd=Dn(dd),pd={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]};pd.node;var md=Dn(pd),hd=4e3;function gd(e){if(!e.text.trim()||e.text.length>4e3)throw Error(`Select between 1 and ${hd.toLocaleString(`en-US`)} characters.`)}function _d(e,t){gd(t);let n=JSON.stringify({environmentId:t.source.environmentId,threadId:t.source.threadId,messageId:t.messageId}),r=t.text.split(/\r?\n/).map(e=>`> ${e}`).join(`
2
+ import{n as e,r as t,t as n}from"./rolldown-runtime-hePW80VL.js";import{t as r}from"./index-BqZvnGNr.js";import{Gt as i,K as a,Kt as o,Pt as s,W as c,Xt as l,Yt as u,a as d,it as f,n as p,ot as m,pt as h,q as g,qt as _,st as v}from"./primary-DZjgHvyf.js";import{$ as y,Aa as b,B as x,Fa as S,H as C,Il as w,Nl as T,Si as E,_a as D,at as O,bi as k,bt as A,f as j,fo as M,ga as N,ht as P,it as F,lt as I,mo as L,o as R,po as z,t as ee,ut as te,xi as B,xt as ne,yi as re,yt as ie}from"./src-C3Y_imaX.js";import{$a as V,$i as ae,$l as H,$s as U,$t as oe,Aa as se,An as ce,Ar as le,At as ue,Ba as de,Bi as fe,Bl as pe,Bn as me,Ca as he,Ci as ge,Ct as _e,Di as ve,Dn as ye,Ei as be,El as xe,Fa as Se,Fn as Ce,Fr as we,Ga as Te,Gc as Ee,Gi as De,Gr as Oe,Ha as ke,Hi as Ae,Ht as je,Ia as Me,Ir as Ne,It as Pe,Ja as Fe,Ji as Ie,Jr as Le,K as Re,Ka as ze,Ki as Be,Kr as Ve,Ks as He,La as Ue,Lr as We,Lt as Ge,Ma as Ke,Ms as qe,Mt as Je,Na as Ye,Nl as Xe,Nn as Ze,Oi as Qe,On as $e,P as et,Pa as tt,Pl as nt,Qi as rt,Qr as W,Qt as it,Ra as at,Rl as ot,Rn as st,Rt as ct,Sa as lt,Si as ut,Ss as dt,St as ft,Ta as pt,Ti as mt,Ua as ht,Ui as gt,Ul as _t,V as vt,Va as yt,Vi as bt,Vl as xt,Vr as St,Vt as Ct,Wa as wt,Wi as Tt,Wt as Et,Xa as Dt,Xi as Ot,Xs as kt,Ya as At,Yi as jt,Za as Mt,Zi as Nt,Zr as Pt,Zs as Ft,Zt as It,_ as Lt,_a as Rt,_i as zt,aa as Bt,ai as Vt,an as Ht,ao as Ut,at as Wt,au as Gt,ba as Kt,bl as qt,bn as Jt,bt as Yt,ca as Xt,ci as Zt,cn as Qt,co as $t,cr as en,ct as tn,cu as nn,d as rn,da as an,di as on,do as sn,dt as cn,du as ln,ea as un,ei as G,eo as dn,eu as fn,f as pn,fa as mn,fi as hn,fn as gn,fo as _n,ft as vn,fu as yn,g as bn,ga as xn,gi as Sn,gr as Cn,gt as wn,ha as Tn,hi as En,ho as Dn,ht as On,hu as kn,ia as An,ii as jn,in as Mn,it as Nn,jr as Pn,js as Fn,jt as In,ki as Ln,kn as Rn,kt as zn,la as Bn,ln as Vn,lo as Hn,lr as Un,lt as Wn,lu as Gn,m as Kn,ma as qn,mi as Jn,mo as Yn,mr as Xn,na as Zn,nc as Qn,nn as $n,no as er,nt as tr,nu as nr,oa as rr,on as ir,oo as ar,or,os as sr,ot as cr,p as lr,pa as ur,pi as dr,po as fr,pr,pt as mr,qa as hr,qi as gr,qr as _r,ra as vr,ri as yr,rn as br,rt as xr,ru as Sr,sa as Cr,si as wr,sn as Tr,so as Er,sr as Dr,st as Or,su as kr,ta as Ar,tc as jr,ti as Mr,tn as Nr,to as Pr,tt as Fr,tu as Ir,ua as Lr,ui as Rr,un as K,uo as zr,ur as Br,ut as Vr,uu as Hr,va as Ur,vi as Wr,vn as Gr,wi as Kr,wr as qr,wt as Jr,x as Yr,xa as Xr,xi as Zr,y as Qr,ya as $r,yt as ei,za as ti,zi as ni,zt as ri}from"./runtime-BwHA1GUS.js";import{t as ii}from"./react-CwJFpaho.js";import{$ as ai,$n as oi,Ar as si,Bn as ci,Cn as li,Cr as ui,Ct as di,Dr as fi,Dt as pi,Er as mi,Et as hi,Fr as gi,Ft as _i,Gt as vi,Hn as yi,In as bi,Ir as xi,It as Si,J as Ci,Jn as wi,Jt as Ti,K as Ei,Kn as Di,Lr as Oi,Lt as ki,Mr as Ai,Mt as ji,Nr as Mi,Nt as Ni,Or as Pi,Pt as Fi,Q as Ii,Qn as Li,Qt as Ri,R as zi,Rr as Bi,Rt as Vi,Sn as Hi,Sr as Ui,St as Wi,Tt as Gi,Un as Ki,Ut as qi,Vn as Ji,Wn as Yi,X as Xi,Xn as Zi,Xt as Qi,Y as $i,Yn as ea,Yt as ta,Z as na,Zn as ra,Zt as ia,_r as aa,_t as oa,a as sa,at as ca,br as la,bt as ua,c as da,cn as fa,ct as pa,dn as ma,dr as ha,dt as ga,f as _a,fr as va,ft as ya,gn as ba,gr as xa,gt as Sa,h as Ca,hn as wa,hr as Ta,ht as Ea,i as Da,it as Oa,jt as ka,kr as Aa,l as ja,lr as Ma,lt as Na,m as Pa,mn as Fa,mr as Ia,mt as La,n as Ra,nt as za,o as Ba,or as Va,ot as Ha,p as Ua,pt as Wa,q as Ga,qn as Ka,qt as qa,r as Ja,rn as Ya,rt as Xa,s as Za,st as Qa,t as $a,tn as eo,tt as to,un as no,ur as ro,ut as io,v as ao,vr as oo,vt as so,wr as co,wt as lo,xn as uo,xt as fo,y as po,yn as mo,yr as ho,yt as go,z as _o,zr as vo,zt as yo}from"./switch-DnpJB2xv.js";import{t as bo}from"./compiler-runtime-C4g8XhC5.js";import{v as xo}from"./NullStore-8d2s-Re3.js";import{i as So,n as Co,t as wo}from"./tooltip-BlweKBxc.js";import{a as To,c as Eo,i as Do,n as Oo,o as ko,r as Ao,s as jo,t as Mo}from"./badge-2AZ3HfVS.js";import{a as No,n as Po,o as Fo,t as Io}from"./motion-BdscFixQ.js";import{c as Lo,d as Ro,f as zo,i as Bo,u as Vo}from"./hostedConnectionCoordinator-BuRWCvUG.js";import{t as Ho}from"./useNavigate-B8oXtF30.js";import{t as Uo}from"./arrow-left-DUOpzEbP.js";import{t as Wo}from"./arrow-right-HOYJnPKw.js";import{n as Go,p as Ko,r as qo}from"./HostedConnectionControls-CscV6hm1.js";import{t as Jo}from"./bot-DxjPA7Bw.js";import{$ as Yo,A as Xo,B as Zo,D as Qo,E as $o,J as es,K as ts,N as ns,O as rs,P as is,Q as as,T as os,U as ss,V as cs,W as ls,X as us,Y as ds,Z as fs,_ as ps,b as ms,c as hs,d as gs,et as _s,f as vs,g as ys,h as bs,k as xs,l as Ss,m as Cs,n as ws,p as Ts,t as Es,u as Ds,v as Os,w as ks,x as As,y as js}from"./ContextHandoffEndpointLabel-CeGDLNA4.js";import{t as Ms}from"./chevron-right-Dsw16yGn.js";import{n as Ns,r as Ps,t as Fs}from"./tokenModePresentation-BkS-mry_.js";import{i as Is,n as Ls,t as Rs}from"./capabilities-CsHjxjab.js";import{n as zs,t as Bs}from"./layers-Dqez1Uq8.js";import{_ as Vs,b as Hs,c as Us,d as Ws,f as Gs,g as Ks,i as qs,l as Js,o as Ys,r as Xs,s as Zs,u as Qs,v as $s,y as ec}from"./SettingsPanels.editor-Dkva9gX_.js";import{n as tc,t as nc}from"./play-DUvOxTpL.js";import{t as rc}from"./refresh-cw-CgDa2Ok_.js";import{t as ic}from"./shield-alert-CwH36qZb.js";import{t as ac}from"./shield-check-CGD7sEeF.js";import{t as oc}from"./square-Cr9X8U6y.js";import{a as sc,i as cc,n as lc,t as uc}from"./editorPreferences-D8q1ItMW.js";import{t as dc}from"./wrench-7pbbxqrZ.js";import{t as fc}from"./toastHelpers-CSQRKo4F.js";import{i as pc,r as mc}from"./perfInstrumentation-BT27w4tn.js";import{t as hc}from"./authorization-D8dOcEYq.js";import{P as gc,b as _c,i as vc,l as yc,r as bc}from"./sidebarUndo-gdSrfa4O.js";import{t as xc}from"./usePresentationTier-hxB7Yv_Q.js";import{_ as Sc,a as Cc,d as wc,f as Tc,g as Ec,h as Dc,i as Oc,l as kc,m as Ac,n as jc,o as Mc,p as Nc,r as Pc,s as Fc,t as Ic,u as Lc,v as Rc}from"./BranchToolbar.logic-YN3KjVr9.js";import{i as zc,n as Bc,o as Vc}from"./desktopWorkspace-_iM6B9Kf.js";import{n as Hc}from"./deviceName-C2N8ZRX3.js";import{t as Uc}from"./shallow-B--PNURq.js";import"./storeSelectors-CTDWheMy.js";import{t as Wc}from"./useBaseUiId-DKOjzmu3.js";import{t as Gc}from"./useValueChanged-BkTbyZdO.js";import{t as Kc}from"./useControlled-CgAAWIy9.js";import{i as qc,n as Jc,r as Yc,s as Xc,t as Zc,u as Qc}from"./useLabelableId-DQbY2GG1.js";import{a as $c,i as el,n as tl,o as nl,r as rl,t as il}from"./radio-group-CRnHYWa8.js";import{t as al}from"./input-BDWSVClC.js";import{t as ol}from"./scroll-area-7n2X_RLQ.js";import{o as sl,t as cl}from"./sheet-CGiaw8-i.js";import{t as ll}from"./skeleton-rS3IgBob.js";import{m as ul,p as dl,t as fl}from"./sidebar-Cc6ANbOP.js";import{i as pl,n as ml,r as hl,t as gl}from"./alert-DQEkrtUJ.js";import{a as _l,c as vl,i as yl,n as bl,o as xl,r as Sl,s as Cl,t as wl}from"./MobileSheet-lT--mLEz.js";import{t as Tl}from"./GlassSurface-DDG4eTlj.js";import{t as El}from"./useLongPress-CUmLovQ7.js";import{n as Dl,t as Ol}from"./appChrome-TkWLAGxk.js";import{t as kl}from"./useTheme-B441xg4F.js";import{t as Al}from"./toggle-D10FsFoE.js";import{a as jl}from"./settingsLayout-DxsFwhF0.js";import{t as Ml}from"./useAppSidebarCollapsed-CFy476E3.js";import"./usage-BBwaxMif.js";import{n as Nl,r as Pl,t as Fl}from"./usePhoneThreadActions-6DCLiyJ5.js";import{i as Il,n as Ll,o as Rl,r as zl,s as Bl,t as Vl}from"./liquidGlass-CA2o_Cq0.js";import{t as Hl}from"./AnimatedHeight-UXn4-nUd.js";import{n as Ul,t as Wl}from"./group-tVMKGp7Q.js";import{$ as Gl,A as Kl,B as ql,C as Jl,D as Yl,E as Xl,O as Zl,P as Ql,R as $l,S as eu,T as tu,U as nu,W as ru,X as iu,a as au,b as ou,et as su,f as cu,i as lu,k as uu,mt as du,tt as fu,u as pu,ut as mu,x as hu,z as gu}from"./main-DAbEANjY.js";var _u={name:`arrow-left-right`,size:24,node:[[`path`,{d:`M8 3 4 7l4 4`,key:`9rb6wj`}],[`path`,{d:`M4 7h16`,key:`6tx8e3`}],[`path`,{d:`m16 21 4-4-4-4`,key:`siv7j2`}],[`path`,{d:`M20 17H4`,key:`h6l3hr`}]]};_u.node;var vu=Dn(_u),yu={name:`bookmark`,size:24,node:[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]};yu.node;var bu=Dn(yu),xu={name:`brain`,size:24,node:[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]};xu.node;var Su=Dn(xu),Cu={name:`bug`,size:24,node:[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]};Cu.node;var wu=Dn(Cu),Tu={name:`clipboard-list`,size:24,node:[[`rect`,{width:`8`,height:`4`,x:`8`,y:`2`,rx:`1`,ry:`1`,key:`tgr4d6`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2`,key:`116196`}],[`path`,{d:`M12 11h4`,key:`1jrz19`}],[`path`,{d:`M12 16h4`,key:`n85exb`}],[`path`,{d:`M8 11h.01`,key:`1dfujw`}],[`path`,{d:`M8 16h.01`,key:`18s6g9`}]]};Tu.node;var Eu=Dn(Tu),Du={name:`cloud-upload`,size:24,node:[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]],aliases:[`upload-cloud`]};Du.node;var Ou=Dn(Du),ku={name:`corner-down-left`,size:24,node:[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]};ku.node;var Au=Dn(ku),ju={name:`expand`,size:24,node:[[`path`,{d:`m15 15 6 6`,key:`1s409w`}],[`path`,{d:`m15 9 6-6`,key:`ko1vev`}],[`path`,{d:`M21 16v5h-5`,key:`1ck2sf`}],[`path`,{d:`M21 8V3h-5`,key:`1qoq8a`}],[`path`,{d:`M3 16v5h5`,key:`1t08am`}],[`path`,{d:`m3 21 6-6`,key:`wwnumi`}],[`path`,{d:`M3 8V3h5`,key:`1ln10m`}],[`path`,{d:`M9 9 3 3`,key:`v551iv`}]]};ju.node;var Mu=Dn(ju),Nu={name:`file-braces`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]],aliases:[`file-json`]};Nu.node;var Pu=Dn(Nu),Fu={name:`flask-conical`,size:24,node:[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]};Fu.node;var Iu=Dn(Fu),Lu={name:`folder-git-2`,size:24,node:[[`path`,{d:`M18 19a5 5 0 0 1-5-5v8`,key:`sz5oeg`}],[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]};Lu.node;var Ru=Dn(Lu),zu={name:`git-branch-plus`,size:24,node:[[`path`,{d:`M6 3v12`,key:`qpgusn`}],[`path`,{d:`M18 9a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`1d02ji`}],[`path`,{d:`M6 21a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`,key:`chk6ph`}],[`path`,{d:`M15 6a9 9 0 0 0-9 9`,key:`or332x`}],[`path`,{d:`M18 15v6`,key:`9wciyi`}],[`path`,{d:`M21 18h-6`,key:`139f0c`}]]};zu.node;var Bu=Dn(zu),Vu={name:`hammer`,size:24,node:[[`path`,{d:`m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9`,key:`1hayfq`}],[`path`,{d:`m18 15 4-4`,key:`16gjal`}],[`path`,{d:`m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5`,key:`15ts47`}]]};Vu.node;var Hu=Dn(Vu),Uu={name:`list-todo`,size:24,node:[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`rect`,{x:`3`,y:`4`,width:`6`,height:`6`,rx:`1`,key:`cif1o7`}]]};Uu.node;var Wu=Dn(Uu),Gu={name:`lock-open`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 9.9-1`,key:`1mm8w8`}]],aliases:[`unlock`]};Gu.node;var Ku=Dn(Gu),qu={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]};qu.node;var Ju=Dn(qu),Yu={name:`maximize-2`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]};Yu.node;var Xu=Dn(Yu),Zu={name:`message-circle-question-mark`,size:24,node:[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`message-circle-question`]};Zu.node;var Qu=Dn(Zu),$u={name:`message-square-plus`,size:24,node:[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}],[`path`,{d:`M12 8v6`,key:`1ib9pf`}],[`path`,{d:`M9 11h6`,key:`1fldmi`}]]};$u.node;var ed=Dn($u),td={name:`move`,size:24,node:[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`m15 19-3 3-3-3`,key:`11eu04`}],[`path`,{d:`m19 9 3 3-3 3`,key:`1mg7y2`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`m5 9-3 3 3 3`,key:`j64kie`}],[`path`,{d:`m9 5 3-3 3 3`,key:`l8vdw6`}]]};td.node;var nd=Dn(td),rd={name:`panel-bottom`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 15h18`,key:`5xshup`}]]};rd.node;var id=Dn(rd),ad={name:`panel-right`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M15 3v18`,key:`14nvp0`}]]};ad.node;var od=Dn(ad),sd={name:`paperclip`,size:24,node:[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]};sd.node;var cd=Dn(sd),ld={name:`square-terminal`,size:24,node:[[`path`,{d:`m7 11 2-2-2-2`,key:`1lz0vl`}],[`path`,{d:`M11 13h4`,key:`1p7l4v`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}]],aliases:[`terminal-square`]};ld.node;var ud=Dn(ld),dd={name:`target`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]};dd.node;var fd=Dn(dd),pd={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]};pd.node;var md=Dn(pd),hd=4e3;function gd(e){if(!e.text.trim()||e.text.length>4e3)throw Error(`Select between 1 and ${hd.toLocaleString(`en-US`)} characters.`)}function _d(e,t){gd(t);let n=JSON.stringify({environmentId:t.source.environmentId,threadId:t.source.threadId,messageId:t.messageId}),r=t.text.split(/\r?\n/).map(e=>`> ${e}`).join(`
3
3
  `);return`${e}${e?`
4
4
 
5
5
  `:``}Quoted assistant text (${n}):\n${r}\n\n`}var q=t(ii(),1),J=bo(),Y=H();function vd(e){if(typeof e!=`object`||!e||!(`file`in e))throw Error(`Expected a composer attachment.`);return e}var yd={encode:async e=>{let t=vd(e);return{id:t.id,mime:t.file.type||`application/octet-stream`,size:t.file.size,bytes:new Uint8Array(await t.file.arrayBuffer())}},decode:async e=>{if(`uri`in e)return e.uri;let t=new Uint8Array(e.bytes.byteLength);return t.set(e.bytes),new File([t],e.id,{type:e.mime})}},bd={message:0,"proposed-plan":1,work:2,"context-compaction":3,"context-handoff":4};function xd(e,t){return e.entry.createdAt.localeCompare(t.entry.createdAt)||e.sourceRank-t.sourceRank||e.sourceIndex-t.sourceIndex||e.key.localeCompare(t.key)}function Sd(e,t){return e.source===t.source&&e.sourceRank===t.sourceRank}function Cd(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>>1,a=e[i];a&&xd(a,t)<=0?n=i+1:r=i}e.splice(n,0,t)}function wd(e){for(let t=1;t<e.length;t++){let n=e[t-1],r=e[t];if(n&&r&&xd(n,r)>0)return!1}return!0}function Td(e,t){let n=`${t.sourceKind}:${t.entry.id}`,r=e.get(n),i=r?.source===t.source&&r.entry.createdAt===t.entry.createdAt&&r.entry.kind===t.entry.kind?r.entry:t.entry;return{key:n,sourceKind:t.sourceKind,sourceRank:bd[t.sourceKind],sourceIndex:t.sourceIndex,source:t.source,entry:i}}function Ed(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])?e:t}function Dd(){let e=new Map,t=[],n=[],r=`full`;return{update:i=>{let a=new Set(i.messages.map(e=>e.id)),o=new Map,s=new Map,c=new Map,l=(e,t)=>{o.set(e.key,e),t&&s.set(e.key,e)};i.messages.forEach((t,n)=>l(Td(e,{sourceKind:`message`,sourceIndex:n,source:t,entry:{id:t.id,kind:`message`,createdAt:t.createdAt,message:t}}),!0)),i.proposedPlans.forEach((t,n)=>l(Td(e,{sourceKind:`proposed-plan`,sourceIndex:n,source:t,entry:{id:t.id,kind:`proposed-plan`,createdAt:t.createdAt,proposedPlan:t}}),!0)),i.workEntries.forEach((t,n)=>l(Td(e,{sourceKind:`work`,sourceIndex:n,source:t,entry:{id:t.id,kind:`work`,createdAt:t.createdAt,entry:t}}),!0)),i.contextCompactionEntries.forEach((t,n)=>l(Td(e,{sourceKind:`context-compaction`,sourceIndex:n,source:t,entry:{id:t.id,kind:`context-compaction`,createdAt:t.createdAt,marker:t}}),!0)),i.contextHandoffEntries.forEach((t,n)=>{let r=Td(e,{sourceKind:`context-handoff`,sourceIndex:n,source:t,entry:{id:t.id,kind:`context-handoff`,createdAt:t.createdAt,marker:t}});if(l(r,!a.has(t.targetMessageId)),a.has(t.targetMessageId)){let e=c.get(t.targetMessageId);e?e.push(r):c.set(t.targetMessageId,[r])}});let u=new Map;for(let e of s.values()){let t=`${e.sourceKind}:${e.entry.createdAt}`;u.set(t,(u.get(t)??0)+1)}let d=new Set(t.map(e=>e.key)),f=[...s.values()].filter(t=>{if(!d.has(t.key))return!0;let n=e.get(t.key);return!n||!Sd(n,t)||n.sourceIndex!==t.sourceIndex&&(u.get(`${t.sourceKind}:${t.entry.createdAt}`)??0)>1}),p=t.reduce((e,t)=>e+ +!s.has(t.key),0),m=f.length+p,h=Math.max(32,Math.ceil(s.size/3));if(t.length===0||m>h)t=[...s.values()].toSorted(xd),r=`full`;else if(m===0)r=`reuse`;else{let e=new Set(f.map(e=>e.key)),n=t.filter(t=>s.has(t.key)&&!e.has(t.key));for(let e of f)Cd(n,e);t=wd(n)?n:[...s.values()].toSorted(xd),r=wd(n)?`incremental`:`full`}let g=[];for(let e of t){if(e.entry.kind===`message`){let t=c.get(e.entry.message.id);t&&g.push(...t.map(e=>e.entry))}g.push(e.entry)}return e=o,n=Ed(n,g),n},inspect:()=>({mode:r,indexedEntries:e.size})}}var Od=new WeakMap;function kd(e){let t=Od.get(e.api);t||(t=new Map,Od.set(e.api,t));let n=JSON.stringify([e.kind,e.threadId,e.requestId,e.identity?.requestEventId,e.identity?.runtimeSessionId]),r=t.get(n);if(r)return r;let i=Promise.resolve().then(e.submit).then(()=>void 0).finally(()=>{t.get(n)===i&&t.delete(n)});return t.set(n,i),i}function Ad(e){return kd({...e,identity:e.approvalIdentity,kind:`approval`})}function jd(e){return kd({...e,identity:e.userInputIdentity,kind:`user-input`})}function Md(e){let{environmentId:t,source:n,sink:r}=e,i=!1,a=n.subscribeProposals(e=>{i||r.applyStreamEvent(t,e)},{onError:()=>{i||(r.clearEnvironment(t),e.onError?.())}});return()=>{i||(i=!0,a())}}var Nd=ri(),Pd=t(xe(),1),Fd=/https?:\/\/[^\s"'`<>]+/g,Id=/(?:~\/|\.{1,2}\/|\/|[A-Za-z]:[\\/]|\\\\)[^\s"'`<>]+|[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)+(?::\d+){0,2}/g,Ld=/[.,;!?]+$/;function Rd(e){let t=e.replace(Ld,``);if(t.length===0)return t;let n=(e,n)=>{for(;t.endsWith(n);){if(t.split(e).length-1>=t.split(n).length-1)return;t=t.slice(0,-1)}};return n(`(`,`)`),n(`[`,`]`),n(`{`,`}`),t}function zd(e,t){return e.start<t.end&&t.start<e.end}function Bd(e,t,n,r){let i=[];n.lastIndex=0;for(let a of e.matchAll(n)){let e=a[0],n=a.index??-1;if(n<0||e.length===0)continue;let o=Rd(e);if(o.length===0||t===`path`&&/^https?:\/\//i.test(o))continue;let s={kind:t,text:o,start:n,end:n+o.length};[...r,...i].some(e=>zd(s,e))||i.push(s)}return i}function Vd(e){return/^[A-Za-z]:[\\/]/.test(e)||e.startsWith(`\\\\`)}function Hd(e){return e.startsWith(`/`)||Vd(e)}function Ud(e){return Vd(e)||/[A-Za-z]:\\/.test(e)}function Wd(e,t,n){let r=e.replace(/[\\/]+$/,``);return n===`\\`?`${r}\\${t.replaceAll(`/`,`\\`)}`:`${r}/${t.replace(/^\/+/,``)}`}function Gd(e){let t=e.match(/^\/Users\/([^/]+)/);if(t?.[1])return`/Users/${t[1]}`;let n=e.match(/^\/home\/([^/]+)/);if(n?.[1])return`/home/${n[1]}`;let r=e.match(/^([A-Za-z]:\\Users\\[^\\]+)/);if(r?.[1])return r[1]}function Kd(e){let t=e,n,r,i=t.match(/:(\d+)$/);if(!i?.[1])return{path:t,line:void 0,column:void 0};n=i[1],t=t.slice(0,-i[0].length);let a=t.match(/:(\d+)$/);return a?.[1]?(r=a[1],t=t.slice(0,-a[0].length)):(r=n,n=void 0),{path:t,line:r,column:n}}function qd(e){let t=Bd(e,`url`,Fd,[]),n=Bd(e,`path`,Id,t);return[...t,...n].toSorted((e,t)=>e.start-t.start)}function Jd(e,t){let n=t(e-1);if(!n)return null;let r=e,i=n;for(;r>1&&i.isWrapped;){let e=t(r-2);if(!e)return null;--r,i=e}let a=[],o=0,s=r;for(;;){let e=t(s-1);if(!e)break;let n=t(s)?.isWrapped===!0,r=e.translateToString(!n);if(a.push({bufferLineNumber:s,text:r,startIndex:o,endIndex:o+r.length}),o+=r.length,!n)break;s+=1}return{text:a.map(e=>e.text).join(``),segments:a}}function Yd(e,t){for(let n of e)if(t<n.endIndex)return{x:t-n.startIndex+1,y:n.bufferLineNumber};let n=e[e.length-1];return{x:Math.max(n?.text.length??0,1),y:n?.bufferLineNumber??1}}function Xd(e,t){return{start:Yd(e.segments,t.start),end:Yd(e.segments,t.end-1)}}function Zd(e,t){return e.start.y<=t&&t<=e.end.y}function Qd(e,t=typeof navigator>`u`?``:navigator.platform){return t.length===0?!1:Mr(t)?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function $d(e,t){let{path:n,line:r,column:i}=Kd(e),a=n;if(n.startsWith(`~/`)){let e=Gd(t);if(e){let t=Ud(e)?`\\`:`/`;a=Wd(e,n.slice(2),t)}}else Hd(n)||(a=Wd(t,n,Ud(t)?`\\`:`/`));return r?`${a}:${r}${i?`:${i}`:``}`:a}function ef(e){let t=/^\/btw(?:\s+([\s\S]*))?$/i.exec(e.trim());return t?(t[1]??``).trim():null}function tf(){let e=new Map;return l((t,n)=>{let r=(e,n)=>t(t=>{let r=t.chatsByThreadKey[e];return r?{chatsByThreadKey:{...t.chatsByThreadKey,[e]:{...r,...n}}}:t}),i=(t,i,a=!0)=>{let o=e.get(t);e.delete(t);let s=n().chatsByThreadKey[t];s?.pending&&r(t,{pending:null,error:i,draft:s.draft||s.pending.question,failedQuestion:s.draft?s.pending.question:null}),o&&a&&o.api.cancelSideQuestion({requestId:o.requestId}).catch(()=>{})};return{chatsByThreadKey:{},open:(e,r,i)=>{let a=n().chatsByThreadKey[e];t(t=>({chatsByThreadKey:{...t.chatsByThreadKey,[e]:a?{...a,open:!0,...i===void 0?{}:{draft:i}}:{open:!0,draft:i??``,modelSelection:r,exchanges:[],pending:null,error:null,failedQuestion:null}}}))},close:e=>r(e,{open:!1}),setDraft:(e,t)=>r(e,{draft:t}),restoreFailedQuestion:e=>{let t=n().chatsByThreadKey[e];t?.failedQuestion&&r(e,{draft:[t.draft,t.failedQuestion].filter(Boolean).join(`
@@ -177,8 +177,8 @@ XID_Start XIDS`.split(/\s/).map(e=>[Mb(e),e])),Ex=new Map([[`s`,ux(383)],[ux(383
177
177
  `)+1,i.lastIndexOf(`
178
178
  `)).replace(/\r$/,``);return l.replace(/\r\n/g,`
179
179
  `)===c?l:c}function eE(e){return e.type===`definition`||e.type===`footnoteDefinition`||`children`in e&&e.children.some(e=>eE(e))}function tE(e,t,n){if(e.position)for(let r of[e.position.start,e.position.end])r.offset!==void 0&&(r.offset+=t),r.line+=n;if(`children`in e)for(let r of e.children)tE(r,t,n)}function nE(e){let t;return(n,r)=>{if(n.includes(`\r`)||n.includes(``))return e(n,r);let i=t&&n.startsWith(t.source)?t:void 0,a;if(i){if(a=e(n.slice(i.offset),r),eE(a))return e(n,r);tE(a,i.offset,i.line-1),a.position&&(a.position.start={line:1,column:1,offset:0}),a.children.unshift(...structuredClone(i.children))}else if(a=e(n,r),eE(a))return a;for(let e=a.children.length-1;e>=0;e--){let r=a.children[e];if(r?.type!==`code`)continue;let o=r.position?.start.offset,s=r.position?.end.offset;if(o===void 0||s===void 0)continue;if(i&&s<i.offset)break;let c=n.slice(o,s),l=/^ {0,3}(`{3,}|~{3,})[^\n]*\n/.exec(c)?.[1];if(!l)continue;let u=c.slice(c.lastIndexOf(`
180
- `)+1),d=RegExp(`^ {0,3}${l[0]}{${l.length},}[ \t]*$`),f=/^\n[ \t]*\n/.exec(n.slice(s))?.[0];if(!d.test(u)||!f)continue;let p=s+f.length;t={source:n.slice(0,p),offset:p,line:r.position.end.line+2,children:structuredClone(a.children.slice(0,e+1))};break}return a}}function rE(){let e;return function(){let t=this.parser;if(!t)return;e??=nE((e,n)=>t(e,n));let n=e,r=!1;this.parser=(e,i)=>r?t(e,i):(r=!0,n(e,i))}}var iE=null,aE=null;function oE(){return iE?Promise.resolve(iE):(aE??=r(()=>import(`./vscode-icons-LDoILSKI.js`).then(e=>(iE=e.getVscodeIconUrlForEntry,iE)),[]).catch(e=>{throw aE=null,e}),aE)}function sE(e,t,n){let r=(0,J.c)(9),i;r[0]!==t||r[1]!==e||r[2]!==n?(i=()=>iE?iE(e,t,n):null,r[0]=t,r[1]=e,r[2]=n,r[3]=i):i=r[3];let[a,o]=(0,q.useState)(i),s,c;return r[4]!==t||r[5]!==e||r[6]!==n?(s=()=>{if(iE){o(iE(e,t,n));return}let r=!1;return o(null),oE().then(i=>{r||o(i(e,t,n))}).catch(()=>{r||o(null)}),()=>{r=!0}},c=[t,e,n],r[4]=t,r[5]=e,r[6]=n,r[7]=s,r[8]=c):(s=r[7],c=r[8]),(0,q.useEffect)(s,c),a}var cE=(0,q.memo)(function(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(null),i=sE(e.pathValue,e.kind,e.theme);if(!i||i!==null&&n===i){let n;return t[0]!==e.className||t[1]!==e.kind?(n=e.kind===`directory`?(0,Y.jsx)(co,{className:G(`size-4 text-muted-foreground/80`,e.className)}):(0,Y.jsx)(mi,{className:G(`size-4 text-muted-foreground/80`,e.className)}),t[0]=e.className,t[1]=e.kind,t[2]=n):n=t[2],n}let a;t[3]===e.className?a=t[4]:(a=G(`size-4 shrink-0`,e.className),t[3]=e.className,t[4]=a);let o;t[5]===i?o=t[6]:(o=()=>r(i),t[5]=i,t[6]=o);let s;return t[7]!==i||t[8]!==a||t[9]!==o?(s=(0,Y.jsx)(`img`,{src:i,alt:``,"aria-hidden":`true`,className:a,loading:`lazy`,onError:o}),t[7]=i,t[8]=a,t[9]=o,t[10]=s):s=t[10],s});function lE(e){return e.split(/[\s:_-]+/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function uE(e){return e.replaceAll(`\\`,`/`)}function dE(e){return e.displayName?.trim()||lE(e.name)}function fE(e){let t=uE(e.path);if(t.includes(`/.codex/plugins/`)||t.includes(`/.agents/plugins/`))return`App`;let n=e.scope?.trim().toLowerCase();return n===`system`?`System`:n===`project`||n===`workspace`||n===`local`?`Project`:n===`user`||n===`personal`?`Personal`:n?lE(n):null}var pE=`inline-flex max-w-full select-none items-center gap-1 rounded-md border border-border/70 bg-accent/40 px-1.5 py-px font-medium text-[12px] leading-[1.1] text-foreground align-middle`,mE=`size-3.5 shrink-0 opacity-85`,hE=`truncate select-none leading-tight`,gE=`inline-flex max-w-full select-none items-center gap-1 rounded-md border border-fuchsia-500/25 bg-fuchsia-500/12 px-1.5 py-px font-medium text-[12px] leading-[1.1] text-fuchsia-700 align-middle dark:text-fuchsia-300`,_E=`<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.85" stroke-linecap="round" stroke-linejoin="round"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"/><path d="m3.3 7 8.7 5 8.7-5"/><path d="M12 22V12"/></svg>`,vE=`ml-0.5 inline-flex size-3.5 shrink-0 cursor-pointer items-center justify-center rounded-sm text-muted-foreground/72 transition-colors hover:bg-foreground/6 hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`;function yE(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function bE(e){let t=e.trim();if(t.length===0)return null;let n=t.split(/(\s+)/).map(e=>/\s+/.test(e)?`\\s+`:yE(e)).join(``);return new RegExp(n,`gi`)}function xE(e){return e.message.role===`user`?yt(e.message.text).visibleText:e.message.text}function SE(e){let t=bE(e.query);if(!t)return[];let n=[];for(let r of e.timelineEntries){if(r.kind!==`message`||r.message.role!==`user`&&r.message.role!==`assistant`)continue;let e=xE(r),i=0;t.lastIndex=0;for(let a of e.matchAll(t)){let e=a.index??0,t=a[0]??``;if(t.length===0)continue;let o=e+t.length,s=`${r.message.id}:${e}:${o}:${i}`;n.push({id:s,messageId:r.message.id,occurrenceIndex:n.length,messageOccurrenceIndex:i,start:e,end:o,text:t}),i+=1}}return n}function CE(e,t){return t<=0?0:Math.min(Math.max(0,e),t-1)}function wE(e){return e.matchCount<=0?0:e.direction===`previous`?(e.currentIndex-1+e.matchCount)%e.matchCount:(e.currentIndex+1)%e.matchCount}function TE(e){let t=bE(e.query);if(!t)return e.text;let n=[],r=0;t.lastIndex=0;for(let i of e.text.matchAll(t)){let t=i.index??0,a=i[0]??``;if(a.length===0)continue;let o=t+a.length;t>r&&n.push(e.text.slice(r,t));let s=e.cursor.occurrenceIndex;e.cursor.occurrenceIndex+=1,n.push((0,Y.jsx)(`mark`,{className:G(`thread-message-search-highlight`,e.activeOccurrenceIndex===s&&`thread-message-search-highlight-active`),"data-thread-message-search-hit":`true`,"data-thread-message-search-active":e.activeOccurrenceIndex===s?`true`:void 0,children:a},`${e.keyPrefix}:thread-search:${t}:${o}:${s}`)),r=o}return n.length===0?e.text:(r<e.text.length&&n.push(e.text.slice(r)),(0,Y.jsx)(Y.Fragment,{children:n}))}var EE=/(^|\s)\$([a-zA-Z][a-zA-Z0-9:_-]*)(?=\s|$)/g;function DE(e){return e.highlight?TE({text:e.text,query:e.highlight.query,activeOccurrenceIndex:e.highlight.activeOccurrenceIndex,cursor:e.highlight.cursor,keyPrefix:`${e.highlight.keyPrefix}:${e.start}`}):e.text}function OE(e){let t=(0,J.c)(14),n,r;if(t[0]!==e.searchHighlight||t[1]!==e.skills||t[2]!==e.text){r=Symbol.for(`react.early_return_sentinel`);bb0:{let i=[],a=0;for(let t of e.text.matchAll(EE)){let n=t[1]??``,r=t[2]??``,o=(t.index??0)+n.length,s=`$${r}`,c=e.skills.find(e=>e.name===r);c&&(o>a&&i.push(DE({text:e.text.slice(a,o),start:a,highlight:e.searchHighlight})),i.push((0,Y.jsx)(AE,{skill:c,rawText:s},`${o}:${r}`)),a=o+s.length)}if(a===0){let n;t[5]!==e.searchHighlight||t[6]!==e.text?(n=DE({text:e.text,start:0,highlight:e.searchHighlight}),t[5]=e.searchHighlight,t[6]=e.text,t[7]=n):n=t[7];let i;t[8]===n?i=t[9]:(i=(0,Y.jsx)(Y.Fragment,{children:n}),t[8]=n,t[9]=i),r=i;break bb0}if(a<e.text.length){let n;t[10]!==a||t[11]!==e.searchHighlight||t[12]!==e.text?(n=DE({text:e.text.slice(a),start:a,highlight:e.searchHighlight}),t[10]=a,t[11]=e.searchHighlight,t[12]=e.text,t[13]=n):n=t[13],i.push(n)}n=(0,Y.jsx)(Y.Fragment,{children:i})}t[0]=e.searchHighlight,t[1]=e.skills,t[2]=e.text,t[3]=n,t[4]=r}else n=t[3],r=t[4];return r===Symbol.for(`react.early_return_sentinel`)?n:r}function kE(e,t,n){return q.Children.map(e,e=>typeof e==`string`?(0,Y.jsx)(OE,{text:e,skills:t,searchHighlight:n}):!(0,q.isValidElement)(e)||e.type===`code`||e.type===`a`||!(`children`in e.props)?e:(0,q.cloneElement)(e,void 0,kE(e.props.children,t,n)))}function AE(e){let t=(0,J.c)(10),n;t[0]===e.rawText?n=t[1]:(n=(0,Y.jsx)(`span`,{className:`sr-only`,children:e.rawText}),t[0]=e.rawText,t[1]=n);let r;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:mE,dangerouslySetInnerHTML:{__html:_E}}),t[2]=r):r=t[2];let i;t[3]===e.skill?i=t[4]:(i=dE(e.skill),t[3]=e.skill,t[4]=i);let a;t[5]===i?a=t[6]:(a=(0,Y.jsxs)(`span`,{"aria-hidden":`true`,className:gE,children:[r,(0,Y.jsx)(`span`,{className:hE,children:i})]}),t[5]=i,t[6]=a);let o;return t[7]!==n||t[8]!==a?(o=(0,Y.jsxs)(`span`,{className:`inline-flex align-middle leading-none`,children:[n,a]}),t[7]=n,t[8]=a,t[9]=o):o=t[9],o}var jE={light:`pierre-light`,dark:`pierre-dark`};function ME(e){return e===`dark`?jE.dark:jE.light}var NE=2166136261,PE=16777619,FE=2654435769,IE=2246822507;function LE(e,t=NE,n=PE){let r=t>>>0;for(let t=0;t<e.length;t+=1)r^=e.charCodeAt(t),r=Math.imul(r,n)>>>0;return r>>>0}function RE(e,t=`diff-panel`){let n=e.replace(/^\n+|\n+$/g,``),r=LE(n,NE,PE).toString(36),i=LE(n,FE,IE).toString(36);return`${t}:${n.length}:${r}:${i}`}var zE={sourceCharacters:2e4,tokens:400,statements:200,lineCharacters:1e3,edges:100,cacheBytes:5242880,cacheEntries:50,pending:32};function BE(e){return/^(mermaid|mmd)$/i.test(e)}function VE(e){if(e.length>zE.sourceCharacters||/%%\s*\{|^\s*---|@|\\|\$\$|<[a-z!/]|&#?|\b(?:https?|data|javascript|file):|url\s*\(/im.test(e)||/\b(?:click|classDef|class|style|linkStyle|links|link|callback|accDescr)\b/i.test(e))return!1;let t=e.split(/[\n;]/);if(t.length>zE.statements||t.some(e=>e.length>zE.lineCharacters)||(e.match(/[\p{L}\p{N}_]+/gu)?.length??0)>zE.tokens)return!1;let n=t.find(e=>e.trim()&&!e.trimStart().startsWith(`%%`))?.trim();return n!==void 0&&/^(?:(?:flowchart|graph)\s+(?:TB|TD|BT|RL|LR)\b|sequenceDiagram\b)/.test(n)}function HE(e,t,n){if(t===void 0||n===void 0)return!1;let r=e.slice(t,n).trimEnd().split(`
181
- `);if(r.length<2)return!1;let i=/^ {0,3}(`{3,}|~{3,})/.exec(r[0]);if(!i)return!1;let a=i[1],o=r.at(-1).trim();return o.length>=a.length&&[...o].every(e=>e===a[0])}var UE=new Oi(zE.cacheEntries,zE.cacheBytes),WE=new Map,GE=Promise.resolve(),KE=0;function qE(e,t){return JSON.stringify([t,e])}function JE(e,t){return UE.get(qE(e,t))||null}function YE(e,t,n){if(!n()||!VE(e))return Promise.resolve(null);let i=qE(e,t),a=UE.get(i);if(a!==null)return Promise.resolve(a||null);let o=WE.get(i);if(o)return o.consumers.add(n),o.promise;if(WE.size>=zE.pending)return Promise.resolve(null);let s=new Set([n]),c=()=>[...s].some(e=>e()),l=GE.then(async()=>{if(!c()||(await new Promise(e=>setTimeout(e,0)),!c()))return null;let{renderMermaidImage:n}=await r(async()=>{let{renderMermaidImage:e}=await import(`./mermaidEngine-3NZnIFOn.js`);return{renderMermaidImage:e}},[]);if(!c())return null;let a;try{a=await n(e,t,`ryco-mermaid-${++KE}`)}catch(e){throw c()&&UE.set(i,!1,2*i.length),e}if(!c())return null;let o=2*(i.length+a.src.length);return o<=zE.cacheBytes&&UE.set(i,a,o),a}).finally(()=>WE.delete(i));return WE.set(i,{promise:l,consumers:s}),GE=l.catch(()=>void 0),l}function XE(e){let t=(0,J.c)(28),{source:n,theme:r,fallback:i}=e,a;t[0]!==n||t[1]!==r?(a=()=>JE(n,r),t[0]=n,t[1]=r,t[2]=a):a=t[2];let[o,s]=(0,q.useState)(a),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)($E),m=(0,q.useRef)(null),h,g;t[3]!==o||t[4]!==f?(h=()=>{if(o||f)return;let e=new IntersectionObserver(t=>{t.some(QE)&&(p(!0),e.disconnect())},{rootMargin:`200px`});return m.current&&e.observe(m.current),()=>e.disconnect()},g=[o,f],t[3]=o,t[4]=f,t[5]=h,t[6]=g):(h=t[5],g=t[6]),(0,q.useEffect)(h,g);let _,v;t[7]!==u||t[8]!==o||t[9]!==c||t[10]!==n||t[11]!==r||t[12]!==f?(_=()=>{if(!f||o||u||c)return;let e=!0;return YE(n,r,()=>e).then(t=>{e&&(t?s(t):d(!0))},()=>{e&&d(!0)}),()=>{e=!1}},v=[n,r,f,o,u,c],t[7]=u,t[8]=o,t[9]=c,t[10]=n,t[11]=r,t[12]=f,t[13]=_,t[14]=v):(_=t[13],v=t[14]),(0,q.useEffect)(_,v);let y=o&&!c&&!u?`diagram`:`source`,b;t[15]!==u||t[16]!==o||t[17]!==c?(b=o&&!u?(0,Y.jsx)(`button`,{type:`button`,className:`chat-markdown-mermaid-toggle`,"aria-pressed":c,onClick:()=>{l(ZE)},children:c?`Show diagram`:`Show source`}):null,t[15]=u,t[16]=o,t[17]=c,t[18]=b):b=t[18];let x;t[19]!==u||t[20]!==i||t[21]!==o||t[22]!==c?(x=o&&!c&&!u?(0,Y.jsx)(`img`,{src:o.src,width:o.width,height:o.height,alt:`Mermaid diagram; use Show source to read its definition`,onError:()=>d(!0)}):i,t[19]=u,t[20]=i,t[21]=o,t[22]=c,t[23]=x):x=t[23];let S;return t[24]!==y||t[25]!==b||t[26]!==x?(S=(0,Y.jsxs)(`div`,{ref:m,className:`chat-markdown-mermaid`,"data-mermaid":y,children:[b,x]}),t[24]=y,t[25]=b,t[26]=x,t[27]=S):S=t[27],S}function ZE(e){return!e}function QE(e){return e.isIntersecting}function $E(){return typeof IntersectionObserver>`u`}var eD=.16,tD=2e3,nD=.15,rD=.05;function iD(e,t){if(t<=0||t>=e.length)return t;let n=e.charCodeAt(t-1);return n>=55296&&n<=56319?t-1:t}function aD(e,t){let n=(0,J.c)(10),r=rs(`(prefers-reduced-motion: reduce)`),i=t&&!r,[a,o]=(0,q.useState)(e),s=(0,q.useRef)(e),c=(0,q.useRef)(e.length),l=(0,q.useRef)(e.length),u=(0,q.useRef)(0),d=(0,q.useRef)(null),f=(0,q.useRef)(oD),p=(0,q.useRef)(0),m;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>{d.current!==null&&(cancelAnimationFrame(d.current),d.current=null)},n[0]=m):m=n[0];let h=m,g;n[1]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{d.current===null&&(d.current=requestAnimationFrame(e=>{d.current=null,f.current(e)}))},n[1]=g):g=n[1];let _=g,v,y;n[2]===Symbol.for(`react.memo_cache_sentinel`)?(v=()=>{f.current=e=>{let t=p.current,n=t?Math.min((e-t)/1e3,rD):0;p.current=e;let r=s.current,i=r.length;c.current>i&&(c.current=i);let a=i-c.current;if(a<=0){u.current=0,p.current=0;return}let d=Math.min(tD,a/eD);u.current+=(d-u.current)*nD,c.current=Math.min(i,c.current+u.current*n);let f=iD(r,Math.floor(c.current));f!==l.current&&(l.current=f,o(f>=i?r:r.slice(0,f))),i-c.current>0?_():(u.current=0,p.current=0)}},y=[_],n[2]=v,n[3]=y):(v=n[2],y=n[3]),(0,q.useEffect)(v,y);let b,x;n[4]!==i||n[5]!==e?(b=()=>{let t=s.current,n=e.length>=t.length&&e.startsWith(t);if(s.current=e,!i||!n){h(),c.current=e.length,l.current=e.length,u.current=0,p.current=0,o(e);return}e.length>c.current&&_()},x=[i,h,_,e],n[4]=i,n[5]=e,n[6]=b,n[7]=x):(b=n[6],x=n[7]),(0,q.useEffect)(b,x);let S,C;return n[8]===Symbol.for(`react.memo_cache_sentinel`)?(S=()=>h,C=[h],n[8]=S,n[9]=C):(S=n[8],C=n[9]),(0,q.useEffect)(S,C),i?a:e}function oD(){}function sD(e){return e.replaceAll(`\\`,`/`)}function cD(e){return/^\/[A-Za-z]:\//.test(e)?e.slice(1):e}function lD(e){return e.replace(/[\\/]+$/,``)}function uD(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t>=0?e.slice(t+1):e}function dD(e){return e.replace(/^\.\/+/,``).replace(/^\/+/,``)}function fD(e,t){let{path:n,line:r,column:i}=Kd(e),a=cD(sD(n)),o=a;if(t){let e=cD(sD(lD(t))),n=uD(e),r=a.toLowerCase(),i=e.toLowerCase(),s=`${i}/`,c=`${n.toLowerCase()}/`;if(r===i)o=n;else if(r.startsWith(s))o=`${n}/${a.slice(e.length+1)}`;else if(!a.startsWith(`/`)){let e=dD(a);o=r.startsWith(c)?a:`${n}/${e}`}}return r?`${o}:${r}${i?`:${i}`:``}`:o}var pD=/^[A-Za-z]:[\\/]/,mD=/^\\\\/,hD=/^([A-Za-z][A-Za-z0-9+.-]*):(.*)$/,gD=/^(~\/|\.{1,2}\/)/,_D=/^[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)+(?::\d+){0,2}$/,vD=/^[A-Za-z0-9._-]+\.[A-Za-z0-9_-]+(?::\d+){0,2}$/,yD=/:\d+(?::\d+)?$/,bD=/^\d+(?::\d+)?$/,xD=[`/Users/`,`/home/`,`/tmp/`,`/var/`,`/etc/`,`/opt/`,`/mnt/`,`/Volumes/`,`/private/`,`/root/`];function SD(e){try{return decodeURIComponent(e)}catch{return e}}function CD(e){let t=e.indexOf(`#`),n=t>=0?e.slice(0,t):e,r=t>=0?e.slice(t):``,i=n.indexOf(`?`);return{path:i>=0?n.slice(0,i):n,hash:r}}function wD(e,t){try{let n=new URL(e);if(n.protocol.toLowerCase()!==`file:`)return null;let r=n.pathname;if(r.length===0)return null;let i=/^\/[A-Za-z]:[\\/]/.test(r)?r.slice(1):r;return{path:t?.decodePath===!1?i:SD(i),hash:n.hash}}catch{return null}}function TD(e){if(!e)return null;let t=wD(e.trim(),{decodePath:!1});return t?`${t.path}${t.hash}`:null}function ED(e){if(!e.startsWith(`/`))return!1;if(xD.some(t=>e.startsWith(t))||yD.test(e))return!0;let t=e.slice(e.lastIndexOf(`/`)+1);return/\.[A-Za-z0-9_-]+$/.test(t)}function DD(e,t){if(!t||yD.test(e))return e;let n=t.match(/^#L(\d+)(?:C(\d+))?$/i);if(!n?.[1])return e;let r=n[1],i=n[2];return`${e}:${r}${i?`:${i}`:``}`}function OD(e){return pD.test(e)||mD.test(e)||gD.test(e)?!0:e.startsWith(`/`)?ED(e):_D.test(e)||vD.test(e)}function kD(e){return gD.test(e)||!e.startsWith(`/`)&&!pD.test(e)&&!mD.test(e)}function AD(e){let t=e.match(hD);if(!t)return!1;let n=t[2]??``;return n.startsWith(`//`)?!0:!bD.test(n)}function jD(e,t){if(!e)return null;let n=e.trim();if(n.length===0||n.startsWith(`#`))return null;let r=n.toLowerCase().startsWith(`file:`)?wD(n):null,i=r??CD(n),a=r?i.path.trim():SD(i.path.trim()),o=SD(i.hash.trim());if(a.length===0||!pD.test(a)&&!mD.test(a)&&AD(a)||!OD(a))return null;let s=DD(a,o);return kD(s)?t?$d(s,t):null:s}function MD(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t>=0?e.slice(t+1):e}function ND(e,t){let n=jD(e,t);if(!n)return null;let{path:r,line:i,column:a}=Kd(n),o=i?Number.parseInt(i,10):NaN,s=a?Number.parseInt(a,10):NaN,c=Number.isFinite(o)?o:void 0,l=Number.isFinite(s)?s:void 0;return{filePath:r,targetPath:n,displayPath:fD(n,t),basename:MD(r),...c===void 0?{}:{line:c},...l===void 0?{}:{column:l}}}function PD(e,t){if(!t||!e?.startsWith(`/ryco/thread/`))return null;let n=e.slice(13);try{let e=decodeURIComponent(n);if(!e||e.length>256||e.includes(`/`)||e.includes(`\\`))return null;for(let t of e)if(t.charCodeAt(0)<32)return null;return`/${encodeURIComponent(t)}/${encodeURIComponent(e)}`}catch{return null}}var FD=/^([A-Za-z][A-Za-z0-9+.-]*):/,ID=/^[A-Za-z]:[\\/]/;function LD(e){try{return decodeURIComponent(e)}catch{return null}}function RD(e){let t=[e.indexOf(`?`),e.indexOf(`#`)].filter(e=>e>=0).reduce((e,t)=>Math.min(e,t),e.length);return e.slice(0,t)}function zD(e){let t=e.replaceAll(`\\`,`/`),n=t.match(/^([A-Za-z]:)\//)?.[1];if(!(t.startsWith(`/`)||n!==void 0)||t.startsWith(`//`))return null;let r=[];for(let e of t.slice(n?n.length+1:1).split(`/`))if(e.length!==0&&e!==`.`){if(e===`..`){if(r.length===0)return null;r.pop();continue}r.push(e)}return`${n?`${n}/`:`/`}${r.join(`/`)}`}function BD(e){try{let t=new URL(e);if(t.protocol!==`file:`||t.hostname&&t.hostname!==`localhost`)return null;let n=LD(t.pathname);return n?/^\/[A-Za-z]:\//.test(n)?n.slice(1):n:null}catch{return null}}function VD(e,t){if(!e||!t)return null;let n=e.trim();if(!n||n.includes(`\0`))return null;let r=ID.test(n)?void 0:n.match(FD)?.[1]?.toLowerCase();if(r&&r!==`file`)return null;let i=r===`file`?BD(n):LD(RD(n));if(!i)return null;let a=zD(t);if(!a)return null;let o=zD(i.startsWith(`/`)||ID.test(i)?i:`${a}/${i}`);if(!o)return null;let s=ID.test(a),c=s?a.toLowerCase():a,l=s?o.toLowerCase():o;if(l===c||!l.startsWith(`${c}/`))return null;let u=o.slice(a.length+1);return u.length>0?u:null}function HD(e){if(!e)return!1;let t=e.trim();return/^https:\/\//i.test(t)||/^data:image\/(?:png|jpeg|gif|webp);base64,[A-Za-z0-9+/=\s]+$/i.test(t)}var UD=class extends q.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}render(){return this.state.hasError?this.props.fallback:this.props.children}},WD=[],GD=(0,q.memo)(function(e){let t=(0,J.c)(12),[n,r]=(0,q.useState)(null),[i,a]=(0,q.useState)(!1),o,s;if(t[0]!==e.cwd||t[1]!==e.environmentId||t[2]!==e.relativePath?(o=()=>{let t=!0;r(null),a(!1);let n=Dr(e.environmentId);return n?(n.projects.readFileBinary({cwd:e.cwd,relativePath:e.relativePath}).then(e=>{t&&r(`data:${e.mimeType};base64,${e.dataBase64}`)}).catch(()=>{t&&a(!0)}),()=>{t=!1}):(a(!0),()=>{t=!1})},s=[e.cwd,e.environmentId,e.relativePath],t[0]=e.cwd,t[1]=e.environmentId,t[2]=e.relativePath,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s),i){let n=e.alt||`Image unavailable`,r;return t[5]===n?r=t[6]:(r=(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`[`,n,`]`]}),t[5]=n,t[6]=r),r}if(!n){let e;return t[7]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`[Loading image…]`}),t[7]=e):e=t[7],e}let c;return t[8]!==e.alt||t[9]!==e.title||t[10]!==n?(c=(0,Y.jsx)(`img`,{src:n,alt:e.alt,title:e.title,loading:`lazy`,decoding:`async`,draggable:!1,className:`max-h-[32rem] max-w-full rounded-lg border border-border/60 object-contain`}),t[8]=e.alt,t[9]=e.title,t[10]=n,t[11]=c):c=t[11],c}),KD=/(?:^|\s)language-([^\s]+)/,qD=new Oi(500,52428800),JD=new Map;function YD(e){let t=e?.match(KD)?.[1]??`text`;return t===`gitignore`?`ini`:t}function XD(e){return typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(e=>XD(e)).join(``):(0,q.isValidElement)(e)?XD(e.props.children):``}function ZD(e){let t=q.Children.toArray(e);if(t.length!==1)return null;let n=t[0];return!(0,q.isValidElement)(n)||n.type!==`code`?null:{className:n.props.className,code:XD(n.props.children)}}function QD(e,t,n){return`${LE(e).toString(36)}:${e.length}:${t}:${n}`}function $D(e,t){return Math.max(e.length*2,t.length*3)}function eO(e){let t=JD.get(e);if(t)return t;let n=_C({themes:[ME(`dark`),ME(`light`)],langs:[e],preferredHighlighter:`shiki-js`}).catch(t=>{if(JD.delete(e),e===`text`)throw t;return eO(`text`)});return JD.set(e,n),n}function tO(e){let t=(0,J.c)(23),{code:n,children:r,terminalSource:i}=e,a=QT(),o=xc()===`phone`,[s,c]=(0,q.useState)(!1),l;t[0]===i?l=t[1]:(l=i===void 0?null:je(i),t[0]=i,t[1]=l);let u=l,[d,f]=(0,q.useState)(!1),p=(0,q.useRef)(null),m;t[2]===n?m=t[3]:(m=()=>{typeof navigator>`u`||navigator.clipboard==null||navigator.clipboard.writeText(n).then(()=>{p.current!=null&&clearTimeout(p.current),f(!0),p.current=setTimeout(()=>{f(!1),p.current=null},1200)}).catch(iO)},t[2]=n,t[3]=m);let h=m,g,_;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>()=>{p.current!=null&&(clearTimeout(p.current),p.current=null)},_=[],t[4]=g,t[5]=_):(g=t[4],_=t[5]),(0,q.useEffect)(g,_);let v;t[6]!==a||t[7]!==s||t[8]!==u||t[9]!==o||t[10]!==i?(v=a&&!o&&i!==void 0?(0,Y.jsx)(`button`,{type:`button`,className:`chat-markdown-insert-button`,disabled:s||u!==null,title:u??`Insert in a new terminal for this thread. Review, then press Enter to execute.`,onClick:()=>{c(!0),a(i).then(rO,nO).finally(()=>c(!1))},children:s?`Inserting…`:`Insert in terminal`}):null,t[6]=a,t[7]=s,t[8]=u,t[9]=o,t[10]=i,t[11]=v):v=t[11];let y=d?`Copied`:`Copy code`,b=d?`Copied`:`Copy code`,x;t[12]===d?x=t[13]:(x=d?(0,Y.jsx)(Yn,{className:`size-3`}):(0,Y.jsx)(Hn,{className:`size-3`}),t[12]=d,t[13]=x);let S;t[14]!==h||t[15]!==y||t[16]!==b||t[17]!==x?(S=(0,Y.jsx)(`button`,{type:`button`,className:`chat-markdown-copy-button`,onClick:h,title:y,"aria-label":b,children:x}),t[14]=h,t[15]=y,t[16]=b,t[17]=x,t[18]=S):S=t[18];let C;return t[19]!==r||t[20]!==v||t[21]!==S?(C=(0,Y.jsxs)(`div`,{className:`chat-markdown-codeblock leading-snug`,children:[v,S,r]}),t[19]=r,t[20]=v,t[21]=S,t[22]=C):C=t[22],C}function nO(e){Ve.add(fc({type:`error`,title:`Unable to insert in terminal`,description:e instanceof Error?e.message:`Terminal insertion failed.`}))}function rO(){Ve.add({type:`success`,title:`Inserted in terminal`,description:`Review the snippet, then press Enter in the terminal to execute.`})}function iO(){}function aO(e){let{children:t,phoneFallback:n}=e;return xc()===`phone`?n:t}function oO(e){let t=(0,J.c)(13),{className:n,code:r,themeName:i}=e,a,o,s;t[0]!==n||t[1]!==r||t[2]!==i?(o=YD(n),a=QD(r,o,i),s=qD.get(a),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s):(a=t[3],o=t[4],s=t[5]);let c=s;if(c!=null){let e;return t[6]===c?e=t[7]:(e=(0,Y.jsx)(`div`,{className:`chat-markdown-shiki`,dangerouslySetInnerHTML:{__html:c}}),t[6]=c,t[7]=e),e}let l;return t[8]!==a||t[9]!==r||t[10]!==o||t[11]!==i?(l=(0,Y.jsx)(sO,{code:r,language:o,themeName:i,cacheKey:a}),t[8]=a,t[9]=r,t[10]=o,t[11]=i,t[12]=l):l=t[12],l}function sO(e){let t=(0,J.c)(18),{code:n,language:r,themeName:i,cacheKey:a}=e,o;t[0]===r?o=t[1]:(o=eO(r),t[0]=r,t[1]=o);let s=(0,q.use)(o),c;try{let e;t[2]!==n||t[3]!==s||t[4]!==r||t[5]!==i?(e=s.codeToHtml(n,{lang:r,theme:i}),t[2]=n,t[3]=s,t[4]=r,t[5]=i,t[6]=e):e=t[6],c=e}catch(e){let a=e;console.warn(`Code highlighting failed for language "${r}", falling back to plain text.`,a instanceof Error?a.message:a);let o;t[7]!==n||t[8]!==s||t[9]!==i?(o=s.codeToHtml(n,{lang:`text`,theme:i}),t[7]=n,t[8]=s,t[9]=i,t[10]=o):o=t[10],c=o}let l=c,u,d;t[11]!==a||t[12]!==n||t[13]!==l?(u=()=>{qD.set(a,l,$D(l,n))},d=[a,n,l],t[11]=a,t[12]=n,t[13]=l,t[14]=u,t[15]=d):(u=t[14],d=t[15]),(0,q.useEffect)(u,d);let f;return t[16]===l?f=t[17]:(f=(0,Y.jsx)(`div`,{className:`chat-markdown-shiki`,dangerouslySetInnerHTML:{__html:l}}),t[16]=l,t[17]=f),f}function cO(e){let t=(0,J.c)(6),{className:n,code:r,preProps:i}=e,a;t[0]!==n||t[1]!==r?(a=(0,Y.jsx)(`code`,{className:n,children:r}),t[0]=n,t[1]=r,t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==a?(o=(0,Y.jsx)(`pre`,{...i,children:a}),t[3]=i,t[4]=a,t[5]=o):o=t[5],o}var lO=/\[[^\]]*]\(([^)\s]+)(?:\s+["'][^"']*["'])?\)/g,uO=`chat-markdown-file-link`,dO=`chat-markdown-file-link-icon`,fO=`chat-markdown-file-link-label`;function pO(e){return e.replaceAll(`\\`,`/`).split(`/`).filter(e=>e.length>0).slice(0,-1)}function mO(e){let t=new Map;for(let n of e){let e=n.replaceAll(`\\`,`/`).split(`/`).filter(e=>e.length>0),r=e[e.length-1];if(!r)continue;let i=t.get(r)??new Set;i.add(n),t.set(r,i)}let n=new Map;for(let e of t.values()){let t=[...e];if(t.length<2)continue;let r=new Map(t.map(e=>[e,pO(e)])),i=new Map;for(let e of t){let n=r.get(e)??[],a=n.length;for(let i=1;i<=n.length;i+=1){let o=n.slice(-i).join(`/`);if(!t.some(t=>t!==e&&(r.get(t)??[]).slice(-i).join(`/`)===o)){a=i;break}}i.set(e,a)}for(let e of t){let t=r.get(e)??[];if(t.length===0)continue;let a=i.get(e)??1,o=Math.min(t.length,Math.max(a,2));n.set(e,t.slice(-o).join(`/`))}}return n}function hO(e){let t=[];for(let n of e.matchAll(lO)){let e=n[1]?.trim();e&&t.push(e)}return t}function gO(e){return TD(e.trim())??e.trim()}var _O=(0,q.memo)(function(e){let t=(0,J.c)(43),{href:n,targetPath:r,displayPath:i,filePath:a,label:o,theme:s,className:c}=e,l;t[0]===r?l=t[1]:(l=()=>{let e=Cn();if(!e){Ve.add({type:`error`,title:`Open in editor is unavailable`});return}lc(e,r).catch(SO)},t[0]=r,t[1]=l);let u=l,d=CO,f;t[2]!==i||t[3]!==u||t[4]!==r?(f=async e=>{let t=Cn();if(!t)return;let n=await t.contextMenu.show([{id:`open`,label:`Open in editor`},{id:`copy-relative`,label:`Copy relative path`},{id:`copy-full`,label:`Copy full path`}],e);if(n===`open`){u();return}if(n===`copy-relative`){d(i,`Relative path`);return}n===`copy-full`&&d(r,`Full path`)},t[2]=i,t[3]=u,t[4]=r,t[5]=f):f=t[5];let p=f,m;t[6]===p?m=t[7]:(m=e=>{e.preventDefault(),e.stopPropagation(),p({x:e.clientX,y:e.clientY})},t[6]=p,t[7]=m);let h=m,g=xc()===`phone`,_;t[8]===p?_=t[9]:(_=e=>{p(e)},t[8]=p,t[9]=_);let v=!g,y;t[10]===v?y=t[11]:(y={disabled:v},t[10]=v,t[11]=y);let b=El(_,y),x;t[12]===c?x=t[13]:(x=G(uO,c),t[12]=c,t[13]=x);let S=b.onPointerDown,C=b.onPointerMove,w=b.onPointerUp,T=b.onPointerCancel,E=b.onPointerLeave,D=b.onClickCapture,O;t[14]===u?O=t[15]:(O=e=>{e.preventDefault(),e.stopPropagation(),u()},t[14]=u,t[15]=O);let k;t[16]!==h||t[17]!==b?(k=e=>{b.onContextMenu(e),!e.defaultPrevented&&h(e)},t[16]=h,t[17]=b,t[18]=k):k=t[18];let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=G(dO,`text-current`),t[19]=A):A=t[19];let j;t[20]!==a||t[21]!==s?(j=(0,Y.jsx)(cE,{pathValue:a,kind:`file`,theme:s,className:A}),t[20]=a,t[21]=s,t[22]=j):j=t[22];let M;t[23]===o?M=t[24]:(M=(0,Y.jsx)(`span`,{className:fO,children:o}),t[23]=o,t[24]=M);let N;t[25]!==n||t[26]!==b.onClickCapture||t[27]!==b.onPointerCancel||t[28]!==b.onPointerDown||t[29]!==b.onPointerLeave||t[30]!==b.onPointerMove||t[31]!==b.onPointerUp||t[32]!==O||t[33]!==k||t[34]!==j||t[35]!==M||t[36]!==x?(N=(0,Y.jsx)(So,{render:(0,Y.jsxs)(`a`,{href:n,className:x,onPointerDown:S,onPointerMove:C,onPointerUp:w,onPointerCancel:T,onPointerLeave:E,onClickCapture:D,onClick:O,onContextMenu:k,children:[j,M]})}),t[25]=n,t[26]=b.onClickCapture,t[27]=b.onPointerCancel,t[28]=b.onPointerDown,t[29]=b.onPointerLeave,t[30]=b.onPointerMove,t[31]=b.onPointerUp,t[32]=O,t[33]=k,t[34]=j,t[35]=M,t[36]=x,t[37]=N):N=t[37];let P;t[38]===i?P=t[39]:(P=(0,Y.jsx)(Co,{side:`top`,className:`max-w-[min(40rem,calc(100vw-2rem))] font-mono text-[11px] leading-tight`,children:(0,Y.jsx)(`div`,{className:`markdown-file-link-tooltip-scroll overflow-x-auto whitespace-nowrap`,children:i})}),t[38]=i,t[39]=P);let F;return t[40]!==N||t[41]!==P?(F=(0,Y.jsxs)(wo,{children:[N,P]}),t[40]=N,t[41]=P,t[42]=F):F=t[42],F},vO);function vO(e,t){return e.href===t.href&&e.targetPath===t.targetPath&&e.displayPath===t.displayPath&&e.filePath===t.filePath&&e.label===t.label&&e.theme===t.theme&&e.className===t.className}function yO(e){let t=(0,J.c)(3),n=!!e.isStreaming,r=aD(e.text,n),i=(0,q.useDeferredValue)(r),a=n?i:r,o;return t[0]!==a||t[1]!==e?(o=(0,Y.jsx)(bO,{...e,text:a}),t[0]=a,t[1]=e,t[2]=o):o=t[2],o}var bO=(0,q.memo)(function({text:e,cwd:t,environmentId:n,isStreaming:r=!1,skills:i=WD,searchHighlight:a,allowTerminalInsertion:o=!1}){Qo(`ChatMarkdown`);let s=r?``:e,{resolvedTheme:c}=kl(),l=ME(c),u=r&&/(?:^|\n) {0,3}(?:`{3}|~{3})/.test(e),d=(0,q.useMemo)(()=>[ga,...u?[rE()]:[]],[u]),f=(0,q.useRef)({occurrenceIndex:0});f.current.occurrenceIndex=0;let p=(0,q.useRef)(void 0);p.current=a?{...a,cursor:f.current,keyPrefix:`chat-markdown`}:void 0;let m=JSON.stringify(hO(e)),h=(0,q.useMemo)(()=>{let e=new Map;for(let n of JSON.parse(m)){let r=gO(n);if(e.has(r))continue;let i=ND(r,t);i&&e.set(r,i)}return e},[t,m]),g=(0,q.useMemo)(()=>mO([...h.values()].map(e=>e.filePath)),[h]),_=(0,q.useCallback)(e=>TD(e)??Sa(e),[]),v=(0,q.useMemo)(()=>({p({node:e,children:t,...n}){return(0,Y.jsx)(`p`,{...n,children:kE(t,i,p.current)})},li({node:e,children:t,...n}){return(0,Y.jsx)(`li`,{...n,children:kE(t,i,p.current)})},blockquote({node:e,children:t,...n}){return(0,Y.jsx)(`blockquote`,{...n,children:kE(t,i,p.current)})},table({node:e,children:t,...n}){return(0,Y.jsx)(`div`,{className:`chat-markdown-table-scroll`,children:(0,Y.jsx)(`table`,{...n,children:t})})},td({node:e,children:t,...n}){return(0,Y.jsx)(`td`,{...n,children:kE(t,i,p.current)})},th({node:e,children:t,...n}){return(0,Y.jsx)(`th`,{...n,children:kE(t,i,p.current)})},a({node:e,href:t,...r}){let a=PD(t,n);if(a)return(0,Y.jsx)(`a`,{...r,href:a,children:r.children});let o=t?gO(t):``,s=o?h.get(o):null;if(!s)return(0,Y.jsx)(`a`,{...r,href:t,target:`_blank`,rel:`noopener noreferrer`,children:kE(r.children,i,p.current)});let l=g.get(s.filePath),u=[s.basename];return typeof l==`string`&&l.length>0&&u.push(l),s.line&&(s.line!==1||s.column)&&u.push(`L${s.line}${s.column?`:C${s.column}`:``}`),(0,Y.jsx)(_O,{href:t??s.targetPath,targetPath:s.targetPath,displayPath:s.displayPath,filePath:s.filePath,label:u.join(` · `),theme:c,className:r.className})},img({node:e,src:r,alt:i,title:a}){let o=VD(r,t);return o&&t&&n?(0,Y.jsx)(GD,{environmentId:n,cwd:t,relativePath:o,alt:i??``,...a?{title:a}:{}}):HD(r)?(0,Y.jsx)(`img`,{src:r,alt:i??``,title:a,loading:`lazy`,decoding:`async`,draggable:!1,referrerPolicy:`no-referrer`,className:`max-h-[32rem] max-w-full rounded-lg border border-border/60 object-contain`}):(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`[`,i||`Image unavailable`,`]`]})},pre({node:e,children:t,...n}){let i=ZD(t);if(!i)return(0,Y.jsx)(`pre`,{...n,children:t});if(r)return i.className?.split(/\s+/).includes(`language-ryco-attachments`)?(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,role:`status`,children:`Preparing files…`}):(0,Y.jsx)(tO,{code:i.code,children:(0,Y.jsx)(cO,{className:i.className,code:i.code,preProps:n})});let a=(0,Y.jsx)(UD,{fallback:(0,Y.jsx)(`pre`,{...n,children:t}),children:(0,Y.jsx)(q.Suspense,{fallback:(0,Y.jsx)(`pre`,{...n,children:t}),children:(0,Y.jsx)(oO,{className:i.className,code:i.code,themeName:l})})});if(BE(YD(i.className))){let t=(0,Y.jsx)(cO,{className:i.className,code:i.code,preProps:n});return(0,Y.jsx)(tO,{code:i.code,children:(0,Y.jsx)(aO,{phoneFallback:a,children:HE(s,e?.position?.start.offset,e?.position?.end.offset)&&VE(i.code)?(0,Y.jsx)(XE,{source:i.code,theme:c,fallback:t},JSON.stringify([c,i.code])):t})})}let u=o&&Ct(YD(i.className))?$T(s,e?.position?.start.offset,e?.position?.end.offset,i.code):void 0;return(0,Y.jsx)(tO,{code:i.code,terminalSource:u,children:a})}}),[l,t,n,g,r,s,h,c,i,o]);return(0,Y.jsx)(`div`,{className:`chat-markdown w-full min-w-0 text-sm leading-relaxed text-foreground/80`,children:(0,Y.jsx)(Ea,{remarkPlugins:d,components:v,urlTransform:_,children:e})})}),xO=(0,q.memo)(yO);function SO(e){Ve.add(fc({type:`error`,title:`Unable to open file`,description:e instanceof Error?e.message:`An error occurred.`}))}function CO(e,t){if(typeof window>`u`||!navigator.clipboard?.writeText){Ve.add(fc({type:`error`,title:`Failed to copy ${t.toLowerCase()}`,description:`Clipboard API unavailable.`}));return}navigator.clipboard.writeText(e).then(()=>{Ve.add({type:`success`,title:`${t} copied`,description:e})},e=>{Ve.add(fc({type:`error`,title:`Failed to copy ${t.toLowerCase()}`,description:e instanceof Error?e.message:`An error occurred.`}))})}var wO=[`#f97316`,`#a855f7`,`#6366f1`,`#3b82f6`,`#0ea5e9`,`#06b6d4`,`#14b8a6`,`#22c55e`,`#84cc16`,`#eab308`,`#ef4444`,`#ec4899`,`#f43f5e`,`#8b5cf6`],TO=5,EO=4,DO=20,OO=.4,kO=EO-OO*2;function AO(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return t>>>0}function jO(e){return wO[AO(e)%wO.length]}function MO(e){let t=jO(e),n=AO(`avatar:${e}`),r=[];for(let e=0;e<TO;e+=1)for(let t=0;t<TO;t+=1){let i=t<3?t:4-t,a=e*3+i;r.push((n>>>a&1)==1)}if(!r.some(Boolean))for(let e=0;e<TO;e+=1)r[e*TO+2]=!0;return{color:t,cells:r}}function NO(e){let t=(0,J.c)(12),{name:n,className:r}=e,i;t[0]===n?i=t[1]:(i=MO(n),t[0]=n,t[1]=i);let{color:a,cells:o}=i,s;t[2]===r?s=t[3]:(s=G(`size-5 shrink-0`,r),t[2]=r,t[3]=s);let c;if(t[4]!==o||t[5]!==a){let e;t[7]===a?e=t[8]:(e=(e,t)=>{if(!e)return null;let n=Math.floor(t/TO),r=t%TO;return(0,Y.jsx)(`rect`,{x:r*EO+OO,y:n*EO+OO,width:kO,height:kO,rx:.6,fill:a},`${n}-${r}`)},t[7]=a,t[8]=e),c=o.map(e),t[4]=o,t[5]=a,t[6]=c}else c=t[6];let l;return t[9]!==s||t[10]!==c?(l=(0,Y.jsx)(`svg`,{viewBox:`0 0 ${DO} ${DO}`,className:s,role:`img`,"aria-hidden":`true`,focusable:`false`,children:c}),t[9]=s,t[10]=c,t[11]=l):l=t[11],l}function PO(e){return`${e} ${e===1?`agent`:`agents`} active`}function FO(e){let t=(0,J.c)(6),{count:n,className:r}=e;if(n<=0)return null;let i;t[0]===r?i=t[1]:(i=G(`absolute flex items-center justify-center rounded-full bg-info font-semibold tabular-nums text-white shadow-[0_0_0_2px_var(--color-background)]`,r),t[0]=r,t[1]=i);let a=n>99?`99+`:n,o;return t[2]!==n||t[3]!==i||t[4]!==a?(o=(0,Y.jsx)(`span`,{"aria-hidden":!0,"data-live-agent-count":n,className:i,children:a}),t[2]=n,t[3]=i,t[4]=a,t[5]=o):o=t[5],o}var IO=n(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):r((n||=self).lru_map=n.lru_map||{})})(e,function(e){let t=Symbol(`newer`),n=Symbol(`older`);class r{constructor(e,t){typeof e!=`number`&&(t=e,e=0),this.size=0,this.limit=e,this.oldest=this.newest=void 0,this._keymap=new Map,t&&(this.assign(t),e<1&&(this.limit=this.size))}_markEntryAsUsed(e){e!==this.newest&&(e[t]&&(e===this.oldest&&(this.oldest=e[t]),e[t][n]=e[n]),e[n]&&(e[n][t]=e[t]),e[t]=void 0,e[n]=this.newest,this.newest&&(this.newest[t]=e),this.newest=e)}assign(e){let r,a=this.limit||Number.MAX_VALUE;this._keymap.clear();let o=e[Symbol.iterator]();for(let e=o.next();!e.done;e=o.next()){let o=new i(e.value[0],e.value[1]);if(this._keymap.set(o.key,o),r?(r[t]=o,o[n]=r):this.oldest=o,r=o,a--==0)throw Error(`overflow`)}this.newest=r,this.size=this._keymap.size}get(e){var t=this._keymap.get(e);return t?(this._markEntryAsUsed(t),t.value):void 0}set(e,r){var a=this._keymap.get(e);return a?(a.value=r,this._markEntryAsUsed(a),this):(this._keymap.set(e,a=new i(e,r)),this.newest?(this.newest[t]=a,a[n]=this.newest):this.oldest=a,this.newest=a,++this.size,this.size>this.limit&&this.shift(),this)}shift(){var e=this.oldest;if(e)return this.oldest[t]?(this.oldest=this.oldest[t],this.oldest[n]=void 0):(this.oldest=void 0,this.newest=void 0),e[t]=e[n]=void 0,this._keymap.delete(e.key),--this.size,[e.key,e.value]}find(e){let t=this._keymap.get(e);return t?t.value:void 0}has(e){return this._keymap.has(e)}delete(e){var r=this._keymap.get(e);return r?(this._keymap.delete(r.key),r[t]&&r[n]?(r[n][t]=r[t],r[t][n]=r[n]):r[t]?(r[t][n]=void 0,this.oldest=r[t]):r[n]?(r[n][t]=void 0,this.newest=r[n]):this.oldest=this.newest=void 0,this.size--,r.value):void 0}clear(){this.oldest=this.newest=void 0,this.size=0,this._keymap.clear()}keys(){return new o(this.oldest)}values(){return new s(this.oldest)}entries(){return this}[Symbol.iterator](){return new a(this.oldest)}forEach(e,n){typeof n!=`object`&&(n=this);let r=this.oldest;for(;r;)e.call(n,r.value,r.key,this),r=r[t]}toJSON(){for(var e=Array(this.size),n=0,r=this.oldest;r;)e[n++]={key:r.key,value:r.value},r=r[t];return e}toString(){for(var e=``,n=this.oldest;n;)e+=String(n.key)+`:`+n.value,n=n[t],n&&(e+=` < `);return e}}e.LRUMap=r;function i(e,r){this.key=e,this.value=r,this[t]=void 0,this[n]=void 0}function a(e){this.entry=e}a.prototype[Symbol.iterator]=function(){return this},a.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:[e.key,e.value]}):{done:!0,value:void 0}};function o(e){this.entry=e}o.prototype[Symbol.iterator]=function(){return this},o.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.key}):{done:!0,value:void 0}};function s(e){this.entry=e}s.prototype[Symbol.iterator]=function(){return this},s.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.value}):{done:!0,value:void 0}}})})),LO=t(IO(),1),RO=Symbol(`IGNORE_RESPONSE`),zO=1e4,BO=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled because the pool terminated`)}},VO=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled before the task completed`)}},HO=class{options;highlighter;preferredHighlighter;renderOptions;renderOptionsRequestVersion=0;renderOptionsVersion=0;initialized=!1;workers=[];queuedTasks=[];queuedTaskByInstance=new Map;taskByHighlightKey=new Map;activeTaskById=new Map;activeRequestByInstance=new Map;nextRequestId=0;themeSubscribers=new Set;workersFailed=!1;statSubscribers=new Set;fileCache;diffCache;_queuedBroadcast;lifecycleGeneration=0;constructor(e,{langs:t,theme:n=ap,useTokenTransformer:r=!1,lineDiffType:i=`word-alt`,maxLineDiffLength:a=1e3,tokenizeMaxLineLength:o=1e3,preferredHighlighter:s=`shiki-js`}){this.options=e,this.preferredHighlighter=s,this.renderOptions={theme:n,useTokenTransformer:r,lineDiffType:i,maxLineDiffLength:a,tokenizeMaxLineLength:o},this.fileCache=new LO.default.LRUMap(e.totalASTLRUCacheSize??100),this.diffCache=new LO.default.LRUMap(e.totalASTLRUCacheSize??100),this.queueInitialization(t)}isWorkingPool(){return!this.workersFailed}getFileResultCache(e){return e.cacheKey==null?void 0:this.fileCache.get(e.cacheKey)}getDiffResultCache(e){return e.cacheKey==null?void 0:this.diffCache.get(e.cacheKey)}inspectCaches(){let{fileCache:e,diffCache:t}=this;return{fileCache:e,diffCache:t}}evictFileFromCache(e){try{return this.fileCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}evictDiffFromCache(e){try{return this.diffCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}async setRenderOptions({theme:e=this.renderOptions.theme??ap,useTokenTransformer:t=this.renderOptions.useTokenTransformer??!1,lineDiffType:n=this.renderOptions.lineDiffType??`word-alt`,maxLineDiffLength:r=this.renderOptions.maxLineDiffLength??1e3,tokenizeMaxLineLength:i=this.renderOptions.tokenizeMaxLineLength??1e3}){let{lifecycleGeneration:a}=this,o=++this.renderOptionsRequestVersion,s=()=>this.isCurrentLifecycle(a)&&this.renderOptionsRequestVersion===o;try{let a={theme:e,useTokenTransformer:t,lineDiffType:n,maxLineDiffLength:r,tokenizeMaxLineLength:i};if(this.isInitialized()||await this.initialize(),!s()||_T(a,this.renderOptions))return;let o=jS(e),c=[];if(bC(a.theme,this.renderOptions.theme)||(c=OC(o)?YT(o):await XT(o)),!s())return;if(this.highlighter!=null)GS(c,this.highlighter);else{let e=await _C({themes:o,langs:[`text`],preferredHighlighter:this.preferredHighlighter});if(!s())return;this.highlighter=e}let l=this.setRenderOptionsOnWorkers(a,c);this.renderOptions=a,this.renderOptionsVersion++,this.diffCache.clear(),this.fileCache.clear(),this.invalidateRenderTasks();for(let e of this.themeSubscribers)e.onThemeChange();await l}catch(e){if(e instanceof BO||!s())return;throw e}}getPreferredHighlighter(){return this.preferredHighlighter}getFileRenderOptions(){let{tokenizeMaxLineLength:e,theme:t,useTokenTransformer:n}=this.renderOptions;return{theme:t,useTokenTransformer:n,tokenizeMaxLineLength:e}}getDiffRenderOptions(){return{...this.renderOptions}}async setRenderOptionsOnWorkers(e,t){if(this.workersFailed)return;this.isInitialized()||await this.initialize();let n=[];for(let r of this.workers){if(!r.initialized)throw console.log({managedWorker:r}),Error(`setRenderOptionsOnWorkers: Somehow we have an uninitialized worker`);n.push(new Promise((n,i)=>{let a=this.generateRequestId(),o={type:`set-render-options`,id:a,request:{type:`set-render-options`,id:a,renderOptions:e,resolvedThemes:t},resolve:n,reject:i,requestStart:Date.now()};this.activeTaskById.set(a,o),r.pendingSetupRequestId=a,r.worker.postMessage(o.request)}))}await Promise.all(n)}subscribeToThemeChanges(e){return this.themeSubscribers.add(e),this.queueBroadcastStateChanges(),()=>{this.unsubscribeToThemeChanges(e),this.queueBroadcastStateChanges()}}unsubscribeToThemeChanges(e){this.themeSubscribers.delete(e),this.queueBroadcastStateChanges()}subscribeToStatChanges(e){return this.statSubscribers.add(e),e(this.getStats()),()=>{this.statSubscribers.delete(e)}}queueBroadcastStateChanges(){this._queuedBroadcast??=requestAnimationFrame(this._broadcastStateChanges)}_broadcastStateChanges=()=>{this._queuedBroadcast!=null&&(cancelAnimationFrame(this._queuedBroadcast),this._queuedBroadcast=void 0);let e=this.getStats();for(let t of this.statSubscribers)t(e)};cleanUpTasks(e){this.detachInstanceFromQueuedTasks(e);let t=this.activeRequestByInstance.get(e);if(t!=null){let n=this.activeTaskById.get(t);GO(n)?(this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeActiveTask(n)):this.activeTaskById.delete(t)}this.activeRequestByInstance.delete(e),this.queueBroadcastStateChanges()}isInitialized(){return this.initialized===!0}async initialize(e=[]){if(this.initialized!==!0){if(this.initialized===!1){let{lifecycleGeneration:t}=this;this.initialized=new Promise((n,r)=>{(async()=>{try{let r=jS(this.renderOptions.theme),i=[];if(i=OC(r)?YT(r):await XT(r),!this.isCurrentLifecycle(t)){n();return}let a=[];if(a=qT(e)?KT(e):await JT(e),!this.isCurrentLifecycle(t)){n();return}let[o]=await Promise.all([_C({themes:r,langs:[`text`,...e],preferredHighlighter:this.preferredHighlighter}),this.initializeWorkers(i,a)]);if(!this.isCurrentLifecycle(t)){this.terminateWorkers(),n();return}this.highlighter=o,this.initialized=!0,this.diffCache.clear(),this.fileCache.clear(),this.drainQueue(),this.queueBroadcastStateChanges(),n()}catch(e){if(e instanceof BO||!this.isCurrentLifecycle(t)){n();return}this.initialized=!1,this.workersFailed=!0,this.cancelActiveWorkerTasks(),this.terminateWorkers(),this.activeTaskById.clear();for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,qO(e));this.queueBroadcastStateChanges(),r(e)}})()}),this.queueBroadcastStateChanges()}else return this.initialized}}async initializeWorkers(e,t){this.workersFailed=!1;let n=[],r=PC(),i=r>0?FC():void 0;this.workers.length>0&&this.terminateWorkers();for(let a=0;a<(this.options.poolSize??8);a++){let a=this.options.workerFactory(),o={worker:a,requestId:void 0,pendingSetupRequestId:void 0,initialized:!1,langs:new Set([`text`,...t.map(({name:e})=>e)]),customExtensionsVersion:0};a.addEventListener(`message`,e=>{this.handleWorkerMessage(o,e.data)}),a.addEventListener(`error`,e=>this.handleWorkerError(o,e)),this.workers.push(o),n.push(new Promise((n,a)=>{let s=this.generateRequestId(),c={type:`initialize`,id:s,request:{type:`initialize`,id:s,renderOptions:this.renderOptions,preferredHighlighter:this.preferredHighlighter,resolvedThemes:e,resolvedLanguages:t,customExtensionsVersion:i==null?void 0:r,customExtensionMap:i},resolve(){o.initialized=!0,n()},reject:a,requestStart:Date.now()};o.pendingSetupRequestId=s,this.activeTaskById.set(s,c),this.executeTask(o,c)}))}let a=this.options.workerInitializationTimeout??zO,o;try{await Promise.race([Promise.all(n),new Promise((e,t)=>{o=setTimeout(()=>{t(Error(`WorkerPoolManager: worker initialization timed out after ${a}ms`))},a)})])}finally{o!=null&&clearTimeout(o)}}handleWorkerError(e,t){console.error(`Worker error:`,t,e);let{pendingSetupRequestId:n}=e;if(n==null)return;let r=this.activeTaskById.get(n);r?.type===`initialize`&&(r.reject(qO(t)),this.cleanWorkerAndTask(e,r))}drainQueue=()=>{if(this._queuedDrain=void 0,this.initialized===!0&&this.queuedTasks.length!==0){for(let e=0;e<this.queuedTasks.length;){let t=this.queuedTasks[e];if(this.hasActiveRequest(t)){e++;continue}let n=WO(t),r=this.getAvailableWorker(n);if(r==null)break;this.queuedTasks.splice(e,1),this.assignWorkerToTask(t,r),this.resolveLanguagesAndExecuteTask(r,t,n)}this.queueBroadcastStateChanges()}};highlightFileAST(e,t){let n=this.getFileResultCache(t);Ow(t)||n!=null&&kC(n.options,this.getFileRenderOptions())||this.hasMatchingFileInstanceTask(e,t)||this.submitTask(e,{type:`file`,file:t})}primeFileHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeFileHighlightCache: worker pool is not working`));let t=this.getOrCreateFileHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateFileHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeFileHighlightCache: priming highlight cache requires file.cacheKey; skipping "${e.name}".`);return}let t=this.getFileResultCache(e),n=this.getFileHighlightKey(e);if(n==null||Ow(e)||t!=null&&kC(t.options,this.getFileRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`file`?r:void 0;{let t=this.submitCacheTask({type:`file`,file:e},n);return t.type===`file`?t:void 0}}getPlainFileAST(e,t,n,r){if(this.highlighter==null){this.queueInitialization();return}return Tw(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,lines:r})}highlightDiffAST(e,t){let n=this.getDiffResultCache(t);GT(t)||n!=null&&_T(n.options,this.getDiffRenderOptions())||this.hasMatchingDiffInstanceTask(e,t)||this.submitTask(e,{type:`diff`,diff:t})}primeDiffHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeDiffHighlightCache: worker pool is not working`));let t=this.getOrCreateDiffHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateDiffHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeDiffHighlightCache: priming highlight cache requires diff.cacheKey; skipping "${e.prevName??e.name}" -> "${e.name}".`);return}let t=this.getDiffResultCache(e),n=this.getDiffHighlightKey(e);if(n==null||GT(e)||t!=null&&_T(t.options,this.getDiffRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`diff`?r:void 0;{let t=this.submitCacheTask({type:`diff`,diff:e},n);return t.type===`diff`?t:void 0}}getPlainDiffAST(e,t,n,r,i){return this.highlighter==null?void 0:VT(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,expandedHunks:r,collapsedContextThreshold:i})}terminate(){this.lifecycleGeneration++,this.cancelActiveWorkerTasks(),this.terminateWorkers();let e=new BO;for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,e);this.fileCache.clear(),this.diffCache.clear(),this.activeRequestByInstance.clear(),this.queuedTasks.length=0,this.queuedTaskByInstance.clear(),this.taskByHighlightKey.clear(),this.activeTaskById.clear(),this.highlighter=void 0,this.initialized=!1,this.workersFailed=!1,this.queueBroadcastStateChanges()}isCurrentLifecycle(e){return this.lifecycleGeneration===e}queueInitialization(e){this.initialize(e).catch(e=>{console.error(e)})}cancelActiveWorkerTasks(){let e=new BO;for(let t of this.activeTaskById.values())`reject`in t?t.reject(e):GO(t)&&this.rejectRenderTaskCallbacks(t,e)}terminateWorkers(){for(let e of this.workers)e.worker.terminate();this.workers.length=0}getStats(){return{managerState:this.initialized===!1?`waiting`:this.initialized===!0?`initialized`:`initializing`,totalWorkers:this.workers.length,workersFailed:this.workersFailed,busyWorkers:this.workers.filter(e=>e.requestId!=null||e.pendingSetupRequestId!=null).length,queuedTasks:this.queuedTasks.length,activeTasks:this.activeTaskById.size,themeSubscribers:this.themeSubscribers.size,fileCacheSize:this.fileCache.size,diffCacheSize:this.diffCache.size}}submitTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.getHighlightKeyForRequest(t),r=n==null?void 0:this.getTaskByHighlightKey(n);if(r!=null){this.detachInstanceFromQueuedTasks(e,r),this.addInstanceToTask(r,e),this.queueBroadcastStateChanges();return}this.detachInstanceFromQueuedTasks(e);let i=this.generateRequestId(),a=Date.now(),{renderOptionsVersion:o}=this,s=(()=>{switch(t.type){case`file`:return{type:`file`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a};case`diff`:return{type:`diff`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a}}})();this.enqueueRenderTask(s,e)}submitCacheTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.generateRequestId(),r=Date.now(),{renderOptionsVersion:i}=this,a=(()=>{switch(e.type){case`file`:return{type:`file`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r};case`diff`:return{type:`diff`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r}}})();return this.enqueueRenderTask(a),a}enqueueRenderTask(e,t){this.queuedTasks.push(e),t!=null&&this.queuedTaskByInstance.set(t,e),e.highlightKey!=null&&this.taskByHighlightKey.set(e.highlightKey,e),this.queueDrain()}async resolveLanguagesAndExecuteTask(e,t,n){try{let r=n.filter(e=>!yp(e));r.length>0&&_C({themes:jS(this.renderOptions.theme),langs:[`text`,...r],preferredHighlighter:this.preferredHighlighter}).catch(e=>{console.error(e)});let i=n.filter(t=>!e.langs.has(t));if(i.length>0&&(qT(i)?t.request.resolvedLanguages=KT(i):t.request.resolvedLanguages=await JT(i)),!this.activeTaskById.has(t.id)){e.requestId===t.id&&(this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain());return}this.executeTask(e,t)}catch(n){this.rejectRenderTaskCallbacks(t,qO(n)),this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}}handleWorkerMessage(e,t){let n=this.activeTaskById.get(t.id);try{if(n==null)throw RO;if(t.type===`error`){let e=Error(t.error);if(t.stack&&(e.stack=t.stack),`reject`in n)n.reject(e);else if(GO(n))this.notifyHighlightError(n,e),this.rejectRenderTaskCallbacks(n,e);else throw Error(`handleWorkerMessage: unknown task type`);throw e}switch(t.requestType){case`initialize`:if(n.type!==`initialize`)throw Error(`handleWorkerMessage: task/response dont match`);this.syncCustomExtensionVersion(e,n.request),n.resolve();break;case`set-render-options`:if(n.type!==`set-render-options`)throw Error(`handleWorkerMessage: task/response dont match`);n.resolve();break;case`file`:{if(n.type!==`file`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!kC(i,this.getFileRenderOptions()))throw RO;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.fileCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyFileInstances(n,r,i);break}case`diff`:{if(n.type!==`diff`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!_T(i,this.getDiffRenderOptions()))throw RO;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.diffCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyDiffInstances(n,r,i);break}}}catch(e){e!==RO&&console.error(e,n,t)}this.cleanWorkerAndTask(e,n,t.id),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}_queuedDrain;queueDrain(){this._queuedDrain??(this._queuedDrain=Promise.resolve().then(this.drainQueue),this.queueBroadcastStateChanges())}assignWorkerToTask(e,t){t.requestId=e.id,GO(e)&&(this.clearQueuedInstanceRequests(e),this.trackInstanceRequests(e)),this.activeTaskById.set(e.id,e)}cleanWorkerAndTask(e,t,n=t?.id){e.requestId===n&&(e.requestId=void 0),e.pendingSetupRequestId===n&&(e.pendingSetupRequestId=void 0),t!=null&&(GO(t)&&(this.rejectRenderTaskCallbacks(t,new VO),this.clearInstanceRequests(t),this.clearHighlightKey(t)),this.activeTaskById.delete(t.id))}executeTask(e,t){UO(t.request)&&this.maybeAttachCustomExtensions(e,t.request),this.activeTaskById.has(t.id)||this.assignWorkerToTask(t,e);for(let n of WO(t))e.langs.add(n);try{t.type===`file`?t.cacheKeyAtDispatch=t.request.file.cacheKey:t.type===`diff`&&(t.cacheKeyAtDispatch=t.request.diff.cacheKey),e.worker.postMessage(t.request)}catch(n){console.error(`Failed to post message to worker:`,n),GO(t)?(this.notifyHighlightError(t,n),this.rejectRenderTaskCallbacks(t,qO(n))):`reject`in t&&t.reject(n),this.cleanWorkerAndTask(e,t),this.queuedTasks.length>0&&this.queueDrain()}this.queueBroadcastStateChanges()}maybeAttachCustomExtensions(e,t){if(t.customExtensionsVersion!=null)return;let n=PC();e.customExtensionsVersion>=n||(t.customExtensionsVersion=n,t.customExtensionMap=FC())}syncCustomExtensionVersion(e,t){t.customExtensionsVersion!=null&&(e.customExtensionsVersion=t.customExtensionsVersion)}getAvailableWorker(e){let t;for(let n of this.workers){if(n.requestId!=null||n.pendingSetupRequestId!=null||!n.initialized)continue;if(t=n,e.length===0)break;let r=!0;for(let t of e)if(!n.langs.has(t)){r=!1;break}if(r)break}return t}getFileHighlightKey(e){if(e.cacheKey!=null)return`file:${e.cacheKey}:${this.renderOptionsVersion}`}getDiffHighlightKey(e){if(e.cacheKey!=null)return`diff:${e.cacheKey}:${this.renderOptionsVersion}`}getHighlightKeyForRequest(e){switch(e.type){case`file`:return this.getFileHighlightKey(e.file);case`diff`:return this.getDiffHighlightKey(e.diff)}}hasActiveRequest(e){for(let t of KO(e))if(this.activeRequestByInstance.has(t))return!0;return!1}addInstanceToTask(e,t){e.type,e.instances.add(t),this.activeTaskById.has(e.id)?this.activeRequestByInstance.set(t,e.id):this.queuedTaskByInstance.set(t,e)}detachInstanceFromQueuedTasks(e,t){let n=this.queuedTaskByInstance.get(e);n!=null&&n!==t&&(this.queuedTaskByInstance.delete(e),this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeQueuedTask(n))}detachInstanceFromRenderTask(e,t){e.type,e.instances.delete(t)}removeQueuedTask(e){let t=this.queuedTasks.indexOf(e);t!==-1&&this.queuedTasks.splice(t,1),this.rejectRenderTaskCallbacks(e,new VO),this.clearQueuedInstanceRequests(e),this.clearHighlightKey(e)}removeActiveTask(e){this.rejectRenderTaskCallbacks(e,new VO),this.clearInstanceRequests(e),this.clearHighlightKey(e),this.activeTaskById.delete(e.id)}createRenderTaskCallbacks(e){return new Promise((t,n)=>{e.callbacks.add({resolve:t,reject:n})})}resolveRenderTaskCallbacks(e){for(let t of e.callbacks)t.resolve();e.callbacks.clear()}rejectRenderTaskCallbacks(e,t){for(let n of e.callbacks)n.reject(t);e.callbacks.clear()}invalidateRenderTasks(){for(let e=this.queuedTasks.length-1;e>=0;e--){let t=this.queuedTasks[e];t.renderOptionsVersion!==this.renderOptionsVersion&&this.removeQueuedTask(t)}for(let e of Array.from(this.activeTaskById.values()))GO(e)&&e.renderOptionsVersion!==this.renderOptionsVersion&&this.removeActiveTask(e)}clearQueuedInstanceRequests(e){for(let t of KO(e))this.queuedTaskByInstance.get(t)===e&&this.queuedTaskByInstance.delete(t)}clearHighlightKey(e){e.highlightKey!=null&&this.taskByHighlightKey.get(e.highlightKey)===e&&this.taskByHighlightKey.delete(e.highlightKey)}trackInstanceRequests(e){for(let t of KO(e))this.activeRequestByInstance.set(t,e.id)}clearInstanceRequests(e){for(let t of KO(e))this.activeRequestByInstance.get(t)===e.id&&this.activeRequestByInstance.delete(t)}notifyFileInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.file,t,n)}notifyDiffInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.diff,t,n)}notifyHighlightError(e,t){for(let n of KO(e))this.activeRequestByInstance.get(n)===e.id&&n.onHighlightError(t)}hasMatchingFileInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`file`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&Fw(t,n.request.file))return!0;return!1}hasMatchingDiffInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`diff`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&Pw(n.request.diff,t))return!0;return!1}getTaskByHighlightKey(e){let t=this.taskByHighlightKey.get(e);return t!=null&&this.isCurrentRenderTask(t)?t:void 0}isCurrentRenderTask(e){return e.renderOptionsVersion===this.renderOptionsVersion}*iterateRenderTasks(){for(let e of this.queuedTasks)yield e;for(let e of this.activeTaskById.values())GO(e)&&(yield e)}generateRequestId(){return`req_${++this.nextRequestId}`}};function UO(e){return e.type===`initialize`||e.type===`file`||e.type===`diff`}function WO(e){let t=new Set;if(e.type===`initialize`||e.type===`set-render-options`)return[];switch(e.type){case`file`:t.add(e.request.file.lang??NC(e.request.file.name));break;case`diff`:t.add(e.request.diff.lang??NC(e.request.diff.name)),t.add(e.request.diff.lang??NC(e.request.diff.prevName??`-`))}return t.delete(`text`),Array.from(t)}function GO(e){return e?.type===`file`||e?.type===`diff`}function KO(e){return e.instances}function qO(e){if(e instanceof Error)return e;if(typeof e==`object`&&e){if(`error`in e&&e.error instanceof Error)return e.error;if(`message`in e&&typeof e.message==`string`)return Error(e.message)}return Error(String(e))}var JO;function YO({poolOptions:e,highlighterOptions:t}){return JO??=new HO(e,t),JO}function XO(){JO!=null&&(JO.terminate(),JO=void 0)}var ZO=(0,q.createContext)(void 0),QO=0;function $O({children:e,poolOptions:t,highlighterOptions:n}){let[r]=(0,q.useState)(()=>{if(!(typeof window>`u`))return YO({poolOptions:t,highlighterOptions:n})});return(0,q.useInsertionEffect)(()=>{if(r!=null)return QO++,()=>{QO--}},[r]),(0,q.useEffect)(()=>()=>{QO===0&&XO()},[]),(0,Y.jsx)(ZO.Provider,{value:r,children:e})}function ek(){return(0,q.useContext)(ZO)}function tk(e){let t=(0,J.c)(6),n;bb0:{if(!e){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[0]=e):e=t[0],n=e;break bb0}n=e.turnDiffSummaries}let r=n,i;t[1]===r?i=t[2]:(i=ir(r),t[1]=r,t[2]=i);let a=i,o;return t[3]!==a||t[4]!==r?(o={turnDiffSummaries:r,inferredCheckpointTurnCountByTurnId:a},t[3]=a,t[4]=r,t[5]=o):o=t[5],o}function nk(e){return G(`flex items-center justify-between gap-2 px-4`,a&&e!==`sheet`&&e!==`phone`?`drag-region h-[52px] border-b border-border wco:h-[env(titlebar-area-height)] wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`:`h-12 wco:max-h-[env(titlebar-area-height)]`)}function rk(e){let t=(0,J.c)(10),n=a&&e.mode!==`sheet`&&e.mode!==`phone`,r=e.mode===`inline`?`w-[42vw] min-w-[360px] max-w-[560px] shrink-0 border-l border-border`:`w-full`,i;t[0]===r?i=t[1]:(i=G(`flex h-full min-w-0 flex-col bg-background`,r),t[0]=r,t[1]=i);let o;t[2]!==e.header||t[3]!==e.mode||t[4]!==n?(o=n?(0,Y.jsx)(`div`,{className:nk(e.mode),children:e.header}):(0,Y.jsx)(`div`,{className:`border-b border-border`,children:(0,Y.jsx)(`div`,{className:nk(e.mode),children:e.header})}),t[2]=e.header,t[3]=e.mode,t[4]=n,t[5]=o):o=t[5];let s;return t[6]!==e.children||t[7]!==i||t[8]!==o?(s=(0,Y.jsxs)(`div`,{className:i,children:[o,e.children]}),t[6]=e.children,t[7]=i,t[8]=o,t[9]=s):s=t[9],s}function ik(){let e=(0,J.c)(4),t,n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Y.jsx)(ll,{className:`absolute left-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),n=(0,Y.jsx)(ll,{className:`absolute right-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),e[0]=t,e[1]=n):(t=e[0],n=e[1]);let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[t,n,(0,Y.jsxs)(`div`,{className:`flex gap-1 overflow-hidden px-8 py-0.5`,children:[(0,Y.jsx)(ll,{className:`h-6 w-16 shrink-0 rounded-md`}),(0,Y.jsx)(ll,{className:`h-6 w-24 shrink-0 rounded-md`}),(0,Y.jsx)(ll,{className:`h-6 w-24 shrink-0 rounded-md phone:hidden`})]})]}),e[2]=r):r=e[2];let i;return e[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsxs)(Y.Fragment,{children:[r,(0,Y.jsxs)(`div`,{className:`flex shrink-0 gap-1`,children:[(0,Y.jsx)(ll,{className:`size-7 rounded-md`}),(0,Y.jsx)(ll,{className:`size-7 rounded-md`})]})]}),e[3]=i):i=e[3],i}function ak(e){let t=(0,J.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border/50 px-3 py-2`,children:[(0,Y.jsx)(ll,{className:`h-4 w-32 rounded-full`}),(0,Y.jsx)(ll,{className:`ml-auto h-4 w-20 rounded-full`})]}),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(ll,{className:`h-3 w-full rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-full rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-10/12 rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-11/12 rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-9/12 rounded-full`})]}),t[1]=r):r=t[1];let i;t[2]===e.label?i=t[3]:(i=(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-3 py-4`,children:[r,(0,Y.jsx)(`span`,{className:`sr-only`,children:e.label})]}),t[2]=e.label,t[3]=i);let a;return t[4]!==e.label||t[5]!==i?(a=(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col p-2`,children:(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-md border border-border/60 bg-card/25`,role:`status`,"aria-live":`polite`,"aria-label":e.label,children:[n,i]})}),t[4]=e.label,t[5]=i,t[6]=a):a=t[6],a}function ok(e){return new Worker(`/assets/worker-Bs0l0ezO.js`,{name:e?.name})}var sk=3,ck=120;function lk(e){let t=(0,J.c)(4),{themeName:n}=e,r=ek(),i,a;return t[0]!==n||t[1]!==r?(i=()=>{if(!r)return;let e=r.getDiffRenderOptions();e.theme!==n&&r.setRenderOptions({...e,theme:n}).catch(uk)},a=[n,r],t[0]=n,t[1]=r,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a),null}function uk(){}function dk(e){let t=(0,J.c)(10),{children:n}=e,{resolvedTheme:r}=kl(),i;t[0]===r?i=t[1]:(i=ME(r),t[0]=r,t[1]=i);let a=i,o=typeof navigator>`u`?4:Math.max(1,navigator.hardwareConcurrency||4),s=Math.max(1,Math.min(sk,Math.floor(o/3))),c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c={workerFactory:fk,poolSize:s,totalASTLRUCacheSize:ck},t[2]=c):c=t[2];let l,u;t[3]===a?(l=t[4],u=t[5]):(l={theme:a,tokenizeMaxLineLength:1e3},u=(0,Y.jsx)(lk,{themeName:a}),t[3]=a,t[4]=l,t[5]=u);let d;return t[6]!==n||t[7]!==l||t[8]!==u?(d=(0,Y.jsxs)($O,{poolOptions:c,highlighterOptions:l,children:[u,n]}),t[6]=n,t[7]=l,t[8]=u,t[9]=d):d=t[9],d}function fk(){return new ok}var pk={numeric:!0,sensitivity:`base`};function mk(e){return e.replaceAll(`\\`,`/`).split(`/`).filter(e=>e.length>0)}function hk(e,t){return e.name.localeCompare(t.name,void 0,pk)}function gk(e){return!(`additions`in e)||typeof e.additions!=`number`||!(`deletions`in e)||typeof e.deletions!=`number`?null:{additions:e.additions,deletions:e.deletions}}function _k(e){let t=e.children.map(e=>e.kind===`directory`?_k(e):e),n={...e,children:t};for(;n.children.length===1&&n.children[0]?.kind===`directory`;){let e=n.children[0];n={kind:`directory`,name:`${n.name}/${e.name}`,path:e.path,stat:e.stat,children:e.children}}return n}function vk(e){let t=Array.from(e.directories.values()).toSorted(hk).map(e=>({kind:`directory`,name:e.name,path:e.path,stat:{additions:e.stat.additions,deletions:e.stat.deletions},children:vk(e)})).map(e=>_k(e)),n=e.files.toSorted(hk);return[...t,...n]}function yk(e){return e.reduce((e,t)=>{let n=gk(t);return n?{additions:e.additions+n.additions,deletions:e.deletions+n.deletions}:e},{additions:0,deletions:0})}function bk(e){let t={name:``,path:``,stat:{additions:0,deletions:0},directories:new Map,files:[]};for(let n of e){let e=mk(n.path);if(e.length===0)continue;let r=n.kind===`directory`,i=gk(n),a=[t],o=t;for(let t of r?e:e.slice(0,-1)){let e=o.path?`${o.path}/${t}`:t,n=o.directories.get(t);if(n)o=n;else{let n={name:t,path:e,stat:{additions:0,deletions:0},directories:new Map,files:[]};o.directories.set(t,n),o=n}a.push(o)}if(!r){let t=e.join(`/`),n=e.at(-1);if(!n)continue;o.files.push({kind:`file`,name:n,path:t,stat:i})}if(i)for(let e of a)e.stat.additions+=i.additions,e.stat.deletions+=i.deletions}return vk(t)}function xk(e){return e.additions>0||e.deletions>0}var Sk=(0,q.memo)(function(e){let t=(0,J.c)(14),{additions:n,deletions:r,showParentheses:i}=e,a=i!==void 0&&i,o;t[0]===a?o=t[1]:(o=a&&(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:`(`}),t[0]=a,t[1]=o);let s;t[2]===n?s=t[3]:(s=(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,n]}),t[2]=n,t[3]=s);let c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{className:`mx-0.5 text-muted-foreground/70`,children:`/`}),t[4]=c):c=t[4];let l;t[5]===r?l=t[6]:(l=(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`-`,r]}),t[5]=r,t[6]=l);let u;t[7]===a?u=t[8]:(u=a&&(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:`)`}),t[7]=a,t[8]=u);let d;return t[9]!==o||t[10]!==s||t[11]!==l||t[12]!==u?(d=(0,Y.jsxs)(Y.Fragment,{children:[o,s,c,l,u]}),t[9]=o,t[10]=s,t[11]=l,t[12]=u,t[13]=d):d=t[13],d});function Ck(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>lt(t,e)??$r,t[0]=e,t[1]=n),Rr(n)}function wk(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=lt(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:Ur},t[0]=e,t[1]=n),Rr(Uc(n))}function Tk(e){let t=(0,J.c)(10),n;t[0]!==e.draftId||t[1]!==e.threadRef?(n=e.threadRef??e.draftId??Rt.make(``),t[0]=e.draftId,t[1]=e.threadRef,t[2]=n):n=t[2];let r=wk(n),i;return t[3]!==r||t[4]!==e.providers||t[5]!==e.selectedInstanceId||t[6]!==e.selectedProvider||t[7]!==e.settings||t[8]!==e.threadModelSelection?(i=Xr({draft:r,providers:e.providers,selectedProvider:e.selectedProvider,selectedInstanceId:e.selectedInstanceId,threadModelSelection:e.threadModelSelection,settings:e.settings}),t[3]=r,t[4]=e.providers,t[5]=e.selectedInstanceId,t[6]=e.selectedProvider,t[7]=e.settings,t[8]=e.threadModelSelection,t[9]=i):i=t[9],i}function Ek(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>t.getDraftSession(e),t[0]=e,t[1]=n),Rr(n)}function Dk(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e):null,t[0]=e,t[1]=n),Rr(n)}function Ok(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e)!==null:!1,t[0]=e,t[1]=n),Rr(n)}function kk(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.hasDraftThreadsInEnvironment(e):!1,t[0]=e,t[1]=n),Rr(n)}function Ak(e,t){return e===t?null:t}function jk(e){return e.open&&e.canMaximize&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Mk(e){return!e.open&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Nk(e){let t=(0,J.c)(17),{canMaximize:n,open:r,threadKey:i}=e,[a,o]=(0,q.useState)(null),s,c;t[0]!==a||t[1]!==r||t[2]!==i?(s=()=>{Mk({maximizedThreadKey:a,open:r,threadKey:i})&&o(null)},c=[a,r,i],t[0]=a,t[1]=r,t[2]=i,t[3]=s,t[4]=c):(s=t[3],c=t[4]),(0,q.useEffect)(s,c);let l;t[5]!==n||t[6]!==r||t[7]!==i?(l=()=>{r&&n&&o(e=>Ak(e,i))},t[5]=n,t[6]=r,t[7]=i,t[8]=l):l=t[8];let u=l,d;t[9]!==n||t[10]!==a||t[11]!==r||t[12]!==i?(d=jk({canMaximize:n,maximizedThreadKey:a,open:r,threadKey:i}),t[9]=n,t[10]=a,t[11]=r,t[12]=i,t[13]=d):d=t[13];let f;return t[14]!==d||t[15]!==u?(f={maximized:d,toggleMaximized:u},t[14]=d,t[15]=u,t[16]=f):f=t[16],f}var Pk=new Map;function Fk(e){let t=Pk.get(e);return t?{...t}:void 0}function Ik(e,t){Pk.set(e,Rk(t))}function Lk(e,t){let{diff:n,diffTurnId:r,diffFilePath:i,preview:a,workspaceOpen:o,workspaceTab:s,workspaceAgentKey:c,...l}=e;return{...l,...t}}function Rk(e){return Bk({diff:e.diff,diffTurnId:e.diffTurnId,diffFilePath:e.diffFilePath,preview:e.preview,workspaceOpen:e.workspaceOpen,workspaceTab:e.workspaceTab,workspaceAgentKey:e.workspaceAgentKey})}function zk(e,t){let n=Pk.get(e);n&&Pk.set(t,{...n})}function Bk(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function Vk(e){let t=(0,q.useRef)(null),n=(0,q.useRef)(null),r=t.current!==e.threadKey;if(r){let t=e.threadKey?Fk(e.threadKey):void 0;n.current=e.threadKey&&t&&ou(t)?{threadKey:e.threadKey,search:t}:null}else ou(e.search)&&(n.current=null);let i=n.current?.threadKey===e.threadKey&&!ou(e.search)?n.current.search:void 0,a=r&&i!==void 0,o=i?Lk(e.search,i):e.search;return(0,q.useLayoutEffect)(()=>{if(t.current=e.threadKey,e.threadKey){if(a){e.replaceSearch(o);return}i||Ik(e.threadKey,e.search)}},[e,i,o,a]),o}var Hk=`(max-width: 980px)`,Uk=`w-[min(42vw,28rem)] min-w-80 max-w-[28rem] p-0 phone:w-[min(88vw,24rem)] phone:min-w-0 wco:mt-[env(titlebar-area-height)] wco:h-[calc(100%-env(titlebar-area-height))] wco:max-h-[calc(100%-env(titlebar-area-height))]`;function Wk(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function Gk(e){if(!Array.isArray(e))return[];let t=e.filter(e=>typeof e==`string`).map(e=>e.trim()).filter(e=>e.length>0);return Array.from(new Set(t))}function Kk(e,t){let n=Wk(t?.customAnswer);if(n)return n;let r=Gk(t?.selectedOptionLabels);return e.multiSelect?r.length>0?r:null:r[0]??null}function qk(e,t){let n=t.trim().length>0?void 0:Gk(e?.selectedOptionLabels);return{customAnswer:t,...n&&n.length>0?{selectedOptionLabels:n}:{}}}function Jk(e,t,n){if(e.multiSelect){let e=Gk(t?.selectedOptionLabels),r=e.includes(n)?e.filter(e=>e!==n):[...e,n];return{customAnswer:``,...r.length>0?{selectedOptionLabels:r}:{}}}return{customAnswer:``,selectedOptionLabels:[n]}}function Yk(e,t){let n={};for(let r of e){let e=Kk(r,t[r.id]);if(!e)return null;n[r.id]=e}return n}function Xk(e,t){return e.reduce((e,n)=>Kk(n,t[n.id])?e+1:e,0)}function Zk(e,t,n){let r=e.length===0?0:Math.max(0,Math.min(n,e.length-1)),i=e[r]??null,a=i?t[i.id]:void 0,o=i?Kk(i,a):null,s=a?.customAnswer??``,c=Xk(e,t),l=e.length===0||r>=e.length-1;return{questionIndex:r,activeQuestion:i,activeDraft:a,selectedOptionLabels:Gk(a?.selectedOptionLabels),customAnswer:s,resolvedAnswer:o,usingCustomAnswer:s.trim().length>0,answeredQuestionCount:c,isLastQuestion:l,isComplete:Yk(e,t)!==null,canAdvance:!!o}}function Qk({input:e,disabled:t,onRespond:n}){let[r,i]=(0,q.useState)({}),[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(null),l=Yk(e.questions,r),u=t||a||e.responseState===`submitting`||e.responseState===`uncertain`,d=async t=>{if(!u){o(!0),c(null);try{await n(e.requestId,t,e.userInputIdentity)}catch{c(`Could not submit the answer. Check the connection and question status.`)}finally{o(!1)}}};return(0,Y.jsxs)(`details`,{className:`mx-auto mb-2 w-full max-w-208 rounded-lg border border-border bg-background px-4 py-3`,children:[(0,Y.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium`,children:`Optional question · agent continues working`}),(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:`Answer while this turn is running. This is not an approval request.`}),(0,Y.jsx)(`form`,{onSubmit:e=>{e.preventDefault(),l&&d(l)},children:(0,Y.jsxs)(`fieldset`,{disabled:u,className:`space-y-3 py-3`,children:[e.questions.map(t=>(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`label`,{htmlFor:`${e.requestId}-${t.id}`,className:`block text-sm`,children:t.question}),(0,Y.jsx)(`div`,{className:`my-2 flex flex-wrap gap-2`,children:t.options.map(e=>(0,Y.jsx)(`button`,{type:`button`,"aria-pressed":r[t.id]?.selectedOptionLabels?.includes(e.label)??!1,className:`rounded-md border border-border px-3 py-1 text-sm aria-pressed:bg-accent`,onClick:()=>i(n=>({...n,[t.id]:Jk(t,n[t.id],e.label)})),children:e.label},e.label))}),(0,Y.jsx)(`input`,{id:`${e.requestId}-${t.id}`,"aria-label":`Custom answer: ${t.question}`,placeholder:`Write an answer`,value:r[t.id]?.customAnswer??``,onChange:e=>i(n=>({...n,[t.id]:qk(n[t.id],e.target.value)})),className:`w-full rounded-md border border-border bg-background px-3 py-2 text-sm`})]},t.id)),(0,Y.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Y.jsx)(`button`,{type:`submit`,disabled:!l,className:`rounded-md bg-primary px-3 py-2 text-sm text-primary-foreground disabled:opacity-50`,children:`Send answer`}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void d({}),className:`text-sm text-muted-foreground`,children:`Dismiss`})]})]})}),e.responseState===`uncertain`?(0,Y.jsx)(`p`,{role:`status`,className:`text-sm text-muted-foreground`,children:`Delivery is unconfirmed. This answer will not be resent automatically.`}):null,s?(0,Y.jsx)(`p`,{role:`alert`,className:`text-sm text-destructive`,children:s}):null]})}function $k(e){let t=(0,J.c)(15),n=e.disabled||e.selections.length>=4,r=e.selections.length===0?`Compare models…`:`Add current selection`,i;t[0]!==e.onAdd||t[1]!==n||t[2]!==r?(i=(0,Y.jsx)(`button`,{type:`button`,className:`rounded border px-2 py-1 disabled:opacity-40`,disabled:n,onClick:e.onAdd,children:r}),t[0]=e.onAdd,t[1]=n,t[2]=r,t[3]=i):i=t[3];let a;t[4]===e?a=t[5]:(a=e.selections.map(t=>(0,Y.jsxs)(`button`,{type:`button`,disabled:e.disabled,onClick:()=>e.onRemove(ut(t)),"aria-label":`Remove ${t.instanceId} ${t.model} ${t.options?.map(tA).join(` `)??``}`,className:`rounded bg-muted px-2 py-1 text-left disabled:opacity-40`,children:[t.instanceId,` · `,t.model,t.options?.map(eA).join(``),` ×`]},ut(t))),t[4]=e,t[5]=a);let o;t[6]!==i||t[7]!==a?(o=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[i,a]}),t[6]=i,t[7]=a,t[8]=o):o=t[8];let s;t[9]!==e.reason||t[10]!==e.selections.length?(s=e.selections.length>0&&(0,Y.jsx)(`p`,{className:`mt-1 text-muted-foreground`,children:e.reason??(e.selections.length<2?`Choose another provider, model or effort in the model picker, then add it here.`:`Send launches ${e.selections.length} isolated worktrees with the same prompt and context. Up to 2 launch at once.`)}),t[9]=e.reason,t[10]=e.selections.length,t[11]=s):s=t[11];let c;return t[12]!==o||t[13]!==s?(c=(0,Y.jsxs)(`section`,{"aria-label":`Compare models`,className:`mx-auto mb-2 w-full max-w-208 px-4 text-xs`,children:[o,s]}),t[12]=o,t[13]=s,t[14]=c):c=t[14],c}function eA(e){return` · ${e.id}: ${e.value}`}function tA(e){return`${e.id} ${e.value}`}var nA=mt(le,{exclusive:async(e,t)=>{if(!globalThis.navigator?.locks)throw Error(`Cross-tab launch coordination is unavailable.`);return navigator.locks.request(e,{mode:`exclusive`},t)}});typeof window<`u`&&window.addEventListener(`storage`,e=>{e.key===`ryco:batch-launches:v1`&&nA.refresh()});function rA(e){let{batch:t}=e,n=qr(t.environmentId),[r,i]=(0,q.useState)(0),[a,o]=(0,q.useState)({stamp:``,items:{}}),s=`${t.id}:${n.phase}:${n.attemptCount}:${n.connectedAt}:${r}`,c=a.stamp===s?a.items:{};(0,q.useEffect)(()=>{let e=Dr(t.environmentId);if(n.phase!==`connected`||!e?.orchestration.getThreadWindow)return;let r=!0,i=ge(t.environmentId,()=>lr(t.environmentId));return Promise.all(t.destinations.filter(e=>[`launched`,`uncertain`].includes(e.status)).map(async n=>{try{let a=await Qe({api:e,batch:t,destination:n,assertMutationReady:i});if(!r||!a)return;o(e=>({stamp:s,items:{...e.stamp===s?e.items:{},[n.threadId]:a}})),n.status===`uncertain`&&a.accepted&&a.worktreePath&&await nA.reconcile(t.id,[a])}catch{}})),()=>{r=!1}},[t,n.phase,s]);let l=t.destinations.some(e=>[`queued`,`preparing`,`dispatching`,`failed`].includes(e.status));return(0,Y.jsxs)(`section`,{"aria-label":`Batch results`,className:`mx-auto mb-2 w-full max-w-208 rounded border bg-background p-3 text-xs`,children:[e.error&&(0,Y.jsx)(`p`,{role:`alert`,className:`mb-2 text-destructive`,children:e.error}),(0,Y.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-center gap-3`,children:[(0,Y.jsxs)(`strong`,{children:[`Model comparison ·`,` `,t.destinations.filter(e=>e.status===`launched`).length,`/`,t.destinations.length,` launched`]}),l&&(0,Y.jsx)(`button`,{type:`button`,className:`underline`,onClick:()=>void nA.cancel(t.id).catch(()=>{}),children:`Stop remaining launches`}),e.onRetry&&t.destinations.some(e=>e.status===`failed`)&&(0,Y.jsx)(`button`,{type:`button`,className:`underline disabled:opacity-40`,disabled:e.retryDisabled,onClick:e.onRetry,children:`Retry safe failures`}),(0,Y.jsx)(`button`,{type:`button`,className:`underline`,disabled:n.phase!==`connected`,onClick:()=>i(e=>e+1),children:`Refresh evidence`}),e.onNew&&t.destinations.every(e=>e.status===`launched`||e.status===`cancelled`)&&(0,Y.jsx)(`button`,{type:`button`,className:`underline`,onClick:e.onNew,children:`Start another comparison`})]}),(0,Y.jsx)(`div`,{className:`overflow-x-auto`,children:(0,Y.jsxs)(`table`,{className:`w-full text-left`,children:[(0,Y.jsx)(`thead`,{children:(0,Y.jsxs)(`tr`,{className:`text-muted-foreground`,children:[(0,Y.jsx)(`th`,{className:`p-1`,children:`Selection`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Launch / turn`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Latest diff`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Reported tokens`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Result`})]})}),(0,Y.jsx)(`tbody`,{children:t.destinations.map(e=>(0,Y.jsx)(iA,{batch:t,target:e,evidence:c[e.threadId]},e.threadId))})]})}),(0,Y.jsx)(`p`,{className:`mt-2 text-muted-foreground`,children:`Uncertain launches are never resent. Draft and context are retained. Use each thread’s Review panel to inspect changes; test results require the candidate’s own evidence.`})]})}function iA(e){let t=(0,J.c)(27),{batch:n,target:r,evidence:i}=e,a=_(n.environmentId,r.threadId),o=po(),s=ao(o.root,o.activeRef,a)!==null,c;t[0]===r.modelSelection.options?c=t[1]:(c=r.modelSelection.options?.map(oA).join(` · `),t[0]=r.modelSelection.options,t[1]=c);let l;t[2]===c?l=t[3]:(l=(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:c}),t[2]=c,t[3]=l);let u;t[4]!==l||t[5]!==r.label?(u=(0,Y.jsxs)(`td`,{className:`max-w-64 p-1 break-words`,children:[r.label,l]}),t[4]=l,t[5]=r.label,t[6]=u):u=t[6];let d=i?` / ${i.status}`:``,f;t[7]===r.error?f=t[8]:(f=r.error&&(0,Y.jsx)(`div`,{className:`max-w-64 text-destructive`,children:r.error}),t[7]=r.error,t[8]=f);let p;t[9]!==d||t[10]!==f||t[11]!==r.status?(p=(0,Y.jsxs)(`td`,{className:`p-1`,children:[r.status,d,f]}),t[9]=d,t[10]=f,t[11]=r.status,t[12]=p):p=t[12];let m=i?.files==null?`Unavailable`:`${i.files} files · +${i.additions} −${i.deletions}`,h;t[13]===m?h=t[14]:(h=(0,Y.jsx)(`td`,{className:`p-1`,children:m}),t[13]=m,t[14]=h);let g;t[15]===i?g=t[16]:(g=i?.tokens==null?`Unavailable`:i.tokens.toLocaleString(),t[15]=i,t[16]=g);let v;t[17]===g?v=t[18]:(v=(0,Y.jsx)(`td`,{className:`p-1`,children:g}),t[17]=g,t[18]=v);let y=[`launched`,`uncertain`,`dispatching`].includes(r.status)&&(0,Y.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Y.jsx)(Fo,{className:`underline`,to:`/$environmentId/$threadId`,params:Le(a),children:`Open thread`}),(0,Y.jsx)(Fo,{className:`underline`,to:`/$environmentId/$threadId`,params:Le(a),search:aA,children:`Review`}),(0,Y.jsx)(`button`,{type:`button`,className:`underline disabled:opacity-40`,disabled:!s,title:`Open a candidate first, then split another result alongside it.`,onClick:()=>po.getState().open(a),children:`Split view`})]}),b;t[19]===y?b=t[20]:(b=(0,Y.jsx)(`td`,{className:`p-1`,children:y}),t[19]=y,t[20]=b);let x;return t[21]!==v||t[22]!==b||t[23]!==u||t[24]!==p||t[25]!==h?(x=(0,Y.jsxs)(`tr`,{className:`border-t align-top`,children:[u,p,h,v,b]}),t[21]=v,t[22]=b,t[23]=u,t[24]=p,t[25]=h,t[26]=x):x=t[26],x}function aA(e){return Xl(e)}function oA(e){return`${e.id}: ${e.value}`}var sA=t(au(),1);function cA(e){let t=(0,J.c)(33),{observation:n}=e,r;t[0]===n.observedAt?r=t[1]:(r=new Date(n.observedAt).toLocaleString(),t[0]=n.observedAt,t[1]=r);let i;t[2]===r?i=t[3]:(i=(0,Y.jsxs)(`p`,{children:[`Observed main-loop request · `,r]}),t[2]=r,t[3]=i);let a;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(`dt`,{children:`Direct input`}),t[4]=a):a=t[4];let o;t[5]===n.directInputTokens?o=t[6]:(o=n.directInputTokens.toLocaleString(),t[5]=n.directInputTokens,t[6]=o);let s;t[7]===o?s=t[8]:(s=(0,Y.jsxs)(`dd`,{children:[o,` tokens`]}),t[7]=o,t[8]=s);let c;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`dt`,{children:`Cache reads`}),t[9]=c):c=t[9];let l;t[10]===n.cacheReadInputTokens?l=t[11]:(l=n.cacheReadInputTokens.toLocaleString(),t[10]=n.cacheReadInputTokens,t[11]=l);let u;t[12]===l?u=t[13]:(u=(0,Y.jsxs)(`dd`,{children:[l,` tokens`]}),t[12]=l,t[13]=u);let d;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(`dt`,{children:`Cache writes`}),t[14]=d):d=t[14];let f;t[15]===n.cacheWriteInputTokens?f=t[16]:(f=n.cacheWriteInputTokens.toLocaleString(),t[15]=n.cacheWriteInputTokens,t[16]=f);let p;t[17]===f?p=t[18]:(p=(0,Y.jsxs)(`dd`,{children:[f,` tokens`]}),t[17]=f,t[18]=p);let m;t[19]!==p||t[20]!==s||t[21]!==u?(m=(0,Y.jsxs)(`dl`,{className:`grid grid-cols-2 gap-x-4 gap-y-1`,children:[a,s,c,u,d,p]}),t[19]=p,t[20]=s,t[21]=u,t[22]=m):m=t[22];let h;t[23]===n.mainLoopTotals?h=t[24]:(h=n.mainLoopTotals&&(0,Y.jsxs)(`p`,{children:[`Reported cumulative main-loop totals:`,` `,n.mainLoopTotals.directInputTokens.toLocaleString(),` direct input,`,` `,n.mainLoopTotals.cacheReadInputTokens.toLocaleString(),` cache reads,`,` `,n.mainLoopTotals.cacheWriteInputTokens.toLocaleString(),` cache writes, and`,` `,n.mainLoopTotals.outputTokens.toLocaleString(),` output tokens. These totals cover a different scope from the request above.`]}),t[23]=n.mainLoopTotals,t[24]=h);let g;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,Y.jsx)(`p`,{children:`Subagent usage is separate. Cache availability for the next request is unknown. These observations do not guarantee a cache hit or billing savings.`}),t[25]=g):g=t[25];let _=n.observedTtlSeconds?`The observed write reported a ${n.observedTtlSeconds/60}-minute lifetime; reads do not establish a new lifetime.`:`No cache lifetime was reported for this observation.`,v;t[26]===_?v=t[27]:(v=(0,Y.jsx)(`p`,{children:_}),t[26]=_,t[27]=v);let y;return t[28]!==m||t[29]!==h||t[30]!==v||t[31]!==i?(y=(0,Y.jsxs)(`div`,{className:`space-y-2 text-sm text-muted-foreground`,children:[i,m,h,g,v]}),t[28]=m,t[29]=h,t[30]=v,t[31]=i,t[32]=y):y=t[32],y}function lA(e){let t=(0,J.c)(5),{activities:n}=e,r;t[0]===n?r=t[1]:(r=Ie(n),t[0]=n,t[1]=r);let i=r,a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(`summary`,{className:`cursor-pointer`,children:`Observed Claude cache usage`}),t[2]=a):a=t[2];let o;return t[3]===i?o=t[4]:(o=(0,Y.jsxs)(`details`,{className:`mx-3 my-2 text-xs text-muted-foreground`,children:[a,(0,Y.jsx)(`div`,{className:`py-2`,children:i?(0,Y.jsx)(cA,{observation:i}):(0,Y.jsx)(`p`,{children:`No authoritative cache usage is available for this context. Next-request cache availability is unknown.`})})]}),t[3]=i,t[4]=o),o}function uA(e){let t=document.createElement(`div`);document.body.append(t);let n=(0,sA.createRoot)(t),r=!1,i=()=>{r||(r=!0,queueMicrotask(()=>{n.unmount(),t.remove()}))};return n.render(e(i)),i}var dA={review:e=>new Promise(t=>{uA(n=>{let r=e=>{t(e),n()};return(0,Y.jsx)(vi,{open:!0,onOpenChange:e=>{e||r(`cancel`)},children:(0,Y.jsx)(ia,{bottomStickOnMobile:!1,children:(0,Y.jsxs)(`div`,{className:`space-y-4 p-6`,children:[(0,Y.jsx)(Ri,{children:`Review large Claude resume`}),(0,Y.jsxs)(qa,{children:[e.reason,` The last observed prompt contained`,` `,e.promptTokens.toLocaleString(),` tokens.`]}),(0,Y.jsx)(cA,{observation:e.observation}),(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Compaction summarizes older context and can itself consume tokens. Your message and attachments will wait until native compaction is confirmed.`}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,Y.jsx)(W,{onClick:()=>r(`continue`),children:`Continue with full context`}),(0,Y.jsx)(W,{variant:`outline`,onClick:()=>r(`compact`),children:`Compact then send`}),(0,Y.jsx)(W,{variant:`ghost`,onClick:()=>r(`cancel`),children:`Cancel`})]})]})})})})}),compacting:e=>uA(t=>(0,Y.jsx)(vi,{open:!0,onOpenChange:n=>{n||(e(),t())},children:(0,Y.jsx)(ia,{bottomStickOnMobile:!1,children:(0,Y.jsxs)(`div`,{className:`space-y-4 p-6`,children:[(0,Y.jsx)(Ri,{children:`Compacting Claude context…`}),(0,Y.jsx)(qa,{children:`Your original message and attachments are held. Sending waits for successful native compaction and a ready session.`}),(0,Y.jsx)(W,{variant:`outline`,onClick:()=>{e(),t()},children:`Cancel pending send`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Cancelling keeps your draft. Compaction already requested may still finish.`})]})})}))};function fA(e,t=50){let n=e.trim();return n.length<=t?n:`${n.slice(0,t)}...`}var pA=`ryco:last-invoked-script-by-project`,mA=N(k,D);function hA(e){return e.workspacePanelOpen&&e.workspaceTab===`agents`?0:e.liveCount}function gA(e,t,n,r){return{id:e,environmentId:t.environmentId,codexThreadId:null,projectId:t.projectId,title:`New thread`,modelSelection:n,runtimeMode:t.runtimeMode,interactionMode:t.interactionMode,tokenMode:t.tokenMode??At,session:null,messages:[],error:r,createdAt:t.createdAt,archivedAt:null,settledOverride:null,settledAt:null,latestTurn:null,branch:t.branch,worktreePath:t.worktreePath,turnDiffSummaries:[],activities:[],proposedPlans:[]}}function _A(e){return!!(e.serverThread&&e.targetThreadId===e.routeThreadRef.threadId&&e.serverThread.environmentId===e.routeThreadRef.environmentId&&e.serverThread.id===e.targetThreadId)}function vA(e){let t=new Set(e.openThreadIds),n=e.currentThreadIds.filter(n=>n!==e.activeThreadId&&t.has(n)),r=Math.max(0,e.maxHiddenThreadCount??10),i=n.length>r?n.slice(-r):n;return e.activeThreadId&&e.activeThreadTerminalOpen&&!i.includes(e.activeThreadId)&&i.push(e.activeThreadId),i}function yA(e){!e||typeof URL>`u`||!e.startsWith(`blob:`)||URL.revokeObjectURL(e)}function bA(e){if(e.role===`user`&&e.attachments)for(let t of e.attachments)dn(t)&&yA(t.previewUrl)}function xA(e){if(e.role!==`user`||!e.attachments)return[];let t=[];for(let n of e.attachments)dn(n)&&n.previewUrl&&n.previewUrl.startsWith(`blob:`)&&t.push(n.previewUrl);return t}function SA(e){return e.isGitRepo?e.requestedEnvMode:`local`}function CA(e){let t=e.isServerThread&&!e.isFirstMessage&&e.threadWorktreePath===null&&e.activeThreadBranch!==null&&e.currentGitRefName!==null&&e.currentGitRefName!==e.activeThreadBranch;return{shouldMaterializeLegacyBranchWorktree:t,baseBranchForWorktree:e.isFirstMessage&&e.sendEnvMode===`worktree`&&!e.threadWorktreePath||t?e.activeThreadBranch:null,shouldCreateWorktree:e.isFirstMessage&&e.sendEnvMode===`worktree`&&!e.threadWorktreePath||t}}function wA(e){let t=e.trimmedPrompt.trim();return t.length>0?t:e.firstImageName?`Attachment: ${e.firstImageName}`:e.firstTerminalContextLabel?e.firstTerminalContextLabel:`New thread`}function TA(e){if(typeof URL>`u`||!e.previewUrl.startsWith(`blob:`)||!e.file)return e;try{return{...e,previewUrl:URL.createObjectURL(e.file)}}catch{return e}}function EA(e){let t=Fe(e.prompt).trim(),n=ke(e.terminalContexts),r=e.terminalContexts.length-n.length,i=e.sourceControlContexts?.length??0;return{trimmedPrompt:t,sendableTerminalContexts:n,expiredTerminalContextCount:r,hasSendableContent:t.length>0||e.imageCount>0||n.length>0||i>0}}function DA(e,t){let n=Math.max(1,Math.floor(e))===1?`Expired terminal context`:`Expired terminal contexts`;return t===`empty`?{title:`${n} won't be sent`,description:`Remove it or re-add it to include terminal output.`}:{title:`${n} omitted from message`,description:`Re-add it if you want that terminal output included.`}}async function OA(e,t){let n=M(new Date);return Promise.all(e.map(async e=>{if(!z(e.staleAfter,n))return e;try{return await t.fetcher(e)}catch{return e}}))}function kA(e){return!!(e&&(e.latestTurn!==null||e.messages.length>0||e.session!==null))}function AA(e){return!!(e&&(e.latestTurn!==null||e.messages.length>0))}async function jA(e,t=1e3){let n=()=>Ce(me.getState(),e);return kA(n())?!0:await new Promise(r=>{let i=!1,a=null,o=e=>{i||(i=!0,a!==null&&globalThis.clearTimeout(a),s(),r(e))},s=me.subscribe(t=>{kA(Ce(t,e))&&o(!0)});if(kA(n())){o(!0);return}a=globalThis.setTimeout(()=>{o(!1)},t)})}function MA(e,t){let n=e?.latestTurn??null,r=e?.session??null;return{startedAt:new Date().toISOString(),preparingWorktree:!!t?.preparingWorktree,latestTurnTurnId:n?.turnId??null,latestTurnRequestedAt:n?.requestedAt??null,latestTurnStartedAt:n?.startedAt??null,latestTurnCompletedAt:n?.completedAt??null,sessionOrchestrationStatus:r?.orchestrationStatus??null,sessionUpdatedAt:r?.updatedAt??null}}function NA(e){if(!e.localDispatch)return!1;if(e.hasPendingApproval||e.hasPendingUserInput||e.threadError)return!0;let t=e.latestTurn??null,n=e.session??null,r=e.localDispatch.latestTurnTurnId!==(t?.turnId??null)||e.localDispatch.latestTurnRequestedAt!==(t?.requestedAt??null)||e.localDispatch.latestTurnStartedAt!==(t?.startedAt??null)||e.localDispatch.latestTurnCompletedAt!==(t?.completedAt??null);return e.phase===`running`?!(!r||t?.startedAt===null||t===null||n?.activeTurnId!==void 0&&n.activeTurnId!==null&&t?.turnId!==n.activeTurnId):r||e.localDispatch.sessionOrchestrationStatus!==(n?.orchestrationStatus??null)||e.localDispatch.sessionUpdatedAt!==(n?.updatedAt??null)}function PA(e){return e.hasThread&&e.messageCount===0&&e.optimisticMessageCount===0&&e.timelineEntryCount===0&&e.presentationTier!==`phone`}function FA(e,t){e(e=>{let n=e.filter(e=>e.id===t);for(let e of n)bA(e);let r=e.filter(e=>e.id!==t);return r.length===e.length?e:r})}function IA(e){let{refs:t,composerHandle:n,dispatch:r,draft:i,messageId:a,promptSnapshot:o,imagesSnapshot:s,terminalContextsSnapshot:c}=e;if(t.promptRef.current.length!==0||t.composerImagesRef.current.length!==0||t.composerTerminalContextsRef.current.length!==0)return;FA(r.setOptimisticUserMessages,a),t.promptRef.current=o;let l=s.map(TA);t.composerImagesRef.current=l,t.composerTerminalContextsRef.current=c,i.setComposerDraftPrompt(i.composerDraftTarget,o),i.addComposerDraftImages(i.composerDraftTarget,l),i.setComposerDraftTerminalContexts(i.composerDraftTarget,c),n.readComposer()?.resetCursorState({cursor:Bt(o,o.length),prompt:o,detectTrigger:!0})}function LA(e){let t=de(e.composer.prompt,e.composer.sendableTerminalContexts);return e.formatOutgoingPrompt({provider:e.composer.selectedProvider,model:e.composer.selectedModel,models:e.composer.selectedProviderModels,effort:e.composer.selectedPromptEffort,text:t||`[User attached one or more files without additional text. Respond using the conversation context and the attachment(s).]`})}async function RA(e,t){let n=t?.nowMs??Date.now();return Promise.all(e.map(async e=>e.type===`file`&&e.uploadToken!==void 0&&(e.expiresAt===void 0||er(e.expiresAt,n))?bt({name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadToken:e.uploadToken}):fe({attachment:await yd.encode({id:e.id,file:e.file}),name:e.name,type:e.type})))}async function zA(e){let{composer:t,thread:n,worktree:r,settings:i,project:a,scroll:o,draft:s,dispatch:c,refs:l,sourceControl:u,persistSettings:d,composerHandle:f,formatOutgoingPrompt:p}=e,{api:m,beginLocalDispatch:g,resetLocalDispatch:v,setOptimisticUserMessages:y,setThreadError:b}=c;l.sendInFlightRef.current=!0,g({preparingWorktree:!!r.baseBranchForWorktree});let x=[...t.images],S=[...t.sendableTerminalContexts],C=[...t.sourceControlContexts],w={prompt:l.promptRef.current,images:l.composerImagesRef.current,terminalContexts:l.composerTerminalContextsRef.current},T=e.messageId??Vt(),E=new Date().toISOString(),D=LA({composer:t,formatOutgoingPrompt:p}),O=!1,k=!1;try{gr(t);let c=await RA(x);await o.scrollToEndBeforeOptimistic();let p=x.map(TA).map(e=>({type:e.type,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.previewUrl}));y(e=>[...e,{id:T,role:`user`,text:D,...p.length>0?{attachments:p}:{},createdAt:E,streaming:!1}]),o.scrollToEndAfterOptimistic();let v=!e.preserveComposerDraft&&l.promptRef.current===w.prompt&&l.composerImagesRef.current===w.images&&l.composerTerminalContextsRef.current===w.terminalContexts;if(b(n.threadId,null),v&&(s.setComposerDraftTokenMode(_(s.environmentId,n.threadId),i.tokenMode),n.isLocalDraftThread&&s.setDraftThreadContext(s.composerDraftTarget,{tokenMode:i.tokenMode})),t.expiredTerminalContextCount>0){let e=DA(t.expiredTerminalContextCount,`omitted`);Ve.add(fc({type:`warning`,title:e.title,description:e.description}))}v&&(k=!0,l.promptRef.current=``,s.clearComposerDraftContent(s.composerDraftTarget),s.setComposerDraftTokenMode(s.composerDraftTarget,i.tokenMode),f.readComposer()?.resetCursorState());let A=null;if(x.length>0){let e=x[0];e&&(A=e.name)}let j=fA(wA({trimmedPrompt:t.trimmedPrompt,firstImageName:A,firstTerminalContextLabel:S.length>0?wt(S[0]):null})),M=Tt({selectedModelSelection:t.selectedModelSelection,selectedModel:t.selectedModel}),N=await OA(C,u),P=h(),F=P?.environment.environmentId===s.environmentId?P:Br(s.environmentId)?.serverConfig,I=r.baseBranchForWorktree?await gc({api:m,config:F,projectId:a.projectId}):null,L;if(r.baseBranchForWorktree&&!r.shouldMaterializeLegacyBranchWorktree&&!r.worktreeBranchName){if(!m.server)throw Error(`Server settings are unavailable for worktree creation.`);L=I?.worktreeBranchPrefix.value??(await m.server.getSettings()).worktreeBranchPrefix}let R=ni({isLocalDraftThread:n.isLocalDraftThread,baseBranchForWorktree:r.baseBranchForWorktree,fetchOrigin:r.fetchOrigin,worktreeBranchName:r.worktreeBranchName,worktreeBranchPrefix:L,runSetupScript:I?.runSetupScript.value??!0,shouldMaterializeLegacyBranchWorktree:r.shouldMaterializeLegacyBranchWorktree,projectId:a.projectId,projectCwd:a.projectCwd,title:j,threadCreateModelSelection:M,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode,activeThreadBranch:n.activeThreadBranch,worktreePath:n.worktreePath,threadCreatedAt:n.createdAt}),z=e.prepareForDispatch?await e.prepareForDispatch():null;if(await Ae({claudeCacheReview:dA,providerDriver:t.selectedProvider,sourceProviderDriver:n.sourceProviderDriver,assertMutationReady:Ln(s.environmentId,()=>lr(s.environmentId)),api:m,threadId:z?.threadId??n.threadId,isFirstMessage:z?.isFirstMessage??n.isFirstMessage,isServerThread:z?.isServerThread??n.isServerThread,title:j,messageId:T,outgoingMessageText:D,turnAttachments:c,modelSelection:t.selectedModelSelection,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode,...i.computerUse?{computerUse:i.computerUse}:{},...t.goal?{goal:t.goal}:{},bootstrap:z?void 0:R,sourceControlContexts:N,createdAt:E,newCommandId:yr,beginLocalDispatch:g,persistThreadSettingsForNextTurn:d.persistThreadSettingsForNextTurn}),O=!0,!k&&!e.preserveComposerDraft){let e=l.composerImagesRef.current.filter(e=>x.some(t=>t.id===e.id&&t.uploadToken===e.uploadToken&&t.file===e.file));l.composerImagesRef.current=l.composerImagesRef.current.filter(t=>!e.includes(t));for(let t of e)s.removeComposerDraftImage(s.composerDraftTarget,t.id)}}catch(e){k?IA({refs:l,composerHandle:f,dispatch:{setOptimisticUserMessages:y},draft:s,messageId:T,promptSnapshot:t.promptForRestore??t.prompt,imagesSnapshot:x,terminalContextsSnapshot:S}):FA(y,T),b(n.threadId,e instanceof Error?e.message:`Failed to send message.`)}finally{l.sendInFlightRef.current=!1,O||v()}return O}async function BA(e){let t=Pr(zt);try{return await Promise.all(e.attachments.map(async n=>{if(e.signal.aborted)throw Error(`Launch cancelled.`);if(n.type!==`file`)return(await RA([n]))[0];if(!n.file)throw Error(`Reattach '${n.name}' so each model can receive its own copy.`);let r=`${e.threadId}:${n.id}`;return await new Promise((i,a)=>{let o=()=>{},s=()=>{o(),e.signal.removeEventListener(`abort`,c)},c=()=>{s(),t.release(r),a(Error(`Launch cancelled.`))},l=()=>{let e=t.get(r);e?.status.kind===`uploaded`?(s(),i(bt({...n,uploadToken:e.status.uploadToken}))):(e?.status.kind===`failed`||e?.status.kind===`needsReattach`)&&(s(),a(Error(e.status.message)))};o=t.subscribe(l),e.signal.addEventListener(`abort`,c,{once:!0}),t.enqueue({attachmentId:r,threadId:e.threadId,environmentId:e.environmentId,name:n.name,mimeType:n.mimeType,sizeBytes:n.sizeBytes,readBytes:async()=>new Uint8Array(await n.file.arrayBuffer())}),l()})}))}finally{t.releaseAll()}}function VA(e){if(!e)return null;let t=/^ {0,3}\/computer-use(?:[ \t\r\n]+([\s\S]*))?$/i.exec(e);return t?{prompt:(t[1]??``).trim()}:null}var HA=new Map,UA=(e,t)=>JSON.stringify([e,t]);function WA(e){let t=(0,J.c)(74),{threadId:n}=e,r=window.desktopBridge?.computerBeta,[i,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(null),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(!1),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={x:16,y:64},t[0]=m):m=t[0];let[h,g]=(0,q.useState)(m),[_,v]=(0,q.useState)(null),[y,b]=(0,q.useState)(`Waiting for an exact window or browser tab…`),[x,S]=(0,q.useState)(null),C;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(C=new Set,t[1]=C):C=t[1];let w=(0,q.useRef)(C),T=(0,q.useRef)(null),E=(0,q.useRef)(null),D=(0,q.useRef)(null),O=(0,q.useRef)(null),k,A;t[2]===n?(k=t[3],A=t[4]):(k=()=>{if(!r)return;let e=!0,t=(e,t)=>{let r=HA.get(UA(n,e));l(r?.hidden??t?.autoPreview===!1),d(r?.large??t?.previewSize===`large`),p(r?.docked??!1),g(r?.position??{x:16,y:64})},i=()=>{E.current&&URL.revokeObjectURL(E.current),E.current=null,v(null)};r.getState().then(r=>{if(e){a(r),D.current=r;let e=r.targets?.find(e=>e.threadId===n);e&&!T.current&&!w.current.has(e.turnId)&&(T.current=e,s(e),t(e.turnId,r.preferences))}}).catch(YA);let o=r.onUpdate(e=>{if(e.type===`state`){a(e.state),D.current=e.state;return}if(e.type===`event`){if(e.event.type===`computer.thread-state`&&e.event.state.threadId===n){let t=e.event.state;b(t.inputPause?.message??t.lastError??(t.sharedPreviewUnavailable?`Preview paused while another task is using this computer`:t.agentActive?`Working · view only`:`Waiting for the next action`))}return}if(!(e.threadId!==n||w.current.has(e.turnId))){if(e.type===`ended`){if(w.current.add(e.turnId),HA.delete(UA(n,e.turnId)),w.current.size>64&&w.current.delete(w.current.values().next().value),T.current?.turnId!==e.turnId)return;T.current=null,s(null),i();return}if(e.type===`error`){S(e.message);return}if(T.current?.turnId!==e.turnId&&(T.current={turnId:e.turnId},i(),S(null),t(e.turnId,D.current?.preferences)),T.current.targetId!==e.targetId&&(T.current={turnId:e.turnId,targetId:e.targetId},i(),S(null),b(`Waiting for an exact window or browser tab…`)),e.type===`target`&&s({turnId:e.turnId,targetId:e.targetId,label:e.label}),e.type===`frame`){b(JA);let t=URL.createObjectURL(new Blob([new Uint8Array(e.bytes)],{type:e.mimeType})),n=E.current;E.current=t,v(t),n&&URL.revokeObjectURL(n),s(t=>({turnId:e.turnId,targetId:e.targetId,label:t?.label??`Computer`}))}}});return()=>{e=!1,o(),E.current&&URL.revokeObjectURL(E.current),E.current=null,r.setPreview(n,!1).catch(qA)}},A=[r,n],t[2]=n,t[3]=k,t[4]=A),(0,q.useEffect)(k,A);let j;t[5]!==o||t[6]!==n?(j=o?UA(n,o.turnId):null,t[5]=o,t[6]=n,t[7]=j):j=t[7];let M=j,N,P;t[8]!==f||t[9]!==c||t[10]!==u||t[11]!==h||t[12]!==M?(N=()=>{if(M)for(HA.delete(M),HA.set(M,{hidden:c,large:u,docked:f,position:h});HA.size>64;)HA.delete(HA.keys().next().value)},P=[M,c,u,f,h],t[8]=f,t[9]=c,t[10]=u,t[11]=h,t[12]=M,t[13]=N,t[14]=P):(N=t[13],P=t[14]),(0,q.useEffect)(N,P);let F=o!==null,I,L;if(t[15]!==c||t[16]!==F||t[17]!==n?(I=()=>{if(!r)return;let e=()=>void r.setPreview(n,F&&!c&&document.visibilityState===`visible`).catch(KA);return e(),document.addEventListener(`visibilitychange`,e),()=>{document.removeEventListener(`visibilitychange`,e),r.setPreview(n,!1).catch(GA)}},L=[r,n,F,c],t[15]=c,t[16]=F,t[17]=n,t[18]=I,t[19]=L):(I=t[18],L=t[19]),(0,q.useEffect)(I,L),!r||!o||i?.supported===!1)return null;if(c){let e;return t[20]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsxs)(W,{className:`absolute right-4 top-16 z-20`,variant:`outline`,size:`sm`,onClick:()=>l(!1),children:[(0,Y.jsx)(aa,{className:`size-3`}),`Show Computer`]}),t[20]=e):e=t[20],e}let R=`${f?`relative mx-4 mt-3`:`absolute z-30`} overflow-hidden rounded-xl border bg-background shadow-xl`,z;t[21]!==f||t[22]!==u||t[23]!==h?(z=f?{}:{left:h.x,top:h.y,width:u?`min(720px, calc(100% - 32px))`:`min(384px, calc(100% - 32px))`,maxHeight:`calc(100% - 80px)`},t[21]=f,t[22]=u,t[23]=h,t[24]=z):z=t[24];let ee;t[25]!==f||t[26]!==h?(ee=e=>{f||(e.currentTarget.setPointerCapture(e.pointerId),O.current={x:e.clientX,y:e.clientY,left:h.x,top:h.y})},t[25]=f,t[26]=h,t[27]=ee):ee=t[27];let te,B,ne,re;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(te=e=>{let t=O.current;if(!t)return;let n=e.currentTarget.closest(`section`)?.parentElement;g({x:Math.max(0,Math.min((n?.clientWidth??window.innerWidth)-(e.currentTarget.closest(`section`)?.clientWidth??384),t.left+e.clientX-t.x)),y:Math.max(0,Math.min((n?.clientHeight??window.innerHeight)-(e.currentTarget.closest(`section`)?.clientHeight??300),t.top+e.clientY-t.y))})},B=()=>{O.current=null},ne=()=>{O.current=null},re=(0,Y.jsx)(nd,{className:`size-3`}),t[28]=te,t[29]=B,t[30]=ne,t[31]=re):(te=t[28],B=t[29],ne=t[30],re=t[31]);let ie;t[32]===ee?ie=t[33]:(ie=(0,Y.jsx)(`button`,{"aria-label":`Move preview`,className:`cursor-grab touch-none p-1`,onPointerDown:ee,onPointerMove:te,onPointerUp:B,onPointerCancel:ne,children:re}),t[32]=ee,t[33]=ie);let V;t[34]===o.label?V=t[35]:(V=(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-medium`,children:o.label}),t[34]=o.label,t[35]=V);let ae=f?`Float preview`:`Dock preview`,H;t[36]===f?H=t[37]:(H=()=>p(!f),t[36]=f,t[37]=H);let U;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,Y.jsx)(id,{className:`size-3`}),t[38]=U):U=t[38];let oe;t[39]!==ae||t[40]!==H?(oe=(0,Y.jsx)(W,{size:`icon-sm`,variant:`ghost`,"aria-label":ae,onClick:H,children:U}),t[39]=ae,t[40]=H,t[41]=oe):oe=t[41];let se=u?`Compact preview`:`Expand preview`,ce,le;t[42]===u?(ce=t[43],le=t[44]):(ce=()=>d(!u),le=u?(0,Y.jsx)(Ps,{className:`size-3`}):(0,Y.jsx)(Xu,{className:`size-3`}),t[42]=u,t[43]=ce,t[44]=le);let ue;t[45]!==se||t[46]!==ce||t[47]!==le?(ue=(0,Y.jsx)(W,{size:`icon-sm`,variant:`ghost`,"aria-label":se,onClick:ce,children:le}),t[45]=se,t[46]=ce,t[47]=le,t[48]=ue):ue=t[48];let de;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,Y.jsx)(W,{size:`icon-sm`,variant:`ghost`,"aria-label":`Hide preview`,onClick:()=>l(!0),children:(0,Y.jsx)(Ut,{className:`size-3`})}),t[49]=de):de=t[49];let fe;t[50]!==ie||t[51]!==V||t[52]!==oe||t[53]!==ue?(fe=(0,Y.jsxs)(`header`,{className:`flex items-center gap-1 border-b px-2 py-1.5`,children:[ie,V,oe,ue,de]}),t[50]=ie,t[51]=V,t[52]=oe,t[53]=ue,t[54]=fe):fe=t[54];let pe;t[55]!==_||t[56]!==y?(pe=(0,Y.jsx)(`div`,{className:`flex min-h-32 items-center justify-center bg-black/5`,children:_?(0,Y.jsx)(`img`,{src:_,alt:`Live view of the agent's current target`,draggable:!1,className:`max-h-[55vh] w-full object-contain pointer-events-none`}):(0,Y.jsx)(`p`,{className:`p-6 text-center text-xs text-muted-foreground`,children:y})}),t[55]=_,t[56]=y,t[57]=pe):pe=t[57];let me=x??y,he;t[58]===me?he=t[59]:(he=(0,Y.jsx)(`p`,{role:`status`,className:`min-w-0 flex-1 text-xs text-muted-foreground`,children:me}),t[58]=me,t[59]=he);let ge;t[60]===n?ge=t[61]:(ge=()=>void r.stopTask(n).catch(e=>S(e instanceof Error?e.message:`Could not stop Computer.`)),t[60]=n,t[61]=ge);let _e;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,Y.jsx)(oc,{className:`size-3`}),t[62]=_e):_e=t[62];let ve;t[63]===ge?ve=t[64]:(ve=(0,Y.jsxs)(W,{variant:`outline`,size:`sm`,onClick:ge,children:[_e,`Stop`]}),t[63]=ge,t[64]=ve);let ye;t[65]!==he||t[66]!==ve?(ye=(0,Y.jsxs)(`footer`,{className:`flex items-center gap-2 border-t px-3 py-2`,children:[he,ve]}),t[65]=he,t[66]=ve,t[67]=ye):ye=t[67];let be;return t[68]!==R||t[69]!==z||t[70]!==fe||t[71]!==pe||t[72]!==ye?(be=(0,Y.jsxs)(`section`,{"aria-label":`Computer preview`,className:R,style:z,children:[fe,pe,ye]}),t[68]=R,t[69]=z,t[70]=fe,t[71]=pe,t[72]=ye,t[73]=be):be=t[73],be}function GA(){}function KA(){}function qA(){}function JA(e){return e.startsWith(`Waiting for an exact`)?`Live preview · view only`:e}function YA(){}async function XA(e){if(e.intent===`send`&&!e.prompt.trim())throw Error(`Write a question before sending.`);if(e.envMode===`worktree`&&(!e.canUseWorktree||!e.branch))throw Error(`Select a checked-out branch before creating a worktree.`);let t=_d(e.prompt,e.quote);if(!await e.prepare())throw Error(`Save the pending file changes before opening the new chat.`);let n=Rt.make(`selection-${e.requestKey}`),r=E.make(`selection-${e.requestKey}`);if(await e.createThread(e.projectRef,{envMode:e.envMode,branch:e.envMode===`worktree`?e.branch:null,worktreePath:null,freshDraft:{draftId:n,threadId:r,prompt:t,modelSelection:e.composer.selectedModelSelection,runtimeMode:e.settings.runtimeMode,tokenMode:e.settings.tokenMode,isCurrent:e.isCurrent}}),e.intent!==`send`)return;let i=u(_(e.projectRef.environmentId,r)),a=ei.getState();a.queuesByThreadKey[i]?.some(t=>t.id===e.requestKey)||a.enqueue(i,{id:e.requestKey,createdAt:new Date().toISOString(),composer:{selectedProvider:e.composer.selectedProvider,selectedModel:e.composer.selectedModel,selectedProviderModels:e.composer.selectedProviderModels,selectedPromptEffort:e.composer.selectedPromptEffort,selectedModelSelection:e.composer.selectedModelSelection,prompt:t,trimmedPrompt:t.trim(),images:[],sendableTerminalContexts:[],sourceControlContexts:[],expiredTerminalContextCount:0},settings:e.settings});let o=Rr.getState();o.getComposerDraft(n)?.prompt===t&&o.setPrompt(n,``)}var ZA=(0,q.createContext)(null);function QA(e,t){let n=null;return e!=null&&(n=e[1]),{getTheme:function(){return t??(n==null?null:n.getTheme())}}}function $A(){let e=(0,q.useContext)(ZA);return e??function(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(8),e}function X(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function ej(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);n.search=r.toString(),console.warn(`Minified Lexical warning #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var tj=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,nj=tj&&`documentMode`in document?document.documentMode:null,rj=tj&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),ij=tj&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent),aj=!(!tj||!(`InputEvent`in window)||nj)&&`getTargetRanges`in new window.InputEvent(`input`),oj=tj&&!window.MSStream&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints>1),sj=tj&&/Android/.test(navigator.userAgent),cj=tj&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent)&&!sj,lj=tj&&/^(?=.*Chrome).*/i.test(navigator.userAgent),uj=tj&&sj&&lj,dj=tj&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&rj&&!lj,fj=0,pj=1,mj=2,hj=1,gj=2,_j=3,vj=4,yj=5,bj=6,xj=cj||oj||dj?`\xA0`:`​`,Sj=`
180
+ `)+1),d=RegExp(`^ {0,3}${l[0]}{${l.length},}[ \t]*$`),f=/^\n[ \t]*\n/.exec(n.slice(s))?.[0];if(!d.test(u)||!f)continue;let p=s+f.length;t={source:n.slice(0,p),offset:p,line:r.position.end.line+2,children:structuredClone(a.children.slice(0,e+1))};break}return a}}function rE(){let e;return function(){let t=this.parser;if(!t)return;e??=nE((e,n)=>t(e,n));let n=e,r=!1;this.parser=(e,i)=>r?t(e,i):(r=!0,n(e,i))}}var iE=null,aE=null;function oE(){return iE?Promise.resolve(iE):(aE??=r(()=>import(`./vscode-icons-CJBVQtq5.js`).then(e=>(iE=e.getVscodeIconUrlForEntry,iE)),[]).catch(e=>{throw aE=null,e}),aE)}function sE(e,t,n){let r=(0,J.c)(9),i;r[0]!==t||r[1]!==e||r[2]!==n?(i=()=>iE?iE(e,t,n):null,r[0]=t,r[1]=e,r[2]=n,r[3]=i):i=r[3];let[a,o]=(0,q.useState)(i),s,c;return r[4]!==t||r[5]!==e||r[6]!==n?(s=()=>{if(iE){o(iE(e,t,n));return}let r=!1;return o(null),oE().then(i=>{r||o(i(e,t,n))}).catch(()=>{r||o(null)}),()=>{r=!0}},c=[t,e,n],r[4]=t,r[5]=e,r[6]=n,r[7]=s,r[8]=c):(s=r[7],c=r[8]),(0,q.useEffect)(s,c),a}var cE=(0,q.memo)(function(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(null),i=sE(e.pathValue,e.kind,e.theme);if(!i||i!==null&&n===i){let n;return t[0]!==e.className||t[1]!==e.kind?(n=e.kind===`directory`?(0,Y.jsx)(co,{className:G(`size-4 text-muted-foreground/80`,e.className)}):(0,Y.jsx)(mi,{className:G(`size-4 text-muted-foreground/80`,e.className)}),t[0]=e.className,t[1]=e.kind,t[2]=n):n=t[2],n}let a;t[3]===e.className?a=t[4]:(a=G(`size-4 shrink-0`,e.className),t[3]=e.className,t[4]=a);let o;t[5]===i?o=t[6]:(o=()=>r(i),t[5]=i,t[6]=o);let s;return t[7]!==i||t[8]!==a||t[9]!==o?(s=(0,Y.jsx)(`img`,{src:i,alt:``,"aria-hidden":`true`,className:a,loading:`lazy`,onError:o}),t[7]=i,t[8]=a,t[9]=o,t[10]=s):s=t[10],s});function lE(e){return e.split(/[\s:_-]+/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function uE(e){return e.replaceAll(`\\`,`/`)}function dE(e){return e.displayName?.trim()||lE(e.name)}function fE(e){let t=uE(e.path);if(t.includes(`/.codex/plugins/`)||t.includes(`/.agents/plugins/`))return`App`;let n=e.scope?.trim().toLowerCase();return n===`system`?`System`:n===`project`||n===`workspace`||n===`local`?`Project`:n===`user`||n===`personal`?`Personal`:n?lE(n):null}var pE=`inline-flex max-w-full select-none items-center gap-1 rounded-md border border-border/70 bg-accent/40 px-1.5 py-px font-medium text-[12px] leading-[1.1] text-foreground align-middle`,mE=`size-3.5 shrink-0 opacity-85`,hE=`truncate select-none leading-tight`,gE=`inline-flex max-w-full select-none items-center gap-1 rounded-md border border-fuchsia-500/25 bg-fuchsia-500/12 px-1.5 py-px font-medium text-[12px] leading-[1.1] text-fuchsia-700 align-middle dark:text-fuchsia-300`,_E=`<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.85" stroke-linecap="round" stroke-linejoin="round"><path d="M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"/><path d="m3.3 7 8.7 5 8.7-5"/><path d="M12 22V12"/></svg>`,vE=`ml-0.5 inline-flex size-3.5 shrink-0 cursor-pointer items-center justify-center rounded-sm text-muted-foreground/72 transition-colors hover:bg-foreground/6 hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`;function yE(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function bE(e){let t=e.trim();if(t.length===0)return null;let n=t.split(/(\s+)/).map(e=>/\s+/.test(e)?`\\s+`:yE(e)).join(``);return new RegExp(n,`gi`)}function xE(e){return e.message.role===`user`?yt(e.message.text).visibleText:e.message.text}function SE(e){let t=bE(e.query);if(!t)return[];let n=[];for(let r of e.timelineEntries){if(r.kind!==`message`||r.message.role!==`user`&&r.message.role!==`assistant`)continue;let e=xE(r),i=0;t.lastIndex=0;for(let a of e.matchAll(t)){let e=a.index??0,t=a[0]??``;if(t.length===0)continue;let o=e+t.length,s=`${r.message.id}:${e}:${o}:${i}`;n.push({id:s,messageId:r.message.id,occurrenceIndex:n.length,messageOccurrenceIndex:i,start:e,end:o,text:t}),i+=1}}return n}function CE(e,t){return t<=0?0:Math.min(Math.max(0,e),t-1)}function wE(e){return e.matchCount<=0?0:e.direction===`previous`?(e.currentIndex-1+e.matchCount)%e.matchCount:(e.currentIndex+1)%e.matchCount}function TE(e){let t=bE(e.query);if(!t)return e.text;let n=[],r=0;t.lastIndex=0;for(let i of e.text.matchAll(t)){let t=i.index??0,a=i[0]??``;if(a.length===0)continue;let o=t+a.length;t>r&&n.push(e.text.slice(r,t));let s=e.cursor.occurrenceIndex;e.cursor.occurrenceIndex+=1,n.push((0,Y.jsx)(`mark`,{className:G(`thread-message-search-highlight`,e.activeOccurrenceIndex===s&&`thread-message-search-highlight-active`),"data-thread-message-search-hit":`true`,"data-thread-message-search-active":e.activeOccurrenceIndex===s?`true`:void 0,children:a},`${e.keyPrefix}:thread-search:${t}:${o}:${s}`)),r=o}return n.length===0?e.text:(r<e.text.length&&n.push(e.text.slice(r)),(0,Y.jsx)(Y.Fragment,{children:n}))}var EE=/(^|\s)\$([a-zA-Z][a-zA-Z0-9:_-]*)(?=\s|$)/g;function DE(e){return e.highlight?TE({text:e.text,query:e.highlight.query,activeOccurrenceIndex:e.highlight.activeOccurrenceIndex,cursor:e.highlight.cursor,keyPrefix:`${e.highlight.keyPrefix}:${e.start}`}):e.text}function OE(e){let t=(0,J.c)(14),n,r;if(t[0]!==e.searchHighlight||t[1]!==e.skills||t[2]!==e.text){r=Symbol.for(`react.early_return_sentinel`);bb0:{let i=[],a=0;for(let t of e.text.matchAll(EE)){let n=t[1]??``,r=t[2]??``,o=(t.index??0)+n.length,s=`$${r}`,c=e.skills.find(e=>e.name===r);c&&(o>a&&i.push(DE({text:e.text.slice(a,o),start:a,highlight:e.searchHighlight})),i.push((0,Y.jsx)(AE,{skill:c,rawText:s},`${o}:${r}`)),a=o+s.length)}if(a===0){let n;t[5]!==e.searchHighlight||t[6]!==e.text?(n=DE({text:e.text,start:0,highlight:e.searchHighlight}),t[5]=e.searchHighlight,t[6]=e.text,t[7]=n):n=t[7];let i;t[8]===n?i=t[9]:(i=(0,Y.jsx)(Y.Fragment,{children:n}),t[8]=n,t[9]=i),r=i;break bb0}if(a<e.text.length){let n;t[10]!==a||t[11]!==e.searchHighlight||t[12]!==e.text?(n=DE({text:e.text.slice(a),start:a,highlight:e.searchHighlight}),t[10]=a,t[11]=e.searchHighlight,t[12]=e.text,t[13]=n):n=t[13],i.push(n)}n=(0,Y.jsx)(Y.Fragment,{children:i})}t[0]=e.searchHighlight,t[1]=e.skills,t[2]=e.text,t[3]=n,t[4]=r}else n=t[3],r=t[4];return r===Symbol.for(`react.early_return_sentinel`)?n:r}function kE(e,t,n){return q.Children.map(e,e=>typeof e==`string`?(0,Y.jsx)(OE,{text:e,skills:t,searchHighlight:n}):!(0,q.isValidElement)(e)||e.type===`code`||e.type===`a`||!(`children`in e.props)?e:(0,q.cloneElement)(e,void 0,kE(e.props.children,t,n)))}function AE(e){let t=(0,J.c)(10),n;t[0]===e.rawText?n=t[1]:(n=(0,Y.jsx)(`span`,{className:`sr-only`,children:e.rawText}),t[0]=e.rawText,t[1]=n);let r;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:mE,dangerouslySetInnerHTML:{__html:_E}}),t[2]=r):r=t[2];let i;t[3]===e.skill?i=t[4]:(i=dE(e.skill),t[3]=e.skill,t[4]=i);let a;t[5]===i?a=t[6]:(a=(0,Y.jsxs)(`span`,{"aria-hidden":`true`,className:gE,children:[r,(0,Y.jsx)(`span`,{className:hE,children:i})]}),t[5]=i,t[6]=a);let o;return t[7]!==n||t[8]!==a?(o=(0,Y.jsxs)(`span`,{className:`inline-flex align-middle leading-none`,children:[n,a]}),t[7]=n,t[8]=a,t[9]=o):o=t[9],o}var jE={light:`pierre-light`,dark:`pierre-dark`};function ME(e){return e===`dark`?jE.dark:jE.light}var NE=2166136261,PE=16777619,FE=2654435769,IE=2246822507;function LE(e,t=NE,n=PE){let r=t>>>0;for(let t=0;t<e.length;t+=1)r^=e.charCodeAt(t),r=Math.imul(r,n)>>>0;return r>>>0}function RE(e,t=`diff-panel`){let n=e.replace(/^\n+|\n+$/g,``),r=LE(n,NE,PE).toString(36),i=LE(n,FE,IE).toString(36);return`${t}:${n.length}:${r}:${i}`}var zE={sourceCharacters:2e4,tokens:400,statements:200,lineCharacters:1e3,edges:100,cacheBytes:5242880,cacheEntries:50,pending:32};function BE(e){return/^(mermaid|mmd)$/i.test(e)}function VE(e){if(e.length>zE.sourceCharacters||/%%\s*\{|^\s*---|@|\\|\$\$|<[a-z!/]|&#?|\b(?:https?|data|javascript|file):|url\s*\(/im.test(e)||/\b(?:click|classDef|class|style|linkStyle|links|link|callback|accDescr)\b/i.test(e))return!1;let t=e.split(/[\n;]/);if(t.length>zE.statements||t.some(e=>e.length>zE.lineCharacters)||(e.match(/[\p{L}\p{N}_]+/gu)?.length??0)>zE.tokens)return!1;let n=t.find(e=>e.trim()&&!e.trimStart().startsWith(`%%`))?.trim();return n!==void 0&&/^(?:(?:flowchart|graph)\s+(?:TB|TD|BT|RL|LR)\b|sequenceDiagram\b)/.test(n)}function HE(e,t,n){if(t===void 0||n===void 0)return!1;let r=e.slice(t,n).trimEnd().split(`
181
+ `);if(r.length<2)return!1;let i=/^ {0,3}(`{3,}|~{3,})/.exec(r[0]);if(!i)return!1;let a=i[1],o=r.at(-1).trim();return o.length>=a.length&&[...o].every(e=>e===a[0])}var UE=new Oi(zE.cacheEntries,zE.cacheBytes),WE=new Map,GE=Promise.resolve(),KE=0;function qE(e,t){return JSON.stringify([t,e])}function JE(e,t){return UE.get(qE(e,t))||null}function YE(e,t,n){if(!n()||!VE(e))return Promise.resolve(null);let i=qE(e,t),a=UE.get(i);if(a!==null)return Promise.resolve(a||null);let o=WE.get(i);if(o)return o.consumers.add(n),o.promise;if(WE.size>=zE.pending)return Promise.resolve(null);let s=new Set([n]),c=()=>[...s].some(e=>e()),l=GE.then(async()=>{if(!c()||(await new Promise(e=>setTimeout(e,0)),!c()))return null;let{renderMermaidImage:n}=await r(async()=>{let{renderMermaidImage:e}=await import(`./mermaidEngine-DksLcesB.js`);return{renderMermaidImage:e}},[]);if(!c())return null;let a;try{a=await n(e,t,`ryco-mermaid-${++KE}`)}catch(e){throw c()&&UE.set(i,!1,2*i.length),e}if(!c())return null;let o=2*(i.length+a.src.length);return o<=zE.cacheBytes&&UE.set(i,a,o),a}).finally(()=>WE.delete(i));return WE.set(i,{promise:l,consumers:s}),GE=l.catch(()=>void 0),l}function XE(e){let t=(0,J.c)(28),{source:n,theme:r,fallback:i}=e,a;t[0]!==n||t[1]!==r?(a=()=>JE(n,r),t[0]=n,t[1]=r,t[2]=a):a=t[2];let[o,s]=(0,q.useState)(a),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)($E),m=(0,q.useRef)(null),h,g;t[3]!==o||t[4]!==f?(h=()=>{if(o||f)return;let e=new IntersectionObserver(t=>{t.some(QE)&&(p(!0),e.disconnect())},{rootMargin:`200px`});return m.current&&e.observe(m.current),()=>e.disconnect()},g=[o,f],t[3]=o,t[4]=f,t[5]=h,t[6]=g):(h=t[5],g=t[6]),(0,q.useEffect)(h,g);let _,v;t[7]!==u||t[8]!==o||t[9]!==c||t[10]!==n||t[11]!==r||t[12]!==f?(_=()=>{if(!f||o||u||c)return;let e=!0;return YE(n,r,()=>e).then(t=>{e&&(t?s(t):d(!0))},()=>{e&&d(!0)}),()=>{e=!1}},v=[n,r,f,o,u,c],t[7]=u,t[8]=o,t[9]=c,t[10]=n,t[11]=r,t[12]=f,t[13]=_,t[14]=v):(_=t[13],v=t[14]),(0,q.useEffect)(_,v);let y=o&&!c&&!u?`diagram`:`source`,b;t[15]!==u||t[16]!==o||t[17]!==c?(b=o&&!u?(0,Y.jsx)(`button`,{type:`button`,className:`chat-markdown-mermaid-toggle`,"aria-pressed":c,onClick:()=>{l(ZE)},children:c?`Show diagram`:`Show source`}):null,t[15]=u,t[16]=o,t[17]=c,t[18]=b):b=t[18];let x;t[19]!==u||t[20]!==i||t[21]!==o||t[22]!==c?(x=o&&!c&&!u?(0,Y.jsx)(`img`,{src:o.src,width:o.width,height:o.height,alt:`Mermaid diagram; use Show source to read its definition`,onError:()=>d(!0)}):i,t[19]=u,t[20]=i,t[21]=o,t[22]=c,t[23]=x):x=t[23];let S;return t[24]!==y||t[25]!==b||t[26]!==x?(S=(0,Y.jsxs)(`div`,{ref:m,className:`chat-markdown-mermaid`,"data-mermaid":y,children:[b,x]}),t[24]=y,t[25]=b,t[26]=x,t[27]=S):S=t[27],S}function ZE(e){return!e}function QE(e){return e.isIntersecting}function $E(){return typeof IntersectionObserver>`u`}var eD=.16,tD=2e3,nD=.15,rD=.05;function iD(e,t){if(t<=0||t>=e.length)return t;let n=e.charCodeAt(t-1);return n>=55296&&n<=56319?t-1:t}function aD(e,t){let n=(0,J.c)(10),r=rs(`(prefers-reduced-motion: reduce)`),i=t&&!r,[a,o]=(0,q.useState)(e),s=(0,q.useRef)(e),c=(0,q.useRef)(e.length),l=(0,q.useRef)(e.length),u=(0,q.useRef)(0),d=(0,q.useRef)(null),f=(0,q.useRef)(oD),p=(0,q.useRef)(0),m;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>{d.current!==null&&(cancelAnimationFrame(d.current),d.current=null)},n[0]=m):m=n[0];let h=m,g;n[1]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{d.current===null&&(d.current=requestAnimationFrame(e=>{d.current=null,f.current(e)}))},n[1]=g):g=n[1];let _=g,v,y;n[2]===Symbol.for(`react.memo_cache_sentinel`)?(v=()=>{f.current=e=>{let t=p.current,n=t?Math.min((e-t)/1e3,rD):0;p.current=e;let r=s.current,i=r.length;c.current>i&&(c.current=i);let a=i-c.current;if(a<=0){u.current=0,p.current=0;return}let d=Math.min(tD,a/eD);u.current+=(d-u.current)*nD,c.current=Math.min(i,c.current+u.current*n);let f=iD(r,Math.floor(c.current));f!==l.current&&(l.current=f,o(f>=i?r:r.slice(0,f))),i-c.current>0?_():(u.current=0,p.current=0)}},y=[_],n[2]=v,n[3]=y):(v=n[2],y=n[3]),(0,q.useEffect)(v,y);let b,x;n[4]!==i||n[5]!==e?(b=()=>{let t=s.current,n=e.length>=t.length&&e.startsWith(t);if(s.current=e,!i||!n){h(),c.current=e.length,l.current=e.length,u.current=0,p.current=0,o(e);return}e.length>c.current&&_()},x=[i,h,_,e],n[4]=i,n[5]=e,n[6]=b,n[7]=x):(b=n[6],x=n[7]),(0,q.useEffect)(b,x);let S,C;return n[8]===Symbol.for(`react.memo_cache_sentinel`)?(S=()=>h,C=[h],n[8]=S,n[9]=C):(S=n[8],C=n[9]),(0,q.useEffect)(S,C),i?a:e}function oD(){}function sD(e){return e.replaceAll(`\\`,`/`)}function cD(e){return/^\/[A-Za-z]:\//.test(e)?e.slice(1):e}function lD(e){return e.replace(/[\\/]+$/,``)}function uD(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t>=0?e.slice(t+1):e}function dD(e){return e.replace(/^\.\/+/,``).replace(/^\/+/,``)}function fD(e,t){let{path:n,line:r,column:i}=Kd(e),a=cD(sD(n)),o=a;if(t){let e=cD(sD(lD(t))),n=uD(e),r=a.toLowerCase(),i=e.toLowerCase(),s=`${i}/`,c=`${n.toLowerCase()}/`;if(r===i)o=n;else if(r.startsWith(s))o=`${n}/${a.slice(e.length+1)}`;else if(!a.startsWith(`/`)){let e=dD(a);o=r.startsWith(c)?a:`${n}/${e}`}}return r?`${o}:${r}${i?`:${i}`:``}`:o}var pD=/^[A-Za-z]:[\\/]/,mD=/^\\\\/,hD=/^([A-Za-z][A-Za-z0-9+.-]*):(.*)$/,gD=/^(~\/|\.{1,2}\/)/,_D=/^[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)+(?::\d+){0,2}$/,vD=/^[A-Za-z0-9._-]+\.[A-Za-z0-9_-]+(?::\d+){0,2}$/,yD=/:\d+(?::\d+)?$/,bD=/^\d+(?::\d+)?$/,xD=[`/Users/`,`/home/`,`/tmp/`,`/var/`,`/etc/`,`/opt/`,`/mnt/`,`/Volumes/`,`/private/`,`/root/`];function SD(e){try{return decodeURIComponent(e)}catch{return e}}function CD(e){let t=e.indexOf(`#`),n=t>=0?e.slice(0,t):e,r=t>=0?e.slice(t):``,i=n.indexOf(`?`);return{path:i>=0?n.slice(0,i):n,hash:r}}function wD(e,t){try{let n=new URL(e);if(n.protocol.toLowerCase()!==`file:`)return null;let r=n.pathname;if(r.length===0)return null;let i=/^\/[A-Za-z]:[\\/]/.test(r)?r.slice(1):r;return{path:t?.decodePath===!1?i:SD(i),hash:n.hash}}catch{return null}}function TD(e){if(!e)return null;let t=wD(e.trim(),{decodePath:!1});return t?`${t.path}${t.hash}`:null}function ED(e){if(!e.startsWith(`/`))return!1;if(xD.some(t=>e.startsWith(t))||yD.test(e))return!0;let t=e.slice(e.lastIndexOf(`/`)+1);return/\.[A-Za-z0-9_-]+$/.test(t)}function DD(e,t){if(!t||yD.test(e))return e;let n=t.match(/^#L(\d+)(?:C(\d+))?$/i);if(!n?.[1])return e;let r=n[1],i=n[2];return`${e}:${r}${i?`:${i}`:``}`}function OD(e){return pD.test(e)||mD.test(e)||gD.test(e)?!0:e.startsWith(`/`)?ED(e):_D.test(e)||vD.test(e)}function kD(e){return gD.test(e)||!e.startsWith(`/`)&&!pD.test(e)&&!mD.test(e)}function AD(e){let t=e.match(hD);if(!t)return!1;let n=t[2]??``;return n.startsWith(`//`)?!0:!bD.test(n)}function jD(e,t){if(!e)return null;let n=e.trim();if(n.length===0||n.startsWith(`#`))return null;let r=n.toLowerCase().startsWith(`file:`)?wD(n):null,i=r??CD(n),a=r?i.path.trim():SD(i.path.trim()),o=SD(i.hash.trim());if(a.length===0||!pD.test(a)&&!mD.test(a)&&AD(a)||!OD(a))return null;let s=DD(a,o);return kD(s)?t?$d(s,t):null:s}function MD(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t>=0?e.slice(t+1):e}function ND(e,t){let n=jD(e,t);if(!n)return null;let{path:r,line:i,column:a}=Kd(n),o=i?Number.parseInt(i,10):NaN,s=a?Number.parseInt(a,10):NaN,c=Number.isFinite(o)?o:void 0,l=Number.isFinite(s)?s:void 0;return{filePath:r,targetPath:n,displayPath:fD(n,t),basename:MD(r),...c===void 0?{}:{line:c},...l===void 0?{}:{column:l}}}function PD(e,t){if(!t||!e?.startsWith(`/ryco/thread/`))return null;let n=e.slice(13);try{let e=decodeURIComponent(n);if(!e||e.length>256||e.includes(`/`)||e.includes(`\\`))return null;for(let t of e)if(t.charCodeAt(0)<32)return null;return`/${encodeURIComponent(t)}/${encodeURIComponent(e)}`}catch{return null}}var FD=/^([A-Za-z][A-Za-z0-9+.-]*):/,ID=/^[A-Za-z]:[\\/]/;function LD(e){try{return decodeURIComponent(e)}catch{return null}}function RD(e){let t=[e.indexOf(`?`),e.indexOf(`#`)].filter(e=>e>=0).reduce((e,t)=>Math.min(e,t),e.length);return e.slice(0,t)}function zD(e){let t=e.replaceAll(`\\`,`/`),n=t.match(/^([A-Za-z]:)\//)?.[1];if(!(t.startsWith(`/`)||n!==void 0)||t.startsWith(`//`))return null;let r=[];for(let e of t.slice(n?n.length+1:1).split(`/`))if(e.length!==0&&e!==`.`){if(e===`..`){if(r.length===0)return null;r.pop();continue}r.push(e)}return`${n?`${n}/`:`/`}${r.join(`/`)}`}function BD(e){try{let t=new URL(e);if(t.protocol!==`file:`||t.hostname&&t.hostname!==`localhost`)return null;let n=LD(t.pathname);return n?/^\/[A-Za-z]:\//.test(n)?n.slice(1):n:null}catch{return null}}function VD(e,t){if(!e||!t)return null;let n=e.trim();if(!n||n.includes(`\0`))return null;let r=ID.test(n)?void 0:n.match(FD)?.[1]?.toLowerCase();if(r&&r!==`file`)return null;let i=r===`file`?BD(n):LD(RD(n));if(!i)return null;let a=zD(t);if(!a)return null;let o=zD(i.startsWith(`/`)||ID.test(i)?i:`${a}/${i}`);if(!o)return null;let s=ID.test(a),c=s?a.toLowerCase():a,l=s?o.toLowerCase():o;if(l===c||!l.startsWith(`${c}/`))return null;let u=o.slice(a.length+1);return u.length>0?u:null}function HD(e){if(!e)return!1;let t=e.trim();return/^https:\/\//i.test(t)||/^data:image\/(?:png|jpeg|gif|webp);base64,[A-Za-z0-9+/=\s]+$/i.test(t)}var UD=class extends q.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}render(){return this.state.hasError?this.props.fallback:this.props.children}},WD=[],GD=(0,q.memo)(function(e){let t=(0,J.c)(12),[n,r]=(0,q.useState)(null),[i,a]=(0,q.useState)(!1),o,s;if(t[0]!==e.cwd||t[1]!==e.environmentId||t[2]!==e.relativePath?(o=()=>{let t=!0;r(null),a(!1);let n=Dr(e.environmentId);return n?(n.projects.readFileBinary({cwd:e.cwd,relativePath:e.relativePath}).then(e=>{t&&r(`data:${e.mimeType};base64,${e.dataBase64}`)}).catch(()=>{t&&a(!0)}),()=>{t=!1}):(a(!0),()=>{t=!1})},s=[e.cwd,e.environmentId,e.relativePath],t[0]=e.cwd,t[1]=e.environmentId,t[2]=e.relativePath,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s),i){let n=e.alt||`Image unavailable`,r;return t[5]===n?r=t[6]:(r=(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`[`,n,`]`]}),t[5]=n,t[6]=r),r}if(!n){let e;return t[7]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`[Loading image…]`}),t[7]=e):e=t[7],e}let c;return t[8]!==e.alt||t[9]!==e.title||t[10]!==n?(c=(0,Y.jsx)(`img`,{src:n,alt:e.alt,title:e.title,loading:`lazy`,decoding:`async`,draggable:!1,className:`max-h-[32rem] max-w-full rounded-lg border border-border/60 object-contain`}),t[8]=e.alt,t[9]=e.title,t[10]=n,t[11]=c):c=t[11],c}),KD=/(?:^|\s)language-([^\s]+)/,qD=new Oi(500,52428800),JD=new Map;function YD(e){let t=e?.match(KD)?.[1]??`text`;return t===`gitignore`?`ini`:t}function XD(e){return typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(e=>XD(e)).join(``):(0,q.isValidElement)(e)?XD(e.props.children):``}function ZD(e){let t=q.Children.toArray(e);if(t.length!==1)return null;let n=t[0];return!(0,q.isValidElement)(n)||n.type!==`code`?null:{className:n.props.className,code:XD(n.props.children)}}function QD(e,t,n){return`${LE(e).toString(36)}:${e.length}:${t}:${n}`}function $D(e,t){return Math.max(e.length*2,t.length*3)}function eO(e){let t=JD.get(e);if(t)return t;let n=_C({themes:[ME(`dark`),ME(`light`)],langs:[e],preferredHighlighter:`shiki-js`}).catch(t=>{if(JD.delete(e),e===`text`)throw t;return eO(`text`)});return JD.set(e,n),n}function tO(e){let t=(0,J.c)(23),{code:n,children:r,terminalSource:i}=e,a=QT(),o=xc()===`phone`,[s,c]=(0,q.useState)(!1),l;t[0]===i?l=t[1]:(l=i===void 0?null:je(i),t[0]=i,t[1]=l);let u=l,[d,f]=(0,q.useState)(!1),p=(0,q.useRef)(null),m;t[2]===n?m=t[3]:(m=()=>{typeof navigator>`u`||navigator.clipboard==null||navigator.clipboard.writeText(n).then(()=>{p.current!=null&&clearTimeout(p.current),f(!0),p.current=setTimeout(()=>{f(!1),p.current=null},1200)}).catch(iO)},t[2]=n,t[3]=m);let h=m,g,_;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>()=>{p.current!=null&&(clearTimeout(p.current),p.current=null)},_=[],t[4]=g,t[5]=_):(g=t[4],_=t[5]),(0,q.useEffect)(g,_);let v;t[6]!==a||t[7]!==s||t[8]!==u||t[9]!==o||t[10]!==i?(v=a&&!o&&i!==void 0?(0,Y.jsx)(`button`,{type:`button`,className:`chat-markdown-insert-button`,disabled:s||u!==null,title:u??`Insert in a new terminal for this thread. Review, then press Enter to execute.`,onClick:()=>{c(!0),a(i).then(rO,nO).finally(()=>c(!1))},children:s?`Inserting…`:`Insert in terminal`}):null,t[6]=a,t[7]=s,t[8]=u,t[9]=o,t[10]=i,t[11]=v):v=t[11];let y=d?`Copied`:`Copy code`,b=d?`Copied`:`Copy code`,x;t[12]===d?x=t[13]:(x=d?(0,Y.jsx)(Yn,{className:`size-3`}):(0,Y.jsx)(Hn,{className:`size-3`}),t[12]=d,t[13]=x);let S;t[14]!==h||t[15]!==y||t[16]!==b||t[17]!==x?(S=(0,Y.jsx)(`button`,{type:`button`,className:`chat-markdown-copy-button`,onClick:h,title:y,"aria-label":b,children:x}),t[14]=h,t[15]=y,t[16]=b,t[17]=x,t[18]=S):S=t[18];let C;return t[19]!==r||t[20]!==v||t[21]!==S?(C=(0,Y.jsxs)(`div`,{className:`chat-markdown-codeblock leading-snug`,children:[v,S,r]}),t[19]=r,t[20]=v,t[21]=S,t[22]=C):C=t[22],C}function nO(e){Ve.add(fc({type:`error`,title:`Unable to insert in terminal`,description:e instanceof Error?e.message:`Terminal insertion failed.`}))}function rO(){Ve.add({type:`success`,title:`Inserted in terminal`,description:`Review the snippet, then press Enter in the terminal to execute.`})}function iO(){}function aO(e){let{children:t,phoneFallback:n}=e;return xc()===`phone`?n:t}function oO(e){let t=(0,J.c)(13),{className:n,code:r,themeName:i}=e,a,o,s;t[0]!==n||t[1]!==r||t[2]!==i?(o=YD(n),a=QD(r,o,i),s=qD.get(a),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s):(a=t[3],o=t[4],s=t[5]);let c=s;if(c!=null){let e;return t[6]===c?e=t[7]:(e=(0,Y.jsx)(`div`,{className:`chat-markdown-shiki`,dangerouslySetInnerHTML:{__html:c}}),t[6]=c,t[7]=e),e}let l;return t[8]!==a||t[9]!==r||t[10]!==o||t[11]!==i?(l=(0,Y.jsx)(sO,{code:r,language:o,themeName:i,cacheKey:a}),t[8]=a,t[9]=r,t[10]=o,t[11]=i,t[12]=l):l=t[12],l}function sO(e){let t=(0,J.c)(18),{code:n,language:r,themeName:i,cacheKey:a}=e,o;t[0]===r?o=t[1]:(o=eO(r),t[0]=r,t[1]=o);let s=(0,q.use)(o),c;try{let e;t[2]!==n||t[3]!==s||t[4]!==r||t[5]!==i?(e=s.codeToHtml(n,{lang:r,theme:i}),t[2]=n,t[3]=s,t[4]=r,t[5]=i,t[6]=e):e=t[6],c=e}catch(e){let a=e;console.warn(`Code highlighting failed for language "${r}", falling back to plain text.`,a instanceof Error?a.message:a);let o;t[7]!==n||t[8]!==s||t[9]!==i?(o=s.codeToHtml(n,{lang:`text`,theme:i}),t[7]=n,t[8]=s,t[9]=i,t[10]=o):o=t[10],c=o}let l=c,u,d;t[11]!==a||t[12]!==n||t[13]!==l?(u=()=>{qD.set(a,l,$D(l,n))},d=[a,n,l],t[11]=a,t[12]=n,t[13]=l,t[14]=u,t[15]=d):(u=t[14],d=t[15]),(0,q.useEffect)(u,d);let f;return t[16]===l?f=t[17]:(f=(0,Y.jsx)(`div`,{className:`chat-markdown-shiki`,dangerouslySetInnerHTML:{__html:l}}),t[16]=l,t[17]=f),f}function cO(e){let t=(0,J.c)(6),{className:n,code:r,preProps:i}=e,a;t[0]!==n||t[1]!==r?(a=(0,Y.jsx)(`code`,{className:n,children:r}),t[0]=n,t[1]=r,t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==a?(o=(0,Y.jsx)(`pre`,{...i,children:a}),t[3]=i,t[4]=a,t[5]=o):o=t[5],o}var lO=/\[[^\]]*]\(([^)\s]+)(?:\s+["'][^"']*["'])?\)/g,uO=`chat-markdown-file-link`,dO=`chat-markdown-file-link-icon`,fO=`chat-markdown-file-link-label`;function pO(e){return e.replaceAll(`\\`,`/`).split(`/`).filter(e=>e.length>0).slice(0,-1)}function mO(e){let t=new Map;for(let n of e){let e=n.replaceAll(`\\`,`/`).split(`/`).filter(e=>e.length>0),r=e[e.length-1];if(!r)continue;let i=t.get(r)??new Set;i.add(n),t.set(r,i)}let n=new Map;for(let e of t.values()){let t=[...e];if(t.length<2)continue;let r=new Map(t.map(e=>[e,pO(e)])),i=new Map;for(let e of t){let n=r.get(e)??[],a=n.length;for(let i=1;i<=n.length;i+=1){let o=n.slice(-i).join(`/`);if(!t.some(t=>t!==e&&(r.get(t)??[]).slice(-i).join(`/`)===o)){a=i;break}}i.set(e,a)}for(let e of t){let t=r.get(e)??[];if(t.length===0)continue;let a=i.get(e)??1,o=Math.min(t.length,Math.max(a,2));n.set(e,t.slice(-o).join(`/`))}}return n}function hO(e){let t=[];for(let n of e.matchAll(lO)){let e=n[1]?.trim();e&&t.push(e)}return t}function gO(e){return TD(e.trim())??e.trim()}var _O=(0,q.memo)(function(e){let t=(0,J.c)(43),{href:n,targetPath:r,displayPath:i,filePath:a,label:o,theme:s,className:c}=e,l;t[0]===r?l=t[1]:(l=()=>{let e=Cn();if(!e){Ve.add({type:`error`,title:`Open in editor is unavailable`});return}lc(e,r).catch(SO)},t[0]=r,t[1]=l);let u=l,d=CO,f;t[2]!==i||t[3]!==u||t[4]!==r?(f=async e=>{let t=Cn();if(!t)return;let n=await t.contextMenu.show([{id:`open`,label:`Open in editor`},{id:`copy-relative`,label:`Copy relative path`},{id:`copy-full`,label:`Copy full path`}],e);if(n===`open`){u();return}if(n===`copy-relative`){d(i,`Relative path`);return}n===`copy-full`&&d(r,`Full path`)},t[2]=i,t[3]=u,t[4]=r,t[5]=f):f=t[5];let p=f,m;t[6]===p?m=t[7]:(m=e=>{e.preventDefault(),e.stopPropagation(),p({x:e.clientX,y:e.clientY})},t[6]=p,t[7]=m);let h=m,g=xc()===`phone`,_;t[8]===p?_=t[9]:(_=e=>{p(e)},t[8]=p,t[9]=_);let v=!g,y;t[10]===v?y=t[11]:(y={disabled:v},t[10]=v,t[11]=y);let b=El(_,y),x;t[12]===c?x=t[13]:(x=G(uO,c),t[12]=c,t[13]=x);let S=b.onPointerDown,C=b.onPointerMove,w=b.onPointerUp,T=b.onPointerCancel,E=b.onPointerLeave,D=b.onClickCapture,O;t[14]===u?O=t[15]:(O=e=>{e.preventDefault(),e.stopPropagation(),u()},t[14]=u,t[15]=O);let k;t[16]!==h||t[17]!==b?(k=e=>{b.onContextMenu(e),!e.defaultPrevented&&h(e)},t[16]=h,t[17]=b,t[18]=k):k=t[18];let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=G(dO,`text-current`),t[19]=A):A=t[19];let j;t[20]!==a||t[21]!==s?(j=(0,Y.jsx)(cE,{pathValue:a,kind:`file`,theme:s,className:A}),t[20]=a,t[21]=s,t[22]=j):j=t[22];let M;t[23]===o?M=t[24]:(M=(0,Y.jsx)(`span`,{className:fO,children:o}),t[23]=o,t[24]=M);let N;t[25]!==n||t[26]!==b.onClickCapture||t[27]!==b.onPointerCancel||t[28]!==b.onPointerDown||t[29]!==b.onPointerLeave||t[30]!==b.onPointerMove||t[31]!==b.onPointerUp||t[32]!==O||t[33]!==k||t[34]!==j||t[35]!==M||t[36]!==x?(N=(0,Y.jsx)(So,{render:(0,Y.jsxs)(`a`,{href:n,className:x,onPointerDown:S,onPointerMove:C,onPointerUp:w,onPointerCancel:T,onPointerLeave:E,onClickCapture:D,onClick:O,onContextMenu:k,children:[j,M]})}),t[25]=n,t[26]=b.onClickCapture,t[27]=b.onPointerCancel,t[28]=b.onPointerDown,t[29]=b.onPointerLeave,t[30]=b.onPointerMove,t[31]=b.onPointerUp,t[32]=O,t[33]=k,t[34]=j,t[35]=M,t[36]=x,t[37]=N):N=t[37];let P;t[38]===i?P=t[39]:(P=(0,Y.jsx)(Co,{side:`top`,className:`max-w-[min(40rem,calc(100vw-2rem))] font-mono text-[11px] leading-tight`,children:(0,Y.jsx)(`div`,{className:`markdown-file-link-tooltip-scroll overflow-x-auto whitespace-nowrap`,children:i})}),t[38]=i,t[39]=P);let F;return t[40]!==N||t[41]!==P?(F=(0,Y.jsxs)(wo,{children:[N,P]}),t[40]=N,t[41]=P,t[42]=F):F=t[42],F},vO);function vO(e,t){return e.href===t.href&&e.targetPath===t.targetPath&&e.displayPath===t.displayPath&&e.filePath===t.filePath&&e.label===t.label&&e.theme===t.theme&&e.className===t.className}function yO(e){let t=(0,J.c)(3),n=!!e.isStreaming,r=aD(e.text,n),i=(0,q.useDeferredValue)(r),a=n?i:r,o;return t[0]!==a||t[1]!==e?(o=(0,Y.jsx)(bO,{...e,text:a}),t[0]=a,t[1]=e,t[2]=o):o=t[2],o}var bO=(0,q.memo)(function({text:e,cwd:t,environmentId:n,isStreaming:r=!1,skills:i=WD,searchHighlight:a,allowTerminalInsertion:o=!1}){Qo(`ChatMarkdown`);let s=r?``:e,{resolvedTheme:c}=kl(),l=ME(c),u=r&&/(?:^|\n) {0,3}(?:`{3}|~{3})/.test(e),d=(0,q.useMemo)(()=>[ga,...u?[rE()]:[]],[u]),f=(0,q.useRef)({occurrenceIndex:0});f.current.occurrenceIndex=0;let p=(0,q.useRef)(void 0);p.current=a?{...a,cursor:f.current,keyPrefix:`chat-markdown`}:void 0;let m=JSON.stringify(hO(e)),h=(0,q.useMemo)(()=>{let e=new Map;for(let n of JSON.parse(m)){let r=gO(n);if(e.has(r))continue;let i=ND(r,t);i&&e.set(r,i)}return e},[t,m]),g=(0,q.useMemo)(()=>mO([...h.values()].map(e=>e.filePath)),[h]),_=(0,q.useCallback)(e=>TD(e)??Sa(e),[]),v=(0,q.useMemo)(()=>({p({node:e,children:t,...n}){return(0,Y.jsx)(`p`,{...n,children:kE(t,i,p.current)})},li({node:e,children:t,...n}){return(0,Y.jsx)(`li`,{...n,children:kE(t,i,p.current)})},blockquote({node:e,children:t,...n}){return(0,Y.jsx)(`blockquote`,{...n,children:kE(t,i,p.current)})},table({node:e,children:t,...n}){return(0,Y.jsx)(`div`,{className:`chat-markdown-table-scroll`,children:(0,Y.jsx)(`table`,{...n,children:t})})},td({node:e,children:t,...n}){return(0,Y.jsx)(`td`,{...n,children:kE(t,i,p.current)})},th({node:e,children:t,...n}){return(0,Y.jsx)(`th`,{...n,children:kE(t,i,p.current)})},a({node:e,href:t,...r}){let a=PD(t,n);if(a)return(0,Y.jsx)(`a`,{...r,href:a,children:r.children});let o=t?gO(t):``,s=o?h.get(o):null;if(!s)return(0,Y.jsx)(`a`,{...r,href:t,target:`_blank`,rel:`noopener noreferrer`,children:kE(r.children,i,p.current)});let l=g.get(s.filePath),u=[s.basename];return typeof l==`string`&&l.length>0&&u.push(l),s.line&&(s.line!==1||s.column)&&u.push(`L${s.line}${s.column?`:C${s.column}`:``}`),(0,Y.jsx)(_O,{href:t??s.targetPath,targetPath:s.targetPath,displayPath:s.displayPath,filePath:s.filePath,label:u.join(` · `),theme:c,className:r.className})},img({node:e,src:r,alt:i,title:a}){let o=VD(r,t);return o&&t&&n?(0,Y.jsx)(GD,{environmentId:n,cwd:t,relativePath:o,alt:i??``,...a?{title:a}:{}}):HD(r)?(0,Y.jsx)(`img`,{src:r,alt:i??``,title:a,loading:`lazy`,decoding:`async`,draggable:!1,referrerPolicy:`no-referrer`,className:`max-h-[32rem] max-w-full rounded-lg border border-border/60 object-contain`}):(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`[`,i||`Image unavailable`,`]`]})},pre({node:e,children:t,...n}){let i=ZD(t);if(!i)return(0,Y.jsx)(`pre`,{...n,children:t});if(r)return i.className?.split(/\s+/).includes(`language-ryco-attachments`)?(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,role:`status`,children:`Preparing files…`}):(0,Y.jsx)(tO,{code:i.code,children:(0,Y.jsx)(cO,{className:i.className,code:i.code,preProps:n})});let a=(0,Y.jsx)(UD,{fallback:(0,Y.jsx)(`pre`,{...n,children:t}),children:(0,Y.jsx)(q.Suspense,{fallback:(0,Y.jsx)(`pre`,{...n,children:t}),children:(0,Y.jsx)(oO,{className:i.className,code:i.code,themeName:l})})});if(BE(YD(i.className))){let t=(0,Y.jsx)(cO,{className:i.className,code:i.code,preProps:n});return(0,Y.jsx)(tO,{code:i.code,children:(0,Y.jsx)(aO,{phoneFallback:a,children:HE(s,e?.position?.start.offset,e?.position?.end.offset)&&VE(i.code)?(0,Y.jsx)(XE,{source:i.code,theme:c,fallback:t},JSON.stringify([c,i.code])):t})})}let u=o&&Ct(YD(i.className))?$T(s,e?.position?.start.offset,e?.position?.end.offset,i.code):void 0;return(0,Y.jsx)(tO,{code:i.code,terminalSource:u,children:a})}}),[l,t,n,g,r,s,h,c,i,o]);return(0,Y.jsx)(`div`,{className:`chat-markdown w-full min-w-0 text-sm leading-relaxed text-foreground/80`,children:(0,Y.jsx)(Ea,{remarkPlugins:d,components:v,urlTransform:_,children:e})})}),xO=(0,q.memo)(yO);function SO(e){Ve.add(fc({type:`error`,title:`Unable to open file`,description:e instanceof Error?e.message:`An error occurred.`}))}function CO(e,t){if(typeof window>`u`||!navigator.clipboard?.writeText){Ve.add(fc({type:`error`,title:`Failed to copy ${t.toLowerCase()}`,description:`Clipboard API unavailable.`}));return}navigator.clipboard.writeText(e).then(()=>{Ve.add({type:`success`,title:`${t} copied`,description:e})},e=>{Ve.add(fc({type:`error`,title:`Failed to copy ${t.toLowerCase()}`,description:e instanceof Error?e.message:`An error occurred.`}))})}var wO=[`#f97316`,`#a855f7`,`#6366f1`,`#3b82f6`,`#0ea5e9`,`#06b6d4`,`#14b8a6`,`#22c55e`,`#84cc16`,`#eab308`,`#ef4444`,`#ec4899`,`#f43f5e`,`#8b5cf6`],TO=5,EO=4,DO=20,OO=.4,kO=EO-OO*2;function AO(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return t>>>0}function jO(e){return wO[AO(e)%wO.length]}function MO(e){let t=jO(e),n=AO(`avatar:${e}`),r=[];for(let e=0;e<TO;e+=1)for(let t=0;t<TO;t+=1){let i=t<3?t:4-t,a=e*3+i;r.push((n>>>a&1)==1)}if(!r.some(Boolean))for(let e=0;e<TO;e+=1)r[e*TO+2]=!0;return{color:t,cells:r}}function NO(e){let t=(0,J.c)(12),{name:n,className:r}=e,i;t[0]===n?i=t[1]:(i=MO(n),t[0]=n,t[1]=i);let{color:a,cells:o}=i,s;t[2]===r?s=t[3]:(s=G(`size-5 shrink-0`,r),t[2]=r,t[3]=s);let c;if(t[4]!==o||t[5]!==a){let e;t[7]===a?e=t[8]:(e=(e,t)=>{if(!e)return null;let n=Math.floor(t/TO),r=t%TO;return(0,Y.jsx)(`rect`,{x:r*EO+OO,y:n*EO+OO,width:kO,height:kO,rx:.6,fill:a},`${n}-${r}`)},t[7]=a,t[8]=e),c=o.map(e),t[4]=o,t[5]=a,t[6]=c}else c=t[6];let l;return t[9]!==s||t[10]!==c?(l=(0,Y.jsx)(`svg`,{viewBox:`0 0 ${DO} ${DO}`,className:s,role:`img`,"aria-hidden":`true`,focusable:`false`,children:c}),t[9]=s,t[10]=c,t[11]=l):l=t[11],l}function PO(e){return`${e} ${e===1?`agent`:`agents`} active`}function FO(e){let t=(0,J.c)(6),{count:n,className:r}=e;if(n<=0)return null;let i;t[0]===r?i=t[1]:(i=G(`absolute flex items-center justify-center rounded-full bg-info font-semibold tabular-nums text-white shadow-[0_0_0_2px_var(--color-background)]`,r),t[0]=r,t[1]=i);let a=n>99?`99+`:n,o;return t[2]!==n||t[3]!==i||t[4]!==a?(o=(0,Y.jsx)(`span`,{"aria-hidden":!0,"data-live-agent-count":n,className:i,children:a}),t[2]=n,t[3]=i,t[4]=a,t[5]=o):o=t[5],o}var IO=n(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):r((n||=self).lru_map=n.lru_map||{})})(e,function(e){let t=Symbol(`newer`),n=Symbol(`older`);class r{constructor(e,t){typeof e!=`number`&&(t=e,e=0),this.size=0,this.limit=e,this.oldest=this.newest=void 0,this._keymap=new Map,t&&(this.assign(t),e<1&&(this.limit=this.size))}_markEntryAsUsed(e){e!==this.newest&&(e[t]&&(e===this.oldest&&(this.oldest=e[t]),e[t][n]=e[n]),e[n]&&(e[n][t]=e[t]),e[t]=void 0,e[n]=this.newest,this.newest&&(this.newest[t]=e),this.newest=e)}assign(e){let r,a=this.limit||Number.MAX_VALUE;this._keymap.clear();let o=e[Symbol.iterator]();for(let e=o.next();!e.done;e=o.next()){let o=new i(e.value[0],e.value[1]);if(this._keymap.set(o.key,o),r?(r[t]=o,o[n]=r):this.oldest=o,r=o,a--==0)throw Error(`overflow`)}this.newest=r,this.size=this._keymap.size}get(e){var t=this._keymap.get(e);return t?(this._markEntryAsUsed(t),t.value):void 0}set(e,r){var a=this._keymap.get(e);return a?(a.value=r,this._markEntryAsUsed(a),this):(this._keymap.set(e,a=new i(e,r)),this.newest?(this.newest[t]=a,a[n]=this.newest):this.oldest=a,this.newest=a,++this.size,this.size>this.limit&&this.shift(),this)}shift(){var e=this.oldest;if(e)return this.oldest[t]?(this.oldest=this.oldest[t],this.oldest[n]=void 0):(this.oldest=void 0,this.newest=void 0),e[t]=e[n]=void 0,this._keymap.delete(e.key),--this.size,[e.key,e.value]}find(e){let t=this._keymap.get(e);return t?t.value:void 0}has(e){return this._keymap.has(e)}delete(e){var r=this._keymap.get(e);return r?(this._keymap.delete(r.key),r[t]&&r[n]?(r[n][t]=r[t],r[t][n]=r[n]):r[t]?(r[t][n]=void 0,this.oldest=r[t]):r[n]?(r[n][t]=void 0,this.newest=r[n]):this.oldest=this.newest=void 0,this.size--,r.value):void 0}clear(){this.oldest=this.newest=void 0,this.size=0,this._keymap.clear()}keys(){return new o(this.oldest)}values(){return new s(this.oldest)}entries(){return this}[Symbol.iterator](){return new a(this.oldest)}forEach(e,n){typeof n!=`object`&&(n=this);let r=this.oldest;for(;r;)e.call(n,r.value,r.key,this),r=r[t]}toJSON(){for(var e=Array(this.size),n=0,r=this.oldest;r;)e[n++]={key:r.key,value:r.value},r=r[t];return e}toString(){for(var e=``,n=this.oldest;n;)e+=String(n.key)+`:`+n.value,n=n[t],n&&(e+=` < `);return e}}e.LRUMap=r;function i(e,r){this.key=e,this.value=r,this[t]=void 0,this[n]=void 0}function a(e){this.entry=e}a.prototype[Symbol.iterator]=function(){return this},a.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:[e.key,e.value]}):{done:!0,value:void 0}};function o(e){this.entry=e}o.prototype[Symbol.iterator]=function(){return this},o.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.key}):{done:!0,value:void 0}};function s(e){this.entry=e}s.prototype[Symbol.iterator]=function(){return this},s.prototype.next=function(){let e=this.entry;return e?(this.entry=e[t],{done:!1,value:e.value}):{done:!0,value:void 0}}})})),LO=t(IO(),1),RO=Symbol(`IGNORE_RESPONSE`),zO=1e4,BO=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled because the pool terminated`)}},VO=class extends Error{constructor(){super(`WorkerPoolManager: operation canceled before the task completed`)}},HO=class{options;highlighter;preferredHighlighter;renderOptions;renderOptionsRequestVersion=0;renderOptionsVersion=0;initialized=!1;workers=[];queuedTasks=[];queuedTaskByInstance=new Map;taskByHighlightKey=new Map;activeTaskById=new Map;activeRequestByInstance=new Map;nextRequestId=0;themeSubscribers=new Set;workersFailed=!1;statSubscribers=new Set;fileCache;diffCache;_queuedBroadcast;lifecycleGeneration=0;constructor(e,{langs:t,theme:n=ap,useTokenTransformer:r=!1,lineDiffType:i=`word-alt`,maxLineDiffLength:a=1e3,tokenizeMaxLineLength:o=1e3,preferredHighlighter:s=`shiki-js`}){this.options=e,this.preferredHighlighter=s,this.renderOptions={theme:n,useTokenTransformer:r,lineDiffType:i,maxLineDiffLength:a,tokenizeMaxLineLength:o},this.fileCache=new LO.default.LRUMap(e.totalASTLRUCacheSize??100),this.diffCache=new LO.default.LRUMap(e.totalASTLRUCacheSize??100),this.queueInitialization(t)}isWorkingPool(){return!this.workersFailed}getFileResultCache(e){return e.cacheKey==null?void 0:this.fileCache.get(e.cacheKey)}getDiffResultCache(e){return e.cacheKey==null?void 0:this.diffCache.get(e.cacheKey)}inspectCaches(){let{fileCache:e,diffCache:t}=this;return{fileCache:e,diffCache:t}}evictFileFromCache(e){try{return this.fileCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}evictDiffFromCache(e){try{return this.diffCache.delete(e)!==void 0}finally{this.queueBroadcastStateChanges()}}async setRenderOptions({theme:e=this.renderOptions.theme??ap,useTokenTransformer:t=this.renderOptions.useTokenTransformer??!1,lineDiffType:n=this.renderOptions.lineDiffType??`word-alt`,maxLineDiffLength:r=this.renderOptions.maxLineDiffLength??1e3,tokenizeMaxLineLength:i=this.renderOptions.tokenizeMaxLineLength??1e3}){let{lifecycleGeneration:a}=this,o=++this.renderOptionsRequestVersion,s=()=>this.isCurrentLifecycle(a)&&this.renderOptionsRequestVersion===o;try{let a={theme:e,useTokenTransformer:t,lineDiffType:n,maxLineDiffLength:r,tokenizeMaxLineLength:i};if(this.isInitialized()||await this.initialize(),!s()||_T(a,this.renderOptions))return;let o=jS(e),c=[];if(bC(a.theme,this.renderOptions.theme)||(c=OC(o)?YT(o):await XT(o)),!s())return;if(this.highlighter!=null)GS(c,this.highlighter);else{let e=await _C({themes:o,langs:[`text`],preferredHighlighter:this.preferredHighlighter});if(!s())return;this.highlighter=e}let l=this.setRenderOptionsOnWorkers(a,c);this.renderOptions=a,this.renderOptionsVersion++,this.diffCache.clear(),this.fileCache.clear(),this.invalidateRenderTasks();for(let e of this.themeSubscribers)e.onThemeChange();await l}catch(e){if(e instanceof BO||!s())return;throw e}}getPreferredHighlighter(){return this.preferredHighlighter}getFileRenderOptions(){let{tokenizeMaxLineLength:e,theme:t,useTokenTransformer:n}=this.renderOptions;return{theme:t,useTokenTransformer:n,tokenizeMaxLineLength:e}}getDiffRenderOptions(){return{...this.renderOptions}}async setRenderOptionsOnWorkers(e,t){if(this.workersFailed)return;this.isInitialized()||await this.initialize();let n=[];for(let r of this.workers){if(!r.initialized)throw console.log({managedWorker:r}),Error(`setRenderOptionsOnWorkers: Somehow we have an uninitialized worker`);n.push(new Promise((n,i)=>{let a=this.generateRequestId(),o={type:`set-render-options`,id:a,request:{type:`set-render-options`,id:a,renderOptions:e,resolvedThemes:t},resolve:n,reject:i,requestStart:Date.now()};this.activeTaskById.set(a,o),r.pendingSetupRequestId=a,r.worker.postMessage(o.request)}))}await Promise.all(n)}subscribeToThemeChanges(e){return this.themeSubscribers.add(e),this.queueBroadcastStateChanges(),()=>{this.unsubscribeToThemeChanges(e),this.queueBroadcastStateChanges()}}unsubscribeToThemeChanges(e){this.themeSubscribers.delete(e),this.queueBroadcastStateChanges()}subscribeToStatChanges(e){return this.statSubscribers.add(e),e(this.getStats()),()=>{this.statSubscribers.delete(e)}}queueBroadcastStateChanges(){this._queuedBroadcast??=requestAnimationFrame(this._broadcastStateChanges)}_broadcastStateChanges=()=>{this._queuedBroadcast!=null&&(cancelAnimationFrame(this._queuedBroadcast),this._queuedBroadcast=void 0);let e=this.getStats();for(let t of this.statSubscribers)t(e)};cleanUpTasks(e){this.detachInstanceFromQueuedTasks(e);let t=this.activeRequestByInstance.get(e);if(t!=null){let n=this.activeTaskById.get(t);GO(n)?(this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeActiveTask(n)):this.activeTaskById.delete(t)}this.activeRequestByInstance.delete(e),this.queueBroadcastStateChanges()}isInitialized(){return this.initialized===!0}async initialize(e=[]){if(this.initialized!==!0){if(this.initialized===!1){let{lifecycleGeneration:t}=this;this.initialized=new Promise((n,r)=>{(async()=>{try{let r=jS(this.renderOptions.theme),i=[];if(i=OC(r)?YT(r):await XT(r),!this.isCurrentLifecycle(t)){n();return}let a=[];if(a=qT(e)?KT(e):await JT(e),!this.isCurrentLifecycle(t)){n();return}let[o]=await Promise.all([_C({themes:r,langs:[`text`,...e],preferredHighlighter:this.preferredHighlighter}),this.initializeWorkers(i,a)]);if(!this.isCurrentLifecycle(t)){this.terminateWorkers(),n();return}this.highlighter=o,this.initialized=!0,this.diffCache.clear(),this.fileCache.clear(),this.drainQueue(),this.queueBroadcastStateChanges(),n()}catch(e){if(e instanceof BO||!this.isCurrentLifecycle(t)){n();return}this.initialized=!1,this.workersFailed=!0,this.cancelActiveWorkerTasks(),this.terminateWorkers(),this.activeTaskById.clear();for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,qO(e));this.queueBroadcastStateChanges(),r(e)}})()}),this.queueBroadcastStateChanges()}else return this.initialized}}async initializeWorkers(e,t){this.workersFailed=!1;let n=[],r=PC(),i=r>0?FC():void 0;this.workers.length>0&&this.terminateWorkers();for(let a=0;a<(this.options.poolSize??8);a++){let a=this.options.workerFactory(),o={worker:a,requestId:void 0,pendingSetupRequestId:void 0,initialized:!1,langs:new Set([`text`,...t.map(({name:e})=>e)]),customExtensionsVersion:0};a.addEventListener(`message`,e=>{this.handleWorkerMessage(o,e.data)}),a.addEventListener(`error`,e=>this.handleWorkerError(o,e)),this.workers.push(o),n.push(new Promise((n,a)=>{let s=this.generateRequestId(),c={type:`initialize`,id:s,request:{type:`initialize`,id:s,renderOptions:this.renderOptions,preferredHighlighter:this.preferredHighlighter,resolvedThemes:e,resolvedLanguages:t,customExtensionsVersion:i==null?void 0:r,customExtensionMap:i},resolve(){o.initialized=!0,n()},reject:a,requestStart:Date.now()};o.pendingSetupRequestId=s,this.activeTaskById.set(s,c),this.executeTask(o,c)}))}let a=this.options.workerInitializationTimeout??zO,o;try{await Promise.race([Promise.all(n),new Promise((e,t)=>{o=setTimeout(()=>{t(Error(`WorkerPoolManager: worker initialization timed out after ${a}ms`))},a)})])}finally{o!=null&&clearTimeout(o)}}handleWorkerError(e,t){console.error(`Worker error:`,t,e);let{pendingSetupRequestId:n}=e;if(n==null)return;let r=this.activeTaskById.get(n);r?.type===`initialize`&&(r.reject(qO(t)),this.cleanWorkerAndTask(e,r))}drainQueue=()=>{if(this._queuedDrain=void 0,this.initialized===!0&&this.queuedTasks.length!==0){for(let e=0;e<this.queuedTasks.length;){let t=this.queuedTasks[e];if(this.hasActiveRequest(t)){e++;continue}let n=WO(t),r=this.getAvailableWorker(n);if(r==null)break;this.queuedTasks.splice(e,1),this.assignWorkerToTask(t,r),this.resolveLanguagesAndExecuteTask(r,t,n)}this.queueBroadcastStateChanges()}};highlightFileAST(e,t){let n=this.getFileResultCache(t);Ow(t)||n!=null&&kC(n.options,this.getFileRenderOptions())||this.hasMatchingFileInstanceTask(e,t)||this.submitTask(e,{type:`file`,file:t})}primeFileHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeFileHighlightCache: worker pool is not working`));let t=this.getOrCreateFileHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateFileHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeFileHighlightCache: priming highlight cache requires file.cacheKey; skipping "${e.name}".`);return}let t=this.getFileResultCache(e),n=this.getFileHighlightKey(e);if(n==null||Ow(e)||t!=null&&kC(t.options,this.getFileRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`file`?r:void 0;{let t=this.submitCacheTask({type:`file`,file:e},n);return t.type===`file`?t:void 0}}getPlainFileAST(e,t,n,r){if(this.highlighter==null){this.queueInitialization();return}return Tw(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,lines:r})}highlightDiffAST(e,t){let n=this.getDiffResultCache(t);GT(t)||n!=null&&_T(n.options,this.getDiffRenderOptions())||this.hasMatchingDiffInstanceTask(e,t)||this.submitTask(e,{type:`diff`,diff:t})}primeDiffHighlightCache(e){if(!this.isWorkingPool())return Promise.reject(Error(`WorkerPoolManager.primeDiffHighlightCache: worker pool is not working`));let t=this.getOrCreateDiffHighlightCacheTask(e);return t==null?Promise.resolve():this.createRenderTaskCallbacks(t)}getOrCreateDiffHighlightCacheTask(e){if(e.cacheKey==null){console.warn(`WorkerPoolManager.primeDiffHighlightCache: priming highlight cache requires diff.cacheKey; skipping "${e.prevName??e.name}" -> "${e.name}".`);return}let t=this.getDiffResultCache(e),n=this.getDiffHighlightKey(e);if(n==null||GT(e)||t!=null&&_T(t.options,this.getDiffRenderOptions()))return;let r=this.getTaskByHighlightKey(n);if(r!=null)return r.primeCache=!0,r.type===`diff`?r:void 0;{let t=this.submitCacheTask({type:`diff`,diff:e},n);return t.type===`diff`?t:void 0}}getPlainDiffAST(e,t,n,r,i){return this.highlighter==null?void 0:VT(e,this.highlighter,this.renderOptions,{forcePlainText:!0,startingLine:t,totalLines:n,expandedHunks:r,collapsedContextThreshold:i})}terminate(){this.lifecycleGeneration++,this.cancelActiveWorkerTasks(),this.terminateWorkers();let e=new BO;for(let t of this.queuedTasks)this.rejectRenderTaskCallbacks(t,e);this.fileCache.clear(),this.diffCache.clear(),this.activeRequestByInstance.clear(),this.queuedTasks.length=0,this.queuedTaskByInstance.clear(),this.taskByHighlightKey.clear(),this.activeTaskById.clear(),this.highlighter=void 0,this.initialized=!1,this.workersFailed=!1,this.queueBroadcastStateChanges()}isCurrentLifecycle(e){return this.lifecycleGeneration===e}queueInitialization(e){this.initialize(e).catch(e=>{console.error(e)})}cancelActiveWorkerTasks(){let e=new BO;for(let t of this.activeTaskById.values())`reject`in t?t.reject(e):GO(t)&&this.rejectRenderTaskCallbacks(t,e)}terminateWorkers(){for(let e of this.workers)e.worker.terminate();this.workers.length=0}getStats(){return{managerState:this.initialized===!1?`waiting`:this.initialized===!0?`initialized`:`initializing`,totalWorkers:this.workers.length,workersFailed:this.workersFailed,busyWorkers:this.workers.filter(e=>e.requestId!=null||e.pendingSetupRequestId!=null).length,queuedTasks:this.queuedTasks.length,activeTasks:this.activeTaskById.size,themeSubscribers:this.themeSubscribers.size,fileCacheSize:this.fileCache.size,diffCacheSize:this.diffCache.size}}submitTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.getHighlightKeyForRequest(t),r=n==null?void 0:this.getTaskByHighlightKey(n);if(r!=null){this.detachInstanceFromQueuedTasks(e,r),this.addInstanceToTask(r,e),this.queueBroadcastStateChanges();return}this.detachInstanceFromQueuedTasks(e);let i=this.generateRequestId(),a=Date.now(),{renderOptionsVersion:o}=this,s=(()=>{switch(t.type){case`file`:return{type:`file`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a};case`diff`:return{type:`diff`,id:i,request:{...t,id:i},instances:new Set([e]),primeCache:!1,highlightKey:n,callbacks:new Set,renderOptionsVersion:o,requestStart:a}}})();this.enqueueRenderTask(s,e)}submitCacheTask(e,t){this.initialized===!1&&this.queueInitialization();let n=this.generateRequestId(),r=Date.now(),{renderOptionsVersion:i}=this,a=(()=>{switch(e.type){case`file`:return{type:`file`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r};case`diff`:return{type:`diff`,id:n,request:{...e,id:n},instances:new Set,primeCache:!0,highlightKey:t,callbacks:new Set,renderOptionsVersion:i,requestStart:r}}})();return this.enqueueRenderTask(a),a}enqueueRenderTask(e,t){this.queuedTasks.push(e),t!=null&&this.queuedTaskByInstance.set(t,e),e.highlightKey!=null&&this.taskByHighlightKey.set(e.highlightKey,e),this.queueDrain()}async resolveLanguagesAndExecuteTask(e,t,n){try{let r=n.filter(e=>!yp(e));r.length>0&&_C({themes:jS(this.renderOptions.theme),langs:[`text`,...r],preferredHighlighter:this.preferredHighlighter}).catch(e=>{console.error(e)});let i=n.filter(t=>!e.langs.has(t));if(i.length>0&&(qT(i)?t.request.resolvedLanguages=KT(i):t.request.resolvedLanguages=await JT(i)),!this.activeTaskById.has(t.id)){e.requestId===t.id&&(this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain());return}this.executeTask(e,t)}catch(n){this.rejectRenderTaskCallbacks(t,qO(n)),this.cleanWorkerAndTask(e,t),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}}handleWorkerMessage(e,t){let n=this.activeTaskById.get(t.id);try{if(n==null)throw RO;if(t.type===`error`){let e=Error(t.error);if(t.stack&&(e.stack=t.stack),`reject`in n)n.reject(e);else if(GO(n))this.notifyHighlightError(n,e),this.rejectRenderTaskCallbacks(n,e);else throw Error(`handleWorkerMessage: unknown task type`);throw e}switch(t.requestType){case`initialize`:if(n.type!==`initialize`)throw Error(`handleWorkerMessage: task/response dont match`);this.syncCustomExtensionVersion(e,n.request),n.resolve();break;case`set-render-options`:if(n.type!==`set-render-options`)throw Error(`handleWorkerMessage: task/response dont match`);n.resolve();break;case`file`:{if(n.type!==`file`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!kC(i,this.getFileRenderOptions()))throw RO;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.fileCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyFileInstances(n,r,i);break}case`diff`:{if(n.type!==`diff`)throw Error(`handleWorkerMessage: task/response dont match`);let{result:r,options:i}=t;if(!this.isCurrentRenderTask(n)||!_T(i,this.getDiffRenderOptions()))throw RO;let{request:a}=n;this.syncCustomExtensionVersion(e,a),n.cacheKeyAtDispatch!=null&&this.diffCache.set(n.cacheKeyAtDispatch,{result:r,options:i}),this.resolveRenderTaskCallbacks(n),this.notifyDiffInstances(n,r,i);break}}}catch(e){e!==RO&&console.error(e,n,t)}this.cleanWorkerAndTask(e,n,t.id),this.queueBroadcastStateChanges(),this.queuedTasks.length>0&&this.queueDrain()}_queuedDrain;queueDrain(){this._queuedDrain??(this._queuedDrain=Promise.resolve().then(this.drainQueue),this.queueBroadcastStateChanges())}assignWorkerToTask(e,t){t.requestId=e.id,GO(e)&&(this.clearQueuedInstanceRequests(e),this.trackInstanceRequests(e)),this.activeTaskById.set(e.id,e)}cleanWorkerAndTask(e,t,n=t?.id){e.requestId===n&&(e.requestId=void 0),e.pendingSetupRequestId===n&&(e.pendingSetupRequestId=void 0),t!=null&&(GO(t)&&(this.rejectRenderTaskCallbacks(t,new VO),this.clearInstanceRequests(t),this.clearHighlightKey(t)),this.activeTaskById.delete(t.id))}executeTask(e,t){UO(t.request)&&this.maybeAttachCustomExtensions(e,t.request),this.activeTaskById.has(t.id)||this.assignWorkerToTask(t,e);for(let n of WO(t))e.langs.add(n);try{t.type===`file`?t.cacheKeyAtDispatch=t.request.file.cacheKey:t.type===`diff`&&(t.cacheKeyAtDispatch=t.request.diff.cacheKey),e.worker.postMessage(t.request)}catch(n){console.error(`Failed to post message to worker:`,n),GO(t)?(this.notifyHighlightError(t,n),this.rejectRenderTaskCallbacks(t,qO(n))):`reject`in t&&t.reject(n),this.cleanWorkerAndTask(e,t),this.queuedTasks.length>0&&this.queueDrain()}this.queueBroadcastStateChanges()}maybeAttachCustomExtensions(e,t){if(t.customExtensionsVersion!=null)return;let n=PC();e.customExtensionsVersion>=n||(t.customExtensionsVersion=n,t.customExtensionMap=FC())}syncCustomExtensionVersion(e,t){t.customExtensionsVersion!=null&&(e.customExtensionsVersion=t.customExtensionsVersion)}getAvailableWorker(e){let t;for(let n of this.workers){if(n.requestId!=null||n.pendingSetupRequestId!=null||!n.initialized)continue;if(t=n,e.length===0)break;let r=!0;for(let t of e)if(!n.langs.has(t)){r=!1;break}if(r)break}return t}getFileHighlightKey(e){if(e.cacheKey!=null)return`file:${e.cacheKey}:${this.renderOptionsVersion}`}getDiffHighlightKey(e){if(e.cacheKey!=null)return`diff:${e.cacheKey}:${this.renderOptionsVersion}`}getHighlightKeyForRequest(e){switch(e.type){case`file`:return this.getFileHighlightKey(e.file);case`diff`:return this.getDiffHighlightKey(e.diff)}}hasActiveRequest(e){for(let t of KO(e))if(this.activeRequestByInstance.has(t))return!0;return!1}addInstanceToTask(e,t){e.type,e.instances.add(t),this.activeTaskById.has(e.id)?this.activeRequestByInstance.set(t,e.id):this.queuedTaskByInstance.set(t,e)}detachInstanceFromQueuedTasks(e,t){let n=this.queuedTaskByInstance.get(e);n!=null&&n!==t&&(this.queuedTaskByInstance.delete(e),this.detachInstanceFromRenderTask(n,e),!n.primeCache&&n.instances.size===0&&this.removeQueuedTask(n))}detachInstanceFromRenderTask(e,t){e.type,e.instances.delete(t)}removeQueuedTask(e){let t=this.queuedTasks.indexOf(e);t!==-1&&this.queuedTasks.splice(t,1),this.rejectRenderTaskCallbacks(e,new VO),this.clearQueuedInstanceRequests(e),this.clearHighlightKey(e)}removeActiveTask(e){this.rejectRenderTaskCallbacks(e,new VO),this.clearInstanceRequests(e),this.clearHighlightKey(e),this.activeTaskById.delete(e.id)}createRenderTaskCallbacks(e){return new Promise((t,n)=>{e.callbacks.add({resolve:t,reject:n})})}resolveRenderTaskCallbacks(e){for(let t of e.callbacks)t.resolve();e.callbacks.clear()}rejectRenderTaskCallbacks(e,t){for(let n of e.callbacks)n.reject(t);e.callbacks.clear()}invalidateRenderTasks(){for(let e=this.queuedTasks.length-1;e>=0;e--){let t=this.queuedTasks[e];t.renderOptionsVersion!==this.renderOptionsVersion&&this.removeQueuedTask(t)}for(let e of Array.from(this.activeTaskById.values()))GO(e)&&e.renderOptionsVersion!==this.renderOptionsVersion&&this.removeActiveTask(e)}clearQueuedInstanceRequests(e){for(let t of KO(e))this.queuedTaskByInstance.get(t)===e&&this.queuedTaskByInstance.delete(t)}clearHighlightKey(e){e.highlightKey!=null&&this.taskByHighlightKey.get(e.highlightKey)===e&&this.taskByHighlightKey.delete(e.highlightKey)}trackInstanceRequests(e){for(let t of KO(e))this.activeRequestByInstance.set(t,e.id)}clearInstanceRequests(e){for(let t of KO(e))this.activeRequestByInstance.get(t)===e.id&&this.activeRequestByInstance.delete(t)}notifyFileInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.file,t,n)}notifyDiffInstances(e,t,n){for(let r of e.instances)this.activeRequestByInstance.get(r)===e.id&&r.onHighlightSuccess(e.request.diff,t,n)}notifyHighlightError(e,t){for(let n of KO(e))this.activeRequestByInstance.get(n)===e.id&&n.onHighlightError(t)}hasMatchingFileInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`file`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&Fw(t,n.request.file))return!0;return!1}hasMatchingDiffInstanceTask(e,t){for(let n of this.iterateRenderTasks())if(n.type===`diff`&&this.isCurrentRenderTask(n)&&n.instances.has(e)&&Pw(n.request.diff,t))return!0;return!1}getTaskByHighlightKey(e){let t=this.taskByHighlightKey.get(e);return t!=null&&this.isCurrentRenderTask(t)?t:void 0}isCurrentRenderTask(e){return e.renderOptionsVersion===this.renderOptionsVersion}*iterateRenderTasks(){for(let e of this.queuedTasks)yield e;for(let e of this.activeTaskById.values())GO(e)&&(yield e)}generateRequestId(){return`req_${++this.nextRequestId}`}};function UO(e){return e.type===`initialize`||e.type===`file`||e.type===`diff`}function WO(e){let t=new Set;if(e.type===`initialize`||e.type===`set-render-options`)return[];switch(e.type){case`file`:t.add(e.request.file.lang??NC(e.request.file.name));break;case`diff`:t.add(e.request.diff.lang??NC(e.request.diff.name)),t.add(e.request.diff.lang??NC(e.request.diff.prevName??`-`))}return t.delete(`text`),Array.from(t)}function GO(e){return e?.type===`file`||e?.type===`diff`}function KO(e){return e.instances}function qO(e){if(e instanceof Error)return e;if(typeof e==`object`&&e){if(`error`in e&&e.error instanceof Error)return e.error;if(`message`in e&&typeof e.message==`string`)return Error(e.message)}return Error(String(e))}var JO;function YO({poolOptions:e,highlighterOptions:t}){return JO??=new HO(e,t),JO}function XO(){JO!=null&&(JO.terminate(),JO=void 0)}var ZO=(0,q.createContext)(void 0),QO=0;function $O({children:e,poolOptions:t,highlighterOptions:n}){let[r]=(0,q.useState)(()=>{if(!(typeof window>`u`))return YO({poolOptions:t,highlighterOptions:n})});return(0,q.useInsertionEffect)(()=>{if(r!=null)return QO++,()=>{QO--}},[r]),(0,q.useEffect)(()=>()=>{QO===0&&XO()},[]),(0,Y.jsx)(ZO.Provider,{value:r,children:e})}function ek(){return(0,q.useContext)(ZO)}function tk(e){let t=(0,J.c)(6),n;bb0:{if(!e){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[0]=e):e=t[0],n=e;break bb0}n=e.turnDiffSummaries}let r=n,i;t[1]===r?i=t[2]:(i=ir(r),t[1]=r,t[2]=i);let a=i,o;return t[3]!==a||t[4]!==r?(o={turnDiffSummaries:r,inferredCheckpointTurnCountByTurnId:a},t[3]=a,t[4]=r,t[5]=o):o=t[5],o}function nk(e){return G(`flex items-center justify-between gap-2 px-4`,a&&e!==`sheet`&&e!==`phone`?`drag-region h-[52px] border-b border-border wco:h-[env(titlebar-area-height)] wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`:`h-12 wco:max-h-[env(titlebar-area-height)]`)}function rk(e){let t=(0,J.c)(10),n=a&&e.mode!==`sheet`&&e.mode!==`phone`,r=e.mode===`inline`?`w-[42vw] min-w-[360px] max-w-[560px] shrink-0 border-l border-border`:`w-full`,i;t[0]===r?i=t[1]:(i=G(`flex h-full min-w-0 flex-col bg-background`,r),t[0]=r,t[1]=i);let o;t[2]!==e.header||t[3]!==e.mode||t[4]!==n?(o=n?(0,Y.jsx)(`div`,{className:nk(e.mode),children:e.header}):(0,Y.jsx)(`div`,{className:`border-b border-border`,children:(0,Y.jsx)(`div`,{className:nk(e.mode),children:e.header})}),t[2]=e.header,t[3]=e.mode,t[4]=n,t[5]=o):o=t[5];let s;return t[6]!==e.children||t[7]!==i||t[8]!==o?(s=(0,Y.jsxs)(`div`,{className:i,children:[o,e.children]}),t[6]=e.children,t[7]=i,t[8]=o,t[9]=s):s=t[9],s}function ik(){let e=(0,J.c)(4),t,n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Y.jsx)(ll,{className:`absolute left-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),n=(0,Y.jsx)(ll,{className:`absolute right-0 top-1/2 size-6 -translate-y-1/2 rounded-md border border-border/50`}),e[0]=t,e[1]=n):(t=e[0],n=e[1]);let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[t,n,(0,Y.jsxs)(`div`,{className:`flex gap-1 overflow-hidden px-8 py-0.5`,children:[(0,Y.jsx)(ll,{className:`h-6 w-16 shrink-0 rounded-md`}),(0,Y.jsx)(ll,{className:`h-6 w-24 shrink-0 rounded-md`}),(0,Y.jsx)(ll,{className:`h-6 w-24 shrink-0 rounded-md phone:hidden`})]})]}),e[2]=r):r=e[2];let i;return e[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsxs)(Y.Fragment,{children:[r,(0,Y.jsxs)(`div`,{className:`flex shrink-0 gap-1`,children:[(0,Y.jsx)(ll,{className:`size-7 rounded-md`}),(0,Y.jsx)(ll,{className:`size-7 rounded-md`})]})]}),e[3]=i):i=e[3],i}function ak(e){let t=(0,J.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border/50 px-3 py-2`,children:[(0,Y.jsx)(ll,{className:`h-4 w-32 rounded-full`}),(0,Y.jsx)(ll,{className:`ml-auto h-4 w-20 rounded-full`})]}),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(ll,{className:`h-3 w-full rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-full rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-10/12 rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-11/12 rounded-full`}),(0,Y.jsx)(ll,{className:`h-3 w-9/12 rounded-full`})]}),t[1]=r):r=t[1];let i;t[2]===e.label?i=t[3]:(i=(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-3 py-4`,children:[r,(0,Y.jsx)(`span`,{className:`sr-only`,children:e.label})]}),t[2]=e.label,t[3]=i);let a;return t[4]!==e.label||t[5]!==i?(a=(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col p-2`,children:(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-md border border-border/60 bg-card/25`,role:`status`,"aria-live":`polite`,"aria-label":e.label,children:[n,i]})}),t[4]=e.label,t[5]=i,t[6]=a):a=t[6],a}function ok(e){return new Worker(`/assets/worker-Bs0l0ezO.js`,{name:e?.name})}var sk=3,ck=120;function lk(e){let t=(0,J.c)(4),{themeName:n}=e,r=ek(),i,a;return t[0]!==n||t[1]!==r?(i=()=>{if(!r)return;let e=r.getDiffRenderOptions();e.theme!==n&&r.setRenderOptions({...e,theme:n}).catch(uk)},a=[n,r],t[0]=n,t[1]=r,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a),null}function uk(){}function dk(e){let t=(0,J.c)(10),{children:n}=e,{resolvedTheme:r}=kl(),i;t[0]===r?i=t[1]:(i=ME(r),t[0]=r,t[1]=i);let a=i,o=typeof navigator>`u`?4:Math.max(1,navigator.hardwareConcurrency||4),s=Math.max(1,Math.min(sk,Math.floor(o/3))),c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c={workerFactory:fk,poolSize:s,totalASTLRUCacheSize:ck},t[2]=c):c=t[2];let l,u;t[3]===a?(l=t[4],u=t[5]):(l={theme:a,tokenizeMaxLineLength:1e3},u=(0,Y.jsx)(lk,{themeName:a}),t[3]=a,t[4]=l,t[5]=u);let d;return t[6]!==n||t[7]!==l||t[8]!==u?(d=(0,Y.jsxs)($O,{poolOptions:c,highlighterOptions:l,children:[u,n]}),t[6]=n,t[7]=l,t[8]=u,t[9]=d):d=t[9],d}function fk(){return new ok}var pk={numeric:!0,sensitivity:`base`};function mk(e){return e.replaceAll(`\\`,`/`).split(`/`).filter(e=>e.length>0)}function hk(e,t){return e.name.localeCompare(t.name,void 0,pk)}function gk(e){return!(`additions`in e)||typeof e.additions!=`number`||!(`deletions`in e)||typeof e.deletions!=`number`?null:{additions:e.additions,deletions:e.deletions}}function _k(e){let t=e.children.map(e=>e.kind===`directory`?_k(e):e),n={...e,children:t};for(;n.children.length===1&&n.children[0]?.kind===`directory`;){let e=n.children[0];n={kind:`directory`,name:`${n.name}/${e.name}`,path:e.path,stat:e.stat,children:e.children}}return n}function vk(e){let t=Array.from(e.directories.values()).toSorted(hk).map(e=>({kind:`directory`,name:e.name,path:e.path,stat:{additions:e.stat.additions,deletions:e.stat.deletions},children:vk(e)})).map(e=>_k(e)),n=e.files.toSorted(hk);return[...t,...n]}function yk(e){return e.reduce((e,t)=>{let n=gk(t);return n?{additions:e.additions+n.additions,deletions:e.deletions+n.deletions}:e},{additions:0,deletions:0})}function bk(e){let t={name:``,path:``,stat:{additions:0,deletions:0},directories:new Map,files:[]};for(let n of e){let e=mk(n.path);if(e.length===0)continue;let r=n.kind===`directory`,i=gk(n),a=[t],o=t;for(let t of r?e:e.slice(0,-1)){let e=o.path?`${o.path}/${t}`:t,n=o.directories.get(t);if(n)o=n;else{let n={name:t,path:e,stat:{additions:0,deletions:0},directories:new Map,files:[]};o.directories.set(t,n),o=n}a.push(o)}if(!r){let t=e.join(`/`),n=e.at(-1);if(!n)continue;o.files.push({kind:`file`,name:n,path:t,stat:i})}if(i)for(let e of a)e.stat.additions+=i.additions,e.stat.deletions+=i.deletions}return vk(t)}function xk(e){return e.additions>0||e.deletions>0}var Sk=(0,q.memo)(function(e){let t=(0,J.c)(14),{additions:n,deletions:r,showParentheses:i}=e,a=i!==void 0&&i,o;t[0]===a?o=t[1]:(o=a&&(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:`(`}),t[0]=a,t[1]=o);let s;t[2]===n?s=t[3]:(s=(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,n]}),t[2]=n,t[3]=s);let c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{className:`mx-0.5 text-muted-foreground/70`,children:`/`}),t[4]=c):c=t[4];let l;t[5]===r?l=t[6]:(l=(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`-`,r]}),t[5]=r,t[6]=l);let u;t[7]===a?u=t[8]:(u=a&&(0,Y.jsx)(`span`,{className:`text-muted-foreground/70`,children:`)`}),t[7]=a,t[8]=u);let d;return t[9]!==o||t[10]!==s||t[11]!==l||t[12]!==u?(d=(0,Y.jsxs)(Y.Fragment,{children:[o,s,c,l,u]}),t[9]=o,t[10]=s,t[11]=l,t[12]=u,t[13]=d):d=t[13],d});function Ck(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>lt(t,e)??$r,t[0]=e,t[1]=n),Rr(n)}function wk(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=lt(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:Ur},t[0]=e,t[1]=n),Rr(Uc(n))}function Tk(e){let t=(0,J.c)(10),n;t[0]!==e.draftId||t[1]!==e.threadRef?(n=e.threadRef??e.draftId??Rt.make(``),t[0]=e.draftId,t[1]=e.threadRef,t[2]=n):n=t[2];let r=wk(n),i;return t[3]!==r||t[4]!==e.providers||t[5]!==e.selectedInstanceId||t[6]!==e.selectedProvider||t[7]!==e.settings||t[8]!==e.threadModelSelection?(i=Xr({draft:r,providers:e.providers,selectedProvider:e.selectedProvider,selectedInstanceId:e.selectedInstanceId,threadModelSelection:e.threadModelSelection,settings:e.settings}),t[3]=r,t[4]=e.providers,t[5]=e.selectedInstanceId,t[6]=e.selectedProvider,t[7]=e.settings,t[8]=e.threadModelSelection,t[9]=i):i=t[9],i}function Ek(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>t.getDraftSession(e),t[0]=e,t[1]=n),Rr(n)}function Dk(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e):null,t[0]=e,t[1]=n),Rr(n)}function Ok(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.getDraftThreadByRef(e)!==null:!1,t[0]=e,t[1]=n),Rr(n)}function kk(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=t=>e?t.hasDraftThreadsInEnvironment(e):!1,t[0]=e,t[1]=n),Rr(n)}function Ak(e,t){return e===t?null:t}function jk(e){return e.open&&e.canMaximize&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Mk(e){return!e.open&&e.maximizedThreadKey!==null&&e.maximizedThreadKey===e.threadKey}function Nk(e){let t=(0,J.c)(17),{canMaximize:n,open:r,threadKey:i}=e,[a,o]=(0,q.useState)(null),s,c;t[0]!==a||t[1]!==r||t[2]!==i?(s=()=>{Mk({maximizedThreadKey:a,open:r,threadKey:i})&&o(null)},c=[a,r,i],t[0]=a,t[1]=r,t[2]=i,t[3]=s,t[4]=c):(s=t[3],c=t[4]),(0,q.useEffect)(s,c);let l;t[5]!==n||t[6]!==r||t[7]!==i?(l=()=>{r&&n&&o(e=>Ak(e,i))},t[5]=n,t[6]=r,t[7]=i,t[8]=l):l=t[8];let u=l,d;t[9]!==n||t[10]!==a||t[11]!==r||t[12]!==i?(d=jk({canMaximize:n,maximizedThreadKey:a,open:r,threadKey:i}),t[9]=n,t[10]=a,t[11]=r,t[12]=i,t[13]=d):d=t[13];let f;return t[14]!==d||t[15]!==u?(f={maximized:d,toggleMaximized:u},t[14]=d,t[15]=u,t[16]=f):f=t[16],f}var Pk=new Map;function Fk(e){let t=Pk.get(e);return t?{...t}:void 0}function Ik(e,t){Pk.set(e,Rk(t))}function Lk(e,t){let{diff:n,diffTurnId:r,diffFilePath:i,preview:a,workspaceOpen:o,workspaceTab:s,workspaceAgentKey:c,...l}=e;return{...l,...t}}function Rk(e){return Bk({diff:e.diff,diffTurnId:e.diffTurnId,diffFilePath:e.diffFilePath,preview:e.preview,workspaceOpen:e.workspaceOpen,workspaceTab:e.workspaceTab,workspaceAgentKey:e.workspaceAgentKey})}function zk(e,t){let n=Pk.get(e);n&&Pk.set(t,{...n})}function Bk(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0))}function Vk(e){let t=(0,q.useRef)(null),n=(0,q.useRef)(null),r=t.current!==e.threadKey;if(r){let t=e.threadKey?Fk(e.threadKey):void 0;n.current=e.threadKey&&t&&ou(t)?{threadKey:e.threadKey,search:t}:null}else ou(e.search)&&(n.current=null);let i=n.current?.threadKey===e.threadKey&&!ou(e.search)?n.current.search:void 0,a=r&&i!==void 0,o=i?Lk(e.search,i):e.search;return(0,q.useLayoutEffect)(()=>{if(t.current=e.threadKey,e.threadKey){if(a){e.replaceSearch(o);return}i||Ik(e.threadKey,e.search)}},[e,i,o,a]),o}var Hk=`(max-width: 980px)`,Uk=`w-[min(42vw,28rem)] min-w-80 max-w-[28rem] p-0 phone:w-[min(88vw,24rem)] phone:min-w-0 wco:mt-[env(titlebar-area-height)] wco:h-[calc(100%-env(titlebar-area-height))] wco:max-h-[calc(100%-env(titlebar-area-height))]`;function Wk(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function Gk(e){if(!Array.isArray(e))return[];let t=e.filter(e=>typeof e==`string`).map(e=>e.trim()).filter(e=>e.length>0);return Array.from(new Set(t))}function Kk(e,t){let n=Wk(t?.customAnswer);if(n)return n;let r=Gk(t?.selectedOptionLabels);return e.multiSelect?r.length>0?r:null:r[0]??null}function qk(e,t){let n=t.trim().length>0?void 0:Gk(e?.selectedOptionLabels);return{customAnswer:t,...n&&n.length>0?{selectedOptionLabels:n}:{}}}function Jk(e,t,n){if(e.multiSelect){let e=Gk(t?.selectedOptionLabels),r=e.includes(n)?e.filter(e=>e!==n):[...e,n];return{customAnswer:``,...r.length>0?{selectedOptionLabels:r}:{}}}return{customAnswer:``,selectedOptionLabels:[n]}}function Yk(e,t){let n={};for(let r of e){let e=Kk(r,t[r.id]);if(!e)return null;n[r.id]=e}return n}function Xk(e,t){return e.reduce((e,n)=>Kk(n,t[n.id])?e+1:e,0)}function Zk(e,t,n){let r=e.length===0?0:Math.max(0,Math.min(n,e.length-1)),i=e[r]??null,a=i?t[i.id]:void 0,o=i?Kk(i,a):null,s=a?.customAnswer??``,c=Xk(e,t),l=e.length===0||r>=e.length-1;return{questionIndex:r,activeQuestion:i,activeDraft:a,selectedOptionLabels:Gk(a?.selectedOptionLabels),customAnswer:s,resolvedAnswer:o,usingCustomAnswer:s.trim().length>0,answeredQuestionCount:c,isLastQuestion:l,isComplete:Yk(e,t)!==null,canAdvance:!!o}}function Qk({input:e,disabled:t,onRespond:n}){let[r,i]=(0,q.useState)({}),[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(null),l=Yk(e.questions,r),u=t||a||e.responseState===`submitting`||e.responseState===`uncertain`,d=async t=>{if(!u){o(!0),c(null);try{await n(e.requestId,t,e.userInputIdentity)}catch{c(`Could not submit the answer. Check the connection and question status.`)}finally{o(!1)}}};return(0,Y.jsxs)(`details`,{className:`mx-auto mb-2 w-full max-w-208 rounded-lg border border-border bg-background px-4 py-3`,children:[(0,Y.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium`,children:`Optional question · agent continues working`}),(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:`Answer while this turn is running. This is not an approval request.`}),(0,Y.jsx)(`form`,{onSubmit:e=>{e.preventDefault(),l&&d(l)},children:(0,Y.jsxs)(`fieldset`,{disabled:u,className:`space-y-3 py-3`,children:[e.questions.map(t=>(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`label`,{htmlFor:`${e.requestId}-${t.id}`,className:`block text-sm`,children:t.question}),(0,Y.jsx)(`div`,{className:`my-2 flex flex-wrap gap-2`,children:t.options.map(e=>(0,Y.jsx)(`button`,{type:`button`,"aria-pressed":r[t.id]?.selectedOptionLabels?.includes(e.label)??!1,className:`rounded-md border border-border px-3 py-1 text-sm aria-pressed:bg-accent`,onClick:()=>i(n=>({...n,[t.id]:Jk(t,n[t.id],e.label)})),children:e.label},e.label))}),(0,Y.jsx)(`input`,{id:`${e.requestId}-${t.id}`,"aria-label":`Custom answer: ${t.question}`,placeholder:`Write an answer`,value:r[t.id]?.customAnswer??``,onChange:e=>i(n=>({...n,[t.id]:qk(n[t.id],e.target.value)})),className:`w-full rounded-md border border-border bg-background px-3 py-2 text-sm`})]},t.id)),(0,Y.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Y.jsx)(`button`,{type:`submit`,disabled:!l,className:`rounded-md bg-primary px-3 py-2 text-sm text-primary-foreground disabled:opacity-50`,children:`Send answer`}),(0,Y.jsx)(`button`,{type:`button`,onClick:()=>void d({}),className:`text-sm text-muted-foreground`,children:`Dismiss`})]})]})}),e.responseState===`uncertain`?(0,Y.jsx)(`p`,{role:`status`,className:`text-sm text-muted-foreground`,children:`Delivery is unconfirmed. This answer will not be resent automatically.`}):null,s?(0,Y.jsx)(`p`,{role:`alert`,className:`text-sm text-destructive`,children:s}):null]})}function $k(e){let t=(0,J.c)(15),n=e.disabled||e.selections.length>=4,r=e.selections.length===0?`Compare models…`:`Add current selection`,i;t[0]!==e.onAdd||t[1]!==n||t[2]!==r?(i=(0,Y.jsx)(`button`,{type:`button`,className:`rounded border px-2 py-1 disabled:opacity-40`,disabled:n,onClick:e.onAdd,children:r}),t[0]=e.onAdd,t[1]=n,t[2]=r,t[3]=i):i=t[3];let a;t[4]===e?a=t[5]:(a=e.selections.map(t=>(0,Y.jsxs)(`button`,{type:`button`,disabled:e.disabled,onClick:()=>e.onRemove(ut(t)),"aria-label":`Remove ${t.instanceId} ${t.model} ${t.options?.map(tA).join(` `)??``}`,className:`rounded bg-muted px-2 py-1 text-left disabled:opacity-40`,children:[t.instanceId,` · `,t.model,t.options?.map(eA).join(``),` ×`]},ut(t))),t[4]=e,t[5]=a);let o;t[6]!==i||t[7]!==a?(o=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[i,a]}),t[6]=i,t[7]=a,t[8]=o):o=t[8];let s;t[9]!==e.reason||t[10]!==e.selections.length?(s=e.selections.length>0&&(0,Y.jsx)(`p`,{className:`mt-1 text-muted-foreground`,children:e.reason??(e.selections.length<2?`Choose another provider, model or effort in the model picker, then add it here.`:`Send launches ${e.selections.length} isolated worktrees with the same prompt and context. Up to 2 launch at once.`)}),t[9]=e.reason,t[10]=e.selections.length,t[11]=s):s=t[11];let c;return t[12]!==o||t[13]!==s?(c=(0,Y.jsxs)(`section`,{"aria-label":`Compare models`,className:`mx-auto mb-2 w-full max-w-208 px-4 text-xs`,children:[o,s]}),t[12]=o,t[13]=s,t[14]=c):c=t[14],c}function eA(e){return` · ${e.id}: ${e.value}`}function tA(e){return`${e.id} ${e.value}`}var nA=mt(le,{exclusive:async(e,t)=>{if(!globalThis.navigator?.locks)throw Error(`Cross-tab launch coordination is unavailable.`);return navigator.locks.request(e,{mode:`exclusive`},t)}});typeof window<`u`&&window.addEventListener(`storage`,e=>{e.key===`ryco:batch-launches:v1`&&nA.refresh()});function rA(e){let{batch:t}=e,n=qr(t.environmentId),[r,i]=(0,q.useState)(0),[a,o]=(0,q.useState)({stamp:``,items:{}}),s=`${t.id}:${n.phase}:${n.attemptCount}:${n.connectedAt}:${r}`,c=a.stamp===s?a.items:{};(0,q.useEffect)(()=>{let e=Dr(t.environmentId);if(n.phase!==`connected`||!e?.orchestration.getThreadWindow)return;let r=!0,i=ge(t.environmentId,()=>lr(t.environmentId));return Promise.all(t.destinations.filter(e=>[`launched`,`uncertain`].includes(e.status)).map(async n=>{try{let a=await Qe({api:e,batch:t,destination:n,assertMutationReady:i});if(!r||!a)return;o(e=>({stamp:s,items:{...e.stamp===s?e.items:{},[n.threadId]:a}})),n.status===`uncertain`&&a.accepted&&a.worktreePath&&await nA.reconcile(t.id,[a])}catch{}})),()=>{r=!1}},[t,n.phase,s]);let l=t.destinations.some(e=>[`queued`,`preparing`,`dispatching`,`failed`].includes(e.status));return(0,Y.jsxs)(`section`,{"aria-label":`Batch results`,className:`mx-auto mb-2 w-full max-w-208 rounded border bg-background p-3 text-xs`,children:[e.error&&(0,Y.jsx)(`p`,{role:`alert`,className:`mb-2 text-destructive`,children:e.error}),(0,Y.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-center gap-3`,children:[(0,Y.jsxs)(`strong`,{children:[`Model comparison ·`,` `,t.destinations.filter(e=>e.status===`launched`).length,`/`,t.destinations.length,` launched`]}),l&&(0,Y.jsx)(`button`,{type:`button`,className:`underline`,onClick:()=>void nA.cancel(t.id).catch(()=>{}),children:`Stop remaining launches`}),e.onRetry&&t.destinations.some(e=>e.status===`failed`)&&(0,Y.jsx)(`button`,{type:`button`,className:`underline disabled:opacity-40`,disabled:e.retryDisabled,onClick:e.onRetry,children:`Retry safe failures`}),(0,Y.jsx)(`button`,{type:`button`,className:`underline`,disabled:n.phase!==`connected`,onClick:()=>i(e=>e+1),children:`Refresh evidence`}),e.onNew&&t.destinations.every(e=>e.status===`launched`||e.status===`cancelled`)&&(0,Y.jsx)(`button`,{type:`button`,className:`underline`,onClick:e.onNew,children:`Start another comparison`})]}),(0,Y.jsx)(`div`,{className:`overflow-x-auto`,children:(0,Y.jsxs)(`table`,{className:`w-full text-left`,children:[(0,Y.jsx)(`thead`,{children:(0,Y.jsxs)(`tr`,{className:`text-muted-foreground`,children:[(0,Y.jsx)(`th`,{className:`p-1`,children:`Selection`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Launch / turn`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Latest diff`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Reported tokens`}),(0,Y.jsx)(`th`,{className:`p-1`,children:`Result`})]})}),(0,Y.jsx)(`tbody`,{children:t.destinations.map(e=>(0,Y.jsx)(iA,{batch:t,target:e,evidence:c[e.threadId]},e.threadId))})]})}),(0,Y.jsx)(`p`,{className:`mt-2 text-muted-foreground`,children:`Uncertain launches are never resent. Draft and context are retained. Use each thread’s Review panel to inspect changes; test results require the candidate’s own evidence.`})]})}function iA(e){let t=(0,J.c)(27),{batch:n,target:r,evidence:i}=e,a=_(n.environmentId,r.threadId),o=po(),s=ao(o.root,o.activeRef,a)!==null,c;t[0]===r.modelSelection.options?c=t[1]:(c=r.modelSelection.options?.map(oA).join(` · `),t[0]=r.modelSelection.options,t[1]=c);let l;t[2]===c?l=t[3]:(l=(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:c}),t[2]=c,t[3]=l);let u;t[4]!==l||t[5]!==r.label?(u=(0,Y.jsxs)(`td`,{className:`max-w-64 p-1 break-words`,children:[r.label,l]}),t[4]=l,t[5]=r.label,t[6]=u):u=t[6];let d=i?` / ${i.status}`:``,f;t[7]===r.error?f=t[8]:(f=r.error&&(0,Y.jsx)(`div`,{className:`max-w-64 text-destructive`,children:r.error}),t[7]=r.error,t[8]=f);let p;t[9]!==d||t[10]!==f||t[11]!==r.status?(p=(0,Y.jsxs)(`td`,{className:`p-1`,children:[r.status,d,f]}),t[9]=d,t[10]=f,t[11]=r.status,t[12]=p):p=t[12];let m=i?.files==null?`Unavailable`:`${i.files} files · +${i.additions} −${i.deletions}`,h;t[13]===m?h=t[14]:(h=(0,Y.jsx)(`td`,{className:`p-1`,children:m}),t[13]=m,t[14]=h);let g;t[15]===i?g=t[16]:(g=i?.tokens==null?`Unavailable`:i.tokens.toLocaleString(),t[15]=i,t[16]=g);let v;t[17]===g?v=t[18]:(v=(0,Y.jsx)(`td`,{className:`p-1`,children:g}),t[17]=g,t[18]=v);let y=[`launched`,`uncertain`,`dispatching`].includes(r.status)&&(0,Y.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Y.jsx)(Fo,{className:`underline`,to:`/$environmentId/$threadId`,params:Le(a),children:`Open thread`}),(0,Y.jsx)(Fo,{className:`underline`,to:`/$environmentId/$threadId`,params:Le(a),search:aA,children:`Review`}),(0,Y.jsx)(`button`,{type:`button`,className:`underline disabled:opacity-40`,disabled:!s,title:`Open a candidate first, then split another result alongside it.`,onClick:()=>po.getState().open(a),children:`Split view`})]}),b;t[19]===y?b=t[20]:(b=(0,Y.jsx)(`td`,{className:`p-1`,children:y}),t[19]=y,t[20]=b);let x;return t[21]!==v||t[22]!==b||t[23]!==u||t[24]!==p||t[25]!==h?(x=(0,Y.jsxs)(`tr`,{className:`border-t align-top`,children:[u,p,h,v,b]}),t[21]=v,t[22]=b,t[23]=u,t[24]=p,t[25]=h,t[26]=x):x=t[26],x}function aA(e){return Xl(e)}function oA(e){return`${e.id}: ${e.value}`}var sA=t(au(),1);function cA(e){let t=(0,J.c)(33),{observation:n}=e,r;t[0]===n.observedAt?r=t[1]:(r=new Date(n.observedAt).toLocaleString(),t[0]=n.observedAt,t[1]=r);let i;t[2]===r?i=t[3]:(i=(0,Y.jsxs)(`p`,{children:[`Observed main-loop request · `,r]}),t[2]=r,t[3]=i);let a;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(`dt`,{children:`Direct input`}),t[4]=a):a=t[4];let o;t[5]===n.directInputTokens?o=t[6]:(o=n.directInputTokens.toLocaleString(),t[5]=n.directInputTokens,t[6]=o);let s;t[7]===o?s=t[8]:(s=(0,Y.jsxs)(`dd`,{children:[o,` tokens`]}),t[7]=o,t[8]=s);let c;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`dt`,{children:`Cache reads`}),t[9]=c):c=t[9];let l;t[10]===n.cacheReadInputTokens?l=t[11]:(l=n.cacheReadInputTokens.toLocaleString(),t[10]=n.cacheReadInputTokens,t[11]=l);let u;t[12]===l?u=t[13]:(u=(0,Y.jsxs)(`dd`,{children:[l,` tokens`]}),t[12]=l,t[13]=u);let d;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(`dt`,{children:`Cache writes`}),t[14]=d):d=t[14];let f;t[15]===n.cacheWriteInputTokens?f=t[16]:(f=n.cacheWriteInputTokens.toLocaleString(),t[15]=n.cacheWriteInputTokens,t[16]=f);let p;t[17]===f?p=t[18]:(p=(0,Y.jsxs)(`dd`,{children:[f,` tokens`]}),t[17]=f,t[18]=p);let m;t[19]!==p||t[20]!==s||t[21]!==u?(m=(0,Y.jsxs)(`dl`,{className:`grid grid-cols-2 gap-x-4 gap-y-1`,children:[a,s,c,u,d,p]}),t[19]=p,t[20]=s,t[21]=u,t[22]=m):m=t[22];let h;t[23]===n.mainLoopTotals?h=t[24]:(h=n.mainLoopTotals&&(0,Y.jsxs)(`p`,{children:[`Reported cumulative main-loop totals:`,` `,n.mainLoopTotals.directInputTokens.toLocaleString(),` direct input,`,` `,n.mainLoopTotals.cacheReadInputTokens.toLocaleString(),` cache reads,`,` `,n.mainLoopTotals.cacheWriteInputTokens.toLocaleString(),` cache writes, and`,` `,n.mainLoopTotals.outputTokens.toLocaleString(),` output tokens. These totals cover a different scope from the request above.`]}),t[23]=n.mainLoopTotals,t[24]=h);let g;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,Y.jsx)(`p`,{children:`Subagent usage is separate. Cache availability for the next request is unknown. These observations do not guarantee a cache hit or billing savings.`}),t[25]=g):g=t[25];let _=n.observedTtlSeconds?`The observed write reported a ${n.observedTtlSeconds/60}-minute lifetime; reads do not establish a new lifetime.`:`No cache lifetime was reported for this observation.`,v;t[26]===_?v=t[27]:(v=(0,Y.jsx)(`p`,{children:_}),t[26]=_,t[27]=v);let y;return t[28]!==m||t[29]!==h||t[30]!==v||t[31]!==i?(y=(0,Y.jsxs)(`div`,{className:`space-y-2 text-sm text-muted-foreground`,children:[i,m,h,g,v]}),t[28]=m,t[29]=h,t[30]=v,t[31]=i,t[32]=y):y=t[32],y}function lA(e){let t=(0,J.c)(5),{activities:n}=e,r;t[0]===n?r=t[1]:(r=Ie(n),t[0]=n,t[1]=r);let i=r,a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(`summary`,{className:`cursor-pointer`,children:`Observed Claude cache usage`}),t[2]=a):a=t[2];let o;return t[3]===i?o=t[4]:(o=(0,Y.jsxs)(`details`,{className:`mx-3 my-2 text-xs text-muted-foreground`,children:[a,(0,Y.jsx)(`div`,{className:`py-2`,children:i?(0,Y.jsx)(cA,{observation:i}):(0,Y.jsx)(`p`,{children:`No authoritative cache usage is available for this context. Next-request cache availability is unknown.`})})]}),t[3]=i,t[4]=o),o}function uA(e){let t=document.createElement(`div`);document.body.append(t);let n=(0,sA.createRoot)(t),r=!1,i=()=>{r||(r=!0,queueMicrotask(()=>{n.unmount(),t.remove()}))};return n.render(e(i)),i}var dA={review:e=>new Promise(t=>{uA(n=>{let r=e=>{t(e),n()};return(0,Y.jsx)(vi,{open:!0,onOpenChange:e=>{e||r(`cancel`)},children:(0,Y.jsx)(ia,{bottomStickOnMobile:!1,children:(0,Y.jsxs)(`div`,{className:`space-y-4 p-6`,children:[(0,Y.jsx)(Ri,{children:`Review large Claude resume`}),(0,Y.jsxs)(qa,{children:[e.reason,` The last observed prompt contained`,` `,e.promptTokens.toLocaleString(),` tokens.`]}),(0,Y.jsx)(cA,{observation:e.observation}),(0,Y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Compaction summarizes older context and can itself consume tokens. Your message and attachments will wait until native compaction is confirmed.`}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,Y.jsx)(W,{onClick:()=>r(`continue`),children:`Continue with full context`}),(0,Y.jsx)(W,{variant:`outline`,onClick:()=>r(`compact`),children:`Compact then send`}),(0,Y.jsx)(W,{variant:`ghost`,onClick:()=>r(`cancel`),children:`Cancel`})]})]})})})})}),compacting:e=>uA(t=>(0,Y.jsx)(vi,{open:!0,onOpenChange:n=>{n||(e(),t())},children:(0,Y.jsx)(ia,{bottomStickOnMobile:!1,children:(0,Y.jsxs)(`div`,{className:`space-y-4 p-6`,children:[(0,Y.jsx)(Ri,{children:`Compacting Claude context…`}),(0,Y.jsx)(qa,{children:`Your original message and attachments are held. Sending waits for successful native compaction and a ready session.`}),(0,Y.jsx)(W,{variant:`outline`,onClick:()=>{e(),t()},children:`Cancel pending send`}),(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Cancelling keeps your draft. Compaction already requested may still finish.`})]})})}))};function fA(e,t=50){let n=e.trim();return n.length<=t?n:`${n.slice(0,t)}...`}var pA=`ryco:last-invoked-script-by-project`,mA=N(k,D);function hA(e){return e.workspacePanelOpen&&e.workspaceTab===`agents`?0:e.liveCount}function gA(e,t,n,r){return{id:e,environmentId:t.environmentId,codexThreadId:null,projectId:t.projectId,title:`New thread`,modelSelection:n,runtimeMode:t.runtimeMode,interactionMode:t.interactionMode,tokenMode:t.tokenMode??At,session:null,messages:[],error:r,createdAt:t.createdAt,archivedAt:null,settledOverride:null,settledAt:null,latestTurn:null,branch:t.branch,worktreePath:t.worktreePath,turnDiffSummaries:[],activities:[],proposedPlans:[]}}function _A(e){return!!(e.serverThread&&e.targetThreadId===e.routeThreadRef.threadId&&e.serverThread.environmentId===e.routeThreadRef.environmentId&&e.serverThread.id===e.targetThreadId)}function vA(e){let t=new Set(e.openThreadIds),n=e.currentThreadIds.filter(n=>n!==e.activeThreadId&&t.has(n)),r=Math.max(0,e.maxHiddenThreadCount??10),i=n.length>r?n.slice(-r):n;return e.activeThreadId&&e.activeThreadTerminalOpen&&!i.includes(e.activeThreadId)&&i.push(e.activeThreadId),i}function yA(e){!e||typeof URL>`u`||!e.startsWith(`blob:`)||URL.revokeObjectURL(e)}function bA(e){if(e.role===`user`&&e.attachments)for(let t of e.attachments)dn(t)&&yA(t.previewUrl)}function xA(e){if(e.role!==`user`||!e.attachments)return[];let t=[];for(let n of e.attachments)dn(n)&&n.previewUrl&&n.previewUrl.startsWith(`blob:`)&&t.push(n.previewUrl);return t}function SA(e){return e.isGitRepo?e.requestedEnvMode:`local`}function CA(e){let t=e.isServerThread&&!e.isFirstMessage&&e.threadWorktreePath===null&&e.activeThreadBranch!==null&&e.currentGitRefName!==null&&e.currentGitRefName!==e.activeThreadBranch;return{shouldMaterializeLegacyBranchWorktree:t,baseBranchForWorktree:e.isFirstMessage&&e.sendEnvMode===`worktree`&&!e.threadWorktreePath||t?e.activeThreadBranch:null,shouldCreateWorktree:e.isFirstMessage&&e.sendEnvMode===`worktree`&&!e.threadWorktreePath||t}}function wA(e){let t=e.trimmedPrompt.trim();return t.length>0?t:e.firstImageName?`Attachment: ${e.firstImageName}`:e.firstTerminalContextLabel?e.firstTerminalContextLabel:`New thread`}function TA(e){if(typeof URL>`u`||!e.previewUrl.startsWith(`blob:`)||!e.file)return e;try{return{...e,previewUrl:URL.createObjectURL(e.file)}}catch{return e}}function EA(e){let t=Fe(e.prompt).trim(),n=ke(e.terminalContexts),r=e.terminalContexts.length-n.length,i=e.sourceControlContexts?.length??0;return{trimmedPrompt:t,sendableTerminalContexts:n,expiredTerminalContextCount:r,hasSendableContent:t.length>0||e.imageCount>0||n.length>0||i>0}}function DA(e,t){let n=Math.max(1,Math.floor(e))===1?`Expired terminal context`:`Expired terminal contexts`;return t===`empty`?{title:`${n} won't be sent`,description:`Remove it or re-add it to include terminal output.`}:{title:`${n} omitted from message`,description:`Re-add it if you want that terminal output included.`}}async function OA(e,t){let n=M(new Date);return Promise.all(e.map(async e=>{if(!z(e.staleAfter,n))return e;try{return await t.fetcher(e)}catch{return e}}))}function kA(e){return!!(e&&(e.latestTurn!==null||e.messages.length>0||e.session!==null))}function AA(e){return!!(e&&(e.latestTurn!==null||e.messages.length>0))}async function jA(e,t=1e3){let n=()=>Ce(me.getState(),e);return kA(n())?!0:await new Promise(r=>{let i=!1,a=null,o=e=>{i||(i=!0,a!==null&&globalThis.clearTimeout(a),s(),r(e))},s=me.subscribe(t=>{kA(Ce(t,e))&&o(!0)});if(kA(n())){o(!0);return}a=globalThis.setTimeout(()=>{o(!1)},t)})}function MA(e,t){let n=e?.latestTurn??null,r=e?.session??null;return{startedAt:new Date().toISOString(),preparingWorktree:!!t?.preparingWorktree,latestTurnTurnId:n?.turnId??null,latestTurnRequestedAt:n?.requestedAt??null,latestTurnStartedAt:n?.startedAt??null,latestTurnCompletedAt:n?.completedAt??null,sessionOrchestrationStatus:r?.orchestrationStatus??null,sessionUpdatedAt:r?.updatedAt??null}}function NA(e){if(!e.localDispatch)return!1;if(e.hasPendingApproval||e.hasPendingUserInput||e.threadError)return!0;let t=e.latestTurn??null,n=e.session??null,r=e.localDispatch.latestTurnTurnId!==(t?.turnId??null)||e.localDispatch.latestTurnRequestedAt!==(t?.requestedAt??null)||e.localDispatch.latestTurnStartedAt!==(t?.startedAt??null)||e.localDispatch.latestTurnCompletedAt!==(t?.completedAt??null);return e.phase===`running`?!(!r||t?.startedAt===null||t===null||n?.activeTurnId!==void 0&&n.activeTurnId!==null&&t?.turnId!==n.activeTurnId):r||e.localDispatch.sessionOrchestrationStatus!==(n?.orchestrationStatus??null)||e.localDispatch.sessionUpdatedAt!==(n?.updatedAt??null)}function PA(e){return e.hasThread&&e.messageCount===0&&e.optimisticMessageCount===0&&e.timelineEntryCount===0&&e.presentationTier!==`phone`}function FA(e,t){e(e=>{let n=e.filter(e=>e.id===t);for(let e of n)bA(e);let r=e.filter(e=>e.id!==t);return r.length===e.length?e:r})}function IA(e){let{refs:t,composerHandle:n,dispatch:r,draft:i,messageId:a,promptSnapshot:o,imagesSnapshot:s,terminalContextsSnapshot:c}=e;if(t.promptRef.current.length!==0||t.composerImagesRef.current.length!==0||t.composerTerminalContextsRef.current.length!==0)return;FA(r.setOptimisticUserMessages,a),t.promptRef.current=o;let l=s.map(TA);t.composerImagesRef.current=l,t.composerTerminalContextsRef.current=c,i.setComposerDraftPrompt(i.composerDraftTarget,o),i.addComposerDraftImages(i.composerDraftTarget,l),i.setComposerDraftTerminalContexts(i.composerDraftTarget,c),n.readComposer()?.resetCursorState({cursor:Bt(o,o.length),prompt:o,detectTrigger:!0})}function LA(e){let t=de(e.composer.prompt,e.composer.sendableTerminalContexts);return e.formatOutgoingPrompt({provider:e.composer.selectedProvider,model:e.composer.selectedModel,models:e.composer.selectedProviderModels,effort:e.composer.selectedPromptEffort,text:t||`[User attached one or more files without additional text. Respond using the conversation context and the attachment(s).]`})}async function RA(e,t){let n=t?.nowMs??Date.now();return Promise.all(e.map(async e=>e.type===`file`&&e.uploadToken!==void 0&&(e.expiresAt===void 0||er(e.expiresAt,n))?bt({name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadToken:e.uploadToken}):fe({attachment:await yd.encode({id:e.id,file:e.file}),name:e.name,type:e.type})))}async function zA(e){let{composer:t,thread:n,worktree:r,settings:i,project:a,scroll:o,draft:s,dispatch:c,refs:l,sourceControl:u,persistSettings:d,composerHandle:f,formatOutgoingPrompt:p}=e,{api:m,beginLocalDispatch:g,resetLocalDispatch:v,setOptimisticUserMessages:y,setThreadError:b}=c;l.sendInFlightRef.current=!0,g({preparingWorktree:!!r.baseBranchForWorktree});let x=[...t.images],S=[...t.sendableTerminalContexts],C=[...t.sourceControlContexts],w={prompt:l.promptRef.current,images:l.composerImagesRef.current,terminalContexts:l.composerTerminalContextsRef.current},T=e.messageId??Vt(),E=new Date().toISOString(),D=LA({composer:t,formatOutgoingPrompt:p}),O=!1,k=!1;try{gr(t);let c=await RA(x);await o.scrollToEndBeforeOptimistic();let p=x.map(TA).map(e=>({type:e.type,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.previewUrl}));y(e=>[...e,{id:T,role:`user`,text:D,...p.length>0?{attachments:p}:{},createdAt:E,streaming:!1}]),o.scrollToEndAfterOptimistic();let v=!e.preserveComposerDraft&&l.promptRef.current===w.prompt&&l.composerImagesRef.current===w.images&&l.composerTerminalContextsRef.current===w.terminalContexts;if(b(n.threadId,null),v&&(s.setComposerDraftTokenMode(_(s.environmentId,n.threadId),i.tokenMode),n.isLocalDraftThread&&s.setDraftThreadContext(s.composerDraftTarget,{tokenMode:i.tokenMode})),t.expiredTerminalContextCount>0){let e=DA(t.expiredTerminalContextCount,`omitted`);Ve.add(fc({type:`warning`,title:e.title,description:e.description}))}v&&(k=!0,l.promptRef.current=``,s.clearComposerDraftContent(s.composerDraftTarget),s.setComposerDraftTokenMode(s.composerDraftTarget,i.tokenMode),f.readComposer()?.resetCursorState());let A=null;if(x.length>0){let e=x[0];e&&(A=e.name)}let j=fA(wA({trimmedPrompt:t.trimmedPrompt,firstImageName:A,firstTerminalContextLabel:S.length>0?wt(S[0]):null})),M=Tt({selectedModelSelection:t.selectedModelSelection,selectedModel:t.selectedModel}),N=await OA(C,u),P=h(),F=P?.environment.environmentId===s.environmentId?P:Br(s.environmentId)?.serverConfig,I=r.baseBranchForWorktree?await gc({api:m,config:F,projectId:a.projectId}):null,L;if(r.baseBranchForWorktree&&!r.shouldMaterializeLegacyBranchWorktree&&!r.worktreeBranchName){if(!m.server)throw Error(`Server settings are unavailable for worktree creation.`);L=I?.worktreeBranchPrefix.value??(await m.server.getSettings()).worktreeBranchPrefix}let R=ni({isLocalDraftThread:n.isLocalDraftThread,baseBranchForWorktree:r.baseBranchForWorktree,fetchOrigin:r.fetchOrigin,worktreeBranchName:r.worktreeBranchName,worktreeBranchPrefix:L,runSetupScript:I?.runSetupScript.value??!0,shouldMaterializeLegacyBranchWorktree:r.shouldMaterializeLegacyBranchWorktree,projectId:a.projectId,projectCwd:a.projectCwd,title:j,threadCreateModelSelection:M,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode,activeThreadBranch:n.activeThreadBranch,worktreePath:n.worktreePath,threadCreatedAt:n.createdAt}),z=e.prepareForDispatch?await e.prepareForDispatch():null;if(await Ae({claudeCacheReview:dA,providerDriver:t.selectedProvider,sourceProviderDriver:n.sourceProviderDriver,assertMutationReady:Ln(s.environmentId,()=>lr(s.environmentId)),api:m,threadId:z?.threadId??n.threadId,isFirstMessage:z?.isFirstMessage??n.isFirstMessage,isServerThread:z?.isServerThread??n.isServerThread,title:j,messageId:T,outgoingMessageText:D,turnAttachments:c,modelSelection:t.selectedModelSelection,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode,...i.computerUse?{computerUse:i.computerUse}:{},...t.goal?{goal:t.goal}:{},bootstrap:z?void 0:R,sourceControlContexts:N,createdAt:E,newCommandId:yr,beginLocalDispatch:g,persistThreadSettingsForNextTurn:d.persistThreadSettingsForNextTurn}),O=!0,!k&&!e.preserveComposerDraft){let e=l.composerImagesRef.current.filter(e=>x.some(t=>t.id===e.id&&t.uploadToken===e.uploadToken&&t.file===e.file));l.composerImagesRef.current=l.composerImagesRef.current.filter(t=>!e.includes(t));for(let t of e)s.removeComposerDraftImage(s.composerDraftTarget,t.id)}}catch(e){k?IA({refs:l,composerHandle:f,dispatch:{setOptimisticUserMessages:y},draft:s,messageId:T,promptSnapshot:t.promptForRestore??t.prompt,imagesSnapshot:x,terminalContextsSnapshot:S}):FA(y,T),b(n.threadId,e instanceof Error?e.message:`Failed to send message.`)}finally{l.sendInFlightRef.current=!1,O||v()}return O}async function BA(e){let t=Pr(zt);try{return await Promise.all(e.attachments.map(async n=>{if(e.signal.aborted)throw Error(`Launch cancelled.`);if(n.type!==`file`)return(await RA([n]))[0];if(!n.file)throw Error(`Reattach '${n.name}' so each model can receive its own copy.`);let r=`${e.threadId}:${n.id}`;return await new Promise((i,a)=>{let o=()=>{},s=()=>{o(),e.signal.removeEventListener(`abort`,c)},c=()=>{s(),t.release(r),a(Error(`Launch cancelled.`))},l=()=>{let e=t.get(r);e?.status.kind===`uploaded`?(s(),i(bt({...n,uploadToken:e.status.uploadToken}))):(e?.status.kind===`failed`||e?.status.kind===`needsReattach`)&&(s(),a(Error(e.status.message)))};o=t.subscribe(l),e.signal.addEventListener(`abort`,c,{once:!0}),t.enqueue({attachmentId:r,threadId:e.threadId,environmentId:e.environmentId,name:n.name,mimeType:n.mimeType,sizeBytes:n.sizeBytes,readBytes:async()=>new Uint8Array(await n.file.arrayBuffer())}),l()})}))}finally{t.releaseAll()}}function VA(e){if(!e)return null;let t=/^ {0,3}\/computer-use(?:[ \t\r\n]+([\s\S]*))?$/i.exec(e);return t?{prompt:(t[1]??``).trim()}:null}var HA=new Map,UA=(e,t)=>JSON.stringify([e,t]);function WA(e){let t=(0,J.c)(74),{threadId:n}=e,r=window.desktopBridge?.computerBeta,[i,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(null),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(!1),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={x:16,y:64},t[0]=m):m=t[0];let[h,g]=(0,q.useState)(m),[_,v]=(0,q.useState)(null),[y,b]=(0,q.useState)(`Waiting for an exact window or browser tab…`),[x,S]=(0,q.useState)(null),C;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(C=new Set,t[1]=C):C=t[1];let w=(0,q.useRef)(C),T=(0,q.useRef)(null),E=(0,q.useRef)(null),D=(0,q.useRef)(null),O=(0,q.useRef)(null),k,A;t[2]===n?(k=t[3],A=t[4]):(k=()=>{if(!r)return;let e=!0,t=(e,t)=>{let r=HA.get(UA(n,e));l(r?.hidden??t?.autoPreview===!1),d(r?.large??t?.previewSize===`large`),p(r?.docked??!1),g(r?.position??{x:16,y:64})},i=()=>{E.current&&URL.revokeObjectURL(E.current),E.current=null,v(null)};r.getState().then(r=>{if(e){a(r),D.current=r;let e=r.targets?.find(e=>e.threadId===n);e&&!T.current&&!w.current.has(e.turnId)&&(T.current=e,s(e),t(e.turnId,r.preferences))}}).catch(YA);let o=r.onUpdate(e=>{if(e.type===`state`){a(e.state),D.current=e.state;return}if(e.type===`event`){if(e.event.type===`computer.thread-state`&&e.event.state.threadId===n){let t=e.event.state;b(t.inputPause?.message??t.lastError??(t.sharedPreviewUnavailable?`Preview paused while another task is using this computer`:t.agentActive?`Working · view only`:`Waiting for the next action`))}return}if(!(e.threadId!==n||w.current.has(e.turnId))){if(e.type===`ended`){if(w.current.add(e.turnId),HA.delete(UA(n,e.turnId)),w.current.size>64&&w.current.delete(w.current.values().next().value),T.current?.turnId!==e.turnId)return;T.current=null,s(null),i();return}if(e.type===`error`){S(e.message);return}if(T.current?.turnId!==e.turnId&&(T.current={turnId:e.turnId},i(),S(null),t(e.turnId,D.current?.preferences)),T.current.targetId!==e.targetId&&(T.current={turnId:e.turnId,targetId:e.targetId},i(),S(null),b(`Waiting for an exact window or browser tab…`)),e.type===`target`&&s({turnId:e.turnId,targetId:e.targetId,label:e.label}),e.type===`frame`){b(JA);let t=URL.createObjectURL(new Blob([new Uint8Array(e.bytes)],{type:e.mimeType})),n=E.current;E.current=t,v(t),n&&URL.revokeObjectURL(n),s(t=>({turnId:e.turnId,targetId:e.targetId,label:t?.label??`Computer`}))}}});return()=>{e=!1,o(),E.current&&URL.revokeObjectURL(E.current),E.current=null,r.setPreview(n,!1).catch(qA)}},A=[r,n],t[2]=n,t[3]=k,t[4]=A),(0,q.useEffect)(k,A);let j;t[5]!==o||t[6]!==n?(j=o?UA(n,o.turnId):null,t[5]=o,t[6]=n,t[7]=j):j=t[7];let M=j,N,P;t[8]!==f||t[9]!==c||t[10]!==u||t[11]!==h||t[12]!==M?(N=()=>{if(M)for(HA.delete(M),HA.set(M,{hidden:c,large:u,docked:f,position:h});HA.size>64;)HA.delete(HA.keys().next().value)},P=[M,c,u,f,h],t[8]=f,t[9]=c,t[10]=u,t[11]=h,t[12]=M,t[13]=N,t[14]=P):(N=t[13],P=t[14]),(0,q.useEffect)(N,P);let F=o!==null,I,L;if(t[15]!==c||t[16]!==F||t[17]!==n?(I=()=>{if(!r)return;let e=()=>void r.setPreview(n,F&&!c&&document.visibilityState===`visible`).catch(KA);return e(),document.addEventListener(`visibilitychange`,e),()=>{document.removeEventListener(`visibilitychange`,e),r.setPreview(n,!1).catch(GA)}},L=[r,n,F,c],t[15]=c,t[16]=F,t[17]=n,t[18]=I,t[19]=L):(I=t[18],L=t[19]),(0,q.useEffect)(I,L),!r||!o||i?.supported===!1)return null;if(c){let e;return t[20]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsxs)(W,{className:`absolute right-4 top-16 z-20`,variant:`outline`,size:`sm`,onClick:()=>l(!1),children:[(0,Y.jsx)(aa,{className:`size-3`}),`Show Computer`]}),t[20]=e):e=t[20],e}let R=`${f?`relative mx-4 mt-3`:`absolute z-30`} overflow-hidden rounded-xl border bg-background shadow-xl`,z;t[21]!==f||t[22]!==u||t[23]!==h?(z=f?{}:{left:h.x,top:h.y,width:u?`min(720px, calc(100% - 32px))`:`min(384px, calc(100% - 32px))`,maxHeight:`calc(100% - 80px)`},t[21]=f,t[22]=u,t[23]=h,t[24]=z):z=t[24];let ee;t[25]!==f||t[26]!==h?(ee=e=>{f||(e.currentTarget.setPointerCapture(e.pointerId),O.current={x:e.clientX,y:e.clientY,left:h.x,top:h.y})},t[25]=f,t[26]=h,t[27]=ee):ee=t[27];let te,B,ne,re;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(te=e=>{let t=O.current;if(!t)return;let n=e.currentTarget.closest(`section`)?.parentElement;g({x:Math.max(0,Math.min((n?.clientWidth??window.innerWidth)-(e.currentTarget.closest(`section`)?.clientWidth??384),t.left+e.clientX-t.x)),y:Math.max(0,Math.min((n?.clientHeight??window.innerHeight)-(e.currentTarget.closest(`section`)?.clientHeight??300),t.top+e.clientY-t.y))})},B=()=>{O.current=null},ne=()=>{O.current=null},re=(0,Y.jsx)(nd,{className:`size-3`}),t[28]=te,t[29]=B,t[30]=ne,t[31]=re):(te=t[28],B=t[29],ne=t[30],re=t[31]);let ie;t[32]===ee?ie=t[33]:(ie=(0,Y.jsx)(`button`,{"aria-label":`Move preview`,className:`cursor-grab touch-none p-1`,onPointerDown:ee,onPointerMove:te,onPointerUp:B,onPointerCancel:ne,children:re}),t[32]=ee,t[33]=ie);let V;t[34]===o.label?V=t[35]:(V=(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs font-medium`,children:o.label}),t[34]=o.label,t[35]=V);let ae=f?`Float preview`:`Dock preview`,H;t[36]===f?H=t[37]:(H=()=>p(!f),t[36]=f,t[37]=H);let U;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,Y.jsx)(id,{className:`size-3`}),t[38]=U):U=t[38];let oe;t[39]!==ae||t[40]!==H?(oe=(0,Y.jsx)(W,{size:`icon-sm`,variant:`ghost`,"aria-label":ae,onClick:H,children:U}),t[39]=ae,t[40]=H,t[41]=oe):oe=t[41];let se=u?`Compact preview`:`Expand preview`,ce,le;t[42]===u?(ce=t[43],le=t[44]):(ce=()=>d(!u),le=u?(0,Y.jsx)(Ps,{className:`size-3`}):(0,Y.jsx)(Xu,{className:`size-3`}),t[42]=u,t[43]=ce,t[44]=le);let ue;t[45]!==se||t[46]!==ce||t[47]!==le?(ue=(0,Y.jsx)(W,{size:`icon-sm`,variant:`ghost`,"aria-label":se,onClick:ce,children:le}),t[45]=se,t[46]=ce,t[47]=le,t[48]=ue):ue=t[48];let de;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,Y.jsx)(W,{size:`icon-sm`,variant:`ghost`,"aria-label":`Hide preview`,onClick:()=>l(!0),children:(0,Y.jsx)(Ut,{className:`size-3`})}),t[49]=de):de=t[49];let fe;t[50]!==ie||t[51]!==V||t[52]!==oe||t[53]!==ue?(fe=(0,Y.jsxs)(`header`,{className:`flex items-center gap-1 border-b px-2 py-1.5`,children:[ie,V,oe,ue,de]}),t[50]=ie,t[51]=V,t[52]=oe,t[53]=ue,t[54]=fe):fe=t[54];let pe;t[55]!==_||t[56]!==y?(pe=(0,Y.jsx)(`div`,{className:`flex min-h-32 items-center justify-center bg-black/5`,children:_?(0,Y.jsx)(`img`,{src:_,alt:`Live view of the agent's current target`,draggable:!1,className:`max-h-[55vh] w-full object-contain pointer-events-none`}):(0,Y.jsx)(`p`,{className:`p-6 text-center text-xs text-muted-foreground`,children:y})}),t[55]=_,t[56]=y,t[57]=pe):pe=t[57];let me=x??y,he;t[58]===me?he=t[59]:(he=(0,Y.jsx)(`p`,{role:`status`,className:`min-w-0 flex-1 text-xs text-muted-foreground`,children:me}),t[58]=me,t[59]=he);let ge;t[60]===n?ge=t[61]:(ge=()=>void r.stopTask(n).catch(e=>S(e instanceof Error?e.message:`Could not stop Computer.`)),t[60]=n,t[61]=ge);let _e;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,Y.jsx)(oc,{className:`size-3`}),t[62]=_e):_e=t[62];let ve;t[63]===ge?ve=t[64]:(ve=(0,Y.jsxs)(W,{variant:`outline`,size:`sm`,onClick:ge,children:[_e,`Stop`]}),t[63]=ge,t[64]=ve);let ye;t[65]!==he||t[66]!==ve?(ye=(0,Y.jsxs)(`footer`,{className:`flex items-center gap-2 border-t px-3 py-2`,children:[he,ve]}),t[65]=he,t[66]=ve,t[67]=ye):ye=t[67];let be;return t[68]!==R||t[69]!==z||t[70]!==fe||t[71]!==pe||t[72]!==ye?(be=(0,Y.jsxs)(`section`,{"aria-label":`Computer preview`,className:R,style:z,children:[fe,pe,ye]}),t[68]=R,t[69]=z,t[70]=fe,t[71]=pe,t[72]=ye,t[73]=be):be=t[73],be}function GA(){}function KA(){}function qA(){}function JA(e){return e.startsWith(`Waiting for an exact`)?`Live preview · view only`:e}function YA(){}async function XA(e){if(e.intent===`send`&&!e.prompt.trim())throw Error(`Write a question before sending.`);if(e.envMode===`worktree`&&(!e.canUseWorktree||!e.branch))throw Error(`Select a checked-out branch before creating a worktree.`);let t=_d(e.prompt,e.quote);if(!await e.prepare())throw Error(`Save the pending file changes before opening the new chat.`);let n=Rt.make(`selection-${e.requestKey}`),r=E.make(`selection-${e.requestKey}`);if(await e.createThread(e.projectRef,{envMode:e.envMode,branch:e.envMode===`worktree`?e.branch:null,worktreePath:null,freshDraft:{draftId:n,threadId:r,prompt:t,modelSelection:e.composer.selectedModelSelection,runtimeMode:e.settings.runtimeMode,tokenMode:e.settings.tokenMode,isCurrent:e.isCurrent}}),e.intent!==`send`)return;let i=u(_(e.projectRef.environmentId,r)),a=ei.getState();a.queuesByThreadKey[i]?.some(t=>t.id===e.requestKey)||a.enqueue(i,{id:e.requestKey,createdAt:new Date().toISOString(),composer:{selectedProvider:e.composer.selectedProvider,selectedModel:e.composer.selectedModel,selectedProviderModels:e.composer.selectedProviderModels,selectedPromptEffort:e.composer.selectedPromptEffort,selectedModelSelection:e.composer.selectedModelSelection,prompt:t,trimmedPrompt:t.trim(),images:[],sendableTerminalContexts:[],sourceControlContexts:[],expiredTerminalContextCount:0},settings:e.settings});let o=Rr.getState();o.getComposerDraft(n)?.prompt===t&&o.setPrompt(n,``)}var ZA=(0,q.createContext)(null);function QA(e,t){let n=null;return e!=null&&(n=e[1]),{getTheme:function(){return t??(n==null?null:n.getTheme())}}}function $A(){let e=(0,q.useContext)(ZA);return e??function(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(8),e}function X(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function ej(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);n.search=r.toString(),console.warn(`Minified Lexical warning #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var tj=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,nj=tj&&`documentMode`in document?document.documentMode:null,rj=tj&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),ij=tj&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent),aj=!(!tj||!(`InputEvent`in window)||nj)&&`getTargetRanges`in new window.InputEvent(`input`),oj=tj&&!window.MSStream&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||/Macintosh/.test(navigator.userAgent)&&navigator.maxTouchPoints>1),sj=tj&&/Android/.test(navigator.userAgent),cj=tj&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent)&&!sj,lj=tj&&/^(?=.*Chrome).*/i.test(navigator.userAgent),uj=tj&&sj&&lj,dj=tj&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&rj&&!lj,fj=0,pj=1,mj=2,hj=1,gj=2,_j=3,vj=4,yj=5,bj=6,xj=cj||oj||dj?`\xA0`:`​`,Sj=`
182
182
 
183
183
  `,Cj=ij?`\xA0`:xj,wj=`֑-߿יִ-﷽ﹰ-ﻼ`,Tj=`A-Za-zÀ-ÖØ-öø-ʸ̀-֐ࠀ-῿‎Ⰰ-﬜︀-﹯﻽-￿`;RegExp(`^[^`+Tj+`]*[`+wj+`]`),RegExp(`^[^`+wj+`]*[`+Tj+`]`);var Ej={bold:1,capitalize:1024,code:16,highlight:128,italic:2,lowercase:256,strikethrough:4,subscript:32,superscript:64,underline:8,uppercase:512},Dj={directionless:1,unmergeable:2},Oj={center:2,end:6,justify:4,left:1,right:3,start:5},kj={[gj]:`center`,[bj]:`end`,[vj]:`justify`,[hj]:`left`,[_j]:`right`,[yj]:`start`},Aj={normal:0,segmented:2,token:1},jj={[fj]:`normal`,[mj]:`segmented`,[pj]:`token`},Mj=Symbol.for(`@lexical/ctrlOrOtherKey`),Nj=`$config`;function Pj(){return Gz()._blockCursorElement}function Fj(e){return e!==null&&e.nodeType===1&&e.hasAttribute(`data-lexical-slot`)}var Ij=dj||oj||cj;function Lj(){let e=Dz().createElement(`img`);e.setAttribute(`data-lexical-decorator-boundary`,`true`),e.alt=``;for(let[t,n]of[[`position`,`absolute`],[`width`,`0px`],[`height`,`0px`],[`border`,`0px`],[`margin`,`0px`],[`padding`,`0px`]])e.style.setProperty(t,n,`important`);return e}function Rj(e){return e!==null&&e.nodeType===1&&e.hasAttribute(`data-lexical-decorator-boundary`)}var zj=class e{element;before;after;constructor(e,t,n){this.element=e,this.before=t||null,this.after=n||null}withBefore(t){return new e(this.element,t,this.after)}withAfter(t){return new e(this.element,this.before,t)}withElement(t){return this.element===t?this:new e(t,this.before,this.after)}insertChild(e){let t=this.getInsertionAnchor();return t!==null&&t.parentElement!==this.element&&X(357),this.element.insertBefore(e,t),this}removeChild(e){return e.parentElement!==this.element&&X(358),this.element.removeChild(e),this}replaceChild(e,t){return t.parentElement!==this.element&&X(359),this.element.replaceChild(e,t),this}getFirstChild(){let e=this.getFirstChildAnchor(),t=e?e.nextSibling:this.element.firstChild;return t===this.getInsertionAnchor()?null:t}getFirstChildAnchor(){return this.after}resolveLeafPosition(e,t,n){if(this.element===e)return t===e&&n===0?`before`:`after`;let r=Bj(e,this.element);if(r===null)return`after`;let i=Array.prototype.indexOf.call(e.childNodes,r);if(i<0)return`after`;if(t===e)return n<=i?`before`:`after`;let a=Bj(e,t);if(a===null)return`after`;let o=Array.prototype.indexOf.call(e.childNodes,a);return o>=0&&o<=i?`before`:`after`}getInsertionAnchor(){return this.before}};function Bj(e,t){let n=t;for(;n!==null&&n.parentNode!==e;)n=n.parentNode;return n}var Vj=class e extends zj{withBefore(t){return new e(this.element,t,this.after)}withAfter(t){return new e(this.element,this.before,t)}withElement(t){return this.element===t?this:new e(t,this.before,this.after)}getInsertionAnchor(){return super.getInsertionAnchor()||this.getManagedLineBreak()||this.getDecoratorBoundaryAnchor(`trailing`)}getFirstChildAnchor(){let e=super.getFirstChildAnchor(),t=e?e.nextSibling:this.element.firstChild;for(;Fj(t);)e=t,t=t.nextSibling;Rj(t)&&(e=t,t=t.nextSibling);let n=e?e.nextSibling:this.element.firstChild;return n!==null&&n===Pj()?n:e}getDecoratorBoundaryAnchor(e){let t;if(e===`leading`){let e=super.getFirstChildAnchor();for(t=e?e.nextSibling:this.element.firstChild;Fj(t);)t=t.nextSibling}else t=this.before?this.before.previousSibling:this.element.lastChild,t!==null&&t===Pj()&&(t=t.previousSibling);return Rj(t)?t:null}setDecoratorBoundaryAnchor(e,t){let n=this.getDecoratorBoundaryAnchor(e);if(t!==(n!==null)){if(n!==null)this.element.removeChild(n);else if(e===`leading`){let e=this.getFirstChildAnchor();this.element.insertBefore(Lj(),e?e.nextSibling:this.element.firstChild)}else this.element.insertBefore(Lj(),this.before)}}getManagedLineBreak(){return this.element.__lexicalLineBreak||null}setManagedLineBreak(e){let t=this.element,n=this.after===null?t.firstChild:this.after.nextSibling,r=e===`empty`&&Fj(n)?null:e;if(t.__lexicalLastChildKind!==r){if(t.__lexicalLastChildKind=r,r===null)this.removeManagedLineBreak();else{let e=r===`decorator`&&Ij;this.insertManagedLineBreak(e)}}}removeManagedLineBreak(){let e=this.getManagedLineBreak();if(e){let t=this.element,n=e.nodeName===`IMG`?e.nextSibling:null;n&&t.removeChild(n),t.removeChild(e),t.__lexicalLineBreak=void 0}}insertManagedLineBreak(e){let t=this.getManagedLineBreak();if(t){if(e===(t.nodeName===`IMG`))return;this.removeManagedLineBreak()}let n=this.element,r=this.before||this.getDecoratorBoundaryAnchor(`trailing`),i=Dz().createElement(`br`);if(i.setAttribute(`data-lexical-managed-linebreak`,`true`),n.insertBefore(i,r),e){let e=Dz().createElement(`img`);e.setAttribute(`data-lexical-managed-linebreak`,`true`),e.style.setProperty(`display`,`inline`,`important`),e.style.setProperty(`border`,`0px`,`important`),e.style.setProperty(`margin`,`0px`,`important`),e.alt=``,n.insertBefore(e,i),n.__lexicalLineBreak=e}else n.__lexicalLineBreak=i}getFirstChildOffset(){let e=this.getFirstChild(),t=this.getInsertionAnchor(),n=0;for(let r=this.element.firstChild;r!==null&&r!==e&&r!==t;r=r.nextSibling)n++;return n}resolveChildIndex(e,t,n,r){if(n===this.element){let t=this.getFirstChildOffset(),n=Pj(),i=this.element.childNodes,a=Math.min(r,i.length),o=0;for(let e=t;e<a;e++)i[e]!==n&&o++;return[e,Math.min(o,e.getChildrenSize())]}let i=Hj(t,n);i.push(r);let a=Hj(t,this.element),o=e.getIndexWithinParent();for(let e=0;e<a.length;e++){let t=i[e],n=a[e];if(t===void 0||t<n)break;if(t>n){o+=1;break}}return[e.getParentOrThrow(),o]}};function Hj(e,t){let n=[],r=t;for(;r!==e&&r!==null;r=r.parentNode){let e=0;for(let t=r.previousSibling;t!==null;t=t.previousSibling)e++;n.push(e)}return r!==e&&X(225),n.reverse()}var Uj;try{Uj=`0.50.0+prod.esm`}catch{}var Wj=Uj??`"<unknown>+source"`,Gj=class{_front=new Set;_back=new Set;_cache;get size(){return this._front.size+this._back.size}addBack(e){return delete this._cache,this._front.has(e)||this._back.add(e),this}addFront(e){return delete this._cache,this._back.has(e)||this._front.add(e),this}delete(e){return delete this._cache,this._front.delete(e)||this._back.delete(e)}toArray(){let e=Array.from(this._front).reverse();for(let t of this._back)e.push(t);return e}toReadonlyArray(){return this._cache=this._cache||this.toArray(),this._cache}[Symbol.iterator](){return this.toReadonlyArray()[Symbol.iterator]()}},Kj=null;function qj(e,t=1e3){return e instanceof Jj?e.clone():e.size<t?new Map(e):new Jj().init(new Map(e),void 0,e.size)}var Jj=class e{_mutable=!1;_old=void 0;_nursery=void 0;_size=0;clone(){return this._mutable=!1,new e().init(this._old,this._nursery,this._size)}init(e,t,n){return this._old=e,this._nursery=t,this._size=n,this}get size(){return this._size}has(e){return this.get(e)!==void 0}getWithTombstone(e){let t=this._nursery&&this._nursery.get(e);return t===void 0?this._old&&this._old.get(e):t}get(e){let t=this.getWithTombstone(e);return t===Kj?void 0:t}shouldCompact(){return this._nursery!==void 0&&2*this._nursery.size>this._size}getNursery(){return this._mutable&&this._nursery||(this.compact(),this._nursery=new Map(this._nursery),this._mutable=!0),this._nursery}compact(e=!1){if(this._nursery&&this._nursery.size>0&&(e||this.shouldCompact())){let e=new Map(this._old);for(let[t,n]of this._nursery)n===Kj?e.delete(t):e.set(t,n);this._old=e,this._nursery=void 0}return this._mutable=!1,this}set(e,t){let n=this.getWithTombstone(e);if(n===t)return this;let r=this.getNursery();return n!==Kj&&n!==void 0||(this._size++,n===Kj&&r.delete(e)),r.set(e,t),this}delete(e){let t=this.has(e);return t&&(this.getNursery().set(e,Kj),this._size--),t}getOrInsert(e,t){let n=this.get(e);return n===void 0?(this.set(e,t),t):n}getOrInsertComputed(e,t){let n=this.get(e);if(n!==void 0)return n;let r=t(e);return this.set(e,r),r}clear(){this._mutable=!1,this._old=void 0,this._nursery=void 0,this._size=0}*keys(){for(let e of this.entries())yield e[0]}*values(){for(let e of this.entries())yield e[1]}*entries(){let e=this._nursery,t=this._old;if(t)for(let n of t){let t=n[0],r=e?e.get(t):void 0;r!==Kj&&(r!==void 0&&(n[1]=r),yield n)}if(e)for(let n of e)n[1]===Kj||t&&t.has(n[0])||(yield n)}forEach(e,t){t!==void 0&&(e=e.bind(t));for(let[t,n]of this.entries())e(n,t,this)}get[Symbol.toStringTag](){return`GenMap`}[Symbol.iterator](){return this.entries()}};function Yj(e,t,n,r,i,a){if($(e)){let o=e.getFirstChild();for(;o!==null;){let e=o.__key;o.__parent===t&&(($(o)||vB(o)&&o.__slots!==null)&&Yj(o,e,n,r,i,a),n.has(e)||a.delete(e),i.push(e)),o=o.getNextSibling()}}for(let o of vB(e)&&e.__slots!==null?e.__slots.values():[]){let e=r.get(o);e!==void 0&&yB(e)&&e.__slotHost===t&&(($(e)||vB(e)&&e.__slots!==null)&&Yj(e,o,n,r,i,a),n.has(o)||a.delete(o),i.push(o))}}var Xj=!1,Zj=0;function Qj(e){Zj=e.timeStamp}function $j(e,t,n){let r=e.nodeName===`BR`,i=t.__lexicalLineBreak;return i&&(e===i||r&&e.previousSibling===i)||r&&AR(e,n)!==void 0}function eM(e,t,n){let r=bz(lz(n)),i=r&&Az(r,n._rootElement),a=null,o=null;i!==null&&i.anchorNode===e&&(a=i.anchorOffset,o=i.focusOffset);let s=e.nodeValue;s!==null&&WR(t,s,a,o,!1)}function tM(e,t,n){if(Q(e)){let t=e.anchor.getNode();if(t.is(n)&&e.format!==t.getFormat())return!1}return vR(t)&&n.isAttached()}function nM(e,t,n){for(let r=e;r&&!aB(r);r=rz(r)){let e=AR(r,t);if(e!==void 0){let t=DR(e,n);if(t)return fL(t)||!Lz(r)?void 0:[r,t]}}}function rM(e,t,n){Xj=!0;let r=performance.now()-Zj>100;try{sL(e,()=>{let i=hI()||function(e){return e.read(`latest`,()=>{let e=hI();return e===null?null:e.clone()})}(e),a=new Map,o=e._editorState,s=e._blockCursorElement,c=!1,l=``;for(let n=0;n<t.length;n++){let u=t[n],d=u.type,f=u.target,p=nM(f,e,o);if(!p)continue;let[m,h]=p;if(d===`characterData`)r&&Z(h)&&vR(f)&&tM(i,f,h)&&eM(f,h,e);else if(d===`childList`){c=!0;let t=u.addedNodes;for(let n=0;n<t.length;n++){let r=t[n],i=OR(r),a=r.parentNode;if(!(a==null||r===s||i!==null||$j(r,a,e)||Rj(r)||e._slotsUsed&&Lz(r)&&r.hasAttribute(`data-lexical-slot`)||aB(r))){if(ij){let e=(Lz(r)?r.innerText:null)||r.nodeValue;e&&(l+=e)}a.removeChild(r)}}let n=u.removedNodes,r=n.length;if(r>0){let t=0;for(let i=0;i<r;i++){let r=n[i];$j(r,f,e)||s===r?(f.appendChild(r),t++):Rj(r)&&t++}r!==t&&a.set(m,h)}}}if(a.size>0)for(let[t,n]of a)n.reconcileObservedMutation(t,e);let u=n.takeRecords();if(u.length>0){for(let t=0;t<u.length;t++){let n=u[t],r=n.addedNodes,i=n.target;for(let t=0;t<r.length;t++){let n=r[t],a=n.parentNode;a==null||n.nodeName!==`BR`||$j(n,i,e)||a.removeChild(n)}}n.takeRecords()}i!==null&&(c&&IR(i),ij&&ez(e)&&i.insertRawText(l))})}finally{Xj=!1}}function iM(e){let t=e._observer;t!==null&&rM(e,t.takeRecords(),t)}function aM(e){(function(e){Zj===0&&lz(e).addEventListener(`textInput`,Qj,!0)})(e),e._observer=new MutationObserver((t,n)=>{rM(e,t,n)})}var oM=class{key;parse;unparse;isEqual;defaultValue;resetOnCopyNode;constructor(e,t){this.key=e,this.parse=t.parse.bind(t),this.unparse=(t.unparse||mM).bind(t),this.isEqual=(t.isEqual||Object.is).bind(t),this.defaultValue=this.parse(void 0),this.resetOnCopyNode=t.resetOnCopyNode||!1}};function sM(e,t){return new oM(e,t)}function cM(e){let t=new Map,n=new Set;for(let{ownNodeConfig:r}of fB(typeof e==`function`?e:e.replace))if(r&&r.stateConfigs)for(let e of r.stateConfigs){let r;`stateConfig`in e?(r=e.stateConfig,e.flat&&n.add(r.key)):r=e,t.set(r.key,r)}return{flatKeys:n,sharedConfigMap:t}}var lM=new Set([`__proto__`,`constructor`,`prototype`]),uM=class e{node;knownState;unknownState;sharedNodeState;size;constructor(e,t,n=void 0,r=new Map,i=void 0){this.node=e,this.sharedNodeState=t,this.unknownState=n,this.knownState=r;let{sharedConfigMap:a}=this.sharedNodeState,o=i===void 0?function(e,t,n){let r=n.size;if(t)for(let i in t){let t=e.get(i);t&&n.has(t)||r++}return r}(a,n,r):i;this.size=o}getValue(e){let t=this.knownState.get(e);if(t!==void 0)return t;this.sharedNodeState.sharedConfigMap.set(e.key,e);let n=e.defaultValue;if(this.unknownState&&e.key in this.unknownState){let t=this.unknownState[e.key];t!==void 0&&(n=e.parse(t)),this.updateFromKnown(e,n)}return n}getInternalState(){return[this.unknownState,this.knownState]}toJSON(){let e={...this.unknownState},t={};for(let[t,n]of this.knownState)t.isEqual(n,t.defaultValue)?delete e[t.key]:e[t.key]=t.unparse(n);for(let n of this.sharedNodeState.flatKeys)n in e&&(t[n]=e[n],delete e[n]);return pM(e)&&(t.$=e),t}getWritable(t){if(this.node===t)return this;let{sharedNodeState:n,unknownState:r}=this,i=new Map(this.knownState);return new e(t,n,function(e,t,n){let r;if(n)for(let[i,a]of Object.entries(n)){if(lM.has(i))continue;let n=e.get(i);n?t.has(n)||t.set(n,n.parse(a)):(r||={},r[i]=a)}return r}(n.sharedConfigMap,i,r),i,this.size)}resetOnCopyNode(){for(let e of this.knownState.keys())e.resetOnCopyNode&&this.knownState.set(e,e.defaultValue);return this}updateFromKnown(e,t){let n=e.key;this.sharedNodeState.sharedConfigMap.set(n,e);let{knownState:r,unknownState:i}=this;r.has(e)||i&&n in i||(i&&(delete i[n],this.unknownState=pM(i)),this.size++),r.set(e,t)}updateFromUnknown(e,t){if(lM.has(e))return;let n=this.sharedNodeState.sharedConfigMap.get(e);n?this.updateFromKnown(n,n.parse(t)):(this.unknownState=this.unknownState||{},e in this.unknownState||this.size++,this.unknownState[e]=t)}updateFromJSON(e){let{knownState:t}=this;for(let e of t.keys())t.set(e,e.defaultValue);if(this.size=t.size,this.unknownState=void 0,e)for(let[t,n]of Object.entries(e))this.updateFromUnknown(t,n)}};function dM(e){let t=e.getWritable(),n=t.__state?t.__state.getWritable(t):new uM(t,fM(t));return t.__state=n,n}function fM(e){return e.__state?e.__state.sharedNodeState:cR(Gz(),e.getType()).sharedNodeState}function pM(e){if(e)for(let t in e)return e}function mM(e){return e}function hM(e,t,n){for(let[r,i]of t.knownState){if(e.has(r.key))continue;e.add(r.key);let t=n?n.getValue(r):r.defaultValue;if(t!==i&&!r.isEqual(t,i))return!0}return!1}function gM(e,t,n){let{unknownState:r}=t,i=n?n.unknownState:void 0;if(r){for(let[t,n]of Object.entries(r))if(!e.has(t)&&(e.add(t),n!==(i?i[t]:void 0)))return!0}return!1}function _M(e,t){let n=e.__state;return n&&n.node===e?n.getWritable(t):n}function vM(e,t){let n=e.__mode,r=e.__format,i=e.__style,a=t.__mode,o=t.__format,s=t.__style,c=e.__state,l=t.__state;return(n===null||n===a)&&(r===null||r===o)&&(i===null||i===s)&&(e.__state===null||c===l||function(e,t){if(e===t)return!0;let n=new Set;return!(e&&hM(n,e,t)||t&&hM(n,t,e)||e&&gM(n,e,t)||t&&gM(n,t,e))}(c,l))}function yM(e,t){let n=e.mergeWithSibling(t),r=KI()._normalizedNodes;return r.add(e.__key),r.add(t.__key),n}function bM(e){let t,n,r=e;if(r.__text!==``||!r.isSimpleText()||r.isUnmergeable()){for(;(t=r.getPreviousSibling())!==null&&Z(t)&&t.isSimpleText()&&!t.isUnmergeable();){if(t.__text!==``){if(vM(t,r)){r=yM(t,r);break}break}t.remove()}for(;(n=r.getNextSibling())!==null&&Z(n)&&n.isSimpleText()&&!n.isUnmergeable();){if(n.__text!==``){if(vM(r,n)){r=yM(r,n);break}break}n.remove()}}else r.remove()}function xM(e){return SM(e.anchor),SM(e.focus),e}function SM(e){for(;e.type===`element`;){let t=e.getNode(),n=e.offset,r,i;if(n===t.getChildrenSize()?(r=t.getChildAtIndex(n-1),i=!0):(r=t.getChildAtIndex(n),i=!1),Z(r)){e.set(r.__key,i?r.getTextContentSize():0,`text`,!0);break}if(!$(r))break;e.set(r.__key,i?r.getChildrenSize():0,`element`,!0)}}var CM=Symbol.for(`@lexical/CachedTextSize`);function wM(e,t){return VM.read(()=>{let n=0,r=e;for(let e=0;e<t&&r!==null;e++){let i=BM.get(r);if(i===void 0&&X(345,r),$(i)){let a=HM.get(r);if(a!==void 0&&$(a)&&a.__parent!==i.__parent)n+=i.getTextContentSize();else{let e=UM.get(r),t=e&&e.__lexicalTextContent;typeof t!=`string`&&X(346,i.getType()),n+=t.length}e<t-1&&!i.isInline()&&(n+=2)}else{let e=i[CM];e===void 0&&X(347,i.getType(),r),n+=e}r=i.__next}return n},{editor:OM})}function TM(e){$(e)||e[CM]===void 0&&(e[CM]=Z(e)?e.__text.length:e.getTextContentSize())}var EM=4,DM,OM,kM,AM=``,jM=null,MM=null,NM=null;function PM(){return{firstTextKey:NM,format:jM,style:MM}}function FM(e){e.firstTextKey!==null&&(jM=e.format,MM=e.style,NM=e.firstTextKey)}function IM(e){if(NM!==null)return;let t=e.__lexicalFirstTextKey;if(t===void 0&&X(348),t===null)return;let n=HM.get(t);Z(n)&&(jM=n.getFormat(),MM=n.getStyle(),NM=t)}var LM,RM,zM,BM,VM,HM,UM,WM,GM,KM,qM=!1,JM=!1;function YM(e,t){let n=BM.get(e),r=HM.has(e);if(t!==null){let n=xN(e);n.parentNode===t&&t.removeChild(n)}if(!r){if(OM._keyToDOMMap.delete(e),$(n)){let e=hB(n,BM);XM(e,0,e.length-1,null)}if(n!==void 0){for(let e of aN(n).values()){let t=sN(e);YM(e,null),t!==null&&t.remove()}ZR(GM,kM,LM,n,`destroyed`)}}}function XM(e,t,n,r){for(let i=t;i<=n;++i){let t=e[i];t!==void 0&&YM(t,r)}}function ZM(e,t){e.setProperty(`text-align`,t)}var QM=`40px`;function $M(e,t){let n=DM.theme.indent;if(typeof n==`string`){let r=e.classList.contains(n);t>0&&!r?e.classList.add(n):t<1&&r&&e.classList.remove(n)}e.style.setProperty(`padding-inline-start`,t===0?``:`calc(${t} * var(--lexical-indent-base-value, ${QM}))`),YR(e,`class`),YR(e,`style`)}function eN(e,t){let n=e.style;t===0?ZM(n,``):t===1?ZM(n,`left`):t===2?ZM(n,`center`):t===3?ZM(n,`right`):t===4?ZM(n,`justify`):t===5?ZM(n,`start`):t===6&&ZM(n,`end`),YR(e,`style`)}function tN(e,t){let n=function(e){let t=e.__dir;if(t!==null)return t;if(mL(e))return null;let n=e.getParent();return n===null||pz(n)&&n.__dir===null?`auto`:null}(t);n===null?e.removeAttribute(`dir`):e.dir=n}function nN(e){let t=Dz().createElement(`div`);return t.setAttribute(`data-lexical-slot`,e),t.style.display=`none`,t}function rN(e,t,n){t||e.contentEditable===`false`?oB(n,OM):n.removeAttribute(`contenteditable`)}function iN(e,t,n){let r=AM,i=PM();AM=``;let a=``,o=fL(e);for(let[r,i]of n){let n=nN(r);rN(t,o,n),t.appendChild(n),AM=``;let s=PM();lN(i,qz(e,n,OM)),FM(s),oN(e,r,t,n),a+=AM}return FM(i),AM=r,a}function aN(e){return vB(e)&&e.__slots!==null?e.__slots:_B}function oN(e,t,n,r){let i=KM.$getSlotTargetElement(e,t,n,OM);i!==null&&(r.parentElement!==i&&i.appendChild(r),r.style.display=``)}function sN(e){let t=UM.get(e);return t===void 0?null:t.parentElement}function cN(e,t,n){let r=aN(e),i=aN(t);for(let[e,t]of r)if(!i.has(e)){let e=sN(t);YM(t,null),e!==null&&e.remove()}let a=AM,o=PM(),s=``,c=null,l=fL(t);for(let[e,a]of i){let i=r.get(e),o=i===void 0?null:sN(i);AM=``;let u=PM();if(o===null){o=nN(e);let r=null;for(let e of n.children)if(!e.hasAttribute(`data-lexical-slot`)){r=e;break}n.insertBefore(o,r),lN(a,qz(t,o,OM))}else i===a?gN(a,o):(i!==void 0&&YM(i,o),lN(a,qz(t,o,OM)));if(FM(u),rN(n,l,o),oN(t,e,n,o),s+=AM,o.parentElement===n){let e=c===null?n.firstChild:c.nextSibling;e!==o&&n.insertBefore(o,e),c=o}}return FM(o),AM=a,s}function lN(e,t){let n=HM.get(e);if(n===void 0&&X(60),t!==null){let r=BM.get(e);if(r!==void 0){let i=UM.get(e);if(i!==void 0){let a=yB(r)?r.__slotHost:null,o=yB(n)?n.__slotHost:null,s=r.__parent!==n.__parent||a!==o,c=o!==null&&i.parentElement!==t.element;if(s||c)return t.insertChild(i),gN(e,t.element)}}}let r=KM.$createDOM(n,OM);if(function(e,t,n){let r=n._keyToDOMMap;kR(t,n,e),r.set(e,t)}(e,r,OM),Z(n)?r.setAttribute(`data-lexical-text`,`true`):fL(n)&&(r.setAttribute(`data-lexical-decorator`,`true`),iB(r,{captureSelection:!0})),$(n)){let e=n.__indent,t=n.__size;tN(r,n),e!==0&&$M(r,e);let i=aN(n),a=i.size>0?iN(n,r,i):``;if(t===0)r.__lexicalTextContent=a,r.__lexicalFirstTextKey=null,AM+=a,i.size>0&&(r.__lexicalSlotTextLength=a.length);else{let e=AM,o=t-1;if(uN(hB(n,HM),n,0,o,qz(n,r,OM)),a!==``){let t=r.__lexicalTextContent||``;r.__lexicalTextContent=a+t,AM=e+a+t}i.size>0&&(r.__lexicalSlotTextLength=a.length)}let o=n.__format;o!==0&&eN(r,o),n.isInline()||(pN(null,n,r),fN(n,r))}else{let t=n.getTextContent();if(fL(n)){let t=n.decorate(OM,DM);t!==null&&_N(e,t),r.contentEditable=`false`;let i=aN(n);i.size>0&&iN(n,r,i)}AM+=t}return t!==null&&t.insertChild(r),KM.$decorateDOM(n,null,r,OM),TM(n),ZR(GM,kM,LM,n,`created`),r}function uN(e,t,n,r,i){let a=AM,o=PM();AM=``,jM=null,MM=null,NM=null;let s=n;for(;s<=r;++s){let t=PM();lN(e[s],i);let n=HM.get(e[s]);n!==null&&Z(n)?jM===null&&(jM=n.getFormat(),MM=n.getStyle(),NM=n.__key):$(n)&&s<r&&!n.isInline()&&(AM+=Sj),FM(t)}let c=OM._keyToDOMMap.get(t.__key);c===void 0&&X(349,t.__key),c.__lexicalTextContent=AM,c.__lexicalFirstTextKey=NM,AM=a+AM,FM(o)}function dN(e,t){if(!e)return!1;let n=t.get(e);return fL(n)&&!n.isInline()}function fN(e,t){let n=qz(e,t,OM);n.setDecoratorBoundaryAnchor(`leading`,dN(e.__first,HM)),n.setDecoratorBoundaryAnchor(`trailing`,dN(e.__last,HM))}function pN(e,t,n){let r=qz(t,n,OM),i=function(e,t){if(e){let n=e.__last;if(n){let e=t.get(n);if(e)return wL(e)?`line-break`:fL(e)&&e.isInline()?`decorator`:null}return`empty`}return null}(t,HM);r.setManagedLineBreak(i)}function mN(e,t,n){var r;jM=null,MM=null,NM=null,function(e,t,n){let r=AM,i=e.__size,a=t.__size;AM=``;let o=n.element,s=OM._keyToDOMMap.get(t.__key);s===void 0&&X(351,t.__key);let c=a-i;if(!qM&&Math.abs(c)<=1&&i>=EM&&e.__first===t.__first&&(c!==0||!OM._cloneNotNeeded.has(e.__key))){let i=s.__lexicalTextContent,l=WM.get(e.__key);if(!qM&&typeof i==`string`&&l!==void 0){let a=function(e,t){let n=t.size;if(n===0||n>=e.__size)return null;let r=e.__last,i=null,a=0;for(;r!==null&&a<n;){if(!t.has(r))return null;i=r;let e=HM.get(r);if(e===void 0)return null;r=e.__prev,a++}return a!==n||r!==null&&t.has(r)?null:i}(t,l);if(a!==null){let u=l.size;if(c===0){let e=wM(a,u),n=a,c=0;for(;n!==null&&c<u;){let e=HM.get(n);if(e===void 0)break;let t=PM();gN(n,o),Z(e)&&jM===null&&(jM=e.getFormat(),MM=e.getStyle(),NM=e.__key),FM(t),n=e.__next,c++}let d=``;for(n=a,c=0;n!==null&&c<u;){let e=HM.get(n);if(e===void 0)break;let t;if($(e)){let r=OM._keyToDOMMap.get(n),i=r&&r.__lexicalTextContent;typeof i!=`string`&&X(352,e.getType()),t=i}else t=e.getTextContent();d+=t,c<u-1&&$(e)&&!e.isInline()&&(d+=Sj),n=e.__next,c++}let f=s.__lexicalSlotTextLength||0,p=f>0?i.slice(f):i,m=p.slice(0,p.length-e)+d;s.__lexicalTextContent=m,AM=r+m,hN(t,s,l);return}if(function(e,t,n,r,i,a,o,s){if(s!==1&&s!==-1||o!==(s===1?2:1))return!1;let c=o-s,l=e.__last;for(let e=0;e<c-1;e++){if(l===null)return!1;let e=BM.get(l);if(e===void 0)return!1;l=e.__prev}if(l===null)return!1;let u=HM.get(a),d=BM.get(l);if(u===void 0||d===void 0||u.__prev!==d.__prev)return!1;let f=[],p=a;for(let e=0;e<o;e++){if(p===null)return!1;f.push(p);let e=HM.get(p);p=e?e.__next:null}let m=[];p=l;for(let e=0;e<c;e++){if(p===null)return!1;m.push(p);let e=BM.get(p);p=e?e.__next:null}let h=new Set(m),g=new Set(f),_=[],v=0,y=0;for(;v<c&&y<o;)if(f[y]===m[v])_.push({key:f[y],kind:`reconcile`}),v++,y++;else if(g.has(m[v])){if(h.has(f[y]))return!1;_.push({key:f[y],kind:`create`,nextIndex:y}),y++}else _.push({key:m[v],kind:`destroy`}),v++;for(;v<c;)_.push({key:m[v++],kind:`destroy`});for(;y<o;)_.push({key:f[y],kind:`create`,nextIndex:y}),y++;let b=wM(l,c);for(let e of _){let t=PM();if(e.kind===`reconcile`)gN(e.key,n.element);else if(e.kind===`destroy`)YM(e.key,n.element);else{let t=null;for(let n=e.nextIndex+1;n<o;n++){let e=OM._keyToDOMMap.get(f[n]);if(e!==void 0){t=e;break}}lN(e.key,n.withBefore(t??n.before))}if(e.kind!==`destroy`){let t=HM.get(e.key);t&&Z(t)&&jM===null&&(jM=t.getFormat(),MM=t.getStyle(),NM=t.__key)}FM(t)}let x=``;for(let e=0;e<o;e++){let t=HM.get(f[e]);if(t===void 0)return!1;let n;if($(t)){let r=OM._keyToDOMMap.get(f[e]),i=r&&r.__lexicalTextContent;typeof i!=`string`&&X(350,t.getType()),n=i}else n=t.getTextContent();x+=n,e<o-1&&$(t)&&!t.isInline()&&(x+=Sj)}let S=r.__lexicalSlotTextLength||0,C=S>0?i.slice(S):i;return r.__lexicalTextContent=C.slice(0,C.length-b)+x,!0}(e,0,n,s,i,a,u,c)){let e=s.__lexicalTextContent;typeof e!=`string`&&X(353),AM=r+e,hN(t,s,l);return}}}if(c===0){let t=e.__first,n=0;for(;t!==null;){let e=HM.get(t);if(e===void 0)break;let r=qM||zM.has(t)||RM.has(t),i=PM();if(r)gN(t,o);else{let n,r;if($(e)){r=UM.get(t);let i=r&&r.__lexicalTextContent;typeof i!=`string`&&X(354,e.getType()),n=i}else n=e.getTextContent();AM+=n,r!==void 0&&IM(r)}Z(e)?jM===null&&(jM=e.getFormat(),MM=e.getStyle(),NM=e.__key):$(e)&&n<a-1&&!e.isInline()&&(AM+=Sj),FM(i),t=e.__next,n++}s.__lexicalTextContent=AM,s.__lexicalFirstTextKey=NM,AM=r+AM;return}}if(i===1&&a===1){let r=e.__first,i=t.__first;if(r===i)gN(r,o);else{let e=xN(r),t=lN(i,null);try{e.parentNode===o?o.replaceChild(t,e):n.insertChild(t)}catch(n){if(typeof n==`object`&&n){let a=`${n.toString()} Parent: ${o.tagName}, new child: {tag: ${t.tagName} key: ${i}}, old child: {tag: ${e.tagName}, key: ${r}}.`;throw Error(a)}throw n}YM(r,null)}let a=HM.get(i);Z(a)&&jM===null&&(jM=a.getFormat(),MM=a.getStyle(),NM=a.__key)}else{let r=hB(e,BM),s=hB(t,HM);if(r.length!==i&&X(227),s.length!==a&&X(228),i===0)a!==0&&uN(s,t,0,a-1,n);else if(a===0){if(i!==0){let e=n.after==null&&n.before==null&&aN(t).size===0&&n.element.__lexicalLineBreak==null;XM(r,0,i-1,e?null:o),e&&(o.textContent=``)}}else(function(e,t,n,r,i,a){let o=r-1,s=i-1,c,l,u=a.getFirstChild(),d=0,f=0;for(;d<=o&&f<=s;){let e=t[d],r=n[f],i=PM();if(e===r)u=vN(gN(r,a.element)),d++,f++;else{if(l===void 0&&(l=yN(n,f)),c===void 0)c=yN(t,d);else if(!c.has(e)){d++,FM(i);continue}if(!l.has(e)){u=vN(xN(e)),YM(e,a.element),d++,c.delete(e),FM(i);continue}if(c.has(r)){let e=nz(OM,r);e!==u&&a.withBefore(u??a.before).insertChild(e),u=vN(gN(r,a.element)),d++,f++}else lN(r,a.withBefore(u??a.before)),f++}let o=HM.get(r);o!==null&&Z(o)?jM===null&&(jM=o.getFormat(),MM=o.getStyle(),NM=o.__key):$(o)&&f<=s&&!o.isInline()&&(AM+=Sj),FM(i)}let p=d>o,m=f>s;if(p&&!m){let t=n[s+1],r=t===void 0?null:OM.getElementByKey(t);uN(n,e,f,s,a.withBefore(r??a.before))}else m&&!p&&XM(t,d,o,a.element)})(t,r,s,i,a,n)}s.__lexicalTextContent=AM,s.__lexicalFirstTextKey=NM,AM=r+AM}(e,t,qz(t,n,OM)),pz(t)||(r=t,jM==null||jM===r.__textFormat||JM||r.setTextFormat(jM),function(e){MM==null||MM===e.__textStyle||JM||e.setTextStyle(MM)}(t))}function hN(e,t,n){let r=t.__lexicalFirstTextKey;if(r!=null){let t=e.__key,i=r;for(;i!==null;){let e=HM.get(i);if(e===void 0){i=null;break}if(e.__parent===t)break;i=e.__parent}if(i!==null&&!n.has(i)){let e=HM.get(r);if(Z(e))return jM=e.getFormat(),void(MM=e.getStyle())}}t.__lexicalFirstTextKey=NM}function gN(e,t){let n=BM.get(e),r=HM.get(e);n!==void 0&&r!==void 0||X(61);let i=qM||zM.has(e)||RM.has(e),a=nz(OM,e);if(n===r&&!i){let e;if($(n)){let t=a.__lexicalTextContent;typeof t!=`string`&&X(355,n.getType()),e=t,IM(a)}else e=n.getTextContent();return AM+=e,a}if(n!==r&&i&&ZR(GM,kM,LM,r,`updated`),KM.$updateDOM(r,n,a,OM)){let n=lN(e,null);return t===null&&X(62),t.replaceChild(n,a),YM(e,null),n}if($(n)){$(r)||X(334,e);let t=r.__indent;(qM||t!==n.__indent)&&$M(a,t);let o=r.__format;(qM||o!==n.__format)&&eN(a,o);let s=i&&(aN(r).size>0||aN(n).size>0)?cN(n,r,a):``;if(i){let e=AM;if(mN(n,r,a),r.isInline()||(mL(r)||pN(0,r,a),fN(r,a)),s!==``){let t=a.__lexicalTextContent||``;a.__lexicalTextContent=s+t,AM=e+s+t,a.__lexicalSlotTextLength=s.length}else(aN(r).size>0||aN(n).size>0)&&(a.__lexicalSlotTextLength=0)}else{let e=a.__lexicalTextContent;typeof e!=`string`&&X(356,n.getType()),AM+=e,IM(a)}if((qM||r.__dir!==n.__dir||r.__parent!==n.__parent)&&(tN(a,r),mL(r)&&!qM))for(let e of r.getChildren())$(e)&&tN(nz(OM,e.getKey()),e)}else{let t=r.getTextContent();if(fL(r)){let t=r.decorate(OM,DM);t!==null&&_N(e,t),i&&(aN(r).size>0||aN(n).size>0)&&cN(n,r,a)}AM+=t}if(!JM&&mL(r)){let e=r.getLatest();if(e.__cachedText!==AM){let t=e.getWritable();t.__cachedText=AM,r=t}}return KM.$decorateDOM(r,n,a,OM),TM(r),a}function _N(e,t){let n=OM._pendingDecorators,r=OM._decorators;if(n===null){if(r[e]===t)return;n=MR(OM)}n[e]=t}function vN(e){let t=e.nextSibling;return t!==null&&t===OM._blockCursorElement&&(t=t.nextSibling),t}function yN(e,t){let n=new Set;for(let r=t;r<e.length;r++)n.add(e[r]);return n}function bN(e,t,n,r,i,a){AM=``,jM=null,MM=null,NM=null,qM=r===2,OM=n,DM=n._config,KM=n._config.dom||$L,kM=n._nodes,LM=OM._listeners.mutation,RM=i,zM=a,BM=e._nodeMap,VM=e,HM=t._nodeMap,JM=t._readOnly,UM=qj(n._keyToDOMMap),WM=function(){let e=new Map,t=t=>{for(let n of t){let t=HM.get(n);if(t===void 0)continue;let r=t.__parent;if(r===null)continue;let i=e.get(r);i===void 0&&(i=new Set,e.set(r,i)),i.add(n)}};return t(RM.keys()),t(zM),e}();let o=new Map;return GM=o,gN(`root`,null),OM=void 0,kM=void 0,RM=void 0,zM=void 0,BM=void 0,VM=void 0,HM=void 0,DM=void 0,UM=void 0,WM=void 0,GM=void 0,KM=$L,o}function xN(e){let t=UM.get(e);return t===void 0&&X(75,e),t}function SN(e){return{type:e}}var CN=SN(`SELECTION_CHANGE_COMMAND`),wN=SN(`CLICK_COMMAND`),TN=SN(`BEFORE_INPUT_COMMAND`),EN=SN(`INPUT_COMMAND`),DN=SN(`COMPOSITION_START_COMMAND`),ON=SN(`COMPOSITION_END_COMMAND`),kN=SN(`DELETE_CHARACTER_COMMAND`),AN=SN(`INSERT_LINE_BREAK_COMMAND`),jN=SN(`INSERT_PARAGRAPH_COMMAND`),MN=SN(`CONTROLLED_TEXT_INSERTION_COMMAND`),NN=SN(`PASTE_COMMAND`),PN=SN(`REMOVE_TEXT_COMMAND`),FN=SN(`DELETE_WORD_COMMAND`),IN=SN(`DELETE_LINE_COMMAND`),LN=SN(`FORMAT_TEXT_COMMAND`),RN=SN(`UNDO_COMMAND`),zN=SN(`REDO_COMMAND`),BN=SN(`KEYDOWN_COMMAND`),VN=SN(`KEY_ARROW_RIGHT_COMMAND`),HN=SN(`MOVE_TO_END`),UN=SN(`KEY_ARROW_LEFT_COMMAND`),WN=SN(`MOVE_TO_START`),GN=SN(`KEY_ARROW_UP_COMMAND`),KN=SN(`KEY_ARROW_DOWN_COMMAND`),qN=SN(`KEY_ENTER_COMMAND`),JN=SN(`KEY_SPACE_COMMAND`),YN=SN(`KEY_BACKSPACE_COMMAND`),XN=SN(`KEY_ESCAPE_COMMAND`),ZN=SN(`KEY_DELETE_COMMAND`),QN=SN(`KEY_TAB_COMMAND`),$N=SN(`DROP_COMMAND`),eP=SN(`DRAGSTART_COMMAND`),tP=SN(`DRAGOVER_COMMAND`),nP=SN(`DRAGEND_COMMAND`),rP=SN(`COPY_COMMAND`),iP=SN(`CUT_COMMAND`),aP=SN(`SELECT_ALL_COMMAND`),oP=SN(`CLEAR_EDITOR_COMMAND`),sP=SN(`CLEAR_HISTORY_COMMAND`),cP=SN(`CAN_REDO_COMMAND`),lP=SN(`CAN_UNDO_COMMAND`),uP=SN(`FOCUS_COMMAND`),dP=SN(`BLUR_COMMAND`),fP=SN(`KEY_MODIFIER_COMMAND`),pP={[Mj]:`metaKey`,ctrlKey:!rj,metaKey:rj},mP={[Mj]:`altKey`,altKey:rj,ctrlKey:!rj},hP=[[`altKey`,1],[`ctrlKey`,2],[`metaKey`,4],[`shiftKey`,8]];function gP(e,t,n){let r=e.get(t);r?r.push(n):e.set(t,[n])}var _P=class{byKey=new Map;byCode=new Map;add(e){let{key:t,modifiers:n={}}=e;t.length>0||X(399);let r=t.toLowerCase();for(let i of function(e){let t=[0];for(let[n,r]of hP){let i=e[n]||!1;i===`any`?t=t.concat(t.map(e=>e|r)):i&&(t=t.map(e=>e|r))}return t}(n))gP(this.byKey,`${i}:${r}`,e),t.length===1&&(/[0-9]/.test(t)?gP(this.byCode,`${i}:Digit${t}`,e):/[a-z]/.test(r)&&gP(this.byCode,`${i}:Key${r.toUpperCase()}`,e));return this}matches(e){let t=e.key;if(!t)return[];let n=function(e){let t=0;for(let[n,r]of hP)e[n]&&(t|=r);return t}(e),r=this.byKey.get(`${n}:${t.toLowerCase()}`),i=r?r.slice():[];if(this.byCode.size>0&&!(t.length===1&&t.charCodeAt(0)<=127)){let t=this.byCode.get(`${n}:${e.code}`);t&&i.push(...t)}return i}match(e){return this.matches(e)[0]}};function vP(e){let t=new _P;for(let n of e)t.add(n);return t}function yP(e){let t=new Map;return{dispose(){for(let e of t.values())e.dispose();t.clear()},register(n,r){let i=t.get(n);i===void 0&&(i={dispose:e(n,r),holders:new Set},t.set(n,i));let a=()=>{let e=t.get(n);e&&e.holders.delete(a)&&e.holders.size===0&&(t.delete(n),e.dispose())};return i.holders.add(a),a}}}function bP(e,t,n,r){return e.addEventListener(t,n,r),e.removeEventListener.bind(e,t,n,r)}var xP=Object.freeze({}),SP=[[`keydown`,function(e,t){let n=t._inputState;n.lastKeyDownTimeStamp=e.timeStamp,n.lastKeyCode=e.key,e.key!==`Backspace`&&NP(n),!t.isComposing()&&tz(t,BN,e)}],[`pointerdown`,function(e,t){let n=Iz(e),r=e.pointerType;Rz(n)&&r!==`touch`&&r!==`pen`&&e.button===0&&sL(t,()=>{sB(n,t)||(t._inputState.isSelectionChangeFromMouseDown=!0)})}],[`compositionstart`,function(e,t){tz(t,DN,e)}],[`compositionend`,function(e,t){let n=t._inputState;ij?n.compositionPhase=`ending-firefox`:oj||!cj&&!dj?tz(t,ON,e):(n.compositionPhase=`ending-safari`,n.compositionEndData=e.data)}],[`input`,function(e,t){e.stopPropagation();let n=t._inputState;NP(n),sL(t,()=>{FP(e,t)||t.dispatchCommand(EN,e)},{event:e}),n.unprocessedBeforeInputData=null}],[`click`,function(e,t){sL(t,()=>{let n=hI(),r=bz(lz(t)),i=gI();if(r){if(Q(n)){let e=n.anchor,t=e.getNode();e.type===`element`&&e.offset===0&&n.isCollapsed()&&!mL(t)&&PR().getChildrenSize()===1&&t.getTopLevelElementOrThrow().isEmpty()&&i!==null&&n.is(i)&&(r.removeAllRanges(),n.dirty=!0)}else if(e.pointerType===`touch`||e.pointerType===`pen`){let n=Az(r,t._rootElement).anchorNode;(Lz(n)||vR(n))&&IR(mI(i,r,t,e))}}if(ij&&r!==null&&r.rangeCount===0){let n=t._rootElement;if(n!==null&&e.target===n){let a=e.clientY,o=n.childNodes.length;for(let e=0;e<n.childNodes.length;e++){let t=n.childNodes[e];if(Lz(t)){let n=t.getBoundingClientRect();if(a<=(n.top+n.bottom)/2){o=e;break}}}r.setBaseAndExtent(n,o,n,o);let s=mI(i,r,t,e);s===null?r.removeAllRanges():IR(s)}}tz(t,wN,e)})}],[`cut`,xP],[`copy`,xP],[`dragstart`,xP],[`dragover`,xP],[`dragend`,xP],[`paste`,xP],[`focus`,xP],[`blur`,xP],[`drop`,xP]];aj&&SP.push([`beforeinput`,(e,t)=>function(e,t){let n=e.inputType;n===`deleteCompositionText`||ij&&ez(t)||n!==`insertCompositionText`&&sL(t,()=>{FP(e,t)||tz(t,TN,e)},{event:e})}(e,t)]);var CP=new WeakMap,wP=new WeakMap,TP=yP(e=>(e.addEventListener(`selectionchange`,XP),()=>e.removeEventListener(`selectionchange`,XP)));function EP(e,t,n,r,i,a){let o=e.anchor,s=e.focus,c=o.getNode(),l=KI(),u;if(a!==void 0)u=a;else{let e=bz(lz(l));u=e===null?null:Az(e,l._rootElement)}let d=u===null?null:u.anchorNode,f=o.key,p=l.getElementByKey(f),m=n.length;return f!==s.key||!Z(c)||(!i&&(!aj||l._inputState.lastBeforeInputInsertTextTimeStamp<r+50)||c.isDirty()&&m<2||zR(n))&&o.offset!==s.offset&&!c.isComposing()||_R(c)||c.isDirty()&&m>1||(i||!aj)&&p!==null&&!c.isComposing()&&d!==Yz(c,p,l)||u!==null&&t!==null&&(!t.collapsed||t.startContainer!==u.anchorNode||t.startOffset!==u.anchorOffset)||!c.isComposing()&&(c.getFormat()!==e.format||c.getStyle()!==e.style)||function(e,t){if(t.isSegmented())return!0;if(!e.isCollapsed())return!1;let n=e.anchor.offset,r=t.getParentOrThrow(),i=gR(t);return n===0?!t.canInsertTextBefore()||!r.canInsertTextBefore()&&!t.isComposing()||i||function(e){let t=e.getPreviousSibling();return(Z(t)||$(t)&&t.isInline())&&!t.canInsertTextAfter()}(t):n===t.getTextContentSize()&&(!t.canInsertTextAfter()||!r.canInsertTextAfter()&&!t.isComposing()||i)}(e,c)}function DP(e,t){return vR(e)&&e.nodeValue!==null&&t!==0&&t!==e.nodeValue.length}function OP(e,t,n){let{anchorNode:r,anchorOffset:i,focusNode:a,focusOffset:o}=Az(e,t._rootElement),s=t._inputState;if(s.isSelectionChangeFromDOMUpdate){s.isSelectionChangeFromDOMUpdate=!1;let e=s.selectionChangeFromDOMUpdatePoints;if(s.selectionChangeFromDOMUpdatePoints=null,DP(r,i)&&DP(a,o)&&!s.postDeleteSelectionToRestore&&(e===null||e.anchorNode===r&&e.anchorOffset===i&&e.focusNode===a&&e.focusOffset===o))return}sL(t,()=>{if(!n)return void IR(null);if(!fR(t,r,a))return;let c=hI();if(s.postDeleteSelectionToRestore&&Q(c)&&c.isCollapsed()){let e=c.anchor,t=s.postDeleteSelectionToRestore.anchor;(e.key===t.key&&e.offset===t.offset+1||e.offset===1&&t.getNode().is(e.getNode().getPreviousSibling()))&&(c=s.postDeleteSelectionToRestore.clone(),IR(c))}if(s.postDeleteSelectionToRestore=null,Q(c)){let n=c.anchor,l=n.getNode();if(c.isCollapsed()){e.type===`Range`&&r===a&&(c.dirty=!0);let i=lz(t).event,o=i?i.timeStamp:performance.now(),{format:u,style:d,offset:f,key:p,timeStamp:m}=s.collapsedSelectionFormat,h=PR(),g=!1===t.isComposing()&&h.getTextContent()===``;if(o<m+200&&n.offset===f&&n.key===p)kP(c,u,d);else if(n.type===`text`)Z(l)||X(141),AP(c,l);else if(n.type===`element`&&!g){$(l)||X(259);let e=n.getNode();e.isEmpty()?function(e,t){kP(e,t.getTextFormat(),t.getTextStyle())}(c,e):kP(c,c.format,``)}}else{let e=n.key,t=c.focus.key,r=c.getNodes(),a=r.length,s=c.isBackward(),l=s?o:i,u=s?i:o,d=s?t:e,f=s?e:t,p=2047,m=!1;for(let e=0;e<a;e++){let t=r[e],n=t.getTextContentSize();if(Z(t)&&n!==0&&!(e===0&&t.__key===d&&l===n||e===a-1&&t.__key===f&&u===0)&&(m=!0,p&=t.getFormat(),p===0))break}c.format=m?p:0}}tz(t,CN)})}function kP(e,t,n){e.format===t&&e.style===n||(e.format=t,e.style=n,e.dirty=!0)}function AP(e,t){kP(e,t.getFormat(),t.getStyle())}function jP(e){if(!e.getTargetRanges)return null;let t=e.getTargetRanges();return t.length===0?null:t[0]}function MP(e){let{lastKeyCode:t}=KI()._inputState;if(e==null||e.length<=1||t==null)return;let n=t.length===1?t:t===`Enter`?`
184
184
  `:t===`Tab`?` `:null;if(!n)return;let r=hI();if(!Q(r)||!r.isCollapsed())return;let i=r.anchor.getNode();if(!Z(i))return;let{offset:a}=r.anchor;if(i.getTextContentSize()===a){let e=i.getNextSibling();if(n===`
@@ -193,9 +193,9 @@ XID_Start XIDS`.split(/\s/).map(e=>[Mb(e),e])),Ex=new Map([[`s`,ux(383)],[ux(383
193
193
  `)}function DG(e){let t=[];if(t.push(`### Change Request #${e.number}: ${e.title}`),t.push(`URL: ${e.url}`),t.push(`State: ${e.state}`),t.push(`Base: ${e.baseRefName}`),t.push(`Head: ${e.headRefName}`),t.push(``),t.push(e.body),e.comments.length>0){t.push(``),t.push(`Recent comments:`);for(let n of e.comments)t.push(TG(n))}return e.truncated&&(t.push(``),t.push(`> Note: this context was truncated by the server.`)),t.join(`
194
194
  `)}function OG(e){return e.length===0?``:`## Attached source-control context\n\n${e.map(e=>e.kind===`issue`?EG(e.detail):DG(e.detail)).join(`
195
195
 
196
- `)}`}function kG(e,t){let n=(0,J.c)(4),[r,i]=(0,q.useState)(e),a,o;return n[0]!==t||n[1]!==e?(a=()=>{if(e){i(!0);return}if(t<=0){i(!1);return}let n=window.setTimeout(()=>i(!1),t);return()=>window.clearTimeout(n)},o=[t,e],n[0]=t,n[1]=e,n[2]=a,n[3]=o):(a=n[2],o=n[3]),(0,q.useEffect)(a,o),r}function AG(e){let t=(0,J.c)(20),{environmentId:n,cwd:r,query:i}=e,a=cr({environmentId:n,cwd:r,query:i}),o,s;t[0]!==r||t[1]!==n||t[2]!==i?(o=()=>On({environmentId:n,cwd:r,query:i}),s=[n,r,i],t[0]=r,t[1]=n,t[2]=i,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s);let c=kn(Wt(a)),l;t[5]===c.pages?l=t[6]:(l=Nn(c.pages),t[5]=c.pages,t[6]=l);let u=l,d=c.pages[c.pages.length-1],f=d?d.nextCursor!==null:!1,p=c.pages[0]?.totalCount??0,m;t[7]===a?m=t[8]:(m=()=>xr(a),t[7]=a,t[8]=m);let h=m,g;t[9]===a?g=t[10]:(g=()=>mr(a),t[9]=a,t[10]=g);let _=g,v;return t[11]!==h||t[12]!==f||t[13]!==_||t[14]!==u||t[15]!==c.error||t[16]!==c.isFetchingNextPage||t[17]!==c.isPending||t[18]!==p?(v={refs:u,totalCount:p,hasNextPage:f,isFetchingNextPage:c.isFetchingNextPage,isPending:c.isPending,error:c.error,fetchNextPage:h,refresh:_},t[11]=h,t[12]=f,t[13]=_,t[14]=u,t[15]=c.error,t[16]=c.isFetchingNextPage,t[17]=c.isPending,t[18]=p,t[19]=v):v=t[19],v}function jG(e){let t=(0,J.c)(5),{environmentId:n,cwd:r,reference:i}=e,a=Wn({environmentId:n,cwd:r,reference:i}),o,s;return t[0]!==r||t[1]!==n||t[2]!==i?(o=()=>wn({environmentId:n,cwd:r,reference:i}),s=[n,r,i],t[0]=r,t[1]=n,t[2]=i,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s),kn(tn(a))}function MG(e){let t=(0,J.c)(5),{environmentId:n,cwd:r,reference:i}=e,a,o;if(t[0]!==r||t[1]!==n||t[2]!==i){let e=Wn({environmentId:n,cwd:r,reference:i});a=kn,o=tn(e),t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=o}else a=t[3],o=t[4];return a(o).data}function NG(e){let[t,n]=(0,q.useState)(!1),[r,i]=(0,q.useState)(null),a=(0,q.useRef)(e);a.current=e;let o=(0,q.useRef)(!0);(0,q.useEffect)(()=>(o.current=!0,()=>{o.current=!1}),[]);let s=(0,q.useCallback)(async e=>{let t=a.current,r=t.trackingKey??null,s=t.invalidateOn??`success`,c=t.invalidates??[];n(!0),i(null),r!==null&&Fr(r);try{let r=await t.mutationFn(e);return c.length>0&&cn(c),o.current&&n(!1),r}catch(e){let t=e instanceof Error?e:Error(`Mutation failed.`);throw s===`settled`&&c.length>0&&cn(c),o.current&&(n(!1),i(t)),t}finally{r!==null&&tr(r)}},[]);return{mutate:(0,q.useCallback)(e=>{s(e).catch(()=>void 0)},[s]),mutateAsync:s,isPending:t,error:r,reset:(0,q.useCallback)(()=>{n(!1),i(null)},[])}}function PG(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=Or(e),t[0]=e,t[1]=n),kn(n)>0}function FG(e,t,n){return`git-mutation:${e}:${t??``}:${n??``}`}var IG=/^https:\/\/github\.com\/[^/\s]+\/[^/\s]+\/pull\/(\d+)(?:[/?#].*)?$/i,LG=/^https:\/\/[^/\s]*gitlab[^/\s]*\/.+\/-\/merge_requests\/(\d+)(?:[/?#].*)?$/i,RG=/^https:\/\/[^/\s]+\/[^/\s]+\/[^/\s]+\/pulls\/(\d+)(?:[/?#].*)?$/i,zG=/^https:\/\/(?:dev\.azure\.com\/[^/\s]+\/[^/\s]+|[^/\s]+\.visualstudio\.com\/[^/\s]+)\/_git\/[^/\s]+\/pullrequest\/(\d+)(?:[/?#].*)?$/i,BG=/^#?(\d+)$/,VG=/^gh\s+pr\s+checkout\s+(.+)$/i,HG=/^glab\s+mr\s+checkout\s+(.+)$/i,UG=/^az\s+repos\s+pr\s+checkout\s+(.+)$/i;function WG(e){let t=e.trim().split(/\s+/).filter(Boolean);for(let[e,n]of t.entries()){if(n===`--id`||n===`-i`)return t[e+1]??null;if(n.startsWith(`--id=`))return n.slice(5)||null}return t.find(e=>!e.startsWith(`-`))??null}function GG(e){let t=e.trim();if(t.length===0)return null;let n=VG.exec(t),r=HG.exec(t),i=UG.exec(t),a=n?.[1]?.trim()??r?.[1]?.trim()??(i?.[1]?WG(i[1]):null)??t;if(a.length===0)return null;if((IG.exec(a)??LG.exec(a)??RG.exec(a)??zG.exec(a))?.[1])return a;let o=BG.exec(a);return o?.[1]?o[1]:null}function KG(e){return e instanceof Error?e.message:`An error occurred.`}function qG(e){let{activeWorktreePath:t,effectiveEnvMode:n,resolvedActiveBranch:r}=e;return r?n===`worktree`&&!t&&!e.omitBasePrefix?`From ${r}`:r:`Select ref`}function JG({className:e,appearance:t=`default`,environmentId:n,threadId:r,draftId:i,envLocked:a,activeThreadBranchOverride:s,onActiveThreadBranchOverrideChange:c,onCheckoutPullRequestRequest:l,onComposerFocusRequest:u,omitBasePrefix:d=!1}){let f=(0,q.useMemo)(()=>_(n,r),[n,r]),p=(0,q.useMemo)(()=>Jt(f),[f]),h=me(p),g=h?.session??null,v=me(e=>e.setThreadBranch),y=Rr(e=>i?e.getDraftSession(i):e.getDraftThreadByRef(f)),b=Rr(e=>e.setDraftThreadContext),x=h?o(h.environmentId,h.projectId):y?o(y.environmentId,y.projectId):null,S=(0,q.useMemo)(()=>Gr(x),[x]),C=me(S),w=h?.id??(y?r:void 0),T=s===void 0?h?.branch??y?.branch??null:s,E=h?.worktreePath??y?.worktreePath??null,D=C?.cwd??null,O=E??D,k=h!==void 0,A=Cc({activeWorktreePath:E,hasServerThread:k,draftThreadEnvMode:y?.envMode}),j=(0,q.useCallback)((e,t)=>{if(!w||!C)return;let r=Dr(n);if(g&&t!==E&&r&&r.orchestration.dispatchCommand({type:`thread.session.stop`,commandId:yr(),threadId:w,createdAt:new Date().toISOString()}).catch(()=>void 0),r&&k){let n=new Date().toISOString();r.orchestration.dispatchCommand({type:`thread.meta.update`,commandId:yr(),threadId:w,branch:e,worktreePath:t}),e&&h.worktreeId&&r.orchestration.dispatchCommand({type:`worktree.meta.update`,commandId:yr(),worktreeId:I.make(h.worktreeId),branch:e,changedAt:n})}if(k){c?.(e),v(f,e,t);return}let a=Oc({nextWorktreePath:t,currentWorktreePath:E,effectiveEnvMode:A});b(i??f,{branch:e,worktreePath:t,envMode:a,projectRef:o(n,C.id)})},[w,C,g,h,E,k,c,v,b,i,f,n,A]),[M,N]=(0,q.useState)(!1),[P,F]=(0,q.useState)(``),L=(0,q.useDeferredValue)(P),R=We({environmentId:n,cwd:O}),z=P.trim(),ee=L.trim();(0,q.useEffect)(()=>{O&&vn({environmentId:n,cwd:O,query:``})},[O,n]);let{refs:te,totalCount:B,fetchNextPage:ne,hasNextPage:re,isFetchingNextPage:ie,isPending:V}=AG({environmentId:n,cwd:O,query:ee}),ae=R.data?.refName??te.find(e=>e.current)?.name??null,H=(0,q.useMemo)(()=>no(R.data?.sourceControlProvider),[R.data?.sourceControlProvider]),U=H.Icon,oe=R.data?.sourceControlProvider?.kind??null,se=oe!==null&&oe!==`unknown`,ce=se?U:Hi,le=(0,q.useMemo)(()=>Ic(C?.repositoryIdentity),[C?.repositoryIdentity]),ue=(0,q.useCallback)(()=>{if(!le)return;let e=Cn();e&&e.shell.openExternal(le).catch(()=>void 0)},[le]),de=Pc({envMode:A,activeWorktreePath:E,activeThreadBranch:T,currentGitBranch:ae}),fe=(0,q.useMemo)(()=>te.map(e=>e.name),[te]),pe=(0,q.useMemo)(()=>new Map(te.map(e=>[e.name,e])),[te]),he=ee.toLowerCase(),ge=GG(z),_e=A===`worktree`&&!a&&!E,ve=ge&&l?`__checkout_pull_request__:${ge}`:null,ye=!_e&&z.length>0,be=pe.has(z),xe=ye?`__create_new_branch__:${z}`:null,Se=Ji({environmentId:_e?n:null,cwd:_e?O:null,state:`open`,limit:50}),Ce=(0,q.useMemo)(()=>{let e=new Map;if(!_e)return e;for(let t of Se.data??[])pe.has(t.headRefName)||e.set(`__pull_request_base__:${t.number}`,t);return e},[pe,_e,Se.data]),we=(0,q.useMemo)(()=>{let e=[...fe];return xe&&!be&&e.push(xe),e.push(...Ce.keys()),ve&&e.unshift(ve),e},[fe,ve,xe,be,Ce]),Te=(0,q.useMemo)(()=>new Map(Array.from(Ce,([e,t])=>[e,`#${t.number} ${t.title} ${t.headRefName}`])),[Ce]),Ee=(0,q.useMemo)(()=>he.length===0?we:we.filter(e=>Fc({itemValue:e,normalizedQuery:he,createBranchItemValue:xe,checkoutPullRequestItemValue:ve,searchTextByItemValue:Te})),[we,ve,xe,he,Te]),[De,Oe]=(0,q.useOptimistic)(de,(e,t)=>t),[ke,Ae]=(0,q.useTransition)(),je=Ee.length>40,Me=V?`Loading refs...`:ie?`Loading more refs...`:re?`Showing ${te.length} of ${B} refs`:null,Ne=e=>{Ae(async()=>{await e().catch(()=>void 0),cn([Vr(O)])})},Pe=e=>{let t=Dr(n);if(!t||!O||!D||ke)return;if(_e){j(e.name,null),N(!1),u?.();return}let r=jc({activeProjectCwd:D,activeWorktreePath:E,refName:e});if(r.reuseExistingWorktree){j(e.name,r.nextWorktreePath),N(!1),u?.();return}let i=e.isRemote?m(e.name):e.name;N(!1),u?.(),Ne(async()=>{let n=De;Oe(i);try{let n=await t.vcs.switchRef({cwd:r.checkoutCwd,refName:e.name}),a=e.isRemote?n.refName??i:i;Oe(a),j(a,r.nextWorktreePath)}catch(e){Oe(n),Ve.add(fc({type:`error`,title:`Failed to switch ref.`,description:KG(e)}))}})},Fe=e=>{let t=e.trim(),r=Dr(n);r&&O&&t&&!ke&&(N(!1),u?.(),Ne(async()=>{let e=De;Oe(t);try{let e=await r.vcs.createRef({cwd:O,refName:t,switchRef:!0});Oe(e.refName),j(e.refName,E)}catch(t){Oe(e),Ve.add(fc({type:`error`,title:`Failed to create and switch ref.`,description:KG(t)}))}}))};(0,q.useEffect)(()=>{A!==`worktree`||E||T||!ae||j(ae,null)},[T,E,ae,A,j]);let Ie=(0,q.useCallback)(e=>{if(N(e),!e){F(``);return}cn([Vr(O)])},[O]),Le=(0,q.useRef)(null),Re=(0,q.useCallback)(()=>{if(!M||!re||ie)return;let e=Le.current;e&&(e.scrollHeight-e.scrollTop-e.clientHeight>96||ne())},[ne,re,M,ie]),ze=(0,q.useRef)(null),Be=(0,q.useCallback)(e=>{Le.current=e?.parentElement??null},[]);(0,q.useEffect)(()=>{M&&(je?ze.current?.scrollToOffset?.({offset:0,animated:!1}):Le.current?.scrollTo({top:0}))},[ee,M,je]),(0,q.useEffect)(()=>{let e=Le.current;if(!e||!M)return;let t=()=>{Re()};return e.addEventListener(`scroll`,t,{passive:!0}),t(),()=>{e.removeEventListener(`scroll`,t)}},[M,Re]),(0,q.useEffect)(()=>{je||Re()},[te.length,Re,je]);let He=qG({activeWorktreePath:E,effectiveEnvMode:A,resolvedActiveBranch:De,omitBasePrefix:d});function Ue(e,t){if(ve&&e===ve)return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>{ge&&l&&(N(!1),F(``),u?.(),l(ge))},children:(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1`,children:[(0,Y.jsx)(U,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-col items-start`,children:[(0,Y.jsxs)(`span`,{className:`truncate font-medium`,children:[`Checkout `,H.terminology.singular]}),(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground text-xs`,children:ge})]})]})},e);if(xe&&e===xe)return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>Fe(z),children:(0,Y.jsxs)(`span`,{className:`truncate`,children:[`Create new ref "`,z,`"`]})},e);let n=Ce.get(e);if(n)return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>{j(n.headRefName,null),N(!1),F(``),u?.()},children:(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1`,children:[(0,Y.jsx)(U,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-col items-start`,children:[(0,Y.jsxs)(`span`,{className:`truncate`,children:[`#`,n.number,` `,n.title]}),(0,Y.jsx)(`span`,{className:`truncate font-mono text-muted-foreground text-[10px]`,children:n.headRefName})]})]})},e);let r=pe.get(e);if(!r)return null;let i=r.worktreePath&&D&&r.worktreePath!==D,a=r.current?`current`:i?`worktree`:r.isRemote?`remote`:r.isDefault?`default`:null;return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>Pe(r),children:(0,Y.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-2`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:e}),a&&(0,Y.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/45`,children:a})]})},e)}return(0,Y.jsxs)(Ss,{items:we,filteredItems:Ee,autoHighlight:!0,virtualized:je,onItemHighlighted:(e,t)=>{!M||t.index<0||t.reason!==`keyboard`||ze.current?.scrollIndexIntoView?.({index:t.index,animated:!1})},onOpenChange:Ie,open:M,value:De,children:[t===`pill`||t===`panelRow`?(0,Y.jsxs)(`div`,{"data-appearance":t,className:G(`min-w-0 items-center overflow-hidden`,t===`pill`?`inline-flex h-[30px] rounded-[9px] border border-input bg-popover shadow-xs`:`flex h-9 w-full bg-transparent`,e),children:[le?(0,Y.jsx)(`button`,{type:`button`,onClick:ue,title:se?`Open on ${H.providerName}`:`Open repository remote`,"aria-label":`Open repository remote`,className:G(`grid h-full shrink-0 place-items-center text-foreground/80 transition-colors hover:bg-accent`,t===`pill`?`pr-1 pl-2.5`:`w-[37px]`),children:t===`pill`?(0,Y.jsx)(ce,{className:`size-3.5`}):(0,Y.jsx)(`span`,{className:`grid size-5 place-items-center rounded-md bg-secondary text-muted-foreground [&_svg]:size-3`,children:(0,Y.jsx)(ce,{})})}):(0,Y.jsx)(`span`,{className:G(`grid h-full shrink-0 place-items-center text-foreground/80`,t===`pill`?`pr-1 pl-2.5`:`w-[37px]`),children:t===`pill`?(0,Y.jsx)(ce,{className:`size-3.5`}):(0,Y.jsx)(`span`,{className:`grid size-5 place-items-center rounded-md bg-secondary text-muted-foreground [&_svg]:size-3`,children:(0,Y.jsx)(ce,{})})}),(0,Y.jsxs)(ps,{render:(0,Y.jsx)(W,{variant:`ghost`,size:`sm`}),className:G(`h-full min-w-0 gap-1.5 rounded-none border-0 bg-transparent text-foreground shadow-none before:shadow-none`,t===`pill`?`pr-2.5 pl-1 text-[13px] font-medium`:`flex-1 justify-start pr-2.5 pl-0 text-[11.5px] font-semibold hover:bg-accent`),disabled:V&&te.length===0||ke,children:[(0,Y.jsx)(`span`,{className:G(`min-w-0 truncate font-mono`,t===`pill`?`max-w-[170px]`:`flex-1 text-left`),children:He}),De===ae&&((R.data?.aheadCount??0)>0||(R.data?.behindCount??0)>0)?(0,Y.jsxs)(`span`,{className:G(`flex shrink-0 items-center gap-1 font-mono font-semibold text-muted-foreground tabular-nums`,t===`pill`?`text-[11px]`:`text-[10px]`),children:[(R.data?.aheadCount??0)>0?(0,Y.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,Y.jsx)(gi,{className:`size-[11px]`}),R.data?.aheadCount]}):null,(R.data?.behindCount??0)>0?(0,Y.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,Y.jsx)(xi,{className:`size-[11px]`}),R.data?.behindCount]}):null]}):null,(0,Y.jsx)(fr,{className:G(`shrink-0 text-muted-foreground`,t===`pill`?`size-3.5`:`size-3`)})]})]}):(0,Y.jsxs)(ps,{render:(0,Y.jsx)(W,{variant:`ghost`,size:`xs`}),className:G(`min-w-0 text-muted-foreground/70 hover:text-foreground/80`,e),disabled:V&&te.length===0||ke,children:[(0,Y.jsx)(`span`,{className:`min-w-0 max-w-[240px] truncate`,children:He}),(0,Y.jsx)(fr,{className:`shrink-0`})]}),(0,Y.jsxs)(bs,{align:`end`,side:`top`,className:`w-80 data-ending-style:translate-y-1 data-starting-style:translate-y-1`,children:[(0,Y.jsx)(`div`,{className:`border-b p-1`,children:(0,Y.jsx)(gs,{className:`[&_input]:font-sans rounded-md`,inputClassName:`ring-0`,placeholder:`Search refs...`,showTrigger:!1,size:`sm`,value:P,onChange:e=>F(e.target.value)})}),(0,Y.jsx)(Ds,{children:`No refs found.`}),je?(0,Y.jsx)(Cs,{children:(0,Y.jsx)(js,{ref:ze,data:Ee,keyExtractor:e=>e,renderItem:({item:e,index:t})=>Ue(e,t),estimatedItemSize:28,drawDistance:336,onEndReached:()=>{re&&!ie&&ne()},style:{maxHeight:`14rem`}})}):(0,Y.jsx)(Ts,{ref:Be,className:`max-h-56`,children:Ee.map((e,t)=>Ue(e,t))}),Me?(0,Y.jsx)(ys,{children:Me}):null]})]})}var YG=(0,q.memo)(function(e){let t=(0,J.c)(28),{envLocked:n,environmentId:r,availableEnvironments:i,onEnvironmentChange:a}=e,o;t[0]!==i||t[1]!==r?(o=i.find(e=>e.environmentId===r)??null,t[0]=i,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===i?c=t[4]:(c=i.map(XG),t[3]=i,t[4]=c);let l=c;if(n){let e;t[5]===s?.isPrimary?e=t[6]:(e=s?.isPrimary?(0,Y.jsx)(aa,{className:`size-3`}):(0,Y.jsx)(si,{className:`size-3`}),t[5]=s?.isPrimary,t[6]=e);let n=s?.label??`Run on`,r;return t[7]!==e||t[8]!==n?(r=(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-transparent px-[calc(--spacing(3)-1px)] text-sm font-medium text-muted-foreground/70 sm:text-xs`,children:[e,n]}),t[7]=e,t[8]=n,t[9]=r):r=t[9],r}let u;t[10]===a?u=t[11]:(u=e=>a(e),t[10]=a,t[11]=u);let d;t[12]===s?.isPrimary?d=t[13]:(d=s?.isPrimary?(0,Y.jsx)(aa,{className:`size-3`}):(0,Y.jsx)(si,{className:`size-3`}),t[12]=s?.isPrimary,t[13]=d);let f;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(Eo,{}),t[14]=f):f=t[14];let p;t[15]===d?p=t[16]:(p=(0,Y.jsxs)(jo,{variant:`ghost`,size:`xs`,className:`font-medium`,"aria-label":`Run on`,children:[d,f]}),t[15]=d,t[16]=p);let m;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(Do,{children:`Run on`}),t[17]=m):m=t[17];let h;t[18]===i?h=t[19]:(h=i.map(ZG),t[18]=i,t[19]=h);let g;t[20]===h?g=t[21]:(g=(0,Y.jsx)(ko,{children:(0,Y.jsxs)(Ao,{children:[m,h]})}),t[20]=h,t[21]=g);let _;return t[22]!==r||t[23]!==l||t[24]!==u||t[25]!==p||t[26]!==g?(_=(0,Y.jsxs)(Oo,{modal:!1,value:r,onValueChange:u,items:l,children:[p,g]}),t[22]=r,t[23]=l,t[24]=u,t[25]=p,t[26]=g,t[27]=_):_=t[27],_});function XG(e){return{value:e.environmentId,label:e.label}}function ZG(e){return(0,Y.jsx)(To,{value:e.environmentId,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[e.isPrimary?(0,Y.jsx)(aa,{className:`size-3`}):(0,Y.jsx)(si,{className:`size-3`}),e.label]})},e.environmentId)}var QG=[{value:`local`,label:`Local`},{value:`worktree`,label:`New worktree`}],$G=(0,q.memo)(function(e){let t=(0,J.c)(12),{value:n,onChange:r}=e,i;t[0]===r?i=t[1]:(i=e=>r(e),t[0]=r,t[1]=i);let a;t[2]===n?a=t[3]:(a=n===`worktree`?(0,Y.jsx)(Bu,{className:`size-3`}):(0,Y.jsx)(aa,{className:`size-3`}),t[2]=n,t[3]=a);let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(Eo,{}),t[4]=o):o=t[4];let s;t[5]===a?s=t[6]:(s=(0,Y.jsxs)(jo,{variant:`ghost`,size:`xs`,className:`font-medium`,"aria-label":`Run in`,children:[a,o]}),t[5]=a,t[6]=s);let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(ko,{children:(0,Y.jsxs)(Ao,{children:[(0,Y.jsx)(Do,{children:`Run in`}),QG.map(eK)]})}),t[7]=c):c=t[7];let l;return t[8]!==i||t[9]!==s||t[10]!==n?(l=(0,Y.jsxs)(Oo,{modal:!1,value:n,onValueChange:i,items:QG,children:[s,c]}),t[8]=i,t[9]=s,t[10]=n,t[11]=l):l=t[11],l});function eK(e){return(0,Y.jsx)(To,{value:e.value,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[e.value===`worktree`?(0,Y.jsx)(Bu,{className:`size-3`}):(0,Y.jsx)(aa,{className:`size-3`}),e.label]})},e.value)}function tK(e,t){return`${e}\u0000${t}`}function nK(e){let t=(0,J.c)(70),{activeProjectId:n,activeProjectEnvironmentId:r,appearance:i,draftId:a,label:s,className:c}=e,l=Rr(sK),u=St(oK),d=me(Uc(aK)),[f,p]=(0,q.useState)(!1),[m,h]=(0,q.useState)(``),g=(0,q.useRef)(null),_;t[0]===d?_=t[1]:(_=d.map(iK),t[0]=d,t[1]=_);let v=_,y;t[2]===d?y=t[3]:(y=new Map(d.map(rK)),t[2]=d,t[3]=y);let b=y,x;t[4]===m?x=t[5]:(x=m.trim().toLowerCase(),t[4]=m,t[5]=x);let S=x,C;bb0:{if(S.length===0){C=v;break bb0}let e;if(t[6]!==v||t[7]!==S||t[8]!==b){let n;t[10]!==S||t[11]!==b?(n=e=>{let t=b.get(e);return t?t.name.toLowerCase().includes(S)||t.cwd.toLowerCase().includes(S):!1},t[10]=S,t[11]=b,t[12]=n):n=t[12],e=v.filter(n),t[6]=v,t[7]=S,t[8]=b,t[9]=e}else e=t[9];C=e}let w=C,T;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(T=e=>{p(e),e||h(``)},t[13]=T):T=t[13];let E=T,D;t[14]!==r||t[15]!==n||t[16]!==a||t[17]!==l||t[18]!==b||t[19]!==u?(D=e=>{let t=b.get(e);p(!1),h(``),!(!t||t.id===n&&t.environmentId===r)&&l(a,{projectRef:o(t.environmentId,t.id),logicalProjectKey:Yr(t,u)})},t[14]=r,t[15]=n,t[16]=a,t[17]=l,t[18]=b,t[19]=u,t[20]=D):D=t[20];let O=D,k;t[21]!==r||t[22]!==n?(k=tK(r,n),t[21]=r,t[22]=n,t[23]=k):k=t[23];let A=k,j;t[24]!==A||t[25]!==b?(j=b.get(A)??null,t[24]=A,t[25]=b,t[26]=j):j=t[26];let M=j,N=`Switch project (currently ${s})`,P=i===`headline`&&`rounded-sm text-foreground underline decoration-foreground decoration-dotted decoration-2 underline-offset-[7px] transition-colors hover:text-foreground/55 hover:decoration-foreground/40 focus-visible:ring-offset-2 focus-visible:ring-offset-background`,F=i===`sentence`&&`inline-flex min-w-0 items-center gap-1.5 rounded-md px-1 py-0.5 font-medium text-foreground/85 transition-colors hover:bg-accent hover:text-foreground`,I=i===`chip`&&`inline-flex min-w-0 items-center gap-1.5 rounded-md px-2 py-1 font-medium text-muted-foreground/70 text-xs transition-colors hover:bg-accent hover:text-foreground/80`,L;t[27]!==c||t[28]!==P||t[29]!==F||t[30]!==I?(L=G(`cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,P,F,I,c),t[27]=c,t[28]=P,t[29]=F,t[30]=I,t[31]=L):L=t[31];let R;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,Y.jsx)(`button`,{type:`button`}),t[32]=R):R=t[32];let z;t[33]!==M||t[34]!==i?(z=i!==`headline`&&M?(0,Y.jsx)(ma,{environmentId:M.environmentId,cwd:M.cwd,projectId:M.id,customAvatarContentHash:M.customAvatarContentHash??null,className:`size-3.5 shrink-0`}):null,t[33]=M,t[34]=i,t[35]=z):z=t[35];let ee=i===`headline`?void 0:`min-w-0 truncate`,te;t[36]!==s||t[37]!==ee?(te=(0,Y.jsx)(`span`,{className:ee,children:s}),t[36]=s,t[37]=ee,t[38]=te):te=t[38];let B;t[39]!==L||t[40]!==z||t[41]!==te||t[42]!==N?(B=(0,Y.jsxs)(ps,{ref:g,"aria-label":N,className:L,render:R,children:[z,te]}),t[39]=L,t[40]=z,t[41]=te,t[42]=N,t[43]=B):B=t[43];let ne=i===`chip`?`top`:`bottom`,re;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>h(e.target.value),t[44]=re):re=t[44];let ie;t[45]===m?ie=t[46]:(ie=(0,Y.jsx)(`div`,{className:`border-b p-1`,children:(0,Y.jsx)(gs,{className:`[&_input]:font-sans rounded-md`,inputClassName:`ring-0`,placeholder:`Search projects...`,showTrigger:!1,size:`sm`,value:m,onChange:re})}),t[45]=m,t[46]=ie);let V;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,Y.jsx)(Ds,{children:`No projects found.`}),t[47]=V):V=t[47];let ae;if(t[48]!==A||t[49]!==w||t[50]!==b||t[51]!==O){let e;t[53]!==A||t[54]!==b||t[55]!==O?(e=(e,t)=>{let n=b.get(e);return n?(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>O(e),children:(0,Y.jsxs)(`div`,{className:`flex w-full min-w-0 items-center gap-2 py-0.5 text-left`,children:[(0,Y.jsx)(ma,{environmentId:n.environmentId,cwd:n.cwd,projectId:n.id,customAvatarContentHash:n.customAvatarContentHash??null,className:`size-4 shrink-0`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:G(`truncate text-sm`,e===A&&`font-medium text-foreground`),children:n.name}),(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground text-xs`,children:n.cwd})]})]})},e):null},t[53]=A,t[54]=b,t[55]=O,t[56]=e):e=t[56],ae=w.map(e),t[48]=A,t[49]=w,t[50]=b,t[51]=O,t[52]=ae}else ae=t[52];let H;t[57]===ae?H=t[58]:(H=(0,Y.jsx)(Ts,{className:`max-h-64`,children:ae}),t[57]=ae,t[58]=H);let U;t[59]!==ne||t[60]!==ie||t[61]!==H?(U=(0,Y.jsxs)(bs,{anchor:g,align:`start`,side:ne,className:`w-80 overflow-hidden`,children:[ie,V,H]}),t[59]=ne,t[60]=ie,t[61]=H,t[62]=U):U=t[62];let oe;return t[63]!==A||t[64]!==w||t[65]!==v||t[66]!==f||t[67]!==B||t[68]!==U?(oe=(0,Y.jsxs)(Ss,{items:v,filteredItems:w,autoHighlight:!0,open:f,value:A,onOpenChange:E,children:[B,U]}),t[63]=A,t[64]=w,t[65]=v,t[66]=f,t[67]=B,t[68]=U,t[69]=oe):oe=t[69],oe}function rK(e){return[tK(e.environmentId,e.id),e]}function iK(e){return tK(e.environmentId,e.id)}function aK(e){return ye(e)}function oK(e){return{sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides}}function sK(e){return e.moveDraftThreadToProject}var cK=(0,q.memo)(function(e){let t=(0,J.c)(66),{environmentId:n,threadId:r,draftId:i,activeThreadBranchOverride:a,onActiveThreadBranchOverrideChange:s,envLocked:c,onCheckoutPullRequestRequest:l,onComposerFocusRequest:u,onOpenWorktreeSources:d,contextControlsHoisted:f,availableEnvironments:p,onEnvironmentChange:m,terminalAvailable:h,terminalOpen:g,terminalToggleShortcutLabel:v,onToggleTerminal:y,terminalCount:b}=e,x=f!==void 0&&f,S;t[0]!==n||t[1]!==r?(S=_(n,r),t[0]=n,t[1]=r,t[2]=S):S=t[2];let C=S,w;t[3]===C?w=t[4]:(w=Jt(C),t[3]=C,t[4]=w);let T=me(w),E;t[5]!==i||t[6]!==C?(E=e=>i?e.getDraftSession(i):e.getDraftThreadByRef(C),t[5]=i,t[6]=C,t[7]=E):E=t[7];let D=Rr(E),O=Rr(lK),k;t[8]!==D||t[9]!==T?(k=T?o(T.environmentId,T.projectId):D?o(D.environmentId,D.projectId):null,t[8]=D,t[9]=T,t[10]=k):k=t[10];let A=k,j;t[11]===A?j=t[12]:(j=Gr(A),t[11]=A,t[12]=j);let M=me(j),N=T!==void 0,P=N||D!==null,F=!!(p&&p.length>1&&m),I=!N&&D!==null&&!c,L=T?.worktreePath??D?.worktreePath??null,R=D?.envMode,z;t[13]!==N||t[14]!==L||t[15]!==R?(z=Cc({activeWorktreePath:L,hasServerThread:N,draftThreadEnvMode:R}),t[13]=N,t[14]=L,t[15]=R,t[16]=z):z=t[16];let ee=z,te;t[17]!==i||t[18]!==u||t[19]!==O||t[20]!==C?(te=e=>{O(i??C,{envMode:e,worktreePath:null}),u?.()},t[17]=i,t[18]=u,t[19]=O,t[20]=C,t[21]=te):te=t[21];let B=te;if(!P||!M)return null;let ne;t[22]!==M||t[23]!==p||t[24]!==I||t[25]!==x||t[26]!==i||t[27]!==c||t[28]!==ee||t[29]!==n||t[30]!==B||t[31]!==m||t[32]!==F?(ne=x?null:(0,Y.jsxs)(`div`,{className:`flex min-w-0 shrink items-center gap-0.5`,children:[I&&i?(0,Y.jsx)(nK,{activeProjectId:M.id,activeProjectEnvironmentId:M.environmentId,appearance:`chip`,draftId:i,label:M.name}):(0,Y.jsx)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5 px-2 py-1 font-medium text-muted-foreground/70 text-xs`,children:(0,Y.jsx)(`span`,{className:`min-w-0 truncate`,children:M.name})}),F&&p&&m&&(0,Y.jsx)(YG,{envLocked:c,environmentId:n,availableEnvironments:p,onEnvironmentChange:m}),I?(0,Y.jsx)($G,{value:ee,onChange:B}):null]}),t[22]=M,t[23]=p,t[24]=I,t[25]=x,t[26]=i,t[27]=c,t[28]=ee,t[29]=n,t[30]=B,t[31]=m,t[32]=F,t[33]=ne):ne=t[33];let re=!h,ie;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,Y.jsx)(ud,{className:`size-3 shrink-0`}),t[34]=ie):ie=t[34];let V=g?`Close Terminal`:`Open Terminal`,ae;t[35]===V?ae=t[36]:(ae=(0,Y.jsx)(`span`,{children:V}),t[35]=V,t[36]=ae);let H;t[37]===b?H=t[38]:(H=b>=2&&(0,Y.jsxs)(`span`,{className:`text-muted-foreground/70 tabular-nums`,"aria-label":`${b} open terminals`,children:[`· `,b]}),t[37]=b,t[38]=H);let U;t[39]!==y||t[40]!==re||t[41]!==ae||t[42]!==H||t[43]!==g?(U=(0,Y.jsx)(So,{render:(0,Y.jsxs)(W,{variant:`ghost`,size:`xs`,className:`font-medium text-muted-foreground/70 hover:text-foreground/80`,disabled:re,onClick:y,"aria-label":`Toggle terminal drawer`,"aria-pressed":g,children:[ie,ae,H]})}),t[39]=y,t[40]=re,t[41]=ae,t[42]=H,t[43]=g,t[44]=U):U=t[44];let oe=h?v?`Toggle terminal drawer (${v})`:`Toggle terminal drawer`:`Terminal is unavailable until this thread has an active project.`,se;t[45]===oe?se=t[46]:(se=(0,Y.jsx)(Co,{side:`top`,children:oe}),t[45]=oe,t[46]=se);let ce;t[47]!==U||t[48]!==se?(ce=(0,Y.jsx)(`div`,{className:`flex flex-1 items-center justify-center gap-1 phone:hidden`,children:(0,Y.jsxs)(wo,{children:[U,se]})}),t[47]=U,t[48]=se,t[49]=ce):ce=t[49];let le;t[50]!==a||t[51]!==I||t[52]!==x||t[53]!==i||t[54]!==c||t[55]!==n||t[56]!==s||t[57]!==l||t[58]!==u||t[59]!==d||t[60]!==r?(le=x?null:(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center justify-end gap-0.5 md:ml-auto md:flex-none`,children:[I&&d?(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsxs)(W,{variant:`ghost`,size:`xs`,className:`shrink-0 font-medium text-muted-foreground/70 hover:text-foreground/80 phone:hidden`,onClick:d,"data-testid":`branch-toolbar-worktree-sources`,children:[(0,Y.jsx)(Is,{className:`size-3 shrink-0`}),(0,Y.jsx)(`span`,{children:`From PR / issue`})]})}),(0,Y.jsx)(Co,{side:`top`,children:`Create a worktree from a pull request, issue, or Jira item`})]}):null,(0,Y.jsx)(JG,{className:`min-w-0`,environmentId:n,threadId:r,...i?{draftId:i}:{},envLocked:c,...a===void 0?{}:{activeThreadBranchOverride:a},...s?{onActiveThreadBranchOverrideChange:s}:{},...l?{onCheckoutPullRequestRequest:l}:{},...u?{onComposerFocusRequest:u}:{}})]}),t[50]=a,t[51]=I,t[52]=x,t[53]=i,t[54]=c,t[55]=n,t[56]=s,t[57]=l,t[58]=u,t[59]=d,t[60]=r,t[61]=le):le=t[61];let ue;return t[62]!==ne||t[63]!==ce||t[64]!==le?(ue=(0,Y.jsxs)(`div`,{className:`mx-auto flex w-full max-w-208 items-center gap-1 px-2.5 pb-3 pt-1 sm:px-3`,children:[ne,ce,le]}),t[62]=ne,t[63]=ce,t[64]=le,t[65]=ue):ue=t[65],ue});function lK(e){return e.setDraftThreadContext}function uK(e,t){let n=e.activeSince?Date.parse(e.activeSince):NaN,r=t&&e.status!==`idle`?Date.now():Date.parse(e.updatedAt),i=Number.isFinite(n)&&Number.isFinite(r)?Math.max(0,r-n):0,a=Math.max(0,Math.floor((e.elapsedMs+i)/1e3));return a<60?`${a}s`:`${Math.floor(a/60)}m ${a%60}s`}var dK=(0,q.memo)(function(e){let t=(0,J.c)(39),{task:n,connected:r,mutationReady:i,onStop:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(null),u=(0,q.useRef)(!0),d=(0,q.useRef)(0),f=(0,q.useRef)(!1),p,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=()=>(u.current=!0,()=>{u.current=!1}),m=[],t[0]=p,t[1]=m):(p=t[0],m=t[1]),(0,q.useEffect)(p,m);let h,g;t[2]===o?(h=t[3],g=t[4]):(h=()=>{if(!o)return;let e=window.setTimeout(()=>{d.current+=1,f.current=!1,s(!1),l(`Stop has not been confirmed. You can retry.`)},2e4);return()=>window.clearTimeout(e)},g=[o],t[2]=o,t[3]=h,t[4]=g),(0,q.useEffect)(h,g);let _;t[5]!==r||t[6]!==i||t[7]!==a||t[8]!==n?(_=async()=>{if(f.current||!r||!i||!n.canStop||!n.runtimeSessionId)return;f.current=!0;let e=d.current+=1;s(!0),l(null);try{await a(n)}catch(t){let n=t;if(!u.current||e!==d.current)return;f.current=!1,s(!1),l(n instanceof Error?n.message:`Could not stop this task.`)}},t[5]=r,t[6]=i,t[7]=a,t[8]=n,t[9]=_):_=t[9];let v=_,y=n.id,b;t[10]===n.title?b=t[11]:(b=(0,Y.jsx)(`p`,{className:`truncate text-xs text-foreground`,title:n.title,children:n.title}),t[10]=n.title,t[11]=b);let x=r?n.status===`idle`?`Paused / idle`:n.status===`waiting`?`Waiting`:n.status===`pending`?`Pending`:`Running`:`Status unconfirmed`,S=n.id,C;t[12]!==r||t[13]!==n?(C=uK(n,r),t[12]=r,t[13]=n,t[14]=C):C=t[14];let w;t[15]!==C||t[16]!==n.id?(w=(0,Y.jsx)(`span`,{className:`ml-2 tabular-nums`,"data-background-elapsed":S,children:C}),t[15]=C,t[16]=n.id,t[17]=w):w=t[17];let T;t[18]!==w||t[19]!==x?(T=(0,Y.jsxs)(`p`,{className:`mt-0.5 text-[11px] text-muted-foreground`,children:[x,w]}),t[18]=w,t[19]=x,t[20]=T):T=t[20];let E;t[21]!==T||t[22]!==b?(E=(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[b,T]}),t[21]=T,t[22]=b,t[23]=E):E=t[23];let D;t[24]===v?D=t[25]:(D=()=>void v(),t[24]=v,t[25]=D);let O=o||!r||!i||!n.canStop||!n.runtimeSessionId,k=n.canStop?void 0:`This provider session cannot stop individual tasks`,A=`Stop ${n.title}`,j=o?`Stopping…`:`Stop`,M;t[26]!==D||t[27]!==O||t[28]!==k||t[29]!==A||t[30]!==j?(M=(0,Y.jsx)(`button`,{type:`button`,onClick:D,disabled:O,title:k,"aria-label":A,className:`shrink-0 rounded px-2 py-1 text-xs hover:bg-muted disabled:cursor-default disabled:text-muted-foreground/50`,children:j}),t[26]=D,t[27]=O,t[28]=k,t[29]=A,t[30]=j,t[31]=M):M=t[31];let N;t[32]===c?N=t[33]:(N=c?(0,Y.jsx)(`p`,{role:`alert`,className:`w-full text-xs text-destructive`,children:c}):null,t[32]=c,t[33]=N);let P;return t[34]!==E||t[35]!==M||t[36]!==N||t[37]!==n.id?(P=(0,Y.jsxs)(`li`,{className:`flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 border-t border-border/50 px-3 py-2`,"data-background-task":y,children:[E,M,N]}),t[34]=E,t[35]=M,t[36]=N,t[37]=n.id,t[38]=P):P=t[38],P});function fK(e){let t=(0,J.c)(51),[n,r]=(0,q.useState)(!1),i=(0,q.useId)(),a=(0,q.useRef)(null),o,s;t[0]!==n||t[1]!==e.connected||t[2]!==e.work.tasks?(o=()=>{if(!n||!e.connected||!e.work.tasks.some(mK))return;let t=()=>{if(document.hidden)return;let t=new Map(e.work.tasks.map(pK));for(let e of a.current?.querySelectorAll(`[data-background-elapsed]`)??[]){let n=t.get(e.dataset.backgroundElapsed??``);n&&(e.textContent=uK(n,!0))}};t();let r=window.setInterval(t,1e3);return()=>window.clearInterval(r)},s=[n,e.connected,e.work.tasks],t[0]=n,t[1]=e.connected,t[2]=e.work.tasks,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s);let c;t[5]===n?c=t[6]:(c=()=>r(!n),t[5]=n,t[6]=c);let l=`size-3.5 shrink-0 ${n?`rotate-180`:``}`,u;t[7]===l?u=t[8]:(u=(0,Y.jsx)(fr,{"aria-hidden":!0,className:l}),t[7]=l,t[8]=u);let d=e.work.tasks.length===0&&e.work.detailsOmitted?`Background work · details unavailable`:`${e.work.tasks.length} background ${e.work.tasks.length===1?`task`:`tasks`}${e.work.detailsOmitted?` · details limited`:``}`,f;t[9]!==i||t[10]!==n||t[11]!==c||t[12]!==u||t[13]!==d?(f=(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":n,"aria-controls":i,onClick:c,className:`flex min-w-0 flex-1 items-center gap-2 text-left text-xs font-medium`,children:[u,d]}),t[9]=i,t[10]=n,t[11]=c,t[12]=u,t[13]=d,t[14]=f):f=t[14];let p;t[15]!==e.agentCount||t[16]!==e.onOpenAgents||t[17]!==e.waitingCount?(p=e.agentCount>0&&e.onOpenAgents?(0,Y.jsxs)(`button`,{type:`button`,onClick:e.onOpenAgents,className:`shrink-0 text-xs text-muted-foreground hover:text-foreground`,children:[`Agents (`,e.agentCount,e.waitingCount?` · ${e.waitingCount} waiting`:``,`)`]}):null,t[15]=e.agentCount,t[16]=e.onOpenAgents,t[17]=e.waitingCount,t[18]=p):p=t[18];let m=e.stoppingAll||!e.connected||!e.mutationReady,h=e.stoppingAll?`Stopping…`:`Stop all`,g;t[19]!==e.onStopAll||t[20]!==m||t[21]!==h?(g=(0,Y.jsx)(`button`,{type:`button`,onClick:e.onStopAll,disabled:m,className:`shrink-0 text-xs hover:text-foreground disabled:text-muted-foreground/50`,children:h}),t[19]=e.onStopAll,t[20]=m,t[21]=h,t[22]=g):g=t[22];let _;t[23]!==g||t[24]!==f||t[25]!==p?(_=(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5`,children:[f,p,g]}),t[23]=g,t[24]=f,t[25]=p,t[26]=_):_=t[26];let v;t[27]===e.connected?v=t[28]:(v=e.connected?null:(0,Y.jsx)(`p`,{role:`status`,className:`px-3 pb-2 text-xs text-muted-foreground`,children:`Connection lost · task status is unconfirmed`}),t[27]=e.connected,t[28]=v);let y=!n,b;if(t[29]!==e.connected||t[30]!==e.mutationReady||t[31]!==e.onStopTask||t[32]!==e.work.tasks){let n;t[34]!==e.connected||t[35]!==e.mutationReady||t[36]!==e.onStopTask?(n=t=>(0,Y.jsx)(dK,{task:t,connected:e.connected,mutationReady:e.mutationReady,onStop:e.onStopTask},`${t.runtimeSessionId}:${t.id}:${t.attempt}`),t[34]=e.connected,t[35]=e.mutationReady,t[36]=e.onStopTask,t[37]=n):n=t[37],b=e.work.tasks.map(n),t[29]=e.connected,t[30]=e.mutationReady,t[31]=e.onStopTask,t[32]=e.work.tasks,t[33]=b}else b=t[33];let x;t[38]!==i||t[39]!==b?(x=(0,Y.jsx)(`ul`,{id:i,ref:a,className:`max-h-64 overflow-y-auto`,children:b}),t[38]=i,t[39]=b,t[40]=x):x=t[40];let S;t[41]===e.work.detailsOmitted?S=t[42]:(S=e.work.detailsOmitted?(0,Y.jsx)(`p`,{role:`status`,className:`border-t border-border/50 px-3 py-2 text-xs text-muted-foreground`,children:`Up to 100 task details are retained. Additional details are unavailable in this window; their current status is unknown.`}):null,t[41]=e.work.detailsOmitted,t[42]=S);let C;t[43]!==y||t[44]!==x||t[45]!==S?(C=(0,Y.jsxs)(`div`,{hidden:y,children:[x,S]}),t[43]=y,t[44]=x,t[45]=S,t[46]=C):C=t[46];let w;return t[47]!==_||t[48]!==v||t[49]!==C?(w=(0,Y.jsxs)(`section`,{"aria-label":`Background work`,className:`w-full min-w-0 rounded-lg border border-border/70 bg-popover/95 text-foreground shadow-sm`,children:[_,v,C]}),t[47]=_,t[48]=v,t[49]=C,t[50]=w):w=t[50],w}function pK(e){return[e.id,e]}function mK(e){return e.activeSince!==null}var hK=(0,q.memo)(function(e){let t=(0,J.c)(29);if(e.work&&(e.work.tasks.length>0||e.work.detailsOmitted)&&e.onStopTask){let n=e.connected===!0,r=e.mutationReady===!0,i;return t[0]!==e.liveCount||t[1]!==e.onOpenAgents||t[2]!==e.onStop||t[3]!==e.onStopTask||t[4]!==e.stopping||t[5]!==e.waitingCount||t[6]!==e.work||t[7]!==n||t[8]!==r?(i=(0,Y.jsx)(fK,{work:e.work,connected:n,mutationReady:r,onStopTask:e.onStopTask,agentCount:e.liveCount,waitingCount:e.waitingCount,onOpenAgents:e.onOpenAgents,onStopAll:e.onStop,stoppingAll:e.stopping}),t[0]=e.liveCount,t[1]=e.onOpenAgents,t[2]=e.onStop,t[3]=e.onStopTask,t[4]=e.stopping,t[5]=e.waitingCount,t[6]=e.work,t[7]=n,t[8]=r,t[9]=i):i=t[9],i}let n=e.liveness===`working`,r=n?e.liveCount>0?`${e.liveCount} ${e.liveCount===1?`agent`:`agents`} active in the background`:`Background work running`:`Monitoring in the background`,i=n&&`animate-status-pulse`,a;t[10]===i?a=t[11]:(a=G(`size-3.5 shrink-0`,i),t[10]=i,t[11]=a);let o;t[12]===a?o=t[13]:(o=(0,Y.jsx)(Jo,{className:a,"aria-hidden":!0}),t[12]=a,t[13]=o);let s=!e.onOpenAgents,c=e.waitingCount?` · ${e.waitingCount} waiting`:``,l;t[14]!==r||t[15]!==e.onOpenAgents||t[16]!==s||t[17]!==c?(l=(0,Y.jsxs)(`button`,{type:`button`,onClick:e.onOpenAgents,disabled:s,className:`truncate font-medium hover:text-foreground`,children:[r,c]}),t[14]=r,t[15]=e.onOpenAgents,t[16]=s,t[17]=c,t[18]=l):l=t[18];let u;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,"aria-hidden":!0,children:`·`}),t[19]=u):u=t[19];let d=e.stopping||e.mutationReady===!1,f=e.stopping?`Stopping…`:`Stop`,p;t[20]!==e.onStop||t[21]!==d||t[22]!==f?(p=(0,Y.jsx)(`button`,{type:`button`,onClick:e.onStop,disabled:d,className:`shrink-0 font-medium text-foreground/85 transition-colors hover:text-foreground disabled:cursor-default disabled:text-muted-foreground/60`,children:f}),t[20]=e.onStop,t[21]=d,t[22]=f,t[23]=p):p=t[23];let m;return t[24]!==r||t[25]!==o||t[26]!==l||t[27]!==p?(m=(0,Y.jsxs)(`div`,{role:`status`,"aria-label":r,"data-background-liveness-chip":`true`,className:`inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-[11px] leading-4 text-muted-foreground shadow-sm backdrop-blur-xs`,children:[o,l,u,p]}),t[24]=r,t[25]=o,t[26]=l,t[27]=p,t[28]=m):m=t[28],m}),gK=[`in the simulator`,`on the simulator`,`the simulator`,`simulator screen`,`ios simulator`,`on the device`,`device screen`,`nel simulatore`,`sul simulatore`,`schermo del simulatore`,`sul dispositivo`],_K=[`look at`,`what do you see`,`read`,`describe`,`summarize`,`inspect`,`screenshot`,`screen`,`check`,`guarda`,`vedi`,`dimmi cosa vedi`,`leggi`,`descrivi`,`riassumi`,`ispeziona`];function vK(e){let t=e.toLowerCase().replace(/\s+/g,` `).trim();return gK.some(e=>t.includes(e))&&_K.some(e=>t.includes(e))}function yK(e){return e.name.trim().length>0?e.name:`simulator-${Date.now()}.png`}function bK(e){let t=atob(e.bytesBase64);if(t.length===0)throw Error(`Simulator screenshot is empty.`);let n=Uint8Array.from(t,e=>e.charCodeAt(0)),r=n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength),i=new File([r],yK(e),{type:e.mimeType});if(i.size>10485760)throw Error(`Simulator screenshot exceeds the image attachment limit.`);return i}async function xK(e){if(!vK(e.prompt))return{requested:!1,image:null};if(!e.api.device)return{requested:!0,image:null,reason:`no-attached-device`};try{let t=await e.api.device.getThreadState({threadId:e.threadId}),n=t.attachedDeviceUdid?t.devices.find(e=>e.udid===t.attachedDeviceUdid):void 0;if(!n)return{requested:!0,image:null,reason:`no-attached-device`};if(n.state!==`booted`)return{requested:!0,image:null,reason:`device-not-booted`};let r=bK(await e.api.device.screenshot({udid:n.udid}));return{requested:!0,image:{type:`image`,id:crypto.randomUUID(),name:r.name,mimeType:r.type,sizeBytes:r.size,previewUrl:URL.createObjectURL(r),file:r}}}catch{return{requested:!0,image:null,reason:`attachment-processing-failed`}}}function SK(e){return e.phase===`running`||e.isSendBusy||e.isConnecting||!e.hasSendableContent}function CK(e){return!e.isMobileViewport||e.isSendBusy||e.isConnecting||e.phase===`running`?!1:e.pendingProgress?e.pendingProgress.isLastQuestion&&e.hasResolvedAnswers:e.showPlanFollowUpPrompt||e.hasSendableContent}function wK(e){return e.pendingProgress?`pending:${e.pendingProgress.questionIndex}:${e.pendingProgress.isLastQuestion}:${e.pendingIsResponding}`:e.phase===`running`?`running`:e.showPlanFollowUpPrompt?e.promptHasText?`plan:refine`:`plan:implement`:`idle:${e.hasSendableContent}:${e.isSendBusy}:${e.isConnecting}:${e.isPreparingWorktree}`}var TK=(0,q.memo)(function(e){let t=(0,J.c)(16),n;t[0]===e.className?n=t[1]:(n=G(`inline-flex min-w-0 items-center`,e.className),t[0]=e.className,t[1]=n);let r=e.collapsed?`true`:`false`,i;t[2]===e.icon?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`inline-flex shrink-0 items-center justify-center`,"aria-hidden":`true`,children:e.icon}),t[2]=e.icon,t[3]=i);let a;t[4]!==e.collapsed||t[5]!==e.expanded||t[6]!==e.labelClassName?(a=G(`block overflow-hidden whitespace-nowrap transition-[margin-left,max-width,opacity] duration-300 ease-out motion-reduce:transition-none`,e.collapsed?[`ml-0 max-w-0 opacity-0`,`group-hover/composer-label-control:ml-1 group-hover/composer-label-control:max-w-40 group-hover/composer-label-control:opacity-100`,`group-focus-visible/composer-label-control:ml-1 group-focus-visible/composer-label-control:max-w-40 group-focus-visible/composer-label-control:opacity-100`,`group-focus-within/composer-label-control:ml-1 group-focus-within/composer-label-control:max-w-40 group-focus-within/composer-label-control:opacity-100`,`group-data-[pressed]/composer-label-control:ml-1 group-data-[pressed]/composer-label-control:max-w-40 group-data-[pressed]/composer-label-control:opacity-100`,e.expanded?`ml-1 max-w-40 opacity-100`:void 0]:`ml-1 max-w-40 opacity-100`,e.labelClassName),t[4]=e.collapsed,t[5]=e.expanded,t[6]=e.labelClassName,t[7]=a):a=t[7];let o;t[8]!==e.label||t[9]!==a?(o=(0,Y.jsx)(`span`,{className:a,"data-composer-expandable-label":`true`,children:e.label}),t[8]=e.label,t[9]=a,t[10]=o):o=t[10];let s;return t[11]!==n||t[12]!==r||t[13]!==i||t[14]!==o?(s=(0,Y.jsxs)(`span`,{className:n,"data-composer-expandable-label-control":`true`,"data-collapsed":r,children:[i,o]}),t[11]=n,t[12]=r,t[13]=i,t[14]=o,t[15]=s):s=t[15],s}),EK=e=>e.isResponding?`Submitting...`:e.compact?e.isLastQuestion?`Submit`:`Next`:e.isLastQuestion?e.questionIndex>0?`Submit answers`:`Submit answer`:`Next question`,DK=e=>{e.preventDefault()},OK=(0,q.memo)(function(e){let t=(0,J.c)(67),{compact:n,pendingAction:r,isRunning:i,showPlanFollowUpPrompt:a,promptHasText:o,isSendBusy:s,isConnecting:c,isEnvironmentUnavailable:l,isPreparingWorktree:u,hasSendableContent:d,sendDisabledReason:f,preserveComposerFocusOnPointerDown:p,onPreviousPendingQuestion:m,onInterrupt:h,onImplementPlanInNewThread:g}=e,_=f===void 0?null:f,v=p!==void 0&&p,y;t[0]===v?y=t[1]:(y=v?{onPointerDown:DK}:void 0,t[0]=v,t[1]=y);let b=y;if(r){let e=n?`gap-1.5`:`gap-2`,i;t[2]===e?i=t[3]:(i=G(`flex items-center justify-end`,e),t[2]=e,t[3]=i);let a;t[4]!==n||t[5]!==m||t[6]!==r.isResponding||t[7]!==r.questionIndex||t[8]!==b?(a=r.questionIndex>0?n?(0,Y.jsx)(W,{size:`icon-sm`,variant:`outline`,...b,onClick:m,disabled:r.isResponding,"aria-label":`Previous question`,children:(0,Y.jsx)(_s,{className:`size-3.5`})}):(0,Y.jsx)(W,{size:`sm`,variant:`outline`,...b,onClick:m,disabled:r.isResponding,children:`Previous`}):null,t[4]=n,t[5]=m,t[6]=r.isResponding,t[7]=r.questionIndex,t[8]=b,t[9]=a):a=t[9];let o=n?`px-3`:`px-4`,s;t[10]===o?s=t[11]:(s=G(o),t[10]=o,t[11]=s);let c=l||r.isResponding||(r.isLastQuestion?!r.isComplete:!r.canAdvance),u;t[12]!==n||t[13]!==r.isLastQuestion||t[14]!==r.isResponding||t[15]!==r.questionIndex?(u=EK({compact:n,isLastQuestion:r.isLastQuestion,isResponding:r.isResponding,questionIndex:r.questionIndex}),t[12]=n,t[13]=r.isLastQuestion,t[14]=r.isResponding,t[15]=r.questionIndex,t[16]=u):u=t[16];let d;t[17]!==b||t[18]!==u||t[19]!==s||t[20]!==c?(d=(0,Y.jsx)(W,{type:`submit`,size:`sm`,className:s,...b,disabled:c,children:u}),t[17]=b,t[18]=u,t[19]=s,t[20]=c,t[21]=d):d=t[21];let f;return t[22]!==d||t[23]!==i||t[24]!==a?(f=(0,Y.jsxs)(`div`,{className:i,children:[a,d]}),t[22]=d,t[23]=i,t[24]=a,t[25]=f):f=t[25],f}if(i){let e;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 12 12`,fill:`currentColor`,"aria-hidden":`true`,children:(0,Y.jsx)(`rect`,{x:`2`,y:`2`,width:`8`,height:`8`,rx:`1.5`})}),t[26]=e):e=t[26];let n;return t[27]!==h||t[28]!==b?(n=(0,Y.jsx)(`button`,{type:`button`,className:`flex size-8 cursor-pointer items-center justify-center rounded-lg bg-rose-500/90 text-white transition-all duration-150 hover:bg-rose-500 hover:scale-105 sm:h-8 sm:w-8`,...b,onClick:h,"aria-label":`Stop generation`,children:e}),t[27]=h,t[28]=b,t[29]=n):n=t[29],n}if(a){if(o){let e=n?`h-9 px-3 sm:h-8`:`h-9 px-4 sm:h-8`,r;t[30]===e?r=t[31]:(r=G(e),t[30]=e,t[31]=r);let i=s||c||l,a=c||s?`Sending...`:`Refine`,o;return t[32]!==b||t[33]!==r||t[34]!==i||t[35]!==a?(o=(0,Y.jsx)(W,{type:`submit`,size:`sm`,className:r,...b,disabled:i,children:a}),t[32]=b,t[33]=r,t[34]=i,t[35]=a,t[36]=o):o=t[36],o}let e=s||c||l,r=c||s?`Sending...`:`Implement`,i;t[37]!==b||t[38]!==e||t[39]!==r?(i=(0,Y.jsx)(W,{type:`submit`,size:`sm`,className:`h-9 rounded-l-lg rounded-r-none px-4 sm:h-8`,...b,disabled:e,children:r}),t[37]=b,t[38]=e,t[39]=r,t[40]=i):i=t[40];let a=s||c||l,u;t[41]!==b||t[42]!==a?(u=(0,Y.jsx)(W,{size:`sm`,variant:`default`,className:`h-9 rounded-l-none rounded-r-lg border-l-white/12 px-2 sm:h-8`,"aria-label":`Implementation actions`,...b,disabled:a}),t[41]=b,t[42]=a,t[43]=u):u=t[43];let d;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(fr,{className:`size-3.5`}),t[44]=d):d=t[44];let f;t[45]===u?f=t[46]:(f=(0,Y.jsx)(qi,{render:u,children:d}),t[45]=u,t[46]=f);let p=s||c||l,m;t[47]===g?m=t[48]:(m=()=>void g(),t[47]=g,t[48]=m);let h;t[49]!==p||t[50]!==m?(h=(0,Y.jsx)(_i,{align:`end`,side:`top`,children:(0,Y.jsx)(Fi,{disabled:p,onClick:m,children:`Implement in a new thread`})}),t[49]=p,t[50]=m,t[51]=h):h=t[51];let _;t[52]!==f||t[53]!==h?(_=(0,Y.jsxs)(ka,{children:[f,h]}),t[52]=f,t[53]=h,t[54]=_):_=t[54];let v;return t[55]!==_||t[56]!==i?(v=(0,Y.jsxs)(`div`,{"data-chat-composer-implement-actions":`true`,className:`flex items-center justify-end`,children:[i,_]}),t[55]=_,t[56]=i,t[57]=v):v=t[57],v}let x=s||c||l||!d,S=_??void 0,C=l?`Environment disconnected`:c?`Connecting`:u?`Preparing worktree`:s?`Sending`:`Send message`,w;t[58]!==c||t[59]!==s?(w=c||s?(0,Y.jsx)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,className:`animate-spin`,"aria-hidden":`true`,children:(0,Y.jsx)(`circle`,{cx:`7`,cy:`7`,r:`5.5`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeDasharray:`20 12`})}):(0,Y.jsx)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,"aria-hidden":`true`,children:(0,Y.jsx)(`path`,{d:`M7 11.5V2.5M7 2.5L3 6.5M7 2.5L11 6.5`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`})}),t[58]=c,t[59]=s,t[60]=w):w=t[60];let T;return t[61]!==b||t[62]!==x||t[63]!==S||t[64]!==C||t[65]!==w?(T=(0,Y.jsx)(`button`,{type:`submit`,className:`flex h-9 w-9 enabled:cursor-pointer items-center justify-center rounded-lg bg-primary/90 text-primary-foreground transition-all duration-150 hover:bg-primary hover:scale-105 disabled:pointer-events-none disabled:opacity-30 disabled:hover:scale-100 sm:h-8 sm:w-8`,...b,disabled:x,title:S,"aria-label":C,children:w}),t[61]=b,t[62]=x,t[63]=S,t[64]=C,t[65]=w,t[66]=T):T=t[66],T}),kK=`Not supported by this provider.`,AK=(0,q.memo)(function(e){let t=(0,J.c)(20),n=e.tokenMode??`off`,r=e.showSessionPolicy??!0,i=e.runtimeMode===`full-access`?`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`:void 0,a;t[0]===i?a=t[1]:(a=G(`shrink-0 text-muted-foreground/70 hover:text-foreground/80`,i),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=(0,Y.jsx)(W,{size:`icon-xs`,variant:`ghost`,className:a,"aria-label":`More composer controls`}),t[2]=a,t[3]=o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Y.jsx)(as,{"aria-hidden":`true`,className:`size-4`}),t[4]=s):s=t[4];let c;t[5]===o?c=t[6]:(c=(0,Y.jsx)(qi,{render:o,children:s}),t[5]=o,t[6]=c);let l;t[7]!==e.traitsMenuContent||t[8]!==r?(l=e.traitsMenuContent?(0,Y.jsxs)(Y.Fragment,{children:[e.traitsMenuContent,r?(0,Y.jsx)(Vi,{}):null]}):null,t[7]=e.traitsMenuContent,t[8]=r,t[9]=l):l=t[9];let u;t[10]!==e||t[11]!==r||t[12]!==n?(u=r?(0,Y.jsxs)(Y.Fragment,{children:[e.showInteractionModeToggle?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`px-2 py-1.5 font-medium text-muted-foreground text-xs`,children:`Mode`}),(0,Y.jsxs)(Si,{value:e.interactionMode,onValueChange:t=>{t&&t!==e.interactionMode&&e.onInteractionModeChange(t)},children:[(0,Y.jsx)(ki,{value:`default`,children:`Chat`}),(0,Y.jsx)(ki,{value:`plan`,children:`Plan`}),(0,Y.jsx)(ki,{value:`ask`,disabled:!e.askModeSupported,children:e.askModeSupported?`Ask`:(0,Y.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(`span`,{children:`Ask`}),(0,Y.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:kK})]})})]}),(0,Y.jsx)(Vi,{})]}):null,(0,Y.jsx)(`div`,{className:`px-2 py-1.5 font-medium text-muted-foreground text-xs`,children:`Access`}),(0,Y.jsxs)(Si,{value:e.runtimeMode,onValueChange:t=>{t&&t!==e.runtimeMode&&e.onRuntimeModeChange(t)},children:[(0,Y.jsx)(ki,{value:`approval-required`,children:`Supervised`}),(0,Y.jsx)(ki,{value:`auto-accept-edits`,children:`Auto-accept edits`}),(0,Y.jsx)(ki,{value:`auto`,children:`Auto`}),(0,Y.jsx)(ki,{value:`full-access`,children:`Full access`})]}),(0,Y.jsx)(Vi,{}),(0,Y.jsx)(`div`,{className:`px-2 py-1.5 font-medium text-muted-foreground text-xs`,children:`Tokens`}),(0,Y.jsxs)(Si,{value:n,onValueChange:t=>{t&&t!==n&&e.onTokenModeChange?.(t)},children:[(0,Y.jsx)(ki,{value:`off`,children:`Off`}),(0,Y.jsx)(ki,{value:`balanced`,children:`Balanced`}),(0,Y.jsx)(ki,{value:`aggressive`,children:`Aggressive`})]}),e.activePlan?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Vi,{}),(0,Y.jsxs)(Fi,{onClick:e.onTogglePlanSidebar,children:[(0,Y.jsx)(Wu,{className:`size-4 shrink-0`}),e.planSidebarOpen?`Hide ${e.planSidebarLabel.toLowerCase()} sidebar`:`Show ${e.planSidebarLabel.toLowerCase()} sidebar`]})]}):null]}):null,t[10]=e,t[11]=r,t[12]=n,t[13]=u):u=t[13];let d;t[14]!==l||t[15]!==u?(d=(0,Y.jsxs)(_i,{align:`start`,children:[l,u]}),t[14]=l,t[15]=u,t[16]=d):d=t[16];let f;return t[17]!==c||t[18]!==d?(f=(0,Y.jsxs)(ka,{children:[c,d]}),t[17]=c,t[18]=d,t[19]=f):f=t[19],f}),jK=new Intl.DateTimeFormat(void 0,{year:`numeric`,month:`numeric`,day:`numeric`});function MK(e){return!e||w(e)?``:jK.format(L(e.value))}var NK=(0,q.memo)(function(e){let t=(0,J.c)(7);if(e.isLoading&&e.items.length===0){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`div`,{className:`px-3 py-4 text-xs text-muted-foreground`,children:`Loading…`}),t[0]=e):e=t[0],e}if(e.items.length===0){let n;return t[1]===e.emptyText?n=t[2]:(n=(0,Y.jsx)(`div`,{className:`px-3 py-4 text-xs text-muted-foreground`,children:e.emptyText}),t[1]=e.emptyText,t[2]=n),n}let n;t[3]===e?n=t[4]:(n=e.items.map(t=>(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>e.onSelect(t),className:G(`flex w-full items-center gap-2 px-3 py-2 text-left text-sm`,`hover:bg-accent`),children:[(0,Y.jsxs)(`span`,{className:`shrink-0 text-muted-foreground`,children:[`#`,t.number]}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t.title}),(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:MK(t.updatedAt)})]})},`${t.provider}:${t.number}`)),t[3]=e,t[4]=n);let r;return t[5]===n?r=t[6]:(r=(0,Y.jsx)(`ul`,{className:`max-h-72 overflow-y-auto`,role:`listbox`,children:n}),t[5]=n,t[6]=r),r});function PK(e){let t=(0,J.c)(64),[n,r]=(0,q.useState)(`issues`),[i,a]=(0,q.useState)(``),[o,s]=(0,q.useState)(!1),c=(0,q.useRef)(null),l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l={wait:200},t[0]=l):l=t[0];let[u]=ro(i,l),d;t[1]!==e.cwd||t[2]!==e.environmentId?(d={environmentId:e.environmentId,cwd:e.cwd,state:`open`},t[1]=e.cwd,t[2]=e.environmentId,t[3]=d):d=t[3];let f=Ki(d),p;t[4]!==e.cwd||t[5]!==e.environmentId?(p={environmentId:e.environmentId,cwd:e.cwd,state:`open`},t[4]=e.cwd,t[5]=e.environmentId,t[6]=p):p=t[6];let m=Ji(p),h;t[7]===f.data?h=t[8]:(h=f.data??[],t[7]=f.data,t[8]=h);let g=h,_;t[9]===m.data?_=t[10]:(_=m.data??[],t[9]=m.data,t[10]=_);let v=_,y;t[11]!==g||t[12]!==i?(y=Ca(g,i),t[11]=g,t[12]=i,t[13]=y):y=t[13];let b=y,x=v,S;t[14]!==i||t[15]!==x?(S=Ca(x,i),t[14]=i,t[15]=x,t[16]=S):S=t[16];let C=S,w=n===`issues`&&b.length===0&&u.length>=2,T=n===`prs`&&C.length===0&&u.length>=2,E;t[17]!==u||t[18]!==w||t[19]!==e.cwd||t[20]!==e.environmentId?(E={environmentId:e.environmentId,cwd:e.cwd,query:u,enabled:w},t[17]=u,t[18]=w,t[19]=e.cwd,t[20]=e.environmentId,t[21]=E):E=t[21];let D=Yi(E),O;t[22]!==u||t[23]!==T||t[24]!==e.cwd||t[25]!==e.environmentId?(O={environmentId:e.environmentId,cwd:e.cwd,query:u,enabled:T},t[22]=u,t[23]=T,t[24]=e.cwd,t[25]=e.environmentId,t[26]=O):O=t[26];let k=yi(O),A;t[27]!==b||t[28]!==w||t[29]!==D?(A=w?D.data??[]:b,t[27]=b,t[28]=w,t[29]=D,t[30]=A):A=t[30];let j=A,M;t[31]!==C||t[32]!==T||t[33]!==k?(M=T?k.data??[]:C,t[31]=C,t[32]=T,t[33]=k,t[34]=M):M=t[34];let N=M,P=f.isLoading||w&&D.isLoading,F=m.isLoading||T&&k.isLoading,I;t[35]===e?I=t[36]:(I=function(t){let n=t.target.files?.[0];n&&e.onAttachFile(n),t.target.value=``},t[35]=e,t[36]=I);let L=I,R;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(R=function(e){e.preventDefault(),s(!0)},t[37]=R):R=t[37];let z=R,ee;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ee=function(){s(!1)},t[38]=ee):ee=t[38];let te=ee,B;t[39]===e?B=t[40]:(B=function(t){t.preventDefault(),s(!1);let n=t.dataTransfer.files[0];n&&e.onAttachFile(n)},t[39]=e,t[40]=B);let ne=B,re=o||void 0,ie;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,Y.jsx)(`span`,{className:`text-sm font-medium`,children:`Add context`}),t[41]=ie):ie=t[41];let V;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Attach file`,className:`text-muted-foreground hover:text-foreground`,onClick:()=>c.current?.click(),children:(0,Y.jsx)(cd,{className:`size-4`})}),t[42]=V):V=t[42];let ae;t[43]===L?ae=t[44]:(ae=(0,Y.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[ie,V,(0,Y.jsx)(`input`,{ref:c,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,onChange:L})]}),t[43]=L,t[44]=ae);let H;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>a(e.target.value),t[45]=H):H=t[45];let U;t[46]===i?U=t[47]:(U=(0,Y.jsx)(`div`,{className:`px-3 py-2 border-b border-border`,children:(0,Y.jsx)(`input`,{type:`text`,className:`w-full rounded-md bg-muted px-2 py-1 text-sm outline-none placeholder:text-muted-foreground`,placeholder:`Search…`,value:i,onChange:H})}),t[46]=i,t[47]=U);let oe;t[48]!==n||t[49]!==g||t[50]!==v||t[51]!==j||t[52]!==N||t[53]!==P||t[54]!==F||t[55]!==e||t[56]!==i?(oe=e.hasSourceControlRemote?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ai,{tabs:[{id:`issues`,label:`Issues`,count:g.length},{id:`prs`,label:`PRs`,count:v.length}],activeId:n,onSelect:e=>r(e)}),n===`issues`?(0,Y.jsx)(NK,{items:j,isLoading:P,emptyText:i.length>0?`No matching issues`:`No open issues`,onSelect:e.onSelectIssue}):(0,Y.jsx)(NK,{items:N,isLoading:F,emptyText:i.length>0?`No matching PRs`:`No open PRs`,onSelect:t=>e.onSelectChangeRequest(t)})]}):(0,Y.jsx)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground`,children:`No source-control remote detected. File attach is still available above.`}),t[48]=n,t[49]=g,t[50]=v,t[51]=j,t[52]=N,t[53]=P,t[54]=F,t[55]=e,t[56]=i,t[57]=oe):oe=t[57];let se;return t[58]!==ne||t[59]!==re||t[60]!==ae||t[61]!==U||t[62]!==oe?(se=(0,Y.jsxs)(`div`,{className:`flex w-80 flex-col`,onDragOver:z,onDragLeave:te,onDrop:ne,"data-drag-over":re,children:[ae,U,oe]}),t[58]=ne,t[59]=re,t[60]=ae,t[61]=U,t[62]=oe,t[63]=se):se=t[63],se}function FK(e){let t=(0,J.c)(15),[n,r]=(0,q.useState)(!1),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsx)(pi,{render:(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,"aria-label":`Add context`,className:`text-muted-foreground/70 hover:text-foreground/80`})}),children:(0,Y.jsx)(cd,{className:`size-4`})}),(0,Y.jsx)(Co,{side:`top`,children:`Add context`})]}),t[0]=i):i=t[0];let a,o,s;t[1]===e?(a=t[2],o=t[3],s=t[4]):(a=t=>{e.onSelectIssue(t),r(!1)},o=t=>{e.onSelectChangeRequest(t),r(!1)},s=t=>{e.onAttachFile(t),r(!1)},t[1]=e,t[2]=a,t[3]=o,t[4]=s);let c;t[5]!==e.cwd||t[6]!==e.environmentId||t[7]!==e.hasSourceControlRemote||t[8]!==a||t[9]!==o||t[10]!==s?(c=(0,Y.jsx)(hi,{align:`start`,side:`top`,className:`p-0`,children:(0,Y.jsx)(PK,{environmentId:e.environmentId,cwd:e.cwd,hasSourceControlRemote:e.hasSourceControlRemote,onSelectIssue:a,onSelectChangeRequest:o,onAttachFile:s})}),t[5]=e.cwd,t[6]=e.environmentId,t[7]=e.hasSourceControlRemote,t[8]=a,t[9]=o,t[10]=s,t[11]=c):c=t[11];let l;return t[12]!==n||t[13]!==c?(l=(0,Y.jsxs)(Gi,{open:n,onOpenChange:r,children:[i,c]}),t[12]=n,t[13]=c,t[14]=l):l=t[14],l}function IK(e){return e&&typeof e==`object`?e:null}function LK(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function RK(e){return typeof e==`boolean`?e:null}function zK(e){let t=e?.trim().match(/^(\d+(?:\.\d+)?)\s*([km]?)$/i);if(!t)return null;let n=Number(t[1]),r=t[2]?.toLowerCase()??``;if(!Number.isFinite(n)||n<=0||r===``&&!Number.isInteger(n))return null;let i=Math.round(n*(r===`m`?1e6:r===`k`?1e3:1));return Number.isSafeInteger(i)&&i>0?i:null}function BK(e){let t=e!==null&&Number.isSafeInteger(e)&&e>0?e:null;return{usedTokens:0,totalProcessedTokens:null,maxTokens:t,remainingTokens:t,usedPercentage:t===null?null:0,remainingPercentage:t===null?null:100,inputTokens:null,cachedInputTokens:null,outputTokens:null,reasoningOutputTokens:null,lastUsedTokens:null,lastInputTokens:null,lastCachedInputTokens:null,lastOutputTokens:null,lastReasoningOutputTokens:null,toolUses:null,durationMs:null,compactsAutomatically:!1}}function VK(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(!n||n.kind!==`context-window.updated`)continue;let r=IK(n.payload),i=LK(r?.usedTokens);if(i===null||i<0)continue;let a=LK(r?.maxTokens),o=a!==null&&Number.isSafeInteger(a)&&a>0?a:null,s=o!==null&&o>0?Math.min(100,i/o*100):null,c=o===null?null:Math.max(0,Math.round(o-i)),l=s===null?null:Math.max(0,100-s);return{usedTokens:i,totalProcessedTokens:LK(r?.totalProcessedTokens),maxTokens:o,remainingTokens:c,usedPercentage:s,remainingPercentage:l,inputTokens:LK(r?.inputTokens),cachedInputTokens:LK(r?.cachedInputTokens),outputTokens:LK(r?.outputTokens),reasoningOutputTokens:LK(r?.reasoningOutputTokens),lastUsedTokens:LK(r?.lastUsedTokens),lastInputTokens:LK(r?.lastInputTokens),lastCachedInputTokens:LK(r?.lastCachedInputTokens),lastOutputTokens:LK(r?.lastOutputTokens),lastReasoningOutputTokens:LK(r?.lastReasoningOutputTokens),toolUses:LK(r?.toolUses),durationMs:LK(r?.durationMs),compactsAutomatically:RK(r?.compactsAutomatically)??!1,updatedAt:n.createdAt}}return null}function HK(e,t){if(e.maxTokens!==null||t==null||!Number.isSafeInteger(t)||t<=0)return e;let n=Math.min(100,e.usedTokens/t*100);return{...e,maxTokens:t,remainingTokens:Math.max(0,t-e.usedTokens),usedPercentage:n,remainingPercentage:Math.max(0,100-n)}}function UK(e,t,n=null){let r=zK(t)??n;return HK(VK(e)??BK(r),r)}function WK(e){return e===null||!Number.isFinite(e)?`0`:e<1e3?`${Math.round(e)}`:e<1e4?`${(e/1e3).toFixed(1).replace(/\.0$/,``)}k`:e<1e6?`${Math.round(e/1e3)}k`:`${(e/1e6).toFixed(1).replace(/\.0$/,``)}m`}function GK(e){return e===null||!Number.isFinite(e)?null:e<10?`${e.toFixed(1).replace(/\.0$/,``)}%`:`${Math.round(e)}%`}function KK(e){let t=(0,J.c)(5);if(e.percent===null)return null;let n=Math.max(0,Math.min(100,e.percent)),r=n>=95?`h-full rounded-full bg-destructive`:n>=80?`h-full rounded-full bg-warning`:`h-full rounded-full bg-foreground/60`,i=`${n}%`,a;t[0]===i?a=t[1]:(a={width:i},t[0]=i,t[1]=a);let o;return t[2]!==r||t[3]!==a?(o=(0,Y.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-muted`,children:(0,Y.jsx)(`div`,{className:r,style:a})}),t[2]=r,t[3]=a,t[4]=o):o=t[4],o}function qK(e){let t=(0,J.c)(5),n;t[0]===e.window?n=t[1]:(n=el(e.window),t[0]=e.window,t[1]=n);let r=n,i=e.window.windowDurationMins===void 0?e.fallbackLabel:r.label,a;return t[2]!==i||t[3]!==e?(a=(0,Y.jsx)(rl,{...e,label:i,compact:!0}),t[2]=i,t[3]=e,t[4]=a):a=t[4],a}function JK(e){let t=(0,J.c)(54),{usage:n,rateLimits:r}=e,i=jl(),a=!!(r&&(r.primary||r.secondary||r.tertiary)),o;t[0]===n.usedPercentage?o=t[1]:(o=GK(n.usedPercentage),t[0]=n.usedPercentage,t[1]=o);let s=o,c=Math.max(0,Math.min(100,n.usedPercentage??0)),l=2*Math.PI*9.75,u=l-c/100*l,d;t[2]!==n.maxTokens||t[3]!==n.usedTokens||t[4]!==s?(d=n.maxTokens!==null&&s?`Context window ${s} used`:`Context window ${WK(n.usedTokens)} tokens used`,t[2]=n.maxTokens,t[3]=n.usedTokens,t[4]=s,t[5]=d):d=t[5];let f;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(`circle`,{cx:`12`,cy:`12`,r:9.75,fill:`none`,stroke:`color-mix(in oklab, var(--color-muted) 70%, transparent)`,strokeWidth:`3`}),t[6]=f):f=t[6];let p;t[7]===u?p=t[8]:(p=(0,Y.jsxs)(`svg`,{viewBox:`0 0 24 24`,className:`-rotate-90 absolute inset-0 h-full w-full`,"aria-hidden":`true`,children:[f,(0,Y.jsx)(`circle`,{cx:`12`,cy:`12`,r:9.75,fill:`none`,stroke:`var(--color-muted-foreground)`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:l,strokeDashoffset:u,className:`transition-[stroke-dashoffset] duration-500 ease-out motion-reduce:transition-none`})]}),t[7]=u,t[8]=p);let m;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(`relative flex h-[15px] w-[15px] items-center justify-center rounded-full bg-background text-[8px] font-medium`,`text-muted-foreground`),t[9]=m):m=t[9];let h;t[10]!==n.usedPercentage||t[11]!==n.usedTokens?(h=n.usedPercentage===null?WK(n.usedTokens):Math.round(n.usedPercentage),t[10]=n.usedPercentage,t[11]=n.usedTokens,t[12]=h):h=t[12];let g;t[13]===h?g=t[14]:(g=(0,Y.jsx)(`span`,{className:m,children:h}),t[13]=h,t[14]=g);let _;t[15]!==p||t[16]!==g?(_=(0,Y.jsxs)(`span`,{className:`relative flex h-6 w-6 items-center justify-center`,children:[p,g]}),t[15]=p,t[16]=g,t[17]=_):_=t[17];let v;t[18]!==d||t[19]!==_?(v=(0,Y.jsx)(pi,{openOnHover:!0,delay:150,closeDelay:0,render:(0,Y.jsx)(`button`,{type:`button`,className:`group inline-flex h-9 w-6 items-center justify-center rounded-full transition-opacity hover:opacity-85 sm:h-8`,"aria-label":d,children:_})}),t[18]=d,t[19]=_,t[20]=v):v=t[20];let y;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Y.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground`,children:`Context window`}),t[21]=y):y=t[21];let b;t[22]!==n.maxTokens||t[23]!==n.usedTokens||t[24]!==s?(b=n.maxTokens!==null&&s?(0,Y.jsxs)(`div`,{className:`whitespace-nowrap text-xs font-medium text-foreground`,children:[(0,Y.jsx)(`span`,{children:s}),(0,Y.jsx)(`span`,{className:`mx-1`,children:`⋅`}),(0,Y.jsx)(`span`,{children:WK(n.usedTokens)}),(0,Y.jsx)(`span`,{children:`/`}),(0,Y.jsxs)(`span`,{children:[WK(n.maxTokens??null),` context used`]})]}):(0,Y.jsxs)(`div`,{className:`whitespace-nowrap text-xs font-medium text-foreground`,children:[WK(n.usedTokens),` context used`]}),t[22]=n.maxTokens,t[23]=n.usedTokens,t[24]=s,t[25]=b):b=t[25];let x=n.maxTokens!==null&&n.usedPercentage!==null?c:null,S;t[26]===x?S=t[27]:(S=(0,Y.jsx)(KK,{percent:x}),t[26]=x,t[27]=S);let C;t[28]!==n.totalProcessedTokens||t[29]!==n.usedTokens?(C=(n.totalProcessedTokens??null)!==null&&(n.totalProcessedTokens??0)>n.usedTokens?(0,Y.jsxs)(`div`,{className:`text-xs text-muted-foreground`,children:[`Total processed: `,WK(n.totalProcessedTokens??null),` `,`tokens`]}):null,t[28]=n.totalProcessedTokens,t[29]=n.usedTokens,t[30]=C):C=t[30];let w;t[31]===n.compactsAutomatically?w=t[32]:(w=n.compactsAutomatically?(0,Y.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`Automatically compacts its context when needed.`}):null,t[31]=n.compactsAutomatically,t[32]=w);let T;t[33]!==b||t[34]!==S||t[35]!==C||t[36]!==w?(T=(0,Y.jsxs)(`div`,{className:`space-y-1.5 leading-tight`,children:[y,b,S,C,w]}),t[33]=b,t[34]=S,t[35]=C,t[36]=w,t[37]=T):T=t[37];let E;t[38]!==i||t[39]!==e.available||t[40]!==e.checkedAt||t[41]!==r||t[42]!==a?(E=a&&r?(0,Y.jsxs)(`div`,{className:`mt-2.5 space-y-1.5 border-t border-border/60 pt-2 leading-tight`,children:[(0,Y.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground`,children:`Usage limits`}),(0,Y.jsxs)(`div`,{className:`grid gap-1`,children:[r.primary?(0,Y.jsx)(qK,{checkedAt:e.checkedAt,available:e.available===!0,now:i,window:r.primary,fallbackLabel:`Short window`}):null,r.secondary?(0,Y.jsx)(qK,{checkedAt:e.checkedAt,available:e.available===!0,now:i,window:r.secondary,fallbackLabel:`Weekly`}):null,r.tertiary?(0,Y.jsx)(qK,{checkedAt:e.checkedAt,available:e.available===!0,now:i,window:r.tertiary,fallbackLabel:`Monthly`}):null]})]}):null,t[38]=i,t[39]=e.available,t[40]=e.checkedAt,t[41]=r,t[42]=a,t[43]=E):E=t[43];let D;t[44]!==e.available||t[45]!==r?(D=r?.resetCredits?(0,Y.jsxs)(`div`,{className:`phone:hidden mt-2 border-t border-border/60 pt-2 text-xs text-muted-foreground`,children:[e.available?`${r.resetCredits.availableCount} banked resets`:`Banked resets unavailable while disconnected`,(0,Y.jsx)(`div`,{children:`Review and redeem in Settings → Providers.`})]}):null,t[44]=e.available,t[45]=r,t[46]=D):D=t[46];let O;t[47]!==T||t[48]!==E||t[49]!==D?(O=(0,Y.jsxs)(hi,{tooltipStyle:!0,surface:`glass`,side:`top`,align:`end`,className:`w-64 max-w-none px-3 py-2`,children:[T,E,D]}),t[47]=T,t[48]=E,t[49]=D,t[50]=O):O=t[50];let k;return t[51]!==O||t[52]!==v?(k=(0,Y.jsxs)(Gi,{children:[v,O]}),t[51]=O,t[52]=v,t[53]=k):k=t[53],k}function YK(e){let t=(0,J.c)(35),{label:n,value:r,options:i,disabled:a,disabledReason:o,onChange:s,className:c}=e,l=a!==void 0&&a,u=`${(0,q.useId)()}-reason`,d;t[0]!==l||t[1]!==o?(d=l&&o?vl(o):null,t[0]=l,t[1]=o,t[2]=d):d=t[2];let f=d,p;if(t[3]!==i||t[4]!==r){let e=i.find(e=>e.id===r)??null;p=e?.disabled===!0&&e.disabledReason?vl(e.disabledReason):e?.description??null,t[3]=i,t[4]=r,t[5]=p}else p=t[5];let m=p,h;t[6]===c?h=t[7]:(h=G(`flex min-w-0 flex-col gap-1.5`,c),t[6]=c,t[7]=h);let g;t[8]===n?g=t[9]:(g=(0,Y.jsx)(`div`,{className:`font-medium text-muted-foreground text-xs`,children:n}),t[8]=n,t[9]=g);let _;t[10]!==f||t[11]!==u?(_=f?{"aria-describedby":u}:{},t[10]=f,t[11]=u,t[12]=_):_=t[12];let v;if(t[13]!==l||t[14]!==s||t[15]!==i||t[16]!==r){let e;t[18]!==l||t[19]!==s||t[20]!==r?(e=e=>{let t=l||(e.disabled??!1),n=e.id===r;return(0,Y.jsxs)(`button`,{type:`button`,"aria-pressed":n,disabled:t,"data-tone":e.tone??`default`,className:G(`flex min-h-11 min-w-0 basis-0 grow flex-col items-center justify-center gap-0.5 rounded-md px-1 text-center text-xs`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,n?`bg-background font-medium shadow-sm`:`text-muted-foreground`,e.tone===`caution`&&!t&&`text-orange-700 dark:text-orange-400`),"data-slot":`mobile-segmented-option`,onClick:()=>{t||s(e.id)},children:[e.icon,(0,Y.jsx)(`span`,{className:`w-full truncate`,children:e.label})]},e.id)},t[18]=l,t[19]=s,t[20]=r,t[21]=e):e=t[21],v=i.map(e),t[13]=l,t[14]=s,t[15]=i,t[16]=r,t[17]=v}else v=t[17];let y;t[22]!==n||t[23]!==_||t[24]!==v?(y=(0,Y.jsx)(`div`,{role:`group`,"aria-label":n,..._,className:`flex min-w-0 items-stretch gap-1 rounded-lg bg-muted/50 p-1`,"data-slot":`mobile-segmented-group`,children:v}),t[22]=n,t[23]=_,t[24]=v,t[25]=y):y=t[25];let b;t[26]!==f||t[27]!==u||t[28]!==m?(b=f?(0,Y.jsx)(`p`,{id:u,className:`text-muted-foreground/80 text-xs`,"data-slot":`mobile-segmented-reason`,children:f}):m?(0,Y.jsx)(`p`,{className:`text-muted-foreground text-xs`,"data-slot":`mobile-segmented-description`,children:m}):null,t[26]=f,t[27]=u,t[28]=m,t[29]=b):b=t[29];let x;return t[30]!==h||t[31]!==g||t[32]!==y||t[33]!==b?(x=(0,Y.jsxs)(`div`,{className:h,"data-slot":`mobile-segmented`,children:[g,y,b]}),t[30]=h,t[31]=g,t[32]=y,t[33]=b,t[34]=x):x=t[34],x}var XK={"approval-required":{label:`Supervised`,triggerLabel:`Supervised`,description:`Ask before commands and file changes.`,icon:Ju},"auto-accept-edits":{label:`Auto-accept edits`,triggerLabel:`Auto-accept`,description:`Auto-approve edits, ask before other actions.`,icon:us},auto:{label:`Auto`,triggerLabel:`Auto`,description:`Routine actions proceed without you; risky ones still ask.`,icon:ac},"full-access":{label:`Full access`,triggerLabel:`Full access`,description:`Allow commands and edits without prompts.`,icon:Ku}},ZK=Object.keys(XK),QK={default:{label:`Build`,triggerLabel:`Build`,description:`Make changes and run commands.`,icon:Hu},plan:{label:`Plan`,triggerLabel:`Plan`,description:`Chat toward a plan before making changes.`,icon:Eu},ask:{label:`Ask`,triggerLabel:`Ask`,description:`Read-only — answer questions without editing files.`,icon:Qu}},$K=Object.keys(QK),eq=(0,q.memo)(function(e){let t=(0,J.c)(38),n=e.disabled??!1,r=n&&e.disabledReason?e.disabledReason:void 0,i=e.open,a=e.onOpenChange,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(yl,{children:(0,Y.jsx)(xl,{children:`Session policy`})}),t[0]=o):o=t[0];let s;t[1]!==n||t[2]!==e||t[3]!==r?(s=e.showInteractionModeToggle?(0,Y.jsx)(YK,{label:`Mode`,value:e.interactionMode,disabled:n,...r?{disabledReason:r}:{},options:$K.map(t=>{let n=QK[t];return t===`ask`&&!e.askModeSupported?{id:t,label:n.label,description:kK,disabled:!0,disabledReason:kK}:{id:t,label:n.label,description:n.description}}),onChange:t=>e.onInteractionModeChange(t)}):null,t[1]=n,t[2]=e,t[3]=r,t[4]=s):s=t[4];let c=e.runtimeMode,l;t[5]===r?l=t[6]:(l=r?{disabledReason:r}:{},t[5]=r,t[6]=l);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=ZK.map(nq),t[7]=u):u=t[7];let d;t[8]===e?d=t[9]:(d=t=>e.onRuntimeModeChange(t),t[8]=e,t[9]=d);let f;t[10]!==n||t[11]!==e.runtimeMode||t[12]!==l||t[13]!==d?(f=(0,Y.jsx)(YK,{label:`Access`,value:c,disabled:n,...l,options:u,onChange:d}),t[10]=n,t[11]=e.runtimeMode,t[12]=l,t[13]=d,t[14]=f):f=t[14];let p=e.tokenMode,m;t[15]===r?m=t[16]:(m=r?{disabledReason:r}:{},t[15]=r,t[16]=m);let h;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(h=Fs.map(rq),t[17]=h):h=t[17];let g;t[18]===e?g=t[19]:(g=t=>e.onTokenModeChange(t),t[18]=e,t[19]=g);let _;t[20]!==n||t[21]!==e.tokenMode||t[22]!==m||t[23]!==g?(_=(0,Y.jsx)(YK,{label:`Tokens`,value:p,disabled:n,...m,options:h,onChange:g}),t[20]=n,t[21]=e.tokenMode,t[22]=m,t[23]=g,t[24]=_):_=t[24];let v;t[25]!==n||t[26]!==e||t[27]!==r?(v=e.showPlanToggle?(0,Y.jsx)(Cl,{label:e.planSidebarOpen?`Hide ${e.planSidebarLabel.toLowerCase()} sidebar`:`Show ${e.planSidebarLabel.toLowerCase()} sidebar`,icon:(0,Y.jsx)(Wu,{"aria-hidden":!0,className:`size-4 shrink-0`}),selected:e.planSidebarOpen,disabled:n,...r?{disabledReason:r}:{},onClick:()=>{n||(e.onOpenChange(!1),e.onTogglePlanSidebar())}}):null,t[25]=n,t[26]=e,t[27]=r,t[28]=v):v=t[28];let y;t[29]!==_||t[30]!==v||t[31]!==s||t[32]!==f?(y=(0,Y.jsx)(_l,{children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 pb-2`,"data-slot":`phone-session-policy`,children:[s,f,_,v]})}),t[29]=_,t[30]=v,t[31]=s,t[32]=f,t[33]=y):y=t[33];let b;return t[34]!==e.onOpenChange||t[35]!==e.open||t[36]!==y?(b=(0,Y.jsxs)(wl,{open:i,onOpenChange:a,label:`Session policy`,detent:`medium`,children:[o,y]}),t[34]=e.onOpenChange,t[35]=e.open,t[36]=y,t[37]=b):b=t[37],b}),tq=(0,q.memo)(function(e){let t=(0,J.c)(23),[n,r]=(0,q.useState)(!1),i=e.disabled??!1,a=XK[e.runtimeMode],o=a.icon,s=QK[e.interactionMode],c;t[0]!==i||t[1]!==e.disabledReason?(c=i&&e.disabledReason?vl(e.disabledReason):null,t[0]=i,t[1]=e.disabledReason,t[2]=c):c=t[2];let l=c,u=e.runtimeMode===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`,d;t[3]===u?d=t[4]:(d=G(`min-h-11 shrink-0 gap-1 whitespace-nowrap px-1.5 font-medium text-muted-foreground/80 hover:text-foreground/80`,u),t[3]=u,t[4]=d);let f=`Session policy: ${s.triggerLabel}, ${a.triggerLabel}`,p=l??a.description,m;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>r(!0),t[5]=m):m=t[5];let h;t[6]===o?h=t[7]:(h=(0,Y.jsx)(o,{"aria-hidden":!0,className:`size-4`}),t[6]=o,t[7]=h);let g;t[8]===a.triggerLabel?g=t[9]:(g=(0,Y.jsx)(`span`,{className:`truncate`,children:a.triggerLabel}),t[8]=a.triggerLabel,t[9]=g);let _;t[10]!==i||t[11]!==d||t[12]!==f||t[13]!==p||t[14]!==h||t[15]!==g?(_=(0,Y.jsxs)(W,{size:`xs`,variant:`ghost`,type:`button`,"data-chat-session-policy-trigger":`true`,className:d,disabled:i,"aria-label":f,title:p,onClick:m,children:[h,g]}),t[10]=i,t[11]=d,t[12]=f,t[13]=p,t[14]=h,t[15]=g,t[16]=_):_=t[16];let v;t[17]!==n||t[18]!==e?(v=(0,Y.jsx)(eq,{...e,open:n,onOpenChange:r}),t[17]=n,t[18]=e,t[19]=v):v=t[19];let y;return t[20]!==_||t[21]!==v?(y=(0,Y.jsxs)(Y.Fragment,{children:[_,v]}),t[20]=_,t[21]=v,t[22]=y):y=t[22],y});function nq(e){return e===`full-access`?{id:e,label:XK[e].label,description:XK[e].description,tone:`caution`}:{id:e,label:XK[e].label,description:XK[e].description}}function rq(e){return{id:e,label:Ns[e].label,description:Ns[e].description}}var iq=300,aq=(0,q.memo)(function(e){let t=(0,J.c)(76),n=XK[e.runtimeMode],r=n.icon,i=Ns[e.tokenMode],a=i.icon,o=QK[e.interactionMode],s=o.icon,c=vt(cq),[l,u]=(0,q.useState)(!1),[d,f]=(0,q.useState)(!1),[p,m]=(0,q.useState)(!1),[h,g]=(0,q.useState)(!1),[_,v]=(0,q.useState)(!1),[y,b]=(0,q.useState)(!1),x=(0,q.useRef)(0),S=(0,q.useRef)(0),C=(0,q.useRef)(0),w=(0,q.useRef)(null),T=(0,q.useRef)(null),E=(0,q.useRef)(null),D=lq,O;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>{x.current=performance.now()+iq,g(!0),w.current!==null&&window.clearTimeout(w.current),w.current=window.setTimeout(()=>{w.current=null,g(!1)},iq)},t[0]=O):O=t[0];let k=O,A;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>{S.current=performance.now()+iq,v(!0),T.current!==null&&window.clearTimeout(T.current),T.current=window.setTimeout(()=>{T.current=null,v(!1)},iq)},t[1]=A):A=t[1];let j=A,M;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{C.current=performance.now()+iq,b(!0),E.current!==null&&window.clearTimeout(E.current),E.current=window.setTimeout(()=>{E.current=null,b(!1)},iq)},t[2]=M):M=t[2];let N=M,P;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(P=()=>{k(),window.setTimeout(()=>u(!1),0)},t[3]=P):P=t[3];let F=P,I;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(I=()=>{j(),window.setTimeout(()=>f(!1),0)},t[4]=I):I=t[4];let L=I,R;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(R=()=>{N(),window.setTimeout(()=>m(!1),0)},t[5]=R):R=t[5];let z=R,ee,te;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(ee=()=>()=>{w.current!==null&&window.clearTimeout(w.current),T.current!==null&&window.clearTimeout(T.current),E.current!==null&&window.clearTimeout(E.current)},te=[],t[6]=ee,t[7]=te):(ee=t[6],te=t[7]),(0,q.useEffect)(ee,te);let B;t[8]!==s||t[9]!==o.description||t[10]!==o.triggerLabel||t[11]!==l||t[12]!==h||t[13]!==e||t[14]!==c?(B=e.showInteractionModeToggle?(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsxs)(Oo,{value:e.interactionMode,open:l,onOpenChange:e=>{e&&D(x)||u(e)},onValueChange:t=>{t&&(e.onInteractionModeChange(t),k(),u(!1))},children:[(0,Y.jsx)(jo,{variant:`ghost`,size:`xs`,className:G(`group/composer-label-control gap-1 px-1.5 font-medium text-muted-foreground/70 hover:text-foreground/80 sm:px-1.5`,c&&`min-w-7 justify-center px-1 sm:px-1 [&_[data-slot=select-icon]]:hidden`),"aria-label":`Interaction mode: ${o.triggerLabel}`,title:o.description,children:(0,Y.jsx)(TK,{collapsed:c,expanded:l||h,icon:(0,Y.jsx)(s,{className:`size-4 sm:size-3.5`}),label:(0,Y.jsx)(Eo,{children:o.triggerLabel})})}),(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-56 p-0.5 [&_[data-slot=select-item]]:min-h-7`,children:$K.map(t=>{let n=QK[t],r=n.icon,i=t===`ask`&&!e.askModeSupported;return(0,Y.jsx)(To,{value:t,disabled:i,className:`min-w-0 py-1.5`,onClick:F,children:(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium text-foreground`,children:[(0,Y.jsx)(r,{className:`size-3.5 shrink-0 text-muted-foreground`}),n.label]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:i?kK:n.description})]})},t)})})]})}):null,t[8]=s,t[9]=o.description,t[10]=o.triggerLabel,t[11]=l,t[12]=h,t[13]=e,t[14]=c,t[15]=B):B=t[15];let ne=e.runtimeMode,re;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>{e&&D(S)||f(e)},t[16]=re):re=t[16];let ie;t[17]===e?ie=t[18]:(ie=t=>{t&&(e.onRuntimeModeChange(t),j(),f(!1))},t[17]=e,t[18]=ie);let V=c&&`min-w-7 justify-center px-1 sm:px-1 [&_[data-slot=select-icon]]:hidden`,ae=e.runtimeMode===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`,H;t[19]!==V||t[20]!==ae?(H=G(`group/composer-label-control gap-1 px-1.5 font-medium sm:px-1.5`,V,ae),t[19]=V,t[20]=ae,t[21]=H):H=t[21];let U=`Runtime mode: ${n.triggerLabel}`,oe=d||_,se;t[22]===r?se=t[23]:(se=(0,Y.jsx)(r,{className:`size-4`}),t[22]=r,t[23]=se);let ce;t[24]===n.triggerLabel?ce=t[25]:(ce=(0,Y.jsx)(Eo,{children:n.triggerLabel}),t[24]=n.triggerLabel,t[25]=ce);let le;t[26]!==oe||t[27]!==se||t[28]!==ce||t[29]!==c?(le=(0,Y.jsx)(TK,{collapsed:c,expanded:oe,icon:se,label:ce}),t[26]=oe,t[27]=se,t[28]=ce,t[29]=c,t[30]=le):le=t[30];let ue;t[31]!==n.description||t[32]!==H||t[33]!==U||t[34]!==le?(ue=(0,Y.jsx)(jo,{variant:`ghost`,size:`xs`,className:H,"aria-label":U,title:n.description,children:le}),t[31]=n.description,t[32]=H,t[33]=U,t[34]=le,t[35]=ue):ue=t[35];let de;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-56 p-0.5 [&_[data-slot=select-item]]:min-h-7`,children:ZK.map(e=>{let t=XK[e],n=t.icon;return(0,Y.jsx)(To,{value:e,className:`min-w-0 py-1.5`,onClick:L,children:(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,Y.jsxs)(`span`,{className:G(`inline-flex items-center gap-1.5 font-medium text-foreground`,e===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`),"data-runtime-mode-option-label":e,children:[(0,Y.jsx)(n,{className:G(`size-3.5 shrink-0`,e!==`full-access`&&`text-muted-foreground`)}),t.label]}),(0,Y.jsx)(`span`,{className:G(`text-muted-foreground text-xs leading-4`,e===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`),"data-runtime-mode-option-description":e,children:t.description})]})},e)})}),t[36]=de):de=t[36];let fe;t[37]!==e.runtimeMode||t[38]!==d||t[39]!==ie||t[40]!==ue?(fe=(0,Y.jsxs)(Oo,{value:ne,open:d,onOpenChange:re,onValueChange:ie,children:[ue,de]}),t[37]=e.runtimeMode,t[38]=d,t[39]=ie,t[40]=ue,t[41]=fe):fe=t[41];let pe=e.tokenMode,me;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(me=e=>{e&&D(C)||m(e)},t[42]=me):me=t[42];let he;t[43]===e?he=t[44]:(he=t=>{t&&(e.onTokenModeChange(t),N(),m(!1))},t[43]=e,t[44]=he);let ge=c&&`min-w-7 justify-center px-1 sm:px-1`,_e=c&&`[&_[data-slot=select-icon]]:hidden`,ve;t[45]!==ge||t[46]!==_e?(ve=G(`group/composer-label-control gap-1 px-1.5 font-medium text-muted-foreground/80 hover:text-foreground/80 sm:px-1.5`,ge,_e),t[45]=ge,t[46]=_e,t[47]=ve):ve=t[47];let ye=`Token mode: ${i.triggerLabel}`,be;t[48]!==a||t[49]!==i.triggerLabel||t[50]!==p||t[51]!==y||t[52]!==c?(be=c?(0,Y.jsx)(TK,{collapsed:!0,expanded:p||y,icon:(0,Y.jsx)(a,{className:`size-4`}),label:(0,Y.jsx)(Eo,{children:i.triggerLabel})}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(a,{className:`size-4`}),(0,Y.jsx)(Eo,{children:i.triggerLabel})]}),t[48]=a,t[49]=i.triggerLabel,t[50]=p,t[51]=y,t[52]=c,t[53]=be):be=t[53];let xe;t[54]!==ve||t[55]!==ye||t[56]!==be||t[57]!==i.description?(xe=(0,Y.jsx)(jo,{variant:`ghost`,size:`xs`,className:ve,"aria-label":ye,title:i.description,children:be}),t[54]=ve,t[55]=ye,t[56]=be,t[57]=i.description,t[58]=xe):xe=t[58];let Se;t[59]===Symbol.for(`react.memo_cache_sentinel`)?(Se=(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-60 p-0.5 [&_[data-slot=select-item]]:min-h-7`,children:Fs.map(e=>{let t=Ns[e],n=t.icon;return(0,Y.jsx)(To,{value:e,className:`min-w-0 py-1.5`,onClick:z,children:(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium text-foreground`,children:[(0,Y.jsx)(n,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:t.description})]})},e)})}),t[59]=Se):Se=t[59];let Ce;t[60]!==e.tokenMode||t[61]!==he||t[62]!==xe||t[63]!==p?(Ce=(0,Y.jsxs)(Oo,{value:pe,open:p,onOpenChange:me,onValueChange:he,children:[xe,Se]}),t[60]=e.tokenMode,t[61]=he,t[62]=xe,t[63]=p,t[64]=Ce):Ce=t[64];let we;t[65]!==e.onTogglePlanSidebar||t[66]!==e.planSidebarLabel||t[67]!==e.planSidebarOpen||t[68]!==e.showPlanToggle||t[69]!==c?(we=e.showPlanToggle?(0,Y.jsx)(W,{variant:`ghost`,className:G(`group/composer-label-control shrink-0 whitespace-nowrap px-1.5 sm:px-2`,e.planSidebarOpen?`text-blue-400 hover:text-blue-300`:`text-muted-foreground/70 hover:text-foreground/80`),size:`xs`,type:`button`,onClick:e.onTogglePlanSidebar,"aria-label":e.planSidebarLabel,title:e.planSidebarOpen?`Hide ${e.planSidebarLabel.toLowerCase()} sidebar`:`Show ${e.planSidebarLabel.toLowerCase()} sidebar`,children:(0,Y.jsx)(TK,{collapsed:c,icon:(0,Y.jsx)(Wu,{className:`size-4 sm:size-3.5`}),label:e.planSidebarLabel})}):null,t[65]=e.onTogglePlanSidebar,t[66]=e.planSidebarLabel,t[67]=e.planSidebarOpen,t[68]=e.showPlanToggle,t[69]=c,t[70]=we):we=t[70];let Te;return t[71]!==fe||t[72]!==Ce||t[73]!==we||t[74]!==B?(Te=(0,Y.jsxs)(Y.Fragment,{children:[B,fe,Ce,we]}),t[71]=fe,t[72]=Ce,t[73]=we,t[74]=B,t[75]=Te):Te=t[75],Te}),oq=(0,q.memo)(function(e){let t=(0,J.c)(27),n=!e.isEnvironmentUnavailable,r;t[0]!==e.contextWindowRateLimits||t[1]!==e.contextWindowRateLimitsCheckedAt||t[2]!==e.contextWindowUsage||t[3]!==n?(r=(0,Y.jsx)(JK,{usage:e.contextWindowUsage,rateLimits:e.contextWindowRateLimits,checkedAt:e.contextWindowRateLimitsCheckedAt,available:n}),t[0]=e.contextWindowRateLimits,t[1]=e.contextWindowRateLimitsCheckedAt,t[2]=e.contextWindowUsage,t[3]=n,t[4]=r):r=t[4];let i;t[5]===e.isPreparingWorktree?i=t[6]:(i=e.isPreparingWorktree?(0,Y.jsx)(`span`,{className:`text-muted-foreground/70 text-xs`,children:`Preparing worktree...`}):null,t[5]=e.isPreparingWorktree,t[6]=i);let a=e.preserveComposerFocusOnPointerDown??!1,o;t[7]!==e.compact||t[8]!==e.hasSendableContent||t[9]!==e.isConnecting||t[10]!==e.isEnvironmentUnavailable||t[11]!==e.isPreparingWorktree||t[12]!==e.isRunning||t[13]!==e.isSendBusy||t[14]!==e.onImplementPlanInNewThread||t[15]!==e.onInterrupt||t[16]!==e.onPreviousPendingQuestion||t[17]!==e.pendingAction||t[18]!==e.promptHasText||t[19]!==e.sendDisabledReason||t[20]!==e.showPlanFollowUpPrompt||t[21]!==a?(o=(0,Y.jsx)(OK,{compact:e.compact,pendingAction:e.pendingAction,isRunning:e.isRunning,showPlanFollowUpPrompt:e.showPlanFollowUpPrompt,promptHasText:e.promptHasText,isSendBusy:e.isSendBusy,isConnecting:e.isConnecting,isEnvironmentUnavailable:e.isEnvironmentUnavailable,isPreparingWorktree:e.isPreparingWorktree,hasSendableContent:e.hasSendableContent,sendDisabledReason:e.sendDisabledReason,preserveComposerFocusOnPointerDown:a,onPreviousPendingQuestion:e.onPreviousPendingQuestion,onInterrupt:e.onInterrupt,onImplementPlanInNewThread:e.onImplementPlanInNewThread}),t[7]=e.compact,t[8]=e.hasSendableContent,t[9]=e.isConnecting,t[10]=e.isEnvironmentUnavailable,t[11]=e.isPreparingWorktree,t[12]=e.isRunning,t[13]=e.isSendBusy,t[14]=e.onImplementPlanInNewThread,t[15]=e.onInterrupt,t[16]=e.onPreviousPendingQuestion,t[17]=e.pendingAction,t[18]=e.promptHasText,t[19]=e.sendDisabledReason,t[20]=e.showPlanFollowUpPrompt,t[21]=a,t[22]=o):o=t[22];let s;return t[23]!==r||t[24]!==i||t[25]!==o?(s=(0,Y.jsxs)(Y.Fragment,{children:[r,i,o]}),t[23]=r,t[24]=i,t[25]=o,t[26]=s):s=t[26],s}),sq=(0,q.memo)(function(e){let t=(0,J.c)(85),n=Rs(y.dispatchCommand),r=!n.allowed,i=n.reason,a=xc()===`phone`,o=e.isFooterCompact?`true`:`false`,s=e.isFooterCompact?`gap-1.5`:`sm:gap-0`,c=e.hideOnMobilePendingAnswers&&`phone:hidden`,l;t[0]!==s||t[1]!==c?(l=G(`flex min-w-0 flex-nowrap items-center justify-between gap-1.5 overflow-visible px-2 pb-2 sm:px-2.5 sm:pb-2.5`,s,c),t[0]=s,t[1]=c,t[2]=l):l=t[2];let u=e.gitCwd??``,d;t[3]!==e.environmentId||t[4]!==e.hasSourceControlRemote||t[5]!==e.onAttachFile||t[6]!==e.onSelectChangeRequest||t[7]!==e.onSelectIssue||t[8]!==u?(d=(0,Y.jsx)(FK,{environmentId:e.environmentId,cwd:u,hasSourceControlRemote:e.hasSourceControlRemote,onSelectIssue:e.onSelectIssue,onSelectChangeRequest:e.onSelectChangeRequest,onAttachFile:e.onAttachFile}),t[3]=e.environmentId,t[4]=e.hasSourceControlRemote,t[5]=e.onAttachFile,t[6]=e.onSelectChangeRequest,t[7]=e.onSelectIssue,t[8]=u,t[9]=d):d=t[9];let f;t[10]===i?f=t[11]:(f=i?{disabledReason:i}:{},t[10]=i,t[11]=f);let p;t[12]===e.modelPickerIconClassName?p=t[13]:(p=e.modelPickerIconClassName?{activeProviderIconClassName:e.modelPickerIconClassName}:{},t[12]=e.modelPickerIconClassName,t[13]=p);let m;t[14]!==r||t[15]!==e.isFooterCompact||t[16]!==e.isModelPickerOpen||t[17]!==e.keybindings||t[18]!==e.lockedContinuationGroupKey||t[19]!==e.lockedProvider||t[20]!==e.modelOptions||t[21]!==e.modelOptionsByInstance||t[22]!==e.onModelPickerOpenChange||t[23]!==e.onProviderModelSelect||t[24]!==e.providerInstanceEntries||t[25]!==e.savedModelOptionsByInstance||t[26]!==e.selectedInstanceId||t[27]!==e.selectedModel||t[28]!==e.terminalOpen||t[29]!==f||t[30]!==p?(m=(0,Y.jsx)(Js,{openOnHover:!0,compact:e.isFooterCompact,activeInstanceId:e.selectedInstanceId,model:e.selectedModel,modelOptions:e.modelOptions,savedModelOptionsByInstance:e.savedModelOptionsByInstance,lockedProvider:e.lockedProvider,lockedContinuationGroupKey:e.lockedContinuationGroupKey,instanceEntries:e.providerInstanceEntries,keybindings:e.keybindings,modelOptionsByInstance:e.modelOptionsByInstance,terminalOpen:e.terminalOpen,open:e.isModelPickerOpen,triggerSize:`xs`,phoneSheet:!0,disabled:r,...f,...p,onOpenChange:e.onModelPickerOpenChange,onInstanceModelChange:e.onProviderModelSelect}),t[14]=r,t[15]=e.isFooterCompact,t[16]=e.isModelPickerOpen,t[17]=e.keybindings,t[18]=e.lockedContinuationGroupKey,t[19]=e.lockedProvider,t[20]=e.modelOptions,t[21]=e.modelOptionsByInstance,t[22]=e.onModelPickerOpenChange,t[23]=e.onProviderModelSelect,t[24]=e.providerInstanceEntries,t[25]=e.savedModelOptionsByInstance,t[26]=e.selectedInstanceId,t[27]=e.selectedModel,t[28]=e.terminalOpen,t[29]=f,t[30]=p,t[31]=m):m=t[31];let h;t[32]===e?h=t[33]:(h=(e.executionTargets?.length??0)>0&&e.selectedExecutionEnvironmentId?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Oo,{value:e.selectedExecutionEnvironmentId,disabled:e.executionTargetLocked,onValueChange:t=>{t&&e.onExecutionTargetChange?.(t)},children:[(0,Y.jsxs)(jo,{variant:`ghost`,size:`xs`,className:`max-w-40 gap-1 px-1.5 text-muted-foreground/80`,"aria-label":`Execution machine`,title:e.executionTargetLocked?`Existing threads stay on their owning machine`:`Execution machine`,children:[(0,Y.jsx)(oi,{environmentId:e.selectedExecutionEnvironmentId,className:`size-3.5 shrink-0`}),(0,Y.jsx)(Eo,{children:e.executionTargets?.find(t=>t.environmentId===e.selectedExecutionEnvironmentId)?.label??`No verified machine`})]}),(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-56 p-0.5`,children:e.executionTargets?.map(uq)})]}),!e.executionTargetLocked&&e.executionTargets?.find(t=>t.environmentId===e.selectedExecutionEnvironmentId)?.disabled?(0,Y.jsx)(`span`,{className:`shrink-0 text-destructive text-xs`,children:`No verified machine available`}):null]}):null,t[32]=e,t[33]=h);let g;t[34]!==a||t[35]!==r||t[36]!==i||t[37]!==e.askModeSupported||t[38]!==e.interactionMode||t[39]!==e.isFooterCompact||t[40]!==e.onInteractionModeChange||t[41]!==e.onRuntimeModeChange||t[42]!==e.onTogglePlanSidebar||t[43]!==e.onTokenModeChange||t[44]!==e.planSidebarLabel||t[45]!==e.planSidebarOpen||t[46]!==e.providerTraitsChips||t[47]!==e.providerTraitsMenuContent||t[48]!==e.runtimeMode||t[49]!==e.showInteractionModeToggle||t[50]!==e.showPlanSidebarToggle||t[51]!==e.tokenMode?(g=a?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(tq,{interactionMode:e.interactionMode,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,showPlanToggle:e.showPlanSidebarToggle,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,disabled:r,...i?{disabledReason:i}:{},onInteractionModeChange:e.onInteractionModeChange,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar}),e.providerTraitsMenuContent?(0,Y.jsx)(AK,{activePlan:e.showPlanSidebarToggle,interactionMode:e.interactionMode,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,showSessionPolicy:!1,traitsMenuContent:e.providerTraitsMenuContent,onInteractionModeChange:e.onInteractionModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange}):null]}):e.isFooterCompact?(0,Y.jsx)(AK,{activePlan:e.showPlanSidebarToggle,interactionMode:e.interactionMode,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,traitsMenuContent:e.providerTraitsMenuContent,onInteractionModeChange:e.onInteractionModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange}):(0,Y.jsxs)(Y.Fragment,{children:[e.providerTraitsChips,(0,Y.jsx)(aq,{showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,interactionMode:e.interactionMode,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showPlanToggle:e.showPlanSidebarToggle,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,onInteractionModeChange:e.onInteractionModeChange,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar})]}),t[34]=a,t[35]=r,t[36]=i,t[37]=e.askModeSupported,t[38]=e.interactionMode,t[39]=e.isFooterCompact,t[40]=e.onInteractionModeChange,t[41]=e.onRuntimeModeChange,t[42]=e.onTogglePlanSidebar,t[43]=e.onTokenModeChange,t[44]=e.planSidebarLabel,t[45]=e.planSidebarOpen,t[46]=e.providerTraitsChips,t[47]=e.providerTraitsMenuContent,t[48]=e.runtimeMode,t[49]=e.showInteractionModeToggle,t[50]=e.showPlanSidebarToggle,t[51]=e.tokenMode,t[52]=g):g=t[52];let _;t[53]!==g||t[54]!==d||t[55]!==m||t[56]!==h?(_=(0,Y.jsxs)(`div`,{className:`-m-0.5 flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto p-0.5 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:[d,m,h,g]}),t[53]=g,t[54]=d,t[55]=m,t[56]=h,t[57]=_):_=t[57];let v=e.isPrimaryActionsCompact?`true`:`false`,b;t[58]!==e.contextWindowRateLimits||t[59]!==e.contextWindowRateLimitsCheckedAt||t[60]!==e.contextWindowUsage||t[61]!==e.hasSendableContent||t[62]!==e.isConnecting||t[63]!==e.isEnvironmentUnavailable||t[64]!==e.isMobileViewport||t[65]!==e.isPreparingWorktree||t[66]!==e.isPrimaryActionsCompact||t[67]!==e.isRunning||t[68]!==e.isSendBusy||t[69]!==e.onImplementPlanInNewThread||t[70]!==e.onInterrupt||t[71]!==e.onPreviousPendingQuestion||t[72]!==e.pendingAction||t[73]!==e.promptHasText||t[74]!==e.sendDisabledReason||t[75]!==e.showPlanFollowUpPrompt?(b=(0,Y.jsx)(oq,{compact:e.isPrimaryActionsCompact,contextWindowUsage:e.contextWindowUsage,contextWindowRateLimits:e.contextWindowRateLimits,contextWindowRateLimitsCheckedAt:e.contextWindowRateLimitsCheckedAt,pendingAction:e.pendingAction,isRunning:e.isRunning,showPlanFollowUpPrompt:e.showPlanFollowUpPrompt,promptHasText:e.promptHasText,isSendBusy:e.isSendBusy,isConnecting:e.isConnecting,isEnvironmentUnavailable:e.isEnvironmentUnavailable,isPreparingWorktree:e.isPreparingWorktree,hasSendableContent:e.hasSendableContent,sendDisabledReason:e.sendDisabledReason,preserveComposerFocusOnPointerDown:e.isMobileViewport,onPreviousPendingQuestion:e.onPreviousPendingQuestion,onInterrupt:e.onInterrupt,onImplementPlanInNewThread:e.onImplementPlanInNewThread}),t[58]=e.contextWindowRateLimits,t[59]=e.contextWindowRateLimitsCheckedAt,t[60]=e.contextWindowUsage,t[61]=e.hasSendableContent,t[62]=e.isConnecting,t[63]=e.isEnvironmentUnavailable,t[64]=e.isMobileViewport,t[65]=e.isPreparingWorktree,t[66]=e.isPrimaryActionsCompact,t[67]=e.isRunning,t[68]=e.isSendBusy,t[69]=e.onImplementPlanInNewThread,t[70]=e.onInterrupt,t[71]=e.onPreviousPendingQuestion,t[72]=e.pendingAction,t[73]=e.promptHasText,t[74]=e.sendDisabledReason,t[75]=e.showPlanFollowUpPrompt,t[76]=b):b=t[76];let x;t[77]!==v||t[78]!==b?(x=(0,Y.jsx)(`div`,{"data-chat-composer-actions":`right`,"data-chat-composer-primary-actions-compact":v,className:`flex shrink-0 flex-nowrap items-start justify-end gap-2`,children:b}),t[77]=v,t[78]=b,t[79]=x):x=t[79];let S;return t[80]!==o||t[81]!==_||t[82]!==x||t[83]!==l?(S=(0,Y.jsxs)(`div`,{"data-chat-composer-footer":`true`,"data-chat-composer-footer-compact":o,className:l,children:[_,x]}),t[80]=o,t[81]=_,t[82]=x,t[83]=l,t[84]=S):S=t[84],S});function cq(e){return e.wideComposerControlsAutoCollapse}function lq(e){return performance.now()<e.current}function uq(e){return(0,Y.jsx)(To,{value:e.environmentId,disabled:e.disabled,children:(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(oi,{environmentId:e.environmentId,label:e.label,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.environmentId)}function dq(e,t){let{scope:n,search:r}=Pa(e),i=n===`mixed`||n===`issues`,a=n===`mixed`||n===`prs`;if(n===`jira`)return[];let o=i?Ca(t.issues,r).map(e=>({id:`source-control-issue:${e.provider}:${e.number}`,type:`source-control-issue`,summary:e,label:`#${e.number}`,description:e.title})):[],s=a?fq(t.prs,r).map(e=>({id:`source-control-pr:${e.provider}:${e.number}`,type:`source-control-pr`,summary:e,label:`#${e.number}`,description:e.title})):[];return[...o,...s]}function fq(e,t){let n=t.trim().toLowerCase();return n.length===0?e:e.filter(e=>{let t=String(e.number),r=e.title.toLowerCase();return t===n||t.startsWith(n)||r.includes(n)})}function pq(e){return e.items.length===0?null:e.currentSearchKey===e.highlightedSearchKey&&e.highlightedItemId&&e.items.some(t=>t.id===e.highlightedItemId)?e.highlightedItemId:e.items[0]?.id??null}function mq(e,t){let n=e.type===`slash-command`?e.command.toLowerCase():e.command.name.toLowerCase(),r=e.description.toLowerCase(),i=[Gs({value:n,query:t,exactBase:0,prefixBase:2,boundaryBase:4,includesBase:6,fuzzyBase:100,boundaryMarkers:[`-`,`_`,`/`]}),Gs({value:r,query:t,exactBase:20,prefixBase:22,boundaryBase:24,includesBase:26})].filter(e=>e!==null);return i.length===0?null:Math.min(...i)}function hq(e,t){let n=Ws(t,{trimLeadingPattern:/^\/+/});if(!n)return[...e];let r=[];for(let t of e){let e=mq(t,n);e!==null&&Qs(r,{item:t,score:e,tieBreaker:t.type===`slash-command`?`0\u0000${t.command}`:`1\u0000${t.command.name}\u0000${t.provider}`},1/0)}return r.map(e=>e.item)}function gq(e,t){let n=e.name.toLowerCase(),r=dE(e).toLowerCase(),i=e.shortDescription?.toLowerCase()??``,a=e.description?.toLowerCase()??``,o=e.scope?.toLowerCase()??``,s=[Gs({value:n,query:t,exactBase:0,prefixBase:2,boundaryBase:4,includesBase:6,fuzzyBase:100,boundaryMarkers:[`-`,`_`,`/`]}),Gs({value:r,query:t,exactBase:1,prefixBase:3,boundaryBase:5,includesBase:7,fuzzyBase:110}),Gs({value:i,query:t,exactBase:20,prefixBase:22,boundaryBase:24,includesBase:26}),Gs({value:a,query:t,exactBase:30,prefixBase:32,boundaryBase:34,includesBase:36}),Gs({value:o,query:t,exactBase:40,prefixBase:42,includesBase:44})].filter(e=>e!==null);return s.length===0?null:Math.min(...s)}function _q(e,t,n=1/0){let r=e.filter(e=>e.enabled),i=Ws(t,{trimLeadingPattern:/^\$+/});if(!i)return r;let a=[];for(let e of r){let t=gq(e,i);t!==null&&Qs(a,{item:e,score:t,tieBreaker:`${dE(e).toLowerCase()}\u0000${e.name}`},n)}return a.map(e=>e.item)}function vq(e){let t=(0,J.c)(5),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`}),r=(0,Y.jsx)(`path`,{d:`m3.3 7 8.7 5 8.7-5`}),i=(0,Y.jsx)(`path`,{d:`M12 22V12`}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;return t[3]===e.className?a=t[4]:(a=(0,Y.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.85`,strokeLinecap:`round`,strokeLinejoin:`round`,className:e.className,"aria-hidden":`true`,children:[n,r,i]}),t[3]=e.className,t[4]=a),a}function yq(e,t,n){if(t===`skill`)return e.length>0?[{id:`skills`,label:`Skills`,items:e}]:[];if(t!==`slash-command`||!n)return[{id:`default`,label:null,items:e}];let r=e.filter(e=>e.type===`slash-command`),i=e.filter(e=>e.type===`provider-slash-command`),a=[];return r.length>0&&a.push({id:`built-in`,label:`Built-in`,items:r}),i.length>0&&a.push({id:`provider`,label:`Provider`,items:i}),a}var bq=(0,q.memo)(function(e){let t=(0,J.c)(33),n=(0,q.useRef)(null),r=e.groupSlashCommandSections??!0,i;t[0]!==e.items||t[1]!==e.triggerKind||t[2]!==r?(i=yq(e.items,e.triggerKind,r),t[0]=e.items,t[1]=e.triggerKind,t[2]=r,t[3]=i):i=t[3];let a=i,o,s;t[4]===e.activeItemId?(o=t[5],s=t[6]):(o=()=>{e.activeItemId&&n.current&&n.current.querySelector(`[data-composer-item-id="${CSS.escape(e.activeItemId)}"]`)?.scrollIntoView({block:`nearest`})},s=[e.activeItemId],t[4]=e.activeItemId,t[5]=o,t[6]=s),(0,q.useLayoutEffect)(o,s);let c;t[7]===e?c=t[8]:(c=t=>{e.onHighlightedItemChange(typeof t==`string`?t:null)},t[7]=e,t[8]=c);let l;if(t[9]!==a||t[10]!==e.activeItemId||t[11]!==e.onHighlightedItemChange||t[12]!==e.onSelect||t[13]!==e.resolvedTheme){let n;t[15]!==e.activeItemId||t[16]!==e.onHighlightedItemChange||t[17]!==e.onSelect||t[18]!==e.resolvedTheme?(n=(t,n)=>(0,Y.jsxs)(`div`,{children:[n>0?(0,Y.jsx)(ts,{className:`my-0.5`}):null,(0,Y.jsxs)(Zo,{children:[t.label?(0,Y.jsx)(cs,{className:`px-3 pt-2 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:t.label}):null,t.items.map(t=>(0,Y.jsx)(xq,{item:t,resolvedTheme:e.resolvedTheme,isActive:e.activeItemId===t.id,onHighlight:e.onHighlightedItemChange,onSelect:e.onSelect},t.id))]})]},t.id),t[15]=e.activeItemId,t[16]=e.onHighlightedItemChange,t[17]=e.onSelect,t[18]=e.resolvedTheme,t[19]=n):n=t[19],l=a.map(n),t[9]=a,t[10]=e.activeItemId,t[11]=e.onHighlightedItemChange,t[12]=e.onSelect,t[13]=e.resolvedTheme,t[14]=l}else l=t[14];let u;t[20]===l?u=t[21]:(u=(0,Y.jsx)(ls,{className:`max-h-[clamp(4.5rem,calc(var(--app-visible-viewport-height,9999px)-12.5rem),18rem)] phone:max-h-[clamp(4.5rem,calc(var(--app-visible-viewport-height,9999px)-13.5rem),18rem)]`,children:l}),t[20]=l,t[21]=u);let d;t[22]!==e.emptyStateText||t[23]!==e.isLoading||t[24]!==e.items.length||t[25]!==e.triggerKind?(d=e.items.length===0?(0,Y.jsx)(`div`,{className:`px-3 py-2`,children:e.triggerKind===`skill`?(0,Y.jsxs)(Zo,{children:[(0,Y.jsx)(cs,{className:`px-0 pt-0 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:`Skills`}),(0,Y.jsx)(`p`,{className:`text-muted-foreground/70 text-xs`,children:e.isLoading?`Searching workspace skills...`:e.emptyStateText??`No skills found. Try / to browse provider commands.`})]}):(0,Y.jsx)(`p`,{className:`text-muted-foreground/70 text-xs`,children:e.isLoading?`Searching workspace files...`:e.emptyStateText??(e.triggerKind===`path`?`No matching files or folders.`:`No matching command.`)})}):null,t[22]=e.emptyStateText,t[23]=e.isLoading,t[24]=e.items.length,t[25]=e.triggerKind,t[26]=d):d=t[26];let f;t[27]!==u||t[28]!==d?(f=(0,Y.jsxs)(`div`,{ref:n,className:`relative overflow-hidden rounded-xl border border-border/80 bg-popover/96 shadow-lg/8 backdrop-blur-xs`,children:[u,d]}),t[27]=u,t[28]=d,t[29]=f):f=t[29];let p;return t[30]!==c||t[31]!==f?(p=(0,Y.jsx)(is,{autoHighlight:!1,mode:`none`,onItemHighlighted:c,children:f}),t[30]=c,t[31]=f,t[32]=p):p=t[32],p}),xq=(0,q.memo)(function(e){let t=(0,J.c)(46),n;t[0]!==e.item.skill||t[1]!==e.item.type?(n=e.item.type===`skill`?fE(e.item.skill):null,t[0]=e.item.skill,t[1]=e.item.type,t[2]=n):n=t[2];let r=n,i=e.item.id,a=e.item.id,o=e.isActive&&`bg-accent! text-accent-foreground!`,s;t[3]===o?s=t[4]:(s=G(`cursor-pointer select-none gap-2 hover:bg-transparent hover:text-inherit data-highlighted:bg-transparent data-highlighted:text-inherit`,o),t[3]=o,t[4]=s);let c;t[5]===e?c=t[6]:(c=()=>{e.isActive||e.onHighlight(e.item.id)},t[5]=e,t[6]=c);let l;t[7]===e?l=t[8]:(l=()=>{e.onSelect(e.item)},t[7]=e,t[8]=l);let u;t[9]!==e.item.path||t[10]!==e.item.pathKind||t[11]!==e.item.type||t[12]!==e.resolvedTheme?(u=e.item.type===`path`?(0,Y.jsx)(cE,{pathValue:e.item.path,kind:e.item.pathKind,theme:e.resolvedTheme}):null,t[9]=e.item.path,t[10]=e.item.pathKind,t[11]=e.item.type,t[12]=e.resolvedTheme,t[13]=u):u=t[13];let d;t[14]===e.item.type?d=t[15]:(d=e.item.type===`slash-command`?(0,Y.jsx)(Jo,{className:`size-4 shrink-0 text-muted-foreground/80`}):null,t[14]=e.item.type,t[15]=d);let f;t[16]===e.item.type?f=t[17]:(f=e.item.type===`provider-slash-command`?(0,Y.jsx)(`span`,{className:`inline-flex size-4 shrink-0 items-center justify-center text-muted-foreground/80`,children:(0,Y.jsx)(vq,{className:`size-3.5`})}):null,t[16]=e.item.type,t[17]=f);let p;t[18]===e.item.type?p=t[19]:(p=e.item.type===`skill`?(0,Y.jsx)(`span`,{className:`inline-flex size-4 shrink-0 items-center justify-center text-muted-foreground/80`,children:(0,Y.jsx)(vq,{className:`size-3.5`})}):null,t[18]=e.item.type,t[19]=p);let m;t[20]===e.item.type?m=t[21]:(m=e.item.type===`source-control-issue`?(0,Y.jsx)(Mi,{className:`size-4 shrink-0 text-muted-foreground/80`}):null,t[20]=e.item.type,t[21]=m);let h;t[22]===e.item.type?h=t[23]:(h=e.item.type===`source-control-pr`?(0,Y.jsx)(ui,{className:`size-4 shrink-0 text-muted-foreground/80`}):null,t[22]=e.item.type,t[23]=h);let g;t[24]===e.item.label?g=t[25]:(g=(0,Y.jsx)(`span`,{className:`shrink-0`,children:e.item.label}),t[24]=e.item.label,t[25]=g);let _;t[26]===e.item.description?_=t[27]:(_=(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-muted-foreground/70 text-xs`,children:e.item.description}),t[26]=e.item.description,t[27]=_);let v;t[28]!==g||t[29]!==_?(v=(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[g,_]}),t[28]=g,t[29]=_,t[30]=v):v=t[30];let y;t[31]===r?y=t[32]:(y=r?(0,Y.jsx)(`span`,{className:`shrink-0 pl-2 text-muted-foreground/70 text-xs`,children:r}):null,t[31]=r,t[32]=y);let b;return t[33]!==e.item.id||t[34]!==p||t[35]!==m||t[36]!==h||t[37]!==v||t[38]!==y||t[39]!==s||t[40]!==c||t[41]!==l||t[42]!==u||t[43]!==d||t[44]!==f?(b=(0,Y.jsxs)(ss,{value:i,"data-composer-item-id":a,className:s,onMouseMove:c,onMouseDown:Sq,onClick:l,children:[u,d,f,p,m,h,v,y]}),t[33]=e.item.id,t[34]=p,t[35]=m,t[36]=h,t[37]=v,t[38]=y,t[39]=s,t[40]=c,t[41]=l,t[42]=u,t[43]=d,t[44]=f,t[45]=b):b=t[45],b});function Sq(e){e.preventDefault()}var Cq=120,wq=[];function Tq(e){let t=(0,J.c)(56),{composerTrigger:n,environmentId:r,gitCwd:i,selectedProvider:a,selectedProviderStatus:o,composerHighlightedItemId:s,composerHighlightedSearchKey:c}=e,l=xc(),u=n?.kind??null,d=n?.kind===`path`?n.query:``,f=u===`path`,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p={wait:Cq},t[0]=p):p=t[0];let[m,h]=ro(d,p,Dq),g=d.length>0?m:``,_;t[1]!==g||t[2]!==r||t[3]!==i||t[4]!==f?(_={environmentId:r,cwd:i,query:g,enabled:f,limit:80},t[1]=g,t[2]=r,t[3]=i,t[4]=f,t[5]=_):_=t[5];let v=kc(_),y=v.data?.entries??wq,b=u===`source-control`,x;t[6]!==r||t[7]!==i||t[8]!==b?(x={environmentId:r,cwd:i,state:`open`,limit:50,enabled:b},t[6]=r,t[7]=i,t[8]=b,t[9]=x):x=t[9];let S=Ki(x),C;t[10]!==r||t[11]!==i||t[12]!==b?(C={environmentId:r,cwd:i,state:`open`,limit:50,enabled:b},t[10]=r,t[11]=i,t[12]=b,t[13]=C):C=t[13];let w=Ji(C),T;if(t[14]!==w.data||t[15]!==n||t[16]!==S.data||t[17]!==l||t[18]!==a||t[19]!==o?.skills||t[20]!==o?.slashCommands||t[21]!==y){bb0:{if(!n){let e;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[23]=e):e=t[23],T=e;break bb0}if(n.kind===`path`){let e;t[24]===y?e=t[25]:(e=y.map(Eq),t[24]=y,t[25]=e),T=e;break bb0}if(n.kind===`slash-command`){let e=[...window.desktopBridge?.computerBeta&&l!==`phone`?[{id:`slash:computer-use`,type:`slash-command`,command:`computer-use`,label:`/computer-use`,description:`Use this Mac for one task`}]:[],...l===`phone`?[]:[{id:`slash:btw`,type:`slash-command`,command:`btw`,label:`/btw`,description:`Ask a read-only side question while the main turn continues`}],{id:`slash:model`,type:`slash-command`,command:`model`,label:`/model`,description:`Switch response model for this thread`},{id:`slash:goal`,type:`slash-command`,command:`goal`,label:`/goal`,description:`Set a persistent goal for this thread`},{id:`slash:plan`,type:`slash-command`,command:`plan`,label:`/plan`,description:`Switch this thread into plan mode`},{id:`slash:default`,type:`slash-command`,command:`default`,label:`/default`,description:`Switch this thread back to normal build mode`}],r;t[26]===a?r=t[27]:(r=e=>({id:`provider-slash-command:${a}:${e.name}`,type:`provider-slash-command`,provider:a,command:e,label:`/${e.name}`,description:e.description??e.input?.hint??`Run provider command`}),t[26]=a,t[27]=r);let i=(o?.slashCommands??[]).map(r),s=n.query.trim().toLowerCase(),c=[...e,...i];if(!s){T=c;break bb0}T=hq(c,s);break bb0}if(n.kind===`skill`){let e;if(t[28]!==n.query||t[29]!==a||t[30]!==o?.skills){let r;t[32]===a?r=t[33]:(r=e=>({id:`skill:${a}:${e.name}`,type:`skill`,provider:a,skill:e,label:dE(e),description:e.shortDescription??e.description??(e.scope?`${e.scope} skill`:`Run provider skill`)}),t[32]=a,t[33]=r),e=_q(o?.skills??[],n.query).map(r),t[28]=n.query,t[29]=a,t[30]=o?.skills,t[31]=e}else e=t[31];T=e;break bb0}if(n.kind===`source-control`){let e;t[34]!==w.data||t[35]!==n.query||t[36]!==S.data?(e=[...dq(n.query,{issues:S.data??[],prs:w.data??[]})],t[34]=w.data,t[35]=n.query,t[36]=S.data,t[37]=e):e=t[37],T=e;break bb0}let e;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[38]=e):e=t[38],T=e}t[14]=w.data,t[15]=n,t[16]=S.data,t[17]=l,t[18]=a,t[19]=o?.skills,t[20]=o?.slashCommands,t[21]=y,t[22]=T}else T=t[22];let E=T,D=!!n,O;t[39]===n?O=t[40]:(O=n?`${n.kind}:${n.query.trim().toLowerCase()}`:null,t[39]=n,t[40]=O);let k=O,A;t[41]!==s||t[42]!==c||t[43]!==E||t[44]!==k?(A=pq({items:E,highlightedItemId:s,currentSearchKey:k,highlightedSearchKey:c}),t[41]=s,t[42]=c,t[43]=E,t[44]=k,t[45]=A):A=t[45];let j=A,M;t[46]!==j||t[47]!==E?(M=E.find(e=>e.id===j)??null,t[46]=j,t[47]=E,t[48]=M):M=t[48];let N=M,P=u===`path`&&(d.length>0&&h.state.isPending||v.isLoading||v.isFetching)||u===`source-control`&&(S.isLoading||w.isLoading),F;bb1:{if(u===`skill`){F=`No skills found. Try / to browse provider commands.`;break bb1}if(u===`source-control`){F=`No matching issues or pull requests.`;break bb1}F=u===`path`?`No matching files or folders.`:`No matching command.`}let I=F,L;return t[49]!==N||t[50]!==I||t[51]!==E||t[52]!==D||t[53]!==k||t[54]!==P?(L={composerMenuItems:E,composerMenuOpen:D,composerMenuSearchKey:k,activeComposerMenuItem:N,isComposerMenuLoading:P,composerMenuEmptyState:I},t[49]=N,t[50]=I,t[51]=E,t[52]=D,t[53]=k,t[54]=P,t[55]=L):L=t[55],L}function Eq(e){return{id:`path:${e.kind}:${e.path}`,type:`path`,path:e.path,pathKind:e.kind,label:sW(e.path),description:e.parentPath??``}}function Dq(e){return{isPending:e.isPending}}function Oq(e){let{environmentId:t,gitCwd:n,composerDraftTarget:r,addSourceControlContext:i}=e;return{handleSelectIssue:(0,q.useCallback)(async e=>{if(!t||!n)return;let a=`${e.provider}#${e.number}`;try{let o=await ea({environmentId:t,cwd:n,reference:String(e.number)}),s=M(new Date),c=M(new Date(Date.now()+3e5)),l={id:Zt(),kind:`issue`,provider:e.provider,reference:a,detail:o,fetchedAt:s,staleAfter:c},u=i(r,l);!u.added&&u.reason===`duplicate`&&Ve.add({type:`info`,title:`Already attached.`})}catch(e){let t=e instanceof Error?e.message:`unknown error`;Ve.add({type:`error`,title:`Couldn't fetch ${a}: ${t}`})}},[t,n,r,i]),handleSelectChangeRequest:(0,q.useCallback)(async e=>{if(!t||!n)return;let a=`${e.provider}#${e.number}`;try{let o=await wi({environmentId:t,cwd:n,reference:String(e.number)}),s=M(new Date),c=M(new Date(Date.now()+3e5)),l={id:Zt(),kind:`change-request`,provider:e.provider,reference:a,detail:o,fetchedAt:s,staleAfter:c},u=i(r,l);!u.added&&u.reason===`duplicate`&&Ve.add({type:`info`,title:`Already attached.`})}catch(e){let t=e instanceof Error?e.message:`unknown error`;Ve.add({type:`error`,title:`Couldn't fetch ${a}: ${t}`})}},[t,n,r,i])}}function kq(e){let t=(0,J.c)(10);if(!e.open)return null;let n;return t[0]!==e.activeItemId||t[1]!==e.emptyStateText||t[2]!==e.groupSlashCommandSections||t[3]!==e.isLoading||t[4]!==e.items||t[5]!==e.onHighlightedItemChange||t[6]!==e.onSelect||t[7]!==e.resolvedTheme||t[8]!==e.triggerKind?(n=(0,Y.jsx)(`div`,{className:`absolute inset-x-0 bottom-full z-20 mb-2 px-1`,children:(0,Y.jsx)(bq,{items:e.items,resolvedTheme:e.resolvedTheme,isLoading:e.isLoading,triggerKind:e.triggerKind,groupSlashCommandSections:e.groupSlashCommandSections,emptyStateText:e.emptyStateText,activeItemId:e.activeItemId,onHighlightedItemChange:e.onHighlightedItemChange,onSelect:e.onSelect})}),t[0]=e.activeItemId,t[1]=e.emptyStateText,t[2]=e.groupSlashCommandSections,t[3]=e.isLoading,t[4]=e.items,t[5]=e.onHighlightedItemChange,t[6]=e.onSelect,t[7]=e.resolvedTheme,t[8]=e.triggerKind,t[9]=n):n=t[9],n}function Aq(e,t){let n=t?.hasWideActions?780:620;return e!==null&&e<n}function jq(e,t){return t?.hasWideActions?e!==null&&e<780:!1}var Mq=(0,q.memo)(function(e){let t=(0,J.c)(37),{requestId:n,approvalIdentity:r,isResponding:i,onRespondToApproval:a}=e,o=Rs(y.dispatchCommand),s=i||!o.allowed,c=o.reason??void 0,l;t[0]!==r||t[1]!==a||t[2]!==n?(l=()=>void a(n,`cancel`,r),t[0]=r,t[1]=a,t[2]=n,t[3]=l):l=t[3];let u;t[4]!==s||t[5]!==c||t[6]!==l?(u=(0,Y.jsx)(W,{size:`sm`,variant:`ghost`,disabled:s,title:c,onClick:l,children:`Cancel turn`}),t[4]=s,t[5]=c,t[6]=l,t[7]=u):u=t[7];let d=o.reason??void 0,f;t[8]!==r||t[9]!==a||t[10]!==n?(f=()=>void a(n,`decline`,r),t[8]=r,t[9]=a,t[10]=n,t[11]=f):f=t[11];let p;t[12]!==s||t[13]!==d||t[14]!==f?(p=(0,Y.jsx)(W,{size:`sm`,variant:`destructive-outline`,disabled:s,title:d,onClick:f,children:`Decline`}),t[12]=s,t[13]=d,t[14]=f,t[15]=p):p=t[15];let m=o.reason??void 0,h;t[16]!==r||t[17]!==a||t[18]!==n?(h=()=>void a(n,`acceptForSession`,r),t[16]=r,t[17]=a,t[18]=n,t[19]=h):h=t[19];let g;t[20]!==s||t[21]!==m||t[22]!==h?(g=(0,Y.jsx)(W,{size:`sm`,variant:`outline`,disabled:s,title:m,onClick:h,children:`Always allow this session`}),t[20]=s,t[21]=m,t[22]=h,t[23]=g):g=t[23];let _=o.reason??void 0,v;t[24]!==r||t[25]!==a||t[26]!==n?(v=()=>void a(n,`accept`,r),t[24]=r,t[25]=a,t[26]=n,t[27]=v):v=t[27];let b;t[28]!==s||t[29]!==_||t[30]!==v?(b=(0,Y.jsx)(W,{size:`sm`,variant:`default`,disabled:s,title:_,onClick:v,children:`Approve once`}),t[28]=s,t[29]=_,t[30]=v,t[31]=b):b=t[31];let x;return t[32]!==b||t[33]!==u||t[34]!==p||t[35]!==g?(x=(0,Y.jsxs)(Y.Fragment,{children:[u,p,g,b]}),t[32]=b,t[33]=u,t[34]=p,t[35]=g,t[36]=x):x=t[36],x});function Nq(e){return e.requestKind===`command`?`Command approval requested`:e.requestKind===`file-read`?`File-read approval requested`:`File-change approval requested`}var Pq=(0,q.memo)(function(e){let t=(0,J.c)(18),{approval:n,pendingCount:r}=e,i;t[0]===n?i=t[1]:(i=Nq(n),t[0]=n,t[1]=i);let a=i,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(`span`,{className:`uppercase text-sm tracking-[0.2em]`,children:`PENDING APPROVAL`}),t[2]=o):o=t[2];let s;t[3]===a?s=t[4]:(s=(0,Y.jsx)(`span`,{className:`text-sm font-medium`,children:a}),t[3]=a,t[4]=s);let c;t[5]===r?c=t[6]:(c=r>1?(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`1/`,r]}):null,t[5]=r,t[6]=c);let l;t[7]!==s||t[8]!==c?(l=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[o,s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9];let u;t[10]===n.responseState?u=t[11]:(u=n.responseState===`submitting`||n.responseState===`uncertain`?(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-sm text-muted-foreground`,children:n.responseState===`uncertain`?`Delivery outcome is unknown. Waiting for provider settlement; do not resend.`:`Decision submitted. Waiting for provider settlement.`}):null,t[10]=n.responseState,t[11]=u);let d;t[12]===n.detail?d=t[13]:(d=n.detail?(0,Y.jsx)(`div`,{"data-testid":`pending-approval-detail`,className:`mt-2 max-h-[min(10rem,20dvh)] min-h-0 overflow-y-auto overscroll-contain whitespace-pre-wrap wrap-break-word text-sm text-muted-foreground select-text`,children:n.detail}):null,t[12]=n.detail,t[13]=d);let f;return t[14]!==l||t[15]!==u||t[16]!==d?(f=(0,Y.jsxs)(`div`,{className:`px-4 py-3.5 sm:px-5 sm:py-4`,children:[l,u,d]}),t[14]=l,t[15]=u,t[16]=d,t[17]=f):f=t[17],f}),Fq=(0,q.memo)(function(e){let t=(0,J.c)(44),{approval:n,pendingCount:r,isResponding:i,onRespondToApproval:a}=e,o=xc(),[s,c]=(0,q.useState)(null),l=o===`phone`&&s===n.requestId;o!==`phone`&&s!==null&&c(null);let u=i||n.responseState!==void 0&&n.responseState!==`retryable`,d;t[0]!==n.approvalIdentity||t[1]!==n.requestId||t[2]!==a||t[3]!==u?(d=(0,Y.jsx)(Mq,{requestId:n.requestId,approvalIdentity:n.approvalIdentity,isResponding:u,onRespondToApproval:a}),t[0]=n.approvalIdentity,t[1]=n.requestId,t[2]=a,t[3]=u,t[4]=d):d=t[4];let f=d,p;t[5]===n?p=t[6]:(p=Nq(n),t[5]=n,t[6]=p);let m;t[7]===p?m=t[8]:(m=(0,Y.jsx)(`p`,{role:`alert`,className:`sr-only`,children:p}),t[7]=p,t[8]=m);let h;t[9]!==n||t[10]!==r?(h=(0,Y.jsx)(Pq,{approval:n,pendingCount:r}),t[9]=n,t[10]=r,t[11]=h):h=t[11];let g;t[12]!==n.detail||t[13]!==n.requestId||t[14]!==o?(g=o===`phone`&&n.detail?(0,Y.jsx)(`div`,{className:`px-4 pb-1 sm:px-5`,children:(0,Y.jsxs)(W,{size:`sm`,variant:`ghost`,className:`min-h-11 text-muted-foreground`,onClick:()=>c(n.requestId),children:[(0,Y.jsx)(Mu,{"aria-hidden":!0}),` Show full detail`]})}):null,t[12]=n.detail,t[13]=n.requestId,t[14]=o,t[15]=g):g=t[15];let _;t[16]!==f||t[17]!==l?(_=l?null:(0,Y.jsx)(`div`,{"data-testid":`approval-card-actions`,className:`flex flex-wrap items-center justify-end gap-2 px-3 pb-3 sm:px-4`,children:f}),t[16]=f,t[17]=l,t[18]=_):_=t[18];let v;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(v=e=>{e||c(null)},t[19]=v):v=t[19];let y;t[20]===n?y=t[21]:(y=Nq(n),t[20]=n,t[21]=y);let b;t[22]===y?b=t[23]:(b=(0,Y.jsx)(xl,{children:y}),t[22]=y,t[23]=b);let x;t[24]===r?x=t[25]:(x=r>1?(0,Y.jsxs)(bl,{children:[`1/`,r,` pending approvals`]}):(0,Y.jsx)(bl,{className:`sr-only`,children:`Full approval detail`}),t[24]=r,t[25]=x);let S;t[26]!==b||t[27]!==x?(S=(0,Y.jsxs)(yl,{children:[b,x]}),t[26]=b,t[27]=x,t[28]=S):S=t[28];let C;t[29]===n.detail?C=t[30]:(C=(0,Y.jsx)(_l,{children:(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm text-muted-foreground select-text`,children:n.detail})}),t[29]=n.detail,t[30]=C);let w;t[31]===f?w=t[32]:(w=(0,Y.jsx)(Sl,{className:`flex-row flex-wrap justify-end gap-2`,"data-testid":`approval-card-actions`,children:f}),t[31]=f,t[32]=w);let T;t[33]!==l||t[34]!==S||t[35]!==C||t[36]!==w?(T=(0,Y.jsxs)(wl,{open:l,onOpenChange:v,label:`Approval detail`,children:[S,C,w]}),t[33]=l,t[34]=S,t[35]=C,t[36]=w,t[37]=T):T=t[37];let E;return t[38]!==T||t[39]!==m||t[40]!==h||t[41]!==g||t[42]!==_?(E=(0,Y.jsxs)(`div`,{"data-testid":`approval-card`,children:[m,h,g,_,T]}),t[38]=T,t[39]=m,t[40]=h,t[41]=g,t[42]=_,t[43]=E):E=t[43],E}),Iq=(0,q.memo)(function(e){let t=(0,J.c)(12),{pendingUserInputs:n,respondingRequestIds:r,answers:i,questionIndex:a,onToggleOption:o,onAdvance:s}=e;if(n.length===0)return null;let c=n[0];if(!c)return null;let l=c.userInputIdentity?.requestEventId??c.requestId,u;t[0]!==c.requestId||t[1]!==c.responseState||t[2]!==r?(u=r.includes(c.requestId)||c.responseState===`submitting`||c.responseState===`uncertain`,t[0]=c.requestId,t[1]=c.responseState,t[2]=r,t[3]=u):u=t[3];let d;return t[4]!==c||t[5]!==i||t[6]!==s||t[7]!==o||t[8]!==a||t[9]!==l||t[10]!==u?(d=(0,Y.jsx)(Lq,{prompt:c,isResponding:u,answers:i,questionIndex:a,onToggleOption:o,onAdvance:s},l),t[4]=c,t[5]=i,t[6]=s,t[7]=o,t[8]=a,t[9]=l,t[10]=u,t[11]=d):d=t[11],d}),Lq=(0,q.memo)(function(e){let t=(0,J.c)(28),{prompt:n,isResponding:r,answers:i,questionIndex:a,onToggleOption:o,onAdvance:s}=e,c=Zk(n.questions,i,a),l=c.activeQuestion,u=(0,q.useRef)(null),d=(0,q.useRef)(s),f,p;t[0]===s?(f=t[1],p=t[2]):(f=()=>{d.current=s},p=[s],t[0]=s,t[1]=f,t[2]=p),(0,q.useEffect)(f,p);let m,h;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>()=>{u.current!==null&&window.clearTimeout(u.current)},h=[],t[3]=m,t[4]=h):(m=t[3],h=t[4]),(0,q.useEffect)(m,h);let g=(0,q.useEffectEvent)((e,t)=>{o(e,t),!l?.multiSelect&&(u.current!==null&&window.clearTimeout(u.current),u.current=window.setTimeout(()=>{u.current=null,d.current()},200))}),_;if(t[5]!==l||t[6]!==r?(_=[l,r],t[5]=l,t[6]=r,t[7]=_):_=t[7],Vs(()=>{if(!l||r)return;let e=e=>{if(fu(e)||e.metaKey||e.ctrlKey||e.altKey)return;let t=e.target;if(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLElement&&t.closest(`[contenteditable]:not([contenteditable="false"])`))return;let n=Number.parseInt(e.key,10);if(Number.isNaN(n)||n<1||n>9)return;let r=n-1;if(r>=l.options.length)return;let i=l.options[r];i&&(e.preventDefault(),g(l.id,i.label))};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},_),!l)return null;let v;t[8]!==n.questions.length||t[9]!==a?(v=n.questions.length>1?(0,Y.jsxs)(`span`,{className:`flex h-5 items-center rounded-md bg-muted/60 px-1.5 text-[10px] font-medium tabular-nums text-muted-foreground/60`,children:[a+1,`/`,n.questions.length]}):null,t[8]=n.questions.length,t[9]=a,t[10]=v):v=t[10];let y;t[11]===l?y=t[12]:(y=(0,Y.jsx)(`span`,{className:`text-[11px] font-semibold tracking-widest text-muted-foreground/50 uppercase`,children:l.header}),t[11]=l,t[12]=y);let b;t[13]!==v||t[14]!==y?(b=(0,Y.jsx)(`div`,{className:`flex items-center gap-3`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[v,y]})}),t[13]=v,t[14]=y,t[15]=b):b=t[15];let x;t[16]===n.responseState?x=t[17]:(x=n.responseState===`uncertain`?(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:`Answer delivery is unconfirmed. Await provider confirmation or restart the turn; resending could duplicate it.`}):null,t[16]=n.responseState,t[17]=x);let S;t[18]===l?S=t[19]:(S=(0,Y.jsx)(`p`,{className:`mt-1.5 text-sm text-foreground/90`,children:l.question}),t[18]=l,t[19]=S);let C=l.multiSelect?(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground/65`,children:`Select one or more options.`}):null,w=l.options.map((e,t)=>{let n=c.selectedOptionLabels.includes(e.label),i=t<9?t+1:null;return(0,Y.jsxs)(`button`,{type:`button`,disabled:r,onClick:()=>g(l.id,e.label),className:G(`group flex w-full items-center gap-3 rounded-lg border px-3 py-2 text-left transition-all duration-150`,n?`border-blue-500/40 bg-blue-500/8 text-foreground`:`border-transparent bg-muted/20 text-foreground/80 hover:bg-muted/40 hover:border-border/40`,r&&`opacity-50 cursor-not-allowed`),children:[i===null?null:(0,Y.jsx)(`kbd`,{className:G(`flex size-5 shrink-0 items-center justify-center rounded text-[11px] font-medium tabular-nums transition-colors duration-150 pointer-coarse:hidden`,n?`bg-blue-500/20 text-blue-400`:`bg-muted/40 text-muted-foreground/50 group-hover:bg-muted/60 group-hover:text-muted-foreground/70`),children:i}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium`,children:e.label}),e.description&&e.description!==e.label?(0,Y.jsx)(`span`,{className:`ml-2 text-xs text-muted-foreground/50`,children:e.description}):null]}),n?(0,Y.jsx)(Yn,{className:`size-3.5 shrink-0 text-blue-400`}):null]},`${l.id}:${e.label}`)}),T;t[20]===w?T=t[21]:(T=(0,Y.jsx)(`div`,{className:`mt-3 space-y-1`,children:w}),t[20]=w,t[21]=T);let E;return t[22]!==x||t[23]!==S||t[24]!==C||t[25]!==T||t[26]!==b?(E=(0,Y.jsxs)(`div`,{className:`px-4 py-3 sm:px-5`,children:[b,x,S,C,T]}),t[22]=x,t[23]=S,t[24]=C,t[25]=T,t[26]=b,t[27]=E):E=t[27],E}),Rq=(0,q.memo)(function(e){let t=(0,J.c)(5),{planTitle:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(`span`,{className:`uppercase text-sm tracking-[0.2em]`,children:`Plan ready`}),t[0]=r):r=t[0];let i;t[1]===n?i=t[2]:(i=n?(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium`,children:n}):null,t[1]=n,t[2]=i);let a;return t[3]===i?a=t[4]:(a=(0,Y.jsx)(`div`,{className:`px-4 py-3.5 sm:px-5 sm:py-4`,children:(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[r,i]})}),t[3]=i,t[4]=a),a}),zq=(0,q.memo)(function(e){let t=(0,J.c)(24),n=typeof e.descriptor.currentValue==`string`?e.descriptor.currentValue:``,r;t[0]!==e.descriptor.options||t[1]!==n?(r=e.descriptor.options.find(e=>e.id===n)?.label??n,t[0]=e.descriptor.options,t[1]=n,t[2]=r):r=t[2];let i=r,a=e.disabled??!1,o=`Agent: ${i}`,s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=G(`gap-1 rounded-md px-1.5 font-medium`,`bg-muted/40 text-muted-foreground`),t[3]=s):s=t[3];let c;t[4]!==a||t[5]!==o?(c=(0,Y.jsx)(W,{size:`xs`,disabled:a,variant:`ghost`,"aria-label":o,title:`Agent`,className:s}),t[4]=a,t[5]=o,t[6]=c):c=t[6];let l;t[7]===i?l=t[8]:(l=(0,Y.jsx)(`span`,{children:i}),t[7]=i,t[8]=l);let u;t[9]!==c||t[10]!==l?(u=(0,Y.jsx)(qi,{render:c,children:l}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;t[12]!==e||t[13]!==n?(d=t=>{t&&t!==n&&e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,t))},t[12]=e,t[13]=n,t[14]=d):d=t[14];let f;t[15]===e.descriptor.options?f=t[16]:(f=e.descriptor.options.map(Bq),t[15]=e.descriptor.options,t[16]=f);let p;t[17]!==d||t[18]!==f||t[19]!==n?(p=(0,Y.jsx)(_i,{align:`start`,children:(0,Y.jsx)(Si,{value:n,onValueChange:d,children:f})}),t[17]=d,t[18]=f,t[19]=n,t[20]=p):p=t[20];let m;return t[21]!==u||t[22]!==p?(m=(0,Y.jsxs)(ka,{children:[u,p]}),t[21]=u,t[22]=p,t[23]=m):m=t[23],m});function Bq(e){return(0,Y.jsxs)(ki,{value:e.id,children:[e.label,e.isDefault?` (default)`:``]},e.id)}var Vq=(0,q.memo)(function(e){let t=(0,J.c)(24),n=typeof e.descriptor.currentValue==`string`?e.descriptor.currentValue:``,r;t[0]!==e.descriptor.options||t[1]!==n?(r=e.descriptor.options.find(e=>e.id===n)?.label??n,t[0]=e.descriptor.options,t[1]=n,t[2]=r):r=t[2];let i=r,a=e.disabled??!1,o=`Context window: ${i}`,s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=G(`gap-1 rounded-md px-1.5 font-medium`,`bg-muted/40 text-muted-foreground`),t[3]=s):s=t[3];let c;t[4]!==a||t[5]!==o?(c=(0,Y.jsx)(W,{size:`xs`,disabled:a,variant:`ghost`,"aria-label":o,title:`Context window`,className:s}),t[4]=a,t[5]=o,t[6]=c):c=t[6];let l;t[7]===i?l=t[8]:(l=(0,Y.jsx)(`span`,{children:i}),t[7]=i,t[8]=l);let u;t[9]!==c||t[10]!==l?(u=(0,Y.jsx)(qi,{render:c,children:l}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;t[12]!==e||t[13]!==n?(d=t=>{t&&t!==n&&e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,t))},t[12]=e,t[13]=n,t[14]=d):d=t[14];let f;t[15]===e.descriptor.options?f=t[16]:(f=e.descriptor.options.map(Hq),t[15]=e.descriptor.options,t[16]=f);let p;t[17]!==d||t[18]!==f||t[19]!==n?(p=(0,Y.jsx)(_i,{align:`start`,children:(0,Y.jsx)(Si,{value:n,onValueChange:d,children:f})}),t[17]=d,t[18]=f,t[19]=n,t[20]=p):p=t[20];let m;return t[21]!==u||t[22]!==p?(m=(0,Y.jsxs)(ka,{children:[u,p]}),t[21]=u,t[22]=p,t[23]=m):m=t[23],m});function Hq(e){return(0,Y.jsxs)(ki,{value:e.id,children:[e.label,e.isDefault?` (default)`:``]},e.id)}var Uq=(0,q.memo)(function(e){let t=(0,J.c)(20),n=e.descriptor.currentValue===!0,r=e.disabled??!1,i;t[0]!==n||t[1]!==e?(i=()=>{e.disabled||e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,!n))},t[0]=n,t[1]=e,t[2]=i):i=t[2];let a=n?`bg-yellow-500/15 text-yellow-800 hover:bg-yellow-500/25 dark:bg-yellow-500/20 dark:text-yellow-300 dark:hover:bg-yellow-500/30`:`text-muted-foreground/60 ring-1 ring-border ring-inset hover:bg-accent hover:text-foreground`,o;t[3]===a?o=t[4]:(o=G(`inline-flex h-7 cursor-pointer items-center justify-center gap-1 rounded-md px-1.5 font-medium text-xs outline-none transition-colors focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-64 sm:h-6 sm:text-[11px]`,a),t[3]=a,t[4]=o);let s=n?`fill-current`:void 0,c;t[5]===s?c=t[6]:(c=G(`size-3`,s),t[5]=s,t[6]=c);let l;t[7]===c?l=t[8]:(l=(0,Y.jsx)(md,{"aria-hidden":`true`,className:c}),t[7]=c,t[8]=l);let u;t[9]!==n||t[10]!==r||t[11]!==i||t[12]!==o||t[13]!==l?(u=(0,Y.jsx)(So,{render:(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Fast mode`,"aria-pressed":n,disabled:r,onClick:i,className:o,children:l})}),t[9]=n,t[10]=r,t[11]=i,t[12]=o,t[13]=l,t[14]=u):u=t[14];let d=n?`Fast mode on — click to disable`:`Fast mode off — click to enable`,f;t[15]===d?f=t[16]:(f=(0,Y.jsx)(Co,{side:`top`,children:d}),t[15]=d,t[16]=f);let p;return t[17]!==u||t[18]!==f?(p=(0,Y.jsxs)(wo,{children:[u,f]}),t[17]=u,t[18]=f,t[19]=p):p=t[19],p}),Wq=(0,q.memo)(function(e){let t=(0,J.c)(25),n=typeof e.descriptor.currentValue==`string`?e.descriptor.currentValue:``,r;t[0]!==e.descriptor.options||t[1]!==n?(r=e.descriptor.options.find(e=>e.id===n)?.label??n,t[0]=e.descriptor.options,t[1]=n,t[2]=r):r=t[2];let i=r,a=`${e.descriptor.label}: ${i}`,o=e.disabled??!1,s=e.descriptor.label,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(`gap-1 rounded-md px-1.5 font-medium`,`bg-muted/40 text-muted-foreground`),t[3]=c):c=t[3];let l;t[4]!==a||t[5]!==e.descriptor.label||t[6]!==o?(l=(0,Y.jsx)(W,{size:`xs`,disabled:o,variant:`ghost`,"aria-label":a,title:s,className:c}),t[4]=a,t[5]=e.descriptor.label,t[6]=o,t[7]=l):l=t[7];let u;t[8]===i?u=t[9]:(u=(0,Y.jsx)(`span`,{children:i}),t[8]=i,t[9]=u);let d;t[10]!==l||t[11]!==u?(d=(0,Y.jsx)(qi,{openOnHover:!0,delay:150,closeDelay:200,render:l,children:u}),t[10]=l,t[11]=u,t[12]=d):d=t[12];let f;t[13]!==e||t[14]!==n?(f=t=>{t&&t!==n&&e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,t))},t[13]=e,t[14]=n,t[15]=f):f=t[15];let p;t[16]===e.descriptor.options?p=t[17]:(p=e.descriptor.options.map(Gq),t[16]=e.descriptor.options,t[17]=p);let m;t[18]!==f||t[19]!==p||t[20]!==n?(m=(0,Y.jsx)(_i,{align:`start`,children:(0,Y.jsx)(Si,{value:n,onValueChange:f,children:p})}),t[18]=f,t[19]=p,t[20]=n,t[21]=m):m=t[21];let h;return t[22]!==d||t[23]!==m?(h=(0,Y.jsxs)(ka,{children:[d,m]}),t[22]=d,t[23]=m,t[24]=h):h=t[24],h});function Gq(e){return(0,Y.jsxs)(ki,{value:e.id,children:[e.label,e.isDefault?` (default)`:``]},e.id)}var Kq=(0,q.memo)(function(e){let t=(0,J.c)(12),n=e.descriptor.currentValue===!0,r=e.disabled??!1,i=n?`Thinking: on (click to disable)`:`Thinking: off (click to enable)`,a=n?`bg-sky-500/15 text-sky-800 dark:bg-sky-500/20 dark:text-sky-300`:`text-muted-foreground/60 ring-1 ring-border ring-inset hover:text-foreground`,o;t[0]===a?o=t[1]:(o=G(`gap-1 rounded-md px-1.5 font-medium`,a),t[0]=a,t[1]=o);let s;t[2]!==n||t[3]!==e?(s=()=>{e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,!n))},t[2]=n,t[3]=e,t[4]=s):s=t[4];let c;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(Su,{"aria-hidden":`true`,className:`size-3`}),t[5]=c):c=t[5];let l;return t[6]!==n||t[7]!==r||t[8]!==i||t[9]!==o||t[10]!==s?(l=(0,Y.jsx)(W,{size:`xs`,disabled:r,variant:`ghost`,"aria-label":`Thinking`,"aria-pressed":n,title:i,className:o,onClick:s,children:c}),t[6]=n,t[7]=r,t[8]=i,t[9]=o,t[10]=s,t[11]=l):l=t[11],l}),qq=new Set([`effort`,`reasoningEffort`,`reasoning`]),Jq=new Set([...qq,`contextWindow`,`agent`]),Yq=(0,q.memo)(function(e){let t=(0,J.c)(41),n=Rr(Xq),r;t[0]!==e||t[1]!==n?(r=t=>{if(e.disabled)return;if(`onModelOptionsChange`in e&&typeof e.onModelOptionsChange==`function`){e.onModelOptionsChange(t);return}let r=e.threadRef??e.draftId;r&&n(r,e.provider,t,{...e.instanceId?{instanceId:e.instanceId}:{},model:e.model,persistSticky:!0})},t[0]=e,t[1]=n,t[2]=r):r=t[2];let i=r,a,o,s,c,l,u,d,f,p;if(t[3]!==e.disabled||t[4]!==e.disabledReason||t[5]!==e.hideAgent||t[6]!==e.model||t[7]!==e.modelOptions||t[8]!==e.models||t[9]!==e.onPromptChange||t[10]!==e.prompt||t[11]!==e.provider||t[12]!==i){p=Symbol.for(`react.early_return_sentinel`);bb0:{let n=Ue(e.models,e.model,e.provider),r=nn({caps:n,selections:e.modelOptions});if(r.length===0){p=null;break bb0}let m=r.find(Zq),h=(m?.promptInjectedValues?.length??0)>0&&Gn(e.prompt),g;t[22]!==e.prompt||t[23]!==h?(g=h&&Gn(e.prompt.replace(/^Ultrathink:\s*/i,``)),t[22]=e.prompt,t[23]=h,t[24]=g):g=t[24];let _=g,v;t[25]===i?v=t[26]:(v=e=>{i(Ir(e))},t[25]=i,t[26]=v);let y=v,b=e=>r.find(t=>t.id===e&&t.type===`select`),x=e=>r.find(t=>t.id===e&&t.type===`boolean`),S=r.find(Qq),C=x(`fastMode`),w=b(`contextWindow`),T=x(`thinking`),E=e.hideAgent?void 0:b(`agent`),D=r.filter($q),O=e.disabled??!1,k;t[27]!==O||t[28]!==e.disabledReason?(k=O&&e.disabledReason?vl(e.disabledReason):null,t[27]=O,t[28]=e.disabledReason,t[29]=k):k=t[29],a=k,o=`flex flex-wrap items-center gap-1`,s=S?(0,Y.jsx)(Zs,{descriptor:S,descriptors:r,prompt:e.prompt,primarySelectDescriptorId:m?.id,ultrathinkInBodyText:_,ultrathinkPromptControlled:h,onChangeDescriptors:y,onPromptChange:e.onPromptChange,disabled:O}):null,c=C?(0,Y.jsx)(Uq,{descriptor:C,descriptors:r,onChangeDescriptors:y,disabled:O}):null,l=w?(0,Y.jsx)(Vq,{descriptor:w,descriptors:r,onChangeDescriptors:y,disabled:O}):null,u=T?(0,Y.jsx)(Kq,{descriptor:T,descriptors:r,onChangeDescriptors:y,disabled:O}):null,d=E?(0,Y.jsx)(zq,{descriptor:E,descriptors:r,onChangeDescriptors:y,disabled:O}):null,f=D.map(e=>(0,Y.jsx)(Wq,{descriptor:e,descriptors:r,onChangeDescriptors:y,disabled:O},e.id))}t[3]=e.disabled,t[4]=e.disabledReason,t[5]=e.hideAgent,t[6]=e.model,t[7]=e.modelOptions,t[8]=e.models,t[9]=e.onPromptChange,t[10]=e.prompt,t[11]=e.provider,t[12]=i,t[13]=a,t[14]=o,t[15]=s,t[16]=c,t[17]=l,t[18]=u,t[19]=d,t[20]=f,t[21]=p}else a=t[13],o=t[14],s=t[15],c=t[16],l=t[17],u=t[18],d=t[19],f=t[20],p=t[21];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let m;t[30]===a?m=t[31]:(m=a?(0,Y.jsx)(`span`,{className:`text-muted-foreground/80 text-xs`,"data-slot":`traits-disabled-reason`,children:a}):null,t[30]=a,t[31]=m);let h;return t[32]!==o||t[33]!==s||t[34]!==c||t[35]!==l||t[36]!==u||t[37]!==d||t[38]!==f||t[39]!==m?(h=(0,Y.jsxs)(`div`,{className:o,children:[s,c,l,u,d,f,m]}),t[32]=o,t[33]=s,t[34]=c,t[35]=l,t[36]=u,t[37]=d,t[38]=f,t[39]=m,t[40]=h):h=t[40],h});function Xq(e){return e.setProviderModelOptions}function Zq(e){return e.type===`select`}function Qq(e){return e.type===`select`&&qq.has(e.id)}function $q(e){return e.type===`select`&&!Jq.has(e.id)&&!qq.has(e.id)}function eJ(e){let{provider:t,model:n,models:r,prompt:i,modelOptions:a}=e,o=Ue(r,n,t),s=nn({caps:o,selections:a}),c=s.find(e=>e.type===`select`),l=kr(c??null),u=typeof l==`string`?l:null,d=(c?.promptInjectedValues?.length??0)>0&&Gn(i);return{provider:t,promptEffort:u,modelOptionsForDispatch:Ir(s),...d?{composerFrameClassName:`ultrathink-frame`,composerSurfaceClassName:`shadow-[0_0_0_1px_rgba(255,255,255,0.04)_inset]`,modelPickerIconClassName:`ultrathink-chroma`}:{}}}function tJ(e){let{provider:t,instanceId:n,threadRef:r,draftId:i,model:a,models:o,modelOptions:s,prompt:c,onPromptChange:l,disabled:u,disabledReason:d}=e;return r===void 0&&i===void 0||!Ys({provider:t,models:o,model:a,modelOptions:s,prompt:c,hideAgent:e.hideAgent??!1})?null:(0,Y.jsx)(qs,{hideAgent:e.hideAgent??!1,disabled:u??!1,...d?{disabledReason:d}:{},provider:t,...n?{instanceId:n}:{},models:o,...r?{threadRef:r}:{},...i?{draftId:i}:{},model:a,modelOptions:s,prompt:c,onPromptChange:l})}function nJ(e){let{provider:t,instanceId:n,threadRef:r,draftId:i,model:a,models:o,modelOptions:s,prompt:c,onPromptChange:l,disabled:u,disabledReason:d}=e;return r===void 0&&i===void 0||!Ys({provider:t,models:o,model:a,modelOptions:s,prompt:c,hideAgent:e.hideAgent??!1})?null:(0,Y.jsx)(Yq,{hideAgent:e.hideAgent??!1,disabled:u??!1,...d?{disabledReason:d}:{},provider:t,...n?{instanceId:n}:{},models:o,...r?{threadRef:r}:{},...i?{draftId:i}:{},model:a,modelOptions:s,prompt:c,onPromptChange:l})}function rJ(e){let t=e.mimeType.split(`;`,1)[0]?.trim().toLowerCase()??``,n=e.name.split(`.`).pop()?.toLowerCase();return t===`application/pdf`?`pdf`:t.startsWith(`text/`)||[`application/json`,`application/xml`,`application/javascript`].includes(t)?`text`:t!==``&&t!==`application/octet-stream`?null:n===`pdf`?`pdf`:n&&/^(txt|md|markdown|csv|tsv|json|jsonl|xml|yaml|yml|log|js|jsx|ts|tsx|css|html|htm|py|sh|toml|ini|sql|rs|go|java|c|h|cpp)$/.test(n)?`text`:null}function iJ(e){return e>=1048576?`${Math.round(e/1048576*10)/10} MB`:e>=1024?`${Math.ceil(e/1024)} KB`:`${e} B`}function aJ(e,t){if(!t||e.startsWith(`blob:`)||e.startsWith(`data:`))return e;let n=new URL(e,`http://ryco.invalid`);return n.searchParams.set(`download`,t),/^https?:/.test(e)?n.href:`${n.pathname}${n.search}${n.hash}`}function oJ(e){return e.toLowerCase().startsWith(`video/`)}var sJ=(0,q.memo)(function(e){let t=(0,J.c)(17),{attachment:n}=e,r;t[0]===n.sizeBytes?r=t[1]:(r=n.sizeBytes===void 0?null:iJ(n.sizeBytes),t[0]=n.sizeBytes,t[1]=r);let i=r,a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(mi,{className:`size-4 shrink-0 text-muted-foreground`}),t[2]=a):a=t[2];let o;t[3]===n.name?o=t[4]:(o=(0,Y.jsx)(`span`,{className:`block truncate font-medium`,children:n.name}),t[3]=n.name,t[4]=o);let s;t[5]!==n.mimeType||t[6]!==i?(s=[n.mimeType,i].filter(lJ),t[5]=n.mimeType,t[6]=i,t[7]=s):s=t[7];let c=s.join(` · `),l;t[8]===c?l=t[9]:(l=(0,Y.jsx)(`span`,{className:`block text-[10px] text-muted-foreground`,children:c}),t[8]=c,t[9]=l);let u;t[10]!==o||t[11]!==l?(u=(0,Y.jsxs)(Y.Fragment,{children:[a,(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[o,l]})]}),t[10]=o,t[11]=l,t[12]=u):u=t[12];let d=u,f;return t[13]!==n.name||t[14]!==n.previewUrl||t[15]!==d?(f=n.previewUrl?(0,Y.jsx)(`a`,{href:aJ(n.previewUrl,n.name),download:n.name,className:`flex min-h-[72px] items-center gap-2 px-3 py-3 text-left text-xs text-foreground/80`,"aria-label":`Download ${n.name}`,children:d}):(0,Y.jsx)(`div`,{className:`flex min-h-[72px] items-center gap-2 px-3 py-3 text-left text-xs text-foreground/80`,children:d}),t[13]=n.name,t[14]=n.previewUrl,t[15]=d,t[16]=f):f=t[16],f}),cJ=(0,q.memo)(function(e){let t=(0,J.c)(28),{attachment:n}=e,[r,i]=(0,q.useState)(null),{previewUrl:a,width:o,height:s}=n;if(!a||r===a){let e;return t[0]===n?e=t[1]:(e=(0,Y.jsx)(sJ,{attachment:n}),t[0]=n,t[1]=e),e}let c;t[2]===a?c=t[3]:(c=()=>i(a),t[2]=a,t[3]=c);let l;t[4]!==s||t[5]!==o?(l=o!==void 0&&s!==void 0?{width:o,height:s}:{},t[4]=s,t[5]=o,t[6]=l):l=t[6];let u=o&&s?`${o} / ${s}`:`16 / 9`,d;t[7]===u?d=t[8]:(d={aspectRatio:u},t[7]=u,t[8]=d);let f;t[9]!==a||t[10]!==c||t[11]!==l||t[12]!==d?(f=(0,Y.jsx)(`video`,{controls:!0,playsInline:!0,preload:`metadata`,src:a,onError:c,...l,style:d,className:`block h-auto w-full bg-black`}),t[9]=a,t[10]=c,t[11]=l,t[12]=d,t[13]=f):f=t[13];let p;t[14]!==n.name||t[15]!==a?(p=aJ(a,n.name),t[14]=n.name,t[15]=a,t[16]=p):p=t[16];let m=`Download ${n.name}`,h;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(mi,{className:`size-3.5 shrink-0`}),t[17]=h):h=t[17];let g;t[18]===n.name?g=t[19]:(g=(0,Y.jsx)(`span`,{className:`truncate`,children:n.name}),t[18]=n.name,t[19]=g);let _;t[20]!==n.name||t[21]!==p||t[22]!==m||t[23]!==g?(_=(0,Y.jsxs)(`a`,{href:p,download:n.name,"aria-label":m,className:`flex items-center justify-center gap-1.5 border-t border-border/60 px-3 py-2 text-[11px] text-muted-foreground transition-colors hover:text-foreground`,children:[h,g]}),t[20]=n.name,t[21]=p,t[22]=m,t[23]=g,t[24]=_):_=t[24];let v;return t[25]!==f||t[26]!==_?(v=(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[f,_]}),t[25]=f,t[26]=_,t[27]=v):v=t[27],v});function lJ(e){return e!==null}var uJ=(0,q.lazy)(()=>r(()=>import(`./PdfAttachmentPreview-CmCBedSk.js`),[]));function dJ({src:e}){let[t,n]=(0,q.useState)(),[r,i]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{let t=new AbortController;return(async()=>{let r=await fetch(e,{signal:t.signal,credentials:`include`});if(!r.ok||!r.body)throw Error(`Unavailable`);let i=r.body.getReader(),a=[],o=0;try{for(;;){let e=await i.read();if(e.done)break;if(o+=e.value.length,o>524288)throw Error(`Too large`);a.push(e.value)}}finally{await i.cancel()}let s=new TextDecoder(`utf-8`,{fatal:!0}).decode(await new Blob(a).arrayBuffer());if(s.includes(`\0`))throw Error(`Binary file`);t.signal.aborted||n(s)})().catch(()=>{t.signal.aborted||i(!0)}),()=>t.abort()},[e]),r?(0,Y.jsx)(`p`,{role:`status`,className:`p-6 text-sm text-muted-foreground`,children:`This file cannot be previewed as UTF-8 text. Download it to open it.`}):t===void 0?(0,Y.jsx)(`p`,{role:`status`,className:`p-6`,children:`Loading preview…`}):(0,Y.jsx)(`pre`,{className:`min-h-0 flex-1 overflow-auto whitespace-pre-wrap break-words p-6 font-mono text-xs`,children:t})}function fJ(e){let t=(0,J.c)(29),{attachment:n,open:r,onOpenChange:i}=e,a=n.previewUrl,o;t[0]===n?o=t[1]:(o=rJ(n),t[0]=n,t[1]=o);let s=o,c;t[2]===n.name?c=t[3]:(c=(0,Y.jsx)(Ri,{className:`truncate text-base`,title:n.name,children:n.name}),t[2]=n.name,t[3]=c);let l;t[4]===n.sizeBytes?l=t[5]:(l=iJ(n.sizeBytes),t[4]=n.sizeBytes,t[5]=l);let u=s===`text`?` · Text preview`:` · PDF preview`,d;t[6]!==l||t[7]!==u?(d=(0,Y.jsxs)(qa,{children:[l,u]}),t[6]=l,t[7]=u,t[8]=d):d=t[8];let f;t[9]!==n.name||t[10]!==a?(f=a&&(0,Y.jsx)(`a`,{className:`w-fit text-xs underline underline-offset-4`,href:aJ(a,n.name),download:n.name,"aria-label":`Download ${n.name}`,children:`Download`}),t[9]=n.name,t[10]=a,t[11]=f):f=t[11];let p;t[12]!==c||t[13]!==d||t[14]!==f?(p=(0,Y.jsxs)(ta,{className:`shrink-0 border-b pr-12`,children:[c,d,f]}),t[12]=c,t[13]=d,t[14]=f,t[15]=p):p=t[15];let m;t[16]!==n.name||t[17]!==n.sizeBytes||t[18]!==s||t[19]!==r||t[20]!==a?(m=r&&a&&(s===`pdf`?(0,Y.jsx)(q.Suspense,{fallback:(0,Y.jsx)(`p`,{role:`status`,className:`p-6`,children:`Loading PDF viewer…`}),children:(0,Y.jsx)(uJ,{src:a,name:n.name},a)}):n.sizeBytes>524288?(0,Y.jsx)(`p`,{role:`status`,className:`p-6 text-sm`,children:`Text previews are limited to 512 KB. Download this file to open it.`}):(0,Y.jsx)(dJ,{src:a},a)),t[16]=n.name,t[17]=n.sizeBytes,t[18]=s,t[19]=r,t[20]=a,t[21]=m):m=t[21];let h;t[22]!==p||t[23]!==m?(h=(0,Y.jsxs)(ia,{className:`h-[80dvh] max-w-5xl overflow-hidden`,bottomStickOnMobile:!1,children:[p,m]}),t[22]=p,t[23]=m,t[24]=h):h=t[24];let g;return t[25]!==i||t[26]!==r||t[27]!==h?(g=(0,Y.jsx)(vi,{open:r,onOpenChange:i,children:h}),t[25]=i,t[26]=r,t[27]=h,t[28]=g):g=t[28],g}function pJ(e){let t=(0,J.c)(19),{attachment:n,initiallyOpen:r}=e,[i,a]=(0,q.useState)(r!==void 0&&r),o=(0,q.useRef)(void 0),[s,c]=(0,q.useState)(),l,u;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>()=>{o.current&&URL.revokeObjectURL(o.current)},u=[],t[0]=l,t[1]=u):(l=t[0],u=t[1]),(0,q.useEffect)(l,u);let d;t[2]===n?d=t[3]:(d=e=>{o.current&&URL.revokeObjectURL(o.current),o.current=e&&n.file?URL.createObjectURL(n.file):void 0,c(o.current),a(e)},t[2]=n,t[3]=d);let f=d;if(!rJ(n)||!n.file&&!n.previewUrl)return null;let p=`Preview ${n.name}`,m;t[4]===f?m=t[5]:(m=()=>f(!0),t[4]=f,t[5]=m);let h;t[6]!==p||t[7]!==m?(h=(0,Y.jsx)(W,{variant:`ghost`,size:`sm`,"aria-label":p,onClick:m,children:`Preview`}),t[6]=p,t[7]=m,t[8]=h):h=t[8];let g=s??n.previewUrl,_;t[9]!==n||t[10]!==g?(_={...n,previewUrl:g},t[9]=n,t[10]=g,t[11]=_):_=t[11];let v;t[12]!==f||t[13]!==i||t[14]!==_?(v=(0,Y.jsx)(fJ,{attachment:_,open:i,onOpenChange:f}),t[12]=f,t[13]=i,t[14]=_,t[15]=v):v=t[15];let y;return t[16]!==v||t[17]!==h?(y=(0,Y.jsxs)(Y.Fragment,{children:[h,v]}),t[16]=v,t[17]=h,t[18]=y):y=t[18],y}function mJ(e,t){let n=e.flatMap(e=>e.previewUrl?[{id:e.id,src:e.previewUrl,name:e.name,width:e.width,height:e.height}]:[]);if(n.length===0)return null;let r=n.findIndex(e=>e.id===t);return r<0?null:{images:n.map(e=>({src:e.src,name:e.name,...e.width===void 0?{}:{width:e.width},...e.height===void 0?{}:{height:e.height}})),index:r}}function hJ(e){let t=e.indexOf(`#`);return t<0||e.slice(0,t).includes(`/`)?e:e.slice(t)}function gJ(e){let t=(0,J.c)(36),{context:n,onRemove:r}=e,i;t[0]===n.reference?i=t[1]:(i=hJ(n.reference),t[0]=n.reference,t[1]=i);let a=i,o=n.detail.title,s=n.detail.truncated,c;t[2]!==n.detail||t[3]!==n.kind?(c=n.kind===`change-request`&&`baseRefName`in n.detail?Oa(n.detail):null,t[2]=n.detail,t[3]=n.kind,t[4]=c):c=t[4];let l=c,u=n.kind===`change-request`?ui:Mi,d=`body`in n.detail&&typeof n.detail.body==`string`?n.detail.body:null,f=n.id,p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(mE,`size-3.5`),t[5]=p):p=t[5];let m;t[6]===u?m=t[7]:(m=(0,Y.jsx)(u,{className:p,"aria-hidden":`true`}),t[6]=u,t[7]=m);let h;t[8]===a?h=t[9]:(h=(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:a}),t[8]=a,t[9]=h);let g;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(g=G(hE,`max-w-32`),t[10]=g):g=t[10];let _;t[11]===o?_=t[12]:(_=(0,Y.jsx)(`span`,{className:g,children:o}),t[11]=o,t[12]=_);let v;t[13]===s?v=t[14]:(v=s?(0,Y.jsx)(`span`,{"aria-label":`Context truncated`,className:`ml-0.5 shrink-0 rounded-sm bg-warning/20 px-0.5 text-[9px] font-semibold uppercase leading-tight text-warning-foreground`,children:`truncated`}):null,t[13]=s,t[14]=v);let y;t[15]===l?y=t[16]:(y=l?(0,Y.jsx)(Na,{view:l,mode:`compact`}):null,t[15]=l,t[16]=y);let b;t[17]!==n.id||t[18]!==r?(b=()=>r(n.id),t[17]=n.id,t[18]=r,t[19]=b):b=t[19];let x;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsx)(Ut,{className:`size-3`,"aria-hidden":`true`}),t[20]=x):x=t[20];let S;t[21]===b?S=t[22]:(S=(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Remove context`,className:vE,onClick:b,children:x}),t[21]=b,t[22]=S);let C;t[23]!==n.id||t[24]!==S||t[25]!==m||t[26]!==h||t[27]!==_||t[28]!==v||t[29]!==y?(C=(0,Y.jsx)(So,{render:(0,Y.jsxs)(`span`,{className:pE,"data-context-id":f,children:[m,h,_,v,y,S]})}),t[23]=n.id,t[24]=S,t[25]=m,t[26]=h,t[27]=_,t[28]=v,t[29]=y,t[30]=C):C=t[30];let w;t[31]===d?w=t[32]:(w=d?(0,Y.jsx)(Co,{side:`top`,className:`max-w-80 whitespace-pre-wrap leading-tight`,children:d}):null,t[31]=d,t[32]=w);let T;return t[33]!==C||t[34]!==w?(T=(0,Y.jsxs)(wo,{children:[C,w]}),t[33]=C,t[34]=w,t[35]=T):T=t[35],T}var _J=(0,q.memo)(function(e){let t=(0,J.c)(79),{editorRef:n,isComposerCollapsedMobile:r,hasComposerHeader:i,isComposerApprovalState:a,resolvedTheme:o,composerMenuOpen:s,composerMenuItems:c,isComposerMenuLoading:l,composerTriggerKind:u,composerTrigger:d,composerMenuEmptyState:f,activeComposerMenuItemId:p,onComposerMenuItemHighlighted:m,onSelectComposerItem:h,composerSourceControlContexts:g,onRemoveSourceControlContext:_,composerImages:v,nonPersistedComposerImageIdSet:y,fileUploadRecords:b,onExpandImage:x,onRemoveImage:S,onRetryFileUpload:C,onReattachFile:w,pendingUserInputCount:T,prompt:E,composerCursor:D,composerTerminalContexts:O,skills:k,showMobilePendingAnswerActions:A,onRemoveTerminalContext:j,onPromptChange:M,onComposerCommandKey:N,onComposerPaste:P,activePendingProgress:F,showPlanFollowUpPrompt:I,activeProposedPlan:L,environmentUnavailable:R,phase:z,isConnecting:ee,isEditorDisabled:te,showCollapsedSendAction:B,collapsedSendActionLabel:ne,collapsedSendActionDisabled:re,onCollapsedSend:ie,isSendBusy:V,pendingPrimaryAction:ae,onPreviousPendingQuestion:H,onInterrupt:U,onImplementPlanInNewThread:oe}=e,se=i?`pt-2.5 sm:pt-3`:`pt-3.5 sm:pt-4`,ce;t[0]===se?ce=t[1]:(ce=G(`relative px-3 pb-2 sm:px-4`,se),t[0]=se,t[1]=ce);let le=s&&!a,ue;t[2]===d?ue=t[3]:(ue=d?.kind===`slash-command`&&d.query.trim().length===0,t[2]=d,t[3]=ue);let de;t[4]!==p||t[5]!==f||t[6]!==c||t[7]!==u||t[8]!==l||t[9]!==m||t[10]!==h||t[11]!==o||t[12]!==le||t[13]!==ue?(de=(0,Y.jsx)(kq,{open:le,items:c,resolvedTheme:o,isLoading:l,triggerKind:u,groupSlashCommandSections:ue,emptyStateText:f,activeItemId:p,onHighlightedItemChange:m,onSelect:h}),t[4]=p,t[5]=f,t[6]=c,t[7]=u,t[8]=l,t[9]=m,t[10]=h,t[11]=o,t[12]=le,t[13]=ue,t[14]=de):de=t[14];let fe;t[15]!==g||t[16]!==a||t[17]!==r||t[18]!==_||t[19]!==T?(fe=!r&&!a&&T===0&&g.length>0&&(0,Y.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-1.5`,children:g.map(e=>(0,Y.jsx)(gJ,{context:e,onRemove:_},e.id))}),t[15]=g,t[16]=a,t[17]=r,t[18]=_,t[19]=T,t[20]=fe):fe=t[20];let pe;t[21]!==v||t[22]!==b||t[23]!==a||t[24]!==r||t[25]!==y||t[26]!==x||t[27]!==w||t[28]!==S||t[29]!==C||t[30]!==T?(pe=!r&&!a&&T===0&&v.length>0&&(0,Y.jsx)(`div`,{className:`mb-3 flex flex-wrap gap-2`,children:v.map(e=>e.type===`file`?(0,Y.jsx)(vJ,{image:e,status:b.get(e.id)?.status,onRemove:S,onRetry:C,onReattach:w},e.id):(0,Y.jsxs)(`div`,{className:`relative h-16 w-16 overflow-hidden rounded-lg border border-border/80 bg-background`,children:[e.previewUrl?(0,Y.jsx)(`button`,{type:`button`,className:`h-full w-full cursor-zoom-in`,"aria-label":`Preview ${e.name}`,onClick:()=>{let t=mJ(v,e.id);t&&x(t)},children:(0,Y.jsx)(`img`,{src:e.previewUrl,alt:e.name,className:`h-full w-full object-cover`})}):(0,Y.jsx)(`div`,{className:`flex h-full w-full items-center justify-center px-1 text-center text-[10px] text-muted-foreground/70`,children:e.name}),y.has(e.id)&&(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsx)(`span`,{role:`img`,"aria-label":`Draft attachment may not persist`,className:`absolute left-1 top-1 inline-flex items-center justify-center rounded bg-background/85 p-0.5 text-amber-600`,children:(0,Y.jsx)(sn,{className:`size-3`})})}),(0,Y.jsx)(Co,{side:`top`,className:`max-w-64 whitespace-normal leading-tight`,children:`Draft attachment could not be saved locally and may be lost on navigation.`})]}),(0,Y.jsx)(W,{variant:`ghost`,size:`icon-xs`,className:`absolute right-1 top-1 bg-background/80 hover:bg-background/90`,onClick:()=>S(e.id),"aria-label":`Remove ${e.name}`,children:(0,Y.jsx)(Ut,{})})]},e.id))}),t[21]=v,t[22]=b,t[23]=a,t[24]=r,t[25]=y,t[26]=x,t[27]=w,t[28]=S,t[29]=C,t[30]=T,t[31]=pe):pe=t[31];let me=B&&`flex items-center gap-2`,he;t[32]===me?he=t[33]:(he=G(`relative`,me),t[32]=me,t[33]=he);let ge=a?``:F?F.customAnswer:E,_e;t[34]!==O||t[35]!==a||t[36]!==T?(_e=!a&&T===0?O:[],t[34]=O,t[35]=a,t[36]=T,t[37]=_e):_e=t[37];let ve;t[38]===A?ve=t[39]:(ve=A?{className:`phone:pb-11`}:{},t[38]=A,t[39]=ve);let ye=a?`Resolve this approval request to continue`:F?r?`Write custom answer`:`Type your own answer, or leave this blank to use the selected option`:I&&L?r?`Add plan feedback`:`Add feedback to refine the plan, or leave this blank to implement it`:R?`${R.label} is ${R.connectionState===`connecting`?`connecting`:`disconnected`}`:z===`disconnected`?`Ask for follow-up changes or attach images`:r?`Ask anything...`:`Ask anything, @tag files/folders, or use / to show available commands`,be;t[40]!==D||t[41]!==n||t[42]!==r||t[43]!==te||t[44]!==N||t[45]!==P||t[46]!==M||t[47]!==j||t[48]!==k||t[49]!==_e||t[50]!==ve||t[51]!==ye||t[52]!==ge?(be=(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Y.jsx)(oG,{ref:n,collapsed:r,value:ge,cursor:D,terminalContexts:_e,skills:k,...ve,onRemoveTerminalContext:j,onChange:M,onCommandKeyDown:N,onPaste:P,placeholder:ye,disabled:te})}),t[40]=D,t[41]=n,t[42]=r,t[43]=te,t[44]=N,t[45]=P,t[46]=M,t[47]=j,t[48]=k,t[49]=_e,t[50]=ve,t[51]=ye,t[52]=ge,t[53]=be):be=t[53];let xe;t[54]!==re||t[55]!==ne||t[56]!==ie||t[57]!==B?(xe=B?(0,Y.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary/90 text-primary-foreground disabled:opacity-30`,disabled:re,"aria-label":ne,onPointerDown:yJ,onClick:e=>{e.stopPropagation(),ie()},children:(0,Y.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,Y.jsx)(`path`,{d:`M8 3L8 13M8 3L4 7M8 3L12 7`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})})}):null,t[54]=re,t[55]=ne,t[56]=ie,t[57]=B,t[58]=xe):xe=t[58];let Se;t[59]!==R||t[60]!==ee||t[61]!==V||t[62]!==oe||t[63]!==U||t[64]!==H||t[65]!==ae||t[66]!==A?(Se=A?(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-actions":`true`,className:`absolute bottom-0 right-0 flex justify-end`,children:(0,Y.jsx)(OK,{compact:!0,pendingAction:ae,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:V,isConnecting:ee,isEnvironmentUnavailable:R!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:H,onInterrupt:U,onImplementPlanInNewThread:oe})}):null,t[59]=R,t[60]=ee,t[61]=V,t[62]=oe,t[63]=U,t[64]=H,t[65]=ae,t[66]=A,t[67]=Se):Se=t[67];let Ce;t[68]!==be||t[69]!==xe||t[70]!==Se||t[71]!==he?(Ce=(0,Y.jsxs)(`div`,{className:he,children:[be,xe,Se]}),t[68]=be,t[69]=xe,t[70]=Se,t[71]=he,t[72]=Ce):Ce=t[72];let we;return t[73]!==ce||t[74]!==Ce||t[75]!==de||t[76]!==fe||t[77]!==pe?(we=(0,Y.jsxs)(`div`,{className:ce,children:[de,fe,pe,Ce]}),t[73]=ce,t[74]=Ce,t[75]=de,t[76]=fe,t[77]=pe,t[78]=we):we=t[78],we}),vJ=(0,q.memo)(function(e){let t=(0,J.c)(37),{image:n,status:r,onRemove:i,onRetry:a,onReattach:o}=e,s;t[0]!==n.expiresAt||t[1]!==n.uploadToken?(s=n.uploadToken!==void 0&&n.expiresAt!==void 0&&er(n.expiresAt,Date.now()),t[0]=n.expiresAt,t[1]=n.uploadToken,t[2]=s):s=t[2];let c=s,l=r===void 0?n.file===null&&!c:r.kind===`needsReattach`,u=r?.kind===`uploading`||r?.kind===`pending`,d=r?.kind===`uploaded`,f=r?.kind===`uploading`?r.progress:null,p=l?`reattach`:u?`uploading`:d?`uploaded`:`ready`,m;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(mi,{className:`size-4 shrink-0 text-muted-foreground`}),t[3]=m):m=t[3];let h;t[4]===n.name?h=t[5]:(h=(0,Y.jsx)(`span`,{className:`block truncate text-xs font-medium`,children:n.name}),t[4]=n.name,t[5]=h);let g;t[6]!==n.id||t[7]!==n.name||t[8]!==n.sizeBytes||t[9]!==d||t[10]!==u||t[11]!==l||t[12]!==o||t[13]!==a||t[14]!==f||t[15]!==r?(g=l?(0,Y.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] text-amber-600`,children:[(0,Y.jsx)(`span`,{children:`Attach again to send`}),(0,Y.jsxs)(`button`,{type:`button`,className:`cursor-pointer font-medium underline underline-offset-2`,onClick:()=>o(n.id),"aria-label":`Attach ${n.name} again`,children:[(0,Y.jsx)(cd,{className:`inline size-3 align-[-2px]`}),` Attach again`]})]}):r?.kind===`failed`?(0,Y.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] text-destructive`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 truncate`,title:r.message,"aria-label":r.message,children:r.label??`Upload failed`}),(0,Y.jsxs)(`button`,{type:`button`,className:`shrink-0 cursor-pointer whitespace-nowrap font-medium underline underline-offset-2`,onClick:()=>a(n.id),"aria-label":`Retry uploading ${n.name}`,children:[(0,Y.jsx)(ds,{className:`inline size-3 align-[-2px]`}),` Retry`]})]}):u?(0,Y.jsxs)(`span`,{className:`block text-[10px] text-muted-foreground`,children:[`Uploading`,f===null?`…`:` ${Math.round(f*100)}%`]}):(0,Y.jsxs)(`span`,{className:`block text-[10px] text-muted-foreground`,children:[iJ(n.sizeBytes),d?` · Uploaded`:``]}),t[6]=n.id,t[7]=n.name,t[8]=n.sizeBytes,t[9]=d,t[10]=u,t[11]=l,t[12]=o,t[13]=a,t[14]=f,t[15]=r,t[16]=g):g=t[16];let _;t[17]!==h||t[18]!==g?(_=(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[h,g]}),t[17]=h,t[18]=g,t[19]=_):_=t[19];let v;t[20]===f?v=t[21]:(v=f!==null&&(0,Y.jsx)(`span`,{className:`absolute bottom-0 left-0 h-0.5 w-full bg-muted`,children:(0,Y.jsx)(`span`,{className:`block h-full bg-primary transition-[width] duration-200`,style:{width:`${Math.round(f*100)}%`}})}),t[20]=f,t[21]=v);let y;t[22]===n?y=t[23]:(y=(0,Y.jsx)(pJ,{attachment:n}),t[22]=n,t[23]=y);let b;t[24]!==n.id||t[25]!==i?(b=()=>i(n.id),t[24]=n.id,t[25]=i,t[26]=b):b=t[26];let x=`Remove ${n.name}`,S;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Y.jsx)(Ut,{}),t[27]=S):S=t[27];let C;t[28]!==x||t[29]!==b?(C=(0,Y.jsx)(W,{variant:`ghost`,size:`icon-xs`,className:`absolute right-1 top-1 bg-background/80 hover:bg-background/90`,onClick:b,"aria-label":x,children:S}),t[28]=x,t[29]=b,t[30]=C):C=t[30];let w;return t[31]!==C||t[32]!==p||t[33]!==_||t[34]!==v||t[35]!==y?(w=(0,Y.jsxs)(`div`,{className:`relative flex h-16 min-w-44 max-w-56 items-center gap-2 overflow-hidden rounded-lg border border-border/80 bg-background px-3 py-2`,"data-composer-file-state":p,children:[m,_,v,y,C]}),t[31]=C,t[32]=p,t[33]=_,t[34]=v,t[35]=y,t[36]=w):w=t[36],w});function yJ(e){return e.preventDefault()}function bJ(e){let t=(0,J.c)(11),{label:n,items:r,className:i}=e;if(r.length===0)return null;let a;t[0]===i?a=t[1]:(a=G(`relative min-w-0`,i),t[0]=i,t[1]=a);let o;t[2]===r?o=t[3]:(o=r.map(xJ),t[2]=r,t[3]=o);let s;t[4]!==n||t[5]!==o?(s=(0,Y.jsx)(`div`,{role:`group`,"aria-label":n,className:`flex min-w-0 items-center gap-1.5 overflow-x-auto overscroll-x-contain pe-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,"data-slot":`mobile-context-strip-rail`,children:o}),t[4]=n,t[5]=o,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-y-0 end-0 w-4 bg-gradient-to-l from-background/80 to-transparent`,"data-slot":`mobile-context-strip-edge`}),t[7]=c):c=t[7];let l;return t[8]!==a||t[9]!==s?(l=(0,Y.jsxs)(`div`,{className:a,"data-slot":`mobile-context-strip`,children:[s,c]}),t[8]=a,t[9]=s,t[10]=l):l=t[10],l}function xJ(e){return(0,Y.jsxs)(`button`,{type:`button`,"aria-pressed":e.selected,disabled:e.disabled??!1,className:G(Tl(`chip`),`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center gap-1.5 rounded-full border border-border/60 px-3 text-xs`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,e.selected===!0&&`ring-1 ring-ring/50`),"data-slot":`mobile-context-strip-pill`,onClick:e.onSelect,children:[e.icon,(0,Y.jsx)(`span`,{className:`max-w-40 truncate font-medium`,children:e.label}),e.value===void 0?null:(0,Y.jsx)(`span`,{className:`max-w-40 truncate text-muted-foreground`,children:e.value})]},e.id)}var SJ=new Map;function CJ(e){let[t,n]=(0,q.useState)(!1),[r,i]=(0,q.useState)(!1),a=u(_(e.environmentId,e.threadId)),o=me(Uc(Rn)),s=(0,q.useMemo)(()=>o.find(t=>t.id===e.threadId&&t.environmentId===e.environmentId)??null,[e.environmentId,e.threadId,o]),c=(0,q.useMemo)(()=>e.draft?{id:e.threadId,environmentId:e.environmentId,projectId:e.draft.projectId,title:e.title,interactionMode:Dt,session:null,createdAt:e.draft.createdAt,archivedAt:null,settledOverride:null,settledAt:null,latestTurn:null,branch:null,worktreePath:null,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1,draftId:e.draft.draftId}:null,[e.draft,e.environmentId,e.threadId,e.title]),l=s??c,d=(0,q.useRef)(new Map);d.current=(0,q.useMemo)(()=>new Map(l?[[a,l]]:[]),[l,a]);let f=Fl({sidebarThreadByKeyRef:d,memberProjectByScopedKey:SJ,projectCwd:e.projectCwd}),p=l?f.listThreadMenuActions(a):[],m=e.sessionTabs.length>0&&e.onSelectSessionTab!==null,h=[{id:`find`,label:`Find in thread`,icon:(0,Y.jsx)(Ia,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenFindInThread},...e.onOpenSourceControl?[{id:`source-control`,label:`Source control`,...e.branch===null?{}:{value:e.branch},icon:(0,Y.jsx)(ui,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenSourceControl}]:[],...m?[{id:`sessions`,label:`Sessions`,value:String(e.sessionTabs.length),icon:(0,Y.jsx)(Bs,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:()=>i(!0)}]:[]];return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`mb-1.5 flex min-w-0 items-center gap-1.5`,"data-slot":`phone-thread-dock`,children:[(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Toggle workspace panel`,"aria-pressed":e.workspacePanelOpen,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring aria-pressed:bg-accent aria-pressed:text-foreground`,onClick:e.onToggleWorkspacePanel,children:(0,Y.jsx)(od,{"aria-hidden":!0,className:`size-4`})}),(0,Y.jsx)(bJ,{label:`Thread context`,items:h,className:`w-0 grow`}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Thread actions`,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>n(!0),children:(0,Y.jsx)(as,{"aria-hidden":!0,className:`size-4`})})]}),(0,Y.jsx)(Nl,{open:t,onOpenChange:n,title:e.title,items:p,onAction:t=>{f.performThreadMenuAction(_(e.environmentId,e.threadId),t)},leadingSections:s?(0,Y.jsx)(Ya,{thread:s}):void 0}),(0,Y.jsxs)(wl,{open:r,onOpenChange:i,label:`Sessions in this worktree`,detent:`medium`,children:[(0,Y.jsx)(yl,{children:(0,Y.jsx)(xl,{children:`Sessions`})}),(0,Y.jsx)(_l,{children:(0,Y.jsx)(`div`,{role:`group`,"aria-label":`Sessions in this worktree`,className:`space-y-0.5`,children:e.sessionTabs.map(t=>(0,Y.jsx)(Cl,{label:t.title,selected:t.key===e.activeSessionTabKey,trailing:t.key===e.activeSessionTabKey?(0,Y.jsx)(Yn,{"aria-hidden":!0,className:`size-4 shrink-0`}):void 0,onClick:()=>{i(!1),e.onSelectSessionTab?.(t.key)}},t.key))})})]}),(0,Y.jsx)(Pl,{renamingThreadKey:f.renamingThreadKey,originalTitle:s?.title??e.title,renamingTitle:f.renamingTitle,setRenamingTitle:f.setRenamingTitle,commitRename:f.commitRename,cancelRename:f.cancelRename})]})}function wJ(e){return!0}var TJ=`${Math.round(O/1048576)}MB`,EJ=`${Math.round(F/1048576)}MB`,DJ=`${Math.round(R/1048576)}MB`,OJ=` `;function kJ(e){let t=Math.min(e,F);return t%1048576==0?`${Math.round(t/1048576)}MB`:`${Math.round(t/1024)}KB`}async function AJ(e){let t=new Uint8Array(await e.arrayBuffer()),n=``,r=32768;for(let e=0;e<t.length;e+=r)n+=String.fromCharCode(...t.subarray(e,e+r));return btoa(n)}function jJ(e){if(e.fileUploadMaxBytes!==null||wJ(e.selectedProvider))return{direct:[...e.files],references:[]};let t=[],n=[];for(let r of e.files)r.type.startsWith(`image/`)?t.push(r):n.push(r);return{direct:t,references:n}}function MJ(e){let{composerDraftTarget:t,environmentId:n,activeThreadId:r,draftId:i,routeThreadRef:a,runtimeMode:o,selectedProvider:s,gitCwd:c,pendingUserInputCount:l,composerImagesRef:u,editorRef:d,setThreadError:f,focusComposer:m}=e,h=Sn(n),g=h!==null&&Un(n)!==null?h:null,_=Rr(e=>e.addImage),v=Rr(e=>e.addImages),y=Rr(e=>e.removeImage),b=Rr(e=>e.getDraftSession),[x,S]=(0,q.useState)(!1),C=(0,q.useRef)(0);(0,q.useEffect)(()=>{C.current=0,S(!1)},[i,r]);let w=(0,q.useCallback)(e=>{_(t,e)},[t,_]),T=(0,q.useCallback)(e=>{v(t,e)},[t,v]),E=(0,q.useCallback)(e=>{y(t,e)},[t,y]),D=(0,q.useCallback)(()=>typeof t==`string`?(i?b(i)?.threadId:null)??a.threadId:t.threadId,[t,i,b,a]),k=(0,q.useCallback)((e,t)=>{if(g===null)return;let r=D();r&&hn.enqueue({attachmentId:t,threadId:r,environmentId:n,name:e.name||`file`,mimeType:e.type||`application/octet-stream`,sizeBytes:e.size,readBytes:async()=>new Uint8Array(await e.arrayBuffer())})},[n,g,D]),A=(0,q.useCallback)(e=>{if(!r||e.length===0)return;if(l>0){Ve.add({type:`error`,title:`Attach files after answering plan questions.`});return}let t=[],n=u.current.length,i=u.current.reduce((e,t)=>e+t.sizeBytes,0),a=null;for(let r of e){let e=r.type.startsWith(`image/`),o=r.name||(e?`image`:`file`);if(!/^[^/\\\p{Cc}]+$/u.test(o)){a=`'${o}' has an unsafe filename. Rename it without path separators or control characters.`;continue}let s=!e&&g!==null,c=e?O:s?Math.min(g,F):F,l=e?TJ:s?kJ(g):`${Math.round(F/1048576)}MB`;if(r.size<=0||r.size>c){a=`'${o}' must be non-empty and no larger than the ${l} attachment limit.`;continue}if(n>=8){a=`You can attach up to 8 files per message.`;break}if(i+r.size>52428800){a=`Attachments can total at most ${EJ} per message.`;continue}let u=Zt(),d=e?URL.createObjectURL(r):``;t.push({type:e?`image`:`file`,id:u,name:o,mimeType:r.type||`application/octet-stream`,sizeBytes:r.size,previewUrl:d,file:r}),s&&k(r,u),n+=1,i+=r.size}t.length===1&&t[0]?w(t[0]):t.length>1&&T(t),f(r,a)},[r,w,T,u,k,g,l,f]),j=(0,q.useCallback)(e=>{if(e.length===0)return;let t=d.current;if(!t)return;let n=t.readSnapshot(),r=e.join(OJ),i=n.value[n.cursor-1]??``,a=n.value[n.cursor]??``,o=i.length>0&&!/\s/.test(i),s=a.length>0&&!/\s/.test(a);t.insertTextAndFocus(`${o?OJ:``}${r}${s?OJ:``}`)},[d]),M=(0,q.useCallback)(()=>{let e=p();return window.desktopBridge!==void 0&&e?.source===`desktop-managed`&&e.environmentId===n},[n]),N=(0,q.useCallback)(async e=>{if(!c)return Ve.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`No active workspace is available for this composer.`}),null;if(e.size>10485760)return Ve.add({type:`error`,title:`'${e.name||`file`}' exceeds the ${DJ} file staging limit.`}),null;let t=Dr(n);if(!t)return Ve.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`The active environment is not connected.`}),null;try{return(await t.projects.stageFileReference({cwd:c,scopeId:String(r??i??a.threadId),name:e.name||`file`,...e.type?{mimeType:e.type}:{},sizeBytes:e.size,dataBase64:await AJ(e)})).relativePath}catch(t){return Ve.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:t instanceof Error?t.message:`File staging failed.`}),null}},[r,i,n,c,a.threadId]),P=(0,q.useCallback)(async e=>{let t=null;try{t=await Cn()?.shell.getPathForFile?.(e)??null}catch{t=null}return ur({resolvedPath:t,cwd:c,runtimeMode:o,isLocalDesktopEnvironment:M()})?t:N(e)},[c,M,o,N]),I=(0,q.useCallback)(async e=>{if(e.length===0)return;let{direct:t,references:n}=jJ({fileUploadMaxBytes:g,selectedProvider:s,files:e});if(t.length>0&&A(t),n.length===0)return;let r=(await Promise.all(n.map(async e=>{let t=await P(e);return t?Xt(t):null}))).filter(e=>e!==null);j(r)},[A,g,j,P,s]);return{isDragOverComposer:x,addComposerAttachments:I,removeComposerImage:(0,q.useCallback)(e=>{hn.release(e),E(e)},[E]),retryComposerFileUpload:(0,q.useCallback)(e=>{hn.retry(e)},[]),onComposerPaste:(0,q.useCallback)(e=>{let t=Array.from(e.clipboardData.files);t.length!==0&&(e.preventDefault(),I(t))},[I]),onComposerDragEnter:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),C.current+=1,S(!0))},[]),onComposerDragOver:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,S(!0))},[]),onComposerDragLeave:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault();let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||(C.current=Math.max(0,C.current-1),C.current===0&&S(!1))},[]),onComposerDrop:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault(),C.current=0,S(!1);let t=Array.from(e.dataTransfer.files),n=jJ({fileUploadMaxBytes:g,selectedProvider:s,files:t}).references.length>0;I(t),n||m()},[I,g,m,s])}}function NJ(){let e=new Map;return{getItem:t=>e.get(t)??null,setItem:(t,n)=>{e.set(t,n)},removeItem:t=>{e.delete(t)}}}function PJ(){try{return typeof window>`u`?null:window.localStorage}catch{return null}}function FJ(e){let t=e.memoryStorage??NJ(),n=e.hosted??!1,r,i=()=>{if(n)return null;if(r!==void 0)return r;try{r=(e.getDurableStorage??PJ)()}catch{r=null}return r||(n=!0),r},a=()=>{try{return t.getItem(jt)}catch{return null}};return{read:()=>{let e=i();if(e)try{return e.getItem(jt)}catch{n=!0}return a()},write:e=>{let r=JSON.stringify({entries:e}),a=i();if(a)try{return a.setItem(jt,r),{written:!0,durable:!0}}catch{n=!0}try{return t.setItem(jt,r),{written:!0,durable:!1}}catch{return{written:!1,durable:!1}}},remove:()=>{let e=i();if(e)try{return e.removeItem(jt),{durable:!0}}catch{n=!0}try{t.removeItem(jt)}catch{}return{durable:!1}}}}function IJ(e={}){let t=FJ(e),n=l()((e,n)=>({entries:[],hydrate:()=>{let n=t.read();if(typeof n!=`string`||n.length===0){e({entries:[]});return}try{let t=JSON.parse(n);e({entries:Nt(t).entries})}catch{t.remove(),e({entries:[]})}},getEntries:()=>n().entries,getCount:()=>n().entries.length,stashEntry:r=>{if(!S(Ot)(r))return{evicted:null,written:!1,durable:!1};let i=n().entries,a=ae([r,...i]),o=a.kept.slice(1),s=a.evicted[0]??null,c=rt(r.attachments,un(o)),l=[{...r,attachments:c.kept,droppedImageNames:[...r.droppedImageNames,...c.droppedNames]},...o],u=t.write(l);return u.written?(e({entries:l}),{evicted:s,...u}):{evicted:null,...u}},takeEntry:r=>{let i=n().entries,a=i.find(e=>e.id===r)??null;if(!a)return{entry:null,durable:!0};let o=i.filter(e=>e.id!==r),s=t.write(o);return e({entries:o}),{entry:a,durable:s.durable}},finalizeEntryImages:(r,i)=>{let a=n().entries,o=a.findIndex(e=>e.id===r),s=o<0?void 0:a[o];if(!s)return{attached:!1,written:!0,durable:!0};let c=rt(i.attachments,un(a,r)),l=[...a];l[o]={...s,attachments:c.kept,droppedImageNames:[...i.droppedImageNames,...c.droppedNames],unreadableImageNames:[...i.unreadableImageNames],pendingImageCount:0};let u=t.write(l);return u.written?(e({entries:l}),{attached:!0,...u}):{attached:!1,...u}}}));return n.getState().hydrate(),n}var LJ=IJ({hosted:g()}),RJ=-64;function zJ({hostRef:e}){let t=(0,q.useId)().replace(/[^a-zA-Z0-9_-]/g,``),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(!1),[o,s]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{Il()&&(r(!0),a(zl()))},[]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n||!i)return;let a=Vl(t);a.setScale(RJ),Ll().appendChild(a.filter);let o=0,c=0,l=null,u=!1,d=()=>{o=0;let e=r.offsetWidth,t=r.offsetHeight;if(e<24||t<24)return;let n=++c;Bl({width:e,height:t,radius:22,edgeBandPx:36}).then(r=>{if(!r)return;if(u||n!==c){r.release();return}let i=mc();a.setMap(r.url,e,t),l?.release(),l=r,s(!0),pc(`web.liquid-glass.apply`,{durationMs:Math.max(0,mc()-i)})})},f=new ResizeObserver(()=>{o||=window.requestAnimationFrame(d)});return f.observe(r),d(),()=>{u=!0,c+=1,f.disconnect(),o&&window.cancelAnimationFrame(o),l?.release(),a.filter.remove(),s(!1)}},[n,i,t,e]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n)return;r.setAttribute(`data-liquid-glass`,`true`);let a=i&&o?`url(#${t}) blur(10px) saturate(185%)`:`blur(24px) saturate(185%)`;return r.style.setProperty(`--composer-liquid-backdrop`,a),()=>{r.removeAttribute(`data-liquid-glass`),r.style.removeProperty(`--composer-liquid-backdrop`)}},[n,i,o,t,e]),(0,q.useEffect)(()=>{let t=e.current;if(t&&n)return Rl(t)},[n,e]),n?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-sheen`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring liquid-glass-ring--overlay`})]}):null}var BJ=(0,q.memo)(function(e){let t=(0,J.c)(11);if(e.count===0)return null;let n=`Stashed prompts: ${e.count}. Open stash.`,r=e.open,i=e.open?`border-border text-foreground opacity-100`:`border-border/70 text-muted-foreground opacity-75 hover:text-foreground hover:opacity-100`,a;t[0]===i?a=t[1]:(a=G(`absolute -top-3 right-4 z-20 inline-flex cursor-pointer items-center gap-1.5 rounded-full border bg-popover px-2.5 py-0.5 text-xs shadow-sm`,`transition-[color,border-color,opacity] duration-200 motion-reduce:transition-none`,i),t[0]=i,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(bu,{className:`size-3`,"aria-hidden":`true`}),t[2]=o):o=t[2];let s;t[3]===e.count?s=t[4]:(s=(0,Y.jsx)(`span`,{className:`rounded-full bg-muted px-1.5 text-[10px] font-medium tabular-nums text-muted-foreground`,children:e.count}),t[3]=e.count,t[4]=s);let c;return t[5]!==e.onToggle||t[6]!==e.open||t[7]!==n||t[8]!==a||t[9]!==s?(c=(0,Y.jsxs)(`button`,{type:`button`,"data-prompt-stash-badge":`true`,"aria-label":n,"aria-expanded":r,className:a,onPointerDown:VJ,onClick:e.onToggle,children:[o,`Stash`,s]}),t[5]=e.onToggle,t[6]=e.open,t[7]=n,t[8]=a,t[9]=s,t[10]=c):c=t[10],c});function VJ(e){return e.preventDefault()}var HJ=100;function UJ(e){let t=e.prompt.trim().replace(/\s+/g,` `);if(t.length>0)return t.length>HJ?`${t.slice(0,HJ)}…`:t;let n=e.attachments.length+e.pendingImageCount+e.droppedImageNames.length+e.unreadableImageNames.length;return n===1?`(1 image)`:`(${n} images)`}function WJ(e){return e.droppedImageNames.length+e.unreadableImageNames.length}function GJ(e){return e instanceof Element&&e.closest(`button, a, input, select, textarea, [contenteditable], [role=button]`)!==null}var KJ=(0,q.memo)(function(e){let t=(0,J.c)(28),n=$s(),{entries:r,onRestore:i,onDelete:a,onClose:o}=e,[s,c]=(0,q.useState)(r[0]?.id??null),l=(0,q.useRef)(null),u=(0,q.useRef)(null),d;t[0]!==r||t[1]!==s?(d=r.find(e=>e.id===s)??r[0]??null,t[0]=r,t[1]=s,t[2]=d):d=t[2];let f=d,p,m;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(p=()=>{l.current?.focus()},m=[],t[3]=p,t[4]=m):(p=t[3],m=t[4]),Vs(p,m);let h,g;t[5]!==f||t[6]!==s?(h=()=>{if(!f){c(null);return}f.id!==s&&c(f.id)},g=[f,s],t[5]=f,t[6]=s,t[7]=h,t[8]=g):(h=t[7],g=t[8]),(0,q.useEffect)(h,g);let _,v;t[9]===s?(_=t[10],v=t[11]):(_=()=>{s&&u.current&&u.current.querySelector(`[data-prompt-stash-row="${CSS.escape(s)}"]`)?.scrollIntoView({block:`nearest`})},v=[s],t[9]=s,t[10]=_,t[11]=v),(0,q.useEffect)(_,v);let y,b;if(t[12]!==r||t[13]!==o||t[14]!==a||t[15]!==i||t[16]!==f||t[17]!==s?(y=()=>{let e=e=>{if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),o();return}if(l.current?.contains(document.activeElement)){if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(r.length===0)return;e.preventDefault(),e.stopPropagation();let t=r.findIndex(e=>e.id===s),n=e.key===`ArrowDown`?1:-1,i=((t>=0?t:n>0?-1:0)+n+r.length)%r.length;c(r[i]?.id??null);return}if(e.key===`Enter`){if(GJ(e.target)||!f)return;e.preventDefault(),e.stopPropagation(),i(f.id);return}e.key===`Backspace`&&(e.metaKey||e.ctrlKey)&&!e.altKey&&!e.shiftKey&&f&&(e.preventDefault(),e.stopPropagation(),a(f.id))}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},b=[r,o,a,i,f,s],t[12]=r,t[13]=o,t[14]=a,t[15]=i,t[16]=f,t[17]=s,t[18]=y,t[19]=b):(y=t[18],b=t[19]),Vs(y,b),!n)return null;let x;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsxs)(cs,{className:`flex items-center gap-1.5 px-3 pt-2 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:[(0,Y.jsx)(bu,{className:`size-3`,"aria-hidden":`true`}),`Stashed prompts`]}),t[20]=x):x=t[20];let S;t[21]!==r||t[22]!==a||t[23]!==i||t[24]!==s?(S=r.length===0?(0,Y.jsx)(`p`,{className:`px-3 pt-1 pb-3 text-xs text-muted-foreground/70`,children:`Nothing stashed yet. Use the stash shortcut with a prompt or image to save it.`}):r.map(e=>{let t=WJ(e);return(0,Y.jsxs)(ss,{value:e.id,"data-prompt-stash-row":e.id,className:G(`group/stash cursor-pointer select-none gap-2 hover:bg-transparent hover:text-inherit data-highlighted:bg-transparent data-highlighted:text-inherit`,s===e.id&&`bg-accent! text-accent-foreground!`),onMouseMove:()=>c(e.id),onMouseDown:qJ,onClick:t=>{GJ(t.target)||i(e.id)},children:[e.attachments.length>0?(0,Y.jsx)(`span`,{className:`-space-x-1.5 flex shrink-0 items-center`,children:e.attachments.slice(0,3).map(JJ)}):(0,Y.jsx)(bu,{className:`size-4 shrink-0 text-muted-foreground/60`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:UJ(e)}),e.pendingImageCount>0?(0,Y.jsxs)(`span`,{"data-prompt-stash-pending":`true`,className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[`saving `,e.pendingImageCount,` image`,e.pendingImageCount===1?``:`s`,`…`]}):t>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-amber-600`,children:[t,` image`,t===1?``:`s`,` not saved`]}):e.attachments.length>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[e.attachments.length,` image`,e.attachments.length===1?``:`s`]}):null,(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground/60`,children:Va(e.createdAt)}),(0,Y.jsx)(W,{variant:`ghost`,size:`icon-xs`,"data-prompt-stash-delete":e.id,className:`shrink-0 opacity-55 transition-opacity motion-reduce:transition-none group-hover/stash:opacity-100 focus:opacity-100`,"aria-label":`Delete stashed prompt: ${UJ(e)}`,onClick:t=>{t.stopPropagation(),a(e.id)},children:(0,Y.jsx)(es,{})})]},e.id)}),t[21]=r,t[22]=a,t[23]=i,t[24]=s,t[25]=S):S=t[25];let C;return t[26]===S?C=t[27]:(C=(0,Y.jsx)(`div`,{ref:l,role:`region`,"aria-label":`Stashed prompts`,tabIndex:-1,"data-prompt-stash-picker":`true`,className:`absolute right-0 bottom-[calc(100%+0.75rem)] z-30 w-[min(28rem,calc(100vw-2rem))]`,children:(0,Y.jsx)(is,{autoHighlight:!1,mode:`none`,children:(0,Y.jsx)(`div`,{className:`app-surface relative overflow-hidden rounded-xl border border-border/80 bg-popover/96 shadow-lg/8 backdrop-blur-xs`,children:(0,Y.jsx)(ls,{ref:u,className:`max-h-72`,children:(0,Y.jsxs)(Zo,{children:[x,S]})})})})}),t[26]=S,t[27]=C),C});function qJ(e){GJ(e.target)||e.preventDefault()}function JJ(e){return(0,Y.jsx)(`img`,{src:e.dataUrl,alt:``,"aria-hidden":`true`,className:`size-6 rounded border border-border/70 object-cover`},e.id)}var YJ=(0,q.memo)(function(e){let t=(0,J.c)(18),n;t[0]===e.source?n=t[1]:(n=ws(e.source),t[0]=e.source,t[1]=n);let r;t[2]===e.target?r=t[3]:(r=ws(e.target),t[2]=e.target,t[3]=r);let i=`Next message will hand off context from ${n} to ${r}`,a,o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(vu,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),o=(0,Y.jsx)(`span`,{className:`shrink-0 font-medium`,children:`Next message hands off context`}),s=(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,"aria-hidden":!0,children:`·`}),t[4]=a,t[5]=o,t[6]=s):(a=t[4],o=t[5],s=t[6]);let c;t[7]===e.source?c=t[8]:(c=(0,Y.jsx)(Es,{endpoint:e.source,className:`max-w-32 sm:max-w-44`}),t[7]=e.source,t[8]=c);let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsx)(Wo,{className:`size-3.5 shrink-0 text-muted-foreground/55`,"aria-hidden":!0}),t[9]=l):l=t[9];let u;t[10]===e.target?u=t[11]:(u=(0,Y.jsx)(Es,{endpoint:e.target,className:`max-w-32 font-medium text-foreground/85 sm:max-w-44`}),t[10]=e.target,t[11]=u);let d;return t[12]!==i||t[13]!==e.source.providerInstanceId||t[14]!==e.target.providerInstanceId||t[15]!==c||t[16]!==u?(d=(0,Y.jsxs)(`div`,{role:`status`,"aria-label":i,title:i,"data-pending-context-handoff":`true`,"data-pending-context-handoff-source":e.source.providerInstanceId,"data-pending-context-handoff-target":e.target.providerInstanceId,className:`inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-[11px] leading-4 text-muted-foreground shadow-sm backdrop-blur-xs`,children:[a,o,s,c,l,u]}),t[12]=i,t[13]=e.source.providerInstanceId,t[14]=e.target.providerInstanceId,t[15]=c,t[16]=u,t[17]=d):d=t[17],d}),XJ={active:`Pursuing goal`,paused:`Goal paused`,blocked:`Goal blocked`,usageLimited:`Usage limit reached`,budgetLimited:`Goal budget reached`,complete:`Goal achieved`};function ZJ(e,t,n,r){let i=e.status===`active`&&r&&e.synchronization===void 0?Math.max(0,Math.floor((t-n)/1e3)):0;return e.timeUsedSeconds+i}function QJ(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return t>0?`${t}:${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`:`${n}:${String(r).padStart(2,`0`)}`}var $J=new Intl.NumberFormat(void 0,{notation:`compact`});function eY(e){let t=(0,J.c)(7),n=e.label,r=e.label,i=e.onClick,a=e.destructive&&`hover:text-destructive`,o;t[0]===a?o=t[1]:(o=G(`inline-flex size-7 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-background/75 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,a),t[0]=a,t[1]=o);let s;return t[2]!==e.children||t[3]!==e.label||t[4]!==e.onClick||t[5]!==o?(s=(0,Y.jsx)(`button`,{type:`button`,"aria-label":n,title:r,onClick:i,className:o,children:e.children}),t[2]=e.children,t[3]=e.label,t[4]=e.onClick,t[5]=o,t[6]=s):s=t[6],s}var tY=(0,q.memo)(function(e){let t=(0,J.c)(89),[n,r]=(0,q.useState)(!1),i;t[0]===e.goal.tokenBudget?i=t[1]:(i=()=>e.goal.tokenBudget?.toString()??``,t[0]=e.goal.tokenBudget,t[1]=i);let[a,o]=(0,q.useState)(i),[s,c]=(0,q.useState)(null),l,u;t[2]===e.goal.tokenBudget?(l=t[3],u=t[4]):(l=()=>o(e.goal.tokenBudget?.toString()??``),u=[e.goal.tokenBudget],t[2]=e.goal.tokenBudget,t[3]=l,t[4]=u),(0,q.useEffect)(l,u);let d=e.goal.synchronization,f=d?.state===`pending`,p=d?.state===`unsupported`,[m,h]=(0,q.useState)(nY),[g,_]=(0,q.useState)(rY),v;t[5]!==e.goal.status||t[6]!==e.isRunning?(v=()=>{if(_(Date.now()),e.goal.status!==`active`||!e.isRunning)return;h(Date.now());let t=window.setInterval(()=>h(Date.now()),1e3);return()=>window.clearInterval(t)},t[5]=e.goal.status,t[6]=e.isRunning,t[7]=v):v=t[7];let y;t[8]!==e.goal.status||t[9]!==e.goal.updatedAt||t[10]!==e.isRunning?(y=[e.goal.status,e.goal.updatedAt,e.isRunning],t[8]=e.goal.status,t[9]=e.goal.updatedAt,t[10]=e.isRunning,t[11]=y):y=t[11],(0,q.useEffect)(v,y);let b=e.goal.status===`paused`||e.goal.status===`blocked`||e.goal.status===`usageLimited`||e.goal.status===`budgetLimited`,x=e.goal.status===`complete`,S=e.goal.status===`active`&&`border-primary/30 text-primary`,C=x&&`border-emerald-500/30 text-emerald-600 dark:text-emerald-400`,w;t[12]!==S||t[13]!==C?(w=G(`mt-0.5 inline-flex size-7 shrink-0 items-center justify-center rounded-full border border-border/60 bg-background/55 text-muted-foreground`,S,C),t[12]=S,t[13]=C,t[14]=w):w=t[14];let T;t[15]===x?T=t[16]:(T=x?(0,Y.jsx)(zr,{className:`size-3.5`}):(0,Y.jsx)(fd,{className:`size-3.5`}),t[15]=x,t[16]=T);let E;t[17]!==w||t[18]!==T?(E=(0,Y.jsx)(`div`,{className:w,children:T}),t[17]=w,t[18]=T,t[19]=E):E=t[19];let D;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(D=()=>r(iY),t[20]=D):D=t[20];let O=f?`Updating goal…`:d?.state===`failed`?`Goal change failed`:p&&e.goal.status===`active`?`Goal reminder`:XJ[e.goal.status],k;t[21]!==m||t[22]!==e.goal||t[23]!==e.isRunning||t[24]!==g?(k=QJ(ZJ(e.goal,m,g,e.isRunning)),t[21]=m,t[22]=e.goal,t[23]=e.isRunning,t[24]=g,t[25]=k):k=t[25];let A;t[26]===k?A=t[27]:(A=(0,Y.jsx)(`span`,{className:`font-mono font-normal tracking-normal normal-case`,children:k}),t[26]=k,t[27]=A);let j;t[28]!==e.goal.tokenBudget||t[29]!==e.goal.tokensUsed||t[30]!==p?(j=p?null:(0,Y.jsxs)(`span`,{className:`font-normal tracking-normal normal-case`,children:[$J.format(e.goal.tokensUsed),e.goal.tokenBudget===null?``:` / ${$J.format(e.goal.tokenBudget)}`,` `,`tokens`]}),t[28]=e.goal.tokenBudget,t[29]=e.goal.tokensUsed,t[30]=p,t[31]=j):j=t[31];let M;t[32]!==O||t[33]!==A||t[34]!==j?(M=(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-[11px] font-medium tracking-wide text-muted-foreground uppercase`,children:[O,A,j]}),t[32]=O,t[33]=A,t[34]=j,t[35]=M):M=t[35];let N=!n&&`line-clamp-2`,P;t[36]===N?P=t[37]:(P=G(`mt-0.5 block text-sm leading-5 text-foreground/90`,N),t[36]=N,t[37]=P);let F;t[38]!==e.goal.objective||t[39]!==P?(F=(0,Y.jsx)(`span`,{className:P,children:e.goal.objective}),t[38]=e.goal.objective,t[39]=P,t[40]=F):F=t[40];let I;t[41]!==n||t[42]!==M||t[43]!==F?(I=(0,Y.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 text-left focus-visible:outline-none`,onClick:D,"aria-expanded":n,children:[M,F]}),t[41]=n,t[42]=M,t[43]=F,t[44]=I):I=t[44];let L;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,Y.jsx)(xa,{className:`size-3.5`}),t[45]=L):L=t[45];let R;t[46]===e.onEdit?R=t[47]:(R=(0,Y.jsx)(eY,{label:`Edit goal`,onClick:e.onEdit,children:L}),t[46]=e.onEdit,t[47]=R);let z;t[48]!==b||t[49]!==e?(z=e.goal.status===`active`?(0,Y.jsx)(eY,{label:`Pause goal`,onClick:()=>e.onStatusChange(`paused`),children:(0,Y.jsx)(tc,{className:`size-3.5`})}):b?(0,Y.jsx)(eY,{label:`Resume goal`,onClick:()=>e.onStatusChange(`active`),children:(0,Y.jsx)(nc,{className:`size-3.5`})}):null,t[48]=b,t[49]=e,t[50]=z):z=t[50];let ee;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,Y.jsx)(es,{className:`size-3.5`}),t[51]=ee):ee=t[51];let te;t[52]===e.onClear?te=t[53]:(te=(0,Y.jsx)(eY,{label:`Clear goal`,destructive:!0,onClick:e.onClear,children:ee}),t[52]=e.onClear,t[53]=te);let B=n&&`rotate-180`,ne;t[54]===B?ne=t[55]:(ne=G(`mt-1 size-3.5 text-muted-foreground/60 transition-transform`,B),t[54]=B,t[55]=ne);let re;t[56]===ne?re=t[57]:(re=(0,Y.jsx)(fr,{"aria-hidden":!0,className:ne}),t[56]=ne,t[57]=re);let ie;t[58]!==f||t[59]!==R||t[60]!==z||t[61]!==te||t[62]!==re?(ie=(0,Y.jsxs)(`fieldset`,{disabled:f,className:`flex shrink-0 items-center gap-0.5 disabled:opacity-50`,children:[R,z,te,re]}),t[58]=f,t[59]=R,t[60]=z,t[61]=te,t[62]=re,t[63]=ie):ie=t[63];let V;t[64]!==I||t[65]!==ie||t[66]!==E?(V=(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2.5`,children:[E,I,ie]}),t[64]=I,t[65]=ie,t[66]=E,t[67]=V):V=t[67];let ae;t[68]!==f||t[69]!==e.onRetry?(ae=f?(0,Y.jsxs)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:[`Waiting for provider confirmation.`,` `,(0,Y.jsx)(`button`,{type:`button`,onClick:e.onRetry,className:`underline`,children:`Retry`})]}):null,t[68]=f,t[69]=e.onRetry,t[70]=ae):ae=t[70];let H;t[71]!==e.onRetry||t[72]!==d?(H=d?.state===`failed`?(0,Y.jsxs)(`p`,{role:`alert`,className:`mt-2 text-xs text-destructive`,children:[d.error,` `,(0,Y.jsx)(`button`,{type:`button`,onClick:e.onRetry,className:`ml-2 underline`,children:`Retry`})]}):null,t[71]=e.onRetry,t[72]=d,t[73]=H):H=t[73];let U;t[74]===p?U=t[75]:(U=p?(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:`While active, this provider receives the goal with each message. Automatic continuation and goal usage tracking are unavailable.`}):null,t[74]=p,t[75]=U);let oe;t[76]!==a||t[77]!==s||t[78]!==n||t[79]!==f||t[80]!==e||t[81]!==p?(oe=n&&!p?(0,Y.jsxs)(`form`,{className:`mt-3 flex flex-wrap items-center gap-2`,onSubmit:async t=>{t.preventDefault();let n=a.trim()===``?null:Number(a);if(n!==null&&(!Number.isSafeInteger(n)||n<=0)){c(`Enter a positive whole number, or leave blank for no limit.`);return}c(null),await e.onBudgetChange(n)},children:[(0,Y.jsxs)(`label`,{className:`text-xs text-muted-foreground`,children:[`Token budget`,(0,Y.jsx)(`input`,{"aria-label":`Goal token budget`,inputMode:`numeric`,value:a,placeholder:`No limit`,disabled:f,onChange:e=>o(e.target.value),className:`ml-2 w-32 rounded border border-border bg-background px-2 py-1 text-foreground`})]}),(0,Y.jsx)(`button`,{type:`submit`,disabled:f,className:`rounded border border-border px-2 py-1 text-xs`,children:`Save budget`}),s?(0,Y.jsx)(`p`,{role:`alert`,className:`w-full text-xs text-destructive`,children:s}):null,e.goal.status===`budgetLimited`?(0,Y.jsx)(`p`,{className:`w-full text-xs text-muted-foreground`,children:`Increase or remove the budget, then resume the goal.`}):null]}):null,t[76]=a,t[77]=s,t[78]=n,t[79]=f,t[80]=e,t[81]=p,t[82]=oe):oe=t[82];let se;return t[83]!==V||t[84]!==ae||t[85]!==H||t[86]!==U||t[87]!==oe?(se=(0,Y.jsxs)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/25 px-3.5 py-2.5`,children:[V,ae,H,U,oe]}),t[83]=V,t[84]=ae,t[85]=H,t[86]=U,t[87]=oe,t[88]=se):se=t[88],se});function nY(){return Date.now()}function rY(){return Date.now()}function iY(e){return!e}function aY(e){let t=e.providerInstanceEntries.find(t=>t.instanceId===e.selection.instanceId);if(!t)return null;let n=e.modelOptionsByInstance.get(e.selection.instanceId)?.find(t=>t.slug===e.selection.model)??t.models.find(t=>t.slug===e.selection.model);return{providerInstanceId:t.instanceId,driverKind:t.driverKind,providerDisplayName:t.displayName,...t.accentColor?{providerAccentColor:t.accentColor}:{},modelSlug:e.selection.model,...n?{modelDisplayName:Sr(n,{preferShortName:!0})}:{}}}function oY(e){if(!e.threadStarted||e.isPhoneTier||!e.canonicalSelection||!Hr({canonicalSelection:e.canonicalSelection,targetSelection:e.targetSelection}))return null;let t=aY({selection:e.canonicalSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance}),n=aY({selection:e.targetSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance});return t&&n?{source:t,target:n}:null}var sY=[`[data-slot="popover-popup"]`,`[data-slot="menu-popup"]`,`[data-slot="select-popup"]`,`[data-slot="combobox-popup"]`,`[data-slot="autocomplete-popup"]`].join(`,`),cY=(e,t,n)=>n.endsWith(` `)&&e[t]===` `?t+1:t,lY=(e,t)=>{let n=new Map(e.map(e=>[e.id,e]));return t.flatMap(e=>{let t=n.get(e);return t?[t]:[]})},uY=(e,t)=>e.length===t.length&&e.every((e,n)=>e.id===t[n]);function dY(e){return e.closest(sY)!==null}function fY(e,t){return t.trim().length===0?e:e.length===0?t:`${e}\n\n${t}`}function pY(e){let t=e.slice(0,3),n=e.length>t.length?` and ${e.length-t.length} more`:``;return`${t.join(`, `)}${n}`}function mY(e,t,n){return`${typeof e==`string`?e:`${e.environmentId}:${e.threadId}`}\u0000${t}\u0000${n.map(e=>e.id).join(``)}`}function hY(e){if(typeof URL>`u`||typeof URL.revokeObjectURL!=`function`)return;let t=new Set(Object.values(Rr.getState().draftsByThreadKey).flatMap(e=>e.images.map(e=>e.previewUrl)));for(let n of e)n.previewUrl.startsWith(`blob:`)&&!t.has(n.previewUrl)&&URL.revokeObjectURL(n.previewUrl)}var gY=(0,q.memo)((0,q.forwardRef)(function(e,t){let{composerDraftTarget:n,environmentId:r,routeKind:i,routeThreadRef:a,draftId:o,activeThreadId:s,activeThreadEnvironmentId:c,activeThreadSessionProviderInstanceId:l,activeThreadStarted:u,isServerThread:d,isLocalDraftThread:f,activeThreadGoal:p,phase:m,isConnecting:h,isSendBusy:g,isPreparingWorktree:_,environmentUnavailable:v,activePendingApproval:b,pendingApprovals:x,pendingUserInputs:S,activePendingProgress:C,activePendingResolvedAnswers:w,activePendingIsResponding:T,activePendingDraftAnswers:E,activePendingQuestionIndex:D,respondingRequestIds:O,showPlanFollowUpPrompt:k,activeProposedPlan:j,planSidebarLabel:M,planSidebarOpen:N,runtimeMode:P,interactionMode:F,tokenMode:I,lockedProvider:L,providerStatuses:R,activeThreadModelSelection:z,activeThreadActivities:ee,phoneThreadDock:te,resolvedTheme:B,settings:ne,keybindings:re,terminalOpen:V,gitCwd:ae,promptRef:H,composerImagesRef:U,composerTerminalContextsRef:oe,shouldAutoScrollRef:ce,scheduleStickToBottom:le,onSend:ue,onInterrupt:de,onImplementPlanInNewThread:fe,onRespondToApproval:pe,onSelectActivePendingUserInputOption:me,onAdvanceActivePendingUserInput:ge,onPreviousActivePendingUserInputQuestion:_e,onChangeActivePendingUserInputCustomAnswer:ve,onProviderModelSelect:ye,toggleInteractionMode:be,handleRuntimeModeChange:xe,handleInteractionModeChange:Se,handleTokenModeChange:Ce,togglePlanSidebar:Ee,focusComposer:De,scheduleComposerFocus:Oe,setThreadError:ke,onExpandImage:Ae,onGoalBudgetChange:je,onRetryGoal:Ne,onEditGoal:Pe,onGoalStatusChange:Ie,onClearGoal:Le}=e,Re=ec(),ze=Ck(n),Be=ze.prompt,He=ze.images,Ue=ze.terminalContexts,We=ze.sourceControlContexts,Ge=ze.nonPersistedImageIds,qe=we(),Je=(0,q.useMemo)(()=>(qe.data?.sourceControlProviders??[]).some(e=>e.status===`available`&&(e.auth.status===`authenticated`||e.auth.status===`unknown`)),[qe.data]),Xe=Rr(e=>e.setPrompt),Ze=Rr(e=>e.insertTerminalContext),Qe=Rr(e=>e.removeTerminalContext),$e=Rr(e=>e.setTerminalContexts),et=Rr(e=>e.clearPersistedAttachments),tt=Rr(e=>e.syncPersistedAttachments),nt=Rr(e=>e.clearPromptAndImages),rt=Rr(e=>e.addImages),W=Rr(e=>e.updateImage),it=Rr(e=>e.getComposerDraft),ot=Rr(e=>e.addSourceControlContext),st=Rr(e=>e.removeSourceControlContext),ct=LJ(e=>e.entries),lt=LJ(e=>e.stashEntry),ut=LJ(e=>e.takeEntry),dt=LJ(e=>e.finalizeEntryImages),ft=(0,q.useMemo)(()=>Ye(se(R)),[R]),pt=ze.activeProvider??null,mt=l??z?.instanceId??null,ht=pt??mt,_t=Ke(ft,R,ht)??ie.make(`codex`),yt=L??_t,bt=(0,q.useMemo)(()=>{if(!L)return null;let e=l??z?.instanceId;return e?ft.find(t=>t.instanceId===e)?.continuationGroupKey??null:null},[z?.instanceId,l,L,ft]),xt=(0,q.useMemo)(()=>{let e=L?[z?.instanceId,l]:[ze.activeProvider,l,z?.instanceId];for(let t of e){if(!t)continue;let e=ft.find(e=>e.instanceId===t&&e.enabled);if(e){if(L&&e.driverKind!==L||bt&&e.continuationGroupKey!==bt)continue;return e.instanceId}}if(ht)return A.make(ht);let t=ft.find(e=>e.enabled&&e.driverKind===yt&&(!bt||e.continuationGroupKey===bt));return t?t.instanceId:ft.find(e=>e.enabled)?.instanceId??ft[0]?.instanceId??z?.instanceId??A.make(`codex`)},[l,z?.instanceId,ze.activeProvider,ht,bt,L,ft,yt]),St=Tk({threadRef:n,providers:R,selectedProvider:yt,selectedInstanceId:xt,threadModelSelection:z,settings:ne}),Ct=St.modelOptions,wt=L&&z?.instanceId===xt?z.model:St.selectedModel,Tt=(0,q.useMemo)(()=>ft.find(e=>e.instanceId===xt),[ft,xt]),Et=(0,q.useMemo)(()=>Tt?.snapshot??null,[Tt]),Dt=(0,q.useMemo)(()=>Tt?.models??[],[Tt]),Ot=(0,q.useMemo)(()=>eJ({provider:yt,model:wt,models:Dt,prompt:Be,modelOptions:Ct?.[xt]}),[Ct,Be,xt,wt,yt,Dt]),kt=Ot.promptEffort,At=Ot.modelOptionsForDispatch,jt=vt(e=>e.alwaysUseBuildMode),Mt=xc(),Nt=jt&&Mt!==`phone`,Pt=(0,q.useMemo)(()=>({showInteractionModeToggle:!Nt&&Me(R,yt),askModeSupported:at(R,yt)}),[Nt,R,yt]),Ft=(0,q.useMemo)(()=>nr(xt,wt,At),[xt,wt,At]),It=wt,Lt=(0,q.useMemo)(()=>{let e=new Map;for(let t of ft)e.set(t.instanceId,he(ne,t,t.instanceId===xt?wt:void 0));return e},[ft,xt,wt,ne]),Rt=(0,q.useMemo)(()=>(Lt.get(xt)??[]).some(e=>e.slug===It)?It:ln(It,yt)??It,[Lt,xt,It,yt]),zt=Ot.modelOptionsForDispatch?.find(e=>e.id===`contextWindow`)?.value??null,Vt=Et?.models.find(e=>e.slug===wt)?.maxContextTokens??null,Ht=(0,q.useMemo)(()=>UK(ee??[],typeof zt==`string`?zt:null,Vt),[ee,zt,Vt]),Ut=Et?.rateLimits,[Wt,Gt]=(0,q.useState)(()=>Bt(Be,Be.length)),[qt,Jt]=(0,q.useState)(()=>rr(Be,Be.length)),[Yt,Xt]=(0,q.useState)(null),[Qt,$t]=(0,q.useState)(null),[en,tn]=(0,q.useState)(!1),[nn,rn]=(0,q.useState)(!1),[an,sn]=(0,q.useState)(!1),[cn,un]=(0,q.useState)(!1),[dn,fn]=(0,q.useState)(!1),[pn,hn]=(0,q.useState)(!1),[gn,_n]=(0,q.useState)(!1),vn=Mt===`phone`,yn=vn&&!cn,bn=(0,q.useMemo)(()=>oY({threadStarted:u,isPhoneTier:vn,canonicalSelection:z,targetSelection:Ft,providerInstanceEntries:ft,modelOptionsByInstance:Lt}),[z,u,vn,Lt,ft,Ft]),xn=(0,q.useRef)(null),Sn=(0,q.useRef)(null),Cn=(0,q.useRef)(null),wn=(0,q.useRef)(0),Tn=(0,q.useRef)(!1),Dn=(0,q.useRef)(!1),On=(0,q.useRef)([]),kn=(0,q.useRef)(null),jn=(0,q.useRef)(null),Mn=(0,q.useRef)(new Set),Nn=(0,q.useRef)(new Map),Pn=(0,q.useRef)(()=>{}),Fn=(0,q.useCallback)(e=>{let t=Nn.current.get(e);t&&(Nn.current.delete(e),Mn.current.delete(t.key),hY(t.images))},[]);(0,q.useEffect)(()=>()=>{let e=[...Nn.current.values()];Nn.current.clear(),Mn.current.clear();for(let t of e)hY(t.images)},[]);let In=(0,q.useMemo)(()=>EA({prompt:Be,imageCount:He.length,terminalContexts:Ue,sourceControlContexts:We}),[He.length,We,Ue,Be]),Ln=En(),Rn=dr({attachments:He,nowMs:Date.now()}),zn=Rn,Bn=In.hasSendableContent&&Rn===null;(0,q.useEffect)(()=>{for(let e of He){if(e.type!==`file`)continue;let t=Ln.get(e.id)?.status;t&&t.kind===`uploaded`&&(e.uploadToken!==t.uploadToken||e.expiresAt!==t.expiresAt)&&W(n,e.id,e=>({...e,uploadToken:t.uploadToken,expiresAt:t.expiresAt}))}},[n,He,Ln,W]);let Vn=(0,q.useRef)(new Set);(0,q.useEffect)(()=>{let e=new Set(He.map(e=>e.id)),t=new Set([...Nn.current.values()].flatMap(e=>e.images.map(e=>e.id))),n=new Set([...e,...t]);for(let e of Object.values(Rr.getState().draftsByThreadKey))for(let t of e.images)n.add(t.id);Jn(Vn.current,n),Vn.current=e},[He]);let Hn=qt?.kind??null,{composerMenuItems:Un,composerMenuOpen:Wn,composerMenuSearchKey:Gn,activeComposerMenuItem:Kn,isComposerMenuLoading:Yn,composerMenuEmptyState:Xn}=Tq({composerTrigger:qt,environmentId:r,gitCwd:ae,selectedProvider:yt,selectedProviderStatus:Et,composerHighlightedItemId:Yt,composerHighlightedSearchKey:Qt});Dn.current=Wn,On.current=Un,kn.current=Kn;let Zn=(0,q.useMemo)(()=>new Set(Ge),[Ge]),Qn=b!==null,$n=S[0]??null,er=!vn&&p!=null&&!Qn&&S.length===0&&!(k&&j!==null),tr=Qn||S.length>0||k&&j!==null||er,ir=yn&&!Qn&&S.length===0,ar=h||Qn||v!==null&&C===null,or=k||C!==null,sr=(0,q.useMemo)(()=>wK({pendingProgress:C,pendingIsResponding:T,phase:m,showPlanFollowUpPrompt:k,promptHasText:Be.trim().length>0,hasSendableContent:Bn,isSendBusy:g,isConnecting:h,isPreparingWorktree:_}),[T,C,Bn,h,_,g,m,Be,k]),cr=(0,q.useCallback)(e=>{if(e===H.current){Oe();return}H.current=e,Xe(n,e);let t=Bt(e,e.length);Gt(t),Jt(rr(e,e.length)),Oe()},[n,H,Oe,Xe]),lr=Rs(y.dispatchCommand),ur=!lr.allowed,fr=lr.reason,pr=tJ({hideAgent:Nt,provider:yt,instanceId:xt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:wt,models:Dt,modelOptions:Ct?.[xt],prompt:Be,onPromptChange:cr,disabled:ur,disabledReason:fr}),mr=nJ({hideAgent:Nt,provider:yt,instanceId:xt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:wt,models:Dt,modelOptions:Ct?.[xt],prompt:Be,onPromptChange:cr,disabled:ur,disabledReason:fr}),gr=(0,q.useMemo)(()=>C?{questionIndex:C.questionIndex,isLastQuestion:C.isLastQuestion,canAdvance:C.canAdvance,isResponding:T,isComplete:!!w}:null,[T,C,w]),_r=SK({phase:m,isSendBusy:g,isConnecting:h,hasSendableContent:Bn}),vr=vn&&!yn&&gr!==null,yr=(0,q.useCallback)(e=>{Xe(n,e)},[n,Xe]),br=(0,q.useCallback)(e=>{let t=Ue.findIndex(t=>t.id===e);if(t<0)return;let r=hr(H.current,t);H.current=r.prompt,yr(r.prompt),Qe(n,e);let i=Bt(r.prompt,r.cursor);Gt(i),Jt(rr(r.prompt,r.cursor))},[n,Ue,H,Qe,yr]);(0,q.useEffect)(()=>{H.current=Be,Gt(e=>An(Be,e))},[Be,H]),(0,q.useEffect)(()=>{U.current=He},[He,U]),(0,q.useEffect)(()=>{oe.current=Ue},[Ue,oe]),(0,q.useEffect)(()=>{if(!Wn){Xt(null),$t(null);return}let e=pq({items:Un,highlightedItemId:Yt,currentSearchKey:Gn,highlightedSearchKey:Qt});Xt(t=>t===e?t:e),$t(e=>e===Gn?e:Gn)},[Yt,Qt,Un,Wn,Gn]);let xr=(0,q.useRef)(null);(0,q.useEffect)(()=>{let e=C?.customAnswer;if(typeof e!=`string`){xr.current=null;return}let t=$n?.requestId??null,n=C?.activeQuestion?.id??null,r=xr.current?.requestId!==t||xr.current?.questionId!==n,i=H.current!==e;if(xr.current={requestId:t,questionId:n},!r&&!i)return;H.current=e;let a=Bt(e,e.length);Gt(a),Jt(rr(e,Cr(e,a))),Xt(null)},[C?.customAnswer,C?.activeQuestion?.id,$n?.requestId,H]),(0,q.useEffect)(()=>{Xt(null),Gt(Bt(H.current,H.current.length)),Jt(rr(H.current,H.current.length))},[o,s,H]),(0,q.useLayoutEffect)(()=>{let e=Sn.current;if(!e)return;let t=()=>e.clientWidth,n=()=>{let e=t(),n=Aq(e,{hasWideActions:or});return{primaryActionsCompact:n&&jq(e,{hasWideActions:or}),footerCompact:n}};wn.current=e.getBoundingClientRect().height;let r=n();if(rn(r.primaryActionsCompact),tn(r.footerCompact),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(e=>{let[t]=e;if(!t)return;let r=n();rn(e=>e===r.primaryActionsCompact?e:r.primaryActionsCompact),tn(e=>e===r.footerCompact?e:r.footerCompact);let i=t.contentRect.height,a=wn.current;wn.current=i,!(a>0&&Math.abs(i-a)<.5)&&ce.current&&le()});return i.observe(e),()=>{i.disconnect()}},[s,sr,or,le,ce]),(0,q.useEffect)(()=>{let e=!1;return(async()=>{if(He.length===0){et(n);return}let t=()=>it(n)?.persistedAttachments??[];try{let r=t(),i=new Map(r.map(e=>[e.id,e])),a=new Map;await Promise.all(He.map(async e=>{if(e.type===`file`){let t=Ln.get(e.id)?.status;if(t?.kind===`uploaded`){a.set(e.id,{type:`file`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadToken:t.uploadToken,expiresAt:t.expiresAt});return}if(t){a.set(e.id,{type:`file`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadState:`needsReattach`});return}}try{let t=gt(await yd.encode(e));a.set(e.id,{type:e.type,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:t})}catch{let t=i.get(e.id);t&&a.set(e.id,t)}}));let o=Array.from(a.values());if(e)return;tt(n,o)}catch{let r=new Set(He.map(e=>e.id)),i=t(),a=i.map(e=>e.id).filter(e=>r.has(e)),o=new Set(a),s=i.filter(e=>o.has(e.id));if(e)return;tt(n,s)}})(),()=>{e=!0}},[n,et,He,Ln,it,tt]);let Sr=(0,q.useCallback)((e,t,r,i,a)=>{if(C?.activeQuestion&&S.length>0){Gt(t),Jt(i?null:rr(e,r)),ve(C.activeQuestion.id,e,t,r,i);return}H.current=e,yr(e),uY(Ue,a)||$e(n,lY(Ue,a)),Gt(t),Jt(i?null:rr(e,r))},[C?.activeQuestion,S.length,ve,H,yr,n,Ue,$e]),wr=(0,q.useCallback)((e,t,n,r)=>{let i=H.current,a=Math.max(0,Math.min(i.length,e)),o=Math.max(a,Math.min(i.length,t));if(r?.expectedText!==void 0&&i.slice(a,o)!==r.expectedText)return!1;let s=mn(H.current,e,t,n),c=Bt(s.text,s.cursor),l=Cr(s.text,c);H.current=s.text;let u=C?.activeQuestion;return u&&$n?ve(u.id,s.text,c,l,!1):yr(s.text),Gt(c),Jt(rr(s.text,l)),r?.focusEditorAfterReplace!==!1&&window.requestAnimationFrame(()=>{Re.current&&xn.current?.focusAt(c)}),!0},[C?.activeQuestion,$n,ve,H,yr]),Tr=(0,q.useCallback)(()=>xn.current?.readSnapshot()||{value:H.current,cursor:Wt,expandedCursor:Cr(H.current,Wt),terminalContextIds:Ue.map(e=>e.id)},[Wt,Ue,H]),Er=(0,q.useCallback)(()=>{let e=Tr();return{snapshot:e,trigger:rr(e.value,e.expandedCursor)}},[Tr]),{handleSelectIssue:Dr,handleSelectChangeRequest:Or}=Oq({environmentId:r,gitCwd:ae,composerDraftTarget:n,addSourceControlContext:ot}),kr=(0,q.useCallback)(e=>{if(Tn.current)return;Tn.current=!0,window.requestAnimationFrame(()=>{Tn.current=!1});let{snapshot:t,trigger:n}=Er();if(n){if(e.type===`path`){let r=`@${qn(e.path)} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}if(e.type===`slash-command`){if(e.command===`model`){wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd),focusEditorAfterReplace:!1})&&(Xt(null),sn(!0));return}if(e.command===`computer-use`||e.command===`goal`||e.command===`btw`){let r=`/${e.command} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}Se(e.command===`plan`?`plan`:`default`),wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Xt(null);return}if(e.type===`provider-slash-command`){let r=`/${e.command.name} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}if(e.type===`skill`){let r=`$${e.skill.name} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}if(e.type===`source-control-issue`){wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Xt(null),Dr(e.summary);return}if(e.type===`source-control-pr`){wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Xt(null),Or(e.summary);return}}},[wr,Se,Dr,Or,Er]),Ar=(0,q.useCallback)(e=>{Xt(e),$t(Gn)},[Gn]),jr=(0,q.useCallback)(e=>{if(Un.length===0)return;let t=Un.findIndex(e=>e.id===Yt),n=((t>=0?t:e===`ArrowDown`?-1:0)+(e===`ArrowDown`?1:-1)+Un.length)%Un.length,r=Un[n];Xt(r?.id??null)},[Yt,Un]),Mr=(0,q.useCallback)(()=>{if(!vn)return;jn.current!==null&&(window.cancelAnimationFrame(jn.current),jn.current=null);let e=document.activeElement;e instanceof HTMLElement&&e.blur(),un(!1)},[vn]),Nr=(0,q.useCallback)(()=>CK({isMobileViewport:vn,isSendBusy:g,isConnecting:h,phase:m,pendingProgress:C,hasResolvedAnswers:!!w,showPlanFollowUpPrompt:k,hasSendableContent:Bn}),[C,w,Bn,h,vn,g,m,k]),Pr=(0,q.useCallback)(e=>{ue(e),Nr()&&Mr()},[Mr,ue,Nr]),Fr=(e,t)=>{if(e===`Tab`&&t.shiftKey)return be(),!0;let{trigger:n}=Er();if(Dn.current||n!==null){let t=On.current,n=kn.current??t[0];if(e===`ArrowDown`&&t.length>0)return jr(`ArrowDown`),!0;if(e===`ArrowUp`&&t.length>0)return jr(`ArrowUp`),!0;if((e===`Enter`||e===`Tab`)&&n)return kr(n),!0}return e===`Enter`&&!t.shiftKey&&(Pr(),!0)},{isDragOverComposer:Ir,addComposerAttachments:Lr,removeComposerImage:K,retryComposerFileUpload:zr,onComposerPaste:Br,onComposerDragEnter:Vr,onComposerDragOver:Hr,onComposerDragLeave:Ur,onComposerDrop:Wr}=MJ({composerDraftTarget:n,environmentId:r,activeThreadId:s,draftId:o,routeThreadRef:a,runtimeMode:P,selectedProvider:yt,gitCwd:ae,pendingUserInputCount:S.length,composerImagesRef:U,editorRef:xn,setThreadError:ke,focusComposer:De}),Gr=(0,q.useCallback)(e=>{st(n,e)},[n,st]),Kr=(0,q.useRef)(null),qr=(0,q.useRef)(null),Jr=(0,q.useCallback)(e=>{qr.current=e,Kr.current?.click()},[]),Yr=(0,q.useCallback)(e=>{let t=e.target.files?.[0];e.target.value=``;let n=qr.current;qr.current=null,t&&(n&&K(n),Lr([t]))},[Lr,K]),Xr=(0,q.useCallback)((e,t)=>{let{entry:r,durable:i}=ut(e);if(!r)return;let a=Nn.current.get(e),o=a!==void 0&&(t?.preferMemorySnapshot===!0||r.pendingImageCount>0),s,c=[];if(o&&a)s=a.images;else{let e=on(r.attachments);s=e.images,c=e.unreadableImageNames}let l=[...U.current],u=new Set(l.map(e=>e.id)),d=new Set(l.map(e=>Kt(e))),f=[],p=[],m=[];for(let e of s){let t=Kt(e);if(u.has(e.id)||d.has(t)){p.push(e.name);continue}if(l.length+f.length>=8){m.push(e.name);continue}f.push(e),u.add(e.id),d.add(t)}let h=H.current,g=fY(h,r.prompt);if(g!==h){H.current=g,yr(g);let e=Bt(g,g.length);Gt(e),Jt(rr(g,g.length))}f.length>0&&(rt(n,f),U.current=[...l,...f]),_n(!1),Fn(e),Oe(),i||Ve.add({type:`warning`,title:`Restored stash may reappear after reload`,description:`The prompt was restored, but browser storage could not save its removal.`,data:{hideCopyButton:!0}});let _=[];!o&&r.unreadableImageNames.length>0&&_.push(`Unreadable while saving: ${pY(r.unreadableImageNames)}.`),!o&&c.length>0&&_.push(`Unreadable while restoring: ${pY(c)}.`),!o&&r.droppedImageNames.length>0&&_.push(`Not saved because the stash image budget was full: ${pY(r.droppedImageNames)}.`),!o&&r.pendingImageCount>0&&_.push(`${r.pendingImageCount} image${r.pendingImageCount===1?` was`:`s were`} still saving and could not be restored.`),p.length>0&&_.push(`Already attached and skipped: ${pY(p)}.`),m.length>0&&_.push(`Not restored because this composer can hold 8 images: ${pY(m)}.`),_.length>0&&Ve.add({type:`warning`,title:`Some stashed images could not be restored`,description:_.join(` `),data:{hideCopyButton:!0}})},[rt,n,U,H,Fn,Oe,yr,ut]),Zr=(0,q.useCallback)(e=>{let{entry:t,durable:n}=ut(e);t&&(Fn(e),n||Ve.add({type:`warning`,title:`Deleted stash may reappear after reload`,description:`Browser storage could not save the deletion.`,data:{hideCopyButton:!0}}))},[Fn,ut]);Pn.current=(0,q.useCallback)(()=>{if(vn||Qn||S.length>0)return;let e=Fe(H.current),t=[...U.current],r=e.trim().length>0?e:``;if(r.length===0&&t.length===0){_n(e=>!e);return}let i=mY(n,r,t);if(Mn.current.has(i))return;Mn.current.add(i);let a=Zt(),o={id:a,createdAt:new Date().toISOString(),prompt:r,attachments:[],droppedImageNames:[],unreadableImageNames:[],pendingImageCount:t.length},s=lt(o);if(!s.written){Mn.current.delete(i),Ve.add(fc({type:`error`,title:`Could not stash this prompt`,description:`Browser storage rejected the stash. The composer was left unchanged.`,data:{hideCopyButton:!0}}));return}Nn.current.set(a,{key:i,images:t}),s.evicted&&Fn(s.evicted.id),nt(n);let c=it(n)?.prompt??``;H.current=c,U.current=[];let l=Bt(c,c.length);Gt(l),Jt(null),Xt(null),_n(!1),Ve.add({type:`success`,title:`Prompt stashed`,description:t.length>0?`Saving ${t.length} image${t.length===1?``:`s`} in the background.`:void 0,actionProps:{children:`Undo`,onClick:()=>Xr(a,{preferMemorySnapshot:!0})},data:{hideCopyButton:!0}}),s.durable||Ve.add({type:`warning`,title:`Stashed prompt will not survive a reload`,description:`Browser storage is unavailable, so this stash is kept in memory for this page session only.`,data:{hideCopyButton:!0}}),s.evicted&&Ve.add({type:`warning`,title:`Oldest stashed prompt discarded`,description:`The stash holds 20 prompts; the oldest was removed.`,data:{hideCopyButton:!0}}),(async()=>{let e=await Promise.all(t.map(async e=>{if(e.type===`file`){let t=Ln.get(e.id)?.status;if(t?.kind===`uploaded`)return{attachment:{type:`file`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadToken:t.uploadToken,expiresAt:t.expiresAt},unreadableName:null}}try{return{attachment:{type:e.type,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:gt(await yd.encode(e))},unreadableName:null}}catch{return{attachment:null,unreadableName:e.name}}})),n=e.flatMap(e=>e.attachment?[e.attachment]:[]),r=e.flatMap(e=>e.unreadableName?[e.unreadableName]:[]),i=dt(a,{attachments:n,droppedImageNames:[],unreadableImageNames:r});if(!i.attached){s.durable&&!i.written&&t.length>0&&Ve.add({type:`warning`,title:`Stashed images were not saved`,description:`The prompt is still stashed, but browser storage rejected its image data.`,data:{hideCopyButton:!0}});return}let o=LJ.getState().entries.find(e=>e.id===a),c=[];o?.unreadableImageNames.length&&c.push(`Could not read: ${pY(o.unreadableImageNames)}.`),o?.droppedImageNames.length&&c.push(`Over the stash image budget: ${pY(o.droppedImageNames)}.`),c.length>0?Ve.add({type:`warning`,title:`Some images were not added to the stash`,description:c.join(` `),data:{hideCopyButton:!0}}):s.durable&&!i.durable&&t.length>0&&Ve.add({type:`warning`,title:`Stashed images will not survive a reload`,description:`The prompt was saved, but browser storage rejected the later image update.`,data:{hideCopyButton:!0}})})().finally(()=>{Fn(a)})},[nt,n,U,Ln,dt,it,Qn,vn,S.length,H,Fn,Xr,lt]),Vs(()=>{let e=e=>{if(e.defaultPrevented||e.isComposing)return;let t=Sn.current!==null&&e.composedPath().includes(Sn.current),n=e.target===window||e.target===document||e.target===document.body;(t||n||!fu(e))&&Gl(e,re,{context:{terminalFocus:No(),terminalOpen:V,modelPickerOpen:an,composerFocus:cn}})===`composer.stash`&&(e.preventDefault(),e.stopPropagation(),Pn.current())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[cn,an,re,V]),(0,q.useEffect)(()=>{_n(!1)},[n,vn]);let Qr=(0,q.useCallback)(()=>{de()},[de]),$r=(0,q.useCallback)(()=>{fe()},[fe]),ei=(0,q.useCallback)(()=>{jn.current!==null&&window.cancelAnimationFrame(jn.current),jn.current=window.requestAnimationFrame(()=>{jn.current=null;let e=Cn.current,t=document.activeElement;t instanceof Element&&dY(t)||e&&t instanceof Element&&e.contains(t)&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)===null||un(!1)})},[]);(0,q.useEffect)(()=>()=>{jn.current!==null&&window.cancelAnimationFrame(jn.current)},[]),(0,q.useImperativeHandle)(t,()=>({collapseForReading:()=>{!vn&&!dY(document.activeElement??document.body)&&(hn(!0),fn(!1))},focusAtEnd:()=>{hn(!1),Re.current&&xn.current?.focusAtEnd()},focusAt:e=>{hn(!1),Re.current&&xn.current?.focusAt(e)},openModelPicker:()=>{sn(!0)},toggleModelPicker:()=>{sn(e=>!e)},isModelPickerOpen:()=>an,readSnapshot:()=>Tr(),resetCursorState:e=>{let t=e?.prompt??H.current,n=An(t,e?.cursor??0);Xt(null),Gt(n),Jt(e?.detectTrigger?rr(t,Cr(t,n)):null)},addTerminalContext:e=>{if(!s)return;let t=xn.current?.readSnapshot()??{value:H.current,cursor:Wt,expandedCursor:Cr(H.current,Wt),terminalContextIds:Ue.map(e=>e.id)},r=Te(t.value,t.expandedCursor),i=Bt(r.prompt,r.cursor);Ze(n,r.prompt,{id:Zt(),threadId:s,createdAt:new Date().toISOString(),...e},r.contextIndex)&&(H.current=r.prompt,Gt(i),Jt(rr(r.prompt,r.cursor)),window.requestAnimationFrame(()=>{Re.current&&xn.current?.focusAt(i)}))},insertTriggerAtCursor:e=>{vn&&un(!0);let t=xn.current?.readSnapshot()??{value:H.current,cursor:Wt,expandedCursor:Cr(H.current,Wt),terminalContextIds:Ue.map(e=>e.id)},{text:r,cursor:i}=mn(t.value,t.expandedCursor,t.expandedCursor,e),a=Bt(r,i);H.current=r,Xe(n,r),Gt(a),Jt(rr(r,i)),window.requestAnimationFrame(()=>{Re.current&&xn.current?.focusAt(a)})},getSendContext:()=>({prompt:H.current,images:U.current,terminalContexts:oe.current,sourceControlContexts:We,selectedPromptEffort:kt,selectedModelOptionsForDispatch:At,selectedModelSelection:Ft,selectedProvider:yt,selectedModel:wt,selectedProviderModels:Dt})}),[s,n,Wt,We,Ue,Ze,vn,H,U,oe,an,Tr,wt,At,Ft,kt,yt,Dt,Xe]);let ti=!vn&&u&&(pn||!cn&&!dn)&&!an&&!Wn&&!Ir;return(0,Y.jsxs)(`form`,{ref:Sn,onSubmit:Pr,className:`relative mx-auto w-full min-w-0 max-w-208`,"data-chat-composer-form":`true`,children:[(0,Y.jsx)(`input`,{ref:Kr,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,onChange:Yr}),bn?(0,Y.jsx)(`div`,{className:G(`mb-2 flex min-w-0 items-center px-4`,ct.length>0&&`pr-24`),children:(0,Y.jsx)(YJ,{source:bn.source,target:bn.target})}):null,vn?null:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(BJ,{count:ct.length,open:gn,onToggle:()=>_n(e=>!e)}),gn?(0,Y.jsx)(KJ,{entries:ct,onRestore:e=>Xr(e),onDelete:Zr,onClose:()=>_n(!1)}):null]}),(0,Y.jsx)(`div`,{className:G(`group rounded-3xl p-px transition-colors duration-200`,Ot.composerFrameClassName),onDragEnter:Vr,onDragOver:Hr,onDragLeave:Ur,onDrop:Wr,children:(0,Y.jsxs)(`div`,{ref:Cn,"data-chat-composer-compact":vn?void 0:String(ti),onPointerEnter:e=>{e.pointerType===`mouse`&&(fn(!0),hn(!1))},onPointerLeave:()=>fn(!1),onPointerDownCapture:()=>hn(!1),onKeyDownCapture:()=>hn(!1),"data-chat-composer-mobile-collapsed":yn?`true`:`false`,className:G(`rounded-[max(0px,calc(var(--radius-3xl)-2px))] border-0 bg-[color-mix(in_srgb,var(--card)_var(--app-composer-alpha),transparent)] dark:bg-[color-mix(in_srgb,var(--card)_var(--app-composer-dark-alpha),transparent)] [-webkit-backdrop-filter:var(--app-composer-filter)] [backdrop-filter:var(--app-composer-filter)] shadow-[0_6px_18px_rgba(0,0,0,0.06),0_1px_3px_rgba(0,0,0,0.05)] outline-none transition-[background-color,box-shadow] duration-200 has-focus-visible:shadow-[0_8px_24px_rgba(0,0,0,0.09),0_1px_4px_rgba(0,0,0,0.07)] dark:shadow-[inset_0_1px_0_rgba(255,255,255,0.06),0_10px_28px_rgba(0,0,0,0.4),0_1px_3px_rgba(0,0,0,0.35)] dark:has-focus-visible:shadow-[inset_0_1px_0_rgba(255,255,255,0.08),0_12px_32px_rgba(0,0,0,0.5),0_1px_4px_rgba(0,0,0,0.4)]`,Ir?`bg-accent/30 shadow-lg/12 ring-1 ring-inset ring-primary/45 [--lg-plate-alpha:72%] [--lg-plate-color:color-mix(in_srgb,var(--accent)_38%,var(--card))]`:null,v?`opacity-75`:null,Ot.composerSurfaceClassName),onFocusCapture:e=>{let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||(jn.current!==null&&(window.cancelAnimationFrame(jn.current),jn.current=null),un(!0),hn(!1))},onBlurCapture:()=>{ei()},onClick:e=>{if(!yn||!ar)return;let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||un(!0)},children:[(0,Y.jsx)(zJ,{hostRef:Cn}),!yn&&(b?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Fq,{approval:b,pendingCount:x.length,isResponding:O.includes(b.requestId),onRespondToApproval:pe})}):S.length>0?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Iq,{pendingUserInputs:S,respondingRequestIds:O,answers:E,questionIndex:D,onToggleOption:me,onAdvance:ge})}):k&&j?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Rq,{planTitle:Ec(j.planMarkdown)??null},j.id)}):er&&p?(0,Y.jsx)(tY,{goal:p,isRunning:m===`running`,onBudgetChange:je,onRetry:Ne,onEdit:Pe,onStatusChange:Ie,onClear:Le}):null),yn&&b?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(Fq,{approval:b,pendingCount:x.length,isResponding:O.includes(b.requestId),onRespondToApproval:pe})}):yn&&S.length>0?(0,Y.jsxs)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:[(0,Y.jsx)(Iq,{pendingUserInputs:S,respondingRequestIds:O,answers:E,questionIndex:D,onToggleOption:me,onAdvance:ge}),C?.activeQuestion?.multiSelect?(0,Y.jsx)(`div`,{className:`px-3 pb-3 sm:px-4`,children:(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-compact":`true`,className:`flex min-w-0 items-center justify-end gap-2 rounded-lg border border-border/55 bg-background/55 p-1.5`,children:(0,Y.jsx)(OK,{compact:!0,pendingAction:gr,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:_e,onInterrupt:Qr,onImplementPlanInNewThread:$r})})}):null]}):null,te?(0,Y.jsx)(`div`,{className:`px-3 pt-2 sm:px-4`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(CJ,{...te})}):null,(0,Y.jsx)(_J,{editorRef:xn,isComposerCollapsedMobile:yn,hasComposerHeader:tr,isComposerApprovalState:Qn,resolvedTheme:B,composerMenuOpen:Wn,composerMenuItems:Un,isComposerMenuLoading:Yn,composerTriggerKind:Hn,composerTrigger:qt,composerMenuEmptyState:Xn,activeComposerMenuItemId:Kn?.id??null,onComposerMenuItemHighlighted:Ar,onSelectComposerItem:kr,composerSourceControlContexts:We,onRemoveSourceControlContext:Gr,composerImages:He,nonPersistedComposerImageIdSet:Zn,fileUploadRecords:Ln,onExpandImage:Ae,onRemoveImage:K,onRetryFileUpload:zr,onReattachFile:Jr,pendingUserInputCount:S.length,prompt:Be,composerCursor:Wt,composerTerminalContexts:Ue,skills:Et?.skills??[],showMobilePendingAnswerActions:vr,onRemoveTerminalContext:br,onPromptChange:Sr,onComposerCommandKey:Fr,onComposerPaste:Br,activePendingProgress:C,showPlanFollowUpPrompt:k,activeProposedPlan:j,environmentUnavailable:v,phase:m,isConnecting:h,isEditorDisabled:ar,showCollapsedSendAction:ir,collapsedSendActionLabel:`Send message`,collapsedSendActionDisabled:_r,onCollapsedSend:Pr,isSendBusy:g,pendingPrimaryAction:gr,onPreviousPendingQuestion:_e,onInterrupt:Qr,onImplementPlanInNewThread:$r}),!vn&&yt===`claudeAgent`&&(0,Y.jsx)(lA,{activities:ee??[]}),yn||b?null:(0,Y.jsx)(sq,{isFooterCompact:en,isPrimaryActionsCompact:nn,isMobileViewport:vn,hideOnMobilePendingAnswers:vr,environmentId:r,gitCwd:ae,hasSourceControlRemote:Je,onSelectIssue:Dr,onSelectChangeRequest:Or,onAttachFile:e=>{Lr([e])},executionTargets:e.executionTargets,selectedExecutionEnvironmentId:r,executionTargetLocked:e.executionTargetLocked,onExecutionTargetChange:e.onExecutionTargetChange,selectedInstanceId:xt,selectedModel:Rt,lockedProvider:L,lockedContinuationGroupKey:bt,providerInstanceEntries:ft,keybindings:re,modelOptionsByInstance:Lt,modelOptions:At,savedModelOptionsByInstance:Ct??void 0,terminalOpen:V,isModelPickerOpen:an,...Ot.modelPickerIconClassName?{modelPickerIconClassName:Ot.modelPickerIconClassName}:{},onModelPickerOpenChange:sn,onProviderModelSelect:ye,showInteractionModeToggle:Pt.showInteractionModeToggle,askModeSupported:Pt.askModeSupported,showPlanSidebarToggle:!1,interactionMode:F,runtimeMode:P,tokenMode:I,planSidebarLabel:M,planSidebarOpen:N,providerTraitsMenuContent:pr,providerTraitsChips:mr,onInteractionModeChange:Se,onTogglePlanSidebar:Ee,onRuntimeModeChange:xe,onTokenModeChange:Ce,contextWindowUsage:Ht,contextWindowRateLimits:Ut,contextWindowRateLimitsCheckedAt:$c(Et,v===null)?Et?.checkedAt:void 0,pendingAction:gr,isRunning:m===`running`,showPlanFollowUpPrompt:S.length===0&&k,promptHasText:Be.trim().length>0,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:_,hasSendableContent:Bn,sendDisabledReason:zn,onPreviousPendingQuestion:_e,onInterrupt:Qr,onImplementPlanInNewThread:$r})]})})]})})),_Y=(0,q.lazy)(()=>r(()=>import(`./ThreadTerminalDrawer-Bfs5NCNv.js`).then(e=>e.n),__vite__mapDeps([0,1]))),vY=(0,q.memo)(function(e){let t=(0,J.c)(77),{threadRef:n,threadId:r,visible:i,launchContext:a,focusRequestId:s,splitShortcutLabel:c,newShortcutLabel:l,closeShortcutLabel:u,keybindings:d,onAddTerminalContext:f}=e,p;t[0]===n?p=t[1]:(p=Jt(n),t[0]=n,t[1]=p);let m=me(p),h;t[2]===n?h=t[3]:(h=e=>e.getDraftThreadByRef(n),t[2]=n,t[3]=h);let g=Rr(h),_;t[4]!==g||t[5]!==m?(_=m?o(m.environmentId,m.projectId):g?o(g.environmentId,g.projectId):null,t[4]=g,t[5]=m,t[6]=_):_=t[6];let v=_,y;t[7]===v?y=t[8]:(y=Gr(v),t[7]=v,t[8]=y);let b=me(y),x;t[9]===n?x=t[10]:(x=e=>Et(e.terminalStateByThreadKey,n),t[9]=n,t[10]=x);let S=ct(x),C=ct(yY),w=ct(bY),T=ct(xY),E=ct(SY),D=ct(CY),[O,k]=(0,q.useState)(0),A=m?.worktreePath??g?.worktreePath??null,j;bb0:{if(a!==null){j=a.worktreePath;break bb0}j=A}let M=j,N;t[11]!==M||t[12]!==a?.cwd||t[13]!==b?(N=()=>a?.cwd??(b?af({project:{cwd:b.cwd},worktreePath:M}):null),t[11]=M,t[12]=a?.cwd,t[13]=b,t[14]=N):N=t[14],a?.cwd;let P;t[15]===N?P=t[16]:(P=N(),t[15]=N,t[16]=P);let F=P,I;t[17]!==M||t[18]!==b?(I=b?of({project:{cwd:b.cwd},worktreePath:M}):{},t[17]=M,t[18]=b,t[19]=I):I=t[19];let L=I,R;t[20]===i?R=t[21]:(R=()=>{i&&k(wY)},t[20]=i,t[21]=R);let z=R,ee;t[22]!==C||t[23]!==n?(ee=e=>{C(n,e)},t[22]=C,t[23]=n,t[24]=ee):ee=t[24];let te=ee,B;t[25]!==z||t[26]!==w||t[27]!==n?(B=()=>{w(n,`terminal-${Zt()}`),z()},t[25]=z,t[26]=w,t[27]=n,t[28]=B):B=t[28];let ne=B,re;t[29]!==z||t[30]!==T||t[31]!==n?(re=()=>{T(n,`terminal-${Zt()}`),z()},t[29]=z,t[30]=T,t[31]=n,t[32]=re):re=t[32];let ie=re,V;t[33]!==z||t[34]!==E||t[35]!==n?(V=e=>{E(n,e),z()},t[33]=z,t[34]=E,t[35]=n,t[36]=V):V=t[36];let ae=V,H;t[37]!==z||t[38]!==D||t[39]!==S.terminalIds.length||t[40]!==n?(H=e=>{let t=Dr(n.environmentId);if(!t)return;let r=S.terminalIds.length<=1;Nd.close({threadRef:n,terminalId:e},t.terminal,r).catch(TY),D(n,e),z()},t[37]=z,t[38]=D,t[39]=S.terminalIds.length,t[40]=n,t[41]=H):H=t[41];let U=H,oe;t[42]!==f||t[43]!==i?(oe=e=>{i&&f(e)},t[42]=f,t[43]=i,t[44]=oe):oe=t[44];let se=oe;if(!b||!S.terminalOpen||!F)return null;let ce=i?void 0:`hidden`,le;t[45]===S.terminalHeight?le=t[46]:(le=(0,Y.jsx)(`div`,{className:`thread-terminal-drawer relative flex min-w-0 shrink-0 items-center border-border/80 border-t bg-background px-4 text-muted-foreground text-sm`,style:{height:S.terminalHeight},children:`Loading terminal...`}),t[45]=S.terminalHeight,t[46]=le);let ue=s+O+ +!!i,de=i?c:void 0,fe=i?l:void 0,pe=i?u:void 0,he;t[47]!==ae||t[48]!==U||t[49]!==ie||t[50]!==F||t[51]!==M||t[52]!==se||t[53]!==d||t[54]!==L||t[55]!==te||t[56]!==ne||t[57]!==ue||t[58]!==de||t[59]!==fe||t[60]!==pe||t[61]!==S.activeTerminalGroupId||t[62]!==S.activeTerminalId||t[63]!==S.runningTerminalIds||t[64]!==S.terminalGroups||t[65]!==S.terminalHeight||t[66]!==S.terminalIds||t[67]!==r||t[68]!==n||t[69]!==i?(he=(0,Y.jsx)(_Y,{threadRef:n,threadId:r,cwd:F,worktreePath:M,runtimeEnv:L,visible:i,height:S.terminalHeight,terminalIds:S.terminalIds,runningTerminalIds:S.runningTerminalIds,activeTerminalId:S.activeTerminalId,terminalGroups:S.terminalGroups,activeTerminalGroupId:S.activeTerminalGroupId,focusRequestId:ue,onSplitTerminal:ne,onNewTerminal:ie,splitShortcutLabel:de,newShortcutLabel:fe,closeShortcutLabel:pe,keybindings:d,onActiveTerminalChange:ae,onCloseTerminal:U,onHeightChange:te,onAddTerminalContext:se}),t[47]=ae,t[48]=U,t[49]=ie,t[50]=F,t[51]=M,t[52]=se,t[53]=d,t[54]=L,t[55]=te,t[56]=ne,t[57]=ue,t[58]=de,t[59]=fe,t[60]=pe,t[61]=S.activeTerminalGroupId,t[62]=S.activeTerminalId,t[63]=S.runningTerminalIds,t[64]=S.terminalGroups,t[65]=S.terminalHeight,t[66]=S.terminalIds,t[67]=r,t[68]=n,t[69]=i,t[70]=he):he=t[70];let ge;t[71]!==le||t[72]!==he?(ge=(0,Y.jsx)(q.Suspense,{fallback:le,children:he}),t[71]=le,t[72]=he,t[73]=ge):ge=t[73];let _e;return t[74]!==ce||t[75]!==ge?(_e=(0,Y.jsx)(`div`,{className:ce,children:ge}),t[74]=ce,t[75]=ge,t[76]=_e):_e=t[76],_e});function yY(e){return e.setTerminalHeight}function bY(e){return e.splitTerminal}function xY(e){return e.newTerminal}function SY(e){return e.setActiveTerminal}function CY(e){return e.closeTerminal}function wY(e){return e+1}function TY(){}function EY(e){let t=(0,J.c)(7),{image:n,className:r}=e,i=r===void 0?`max-h-[86vh] max-w-[92vw]`:r,[a,o]=(0,q.useState)(),s;return t[0]!==i||t[1]!==a||t[2]!==n.height||t[3]!==n.name||t[4]!==n.src||t[5]!==n.width?(s=a===n.src?(0,Y.jsx)(`p`,{role:`status`,className:`p-6 text-sm text-muted-foreground`,children:`Could not display this image. Download it to open it.`}):(0,Y.jsx)(`img`,{src:n.src,alt:n.name,...n.width!==void 0&&n.height!==void 0?{width:n.width,height:n.height}:{},onError:()=>o(n.src),className:`h-auto w-auto select-none rounded-lg border border-border/70 bg-background object-contain shadow-2xl ${i}`,draggable:!1}),t[0]=i,t[1]=a,t[2]=n.height,t[3]=n.name,t[4]=n.src,t[5]=n.width,t[6]=s):s=t[6],s}var DY=(0,q.memo)(function(e){let t=(0,J.c)(31),{preview:n,onClose:r}=e,i=$s(),[a,o]=(0,q.useState)(n),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{o(n)},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,q.useEffect)(s,c);let l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=e=>{o(t=>{if(t.images.length<=1)return t;let n=(t.index+e+t.images.length)%t.images.length;return n===t.index?t:{...t,index:n}})},t[3]=l):l=t[3];let u=l,d,f;t[4]!==r||t[5]!==a.images.length?(d=()=>{let e=e=>{if($l(e)){if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),r();return}if(!(a.images.length<=1)){if(e.key===`ArrowLeft`){e.preventDefault(),e.stopPropagation(),u(-1);return}e.key===`ArrowRight`&&(e.preventDefault(),e.stopPropagation(),u(1))}}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},f=[u,r,a.images.length],t[4]=r,t[5]=a.images.length,t[6]=d,t[7]=f):(d=t[6],f=t[7]),Vs(d,f);let p=a.images[a.index];if(!p||!i)return null;let m;t[8]===r?m=t[9]:(m=(0,Y.jsx)(`button`,{type:`button`,className:`absolute inset-0 z-0 cursor-zoom-out`,"aria-label":`Close image preview`,onClick:r}),t[8]=r,t[9]=m);let h;t[10]===a.images.length?h=t[11]:(h=a.images.length>1&&(0,Y.jsx)(W,{type:`button`,size:`icon`,variant:`ghost`,className:`absolute left-2 top-1/2 z-20 -translate-y-1/2 text-white/90 hover:bg-white/10 hover:text-white sm:left-6`,"aria-label":`Previous image`,onClick:()=>u(-1),children:(0,Y.jsx)(_s,{className:`size-5`})}),t[10]=a.images.length,t[11]=h);let g;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,Y.jsx)(Ut,{}),t[12]=g):g=t[12];let _;t[13]===r?_=t[14]:(_=(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`absolute right-2 top-2 z-20`,onClick:r,"aria-label":`Close image preview`,children:g}),t[13]=r,t[14]=_);let v;t[15]===p?v=t[16]:(v=(0,Y.jsx)(EY,{image:p}),t[15]=p,t[16]=v);let y=a.images.length>1?` (${a.index+1}/${a.images.length})`:``,b;t[17]!==p.name||t[18]!==y?(b=(0,Y.jsxs)(`p`,{className:`mt-2 max-w-[92vw] truncate text-center text-xs text-muted-foreground/80`,children:[p.name,y]}),t[17]=p.name,t[18]=y,t[19]=b):b=t[19];let x;t[20]!==v||t[21]!==b||t[22]!==_?(x=(0,Y.jsxs)(`div`,{className:`relative isolate z-10 max-h-[92vh] max-w-[92vw]`,children:[_,v,b]}),t[20]=v,t[21]=b,t[22]=_,t[23]=x):x=t[23];let S;t[24]===a.images.length?S=t[25]:(S=a.images.length>1&&(0,Y.jsx)(W,{type:`button`,size:`icon`,variant:`ghost`,className:`absolute right-2 top-1/2 z-20 -translate-y-1/2 text-white/90 hover:bg-white/10 hover:text-white sm:right-6`,"aria-label":`Next image`,onClick:()=>u(1),children:(0,Y.jsx)(Ms,{className:`size-5`})}),t[24]=a.images.length,t[25]=S);let C;return t[26]!==x||t[27]!==S||t[28]!==m||t[29]!==h?(C=(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/75 px-4 py-6 [-webkit-app-region:no-drag]`,role:`dialog`,"aria-modal":`true`,"aria-label":`Expanded image preview`,children:[m,h,x,S]}),t[26]=x,t[27]=S,t[28]=m,t[29]=h,t[30]=C):C=t[30],C}),OY=class extends Error{constructor(e){super(e),this.name=`ContextHandoffChunkError`}};async function kY(e){let t=await crypto.subtle.digest(`SHA-256`,new TextEncoder().encode(e));return Array.from(new Uint8Array(t),e=>e.toString(16).padStart(2,`0`)).join(``)}async function AY(e){let t=[],n=0,r=null,i=null;for(;;){if(e.signal?.aborted)throw new DOMException(`The operation was aborted.`,`AbortError`);let a=await e.read(n);if(a.offset!==n)throw new OY(`The server returned a gap or overlapping chunk.`);if(r!==null&&a.digest!==r)throw new OY(`The artifact digest changed during transfer.`);if(i!==null&&a.totalBytes!==i)throw new OY(`The artifact size changed during transfer.`);r=a.digest,i=a.totalBytes;let o=new TextEncoder().encode(a.chunk).byteLength,s=n+o;if(t.push(a.chunk),e.onProgress?.(s,a.totalBytes),a.nextOffset===null){if(s!==a.totalBytes)throw new OY(`The final chunk does not match the artifact size.`);break}if(a.nextOffset!==s||a.nextOffset<=n)throw new OY(`The server returned a non-sequential chunk offset.`);n=a.nextOffset}let a=t.join(``);if(await kY(a)!==r)throw new OY(`The downloaded artifact failed integrity verification.`);return{text:a,digest:r,totalBytes:i}}async function jY(e){let t=null,n=await AY({read:async n=>{let r=await e.read(n);if(t!==null&&r.filename!==t)throw new OY(`The export filename changed during transfer.`);return t=r.filename,r},...e.signal?{signal:e.signal}:{},...e.onProgress?{onProgress:e.onProgress}:{}}),r=t??``,i=`.${e.expectedExtension}`;if(!/^ryco-context-handoff-[a-zA-Z0-9_-]+-(sent|complete)\.(md|json)$/.test(r)||!r.endsWith(i))throw new OY(`The server returned an unsafe export filename.`);return{blob:new Blob([n.text],{type:e.expectedExtension===`md`?`text/markdown;charset=utf-8`:`application/json`}),filename:r}}function MY(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.click(),queueMicrotask(()=>URL.revokeObjectURL(n))}var NY={messages:`Messages`,plans:`Plans`,tools:`Tools and terminal results`,checkpoints:`Checkpoints and changed files`,notices:`Notices and pending questions`,subagents:`Subagents`,priorHandoffs:`Prior handoffs`,triggeringMessage:`Triggering user message`},PY={sent:`Sent to model`,"prepared-not-sent":`Prepared, not sent`,"prepared-not-accepted":`Prepared payload, not accepted`,"delivery-uncertain":`Attempted payload; delivery uncertain`};function FY(e){return e instanceof Error?e.message:`The context artifact could not be loaded.`}function IY(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function LY(e,t){if(!t||typeof t!=`object`)return(0,Y.jsx)(`pre`,{className:`whitespace-pre-wrap break-words text-xs`,children:String(t)});let n=t,r=typeof n.text==`string`?n.text:null,i=typeof n.summary==`string`?n.summary:null,a=typeof n.command==`string`?n.command:null,o=typeof n.output==`string`?n.output:null;return e===`messages`||e===`triggeringMessage`?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`p`,{className:`text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:typeof n.role==`string`?n.role:`Message`}),(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-sm leading-6`,children:r})]}):e===`tools`?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[i?(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:i}):null,a?(0,Y.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted/55 p-2 text-xs`,children:a}):null,o?(0,Y.jsx)(`pre`,{className:`max-h-56 overflow-auto whitespace-pre-wrap rounded-md bg-muted/35 p-2 text-xs`,children:o}):null]}):(0,Y.jsx)(`pre`,{className:`max-h-72 overflow-auto whitespace-pre-wrap break-words rounded-md bg-muted/35 p-2 text-xs leading-5`,children:JSON.stringify(t,null,2)})}function RY(e){let t=(0,q.useMemo)(()=>or(e.environmentId).contextHandoff,[e.environmentId]),n=(0,q.useRef)(0),r=(0,q.useRef)(null),[i,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(null),[c,l]=(0,q.useState)(`sent`),[u,d]=(0,q.useState)(`readable`),[f,p]=(0,q.useState)({}),[m,h]=(0,q.useState)(null),[g,_]=(0,q.useState)(`idle`),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(0),[w,T]=(0,q.useState)(null),E=(0,q.useCallback)(async()=>{let r=++n.current;s(null),a(null);try{let i=await t.getInspectionSummary({threadId:e.threadId,handoffId:e.marker.handoffId});if(n.current!==r)return;a(i),l(i.status===`consumed`&&i.sent.available?`sent`:`complete`)}catch(e){n.current===r&&s(FY(e))}},[t,e.marker.handoffId,e.threadId]);(0,q.useEffect)(()=>(E(),r.current?.focus(),()=>{n.current+=1}),[E]),(0,q.useEffect)(()=>{p({}),h(null),_(`idle`),y(null),T(null)},[c]);let D=(0,q.useCallback)(async(r,a=null)=>{let o=`${c}:${r}`,s=n.current;p(e=>({...e,[o]:{entries:a?e[o]?.entries??[]:[],nextCursor:a,loading:!0,error:null}}));try{let l=await t.listInspectionEntries({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,section:r,...a?{cursor:a}:{}});if(n.current!==s||l.artifactDigest!==i?.[c].digest)return;p(e=>({...e,[o]:{entries:a?[...e[o]?.entries??[],...l.entries]:l.entries,nextCursor:l.nextCursor,loading:!1,error:null}}))}catch(e){if(n.current!==s)return;p(t=>({...t,[o]:{entries:t[o]?.entries??[],nextCursor:a,loading:!1,error:FY(e)}}))}},[t,e.marker.handoffId,e.threadId,c,i]),O=(0,q.useCallback)(async()=>{let r=n.current;_(`loading`),y(null);try{let i=await AY({read:n=>t.readRawPayloadChunk({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,offset:n})});if(n.current!==r)return;h({text:i.text,digest:i.digest}),_(`idle`)}catch(e){if(n.current!==r)return;_(`error`),y(FY(e))}},[t,e.marker.handoffId,e.threadId,c]);(0,q.useEffect)(()=>{u===`raw`&&i?.[c].available===!0&&m===null&&g===`idle`&&O()},[O,m,g,c,i,u]);let k=(0,q.useCallback)(async n=>{x(n),C(0),T(null);try{let r=await jY({read:r=>t.readExportChunk({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,format:n,offset:r}),expectedExtension:n===`markdown`?`md`:`json`,onProgress:(e,t)=>C(t===0?1:Math.min(1,e/t))});MY(r.blob,r.filename)}catch(e){T(FY(e))}finally{x(null)}},[t,e.marker.handoffId,e.threadId,c]),A=i?.[c]??null,j=i?.sources??e.marker.sources,M=i?.target??e.marker.target;return(0,Y.jsxs)(`section`,{"aria-label":`Context handoff inspector`,className:`flex min-h-0 w-full flex-1 flex-col bg-background`,onKeyDown:t=>{t.key===`Escape`&&e.onClose()},children:[(0,Y.jsxs)(`header`,{className:`shrink-0 border-b border-border px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wide text-muted-foreground`,children:`Context handoff`}),(0,Y.jsxs)(`div`,{className:`mt-1 flex min-w-0 flex-wrap items-center gap-1.5 text-sm font-medium`,children:[j.map(e=>(0,Y.jsx)(Es,{endpoint:e,className:`max-w-44`},`${e.providerInstanceId}:${e.modelSlug}`)),(0,Y.jsx)(Wo,{className:`size-3.5 text-muted-foreground`}),(0,Y.jsx)(Es,{endpoint:M,className:`max-w-44`})]})]}),(0,Y.jsx)(W,{ref:r,type:`button`,size:`icon`,variant:`ghost`,"aria-label":`Close context handoff inspector`,onClick:e.onClose,children:(0,Y.jsx)(Ut,{})})]}),i?(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-foreground`,children:[(0,Y.jsx)(zr,{className:`size-3.5`}),PY[i.deliveryLabel]]}),(0,Y.jsx)(`span`,{children:new Date(i.updatedAt).toLocaleString()})]}):null]}),o?(0,Y.jsxs)(`div`,{className:`m-4 rounded-lg border border-destructive/25 bg-destructive/5 p-3 text-sm`,children:[(0,Y.jsx)(`p`,{children:o}),(0,Y.jsxs)(W,{className:`mt-3`,size:`sm`,variant:`outline`,onClick:()=>void E(),children:[(0,Y.jsx)(rc,{}),` Retry`]})]}):i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`shrink-0 space-y-3 border-b border-border px-4 py-3`,children:[(0,Y.jsx)(`div`,{className:`grid grid-cols-2 rounded-lg bg-muted/55 p-1`,children:[`sent`,`complete`].map(e=>{let t=i[e].available;return(0,Y.jsx)(`button`,{type:`button`,disabled:!t,onClick:()=>l(e),className:G(`rounded-md px-2 py-1.5 text-xs font-medium transition-colors`,c===e?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`,!t&&`cursor-not-allowed opacity-45`),children:e===`sent`?`Sent to model`:`Complete artifact`},e)})}),A?.available?(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`span`,{children:[A.entryCount,` context entries`]}),(0,Y.jsx)(`span`,{children:IY(A.byteCount)}),c===`sent`&&i?.maxInputChars!=null?(0,Y.jsxs)(`span`,{children:[`Budget: `,i.maxInputChars.toLocaleString(),` characters (`,i.budgetSource??`unknown`,i.contextWindowTokens==null?``:`, ${i.contextWindowTokens.toLocaleString()} token window`,`)`]}):null,A.truncated?(0,Y.jsx)(`span`,{children:`Trimmed to the target input budget`}):null]}):(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Exact sent payload unavailable for this handoff. The complete artifact remains available when it was prepared.`}),(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsx)(`div`,{className:`flex rounded-md border border-border p-0.5`,children:[`readable`,`raw`].map(e=>(0,Y.jsx)(`button`,{type:`button`,disabled:!A?.available,onClick:()=>d(e),className:G(`rounded px-2 py-1 text-xs`,u===e?`bg-muted font-medium`:`text-muted-foreground`),children:e===`readable`?`Readable`:`Raw payload`},e))}),(0,Y.jsxs)(`div`,{className:`flex gap-1`,children:[(0,Y.jsxs)(W,{size:`sm`,variant:`outline`,disabled:!A?.available||b!==null,onClick:()=>void k(`markdown`),children:[b===`markdown`?(0,Y.jsx)(Er,{className:`animate-spin`}):(0,Y.jsx)(fi,{}),`Markdown`]}),(0,Y.jsxs)(W,{size:`sm`,variant:`outline`,disabled:!A?.available||b!==null,onClick:()=>void k(`json`),children:[b===`json`?(0,Y.jsx)(Er,{className:`animate-spin`}):(0,Y.jsx)(Pu,{}),`JSON`]})]})]}),(0,Y.jsxs)(`p`,{className:`flex items-start gap-1.5 text-[11px] leading-4 text-muted-foreground`,children:[(0,Y.jsx)(ic,{className:`mt-0.5 size-3 shrink-0`}),`Exports may contain conversation text, commands, tool output, and repository paths.`]}),b?(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Verifying export… `,Math.round(S*100),`%`]}):null,w?(0,Y.jsx)(`p`,{className:`text-xs text-destructive`,children:w}):null]}),(0,Y.jsx)(ol,{children:(0,Y.jsx)(`div`,{className:`space-y-2 p-4`,children:u===`raw`?g===`loading`?(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,Y.jsx)(Er,{className:`size-4 animate-spin`}),` Loading and verifying raw payload…`]}):g===`error`?(0,Y.jsxs)(`div`,{className:`text-sm text-destructive`,children:[(0,Y.jsx)(`p`,{children:v}),(0,Y.jsx)(W,{className:`mt-2`,size:`sm`,variant:`outline`,onClick:()=>void O(),children:`Retry`})]}):m?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsxs)(`p`,{className:`text-[11px] text-muted-foreground`,children:[`Verified SHA-256 ·`,` `,(0,Y.jsxs)(`span`,{className:`font-mono`,children:[m.digest.slice(0,16),`…`]})]}),(0,Y.jsx)(`pre`,{className:`overflow-auto whitespace-pre-wrap break-words rounded-lg bg-muted/40 p-3 text-xs leading-5`,children:m.text})]}):null:A?.available?A.sections.map(e=>{let t=`${c}:${e.section}`,n=f[t];return(0,Y.jsxs)(`details`,{className:`group rounded-lg border border-border bg-card/35`,onToggle:t=>{t.currentTarget.open&&!n&&D(e.section)},children:[(0,Y.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-3 px-3 py-2.5 text-sm font-medium`,children:[(0,Y.jsx)(`span`,{children:NY[e.section]}),(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[e.entryCount,(0,Y.jsx)(fr,{className:`size-3.5 transition-transform group-open:rotate-180`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-3 border-t border-border px-3 py-3`,children:[n?.entries.map(t=>(0,Y.jsx)(`article`,{className:`rounded-md bg-muted/25 p-2.5`,children:LY(e.section,t.value)},t.id)),n?.loading?(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(Er,{className:`size-3.5 animate-spin`}),` Loading…`]}):null,n?.error?(0,Y.jsx)(`p`,{className:`text-xs text-destructive`,children:n.error}):null,n?.nextCursor&&!n.loading?(0,Y.jsx)(W,{size:`sm`,variant:`ghost`,onClick:()=>void D(e.section,n.nextCursor),children:`Load more`}):null]})]},t)}):null})})]}):(0,Y.jsxs)(`div`,{className:`flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,Y.jsx)(Er,{className:`size-4 animate-spin`}),` Loading context artifact…`]})]})}function zY({open:e,environmentId:t,projectId:n,threadId:r,cwd:i,initialReference:a,onOpenChange:o,onPrepared:s}){let c=(0,q.useRef)(null),[l,u]=(0,q.useState)(a??``),[d,f]=(0,q.useState)(!1),[p,m]=(0,q.useState)(null),[h,g]=ro(l,{wait:450},e=>({isPending:e.isPending})),{data:_=null}=We({environmentId:t,cwd:i}),v=(0,q.useMemo)(()=>no(_?.sourceControlProvider),[_?.sourceControlProvider]),y=v.terminology,b=v.Icon;(0,q.useEffect)(()=>{e&&(u(a??``),f(!1),m(null))},[a,e]),(0,q.useEffect)(()=>{if(!e)return;let t=window.requestAnimationFrame(()=>{c.current?.focus(),c.current?.select()});return()=>{window.cancelAnimationFrame(t)}},[e]);let x=GG(l),S=GG(h),C=jG({environmentId:t,cwd:i,reference:e?S:null}),w=MG({environmentId:t,cwd:i,reference:x})?.pullRequest??null,T=NG({mutationFn:e=>{if(!i||!t)throw Error(`Pull request thread preparation is unavailable.`);return or(t).git.preparePullRequestThread({cwd:i,reference:e.reference,mode:e.mode,...n?{projectId:n}:{},...e.threadId?{threadId:e.threadId}:{}})},invalidates:i?[Vr(i)]:[]}),E=(x!==null&&x===S?C.data?.pullRequest??null:null)??w,D=e&&x!==null&&E===null&&(g.state.isPending||x!==S||C.isPending||C.isFetching),O=(0,q.useMemo)(()=>{switch(E?.state){case`merged`:return`text-violet-600 dark:text-violet-300/90`;case`closed`:return`text-zinc-500 dark:text-zinc-400/80`;case`open`:return`text-emerald-600 dark:text-emerald-300/90`;default:return`text-muted-foreground`}},[E?.state]),k=(0,q.useCallback)(async e=>{if(!x){f(!0);return}if(x&&E&&i){m(e);try{let t=await T.mutateAsync({reference:x,mode:e,...e===`worktree`?{threadId:r}:{}});await s({branch:t.branch,worktreePath:t.worktreePath}),o(!1)}finally{m(null)}}},[i,o,s,x,T,E,r]),A=(d?l.trim().length===0?`Paste a ${y.singular} URL, checkout command, or enter 123 / #123.`:x===null?`Use a ${y.singular} URL, checkout command, 123, or #123.`:null:null)??(E===null&&C.isError?C.error instanceof Error?C.error.message:`Failed to resolve ${y.singular}.`:T.error instanceof Error?T.error.message:T.error?`Failed to prepare ${y.singular} thread.`:null);return(0,Y.jsx)(vi,{open:e,onOpenChange:e=>{T.isPending||o(e)},children:(0,Y.jsxs)(ia,{className:`project-glass-surface max-w-xl`,surface:`glass`,children:[(0,Y.jsxs)(ta,{children:[(0,Y.jsxs)(Ri,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(b,{className:`size-4`}),`Checkout `,y.singular]}),(0,Y.jsxs)(qa,{children:[`Resolve a `,v.providerName,` `,y.singular,`, then create the draft thread in the main repo or in a dedicated worktree.`]})]}),(0,Y.jsxs)(Qi,{className:`space-y-4`,children:[(0,Y.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground capitalize`,children:y.singular}),(0,Y.jsx)(al,{ref:c,placeholder:`${y.shortLabel} URL, checkout command, or #42`,value:l,onChange:e=>{f(!0),u(e.target.value)},onKeyDown:e=>{e.key===`Enter`&&$l(e)&&(e.preventDefault(),!D&&!T.isPending&&k(`local`))}})]}),E?(0,Y.jsx)(`div`,{className:`rounded-xl border border-border/70 bg-muted/24 p-3`,children:(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`truncate font-medium text-sm`,children:E.title}),(0,Y.jsxs)(`p`,{className:`truncate text-muted-foreground text-xs`,children:[`#`,E.number,` · `,E.headBranch,` to`,` `,E.baseBranch]})]}),(0,Y.jsx)(`span`,{className:G(`shrink-0 text-xs capitalize`,O),children:E.state})]})}):null,D?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground text-xs`,children:[(0,Y.jsx)(lo,{className:`size-3.5`}),`Resolving `,y.singular,`...`]}):null,A?(0,Y.jsx)(`p`,{className:`text-destructive text-xs`,children:A}):null]}),(0,Y.jsxs)(Ti,{children:[(0,Y.jsx)(W,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>o(!1),disabled:T.isPending,children:`Cancel`}),(0,Y.jsx)(W,{type:`button`,size:`sm`,variant:`outline`,onClick:()=>{k(`local`)},disabled:!i||!E||D||T.isPending,children:p===`local`?`Preparing local...`:`Local`}),(0,Y.jsx)(W,{type:`button`,size:`sm`,onClick:()=>{k(`worktree`)},disabled:!i||!E||D||T.isPending,children:p===`worktree`?`Preparing worktree...`:`Worktree`})]})]})})}function BY({threadRef:e,children:t}){let n=xc()===`phone`,r=Rs(ee.terminalWrite),i=ec(),a=(0,q.useRef)(!1),s=(0,q.useRef)(0),c=(0,q.useRef)(new Set);(0,q.useLayoutEffect)(()=>{a.current=!0,s.current+=1;let e=c.current;return()=>{a.current=!1;for(let t of e)t();e.clear()}},[e.environmentId,e.threadId,n,r.allowed]);let l=(0,q.useCallback)(async t=>{let r=lr(e.environmentId),l=s.current,u=r?.shellSnapshotReadiness.read(),d=et.getState().generation,f=g()?Bo(e.environmentId):null;if(g()&&!f)throw Error(`This node must be current and authorized before terminal insertion.`);let p=Jt(e)(me.getState()),m=p?Gr(o(e.environmentId,p.projectId))(me.getState()):void 0;if(!r||!u||!p||!m)throw Error(`The current thread workspace and connection must be ready before insertion.`);let h=p.worktreePath??m.cwd,_=p.worktreePath??null,v=null,y=()=>{let t=et.getState(),c=g()?Bo(e.environmentId):null;if(f&&(!c||c.selectionGeneration!==f.selectionGeneration||c.snapshotGeneration!==f.snapshotGeneration))return!1;let h=hc({hosted:g(),role:t.effectiveRole,fresh:t.directoryStatus===`ready`&&t.transportStatus===`online`,browserCurrent:t.browserStatus===`current`,sessionReady:t.sessionStatus===`ready`,method:ee.terminalWrite}).allowed,y=Jt(e)(me.getState()),b=y?Gr(o(e.environmentId,y.projectId))(me.getState()):void 0,x=Et(ct.getState().terminalStateByThreadKey,e);return a.current&&s.current===l&&i.current&&!n&&h&&t.generation===d&&lr(e.environmentId)===r&&r.shellSnapshotReadiness.read()===u&&y?.projectId===p.projectId&&(y?.worktreePath??null)===_&&b?.cwd===m.cwd&&(v===null||x.terminalOpen&&x.activeTerminalId===v)};if(!y())throw Error(`Terminal insertion is unavailable until this thread is current and authorized.`);let b=`terminal-${Zt()}`;v=b;let x=Nd.request({threadRef:e,terminalId:b,cwd:h,worktreePath:_},t,y);c.current.add(x.cancel);let S=ct.getState();S.clearTerminalLaunchContext(e),S.newTerminal(e,b),S.setTerminalOpen(e,!0);try{await x.promise}finally{c.current.delete(x.cancel)}},[i,n,e]);return(0,Y.jsx)(ZT,{value:n||!r.allowed?null:l,children:t})}function VY(e){let{environmentId:t,threadId:n,messageId:r,attachmentId:i,sizeBytes:a,mimeType:o}=e,c=JSON.stringify([t,n,r,i,a,o]),[l,u]=(0,q.useState)({identity:c}),d=(0,q.useRef)({identity:c});(0,q.useEffect)(()=>{let e={identity:c};return d.current=e,()=>{e.controller?.abort(),e.url&&URL.revokeObjectURL(e.url)}},[c]);let f=async()=>{let e=d.current;if(e.identity!==c||e.controller&&!e.controller.signal.aborted||!t||!n||!r||!i||a===void 0)return;let l=new AbortController;e.controller=l,u({identity:c,loading:!0});try{let d=Dr(t)?.attachments;if(!d)throw Error(`Attachment connection unavailable.`);let f=await s({reference:{threadId:n,messageId:r,attachmentId:i},sizeBytes:a,signal:l.signal,readChunk:e=>{if(Dr(t)?.attachments?.readChunk!==d.readChunk)throw Error(`Attachment connection changed.`);return d.readChunk(e)}});if(l.signal.aborted)return;if(Dr(t)?.attachments?.readChunk!==d.readChunk)throw Error(`Attachment connection changed.`);let p=URL.createObjectURL(new Blob([f],{type:o??`application/octet-stream`}));e.url&&URL.revokeObjectURL(e.url),e.url=p,u({identity:c,source:p})}catch{l.signal.aborted||u({identity:c,failed:!0})}finally{l.abort()}};return{...l.identity===c?l:{identity:c},load:f}}var HY=360,UY=260;function WY(e,t){if(e===void 0||t===void 0||e<=0||t<=0)return{maxWidth:`${HY}px`};let n=Math.min(HY,e,e*UY/t);return{width:`${Math.round(n)}px`,maxWidth:`100%`}}var GY=(0,q.memo)(function(e){let t=(0,J.c)(9),{attachment:n}=e,[r,i]=(0,q.useState)(null),a;t[0]!==n.name||t[1]!==n.previewUrl||t[2]!==r?(a=n.previewUrl&&r!==n.previewUrl&&(0,Y.jsx)(`audio`,{controls:!0,preload:`none`,src:n.previewUrl,"aria-label":`Play ${n.name}`,onError:()=>i(n.previewUrl??null),className:`mt-3 w-full min-w-0 px-2`}),t[0]=n.name,t[1]=n.previewUrl,t[2]=r,t[3]=a):a=t[3];let o;t[4]===n?o=t[5]:(o=(0,Y.jsx)(sJ,{attachment:n}),t[4]=n,t[5]=o);let s;return t[6]!==a||t[7]!==o?(s=(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[a,o]}),t[6]=a,t[7]=o,t[8]=s):s=t[8],s}),KY=(0,q.memo)(function(e){let t=(0,J.c)(28),n=e.attachment,r;t[0]!==n.id||t[1]!==n.mimeType||t[2]!==n.sizeBytes||t[3]!==e?(r={...e,attachmentId:n.id,sizeBytes:n.sizeBytes,mimeType:n.mimeType},t[0]=n.id,t[1]=n.mimeType,t[2]=n.sizeBytes,t[3]=e,t[4]=r):r=t[4];let{source:i,loading:a,failed:o,load:s}=VY(r);if(n.previewUrl||i||!n.id||!e.environmentId||!e.threadId||!e.messageId||!dn(n)&&!V(n)){let r=e.children,a;t[5]!==n||t[6]!==i?(a=i?{...n,previewUrl:i}:n,t[5]=n,t[6]=i,t[7]=a):a=t[7];let o=!!i,s;return t[8]!==e.children||t[9]!==a||t[10]!==o?(s=r(a,o),t[8]=e.children,t[9]=a,t[10]=o,t[11]=s):s=t[11],s}let c;t[12]===s?c=t[13]:(c=()=>void s(),t[12]=s,t[13]=c);let l;t[14]===n.name?l=t[15]:(l=(0,Y.jsx)(`span`,{className:`font-medium`,children:n.name}),t[14]=n.name,t[15]=l);let u=o?`status`:void 0,d;t[16]!==n.sizeBytes||t[17]!==o||t[18]!==a?(d=a?`Loading…`:o?`Could not load file. Click to retry.`:`Open file · ${iJ(n.sizeBytes)}`,t[16]=n.sizeBytes,t[17]=o,t[18]=a,t[19]=d):d=t[19];let f;t[20]!==u||t[21]!==d?(f=(0,Y.jsx)(`span`,{className:`text-muted-foreground`,role:u,children:d}),t[20]=u,t[21]=d,t[22]=f):f=t[22];let p;return t[23]!==a||t[24]!==c||t[25]!==l||t[26]!==f?(p=(0,Y.jsxs)(`button`,{type:`button`,disabled:a,onClick:c,className:`flex min-h-[72px] w-full flex-col items-start justify-center gap-1 px-3 py-3 text-left text-xs`,children:[l,f]}),t[23]=a,t[24]=c,t[25]=l,t[26]=f,t[27]=p):p=t[27],p}),qY=(0,q.memo)(function(e){let t=(0,J.c)(5);if(e.attachments.length===0)return null;let n=e.variant===`user`?`mb-2 flex max-w-[520px] flex-wrap items-start gap-2`:`my-2 flex w-full max-w-[520px] flex-col gap-2`,r;t[0]===e?r=t[1]:(r=e.attachments.map((t,n)=>(0,Y.jsx)(`div`,{className:`max-w-full overflow-hidden rounded-lg border border-border/80 bg-background/70`,children:(0,Y.jsx)(KY,{...e,attachment:t,children:(t,n)=>dn(t)&&t.previewUrl?(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`button`,{type:`button`,className:`block w-full cursor-zoom-in`,"aria-label":`Preview ${t.name}`,onClick:()=>{let n=mJ(e.attachments.filter(dn).map(e=>e.id===t.id?t:e),t.id);n&&e.onImageExpand(n)},children:(0,Y.jsx)(`img`,{src:t.previewUrl,alt:t.name,...t.width!==void 0&&t.height!==void 0?{width:t.width,height:t.height}:{},style:e.variant===`user`?WY(t.width,t.height):void 0,loading:`lazy`,decoding:`async`,className:e.variant===`user`?`block h-auto max-h-[260px] w-auto max-w-full object-contain`:`block h-auto max-h-[360px] w-full object-contain`})}),e.variant!==`user`&&(0,Y.jsx)(`a`,{href:aJ(t.previewUrl,t.name),download:t.name,"aria-label":`Download ${t.name}`,className:`block truncate border-t border-border/60 px-3 py-2 text-xs text-muted-foreground`,children:t.name})]}):V(t)?oJ(t.mimeType)?(0,Y.jsx)(cJ,{attachment:t}):t.mimeType.toLowerCase().startsWith(`audio/`)?(0,Y.jsx)(GY,{attachment:t}):(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(pJ,{attachment:t,initiallyOpen:n}),(0,Y.jsx)(sJ,{attachment:t})]}):(0,Y.jsx)(`div`,{className:`px-3 py-3 text-xs text-muted-foreground`,children:t.name??`Attachment`})})},`${e.environmentId}:${e.threadId}:${e.messageId}:${t.id??n}`)),t[0]=e,t[1]=r);let i;return t[2]!==n||t[3]!==r?(i=(0,Y.jsx)(`div`,{className:n,children:r}),t[2]=n,t[3]=r,t[4]=i):i=t[4],i}),JY=(0,q.memo)(function(e){let t=(0,J.c)(108),{planMarkdown:n,environmentId:r,cwd:i,workspaceRoot:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(``),[f,p]=(0,q.useState)(!1),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={onError:YY},t[0]=m):m=t[0];let{copyToClipboard:h,isCopied:g}=Pt(m),_=(0,q.useId)(),v;t[1]===n?v=t[2]:(v=Ec(n)??`Proposed plan`,t[1]=n,t[2]=v);let y=v,b;t[3]===n?b=t[4]:(b=n.split(`
196
+ `)}`}function kG(e,t){let n=(0,J.c)(4),[r,i]=(0,q.useState)(e),a,o;return n[0]!==t||n[1]!==e?(a=()=>{if(e){i(!0);return}if(t<=0){i(!1);return}let n=window.setTimeout(()=>i(!1),t);return()=>window.clearTimeout(n)},o=[t,e],n[0]=t,n[1]=e,n[2]=a,n[3]=o):(a=n[2],o=n[3]),(0,q.useEffect)(a,o),r}function AG(e){let t=(0,J.c)(20),{environmentId:n,cwd:r,query:i}=e,a=cr({environmentId:n,cwd:r,query:i}),o,s;t[0]!==r||t[1]!==n||t[2]!==i?(o=()=>On({environmentId:n,cwd:r,query:i}),s=[n,r,i],t[0]=r,t[1]=n,t[2]=i,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s);let c=kn(Wt(a)),l;t[5]===c.pages?l=t[6]:(l=Nn(c.pages),t[5]=c.pages,t[6]=l);let u=l,d=c.pages[c.pages.length-1],f=d?d.nextCursor!==null:!1,p=c.pages[0]?.totalCount??0,m;t[7]===a?m=t[8]:(m=()=>xr(a),t[7]=a,t[8]=m);let h=m,g;t[9]===a?g=t[10]:(g=()=>mr(a),t[9]=a,t[10]=g);let _=g,v;return t[11]!==h||t[12]!==f||t[13]!==_||t[14]!==u||t[15]!==c.error||t[16]!==c.isFetchingNextPage||t[17]!==c.isPending||t[18]!==p?(v={refs:u,totalCount:p,hasNextPage:f,isFetchingNextPage:c.isFetchingNextPage,isPending:c.isPending,error:c.error,fetchNextPage:h,refresh:_},t[11]=h,t[12]=f,t[13]=_,t[14]=u,t[15]=c.error,t[16]=c.isFetchingNextPage,t[17]=c.isPending,t[18]=p,t[19]=v):v=t[19],v}function jG(e){let t=(0,J.c)(5),{environmentId:n,cwd:r,reference:i}=e,a=Wn({environmentId:n,cwd:r,reference:i}),o,s;return t[0]!==r||t[1]!==n||t[2]!==i?(o=()=>wn({environmentId:n,cwd:r,reference:i}),s=[n,r,i],t[0]=r,t[1]=n,t[2]=i,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s),kn(tn(a))}function MG(e){let t=(0,J.c)(5),{environmentId:n,cwd:r,reference:i}=e,a,o;if(t[0]!==r||t[1]!==n||t[2]!==i){let e=Wn({environmentId:n,cwd:r,reference:i});a=kn,o=tn(e),t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=o}else a=t[3],o=t[4];return a(o).data}function NG(e){let[t,n]=(0,q.useState)(!1),[r,i]=(0,q.useState)(null),a=(0,q.useRef)(e);a.current=e;let o=(0,q.useRef)(!0);(0,q.useEffect)(()=>(o.current=!0,()=>{o.current=!1}),[]);let s=(0,q.useCallback)(async e=>{let t=a.current,r=t.trackingKey??null,s=t.invalidateOn??`success`,c=t.invalidates??[];n(!0),i(null),r!==null&&Fr(r);try{let r=await t.mutationFn(e);return c.length>0&&cn(c),o.current&&n(!1),r}catch(e){let t=e instanceof Error?e:Error(`Mutation failed.`);throw s===`settled`&&c.length>0&&cn(c),o.current&&(n(!1),i(t)),t}finally{r!==null&&tr(r)}},[]);return{mutate:(0,q.useCallback)(e=>{s(e).catch(()=>void 0)},[s]),mutateAsync:s,isPending:t,error:r,reset:(0,q.useCallback)(()=>{n(!1),i(null)},[])}}function PG(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n=Or(e),t[0]=e,t[1]=n),kn(n)>0}function FG(e,t,n){return`git-mutation:${e}:${t??``}:${n??``}`}var IG=/^https:\/\/github\.com\/[^/\s]+\/[^/\s]+\/pull\/(\d+)(?:[/?#].*)?$/i,LG=/^https:\/\/[^/\s]*gitlab[^/\s]*\/.+\/-\/merge_requests\/(\d+)(?:[/?#].*)?$/i,RG=/^https:\/\/[^/\s]+\/[^/\s]+\/[^/\s]+\/pulls\/(\d+)(?:[/?#].*)?$/i,zG=/^https:\/\/(?:dev\.azure\.com\/[^/\s]+\/[^/\s]+|[^/\s]+\.visualstudio\.com\/[^/\s]+)\/_git\/[^/\s]+\/pullrequest\/(\d+)(?:[/?#].*)?$/i,BG=/^#?(\d+)$/,VG=/^gh\s+pr\s+checkout\s+(.+)$/i,HG=/^glab\s+mr\s+checkout\s+(.+)$/i,UG=/^az\s+repos\s+pr\s+checkout\s+(.+)$/i;function WG(e){let t=e.trim().split(/\s+/).filter(Boolean);for(let[e,n]of t.entries()){if(n===`--id`||n===`-i`)return t[e+1]??null;if(n.startsWith(`--id=`))return n.slice(5)||null}return t.find(e=>!e.startsWith(`-`))??null}function GG(e){let t=e.trim();if(t.length===0)return null;let n=VG.exec(t),r=HG.exec(t),i=UG.exec(t),a=n?.[1]?.trim()??r?.[1]?.trim()??(i?.[1]?WG(i[1]):null)??t;if(a.length===0)return null;if((IG.exec(a)??LG.exec(a)??RG.exec(a)??zG.exec(a))?.[1])return a;let o=BG.exec(a);return o?.[1]?o[1]:null}function KG(e){return e instanceof Error?e.message:`An error occurred.`}function qG(e){let{activeWorktreePath:t,effectiveEnvMode:n,resolvedActiveBranch:r}=e;return r?n===`worktree`&&!t&&!e.omitBasePrefix?`From ${r}`:r:`Select ref`}function JG({className:e,appearance:t=`default`,environmentId:n,threadId:r,draftId:i,envLocked:a,activeThreadBranchOverride:s,onActiveThreadBranchOverrideChange:c,onCheckoutPullRequestRequest:l,onComposerFocusRequest:u,omitBasePrefix:d=!1}){let f=(0,q.useMemo)(()=>_(n,r),[n,r]),p=(0,q.useMemo)(()=>Jt(f),[f]),h=me(p),g=h?.session??null,v=me(e=>e.setThreadBranch),y=Rr(e=>i?e.getDraftSession(i):e.getDraftThreadByRef(f)),b=Rr(e=>e.setDraftThreadContext),x=h?o(h.environmentId,h.projectId):y?o(y.environmentId,y.projectId):null,S=(0,q.useMemo)(()=>Gr(x),[x]),C=me(S),w=h?.id??(y?r:void 0),T=s===void 0?h?.branch??y?.branch??null:s,E=h?.worktreePath??y?.worktreePath??null,D=C?.cwd??null,O=E??D,k=h!==void 0,A=Cc({activeWorktreePath:E,hasServerThread:k,draftThreadEnvMode:y?.envMode}),j=(0,q.useCallback)((e,t)=>{if(!w||!C)return;let r=Dr(n);if(g&&t!==E&&r&&r.orchestration.dispatchCommand({type:`thread.session.stop`,commandId:yr(),threadId:w,createdAt:new Date().toISOString()}).catch(()=>void 0),r&&k){let n=new Date().toISOString();r.orchestration.dispatchCommand({type:`thread.meta.update`,commandId:yr(),threadId:w,branch:e,worktreePath:t}),e&&h.worktreeId&&r.orchestration.dispatchCommand({type:`worktree.meta.update`,commandId:yr(),worktreeId:I.make(h.worktreeId),branch:e,changedAt:n})}if(k){c?.(e),v(f,e,t);return}let a=Oc({nextWorktreePath:t,currentWorktreePath:E,effectiveEnvMode:A});b(i??f,{branch:e,worktreePath:t,envMode:a,projectRef:o(n,C.id)})},[w,C,g,h,E,k,c,v,b,i,f,n,A]),[M,N]=(0,q.useState)(!1),[P,F]=(0,q.useState)(``),L=(0,q.useDeferredValue)(P),R=We({environmentId:n,cwd:O}),z=P.trim(),ee=L.trim();(0,q.useEffect)(()=>{O&&vn({environmentId:n,cwd:O,query:``})},[O,n]);let{refs:te,totalCount:B,fetchNextPage:ne,hasNextPage:re,isFetchingNextPage:ie,isPending:V}=AG({environmentId:n,cwd:O,query:ee}),ae=R.data?.refName??te.find(e=>e.current)?.name??null,H=(0,q.useMemo)(()=>no(R.data?.sourceControlProvider),[R.data?.sourceControlProvider]),U=H.Icon,oe=R.data?.sourceControlProvider?.kind??null,se=oe!==null&&oe!==`unknown`,ce=se?U:Hi,le=(0,q.useMemo)(()=>Ic(C?.repositoryIdentity),[C?.repositoryIdentity]),ue=(0,q.useCallback)(()=>{if(!le)return;let e=Cn();e&&e.shell.openExternal(le).catch(()=>void 0)},[le]),de=Pc({envMode:A,activeWorktreePath:E,activeThreadBranch:T,currentGitBranch:ae}),fe=(0,q.useMemo)(()=>te.map(e=>e.name),[te]),pe=(0,q.useMemo)(()=>new Map(te.map(e=>[e.name,e])),[te]),he=ee.toLowerCase(),ge=GG(z),_e=A===`worktree`&&!a&&!E,ve=ge&&l?`__checkout_pull_request__:${ge}`:null,ye=!_e&&z.length>0,be=pe.has(z),xe=ye?`__create_new_branch__:${z}`:null,Se=Ji({environmentId:_e?n:null,cwd:_e?O:null,state:`open`,limit:50}),Ce=(0,q.useMemo)(()=>{let e=new Map;if(!_e)return e;for(let t of Se.data??[])pe.has(t.headRefName)||e.set(`__pull_request_base__:${t.number}`,t);return e},[pe,_e,Se.data]),we=(0,q.useMemo)(()=>{let e=[...fe];return xe&&!be&&e.push(xe),e.push(...Ce.keys()),ve&&e.unshift(ve),e},[fe,ve,xe,be,Ce]),Te=(0,q.useMemo)(()=>new Map(Array.from(Ce,([e,t])=>[e,`#${t.number} ${t.title} ${t.headRefName}`])),[Ce]),Ee=(0,q.useMemo)(()=>he.length===0?we:we.filter(e=>Fc({itemValue:e,normalizedQuery:he,createBranchItemValue:xe,checkoutPullRequestItemValue:ve,searchTextByItemValue:Te})),[we,ve,xe,he,Te]),[De,Oe]=(0,q.useOptimistic)(de,(e,t)=>t),[ke,Ae]=(0,q.useTransition)(),je=Ee.length>40,Me=V?`Loading refs...`:ie?`Loading more refs...`:re?`Showing ${te.length} of ${B} refs`:null,Ne=e=>{Ae(async()=>{await e().catch(()=>void 0),cn([Vr(O)])})},Pe=e=>{let t=Dr(n);if(!t||!O||!D||ke)return;if(_e){j(e.name,null),N(!1),u?.();return}let r=jc({activeProjectCwd:D,activeWorktreePath:E,refName:e});if(r.reuseExistingWorktree){j(e.name,r.nextWorktreePath),N(!1),u?.();return}let i=e.isRemote?m(e.name):e.name;N(!1),u?.(),Ne(async()=>{let n=De;Oe(i);try{let n=await t.vcs.switchRef({cwd:r.checkoutCwd,refName:e.name}),a=e.isRemote?n.refName??i:i;Oe(a),j(a,r.nextWorktreePath)}catch(e){Oe(n),Ve.add(fc({type:`error`,title:`Failed to switch ref.`,description:KG(e)}))}})},Fe=e=>{let t=e.trim(),r=Dr(n);r&&O&&t&&!ke&&(N(!1),u?.(),Ne(async()=>{let e=De;Oe(t);try{let e=await r.vcs.createRef({cwd:O,refName:t,switchRef:!0});Oe(e.refName),j(e.refName,E)}catch(t){Oe(e),Ve.add(fc({type:`error`,title:`Failed to create and switch ref.`,description:KG(t)}))}}))};(0,q.useEffect)(()=>{A!==`worktree`||E||T||!ae||j(ae,null)},[T,E,ae,A,j]);let Ie=(0,q.useCallback)(e=>{if(N(e),!e){F(``);return}cn([Vr(O)])},[O]),Le=(0,q.useRef)(null),Re=(0,q.useCallback)(()=>{if(!M||!re||ie)return;let e=Le.current;e&&(e.scrollHeight-e.scrollTop-e.clientHeight>96||ne())},[ne,re,M,ie]),ze=(0,q.useRef)(null),Be=(0,q.useCallback)(e=>{Le.current=e?.parentElement??null},[]);(0,q.useEffect)(()=>{M&&(je?ze.current?.scrollToOffset?.({offset:0,animated:!1}):Le.current?.scrollTo({top:0}))},[ee,M,je]),(0,q.useEffect)(()=>{let e=Le.current;if(!e||!M)return;let t=()=>{Re()};return e.addEventListener(`scroll`,t,{passive:!0}),t(),()=>{e.removeEventListener(`scroll`,t)}},[M,Re]),(0,q.useEffect)(()=>{je||Re()},[te.length,Re,je]);let He=qG({activeWorktreePath:E,effectiveEnvMode:A,resolvedActiveBranch:De,omitBasePrefix:d});function Ue(e,t){if(ve&&e===ve)return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>{ge&&l&&(N(!1),F(``),u?.(),l(ge))},children:(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1`,children:[(0,Y.jsx)(U,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-col items-start`,children:[(0,Y.jsxs)(`span`,{className:`truncate font-medium`,children:[`Checkout `,H.terminology.singular]}),(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground text-xs`,children:ge})]})]})},e);if(xe&&e===xe)return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>Fe(z),children:(0,Y.jsxs)(`span`,{className:`truncate`,children:[`Create new ref "`,z,`"`]})},e);let n=Ce.get(e);if(n)return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>{j(n.headRefName,null),N(!1),F(``),u?.()},children:(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 py-1`,children:[(0,Y.jsx)(U,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-col items-start`,children:[(0,Y.jsxs)(`span`,{className:`truncate`,children:[`#`,n.number,` `,n.title]}),(0,Y.jsx)(`span`,{className:`truncate font-mono text-muted-foreground text-[10px]`,children:n.headRefName})]})]})},e);let r=pe.get(e);if(!r)return null;let i=r.worktreePath&&D&&r.worktreePath!==D,a=r.current?`current`:i?`worktree`:r.isRemote?`remote`:r.isDefault?`default`:null;return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>Pe(r),children:(0,Y.jsxs)(`div`,{className:`flex w-full items-center justify-between gap-2`,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:e}),a&&(0,Y.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/45`,children:a})]})},e)}return(0,Y.jsxs)(Ss,{items:we,filteredItems:Ee,autoHighlight:!0,virtualized:je,onItemHighlighted:(e,t)=>{!M||t.index<0||t.reason!==`keyboard`||ze.current?.scrollIndexIntoView?.({index:t.index,animated:!1})},onOpenChange:Ie,open:M,value:De,children:[t===`pill`||t===`panelRow`?(0,Y.jsxs)(`div`,{"data-appearance":t,className:G(`min-w-0 items-center overflow-hidden`,t===`pill`?`inline-flex h-[30px] rounded-[9px] border border-input bg-popover shadow-xs`:`flex h-9 w-full bg-transparent`,e),children:[le?(0,Y.jsx)(`button`,{type:`button`,onClick:ue,title:se?`Open on ${H.providerName}`:`Open repository remote`,"aria-label":`Open repository remote`,className:G(`grid h-full shrink-0 place-items-center text-foreground/80 transition-colors hover:bg-accent`,t===`pill`?`pr-1 pl-2.5`:`w-[37px]`),children:t===`pill`?(0,Y.jsx)(ce,{className:`size-3.5`}):(0,Y.jsx)(`span`,{className:`grid size-5 place-items-center rounded-md bg-secondary text-muted-foreground [&_svg]:size-3`,children:(0,Y.jsx)(ce,{})})}):(0,Y.jsx)(`span`,{className:G(`grid h-full shrink-0 place-items-center text-foreground/80`,t===`pill`?`pr-1 pl-2.5`:`w-[37px]`),children:t===`pill`?(0,Y.jsx)(ce,{className:`size-3.5`}):(0,Y.jsx)(`span`,{className:`grid size-5 place-items-center rounded-md bg-secondary text-muted-foreground [&_svg]:size-3`,children:(0,Y.jsx)(ce,{})})}),(0,Y.jsxs)(ps,{render:(0,Y.jsx)(W,{variant:`ghost`,size:`sm`}),className:G(`h-full min-w-0 gap-1.5 rounded-none border-0 bg-transparent text-foreground shadow-none before:shadow-none`,t===`pill`?`pr-2.5 pl-1 text-[13px] font-medium`:`flex-1 justify-start pr-2.5 pl-0 text-[11.5px] font-semibold hover:bg-accent`),disabled:V&&te.length===0||ke,children:[(0,Y.jsx)(`span`,{className:G(`min-w-0 truncate font-mono`,t===`pill`?`max-w-[170px]`:`flex-1 text-left`),children:He}),De===ae&&((R.data?.aheadCount??0)>0||(R.data?.behindCount??0)>0)?(0,Y.jsxs)(`span`,{className:G(`flex shrink-0 items-center gap-1 font-mono font-semibold text-muted-foreground tabular-nums`,t===`pill`?`text-[11px]`:`text-[10px]`),children:[(R.data?.aheadCount??0)>0?(0,Y.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,Y.jsx)(gi,{className:`size-[11px]`}),R.data?.aheadCount]}):null,(R.data?.behindCount??0)>0?(0,Y.jsxs)(`span`,{className:`flex items-center gap-0.5`,children:[(0,Y.jsx)(xi,{className:`size-[11px]`}),R.data?.behindCount]}):null]}):null,(0,Y.jsx)(fr,{className:G(`shrink-0 text-muted-foreground`,t===`pill`?`size-3.5`:`size-3`)})]})]}):(0,Y.jsxs)(ps,{render:(0,Y.jsx)(W,{variant:`ghost`,size:`xs`}),className:G(`min-w-0 text-muted-foreground/70 hover:text-foreground/80`,e),disabled:V&&te.length===0||ke,children:[(0,Y.jsx)(`span`,{className:`min-w-0 max-w-[240px] truncate`,children:He}),(0,Y.jsx)(fr,{className:`shrink-0`})]}),(0,Y.jsxs)(bs,{align:`end`,side:`top`,className:`w-80 data-ending-style:translate-y-1 data-starting-style:translate-y-1`,children:[(0,Y.jsx)(`div`,{className:`border-b p-1`,children:(0,Y.jsx)(gs,{className:`[&_input]:font-sans rounded-md`,inputClassName:`ring-0`,placeholder:`Search refs...`,showTrigger:!1,size:`sm`,value:P,onChange:e=>F(e.target.value)})}),(0,Y.jsx)(Ds,{children:`No refs found.`}),je?(0,Y.jsx)(Cs,{children:(0,Y.jsx)(js,{ref:ze,data:Ee,keyExtractor:e=>e,renderItem:({item:e,index:t})=>Ue(e,t),estimatedItemSize:28,drawDistance:336,onEndReached:()=>{re&&!ie&&ne()},style:{maxHeight:`14rem`}})}):(0,Y.jsx)(Ts,{ref:Be,className:`max-h-56`,children:Ee.map((e,t)=>Ue(e,t))}),Me?(0,Y.jsx)(ys,{children:Me}):null]})]})}var YG=(0,q.memo)(function(e){let t=(0,J.c)(28),{envLocked:n,environmentId:r,availableEnvironments:i,onEnvironmentChange:a}=e,o;t[0]!==i||t[1]!==r?(o=i.find(e=>e.environmentId===r)??null,t[0]=i,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===i?c=t[4]:(c=i.map(XG),t[3]=i,t[4]=c);let l=c;if(n){let e;t[5]===s?.isPrimary?e=t[6]:(e=s?.isPrimary?(0,Y.jsx)(aa,{className:`size-3`}):(0,Y.jsx)(si,{className:`size-3`}),t[5]=s?.isPrimary,t[6]=e);let n=s?.label??`Run on`,r;return t[7]!==e||t[8]!==n?(r=(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-transparent px-[calc(--spacing(3)-1px)] text-sm font-medium text-muted-foreground/70 sm:text-xs`,children:[e,n]}),t[7]=e,t[8]=n,t[9]=r):r=t[9],r}let u;t[10]===a?u=t[11]:(u=e=>a(e),t[10]=a,t[11]=u);let d;t[12]===s?.isPrimary?d=t[13]:(d=s?.isPrimary?(0,Y.jsx)(aa,{className:`size-3`}):(0,Y.jsx)(si,{className:`size-3`}),t[12]=s?.isPrimary,t[13]=d);let f;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(Eo,{}),t[14]=f):f=t[14];let p;t[15]===d?p=t[16]:(p=(0,Y.jsxs)(jo,{variant:`ghost`,size:`xs`,className:`font-medium`,"aria-label":`Run on`,children:[d,f]}),t[15]=d,t[16]=p);let m;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(Do,{children:`Run on`}),t[17]=m):m=t[17];let h;t[18]===i?h=t[19]:(h=i.map(ZG),t[18]=i,t[19]=h);let g;t[20]===h?g=t[21]:(g=(0,Y.jsx)(ko,{children:(0,Y.jsxs)(Ao,{children:[m,h]})}),t[20]=h,t[21]=g);let _;return t[22]!==r||t[23]!==l||t[24]!==u||t[25]!==p||t[26]!==g?(_=(0,Y.jsxs)(Oo,{modal:!1,value:r,onValueChange:u,items:l,children:[p,g]}),t[22]=r,t[23]=l,t[24]=u,t[25]=p,t[26]=g,t[27]=_):_=t[27],_});function XG(e){return{value:e.environmentId,label:e.label}}function ZG(e){return(0,Y.jsx)(To,{value:e.environmentId,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[e.isPrimary?(0,Y.jsx)(aa,{className:`size-3`}):(0,Y.jsx)(si,{className:`size-3`}),e.label]})},e.environmentId)}var QG=[{value:`local`,label:`Local`},{value:`worktree`,label:`New worktree`}],$G=(0,q.memo)(function(e){let t=(0,J.c)(12),{value:n,onChange:r}=e,i;t[0]===r?i=t[1]:(i=e=>r(e),t[0]=r,t[1]=i);let a;t[2]===n?a=t[3]:(a=n===`worktree`?(0,Y.jsx)(Bu,{className:`size-3`}):(0,Y.jsx)(aa,{className:`size-3`}),t[2]=n,t[3]=a);let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(Eo,{}),t[4]=o):o=t[4];let s;t[5]===a?s=t[6]:(s=(0,Y.jsxs)(jo,{variant:`ghost`,size:`xs`,className:`font-medium`,"aria-label":`Run in`,children:[a,o]}),t[5]=a,t[6]=s);let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(ko,{children:(0,Y.jsxs)(Ao,{children:[(0,Y.jsx)(Do,{children:`Run in`}),QG.map(eK)]})}),t[7]=c):c=t[7];let l;return t[8]!==i||t[9]!==s||t[10]!==n?(l=(0,Y.jsxs)(Oo,{modal:!1,value:n,onValueChange:i,items:QG,children:[s,c]}),t[8]=i,t[9]=s,t[10]=n,t[11]=l):l=t[11],l});function eK(e){return(0,Y.jsx)(To,{value:e.value,children:(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[e.value===`worktree`?(0,Y.jsx)(Bu,{className:`size-3`}):(0,Y.jsx)(aa,{className:`size-3`}),e.label]})},e.value)}function tK(e,t){return`${e}\u0000${t}`}function nK(e){let t=(0,J.c)(70),{activeProjectId:n,activeProjectEnvironmentId:r,appearance:i,draftId:a,label:s,className:c}=e,l=Rr(sK),u=St(oK),d=me(Uc(aK)),[f,p]=(0,q.useState)(!1),[m,h]=(0,q.useState)(``),g=(0,q.useRef)(null),_;t[0]===d?_=t[1]:(_=d.map(iK),t[0]=d,t[1]=_);let v=_,y;t[2]===d?y=t[3]:(y=new Map(d.map(rK)),t[2]=d,t[3]=y);let b=y,x;t[4]===m?x=t[5]:(x=m.trim().toLowerCase(),t[4]=m,t[5]=x);let S=x,C;bb0:{if(S.length===0){C=v;break bb0}let e;if(t[6]!==v||t[7]!==S||t[8]!==b){let n;t[10]!==S||t[11]!==b?(n=e=>{let t=b.get(e);return t?t.name.toLowerCase().includes(S)||t.cwd.toLowerCase().includes(S):!1},t[10]=S,t[11]=b,t[12]=n):n=t[12],e=v.filter(n),t[6]=v,t[7]=S,t[8]=b,t[9]=e}else e=t[9];C=e}let w=C,T;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(T=e=>{p(e),e||h(``)},t[13]=T):T=t[13];let E=T,D;t[14]!==r||t[15]!==n||t[16]!==a||t[17]!==l||t[18]!==b||t[19]!==u?(D=e=>{let t=b.get(e);p(!1),h(``),!(!t||t.id===n&&t.environmentId===r)&&l(a,{projectRef:o(t.environmentId,t.id),logicalProjectKey:Yr(t,u)})},t[14]=r,t[15]=n,t[16]=a,t[17]=l,t[18]=b,t[19]=u,t[20]=D):D=t[20];let O=D,k;t[21]!==r||t[22]!==n?(k=tK(r,n),t[21]=r,t[22]=n,t[23]=k):k=t[23];let A=k,j;t[24]!==A||t[25]!==b?(j=b.get(A)??null,t[24]=A,t[25]=b,t[26]=j):j=t[26];let M=j,N=`Switch project (currently ${s})`,P=i===`headline`&&`rounded-sm text-foreground underline decoration-foreground decoration-dotted decoration-2 underline-offset-[7px] transition-colors hover:text-foreground/55 hover:decoration-foreground/40 focus-visible:ring-offset-2 focus-visible:ring-offset-background`,F=i===`sentence`&&`inline-flex min-w-0 items-center gap-1.5 rounded-md px-1 py-0.5 font-medium text-foreground/85 transition-colors hover:bg-accent hover:text-foreground`,I=i===`chip`&&`inline-flex min-w-0 items-center gap-1.5 rounded-md px-2 py-1 font-medium text-muted-foreground/70 text-xs transition-colors hover:bg-accent hover:text-foreground/80`,L;t[27]!==c||t[28]!==P||t[29]!==F||t[30]!==I?(L=G(`cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,P,F,I,c),t[27]=c,t[28]=P,t[29]=F,t[30]=I,t[31]=L):L=t[31];let R;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,Y.jsx)(`button`,{type:`button`}),t[32]=R):R=t[32];let z;t[33]!==M||t[34]!==i?(z=i!==`headline`&&M?(0,Y.jsx)(ma,{environmentId:M.environmentId,cwd:M.cwd,projectId:M.id,customAvatarContentHash:M.customAvatarContentHash??null,className:`size-3.5 shrink-0`}):null,t[33]=M,t[34]=i,t[35]=z):z=t[35];let ee=i===`headline`?void 0:`min-w-0 truncate`,te;t[36]!==s||t[37]!==ee?(te=(0,Y.jsx)(`span`,{className:ee,children:s}),t[36]=s,t[37]=ee,t[38]=te):te=t[38];let B;t[39]!==L||t[40]!==z||t[41]!==te||t[42]!==N?(B=(0,Y.jsxs)(ps,{ref:g,"aria-label":N,className:L,render:R,children:[z,te]}),t[39]=L,t[40]=z,t[41]=te,t[42]=N,t[43]=B):B=t[43];let ne=i===`chip`?`top`:`bottom`,re;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>h(e.target.value),t[44]=re):re=t[44];let ie;t[45]===m?ie=t[46]:(ie=(0,Y.jsx)(`div`,{className:`border-b p-1`,children:(0,Y.jsx)(gs,{className:`[&_input]:font-sans rounded-md`,inputClassName:`ring-0`,placeholder:`Search projects...`,showTrigger:!1,size:`sm`,value:m,onChange:re})}),t[45]=m,t[46]=ie);let V;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,Y.jsx)(Ds,{children:`No projects found.`}),t[47]=V):V=t[47];let ae;if(t[48]!==A||t[49]!==w||t[50]!==b||t[51]!==O){let e;t[53]!==A||t[54]!==b||t[55]!==O?(e=(e,t)=>{let n=b.get(e);return n?(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>O(e),children:(0,Y.jsxs)(`div`,{className:`flex w-full min-w-0 items-center gap-2 py-0.5 text-left`,children:[(0,Y.jsx)(ma,{environmentId:n.environmentId,cwd:n.cwd,projectId:n.id,customAvatarContentHash:n.customAvatarContentHash??null,className:`size-4 shrink-0`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:G(`truncate text-sm`,e===A&&`font-medium text-foreground`),children:n.name}),(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground text-xs`,children:n.cwd})]})]})},e):null},t[53]=A,t[54]=b,t[55]=O,t[56]=e):e=t[56],ae=w.map(e),t[48]=A,t[49]=w,t[50]=b,t[51]=O,t[52]=ae}else ae=t[52];let H;t[57]===ae?H=t[58]:(H=(0,Y.jsx)(Ts,{className:`max-h-64`,children:ae}),t[57]=ae,t[58]=H);let U;t[59]!==ne||t[60]!==ie||t[61]!==H?(U=(0,Y.jsxs)(bs,{anchor:g,align:`start`,side:ne,className:`w-80 overflow-hidden`,children:[ie,V,H]}),t[59]=ne,t[60]=ie,t[61]=H,t[62]=U):U=t[62];let oe;return t[63]!==A||t[64]!==w||t[65]!==v||t[66]!==f||t[67]!==B||t[68]!==U?(oe=(0,Y.jsxs)(Ss,{items:v,filteredItems:w,autoHighlight:!0,open:f,value:A,onOpenChange:E,children:[B,U]}),t[63]=A,t[64]=w,t[65]=v,t[66]=f,t[67]=B,t[68]=U,t[69]=oe):oe=t[69],oe}function rK(e){return[tK(e.environmentId,e.id),e]}function iK(e){return tK(e.environmentId,e.id)}function aK(e){return ye(e)}function oK(e){return{sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides}}function sK(e){return e.moveDraftThreadToProject}var cK=(0,q.memo)(function(e){let t=(0,J.c)(66),{environmentId:n,threadId:r,draftId:i,activeThreadBranchOverride:a,onActiveThreadBranchOverrideChange:s,envLocked:c,onCheckoutPullRequestRequest:l,onComposerFocusRequest:u,onOpenWorktreeSources:d,contextControlsHoisted:f,availableEnvironments:p,onEnvironmentChange:m,terminalAvailable:h,terminalOpen:g,terminalToggleShortcutLabel:v,onToggleTerminal:y,terminalCount:b}=e,x=f!==void 0&&f,S;t[0]!==n||t[1]!==r?(S=_(n,r),t[0]=n,t[1]=r,t[2]=S):S=t[2];let C=S,w;t[3]===C?w=t[4]:(w=Jt(C),t[3]=C,t[4]=w);let T=me(w),E;t[5]!==i||t[6]!==C?(E=e=>i?e.getDraftSession(i):e.getDraftThreadByRef(C),t[5]=i,t[6]=C,t[7]=E):E=t[7];let D=Rr(E),O=Rr(lK),k;t[8]!==D||t[9]!==T?(k=T?o(T.environmentId,T.projectId):D?o(D.environmentId,D.projectId):null,t[8]=D,t[9]=T,t[10]=k):k=t[10];let A=k,j;t[11]===A?j=t[12]:(j=Gr(A),t[11]=A,t[12]=j);let M=me(j),N=T!==void 0,P=N||D!==null,F=!!(p&&p.length>1&&m),I=!N&&D!==null&&!c,L=T?.worktreePath??D?.worktreePath??null,R=D?.envMode,z;t[13]!==N||t[14]!==L||t[15]!==R?(z=Cc({activeWorktreePath:L,hasServerThread:N,draftThreadEnvMode:R}),t[13]=N,t[14]=L,t[15]=R,t[16]=z):z=t[16];let ee=z,te;t[17]!==i||t[18]!==u||t[19]!==O||t[20]!==C?(te=e=>{O(i??C,{envMode:e,worktreePath:null}),u?.()},t[17]=i,t[18]=u,t[19]=O,t[20]=C,t[21]=te):te=t[21];let B=te;if(!P||!M)return null;let ne;t[22]!==M||t[23]!==p||t[24]!==I||t[25]!==x||t[26]!==i||t[27]!==c||t[28]!==ee||t[29]!==n||t[30]!==B||t[31]!==m||t[32]!==F?(ne=x?null:(0,Y.jsxs)(`div`,{className:`flex min-w-0 shrink items-center gap-0.5`,children:[I&&i?(0,Y.jsx)(nK,{activeProjectId:M.id,activeProjectEnvironmentId:M.environmentId,appearance:`chip`,draftId:i,label:M.name}):(0,Y.jsx)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5 px-2 py-1 font-medium text-muted-foreground/70 text-xs`,children:(0,Y.jsx)(`span`,{className:`min-w-0 truncate`,children:M.name})}),F&&p&&m&&(0,Y.jsx)(YG,{envLocked:c,environmentId:n,availableEnvironments:p,onEnvironmentChange:m}),I?(0,Y.jsx)($G,{value:ee,onChange:B}):null]}),t[22]=M,t[23]=p,t[24]=I,t[25]=x,t[26]=i,t[27]=c,t[28]=ee,t[29]=n,t[30]=B,t[31]=m,t[32]=F,t[33]=ne):ne=t[33];let re=!h,ie;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,Y.jsx)(ud,{className:`size-3 shrink-0`}),t[34]=ie):ie=t[34];let V=g?`Close Terminal`:`Open Terminal`,ae;t[35]===V?ae=t[36]:(ae=(0,Y.jsx)(`span`,{children:V}),t[35]=V,t[36]=ae);let H;t[37]===b?H=t[38]:(H=b>=2&&(0,Y.jsxs)(`span`,{className:`text-muted-foreground/70 tabular-nums`,"aria-label":`${b} open terminals`,children:[`· `,b]}),t[37]=b,t[38]=H);let U;t[39]!==y||t[40]!==re||t[41]!==ae||t[42]!==H||t[43]!==g?(U=(0,Y.jsx)(So,{render:(0,Y.jsxs)(W,{variant:`ghost`,size:`xs`,className:`font-medium text-muted-foreground/70 hover:text-foreground/80`,disabled:re,onClick:y,"aria-label":`Toggle terminal drawer`,"aria-pressed":g,children:[ie,ae,H]})}),t[39]=y,t[40]=re,t[41]=ae,t[42]=H,t[43]=g,t[44]=U):U=t[44];let oe=h?v?`Toggle terminal drawer (${v})`:`Toggle terminal drawer`:`Terminal is unavailable until this thread has an active project.`,se;t[45]===oe?se=t[46]:(se=(0,Y.jsx)(Co,{side:`top`,children:oe}),t[45]=oe,t[46]=se);let ce;t[47]!==U||t[48]!==se?(ce=(0,Y.jsx)(`div`,{className:`flex flex-1 items-center justify-center gap-1 phone:hidden`,children:(0,Y.jsxs)(wo,{children:[U,se]})}),t[47]=U,t[48]=se,t[49]=ce):ce=t[49];let le;t[50]!==a||t[51]!==I||t[52]!==x||t[53]!==i||t[54]!==c||t[55]!==n||t[56]!==s||t[57]!==l||t[58]!==u||t[59]!==d||t[60]!==r?(le=x?null:(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center justify-end gap-0.5 md:ml-auto md:flex-none`,children:[I&&d?(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsxs)(W,{variant:`ghost`,size:`xs`,className:`shrink-0 font-medium text-muted-foreground/70 hover:text-foreground/80 phone:hidden`,onClick:d,"data-testid":`branch-toolbar-worktree-sources`,children:[(0,Y.jsx)(Is,{className:`size-3 shrink-0`}),(0,Y.jsx)(`span`,{children:`From PR / issue`})]})}),(0,Y.jsx)(Co,{side:`top`,children:`Create a worktree from a pull request, issue, or Jira item`})]}):null,(0,Y.jsx)(JG,{className:`min-w-0`,environmentId:n,threadId:r,...i?{draftId:i}:{},envLocked:c,...a===void 0?{}:{activeThreadBranchOverride:a},...s?{onActiveThreadBranchOverrideChange:s}:{},...l?{onCheckoutPullRequestRequest:l}:{},...u?{onComposerFocusRequest:u}:{}})]}),t[50]=a,t[51]=I,t[52]=x,t[53]=i,t[54]=c,t[55]=n,t[56]=s,t[57]=l,t[58]=u,t[59]=d,t[60]=r,t[61]=le):le=t[61];let ue;return t[62]!==ne||t[63]!==ce||t[64]!==le?(ue=(0,Y.jsxs)(`div`,{className:`mx-auto flex w-full max-w-208 items-center gap-1 px-2.5 pb-3 pt-1 sm:px-3`,children:[ne,ce,le]}),t[62]=ne,t[63]=ce,t[64]=le,t[65]=ue):ue=t[65],ue});function lK(e){return e.setDraftThreadContext}function uK(e,t){let n=e.activeSince?Date.parse(e.activeSince):NaN,r=t&&e.status!==`idle`?Date.now():Date.parse(e.updatedAt),i=Number.isFinite(n)&&Number.isFinite(r)?Math.max(0,r-n):0,a=Math.max(0,Math.floor((e.elapsedMs+i)/1e3));return a<60?`${a}s`:`${Math.floor(a/60)}m ${a%60}s`}var dK=(0,q.memo)(function(e){let t=(0,J.c)(39),{task:n,connected:r,mutationReady:i,onStop:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(null),u=(0,q.useRef)(!0),d=(0,q.useRef)(0),f=(0,q.useRef)(!1),p,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=()=>(u.current=!0,()=>{u.current=!1}),m=[],t[0]=p,t[1]=m):(p=t[0],m=t[1]),(0,q.useEffect)(p,m);let h,g;t[2]===o?(h=t[3],g=t[4]):(h=()=>{if(!o)return;let e=window.setTimeout(()=>{d.current+=1,f.current=!1,s(!1),l(`Stop has not been confirmed. You can retry.`)},2e4);return()=>window.clearTimeout(e)},g=[o],t[2]=o,t[3]=h,t[4]=g),(0,q.useEffect)(h,g);let _;t[5]!==r||t[6]!==i||t[7]!==a||t[8]!==n?(_=async()=>{if(f.current||!r||!i||!n.canStop||!n.runtimeSessionId)return;f.current=!0;let e=d.current+=1;s(!0),l(null);try{await a(n)}catch(t){let n=t;if(!u.current||e!==d.current)return;f.current=!1,s(!1),l(n instanceof Error?n.message:`Could not stop this task.`)}},t[5]=r,t[6]=i,t[7]=a,t[8]=n,t[9]=_):_=t[9];let v=_,y=n.id,b;t[10]===n.title?b=t[11]:(b=(0,Y.jsx)(`p`,{className:`truncate text-xs text-foreground`,title:n.title,children:n.title}),t[10]=n.title,t[11]=b);let x=r?n.status===`idle`?`Paused / idle`:n.status===`waiting`?`Waiting`:n.status===`pending`?`Pending`:`Running`:`Status unconfirmed`,S=n.id,C;t[12]!==r||t[13]!==n?(C=uK(n,r),t[12]=r,t[13]=n,t[14]=C):C=t[14];let w;t[15]!==C||t[16]!==n.id?(w=(0,Y.jsx)(`span`,{className:`ml-2 tabular-nums`,"data-background-elapsed":S,children:C}),t[15]=C,t[16]=n.id,t[17]=w):w=t[17];let T;t[18]!==w||t[19]!==x?(T=(0,Y.jsxs)(`p`,{className:`mt-0.5 text-[11px] text-muted-foreground`,children:[x,w]}),t[18]=w,t[19]=x,t[20]=T):T=t[20];let E;t[21]!==T||t[22]!==b?(E=(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[b,T]}),t[21]=T,t[22]=b,t[23]=E):E=t[23];let D;t[24]===v?D=t[25]:(D=()=>void v(),t[24]=v,t[25]=D);let O=o||!r||!i||!n.canStop||!n.runtimeSessionId,k=n.canStop?void 0:`This provider session cannot stop individual tasks`,A=`Stop ${n.title}`,j=o?`Stopping…`:`Stop`,M;t[26]!==D||t[27]!==O||t[28]!==k||t[29]!==A||t[30]!==j?(M=(0,Y.jsx)(`button`,{type:`button`,onClick:D,disabled:O,title:k,"aria-label":A,className:`shrink-0 rounded px-2 py-1 text-xs hover:bg-muted disabled:cursor-default disabled:text-muted-foreground/50`,children:j}),t[26]=D,t[27]=O,t[28]=k,t[29]=A,t[30]=j,t[31]=M):M=t[31];let N;t[32]===c?N=t[33]:(N=c?(0,Y.jsx)(`p`,{role:`alert`,className:`w-full text-xs text-destructive`,children:c}):null,t[32]=c,t[33]=N);let P;return t[34]!==E||t[35]!==M||t[36]!==N||t[37]!==n.id?(P=(0,Y.jsxs)(`li`,{className:`flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 border-t border-border/50 px-3 py-2`,"data-background-task":y,children:[E,M,N]}),t[34]=E,t[35]=M,t[36]=N,t[37]=n.id,t[38]=P):P=t[38],P});function fK(e){let t=(0,J.c)(51),[n,r]=(0,q.useState)(!1),i=(0,q.useId)(),a=(0,q.useRef)(null),o,s;t[0]!==n||t[1]!==e.connected||t[2]!==e.work.tasks?(o=()=>{if(!n||!e.connected||!e.work.tasks.some(mK))return;let t=()=>{if(document.hidden)return;let t=new Map(e.work.tasks.map(pK));for(let e of a.current?.querySelectorAll(`[data-background-elapsed]`)??[]){let n=t.get(e.dataset.backgroundElapsed??``);n&&(e.textContent=uK(n,!0))}};t();let r=window.setInterval(t,1e3);return()=>window.clearInterval(r)},s=[n,e.connected,e.work.tasks],t[0]=n,t[1]=e.connected,t[2]=e.work.tasks,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,q.useEffect)(o,s);let c;t[5]===n?c=t[6]:(c=()=>r(!n),t[5]=n,t[6]=c);let l=`size-3.5 shrink-0 ${n?`rotate-180`:``}`,u;t[7]===l?u=t[8]:(u=(0,Y.jsx)(fr,{"aria-hidden":!0,className:l}),t[7]=l,t[8]=u);let d=e.work.tasks.length===0&&e.work.detailsOmitted?`Background work · details unavailable`:`${e.work.tasks.length} background ${e.work.tasks.length===1?`task`:`tasks`}${e.work.detailsOmitted?` · details limited`:``}`,f;t[9]!==i||t[10]!==n||t[11]!==c||t[12]!==u||t[13]!==d?(f=(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":n,"aria-controls":i,onClick:c,className:`flex min-w-0 flex-1 items-center gap-2 text-left text-xs font-medium`,children:[u,d]}),t[9]=i,t[10]=n,t[11]=c,t[12]=u,t[13]=d,t[14]=f):f=t[14];let p;t[15]!==e.agentCount||t[16]!==e.onOpenAgents||t[17]!==e.waitingCount?(p=e.agentCount>0&&e.onOpenAgents?(0,Y.jsxs)(`button`,{type:`button`,onClick:e.onOpenAgents,className:`shrink-0 text-xs text-muted-foreground hover:text-foreground`,children:[`Agents (`,e.agentCount,e.waitingCount?` · ${e.waitingCount} waiting`:``,`)`]}):null,t[15]=e.agentCount,t[16]=e.onOpenAgents,t[17]=e.waitingCount,t[18]=p):p=t[18];let m=e.stoppingAll||!e.connected||!e.mutationReady,h=e.stoppingAll?`Stopping…`:`Stop all`,g;t[19]!==e.onStopAll||t[20]!==m||t[21]!==h?(g=(0,Y.jsx)(`button`,{type:`button`,onClick:e.onStopAll,disabled:m,className:`shrink-0 text-xs hover:text-foreground disabled:text-muted-foreground/50`,children:h}),t[19]=e.onStopAll,t[20]=m,t[21]=h,t[22]=g):g=t[22];let _;t[23]!==g||t[24]!==f||t[25]!==p?(_=(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5`,children:[f,p,g]}),t[23]=g,t[24]=f,t[25]=p,t[26]=_):_=t[26];let v;t[27]===e.connected?v=t[28]:(v=e.connected?null:(0,Y.jsx)(`p`,{role:`status`,className:`px-3 pb-2 text-xs text-muted-foreground`,children:`Connection lost · task status is unconfirmed`}),t[27]=e.connected,t[28]=v);let y=!n,b;if(t[29]!==e.connected||t[30]!==e.mutationReady||t[31]!==e.onStopTask||t[32]!==e.work.tasks){let n;t[34]!==e.connected||t[35]!==e.mutationReady||t[36]!==e.onStopTask?(n=t=>(0,Y.jsx)(dK,{task:t,connected:e.connected,mutationReady:e.mutationReady,onStop:e.onStopTask},`${t.runtimeSessionId}:${t.id}:${t.attempt}`),t[34]=e.connected,t[35]=e.mutationReady,t[36]=e.onStopTask,t[37]=n):n=t[37],b=e.work.tasks.map(n),t[29]=e.connected,t[30]=e.mutationReady,t[31]=e.onStopTask,t[32]=e.work.tasks,t[33]=b}else b=t[33];let x;t[38]!==i||t[39]!==b?(x=(0,Y.jsx)(`ul`,{id:i,ref:a,className:`max-h-64 overflow-y-auto`,children:b}),t[38]=i,t[39]=b,t[40]=x):x=t[40];let S;t[41]===e.work.detailsOmitted?S=t[42]:(S=e.work.detailsOmitted?(0,Y.jsx)(`p`,{role:`status`,className:`border-t border-border/50 px-3 py-2 text-xs text-muted-foreground`,children:`Up to 100 task details are retained. Additional details are unavailable in this window; their current status is unknown.`}):null,t[41]=e.work.detailsOmitted,t[42]=S);let C;t[43]!==y||t[44]!==x||t[45]!==S?(C=(0,Y.jsxs)(`div`,{hidden:y,children:[x,S]}),t[43]=y,t[44]=x,t[45]=S,t[46]=C):C=t[46];let w;return t[47]!==_||t[48]!==v||t[49]!==C?(w=(0,Y.jsxs)(`section`,{"aria-label":`Background work`,className:`w-full min-w-0 rounded-lg border border-border/70 bg-popover/95 text-foreground shadow-sm`,children:[_,v,C]}),t[47]=_,t[48]=v,t[49]=C,t[50]=w):w=t[50],w}function pK(e){return[e.id,e]}function mK(e){return e.activeSince!==null}var hK=(0,q.memo)(function(e){let t=(0,J.c)(29);if(e.work&&(e.work.tasks.length>0||e.work.detailsOmitted)&&e.onStopTask){let n=e.connected===!0,r=e.mutationReady===!0,i;return t[0]!==e.liveCount||t[1]!==e.onOpenAgents||t[2]!==e.onStop||t[3]!==e.onStopTask||t[4]!==e.stopping||t[5]!==e.waitingCount||t[6]!==e.work||t[7]!==n||t[8]!==r?(i=(0,Y.jsx)(fK,{work:e.work,connected:n,mutationReady:r,onStopTask:e.onStopTask,agentCount:e.liveCount,waitingCount:e.waitingCount,onOpenAgents:e.onOpenAgents,onStopAll:e.onStop,stoppingAll:e.stopping}),t[0]=e.liveCount,t[1]=e.onOpenAgents,t[2]=e.onStop,t[3]=e.onStopTask,t[4]=e.stopping,t[5]=e.waitingCount,t[6]=e.work,t[7]=n,t[8]=r,t[9]=i):i=t[9],i}let n=e.liveness===`working`,r=n?e.liveCount>0?`${e.liveCount} ${e.liveCount===1?`agent`:`agents`} active in the background`:`Background work running`:`Monitoring in the background`,i=n&&`animate-status-pulse`,a;t[10]===i?a=t[11]:(a=G(`size-3.5 shrink-0`,i),t[10]=i,t[11]=a);let o;t[12]===a?o=t[13]:(o=(0,Y.jsx)(Jo,{className:a,"aria-hidden":!0}),t[12]=a,t[13]=o);let s=!e.onOpenAgents,c=e.waitingCount?` · ${e.waitingCount} waiting`:``,l;t[14]!==r||t[15]!==e.onOpenAgents||t[16]!==s||t[17]!==c?(l=(0,Y.jsxs)(`button`,{type:`button`,onClick:e.onOpenAgents,disabled:s,className:`truncate font-medium hover:text-foreground`,children:[r,c]}),t[14]=r,t[15]=e.onOpenAgents,t[16]=s,t[17]=c,t[18]=l):l=t[18];let u;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,"aria-hidden":!0,children:`·`}),t[19]=u):u=t[19];let d=e.stopping||e.mutationReady===!1,f=e.stopping?`Stopping…`:`Stop`,p;t[20]!==e.onStop||t[21]!==d||t[22]!==f?(p=(0,Y.jsx)(`button`,{type:`button`,onClick:e.onStop,disabled:d,className:`shrink-0 font-medium text-foreground/85 transition-colors hover:text-foreground disabled:cursor-default disabled:text-muted-foreground/60`,children:f}),t[20]=e.onStop,t[21]=d,t[22]=f,t[23]=p):p=t[23];let m;return t[24]!==r||t[25]!==o||t[26]!==l||t[27]!==p?(m=(0,Y.jsxs)(`div`,{role:`status`,"aria-label":r,"data-background-liveness-chip":`true`,className:`inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-[11px] leading-4 text-muted-foreground shadow-sm backdrop-blur-xs`,children:[o,l,u,p]}),t[24]=r,t[25]=o,t[26]=l,t[27]=p,t[28]=m):m=t[28],m}),gK=[`in the simulator`,`on the simulator`,`the simulator`,`simulator screen`,`ios simulator`,`on the device`,`device screen`,`nel simulatore`,`sul simulatore`,`schermo del simulatore`,`sul dispositivo`],_K=[`look at`,`what do you see`,`read`,`describe`,`summarize`,`inspect`,`screenshot`,`screen`,`check`,`guarda`,`vedi`,`dimmi cosa vedi`,`leggi`,`descrivi`,`riassumi`,`ispeziona`];function vK(e){let t=e.toLowerCase().replace(/\s+/g,` `).trim();return gK.some(e=>t.includes(e))&&_K.some(e=>t.includes(e))}function yK(e){return e.name.trim().length>0?e.name:`simulator-${Date.now()}.png`}function bK(e){let t=atob(e.bytesBase64);if(t.length===0)throw Error(`Simulator screenshot is empty.`);let n=Uint8Array.from(t,e=>e.charCodeAt(0)),r=n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength),i=new File([r],yK(e),{type:e.mimeType});if(i.size>10485760)throw Error(`Simulator screenshot exceeds the image attachment limit.`);return i}async function xK(e){if(!vK(e.prompt))return{requested:!1,image:null};if(!e.api.device)return{requested:!0,image:null,reason:`no-attached-device`};try{let t=await e.api.device.getThreadState({threadId:e.threadId}),n=t.attachedDeviceUdid?t.devices.find(e=>e.udid===t.attachedDeviceUdid):void 0;if(!n)return{requested:!0,image:null,reason:`no-attached-device`};if(n.state!==`booted`)return{requested:!0,image:null,reason:`device-not-booted`};let r=bK(await e.api.device.screenshot({udid:n.udid}));return{requested:!0,image:{type:`image`,id:crypto.randomUUID(),name:r.name,mimeType:r.type,sizeBytes:r.size,previewUrl:URL.createObjectURL(r),file:r}}}catch{return{requested:!0,image:null,reason:`attachment-processing-failed`}}}function SK(e){return e.phase===`running`||e.isSendBusy||e.isConnecting||!e.hasSendableContent}function CK(e){return!e.isMobileViewport||e.isSendBusy||e.isConnecting||e.phase===`running`?!1:e.pendingProgress?e.pendingProgress.isLastQuestion&&e.hasResolvedAnswers:e.showPlanFollowUpPrompt||e.hasSendableContent}function wK(e){return e.pendingProgress?`pending:${e.pendingProgress.questionIndex}:${e.pendingProgress.isLastQuestion}:${e.pendingIsResponding}`:e.phase===`running`?`running`:e.showPlanFollowUpPrompt?e.promptHasText?`plan:refine`:`plan:implement`:`idle:${e.hasSendableContent}:${e.isSendBusy}:${e.isConnecting}:${e.isPreparingWorktree}`}var TK=(0,q.memo)(function(e){let t=(0,J.c)(16),n;t[0]===e.className?n=t[1]:(n=G(`inline-flex min-w-0 items-center`,e.className),t[0]=e.className,t[1]=n);let r=e.collapsed?`true`:`false`,i;t[2]===e.icon?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`inline-flex shrink-0 items-center justify-center`,"aria-hidden":`true`,children:e.icon}),t[2]=e.icon,t[3]=i);let a;t[4]!==e.collapsed||t[5]!==e.expanded||t[6]!==e.labelClassName?(a=G(`block overflow-hidden whitespace-nowrap transition-[margin-left,max-width,opacity] duration-300 ease-out motion-reduce:transition-none`,e.collapsed?[`ml-0 max-w-0 opacity-0`,`group-hover/composer-label-control:ml-1 group-hover/composer-label-control:max-w-40 group-hover/composer-label-control:opacity-100`,`group-focus-visible/composer-label-control:ml-1 group-focus-visible/composer-label-control:max-w-40 group-focus-visible/composer-label-control:opacity-100`,`group-focus-within/composer-label-control:ml-1 group-focus-within/composer-label-control:max-w-40 group-focus-within/composer-label-control:opacity-100`,`group-data-[pressed]/composer-label-control:ml-1 group-data-[pressed]/composer-label-control:max-w-40 group-data-[pressed]/composer-label-control:opacity-100`,e.expanded?`ml-1 max-w-40 opacity-100`:void 0]:`ml-1 max-w-40 opacity-100`,e.labelClassName),t[4]=e.collapsed,t[5]=e.expanded,t[6]=e.labelClassName,t[7]=a):a=t[7];let o;t[8]!==e.label||t[9]!==a?(o=(0,Y.jsx)(`span`,{className:a,"data-composer-expandable-label":`true`,children:e.label}),t[8]=e.label,t[9]=a,t[10]=o):o=t[10];let s;return t[11]!==n||t[12]!==r||t[13]!==i||t[14]!==o?(s=(0,Y.jsxs)(`span`,{className:n,"data-composer-expandable-label-control":`true`,"data-collapsed":r,children:[i,o]}),t[11]=n,t[12]=r,t[13]=i,t[14]=o,t[15]=s):s=t[15],s}),EK=e=>e.isResponding?`Submitting...`:e.compact?e.isLastQuestion?`Submit`:`Next`:e.isLastQuestion?e.questionIndex>0?`Submit answers`:`Submit answer`:`Next question`,DK=e=>{e.preventDefault()},OK=(0,q.memo)(function(e){let t=(0,J.c)(67),{compact:n,pendingAction:r,isRunning:i,showPlanFollowUpPrompt:a,promptHasText:o,isSendBusy:s,isConnecting:c,isEnvironmentUnavailable:l,isPreparingWorktree:u,hasSendableContent:d,sendDisabledReason:f,preserveComposerFocusOnPointerDown:p,onPreviousPendingQuestion:m,onInterrupt:h,onImplementPlanInNewThread:g}=e,_=f===void 0?null:f,v=p!==void 0&&p,y;t[0]===v?y=t[1]:(y=v?{onPointerDown:DK}:void 0,t[0]=v,t[1]=y);let b=y;if(r){let e=n?`gap-1.5`:`gap-2`,i;t[2]===e?i=t[3]:(i=G(`flex items-center justify-end`,e),t[2]=e,t[3]=i);let a;t[4]!==n||t[5]!==m||t[6]!==r.isResponding||t[7]!==r.questionIndex||t[8]!==b?(a=r.questionIndex>0?n?(0,Y.jsx)(W,{size:`icon-sm`,variant:`outline`,...b,onClick:m,disabled:r.isResponding,"aria-label":`Previous question`,children:(0,Y.jsx)(_s,{className:`size-3.5`})}):(0,Y.jsx)(W,{size:`sm`,variant:`outline`,...b,onClick:m,disabled:r.isResponding,children:`Previous`}):null,t[4]=n,t[5]=m,t[6]=r.isResponding,t[7]=r.questionIndex,t[8]=b,t[9]=a):a=t[9];let o=n?`px-3`:`px-4`,s;t[10]===o?s=t[11]:(s=G(o),t[10]=o,t[11]=s);let c=l||r.isResponding||(r.isLastQuestion?!r.isComplete:!r.canAdvance),u;t[12]!==n||t[13]!==r.isLastQuestion||t[14]!==r.isResponding||t[15]!==r.questionIndex?(u=EK({compact:n,isLastQuestion:r.isLastQuestion,isResponding:r.isResponding,questionIndex:r.questionIndex}),t[12]=n,t[13]=r.isLastQuestion,t[14]=r.isResponding,t[15]=r.questionIndex,t[16]=u):u=t[16];let d;t[17]!==b||t[18]!==u||t[19]!==s||t[20]!==c?(d=(0,Y.jsx)(W,{type:`submit`,size:`sm`,className:s,...b,disabled:c,children:u}),t[17]=b,t[18]=u,t[19]=s,t[20]=c,t[21]=d):d=t[21];let f;return t[22]!==d||t[23]!==i||t[24]!==a?(f=(0,Y.jsxs)(`div`,{className:i,children:[a,d]}),t[22]=d,t[23]=i,t[24]=a,t[25]=f):f=t[25],f}if(i){let e;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 12 12`,fill:`currentColor`,"aria-hidden":`true`,children:(0,Y.jsx)(`rect`,{x:`2`,y:`2`,width:`8`,height:`8`,rx:`1.5`})}),t[26]=e):e=t[26];let n;return t[27]!==h||t[28]!==b?(n=(0,Y.jsx)(`button`,{type:`button`,className:`flex size-8 cursor-pointer items-center justify-center rounded-lg bg-rose-500/90 text-white transition-all duration-150 hover:bg-rose-500 hover:scale-105 sm:h-8 sm:w-8`,...b,onClick:h,"aria-label":`Stop generation`,children:e}),t[27]=h,t[28]=b,t[29]=n):n=t[29],n}if(a){if(o){let e=n?`h-9 px-3 sm:h-8`:`h-9 px-4 sm:h-8`,r;t[30]===e?r=t[31]:(r=G(e),t[30]=e,t[31]=r);let i=s||c||l,a=c||s?`Sending...`:`Refine`,o;return t[32]!==b||t[33]!==r||t[34]!==i||t[35]!==a?(o=(0,Y.jsx)(W,{type:`submit`,size:`sm`,className:r,...b,disabled:i,children:a}),t[32]=b,t[33]=r,t[34]=i,t[35]=a,t[36]=o):o=t[36],o}let e=s||c||l,r=c||s?`Sending...`:`Implement`,i;t[37]!==b||t[38]!==e||t[39]!==r?(i=(0,Y.jsx)(W,{type:`submit`,size:`sm`,className:`h-9 rounded-l-lg rounded-r-none px-4 sm:h-8`,...b,disabled:e,children:r}),t[37]=b,t[38]=e,t[39]=r,t[40]=i):i=t[40];let a=s||c||l,u;t[41]!==b||t[42]!==a?(u=(0,Y.jsx)(W,{size:`sm`,variant:`default`,className:`h-9 rounded-l-none rounded-r-lg border-l-white/12 px-2 sm:h-8`,"aria-label":`Implementation actions`,...b,disabled:a}),t[41]=b,t[42]=a,t[43]=u):u=t[43];let d;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(fr,{className:`size-3.5`}),t[44]=d):d=t[44];let f;t[45]===u?f=t[46]:(f=(0,Y.jsx)(qi,{render:u,children:d}),t[45]=u,t[46]=f);let p=s||c||l,m;t[47]===g?m=t[48]:(m=()=>void g(),t[47]=g,t[48]=m);let h;t[49]!==p||t[50]!==m?(h=(0,Y.jsx)(_i,{align:`end`,side:`top`,children:(0,Y.jsx)(Fi,{disabled:p,onClick:m,children:`Implement in a new thread`})}),t[49]=p,t[50]=m,t[51]=h):h=t[51];let _;t[52]!==f||t[53]!==h?(_=(0,Y.jsxs)(ka,{children:[f,h]}),t[52]=f,t[53]=h,t[54]=_):_=t[54];let v;return t[55]!==_||t[56]!==i?(v=(0,Y.jsxs)(`div`,{"data-chat-composer-implement-actions":`true`,className:`flex items-center justify-end`,children:[i,_]}),t[55]=_,t[56]=i,t[57]=v):v=t[57],v}let x=s||c||l||!d,S=_??void 0,C=l?`Environment disconnected`:c?`Connecting`:u?`Preparing worktree`:s?`Sending`:`Send message`,w;t[58]!==c||t[59]!==s?(w=c||s?(0,Y.jsx)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,className:`animate-spin`,"aria-hidden":`true`,children:(0,Y.jsx)(`circle`,{cx:`7`,cy:`7`,r:`5.5`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeDasharray:`20 12`})}):(0,Y.jsx)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 14 14`,fill:`none`,"aria-hidden":`true`,children:(0,Y.jsx)(`path`,{d:`M7 11.5V2.5M7 2.5L3 6.5M7 2.5L11 6.5`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`})}),t[58]=c,t[59]=s,t[60]=w):w=t[60];let T;return t[61]!==b||t[62]!==x||t[63]!==S||t[64]!==C||t[65]!==w?(T=(0,Y.jsx)(`button`,{type:`submit`,className:`flex h-9 w-9 enabled:cursor-pointer items-center justify-center rounded-lg bg-primary/90 text-primary-foreground transition-all duration-150 hover:bg-primary hover:scale-105 disabled:pointer-events-none disabled:opacity-30 disabled:hover:scale-100 sm:h-8 sm:w-8`,...b,disabled:x,title:S,"aria-label":C,children:w}),t[61]=b,t[62]=x,t[63]=S,t[64]=C,t[65]=w,t[66]=T):T=t[66],T}),kK=`Not supported by this provider.`,AK=(0,q.memo)(function(e){let t=(0,J.c)(20),n=e.tokenMode??`off`,r=e.showSessionPolicy??!0,i=e.runtimeMode===`full-access`?`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`:void 0,a;t[0]===i?a=t[1]:(a=G(`shrink-0 text-muted-foreground/70 hover:text-foreground/80`,i),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=(0,Y.jsx)(W,{size:`icon-xs`,variant:`ghost`,className:a,"aria-label":`More composer controls`}),t[2]=a,t[3]=o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Y.jsx)(as,{"aria-hidden":`true`,className:`size-4`}),t[4]=s):s=t[4];let c;t[5]===o?c=t[6]:(c=(0,Y.jsx)(qi,{render:o,children:s}),t[5]=o,t[6]=c);let l;t[7]!==e.traitsMenuContent||t[8]!==r?(l=e.traitsMenuContent?(0,Y.jsxs)(Y.Fragment,{children:[e.traitsMenuContent,r?(0,Y.jsx)(Vi,{}):null]}):null,t[7]=e.traitsMenuContent,t[8]=r,t[9]=l):l=t[9];let u;t[10]!==e||t[11]!==r||t[12]!==n?(u=r?(0,Y.jsxs)(Y.Fragment,{children:[e.showInteractionModeToggle?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`px-2 py-1.5 font-medium text-muted-foreground text-xs`,children:`Mode`}),(0,Y.jsxs)(Si,{value:e.interactionMode,onValueChange:t=>{t&&t!==e.interactionMode&&e.onInteractionModeChange(t)},children:[(0,Y.jsx)(ki,{value:`default`,children:`Chat`}),(0,Y.jsx)(ki,{value:`plan`,children:`Plan`}),(0,Y.jsx)(ki,{value:`ask`,disabled:!e.askModeSupported,children:e.askModeSupported?`Ask`:(0,Y.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,Y.jsx)(`span`,{children:`Ask`}),(0,Y.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:kK})]})})]}),(0,Y.jsx)(Vi,{})]}):null,(0,Y.jsx)(`div`,{className:`px-2 py-1.5 font-medium text-muted-foreground text-xs`,children:`Access`}),(0,Y.jsxs)(Si,{value:e.runtimeMode,onValueChange:t=>{t&&t!==e.runtimeMode&&e.onRuntimeModeChange(t)},children:[(0,Y.jsx)(ki,{value:`approval-required`,children:`Supervised`}),(0,Y.jsx)(ki,{value:`auto-accept-edits`,children:`Auto-accept edits`}),(0,Y.jsx)(ki,{value:`auto`,children:`Auto`}),(0,Y.jsx)(ki,{value:`full-access`,children:`Full access`})]}),(0,Y.jsx)(Vi,{}),(0,Y.jsx)(`div`,{className:`px-2 py-1.5 font-medium text-muted-foreground text-xs`,children:`Tokens`}),(0,Y.jsxs)(Si,{value:n,onValueChange:t=>{t&&t!==n&&e.onTokenModeChange?.(t)},children:[(0,Y.jsx)(ki,{value:`off`,children:`Off`}),(0,Y.jsx)(ki,{value:`balanced`,children:`Balanced`}),(0,Y.jsx)(ki,{value:`aggressive`,children:`Aggressive`})]}),e.activePlan?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Vi,{}),(0,Y.jsxs)(Fi,{onClick:e.onTogglePlanSidebar,children:[(0,Y.jsx)(Wu,{className:`size-4 shrink-0`}),e.planSidebarOpen?`Hide ${e.planSidebarLabel.toLowerCase()} sidebar`:`Show ${e.planSidebarLabel.toLowerCase()} sidebar`]})]}):null]}):null,t[10]=e,t[11]=r,t[12]=n,t[13]=u):u=t[13];let d;t[14]!==l||t[15]!==u?(d=(0,Y.jsxs)(_i,{align:`start`,children:[l,u]}),t[14]=l,t[15]=u,t[16]=d):d=t[16];let f;return t[17]!==c||t[18]!==d?(f=(0,Y.jsxs)(ka,{children:[c,d]}),t[17]=c,t[18]=d,t[19]=f):f=t[19],f}),jK=new Intl.DateTimeFormat(void 0,{year:`numeric`,month:`numeric`,day:`numeric`});function MK(e){return!e||w(e)?``:jK.format(L(e.value))}var NK=(0,q.memo)(function(e){let t=(0,J.c)(7);if(e.isLoading&&e.items.length===0){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`div`,{className:`px-3 py-4 text-xs text-muted-foreground`,children:`Loading…`}),t[0]=e):e=t[0],e}if(e.items.length===0){let n;return t[1]===e.emptyText?n=t[2]:(n=(0,Y.jsx)(`div`,{className:`px-3 py-4 text-xs text-muted-foreground`,children:e.emptyText}),t[1]=e.emptyText,t[2]=n),n}let n;t[3]===e?n=t[4]:(n=e.items.map(t=>(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>e.onSelect(t),className:G(`flex w-full items-center gap-2 px-3 py-2 text-left text-sm`,`hover:bg-accent`),children:[(0,Y.jsxs)(`span`,{className:`shrink-0 text-muted-foreground`,children:[`#`,t.number]}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t.title}),(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:MK(t.updatedAt)})]})},`${t.provider}:${t.number}`)),t[3]=e,t[4]=n);let r;return t[5]===n?r=t[6]:(r=(0,Y.jsx)(`ul`,{className:`max-h-72 overflow-y-auto`,role:`listbox`,children:n}),t[5]=n,t[6]=r),r});function PK(e){let t=(0,J.c)(64),[n,r]=(0,q.useState)(`issues`),[i,a]=(0,q.useState)(``),[o,s]=(0,q.useState)(!1),c=(0,q.useRef)(null),l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l={wait:200},t[0]=l):l=t[0];let[u]=ro(i,l),d;t[1]!==e.cwd||t[2]!==e.environmentId?(d={environmentId:e.environmentId,cwd:e.cwd,state:`open`},t[1]=e.cwd,t[2]=e.environmentId,t[3]=d):d=t[3];let f=Ki(d),p;t[4]!==e.cwd||t[5]!==e.environmentId?(p={environmentId:e.environmentId,cwd:e.cwd,state:`open`},t[4]=e.cwd,t[5]=e.environmentId,t[6]=p):p=t[6];let m=Ji(p),h;t[7]===f.data?h=t[8]:(h=f.data??[],t[7]=f.data,t[8]=h);let g=h,_;t[9]===m.data?_=t[10]:(_=m.data??[],t[9]=m.data,t[10]=_);let v=_,y;t[11]!==g||t[12]!==i?(y=Ca(g,i),t[11]=g,t[12]=i,t[13]=y):y=t[13];let b=y,x=v,S;t[14]!==i||t[15]!==x?(S=Ca(x,i),t[14]=i,t[15]=x,t[16]=S):S=t[16];let C=S,w=n===`issues`&&b.length===0&&u.length>=2,T=n===`prs`&&C.length===0&&u.length>=2,E;t[17]!==u||t[18]!==w||t[19]!==e.cwd||t[20]!==e.environmentId?(E={environmentId:e.environmentId,cwd:e.cwd,query:u,enabled:w},t[17]=u,t[18]=w,t[19]=e.cwd,t[20]=e.environmentId,t[21]=E):E=t[21];let D=Yi(E),O;t[22]!==u||t[23]!==T||t[24]!==e.cwd||t[25]!==e.environmentId?(O={environmentId:e.environmentId,cwd:e.cwd,query:u,enabled:T},t[22]=u,t[23]=T,t[24]=e.cwd,t[25]=e.environmentId,t[26]=O):O=t[26];let k=yi(O),A;t[27]!==b||t[28]!==w||t[29]!==D?(A=w?D.data??[]:b,t[27]=b,t[28]=w,t[29]=D,t[30]=A):A=t[30];let j=A,M;t[31]!==C||t[32]!==T||t[33]!==k?(M=T?k.data??[]:C,t[31]=C,t[32]=T,t[33]=k,t[34]=M):M=t[34];let N=M,P=f.isLoading||w&&D.isLoading,F=m.isLoading||T&&k.isLoading,I;t[35]===e?I=t[36]:(I=function(t){let n=t.target.files?.[0];n&&e.onAttachFile(n),t.target.value=``},t[35]=e,t[36]=I);let L=I,R;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(R=function(e){e.preventDefault(),s(!0)},t[37]=R):R=t[37];let z=R,ee;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ee=function(){s(!1)},t[38]=ee):ee=t[38];let te=ee,B;t[39]===e?B=t[40]:(B=function(t){t.preventDefault(),s(!1);let n=t.dataTransfer.files[0];n&&e.onAttachFile(n)},t[39]=e,t[40]=B);let ne=B,re=o||void 0,ie;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,Y.jsx)(`span`,{className:`text-sm font-medium`,children:`Add context`}),t[41]=ie):ie=t[41];let V;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Attach file`,className:`text-muted-foreground hover:text-foreground`,onClick:()=>c.current?.click(),children:(0,Y.jsx)(cd,{className:`size-4`})}),t[42]=V):V=t[42];let ae;t[43]===L?ae=t[44]:(ae=(0,Y.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[ie,V,(0,Y.jsx)(`input`,{ref:c,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,onChange:L})]}),t[43]=L,t[44]=ae);let H;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(H=e=>a(e.target.value),t[45]=H):H=t[45];let U;t[46]===i?U=t[47]:(U=(0,Y.jsx)(`div`,{className:`px-3 py-2 border-b border-border`,children:(0,Y.jsx)(`input`,{type:`text`,className:`w-full rounded-md bg-muted px-2 py-1 text-sm outline-none placeholder:text-muted-foreground`,placeholder:`Search…`,value:i,onChange:H})}),t[46]=i,t[47]=U);let oe;t[48]!==n||t[49]!==g||t[50]!==v||t[51]!==j||t[52]!==N||t[53]!==P||t[54]!==F||t[55]!==e||t[56]!==i?(oe=e.hasSourceControlRemote?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(ai,{tabs:[{id:`issues`,label:`Issues`,count:g.length},{id:`prs`,label:`PRs`,count:v.length}],activeId:n,onSelect:e=>r(e)}),n===`issues`?(0,Y.jsx)(NK,{items:j,isLoading:P,emptyText:i.length>0?`No matching issues`:`No open issues`,onSelect:e.onSelectIssue}):(0,Y.jsx)(NK,{items:N,isLoading:F,emptyText:i.length>0?`No matching PRs`:`No open PRs`,onSelect:t=>e.onSelectChangeRequest(t)})]}):(0,Y.jsx)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground`,children:`No source-control remote detected. File attach is still available above.`}),t[48]=n,t[49]=g,t[50]=v,t[51]=j,t[52]=N,t[53]=P,t[54]=F,t[55]=e,t[56]=i,t[57]=oe):oe=t[57];let se;return t[58]!==ne||t[59]!==re||t[60]!==ae||t[61]!==U||t[62]!==oe?(se=(0,Y.jsxs)(`div`,{className:`flex w-80 flex-col`,onDragOver:z,onDragLeave:te,onDrop:ne,"data-drag-over":re,children:[ae,U,oe]}),t[58]=ne,t[59]=re,t[60]=ae,t[61]=U,t[62]=oe,t[63]=se):se=t[63],se}function FK(e){let t=(0,J.c)(15),[n,r]=(0,q.useState)(!1),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsx)(pi,{render:(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,"aria-label":`Add context`,className:`text-muted-foreground/70 hover:text-foreground/80`})}),children:(0,Y.jsx)(cd,{className:`size-4`})}),(0,Y.jsx)(Co,{side:`top`,children:`Add context`})]}),t[0]=i):i=t[0];let a,o,s;t[1]===e?(a=t[2],o=t[3],s=t[4]):(a=t=>{e.onSelectIssue(t),r(!1)},o=t=>{e.onSelectChangeRequest(t),r(!1)},s=t=>{e.onAttachFile(t),r(!1)},t[1]=e,t[2]=a,t[3]=o,t[4]=s);let c;t[5]!==e.cwd||t[6]!==e.environmentId||t[7]!==e.hasSourceControlRemote||t[8]!==a||t[9]!==o||t[10]!==s?(c=(0,Y.jsx)(hi,{align:`start`,side:`top`,className:`p-0`,children:(0,Y.jsx)(PK,{environmentId:e.environmentId,cwd:e.cwd,hasSourceControlRemote:e.hasSourceControlRemote,onSelectIssue:a,onSelectChangeRequest:o,onAttachFile:s})}),t[5]=e.cwd,t[6]=e.environmentId,t[7]=e.hasSourceControlRemote,t[8]=a,t[9]=o,t[10]=s,t[11]=c):c=t[11];let l;return t[12]!==n||t[13]!==c?(l=(0,Y.jsxs)(Gi,{open:n,onOpenChange:r,children:[i,c]}),t[12]=n,t[13]=c,t[14]=l):l=t[14],l}function IK(e){return e&&typeof e==`object`?e:null}function LK(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function RK(e){return typeof e==`boolean`?e:null}function zK(e){let t=e?.trim().match(/^(\d+(?:\.\d+)?)\s*([km]?)$/i);if(!t)return null;let n=Number(t[1]),r=t[2]?.toLowerCase()??``;if(!Number.isFinite(n)||n<=0||r===``&&!Number.isInteger(n))return null;let i=Math.round(n*(r===`m`?1e6:r===`k`?1e3:1));return Number.isSafeInteger(i)&&i>0?i:null}function BK(e){let t=e!==null&&Number.isSafeInteger(e)&&e>0?e:null;return{usedTokens:0,totalProcessedTokens:null,maxTokens:t,remainingTokens:t,usedPercentage:t===null?null:0,remainingPercentage:t===null?null:100,inputTokens:null,cachedInputTokens:null,outputTokens:null,reasoningOutputTokens:null,lastUsedTokens:null,lastInputTokens:null,lastCachedInputTokens:null,lastOutputTokens:null,lastReasoningOutputTokens:null,toolUses:null,durationMs:null,compactsAutomatically:!1}}function VK(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(!n||n.kind!==`context-window.updated`)continue;let r=IK(n.payload),i=LK(r?.usedTokens);if(i===null||i<0)continue;let a=LK(r?.maxTokens),o=a!==null&&Number.isSafeInteger(a)&&a>0?a:null,s=o!==null&&o>0?Math.min(100,i/o*100):null,c=o===null?null:Math.max(0,Math.round(o-i)),l=s===null?null:Math.max(0,100-s);return{usedTokens:i,totalProcessedTokens:LK(r?.totalProcessedTokens),maxTokens:o,remainingTokens:c,usedPercentage:s,remainingPercentage:l,inputTokens:LK(r?.inputTokens),cachedInputTokens:LK(r?.cachedInputTokens),outputTokens:LK(r?.outputTokens),reasoningOutputTokens:LK(r?.reasoningOutputTokens),lastUsedTokens:LK(r?.lastUsedTokens),lastInputTokens:LK(r?.lastInputTokens),lastCachedInputTokens:LK(r?.lastCachedInputTokens),lastOutputTokens:LK(r?.lastOutputTokens),lastReasoningOutputTokens:LK(r?.lastReasoningOutputTokens),toolUses:LK(r?.toolUses),durationMs:LK(r?.durationMs),compactsAutomatically:RK(r?.compactsAutomatically)??!1,updatedAt:n.createdAt}}return null}function HK(e,t){if(e.maxTokens!==null||t==null||!Number.isSafeInteger(t)||t<=0)return e;let n=Math.min(100,e.usedTokens/t*100);return{...e,maxTokens:t,remainingTokens:Math.max(0,t-e.usedTokens),usedPercentage:n,remainingPercentage:Math.max(0,100-n)}}function UK(e,t,n=null){let r=zK(t)??n;return HK(VK(e)??BK(r),r)}function WK(e){return e===null||!Number.isFinite(e)?`0`:e<1e3?`${Math.round(e)}`:e<1e4?`${(e/1e3).toFixed(1).replace(/\.0$/,``)}k`:e<1e6?`${Math.round(e/1e3)}k`:`${(e/1e6).toFixed(1).replace(/\.0$/,``)}m`}function GK(e){return e===null||!Number.isFinite(e)?null:e<10?`${e.toFixed(1).replace(/\.0$/,``)}%`:`${Math.round(e)}%`}function KK(e){let t=(0,J.c)(5);if(e.percent===null)return null;let n=Math.max(0,Math.min(100,e.percent)),r=n>=95?`h-full rounded-full bg-destructive`:n>=80?`h-full rounded-full bg-warning`:`h-full rounded-full bg-foreground/60`,i=`${n}%`,a;t[0]===i?a=t[1]:(a={width:i},t[0]=i,t[1]=a);let o;return t[2]!==r||t[3]!==a?(o=(0,Y.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-muted`,children:(0,Y.jsx)(`div`,{className:r,style:a})}),t[2]=r,t[3]=a,t[4]=o):o=t[4],o}function qK(e){let t=(0,J.c)(5),n;t[0]===e.window?n=t[1]:(n=el(e.window),t[0]=e.window,t[1]=n);let r=n,i=e.window.windowDurationMins===void 0?e.fallbackLabel:r.label,a;return t[2]!==i||t[3]!==e?(a=(0,Y.jsx)(rl,{...e,label:i,compact:!0}),t[2]=i,t[3]=e,t[4]=a):a=t[4],a}function JK(e){let t=(0,J.c)(54),{usage:n,rateLimits:r}=e,i=jl(),a=!!(r&&(r.primary||r.secondary||r.tertiary)),o;t[0]===n.usedPercentage?o=t[1]:(o=GK(n.usedPercentage),t[0]=n.usedPercentage,t[1]=o);let s=o,c=Math.max(0,Math.min(100,n.usedPercentage??0)),l=2*Math.PI*9.75,u=l-c/100*l,d;t[2]!==n.maxTokens||t[3]!==n.usedTokens||t[4]!==s?(d=n.maxTokens!==null&&s?`Context window ${s} used`:`Context window ${WK(n.usedTokens)} tokens used`,t[2]=n.maxTokens,t[3]=n.usedTokens,t[4]=s,t[5]=d):d=t[5];let f;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(`circle`,{cx:`12`,cy:`12`,r:9.75,fill:`none`,stroke:`color-mix(in oklab, var(--color-muted) 70%, transparent)`,strokeWidth:`3`}),t[6]=f):f=t[6];let p;t[7]===u?p=t[8]:(p=(0,Y.jsxs)(`svg`,{viewBox:`0 0 24 24`,className:`-rotate-90 absolute inset-0 h-full w-full`,"aria-hidden":`true`,children:[f,(0,Y.jsx)(`circle`,{cx:`12`,cy:`12`,r:9.75,fill:`none`,stroke:`var(--color-muted-foreground)`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:l,strokeDashoffset:u,className:`transition-[stroke-dashoffset] duration-500 ease-out motion-reduce:transition-none`})]}),t[7]=u,t[8]=p);let m;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(`relative flex h-[15px] w-[15px] items-center justify-center rounded-full bg-background text-[8px] font-medium`,`text-muted-foreground`),t[9]=m):m=t[9];let h;t[10]!==n.usedPercentage||t[11]!==n.usedTokens?(h=n.usedPercentage===null?WK(n.usedTokens):Math.round(n.usedPercentage),t[10]=n.usedPercentage,t[11]=n.usedTokens,t[12]=h):h=t[12];let g;t[13]===h?g=t[14]:(g=(0,Y.jsx)(`span`,{className:m,children:h}),t[13]=h,t[14]=g);let _;t[15]!==p||t[16]!==g?(_=(0,Y.jsxs)(`span`,{className:`relative flex h-6 w-6 items-center justify-center`,children:[p,g]}),t[15]=p,t[16]=g,t[17]=_):_=t[17];let v;t[18]!==d||t[19]!==_?(v=(0,Y.jsx)(pi,{openOnHover:!0,delay:150,closeDelay:0,render:(0,Y.jsx)(`button`,{type:`button`,className:`group inline-flex h-9 w-6 items-center justify-center rounded-full transition-opacity hover:opacity-85 sm:h-8`,"aria-label":d,children:_})}),t[18]=d,t[19]=_,t[20]=v):v=t[20];let y;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Y.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground`,children:`Context window`}),t[21]=y):y=t[21];let b;t[22]!==n.maxTokens||t[23]!==n.usedTokens||t[24]!==s?(b=n.maxTokens!==null&&s?(0,Y.jsxs)(`div`,{className:`whitespace-nowrap text-xs font-medium text-foreground`,children:[(0,Y.jsx)(`span`,{children:s}),(0,Y.jsx)(`span`,{className:`mx-1`,children:`⋅`}),(0,Y.jsx)(`span`,{children:WK(n.usedTokens)}),(0,Y.jsx)(`span`,{children:`/`}),(0,Y.jsxs)(`span`,{children:[WK(n.maxTokens??null),` context used`]})]}):(0,Y.jsxs)(`div`,{className:`whitespace-nowrap text-xs font-medium text-foreground`,children:[WK(n.usedTokens),` context used`]}),t[22]=n.maxTokens,t[23]=n.usedTokens,t[24]=s,t[25]=b):b=t[25];let x=n.maxTokens!==null&&n.usedPercentage!==null?c:null,S;t[26]===x?S=t[27]:(S=(0,Y.jsx)(KK,{percent:x}),t[26]=x,t[27]=S);let C;t[28]!==n.totalProcessedTokens||t[29]!==n.usedTokens?(C=(n.totalProcessedTokens??null)!==null&&(n.totalProcessedTokens??0)>n.usedTokens?(0,Y.jsxs)(`div`,{className:`text-xs text-muted-foreground`,children:[`Total processed: `,WK(n.totalProcessedTokens??null),` `,`tokens`]}):null,t[28]=n.totalProcessedTokens,t[29]=n.usedTokens,t[30]=C):C=t[30];let w;t[31]===n.compactsAutomatically?w=t[32]:(w=n.compactsAutomatically?(0,Y.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:`Automatically compacts its context when needed.`}):null,t[31]=n.compactsAutomatically,t[32]=w);let T;t[33]!==b||t[34]!==S||t[35]!==C||t[36]!==w?(T=(0,Y.jsxs)(`div`,{className:`space-y-1.5 leading-tight`,children:[y,b,S,C,w]}),t[33]=b,t[34]=S,t[35]=C,t[36]=w,t[37]=T):T=t[37];let E;t[38]!==i||t[39]!==e.available||t[40]!==e.checkedAt||t[41]!==r||t[42]!==a?(E=a&&r?(0,Y.jsxs)(`div`,{className:`mt-2.5 space-y-1.5 border-t border-border/60 pt-2 leading-tight`,children:[(0,Y.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-[0.08em] text-muted-foreground`,children:`Usage limits`}),(0,Y.jsxs)(`div`,{className:`grid gap-1`,children:[r.primary?(0,Y.jsx)(qK,{checkedAt:e.checkedAt,available:e.available===!0,now:i,window:r.primary,fallbackLabel:`Short window`}):null,r.secondary?(0,Y.jsx)(qK,{checkedAt:e.checkedAt,available:e.available===!0,now:i,window:r.secondary,fallbackLabel:`Weekly`}):null,r.tertiary?(0,Y.jsx)(qK,{checkedAt:e.checkedAt,available:e.available===!0,now:i,window:r.tertiary,fallbackLabel:`Monthly`}):null]})]}):null,t[38]=i,t[39]=e.available,t[40]=e.checkedAt,t[41]=r,t[42]=a,t[43]=E):E=t[43];let D;t[44]!==e.available||t[45]!==r?(D=r?.resetCredits?(0,Y.jsxs)(`div`,{className:`phone:hidden mt-2 border-t border-border/60 pt-2 text-xs text-muted-foreground`,children:[e.available?`${r.resetCredits.availableCount} banked resets`:`Banked resets unavailable while disconnected`,(0,Y.jsx)(`div`,{children:`Review and redeem in Settings → Providers.`})]}):null,t[44]=e.available,t[45]=r,t[46]=D):D=t[46];let O;t[47]!==T||t[48]!==E||t[49]!==D?(O=(0,Y.jsxs)(hi,{tooltipStyle:!0,surface:`glass`,side:`top`,align:`end`,className:`w-64 max-w-none px-3 py-2`,children:[T,E,D]}),t[47]=T,t[48]=E,t[49]=D,t[50]=O):O=t[50];let k;return t[51]!==O||t[52]!==v?(k=(0,Y.jsxs)(Gi,{children:[v,O]}),t[51]=O,t[52]=v,t[53]=k):k=t[53],k}function YK(e){let t=(0,J.c)(35),{label:n,value:r,options:i,disabled:a,disabledReason:o,onChange:s,className:c}=e,l=a!==void 0&&a,u=`${(0,q.useId)()}-reason`,d;t[0]!==l||t[1]!==o?(d=l&&o?vl(o):null,t[0]=l,t[1]=o,t[2]=d):d=t[2];let f=d,p;if(t[3]!==i||t[4]!==r){let e=i.find(e=>e.id===r)??null;p=e?.disabled===!0&&e.disabledReason?vl(e.disabledReason):e?.description??null,t[3]=i,t[4]=r,t[5]=p}else p=t[5];let m=p,h;t[6]===c?h=t[7]:(h=G(`flex min-w-0 flex-col gap-1.5`,c),t[6]=c,t[7]=h);let g;t[8]===n?g=t[9]:(g=(0,Y.jsx)(`div`,{className:`font-medium text-muted-foreground text-xs`,children:n}),t[8]=n,t[9]=g);let _;t[10]!==f||t[11]!==u?(_=f?{"aria-describedby":u}:{},t[10]=f,t[11]=u,t[12]=_):_=t[12];let v;if(t[13]!==l||t[14]!==s||t[15]!==i||t[16]!==r){let e;t[18]!==l||t[19]!==s||t[20]!==r?(e=e=>{let t=l||(e.disabled??!1),n=e.id===r;return(0,Y.jsxs)(`button`,{type:`button`,"aria-pressed":n,disabled:t,"data-tone":e.tone??`default`,className:G(`flex min-h-11 min-w-0 basis-0 grow flex-col items-center justify-center gap-0.5 rounded-md px-1 text-center text-xs`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,n?`bg-background font-medium shadow-sm`:`text-muted-foreground`,e.tone===`caution`&&!t&&`text-orange-700 dark:text-orange-400`),"data-slot":`mobile-segmented-option`,onClick:()=>{t||s(e.id)},children:[e.icon,(0,Y.jsx)(`span`,{className:`w-full truncate`,children:e.label})]},e.id)},t[18]=l,t[19]=s,t[20]=r,t[21]=e):e=t[21],v=i.map(e),t[13]=l,t[14]=s,t[15]=i,t[16]=r,t[17]=v}else v=t[17];let y;t[22]!==n||t[23]!==_||t[24]!==v?(y=(0,Y.jsx)(`div`,{role:`group`,"aria-label":n,..._,className:`flex min-w-0 items-stretch gap-1 rounded-lg bg-muted/50 p-1`,"data-slot":`mobile-segmented-group`,children:v}),t[22]=n,t[23]=_,t[24]=v,t[25]=y):y=t[25];let b;t[26]!==f||t[27]!==u||t[28]!==m?(b=f?(0,Y.jsx)(`p`,{id:u,className:`text-muted-foreground/80 text-xs`,"data-slot":`mobile-segmented-reason`,children:f}):m?(0,Y.jsx)(`p`,{className:`text-muted-foreground text-xs`,"data-slot":`mobile-segmented-description`,children:m}):null,t[26]=f,t[27]=u,t[28]=m,t[29]=b):b=t[29];let x;return t[30]!==h||t[31]!==g||t[32]!==y||t[33]!==b?(x=(0,Y.jsxs)(`div`,{className:h,"data-slot":`mobile-segmented`,children:[g,y,b]}),t[30]=h,t[31]=g,t[32]=y,t[33]=b,t[34]=x):x=t[34],x}var XK={"approval-required":{label:`Supervised`,triggerLabel:`Supervised`,description:`Ask before commands and file changes.`,icon:Ju},"auto-accept-edits":{label:`Auto-accept edits`,triggerLabel:`Auto-accept`,description:`Auto-approve edits, ask before other actions.`,icon:us},auto:{label:`Auto`,triggerLabel:`Auto`,description:`Routine actions proceed without you; risky ones still ask.`,icon:ac},"full-access":{label:`Full access`,triggerLabel:`Full access`,description:`Allow commands and edits without prompts.`,icon:Ku}},ZK=Object.keys(XK),QK={default:{label:`Build`,triggerLabel:`Build`,description:`Make changes and run commands.`,icon:Hu},plan:{label:`Plan`,triggerLabel:`Plan`,description:`Chat toward a plan before making changes.`,icon:Eu},ask:{label:`Ask`,triggerLabel:`Ask`,description:`Read-only — answer questions without editing files.`,icon:Qu}},$K=Object.keys(QK),eq=(0,q.memo)(function(e){let t=(0,J.c)(38),n=e.disabled??!1,r=n&&e.disabledReason?e.disabledReason:void 0,i=e.open,a=e.onOpenChange,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(yl,{children:(0,Y.jsx)(xl,{children:`Session policy`})}),t[0]=o):o=t[0];let s;t[1]!==n||t[2]!==e||t[3]!==r?(s=e.showInteractionModeToggle?(0,Y.jsx)(YK,{label:`Mode`,value:e.interactionMode,disabled:n,...r?{disabledReason:r}:{},options:$K.map(t=>{let n=QK[t];return t===`ask`&&!e.askModeSupported?{id:t,label:n.label,description:kK,disabled:!0,disabledReason:kK}:{id:t,label:n.label,description:n.description}}),onChange:t=>e.onInteractionModeChange(t)}):null,t[1]=n,t[2]=e,t[3]=r,t[4]=s):s=t[4];let c=e.runtimeMode,l;t[5]===r?l=t[6]:(l=r?{disabledReason:r}:{},t[5]=r,t[6]=l);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=ZK.map(nq),t[7]=u):u=t[7];let d;t[8]===e?d=t[9]:(d=t=>e.onRuntimeModeChange(t),t[8]=e,t[9]=d);let f;t[10]!==n||t[11]!==e.runtimeMode||t[12]!==l||t[13]!==d?(f=(0,Y.jsx)(YK,{label:`Access`,value:c,disabled:n,...l,options:u,onChange:d}),t[10]=n,t[11]=e.runtimeMode,t[12]=l,t[13]=d,t[14]=f):f=t[14];let p=e.tokenMode,m;t[15]===r?m=t[16]:(m=r?{disabledReason:r}:{},t[15]=r,t[16]=m);let h;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(h=Fs.map(rq),t[17]=h):h=t[17];let g;t[18]===e?g=t[19]:(g=t=>e.onTokenModeChange(t),t[18]=e,t[19]=g);let _;t[20]!==n||t[21]!==e.tokenMode||t[22]!==m||t[23]!==g?(_=(0,Y.jsx)(YK,{label:`Tokens`,value:p,disabled:n,...m,options:h,onChange:g}),t[20]=n,t[21]=e.tokenMode,t[22]=m,t[23]=g,t[24]=_):_=t[24];let v;t[25]!==n||t[26]!==e||t[27]!==r?(v=e.showPlanToggle?(0,Y.jsx)(Cl,{label:e.planSidebarOpen?`Hide ${e.planSidebarLabel.toLowerCase()} sidebar`:`Show ${e.planSidebarLabel.toLowerCase()} sidebar`,icon:(0,Y.jsx)(Wu,{"aria-hidden":!0,className:`size-4 shrink-0`}),selected:e.planSidebarOpen,disabled:n,...r?{disabledReason:r}:{},onClick:()=>{n||(e.onOpenChange(!1),e.onTogglePlanSidebar())}}):null,t[25]=n,t[26]=e,t[27]=r,t[28]=v):v=t[28];let y;t[29]!==_||t[30]!==v||t[31]!==s||t[32]!==f?(y=(0,Y.jsx)(_l,{children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4 pb-2`,"data-slot":`phone-session-policy`,children:[s,f,_,v]})}),t[29]=_,t[30]=v,t[31]=s,t[32]=f,t[33]=y):y=t[33];let b;return t[34]!==e.onOpenChange||t[35]!==e.open||t[36]!==y?(b=(0,Y.jsxs)(wl,{open:i,onOpenChange:a,label:`Session policy`,detent:`medium`,children:[o,y]}),t[34]=e.onOpenChange,t[35]=e.open,t[36]=y,t[37]=b):b=t[37],b}),tq=(0,q.memo)(function(e){let t=(0,J.c)(23),[n,r]=(0,q.useState)(!1),i=e.disabled??!1,a=XK[e.runtimeMode],o=a.icon,s=QK[e.interactionMode],c;t[0]!==i||t[1]!==e.disabledReason?(c=i&&e.disabledReason?vl(e.disabledReason):null,t[0]=i,t[1]=e.disabledReason,t[2]=c):c=t[2];let l=c,u=e.runtimeMode===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`,d;t[3]===u?d=t[4]:(d=G(`min-h-11 shrink-0 gap-1 whitespace-nowrap px-1.5 font-medium text-muted-foreground/80 hover:text-foreground/80`,u),t[3]=u,t[4]=d);let f=`Session policy: ${s.triggerLabel}, ${a.triggerLabel}`,p=l??a.description,m;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>r(!0),t[5]=m):m=t[5];let h;t[6]===o?h=t[7]:(h=(0,Y.jsx)(o,{"aria-hidden":!0,className:`size-4`}),t[6]=o,t[7]=h);let g;t[8]===a.triggerLabel?g=t[9]:(g=(0,Y.jsx)(`span`,{className:`truncate`,children:a.triggerLabel}),t[8]=a.triggerLabel,t[9]=g);let _;t[10]!==i||t[11]!==d||t[12]!==f||t[13]!==p||t[14]!==h||t[15]!==g?(_=(0,Y.jsxs)(W,{size:`xs`,variant:`ghost`,type:`button`,"data-chat-session-policy-trigger":`true`,className:d,disabled:i,"aria-label":f,title:p,onClick:m,children:[h,g]}),t[10]=i,t[11]=d,t[12]=f,t[13]=p,t[14]=h,t[15]=g,t[16]=_):_=t[16];let v;t[17]!==n||t[18]!==e?(v=(0,Y.jsx)(eq,{...e,open:n,onOpenChange:r}),t[17]=n,t[18]=e,t[19]=v):v=t[19];let y;return t[20]!==_||t[21]!==v?(y=(0,Y.jsxs)(Y.Fragment,{children:[_,v]}),t[20]=_,t[21]=v,t[22]=y):y=t[22],y});function nq(e){return e===`full-access`?{id:e,label:XK[e].label,description:XK[e].description,tone:`caution`}:{id:e,label:XK[e].label,description:XK[e].description}}function rq(e){return{id:e,label:Ns[e].label,description:Ns[e].description}}var iq=300,aq=(0,q.memo)(function(e){let t=(0,J.c)(76),n=XK[e.runtimeMode],r=n.icon,i=Ns[e.tokenMode],a=i.icon,o=QK[e.interactionMode],s=o.icon,c=vt(cq),[l,u]=(0,q.useState)(!1),[d,f]=(0,q.useState)(!1),[p,m]=(0,q.useState)(!1),[h,g]=(0,q.useState)(!1),[_,v]=(0,q.useState)(!1),[y,b]=(0,q.useState)(!1),x=(0,q.useRef)(0),S=(0,q.useRef)(0),C=(0,q.useRef)(0),w=(0,q.useRef)(null),T=(0,q.useRef)(null),E=(0,q.useRef)(null),D=lq,O;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>{x.current=performance.now()+iq,g(!0),w.current!==null&&window.clearTimeout(w.current),w.current=window.setTimeout(()=>{w.current=null,g(!1)},iq)},t[0]=O):O=t[0];let k=O,A;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(A=()=>{S.current=performance.now()+iq,v(!0),T.current!==null&&window.clearTimeout(T.current),T.current=window.setTimeout(()=>{T.current=null,v(!1)},iq)},t[1]=A):A=t[1];let j=A,M;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{C.current=performance.now()+iq,b(!0),E.current!==null&&window.clearTimeout(E.current),E.current=window.setTimeout(()=>{E.current=null,b(!1)},iq)},t[2]=M):M=t[2];let N=M,P;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(P=()=>{k(),window.setTimeout(()=>u(!1),0)},t[3]=P):P=t[3];let F=P,I;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(I=()=>{j(),window.setTimeout(()=>f(!1),0)},t[4]=I):I=t[4];let L=I,R;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(R=()=>{N(),window.setTimeout(()=>m(!1),0)},t[5]=R):R=t[5];let z=R,ee,te;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(ee=()=>()=>{w.current!==null&&window.clearTimeout(w.current),T.current!==null&&window.clearTimeout(T.current),E.current!==null&&window.clearTimeout(E.current)},te=[],t[6]=ee,t[7]=te):(ee=t[6],te=t[7]),(0,q.useEffect)(ee,te);let B;t[8]!==s||t[9]!==o.description||t[10]!==o.triggerLabel||t[11]!==l||t[12]!==h||t[13]!==e||t[14]!==c?(B=e.showInteractionModeToggle?(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsxs)(Oo,{value:e.interactionMode,open:l,onOpenChange:e=>{e&&D(x)||u(e)},onValueChange:t=>{t&&(e.onInteractionModeChange(t),k(),u(!1))},children:[(0,Y.jsx)(jo,{variant:`ghost`,size:`xs`,className:G(`group/composer-label-control gap-1 px-1.5 font-medium text-muted-foreground/70 hover:text-foreground/80 sm:px-1.5`,c&&`min-w-7 justify-center px-1 sm:px-1 [&_[data-slot=select-icon]]:hidden`),"aria-label":`Interaction mode: ${o.triggerLabel}`,title:o.description,children:(0,Y.jsx)(TK,{collapsed:c,expanded:l||h,icon:(0,Y.jsx)(s,{className:`size-4 sm:size-3.5`}),label:(0,Y.jsx)(Eo,{children:o.triggerLabel})})}),(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-56 p-0.5 [&_[data-slot=select-item]]:min-h-7`,children:$K.map(t=>{let n=QK[t],r=n.icon,i=t===`ask`&&!e.askModeSupported;return(0,Y.jsx)(To,{value:t,disabled:i,className:`min-w-0 py-1.5`,onClick:F,children:(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium text-foreground`,children:[(0,Y.jsx)(r,{className:`size-3.5 shrink-0 text-muted-foreground`}),n.label]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:i?kK:n.description})]})},t)})})]})}):null,t[8]=s,t[9]=o.description,t[10]=o.triggerLabel,t[11]=l,t[12]=h,t[13]=e,t[14]=c,t[15]=B):B=t[15];let ne=e.runtimeMode,re;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>{e&&D(S)||f(e)},t[16]=re):re=t[16];let ie;t[17]===e?ie=t[18]:(ie=t=>{t&&(e.onRuntimeModeChange(t),j(),f(!1))},t[17]=e,t[18]=ie);let V=c&&`min-w-7 justify-center px-1 sm:px-1 [&_[data-slot=select-icon]]:hidden`,ae=e.runtimeMode===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`,H;t[19]!==V||t[20]!==ae?(H=G(`group/composer-label-control gap-1 px-1.5 font-medium sm:px-1.5`,V,ae),t[19]=V,t[20]=ae,t[21]=H):H=t[21];let U=`Runtime mode: ${n.triggerLabel}`,oe=d||_,se;t[22]===r?se=t[23]:(se=(0,Y.jsx)(r,{className:`size-4`}),t[22]=r,t[23]=se);let ce;t[24]===n.triggerLabel?ce=t[25]:(ce=(0,Y.jsx)(Eo,{children:n.triggerLabel}),t[24]=n.triggerLabel,t[25]=ce);let le;t[26]!==oe||t[27]!==se||t[28]!==ce||t[29]!==c?(le=(0,Y.jsx)(TK,{collapsed:c,expanded:oe,icon:se,label:ce}),t[26]=oe,t[27]=se,t[28]=ce,t[29]=c,t[30]=le):le=t[30];let ue;t[31]!==n.description||t[32]!==H||t[33]!==U||t[34]!==le?(ue=(0,Y.jsx)(jo,{variant:`ghost`,size:`xs`,className:H,"aria-label":U,title:n.description,children:le}),t[31]=n.description,t[32]=H,t[33]=U,t[34]=le,t[35]=ue):ue=t[35];let de;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-56 p-0.5 [&_[data-slot=select-item]]:min-h-7`,children:ZK.map(e=>{let t=XK[e],n=t.icon;return(0,Y.jsx)(To,{value:e,className:`min-w-0 py-1.5`,onClick:L,children:(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,Y.jsxs)(`span`,{className:G(`inline-flex items-center gap-1.5 font-medium text-foreground`,e===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`),"data-runtime-mode-option-label":e,children:[(0,Y.jsx)(n,{className:G(`size-3.5 shrink-0`,e!==`full-access`&&`text-muted-foreground`)}),t.label]}),(0,Y.jsx)(`span`,{className:G(`text-muted-foreground text-xs leading-4`,e===`full-access`&&`text-orange-700 hover:text-orange-800 dark:text-orange-400 dark:hover:text-orange-300`),"data-runtime-mode-option-description":e,children:t.description})]})},e)})}),t[36]=de):de=t[36];let fe;t[37]!==e.runtimeMode||t[38]!==d||t[39]!==ie||t[40]!==ue?(fe=(0,Y.jsxs)(Oo,{value:ne,open:d,onOpenChange:re,onValueChange:ie,children:[ue,de]}),t[37]=e.runtimeMode,t[38]=d,t[39]=ie,t[40]=ue,t[41]=fe):fe=t[41];let pe=e.tokenMode,me;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(me=e=>{e&&D(C)||m(e)},t[42]=me):me=t[42];let he;t[43]===e?he=t[44]:(he=t=>{t&&(e.onTokenModeChange(t),N(),m(!1))},t[43]=e,t[44]=he);let ge=c&&`min-w-7 justify-center px-1 sm:px-1`,_e=c&&`[&_[data-slot=select-icon]]:hidden`,ve;t[45]!==ge||t[46]!==_e?(ve=G(`group/composer-label-control gap-1 px-1.5 font-medium text-muted-foreground/80 hover:text-foreground/80 sm:px-1.5`,ge,_e),t[45]=ge,t[46]=_e,t[47]=ve):ve=t[47];let ye=`Token mode: ${i.triggerLabel}`,be;t[48]!==a||t[49]!==i.triggerLabel||t[50]!==p||t[51]!==y||t[52]!==c?(be=c?(0,Y.jsx)(TK,{collapsed:!0,expanded:p||y,icon:(0,Y.jsx)(a,{className:`size-4`}),label:(0,Y.jsx)(Eo,{children:i.triggerLabel})}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(a,{className:`size-4`}),(0,Y.jsx)(Eo,{children:i.triggerLabel})]}),t[48]=a,t[49]=i.triggerLabel,t[50]=p,t[51]=y,t[52]=c,t[53]=be):be=t[53];let xe;t[54]!==ve||t[55]!==ye||t[56]!==be||t[57]!==i.description?(xe=(0,Y.jsx)(jo,{variant:`ghost`,size:`xs`,className:ve,"aria-label":ye,title:i.description,children:be}),t[54]=ve,t[55]=ye,t[56]=be,t[57]=i.description,t[58]=xe):xe=t[58];let Se;t[59]===Symbol.for(`react.memo_cache_sentinel`)?(Se=(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-60 p-0.5 [&_[data-slot=select-item]]:min-h-7`,children:Fs.map(e=>{let t=Ns[e],n=t.icon;return(0,Y.jsx)(To,{value:e,className:`min-w-0 py-1.5`,onClick:z,children:(0,Y.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium text-foreground`,children:[(0,Y.jsx)(n,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:t.description})]})},e)})}),t[59]=Se):Se=t[59];let Ce;t[60]!==e.tokenMode||t[61]!==he||t[62]!==xe||t[63]!==p?(Ce=(0,Y.jsxs)(Oo,{value:pe,open:p,onOpenChange:me,onValueChange:he,children:[xe,Se]}),t[60]=e.tokenMode,t[61]=he,t[62]=xe,t[63]=p,t[64]=Ce):Ce=t[64];let we;t[65]!==e.onTogglePlanSidebar||t[66]!==e.planSidebarLabel||t[67]!==e.planSidebarOpen||t[68]!==e.showPlanToggle||t[69]!==c?(we=e.showPlanToggle?(0,Y.jsx)(W,{variant:`ghost`,className:G(`group/composer-label-control shrink-0 whitespace-nowrap px-1.5 sm:px-2`,e.planSidebarOpen?`text-blue-400 hover:text-blue-300`:`text-muted-foreground/70 hover:text-foreground/80`),size:`xs`,type:`button`,onClick:e.onTogglePlanSidebar,"aria-label":e.planSidebarLabel,title:e.planSidebarOpen?`Hide ${e.planSidebarLabel.toLowerCase()} sidebar`:`Show ${e.planSidebarLabel.toLowerCase()} sidebar`,children:(0,Y.jsx)(TK,{collapsed:c,icon:(0,Y.jsx)(Wu,{className:`size-4 sm:size-3.5`}),label:e.planSidebarLabel})}):null,t[65]=e.onTogglePlanSidebar,t[66]=e.planSidebarLabel,t[67]=e.planSidebarOpen,t[68]=e.showPlanToggle,t[69]=c,t[70]=we):we=t[70];let Te;return t[71]!==fe||t[72]!==Ce||t[73]!==we||t[74]!==B?(Te=(0,Y.jsxs)(Y.Fragment,{children:[B,fe,Ce,we]}),t[71]=fe,t[72]=Ce,t[73]=we,t[74]=B,t[75]=Te):Te=t[75],Te}),oq=(0,q.memo)(function(e){let t=(0,J.c)(27),n=!e.isEnvironmentUnavailable,r;t[0]!==e.contextWindowRateLimits||t[1]!==e.contextWindowRateLimitsCheckedAt||t[2]!==e.contextWindowUsage||t[3]!==n?(r=(0,Y.jsx)(JK,{usage:e.contextWindowUsage,rateLimits:e.contextWindowRateLimits,checkedAt:e.contextWindowRateLimitsCheckedAt,available:n}),t[0]=e.contextWindowRateLimits,t[1]=e.contextWindowRateLimitsCheckedAt,t[2]=e.contextWindowUsage,t[3]=n,t[4]=r):r=t[4];let i;t[5]===e.isPreparingWorktree?i=t[6]:(i=e.isPreparingWorktree?(0,Y.jsx)(`span`,{className:`text-muted-foreground/70 text-xs`,children:`Preparing worktree...`}):null,t[5]=e.isPreparingWorktree,t[6]=i);let a=e.preserveComposerFocusOnPointerDown??!1,o;t[7]!==e.compact||t[8]!==e.hasSendableContent||t[9]!==e.isConnecting||t[10]!==e.isEnvironmentUnavailable||t[11]!==e.isPreparingWorktree||t[12]!==e.isRunning||t[13]!==e.isSendBusy||t[14]!==e.onImplementPlanInNewThread||t[15]!==e.onInterrupt||t[16]!==e.onPreviousPendingQuestion||t[17]!==e.pendingAction||t[18]!==e.promptHasText||t[19]!==e.sendDisabledReason||t[20]!==e.showPlanFollowUpPrompt||t[21]!==a?(o=(0,Y.jsx)(OK,{compact:e.compact,pendingAction:e.pendingAction,isRunning:e.isRunning,showPlanFollowUpPrompt:e.showPlanFollowUpPrompt,promptHasText:e.promptHasText,isSendBusy:e.isSendBusy,isConnecting:e.isConnecting,isEnvironmentUnavailable:e.isEnvironmentUnavailable,isPreparingWorktree:e.isPreparingWorktree,hasSendableContent:e.hasSendableContent,sendDisabledReason:e.sendDisabledReason,preserveComposerFocusOnPointerDown:a,onPreviousPendingQuestion:e.onPreviousPendingQuestion,onInterrupt:e.onInterrupt,onImplementPlanInNewThread:e.onImplementPlanInNewThread}),t[7]=e.compact,t[8]=e.hasSendableContent,t[9]=e.isConnecting,t[10]=e.isEnvironmentUnavailable,t[11]=e.isPreparingWorktree,t[12]=e.isRunning,t[13]=e.isSendBusy,t[14]=e.onImplementPlanInNewThread,t[15]=e.onInterrupt,t[16]=e.onPreviousPendingQuestion,t[17]=e.pendingAction,t[18]=e.promptHasText,t[19]=e.sendDisabledReason,t[20]=e.showPlanFollowUpPrompt,t[21]=a,t[22]=o):o=t[22];let s;return t[23]!==r||t[24]!==i||t[25]!==o?(s=(0,Y.jsxs)(Y.Fragment,{children:[r,i,o]}),t[23]=r,t[24]=i,t[25]=o,t[26]=s):s=t[26],s}),sq=(0,q.memo)(function(e){let t=(0,J.c)(85),n=Rs(y.dispatchCommand),r=!n.allowed,i=n.reason,a=xc()===`phone`,o=e.isFooterCompact?`true`:`false`,s=e.isFooterCompact?`gap-1.5`:`sm:gap-0`,c=e.hideOnMobilePendingAnswers&&`phone:hidden`,l;t[0]!==s||t[1]!==c?(l=G(`flex min-w-0 flex-nowrap items-center justify-between gap-1.5 overflow-visible px-2 pb-2 sm:px-2.5 sm:pb-2.5`,s,c),t[0]=s,t[1]=c,t[2]=l):l=t[2];let u=e.gitCwd??``,d;t[3]!==e.environmentId||t[4]!==e.hasSourceControlRemote||t[5]!==e.onAttachFile||t[6]!==e.onSelectChangeRequest||t[7]!==e.onSelectIssue||t[8]!==u?(d=(0,Y.jsx)(FK,{environmentId:e.environmentId,cwd:u,hasSourceControlRemote:e.hasSourceControlRemote,onSelectIssue:e.onSelectIssue,onSelectChangeRequest:e.onSelectChangeRequest,onAttachFile:e.onAttachFile}),t[3]=e.environmentId,t[4]=e.hasSourceControlRemote,t[5]=e.onAttachFile,t[6]=e.onSelectChangeRequest,t[7]=e.onSelectIssue,t[8]=u,t[9]=d):d=t[9];let f;t[10]===i?f=t[11]:(f=i?{disabledReason:i}:{},t[10]=i,t[11]=f);let p;t[12]===e.modelPickerIconClassName?p=t[13]:(p=e.modelPickerIconClassName?{activeProviderIconClassName:e.modelPickerIconClassName}:{},t[12]=e.modelPickerIconClassName,t[13]=p);let m;t[14]!==r||t[15]!==e.isFooterCompact||t[16]!==e.isModelPickerOpen||t[17]!==e.keybindings||t[18]!==e.lockedContinuationGroupKey||t[19]!==e.lockedProvider||t[20]!==e.modelOptions||t[21]!==e.modelOptionsByInstance||t[22]!==e.onModelPickerOpenChange||t[23]!==e.onProviderModelSelect||t[24]!==e.providerInstanceEntries||t[25]!==e.savedModelOptionsByInstance||t[26]!==e.selectedInstanceId||t[27]!==e.selectedModel||t[28]!==e.terminalOpen||t[29]!==f||t[30]!==p?(m=(0,Y.jsx)(Js,{openOnHover:!0,compact:e.isFooterCompact,activeInstanceId:e.selectedInstanceId,model:e.selectedModel,modelOptions:e.modelOptions,savedModelOptionsByInstance:e.savedModelOptionsByInstance,lockedProvider:e.lockedProvider,lockedContinuationGroupKey:e.lockedContinuationGroupKey,instanceEntries:e.providerInstanceEntries,keybindings:e.keybindings,modelOptionsByInstance:e.modelOptionsByInstance,terminalOpen:e.terminalOpen,open:e.isModelPickerOpen,triggerSize:`xs`,phoneSheet:!0,disabled:r,...f,...p,onOpenChange:e.onModelPickerOpenChange,onInstanceModelChange:e.onProviderModelSelect}),t[14]=r,t[15]=e.isFooterCompact,t[16]=e.isModelPickerOpen,t[17]=e.keybindings,t[18]=e.lockedContinuationGroupKey,t[19]=e.lockedProvider,t[20]=e.modelOptions,t[21]=e.modelOptionsByInstance,t[22]=e.onModelPickerOpenChange,t[23]=e.onProviderModelSelect,t[24]=e.providerInstanceEntries,t[25]=e.savedModelOptionsByInstance,t[26]=e.selectedInstanceId,t[27]=e.selectedModel,t[28]=e.terminalOpen,t[29]=f,t[30]=p,t[31]=m):m=t[31];let h;t[32]===e?h=t[33]:(h=(e.executionTargets?.length??0)>0&&e.selectedExecutionEnvironmentId?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(Oo,{value:e.selectedExecutionEnvironmentId,disabled:e.executionTargetLocked,onValueChange:t=>{t&&e.onExecutionTargetChange?.(t)},children:[(0,Y.jsxs)(jo,{variant:`ghost`,size:`xs`,className:`max-w-40 gap-1 px-1.5 text-muted-foreground/80`,"aria-label":`Execution machine`,title:e.executionTargetLocked?`Existing threads stay on their owning machine`:`Execution machine`,children:[(0,Y.jsx)(oi,{environmentId:e.selectedExecutionEnvironmentId,className:`size-3.5 shrink-0`}),(0,Y.jsx)(Eo,{children:e.executionTargets?.find(t=>t.environmentId===e.selectedExecutionEnvironmentId)?.label??`No verified machine`})]}),(0,Y.jsx)(ko,{alignItemWithTrigger:!1,className:`w-56 p-0.5`,children:e.executionTargets?.map(uq)})]}),!e.executionTargetLocked&&e.executionTargets?.find(t=>t.environmentId===e.selectedExecutionEnvironmentId)?.disabled?(0,Y.jsx)(`span`,{className:`shrink-0 text-destructive text-xs`,children:`No verified machine available`}):null]}):null,t[32]=e,t[33]=h);let g;t[34]!==a||t[35]!==r||t[36]!==i||t[37]!==e.askModeSupported||t[38]!==e.interactionMode||t[39]!==e.isFooterCompact||t[40]!==e.onInteractionModeChange||t[41]!==e.onRuntimeModeChange||t[42]!==e.onTogglePlanSidebar||t[43]!==e.onTokenModeChange||t[44]!==e.planSidebarLabel||t[45]!==e.planSidebarOpen||t[46]!==e.providerTraitsChips||t[47]!==e.providerTraitsMenuContent||t[48]!==e.runtimeMode||t[49]!==e.showInteractionModeToggle||t[50]!==e.showPlanSidebarToggle||t[51]!==e.tokenMode?(g=a?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(tq,{interactionMode:e.interactionMode,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,showPlanToggle:e.showPlanSidebarToggle,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,disabled:r,...i?{disabledReason:i}:{},onInteractionModeChange:e.onInteractionModeChange,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar}),e.providerTraitsMenuContent?(0,Y.jsx)(AK,{activePlan:e.showPlanSidebarToggle,interactionMode:e.interactionMode,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,showSessionPolicy:!1,traitsMenuContent:e.providerTraitsMenuContent,onInteractionModeChange:e.onInteractionModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange}):null]}):e.isFooterCompact?(0,Y.jsx)(AK,{activePlan:e.showPlanSidebarToggle,interactionMode:e.interactionMode,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,traitsMenuContent:e.providerTraitsMenuContent,onInteractionModeChange:e.onInteractionModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange}):(0,Y.jsxs)(Y.Fragment,{children:[e.providerTraitsChips,(0,Y.jsx)(aq,{showInteractionModeToggle:e.showInteractionModeToggle,askModeSupported:e.askModeSupported,interactionMode:e.interactionMode,runtimeMode:e.runtimeMode,tokenMode:e.tokenMode,showPlanToggle:e.showPlanSidebarToggle,planSidebarLabel:e.planSidebarLabel,planSidebarOpen:e.planSidebarOpen,onInteractionModeChange:e.onInteractionModeChange,onRuntimeModeChange:e.onRuntimeModeChange,onTokenModeChange:e.onTokenModeChange,onTogglePlanSidebar:e.onTogglePlanSidebar})]}),t[34]=a,t[35]=r,t[36]=i,t[37]=e.askModeSupported,t[38]=e.interactionMode,t[39]=e.isFooterCompact,t[40]=e.onInteractionModeChange,t[41]=e.onRuntimeModeChange,t[42]=e.onTogglePlanSidebar,t[43]=e.onTokenModeChange,t[44]=e.planSidebarLabel,t[45]=e.planSidebarOpen,t[46]=e.providerTraitsChips,t[47]=e.providerTraitsMenuContent,t[48]=e.runtimeMode,t[49]=e.showInteractionModeToggle,t[50]=e.showPlanSidebarToggle,t[51]=e.tokenMode,t[52]=g):g=t[52];let _;t[53]!==g||t[54]!==d||t[55]!==m||t[56]!==h?(_=(0,Y.jsxs)(`div`,{className:`-m-0.5 flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto p-0.5 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:[d,m,h,g]}),t[53]=g,t[54]=d,t[55]=m,t[56]=h,t[57]=_):_=t[57];let v=e.isPrimaryActionsCompact?`true`:`false`,b;t[58]!==e.contextWindowRateLimits||t[59]!==e.contextWindowRateLimitsCheckedAt||t[60]!==e.contextWindowUsage||t[61]!==e.hasSendableContent||t[62]!==e.isConnecting||t[63]!==e.isEnvironmentUnavailable||t[64]!==e.isMobileViewport||t[65]!==e.isPreparingWorktree||t[66]!==e.isPrimaryActionsCompact||t[67]!==e.isRunning||t[68]!==e.isSendBusy||t[69]!==e.onImplementPlanInNewThread||t[70]!==e.onInterrupt||t[71]!==e.onPreviousPendingQuestion||t[72]!==e.pendingAction||t[73]!==e.promptHasText||t[74]!==e.sendDisabledReason||t[75]!==e.showPlanFollowUpPrompt?(b=(0,Y.jsx)(oq,{compact:e.isPrimaryActionsCompact,contextWindowUsage:e.contextWindowUsage,contextWindowRateLimits:e.contextWindowRateLimits,contextWindowRateLimitsCheckedAt:e.contextWindowRateLimitsCheckedAt,pendingAction:e.pendingAction,isRunning:e.isRunning,showPlanFollowUpPrompt:e.showPlanFollowUpPrompt,promptHasText:e.promptHasText,isSendBusy:e.isSendBusy,isConnecting:e.isConnecting,isEnvironmentUnavailable:e.isEnvironmentUnavailable,isPreparingWorktree:e.isPreparingWorktree,hasSendableContent:e.hasSendableContent,sendDisabledReason:e.sendDisabledReason,preserveComposerFocusOnPointerDown:e.isMobileViewport,onPreviousPendingQuestion:e.onPreviousPendingQuestion,onInterrupt:e.onInterrupt,onImplementPlanInNewThread:e.onImplementPlanInNewThread}),t[58]=e.contextWindowRateLimits,t[59]=e.contextWindowRateLimitsCheckedAt,t[60]=e.contextWindowUsage,t[61]=e.hasSendableContent,t[62]=e.isConnecting,t[63]=e.isEnvironmentUnavailable,t[64]=e.isMobileViewport,t[65]=e.isPreparingWorktree,t[66]=e.isPrimaryActionsCompact,t[67]=e.isRunning,t[68]=e.isSendBusy,t[69]=e.onImplementPlanInNewThread,t[70]=e.onInterrupt,t[71]=e.onPreviousPendingQuestion,t[72]=e.pendingAction,t[73]=e.promptHasText,t[74]=e.sendDisabledReason,t[75]=e.showPlanFollowUpPrompt,t[76]=b):b=t[76];let x;t[77]!==v||t[78]!==b?(x=(0,Y.jsx)(`div`,{"data-chat-composer-actions":`right`,"data-chat-composer-primary-actions-compact":v,className:`flex shrink-0 flex-nowrap items-start justify-end gap-2`,children:b}),t[77]=v,t[78]=b,t[79]=x):x=t[79];let S;return t[80]!==o||t[81]!==_||t[82]!==x||t[83]!==l?(S=(0,Y.jsxs)(`div`,{"data-chat-composer-footer":`true`,"data-chat-composer-footer-compact":o,className:l,children:[_,x]}),t[80]=o,t[81]=_,t[82]=x,t[83]=l,t[84]=S):S=t[84],S});function cq(e){return e.wideComposerControlsAutoCollapse}function lq(e){return performance.now()<e.current}function uq(e){return(0,Y.jsx)(To,{value:e.environmentId,disabled:e.disabled,children:(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(oi,{environmentId:e.environmentId,label:e.label,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.environmentId)}function dq(e,t){let{scope:n,search:r}=Pa(e),i=n===`mixed`||n===`issues`,a=n===`mixed`||n===`prs`;if(n===`jira`)return[];let o=i?Ca(t.issues,r).map(e=>({id:`source-control-issue:${e.provider}:${e.number}`,type:`source-control-issue`,summary:e,label:`#${e.number}`,description:e.title})):[],s=a?fq(t.prs,r).map(e=>({id:`source-control-pr:${e.provider}:${e.number}`,type:`source-control-pr`,summary:e,label:`#${e.number}`,description:e.title})):[];return[...o,...s]}function fq(e,t){let n=t.trim().toLowerCase();return n.length===0?e:e.filter(e=>{let t=String(e.number),r=e.title.toLowerCase();return t===n||t.startsWith(n)||r.includes(n)})}function pq(e){return e.items.length===0?null:e.currentSearchKey===e.highlightedSearchKey&&e.highlightedItemId&&e.items.some(t=>t.id===e.highlightedItemId)?e.highlightedItemId:e.items[0]?.id??null}function mq(e,t){let n=e.type===`slash-command`?e.command.toLowerCase():e.command.name.toLowerCase(),r=e.description.toLowerCase(),i=[Gs({value:n,query:t,exactBase:0,prefixBase:2,boundaryBase:4,includesBase:6,fuzzyBase:100,boundaryMarkers:[`-`,`_`,`/`]}),Gs({value:r,query:t,exactBase:20,prefixBase:22,boundaryBase:24,includesBase:26})].filter(e=>e!==null);return i.length===0?null:Math.min(...i)}function hq(e,t){let n=Ws(t,{trimLeadingPattern:/^\/+/});if(!n)return[...e];let r=[];for(let t of e){let e=mq(t,n);e!==null&&Qs(r,{item:t,score:e,tieBreaker:t.type===`slash-command`?`0\u0000${t.command}`:`1\u0000${t.command.name}\u0000${t.provider}`},1/0)}return r.map(e=>e.item)}function gq(e,t){let n=e.name.toLowerCase(),r=dE(e).toLowerCase(),i=e.shortDescription?.toLowerCase()??``,a=e.description?.toLowerCase()??``,o=e.scope?.toLowerCase()??``,s=[Gs({value:n,query:t,exactBase:0,prefixBase:2,boundaryBase:4,includesBase:6,fuzzyBase:100,boundaryMarkers:[`-`,`_`,`/`]}),Gs({value:r,query:t,exactBase:1,prefixBase:3,boundaryBase:5,includesBase:7,fuzzyBase:110}),Gs({value:i,query:t,exactBase:20,prefixBase:22,boundaryBase:24,includesBase:26}),Gs({value:a,query:t,exactBase:30,prefixBase:32,boundaryBase:34,includesBase:36}),Gs({value:o,query:t,exactBase:40,prefixBase:42,includesBase:44})].filter(e=>e!==null);return s.length===0?null:Math.min(...s)}function _q(e,t,n=1/0){let r=e.filter(e=>e.enabled),i=Ws(t,{trimLeadingPattern:/^\$+/});if(!i)return r;let a=[];for(let e of r){let t=gq(e,i);t!==null&&Qs(a,{item:e,score:t,tieBreaker:`${dE(e).toLowerCase()}\u0000${e.name}`},n)}return a.map(e=>e.item)}function vq(e){let t=(0,J.c)(5),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`}),r=(0,Y.jsx)(`path`,{d:`m3.3 7 8.7 5 8.7-5`}),i=(0,Y.jsx)(`path`,{d:`M12 22V12`}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;return t[3]===e.className?a=t[4]:(a=(0,Y.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.85`,strokeLinecap:`round`,strokeLinejoin:`round`,className:e.className,"aria-hidden":`true`,children:[n,r,i]}),t[3]=e.className,t[4]=a),a}function yq(e,t,n){if(t===`skill`)return e.length>0?[{id:`skills`,label:`Skills`,items:e}]:[];if(t!==`slash-command`||!n)return[{id:`default`,label:null,items:e}];let r=e.filter(e=>e.type===`slash-command`),i=e.filter(e=>e.type===`provider-slash-command`),a=[];return r.length>0&&a.push({id:`built-in`,label:`Built-in`,items:r}),i.length>0&&a.push({id:`provider`,label:`Provider`,items:i}),a}var bq=(0,q.memo)(function(e){let t=(0,J.c)(33),n=(0,q.useRef)(null),r=e.groupSlashCommandSections??!0,i;t[0]!==e.items||t[1]!==e.triggerKind||t[2]!==r?(i=yq(e.items,e.triggerKind,r),t[0]=e.items,t[1]=e.triggerKind,t[2]=r,t[3]=i):i=t[3];let a=i,o,s;t[4]===e.activeItemId?(o=t[5],s=t[6]):(o=()=>{e.activeItemId&&n.current&&n.current.querySelector(`[data-composer-item-id="${CSS.escape(e.activeItemId)}"]`)?.scrollIntoView({block:`nearest`})},s=[e.activeItemId],t[4]=e.activeItemId,t[5]=o,t[6]=s),(0,q.useLayoutEffect)(o,s);let c;t[7]===e?c=t[8]:(c=t=>{e.onHighlightedItemChange(typeof t==`string`?t:null)},t[7]=e,t[8]=c);let l;if(t[9]!==a||t[10]!==e.activeItemId||t[11]!==e.onHighlightedItemChange||t[12]!==e.onSelect||t[13]!==e.resolvedTheme){let n;t[15]!==e.activeItemId||t[16]!==e.onHighlightedItemChange||t[17]!==e.onSelect||t[18]!==e.resolvedTheme?(n=(t,n)=>(0,Y.jsxs)(`div`,{children:[n>0?(0,Y.jsx)(ts,{className:`my-0.5`}):null,(0,Y.jsxs)(Zo,{children:[t.label?(0,Y.jsx)(cs,{className:`px-3 pt-2 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:t.label}):null,t.items.map(t=>(0,Y.jsx)(xq,{item:t,resolvedTheme:e.resolvedTheme,isActive:e.activeItemId===t.id,onHighlight:e.onHighlightedItemChange,onSelect:e.onSelect},t.id))]})]},t.id),t[15]=e.activeItemId,t[16]=e.onHighlightedItemChange,t[17]=e.onSelect,t[18]=e.resolvedTheme,t[19]=n):n=t[19],l=a.map(n),t[9]=a,t[10]=e.activeItemId,t[11]=e.onHighlightedItemChange,t[12]=e.onSelect,t[13]=e.resolvedTheme,t[14]=l}else l=t[14];let u;t[20]===l?u=t[21]:(u=(0,Y.jsx)(ls,{className:`max-h-[clamp(4.5rem,calc(var(--app-visible-viewport-height,9999px)-12.5rem),18rem)] phone:max-h-[clamp(4.5rem,calc(var(--app-visible-viewport-height,9999px)-13.5rem),18rem)]`,children:l}),t[20]=l,t[21]=u);let d;t[22]!==e.emptyStateText||t[23]!==e.isLoading||t[24]!==e.items.length||t[25]!==e.triggerKind?(d=e.items.length===0?(0,Y.jsx)(`div`,{className:`px-3 py-2`,children:e.triggerKind===`skill`?(0,Y.jsxs)(Zo,{children:[(0,Y.jsx)(cs,{className:`px-0 pt-0 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:`Skills`}),(0,Y.jsx)(`p`,{className:`text-muted-foreground/70 text-xs`,children:e.isLoading?`Searching workspace skills...`:e.emptyStateText??`No skills found. Try / to browse provider commands.`})]}):(0,Y.jsx)(`p`,{className:`text-muted-foreground/70 text-xs`,children:e.isLoading?`Searching workspace files...`:e.emptyStateText??(e.triggerKind===`path`?`No matching files or folders.`:`No matching command.`)})}):null,t[22]=e.emptyStateText,t[23]=e.isLoading,t[24]=e.items.length,t[25]=e.triggerKind,t[26]=d):d=t[26];let f;t[27]!==u||t[28]!==d?(f=(0,Y.jsxs)(`div`,{ref:n,className:`relative overflow-hidden rounded-xl border border-border/80 bg-popover/96 shadow-lg/8 backdrop-blur-xs`,children:[u,d]}),t[27]=u,t[28]=d,t[29]=f):f=t[29];let p;return t[30]!==c||t[31]!==f?(p=(0,Y.jsx)(is,{autoHighlight:!1,mode:`none`,onItemHighlighted:c,children:f}),t[30]=c,t[31]=f,t[32]=p):p=t[32],p}),xq=(0,q.memo)(function(e){let t=(0,J.c)(46),n;t[0]!==e.item.skill||t[1]!==e.item.type?(n=e.item.type===`skill`?fE(e.item.skill):null,t[0]=e.item.skill,t[1]=e.item.type,t[2]=n):n=t[2];let r=n,i=e.item.id,a=e.item.id,o=e.isActive&&`bg-accent! text-accent-foreground!`,s;t[3]===o?s=t[4]:(s=G(`cursor-pointer select-none gap-2 hover:bg-transparent hover:text-inherit data-highlighted:bg-transparent data-highlighted:text-inherit`,o),t[3]=o,t[4]=s);let c;t[5]===e?c=t[6]:(c=()=>{e.isActive||e.onHighlight(e.item.id)},t[5]=e,t[6]=c);let l;t[7]===e?l=t[8]:(l=()=>{e.onSelect(e.item)},t[7]=e,t[8]=l);let u;t[9]!==e.item.path||t[10]!==e.item.pathKind||t[11]!==e.item.type||t[12]!==e.resolvedTheme?(u=e.item.type===`path`?(0,Y.jsx)(cE,{pathValue:e.item.path,kind:e.item.pathKind,theme:e.resolvedTheme}):null,t[9]=e.item.path,t[10]=e.item.pathKind,t[11]=e.item.type,t[12]=e.resolvedTheme,t[13]=u):u=t[13];let d;t[14]===e.item.type?d=t[15]:(d=e.item.type===`slash-command`?(0,Y.jsx)(Jo,{className:`size-4 shrink-0 text-muted-foreground/80`}):null,t[14]=e.item.type,t[15]=d);let f;t[16]===e.item.type?f=t[17]:(f=e.item.type===`provider-slash-command`?(0,Y.jsx)(`span`,{className:`inline-flex size-4 shrink-0 items-center justify-center text-muted-foreground/80`,children:(0,Y.jsx)(vq,{className:`size-3.5`})}):null,t[16]=e.item.type,t[17]=f);let p;t[18]===e.item.type?p=t[19]:(p=e.item.type===`skill`?(0,Y.jsx)(`span`,{className:`inline-flex size-4 shrink-0 items-center justify-center text-muted-foreground/80`,children:(0,Y.jsx)(vq,{className:`size-3.5`})}):null,t[18]=e.item.type,t[19]=p);let m;t[20]===e.item.type?m=t[21]:(m=e.item.type===`source-control-issue`?(0,Y.jsx)(Mi,{className:`size-4 shrink-0 text-muted-foreground/80`}):null,t[20]=e.item.type,t[21]=m);let h;t[22]===e.item.type?h=t[23]:(h=e.item.type===`source-control-pr`?(0,Y.jsx)(ui,{className:`size-4 shrink-0 text-muted-foreground/80`}):null,t[22]=e.item.type,t[23]=h);let g;t[24]===e.item.label?g=t[25]:(g=(0,Y.jsx)(`span`,{className:`shrink-0`,children:e.item.label}),t[24]=e.item.label,t[25]=g);let _;t[26]===e.item.description?_=t[27]:(_=(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-muted-foreground/70 text-xs`,children:e.item.description}),t[26]=e.item.description,t[27]=_);let v;t[28]!==g||t[29]!==_?(v=(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[g,_]}),t[28]=g,t[29]=_,t[30]=v):v=t[30];let y;t[31]===r?y=t[32]:(y=r?(0,Y.jsx)(`span`,{className:`shrink-0 pl-2 text-muted-foreground/70 text-xs`,children:r}):null,t[31]=r,t[32]=y);let b;return t[33]!==e.item.id||t[34]!==p||t[35]!==m||t[36]!==h||t[37]!==v||t[38]!==y||t[39]!==s||t[40]!==c||t[41]!==l||t[42]!==u||t[43]!==d||t[44]!==f?(b=(0,Y.jsxs)(ss,{value:i,"data-composer-item-id":a,className:s,onMouseMove:c,onMouseDown:Sq,onClick:l,children:[u,d,f,p,m,h,v,y]}),t[33]=e.item.id,t[34]=p,t[35]=m,t[36]=h,t[37]=v,t[38]=y,t[39]=s,t[40]=c,t[41]=l,t[42]=u,t[43]=d,t[44]=f,t[45]=b):b=t[45],b});function Sq(e){e.preventDefault()}var Cq=120,wq=[];function Tq(e){let t=(0,J.c)(56),{composerTrigger:n,environmentId:r,gitCwd:i,selectedProvider:a,selectedProviderStatus:o,composerHighlightedItemId:s,composerHighlightedSearchKey:c}=e,l=xc(),u=n?.kind??null,d=n?.kind===`path`?n.query:``,f=u===`path`,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p={wait:Cq},t[0]=p):p=t[0];let[m,h]=ro(d,p,Dq),g=d.length>0?m:``,_;t[1]!==g||t[2]!==r||t[3]!==i||t[4]!==f?(_={environmentId:r,cwd:i,query:g,enabled:f,limit:80},t[1]=g,t[2]=r,t[3]=i,t[4]=f,t[5]=_):_=t[5];let v=kc(_),y=v.data?.entries??wq,b=u===`source-control`,x;t[6]!==r||t[7]!==i||t[8]!==b?(x={environmentId:r,cwd:i,state:`open`,limit:50,enabled:b},t[6]=r,t[7]=i,t[8]=b,t[9]=x):x=t[9];let S=Ki(x),C;t[10]!==r||t[11]!==i||t[12]!==b?(C={environmentId:r,cwd:i,state:`open`,limit:50,enabled:b},t[10]=r,t[11]=i,t[12]=b,t[13]=C):C=t[13];let w=Ji(C),T;if(t[14]!==w.data||t[15]!==n||t[16]!==S.data||t[17]!==l||t[18]!==a||t[19]!==o?.skills||t[20]!==o?.slashCommands||t[21]!==y){bb0:{if(!n){let e;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[23]=e):e=t[23],T=e;break bb0}if(n.kind===`path`){let e;t[24]===y?e=t[25]:(e=y.map(Eq),t[24]=y,t[25]=e),T=e;break bb0}if(n.kind===`slash-command`){let e=[...window.desktopBridge?.computerBeta&&l!==`phone`?[{id:`slash:computer-use`,type:`slash-command`,command:`computer-use`,label:`/computer-use`,description:`Use this Mac for one task`}]:[],...l===`phone`?[]:[{id:`slash:btw`,type:`slash-command`,command:`btw`,label:`/btw`,description:`Ask a read-only side question while the main turn continues`}],{id:`slash:model`,type:`slash-command`,command:`model`,label:`/model`,description:`Switch response model for this thread`},{id:`slash:goal`,type:`slash-command`,command:`goal`,label:`/goal`,description:`Set a persistent goal for this thread`},{id:`slash:plan`,type:`slash-command`,command:`plan`,label:`/plan`,description:`Switch this thread into plan mode`},{id:`slash:default`,type:`slash-command`,command:`default`,label:`/default`,description:`Switch this thread back to normal build mode`}],r;t[26]===a?r=t[27]:(r=e=>({id:`provider-slash-command:${a}:${e.name}`,type:`provider-slash-command`,provider:a,command:e,label:`/${e.name}`,description:e.description??e.input?.hint??`Run provider command`}),t[26]=a,t[27]=r);let i=(o?.slashCommands??[]).map(r),s=n.query.trim().toLowerCase(),c=[...e,...i];if(!s){T=c;break bb0}T=hq(c,s);break bb0}if(n.kind===`skill`){let e;if(t[28]!==n.query||t[29]!==a||t[30]!==o?.skills){let r;t[32]===a?r=t[33]:(r=e=>({id:`skill:${a}:${e.name}`,type:`skill`,provider:a,skill:e,label:dE(e),description:e.shortDescription??e.description??(e.scope?`${e.scope} skill`:`Run provider skill`)}),t[32]=a,t[33]=r),e=_q(o?.skills??[],n.query).map(r),t[28]=n.query,t[29]=a,t[30]=o?.skills,t[31]=e}else e=t[31];T=e;break bb0}if(n.kind===`source-control`){let e;t[34]!==w.data||t[35]!==n.query||t[36]!==S.data?(e=[...dq(n.query,{issues:S.data??[],prs:w.data??[]})],t[34]=w.data,t[35]=n.query,t[36]=S.data,t[37]=e):e=t[37],T=e;break bb0}let e;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[38]=e):e=t[38],T=e}t[14]=w.data,t[15]=n,t[16]=S.data,t[17]=l,t[18]=a,t[19]=o?.skills,t[20]=o?.slashCommands,t[21]=y,t[22]=T}else T=t[22];let E=T,D=!!n,O;t[39]===n?O=t[40]:(O=n?`${n.kind}:${n.query.trim().toLowerCase()}`:null,t[39]=n,t[40]=O);let k=O,A;t[41]!==s||t[42]!==c||t[43]!==E||t[44]!==k?(A=pq({items:E,highlightedItemId:s,currentSearchKey:k,highlightedSearchKey:c}),t[41]=s,t[42]=c,t[43]=E,t[44]=k,t[45]=A):A=t[45];let j=A,M;t[46]!==j||t[47]!==E?(M=E.find(e=>e.id===j)??null,t[46]=j,t[47]=E,t[48]=M):M=t[48];let N=M,P=u===`path`&&(d.length>0&&h.state.isPending||v.isLoading||v.isFetching)||u===`source-control`&&(S.isLoading||w.isLoading),F;bb1:{if(u===`skill`){F=`No skills found. Try / to browse provider commands.`;break bb1}if(u===`source-control`){F=`No matching issues or pull requests.`;break bb1}F=u===`path`?`No matching files or folders.`:`No matching command.`}let I=F,L;return t[49]!==N||t[50]!==I||t[51]!==E||t[52]!==D||t[53]!==k||t[54]!==P?(L={composerMenuItems:E,composerMenuOpen:D,composerMenuSearchKey:k,activeComposerMenuItem:N,isComposerMenuLoading:P,composerMenuEmptyState:I},t[49]=N,t[50]=I,t[51]=E,t[52]=D,t[53]=k,t[54]=P,t[55]=L):L=t[55],L}function Eq(e){return{id:`path:${e.kind}:${e.path}`,type:`path`,path:e.path,pathKind:e.kind,label:sW(e.path),description:e.parentPath??``}}function Dq(e){return{isPending:e.isPending}}function Oq(e){let{environmentId:t,gitCwd:n,composerDraftTarget:r,addSourceControlContext:i}=e;return{handleSelectIssue:(0,q.useCallback)(async e=>{if(!t||!n)return;let a=`${e.provider}#${e.number}`;try{let o=await ea({environmentId:t,cwd:n,reference:String(e.number)}),s=M(new Date),c=M(new Date(Date.now()+3e5)),l={id:Zt(),kind:`issue`,provider:e.provider,reference:a,detail:o,fetchedAt:s,staleAfter:c},u=i(r,l);!u.added&&u.reason===`duplicate`&&Ve.add({type:`info`,title:`Already attached.`})}catch(e){let t=e instanceof Error?e.message:`unknown error`;Ve.add({type:`error`,title:`Couldn't fetch ${a}: ${t}`})}},[t,n,r,i]),handleSelectChangeRequest:(0,q.useCallback)(async e=>{if(!t||!n)return;let a=`${e.provider}#${e.number}`;try{let o=await wi({environmentId:t,cwd:n,reference:String(e.number)}),s=M(new Date),c=M(new Date(Date.now()+3e5)),l={id:Zt(),kind:`change-request`,provider:e.provider,reference:a,detail:o,fetchedAt:s,staleAfter:c},u=i(r,l);!u.added&&u.reason===`duplicate`&&Ve.add({type:`info`,title:`Already attached.`})}catch(e){let t=e instanceof Error?e.message:`unknown error`;Ve.add({type:`error`,title:`Couldn't fetch ${a}: ${t}`})}},[t,n,r,i])}}function kq(e){let t=(0,J.c)(10);if(!e.open)return null;let n;return t[0]!==e.activeItemId||t[1]!==e.emptyStateText||t[2]!==e.groupSlashCommandSections||t[3]!==e.isLoading||t[4]!==e.items||t[5]!==e.onHighlightedItemChange||t[6]!==e.onSelect||t[7]!==e.resolvedTheme||t[8]!==e.triggerKind?(n=(0,Y.jsx)(`div`,{className:`absolute inset-x-0 bottom-full z-20 mb-2 px-1`,children:(0,Y.jsx)(bq,{items:e.items,resolvedTheme:e.resolvedTheme,isLoading:e.isLoading,triggerKind:e.triggerKind,groupSlashCommandSections:e.groupSlashCommandSections,emptyStateText:e.emptyStateText,activeItemId:e.activeItemId,onHighlightedItemChange:e.onHighlightedItemChange,onSelect:e.onSelect})}),t[0]=e.activeItemId,t[1]=e.emptyStateText,t[2]=e.groupSlashCommandSections,t[3]=e.isLoading,t[4]=e.items,t[5]=e.onHighlightedItemChange,t[6]=e.onSelect,t[7]=e.resolvedTheme,t[8]=e.triggerKind,t[9]=n):n=t[9],n}function Aq(e,t){let n=t?.hasWideActions?780:620;return e!==null&&e<n}function jq(e,t){return t?.hasWideActions?e!==null&&e<780:!1}var Mq=(0,q.memo)(function(e){let t=(0,J.c)(37),{requestId:n,approvalIdentity:r,isResponding:i,onRespondToApproval:a}=e,o=Rs(y.dispatchCommand),s=i||!o.allowed,c=o.reason??void 0,l;t[0]!==r||t[1]!==a||t[2]!==n?(l=()=>void a(n,`cancel`,r),t[0]=r,t[1]=a,t[2]=n,t[3]=l):l=t[3];let u;t[4]!==s||t[5]!==c||t[6]!==l?(u=(0,Y.jsx)(W,{size:`sm`,variant:`ghost`,disabled:s,title:c,onClick:l,children:`Cancel turn`}),t[4]=s,t[5]=c,t[6]=l,t[7]=u):u=t[7];let d=o.reason??void 0,f;t[8]!==r||t[9]!==a||t[10]!==n?(f=()=>void a(n,`decline`,r),t[8]=r,t[9]=a,t[10]=n,t[11]=f):f=t[11];let p;t[12]!==s||t[13]!==d||t[14]!==f?(p=(0,Y.jsx)(W,{size:`sm`,variant:`destructive-outline`,disabled:s,title:d,onClick:f,children:`Decline`}),t[12]=s,t[13]=d,t[14]=f,t[15]=p):p=t[15];let m=o.reason??void 0,h;t[16]!==r||t[17]!==a||t[18]!==n?(h=()=>void a(n,`acceptForSession`,r),t[16]=r,t[17]=a,t[18]=n,t[19]=h):h=t[19];let g;t[20]!==s||t[21]!==m||t[22]!==h?(g=(0,Y.jsx)(W,{size:`sm`,variant:`outline`,disabled:s,title:m,onClick:h,children:`Always allow this session`}),t[20]=s,t[21]=m,t[22]=h,t[23]=g):g=t[23];let _=o.reason??void 0,v;t[24]!==r||t[25]!==a||t[26]!==n?(v=()=>void a(n,`accept`,r),t[24]=r,t[25]=a,t[26]=n,t[27]=v):v=t[27];let b;t[28]!==s||t[29]!==_||t[30]!==v?(b=(0,Y.jsx)(W,{size:`sm`,variant:`default`,disabled:s,title:_,onClick:v,children:`Approve once`}),t[28]=s,t[29]=_,t[30]=v,t[31]=b):b=t[31];let x;return t[32]!==b||t[33]!==u||t[34]!==p||t[35]!==g?(x=(0,Y.jsxs)(Y.Fragment,{children:[u,p,g,b]}),t[32]=b,t[33]=u,t[34]=p,t[35]=g,t[36]=x):x=t[36],x});function Nq(e){return e.requestKind===`command`?`Command approval requested`:e.requestKind===`file-read`?`File-read approval requested`:`File-change approval requested`}var Pq=(0,q.memo)(function(e){let t=(0,J.c)(18),{approval:n,pendingCount:r}=e,i;t[0]===n?i=t[1]:(i=Nq(n),t[0]=n,t[1]=i);let a=i,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(`span`,{className:`uppercase text-sm tracking-[0.2em]`,children:`PENDING APPROVAL`}),t[2]=o):o=t[2];let s;t[3]===a?s=t[4]:(s=(0,Y.jsx)(`span`,{className:`text-sm font-medium`,children:a}),t[3]=a,t[4]=s);let c;t[5]===r?c=t[6]:(c=r>1?(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`1/`,r]}):null,t[5]=r,t[6]=c);let l;t[7]!==s||t[8]!==c?(l=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[o,s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9];let u;t[10]===n.responseState?u=t[11]:(u=n.responseState===`submitting`||n.responseState===`uncertain`?(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-sm text-muted-foreground`,children:n.responseState===`uncertain`?`Delivery outcome is unknown. Waiting for provider settlement; do not resend.`:`Decision submitted. Waiting for provider settlement.`}):null,t[10]=n.responseState,t[11]=u);let d;t[12]===n.detail?d=t[13]:(d=n.detail?(0,Y.jsx)(`div`,{"data-testid":`pending-approval-detail`,className:`mt-2 max-h-[min(10rem,20dvh)] min-h-0 overflow-y-auto overscroll-contain whitespace-pre-wrap wrap-break-word text-sm text-muted-foreground select-text`,children:n.detail}):null,t[12]=n.detail,t[13]=d);let f;return t[14]!==l||t[15]!==u||t[16]!==d?(f=(0,Y.jsxs)(`div`,{className:`px-4 py-3.5 sm:px-5 sm:py-4`,children:[l,u,d]}),t[14]=l,t[15]=u,t[16]=d,t[17]=f):f=t[17],f}),Fq=(0,q.memo)(function(e){let t=(0,J.c)(44),{approval:n,pendingCount:r,isResponding:i,onRespondToApproval:a}=e,o=xc(),[s,c]=(0,q.useState)(null),l=o===`phone`&&s===n.requestId;o!==`phone`&&s!==null&&c(null);let u=i||n.responseState!==void 0&&n.responseState!==`retryable`,d;t[0]!==n.approvalIdentity||t[1]!==n.requestId||t[2]!==a||t[3]!==u?(d=(0,Y.jsx)(Mq,{requestId:n.requestId,approvalIdentity:n.approvalIdentity,isResponding:u,onRespondToApproval:a}),t[0]=n.approvalIdentity,t[1]=n.requestId,t[2]=a,t[3]=u,t[4]=d):d=t[4];let f=d,p;t[5]===n?p=t[6]:(p=Nq(n),t[5]=n,t[6]=p);let m;t[7]===p?m=t[8]:(m=(0,Y.jsx)(`p`,{role:`alert`,className:`sr-only`,children:p}),t[7]=p,t[8]=m);let h;t[9]!==n||t[10]!==r?(h=(0,Y.jsx)(Pq,{approval:n,pendingCount:r}),t[9]=n,t[10]=r,t[11]=h):h=t[11];let g;t[12]!==n.detail||t[13]!==n.requestId||t[14]!==o?(g=o===`phone`&&n.detail?(0,Y.jsx)(`div`,{className:`px-4 pb-1 sm:px-5`,children:(0,Y.jsxs)(W,{size:`sm`,variant:`ghost`,className:`min-h-11 text-muted-foreground`,onClick:()=>c(n.requestId),children:[(0,Y.jsx)(Mu,{"aria-hidden":!0}),` Show full detail`]})}):null,t[12]=n.detail,t[13]=n.requestId,t[14]=o,t[15]=g):g=t[15];let _;t[16]!==f||t[17]!==l?(_=l?null:(0,Y.jsx)(`div`,{"data-testid":`approval-card-actions`,className:`flex flex-wrap items-center justify-end gap-2 px-3 pb-3 sm:px-4`,children:f}),t[16]=f,t[17]=l,t[18]=_):_=t[18];let v;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(v=e=>{e||c(null)},t[19]=v):v=t[19];let y;t[20]===n?y=t[21]:(y=Nq(n),t[20]=n,t[21]=y);let b;t[22]===y?b=t[23]:(b=(0,Y.jsx)(xl,{children:y}),t[22]=y,t[23]=b);let x;t[24]===r?x=t[25]:(x=r>1?(0,Y.jsxs)(bl,{children:[`1/`,r,` pending approvals`]}):(0,Y.jsx)(bl,{className:`sr-only`,children:`Full approval detail`}),t[24]=r,t[25]=x);let S;t[26]!==b||t[27]!==x?(S=(0,Y.jsxs)(yl,{children:[b,x]}),t[26]=b,t[27]=x,t[28]=S):S=t[28];let C;t[29]===n.detail?C=t[30]:(C=(0,Y.jsx)(_l,{children:(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm text-muted-foreground select-text`,children:n.detail})}),t[29]=n.detail,t[30]=C);let w;t[31]===f?w=t[32]:(w=(0,Y.jsx)(Sl,{className:`flex-row flex-wrap justify-end gap-2`,"data-testid":`approval-card-actions`,children:f}),t[31]=f,t[32]=w);let T;t[33]!==l||t[34]!==S||t[35]!==C||t[36]!==w?(T=(0,Y.jsxs)(wl,{open:l,onOpenChange:v,label:`Approval detail`,children:[S,C,w]}),t[33]=l,t[34]=S,t[35]=C,t[36]=w,t[37]=T):T=t[37];let E;return t[38]!==T||t[39]!==m||t[40]!==h||t[41]!==g||t[42]!==_?(E=(0,Y.jsxs)(`div`,{"data-testid":`approval-card`,children:[m,h,g,_,T]}),t[38]=T,t[39]=m,t[40]=h,t[41]=g,t[42]=_,t[43]=E):E=t[43],E}),Iq=(0,q.memo)(function(e){let t=(0,J.c)(12),{pendingUserInputs:n,respondingRequestIds:r,answers:i,questionIndex:a,onToggleOption:o,onAdvance:s}=e;if(n.length===0)return null;let c=n[0];if(!c)return null;let l=c.userInputIdentity?.requestEventId??c.requestId,u;t[0]!==c.requestId||t[1]!==c.responseState||t[2]!==r?(u=r.includes(c.requestId)||c.responseState===`submitting`||c.responseState===`uncertain`,t[0]=c.requestId,t[1]=c.responseState,t[2]=r,t[3]=u):u=t[3];let d;return t[4]!==c||t[5]!==i||t[6]!==s||t[7]!==o||t[8]!==a||t[9]!==l||t[10]!==u?(d=(0,Y.jsx)(Lq,{prompt:c,isResponding:u,answers:i,questionIndex:a,onToggleOption:o,onAdvance:s},l),t[4]=c,t[5]=i,t[6]=s,t[7]=o,t[8]=a,t[9]=l,t[10]=u,t[11]=d):d=t[11],d}),Lq=(0,q.memo)(function(e){let t=(0,J.c)(28),{prompt:n,isResponding:r,answers:i,questionIndex:a,onToggleOption:o,onAdvance:s}=e,c=Zk(n.questions,i,a),l=c.activeQuestion,u=(0,q.useRef)(null),d=(0,q.useRef)(s),f,p;t[0]===s?(f=t[1],p=t[2]):(f=()=>{d.current=s},p=[s],t[0]=s,t[1]=f,t[2]=p),(0,q.useEffect)(f,p);let m,h;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>()=>{u.current!==null&&window.clearTimeout(u.current)},h=[],t[3]=m,t[4]=h):(m=t[3],h=t[4]),(0,q.useEffect)(m,h);let g=(0,q.useEffectEvent)((e,t)=>{o(e,t),!l?.multiSelect&&(u.current!==null&&window.clearTimeout(u.current),u.current=window.setTimeout(()=>{u.current=null,d.current()},200))}),_;if(t[5]!==l||t[6]!==r?(_=[l,r],t[5]=l,t[6]=r,t[7]=_):_=t[7],Vs(()=>{if(!l||r)return;let e=e=>{if(fu(e)||e.metaKey||e.ctrlKey||e.altKey)return;let t=e.target;if(t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLElement&&t.closest(`[contenteditable]:not([contenteditable="false"])`))return;let n=Number.parseInt(e.key,10);if(Number.isNaN(n)||n<1||n>9)return;let r=n-1;if(r>=l.options.length)return;let i=l.options[r];i&&(e.preventDefault(),g(l.id,i.label))};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},_),!l)return null;let v;t[8]!==n.questions.length||t[9]!==a?(v=n.questions.length>1?(0,Y.jsxs)(`span`,{className:`flex h-5 items-center rounded-md bg-muted/60 px-1.5 text-[10px] font-medium tabular-nums text-muted-foreground/60`,children:[a+1,`/`,n.questions.length]}):null,t[8]=n.questions.length,t[9]=a,t[10]=v):v=t[10];let y;t[11]===l?y=t[12]:(y=(0,Y.jsx)(`span`,{className:`text-[11px] font-semibold tracking-widest text-muted-foreground/50 uppercase`,children:l.header}),t[11]=l,t[12]=y);let b;t[13]!==v||t[14]!==y?(b=(0,Y.jsx)(`div`,{className:`flex items-center gap-3`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[v,y]})}),t[13]=v,t[14]=y,t[15]=b):b=t[15];let x;t[16]===n.responseState?x=t[17]:(x=n.responseState===`uncertain`?(0,Y.jsx)(`p`,{role:`status`,className:`mt-2 text-xs text-muted-foreground`,children:`Answer delivery is unconfirmed. Await provider confirmation or restart the turn; resending could duplicate it.`}):null,t[16]=n.responseState,t[17]=x);let S;t[18]===l?S=t[19]:(S=(0,Y.jsx)(`p`,{className:`mt-1.5 text-sm text-foreground/90`,children:l.question}),t[18]=l,t[19]=S);let C=l.multiSelect?(0,Y.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground/65`,children:`Select one or more options.`}):null,w=l.options.map((e,t)=>{let n=c.selectedOptionLabels.includes(e.label),i=t<9?t+1:null;return(0,Y.jsxs)(`button`,{type:`button`,disabled:r,onClick:()=>g(l.id,e.label),className:G(`group flex w-full items-center gap-3 rounded-lg border px-3 py-2 text-left transition-all duration-150`,n?`border-blue-500/40 bg-blue-500/8 text-foreground`:`border-transparent bg-muted/20 text-foreground/80 hover:bg-muted/40 hover:border-border/40`,r&&`opacity-50 cursor-not-allowed`),children:[i===null?null:(0,Y.jsx)(`kbd`,{className:G(`flex size-5 shrink-0 items-center justify-center rounded text-[11px] font-medium tabular-nums transition-colors duration-150 pointer-coarse:hidden`,n?`bg-blue-500/20 text-blue-400`:`bg-muted/40 text-muted-foreground/50 group-hover:bg-muted/60 group-hover:text-muted-foreground/70`),children:i}),(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`text-sm font-medium`,children:e.label}),e.description&&e.description!==e.label?(0,Y.jsx)(`span`,{className:`ml-2 text-xs text-muted-foreground/50`,children:e.description}):null]}),n?(0,Y.jsx)(Yn,{className:`size-3.5 shrink-0 text-blue-400`}):null]},`${l.id}:${e.label}`)}),T;t[20]===w?T=t[21]:(T=(0,Y.jsx)(`div`,{className:`mt-3 space-y-1`,children:w}),t[20]=w,t[21]=T);let E;return t[22]!==x||t[23]!==S||t[24]!==C||t[25]!==T||t[26]!==b?(E=(0,Y.jsxs)(`div`,{className:`px-4 py-3 sm:px-5`,children:[b,x,S,C,T]}),t[22]=x,t[23]=S,t[24]=C,t[25]=T,t[26]=b,t[27]=E):E=t[27],E}),Rq=(0,q.memo)(function(e){let t=(0,J.c)(5),{planTitle:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(`span`,{className:`uppercase text-sm tracking-[0.2em]`,children:`Plan ready`}),t[0]=r):r=t[0];let i;t[1]===n?i=t[2]:(i=n?(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium`,children:n}):null,t[1]=n,t[2]=i);let a;return t[3]===i?a=t[4]:(a=(0,Y.jsx)(`div`,{className:`px-4 py-3.5 sm:px-5 sm:py-4`,children:(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[r,i]})}),t[3]=i,t[4]=a),a}),zq=(0,q.memo)(function(e){let t=(0,J.c)(24),n=typeof e.descriptor.currentValue==`string`?e.descriptor.currentValue:``,r;t[0]!==e.descriptor.options||t[1]!==n?(r=e.descriptor.options.find(e=>e.id===n)?.label??n,t[0]=e.descriptor.options,t[1]=n,t[2]=r):r=t[2];let i=r,a=e.disabled??!1,o=`Agent: ${i}`,s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=G(`gap-1 rounded-md px-1.5 font-medium`,`bg-muted/40 text-muted-foreground`),t[3]=s):s=t[3];let c;t[4]!==a||t[5]!==o?(c=(0,Y.jsx)(W,{size:`xs`,disabled:a,variant:`ghost`,"aria-label":o,title:`Agent`,className:s}),t[4]=a,t[5]=o,t[6]=c):c=t[6];let l;t[7]===i?l=t[8]:(l=(0,Y.jsx)(`span`,{children:i}),t[7]=i,t[8]=l);let u;t[9]!==c||t[10]!==l?(u=(0,Y.jsx)(qi,{render:c,children:l}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;t[12]!==e||t[13]!==n?(d=t=>{t&&t!==n&&e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,t))},t[12]=e,t[13]=n,t[14]=d):d=t[14];let f;t[15]===e.descriptor.options?f=t[16]:(f=e.descriptor.options.map(Bq),t[15]=e.descriptor.options,t[16]=f);let p;t[17]!==d||t[18]!==f||t[19]!==n?(p=(0,Y.jsx)(_i,{align:`start`,children:(0,Y.jsx)(Si,{value:n,onValueChange:d,children:f})}),t[17]=d,t[18]=f,t[19]=n,t[20]=p):p=t[20];let m;return t[21]!==u||t[22]!==p?(m=(0,Y.jsxs)(ka,{children:[u,p]}),t[21]=u,t[22]=p,t[23]=m):m=t[23],m});function Bq(e){return(0,Y.jsxs)(ki,{value:e.id,children:[e.label,e.isDefault?` (default)`:``]},e.id)}var Vq=(0,q.memo)(function(e){let t=(0,J.c)(24),n=typeof e.descriptor.currentValue==`string`?e.descriptor.currentValue:``,r;t[0]!==e.descriptor.options||t[1]!==n?(r=e.descriptor.options.find(e=>e.id===n)?.label??n,t[0]=e.descriptor.options,t[1]=n,t[2]=r):r=t[2];let i=r,a=e.disabled??!1,o=`Context window: ${i}`,s;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(s=G(`gap-1 rounded-md px-1.5 font-medium`,`bg-muted/40 text-muted-foreground`),t[3]=s):s=t[3];let c;t[4]!==a||t[5]!==o?(c=(0,Y.jsx)(W,{size:`xs`,disabled:a,variant:`ghost`,"aria-label":o,title:`Context window`,className:s}),t[4]=a,t[5]=o,t[6]=c):c=t[6];let l;t[7]===i?l=t[8]:(l=(0,Y.jsx)(`span`,{children:i}),t[7]=i,t[8]=l);let u;t[9]!==c||t[10]!==l?(u=(0,Y.jsx)(qi,{render:c,children:l}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;t[12]!==e||t[13]!==n?(d=t=>{t&&t!==n&&e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,t))},t[12]=e,t[13]=n,t[14]=d):d=t[14];let f;t[15]===e.descriptor.options?f=t[16]:(f=e.descriptor.options.map(Hq),t[15]=e.descriptor.options,t[16]=f);let p;t[17]!==d||t[18]!==f||t[19]!==n?(p=(0,Y.jsx)(_i,{align:`start`,children:(0,Y.jsx)(Si,{value:n,onValueChange:d,children:f})}),t[17]=d,t[18]=f,t[19]=n,t[20]=p):p=t[20];let m;return t[21]!==u||t[22]!==p?(m=(0,Y.jsxs)(ka,{children:[u,p]}),t[21]=u,t[22]=p,t[23]=m):m=t[23],m});function Hq(e){return(0,Y.jsxs)(ki,{value:e.id,children:[e.label,e.isDefault?` (default)`:``]},e.id)}var Uq=(0,q.memo)(function(e){let t=(0,J.c)(20),n=e.descriptor.currentValue===!0,r=e.disabled??!1,i;t[0]!==n||t[1]!==e?(i=()=>{e.disabled||e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,!n))},t[0]=n,t[1]=e,t[2]=i):i=t[2];let a=n?`bg-yellow-500/15 text-yellow-800 hover:bg-yellow-500/25 dark:bg-yellow-500/20 dark:text-yellow-300 dark:hover:bg-yellow-500/30`:`text-muted-foreground/60 ring-1 ring-border ring-inset hover:bg-accent hover:text-foreground`,o;t[3]===a?o=t[4]:(o=G(`inline-flex h-7 cursor-pointer items-center justify-center gap-1 rounded-md px-1.5 font-medium text-xs outline-none transition-colors focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-64 sm:h-6 sm:text-[11px]`,a),t[3]=a,t[4]=o);let s=n?`fill-current`:void 0,c;t[5]===s?c=t[6]:(c=G(`size-3`,s),t[5]=s,t[6]=c);let l;t[7]===c?l=t[8]:(l=(0,Y.jsx)(md,{"aria-hidden":`true`,className:c}),t[7]=c,t[8]=l);let u;t[9]!==n||t[10]!==r||t[11]!==i||t[12]!==o||t[13]!==l?(u=(0,Y.jsx)(So,{render:(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Fast mode`,"aria-pressed":n,disabled:r,onClick:i,className:o,children:l})}),t[9]=n,t[10]=r,t[11]=i,t[12]=o,t[13]=l,t[14]=u):u=t[14];let d=n?`Fast mode on — click to disable`:`Fast mode off — click to enable`,f;t[15]===d?f=t[16]:(f=(0,Y.jsx)(Co,{side:`top`,children:d}),t[15]=d,t[16]=f);let p;return t[17]!==u||t[18]!==f?(p=(0,Y.jsxs)(wo,{children:[u,f]}),t[17]=u,t[18]=f,t[19]=p):p=t[19],p}),Wq=(0,q.memo)(function(e){let t=(0,J.c)(25),n=typeof e.descriptor.currentValue==`string`?e.descriptor.currentValue:``,r;t[0]!==e.descriptor.options||t[1]!==n?(r=e.descriptor.options.find(e=>e.id===n)?.label??n,t[0]=e.descriptor.options,t[1]=n,t[2]=r):r=t[2];let i=r,a=`${e.descriptor.label}: ${i}`,o=e.disabled??!1,s=e.descriptor.label,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(`gap-1 rounded-md px-1.5 font-medium`,`bg-muted/40 text-muted-foreground`),t[3]=c):c=t[3];let l;t[4]!==a||t[5]!==e.descriptor.label||t[6]!==o?(l=(0,Y.jsx)(W,{size:`xs`,disabled:o,variant:`ghost`,"aria-label":a,title:s,className:c}),t[4]=a,t[5]=e.descriptor.label,t[6]=o,t[7]=l):l=t[7];let u;t[8]===i?u=t[9]:(u=(0,Y.jsx)(`span`,{children:i}),t[8]=i,t[9]=u);let d;t[10]!==l||t[11]!==u?(d=(0,Y.jsx)(qi,{openOnHover:!0,delay:150,closeDelay:200,render:l,children:u}),t[10]=l,t[11]=u,t[12]=d):d=t[12];let f;t[13]!==e||t[14]!==n?(f=t=>{t&&t!==n&&e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,t))},t[13]=e,t[14]=n,t[15]=f):f=t[15];let p;t[16]===e.descriptor.options?p=t[17]:(p=e.descriptor.options.map(Gq),t[16]=e.descriptor.options,t[17]=p);let m;t[18]!==f||t[19]!==p||t[20]!==n?(m=(0,Y.jsx)(_i,{align:`start`,children:(0,Y.jsx)(Si,{value:n,onValueChange:f,children:p})}),t[18]=f,t[19]=p,t[20]=n,t[21]=m):m=t[21];let h;return t[22]!==d||t[23]!==m?(h=(0,Y.jsxs)(ka,{children:[d,m]}),t[22]=d,t[23]=m,t[24]=h):h=t[24],h});function Gq(e){return(0,Y.jsxs)(ki,{value:e.id,children:[e.label,e.isDefault?` (default)`:``]},e.id)}var Kq=(0,q.memo)(function(e){let t=(0,J.c)(12),n=e.descriptor.currentValue===!0,r=e.disabled??!1,i=n?`Thinking: on (click to disable)`:`Thinking: off (click to enable)`,a=n?`bg-sky-500/15 text-sky-800 dark:bg-sky-500/20 dark:text-sky-300`:`text-muted-foreground/60 ring-1 ring-border ring-inset hover:text-foreground`,o;t[0]===a?o=t[1]:(o=G(`gap-1 rounded-md px-1.5 font-medium`,a),t[0]=a,t[1]=o);let s;t[2]!==n||t[3]!==e?(s=()=>{e.onChangeDescriptors(Us(e.descriptors,e.descriptor.id,!n))},t[2]=n,t[3]=e,t[4]=s):s=t[4];let c;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(Su,{"aria-hidden":`true`,className:`size-3`}),t[5]=c):c=t[5];let l;return t[6]!==n||t[7]!==r||t[8]!==i||t[9]!==o||t[10]!==s?(l=(0,Y.jsx)(W,{size:`xs`,disabled:r,variant:`ghost`,"aria-label":`Thinking`,"aria-pressed":n,title:i,className:o,onClick:s,children:c}),t[6]=n,t[7]=r,t[8]=i,t[9]=o,t[10]=s,t[11]=l):l=t[11],l}),qq=new Set([`effort`,`reasoningEffort`,`reasoning`]),Jq=new Set([...qq,`contextWindow`,`agent`]),Yq=(0,q.memo)(function(e){let t=(0,J.c)(41),n=Rr(Xq),r;t[0]!==e||t[1]!==n?(r=t=>{if(e.disabled)return;if(`onModelOptionsChange`in e&&typeof e.onModelOptionsChange==`function`){e.onModelOptionsChange(t);return}let r=e.threadRef??e.draftId;r&&n(r,e.provider,t,{...e.instanceId?{instanceId:e.instanceId}:{},model:e.model,persistSticky:!0})},t[0]=e,t[1]=n,t[2]=r):r=t[2];let i=r,a,o,s,c,l,u,d,f,p;if(t[3]!==e.disabled||t[4]!==e.disabledReason||t[5]!==e.hideAgent||t[6]!==e.model||t[7]!==e.modelOptions||t[8]!==e.models||t[9]!==e.onPromptChange||t[10]!==e.prompt||t[11]!==e.provider||t[12]!==i){p=Symbol.for(`react.early_return_sentinel`);bb0:{let n=Ue(e.models,e.model,e.provider),r=nn({caps:n,selections:e.modelOptions});if(r.length===0){p=null;break bb0}let m=r.find(Zq),h=(m?.promptInjectedValues?.length??0)>0&&Gn(e.prompt),g;t[22]!==e.prompt||t[23]!==h?(g=h&&Gn(e.prompt.replace(/^Ultrathink:\s*/i,``)),t[22]=e.prompt,t[23]=h,t[24]=g):g=t[24];let _=g,v;t[25]===i?v=t[26]:(v=e=>{i(Ir(e))},t[25]=i,t[26]=v);let y=v,b=e=>r.find(t=>t.id===e&&t.type===`select`),x=e=>r.find(t=>t.id===e&&t.type===`boolean`),S=r.find(Qq),C=x(`fastMode`),w=b(`contextWindow`),T=x(`thinking`),E=e.hideAgent?void 0:b(`agent`),D=r.filter($q),O=e.disabled??!1,k;t[27]!==O||t[28]!==e.disabledReason?(k=O&&e.disabledReason?vl(e.disabledReason):null,t[27]=O,t[28]=e.disabledReason,t[29]=k):k=t[29],a=k,o=`flex flex-wrap items-center gap-1`,s=S?(0,Y.jsx)(Zs,{descriptor:S,descriptors:r,prompt:e.prompt,primarySelectDescriptorId:m?.id,ultrathinkInBodyText:_,ultrathinkPromptControlled:h,onChangeDescriptors:y,onPromptChange:e.onPromptChange,disabled:O}):null,c=C?(0,Y.jsx)(Uq,{descriptor:C,descriptors:r,onChangeDescriptors:y,disabled:O}):null,l=w?(0,Y.jsx)(Vq,{descriptor:w,descriptors:r,onChangeDescriptors:y,disabled:O}):null,u=T?(0,Y.jsx)(Kq,{descriptor:T,descriptors:r,onChangeDescriptors:y,disabled:O}):null,d=E?(0,Y.jsx)(zq,{descriptor:E,descriptors:r,onChangeDescriptors:y,disabled:O}):null,f=D.map(e=>(0,Y.jsx)(Wq,{descriptor:e,descriptors:r,onChangeDescriptors:y,disabled:O},e.id))}t[3]=e.disabled,t[4]=e.disabledReason,t[5]=e.hideAgent,t[6]=e.model,t[7]=e.modelOptions,t[8]=e.models,t[9]=e.onPromptChange,t[10]=e.prompt,t[11]=e.provider,t[12]=i,t[13]=a,t[14]=o,t[15]=s,t[16]=c,t[17]=l,t[18]=u,t[19]=d,t[20]=f,t[21]=p}else a=t[13],o=t[14],s=t[15],c=t[16],l=t[17],u=t[18],d=t[19],f=t[20],p=t[21];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let m;t[30]===a?m=t[31]:(m=a?(0,Y.jsx)(`span`,{className:`text-muted-foreground/80 text-xs`,"data-slot":`traits-disabled-reason`,children:a}):null,t[30]=a,t[31]=m);let h;return t[32]!==o||t[33]!==s||t[34]!==c||t[35]!==l||t[36]!==u||t[37]!==d||t[38]!==f||t[39]!==m?(h=(0,Y.jsxs)(`div`,{className:o,children:[s,c,l,u,d,f,m]}),t[32]=o,t[33]=s,t[34]=c,t[35]=l,t[36]=u,t[37]=d,t[38]=f,t[39]=m,t[40]=h):h=t[40],h});function Xq(e){return e.setProviderModelOptions}function Zq(e){return e.type===`select`}function Qq(e){return e.type===`select`&&qq.has(e.id)}function $q(e){return e.type===`select`&&!Jq.has(e.id)&&!qq.has(e.id)}function eJ(e){let{provider:t,model:n,models:r,prompt:i,modelOptions:a}=e,o=Ue(r,n,t),s=nn({caps:o,selections:a}),c=s.find(e=>e.type===`select`),l=kr(c??null),u=typeof l==`string`?l:null,d=(c?.promptInjectedValues?.length??0)>0&&Gn(i);return{provider:t,promptEffort:u,modelOptionsForDispatch:Ir(s),...d?{composerFrameClassName:`ultrathink-frame`,composerSurfaceClassName:`shadow-[0_0_0_1px_rgba(255,255,255,0.04)_inset]`,modelPickerIconClassName:`ultrathink-chroma`}:{}}}function tJ(e){let{provider:t,instanceId:n,threadRef:r,draftId:i,model:a,models:o,modelOptions:s,prompt:c,onPromptChange:l,disabled:u,disabledReason:d}=e;return r===void 0&&i===void 0||!Ys({provider:t,models:o,model:a,modelOptions:s,prompt:c,hideAgent:e.hideAgent??!1})?null:(0,Y.jsx)(qs,{hideAgent:e.hideAgent??!1,disabled:u??!1,...d?{disabledReason:d}:{},provider:t,...n?{instanceId:n}:{},models:o,...r?{threadRef:r}:{},...i?{draftId:i}:{},model:a,modelOptions:s,prompt:c,onPromptChange:l})}function nJ(e){let{provider:t,instanceId:n,threadRef:r,draftId:i,model:a,models:o,modelOptions:s,prompt:c,onPromptChange:l,disabled:u,disabledReason:d}=e;return r===void 0&&i===void 0||!Ys({provider:t,models:o,model:a,modelOptions:s,prompt:c,hideAgent:e.hideAgent??!1})?null:(0,Y.jsx)(Yq,{hideAgent:e.hideAgent??!1,disabled:u??!1,...d?{disabledReason:d}:{},provider:t,...n?{instanceId:n}:{},models:o,...r?{threadRef:r}:{},...i?{draftId:i}:{},model:a,modelOptions:s,prompt:c,onPromptChange:l})}function rJ(e){let t=e.mimeType.split(`;`,1)[0]?.trim().toLowerCase()??``,n=e.name.split(`.`).pop()?.toLowerCase();return t===`application/pdf`?`pdf`:t.startsWith(`text/`)||[`application/json`,`application/xml`,`application/javascript`].includes(t)?`text`:t!==``&&t!==`application/octet-stream`?null:n===`pdf`?`pdf`:n&&/^(txt|md|markdown|csv|tsv|json|jsonl|xml|yaml|yml|log|js|jsx|ts|tsx|css|html|htm|py|sh|toml|ini|sql|rs|go|java|c|h|cpp)$/.test(n)?`text`:null}function iJ(e){return e>=1048576?`${Math.round(e/1048576*10)/10} MB`:e>=1024?`${Math.ceil(e/1024)} KB`:`${e} B`}function aJ(e,t){if(!t||e.startsWith(`blob:`)||e.startsWith(`data:`))return e;let n=new URL(e,`http://ryco.invalid`);return n.searchParams.set(`download`,t),/^https?:/.test(e)?n.href:`${n.pathname}${n.search}${n.hash}`}function oJ(e){return e.toLowerCase().startsWith(`video/`)}var sJ=(0,q.memo)(function(e){let t=(0,J.c)(17),{attachment:n}=e,r;t[0]===n.sizeBytes?r=t[1]:(r=n.sizeBytes===void 0?null:iJ(n.sizeBytes),t[0]=n.sizeBytes,t[1]=r);let i=r,a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(mi,{className:`size-4 shrink-0 text-muted-foreground`}),t[2]=a):a=t[2];let o;t[3]===n.name?o=t[4]:(o=(0,Y.jsx)(`span`,{className:`block truncate font-medium`,children:n.name}),t[3]=n.name,t[4]=o);let s;t[5]!==n.mimeType||t[6]!==i?(s=[n.mimeType,i].filter(lJ),t[5]=n.mimeType,t[6]=i,t[7]=s):s=t[7];let c=s.join(` · `),l;t[8]===c?l=t[9]:(l=(0,Y.jsx)(`span`,{className:`block text-[10px] text-muted-foreground`,children:c}),t[8]=c,t[9]=l);let u;t[10]!==o||t[11]!==l?(u=(0,Y.jsxs)(Y.Fragment,{children:[a,(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[o,l]})]}),t[10]=o,t[11]=l,t[12]=u):u=t[12];let d=u,f;return t[13]!==n.name||t[14]!==n.previewUrl||t[15]!==d?(f=n.previewUrl?(0,Y.jsx)(`a`,{href:aJ(n.previewUrl,n.name),download:n.name,className:`flex min-h-[72px] items-center gap-2 px-3 py-3 text-left text-xs text-foreground/80`,"aria-label":`Download ${n.name}`,children:d}):(0,Y.jsx)(`div`,{className:`flex min-h-[72px] items-center gap-2 px-3 py-3 text-left text-xs text-foreground/80`,children:d}),t[13]=n.name,t[14]=n.previewUrl,t[15]=d,t[16]=f):f=t[16],f}),cJ=(0,q.memo)(function(e){let t=(0,J.c)(28),{attachment:n}=e,[r,i]=(0,q.useState)(null),{previewUrl:a,width:o,height:s}=n;if(!a||r===a){let e;return t[0]===n?e=t[1]:(e=(0,Y.jsx)(sJ,{attachment:n}),t[0]=n,t[1]=e),e}let c;t[2]===a?c=t[3]:(c=()=>i(a),t[2]=a,t[3]=c);let l;t[4]!==s||t[5]!==o?(l=o!==void 0&&s!==void 0?{width:o,height:s}:{},t[4]=s,t[5]=o,t[6]=l):l=t[6];let u=o&&s?`${o} / ${s}`:`16 / 9`,d;t[7]===u?d=t[8]:(d={aspectRatio:u},t[7]=u,t[8]=d);let f;t[9]!==a||t[10]!==c||t[11]!==l||t[12]!==d?(f=(0,Y.jsx)(`video`,{controls:!0,playsInline:!0,preload:`metadata`,src:a,onError:c,...l,style:d,className:`block h-auto w-full bg-black`}),t[9]=a,t[10]=c,t[11]=l,t[12]=d,t[13]=f):f=t[13];let p;t[14]!==n.name||t[15]!==a?(p=aJ(a,n.name),t[14]=n.name,t[15]=a,t[16]=p):p=t[16];let m=`Download ${n.name}`,h;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(mi,{className:`size-3.5 shrink-0`}),t[17]=h):h=t[17];let g;t[18]===n.name?g=t[19]:(g=(0,Y.jsx)(`span`,{className:`truncate`,children:n.name}),t[18]=n.name,t[19]=g);let _;t[20]!==n.name||t[21]!==p||t[22]!==m||t[23]!==g?(_=(0,Y.jsxs)(`a`,{href:p,download:n.name,"aria-label":m,className:`flex items-center justify-center gap-1.5 border-t border-border/60 px-3 py-2 text-[11px] text-muted-foreground transition-colors hover:text-foreground`,children:[h,g]}),t[20]=n.name,t[21]=p,t[22]=m,t[23]=g,t[24]=_):_=t[24];let v;return t[25]!==f||t[26]!==_?(v=(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[f,_]}),t[25]=f,t[26]=_,t[27]=v):v=t[27],v});function lJ(e){return e!==null}var uJ=(0,q.lazy)(()=>r(()=>import(`./PdfAttachmentPreview-C8-hT8KQ.js`),[]));function dJ({src:e}){let[t,n]=(0,q.useState)(),[r,i]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{let t=new AbortController;return(async()=>{let r=await fetch(e,{signal:t.signal,credentials:`include`});if(!r.ok||!r.body)throw Error(`Unavailable`);let i=r.body.getReader(),a=[],o=0;try{for(;;){let e=await i.read();if(e.done)break;if(o+=e.value.length,o>524288)throw Error(`Too large`);a.push(e.value)}}finally{await i.cancel()}let s=new TextDecoder(`utf-8`,{fatal:!0}).decode(await new Blob(a).arrayBuffer());if(s.includes(`\0`))throw Error(`Binary file`);t.signal.aborted||n(s)})().catch(()=>{t.signal.aborted||i(!0)}),()=>t.abort()},[e]),r?(0,Y.jsx)(`p`,{role:`status`,className:`p-6 text-sm text-muted-foreground`,children:`This file cannot be previewed as UTF-8 text. Download it to open it.`}):t===void 0?(0,Y.jsx)(`p`,{role:`status`,className:`p-6`,children:`Loading preview…`}):(0,Y.jsx)(`pre`,{className:`min-h-0 flex-1 overflow-auto whitespace-pre-wrap break-words p-6 font-mono text-xs`,children:t})}function fJ(e){let t=(0,J.c)(29),{attachment:n,open:r,onOpenChange:i}=e,a=n.previewUrl,o;t[0]===n?o=t[1]:(o=rJ(n),t[0]=n,t[1]=o);let s=o,c;t[2]===n.name?c=t[3]:(c=(0,Y.jsx)(Ri,{className:`truncate text-base`,title:n.name,children:n.name}),t[2]=n.name,t[3]=c);let l;t[4]===n.sizeBytes?l=t[5]:(l=iJ(n.sizeBytes),t[4]=n.sizeBytes,t[5]=l);let u=s===`text`?` · Text preview`:` · PDF preview`,d;t[6]!==l||t[7]!==u?(d=(0,Y.jsxs)(qa,{children:[l,u]}),t[6]=l,t[7]=u,t[8]=d):d=t[8];let f;t[9]!==n.name||t[10]!==a?(f=a&&(0,Y.jsx)(`a`,{className:`w-fit text-xs underline underline-offset-4`,href:aJ(a,n.name),download:n.name,"aria-label":`Download ${n.name}`,children:`Download`}),t[9]=n.name,t[10]=a,t[11]=f):f=t[11];let p;t[12]!==c||t[13]!==d||t[14]!==f?(p=(0,Y.jsxs)(ta,{className:`shrink-0 border-b pr-12`,children:[c,d,f]}),t[12]=c,t[13]=d,t[14]=f,t[15]=p):p=t[15];let m;t[16]!==n.name||t[17]!==n.sizeBytes||t[18]!==s||t[19]!==r||t[20]!==a?(m=r&&a&&(s===`pdf`?(0,Y.jsx)(q.Suspense,{fallback:(0,Y.jsx)(`p`,{role:`status`,className:`p-6`,children:`Loading PDF viewer…`}),children:(0,Y.jsx)(uJ,{src:a,name:n.name},a)}):n.sizeBytes>524288?(0,Y.jsx)(`p`,{role:`status`,className:`p-6 text-sm`,children:`Text previews are limited to 512 KB. Download this file to open it.`}):(0,Y.jsx)(dJ,{src:a},a)),t[16]=n.name,t[17]=n.sizeBytes,t[18]=s,t[19]=r,t[20]=a,t[21]=m):m=t[21];let h;t[22]!==p||t[23]!==m?(h=(0,Y.jsxs)(ia,{className:`h-[80dvh] max-w-5xl overflow-hidden`,bottomStickOnMobile:!1,children:[p,m]}),t[22]=p,t[23]=m,t[24]=h):h=t[24];let g;return t[25]!==i||t[26]!==r||t[27]!==h?(g=(0,Y.jsx)(vi,{open:r,onOpenChange:i,children:h}),t[25]=i,t[26]=r,t[27]=h,t[28]=g):g=t[28],g}function pJ(e){let t=(0,J.c)(19),{attachment:n,initiallyOpen:r}=e,[i,a]=(0,q.useState)(r!==void 0&&r),o=(0,q.useRef)(void 0),[s,c]=(0,q.useState)(),l,u;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>()=>{o.current&&URL.revokeObjectURL(o.current)},u=[],t[0]=l,t[1]=u):(l=t[0],u=t[1]),(0,q.useEffect)(l,u);let d;t[2]===n?d=t[3]:(d=e=>{o.current&&URL.revokeObjectURL(o.current),o.current=e&&n.file?URL.createObjectURL(n.file):void 0,c(o.current),a(e)},t[2]=n,t[3]=d);let f=d;if(!rJ(n)||!n.file&&!n.previewUrl)return null;let p=`Preview ${n.name}`,m;t[4]===f?m=t[5]:(m=()=>f(!0),t[4]=f,t[5]=m);let h;t[6]!==p||t[7]!==m?(h=(0,Y.jsx)(W,{variant:`ghost`,size:`sm`,"aria-label":p,onClick:m,children:`Preview`}),t[6]=p,t[7]=m,t[8]=h):h=t[8];let g=s??n.previewUrl,_;t[9]!==n||t[10]!==g?(_={...n,previewUrl:g},t[9]=n,t[10]=g,t[11]=_):_=t[11];let v;t[12]!==f||t[13]!==i||t[14]!==_?(v=(0,Y.jsx)(fJ,{attachment:_,open:i,onOpenChange:f}),t[12]=f,t[13]=i,t[14]=_,t[15]=v):v=t[15];let y;return t[16]!==v||t[17]!==h?(y=(0,Y.jsxs)(Y.Fragment,{children:[h,v]}),t[16]=v,t[17]=h,t[18]=y):y=t[18],y}function mJ(e,t){let n=e.flatMap(e=>e.previewUrl?[{id:e.id,src:e.previewUrl,name:e.name,width:e.width,height:e.height}]:[]);if(n.length===0)return null;let r=n.findIndex(e=>e.id===t);return r<0?null:{images:n.map(e=>({src:e.src,name:e.name,...e.width===void 0?{}:{width:e.width},...e.height===void 0?{}:{height:e.height}})),index:r}}function hJ(e){let t=e.indexOf(`#`);return t<0||e.slice(0,t).includes(`/`)?e:e.slice(t)}function gJ(e){let t=(0,J.c)(36),{context:n,onRemove:r}=e,i;t[0]===n.reference?i=t[1]:(i=hJ(n.reference),t[0]=n.reference,t[1]=i);let a=i,o=n.detail.title,s=n.detail.truncated,c;t[2]!==n.detail||t[3]!==n.kind?(c=n.kind===`change-request`&&`baseRefName`in n.detail?Oa(n.detail):null,t[2]=n.detail,t[3]=n.kind,t[4]=c):c=t[4];let l=c,u=n.kind===`change-request`?ui:Mi,d=`body`in n.detail&&typeof n.detail.body==`string`?n.detail.body:null,f=n.id,p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(mE,`size-3.5`),t[5]=p):p=t[5];let m;t[6]===u?m=t[7]:(m=(0,Y.jsx)(u,{className:p,"aria-hidden":`true`}),t[6]=u,t[7]=m);let h;t[8]===a?h=t[9]:(h=(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground`,children:a}),t[8]=a,t[9]=h);let g;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(g=G(hE,`max-w-32`),t[10]=g):g=t[10];let _;t[11]===o?_=t[12]:(_=(0,Y.jsx)(`span`,{className:g,children:o}),t[11]=o,t[12]=_);let v;t[13]===s?v=t[14]:(v=s?(0,Y.jsx)(`span`,{"aria-label":`Context truncated`,className:`ml-0.5 shrink-0 rounded-sm bg-warning/20 px-0.5 text-[9px] font-semibold uppercase leading-tight text-warning-foreground`,children:`truncated`}):null,t[13]=s,t[14]=v);let y;t[15]===l?y=t[16]:(y=l?(0,Y.jsx)(Na,{view:l,mode:`compact`}):null,t[15]=l,t[16]=y);let b;t[17]!==n.id||t[18]!==r?(b=()=>r(n.id),t[17]=n.id,t[18]=r,t[19]=b):b=t[19];let x;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsx)(Ut,{className:`size-3`,"aria-hidden":`true`}),t[20]=x):x=t[20];let S;t[21]===b?S=t[22]:(S=(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Remove context`,className:vE,onClick:b,children:x}),t[21]=b,t[22]=S);let C;t[23]!==n.id||t[24]!==S||t[25]!==m||t[26]!==h||t[27]!==_||t[28]!==v||t[29]!==y?(C=(0,Y.jsx)(So,{render:(0,Y.jsxs)(`span`,{className:pE,"data-context-id":f,children:[m,h,_,v,y,S]})}),t[23]=n.id,t[24]=S,t[25]=m,t[26]=h,t[27]=_,t[28]=v,t[29]=y,t[30]=C):C=t[30];let w;t[31]===d?w=t[32]:(w=d?(0,Y.jsx)(Co,{side:`top`,className:`max-w-80 whitespace-pre-wrap leading-tight`,children:d}):null,t[31]=d,t[32]=w);let T;return t[33]!==C||t[34]!==w?(T=(0,Y.jsxs)(wo,{children:[C,w]}),t[33]=C,t[34]=w,t[35]=T):T=t[35],T}var _J=(0,q.memo)(function(e){let t=(0,J.c)(79),{editorRef:n,isComposerCollapsedMobile:r,hasComposerHeader:i,isComposerApprovalState:a,resolvedTheme:o,composerMenuOpen:s,composerMenuItems:c,isComposerMenuLoading:l,composerTriggerKind:u,composerTrigger:d,composerMenuEmptyState:f,activeComposerMenuItemId:p,onComposerMenuItemHighlighted:m,onSelectComposerItem:h,composerSourceControlContexts:g,onRemoveSourceControlContext:_,composerImages:v,nonPersistedComposerImageIdSet:y,fileUploadRecords:b,onExpandImage:x,onRemoveImage:S,onRetryFileUpload:C,onReattachFile:w,pendingUserInputCount:T,prompt:E,composerCursor:D,composerTerminalContexts:O,skills:k,showMobilePendingAnswerActions:A,onRemoveTerminalContext:j,onPromptChange:M,onComposerCommandKey:N,onComposerPaste:P,activePendingProgress:F,showPlanFollowUpPrompt:I,activeProposedPlan:L,environmentUnavailable:R,phase:z,isConnecting:ee,isEditorDisabled:te,showCollapsedSendAction:B,collapsedSendActionLabel:ne,collapsedSendActionDisabled:re,onCollapsedSend:ie,isSendBusy:V,pendingPrimaryAction:ae,onPreviousPendingQuestion:H,onInterrupt:U,onImplementPlanInNewThread:oe}=e,se=i?`pt-2.5 sm:pt-3`:`pt-3.5 sm:pt-4`,ce;t[0]===se?ce=t[1]:(ce=G(`relative px-3 pb-2 sm:px-4`,se),t[0]=se,t[1]=ce);let le=s&&!a,ue;t[2]===d?ue=t[3]:(ue=d?.kind===`slash-command`&&d.query.trim().length===0,t[2]=d,t[3]=ue);let de;t[4]!==p||t[5]!==f||t[6]!==c||t[7]!==u||t[8]!==l||t[9]!==m||t[10]!==h||t[11]!==o||t[12]!==le||t[13]!==ue?(de=(0,Y.jsx)(kq,{open:le,items:c,resolvedTheme:o,isLoading:l,triggerKind:u,groupSlashCommandSections:ue,emptyStateText:f,activeItemId:p,onHighlightedItemChange:m,onSelect:h}),t[4]=p,t[5]=f,t[6]=c,t[7]=u,t[8]=l,t[9]=m,t[10]=h,t[11]=o,t[12]=le,t[13]=ue,t[14]=de):de=t[14];let fe;t[15]!==g||t[16]!==a||t[17]!==r||t[18]!==_||t[19]!==T?(fe=!r&&!a&&T===0&&g.length>0&&(0,Y.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-1.5`,children:g.map(e=>(0,Y.jsx)(gJ,{context:e,onRemove:_},e.id))}),t[15]=g,t[16]=a,t[17]=r,t[18]=_,t[19]=T,t[20]=fe):fe=t[20];let pe;t[21]!==v||t[22]!==b||t[23]!==a||t[24]!==r||t[25]!==y||t[26]!==x||t[27]!==w||t[28]!==S||t[29]!==C||t[30]!==T?(pe=!r&&!a&&T===0&&v.length>0&&(0,Y.jsx)(`div`,{className:`mb-3 flex flex-wrap gap-2`,children:v.map(e=>e.type===`file`?(0,Y.jsx)(vJ,{image:e,status:b.get(e.id)?.status,onRemove:S,onRetry:C,onReattach:w},e.id):(0,Y.jsxs)(`div`,{className:`relative h-16 w-16 overflow-hidden rounded-lg border border-border/80 bg-background`,children:[e.previewUrl?(0,Y.jsx)(`button`,{type:`button`,className:`h-full w-full cursor-zoom-in`,"aria-label":`Preview ${e.name}`,onClick:()=>{let t=mJ(v,e.id);t&&x(t)},children:(0,Y.jsx)(`img`,{src:e.previewUrl,alt:e.name,className:`h-full w-full object-cover`})}):(0,Y.jsx)(`div`,{className:`flex h-full w-full items-center justify-center px-1 text-center text-[10px] text-muted-foreground/70`,children:e.name}),y.has(e.id)&&(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsx)(`span`,{role:`img`,"aria-label":`Draft attachment may not persist`,className:`absolute left-1 top-1 inline-flex items-center justify-center rounded bg-background/85 p-0.5 text-amber-600`,children:(0,Y.jsx)(sn,{className:`size-3`})})}),(0,Y.jsx)(Co,{side:`top`,className:`max-w-64 whitespace-normal leading-tight`,children:`Draft attachment could not be saved locally and may be lost on navigation.`})]}),(0,Y.jsx)(W,{variant:`ghost`,size:`icon-xs`,className:`absolute right-1 top-1 bg-background/80 hover:bg-background/90`,onClick:()=>S(e.id),"aria-label":`Remove ${e.name}`,children:(0,Y.jsx)(Ut,{})})]},e.id))}),t[21]=v,t[22]=b,t[23]=a,t[24]=r,t[25]=y,t[26]=x,t[27]=w,t[28]=S,t[29]=C,t[30]=T,t[31]=pe):pe=t[31];let me=B&&`flex items-center gap-2`,he;t[32]===me?he=t[33]:(he=G(`relative`,me),t[32]=me,t[33]=he);let ge=a?``:F?F.customAnswer:E,_e;t[34]!==O||t[35]!==a||t[36]!==T?(_e=!a&&T===0?O:[],t[34]=O,t[35]=a,t[36]=T,t[37]=_e):_e=t[37];let ve;t[38]===A?ve=t[39]:(ve=A?{className:`phone:pb-11`}:{},t[38]=A,t[39]=ve);let ye=a?`Resolve this approval request to continue`:F?r?`Write custom answer`:`Type your own answer, or leave this blank to use the selected option`:I&&L?r?`Add plan feedback`:`Add feedback to refine the plan, or leave this blank to implement it`:R?`${R.label} is ${R.connectionState===`connecting`?`connecting`:`disconnected`}`:z===`disconnected`?`Ask for follow-up changes or attach images`:r?`Ask anything...`:`Ask anything, @tag files/folders, or use / to show available commands`,be;t[40]!==D||t[41]!==n||t[42]!==r||t[43]!==te||t[44]!==N||t[45]!==P||t[46]!==M||t[47]!==j||t[48]!==k||t[49]!==_e||t[50]!==ve||t[51]!==ye||t[52]!==ge?(be=(0,Y.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,Y.jsx)(oG,{ref:n,collapsed:r,value:ge,cursor:D,terminalContexts:_e,skills:k,...ve,onRemoveTerminalContext:j,onChange:M,onCommandKeyDown:N,onPaste:P,placeholder:ye,disabled:te})}),t[40]=D,t[41]=n,t[42]=r,t[43]=te,t[44]=N,t[45]=P,t[46]=M,t[47]=j,t[48]=k,t[49]=_e,t[50]=ve,t[51]=ye,t[52]=ge,t[53]=be):be=t[53];let xe;t[54]!==re||t[55]!==ne||t[56]!==ie||t[57]!==B?(xe=B?(0,Y.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary/90 text-primary-foreground disabled:opacity-30`,disabled:re,"aria-label":ne,onPointerDown:yJ,onClick:e=>{e.stopPropagation(),ie()},children:(0,Y.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:(0,Y.jsx)(`path`,{d:`M8 3L8 13M8 3L4 7M8 3L12 7`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})})}):null,t[54]=re,t[55]=ne,t[56]=ie,t[57]=B,t[58]=xe):xe=t[58];let Se;t[59]!==R||t[60]!==ee||t[61]!==V||t[62]!==oe||t[63]!==U||t[64]!==H||t[65]!==ae||t[66]!==A?(Se=A?(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-actions":`true`,className:`absolute bottom-0 right-0 flex justify-end`,children:(0,Y.jsx)(OK,{compact:!0,pendingAction:ae,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:V,isConnecting:ee,isEnvironmentUnavailable:R!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:H,onInterrupt:U,onImplementPlanInNewThread:oe})}):null,t[59]=R,t[60]=ee,t[61]=V,t[62]=oe,t[63]=U,t[64]=H,t[65]=ae,t[66]=A,t[67]=Se):Se=t[67];let Ce;t[68]!==be||t[69]!==xe||t[70]!==Se||t[71]!==he?(Ce=(0,Y.jsxs)(`div`,{className:he,children:[be,xe,Se]}),t[68]=be,t[69]=xe,t[70]=Se,t[71]=he,t[72]=Ce):Ce=t[72];let we;return t[73]!==ce||t[74]!==Ce||t[75]!==de||t[76]!==fe||t[77]!==pe?(we=(0,Y.jsxs)(`div`,{className:ce,children:[de,fe,pe,Ce]}),t[73]=ce,t[74]=Ce,t[75]=de,t[76]=fe,t[77]=pe,t[78]=we):we=t[78],we}),vJ=(0,q.memo)(function(e){let t=(0,J.c)(37),{image:n,status:r,onRemove:i,onRetry:a,onReattach:o}=e,s;t[0]!==n.expiresAt||t[1]!==n.uploadToken?(s=n.uploadToken!==void 0&&n.expiresAt!==void 0&&er(n.expiresAt,Date.now()),t[0]=n.expiresAt,t[1]=n.uploadToken,t[2]=s):s=t[2];let c=s,l=r===void 0?n.file===null&&!c:r.kind===`needsReattach`,u=r?.kind===`uploading`||r?.kind===`pending`,d=r?.kind===`uploaded`,f=r?.kind===`uploading`?r.progress:null,p=l?`reattach`:u?`uploading`:d?`uploaded`:`ready`,m;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(mi,{className:`size-4 shrink-0 text-muted-foreground`}),t[3]=m):m=t[3];let h;t[4]===n.name?h=t[5]:(h=(0,Y.jsx)(`span`,{className:`block truncate text-xs font-medium`,children:n.name}),t[4]=n.name,t[5]=h);let g;t[6]!==n.id||t[7]!==n.name||t[8]!==n.sizeBytes||t[9]!==d||t[10]!==u||t[11]!==l||t[12]!==o||t[13]!==a||t[14]!==f||t[15]!==r?(g=l?(0,Y.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] text-amber-600`,children:[(0,Y.jsx)(`span`,{children:`Attach again to send`}),(0,Y.jsxs)(`button`,{type:`button`,className:`cursor-pointer font-medium underline underline-offset-2`,onClick:()=>o(n.id),"aria-label":`Attach ${n.name} again`,children:[(0,Y.jsx)(cd,{className:`inline size-3 align-[-2px]`}),` Attach again`]})]}):r?.kind===`failed`?(0,Y.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] text-destructive`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 truncate`,title:r.message,"aria-label":r.message,children:r.label??`Upload failed`}),(0,Y.jsxs)(`button`,{type:`button`,className:`shrink-0 cursor-pointer whitespace-nowrap font-medium underline underline-offset-2`,onClick:()=>a(n.id),"aria-label":`Retry uploading ${n.name}`,children:[(0,Y.jsx)(ds,{className:`inline size-3 align-[-2px]`}),` Retry`]})]}):u?(0,Y.jsxs)(`span`,{className:`block text-[10px] text-muted-foreground`,children:[`Uploading`,f===null?`…`:` ${Math.round(f*100)}%`]}):(0,Y.jsxs)(`span`,{className:`block text-[10px] text-muted-foreground`,children:[iJ(n.sizeBytes),d?` · Uploaded`:``]}),t[6]=n.id,t[7]=n.name,t[8]=n.sizeBytes,t[9]=d,t[10]=u,t[11]=l,t[12]=o,t[13]=a,t[14]=f,t[15]=r,t[16]=g):g=t[16];let _;t[17]!==h||t[18]!==g?(_=(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[h,g]}),t[17]=h,t[18]=g,t[19]=_):_=t[19];let v;t[20]===f?v=t[21]:(v=f!==null&&(0,Y.jsx)(`span`,{className:`absolute bottom-0 left-0 h-0.5 w-full bg-muted`,children:(0,Y.jsx)(`span`,{className:`block h-full bg-primary transition-[width] duration-200`,style:{width:`${Math.round(f*100)}%`}})}),t[20]=f,t[21]=v);let y;t[22]===n?y=t[23]:(y=(0,Y.jsx)(pJ,{attachment:n}),t[22]=n,t[23]=y);let b;t[24]!==n.id||t[25]!==i?(b=()=>i(n.id),t[24]=n.id,t[25]=i,t[26]=b):b=t[26];let x=`Remove ${n.name}`,S;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Y.jsx)(Ut,{}),t[27]=S):S=t[27];let C;t[28]!==x||t[29]!==b?(C=(0,Y.jsx)(W,{variant:`ghost`,size:`icon-xs`,className:`absolute right-1 top-1 bg-background/80 hover:bg-background/90`,onClick:b,"aria-label":x,children:S}),t[28]=x,t[29]=b,t[30]=C):C=t[30];let w;return t[31]!==C||t[32]!==p||t[33]!==_||t[34]!==v||t[35]!==y?(w=(0,Y.jsxs)(`div`,{className:`relative flex h-16 min-w-44 max-w-56 items-center gap-2 overflow-hidden rounded-lg border border-border/80 bg-background px-3 py-2`,"data-composer-file-state":p,children:[m,_,v,y,C]}),t[31]=C,t[32]=p,t[33]=_,t[34]=v,t[35]=y,t[36]=w):w=t[36],w});function yJ(e){return e.preventDefault()}function bJ(e){let t=(0,J.c)(11),{label:n,items:r,className:i}=e;if(r.length===0)return null;let a;t[0]===i?a=t[1]:(a=G(`relative min-w-0`,i),t[0]=i,t[1]=a);let o;t[2]===r?o=t[3]:(o=r.map(xJ),t[2]=r,t[3]=o);let s;t[4]!==n||t[5]!==o?(s=(0,Y.jsx)(`div`,{role:`group`,"aria-label":n,className:`flex min-w-0 items-center gap-1.5 overflow-x-auto overscroll-x-contain pe-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,"data-slot":`mobile-context-strip-rail`,children:o}),t[4]=n,t[5]=o,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-y-0 end-0 w-4 bg-gradient-to-l from-background/80 to-transparent`,"data-slot":`mobile-context-strip-edge`}),t[7]=c):c=t[7];let l;return t[8]!==a||t[9]!==s?(l=(0,Y.jsxs)(`div`,{className:a,"data-slot":`mobile-context-strip`,children:[s,c]}),t[8]=a,t[9]=s,t[10]=l):l=t[10],l}function xJ(e){return(0,Y.jsxs)(`button`,{type:`button`,"aria-pressed":e.selected,disabled:e.disabled??!1,className:G(Tl(`chip`),`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center gap-1.5 rounded-full border border-border/60 px-3 text-xs`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,e.selected===!0&&`ring-1 ring-ring/50`),"data-slot":`mobile-context-strip-pill`,onClick:e.onSelect,children:[e.icon,(0,Y.jsx)(`span`,{className:`max-w-40 truncate font-medium`,children:e.label}),e.value===void 0?null:(0,Y.jsx)(`span`,{className:`max-w-40 truncate text-muted-foreground`,children:e.value})]},e.id)}var SJ=new Map;function CJ(e){let[t,n]=(0,q.useState)(!1),[r,i]=(0,q.useState)(!1),a=u(_(e.environmentId,e.threadId)),o=me(Uc(Rn)),s=(0,q.useMemo)(()=>o.find(t=>t.id===e.threadId&&t.environmentId===e.environmentId)??null,[e.environmentId,e.threadId,o]),c=(0,q.useMemo)(()=>e.draft?{id:e.threadId,environmentId:e.environmentId,projectId:e.draft.projectId,title:e.title,interactionMode:Dt,session:null,createdAt:e.draft.createdAt,archivedAt:null,settledOverride:null,settledAt:null,latestTurn:null,branch:null,worktreePath:null,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1,draftId:e.draft.draftId}:null,[e.draft,e.environmentId,e.threadId,e.title]),l=s??c,d=(0,q.useRef)(new Map);d.current=(0,q.useMemo)(()=>new Map(l?[[a,l]]:[]),[l,a]);let f=Fl({sidebarThreadByKeyRef:d,memberProjectByScopedKey:SJ,projectCwd:e.projectCwd}),p=l?f.listThreadMenuActions(a):[],m=e.sessionTabs.length>0&&e.onSelectSessionTab!==null,h=[{id:`find`,label:`Find in thread`,icon:(0,Y.jsx)(Ia,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenFindInThread},...e.onOpenSourceControl?[{id:`source-control`,label:`Source control`,...e.branch===null?{}:{value:e.branch},icon:(0,Y.jsx)(ui,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:e.onOpenSourceControl}]:[],...m?[{id:`sessions`,label:`Sessions`,value:String(e.sessionTabs.length),icon:(0,Y.jsx)(Bs,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),onSelect:()=>i(!0)}]:[]];return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`mb-1.5 flex min-w-0 items-center gap-1.5`,"data-slot":`phone-thread-dock`,children:[(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Toggle workspace panel`,"aria-pressed":e.workspacePanelOpen,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring aria-pressed:bg-accent aria-pressed:text-foreground`,onClick:e.onToggleWorkspacePanel,children:(0,Y.jsx)(od,{"aria-hidden":!0,className:`size-4`})}),(0,Y.jsx)(bJ,{label:`Thread context`,items:h,className:`w-0 grow`}),(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Thread actions`,className:`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,onClick:()=>n(!0),children:(0,Y.jsx)(as,{"aria-hidden":!0,className:`size-4`})})]}),(0,Y.jsx)(Nl,{open:t,onOpenChange:n,title:e.title,items:p,onAction:t=>{f.performThreadMenuAction(_(e.environmentId,e.threadId),t)},leadingSections:s?(0,Y.jsx)(Ya,{thread:s}):void 0}),(0,Y.jsxs)(wl,{open:r,onOpenChange:i,label:`Sessions in this worktree`,detent:`medium`,children:[(0,Y.jsx)(yl,{children:(0,Y.jsx)(xl,{children:`Sessions`})}),(0,Y.jsx)(_l,{children:(0,Y.jsx)(`div`,{role:`group`,"aria-label":`Sessions in this worktree`,className:`space-y-0.5`,children:e.sessionTabs.map(t=>(0,Y.jsx)(Cl,{label:t.title,selected:t.key===e.activeSessionTabKey,trailing:t.key===e.activeSessionTabKey?(0,Y.jsx)(Yn,{"aria-hidden":!0,className:`size-4 shrink-0`}):void 0,onClick:()=>{i(!1),e.onSelectSessionTab?.(t.key)}},t.key))})})]}),(0,Y.jsx)(Pl,{renamingThreadKey:f.renamingThreadKey,originalTitle:s?.title??e.title,renamingTitle:f.renamingTitle,setRenamingTitle:f.setRenamingTitle,commitRename:f.commitRename,cancelRename:f.cancelRename})]})}function wJ(e){return!0}var TJ=`${Math.round(O/1048576)}MB`,EJ=`${Math.round(F/1048576)}MB`,DJ=`${Math.round(R/1048576)}MB`,OJ=` `;function kJ(e){let t=Math.min(e,F);return t%1048576==0?`${Math.round(t/1048576)}MB`:`${Math.round(t/1024)}KB`}async function AJ(e){let t=new Uint8Array(await e.arrayBuffer()),n=``,r=32768;for(let e=0;e<t.length;e+=r)n+=String.fromCharCode(...t.subarray(e,e+r));return btoa(n)}function jJ(e){if(e.fileUploadMaxBytes!==null||wJ(e.selectedProvider))return{direct:[...e.files],references:[]};let t=[],n=[];for(let r of e.files)r.type.startsWith(`image/`)?t.push(r):n.push(r);return{direct:t,references:n}}function MJ(e){let{composerDraftTarget:t,environmentId:n,activeThreadId:r,draftId:i,routeThreadRef:a,runtimeMode:o,selectedProvider:s,gitCwd:c,pendingUserInputCount:l,composerImagesRef:u,editorRef:d,setThreadError:f,focusComposer:m}=e,h=Sn(n),g=h!==null&&Un(n)!==null?h:null,_=Rr(e=>e.addImage),v=Rr(e=>e.addImages),y=Rr(e=>e.removeImage),b=Rr(e=>e.getDraftSession),[x,S]=(0,q.useState)(!1),C=(0,q.useRef)(0);(0,q.useEffect)(()=>{C.current=0,S(!1)},[i,r]);let w=(0,q.useCallback)(e=>{_(t,e)},[t,_]),T=(0,q.useCallback)(e=>{v(t,e)},[t,v]),E=(0,q.useCallback)(e=>{y(t,e)},[t,y]),D=(0,q.useCallback)(()=>typeof t==`string`?(i?b(i)?.threadId:null)??a.threadId:t.threadId,[t,i,b,a]),k=(0,q.useCallback)((e,t)=>{if(g===null)return;let r=D();r&&hn.enqueue({attachmentId:t,threadId:r,environmentId:n,name:e.name||`file`,mimeType:e.type||`application/octet-stream`,sizeBytes:e.size,readBytes:async()=>new Uint8Array(await e.arrayBuffer())})},[n,g,D]),A=(0,q.useCallback)(e=>{if(!r||e.length===0)return;if(l>0){Ve.add({type:`error`,title:`Attach files after answering plan questions.`});return}let t=[],n=u.current.length,i=u.current.reduce((e,t)=>e+t.sizeBytes,0),a=null;for(let r of e){let e=r.type.startsWith(`image/`),o=r.name||(e?`image`:`file`);if(!/^[^/\\\p{Cc}]+$/u.test(o)){a=`'${o}' has an unsafe filename. Rename it without path separators or control characters.`;continue}let s=!e&&g!==null,c=e?O:s?Math.min(g,F):F,l=e?TJ:s?kJ(g):`${Math.round(F/1048576)}MB`;if(r.size<=0||r.size>c){a=`'${o}' must be non-empty and no larger than the ${l} attachment limit.`;continue}if(n>=8){a=`You can attach up to 8 files per message.`;break}if(i+r.size>52428800){a=`Attachments can total at most ${EJ} per message.`;continue}let u=Zt(),d=e?URL.createObjectURL(r):``;t.push({type:e?`image`:`file`,id:u,name:o,mimeType:r.type||`application/octet-stream`,sizeBytes:r.size,previewUrl:d,file:r}),s&&k(r,u),n+=1,i+=r.size}t.length===1&&t[0]?w(t[0]):t.length>1&&T(t),f(r,a)},[r,w,T,u,k,g,l,f]),j=(0,q.useCallback)(e=>{if(e.length===0)return;let t=d.current;if(!t)return;let n=t.readSnapshot(),r=e.join(OJ),i=n.value[n.cursor-1]??``,a=n.value[n.cursor]??``,o=i.length>0&&!/\s/.test(i),s=a.length>0&&!/\s/.test(a);t.insertTextAndFocus(`${o?OJ:``}${r}${s?OJ:``}`)},[d]),M=(0,q.useCallback)(()=>{let e=p();return window.desktopBridge!==void 0&&e?.source===`desktop-managed`&&e.environmentId===n},[n]),N=(0,q.useCallback)(async e=>{if(!c)return Ve.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`No active workspace is available for this composer.`}),null;if(e.size>10485760)return Ve.add({type:`error`,title:`'${e.name||`file`}' exceeds the ${DJ} file staging limit.`}),null;let t=Dr(n);if(!t)return Ve.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:`The active environment is not connected.`}),null;try{return(await t.projects.stageFileReference({cwd:c,scopeId:String(r??i??a.threadId),name:e.name||`file`,...e.type?{mimeType:e.type}:{},sizeBytes:e.size,dataBase64:await AJ(e)})).relativePath}catch(t){return Ve.add({type:`error`,title:`Couldn't stage '${e.name||`file`}'.`,description:t instanceof Error?t.message:`File staging failed.`}),null}},[r,i,n,c,a.threadId]),P=(0,q.useCallback)(async e=>{let t=null;try{t=await Cn()?.shell.getPathForFile?.(e)??null}catch{t=null}return ur({resolvedPath:t,cwd:c,runtimeMode:o,isLocalDesktopEnvironment:M()})?t:N(e)},[c,M,o,N]),I=(0,q.useCallback)(async e=>{if(e.length===0)return;let{direct:t,references:n}=jJ({fileUploadMaxBytes:g,selectedProvider:s,files:e});if(t.length>0&&A(t),n.length===0)return;let r=(await Promise.all(n.map(async e=>{let t=await P(e);return t?Xt(t):null}))).filter(e=>e!==null);j(r)},[A,g,j,P,s]);return{isDragOverComposer:x,addComposerAttachments:I,removeComposerImage:(0,q.useCallback)(e=>{hn.release(e),E(e)},[E]),retryComposerFileUpload:(0,q.useCallback)(e=>{hn.retry(e)},[]),onComposerPaste:(0,q.useCallback)(e=>{let t=Array.from(e.clipboardData.files);t.length!==0&&(e.preventDefault(),I(t))},[I]),onComposerDragEnter:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),C.current+=1,S(!0))},[]),onComposerDragOver:(0,q.useCallback)(e=>{e.dataTransfer.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`,S(!0))},[]),onComposerDragLeave:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault();let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||(C.current=Math.max(0,C.current-1),C.current===0&&S(!1))},[]),onComposerDrop:(0,q.useCallback)(e=>{if(!e.dataTransfer.types.includes(`Files`))return;e.preventDefault(),C.current=0,S(!1);let t=Array.from(e.dataTransfer.files),n=jJ({fileUploadMaxBytes:g,selectedProvider:s,files:t}).references.length>0;I(t),n||m()},[I,g,m,s])}}function NJ(){let e=new Map;return{getItem:t=>e.get(t)??null,setItem:(t,n)=>{e.set(t,n)},removeItem:t=>{e.delete(t)}}}function PJ(){try{return typeof window>`u`?null:window.localStorage}catch{return null}}function FJ(e){let t=e.memoryStorage??NJ(),n=e.hosted??!1,r,i=()=>{if(n)return null;if(r!==void 0)return r;try{r=(e.getDurableStorage??PJ)()}catch{r=null}return r||(n=!0),r},a=()=>{try{return t.getItem(jt)}catch{return null}};return{read:()=>{let e=i();if(e)try{return e.getItem(jt)}catch{n=!0}return a()},write:e=>{let r=JSON.stringify({entries:e}),a=i();if(a)try{return a.setItem(jt,r),{written:!0,durable:!0}}catch{n=!0}try{return t.setItem(jt,r),{written:!0,durable:!1}}catch{return{written:!1,durable:!1}}},remove:()=>{let e=i();if(e)try{return e.removeItem(jt),{durable:!0}}catch{n=!0}try{t.removeItem(jt)}catch{}return{durable:!1}}}}function IJ(e={}){let t=FJ(e),n=l()((e,n)=>({entries:[],hydrate:()=>{let n=t.read();if(typeof n!=`string`||n.length===0){e({entries:[]});return}try{let t=JSON.parse(n);e({entries:Nt(t).entries})}catch{t.remove(),e({entries:[]})}},getEntries:()=>n().entries,getCount:()=>n().entries.length,stashEntry:r=>{if(!S(Ot)(r))return{evicted:null,written:!1,durable:!1};let i=n().entries,a=ae([r,...i]),o=a.kept.slice(1),s=a.evicted[0]??null,c=rt(r.attachments,un(o)),l=[{...r,attachments:c.kept,droppedImageNames:[...r.droppedImageNames,...c.droppedNames]},...o],u=t.write(l);return u.written?(e({entries:l}),{evicted:s,...u}):{evicted:null,...u}},takeEntry:r=>{let i=n().entries,a=i.find(e=>e.id===r)??null;if(!a)return{entry:null,durable:!0};let o=i.filter(e=>e.id!==r),s=t.write(o);return e({entries:o}),{entry:a,durable:s.durable}},finalizeEntryImages:(r,i)=>{let a=n().entries,o=a.findIndex(e=>e.id===r),s=o<0?void 0:a[o];if(!s)return{attached:!1,written:!0,durable:!0};let c=rt(i.attachments,un(a,r)),l=[...a];l[o]={...s,attachments:c.kept,droppedImageNames:[...i.droppedImageNames,...c.droppedNames],unreadableImageNames:[...i.unreadableImageNames],pendingImageCount:0};let u=t.write(l);return u.written?(e({entries:l}),{attached:!0,...u}):{attached:!1,...u}}}));return n.getState().hydrate(),n}var LJ=IJ({hosted:g()}),RJ=-64;function zJ({hostRef:e}){let t=(0,q.useId)().replace(/[^a-zA-Z0-9_-]/g,``),[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(!1),[o,s]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{Il()&&(r(!0),a(zl()))},[]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n||!i)return;let a=Vl(t);a.setScale(RJ),Ll().appendChild(a.filter);let o=0,c=0,l=null,u=!1,d=()=>{o=0;let e=r.offsetWidth,t=r.offsetHeight;if(e<24||t<24)return;let n=++c;Bl({width:e,height:t,radius:22,edgeBandPx:36}).then(r=>{if(!r)return;if(u||n!==c){r.release();return}let i=mc();a.setMap(r.url,e,t),l?.release(),l=r,s(!0),pc(`web.liquid-glass.apply`,{durationMs:Math.max(0,mc()-i)})})},f=new ResizeObserver(()=>{o||=window.requestAnimationFrame(d)});return f.observe(r),d(),()=>{u=!0,c+=1,f.disconnect(),o&&window.cancelAnimationFrame(o),l?.release(),a.filter.remove(),s(!1)}},[n,i,t,e]),(0,q.useEffect)(()=>{let r=e.current;if(!r||!n)return;r.setAttribute(`data-liquid-glass`,`true`);let a=i&&o?`url(#${t}) blur(10px) saturate(185%)`:`blur(24px) saturate(185%)`;return r.style.setProperty(`--composer-liquid-backdrop`,a),()=>{r.removeAttribute(`data-liquid-glass`),r.style.removeProperty(`--composer-liquid-backdrop`)}},[n,i,o,t,e]),(0,q.useEffect)(()=>{let t=e.current;if(t&&n)return Rl(t)},[n,e]),n?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-sheen`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring`}),(0,Y.jsx)(`div`,{"aria-hidden":`true`,className:`liquid-glass-ring liquid-glass-ring--overlay`})]}):null}var BJ=(0,q.memo)(function(e){let t=(0,J.c)(11);if(e.count===0)return null;let n=`Stashed prompts: ${e.count}. Open stash.`,r=e.open,i=e.open?`border-border text-foreground opacity-100`:`border-border/70 text-muted-foreground opacity-75 hover:text-foreground hover:opacity-100`,a;t[0]===i?a=t[1]:(a=G(`absolute -top-3 right-4 z-20 inline-flex cursor-pointer items-center gap-1.5 rounded-full border bg-popover px-2.5 py-0.5 text-xs shadow-sm`,`transition-[color,border-color,opacity] duration-200 motion-reduce:transition-none`,i),t[0]=i,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(bu,{className:`size-3`,"aria-hidden":`true`}),t[2]=o):o=t[2];let s;t[3]===e.count?s=t[4]:(s=(0,Y.jsx)(`span`,{className:`rounded-full bg-muted px-1.5 text-[10px] font-medium tabular-nums text-muted-foreground`,children:e.count}),t[3]=e.count,t[4]=s);let c;return t[5]!==e.onToggle||t[6]!==e.open||t[7]!==n||t[8]!==a||t[9]!==s?(c=(0,Y.jsxs)(`button`,{type:`button`,"data-prompt-stash-badge":`true`,"aria-label":n,"aria-expanded":r,className:a,onPointerDown:VJ,onClick:e.onToggle,children:[o,`Stash`,s]}),t[5]=e.onToggle,t[6]=e.open,t[7]=n,t[8]=a,t[9]=s,t[10]=c):c=t[10],c});function VJ(e){return e.preventDefault()}var HJ=100;function UJ(e){let t=e.prompt.trim().replace(/\s+/g,` `);if(t.length>0)return t.length>HJ?`${t.slice(0,HJ)}…`:t;let n=e.attachments.length+e.pendingImageCount+e.droppedImageNames.length+e.unreadableImageNames.length;return n===1?`(1 image)`:`(${n} images)`}function WJ(e){return e.droppedImageNames.length+e.unreadableImageNames.length}function GJ(e){return e instanceof Element&&e.closest(`button, a, input, select, textarea, [contenteditable], [role=button]`)!==null}var KJ=(0,q.memo)(function(e){let t=(0,J.c)(28),n=$s(),{entries:r,onRestore:i,onDelete:a,onClose:o}=e,[s,c]=(0,q.useState)(r[0]?.id??null),l=(0,q.useRef)(null),u=(0,q.useRef)(null),d;t[0]!==r||t[1]!==s?(d=r.find(e=>e.id===s)??r[0]??null,t[0]=r,t[1]=s,t[2]=d):d=t[2];let f=d,p,m;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(p=()=>{l.current?.focus()},m=[],t[3]=p,t[4]=m):(p=t[3],m=t[4]),Vs(p,m);let h,g;t[5]!==f||t[6]!==s?(h=()=>{if(!f){c(null);return}f.id!==s&&c(f.id)},g=[f,s],t[5]=f,t[6]=s,t[7]=h,t[8]=g):(h=t[7],g=t[8]),(0,q.useEffect)(h,g);let _,v;t[9]===s?(_=t[10],v=t[11]):(_=()=>{s&&u.current&&u.current.querySelector(`[data-prompt-stash-row="${CSS.escape(s)}"]`)?.scrollIntoView({block:`nearest`})},v=[s],t[9]=s,t[10]=_,t[11]=v),(0,q.useEffect)(_,v);let y,b;if(t[12]!==r||t[13]!==o||t[14]!==a||t[15]!==i||t[16]!==f||t[17]!==s?(y=()=>{let e=e=>{if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),o();return}if(l.current?.contains(document.activeElement)){if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(r.length===0)return;e.preventDefault(),e.stopPropagation();let t=r.findIndex(e=>e.id===s),n=e.key===`ArrowDown`?1:-1,i=((t>=0?t:n>0?-1:0)+n+r.length)%r.length;c(r[i]?.id??null);return}if(e.key===`Enter`){if(GJ(e.target)||!f)return;e.preventDefault(),e.stopPropagation(),i(f.id);return}e.key===`Backspace`&&(e.metaKey||e.ctrlKey)&&!e.altKey&&!e.shiftKey&&f&&(e.preventDefault(),e.stopPropagation(),a(f.id))}};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},b=[r,o,a,i,f,s],t[12]=r,t[13]=o,t[14]=a,t[15]=i,t[16]=f,t[17]=s,t[18]=y,t[19]=b):(y=t[18],b=t[19]),Vs(y,b),!n)return null;let x;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsxs)(cs,{className:`flex items-center gap-1.5 px-3 pt-2 pb-1 text-[10px] font-semibold uppercase tracking-[0.08em] text-muted-foreground/55`,children:[(0,Y.jsx)(bu,{className:`size-3`,"aria-hidden":`true`}),`Stashed prompts`]}),t[20]=x):x=t[20];let S;t[21]!==r||t[22]!==a||t[23]!==i||t[24]!==s?(S=r.length===0?(0,Y.jsx)(`p`,{className:`px-3 pt-1 pb-3 text-xs text-muted-foreground/70`,children:`Nothing stashed yet. Use the stash shortcut with a prompt or image to save it.`}):r.map(e=>{let t=WJ(e);return(0,Y.jsxs)(ss,{value:e.id,"data-prompt-stash-row":e.id,className:G(`group/stash cursor-pointer select-none gap-2 hover:bg-transparent hover:text-inherit data-highlighted:bg-transparent data-highlighted:text-inherit`,s===e.id&&`bg-accent! text-accent-foreground!`),onMouseMove:()=>c(e.id),onMouseDown:qJ,onClick:t=>{GJ(t.target)||i(e.id)},children:[e.attachments.length>0?(0,Y.jsx)(`span`,{className:`-space-x-1.5 flex shrink-0 items-center`,children:e.attachments.slice(0,3).map(JJ)}):(0,Y.jsx)(bu,{className:`size-4 shrink-0 text-muted-foreground/60`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:UJ(e)}),e.pendingImageCount>0?(0,Y.jsxs)(`span`,{"data-prompt-stash-pending":`true`,className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[`saving `,e.pendingImageCount,` image`,e.pendingImageCount===1?``:`s`,`…`]}):t>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-amber-600`,children:[t,` image`,t===1?``:`s`,` not saved`]}):e.attachments.length>0?(0,Y.jsxs)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/65`,children:[e.attachments.length,` image`,e.attachments.length===1?``:`s`]}):null,(0,Y.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground/60`,children:Va(e.createdAt)}),(0,Y.jsx)(W,{variant:`ghost`,size:`icon-xs`,"data-prompt-stash-delete":e.id,className:`shrink-0 opacity-55 transition-opacity motion-reduce:transition-none group-hover/stash:opacity-100 focus:opacity-100`,"aria-label":`Delete stashed prompt: ${UJ(e)}`,onClick:t=>{t.stopPropagation(),a(e.id)},children:(0,Y.jsx)(es,{})})]},e.id)}),t[21]=r,t[22]=a,t[23]=i,t[24]=s,t[25]=S):S=t[25];let C;return t[26]===S?C=t[27]:(C=(0,Y.jsx)(`div`,{ref:l,role:`region`,"aria-label":`Stashed prompts`,tabIndex:-1,"data-prompt-stash-picker":`true`,className:`absolute right-0 bottom-[calc(100%+0.75rem)] z-30 w-[min(28rem,calc(100vw-2rem))]`,children:(0,Y.jsx)(is,{autoHighlight:!1,mode:`none`,children:(0,Y.jsx)(`div`,{className:`app-surface relative overflow-hidden rounded-xl border border-border/80 bg-popover/96 shadow-lg/8 backdrop-blur-xs`,children:(0,Y.jsx)(ls,{ref:u,className:`max-h-72`,children:(0,Y.jsxs)(Zo,{children:[x,S]})})})})}),t[26]=S,t[27]=C),C});function qJ(e){GJ(e.target)||e.preventDefault()}function JJ(e){return(0,Y.jsx)(`img`,{src:e.dataUrl,alt:``,"aria-hidden":`true`,className:`size-6 rounded border border-border/70 object-cover`},e.id)}var YJ=(0,q.memo)(function(e){let t=(0,J.c)(18),n;t[0]===e.source?n=t[1]:(n=ws(e.source),t[0]=e.source,t[1]=n);let r;t[2]===e.target?r=t[3]:(r=ws(e.target),t[2]=e.target,t[3]=r);let i=`Next message will hand off context from ${n} to ${r}`,a,o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(vu,{className:`size-3.5 shrink-0`,"aria-hidden":!0}),o=(0,Y.jsx)(`span`,{className:`shrink-0 font-medium`,children:`Next message hands off context`}),s=(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,"aria-hidden":!0,children:`·`}),t[4]=a,t[5]=o,t[6]=s):(a=t[4],o=t[5],s=t[6]);let c;t[7]===e.source?c=t[8]:(c=(0,Y.jsx)(Es,{endpoint:e.source,className:`max-w-32 sm:max-w-44`}),t[7]=e.source,t[8]=c);let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsx)(Wo,{className:`size-3.5 shrink-0 text-muted-foreground/55`,"aria-hidden":!0}),t[9]=l):l=t[9];let u;t[10]===e.target?u=t[11]:(u=(0,Y.jsx)(Es,{endpoint:e.target,className:`max-w-32 font-medium text-foreground/85 sm:max-w-44`}),t[10]=e.target,t[11]=u);let d;return t[12]!==i||t[13]!==e.source.providerInstanceId||t[14]!==e.target.providerInstanceId||t[15]!==c||t[16]!==u?(d=(0,Y.jsxs)(`div`,{role:`status`,"aria-label":i,title:i,"data-pending-context-handoff":`true`,"data-pending-context-handoff-source":e.source.providerInstanceId,"data-pending-context-handoff-target":e.target.providerInstanceId,className:`inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-[11px] leading-4 text-muted-foreground shadow-sm backdrop-blur-xs`,children:[a,o,s,c,l,u]}),t[12]=i,t[13]=e.source.providerInstanceId,t[14]=e.target.providerInstanceId,t[15]=c,t[16]=u,t[17]=d):d=t[17],d}),XJ={active:`Pursuing goal`,paused:`Goal paused`,blocked:`Goal blocked`,usageLimited:`Usage limit reached`,budgetLimited:`Goal budget reached`,complete:`Goal achieved`};function ZJ(e,t,n,r){let i=e.status===`active`&&r&&e.synchronization===void 0?Math.max(0,Math.floor((t-n)/1e3)):0;return e.timeUsedSeconds+i}function QJ(e){let t=Math.floor(e/3600),n=Math.floor(e%3600/60),r=e%60;return t>0?`${t}:${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}`:`${n}:${String(r).padStart(2,`0`)}`}var $J=new Intl.NumberFormat(void 0,{notation:`compact`});function eY(e){let t=(0,J.c)(7),n=e.label,r=e.label,i=e.onClick,a=e.destructive&&`hover:text-destructive`,o;t[0]===a?o=t[1]:(o=G(`inline-flex size-7 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:bg-background/75 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,a),t[0]=a,t[1]=o);let s;return t[2]!==e.children||t[3]!==e.label||t[4]!==e.onClick||t[5]!==o?(s=(0,Y.jsx)(`button`,{type:`button`,"aria-label":n,title:r,onClick:i,className:o,children:e.children}),t[2]=e.children,t[3]=e.label,t[4]=e.onClick,t[5]=o,t[6]=s):s=t[6],s}var tY=(0,q.memo)(function(e){let t=(0,J.c)(89),[n,r]=(0,q.useState)(!1),i;t[0]===e.goal.tokenBudget?i=t[1]:(i=()=>e.goal.tokenBudget?.toString()??``,t[0]=e.goal.tokenBudget,t[1]=i);let[a,o]=(0,q.useState)(i),[s,c]=(0,q.useState)(null),l,u;t[2]===e.goal.tokenBudget?(l=t[3],u=t[4]):(l=()=>o(e.goal.tokenBudget?.toString()??``),u=[e.goal.tokenBudget],t[2]=e.goal.tokenBudget,t[3]=l,t[4]=u),(0,q.useEffect)(l,u);let d=e.goal.synchronization,f=d?.state===`pending`,p=d?.state===`unsupported`,[m,h]=(0,q.useState)(nY),[g,_]=(0,q.useState)(rY),v;t[5]!==e.goal.status||t[6]!==e.isRunning?(v=()=>{if(_(Date.now()),e.goal.status!==`active`||!e.isRunning)return;h(Date.now());let t=window.setInterval(()=>h(Date.now()),1e3);return()=>window.clearInterval(t)},t[5]=e.goal.status,t[6]=e.isRunning,t[7]=v):v=t[7];let y;t[8]!==e.goal.status||t[9]!==e.goal.updatedAt||t[10]!==e.isRunning?(y=[e.goal.status,e.goal.updatedAt,e.isRunning],t[8]=e.goal.status,t[9]=e.goal.updatedAt,t[10]=e.isRunning,t[11]=y):y=t[11],(0,q.useEffect)(v,y);let b=e.goal.status===`paused`||e.goal.status===`blocked`||e.goal.status===`usageLimited`||e.goal.status===`budgetLimited`,x=e.goal.status===`complete`,S=e.goal.status===`active`&&`border-primary/30 text-primary`,C=x&&`border-emerald-500/30 text-emerald-600 dark:text-emerald-400`,w;t[12]!==S||t[13]!==C?(w=G(`mt-0.5 inline-flex size-7 shrink-0 items-center justify-center rounded-full border border-border/60 bg-background/55 text-muted-foreground`,S,C),t[12]=S,t[13]=C,t[14]=w):w=t[14];let T;t[15]===x?T=t[16]:(T=x?(0,Y.jsx)(zr,{className:`size-3.5`}):(0,Y.jsx)(fd,{className:`size-3.5`}),t[15]=x,t[16]=T);let E;t[17]!==w||t[18]!==T?(E=(0,Y.jsx)(`div`,{className:w,children:T}),t[17]=w,t[18]=T,t[19]=E):E=t[19];let D;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(D=()=>r(iY),t[20]=D):D=t[20];let O=f?`Updating goal…`:d?.state===`failed`?`Goal change failed`:p&&e.goal.status===`active`?`Goal reminder`:XJ[e.goal.status],k;t[21]!==m||t[22]!==e.goal||t[23]!==e.isRunning||t[24]!==g?(k=QJ(ZJ(e.goal,m,g,e.isRunning)),t[21]=m,t[22]=e.goal,t[23]=e.isRunning,t[24]=g,t[25]=k):k=t[25];let A;t[26]===k?A=t[27]:(A=(0,Y.jsx)(`span`,{className:`font-mono font-normal tracking-normal normal-case`,children:k}),t[26]=k,t[27]=A);let j;t[28]!==e.goal.tokenBudget||t[29]!==e.goal.tokensUsed||t[30]!==p?(j=p?null:(0,Y.jsxs)(`span`,{className:`font-normal tracking-normal normal-case`,children:[$J.format(e.goal.tokensUsed),e.goal.tokenBudget===null?``:` / ${$J.format(e.goal.tokenBudget)}`,` `,`tokens`]}),t[28]=e.goal.tokenBudget,t[29]=e.goal.tokensUsed,t[30]=p,t[31]=j):j=t[31];let M;t[32]!==O||t[33]!==A||t[34]!==j?(M=(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-[11px] font-medium tracking-wide text-muted-foreground uppercase`,children:[O,A,j]}),t[32]=O,t[33]=A,t[34]=j,t[35]=M):M=t[35];let N=!n&&`line-clamp-2`,P;t[36]===N?P=t[37]:(P=G(`mt-0.5 block text-sm leading-5 text-foreground/90`,N),t[36]=N,t[37]=P);let F;t[38]!==e.goal.objective||t[39]!==P?(F=(0,Y.jsx)(`span`,{className:P,children:e.goal.objective}),t[38]=e.goal.objective,t[39]=P,t[40]=F):F=t[40];let I;t[41]!==n||t[42]!==M||t[43]!==F?(I=(0,Y.jsxs)(`button`,{type:`button`,className:`min-w-0 flex-1 text-left focus-visible:outline-none`,onClick:D,"aria-expanded":n,children:[M,F]}),t[41]=n,t[42]=M,t[43]=F,t[44]=I):I=t[44];let L;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,Y.jsx)(xa,{className:`size-3.5`}),t[45]=L):L=t[45];let R;t[46]===e.onEdit?R=t[47]:(R=(0,Y.jsx)(eY,{label:`Edit goal`,onClick:e.onEdit,children:L}),t[46]=e.onEdit,t[47]=R);let z;t[48]!==b||t[49]!==e?(z=e.goal.status===`active`?(0,Y.jsx)(eY,{label:`Pause goal`,onClick:()=>e.onStatusChange(`paused`),children:(0,Y.jsx)(tc,{className:`size-3.5`})}):b?(0,Y.jsx)(eY,{label:`Resume goal`,onClick:()=>e.onStatusChange(`active`),children:(0,Y.jsx)(nc,{className:`size-3.5`})}):null,t[48]=b,t[49]=e,t[50]=z):z=t[50];let ee;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,Y.jsx)(es,{className:`size-3.5`}),t[51]=ee):ee=t[51];let te;t[52]===e.onClear?te=t[53]:(te=(0,Y.jsx)(eY,{label:`Clear goal`,destructive:!0,onClick:e.onClear,children:ee}),t[52]=e.onClear,t[53]=te);let B=n&&`rotate-180`,ne;t[54]===B?ne=t[55]:(ne=G(`mt-1 size-3.5 text-muted-foreground/60 transition-transform`,B),t[54]=B,t[55]=ne);let re;t[56]===ne?re=t[57]:(re=(0,Y.jsx)(fr,{"aria-hidden":!0,className:ne}),t[56]=ne,t[57]=re);let ie;t[58]!==f||t[59]!==R||t[60]!==z||t[61]!==te||t[62]!==re?(ie=(0,Y.jsxs)(`fieldset`,{disabled:f,className:`flex shrink-0 items-center gap-0.5 disabled:opacity-50`,children:[R,z,te,re]}),t[58]=f,t[59]=R,t[60]=z,t[61]=te,t[62]=re,t[63]=ie):ie=t[63];let V;t[64]!==I||t[65]!==ie||t[66]!==E?(V=(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2.5`,children:[E,I,ie]}),t[64]=I,t[65]=ie,t[66]=E,t[67]=V):V=t[67];let ae;t[68]!==f||t[69]!==e.onRetry?(ae=f?(0,Y.jsxs)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:[`Waiting for provider confirmation.`,` `,(0,Y.jsx)(`button`,{type:`button`,onClick:e.onRetry,className:`underline`,children:`Retry`})]}):null,t[68]=f,t[69]=e.onRetry,t[70]=ae):ae=t[70];let H;t[71]!==e.onRetry||t[72]!==d?(H=d?.state===`failed`?(0,Y.jsxs)(`p`,{role:`alert`,className:`mt-2 text-xs text-destructive`,children:[d.error,` `,(0,Y.jsx)(`button`,{type:`button`,onClick:e.onRetry,className:`ml-2 underline`,children:`Retry`})]}):null,t[71]=e.onRetry,t[72]=d,t[73]=H):H=t[73];let U;t[74]===p?U=t[75]:(U=p?(0,Y.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:`While active, this provider receives the goal with each message. Automatic continuation and goal usage tracking are unavailable.`}):null,t[74]=p,t[75]=U);let oe;t[76]!==a||t[77]!==s||t[78]!==n||t[79]!==f||t[80]!==e||t[81]!==p?(oe=n&&!p?(0,Y.jsxs)(`form`,{className:`mt-3 flex flex-wrap items-center gap-2`,onSubmit:async t=>{t.preventDefault();let n=a.trim()===``?null:Number(a);if(n!==null&&(!Number.isSafeInteger(n)||n<=0)){c(`Enter a positive whole number, or leave blank for no limit.`);return}c(null),await e.onBudgetChange(n)},children:[(0,Y.jsxs)(`label`,{className:`text-xs text-muted-foreground`,children:[`Token budget`,(0,Y.jsx)(`input`,{"aria-label":`Goal token budget`,inputMode:`numeric`,value:a,placeholder:`No limit`,disabled:f,onChange:e=>o(e.target.value),className:`ml-2 w-32 rounded border border-border bg-background px-2 py-1 text-foreground`})]}),(0,Y.jsx)(`button`,{type:`submit`,disabled:f,className:`rounded border border-border px-2 py-1 text-xs`,children:`Save budget`}),s?(0,Y.jsx)(`p`,{role:`alert`,className:`w-full text-xs text-destructive`,children:s}):null,e.goal.status===`budgetLimited`?(0,Y.jsx)(`p`,{className:`w-full text-xs text-muted-foreground`,children:`Increase or remove the budget, then resume the goal.`}):null]}):null,t[76]=a,t[77]=s,t[78]=n,t[79]=f,t[80]=e,t[81]=p,t[82]=oe):oe=t[82];let se;return t[83]!==V||t[84]!==ae||t[85]!==H||t[86]!==U||t[87]!==oe?(se=(0,Y.jsxs)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/25 px-3.5 py-2.5`,children:[V,ae,H,U,oe]}),t[83]=V,t[84]=ae,t[85]=H,t[86]=U,t[87]=oe,t[88]=se):se=t[88],se});function nY(){return Date.now()}function rY(){return Date.now()}function iY(e){return!e}function aY(e){let t=e.providerInstanceEntries.find(t=>t.instanceId===e.selection.instanceId);if(!t)return null;let n=e.modelOptionsByInstance.get(e.selection.instanceId)?.find(t=>t.slug===e.selection.model)??t.models.find(t=>t.slug===e.selection.model);return{providerInstanceId:t.instanceId,driverKind:t.driverKind,providerDisplayName:t.displayName,...t.accentColor?{providerAccentColor:t.accentColor}:{},modelSlug:e.selection.model,...n?{modelDisplayName:Sr(n,{preferShortName:!0})}:{}}}function oY(e){if(!e.threadStarted||e.isPhoneTier||!e.canonicalSelection||!Hr({canonicalSelection:e.canonicalSelection,targetSelection:e.targetSelection}))return null;let t=aY({selection:e.canonicalSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance}),n=aY({selection:e.targetSelection,providerInstanceEntries:e.providerInstanceEntries,modelOptionsByInstance:e.modelOptionsByInstance});return t&&n?{source:t,target:n}:null}var sY=[`[data-slot="popover-popup"]`,`[data-slot="menu-popup"]`,`[data-slot="select-popup"]`,`[data-slot="combobox-popup"]`,`[data-slot="autocomplete-popup"]`].join(`,`),cY=(e,t,n)=>n.endsWith(` `)&&e[t]===` `?t+1:t,lY=(e,t)=>{let n=new Map(e.map(e=>[e.id,e]));return t.flatMap(e=>{let t=n.get(e);return t?[t]:[]})},uY=(e,t)=>e.length===t.length&&e.every((e,n)=>e.id===t[n]);function dY(e){return e.closest(sY)!==null}function fY(e,t){return t.trim().length===0?e:e.length===0?t:`${e}\n\n${t}`}function pY(e){let t=e.slice(0,3),n=e.length>t.length?` and ${e.length-t.length} more`:``;return`${t.join(`, `)}${n}`}function mY(e,t,n){return`${typeof e==`string`?e:`${e.environmentId}:${e.threadId}`}\u0000${t}\u0000${n.map(e=>e.id).join(``)}`}function hY(e){if(typeof URL>`u`||typeof URL.revokeObjectURL!=`function`)return;let t=new Set(Object.values(Rr.getState().draftsByThreadKey).flatMap(e=>e.images.map(e=>e.previewUrl)));for(let n of e)n.previewUrl.startsWith(`blob:`)&&!t.has(n.previewUrl)&&URL.revokeObjectURL(n.previewUrl)}var gY=(0,q.memo)((0,q.forwardRef)(function(e,t){let{composerDraftTarget:n,environmentId:r,routeKind:i,routeThreadRef:a,draftId:o,activeThreadId:s,activeThreadEnvironmentId:c,activeThreadSessionProviderInstanceId:l,activeThreadStarted:u,isServerThread:d,isLocalDraftThread:f,activeThreadGoal:p,phase:m,isConnecting:h,isSendBusy:g,isPreparingWorktree:_,environmentUnavailable:v,activePendingApproval:b,pendingApprovals:x,pendingUserInputs:S,activePendingProgress:C,activePendingResolvedAnswers:w,activePendingIsResponding:T,activePendingDraftAnswers:E,activePendingQuestionIndex:D,respondingRequestIds:O,showPlanFollowUpPrompt:k,activeProposedPlan:j,planSidebarLabel:M,planSidebarOpen:N,runtimeMode:P,interactionMode:F,tokenMode:I,lockedProvider:L,providerStatuses:R,activeThreadModelSelection:z,activeThreadActivities:ee,phoneThreadDock:te,resolvedTheme:B,settings:ne,keybindings:re,terminalOpen:V,gitCwd:ae,promptRef:H,composerImagesRef:U,composerTerminalContextsRef:oe,shouldAutoScrollRef:ce,scheduleStickToBottom:le,onSend:ue,onInterrupt:de,onImplementPlanInNewThread:fe,onRespondToApproval:pe,onSelectActivePendingUserInputOption:me,onAdvanceActivePendingUserInput:ge,onPreviousActivePendingUserInputQuestion:_e,onChangeActivePendingUserInputCustomAnswer:ve,onProviderModelSelect:ye,toggleInteractionMode:be,handleRuntimeModeChange:xe,handleInteractionModeChange:Se,handleTokenModeChange:Ce,togglePlanSidebar:Ee,focusComposer:De,scheduleComposerFocus:Oe,setThreadError:ke,onExpandImage:Ae,onGoalBudgetChange:je,onRetryGoal:Ne,onEditGoal:Pe,onGoalStatusChange:Ie,onClearGoal:Le}=e,Re=ec(),ze=Ck(n),Be=ze.prompt,He=ze.images,Ue=ze.terminalContexts,We=ze.sourceControlContexts,Ge=ze.nonPersistedImageIds,qe=we(),Je=(0,q.useMemo)(()=>(qe.data?.sourceControlProviders??[]).some(e=>e.status===`available`&&(e.auth.status===`authenticated`||e.auth.status===`unknown`)),[qe.data]),Xe=Rr(e=>e.setPrompt),Ze=Rr(e=>e.insertTerminalContext),Qe=Rr(e=>e.removeTerminalContext),$e=Rr(e=>e.setTerminalContexts),et=Rr(e=>e.clearPersistedAttachments),tt=Rr(e=>e.syncPersistedAttachments),nt=Rr(e=>e.clearPromptAndImages),rt=Rr(e=>e.addImages),W=Rr(e=>e.updateImage),it=Rr(e=>e.getComposerDraft),ot=Rr(e=>e.addSourceControlContext),st=Rr(e=>e.removeSourceControlContext),ct=LJ(e=>e.entries),lt=LJ(e=>e.stashEntry),ut=LJ(e=>e.takeEntry),dt=LJ(e=>e.finalizeEntryImages),ft=(0,q.useMemo)(()=>Ye(se(R)),[R]),pt=ze.activeProvider??null,mt=l??z?.instanceId??null,ht=pt??mt,_t=Ke(ft,R,ht)??ie.make(`codex`),yt=L??_t,bt=(0,q.useMemo)(()=>{if(!L)return null;let e=l??z?.instanceId;return e?ft.find(t=>t.instanceId===e)?.continuationGroupKey??null:null},[z?.instanceId,l,L,ft]),xt=(0,q.useMemo)(()=>{let e=L?[z?.instanceId,l]:[ze.activeProvider,l,z?.instanceId];for(let t of e){if(!t)continue;let e=ft.find(e=>e.instanceId===t&&e.enabled);if(e){if(L&&e.driverKind!==L||bt&&e.continuationGroupKey!==bt)continue;return e.instanceId}}if(ht)return A.make(ht);let t=ft.find(e=>e.enabled&&e.driverKind===yt&&(!bt||e.continuationGroupKey===bt));return t?t.instanceId:ft.find(e=>e.enabled)?.instanceId??ft[0]?.instanceId??z?.instanceId??A.make(`codex`)},[l,z?.instanceId,ze.activeProvider,ht,bt,L,ft,yt]),St=Tk({threadRef:n,providers:R,selectedProvider:yt,selectedInstanceId:xt,threadModelSelection:z,settings:ne}),Ct=St.modelOptions,wt=L&&z?.instanceId===xt?z.model:St.selectedModel,Tt=(0,q.useMemo)(()=>ft.find(e=>e.instanceId===xt),[ft,xt]),Et=(0,q.useMemo)(()=>Tt?.snapshot??null,[Tt]),Dt=(0,q.useMemo)(()=>Tt?.models??[],[Tt]),Ot=(0,q.useMemo)(()=>eJ({provider:yt,model:wt,models:Dt,prompt:Be,modelOptions:Ct?.[xt]}),[Ct,Be,xt,wt,yt,Dt]),kt=Ot.promptEffort,At=Ot.modelOptionsForDispatch,jt=vt(e=>e.alwaysUseBuildMode),Mt=xc(),Nt=jt&&Mt!==`phone`,Pt=(0,q.useMemo)(()=>({showInteractionModeToggle:!Nt&&Me(R,yt),askModeSupported:at(R,yt)}),[Nt,R,yt]),Ft=(0,q.useMemo)(()=>nr(xt,wt,At),[xt,wt,At]),It=wt,Lt=(0,q.useMemo)(()=>{let e=new Map;for(let t of ft)e.set(t.instanceId,he(ne,t,t.instanceId===xt?wt:void 0));return e},[ft,xt,wt,ne]),Rt=(0,q.useMemo)(()=>(Lt.get(xt)??[]).some(e=>e.slug===It)?It:ln(It,yt)??It,[Lt,xt,It,yt]),zt=Ot.modelOptionsForDispatch?.find(e=>e.id===`contextWindow`)?.value??null,Vt=Et?.models.find(e=>e.slug===wt)?.maxContextTokens??null,Ht=(0,q.useMemo)(()=>UK(ee??[],typeof zt==`string`?zt:null,Vt),[ee,zt,Vt]),Ut=Et?.rateLimits,[Wt,Gt]=(0,q.useState)(()=>Bt(Be,Be.length)),[qt,Jt]=(0,q.useState)(()=>rr(Be,Be.length)),[Yt,Xt]=(0,q.useState)(null),[Qt,$t]=(0,q.useState)(null),[en,tn]=(0,q.useState)(!1),[nn,rn]=(0,q.useState)(!1),[an,sn]=(0,q.useState)(!1),[cn,un]=(0,q.useState)(!1),[dn,fn]=(0,q.useState)(!1),[pn,hn]=(0,q.useState)(!1),[gn,_n]=(0,q.useState)(!1),vn=Mt===`phone`,yn=vn&&!cn,bn=(0,q.useMemo)(()=>oY({threadStarted:u,isPhoneTier:vn,canonicalSelection:z,targetSelection:Ft,providerInstanceEntries:ft,modelOptionsByInstance:Lt}),[z,u,vn,Lt,ft,Ft]),xn=(0,q.useRef)(null),Sn=(0,q.useRef)(null),Cn=(0,q.useRef)(null),wn=(0,q.useRef)(0),Tn=(0,q.useRef)(!1),Dn=(0,q.useRef)(!1),On=(0,q.useRef)([]),kn=(0,q.useRef)(null),jn=(0,q.useRef)(null),Mn=(0,q.useRef)(new Set),Nn=(0,q.useRef)(new Map),Pn=(0,q.useRef)(()=>{}),Fn=(0,q.useCallback)(e=>{let t=Nn.current.get(e);t&&(Nn.current.delete(e),Mn.current.delete(t.key),hY(t.images))},[]);(0,q.useEffect)(()=>()=>{let e=[...Nn.current.values()];Nn.current.clear(),Mn.current.clear();for(let t of e)hY(t.images)},[]);let In=(0,q.useMemo)(()=>EA({prompt:Be,imageCount:He.length,terminalContexts:Ue,sourceControlContexts:We}),[He.length,We,Ue,Be]),Ln=En(),Rn=dr({attachments:He,nowMs:Date.now()}),zn=Rn,Bn=In.hasSendableContent&&Rn===null;(0,q.useEffect)(()=>{for(let e of He){if(e.type!==`file`)continue;let t=Ln.get(e.id)?.status;t&&t.kind===`uploaded`&&(e.uploadToken!==t.uploadToken||e.expiresAt!==t.expiresAt)&&W(n,e.id,e=>({...e,uploadToken:t.uploadToken,expiresAt:t.expiresAt}))}},[n,He,Ln,W]);let Vn=(0,q.useRef)(new Set);(0,q.useEffect)(()=>{let e=new Set(He.map(e=>e.id)),t=new Set([...Nn.current.values()].flatMap(e=>e.images.map(e=>e.id))),n=new Set([...e,...t]);for(let e of Object.values(Rr.getState().draftsByThreadKey))for(let t of e.images)n.add(t.id);Jn(Vn.current,n),Vn.current=e},[He]);let Hn=qt?.kind??null,{composerMenuItems:Un,composerMenuOpen:Wn,composerMenuSearchKey:Gn,activeComposerMenuItem:Kn,isComposerMenuLoading:Yn,composerMenuEmptyState:Xn}=Tq({composerTrigger:qt,environmentId:r,gitCwd:ae,selectedProvider:yt,selectedProviderStatus:Et,composerHighlightedItemId:Yt,composerHighlightedSearchKey:Qt});Dn.current=Wn,On.current=Un,kn.current=Kn;let Zn=(0,q.useMemo)(()=>new Set(Ge),[Ge]),Qn=b!==null,$n=S[0]??null,er=!vn&&p!=null&&!Qn&&S.length===0&&!(k&&j!==null),tr=Qn||S.length>0||k&&j!==null||er,ir=yn&&!Qn&&S.length===0,ar=h||Qn||v!==null&&C===null,or=k||C!==null,sr=(0,q.useMemo)(()=>wK({pendingProgress:C,pendingIsResponding:T,phase:m,showPlanFollowUpPrompt:k,promptHasText:Be.trim().length>0,hasSendableContent:Bn,isSendBusy:g,isConnecting:h,isPreparingWorktree:_}),[T,C,Bn,h,_,g,m,Be,k]),cr=(0,q.useCallback)(e=>{if(e===H.current){Oe();return}H.current=e,Xe(n,e);let t=Bt(e,e.length);Gt(t),Jt(rr(e,e.length)),Oe()},[n,H,Oe,Xe]),lr=Rs(y.dispatchCommand),ur=!lr.allowed,fr=lr.reason,pr=tJ({hideAgent:Nt,provider:yt,instanceId:xt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:wt,models:Dt,modelOptions:Ct?.[xt],prompt:Be,onPromptChange:cr,disabled:ur,disabledReason:fr}),mr=nJ({hideAgent:Nt,provider:yt,instanceId:xt,...i===`server`?{threadRef:a}:{},...i===`draft`&&o?{draftId:o}:{},model:wt,models:Dt,modelOptions:Ct?.[xt],prompt:Be,onPromptChange:cr,disabled:ur,disabledReason:fr}),gr=(0,q.useMemo)(()=>C?{questionIndex:C.questionIndex,isLastQuestion:C.isLastQuestion,canAdvance:C.canAdvance,isResponding:T,isComplete:!!w}:null,[T,C,w]),_r=SK({phase:m,isSendBusy:g,isConnecting:h,hasSendableContent:Bn}),vr=vn&&!yn&&gr!==null,yr=(0,q.useCallback)(e=>{Xe(n,e)},[n,Xe]),br=(0,q.useCallback)(e=>{let t=Ue.findIndex(t=>t.id===e);if(t<0)return;let r=hr(H.current,t);H.current=r.prompt,yr(r.prompt),Qe(n,e);let i=Bt(r.prompt,r.cursor);Gt(i),Jt(rr(r.prompt,r.cursor))},[n,Ue,H,Qe,yr]);(0,q.useEffect)(()=>{H.current=Be,Gt(e=>An(Be,e))},[Be,H]),(0,q.useEffect)(()=>{U.current=He},[He,U]),(0,q.useEffect)(()=>{oe.current=Ue},[Ue,oe]),(0,q.useEffect)(()=>{if(!Wn){Xt(null),$t(null);return}let e=pq({items:Un,highlightedItemId:Yt,currentSearchKey:Gn,highlightedSearchKey:Qt});Xt(t=>t===e?t:e),$t(e=>e===Gn?e:Gn)},[Yt,Qt,Un,Wn,Gn]);let xr=(0,q.useRef)(null);(0,q.useEffect)(()=>{let e=C?.customAnswer;if(typeof e!=`string`){xr.current=null;return}let t=$n?.requestId??null,n=C?.activeQuestion?.id??null,r=xr.current?.requestId!==t||xr.current?.questionId!==n,i=H.current!==e;if(xr.current={requestId:t,questionId:n},!r&&!i)return;H.current=e;let a=Bt(e,e.length);Gt(a),Jt(rr(e,Cr(e,a))),Xt(null)},[C?.customAnswer,C?.activeQuestion?.id,$n?.requestId,H]),(0,q.useEffect)(()=>{Xt(null),Gt(Bt(H.current,H.current.length)),Jt(rr(H.current,H.current.length))},[o,s,H]),(0,q.useLayoutEffect)(()=>{let e=Sn.current;if(!e)return;let t=()=>e.clientWidth,n=()=>{let e=t(),n=Aq(e,{hasWideActions:or});return{primaryActionsCompact:n&&jq(e,{hasWideActions:or}),footerCompact:n}};wn.current=e.getBoundingClientRect().height;let r=n();if(rn(r.primaryActionsCompact),tn(r.footerCompact),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(e=>{let[t]=e;if(!t)return;let r=n();rn(e=>e===r.primaryActionsCompact?e:r.primaryActionsCompact),tn(e=>e===r.footerCompact?e:r.footerCompact);let i=t.contentRect.height,a=wn.current;wn.current=i,!(a>0&&Math.abs(i-a)<.5)&&ce.current&&le()});return i.observe(e),()=>{i.disconnect()}},[s,sr,or,le,ce]),(0,q.useEffect)(()=>{let e=!1;return(async()=>{if(He.length===0){et(n);return}let t=()=>it(n)?.persistedAttachments??[];try{let r=t(),i=new Map(r.map(e=>[e.id,e])),a=new Map;await Promise.all(He.map(async e=>{if(e.type===`file`){let t=Ln.get(e.id)?.status;if(t?.kind===`uploaded`){a.set(e.id,{type:`file`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadToken:t.uploadToken,expiresAt:t.expiresAt});return}if(t){a.set(e.id,{type:`file`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadState:`needsReattach`});return}}try{let t=gt(await yd.encode(e));a.set(e.id,{type:e.type,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:t})}catch{let t=i.get(e.id);t&&a.set(e.id,t)}}));let o=Array.from(a.values());if(e)return;tt(n,o)}catch{let r=new Set(He.map(e=>e.id)),i=t(),a=i.map(e=>e.id).filter(e=>r.has(e)),o=new Set(a),s=i.filter(e=>o.has(e.id));if(e)return;tt(n,s)}})(),()=>{e=!0}},[n,et,He,Ln,it,tt]);let Sr=(0,q.useCallback)((e,t,r,i,a)=>{if(C?.activeQuestion&&S.length>0){Gt(t),Jt(i?null:rr(e,r)),ve(C.activeQuestion.id,e,t,r,i);return}H.current=e,yr(e),uY(Ue,a)||$e(n,lY(Ue,a)),Gt(t),Jt(i?null:rr(e,r))},[C?.activeQuestion,S.length,ve,H,yr,n,Ue,$e]),wr=(0,q.useCallback)((e,t,n,r)=>{let i=H.current,a=Math.max(0,Math.min(i.length,e)),o=Math.max(a,Math.min(i.length,t));if(r?.expectedText!==void 0&&i.slice(a,o)!==r.expectedText)return!1;let s=mn(H.current,e,t,n),c=Bt(s.text,s.cursor),l=Cr(s.text,c);H.current=s.text;let u=C?.activeQuestion;return u&&$n?ve(u.id,s.text,c,l,!1):yr(s.text),Gt(c),Jt(rr(s.text,l)),r?.focusEditorAfterReplace!==!1&&window.requestAnimationFrame(()=>{Re.current&&xn.current?.focusAt(c)}),!0},[C?.activeQuestion,$n,ve,H,yr]),Tr=(0,q.useCallback)(()=>xn.current?.readSnapshot()||{value:H.current,cursor:Wt,expandedCursor:Cr(H.current,Wt),terminalContextIds:Ue.map(e=>e.id)},[Wt,Ue,H]),Er=(0,q.useCallback)(()=>{let e=Tr();return{snapshot:e,trigger:rr(e.value,e.expandedCursor)}},[Tr]),{handleSelectIssue:Dr,handleSelectChangeRequest:Or}=Oq({environmentId:r,gitCwd:ae,composerDraftTarget:n,addSourceControlContext:ot}),kr=(0,q.useCallback)(e=>{if(Tn.current)return;Tn.current=!0,window.requestAnimationFrame(()=>{Tn.current=!1});let{snapshot:t,trigger:n}=Er();if(n){if(e.type===`path`){let r=`@${qn(e.path)} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}if(e.type===`slash-command`){if(e.command===`model`){wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd),focusEditorAfterReplace:!1})&&(Xt(null),sn(!0));return}if(e.command===`computer-use`||e.command===`goal`||e.command===`btw`){let r=`/${e.command} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}Se(e.command===`plan`?`plan`:`default`),wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Xt(null);return}if(e.type===`provider-slash-command`){let r=`/${e.command.name} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}if(e.type===`skill`){let r=`$${e.skill.name} `,i=cY(t.value,n.rangeEnd,r);wr(n.rangeStart,i,r,{expectedText:t.value.slice(n.rangeStart,i)})&&Xt(null);return}if(e.type===`source-control-issue`){wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Xt(null),Dr(e.summary);return}if(e.type===`source-control-pr`){wr(n.rangeStart,n.rangeEnd,``,{expectedText:t.value.slice(n.rangeStart,n.rangeEnd)})&&Xt(null),Or(e.summary);return}}},[wr,Se,Dr,Or,Er]),Ar=(0,q.useCallback)(e=>{Xt(e),$t(Gn)},[Gn]),jr=(0,q.useCallback)(e=>{if(Un.length===0)return;let t=Un.findIndex(e=>e.id===Yt),n=((t>=0?t:e===`ArrowDown`?-1:0)+(e===`ArrowDown`?1:-1)+Un.length)%Un.length,r=Un[n];Xt(r?.id??null)},[Yt,Un]),Mr=(0,q.useCallback)(()=>{if(!vn)return;jn.current!==null&&(window.cancelAnimationFrame(jn.current),jn.current=null);let e=document.activeElement;e instanceof HTMLElement&&e.blur(),un(!1)},[vn]),Nr=(0,q.useCallback)(()=>CK({isMobileViewport:vn,isSendBusy:g,isConnecting:h,phase:m,pendingProgress:C,hasResolvedAnswers:!!w,showPlanFollowUpPrompt:k,hasSendableContent:Bn}),[C,w,Bn,h,vn,g,m,k]),Pr=(0,q.useCallback)(e=>{ue(e),Nr()&&Mr()},[Mr,ue,Nr]),Fr=(e,t)=>{if(e===`Tab`&&t.shiftKey)return be(),!0;let{trigger:n}=Er();if(Dn.current||n!==null){let t=On.current,n=kn.current??t[0];if(e===`ArrowDown`&&t.length>0)return jr(`ArrowDown`),!0;if(e===`ArrowUp`&&t.length>0)return jr(`ArrowUp`),!0;if((e===`Enter`||e===`Tab`)&&n)return kr(n),!0}return e===`Enter`&&!t.shiftKey&&(Pr(),!0)},{isDragOverComposer:Ir,addComposerAttachments:Lr,removeComposerImage:K,retryComposerFileUpload:zr,onComposerPaste:Br,onComposerDragEnter:Vr,onComposerDragOver:Hr,onComposerDragLeave:Ur,onComposerDrop:Wr}=MJ({composerDraftTarget:n,environmentId:r,activeThreadId:s,draftId:o,routeThreadRef:a,runtimeMode:P,selectedProvider:yt,gitCwd:ae,pendingUserInputCount:S.length,composerImagesRef:U,editorRef:xn,setThreadError:ke,focusComposer:De}),Gr=(0,q.useCallback)(e=>{st(n,e)},[n,st]),Kr=(0,q.useRef)(null),qr=(0,q.useRef)(null),Jr=(0,q.useCallback)(e=>{qr.current=e,Kr.current?.click()},[]),Yr=(0,q.useCallback)(e=>{let t=e.target.files?.[0];e.target.value=``;let n=qr.current;qr.current=null,t&&(n&&K(n),Lr([t]))},[Lr,K]),Xr=(0,q.useCallback)((e,t)=>{let{entry:r,durable:i}=ut(e);if(!r)return;let a=Nn.current.get(e),o=a!==void 0&&(t?.preferMemorySnapshot===!0||r.pendingImageCount>0),s,c=[];if(o&&a)s=a.images;else{let e=on(r.attachments);s=e.images,c=e.unreadableImageNames}let l=[...U.current],u=new Set(l.map(e=>e.id)),d=new Set(l.map(e=>Kt(e))),f=[],p=[],m=[];for(let e of s){let t=Kt(e);if(u.has(e.id)||d.has(t)){p.push(e.name);continue}if(l.length+f.length>=8){m.push(e.name);continue}f.push(e),u.add(e.id),d.add(t)}let h=H.current,g=fY(h,r.prompt);if(g!==h){H.current=g,yr(g);let e=Bt(g,g.length);Gt(e),Jt(rr(g,g.length))}f.length>0&&(rt(n,f),U.current=[...l,...f]),_n(!1),Fn(e),Oe(),i||Ve.add({type:`warning`,title:`Restored stash may reappear after reload`,description:`The prompt was restored, but browser storage could not save its removal.`,data:{hideCopyButton:!0}});let _=[];!o&&r.unreadableImageNames.length>0&&_.push(`Unreadable while saving: ${pY(r.unreadableImageNames)}.`),!o&&c.length>0&&_.push(`Unreadable while restoring: ${pY(c)}.`),!o&&r.droppedImageNames.length>0&&_.push(`Not saved because the stash image budget was full: ${pY(r.droppedImageNames)}.`),!o&&r.pendingImageCount>0&&_.push(`${r.pendingImageCount} image${r.pendingImageCount===1?` was`:`s were`} still saving and could not be restored.`),p.length>0&&_.push(`Already attached and skipped: ${pY(p)}.`),m.length>0&&_.push(`Not restored because this composer can hold 8 images: ${pY(m)}.`),_.length>0&&Ve.add({type:`warning`,title:`Some stashed images could not be restored`,description:_.join(` `),data:{hideCopyButton:!0}})},[rt,n,U,H,Fn,Oe,yr,ut]),Zr=(0,q.useCallback)(e=>{let{entry:t,durable:n}=ut(e);t&&(Fn(e),n||Ve.add({type:`warning`,title:`Deleted stash may reappear after reload`,description:`Browser storage could not save the deletion.`,data:{hideCopyButton:!0}}))},[Fn,ut]);Pn.current=(0,q.useCallback)(()=>{if(vn||Qn||S.length>0)return;let e=Fe(H.current),t=[...U.current],r=e.trim().length>0?e:``;if(r.length===0&&t.length===0){_n(e=>!e);return}let i=mY(n,r,t);if(Mn.current.has(i))return;Mn.current.add(i);let a=Zt(),o={id:a,createdAt:new Date().toISOString(),prompt:r,attachments:[],droppedImageNames:[],unreadableImageNames:[],pendingImageCount:t.length},s=lt(o);if(!s.written){Mn.current.delete(i),Ve.add(fc({type:`error`,title:`Could not stash this prompt`,description:`Browser storage rejected the stash. The composer was left unchanged.`,data:{hideCopyButton:!0}}));return}Nn.current.set(a,{key:i,images:t}),s.evicted&&Fn(s.evicted.id),nt(n);let c=it(n)?.prompt??``;H.current=c,U.current=[];let l=Bt(c,c.length);Gt(l),Jt(null),Xt(null),_n(!1),Ve.add({type:`success`,title:`Prompt stashed`,description:t.length>0?`Saving ${t.length} image${t.length===1?``:`s`} in the background.`:void 0,actionProps:{children:`Undo`,onClick:()=>Xr(a,{preferMemorySnapshot:!0})},data:{hideCopyButton:!0}}),s.durable||Ve.add({type:`warning`,title:`Stashed prompt will not survive a reload`,description:`Browser storage is unavailable, so this stash is kept in memory for this page session only.`,data:{hideCopyButton:!0}}),s.evicted&&Ve.add({type:`warning`,title:`Oldest stashed prompt discarded`,description:`The stash holds 20 prompts; the oldest was removed.`,data:{hideCopyButton:!0}}),(async()=>{let e=await Promise.all(t.map(async e=>{if(e.type===`file`){let t=Ln.get(e.id)?.status;if(t?.kind===`uploaded`)return{attachment:{type:`file`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,uploadToken:t.uploadToken,expiresAt:t.expiresAt},unreadableName:null}}try{return{attachment:{type:e.type,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,dataUrl:gt(await yd.encode(e))},unreadableName:null}}catch{return{attachment:null,unreadableName:e.name}}})),n=e.flatMap(e=>e.attachment?[e.attachment]:[]),r=e.flatMap(e=>e.unreadableName?[e.unreadableName]:[]),i=dt(a,{attachments:n,droppedImageNames:[],unreadableImageNames:r});if(!i.attached){s.durable&&!i.written&&t.length>0&&Ve.add({type:`warning`,title:`Stashed images were not saved`,description:`The prompt is still stashed, but browser storage rejected its image data.`,data:{hideCopyButton:!0}});return}let o=LJ.getState().entries.find(e=>e.id===a),c=[];o?.unreadableImageNames.length&&c.push(`Could not read: ${pY(o.unreadableImageNames)}.`),o?.droppedImageNames.length&&c.push(`Over the stash image budget: ${pY(o.droppedImageNames)}.`),c.length>0?Ve.add({type:`warning`,title:`Some images were not added to the stash`,description:c.join(` `),data:{hideCopyButton:!0}}):s.durable&&!i.durable&&t.length>0&&Ve.add({type:`warning`,title:`Stashed images will not survive a reload`,description:`The prompt was saved, but browser storage rejected the later image update.`,data:{hideCopyButton:!0}})})().finally(()=>{Fn(a)})},[nt,n,U,Ln,dt,it,Qn,vn,S.length,H,Fn,Xr,lt]),Vs(()=>{let e=e=>{if(e.defaultPrevented||e.isComposing)return;let t=Sn.current!==null&&e.composedPath().includes(Sn.current),n=e.target===window||e.target===document||e.target===document.body;(t||n||!fu(e))&&Gl(e,re,{context:{terminalFocus:No(),terminalOpen:V,modelPickerOpen:an,composerFocus:cn}})===`composer.stash`&&(e.preventDefault(),e.stopPropagation(),Pn.current())};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[cn,an,re,V]),(0,q.useEffect)(()=>{_n(!1)},[n,vn]);let Qr=(0,q.useCallback)(()=>{de()},[de]),$r=(0,q.useCallback)(()=>{fe()},[fe]),ei=(0,q.useCallback)(()=>{jn.current!==null&&window.cancelAnimationFrame(jn.current),jn.current=window.requestAnimationFrame(()=>{jn.current=null;let e=Cn.current,t=document.activeElement;t instanceof Element&&dY(t)||e&&t instanceof Element&&e.contains(t)&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)===null||un(!1)})},[]);(0,q.useEffect)(()=>()=>{jn.current!==null&&window.cancelAnimationFrame(jn.current)},[]),(0,q.useImperativeHandle)(t,()=>({collapseForReading:()=>{!vn&&!dY(document.activeElement??document.body)&&(hn(!0),fn(!1))},focusAtEnd:()=>{hn(!1),Re.current&&xn.current?.focusAtEnd()},focusAt:e=>{hn(!1),Re.current&&xn.current?.focusAt(e)},openModelPicker:()=>{sn(!0)},toggleModelPicker:()=>{sn(e=>!e)},isModelPickerOpen:()=>an,readSnapshot:()=>Tr(),resetCursorState:e=>{let t=e?.prompt??H.current,n=An(t,e?.cursor??0);Xt(null),Gt(n),Jt(e?.detectTrigger?rr(t,Cr(t,n)):null)},addTerminalContext:e=>{if(!s)return;let t=xn.current?.readSnapshot()??{value:H.current,cursor:Wt,expandedCursor:Cr(H.current,Wt),terminalContextIds:Ue.map(e=>e.id)},r=Te(t.value,t.expandedCursor),i=Bt(r.prompt,r.cursor);Ze(n,r.prompt,{id:Zt(),threadId:s,createdAt:new Date().toISOString(),...e},r.contextIndex)&&(H.current=r.prompt,Gt(i),Jt(rr(r.prompt,r.cursor)),window.requestAnimationFrame(()=>{Re.current&&xn.current?.focusAt(i)}))},insertTriggerAtCursor:e=>{vn&&un(!0);let t=xn.current?.readSnapshot()??{value:H.current,cursor:Wt,expandedCursor:Cr(H.current,Wt),terminalContextIds:Ue.map(e=>e.id)},{text:r,cursor:i}=mn(t.value,t.expandedCursor,t.expandedCursor,e),a=Bt(r,i);H.current=r,Xe(n,r),Gt(a),Jt(rr(r,i)),window.requestAnimationFrame(()=>{Re.current&&xn.current?.focusAt(a)})},getSendContext:()=>({prompt:H.current,images:U.current,terminalContexts:oe.current,sourceControlContexts:We,selectedPromptEffort:kt,selectedModelOptionsForDispatch:At,selectedModelSelection:Ft,selectedProvider:yt,selectedModel:wt,selectedProviderModels:Dt})}),[s,n,Wt,We,Ue,Ze,vn,H,U,oe,an,Tr,wt,At,Ft,kt,yt,Dt,Xe]);let ti=!vn&&u&&(pn||!cn&&!dn)&&!an&&!Wn&&!Ir;return(0,Y.jsxs)(`form`,{ref:Sn,onSubmit:Pr,className:`relative mx-auto w-full min-w-0 max-w-208`,"data-chat-composer-form":`true`,children:[(0,Y.jsx)(`input`,{ref:Kr,type:`file`,className:`sr-only`,tabIndex:-1,"aria-hidden":!0,onChange:Yr}),bn?(0,Y.jsx)(`div`,{className:G(`mb-2 flex min-w-0 items-center px-4`,ct.length>0&&`pr-24`),children:(0,Y.jsx)(YJ,{source:bn.source,target:bn.target})}):null,vn?null:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(BJ,{count:ct.length,open:gn,onToggle:()=>_n(e=>!e)}),gn?(0,Y.jsx)(KJ,{entries:ct,onRestore:e=>Xr(e),onDelete:Zr,onClose:()=>_n(!1)}):null]}),(0,Y.jsx)(`div`,{className:G(`group rounded-3xl p-px transition-colors duration-200`,Ot.composerFrameClassName),onDragEnter:Vr,onDragOver:Hr,onDragLeave:Ur,onDrop:Wr,children:(0,Y.jsxs)(`div`,{ref:Cn,"data-chat-composer-compact":vn?void 0:String(ti),onPointerEnter:e=>{e.pointerType===`mouse`&&(fn(!0),hn(!1))},onPointerLeave:()=>fn(!1),onPointerDownCapture:()=>hn(!1),onKeyDownCapture:()=>hn(!1),"data-chat-composer-mobile-collapsed":yn?`true`:`false`,className:G(`rounded-[max(0px,calc(var(--radius-3xl)-2px))] border-0 bg-[color-mix(in_srgb,var(--card)_var(--app-composer-alpha),transparent)] dark:bg-[color-mix(in_srgb,var(--card)_var(--app-composer-dark-alpha),transparent)] [-webkit-backdrop-filter:var(--app-composer-filter)] [backdrop-filter:var(--app-composer-filter)] shadow-[0_6px_18px_rgba(0,0,0,0.06),0_1px_3px_rgba(0,0,0,0.05)] outline-none transition-[background-color,box-shadow] duration-200 has-focus-visible:shadow-[0_8px_24px_rgba(0,0,0,0.09),0_1px_4px_rgba(0,0,0,0.07)] dark:shadow-[inset_0_1px_0_rgba(255,255,255,0.06),0_10px_28px_rgba(0,0,0,0.4),0_1px_3px_rgba(0,0,0,0.35)] dark:has-focus-visible:shadow-[inset_0_1px_0_rgba(255,255,255,0.08),0_12px_32px_rgba(0,0,0,0.5),0_1px_4px_rgba(0,0,0,0.4)]`,Ir?`bg-accent/30 shadow-lg/12 ring-1 ring-inset ring-primary/45 [--lg-plate-alpha:72%] [--lg-plate-color:color-mix(in_srgb,var(--accent)_38%,var(--card))]`:null,v?`opacity-75`:null,Ot.composerSurfaceClassName),onFocusCapture:e=>{let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||(jn.current!==null&&(window.cancelAnimationFrame(jn.current),jn.current=null),un(!0),hn(!1))},onBlurCapture:()=>{ei()},onClick:e=>{if(!yn||!ar)return;let t=e.target;t instanceof HTMLElement&&t.closest(`[data-chat-composer-collapsed-controls="true"]`)||un(!0)},children:[(0,Y.jsx)(zJ,{hostRef:Cn}),!yn&&(b?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Fq,{approval:b,pendingCount:x.length,isResponding:O.includes(b.requestId),onRespondToApproval:pe})}):S.length>0?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Iq,{pendingUserInputs:S,respondingRequestIds:O,answers:E,questionIndex:D,onToggleOption:me,onAdvance:ge})}):k&&j?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,children:(0,Y.jsx)(Rq,{planTitle:Ec(j.planMarkdown)??null},j.id)}):er&&p?(0,Y.jsx)(tY,{goal:p,isRunning:m===`running`,onBudgetChange:je,onRetry:Ne,onEdit:Pe,onStatusChange:Ie,onClear:Le}):null),yn&&b?(0,Y.jsx)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(Fq,{approval:b,pendingCount:x.length,isResponding:O.includes(b.requestId),onRespondToApproval:pe})}):yn&&S.length>0?(0,Y.jsxs)(`div`,{className:`rounded-t-[max(0px,calc(var(--radius-3xl)-3px))] border-b border-border/65 bg-muted/20`,"data-chat-composer-collapsed-controls":`true`,children:[(0,Y.jsx)(Iq,{pendingUserInputs:S,respondingRequestIds:O,answers:E,questionIndex:D,onToggleOption:me,onAdvance:ge}),C?.activeQuestion?.multiSelect?(0,Y.jsx)(`div`,{className:`px-3 pb-3 sm:px-4`,children:(0,Y.jsx)(`div`,{"data-chat-composer-mobile-pending-compact":`true`,className:`flex min-w-0 items-center justify-end gap-2 rounded-lg border border-border/55 bg-background/55 p-1.5`,children:(0,Y.jsx)(OK,{compact:!0,pendingAction:gr,isRunning:!1,showPlanFollowUpPrompt:!1,promptHasText:!1,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:!1,hasSendableContent:!1,preserveComposerFocusOnPointerDown:!0,onPreviousPendingQuestion:_e,onInterrupt:Qr,onImplementPlanInNewThread:$r})})}):null]}):null,te?(0,Y.jsx)(`div`,{className:`px-3 pt-2 sm:px-4`,"data-chat-composer-collapsed-controls":`true`,children:(0,Y.jsx)(CJ,{...te})}):null,(0,Y.jsx)(_J,{editorRef:xn,isComposerCollapsedMobile:yn,hasComposerHeader:tr,isComposerApprovalState:Qn,resolvedTheme:B,composerMenuOpen:Wn,composerMenuItems:Un,isComposerMenuLoading:Yn,composerTriggerKind:Hn,composerTrigger:qt,composerMenuEmptyState:Xn,activeComposerMenuItemId:Kn?.id??null,onComposerMenuItemHighlighted:Ar,onSelectComposerItem:kr,composerSourceControlContexts:We,onRemoveSourceControlContext:Gr,composerImages:He,nonPersistedComposerImageIdSet:Zn,fileUploadRecords:Ln,onExpandImage:Ae,onRemoveImage:K,onRetryFileUpload:zr,onReattachFile:Jr,pendingUserInputCount:S.length,prompt:Be,composerCursor:Wt,composerTerminalContexts:Ue,skills:Et?.skills??[],showMobilePendingAnswerActions:vr,onRemoveTerminalContext:br,onPromptChange:Sr,onComposerCommandKey:Fr,onComposerPaste:Br,activePendingProgress:C,showPlanFollowUpPrompt:k,activeProposedPlan:j,environmentUnavailable:v,phase:m,isConnecting:h,isEditorDisabled:ar,showCollapsedSendAction:ir,collapsedSendActionLabel:`Send message`,collapsedSendActionDisabled:_r,onCollapsedSend:Pr,isSendBusy:g,pendingPrimaryAction:gr,onPreviousPendingQuestion:_e,onInterrupt:Qr,onImplementPlanInNewThread:$r}),!vn&&yt===`claudeAgent`&&(0,Y.jsx)(lA,{activities:ee??[]}),yn||b?null:(0,Y.jsx)(sq,{isFooterCompact:en,isPrimaryActionsCompact:nn,isMobileViewport:vn,hideOnMobilePendingAnswers:vr,environmentId:r,gitCwd:ae,hasSourceControlRemote:Je,onSelectIssue:Dr,onSelectChangeRequest:Or,onAttachFile:e=>{Lr([e])},executionTargets:e.executionTargets,selectedExecutionEnvironmentId:r,executionTargetLocked:e.executionTargetLocked,onExecutionTargetChange:e.onExecutionTargetChange,selectedInstanceId:xt,selectedModel:Rt,lockedProvider:L,lockedContinuationGroupKey:bt,providerInstanceEntries:ft,keybindings:re,modelOptionsByInstance:Lt,modelOptions:At,savedModelOptionsByInstance:Ct??void 0,terminalOpen:V,isModelPickerOpen:an,...Ot.modelPickerIconClassName?{modelPickerIconClassName:Ot.modelPickerIconClassName}:{},onModelPickerOpenChange:sn,onProviderModelSelect:ye,showInteractionModeToggle:Pt.showInteractionModeToggle,askModeSupported:Pt.askModeSupported,showPlanSidebarToggle:!1,interactionMode:F,runtimeMode:P,tokenMode:I,planSidebarLabel:M,planSidebarOpen:N,providerTraitsMenuContent:pr,providerTraitsChips:mr,onInteractionModeChange:Se,onTogglePlanSidebar:Ee,onRuntimeModeChange:xe,onTokenModeChange:Ce,contextWindowUsage:Ht,contextWindowRateLimits:Ut,contextWindowRateLimitsCheckedAt:$c(Et,v===null)?Et?.checkedAt:void 0,pendingAction:gr,isRunning:m===`running`,showPlanFollowUpPrompt:S.length===0&&k,promptHasText:Be.trim().length>0,isSendBusy:g,isConnecting:h,isEnvironmentUnavailable:v!==null,isPreparingWorktree:_,hasSendableContent:Bn,sendDisabledReason:zn,onPreviousPendingQuestion:_e,onInterrupt:Qr,onImplementPlanInNewThread:$r})]})})]})})),_Y=(0,q.lazy)(()=>r(()=>import(`./ThreadTerminalDrawer-CPPzQSXN.js`).then(e=>e.n),__vite__mapDeps([0,1]))),vY=(0,q.memo)(function(e){let t=(0,J.c)(77),{threadRef:n,threadId:r,visible:i,launchContext:a,focusRequestId:s,splitShortcutLabel:c,newShortcutLabel:l,closeShortcutLabel:u,keybindings:d,onAddTerminalContext:f}=e,p;t[0]===n?p=t[1]:(p=Jt(n),t[0]=n,t[1]=p);let m=me(p),h;t[2]===n?h=t[3]:(h=e=>e.getDraftThreadByRef(n),t[2]=n,t[3]=h);let g=Rr(h),_;t[4]!==g||t[5]!==m?(_=m?o(m.environmentId,m.projectId):g?o(g.environmentId,g.projectId):null,t[4]=g,t[5]=m,t[6]=_):_=t[6];let v=_,y;t[7]===v?y=t[8]:(y=Gr(v),t[7]=v,t[8]=y);let b=me(y),x;t[9]===n?x=t[10]:(x=e=>Et(e.terminalStateByThreadKey,n),t[9]=n,t[10]=x);let S=ct(x),C=ct(yY),w=ct(bY),T=ct(xY),E=ct(SY),D=ct(CY),[O,k]=(0,q.useState)(0),A=m?.worktreePath??g?.worktreePath??null,j;bb0:{if(a!==null){j=a.worktreePath;break bb0}j=A}let M=j,N;t[11]!==M||t[12]!==a?.cwd||t[13]!==b?(N=()=>a?.cwd??(b?af({project:{cwd:b.cwd},worktreePath:M}):null),t[11]=M,t[12]=a?.cwd,t[13]=b,t[14]=N):N=t[14],a?.cwd;let P;t[15]===N?P=t[16]:(P=N(),t[15]=N,t[16]=P);let F=P,I;t[17]!==M||t[18]!==b?(I=b?of({project:{cwd:b.cwd},worktreePath:M}):{},t[17]=M,t[18]=b,t[19]=I):I=t[19];let L=I,R;t[20]===i?R=t[21]:(R=()=>{i&&k(wY)},t[20]=i,t[21]=R);let z=R,ee;t[22]!==C||t[23]!==n?(ee=e=>{C(n,e)},t[22]=C,t[23]=n,t[24]=ee):ee=t[24];let te=ee,B;t[25]!==z||t[26]!==w||t[27]!==n?(B=()=>{w(n,`terminal-${Zt()}`),z()},t[25]=z,t[26]=w,t[27]=n,t[28]=B):B=t[28];let ne=B,re;t[29]!==z||t[30]!==T||t[31]!==n?(re=()=>{T(n,`terminal-${Zt()}`),z()},t[29]=z,t[30]=T,t[31]=n,t[32]=re):re=t[32];let ie=re,V;t[33]!==z||t[34]!==E||t[35]!==n?(V=e=>{E(n,e),z()},t[33]=z,t[34]=E,t[35]=n,t[36]=V):V=t[36];let ae=V,H;t[37]!==z||t[38]!==D||t[39]!==S.terminalIds.length||t[40]!==n?(H=e=>{let t=Dr(n.environmentId);if(!t)return;let r=S.terminalIds.length<=1;Nd.close({threadRef:n,terminalId:e},t.terminal,r).catch(TY),D(n,e),z()},t[37]=z,t[38]=D,t[39]=S.terminalIds.length,t[40]=n,t[41]=H):H=t[41];let U=H,oe;t[42]!==f||t[43]!==i?(oe=e=>{i&&f(e)},t[42]=f,t[43]=i,t[44]=oe):oe=t[44];let se=oe;if(!b||!S.terminalOpen||!F)return null;let ce=i?void 0:`hidden`,le;t[45]===S.terminalHeight?le=t[46]:(le=(0,Y.jsx)(`div`,{className:`thread-terminal-drawer relative flex min-w-0 shrink-0 items-center border-border/80 border-t bg-background px-4 text-muted-foreground text-sm`,style:{height:S.terminalHeight},children:`Loading terminal...`}),t[45]=S.terminalHeight,t[46]=le);let ue=s+O+ +!!i,de=i?c:void 0,fe=i?l:void 0,pe=i?u:void 0,he;t[47]!==ae||t[48]!==U||t[49]!==ie||t[50]!==F||t[51]!==M||t[52]!==se||t[53]!==d||t[54]!==L||t[55]!==te||t[56]!==ne||t[57]!==ue||t[58]!==de||t[59]!==fe||t[60]!==pe||t[61]!==S.activeTerminalGroupId||t[62]!==S.activeTerminalId||t[63]!==S.runningTerminalIds||t[64]!==S.terminalGroups||t[65]!==S.terminalHeight||t[66]!==S.terminalIds||t[67]!==r||t[68]!==n||t[69]!==i?(he=(0,Y.jsx)(_Y,{threadRef:n,threadId:r,cwd:F,worktreePath:M,runtimeEnv:L,visible:i,height:S.terminalHeight,terminalIds:S.terminalIds,runningTerminalIds:S.runningTerminalIds,activeTerminalId:S.activeTerminalId,terminalGroups:S.terminalGroups,activeTerminalGroupId:S.activeTerminalGroupId,focusRequestId:ue,onSplitTerminal:ne,onNewTerminal:ie,splitShortcutLabel:de,newShortcutLabel:fe,closeShortcutLabel:pe,keybindings:d,onActiveTerminalChange:ae,onCloseTerminal:U,onHeightChange:te,onAddTerminalContext:se}),t[47]=ae,t[48]=U,t[49]=ie,t[50]=F,t[51]=M,t[52]=se,t[53]=d,t[54]=L,t[55]=te,t[56]=ne,t[57]=ue,t[58]=de,t[59]=fe,t[60]=pe,t[61]=S.activeTerminalGroupId,t[62]=S.activeTerminalId,t[63]=S.runningTerminalIds,t[64]=S.terminalGroups,t[65]=S.terminalHeight,t[66]=S.terminalIds,t[67]=r,t[68]=n,t[69]=i,t[70]=he):he=t[70];let ge;t[71]!==le||t[72]!==he?(ge=(0,Y.jsx)(q.Suspense,{fallback:le,children:he}),t[71]=le,t[72]=he,t[73]=ge):ge=t[73];let _e;return t[74]!==ce||t[75]!==ge?(_e=(0,Y.jsx)(`div`,{className:ce,children:ge}),t[74]=ce,t[75]=ge,t[76]=_e):_e=t[76],_e});function yY(e){return e.setTerminalHeight}function bY(e){return e.splitTerminal}function xY(e){return e.newTerminal}function SY(e){return e.setActiveTerminal}function CY(e){return e.closeTerminal}function wY(e){return e+1}function TY(){}function EY(e){let t=(0,J.c)(7),{image:n,className:r}=e,i=r===void 0?`max-h-[86vh] max-w-[92vw]`:r,[a,o]=(0,q.useState)(),s;return t[0]!==i||t[1]!==a||t[2]!==n.height||t[3]!==n.name||t[4]!==n.src||t[5]!==n.width?(s=a===n.src?(0,Y.jsx)(`p`,{role:`status`,className:`p-6 text-sm text-muted-foreground`,children:`Could not display this image. Download it to open it.`}):(0,Y.jsx)(`img`,{src:n.src,alt:n.name,...n.width!==void 0&&n.height!==void 0?{width:n.width,height:n.height}:{},onError:()=>o(n.src),className:`h-auto w-auto select-none rounded-lg border border-border/70 bg-background object-contain shadow-2xl ${i}`,draggable:!1}),t[0]=i,t[1]=a,t[2]=n.height,t[3]=n.name,t[4]=n.src,t[5]=n.width,t[6]=s):s=t[6],s}var DY=(0,q.memo)(function(e){let t=(0,J.c)(31),{preview:n,onClose:r}=e,i=$s(),[a,o]=(0,q.useState)(n),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{o(n)},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,q.useEffect)(s,c);let l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=e=>{o(t=>{if(t.images.length<=1)return t;let n=(t.index+e+t.images.length)%t.images.length;return n===t.index?t:{...t,index:n}})},t[3]=l):l=t[3];let u=l,d,f;t[4]!==r||t[5]!==a.images.length?(d=()=>{let e=e=>{if($l(e)){if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),r();return}if(!(a.images.length<=1)){if(e.key===`ArrowLeft`){e.preventDefault(),e.stopPropagation(),u(-1);return}e.key===`ArrowRight`&&(e.preventDefault(),e.stopPropagation(),u(1))}}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},f=[u,r,a.images.length],t[4]=r,t[5]=a.images.length,t[6]=d,t[7]=f):(d=t[6],f=t[7]),Vs(d,f);let p=a.images[a.index];if(!p||!i)return null;let m;t[8]===r?m=t[9]:(m=(0,Y.jsx)(`button`,{type:`button`,className:`absolute inset-0 z-0 cursor-zoom-out`,"aria-label":`Close image preview`,onClick:r}),t[8]=r,t[9]=m);let h;t[10]===a.images.length?h=t[11]:(h=a.images.length>1&&(0,Y.jsx)(W,{type:`button`,size:`icon`,variant:`ghost`,className:`absolute left-2 top-1/2 z-20 -translate-y-1/2 text-white/90 hover:bg-white/10 hover:text-white sm:left-6`,"aria-label":`Previous image`,onClick:()=>u(-1),children:(0,Y.jsx)(_s,{className:`size-5`})}),t[10]=a.images.length,t[11]=h);let g;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,Y.jsx)(Ut,{}),t[12]=g):g=t[12];let _;t[13]===r?_=t[14]:(_=(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`absolute right-2 top-2 z-20`,onClick:r,"aria-label":`Close image preview`,children:g}),t[13]=r,t[14]=_);let v;t[15]===p?v=t[16]:(v=(0,Y.jsx)(EY,{image:p}),t[15]=p,t[16]=v);let y=a.images.length>1?` (${a.index+1}/${a.images.length})`:``,b;t[17]!==p.name||t[18]!==y?(b=(0,Y.jsxs)(`p`,{className:`mt-2 max-w-[92vw] truncate text-center text-xs text-muted-foreground/80`,children:[p.name,y]}),t[17]=p.name,t[18]=y,t[19]=b):b=t[19];let x;t[20]!==v||t[21]!==b||t[22]!==_?(x=(0,Y.jsxs)(`div`,{className:`relative isolate z-10 max-h-[92vh] max-w-[92vw]`,children:[_,v,b]}),t[20]=v,t[21]=b,t[22]=_,t[23]=x):x=t[23];let S;t[24]===a.images.length?S=t[25]:(S=a.images.length>1&&(0,Y.jsx)(W,{type:`button`,size:`icon`,variant:`ghost`,className:`absolute right-2 top-1/2 z-20 -translate-y-1/2 text-white/90 hover:bg-white/10 hover:text-white sm:right-6`,"aria-label":`Next image`,onClick:()=>u(1),children:(0,Y.jsx)(Ms,{className:`size-5`})}),t[24]=a.images.length,t[25]=S);let C;return t[26]!==x||t[27]!==S||t[28]!==m||t[29]!==h?(C=(0,Y.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/75 px-4 py-6 [-webkit-app-region:no-drag]`,role:`dialog`,"aria-modal":`true`,"aria-label":`Expanded image preview`,children:[m,h,x,S]}),t[26]=x,t[27]=S,t[28]=m,t[29]=h,t[30]=C):C=t[30],C}),OY=class extends Error{constructor(e){super(e),this.name=`ContextHandoffChunkError`}};async function kY(e){let t=await crypto.subtle.digest(`SHA-256`,new TextEncoder().encode(e));return Array.from(new Uint8Array(t),e=>e.toString(16).padStart(2,`0`)).join(``)}async function AY(e){let t=[],n=0,r=null,i=null;for(;;){if(e.signal?.aborted)throw new DOMException(`The operation was aborted.`,`AbortError`);let a=await e.read(n);if(a.offset!==n)throw new OY(`The server returned a gap or overlapping chunk.`);if(r!==null&&a.digest!==r)throw new OY(`The artifact digest changed during transfer.`);if(i!==null&&a.totalBytes!==i)throw new OY(`The artifact size changed during transfer.`);r=a.digest,i=a.totalBytes;let o=new TextEncoder().encode(a.chunk).byteLength,s=n+o;if(t.push(a.chunk),e.onProgress?.(s,a.totalBytes),a.nextOffset===null){if(s!==a.totalBytes)throw new OY(`The final chunk does not match the artifact size.`);break}if(a.nextOffset!==s||a.nextOffset<=n)throw new OY(`The server returned a non-sequential chunk offset.`);n=a.nextOffset}let a=t.join(``);if(await kY(a)!==r)throw new OY(`The downloaded artifact failed integrity verification.`);return{text:a,digest:r,totalBytes:i}}async function jY(e){let t=null,n=await AY({read:async n=>{let r=await e.read(n);if(t!==null&&r.filename!==t)throw new OY(`The export filename changed during transfer.`);return t=r.filename,r},...e.signal?{signal:e.signal}:{},...e.onProgress?{onProgress:e.onProgress}:{}}),r=t??``,i=`.${e.expectedExtension}`;if(!/^ryco-context-handoff-[a-zA-Z0-9_-]+-(sent|complete)\.(md|json)$/.test(r)||!r.endsWith(i))throw new OY(`The server returned an unsafe export filename.`);return{blob:new Blob([n.text],{type:e.expectedExtension===`md`?`text/markdown;charset=utf-8`:`application/json`}),filename:r}}function MY(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,r.click(),queueMicrotask(()=>URL.revokeObjectURL(n))}var NY={messages:`Messages`,plans:`Plans`,tools:`Tools and terminal results`,checkpoints:`Checkpoints and changed files`,notices:`Notices and pending questions`,subagents:`Subagents`,priorHandoffs:`Prior handoffs`,triggeringMessage:`Triggering user message`},PY={sent:`Sent to model`,"prepared-not-sent":`Prepared, not sent`,"prepared-not-accepted":`Prepared payload, not accepted`,"delivery-uncertain":`Attempted payload; delivery uncertain`};function FY(e){return e instanceof Error?e.message:`The context artifact could not be loaded.`}function IY(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function LY(e,t){if(!t||typeof t!=`object`)return(0,Y.jsx)(`pre`,{className:`whitespace-pre-wrap break-words text-xs`,children:String(t)});let n=t,r=typeof n.text==`string`?n.text:null,i=typeof n.summary==`string`?n.summary:null,a=typeof n.command==`string`?n.command:null,o=typeof n.output==`string`?n.output:null;return e===`messages`||e===`triggeringMessage`?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`p`,{className:`text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:typeof n.role==`string`?n.role:`Message`}),(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap break-words text-sm leading-6`,children:r})]}):e===`tools`?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[i?(0,Y.jsx)(`p`,{className:`text-sm font-medium`,children:i}):null,a?(0,Y.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted/55 p-2 text-xs`,children:a}):null,o?(0,Y.jsx)(`pre`,{className:`max-h-56 overflow-auto whitespace-pre-wrap rounded-md bg-muted/35 p-2 text-xs`,children:o}):null]}):(0,Y.jsx)(`pre`,{className:`max-h-72 overflow-auto whitespace-pre-wrap break-words rounded-md bg-muted/35 p-2 text-xs leading-5`,children:JSON.stringify(t,null,2)})}function RY(e){let t=(0,q.useMemo)(()=>or(e.environmentId).contextHandoff,[e.environmentId]),n=(0,q.useRef)(0),r=(0,q.useRef)(null),[i,a]=(0,q.useState)(null),[o,s]=(0,q.useState)(null),[c,l]=(0,q.useState)(`sent`),[u,d]=(0,q.useState)(`readable`),[f,p]=(0,q.useState)({}),[m,h]=(0,q.useState)(null),[g,_]=(0,q.useState)(`idle`),[v,y]=(0,q.useState)(null),[b,x]=(0,q.useState)(null),[S,C]=(0,q.useState)(0),[w,T]=(0,q.useState)(null),E=(0,q.useCallback)(async()=>{let r=++n.current;s(null),a(null);try{let i=await t.getInspectionSummary({threadId:e.threadId,handoffId:e.marker.handoffId});if(n.current!==r)return;a(i),l(i.status===`consumed`&&i.sent.available?`sent`:`complete`)}catch(e){n.current===r&&s(FY(e))}},[t,e.marker.handoffId,e.threadId]);(0,q.useEffect)(()=>(E(),r.current?.focus(),()=>{n.current+=1}),[E]),(0,q.useEffect)(()=>{p({}),h(null),_(`idle`),y(null),T(null)},[c]);let D=(0,q.useCallback)(async(r,a=null)=>{let o=`${c}:${r}`,s=n.current;p(e=>({...e,[o]:{entries:a?e[o]?.entries??[]:[],nextCursor:a,loading:!0,error:null}}));try{let l=await t.listInspectionEntries({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,section:r,...a?{cursor:a}:{}});if(n.current!==s||l.artifactDigest!==i?.[c].digest)return;p(e=>({...e,[o]:{entries:a?[...e[o]?.entries??[],...l.entries]:l.entries,nextCursor:l.nextCursor,loading:!1,error:null}}))}catch(e){if(n.current!==s)return;p(t=>({...t,[o]:{entries:t[o]?.entries??[],nextCursor:a,loading:!1,error:FY(e)}}))}},[t,e.marker.handoffId,e.threadId,c,i]),O=(0,q.useCallback)(async()=>{let r=n.current;_(`loading`),y(null);try{let i=await AY({read:n=>t.readRawPayloadChunk({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,offset:n})});if(n.current!==r)return;h({text:i.text,digest:i.digest}),_(`idle`)}catch(e){if(n.current!==r)return;_(`error`),y(FY(e))}},[t,e.marker.handoffId,e.threadId,c]);(0,q.useEffect)(()=>{u===`raw`&&i?.[c].available===!0&&m===null&&g===`idle`&&O()},[O,m,g,c,i,u]);let k=(0,q.useCallback)(async n=>{x(n),C(0),T(null);try{let r=await jY({read:r=>t.readExportChunk({threadId:e.threadId,handoffId:e.marker.handoffId,scope:c,format:n,offset:r}),expectedExtension:n===`markdown`?`md`:`json`,onProgress:(e,t)=>C(t===0?1:Math.min(1,e/t))});MY(r.blob,r.filename)}catch(e){T(FY(e))}finally{x(null)}},[t,e.marker.handoffId,e.threadId,c]),A=i?.[c]??null,j=i?.sources??e.marker.sources,M=i?.target??e.marker.target;return(0,Y.jsxs)(`section`,{"aria-label":`Context handoff inspector`,className:`flex min-h-0 w-full flex-1 flex-col bg-background`,onKeyDown:t=>{t.key===`Escape`&&e.onClose()},children:[(0,Y.jsxs)(`header`,{className:`shrink-0 border-b border-border px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium uppercase tracking-wide text-muted-foreground`,children:`Context handoff`}),(0,Y.jsxs)(`div`,{className:`mt-1 flex min-w-0 flex-wrap items-center gap-1.5 text-sm font-medium`,children:[j.map(e=>(0,Y.jsx)(Es,{endpoint:e,className:`max-w-44`},`${e.providerInstanceId}:${e.modelSlug}`)),(0,Y.jsx)(Wo,{className:`size-3.5 text-muted-foreground`}),(0,Y.jsx)(Es,{endpoint:M,className:`max-w-44`})]})]}),(0,Y.jsx)(W,{ref:r,type:`button`,size:`icon`,variant:`ghost`,"aria-label":`Close context handoff inspector`,onClick:e.onClose,children:(0,Y.jsx)(Ut,{})})]}),i?(0,Y.jsxs)(`div`,{className:`mt-3 flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-foreground`,children:[(0,Y.jsx)(zr,{className:`size-3.5`}),PY[i.deliveryLabel]]}),(0,Y.jsx)(`span`,{children:new Date(i.updatedAt).toLocaleString()})]}):null]}),o?(0,Y.jsxs)(`div`,{className:`m-4 rounded-lg border border-destructive/25 bg-destructive/5 p-3 text-sm`,children:[(0,Y.jsx)(`p`,{children:o}),(0,Y.jsxs)(W,{className:`mt-3`,size:`sm`,variant:`outline`,onClick:()=>void E(),children:[(0,Y.jsx)(rc,{}),` Retry`]})]}):i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`shrink-0 space-y-3 border-b border-border px-4 py-3`,children:[(0,Y.jsx)(`div`,{className:`grid grid-cols-2 rounded-lg bg-muted/55 p-1`,children:[`sent`,`complete`].map(e=>{let t=i[e].available;return(0,Y.jsx)(`button`,{type:`button`,disabled:!t,onClick:()=>l(e),className:G(`rounded-md px-2 py-1.5 text-xs font-medium transition-colors`,c===e?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`,!t&&`cursor-not-allowed opacity-45`),children:e===`sent`?`Sent to model`:`Complete artifact`},e)})}),A?.available?(0,Y.jsxs)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1 text-xs text-muted-foreground`,children:[(0,Y.jsxs)(`span`,{children:[A.entryCount,` context entries`]}),(0,Y.jsx)(`span`,{children:IY(A.byteCount)}),c===`sent`&&i?.maxInputChars!=null?(0,Y.jsxs)(`span`,{children:[`Budget: `,i.maxInputChars.toLocaleString(),` characters (`,i.budgetSource??`unknown`,i.contextWindowTokens==null?``:`, ${i.contextWindowTokens.toLocaleString()} token window`,`)`]}):null,A.truncated?(0,Y.jsx)(`span`,{children:`Trimmed to the target input budget`}):null]}):(0,Y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Exact sent payload unavailable for this handoff. The complete artifact remains available when it was prepared.`}),(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsx)(`div`,{className:`flex rounded-md border border-border p-0.5`,children:[`readable`,`raw`].map(e=>(0,Y.jsx)(`button`,{type:`button`,disabled:!A?.available,onClick:()=>d(e),className:G(`rounded px-2 py-1 text-xs`,u===e?`bg-muted font-medium`:`text-muted-foreground`),children:e===`readable`?`Readable`:`Raw payload`},e))}),(0,Y.jsxs)(`div`,{className:`flex gap-1`,children:[(0,Y.jsxs)(W,{size:`sm`,variant:`outline`,disabled:!A?.available||b!==null,onClick:()=>void k(`markdown`),children:[b===`markdown`?(0,Y.jsx)(Er,{className:`animate-spin`}):(0,Y.jsx)(fi,{}),`Markdown`]}),(0,Y.jsxs)(W,{size:`sm`,variant:`outline`,disabled:!A?.available||b!==null,onClick:()=>void k(`json`),children:[b===`json`?(0,Y.jsx)(Er,{className:`animate-spin`}):(0,Y.jsx)(Pu,{}),`JSON`]})]})]}),(0,Y.jsxs)(`p`,{className:`flex items-start gap-1.5 text-[11px] leading-4 text-muted-foreground`,children:[(0,Y.jsx)(ic,{className:`mt-0.5 size-3 shrink-0`}),`Exports may contain conversation text, commands, tool output, and repository paths.`]}),b?(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Verifying export… `,Math.round(S*100),`%`]}):null,w?(0,Y.jsx)(`p`,{className:`text-xs text-destructive`,children:w}):null]}),(0,Y.jsx)(ol,{children:(0,Y.jsx)(`div`,{className:`space-y-2 p-4`,children:u===`raw`?g===`loading`?(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,Y.jsx)(Er,{className:`size-4 animate-spin`}),` Loading and verifying raw payload…`]}):g===`error`?(0,Y.jsxs)(`div`,{className:`text-sm text-destructive`,children:[(0,Y.jsx)(`p`,{children:v}),(0,Y.jsx)(W,{className:`mt-2`,size:`sm`,variant:`outline`,onClick:()=>void O(),children:`Retry`})]}):m?(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsxs)(`p`,{className:`text-[11px] text-muted-foreground`,children:[`Verified SHA-256 ·`,` `,(0,Y.jsxs)(`span`,{className:`font-mono`,children:[m.digest.slice(0,16),`…`]})]}),(0,Y.jsx)(`pre`,{className:`overflow-auto whitespace-pre-wrap break-words rounded-lg bg-muted/40 p-3 text-xs leading-5`,children:m.text})]}):null:A?.available?A.sections.map(e=>{let t=`${c}:${e.section}`,n=f[t];return(0,Y.jsxs)(`details`,{className:`group rounded-lg border border-border bg-card/35`,onToggle:t=>{t.currentTarget.open&&!n&&D(e.section)},children:[(0,Y.jsxs)(`summary`,{className:`flex cursor-pointer list-none items-center justify-between gap-3 px-3 py-2.5 text-sm font-medium`,children:[(0,Y.jsx)(`span`,{children:NY[e.section]}),(0,Y.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[e.entryCount,(0,Y.jsx)(fr,{className:`size-3.5 transition-transform group-open:rotate-180`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-3 border-t border-border px-3 py-3`,children:[n?.entries.map(t=>(0,Y.jsx)(`article`,{className:`rounded-md bg-muted/25 p-2.5`,children:LY(e.section,t.value)},t.id)),n?.loading?(0,Y.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(Er,{className:`size-3.5 animate-spin`}),` Loading…`]}):null,n?.error?(0,Y.jsx)(`p`,{className:`text-xs text-destructive`,children:n.error}):null,n?.nextCursor&&!n.loading?(0,Y.jsx)(W,{size:`sm`,variant:`ghost`,onClick:()=>void D(e.section,n.nextCursor),children:`Load more`}):null]})]},t)}):null})})]}):(0,Y.jsxs)(`div`,{className:`flex flex-1 items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,Y.jsx)(Er,{className:`size-4 animate-spin`}),` Loading context artifact…`]})]})}function zY({open:e,environmentId:t,projectId:n,threadId:r,cwd:i,initialReference:a,onOpenChange:o,onPrepared:s}){let c=(0,q.useRef)(null),[l,u]=(0,q.useState)(a??``),[d,f]=(0,q.useState)(!1),[p,m]=(0,q.useState)(null),[h,g]=ro(l,{wait:450},e=>({isPending:e.isPending})),{data:_=null}=We({environmentId:t,cwd:i}),v=(0,q.useMemo)(()=>no(_?.sourceControlProvider),[_?.sourceControlProvider]),y=v.terminology,b=v.Icon;(0,q.useEffect)(()=>{e&&(u(a??``),f(!1),m(null))},[a,e]),(0,q.useEffect)(()=>{if(!e)return;let t=window.requestAnimationFrame(()=>{c.current?.focus(),c.current?.select()});return()=>{window.cancelAnimationFrame(t)}},[e]);let x=GG(l),S=GG(h),C=jG({environmentId:t,cwd:i,reference:e?S:null}),w=MG({environmentId:t,cwd:i,reference:x})?.pullRequest??null,T=NG({mutationFn:e=>{if(!i||!t)throw Error(`Pull request thread preparation is unavailable.`);return or(t).git.preparePullRequestThread({cwd:i,reference:e.reference,mode:e.mode,...n?{projectId:n}:{},...e.threadId?{threadId:e.threadId}:{}})},invalidates:i?[Vr(i)]:[]}),E=(x!==null&&x===S?C.data?.pullRequest??null:null)??w,D=e&&x!==null&&E===null&&(g.state.isPending||x!==S||C.isPending||C.isFetching),O=(0,q.useMemo)(()=>{switch(E?.state){case`merged`:return`text-violet-600 dark:text-violet-300/90`;case`closed`:return`text-zinc-500 dark:text-zinc-400/80`;case`open`:return`text-emerald-600 dark:text-emerald-300/90`;default:return`text-muted-foreground`}},[E?.state]),k=(0,q.useCallback)(async e=>{if(!x){f(!0);return}if(x&&E&&i){m(e);try{let t=await T.mutateAsync({reference:x,mode:e,...e===`worktree`?{threadId:r}:{}});await s({branch:t.branch,worktreePath:t.worktreePath}),o(!1)}finally{m(null)}}},[i,o,s,x,T,E,r]),A=(d?l.trim().length===0?`Paste a ${y.singular} URL, checkout command, or enter 123 / #123.`:x===null?`Use a ${y.singular} URL, checkout command, 123, or #123.`:null:null)??(E===null&&C.isError?C.error instanceof Error?C.error.message:`Failed to resolve ${y.singular}.`:T.error instanceof Error?T.error.message:T.error?`Failed to prepare ${y.singular} thread.`:null);return(0,Y.jsx)(vi,{open:e,onOpenChange:e=>{T.isPending||o(e)},children:(0,Y.jsxs)(ia,{className:`project-glass-surface max-w-xl`,surface:`glass`,children:[(0,Y.jsxs)(ta,{children:[(0,Y.jsxs)(Ri,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(b,{className:`size-4`}),`Checkout `,y.singular]}),(0,Y.jsxs)(qa,{children:[`Resolve a `,v.providerName,` `,y.singular,`, then create the draft thread in the main repo or in a dedicated worktree.`]})]}),(0,Y.jsxs)(Qi,{className:`space-y-4`,children:[(0,Y.jsxs)(`label`,{className:`grid gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground capitalize`,children:y.singular}),(0,Y.jsx)(al,{ref:c,placeholder:`${y.shortLabel} URL, checkout command, or #42`,value:l,onChange:e=>{f(!0),u(e.target.value)},onKeyDown:e=>{e.key===`Enter`&&$l(e)&&(e.preventDefault(),!D&&!T.isPending&&k(`local`))}})]}),E?(0,Y.jsx)(`div`,{className:`rounded-xl border border-border/70 bg-muted/24 p-3`,children:(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`truncate font-medium text-sm`,children:E.title}),(0,Y.jsxs)(`p`,{className:`truncate text-muted-foreground text-xs`,children:[`#`,E.number,` · `,E.headBranch,` to`,` `,E.baseBranch]})]}),(0,Y.jsx)(`span`,{className:G(`shrink-0 text-xs capitalize`,O),children:E.state})]})}):null,D?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-muted-foreground text-xs`,children:[(0,Y.jsx)(lo,{className:`size-3.5`}),`Resolving `,y.singular,`...`]}):null,A?(0,Y.jsx)(`p`,{className:`text-destructive text-xs`,children:A}):null]}),(0,Y.jsxs)(Ti,{children:[(0,Y.jsx)(W,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>o(!1),disabled:T.isPending,children:`Cancel`}),(0,Y.jsx)(W,{type:`button`,size:`sm`,variant:`outline`,onClick:()=>{k(`local`)},disabled:!i||!E||D||T.isPending,children:p===`local`?`Preparing local...`:`Local`}),(0,Y.jsx)(W,{type:`button`,size:`sm`,onClick:()=>{k(`worktree`)},disabled:!i||!E||D||T.isPending,children:p===`worktree`?`Preparing worktree...`:`Worktree`})]})]})})}function BY({threadRef:e,children:t}){let n=xc()===`phone`,r=Rs(ee.terminalWrite),i=ec(),a=(0,q.useRef)(!1),s=(0,q.useRef)(0),c=(0,q.useRef)(new Set);(0,q.useLayoutEffect)(()=>{a.current=!0,s.current+=1;let e=c.current;return()=>{a.current=!1;for(let t of e)t();e.clear()}},[e.environmentId,e.threadId,n,r.allowed]);let l=(0,q.useCallback)(async t=>{let r=lr(e.environmentId),l=s.current,u=r?.shellSnapshotReadiness.read(),d=et.getState().generation,f=g()?Bo(e.environmentId):null;if(g()&&!f)throw Error(`This node must be current and authorized before terminal insertion.`);let p=Jt(e)(me.getState()),m=p?Gr(o(e.environmentId,p.projectId))(me.getState()):void 0;if(!r||!u||!p||!m)throw Error(`The current thread workspace and connection must be ready before insertion.`);let h=p.worktreePath??m.cwd,_=p.worktreePath??null,v=null,y=()=>{let t=et.getState(),c=g()?Bo(e.environmentId):null;if(f&&(!c||c.selectionGeneration!==f.selectionGeneration||c.snapshotGeneration!==f.snapshotGeneration))return!1;let h=hc({hosted:g(),role:t.effectiveRole,fresh:t.directoryStatus===`ready`&&t.transportStatus===`online`,browserCurrent:t.browserStatus===`current`,sessionReady:t.sessionStatus===`ready`,method:ee.terminalWrite}).allowed,y=Jt(e)(me.getState()),b=y?Gr(o(e.environmentId,y.projectId))(me.getState()):void 0,x=Et(ct.getState().terminalStateByThreadKey,e);return a.current&&s.current===l&&i.current&&!n&&h&&t.generation===d&&lr(e.environmentId)===r&&r.shellSnapshotReadiness.read()===u&&y?.projectId===p.projectId&&(y?.worktreePath??null)===_&&b?.cwd===m.cwd&&(v===null||x.terminalOpen&&x.activeTerminalId===v)};if(!y())throw Error(`Terminal insertion is unavailable until this thread is current and authorized.`);let b=`terminal-${Zt()}`;v=b;let x=Nd.request({threadRef:e,terminalId:b,cwd:h,worktreePath:_},t,y);c.current.add(x.cancel);let S=ct.getState();S.clearTerminalLaunchContext(e),S.newTerminal(e,b),S.setTerminalOpen(e,!0);try{await x.promise}finally{c.current.delete(x.cancel)}},[i,n,e]);return(0,Y.jsx)(ZT,{value:n||!r.allowed?null:l,children:t})}function VY(e){let{environmentId:t,threadId:n,messageId:r,attachmentId:i,sizeBytes:a,mimeType:o}=e,c=JSON.stringify([t,n,r,i,a,o]),[l,u]=(0,q.useState)({identity:c}),d=(0,q.useRef)({identity:c});(0,q.useEffect)(()=>{let e={identity:c};return d.current=e,()=>{e.controller?.abort(),e.url&&URL.revokeObjectURL(e.url)}},[c]);let f=async()=>{let e=d.current;if(e.identity!==c||e.controller&&!e.controller.signal.aborted||!t||!n||!r||!i||a===void 0)return;let l=new AbortController;e.controller=l,u({identity:c,loading:!0});try{let d=Dr(t)?.attachments;if(!d)throw Error(`Attachment connection unavailable.`);let f=await s({reference:{threadId:n,messageId:r,attachmentId:i},sizeBytes:a,signal:l.signal,readChunk:e=>{if(Dr(t)?.attachments?.readChunk!==d.readChunk)throw Error(`Attachment connection changed.`);return d.readChunk(e)}});if(l.signal.aborted)return;if(Dr(t)?.attachments?.readChunk!==d.readChunk)throw Error(`Attachment connection changed.`);let p=URL.createObjectURL(new Blob([f],{type:o??`application/octet-stream`}));e.url&&URL.revokeObjectURL(e.url),e.url=p,u({identity:c,source:p})}catch{l.signal.aborted||u({identity:c,failed:!0})}finally{l.abort()}};return{...l.identity===c?l:{identity:c},load:f}}var HY=360,UY=260;function WY(e,t){if(e===void 0||t===void 0||e<=0||t<=0)return{maxWidth:`${HY}px`};let n=Math.min(HY,e,e*UY/t);return{width:`${Math.round(n)}px`,maxWidth:`100%`}}var GY=(0,q.memo)(function(e){let t=(0,J.c)(9),{attachment:n}=e,[r,i]=(0,q.useState)(null),a;t[0]!==n.name||t[1]!==n.previewUrl||t[2]!==r?(a=n.previewUrl&&r!==n.previewUrl&&(0,Y.jsx)(`audio`,{controls:!0,preload:`none`,src:n.previewUrl,"aria-label":`Play ${n.name}`,onError:()=>i(n.previewUrl??null),className:`mt-3 w-full min-w-0 px-2`}),t[0]=n.name,t[1]=n.previewUrl,t[2]=r,t[3]=a):a=t[3];let o;t[4]===n?o=t[5]:(o=(0,Y.jsx)(sJ,{attachment:n}),t[4]=n,t[5]=o);let s;return t[6]!==a||t[7]!==o?(s=(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[a,o]}),t[6]=a,t[7]=o,t[8]=s):s=t[8],s}),KY=(0,q.memo)(function(e){let t=(0,J.c)(28),n=e.attachment,r;t[0]!==n.id||t[1]!==n.mimeType||t[2]!==n.sizeBytes||t[3]!==e?(r={...e,attachmentId:n.id,sizeBytes:n.sizeBytes,mimeType:n.mimeType},t[0]=n.id,t[1]=n.mimeType,t[2]=n.sizeBytes,t[3]=e,t[4]=r):r=t[4];let{source:i,loading:a,failed:o,load:s}=VY(r);if(n.previewUrl||i||!n.id||!e.environmentId||!e.threadId||!e.messageId||!dn(n)&&!V(n)){let r=e.children,a;t[5]!==n||t[6]!==i?(a=i?{...n,previewUrl:i}:n,t[5]=n,t[6]=i,t[7]=a):a=t[7];let o=!!i,s;return t[8]!==e.children||t[9]!==a||t[10]!==o?(s=r(a,o),t[8]=e.children,t[9]=a,t[10]=o,t[11]=s):s=t[11],s}let c;t[12]===s?c=t[13]:(c=()=>void s(),t[12]=s,t[13]=c);let l;t[14]===n.name?l=t[15]:(l=(0,Y.jsx)(`span`,{className:`font-medium`,children:n.name}),t[14]=n.name,t[15]=l);let u=o?`status`:void 0,d;t[16]!==n.sizeBytes||t[17]!==o||t[18]!==a?(d=a?`Loading…`:o?`Could not load file. Click to retry.`:`Open file · ${iJ(n.sizeBytes)}`,t[16]=n.sizeBytes,t[17]=o,t[18]=a,t[19]=d):d=t[19];let f;t[20]!==u||t[21]!==d?(f=(0,Y.jsx)(`span`,{className:`text-muted-foreground`,role:u,children:d}),t[20]=u,t[21]=d,t[22]=f):f=t[22];let p;return t[23]!==a||t[24]!==c||t[25]!==l||t[26]!==f?(p=(0,Y.jsxs)(`button`,{type:`button`,disabled:a,onClick:c,className:`flex min-h-[72px] w-full flex-col items-start justify-center gap-1 px-3 py-3 text-left text-xs`,children:[l,f]}),t[23]=a,t[24]=c,t[25]=l,t[26]=f,t[27]=p):p=t[27],p}),qY=(0,q.memo)(function(e){let t=(0,J.c)(5);if(e.attachments.length===0)return null;let n=e.variant===`user`?`mb-2 flex max-w-[520px] flex-wrap items-start gap-2`:`my-2 flex w-full max-w-[520px] flex-col gap-2`,r;t[0]===e?r=t[1]:(r=e.attachments.map((t,n)=>(0,Y.jsx)(`div`,{className:`max-w-full overflow-hidden rounded-lg border border-border/80 bg-background/70`,children:(0,Y.jsx)(KY,{...e,attachment:t,children:(t,n)=>dn(t)&&t.previewUrl?(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`button`,{type:`button`,className:`block w-full cursor-zoom-in`,"aria-label":`Preview ${t.name}`,onClick:()=>{let n=mJ(e.attachments.filter(dn).map(e=>e.id===t.id?t:e),t.id);n&&e.onImageExpand(n)},children:(0,Y.jsx)(`img`,{src:t.previewUrl,alt:t.name,...t.width!==void 0&&t.height!==void 0?{width:t.width,height:t.height}:{},style:e.variant===`user`?WY(t.width,t.height):void 0,loading:`lazy`,decoding:`async`,className:e.variant===`user`?`block h-auto max-h-[260px] w-auto max-w-full object-contain`:`block h-auto max-h-[360px] w-full object-contain`})}),e.variant!==`user`&&(0,Y.jsx)(`a`,{href:aJ(t.previewUrl,t.name),download:t.name,"aria-label":`Download ${t.name}`,className:`block truncate border-t border-border/60 px-3 py-2 text-xs text-muted-foreground`,children:t.name})]}):V(t)?oJ(t.mimeType)?(0,Y.jsx)(cJ,{attachment:t}):t.mimeType.toLowerCase().startsWith(`audio/`)?(0,Y.jsx)(GY,{attachment:t}):(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(pJ,{attachment:t,initiallyOpen:n}),(0,Y.jsx)(sJ,{attachment:t})]}):(0,Y.jsx)(`div`,{className:`px-3 py-3 text-xs text-muted-foreground`,children:t.name??`Attachment`})})},`${e.environmentId}:${e.threadId}:${e.messageId}:${t.id??n}`)),t[0]=e,t[1]=r);let i;return t[2]!==n||t[3]!==r?(i=(0,Y.jsx)(`div`,{className:n,children:r}),t[2]=n,t[3]=r,t[4]=i):i=t[4],i}),JY=(0,q.memo)(function(e){let t=(0,J.c)(108),{planMarkdown:n,environmentId:r,cwd:i,workspaceRoot:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(``),[f,p]=(0,q.useState)(!1),m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m={onError:YY},t[0]=m):m=t[0];let{copyToClipboard:h,isCopied:g}=Pt(m),_=(0,q.useId)(),v;t[1]===n?v=t[2]:(v=Ec(n)??`Proposed plan`,t[1]=n,t[2]=v);let y=v,b;t[3]===n?b=t[4]:(b=n.split(`
197
197
  `),t[3]=n,t[4]=b);let x=b.length,S=n.length>900||x>20,C;t[5]===n?C=t[6]:(C=Rc(n),t[5]=n,t[6]=C);let w=C,T;t[7]!==S||t[8]!==n?(T=S?Lc(n,{maxLines:10}):null,t[7]=S,t[8]=n,t[9]=T):T=t[9];let E=T,D;t[10]===n?D=t[11]:(D=Nc(n),t[10]=n,t[11]=D);let O=D,k;t[12]===n?k=t[13]:(k=Dc(n),t[12]=n,t[13]=k);let A=k,j;t[14]!==O||t[15]!==A?(j=()=>{Ac(O,A)},t[14]=O,t[15]=A,t[16]=j):j=t[16];let M=j,N;t[17]!==h||t[18]!==A?(N=()=>{h(A)},t[17]=h,t[18]=A,t[19]=N):N=t[19];let P=N,F;t[20]!==O||t[21]!==a?(F=()=>{if(!a){Ve.add(fc({type:`error`,title:`Workspace path is unavailable`,description:`This thread does not have a workspace path to save into.`}));return}d(e=>e.length>0?e:O),l(!0)},t[20]=O,t[21]=a,t[22]=F):F=t[22];let I=F,L;t[23]!==r||t[24]!==A||t[25]!==u||t[26]!==a?(L=()=>{let e=Dr(r),t=u.trim();if(e&&a){if(!t){Ve.add({type:`warning`,title:`Enter a workspace path`});return}p(!0),e.projects.writeFile({cwd:a,relativePath:t,contents:A}).then(e=>{l(!1),Ve.add({type:`success`,title:`Plan saved to workspace`,description:e.relativePath})}).catch(XY).then(()=>{p(!1)},()=>{p(!1)})}},t[23]=r,t[24]=A,t[25]=u,t[26]=a,t[27]=L):L=t[27];let R=L,z;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,Y.jsx)(Mo,{variant:`secondary`,children:`Plan`}),t[28]=z):z=t[28];let ee;t[29]===y?ee=t[30]:(ee=(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[z,(0,Y.jsx)(`p`,{className:`truncate text-sm font-medium text-foreground`,children:y})]}),t[29]=y,t[30]=ee);let te;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(te=(0,Y.jsx)(qi,{render:(0,Y.jsx)(W,{"aria-label":`Plan actions`,size:`icon-xs`,variant:`outline`}),children:(0,Y.jsx)(as,{"aria-hidden":`true`,className:`size-4`})}),t[31]=te):te=t[31];let B=g?`Copied!`:`Copy to clipboard`,ne;t[32]!==P||t[33]!==B?(ne=(0,Y.jsx)(Fi,{onClick:P,children:B}),t[32]=P,t[33]=B,t[34]=ne):ne=t[34];let re;t[35]===M?re=t[36]:(re=(0,Y.jsx)(Fi,{onClick:M,children:`Download as markdown`}),t[35]=M,t[36]=re);let ie=!a||f,V;t[37]!==I||t[38]!==ie?(V=(0,Y.jsx)(Fi,{onClick:I,disabled:ie,children:`Save to workspace`}),t[37]=I,t[38]=ie,t[39]=V):V=t[39];let ae;t[40]!==ne||t[41]!==re||t[42]!==V?(ae=(0,Y.jsxs)(ka,{children:[te,(0,Y.jsxs)(_i,{align:`end`,children:[ne,re,V]})]}),t[40]=ne,t[41]=re,t[42]=V,t[43]=ae):ae=t[43];let H;t[44]!==ee||t[45]!==ae?(H=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[ee,ae]}),t[44]=ee,t[45]=ae,t[46]=H):H=t[46];let U=S&&!o&&`max-h-104 overflow-hidden`,oe;t[47]===U?oe=t[48]:(oe=G(`relative`,U),t[47]=U,t[48]=oe);let se;t[49]!==S||t[50]!==E||t[51]!==i||t[52]!==w||t[53]!==r||t[54]!==o?(se=S&&!o?(0,Y.jsx)(xO,{text:E??``,cwd:i,environmentId:r,isStreaming:!1}):(0,Y.jsx)(xO,{text:w,cwd:i,environmentId:r,isStreaming:!1}),t[49]=S,t[50]=E,t[51]=i,t[52]=w,t[53]=r,t[54]=o,t[55]=se):se=t[55];let ce;t[56]!==S||t[57]!==o?(ce=S&&!o?(0,Y.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 bottom-0 h-24 bg-linear-to-t from-card/95 via-card/80 to-transparent`}):null,t[56]=S,t[57]=o,t[58]=ce):ce=t[58];let le;t[59]!==oe||t[60]!==se||t[61]!==ce?(le=(0,Y.jsxs)(`div`,{className:oe,children:[se,ce]}),t[59]=oe,t[60]=se,t[61]=ce,t[62]=le):le=t[62];let ue;t[63]!==S||t[64]!==o?(ue=S?(0,Y.jsx)(`div`,{className:`mt-4 flex justify-center`,children:(0,Y.jsx)(W,{size:`sm`,variant:`outline`,"data-scroll-anchor-ignore":!0,onClick:()=>s(ZY),children:o?`Collapse plan`:`Expand plan`})}):null,t[63]=S,t[64]=o,t[65]=ue):ue=t[65];let de;t[66]!==le||t[67]!==ue?(de=(0,Y.jsxs)(`div`,{className:`mt-4`,children:[le,ue]}),t[66]=le,t[67]=ue,t[68]=de):de=t[68];let fe;t[69]===f?fe=t[70]:(fe=e=>{f||l(e)},t[69]=f,t[70]=fe);let pe;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(pe=(0,Y.jsx)(Ri,{children:`Save plan to workspace`}),t[71]=pe):pe=t[71];let me=a??`the workspace`,he;t[72]===me?he=t[73]:(he=(0,Y.jsxs)(ta,{children:[pe,(0,Y.jsxs)(qa,{children:[`Enter a path relative to `,(0,Y.jsx)(`code`,{children:me}),`.`]})]}),t[72]=me,t[73]=he);let ge;t[74]===Symbol.for(`react.memo_cache_sentinel`)?(ge=(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Workspace path`}),t[74]=ge):ge=t[74];let _e;t[75]===Symbol.for(`react.memo_cache_sentinel`)?(_e=e=>d(e.target.value),t[75]=_e):_e=t[75];let ve;t[76]!==O||t[77]!==f||t[78]!==u||t[79]!==_?(ve=(0,Y.jsx)(al,{id:_,value:u,onChange:_e,placeholder:O,spellCheck:!1,disabled:f}),t[76]=O,t[77]=f,t[78]=u,t[79]=_,t[80]=ve):ve=t[80];let ye;t[81]!==_||t[82]!==ve?(ye=(0,Y.jsx)(Qi,{className:`space-y-3`,children:(0,Y.jsxs)(`label`,{htmlFor:_,className:`grid gap-1.5`,children:[ge,ve]})}),t[81]=_,t[82]=ve,t[83]=ye):ye=t[83];let be;t[84]===Symbol.for(`react.memo_cache_sentinel`)?(be=()=>l(!1),t[84]=be):be=t[84];let xe;t[85]===f?xe=t[86]:(xe=(0,Y.jsx)(W,{variant:`outline`,size:`sm`,onClick:be,disabled:f,children:`Cancel`}),t[85]=f,t[86]=xe);let Se;t[87]===R?Se=t[88]:(Se=()=>void R(),t[87]=R,t[88]=Se);let Ce=f?`Saving...`:`Save`,we;t[89]!==f||t[90]!==Se||t[91]!==Ce?(we=(0,Y.jsx)(W,{size:`sm`,onClick:Se,disabled:f,children:Ce}),t[89]=f,t[90]=Se,t[91]=Ce,t[92]=we):we=t[92];let Te;t[93]!==xe||t[94]!==we?(Te=(0,Y.jsxs)(Ti,{children:[xe,we]}),t[93]=xe,t[94]=we,t[95]=Te):Te=t[95];let Ee;t[96]!==he||t[97]!==ye||t[98]!==Te?(Ee=(0,Y.jsxs)(ia,{className:`max-w-xl`,children:[he,ye,Te]}),t[96]=he,t[97]=ye,t[98]=Te,t[99]=Ee):Ee=t[99];let De;t[100]!==c||t[101]!==fe||t[102]!==Ee?(De=(0,Y.jsx)(vi,{open:c,onOpenChange:fe,children:Ee}),t[100]=c,t[101]=fe,t[102]=Ee,t[103]=De):De=t[103];let Oe;return t[104]!==H||t[105]!==de||t[106]!==De?(Oe=(0,Y.jsxs)(`div`,{className:`rounded-3xl border border-border/80 bg-card/70 p-4 sm:p-5`,children:[H,de,De]}),t[104]=H,t[105]=de,t[106]=De,t[107]=Oe):Oe=t[107],Oe});function YY(e){Ve.add(fc({type:`error`,title:`Could not copy plan`,description:e instanceof Error?e.message:`An error occurred while copying.`}))}function XY(e){Ve.add(fc({type:`error`,title:`Could not save plan`,description:e instanceof Error?e.message:`An error occurred while saving.`}))}function ZY(e){return!e}var QY=1e3,$Y=e=>{e.current&&Oe.add({data:{tooltipStyle:!0},positionerProps:{anchor:e.current},timeout:QY,title:`Copied!`})},eX=(e,t)=>{e.current&&Oe.add({data:{tooltipStyle:!0},positionerProps:{anchor:e.current},timeout:QY,title:`Failed to copy`,description:t.message})},tX=(0,q.memo)(function(e){let t=(0,J.c)(21),{text:n,size:r,variant:i,className:a,ariaLabel:o}=e,s=r===void 0?`xs`:r,c=i===void 0?`outline`:i,l=o===void 0?`Copy link`:o,u=(0,q.useRef)(null),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d={onCopy:()=>$Y(u),onError:e=>eX(u,e),timeout:QY},t[0]=d):d=t[0];let{copyToClipboard:f,isCopied:p}=Pt(d),m;t[1]!==f||t[2]!==n?(m=()=>f(n),t[1]=f,t[2]=n,t[3]=m):m=t[3];let h;t[4]===a?h=t[5]:(h=G(a),t[4]=a,t[5]=h);let g;t[6]!==l||t[7]!==p||t[8]!==s||t[9]!==m||t[10]!==h||t[11]!==c?(g=(0,Y.jsx)(W,{"aria-label":l,disabled:p,onClick:m,ref:u,type:`button`,size:s,variant:c,className:h}),t[6]=l,t[7]=p,t[8]=s,t[9]=m,t[10]=h,t[11]=c,t[12]=g):g=t[12];let _;t[13]===p?_=t[14]:(_=p?(0,Y.jsx)(Yn,{className:`size-3 text-success`}):(0,Y.jsx)(Hn,{className:`size-3`}),t[13]=p,t[14]=_);let v;t[15]!==g||t[16]!==_?(v=(0,Y.jsx)(So,{render:g,children:_}),t[15]=g,t[16]=_,t[17]=v):v=t[17];let y;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Y.jsx)(Co,{children:(0,Y.jsx)(`p`,{children:`Copy to clipboard`})}),t[18]=y):y=t[18];let b;return t[19]===v?b=t[20]:(b=(0,Y.jsxs)(wo,{children:[v,y]}),t[19]=v,t[20]=b),b});function nX(e,t){return e===1?t:`${t}s`}function rX(e){return e.tone===`tool`}var iX=new Set([`Read`,`Reading`]),aX=new Set([`Searched`,`Searching`,`Found`,`Finding`]);function oX(e){return iX.has(e)?`read`:aX.has(e)?`search`:`command`}function sX(e){if(e.requestKind===`file-change`||e.itemType===`file_change`||(e.changedFiles?.length??0)>0)return`edit`;if(e.requestKind===`file-read`)return`read`;if(e.itemType===`web_search`)return`search`;let t=e.command??e.rawCommand;return e.itemType===`command_execution`||e.requestKind===`command`||t?oX(t?mf(t).verb:e.toolTitle?.trim().split(/\s+/,1)[0]??``):e.itemType===`collab_agent_tool_call`?`agent`:e.itemType===`mcp_tool_call`||e.itemType===`dynamic_tool_call`?`tool`:`other`}function cX(e){if(e.changedFiles&&e.changedFiles.length>0)return e.changedFiles;let t=e.command??e.rawCommand;if(t){let e=mf(t).target.trim();if(e.length>0)return[e]}let n=e.detail?.trim();return n?[n]:[]}var lX=[`command`,`edit`,`read`,`search`,`agent`,`tool`,`other`];function uX(e,t,n){switch(e){case`command`:return`Ran ${t} ${nX(t,`command`)}`;case`edit`:return`Edited ${t} ${nX(t,`file`)}`;case`read`:return`Read ${t} ${nX(t,`file`)}`;case`search`:return`Searched ${t} ${nX(t,`file`)}`;case`agent`:return`Ran ${t} agent ${nX(t,`task`)}`;case`tool`:return`Used ${t} ${nX(t,`tool`)}`;case`other`:return n?`Ran ${t} tool ${nX(t,`call`)}`:`${t} other tool ${nX(t,`call`)}`}}function dX(e){let t=e.filter(rX);if(t.length<2||t.length!==e.length)return null;let n=new Map,r=new Map,i=!1;for(let e of t){Uf(e)===`running`&&(i=!0);let t=sX(e);if(t===`edit`||t===`read`){let i=cX(e);if(i.length===0){n.set(t,(n.get(t)??0)+1);continue}let a=r.get(t);a||(a=new Set,r.set(t,a));for(let e of i)a.add(e);continue}n.set(t,(n.get(t)??0)+1)}for(let[e,t]of r)n.set(e,(n.get(e)??0)+t.size);let a=lX.filter(e=>(n.get(e)??0)>0),o=a.map(e=>{let t=n.get(e);return{category:e,count:t,label:uX(e,t,a.length===1)}});return{label:o.map(e=>e.label).join(`, `),parts:o,entryCount:t.length,hasRunningEntry:i,iconEntry:t[0]}}var fX=2,pX=`calc(100vh - 18rem)`,mX=`22rem`,hX=240;function gX(e){return`min(${Math.max(1,(e-1)*8)}px, ${pX})`}function _X(e,t){return t<=1?0:Math.max(0,Math.min(e,t-1))/(t-1)*100}function vX(e){if(e.itemCount<=0||e.railHeight<=0)return null;if(e.itemCount===1)return 0;let t=Math.max(0,Math.min(1,(e.pointerY-e.railTop)/e.railHeight));return Math.max(0,Math.min(e.itemCount-1,Math.round(t*(e.itemCount-1))))}function yX(e){return!Number.isFinite(e)||e<=0?!1:Math.max(0,(e-Math.min(e,768))/2)>=48}function bX(e){if(!Number.isFinite(e)||e<=0)return 0;let t=Math.max(0,(e-Math.min(e,768))/2);return Math.max(0,Math.min(40,Math.floor(t)-12))}var xX=.1,SX=1;function CX(e){let{scrollTop:t,scrollHeight:n,clientHeight:r}=e;return!Number.isFinite(t)||!Number.isFinite(n)||!Number.isFinite(r)||r<=0||n-r<=SX||n-t-r<r*xX}function wX(e,t){return t?mX:e}function TX(e){return{activeTurnInProgress:e.activeTurnInProgress,activeTurnId:e.activeTurnId,isWorking:e.isWorking,isRevertingCheckpoint:e.isRevertingCheckpoint,openDiffTurnId:e.openDiffTurnId,agentPanelModel:e.agentPanelModel}}function EX(e){return{timestampFormat:e.timestampFormat,routeThreadKey:e.routeThreadKey,markdownCwd:e.markdownCwd,resolvedTheme:e.resolvedTheme,workspaceRoot:e.workspaceRoot,skills:e.skills,activeThreadEnvironmentId:e.activeThreadEnvironmentId,highlightedMessageId:e.highlightedMessageId,threadMessageSearchQuery:e.threadMessageSearchQuery,threadMessageSearchOccurrencesByMessageId:e.threadMessageSearchOccurrencesByMessageId,activeThreadMessageSearchOccurrence:e.activeThreadMessageSearchOccurrence,onRevertUserMessage:e.onRevertUserMessage,onUndoTurn:e.onUndoTurn,onImageExpand:e.onImageExpand,onOpenTurnDiff:e.onOpenTurnDiff,onCloseDiff:e.onCloseDiff,onOpenAgents:e.onOpenAgents,onOpenMessageActions:e.onOpenMessageActions,...e.onInspectContextHandoff?{onInspectContextHandoff:e.onInspectContextHandoff}:{}}}function DX(e){return e.tone===`error`||e.exitCode!==void 0&&e.exitCode!==0}function OX(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];r?.kind===`message`&&r.message.role===`user`&&t.push({id:r.id,rowIndex:n,userText:AX(yt(r.message.text).visibleText),assistantText:AX(kX(e,n))})}return t}function kX(e,t){let n=null;for(let r=t+1;r<e.length;r+=1){let t=e[r];if(t?.kind===`message`){if(t.message.role===`user`)break;t.message.role===`assistant`&&(n=t.message.text)}}return n}function AX(e){let t=e?.replace(/\s+/g,` `).trim()??``;return t.length===0?null:t.length<=hX?t:`${t.slice(0,239)}…`}function jX(e){let t=new Map,n=null;for(let r of e)r.role===`user`&&(n=r.createdAt),t.set(r.id,n??r.createdAt),r.role===`assistant`&&r.completedAt&&(n=r.completedAt);return t}function MX(e){return e.replace(/\s+(?:complete|completed)\s*$/i,``).trim()}function NX({text:e,showCopyButton:t,streaming:n}){let r=e!==null&&e.trim().length>0;return{text:r?e:null,visible:t&&r&&!n}}function PX(e){let t=new Map,n=0;for(let r of e){if(r.kind!==`message`)continue;let{message:e}=r;if(e.role===`user`){n+=1;continue}if(e.role!==`assistant`)continue;let i=e.turnId?`turn:${e.turnId}`:`unkeyed:${n}`;t.set(i,e.id)}return new Set(t.values())}function FX(e,t){let n=Date.parse(e),r=Date.parse(t);return!Number.isFinite(n)||!Number.isFinite(r)?null:Math.max(0,r-n)}function IX(e,t){if(e===null)return t;if(t===null)return e;let n=Date.parse(e),r=Date.parse(t);return Number.isFinite(n)?Number.isFinite(r)&&r>n?t:e:t}function LX(e,t){return t===null?e?e.completedAt!==null&&e.state!==`running`?null:e.turnId:null:t}function RX(e){return e.kind===`message`&&e.message.role===`assistant`?e.message.turnId??null:e.kind===`work`?e.entry.turnId??null:null}function zX(e){return e.kind===`message`?e.message.completedAt??e.message.createdAt:e.createdAt}function BX(e){let t=new Map,n=null;for(let r of e.timelineEntries){if(r.kind===`message`&&r.message.role===`user`){n=r.message.createdAt;continue}let i=RX(r);if(!i)continue;let a=t.get(i);a||(a={entries:[],terminalEntry:null,hasStreamingMessage:!1,startBoundary:n},n=null,t.set(i,a)),a.entries.push(r),r.kind===`message`&&(e.terminalAssistantMessageIds.has(r.message.id)&&(a.terminalEntry=r),a.hasStreamingMessage||=r.message.streaming)}let r=new Map;for(let[n,i]of t){let t=n===e.unsettledTurnId;if(!t&&i.hasStreamingMessage)continue;let a=new Set;for(let e of i.entries)(e.kind!==`work`||e.entry.agentSpawn===void 0)&&(t||e.id!==i.terminalEntry?.id)&&a.add(e.id);if(a.size===0)continue;let o=i.entries[0],s=i.entries.at(-1);if(!o||!s)continue;let c=t?`running`:`settled`,l=`turn-fold:${c}:${n}`,u=(e.latestTurn?.turnId===n?e.latestTurn.startedAt:null)??(t?e.activeTurnStartedAt:null)??i.startBoundary??o.createdAt,d=null;if(!t){let t=e.latestTurn?.turnId===n?e.latestTurn.completedAt:null,r=IX(i.terminalEntry?zX(i.terminalEntry):null,zX(s))??zX(s),a=FX(u,t??r),o=a===null?null:br(a);d=e.latestTurn?.turnId===n&&e.latestTurn.state===`interrupted`?o?`You stopped after ${o}`:`You stopped this response`:o?`Worked for ${o}`:`Worked`}r.set(o.id,{turnId:n,foldId:l,createdAt:o.createdAt,status:c,durationStart:u,label:d,hiddenEntryIds:a,expanded:e.turnFoldExpandedById[l]??t})}return r}function VX(e){let t=new Map,n=null;for(let r of e.timelineEntries){if(r.kind!==`message`)continue;if(r.message.role===`user`){n=r.message.id;continue}if(!n)continue;let i=e.turnDiffSummaryByAssistantMessageId.get(r.message.id);if(!i)continue;let a=i.checkpointTurnCount??e.inferredCheckpointTurnCountByTurnId[i.turnId];typeof a==`number`&&t.set(n,Math.max(0,a-1)),n=null}return t}function HX(e){let t=new Map;for(let n of e.turnDiffSummaries){if(n.status===`missing`||n.status===`error`||n.checkpointRef===void 0||n.checkpointRef.startsWith(`provider-diff:`)||n.files.length===0)continue;let r=n.checkpointTurnCount??e.inferredCheckpointTurnCountByTurnId[n.turnId];typeof r==`number`&&t.set(n.turnId,Math.max(0,r-1))}return t}function UX(e){let t=[],n=jX(e.timelineEntries.flatMap(e=>e.kind===`message`?[e.message]:[])),r=PX(e.timelineEntries),i=LX(e.latestTurn??null,e.runningTurnId??null),a=BX({timelineEntries:e.timelineEntries,terminalAssistantMessageIds:r,latestTurn:e.latestTurn??null,unsettledTurnId:i,activeTurnStartedAt:e.activeTurnStartedAt,turnFoldExpandedById:e.turnFoldExpandedById??{}}),o=new Set;for(let e of a.values())if(!e.expanded)for(let t of e.hiddenEntryIds)o.add(t);let s=!1;for(let i=0;i<e.timelineEntries.length;i+=1){let c=e.timelineEntries[i];if(!c)continue;let l=a.get(c.id);if(l&&(s||=l.status===`running`,t.push({kind:`turn-fold`,id:l.foldId,createdAt:l.createdAt,turnId:l.turnId,foldId:l.foldId,status:l.status,durationStart:l.durationStart,label:l.label,expanded:l.expanded})),o.has(c.id))continue;if(c.kind===`work`){let n=[c.entry],r=i+1;for(;r<e.timelineEntries.length;){let t=e.timelineEntries[r];if(!t||t.kind!==`work`||o.has(t.id)||a.has(t.id))break;n.push(t.entry),r+=1}if(n.length<fX)t.push({kind:`work`,id:c.id,createdAt:c.createdAt,groupedEntries:n});else{let a=`work-group:${c.id}`,o=e.workGroupExpandedById?.[a]??!1,s=n.filter(e=>e.agentSpawn===void 0);if(s.length===0){t.push({kind:`work`,id:c.id,createdAt:c.createdAt,groupedEntries:n}),i=r-1;continue}let l=new Set(s.map(e=>e.id)),u=n.filter(e=>e.agentSpawn!==void 0||!l.has(e.id)),d=o?n:u;t.push({kind:`work-toggle`,id:`work-toggle:${c.id}`,createdAt:c.createdAt,groupId:a,hiddenCount:s.length,expanded:o,onlyToolEntries:s.every(e=>e.tone===`tool`),summary:dX(s)});for(let e of d)t.push({kind:`work`,id:e.id,createdAt:e.createdAt,groupedEntries:[e]})}i=r-1;continue}if(c.kind===`proposed-plan`){t.push({kind:`proposed-plan`,id:c.id,createdAt:c.createdAt,proposedPlan:c.proposedPlan});continue}if(c.kind===`context-compaction`){t.push({kind:`context-compaction`,id:c.id,createdAt:c.createdAt,marker:c.marker});continue}if(c.kind===`context-handoff`){t.push({kind:`context-handoff`,id:c.id,createdAt:c.createdAt,marker:c.marker});continue}let u=c.message.role===`assistant`?e.turnDiffSummaryByAssistantMessageId.get(c.message.id):void 0;t.push({kind:`message`,id:c.id,createdAt:c.createdAt,message:c.message,durationStart:n.get(c.message.id)??c.message.createdAt,showAssistantCopyButton:c.message.role===`assistant`&&r.has(c.message.id),assistantTurnDiffSummary:u,revertTurnCount:c.message.role===`user`?e.revertTurnCountByUserMessageId.get(c.message.id):void 0,assistantUndoTurnCount:u?e.undoTurnCountByTurnId?.get(u.turnId):void 0})}return e.isWorking&&!s&&t.push({kind:`working`,id:`working-indicator-row`,createdAt:e.activeTurnStartedAt}),t}function WX(e,t){let n=new Map,r=e.length!==t.byId.size,i=e.map((e,i)=>{let a=t.byId.get(e.id),o=a&&GX(a,e)?a:e;return n.set(e.id,o),!r&&t.result[i]!==o&&(r=!0),o});return r?{byId:n,result:i}:t}function GX(e,t){if(e.kind!==t.kind||e.id!==t.id)return!1;switch(e.kind){case`working`:return e.createdAt===t.createdAt;case`turn-fold`:{let n=t;return e.createdAt===n.createdAt&&e.foldId===n.foldId&&e.status===n.status&&e.durationStart===n.durationStart&&e.label===n.label&&e.expanded===n.expanded}case`work-toggle`:{let n=t;return e.createdAt===n.createdAt&&e.groupId===n.groupId&&e.hiddenCount===n.hiddenCount&&e.expanded===n.expanded&&e.onlyToolEntries===n.onlyToolEntries&&e.summary?.label===n.summary?.label}case`proposed-plan`:return e.proposedPlan===t.proposedPlan;case`work`:return KX(e,t);case`context-compaction`:return e.marker===t.marker;case`context-handoff`:return e.marker===t.marker;case`message`:{let n=t;return qX(e.message,n.message)&&e.durationStart===n.durationStart&&e.showAssistantCopyButton===n.showAssistantCopyButton&&e.assistantTurnDiffSummary===n.assistantTurnDiffSummary&&e.revertTurnCount===n.revertTurnCount&&e.assistantUndoTurnCount===n.assistantUndoTurnCount}}}function KX(e,t){if(e.createdAt!==t.createdAt||e.groupedEntries.length!==t.groupedEntries.length)return!1;for(let n=0;n<e.groupedEntries.length;n+=1){let r=e.groupedEntries[n],i=t.groupedEntries[n];if(!r||!i||!JX(r,i))return!1}return!0}function qX(e,t){return e===t||e.id===t.id&&e.role===t.role&&e.text===t.text&&ZX(e.attachments,t.attachments)&&e.turnId===t.turnId&&e.createdAt===t.createdAt&&e.completedAt===t.completedAt&&e.streaming===t.streaming}function JX(e,t){return e===t||e.id===t.id&&e.createdAt===t.createdAt&&e.label===t.label&&e.detail===t.detail&&e.command===t.command&&e.rawCommand===t.rawCommand&&XX(e.changedFiles,t.changedFiles)&&YX(e.changedFileStats,t.changedFileStats)&&e.completed===t.completed&&e.tone===t.tone&&e.toolTitle===t.toolTitle&&e.itemType===t.itemType&&e.requestKind===t.requestKind&&e.turnId===t.turnId&&e.output===t.output&&e.exitCode===t.exitCode&&e.startedAt===t.startedAt&&e.lastActivityAt===t.lastActivityAt}function YX(e,t){if(e===t)return!0;let n=e?.length??0;if(n!==(t?.length??0))return!1;for(let r=0;r<n;r+=1){let n=e?.[r],i=t?.[r];if(!n||!i||n.path!==i.path||n.kind!==i.kind||n.additions!==i.additions||n.deletions!==i.deletions)return!1}return!0}function XX(e,t){if(e===t)return!0;let n=e?.length??0;if(n!==(t?.length??0))return!1;for(let r=0;r<n;r+=1)if(e?.[r]!==t?.[r])return!1;return!0}function ZX(e,t){if(e===t)return!0;let n=e?.length??0;if(n!==(t?.length??0))return!1;for(let r=0;r<n;r+=1){let n=e?.[r],i=t?.[r];if(!n||!i||!QX(n,i))return!1}return!0}function QX(e,t){return e===t?!0:e.type!==t.type||e.id!==t.id||e.name!==t.name||e.mimeType!==t.mimeType||e.sizeBytes!==t.sizeBytes?!1:!dn(e)||!dn(t)||e.previewUrl===t.previewUrl}function $X(e){let t=(0,J.c)(18),{target:n,onOpenChange:r,revertDisabled:i,onRevert:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={onCopy:tZ,onError:eZ},t[0]=o):o=t[0];let{copyToClipboard:s}=Pt(o),c=n!==null,l;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsxs)(yl,{children:[(0,Y.jsx)(xl,{children:`Message actions`}),(0,Y.jsx)(bl,{className:`sr-only`,children:`Actions for the selected message`})]}),t[1]=l):l=t[1];let u;t[2]!==s||t[3]!==r||t[4]!==n?(u=n?.copyText?(0,Y.jsx)(Cl,{label:n.role===`assistant`?`Copy response`:`Copy message`,icon:(0,Y.jsx)(Hn,{"aria-hidden":!0,className:`size-4 shrink-0`}),onClick:()=>{r(!1),s(n.copyText??``)}}):null,t[2]=s,t[3]=r,t[4]=n,t[5]=u):u=t[5];let d;t[6]!==r||t[7]!==a||t[8]!==i||t[9]!==n?(d=n?.role===`user`&&n.canRevert?(0,Y.jsx)(Cl,{label:`Revert to this message`,icon:(0,Y.jsx)(sc,{"aria-hidden":!0,className:`size-4 shrink-0`}),disabled:i,disabledReason:`Reverting is unavailable while the session is busy.`,onClick:()=>{r(!1),a()}}):null,t[6]=r,t[7]=a,t[8]=i,t[9]=n,t[10]=d):d=t[10];let f;t[11]!==u||t[12]!==d?(f=(0,Y.jsx)(_l,{children:(0,Y.jsxs)(`div`,{role:`group`,"aria-label":`Message actions`,className:`space-y-0.5`,children:[u,d]})}),t[11]=u,t[12]=d,t[13]=f):f=t[13];let p;return t[14]!==r||t[15]!==c||t[16]!==f?(p=(0,Y.jsxs)(wl,{open:c,onOpenChange:r,label:`Message actions`,children:[l,f]}),t[14]=r,t[15]=c,t[16]=f,t[17]=p):p=t[17],p}function eZ(e){Ve.add(fc({type:`error`,title:`Failed to copy`,description:e.message}))}function tZ(){Ve.add({type:`success`,title:`Copied to clipboard`})}function nZ(e){let t=`Context handoff from ${e.sources.map(ws).join(`, `)} to ${ws(e.target)}`;return e.status===`failed`?`${t}. Failed${e.error?`: ${e.error}`:``}`:e.status===`delivery-uncertain`?`${t}. Delivery uncertain${e.error?`: ${e.error}`:``}`:`${t}. Completed`}function rZ(e){let t=(0,J.c)(36),{marker:n,failed:r,uncertain:i}=e,a=r?`bg-destructive/35`:i?`bg-warning/40`:`bg-border/60`,o;t[0]===a?o=t[1]:(o=G(`h-px min-w-2 flex-1`,a),t[0]=a,t[1]=o);let s;t[2]===o?s=t[3]:(s=(0,Y.jsx)(`span`,{className:o,"aria-hidden":!0}),t[2]=o,t[3]=s);let c=r?`text-destructive`:i?`text-warning-foreground`:`text-muted-foreground/75`,l;t[4]===c?l=t[5]:(l=G(`flex min-w-0 max-w-[calc(100%_-_2.5rem)] flex-wrap items-center justify-center gap-x-1.5 gap-y-1 text-[11px] leading-4`,c),t[4]=c,t[5]=l);let u,d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(vu,{className:`size-3.5 shrink-0`}),d=(0,Y.jsx)(`span`,{className:`shrink-0 font-medium`,children:`Context handoff`}),t[6]=u,t[7]=d):(u=t[6],d=t[7]);let f;t[8]===n.sources?f=t[9]:(f=n.sources.map(iZ),t[8]=n.sources,t[9]=f);let p;t[10]===f?p=t[11]:(p=(0,Y.jsx)(`span`,{className:`inline-flex min-w-0 max-w-full flex-wrap items-center justify-center gap-x-1.5 gap-y-1`,children:f}),t[10]=f,t[11]=p);let m;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(Wo,{className:`size-3.5 shrink-0 text-muted-foreground/55`}),t[12]=m):m=t[12];let h=!r&&!i&&`text-foreground/85`,g;t[13]===h?g=t[14]:(g=G(`font-medium`,h),t[13]=h,t[14]=g);let _;t[15]===n.target?_=t[16]:(_=(0,Y.jsx)(Es,{endpoint:n.target,className:`max-w-40 sm:max-w-56`}),t[15]=n.target,t[16]=_);let v;t[17]!==g||t[18]!==_?(v=(0,Y.jsx)(`span`,{className:g,children:_}),t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==r||t[21]!==i?(y=r?(0,Y.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 rounded-full bg-destructive/10 px-1.5 py-0.5 text-[10px] font-medium`,children:[(0,Y.jsx)(sn,{className:`size-3`}),`Failed`]}):i?(0,Y.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 rounded-full bg-warning/15 px-1.5 py-0.5 text-[10px] font-medium`,children:[(0,Y.jsx)(Ai,{className:`size-3`}),`Delivery uncertain`]}):null,t[20]=r,t[21]=i,t[22]=y):y=t[22];let b;t[23]!==v||t[24]!==y||t[25]!==l||t[26]!==p?(b=(0,Y.jsxs)(`span`,{className:l,"aria-hidden":!0,children:[u,d,p,m,v,y]}),t[23]=v,t[24]=y,t[25]=l,t[26]=p,t[27]=b):b=t[27];let x=r?`bg-destructive/35`:i?`bg-warning/40`:`bg-border/60`,S;t[28]===x?S=t[29]:(S=G(`h-px min-w-2 flex-1`,x),t[28]=x,t[29]=S);let C;t[30]===S?C=t[31]:(C=(0,Y.jsx)(`span`,{className:S,"aria-hidden":!0}),t[30]=S,t[31]=C);let w;return t[32]!==b||t[33]!==C||t[34]!==s?(w=(0,Y.jsxs)(Y.Fragment,{children:[s,b,C]}),t[32]=b,t[33]=C,t[34]=s,t[35]=w):w=t[35],w}function iZ(e,t){return(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5`,children:[t>0?(0,Y.jsx)(`span`,{className:`text-muted-foreground/45`,children:`,`}):null,(0,Y.jsx)(Es,{endpoint:e,className:`max-w-40 sm:max-w-56`})]},`${e.providerInstanceId}:${e.modelSlug}`)}var aZ=(0,q.memo)(function(e){let t=(0,J.c)(43),{marker:n,onInspect:r}=e,i;t[0]===n?i=t[1]:(i=nZ(n),t[0]=n,t[1]=i);let a=i,o=n.status===`failed`,s=n.status===`delivery-uncertain`;if(!r){let e;t[2]!==o||t[3]!==n||t[4]!==s?(e=(0,Y.jsx)(rZ,{marker:n,failed:o,uncertain:s}),t[2]=o,t[3]=n,t[4]=s,t[5]=e):e=t[5];let r;return t[6]!==a||t[7]!==n.handoffId||t[8]!==n.sources.length||t[9]!==n.status||t[10]!==e?(r=(0,Y.jsx)(`div`,{role:`status`,"aria-label":a,title:a,className:`flex w-full min-w-0 max-w-full items-center gap-2 overflow-hidden py-2 sm:gap-3`,"data-context-handoff-id":n.handoffId,"data-context-handoff-status":n.status,"data-context-handoff-source-count":n.sources.length,children:e}),t[6]=a,t[7]=n.handoffId,t[8]=n.sources.length,t[9]=n.status,t[10]=e,t[11]=r):r=t[11],r}let c;t[12]!==n||t[13]!==r?(c=e=>r(n,e.currentTarget),t[12]=n,t[13]=r,t[14]=c):c=t[14];let l;t[15]!==o||t[16]!==n||t[17]!==s?(l=(0,Y.jsx)(rZ,{marker:n,failed:o,uncertain:s}),t[15]=o,t[16]=n,t[17]=s,t[18]=l):l=t[18];let u;t[19]!==a||t[20]!==n.handoffId||t[21]!==n.sources.length||t[22]!==n.status||t[23]!==c||t[24]!==l?(u=(0,Y.jsx)(`button`,{type:`button`,"aria-label":a,onClick:c,className:`group flex w-full min-w-0 max-w-full cursor-pointer items-center gap-2 overflow-hidden rounded-md py-2 outline-none transition-colors hover:bg-foreground/3 focus-visible:ring-1 focus-visible:ring-ring/60 sm:gap-3`,"data-context-handoff-id":n.handoffId,"data-context-handoff-status":n.status,"data-context-handoff-source-count":n.sources.length,children:l}),t[19]=a,t[20]=n.handoffId,t[21]=n.sources.length,t[22]=n.status,t[23]=c,t[24]=l,t[25]=u):u=t[25];let d=u,f;t[26]===d?f=t[27]:(f=(0,Y.jsx)(So,{render:d}),t[26]=d,t[27]=f);let p=n.status===`consumed`?`Sent to model`:n.status===`failed`?`Context handoff failed`:`Delivery uncertain`,m;t[28]===p?m=t[29]:(m=(0,Y.jsx)(`p`,{className:`font-medium text-foreground`,children:p}),t[28]=p,t[29]=m);let h;t[30]===n.createdAt?h=t[31]:(h=new Date(n.createdAt).toLocaleString(),t[30]=n.createdAt,t[31]=h);let g;t[32]===h?g=t[33]:(g=(0,Y.jsx)(`p`,{children:h}),t[32]=h,t[33]=g);let _;t[34]===n.inspection?_=t[35]:(_=n.inspection?(0,Y.jsxs)(`p`,{children:[n.inspection.includedEntryCount??n.inspection.completeEntryCount,` of`,` `,n.inspection.completeEntryCount,` context entries`,n.inspection.truncated?` · trimmed to fit`:``]}):(0,Y.jsx)(`p`,{children:`Open to inspect the available context artifact.`}),t[34]=n.inspection,t[35]=_);let v;t[36]!==_||t[37]!==m||t[38]!==g?(v=(0,Y.jsx)(Co,{className:`max-w-80 px-2 py-1.5`,side:`top`,children:(0,Y.jsxs)(`div`,{className:`space-y-1 text-left`,children:[m,g,_]})}),t[36]=_,t[37]=m,t[38]=g,t[39]=v):v=t[39];let y;return t[40]!==v||t[41]!==f?(y=(0,Y.jsxs)(wo,{children:[f,v]}),t[40]=v,t[41]=f,t[42]=y):y=t[42],y});function oZ(){return typeof window>`u`?null:window}function sZ(){return typeof document>`u`?null:document}function cZ({intervalMs:e,windowTarget:t=oZ(),documentTarget:n=sZ(),now:r=Date.now}){let i=new Set,a=null,o=!1,s=()=>n?.visibilityState!==`hidden`,c=()=>{let e=r();for(let t of i)t(e)},l=()=>{a!==null&&t&&(t.clearInterval(a),a=null)},u=()=>{a===null&&t&&i.size!==0&&s()&&(a=t.setInterval(c,e))},d=()=>{if(!s()){l();return}c(),u()},f=()=>{!o&&n&&(n.addEventListener(`visibilitychange`,d),o=!0)},p=()=>{o&&n&&(n.removeEventListener(`visibilitychange`,d),o=!1)};return{subscribe(e){i.add(e),f(),e(r()),u();let t=!1;return()=>{t||(t=!0,i.delete(e),i.size===0&&(l(),p()))}}}}var lZ=cZ({intervalMs:1e3}),uZ=/^(.*?)\s+line(?:s)?\s+(\d+)(?:-(\d+))?$/i;function dZ(e){return e.map(e=>e.header.trim()).filter(e=>e.length>0).map(fZ).join(` `)}function fZ(e){let t=e.trim(),n=uZ.exec(t);if(!n)return`@${t.toLowerCase().replace(/\s+/g,`-`)}`;let r=Number.parseInt(n[2]??``,10),i=Number.parseInt(n[3]??n[2]??``,10);return!Number.isFinite(r)||!Number.isFinite(i)?`@${t.toLowerCase().replace(/\s+/g,`-`)}`:ht({terminalLabel:n[1]?.trim()||`terminal`,lineStart:r,lineEnd:i})}function pZ(e,t){let n=0;for(let r of t){let t=fZ(r.header),i=e.indexOf(t,n);if(i===-1)return!1;n=i+t.length}return!0}var mZ=`grid transition-[grid-template-rows,opacity] duration-[220ms] ease-out motion-reduce:transition-none`,hZ=`grid-rows-[1fr] opacity-100`,gZ=`grid-rows-[0fr] opacity-0`,_Z=`min-h-0 overflow-hidden`,vZ=`transition-[opacity,transform] duration-[220ms] ease-out motion-reduce:transition-none`,yZ=`translate-y-0 opacity-100`,bZ=`-translate-y-1 opacity-0 pointer-events-none`,xZ=`size-3.5 shrink-0 transition-transform duration-[220ms] ease-out motion-reduce:transition-none`;function SZ(e,t){return G(mZ,e?hZ:gZ,t)}function CZ(e,t){return G(vZ,e?yZ:bZ,t)}function wZ(e,t){return G(xZ,e&&`rotate-90`,t)}function TZ(e){let t=(0,J.c)(5),{open:n,className:r}=e,i;t[0]!==r||t[1]!==n?(i=wZ(n,r),t[0]=r,t[1]=n,t[2]=i):i=t[2];let a;return t[3]===i?a=t[4]:(a=(0,Y.jsx)(Ms,{"aria-hidden":`true`,className:i}),t[3]=i,t[4]=a),a}function EZ(e){let t=(0,J.c)(14),{open:n,children:r,className:i,contentClassName:a}=e,o;t[0]!==i||t[1]!==n?(o=SZ(n,i),t[0]=i,t[1]=n,t[2]=o):o=t[2];let s=!n||void 0,c=!n,l;t[3]!==a||t[4]!==n?(l=CZ(n,a),t[3]=a,t[4]=n,t[5]=l):l=t[5];let u;t[6]!==r||t[7]!==l?(u=(0,Y.jsx)(`div`,{className:_Z,children:(0,Y.jsx)(`div`,{className:l,children:r})}),t[6]=r,t[7]=l,t[8]=u):u=t[8];let d;return t[9]!==o||t[10]!==s||t[11]!==c||t[12]!==u?(d=(0,Y.jsx)(`div`,{className:o,"aria-hidden":s,inert:c,children:u}),t[9]=o,t[10]=s,t[11]=c,t[12]=u,t[13]=d):d=t[13],d}var DZ=(0,q.createContext)(null),OZ=(0,q.createContext)(null);function kZ(e){let t=(0,J.c)(9),{value:n,children:r}=e,a;t[0]===n.routeThreadKey?a=t[1]:(a=i(n.routeThreadKey),t[0]=n.routeThreadKey,t[1]=a);let o=a,s;t[2]!==r||t[3]!==n?(s=(0,Y.jsx)(OZ.Provider,{value:n,children:r}),t[2]=r,t[3]=n,t[4]=s):s=t[4];let c=s,l;return t[5]!==c||t[6]!==o||t[7]!==n.routeThreadKey?(l=o?(0,Y.jsx)(BY,{threadRef:o,children:c},n.routeThreadKey):c,t[5]=c,t[6]=o,t[7]=n.routeThreadKey,t[8]=l):l=t[8],l}var AZ=()=>{},jZ=(0,Y.jsx)(`div`,{className:`h-[var(--chat-header-clearance,0.75rem)] sm:h-[var(--chat-header-clearance,1rem)]`}),MZ=(0,Y.jsx)(`div`,{className:`h-[var(--chat-composer-clearance,0.75rem)] sm:h-[var(--chat-composer-clearance,1rem)]`}),NZ=[],PZ=K(),FZ=()=>{},IZ=new Map,LZ={},RZ=1800,zZ=`size-6 min-w-6 rounded-md border-0 bg-transparent px-0 text-muted-foreground/45 shadow-none transition-[background-color,color,box-shadow] before:hidden hover:bg-foreground/8 hover:text-foreground/75 hover:shadow-sm/5 focus-visible:ring-1 focus-visible:ring-ring/60 disabled:hover:bg-transparent disabled:hover:text-muted-foreground/35`,BZ=(0,q.memo)(function({agentPanelModel:e=PZ,onOpenAgents:t=FZ,isWorking:n,activeTurnInProgress:r,activeTurnId:i,latestTurn:a=null,activeTurnStartedAt:o,listRef:s,targetMessageId:c=null,targetMessageRequestId:l=0,targetMessageRowHighlight:u=!0,threadMessageSearchQuery:d=``,threadMessageSearchOccurrencesByMessageId:f=IZ,activeThreadMessageSearchOccurrence:p=null,timelineEntries:m,turnDiffSummaryByAssistantMessageId:h,openDiffTurnId:g=null,routeThreadKey:_,onOpenTurnDiff:v,onCloseDiff:y,revertTurnCountByUserMessageId:b,undoTurnCountByTurnId:x,onRevertUserMessage:S,onUndoTurn:C,isRevertingCheckpoint:w,onImageExpand:T,activeThreadEnvironmentId:E,markdownCwd:D,resolvedTheme:O,timestampFormat:k,workspaceRoot:A,skills:j=NZ,liveFollowEnabled:M=!0,onIsAtEndChange:N,onManualNavigation:P,onUserReachedEnd:F,canLoadOlder:I=!1,isLoadingOlder:L=!1,loadOlderError:R=null,onLoadOlder:z,onInspectContextHandoff:ee}){Qo(`MessagesTimeline`);let te=vt(e=>e.threadTurnFoldExpandedById[_]??LZ),B=vt(e=>e.threadWorkGroupExpandedById[_]??LZ),ne=(0,q.useRef)(b);ne.current=b;let re=(0,q.useRef)(x);re.current=x;let ie=gQ((0,q.useMemo)(()=>UX({timelineEntries:m,latestTurn:a,runningTurnId:n||r?i??null:null,turnFoldExpandedById:te,workGroupExpandedById:B,isWorking:n,activeTurnStartedAt:o,turnDiffSummaryByAssistantMessageId:h,revertTurnCountByUserMessageId:ne.current,undoTurnCountByTurnId:re.current}),[m,a,r,i,te,B,n,o,h])),V=(0,q.useMemo)(()=>OX(ie),[ie]),[ae]=(0,q.useState)(()=>new Map),[H,U]=(0,q.useState)(null),[oe,se]=(0,q.useState)(!1),[ce,le]=(0,q.useState)(0),[ue,de]=(0,q.useState)(null),[fe,pe]=(0,q.useState)(null),me=(0,q.useRef)(!1),he=(0,q.useRef)(null),ge=(0,q.useCallback)(()=>{me.current=!0,he.current!==null&&window.clearTimeout(he.current),he.current=window.setTimeout(()=>{me.current=!1,he.current=null},800)},[]),_e=(0,q.useCallback)(e=>{pe(e)},[]),ve=(0,q.useCallback)(()=>{let e=s.current?.getScrollableNode?.();if(!(e instanceof HTMLElement))return null;let t=CX(e);return N(t),t},[s,N]),ye=(0,q.useCallback)(()=>{let e=ve(),t=s.current?.getScrollableNode?.();t instanceof HTMLElement&&t.scrollTop<=320&&I&&!L&&z?.(),e===!0&&me.current&&(me.current=!1,he.current!==null&&(window.clearTimeout(he.current),he.current=null),F?.());let n=s.current?.getState?.();if(!n||V.length===0)return;let r=n.scroll??0,i=r+(n.scrollLength??0);for(let e of V){let t=ae.get(e.id);if(!t)continue;let a=HZ(n,e.rowIndex),o=UZ(n,e.rowIndex),s=a!==null&&a<i&&a+Math.max(1,o??1)>r;t.dataset.inView=s?`true`:`false`}},[I,ve,L,s,V,ae,z,F]),be=(0,q.useMemo)(()=>(0,Y.jsxs)(Y.Fragment,{children:[jZ,I||L||R?(0,Y.jsx)(`div`,{className:`mx-auto flex min-h-9 w-full max-w-3xl items-center justify-center px-3 pb-2 text-xs text-muted-foreground`,children:L?(0,Y.jsx)(`span`,{role:`status`,children:`Loading earlier history…`}):(0,Y.jsx)(W,{size:`sm`,variant:`ghost`,onClick:z,children:R?`Retry earlier history`:`Load earlier history`})}):null]}),[I,L,R,z]);(0,q.useEffect)(()=>{let e=null,t=null,n=r=>{t=window.requestAnimationFrame(()=>{t=null;let i=s.current?.getScrollableNode?.();if(!(i instanceof HTMLElement)){r>0&&n(r-1);return}let a=()=>i.scrollHeight-i.clientHeight>1,o=()=>!CX(i),c=()=>{ge(),P?.()},l=e=>{if(a()){if(e.deltaY<0){P?.();return}e.deltaY>0&&ge()}},u=()=>{ge(),o()&&P?.()},d=e=>{ge(),(e.target===i?a():o())&&P?.()},f=e=>{switch(e.key){case`PageUp`:case`Home`:case`ArrowUp`:a()&&c();break;case`PageDown`:case`End`:case`ArrowDown`:ge()}};i.addEventListener(`wheel`,l,{passive:!0}),i.addEventListener(`touchmove`,u,{passive:!0}),i.addEventListener(`pointerdown`,d,{passive:!0}),i.addEventListener(`keydown`,f),e=()=>{i.removeEventListener(`wheel`,l),i.removeEventListener(`touchmove`,u),i.removeEventListener(`pointerdown`,d),i.removeEventListener(`keydown`,f)}})};return n(12),()=>{t!==null&&window.cancelAnimationFrame(t),e?.()}},[s,ge,P]),(0,q.useEffect)(()=>()=>{he.current!==null&&window.clearTimeout(he.current)},[]),(0,q.useEffect)(()=>{let e=requestAnimationFrame(ye);return()=>cancelAnimationFrame(e)},[ye,ie.length]),(0,q.useEffect)(()=>{if(!H)return;let e=s.current?.getState?.();if(!e?.listen)return;let t=[e.listen(`totalSize`,ve),e.listen(`headerSize`,ve),e.listen(`footerSize`,ve)];return()=>{for(let e of t)e()}},[ve,s,H]),(0,q.useEffect)(()=>{if(!H)return;let e=()=>{let e=H.getBoundingClientRect().width,t=yX(e);se(e=>e===t?e:t),le(bX(e)),ve()},t=requestAnimationFrame(e),n=new ResizeObserver(e);return n.observe(H),()=>{cancelAnimationFrame(t),n.disconnect()}},[ve,H]);let xe=(0,q.useRef)(ie.length);(0,q.useEffect)(()=>{let e=xe.current;if(xe.current=ie.length,e>0||ie.length===0)return;N(!0);let t=window.requestAnimationFrame(()=>{s.current?.scrollToEnd?.({animated:!1})});return()=>{window.cancelAnimationFrame(t)}},[s,N,ie.length]),(0,q.useEffect)(()=>{if(c===null){de(null);return}let e=ie.findIndex(e=>e.kind===`message`&&e.message.id===c);if(e<0){de(null);return}de(u?c:null),P?.(),s.current?.scrollToIndex?.({animated:!0,index:e,viewPosition:.45});let t=window.requestAnimationFrame(()=>{if(!u){let e=document.querySelector(`[data-thread-message-search-active="true"]`);if(e){e.scrollIntoView({behavior:`smooth`,block:`center`});return}}for(let e of document.querySelectorAll(`[data-message-id]`))if(e.dataset.messageId===c){e.scrollIntoView({behavior:`smooth`,block:`center`});break}}),n=window.setTimeout(()=>{de(e=>e===c?null:e)},RZ);return()=>{window.cancelAnimationFrame(t),window.clearTimeout(n)}},[s,P,ie,c,l,u]);let Se=(0,q.useMemo)(()=>TX({activeTurnInProgress:r,activeTurnId:i??null,isWorking:n,isRevertingCheckpoint:w,openDiffTurnId:g,agentPanelModel:e}),[r,i,e,n,w,g]),Ce=(0,q.useMemo)(()=>EX({timestampFormat:k,routeThreadKey:_,markdownCwd:D,resolvedTheme:O,workspaceRoot:A,skills:j,activeThreadEnvironmentId:E,highlightedMessageId:ue,threadMessageSearchQuery:d,threadMessageSearchOccurrencesByMessageId:f,activeThreadMessageSearchOccurrence:p,onRevertUserMessage:S,onUndoTurn:C,onImageExpand:T,onOpenTurnDiff:v,onCloseDiff:y??AZ,onOpenAgents:t,onOpenMessageActions:_e,...ee?{onInspectContextHandoff:ee}:{}}),[k,_,D,O,A,j,E,ue,d,f,p,S,C,T,v,y,t,_e,ee]),we=(0,q.useCallback)(({item:e})=>(0,Y.jsx)(`div`,{className:`mx-auto w-full min-w-0 max-w-3xl overflow-x-hidden`,"data-timeline-root":`true`,children:(0,Y.jsx)(YZ,{row:e})}),[]);return ie.length===0&&!n?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`h-full`}):(0,Y.jsx)(kZ,{value:Ce,children:(0,Y.jsxs)(DZ.Provider,{value:Se,children:[(0,Y.jsxs)(`div`,{ref:U,className:`relative h-full min-h-0`,children:[(0,Y.jsx)(js,{ref:s,data:ie,keyExtractor:VZ,renderItem:we,estimatedItemSize:56,recycleItems:!1,initialScrollAtEnd:!0,maintainScrollAtEnd:M,maintainScrollAtEndThreshold:.1,maintainVisibleContentPosition:!0,onScroll:ye,className:`h-full overflow-x-hidden overscroll-y-contain px-3 [scrollbar-width:none] sm:px-5 [&::-webkit-scrollbar]:hidden`,ListHeaderComponent:be,ListFooterComponent:MZ}),(0,Y.jsx)(GZ,{hasPersistentGutter:oe,hitStripWidth:ce,items:V,stripMap:ae,onSelect:e=>{ge(),P?.(),s.current?.scrollToIndex({index:e.rowIndex,animated:!0,viewOffset:24})}})]}),(0,Y.jsx)($X,{target:fe,onOpenChange:e=>{e||pe(null)},revertDisabled:w||n,onRevert:()=>{fe&&S(fe.messageId)}})]})})});function VZ(e){return e.id}function HZ(e,t){let n=e.positionAtIndex?.(t);return typeof n==`number`&&Number.isFinite(n)?n:null}function UZ(e,t){let n=e.sizeAtIndex?.(t);return typeof n==`number`&&Number.isFinite(n)?n:null}function WZ(e){return e instanceof Element&&e.closest(`[data-minimap-preview]`)!==null}function GZ(e){let t=(0,J.c)(56),{hasPersistentGutter:n,hitStripWidth:r,items:i,stripMap:a,onSelect:o}=e,[s,c]=(0,q.useState)(null),l=s!==null&&s<i.length?s:null,u=l===null?null:i[l]??null,d;t[0]!==i.length||t[1]!==l?(d=l===null?0:_X(l,i.length),t[0]=i.length,t[1]=l,t[2]=d):d=t[2];let f=d,p=l===null?`-50%`:l===0?`0%`:l===i.length-1?`-100%`:`-50%`,m;t[3]===i.length?m=t[4]:(m=e=>{let t=e.currentTarget.getBoundingClientRect();return vX({itemCount:i.length,railTop:t.top,railHeight:t.height,pointerY:e.clientY})},t[3]=i.length,t[4]=m);let h=m,g;t[5]===h?g=t[6]:(g=e=>{c(h(e))},t[5]=h,t[6]=g);let _=g,v;t[7]===i.length?v=t[8]:(v=e=>{c(t=>{let n=t??0;return Math.max(0,Math.min(i.length-1,n+e))})},t[7]=i.length,t[8]=v);let y=v;if(i.length<2)return null;let b=n?`true`:`false`,x=`Jump to message: ${u?.userText??`User message`}`,S=r>0?`pointer-events-auto`:`pointer-events-none`,C;t[9]===S?C=t[10]:(C=G(`absolute top-1/2 left-3 -translate-y-1/2 cursor-pointer bg-transparent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/70`,S),t[9]=S,t[10]=C);let w;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>c(null),t[11]=w):w=t[11];let T;t[12]!==i||t[13]!==o||t[14]!==h?(T=e=>{if(WZ(e.target))return;let t=h(e),n=t===null?null:i[t]??null;n&&o(n),e.currentTarget.blur()},t[12]=i,t[13]=o,t[14]=h,t[15]=T):T=t[15];let E;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>c(JZ),t[16]=E):E=t[16];let D;t[17]!==u||t[18]!==i.length||t[19]!==y||t[20]!==o?(D=e=>{e.key===`ArrowDown`?(e.preventDefault(),y(1)):e.key===`ArrowUp`?(e.preventDefault(),y(-1)):e.key===`Home`?(e.preventDefault(),c(0)):e.key===`End`?(e.preventDefault(),c(i.length-1)):(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),u&&o(u))},t[17]=u,t[18]=i.length,t[19]=y,t[20]=o,t[21]=D):D=t[21];let O;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>c(null),t[22]=O):O=t[22];let k;t[23]===i.length?k=t[24]:(k=gX(i.length),t[23]=i.length,t[24]=k);let A=u!==null,j;t[25]!==r||t[26]!==A?(j=wX(r,A),t[25]=r,t[26]=A,t[27]=j):j=t[27];let M;t[28]!==k||t[29]!==j?(M={height:k,width:j},t[28]=k,t[29]=j,t[30]=M):M=t[30];let N;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:`absolute top-0 left-3 h-full w-px bg-border/15`}),t[31]=N):N=t[31];let P;if(t[32]!==i||t[33]!==l||t[34]!==a){let e;t[36]!==i.length||t[37]!==l||t[38]!==a?(e=(e,t)=>{let n=l===null?null:Math.abs(t-l);return(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:G(`pointer-events-none absolute left-0 h-0.5 -translate-y-1/2 rounded-full bg-muted-foreground/35 transition-[background-color,width] duration-150 data-[in-view=true]:bg-foreground/90`,n===0?`w-6 bg-muted-foreground/75`:n===1?`w-4`:n===2?`w-2.5`:`w-2`),"data-in-view":`false`,"data-minimap-message-id":e.id,"data-minimap-strip":!0,ref:t=>{t?a.set(e.id,t):a.delete(e.id)},style:{top:`${_X(t,i.length)}%`}},e.id)},t[36]=i.length,t[37]=l,t[38]=a,t[39]=e):e=t[39],P=i.map(e),t[32]=i,t[33]=l,t[34]=a,t[35]=P}else P=t[35];let F;t[40]!==u||t[41]!==p||t[42]!==f?(F=u?(0,Y.jsx)(`span`,{className:`pointer-events-auto absolute left-8 w-80 cursor-text select-text`,"data-minimap-preview":!0,onMouseMove:KZ,style:{top:`${f}%`,transform:`translateY(${p})`},children:(0,Y.jsxs)(`span`,{className:`selection-glass-surface block rounded-xl border p-3 text-left text-popover-foreground`,children:[(0,Y.jsx)(`span`,{className:`block max-w-full overflow-hidden text-ellipsis whitespace-nowrap text-sm font-medium leading-5`,children:u.userText??`User message`}),u.assistantText?(0,Y.jsx)(`span`,{className:`mt-1 max-h-[3.75rem] overflow-hidden text-muted-foreground text-sm leading-5`,style:{display:`-webkit-box`,WebkitBoxOrient:`vertical`,WebkitLineClamp:3},children:u.assistantText}):null]})}):null,t[40]=u,t[41]=p,t[42]=f,t[43]=F):F=t[43];let I;t[44]!==T||t[45]!==D||t[46]!==M||t[47]!==P||t[48]!==F||t[49]!==x||t[50]!==C||t[51]!==_?(I=(0,Y.jsx)(`div`,{className:`relative h-full w-full select-none`,children:(0,Y.jsxs)(`button`,{"aria-label":x,className:C,"data-testid":`timeline-minimap-hit-strip`,onBlur:w,onClick:T,onFocus:E,onKeyDown:D,onMouseDown:qZ,onMouseLeave:O,onMouseMove:_,style:M,type:`button`,children:[N,P,F]})}),t[44]=T,t[45]=D,t[46]=M,t[47]=P,t[48]=F,t[49]=x,t[50]=C,t[51]=_,t[52]=I):I=t[52];let L;return t[53]!==I||t[54]!==b?(L=(0,Y.jsx)(`div`,{className:`group/minimap pointer-events-none absolute inset-y-0 left-0 z-40 hidden w-18 opacity-100 [@media(pointer:fine)]:block`,"data-persistent-gutter":b,"data-testid":`timeline-minimap`,children:I}),t[53]=I,t[54]=b,t[55]=L):L=t[55],L}function KZ(e){return e.stopPropagation()}function qZ(e){WZ(e.target)||e.preventDefault()}function JZ(e){return e??0}function YZ(e){let t=(0,J.c)(71),{row:n}=e,r=(0,q.use)(OZ),a=(0,q.use)(DZ),o;t[0]!==r||t[1]!==a?(o={...r,...a},t[0]=r,t[1]=a,t[2]=o):o=t[2];let s=o,c=xc()===`phone`,l;t[3]!==s||t[4]!==n?(l=()=>{if(n.kind!==`message`)return;if(n.message.role===`user`){let e=yt(n.message.text).copyText??null,t=typeof n.revertTurnCount==`number`;if(e===null&&!t)return;s.onOpenMessageActions({messageId:n.message.id,role:`user`,copyText:e,canRevert:t});return}if(n.message.role!==`assistant`)return;let e=vQ(n,s),t=e.visible?e.text??null:null;t!==null&&s.onOpenMessageActions({messageId:n.message.id,role:`assistant`,copyText:t,canRevert:!1})},t[3]=s,t[4]=n,t[5]=l):l=t[5];let u=!c||n.kind!==`message`,d;t[6]===u?d=t[7]:(d={disabled:u},t[6]=u,t[7]=d);let f=El(l,d),p=n.kind===`message`&&s.highlightedMessageId===n.message.id,m;t[8]!==s||t[9]!==n.kind||t[10]!==n.message?(m=n.kind===`message`?s.threadMessageSearchOccurrencesByMessageId.get(n.message.id):void 0,t[8]=s,t[9]=n.kind,t[10]=n.message,t[11]=m):m=t[11];let h=m,g;t[12]!==s||t[13]!==h||t[14]!==n.kind||t[15]!==n.message?(g=n.kind===`message`&&h!==void 0&&h.length>0&&s.threadMessageSearchQuery.trim().length>0?{query:s.threadMessageSearchQuery,activeOccurrenceIndex:s.activeThreadMessageSearchOccurrence?.messageId===n.message.id?s.activeThreadMessageSearchOccurrence.messageOccurrenceIndex:null}:void 0,t[12]=s,t[13]=h,t[14]=n.kind,t[15]=n.message,t[16]=g):g=t[16];let _=g,v=n.kind===`work`?`pb-0.5`:n.kind===`work-toggle`||n.kind===`message`&&n.message.role===`assistant`&&!n.showAssistantCopyButton?`pb-2`:`pb-4`,y=n.kind===`message`?`scroll-mt-12 rounded-xl transition-[background-color,box-shadow] duration-500`:null,b=p?`bg-primary/10 ring-1 ring-primary/30`:null,x=n.kind===`message`&&n.message.role===`assistant`?`group/assistant`:null,S;t[17]!==y||t[18]!==b||t[19]!==x||t[20]!==v?(S=G(v,y,b,x),t[17]=y,t[18]=b,t[19]=x,t[20]=v,t[21]=S):S=t[21];let C=n.kind===`message`?n.message.id:void 0,w=p?`true`:void 0,T=n.kind===`message`?n.message.role:void 0,E;t[22]!==n.groupedEntries||t[23]!==n.kind?(E=n.kind===`work`&&(0,Y.jsx)(iQ,{groupedEntries:n.groupedEntries}),t[22]=n.groupedEntries,t[23]=n.kind,t[24]=E):E=t[24];let D;t[25]===n?D=t[26]:(D=n.kind===`work-toggle`&&(0,Y.jsx)(oQ,{row:n}),t[25]=n,t[26]=D);let O;t[27]===n?O=t[28]:(O=n.kind===`turn-fold`&&(0,Y.jsx)(ZZ,{row:n}),t[27]=n,t[28]=O);let k;t[29]!==n.createdAt||t[30]!==n.kind||t[31]!==n.marker?(k=n.kind===`context-compaction`&&(0,Y.jsx)(cQ,{createdAt:n.createdAt,label:n.marker.label}),t[29]=n.createdAt,t[30]=n.kind,t[31]=n.marker,t[32]=k):k=t[32];let A;t[33]!==s||t[34]!==n.kind||t[35]!==n.marker?(A=n.kind===`context-handoff`&&(0,Y.jsx)(aZ,{marker:n.marker,...s.onInspectContextHandoff?{onInspect:s.onInspectContextHandoff}:{}}),t[33]=s,t[34]=n.kind,t[35]=n.marker,t[36]=A):A=t[36];let j;t[37]!==s||t[38]!==f||t[39]!==_||t[40]!==n.kind||t[41]!==n.message||t[42]!==n.revertTurnCount?(j=n.kind===`message`&&n.message.role===`user`&&(()=>{let e=n.message.attachments??[],t=yt(n.message.text),r=t.contexts,a=typeof n.revertTurnCount==`number`;return(0,Y.jsx)(`div`,{className:`flex justify-end`,children:(0,Y.jsxs)(`div`,{className:`group flex max-w-[80%] flex-col items-end`,children:[(0,Y.jsxs)(`div`,{className:`relative rounded-2xl rounded-br-sm bg-foreground/8 px-3 py-2 shadow-md/5 transition-[background-color,box-shadow] duration-200 group-hover:bg-foreground/10 group-hover:shadow-lg/8`,...f,children:[(0,Y.jsx)(qY,{attachments:e,variant:`user`,onImageExpand:s.onImageExpand,environmentId:s.activeThreadEnvironmentId,threadId:i(s.routeThreadKey)?.threadId,messageId:n.message.id}),(t.visibleText.trim().length>0||r.length>0)&&(0,Y.jsx)(hQ,{cwd:s.markdownCwd,environmentId:s.activeThreadEnvironmentId,text:t.visibleText,terminalContexts:r,skills:s.skills,searchHighlight:_})]}),(0,Y.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 opacity-0 transition-opacity duration-200 focus-within:opacity-100 group-hover:opacity-100 phone:opacity-100`,children:[t.copyText&&(0,Y.jsx)(tX,{text:t.copyText,size:`icon-xs`,variant:`ghost`,className:zZ,ariaLabel:`Copy message`}),a&&(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,className:zZ,disabled:s.isRevertingCheckpoint||s.isWorking,onClick:()=>s.onRevertUserMessage(n.message.id),title:`Revert to this message`,children:(0,Y.jsx)(sc,{className:`size-3`})})]}),(0,Y.jsxs)(`p`,{className:`text-right text-[11px] text-muted-foreground/50`,children:[n.message.dispatchMode===`steer`?`Steered · `:``,Ma(n.message.createdAt,s.timestampFormat)]})]})]})})})(),t[37]=s,t[38]=f,t[39]=_,t[40]=n.kind,t[41]=n.message,t[42]=n.revertTurnCount,t[43]=j):j=t[43];let M;t[44]!==s||t[45]!==f||t[46]!==_||t[47]!==n?(M=n.kind===`message`&&n.message.role===`assistant`&&(()=>{let e=n.message.text||(n.message.streaming||n.message.attachments?.length?``:`(empty response)`),t=_Q(n,s),r=vQ(n,s);return(0,Y.jsx)(Y.Fragment,{children:(0,Y.jsxs)(`div`,{className:`min-w-0 px-1 py-0.5`,...f,children:[(0,Y.jsx)(`div`,{tabIndex:-1,"data-selection-message-id":t?void 0:n.message.id,children:(0,Y.jsx)(xO,{allowTerminalInsertion:!0,text:e,cwd:s.markdownCwd,environmentId:s.activeThreadEnvironmentId,isStreaming:t,skills:s.skills,searchHighlight:_})}),(0,Y.jsx)(qY,{attachments:n.message.attachments??[],onImageExpand:s.onImageExpand,environmentId:s.activeThreadEnvironmentId,threadId:i(s.routeThreadKey)?.threadId,messageId:n.message.id}),!t&&(0,Y.jsx)(lQ,{turnSummary:n.assistantTurnDiffSummary,undoTurnCount:n.assistantUndoTurnCount,routeThreadKey:s.routeThreadKey,resolvedTheme:s.resolvedTheme,openDiffTurnId:s.openDiffTurnId,onOpenTurnDiff:s.onOpenTurnDiff,onCloseDiff:s.onCloseDiff}),(0,Y.jsxs)(`div`,{className:`mt-1.5 flex items-center gap-2`,children:[(0,Y.jsx)(`p`,{className:`text-[10px] text-muted-foreground/30`,children:n.message.streaming?(0,Y.jsx)(tQ,{createdAt:n.message.createdAt,durationStart:n.durationStart,timestampFormat:s.timestampFormat}):SQ(n.message.createdAt,Mn(n.durationStart,n.message.completedAt),s.timestampFormat)}),r.visible?(0,Y.jsx)(`div`,{className:`flex items-center opacity-0 transition-opacity duration-200 group-hover/assistant:opacity-100 phone:opacity-100`,children:(0,Y.jsx)(tX,{text:r.text??``,size:`icon-xs`,variant:`ghost`,className:zZ,ariaLabel:`Copy response`})}):null]})]})})})(),t[44]=s,t[45]=f,t[46]=_,t[47]=n,t[48]=M):M=t[48];let N;t[49]!==s||t[50]!==n.kind||t[51]!==n.proposedPlan?(N=n.kind===`proposed-plan`&&(0,Y.jsx)(`div`,{className:`min-w-0 px-1 py-0.5`,children:(0,Y.jsx)(JY,{planMarkdown:n.proposedPlan.planMarkdown,environmentId:s.activeThreadEnvironmentId,cwd:s.markdownCwd,workspaceRoot:s.workspaceRoot})}),t[49]=s,t[50]=n.kind,t[51]=n.proposedPlan,t[52]=N):N=t[52];let P;t[53]===n?P=t[54]:(P=n.kind===`working`&&(0,Y.jsx)($Z,{row:n}),t[53]=n,t[54]=P);let F;return t[55]!==n.id||t[56]!==n.kind||t[57]!==S||t[58]!==C||t[59]!==w||t[60]!==T||t[61]!==E||t[62]!==D||t[63]!==O||t[64]!==k||t[65]!==A||t[66]!==j||t[67]!==M||t[68]!==N||t[69]!==P?(F=(0,Y.jsxs)(`div`,{className:S,"data-timeline-row-id":n.id,"data-timeline-row-kind":n.kind,"data-message-id":C,"data-message-highlighted":w,"data-message-role":T,children:[E,D,O,k,A,j,M,N,P]}),t[55]=n.id,t[56]=n.kind,t[57]=S,t[58]=C,t[59]=w,t[60]=T,t[61]=E,t[62]=D,t[63]=O,t[64]=k,t[65]=A,t[66]=j,t[67]=M,t[68]=N,t[69]=P,t[70]=F):F=t[70],F}var XZ=`text-[13px] text-muted-foreground/70 tabular-nums`;function ZZ(e){let t=(0,J.c)(23),{row:n}=e,{routeThreadKey:r}=(0,q.use)(OZ),i=vt(QZ),a=n.status,o=n.expanded,s;t[0]!==r||t[1]!==n.expanded||t[2]!==n.foldId||t[3]!==i?(s=()=>i(r,n.foldId,!n.expanded),t[0]=r,t[1]=n.expanded,t[2]=n.foldId,t[3]=i,t[4]=s):s=t[4];let c;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(XZ,`flex cursor-pointer select-none items-center gap-1 pb-2 transition-colors duration-200 hover:text-muted-foreground/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),t[5]=c):c=t[5];let l;t[6]!==n.durationStart||t[7]!==n.label||t[8]!==n.status?(l=n.status===`running`?n.durationStart?(0,Y.jsxs)(Y.Fragment,{children:[`Working for `,(0,Y.jsx)(eQ,{createdAt:n.durationStart})]}):`Working…`:n.label??`Worked`,t[6]=n.durationStart,t[7]=n.label,t[8]=n.status,t[9]=l):l=t[9];let u;t[10]===l?u=t[11]:(u=(0,Y.jsx)(`span`,{children:l}),t[10]=l,t[11]=u);let d;t[12]===n.expanded?d=t[13]:(d=(0,Y.jsx)(TZ,{open:n.expanded,className:`text-muted-foreground/55`}),t[12]=n.expanded,t[13]=d);let f;t[14]!==n.expanded||t[15]!==s||t[16]!==u||t[17]!==d?(f=(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":o,onClick:s,className:c,children:[u,d]}),t[14]=n.expanded,t[15]=s,t[16]=u,t[17]=d,t[18]=f):f=t[18];let p;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Y.jsx)(`div`,{className:`h-px w-full bg-border`}),t[19]=p):p=t[19];let m;return t[20]!==n.status||t[21]!==f?(m=(0,Y.jsxs)(`div`,{className:`pt-1 pb-2`,"data-turn-fold-status":a,children:[f,p]}),t[20]=n.status,t[21]=f,t[22]=m):m=t[22],m}function QZ(e){return e.setThreadTurnFoldExpanded}function $Z(e){let t=(0,J.c)(5),{row:n}=e,r;t[0]===n.createdAt?r=t[1]:(r=n.createdAt?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:G(XZ,`flex items-center pb-2`),children:[`Working for `,(0,Y.jsx)(eQ,{createdAt:n.createdAt})]}),(0,Y.jsx)(`div`,{className:`h-px w-full bg-border`})]}):null,t[0]=n.createdAt,t[1]=r);let i;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsx)(`div`,{className:`pt-1.5 text-[13px] text-muted-foreground/70`,children:(0,Y.jsx)(`span`,{className:`shimmer thinking-status-shimmer`,children:`Thinking`})}),t[2]=i):i=t[2];let a;return t[3]===r?a=t[4]:(a=(0,Y.jsxs)(`div`,{className:`pt-1 pb-2`,children:[r,i]}),t[3]=r,t[4]=a),a}function eQ(e){let t=(0,J.c)(7),{createdAt:n}=e,r=(0,q.useRef)(null),i;t[0]===n?i=t[1]:(i=bQ(n),t[0]=n,t[1]=i);let a=i,o,s;t[2]===n?(o=t[3],s=t[4]):(o=()=>lZ.subscribe(e=>{r.current&&(r.current.textContent=bQ(n,e))}),s=[n],t[2]=n,t[3]=o,t[4]=s),(0,q.useEffect)(o,s);let c;return t[5]===a?c=t[6]:(c=(0,Y.jsx)(`span`,{ref:r,children:a}),t[5]=a,t[6]=c),c}function tQ(e){let t=(0,J.c)(11),{createdAt:n,durationStart:r,timestampFormat:i}=e,a=(0,q.useRef)(null),o;t[0]!==n||t[1]!==r||t[2]!==i?(o=xQ(n,r,i),t[0]=n,t[1]=r,t[2]=i,t[3]=o):o=t[3];let s=o,c,l;t[4]!==n||t[5]!==r||t[6]!==i?(c=()=>{let e=e=>{a.current&&(a.current.textContent=xQ(n,r,i,e))};if(!r){e(Date.now());return}return lZ.subscribe(e)},l=[n,r,i],t[4]=n,t[5]=r,t[6]=i,t[7]=c,t[8]=l):(c=t[7],l=t[8]),(0,q.useEffect)(c,l);let u;return t[9]===s?u=t[10]:(u=(0,Y.jsx)(`span`,{ref:a,children:s}),t[9]=s,t[10]=u),u}var nQ=`group/tool-row grid min-h-[30px] w-full grid-cols-[1.25rem_minmax(0,1fr)_auto] items-center gap-x-2 rounded-md px-2 text-left`,rQ=`text-muted-foreground/70 transition-colors duration-200 group-hover/tool-row:text-foreground group-focus-visible/tool-row:text-foreground`,iQ=(0,q.memo)(function(e){let t=(0,J.c)(22),{groupedEntries:n}=e,{activeTurnId:r,isWorking:i}=(0,q.use)(DZ),{workspaceRoot:a}=(0,q.use)(OZ),o=xc()===`phone`,s;t[0]===n?s=t[1]:(s=n.every(JQ),t[0]=n,t[1]=s);let c=s,l=c?`Tool calls`:`Work log`,u;t[2]!==l||t[3]!==n.length||t[4]!==c?(u=!c&&(0,Y.jsx)(`div`,{className:`flex items-center gap-2 px-2`,children:(0,Y.jsxs)(`p`,{className:`text-[9px] uppercase tracking-[0.16em] text-muted-foreground/55`,children:[l,` (`,n.length,`)`]})}),t[2]=l,t[3]=n.length,t[4]=c,t[5]=u):u=t[5];let d;if(t[6]!==r||t[7]!==n||t[8]!==o||t[9]!==i||t[10]!==a){let e;t[12]!==r||t[13]!==o||t[14]!==i||t[15]!==a?(e=e=>{let t=i&&r!=null&&e.turnId===r;return e.agentSpawn&&!o?(0,Y.jsx)(aQ,{workEntry:e},`work-row:${e.id}`):NQ(e)&&(e.changedFiles?.length??0)>0?(0,Y.jsx)(BQ,{isEditing:t&&!e.completed&&!DX(e),workEntry:e,workspaceRoot:a},`work-row:${e.id}`):(0,Y.jsx)(UQ,{workEntry:e,workspaceRoot:a},`work-row:${e.id}`)},t[12]=r,t[13]=o,t[14]=i,t[15]=a,t[16]=e):e=t[16],d=n.map(e),t[6]=r,t[7]=n,t[8]=o,t[9]=i,t[10]=a,t[11]=d}else d=t[11];let f;t[17]===d?f=t[18]:(f=(0,Y.jsx)(`div`,{className:`space-y-0.5`,children:d}),t[17]=d,t[18]=f);let p;return t[19]!==u||t[20]!==f?(p=(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[u,f]}),t[19]=u,t[20]=f,t[21]=p):p=t[21],p}),aQ=(0,q.memo)(function(e){let t=(0,J.c)(44),{workEntry:n}=e,{agentPanelModel:r}=(0,q.use)(DZ),{onOpenAgents:i}=(0,q.use)(OZ),a=n.agentSpawn;if(!a)return null;let o;t[0]===a.agentTaskIds?o=t[1]:(o=new Set(a.agentTaskIds),t[0]=a.agentTaskIds,t[1]=o);let s=o,c,l,u,d,f,p,m,h,g;if(t[2]!==r||t[3]!==s||t[4]!==i||t[5]!==a.workflowId){let e=a.workflowId?r.workflows.find(e=>e.workflow.id===a.workflowId):void 0,n=e?[...e.phases.flatMap(YQ),...e.unphasedMembers]:r.directAgents.filter(e=>s.has(e.id)),o=Math.max(n.length,Math.max(s.size-+!!a.workflowId,0)),_=n.filter(XQ).length,v=n.filter(ZQ).length,y=n.filter(QQ).length,b=e?.workflow.status,x=e===void 0?_+v>0:b!==`completed`&&b!==`failed`&&b!==`cancelled`&&b!==`interrupted`,S=n.reduce($Q,a.workflowId&&n.length===0?e?.workflow.usage?.totalTokens??0:0),C=e?.phases.find(e$),w=e?.workflow.workflowName??e?.workflow.title??null,T=_+v,E=x?`bg-info`:y>0?`bg-destructive`:`bg-success`,D=x?`Kicked off ${o} subagent${o===1?``:`s`}`:`Ran ${o} subagent${o===1?``:`s`}`,O=x?C?`${C.title} · ${C.activeCount} working`:T>0?`${T} working`:`Working`:y>0?`${y} failed`:`Completed`;d=`button`,f=i,p=x?`Open the Agents panel`:`View agents`,t[15]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(Tl(`chip`),`group/agent-cta grid min-h-[36px] w-full grid-cols-[1.25rem_minmax(0,1fr)_auto_1.25rem] items-center gap-x-2 rounded-lg border border-border/50 px-2 text-left transition-colors hover:border-border/80 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),t[15]=m):m=t[15],t[16]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(Jo,{"aria-hidden":!0,className:`size-3.5 text-muted-foreground/70 transition-colors group-hover/agent-cta:text-foreground`})}),t[16]=h):h=t[16];let k;t[17]===E?k=t[18]:(k=G(`size-1.5 shrink-0 rounded-full`,E),t[17]=E,t[18]=k);let A;t[19]===k?A=t[20]:(A=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:k}),t[19]=k,t[20]=A);let j;t[21]===D?j=t[22]:(j=(0,Y.jsx)(`span`,{className:`font-medium text-foreground/90`,children:D}),t[21]=D,t[22]=j);let M=w?(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[` · `,w]}):null,N;t[23]!==j||t[24]!==M?(N=(0,Y.jsxs)(`span`,{className:`truncate text-[12px] leading-5`,children:[j,M]}),t[23]=j,t[24]=M,t[25]=N):N=t[25],t[26]!==A||t[27]!==N?(g=(0,Y.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[A,N]}),t[26]=A,t[27]=N,t[28]=g):g=t[28],c=`flex shrink-0 items-center gap-2 text-[11px] leading-5 text-muted-foreground`,t[29]===O?l=t[30]:(l=(0,Y.jsx)(`span`,{children:O}),t[29]=O,t[30]=l),u=S>0?(0,Y.jsxs)(`span`,{className:`tabular-nums`,children:[gn(S),` tok`]}):null,t[2]=r,t[3]=s,t[4]=i,t[5]=a.workflowId,t[6]=c,t[7]=l,t[8]=u,t[9]=d,t[10]=f,t[11]=p,t[12]=m,t[13]=h,t[14]=g}else c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14];let _;t[31]!==c||t[32]!==l||t[33]!==u?(_=(0,Y.jsxs)(`span`,{className:c,children:[l,u]}),t[31]=c,t[32]=l,t[33]=u,t[34]=_):_=t[34];let v;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(Ms,{"aria-hidden":!0,className:`size-3.5 text-muted-foreground/60 transition-[color,translate] group-hover/agent-cta:translate-x-0.5 group-hover/agent-cta:text-foreground`})}),t[35]=v):v=t[35];let y;return t[36]!==_||t[37]!==d||t[38]!==f||t[39]!==p||t[40]!==m||t[41]!==h||t[42]!==g?(y=(0,Y.jsxs)(`button`,{type:d,onClick:f,"aria-label":p,className:m,children:[h,g,_,v]}),t[36]=_,t[37]=d,t[38]=f,t[39]=p,t[40]=m,t[41]=h,t[42]=g,t[43]=y):y=t[43],y});function oQ(e){let t=(0,J.c)(23),{row:n}=e,{routeThreadKey:r}=(0,q.use)(OZ),i=vt(sQ),a=n.onlyToolEntries?n.hiddenCount===1?`tool call`:`tool calls`:n.hiddenCount===1?`log entry`:`log entries`,o=n.summary?`${n.summary.label}${n.summary.hasRunningEntry?` · Running`:``}`:`${n.hiddenCount} ${a}`,s;t[0]===n.summary?s=t[1]:(s=n.summary?kQ(n.summary.iconEntry):fr,t[0]=n.summary,t[1]=s);let c=s,l=n.expanded,u;t[2]!==r||t[3]!==n.expanded||t[4]!==n.groupId||t[5]!==i?(u=()=>i(r,n.groupId,!n.expanded),t[2]=r,t[3]=n.expanded,t[4]=n.groupId,t[5]=i,t[6]=u):u=t[6];let d,f;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=G(nQ,`cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),f=G(`flex size-5 items-center justify-center`,rQ),t[7]=d,t[8]=f):(d=t[7],f=t[8]);let p;t[9]===c?p=t[10]:(p=(0,Y.jsx)(`span`,{className:f,children:(0,Y.jsx)(c,{className:`size-3.5`,"aria-hidden":!0})}),t[9]=c,t[10]=p);let m;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(`truncate text-[12px] leading-5`,rQ),t[11]=m):m=t[11];let h;t[12]===o?h=t[13]:(h=(0,Y.jsx)(`span`,{className:m,children:o}),t[12]=o,t[13]=h);let g=n.expanded,_;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(_=G(`size-3`,rQ),t[14]=_):_=t[14];let v;t[15]===n.expanded?v=t[16]:(v=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(TZ,{open:g,className:_})}),t[15]=n.expanded,t[16]=v);let y;return t[17]!==n.expanded||t[18]!==v||t[19]!==u||t[20]!==p||t[21]!==h?(y=(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":l,onClick:u,"data-work-group-toggle":`true`,className:d,children:[p,h,v]}),t[17]=n.expanded,t[18]=v,t[19]=u,t[20]=p,t[21]=h,t[22]=y):y=t[22],y}function sQ(e){return e.setThreadWorkGroupExpanded}var cQ=(0,q.memo)(function(e){let t=(0,J.c)(16),{createdAt:n,label:r}=e,{timestampFormat:i}=(0,q.use)(OZ),a;t[0]!==n||t[1]!==i?(a=Ma(n,i),t[0]=n,t[1]=i,t[2]=a):a=t[2];let o=a,s=`${r} at ${o}`,c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(`span`,{className:`h-px flex-1 bg-border/55`}),t[3]=c):c=t[3];let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Y.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-muted-foreground/35`}),t[4]=l):l=t[4];let u;t[5]===r?u=t[6]:(u=(0,Y.jsx)(`span`,{className:`truncate`,children:r}),t[5]=r,t[6]=u);let d;t[7]===o?d=t[8]:(d=(0,Y.jsx)(`span`,{className:`shrink-0 font-normal normal-case tracking-normal text-muted-foreground/45`,children:o}),t[7]=o,t[8]=d);let f;t[9]!==u||t[10]!==d?(f=(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-2 rounded-full border border-border/60 bg-muted/35 px-2.5 py-1 text-[10px] font-medium uppercase tracking-[0.14em] text-muted-foreground/75`,children:[l,u,d]}),t[9]=u,t[10]=d,t[11]=f):f=t[11];let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Y.jsx)(`span`,{className:`h-px flex-1 bg-border/55`}),t[12]=p):p=t[12];let m;return t[13]!==s||t[14]!==f?(m=(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-1.5`,"aria-label":s,children:[c,f,p]}),t[13]=s,t[14]=f,t[15]=m):m=t[15],m}),lQ=(0,q.memo)(function(e){let t=(0,J.c)(9),{turnSummary:n,undoTurnCount:r,routeThreadKey:i,resolvedTheme:a,openDiffTurnId:o,onOpenTurnDiff:s,onCloseDiff:c}=e;if(!n)return null;let l=n.files;if(l.length===0)return null;let u;return t[0]!==l||t[1]!==c||t[2]!==s||t[3]!==o||t[4]!==a||t[5]!==i||t[6]!==n||t[7]!==r?(u=(0,Y.jsx)(dQ,{turnSummary:n,checkpointFiles:l,undoTurnCount:r,routeThreadKey:i,resolvedTheme:a,openDiffTurnId:o,onOpenTurnDiff:s,onCloseDiff:c}),t[0]=l,t[1]=c,t[2]=s,t[3]=o,t[4]=a,t[5]=i,t[6]=n,t[7]=r,t[8]=u):u=t[8],u}),uQ=6;function dQ(e){let t=(0,J.c)(90),{turnSummary:n,checkpointFiles:r,undoTurnCount:i,routeThreadKey:a,resolvedTheme:o,openDiffTurnId:s,onOpenTurnDiff:c,onCloseDiff:l}=e,{onUndoTurn:u}=(0,q.use)(OZ),{isRevertingCheckpoint:d}=(0,q.use)(DZ),f;t[0]!==a||t[1]!==n.turnId?(f=e=>e.threadChangedFilesExpandedById[a]?.[n.turnId]??!0,t[0]=a,t[1]=n.turnId,t[2]=f):f=t[2];let p=vt(f),m=vt(fQ),[h,g]=(0,q.useState)(!1),_,v,y,b,x,S,C,w,T,E,D;if(t[3]!==r||t[4]!==p||t[5]!==h||t[6]!==s||t[7]!==n.turnId||t[8]!==i){let e=yk(r);v=s===n.turnId;let a=`Edited ${r.length} ${r.length===1?`file`:`files`}`,o;t[20]!==r||t[21]!==h?(o=h?r:r.slice(0,uQ),t[20]=r,t[21]=h,t[22]=o):o=t[22],D=o,y=r.length-D.length,_=i!==void 0,E=`chat-final-diff-section mt-2 mb-1 overflow-hidden rounded-[0.65rem] border border-border/70`;let c=p&&`border-b border-border/70`;t[23]===c?T=t[24]:(T=G(`flex items-center justify-between gap-3 bg-muted/40 px-3 py-1.5`,c),t[23]=c,t[24]=T),C=`flex min-w-0 items-center gap-2.5`,t[25]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Y.jsx)(zs,{className:`size-3.5 shrink-0 text-muted-foreground/70`,"aria-hidden":!0}),t[25]=w):w=t[25],b=`min-w-0`,t[26]===a?x=t[27]:(x=(0,Y.jsx)(`div`,{className:`truncate text-[12px] text-foreground/92`,children:a}),t[26]=a,t[27]=x),S=xk(e)&&(0,Y.jsx)(`div`,{className:`text-[12px] tabular-nums`,children:(0,Y.jsx)(Sk,{additions:e.additions,deletions:e.deletions})}),t[3]=r,t[4]=p,t[5]=h,t[6]=s,t[7]=n.turnId,t[8]=i,t[9]=_,t[10]=v,t[11]=y,t[12]=b,t[13]=x,t[14]=S,t[15]=C,t[16]=w,t[17]=T,t[18]=E,t[19]=D}else _=t[9],v=t[10],y=t[11],b=t[12],x=t[13],S=t[14],C=t[15],w=t[16],T=t[17],E=t[18],D=t[19];let O;t[28]!==b||t[29]!==x||t[30]!==S?(O=(0,Y.jsxs)(`div`,{className:b,children:[x,S]}),t[28]=b,t[29]=x,t[30]=S,t[31]=O):O=t[31];let k;t[32]!==C||t[33]!==w||t[34]!==O?(k=(0,Y.jsxs)(`div`,{className:C,children:[w,O]}),t[32]=C,t[33]=w,t[34]=O,t[35]=k):k=t[35];let A;t[36]!==_||t[37]!==d||t[38]!==u||t[39]!==i?(A=_&&(0,Y.jsxs)(`button`,{type:`button`,"data-changed-files-undo":`true`,disabled:d,className:`flex items-center gap-1 text-[12px] text-muted-foreground transition-colors hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>u(i),children:[`Undo`,(0,Y.jsx)(sc,{className:`size-3`,"aria-hidden":!0})]}),t[36]=_,t[37]=d,t[38]=u,t[39]=i,t[40]=A):A=t[40];let j;t[41]!==r[0]?.path||t[42]!==v||t[43]!==l||t[44]!==c||t[45]!==n.turnId?(j=()=>{if(v){l();return}c(n.turnId,r[0]?.path)},t[41]=r[0]?.path,t[42]=v,t[43]=l,t[44]=c,t[45]=n.turnId,t[46]=j):j=t[46];let M=v?`Close diff`:`Review changes`,N;t[47]!==j||t[48]!==M?(N=(0,Y.jsx)(`button`,{type:`button`,className:`text-[12px] text-muted-foreground transition-colors hover:text-foreground`,onClick:j,children:M}),t[47]=j,t[48]=M,t[49]=N):N=t[49];let P=p?`Collapse changed files list`:`Expand changed files list`,F;t[50]!==p||t[51]!==a||t[52]!==m||t[53]!==n.turnId?(F=()=>m(a,n.turnId,!p),t[50]=p,t[51]=a,t[52]=m,t[53]=n.turnId,t[54]=F):F=t[54];let I;t[55]===p?I=t[56]:(I=(0,Y.jsx)(TZ,{open:p,className:`size-3.5`}),t[55]=p,t[56]=I);let L;t[57]!==p||t[58]!==P||t[59]!==F||t[60]!==I?(L=(0,Y.jsx)(`button`,{type:`button`,"data-scroll-anchor-ignore":!0,"aria-expanded":p,"aria-label":P,className:`inline-flex items-center justify-center rounded-md p-1 text-muted-foreground/70 transition-colors hover:bg-foreground/5 hover:text-foreground/80`,onClick:F,children:I}),t[57]=p,t[58]=P,t[59]=F,t[60]=I,t[61]=L):L=t[61];let R;t[62]!==A||t[63]!==N||t[64]!==L?(R=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[A,N,L]}),t[62]=A,t[63]=N,t[64]=L,t[65]=R):R=t[65];let z;t[66]!==k||t[67]!==R||t[68]!==T?(z=(0,Y.jsxs)(`div`,{className:T,children:[k,R]}),t[66]=k,t[67]=R,t[68]=T,t[69]=z):z=t[69];let ee;if(t[70]!==c||t[71]!==o||t[72]!==n.turnId||t[73]!==D){let e;t[75]!==c||t[76]!==o||t[77]!==n.turnId?(e=e=>(0,Y.jsx)(pQ,{file:e,resolvedTheme:o,onOpen:()=>c(n.turnId,e.path)},e.path),t[75]=c,t[76]=o,t[77]=n.turnId,t[78]=e):e=t[78],ee=D.map(e),t[70]=c,t[71]=o,t[72]=n.turnId,t[73]=D,t[74]=ee}else ee=t[74];let te;t[79]!==h||t[80]!==y?(te=y>0||h?(0,Y.jsxs)(`button`,{type:`button`,"data-scroll-anchor-ignore":!0,"aria-expanded":h,className:`flex w-full items-center gap-1.5 border-t border-border/70 px-3 py-2 text-[12px] text-muted-foreground transition-colors hover:bg-foreground/5 hover:text-foreground`,onClick:()=>g(!h),children:[(0,Y.jsx)(TZ,{open:h,className:`size-3.5`}),(0,Y.jsx)(`span`,{children:h?`Show less`:`Show ${y} more ${y===1?`file`:`files`}`})]}):null,t[79]=h,t[80]=y,t[81]=te):te=t[81];let B;t[82]!==p||t[83]!==ee||t[84]!==te?(B=(0,Y.jsxs)(EZ,{open:p,children:[ee,te]}),t[82]=p,t[83]=ee,t[84]=te,t[85]=B):B=t[85];let ne;return t[86]!==z||t[87]!==B||t[88]!==E?(ne=(0,Y.jsxs)(`div`,{className:E,children:[z,B]}),t[86]=z,t[87]=B,t[88]=E,t[89]=ne):ne=t[89],ne}function fQ(e){return e.setThreadChangedFilesExpanded}function pQ(e){let t=(0,J.c)(15),{file:n,resolvedTheme:r,onOpen:i}=e,a=n.additions??0,o=n.deletions??0,s=a+o>0,c;t[0]!==n.path||t[1]!==r?(c=(0,Y.jsx)(cE,{pathValue:n.path,kind:`file`,theme:r,className:`size-4 shrink-0 opacity-80`}),t[0]=n.path,t[1]=r,t[2]=c):c=t[2];let l;t[3]===n.path?l=t[4]:(l=(0,Y.jsx)(`span`,{className:`truncate text-[12px] text-foreground/88 underline-offset-2 group-hover/file-row:underline`,children:n.path}),t[3]=n.path,t[4]=l);let u;t[5]!==a||t[6]!==o||t[7]!==s?(u=s&&(0,Y.jsx)(`span`,{className:`ml-auto shrink-0 text-[12px] tabular-nums`,children:(0,Y.jsx)(Sk,{additions:a,deletions:o})}),t[5]=a,t[6]=o,t[7]=s,t[8]=u):u=t[8];let d;return t[9]!==n.path||t[10]!==i||t[11]!==c||t[12]!==l||t[13]!==u?(d=(0,Y.jsxs)(`button`,{type:`button`,"data-changed-file-row":`true`,title:n.path,className:`group/file-row flex w-full items-center gap-2 border-t border-border/70 px-3 py-2 text-left transition-colors first:border-t-0 hover:bg-foreground/5`,onClick:i,children:[c,l,u]}),t[9]=n.path,t[10]=i,t[11]=c,t[12]=l,t[13]=u,t[14]=d):d=t[14],d}var mQ=(0,q.memo)(function(e){let t=(0,J.c)(3),n=e.context.body.length>0?`${e.context.header}\n${e.context.body}`:e.context.header,r;return t[0]!==e.context.header||t[1]!==n?(r=(0,Y.jsx)(lW,{label:e.context.header,tooltipText:n}),t[0]=e.context.header,t[1]=n,t[2]=r):r=t[2],r}),hQ=(0,q.memo)(function(e){let t=xc()===`phone`,n=(0,q.useRef)({occurrenceIndex:0});if(n.current.occurrenceIndex=0,!t&&/(?:^|\n) {0,3}(?:`{3,}|~{3,})/.test(e.text))return(0,Y.jsxs)(Y.Fragment,{children:[e.terminalContexts.length>0?(0,Y.jsx)(`div`,{className:`mb-1 flex flex-wrap gap-1`,children:e.terminalContexts.map(e=>(0,Y.jsx)(mQ,{context:e},e.header))}):null,(0,Y.jsx)(xO,{allowTerminalInsertion:!0,text:e.text,cwd:e.cwd,environmentId:e.environmentId,skills:e.skills,searchHighlight:e.searchHighlight})]});let r=e.searchHighlight?{...e.searchHighlight,cursor:n.current,keyPrefix:`user-message`}:void 0;if(e.terminalContexts.length>0){let t=pZ(e.text,e.terminalContexts),n=dZ(e.terminalContexts),i=[];if(t){let t=0;for(let n of e.terminalContexts){let a=fZ(n.header),o=e.text.indexOf(a,t);if(o===-1){i.length=0;break}o>t&&i.push((0,Y.jsx)(`span`,{children:(0,Y.jsx)(OE,{text:e.text.slice(t,o),skills:e.skills,searchHighlight:r})},`user-terminal-context-inline-before:${n.header}:${t}`)),i.push((0,Y.jsx)(mQ,{context:n},`user-terminal-context-inline:${n.header}`)),t=o+a.length}if(i.length>0)return t<e.text.length&&i.push((0,Y.jsx)(`span`,{children:(0,Y.jsx)(OE,{text:e.text.slice(t),skills:e.skills,searchHighlight:r})},`user-message-terminal-context-inline-rest:${t}`)),(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm leading-relaxed text-foreground`,children:i})}for(let t of e.terminalContexts)i.push((0,Y.jsx)(mQ,{context:t},`user-terminal-context-inline:${t.header}`)),i.push((0,Y.jsx)(`span`,{"aria-hidden":`true`,children:` `},`user-terminal-context-inline-space:${t.header}`));if(e.text.length>0)i.push((0,Y.jsx)(`span`,{children:(0,Y.jsx)(OE,{text:e.text,skills:e.skills,searchHighlight:r})},`user-message-terminal-context-inline-text`));else if(n.length===0)return null;return(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm leading-relaxed text-foreground`,children:i})}return e.text.length===0?null:(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word text-sm leading-relaxed text-foreground`,children:(0,Y.jsx)(OE,{text:e.text,skills:e.skills,searchHighlight:r})})});function gQ(e){let t=(0,q.useRef)({byId:new Map,result:[]});return(0,q.useMemo)(()=>{let n=WX(e,t.current);return t.current=n,n.result},[e])}function _Q(e,t){let n=t.activeTurnInProgress&&t.activeTurnId!==null&&t.activeTurnId!==void 0&&e.message.turnId===t.activeTurnId,r=t.activeTurnInProgress&&t.activeTurnId!==null&&t.activeTurnId!==void 0&&e.assistantTurnDiffSummary?.turnId===t.activeTurnId;return!!(e.message.streaming||n||r)}function vQ(e,t){return NX({text:e.message.text??null,showCopyButton:e.showAssistantCopyButton,streaming:_Q(e,t)})}function yQ(e,t){let n=Date.parse(e),r=Date.parse(t);if(!Number.isFinite(n)||!Number.isFinite(r))return null;let i=Math.max(0,Math.floor((r-n)/1e3));if(i<60)return`${i}s`;let a=Math.floor(i/3600),o=Math.floor(i%3600/60),s=i%60;return a>0?o>0?`${a}h ${o}m`:`${a}h`:s>0?`${o}m ${s}s`:`${o}m`}function bQ(e,t=Date.now()){return yQ(e,new Date(t).toISOString())??`0s`}function xQ(e,t,n,r=Date.now()){return SQ(e,t?Mn(t,new Date(r).toISOString()):null,n)}function SQ(e,t,n){return t?`${Ma(e,n)} • ${t}`:Ma(e,n)}function CQ(e){return e===`error`?sn:e===`thinking`?Jo:e===`info`?Yn:md}function wQ(e,t){let n=e.command??e.rawCommand;if(n)return mf(n).target;if((e.changedFiles?.length??0)>0){let n=e.changedFiles,[r]=n;if(r)return n.length===1?sf(fD(r,t)):`${n.length} files`}let r=e.detail?.trim();if(!r)return null;let i=TQ(r);return i?sf(i):e.requestKind===`file-read`||e.requestKind===`file-change`||e.itemType===`file_change`||r.startsWith(`{`)||r.startsWith(`[`)?null:r}function TQ(e){let t=/^(.+?\.[A-Za-z0-9][A-Za-z0-9._-]*)(?::\d+)?(?::\d+)?$/u.exec(e.trim());return t?.[1]?.includes(`/`)?t[1].trim():/"(?:file_path|filePath|path|filename)"\s*:\s*"([^"]+)"/u.exec(e)?.[1]?.trim()??null}function EQ(e){return e.rawCommand?.trim()||e.command?.trim()||null}function DQ(e){let t=e.command??e.rawCommand;switch(t?hf(t):`terminal`){case`inspect`:return Ia;case`git`:case`github`:return ui;case`terminal`:return ha}}function OQ(e){let t=(e.toolTitle??``).toLowerCase().replace(/[^a-z]/g,``);return t===`read`||t===`readfile`||t===`viewfile`}function kQ(e){if(DX(e))return sn;if(e.requestKind===`command`)return DQ(e);if(e.requestKind===`file-read`)return Ia;if(e.requestKind===`file-change`)return xa;if(e.itemType===`command_execution`||e.command)return DQ(e);if(e.itemType===`file_change`||(e.changedFiles?.length??0)>0)return xa;if(e.itemType===`web_search`)return la;if(e.itemType===`image_view`)return Pi;if(OQ(e))return Ia;switch(e.itemType){case`mcp_tool_call`:return dc;case`dynamic_tool_call`:return Hu;case`collab_agent_tool_call`:return Jo}return e.taskId?Jo:CQ(e.tone)}function AQ(e){let t=e.trim();return t.length===0?e:`${t.charAt(0).toUpperCase()}${t.slice(1)}`}function jQ(e){return e.toolTitle?AQ(MX(e.toolTitle)):AQ(MX(e.label))}function MQ(e,t){return t?cf(e)===cf(t)?e:`${e} · ${t}`:e}function NQ(e){return e.requestKind===`file-change`||e.itemType===`file_change`||(e.changedFiles?.length??0)>0}function PQ(e){return typeof e.additions==`number`||typeof e.deletions==`number`}function FQ(e){return e?.some(PQ)?e.reduce((e,t)=>({additions:e.additions+(t.additions??0),deletions:e.deletions+(t.deletions??0)}),{additions:0,deletions:0}):null}function IQ(e){let t=e.replaceAll(`\\`,`/`).split(`/`);for(let e=t.length-1;e>=0;--e){let n=t[e];if(n)return n}return e}function LQ(e){let t=(0,J.c)(7),n;t[0]===e.additions?n=t[1]:(n=(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,e.additions]}),t[0]=e.additions,t[1]=n);let r;t[2]===e.deletions?r=t[3]:(r=(0,Y.jsxs)(`span`,{className:`ml-1 text-destructive`,children:[`-`,e.deletions]}),t[2]=e.deletions,t[3]=r);let i;return t[4]!==n||t[5]!==r?(i=(0,Y.jsxs)(Y.Fragment,{children:[n,r]}),t[4]=n,t[5]=r,t[6]=i):i=t[6],i}var RQ=(0,q.memo)(function(e){let t=(0,J.c)(37),{workEntry:n,workspaceRoot:r}=e,i,a,o,s,c,l;if(t[0]!==n||t[1]!==r){let e=DX(n),u;t[8]===n?u=t[9]:(u=kQ(n),t[8]=n,t[9]=u),i=u;let d=jQ(n),f=wQ(n,r);c=EQ(n),a=MQ(d,f??(c?mf(c).target:null));let p;t[10]===n?p=t[11]:(p=Kf(n),t[10]=n,t[11]=p),s=p,o=s?`${a} · ${s}`:a,l=G(`flex size-5 items-center justify-center`,rQ,e&&`text-destructive-foreground group-hover/tool-row:text-destructive-foreground group-focus-visible/tool-row:text-destructive-foreground`),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l}else i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7];let u;t[12]===i?u=t[13]:(u=(0,Y.jsx)(i,{className:`size-3.5`}),t[12]=i,t[13]=u);let d;t[14]!==l||t[15]!==u?(d=(0,Y.jsx)(`span`,{className:l,"data-work-entry-icon":`true`,children:u}),t[14]=l,t[15]=u,t[16]=d):d=t[16];let f;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(f=G(`truncate text-[12px] leading-5`,rQ),t[17]=f):f=t[17];let p;t[18]===a?p=t[19]:(p=(0,Y.jsx)(`span`,{children:a}),t[18]=a,t[19]=p);let m;t[20]===s?m=t[21]:(m=s?(0,Y.jsxs)(`span`,{"data-work-entry-meta":`true`,children:[` · `,s]}):null,t[20]=s,t[21]=m);let h;t[22]!==p||t[23]!==m?(h=(0,Y.jsx)(`div`,{className:`min-w-0 overflow-hidden`,children:(0,Y.jsxs)(`p`,{className:f,"data-work-entry-display-text":`true`,children:[p,m]})}),t[22]=p,t[23]=m,t[24]=h):h=t[24];let g;t[25]!==o||t[26]!==h?(g=(0,Y.jsx)(So,{className:`block min-w-0 w-full text-left`,"aria-label":o,render:h}),t[25]=o,t[26]=h,t[27]=g):g=t[27];let _;t[28]!==o||t[29]!==c?(_=(0,Y.jsx)(Co,{side:`top`,align:`start`,className:`max-w-[min(56rem,calc(100vw-2rem))]`,children:(0,Y.jsx)(zQ,{displayText:o,rawCommand:c})}),t[28]=o,t[29]=c,t[30]=_):_=t[30];let v;t[31]!==g||t[32]!==_?(v=(0,Y.jsxs)(wo,{children:[g,_]}),t[31]=g,t[32]=_,t[33]=v):v=t[33];let y;return t[34]!==d||t[35]!==v?(y=(0,Y.jsxs)(Y.Fragment,{children:[d,v]}),t[34]=d,t[35]=v,t[36]=y):y=t[36],y});function zQ(e){let t=(0,J.c)(11);if(!e.rawCommand){let n;return t[0]===e.displayText?n=t[1]:(n=(0,Y.jsx)(`p`,{className:`whitespace-pre-wrap wrap-break-word text-xs leading-5`,children:e.displayText}),t[0]=e.displayText,t[1]=n),n}let n;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(`div`,{className:`text-muted-foreground/70`,children:`Summary`}),t[2]=n):n=t[2];let r;t[3]===e.displayText?r=t[4]:(r=(0,Y.jsxs)(`div`,{className:`space-y-0.5`,children:[n,(0,Y.jsx)(`div`,{className:`whitespace-pre-wrap wrap-break-word`,children:e.displayText})]}),t[3]=e.displayText,t[4]=r);let i;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsx)(`div`,{className:`text-muted-foreground/70`,children:`Raw call`}),t[5]=i):i=t[5];let a;t[6]===e.rawCommand?a=t[7]:(a=(0,Y.jsxs)(`div`,{className:`space-y-0.5`,children:[i,(0,Y.jsx)(`code`,{className:`block whitespace-pre-wrap wrap-break-word font-mono text-[11px] text-foreground/92`,children:e.rawCommand})]}),t[6]=e.rawCommand,t[7]=a);let o;return t[8]!==r||t[9]!==a?(o=(0,Y.jsxs)(`div`,{className:`space-y-2 text-xs leading-5`,children:[r,a]}),t[8]=r,t[9]=a,t[10]=o):o=t[10],o}var BQ=(0,q.memo)(function(e){let t=(0,J.c)(45),{isEditing:n,workEntry:r,workspaceRoot:i}=e,a,o,s,c,l,u,d,f,p,m,h;if(t[0]!==n||t[1]!==r.changedFileStats||t[2]!==r.changedFiles||t[3]!==r.completed||t[4]!==r.id||t[5]!==i){a=r.changedFiles??[];let e=new Map((r.changedFileStats??[]).map(t$)),g=a.slice(0,3),_=Math.max(0,a.length-g.length),v=a[0],y=v?fD(v,i):null,b=a.length===1&&y?`${r.completed?`Edited`:`Editing`} ${y}`:`${r.completed?`Edited`:`Editing`} ${a.length} files`,x=v?e.get(v):void 0;o=r.completed?a.length===1&&v?FQ(x?[x]:void 0):FQ(r.changedFileStats):null;let S=a.length>1&&`items-start py-1.5`;t[17]===S?u=t[18]:(u=G(nQ,`chat-file-edit-row`,S),t[17]=S,t[18]=u),d=`true`,f=`file-edit`,p=`true`,m=r.completed?`completed`:`editing`;let C=a.length>1&&`mt-0.5`,w;t[19]===C?w=t[20]:(w=G(`flex size-5 items-center justify-center`,rQ,C),t[19]=C,t[20]=w);let T;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Y.jsx)(xa,{className:`size-3.5`}),t[21]=T):T=t[21],t[22]===w?h=t[23]:(h=(0,Y.jsx)(`span`,{className:w,"data-work-entry-icon":`true`,children:T}),t[22]=w,t[23]=h),s=`min-w-0`;let E=n&&`chat-file-edit-text--active`,D;t[24]===E?D=t[25]:(D=G(`chat-file-edit-text truncate text-[12px] leading-5`,rQ,E),t[24]=E,t[25]=D),t[26]!==b||t[27]!==D?(c=(0,Y.jsx)(`p`,{className:D,title:b,children:b}),t[26]=b,t[27]=D,t[28]=c):c=t[28],l=a.length>1&&(0,Y.jsxs)(`div`,{className:`mt-0.5 flex min-w-0 flex-nowrap gap-1 overflow-hidden`,children:[g.map(t=>{let n=fD(t,i),a=e.get(t),o=FQ(a?[a]:void 0);return(0,Y.jsxs)(`span`,{className:`inline-flex min-w-0 max-w-[15rem] items-center gap-1 rounded border border-border/45 px-1.5 py-0.5 font-mono text-[9px] leading-3 text-muted-foreground/70`,title:n,children:[(0,Y.jsx)(`span`,{className:`truncate`,children:IQ(n)}),o&&(0,Y.jsx)(`span`,{className:`shrink-0`,children:(0,Y.jsx)(LQ,{additions:o.additions,deletions:o.deletions})})]},`${r.id}:edit-chip:${t}`)}),_>0&&(0,Y.jsxs)(`span`,{className:`shrink-0 px-1 text-[10px] leading-4 text-muted-foreground/55`,children:[`+`,_]})]}),t[0]=n,t[1]=r.changedFileStats,t[2]=r.changedFiles,t[3]=r.completed,t[4]=r.id,t[5]=i,t[6]=a,t[7]=o,t[8]=s,t[9]=c,t[10]=l,t[11]=u,t[12]=d,t[13]=f,t[14]=p,t[15]=m,t[16]=h}else a=t[6],o=t[7],s=t[8],c=t[9],l=t[10],u=t[11],d=t[12],f=t[13],p=t[14],m=t[15],h=t[16];let g;t[29]!==s||t[30]!==c||t[31]!==l?(g=(0,Y.jsxs)(`div`,{className:s,children:[c,l]}),t[29]=s,t[30]=c,t[31]=l,t[32]=g):g=t[32];let _;t[33]!==a||t[34]!==o?(_=o?(0,Y.jsx)(`span`,{className:G(`shrink-0 font-mono text-[10px]`,a.length>1&&`mt-1`),children:(0,Y.jsx)(LQ,{additions:o.additions,deletions:o.deletions})}):(0,Y.jsx)(`span`,{className:`size-5`,"aria-hidden":!0}),t[33]=a,t[34]=o,t[35]=_):_=t[35];let v;return t[36]!==_||t[37]!==u||t[38]!==d||t[39]!==f||t[40]!==p||t[41]!==m||t[42]!==h||t[43]!==g?(v=(0,Y.jsxs)(`div`,{className:u,"data-tool-entry-row":d,"data-tool-entry-kind":f,"data-file-edit-work-row":p,"data-file-edit-work-state":m,children:[h,g,_]}),t[36]=_,t[37]=u,t[38]=d,t[39]=f,t[40]=p,t[41]=m,t[42]=h,t[43]=g,t[44]=v):v=t[44],v}),VQ=new RegExp(String.raw`\u001b\[[0-9;]*m`,`g`);function HQ(e){return`work-entry-panel:${e}`}var UQ=(0,q.memo)(function(e){let t=(0,J.c)(43),{workEntry:n,workspaceRoot:r}=e,{routeThreadKey:i}=(0,q.use)(OZ),a;t[0]!==i||t[1]!==n.id?(a=e=>e.threadWorkEntryExpandedById[i]?.[n.id],t[0]=i,t[1]=n.id,t[2]=a):a=t[2];let o=vt(a),s=vt(n$),c=o??!1,l;t[3]===n.id?l=t[4]:(l=HQ(n.id),t[3]=n.id,t[4]=l);let u=l,d;t[5]===n?d=t[6]:(d=jQ(n),t[5]=n,t[6]=d);let f=d,[p,m]=(0,q.useState)(c),h,g;t[7]!==c||t[8]!==p?(h=()=>{if(c){m(!0);return}if(!p)return;let e=window.setTimeout(()=>m(!1),260);return()=>window.clearTimeout(e)},g=[c,p],t[7]=c,t[8]=p,t[9]=h,t[10]=g):(h=t[9],g=t[10]),(0,q.useEffect)(h,g);let _;t[11]!==c||t[12]!==i||t[13]!==s||t[14]!==n.id?(_=()=>{s(i,n.id,!c)},t[11]=c,t[12]=i,t[13]=s,t[14]=n.id,t[15]=_):_=t[15];let v=_,y;t[16]===v?y=t[17]:(y=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),v())},t[16]=v,t[17]=y);let b;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(b=G(nQ,`cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring/70`),t[18]=b):b=t[18];let x;t[19]!==n||t[20]!==r?(x=(0,Y.jsx)(RQ,{workEntry:n,workspaceRoot:r}),t[19]=n,t[20]=r,t[21]=x):x=t[21];let S;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(`size-3`,rQ),t[22]=S):S=t[22];let C;t[23]===c?C=t[24]:(C=(0,Y.jsx)(`span`,{className:`flex size-5 items-center justify-center`,children:(0,Y.jsx)(TZ,{open:c,className:S})}),t[23]=c,t[24]=C);let w;t[25]!==c||t[26]!==u||t[27]!==C||t[28]!==y||t[29]!==x||t[30]!==v?(w=(0,Y.jsxs)(`div`,{role:`button`,tabIndex:0,"aria-expanded":c,"aria-controls":u,onClick:v,onKeyDown:y,"data-tool-entry-row":`true`,"data-tool-entry-kind":`expandable`,className:b,children:[x,C]}),t[25]=c,t[26]=u,t[27]=C,t[28]=y,t[29]=x,t[30]=v,t[31]=w):w=t[31];let T;t[32]!==f||t[33]!==p||t[34]!==u||t[35]!==n?(T=p?(0,Y.jsx)(WQ,{workEntry:n,panelId:u,headingLabel:f}):null,t[32]=f,t[33]=p,t[34]=u,t[35]=n,t[36]=T):T=t[36];let E;t[37]!==c||t[38]!==T?(E=(0,Y.jsx)(EZ,{open:c,contentClassName:`min-w-0 pl-9`,children:T}),t[37]=c,t[38]=T,t[39]=E):E=t[39];let D;return t[40]!==w||t[41]!==E?(D=(0,Y.jsxs)(`div`,{children:[w,E]}),t[40]=w,t[41]=E,t[42]=D):D=t[42],D}),WQ=(0,q.memo)(function(e){let t=(0,J.c)(13),{workEntry:n,panelId:r,headingLabel:i}=e,{activeThreadEnvironmentId:a,markdownCwd:o,timestampFormat:s}=(0,q.use)(OZ),c;if(t[0]!==a||t[1]!==i||t[2]!==o||t[3]!==r||t[4]!==s||t[5]!==n){let e=EQ(n),l=n.output?n.output.replace(VQ,``):``,u=l.length>0,d;t[7]===n.detail?d=t[8]:(d=n.detail?.trim()||null,t[7]=n.detail,t[8]=d);let f=d,p=f===e?null:f,m;t[9]!==p||t[10]!==s||t[11]!==n?(m=(0,Y.jsx)(GQ,{workEntry:n,detailText:p,timestampFormat:s}),t[9]=p,t[10]=s,t[11]=n,t[12]=m):m=t[12],c=(0,Y.jsxs)(`div`,{id:r,role:`region`,"aria-label":`${i} details`,className:`space-y-3 pt-2 pb-1`,children:[m,e||u?(0,Y.jsx)(xO,{text:KQ(e,l,n.exitCode),cwd:o,environmentId:a,isStreaming:!1}):(0,Y.jsx)(`p`,{className:`text-[11px] italic text-muted-foreground/45`,children:`No output was captured.`})]}),t[0]=a,t[1]=i,t[2]=o,t[3]=r,t[4]=s,t[5]=n,t[6]=c}else c=t[6];return c});function GQ(e){let t=(0,J.c)(28),{workEntry:n,detailText:r,timestampFormat:i}=e,a;t[0]===n?a=t[1]:(a=Wf(Uf(n)),t[0]=n,t[1]=a);let o=a,s;t[2]===n?s=t[3]:(s=Gf(n),t[2]=n,t[3]=s);let c=s,l=n.lastActivityAt??n.createdAt,u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(`h3`,{className:`text-[11px] font-medium text-muted-foreground/56`,children:`Activity`}),t[4]=u):u=t[4];let d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Status`}),t[5]=d):d=t[5];let f;t[6]===o?f=t[7]:(f=(0,Y.jsx)(`dd`,{className:`text-foreground/84`,children:o}),t[6]=o,t[7]=f);let p;t[8]!==i||t[9]!==n.startedAt?(p=n.startedAt?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Started`}),(0,Y.jsx)(`dd`,{className:`text-foreground/84`,children:(0,Y.jsx)(`time`,{dateTime:n.startedAt,title:n.startedAt,children:Ma(n.startedAt,i)})})]}):null,t[8]=i,t[9]=n.startedAt,t[10]=p):p=t[10];let m;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Last activity`}),t[11]=m):m=t[11];let h;t[12]!==l||t[13]!==i?(h=Ma(l,i),t[12]=l,t[13]=i,t[14]=h):h=t[14];let g;t[15]!==l||t[16]!==h?(g=(0,Y.jsx)(`dd`,{className:`text-foreground/84`,children:(0,Y.jsx)(`time`,{dateTime:l,title:l,children:h})}),t[15]=l,t[16]=h,t[17]=g):g=t[17];let _;t[18]===c?_=t[19]:(_=c?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Elapsed`}),(0,Y.jsx)(`dd`,{className:`tabular-nums text-foreground/84`,children:c})]}):null,t[18]=c,t[19]=_);let v;t[20]===r?v=t[21]:(v=r?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`dt`,{className:`text-muted-foreground/56`,children:`Detail`}),(0,Y.jsx)(`dd`,{"data-work-entry-detail":`true`,className:`wrap-break-word text-foreground/84`,children:r})]}):null,t[20]=r,t[21]=v);let y;return t[22]!==v||t[23]!==f||t[24]!==p||t[25]!==g||t[26]!==_?(y=(0,Y.jsxs)(`section`,{className:`space-y-2`,children:[u,(0,Y.jsxs)(`dl`,{className:`grid grid-cols-[max-content_minmax(0,1fr)] gap-x-3 gap-y-1.5 rounded-lg border border-border/45 bg-background/60 px-3 py-2.5 text-[11px]`,children:[d,f,p,m,g,_,v]})]}),t[22]=v,t[23]=f,t[24]=p,t[25]=g,t[26]=_,t[27]=y):y=t[27],y}function KQ(e,t,n){let r=[];if(e){let[t,...n]=e.split(`
198
198
  `);r.push(`$ ${t??``}`,...n)}t&&(r.length>0&&r.push(``),r.push(t.replace(/\s+$/,``))),n!==void 0&&n!==0&&(r.length>0&&r.push(``),r.push(`Exit code ${n}`));let i="`".repeat(Math.max(3,qQ(r.join(`
199
199
  `))+1));return`${i}bash\n${r.join(`
200
200
  `)}\n${i}`}function qQ(e){let t=0,n=0;for(let r of e){if(r==="`"){n+=1,t=Math.max(t,n);continue}n=0}return t}function JQ(e){return e.tone===`tool`}function YQ(e){return e.members}function XQ(e){return e.status===`running`||e.status===`pending`}function ZQ(e){return e.status===`waiting`}function QQ(e){return e.status===`failed`}function $Q(e,t){return e+(t.usage?.totalTokens??0)}function e$(e){return e.state===`running`}function t$(e){return[e.path,e]}function n$(e){return e.setThreadWorkEntryExpanded}function r$(e){let t=e.trim();return t.length<=42?t:`${t.slice(0,41).trimEnd()}…`}function i$(e){let t=e.projectName?.trim();if(!t)return{prefix:`What should we do?`,projectName:null,suffix:``,text:`What should we do?`};let n=r$(t);return{prefix:`What should we do in `,projectName:n,suffix:`?`,text:`What should we do in ${n}?`}}function a$(e){return e.routeKind===`draft`&&!e.envLocked&&e.projectCount>1}function o$(e){let t=(0,J.c)(25),{projectName:n,activeProjectId:r,activeProjectEnvironmentId:i,routeKind:a,envLocked:o,draftId:s,workLocation:c}=e,l;t[0]===n?l=t[1]:(l=i$({projectName:n}),t[0]=n,t[1]=l);let u=l,d=me(Uc(s$)),f;t[2]!==i||t[3]!==r||t[4]!==s||t[5]!==o||t[6]!==u.projectName||t[7]!==d||t[8]!==a?(f=u.projectName!==null&&r!==null&&i!==null&&s!==void 0&&a$({routeKind:a,envLocked:o,projectCount:d}),t[2]=i,t[3]=r,t[4]=s,t[5]=o,t[6]=u.projectName,t[7]=d,t[8]=a,t[9]=f):f=t[9];let p=f,m;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Y.jsx)(Ql,{className:`h-10 text-foreground sm:h-12`}),t[10]=m):m=t[10];let h;t[11]!==i||t[12]!==r||t[13]!==p||t[14]!==s||t[15]!==u.prefix||t[16]!==u.projectName||t[17]!==u.suffix||t[18]!==u.text?(h=u.projectName===null?u.text:(0,Y.jsxs)(Y.Fragment,{children:[u.prefix,p&&r&&i&&s?(0,Y.jsx)(nK,{activeProjectId:r,activeProjectEnvironmentId:i,appearance:`headline`,draftId:s,label:u.projectName}):(0,Y.jsx)(`span`,{className:`text-foreground`,children:u.projectName}),u.suffix]}),t[11]=i,t[12]=r,t[13]=p,t[14]=s,t[15]=u.prefix,t[16]=u.projectName,t[17]=u.suffix,t[18]=u.text,t[19]=h):h=t[19];let g;t[20]===h?g=t[21]:(g=(0,Y.jsx)(`h1`,{className:`max-w-208 text-balance text-center font-medium text-2xl text-foreground tracking-tight sm:text-3xl`,children:h}),t[20]=h,t[21]=g);let _;return t[22]!==g||t[23]!==c?(_=(0,Y.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-4 px-6 pb-6 sm:gap-5 sm:pb-8`,"data-testid":`new-thread-hero`,children:[m,g,c]}),t[22]=g,t[23]=c,t[24]=_):_=t[24],_}function s$(e){return ye(e).length}var c$=60;function l$(e){let t=(0,J.c)(40),{label:n,sourceKind:r,environmentId:i,projectId:a,cwd:o,onSelect:s,fetchOrigin:c,onFetchOriginChange:l,branchName:u,onBranchNameChange:d}=e,[f,p]=(0,q.useState)(!1),[m,h]=(0,q.useState)(`branches`),[g,_]=(0,q.useState)(``),[v,y]=(0,q.useState)(``),[b,x]=(0,q.useState)(``),[S,C]=(0,q.useState)(``),[w,T]=(0,q.useState)(`open`),[E,D]=(0,q.useState)(`open`),[O,k]=(0,q.useState)(`open`),A=(0,q.useRef)(null),j=(0,q.useRef)(null),M=(0,q.useRef)(null),N=(0,q.useRef)(null),P;t[0]===s?P=t[1]:(P=e=>{p(!1),s(e)},t[0]=s,t[1]=P);let F=P,I=`Change what this worktree branches from (currently ${n})`,L;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,Y.jsx)(`button`,{type:`button`}),t[2]=L):L=t[2];let R;t[3]===r?R=t[4]:(R=(0,Y.jsx)(u$,{kind:r}),t[3]=r,t[4]=R);let z;t[5]===n?z=t[6]:(z=(0,Y.jsx)(`span`,{className:`min-w-0 max-w-[18rem] truncate`,children:n}),t[5]=n,t[6]=z);let ee;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,Y.jsx)(fr,{className:`size-3 shrink-0 text-muted-foreground`}),t[7]=ee):ee=t[7];let te;t[8]!==I||t[9]!==R||t[10]!==z?(te=(0,Y.jsxs)(pi,{"aria-label":I,className:`inline-flex cursor-pointer items-center gap-1 rounded-md px-1 py-0.5 font-medium text-foreground/85 transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:opacity-60`,render:L,children:[R,z,ee]}),t[8]=I,t[9]=R,t[10]=z,t[11]=te):te=t[11];let B;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(B=[{id:`branches`,label:`Branch`},{id:`prs`,label:`Pull requests`},{id:`issues`,label:`Issues`},{id:`jira`,label:`Jira`}],t[12]=B):B=t[12];let ne;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(ne=e=>h(e),t[13]=ne):ne=t[13];let re;t[14]===m?re=t[15]:(re=(0,Y.jsx)(ai,{tabs:B,activeId:m,density:`compact`,onSelect:ne}),t[14]=m,t[15]=re);let ie;t[16]!==u||t[17]!==g||t[18]!==F||t[19]!==o||t[20]!==i||t[21]!==c||t[22]!==b||t[23]!==E||t[24]!==d||t[25]!==l||t[26]!==v||t[27]!==w||t[28]!==a||t[29]!==m||t[30]!==S||t[31]!==O?(ie=(0,Y.jsx)(`div`,{className:`h-72 min-h-0`,children:m===`branches`?(0,Y.jsx)(d$,{fetchOrigin:c,onFetchOriginChange:l,branchName:u,onBranchNameChange:d,environmentId:i,cwd:o,query:g,searchInputRef:A,onQueryChange:_,onSelect:e=>F({kind:`branch`,branchName:e})},JSON.stringify([i,o])):m===`prs`?(0,Y.jsx)(_a,{environmentId:i,cwd:o,searchInputRef:j,query:v,onQueryChange:y,density:`compact`,stateFilter:w,onStateFilterChange:T,onSelect:e=>F({kind:`pr`,changeRequest:e})}):m===`issues`?(0,Y.jsx)(Ua,{environmentId:i,cwd:o,searchInputRef:M,query:b,onQueryChange:x,density:`compact`,stateFilter:E,onStateFilterChange:D,onSelect:e=>F({kind:`issue`,issue:e})}):(0,Y.jsx)(da,{environmentId:i,cwd:o,projectId:a,searchInputRef:N,query:S,onQueryChange:C,stateFilter:O,onStateFilterChange:k,onSelect:e=>F({kind:`workItem`,workItem:e})})}),t[16]=u,t[17]=g,t[18]=F,t[19]=o,t[20]=i,t[21]=c,t[22]=b,t[23]=E,t[24]=d,t[25]=l,t[26]=v,t[27]=w,t[28]=a,t[29]=m,t[30]=S,t[31]=O,t[32]=ie):ie=t[32];let V;t[33]!==re||t[34]!==ie?(V=(0,Y.jsxs)(hi,{align:`start`,side:`bottom`,className:`w-[30rem] overflow-hidden p-0`,viewportClassName:`p-0 [--viewport-inline-padding:0px]`,children:[re,ie]}),t[33]=re,t[34]=ie,t[35]=V):V=t[35];let ae;return t[36]!==f||t[37]!==V||t[38]!==te?(ae=(0,Y.jsxs)(Gi,{open:f,onOpenChange:p,children:[te,V]}),t[36]=f,t[37]=V,t[38]=te,t[39]=ae):ae=t[39],ae}function u$(e){let t=(0,J.c)(4),{kind:n}=e;switch(n){case`pr`:{let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Is,{"aria-label":`Pull request`,className:G(`size-3.5 shrink-0`,`text-emerald-500 dark:text-emerald-400`)}),t[0]=e):e=t[0],e}case`issue`:{let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Mi,{"aria-label":`Issue`,className:G(`size-3.5 shrink-0`,`text-sky-500 dark:text-sky-400`)}),t[1]=e):e=t[1],e}case`workItem`:{let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Fa,{"aria-label":`Jira work item`,className:G(`size-3.5 shrink-0`,`text-violet-500 dark:text-violet-400`)}),t[2]=e):e=t[2],e}case`branch`:{let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(ui,{"aria-hidden":!0,className:G(`size-3.5 shrink-0`,`text-muted-foreground`)}),t[3]=e):e=t[3],e}default:return null}}function d$({environmentId:e,cwd:t,query:n,searchInputRef:r,onQueryChange:i,onSelect:a,fetchOrigin:o,onFetchOriginChange:s,branchName:c,onBranchNameChange:l}){let u=n.trim(),[d,f]=(0,q.useState)(!1),[p,m]=(0,q.useState)(c??``),[h,g]=(0,q.useState)(null),[_,v]=(0,q.useState)(!0),[y,b]=(0,q.useState)(null),[x,S]=(0,q.useState)(0),C=(0,q.useRef)(null);(0,q.useEffect)(()=>{let n=!1,r=Dr(e);if(v(!0),g(null),b(null),!r||!t){v(!1),b(`Branches are unavailable.`);return}let i=JSON.stringify([e,t,o]);C.current?.key!==i&&(C.current={key:i,promise:r.vcs.listRefs({cwd:t,fetchOrigin:o,originOnly:o,limit:c$})});let a=C.current.promise;return(async()=>{try{let e=await a;if(n)return;let i=!u&&x===0?e:await r.vcs.listRefs({cwd:t,originOnly:o,...u?{query:u}:{},cursor:x,limit:c$});n||g(i)}catch(e){n||(C.current=null,b(e instanceof Error?e.message:`Could not load branches.`))}finally{n||v(!1)}})(),()=>{n=!0}},[e,t,o,u,x]);let w=h?.refs??[];return(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 border-border/40 border-b px-2 py-1.5`,children:[(0,Y.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,Y.jsx)(ui,{className:`-translate-y-1/2 absolute top-1/2 left-2 size-3.5 text-muted-foreground`}),(0,Y.jsx)(al,{ref:r,value:n,onChange:e=>{S(0),i(e.target.value)},placeholder:`Search branches...`,className:`h-8 pl-7 text-sm`})]}),(0,Y.jsxs)(`label`,{className:`flex shrink-0 items-center gap-1.5 text-xs text-muted-foreground`,children:[`Fetch Origin`,(0,Y.jsx)($a,{checked:o,onCheckedChange:e=>{S(0),s(e)}})]}),(0,Y.jsx)(W,{variant:`ghost`,size:`icon`,"aria-label":`Create a new branch`,onClick:()=>f(e=>!e),children:(0,Y.jsx)(mu,{className:`size-4`})})]}),d?(0,Y.jsxs)(`form`,{className:`flex items-center gap-2 border-b border-border/40 p-2`,onSubmit:e=>{e.preventDefault(),l(p.trim()||null),f(!1)},children:[(0,Y.jsx)(al,{"aria-label":`New branch name`,placeholder:`Automatic branch name`,value:p,onChange:e=>m(e.target.value),className:`h-8 min-w-0 flex-1`}),(0,Y.jsx)(W,{type:`submit`,size:`sm`,children:`Use name`})]}):null,(0,Y.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:[y?(0,Y.jsxs)(`p`,{role:`alert`,className:`px-2.5 py-2 text-sm text-destructive`,children:[y,` `,o?`Turn off Fetch Origin to use local branches, or reopen to retry.`:`Reopen to retry.`]}):null,y?null:_&&w.length===0?(0,Y.jsx)(`p`,{className:`px-2.5 py-4 text-sm text-muted-foreground`,children:`Loading branches...`}):w.length===0?(0,Y.jsx)(`p`,{className:`px-2.5 py-4 text-sm text-muted-foreground`,children:`No branches match this search.`}):w.map(e=>(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>a(e.name),className:`flex w-full cursor-pointer items-center gap-2 px-2.5 py-1.5 text-left transition-colors hover:bg-accent/60`,children:[(0,Y.jsx)(ui,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs`,children:e.name}),e.isRemote?(0,Y.jsx)(`span`,{className:G(`shrink-0 text-[10px] text-muted-foreground/55`),children:e.remoteName??`remote`}):e.current?(0,Y.jsx)(`span`,{className:G(`shrink-0 text-[10px] text-muted-foreground/55`),children:`current`}):e.isDefault?(0,Y.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground/55`,children:`default`}):null]},e.name)),x>0||h?.nextCursor!==null&&h?.nextCursor!==void 0?(0,Y.jsxs)(`div`,{className:`flex justify-between p-2`,children:[(0,Y.jsx)(W,{variant:`ghost`,size:`sm`,disabled:_||x===0,onClick:()=>S(Math.max(0,x-c$)),children:`Previous`}),(0,Y.jsx)(W,{variant:`ghost`,size:`sm`,disabled:_||h?.nextCursor==null,onClick:()=>S(h?.nextCursor??0),children:`Next`})]}):null]})]})}var f$=`__project_root__`,p$=`__new_worktree__`;function m$(e){let t=(0,J.c)(99),{draftId:n,environmentId:r,threadId:i,projectId:a,projectEnvironmentId:s,projectName:c,envLocked:l,availableEnvironments:u,onEnvironmentChange:d,onComposerFocusRequest:f,onCheckoutPullRequestRequest:p,cwd:m}=e,h=Rr(g$),g;t[0]===n?g=t[1]:(g=e=>n?e.getDraftSession(n):null,t[0]=n,t[1]=g);let _=Rr(g),v;t[2]!==s||t[3]!==a?(v=s&&a?o(s,a):null,t[2]=s,t[3]=a,t[4]=v):v=t[4];let y=v,b;t[5]===y?b=t[6]:(b=e=>Ze(e,y),t[5]=y,t[6]=b);let x=me(Uc(b)),S;t[7]===x?S=t[8]:(S=x.flatMap(h$),t[7]=x,t[8]=S);let C=S,w,T,E,D,O,k,A,j,M,N,P,F,I,L,R;if(t[9]!==u.length||t[10]!==n||t[11]!==_?.branch||t[12]!==_?.envMode||t[13]!==_?.fetchOrigin||t[14]!==_?.worktreePath||t[15]!==_?.worktreeSource||t[16]!==l||t[17]!==f||t[18]!==d||t[19]!==s||t[20]!==a||t[21]!==c||t[22]!==h||t[23]!==C){M=Symbol.for(`react.early_return_sentinel`);bb0:{D=vG({draft:{envMode:_?.envMode??`local`,worktreePath:_?.worktreePath??null},worktrees:C});let e;t[39]!==n||t[40]!==f||t[41]!==h?(e=e=>{n&&(h(n,yG(e)),f?.())},t[39]=n,t[40]=f,t[41]=h,t[42]=e):e=t[42];let r=e;O=u.length>1&&d!==void 0,w=n!==void 0&&!l,R=_?.worktreeSource??null,T=_?.fetchOrigin??!0;let i;if(t[43]!==_?.branch||t[44]!==T||t[45]!==R?.label){let e=_?.branch?.trim();i=R?.label??(e?wG(e,T):T?`origin’s default branch`:`the current branch`),t[43]=_?.branch,t[44]=T,t[45]=R?.label,t[46]=i}else i=t[46];A=i;let o;t[47]!==_?.branch||t[48]!==R?(o=R?R.kind:_?.branch?.trim()?`branch`:null,t[47]=_?.branch,t[48]=R,t[49]=o):o=t[49],k=o;let p;if(t[50]!==n||t[51]!==f||t[52]!==h?(p=e=>{n&&(h(n,e.kind===`branch`?{branch:e.branchName,worktreeSource:null,worktreePath:null}:{branch:null,worktreePath:null,worktreeSource:_$(e)}),f?.())},t[50]=n,t[51]=f,t[52]=h,t[53]=p):p=t[53],E=p,!a||!s||!c){M=null;break bb0}N=`flex max-w-208 flex-wrap items-center justify-center gap-x-0.5 gap-y-1 text-[13px] text-muted-foreground/70`,P=`new-thread-work-location`,t[54]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,Y.jsx)(`span`,{className:`px-1`,children:`Work in`}),t[54]=F):F=t[54],t[55]!==w||t[56]!==n||t[57]!==s||t[58]!==a||t[59]!==c?(I=w&&n?(0,Y.jsx)(nK,{activeProjectId:a,activeProjectEnvironmentId:s,appearance:`sentence`,draftId:n,label:c}):(0,Y.jsx)(v$,{children:c}),t[55]=w,t[56]=n,t[57]=s,t[58]=a,t[59]=c,t[60]=I):I=t[60],t[61]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`px-1 text-muted-foreground/35`,children:`›`}),t[61]=L):L=t[61],j=w?(0,Y.jsx)(y$,{location:D,worktrees:C,onSelect:r}):(0,Y.jsx)(v$,{children:xG(D)})}t[9]=u.length,t[10]=n,t[11]=_?.branch,t[12]=_?.envMode,t[13]=_?.fetchOrigin,t[14]=_?.worktreePath,t[15]=_?.worktreeSource,t[16]=l,t[17]=f,t[18]=d,t[19]=s,t[20]=a,t[21]=c,t[22]=h,t[23]=C,t[24]=w,t[25]=T,t[26]=E,t[27]=D,t[28]=O,t[29]=k,t[30]=A,t[31]=j,t[32]=M,t[33]=N,t[34]=P,t[35]=F,t[36]=I,t[37]=L,t[38]=R}else w=t[24],T=t[25],E=t[26],D=t[27],O=t[28],k=t[29],A=t[30],j=t[31],M=t[32],N=t[33],P=t[34],F=t[35],I=t[36],L=t[37],R=t[38];if(M!==Symbol.for(`react.early_return_sentinel`))return M;let z;t[62]!==w||t[63]!==m||t[64]!==n||t[65]!==_?.worktreeBranchName||t[66]!==l||t[67]!==r||t[68]!==T||t[69]!==E||t[70]!==D||t[71]!==p||t[72]!==f||t[73]!==a||t[74]!==h||t[75]!==k||t[76]!==A||t[77]!==i?(z=SG(D)?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`px-1`,children:CG(D)}),D.kind===`newWorktree`&&w&&a?(0,Y.jsx)(l$,{label:A,sourceKind:k,environmentId:r,projectId:a,cwd:m,fetchOrigin:T,onFetchOriginChange:e=>{n&&h(n,{fetchOrigin:e,branch:null})},branchName:_?.worktreeBranchName??null,onBranchNameChange:e=>{n&&h(n,{worktreeBranchName:e,worktreeSource:null})},onSelect:E}):(0,Y.jsx)(JG,{className:`text-[13px] text-foreground/85 hover:text-foreground`,environmentId:r,threadId:i,...n?{draftId:n}:{},envLocked:l,omitBasePrefix:!0,...p?{onCheckoutPullRequestRequest:p}:{},...f?{onComposerFocusRequest:f}:{}})]}):null,t[62]=w,t[63]=m,t[64]=n,t[65]=_?.worktreeBranchName,t[66]=l,t[67]=r,t[68]=T,t[69]=E,t[70]=D,t[71]=p,t[72]=f,t[73]=a,t[74]=h,t[75]=k,t[76]=A,t[77]=i,t[78]=z):z=t[78];let ee;t[79]!==_||t[80]!==D.kind||t[81]!==R?(ee=D.kind===`newWorktree`&&_?.worktreeBranchName&&!R?(0,Y.jsxs)(`span`,{className:`px-1 text-muted-foreground`,children:[`as `,(0,Y.jsx)(`span`,{className:`font-mono text-foreground/85`,children:_.worktreeBranchName})]}):null,t[79]=_,t[80]=D.kind,t[81]=R,t[82]=ee):ee=t[82];let te;t[83]!==u||t[84]!==l||t[85]!==r||t[86]!==d||t[87]!==O?(te=O&&d?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`span`,{className:`px-1`,children:`on`}),(0,Y.jsx)(YG,{envLocked:l,environmentId:r,availableEnvironments:u,onEnvironmentChange:d})]}):null,t[83]=u,t[84]=l,t[85]=r,t[86]=d,t[87]=O,t[88]=te):te=t[88];let B;return t[89]!==j||t[90]!==z||t[91]!==ee||t[92]!==te||t[93]!==N||t[94]!==P||t[95]!==F||t[96]!==I||t[97]!==L?(B=(0,Y.jsxs)(`p`,{className:N,"data-testid":P,children:[F,I,L,j,z,ee,te]}),t[89]=j,t[90]=z,t[91]=ee,t[92]=te,t[93]=N,t[94]=P,t[95]=F,t[96]=I,t[97]=L,t[98]=B):B=t[98],B}function h$(e){return e.worktreePath&&e.archivedAt===null?[{worktreeId:e.id,worktreePath:e.worktreePath,branch:e.branch,title:e.title??null}]:[]}function g$(e){return e.setDraftThreadContext}function _$(e){return e.kind===`pr`?{kind:`pr`,number:e.changeRequest.number,label:`#${e.changeRequest.number} ${e.changeRequest.title}`}:e.kind===`issue`?{kind:`issue`,number:e.issue.number,title:e.issue.title,label:`#${e.issue.number} ${e.issue.title}`}:{kind:`workItem`,provider:e.workItem.provider,key:e.workItem.key,title:e.workItem.title,...e.workItem.state?{state:e.workItem.state}:{},...e.workItem.stateName?{stateName:e.workItem.stateName}:{},...e.workItem.url?{url:e.workItem.url}:{},label:`${e.workItem.key} ${e.workItem.title}`}}function v$(e){let t=(0,J.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,Y.jsx)(`span`,{className:`px-1 font-medium text-foreground/85`,children:n}),t[0]=n,t[1]=r),r}function y$(e){let t=(0,J.c)(32),{location:n,worktrees:r,onSelect:i}=e,[a,o]=(0,q.useState)(!1),s=(0,q.useRef)(null),c;t[0]===r?c=t[1]:(c=[f$,...r.map(x$),p$],t[0]=r,t[1]=c);let l=c,u;t[2]===r?u=t[3]:(u=new Map(r.map(b$)),t[2]=r,t[3]=u);let d=u,f=n.kind===`projectRoot`?f$:n.kind===`newWorktree`?p$:n.worktree?.worktreeId??f$,p;t[4]!==i||t[5]!==d?(p=e=>{if(o(!1),e===f$){i({kind:`projectRoot`,worktree:null});return}if(e===p$){i({kind:`newWorktree`,worktree:null});return}let t=d.get(e);t&&i({kind:`existingWorktree`,worktree:t})},t[4]=i,t[5]=d,t[6]=p):p=t[6];let m=p,h;t[7]===n?h=t[8]:(h=xG(n),t[7]=n,t[8]=h);let g=`Change where this thread runs (currently ${h})`,_;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Y.jsx)(`button`,{type:`button`}),t[9]=_):_=t[9];let v;t[10]===n.kind?v=t[11]:(v=(0,Y.jsx)(S$,{kind:n.kind}),t[10]=n.kind,t[11]=v);let y;t[12]===n?y=t[13]:(y=xG(n),t[12]=n,t[13]=y);let b;t[14]===y?b=t[15]:(b=(0,Y.jsx)(`span`,{className:`min-w-0 max-w-[16rem] truncate`,children:y}),t[14]=y,t[15]=b);let x;t[16]!==g||t[17]!==v||t[18]!==b?(x=(0,Y.jsxs)(ps,{ref:s,"aria-label":g,className:`inline-flex cursor-pointer items-center gap-1 rounded-md px-1 py-0.5 font-medium text-foreground/85 transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,render:_,children:[v,b]}),t[16]=g,t[17]=v,t[18]=b,t[19]=x):x=t[19];let S;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Y.jsx)(Ds,{children:`Nowhere to run this thread.`}),t[20]=S):S=t[20];let C;t[21]!==f||t[22]!==l||t[23]!==m||t[24]!==d?(C=(0,Y.jsxs)(bs,{anchor:s,align:`start`,side:`bottom`,className:`w-80`,children:[S,(0,Y.jsx)(Ts,{className:`max-h-72`,children:l.map((e,t)=>{let n=d.get(e),r=e===f$?`The project root`:e===p$?`A new worktree`:n?bG(n):e,i=e===f$?`Work directly in the checked-out project directory`:e===p$?`Branch off and create the worktree when you send`:n?.worktreePath??``;return(0,Y.jsx)(vs,{hideIndicator:!0,index:t,value:e,onClick:()=>m(e),children:(0,Y.jsxs)(`div`,{className:`flex w-full min-w-0 items-center gap-2 py-0.5 text-left`,children:[(0,Y.jsx)(S$,{kind:e===f$?`projectRoot`:e===p$?`newWorktree`:`existingWorktree`}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:G(`truncate text-sm`,e===f&&`font-medium text-foreground`),children:r}),i?(0,Y.jsx)(`span`,{className:`truncate text-muted-foreground text-xs`,children:i}):null]})]})},e)})})]}),t[21]=f,t[22]=l,t[23]=m,t[24]=d,t[25]=C):C=t[25];let w;return t[26]!==f||t[27]!==l||t[28]!==a||t[29]!==x||t[30]!==C?(w=(0,Y.jsxs)(Ss,{items:l,filteredItems:l,autoHighlight:!0,open:a,value:f,onOpenChange:o,children:[x,C]}),t[26]=f,t[27]=l,t[28]=a,t[29]=x,t[30]=C,t[31]=w):w=t[31],w}function b$(e){return[e.worktreeId,e]}function x$(e){return e.worktreeId}function S$(e){let t=(0,J.c)(3),{kind:n}=e;if(n===`newWorktree`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Bu,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[0]=e):e=t[0],e}if(n===`existingWorktree`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ru,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[1]=e):e=t[1],e}let r;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(co,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[2]=r):r=t[2],r}function C$(e){let t=(0,J.c)(45),{query:n,focusRequestId:r,matchCount:i,selectedIndex:a,onQueryChange:o,onNext:s,onPrevious:c,onClose:l}=e,u=(0,q.useRef)(null),d=n.trim().length===0?`Thread`:i>0?`${a+1} / ${i}`:`No results`,f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>{let e=window.requestAnimationFrame(()=>{u.current?.focus(),u.current?.select()});return()=>{window.cancelAnimationFrame(e)}},t[0]=f):f=t[0];let p;t[1]===r?p=t[2]:(p=[r],t[1]=r,t[2]=p),Vs(f,p);let m;t[3]===s?m=t[4]:(m=e=>{e.preventDefault(),s()},t[3]=s,t[4]=m);let h;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Y.jsx)(Ia,{className:`ml-1 size-4 shrink-0 text-muted-foreground/70`,"aria-hidden":!0}),t[5]=h):h=t[5];let g;t[6]===o?g=t[7]:(g=e=>o(e.target.value),t[6]=o,t[7]=g);let _;t[8]!==l||t[9]!==s||t[10]!==c?(_=e=>{if(e.key===`Escape`){e.preventDefault(),l();return}e.key===`Enter`&&(e.preventDefault(),e.shiftKey?c():s())},t[8]=l,t[9]=s,t[10]=c,t[11]=_):_=t[11];let v;t[12]!==n||t[13]!==g||t[14]!==_?(v=(0,Y.jsx)(al,{ref:u,type:`search`,size:`sm`,unstyled:!0,value:n,placeholder:`Find in thread`,"aria-label":`Find in thread`,className:`min-w-0 flex-1`,onChange:g,onKeyDown:_}),t[12]=n,t[13]=g,t[14]=_,t[15]=v):v=t[15];let y;t[16]===d?y=t[17]:(y=(0,Y.jsx)(`span`,{className:`min-w-14 shrink-0 text-right text-xs text-muted-foreground/75`,children:d}),t[16]=d,t[17]=y);let b=i===0,x;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,Y.jsx)(_n,{className:`size-3.5`}),t[18]=x):x=t[18];let S;t[19]!==c||t[20]!==b?(S=(0,Y.jsx)(So,{render:(0,Y.jsx)(W,{"aria-label":`Previous match`,disabled:b,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:c,children:x})}),t[19]=c,t[20]=b,t[21]=S):S=t[21];let C;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,Y.jsx)(Co,{children:`Previous match`}),t[22]=C):C=t[22];let w;t[23]===S?w=t[24]:(w=(0,Y.jsxs)(wo,{children:[S,C]}),t[23]=S,t[24]=w);let T=i===0,E;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,Y.jsx)(fr,{className:`size-3.5`}),t[25]=E):E=t[25];let D;t[26]!==s||t[27]!==T?(D=(0,Y.jsx)(So,{render:(0,Y.jsx)(W,{"aria-label":`Next match`,disabled:T,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:s,children:E})}),t[26]=s,t[27]=T,t[28]=D):D=t[28];let O;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Y.jsx)(Co,{children:`Next match`}),t[29]=O):O=t[29];let k;t[30]===D?k=t[31]:(k=(0,Y.jsxs)(wo,{children:[D,O]}),t[30]=D,t[31]=k);let A;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,Y.jsx)(Ut,{className:`size-3.5`}),t[32]=A):A=t[32];let j;t[33]===l?j=t[34]:(j=(0,Y.jsx)(So,{render:(0,Y.jsx)(W,{"aria-label":`Close find`,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:l,children:A})}),t[33]=l,t[34]=j);let M;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,Y.jsx)(Co,{children:`Close find`}),t[35]=M):M=t[35];let N;t[36]===j?N=t[37]:(N=(0,Y.jsxs)(wo,{children:[j,M]}),t[36]=j,t[37]=N);let P;return t[38]!==w||t[39]!==k||t[40]!==N||t[41]!==m||t[42]!==v||t[43]!==y?(P=(0,Y.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 top-[calc(var(--chat-header-clearance,0px)+0.75rem)] z-30 flex justify-center px-3`,children:(0,Y.jsxs)(`form`,{className:`pointer-events-auto flex h-9 w-full max-w-md items-center gap-1 rounded-lg border border-border/80 bg-popover/96 px-1.5 shadow-lg/12 backdrop-blur`,"data-thread-message-search":`true`,onSubmit:m,children:[h,v,y,w,k,N]})}),t[38]=w,t[39]=k,t[40]=N,t[41]=m,t[42]=v,t[43]=y,t[44]=P):P=t[44],P}var w$=`Invalid keybinding.`;function T$(e){let t=e?.trim()??``;return t.length>0?t:null}function E$(e){let t=T$(e.keybinding);if(!t)return null;let n=b(x)({key:t,command:e.command});if(n._tag===`None`)throw Error(w$);return n.value}function D$(e,t){for(let n=e.length-1;n>=0;--n){let r=e[n];if(!r||r.command!==t)continue;let i=[];r.shortcut.modKey&&i.push(`mod`),r.shortcut.ctrlKey&&i.push(`ctrl`),r.shortcut.metaKey&&i.push(`meta`),r.shortcut.altKey&&i.push(`alt`),r.shortcut.shiftKey&&i.push(`shift`);let a=r.shortcut.key===` `?`space`:r.shortcut.key===`escape`?`esc`:r.shortcut.key;return i.push(a),i.join(`+`)}return null}function O$(e){let t=e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``);return t.length===0?`script`:t.length<=24?t:t.slice(0,24).replace(/-+$/g,``)||`script`}var k$=e=>C.make(`script.${e}.run`);function A$(e){let t=e.trim();if(!S(C)(t))return null;let[n,,r]=C.parts;return t.slice(n.literal.length,-r.literal.length)}function j$(e,t){let n=new Set(Array.from(t)),r=O$(e);if(!n.has(r))return r;let i=2;for(;i<1e4;){let e=`${r}-${i}`,t=e.length<=24?e:`${r.slice(0,Math.max(1,24-String(i).length-1))}-${i}`;if(!n.has(t))return t;i+=1}return`${r}-${Date.now()}`.slice(0,24)}function M$(e){return e.find(e=>!e.runOnWorktreeCreate)??e[0]??null}var N$=`flex w-fit items-center gap-1`,P$=`h-8 min-w-8 shrink-0 rounded-md border-0 bg-transparent px-2 text-muted-foreground/72 shadow-none transition-[background-color,color] before:hidden hover:bg-foreground/8 hover:text-foreground focus-visible:ring-1 focus-visible:ring-ring/70 data-pressed:bg-foreground/10 data-pressed:text-foreground sm:h-7 sm:min-w-7`,F$=`size-8 min-w-8 shrink-0 rounded-md border-0 bg-transparent px-0 text-muted-foreground/72 shadow-none transition-[background-color,color] before:hidden hover:bg-foreground/8 hover:text-foreground focus-visible:ring-1 focus-visible:ring-ring/70 data-pressed:bg-foreground/10 data-pressed:text-foreground sm:size-7 sm:min-w-7`,I$=[{id:`play`,label:`Play`},{id:`test`,label:`Test`},{id:`lint`,label:`Lint`},{id:`configure`,label:`Configure`},{id:`build`,label:`Build`},{id:`debug`,label:`Debug`}];function L$(e){let t=(0,J.c)(12),{icon:n,className:r}=e,i=r===void 0?`size-3.5`:r;if(n===`test`){let e;return t[0]===i?e=t[1]:(e=(0,Y.jsx)(Iu,{className:i}),t[0]=i,t[1]=e),e}if(n===`lint`){let e;return t[2]===i?e=t[3]:(e=(0,Y.jsx)(ho,{className:i}),t[2]=i,t[3]=e),e}if(n===`configure`){let e;return t[4]===i?e=t[5]:(e=(0,Y.jsx)(dc,{className:i}),t[4]=i,t[5]=e),e}if(n===`build`){let e;return t[6]===i?e=t[7]:(e=(0,Y.jsx)(Hu,{className:i}),t[6]=i,t[7]=e),e}if(n===`debug`){let e;return t[8]===i?e=t[9]:(e=(0,Y.jsx)(wu,{className:i}),t[8]=i,t[9]=e),e}let a;return t[10]===i?a=t[11]:(a=(0,Y.jsx)(nc,{className:i}),t[10]=i,t[11]=a),a}function R$(e){let t=e.toLowerCase();return t===`meta`||t===`control`||t===`ctrl`||t===`shift`||t===`alt`||t===`option`?null:t===` `?`space`:t===`escape`?`esc`:t===`arrowup`?`arrowup`:t===`arrowdown`?`arrowdown`:t===`arrowleft`?`arrowleft`:t===`arrowright`?`arrowright`:t.length===1||t.startsWith(`f`)&&t.length<=3||t===`enter`||t===`tab`||t===`backspace`||t===`delete`||t===`home`||t===`end`||t===`pageup`||t===`pagedown`?t:null}function z$(e){let t=R$(e.key);if(!t)return null;let n=[];return Mr(navigator.platform)?(e.metaKey&&n.push(`mod`),e.ctrlKey&&n.push(`ctrl`)):(e.ctrlKey&&n.push(`mod`),e.metaKey&&n.push(`meta`)),e.altKey&&n.push(`alt`),e.shiftKey&&n.push(`shift`),n.length===0?null:(n.push(t),n.join(`+`))}function B$({scripts:e,keybindings:t,preferredScriptId:n=null,onRunScript:r,onAddScript:i,onUpdateScript:a,onDeleteScript:o}){let s=q.useId(),[c,l]=(0,q.useState)(null),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(``),[m,h]=(0,q.useState)(``),[g,_]=(0,q.useState)(`play`),[v,y]=(0,q.useState)(!1),[b,x]=(0,q.useState)(!1),[S,C]=(0,q.useState)(``),[w,T]=(0,q.useState)(null),[E,D]=(0,q.useState)(!1),O=(0,q.useMemo)(()=>{if(n){let t=e.find(e=>e.id===n);if(t)return t}return M$(e)},[n,e]),k=c!==null,A=`data-highlighted:bg-transparent data-highlighted:text-foreground hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground data-highlighted:hover:bg-accent data-highlighted:hover:text-accent-foreground data-highlighted:focus-visible:bg-accent data-highlighted:focus-visible:text-accent-foreground`,j=e=>{if(e.key===`Tab`)return;if(e.preventDefault(),e.key===`Backspace`||e.key===`Delete`){C(``);return}let t=z$(e);t&&C(t)},M=async t=>{t.preventDefault();let n=f.trim(),r=m.trim();if(n.length===0){T(`Name is required.`);return}if(r.length===0){T(`Command is required.`);return}T(null);try{let t=c??j$(n,e.map(e=>e.id)),o=E$({keybinding:S,command:k$(t)}),s={name:n,command:r,icon:g,runOnWorktreeCreate:b,keybinding:o?.key??null};c?await a(c,s):await i(s),d(!1),y(!1)}catch(e){T(e instanceof Error?e.message:`Failed to save action.`)}},N=()=>{l(null),p(``),h(``),_(`play`),y(!1),x(!1),C(``),T(null),d(!0)},P=e=>{l(e.id),p(e.name),h(e.command),_(e.icon),y(!1),x(e.runOnWorktreeCreate),C(D$(t,k$(e.id))??``),T(null),d(!0)},F=(0,q.useCallback)(()=>{c&&(D(!1),d(!1),o(c))},[c,o]);return(0,Y.jsxs)(Y.Fragment,{children:[O?(0,Y.jsxs)(`div`,{"aria-label":`Project scripts`,className:N$,role:`group`,children:[(0,Y.jsxs)(W,{size:`xs`,variant:`ghost`,className:P$,onClick:()=>r(O),title:`Run ${O.name}`,children:[(0,Y.jsx)(L$,{icon:O.icon}),(0,Y.jsx)(`span`,{className:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:ml-0.5`,children:O.name})]}),(0,Y.jsxs)(ka,{highlightItemOnHover:!1,children:[(0,Y.jsx)(qi,{render:(0,Y.jsx)(W,{size:`icon-xs`,variant:`ghost`,className:F$,"aria-label":`Script actions`}),children:(0,Y.jsx)(fr,{className:`size-4`})}),(0,Y.jsxs)(_i,{align:`end`,children:[e.map(e=>{let n=su(t,k$(e.id));return(0,Y.jsxs)(Fi,{className:`group ${A}`,onClick:()=>r(e),children:[(0,Y.jsx)(L$,{icon:e.icon,className:`size-4`}),(0,Y.jsx)(`span`,{className:`truncate`,children:e.runOnWorktreeCreate?`${e.name} (setup)`:e.name}),(0,Y.jsxs)(`span`,{className:`relative ms-auto flex h-6 min-w-6 items-center justify-end`,children:[n&&(0,Y.jsx)(yo,{className:`ms-0 transition-opacity group-hover:opacity-0 group-focus-visible:opacity-0`,children:n}),(0,Y.jsx)(W,{type:`button`,variant:`ghost`,size:`icon-xs`,className:`absolute right-0 top-1/2 size-6 -translate-y-1/2 opacity-0 pointer-events-none transition-opacity group-hover:opacity-100 group-hover:pointer-events-auto group-focus-visible:opacity-100 group-focus-visible:pointer-events-auto`,"aria-label":`Edit ${e.name}`,onPointerDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:t=>{t.preventDefault(),t.stopPropagation(),P(e)},children:(0,Y.jsx)(va,{className:`size-3.5`})})]})]},e.id)}),(0,Y.jsxs)(Fi,{className:A,onClick:N,children:[(0,Y.jsx)(mu,{className:`size-4`}),`Add action`]})]})]})]}):(0,Y.jsxs)(W,{size:`xs`,variant:`ghost`,className:P$,onClick:N,title:`Add action`,children:[(0,Y.jsx)(mu,{className:`size-3.5`}),(0,Y.jsx)(`span`,{className:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:ml-0.5`,children:`Add action`})]}),(0,Y.jsx)(vi,{onOpenChange:e=>{d(e),e||y(!1)},onOpenChangeComplete:e=>{e||(l(null),p(``),h(``),_(`play`),x(!1),C(``),T(null))},open:u,children:(0,Y.jsxs)(ia,{className:`project-glass-surface`,surface:`glass`,children:[(0,Y.jsxs)(ta,{children:[(0,Y.jsx)(Ri,{children:k?`Edit Action`:`Add Action`}),(0,Y.jsx)(qa,{children:`Actions are project-scoped commands you can run from the top bar or keybindings.`})]}),(0,Y.jsx)(Qi,{children:(0,Y.jsxs)(`form`,{id:s,className:`space-y-4`,onSubmit:M,children:[(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(ja,{htmlFor:`script-name`,children:`Name`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsxs)(Gi,{onOpenChange:y,open:v,children:[(0,Y.jsx)(pi,{render:(0,Y.jsx)(W,{type:`button`,variant:`outline`,className:`size-9 shrink-0 hover:bg-popover active:bg-popover data-pressed:bg-popover data-pressed:shadow-xs/5 data-pressed:before:shadow-[0_1px_--theme(--color-black/4%)] dark:data-pressed:before:shadow-[0_-1px_--theme(--color-white/6%)]`,"aria-label":`Choose icon`}),children:(0,Y.jsx)(L$,{icon:g,className:`size-4.5`})}),(0,Y.jsx)(hi,{align:`start`,children:(0,Y.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:I$.map(e=>{let t=e.id===g;return(0,Y.jsxs)(`button`,{type:`button`,className:`relative flex flex-col items-center gap-2 rounded-md border px-2 py-2 text-xs ${t?`border-primary/70 bg-primary/10`:`border-border/70 hover:bg-accent/60`}`,onClick:()=>{_(e.id),y(!1)},children:[(0,Y.jsx)(L$,{icon:e.id,className:`size-4`}),(0,Y.jsx)(`span`,{children:e.label})]},e.id)})})})]}),(0,Y.jsx)(al,{id:`script-name`,autoFocus:!0,placeholder:`Test`,value:f,onChange:e=>p(e.target.value)})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(ja,{htmlFor:`script-keybinding`,children:`Keybinding`}),(0,Y.jsx)(al,{id:`script-keybinding`,placeholder:`Press shortcut`,value:S,readOnly:!0,onKeyDown:j}),(0,Y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Press a shortcut. Use `,(0,Y.jsx)(`code`,{children:`Backspace`}),` to clear.`]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(ja,{htmlFor:`script-command`,children:`Command`}),(0,Y.jsx)(di,{id:`script-command`,placeholder:`bun test`,value:m,onChange:e=>h(e.target.value)})]}),(0,Y.jsxs)(`label`,{className:`flex items-center justify-between gap-3 rounded-md border border-border/70 px-3 py-2 text-sm`,children:[(0,Y.jsx)(`span`,{children:`Run automatically on worktree creation`}),(0,Y.jsx)($a,{checked:b,onCheckedChange:e=>x(!!e)})]}),w&&(0,Y.jsx)(`p`,{className:`text-sm text-destructive`,children:w})]})}),(0,Y.jsxs)(Ti,{children:[k&&(0,Y.jsx)(W,{type:`button`,variant:`destructive-outline`,className:`mr-auto`,onClick:()=>D(!0),children:`Delete`}),(0,Y.jsx)(W,{type:`button`,variant:`outline`,onClick:()=>{d(!1)},children:`Cancel`}),(0,Y.jsx)(W,{form:s,type:`submit`,children:k?`Save changes`:`Save action`})]})]})}),(0,Y.jsx)(Ei,{open:E,onOpenChange:D,children:(0,Y.jsxs)(na,{children:[(0,Y.jsxs)(Xi,{children:[(0,Y.jsxs)(Ii,{children:[`Delete action "`,f,`"?`]}),(0,Y.jsx)(Ci,{children:`This action cannot be undone.`})]}),(0,Y.jsxs)($i,{children:[(0,Y.jsx)(Ga,{render:(0,Y.jsx)(W,{variant:`outline`}),children:`Cancel`}),(0,Y.jsx)(W,{variant:`destructive`,onClick:F,children:`Delete action`})]})]})})]})}var V$=(0,q.memo)(function(e){let t=(0,J.c)(44),{keybindings:n,availableEditors:r,openInCwd:i}=e,[a,o]=cc(r),s;t[0]===r?s=t[1]:(s=Xs(navigator.platform,r),t[0]=r,t[1]=s);let c=s,l;t[2]!==c||t[3]!==a?(l=c.find(e=>{let{value:t}=e;return t===a})??null,t[2]=c,t[3]=a,t[4]=l):l=t[4];let u=l,d;t[5]!==i||t[6]!==a||t[7]!==o?(d=e=>{let t=Cn();if(!t||!i)return;let n=e??a;n&&t.shell.openInEditor(i,n).then(()=>{uc(n)&&o(n)}).catch(e=>{console.error(`Failed to open ${n}.`,e)})},t[5]=i,t[6]=a,t[7]=o,t[8]=d):d=t[8];let f=d,p;t[9]===n?p=t[10]:(p=su(n,`editor.openFavorite`),t[9]=n,t[10]=p);let m=p,h,g;t[11]!==n||t[12]!==i||t[13]!==a?(h=()=>{let e=e=>{let t=Cn();fu(e)||ru(e,n)&&t&&i&&a&&(e.preventDefault(),t.shell.openInEditor(i,a))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},g=[a,n,i],t[11]=n,t[12]=i,t[13]=a,t[14]=h,t[15]=g):(h=t[14],g=t[15]),Vs(h,g);let _=!a||!i,v;t[16]!==f||t[17]!==a?(v=()=>f(a),t[16]=f,t[17]=a,t[18]=v):v=t[18];let y;t[19]===u?y=t[20]:(y=u?.Icon&&(0,Y.jsx)(u.Icon,{"aria-hidden":`true`,className:`size-3.5`}),t[19]=u,t[20]=y);let b;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,Y.jsx)(`span`,{className:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:ml-0.5`,children:`Open`}),t[21]=b):b=t[21];let x;t[22]!==_||t[23]!==v||t[24]!==y?(x=(0,Y.jsxs)(W,{size:`xs`,variant:`ghost`,className:P$,disabled:_,onClick:v,children:[y,b]}),t[22]=_,t[23]=v,t[24]=y,t[25]=x):x=t[25];let S;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Y.jsx)(qi,{render:(0,Y.jsx)(W,{"aria-label":`Copy options`,className:F$,size:`icon-xs`,variant:`ghost`}),children:(0,Y.jsx)(fr,{"aria-hidden":`true`,className:`size-4`})}),t[26]=S):S=t[26];let C;t[27]===c.length?C=t[28]:(C=c.length===0&&(0,Y.jsx)(Fi,{disabled:!0,children:`No installed editors found`}),t[27]=c.length,t[28]=C);let w;if(t[29]!==m||t[30]!==f||t[31]!==c||t[32]!==a){let e;t[34]!==m||t[35]!==f||t[36]!==a?(e=e=>{let{label:t,Icon:n,value:r}=e;return(0,Y.jsxs)(Fi,{onClick:()=>f(r),children:[(0,Y.jsx)(n,{"aria-hidden":`true`,className:`text-muted-foreground`}),t,r===a&&m&&(0,Y.jsx)(yo,{children:m})]},r)},t[34]=m,t[35]=f,t[36]=a,t[37]=e):e=t[37],w=c.map(e),t[29]=m,t[30]=f,t[31]=c,t[32]=a,t[33]=w}else w=t[33];let T;t[38]!==C||t[39]!==w?(T=(0,Y.jsxs)(ka,{children:[S,(0,Y.jsxs)(_i,{align:`end`,children:[C,w]})]}),t[38]=C,t[39]=w,t[40]=T):T=t[40];let E;return t[41]!==x||t[42]!==T?(E=(0,Y.jsxs)(`div`,{"aria-label":`Subscription actions`,className:N$,role:`group`,children:[x,T]}),t[41]=x,t[42]=T,t[43]=E):E=t[43],E}),H$=new Set([`main`,`master`]);function U$(e){if(e.origin===`main`)return!1;if(e.origin&&e.origin!==null)return!0;let t=e.branch?.trim()??``;return!(t.length===0||H$.has(t))}var W$=(0,q.memo)(function(e){let t=(0,J.c)(20),n;t[0]!==e.worktreeBranch||t[1]!==e.worktreeOrigin?(n=U$({origin:e.worktreeOrigin,branch:e.worktreeBranch}),t[0]=e.worktreeBranch,t[1]=e.worktreeOrigin,t[2]=n):n=t[2];let r=n,i;t[3]!==e.worktreeBranch||t[4]!==e.worktreeTitle?(i=(e.worktreeTitle?.trim()||e.worktreeBranch?.trim())??null,t[3]=e.worktreeBranch,t[4]=e.worktreeTitle,t[5]=i):i=t[5];let a=i,o;t[6]!==e.onSelectProject||t[7]!==e.projectName?(o=e.projectName?(0,Y.jsx)(G$,{label:e.projectName,onSelect:e.onSelectProject,prominent:!0}):null,t[6]=e.onSelectProject,t[7]=e.projectName,t[8]=o):o=t[8];let s;t[9]!==e.onSelectWorktree||t[10]!==r||t[11]!==a?(s=r&&a?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Ms,{className:`size-3 shrink-0 text-muted-foreground/60`,"aria-hidden":!0}),(0,Y.jsx)(G$,{label:a,onSelect:e.onSelectWorktree,mono:!0})]}):null,t[9]=e.onSelectWorktree,t[10]=r,t[11]=a,t[12]=s):s=t[12];let c;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(Ms,{className:`size-3 shrink-0 text-muted-foreground/60`,"aria-hidden":!0}),t[13]=c):c=t[13];let l;t[14]===e.sessionTitle?l=t[15]:(l=(0,Y.jsx)(`span`,{className:`min-w-0 truncate text-foreground/85`,title:e.sessionTitle,children:e.sessionTitle}),t[14]=e.sessionTitle,t[15]=l);let u;return t[16]!==o||t[17]!==s||t[18]!==l?(u=(0,Y.jsxs)(`nav`,{"aria-label":`Breadcrumb`,className:`flex min-w-0 flex-1 items-center gap-1.5 text-sm font-medium`,children:[o,s,c,l]}),t[16]=o,t[17]=s,t[18]=l,t[19]=u):u=t[19],u});function G$(e){let t=(0,J.c)(16),n=e.mono?`font-mono text-xs`:``,r;t[0]===n?r=t[1]:(r=G(`min-w-0 truncate`,n),t[0]=n,t[1]=r);let i;t[2]!==e.label||t[3]!==r?(i=(0,Y.jsx)(`span`,{className:r,title:e.label,children:e.label}),t[2]=e.label,t[3]=r,t[4]=i):i=t[4];let a=i;if(e.onSelect){let n=e.onSelect,r=e.prominent?`text-foreground`:``,i;t[5]===r?i=t[6]:(i=G(`inline-flex min-w-0 items-center rounded-md px-1 py-0.5 -mx-1 text-foreground/80 hover:bg-accent/50 hover:text-foreground focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring`,r),t[5]=r,t[6]=i);let o;return t[7]!==e.onSelect||t[8]!==i||t[9]!==a?(o=(0,Y.jsx)(`button`,{type:`button`,onClick:n,className:i,children:a}),t[7]=e.onSelect,t[8]=i,t[9]=a,t[10]=o):o=t[10],o}let o=e.prominent?`text-foreground`:`text-foreground/80`,s;t[11]===o?s=t[12]:(s=G(`min-w-0`,o),t[11]=o,t[12]=s);let c;return t[13]!==s||t[14]!==a?(c=(0,Y.jsx)(`span`,{className:s,children:a}),t[13]=s,t[14]=a,t[15]=c):c=t[15],c}var K$=(0,q.memo)(function(e){let t=(0,J.c)(35),n;t[0]===e.onSelectProject?n=t[1]:(n=e.onSelectProject?{onSelectProject:e.onSelectProject}:{},t[0]=e.onSelectProject,t[1]=n);let r;t[2]===e.onSelectWorktree?r=t[3]:(r=e.onSelectWorktree?{onSelectWorktree:e.onSelectWorktree}:{},t[2]=e.onSelectWorktree,t[3]=r);let i;t[4]!==e.projectName||t[5]!==e.sessionTitle||t[6]!==e.worktreeBranch||t[7]!==e.worktreeOrigin||t[8]!==e.worktreeTitle||t[9]!==n||t[10]!==r?(i=(0,Y.jsx)(W$,{projectName:e.projectName,worktreeBranch:e.worktreeBranch,worktreeTitle:e.worktreeTitle,worktreeOrigin:e.worktreeOrigin,sessionTitle:e.sessionTitle,...n,...r}),t[4]=e.projectName,t[5]=e.sessionTitle,t[6]=e.worktreeBranch,t[7]=e.worktreeOrigin,t[8]=e.worktreeTitle,t[9]=n,t[10]=r,t[11]=i):i=t[11];let a;t[12]!==e.onOpenLinkedWorktreeItem||t[13]!==e.worktreeIssueNumber||t[14]!==e.worktreeIssueState||t[15]!==e.worktreePrIsDraft||t[16]!==e.worktreePrNumber||t[17]!==e.worktreePrState||t[18]!==e.worktreeWorkItemKey||t[19]!==e.worktreeWorkItemProvider||t[20]!==e.worktreeWorkItemState||t[21]!==e.worktreeWorkItemStateName?(a=(0,Y.jsx)(ms,{issueNumber:e.worktreeIssueNumber,issueState:e.worktreeIssueState,prNumber:e.worktreePrNumber,prState:e.worktreePrState,prIsDraft:e.worktreePrIsDraft,workItemProvider:e.worktreeWorkItemProvider,workItemKey:e.worktreeWorkItemKey,workItemState:e.worktreeWorkItemState,workItemStateName:e.worktreeWorkItemStateName,density:`header`,labelStyle:`kind`,onOpenLinkedItem:e.onOpenLinkedWorktreeItem}),t[12]=e.onOpenLinkedWorktreeItem,t[13]=e.worktreeIssueNumber,t[14]=e.worktreeIssueState,t[15]=e.worktreePrIsDraft,t[16]=e.worktreePrNumber,t[17]=e.worktreePrState,t[18]=e.worktreeWorkItemKey,t[19]=e.worktreeWorkItemProvider,t[20]=e.worktreeWorkItemState,t[21]=e.worktreeWorkItemStateName,t[22]=a):a=t[22];let o;t[23]!==e.isGitRepo||t[24]!==e.projectName?(o=e.projectName&&!e.isGitRepo?(0,Y.jsx)(`span`,{className:`shrink-0 rounded-full border border-border/60 bg-muted/40 px-1.5 py-0.5 text-[10px] text-amber-600 dark:text-amber-400`,children:`No Git`}):null,t[23]=e.isGitRepo,t[24]=e.projectName,t[25]=o):o=t[25];let s;t[26]!==i||t[27]!==a||t[28]!==o?(s=(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden`,children:[i,a,o]}),t[26]=i,t[27]=a,t[28]=o,t[29]=s):s=t[29];let c;t[30]===e.inlineActions?c=t[31]:(c=e.inlineActions?(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-end gap-2 @3xl/header-actions:gap-3`,children:e.inlineActions}):null,t[30]=e.inlineActions,t[31]=c);let l;return t[32]!==s||t[33]!==c?(l=(0,Y.jsxs)(`div`,{className:`@container/header-actions flex min-w-0 flex-1 items-center gap-3`,children:[s,c]}),t[32]=s,t[33]=c,t[34]=l):l=t[34],l});function q$(e){return!!e.activeProjectName&&e.primaryEnvironmentId!==null&&e.activeThreadEnvironmentId===e.primaryEnvironmentId}var J$=(0,q.memo)(function(e){let t=(0,J.c)(73);Qo(`ChatHeader`),$o(e,`ChatHeader`);let n=d(),r;t[0]!==n||t[1]!==e.activeProjectName||t[2]!==e.activeThreadEnvironmentId?(r=q$({activeProjectName:e.activeProjectName,activeThreadEnvironmentId:e.activeThreadEnvironmentId,primaryEnvironmentId:n}),t[0]=n,t[1]=e.activeProjectName,t[2]=e.activeThreadEnvironmentId,t[3]=r):r=t[3];let i=r,a;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(qo,{}),t[4]=a):a=t[4];let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(ho,{className:`size-4`}),t[5]=o):o=t[5];let s;t[6]!==e.onToggleOverviewSidebar||t[7]!==e.overviewSidebarOpen?(s=(0,Y.jsx)(So,{render:(0,Y.jsx)(Al,{pressed:e.overviewSidebarOpen,onPressedChange:e.onToggleOverviewSidebar,"aria-label":`Toggle overview panel`,className:F$,size:`sm`,children:o})}),t[6]=e.onToggleOverviewSidebar,t[7]=e.overviewSidebarOpen,t[8]=s):s=t[8];let c;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Y.jsx)(Co,{side:`bottom`,children:`Toggle overview panel`}),t[9]=c):c=t[9];let l;t[10]===s?l=t[11]:(l=(0,Y.jsxs)(wo,{children:[s,c]}),t[10]=s,t[11]=l);let u;t[12]===e.liveAgentCount?u=t[13]:(u=e.liveAgentCount>0?`Toggle workspace panel, ${PO(e.liveAgentCount)}`:`Toggle workspace panel`,t[12]=e.liveAgentCount,t[13]=u);let f;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(od,{className:`size-4`}),t[14]=f):f=t[14];let p;t[15]===e.liveAgentCount?p=t[16]:(p=(0,Y.jsxs)(`span`,{className:`relative inline-flex`,children:[f,(0,Y.jsx)(FO,{count:e.liveAgentCount,className:`-top-2 -right-2.5 h-3.5 min-w-3.5 px-0.5 text-[8px]`})]}),t[15]=e.liveAgentCount,t[16]=p);let m;t[17]!==e.onToggleWorkspacePanel||t[18]!==e.workspacePanelOpen||t[19]!==u||t[20]!==p?(m=(0,Y.jsx)(So,{render:(0,Y.jsx)(Al,{pressed:e.workspacePanelOpen,onPressedChange:e.onToggleWorkspacePanel,"aria-label":u,className:F$,size:`sm`,children:p})}),t[17]=e.onToggleWorkspacePanel,t[18]=e.workspacePanelOpen,t[19]=u,t[20]=p,t[21]=m):m=t[21];let h;t[22]===e.liveAgentCount?h=t[23]:(h=e.liveAgentCount>0?`Workspace · ${PO(e.liveAgentCount)}`:`Toggle workspace panel`,t[22]=e.liveAgentCount,t[23]=h);let g;t[24]===h?g=t[25]:(g=(0,Y.jsx)(Co,{side:`bottom`,children:h}),t[24]=h,t[25]=g);let _;t[26]!==g||t[27]!==m?(_=(0,Y.jsxs)(wo,{children:[m,g]}),t[26]=g,t[27]=m,t[28]=_):_=t[28];let v;t[29]!==e.activeProjectScripts||t[30]!==e.keybindings||t[31]!==e.onAddProjectScript||t[32]!==e.onDeleteProjectScript||t[33]!==e.onRunProjectScript||t[34]!==e.onUpdateProjectScript||t[35]!==e.preferredScriptId?(v=e.activeProjectScripts?(0,Y.jsx)(B$,{scripts:e.activeProjectScripts,keybindings:e.keybindings,preferredScriptId:e.preferredScriptId,onRunScript:e.onRunProjectScript,onAddScript:e.onAddProjectScript,onUpdateScript:e.onUpdateProjectScript,onDeleteScript:e.onDeleteProjectScript}):null,t[29]=e.activeProjectScripts,t[30]=e.keybindings,t[31]=e.onAddProjectScript,t[32]=e.onDeleteProjectScript,t[33]=e.onRunProjectScript,t[34]=e.onUpdateProjectScript,t[35]=e.preferredScriptId,t[36]=v):v=t[36];let y;t[37]!==e.availableEditors||t[38]!==e.keybindings||t[39]!==e.openInCwd||t[40]!==i?(y=i?(0,Y.jsx)(V$,{keybindings:e.keybindings,availableEditors:e.availableEditors,openInCwd:e.openInCwd}):null,t[37]=e.availableEditors,t[38]=e.keybindings,t[39]=e.openInCwd,t[40]=i,t[41]=y):y=t[41];let b;t[42]!==_||t[43]!==v||t[44]!==y||t[45]!==l?(b=(0,Y.jsxs)(Y.Fragment,{children:[a,l,_,v,y]}),t[42]=_,t[43]=v,t[44]=y,t[45]=l,t[46]=b):b=t[46];let x=b,S;t[47]===e.onSelectProject?S=t[48]:(S=e.onSelectProject?{onSelectProject:e.onSelectProject}:{},t[47]=e.onSelectProject,t[48]=S);let C;t[49]===e.onSelectWorktree?C=t[50]:(C=e.onSelectWorktree?{onSelectWorktree:e.onSelectWorktree}:{},t[49]=e.onSelectWorktree,t[50]=C);let w;t[51]===e.onOpenLinkedWorktreeItem?w=t[52]:(w=e.onOpenLinkedWorktreeItem?{onOpenLinkedWorktreeItem:e.onOpenLinkedWorktreeItem}:{},t[51]=e.onOpenLinkedWorktreeItem,t[52]=w);let T;return t[53]!==x||t[54]!==e.activeProjectName||t[55]!==e.activeThreadTitle||t[56]!==e.isGitRepo||t[57]!==e.worktreeBranch||t[58]!==e.worktreeIssueNumber||t[59]!==e.worktreeIssueState||t[60]!==e.worktreeOrigin||t[61]!==e.worktreePrIsDraft||t[62]!==e.worktreePrNumber||t[63]!==e.worktreePrState||t[64]!==e.worktreeTitle||t[65]!==e.worktreeWorkItemKey||t[66]!==e.worktreeWorkItemProvider||t[67]!==e.worktreeWorkItemState||t[68]!==e.worktreeWorkItemStateName||t[69]!==S||t[70]!==C||t[71]!==w?(T=(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 py-3`,children:(0,Y.jsx)(K$,{projectName:e.activeProjectName,isGitRepo:e.isGitRepo,worktreeBranch:e.worktreeBranch,worktreeTitle:e.worktreeTitle,worktreeOrigin:e.worktreeOrigin,worktreeIssueNumber:e.worktreeIssueNumber,worktreeIssueState:e.worktreeIssueState,worktreePrNumber:e.worktreePrNumber,worktreePrState:e.worktreePrState,worktreePrIsDraft:e.worktreePrIsDraft,worktreeWorkItemProvider:e.worktreeWorkItemProvider,worktreeWorkItemKey:e.worktreeWorkItemKey,worktreeWorkItemState:e.worktreeWorkItemState,worktreeWorkItemStateName:e.worktreeWorkItemStateName,sessionTitle:e.activeThreadTitle,...S,...C,...w,inlineActions:x})}),t[53]=x,t[54]=e.activeProjectName,t[55]=e.activeThreadTitle,t[56]=e.isGitRepo,t[57]=e.worktreeBranch,t[58]=e.worktreeIssueNumber,t[59]=e.worktreeIssueState,t[60]=e.worktreeOrigin,t[61]=e.worktreePrIsDraft,t[62]=e.worktreePrNumber,t[63]=e.worktreePrState,t[64]=e.worktreeTitle,t[65]=e.worktreeWorkItemKey,t[66]=e.worktreeWorkItemProvider,t[67]=e.worktreeWorkItemState,t[68]=e.worktreeWorkItemStateName,t[69]=S,t[70]=C,t[71]=w,t[72]=T):T=t[72],T});function Y$(e){let t=(0,J.c)(20),n=Ho(),r=me(Uc(Rn)),i;t[0]!==e.environmentId||t[1]!==e.threadId||t[2]!==r?(i=r.find(t=>t.id===e.threadId&&t.environmentId===e.environmentId)??null,t[0]=e.environmentId,t[1]=e.threadId,t[2]=r,t[3]=i):i=t[3];let a=i,o;t[4]===n?o=t[5]:(o=()=>void n({to:`/`}),t[4]=n,t[5]=o);let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Y.jsx)(Uo,{}),t[6]=s):s=t[6];let c;t[7]===o?c=t[8]:(c=(0,Y.jsx)(W,{size:`icon`,variant:`ghost`,"aria-label":`Back to threads`,className:`shrink-0`,onClick:o,children:s}),t[7]=o,t[8]=c);let l;t[9]===e.title?l=t[10]:(l=(0,Y.jsx)(`p`,{className:`truncate text-sm font-medium`,children:e.title}),t[9]=e.title,t[10]=l);let u;t[11]===a?u=t[12]:(u=a?(0,Y.jsx)(`span`,{className:`flex items-center gap-1.5`,children:(0,Y.jsx)(eo,{thread:a,alwaysShowStatusLabel:!0})}):null,t[11]=a,t[12]=u);let d;t[13]!==l||t[14]!==u?(d=(0,Y.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[l,u]}),t[13]=l,t[14]=u,t[15]=d):d=t[15];let f;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Y.jsx)(Go,{}),t[16]=f):f=t[16];let p;return t[17]!==c||t[18]!==d?(p=(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5 py-2`,children:[c,d,f]}),t[17]=c,t[18]=d,t[19]=p):p=t[19],p}var X$=`w-full min-w-0 max-w-none border-s-0 p-0 pt-[env(safe-area-inset-top)] pl-safe pr-safe pb-[max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))] wco:mt-[env(titlebar-area-height)] wco:h-[calc(100%-env(titlebar-area-height))] wco:max-h-[calc(100%-env(titlebar-area-height))]`;function Z$(e){let t=(0,J.c)(14),n;t[0]===e.open?n=t[1]:(n=Po({active:e.open,containIntrinsicSize:`100vw 100vh`}),t[0]=e.open,t[1]=n);let r=n,i;t[2]===e?i=t[3]:(i=t=>{t||e.onClose()},t[2]=e,t[3]=i);let a;t[4]!==r||t[5]!==e.children?(a=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:r,children:e.children}),t[4]=r,t[5]=e.children,t[6]=a):a=t[6];let o;t[7]!==e.label||t[8]!==a?(o=(0,Y.jsx)(sl,{side:`right`,showCloseButton:!1,keepMounted:!0,"aria-label":e.label,className:X$,children:a}),t[7]=e.label,t[8]=a,t[9]=o):o=t[9];let s;return t[10]!==e.open||t[11]!==i||t[12]!==o?(s=(0,Y.jsx)(cl,{open:e.open,onOpenChange:i,children:o}),t[10]=e.open,t[11]=i,t[12]=o,t[13]=s):s=t[13],s}function Q$(e){let t=(0,J.c)(14),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(Uo,{}),t[0]=n):n=t[0];let r;t[1]!==e.backLabel||t[2]!==e.onBack?(r=(0,Y.jsx)(W,{size:`icon`,variant:`ghost`,"aria-label":e.backLabel,className:`shrink-0`,onClick:e.onBack,children:n}),t[1]=e.backLabel,t[2]=e.onBack,t[3]=r):r=t[3];let i;t[4]===e.title?i=t[5]:(i=(0,Y.jsx)(`p`,{className:`min-w-0 flex-1 truncate text-sm font-medium`,children:e.title}),t[4]=e.title,t[5]=i);let a;t[6]!==r||t[7]!==i?(a=(0,Y.jsxs)(`div`,{className:`flex h-14 shrink-0 items-center gap-1.5 border-b border-border bg-card/40 px-2`,children:[r,i]}),t[6]=r,t[7]=i,t[8]=a):a=t[8];let o;t[9]===e.children?o=t[10]:(o=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full min-w-0 flex-1`,children:e.children}),t[9]=e.children,t[10]=o);let s;return t[11]!==a||t[12]!==o?(s=(0,Y.jsxs)(`div`,{className:`flex h-full min-h-0 w-full min-w-0 flex-col bg-background`,children:[a,o]}),t[11]=a,t[12]=o,t[13]=s):s=t[13],s}function $$(e,t,n=6){if(n<=0||e.length===0)return[];let r=Math.floor(n),i=t===null?-1:e.findIndex(e=>e.key===t);if(i<0)return e.map(e=>e.key).filter(e=>e!==t).slice(0,r);let a=[];for(let t=1;a.length<r;t+=1){let n=e[i-t],o=e[i+t];if(!n&&!o||n&&(a.push(n.key),a.length>=r))break;o&&a.push(o.key)}return a}function e1(e){let t=(0,J.c)(7),{activeWorktreeSessionTabs:n,activeSessionTabKey:r}=e,a,o;t[0]!==r||t[1]!==n?(a=()=>{if(n.length===0)return;let e=[];for(let t of $$(n,r)){let n=i(t);n&&e.push(Lt(n.environmentId,n.threadId))}return()=>{for(let t of e)t()}},o=[n,r],t[0]=r,t[1]=n,t[2]=a,t[3]=o):(a=t[2],o=t[3]),(0,q.useEffect)(a,o);let s,c;t[4]===r?(s=t[5],c=t[6]):(s=()=>{if(!r)return;let e=r;queueMicrotask(()=>os(e))},c=[r],t[4]=r,t[5]=s,t[6]=c),(0,q.useEffect)(s,c)}function t1(e){return{id:e.threadId,environmentId:e.environmentId,projectId:e.projectId,title:`Empty Session`,interactionMode:e.interactionMode,tokenMode:e.tokenMode??At,session:null,createdAt:e.createdAt,archivedAt:null,settledOverride:null,settledAt:null,updatedAt:e.createdAt,latestTurn:null,branch:e.branch,worktreePath:e.worktreePath,manualStatusBucket:null,latestUserMessageAt:null,hasPendingApprovals:!1,hasPendingUserInput:!1,hasActionableProposedPlan:!1}}function n1(e,t){return e.worktreeId!==void 0&&e.worktreeId!==null&&t.worktreeId&&e.worktreeId===t.worktreeId||t.worktreePath&&e.worktreePath===t.worktreePath?!0:!t.worktreeId&&!t.worktreePath&&e.worktreePath===null}function r1(){let e=new Map,t=null;return(n,r)=>{let i=[];for(let e of n)e.archivedAt===null&&n1(e,r)&&i.push(e);i.sort((e,t)=>(Date.parse(t.updatedAt??t.createdAt??``)||0)-(Date.parse(e.updatedAt??e.createdAt??``)||0));let a=new Set,o=[],s=t!==null&&t.length===i.length;for(let n=0;n<i.length;n+=1){let r=i[n],c=u(_(r.environmentId,r.id));a.add(c);let l=yc({manualBucket:r.manualStatusBucket??null,statusPill:_c({thread:r})}),d=e.get(c),f;d&&d.inputs.title===r.title&&d.inputs.bucket===l?f=d.item:(f={key:c,title:r.title,bucket:l},e.set(c,{item:f,inputs:{title:r.title,bucket:l}})),o.push(f),s&&t[n]!==f&&(s=!1)}for(let t of e.keys())a.has(t)||e.delete(t);return s&&t?t:(t=o,o)}}function i1(e){if(!e||e.status===`ready`||e.status===`disabled`)return null;let t=e.displayName?.trim()||Se(e.driver),n=e.message??(e.status===`error`?`${t} provider is unavailable.`:`${t} provider has limited availability.`);return{key:`${e.instanceId}:${e.status}:${n}`,variant:e.status===`error`?`error`:`warning`,title:`${t} provider status`,description:n}}var a1=new Set;function o1(e){return a1.has(e)}function s1(e){a1.add(e)}var c1=(0,q.memo)(function(e){let t=(0,J.c)(8),{error:n,threadRef:r,onDismiss:i}=e,a=r?.environmentId??null,o=r?.threadId??null,s=(0,q.useRef)(i),c,l;t[0]===i?(c=t[1],l=t[2]):(c=()=>{s.current=i},l=[i],t[0]=i,t[1]=c,t[2]=l),(0,q.useEffect)(c,l);let u,d;return t[3]!==a||t[4]!==n||t[5]!==o?(u=()=>{if(!n)return;let e=!0,t=Ve.add({type:`error`,title:`Thread error`,description:n,priority:`high`,timeout:0,onClose:()=>{e&&s.current?.()},data:{threadRef:a!==null&&o!==null?{environmentId:a,threadId:o}:null}});return()=>{e=!1,Ve.close(t)}},d=[a,n,o],t[3]=a,t[4]=n,t[5]=o,t[6]=u,t[7]=d):(u=t[6],d=t[7]),(0,q.useEffect)(u,d),null});function l1(e){let t=(0,J.c)(34),{scope:n,environmentId:r,selection:i,getThreadTitle:a,submittingIds:o,decisionErrorsById:s,disabledReason:c,onDecide:l}=e,u=n===void 0?`thread`:n,{pending:d,activity:f,managerThreadId:p}=i,[m,h]=(0,q.useState)(!1),g=(0,q.useId)(),_=u===`external`?`External Agent Control`:`Agent Control`,v=f[0],y;t[0]!==a||t[1]!==v?(y=v?Da(v,a):null,t[0]=a,t[1]=v,t[2]=y):y=t[2];let b=y,x=f.reduce(h1,0),S;t[3]===f?S=t[4]:(S=f.filter(p1),t[3]=f,t[4]=S);let C=S.length;if(d.length===0&&!v&&p===null)return null;let w=u===`external`?`agent-control-external-approvals`:`agent-control-approvals`,T;t[5]!==r||t[6]!==a||t[7]!==p?(T=p===null?null:(0,Y.jsxs)(`p`,{className:`flex min-w-0 items-center gap-1 px-2 py-1 text-xs text-muted-foreground`,children:[(0,Y.jsx)(`span`,{className:`shrink-0`,children:`Managed by`}),(0,Y.jsx)(`a`,{className:`truncate text-primary underline-offset-2 hover:underline`,href:`/${encodeURIComponent(r)}/${encodeURIComponent(p)}`,children:a(p)||`thread ${p.slice(0,8)}…`})]}),t[5]=r,t[6]=a,t[7]=p,t[8]=T):T=t[8];let E;t[9]!==s||t[10]!==c||t[11]!==r||t[12]!==a||t[13]!==_||t[14]!==l||t[15]!==d||t[16]!==o?(E=d.length>0?(0,Y.jsxs)(`section`,{"aria-label":`${_} approval requests`,children:[(0,Y.jsxs)(`p`,{className:`px-2 py-1 text-xs font-medium text-muted-foreground`,children:[_,` · `,d.length,` awaiting approval`]}),(0,Y.jsx)(`div`,{className:`max-h-[min(18rem,35dvh)] overflow-y-auto overscroll-contain`,children:d.map(e=>(0,Y.jsx)(Ra,{model:Da(e,a),environmentId:r,getThreadTitle:a,isSubmitting:o.includes(e.proposalId),decisionError:s[e.proposalId]??null,disabledReason:c,onAccept:()=>l(e.proposalId,`accept`),onReject:()=>l(e.proposalId,`reject`)},e.proposalId))})]}):null,t[9]=s,t[10]=c,t[11]=r,t[12]=a,t[13]=_,t[14]=l,t[15]=d,t[16]=o,t[17]=E):E=t[17];let D;t[18]!==f||t[19]!==m||t[20]!==C||t[21]!==r||t[22]!==a||t[23]!==_||t[24]!==v||t[25]!==b||t[26]!==x||t[27]!==g?(D=v&&b?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(W,{size:`xs`,variant:`ghost`,className:`h-auto w-full min-w-0 flex-wrap justify-start gap-x-2 gap-y-0.5 py-1.5 text-xs text-muted-foreground`,"aria-label":`${_} activity · ${f.length} actions`,"aria-describedby":x>0||C>0?g:void 0,"aria-expanded":m,onClick:()=>h(f1),children:[(0,Y.jsxs)(`span`,{className:`flex w-full min-w-0 items-center gap-2`,children:[m?(0,Y.jsx)(fr,{className:`size-3 shrink-0`}):(0,Y.jsx)(Ms,{className:`size-3 shrink-0`}),(0,Y.jsxs)(`span`,{className:`shrink-0`,children:[_,` · `,f.length]}),(0,Y.jsxs)(`span`,{className:`min-w-0 truncate text-left`,children:[b.statusLabel,` · `,b.actionLabel,` · `,b.targetLabel]}),(0,Y.jsx)(`span`,{className:`ml-auto shrink-0`,children:Va(v.updatedAt)})]}),x>0||C>0?(0,Y.jsxs)(`span`,{id:g,className:`flex w-full flex-wrap gap-x-2 pl-5 text-left whitespace-normal`,children:[x>0?(0,Y.jsxs)(`span`,{children:[x,` child result`,x===1?``:`s`,` pending`]}):null,C>0?(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[C,` `,C===1?`needs`:`need`,` attention`]}):null]}):null]}),m?(0,Y.jsx)(`div`,{"data-testid":`agent-control-activity-details`,className:`mt-1 max-h-[min(18rem,35dvh)] overflow-y-auto overscroll-contain`,children:f.map(e=>(0,Y.jsx)(Ra,{model:Da(e,a),environmentId:r,getThreadTitle:a,isSubmitting:!1,decisionError:null,disabledReason:null,onAccept:d1,onReject:u1},e.proposalId))}):null]}):null,t[18]=f,t[19]=m,t[20]=C,t[21]=r,t[22]=a,t[23]=_,t[24]=v,t[25]=b,t[26]=x,t[27]=g,t[28]=D):D=t[28];let O;return t[29]!==w||t[30]!==T||t[31]!==E||t[32]!==D?(O=(0,Y.jsxs)(`div`,{className:`mx-auto mb-2 w-full min-w-0 max-w-208`,"data-testid":w,children:[T,E,D]}),t[29]=w,t[30]=T,t[31]=E,t[32]=D,t[33]=O):O=t[33],O}function u1(){}function d1(){}function f1(e){return!e}function p1(e){return e.status===`failed`||e.completionReturns?.some(m1)}function m1(e){return[`blocked`,`failed`,`uncertain`].includes(e.status)}function h1(e,t){return e+(t.completionReturns?.filter(g1).length??0)}function g1(e){return[`waiting`,`ready`,`dispatching`].includes(e.status)}function _1({environmentId:e,activeThreadId:t}){let n=Rs(j.acceptProposal),[r,i]=(0,q.useState)([]),[a,o]=(0,q.useState)({});(0,q.useEffect)(()=>{let t=null,n=null,r=()=>{let r=lr(e)?.client??null;if(r===t)return;n?.(),n=null,t=r;let i=r?en(e,r)?.agentControl:void 0;if(!i)return;let a=Ja.getState();n=Md({environmentId:e,source:i,sink:{applyStreamEvent:a.applyStreamEvent,clearEnvironment:a.clearEnvironment}})},i=Qr(r);return r(),()=>{i(),n?.()}},[e]);let s=Ja(t=>t.queueByEnvironmentId[e]??null),c=(0,q.useMemo)(()=>Za(s??sa,t),[s,t]),l=(0,q.useMemo)(()=>Ba(s??sa),[s]),u=me(t=>t.environmentStateById[e]?.threadShellById),d=(0,q.useCallback)(e=>u?.[e]?.title,[u]),f=(0,q.useCallback)(async(t,n)=>{let r=Dr(e)?.agentControl;if(r){i(e=>e.includes(t)?e:[...e,t]),o(({[t]:e,...n})=>n);try{n===`accept`?await r.acceptProposal({proposalId:t}):await r.rejectProposal({proposalId:t})}catch(e){o(n=>({...n,[t]:e instanceof Error&&e.message.length>0?e.message:`Failed to submit the decision.`}))}finally{i(e=>e.filter(e=>e!==t))}}},[e]),p={environmentId:e,getThreadTitle:d,submittingIds:r,decisionErrorsById:a,disabledReason:n.allowed?null:n.reason??null,onDecide:(e,t)=>void f(e,t)};return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(l1,{...p,selection:c},`thread:${e}:${t??``}`),(0,Y.jsx)(l1,{...p,scope:`external`,selection:l},`external:${e}`)]})}var v1=220,y1={opacity:0,transform:`translate3d(0, 4rem, 0)`},b1={opacity:0,transform:`translate3d(0, 7rem, 0)`},x1={opacity:1,transform:`translate3d(0, 0, 0)`},S1={transition:`transform ${v1}ms ease-in, opacity ${v1}ms ease-in`,willChange:`transform, opacity`};function C1(e){let t=(0,J.c)(55),{className:n,items:r}=e,[i,a]=(0,q.useState)(null),o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={pointer:`coarse`},t[0]=o):o=t[0];let s=rs(o),c=rs(Io),[l,u]=(0,q.useState)(!1),d=(0,q.useRef)(null),f,p;t[1]!==i||t[2]!==r?(f=()=>{i&&!r.some(e=>e.id===i)&&a(null)},p=[i,r],t[1]=i,t[2]=r,t[3]=f,t[4]=p):(f=t[3],p=t[4]),(0,q.useEffect)(f,p);let m,h;t[5]!==s||t[6]!==r.length?(m=()=>{(r.length<=1||!s)&&u(!1)},h=[s,r.length],t[5]=s,t[6]=r.length,t[7]=m,t[8]=h):(m=t[7],h=t[8]),(0,q.useEffect)(m,h);let g,_;if(t[9]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>()=>{d.current&&clearTimeout(d.current)},_=[],t[9]=g,t[10]=_):(g=t[9],_=t[10]),(0,q.useEffect)(g,_),r.length===0)return null;let v=r[0];if(!v)return null;let y,b,x,S,C;if(t[11]!==n||t[12]!==i||t[13]!==v||t[14]!==s||t[15]!==l||t[16]!==r||t[17]!==c){let e=r.slice(1),o=e.length>0,f=o&&i!==v.id,p;t[23]!==i||t[24]!==c?(p=e=>{e.onDismiss&&!i&&(a(e.id),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{d.current=null,e.onDismiss?.()},c?0:v1))},t[23]=i,t[24]=c,t[25]=p):p=t[25];let m=p,h=c?void 0:S1;t[26]===n?x=t[27]:(x=G(`group/banner-stack mx-auto mb-2 max-w-208`,n),t[26]=n,t[27]=x);let g=o?`group-hover/banner-stack:z-50 group-focus-within/banner-stack:z-50`:null,_=o&&l?`z-50`:null;t[28]!==g||t[29]!==_?(S=G(`relative`,g,_),t[28]=g,t[29]=_,t[30]=S):S=t[30],C=f?s?(0,Y.jsx)(`button`,{type:`button`,"data-composer-banner-stack-cap":`true`,"aria-expanded":l,"aria-label":l?`Hide stacked notifications`:`Show ${e.length} more ${e.length===1?`notification`:`notifications`}`,className:G(`absolute inset-x-0 -top-3 z-0 mx-auto h-3 cursor-pointer rounded-t-xl`,`after:absolute after:inset-x-0 after:-top-7 after:-bottom-1.5`,`outline-none focus-visible:ring-2 focus-visible:ring-ring`,`border border-b-0 border-warning/24 bg-background/96 shadow-[0_6px_18px_rgba(0,0,0,0.06)]`),style:{width:`96%`},onClick:()=>u(w1)}):(0,Y.jsx)(`div`,{"data-composer-banner-stack-cap":`true`,className:G(`pointer-events-none absolute inset-x-0 -top-3 z-0 mx-auto h-3 rounded-t-xl`,`border border-b-0 border-warning/24 bg-background/96 shadow-[0_6px_18px_rgba(0,0,0,0.06)]`,`transition-opacity duration-150 ease-out motion-reduce:transition-none`,`group-hover/banner-stack:opacity-0 group-focus-within/banner-stack:opacity-0`),style:{width:`96%`},"aria-hidden":`true`}):null;let w=i===v.id?`pointer-events-none`:null,T;t[31]===w?T=t[32]:(T=G(`relative z-10`,w),t[31]=w,t[32]=T);let E=i===v.id?y1:x1,D;t[33]!==h||t[34]!==E?(D={...h,...E},t[33]=h,t[34]=E,t[35]=D):D=t[35];let O=i===v.id,k;t[36]!==v||t[37]!==m?(k=()=>m(v),t[36]=v,t[37]=m,t[38]=k):k=t[38];let A;t[39]!==v||t[40]!==O||t[41]!==k?(A=(0,Y.jsx)(T1,{item:v,exiting:O,onDismissRequest:k}),t[39]=v,t[40]=O,t[41]=k,t[42]=A):A=t[42],t[43]!==T||t[44]!==D||t[45]!==A?(y=(0,Y.jsx)(`div`,{className:T,style:D,children:A}),t[43]=T,t[44]=D,t[45]=A,t[46]=y):y=t[46],b=o?(0,Y.jsx)(`div`,{"data-composer-banner-stack-rest":`true`,className:G(`pointer-events-none absolute inset-x-0 bottom-[calc(100%+0.5rem)] z-20 space-y-2 opacity-0`,`transition-[opacity,transform] duration-150 ease-out motion-reduce:transition-none motion-reduce:translate-y-0`,`translate-y-1`,`group-hover/banner-stack:pointer-events-auto group-hover/banner-stack:translate-y-0 group-hover/banner-stack:opacity-100`,`group-focus-within/banner-stack:pointer-events-auto group-focus-within/banner-stack:translate-y-0 group-focus-within/banner-stack:opacity-100`,l?`pointer-events-auto translate-y-0 opacity-100`:null),children:e.map(e=>(0,Y.jsx)(`div`,{className:G(i===e.id?`pointer-events-none`:null),style:{...h,...i===e.id?b1:x1},children:(0,Y.jsx)(T1,{item:e,exiting:i===e.id,onDismissRequest:()=>m(e)})},e.id))}):null,t[11]=n,t[12]=i,t[13]=v,t[14]=s,t[15]=l,t[16]=r,t[17]=c,t[18]=y,t[19]=b,t[20]=x,t[21]=S,t[22]=C}else y=t[18],b=t[19],x=t[20],S=t[21],C=t[22];let w;t[47]!==y||t[48]!==b||t[49]!==S||t[50]!==C?(w=(0,Y.jsxs)(`div`,{className:S,children:[C,y,b]}),t[47]=y,t[48]=b,t[49]=S,t[50]=C,t[51]=w):w=t[51];let T;return t[52]!==x||t[53]!==w?(T=(0,Y.jsx)(`div`,{className:x,children:w}),t[52]=x,t[53]=w,t[54]=T):T=t[54],T}function w1(e){return!e}function T1(e){let t=(0,J.c)(17),{item:n,exiting:r,onDismissRequest:i}=e,a=n.onDismiss&&!n.actions,o;t[0]===n.title?o=t[1]:(o=(0,Y.jsx)(pl,{children:n.title}),t[0]=n.title,t[1]=o);let s;t[2]===n.description?s=t[3]:(s=n.description?(0,Y.jsx)(hl,{children:n.description}):null,t[2]=n.description,t[3]=s);let c;t[4]!==a||t[5]!==r||t[6]!==n.actions||t[7]!==n.dismissLabel||t[8]!==n.onDismiss||t[9]!==i?(c=n.actions||n.onDismiss?(0,Y.jsxs)(ml,{className:a?`phone:col-start-3 phone:row-start-1 phone:mt-0 phone:self-start`:void 0,children:[n.actions,n.onDismiss?(0,Y.jsx)(W,{size:`icon-xs`,variant:`ghost`,"aria-label":n.dismissLabel??`Dismiss warning`,disabled:r,onClick:i,children:(0,Y.jsx)(Ut,{className:`size-3.5`})}):null]}):null,t[4]=a,t[5]=r,t[6]=n.actions,t[7]=n.dismissLabel,t[8]=n.onDismiss,t[9]=i,t[10]=c):c=t[10];let l;return t[11]!==n.icon||t[12]!==n.variant||t[13]!==o||t[14]!==s||t[15]!==c?(l=(0,Y.jsx)(`div`,{className:`rounded-xl bg-background`,children:(0,Y.jsxs)(gl,{variant:n.variant,children:[n.icon,o,s,c]})}),t[11]=n.icon,t[12]=n.variant,t[13]=o,t[14]=s,t[15]=c,t[16]=l):l=t[16],l}function E1(e){let t=(0,J.c)(2),n;return t[0]===e?n=t[1]:(n={...e,state:`open`,limit:50},t[0]=e,t[1]=n),Ji(n)}function D1(e){let t=(0,J.c)(2),n=St(O1),r;return t[0]===n?r=t[1]:(r=e=>Li({mode:n,phase:e?.state===`open`?`active`:`settled`}),t[0]=n,t[1]=r),ci(e,r)}function O1(e){return e.sourceControlRefreshMode}function k1(e){let t=(0,J.c)(7),n=e.pullRequestNumber===null?e.branch:null,r=e.enabled&&(e.pullRequestNumber!==null||e.branch!==null),i;return t[0]!==e.commitSha||t[1]!==e.cwd||t[2]!==e.environmentId||t[3]!==e.pullRequestNumber||t[4]!==n||t[5]!==r?(i={environmentId:e.environmentId,cwd:e.cwd,pullRequestNumber:e.pullRequestNumber,branch:n,commitSha:e.commitSha,limit:20,enabled:r},t[0]=e.commitSha,t[1]=e.cwd,t[2]=e.environmentId,t[3]=e.pullRequestNumber,t[4]=n,t[5]=r,t[6]=i):i=t[6],Ka(i,e.resolveIntervalMs)}function A1(e){return Di(e)}function j1(e){let t=0,n=0,r=0,i=!1;if(e.changes)t=e.changes.insertions,n=e.changes.deletions,r=e.changes.files.length,i=r>0||t>0||n>0;else for(let r of e.overviewItems??[])typeof r.additions==`number`&&(t+=r.additions,i=!0),typeof r.deletions==`number`&&(n+=r.deletions,i=!0);let a=e.pullRequest?.latestRuns??[],o=0,s=0,c=0;for(let e of a)e.tone===`success`?o+=1:e.tone===`failure`||e.tone===`error`?s+=1:e.tone===`running`&&(c+=1);let l=e.activePlan?.steps??[],u=e.subagents??[],d=l.filter(e=>e.status===`completed`||e.status===`inProgress`).length;return{additions:t,deletions:n,hasDiff:i,fileCount:r,checksTotal:a.length,checksPassed:o,checksFailed:s,checksRunning:c,planTotal:l.length,planDone:d,agentsTotal:u.length,agentsRunning:u.filter(e=>e.status===`running`).length,refName:e.changes?.refName??null,aheadCount:e.changes?.aheadCount??0,behindCount:e.changes?.behindCount??0}}function M1(e){return!e.activePlan&&!e.activeProposedPlan?.planMarkdown&&(e.subagents?.length??0)===0&&(e.overviewItems?.length??0)===0&&(e.changes?.files.length??0)===0&&!e.pullRequest&&!e.sourceControlActions&&!e.branchControl}function N1(e){return e?.find(e=>e.icon===`changes`)}function P1(e){return e?.find(e=>e.icon===`environment`)}function F1(e){return e.planTotal===0?0:Math.round(e.planDone/e.planTotal*100)}var I1={success:`bg-success/11 text-success-foreground`,warning:`bg-warning/12 text-warning-foreground`,error:`bg-destructive/11 text-destructive-foreground`,info:`bg-info/11 text-info-foreground`,neutral:`bg-secondary text-muted-foreground`,primary:`bg-primary/12 text-primary dark:text-info-foreground`};function L1(e){let t=(0,J.c)(5),{tone:n,children:r}=e,i=I1[n],a;t[0]===i?a=t[1]:(a=G(`inline-flex h-[19px] shrink-0 items-center gap-1 rounded-md px-1.5 text-[11.5px] leading-none font-medium [&_svg]:size-[11px]`,i),t[0]=i,t[1]=a);let o;return t[2]!==r||t[3]!==a?(o=(0,Y.jsx)(`span`,{className:a,children:r}),t[2]=r,t[3]=a,t[4]=o):o=t[4],o}function R1(e){let t=(0,J.c)(10),{additions:n,deletions:r,className:i}=e,a;t[0]===i?a=t[1]:(a=G(`flex items-center gap-1.5 font-mono text-[12px] font-semibold tabular-nums`,i),t[0]=i,t[1]=a);let o;t[2]===n?o=t[3]:(o=(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,n]}),t[2]=n,t[3]=o);let s;t[4]===r?s=t[5]:(s=(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`−`,r]}),t[4]=r,t[5]=s);let c;return t[6]!==a||t[7]!==o||t[8]!==s?(c=(0,Y.jsxs)(`span`,{className:a,children:[o,s]}),t[6]=a,t[7]=o,t[8]=s,t[9]=c):c=t[9],c}var z1={success:`bg-success`,failure:`bg-destructive`,error:`bg-destructive`,running:`bg-sky-400 animate-status-pulse`,pending:`bg-warning/55`};function B1(e){let t=(0,J.c)(4),{runs:n}=e;if(n.length===0)return null;let r;t[0]===n?r=t[1]:(r=n.map(V1),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`flex items-center gap-[3px]`,children:r}),t[2]=r,t[3]=i),i}function V1(e){return(0,Y.jsx)(`span`,{className:G(`size-[7px] rounded-full bg-[color:var(--border-strong)]`,z1[e.tone])},e.id)}function H1(e){let t=(0,J.c)(7),{value:n,className:r}=e,i;t[0]===r?i=t[1]:(i=G(`inline-block h-[5px] w-[54px] overflow-hidden rounded-[3px] bg-muted`,r),t[0]=r,t[1]=i);let a=`${Math.max(0,Math.min(100,n))}%`,o;t[2]===a?o=t[3]:(o=(0,Y.jsx)(`span`,{className:`block h-full rounded-[3px] bg-primary`,style:{width:a}}),t[2]=a,t[3]=o);let s;return t[4]!==i||t[5]!==o?(s=(0,Y.jsx)(`span`,{className:i,children:o}),t[4]=i,t[5]=o,t[6]=s):s=t[6],s}function U1(e){let t=(0,J.c)(4),{subagents:n}=e;if(n.length===0)return null;let r;t[0]===n?r=t[1]:(r=n.slice(0,3).map(W1),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`flex items-center`,children:r}),t[2]=r,t[3]=i),i}function W1(e,t){return(0,Y.jsx)(`span`,{className:G(`grid size-5 place-items-center rounded-full border-2 border-card bg-secondary/60`,t>0&&`-ml-[7px]`),children:(0,Y.jsx)(NO,{name:e.avatarKey??e.key,className:`size-3`})},e.key)}function G1(e){let t=(0,J.c)(5),{className:n,title:r}=e,i;t[0]===n?i=t[1]:(i=G(`size-2 shrink-0 rounded-full`,n),t[0]=n,t[1]=i);let a;return t[2]!==i||t[3]!==r?(a=(0,Y.jsx)(`span`,{className:i,title:r}),t[2]=i,t[3]=r,t[4]=a):a=t[4],a}function K1(e){let t=(0,J.c)(10),{label:n,value:r,monoValue:i}=e,a=i===void 0||i,o;t[0]===n?o=t[1]:(o=(0,Y.jsx)(`span`,{className:`flex items-center gap-1.5 text-muted-foreground [&_svg]:size-3.5`,children:n}),t[0]=n,t[1]=o);let s=a&&`font-mono`,c;t[2]===s?c=t[3]:(c=G(`text-[12px] font-medium tabular-nums`,s),t[2]=s,t[3]=c);let l;t[4]!==c||t[5]!==r?(l=(0,Y.jsx)(`span`,{className:c,children:r}),t[4]=c,t[5]=r,t[6]=l):l=t[6];let u;return t[7]!==o||t[8]!==l?(u=(0,Y.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-1.5 text-[12.5px]`,children:[o,l]}),t[7]=o,t[8]=l,t[9]=u):u=t[9],u}function q1(e){let t=(0,J.c)(4),{detail:n}=e,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(ar,{className:`mt-px size-3.5 shrink-0`}),i=(0,Y.jsx)(`span`,{className:`font-semibold`,children:`Merge conflict`}),t[0]=r,t[1]=i):(r=t[0],i=t[1]);let a=n?` · ${n}`:` — rebase onto the base branch to resolve before merge.`,o;return t[2]===a?o=t[3]:(o=(0,Y.jsxs)(`div`,{className:`flex gap-2 rounded-[10px] border border-destructive/24 bg-destructive/[0.09] px-[11px] py-[9px] text-[12.5px] text-destructive-foreground`,children:[r,(0,Y.jsxs)(`span`,{children:[i,a]})]}),t[2]=a,t[3]=o),o}function J1(e){let t=(0,J.c)(42),{icon:n,title:r,subtitle:i,summary:a,externalLink:o,defaultOpen:s,children:c}=e,l=s!==void 0&&s,u=c!=null&&c!==!1,[d,f]=(0,q.useState)(l),p=u&&d,m=u&&`transition-colors hover:bg-accent`,h=o?`pr-14`:u?`pr-8`:`pr-2.5`,g;t[0]!==m||t[1]!==h?(g=G(`relative grid min-h-10 w-full grid-cols-[20px_minmax(0,1fr)_auto] items-center gap-[7px] py-1 pl-2.5 text-left`,m,h),t[0]=m,t[1]=h,t[2]=g):g=t[2];let _=g,v=p&&`bg-primary/12 text-primary dark:text-info-foreground`,y;t[3]===v?y=t[4]:(y=G(`grid size-5 place-items-center rounded-md bg-secondary text-muted-foreground transition-colors [&_svg]:size-3`,v),t[3]=v,t[4]=y);let b;t[5]!==n||t[6]!==y?(b=(0,Y.jsx)(`span`,{className:y,children:n}),t[5]=n,t[6]=y,t[7]=b):b=t[7];let x;t[8]===r?x=t[9]:(x=(0,Y.jsx)(`span`,{className:`block truncate text-[11.5px] leading-[14px] font-semibold`,children:r}),t[8]=r,t[9]=x);let S;t[10]===i?S=t[11]:(S=i?(0,Y.jsx)(`span`,{className:`mt-px block truncate text-[10px] leading-3 text-muted-foreground`,children:i}):null,t[10]=i,t[11]=S);let C;t[12]!==x||t[13]!==S?(C=(0,Y.jsxs)(`span`,{className:`min-w-0`,children:[x,S]}),t[12]=x,t[13]=S,t[14]=C):C=t[14];let w;t[15]===a?w=t[16]:(w=a?(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center justify-self-end gap-1.5`,children:a}):null,t[15]=a,t[16]=w);let T;t[17]!==u||t[18]!==p?(T=u?(0,Y.jsx)(Ms,{className:G(`absolute top-1/2 right-2.5 size-3 -translate-y-1/2 text-muted-foreground transition-transform`,p&&`rotate-90`)}):null,t[17]=u,t[18]=p,t[19]=T):T=t[19];let E;t[20]!==C||t[21]!==w||t[22]!==T||t[23]!==b?(E=(0,Y.jsxs)(Y.Fragment,{children:[b,C,w,T]}),t[20]=C,t[21]=w,t[22]=T,t[23]=b,t[24]=E):E=t[24];let D=E,O=u?`true`:`false`,k;t[25]!==u||t[26]!==_||t[27]!==D||t[28]!==p?(k=u?(0,Y.jsx)(`button`,{type:`button`,onClick:()=>f(Y1),"aria-expanded":p,className:_,children:D}):(0,Y.jsx)(`div`,{className:_,children:D}),t[25]=u,t[26]=_,t[27]=D,t[28]=p,t[29]=k):k=t[29];let A;t[30]===o?A=t[31]:(A=o?(0,Y.jsx)(`a`,{href:o.href,target:`_blank`,rel:`noreferrer`,"aria-label":o.ariaLabel,title:o.ariaLabel,className:`absolute top-1/2 right-7 z-10 grid size-7 -translate-y-1/2 place-items-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground focus-visible:outline-2 focus-visible:outline-ring`,children:(0,Y.jsx)(Aa,{className:`size-3`})}):null,t[30]=o,t[31]=A);let j;t[32]!==O||t[33]!==k||t[34]!==A?(j=(0,Y.jsxs)(`div`,{className:`relative min-h-10`,"data-slot":`overview-section-lane-header`,"data-expandable":O,children:[k,A]}),t[32]=O,t[33]=k,t[34]=A,t[35]=j):j=t[35];let M;t[36]!==c||t[37]!==p?(M=p?(0,Y.jsx)(`div`,{className:`pb-1.5`,children:c}):null,t[36]=c,t[37]=p,t[38]=M):M=t[38];let N;return t[39]!==j||t[40]!==M?(N=(0,Y.jsxs)(`div`,{className:`border-b border-border last:border-b-0`,children:[j,M]}),t[39]=j,t[40]=M,t[41]=N):N=t[41],N}function Y1(e){return!e}function X1(e){let t=(0,J.c)(28),{label:n,detail:r,files:i,onOpen:a}=e,o;t[0]===i?o=t[1]:(o=i.reduce(Q1,0),t[0]=i,t[1]=o);let s=o,c;t[2]===i?c=t[3]:(c=i.reduce(Z1,0),t[2]=i,t[3]=c);let l=c,u;t[4]===n?u=t[5]:(u=(0,Y.jsx)(`span`,{className:`font-medium text-foreground/90`,children:n}),t[4]=n,t[5]=u);let d;t[6]===r?d=t[7]:(d=r?(0,Y.jsx)(`span`,{className:`truncate text-[11px] text-muted-foreground`,children:r}):null,t[6]=r,t[7]=d);let f;t[8]!==u||t[9]!==d?(f=(0,Y.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[u,d]}),t[8]=u,t[9]=d,t[10]=f):f=t[10];let p=i.length===1?`file`:`files`,m;t[11]!==i.length||t[12]!==p?(m=(0,Y.jsxs)(`span`,{className:`text-[11px] text-muted-foreground tabular-nums`,children:[i.length,` `,p]}),t[11]=i.length,t[12]=p,t[13]=m):m=t[13];let h;t[14]!==l||t[15]!==s?(h=(0,Y.jsx)(R1,{additions:s,deletions:l,className:`text-[11px]`}),t[14]=l,t[15]=s,t[16]=h):h=t[16];let g;t[17]!==m||t[18]!==h?(g=(0,Y.jsxs)(`span`,{className:`flex shrink-0 items-center gap-2.5`,children:[m,h]}),t[17]=m,t[18]=h,t[19]=g):g=t[19];let _;t[20]!==f||t[21]!==g?(_=(0,Y.jsxs)(Y.Fragment,{children:[f,g]}),t[20]=f,t[21]=g,t[22]=_):_=t[22];let v=_;if(a){let e;return t[23]!==v||t[24]!==a?(e=(0,Y.jsx)(`button`,{type:`button`,onClick:a,className:`flex w-full items-center justify-between gap-2 px-3 py-2 text-left text-[12.5px] transition-colors hover:bg-accent`,children:v}),t[23]=v,t[24]=a,t[25]=e):e=t[25],e}let y;return t[26]===v?y=t[27]:(y=(0,Y.jsx)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-2 text-[12.5px]`,children:v}),t[26]=v,t[27]=y),y}function Z1(e,t){return e+t.deletions}function Q1(e,t){return e+t.insertions}function $1(e){let t=(0,J.c)(32),{changes:n,overviewItems:r,onOpenReview:i,pullRequestNumber:a}=e,o;t[0]===r?o=t[1]:(o=N1(r),t[0]=r,t[1]=o);let s=o,c;t[2]===n?.files?c=t[3]:(c=n?.files??[],t[2]=n?.files,t[3]=c);let l=c;if(l.length>0){let e;t[4]===l?e=t[5]:(e=l.filter(t0),t[4]=l,t[5]=e);let n=e,r;t[6]===l?r=t[7]:(r=l.filter(e0),t[6]=l,t[7]=r);let o=r,s;if(t[8]!==n||t[9]!==o||t[10]!==a){if(s=[],n.length>0){let e;t[12]===a?e=t[13]:(e=a?{detail:`· PR #${a}`}:{},t[12]=a,t[13]=e);let r;t[14]!==n||t[15]!==e?(r={key:`committed`,label:`Committed`,...e,files:n},t[14]=n,t[15]=e,t[16]=r):r=t[16],s.push(r)}if(o.length>0){let e;t[17]===o?e=t[18]:(e={key:`local`,label:`Uncommitted`,files:o},t[17]=o,t[18]=e),s.push(e)}t[8]=n,t[9]=o,t[10]=a,t[11]=s}else s=t[11];let c;return t[19]!==s||t[20]!==i?(c=(0,Y.jsx)(`div`,{children:s.map(e=>(0,Y.jsx)(X1,{label:e.label,detail:e.detail,files:e.files,onOpen:i},e.key))}),t[19]=s,t[20]=i,t[21]=c):c=t[21],c}if(s){let e=!i,n;t[22]===s.value?n=t[23]:(n=(0,Y.jsx)(`span`,{className:`truncate text-foreground/85`,children:s.value}),t[22]=s.value,t[23]=n);let r;t[24]===s.detail?r=t[25]:(r=s.detail?(0,Y.jsx)(`span`,{className:`shrink-0 text-[11px] text-muted-foreground`,children:s.detail}):null,t[24]=s.detail,t[25]=r);let a;return t[26]!==i||t[27]!==e||t[28]!==n||t[29]!==r?(a=(0,Y.jsxs)(`button`,{type:`button`,onClick:i,disabled:e,className:`flex w-full items-center justify-between gap-2 px-3 py-1.5 text-left text-[12.5px] transition-colors hover:bg-accent disabled:hover:bg-transparent`,children:[n,r]}),t[26]=i,t[27]=e,t[28]=n,t[29]=r,t[30]=a):a=t[30],a}let u;return t[31]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Y.jsx)(`p`,{className:`px-3 py-1.5 text-[12px] text-muted-foreground`,children:`No file changes.`}),t[31]=u):u=t[31],u}function e0(e){return e.category!==`committed`}function t0(e){return e.category===`committed`}function n0(e){let t=(0,J.c)(3),{status:n}=e;if(n===`completed`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`span`,{className:`flex size-[17px] shrink-0 items-center justify-center rounded-full bg-success text-white`,children:(0,Y.jsx)(Yn,{className:`size-3`})}),t[0]=e):e=t[0],e}if(n===`inProgress`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(`span`,{className:`flex size-[17px] shrink-0 items-center justify-center rounded-full border-[1.5px] border-primary`,children:(0,Y.jsx)(`span`,{className:`size-[7px] animate-status-pulse rounded-full bg-primary`})}),t[1]=e):e=t[1],e}let r;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(`span`,{className:`size-[17px] shrink-0 rounded-full border-[1.5px] border-[color:var(--border-strong)]`}),t[2]=r):r=t[2],r}function r0(e){let t=(0,J.c)(2),{activePlan:n}=e;if(!n?.explanation)return null;let r;return t[0]===n.explanation?r=t[1]:(r=(0,Y.jsx)(`p`,{className:`px-3 pt-1 pb-0.5 text-[12.5px] leading-relaxed text-muted-foreground`,children:n.explanation}),t[0]=n.explanation,t[1]=r),r}function i0(e){let t=(0,J.c)(4),{activePlan:n}=e;if(!n||n.steps.length===0)return null;let r;t[0]===n.steps?r=t[1]:(r=n.steps.map(a0),t[0]=n.steps,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(`div`,{children:r}),t[2]=r,t[3]=i),i}function a0(e){return(0,Y.jsxs)(`div`,{className:`flex items-start gap-2.5 px-3 py-[7px] text-[13px]`,children:[(0,Y.jsx)(`span`,{className:`mt-px`,children:(0,Y.jsx)(n0,{status:e.status})}),(0,Y.jsx)(`span`,{className:G(`leading-snug`,e.status===`inProgress`?`text-foreground`:`text-muted-foreground`),children:e.step})]},`${e.status}:${e.step}`)}function o0(e){let t=(0,J.c)(44),{activeProposedPlan:n,environmentId:r,markdownCwd:i,workspaceRoot:a}=e,[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(!1),{copyToClipboard:u,isCopied:d}=Pt(),f=n?.planMarkdown??null,p;t[0]===f?p=t[1]:(p=f?Rc(f):null,t[0]=f,t[1]=p);let m=p,h;t[2]===f?h=t[3]:(h=f?Ec(f):null,t[2]=f,t[3]=h);let g=h,_;t[4]!==u||t[5]!==f?(_=()=>{f&&u(f)},t[4]=u,t[5]=f,t[6]=_):_=t[6];let v=_,y;t[7]===f?y=t[8]:(y=()=>{if(!f)return;let e=Nc(f);Ac(e,Dc(f))},t[7]=f,t[8]=y);let b=y,x;t[9]!==r||t[10]!==f||t[11]!==a?(x=()=>{let e=Dr(r);if(!e||!a||!f)return;let t=Nc(f);l(!0),e.projects.writeFile({cwd:a,relativePath:t,contents:Dc(f)}).then(l0).catch(c0).then(()=>l(!1),()=>l(!1))},t[9]=r,t[10]=f,t[11]=a,t[12]=x):x=t[12];let S=x;if(!f)return null;let C;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>s(s0),t[13]=C):C=t[13];let w;t[14]===o?w=t[15]:(w=o?(0,Y.jsx)(fr,{className:`size-3 shrink-0 text-muted-foreground`}):(0,Y.jsx)(Ms,{className:`size-3 shrink-0 text-muted-foreground`}),t[14]=o,t[15]=w);let T=g??`Full plan`,E;t[16]===T?E=t[17]:(E=(0,Y.jsx)(`span`,{className:`truncate text-[10px] font-semibold tracking-widest text-muted-foreground uppercase group-hover:text-foreground/70`,children:T}),t[16]=T,t[17]=E);let D;t[18]!==w||t[19]!==E?(D=(0,Y.jsxs)(`button`,{type:`button`,className:`group flex min-w-0 flex-1 items-center gap-1.5 text-left`,onClick:C,children:[w,E]}),t[18]=w,t[19]=E,t[20]=D):D=t[20];let O;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,Y.jsx)(qi,{render:(0,Y.jsx)(W,{size:`icon-xs`,variant:`ghost`,className:`shrink-0 text-muted-foreground hover:text-foreground/70`,"aria-label":`Plan actions`}),children:(0,Y.jsx)(as,{className:`size-3.5`})}),t[21]=O):O=t[21];let k=d?`Copied!`:`Copy to clipboard`,A;t[22]!==v||t[23]!==k?(A=(0,Y.jsx)(Fi,{onClick:v,children:k}),t[22]=v,t[23]=k,t[24]=A):A=t[24];let j;t[25]===b?j=t[26]:(j=(0,Y.jsx)(Fi,{onClick:b,children:`Download as markdown`}),t[25]=b,t[26]=j);let M=!a||c,N;t[27]!==S||t[28]!==M?(N=(0,Y.jsx)(Fi,{onClick:S,disabled:M,children:`Save to workspace`}),t[27]=S,t[28]=M,t[29]=N):N=t[29];let P;t[30]!==A||t[31]!==j||t[32]!==N?(P=(0,Y.jsxs)(ka,{children:[O,(0,Y.jsxs)(_i,{align:`end`,children:[A,j,N]})]}),t[30]=A,t[31]=j,t[32]=N,t[33]=P):P=t[33];let F;t[34]!==D||t[35]!==P?(F=(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-2`,children:[D,P]}),t[34]=D,t[35]=P,t[36]=F):F=t[36];let I;t[37]!==m||t[38]!==i||t[39]!==o?(I=o?(0,Y.jsx)(`div`,{className:`rounded-lg border border-border bg-background/50 p-3`,children:(0,Y.jsx)(xO,{text:m??``,cwd:i,isStreaming:!1})}):null,t[37]=m,t[38]=i,t[39]=o,t[40]=I):I=t[40];let L;return t[41]!==F||t[42]!==I?(L=(0,Y.jsxs)(`div`,{className:`space-y-2 px-3 pt-1 pb-1`,children:[F,I]}),t[41]=F,t[42]=I,t[43]=L):L=t[43],L}function s0(e){return!e}function c0(e){Ve.add(fc({type:`error`,title:`Could not save plan`,description:e instanceof Error?e.message:`An error occurred.`}))}function l0(e){Ve.add({type:`success`,title:`Plan saved`,description:e.relativePath})}function u0(e){return e===`running`?`Working`:e===`failed`?`Needs review`:e===`finished`?`Finished`:e===`interrupted`?`Stopped`:`Idle`}var d0={running:`bg-sky-400 animate-status-pulse shadow-[0_0_0_3px_color-mix(in_srgb,var(--sky)_22%,transparent)]`,finished:`bg-success`,failed:`bg-destructive`,interrupted:`bg-muted-foreground/60`,idle:`bg-muted-foreground/40`};function f0(e){let t=(0,J.c)(9),{subagents:n,onOpenSubagent:r}=e,i;t[0]===n?i=t[1]:(i=n===void 0?[]:n,t[0]=n,t[1]=i);let a=i;if(a.length===0)return null;let o;if(t[2]!==r||t[3]!==a){let e;t[5]===r?e=t[6]:(e=e=>{let t=e.model??e.tool??e.role??null,n=e.updatedAt||e.startedAt;return(0,Y.jsxs)(`button`,{type:`button`,className:`flex w-full min-w-0 items-center gap-2.5 px-3 py-2 text-left transition-colors hover:bg-accent`,onClick:()=>r?.(e),"aria-label":`${e.name} — ${u0(e.status)}`,title:e.detail??void 0,children:[(0,Y.jsx)(`span`,{className:`grid size-[26px] shrink-0 place-items-center rounded-lg border border-border bg-secondary/40`,children:(0,Y.jsx)(NO,{name:e.avatarKey??e.key,className:`size-[18px]`})}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,Y.jsx)(`span`,{className:`truncate text-[13px] font-medium`,children:e.name}),(0,Y.jsx)(G1,{className:d0[e.status],title:u0(e.status)})]}),t?(0,Y.jsx)(`span`,{className:`block truncate text-[11.5px] text-muted-foreground`,children:t}):null]}),n?(0,Y.jsx)(`span`,{className:`shrink-0 font-mono text-[11px] text-muted-foreground tabular-nums`,children:Va(n)}):null]},e.key)},t[5]=r,t[6]=e),o=a.map(e),t[2]=r,t[3]=a,t[4]=o}else o=t[4];let s;return t[7]===o?s=t[8]:(s=(0,Y.jsx)(`div`,{children:o}),t[7]=o,t[8]=s),s}function p0(e){return e===`success`?(0,Y.jsx)(Yn,{className:`size-3.5 text-success-foreground`}):e===`failure`||e===`error`?(0,Y.jsx)(Ut,{className:`size-3.5 text-destructive-foreground`}):e===`running`?(0,Y.jsx)(fs,{className:`size-3.5 animate-spin text-info-foreground`}):e===`pending`?(0,Y.jsx)(Yo,{className:`size-3.5 text-muted-foreground`}):(0,Y.jsx)(`span`,{className:`size-3 rounded-full border border-muted-foreground/35`})}function m0(e){let t=(0,J.c)(17),{run:n}=e,r;t[0]===n.tone?r=t[1]:(r=p0(n.tone),t[0]=n.tone,t[1]=r);let i;t[2]===r?i=t[3]:(i=(0,Y.jsx)(`span`,{className:`grid w-4 shrink-0 place-items-center`,children:r}),t[2]=r,t[3]=i);let a;t[4]===n.name?a=t[5]:(a=(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-medium`,children:n.name}),t[4]=n.name,t[5]=a);let o;t[6]===n.detail?o=t[7]:(o=n.detail?(0,Y.jsx)(`span`,{className:`shrink-0 text-[11.5px] text-muted-foreground`,children:n.detail}):null,t[6]=n.detail,t[7]=o);let s;t[8]!==i||t[9]!==a||t[10]!==o?(s=(0,Y.jsxs)(Y.Fragment,{children:[i,a,o]}),t[8]=i,t[9]=a,t[10]=o,t[11]=s):s=t[11];let c=s;if(n.url){let e;return t[12]!==c||t[13]!==n.url?(e=(0,Y.jsx)(`a`,{href:n.url,target:`_blank`,rel:`noreferrer`,className:`flex min-w-0 items-center gap-2.5 px-3 py-1.5 text-[12.5px] transition-colors hover:bg-accent`,children:c}),t[12]=c,t[13]=n.url,t[14]=e):e=t[14],e}let l;return t[15]===c?l=t[16]:(l=(0,Y.jsx)(`div`,{className:`flex min-w-0 items-center gap-2.5 px-3 py-1.5 text-[12.5px]`,children:c}),t[15]=c,t[16]=l),l}function h0(e){let t=(0,J.c)(11),{pullRequest:n}=e,r=n.checksError,i;t[0]===r?i=t[1]:(i=r?(0,Y.jsx)(`p`,{className:G(`px-3 py-1.5 text-[11.5px]`,r.kind===`terminal`?`text-destructive-foreground`:`text-muted-foreground`),children:r.message}):null,t[0]=r,t[1]=i);let a;t[2]===n.latestRuns?a=t[3]:(a=n.latestRuns.map(g0),t[2]=n.latestRuns,t[3]=a);let o;t[4]!==r||t[5]!==n.latestRuns.length?(o=n.latestRuns.length===0&&!r?(0,Y.jsx)(`p`,{className:`px-3 py-1.5 text-[12px] text-muted-foreground`,children:`No checks reported.`}):null,t[4]=r,t[5]=n.latestRuns.length,t[6]=o):o=t[6];let s;return t[7]!==i||t[8]!==a||t[9]!==o?(s=(0,Y.jsxs)(`div`,{children:[i,a,o]}),t[7]=i,t[8]=a,t[9]=o,t[10]=s):s=t[10],s}function g0(e){return(0,Y.jsx)(m0,{run:e},e.id)}function _0(e,t){let n=[];return typeof e==`number`&&n.push(`${e} approved`),typeof t==`number`&&n.push(`${t} requested`),n.length>0?n.join(` · `):null}function v0(e){let t=(0,J.c)(6),{pullRequest:n}=e,r;t[0]!==n.reviewsApproved||t[1]!==n.reviewsRequested?(r=_0(n.reviewsApproved,n.reviewsRequested),t[0]=n.reviewsApproved,t[1]=n.reviewsRequested,t[2]=r):r=t[2];let i=r;if(!i)return null;let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(oo,{}),` Reviews`]}),t[3]=a):a=t[3];let o;return t[4]===i?o=t[5]:(o=(0,Y.jsx)(K1,{label:a,value:i,monoValue:!1}),t[4]=i,t[5]=o),o}function y0(e){let t=(0,J.c)(13),{pullRequest:n,showTitle:r,showChecks:i,showReviews:a}=e,o=r===void 0||r,s=i===void 0||i,c=a===void 0||a,l;t[0]!==n||t[1]!==o?(l=o||n.hasMergeConflicts?(0,Y.jsxs)(`div`,{className:`space-y-2 px-3 pt-0.5 pb-[9px]`,children:[o?(0,Y.jsx)(`p`,{className:`truncate text-[11.5px] text-muted-foreground`,children:n.title}):null,n.hasMergeConflicts?(0,Y.jsx)(q1,{}):null]}):null,t[0]=n,t[1]=o,t[2]=l):l=t[2];let u;t[3]!==n||t[4]!==s?(u=s?(0,Y.jsx)(h0,{pullRequest:n}):null,t[3]=n,t[4]=s,t[5]=u):u=t[5];let d;t[6]!==n||t[7]!==c?(d=c?(0,Y.jsx)(v0,{pullRequest:n}):null,t[6]=n,t[7]=c,t[8]=d):d=t[8];let f;return t[9]!==l||t[10]!==u||t[11]!==d?(f=(0,Y.jsxs)(`div`,{children:[l,u,d]}),t[9]=l,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function b0(){let e=(0,J.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center px-3 py-12 text-center`,children:[(0,Y.jsx)(`p`,{className:`text-[13px] text-muted-foreground/40`,children:`No active plan yet.`}),(0,Y.jsx)(`p`,{className:`mt-1 text-[11px] text-muted-foreground/30`,children:`Plans and subagents will appear here as the thread runs.`})]}),e[0]=t):t=e[0],t}var x0={changes:(0,Y.jsx)(Ui,{}),plan:(0,Y.jsx)(Ls,{}),agents:(0,Y.jsx)(Jo,{}),pr:(0,Y.jsx)(Is,{}),checks:(0,Y.jsx)(Is,{}),env:(0,Y.jsx)(ha,{})};function S0(e){return!!(e.activePlan&&(e.activePlan.steps.length>0||e.activePlan.explanation)||e.activeProposedPlan?.planMarkdown)}function C0(e,t){return`${e} ${t}${e===1?``:`s`}`}function w0(e){return e?(0,Y.jsx)(L1,{tone:`warning`,children:e}):(0,Y.jsxs)(L1,{tone:`success`,children:[(0,Y.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`}),` ready`]})}function T0(e,t){let n=t?.trim();if(n)return n.toLocaleLowerCase()===e.trim().toLocaleLowerCase()?void 0:n}function E0(e){let t=(0,J.c)(33),n,r,i,a,o,s;if(t[0]!==e){let c=j1(e),l;t[7]===e.overviewItems?l=t[8]:(l=N1(e.overviewItems),t[7]=e.overviewItems,t[8]=l);let u=l,d=P1(e.overviewItems),f,p,m;if(t[9]!==e.activePlan?.explanation||t[10]!==e.activePlan?.steps||t[11]!==e.subagents){p=e.subagents??[];let n;t[15]!==e.activePlan?.explanation||t[16]!==e.activePlan?.steps?(n=e.activePlan?.steps.find(O0)?.step??e.activePlan?.explanation??void 0,t[15]=e.activePlan?.explanation,t[16]=e.activePlan?.steps,t[17]=n):n=t[17],f=n,m=p.slice(0,2).map(D0).join(`, `),t[9]=e.activePlan?.explanation,t[10]=e.activePlan?.steps,t[11]=e.subagents,t[12]=f,t[13]=p,t[14]=m}else f=t[12],p=t[13],m=t[14];let h=m,g=c.fileCount>0?C0(c.fileCount,`file`):u?.value,_=d?T0(d.value,d.detail):void 0;n=c.fileCount>0||u?(0,Y.jsx)(J1,{icon:x0.changes,title:`Changes`,summary:(0,Y.jsxs)(Y.Fragment,{children:[g?(0,Y.jsx)(`span`,{className:G(`font-mono text-[10px] text-muted-foreground tabular-nums`,c.hasDiff&&`border-r border-border pr-1.5`),children:g}):null,c.hasDiff?(0,Y.jsx)(R1,{additions:c.additions,deletions:c.deletions,className:`text-[10px]`}):null]}),children:(0,Y.jsx)($1,{changes:e.changes,overviewItems:e.overviewItems,onOpenReview:e.onOpenReview,pullRequestNumber:e.pullRequest?.number})}):null,r=e.pullRequest?(0,Y.jsx)(J1,{icon:x0.checks,title:`Checks`,subtitle:e.pullRequest.number==null?c.refName?`CI on ${c.refName}`:`CI`:`CI on PR #${e.pullRequest.number}`,summary:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(B1,{runs:e.pullRequest.latestRuns}),c.checksTotal>0?(0,Y.jsxs)(`span`,{className:`font-mono text-[11px] text-muted-foreground tabular-nums`,children:[c.checksPassed,`/`,c.checksTotal]}):null]}),children:(0,Y.jsx)(h0,{pullRequest:e.pullRequest})}):null,i=S0(e)?(0,Y.jsxs)(J1,{icon:x0.plan,title:`Plan`,subtitle:f,summary:c.planTotal>0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(H1,{value:F1(c)}),(0,Y.jsxs)(`span`,{className:`font-mono text-[11px] text-muted-foreground tabular-nums`,children:[c.planDone,`/`,c.planTotal]})]}):void 0,children:[(0,Y.jsx)(r0,{activePlan:e.activePlan}),(0,Y.jsx)(i0,{activePlan:e.activePlan}),(0,Y.jsx)(o0,{activeProposedPlan:e.activeProposedPlan,environmentId:e.environmentId,markdownCwd:e.markdownCwd,workspaceRoot:e.workspaceRoot})]}):null,t[18]!==h||t[19]!==e.onOpenSubagent||t[20]!==e.subagents||t[21]!==p||t[22]!==c?(a=p.length>0?(0,Y.jsx)(J1,{icon:x0.agents,title:`Subagents`,subtitle:h?`${h}${p.length>2?`…`:``}`:void 0,summary:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(U1,{subagents:p}),(0,Y.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:c.agentsRunning>0?`${c.agentsRunning} running`:`${c.agentsTotal} total`})]}),children:(0,Y.jsx)(f0,{subagents:e.subagents,onOpenSubagent:e.onOpenSubagent})}):null,t[18]=h,t[19]=e.onOpenSubagent,t[20]=e.subagents,t[21]=p,t[22]=c,t[23]=a):a=t[23],t[24]===e.pullRequest?o=t[25]:(o=e.pullRequest&&e.pullRequest.number!=null?(0,Y.jsx)(J1,{icon:x0.pr,title:`Pull Request #${e.pullRequest.number}`,subtitle:e.pullRequest.title,summary:(0,Y.jsxs)(Y.Fragment,{children:[e.pullRequest.state?(0,Y.jsx)(io,{kind:fa(e.pullRequest.state,e.pullRequest.isDraft)}):null,e.pullRequest.hasMergeConflicts?(0,Y.jsx)(L1,{tone:`error`,children:`conflict`}):null]}),externalLink:e.pullRequest.url?{href:e.pullRequest.url,ariaLabel:`Open pull request #${e.pullRequest.number} in a new tab`}:void 0,children:(0,Y.jsx)(y0,{pullRequest:e.pullRequest,showTitle:!1,showChecks:!1,showReviews:!0})}):null,t[24]=e.pullRequest,t[25]=o),s=d?(0,Y.jsx)(J1,{icon:x0.env,title:`Environment`,subtitle:d.value,summary:w0(_)}):null,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a,t[5]=o,t[6]=s}else n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6];let c;return t[26]!==n||t[27]!==r||t[28]!==i||t[29]!==a||t[30]!==o||t[31]!==s?(c=(0,Y.jsxs)(`div`,{children:[n,r,i,a,o,s]}),t[26]=n,t[27]=r,t[28]=i,t[29]=a,t[30]=o,t[31]=s,t[32]=c):c=t[32],c}function D0(e){return e.name}function O0(e){return e.status===`inProgress`}function k0(e){let t=(0,J.c)(10),{layoutProps:n}=e,r=!!n.pullRequest?.hasMergeConflicts,i=!!n.onRefreshPullRequest;if(!r&&!i)return null;let a=!!n.pullRequest?.checksError,o;t[0]===r?o=t[1]:(o=r?(0,Y.jsxs)(L1,{tone:`error`,children:[(0,Y.jsx)(ar,{}),` conflict`]}):null,t[0]=r,t[1]=o);let s;t[2]!==a||t[3]!==n.isRefreshingPullRequest||t[4]!==n.onRefreshPullRequest||t[5]!==i?(s=i?(0,Y.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`text-muted-foreground hover:text-foreground`,onClick:n.onRefreshPullRequest,disabled:n.isRefreshingPullRequest,"aria-label":a?`Retry loading source control (last refresh failed)`:`Refresh source control`,children:(0,Y.jsx)(Ta,{className:G(`size-3.5`,n.isRefreshingPullRequest&&`animate-spin`)})}),a&&!n.isRefreshingPullRequest?(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute -top-0.5 -right-0.5 size-2 rounded-full bg-warning ring-2 ring-card`}):null]}):null,t[2]=a,t[3]=n.isRefreshingPullRequest,t[4]=n.onRefreshPullRequest,t[5]=i,t[6]=s):s=t[6];let c;return t[7]!==o||t[8]!==s?(c=(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[o,s]}),t[7]=o,t[8]=s,t[9]=c):c=t[9],c}var A0=(0,q.memo)(function(e){let t=(0,J.c)(32),n,r,i,a;if(t[0]!==e){let{mode:o,onClose:s,...c}=e;i=s,n=c,r=o===void 0?`sidebar`:o,a=M1(n),t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a}else n=t[1],r=t[2],i=t[3],a=t[4];let o=a,s;t[5]===i?s=t[6]:(s=i?(0,Y.jsx)(W,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`shrink-0 text-muted-foreground hover:text-foreground`,onClick:i,"aria-label":`Close overview`,children:(0,Y.jsx)(Ut,{className:`size-3.5`})}):null,t[5]=i,t[6]=s);let c=s,l;t[7]!==o||t[8]!==n?(l=o?(0,Y.jsx)(b0,{}):(0,Y.jsx)(E0,{...n}),t[7]=o,t[8]=n,t[9]=l):l=t[9];let u=l,d=r===`sidebar`&&`my-3 mr-3 w-[340px] shrink-0 self-start overflow-hidden rounded-lg border border-border/70 bg-card/90 shadow-xl backdrop-blur supports-[backdrop-filter]:bg-card/75`,f=r===`sheet`&&`h-full w-full bg-card/90 backdrop-blur supports-[backdrop-filter]:bg-card/75`,p=r===`floating`&&`selection-glass-surface pointer-events-auto max-h-[min(72vh,42rem)] w-[min(360px,calc(100vw_-_1.5rem))] rounded-lg border`,m;t[10]!==d||t[11]!==f||t[12]!==p?(m=G(`flex min-h-0 flex-col`,d,f,p),t[10]=d,t[11]=f,t[12]=p,t[13]=m):m=t[13];let h;t[14]===r?h=t[15]:(h=r===`sidebar`?{maxHeight:`calc(100% - 1.5rem)`}:void 0,t[14]=r,t[15]=h);let g;t[16]!==c||t[17]!==o||t[18]!==n?(g=!o&&n.branchControl?(0,Y.jsxs)(`div`,{className:`flex min-h-9 min-w-0 shrink-0 items-center justify-between gap-1 border-b border-border/60 pr-2`,"data-slot":`overview-branch-header`,children:[(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center`,"data-slot":`overview-branch-control`,children:n.branchControl}),c?(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[(0,Y.jsx)(k0,{layoutProps:n}),c]}):(0,Y.jsx)(k0,{layoutProps:n})]}):c?(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-end border-b border-border/60 px-2 py-1.5`,children:c}):null,t[16]=c,t[17]=o,t[18]=n,t[19]=g):g=t[19];let _;t[20]!==u||t[21]!==r?(_=r===`sidebar`?(0,Y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overscroll-contain [scrollbar-gutter:stable]`,"data-slot":`scroll-area-viewport`,children:u}):(0,Y.jsx)(ol,{className:`min-h-0 flex-1`,scrollbarGutter:!0,children:u}),t[20]=u,t[21]=r,t[22]=_):_=t[22];let v;t[23]!==o||t[24]!==n?(v=!o&&n.sourceControlActions?(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center gap-2 border-t border-border/60 bg-card/50 px-3 py-2.5`,children:(0,Y.jsx)(`div`,{className:`flex min-w-0 flex-1`,children:n.sourceControlActions})}):null,t[23]=o,t[24]=n,t[25]=v):v=t[25];let y;return t[26]!==_||t[27]!==v||t[28]!==m||t[29]!==h||t[30]!==g?(y=(0,Y.jsxs)(`div`,{className:m,style:h,children:[g,_,v]}),t[26]=_,t[27]=v,t[28]=m,t[29]=h,t[30]=g,t[31]=y):y=t[31],y}),j0={added:`A`,add:`A`,a:`A`,new:`A`,modified:`M`,modify:`M`,changed:`M`,m:`M`,deleted:`D`,delete:`D`,removed:`D`,d:`D`,renamed:`R`,rename:`R`,r:`R`,copied:`C`,c:`C`,typechange:`T`,type:`T`,t:`T`};function M0(e){if(e)return j0[e.toLowerCase()]}function N0(e,t,n=[]){let r=new Set(t.map(e=>e.path)),i=new Map;for(let t of e)for(let e of t.files){let t=i.get(e.path),n=M0(e.kind)??t?.status;i.set(e.path,{path:e.path,insertions:(t?.insertions??0)+(e.additions??0),deletions:(t?.deletions??0)+(e.deletions??0),category:r.has(e.path)?`local`:`committed`,...n?{status:n}:{}})}for(let e of t)i.has(e.path)||i.set(e.path,{path:e.path,insertions:e.insertions,deletions:e.deletions,category:`local`});for(let e of n)i.has(e.path)||i.set(e.path,{path:e.path,insertions:e.insertions,deletions:e.deletions,category:`committed`});return[...i.values()]}function P0(e){return`${e} ${e===1?`file`:`files`}`}function F0(e){let t=0,n=0;for(let r of e)t+=r.insertions,n+=r.deletions;return{fileCount:e.length,insertions:t,deletions:n}}function I0(e){return{committed:F0(e.filter(e=>e.category===`committed`)),local:F0(e.filter(e=>e.category!==`committed`))}}function L0(e){let{committed:t,local:n}=e,r=t.insertions+n.insertions,i=t.deletions+n.deletions,a=t.fileCount>0,o=n.fileCount>0;return!a&&!o?{label:`Changes`,value:`No changes`,additions:0,deletions:0}:a&&o?{label:`Changes`,value:`Committed + local`,additions:r,deletions:i,breakdown:[{label:`Committed`,value:P0(t.fileCount),...e.pullRequestNumber?{detail:`PR #${e.pullRequestNumber}`}:{},additions:t.insertions,deletions:t.deletions,muted:!1},{label:`Uncommitted`,value:P0(n.fileCount),detail:`local`,additions:n.insertions,deletions:n.deletions,muted:!1}]}:{label:`Changes`,value:P0(a?t.fileCount:n.fileCount),additions:r,deletions:i}}function R0(e){return e==null?``:typeof e==`string`?e:e instanceof Error||typeof e==`object`&&`message`in e&&typeof e.message==`string`?e.message:String(e)}var z0=[{kind:`terminal`,message:`Sign in to your source control provider to load this pull request.`,patterns:[`gh auth`,`not logged in`,`authentication`,`unauthorized`,`http 401`,`401`,`bad credentials`]},{kind:`terminal`,message:`This pull request could not be found.`,patterns:[`could not resolve to a`,`not found`,`404`,`no pull requests found`]},{kind:`transient`,message:`The source control provider is rate limiting requests. Try again shortly.`,patterns:[`rate limit`]},{kind:`transient`,message:`Loading pull request details timed out. Try refreshing.`,patterns:[`timed out`,`timeout`,`etimedout`,`vcsprocesstimeout`]},{kind:`transient`,message:`Couldn't reach the source control provider. Try refreshing.`,patterns:[`econnreset`,`enotfound`,`eai_again`,`socket hang up`,`network`,`fetch failed`,`econnrefused`,`connection refused`]}];function B0(e){let t=R0(e).trim();if(t.length===0)return null;let n=t.toLowerCase();for(let e of z0)if(e.patterns.some(e=>n.includes(e)))return{kind:e.kind,message:e.message,raw:t};return{kind:`transient`,message:`Couldn't load pull request details. Try refreshing.`,raw:t}}function V0(e,t){return!e||e.pr||!t?e:{...e,pr:{number:t.number,title:t.title,url:t.url,baseRef:t.baseRefName,headRef:t.headRefName,state:t.state}}}function H0(e){return e?.sourceControlProvider?vo(e.sourceControlProvider):Bi}function U0(e){let t=e.terminology??Bi,n=e.featureBranch?[`Preparing feature ref...`]:[],r=e.pushTarget?`Pushing to ${e.pushTarget}...`:`Pushing...`,i=[`Preparing ${t.shortLabel}...`,`Generating ${t.shortLabel} content...`,`Creating ${t.singular}...`];if(e.action===`push`)return[r];if(e.action===`create_pr`)return e.shouldPushBeforePr?[r,...i]:i;let a=e.action===`commit`||e.hasWorkingTreeChanges?e.hasCustomCommitMessage?[`Committing...`]:[`Generating commit message...`,`Committing...`]:[];return e.action===`commit`?[...n,...a]:e.action===`commit_push`?[...n,...a,r]:[...n,...a,r,...i]}function W0(e,t,n=!0){if(!e)return[];let r=H0(e),i=e.refName!==null,a=e.hasWorkingTreeChanges,o=e.pr?.state===`open`,s=e.behindCount>0,c=(e.aheadOfDefaultCount??e.aheadCount)>0,l=n&&!e.hasUpstream,u=!t&&a,d=!t&&i&&!s&&e.aheadCount>0&&(e.hasUpstream||l),f=!t&&i&&!a&&!o&&c&&!s&&(e.hasUpstream||l),p=!t&&o,m={id:`commit`,label:`Commit`,disabled:!u,icon:`commit`,kind:`open_dialog`,dialogAction:`commit`};return n?[m,{id:`push`,label:`Push`,disabled:!d,icon:`push`,kind:`open_dialog`,dialogAction:`push`},o?{id:`pr`,label:`View ${r.shortLabel}`,disabled:!p,icon:`pr`,kind:`open_pr`}:{id:`pr`,label:`Create ${r.shortLabel}`,disabled:!f,icon:`pr`,kind:`open_dialog`,dialogAction:`create_pr`}]:[m]}function G0(e,t,n=!1,r=!0){if(t)return{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Git action in progress.`};if(!e)return{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Git status is unavailable.`};let i=e.refName!==null,a=e.hasWorkingTreeChanges,o=e.pr?.state===`open`,s=e.aheadCount>0,c=(e.aheadOfDefaultCount??e.aheadCount)>0,l=e.behindCount>0,u=s&&l,d=H0(e);return i?a?!e.hasUpstream&&!r?{label:`Commit`,disabled:!1,kind:`run_action`,action:`commit`}:o||n?{label:`Commit & push`,disabled:!1,kind:`run_action`,action:`commit_push`}:{label:`Commit, push & ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`commit_push_pr`}:e.hasUpstream?u?{label:`Sync ref`,disabled:!0,kind:`show_hint`,hint:`Branch has diverged from upstream. Rebase/merge first.`}:l?{label:`Pull`,disabled:!1,kind:`run_pull`}:s?o||n?{label:`Push`,disabled:!1,kind:`run_action`,action:n?`commit_push`:`push`}:{label:`Push & create ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`create_pr`}:o&&e.hasUpstream?{label:`View ${d.shortLabel}`,disabled:!1,kind:`open_pr`}:c&&!n?{label:`Create ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`create_pr`}:{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Branch is up to date. No action needed.`}:r?s?o||n?{label:`Push`,disabled:!1,kind:`run_action`,action:n?`commit_push`:`push`}:{label:`Push & create ${d.shortLabel}`,disabled:!1,kind:`run_action`,action:`create_pr`}:o?{label:`View ${d.shortLabel}`,disabled:!1,kind:`open_pr`}:{label:`Push`,disabled:!0,kind:`show_hint`,hint:`No local commits to push.`}:o&&!s?{label:`View ${d.shortLabel}`,disabled:!1,kind:`open_pr`}:{label:`Publish repository`,disabled:!1,kind:`open_publish`}:{label:`Commit`,disabled:!0,kind:`show_hint`,hint:`Create and checkout a ref before pushing or opening a ${d.singular}.`}}function K0(e,t){return t?e===`push`||e===`create_pr`||e===`commit_push`||e===`commit_push_pr`:!1}function q0(e){let t=e.branchName,n=` on "${t}". You can continue on this ref or create a feature ref and run the same action there.`,r=e.terminology??Bi;return e.action===`push`||e.action===`commit_push`?e.includesCommit?{title:`Commit & push to default ref?`,description:`This action will commit and push changes${n}`,continueLabel:`Commit & push to ${t}`}:{title:`Push to default ref?`,description:`This action will push local commits${n}`,continueLabel:`Push to ${t}`}:e.includesCommit?{title:`Commit, push & create ${r.shortLabel} from default ref?`,description:`This action will commit, push, and create a ${r.singular}${n}`,continueLabel:`Commit, push & create ${r.shortLabel}`}:{title:`Push & create ${r.shortLabel} from default ref?`,description:`This action will push local commits and create a ${r.singular}${n}`,continueLabel:`Push & create ${r.shortLabel}`}}function J0(e){return e.branch.status!==`created`||!e.branch.name?null:{branch:e.branch.name}}function Y0(e){return!e.gitStatus||e.gitStatus.refName===null&&e.threadBranch!==null||e.threadBranch===e.gitStatus.refName||e.threadBranch!==null&&e.gitStatus.refName!==null&&!v(e.threadBranch,e.worktreeBranchPrefix)&&v(e.gitStatus.refName,e.worktreeBranchPrefix)?null:{branch:e.gitStatus.refName}}function X0(e){if(!e)return null;for(let t of e.elements){let e=t.tagName;if(e===`BUTTON`||e===`INPUT`){let e=t;if(e.type===`submit`)return e}}return null}var Z0=`data-checked`,Q0=`data-unchecked`;function $0(e){return{checked(t){return e.indeterminate?{}:t?{[Z0]:``}:{[Q0]:``}},...Qc}}var e2=q.createContext(void 0);function t2(){return q.useContext(e2)}var n2=q.createContext(void 0);function r2(){let e=q.useContext(n2);if(e===void 0)throw Error(Xe(14));return e}var i2=`data-parent`,a2=q.forwardRef(function(e,t){let{checked:n,className:r,defaultChecked:i=!1,"aria-labelledby":a,disabled:o=!1,form:s,id:c,indeterminate:l=!1,inputRef:u,name:d,onCheckedChange:f,parent:p=!1,readOnly:m=!1,render:h,required:g=!1,uncheckedValue:_,value:v,nativeButton:y=!1,style:b,...x}=e,{clearErrors:S}=Yc(),{disabled:C,name:w,setDirty:T,setFilled:E,setFocused:D,setTouched:O,state:k,validationMode:A,validityData:j,validation:M}=Xc(),N=nl(),{labelId:P,registerControlId:F,getDescriptionProps:I}=Jc(),L=t2(),R=L?.allValues===void 0?void 0:L.parent,z=R!==void 0,ee=C||N.disabled||L?.disabled||o,te=w??d,B=v??te,ne=Wc(),re=L?.registerControlId!==F,ie=Zc({id:c||void 0,enabled:re}),V=y?ie:ne,ae={};z&&(p?ae=R.getParentProps():B!==void 0&&(ae=R.getChildProps(B)));let{checked:H=n,indeterminate:oe=l,onCheckedChange:se,...ce}=ae,le=L?.value,ue=q.useRef(null),{getButtonProps:de,buttonRef:fe}=Fn({disabled:ee,native:y}),pe=L?.validation??M,[me,he]=Kc({controlled:B!==void 0&&le!==void 0&&!p?le.includes(B):H,default:i,name:`Checkbox`,state:`checked`}),ge=z?!!H:me,_e=z&&oe||l;qc(ue,ne,me,void 0,!L&&!ee,d);let ve=R?.registerChildId,ye=q.useRef(null),be=pe.registerInput,xe=L?B:void 0,Se=q.useCallback(e=>be(e,{controlRef:ue,value:xe}),[be,xe]),Ce=U(u,ye,p?void 0:Se),we=bi(a,P,ye,!y,ie);nt(()=>{ye.current&&(ye.current.indeterminate=_e),L||E(me)},[me,_e,L,E]),Gc(me,()=>{L||(S(te),T(me!==j.initialValue),pe.change(me))});let Te=Ft({checked:me,disabled:ee,form:s,name:p?void 0:te,id:y?void 0:ie,required:g,ref:Ce,style:te?Qn:jr,tabIndex:-1,type:`checkbox`,"aria-hidden":!0,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(m){e.preventDefault();return}let t=e.currentTarget.checked,n=sr(dt,e.nativeEvent);if(f?.(t,n),!n.isCanceled&&(se?.(t,n),!n.isCanceled&&(he(t),B!==void 0&&L!==void 0&&!p&&!z))){let e=t?[...L.value,B]:L.value.filter(e=>e!==B);L.setValue(e,n)}},onClick(e){e.stopPropagation()},onFocus(){ue.current?.focus()}},v===void 0?ot:{value:(L?me&&v:v)||``},I,e=>pe.getValidationProps(ee,e));q.useEffect(()=>{if(!R||B===void 0)return;let e=R.disabledStatesRef.current;return e.set(B,ee),()=>{e.delete(B)}},[R,ee,B]);let Ee=q.useMemo(()=>({...k,checked:ge,disabled:ee,readOnly:m,required:g,indeterminate:_e}),[k,ge,ee,m,g,_e]),De=$0(Ee),Oe=kt(`span`,e,{state:Ee,ref:[fe,ue,t],props:[{id:V,role:`checkbox`,"aria-checked":_e?`mixed`:ge,"aria-readonly":m||void 0,"aria-required":g||void 0,"aria-labelledby":we,[i2]:p?``:void 0,onFocus(){ee||D(!0)},onBlur(){let e=ye.current;e&&(O(!0),D(!1),A===`onBlur`&&pe.commit(L?le:e.checked))},onKeyDown(e){if(e.key!==`Enter`||(e.preventBaseUIHandler(),e.defaultPrevented))return;let t=ye.current?.form??null,n=e.currentTarget,r=e.nativeEvent,i=e.preventDefault,a=r.preventDefault,o=!1;e.preventDefault=()=>{o=!0,i.call(e)},r.preventDefault=()=>{o=!0,a.call(r)},a.call(r),qt(n).queueMicrotask(()=>{e.preventDefault=i,r.preventDefault=a,o||X0(t)?.click()})},onClick(e){if(m||ee)return;e.preventDefault();let t=ye.current;t&&qe(t,e)}},x,ce,de,I,e=>pe.getValidationProps(ee,e)],stateAttributesMapping:De}),ke=Oe.props.id;return nt(()=>{if(ve&&!p&&B!==void 0&&ke!==void 0)return ve(B,ke)},[ve,p,B,ke]),(0,Y.jsxs)(n2.Provider,{value:Ee,children:[Oe,!me&&!L&&te&&!p&&_!==void 0&&(0,Y.jsx)(`input`,{type:`hidden`,form:s,name:te,value:_,disabled:ee}),(0,Y.jsx)(`input`,{...Te,suppressHydrationWarning:!0})]})}),o2=q.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a=!1,...o}=e,s=r2(),c=s.checked||s.indeterminate,{mounted:l,transitionStatus:u,setMounted:d}=xo(c),f=q.useRef(null),p={...s,transitionStatus:u};He({batch:!0,enabled:!c,open:c,ref:f,onComplete(){c||d(!1)}});let m={...$0(s),...Ee},h=a||l,g=kt(`span`,e,{ref:[t,f],state:p,stateAttributesMapping:m,props:o});return h?g:null});function s2(e){let t=(0,J.c)(9),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=G(`relative inline-flex size-4.5 shrink-0 items-center justify-center rounded-sm border border-input bg-background not-dark:bg-clip-padding shadow-xs/5 outline-none ring-ring transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[max(0px,calc(var(--radius-sm)-1px))] not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-offset-background aria-invalid:border-destructive/36 focus-visible:aria-invalid:border-destructive/64 focus-visible:aria-invalid:ring-destructive/48 data-disabled:opacity-64 sm:size-4 dark:not-data-checked:bg-input/32 dark:aria-invalid:ring-destructive/24 dark:not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)] [[data-disabled],[data-checked],[aria-invalid]]:shadow-none`,n),t[3]=n,t[4]=i);let a;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Y.jsx)(o2,{className:`-inset-px absolute flex items-center justify-center rounded-sm text-primary-foreground data-unchecked:hidden data-checked:bg-primary data-indeterminate:text-foreground`,"data-slot":`checkbox-indicator`,render:c2}),t[5]=a):a=t[5];let o;return t[6]!==r||t[7]!==i?(o=(0,Y.jsx)(a2,{className:i,"data-slot":`checkbox`,...r,children:a}),t[6]=r,t[7]=i,t[8]=o):o=t[8],o}function c2(e,t){return(0,Y.jsx)(`span`,{...e,children:t.indeterminate?(0,Y.jsx)(`svg`,{className:`size-3.5 sm:size-3`,fill:`none`,height:`24`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`3`,viewBox:`0 0 24 24`,width:`24`,xmlns:`http://www.w3.org/2000/svg`,children:(0,Y.jsx)(`path`,{d:`M5.252 12h13.496`})}):(0,Y.jsx)(`svg`,{className:`size-3.5 sm:size-3`,fill:`none`,height:`24`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`3`,viewBox:`0 0 24 24`,width:`24`,xmlns:`http://www.w3.org/2000/svg`,children:(0,Y.jsx)(`path`,{d:`M5.252 12.7 10.2 18.63 18.748 5.37`})})})}var l2=250,u2=[{value:`github`,label:`GitHub`,description:`github.com`,host:`github.com`,pathPlaceholder:`owner/repo`,Icon:uo},{value:`gitlab`,label:`GitLab`,description:`gitlab.com`,host:`gitlab.com`,pathPlaceholder:`group/project`,Icon:li},{value:`forgejo`,label:`Forgejo`,description:`Forgejo instance`,host:`configured Forgejo host`,pathPlaceholder:`owner/repo`,Icon:mo},{value:`bitbucket`,label:`Bitbucket`,description:`bitbucket.org`,host:`bitbucket.org`,pathPlaceholder:`workspace/repository`,Icon:ba},{value:`azure-devops`,label:`Azure DevOps`,description:`dev.azure.com`,host:`dev.azure.com`,pathPlaceholder:`project/repository`,Icon:wa}];function d2(e){return u2.find(t=>t.value===e)??u2[0]}function f2(e){return u2.some(t=>t.value===e)}function p2(e){let t=e.sourceControlProviders.find(t=>t.kind===e.provider);return t?t.status===`available`?t.auth.status===`unauthenticated`?{ready:!1,hint:T(t.auth.detail)??`${t.label} is not authenticated. Open Settings -> Source Control for setup guidance.`}:{ready:!0,hint:null}:{ready:!1,hint:t.installHint}:{ready:!1,hint:`Provider status unavailable. Open Settings -> Source Control and rescan.`}}function m2(e){if(e===null)return;let t=Math.max(0,Math.floor((Date.now()-e)/1e3));return t<60?`Running for ${t}s`:`Running for ${Math.floor(t/60)}m ${t%60}s`}function h2(e){return e.lastOutputLine?e.lastOutputLine:m2(e.hookStartedAtMs??e.phaseStartedAtMs)}function g2({item:e,gitStatus:t,isBusy:n,hasPrimaryRemote:r}){if(!e.disabled)return null;if(n)return`Git action in progress.`;if(!t)return`Git status is unavailable.`;let i=t.refName!==null,a=t.hasWorkingTreeChanges,o=t.pr?.state===`open`,s=t.aheadCount>0,c=t.behindCount>0,l=no(t.sourceControlProvider).terminology;return e.id===`commit`?a?`Commit is currently unavailable.`:`Worktree is clean. Make changes before committing.`:e.id===`push`?i?a?`Commit or stash local changes before pushing.`:c?`Branch is behind upstream. Pull/rebase before pushing.`:!t.hasUpstream&&!r?`Add an "origin" remote before pushing.`:s?`Push is currently unavailable.`:`No local commits to push.`:`Detached HEAD: checkout a refName before pushing.`:o?`View ${l.singular} is currently unavailable.`:i?a?`Commit local changes before creating a ${l.singular}.`:!t.hasUpstream&&!r?`Add an "origin" remote before creating a ${l.singular}.`:s?c?`Branch is behind upstream. Pull/rebase before creating a ${l.singular}.`:`Create ${l.singular} is currently unavailable.`:`No local commits to include in a ${l.singular}.`:`Detached HEAD: checkout a refName before creating a ${l.singular}.`}var _2=`Commit changes`,v2=`Review and confirm your commit. Leave the message blank to auto-generate one.`;function y2(e){let t=(0,J.c)(4),{icon:n,SourceControlIcon:r}=e;if(n===`commit`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ui,{}),t[0]=e):e=t[0],e}if(n===`push`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ou,{}),t[1]=e):e=t[1],e}let i;return t[2]===r?i=t[3]:(i=(0,Y.jsx)(r,{}),t[2]=r,t[3]=i),i}function b2(e){let t=(0,J.c)(10),{quickAction:n,SourceControlIcon:r}=e;if(n.kind===`open_pr`){let e;return t[0]===r?e=t[1]:(e=(0,Y.jsx)(r,{className:`size-3.5`}),t[0]=r,t[1]=e),e}if(n.kind===`open_publish`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ou,{className:`size-3.5`}),t[2]=e):e=t[2],e}if(n.kind===`run_pull`){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)($t,{className:`size-3.5`}),t[3]=e):e=t[3],e}if(n.kind===`run_action`){if(n.action===`commit`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ui,{className:`size-3.5`}),t[4]=e):e=t[4],e}if(n.action===`push`||n.action===`commit_push`){let e;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ou,{className:`size-3.5`}),t[5]=e):e=t[5],e}let e;return t[6]===r?e=t[7]:(e=(0,Y.jsx)(r,{className:`size-3.5`}),t[6]=r,t[7]=e),e}if(n.label===`Commit`){let e;return t[8]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ui,{className:`size-3.5`}),t[8]=e):e=t[8],e}let i;return t[9]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Y.jsx)($t,{className:`size-3.5`}),t[9]=i):i=t[9],i}function x2(e){let t=(0,J.c)(7),{quickAction:n}=e;if(n.kind===`open_pr`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Pi,{className:`size-3.5`}),t[0]=e):e=t[0],e}if(n.kind===`open_publish`){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ou,{className:`size-3.5`}),t[1]=e):e=t[1],e}if(n.kind===`run_pull`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(xi,{className:`size-3.5`}),t[2]=e):e=t[2],e}if(n.kind===`run_action`){if(n.action===`commit`){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ui,{className:`size-3.5`}),t[3]=e):e=t[3],e}if(n.action===`create_pr`){let e;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Is,{className:`size-3.5`}),t[4]=e):e=t[4],e}let e;return t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(Ou,{className:`size-3.5`}),t[5]=e):e=t[5],e}let r;return t[6]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Y.jsx)(Ui,{className:`size-3.5`}),t[6]=r):r=t[6],r}function S2(e){let t=(0,J.c)(168),n=we(),[r,i]=(0,q.useState)(`github`),[a,o]=(0,q.useState)(``),[s,c]=(0,q.useState)(`private`),[l,u]=(0,q.useState)(`origin`),[d,f]=(0,q.useState)(`ssh`),[p,m]=(0,q.useState)(0),[h,g]=(0,q.useState)(!1),[_,v]=(0,q.useState)(null),[y,b]=(0,q.useState)(null),[x,S]=(0,q.useState)(!1),C;t[0]!==e.environmentId||t[1]!==e.gitCwd?(C=t=>{if(!e.gitCwd||!e.environmentId)throw Error(`Repository publishing is unavailable.`);return or(e.environmentId).sourceControl.publishRepository({cwd:e.gitCwd,...t})},t[0]=e.environmentId,t[1]=e.gitCwd,t[2]=C):C=t[2];let w;t[3]===e.gitCwd?w=t[4]:(w=e.gitCwd?[Vr(e.gitCwd)]:[],t[3]=e.gitCwd,t[4]=w);let E;t[5]!==e.environmentId||t[6]!==e.gitCwd?(E=FG(`publish-repository`,e.environmentId,e.gitCwd),t[5]=e.environmentId,t[6]=e.gitCwd,t[7]=E):E=t[7];let D;t[8]!==C||t[9]!==w||t[10]!==E?(D={mutationFn:C,invalidates:w,trackingKey:E},t[8]=C,t[9]=w,t[10]=E,t[11]=D):D=t[11];let O=NG(D),k;if(t[12]!==n.data?.sourceControlProviders){k={github:null,gitlab:null,forgejo:null,bitbucket:null,"azure-devops":null};for(let e of n.data?.sourceControlProviders??[])f2(e.kind)&&(k[e.kind]=T(e.auth.account));t[12]=n.data?.sourceControlProviders,t[13]=k}else k=t[13];let A=k,j;t[14]===n.data?.sourceControlProviders?j=t[15]:(j=n.data?.sourceControlProviders??[],t[14]=n.data?.sourceControlProviders,t[15]=j);let M=j,N;t[16]===M?N=t[17]:(N=Object.fromEntries(u2.map(e=>[e.value,p2({provider:e.value,sourceControlProviders:M})])),t[16]=M,t[17]=N);let P=N,F;t[18]===P?F=t[19]:(F=u2.some(e=>P[e.value].ready),t[18]=P,t[19]=F);let I=F,L;t[20]===P?L=t[21]:(L=u2.toSorted((e,t)=>{let n=P[e.value].ready;return n===P[t.value].ready?e.label.localeCompare(t.label):n?-1:1}),t[20]=P,t[21]=L);let R=L,z=P[r],ee=A[r]?`${A[r]}/`:``,te;t[22]===r?te=t[23]:(te=d2(r),t[22]=r,t[23]=te);let B=te,ne=B.host,re=B.pathPlaceholder,ie=B.label,V;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(V=[`Provider`,`Repository`,`Summary`],t[24]=V):V=t[24];let ae=V,H=y?.repository.nameWithOwner??null,U;t[25]!==ie||t[26]!==H?(U=[ie,H,null],t[25]=ie,t[26]=H,t[27]=U):U=t[27];let oe=U,se,ce;t[28]!==x||t[29]!==e.open||t[30]!==ee?(se=()=>{e.open&&!x&&o(ee)},ce=[x,e.open,ee],t[28]=x,t[29]=e.open,t[30]=ee,t[31]=se,t[32]=ce):(se=t[31],ce=t[32]),(0,q.useEffect)(se,ce);let le;bb0:{if(!z.ready){le=!1;break bb0}if(O.isPending){le=!1;break bb0}let e,n;if(t[33]!==a){let r=a.trim().split(`/`);e=r[0]?.trim()??``,n=r.slice(1).join(`/`).trim(),t[33]=a,t[34]=e,t[35]=n}else e=t[34],n=t[35];let r=n;le=e.length>0&&r.length>0}let ue=le,de,fe;t[36]!==e.open||t[37]!==r||t[38]!==P?(de=()=>{if(!e.open||P[r].ready)return;let t=u2.find(e=>P[e.value].ready);t&&i(t.value)},fe=[e.open,r,P],t[36]=e.open,t[37]=r,t[38]=P,t[39]=de,t[40]=fe):(de=t[39],fe=t[40]),(0,q.useEffect)(de,fe);let pe;t[41]!==ue||t[42]!==e.environmentId||t[43]!==e.gitCwd||t[44]!==d||t[45]!==r||t[46]!==l||t[47]!==a||t[48]!==O||t[49]!==s?(pe=()=>{ue&&(v(null),O.mutateAsync({provider:r,repository:a.trim(),visibility:s,remoteName:l.trim()||`origin`,protocol:d}).then(t=>{(0,Pd.flushSync)(()=>{b(t),m(2)}),Ne({environmentId:e.environmentId,cwd:e.gitCwd}).catch(D2)}).catch(e=>{v(e instanceof Error?e.message:`An error occurred.`)}))},t[41]=ue,t[42]=e.environmentId,t[43]=e.gitCwd,t[44]=d,t[45]=r,t[46]=l,t[47]=a,t[48]=O,t[49]=s,t[50]=pe):pe=t[50];let me=pe,he;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(he=()=>{u(`origin`),o(``),S(!1),m(0),g(!1),v(null),b(null)},t[51]=he):he=t[51];let ge=he,_e;t[52]===e?_e=t[53]:(_e=t=>{e.onOpenChange(t),t||ge()},t[52]=e,t[53]=_e);let ve=_e,ye=Re(E2),be;t[54]!==ve||t[55]!==ye?(be=()=>{ve(!1),ye(`source-control`)},t[54]=ve,t[55]=ye,t[56]=be):be=t[56];let xe=be,Se=e.open,Ce,Te;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=(0,Y.jsx)(Ri,{children:`Publish repository`}),Te=(0,Y.jsx)(qa,{children:`Pick where to host it, then point us at a repo to push to.`}),t[57]=Ce,t[58]=Te):(Ce=t[57],Te=t[58]);let Ee;t[59]!==p||t[60]!==oe?(Ee=(0,Y.jsxs)(ta,{className:`border-b border-border/70 bg-background`,children:[Ce,Te,(0,Y.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:ae.map((e,t)=>{let n=t<p,r=p!==2&&t<ae.length-1&&t<=p;return(0,Y.jsxs)(`button`,{type:`button`,onClick:r?()=>m(t):void 0,disabled:!r,className:G(`grid min-w-0 grid-cols-[1rem_minmax(0,1fr)] gap-x-2 rounded-lg border px-3 py-2 text-left`,t===p?`border-primary bg-primary/10 ring-1 ring-primary/25`:n?`border-border bg-background`:`border-border bg-muted/40`,!r&&`cursor-default`),children:[(0,Y.jsx)(`span`,{"aria-hidden":!0,className:G(`row-span-2 mt-0.5 grid size-4 place-items-center rounded-full border`,n?`border-primary bg-primary text-primary-foreground`:t===p?`border-primary bg-background`:`border-muted-foreground/35 bg-background`),children:n?(0,Y.jsx)(Yn,{className:`size-3`}):null}),(0,Y.jsxs)(`span`,{className:`text-[10px] font-medium uppercase text-muted-foreground`,children:[`Step `,t+1]}),(0,Y.jsxs)(`span`,{className:`truncate text-xs font-semibold text-foreground`,children:[e,n&&oe[t]?`: ${oe[t]}`:``]})]},e)})})]}),t[59]=p,t[60]=oe,t[61]=Ee):Ee=t[61];let De=p!==0&&`hidden`,Oe;t[62]===De?Oe=t[63]:(Oe=G(`space-y-2`,De),t[62]=De,t[63]=Oe);let ke;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(ke=(0,Y.jsx)(`span`,{id:`publish-provider-cards-label`,className:`text-xs font-medium text-foreground`,children:`Provider`}),t[64]=ke):ke=t[64];let Ae;t[65]===Symbol.for(`react.memo_cache_sentinel`)?(Ae=e=>i(e),t[65]=Ae):Ae=t[65];let je;if(t[66]!==xe||t[67]!==r||t[68]!==P||t[69]!==R){let e;t[71]!==xe||t[72]!==r||t[73]!==P?(e=e=>{let t=P[e.value],n=r===e.value&&t.ready;return t.ready?(0,Y.jsxs)(tl,{value:e.value,className:G(`relative flex cursor-pointer items-center gap-3 rounded-lg border px-3 py-3 text-left outline-none transition-[background-color,border-color,box-shadow]`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,n?`border-primary bg-background shadow-sm ring-2 ring-primary/35`:`border-border bg-background hover:border-foreground/20 hover:bg-muted/50`),children:[(0,Y.jsx)(e.Icon,{className:`size-5 shrink-0`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label})]},e.value):(0,Y.jsxs)(`div`,{className:`relative flex cursor-not-allowed items-center gap-3 rounded-lg border border-border bg-background px-3 py-3 text-left opacity-55`,children:[(0,Y.jsx)(e.Icon,{className:`size-5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label}),(0,Y.jsxs)(wo,{children:[(0,Y.jsx)(So,{render:(0,Y.jsx)(W,{variant:`outline`,size:`xs`,className:`h-5 rounded-sm px-1.5 text-[10px] text-warning-foreground`,onClick:e=>{e.preventDefault(),e.stopPropagation(),xe()},children:`Setup Required`})}),(0,Y.jsx)(Co,{side:`top`,align:`end`,className:`max-w-72`,children:t.hint??`Open Settings -> Source Control to configure this provider.`})]})]},e.value)},t[71]=xe,t[72]=r,t[73]=P,t[74]=e):e=t[74],je=R.map(e),t[66]=xe,t[67]=r,t[68]=P,t[69]=R,t[70]=je}else je=t[70];let Me;t[75]!==r||t[76]!==je?(Me=(0,Y.jsx)(il,{value:r,onValueChange:Ae,"aria-labelledby":`publish-provider-cards-label`,className:`grid grid-cols-2 gap-2.5`,children:je}),t[75]=r,t[76]=je,t[77]=Me):Me=t[77];let Pe;t[78]!==Oe||t[79]!==Me?(Pe=(0,Y.jsxs)(`div`,{className:Oe,children:[ke,Me]}),t[78]=Oe,t[79]=Me,t[80]=Pe):Pe=t[80];let Fe=p!==1&&`hidden`,Ie;t[81]===Fe?Ie=t[82]:(Ie=G(`space-y-5`,Fe),t[81]=Fe,t[82]=Ie);let Le;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(Le=(0,Y.jsx)(`label`,{htmlFor:`publish-repository-path`,className:`text-xs font-medium text-foreground`,children:`Repository`}),t[83]=Le):Le=t[83];let ze;t[84]===B.Icon?ze=t[85]:(ze=(0,Y.jsx)(B.Icon,{className:`size-3.5`}),t[84]=B.Icon,t[85]=ze);let Be;t[86]!==ne||t[87]!==ze?(Be=(0,Y.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1.5 border-r border-input bg-muted/50 px-2.5 font-mono text-xs text-muted-foreground`,children:[ze,ne,`/`]}),t[86]=ne,t[87]=ze,t[88]=Be):Be=t[88];let Ve;t[89]===Symbol.for(`react.memo_cache_sentinel`)?(Ve=e=>{o(e.target.value),S(!0)},t[89]=Ve):Ve=t[89];let He;t[90]===me?He=t[91]:(He=e=>{e.key===`Enter`&&$l(e)&&(e.preventDefault(),me())},t[90]=me,t[91]=He);let Ue;t[92]!==re||t[93]!==a||t[94]!==O.isPending||t[95]!==He?(Ue=(0,Y.jsx)(`input`,{id:`publish-repository-path`,name:`publish-repository-path`,value:a,onChange:Ve,onKeyDown:He,placeholder:re,disabled:O.isPending,className:`w-full bg-transparent px-3 py-2 font-mono text-sm placeholder:text-muted-foreground/60 focus:outline-none`}),t[92]=re,t[93]=a,t[94]=O.isPending,t[95]=He,t[96]=Ue):Ue=t[96];let We;t[97]!==Be||t[98]!==Ue?(We=(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[Le,(0,Y.jsxs)(`div`,{className:`flex items-stretch overflow-hidden rounded-md border border-input bg-background focus-within:outline-2 focus-within:-outline-offset-1 focus-within:outline-ring`,children:[Be,Ue]})]}),t[97]=Be,t[98]=Ue,t[99]=We):We=t[99];let Ge;t[100]===Symbol.for(`react.memo_cache_sentinel`)?(Ge=(0,Y.jsx)(`span`,{id:`publish-visibility-cards-label`,className:`text-xs font-medium text-foreground`,children:`Visibility`}),t[100]=Ge):Ge=t[100];let Ke;t[101]===Symbol.for(`react.memo_cache_sentinel`)?(Ke=e=>c(e),t[101]=Ke):Ke=t[101];let qe=O.isPending,Je;t[102]===Symbol.for(`react.memo_cache_sentinel`)?(Je={value:`private`,label:`Private`,description:`Only invited people`,Icon:Ju},t[102]=Je):Je=t[102];let Ye;t[103]===Symbol.for(`react.memo_cache_sentinel`)?(Ye=[Je,{value:`public`,label:`Public`,description:`Anyone on the web`,Icon:la}],t[103]=Ye):Ye=t[103];let Xe;t[104]===s?Xe=t[105]:(Xe=Ye.map(e=>{let t=s===e.value;return(0,Y.jsxs)(tl,{value:e.value,className:G(`relative flex cursor-pointer items-center gap-3 rounded-lg border px-3 py-2.5 text-left outline-none transition-[background-color,border-color,box-shadow]`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,t?`border-primary bg-background shadow-sm ring-2 ring-primary/35`:`border-border bg-background hover:border-foreground/20 hover:bg-muted/50`),children:[(0,Y.jsx)(e.Icon,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Y.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,Y.jsx)(`span`,{className:`block text-sm font-medium text-foreground`,children:e.label}),(0,Y.jsx)(`span`,{className:`block text-xs text-muted-foreground`,children:e.description})]})]},e.value)}),t[104]=s,t[105]=Xe);let Ze;t[106]!==O.isPending||t[107]!==s||t[108]!==Xe?(Ze=(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[Ge,(0,Y.jsx)(il,{value:s,onValueChange:Ke,"aria-labelledby":`publish-visibility-cards-label`,disabled:qe,className:`grid grid-cols-2 gap-2.5`,children:Xe})]}),t[106]=O.isPending,t[107]=s,t[108]=Xe,t[109]=Ze):Ze=t[109];let Qe;t[110]===Symbol.for(`react.memo_cache_sentinel`)?(Qe=()=>g(T2),t[110]=Qe):Qe=t[110];let $e=h?``:`-rotate-90`,et;t[111]===$e?et=t[112]:(et=G(`size-3.5 transition-transform`,$e),t[111]=$e,t[112]=et);let tt;t[113]===et?tt=t[114]:(tt=(0,Y.jsx)(fr,{className:et}),t[113]=et,t[114]=tt);let nt;t[115]!==h||t[116]!==tt?(nt=(0,Y.jsxs)(`button`,{type:`button`,onClick:Qe,"aria-expanded":h,className:`flex items-center gap-1 text-xs font-medium text-muted-foreground transition-colors hover:text-foreground`,children:[tt,`Advanced`]}),t[115]=h,t[116]=tt,t[117]=nt):nt=t[117];let rt;t[118]!==h||t[119]!==d||t[120]!==l||t[121]!==O.isPending?(rt=h?(0,Y.jsxs)(`div`,{className:`mt-3 grid gap-3 sm:grid-cols-2`,children:[(0,Y.jsxs)(`label`,{className:`space-y-1.5`,htmlFor:`publish-remote-name`,children:[(0,Y.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Remote`}),(0,Y.jsx)(al,{id:`publish-remote-name`,value:l,onChange:e=>u(e.target.value),placeholder:`origin`,disabled:O.isPending})]}),(0,Y.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Y.jsx)(`span`,{id:`publish-protocol-label`,className:`text-xs font-medium text-foreground`,children:`Protocol`}),(0,Y.jsx)(il,{value:d,onValueChange:e=>f(e),"aria-labelledby":`publish-protocol-label`,disabled:O.isPending,className:`grid grid-cols-2 gap-2`,children:[`ssh`,`https`].map(e=>{let t=d===e;return(0,Y.jsx)(tl,{value:e,className:G(`rounded-md border px-3 py-1.5 text-center text-sm font-medium outline-none transition`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,t?`border-primary bg-background ring-2 ring-primary/35 text-foreground`:`border-border bg-background text-muted-foreground hover:border-foreground/20 hover:text-foreground`),children:e===`ssh`?`SSH`:`HTTPS`},e)})})]})]}):null,t[118]=h,t[119]=d,t[120]=l,t[121]=O.isPending,t[122]=rt):rt=t[122];let it;t[123]!==nt||t[124]!==rt?(it=(0,Y.jsxs)(`div`,{children:[nt,rt]}),t[123]=nt,t[124]=rt,t[125]=it):it=t[125];let at;t[126]!==ie||t[127]!==O.isPending?(at=O.isPending?(0,Y.jsxs)(`div`,{role:`status`,"aria-live":`polite`,className:`flex items-center gap-2 rounded-md border border-input bg-muted/40 px-3 py-2 text-xs text-muted-foreground`,children:[(0,Y.jsx)(lo,{className:`size-3.5`,"aria-hidden":!0}),`Publishing repository to `,ie,`...`]}):null,t[126]=ie,t[127]=O.isPending,t[128]=at):at=t[128];let ot;t[129]!==_||t[130]!==O.isPending?(ot=_&&!O.isPending?(0,Y.jsxs)(`div`,{role:`alert`,className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs text-destructive`,children:[(0,Y.jsx)(`p`,{className:`font-medium`,children:`Publish failed`}),(0,Y.jsx)(`p`,{className:`mt-0.5 text-destructive/90`,children:_})]}):null,t[129]=_,t[130]=O.isPending,t[131]=ot):ot=t[131];let st;t[132]!==Ie||t[133]!==We||t[134]!==Ze||t[135]!==it||t[136]!==at||t[137]!==ot?(st=(0,Y.jsxs)(`div`,{className:Ie,children:[We,Ze,it,at,ot]}),t[132]=Ie,t[133]=We,t[134]=Ze,t[135]=it,t[136]=at,t[137]=ot,t[138]=st):st=t[138];let ct=p!==2&&`hidden`,lt;t[139]===ct?lt=t[140]:(lt=G(`space-y-4`,ct),t[139]=ct,t[140]=lt);let ut;t[141]!==B.Icon||t[142]!==ie||t[143]!==y?(ut=y?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-1 text-center`,children:[(0,Y.jsx)(`span`,{className:`grid size-8 place-items-center rounded-full bg-success/15 text-success`,children:(0,Y.jsx)(Yn,{className:`size-4`,"aria-hidden":!0})}),(0,Y.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:y.status===`pushed`?`Repository published`:`Repository created`}),(0,Y.jsx)(`p`,{className:`max-w-xs text-pretty text-xs text-muted-foreground`,children:y.status===`pushed`?`${y.branch} is now live on ${ie}.`:`Remote "${y.remoteName}" is set up. Make a commit and push it to share your code.`})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-input bg-muted/40 px-3 py-2`,children:[(0,Y.jsx)(B.Icon,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs text-foreground`,children:y.repository.nameWithOwner})]}),(0,Y.jsxs)(W,{variant:`outline`,size:`sm`,className:`w-full`,onClick:()=>{let e=Cn();e&&e.shell.openExternal(y.repository.url)},children:[(0,Y.jsx)(Aa,{className:`size-3.5`,"aria-hidden":!0}),`Open on `,ie]})]}):(0,Y.jsx)(`div`,{className:`rounded-md border border-input bg-background px-3 py-2 text-xs text-muted-foreground`,children:`Publish result unavailable.`}),t[141]=B.Icon,t[142]=ie,t[143]=y,t[144]=ut):ut=t[144];let dt;t[145]!==lt||t[146]!==ut?(dt=(0,Y.jsx)(`div`,{className:lt,children:ut}),t[145]=lt,t[146]=ut,t[147]=dt):dt=t[147];let ft;t[148]!==Pe||t[149]!==st||t[150]!==dt?(ft=(0,Y.jsx)(Qi,{className:`space-y-5 border-b border-border/70 bg-muted/20 px-6 py-5`,children:(0,Y.jsxs)(Hl,{children:[Pe,st,dt]})}),t[148]=Pe,t[149]=st,t[150]=dt,t[151]=ft):ft=t[151];let pt;t[152]!==ue||t[153]!==ve||t[154]!==I||t[155]!==O.isPending||t[156]!==p||t[157]!==z.ready||t[158]!==me?(pt=(0,Y.jsx)(Ti,{children:p===2?(0,Y.jsx)(W,{size:`sm`,onClick:()=>ve(!1),children:`Done`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(W,{variant:`outline`,size:`sm`,disabled:O.isPending,onClick:()=>{if(p===0){ve(!1);return}m(w2)},children:p===0?`Cancel`:`Back`}),p<1?(0,Y.jsx)(W,{size:`sm`,disabled:!I||!z.ready,onClick:()=>m(C2),children:`Next`}):(0,Y.jsx)(W,{size:`sm`,disabled:!ue,onClick:me,children:O.isPending?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(lo,{className:`size-3.5`,"aria-hidden":!0}),`Publishing...`]}):`Publish`})]})}),t[152]=ue,t[153]=ve,t[154]=I,t[155]=O.isPending,t[156]=p,t[157]=z.ready,t[158]=me,t[159]=pt):pt=t[159];let mt;t[160]!==Ee||t[161]!==ft||t[162]!==pt?(mt=(0,Y.jsx)(ia,{className:`max-w-xl overflow-hidden`,children:(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden border-foreground/10 bg-background shadow-2xl`,children:[Ee,ft,pt]})}),t[160]=Ee,t[161]=ft,t[162]=pt,t[163]=mt):mt=t[163];let ht;return t[164]!==ve||t[165]!==e.open||t[166]!==mt?(ht=(0,Y.jsx)(vi,{open:Se,onOpenChange:ve,children:mt}),t[164]=ve,t[165]=e.open,t[166]=mt,t[167]=ht):ht=t[167],ht}function C2(e){return Math.min(1,e+1)}function w2(e){return Math.max(0,e-1)}function T2(e){return!e}function E2(e){return e.openSettings}function D2(){}function O2({gitCwd:e,activeThreadRef:t,draftId:n,showLabels:r=!1,block:i=!1,detectedChangeRequest:a=null,onPostPush:o}){let s=t?.environmentId??null,c=d(),l=xt(),f=Xn(e=>s?e.byId[s]?.serverConfig:null),p=(s===c?l:f)?.settings.worktreeBranchPrefix,m=(0,q.useMemo)(()=>t?{threadRef:t}:void 0,[t]),h=(0,q.useMemo)(()=>Jt(t),[t]),g=me(h),_=Rr(e=>n?e.getDraftSession(n):t?e.getDraftThreadByRef(t):null),v=Rr(e=>e.setDraftThreadContext),y=me(e=>e.setThreadBranch),[b,x]=(0,q.useState)(!1),[S,C]=(0,q.useState)(``),[w,T]=(0,q.useState)(new Set),[E,D]=(0,q.useState)(!1),[O,k]=(0,q.useState)(!1),[A,j]=(0,q.useState)(null),M=(0,q.useRef)(null),[N,P]=(0,q.useState)(0),F,L=(0,q.useCallback)(e=>{M.current=e,P(e=>e+1)},[]),R=(0,q.useCallback)(()=>{M.current&&(M.current=null,P(e=>e+1))},[]),z=(0,q.useCallback)(()=>{let e=M.current;e&&Ve.update(e.toastId,{type:`loading`,title:e.title,description:h2(e),timeout:0,data:e.toastData})},[]),ee=(0,q.useCallback)(e=>{if(t){if(g){if(g.branch===e)return;let n=g.worktreePath,r=Dr(t.environmentId);r&&r.orchestration.dispatchCommand({type:`thread.meta.update`,commandId:yr(),threadId:t.threadId,branch:e,worktreePath:n}).catch(()=>void 0),y(t,e,n);return}_&&_.branch!==e&&v(n??t,{branch:e,worktreePath:_.worktreePath})}},[_,g,t,n,v,y]),te=(0,q.useCallback)(e=>{let t=J0(e);t&&ee(t.branch)},[ee]),{data:B=null,error:ne}=We({environmentId:s,cwd:e}),re=(0,q.useMemo)(()=>no(B?.sourceControlProvider),[B?.sourceControlProvider]),ie=re.terminology,V=re.Icon,ae=B?.isRepo??!0,H=B?.hasPrimaryRemote??!1,U=(0,q.useMemo)(()=>V0(B,a),[a,B]),oe=U?.workingTree.files??[],se=oe.filter(e=>!w.has(e.path)),ce=w.size===0,le=se.length===0,ue=(0,q.useMemo)(()=>e?[Vr(e)]:[],[e]),de=FG(`run-stacked-action`,s,e),fe=FG(`pull`,s,e),pe=FG(`publish-repository`,s,e),he=NG({mutationFn:()=>{if(!e||!s)throw Error(`Git init is unavailable.`);return or(s).vcs.init({cwd:e})},invalidates:ue,invalidateOn:`settled`}),ge=NG({mutationFn:({actionId:t,action:n,commitMessage:r,featureBranch:i,filePaths:a,worktreeId:o,onProgress:c})=>{if(!e||!s)throw Error(`Git action is unavailable.`);return bn(s).client.git.runStackedAction({action:n,actionId:t,cwd:e,...o?{worktreeId:o}:{},...r?{commitMessage:r}:{},...i?{featureBranch:!0}:{},...a&&a.length>0?{filePaths:a}:{}},...c?[{onProgress:c}]:[])},invalidates:ue,trackingKey:de}),_e=NG({mutationFn:()=>{if(!e||!s)throw Error(`Git pull is unavailable.`);return or(s).vcs.pull({cwd:e})},invalidates:ue,trackingKey:fe}),ve=PG(de),ye=PG(fe),be=PG(pe),xe=ve||ye||be,Se=!g&&_?.envMode===`worktree`&&_.worktreePath===null;(0,q.useEffect)(()=>{if(xe||Se||p===void 0)return;let e=Y0({worktreeBranchPrefix:p,threadBranch:g?.branch??_?.branch??null,gitStatus:U});e&&ee(e.branch)},[g?.branch,_?.branch,U,xe,Se,p,ee]);let Ce=(0,q.useMemo)(()=>U?.isDefaultRef??!1,[U?.isDefaultRef]),we=(0,q.useMemo)(()=>W0(U,xe,H),[U,H,xe]),Te=(0,q.useMemo)(()=>G0(U,xe,Ce,H),[U,H,Ce,xe]),Ee=Te.disabled?Te.hint??`This action is currently unavailable.`:null,De=A?q0({action:A.action,branchName:A.branchName,includesCommit:A.includesCommit,terminology:ie}):null;(0,q.useEffect)(()=>{if(M.current)return Ge({lifecycle:Pn,run:()=>(z(),Promise.resolve()),resolveDelayMs:()=>1e3,runImmediately:!1}).stop},[N,z]),(0,q.useEffect)(()=>{if(e===null)return;let t=null,n=()=>{t!==null&&window.clearTimeout(t),t=window.setTimeout(()=>{t=null,Ne({environmentId:s,cwd:e}).catch(()=>void 0)},l2)},r=()=>{document.visibilityState===`visible`&&n()};return window.addEventListener(`focus`,n),document.addEventListener(`visibilitychange`,r),()=>{t!==null&&window.clearTimeout(t),window.removeEventListener(`focus`,n),document.removeEventListener(`visibilitychange`,r)}},[s,e]);let Oe=(0,q.useCallback)(async()=>{let e=Cn();if(!e){Ve.add({type:`error`,title:`Link opening is unavailable.`,data:m});return}let t=U?.pr?.state===`open`?U.pr.url:null;if(!t){Ve.add({type:`error`,title:`No open pull request found.`,data:m});return}e.shell.openExternal(t).catch(e=>{Ve.add(fc({type:`error`,title:`Unable to open pull request link`,description:e instanceof Error?e.message:`An error occurred.`,...m===void 0?{}:{data:m}}))})},[U,m]);F=(0,q.useEffectEvent)(async({action:n,commitMessage:r,onConfirmed:i,skipDefaultBranchPrompt:a=!1,statusOverride:c,featureBranch:l=!1,progressToastId:d,filePaths:f})=>{let p=c??U,h=p?.refName??null,_=!l&&Ce,v=(n===`commit`||n===`commit_push`||n===`commit_push_pr`)&&(n===`commit`||!!p?.hasWorkingTreeChanges||l);if(!a&&K0(n,_)&&h){if(n!==`push`&&n!==`create_pr`&&n!==`commit_push`&&n!==`commit_push_pr`)return;j({action:n,branchName:h,includesCommit:v,...r?{commitMessage:r}:{},...i?{onConfirmed:i}:{},...f?{filePaths:f}:{}});return}i?.();let y=U0({action:n,hasCustomCommitMessage:!!r?.trim(),hasWorkingTreeChanges:!!p?.hasWorkingTreeChanges,featureBranch:l,terminology:ie,shouldPushBeforePr:n===`create_pr`&&(!p?.hasUpstream||(p?.aheadCount??0)>0)}),b=m?{...m}:void 0,x=t?u(t):null,S=Zt(),C=d??Ve.add({type:`loading`,title:y[0]??`Running git action...`,description:`Waiting for Git...`,timeout:0,data:b});L({toastId:C,toastData:b,actionId:S,title:y[0]??`Running git action...`,phaseStartedAtMs:null,hookStartedAtMs:null,hookName:null,lastOutputLine:null,currentPhaseLabel:y[0]??`Running git action...`}),d&&Ve.update(d,{type:`loading`,title:y[0]??`Running git action...`,description:`Waiting for Git...`,timeout:0,data:b});let w=t=>{let n=M.current;if(!n||e&&t.cwd!==e||n.actionId!==t.actionId)return;let r=Date.now();switch(t.kind){case`action_started`:n.phaseStartedAtMs=r,n.hookStartedAtMs=null,n.hookName=null,n.lastOutputLine=null;break;case`phase_started`:n.title=t.label,n.currentPhaseLabel=t.label,n.phaseStartedAtMs=r,n.hookStartedAtMs=null,n.hookName=null,n.lastOutputLine=null;break;case`hook_started`:n.title=`Running ${t.hookName}...`,n.hookName=t.hookName,n.hookStartedAtMs=r,n.lastOutputLine=null;break;case`hook_output`:n.lastOutputLine=t.text;break;case`hook_finished`:n.title=n.currentPhaseLabel??`Committing...`,n.hookName=null,n.hookStartedAtMs=null,n.lastOutputLine=null;break;case`action_finished`:return;case`action_failed`:return}z()},T=ge.mutateAsync({actionId:S,action:n,worktreeId:g?.worktreeId?I.make(g.worktreeId):null,...r?{commitMessage:r}:{},...l?{featureBranch:l}:{},...f?{filePaths:f}:{},onProgress:w});try{let t=await T;R(),te(t),t.push.status===`pushed`&&s&&e&&o?.({environmentId:s,threadKey:x,cwd:e,action:t.action,commitSha:t.commit.commitSha??null,pullRequestNumber:t.pr.number??null});let n=()=>{Ve.close(C)},r=t.toast.cta,i=null;r.kind===`run_action`?i={children:r.label,onClick:()=>{n(),F({action:r.action.kind})}}:r.kind===`open_pr`&&(i={children:r.label,onClick:()=>{let e=Cn();e&&(n(),e.shell.openExternal(r.url))}});let a={...b,dismissAfterVisibleMs:1e4};i?Ve.update(C,fc({type:`success`,title:t.toast.title,description:t.toast.description,timeout:0,actionProps:i,actionVariant:`outline`,data:a})):Ve.update(C,{type:`success`,title:t.toast.title,description:t.toast.description,timeout:0,data:a})}catch(e){R(),Ve.update(C,fc({type:`error`,title:`Action failed`,description:e instanceof Error?e.message:`An error occurred.`,...b===void 0?{}:{data:b}}))}});let ke=()=>{if(!A)return;let{action:e,commitMessage:t,onConfirmed:n,filePaths:r}=A;j(null),F({action:e,...t?{commitMessage:t}:{},...n?{onConfirmed:n}:{},...r?{filePaths:r}:{},skipDefaultBranchPrompt:!0})},Ae=()=>{if(!A)return;let{action:e,commitMessage:t,onConfirmed:n,filePaths:r}=A;j(null),F({action:e,...t?{commitMessage:t}:{},...n?{onConfirmed:n}:{},...r?{filePaths:r}:{},featureBranch:!0,skipDefaultBranchPrompt:!0})},je=()=>{if(!b)return;let e=S.trim();x(!1),C(``),T(new Set),D(!1),F({action:`commit`,...e?{commitMessage:e}:{},...ce?{}:{filePaths:se.map(e=>e.path)},featureBranch:!0,skipDefaultBranchPrompt:!0})},Me=()=>{let e=_e.mutateAsync();Ve.promise(e,{loading:{title:`Pulling...`,data:m},success:e=>({title:e.status===`pulled`?`Pulled`:`Already up to date`,description:e.status===`pulled`?`Updated ${e.refName} from ${e.upstreamRef??`upstream`}`:`${e.refName} is already synchronized.`,data:m}),error:e=>({title:`Pull failed`,description:e instanceof Error?e.message:`An error occurred.`,data:m})}),e.catch(()=>void 0)},Pe=()=>{if(Te.kind===`open_pr`){Oe();return}if(Te.kind===`open_publish`){k(!0);return}if(Te.kind===`run_pull`){Me();return}if(Te.kind===`show_hint`){Ve.add({type:`info`,title:Te.label,description:Te.hint,data:m});return}Te.action&&F({action:Te.action})},Fe=e=>{if(!e.disabled){if(e.kind===`open_pr`){Oe();return}if(e.dialogAction===`push`){F({action:`push`});return}if(e.dialogAction===`create_pr`){F({action:`create_pr`});return}T(new Set),D(!1),x(!0)}},Ie=()=>{if(!b)return;let e=S.trim();x(!1),C(``),T(new Set),D(!1),F({action:`commit`,...e?{commitMessage:e}:{},...ce?{}:{filePaths:se.map(e=>e.path)}})},Le=(0,q.useCallback)(t=>{let n=Cn();if(!n||!e){Ve.add({type:`error`,title:`Editor opening is unavailable.`,data:m});return}let r=$d(t,e);lc(n,r).catch(e=>{Ve.add(fc({type:`error`,title:`Unable to open file`,description:e instanceof Error?e.message:`An error occurred.`,...m===void 0?{}:{data:m}}))})},[e,m]),Re=ae&&U!==null&&!H,ze=r?`truncate text-[11px] font-medium`:`sr-only @3xl/header-actions:not-sr-only @3xl/header-actions:truncate @3xl/header-actions:text-[11px] @3xl/header-actions:font-medium`,Be=G(`h-7 gap-1.5 border-border/50 bg-background/35 px-2 text-foreground/86 shadow-none before:shadow-none`,`dark:bg-background/20 dark:not-disabled:before:shadow-none`,`[:hover,[data-pressed]]:bg-muted/55 dark:[:hover,[data-pressed]]:bg-muted/35`,r?`min-w-0 max-w-45`:`max-w-7 @3xl/header-actions:max-w-45`),He=`flex size-4 shrink-0 items-center justify-center rounded-sm bg-muted/55 text-muted-foreground/75`,Ue=r?`block bg-border/50 dark:before:bg-border/45`:`hidden bg-border/50 dark:before:bg-border/45 @3xl/header-actions:block`,Ke=oe.length,qe=U?.refName??`branch`,Je=U?.behindCount??0,Ye=U?.hasWorkingTreeChanges??!1,Xe=U?.pr?.state===`open`,Ze=U?.hasUpstream??!1,Qe=ie.shortLabel,$e=U?.refName!=null&&(Ze||H);return e?(0,Y.jsxs)(Y.Fragment,{children:[ae?(0,Y.jsxs)(Wl,{"aria-label":`Git actions`,className:G(`shrink-0`,i&&`flex w-full`),children:[i?(0,Y.jsxs)(W,{variant:`default`,size:`sm`,className:`h-8 min-w-0 flex-1 justify-center gap-1.5 rounded-e-none px-3 text-[13px]`,disabled:xe||Te.disabled,title:Ee??void 0,onClick:Pe,children:[(0,Y.jsx)(x2,{quickAction:Te}),(0,Y.jsx)(`span`,{className:`truncate`,children:Te.label})]}):Ee?(0,Y.jsxs)(Gi,{children:[(0,Y.jsxs)(pi,{openOnHover:!0,render:(0,Y.jsx)(W,{"aria-disabled":`true`,className:G(Be,`cursor-not-allowed rounded-e-none border-e-0 opacity-64 before:rounded-e-none`),size:`xs`,variant:`outline`}),children:[(0,Y.jsx)(`span`,{className:He,children:(0,Y.jsx)(b2,{quickAction:Te,SourceControlIcon:V})}),(0,Y.jsx)(`span`,{className:ze,children:Te.label})]}),(0,Y.jsx)(hi,{tooltipStyle:!0,side:`bottom`,align:`start`,children:Ee})]}):(0,Y.jsxs)(W,{variant:`outline`,size:`xs`,className:Be,disabled:xe||Te.disabled,onClick:Pe,children:[(0,Y.jsx)(`span`,{className:He,children:(0,Y.jsx)(b2,{quickAction:Te,SourceControlIcon:V})}),(0,Y.jsx)(`span`,{className:ze,children:Te.label})]}),(0,Y.jsx)(Ul,{className:i?`hidden`:Ue}),(0,Y.jsxs)(ka,{onOpenChange:t=>{t&&Ne({environmentId:s,cwd:e}).catch(()=>void 0)},children:[(0,Y.jsx)(qi,{render:(0,Y.jsx)(W,{"aria-label":`Git action options`,className:i?`h-8 w-9 rounded-s-none border-s-primary-foreground/25 px-0`:`h-7 w-7 border-border/50 bg-background/35 text-muted-foreground/65 shadow-none before:shadow-none dark:bg-background/20 dark:not-disabled:before:shadow-none [:hover,[data-pressed]]:bg-muted/55 dark:[:hover,[data-pressed]]:bg-muted/35`,size:i?`sm`:`icon-xs`,variant:i?`default`:`outline`}),disabled:xe,children:(0,Y.jsx)(fr,{"aria-hidden":`true`,className:`size-4`})}),(0,Y.jsx)(_i,{align:`end`,className:i?`min-w-[248px]`:`w-full`,children:i?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(ji,{children:[(0,Y.jsx)(Ni,{className:`text-[10.5px] tracking-wider uppercase`,children:`Commit actions`}),(0,Y.jsxs)(Fi,{disabled:xe||!Ye,onClick:()=>void F({action:`commit`}),children:[(0,Y.jsx)(Ui,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`Commit only`}),(0,Y.jsxs)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:[Ke,` `,Ke===1?`file`:`files`]})]})]}),(0,Y.jsxs)(Fi,{disabled:xe||!Ye||!$e,onClick:()=>void F({action:`commit_push`}),children:[(0,Y.jsx)(Ou,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`Commit & Push`}),(0,Y.jsxs)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:[`to origin/`,qe]})]})]}),(0,Y.jsxs)(Fi,{disabled:xe||!Ye||Xe||!$e,onClick:()=>void F({action:`commit_push_pr`}),children:[(0,Y.jsx)(V,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsxs)(`span`,{className:`font-medium`,children:[`Commit, Push & open `,Qe]}),(0,Y.jsxs)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:[`from `,qe]})]})]})]}),(0,Y.jsx)(Vi,{}),(0,Y.jsxs)(Fi,{disabled:xe||!Ze||Je===0,onClick:Me,children:[(0,Y.jsx)(xi,{className:`text-muted-foreground`}),(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:`Pull`}),(0,Y.jsx)(`span`,{className:`truncate text-[11.5px] font-normal text-muted-foreground`,children:Ze?Je>0?`${Je} behind upstream`:`Up to date`:`No upstream`})]})]})]}):(0,Y.jsxs)(Y.Fragment,{children:[we.map(e=>{let t=g2({item:e,gitStatus:U,isBusy:xe,hasPrimaryRemote:H});return e.disabled&&t?(0,Y.jsxs)(Gi,{children:[(0,Y.jsx)(pi,{openOnHover:!0,nativeButton:!1,render:(0,Y.jsx)(`span`,{className:`block w-max cursor-not-allowed`}),children:(0,Y.jsxs)(Fi,{className:`w-full`,disabled:!0,children:[(0,Y.jsx)(y2,{icon:e.icon,SourceControlIcon:V}),e.label]})}),(0,Y.jsx)(hi,{tooltipStyle:!0,side:`left`,align:`center`,children:t})]},`${e.id}-${e.label}`):(0,Y.jsxs)(Fi,{disabled:e.disabled,onClick:()=>{Fe(e)},children:[(0,Y.jsx)(y2,{icon:e.icon,SourceControlIcon:V}),e.label]},`${e.id}-${e.label}`)}),Re?(0,Y.jsxs)(Fi,{disabled:xe,onClick:()=>{k(!0)},children:[(0,Y.jsx)(Ou,{}),`Publish repository...`]}):null,U?.refName===null&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-warning`,children:`Detached HEAD: create and checkout a refName to enable push and pull request actions.`}),U&&U.refName!==null&&!U.hasWorkingTreeChanges&&U.behindCount>0&&U.aheadCount===0&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-warning`,children:`Behind upstream. Pull/rebase first.`}),ne&&(0,Y.jsx)(`p`,{className:`px-2 py-1.5 text-xs text-destructive`,children:ne.message})]})})]})]}):(0,Y.jsx)(W,{variant:`outline`,size:`xs`,disabled:he.isPending,onClick:()=>he.mutate(),children:he.isPending?`Initializing...`:`Initialize Git`}),(0,Y.jsx)(vi,{open:b,onOpenChange:e=>{e||(x(!1),C(``),T(new Set),D(!1))},children:(0,Y.jsxs)(ia,{children:[(0,Y.jsxs)(ta,{children:[(0,Y.jsx)(Ri,{children:_2}),(0,Y.jsx)(qa,{children:v2})]}),(0,Y.jsxs)(Qi,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-input bg-muted/40 p-3 text-xs`,children:[(0,Y.jsxs)(`div`,{className:`grid grid-cols-[auto_1fr] items-center gap-x-2 gap-y-1`,children:[(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Branch`}),(0,Y.jsxs)(`span`,{className:`flex items-center justify-between gap-2`,children:[(0,Y.jsx)(`span`,{className:`font-medium`,children:U?.refName??`(detached HEAD)`}),Ce&&(0,Y.jsx)(`span`,{className:`text-right text-warning text-xs`,children:`Warning: default refName`})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[E&&oe.length>0&&(0,Y.jsx)(s2,{checked:ce,indeterminate:!ce&&!le,onCheckedChange:()=>{T(ce?new Set(oe.map(e=>e.path)):new Set)}}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Files`}),!ce&&!E&&(0,Y.jsxs)(`span`,{className:`text-muted-foreground`,children:[`(`,se.length,` of `,oe.length,`)`]})]}),oe.length>0&&(0,Y.jsx)(W,{variant:`ghost`,size:`xs`,onClick:()=>D(e=>!e),children:E?`Done`:`Edit`})]}),!U||oe.length===0?(0,Y.jsx)(`p`,{className:`font-medium`,children:`none`}):(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(ol,{className:`h-44 rounded-md border border-input bg-background`,children:(0,Y.jsx)(`div`,{className:`space-y-1 p-1`,children:oe.map(e=>{let t=w.has(e.path);return(0,Y.jsxs)(`div`,{className:`flex w-full items-center gap-2 rounded-md px-2 py-1 font-mono text-xs transition-colors hover:bg-accent/50`,children:[E&&(0,Y.jsx)(s2,{checked:!w.has(e.path),onCheckedChange:()=>{T(t=>{let n=new Set(t);return n.has(e.path)?n.delete(e.path):n.add(e.path),n})}}),(0,Y.jsxs)(`button`,{type:`button`,className:`flex flex-1 items-center justify-between gap-3 text-left truncate`,onClick:()=>Le(e.path),children:[(0,Y.jsx)(`span`,{className:`truncate${t?` text-muted-foreground`:``}`,children:e.path}),(0,Y.jsx)(`span`,{className:`shrink-0`,children:t?(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:`Excluded`}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,e.insertions]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:` / `}),(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`-`,e.deletions]})]})})]})]},e.path)})})}),(0,Y.jsxs)(`div`,{className:`flex justify-end font-mono`,children:[(0,Y.jsxs)(`span`,{className:`text-success`,children:[`+`,se.reduce((e,t)=>e+t.insertions,0)]}),(0,Y.jsx)(`span`,{className:`text-muted-foreground`,children:` / `}),(0,Y.jsxs)(`span`,{className:`text-destructive`,children:[`-`,se.reduce((e,t)=>e+t.deletions,0)]})]})]})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-1`,children:[(0,Y.jsx)(`p`,{className:`text-xs font-medium`,children:`Commit message (optional)`}),(0,Y.jsx)(di,{value:S,onChange:e=>C(e.target.value),placeholder:`Leave empty to auto-generate`,size:`sm`})]})]}),(0,Y.jsxs)(Ti,{children:[(0,Y.jsx)(W,{variant:`outline`,size:`sm`,onClick:()=>{x(!1),C(``),T(new Set),D(!1)},children:`Cancel`}),(0,Y.jsx)(W,{variant:`outline`,size:`sm`,disabled:le,onClick:je,children:`Commit on new refName`}),(0,Y.jsx)(W,{size:`sm`,disabled:le,onClick:Ie,children:`Commit`})]})]})}),(0,Y.jsx)(S2,{open:O,onOpenChange:k,environmentId:s,gitCwd:e}),(0,Y.jsx)(vi,{open:A!==null,onOpenChange:e=>{e||j(null)},children:(0,Y.jsxs)(ia,{className:`max-w-xl`,children:[(0,Y.jsxs)(ta,{children:[(0,Y.jsx)(Ri,{children:De?.title??`Run action on default refName?`}),(0,Y.jsx)(qa,{children:De?.description})]}),(0,Y.jsxs)(Ti,{className:`sm:flex-wrap sm:items-center`,children:[(0,Y.jsx)(W,{className:`w-full sm:mr-auto sm:w-auto`,variant:`outline`,size:`sm`,onClick:()=>j(null),children:`Abort`}),(0,Y.jsx)(W,{className:`min-h-8 w-full max-w-full whitespace-normal py-1.5 leading-snug sm:min-h-7 sm:w-auto`,variant:`outline`,size:`sm`,onClick:ke,children:De?.continueLabel??`Continue`}),(0,Y.jsx)(W,{className:`min-h-8 w-full max-w-full whitespace-normal py-1.5 leading-snug sm:min-h-7 sm:w-auto`,size:`sm`,onClick:Ae,children:`Checkout feature branch & continue`})]})]})})]}):null}var k2=ra;function A2(e){return{environmentId:e.environmentId,threadKey:e.threadKey??null,cwd:e.cwd,pullRequestNumber:e.pullRequestNumber??null,commitSha:e.commitSha?.trim()||null,expiresAtMs:e.nowMs+k2}}function j2(e){let{watch:t}=e;return!t||!e.environmentId||!e.cwd||e.nowMs>=t.expiresAtMs||t.environmentId!==e.environmentId||t.cwd!==e.cwd||t.threadKey!==null&&t.threadKey!==e.threadKey||t.pullRequestNumber!==null&&e.pullRequestNumber!==null&&t.pullRequestNumber!==e.pullRequestNumber?null:t}function M2(e){if(!e.watch||!e.runs||e.runs.length===0)return!1;let t=e.watch.commitSha;return t?e.runs.some(e=>{let n=e.commit.oid;return n===t||n.startsWith(t)||t.startsWith(n)}):!1}function N2(e){return e.activeWatch&&e.nowMs<e.activeWatch.expiresAtMs&&!e.discoveredPostPushRun?Li({mode:e.mode??`automatic`,phase:`discovery`,nowMs:e.nowMs,discoveryExpiresAtMs:e.activeWatch.expiresAtMs}):Li({mode:e.mode??`automatic`,phase:e.statusRefreshable?`active`:`settled`})}function P2(e){return e===`github`}function F2(e){return e.workflowRunsSupported?e.workflowError??e.detailError:e.detailError}function I2(e){let t=Ha(e.status),n=Ha(e.conclusion);return t===`skipped`||n===`skipped`?`Skipped`:e.statusKind===`passed`?`Succeeded`:e.statusKind===`failed`||e.statusKind===`api-error`?`Failed`:e.statusKind===`cancelled`?`Cancelled`:e.statusKind===`running`?`Running`:e.statusKind===`pending`||e.statusKind===`loading`?`Pending`:`Unknown`}function L2(e){return e===`loading`||e===`pending`||e===`running`}function R2(e){return L2(za(e).kind)}function z2(e){return to({name:e.name,status:e.status,conclusion:pa(e.conclusion),url:pa(e.url)})}function B2(e){return to({name:e.name,status:e.status,conclusion:pa(e.conclusion)})}function V2(e,t){return e.find(({status:e})=>t.includes(e.kind))?.step??null}function H2(e){return Ha(e.status)===`skipped`||Ha(pa(e.conclusion))===`skipped`}function U2(e){let t=e.steps.map(e=>({step:e,status:B2(e)}));return V2(t,[`failed`,`api-error`])??V2(t,[`running`])??V2(t,[`pending`,`loading`])??V2(t,[`cancelled`])??t.find(({step:e})=>H2(e))?.step??null}function W2(e){let t=(e??[]).map(e=>({job:e,status:z2(e)})),n=t.find(({status:e})=>e.kind===`running`)??t.find(({status:e})=>e.kind===`pending`||e.kind===`loading`)??null;if(!n)return;let r=U2(n.job);return r?`${n.job.name} / ${r.name}`:n.job.name}function G2(e){let t=za(e),n={id:`run:${e.runId}`,name:e.workflowName,statusLabel:I2({status:e.status,conclusion:pa(e.conclusion),statusKind:t.kind}),tone:t.tone,statusKind:t.kind,url:e.url};return e.displayTitle&&e.displayTitle!==e.workflowName&&(n.detail=e.displayTitle),n}function K2(e){let t=z2(e.job),n=U2(e.job),r=pa(e.job.url),i=[e.run.workflowName===e.job.name?null:e.run.workflowName,n?.name??null].filter(e=>!!e),a={id:`run:${e.run.runId}:job:${e.job.jobId}`,name:e.job.name,statusLabel:I2({status:e.job.status,conclusion:pa(e.job.conclusion),statusKind:t.kind}),tone:t.tone,statusKind:t.kind,url:r??e.run.url};return i.length>0&&(a.detail=i.join(` / `)),a}function q2(e,t){let n=to({name:e.name,workflowName:e.workflowName,status:pa(e.status),conclusion:pa(e.conclusion),url:pa(e.url)}),r=pa(e.url),i={id:`rollup:${t}:${e.kind}:${e.name}`,name:e.name,statusLabel:I2({status:pa(e.status),conclusion:pa(e.conclusion),statusKind:n.kind}),tone:n.tone,statusKind:n.kind};return e.workflowName&&e.workflowName!==e.name&&(i.detail=e.workflowName),r&&(i.url=r),i}function J2(e){let t=[],n=e.limit??40;for(let r of e.runs){let i=e.jobsByRunId.get(r.runId);if(i&&i.length>0){for(let e of i)if(t.push(K2({run:r,job:e})),t.length>=n)return t}else if(t.push(G2(r)),t.length>=n)return t}return t}function Y2(e){let t=e.limit??40;return(e.rollup??[]).slice(0,t).map(q2)}function X2(e){let t=new Set,n=e?.trim()??``;if(n.length===0)return t;t.add(n);let r=n.indexOf(`/`);if(r>0&&r<n.length-1){let e=n.slice(0,r);(e===`origin`||e===`upstream`)&&t.add(n.slice(r+1))}return t}function Z2(e,t){let n=X2(t);return n.size===0?null:e?.find(e=>n.has(e.headRefName))??null}function Q2(e){return e.activeWorktreePrNumber??e.gitStatusPrNumber??e.overviewBranchPullRequestNumber??e.postPushWatchPullRequestNumber??null}function $2(e){if(!e.workflowRunsSupported||e.pullRequestNumber===null&&(e.branchName??null)===null)return[];let t=(e.runs??[]).slice(0,8).map(e=>e.runId);return e.activeWorkflowRunId&&!t.includes(e.activeWorkflowRunId)?[e.activeWorkflowRunId,...t].slice(0,8):t}function e4(e){let t=[];if(e.gitStatusData||e.changedFiles.length>0){let{committed:n,local:r}=I0(e.changedFiles),i=L0({committed:n,local:r,pullRequestNumber:e.overviewPullRequestNumber});t.push({...i,action:`review`,icon:`changes`})}return t.push({label:`Environment`,value:e.activeEnvironmentUnavailableState?.label??`Local`,...e.activeEnvironmentUnavailableState?{detail:e.activeEnvironmentUnavailableState.connectionState}:{},icon:`environment`}),t}var t4=`calc(340px + 0.75rem)`;function n4(e){let t=(0,J.c)(17),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`w-(--overview-sidebar-frame-width) opacity-100`:`w-0 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`h-full min-h-0 shrink-0 overflow-hidden pt-[var(--chat-header-clearance,0px)] transition-[width,opacity] duration-[320ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(d={"--overview-sidebar-frame-width":t4},t[6]=d):d=t[6];let f=o?`translate-x-0 opacity-100`:`translate-x-5 opacity-0`,p;t[7]===f?p=t[8]:(p=G(`h-full min-h-0 w-(--overview-sidebar-frame-width) transition-[translate,opacity] duration-[320ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,f),t[7]=f,t[8]=p);let m;t[9]!==e.children||t[10]!==p?(m=(0,Y.jsx)(`div`,{className:p,children:e.children}),t[9]=e.children,t[10]=p,t[11]=m):m=t[11];let h;return t[12]!==s||t[13]!==c||t[14]!==u||t[15]!==m?(h=(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,style:d,children:m}),t[12]=s,t[13]=c,t[14]=u,t[15]=m,t[16]=h):h=t[16],h}function r4(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`translate-x-0 opacity-100`:`translate-x-3 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`origin-top-right transition-[translate,opacity] duration-[260ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;return t[6]!==e.children||t[7]!==s||t[8]!==c||t[9]!==u?(d=(0,Y.jsx)(`div`,{className:`pointer-events-none absolute top-[calc(var(--chat-header-clearance,0px)+0.75rem)] right-3 z-40`,children:(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,children:e.children})}),t[6]=e.children,t[7]=s,t[8]=c,t[9]=u,t[10]=d):d=t[10],d}function i4(){let e=(0,J.c)(7),[t,n]=(0,q.useState)(null),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=e=>{n(A2({environmentId:e.environmentId,threadKey:e.threadKey,cwd:e.cwd,pullRequestNumber:e.pullRequestNumber,commitSha:e.commitSha,nowMs:Date.now()})),Zi({environmentId:e.environmentId,cwd:e.cwd})},e[0]=r):r=e[0];let i=r,a,o;e[1]===t?(a=e[2],o=e[3]):(a=()=>{if(!t)return;let e=window.setTimeout(()=>n(e=>e===t?null:e),Math.max(0,t.expiresAtMs-Date.now()));return()=>window.clearTimeout(e)},o=[t],e[1]=t,e[2]=a,e[3]=o),(0,q.useEffect)(a,o);let s;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=()=>{n(null)},e[4]=s):s=e[4];let c=s,l;return e[5]===t?l=e[6]:(l={postPushWorkflowWatch:t,handlePostPush:i,clearWatch:c},e[5]=t,e[6]=l),l}function a4(e){let t=(0,J.c)(21),{gitCwd:n,activeThreadRef:r,routeKind:i,draftId:a,onPostPush:o,branchControlThread:s,isGitRepo:c,canOverrideServerThreadBranch:l,activeThreadBranch:u,onActiveThreadBranchOverrideChange:d,envLocked:f,onComposerFocusRequest:p,canCheckoutPullRequestIntoThread:m,onCheckoutPullRequestRequest:h}=e,g;t[0]!==r||t[1]!==a||t[2]!==n||t[3]!==o||t[4]!==i?(g=e=>n&&r?(0,Y.jsx)(O2,{gitCwd:n,activeThreadRef:r,detectedChangeRequest:e,...i===`draft`&&a?{draftId:a}:{},onPostPush:o,showLabels:!0,block:!0}):null,t[0]=r,t[1]=a,t[2]=n,t[3]=o,t[4]=i,t[5]=g):g=t[5];let _=g,v;t[6]!==u||t[7]!==s||t[8]!==m||t[9]!==l||t[10]!==a||t[11]!==f||t[12]!==c||t[13]!==d||t[14]!==h||t[15]!==p||t[16]!==i?(v=s&&c?(0,Y.jsx)(JG,{appearance:`panelRow`,className:`w-full`,environmentId:s.environmentId,threadId:s.id,...i===`draft`&&a?{draftId:a}:{},...l?{activeThreadBranchOverride:u,onActiveThreadBranchOverrideChange:d}:{},envLocked:f,onComposerFocusRequest:p,...m?{onCheckoutPullRequestRequest:h}:{}}):null,t[6]=u,t[7]=s,t[8]=m,t[9]=l,t[10]=a,t[11]=f,t[12]=c,t[13]=d,t[14]=h,t[15]=p,t[16]=i,t[17]=v):v=t[17];let y=v,b;return t[18]!==y||t[19]!==_?(b={sourceControlActions:_,branchControl:y},t[18]=y,t[19]=_,t[20]=b):b=t[20],b}function o4(e){let t=(0,J.c)(143),{environmentId:n,gitCwd:r,activeWorktreeBranch:i,activeThreadBranch:a,activeWorktreePrNumber:o,activeWorktreePrState:s,activeWorktreePrIsDraft:c,activeWorktreeTitle:l,postPushWorkflowWatch:u,activeThreadKey:d,activeEnvironmentUnavailableState:f,activePlan:p,sidebarProposedPlan:m,threadSubagents:h,changedFileSummaries:g,sourceControlActions:_,branchControl:v,markdownCwd:y,workspaceRoot:b,mode:x,onClose:S,onOpenFiles:C,onOpenReview:w,onOpenSubagent:T,onPostPushDiscoveryComplete:E}=e,D=St(f4),O;t[0]!==n||t[1]!==r?(O={environmentId:n,cwd:r},t[0]=n,t[1]=r,t[2]=O):O=t[2];let k=We(O),A=i??a??k.data?.refName??null,j=A!==null&&o==null&&k.data?.pr==null,M;t[3]!==n||t[4]!==r||t[5]!==j?(M={environmentId:n,cwd:r,enabled:j},t[3]=n,t[4]=r,t[5]=j,t[6]=M):M=t[6];let N=E1(M),P;t[7]!==A||t[8]!==N.data?(P=Z2(N.data,A),t[7]=A,t[8]=N.data,t[9]=P):P=t[9];let F=P,I,L;if(t[10]!==d||t[11]!==o||t[12]!==n||t[13]!==r||t[14]!==k.data?.pr?.number||t[15]!==F?.number||t[16]!==u){let e=j2({watch:u,environmentId:n,threadKey:d,cwd:r,pullRequestNumber:null,nowMs:Date.now()});I=Q2({activeWorktreePrNumber:o,gitStatusPrNumber:k.data?.pr?.number??null,overviewBranchPullRequestNumber:F?.number??null,postPushWatchPullRequestNumber:e?.pullRequestNumber??null}),L=j2({watch:e,environmentId:n,threadKey:d,cwd:r,pullRequestNumber:I,nowMs:Date.now()}),t[10]=d,t[11]=o,t[12]=n,t[13]=r,t[14]=k.data?.pr?.number,t[15]=F?.number,t[16]=u,t[17]=I,t[18]=L}else I=t[17],L=t[18];let R=L,z=I===null?null:String(I),ee=k.data?.sourceControlProvider?.kind??null,te=I!==null,B;t[19]!==n||t[20]!==r||t[21]!==z||t[22]!==te?(B={environmentId:n,cwd:r,reference:z,enabled:te},t[19]=n,t[20]=r,t[21]=z,t[22]=te,t[23]=B):B=t[23];let ne=D1(B),re=ne.data?.provider??F?.provider??ee,ie;t[24]===re?ie=t[25]:(ie=P2(re),t[24]=re,t[25]=ie);let V=ie,ae=V&&I===null&&k.data?.isDefaultRef===!0&&k.data?.hasPrimaryRemote===!0,H=ae?k.data?.refName??null:null,U=V&&(I!==null||H!==null),oe;t[26]!==R||t[27]!==D?(oe=e=>{let t=e?ca({runs:e.runs,headSha:pa(e.headSha)}):null;return N2({mode:D,activeWatch:R,nowMs:Date.now(),discoveredPostPushRun:M2({watch:R,runs:e?.runs}),statusRefreshable:t?Qa(t):!1})},t[26]=R,t[27]=D,t[28]=oe):oe=t[28];let se=oe,ce=R?.commitSha??null,le;t[29]!==n||t[30]!==r||t[31]!==H||t[32]!==I||t[33]!==U||t[34]!==se||t[35]!==ce?(le={environmentId:n,cwd:r,pullRequestNumber:I,branch:H,commitSha:ce,enabled:U,resolveIntervalMs:se},t[29]=n,t[30]=r,t[31]=H,t[32]=I,t[33]=U,t[34]=se,t[35]=ce,t[36]=le):le=t[36];let ue=k1(le),de;t[37]!==R||t[38]!==E||t[39]!==ue.data?.runs?(de=()=>{R&&M2({watch:R,runs:ue.data?.runs})&&E()},t[37]=R,t[38]=E,t[39]=ue.data?.runs,t[40]=de):de=t[40];let fe=ue.data?.runs,pe;t[41]!==R||t[42]!==E||t[43]!==fe?(pe=[R,fe,E],t[41]=R,t[42]=E,t[43]=fe,t[44]=pe):pe=t[44],(0,q.useEffect)(de,pe);let me;t[45]===ue.data?.runs?me=t[46]:(me=ue.data?.runs??[],t[45]=ue.data?.runs,t[46]=me);let he=me,ge;t[47]===he?ge=t[48]:(ge=he.find(R2)?.runId??null,t[47]=he,t[48]=ge);let _e=ge,ve;t[49]!==_e||t[50]!==H||t[51]!==I||t[52]!==ue.data?.runs||t[53]!==V?(ve=()=>$2({workflowRunsSupported:V,pullRequestNumber:I,branchName:H,runs:ue.data?.runs,activeWorkflowRunId:_e}),t[49]=_e,t[50]=H,t[51]=I,t[52]=ue.data?.runs,t[53]=V,t[54]=ve):ve=t[54],ue.data?.runs;let ye;t[55]===ve?ye=t[56]:(ye=ve(),t[55]=ve,t[56]=ye);let be=ye,xe=V&&(I!==null||H!==null),Se;t[57]!==n||t[58]!==r||t[59]!==_e||t[60]!==be||t[61]!==xe?(Se={environmentId:n,cwd:r,runIds:be,activeRunId:_e,enabled:xe},t[57]=n,t[58]=r,t[59]=_e,t[60]=be,t[61]=xe,t[62]=Se):Se=t[62];let{jobsByRunId:Ce,isLoading:we}=A1(Se),Te;t[63]!==ne.error||t[64]!==ue.error||t[65]!==V?(Te=B0(F2({workflowRunsSupported:V,workflowError:ue.error,detailError:ne.error})),t[63]=ne.error,t[64]=ue.error,t[65]=V,t[66]=Te):Te=t[66];let Ee=Te,De;t[67]!==c||t[68]!==s||t[69]!==l||t[70]!==Ee||t[71]!==k.data?.pr||t[72]!==_e||t[73]!==F||t[74]!==ae||t[75]!==ne.data||t[76]!==ne.error||t[77]!==ne.isLoading||t[78]!==I||t[79]!==Ce||t[80]!==we||t[81]!==ue.data||t[82]!==ue.error||t[83]!==ue.isLoading||t[84]!==V?(De=()=>{let e=I!==null;if(!e&&!ae)return null;let t=e?k.data?.pr??null:null,n=e?F:null,r=e?ne.data??null:null,i=V?ue.data??null:null,a=F2({workflowRunsSupported:V,workflowError:ue.error,detailError:ne.error}),o=_e===null?void 0:W2(Ce.get(_e)),u=i&&V?Xa({isLoading:ue.isLoading,error:ue.error,status:ca({runs:i.runs,headSha:pa(i.headSha)})}):r?Oa(r):n?Oa(n):Xa({isLoading:V&&ue.isLoading||ne.isLoading,error:a,status:null}),d=i?J2({runs:i.runs,jobsByRunId:Ce}):[],f=Y2({rollup:r?.checkRollup??n?.checkRollup}),p=Array.from(Ce.values()).some(d4)?d:f.length>0?f:d;if(o)for(let e of p)L2(e.statusKind)&&_e!==null&&e.id.startsWith(`run:${_e}`)&&(e.activeDetail=o);let m=p.filter(u4),h=Ee,g=V&&ue.isLoading||e&&ne.isLoading||we,_=m.length>0?m.length:u&&L2(u.kind)?1:0;if(I===null)return!g&&p.length===0&&!h?null:{checkStatus:u,checksLoading:g,...h?{checksError:h}:{},hasMergeConflicts:!1,activeCheckCount:_,runs:m,latestRuns:p};let v=r?.url??t?.url??n?.url??null,y=r?.state??s??t?.state??n?.state??null,b=r?.isDraft??c??n?.isDraft,x=r?.participants?r.participants.filter(l4).length:void 0,S=r?.reviewers?r.reviewers.length:void 0;return{number:I,title:r?.title??t?.title??n?.title??l??`Pull request #${I}`,...v?{url:v}:{},...y?{state:y}:{},...typeof b==`boolean`?{isDraft:b}:{},...typeof r?.commentsCount==`number`?{commentsCount:r.commentsCount}:r?{commentsCount:r.comments.length}:typeof n?.commentsCount==`number`?{commentsCount:n.commentsCount}:{},...typeof x==`number`?{reviewsApproved:x}:{},...typeof S==`number`?{reviewsRequested:S}:{},checkStatus:u,checksLoading:g,...h?{checksError:h}:{},...r?.mergeability?{mergeability:r.mergeability}:{},hasMergeConflicts:r?.mergeability===`conflicting`,activeCheckCount:_,runs:m,latestRuns:p}},t[67]=c,t[68]=s,t[69]=l,t[70]=Ee,t[71]=k.data?.pr,t[72]=_e,t[73]=F,t[74]=ae,t[75]=ne.data,t[76]=ne.error,t[77]=ne.isLoading,t[78]=I,t[79]=Ce,t[80]=we,t[81]=ue.data,t[82]=ue.error,t[83]=ue.isLoading,t[84]=V,t[85]=De):De=t[85],k.data?.pr;let Oe;t[86]===De?Oe=t[87]:(Oe=De(),t[86]=De,t[87]=Oe);let ke=Oe,Ae=(0,q.useRef)(null),je,Me;t[88]!==Ee||t[89]!==I?(je=()=>{if(!Ee){Ae.current=null;return}let e=`${I??`?`}|${Ee.kind}|${Ee.message}`;if(Ae.current===e)return;Ae.current=e,Ee.raw&&console.debug(`[overview] source control fetch failed:`,Ee.raw);let t=I===null;Ve.add(fc({type:Ee.kind===`terminal`?`error`:`warning`,title:Ee.kind===`terminal`?t?`Checks unavailable`:`Pull request unavailable`:t?`Couldn't refresh checks`:`Couldn't refresh pull request`,description:Ee.message}))},Me=[Ee,I],t[88]=Ee,t[89]=I,t[90]=je,t[91]=Me):(je=t[90],Me=t[91]),(0,q.useEffect)(je,Me);let Ne;t[92]===g?Ne=t[93]:(Ne=g??[],t[92]=g,t[93]=Ne);let Pe;t[94]===k.data?.workingTree.files?Pe=t[95]:(Pe=k.data?.workingTree.files??[],t[94]=k.data?.workingTree.files,t[95]=Pe);let Fe;t[96]===k.data?.committed?.files?Fe=t[97]:(Fe=k.data?.committed?.files??[],t[96]=k.data?.committed?.files,t[97]=Fe);let Ie;t[98]!==Ne||t[99]!==Pe||t[100]!==Fe?(Ie=N0(Ne,Pe,Fe),t[98]=Ne,t[99]=Pe,t[100]=Fe,t[101]=Ie):Ie=t[101];let Le=Ie,Re;t[102]!==f||t[103]!==Le||t[104]!==k.data||t[105]!==I?(Re=e4({gitStatusData:k.data,changedFiles:Le,overviewPullRequestNumber:I,activeEnvironmentUnavailableState:f}),t[102]=f,t[103]=Le,t[104]=k.data,t[105]=I,t[106]=Re):Re=t[106];let ze=Re,Be;bb0:{let e=k.data;if(!e&&Le.length===0){Be=void 0;break bb0}let n;t[107]===Le?n=t[108]:(n=Le.reduce(c4,0),t[107]=Le,t[108]=n);let r=n,i;t[109]===Le?i=t[110]:(i=Le.reduce(s4,0),t[109]=Le,t[110]=i);let a=i,o=e?.refName??null,s=e?.aheadCount??0,c=e?.behindCount??0,l;t[111]!==Le||t[112]!==a||t[113]!==r||t[114]!==o||t[115]!==s||t[116]!==c?(l={files:Le,insertions:r,deletions:a,refName:o,aheadCount:s,behindCount:c},t[111]=Le,t[112]=a,t[113]=r,t[114]=o,t[115]=s,t[116]=c,t[117]=l):l=t[117],Be=l}let He=Be,Ue;t[118]!==n||t[119]!==r?(Ue=()=>{Zi({environmentId:n,cwd:r})},t[118]=n,t[119]=r,t[120]=Ue):Ue=t[120];let Ge=Ue,Ke=ne.isFetching||V&&ue.isFetching,qe=ne.data??F??null,Je;t[121]!==qe||t[122]!==_?(Je=_(qe),t[121]=qe,t[122]=_,t[123]=Je):Je=t[123];let Ye;return t[124]!==p||t[125]!==v||t[126]!==n||t[127]!==Ge||t[128]!==Ke||t[129]!==y||t[130]!==x||t[131]!==S||t[132]!==C||t[133]!==w||t[134]!==T||t[135]!==He||t[136]!==ze||t[137]!==ke||t[138]!==m||t[139]!==Je||t[140]!==h||t[141]!==b?(Ye=(0,Y.jsx)(A0,{activePlan:p,activeProposedPlan:m,changes:He,overviewItems:ze,pullRequest:ke,onRefreshPullRequest:Ge,isRefreshingPullRequest:Ke,subagents:h,sourceControlActions:Je,branchControl:v,environmentId:n,markdownCwd:y,workspaceRoot:b,mode:x,onClose:S,onOpenFiles:C,onOpenReview:w,onOpenSubagent:T}),t[124]=p,t[125]=v,t[126]=n,t[127]=Ge,t[128]=Ke,t[129]=y,t[130]=x,t[131]=S,t[132]=C,t[133]=w,t[134]=T,t[135]=He,t[136]=ze,t[137]=ke,t[138]=m,t[139]=Je,t[140]=h,t[141]=b,t[142]=Ye):Ye=t[142],Ye}function s4(e,t){return e+t.deletions}function c4(e,t){return e+t.insertions}function l4(e){return e.approved===!0}function u4(e){return L2(e.statusKind)}function d4(e){return e.length>0}function f4(e){return e.sourceControlRefreshMode}function p4(e){let t=(0,J.c)(19),{activeThreadId:n,keybindings:r,terminalOpen:i,activeTerminalId:a,readComposer:o,activeProject:s,toggleTerminalVisibility:c,splitTerminal:l,closeTerminal:u,createNewTerminal:d,setTerminalOpen:f,onToggleDiff:p,onOpenFilesPanel:m,onOpenReviewPanel:h,onOpenTerminalPanel:g,onOpenSimulatorPanel:_,runProjectScript:v}=e,y,b;t[0]!==s||t[1]!==a||t[2]!==n||t[3]!==u||t[4]!==d||t[5]!==r||t[6]!==m||t[7]!==h||t[8]!==_||t[9]!==g||t[10]!==p||t[11]!==o||t[12]!==v||t[13]!==f||t[14]!==l||t[15]!==i||t[16]!==c?(y=()=>{let e=e=>{if(!n||Jr.getState().open||e.defaultPrevented)return;let t=o()?.isModelPickerOpen()??!1,y={terminalFocus:No(),terminalOpen:!!i,modelPickerOpen:t},b=Gl(e,r,{context:y});if(fu(e)&&(b!==`modelPicker.toggle`||!t)||!b)return;if(b===`terminal.toggle`){e.preventDefault(),e.stopPropagation(),c();return}if(b===`terminal.split`){e.preventDefault(),e.stopPropagation(),i||f(!0),l();return}if(b===`terminal.close`){if(e.preventDefault(),e.stopPropagation(),!i)return;u(a);return}if(b===`terminal.new`){e.preventDefault(),e.stopPropagation(),i||f(!0),d();return}if(b===`diff.toggle`){e.preventDefault(),e.stopPropagation(),p();return}if(b===`workspace.files`){e.preventDefault(),e.stopPropagation(),m();return}if(b===`workspace.review`){e.preventDefault(),e.stopPropagation(),h();return}if(b===`workspace.terminal`){e.preventDefault(),e.stopPropagation(),g();return}if(b===`workspace.simulator`){e.preventDefault(),e.stopPropagation(),_();return}if(b===`modelPicker.toggle`){e.preventDefault(),e.stopPropagation(),o()?.toggleModelPicker();return}let x=A$(b);if(!x||!s)return;let S=s.scripts.find(e=>e.id===x);S&&(e.preventDefault(),e.stopPropagation(),v(S))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},b=[s,i,a,n,u,d,f,v,l,r,p,m,h,g,_,o,c],t[0]=s,t[1]=a,t[2]=n,t[3]=u,t[4]=d,t[5]=r,t[6]=m,t[7]=h,t[8]=_,t[9]=g,t[10]=p,t[11]=o,t[12]=v,t[13]=f,t[14]=l,t[15]=i,t[16]=c,t[17]=y,t[18]=b):(y=t[17],b=t[18]),Vs(y,b)}var m4={};function h4(e){let{pendingUserInputs:t,respondingUserInputRequestIds:n,readComposer:r,promptRef:i}=e,a=e.onRespondToUserInput,[o,s]=(0,q.useState)({}),[c,l]=(0,q.useState)({}),u=t[0]??null,d=(0,q.useMemo)(()=>u?o[u.userInputIdentity?.requestEventId??u.requestId]??m4:m4,[u,o]),f=u?c[u.userInputIdentity?.requestEventId??u.requestId]??0:0,p=(0,q.useMemo)(()=>u?Zk(u.questions,d,f):null,[d,f,u]),m=(0,q.useMemo)(()=>u?Yk(u.questions,d):null,[d,u]),h=u?n.includes(u.requestId)||u.responseState===`submitting`||u.responseState===`uncertain`:!1,g=(0,q.useCallback)(e=>{u&&l(t=>({...t,[u.userInputIdentity?.requestEventId??u.requestId]:e}))},[u]);return{activePendingUserInput:u,activePendingDraftAnswers:d,activePendingQuestionIndex:f,activePendingProgress:p,activePendingResolvedAnswers:m,activePendingIsResponding:h,onSelectActivePendingUserInputOption:(0,q.useCallback)((e,t)=>{u&&(s(n=>{let r=(p?.activeQuestion?.id===e?p.activeQuestion:void 0)??u.questions.find(t=>t.id===e);return r?{...n,[u.userInputIdentity?.requestEventId??u.requestId]:{...n[u.userInputIdentity?.requestEventId??u.requestId],[e]:Jk(r,n[u.userInputIdentity?.requestEventId??u.requestId]?.[e],t)}}:n}),i.current=``,r()?.resetCursorState({cursor:0}))},[p?.activeQuestion,u,i,r]),onChangeActivePendingUserInputCustomAnswer:(0,q.useCallback)((e,t,n,a,o)=>{if(!u)return;i.current=t,s(n=>({...n,[u.userInputIdentity?.requestEventId??u.requestId]:{...n[u.userInputIdentity?.requestEventId??u.requestId],[e]:qk(n[u.userInputIdentity?.requestEventId??u.requestId]?.[e],t)}}));let c=r()?.readSnapshot();(c?.value!==t||c.cursor!==n||c.expandedCursor!==a)&&r()?.focusAt(n)},[u,i,r]),onAdvanceActivePendingUserInput:(0,q.useCallback)(()=>{if(u&&p){if(p.isLastQuestion){m&&!h&&a(u.requestId,m,u.userInputIdentity);return}g(p.questionIndex+1)}},[p,h,m,u,a,g]),onPreviousActivePendingUserInputQuestion:(0,q.useCallback)(()=>{p&&g(Math.max(p.questionIndex-1,0))},[p,g])}}function g4(e){let t=(0,J.c)(3),n=(0,q.useRef)(e),r;t[0]===e?r=t[1]:(r=()=>{n.current=e},t[0]=e,t[1]=r),(0,q.useLayoutEffect)(r);let i;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(...e)=>{let t=e;return n.current(...t)},t[2]=i):i=t[2],i}var _4=e=>({...Kl(e),diff:void 0,diffTurnId:void 0,diffFilePath:void 0,preview:void 0,workspaceOpen:void 0,workspaceTab:void 0,workspaceAgentKey:void 0});function v4(e){let t=(0,J.c)(85),{navigate:n,environmentId:r,threadId:i,routeKind:a,draftId:o,isServerThread:s,hasActiveProject:c,diffOpen:l,workspacePanelOpen:u,externalToggleWorkspacePanel:d,onDiffPanelOpen:f,onPreviewPanelOpen:p,onTerminalPanelOpen:m,onSimulatorPanelOpen:h,onAgentPanelOpen:g}=e,_=xc()===`phone`,v;t[0]!==r||t[1]!==s||t[2]!==n||t[3]!==f||t[4]!==i?(v=()=>{s&&(f?.(),n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:w4}))},t[0]=r,t[1]=s,t[2]=n,t[3]=f,t[4]=i,t[5]=v):v=t[5];let y=g4(v),b;t[6]!==l||t[7]!==r||t[8]!==s||t[9]!==n||t[10]!==y||t[11]!==i?(b=()=>{if(s){if(!l){y();return}n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e=>l?_4(e):Xl(e)})}},t[6]=l,t[7]=r,t[8]=s,t[9]=n,t[10]=y,t[11]=i,t[12]=b):b=t[12];let x=g4(b),S;t[13]!==o||t[14]!==r||t[15]!==c||t[16]!==n||t[17]!==p||t[18]!==a||t[19]!==i?(S=()=>{if(!c)return;p?.();let e=C4;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[13]=o,t[14]=r,t[15]=c,t[16]=n,t[17]=p,t[18]=a,t[19]=i,t[20]=S):S=t[20];let C=g4(S),w;t[21]!==o||t[22]!==r||t[23]!==s||t[24]!==n||t[25]!==m||t[26]!==a||t[27]!==i?(w=()=>{m?.();let e=S4;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[21]=o,t[22]=r,t[23]=s,t[24]=n,t[25]=m,t[26]=a,t[27]=i,t[28]=w):w=t[28];let T=g4(w),E;t[29]!==o||t[30]!==r||t[31]!==_||t[32]!==s||t[33]!==n||t[34]!==h||t[35]!==a||t[36]!==i?(E=()=>{if(_)return;h?.();let e=x4;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[29]=o,t[30]=r,t[31]=_,t[32]=s,t[33]=n,t[34]=h,t[35]=a,t[36]=i,t[37]=E):E=t[37];let D=g4(E),O;t[38]!==o||t[39]!==r||t[40]!==d||t[41]!==s||t[42]!==n||t[43]!==a||t[44]!==i||t[45]!==u?(O=()=>{if(d){d();return}let e=e=>u?_4(e):uu(e);if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[38]=o,t[39]=r,t[40]=d,t[41]=s,t[42]=n,t[43]=a,t[44]=i,t[45]=u,t[46]=O):O=t[46];let k=g4(O),A;t[47]!==r||t[48]!==s||t[49]!==n||t[50]!==f||t[51]!==i?(A=(e,t)=>{s&&(f?.(),n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},search:n=>Xl(n,{diffTurnId:e,diffFilePath:t??void 0})}))},t[47]=r,t[48]=s,t[49]=n,t[50]=f,t[51]=i,t[52]=A):A=t[52];let j=A,M;t[53]!==r||t[54]!==s||t[55]!==n||t[56]!==i?(M=()=>{s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},search:b4})},t[53]=r,t[54]=s,t[55]=n,t[56]=i,t[57]=M):M=t[57];let N=M,P;t[58]!==o||t[59]!==r||t[60]!==_||t[61]!==s||t[62]!==n||t[63]!==a||t[64]!==i?(P=()=>{if(_)return;let e=y4;if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},replace:!0,search:e});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},replace:!0,search:e})},t[58]=o,t[59]=r,t[60]=_,t[61]=s,t[62]=n,t[63]=a,t[64]=i,t[65]=P):P=t[65];let F=g4(P),I;t[66]!==o||t[67]!==r||t[68]!==s||t[69]!==n||t[70]!==g||t[71]!==a||t[72]!==i?(I=e=>{g?.();let t=t=>eu(t,e.key);if(a===`draft`&&o){n({to:`/draft/$draftId`,params:{draftId:o},search:t});return}s&&n({to:`/$environmentId/$threadId`,params:{environmentId:r,threadId:i},search:t})},t[66]=o,t[67]=r,t[68]=s,t[69]=n,t[70]=g,t[71]=a,t[72]=i,t[73]=I):I=t[73];let L=I,R;return t[74]!==N||t[75]!==F||t[76]!==C||t[77]!==y||t[78]!==D||t[79]!==L||t[80]!==T||t[81]!==j||t[82]!==x||t[83]!==k?(R={onOpenReviewPanel:y,onToggleDiff:x,onOpenFilesPanel:C,onOpenTerminalPanel:T,onOpenSimulatorPanel:D,onToggleWorkspacePanel:k,onOpenTurnDiff:j,onCloseDiff:N,onOpenAgentsPanel:F,onOpenSubagentPanel:L},t[74]=N,t[75]=F,t[76]=C,t[77]=y,t[78]=D,t[79]=L,t[80]=T,t[81]=j,t[82]=x,t[83]=k,t[84]=R):R=t[84],R}function y4(e){return Jl(e)}function b4(e){return _4(e)}function x4(e){return Yl(e)}function S4(e){return Zl(e)}function C4(e){return tu(e)}function w4(e){return Xl(e)}var T4=[];function E4(e){return me((0,q.useMemo)(()=>{let t=[],n=[],r=new Map;return i=>{let a=t.length===e.length&&t.every((t,n)=>t===e[n]),o=new Map,s=[],c=!a;for(let t of e){let e,n,a;for(let r of Object.values(i.environmentStateById)){let i=r.threadShellById[t];if(i){e=i,n=r.proposedPlanIdsByThreadId[t],a=r.proposedPlanByThreadId[t];break}}if(!e){let e=r.get(t);if(e&&e.shell===null&&e.proposedPlanIds===void 0&&e.proposedPlansById===void 0){o.set(t,e);continue}c=!0,o.set(t,{shell:null,proposedPlanIds:void 0,proposedPlansById:void 0,entry:{id:t,proposedPlans:T4}});continue}let l=r.get(t);if(l&&l.shell===e&&l.proposedPlanIds===n&&l.proposedPlansById===a){o.set(t,l),s.push(l.entry);continue}c=!0;let u={id:t,proposedPlans:n&&n.length>0&&a?n.flatMap(e=>{let t=a?.[e];return t?[t]:[]}):T4};o.set(t,{shell:e,proposedPlanIds:n,proposedPlansById:a,entry:u}),s.push(u)}return!c&&n.length===s.length?n:(t=e,r=o,n=s,s)}},[e]))}function D4(e){let t=(0,J.c)(19),[n,r]=(0,q.useState)(null),i;t[0]===e.activeThread?i=t[1]:(i=t=>{let n=!!t?.preparingWorktree;r(r=>r?r.preparingWorktree===n?r:{...r,preparingWorktree:n}:MA(e.activeThread,t))},t[0]=e.activeThread,t[1]=i);let a=i,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{r(null)},t[2]=o):o=t[2];let s=o;e.activeThread?.session;let c=e.activeThread?.session??null,l=e.activePendingApproval!==null,u=e.activePendingUserInput!==null,d;t[3]!==e.activeLatestTurn||t[4]!==e.phase||t[5]!==e.threadError||t[6]!==n||t[7]!==c||t[8]!==l||t[9]!==u?(d=NA({localDispatch:n,phase:e.phase,latestTurn:e.activeLatestTurn,session:c,hasPendingApproval:l,hasPendingUserInput:u,threadError:e.threadError}),t[3]=e.activeLatestTurn,t[4]=e.phase,t[5]=e.threadError,t[6]=n,t[7]=c,t[8]=l,t[9]=u,t[10]=d):d=t[10];let f=d,p,m;t[11]===f?(p=t[12],m=t[13]):(p=()=>{f&&s()},m=[s,f],t[11]=f,t[12]=p,t[13]=m),(0,q.useEffect)(p,m);let h=n?.startedAt??null,g=n?.preparingWorktree??!1,_=n!==null&&!f,v;return t[14]!==a||t[15]!==_||t[16]!==h||t[17]!==g?(v={beginLocalDispatch:a,resetLocalDispatch:s,localDispatchStartedAt:h,isPreparingWorktree:g,isSendBusy:_},t[14]=a,t[15]=_,t[16]=h,t[17]=g,t[18]=v):v=t[18],v}var O4=120,k4=30;function A4(e){let{environmentId:t,activeThread:n,activeThreadId:r,activeThreadRef:i,activeProject:o,gitCwd:s,terminalState:c,setLastInvokedScriptByProjectId:l,setTerminalLaunchContext:u,setTerminalOpen:d,storeNewTerminal:f,storeSetActiveTerminal:p,setTerminalFocusRequestId:m,setThreadError:h}=e,g=g4(async(e,a)=>{let g=Dr(t);if(!g||!r||!o||!n)return;a?.rememberAsLastInvoked!==!1&&l(t=>t[o.id]===e.id?t:{...t,[o.id]:e.id});let _=a?.cwd??s??o.cwd,v=c.activeTerminalId||c.terminalIds[0]||`default`,y=c.runningTerminalIds.includes(v),b=!!a?.preferNewTerminal||y,x=b?`terminal-${Zt()}`:v,S=a?.worktreePath??n.worktreePath??null;if(u({threadId:r,cwd:_,worktreePath:S}),d(!0),!i)return;b?f(i,x):p(i,x),m(e=>e+1);let C=of({project:{cwd:o.cwd},worktreePath:S,...a?.env?{extraEnv:a.env}:{}}),w=b?{threadId:r,terminalId:x,cwd:_,...S===null?{}:{worktreePath:S},env:C,cols:O4,rows:k4}:{threadId:r,terminalId:x,cwd:_,...S===null?{}:{worktreePath:S},env:C};try{await g.terminal.open(w),await g.terminal.write({threadId:r,terminalId:x,data:`${e.command}\r`})}catch(t){h(r,t instanceof Error?t.message:`Failed to run script "${e.name}".`)}}),_=(0,q.useCallback)(async e=>{let n=Dr(t);if(!n)return;await n.orchestration.dispatchCommand({type:`project.meta.update`,commandId:yr(),projectId:e.projectId,scripts:e.nextScripts});let r=E$({keybinding:e.keybinding,command:e.keybindingCommand});if(a&&r){let e=Cn();if(!e)throw Error(`Local API unavailable.`);await e.server.upsertKeybinding(r)}},[t]);return{runProjectScript:g,saveProjectScript:(0,q.useCallback)(async e=>{if(!o)return;let t=j$(e.name,o.scripts.map(e=>e.id)),n={id:t,name:e.name,command:e.command,icon:e.icon,runOnWorktreeCreate:e.runOnWorktreeCreate},r=e.runOnWorktreeCreate?[...o.scripts.map(e=>e.runOnWorktreeCreate?{...e,runOnWorktreeCreate:!1}:e),n]:[...o.scripts,n];await _({projectId:o.id,projectCwd:o.cwd,previousScripts:o.scripts,nextScripts:r,keybinding:e.keybinding,keybindingCommand:k$(t)})},[o,_]),updateProjectScript:(0,q.useCallback)(async(e,t)=>{if(!o)return;let n=o.scripts.find(t=>t.id===e);if(!n)throw Error(`Script not found.`);let r={...n,name:t.name,command:t.command,icon:t.icon,runOnWorktreeCreate:t.runOnWorktreeCreate},i=o.scripts.map(n=>n.id===e?r:t.runOnWorktreeCreate?{...n,runOnWorktreeCreate:!1}:n);await _({projectId:o.id,projectCwd:o.cwd,previousScripts:o.scripts,nextScripts:i,keybinding:t.keybinding,keybindingCommand:k$(e)})},[o,_]),deleteProjectScript:(0,q.useCallback)(async e=>{if(!o)return;let t=o.scripts.filter(t=>t.id!==e),n=o.scripts.find(t=>t.id===e)?.name;try{await _({projectId:o.id,projectCwd:o.cwd,previousScripts:o.scripts,nextScripts:t,keybinding:null,keybindingCommand:k$(e)}),Ve.add({type:`success`,title:`Deleted action "${n??`Unknown`}"`})}catch(e){Ve.add(fc({type:`error`,title:`Could not delete action`,description:e instanceof Error?e.message:`An unexpected error occurred.`}))}},[o,_])}}function j4(e){let{serverMessages:t,optimisticUserMessagesRef:n}=e,[r,i]=(0,q.useState)({}),a=(0,q.useRef)({}),o=(0,q.useRef)({});(0,q.useEffect)(()=>{a.current=r},[r]);let s=(0,q.useCallback)((e,t)=>{delete o.current[e];let n=t??a.current[e]??[];i(t=>{if(!(e in t))return t;let n={...t};return delete n[e],a.current=n,n});for(let e of n)yA(e)},[]),c=(0,q.useCallback)(()=>{o.current={};for(let e of Object.values(a.current))for(let t of e)yA(t);a.current={},i({})},[]);(0,q.useEffect)(()=>()=>{c();for(let e of n.current)bA(e)},[c,n]);let l=(0,q.useCallback)((e,t)=>{if(t.length===0)return;let n=a.current[e]??[];for(let e of n)t.includes(e)||yA(e);i(n=>{let r={...n,[e]:t};return a.current=r,r})},[]);return(0,q.useEffect)(()=>{if(typeof Image>`u`||!t||t.length===0)return;let e=[];for(let[n,i]of Object.entries(r)){if(o.current[n])continue;let r=t.find(e=>e.id===n&&e.role===`user`);if(!r?.attachments||r.attachments.length===0)continue;let a=r.attachments.flatMap(e=>dn(e)&&e.previewUrl?[e.previewUrl]:[]);if(a.length===0||a.length!==i.length||a.some(e=>e.startsWith(`blob:`)))continue;o.current[n]=!0;let c=!1,l=[];Promise.all(a.map(e=>new Promise((t,r)=>{let i=new Image;l.push(i),i.addEventListener(`load`,()=>t(),{once:!0}),i.addEventListener(`error`,()=>r(Error(`Failed to load server preview for ${n}.`)),{once:!0}),i.src=e}))).then(()=>{c||s(n,i)}).catch(()=>{c||delete o.current[n]}),e.push(()=>{c=!0,delete o.current[n];for(let e of l)e.src=``})}return()=>{for(let t of e)t()}},[r,s,t]),{attachmentPreviewHandoffByMessageId:r,handoffAttachmentPreviews:l}}async function M4(e,t){await e.orchestration.dispatchCommand({type:`thread.turn.interrupt`,commandId:yr(),threadId:t,createdAt:new Date().toISOString()})}async function N4(e){await Ad({...e,submit:()=>e.api.orchestration.dispatchCommand({type:`thread.approval.respond`,commandId:yr(),threadId:e.threadId,requestId:e.requestId,decision:e.decision,...e.approvalIdentity?{approvalIdentity:e.approvalIdentity}:{},createdAt:new Date().toISOString()})})}async function P4(e){await jd({...e,submit:()=>e.api.orchestration.dispatchCommand({type:`thread.user-input.respond`,commandId:yr(),threadId:e.threadId,requestId:e.requestId,answers:e.answers,...e.userInputIdentity?{userInputIdentity:e.userInputIdentity}:{},createdAt:new Date().toISOString()})})}async function F4(e){await e.api.orchestration.dispatchCommand({type:`thread.checkpoint.revert`,commandId:yr(),threadId:e.threadId,turnCount:e.turnCount,createdAt:new Date().toISOString()})}async function I4(e){return!e.api||!e.localApi||!e.thread?{ok:!1,reason:{type:`missing-api`}}:e.environmentUnavailable?{ok:!1,reason:{type:`environment-unavailable`,label:e.environmentUnavailableLabel??`environment`}}:e.turnInProgress?{ok:!1,reason:{type:`turn-in-progress`}}:await e.localApi.dialogs.confirm(e.confirmMessage)?(await F4({api:e.api,threadId:e.thread.id,turnCount:e.turnCount}),{ok:!0}):{ok:!1,reason:{type:`user-cancelled`}}}function L4(e){switch(e.type){case`missing-api`:case`missing-thread`:case`user-cancelled`:return null;case`environment-unavailable`:return`Reconnect ${e.label} before reverting checkpoints.`;case`turn-in-progress`:return`Interrupt the current turn before reverting checkpoints.`}}function R4(e){let{environmentId:t,activeThreadId:n,setThreadError:r}=e,[i,a]=(0,q.useState)([]),[o,s]=(0,q.useState)([]),[c,l]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{l(!1)},[n]),{interruptTurn:(0,q.useCallback)(async()=>{let e=Dr(t);e&&n&&await M4(e,n)},[n,t]),respondToApproval:(0,q.useCallback)(async(e,i,o)=>{let s=Dr(t);if(s&&n){a(t=>t.includes(e)?t:[...t,e]);try{await N4({api:s,threadId:n,requestId:e,decision:i,approvalIdentity:o})}catch(e){r(n,e instanceof Error?e.message:`Failed to submit approval decision.`)}finally{a(t=>t.filter(t=>t!==e))}}},[n,t,r]),respondToUserInput:(0,q.useCallback)(async(e,i,a)=>{let o=Dr(t);if(o&&n){s(t=>t.includes(e)?t:[...t,e]);try{await P4({api:o,threadId:n,requestId:e,answers:i,userInputIdentity:a})}catch(e){r(n,e instanceof Error?e.message:`Failed to submit user input.`)}finally{s(t=>t.filter(t=>t!==e))}}},[n,t,r]),revertToTurnCount:(0,q.useCallback)(async e=>{let n=Dr(t),i=Cn();if(!c){l(!0),e.thread&&r(e.thread.id,null);try{let t=await I4({api:n??null,localApi:i??null,thread:e.thread,turnCount:e.turnCount,environmentUnavailable:e.environmentUnavailable,environmentUnavailableLabel:e.environmentUnavailableLabel,turnInProgress:e.turnInProgress,confirmMessage:[`Revert this thread to checkpoint ${e.turnCount}?`,`This will discard newer messages and turn diffs in this thread.`,`This action cannot be undone.`].join(`
201
- `)});if(!t.ok){let n=L4(t.reason);n&&e.thread&&r(e.thread.id,n)}}catch(t){e.thread&&r(e.thread.id,t instanceof Error?t.message:`Failed to revert thread state.`)}finally{l(!1)}}},[t,c,r]),respondingRequestIds:i,respondingUserInputRequestIds:o,isRevertingCheckpoint:c}}function z4(e){return _e({trimmedPrompt:e.composer.trimmedPrompt,imageCount:e.composer.images.length,terminalContextCount:e.composer.sendableTerminalContexts.length})}var B4=G(`inline-flex size-6 shrink-0 items-center justify-center rounded-md text-muted-foreground/80`,`transition-colors hover:text-foreground disabled:pointer-events-none disabled:opacity-40`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`),V4=(0,q.memo)(function(e){let t=(0,J.c)(25),{messages:n,onRemove:r,onMove:i,onRetry:a,showSteerAction:o,steeringIds:s,getSteerUnavailableReason:c,onSteer:l}=e;if(n.length===0)return null;let u;t[0]===n.length?u=t[1]:(u=(0,Y.jsxs)(`div`,{className:`px-1.5 pb-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:[`Queued · `,n.length]}),t[0]=n.length,t[1]=u);let d;if(t[2]!==c||t[3]!==n||t[4]!==i||t[5]!==r||t[6]!==a||t[7]!==l||t[8]!==o||t[9]!==s){let e;t[11]!==c||t[12]!==n.length||t[13]!==i||t[14]!==r||t[15]!==a||t[16]!==l||t[17]!==o||t[18]!==s?(e=(e,t)=>{let u=z4(e),d=`queued message ${t+1} of ${n.length}: ${u}`,f=c(e),p=s.includes(e.id),m=e.deliveryStatus===`sending`;return(0,Y.jsxs)(`li`,{className:`flex items-center gap-1 rounded-md px-1.5 py-1 hover:bg-muted/50`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-foreground`,title:u,children:u}),a&&e.deliveryStatus===`failed`?(0,Y.jsx)(`button`,{type:`button`,className:G(B4,`w-auto px-1.5 text-[11px]`),onClick:()=>a(e.id),"aria-label":`Retry ${d}`,title:`Send failed. Your message and attachments are still queued.`,children:`Retry`}):null,o?(0,Y.jsxs)(`button`,{type:`button`,className:G(B4,`w-auto gap-1 px-1.5 text-[11px]`),disabled:f!==null||p||m,onClick:()=>l(e),"aria-label":`Steer ${d} into the active turn`,title:f??`Send this message into the active turn`,children:[p?(0,Y.jsx)(Er,{className:`size-3 animate-spin`}):(0,Y.jsx)(Au,{className:`size-3`}),`Steer`]}):null,(0,Y.jsx)(`button`,{type:`button`,className:B4,disabled:t===0||m,onClick:()=>i(e.id,`up`),"aria-label":`Move ${d} up`,children:(0,Y.jsx)(_n,{className:`size-3.5`})}),(0,Y.jsx)(`button`,{type:`button`,className:B4,disabled:t===n.length-1||m,onClick:()=>i(e.id,`down`),"aria-label":`Move ${d} down`,children:(0,Y.jsx)(fr,{className:`size-3.5`})}),(0,Y.jsx)(`button`,{type:`button`,className:B4,disabled:m,onClick:()=>r(e.id),"aria-label":`Remove ${d}`,children:(0,Y.jsx)(Ut,{className:`size-3.5`})})]},e.id)},t[11]=c,t[12]=n.length,t[13]=i,t[14]=r,t[15]=a,t[16]=l,t[17]=o,t[18]=s,t[19]=e):e=t[19],d=n.map(e),t[2]=c,t[3]=n,t[4]=i,t[5]=r,t[6]=a,t[7]=l,t[8]=o,t[9]=s,t[10]=d}else d=t[10];let f;t[20]===d?f=t[21]:(f=(0,Y.jsx)(`ul`,{className:`flex flex-col gap-0.5`,children:d}),t[20]=d,t[21]=f);let p;return t[22]!==u||t[23]!==f?(p=(0,Y.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border/60 bg-muted/30 p-1.5`,children:[u,f]}),t[22]=u,t[23]=f,t[24]=p):p=t[24],p});function H4(e){let t=(0,J.c)(11),n;t[0]===e.open?n=t[1]:(n=Po({active:e.open,containIntrinsicSize:`28rem 100vh`}),t[0]=e.open,t[1]=n);let r=n,i;t[2]===e?i=t[3]:(i=t=>{t||e.onClose()},t[2]=e,t[3]=i);let a;t[4]!==r||t[5]!==e.children?(a=(0,Y.jsx)(sl,{side:`right`,showCloseButton:!1,keepMounted:!0,className:Uk,children:(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:r,children:e.children})}),t[4]=r,t[5]=e.children,t[6]=a):a=t[6];let o;return t[7]!==e.open||t[8]!==i||t[9]!==a?(o=(0,Y.jsx)(cl,{open:e.open,onOpenChange:i,children:a}),t[7]=e.open,t[8]=i,t[9]=a,t[10]=o):o=t[10],o}var U4=[],W4=[],G4=[],K4=Object.freeze([]),q4=`\0`,J4=Object.freeze([]),Y4=Object.freeze([]);function X4(e){let t=[`${e.length}`];for(let n of e){t.push(n.instanceId,n.driver,n.displayName??``,n.accentColor??``,n.badgeLabel??``,n.continuation?.groupKey??``,n.showInteractionModeToggle?`1`:`0`,n.supportsAskMode?`1`:`0`,n.supportsTurnSteering?`1`:`0`,n.enabled?`1`:`0`,n.status,n.installed?`1`:`0`,n.availability??``,n.unavailableReason??``,n.auth.status,n.auth.type??``,n.auth.label??``,n.auth.email??``,n.message??``);for(let e of n.models)t.push(`model`,e.slug,e.name,e.shortName??``,e.subProvider??``,e.isCustom?`1`:`0`,JSON.stringify(e.capabilities)??``);for(let e of n.slashCommands)t.push(`command`,e.name,e.description??``,e.input?.hint??``);for(let e of n.skills)t.push(`skill`,e.name,e.path,e.enabled?`1`:`0`,e.scope??``,e.displayName??``,e.shortDescription??``,e.description??``)}return t.join(q4)}function Z4(e,t){let n=X4(e);if(n===t.key)return t.snapshot;let r=e;return t.key=n,t.snapshot=r,r}function Q4(e){let t=Ue(e.models,e.model,e.provider),n=yn(t,e.effort);return fn(e.text,n)}function $4(e){return typeof Element>`u`?null:e instanceof Element?e:null}function e3(e){return $4(e)?.closest(`[data-chat-composer-form="true"], [data-thread-message-search="true"]`)!==null}function t3(e){return!!(e.type!==`keydown`||e.isComposing||No()||ql(e.target)||gu()||nu(e.target)&&!e3(e.target))}function n3(e){Qo(`ChatView`);let t=$s(),n=Hs(),r=ec(),s=Rs(y.dispatchCommand),l=Rs(ee.terminalOpen),p=Rs(ee.textGenerationAskSideQuestion),{environmentId:m,threadId:h,routeKind:g,onDiffPanelOpen:v,onPreviewPanelOpen:b,onTerminalPanelOpen:x,onSimulatorPanelOpen:S,onAgentPanelOpen:C,onToggleWorkspacePanel:w,reserveTitleBarControlInset:T=!0}=e,E=g===`draft`?e.draftId:null,D=(0,q.useMemo)(()=>_(m,h),[m,h]),O=(0,q.useMemo)(()=>u(D),[D]),k=g===`server`?D:e.draftId,j=E?String(E):O,[N,F]=(0,q.useState)([]),I=nA.useStore(),L=I.batches.find(e=>e.environmentId===m&&(e.ownerKey===j||e.destinations.some(e=>e.threadId===h))),R=(0,q.useRef)(null),z=(0,q.useRef)(s.allowed);z.current=s.allowed,(0,q.useEffect)(()=>{F([]),R.current=null},[j]);let V=me((0,q.useMemo)(()=>Jt(g===`server`?D:null),[g,D])),ae=me(e=>e.setThreadError),H=vt(e=>e.markThreadVisited),U=vt(e=>e.alwaysUseBuildMode),se=vt(e=>g===`server`?e.threadLastVisitedAtById[O]:void 0),le=St(),de=Hc(),fe=Vc(),he=Lo(),_e=Rr(e=>e.setStickyModelSelection),xe=le.timestampFormat,Se=le.autoOpenPlanSidebar,Ce=Ho(),we=(0,q.useCallback)(e=>r.current?Ce(e):Promise.resolve(),[r,Ce]),{handleNewThread:Te}=bc(),Ee=Re(e=>e.openSettings),Oe=du({strict:!1,select:e=>hu(e)}),ke=t?Oe:{},{resolvedTheme:Ae}=kl(),je=Rr(e=>e.getComposerDraft(k)?.runtimeMode??null),Me=Rr(e=>e.getComposerDraft(k)?.interactionMode??null),Ne=Rr(e=>e.getComposerDraft(k)?.tokenMode??null),Fe=Rr(e=>e.getComposerDraft(k)?.activeProvider??null),Ie=Rr(e=>e.setPrompt),ze=Rr(e=>e.removeImage),He=Rr(e=>e.addImages),Ue=Rr(e=>e.setTerminalContexts),Ge=Rr(e=>e.setModelSelection),Ke=Rr(e=>e.setRuntimeMode),qe=Rr(e=>e.setInteractionMode),Ye=Rr(e=>e.setTokenMode),Xe=Rr(e=>e.clearComposerContent),Ze=Rr(e=>e.setDraftThreadContext),Qe=Rr(e=>e.clearDraftThread),et=Rr(e=>e.getDraftSessionByLogicalProjectKey),nt=Rr(e=>e.getDraftSession),rt=Rr(e=>e.setLogicalProjectDraftThreadId),ot=Rr(e=>g===`server`?e.getDraftSessionByRef(D):E?e.getDraftSession(E):null),lt=(0,q.useRef)(``),dt=(0,q.useRef)([]),mt=(0,q.useRef)([]),ht=(0,q.useRef)(null),gt=ns()??ht,yt=(0,q.useCallback)(()=>gt.current,[gt]),[bt,Ct]=(0,q.useState)(!1),[wt,Tt]=(0,q.useState)(null),[Ot,kt]=(0,q.useState)([]),[jt,Nt]=(0,q.useState)(!1),[Pt,Ft]=(0,q.useState)(``),[Rt,zt]=(0,q.useState)(0),[Bt,Ut]=(0,q.useState)(0),[Wt,Gt]=(0,q.useState)(null),[Kt,qt]=(0,q.useState)([]),[Xt]=ro(Pt,{wait:180}),$t=(0,q.useRef)(Ot);$t.current=Ot;let[en,tn]=(0,q.useState)({}),[nn,on]=(0,q.useState)(!1),[cn,ln]=(0,q.useState)(!0),[un,fn]=(0,q.useState)(!1),[mn,hn]=(0,q.useState)(!1),gn=rs(`(max-width: 980px)`)||n!==null,_n=rs(Io),vn=xc(),yn=Ml(),bn=(0,q.useRef)(vn);bn.current=vn,(0,q.useEffect)(()=>{n&&ln(!1)},[n]);let xn=(0,q.useRef)(gn);xn.current=gn;let[Sn,Cn]=(0,q.useState)(null),wn=(0,q.useCallback)((e,t)=>{bn.current!==`phone`&&(ln(!1),Cn({marker:e,trigger:t}))},[]),Tn=(0,q.useCallback)(()=>{Cn(e=>(e&&requestAnimationFrame(()=>e.trigger.focus({preventScroll:!0})),null))},[]),En=U&&vn!==`phone`,Dn=(0,q.useRef)(null),On=(0,q.useRef)(!1),[kn,An]=(0,q.useState)(0),[Mn,Nn]=(0,q.useState)(null),[Pn,Fn]=(0,q.useState)(!1),Ln=(0,q.useRef)(Pn);Ln.current=Pn;let[Rn,Bn]=(0,q.useState)(`prs`),[Hn,Un]=(0,q.useState)(null),[Wn,Gn]=(0,q.useState)(),[qn,Jn]=Zr(pA,{},mA),Yn=(0,q.useRef)(null),Qn=(0,q.useRef)(!0),[er,tr]=(0,q.useState)(!0),nr=(0,q.useRef)(!1),rr=(0,q.useRef)(!1),ir=(0,q.useRef)({}),or=ct(e=>Et(e.terminalStateByThreadKey,D)),sr=ct(Uc(e=>Object.entries(e.terminalStateByThreadKey).flatMap(([e,t])=>t.terminalOpen?[e]:[]))),cr=ct(e=>e.setTerminalOpen),ur=ct(e=>e.splitTerminal),mr=ct(e=>e.newTerminal),hr=ct(e=>e.setActiveTerminal),br=ct(e=>e.closeTerminal),xr=me(Uc(e=>st(e).map(e=>u(_(e.environmentId,e.id))))),Sr=ct(e=>e.terminalLaunchContextByThreadKey[u(D)]??null),Cr=ct(e=>e.clearTerminalLaunchContext),Er=Rr(e=>e.draftThreadsByThreadKey),Or=(0,q.useMemo)(()=>Object.values(Er).map(e=>u(_(e.environmentId,e.threadId))),[Er]),[kr,jr]=(0,q.useState)([]),Mr=(0,q.useMemo)(()=>kr.flatMap(e=>{if(n&&e!==u(n))return[];let t=i(e);return t?[{key:e,threadRef:t}]:[]}),[kr,n]),Pr=g===`server`&&V?null:(E?en[E]:null)??null,Fr=(0,q.useMemo)(()=>ot?gA(h,ot,{instanceId:A.make(`codex`),model:P},Pr):void 0,[ot,Pr,h]),Ir=g===`server`&&V!==void 0,K=Ir?V:Fr;(0,q.useEffect)(()=>{Cn(null)},[K?.id]);let zr=K?.id??null,Br=(0,q.useDeferredValue)(zr)===zr,Vr=je??K?.runtimeMode??`full-access`,Hr=En?Dt:Me??K?.interactionMode??`default`,Ur=Ne??K?.tokenMode??le.defaultAgentTokenMode??At,Jr=!Ir&&Fr!==void 0,Xr=Jr,Qr=ke.diff===`1`,$r=e.workspacePanelOpen??ou(ke),ni=K?.id??null,ri=(0,q.useCallback)((e,t)=>{if(!e)return;let n=f(t);if(_A({serverThread:V,routeThreadRef:D,targetThreadId:e})){ae(D,n);return}let r=E??e;tn(e=>(e[r]??null)===n?e:{...e,[r]:n})},[E,D,V,ae]),{interruptTurn:ii,respondToApproval:ai,respondToUserInput:oi,revertToTurnCount:si,respondingRequestIds:ci,respondingUserInputRequestIds:li,isRevertingCheckpoint:ui}=R4({environmentId:m,activeThreadId:ni,setThreadError:ri}),di=(0,q.useMemo)(()=>K?_(K.environmentId,K.id):null,[K]),fi=di?u(di):null,pi=me(e=>di?e.environmentStateById[di.environmentId]?.threadHistoryByThreadId?.[di.threadId]?.messages:void 0),mi=me(e=>di?e.environmentStateById[di.environmentId]?.threadHistoryLoadByThreadId?.[di.threadId]?.messages:void 0),hi=(0,q.useCallback)(()=>{di&&pi&&rn({environmentId:di.environmentId,threadId:di.threadId,collection:`messages`,page:pi,limit:150}).catch(()=>void 0)},[pi,di]);(0,q.useEffect)(()=>{let e=ke.messageId;di&&e&&pi&&(K?.messages.some(t=>t.id===e)||pn({environmentId:di.environmentId,threadId:di.threadId,messageId:e,limit:101}).catch(()=>void 0))},[K?.messages,pi,di,ke.messageId]);let gi=ei(e=>e.enqueue),_i=ei(e=>e.remove),vi=ei(e=>e.move),yi=ei(e=>e.beginSend),bi=ei(e=>e.finishSend),xi=ei(e=>e.retrySend),Si=ei(e=>e.beginSteer),Ci=ei(e=>e.endSteer),wi=ei(e=>fi?e.queuesByThreadKey[fi]??J4:J4),Ti=ei(e=>fi?e.steeringIdsByThreadKey[fi]??Y4:Y4),Ei=(0,q.useCallback)(e=>{if(!fi)return;let t=ei.getState().queuesByThreadKey[fi]?.find(t=>t.id===e);if(t)for(let e of t.composer.images)e.previewUrl.startsWith(`blob:`)&&URL.revokeObjectURL(e.previewUrl);_i(fi,e)},[fi,_i]),Di=(0,q.useCallback)((e,t)=>{fi&&vi(fi,e,t)},[fi,vi]);(0,q.useEffect)(()=>{Nt(!1),Ft(``),Ut(0),Gt(null)},[fi]);let Oi=(0,q.useMemo)(()=>{let e=new Set([...xr,...Or]);return sr.filter(t=>e.has(t))},[Or,sr,xr]),ki=K?.latestTurn??null,Ai=E4((0,q.useMemo)(()=>{let e=[];K?.id&&e.push(K.id);let t=ki?.sourceProposedPlan?.threadId;return t&&t!==K?.id&&e.push(t),e},[ki?.sourceProposedPlan?.threadId,K?.id]));(0,q.useEffect)(()=>{jr(e=>{let t=vA({currentThreadIds:e,openThreadIds:Oi,activeThreadId:fi,activeThreadTerminalOpen:!!(fi&&or.terminalOpen),maxHiddenThreadCount:10});return e.length===t.length&&e.every((e,n)=>e===t[n])?e:t})},[fi,Oi,or.terminalOpen]);let ji=Tr(ki,K?.session??null),Mi=K?o(K.environmentId,K.projectId):null,Ni=me((0,q.useMemo)(()=>Gr(Mi),[Mi])),Pi=me((0,q.useMemo)(()=>e=>{if(!K||!K.environmentId)return null;let t=K.worktreeId;if(!t)return null;let n=e.environmentStateById[K.environmentId];return n?.worktreeById?n.worktreeById[t]??null:null},[K?.environmentId,K?.worktreeId])),[Fi,Ii]=(0,q.useState)(null),Li=(0,q.useCallback)(e=>{Ii(e)},[]),Ri=(0,q.useCallback)(e=>{e||Ii(null)},[]),Bi=(0,q.useMemo)(()=>r1(),[]),Vi=K?.worktreeId,Hi=K?.worktreePath,Ui=(0,q.useMemo)(()=>{if(!Mi)return[];let e=[];for(let t of Object.values(Er))t.promotedTo==null&&t.environmentId===Mi.environmentId&&t.projectId===Mi.projectId&&e.push(t1(t));return e},[Er,Mi]),Wi=me(e=>{if(!Mi||!K)return K4;let t=ce(e,Mi),n=Ui.length>0?[...t,...Ui]:t;return Bi(n,{worktreeId:Vi??null,worktreePath:Hi??null})}),Gi=K?u(_(K.environmentId,K.id)):null,Ki=(0,q.useCallback)(e=>{let t=i(e);t&&(ks(e),setTimeout(()=>{we({to:`/$environmentId/$threadId`,params:{environmentId:t.environmentId,threadId:t.threadId}})},0))},[we]);e1({activeWorktreeSessionTabs:Wi,activeSessionTabKey:Gi}),(0,q.useEffect)(()=>{let e=Ro(m,h);if(g!==`server`)return e;let t=Lt(m,h);return()=>{e(),t()}},[m,g,h]);let qi=me(Uc(ye)),Ji=d(),Yi=fe.localEnvironmentId??(c()?.source===`desktop-managed`?Ji:null),Xi=pr(e=>e.byId),Zi=Xn(e=>e.byId),Qi=K&&K.environmentId!==Ji?Xi[K.environmentId]??null:null,$i=Qi?Zi[Qi.environmentId]??null:null,ea=Qi?$i?.connectionState??`disconnected`:`connected`,ta=qr(m),na=Qi!==null&&ea!==`connected`,ra=Qi?.environmentId??null,ia=Qi?Mc({isPrimary:!1,environmentId:Qi.environmentId,runtimeLabel:$i?.descriptor?.label??null,savedLabel:Qi.label}):null,aa=(0,q.useMemo)(()=>!na||!ia||!ra?null:{environmentId:ra,label:ia,connectionState:ea===`connecting`||ea===`error`?ea:`disconnected`},[na,ia,ea,ra]),[oa,sa]=(0,q.useState)(null),ca=(0,q.useCallback)(async(e,t)=>{sa(e);try{await Kn(e),Ve.add({type:`success`,title:`Environment reconnected`,description:`${t} is ready.`})}catch(e){Ve.add(fc({type:`error`,title:`Could not reconnect environment`,description:e instanceof Error?e.message:`Failed to reconnect.`}))}finally{sa(null)}},[]),la=St(e=>({sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides})),ua=(0,q.useMemo)(()=>vc({machines:fe.machines,ready:fe.status===`ready`,primaryEnvironmentId:Ji,localHubEnvironmentId:fe.localEnvironmentId,primaryLabel:de}),[fe,Ji,de]),da=(0,q.useMemo)(()=>{if(!Ni)return[];let e=Yr(Ni,la),t=qi.filter(t=>Yr(t,la)===e),n=new Set,r=[];for(let e of t){if(n.has(e.environmentId))continue;n.add(e.environmentId);let t=e.environmentId===Ji,i=Xi[e.environmentId],a=Zi[e.environmentId],o=ua.find(t=>t.environmentId===e.environmentId),s=he.machines.find(t=>t.environmentId===e.environmentId),c=he.status===`signed-out`?o:s,l=Mc({isPrimary:t,environmentId:e.environmentId,runtimeLabel:a?.descriptor?.label??null,savedLabel:i?.label??null}),u=c?.label??(t?de:l);r.push({environmentId:e.environmentId,projectId:e.id,label:u,isPrimary:t,...fe.status===`ready`||he.status===`ready`?{disabled:c?.canMutate!==!0}:{}})}return r.sort((e,t)=>e.isPrimary===t.isPrimary?e.label.localeCompare(t.label):e.isPrimary?-1:1),r},[Ni,qi,ua,de,fe.status,he,la,Ji,Xi,Zi]),fa=da.length>1,pa=(0,q.useCallback)(e=>{Xr&&Nn({initialReference:e??null,key:Date.now()})},[Xr]),ma=(0,q.useCallback)(()=>{Nn(null)},[]),ha=(0,q.useCallback)(async e=>{if(!Ni)throw Error(`No active project is available for this pull request.`);let t=o(Ni.environmentId,Ni.id),n=Yr(Ni,la),r=et(n);if(r)return Ze(r.draftId,e),rt(n,t,r.draftId,{threadId:r.threadId,...e}),(g!==`draft`||E!==r.draftId)&&await we({to:`/draft/$draftId`,params:_r(r.draftId)}),r.threadId;let i=g===`draft`&&E?nt(E):null;if(!Ir&&i?.logicalProjectKey===n&&E)return Ze(E,e),rt(n,t,E,{threadId:i.threadId,createdAt:i.createdAt,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode??At,...e}),i.threadId;let a=jn(),s=wr();return rt(n,t,a,{threadId:s,createdAt:new Date().toISOString(),runtimeMode:Mt,interactionMode:Dt,tokenMode:le.defaultAgentTokenMode??At,...e}),await we({to:`/draft/$draftId`,params:_r(a)}),s},[Ni,E,nt,et,Ir,we,la,g,Ze,rt,le.defaultAgentTokenMode]),ga=(0,q.useCallback)(async e=>{await ha({branch:e.branch,worktreePath:e.worktreePath,envMode:e.worktreePath?`worktree`:`local`})},[ha]);(0,q.useEffect)(()=>{if(!t||!V?.id||!ji||!ki?.completedAt)return;let e=Date.parse(ki.completedAt);if(Number.isNaN(e))return;let n=se?Date.parse(se):NaN;!Number.isNaN(n)&&n>=e||H(u(_(V.environmentId,V.id)),ki.completedAt)},[ki?.completedAt,se,t,ji,H,V?.environmentId,V?.id]);let _a=Fe??null,va=K?.modelSelection.instanceId??null,ya=xt(),ba=Xn(e=>K?.environmentId?e.byId[K.environmentId]:null),xa=Ji&&K?.environmentId===Ji?ya:ba?.serverConfig??ya,Sa=Je(xa),Ca=Sa&&K?zn(K.environmentId,Sa):null,[wa,Ta]=(0,q.useState)(null),Ea=Ca===wa||In(Ca),Da=Sa!==null&&Ca!==null&&!Ea,Oa=Object.keys(Xi).length>0,ka=(0,q.useMemo)(()=>{if(!Oa||!K)return`server`;let e=K.environmentId===Ji,t=Xi[K.environmentId],n=Zi[K.environmentId];return`${Mc({isPrimary:e,environmentId:K.environmentId,runtimeLabel:n?.descriptor?.label??xa?.environment.label??null,savedLabel:t?.label??null})} server`},[K,Oa,Ji,Xi,Zi,xa?.environment.label]),Aa=(0,q.useMemo)(()=>{let e=[];return s.hosted&&!s.allowed&&e.push({id:`hosted-dispatch-unavailable`,variant:`warning`,icon:(0,Y.jsx)(ar,{}),title:`Read-only hosted session`,description:s.reason??`Commands are unavailable on this connection.`}),aa&&e.push({id:`environment-unavailable:${aa.environmentId}`,variant:aa.connectionState===`error`?`error`:`warning`,icon:(0,Y.jsx)(Ko,{}),title:(0,Y.jsxs)(Y.Fragment,{children:[aa.label,` is`,` `,aa.connectionState===`connecting`?`connecting`:`disconnected`]}),description:`Reconnect this environment before sending messages or running actions.`,actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(W,{size:`xs`,disabled:aa.connectionState===`connecting`||oa===aa.environmentId,onClick:()=>void ca(aa.environmentId,aa.label),children:aa.connectionState===`connecting`||oa===aa.environmentId?`Reconnecting...`:`Reconnect`}),(0,Y.jsx)(W,{size:`xs`,variant:`outline`,onClick:()=>Ee(`connections`),children:`Connections`})]})}),Da&&Sa&&Ca&&e.push({id:`version-mismatch:${Ca}`,variant:`warning`,icon:(0,Y.jsx)(ar,{}),title:`Client and server versions differ`,description:(0,Y.jsxs)(Y.Fragment,{children:[`Client `,Sa.clientVersion,` is connected to `,ka,` `,Sa.serverVersion,`. Sync them if RPC calls or reconnects fail.`]}),dismissLabel:`Dismiss version mismatch warning`,onDismiss:()=>{ue(Ca),Ta(Ca)}}),e},[s.allowed,s.hosted,s.reason,aa,ca,Ee,oa,Da,Sa,Ca,ka]),ja=K!==void 0&&K.messages.length===0&&Ot.length===0,Ma=xa?.providers??W4,Na=(0,q.useRef)({key:``,snapshot:W4}),Pa=(0,q.useMemo)(()=>Z4(Ma,Na.current),[Ma]),Fa=K?.session?.providerInstanceId??null,Ia=it(K?.session??null),La=le.notifyOnTurnCompleteWhenUnfocused,Ra=(0,q.useRef)(new Set),za=(0,q.useRef)(new Set);(0,q.useEffect)(()=>{let e=ki?.turnId;if(!e)return;if(Ia===`running`){Ra.current.add(e);return}if(!t||!V?.id||!ji||!ki?.completedAt||!Ra.current.has(e)||za.current.has(e)||(za.current.add(e),!La)||typeof document<`u`&&document.hasFocus())return;let n=typeof window<`u`?window.desktopBridge:void 0;if(!n?.notifyTurnComplete)return;let r=K?.title?.trim()?K.title:`Ryco`;n.notifyTurnComplete({threadId:V.id,environmentId:V.environmentId,title:r,body:`The agent finished responding.`}).catch(()=>void 0)},[Ia,ji,ki?.turnId,ki?.completedAt,La,V?.id,V?.environmentId,K?.title]);let Ba=K?.activities??U4,Va=(0,q.useMemo)(()=>xs(Ba,K?.session??null),[Ba,K?.session]),{workLogEntries:Ha,contextCompactionEntries:Ua,contextHandoffEntries:Wa,pendingApprovals:Ga,pendingUserInputs:Ka,optionalUserInputs:qa,activePlan:Ja}=(0,q.useMemo)(()=>oe(Ba,ki?.turnId),[ki?.turnId,Ba]),Ya=Ia!==`disconnected`&&K?.session?.orchestrationStatus!==`stopped`&&K?.session?.orchestrationStatus!==`interrupted`&&K?.session?.orchestrationStatus!==`error`,Xa=(0,q.useMemo)(()=>Xo(Ba,{sessionLive:Ya,parentTurnState:ki?.state??null}),[ki?.state,Ya,Ba]),Za=(0,q.useMemo)(()=>Vn({activities:Ba,transcriptSubagents:Xa,sessionLive:Ya}),[Ya,Ba,Xa]),{activePendingUserInput:Qa,activePendingDraftAnswers:$a,activePendingQuestionIndex:eo,activePendingProgress:to,activePendingResolvedAnswers:no,activePendingIsResponding:io,onSelectActivePendingUserInputOption:ao,onChangeActivePendingUserInputCustomAnswer:oo,onAdvanceActivePendingUserInput:so,onPreviousActivePendingUserInputQuestion:co}=h4({pendingUserInputs:Ka,respondingUserInputRequestIds:li,readComposer:yt,promptRef:lt,onRespondToUserInput:oi}),lo=(0,q.useMemo)(()=>ji?Nr(K?.proposedPlans??[],ki?.turnId??null):null,[ki?.turnId,K?.proposedPlans,ji]),uo=(0,q.useMemo)(()=>$n({threads:Ai,latestTurn:ki,latestTurnSettled:ji,threadId:K?.id??null}),[ki,K?.id,ji,Ai]),fo=`Overview`,po=Qt({hasPendingUserInput:Ka.length>0,interactionMode:Hr,latestTurnSettled:ji,hasActionableProposedPlan:Ht(lo)}),mo=Ga[0]??null,{beginLocalDispatch:ho,resetLocalDispatch:go,localDispatchStartedAt:vo,isPreparingWorktree:yo,isSendBusy:bo}=D4({activeThread:K,activeLatestTurn:ki,phase:Ia,activePendingApproval:mo?.requestId??null,activePendingUserInput:Qa?.requestId??null,threadError:K?.error}),xo=(0,q.useMemo)(()=>K?.session?.provider??Ma.find(e=>e.instanceId===K?.modelSelection.instanceId)?.driver??null,[K?.modelSelection.instanceId,K?.session?.provider,Ma]),So=kA(K),Co=K?.session?.orchestrationStatus??null,wo=(0,q.useMemo)(()=>Ar({threadStarted:So,canonicalProvider:xo,phase:Ia,orchestrationStatus:Co,isConnecting:nn,isSendBusy:bo,isPreparingWorktree:yo,hasPendingApproval:Ga.length>0,hasPendingUserInput:Ka.length>0,hasQueuedMessage:wi.length>0,isRevertingCheckpoint:ui,mutationAllowed:s.allowed,environmentAvailable:!na,isPhoneTier:vn===`phone`}),[na,So,xo,s.allowed,nn,yo,ui,bo,Ga.length,Ka.length,Ia,vn,wi.length,Co]),To=wo.lockedProvider,Eo=Ma.find(e=>e.instanceId===_a)?.driver??ti(Ma,_a??va??ie.make(`codex`)),Do=To??Eo,Oo=Ia===`running`||bo||nn||ui,ko=me(e=>$e(e,di)),Ao=!Oo&&K?ko?.backgroundLiveness??null:null,[jo,Mo]=(0,q.useState)(!1);(0,q.useEffect)(()=>{Ao===null&&Mo(!1)},[Ao]),(0,q.useEffect)(()=>{if(!jo)return;let e=window.setTimeout(()=>Mo(!1),2e4);return()=>window.clearTimeout(e)},[jo]),(0,q.useEffect)(()=>{Mo(!1)},[ni]);let Po=(0,q.useCallback)(()=>{Mo(!0),(async()=>{try{await ii()}catch(e){Mo(!1),ni&&ri(ni,e instanceof Error?e.message:`Failed to stop background work.`)}})()},[ni,ii,ri]),Fo=(0,q.useCallback)(async e=>{if(!ni||!e.runtimeSessionId||!s.allowed||na||ta.phase!==`connected`)throw Error(`This connection is not ready to stop tasks.`);let t=Dr(m)?.orchestration.stopBackgroundTask;if(!t)throw Error(`This environment cannot stop individual tasks.`);await t({threadId:ni,taskId:e.id,expected:{runtimeSessionId:B.make(e.runtimeSessionId),attempt:e.attempt}})},[ni,s.allowed,na,m,ta.phase]),Bo=It(ki,K?.session??null,vo),Uo=K?.messages,{attachmentPreviewHandoffByMessageId:Wo,handoffAttachmentPreviews:Go}=j4({serverMessages:Uo,optimisticUserMessagesRef:$t}),qo=(0,q.useMemo)(()=>{let e=Uo??[],t=Object.keys(Wo).length===0?e:e.map(e=>{if(e.role!==`user`||!e.attachments||e.attachments.length===0)return e;let t=Wo[e.id];if(!t||t.length===0)return e;let n=!1,r=0,i=e.attachments.map(e=>{if(!dn(e))return e;let i=t[r];return r+=1,!i||e.previewUrl===i?e:(n=!0,{...e,previewUrl:i})});return n?{...e,attachments:i}:e});if(Ot.length===0)return t;let n=new Set(t.map(e=>e.id)),r=Ot.filter(e=>!n.has(e.id));return r.length===0?t:[...t,...r]},[Uo,Wo,Ot]),Jo=(0,q.useRef)({threadId:null,index:Dd()}),Yo=(0,q.useMemo)(()=>(Jo.current.threadId!==ni&&(Jo.current={threadId:ni,index:Dd()}),Jo.current.index.update({messages:qo,proposedPlans:K?.proposedPlans??[],workEntries:Ha,contextCompactionEntries:Ua,contextHandoffEntries:Wa})),[ni,K?.proposedPlans,Ua,Wa,qo,Ha]),Zo=n===null&&PA({hasThread:K!==void 0,messageCount:K?.messages.length??0,optimisticMessageCount:Ot.length,timelineEntryCount:Yo.length,presentationTier:vn}),$o=(0,q.useMemo)(()=>SE({timelineEntries:Yo,query:Pt}),[Pt,Yo]);(0,q.useEffect)(()=>{let e=Xt.trim();if(!jt||!di||e.length<2){qt([]);return}let t=Dr(di.environmentId);if(!t){qt([]);return}let n=!1;return t.orchestration.searchThreadMessages({query:e,threadId:di.threadId,limit:50}).then(e=>{n||qt(e)}).catch(()=>{n||qt([])}),()=>{n=!0}},[di,Xt,jt]);let es=(0,q.useMemo)(()=>{let e=new Set($o.map(e=>e.messageId)),t=[];for(let n of Kt)e.has(n.messageId)||t.push({id:`server:${n.messageId}`,messageId:n.messageId,occurrenceIndex:$o.length+t.length,messageOccurrenceIndex:0,start:0,end:0,text:Pt.trim()});return[...$o,...t]},[$o,Kt,Pt]),ts=(0,q.useMemo)(()=>{if(!jt)return new Map;let e=new Map;for(let t of es){let n=e.get(t.messageId);n?n.push(t):e.set(t.messageId,[t])}return e},[es,jt]),is=es.length,as=CE(Bt,is),os=es[as]??null,ss=os?.messageId??null,cs=(0,q.useCallback)(e=>{Gt(t=>({messageId:e,requestId:(t?.requestId??0)+1}))},[]);(0,q.useEffect)(()=>{Ut(0)},[fi,Pt]),(0,q.useEffect)(()=>{Ut(e=>CE(e,is))},[is]),(0,q.useEffect)(()=>{if(!jt||!ss){Gt(null);return}cs(ss)},[cs,ss,jt]),(0,q.useEffect)(()=>{jt&&ss&&di&&pi&&!K?.messages.some(e=>e.id===ss)&&pn({environmentId:di.environmentId,threadId:di.threadId,messageId:ss,limit:101}).catch(()=>void 0)},[K?.messages,pi,di,ss,jt]);let{turnDiffSummaries:ls,inferredCheckpointTurnCountByTurnId:us}=tk(K),ds=(0,q.useMemo)(()=>{let e=new Map;for(let t of ls)t.assistantMessageId&&e.set(t.assistantMessageId,t);return e},[ls]),fs=(0,q.useMemo)(()=>VX({timelineEntries:Yo,turnDiffSummaryByAssistantMessageId:ds,inferredCheckpointTurnCountByTurnId:us}),[us,Yo,ds]),ps=(0,q.useMemo)(()=>HX({turnDiffSummaries:ls,inferredCheckpointTurnCountByTurnId:us}),[us,ls]),ms=Ni?af({project:{cwd:Ni.cwd},worktreePath:K?.worktreePath??null}):null,gs=We({environmentId:m,cwd:ms}),_s=Pe(),{postPushWorkflowWatch:vs,handlePostPush:ys,clearWatch:bs}=i4(),Ss=_t(),Cs=pe(),ws=K?.session?.providerInstanceId??K?.modelSelection.instanceId??null,Ts=(0,q.useMemo)(()=>{if(ws)return Ma.find(e=>e.instanceId===ws)??null;let e=ne(Do);return Ma.find(t=>t.instanceId===e)??null},[ws,Ma,Do]),Es=i1(Ts),[Ds,js]=(0,q.useState)(null),Ms=Es&&Es.key!==Ds&&!o1(Es.key)?Es:null,Ns=(0,q.useMemo)(()=>{if(!Ms)return Aa;let{key:e,variant:t,title:n,description:r}=Ms;return[...Aa,{id:`provider-status:${e}`,variant:t,icon:(0,Y.jsx)(sn,{}),title:n,description:(0,Y.jsx)(`span`,{className:`line-clamp-3`,title:r,children:r}),dismissLabel:`Dismiss provider status`,onDismiss:()=>{s1(e),js(e)}}]},[Aa,Ms]);(0,q.useEffect)(()=>{if(g!==`server`||!ms)return;let e=zc(m,ms),t=zo(m,ms);return()=>{t(),e()}},[m,ms,g]),(0,q.useEffect)(()=>{if(g!==`server`)return;let e=Bc(m,Ts?.instanceId),t=Vo(m,Ts?.instanceId);return()=>{t(),e()}},[Ts?.instanceId,m,g]);let Ps=Ni?.cwd??null,Fs=K?.worktreePath??null,Is=Fs??Ps??void 0,Ls=Hn?.threadId===ni?Hn:Sr??null,zs=gs.data?.isRepo??!0,Bs=(0,q.useMemo)(()=>({context:{terminalFocus:!0,terminalOpen:!!or.terminalOpen}}),[or.terminalOpen]),Us=(0,q.useMemo)(()=>su(Ss,`terminal.toggle`),[Ss]),Ws=(0,q.useMemo)(()=>su(Ss,`terminal.split`,Bs),[Ss,Bs]),Gs=(0,q.useMemo)(()=>su(Ss,`terminal.new`,Bs),[Ss,Bs]),Ks=(0,q.useMemo)(()=>su(Ss,`terminal.close`,Bs),[Ss,Bs]),{onOpenReviewPanel:qs,onToggleDiff:Js,onOpenFilesPanel:Ys,onOpenTerminalPanel:Xs,onOpenSimulatorPanel:Zs,onToggleWorkspacePanel:Qs,onOpenTurnDiff:tc,onCloseDiff:nc,onOpenAgentsPanel:rc,onOpenSubagentPanel:ic}=v4({navigate:we,environmentId:m,threadId:h,routeKind:g,draftId:E,isServerThread:Ir,hasActiveProject:!!Ni,diffOpen:Qr,workspacePanelOpen:$r,externalToggleWorkspacePanel:w,onDiffPanelOpen:v,onPreviewPanelOpen:b,onTerminalPanelOpen:x,onSimulatorPanelOpen:S,onAgentPanelOpen:C}),ac=!!(K&&(K.messages.length>0||K.session!==null&&K.session.status!==`closed`)),oc=(0,q.useCallback)(e=>{if(ac||!E)return;let t=da.find(t=>t.environmentId===e);t&&!t.disabled&&Ze(E,{projectRef:o(t.environmentId,t.projectId)})},[E,ac,da,Ze]),sc=he.status===`signed-out`?ua.find(e=>e.environmentId===m):he.machines.find(e=>e.environmentId===m),cc=g===`draft`&&(fe.status===`ready`||he.status===`ready`)&&sc?.canMutate!==!0,lc=((or.terminalGroups.find(e=>e.id===or.activeTerminalGroupId)??or.terminalGroups.find(e=>e.terminalIds.includes(or.activeTerminalId))??null)?.terminalIds.length??0)>=4,uc=(0,q.useCallback)(()=>{r.current&&bn.current!==`phone`&&yt()?.focusAtEnd()},[r,yt]),dc=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{uc()})},[uc]),pc=(0,q.useCallback)(()=>{ni&&(Nt(!0),zt(e=>e+1))},[ni]),mc=(0,q.useCallback)(()=>{Nt(!1),Gt(null),dc()},[dc]),hc=(0,q.useCallback)(e=>{if(is===0)return;let t=wE({currentIndex:as,matchCount:is,direction:e});Ut(t);let n=es[t];n&&cs(n.messageId)},[cs,as,is,es]),_c=(0,q.useCallback)(e=>{yt()?.addTerminalContext(e)},[yt]),yc=(0,q.useCallback)(e=>{di&&cr(di,e)},[di,cr]),Ec=(0,q.useCallback)(()=>{di&&l.allowed&&yc(!or.terminalOpen)},[di,yc,l.allowed,or.terminalOpen]),Dc=(0,q.useCallback)(()=>{if(!di||lc||!l.allowed)return;let e=`terminal-${Zt()}`;ur(di,e),An(e=>e+1)},[di,lc,ur,l.allowed]),Oc=(0,q.useCallback)(()=>{if(!di||!l.allowed)return;let e=`terminal-${Zt()}`;mr(di,e),An(e=>e+1)},[di,mr,l.allowed]),kc=(0,q.useCallback)(e=>{let t=Dr(m);if(!ni||!t||!l.allowed)return;let n=or.terminalIds.length<=1;di&&Nd.close({threadRef:di,terminalId:e},t.terminal,n).catch(()=>void 0),di&&br(di,e),An(e=>e+1)},[ni,di,m,br,or.terminalIds.length,l.allowed]),{runProjectScript:Ac,saveProjectScript:jc,updateProjectScript:Nc,deleteProjectScript:Pc}=A4({environmentId:m,activeThread:K,activeThreadId:ni,activeThreadRef:di,activeProject:Ni,gitCwd:ms,terminalState:or,setLastInvokedScriptByProjectId:Jn,setTerminalLaunchContext:Un,setTerminalOpen:yc,storeNewTerminal:mr,storeSetActiveTerminal:hr,setTerminalFocusRequestId:An,setThreadError:ri}),Fc=(0,q.useCallback)(e=>{e!==Vr&&(Ke(k,e),Jr&&Ze(k,{runtimeMode:e}),dc())},[Jr,Vr,dc,k,Ke,Ze]),Ic=(0,q.useCallback)(e=>{e!==Hr&&(qe(k,e),Jr&&Ze(k,{interactionMode:e}),dc())},[Hr,Jr,dc,k,qe,Ze]),Lc=(0,q.useCallback)(e=>{e!==Ur&&(Ye(k,e),Jr&&Ze(k,{tokenMode:e}),dc())},[k,Jr,dc,Ye,Ze,Ur]),Rc=(0,q.useCallback)(()=>{if(En)return;let e=at(Ma,Do);Ic(Hr==="default"?`plan`:Hr===`plan`&&e?`ask`:`default`)},[En,Ic,Hr,Ma,Do]),Wc=(0,q.useCallback)(e=>{ln(e),Dn.current=e?null:Ja?.turnId??uo?.turnId??`__dismissed__`},[Ja?.turnId,uo?.turnId]),Gc=(0,q.useCallback)(()=>{hn(!1),Wc(!1)},[Wc]),Kc=(0,q.useCallback)(e=>{if($r){let t=typeof e==`boolean`?e:!mn;hn(t),Wc(t),t&&fn(!0);return}let t=typeof e==`boolean`?e:Zo&&!un?!0:!cn;hn(!1),Wc(t),fn(t)},[Zo,mn,un,cn,Wc,$r]),qc=(0,q.useCallback)(async e=>{if(!V)return;let t=Dr(m);t&&(e.runtimeMode!==V.runtimeMode&&await t.orchestration.dispatchCommand({type:`thread.runtime-mode.set`,commandId:yr(),threadId:e.threadId,runtimeMode:e.runtimeMode,createdAt:e.createdAt}),e.interactionMode!==V.interactionMode&&await t.orchestration.dispatchCommand({type:`thread.interaction-mode.set`,commandId:yr(),threadId:e.threadId,interactionMode:e.interactionMode,createdAt:e.createdAt}),e.tokenMode!==(V.tokenMode??At)&&await t.orchestration.dispatchCommand({type:`thread.token-mode.set`,commandId:yr(),threadId:e.threadId,tokenMode:e.tokenMode,createdAt:e.createdAt}))},[m,V]),Jc=(0,q.useRef)(async()=>!1),Yc=(0,q.useCallback)(async e=>{if(!V||!s.allowed)return!1;let t=Dr(m);if(!t)return!1;try{return await t.orchestration.dispatchCommand({type:`thread.goal.set`,commandId:yr(),threadId:V.id,...e,createdAt:new Date().toISOString()}),!0}catch(e){return Ve.add(fc({type:`error`,title:`Could not update goal`,description:e instanceof Error?e.message:`The goal update failed.`})),!1}},[s.allowed,m,V]),Xc=(0,q.useCallback)(()=>{let e=V?.goal?.objective;if(!e)return;let t=`/goal ${e}`;lt.current=t,Ie(k,t),yt()?.resetCursorState({prompt:t,cursor:t.length,detectTrigger:!1}),dc()},[k,yt,dc,V?.goal?.objective,Ie]),Zc=(0,q.useCallback)(e=>{Yc({status:e,startTurn:e===`active`&&Ia!==`running`})},[Yc,Ia]),Qc=(0,q.useCallback)(async()=>{if(!V||!s.allowed)return;let e=Dr(m);if(e)return e.orchestration.dispatchCommand({type:`thread.goal.clear`,commandId:yr(),threadId:V.id,createdAt:new Date().toISOString()}).then(()=>!0).catch(e=>(Ve.add(fc({type:`error`,title:`Could not clear goal`,description:e instanceof Error?e.message:`The goal could not be cleared.`})),!1))},[s.allowed,m,V]),$c=(0,q.useCallback)((e=!1)=>{tr(!0),Yn.current?.scrollToEnd?.({animated:e})},[]),el=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{Yn.current?.scrollToEnd?.({animated:!1})})})},[]),tl=(0,q.useCallback)(()=>{tr(!1),yt()?.collapseForReading()},[yt]),nl=(0,q.useCallback)(()=>{tr(!0)},[]),rl=(0,q.useRef)(new Wr(()=>Ct(!0),{wait:150})),il=(0,q.useCallback)(e=>{Qn.current!==e&&(Qn.current=e,e?(rl.current.cancel(),Ct(!1)):rl.current.maybeExecute())},[]);(0,q.useEffect)(()=>{Nn(null),Qn.current=!0,tr(!0),rl.current.cancel(),Ct(!1);let e=On.current;On.current=!1,ln(e||!xn.current&&bn.current!==`phone`),Dn.current=null},[K?.id]),(0,q.useEffect)(()=>{if(!Se||!Ja||cn)return;let e=ki?.turnId??null;if(e&&Ja.turnId!==e)return;let t=Ja.turnId??uo?.turnId??`__dismissed__`;if(Dn.current!==t){if(bn.current===`phone`){let e=document.activeElement;if(e instanceof HTMLElement&&e.closest(`[data-chat-composer-form="true"]`)!==null){Dn.current=t;return}}ln(!0)}},[Ja,ki?.turnId,Se,cn,uo?.turnId]),(0,q.useEffect)(()=>{if(!K?.id||or.terminalOpen)return;let e=window.requestAnimationFrame(()=>{uc()});return()=>{window.cancelAnimationFrame(e)}},[K?.id,uc,or.terminalOpen]),(0,q.useEffect)(()=>{if(!K?.id||K.messages.length===0)return;let e=new Set(K.messages.map(e=>e.id)),t=Ot.filter(t=>e.has(t.id));if(t.length===0)return;let n=window.setTimeout(()=>{kt(t=>t.filter(t=>!e.has(t.id)))},0);for(let e of t){let t=xA(e);if(t.length>0){Go(e.id,t);continue}bA(e)}return()=>{window.clearTimeout(n)}},[K?.id,K?.messages,Go,Ot]),(0,q.useEffect)(()=>{kt(e=>{for(let t of e)bA(t);return[]}),go(),Tt(null)},[E,go,h]);let al=(0,q.useCallback)(()=>{Tt(null)},[]),ol=K?.worktreePath??null,sl=Cc({activeWorktreePath:ol,hasServerThread:Ir,draftThreadEnvMode:Jr?ot?.envMode:void 0}),cl=!!(Ir&&K&&K.messages.length===0&&K.worktreePath===null&&!ac),ll=cl&&Wn!==void 0?Wn:K?.branch??null,{sourceControlActions:ul,branchControl:dl}=a4({gitCwd:ms,activeThreadRef:di,routeKind:g,draftId:E,onPostPush:ys,branchControlThread:K?{environmentId:K.environmentId,id:K.id}:null,isGitRepo:zs,canOverrideServerThreadBranch:cl,activeThreadBranch:ll,onActiveThreadBranchOverrideChange:Gn,envLocked:ac,onComposerFocusRequest:dc,canCheckoutPullRequestIntoThread:Xr,onCheckoutPullRequestRequest:pa}),fl=SA({requestedEnvMode:sl,isGitRepo:zs});(0,q.useEffect)(()=>{Gn(void 0)},[K?.id]),(0,q.useEffect)(()=>{cl||Gn(void 0)},[cl]),(0,q.useEffect)(()=>{if(!ni){Un(null),Cr(D);return}Un(e=>!e||e.threadId===ni?e:null)},[ni,D,Cr]),(0,q.useEffect)(()=>{ni&&Ps&&Un(e=>!e||e.threadId!==ni?e:af({project:{cwd:Ps},worktreePath:Fs})===e.cwd&&(Fs??null)===e.worktreePath?(di&&Cr(di),null):e)},[Ps,ni,di,Fs,Cr]),(0,q.useEffect)(()=>{ni&&Ps&&Sr&&af({project:{cwd:Ps},worktreePath:Fs})===Sr.cwd&&(Fs??null)===Sr.worktreePath&&di&&Cr(di)},[Ps,ni,di,Fs,Cr,Sr]),(0,q.useEffect)(()=>{or.terminalOpen||(di&&Cr(di),Un(e=>e?.threadId===ni?null:e))},[ni,di,Cr,or.terminalOpen]),(0,q.useEffect)(()=>{if(!fi)return;let e=ir.current[fi]??!1,t=!!or.terminalOpen;if(!e&&t){ir.current[fi]=t,An(e=>e+1);return}if(e&&!t){ir.current[fi]=t;let e=window.requestAnimationFrame(()=>{uc()});return()=>{window.cancelAnimationFrame(e)}}ir.current[fi]=t},[fi,uc,or.terminalOpen]),Vs(()=>{let e=e=>{ni&&!e.defaultPrevented&&Gl(e,Ss,{context:{terminalFocus:No(),terminalOpen:!!or.terminalOpen,modelPickerOpen:yt()?.isModelPickerOpen()??!1}})===`thread.find`&&(t3(e)||(e.preventDefault(),e.stopPropagation(),pc()))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[ni,Ss,pc,yt,or.terminalOpen]),Vs(()=>{let e=e=>{e.defaultPrevented||(!fu(e)||Ln.current)&&iu(e,`p`,{shiftKey:!0})&&(e.preventDefault(),e.stopPropagation(),Bn(`prs`),Fn(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]);let pl=(0,q.useCallback)(()=>{Bn(`prs`),Fn(!0)},[]);p4({activeThreadId:ni,keybindings:Ss,terminalOpen:or.terminalOpen,activeTerminalId:or.activeTerminalId,readComposer:yt,activeProject:Ni,toggleTerminalVisibility:Ec,splitTerminal:Dc,closeTerminal:kc,createNewTerminal:Oc,setTerminalOpen:yc,onToggleDiff:Js,onOpenFilesPanel:Ys,onOpenReviewPanel:qs,onOpenTerminalPanel:Xs,onOpenSimulatorPanel:Zs,runProjectScript:Ac});let ml=(0,q.useCallback)(async e=>{await si({thread:K??null,turnCount:e,environmentUnavailable:na,environmentUnavailableLabel:ia,turnInProgress:Ia===`running`||bo||nn})},[na,ia,K,nn,bo,Ia,si]),hl=(0,q.useCallback)(e=>K?vr({threadStarted:So,policy:wo,canonicalSelection:K.modelSelection,targetSelection:e}):!1,[K,So,wo]),gl=(0,q.useCallback)(()=>{Ve.add(fc({type:`warning`,title:`Wait for the thread to become idle`,description:wo.reason===`phone-tier`?`Provider switching stays on the current provider in the web phone view.`:`The staged provider or model was not sent. Try again when this thread is idle.`}))},[wo.reason]),_l=()=>{let e=Rr.getState().getComposerDraft(k),t=lt.current;return()=>{let n=Rr.getState().getComposerDraft(k);return lt.current!==t||n?.images!==e?.images||n?.terminalContexts!==e?.terminalContexts||n?.sourceControlContexts!==e?.sourceControlContexts}},vl=(0,q.useRef)({environmentId:m,threadId:K?.id,cwd:ms,allowed:s.allowed});vl.current={environmentId:m,threadId:K?.id,cwd:ms,allowed:s.allowed},(0,q.useEffect)(()=>(vl.current={environmentId:m,threadId:K?.id,cwd:ms,allowed:s.allowed},()=>{vl.current={...vl.current,allowed:!1}}),[K?.id,s.allowed,m,ms]);let yl=(0,q.useCallback)(async()=>{if(!Ni||!K)return!1;let e={environmentId:m,cwd:K.worktreePath??Ni.cwd};if(cu(e)&&!await pu(e))return Ve.add({type:`error`,title:`Editor changes could not be saved`,description:`Your message and file draft are preserved. Resolve the save error in File Preview before sending.`}),!1;let t=vl.current;return t.allowed&&t.environmentId===m&&t.threadId===K.id&&t.cwd===e.cwd},[Ni,K,m]),bl=(0,q.useCallback)(async()=>{if(rr.current)return!1;rr.current=!0;try{return await yl()}finally{rr.current=!1}},[yl]),xl=(0,q.useCallback)(e=>{if(Be(e.composer))return{allowed:!1,reason:De};let t=K?.session?.providerInstanceId,n=t?Pa.find(e=>e.instanceId===t):void 0,r=K?.tokenMode??At,i=K?.interactionMode??`default`;return ft({mutationReady:s.allowed&&!na,turnRunning:Ia===`running`,activeTurnId:K?.session?.activeTurnId,supportsTurnSteering:n?.supportsTurnSteering===!0,queuedModelSelection:e.composer.selectedModelSelection,activeModelSelection:K?.modelSelection,queuedRuntimeMode:e.settings.runtimeMode,activeRuntimeMode:K?.runtimeMode,queuedInteractionMode:e.settings.interactionMode,activeInteractionMode:i,queuedTokenMode:e.settings.tokenMode,activeTokenMode:r})},[na,K,Pa,s.allowed,Ia]),Sl=(0,q.useCallback)(e=>{let t=xl(e);return t.allowed?null:t.reason},[xl]),Cl=(0,q.useCallback)(async e=>{if(!fi||!K)return;let t=xl(e);if(!t.allowed){Ve.add(fc({type:`warning`,title:`Cannot steer this message`,description:t.reason}));return}let n=Dr(m);if(n&&await bl()){Si(fi,e.id);try{let r=LA({composer:e.composer,formatOutgoingPrompt:Q4}),i=OG(e.composer.sourceControlContexts),a=i?`${i}\n\n${r}`:r,o=await RA(e.composer.images),s=new Date().toISOString();await n.orchestration.dispatchCommand(Yt({commandId:yr(),threadId:K.id,expectedTurnId:t.expectedTurnId,messageId:re.make(e.id),text:a,attachments:o,createdAt:e.createdAt??s,requestedAt:s}))}catch(t){Ci(fi,e.id),Ve.add(fc({type:`error`,title:`Could not steer message`,description:t instanceof Error?t.message:`The steer request failed.`}))}}},[K,fi,Si,Ci,bl,m,xl]);(0,q.useEffect)(()=>{if(!fi||Ti.length===0)return;let e=new Set(K?.messages.map(e=>String(e.id))??[]);for(let t of Ti)e.has(t)&&Ei(t)},[K?.messages,fi,Ei,Ti]),(0,q.useEffect)(()=>{if(!fi||Ti.length===0)return;let e=new Set(Ba.flatMap(e=>{if(e.kind!==`provider.turn.steer.failed`||!e.payload)return[];let t=e.payload.messageId;return typeof t==`string`?[t]:[]}));for(let t of Ti)e.has(t)&&Ci(fi,t)},[fi,Ci,Ti,Ba]);let wl=async(e,t,n)=>{if(!s.allowed)return!1;let r=Dr(m);if(!r||!K||!Ni||rr.current)return!1;rr.current=!0;let i=_l();try{if(gr(e),!await yl())return!1;if(En&&(e={...e,selectedModelSelection:_G(e.selectedProvider,e.selectedModelSelection)}),!hl(e.selectedModelSelection))return gl(),!1;let a=await xK({api:r,threadId:K.id,prompt:e.prompt}).catch(()=>({requested:!1,image:null}));if(a.image)e.images.length<8?e={...e,images:[...e.images,a.image]}:(URL.revokeObjectURL(a.image.previewUrl),Ve.add(fc({type:`warning`,title:`The simulator screenshot was skipped`,description:`This message already has 8 attachments.`})));else if(a.requested){let e=a.reason===`no-attached-device`?`Open the Simulator workspace and choose a device first.`:a.reason===`device-not-booted`?`The selected simulator is still starting.`:`The current simulator screen could not be attached.`;Ve.add(fc({type:`warning`,title:`Couldn’t attach the simulator screen`,description:e}))}let o=En?{...t,interactionMode:Dt}:t;if(Jr&&(N.length>=2||L?.ownerKey===j)){if(L?.ownerKey===j)return Ve.add({type:`info`,title:`This comparison has already been submitted`,description:`Open its results or retry only safe failures. Your draft is retained.`}),!1;if(vn===`phone`||K.worktreePath||ot?.worktreeSource||o.computerUse)throw Error(`Batch launch requires a new Git branch workspace without a linked source or Computer Use.`);let t=ll??gs.data?.refName??null,n=Kr({id:Zt(),ownerKey:j,environmentId:m,projectId:Ni.id,selections:N,providers:Ma,prompt:e.prompt,isGitRepo:gs.data?.isRepo===!0,baseBranch:t,createdAt:new Date().toISOString()}),r=()=>{let e=ge(m,()=>lr(m));return()=>{if(e(),!z.current)throw Error(`Mutation readiness changed; your draft is retained.`)}},i=r();i();let a=await OA(e.sourceControlContexts,{fetcher:async e=>{if(!ms)throw Error(`Project context is unavailable.`);let t=e.kind===`issue`?await _s.fetchQuery(_o({environmentId:m,cwd:ms,reference:String(e.detail.number)})):await _s.fetchQuery(zi({environmentId:m,cwd:ms,reference:String(e.detail.number)}));return{...e,detail:t,fetchedAt:M(new Date),staleAfter:M(new Date(Date.now()+3e5))}}}),s=await nA.add(n);if(s.id!==n.id)return!1;let c={assertMutationReady:i,captureMutationReadiness:r,prepare:async(n,r,i)=>{i();let c=Dr(m);if(!c?.server?.getConfig)throw Error(`The selected node is unavailable.`);let l=(await c.server.getConfig()).providers;i();let{selection:u,entry:d}=be(n.modelSelection,l,e.prompt),f=tt({provider:d.driverKind,model:u.model,models:d.models,prompt:e.prompt,modelOptions:u.options}),p=LA({composer:{...e,selectedProvider:d.driverKind,selectedModel:u.model,selectedProviderModels:d.models,selectedPromptEffort:f.promptEffort,selectedModelSelection:u},formatOutgoingPrompt:Q4}),h=await BA({environmentId:m,threadId:n.threadId,attachments:e.images,signal:r});return ve({readProjectPreferences:gc,api:c,batch:s,destination:n,providers:l,prompt:p,projectCwd:Ni.cwd,baseBranch:t,fetchOrigin:ot?.fetchOrigin??!0,...o,sourceControlContexts:a,attachments:h,assertMutationReady:i})}};return R.current={id:s.id,ports:c},await nA.run(s.id,c),!1}let s=K.id,c=!Ir||K.messages.length===0,{shouldMaterializeLegacyBranchWorktree:l,baseBranchForWorktree:u,shouldCreateWorktree:d}=CA({isServerThread:Ir,isFirstMessage:c,threadWorktreePath:K.worktreePath,activeThreadBranch:ll,currentGitRefName:gs.data?.refName??null,sendEnvMode:fl}),f=c&&fl===`worktree`?ot?.worktreeSource??null:null;if(f&&!r.git.createWorktreeForProject)return ri(s,`Worktree creation is unavailable in this environment.`),!1;let p=null,h=async()=>{let e=r.git.createWorktreeForProject;if(!f||!e||!Ni)return null;let t=await e({fetchOrigin:ot?.fetchOrigin??!0,projectId:Ni.id,intent:f.kind===`pr`?{kind:`pr`,number:f.number}:f.kind===`issue`?{kind:`issue`,number:f.number,title:f.title}:{kind:`workItem`,provider:f.provider,key:f.key,title:f.title,...f.state?{state:f.state}:{},...f.stateName?{stateName:f.stateName}:{},...f.url?{url:f.url}:{}}});return Os(t.submoduleInitialization),p=_(m,t.sessionId),{threadId:t.sessionId,isServerThread:!0,isFirstMessage:!0}};return await zA({...n===void 0?{}:{messageId:n},preserveComposerDraft:n!==void 0||i(),composer:e,thread:{threadId:s,sourceProviderDriver:K.session?.provider??null,isFirstMessage:c,isServerThread:Ir,isLocalDraftThread:Jr&&!f,activeThreadBranch:ll,worktreePath:K.worktreePath,createdAt:K.createdAt,projectId:Ni.id},worktree:f?{shouldMaterializeLegacyBranchWorktree:!1,baseBranchForWorktree:null,shouldCreateWorktree:!1}:{shouldMaterializeLegacyBranchWorktree:l,baseBranchForWorktree:d&&!l?wG(ll,ot?.fetchOrigin??!0):u,...d&&!l?{fetchOrigin:ot?.fetchOrigin??!0,worktreeBranchName:ot?.worktreeBranchName??null}:{},shouldCreateWorktree:d},settings:o,project:{projectId:Ni.id,projectCwd:Ni.cwd},...f?{prepareForDispatch:h}:{},scroll:{scrollToEndBeforeOptimistic:async()=>{Qn.current=!0,tr(!0),rl.current.cancel(),Ct(!1),await Yn.current?.scrollToEnd?.({animated:!1})},scrollToEndAfterOptimistic:el},draft:{composerDraftTarget:k,environmentId:m,clearComposerDraftContent:Xe,setComposerDraftTokenMode:Ye,setComposerDraftPrompt:Ie,addComposerDraftImages:He,removeComposerDraftImage:ze,setComposerDraftTerminalContexts:Ue,setDraftThreadContext:Ze},dispatch:{api:r,beginLocalDispatch:ho,resetLocalDispatch:go,setOptimisticUserMessages:kt,setThreadError:ri},refs:{promptRef:lt,composerImagesRef:dt,composerTerminalContextsRef:mt,sendInFlightRef:nr},sourceControl:{fetcher:async e=>{let t=ms;if(!t)return e;let n=M(new Date),r=M(new Date(Date.now()+3e5));if(e.kind===`issue`){let i=await _s.fetchQuery(_o({environmentId:m,cwd:t,reference:String(e.detail.number)}));return{...e,detail:i,fetchedAt:n,staleAfter:r}}let i=await _s.fetchQuery(zi({environmentId:m,cwd:t,reference:String(e.detail.number)}));return{...e,detail:i,fetchedAt:n,staleAfter:r}}},persistSettings:{persistThreadSettingsForNextTurn:qc},composerHandle:{readComposer:yt},formatOutgoingPrompt:Q4})?(p&&(E&&Qe(E),await we({to:`/$environmentId/$threadId`,params:Le(p),replace:!0})),!0):!1}catch(e){return ri(K.id,e instanceof Error?e.message:`Could not launch the prompt.`),!1}finally{rr.current=!1}},Tl=(0,q.useRef)(wl);Tl.current=wl,Jc.current=async e=>{let t=yt()?.getSendContext();if(!t||nr.current||nn||na)return!1;let n=e.objective??V?.goal?.objective;if(!n)return!1;let r=EA({prompt:n,imageCount:t.images.length,terminalContexts:t.terminalContexts});return Tl.current({goal:e,prompt:`Continue pursuing this goal: ${n}`,promptForRestore:lt.current,trimmedPrompt:`Continue pursuing this goal: ${n}`,images:t.images,sendableTerminalContexts:r.sendableTerminalContexts,sourceControlContexts:t.sourceControlContexts,selectedProvider:t.selectedProvider,selectedModel:t.selectedModel,selectedProviderModels:t.selectedProviderModels,selectedPromptEffort:t.selectedPromptEffort,selectedModelSelection:t.selectedModelSelection,expiredTerminalContextCount:0},{runtimeMode:Vr,interactionMode:Hr,tokenMode:Ur})};let El=async e=>{if(e?.preventDefault(),!s.allowed)return;let t=Dr(m),n=ef(lt.current);if(n!==null&&vn!==`phone`&&di&&K){let e=yt()?.getSendContext();if(e&&(e.images.length>0||e.terminalContexts.length>0||e.sourceControlContexts.length>0)){Ve.add({type:`info`,title:`Side questions accept text only`,description:`Remove attached images, terminal selections, and source-control references before using /btw.`});return}let t=u(di),r=nf.getState().chatsByThreadKey[t];if(n&&(r?.pending||r?.failedQuestion)){nf.getState().open(t,K.modelSelection),Ve.add({type:`info`,title:r.pending?`Wait for the side answer or stop it first`:`Restore or discard the unsent side question first`,description:`Your composer draft is preserved.`});return}nf.getState().open(t,K.modelSelection,n||void 0);let i=lr(di.environmentId)?.client.textGeneration;n&&i&&p.allowed&&ta.phase===`connected`&&!nn&&!na&&nf.getState().ask(t,{threadId:di.threadId,requestId:Zt(),api:i}),lt.current=``,Ie(k,``),yt()?.resetCursorState();return}if(!t||!K||bo&&Ia!==`running`||nn||na||nr.current)return;if(to){so();return}let r=yt()?.getSendContext();if(!r)return;let{images:i,terminalContexts:a,sourceControlContexts:o,selectedProvider:c,selectedModel:l,selectedProviderModels:d,selectedPromptEffort:f,selectedModelSelection:h}=r,g=lt.current,{trimmedPrompt:_,sendableTerminalContexts:v,expiredTerminalContextCount:y,hasSendableContent:b}=EA({prompt:g,imageCount:i.length,terminalContexts:a}),x=an(_);if(x!==null){let e=()=>{lt.current=``,Ie(k,``),Ye(k,Ur),yt()?.resetCursorState()};if(x.action===`show`){let t=V?.goal;Ve.add({type:`info`,title:t?`Goal: ${t.status}`:`No goal set`,description:t?`${t.objective} — ${t.tokensUsed.toLocaleString()} tokens used${t.tokenBudget===null?``:` of ${t.tokenBudget.toLocaleString()}`}.${t.synchronization?` Goal synchronization: ${t.synchronization.state}. ${t.synchronization.error??``}`:``}`:`Use /goal followed by the outcome you want to achieve.`}),e();return}if(x.action!==`set`&&!V?.goal){Ve.add({type:`info`,title:`No goal set`,description:`Use /goal followed by an objective first.`});return}if(x.action===`clear`){await Qc()&&e();return}if(x.action===`pause`){await Yc({status:`paused`})&&e();return}if(x.action===`set`&&x.objective.length>4e3){Ve.add({type:`warning`,title:`Goal is too long`,description:`Keep the objective under ${te.toLocaleString()} characters.`});return}let t=x.action===`set`?{objective:x.objective,status:`active`}:{status:`active`};Ia===`running`?await Yc(t)&&e():await Jc.current(t);return}if(po&&lo&&!VA(g)){let e=Sc({draftText:_,planMarkdown:lo.planMarkdown});lt.current=``,Xe(k),Ye(k,Ur),yt()?.resetCursorState(),await Pl({text:e.text,interactionMode:e.interactionMode});return}let S=i.length===0&&v.length===0?Lr(_):null;if(S){Ic(S),lt.current=``,Xe(k),Ye(k,Ur),yt()?.resetCursorState();return}if(!b){if(y>0){let e=DA(y,`empty`);Ve.add(fc({type:`warning`,title:e.title,description:e.description}))}return}let C=dr({attachments:i,nowMs:Date.now()});if(C){Ve.add(fc({type:`warning`,title:`Attachments aren't ready`,description:C}));return}let w={prompt:g,trimmedPrompt:_,images:i,sendableTerminalContexts:v,sourceControlContexts:o,selectedProvider:c,selectedModel:l,selectedProviderModels:d,selectedPromptEffort:f,selectedModelSelection:h,expiredTerminalContextCount:y},T={runtimeMode:Vr,interactionMode:Hr,tokenMode:Ur},E=VA(g);if(E&&!E.prompt)return;let D=window.desktopBridge?.computerBeta,O=D&&K.environmentId===Yi;if(E&&!O){Ve.add({type:`warning`,title:`Computer Use requires the local desktop environment`});return}if(O)try{let e=await D.getState();if(E||e.preferences.defaultEnabled){if(![`codex`,`claudeAgent`,`cursor`,`copilot`,`opencode`].includes(c))throw Error(`This provider does not support Computer Use. Select Codex, Claude, Cursor, Copilot or managed OpenCode.`);if(!t.server)throw Error(`Local desktop settings are unavailable. Reconnect before sending this task.`);let e=await t.server.getSettings();if(!e.agentControl.enabled)throw Error(`Enable Private Agent Control in Settings → Integrations before sending this task.`);let n=e.providerInstances[h.instanceId];if(c===`opencode`&&n&&n.config!==null&&typeof n.config==`object`&&`serverUrl`in n.config&&n.config.serverUrl)throw Error(`Computer Use requires managed OpenCode. An external OpenCode server cannot receive local desktop access.`)}let n=await D.prepare(K.id,E!==null);if(lt.current!==g)return;n&&(T.computerUse=n)}catch(e){Ve.add({type:`warning`,title:`Computer Use setup`,description:e instanceof Error?e.message:`Complete setup, then send again.`});return}if(!hl(w.selectedModelSelection)){gl();return}if(Ia===`running`&&fi){if(rr.current)return;rr.current=!0;let e=_l();try{if(!await yl())return}finally{rr.current=!1}let t=Vt();gi(fi,{id:t,createdAt:new Date().toISOString(),composer:{...w,images:w.images.map(TA)},settings:T}),e()||(lt.current=``,Xe(k),Ye(k,Ur),yt()?.resetCursorState());return}await Tl.current(w,T)},Al=(0,q.useRef)(!1),jl=(0,q.useRef)(El);jl.current=El;let Nl=(0,q.useCallback)(e=>{Al.current||(Al.current=!0,jl.current(e).finally(()=>{Al.current=!1}))},[]);(0,q.useEffect)(()=>{if(!fi)return;let e=fi,t=wi[0];if(t&&s.allowed){if(K?.messages.some(e=>e.id===t.id)){Ei(t.id);return}t.deliveryStatus||Oo||na||to||mo||nr.current||Ti.includes(t.id)||yi(e,t.id)&&Tl.current(t.composer,t.settings,re.make(t.id)).then(n=>{if(bi(e,t.id,n),n)for(let e of t.composer.images)e.previewUrl.startsWith(`blob:`)&&URL.revokeObjectURL(e.previewUrl)},()=>bi(e,t.id,!1))}},[fi,wi,Oo,na,to,mo,s.allowed,yi,bi,K?.messages,Ei,Ti]);let Pl=(0,q.useCallback)(async({text:e,interactionMode:t})=>{let n=Dr(m);if(!n||!K||!Ir||bo||nn||nr.current)return;let r=e.trim();if(!r||!await bl())return;let i=yt()?.getSendContext();if(!i)return;let{selectedProvider:a,selectedModel:o,selectedProviderModels:s,selectedPromptEffort:c,selectedModelSelection:l}=i;if(!hl(l)){gl();return}let u=K.id,d=Vt(),f=new Date().toISOString(),p=Q4({provider:a,model:o,models:s,effort:c,text:r});nr.current=!0,ho({preparingWorktree:!1}),ri(u,null),Qn.current=!0,tr(!0),rl.current.cancel(),Ct(!1),await Yn.current?.scrollToEnd?.({animated:!1}),kt(e=>[...e,{id:d,role:`user`,text:p,createdAt:f,streaming:!1}]),el();try{await qc({threadId:u,createdAt:f,runtimeMode:Vr,interactionMode:t,tokenMode:Ur}),qe(_(K.environmentId,u),t),Ye(_(K.environmentId,u),Ur),await n.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:yr(),threadId:u,message:{messageId:d,role:`user`,text:p,attachments:[]},modelSelection:l,titleSeed:K.title,runtimeMode:Vr,interactionMode:t,tokenMode:Ur,...t==="default"&&lo?{sourceProposedPlan:{threadId:K.id,planId:lo.id}}:{},createdAt:f}),t==="default"&&Se&&(Dn.current=null,ln(!0)),nr.current=!1}catch(e){kt(e=>e.filter(e=>e.id!==d)),ri(u,e instanceof Error?e.message:`Failed to send plan follow-up.`),nr.current=!1,go()}},[K,lo,ho,hl,nn,bo,Ir,gl,qc,yt,go,Vr,el,qe,Ye,ri,Se,bl,m,Ur]),Fl=(0,q.useCallback)(async()=>{let e=Dr(m);if(!e||!K||!Ni||!lo||!Ir||bo||nn||na||nr.current||!await bl())return;let t=yt()?.getSendContext();if(!t)return;let{selectedProvider:n,selectedModel:r,selectedProviderModels:i,selectedPromptEffort:a,selectedModelSelection:o}=t,s=new Date().toISOString(),c=wr(),l=lo.planMarkdown,u=Q4({provider:n,model:r,models:i,effort:a,text:wc(l)}),d=fA(Tc(l)),f=o;nr.current=!0,ho({preparingWorktree:!1});let p=()=>{nr.current=!1,go()};await e.orchestration.dispatchCommand({type:`thread.create`,commandId:yr(),threadId:c,projectId:Ni.id,title:d,modelSelection:f,runtimeMode:Vr,interactionMode:`default`,tokenMode:Ur,branch:ll,worktreePath:K.worktreePath,createdAt:s}).then(()=>e.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:yr(),threadId:c,message:{messageId:Vt(),role:`user`,text:u,attachments:[]},modelSelection:o,titleSeed:d,runtimeMode:Vr,interactionMode:`default`,tokenMode:Ur,sourceProposedPlan:{threadId:K.id,planId:lo.id},createdAt:s})).then(()=>jA(_(K.environmentId,c))).then(()=>(On.current=Se,we({to:`/$environmentId/$threadId`,params:{environmentId:K.environmentId,threadId:c}}))).catch(async t=>{await e.orchestration.dispatchCommand({type:`thread.delete`,commandId:yr(),threadId:c}).catch(()=>void 0),Ve.add(fc({type:`error`,title:`Could not start implementation thread`,description:t instanceof Error?t.message:`An error occurred while creating the new thread.`}))}).then(p,p)},[Ni,lo,ll,K,ho,na,nn,bo,Ir,we,yt,go,Vr,Ur,Se,bl,m]),Il=(0,q.useCallback)((e,t,n)=>{if(!K)return;let r=Ma.find(t=>t.instanceId===e);if(!r||!r.enabled||!r.installed||r.status!==`ready`||r.availability===`unavailable`){dc();return}let i=r?.driver??null;if(wo.mode===`continuation-only`&&To===null){dc();return}if(To!==null&&i!==null&&i!==To){dc();return}if(To!==null&&K.session?.providerInstanceId){let e=Ma.find(e=>e.instanceId===K.session?.providerInstanceId);if(e?.continuation?.groupKey&&r?.continuation?.groupKey&&e.continuation.groupKey!==r.continuation.groupKey){dc();return}}let a=pt(e,le,Ma,t);if(!a){dc();return}let o={instanceId:e,model:a,...n?{options:n}:{}};if(!vr({threadStarted:So,policy:wo,canonicalSelection:K.modelSelection,targetSelection:o})){dc();return}Ge(_(K.environmentId,K.id),o),kA(K)||_e(o);let s=Zn(Hr,r.supportsAskMode??!1);s!==Hr&&Ic(s),dc()},[K,So,Ic,Hr,To,wo,dc,Ge,_e,Ma,le]),Ll=(0,q.useCallback)(e=>{Tt(e)},[]),Rl=(0,q.useRef)(fs);Rl.current=fs;let zl=(0,q.useRef)(ml);zl.current=ml;let Bl=(0,q.useCallback)(e=>{let t=Rl.current.get(e);typeof t==`number`&&zl.current(t)},[]),Vl=(0,q.useCallback)(e=>{zl.current(e)},[]);(0,q.useEffect)(()=>{$r||hn(!1)},[$r]),(0,q.useEffect)(()=>{hn(!1),fn(!1)},[K?.id]);let Hl=cn&&!$r&&!(Zo&&!un),Ul=mn&&$r,Wl=Hl||Ul,Kl=vn===`phone`,ql=Hl&&!gn&&!Kl,Jl=Hl&&(gn||Kl),Yl=kG(Ul,_n||!$r?0:260),Xl=kG(ql,_n||gn||$r?0:320),Zl=(0,q.useMemo)(()=>!Kl||!K?null:{environmentId:K.environmentId,threadId:K.id,title:K.title,projectCwd:ms,branch:Pi?.branch??K.branch??null,draft:g===`draft`&&E?{draftId:E,projectId:K.projectId,createdAt:K.createdAt}:null,workspacePanelOpen:$r,onToggleWorkspacePanel:Qs,onOpenFindInThread:pc,onOpenSourceControl:g===`draft`?null:()=>Kc(!0),sessionTabs:Wi,activeSessionTabKey:Gi,onSelectSessionTab:Ki},[Gi,K,Wi,Pi?.branch,E,ms,Ki,Kl,Qs,pc,g,Kc,$r]),Ql=vn!==`phone`&&!Zo,$l=vn!==`phone`,eu=(0,q.useRef)(null),tu=(0,q.useRef)(null),nu=(0,q.useRef)(null),ru=(0,q.useRef)(null);return(0,q.useEffect)(()=>{let e=eu.current;if(!e)return;if(!Ql){e.style.removeProperty(`--chat-composer-clearance`);return}let t=tu.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-composer-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-composer-clearance`)}},[Ql,ni]),(0,q.useEffect)(()=>{let e=nu.current;if(!e)return;if(!$l){e.style.removeProperty(`--chat-header-clearance`);return}let t=ru.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-header-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-header-clearance`)}},[$l,ni]),K?(0,Y.jsxs)(`div`,{ref:nu,className:`relative flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[!Kl&&K&&K.environmentId===Yi?(0,Y.jsx)(WA,{threadId:K.id},K.id):null,!Kl&&di?(0,Y.jsx)(lG,{containerRef:nu,source:di,canUseSide:Ir&&p.allowed,canCreate:s.allowed&&!nn&&!na&&!!Ni,canUseWorktree:zs&&!!ll,onCurrent:e=>{let t=_d(yt()?.getSendContext().prompt??lt.current,e);lt.current=t,Ie(k,t),yt()?.resetCursorState({prompt:t,cursor:t.length,detectTrigger:!1}),dc()},onSide:e=>{if(!Ir||!p.allowed)return;let t=u(di),n=nf.getState();n.open(t,K.modelSelection),n.setDraft(t,_d(nf.getState().chatsByThreadKey[t]?.draft??``,e)),requestAnimationFrame(()=>r.current&&nu.current?.querySelector(`[aria-label="Side question"]`)?.focus())},onNew:async({quote:e,prompt:t,envMode:n,intent:i,requestKey:a})=>{let c=yt()?.getSendContext();if(!c||!Ni||!s.allowed||nn||na)throw Error(`The workspace is unavailable. Your selection draft is preserved.`);await XA({quote:e,prompt:t,envMode:n,intent:i,requestKey:a,projectRef:o(m,Ni.id),branch:ll,canUseWorktree:zs,composer:c,settings:{runtimeMode:Vr,interactionMode:`default`,tokenMode:Ur},prepare:bl,isCurrent:()=>r.current&&vl.current.allowed&&vl.current.environmentId===m&&vl.current.threadId===K.id,createThread:Te})}},fi):null,!Kl&&di?(0,Y.jsx)(uG,{threadRef:di,providers:Ma,connected:ta.phase===`connected`&&!nn&&!na}):null,(0,Y.jsx)(`header`,{ref:ru,className:G(`border-b phone:pt-safe`,$l?`app-chrome-glass border-sidebar-border`:`border-border bg-muted/24`,$l&&`absolute inset-x-0 top-0 z-20`,Ol,a?G(`drag-region flex min-h-[52px] items-stretch pr-3 sm:pr-5 wco:min-h-[env(titlebar-area-height)]`,yn?Dl:`pl-3 sm:pl-5`,T&&`wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`):G(`pr-[calc(env(safe-area-inset-right)+0.75rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)]`,yn?Dl:`pl-[calc(env(safe-area-inset-left)+0.75rem)] sm:pl-[calc(env(safe-area-inset-left)+1.25rem)]`)),children:vn===`phone`?(0,Y.jsx)(Y$,{environmentId:K.environmentId,threadId:K.id,title:K.title}):(0,Y.jsx)(J$,{activeThreadEnvironmentId:K.environmentId,activeThreadTitle:K.title,activeProjectName:Ni?.name,isGitRepo:zs,openInCwd:ms,activeProjectScripts:Ni?.scripts,preferredScriptId:Ni?qn[Ni.id]??null:null,keybindings:Ss,availableEditors:Cs,worktreeBranch:Pi?.branch??K.branch??null,worktreeTitle:Pi?.title??null,worktreeOrigin:Pi?.origin??null,worktreeIssueNumber:Pi?.issueNumber??null,worktreeIssueState:Pi?.issueState??null,worktreePrNumber:Pi?.prNumber??null,worktreePrState:Pi?.prState??null,worktreePrIsDraft:Pi?.prIsDraft??null,worktreeWorkItemProvider:Pi?.workItemProvider??null,worktreeWorkItemKey:Pi?.workItemKey??null,worktreeWorkItemState:Pi?.workItemState??null,worktreeWorkItemStateName:Pi?.workItemStateName??null,onOpenLinkedWorktreeItem:Li,workspacePanelOpen:$r,liveAgentCount:hA({liveCount:Za.liveCount,workspacePanelOpen:$r,workspaceTab:ke.workspaceTab}),onToggleWorkspacePanel:Qs,overviewSidebarOpen:Wl,onToggleOverviewSidebar:Kc,onRunProjectScript:Ac,onAddProjectScript:jc,onUpdateProjectScript:Nc,onDeleteProjectScript:Pc})}),(0,Y.jsx)(As,{open:t&&Fi!==null,item:Fi,environmentId:Ni?.environmentId??K.environmentId,projectId:Ni?.id??K.projectId,cwd:Ni?.cwd??ms,onOpenChange:Ri}),(0,Y.jsx)(c1,{error:K.error,threadRef:di,onDismiss:()=>ri(K.id,null)}),(0,Y.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{ref:eu,className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 flex-col`,children:[Zo?null:Br?(0,Y.jsx)(BZ,{agentPanelModel:Za,onOpenAgents:rc,isWorking:Oo,activeTurnInProgress:Oo||!ji,activeTurnId:ki?.turnId??null,latestTurn:ki,activeTurnStartedAt:Bo,listRef:Yn,targetMessageId:Wt?.messageId??ke.messageId??null,targetMessageRequestId:Wt?.requestId??0,targetMessageRowHighlight:Wt===null,threadMessageSearchQuery:jt?Pt:``,threadMessageSearchOccurrencesByMessageId:ts,activeThreadMessageSearchOccurrence:jt?os:null,timelineEntries:Yo,turnDiffSummaryByAssistantMessageId:ds,activeThreadEnvironmentId:K.environmentId,routeThreadKey:O,openDiffTurnId:Qr?ke.diffTurnId??null:null,onOpenTurnDiff:tc,onCloseDiff:nc,revertTurnCountByUserMessageId:fs,undoTurnCountByTurnId:ps,onUndoTurn:Vl,onRevertUserMessage:Bl,isRevertingCheckpoint:ui,onImageExpand:Ll,markdownCwd:ms??void 0,resolvedTheme:Ae,timestampFormat:xe,workspaceRoot:Is,skills:Ts?.skills??G4,liveFollowEnabled:er,onIsAtEndChange:il,onManualNavigation:tl,onUserReachedEnd:nl,canLoadOlder:pi?.hasMoreBefore??!1,isLoadingOlder:mi?.status===`loading`,loadOlderError:mi?.error??null,onLoadOlder:hi,...vn===`phone`?{}:{onInspectContextHandoff:wn}},K.id):(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`flex min-h-0 flex-1`}),jt?(0,Y.jsx)(C$,{query:Pt,focusRequestId:Rt,matchCount:is,selectedIndex:as,onQueryChange:Ft,onNext:()=>hc(`next`),onPrevious:()=>hc(`previous`),onClose:mc}):null,Yl?(0,Y.jsx)(r4,{animate:!_n,open:Ul,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`floating`,onClose:Gc,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})}):null,bt&&(0,Y.jsx)(`div`,{className:`pointer-events-none absolute bottom-[calc(var(--chat-composer-clearance,0px)+0.25rem)] left-1/2 z-30 flex -translate-x-1/2 justify-center py-1.5`,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>$c(!0),className:`pointer-events-auto flex items-center gap-1.5 rounded-full border-0 bg-card/80 px-3 py-1 text-muted-foreground text-xs shadow-md/5 ring-1 ring-inset ring-foreground/6 backdrop-blur transition-[background-color,color,box-shadow] hover:bg-card hover:text-foreground hover:shadow-lg/8 hover:cursor-pointer`,children:[(0,Y.jsx)(fr,{className:`size-3.5`}),`Scroll to bottom`]})})]}),Zo?(0,Y.jsx)(`div`,{className:G(`shrink-0`,!_n&&`animate-in fade-in slide-in-from-bottom-1`),children:(0,Y.jsx)(o$,{projectName:Ni?.name??null,activeProjectId:Ni?.id??null,activeProjectEnvironmentId:Ni?.environmentId??null,routeKind:g,envLocked:ac,draftId:E??void 0,workLocation:zs?(0,Y.jsx)(m$,{draftId:E??void 0,environmentId:K.environmentId,threadId:K.id,projectId:Ni?.id??null,projectEnvironmentId:Ni?.environmentId??null,projectName:Ni?.name??null,envLocked:ac,availableEnvironments:da,onEnvironmentChange:fa?oc:void 0,onComposerFocusRequest:dc,onCheckoutPullRequestRequest:Xr?pa:void 0,cwd:Ni?.cwd??ms}):null})}):null,(0,Y.jsxs)(`div`,{ref:tu,className:G(`flex min-h-0 flex-col justify-end`,Ql&&`pointer-events-none absolute inset-x-0 bottom-0 z-20`,`pl-[calc(env(safe-area-inset-left)+0.75rem)] pr-[calc(env(safe-area-inset-right)+0.75rem)] pt-1.5 sm:pl-[calc(env(safe-area-inset-left)+1.25rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)] sm:pt-2`,zs?`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.25rem)]`:`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.75rem)] sm:pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+1rem)]`),children:[Ql?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`-top-10 -z-10 pointer-events-none absolute inset-x-0 bottom-0 bg-linear-to-t from-background via-background/45 to-transparent`}):null,(0,Y.jsxs)(`div`,{className:G(`relative isolate`,Ql&&`pointer-events-auto`),children:[(Ao!==null||Va.tasks.length>0||Va.detailsOmitted)&&vn!==`phone`?(0,Y.jsx)(`div`,{className:`mx-auto mb-2 flex w-full min-w-0 max-w-208 items-center px-4`,children:(0,Y.jsx)(hK,{work:Va,connected:!na&&ta.phase===`connected`,mutationReady:s.allowed&&!na&&ta.phase===`connected`,onStopTask:Fo,liveness:Ao??`monitoring`,liveCount:Za.liveCount,waitingCount:Za.waitingCount,onOpenAgents:rc,stopping:jo,onStop:Po},fi)}):null,vn===`phone`?null:qa.map(e=>(0,Y.jsx)(Qk,{input:e,disabled:!s.allowed||na||ta.phase!==`connected`,onRespond:oi},e.userInputIdentity?.requestEventId??e.requestId)),(0,Y.jsx)(C1,{className:`relative z-0`,items:Ns}),vn!==`phone`&&L?(0,Y.jsx)(rA,{batch:L,error:I.storageError,retryDisabled:!!I.storageError||!s.allowed||nn||na,onNew:Jr&&L.ownerKey===j?()=>{let e=_l(),t=vl.current;nA.releaseSource(L.id).then(n=>{if(!n)throw Error(`Finish or cancel comparison targets first.`);e()||vl.current.environmentId!==t.environmentId||vl.current.threadId!==t.threadId||(lt.current=``,Xe(k),yt()?.resetCursorState(),F([]))}).catch(e=>Ve.add({type:`error`,title:`Comparison draft could not be released`,description:e instanceof Error?e.message:`Draft storage unavailable`}))}:void 0,onRetry:R.current?.id===L.id?()=>{let e=R.current;e&&nA.run(e.id,e.ports).catch(e=>Ve.add({type:`error`,title:e instanceof Error?e.message:`Retry unavailable`}))}:void 0}):null,vn!==`phone`&&Jr&&!L?(0,Y.jsx)($k,{selections:N,disabled:!s.allowed||bo||!I.hydrated||!!I.storageError||xa?.environment.capabilities.requiredWorktreeBootstrap!==!0||gs.data?.isRepo!==!0||!!ot?.worktreeSource,reason:I.storageError??(xa?.environment.capabilities.requiredWorktreeBootstrap===!0?gs.data?.isRepo===!0?null:`Batch launch requires a Git project.`:`Update this node to enable isolated batch launches.`),onAdd:()=>{let e=yt()?.getSendContext();if(!e)return;let t=e.selectedModelSelection;F(e=>e.some(e=>ut(e)===ut(t))?e:[...e,t])},onRemove:e=>F(t=>t.filter(t=>ut(t)!==e))}):null,vn===`phone`?null:(0,Y.jsx)(_1,{environmentId:m,activeThreadId:ni}),ja?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mb-2 h-5`}):null,(0,Y.jsx)(V4,{messages:wi,onRemove:Ei,onMove:Di,onRetry:vn===`phone`?void 0:e=>{fi&&xi(fi,e)},showSteerAction:vn!==`phone`,steeringIds:Ti,getSteerUnavailableReason:Sl,onSteer:e=>void Cl(e)}),(0,Y.jsx)(`div`,{className:`relative z-10`,children:(0,Y.jsx)(gY,{ref:gt,composerDraftTarget:k,environmentId:m,routeKind:g,routeThreadRef:D,draftId:E,activeThreadId:ni,activeThreadEnvironmentId:K?.environmentId,activeThreadSessionProviderInstanceId:Fa,activeThreadStarted:So,isServerThread:Ir,isLocalDraftThread:Jr,activeThreadGoal:V?.goal??null,phase:Ia,isConnecting:nn,isSendBusy:bo||!s.allowed||cc,isPreparingWorktree:yo,environmentUnavailable:aa,activePendingApproval:mo,pendingApprovals:Ga,pendingUserInputs:Ka,activePendingProgress:to,activePendingResolvedAnswers:no,activePendingIsResponding:io,activePendingDraftAnswers:$a,activePendingQuestionIndex:eo,respondingRequestIds:ci,showPlanFollowUpPrompt:po,activeProposedPlan:lo,activePlan:Ja,sidebarProposedPlan:uo,planSidebarLabel:fo,planSidebarOpen:Wl,runtimeMode:Vr,interactionMode:Hr,tokenMode:Ur,lockedProvider:To,providerStatuses:Pa,activeThreadModelSelection:K?.modelSelection,activeThreadActivities:Ba,phoneThreadDock:Zl,resolvedTheme:Ae,settings:le,keybindings:Ss,terminalOpen:!!or.terminalOpen,gitCwd:ms,executionTargets:da,executionTargetLocked:ac||g===`server`,onExecutionTargetChange:oc,promptRef:lt,composerImagesRef:dt,composerTerminalContextsRef:mt,shouldAutoScrollRef:Qn,scheduleStickToBottom:$c,onSend:Nl,onInterrupt:ii,onImplementPlanInNewThread:Fl,onRespondToApproval:ai,onSelectActivePendingUserInputOption:ao,onAdvanceActivePendingUserInput:so,onPreviousActivePendingUserInputQuestion:co,onChangeActivePendingUserInputCustomAnswer:oo,onProviderModelSelect:Il,toggleInteractionMode:Rc,handleRuntimeModeChange:Fc,handleInteractionModeChange:Ic,handleTokenModeChange:Lc,togglePlanSidebar:Kc,focusComposer:uc,scheduleComposerFocus:dc,setThreadError:ri,onExpandImage:Ll,onGoalBudgetChange:e=>Yc({tokenBudget:e}),onRetryGoal:()=>{V?.goal?.synchronization?.action===`clear`?Qc():Yc({startTurn:V?.goal?.status===`active`&&Ia!==`running`})},onEditGoal:Xc,onGoalStatusChange:Zc,onClearGoal:Qc})})]}),zs&&(0,Y.jsx)(`div`,{className:G(Ql&&`pointer-events-auto`),children:(0,Y.jsx)(cK,{environmentId:K.environmentId,threadId:K.id,...g===`draft`&&E?{draftId:E}:{},...cl?{activeThreadBranchOverride:ll,onActiveThreadBranchOverrideChange:Gn}:{},envLocked:ac,onComposerFocusRequest:dc,onOpenWorktreeSources:pl,contextControlsHoisted:Zo,...Xr?{onCheckoutPullRequestRequest:pa}:{},...fa?{onEnvironmentChange:oc}:{},availableEnvironments:da,terminalAvailable:Ni!==void 0&&l.allowed,terminalOpen:or.terminalOpen,terminalToggleShortcutLabel:Us,onToggleTerminal:Ec,terminalCount:or.terminalIds.length})})]}),Zo?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`min-h-0 flex-1`}):null,Mn?(0,Y.jsx)(zY,{open:!0,environmentId:K.environmentId,projectId:Ni?.id??null,threadId:K.id,cwd:Ni?.cwd??null,initialReference:Mn.initialReference,onOpenChange:e=>{e||ma()},onPrepared:ga},Mn.key):null,(0,Y.jsx)(hs,{open:t&&Pn,environmentId:K.environmentId,projectId:Ni?.id??null,cwd:Ni?.cwd??null,initialTab:Rn,onCreated:e=>{we({to:`/$environmentId/$threadId`,params:{environmentId:K.environmentId,threadId:e.sessionId}})},onOpenChange:Fn})]}),Sn&&!gn&&!Kl?(0,Y.jsx)(`aside`,{className:`flex min-h-0 w-[25rem] shrink-0 border-l border-border pt-[var(--chat-header-clearance,0px)]`,children:(0,Y.jsx)(RY,{environmentId:K.environmentId,threadId:K.id,marker:Sn.marker,onClose:Tn})}):Xl?(0,Y.jsx)(n4,{animate:!_n,open:ql,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`sidebar`,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})}):null]}),Mr.map(({key:e,threadRef:n})=>(0,Y.jsx)(vY,{threadRef:n,threadId:n.threadId,visible:t&&e===fi&&or.terminalOpen&&l.allowed,launchContext:e===fi?Ls??null:null,focusRequestId:e===fi?kn:0,splitShortcutLabel:Ws??void 0,newShortcutLabel:Gs??void 0,closeShortcutLabel:Ks??void 0,keybindings:Ss,onAddTerminalContext:_c},e)),t&&!Kl&&gn&&Sn?(0,Y.jsx)(H4,{open:!0,onClose:Tn,children:(0,Y.jsx)(RY,{environmentId:K.environmentId,threadId:K.id,marker:Sn.marker,onClose:Tn})}):null,Kl?(0,Y.jsx)(Z$,{label:fo,open:t&&Jl,onClose:Gc,children:(0,Y.jsx)(Q$,{title:fo,backLabel:`Back to thread`,onBack:Gc,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`sheet`,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})})}):gn?(0,Y.jsx)(H4,{open:t&&Jl,onClose:Gc,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`sheet`,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})}):null,wt&&(0,Y.jsx)(DY,{preview:wt,onClose:al})]}):(0,Y.jsx)(lu,{})}var r3=(0,q.lazy)(()=>r(()=>import(`./ThreadWorkspacePanel-L6uNQRNX.js`),__vite__mapDeps([0,1]))),i3=`chat_diff_sidebar_width`,a3=`clamp(24rem,34vw,36rem)`,o3=352,s3=896,c3=360,l3=`w-5 cursor-ew-resize after:w-px after:bg-border/50 hover:after:bg-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40 focus-visible:ring-offset-0`,u3=208;function d3(e){return{...Kl(e),diff:void 0,diffTurnId:void 0,diffFilePath:void 0,preview:void 0,workspaceOpen:void 0,workspaceTab:void 0,workspaceAgentKey:void 0}}var f3=e=>{let t=(0,J.c)(6),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(ik,{}),t[0]=n):n=t[0];let r;t[1]===e.label?r=t[2]:(r=(0,Y.jsx)(ak,{label:e.label}),t[1]=e.label,t[2]=r);let i;return t[3]!==e.mode||t[4]!==r?(i=(0,Y.jsx)(rk,{mode:e.mode,header:n,children:r}),t[3]=e.mode,t[4]=r,t[5]=i):i=t[5],i};function p3(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`translate-x-0 opacity-100`:`translate-x-4 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`flex min-h-0 w-full flex-1 transition-[translate,opacity] duration-[300ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;return t[6]!==e.children||t[7]!==s||t[8]!==c||t[9]!==u?(d=(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,children:e.children}),t[6]=e.children,t[7]=s,t[8]=c,t[9]=u,t[10]=d):d=t[10],d}var m3=e=>{let t=(0,J.c)(15),n=e.panelMode===`review`?`Loading diff viewer...`:e.panelMode===`files`?`Loading file preview...`:e.panelMode===`terminal`?`Loading terminal...`:e.panelMode===`simulator`?`Loading simulator...`:e.panelMode===`agents`?`Loading agents...`:e.panelMode===`agent`?`Loading subagent thread...`:`Loading workspace...`,r;t[0]!==e.mode||t[1]!==n?(r=(0,Y.jsx)(f3,{mode:e.mode,label:n}),t[0]=e.mode,t[1]=n,t[2]=r):r=t[2];let i=e.maximized??!1,a=e.reserveChromeInset??!1,o;t[3]!==e.mode||t[4]!==e.onClosePanelTab||t[5]!==e.onToggleMaximized||t[6]!==e.openedAgentKeys||t[7]!==e.openedPanelModes||t[8]!==e.panelMode||t[9]!==i||t[10]!==a?(o=(0,Y.jsx)(r3,{mode:e.mode,panelMode:e.panelMode,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:i,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:a}),t[3]=e.mode,t[4]=e.onClosePanelTab,t[5]=e.onToggleMaximized,t[6]=e.openedAgentKeys,t[7]=e.openedPanelModes,t[8]=e.panelMode,t[9]=i,t[10]=a,t[11]=o):o=t[11];let s;return t[12]!==r||t[13]!==o?(s=(0,Y.jsx)(dk,{children:(0,Y.jsx)(q.Suspense,{fallback:r,children:o})}),t[12]=r,t[13]=o,t[14]=s):s=t[14],s},h3=e=>{let t=(0,J.c)(41),{maximized:n,open:r,onClose:i,onOpen:a,panelMode:o,renderContent:s}=e,c=rs(Io),l=kG(r,c?0:c3),u;t[0]===l?u=t[1]:(u=Po({active:l,containIntrinsicSize:`28rem 100vh`}),t[0]=l,t[1]=u);let d=u,f;t[2]!==i||t[3]!==a?(f=e=>{if(e){a();return}i()},t[2]=i,t[3]=a,t[4]=f):f=t[4];let p=f,m=g3,h;t[5]!==n||t[6]!==r?(h=G(`min-h-0 bg-transparent`,n?`min-w-0 flex-1`:G(`flex-none transition-[width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`w-(--sidebar-width)`:`w-0`)),t[5]=n,t[6]=r,t[7]=h):h=t[7];let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g={"--sidebar-width":a3},t[8]=g):g=t[8];let _;t[9]!==n||t[10]!==r?(_=G(`border-l border-border bg-card text-foreground`,n?`translate-x-0`:G(`transition-[translate,width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`translate-x-0`:`pointer-events-none translate-x-full`)),t[9]=n,t[10]=r,t[11]=_):_=t[11];let v;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(v={maxWidth:s3,minWidth:o3,shouldAcceptWidth:m,storageKey:i3},t[12]=v):v=t[12];let y=!c,b;t[13]!==n||t[14]!==o||t[15]!==e.onClosePanelTab||t[16]!==e.onToggleMaximized||t[17]!==e.openedAgentKeys||t[18]!==e.openedPanelModes||t[19]!==e.reserveChromeInset||t[20]!==s||t[21]!==l?(b=s&&l?(0,Y.jsx)(m3,{mode:`sidebar`,panelMode:o,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:n,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:e.reserveChromeInset}):null,t[13]=n,t[14]=o,t[15]=e.onClosePanelTab,t[16]=e.onToggleMaximized,t[17]=e.openedAgentKeys,t[18]=e.openedPanelModes,t[19]=e.reserveChromeInset,t[20]=s,t[21]=l,t[22]=b):b=t[22];let x;t[23]!==d||t[24]!==b?(x=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:d,children:b}),t[23]=d,t[24]=b,t[25]=x):x=t[25];let S;t[26]!==r||t[27]!==y||t[28]!==x?(S=(0,Y.jsx)(p3,{animate:y,open:r,children:x}),t[26]=r,t[27]=y,t[28]=x,t[29]=S):S=t[29];let C;t[30]===n?C=t[31]:(C=n?null:(0,Y.jsx)(ul,{"aria-label":`Resize workspace panel`,className:l3,title:`Drag to resize workspace panel`}),t[30]=n,t[31]=C);let w;t[32]!==n||t[33]!==C||t[34]!==_||t[35]!==S?(w=(0,Y.jsxs)(fl,{side:`right`,collapsible:`offcanvas`,maximized:n,className:_,resizable:v,children:[S,C]}),t[32]=n,t[33]=C,t[34]=_,t[35]=S,t[36]=w):w=t[36];let T;return t[37]!==p||t[38]!==w||t[39]!==h?(T=(0,Y.jsx)(dl,{defaultOpen:!1,open:!0,onOpenChange:p,className:h,style:g,children:w}),t[37]=p,t[38]=w,t[39]=h,t[40]=T):T=t[40],T};function g3(e){let{nextWidth:t,wrapper:n}=e,r=document.querySelector(`[data-chat-composer-form='true']`);if(!r)return!0;let i=r.parentElement;if(!i)return!0;let a=n.style.getPropertyValue(`--sidebar-width`);n.style.setProperty(`--sidebar-width`,`${t}px`);let o=window.getComputedStyle(i),s=Number.parseFloat(o.paddingLeft)||0,c=Number.parseFloat(o.paddingRight)||0,l=Math.max(0,i.clientWidth-s-c),u=r.getBoundingClientRect(),d=r.querySelector(`[data-chat-composer-footer='true']`),f=r.querySelector(`[data-chat-composer-actions='right']`)?.getBoundingClientRect().width??0,p=d&&(Number.parseFloat(window.getComputedStyle(d).columnGap)||Number.parseFloat(window.getComputedStyle(d).gap))||0,m=u3+f+p,h=r.scrollWidth>r.clientWidth+.5,g=u.width>l+.5,_=r.clientWidth+.5<m;return a.length>0?n.style.setProperty(`--sidebar-width`,a):n.style.removeProperty(`--sidebar-width`),!h&&!g&&!_}export{Pw as $,ep as $t,zE as A,jS as At,jT as B,ap as Bt,tk as C,SC as Ct,PO as D,vC as Dt,FO as E,bC as Et,GT as F,$f as Ft,ST as G,qf as Gt,CT as H,dp as Ht,VT as I,Jf as It,hT as J,Qf as Jt,TT as K,mp as Kt,NT as L,ip as Lt,LE as M,Lm as Mt,ME as N,Gh as Nt,NO as O,_C as Ot,cE as P,yp as Pt,Fw as Q,tp as Qt,xT as R,fp as Rt,rk as S,TC as St,IO as T,xC as Tt,wT as U,lp as Ut,ET as V,up as Vt,MT as W,cp as Wt,Lw as X,np as Xt,Rw as Y,Yf as Yt,Iw as Z,rp as Zt,kk as _,ed as _n,NC as _t,H4 as a,mf as an,bw as at,bk as b,DC as bt,kA as c,nf as cn,tw as ct,Vk as d,Qd as dn,aw as dt,Xf as en,kw as et,zk as f,$d as fn,rw as ft,Ok as g,ud as gn,iw as gt,Dk as h,Nd as hn,$C as ht,n3 as i,Uf as in,Tw as it,RE as j,J_ as jt,xO as k,NS as kt,AA as l,Jd as ln,ew as lt,Ek as m,Zd as mn,ow as mt,h3 as n,sp as nn,Mw as nt,Z$ as o,af as on,xw as ot,Nk as p,Xd as pn,nw as pt,_T as q,Zf as qt,d3 as r,Gf as rn,Ow as rt,sW as s,of as sn,Sw as st,m3 as t,op as tn,Aw as tt,Hk as u,qd as un,sw as ut,Sk as v,Xu as vn,kC as vt,ZO as w,CC as wt,ak as x,EC as xt,xk as y,Ju as yn,OC as yt,bT as z,pp as zt};
201
+ `)});if(!t.ok){let n=L4(t.reason);n&&e.thread&&r(e.thread.id,n)}}catch(t){e.thread&&r(e.thread.id,t instanceof Error?t.message:`Failed to revert thread state.`)}finally{l(!1)}}},[t,c,r]),respondingRequestIds:i,respondingUserInputRequestIds:o,isRevertingCheckpoint:c}}function z4(e){return _e({trimmedPrompt:e.composer.trimmedPrompt,imageCount:e.composer.images.length,terminalContextCount:e.composer.sendableTerminalContexts.length})}var B4=G(`inline-flex size-6 shrink-0 items-center justify-center rounded-md text-muted-foreground/80`,`transition-colors hover:text-foreground disabled:pointer-events-none disabled:opacity-40`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`),V4=(0,q.memo)(function(e){let t=(0,J.c)(25),{messages:n,onRemove:r,onMove:i,onRetry:a,showSteerAction:o,steeringIds:s,getSteerUnavailableReason:c,onSteer:l}=e;if(n.length===0)return null;let u;t[0]===n.length?u=t[1]:(u=(0,Y.jsxs)(`div`,{className:`px-1.5 pb-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:[`Queued · `,n.length]}),t[0]=n.length,t[1]=u);let d;if(t[2]!==c||t[3]!==n||t[4]!==i||t[5]!==r||t[6]!==a||t[7]!==l||t[8]!==o||t[9]!==s){let e;t[11]!==c||t[12]!==n.length||t[13]!==i||t[14]!==r||t[15]!==a||t[16]!==l||t[17]!==o||t[18]!==s?(e=(e,t)=>{let u=z4(e),d=`queued message ${t+1} of ${n.length}: ${u}`,f=c(e),p=s.includes(e.id),m=e.deliveryStatus===`sending`;return(0,Y.jsxs)(`li`,{className:`flex items-center gap-1 rounded-md px-1.5 py-1 hover:bg-muted/50`,children:[(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-xs text-foreground`,title:u,children:u}),a&&e.deliveryStatus===`failed`?(0,Y.jsx)(`button`,{type:`button`,className:G(B4,`w-auto px-1.5 text-[11px]`),onClick:()=>a(e.id),"aria-label":`Retry ${d}`,title:`Send failed. Your message and attachments are still queued.`,children:`Retry`}):null,o?(0,Y.jsxs)(`button`,{type:`button`,className:G(B4,`w-auto gap-1 px-1.5 text-[11px]`),disabled:f!==null||p||m,onClick:()=>l(e),"aria-label":`Steer ${d} into the active turn`,title:f??`Send this message into the active turn`,children:[p?(0,Y.jsx)(Er,{className:`size-3 animate-spin`}):(0,Y.jsx)(Au,{className:`size-3`}),`Steer`]}):null,(0,Y.jsx)(`button`,{type:`button`,className:B4,disabled:t===0||m,onClick:()=>i(e.id,`up`),"aria-label":`Move ${d} up`,children:(0,Y.jsx)(_n,{className:`size-3.5`})}),(0,Y.jsx)(`button`,{type:`button`,className:B4,disabled:t===n.length-1||m,onClick:()=>i(e.id,`down`),"aria-label":`Move ${d} down`,children:(0,Y.jsx)(fr,{className:`size-3.5`})}),(0,Y.jsx)(`button`,{type:`button`,className:B4,disabled:m,onClick:()=>r(e.id),"aria-label":`Remove ${d}`,children:(0,Y.jsx)(Ut,{className:`size-3.5`})})]},e.id)},t[11]=c,t[12]=n.length,t[13]=i,t[14]=r,t[15]=a,t[16]=l,t[17]=o,t[18]=s,t[19]=e):e=t[19],d=n.map(e),t[2]=c,t[3]=n,t[4]=i,t[5]=r,t[6]=a,t[7]=l,t[8]=o,t[9]=s,t[10]=d}else d=t[10];let f;t[20]===d?f=t[21]:(f=(0,Y.jsx)(`ul`,{className:`flex flex-col gap-0.5`,children:d}),t[20]=d,t[21]=f);let p;return t[22]!==u||t[23]!==f?(p=(0,Y.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border/60 bg-muted/30 p-1.5`,children:[u,f]}),t[22]=u,t[23]=f,t[24]=p):p=t[24],p});function H4(e){let t=(0,J.c)(11),n;t[0]===e.open?n=t[1]:(n=Po({active:e.open,containIntrinsicSize:`28rem 100vh`}),t[0]=e.open,t[1]=n);let r=n,i;t[2]===e?i=t[3]:(i=t=>{t||e.onClose()},t[2]=e,t[3]=i);let a;t[4]!==r||t[5]!==e.children?(a=(0,Y.jsx)(sl,{side:`right`,showCloseButton:!1,keepMounted:!0,className:Uk,children:(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:r,children:e.children})}),t[4]=r,t[5]=e.children,t[6]=a):a=t[6];let o;return t[7]!==e.open||t[8]!==i||t[9]!==a?(o=(0,Y.jsx)(cl,{open:e.open,onOpenChange:i,children:a}),t[7]=e.open,t[8]=i,t[9]=a,t[10]=o):o=t[10],o}var U4=[],W4=[],G4=[],K4=Object.freeze([]),q4=`\0`,J4=Object.freeze([]),Y4=Object.freeze([]);function X4(e){let t=[`${e.length}`];for(let n of e){t.push(n.instanceId,n.driver,n.displayName??``,n.accentColor??``,n.badgeLabel??``,n.continuation?.groupKey??``,n.showInteractionModeToggle?`1`:`0`,n.supportsAskMode?`1`:`0`,n.supportsTurnSteering?`1`:`0`,n.enabled?`1`:`0`,n.status,n.installed?`1`:`0`,n.availability??``,n.unavailableReason??``,n.auth.status,n.auth.type??``,n.auth.label??``,n.auth.email??``,n.message??``);for(let e of n.models)t.push(`model`,e.slug,e.name,e.shortName??``,e.subProvider??``,e.isCustom?`1`:`0`,JSON.stringify(e.capabilities)??``);for(let e of n.slashCommands)t.push(`command`,e.name,e.description??``,e.input?.hint??``);for(let e of n.skills)t.push(`skill`,e.name,e.path,e.enabled?`1`:`0`,e.scope??``,e.displayName??``,e.shortDescription??``,e.description??``)}return t.join(q4)}function Z4(e,t){let n=X4(e);if(n===t.key)return t.snapshot;let r=e;return t.key=n,t.snapshot=r,r}function Q4(e){let t=Ue(e.models,e.model,e.provider),n=yn(t,e.effort);return fn(e.text,n)}function $4(e){return typeof Element>`u`?null:e instanceof Element?e:null}function e3(e){return $4(e)?.closest(`[data-chat-composer-form="true"], [data-thread-message-search="true"]`)!==null}function t3(e){return!!(e.type!==`keydown`||e.isComposing||No()||ql(e.target)||gu()||nu(e.target)&&!e3(e.target))}function n3(e){Qo(`ChatView`);let t=$s(),n=Hs(),r=ec(),s=Rs(y.dispatchCommand),l=Rs(ee.terminalOpen),p=Rs(ee.textGenerationAskSideQuestion),{environmentId:m,threadId:h,routeKind:g,onDiffPanelOpen:v,onPreviewPanelOpen:b,onTerminalPanelOpen:x,onSimulatorPanelOpen:S,onAgentPanelOpen:C,onToggleWorkspacePanel:w,reserveTitleBarControlInset:T=!0}=e,E=g===`draft`?e.draftId:null,D=(0,q.useMemo)(()=>_(m,h),[m,h]),O=(0,q.useMemo)(()=>u(D),[D]),k=g===`server`?D:e.draftId,j=E?String(E):O,[N,F]=(0,q.useState)([]),I=nA.useStore(),L=I.batches.find(e=>e.environmentId===m&&(e.ownerKey===j||e.destinations.some(e=>e.threadId===h))),R=(0,q.useRef)(null),z=(0,q.useRef)(s.allowed);z.current=s.allowed,(0,q.useEffect)(()=>{F([]),R.current=null},[j]);let V=me((0,q.useMemo)(()=>Jt(g===`server`?D:null),[g,D])),ae=me(e=>e.setThreadError),H=vt(e=>e.markThreadVisited),U=vt(e=>e.alwaysUseBuildMode),se=vt(e=>g===`server`?e.threadLastVisitedAtById[O]:void 0),le=St(),de=Hc(),fe=Vc(),he=Lo(),_e=Rr(e=>e.setStickyModelSelection),xe=le.timestampFormat,Se=le.autoOpenPlanSidebar,Ce=Ho(),we=(0,q.useCallback)(e=>r.current?Ce(e):Promise.resolve(),[r,Ce]),{handleNewThread:Te}=bc(),Ee=Re(e=>e.openSettings),Oe=du({strict:!1,select:e=>hu(e)}),ke=t?Oe:{},{resolvedTheme:Ae}=kl(),je=Rr(e=>e.getComposerDraft(k)?.runtimeMode??null),Me=Rr(e=>e.getComposerDraft(k)?.interactionMode??null),Ne=Rr(e=>e.getComposerDraft(k)?.tokenMode??null),Fe=Rr(e=>e.getComposerDraft(k)?.activeProvider??null),Ie=Rr(e=>e.setPrompt),ze=Rr(e=>e.removeImage),He=Rr(e=>e.addImages),Ue=Rr(e=>e.setTerminalContexts),Ge=Rr(e=>e.setModelSelection),Ke=Rr(e=>e.setRuntimeMode),qe=Rr(e=>e.setInteractionMode),Ye=Rr(e=>e.setTokenMode),Xe=Rr(e=>e.clearComposerContent),Ze=Rr(e=>e.setDraftThreadContext),Qe=Rr(e=>e.clearDraftThread),et=Rr(e=>e.getDraftSessionByLogicalProjectKey),nt=Rr(e=>e.getDraftSession),rt=Rr(e=>e.setLogicalProjectDraftThreadId),ot=Rr(e=>g===`server`?e.getDraftSessionByRef(D):E?e.getDraftSession(E):null),lt=(0,q.useRef)(``),dt=(0,q.useRef)([]),mt=(0,q.useRef)([]),ht=(0,q.useRef)(null),gt=ns()??ht,yt=(0,q.useCallback)(()=>gt.current,[gt]),[bt,Ct]=(0,q.useState)(!1),[wt,Tt]=(0,q.useState)(null),[Ot,kt]=(0,q.useState)([]),[jt,Nt]=(0,q.useState)(!1),[Pt,Ft]=(0,q.useState)(``),[Rt,zt]=(0,q.useState)(0),[Bt,Ut]=(0,q.useState)(0),[Wt,Gt]=(0,q.useState)(null),[Kt,qt]=(0,q.useState)([]),[Xt]=ro(Pt,{wait:180}),$t=(0,q.useRef)(Ot);$t.current=Ot;let[en,tn]=(0,q.useState)({}),[nn,on]=(0,q.useState)(!1),[cn,ln]=(0,q.useState)(!0),[un,fn]=(0,q.useState)(!1),[mn,hn]=(0,q.useState)(!1),gn=rs(`(max-width: 980px)`)||n!==null,_n=rs(Io),vn=xc(),yn=Ml(),bn=(0,q.useRef)(vn);bn.current=vn,(0,q.useEffect)(()=>{n&&ln(!1)},[n]);let xn=(0,q.useRef)(gn);xn.current=gn;let[Sn,Cn]=(0,q.useState)(null),wn=(0,q.useCallback)((e,t)=>{bn.current!==`phone`&&(ln(!1),Cn({marker:e,trigger:t}))},[]),Tn=(0,q.useCallback)(()=>{Cn(e=>(e&&requestAnimationFrame(()=>e.trigger.focus({preventScroll:!0})),null))},[]),En=U&&vn!==`phone`,Dn=(0,q.useRef)(null),On=(0,q.useRef)(!1),[kn,An]=(0,q.useState)(0),[Mn,Nn]=(0,q.useState)(null),[Pn,Fn]=(0,q.useState)(!1),Ln=(0,q.useRef)(Pn);Ln.current=Pn;let[Rn,Bn]=(0,q.useState)(`prs`),[Hn,Un]=(0,q.useState)(null),[Wn,Gn]=(0,q.useState)(),[qn,Jn]=Zr(pA,{},mA),Yn=(0,q.useRef)(null),Qn=(0,q.useRef)(!0),[er,tr]=(0,q.useState)(!0),nr=(0,q.useRef)(!1),rr=(0,q.useRef)(!1),ir=(0,q.useRef)({}),or=ct(e=>Et(e.terminalStateByThreadKey,D)),sr=ct(Uc(e=>Object.entries(e.terminalStateByThreadKey).flatMap(([e,t])=>t.terminalOpen?[e]:[]))),cr=ct(e=>e.setTerminalOpen),ur=ct(e=>e.splitTerminal),mr=ct(e=>e.newTerminal),hr=ct(e=>e.setActiveTerminal),br=ct(e=>e.closeTerminal),xr=me(Uc(e=>st(e).map(e=>u(_(e.environmentId,e.id))))),Sr=ct(e=>e.terminalLaunchContextByThreadKey[u(D)]??null),Cr=ct(e=>e.clearTerminalLaunchContext),Er=Rr(e=>e.draftThreadsByThreadKey),Or=(0,q.useMemo)(()=>Object.values(Er).map(e=>u(_(e.environmentId,e.threadId))),[Er]),[kr,jr]=(0,q.useState)([]),Mr=(0,q.useMemo)(()=>kr.flatMap(e=>{if(n&&e!==u(n))return[];let t=i(e);return t?[{key:e,threadRef:t}]:[]}),[kr,n]),Pr=g===`server`&&V?null:(E?en[E]:null)??null,Fr=(0,q.useMemo)(()=>ot?gA(h,ot,{instanceId:A.make(`codex`),model:P},Pr):void 0,[ot,Pr,h]),Ir=g===`server`&&V!==void 0,K=Ir?V:Fr;(0,q.useEffect)(()=>{Cn(null)},[K?.id]);let zr=K?.id??null,Br=(0,q.useDeferredValue)(zr)===zr,Vr=je??K?.runtimeMode??`full-access`,Hr=En?Dt:Me??K?.interactionMode??`default`,Ur=Ne??K?.tokenMode??le.defaultAgentTokenMode??At,Jr=!Ir&&Fr!==void 0,Xr=Jr,Qr=ke.diff===`1`,$r=e.workspacePanelOpen??ou(ke),ni=K?.id??null,ri=(0,q.useCallback)((e,t)=>{if(!e)return;let n=f(t);if(_A({serverThread:V,routeThreadRef:D,targetThreadId:e})){ae(D,n);return}let r=E??e;tn(e=>(e[r]??null)===n?e:{...e,[r]:n})},[E,D,V,ae]),{interruptTurn:ii,respondToApproval:ai,respondToUserInput:oi,revertToTurnCount:si,respondingRequestIds:ci,respondingUserInputRequestIds:li,isRevertingCheckpoint:ui}=R4({environmentId:m,activeThreadId:ni,setThreadError:ri}),di=(0,q.useMemo)(()=>K?_(K.environmentId,K.id):null,[K]),fi=di?u(di):null,pi=me(e=>di?e.environmentStateById[di.environmentId]?.threadHistoryByThreadId?.[di.threadId]?.messages:void 0),mi=me(e=>di?e.environmentStateById[di.environmentId]?.threadHistoryLoadByThreadId?.[di.threadId]?.messages:void 0),hi=(0,q.useCallback)(()=>{di&&pi&&rn({environmentId:di.environmentId,threadId:di.threadId,collection:`messages`,page:pi,limit:150}).catch(()=>void 0)},[pi,di]);(0,q.useEffect)(()=>{let e=ke.messageId;di&&e&&pi&&(K?.messages.some(t=>t.id===e)||pn({environmentId:di.environmentId,threadId:di.threadId,messageId:e,limit:101}).catch(()=>void 0))},[K?.messages,pi,di,ke.messageId]);let gi=ei(e=>e.enqueue),_i=ei(e=>e.remove),vi=ei(e=>e.move),yi=ei(e=>e.beginSend),bi=ei(e=>e.finishSend),xi=ei(e=>e.retrySend),Si=ei(e=>e.beginSteer),Ci=ei(e=>e.endSteer),wi=ei(e=>fi?e.queuesByThreadKey[fi]??J4:J4),Ti=ei(e=>fi?e.steeringIdsByThreadKey[fi]??Y4:Y4),Ei=(0,q.useCallback)(e=>{if(!fi)return;let t=ei.getState().queuesByThreadKey[fi]?.find(t=>t.id===e);if(t)for(let e of t.composer.images)e.previewUrl.startsWith(`blob:`)&&URL.revokeObjectURL(e.previewUrl);_i(fi,e)},[fi,_i]),Di=(0,q.useCallback)((e,t)=>{fi&&vi(fi,e,t)},[fi,vi]);(0,q.useEffect)(()=>{Nt(!1),Ft(``),Ut(0),Gt(null)},[fi]);let Oi=(0,q.useMemo)(()=>{let e=new Set([...xr,...Or]);return sr.filter(t=>e.has(t))},[Or,sr,xr]),ki=K?.latestTurn??null,Ai=E4((0,q.useMemo)(()=>{let e=[];K?.id&&e.push(K.id);let t=ki?.sourceProposedPlan?.threadId;return t&&t!==K?.id&&e.push(t),e},[ki?.sourceProposedPlan?.threadId,K?.id]));(0,q.useEffect)(()=>{jr(e=>{let t=vA({currentThreadIds:e,openThreadIds:Oi,activeThreadId:fi,activeThreadTerminalOpen:!!(fi&&or.terminalOpen),maxHiddenThreadCount:10});return e.length===t.length&&e.every((e,n)=>e===t[n])?e:t})},[fi,Oi,or.terminalOpen]);let ji=Tr(ki,K?.session??null),Mi=K?o(K.environmentId,K.projectId):null,Ni=me((0,q.useMemo)(()=>Gr(Mi),[Mi])),Pi=me((0,q.useMemo)(()=>e=>{if(!K||!K.environmentId)return null;let t=K.worktreeId;if(!t)return null;let n=e.environmentStateById[K.environmentId];return n?.worktreeById?n.worktreeById[t]??null:null},[K?.environmentId,K?.worktreeId])),[Fi,Ii]=(0,q.useState)(null),Li=(0,q.useCallback)(e=>{Ii(e)},[]),Ri=(0,q.useCallback)(e=>{e||Ii(null)},[]),Bi=(0,q.useMemo)(()=>r1(),[]),Vi=K?.worktreeId,Hi=K?.worktreePath,Ui=(0,q.useMemo)(()=>{if(!Mi)return[];let e=[];for(let t of Object.values(Er))t.promotedTo==null&&t.environmentId===Mi.environmentId&&t.projectId===Mi.projectId&&e.push(t1(t));return e},[Er,Mi]),Wi=me(e=>{if(!Mi||!K)return K4;let t=ce(e,Mi),n=Ui.length>0?[...t,...Ui]:t;return Bi(n,{worktreeId:Vi??null,worktreePath:Hi??null})}),Gi=K?u(_(K.environmentId,K.id)):null,Ki=(0,q.useCallback)(e=>{let t=i(e);t&&(ks(e),setTimeout(()=>{we({to:`/$environmentId/$threadId`,params:{environmentId:t.environmentId,threadId:t.threadId}})},0))},[we]);e1({activeWorktreeSessionTabs:Wi,activeSessionTabKey:Gi}),(0,q.useEffect)(()=>{let e=Ro(m,h);if(g!==`server`)return e;let t=Lt(m,h);return()=>{e(),t()}},[m,g,h]);let qi=me(Uc(ye)),Ji=d(),Yi=fe.localEnvironmentId??(c()?.source===`desktop-managed`?Ji:null),Xi=pr(e=>e.byId),Zi=Xn(e=>e.byId),Qi=K&&K.environmentId!==Ji?Xi[K.environmentId]??null:null,$i=Qi?Zi[Qi.environmentId]??null:null,ea=Qi?$i?.connectionState??`disconnected`:`connected`,ta=qr(m),na=Qi!==null&&ea!==`connected`,ra=Qi?.environmentId??null,ia=Qi?Mc({isPrimary:!1,environmentId:Qi.environmentId,runtimeLabel:$i?.descriptor?.label??null,savedLabel:Qi.label}):null,aa=(0,q.useMemo)(()=>!na||!ia||!ra?null:{environmentId:ra,label:ia,connectionState:ea===`connecting`||ea===`error`?ea:`disconnected`},[na,ia,ea,ra]),[oa,sa]=(0,q.useState)(null),ca=(0,q.useCallback)(async(e,t)=>{sa(e);try{await Kn(e),Ve.add({type:`success`,title:`Environment reconnected`,description:`${t} is ready.`})}catch(e){Ve.add(fc({type:`error`,title:`Could not reconnect environment`,description:e instanceof Error?e.message:`Failed to reconnect.`}))}finally{sa(null)}},[]),la=St(e=>({sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides})),ua=(0,q.useMemo)(()=>vc({machines:fe.machines,ready:fe.status===`ready`,primaryEnvironmentId:Ji,localHubEnvironmentId:fe.localEnvironmentId,primaryLabel:de}),[fe,Ji,de]),da=(0,q.useMemo)(()=>{if(!Ni)return[];let e=Yr(Ni,la),t=qi.filter(t=>Yr(t,la)===e),n=new Set,r=[];for(let e of t){if(n.has(e.environmentId))continue;n.add(e.environmentId);let t=e.environmentId===Ji,i=Xi[e.environmentId],a=Zi[e.environmentId],o=ua.find(t=>t.environmentId===e.environmentId),s=he.machines.find(t=>t.environmentId===e.environmentId),c=he.status===`signed-out`?o:s,l=Mc({isPrimary:t,environmentId:e.environmentId,runtimeLabel:a?.descriptor?.label??null,savedLabel:i?.label??null}),u=c?.label??(t?de:l);r.push({environmentId:e.environmentId,projectId:e.id,label:u,isPrimary:t,...fe.status===`ready`||he.status===`ready`?{disabled:c?.canMutate!==!0}:{}})}return r.sort((e,t)=>e.isPrimary===t.isPrimary?e.label.localeCompare(t.label):e.isPrimary?-1:1),r},[Ni,qi,ua,de,fe.status,he,la,Ji,Xi,Zi]),fa=da.length>1,pa=(0,q.useCallback)(e=>{Xr&&Nn({initialReference:e??null,key:Date.now()})},[Xr]),ma=(0,q.useCallback)(()=>{Nn(null)},[]),ha=(0,q.useCallback)(async e=>{if(!Ni)throw Error(`No active project is available for this pull request.`);let t=o(Ni.environmentId,Ni.id),n=Yr(Ni,la),r=et(n);if(r)return Ze(r.draftId,e),rt(n,t,r.draftId,{threadId:r.threadId,...e}),(g!==`draft`||E!==r.draftId)&&await we({to:`/draft/$draftId`,params:_r(r.draftId)}),r.threadId;let i=g===`draft`&&E?nt(E):null;if(!Ir&&i?.logicalProjectKey===n&&E)return Ze(E,e),rt(n,t,E,{threadId:i.threadId,createdAt:i.createdAt,runtimeMode:i.runtimeMode,interactionMode:i.interactionMode,tokenMode:i.tokenMode??At,...e}),i.threadId;let a=jn(),s=wr();return rt(n,t,a,{threadId:s,createdAt:new Date().toISOString(),runtimeMode:Mt,interactionMode:Dt,tokenMode:le.defaultAgentTokenMode??At,...e}),await we({to:`/draft/$draftId`,params:_r(a)}),s},[Ni,E,nt,et,Ir,we,la,g,Ze,rt,le.defaultAgentTokenMode]),ga=(0,q.useCallback)(async e=>{await ha({branch:e.branch,worktreePath:e.worktreePath,envMode:e.worktreePath?`worktree`:`local`})},[ha]);(0,q.useEffect)(()=>{if(!t||!V?.id||!ji||!ki?.completedAt)return;let e=Date.parse(ki.completedAt);if(Number.isNaN(e))return;let n=se?Date.parse(se):NaN;!Number.isNaN(n)&&n>=e||H(u(_(V.environmentId,V.id)),ki.completedAt)},[ki?.completedAt,se,t,ji,H,V?.environmentId,V?.id]);let _a=Fe??null,va=K?.modelSelection.instanceId??null,ya=xt(),ba=Xn(e=>K?.environmentId?e.byId[K.environmentId]:null),xa=Ji&&K?.environmentId===Ji?ya:ba?.serverConfig??ya,Sa=Je(xa),Ca=Sa&&K?zn(K.environmentId,Sa):null,[wa,Ta]=(0,q.useState)(null),Ea=Ca===wa||In(Ca),Da=Sa!==null&&Ca!==null&&!Ea,Oa=Object.keys(Xi).length>0,ka=(0,q.useMemo)(()=>{if(!Oa||!K)return`server`;let e=K.environmentId===Ji,t=Xi[K.environmentId],n=Zi[K.environmentId];return`${Mc({isPrimary:e,environmentId:K.environmentId,runtimeLabel:n?.descriptor?.label??xa?.environment.label??null,savedLabel:t?.label??null})} server`},[K,Oa,Ji,Xi,Zi,xa?.environment.label]),Aa=(0,q.useMemo)(()=>{let e=[];return s.hosted&&!s.allowed&&e.push({id:`hosted-dispatch-unavailable`,variant:`warning`,icon:(0,Y.jsx)(ar,{}),title:`Read-only hosted session`,description:s.reason??`Commands are unavailable on this connection.`}),aa&&e.push({id:`environment-unavailable:${aa.environmentId}`,variant:aa.connectionState===`error`?`error`:`warning`,icon:(0,Y.jsx)(Ko,{}),title:(0,Y.jsxs)(Y.Fragment,{children:[aa.label,` is`,` `,aa.connectionState===`connecting`?`connecting`:`disconnected`]}),description:`Reconnect this environment before sending messages or running actions.`,actions:(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(W,{size:`xs`,disabled:aa.connectionState===`connecting`||oa===aa.environmentId,onClick:()=>void ca(aa.environmentId,aa.label),children:aa.connectionState===`connecting`||oa===aa.environmentId?`Reconnecting...`:`Reconnect`}),(0,Y.jsx)(W,{size:`xs`,variant:`outline`,onClick:()=>Ee(`connections`),children:`Connections`})]})}),Da&&Sa&&Ca&&e.push({id:`version-mismatch:${Ca}`,variant:`warning`,icon:(0,Y.jsx)(ar,{}),title:`Client and server versions differ`,description:(0,Y.jsxs)(Y.Fragment,{children:[`Client `,Sa.clientVersion,` is connected to `,ka,` `,Sa.serverVersion,`. Sync them if RPC calls or reconnects fail.`]}),dismissLabel:`Dismiss version mismatch warning`,onDismiss:()=>{ue(Ca),Ta(Ca)}}),e},[s.allowed,s.hosted,s.reason,aa,ca,Ee,oa,Da,Sa,Ca,ka]),ja=K!==void 0&&K.messages.length===0&&Ot.length===0,Ma=xa?.providers??W4,Na=(0,q.useRef)({key:``,snapshot:W4}),Pa=(0,q.useMemo)(()=>Z4(Ma,Na.current),[Ma]),Fa=K?.session?.providerInstanceId??null,Ia=it(K?.session??null),La=le.notifyOnTurnCompleteWhenUnfocused,Ra=(0,q.useRef)(new Set),za=(0,q.useRef)(new Set);(0,q.useEffect)(()=>{let e=ki?.turnId;if(!e)return;if(Ia===`running`){Ra.current.add(e);return}if(!t||!V?.id||!ji||!ki?.completedAt||!Ra.current.has(e)||za.current.has(e)||(za.current.add(e),!La)||typeof document<`u`&&document.hasFocus())return;let n=typeof window<`u`?window.desktopBridge:void 0;if(!n?.notifyTurnComplete)return;let r=K?.title?.trim()?K.title:`Ryco`;n.notifyTurnComplete({threadId:V.id,environmentId:V.environmentId,title:r,body:`The agent finished responding.`}).catch(()=>void 0)},[Ia,ji,ki?.turnId,ki?.completedAt,La,V?.id,V?.environmentId,K?.title]);let Ba=K?.activities??U4,Va=(0,q.useMemo)(()=>xs(Ba,K?.session??null),[Ba,K?.session]),{workLogEntries:Ha,contextCompactionEntries:Ua,contextHandoffEntries:Wa,pendingApprovals:Ga,pendingUserInputs:Ka,optionalUserInputs:qa,activePlan:Ja}=(0,q.useMemo)(()=>oe(Ba,ki?.turnId),[ki?.turnId,Ba]),Ya=Ia!==`disconnected`&&K?.session?.orchestrationStatus!==`stopped`&&K?.session?.orchestrationStatus!==`interrupted`&&K?.session?.orchestrationStatus!==`error`,Xa=(0,q.useMemo)(()=>Xo(Ba,{sessionLive:Ya,parentTurnState:ki?.state??null}),[ki?.state,Ya,Ba]),Za=(0,q.useMemo)(()=>Vn({activities:Ba,transcriptSubagents:Xa,sessionLive:Ya}),[Ya,Ba,Xa]),{activePendingUserInput:Qa,activePendingDraftAnswers:$a,activePendingQuestionIndex:eo,activePendingProgress:to,activePendingResolvedAnswers:no,activePendingIsResponding:io,onSelectActivePendingUserInputOption:ao,onChangeActivePendingUserInputCustomAnswer:oo,onAdvanceActivePendingUserInput:so,onPreviousActivePendingUserInputQuestion:co}=h4({pendingUserInputs:Ka,respondingUserInputRequestIds:li,readComposer:yt,promptRef:lt,onRespondToUserInput:oi}),lo=(0,q.useMemo)(()=>ji?Nr(K?.proposedPlans??[],ki?.turnId??null):null,[ki?.turnId,K?.proposedPlans,ji]),uo=(0,q.useMemo)(()=>$n({threads:Ai,latestTurn:ki,latestTurnSettled:ji,threadId:K?.id??null}),[ki,K?.id,ji,Ai]),fo=`Overview`,po=Qt({hasPendingUserInput:Ka.length>0,interactionMode:Hr,latestTurnSettled:ji,hasActionableProposedPlan:Ht(lo)}),mo=Ga[0]??null,{beginLocalDispatch:ho,resetLocalDispatch:go,localDispatchStartedAt:vo,isPreparingWorktree:yo,isSendBusy:bo}=D4({activeThread:K,activeLatestTurn:ki,phase:Ia,activePendingApproval:mo?.requestId??null,activePendingUserInput:Qa?.requestId??null,threadError:K?.error}),xo=(0,q.useMemo)(()=>K?.session?.provider??Ma.find(e=>e.instanceId===K?.modelSelection.instanceId)?.driver??null,[K?.modelSelection.instanceId,K?.session?.provider,Ma]),So=kA(K),Co=K?.session?.orchestrationStatus??null,wo=(0,q.useMemo)(()=>Ar({threadStarted:So,canonicalProvider:xo,phase:Ia,orchestrationStatus:Co,isConnecting:nn,isSendBusy:bo,isPreparingWorktree:yo,hasPendingApproval:Ga.length>0,hasPendingUserInput:Ka.length>0,hasQueuedMessage:wi.length>0,isRevertingCheckpoint:ui,mutationAllowed:s.allowed,environmentAvailable:!na,isPhoneTier:vn===`phone`}),[na,So,xo,s.allowed,nn,yo,ui,bo,Ga.length,Ka.length,Ia,vn,wi.length,Co]),To=wo.lockedProvider,Eo=Ma.find(e=>e.instanceId===_a)?.driver??ti(Ma,_a??va??ie.make(`codex`)),Do=To??Eo,Oo=Ia===`running`||bo||nn||ui,ko=me(e=>$e(e,di)),Ao=!Oo&&K?ko?.backgroundLiveness??null:null,[jo,Mo]=(0,q.useState)(!1);(0,q.useEffect)(()=>{Ao===null&&Mo(!1)},[Ao]),(0,q.useEffect)(()=>{if(!jo)return;let e=window.setTimeout(()=>Mo(!1),2e4);return()=>window.clearTimeout(e)},[jo]),(0,q.useEffect)(()=>{Mo(!1)},[ni]);let Po=(0,q.useCallback)(()=>{Mo(!0),(async()=>{try{await ii()}catch(e){Mo(!1),ni&&ri(ni,e instanceof Error?e.message:`Failed to stop background work.`)}})()},[ni,ii,ri]),Fo=(0,q.useCallback)(async e=>{if(!ni||!e.runtimeSessionId||!s.allowed||na||ta.phase!==`connected`)throw Error(`This connection is not ready to stop tasks.`);let t=Dr(m)?.orchestration.stopBackgroundTask;if(!t)throw Error(`This environment cannot stop individual tasks.`);await t({threadId:ni,taskId:e.id,expected:{runtimeSessionId:B.make(e.runtimeSessionId),attempt:e.attempt}})},[ni,s.allowed,na,m,ta.phase]),Bo=It(ki,K?.session??null,vo),Uo=K?.messages,{attachmentPreviewHandoffByMessageId:Wo,handoffAttachmentPreviews:Go}=j4({serverMessages:Uo,optimisticUserMessagesRef:$t}),qo=(0,q.useMemo)(()=>{let e=Uo??[],t=Object.keys(Wo).length===0?e:e.map(e=>{if(e.role!==`user`||!e.attachments||e.attachments.length===0)return e;let t=Wo[e.id];if(!t||t.length===0)return e;let n=!1,r=0,i=e.attachments.map(e=>{if(!dn(e))return e;let i=t[r];return r+=1,!i||e.previewUrl===i?e:(n=!0,{...e,previewUrl:i})});return n?{...e,attachments:i}:e});if(Ot.length===0)return t;let n=new Set(t.map(e=>e.id)),r=Ot.filter(e=>!n.has(e.id));return r.length===0?t:[...t,...r]},[Uo,Wo,Ot]),Jo=(0,q.useRef)({threadId:null,index:Dd()}),Yo=(0,q.useMemo)(()=>(Jo.current.threadId!==ni&&(Jo.current={threadId:ni,index:Dd()}),Jo.current.index.update({messages:qo,proposedPlans:K?.proposedPlans??[],workEntries:Ha,contextCompactionEntries:Ua,contextHandoffEntries:Wa})),[ni,K?.proposedPlans,Ua,Wa,qo,Ha]),Zo=n===null&&PA({hasThread:K!==void 0,messageCount:K?.messages.length??0,optimisticMessageCount:Ot.length,timelineEntryCount:Yo.length,presentationTier:vn}),$o=(0,q.useMemo)(()=>SE({timelineEntries:Yo,query:Pt}),[Pt,Yo]);(0,q.useEffect)(()=>{let e=Xt.trim();if(!jt||!di||e.length<2){qt([]);return}let t=Dr(di.environmentId);if(!t){qt([]);return}let n=!1;return t.orchestration.searchThreadMessages({query:e,threadId:di.threadId,limit:50}).then(e=>{n||qt(e)}).catch(()=>{n||qt([])}),()=>{n=!0}},[di,Xt,jt]);let es=(0,q.useMemo)(()=>{let e=new Set($o.map(e=>e.messageId)),t=[];for(let n of Kt)e.has(n.messageId)||t.push({id:`server:${n.messageId}`,messageId:n.messageId,occurrenceIndex:$o.length+t.length,messageOccurrenceIndex:0,start:0,end:0,text:Pt.trim()});return[...$o,...t]},[$o,Kt,Pt]),ts=(0,q.useMemo)(()=>{if(!jt)return new Map;let e=new Map;for(let t of es){let n=e.get(t.messageId);n?n.push(t):e.set(t.messageId,[t])}return e},[es,jt]),is=es.length,as=CE(Bt,is),os=es[as]??null,ss=os?.messageId??null,cs=(0,q.useCallback)(e=>{Gt(t=>({messageId:e,requestId:(t?.requestId??0)+1}))},[]);(0,q.useEffect)(()=>{Ut(0)},[fi,Pt]),(0,q.useEffect)(()=>{Ut(e=>CE(e,is))},[is]),(0,q.useEffect)(()=>{if(!jt||!ss){Gt(null);return}cs(ss)},[cs,ss,jt]),(0,q.useEffect)(()=>{jt&&ss&&di&&pi&&!K?.messages.some(e=>e.id===ss)&&pn({environmentId:di.environmentId,threadId:di.threadId,messageId:ss,limit:101}).catch(()=>void 0)},[K?.messages,pi,di,ss,jt]);let{turnDiffSummaries:ls,inferredCheckpointTurnCountByTurnId:us}=tk(K),ds=(0,q.useMemo)(()=>{let e=new Map;for(let t of ls)t.assistantMessageId&&e.set(t.assistantMessageId,t);return e},[ls]),fs=(0,q.useMemo)(()=>VX({timelineEntries:Yo,turnDiffSummaryByAssistantMessageId:ds,inferredCheckpointTurnCountByTurnId:us}),[us,Yo,ds]),ps=(0,q.useMemo)(()=>HX({turnDiffSummaries:ls,inferredCheckpointTurnCountByTurnId:us}),[us,ls]),ms=Ni?af({project:{cwd:Ni.cwd},worktreePath:K?.worktreePath??null}):null,gs=We({environmentId:m,cwd:ms}),_s=Pe(),{postPushWorkflowWatch:vs,handlePostPush:ys,clearWatch:bs}=i4(),Ss=_t(),Cs=pe(),ws=K?.session?.providerInstanceId??K?.modelSelection.instanceId??null,Ts=(0,q.useMemo)(()=>{if(ws)return Ma.find(e=>e.instanceId===ws)??null;let e=ne(Do);return Ma.find(t=>t.instanceId===e)??null},[ws,Ma,Do]),Es=i1(Ts),[Ds,js]=(0,q.useState)(null),Ms=Es&&Es.key!==Ds&&!o1(Es.key)?Es:null,Ns=(0,q.useMemo)(()=>{if(!Ms)return Aa;let{key:e,variant:t,title:n,description:r}=Ms;return[...Aa,{id:`provider-status:${e}`,variant:t,icon:(0,Y.jsx)(sn,{}),title:n,description:(0,Y.jsx)(`span`,{className:`line-clamp-3`,title:r,children:r}),dismissLabel:`Dismiss provider status`,onDismiss:()=>{s1(e),js(e)}}]},[Aa,Ms]);(0,q.useEffect)(()=>{if(g!==`server`||!ms)return;let e=zc(m,ms),t=zo(m,ms);return()=>{t(),e()}},[m,ms,g]),(0,q.useEffect)(()=>{if(g!==`server`)return;let e=Bc(m,Ts?.instanceId),t=Vo(m,Ts?.instanceId);return()=>{t(),e()}},[Ts?.instanceId,m,g]);let Ps=Ni?.cwd??null,Fs=K?.worktreePath??null,Is=Fs??Ps??void 0,Ls=Hn?.threadId===ni?Hn:Sr??null,zs=gs.data?.isRepo??!0,Bs=(0,q.useMemo)(()=>({context:{terminalFocus:!0,terminalOpen:!!or.terminalOpen}}),[or.terminalOpen]),Us=(0,q.useMemo)(()=>su(Ss,`terminal.toggle`),[Ss]),Ws=(0,q.useMemo)(()=>su(Ss,`terminal.split`,Bs),[Ss,Bs]),Gs=(0,q.useMemo)(()=>su(Ss,`terminal.new`,Bs),[Ss,Bs]),Ks=(0,q.useMemo)(()=>su(Ss,`terminal.close`,Bs),[Ss,Bs]),{onOpenReviewPanel:qs,onToggleDiff:Js,onOpenFilesPanel:Ys,onOpenTerminalPanel:Xs,onOpenSimulatorPanel:Zs,onToggleWorkspacePanel:Qs,onOpenTurnDiff:tc,onCloseDiff:nc,onOpenAgentsPanel:rc,onOpenSubagentPanel:ic}=v4({navigate:we,environmentId:m,threadId:h,routeKind:g,draftId:E,isServerThread:Ir,hasActiveProject:!!Ni,diffOpen:Qr,workspacePanelOpen:$r,externalToggleWorkspacePanel:w,onDiffPanelOpen:v,onPreviewPanelOpen:b,onTerminalPanelOpen:x,onSimulatorPanelOpen:S,onAgentPanelOpen:C}),ac=!!(K&&(K.messages.length>0||K.session!==null&&K.session.status!==`closed`)),oc=(0,q.useCallback)(e=>{if(ac||!E)return;let t=da.find(t=>t.environmentId===e);t&&!t.disabled&&Ze(E,{projectRef:o(t.environmentId,t.projectId)})},[E,ac,da,Ze]),sc=he.status===`signed-out`?ua.find(e=>e.environmentId===m):he.machines.find(e=>e.environmentId===m),cc=g===`draft`&&(fe.status===`ready`||he.status===`ready`)&&sc?.canMutate!==!0,lc=((or.terminalGroups.find(e=>e.id===or.activeTerminalGroupId)??or.terminalGroups.find(e=>e.terminalIds.includes(or.activeTerminalId))??null)?.terminalIds.length??0)>=4,uc=(0,q.useCallback)(()=>{r.current&&bn.current!==`phone`&&yt()?.focusAtEnd()},[r,yt]),dc=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{uc()})},[uc]),pc=(0,q.useCallback)(()=>{ni&&(Nt(!0),zt(e=>e+1))},[ni]),mc=(0,q.useCallback)(()=>{Nt(!1),Gt(null),dc()},[dc]),hc=(0,q.useCallback)(e=>{if(is===0)return;let t=wE({currentIndex:as,matchCount:is,direction:e});Ut(t);let n=es[t];n&&cs(n.messageId)},[cs,as,is,es]),_c=(0,q.useCallback)(e=>{yt()?.addTerminalContext(e)},[yt]),yc=(0,q.useCallback)(e=>{di&&cr(di,e)},[di,cr]),Ec=(0,q.useCallback)(()=>{di&&l.allowed&&yc(!or.terminalOpen)},[di,yc,l.allowed,or.terminalOpen]),Dc=(0,q.useCallback)(()=>{if(!di||lc||!l.allowed)return;let e=`terminal-${Zt()}`;ur(di,e),An(e=>e+1)},[di,lc,ur,l.allowed]),Oc=(0,q.useCallback)(()=>{if(!di||!l.allowed)return;let e=`terminal-${Zt()}`;mr(di,e),An(e=>e+1)},[di,mr,l.allowed]),kc=(0,q.useCallback)(e=>{let t=Dr(m);if(!ni||!t||!l.allowed)return;let n=or.terminalIds.length<=1;di&&Nd.close({threadRef:di,terminalId:e},t.terminal,n).catch(()=>void 0),di&&br(di,e),An(e=>e+1)},[ni,di,m,br,or.terminalIds.length,l.allowed]),{runProjectScript:Ac,saveProjectScript:jc,updateProjectScript:Nc,deleteProjectScript:Pc}=A4({environmentId:m,activeThread:K,activeThreadId:ni,activeThreadRef:di,activeProject:Ni,gitCwd:ms,terminalState:or,setLastInvokedScriptByProjectId:Jn,setTerminalLaunchContext:Un,setTerminalOpen:yc,storeNewTerminal:mr,storeSetActiveTerminal:hr,setTerminalFocusRequestId:An,setThreadError:ri}),Fc=(0,q.useCallback)(e=>{e!==Vr&&(Ke(k,e),Jr&&Ze(k,{runtimeMode:e}),dc())},[Jr,Vr,dc,k,Ke,Ze]),Ic=(0,q.useCallback)(e=>{e!==Hr&&(qe(k,e),Jr&&Ze(k,{interactionMode:e}),dc())},[Hr,Jr,dc,k,qe,Ze]),Lc=(0,q.useCallback)(e=>{e!==Ur&&(Ye(k,e),Jr&&Ze(k,{tokenMode:e}),dc())},[k,Jr,dc,Ye,Ze,Ur]),Rc=(0,q.useCallback)(()=>{if(En)return;let e=at(Ma,Do);Ic(Hr==="default"?`plan`:Hr===`plan`&&e?`ask`:`default`)},[En,Ic,Hr,Ma,Do]),Wc=(0,q.useCallback)(e=>{ln(e),Dn.current=e?null:Ja?.turnId??uo?.turnId??`__dismissed__`},[Ja?.turnId,uo?.turnId]),Gc=(0,q.useCallback)(()=>{hn(!1),Wc(!1)},[Wc]),Kc=(0,q.useCallback)(e=>{if($r){let t=typeof e==`boolean`?e:!mn;hn(t),Wc(t),t&&fn(!0);return}let t=typeof e==`boolean`?e:Zo&&!un?!0:!cn;hn(!1),Wc(t),fn(t)},[Zo,mn,un,cn,Wc,$r]),qc=(0,q.useCallback)(async e=>{if(!V)return;let t=Dr(m);t&&(e.runtimeMode!==V.runtimeMode&&await t.orchestration.dispatchCommand({type:`thread.runtime-mode.set`,commandId:yr(),threadId:e.threadId,runtimeMode:e.runtimeMode,createdAt:e.createdAt}),e.interactionMode!==V.interactionMode&&await t.orchestration.dispatchCommand({type:`thread.interaction-mode.set`,commandId:yr(),threadId:e.threadId,interactionMode:e.interactionMode,createdAt:e.createdAt}),e.tokenMode!==(V.tokenMode??At)&&await t.orchestration.dispatchCommand({type:`thread.token-mode.set`,commandId:yr(),threadId:e.threadId,tokenMode:e.tokenMode,createdAt:e.createdAt}))},[m,V]),Jc=(0,q.useRef)(async()=>!1),Yc=(0,q.useCallback)(async e=>{if(!V||!s.allowed)return!1;let t=Dr(m);if(!t)return!1;try{return await t.orchestration.dispatchCommand({type:`thread.goal.set`,commandId:yr(),threadId:V.id,...e,createdAt:new Date().toISOString()}),!0}catch(e){return Ve.add(fc({type:`error`,title:`Could not update goal`,description:e instanceof Error?e.message:`The goal update failed.`})),!1}},[s.allowed,m,V]),Xc=(0,q.useCallback)(()=>{let e=V?.goal?.objective;if(!e)return;let t=`/goal ${e}`;lt.current=t,Ie(k,t),yt()?.resetCursorState({prompt:t,cursor:t.length,detectTrigger:!1}),dc()},[k,yt,dc,V?.goal?.objective,Ie]),Zc=(0,q.useCallback)(e=>{Yc({status:e,startTurn:e===`active`&&Ia!==`running`})},[Yc,Ia]),Qc=(0,q.useCallback)(async()=>{if(!V||!s.allowed)return;let e=Dr(m);if(e)return e.orchestration.dispatchCommand({type:`thread.goal.clear`,commandId:yr(),threadId:V.id,createdAt:new Date().toISOString()}).then(()=>!0).catch(e=>(Ve.add(fc({type:`error`,title:`Could not clear goal`,description:e instanceof Error?e.message:`The goal could not be cleared.`})),!1))},[s.allowed,m,V]),$c=(0,q.useCallback)((e=!1)=>{tr(!0),Yn.current?.scrollToEnd?.({animated:e})},[]),el=(0,q.useCallback)(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{Yn.current?.scrollToEnd?.({animated:!1})})})},[]),tl=(0,q.useCallback)(()=>{tr(!1),yt()?.collapseForReading()},[yt]),nl=(0,q.useCallback)(()=>{tr(!0)},[]),rl=(0,q.useRef)(new Wr(()=>Ct(!0),{wait:150})),il=(0,q.useCallback)(e=>{Qn.current!==e&&(Qn.current=e,e?(rl.current.cancel(),Ct(!1)):rl.current.maybeExecute())},[]);(0,q.useEffect)(()=>{Nn(null),Qn.current=!0,tr(!0),rl.current.cancel(),Ct(!1);let e=On.current;On.current=!1,ln(e||!xn.current&&bn.current!==`phone`),Dn.current=null},[K?.id]),(0,q.useEffect)(()=>{if(!Se||!Ja||cn)return;let e=ki?.turnId??null;if(e&&Ja.turnId!==e)return;let t=Ja.turnId??uo?.turnId??`__dismissed__`;if(Dn.current!==t){if(bn.current===`phone`){let e=document.activeElement;if(e instanceof HTMLElement&&e.closest(`[data-chat-composer-form="true"]`)!==null){Dn.current=t;return}}ln(!0)}},[Ja,ki?.turnId,Se,cn,uo?.turnId]),(0,q.useEffect)(()=>{if(!K?.id||or.terminalOpen)return;let e=window.requestAnimationFrame(()=>{uc()});return()=>{window.cancelAnimationFrame(e)}},[K?.id,uc,or.terminalOpen]),(0,q.useEffect)(()=>{if(!K?.id||K.messages.length===0)return;let e=new Set(K.messages.map(e=>e.id)),t=Ot.filter(t=>e.has(t.id));if(t.length===0)return;let n=window.setTimeout(()=>{kt(t=>t.filter(t=>!e.has(t.id)))},0);for(let e of t){let t=xA(e);if(t.length>0){Go(e.id,t);continue}bA(e)}return()=>{window.clearTimeout(n)}},[K?.id,K?.messages,Go,Ot]),(0,q.useEffect)(()=>{kt(e=>{for(let t of e)bA(t);return[]}),go(),Tt(null)},[E,go,h]);let al=(0,q.useCallback)(()=>{Tt(null)},[]),ol=K?.worktreePath??null,sl=Cc({activeWorktreePath:ol,hasServerThread:Ir,draftThreadEnvMode:Jr?ot?.envMode:void 0}),cl=!!(Ir&&K&&K.messages.length===0&&K.worktreePath===null&&!ac),ll=cl&&Wn!==void 0?Wn:K?.branch??null,{sourceControlActions:ul,branchControl:dl}=a4({gitCwd:ms,activeThreadRef:di,routeKind:g,draftId:E,onPostPush:ys,branchControlThread:K?{environmentId:K.environmentId,id:K.id}:null,isGitRepo:zs,canOverrideServerThreadBranch:cl,activeThreadBranch:ll,onActiveThreadBranchOverrideChange:Gn,envLocked:ac,onComposerFocusRequest:dc,canCheckoutPullRequestIntoThread:Xr,onCheckoutPullRequestRequest:pa}),fl=SA({requestedEnvMode:sl,isGitRepo:zs});(0,q.useEffect)(()=>{Gn(void 0)},[K?.id]),(0,q.useEffect)(()=>{cl||Gn(void 0)},[cl]),(0,q.useEffect)(()=>{if(!ni){Un(null),Cr(D);return}Un(e=>!e||e.threadId===ni?e:null)},[ni,D,Cr]),(0,q.useEffect)(()=>{ni&&Ps&&Un(e=>!e||e.threadId!==ni?e:af({project:{cwd:Ps},worktreePath:Fs})===e.cwd&&(Fs??null)===e.worktreePath?(di&&Cr(di),null):e)},[Ps,ni,di,Fs,Cr]),(0,q.useEffect)(()=>{ni&&Ps&&Sr&&af({project:{cwd:Ps},worktreePath:Fs})===Sr.cwd&&(Fs??null)===Sr.worktreePath&&di&&Cr(di)},[Ps,ni,di,Fs,Cr,Sr]),(0,q.useEffect)(()=>{or.terminalOpen||(di&&Cr(di),Un(e=>e?.threadId===ni?null:e))},[ni,di,Cr,or.terminalOpen]),(0,q.useEffect)(()=>{if(!fi)return;let e=ir.current[fi]??!1,t=!!or.terminalOpen;if(!e&&t){ir.current[fi]=t,An(e=>e+1);return}if(e&&!t){ir.current[fi]=t;let e=window.requestAnimationFrame(()=>{uc()});return()=>{window.cancelAnimationFrame(e)}}ir.current[fi]=t},[fi,uc,or.terminalOpen]),Vs(()=>{let e=e=>{ni&&!e.defaultPrevented&&Gl(e,Ss,{context:{terminalFocus:No(),terminalOpen:!!or.terminalOpen,modelPickerOpen:yt()?.isModelPickerOpen()??!1}})===`thread.find`&&(t3(e)||(e.preventDefault(),e.stopPropagation(),pc()))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[ni,Ss,pc,yt,or.terminalOpen]),Vs(()=>{let e=e=>{e.defaultPrevented||(!fu(e)||Ln.current)&&iu(e,`p`,{shiftKey:!0})&&(e.preventDefault(),e.stopPropagation(),Bn(`prs`),Fn(e=>!e))};return window.addEventListener(`keydown`,e,!0),()=>window.removeEventListener(`keydown`,e,!0)},[]);let pl=(0,q.useCallback)(()=>{Bn(`prs`),Fn(!0)},[]);p4({activeThreadId:ni,keybindings:Ss,terminalOpen:or.terminalOpen,activeTerminalId:or.activeTerminalId,readComposer:yt,activeProject:Ni,toggleTerminalVisibility:Ec,splitTerminal:Dc,closeTerminal:kc,createNewTerminal:Oc,setTerminalOpen:yc,onToggleDiff:Js,onOpenFilesPanel:Ys,onOpenReviewPanel:qs,onOpenTerminalPanel:Xs,onOpenSimulatorPanel:Zs,runProjectScript:Ac});let ml=(0,q.useCallback)(async e=>{await si({thread:K??null,turnCount:e,environmentUnavailable:na,environmentUnavailableLabel:ia,turnInProgress:Ia===`running`||bo||nn})},[na,ia,K,nn,bo,Ia,si]),hl=(0,q.useCallback)(e=>K?vr({threadStarted:So,policy:wo,canonicalSelection:K.modelSelection,targetSelection:e}):!1,[K,So,wo]),gl=(0,q.useCallback)(()=>{Ve.add(fc({type:`warning`,title:`Wait for the thread to become idle`,description:wo.reason===`phone-tier`?`Provider switching stays on the current provider in the web phone view.`:`The staged provider or model was not sent. Try again when this thread is idle.`}))},[wo.reason]),_l=()=>{let e=Rr.getState().getComposerDraft(k),t=lt.current;return()=>{let n=Rr.getState().getComposerDraft(k);return lt.current!==t||n?.images!==e?.images||n?.terminalContexts!==e?.terminalContexts||n?.sourceControlContexts!==e?.sourceControlContexts}},vl=(0,q.useRef)({environmentId:m,threadId:K?.id,cwd:ms,allowed:s.allowed});vl.current={environmentId:m,threadId:K?.id,cwd:ms,allowed:s.allowed},(0,q.useEffect)(()=>(vl.current={environmentId:m,threadId:K?.id,cwd:ms,allowed:s.allowed},()=>{vl.current={...vl.current,allowed:!1}}),[K?.id,s.allowed,m,ms]);let yl=(0,q.useCallback)(async()=>{if(!Ni||!K)return!1;let e={environmentId:m,cwd:K.worktreePath??Ni.cwd};if(cu(e)&&!await pu(e))return Ve.add({type:`error`,title:`Editor changes could not be saved`,description:`Your message and file draft are preserved. Resolve the save error in File Preview before sending.`}),!1;let t=vl.current;return t.allowed&&t.environmentId===m&&t.threadId===K.id&&t.cwd===e.cwd},[Ni,K,m]),bl=(0,q.useCallback)(async()=>{if(rr.current)return!1;rr.current=!0;try{return await yl()}finally{rr.current=!1}},[yl]),xl=(0,q.useCallback)(e=>{if(Be(e.composer))return{allowed:!1,reason:De};let t=K?.session?.providerInstanceId,n=t?Pa.find(e=>e.instanceId===t):void 0,r=K?.tokenMode??At,i=K?.interactionMode??`default`;return ft({mutationReady:s.allowed&&!na,turnRunning:Ia===`running`,activeTurnId:K?.session?.activeTurnId,supportsTurnSteering:n?.supportsTurnSteering===!0,queuedModelSelection:e.composer.selectedModelSelection,activeModelSelection:K?.modelSelection,queuedRuntimeMode:e.settings.runtimeMode,activeRuntimeMode:K?.runtimeMode,queuedInteractionMode:e.settings.interactionMode,activeInteractionMode:i,queuedTokenMode:e.settings.tokenMode,activeTokenMode:r})},[na,K,Pa,s.allowed,Ia]),Sl=(0,q.useCallback)(e=>{let t=xl(e);return t.allowed?null:t.reason},[xl]),Cl=(0,q.useCallback)(async e=>{if(!fi||!K)return;let t=xl(e);if(!t.allowed){Ve.add(fc({type:`warning`,title:`Cannot steer this message`,description:t.reason}));return}let n=Dr(m);if(n&&await bl()){Si(fi,e.id);try{let r=LA({composer:e.composer,formatOutgoingPrompt:Q4}),i=OG(e.composer.sourceControlContexts),a=i?`${i}\n\n${r}`:r,o=await RA(e.composer.images),s=new Date().toISOString();await n.orchestration.dispatchCommand(Yt({commandId:yr(),threadId:K.id,expectedTurnId:t.expectedTurnId,messageId:re.make(e.id),text:a,attachments:o,createdAt:e.createdAt??s,requestedAt:s}))}catch(t){Ci(fi,e.id),Ve.add(fc({type:`error`,title:`Could not steer message`,description:t instanceof Error?t.message:`The steer request failed.`}))}}},[K,fi,Si,Ci,bl,m,xl]);(0,q.useEffect)(()=>{if(!fi||Ti.length===0)return;let e=new Set(K?.messages.map(e=>String(e.id))??[]);for(let t of Ti)e.has(t)&&Ei(t)},[K?.messages,fi,Ei,Ti]),(0,q.useEffect)(()=>{if(!fi||Ti.length===0)return;let e=new Set(Ba.flatMap(e=>{if(e.kind!==`provider.turn.steer.failed`||!e.payload)return[];let t=e.payload.messageId;return typeof t==`string`?[t]:[]}));for(let t of Ti)e.has(t)&&Ci(fi,t)},[fi,Ci,Ti,Ba]);let wl=async(e,t,n)=>{if(!s.allowed)return!1;let r=Dr(m);if(!r||!K||!Ni||rr.current)return!1;rr.current=!0;let i=_l();try{if(gr(e),!await yl())return!1;if(En&&(e={...e,selectedModelSelection:_G(e.selectedProvider,e.selectedModelSelection)}),!hl(e.selectedModelSelection))return gl(),!1;let a=await xK({api:r,threadId:K.id,prompt:e.prompt}).catch(()=>({requested:!1,image:null}));if(a.image)e.images.length<8?e={...e,images:[...e.images,a.image]}:(URL.revokeObjectURL(a.image.previewUrl),Ve.add(fc({type:`warning`,title:`The simulator screenshot was skipped`,description:`This message already has 8 attachments.`})));else if(a.requested){let e=a.reason===`no-attached-device`?`Open the Simulator workspace and choose a device first.`:a.reason===`device-not-booted`?`The selected simulator is still starting.`:`The current simulator screen could not be attached.`;Ve.add(fc({type:`warning`,title:`Couldn’t attach the simulator screen`,description:e}))}let o=En?{...t,interactionMode:Dt}:t;if(Jr&&(N.length>=2||L?.ownerKey===j)){if(L?.ownerKey===j)return Ve.add({type:`info`,title:`This comparison has already been submitted`,description:`Open its results or retry only safe failures. Your draft is retained.`}),!1;if(vn===`phone`||K.worktreePath||ot?.worktreeSource||o.computerUse)throw Error(`Batch launch requires a new Git branch workspace without a linked source or Computer Use.`);let t=ll??gs.data?.refName??null,n=Kr({id:Zt(),ownerKey:j,environmentId:m,projectId:Ni.id,selections:N,providers:Ma,prompt:e.prompt,isGitRepo:gs.data?.isRepo===!0,baseBranch:t,createdAt:new Date().toISOString()}),r=()=>{let e=ge(m,()=>lr(m));return()=>{if(e(),!z.current)throw Error(`Mutation readiness changed; your draft is retained.`)}},i=r();i();let a=await OA(e.sourceControlContexts,{fetcher:async e=>{if(!ms)throw Error(`Project context is unavailable.`);let t=e.kind===`issue`?await _s.fetchQuery(_o({environmentId:m,cwd:ms,reference:String(e.detail.number)})):await _s.fetchQuery(zi({environmentId:m,cwd:ms,reference:String(e.detail.number)}));return{...e,detail:t,fetchedAt:M(new Date),staleAfter:M(new Date(Date.now()+3e5))}}}),s=await nA.add(n);if(s.id!==n.id)return!1;let c={assertMutationReady:i,captureMutationReadiness:r,prepare:async(n,r,i)=>{i();let c=Dr(m);if(!c?.server?.getConfig)throw Error(`The selected node is unavailable.`);let l=(await c.server.getConfig()).providers;i();let{selection:u,entry:d}=be(n.modelSelection,l,e.prompt),f=tt({provider:d.driverKind,model:u.model,models:d.models,prompt:e.prompt,modelOptions:u.options}),p=LA({composer:{...e,selectedProvider:d.driverKind,selectedModel:u.model,selectedProviderModels:d.models,selectedPromptEffort:f.promptEffort,selectedModelSelection:u},formatOutgoingPrompt:Q4}),h=await BA({environmentId:m,threadId:n.threadId,attachments:e.images,signal:r});return ve({readProjectPreferences:gc,api:c,batch:s,destination:n,providers:l,prompt:p,projectCwd:Ni.cwd,baseBranch:t,fetchOrigin:ot?.fetchOrigin??!0,...o,sourceControlContexts:a,attachments:h,assertMutationReady:i})}};return R.current={id:s.id,ports:c},await nA.run(s.id,c),!1}let s=K.id,c=!Ir||K.messages.length===0,{shouldMaterializeLegacyBranchWorktree:l,baseBranchForWorktree:u,shouldCreateWorktree:d}=CA({isServerThread:Ir,isFirstMessage:c,threadWorktreePath:K.worktreePath,activeThreadBranch:ll,currentGitRefName:gs.data?.refName??null,sendEnvMode:fl}),f=c&&fl===`worktree`?ot?.worktreeSource??null:null;if(f&&!r.git.createWorktreeForProject)return ri(s,`Worktree creation is unavailable in this environment.`),!1;let p=null,h=async()=>{let e=r.git.createWorktreeForProject;if(!f||!e||!Ni)return null;let t=await e({fetchOrigin:ot?.fetchOrigin??!0,projectId:Ni.id,intent:f.kind===`pr`?{kind:`pr`,number:f.number}:f.kind===`issue`?{kind:`issue`,number:f.number,title:f.title}:{kind:`workItem`,provider:f.provider,key:f.key,title:f.title,...f.state?{state:f.state}:{},...f.stateName?{stateName:f.stateName}:{},...f.url?{url:f.url}:{}}});return Os(t.submoduleInitialization),p=_(m,t.sessionId),{threadId:t.sessionId,isServerThread:!0,isFirstMessage:!0}};return await zA({...n===void 0?{}:{messageId:n},preserveComposerDraft:n!==void 0||i(),composer:e,thread:{threadId:s,sourceProviderDriver:K.session?.provider??null,isFirstMessage:c,isServerThread:Ir,isLocalDraftThread:Jr&&!f,activeThreadBranch:ll,worktreePath:K.worktreePath,createdAt:K.createdAt,projectId:Ni.id},worktree:f?{shouldMaterializeLegacyBranchWorktree:!1,baseBranchForWorktree:null,shouldCreateWorktree:!1}:{shouldMaterializeLegacyBranchWorktree:l,baseBranchForWorktree:d&&!l?wG(ll,ot?.fetchOrigin??!0):u,...d&&!l?{fetchOrigin:ot?.fetchOrigin??!0,worktreeBranchName:ot?.worktreeBranchName??null}:{},shouldCreateWorktree:d},settings:o,project:{projectId:Ni.id,projectCwd:Ni.cwd},...f?{prepareForDispatch:h}:{},scroll:{scrollToEndBeforeOptimistic:async()=>{Qn.current=!0,tr(!0),rl.current.cancel(),Ct(!1),await Yn.current?.scrollToEnd?.({animated:!1})},scrollToEndAfterOptimistic:el},draft:{composerDraftTarget:k,environmentId:m,clearComposerDraftContent:Xe,setComposerDraftTokenMode:Ye,setComposerDraftPrompt:Ie,addComposerDraftImages:He,removeComposerDraftImage:ze,setComposerDraftTerminalContexts:Ue,setDraftThreadContext:Ze},dispatch:{api:r,beginLocalDispatch:ho,resetLocalDispatch:go,setOptimisticUserMessages:kt,setThreadError:ri},refs:{promptRef:lt,composerImagesRef:dt,composerTerminalContextsRef:mt,sendInFlightRef:nr},sourceControl:{fetcher:async e=>{let t=ms;if(!t)return e;let n=M(new Date),r=M(new Date(Date.now()+3e5));if(e.kind===`issue`){let i=await _s.fetchQuery(_o({environmentId:m,cwd:t,reference:String(e.detail.number)}));return{...e,detail:i,fetchedAt:n,staleAfter:r}}let i=await _s.fetchQuery(zi({environmentId:m,cwd:t,reference:String(e.detail.number)}));return{...e,detail:i,fetchedAt:n,staleAfter:r}}},persistSettings:{persistThreadSettingsForNextTurn:qc},composerHandle:{readComposer:yt},formatOutgoingPrompt:Q4})?(p&&(E&&Qe(E),await we({to:`/$environmentId/$threadId`,params:Le(p),replace:!0})),!0):!1}catch(e){return ri(K.id,e instanceof Error?e.message:`Could not launch the prompt.`),!1}finally{rr.current=!1}},Tl=(0,q.useRef)(wl);Tl.current=wl,Jc.current=async e=>{let t=yt()?.getSendContext();if(!t||nr.current||nn||na)return!1;let n=e.objective??V?.goal?.objective;if(!n)return!1;let r=EA({prompt:n,imageCount:t.images.length,terminalContexts:t.terminalContexts});return Tl.current({goal:e,prompt:`Continue pursuing this goal: ${n}`,promptForRestore:lt.current,trimmedPrompt:`Continue pursuing this goal: ${n}`,images:t.images,sendableTerminalContexts:r.sendableTerminalContexts,sourceControlContexts:t.sourceControlContexts,selectedProvider:t.selectedProvider,selectedModel:t.selectedModel,selectedProviderModels:t.selectedProviderModels,selectedPromptEffort:t.selectedPromptEffort,selectedModelSelection:t.selectedModelSelection,expiredTerminalContextCount:0},{runtimeMode:Vr,interactionMode:Hr,tokenMode:Ur})};let El=async e=>{if(e?.preventDefault(),!s.allowed)return;let t=Dr(m),n=ef(lt.current);if(n!==null&&vn!==`phone`&&di&&K){let e=yt()?.getSendContext();if(e&&(e.images.length>0||e.terminalContexts.length>0||e.sourceControlContexts.length>0)){Ve.add({type:`info`,title:`Side questions accept text only`,description:`Remove attached images, terminal selections, and source-control references before using /btw.`});return}let t=u(di),r=nf.getState().chatsByThreadKey[t];if(n&&(r?.pending||r?.failedQuestion)){nf.getState().open(t,K.modelSelection),Ve.add({type:`info`,title:r.pending?`Wait for the side answer or stop it first`:`Restore or discard the unsent side question first`,description:`Your composer draft is preserved.`});return}nf.getState().open(t,K.modelSelection,n||void 0);let i=lr(di.environmentId)?.client.textGeneration;n&&i&&p.allowed&&ta.phase===`connected`&&!nn&&!na&&nf.getState().ask(t,{threadId:di.threadId,requestId:Zt(),api:i}),lt.current=``,Ie(k,``),yt()?.resetCursorState();return}if(!t||!K||bo&&Ia!==`running`||nn||na||nr.current)return;if(to){so();return}let r=yt()?.getSendContext();if(!r)return;let{images:i,terminalContexts:a,sourceControlContexts:o,selectedProvider:c,selectedModel:l,selectedProviderModels:d,selectedPromptEffort:f,selectedModelSelection:h}=r,g=lt.current,{trimmedPrompt:_,sendableTerminalContexts:v,expiredTerminalContextCount:y,hasSendableContent:b}=EA({prompt:g,imageCount:i.length,terminalContexts:a}),x=an(_);if(x!==null){let e=()=>{lt.current=``,Ie(k,``),Ye(k,Ur),yt()?.resetCursorState()};if(x.action===`show`){let t=V?.goal;Ve.add({type:`info`,title:t?`Goal: ${t.status}`:`No goal set`,description:t?`${t.objective} — ${t.tokensUsed.toLocaleString()} tokens used${t.tokenBudget===null?``:` of ${t.tokenBudget.toLocaleString()}`}.${t.synchronization?` Goal synchronization: ${t.synchronization.state}. ${t.synchronization.error??``}`:``}`:`Use /goal followed by the outcome you want to achieve.`}),e();return}if(x.action!==`set`&&!V?.goal){Ve.add({type:`info`,title:`No goal set`,description:`Use /goal followed by an objective first.`});return}if(x.action===`clear`){await Qc()&&e();return}if(x.action===`pause`){await Yc({status:`paused`})&&e();return}if(x.action===`set`&&x.objective.length>4e3){Ve.add({type:`warning`,title:`Goal is too long`,description:`Keep the objective under ${te.toLocaleString()} characters.`});return}let t=x.action===`set`?{objective:x.objective,status:`active`}:{status:`active`};Ia===`running`?await Yc(t)&&e():await Jc.current(t);return}if(po&&lo&&!VA(g)){let e=Sc({draftText:_,planMarkdown:lo.planMarkdown});lt.current=``,Xe(k),Ye(k,Ur),yt()?.resetCursorState(),await Pl({text:e.text,interactionMode:e.interactionMode});return}let S=i.length===0&&v.length===0?Lr(_):null;if(S){Ic(S),lt.current=``,Xe(k),Ye(k,Ur),yt()?.resetCursorState();return}if(!b){if(y>0){let e=DA(y,`empty`);Ve.add(fc({type:`warning`,title:e.title,description:e.description}))}return}let C=dr({attachments:i,nowMs:Date.now()});if(C){Ve.add(fc({type:`warning`,title:`Attachments aren't ready`,description:C}));return}let w={prompt:g,trimmedPrompt:_,images:i,sendableTerminalContexts:v,sourceControlContexts:o,selectedProvider:c,selectedModel:l,selectedProviderModels:d,selectedPromptEffort:f,selectedModelSelection:h,expiredTerminalContextCount:y},T={runtimeMode:Vr,interactionMode:Hr,tokenMode:Ur},E=VA(g);if(E&&!E.prompt)return;let D=window.desktopBridge?.computerBeta,O=D&&K.environmentId===Yi;if(E&&!O){Ve.add({type:`warning`,title:`Computer Use requires the local desktop environment`});return}if(O)try{let e=await D.getState();if(E||e.preferences.defaultEnabled){if(![`codex`,`claudeAgent`,`cursor`,`copilot`,`opencode`].includes(c))throw Error(`This provider does not support Computer Use. Select Codex, Claude, Cursor, Copilot or managed OpenCode.`);if(!t.server)throw Error(`Local desktop settings are unavailable. Reconnect before sending this task.`);let e=await t.server.getSettings();if(!e.agentControl.enabled)throw Error(`Enable Private Agent Control in Settings → Integrations before sending this task.`);let n=e.providerInstances[h.instanceId];if(c===`opencode`&&n&&n.config!==null&&typeof n.config==`object`&&`serverUrl`in n.config&&n.config.serverUrl)throw Error(`Computer Use requires managed OpenCode. An external OpenCode server cannot receive local desktop access.`)}let n=await D.prepare(K.id,E!==null);if(lt.current!==g)return;n&&(T.computerUse=n)}catch(e){Ve.add({type:`warning`,title:`Computer Use setup`,description:e instanceof Error?e.message:`Complete setup, then send again.`});return}if(!hl(w.selectedModelSelection)){gl();return}if(Ia===`running`&&fi){if(rr.current)return;rr.current=!0;let e=_l();try{if(!await yl())return}finally{rr.current=!1}let t=Vt();gi(fi,{id:t,createdAt:new Date().toISOString(),composer:{...w,images:w.images.map(TA)},settings:T}),e()||(lt.current=``,Xe(k),Ye(k,Ur),yt()?.resetCursorState());return}await Tl.current(w,T)},Al=(0,q.useRef)(!1),jl=(0,q.useRef)(El);jl.current=El;let Nl=(0,q.useCallback)(e=>{Al.current||(Al.current=!0,jl.current(e).finally(()=>{Al.current=!1}))},[]);(0,q.useEffect)(()=>{if(!fi)return;let e=fi,t=wi[0];if(t&&s.allowed){if(K?.messages.some(e=>e.id===t.id)){Ei(t.id);return}t.deliveryStatus||Oo||na||to||mo||nr.current||Ti.includes(t.id)||yi(e,t.id)&&Tl.current(t.composer,t.settings,re.make(t.id)).then(n=>{if(bi(e,t.id,n),n)for(let e of t.composer.images)e.previewUrl.startsWith(`blob:`)&&URL.revokeObjectURL(e.previewUrl)},()=>bi(e,t.id,!1))}},[fi,wi,Oo,na,to,mo,s.allowed,yi,bi,K?.messages,Ei,Ti]);let Pl=(0,q.useCallback)(async({text:e,interactionMode:t})=>{let n=Dr(m);if(!n||!K||!Ir||bo||nn||nr.current)return;let r=e.trim();if(!r||!await bl())return;let i=yt()?.getSendContext();if(!i)return;let{selectedProvider:a,selectedModel:o,selectedProviderModels:s,selectedPromptEffort:c,selectedModelSelection:l}=i;if(!hl(l)){gl();return}let u=K.id,d=Vt(),f=new Date().toISOString(),p=Q4({provider:a,model:o,models:s,effort:c,text:r});nr.current=!0,ho({preparingWorktree:!1}),ri(u,null),Qn.current=!0,tr(!0),rl.current.cancel(),Ct(!1),await Yn.current?.scrollToEnd?.({animated:!1}),kt(e=>[...e,{id:d,role:`user`,text:p,createdAt:f,streaming:!1}]),el();try{await qc({threadId:u,createdAt:f,runtimeMode:Vr,interactionMode:t,tokenMode:Ur}),qe(_(K.environmentId,u),t),Ye(_(K.environmentId,u),Ur),await n.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:yr(),threadId:u,message:{messageId:d,role:`user`,text:p,attachments:[]},modelSelection:l,titleSeed:K.title,runtimeMode:Vr,interactionMode:t,tokenMode:Ur,...t==="default"&&lo?{sourceProposedPlan:{threadId:K.id,planId:lo.id}}:{},createdAt:f}),t==="default"&&Se&&(Dn.current=null,ln(!0)),nr.current=!1}catch(e){kt(e=>e.filter(e=>e.id!==d)),ri(u,e instanceof Error?e.message:`Failed to send plan follow-up.`),nr.current=!1,go()}},[K,lo,ho,hl,nn,bo,Ir,gl,qc,yt,go,Vr,el,qe,Ye,ri,Se,bl,m,Ur]),Fl=(0,q.useCallback)(async()=>{let e=Dr(m);if(!e||!K||!Ni||!lo||!Ir||bo||nn||na||nr.current||!await bl())return;let t=yt()?.getSendContext();if(!t)return;let{selectedProvider:n,selectedModel:r,selectedProviderModels:i,selectedPromptEffort:a,selectedModelSelection:o}=t,s=new Date().toISOString(),c=wr(),l=lo.planMarkdown,u=Q4({provider:n,model:r,models:i,effort:a,text:wc(l)}),d=fA(Tc(l)),f=o;nr.current=!0,ho({preparingWorktree:!1});let p=()=>{nr.current=!1,go()};await e.orchestration.dispatchCommand({type:`thread.create`,commandId:yr(),threadId:c,projectId:Ni.id,title:d,modelSelection:f,runtimeMode:Vr,interactionMode:`default`,tokenMode:Ur,branch:ll,worktreePath:K.worktreePath,createdAt:s}).then(()=>e.orchestration.dispatchCommand({type:`thread.turn.start`,commandId:yr(),threadId:c,message:{messageId:Vt(),role:`user`,text:u,attachments:[]},modelSelection:o,titleSeed:d,runtimeMode:Vr,interactionMode:`default`,tokenMode:Ur,sourceProposedPlan:{threadId:K.id,planId:lo.id},createdAt:s})).then(()=>jA(_(K.environmentId,c))).then(()=>(On.current=Se,we({to:`/$environmentId/$threadId`,params:{environmentId:K.environmentId,threadId:c}}))).catch(async t=>{await e.orchestration.dispatchCommand({type:`thread.delete`,commandId:yr(),threadId:c}).catch(()=>void 0),Ve.add(fc({type:`error`,title:`Could not start implementation thread`,description:t instanceof Error?t.message:`An error occurred while creating the new thread.`}))}).then(p,p)},[Ni,lo,ll,K,ho,na,nn,bo,Ir,we,yt,go,Vr,Ur,Se,bl,m]),Il=(0,q.useCallback)((e,t,n)=>{if(!K)return;let r=Ma.find(t=>t.instanceId===e);if(!r||!r.enabled||!r.installed||r.status!==`ready`||r.availability===`unavailable`){dc();return}let i=r?.driver??null;if(wo.mode===`continuation-only`&&To===null){dc();return}if(To!==null&&i!==null&&i!==To){dc();return}if(To!==null&&K.session?.providerInstanceId){let e=Ma.find(e=>e.instanceId===K.session?.providerInstanceId);if(e?.continuation?.groupKey&&r?.continuation?.groupKey&&e.continuation.groupKey!==r.continuation.groupKey){dc();return}}let a=pt(e,le,Ma,t);if(!a){dc();return}let o={instanceId:e,model:a,...n?{options:n}:{}};if(!vr({threadStarted:So,policy:wo,canonicalSelection:K.modelSelection,targetSelection:o})){dc();return}Ge(_(K.environmentId,K.id),o),kA(K)||_e(o);let s=Zn(Hr,r.supportsAskMode??!1);s!==Hr&&Ic(s),dc()},[K,So,Ic,Hr,To,wo,dc,Ge,_e,Ma,le]),Ll=(0,q.useCallback)(e=>{Tt(e)},[]),Rl=(0,q.useRef)(fs);Rl.current=fs;let zl=(0,q.useRef)(ml);zl.current=ml;let Bl=(0,q.useCallback)(e=>{let t=Rl.current.get(e);typeof t==`number`&&zl.current(t)},[]),Vl=(0,q.useCallback)(e=>{zl.current(e)},[]);(0,q.useEffect)(()=>{$r||hn(!1)},[$r]),(0,q.useEffect)(()=>{hn(!1),fn(!1)},[K?.id]);let Hl=cn&&!$r&&!(Zo&&!un),Ul=mn&&$r,Wl=Hl||Ul,Kl=vn===`phone`,ql=Hl&&!gn&&!Kl,Jl=Hl&&(gn||Kl),Yl=kG(Ul,_n||!$r?0:260),Xl=kG(ql,_n||gn||$r?0:320),Zl=(0,q.useMemo)(()=>!Kl||!K?null:{environmentId:K.environmentId,threadId:K.id,title:K.title,projectCwd:ms,branch:Pi?.branch??K.branch??null,draft:g===`draft`&&E?{draftId:E,projectId:K.projectId,createdAt:K.createdAt}:null,workspacePanelOpen:$r,onToggleWorkspacePanel:Qs,onOpenFindInThread:pc,onOpenSourceControl:g===`draft`?null:()=>Kc(!0),sessionTabs:Wi,activeSessionTabKey:Gi,onSelectSessionTab:Ki},[Gi,K,Wi,Pi?.branch,E,ms,Ki,Kl,Qs,pc,g,Kc,$r]),Ql=vn!==`phone`&&!Zo,$l=vn!==`phone`,eu=(0,q.useRef)(null),tu=(0,q.useRef)(null),nu=(0,q.useRef)(null),ru=(0,q.useRef)(null);return(0,q.useEffect)(()=>{let e=eu.current;if(!e)return;if(!Ql){e.style.removeProperty(`--chat-composer-clearance`);return}let t=tu.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-composer-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-composer-clearance`)}},[Ql,ni]),(0,q.useEffect)(()=>{let e=nu.current;if(!e)return;if(!$l){e.style.removeProperty(`--chat-header-clearance`);return}let t=ru.current;if(!t)return;let n=()=>e.style.setProperty(`--chat-header-clearance`,`${t.offsetHeight+8}px`);n();let r=new ResizeObserver(n);return r.observe(t),()=>{r.disconnect(),e.style.removeProperty(`--chat-header-clearance`)}},[$l,ni]),K?(0,Y.jsxs)(`div`,{ref:nu,className:`relative flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[!Kl&&K&&K.environmentId===Yi?(0,Y.jsx)(WA,{threadId:K.id},K.id):null,!Kl&&di?(0,Y.jsx)(lG,{containerRef:nu,source:di,canUseSide:Ir&&p.allowed,canCreate:s.allowed&&!nn&&!na&&!!Ni,canUseWorktree:zs&&!!ll,onCurrent:e=>{let t=_d(yt()?.getSendContext().prompt??lt.current,e);lt.current=t,Ie(k,t),yt()?.resetCursorState({prompt:t,cursor:t.length,detectTrigger:!1}),dc()},onSide:e=>{if(!Ir||!p.allowed)return;let t=u(di),n=nf.getState();n.open(t,K.modelSelection),n.setDraft(t,_d(nf.getState().chatsByThreadKey[t]?.draft??``,e)),requestAnimationFrame(()=>r.current&&nu.current?.querySelector(`[aria-label="Side question"]`)?.focus())},onNew:async({quote:e,prompt:t,envMode:n,intent:i,requestKey:a})=>{let c=yt()?.getSendContext();if(!c||!Ni||!s.allowed||nn||na)throw Error(`The workspace is unavailable. Your selection draft is preserved.`);await XA({quote:e,prompt:t,envMode:n,intent:i,requestKey:a,projectRef:o(m,Ni.id),branch:ll,canUseWorktree:zs,composer:c,settings:{runtimeMode:Vr,interactionMode:`default`,tokenMode:Ur},prepare:bl,isCurrent:()=>r.current&&vl.current.allowed&&vl.current.environmentId===m&&vl.current.threadId===K.id,createThread:Te})}},fi):null,!Kl&&di?(0,Y.jsx)(uG,{threadRef:di,providers:Ma,connected:ta.phase===`connected`&&!nn&&!na}):null,(0,Y.jsx)(`header`,{ref:ru,className:G(`border-b phone:pt-safe`,$l?`app-chrome-glass border-sidebar-border`:`border-border bg-muted/24`,$l&&`absolute inset-x-0 top-0 z-20`,Ol,a?G(`drag-region flex min-h-[52px] items-stretch pr-3 sm:pr-5 wco:min-h-[env(titlebar-area-height)]`,yn?Dl:`pl-3 sm:pl-5`,T&&`wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`):G(`pr-[calc(env(safe-area-inset-right)+0.75rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)]`,yn?Dl:`pl-[calc(env(safe-area-inset-left)+0.75rem)] sm:pl-[calc(env(safe-area-inset-left)+1.25rem)]`)),children:vn===`phone`?(0,Y.jsx)(Y$,{environmentId:K.environmentId,threadId:K.id,title:K.title}):(0,Y.jsx)(J$,{activeThreadEnvironmentId:K.environmentId,activeThreadTitle:K.title,activeProjectName:Ni?.name,isGitRepo:zs,openInCwd:ms,activeProjectScripts:Ni?.scripts,preferredScriptId:Ni?qn[Ni.id]??null:null,keybindings:Ss,availableEditors:Cs,worktreeBranch:Pi?.branch??K.branch??null,worktreeTitle:Pi?.title??null,worktreeOrigin:Pi?.origin??null,worktreeIssueNumber:Pi?.issueNumber??null,worktreeIssueState:Pi?.issueState??null,worktreePrNumber:Pi?.prNumber??null,worktreePrState:Pi?.prState??null,worktreePrIsDraft:Pi?.prIsDraft??null,worktreeWorkItemProvider:Pi?.workItemProvider??null,worktreeWorkItemKey:Pi?.workItemKey??null,worktreeWorkItemState:Pi?.workItemState??null,worktreeWorkItemStateName:Pi?.workItemStateName??null,onOpenLinkedWorktreeItem:Li,workspacePanelOpen:$r,liveAgentCount:hA({liveCount:Za.liveCount,workspacePanelOpen:$r,workspaceTab:ke.workspaceTab}),onToggleWorkspacePanel:Qs,overviewSidebarOpen:Wl,onToggleOverviewSidebar:Kc,onRunProjectScript:Ac,onAddProjectScript:jc,onUpdateProjectScript:Nc,onDeleteProjectScript:Pc})}),(0,Y.jsx)(As,{open:t&&Fi!==null,item:Fi,environmentId:Ni?.environmentId??K.environmentId,projectId:Ni?.id??K.projectId,cwd:Ni?.cwd??ms,onOpenChange:Ri}),(0,Y.jsx)(c1,{error:K.error,threadRef:di,onDismiss:()=>ri(K.id,null)}),(0,Y.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1`,children:[(0,Y.jsxs)(`div`,{ref:eu,className:`relative flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,Y.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 flex-col`,children:[Zo?null:Br?(0,Y.jsx)(BZ,{agentPanelModel:Za,onOpenAgents:rc,isWorking:Oo,activeTurnInProgress:Oo||!ji,activeTurnId:ki?.turnId??null,latestTurn:ki,activeTurnStartedAt:Bo,listRef:Yn,targetMessageId:Wt?.messageId??ke.messageId??null,targetMessageRequestId:Wt?.requestId??0,targetMessageRowHighlight:Wt===null,threadMessageSearchQuery:jt?Pt:``,threadMessageSearchOccurrencesByMessageId:ts,activeThreadMessageSearchOccurrence:jt?os:null,timelineEntries:Yo,turnDiffSummaryByAssistantMessageId:ds,activeThreadEnvironmentId:K.environmentId,routeThreadKey:O,openDiffTurnId:Qr?ke.diffTurnId??null:null,onOpenTurnDiff:tc,onCloseDiff:nc,revertTurnCountByUserMessageId:fs,undoTurnCountByTurnId:ps,onUndoTurn:Vl,onRevertUserMessage:Bl,isRevertingCheckpoint:ui,onImageExpand:Ll,markdownCwd:ms??void 0,resolvedTheme:Ae,timestampFormat:xe,workspaceRoot:Is,skills:Ts?.skills??G4,liveFollowEnabled:er,onIsAtEndChange:il,onManualNavigation:tl,onUserReachedEnd:nl,canLoadOlder:pi?.hasMoreBefore??!1,isLoadingOlder:mi?.status===`loading`,loadOlderError:mi?.error??null,onLoadOlder:hi,...vn===`phone`?{}:{onInspectContextHandoff:wn}},K.id):(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`flex min-h-0 flex-1`}),jt?(0,Y.jsx)(C$,{query:Pt,focusRequestId:Rt,matchCount:is,selectedIndex:as,onQueryChange:Ft,onNext:()=>hc(`next`),onPrevious:()=>hc(`previous`),onClose:mc}):null,Yl?(0,Y.jsx)(r4,{animate:!_n,open:Ul,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`floating`,onClose:Gc,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})}):null,bt&&(0,Y.jsx)(`div`,{className:`pointer-events-none absolute bottom-[calc(var(--chat-composer-clearance,0px)+0.25rem)] left-1/2 z-30 flex -translate-x-1/2 justify-center py-1.5`,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>$c(!0),className:`pointer-events-auto flex items-center gap-1.5 rounded-full border-0 bg-card/80 px-3 py-1 text-muted-foreground text-xs shadow-md/5 ring-1 ring-inset ring-foreground/6 backdrop-blur transition-[background-color,color,box-shadow] hover:bg-card hover:text-foreground hover:shadow-lg/8 hover:cursor-pointer`,children:[(0,Y.jsx)(fr,{className:`size-3.5`}),`Scroll to bottom`]})})]}),Zo?(0,Y.jsx)(`div`,{className:G(`shrink-0`,!_n&&`animate-in fade-in slide-in-from-bottom-1`),children:(0,Y.jsx)(o$,{projectName:Ni?.name??null,activeProjectId:Ni?.id??null,activeProjectEnvironmentId:Ni?.environmentId??null,routeKind:g,envLocked:ac,draftId:E??void 0,workLocation:zs?(0,Y.jsx)(m$,{draftId:E??void 0,environmentId:K.environmentId,threadId:K.id,projectId:Ni?.id??null,projectEnvironmentId:Ni?.environmentId??null,projectName:Ni?.name??null,envLocked:ac,availableEnvironments:da,onEnvironmentChange:fa?oc:void 0,onComposerFocusRequest:dc,onCheckoutPullRequestRequest:Xr?pa:void 0,cwd:Ni?.cwd??ms}):null})}):null,(0,Y.jsxs)(`div`,{ref:tu,className:G(`flex min-h-0 flex-col justify-end`,Ql&&`pointer-events-none absolute inset-x-0 bottom-0 z-20`,`pl-[calc(env(safe-area-inset-left)+0.75rem)] pr-[calc(env(safe-area-inset-right)+0.75rem)] pt-1.5 sm:pl-[calc(env(safe-area-inset-left)+1.25rem)] sm:pr-[calc(env(safe-area-inset-right)+1.25rem)] sm:pt-2`,zs?`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.25rem)]`:`pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+0.75rem)] sm:pb-[calc(max(env(safe-area-inset-bottom),var(--app-keyboard-inset,0px))+1rem)]`),children:[Ql?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`-top-10 -z-10 pointer-events-none absolute inset-x-0 bottom-0 bg-linear-to-t from-background via-background/45 to-transparent`}):null,(0,Y.jsxs)(`div`,{className:G(`relative isolate`,Ql&&`pointer-events-auto`),children:[(Ao!==null||Va.tasks.length>0||Va.detailsOmitted)&&vn!==`phone`?(0,Y.jsx)(`div`,{className:`mx-auto mb-2 flex w-full min-w-0 max-w-208 items-center px-4`,children:(0,Y.jsx)(hK,{work:Va,connected:!na&&ta.phase===`connected`,mutationReady:s.allowed&&!na&&ta.phase===`connected`,onStopTask:Fo,liveness:Ao??`monitoring`,liveCount:Za.liveCount,waitingCount:Za.waitingCount,onOpenAgents:rc,stopping:jo,onStop:Po},fi)}):null,vn===`phone`?null:qa.map(e=>(0,Y.jsx)(Qk,{input:e,disabled:!s.allowed||na||ta.phase!==`connected`,onRespond:oi},e.userInputIdentity?.requestEventId??e.requestId)),(0,Y.jsx)(C1,{className:`relative z-0`,items:Ns}),vn!==`phone`&&L?(0,Y.jsx)(rA,{batch:L,error:I.storageError,retryDisabled:!!I.storageError||!s.allowed||nn||na,onNew:Jr&&L.ownerKey===j?()=>{let e=_l(),t=vl.current;nA.releaseSource(L.id).then(n=>{if(!n)throw Error(`Finish or cancel comparison targets first.`);e()||vl.current.environmentId!==t.environmentId||vl.current.threadId!==t.threadId||(lt.current=``,Xe(k),yt()?.resetCursorState(),F([]))}).catch(e=>Ve.add({type:`error`,title:`Comparison draft could not be released`,description:e instanceof Error?e.message:`Draft storage unavailable`}))}:void 0,onRetry:R.current?.id===L.id?()=>{let e=R.current;e&&nA.run(e.id,e.ports).catch(e=>Ve.add({type:`error`,title:e instanceof Error?e.message:`Retry unavailable`}))}:void 0}):null,vn!==`phone`&&Jr&&!L?(0,Y.jsx)($k,{selections:N,disabled:!s.allowed||bo||!I.hydrated||!!I.storageError||xa?.environment.capabilities.requiredWorktreeBootstrap!==!0||gs.data?.isRepo!==!0||!!ot?.worktreeSource,reason:I.storageError??(xa?.environment.capabilities.requiredWorktreeBootstrap===!0?gs.data?.isRepo===!0?null:`Batch launch requires a Git project.`:`Update this node to enable isolated batch launches.`),onAdd:()=>{let e=yt()?.getSendContext();if(!e)return;let t=e.selectedModelSelection;F(e=>e.some(e=>ut(e)===ut(t))?e:[...e,t])},onRemove:e=>F(t=>t.filter(t=>ut(t)!==e))}):null,vn===`phone`?null:(0,Y.jsx)(_1,{environmentId:m,activeThreadId:ni}),ja?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`mb-2 h-5`}):null,(0,Y.jsx)(V4,{messages:wi,onRemove:Ei,onMove:Di,onRetry:vn===`phone`?void 0:e=>{fi&&xi(fi,e)},showSteerAction:vn!==`phone`,steeringIds:Ti,getSteerUnavailableReason:Sl,onSteer:e=>void Cl(e)}),(0,Y.jsx)(`div`,{className:`relative z-10`,children:(0,Y.jsx)(gY,{ref:gt,composerDraftTarget:k,environmentId:m,routeKind:g,routeThreadRef:D,draftId:E,activeThreadId:ni,activeThreadEnvironmentId:K?.environmentId,activeThreadSessionProviderInstanceId:Fa,activeThreadStarted:So,isServerThread:Ir,isLocalDraftThread:Jr,activeThreadGoal:V?.goal??null,phase:Ia,isConnecting:nn,isSendBusy:bo||!s.allowed||cc,isPreparingWorktree:yo,environmentUnavailable:aa,activePendingApproval:mo,pendingApprovals:Ga,pendingUserInputs:Ka,activePendingProgress:to,activePendingResolvedAnswers:no,activePendingIsResponding:io,activePendingDraftAnswers:$a,activePendingQuestionIndex:eo,respondingRequestIds:ci,showPlanFollowUpPrompt:po,activeProposedPlan:lo,activePlan:Ja,sidebarProposedPlan:uo,planSidebarLabel:fo,planSidebarOpen:Wl,runtimeMode:Vr,interactionMode:Hr,tokenMode:Ur,lockedProvider:To,providerStatuses:Pa,activeThreadModelSelection:K?.modelSelection,activeThreadActivities:Ba,phoneThreadDock:Zl,resolvedTheme:Ae,settings:le,keybindings:Ss,terminalOpen:!!or.terminalOpen,gitCwd:ms,executionTargets:da,executionTargetLocked:ac||g===`server`,onExecutionTargetChange:oc,promptRef:lt,composerImagesRef:dt,composerTerminalContextsRef:mt,shouldAutoScrollRef:Qn,scheduleStickToBottom:$c,onSend:Nl,onInterrupt:ii,onImplementPlanInNewThread:Fl,onRespondToApproval:ai,onSelectActivePendingUserInputOption:ao,onAdvanceActivePendingUserInput:so,onPreviousActivePendingUserInputQuestion:co,onChangeActivePendingUserInputCustomAnswer:oo,onProviderModelSelect:Il,toggleInteractionMode:Rc,handleRuntimeModeChange:Fc,handleInteractionModeChange:Ic,handleTokenModeChange:Lc,togglePlanSidebar:Kc,focusComposer:uc,scheduleComposerFocus:dc,setThreadError:ri,onExpandImage:Ll,onGoalBudgetChange:e=>Yc({tokenBudget:e}),onRetryGoal:()=>{V?.goal?.synchronization?.action===`clear`?Qc():Yc({startTurn:V?.goal?.status===`active`&&Ia!==`running`})},onEditGoal:Xc,onGoalStatusChange:Zc,onClearGoal:Qc})})]}),zs&&(0,Y.jsx)(`div`,{className:G(Ql&&`pointer-events-auto`),children:(0,Y.jsx)(cK,{environmentId:K.environmentId,threadId:K.id,...g===`draft`&&E?{draftId:E}:{},...cl?{activeThreadBranchOverride:ll,onActiveThreadBranchOverrideChange:Gn}:{},envLocked:ac,onComposerFocusRequest:dc,onOpenWorktreeSources:pl,contextControlsHoisted:Zo,...Xr?{onCheckoutPullRequestRequest:pa}:{},...fa?{onEnvironmentChange:oc}:{},availableEnvironments:da,terminalAvailable:Ni!==void 0&&l.allowed,terminalOpen:or.terminalOpen,terminalToggleShortcutLabel:Us,onToggleTerminal:Ec,terminalCount:or.terminalIds.length})})]}),Zo?(0,Y.jsx)(`div`,{"aria-hidden":!0,className:`min-h-0 flex-1`}):null,Mn?(0,Y.jsx)(zY,{open:!0,environmentId:K.environmentId,projectId:Ni?.id??null,threadId:K.id,cwd:Ni?.cwd??null,initialReference:Mn.initialReference,onOpenChange:e=>{e||ma()},onPrepared:ga},Mn.key):null,(0,Y.jsx)(hs,{open:t&&Pn,environmentId:K.environmentId,projectId:Ni?.id??null,cwd:Ni?.cwd??null,initialTab:Rn,onCreated:e=>{we({to:`/$environmentId/$threadId`,params:{environmentId:K.environmentId,threadId:e.sessionId}})},onOpenChange:Fn})]}),Sn&&!gn&&!Kl?(0,Y.jsx)(`aside`,{className:`flex min-h-0 w-[25rem] shrink-0 border-l border-border pt-[var(--chat-header-clearance,0px)]`,children:(0,Y.jsx)(RY,{environmentId:K.environmentId,threadId:K.id,marker:Sn.marker,onClose:Tn})}):Xl?(0,Y.jsx)(n4,{animate:!_n,open:ql,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`sidebar`,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})}):null]}),Mr.map(({key:e,threadRef:n})=>(0,Y.jsx)(vY,{threadRef:n,threadId:n.threadId,visible:t&&e===fi&&or.terminalOpen&&l.allowed,launchContext:e===fi?Ls??null:null,focusRequestId:e===fi?kn:0,splitShortcutLabel:Ws??void 0,newShortcutLabel:Gs??void 0,closeShortcutLabel:Ks??void 0,keybindings:Ss,onAddTerminalContext:_c},e)),t&&!Kl&&gn&&Sn?(0,Y.jsx)(H4,{open:!0,onClose:Tn,children:(0,Y.jsx)(RY,{environmentId:K.environmentId,threadId:K.id,marker:Sn.marker,onClose:Tn})}):null,Kl?(0,Y.jsx)(Z$,{label:fo,open:t&&Jl,onClose:Gc,children:(0,Y.jsx)(Q$,{title:fo,backLabel:`Back to thread`,onBack:Gc,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`sheet`,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})})}):gn?(0,Y.jsx)(H4,{open:t&&Jl,onClose:Gc,children:(0,Y.jsx)(o4,{environmentId:m,gitCwd:ms,activeWorktreeBranch:Pi?.branch??null,activeThreadBranch:K?.branch??null,activeWorktreePrNumber:Pi?.prNumber??null,activeWorktreePrState:Pi?.prState,activeWorktreePrIsDraft:Pi?.prIsDraft,activeWorktreeTitle:Pi?.title,postPushWorkflowWatch:vs,activeThreadKey:fi,activeEnvironmentUnavailableState:aa,activePlan:Ja,sidebarProposedPlan:uo,threadSubagents:Xa,changedFileSummaries:K?.turnDiffSummaries,sourceControlActions:ul,branchControl:dl,markdownCwd:ms??void 0,workspaceRoot:Is,mode:`sheet`,onOpenFiles:Ys,onOpenReview:qs,onOpenSubagent:ic,onPostPushDiscoveryComplete:bs})}):null,wt&&(0,Y.jsx)(DY,{preview:wt,onClose:al})]}):(0,Y.jsx)(lu,{})}var r3=(0,q.lazy)(()=>r(()=>import(`./ThreadWorkspacePanel-DWKU7Omm.js`),__vite__mapDeps([0,1]))),i3=`chat_diff_sidebar_width`,a3=`clamp(24rem,34vw,36rem)`,o3=352,s3=896,c3=360,l3=`w-5 cursor-ew-resize after:w-px after:bg-border/50 hover:after:bg-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/40 focus-visible:ring-offset-0`,u3=208;function d3(e){return{...Kl(e),diff:void 0,diffTurnId:void 0,diffFilePath:void 0,preview:void 0,workspaceOpen:void 0,workspaceTab:void 0,workspaceAgentKey:void 0}}var f3=e=>{let t=(0,J.c)(6),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(ik,{}),t[0]=n):n=t[0];let r;t[1]===e.label?r=t[2]:(r=(0,Y.jsx)(ak,{label:e.label}),t[1]=e.label,t[2]=r);let i;return t[3]!==e.mode||t[4]!==r?(i=(0,Y.jsx)(rk,{mode:e.mode,header:n,children:r}),t[3]=e.mode,t[4]=r,t[5]=i):i=t[5],i};function p3(e){let t=(0,J.c)(11),[n,r]=(0,q.useState)(!e.animate&&e.open),i,a;t[0]!==e.animate||t[1]!==e.open?(i=()=>{if(!e.animate){r(e.open);return}if(!e.open){r(!1);return}let t=window.requestAnimationFrame(()=>r(!0));return()=>window.cancelAnimationFrame(t)},a=[e.animate,e.open],t[0]=e.animate,t[1]=e.open,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,q.useEffect)(i,a);let o=e.animate?e.open&&n:e.open,s=!e.open||void 0,c=!e.open||void 0,l=o?`translate-x-0 opacity-100`:`translate-x-4 opacity-0`,u;t[4]===l?u=t[5]:(u=G(`flex min-h-0 w-full flex-1 transition-[translate,opacity] duration-[300ms] ease-[cubic-bezier(0.16,1,0.3,1)] will-change-transform motion-reduce:transition-none`,l),t[4]=l,t[5]=u);let d;return t[6]!==e.children||t[7]!==s||t[8]!==c||t[9]!==u?(d=(0,Y.jsx)(`div`,{"aria-hidden":s,inert:c,className:u,children:e.children}),t[6]=e.children,t[7]=s,t[8]=c,t[9]=u,t[10]=d):d=t[10],d}var m3=e=>{let t=(0,J.c)(15),n=e.panelMode===`review`?`Loading diff viewer...`:e.panelMode===`files`?`Loading file preview...`:e.panelMode===`terminal`?`Loading terminal...`:e.panelMode===`simulator`?`Loading simulator...`:e.panelMode===`agents`?`Loading agents...`:e.panelMode===`agent`?`Loading subagent thread...`:`Loading workspace...`,r;t[0]!==e.mode||t[1]!==n?(r=(0,Y.jsx)(f3,{mode:e.mode,label:n}),t[0]=e.mode,t[1]=n,t[2]=r):r=t[2];let i=e.maximized??!1,a=e.reserveChromeInset??!1,o;t[3]!==e.mode||t[4]!==e.onClosePanelTab||t[5]!==e.onToggleMaximized||t[6]!==e.openedAgentKeys||t[7]!==e.openedPanelModes||t[8]!==e.panelMode||t[9]!==i||t[10]!==a?(o=(0,Y.jsx)(r3,{mode:e.mode,panelMode:e.panelMode,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:i,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:a}),t[3]=e.mode,t[4]=e.onClosePanelTab,t[5]=e.onToggleMaximized,t[6]=e.openedAgentKeys,t[7]=e.openedPanelModes,t[8]=e.panelMode,t[9]=i,t[10]=a,t[11]=o):o=t[11];let s;return t[12]!==r||t[13]!==o?(s=(0,Y.jsx)(dk,{children:(0,Y.jsx)(q.Suspense,{fallback:r,children:o})}),t[12]=r,t[13]=o,t[14]=s):s=t[14],s},h3=e=>{let t=(0,J.c)(41),{maximized:n,open:r,onClose:i,onOpen:a,panelMode:o,renderContent:s}=e,c=rs(Io),l=kG(r,c?0:c3),u;t[0]===l?u=t[1]:(u=Po({active:l,containIntrinsicSize:`28rem 100vh`}),t[0]=l,t[1]=u);let d=u,f;t[2]!==i||t[3]!==a?(f=e=>{if(e){a();return}i()},t[2]=i,t[3]=a,t[4]=f):f=t[4];let p=f,m=g3,h;t[5]!==n||t[6]!==r?(h=G(`min-h-0 bg-transparent`,n?`min-w-0 flex-1`:G(`flex-none transition-[width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`w-(--sidebar-width)`:`w-0`)),t[5]=n,t[6]=r,t[7]=h):h=t[7];let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g={"--sidebar-width":a3},t[8]=g):g=t[8];let _;t[9]!==n||t[10]!==r?(_=G(`border-l border-border bg-card text-foreground`,n?`translate-x-0`:G(`transition-[translate,width] duration-[360ms] ease-[cubic-bezier(0.16,1,0.3,1)] motion-reduce:transition-none`,r?`translate-x-0`:`pointer-events-none translate-x-full`)),t[9]=n,t[10]=r,t[11]=_):_=t[11];let v;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(v={maxWidth:s3,minWidth:o3,shouldAcceptWidth:m,storageKey:i3},t[12]=v):v=t[12];let y=!c,b;t[13]!==n||t[14]!==o||t[15]!==e.onClosePanelTab||t[16]!==e.onToggleMaximized||t[17]!==e.openedAgentKeys||t[18]!==e.openedPanelModes||t[19]!==e.reserveChromeInset||t[20]!==s||t[21]!==l?(b=s&&l?(0,Y.jsx)(m3,{mode:`sidebar`,panelMode:o,openedPanelModes:e.openedPanelModes,openedAgentKeys:e.openedAgentKeys,onClosePanelTab:e.onClosePanelTab,maximized:n,onToggleMaximized:e.onToggleMaximized,reserveChromeInset:e.reserveChromeInset}):null,t[13]=n,t[14]=o,t[15]=e.onClosePanelTab,t[16]=e.onToggleMaximized,t[17]=e.openedAgentKeys,t[18]=e.openedPanelModes,t[19]=e.reserveChromeInset,t[20]=s,t[21]=l,t[22]=b):b=t[22];let x;t[23]!==d||t[24]!==b?(x=(0,Y.jsx)(`div`,{className:`flex min-h-0 w-full flex-1`,style:d,children:b}),t[23]=d,t[24]=b,t[25]=x):x=t[25];let S;t[26]!==r||t[27]!==y||t[28]!==x?(S=(0,Y.jsx)(p3,{animate:y,open:r,children:x}),t[26]=r,t[27]=y,t[28]=x,t[29]=S):S=t[29];let C;t[30]===n?C=t[31]:(C=n?null:(0,Y.jsx)(ul,{"aria-label":`Resize workspace panel`,className:l3,title:`Drag to resize workspace panel`}),t[30]=n,t[31]=C);let w;t[32]!==n||t[33]!==C||t[34]!==_||t[35]!==S?(w=(0,Y.jsxs)(fl,{side:`right`,collapsible:`offcanvas`,maximized:n,className:_,resizable:v,children:[S,C]}),t[32]=n,t[33]=C,t[34]=_,t[35]=S,t[36]=w):w=t[36];let T;return t[37]!==p||t[38]!==w||t[39]!==h?(T=(0,Y.jsx)(dl,{defaultOpen:!1,open:!0,onOpenChange:p,className:h,style:g,children:w}),t[37]=p,t[38]=w,t[39]=h,t[40]=T):T=t[40],T};function g3(e){let{nextWidth:t,wrapper:n}=e,r=document.querySelector(`[data-chat-composer-form='true']`);if(!r)return!0;let i=r.parentElement;if(!i)return!0;let a=n.style.getPropertyValue(`--sidebar-width`);n.style.setProperty(`--sidebar-width`,`${t}px`);let o=window.getComputedStyle(i),s=Number.parseFloat(o.paddingLeft)||0,c=Number.parseFloat(o.paddingRight)||0,l=Math.max(0,i.clientWidth-s-c),u=r.getBoundingClientRect(),d=r.querySelector(`[data-chat-composer-footer='true']`),f=r.querySelector(`[data-chat-composer-actions='right']`)?.getBoundingClientRect().width??0,p=d&&(Number.parseFloat(window.getComputedStyle(d).columnGap)||Number.parseFloat(window.getComputedStyle(d).gap))||0,m=u3+f+p,h=r.scrollWidth>r.clientWidth+.5,g=u.width>l+.5,_=r.clientWidth+.5<m;return a.length>0?n.style.setProperty(`--sidebar-width`,a):n.style.removeProperty(`--sidebar-width`),!h&&!g&&!_}export{Pw as $,ep as $t,zE as A,jS as At,jT as B,ap as Bt,tk as C,SC as Ct,PO as D,vC as Dt,FO as E,bC as Et,GT as F,$f as Ft,ST as G,qf as Gt,CT as H,dp as Ht,VT as I,Jf as It,hT as J,Qf as Jt,TT as K,mp as Kt,NT as L,ip as Lt,LE as M,Lm as Mt,ME as N,Gh as Nt,NO as O,_C as Ot,cE as P,yp as Pt,Fw as Q,tp as Qt,xT as R,fp as Rt,rk as S,TC as St,IO as T,xC as Tt,wT as U,lp as Ut,ET as V,up as Vt,MT as W,cp as Wt,Lw as X,np as Xt,Rw as Y,Yf as Yt,Iw as Z,rp as Zt,kk as _,ed as _n,NC as _t,H4 as a,mf as an,bw as at,bk as b,DC as bt,kA as c,nf as cn,tw as ct,Vk as d,Qd as dn,aw as dt,Xf as en,kw as et,zk as f,$d as fn,rw as ft,Ok as g,ud as gn,iw as gt,Dk as h,Nd as hn,$C as ht,n3 as i,Uf as in,Tw as it,RE as j,J_ as jt,xO as k,NS as kt,AA as l,Jd as ln,ew as lt,Ek as m,Zd as mn,ow as mt,h3 as n,sp as nn,Mw as nt,Z$ as o,af as on,xw as ot,Nk as p,Xd as pn,nw as pt,_T as q,Zf as qt,d3 as r,Gf as rn,Ow as rt,sW as s,of as sn,Sw as st,m3 as t,op as tn,Aw as tt,Hk as u,qd as un,sw as ut,Sk as v,Xu as vn,kC as vt,ZO as w,CC as wt,ak as x,EC as xt,xk as y,Ju as yn,OC as yt,bT as z,pp as zt};