ryco-cli 0.1.24 → 0.1.26

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 (303) hide show
  1. package/dist/{GrokDriver-DSPEmiwq.mjs → AcpAdapter-BemMQNbj.mjs} +102 -604
  2. package/dist/{GrokDriver-RyyFeh_q.cjs → AcpAdapter-CadxcdZV.cjs} +129 -612
  3. package/dist/AcpNativeLogging-BsbZRRD7.mjs +312 -0
  4. package/dist/AcpNativeLogging-DZPZNoju.cjs +383 -0
  5. package/dist/AcpRegistryDriver-BfCPf8FX.cjs +222 -0
  6. package/dist/AcpRegistryDriver-BpXCjh9I.mjs +221 -0
  7. package/dist/{AzureDevOpsSourceControlProvider-CrvgKNf2.cjs → AzureDevOpsSourceControlProvider-B9N_8NJg.cjs} +14 -14
  8. package/dist/{AzureDevOpsSourceControlProvider-BNGEg1R8.mjs → AzureDevOpsSourceControlProvider-BcQO_CyW.mjs} +3 -3
  9. package/dist/{BitbucketSourceControlProvider-Bt21jw68.mjs → BitbucketSourceControlProvider-BTUY2ZT8.mjs} +3 -3
  10. package/dist/{BitbucketSourceControlProvider-BzhsQwH-.cjs → BitbucketSourceControlProvider-C9WuwvY2.cjs} +14 -14
  11. package/dist/{BunPTY-TbHbSc8S.mjs → BunPTY-DdnqQAdw.mjs} +1 -1
  12. package/dist/{ClaudeDriver-B7mbf51W.cjs → ClaudeDriver-BSTxNNGO.cjs} +162 -126
  13. package/dist/{ClaudeDriver-C4yu7Jit.mjs → ClaudeDriver-Csnp78qR.mjs} +129 -93
  14. package/dist/{CodexDriver-CR0S17Lb.cjs → CodexDriver-BK4HVNV4.cjs} +145 -60
  15. package/dist/{CodexDriver-DnnqkGoY.mjs → CodexDriver-fwcV84hX.mjs} +99 -14
  16. package/dist/{CodexTextGeneration-tlfe1S5W.cjs → CodexTextGeneration-Y2GSS7f1.cjs} +145 -99
  17. package/dist/{CodexTextGeneration-Cw-FZbSS.mjs → CodexTextGeneration-_4aT5BHa.mjs} +141 -95
  18. package/dist/{CopilotDriver-GxKLX5pL.mjs → CopilotDriver-B12ZJ-L_.mjs} +69 -7
  19. package/dist/{CopilotDriver-IBd27Ji2.cjs → CopilotDriver-C7IyIwVW.cjs} +98 -36
  20. package/dist/{CursorDriver-C4Enoe9N.cjs → CursorDriver-BWmCfJ-w.cjs} +38 -32
  21. package/dist/{CursorDriver-CNo9Uzo8.mjs → CursorDriver-C_p0v-ul.mjs} +12 -6
  22. package/dist/{ForgejoSourceControlProvider-Dh6DOoc8.cjs → ForgejoSourceControlProvider-DTRrllIH.cjs} +14 -14
  23. package/dist/{ForgejoSourceControlProvider-BGXysSX6.mjs → ForgejoSourceControlProvider-DmOGJEaJ.mjs} +3 -3
  24. package/dist/{GitHubSourceControlProvider-8hsv_kCE.cjs → GitHubSourceControlProvider-D-YV8WP6.cjs} +16 -17
  25. package/dist/{GitHubSourceControlProvider-CPCYV8Xo.mjs → GitHubSourceControlProvider-sQGcwnr3.mjs} +6 -7
  26. package/dist/{GitLabSourceControlProvider-B0ZbF9Zx.cjs → GitLabSourceControlProvider-kKYYnpER.cjs} +14 -14
  27. package/dist/{GitLabSourceControlProvider-Bvknpaon.mjs → GitLabSourceControlProvider-mIl-K-4F.mjs} +3 -3
  28. package/dist/GrokDriver-BFOniP_K.cjs +567 -0
  29. package/dist/GrokDriver-CDcWkiAi.mjs +552 -0
  30. package/dist/{Metrics-a1h4iBQi.mjs → Metrics-C-3MahDy.mjs} +1 -107
  31. package/dist/{Metrics-Bcb9vCAe.cjs → Metrics-DCKbdeoH.cjs} +0 -168
  32. package/dist/{NodePTY-B_p5tLYO.mjs → NodePTY-DArvQ9bX.mjs} +1 -1
  33. package/dist/{OpenCodeDriver-CDcvPT9v.cjs → OpenCodeDriver-CckbFEQJ.cjs} +459 -141
  34. package/dist/{OpenCodeDriver-0q44rSQX.mjs → OpenCodeDriver-CnWJHyDJ.mjs} +430 -112
  35. package/dist/SideQuestionIsolation-5eGFRW0t.mjs +26 -0
  36. package/dist/SideQuestionIsolation-DvVKZWxi.cjs +37 -0
  37. package/dist/{SourceControlProviderDiscoveryCatalog-B37RHe2u.mjs → SourceControlProviderDiscoveryCatalog-BVvq7liJ.mjs} +2 -1
  38. package/dist/{SourceControlProviderDiscoveryCatalog-DreaAH1H.cjs → SourceControlProviderDiscoveryCatalog-CyUhKJLD.cjs} +6 -5
  39. package/dist/bin.cjs +12772 -3149
  40. package/dist/bin.mjs +10669 -1075
  41. package/dist/client/assets/AccountSettings-DLbcE2w-.js +1 -0
  42. package/dist/client/assets/Adobe-CNS1-UCS2-fO900upv.bcmap +0 -0
  43. package/dist/client/assets/Adobe-GB1-UCS2-BA083yIo.bcmap +0 -0
  44. package/dist/client/assets/Adobe-Japan1-UCS2-BL-4M2vS.bcmap +0 -0
  45. package/dist/client/assets/Adobe-Korea1-UCS2-BEQZuOdo.bcmap +0 -0
  46. package/dist/client/assets/AiFocusSettings-FKvdkl4P.js +1 -0
  47. package/dist/client/assets/{AnimatedHeight-i0YhvlGD.js → AnimatedHeight-CbIEyMLg.js} +1 -1
  48. package/dist/client/assets/AppearanceSettings-B2LsGKmL.js +1 -0
  49. package/dist/client/assets/{BranchToolbar.logic-AgPy06Mx.js → BranchToolbar.logic-BqkvYNPk.js} +1 -1
  50. package/dist/client/assets/{BrowserPanel-BWztlNuL.js → BrowserPanel-C_C4zjrh.js} +1 -1
  51. package/dist/client/assets/ChatRightPanel-ibiQ79jI.js +195 -0
  52. package/dist/client/assets/{ChatThreadRouteView-CWoBLzR_.js → ChatThreadRouteView-c7AXmbSk.js} +1 -1
  53. package/dist/client/assets/CommandPaletteDialog-DdPKN6rv.js +1 -0
  54. package/dist/client/assets/CompositeRoot-DKwS-ADi.js +1 -0
  55. package/dist/client/assets/ComputerUseSettings-DM17BYP5.js +1 -0
  56. package/dist/client/assets/ConnectionsSettings-D6wysIC8.js +7 -0
  57. package/dist/client/assets/ContextHandoffEndpointLabel-CsF_maM_.js +4 -0
  58. package/dist/client/assets/{DiagnosticsSettings-DvnNz2AZ.js → DiagnosticsSettings-Bq2l-C4J.js} +2 -2
  59. package/dist/client/assets/{DialogHandle-8o3kfoiI.js → DialogHandle-DuKTleCw.js} +1 -1
  60. package/dist/client/assets/{DialogPopup-CLw6NCkW.js → DialogPopup-Dt7DzTWv.js} +1 -1
  61. package/dist/client/assets/DialogRoot-DRyawL6l.js +1 -0
  62. package/dist/client/assets/{DialogTitle-DCHX74Tz.js → DialogTitle-BaxfPC6e.js} +1 -1
  63. package/dist/client/assets/DialogTrigger-D0PJ8bRT.js +1 -0
  64. package/dist/client/assets/{DialogViewport-DVDl03yd.js → DialogViewport-C3B2JZWQ.js} +1 -1
  65. package/dist/client/assets/DraftChatThreadRouteView-B8YiD5NP.js +1 -0
  66. package/dist/client/assets/ETHK-B5-H-1MLb5v9x.bcmap +0 -0
  67. package/dist/client/assets/{ExternalIdentityWeb.logic-arHvT6AX.js → ExternalIdentityWeb.logic-CrcNfdHK.js} +1 -1
  68. package/dist/client/assets/FoxitDingbats-BaQLufoW.pfb +0 -0
  69. package/dist/client/assets/FoxitFixed-Dyd5Nipw.pfb +0 -0
  70. package/dist/client/assets/FoxitFixedBold-D5TuYRwj.pfb +0 -0
  71. package/dist/client/assets/FoxitFixedBoldItalic-BqlXQ_Yv.pfb +0 -0
  72. package/dist/client/assets/FoxitFixedItalic-DqjQkmbS.pfb +0 -0
  73. package/dist/client/assets/FoxitSerif-qbgiDIe-.pfb +0 -0
  74. package/dist/client/assets/FoxitSerifBold-DZZ4CclT.pfb +0 -0
  75. package/dist/client/assets/FoxitSerifBoldItalic-DSQtwd_X.pfb +0 -0
  76. package/dist/client/assets/FoxitSerifItalic-CQs5lx9Y.pfb +0 -0
  77. package/dist/client/assets/FoxitSymbol-BVtbc20u.pfb +0 -0
  78. package/dist/client/assets/GBK-EUC-H-CAORqCkf.bcmap +0 -0
  79. package/dist/client/assets/GBK2K-H-Cv55KPk8.bcmap +0 -0
  80. package/dist/client/assets/GBKp-EUC-H-CElrnV5g.bcmap +0 -0
  81. package/dist/client/assets/GBT-EUC-H-BTsQIL1M.bcmap +0 -0
  82. package/dist/client/assets/GBT-H-DL9h-WkS.bcmap +0 -0
  83. package/dist/client/assets/GBTpc-EUC-H-DnIh5WJ3.bcmap +0 -0
  84. package/dist/client/assets/{GlassSurface-GY6owikG.js → GlassSurface-CBIEgwt1.js} +1 -1
  85. package/dist/client/assets/HKscs-B5-H-CXbBbq6g.bcmap +0 -0
  86. package/dist/client/assets/{HostedConnectionControls-COUhSe9x.js → HostedConnectionControls-DOpTlXzE.js} +1 -1
  87. package/dist/client/assets/HostedHubRoot-C1jq8cM6.js +2 -0
  88. package/dist/client/assets/{HostedNativeAuthorizationRoute-DZhYxv--.js → HostedNativeAuthorizationRoute-Clw1DHQW.js} +2 -2
  89. package/dist/client/assets/HostedNodeRenameDialog-Bd_Qu_ek.js +1 -0
  90. package/dist/client/assets/{HostedRelayTrustNotice-Bl6On0Yi.js → HostedRelayTrustNotice-CGcBpT9m.js} +1 -1
  91. package/dist/client/assets/IntegrationsSettingsPanel-J0qODRW-.js +2 -0
  92. package/dist/client/assets/KSC-Johab-H-CGtV3MPT.bcmap +0 -0
  93. package/dist/client/assets/{KeybindingsSettings-CPtXx-W2.js → KeybindingsSettings-CwxIHsFy.js} +1 -1
  94. package/dist/client/assets/{LazyBrowserPanel-SUIBB7B4.js → LazyBrowserPanel-VNAn6AUL.js} +2 -2
  95. package/dist/client/assets/LiberationSans-Bold-BPt4bU5Z.ttf +0 -0
  96. package/dist/client/assets/LiberationSans-BoldItalic-Bj53-jFw.ttf +0 -0
  97. package/dist/client/assets/LiberationSans-Italic-5QhGB3P9.ttf +0 -0
  98. package/dist/client/assets/LiberationSans-Regular-cbskN6YR.ttf +0 -0
  99. package/dist/client/assets/McpServersSettings-1pkIeutq.js +6 -0
  100. package/dist/client/assets/MobileSheet-DddfN8c2.js +1 -0
  101. package/dist/client/assets/{NodeSecuritySettings-BFifrshE.js → NodeSecuritySettings-BOIZeFZo.js} +1 -1
  102. package/dist/client/assets/OpinionatedPluginsSettings-oTIrPtIb.js +1 -0
  103. package/dist/client/assets/PdfAttachmentPreview-BCMO9OHD.js +54 -0
  104. package/dist/client/assets/{PhoneGetAppInterstitial-R0cqI17q.js → PhoneGetAppInterstitial-0EOj-PbW.js} +1 -1
  105. package/dist/client/assets/PhoneHome-Cg7l3b1T.js +1 -0
  106. package/dist/client/assets/PhoneSettingsSurface-BXAUtZ9M.js +2 -0
  107. package/dist/client/assets/ProvidersSettingsPanel-BaJgypXu.js +1 -0
  108. package/dist/client/assets/{QuitShortcutFeedback-CklL3jMd.js → QuitShortcutFeedback-DgJFEd6b.js} +1 -1
  109. package/dist/client/assets/{RedactedSensitiveText-CLPBtvH1.js → RedactedSensitiveText-D1VC2xa7.js} +1 -1
  110. package/dist/client/assets/RootAppShell-D2RjZ9jQ.js +7 -0
  111. package/dist/client/assets/Separator-CeMncdkm.js +1 -0
  112. package/dist/client/assets/SettingsDialog-B2hEb6u8.js +2 -0
  113. package/dist/client/assets/SettingsPanels-DtWLQDne.js +3 -0
  114. package/dist/client/assets/{SettingsPanels.editor-9pSZP875.js → SettingsPanels.editor-DJRckD71.js} +1 -1
  115. package/dist/client/assets/{SourceControlSettings-C1F3Brcn.js → SourceControlSettings-IpoZrjt5.js} +1 -1
  116. package/dist/client/assets/StatisticsPage-CUpE_5Gr.js +1 -0
  117. package/dist/client/assets/StatisticsPanel-CHrAY5AP.js +1 -0
  118. package/dist/client/assets/StatisticsSettingsLink-bGWuxNG3.js +1 -0
  119. package/dist/client/assets/{ThreadTerminalDrawer-CHZ60lPI.js → ThreadTerminalDrawer-BEv83xrk.js} +11 -11
  120. package/dist/client/assets/ThreadWorkspacePanel-BdMdJVHJ.js +2073 -0
  121. package/dist/client/assets/UniCNS-UCS2-H-DWzv8UhH.bcmap +0 -0
  122. package/dist/client/assets/UniCNS-UTF16-H-Bw0JKgCq.bcmap +0 -0
  123. package/dist/client/assets/UniCNS-UTF32-H-IE_GrH2i.bcmap +0 -0
  124. package/dist/client/assets/UniCNS-UTF8-H-BbLcFh6Q.bcmap +0 -0
  125. package/dist/client/assets/UniGB-UCS2-H-D7xzRvZN.bcmap +0 -0
  126. package/dist/client/assets/UniGB-UTF16-H-DKjbEwc0.bcmap +0 -0
  127. package/dist/client/assets/UniGB-UTF32-H-Behfouj5.bcmap +0 -0
  128. package/dist/client/assets/UniGB-UTF8-H-EROft1ro.bcmap +0 -0
  129. package/dist/client/assets/UniJIS-UCS2-H-2DbZ0MaQ.bcmap +0 -0
  130. package/dist/client/assets/UniJIS-UTF16-H-BlDDPdCK.bcmap +0 -0
  131. package/dist/client/assets/UniJIS-UTF32-H-BIQPWkjv.bcmap +0 -0
  132. package/dist/client/assets/UniJIS-UTF8-H-CGusholx.bcmap +0 -0
  133. package/dist/client/assets/UniJIS2004-UTF16-H-KXixH-HI.bcmap +0 -0
  134. package/dist/client/assets/UniJIS2004-UTF32-H-CXrD-9YE.bcmap +0 -0
  135. package/dist/client/assets/UniJIS2004-UTF8-H-BkOctZjn.bcmap +0 -0
  136. package/dist/client/assets/UniJISX0213-UTF32-H-BavAhZjb.bcmap +0 -0
  137. package/dist/client/assets/UniJISX02132004-UTF32-H-DAH-AgUq.bcmap +0 -0
  138. package/dist/client/assets/UniKS-UCS2-H-YeUc7k1L.bcmap +0 -0
  139. package/dist/client/assets/UniKS-UTF16-H-B0dvB-Td.bcmap +0 -0
  140. package/dist/client/assets/UniKS-UTF32-H-olR_LtmR.bcmap +0 -0
  141. package/dist/client/assets/UniKS-UTF8-H-CbpebD-y.bcmap +0 -0
  142. package/dist/client/assets/{activity-BMBx2Fu0.js → activity-BmRcsTyL.js} +1 -1
  143. package/dist/client/assets/{alert-CXnC_RJc.js → alert-C5UiA2xk.js} +1 -1
  144. package/dist/client/assets/{appChrome-BzM66lXM.js → appChrome-CsZ2ylc1.js} +1 -1
  145. package/dist/client/assets/{arrow-left-CymyVbCi.js → arrow-left-CSz-z20j.js} +1 -1
  146. package/dist/client/assets/{arrow-right-9wyq4YVq.js → arrow-right-DEi91hao.js} +1 -1
  147. package/dist/client/assets/{arrow-up-right-mfU38K6p.js → arrow-up-right-D7SpcTV9.js} +1 -1
  148. package/dist/client/assets/authorization-B1YXfej3.js +1 -0
  149. package/dist/client/assets/badge-BjvTY7-E.js +1 -0
  150. package/dist/client/assets/{bot-BR3RyOWP.js → bot-SC4UGZyw.js} +1 -1
  151. package/dist/client/assets/{capabilities-C8sxDbKT.js → capabilities-BCkDNe83.js} +1 -1
  152. package/dist/client/assets/{chart-column-CcRi3pAd.js → chart-column-C08MuLgY.js} +1 -1
  153. package/dist/client/assets/chevron-right-DgB53U1_.js +1 -0
  154. package/dist/client/assets/{clipboard-copy-ezz8rnaT.js → clipboard-copy-D74Wvnon.js} +1 -1
  155. package/dist/client/assets/{data-list-ZLhzdlED.js → data-list-CZ4Utnfl.js} +1 -1
  156. package/dist/client/assets/{desktopWorkspace-P28r2lN2.js → desktopWorkspace-DVfn9ZT_.js} +1 -1
  157. package/dist/client/assets/{download-BA9L9tK9.js → download-Dio40wIJ.js} +1 -1
  158. package/dist/client/assets/editorPreferences-2dG4uloq.js +1 -0
  159. package/dist/client/assets/{empty-3NpXLnAM.js → empty-6LExKYgQ.js} +1 -1
  160. package/dist/client/assets/{group-D5qBdsaB.js → group-D_mu0Kiq.js} +1 -1
  161. package/dist/client/assets/{hostedConnectionCoordinator-CLV-JD1S.js → hostedConnectionCoordinator-YkDLnATK.js} +1 -1
  162. package/dist/client/assets/{hubRoutes-EWJ3Gdod.js → hubRoutes-D3quWvU7.js} +1 -1
  163. package/dist/client/assets/{index-DxCd1PgA.js → index-7MTgf8YI.js} +2 -2
  164. package/dist/client/assets/{input-DrOL1KPS.js → input-CfVJycb1.js} +1 -1
  165. package/dist/client/assets/jbig2-CNFLgX9F.wasm +0 -0
  166. package/dist/client/assets/kbd-uFa_tY-L.js +1 -0
  167. package/dist/client/assets/{key-round-D2DtQ7aS.js → key-round-C-oUSjpF.js} +1 -1
  168. package/dist/client/assets/{layers-DtSJWmwy.js → layers-Co2a5C1k.js} +1 -1
  169. package/dist/client/assets/{log-out-YAp9fsOg.js → log-out-pWFhbvwr.js} +1 -1
  170. package/dist/client/assets/{logging-BuUPX1SP.js → logging-JMrwaeZh.js} +1 -1
  171. package/dist/client/assets/main-BNPtp9Z0.css +2 -0
  172. package/dist/client/assets/main-CGeD6yVE.js +9 -0
  173. package/dist/client/assets/openjpeg-MeY6OQBn.wasm +0 -0
  174. package/dist/client/assets/{palette-D18VboLH.js → palette-B_6C4fD6.js} +1 -1
  175. package/dist/client/assets/pdf.worker.min-Dswkl-cV.mjs +29 -0
  176. package/dist/client/assets/{play-d3KUi4G6.js → play-DFtc9zBy.js} +1 -1
  177. package/dist/client/assets/primary-CNUdEGcv.js +2 -0
  178. package/dist/client/assets/providerDriverMeta-Cg_XLUfo.js +1 -0
  179. package/dist/client/assets/{ProviderModelPicker-dwWhl7Uf.js → providerInstances-JaDrOWPZ.js} +1 -1
  180. package/dist/client/assets/providerModels-5uOq3qPC.js +1 -0
  181. package/dist/client/assets/qcms_bg-3PJi_GXR.wasm +0 -0
  182. package/dist/client/assets/{qr-code-Bk1kdf_k.js → qr-code-BU354aLS.js} +1 -1
  183. package/dist/client/assets/{qr-code-MAZkoKtL.js → qr-code-DaHWf7Oq.js} +1 -1
  184. package/dist/client/assets/quickjs-eval-zJSp5SB4.wasm +0 -0
  185. package/dist/client/assets/radio-group-DKaA1eey.js +2 -0
  186. package/dist/client/assets/{refresh-cw-DY3_Ph-S.js → refresh-cw-CY5BeUEr.js} +1 -1
  187. package/dist/client/assets/runtime-BKneT96Q.js +17 -0
  188. package/dist/client/assets/{save-ugJXuJRM.js → save-DIHMjHXd.js} +1 -1
  189. package/dist/client/assets/{scroll-area-BMnGzd2a.js → scroll-area-Cq4SX9P8.js} +1 -1
  190. package/dist/client/assets/{scrollEdges-QLSFwGSQ.js → scrollEdges-BaWRjrac.js} +1 -1
  191. package/dist/client/assets/{separator-BwUYkCkX.js → separator-BN705fC0.js} +1 -1
  192. package/dist/client/assets/{settingsLayout-C6SUmJVB.js → settingsLayout-DQERzSce.js} +1 -1
  193. package/dist/client/assets/{sheet-DLy4aeVa.js → sheet-CFvRY7T6.js} +1 -1
  194. package/dist/client/assets/{shield-Zq_ygsnJ.js → shield-Zn2kFj5M.js} +1 -1
  195. package/dist/client/assets/{shield-alert-DfUhTI4-.js → shield-alert-DMB5gKiC.js} +1 -1
  196. package/dist/client/assets/{shield-check-CO4SMhAs.js → shield-check-DyNf6Bky.js} +1 -1
  197. package/dist/client/assets/{sidebar-DNnW-a2V.js → sidebar-Bsh64sLK.js} +1 -1
  198. package/dist/client/assets/sidebarProjectFolders-CQbpO9ZI.js +4 -0
  199. package/dist/client/assets/{sidebarStatusText-CawrXnx0.js → sidebarStatusText-DCo-whyK.js} +1 -1
  200. package/dist/client/assets/{skeleton-DRm4_OvB.js → skeleton-DEuowfjY.js} +1 -1
  201. package/dist/client/assets/{smartphone-O2VACDhU.js → smartphone-BLWJ7C9-.js} +1 -1
  202. package/dist/client/assets/{sparkles-isHutYWU.js → sparkles-DAXDXp_s.js} +1 -1
  203. package/dist/client/assets/src-DPpEXU6w.js +14 -0
  204. package/dist/client/assets/{star-7UHEnC3x.js → star-CjQxHYbD.js} +1 -1
  205. package/dist/client/assets/switch-LahPAvrd.js +48 -0
  206. package/dist/client/assets/{toggle-CaKBNe6W.js → toggle-45lsrmyi.js} +1 -1
  207. package/dist/client/assets/{toggle-group-UeFeTI3u.js → toggle-group-D5pl24ED.js} +1 -1
  208. package/dist/client/assets/{tokenModePresentation-DV56ekA4.js → tokenModePresentation-CPUsUGY4.js} +1 -1
  209. package/dist/client/assets/tooltip-B8-izeMo.js +1 -0
  210. package/dist/client/assets/{unplug-DisTpujT.js → unplug-Bjpxv8i0.js} +1 -1
  211. package/dist/client/assets/usage-8vQUo0mr.js +1 -0
  212. package/dist/client/assets/useAppSidebarCollapsed-uwz9Hlgc.js +1 -0
  213. package/dist/client/assets/useBaseUiId-BtuL7q77.js +1 -0
  214. package/dist/client/assets/useLabelableId-N_LsKNbf.js +1 -0
  215. package/dist/client/assets/useNavigate-DADLi29i.js +1 -0
  216. package/dist/client/assets/usePhoneThreadActions-B9_HK7tn.js +1 -0
  217. package/dist/client/assets/usePopupViewport-w8BEny9j.js +1 -0
  218. package/dist/client/assets/useScrollLock-bCmUzTgK.js +1 -0
  219. package/dist/client/assets/useStatistics-DJtONxT0.js +55 -0
  220. package/dist/client/assets/useTriggerFocusGuards-C7JWO2LT.js +1 -0
  221. package/dist/client/assets/useValueChanged-DkoUO9bY.js +1 -0
  222. package/dist/client/assets/{user-round-DctamWV6.js → user-round-DEWIPpNs.js} +1 -1
  223. package/dist/client/assets/{vscode-icons-Dw-LGJAv.js → vscode-icons-DTH-Vj-_.js} +1 -1
  224. package/dist/client/assets/workspaceMetadataProjection-BnpxBe8S.js +1 -0
  225. package/dist/client/assets/{wrench-Ds8eZerZ.js → wrench-36WYdK_a.js} +1 -1
  226. package/dist/client/index.html +1 -1
  227. package/dist/collectUint8StreamText-BAUF-vzz.mjs +37 -0
  228. package/dist/collectUint8StreamText-vagpNUMJ.cjs +42 -0
  229. package/dist/deviceHostWorker-C-BSnmkn.mjs +167 -0
  230. package/dist/deviceHostWorker-CYnrwfrv.cjs +169 -0
  231. package/dist/git-C4iJMbBu.mjs +132 -0
  232. package/dist/git-irmB8_k7.cjs +218 -0
  233. package/dist/{makeManagedServerProvider-GZcpSLrW.mjs → makeManagedServerProvider-BINne1KE.mjs} +3 -38
  234. package/dist/{makeManagedServerProvider-VzxWN-04.cjs → makeManagedServerProvider-DGbd8BhM.cjs} +1 -60
  235. package/dist/resource-monitor/ryco-resource-monitor +0 -0
  236. package/dist/resource-monitor/ryco-resource-monitor.exe +0 -0
  237. package/dist/resource-monitor/win32-arm64/ryco-resource-monitor.exe +0 -0
  238. package/dist/resource-monitor/win32-x64/ryco-resource-monitor.exe +0 -0
  239. package/dist/runtimeSession-Bj0OUcNJ.cjs +63 -0
  240. package/dist/runtimeSession-CA6cLWg0.mjs +40 -0
  241. package/dist/schemaJson-CaG1bOvo.mjs +49 -0
  242. package/dist/schemaJson-CuhFxa8p.cjs +66 -0
  243. package/dist/{collectUint8StreamText-DStwNTTK.cjs → src-BlzIcnVG.cjs} +573 -117
  244. package/dist/{collectUint8StreamText-C_VNyArd.mjs → src-DtEOcXdl.mjs} +389 -95
  245. package/package.json +1 -1
  246. package/dist/AcpNativeLogging-COepku4a.cjs +0 -5130
  247. package/dist/AcpNativeLogging-D7e1dn7s.mjs +0 -5015
  248. package/dist/client/assets/AccountSettings-ApnDA1f-.js +0 -1
  249. package/dist/client/assets/AiFocusSettings-CNmGHEcA.js +0 -1
  250. package/dist/client/assets/AppearanceSettings-BG8W4DP0.js +0 -1
  251. package/dist/client/assets/ChatRightPanel-a6UOHNMm.js +0 -194
  252. package/dist/client/assets/CommandPaletteDialog-B2iKWCUi.js +0 -1
  253. package/dist/client/assets/CompositeRoot-C1G-Ejus.js +0 -1
  254. package/dist/client/assets/ComputerUseSettings-CPwWoHWj.js +0 -1
  255. package/dist/client/assets/ConnectionsSettings-CPMkuxza.js +0 -7
  256. package/dist/client/assets/ContextHandoffEndpointLabel-BildLLDY.js +0 -4
  257. package/dist/client/assets/DialogRoot-SKkIuQHA.js +0 -1
  258. package/dist/client/assets/DialogTrigger-Bl_fcIV2.js +0 -1
  259. package/dist/client/assets/DraftChatThreadRouteView-CEDYjbKq.js +0 -1
  260. package/dist/client/assets/HostedHubRoot-BTWc0XoQ.js +0 -2
  261. package/dist/client/assets/IntegrationsSettingsPanel-n9owMZf-.js +0 -2
  262. package/dist/client/assets/McpServersSettings-BWIUud0Z.js +0 -6
  263. package/dist/client/assets/MobileSheet-NTayGHF6.js +0 -1
  264. package/dist/client/assets/OpinionatedPluginsSettings-D7WuuNWZ.js +0 -1
  265. package/dist/client/assets/PhoneHome-FqWvnJP_.js +0 -1
  266. package/dist/client/assets/PhoneSettingsSurface-w5PJnoBc.js +0 -2
  267. package/dist/client/assets/ProvidersSettingsPanel-Ww1ch3xA.js +0 -1
  268. package/dist/client/assets/RootAppShell-BdQCs2XJ.js +0 -7
  269. package/dist/client/assets/Separator-CpYBhf-I.js +0 -1
  270. package/dist/client/assets/SettingsDialog-DeMzEeCP.js +0 -2
  271. package/dist/client/assets/SettingsPanels-ZxNz9ZfL.js +0 -3
  272. package/dist/client/assets/StatisticsPage-C7v-6CTr.js +0 -1
  273. package/dist/client/assets/StatisticsPanel-CeIjiBm8.js +0 -1
  274. package/dist/client/assets/StatisticsSettingsLink-5s_violW.js +0 -1
  275. package/dist/client/assets/ThreadWorkspacePanel-Ct5kMcuY.js +0 -2073
  276. package/dist/client/assets/authorization-CjOFkg7b.js +0 -1
  277. package/dist/client/assets/badge-Dg7mXiOh.js +0 -1
  278. package/dist/client/assets/chevron-right-CuUjBsQV.js +0 -1
  279. package/dist/client/assets/editorPreferences-DeKdSV3s.js +0 -1
  280. package/dist/client/assets/kbd-rWDjJnWX.js +0 -1
  281. package/dist/client/assets/main-BbtLAX7M.js +0 -9
  282. package/dist/client/assets/main-D4CtFNPY.css +0 -2
  283. package/dist/client/assets/monitor-OyD484tI.js +0 -1
  284. package/dist/client/assets/primary-D_D7eLwT.js +0 -2
  285. package/dist/client/assets/providerDriverMeta-DNTocCcU.js +0 -1
  286. package/dist/client/assets/providerModels-bFbEIfL9.js +0 -1
  287. package/dist/client/assets/radio-group-D-VCGinX.js +0 -2
  288. package/dist/client/assets/runtime-Djy96GJd.js +0 -17
  289. package/dist/client/assets/sidebarProjectFolders-ygpaKZM6.js +0 -4
  290. package/dist/client/assets/src-BSuAGqhK.js +0 -14
  291. package/dist/client/assets/switch-DD1qVLgN.js +0 -48
  292. package/dist/client/assets/tooltip-DXvXxL37.js +0 -1
  293. package/dist/client/assets/useAppSidebarCollapsed-CaAsLi1q.js +0 -1
  294. package/dist/client/assets/useBaseUiId-CJN4MvrU.js +0 -1
  295. package/dist/client/assets/useLabelableId-BsDFG9Oj.js +0 -1
  296. package/dist/client/assets/useNavigate-cLfxn_9L.js +0 -1
  297. package/dist/client/assets/usePhoneThreadActions-rekHL1Mi.js +0 -1
  298. package/dist/client/assets/usePopupViewport-kXU31P6l.js +0 -1
  299. package/dist/client/assets/useScrollLock-DjMxrUJe.js +0 -1
  300. package/dist/client/assets/useStatistics-BYP-9CmW.js +0 -55
  301. package/dist/client/assets/useTriggerFocusGuards-DuAm2B8C.js +0 -1
  302. package/dist/client/assets/useValueChanged-DreFjrMK.js +0 -1
  303. package/dist/client/assets/workspaceMetadataProjection-BL4sEIL2.js +0 -1
@@ -1,4 +0,0 @@
1
- import{i as e,t}from"./react-SIfiwpqq.js";import{Bt as n,Ht as r,K as i,Vt as a,a as o,zt as s}from"./primary-D_D7eLwT.js";import{U as c,nt as l}from"./src-BSuAGqhK.js";import{$i as u,$n as d,A as f,B as p,E as m,Ft as h,Na as g,Nn as _,Nr as v,Nt as y,O as b,R as x,S,Ur as C,Vr as w,Wr as T,Xi as E,Zr as D,_l as ee,al as O,ar as k,bl as A,j,k as M,p as te,rr as N,sr as P,w as F,wa as I,wn as ne,x as L,z as re,zr as R}from"./runtime-Djy96GJd.js";import{$t as ie,Cn as ae,Ft as z,It as B,J as V,Kt as oe,L as se,Mn as ce,Mt as H,Nt as U,O as le,Pn as ue,Pt as de,Qn as fe,Qt as pe,R as me,Rn as he,Yt as W,Zn as ge,_ as _e,a as ve,an as G,ar as K,b as ye,dt as be,en as xe,h as Se,i as Ce,jt as q,k as J,kt as we,lr as Te,lt as Ee,n as De,o as Oe,on as ke,p as Ae,pr as je,rn as Y,s as Me,sn as Ne,st as Pe,t as Fe,ut as Ie,v as Le,x as Re,y as ze}from"./switch-DD1qVLgN.js";import{t as Be}from"./compiler-runtime-qmuS0Svy.js";import{a as Ve,c as He,n as Ue,o as We,s as Ge}from"./badge-Dg7mXiOh.js";import{r as Ke,t as qe}from"./sparkles-isHutYWU.js";import{n as Je,t as Ye}from"./LazyBrowserPanel-SUIBB7B4.js";import{t as X}from"./toastHelpers-CSQRKo4F.js";import{t as Xe}from"./input-DrOL1KPS.js";import{t as Ze}from"./scroll-area-BMnGzd2a.js";import{F as Qe,I as $e,U as et,ct as tt,j as nt,jt as rt,ut as it,xt as at}from"./main-BbtLAX7M.js";var ot={name:`pin`,size:24,node:[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]};ot.node;var st=g(ot),ct={name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]};ct.node;var lt=g(ct),ut={name:`sliders-horizontal`,size:24,node:[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]};ut.node;var dt=g(ut),Z=Be();function ft(e){return e===`/`||e===`\\`||/^[a-zA-Z]:[/\\]?$/.test(e)}function pt(e){return j(e)||M(e)?`windows`:e.startsWith(`/`)?`unix`:null}function mt(e){if(e.length===0||ft(e))return e;let t=pt(e)===`unix`?e.replace(/\/+$/g,``):e.replace(/[\\/]+$/g,``);return t.length===0?e:/^[a-zA-Z]:$/.test(t)?`${t}\\`:t}function ht(e){let t=pt(e);return t===`windows`?`\\`:t===`unix`?`/`:e.includes(`\\`)?`\\`:`/`}function gt(e){return(pt(e)===`unix`?/\/$/:/[\\/]$/).test(e)}function _t(e,t){return e.split(t===`/`?/\/+/:/[\\/]+/).filter(Boolean)}function vt(e){return pt(e)===`unix`?e.lastIndexOf(`/`):Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`))}function yt(e){if(j(e)){let t=`${e.slice(0,2)}\\`;return{root:t,separator:`\\`,segments:_t(e.slice(t.length),`\\`)}}if(M(e)){let[t,n,...r]=_t(e,`\\`);return!t||!n?null:{root:`\\\\${t}\\${n}\\`,separator:`\\`,segments:r}}return e.startsWith(`/`)?{root:`/`,separator:`/`,segments:_t(e.slice(1),`/`)}:null}function bt(e,t=typeof navigator>`u`?``:navigator.platform){let n=C(t);return e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`.\\`)||e.startsWith(`..\\`)||e.startsWith(`/`)||e.startsWith(`~/`)||n&&f(e)}function xt(e,t){return f(e)&&!C(t)}function St(e){return mt(e.trim())}function Ct(e,t){let n=e.trim();if(!b(n)||!t)return St(n);let r=yt(St(t));if(!r)return St(n);let i=[...r.segments];for(let e of n.split(/[\\/]+/))if(e.length!==0&&e!==`.`){if(e===`..`){i.pop();continue}i.push(e)}let a=i.join(r.separator);return a.length===0?St(r.root):St(`${r.root}${a}`)}function wt(e){let t=St(e);return j(t)||t.startsWith(`\\\\`)?t.replaceAll(`/`,`\\`).toLowerCase():t}function Tt(e,t){let n=wt(t);if(n.length!==0)return e.find(e=>wt(e.cwd)===n)}function Et(e){let t=St(e),n=yt(t);return n?n.segments.findLast(Boolean)??t:t.split(/[/\\]/).findLast(Boolean)??t}function Dt(e,t){let n=ht(e);return`${kt(e)}${t}${n}`}function Ot(e){let t=vt(e);return e.slice(t+1)}function kt(e){if(gt(e))return e;let t=vt(e);return t<0?e:e.slice(0,t+1)}function At(e){let t=e.trim();return t.length===0||gt(t)?t:`${t}${ht(t)}`}function jt(e){let t=e.workspaceAccessRoot?.trim()??``;if(t.length>0)return At(t);let n=e.configuredBaseDirectory?.trim()??``;return n.length>0?At(n):`~/`}function Mt(e){let t=mt(e),n=yt(t);if(n){if(n.segments.length===0)return null;if(n.segments.length===1)return n.root;let e=n.segments.slice(0,-1).join(n.separator);return`${n.root}${e}${n.separator}`}let r=ht(e),i=vt(t);return i<0?null:i===2&&/^[a-zA-Z]:/.test(t)?`${t.slice(0,2)}${r}`:t.slice(0,i+1)}function Nt(e){return gt(e)&&Mt(e)!==null}function Pt(e,t){let n=mt(e.trim()),r=mt(t.trim());return pt(n)===`windows`||pt(r)===`windows`?n.replace(/\//g,`\\`).toLowerCase()===r.replace(/\//g,`\\`).toLowerCase():n===r}var Ft=new Set([`idle`,`in_progress`,`review`,`done`]),It=new Set([`main`,`branch`,`pr`,`issue`,`manual`]);function Lt(e,t){let i=[...e],a=new Set(e.map(e=>r(n(e.environmentId,e.id))));for(let e of t){let t=r(n(e.environmentId,e.id));a.has(t)||(a.add(t),i.push(e))}return i}function Rt(e){let t=e.project.projectKey,i=new Map(e.project.memberProjects.map(e=>[a(s(e.environmentId,e.id)),e])),o={...e.project,id:t},c=e.threads.map(o=>Ht({lastVisitedAt:e.lastVisitedAtByThreadKey?.get(r(n(o.environmentId,o.id)))??null,logicalProjectId:t,sourceProjectCwd:i.get(a(s(o.environmentId,o.projectId)))?.cwd??e.project.cwd,thread:o})),l=Wt(e.project,t,e.worktrees??[]);return{project:o,threads:c,worktrees:[...Xt({logicalProjectId:t,project:e.project,threads:c}),...l]}}function zt(e){let t=Bt(e),n=e.projectKey,r=[],i=[];return a=>{let o=[];for(let[e,n]of Object.entries(a.draftThreadsByThreadKey))Vt(n,t)&&o.push([e,n]);return o.length===r.length&&o.every((e,t)=>{let n=r[t];return n?.[0]===e[0]&&n[1]===e[1]})?i:(r=o,i=o.map(([t,r])=>Ut({draftId:t,logicalProjectId:n,sourceProjectCwd:on(e,r),draftThread:r})),i)}}function Bt(e){return new Set(e.memberProjects.map(e=>a(s(e.environmentId,e.id))))}function Vt(e,t){return e.promotedTo==null&&t.has(a(s(e.environmentId,e.projectId)))}function Ht(e){let t=e.thread,n=rn(t.statusPill)||t.statusPill===null?t.statusPill:at({thread:{...e.thread,...e.lastVisitedAt?{lastVisitedAt:e.lastVisitedAt}:{}}});return{...e.thread,projectId:e.logicalProjectId,manualStatusBucket:Qt(t.manualStatusBucket)??Qt(t.manualBucket)??Qt(t.statusBucket)??null,sourceProjectId:e.thread.projectId,sourceProjectCwd:e.sourceProjectCwd,statusPill:n,worktreeId:typeof t.worktreeId==`string`?t.worktreeId:null}}function Ut(e){return{archivedAt:null,settledOverride:null,settledAt:null,branch:e.draftThread.branch,createdAt:e.draftThread.createdAt,draftId:e.draftId,environmentId:e.draftThread.environmentId,hasActionableProposedPlan:!1,hasPendingApprovals:!1,hasPendingUserInput:!1,id:e.draftThread.threadId,interactionMode:e.draftThread.interactionMode??`default`,tokenMode:e.draftThread.tokenMode??`balanced`,latestTurn:null,latestUserMessageAt:null,manualStatusBucket:null,projectId:e.logicalProjectId,session:null,sourceProjectId:e.draftThread.projectId,sourceProjectCwd:e.sourceProjectCwd,statusPill:null,title:`New thread`,updatedAt:e.draftThread.createdAt,worktreePath:e.draftThread.worktreePath}}function Wt(e,t,n){let r=e.memberProjects.find(t=>t.id===e.id&&t.environmentId===e.environmentId)??e.memberProjects[0];if(!r)return[];let i=new Map(e.memberProjects.map(e=>[a(s(e.environmentId,e.id)),e])),o=n.map(e=>({value:e,fallbackProject:i.get(a(s(e.environmentId,e.projectId)))??r})),c=[e,...e.memberProjects];for(let e of c){let t=e;if(Array.isArray(t.worktrees))for(let n of t.worktrees)o.push({value:n,fallbackProject:`physicalProjectKey`in e?e:r});if(Array.isArray(t.sidebarWorktrees))for(let n of t.sidebarWorktrees)o.push({value:n,fallbackProject:`physicalProjectKey`in e?e:r})}return o.flatMap(({value:e,fallbackProject:n},r)=>{if(!e||typeof e!=`object`)return[];let o=e,c=en(o.branch);if(!c)return[];let l=en(o.environmentId)??n.environmentId,u=en(o.projectId)??n.id,d=i.get(a(s(l,u)))??n,f=tn(o.worktreePath),p=$t(o.origin)??(f===null?`main`:`manual`),m=en(o.worktreeId)??en(o.id)??Zt({branch:c,fallbackIndex:r,environmentId:l,origin:p,sourceProjectId:u,worktreePath:f});return[{archivedAt:tn(o.archivedAt),branch:c,environmentId:l,issueNumber:nn(o.issueNumber),manualPosition:nn(o.manualPosition),origin:p,prNumber:nn(o.prNumber),prState:Gt(o.prState),prIsDraft:Yt(o.prIsDraft),issueState:Kt(o.issueState),workItemProvider:qt(o.workItemProvider),workItemKey:tn(o.workItemKey),workItemTitle:tn(o.workItemTitle),workItemState:Jt(o.workItemState),workItemStateName:tn(o.workItemStateName),workItemUrl:tn(o.workItemUrl),projectId:t,sourceProjectCwd:d.cwd,sourceProjectId:u,title:tn(o.title),updatedAt:en(o.updatedAt),worktreeId:m,worktreePath:f}]})}function Gt(e){return e===`open`||e===`closed`||e===`merged`?e:null}function Kt(e){return e===`open`||e===`closed`?e:null}function qt(e){return e===`jira`?e:null}function Jt(e){return e===`open`||e===`in_progress`||e===`done`||e===`closed`||e===`unknown`?e:null}function Yt(e){return typeof e==`boolean`?e:null}function Xt(e){return e.project.memberProjects.map((t,n)=>{let r=e.threads.filter(e=>e.environmentId===t.environmentId&&e.sourceProjectId===t.id&&e.worktreePath===null).toSorted((e,t)=>an(e.updatedAt??e.createdAt,t.updatedAt??t.createdAt))[0];return{archivedAt:null,branch:r?.branch??`main`,environmentId:t.environmentId,manualPosition:n,origin:`main`,projectId:e.logicalProjectId,sourceProjectCwd:t.cwd,sourceProjectId:t.id,title:null,updatedAt:r?.updatedAt??r?.createdAt??t.updatedAt,worktreeId:`main:${t.environmentId}:${t.id}`,worktreePath:null}})}function Zt(e){let t=e.worktreePath??e.branch;return`${e.origin}:${e.environmentId}:${e.sourceProjectId}:${t||e.fallbackIndex}`}function Qt(e){return typeof e==`string`&&Ft.has(e)?e:null}function $t(e){return typeof e==`string`&&It.has(e)?e:null}function en(e){return typeof e==`string`&&e.length>0?e:void 0}function tn(e){return typeof e==`string`&&e.length>0?e:null}function nn(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function rn(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.label==`string`&&typeof t.colorClass==`string`&&typeof t.dotClass==`string`&&typeof t.pulse==`boolean`}function an(e,t){let n=e?Date.parse(e):-1/0,r=t?Date.parse(t):-1/0,i=Number.isNaN(n)?-1/0:n;return(Number.isNaN(r)?-1/0:r)-i}function on(e,t){return e.memberProjects.find(e=>e.environmentId===t.environmentId&&e.id===t.projectId)?.cwd??e.cwd}function sn(e){let t=Ln(cn(e.threads),e=>e.projectId),n=Ln(e.worktrees??[],e=>String(e.projectId));return{projects:e.projects.map(r=>{let i=t.get(r.id)??[],a=i.filter(e=>e.draftId!==void 0&&e.archivedAt===null),o=i.filter(e=>e.draftId===void 0),s=Pn(r,e.isGitRepoByProjectId),c=o.filter(e=>e.archivedAt!==null);if(!s)return{archivedSessions:c,archivedWorktrees:[],draftSessions:a,flatSessions:i.filter(e=>e.archivedAt===null),isGitRepo:s,project:r,worktrees:[]};let l=pn(r,Cn({project:r,threads:o,worktrees:n.get(r.id)??[]})),u=l.worktrees;return{archivedSessions:c,archivedWorktrees:kn(u).filter(e=>e.archivedAt!=null).map(t=>un({diffStats:Nn(e,t.worktreeId),nowMs:e.nowMs,threads:o.filter(e=>fn(e,t,r,l)),worktree:t})),flatSessions:[],draftSessions:a,isGitRepo:s,project:r,worktrees:kn(u).filter(e=>e.archivedAt==null).map(t=>un({diffStats:Nn(e,t.worktreeId),nowMs:e.nowMs,threads:o.filter(e=>fn(e,t,r,l)),worktree:t}))}})}}function cn(e){let t=new Set;return e.filter(e=>{let n=JSON.stringify([e.environmentId,e.id]);return!t.has(n)&&(t.add(n),!0)})}function ln(e){let t=(0,Z.c)(8),{diffStatsByWorktreeId:n,diffStatsByWorktreeIdRecord:r,isGitRepoByProjectId:i,nowMs:a,projects:o,threads:s,worktrees:c}=e,l;return t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a||t[4]!==o||t[5]!==s||t[6]!==c?(l=sn({diffStatsByWorktreeId:n,diffStatsByWorktreeIdRecord:r,isGitRepoByProjectId:i,nowMs:a??Date.now(),projects:o,threads:s,worktrees:c}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l):l=t[7],l}function un(e){let t={done:[],idle:[],in_progress:[],review:[]},n=[],r=[],i=[];for(let a of e.threads){if(a.archivedAt!==null){r.push(a);continue}i.push(a);let e=dn(a);n.push(e),t[e].push(a)}return{aggregateStatus:tt(n),archivedSessions:r,buckets:t,diffStats:e.diffStats,sessions:i,shouldSuggestArchive:rt({buckets:n,latestUpdatedAt:Mn(e.threads),nowMs:e.nowMs}),worktree:e.worktree}}function dn(e){return it({manualBucket:e.manualStatusBucket??null,statusPill:e.statusPill??at({thread:e})})}function fn(e,t,n,r){let i=Tn(e,n),a=En(t,n);if(i!==null&&r.directoryKeys.has(i))return i===a;let o=e.worktreeId==null?void 0:r.nodeIdByWorktreeId.get(e.worktreeId);return o===void 0?i!==null&&a!==null?i===a:e.worktreeId!=null&&e.worktreeId===t.worktreeId?!0:e.worktreePath!==null||t.worktreePath!==null?!1:t.origin===`main`?e.branch===null||e.branch===t.branch||On(e.branch):e.branch===t.branch:o===t.worktreeId}function pn(e,t){let n=new Map,r=new Map;for(let i of t){let t=mn(e,i),a=n.get(t);r.set(i.worktreeId,t),n.set(t,a?gn(a,i):i)}let i=new Set,a=new Map;for(let[e,t]of r){let r=n.get(t);r&&a.set(e,r.worktreeId)}for(let t of n.values()){let n=En(t,e);n!==null&&i.add(n)}return{directoryKeys:i,nodeIdByWorktreeId:a,worktrees:[...n.values()]}}function mn(e,t){return En(t,e)??`${t.projectId}:${t.origin}:${t.worktreeId}:${t.branch}`}function hn(e){return wt(e)}function gn(e,t){let n=_n(e,t),r=e.origin===`main`||t.origin!==`main`?e.origin:t.origin;return{...e,archivedAt:xn(e.archivedAt,t.archivedAt),branch:n.branch,environmentId:n.environmentId??e.environmentId??t.environmentId,manualPosition:Sn(e.manualPosition,t.manualPosition),origin:r,prNumber:e.prNumber??t.prNumber??null,issueNumber:e.issueNumber??t.issueNumber??null,prState:n.prState??null,prIsDraft:n.prIsDraft??null,issueState:n.issueState??null,workItemProvider:e.workItemProvider??t.workItemProvider??null,workItemKey:e.workItemKey??t.workItemKey??null,workItemTitle:e.workItemTitle??t.workItemTitle??null,workItemState:n.workItemState??null,workItemStateName:n.workItemStateName??null,workItemUrl:e.workItemUrl??t.workItemUrl??null,sourceProjectCwd:n.sourceProjectCwd??e.sourceProjectCwd??t.sourceProjectCwd,sourceProjectId:n.sourceProjectId??e.sourceProjectId??t.sourceProjectId,title:vn(e,t),updatedAt:jn(e.updatedAt,t.updatedAt),worktreeId:yn(e,t),worktreePath:r===`main`?null:e.worktreePath??t.worktreePath}}function _n(e,t){let n=e.updatedAt?Date.parse(e.updatedAt):-1/0,r=t.updatedAt?Date.parse(t.updatedAt):-1/0;return Number.isNaN(r)||r<=n?e:t}function vn(e,t){if(e.title==null)return t.title??null;if(t.title==null)return e.title;let n=e.updatedAt?Date.parse(e.updatedAt):-1/0,r=t.updatedAt?Date.parse(t.updatedAt):-1/0;return Number.isNaN(n)?t.title:Number.isNaN(r)?e.title:r>n?t.title:e.title}function yn(e,t){let n=bn(e.worktreeId),r=bn(t.worktreeId);return n&&!r?t.worktreeId:r&&!n||e.origin===`main`?e.worktreeId:t.origin===`main`?t.worktreeId:e.worktreeId}function bn(e){return/^(main|branch|pr|issue|manual):/.test(e)}function xn(e,t){return e==null||t==null?null:jn(e,t)}function Sn(e,t){return e==null?t:t==null?e:Math.min(e,t)}function Cn(e){let t=new Set(e.worktrees.map(e=>e.worktreeId));return[...e.worktrees,...e.threads.filter(e=>e.worktreeId==null||!t.has(e.worktreeId)).map(t=>wn(e.project,t))]}function wn(e,t){let n=t.branch??`main`,r=t.worktreePath===null&&On(t.branch)?`main`:`branch`;return{archivedAt:null,branch:n,environmentId:t.environmentId,manualPosition:r===`main`?0:null,origin:r,projectId:e.id,sourceProjectCwd:t.sourceProjectCwd??e.cwd,sourceProjectId:t.sourceProjectId??t.projectId,updatedAt:t.updatedAt??t.createdAt,worktreeId:r===`main`?`main:${e.environmentId}:${e.id}`:`branch:${e.environmentId}:${e.id}:${t.worktreePath?hn(t.worktreePath):n}`,worktreePath:t.worktreePath}}function Tn(e,t){return Dn({directory:e.worktreePath??e.sourceProjectCwd??t.cwd,environmentId:e.environmentId})}function En(e,t){return Dn({directory:e.worktreePath??e.sourceProjectCwd??t.cwd,environmentId:e.environmentId??t.environmentId})}function Dn(e){let t=hn(e.directory);return t.length===0?null:JSON.stringify([e.environmentId,t])}function On(e){return e==null||e===`main`||e===`master`||e===`trunk`}function kn(e){return[...e].toSorted((e,t)=>{if(e.origin===`main`&&t.origin!==`main`)return-1;if(t.origin===`main`&&e.origin!==`main`)return 1;let n=e.manualPosition??2**53-1,r=t.manualPosition??2**53-1;if(n!==r)return n-r;let i=An(e.updatedAt,t.updatedAt);return i===0?e.branch.localeCompare(t.branch)||e.worktreeId.localeCompare(t.worktreeId):i})}function An(e,t){let n=t?Date.parse(t):-1/0,r=e?Date.parse(e):-1/0;return(Number.isNaN(n)?-1/0:n)-(Number.isNaN(r)?-1/0:r)}function jn(e,t){if(!e)return t;if(!t)return e;let n=Date.parse(e),r=Date.parse(t);return Number.isNaN(n)?t:Number.isNaN(r)?e:r>n?t:e}function Mn(e){return e.map(e=>e.updatedAt??e.createdAt).filter(e=>e!==void 0).toSorted((e,t)=>Date.parse(t)-Date.parse(e))[0]}function Nn(e,t){return e.diffStatsByWorktreeId?e.diffStatsByWorktreeId.get(t)??null:e.diffStatsByWorktreeIdRecord?.[t]??null}function Pn(e,t){let n=Fn(t,e.id);return n===void 0||n}function Fn(e,t){if(e)return In(e)?e.get(t):e[String(t)]}function In(e){return e instanceof Map}function Ln(e,t){let n=new Map;for(let r of e){let e=t(r),i=n.get(e);i?i.push(r):n.set(e,[r])}return n}var Q=e(t(),1),$=ee();function Rn(e){let t=(0,Z.c)(9),[n,r]=(0,Q.useState)(!1),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsxs)(be,{className:`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-xs text-muted-foreground hover:bg-accent hover:text-foreground`,children:[(0,$.jsx)(fe,{className:`size-3.5`}),`Live preview`]}),t[0]=i):i=t[0];let a;t[1]!==n||t[2]!==e?(a=n?(0,$.jsx)(Ye,{...e}):null,t[1]=n,t[2]=e,t[3]=a):a=t[3];let o;t[4]===a?o=t[5]:(o=(0,$.jsx)(Ie,{side:`right`,align:`start`,className:`w-[min(640px,calc(100vw-32px))]`,viewportClassName:`p-0`,children:(0,$.jsx)(`div`,{className:`flex h-[min(520px,75vh)] min-h-0 flex-col`,"aria-label":`Project live preview`,children:a})}),t[4]=a,t[5]=o);let s;return t[6]!==n||t[7]!==o?(s=(0,$.jsx)(`div`,{className:`phone:hidden`,children:(0,$.jsxs)(Ee,{open:n,onOpenChange:r,children:[i,o]})}),t[6]=n,t[7]=o,t[8]=s):s=t[8],s}var zn={repository:`Group by repository`,repository_path:`Group by repository path`,separate:`Keep separate`};function Bn(e,t){return t<=1?e.name:e.environmentLabel?`${e.environmentLabel} — ${e.cwd}`:e.cwd}function Vn(e){switch(e){case`repository`:return`Projects from the same repository share one sidebar row.`;case`repository_path`:return`Projects group only when both the repository and repo-relative path match.`;case`separate`:return`Every project path gets its own sidebar row.`}}function Hn(e){switch(e){case`github`:return`GitHub`;case`gitlab`:return`GitLab`;case`forgejo`:return`Forgejo`;case`azure-devops`:return`Azure DevOps`;case`bitbucket`:return`Bitbucket`;default:return`Remote`}}function Un(e){switch(e){case`github`:return G;case`gitlab`:return Ne;case`forgejo`:return Y;case`azure-devops`:return ie;case`bitbucket`:return xe;default:return ke}}function Wn(e){return e.replace(/\/+$/g,``).replace(/\.git$/i,``)}function Gn(e,t){if(e!==`ssh.dev.azure.com`)return null;let n=t.indexOf(`v3`);if(n===-1||t.length<n+4)return null;let r=t[n+1],i=t[n+2],a=t[n+3];return!r||!i||!a?null:`https://dev.azure.com/${r}/${i}/_git/${a}`}function Kn(e){let t=e.trim();if(t.length===0)return null;if(/^https?:\/\//i.test(t))try{let e=new URL(t);return e.pathname=Wn(e.pathname),e.search=``,e.hash=``,e.toString()}catch{return null}if(/^(?:ssh|git):\/\//i.test(t))try{let e=new URL(t),n=Wn(e.pathname).split(`/`).filter(e=>e.length>0),r=Gn(e.hostname,n);if(r)return r;let i=n.join(`/`);return e.hostname&&i?`https://${e.hostname}/${i}`:null}catch{return null}let n=/^git@([^:/\s]+)[:/]([^#?\s]+)$/i.exec(t);if(n?.[1]&&n[2]){let e=n[1],t=Wn(n[2]);return Gn(e,t.split(`/`).filter(e=>e.length>0))||`https://${e}/${t}`}return null}function qn(e,t){if(!e)return null;let n=(()=>{if(t){let n=(e.remotes??[]).find(e=>e.name===t);if(n)return{url:n.url,label:n.ownerRepo??n.url,provider:n.provider??void 0}}return{url:e.locator.remoteUrl,label:e.displayName??e.canonicalKey,provider:e.provider??void 0}})(),r=Kn(n.url);return r?{url:r,label:n.label,provider:n.provider,providerLabel:Hn(n.provider)}:null}function Jn(e){let t=(0,Z.c)(7),{memberThreadCountByPhysicalKey:n,jiraProjectOpenUrlByProjectKey:r}=e,i=Qn,o;t[0]===r?o=t[1]:(o=e=>{let t=r.get(a(s(e.environmentId,e.id)))??null;if(!t){v.add({type:`warning`,title:`No Jira project link available`});return}let n=P();if(!n){v.add({type:`error`,title:`Link opening is unavailable.`});return}n.shell.openExternal(t).catch(Zn)},t[0]=r,t[1]=o);let c=o,l=Xn,u;t[2]===n?u=t[3]:(u=async e=>{let t=P();if(!t)return;let r=s(e.environmentId,e.id);if((n.get(e.physicalProjectKey)??0)>0){let n=v.add(X({type:`warning`,title:`Project is not empty`,description:`Delete all threads in this project before removing it.`,actionVariant:`destructive`,actionProps:{children:`Delete anyway`,onClick:()=>{(async()=>{v.close(n),await new Promise(Yn);let i=ne(_.getState(),[r]);await t.dialogs.confirm(i.length>0?[`Remove project "${e.name}" and delete its ${i.length} thread${i.length===1?``:`s`}?`,`Path: ${e.cwd}`,...e.environmentLabel?[`Environment: ${e.environmentLabel}`]:[],`This permanently clears conversation history for those threads.`,`This removes only this project entry.`,`This action cannot be undone.`].join(`
2
- `):[`Remove project "${e.name}"?`,`Path: ${e.cwd}`,...e.environmentLabel?[`Environment: ${e.environmentLabel}`]:[],`This removes only this project entry.`].join(`
3
- `))&&await l(e,{force:!0})})().catch(t=>{let n=t instanceof Error?t.message:`Unknown error removing project.`;console.error(`Failed to remove project`,{projectId:e.id,environmentId:e.environmentId,error:t}),v.add(X({type:`error`,title:`Failed to remove "${e.name}"`,description:n}))})}}}));return}let i=[`Remove project "${e.name}"?`,`Path: ${e.cwd}`,...e.environmentLabel?[`Environment: ${e.environmentLabel}`]:[],`This removes only this project entry.`].join(`
4
- `);if(await t.dialogs.confirm(i))try{await l(e)}catch(t){let n=t,r=n instanceof Error?n.message:`Unknown error removing project.`;console.error(`Failed to remove project`,{projectId:e.id,environmentId:e.environmentId,error:n}),v.add(X({type:`error`,title:`Failed to remove "${e.name}"`,description:r}))}},t[2]=n,t[3]=u);let d=u,f;return t[4]!==d||t[5]!==c?(f={openProjectRemoteLink:i,openProjectJiraLink:c,removeProject:l,handleRemoveProject:d},t[4]=d,t[5]=c,t[6]=f):f=t[6],f}function Yn(e){window.setTimeout(e,180)}async function Xn(e,t){let n=t===void 0?{}:t,r=s(e.environmentId,e.id),i=D.getState(),a=i.getDraftThreadByProjectRef(r);a&&i.clearDraftThread(a.draftId),i.clearProjectDraftThreadId(r);let o=d(e.environmentId);if(!o)throw Error(`Project API unavailable.`);await o.orchestration.dispatchCommand({type:`project.delete`,commandId:T(),projectId:e.id,...n.force===!0?{force:!0}:{}})}function Zn(e){v.add(X({type:`error`,title:`Unable to open Jira project`,description:e instanceof Error?e.message:`An error occurred.`}))}function Qn(e){let t=qn(e.repositoryIdentity,e.preferredRemoteName);if(!t){v.add({type:`warning`,title:`No remote link available`});return}let n=P();if(!n){v.add({type:`error`,title:`Link opening is unavailable.`});return}n.shell.openExternal(t.url).catch($n)}function $n(e){v.add(X({type:`error`,title:`Unable to open remote repository`,description:e instanceof Error?e.message:`An error occurred.`}))}function er(e){let t=(0,Z.c)(18),{project:n,jiraProjectOpenUrlByProjectKey:r,suppressProjectClickForContextMenuRef:i,onOpenOverview:o,openProjectSettingsDialog:c,openProjectRemoteLink:l,openProjectJiraLink:u,openProjectRenameDialog:d,openProjectGroupingDialog:f,copyPathToClipboard:p,handleRemoveProject:m}=e,h;t[0]!==p||t[1]!==m||t[2]!==r||t[3]!==o||t[4]!==f||t[5]!==u||t[6]!==l||t[7]!==d||t[8]!==c||t[9]!==n.groupedProjectCount||t[10]!==n.memberProjects?(h=e=>{(async()=>{let t=P();if(!t)return;let i=new Map;i.set(`project-overview`,()=>{o()});let h=(e,t,r)=>{let a=`${e}:${t.physicalProjectKey}`;return i.set(a,()=>{switch(e){case`settings`:c(t);return;case`open-remote`:l(t);return;case`open-jira`:u(t);return;case`rename`:d(t);return;case`grouping`:f(t);return;case`copy-path`:p(t.cwd,{path:t.cwd});return;case`delete`:return m(t)}}),{id:a,label:Bn(t,n.groupedProjectCount),...r?.destructive?{destructive:!0}:{},...r?.disabled?{disabled:!0}:{}}},g=(e,t,r)=>{if(n.memberProjects.length===1){let i=n.memberProjects[0];return{...h(e,i,{...r?.destructive?{destructive:!0}:{},...r?.isDisabled?.(i)?{disabled:!0}:{}}),label:t}}return{id:`${e}:submenu`,label:t,children:n.memberProjects.map(t=>h(e,t,{...r?.destructive?{destructive:!0}:{},...r?.isDisabled?.(t)?{disabled:!0}:{}}))}},_=n.memberProjects.some(nr),v=n.memberProjects.some(e=>r.has(a(s(e.environmentId,e.id)))),y=[{id:`project-overview`,label:`Project overview`},g(`settings`,`Project settings`),..._?[g(`open-remote`,`Open remote`,{isDisabled:tr})]:[],...v?[g(`open-jira`,`Open Jira project`,{isDisabled:e=>!r.has(a(s(e.environmentId,e.id)))})]:[],g(`rename`,`Rename project`),g(`grouping`,`Project grouping…`),g(`copy-path`,`Copy Project Path`),g(`delete`,`Remove project`,{destructive:!0})],b=await t.contextMenu.show(y,e);b&&await i.get(b)?.()})()},t[0]=p,t[1]=m,t[2]=r,t[3]=o,t[4]=f,t[5]=u,t[6]=l,t[7]=d,t[8]=c,t[9]=n.groupedProjectCount,t[10]=n.memberProjects,t[11]=h):h=t[11];let g=h,_;t[12]!==g||t[13]!==i?(_=e=>{e.preventDefault(),i.current=!0,g({x:e.clientX,y:e.clientY})},t[12]=g,t[13]=i,t[14]=_):_=t[14];let v=_,y;return t[15]!==v||t[16]!==g?(y={handleProjectButtonContextMenu:v,openProjectMenu:g},t[15]=v,t[16]=g,t[17]=y):y=t[17],y}function tr(e){return qn(e.repositoryIdentity,e.preferredRemoteName)===null}function nr(e){return qn(e.repositoryIdentity,e.preferredRemoteName)!==null}function rr(e){let t=(0,Z.c)(3),n;return t[0]!==e.cwd||t[1]!==e.environmentId?(n=(0,$.jsx)(J,{environmentId:e.environmentId,cwd:e.cwd,title:`Actions`,description:`Recent GitHub Actions workflow runs grouped by pull request or branch.`,groupRunsBySource:!0}),t[0]=e.cwd,t[1]=e.environmentId,t[2]=n):n=t[2],n}var ir=20,ar=5;function or(e,t=ir){return e>=t?`${t}+`:String(e)}function sr(e){let t=(0,Z.c)(113),n;t[0]!==e.cwd||t[1]!==e.environmentId?(n={environmentId:e.environmentId,cwd:e.cwd,state:`open`,limit:ir},t[0]=e.cwd,t[1]=e.environmentId,t[2]=n):n=t[2];let r=ue(n),i;t[3]!==e.cwd||t[4]!==e.environmentId?(i={environmentId:e.environmentId,cwd:e.cwd,state:`open`,limit:ir},t[3]=e.cwd,t[4]=e.environmentId,t[5]=i):i=t[5];let a=ce(i),o;t[6]!==e.cwd||t[7]!==e.environmentId?(o={environmentId:e.environmentId,cwd:e.cwd,limit:ir},t[6]=e.cwd,t[7]=e.environmentId,t[8]=o):o=t[8];let s=he(o),c=e.environmentId!==null&&e.projectId!==null,l;t[9]!==e.environmentId||t[10]!==e.projectId||t[11]!==c?(l={environmentId:e.environmentId,projectId:e.projectId,enabled:c},t[9]=e.environmentId,t[10]=e.projectId,t[11]=c,t[12]=l):l=t[12];let u=Se(l),d=u.data?.jiraConnectionId!==null&&u.data?.jiraConnectionId!==void 0&&u.data.jiraProjectKeys.length>0,f;t[13]!==d||t[14]!==e.environmentId||t[15]!==e.projectId?(f={environmentId:e.environmentId,projectId:e.projectId,state:`open`,limit:ir,enabled:d},t[13]=d,t[14]=e.environmentId,t[15]=e.projectId,t[16]=f):f=t[16];let p=ye(f),m;t[17]===r.data?m=t[18]:(m=r.data??[],t[17]=r.data,t[18]=m);let h=m,g;t[19]===a.data?g=t[20]:(g=a.data??[],t[19]=a.data,t[20]=g);let _=g,v;t[21]===s.data?.runs?v=t[22]:(v=s.data?.runs??[],t[21]=s.data?.runs,t[22]=v);let y=v,b;t[23]===p.data?b=t[24]:(b=p.data??[],t[23]=p.data,t[24]=b);let x=b,S;t[25]!==e.cwd||t[26]!==e.environmentId?(S=(0,$.jsx)(`div`,{className:`px-4 pt-3`,children:(0,$.jsx)(Rn,{environmentId:e.environmentId,cwd:e.cwd})}),t[25]=e.cwd,t[26]=e.environmentId,t[27]=S):S=t[27];let C;t[28]===h.length?C=t[29]:(C=or(h.length),t[28]=h.length,t[29]=C);let w;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(je,{className:`size-3.5`}),t[30]=w):w=t[30];let T;t[31]===e?T=t[32]:(T=()=>e.onOpenTab(`issues`),t[31]=e,t[32]=T);let E;t[33]!==C||t[34]!==T?(E=(0,$.jsx)(fr,{label:`Open issues`,value:C,icon:w,accentClassName:`border-emerald-500/18 bg-emerald-500/8 text-emerald-600 dark:text-emerald-300`,onClick:T}),t[33]=C,t[34]=T,t[35]=E):E=t[35];let D;t[36]===_.length?D=t[37]:(D=or(_.length),t[36]=_.length,t[37]=D);let ee;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(Ke,{className:`size-3.5`}),t[38]=ee):ee=t[38];let O;t[39]===e?O=t[40]:(O=()=>e.onOpenTab(`prs`),t[39]=e,t[40]=O);let k;t[41]!==D||t[42]!==O?(k=(0,$.jsx)(fr,{label:`Open pull requests`,value:D,icon:ee,accentClassName:`border-emerald-500/18 bg-emerald-500/8 text-emerald-600 dark:text-emerald-300`,onClick:O}),t[41]=D,t[42]=O,t[43]=k):k=t[43];let A;t[44]===y.length?A=t[45]:(A=or(y.length),t[44]=y.length,t[45]=A);let j;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(ge,{className:`size-3.5`}),t[46]=j):j=t[46];let M;t[47]===e?M=t[48]:(M=()=>e.onOpenTab(`actions`),t[47]=e,t[48]=M);let te;t[49]!==A||t[50]!==M?(te=(0,$.jsx)(fr,{label:`Actions`,value:A,icon:j,accentClassName:`border-amber-500/18 bg-amber-500/8 text-amber-600 dark:text-amber-300`,onClick:M}),t[49]=A,t[50]=M,t[51]=te):te=t[51];let N;t[52]!==d||t[53]!==x?(N=d?or(x.length):`Not linked`,t[52]=d,t[53]=x,t[54]=N):N=t[54];let P;t[55]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,$.jsx)(pe,{className:`size-3.5`}),t[55]=P):P=t[55];let F;t[56]===e?F=t[57]:(F=()=>e.onOpenTab(`workItems`),t[56]=e,t[57]=F);let I;t[58]!==N||t[59]!==F?(I=(0,$.jsx)(fr,{label:`Open Jira`,value:N,icon:P,accentClassName:`border-violet-500/18 bg-violet-500/8 text-violet-600 dark:text-violet-300`,onClick:F}),t[58]=N,t[59]=F,t[60]=I):I=t[60];let ne;t[61]!==E||t[62]!==k||t[63]!==te||t[64]!==I?(ne=(0,$.jsxs)(`div`,{className:`grid gap-3 p-4 sm:grid-cols-2 xl:grid-cols-4`,children:[E,k,te,I]}),t[61]=E,t[62]=k,t[63]=te,t[64]=I,t[65]=ne):ne=t[65];let L;t[66]===h.length?L=t[67]:(L=or(h.length),t[66]=h.length,t[67]=L);let re=r.error,ie=r.isLoading,ae;t[68]===h?ae=t[69]:(ae=h.slice(0,ar),t[68]=h,t[69]=ae);let z;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(je,{className:`size-4`}),t[70]=z):z=t[70];let B;t[71]===e?B=t[72]:(B=()=>e.onOpenTab(`issues`),t[71]=e,t[72]=B);let se;t[73]===e?se=t[74]:(se=t=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full min-w-0 items-center gap-2 rounded-sm px-2 py-1.5 text-left hover:bg-accent/50 focus-visible:bg-accent/60 focus-visible:outline-none`,onClick:()=>e.onSelectIssue(t),children:[(0,$.jsxs)(`span`,{className:`shrink-0 text-muted-foreground text-xs`,children:[`#`,t.number]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:t.title}),(0,$.jsx)(`span`,{className:`shrink-0 text-[11px] text-muted-foreground`,children:t.state})]}),t[73]=e,t[74]=se);let H;t[75]!==r.error||t[76]!==r.isLoading||t[77]!==L||t[78]!==ae||t[79]!==B||t[80]!==se?(H=(0,$.jsx)(pr,{title:`Issues`,description:`Open source-control issues for this repository.`,countLabel:L,emptyText:`No open issues.`,error:re,isLoading:ie,items:ae,icon:z,accentClassName:`text-emerald-600 dark:text-emerald-300`,onOpenTab:B,keyForItem:ur,renderItem:se}),t[75]=r.error,t[76]=r.isLoading,t[77]=L,t[78]=ae,t[79]=B,t[80]=se,t[81]=H):H=t[81];let U;t[82]===_.length?U=t[83]:(U=or(_.length),t[82]=_.length,t[83]=U);let le=a.error,de=a.isLoading,fe;t[84]===_?fe=t[85]:(fe=_.slice(0,ar),t[84]=_,t[85]=fe);let me;t[86]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,$.jsx)(Ke,{className:`size-4`}),t[86]=me):me=t[86];let W;t[87]===e?W=t[88]:(W=()=>e.onOpenTab(`prs`),t[87]=e,t[88]=W);let _e;t[89]===e?_e=t[90]:(_e=t=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full min-w-0 items-center gap-2 rounded-sm px-2 py-1.5 text-left hover:bg-accent/50 focus-visible:bg-accent/60 focus-visible:outline-none`,onClick:()=>e.onSelectChangeRequest(t),children:[(0,$.jsxs)(`span`,{className:`shrink-0 text-muted-foreground text-xs`,children:[`#`,t.number]}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm`,children:t.title}),(0,$.jsx)(V,{kind:oe(t.state,t.isDraft),className:`shrink-0`})]}),t[89]=e,t[90]=_e);let ve;t[91]!==a.error||t[92]!==a.isLoading||t[93]!==U||t[94]!==fe||t[95]!==W||t[96]!==_e?(ve=(0,$.jsx)(pr,{title:`Pull requests`,description:`Open pull requests and review work for this repository.`,countLabel:U,emptyText:`No open pull requests.`,error:le,isLoading:de,items:fe,icon:me,accentClassName:`text-emerald-600 dark:text-emerald-300`,onOpenTab:W,keyForItem:lr,renderItem:_e}),t[91]=a.error,t[92]=a.isLoading,t[93]=U,t[94]=fe,t[95]=W,t[96]=_e,t[97]=ve):ve=t[97];let G;t[98]!==d||t[99]!==u.isLoading||t[100]!==e||t[101]!==p.error||t[102]!==p.isLoading||t[103]!==x?(G=d||u.isLoading?(0,$.jsx)(pr,{title:`Jira`,description:`Open Jira work items linked to this project.`,countLabel:u.isLoading?`...`:or(x.length),emptyText:`No open Jira work items.`,error:p.error,isLoading:u.isLoading||p.isLoading,items:x.slice(0,ar),icon:(0,$.jsx)(pe,{className:`size-4`}),accentClassName:`text-violet-600 dark:text-violet-300`,onOpenTab:()=>e.onOpenTab(`workItems`),keyForItem:cr,renderItem:t=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full min-w-0 items-start gap-2 rounded-sm px-2 py-1.5 text-left hover:bg-accent/50 focus-visible:bg-accent/60 focus-visible:outline-none`,onClick:()=>e.onSelectWorkItem(t),children:[(0,$.jsx)(`span`,{className:`mt-0.5 shrink-0 text-muted-foreground text-xs`,children:t.key}),(0,$.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`span`,{className:`block truncate text-sm`,children:t.title}),(0,$.jsxs)(`span`,{className:`mt-0.5 flex flex-wrap items-center gap-1.5 text-[11px] text-muted-foreground`,children:[t.issueType?(0,$.jsx)(`span`,{children:t.issueType}):null,t.assignee?(0,$.jsx)(`span`,{children:t.assignee}):null,t.priorityDetail??t.priority?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,$.jsx)(dr,{priority:t.priorityDetail??t.priority}),t.priority]}):null]})]}),(0,$.jsx)(`span`,{className:`mt-0.5 shrink-0 text-[11px] text-muted-foreground`,children:Le(t)})]})}):(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-4 px-4 py-4`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,$.jsx)(pe,{className:`mt-0.5 size-4 shrink-0`}),(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`h3`,{className:`font-medium text-sm`,children:`Jira is not linked to this project`}),(0,$.jsx)(`p`,{className:`mt-1 text-muted-foreground text-xs`,children:`Select the Jira tab to choose the connection and project key.`})]})]}),(0,$.jsx)(R,{type:`button`,variant:`outline`,size:`sm`,className:`h-7 shrink-0`,onClick:()=>e.onOpenTab(`workItems`),children:`Configure`})]}),t[98]=d,t[99]=u.isLoading,t[100]=e,t[101]=p.error,t[102]=p.isLoading,t[103]=x,t[104]=G):G=t[104];let K;t[105]!==H||t[106]!==ve||t[107]!==G?(K=(0,$.jsxs)(`div`,{className:`divide-y divide-border/60 border-border/60 border-t`,children:[H,ve,G]}),t[105]=H,t[106]=ve,t[107]=G,t[108]=K):K=t[108];let be;return t[109]!==S||t[110]!==ne||t[111]!==K?(be=(0,$.jsxs)(`div`,{className:`h-full min-h-0 overflow-y-auto`,children:[S,ne,K]}),t[109]=S,t[110]=ne,t[111]=K,t[112]=be):be=t[112],be}function cr(e){return`${e.provider}:${e.key}`}function lr(e){return`${e.provider}:${e.number}`}function ur(e){return`${e.provider}:${e.number}`}function dr(e){let t=(0,Z.c)(3),n=typeof e.priority==`string`?void 0:e.priority?.iconUrl;if(n){let e;return t[0]===n?e=t[1]:(e=(0,$.jsx)(`img`,{src:n,alt:``,className:`size-3`,loading:`lazy`,decoding:`async`}),t[0]=n,t[1]=e),e}let r;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(K,{className:`size-3`}),t[2]=r):r=t[2],r}function fr(e){let t=(0,Z.c)(16),n;t[0]===e.accentClassName?n=t[1]:(n=w(`flex min-w-0 items-center gap-3 rounded-md border px-3 py-2 text-left transition-colors hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,e.accentClassName),t[0]=e.accentClassName,t[1]=n);let r;t[2]===e.icon?r=t[3]:(r=(0,$.jsx)(`span`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md bg-background/70`,children:e.icon}),t[2]=e.icon,t[3]=r);let i;t[4]===e.value?i=t[5]:(i=(0,$.jsx)(`span`,{className:`block truncate font-semibold text-base leading-5`,children:e.value}),t[4]=e.value,t[5]=i);let a;t[6]===e.label?a=t[7]:(a=(0,$.jsx)(`span`,{className:`block truncate text-[11px] text-muted-foreground`,children:e.label}),t[6]=e.label,t[7]=a);let o;t[8]!==i||t[9]!==a?(o=(0,$.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[i,a]}),t[8]=i,t[9]=a,t[10]=o):o=t[10];let s;return t[11]!==e.onClick||t[12]!==n||t[13]!==r||t[14]!==o?(s=(0,$.jsxs)(`button`,{type:`button`,className:n,onClick:e.onClick,children:[r,o]}),t[11]=e.onClick,t[12]=n,t[13]=r,t[14]=o,t[15]=s):s=t[15],s}function pr(e){let t=(0,Z.c)(30),n;t[0]===e.accentClassName?n=t[1]:(n=w(`mt-0.5 shrink-0`,e.accentClassName),t[0]=e.accentClassName,t[1]=n);let r;t[2]!==e.icon||t[3]!==n?(r=(0,$.jsx)(`span`,{className:n,children:e.icon}),t[2]=e.icon,t[3]=n,t[4]=r):r=t[4];let i;t[5]===e.title?i=t[6]:(i=(0,$.jsx)(`h3`,{className:`font-medium text-sm`,children:e.title}),t[5]=e.title,t[6]=i);let a;t[7]===e.countLabel?a=t[8]:(a=(0,$.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:e.countLabel}),t[7]=e.countLabel,t[8]=a);let o;t[9]!==i||t[10]!==a?(o=(0,$.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[i,a]}),t[9]=i,t[10]=a,t[11]=o):o=t[11];let s;t[12]===e.description?s=t[13]:(s=(0,$.jsx)(`p`,{className:`mt-0.5 text-muted-foreground text-xs`,children:e.description}),t[12]=e.description,t[13]=s);let c;t[14]!==o||t[15]!==s?(c=(0,$.jsxs)(`div`,{className:`min-w-0`,children:[o,s]}),t[14]=o,t[15]=s,t[16]=c):c=t[16];let l;t[17]!==r||t[18]!==c?(l=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2.5`,children:[r,c]}),t[17]=r,t[18]=c,t[19]=l):l=t[19];let u;t[20]===e.onOpenTab?u=t[21]:(u=(0,$.jsx)(R,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 shrink-0 px-2 text-xs`,onClick:e.onOpenTab,children:`View all`}),t[20]=e.onOpenTab,t[21]=u);let d;t[22]!==l||t[23]!==u?(d=(0,$.jsxs)(`header`,{className:`mb-2 flex items-start justify-between gap-3`,children:[l,u]}),t[22]=l,t[23]=u,t[24]=d):d=t[24];let f;t[25]===e?f=t[26]:(f=e.error?(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-md border border-destructive/20 bg-destructive/5 px-3 py-2 text-destructive text-xs`,children:[(0,$.jsx)(I,{className:`mt-0.5 size-3.5 shrink-0`}),(0,$.jsx)(`span`,{children:e.error instanceof Error?e.error.message:`Failed to load.`})]}):e.isLoading&&e.items.length===0?(0,$.jsx)(`p`,{className:`px-2 py-4 text-muted-foreground text-sm`,children:`Loading...`}):e.items.length===0?(0,$.jsx)(`p`,{className:`px-2 py-4 text-muted-foreground text-sm`,children:e.emptyText}):(0,$.jsx)(`div`,{className:`grid gap-1`,children:e.items.map(t=>(0,$.jsx)(`div`,{children:e.renderItem(t)},e.keyForItem(t)))}),t[25]=e,t[26]=f);let p;return t[27]!==f||t[28]!==d?(p=(0,$.jsxs)(`section`,{className:`px-4 py-4`,children:[d,f]}),t[27]=f,t[28]=d,t[29]=p):p=t[29],p}function mr(e){let t=(0,Z.c)(76),[n,r]=(0,Q.useState)(e.initialTab),[i,a]=(0,Q.useState)(``),[o,s]=(0,Q.useState)(``),[c,l]=(0,Q.useState)(``),[u,d]=(0,Q.useState)(`open`),[f,p]=(0,Q.useState)(`open`),[m,h]=(0,Q.useState)(`open`),[g,_]=(0,Q.useState)(null),v;t[0]===e.memberProjects[0]?.physicalProjectKey?v=t[1]:(v=()=>e.memberProjects[0]?.physicalProjectKey??``,t[0]=e.memberProjects[0]?.physicalProjectKey,t[1]=v);let[y,b]=(0,Q.useState)(v),x=(0,Q.useRef)(null),S=(0,Q.useRef)(null),C=(0,Q.useRef)(null),w=(0,Q.useRef)(e.open),T=(0,Q.useRef)(e.initialTab),E;t[2]===e.memberProjects?E=t[3]:(E=e.memberProjects.map(gr),t[2]=e.memberProjects,t[3]=E);let D=E,ee;t[4]===D?ee=t[5]:(ee=D.join(`\0`),t[4]=D,t[5]=ee);let O=ee,k=D[0]??``,A;t[6]!==e.memberProjects||t[7]!==y?(A=e.memberProjects.find(e=>e.physicalProjectKey===y)??e.memberProjects[0]??null,t[6]=e.memberProjects,t[7]=y,t[8]=A):A=t[8];let j=A,M,te;t[9]===e.open?(M=t[10],te=t[11]):(M=()=>{e.open||_(null)},te=[e.open],t[9]=e.open,t[10]=M,t[11]=te),(0,Q.useEffect)(M,te);let N,P;t[12]!==k||t[13]!==D||t[14]!==e.initialTab||t[15]!==e.open?(N=()=>{let t=w.current,n=T.current;w.current=e.open,T.current=e.initialTab,e.open&&(!t||e.initialTab!==n)&&(r(e.initialTab),_(null),b(e=>D.includes(e)?e:k))},P=[k,D,e.initialTab,e.open],t[12]=k,t[13]=D,t[14]=e.initialTab,t[15]=e.open,t[16]=N,t[17]=P):(N=t[16],P=t[17]),(0,Q.useEffect)(N,P);let F;t[18]!==k||t[19]!==D||t[20]!==e.open?(F=()=>{e.open&&b(e=>D.includes(e)?e:k)},t[18]=k,t[19]=D,t[20]=e.open,t[21]=F):F=t[21];let I;t[22]!==k||t[23]!==O||t[24]!==D||t[25]!==e.open?(I=[k,O,D,e.open],t[22]=k,t[23]=O,t[24]=D,t[25]=e.open,t[26]=I):I=t[26],(0,Q.useEffect)(F,I);let ne,L;t[27]!==n||t[28]!==e.open||t[29]!==g?(ne=()=>{if(!e.open||g!==null)return;let t=window.requestAnimationFrame(()=>{(n===`issues`?x.current:n===`prs`?S.current:n===`workItems`?C.current:null)?.focus()});return()=>window.cancelAnimationFrame(t)},L=[e.open,n,g],t[27]=n,t[28]=e.open,t[29]=g,t[30]=ne,t[31]=L):(ne=t[30],L=t[31]),(0,Q.useEffect)(ne,L);let re;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>{_({kind:`issue`,number:e.number})},t[32]=re):re=t[32];let R=re,ie;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(ie=e=>{_({kind:`pr`,number:e.number})},t[33]=ie):ie=t[33];let ae=ie,V;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>{_({kind:`workItem`,key:e.key})},t[34]=V):V=t[34];let oe=V,ce;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(ce=e=>{r(`issues`),_({kind:`issue`,number:e})},t[35]=ce):ce=t[35];let H=ce,U;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(U=e=>{r(`prs`),_({kind:`pr`,number:e})},t[36]=U):U=t[36];let ue=U,de;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(de=e=>{r(`workItems`),_({kind:`workItem`,key:e})},t[37]=de):de=t[37];let fe=de,pe;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(pe=()=>_(null),t[38]=pe):pe=t[38];let he=pe,W;t[39]===n?W=t[40]:(W=e=>{if(!Qe({currentTarget:e.currentTarget,target:e.target})&&!$e(e.target)){if(et(e,`1`)){e.preventDefault(),r(`issues`),_(null);return}if(et(e,`2`)){e.preventDefault(),r(`prs`),_(null);return}if(et(e,`3`)){e.preventDefault(),r(`actions`),_(null);return}if((e.metaKey||e.ctrlKey)&&e.key===`4`){e.preventDefault(),r(`workItems`),_(null);return}e.key===`/`&&nt(e)&&(e.preventDefault(),(n===`issues`?x.current:n===`prs`?S.current:n===`workItems`?C.current:null)?.focus())}},t[39]=n,t[40]=W);let ge=W,_e;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(_e={id:`overview`,label:`Overview`},t[41]=_e):_e=t[41];let ve;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(ve={id:`issues`,label:`Issues`},t[42]=ve):ve=t[42];let G;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(G={id:`prs`,label:`Pull requests`},t[43]=G):G=t[43];let K;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(K={id:`actions`,label:`Actions`},t[44]=K):K=t[44];let ye;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(ye=[_e,ve,G,K,{id:`workItems`,label:`Jira`}],t[45]=ye):ye=t[45];let be=ye,xe=n===`overview`?`Overview`:n===`issues`?`Issues`:n===`prs`?`Pull requests`:n===`actions`?`Actions`:`Jira`,Se=`${e.projectName} · ${xe}`,Ce=e.memberProjects.length>1&&j!==null,q=j?.environmentId??null,J=j?.cwd??null,Te;t[46]===Se?Te=t[47]:(Te=(0,$.jsx)(B,{className:`truncate text-base`,children:Se}),t[46]=Se,t[47]=Te);let Ee;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(Ee=(0,$.jsx)(`span`,{className:`shrink-0 text-muted-foreground text-xs pointer-coarse:hidden`,children:`⌘1 issues · ⌘2 PRs · ⌘3 Actions · ⌘4 Jira · / focus search · Esc close`}),t[48]=Ee):Ee=t[48];let ke;t[49]===Te?ke=t[50]:(ke=(0,$.jsxs)(`header`,{className:`flex items-center justify-between border-border/60 border-b py-3 pl-5 pr-14`,children:[Te,Ee]}),t[49]=Te,t[50]=ke);let Ae;t[51]!==e.memberProjects||t[52]!==y||t[53]!==Ce?(Ae=Ce?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 border-border/60 border-b px-5 py-2`,children:[(0,$.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:`Repository`}),(0,$.jsxs)(Ue,{value:y,onValueChange:e=>{typeof e==`string`&&b(e)},children:[(0,$.jsx)(Ge,{size:`sm`,className:`min-w-56`,children:(0,$.jsx)(He,{placeholder:`Select a repository`})}),(0,$.jsx)(We,{children:e.memberProjects.map(hr)})]})]}):null,t[51]=e.memberProjects,t[52]=y,t[53]=Ce,t[54]=Ae):Ae=t[54];let je;t[55]!==n||t[56]!==J||t[57]!==q||t[58]!==i||t[59]!==u||t[60]!==o||t[61]!==f||t[62]!==j?.id||t[63]!==g||t[64]!==c||t[65]!==m?(je=g===null?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(se,{tabs:be,activeId:n,onSelect:e=>r(e)}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1`,children:n===`overview`?(0,$.jsx)(sr,{environmentId:q,cwd:J,projectId:j?.id??null,onOpenTab:r,onSelectIssue:R,onSelectChangeRequest:ae,onSelectWorkItem:oe}):n===`issues`?(0,$.jsx)(Me,{environmentId:q,cwd:J,searchInputRef:x,query:i,onQueryChange:a,stateFilter:u,onStateFilterChange:d,onSelect:R}):n===`prs`?(0,$.jsx)(Oe,{environmentId:q,cwd:J,searchInputRef:S,query:o,onQueryChange:s,stateFilter:f,onStateFilterChange:p,onSelect:ae}):n===`actions`?(0,$.jsx)(rr,{environmentId:q,cwd:J}):(0,$.jsx)(De,{environmentId:q,cwd:J,projectId:j?.id??null,searchInputRef:C,query:c,onQueryChange:l,stateFilter:m,onStateFilterChange:h,onSelect:oe})})]}):g.kind===`issue`?(0,$.jsx)(me,{environmentId:q,cwd:J,issueNumber:g.number,onBack:he,onSelectLinkedChangeRequest:ue}):g.kind===`pr`?(0,$.jsx)(le,{environmentId:q,cwd:J,pullRequestNumber:g.number,onBack:he,onSelectLinkedIssue:H,onSelectLinkedWorkItem:fe,onSelectPullRequest:ue}):(0,$.jsx)(ze,{environmentId:q,projectId:j?.id??null,cwd:J,workItemKey:g.key,onBack:he,onSelectLinkedChangeRequest:ue}),t[55]=n,t[56]=J,t[57]=q,t[58]=i,t[59]=u,t[60]=o,t[61]=f,t[62]=j?.id,t[63]=g,t[64]=c,t[65]=m,t[66]=je):je=t[66];let Y;t[67]!==ge||t[68]!==ke||t[69]!==Ae||t[70]!==je?(Y=(0,$.jsxs)(z,{className:`project-glass-surface flex h-[88vh] max-h-[1060px] w-[90vw] max-w-[1340px] flex-col p-0 phone:h-[100dvh] phone:w-screen`,onKeyDown:ge,surface:`glass`,children:[ke,Ae,je]}),t[67]=ge,t[68]=ke,t[69]=Ae,t[70]=je,t[71]=Y):Y=t[71];let Ne;return t[72]!==e.onOpenChange||t[73]!==e.open||t[74]!==Y?(Ne=(0,$.jsx)(we,{open:e.open,onOpenChange:e.onOpenChange,children:Y}),t[72]=e.onOpenChange,t[73]=e.open,t[74]=Y,t[75]=Ne):Ne=t[75],Ne}function hr(e){return(0,$.jsx)(Ve,{value:e.physicalProjectKey,children:(0,$.jsxs)(`span`,{className:`truncate`,children:[e.name,e.environmentLabel?(0,$.jsxs)(`span`,{className:`ml-1 text-muted-foreground`,children:[`· `,e.environmentLabel]}):null]})},e.physicalProjectKey)}function gr(e){return e.physicalProjectKey}function _r(e){switch(e){case`github`:return G;case`gitlab`:return Ne;case`forgejo`:return Y;case`azure-devops`:return ie;case`bitbucket`:return xe;default:return ke}}var vr=[{id:`general`,label:`General`,Icon:lt},{id:`location`,label:`Location`,Icon:Je},{id:`atlassian`,label:`Atlassian`,Icon:dt},{id:`ai`,label:`AI`,Icon:qe}];function yr(e){let t=e.target.repositoryIdentity?.remotes??[],n=e.target.repositoryIdentity?.locator.remoteName??null,r=e.preferredRemoteName&&t.some(t=>t.name===e.preferredRemoteName)?e.preferredRemoteName:null,[i,a]=(0,Q.useState)(!1),o=(0,Q.useRef)(null),s=()=>{e.projectAvatarUploadUnavailableReason||o.current?.click()},c=async t=>{a(!0);try{await e.onUploadAvatar(t)}finally{a(!1)}};return(0,$.jsxs)(`div`,{className:`space-y-6`,children:[(0,$.jsxs)(`section`,{className:`flex items-start gap-4`,children:[(0,$.jsxs)(`div`,{className:`relative flex size-24 shrink-0 items-center justify-center overflow-hidden rounded-xl border border-border/70 bg-secondary text-muted-foreground shadow-xs`,children:[(0,$.jsx)(W,{environmentId:e.target.environmentId,cwd:e.target.cwd,projectId:e.target.id,customAvatarContentHash:e.customAvatarContentHash,fillContainer:!0}),i?(0,$.jsx)(`div`,{className:`absolute inset-0 grid place-items-center bg-background/60 text-xs`,children:`…`}):null]}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Project image`}),(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:e.projectAvatarUploadUnavailableReason?e.projectAvatarUploadUnavailableReason:e.customAvatarContentHash?`PNG, JPG, or WebP · up to 2 MB`:`Using auto-detected favicon · upload to override`}),(0,$.jsxs)(`div`,{className:`flex gap-2 pt-1`,children:[(0,$.jsx)(R,{size:`xs`,variant:`outline`,onClick:s,disabled:i||e.projectAvatarUploadUnavailableReason!==null,title:e.projectAvatarUploadUnavailableReason??void 0,children:`Upload`}),(0,$.jsx)(R,{size:`xs`,variant:`ghost`,onClick:()=>void e.onRemoveAvatar(),disabled:!e.customAvatarContentHash||i,children:`Remove`})]}),(0,$.jsx)(`input`,{ref:o,type:`file`,accept:`image/png,image/jpeg,image/webp`,className:`hidden`,disabled:e.projectAvatarUploadUnavailableReason!==null,onChange:e=>{let t=e.target.files?.[0];t&&c(t),e.target.value=``}})]})]}),(0,$.jsxs)(`section`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{htmlFor:`project-display-name`,className:`text-xs font-medium text-foreground`,children:`Display name`}),(0,$.jsx)(Xe,{id:`project-display-name`,"aria-label":`Project display name`,value:e.title,onChange:t=>e.onTitleChange(t.target.value)})]}),t.length>0?(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Linked repositories`}),t.length>1?(0,$.jsxs)(`span`,{className:`text-[11px] text-muted-foreground`,children:[t.length,` remotes`]}):null]}),t.length>1?(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`Pick which remote the sidebar "Open remote" uses.`}):null,(0,$.jsxs)(`div`,{className:`overflow-hidden rounded-lg border border-border/70`,children:[t.length>1?(0,$.jsxs)(`button`,{type:`button`,onClick:()=>e.onPreferredRemoteChange(null),className:w(`flex w-full items-center gap-3 border-b border-border/70 px-3 py-2 text-left`,r===null&&`bg-accent/50`),children:[(0,$.jsx)(`span`,{className:w(`grid size-4 shrink-0 place-items-center rounded-full border`,r===null?`border-foreground`:`border-muted-foreground/40`),"aria-hidden":`true`,children:r===null?(0,$.jsx)(`span`,{className:`size-2 rounded-full bg-foreground`}):null}),(0,$.jsxs)(`span`,{className:`text-xs`,children:[`Auto-detect`,n?` (currently: ${n})`:``]})]}):null,t.map((i,a)=>{let o=r===i.name||r===null&&i.name===n&&t.length===1,s=_r(i.provider??void 0);return(0,$.jsxs)(`div`,{className:w(`flex items-center gap-3 px-3 py-2`,a>0||t.length>1?`border-t border-border/70`:``,o&&`bg-accent/50`),children:[t.length>1?(0,$.jsx)(`button`,{type:`button`,onClick:()=>e.onPreferredRemoteChange(i.name),className:`shrink-0`,"aria-label":`Use ${i.name} as primary`,children:(0,$.jsx)(`span`,{className:w(`grid size-4 place-items-center rounded-full border`,o?`border-foreground`:`border-muted-foreground/40`),children:o?(0,$.jsx)(`span`,{className:`size-2 rounded-full bg-foreground`}):null})}):null,(0,$.jsx)(s,{className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`text-xs font-medium`,children:i.name}),o&&t.length>1?(0,$.jsx)(`span`,{className:`rounded bg-muted px-1.5 py-0.5 text-[10px] text-muted-foreground`,children:`primary`}):null]}),(0,$.jsx)(`div`,{className:`truncate font-mono text-[11px] text-muted-foreground`,children:i.ownerRepo??i.url})]}),(0,$.jsxs)(R,{size:`xs`,variant:`ghost`,onClick:()=>e.onOpenRemote(e.target,i.name),children:[(0,$.jsx)(Te,{className:`size-3.5`}),`Open`]})]},i.name)})]})]}):null]})}function br(e){let t=(0,Z.c)(23),n=`~/.ryco/worktrees/${e.projectId}/`,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`label`,{htmlFor:`project-root`,className:`text-xs font-medium text-foreground`,children:`Project root`}),i=(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`The absolute path the project is anchored to.`}),t[0]=r,t[1]=i):(r=t[0],i=t[1]);let a,o;t[2]===e?(a=t[3],o=t[4]):(a=t=>e.onWorkspaceRootChange(t.target.value),o=t=>{t.key===`Enter`&&(t.preventDefault(),e.onSave())},t[2]=e,t[3]=a,t[4]=o);let s;t[5]!==e.workspaceRoot||t[6]!==a||t[7]!==o?(s=(0,$.jsx)(Xe,{id:`project-root`,"aria-label":`Project root`,value:e.workspaceRoot,onChange:a,onKeyDown:o}),t[5]=e.workspaceRoot,t[6]=a,t[7]=o,t[8]=s):s=t[8];let c;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Je,{className:`size-4`}),t[9]=c):c=t[9];let l;t[10]===e.onPickWorkspaceRoot?l=t[11]:(l=(0,$.jsxs)(R,{variant:`outline`,onClick:e.onPickWorkspaceRoot,children:[c,`Browse`]}),t[10]=e.onPickWorkspaceRoot,t[11]=l);let u;t[12]!==s||t[13]!==l?(u=(0,$.jsxs)(`section`,{className:`space-y-1.5`,children:[r,i,(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[s,l]})]}),t[12]=s,t[13]=l,t[14]=u):u=t[14];let d;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Worktrees location`}),t[15]=d):d=t[15];let f;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`span`,{className:`font-mono`,children:`<branch>__<word>`}),t[16]=f):f=t[16];let p;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsxs)(`p`,{className:`text-[11px] text-muted-foreground`,children:[`New worktrees for this project are created here. Each one is named`,` `,f,`, where`,` `,(0,$.jsx)(`span`,{className:`font-mono`,children:`<word>`}),` is a random 5-letter suffix that disambiguates multiple checkouts of the same branch.`]}),t[17]=p):p=t[17];let m;t[18]===n?m=t[19]:(m=(0,$.jsxs)(`section`,{className:`space-y-1.5`,children:[d,p,(0,$.jsx)(`div`,{className:`rounded-md border border-dashed border-border/70 bg-muted/20 px-3 py-2`,children:(0,$.jsx)(`div`,{className:`truncate font-mono text-xs`,children:n})})]}),t[18]=n,t[19]=m);let h;return t[20]!==m||t[21]!==u?(h=(0,$.jsxs)(`div`,{className:`space-y-6`,children:[u,m]}),t[20]=m,t[21]=u,t[22]=h):h=t[22],h}var xr=`__none__`;function Sr(e){return e.models.find(e=>!e.isCustom)?.slug??e.models[0]?.slug??l[e.driverKind]??`gpt-5.6-terra`}function Cr(e){let t=(0,Z.c)(35),n=o(),r=O(),i;t[0]===e.target.environmentId?i=t[1]:(i=t=>e.target.environmentId?t.byId[e.target.environmentId]:null,t[0]=e.target.environmentId,t[1]=i);let a=k(i),s=n&&e.target.environmentId===n?r:a?.serverConfig??r;s?.providers;let c;t[2]===s?.providers?c=t[3]:(c=u(E(s?.providers??[])).filter(Dr),t[2]=s?.providers,t[3]=c);let l=c,d=e.defaultModelSelection,f;t[4]!==l||t[5]!==d?(f=d?l.find(e=>e.instanceId===d.instanceId):void 0,t[4]=l,t[5]=d,t[6]=f):f=t[6];let p=f,m;bb0:{if(!p){let e;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[7]=e):e=t[7],m=e;break bb0}let e;t[8]!==p.models||t[9]!==d?(e=p.models.map(Er),d&&!e.some(e=>e.slug===d.model)&&e.push({slug:d.model,label:d.model}),t[8]=p.models,t[9]=d,t[10]=e):e=t[10],m=e}let h=m,g=d?.instanceId??xr,_;t[11]!==l||t[12]!==e||t[13]!==d?.instanceId?(_=t=>{if(!t||t===xr){e.onDefaultModelSelectionChange(null);return}if(t===d?.instanceId)return;let n=l.find(e=>e.instanceId===t);n&&e.onDefaultModelSelectionChange(A(n.instanceId,Sr(n)))},t[11]=l,t[12]=e,t[13]=d?.instanceId,t[14]=_):_=t[14];let v=p?.displayName??(d?d.instanceId:`No project default`),y;t[15]===v?y=t[16]:(y=(0,$.jsx)(Ge,{"aria-label":`Default agent`,className:`w-full`,children:(0,$.jsx)(He,{children:v})}),t[15]=v,t[16]=y);let b;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(Ve,{value:xr,children:`No project default`}),t[17]=b):b=t[17];let x;t[18]===l?x=t[19]:(x=l.map(Tr),t[18]=l,t[19]=x);let S;t[20]===x?S=t[21]:(S=(0,$.jsxs)(We,{children:[b,x]}),t[20]=x,t[21]=S);let C;t[22]!==S||t[23]!==g||t[24]!==_||t[25]!==y?(C=(0,$.jsx)(Br,{label:`Default agent`,children:(0,$.jsxs)(Ue,{value:g,onValueChange:_,children:[y,S]})}),t[22]=S,t[23]=g,t[24]=_,t[25]=y,t[26]=C):C=t[26];let w;t[27]!==h||t[28]!==e||t[29]!==d?(w=d?(0,$.jsx)(Br,{label:`Default model`,children:(0,$.jsxs)(Ue,{value:d.model,onValueChange:t=>{t&&t!==d.model&&e.onDefaultModelSelectionChange(A(d.instanceId,t))},children:[(0,$.jsx)(Ge,{"aria-label":`Default model`,className:`w-full`,children:(0,$.jsx)(He,{children:h.find(e=>e.slug===d.model)?.label??d.model})}),(0,$.jsx)(We,{children:h.map(wr)})]})}):null,t[27]=h,t[28]=e,t[29]=d,t[30]=w):w=t[30];let T;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`New threads on this project start with this agent and model. Existing threads and per-thread selections are not affected.`}),t[31]=T):T=t[31];let D;return t[32]!==C||t[33]!==w?(D=(0,$.jsxs)(`div`,{className:`grid gap-4`,children:[C,w,T]}),t[32]=C,t[33]=w,t[34]=D):D=t[34],D}function wr(e){return(0,$.jsx)(Ve,{value:e.slug,children:e.label},e.slug)}function Tr(e){return(0,$.jsx)(Ve,{value:e.instanceId,children:e.displayName},e.instanceId)}function Er(e){return{slug:e.slug,label:e.name}}function Dr(e){return e.enabled&&e.isAvailable}function Or(e){let t=(0,Z.c)(22),n=e.customSystemPrompt.length,r=Math.floor(c*.9),i=n>=2e4?`text-destructive`:n>=r?`text-amber-600 dark:text-amber-400`:`text-muted-foreground`,a;t[0]!==e.defaultModelSelection||t[1]!==e.onDefaultModelSelectionChange||t[2]!==e.target?(a=(0,$.jsx)(Cr,{target:e.target,defaultModelSelection:e.defaultModelSelection,onDefaultModelSelectionChange:e.onDefaultModelSelectionChange}),t[0]=e.defaultModelSelection,t[1]=e.onDefaultModelSelectionChange,t[2]=e.target,t[3]=a):a=t[3];let o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`label`,{htmlFor:`project-custom-system-prompt`,className:`text-xs font-medium text-foreground`,children:`Custom system prompt`}),s=(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`Appended to every assistant prompt for this project.`}),t[4]=o,t[5]=s):(o=t[4],s=t[5]);let l;t[6]===e?l=t[7]:(l=t=>e.onCustomSystemPromptChange(t.target.value),t[6]=e,t[7]=l);let u;t[8]!==e.customSystemPrompt||t[9]!==l?(u=(0,$.jsx)(Pe,{id:`project-custom-system-prompt`,"aria-label":`Custom system prompt`,value:e.customSystemPrompt,maxLength:c,placeholder:`Always use TypeScript.`,className:`min-h-32 resize-y pr-20`,onChange:l}),t[8]=e.customSystemPrompt,t[9]=l,t[10]=u):u=t[10];let d;t[11]===i?d=t[12]:(d=w(`pointer-events-none absolute bottom-2 right-3 text-[11px]`,i),t[11]=i,t[12]=d);let f;t[13]!==n||t[14]!==d?(f=(0,$.jsxs)(`span`,{className:d,children:[n,` / `,c]}),t[13]=n,t[14]=d,t[15]=f):f=t[15];let p;t[16]!==u||t[17]!==f?(p=(0,$.jsxs)(`div`,{className:`space-y-2`,children:[o,s,(0,$.jsxs)(`div`,{className:`relative`,children:[u,f]})]}),t[16]=u,t[17]=f,t[18]=p):p=t[18];let m;return t[19]!==a||t[20]!==p?(m=(0,$.jsxs)(`div`,{className:`space-y-6`,children:[a,p]}),t[19]=a,t[20]=p,t[21]=m):m=t[21],m}var kr=`Not configured`;function Ar(e){return e??kr}function jr(e){return e===kr||e.trim().length===0?null:e}function Mr(e){return e.split(/[,\s]+/u).map(e=>e.trim().toUpperCase()).filter(Boolean)}function Nr(e){return e?.provider?.toLowerCase()===`bitbucket`?{workspace:e.owner??``,repoSlug:e.name??``}:{workspace:``,repoSlug:``}}function Pr(e){return t=>t.status===`connected`&&t.products.includes(e)}function Fr(e){let t=(0,Z.c)(186),n=e.target,r=h(),i;t[0]===n?i=t[1]:(i=n?te(n.environmentId):null,t[0]=n,t[1]=i);let a=i?.client??null,[o,s]=(0,Q.useState)(kr),[c,l]=(0,Q.useState)(kr),[u,d]=(0,Q.useState)(``),[f,p]=(0,Q.useState)(``),[m,g]=(0,Q.useState)(``),[_,b]=(0,Q.useState)(``),[x,S]=(0,Q.useState)(`{issueKey}-{titleSlug}`),[C,w]=(0,Q.useState)(`{issueKey}: {summary}`),[T,E]=(0,Q.useState)(`{issueKey}: {summary}`),[D,ee]=(0,Q.useState)(!0),[O,k]=(0,Q.useState)(!0),A=(0,Q.useRef)(!1),j=(0,Q.useRef)(null),M=n?.environmentId??null,N=n?.id??null,P=a!==null&&n!==null,F;t[2]!==M||t[3]!==N||t[4]!==P?(F={environmentId:M,projectId:N,enabled:P},t[2]=M,t[3]=N,t[4]=P,t[5]=F):F=t[5];let I=Se(F),ne=n?.environmentId??null,L=a!==null,re;t[6]!==ne||t[7]!==L?(re={environmentId:ne,enabled:L},t[6]=ne,t[7]=L,t[8]=re):re=t[8];let ie=Ae(re),ae;t[9]===ie.data?ae=t[10]:(ae=(ie.data??[]).filter(Pr(`jira`)),t[9]=ie.data,t[10]=ae);let z=ae,B;t[11]===ie.data?B=t[12]:(B=(ie.data??[]).filter(Pr(`bitbucket`)),t[11]=ie.data,t[12]=B);let V=B,oe;t[13]!==V[0]?.connectionId||t[14]!==z[0]?.connectionId||t[15]!==I.data||t[16]!==n?(oe=()=>{if(!n)return;let e=`${n.environmentId}:${n.id}`;if(j.current!==e&&(j.current=e,A.current=!1),A.current)return;let t=I.data,r=Nr(n.repositoryIdentity);s(Ar(t?.jiraConnectionId??z[0]?.connectionId)),l(Ar(t?.bitbucketConnectionId??V[0]?.connectionId)),d(t?.jiraProjectKeys.join(`, `)??``),p(t?.bitbucketWorkspace??r.workspace),g(t?.bitbucketRepoSlug??r.repoSlug),b(t?.defaultIssueTypeName??``),S(t?.branchNameTemplate??`{issueKey}-{titleSlug}`),w(t?.commitMessageTemplate??`{issueKey}: {summary}`),E(t?.pullRequestTitleTemplate??`{issueKey}: {summary}`),ee(t?.smartLinkingEnabled??!0),k(t?.autoAttachWorkItems??!0)},t[13]=V[0]?.connectionId,t[14]=z[0]?.connectionId,t[15]=I.data,t[16]=n,t[17]=oe):oe=t[17];let se;t[18]!==V||t[19]!==z||t[20]!==I.data||t[21]!==n?(se=[V,z,I.data,n],t[18]=V,t[19]=z,t[20]=I.data,t[21]=n,t[22]=se):se=t[22],(0,Q.useEffect)(oe,se);let ce;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(ce=()=>{A.current=!0},t[23]=ce):ce=t[23];let H=ce,U;t[24]!==r||t[25]!==n?.environmentId||t[26]!==n?.id?(U=()=>{_e({environmentId:n?.environmentId??null}),Re({environmentId:n?.environmentId??null,projectId:n?.id??null}),r.invalidateQueries({queryKey:[`atlassian`]}),r.invalidateQueries({queryKey:[`workItems`]})},t[24]=r,t[25]=n?.environmentId,t[26]=n?.id,t[27]=U):U=t[27];let le=U,ue;t[28]!==O||t[29]!==c||t[30]!==m||t[31]!==f||t[32]!==x||t[33]!==a||t[34]!==C||t[35]!==_||t[36]!==o||t[37]!==u||t[38]!==I.data?.jiraCloudId||t[39]!==T||t[40]!==D||t[41]!==n?(ue=async()=>{if(!a||!n)throw Error(`Project connection is unavailable.`);let e=x.trim(),t=C.trim(),r=T.trim();if(!e||!t||!r)throw Error(`Branch, commit, and pull request templates cannot be empty.`);return a.atlassian.saveProjectLink({projectId:n.id,jiraConnectionId:jr(o),bitbucketConnectionId:jr(c),jiraCloudId:I.data?.jiraCloudId??null,jiraSiteUrl:null,jiraProjectKeys:Mr(u),bitbucketWorkspace:f.trim()||null,bitbucketRepoSlug:m.trim()||null,defaultIssueTypeName:_.trim()||null,branchNameTemplate:e,commitMessageTemplate:t,pullRequestTitleTemplate:r,smartLinkingEnabled:D,autoAttachWorkItems:O})},t[28]=O,t[29]=c,t[30]=m,t[31]=f,t[32]=x,t[33]=a,t[34]=C,t[35]=_,t[36]=o,t[37]=u,t[38]=I.data?.jiraCloudId,t[39]=T,t[40]=D,t[41]=n,t[42]=ue):ue=t[42];let de;t[43]===le?de=t[44]:(de=()=>{A.current=!1,le(),v.add(X({type:`success`,title:`Atlassian project settings saved`,description:`Jira and Bitbucket defaults were updated for this project.`}))},t[43]=le,t[44]=de);let fe;t[45]!==ue||t[46]!==de?(fe={mutationFn:ue,onSuccess:de,onError:zr},t[45]=ue,t[46]=de,t[47]=fe):fe=t[47];let pe=y(fe),me;t[48]!==a||t[49]!==I.data||t[50]!==n?(me=async()=>{if(!a||!n)throw Error(`Project connection is unavailable.`);return a.atlassian.saveProjectLink(ve({projectId:n.id,existing:I.data??null}))},t[48]=a,t[49]=I.data,t[50]=n,t[51]=me):me=t[51];let he;t[52]===le?he=t[53]:(he=()=>{A.current=!1,s(kr),d(``),le(),v.add(X({type:`success`,title:`Jira project unlinked`,description:`Bitbucket mapping and project templates were left unchanged.`}))},t[52]=le,t[53]=he);let W;t[54]!==me||t[55]!==he?(W={mutationFn:me,onSuccess:he,onError:Rr},t[54]=me,t[55]=he,t[56]=W):W=t[56];let ge=y(W),G=I.isLoading||ie.isLoading,K=a===null||n===null||pe.isPending||ge.isPending,ye=I.data?.jiraConnectionId!==null&&I.data?.jiraConnectionId!==void 0&&I.data.jiraProjectKeys.length>0,be;t[57]===o?be=t[58]:(be=jr(o),t[57]=o,t[58]=be);let xe=be,q;if(t[59]!==z||t[60]!==xe){let e;t[62]===xe?e=t[63]:(e=e=>e.connectionId===xe,t[62]=xe,t[63]=e),q=z.find(e),t[59]=z,t[60]=xe,t[61]=q}else q=t[61];let J=q?.baseUrl??I.data?.jiraSiteUrl??``,we;t[64]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,$.jsx)(dt,{className:`size-4 shrink-0 text-muted-foreground`}),t[64]=we):we=t[64];let Te;t[65]===Symbol.for(`react.memo_cache_sentinel`)?(Te=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[we,(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`div`,{className:`truncate text-xs font-medium text-foreground`,children:`Atlassian workflow`}),(0,$.jsx)(`p`,{className:`mt-1 text-[11px] text-muted-foreground`,children:`Project-scoped Jira, Bitbucket, and smart-link defaults.`})]})]}),t[65]=Te):Te=t[65];let Ee;t[66]===G?Ee=t[67]:(Ee=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[Te,G?(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Loading`}):(0,$.jsx)(`span`,{className:`rounded bg-background px-1.5 py-0.5 text-[10px] text-muted-foreground`,children:`Project defaults`})]}),t[66]=G,t[67]=Ee);let De;t[68]===Symbol.for(`react.memo_cache_sentinel`)?(De=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Connections`}),t[68]=De):De=t[68];let Oe;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(Oe=(0,$.jsx)(`label`,{className:`text-xs font-medium text-foreground`,children:`Jira connection`}),t[69]=Oe):Oe=t[69];let ke;t[70]===Symbol.for(`react.memo_cache_sentinel`)?(ke=e=>{typeof e==`string`&&(H(),s(e))},t[70]=ke):ke=t[70];let je;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(je=(0,$.jsx)(He,{placeholder:`Select Jira connection`}),t[71]=je):je=t[71];let Y;t[72]===K?Y=t[73]:(Y=(0,$.jsx)(Ge,{size:`sm`,disabled:K,children:je}),t[72]=K,t[73]=Y);let Me;t[74]===Symbol.for(`react.memo_cache_sentinel`)?(Me=(0,$.jsx)(Ve,{value:kr,children:`Not configured`}),t[74]=Me):Me=t[74];let Ne;t[75]===z?Ne=t[76]:(Ne=z.map(Lr),t[75]=z,t[76]=Ne);let Pe;t[77]===Ne?Pe=t[78]:(Pe=(0,$.jsxs)(We,{children:[Me,Ne]}),t[77]=Ne,t[78]=Pe);let Ie;t[79]!==o||t[80]!==Y||t[81]!==Pe?(Ie=(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[Oe,(0,$.jsxs)(Ue,{value:o,onValueChange:ke,children:[Y,Pe]})]}),t[79]=o,t[80]=Y,t[81]=Pe,t[82]=Ie):Ie=t[82];let Le;t[83]===Symbol.for(`react.memo_cache_sentinel`)?(Le=(0,$.jsx)(`label`,{className:`text-xs font-medium text-foreground`,children:`Bitbucket connection`}),t[83]=Le):Le=t[83];let ze;t[84]===Symbol.for(`react.memo_cache_sentinel`)?(ze=e=>{typeof e==`string`&&(H(),l(e))},t[84]=ze):ze=t[84];let Be;t[85]===Symbol.for(`react.memo_cache_sentinel`)?(Be=(0,$.jsx)(He,{placeholder:`Select Bitbucket connection`}),t[85]=Be):Be=t[85];let Ke;t[86]===K?Ke=t[87]:(Ke=(0,$.jsx)(Ge,{size:`sm`,disabled:K,children:Be}),t[86]=K,t[87]=Ke);let qe;t[88]===Symbol.for(`react.memo_cache_sentinel`)?(qe=(0,$.jsx)(Ve,{value:kr,children:`Not configured`}),t[88]=qe):qe=t[88];let Je;t[89]===V?Je=t[90]:(Je=V.map(Ir),t[89]=V,t[90]=Je);let Ye;t[91]===Je?Ye=t[92]:(Ye=(0,$.jsxs)(We,{children:[qe,Je]}),t[91]=Je,t[92]=Ye);let Ze;t[93]!==c||t[94]!==Ke||t[95]!==Ye?(Ze=(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[Le,(0,$.jsxs)(Ue,{value:c,onValueChange:ze,children:[Ke,Ye]})]}),t[93]=c,t[94]=Ke,t[95]=Ye,t[96]=Ze):Ze=t[96];let Qe;t[97]!==Ie||t[98]!==Ze?(Qe=(0,$.jsxs)(`section`,{className:`space-y-3`,children:[De,(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[Ie,Ze]})]}),t[97]=Ie,t[98]=Ze,t[99]=Qe):Qe=t[99];let $e;t[100]===Symbol.for(`react.memo_cache_sentinel`)?($e=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Repository mapping`}),t[100]=$e):$e=t[100];let et=n?.environmentId??null,tt;t[101]===Symbol.for(`react.memo_cache_sentinel`)?(tt=e=>{H(),d(e)},t[101]=tt):tt=t[101];let nt;t[102]!==K||t[103]!==u||t[104]!==xe||t[105]!==J||t[106]!==et?(nt=(0,$.jsx)(Ce,{environmentId:et,connectionId:xe,siteUrl:J,projectKeys:u,disabled:K,onProjectKeysChange:tt}),t[102]=K,t[103]=u,t[104]=xe,t[105]=J,t[106]=et,t[107]=nt):nt=t[107];let rt;t[108]===Symbol.for(`react.memo_cache_sentinel`)?(rt=e=>{H(),d(e.currentTarget.value)},t[108]=rt):rt=t[108];let it;t[109]!==K||t[110]!==u?(it=(0,$.jsx)(Xe,{size:`sm`,value:u,disabled:K,placeholder:`WEB, API`,onChange:rt}),t[109]=K,t[110]=u,t[111]=it):it=t[111];let at;t[112]!==nt||t[113]!==it?(at=(0,$.jsxs)(Br,{label:`Jira project keys`,children:[nt,it]}),t[112]=nt,t[113]=it,t[114]=at):at=t[114];let ot;t[115]===Symbol.for(`react.memo_cache_sentinel`)?(ot=e=>{H(),p(e.currentTarget.value)},t[115]=ot):ot=t[115];let st;t[116]!==f||t[117]!==K?(st=(0,$.jsx)(Br,{label:`Bitbucket workspace`,children:(0,$.jsx)(Xe,{size:`sm`,value:f,disabled:K,placeholder:`workspace`,onChange:ot})}),t[116]=f,t[117]=K,t[118]=st):st=t[118];let ct;t[119]===Symbol.for(`react.memo_cache_sentinel`)?(ct=e=>{H(),g(e.currentTarget.value)},t[119]=ct):ct=t[119];let lt;t[120]!==m||t[121]!==K?(lt=(0,$.jsx)(Br,{label:`Bitbucket repo slug`,children:(0,$.jsx)(Xe,{size:`sm`,value:m,disabled:K,placeholder:`repo-slug`,onChange:ct})}),t[120]=m,t[121]=K,t[122]=lt):lt=t[122];let ut;t[123]!==at||t[124]!==st||t[125]!==lt?(ut=(0,$.jsxs)(`section`,{className:`space-y-3`,children:[$e,(0,$.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:[at,st,lt]})]}),t[123]=at,t[124]=st,t[125]=lt,t[126]=ut):ut=t[126];let ft;t[127]===Symbol.for(`react.memo_cache_sentinel`)?(ft=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Templates`}),t[127]=ft):ft=t[127];let pt;t[128]===Symbol.for(`react.memo_cache_sentinel`)?(pt=e=>{H(),b(e.currentTarget.value)},t[128]=pt):pt=t[128];let mt;t[129]!==_||t[130]!==K?(mt=(0,$.jsx)(Br,{label:`Default issue type`,children:(0,$.jsx)(Xe,{size:`sm`,value:_,disabled:K,placeholder:`Task`,onChange:pt})}),t[129]=_,t[130]=K,t[131]=mt):mt=t[131];let ht;t[132]===Symbol.for(`react.memo_cache_sentinel`)?(ht=e=>{H(),S(e.currentTarget.value)},t[132]=ht):ht=t[132];let gt;t[133]!==x||t[134]!==K?(gt=(0,$.jsx)(Br,{label:`Branch template`,children:(0,$.jsx)(Xe,{size:`sm`,value:x,disabled:K,onChange:ht})}),t[133]=x,t[134]=K,t[135]=gt):gt=t[135];let _t;t[136]===Symbol.for(`react.memo_cache_sentinel`)?(_t=e=>{H(),w(e.currentTarget.value)},t[136]=_t):_t=t[136];let vt;t[137]!==C||t[138]!==K?(vt=(0,$.jsx)(Br,{label:`Commit template`,children:(0,$.jsx)(Xe,{size:`sm`,value:C,disabled:K,onChange:_t})}),t[137]=C,t[138]=K,t[139]=vt):vt=t[139];let yt;t[140]===Symbol.for(`react.memo_cache_sentinel`)?(yt=e=>{H(),E(e.currentTarget.value)},t[140]=yt):yt=t[140];let bt;t[141]!==K||t[142]!==T?(bt=(0,$.jsx)(Br,{label:`PR title template`,children:(0,$.jsx)(Xe,{size:`sm`,value:T,disabled:K,onChange:yt})}),t[141]=K,t[142]=T,t[143]=bt):bt=t[143];let xt;t[144]!==mt||t[145]!==gt||t[146]!==vt||t[147]!==bt?(xt=(0,$.jsxs)(`section`,{className:`space-y-3`,children:[ft,(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[mt,gt,vt,bt]})]}),t[144]=mt,t[145]=gt,t[146]=vt,t[147]=bt,t[148]=xt):xt=t[148];let St;t[149]===Symbol.for(`react.memo_cache_sentinel`)?(St=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Automation`}),t[149]=St):St=t[149];let Ct;t[150]===Symbol.for(`react.memo_cache_sentinel`)?(Ct=(0,$.jsx)(`span`,{children:`Smart-link Jira keys in branches, commits, and PRs`}),t[150]=Ct):Ct=t[150];let wt;t[151]===Symbol.for(`react.memo_cache_sentinel`)?(wt=e=>{H(),ee(!!e)},t[151]=wt):wt=t[151];let Tt;t[152]!==K||t[153]!==D?(Tt=(0,$.jsxs)(`label`,{className:`flex items-center justify-between gap-3 rounded-md border border-border/70 bg-background/60 px-3 py-2 text-xs`,children:[Ct,(0,$.jsx)(Fe,{checked:D,disabled:K,onCheckedChange:wt})]}),t[152]=K,t[153]=D,t[154]=Tt):Tt=t[154];let Et;t[155]===Symbol.for(`react.memo_cache_sentinel`)?(Et=(0,$.jsx)(`span`,{children:`Attach linked work items to project explorer workflows`}),t[155]=Et):Et=t[155];let Dt;t[156]===Symbol.for(`react.memo_cache_sentinel`)?(Dt=e=>{H(),k(!!e)},t[156]=Dt):Dt=t[156];let Ot;t[157]!==O||t[158]!==K?(Ot=(0,$.jsxs)(`label`,{className:`flex items-center justify-between gap-3 rounded-md border border-border/70 bg-background/60 px-3 py-2 text-xs`,children:[Et,(0,$.jsx)(Fe,{checked:O,disabled:K,onCheckedChange:Dt})]}),t[157]=O,t[158]=K,t[159]=Ot):Ot=t[159];let kt;t[160]!==Tt||t[161]!==Ot?(kt=(0,$.jsxs)(`section`,{className:`space-y-3`,children:[St,(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[Tt,Ot]})]}),t[160]=Tt,t[161]=Ot,t[162]=kt):kt=t[162];let At;t[163]===Symbol.for(`react.memo_cache_sentinel`)?(At=(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`Tokens live in Source Control settings. These defaults belong only to this project.`}),t[163]=At):At=t[163];let jt=K||!ye,Mt;t[164]===ge?Mt=t[165]:(Mt=()=>ge.mutate(),t[164]=ge,t[165]=Mt);let Nt=ge.isPending?`Unlinking...`:`Unlink Jira`,Pt;t[166]!==jt||t[167]!==Mt||t[168]!==Nt?(Pt=(0,$.jsx)(R,{type:`button`,size:`sm`,variant:`destructive-outline`,className:`h-8`,disabled:jt,onClick:Mt,children:Nt}),t[166]=jt,t[167]=Mt,t[168]=Nt,t[169]=Pt):Pt=t[169];let Ft;t[170]===pe?Ft=t[171]:(Ft=()=>pe.mutate(),t[170]=pe,t[171]=Ft);let It=pe.isPending?`Saving...`:`Save Atlassian`,Lt;t[172]!==K||t[173]!==Ft||t[174]!==It?(Lt=(0,$.jsx)(R,{type:`button`,size:`sm`,className:`h-8`,disabled:K,onClick:Ft,children:It}),t[172]=K,t[173]=Ft,t[174]=It,t[175]=Lt):Lt=t[175];let Rt;t[176]!==Pt||t[177]!==Lt?(Rt=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-t border-border/70 pt-4`,children:[At,(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[Pt,Lt]})]}),t[176]=Pt,t[177]=Lt,t[178]=Rt):Rt=t[178];let zt;return t[179]!==Ee||t[180]!==Qe||t[181]!==ut||t[182]!==xt||t[183]!==kt||t[184]!==Rt?(zt=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[Ee,Qe,ut,xt,kt,Rt]}),t[179]=Ee,t[180]=Qe,t[181]=ut,t[182]=xt,t[183]=kt,t[184]=Rt,t[185]=zt):zt=t[185],zt}function Ir(e){return(0,$.jsx)(Ve,{value:e.connectionId,children:e.label},e.connectionId)}function Lr(e){return(0,$.jsx)(Ve,{value:e.connectionId,children:e.label},e.connectionId)}function Rr(e){v.add(X({type:`error`,title:`Could not unlink Jira project`,description:e instanceof Error?e.message:`The project link was not saved.`}))}function zr(e){v.add(X({type:`error`,title:`Could not save Atlassian project settings`,description:e instanceof Error?e.message:`The project link was not saved.`}))}function Br(e){let t=(0,Z.c)(5),n;t[0]===e.label?n=t[1]:(n=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:e.label}),t[0]=e.label,t[1]=n);let r;return t[2]!==e.children||t[3]!==n?(r=(0,$.jsxs)(`label`,{className:`grid gap-1.5`,children:[n,e.children]}),t[2]=e.children,t[3]=n,t[4]=r):r=t[4],r}function Vr(e){let t=(0,Z.c)(59),[n,r]=(0,Q.useState)(`general`),i;t[0]===e.open?i=t[1]:(i=()=>{e.open&&r(`general`)},t[0]=e.open,t[1]=i);let a=e.target?.id,o;t[2]!==e.open||t[3]!==a?(o=[e.open,a],t[2]=e.open,t[3]=a,t[4]=o):o=t[4],(0,Q.useEffect)(i,o);let s=e.target;if(!s)return null;let c=s.environmentLabel?`${s.name} · ${s.environmentLabel}`:s.name,l;t[5]===n?l=t[6]:(l=vr.findIndex(e=>e.id===n),t[5]=n,t[6]=l);let u=Math.max(0,l),d=e.open,f;t[7]===e?f=t[8]:(f=t=>{t||e.onClose()},t[7]=e,t[8]=f);let p;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(B,{className:`text-base font-semibold`,children:`Project settings`}),t[9]=p):p=t[9];let m;t[10]===c?m=t[11]:(m=(0,$.jsx)(`header`,{className:`flex h-14 shrink-0 items-center justify-between border-b border-border px-5`,children:(0,$.jsxs)(`div`,{className:`min-w-0`,children:[p,(0,$.jsx)(`p`,{className:`truncate text-xs text-muted-foreground`,children:c})]})}),t[10]=c,t[11]=m);let h=`translateY(${u*2.5}rem)`,g;t[12]===h?g=t[13]:(g=(0,$.jsx)(`span`,{className:`pointer-events-none absolute top-2 right-2 left-2 z-0 h-9 rounded-md bg-accent transition-transform duration-[240ms] ease-out`,style:{transform:h},"aria-hidden":!0}),t[12]=h,t[13]=g);let _;t[14]===n?_=t[15]:(_=vr.map(e=>{let{id:t,label:i,Icon:a}=e,o=n===t;return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:w(`relative z-10 flex h-9 items-center gap-2.5 rounded-md px-2 text-left text-[13px] outline-hidden ring-ring transition-colors duration-150 focus-visible:ring-2`,o?`font-medium text-foreground`:`text-muted-foreground/70 hover:text-foreground/80`),"aria-current":o?`page`:void 0,children:[(0,$.jsx)(a,{className:w(`size-4 shrink-0`,o?`text-foreground`:`text-muted-foreground/60`)}),(0,$.jsx)(`span`,{className:`hidden truncate sm:inline`,children:i})]},t)}),t[14]=n,t[15]=_);let v;t[16]!==_||t[17]!==g?(v=(0,$.jsxs)(`nav`,{className:`relative isolate flex w-12 shrink-0 flex-col gap-1 border-r border-border p-2 sm:w-48`,children:[g,_]}),t[16]=_,t[17]=g,t[18]=v):v=t[18];let y;t[19]!==e.customAvatarContentHash||t[20]!==e.customSystemPrompt||t[21]!==e.defaultModelSelection||t[22]!==e.onCustomSystemPromptChange||t[23]!==e.onDefaultModelSelectionChange||t[24]!==e.onOpenRemote||t[25]!==e.onPickWorkspaceRoot||t[26]!==e.onPreferredRemoteChange||t[27]!==e.onRemoveAvatar||t[28]!==e.onSave||t[29]!==e.onTitleChange||t[30]!==e.onUploadAvatar||t[31]!==e.onWorkspaceRootChange||t[32]!==e.preferredRemoteName||t[33]!==e.projectAvatarUploadUnavailableReason||t[34]!==e.title||t[35]!==e.workspaceRoot||t[36]!==n||t[37]!==s?(y=(0,$.jsx)(Ze,{className:`min-h-0 flex-1 min-w-0`,children:(0,$.jsx)(`div`,{className:`mx-auto max-w-[520px] px-6 py-6`,children:n===`general`?(0,$.jsx)(yr,{target:s,title:e.title,customAvatarContentHash:e.customAvatarContentHash,projectAvatarUploadUnavailableReason:e.projectAvatarUploadUnavailableReason,preferredRemoteName:e.preferredRemoteName,onTitleChange:e.onTitleChange,onPreferredRemoteChange:e.onPreferredRemoteChange,onUploadAvatar:e.onUploadAvatar,onRemoveAvatar:e.onRemoveAvatar,onOpenRemote:e.onOpenRemote}):n===`location`?(0,$.jsx)(br,{workspaceRoot:e.workspaceRoot,projectId:s.id,onWorkspaceRootChange:e.onWorkspaceRootChange,onPickWorkspaceRoot:e.onPickWorkspaceRoot,onSave:e.onSave}):n===`atlassian`?(0,$.jsx)(Fr,{target:s}):(0,$.jsx)(Or,{target:s,customSystemPrompt:e.customSystemPrompt,defaultModelSelection:e.defaultModelSelection,onCustomSystemPromptChange:e.onCustomSystemPromptChange,onDefaultModelSelectionChange:e.onDefaultModelSelectionChange})})}),t[19]=e.customAvatarContentHash,t[20]=e.customSystemPrompt,t[21]=e.defaultModelSelection,t[22]=e.onCustomSystemPromptChange,t[23]=e.onDefaultModelSelectionChange,t[24]=e.onOpenRemote,t[25]=e.onPickWorkspaceRoot,t[26]=e.onPreferredRemoteChange,t[27]=e.onRemoveAvatar,t[28]=e.onSave,t[29]=e.onTitleChange,t[30]=e.onUploadAvatar,t[31]=e.onWorkspaceRootChange,t[32]=e.preferredRemoteName,t[33]=e.projectAvatarUploadUnavailableReason,t[34]=e.title,t[35]=e.workspaceRoot,t[36]=n,t[37]=s,t[38]=y):y=t[38];let b;t[39]!==v||t[40]!==y?(b=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-row`,children:[v,y]}),t[39]=v,t[40]=y,t[41]=b):b=t[41];let x;t[42]===e.onClose?x=t[43]:(x=(0,$.jsx)(R,{variant:`outline`,onClick:e.onClose,children:`Cancel`}),t[42]=e.onClose,t[43]=x);let S;t[44]!==e.onSave||t[45]!==e.saving||t[46]!==n?(S=n===`atlassian`?null:(0,$.jsx)(R,{onClick:e.onSave,disabled:e.saving,children:e.saving?`Saving…`:`Save changes`}),t[44]=e.onSave,t[45]=e.saving,t[46]=n,t[47]=S):S=t[47];let C;t[48]!==x||t[49]!==S?(C=(0,$.jsxs)(`footer`,{className:`flex shrink-0 items-center justify-end gap-2 border-t border-border px-5 py-3`,children:[x,S]}),t[48]=x,t[49]=S,t[50]=C):C=t[50];let T;t[51]!==b||t[52]!==C||t[53]!==m?(T=(0,$.jsxs)(z,{className:`project-glass-surface h-[min(70vh,620px)] max-w-[760px] overflow-hidden p-0 duration-[320ms] ease-[cubic-bezier(0.16,1,0.3,1)] data-ending-style:translate-y-4 data-starting-style:translate-y-4`,bottomStickOnMobile:!1,showCloseButton:!0,surface:`glass`,children:[m,b,C]}),t[51]=b,t[52]=C,t[53]=m,t[54]=T):T=t[54];let E;return t[55]!==e.open||t[56]!==T||t[57]!==f?(E=(0,$.jsx)(we,{open:d,onOpenChange:f,children:T}),t[55]=e.open,t[56]=T,t[57]=f,t[58]=E):E=t[58],E}function Hr(e){let t=(0,Z.c)(38),{target:n,selection:r,globalGroupingMode:i,onSelectionChange:a,onClose:o,onSave:s}=e,c=n!==null,l;t[0]===o?l=t[1]:(l=e=>{e||o()},t[0]=o,t[1]=l);let u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(B,{children:`Project grouping`}),t[2]=u):u=t[2];let d=n?`Choose how ${n.cwd} should be grouped in the sidebar.`:`Choose how this project should be grouped in the sidebar.`,f;t[3]===d?f=t[4]:(f=(0,$.jsxs)(U,{children:[u,(0,$.jsx)(q,{children:d})]}),t[3]=d,t[4]=f);let p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Grouping rule`}),t[5]=p):p=t[5];let m;t[6]===a?m=t[7]:(m=e=>{(e===`inherit`||e===`repository`||e===`repository_path`||e===`separate`)&&a(e)},t[6]=a,t[7]=m);let h=r===`inherit`?`Use global default (${zn[i]})`:zn[r],g;t[8]===h?g=t[9]:(g=(0,$.jsx)(Ge,{className:`w-full`,"aria-label":`Project grouping rule`,children:(0,$.jsx)(He,{children:h})}),t[8]=h,t[9]=g);let _;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsxs)(We,{align:`end`,alignItemWithTrigger:!1,children:[(0,$.jsx)(Ve,{hideIndicator:!0,value:`inherit`,children:`Use global default`}),(0,$.jsx)(Ve,{hideIndicator:!0,value:`repository`,children:zn.repository}),(0,$.jsx)(Ve,{hideIndicator:!0,value:`repository_path`,children:zn.repository_path}),(0,$.jsx)(Ve,{hideIndicator:!0,value:`separate`,children:zn.separate})]}),t[10]=_):_=t[10];let v;t[11]!==r||t[12]!==m||t[13]!==g?(v=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[p,(0,$.jsxs)(Ue,{value:r,onValueChange:m,children:[g,_]})]}),t[11]=r,t[12]=m,t[13]=g,t[14]=v):v=t[14];let y;t[15]!==i||t[16]!==r?(y=Vn(r===`inherit`?i:r),t[15]=i,t[16]=r,t[17]=y):y=t[17];let b;t[18]===y?b=t[19]:(b=(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:y}),t[18]=y,t[19]=b);let x;t[20]!==v||t[21]!==b?(x=(0,$.jsxs)(de,{className:`space-y-4`,children:[v,b]}),t[20]=v,t[21]=b,t[22]=x):x=t[22];let S;t[23]===o?S=t[24]:(S=(0,$.jsx)(R,{variant:`outline`,onClick:o,children:`Cancel`}),t[23]=o,t[24]=S);let C;t[25]===s?C=t[26]:(C=(0,$.jsx)(R,{onClick:s,children:`Save`}),t[25]=s,t[26]=C);let w;t[27]!==S||t[28]!==C?(w=(0,$.jsxs)(H,{children:[S,C]}),t[27]=S,t[28]=C,t[29]=w):w=t[29];let T;t[30]!==x||t[31]!==w||t[32]!==f?(T=(0,$.jsxs)(z,{className:`project-glass-surface max-w-lg`,surface:`glass`,children:[f,x,w]}),t[30]=x,t[31]=w,t[32]=f,t[33]=T):T=t[33];let E;return t[34]!==c||t[35]!==l||t[36]!==T?(E=(0,$.jsx)(we,{open:c,onOpenChange:l,children:T}),t[34]=c,t[35]=l,t[36]=T,t[37]=E):E=t[37],E}function Ur(e){let t=(0,Z.c)(34),{target:n,title:r,onTitleChange:i,onClose:a,onSubmit:o}=e,s=n!==null,c;t[0]===a?c=t[1]:(c=e=>{e||a()},t[0]=a,t[1]=c);let l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(B,{children:`Rename project`}),t[2]=l):l=t[2];let u=n?`Update the title for ${n.cwd}.`:`Update the project title.`,d;t[3]===u?d=t[4]:(d=(0,$.jsxs)(U,{children:[l,(0,$.jsx)(q,{children:u})]}),t[3]=u,t[4]=d);let f;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Project title`}),t[5]=f):f=t[5];let p;t[6]===i?p=t[7]:(p=e=>i(e.target.value),t[6]=i,t[7]=p);let m;t[8]===o?m=t[9]:(m=e=>{e.key===`Enter`&&nt(e)&&(e.preventDefault(),o())},t[8]=o,t[9]=m);let h;t[10]!==p||t[11]!==m||t[12]!==r?(h=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[f,(0,$.jsx)(Xe,{"aria-label":`Project title`,value:r,onChange:p,onKeyDown:m})]}),t[10]=p,t[11]=m,t[12]=r,t[13]=h):h=t[13];let g;t[14]===n?g=t[15]:(g=n?.environmentLabel?(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Environment: `,n.environmentLabel]}):null,t[14]=n,t[15]=g);let _;t[16]!==h||t[17]!==g?(_=(0,$.jsxs)(de,{className:`space-y-4`,children:[h,g]}),t[16]=h,t[17]=g,t[18]=_):_=t[18];let v;t[19]===a?v=t[20]:(v=(0,$.jsx)(R,{variant:`outline`,onClick:a,children:`Cancel`}),t[19]=a,t[20]=v);let y;t[21]===o?y=t[22]:(y=(0,$.jsx)(R,{onClick:o,children:`Save`}),t[21]=o,t[22]=y);let b;t[23]!==v||t[24]!==y?(b=(0,$.jsxs)(H,{children:[v,y]}),t[23]=v,t[24]=y,t[25]=b):b=t[25];let x;t[26]!==_||t[27]!==b||t[28]!==d?(x=(0,$.jsxs)(z,{className:`project-glass-surface max-w-lg`,surface:`glass`,children:[d,_,b]}),t[26]=_,t[27]=b,t[28]=d,t[29]=x):x=t[29];let S;return t[30]!==s||t[31]!==c||t[32]!==x?(S=(0,$.jsx)(we,{open:s,onOpenChange:c,children:x}),t[30]=s,t[31]=c,t[32]=x,t[33]=S):S=t[33],S}function Wr(e){let t=(0,Z.c)(13),{projectGroupingSettings:n,updateSettings:r}=e,[i,a]=(0,Q.useState)(null),[o,s]=(0,Q.useState)(`inherit`),c;t[0]===n.sidebarProjectGroupingOverrides?c=t[1]:(c=e=>{let t=S(e);a(e),s(n.sidebarProjectGroupingOverrides?.[t]??`inherit`)},t[0]=n.sidebarProjectGroupingOverrides,t[1]=c);let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>{a(null),s(`inherit`)},t[2]=u):u=t[2];let d=u,f;t[3]!==o||t[4]!==n.sidebarProjectGroupingOverrides||t[5]!==i||t[6]!==r?(f=()=>{if(!i)return;let e=S(i),t={...n.sidebarProjectGroupingOverrides};o===`inherit`?delete t[e]:t[e]=o,r({sidebarProjectGroupingOverrides:t}),d()},t[3]=o,t[4]=n.sidebarProjectGroupingOverrides,t[5]=i,t[6]=r,t[7]=f):f=t[7];let p=f,m;return t[8]!==l||t[9]!==o||t[10]!==i||t[11]!==p?(m={projectGroupingTarget:i,projectGroupingSelection:o,setProjectGroupingSelection:s,openProjectGroupingDialog:l,closeProjectGroupingDialog:d,saveProjectGroupingPreference:p},t[8]=l,t[9]=o,t[10]=i,t[11]=p,t[12]=m):m=t[12],m}function Gr(){let e=(0,Z.c)(9),[t,n]=(0,Q.useState)(null),[r,i]=(0,Q.useState)(``),a;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=e=>{n(e),i(e.name)},e[0]=a):a=e[0];let o=a,s;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(s=()=>{n(null),i(``)},e[1]=s):s=e[1];let c=s,l;e[2]!==t||e[3]!==r?(l=async()=>{if(!t)return;let e=r.trim();if(e.length===0){v.add({type:`warning`,title:`Project title cannot be empty`});return}if(e===t.name){c();return}let n=d(t.environmentId);if(!n){v.add(X({type:`error`,title:`Failed to rename project`,description:`Project API unavailable.`}));return}try{await n.orchestration.dispatchCommand({type:`project.meta.update`,commandId:T(),projectId:t.id,title:e}),c()}catch(e){let t=e;v.add(X({type:`error`,title:`Failed to rename project`,description:t instanceof Error?t.message:`An error occurred.`}))}},e[2]=t,e[3]=r,e[4]=l):l=e[4];let u=l,f;return e[5]!==t||e[6]!==r||e[7]!==u?(f={projectRenameTarget:t,projectRenameTitle:r,setProjectRenameTitle:i,openProjectRenameDialog:o,closeProjectRenameDialog:c,submitProjectRename:u},e[5]=t,e[6]=r,e[7]=u,e[8]=f):f=e[8],f}function Kr(){let[e,t]=(0,Q.useState)(null),[n,r]=(0,Q.useState)(!1),a=(0,Q.useRef)(null),o=(0,Q.useRef)(null),s=(0,Q.useRef)(null);(0,Q.useEffect)(()=>{a.current=e},[e]);let c=(0,Q.useCallback)(()=>{o.current!==null&&(window.cancelAnimationFrame(o.current),o.current=null),s.current!==null&&(window.clearTimeout(s.current),s.current=null)},[]);(0,Q.useEffect)(()=>()=>c(),[c]);let[l,u]=(0,Q.useState)(``),[f,p]=(0,Q.useState)(``),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(!1),[y,b]=(0,Q.useState)(null),[x,S]=(0,Q.useState)(null),[C,w]=(0,Q.useState)(null),E=(0,Q.useCallback)(e=>{c(),r(!1),t(e),u(e.name),p(e.cwd),h(e.customSystemPrompt??``),_(!1),b(e.customAvatarContentHash??null),S(e.preferredRemoteName??null),w(e.defaultModelSelection??null),o.current=window.requestAnimationFrame(()=>{o.current=null,r(!0)})},[c]),D=(0,Q.useCallback)(()=>{o.current!==null&&(window.cancelAnimationFrame(o.current),o.current=null),r(!1),s.current!==null&&window.clearTimeout(s.current),s.current=window.setTimeout(()=>{s.current=null,t(null),u(``),p(``),h(``),_(!1),b(null),S(null),w(null)},340)},[]),ee=(0,Q.useCallback)(async()=>{let t=P();if(!t){v.add({type:`error`,title:`Folder picker is unavailable.`});return}let n=await t.dialogs.pickFolder({initialPath:f.trim()||e?.cwd||null});n&&p(n)},[e?.cwd,f]),O=(0,Q.useCallback)(async()=>{if(!e||g)return;let t=l.trim(),n=f.trim(),r=m.trim();if(t.length===0){v.add({type:`warning`,title:`Project title cannot be empty`});return}if(n.length===0){v.add({type:`warning`,title:`Project root cannot be empty`});return}let i=t!==e.name,a=n!==e.cwd,o=r!==(e.customSystemPrompt?.trim()??``),s=x!==(e.preferredRemoteName??null),c=e.defaultModelSelection??null,u=(C?.instanceId??null)!==(c?.instanceId??null)||(C?.model??null)!==(c?.model??null);if(!i&&!a&&!o&&!s&&!u){D();return}let p=d(e.environmentId);if(!p){v.add(X({type:`error`,title:`Failed to update project`,description:`Project API unavailable.`}));return}_(!0);try{await p.orchestration.dispatchCommand({type:`project.meta.update`,commandId:T(),projectId:e.id,...i?{title:t}:{},...a?{workspaceRoot:n}:{},...o?{customSystemPrompt:r.length>0?r:null}:{},...s?{preferredRemoteName:x}:{},...u?{defaultModelSelection:C}:{}}),D()}catch(e){_(!1),v.add(X({type:`error`,title:`Failed to update project`,description:e instanceof Error?e.message:`An error occurred.`}))}},[D,g,m,C,x,e,l,f]),k=(0,Q.useCallback)(async t=>{let n=e;if(!n)return;if(i()){v.add({type:`warning`,title:`Project image upload is unavailable in hosted mode.`});return}let r=d(n.environmentId);if(!r)return;let o=N({environmentId:n.environmentId,pathname:`/api/project-avatar/upload`,searchParams:{projectId:n.id}}),s=new FormData;s.append(`avatar`,t);try{let e=await fetch(o,{method:`POST`,body:s,credentials:`include`});if(!e.ok){let t=await e.text().catch(()=>``);throw Error(t||`Upload failed: ${e.status}`)}let{contentHash:t}=await e.json();await r.orchestration.dispatchCommand({type:`project.avatar.set`,commandId:T(),projectId:n.id,contentHash:t}),a.current?.id===n.id&&b(t)}catch(e){if(a.current?.id!==n.id)return;v.add(X({type:`error`,title:`Failed to upload avatar`,description:e instanceof Error?e.message:`An error occurred.`}))}},[e]),A=(0,Q.useCallback)(async()=>{let t=e;if(!t)return;let n=d(t.environmentId);if(n)try{await n.orchestration.dispatchCommand({type:`project.avatar.set`,commandId:T(),projectId:t.id,contentHash:null}),a.current?.id===t.id&&b(null)}catch(e){if(a.current?.id!==t.id)return;v.add(X({type:`error`,title:`Failed to remove avatar`,description:e instanceof Error?e.message:`An error occurred.`}))}},[e]),j=(0,Q.useCallback)((e,t)=>{let n=(e.repositoryIdentity?.remotes??[]).find(e=>e.name===t);if(!n)return;let r=Kn(n.url);if(!r)return;let i=P();i&&i.shell.openExternal(r).catch(e=>{v.add(X({type:`error`,title:`Unable to open remote repository`,description:e instanceof Error?e.message:`An error occurred.`}))})},[]);return{projectSettingsTarget:e,projectSettingsOpen:n,projectSettingsTitle:l,projectSettingsWorkspaceRoot:f,projectSettingsCustomSystemPrompt:m,projectSettingsSaving:g,projectSettingsCustomAvatarContentHash:y,projectSettingsPreferredRemoteName:x,projectSettingsDefaultModelSelection:C,projectAvatarUploadUnavailableReason:i()?`Project image upload is unavailable in hosted mode because node HTTP routes are not relayed.`:null,setProjectSettingsTitle:u,setProjectSettingsWorkspaceRoot:p,setProjectSettingsCustomSystemPrompt:h,setProjectSettingsPreferredRemoteName:S,setProjectSettingsDefaultModelSelection:w,openProjectSettingsDialog:E,closeProjectSettingsDialog:D,pickProjectSettingsWorkspaceRoot:ee,submitProjectSettings:O,uploadProjectAvatar:k,removeProjectAvatar:A,openProjectRemoteByName:j}}function qr(e){let t=new Map;for(let n of e.projects)t.set(F(n),L(n,e.settings));return t}function Jr(e){let t=new Map;for(let n of e.projects){let r=L(n,e.settings),i={...n,physicalProjectKey:F(n),environmentLabel:ae({environmentId:n.environmentId,label:e.resolveEnvironmentLabel(n.environmentId)})},a=t.get(r);a?a.push(i):t.set(r,[i])}let n=[],r=new Set;for(let i of e.projects){let a=L(i,e.settings);if(r.has(a))continue;r.add(a);let o=t.get(a)??[],c=(e.primaryEnvironmentId?o.find(t=>t.environmentId===e.primaryEnvironmentId):null)??o[0];if(!c)continue;let l=e.primaryEnvironmentId!==null&&o.some(t=>t.environmentId===e.primaryEnvironmentId),u=e.primaryEnvironmentId!==null&&o.some(t=>t.environmentId!==e.primaryEnvironmentId),d=o.filter(t=>e.primaryEnvironmentId!==null&&t.environmentId!==e.primaryEnvironmentId).flatMap(e=>e.environmentLabel?[e.environmentLabel]:[]).filter((e,t,n)=>n.indexOf(e)===t);n.push({...c,projectKey:a,displayName:o.length>1?m({representative:c,members:o}):c.name,groupedProjectCount:o.length,environmentPresence:l&&u?`mixed`:u?`remote-only`:`local-only`,memberProjects:o,memberProjectRefs:o.map(e=>s(e.environmentId,e.id)),remoteEnvironmentLabels:d})}return n}function Yr(e){let t=[];for(let n of e.projectFolderOrder)e.projectFoldersById[n]!==void 0&&!t.includes(n)&&t.push(n);for(let n of Object.keys(e.projectFoldersById))t.includes(n)||t.push(n);return t}function Xr(e,t,n){let r=new Set(e.memberProjects.map(e=>e.physicalProjectKey));for(let e of Yr({projectFoldersById:t,projectFolderOrder:n})){let n=t[e];if(n&&n.projectKeys.some(e=>r.has(e)))return e}return null}function Zr(e){if(e.projectSortOrder!==`manual`)return[...e.projects].toSorted((t,n)=>(e.sourceIndexByProjectKey.get(t.projectKey)??0)-(e.sourceIndexByProjectKey.get(n.projectKey)??0));let t=new Map(e.folder.projectKeys.map((e,t)=>[e,t]));return[...e.projects].toSorted((n,r)=>{let i=Math.min(...n.memberProjects.map(e=>t.get(e.physicalProjectKey)??1/0))-Math.min(...r.memberProjects.map(e=>t.get(e.physicalProjectKey)??1/0));return Number.isFinite(i)&&i!==0?i:(e.sourceIndexByProjectKey.get(n.projectKey)??0)-(e.sourceIndexByProjectKey.get(r.projectKey)??0)})}function Qr(e){let t=Yr(e),n=[...e.projectTreeOrder.flatMap(t=>{let n=x(t);return n?.kind===`folder`&&e.projectFoldersById[n.folderId]!==void 0?[n.folderId]:[]}),...t].filter((e,t,n)=>n.indexOf(e)===t),r=new Map(e.projects.map(e=>[e.projectKey,e])),i=new Map(e.projects.map((e,t)=>[e.projectKey,t])),a=new Map,o=new Map,s=[];for(let t of e.projects){let r=Xr(t,e.projectFoldersById,n);if(!r){s.push(t);continue}a.set(t.projectKey,r);let i=o.get(r)??[];i.push(t),o.set(r,i)}let c=new Set([...t.map(re),...s.map(e=>p(e.projectKey))]),l=new Set,u=[];for(let t of e.projectTreeOrder)!l.has(t)&&c.has(t)&&x(t)&&(l.add(t),u.push(t));for(let e of t){let t=re(e);l.has(t)||(l.add(t),u.push(t))}for(let e of s){let t=p(e.projectKey);l.has(t)||(l.add(t),u.push(t))}return u.flatMap(t=>{let n=x(t);if(!n)return[];if(n.kind===`folder`){let r=e.projectFoldersById[n.folderId];return r?[{kind:`folder`,itemId:t,folder:r,projects:Zr({folder:r,projects:o.get(n.folderId)??[],projectSortOrder:e.projectSortOrder,sourceIndexByProjectKey:i})}]:[]}if(a.has(n.projectKey))return[];let s=r.get(n.projectKey);return s?[{kind:`project`,itemId:t,project:s}]:[]})}export{Mt as A,Lt as C,Tt as D,At as E,xt as F,jt as I,Ct as L,Et as M,bt as N,kt as O,Pt as P,lt as R,zt as S,Nt as T,sn as _,Gr as a,ln as b,Hr as c,er as d,Jn as f,Rn as g,Bn as h,Kr as i,gt as j,Ot as k,Vr as l,Un as m,qr as n,Wr as o,qn as p,Jr as r,Ur as s,Qr as t,mr as u,bn as v,Dt as w,Rt as x,hn as y,st as z};