@halcyonlabs/app 0.47.0-halcyon.19 → 0.47.0-halcyon.21
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.
- package/app/dist/assets/{AddMachineDialog-BpnPQjZ9.js → AddMachineDialog-4BQFC118.js} +1 -1
- package/app/dist/assets/AddMachineDialog-4BQFC118.js.br +0 -0
- package/app/dist/assets/AddMachineDialog-4BQFC118.js.gz +0 -0
- package/app/dist/assets/{AppCommandShortcutHint-DT0MQ07r.js → AppCommandShortcutHint-BlXOfa_n.js} +1 -1
- package/app/dist/assets/{AppFileExternalNavigationDispatcher-DWBAM2Ao.js → AppFileExternalNavigationDispatcher-fGD_vTns.js} +1 -1
- package/app/dist/assets/AppFileExternalNavigationDispatcher-fGD_vTns.js.br +0 -0
- package/app/dist/assets/AppFileExternalNavigationDispatcher-fGD_vTns.js.gz +0 -0
- package/app/dist/assets/{AppToasterView-z0BfD6I6.js → AppToasterView-DzbjTKdn.js} +1 -1
- package/app/dist/assets/{BbDiff-ny0zSZK7.js → BbDiff-BkqgAZD9.js} +1 -1
- package/app/dist/assets/BbDiff-BkqgAZD9.js.br +0 -0
- package/app/dist/assets/BbDiff-BkqgAZD9.js.gz +0 -0
- package/app/dist/assets/{BbDiffSplit-D2B68Y3j.js → BbDiffSplit-DTvWaW-n.js} +2 -2
- package/app/dist/assets/BbDiffSplit-DTvWaW-n.js.br +0 -0
- package/app/dist/assets/BbDiffSplit-DTvWaW-n.js.gz +0 -0
- package/app/dist/assets/{BbSourceCode-Coh1Fz_y.js → BbSourceCode-Dqw4VrLu.js} +1 -1
- package/app/dist/assets/BbSourceCode-Dqw4VrLu.js.br +0 -0
- package/app/dist/assets/BbSourceCode-Dqw4VrLu.js.gz +0 -0
- package/app/dist/assets/{BrowserTabDeck-B6MAEL-g.js → BrowserTabDeck-CuHEyZd6.js} +1 -1
- package/app/dist/assets/BrowserTabDeck-CuHEyZd6.js.br +0 -0
- package/app/dist/assets/BrowserTabDeck-CuHEyZd6.js.gz +0 -0
- package/app/dist/assets/{CommandPaletteBody-BrqKHT3H.js → CommandPaletteBody-DynxiDg6.js} +1 -1
- package/app/dist/assets/CommandPaletteBody-DynxiDg6.js.br +0 -0
- package/app/dist/assets/CommandPaletteBody-DynxiDg6.js.gz +0 -0
- package/app/dist/assets/{DiffHost-axFBS1TY.js → DiffHost-3UTZIJNs.js} +1 -1
- package/app/dist/assets/DiffHost-3UTZIJNs.js.br +0 -0
- package/app/dist/assets/DiffHost-3UTZIJNs.js.gz +0 -0
- package/app/dist/assets/{ExperimentalFileLinkMenu-BqFZL6JY.js → ExperimentalFileLinkMenu-C0RXVabs.js} +1 -1
- package/app/dist/assets/ExperimentalFileLinkMenu-C0RXVabs.js.br +0 -0
- package/app/dist/assets/ExperimentalFileLinkMenu-C0RXVabs.js.gz +0 -0
- package/app/dist/assets/{FilePreview-D1vlO0xa.js → FilePreview-BxgJ2jjI.js} +1 -1
- package/app/dist/assets/FilePreview-BxgJ2jjI.js.br +0 -0
- package/app/dist/assets/FilePreview-BxgJ2jjI.js.gz +0 -0
- package/app/dist/assets/{GitDiffCardHeader-BDVE9Slz.js → GitDiffCardHeader-Ce736y-m.js} +1 -1
- package/app/dist/assets/GitDiffCardHeader-Ce736y-m.js.br +0 -0
- package/app/dist/assets/GitDiffCardHeader-Ce736y-m.js.gz +0 -0
- package/app/dist/assets/{InlineMessageEditorFrame-CfMA_yDN.js → InlineMessageEditorFrame-Dud8h1It.js} +1 -1
- package/app/dist/assets/InlineMessageEditorFrame-Dud8h1It.js.br +0 -0
- package/app/dist/assets/InlineMessageEditorFrame-Dud8h1It.js.gz +0 -0
- package/app/dist/assets/{MachineRenameDialog-PZtQvU1f.js → MachineRenameDialog-C_ZV5gEB.js} +1 -1
- package/app/dist/assets/MachineRenameDialog-C_ZV5gEB.js.br +0 -0
- package/app/dist/assets/MachineRenameDialog-C_ZV5gEB.js.gz +0 -0
- package/app/dist/assets/{MachineSettingsView-CI2wHJ0D.js → MachineSettingsView-BWSIpenw.js} +1 -1
- package/app/dist/assets/MachineSettingsView-BWSIpenw.js.br +0 -0
- package/app/dist/assets/MachineSettingsView-BWSIpenw.js.gz +0 -0
- package/app/dist/assets/{MicrophonePreferences-j_i1qWay.js → MicrophonePreferences-CNEhQgAS.js} +1 -1
- package/app/dist/assets/MicrophonePreferences-CNEhQgAS.js.br +0 -0
- package/app/dist/assets/MicrophonePreferences-CNEhQgAS.js.gz +0 -0
- package/app/dist/assets/{ModelReasoningMenu-CFZ_DBOK.js → ModelReasoningMenu-BeNCpeQf.js} +1 -1
- package/app/dist/assets/ModelReasoningMenu-BeNCpeQf.js.br +0 -0
- package/app/dist/assets/ModelReasoningMenu-BeNCpeQf.js.gz +0 -0
- package/app/dist/assets/{NewTabPage-Cj0qUVQ8.js → NewTabPage-CsPDV6iC.js} +1 -1
- package/app/dist/assets/NewTabPage-CsPDV6iC.js.br +0 -0
- package/app/dist/assets/NewTabPage-CsPDV6iC.js.gz +0 -0
- package/app/dist/assets/{NewThreadComposer-BQ9ueBmG.js → NewThreadComposer-BY0jUSbs.js} +1 -1
- package/app/dist/assets/NewThreadComposer-BY0jUSbs.js.br +0 -0
- package/app/dist/assets/NewThreadComposer-BY0jUSbs.js.gz +0 -0
- package/app/dist/assets/{OnboardingFlow-B3VDIg3q.js → OnboardingFlow-BQdrTtHC.js} +1 -1
- package/app/dist/assets/OnboardingFlow-BQdrTtHC.js.br +0 -0
- package/app/dist/assets/OnboardingFlow-BQdrTtHC.js.gz +0 -0
- package/app/dist/assets/{OptionPicker-DQwMICWD.js → OptionPicker-sql35hd_.js} +1 -1
- package/app/dist/assets/OptionPicker-sql35hd_.js.br +0 -0
- package/app/dist/assets/OptionPicker-sql35hd_.js.gz +0 -0
- package/app/dist/assets/{PaletteShell-CUaJsDQy.js → PaletteShell-B9KeWKsT.js} +1 -1
- package/app/dist/assets/PaletteShell-B9KeWKsT.js.br +0 -0
- package/app/dist/assets/PaletteShell-B9KeWKsT.js.gz +0 -0
- package/app/dist/assets/{PaneMaximizeButton-BOOlC9xx.js → PaneMaximizeButton-CGBzyikf.js} +1 -1
- package/app/dist/assets/PaneMaximizeButton-CGBzyikf.js.br +0 -0
- package/app/dist/assets/PaneMaximizeButton-CGBzyikf.js.gz +0 -0
- package/app/dist/assets/{PierreLineSelectionActions-DeORj4pK.js → PierreLineSelectionActions-BYL6I0xE.js} +1 -1
- package/app/dist/assets/PierreLineSelectionActions-BYL6I0xE.js.br +0 -0
- package/app/dist/assets/PierreLineSelectionActions-BYL6I0xE.js.gz +0 -0
- package/app/dist/assets/{PluginPanelRightPanelHost-Dhmjh3Yu.js → PluginPanelRightPanelHost-Dj-wS_Ki.js} +1 -1
- package/app/dist/assets/PluginPanelRightPanelHost-Dj-wS_Ki.js.br +0 -0
- package/app/dist/assets/PluginPanelRightPanelHost-Dj-wS_Ki.js.gz +0 -0
- package/app/dist/assets/{PluginThreadChat-BpwUIMzi.js → PluginThreadChat-Dh-No9s-.js} +1 -1
- package/app/dist/assets/PluginThreadChat-Dh-No9s-.js.br +0 -0
- package/app/dist/assets/PluginThreadChat-Dh-No9s-.js.gz +0 -0
- package/app/dist/assets/{ProjectDetailSettingsView-CcynSBqP.js → ProjectDetailSettingsView-BOV7URzQ.js} +1 -1
- package/app/dist/assets/ProjectDetailSettingsView-BOV7URzQ.js.br +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-BOV7URzQ.js.gz +0 -0
- package/app/dist/assets/{ProjectMachineSetupDialog-BHF6n4Kn.js → ProjectMachineSetupDialog-BW4gUYj0.js} +1 -1
- package/app/dist/assets/ProjectMachineSetupDialog-BW4gUYj0.js.br +0 -0
- package/app/dist/assets/ProjectMachineSetupDialog-BW4gUYj0.js.gz +0 -0
- package/app/dist/assets/{ProjectsSettingsSection-D95eFIME.js → ProjectsSettingsSection-BI_xhcA2.js} +1 -1
- package/app/dist/assets/ProjectsSettingsSection-BI_xhcA2.js.br +0 -0
- package/app/dist/assets/ProjectsSettingsSection-BI_xhcA2.js.gz +0 -0
- package/app/dist/assets/{QueuedMessagesList-DWaI57OV.js → QueuedMessagesList-BEyivVSE.js} +1 -1
- package/app/dist/assets/QueuedMessagesList-BEyivVSE.js.br +0 -0
- package/app/dist/assets/QueuedMessagesList-BEyivVSE.js.gz +0 -0
- package/app/dist/assets/{RemotePathBrowser-CaeJnvqX.js → RemotePathBrowser-DVW5AwBs.js} +1 -1
- package/app/dist/assets/RemotePathBrowser-DVW5AwBs.js.br +0 -0
- package/app/dist/assets/RemotePathBrowser-DVW5AwBs.js.gz +0 -0
- package/app/dist/assets/{RootComposeView-DXDnU_77.js → RootComposeView-Cbnwq7j_.js} +1 -1
- package/app/dist/assets/RootComposeView-Cbnwq7j_.js.br +0 -0
- package/app/dist/assets/RootComposeView-Cbnwq7j_.js.gz +0 -0
- package/app/dist/assets/{SecondaryPanelLayout-Cbzw-eIz.js → SecondaryPanelLayout-fG8BuYv-.js} +1 -1
- package/app/dist/assets/SecondaryPanelLayout-fG8BuYv-.js.br +0 -0
- package/app/dist/assets/SecondaryPanelLayout-fG8BuYv-.js.gz +0 -0
- package/app/dist/assets/{ServerMoveOverlayView-ZEw2QJoL.js → ServerMoveOverlayView-CPWZimVv.js} +1 -1
- package/app/dist/assets/ServerMoveOverlayView-CPWZimVv.js.br +0 -0
- package/app/dist/assets/ServerMoveOverlayView-CPWZimVv.js.gz +0 -0
- package/app/dist/assets/{SettingsSidebar-CdfGtADz.js → SettingsSidebar-DxfoXXKW.js} +1 -1
- package/app/dist/assets/SettingsSidebar-DxfoXXKW.js.br +0 -0
- package/app/dist/assets/SettingsSidebar-DxfoXXKW.js.gz +0 -0
- package/app/dist/assets/{SettingsView-h9ZS30dB.js → SettingsView-D_DkKpuv.js} +1 -1
- package/app/dist/assets/SettingsView-D_DkKpuv.js.br +0 -0
- package/app/dist/assets/SettingsView-D_DkKpuv.js.gz +0 -0
- package/app/dist/assets/{SidebarFooterCustomize-B4Q71PFC.js → SidebarFooterCustomize-VQoenr5y.js} +1 -1
- package/app/dist/assets/SidebarFooterCustomize-VQoenr5y.js.br +0 -0
- package/app/dist/assets/SidebarFooterCustomize-VQoenr5y.js.gz +0 -0
- package/app/dist/assets/{SidebarVisibilityCustomize-DD2XyXp-.js → SidebarVisibilityCustomize-DUKnlz9Y.js} +1 -1
- package/app/dist/assets/SidebarVisibilityCustomize-DUKnlz9Y.js.br +0 -0
- package/app/dist/assets/SidebarVisibilityCustomize-DUKnlz9Y.js.gz +0 -0
- package/app/dist/assets/{SourceCodeHost-mzkOzbsV.js → SourceCodeHost-BlXLvWv2.js} +2 -2
- package/app/dist/assets/SourceCodeHost-BlXLvWv2.js.br +0 -0
- package/app/dist/assets/SourceCodeHost-BlXLvWv2.js.gz +0 -0
- package/app/dist/assets/{SplitWorkspaceRoute-BJEIDTsl.js → SplitWorkspaceRoute-6w4G23kc.js} +2 -2
- package/app/dist/assets/SplitWorkspaceRoute-6w4G23kc.js.br +0 -0
- package/app/dist/assets/SplitWorkspaceRoute-6w4G23kc.js.gz +0 -0
- package/app/dist/assets/{TerminalOutputBlock-LgqFqaFJ.js → TerminalOutputBlock-BxBSWJr_.js} +1 -1
- package/app/dist/assets/TerminalOutputBlock-BxBSWJr_.js.br +0 -0
- package/app/dist/assets/TerminalOutputBlock-BxBSWJr_.js.gz +0 -0
- package/app/dist/assets/{ThreadActionsMenu-CGpm4Smm.js → ThreadActionsMenu-ChpSKv80.js} +1 -1
- package/app/dist/assets/ThreadActionsMenu-ChpSKv80.js.br +0 -0
- package/app/dist/assets/ThreadActionsMenu-ChpSKv80.js.gz +0 -0
- package/app/dist/assets/{ThreadDetailView-BNuaME6v.js → ThreadDetailView-CfH3uWo-.js} +3 -3
- package/app/dist/assets/ThreadDetailView-CfH3uWo-.js.br +0 -0
- package/app/dist/assets/ThreadDetailView-CfH3uWo-.js.gz +0 -0
- package/app/dist/assets/{ThreadSearchPaletteMode-BBQgpzya.js → ThreadSearchPaletteMode-B72v3f5V.js} +1 -1
- package/app/dist/assets/ThreadSearchPaletteMode-B72v3f5V.js.br +0 -0
- package/app/dist/assets/ThreadSearchPaletteMode-B72v3f5V.js.gz +0 -0
- package/app/dist/assets/{ThreadSecondaryPanel-D3Q2Ugws.js → ThreadSecondaryPanel-4nIZy4h9.js} +1 -1
- package/app/dist/assets/ThreadSecondaryPanel-4nIZy4h9.js.br +0 -0
- package/app/dist/assets/ThreadSecondaryPanel-4nIZy4h9.js.gz +0 -0
- package/app/dist/assets/{ThreadSecondaryPanelTabContent-DWJgn-1Y.js → ThreadSecondaryPanelTabContent-8-e35_Me.js} +1 -1
- package/app/dist/assets/ThreadSecondaryPanelTabContent-8-e35_Me.js.br +0 -0
- package/app/dist/assets/{ThreadSecondaryPanelTabContent-DWJgn-1Y.js.gz → ThreadSecondaryPanelTabContent-8-e35_Me.js.gz} +0 -0
- package/app/dist/assets/{ThreadStatusGlyph-Cm0DMDOm.js → ThreadStatusGlyph-C9tzRtlV.js} +1 -1
- package/app/dist/assets/ThreadStatusGlyph-C9tzRtlV.js.br +0 -0
- package/app/dist/assets/ThreadStatusGlyph-C9tzRtlV.js.gz +0 -0
- package/app/dist/assets/{ThreadTerminalPanel-DWnPApoJ.js → ThreadTerminalPanel-CqTk9L2y.js} +1 -1
- package/app/dist/assets/ThreadTerminalPanel-CqTk9L2y.js.br +0 -0
- package/app/dist/assets/ThreadTerminalPanel-CqTk9L2y.js.gz +0 -0
- package/app/dist/assets/{ThreadTerminalView-VSstFotF.js → ThreadTerminalView-B6XNBrJ9.js} +1 -1
- package/app/dist/assets/ThreadTerminalView-B6XNBrJ9.js.br +0 -0
- package/app/dist/assets/ThreadTerminalView-B6XNBrJ9.js.gz +0 -0
- package/app/dist/assets/{ThreadTimelineNavigationContext-X5kHi62J.js → ThreadTimelineNavigationContext-DbZHHZfY.js} +2 -2
- package/app/dist/assets/ThreadTimelineNavigationContext-DbZHHZfY.js.br +0 -0
- package/app/dist/assets/ThreadTimelineNavigationContext-DbZHHZfY.js.gz +0 -0
- package/app/dist/assets/{ThreadUnarchiveButton-CzReEHtx.js → ThreadUnarchiveButton-CtjS9UkR.js} +1 -1
- package/app/dist/assets/{TimelineDetailScroll-DAyZkrWd.js → TimelineDetailScroll-CpFZhWhU.js} +1 -1
- package/app/dist/assets/TimelineDetailScroll-CpFZhWhU.js.br +0 -0
- package/app/dist/assets/TimelineDetailScroll-CpFZhWhU.js.gz +0 -0
- package/app/dist/assets/{TimelineFileDiffBlock-BHanM8gy.js → TimelineFileDiffBlock-JiOlR3O8.js} +1 -1
- package/app/dist/assets/TimelineFileDiffBlock-JiOlR3O8.js.br +0 -0
- package/app/dist/assets/TimelineFileDiffBlock-JiOlR3O8.js.gz +0 -0
- package/app/dist/assets/{TimelineSelectionMenu-NgclvOOl.js → TimelineSelectionMenu-DT4qwoFI.js} +1 -1
- package/app/dist/assets/TimelineSelectionMenu-DT4qwoFI.js.br +0 -0
- package/app/dist/assets/TimelineSelectionMenu-DT4qwoFI.js.gz +0 -0
- package/app/dist/assets/{ToolsView-DgNwKkID.js → ToolsView-nAAic88Z.js} +1 -1
- package/app/dist/assets/ToolsView-nAAic88Z.js.br +0 -0
- package/app/dist/assets/ToolsView-nAAic88Z.js.gz +0 -0
- package/app/dist/assets/{ToolsViewSplits-BF5GHpoJ.js → ToolsViewSplits-Blo3GJMQ.js} +2 -2
- package/app/dist/assets/ToolsViewSplits-Blo3GJMQ.js.br +0 -0
- package/app/dist/assets/ToolsViewSplits-Blo3GJMQ.js.gz +0 -0
- package/app/dist/assets/{WaveformVisualizer-Cri3lXZw.js → WaveformVisualizer-BrH_nwc4.js} +1 -1
- package/app/dist/assets/WaveformVisualizer-BrH_nwc4.js.br +0 -0
- package/app/dist/assets/WaveformVisualizer-BrH_nwc4.js.gz +0 -0
- package/app/dist/assets/{absolute-file-path-CVrJEmkI.js → absolute-file-path-W_eh4kPq.js} +1 -1
- package/app/dist/assets/{app-fixed-tab-navigation-MkQXoAlQ.js → app-fixed-tab-navigation-DX9s-gCj.js} +1 -1
- package/app/dist/assets/app-fixed-tab-navigation-DX9s-gCj.js.br +0 -0
- package/app/dist/assets/app-fixed-tab-navigation-DX9s-gCj.js.gz +0 -0
- package/app/dist/assets/{audio-input-device-preference-Bv7CMblt.js → audio-input-device-preference-DsU6GGNE.js} +1 -1
- package/app/dist/assets/audio-input-device-preference-DsU6GGNE.js.br +0 -0
- package/app/dist/assets/audio-input-device-preference-DsU6GGNE.js.gz +0 -0
- package/app/dist/assets/{bottom-anchored-scroll-body-WkS6Ysu2.js → bottom-anchored-scroll-body-C8n22V_o.js} +1 -1
- package/app/dist/assets/bottom-anchored-scroll-body-C8n22V_o.js.br +0 -0
- package/app/dist/assets/bottom-anchored-scroll-body-C8n22V_o.js.gz +0 -0
- package/app/dist/assets/{browser-url-CkFc4qcI.js → browser-url-B0SjaYti.js} +1 -1
- package/app/dist/assets/browser-url-B0SjaYti.js.br +0 -0
- package/app/dist/assets/browser-url-B0SjaYti.js.gz +0 -0
- package/app/dist/assets/{checkbox-CB54Ucjt.js → checkbox-Ct38DhHB.js} +1 -1
- package/app/dist/assets/checkbox-Ct38DhHB.js.br +0 -0
- package/app/dist/assets/checkbox-Ct38DhHB.js.gz +0 -0
- package/app/dist/assets/{code-loading-skeletons-BB3W6Jxd.js → code-loading-skeletons-C_099GEq.js} +1 -1
- package/app/dist/assets/code-loading-skeletons-C_099GEq.js.br +5 -0
- package/app/dist/assets/code-loading-skeletons-C_099GEq.js.gz +0 -0
- package/app/dist/assets/{code-rendering-CxXqiD4W.js → code-rendering-OxBy5zPr.js} +1 -1
- package/app/dist/assets/{code-theme-registration-CljisFQu.js → code-theme-registration-BokyXo30.js} +1 -1
- package/app/dist/assets/{detail-card-B1VUDLNX.js → detail-card-Cj628JNK.js} +1 -1
- package/app/dist/assets/detail-card-Cj628JNK.js.br +0 -0
- package/app/dist/assets/detail-card-Cj628JNK.js.gz +0 -0
- package/app/dist/assets/{diff-stats-tally-I7rMu5N0.js → diff-stats-tally-MtORWItG.js} +1 -1
- package/app/dist/assets/diff-stats-tally-MtORWItG.js.br +0 -0
- package/app/dist/assets/diff-stats-tally-MtORWItG.js.gz +0 -0
- package/app/dist/assets/{environment-mutations-CQyFiDlo.js → environment-mutations-rP4eROm2.js} +1 -1
- package/app/dist/assets/environment-mutations-rP4eROm2.js.br +0 -0
- package/app/dist/assets/environment-mutations-rP4eROm2.js.gz +0 -0
- package/app/dist/assets/{environment-workspace-display-CiBUVP2u.js → environment-workspace-display-O1JRHfbV.js} +3 -3
- package/app/dist/assets/environment-workspace-display-O1JRHfbV.js.br +0 -0
- package/app/dist/assets/environment-workspace-display-O1JRHfbV.js.gz +0 -0
- package/app/dist/assets/{event-code-block-Bpn_2p89.js → event-code-block-DqUZCAii.js} +1 -1
- package/app/dist/assets/event-code-block-DqUZCAii.js.br +0 -0
- package/app/dist/assets/event-code-block-DqUZCAii.js.gz +0 -0
- package/app/dist/assets/{expandable-text-CoDH4ptt.js → expandable-text-herJC70e.js} +1 -1
- package/app/dist/assets/expandable-text-herJC70e.js.br +0 -0
- package/app/dist/assets/expandable-text-herJC70e.js.gz +0 -0
- package/app/dist/assets/{file-opener-preference-C7NAS-GW.js → file-opener-preference-BEeek6dm.js} +1 -1
- package/app/dist/assets/{file-path-link-DrvaADa1.js → file-path-link-Cni9Azi2.js} +1 -1
- package/app/dist/assets/file-path-link-Cni9Azi2.js.br +0 -0
- package/app/dist/assets/file-path-link-Cni9Azi2.js.gz +0 -0
- package/app/dist/assets/{host-mutations-BdKF0vb_.js → host-mutations-Ckc-eVys.js} +1 -1
- package/app/dist/assets/host-mutations-Ckc-eVys.js.br +0 -0
- package/app/dist/assets/host-mutations-Ckc-eVys.js.gz +0 -0
- package/app/dist/assets/{icon-extended-Bmnh2NUd.js → icon-extended-DDFkslJU.js} +1 -1
- package/app/dist/assets/icon-extended-DDFkslJU.js.br +0 -0
- package/app/dist/assets/icon-extended-DDFkslJU.js.gz +0 -0
- package/app/dist/assets/{image-lightbox-D3Fevp17.js → image-lightbox-BW1bqQJM.js} +1 -1
- package/app/dist/assets/image-lightbox-BW1bqQJM.js.br +0 -0
- package/app/dist/assets/image-lightbox-BW1bqQJM.js.gz +0 -0
- package/app/dist/assets/{index-Bfkd7WaZ.js → index-BBxUiLNy.js} +8 -8
- package/app/dist/assets/index-BBxUiLNy.js.br +0 -0
- package/app/dist/assets/index-BBxUiLNy.js.gz +0 -0
- package/app/dist/assets/{inline-rename-editor-BIpXK65F.js → inline-rename-editor-wjwfk7v2.js} +1 -1
- package/app/dist/assets/inline-rename-editor-wjwfk7v2.js.br +0 -0
- package/app/dist/assets/inline-rename-editor-wjwfk7v2.js.gz +0 -0
- package/app/dist/assets/{launcherRow-CR-65XBF.js → launcherRow-rIW7Z6Xm.js} +1 -1
- package/app/dist/assets/launcherRow-rIW7Z6Xm.js.br +0 -0
- package/app/dist/assets/launcherRow-rIW7Z6Xm.js.gz +0 -0
- package/app/dist/assets/{localhost-link-rewrite-description-CIPrZ4gX.js → localhost-link-rewrite-description-Bovg3W--.js} +1 -1
- package/app/dist/assets/localhost-link-rewrite-description-Bovg3W--.js.br +0 -0
- package/app/dist/assets/localhost-link-rewrite-description-Bovg3W--.js.gz +0 -0
- package/app/dist/assets/{machine-provider-queries-BjtsqCT7.js → machine-provider-queries-CRlWTEz7.js} +1 -1
- package/app/dist/assets/machine-provider-queries-CRlWTEz7.js.br +0 -0
- package/app/dist/assets/machine-provider-queries-CRlWTEz7.js.gz +0 -0
- package/app/dist/assets/{machine-server-access-HMhg_GpF.js → machine-server-access-D3hixOIC.js} +1 -1
- package/app/dist/assets/{markdown-file-image-routing-CG3cFYwB.js → markdown-file-image-routing-DAIVjxLg.js} +1 -1
- package/app/dist/assets/{markdown-html-7vEPZaw6.js → markdown-html-B-Kyh3zI.js} +1 -1
- package/app/dist/assets/markdown-html-B-Kyh3zI.js.br +0 -0
- package/app/dist/assets/markdown-html-B-Kyh3zI.js.gz +0 -0
- package/app/dist/assets/{markdown-local-file-link-sP8_W_A8.js → markdown-local-file-link-C89PR8d5.js} +1 -1
- package/app/dist/assets/markdown-local-file-link-C89PR8d5.js.br +0 -0
- package/app/dist/assets/markdown-local-file-link-C89PR8d5.js.gz +0 -0
- package/app/dist/assets/{markdown-preview-DIfq3fId.js → markdown-preview-B7BmqIlu.js} +2 -2
- package/app/dist/assets/markdown-preview-B7BmqIlu.js.br +0 -0
- package/app/dist/assets/markdown-preview-B7BmqIlu.js.gz +0 -0
- package/app/dist/assets/{markdown-prompt-mentions-BSTB-Vmw.js → markdown-prompt-mentions-B0JRhgrI.js} +1 -1
- package/app/dist/assets/markdown-prompt-mentions-B0JRhgrI.js.br +0 -0
- package/app/dist/assets/markdown-prompt-mentions-B0JRhgrI.js.gz +0 -0
- package/app/dist/assets/{model-load-error-message-OglVlwTY.js → model-load-error-message-B-HKqgUD.js} +1 -1
- package/app/dist/assets/model-load-error-message-B-HKqgUD.js.br +0 -0
- package/app/dist/assets/model-load-error-message-B-HKqgUD.js.gz +0 -0
- package/app/dist/assets/onboarding-telemetry-C21cbjI_.js +1 -0
- package/app/dist/assets/{open-in-editor-button-B8RkW-4j.js → open-in-editor-button-CQGreiCk.js} +1 -1
- package/app/dist/assets/open-in-editor-button-CQGreiCk.js.br +0 -0
- package/app/dist/assets/open-in-editor-button-CQGreiCk.js.gz +0 -0
- package/app/dist/assets/{page-shell-Cqdn2HWD.js → page-shell-BHTOdeQn.js} +1 -1
- package/app/dist/assets/page-shell-BHTOdeQn.js.br +0 -0
- package/app/dist/assets/page-shell-BHTOdeQn.js.gz +0 -0
- package/app/dist/assets/{pierre-worker-pool-CQnFjCvY.js → pierre-worker-pool-Bm9cLA-c.js} +1 -1
- package/app/dist/assets/pierre-worker-pool-Bm9cLA-c.js.br +0 -0
- package/app/dist/assets/pierre-worker-pool-Bm9cLA-c.js.gz +0 -0
- package/app/dist/assets/{plugin-detail-navigation-DR_dbSv3.js → plugin-detail-navigation-CmSGTNyL.js} +1 -1
- package/app/dist/assets/plugin-detail-navigation-CmSGTNyL.js.br +0 -0
- package/app/dist/assets/plugin-detail-navigation-CmSGTNyL.js.gz +0 -0
- package/app/dist/assets/{plugin-frontend-VzstkBtF.js → plugin-frontend-BdQdYbWd.js} +3 -3
- package/app/dist/assets/plugin-frontend-BdQdYbWd.js.br +0 -0
- package/app/dist/assets/plugin-frontend-BdQdYbWd.js.gz +0 -0
- package/app/dist/assets/{plugin-ui-mdaPclkM.js → plugin-ui-DyNDyPD9.js} +1 -1
- package/app/dist/assets/plugin-ui-DyNDyPD9.js.br +0 -0
- package/app/dist/assets/plugin-ui-DyNDyPD9.js.gz +0 -0
- package/app/dist/assets/{project-default-execution-options-query-1RlH9w9L.js → project-default-execution-options-query-h6eTG6_Q.js} +1 -1
- package/app/dist/assets/{queued-editor-typeahead-layout-CiIAEWsc.js → queued-editor-typeahead-layout-BKui5z7C.js} +1 -1
- package/app/dist/assets/queued-editor-typeahead-layout-BKui5z7C.js.br +0 -0
- package/app/dist/assets/queued-editor-typeahead-layout-BKui5z7C.js.gz +0 -0
- package/app/dist/assets/{queued-messages-layout-DyuqzIxg.js → queued-messages-layout-BuEilXwP.js} +1 -1
- package/app/dist/assets/queued-messages-layout-BuEilXwP.js.br +0 -0
- package/app/dist/assets/queued-messages-layout-BuEilXwP.js.gz +0 -0
- package/app/dist/assets/{resource-list-DKdrv-JU.js → resource-list-B6MkAu8v.js} +1 -1
- package/app/dist/assets/resource-list-B6MkAu8v.js.br +0 -0
- package/app/dist/assets/resource-list-B6MkAu8v.js.gz +0 -0
- package/app/dist/assets/root-compose-create-preference-DDv947dq.js +1 -0
- package/app/dist/assets/{save-file-B3ftv5Jn.js → save-file-DYAtq7A9.js} +1 -1
- package/app/dist/assets/{settings-nav-BLpuT_C0.js → settings-nav-DbICcozy.js} +1 -1
- package/app/dist/assets/settings-nav-DbICcozy.js.br +0 -0
- package/app/dist/assets/settings-nav-DbICcozy.js.gz +0 -0
- package/app/dist/assets/{settings-sections-BvsMU9Kk.js → settings-sections-Cq0VX9E8.js} +1 -1
- package/app/dist/assets/settings-sections-Cq0VX9E8.js.br +0 -0
- package/app/dist/assets/settings-sections-Cq0VX9E8.js.gz +0 -0
- package/app/dist/assets/{shortcut-pill-DPVhSJ-G.js → shortcut-pill-DldxrKgx.js} +1 -1
- package/app/dist/assets/{sidebarTouchSensor-G8ypC2Ro.js → sidebarTouchSensor-D7jKXrfM.js} +1 -1
- package/app/dist/assets/sidebarTouchSensor-D7jKXrfM.js.br +0 -0
- package/app/dist/assets/sidebarTouchSensor-D7jKXrfM.js.gz +0 -0
- package/app/dist/assets/{switch-xFGnSGwy.js → switch-CzvlSesf.js} +1 -1
- package/app/dist/assets/switch-CzvlSesf.js.br +0 -0
- package/app/dist/assets/switch-CzvlSesf.js.gz +0 -0
- package/app/dist/assets/{textarea-CQaTsl45.js → textarea-9yaIMD7J.js} +1 -1
- package/app/dist/assets/{thread-event-parser-y3FxoN7v.js → thread-event-parser-BqVpKC6z.js} +1 -1
- package/app/dist/assets/thread-event-parser-BqVpKC6z.js.br +0 -0
- package/app/dist/assets/thread-event-parser-BqVpKC6z.js.gz +0 -0
- package/app/dist/assets/{thread-panel-queries-DWf3O5hk.js → thread-panel-queries-C3MI4mdc.js} +1 -1
- package/app/dist/assets/thread-panel-queries-C3MI4mdc.js.br +0 -0
- package/app/dist/assets/thread-panel-queries-C3MI4mdc.js.gz +0 -0
- package/app/dist/assets/{thread-runtime-mutations-UVG-YPVF.js → thread-runtime-mutations-Cr1H7KSz.js} +1 -1
- package/app/dist/assets/thread-runtime-mutations-Cr1H7KSz.js.br +0 -0
- package/app/dist/assets/thread-runtime-mutations-Cr1H7KSz.js.gz +0 -0
- package/app/dist/assets/{thread-terminal-queries-DOflC4hl.js → thread-terminal-queries-B4JkOWS2.js} +1 -1
- package/app/dist/assets/thread-terminal-queries-B4JkOWS2.js.br +0 -0
- package/app/dist/assets/thread-terminal-queries-B4JkOWS2.js.gz +0 -0
- package/app/dist/assets/{threadRecentItems-uVNwTDHY.js → threadRecentItems-DI2mgj7S.js} +1 -1
- package/app/dist/assets/threadRecentItems-DI2mgj7S.js.br +0 -0
- package/app/dist/assets/threadRecentItems-DI2mgj7S.js.gz +0 -0
- package/app/dist/assets/{threadWorkspaceOpenPath-C3NqD2MJ.js → threadWorkspaceOpenPath-BQgtUYL5.js} +1 -1
- package/app/dist/assets/threadWorkspaceOpenPath-BQgtUYL5.js.br +0 -0
- package/app/dist/assets/threadWorkspaceOpenPath-BQgtUYL5.js.gz +0 -0
- package/app/dist/assets/{title-bar-scroll-fade-Bg1HUJXc.js → title-bar-scroll-fade-CxbgbTcm.js} +1 -1
- package/app/dist/assets/title-bar-scroll-fade-CxbgbTcm.js.br +0 -0
- package/app/dist/assets/title-bar-scroll-fade-CxbgbTcm.js.gz +0 -0
- package/app/dist/assets/{truncate-start-DyS7-Yxt.js → truncate-start-CaCnKnh9.js} +1 -1
- package/app/dist/assets/{use-hover-popover-Di5t21dF.js → use-hover-popover-CyIdak3c.js} +1 -1
- package/app/dist/assets/use-hover-popover-CyIdak3c.js.br +0 -0
- package/app/dist/assets/use-hover-popover-CyIdak3c.js.gz +0 -0
- package/app/dist/assets/{useElementWidth-ixw7193l.js → useElementWidth-CL3Nb-eq.js} +1 -1
- package/app/dist/assets/useElementWidth-CL3Nb-eq.js.br +0 -0
- package/app/dist/assets/useElementWidth-CL3Nb-eq.js.gz +0 -0
- package/app/dist/assets/{useLocalOpenTargets-ZpAju0H3.js → useLocalOpenTargets-yzd9-Ceh.js} +1 -1
- package/app/dist/assets/useLocalOpenTargets-yzd9-Ceh.js.br +0 -0
- package/app/dist/assets/useLocalOpenTargets-yzd9-Ceh.js.gz +0 -0
- package/app/dist/assets/{usePanelResizeSnap-fqnDdIZ4.js → usePanelResizeSnap-dys9IwEk.js} +1 -1
- package/app/dist/assets/usePanelResizeSnap-dys9IwEk.js.br +0 -0
- package/app/dist/assets/usePanelResizeSnap-dys9IwEk.js.gz +0 -0
- package/app/dist/assets/{usePanelTerminals-BNnuXkgJ.js → usePanelTerminals-BN8UCJFO.js} +1 -1
- package/app/dist/assets/usePanelTerminals-BN8UCJFO.js.br +0 -0
- package/app/dist/assets/usePanelTerminals-BN8UCJFO.js.gz +0 -0
- package/app/dist/assets/{usePathSuggestions-B-mANSfN.js → usePathSuggestions-DkeFAE7l.js} +1 -1
- package/app/dist/assets/usePathSuggestions-DkeFAE7l.js.br +0 -0
- package/app/dist/assets/usePathSuggestions-DkeFAE7l.js.gz +0 -0
- package/app/dist/assets/{useResolvedLiveFileTarget-HWH-tIU4.js → useResolvedLiveFileTarget-43fAKgDx.js} +1 -1
- package/app/dist/assets/useResolvedLiveFileTarget-43fAKgDx.js.br +0 -0
- package/app/dist/assets/useResolvedLiveFileTarget-43fAKgDx.js.gz +0 -0
- package/app/dist/assets/{useThreadTerminalController-COG4IW7A.js → useThreadTerminalController-DcWLbe8W.js} +1 -1
- package/app/dist/assets/useThreadTerminalController-DcWLbe8W.js.br +0 -0
- package/app/dist/assets/useThreadTerminalController-DcWLbe8W.js.gz +0 -0
- package/app/dist/assets/{workspace-change-summary-CQ20dHT9.js → workspace-change-summary-Bd3p-LXz.js} +1 -1
- package/app/dist/assets/workspace-change-summary-Bd3p-LXz.js.br +0 -0
- package/app/dist/assets/workspace-change-summary-Bd3p-LXz.js.gz +0 -0
- package/app/dist/assets/workspace-checkout-display-DMp28yCr.js +32 -0
- package/app/dist/assets/workspace-checkout-display-DMp28yCr.js.br +0 -0
- package/app/dist/assets/workspace-checkout-display-DMp28yCr.js.gz +0 -0
- package/app/dist/index.html +17 -17
- package/app/dist/index.html.br +0 -0
- package/app/dist/index.html.gz +0 -0
- package/dist/index.d.ts +107 -107
- package/package.json +1 -1
- package/server/dist/builtin-plugins/orbit/dist/assets/orbit/revision +1 -1
- package/app/dist/assets/AddMachineDialog-BpnPQjZ9.js.br +0 -0
- package/app/dist/assets/AddMachineDialog-BpnPQjZ9.js.gz +0 -0
- package/app/dist/assets/AppFileExternalNavigationDispatcher-DWBAM2Ao.js.br +0 -0
- package/app/dist/assets/AppFileExternalNavigationDispatcher-DWBAM2Ao.js.gz +0 -0
- package/app/dist/assets/BbDiff-ny0zSZK7.js.br +0 -0
- package/app/dist/assets/BbDiff-ny0zSZK7.js.gz +0 -0
- package/app/dist/assets/BbDiffSplit-D2B68Y3j.js.br +0 -0
- package/app/dist/assets/BbDiffSplit-D2B68Y3j.js.gz +0 -0
- package/app/dist/assets/BbSourceCode-Coh1Fz_y.js.br +0 -0
- package/app/dist/assets/BbSourceCode-Coh1Fz_y.js.gz +0 -0
- package/app/dist/assets/BrowserTabDeck-B6MAEL-g.js.br +0 -0
- package/app/dist/assets/BrowserTabDeck-B6MAEL-g.js.gz +0 -0
- package/app/dist/assets/CommandPaletteBody-BrqKHT3H.js.br +0 -0
- package/app/dist/assets/CommandPaletteBody-BrqKHT3H.js.gz +0 -0
- package/app/dist/assets/DiffHost-axFBS1TY.js.br +0 -0
- package/app/dist/assets/DiffHost-axFBS1TY.js.gz +0 -0
- package/app/dist/assets/ExperimentalFileLinkMenu-BqFZL6JY.js.br +0 -0
- package/app/dist/assets/ExperimentalFileLinkMenu-BqFZL6JY.js.gz +0 -0
- package/app/dist/assets/FilePreview-D1vlO0xa.js.br +0 -0
- package/app/dist/assets/FilePreview-D1vlO0xa.js.gz +0 -0
- package/app/dist/assets/GitDiffCardHeader-BDVE9Slz.js.br +0 -0
- package/app/dist/assets/GitDiffCardHeader-BDVE9Slz.js.gz +0 -0
- package/app/dist/assets/InlineMessageEditorFrame-CfMA_yDN.js.br +0 -0
- package/app/dist/assets/InlineMessageEditorFrame-CfMA_yDN.js.gz +0 -0
- package/app/dist/assets/MachineRenameDialog-PZtQvU1f.js.br +0 -0
- package/app/dist/assets/MachineRenameDialog-PZtQvU1f.js.gz +0 -0
- package/app/dist/assets/MachineSettingsView-CI2wHJ0D.js.br +0 -0
- package/app/dist/assets/MachineSettingsView-CI2wHJ0D.js.gz +0 -0
- package/app/dist/assets/MicrophonePreferences-j_i1qWay.js.br +0 -0
- package/app/dist/assets/MicrophonePreferences-j_i1qWay.js.gz +0 -0
- package/app/dist/assets/ModelReasoningMenu-CFZ_DBOK.js.br +0 -0
- package/app/dist/assets/ModelReasoningMenu-CFZ_DBOK.js.gz +0 -0
- package/app/dist/assets/NewTabPage-Cj0qUVQ8.js.br +0 -0
- package/app/dist/assets/NewTabPage-Cj0qUVQ8.js.gz +0 -0
- package/app/dist/assets/NewThreadComposer-BQ9ueBmG.js.br +0 -0
- package/app/dist/assets/NewThreadComposer-BQ9ueBmG.js.gz +0 -0
- package/app/dist/assets/OnboardingFlow-B3VDIg3q.js.br +0 -0
- package/app/dist/assets/OnboardingFlow-B3VDIg3q.js.gz +0 -0
- package/app/dist/assets/OptionPicker-DQwMICWD.js.br +0 -0
- package/app/dist/assets/OptionPicker-DQwMICWD.js.gz +0 -0
- package/app/dist/assets/PaletteShell-CUaJsDQy.js.br +0 -0
- package/app/dist/assets/PaletteShell-CUaJsDQy.js.gz +0 -0
- package/app/dist/assets/PaneMaximizeButton-BOOlC9xx.js.br +0 -0
- package/app/dist/assets/PaneMaximizeButton-BOOlC9xx.js.gz +0 -0
- package/app/dist/assets/PierreLineSelectionActions-DeORj4pK.js.br +0 -0
- package/app/dist/assets/PierreLineSelectionActions-DeORj4pK.js.gz +0 -0
- package/app/dist/assets/PluginPanelRightPanelHost-Dhmjh3Yu.js.br +0 -0
- package/app/dist/assets/PluginPanelRightPanelHost-Dhmjh3Yu.js.gz +0 -0
- package/app/dist/assets/PluginThreadChat-BpwUIMzi.js.br +0 -0
- package/app/dist/assets/PluginThreadChat-BpwUIMzi.js.gz +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-CcynSBqP.js.br +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-CcynSBqP.js.gz +0 -0
- package/app/dist/assets/ProjectMachineSetupDialog-BHF6n4Kn.js.br +0 -0
- package/app/dist/assets/ProjectMachineSetupDialog-BHF6n4Kn.js.gz +0 -0
- package/app/dist/assets/ProjectsSettingsSection-D95eFIME.js.br +0 -0
- package/app/dist/assets/ProjectsSettingsSection-D95eFIME.js.gz +0 -0
- package/app/dist/assets/QueuedMessagesList-DWaI57OV.js.br +0 -0
- package/app/dist/assets/QueuedMessagesList-DWaI57OV.js.gz +0 -0
- package/app/dist/assets/RemotePathBrowser-CaeJnvqX.js.br +0 -0
- package/app/dist/assets/RemotePathBrowser-CaeJnvqX.js.gz +0 -0
- package/app/dist/assets/RootComposeView-DXDnU_77.js.br +0 -0
- package/app/dist/assets/RootComposeView-DXDnU_77.js.gz +0 -0
- package/app/dist/assets/SecondaryPanelLayout-Cbzw-eIz.js.br +0 -0
- package/app/dist/assets/SecondaryPanelLayout-Cbzw-eIz.js.gz +0 -0
- package/app/dist/assets/ServerMoveOverlayView-ZEw2QJoL.js.br +0 -0
- package/app/dist/assets/ServerMoveOverlayView-ZEw2QJoL.js.gz +0 -0
- package/app/dist/assets/SettingsSidebar-CdfGtADz.js.br +0 -0
- package/app/dist/assets/SettingsSidebar-CdfGtADz.js.gz +0 -0
- package/app/dist/assets/SettingsView-h9ZS30dB.js.br +0 -0
- package/app/dist/assets/SettingsView-h9ZS30dB.js.gz +0 -0
- package/app/dist/assets/SidebarFooterCustomize-B4Q71PFC.js.br +0 -0
- package/app/dist/assets/SidebarFooterCustomize-B4Q71PFC.js.gz +0 -0
- package/app/dist/assets/SidebarVisibilityCustomize-DD2XyXp-.js.br +0 -0
- package/app/dist/assets/SidebarVisibilityCustomize-DD2XyXp-.js.gz +0 -0
- package/app/dist/assets/SourceCodeHost-mzkOzbsV.js.br +0 -0
- package/app/dist/assets/SourceCodeHost-mzkOzbsV.js.gz +0 -0
- package/app/dist/assets/SplitWorkspaceRoute-BJEIDTsl.js.br +0 -0
- package/app/dist/assets/SplitWorkspaceRoute-BJEIDTsl.js.gz +0 -0
- package/app/dist/assets/TerminalOutputBlock-LgqFqaFJ.js.br +0 -0
- package/app/dist/assets/TerminalOutputBlock-LgqFqaFJ.js.gz +0 -0
- package/app/dist/assets/ThreadActionsMenu-CGpm4Smm.js.br +0 -0
- package/app/dist/assets/ThreadActionsMenu-CGpm4Smm.js.gz +0 -0
- package/app/dist/assets/ThreadDetailView-BNuaME6v.js.br +0 -0
- package/app/dist/assets/ThreadDetailView-BNuaME6v.js.gz +0 -0
- package/app/dist/assets/ThreadSearchPaletteMode-BBQgpzya.js.br +0 -0
- package/app/dist/assets/ThreadSearchPaletteMode-BBQgpzya.js.gz +0 -0
- package/app/dist/assets/ThreadSecondaryPanel-D3Q2Ugws.js.br +0 -0
- package/app/dist/assets/ThreadSecondaryPanel-D3Q2Ugws.js.gz +0 -0
- package/app/dist/assets/ThreadSecondaryPanelTabContent-DWJgn-1Y.js.br +0 -0
- package/app/dist/assets/ThreadStatusGlyph-Cm0DMDOm.js.br +0 -0
- package/app/dist/assets/ThreadStatusGlyph-Cm0DMDOm.js.gz +0 -0
- package/app/dist/assets/ThreadTerminalPanel-DWnPApoJ.js.br +0 -0
- package/app/dist/assets/ThreadTerminalPanel-DWnPApoJ.js.gz +0 -0
- package/app/dist/assets/ThreadTerminalView-VSstFotF.js.br +0 -0
- package/app/dist/assets/ThreadTerminalView-VSstFotF.js.gz +0 -0
- package/app/dist/assets/ThreadTimelineNavigationContext-X5kHi62J.js.br +0 -0
- package/app/dist/assets/ThreadTimelineNavigationContext-X5kHi62J.js.gz +0 -0
- package/app/dist/assets/TimelineDetailScroll-DAyZkrWd.js.br +0 -0
- package/app/dist/assets/TimelineDetailScroll-DAyZkrWd.js.gz +0 -0
- package/app/dist/assets/TimelineFileDiffBlock-BHanM8gy.js.br +0 -0
- package/app/dist/assets/TimelineFileDiffBlock-BHanM8gy.js.gz +0 -0
- package/app/dist/assets/TimelineSelectionMenu-NgclvOOl.js.br +0 -0
- package/app/dist/assets/TimelineSelectionMenu-NgclvOOl.js.gz +0 -0
- package/app/dist/assets/ToolsView-DgNwKkID.js.br +0 -0
- package/app/dist/assets/ToolsView-DgNwKkID.js.gz +0 -0
- package/app/dist/assets/ToolsViewSplits-BF5GHpoJ.js.br +0 -0
- package/app/dist/assets/ToolsViewSplits-BF5GHpoJ.js.gz +0 -0
- package/app/dist/assets/WaveformVisualizer-Cri3lXZw.js.br +0 -0
- package/app/dist/assets/WaveformVisualizer-Cri3lXZw.js.gz +0 -0
- package/app/dist/assets/app-fixed-tab-navigation-MkQXoAlQ.js.br +0 -0
- package/app/dist/assets/app-fixed-tab-navigation-MkQXoAlQ.js.gz +0 -0
- package/app/dist/assets/audio-input-device-preference-Bv7CMblt.js.br +0 -0
- package/app/dist/assets/audio-input-device-preference-Bv7CMblt.js.gz +0 -0
- package/app/dist/assets/bottom-anchored-scroll-body-WkS6Ysu2.js.br +0 -0
- package/app/dist/assets/bottom-anchored-scroll-body-WkS6Ysu2.js.gz +0 -0
- package/app/dist/assets/browser-url-CkFc4qcI.js.br +0 -0
- package/app/dist/assets/browser-url-CkFc4qcI.js.gz +0 -0
- package/app/dist/assets/checkbox-CB54Ucjt.js.br +0 -0
- package/app/dist/assets/checkbox-CB54Ucjt.js.gz +0 -0
- package/app/dist/assets/code-loading-skeletons-BB3W6Jxd.js.br +0 -1
- package/app/dist/assets/code-loading-skeletons-BB3W6Jxd.js.gz +0 -0
- package/app/dist/assets/detail-card-B1VUDLNX.js.br +0 -0
- package/app/dist/assets/detail-card-B1VUDLNX.js.gz +0 -0
- package/app/dist/assets/diff-stats-tally-I7rMu5N0.js.br +0 -0
- package/app/dist/assets/diff-stats-tally-I7rMu5N0.js.gz +0 -0
- package/app/dist/assets/environment-mutations-CQyFiDlo.js.br +0 -0
- package/app/dist/assets/environment-mutations-CQyFiDlo.js.gz +0 -0
- package/app/dist/assets/environment-workspace-display-CiBUVP2u.js.br +0 -0
- package/app/dist/assets/environment-workspace-display-CiBUVP2u.js.gz +0 -0
- package/app/dist/assets/event-code-block-Bpn_2p89.js.br +0 -0
- package/app/dist/assets/event-code-block-Bpn_2p89.js.gz +0 -0
- package/app/dist/assets/expandable-text-CoDH4ptt.js.br +0 -0
- package/app/dist/assets/expandable-text-CoDH4ptt.js.gz +0 -0
- package/app/dist/assets/file-path-link-DrvaADa1.js.br +0 -0
- package/app/dist/assets/file-path-link-DrvaADa1.js.gz +0 -0
- package/app/dist/assets/host-mutations-BdKF0vb_.js.br +0 -0
- package/app/dist/assets/host-mutations-BdKF0vb_.js.gz +0 -0
- package/app/dist/assets/icon-extended-Bmnh2NUd.js.br +0 -0
- package/app/dist/assets/icon-extended-Bmnh2NUd.js.gz +0 -0
- package/app/dist/assets/image-lightbox-D3Fevp17.js.br +0 -0
- package/app/dist/assets/image-lightbox-D3Fevp17.js.gz +0 -0
- package/app/dist/assets/index-Bfkd7WaZ.js.br +0 -0
- package/app/dist/assets/index-Bfkd7WaZ.js.gz +0 -0
- package/app/dist/assets/inline-rename-editor-BIpXK65F.js.br +0 -0
- package/app/dist/assets/inline-rename-editor-BIpXK65F.js.gz +0 -0
- package/app/dist/assets/launcherRow-CR-65XBF.js.br +0 -0
- package/app/dist/assets/launcherRow-CR-65XBF.js.gz +0 -0
- package/app/dist/assets/localhost-link-rewrite-description-CIPrZ4gX.js.br +0 -0
- package/app/dist/assets/localhost-link-rewrite-description-CIPrZ4gX.js.gz +0 -0
- package/app/dist/assets/machine-provider-queries-BjtsqCT7.js.br +0 -0
- package/app/dist/assets/machine-provider-queries-BjtsqCT7.js.gz +0 -0
- package/app/dist/assets/markdown-html-7vEPZaw6.js.br +0 -0
- package/app/dist/assets/markdown-html-7vEPZaw6.js.gz +0 -0
- package/app/dist/assets/markdown-local-file-link-sP8_W_A8.js.br +0 -0
- package/app/dist/assets/markdown-local-file-link-sP8_W_A8.js.gz +0 -0
- package/app/dist/assets/markdown-preview-DIfq3fId.js.br +0 -0
- package/app/dist/assets/markdown-preview-DIfq3fId.js.gz +0 -0
- package/app/dist/assets/markdown-prompt-mentions-BSTB-Vmw.js.br +0 -0
- package/app/dist/assets/markdown-prompt-mentions-BSTB-Vmw.js.gz +0 -0
- package/app/dist/assets/model-load-error-message-OglVlwTY.js.br +0 -0
- package/app/dist/assets/model-load-error-message-OglVlwTY.js.gz +0 -0
- package/app/dist/assets/onboarding-telemetry-BVjT5I18.js +0 -1
- package/app/dist/assets/open-in-editor-button-B8RkW-4j.js.br +0 -0
- package/app/dist/assets/open-in-editor-button-B8RkW-4j.js.gz +0 -0
- package/app/dist/assets/page-shell-Cqdn2HWD.js.br +0 -0
- package/app/dist/assets/page-shell-Cqdn2HWD.js.gz +0 -0
- package/app/dist/assets/pierre-worker-pool-CQnFjCvY.js.br +0 -0
- package/app/dist/assets/pierre-worker-pool-CQnFjCvY.js.gz +0 -0
- package/app/dist/assets/plugin-detail-navigation-DR_dbSv3.js.br +0 -0
- package/app/dist/assets/plugin-detail-navigation-DR_dbSv3.js.gz +0 -0
- package/app/dist/assets/plugin-frontend-VzstkBtF.js.br +0 -0
- package/app/dist/assets/plugin-frontend-VzstkBtF.js.gz +0 -0
- package/app/dist/assets/plugin-ui-mdaPclkM.js.br +0 -0
- package/app/dist/assets/plugin-ui-mdaPclkM.js.gz +0 -0
- package/app/dist/assets/queued-editor-typeahead-layout-CiIAEWsc.js.br +0 -0
- package/app/dist/assets/queued-editor-typeahead-layout-CiIAEWsc.js.gz +0 -0
- package/app/dist/assets/queued-messages-layout-DyuqzIxg.js.br +0 -0
- package/app/dist/assets/queued-messages-layout-DyuqzIxg.js.gz +0 -0
- package/app/dist/assets/resource-list-DKdrv-JU.js.br +0 -0
- package/app/dist/assets/resource-list-DKdrv-JU.js.gz +0 -0
- package/app/dist/assets/root-compose-create-preference-CtOkf4me.js +0 -1
- package/app/dist/assets/settings-nav-BLpuT_C0.js.br +0 -0
- package/app/dist/assets/settings-nav-BLpuT_C0.js.gz +0 -0
- package/app/dist/assets/settings-sections-BvsMU9Kk.js.br +0 -0
- package/app/dist/assets/settings-sections-BvsMU9Kk.js.gz +0 -0
- package/app/dist/assets/sidebarTouchSensor-G8ypC2Ro.js.br +0 -0
- package/app/dist/assets/sidebarTouchSensor-G8ypC2Ro.js.gz +0 -0
- package/app/dist/assets/switch-xFGnSGwy.js.br +0 -0
- package/app/dist/assets/switch-xFGnSGwy.js.gz +0 -0
- package/app/dist/assets/thread-event-parser-y3FxoN7v.js.br +0 -0
- package/app/dist/assets/thread-event-parser-y3FxoN7v.js.gz +0 -0
- package/app/dist/assets/thread-panel-queries-DWf3O5hk.js.br +0 -0
- package/app/dist/assets/thread-panel-queries-DWf3O5hk.js.gz +0 -0
- package/app/dist/assets/thread-runtime-mutations-UVG-YPVF.js.br +0 -0
- package/app/dist/assets/thread-runtime-mutations-UVG-YPVF.js.gz +0 -0
- package/app/dist/assets/thread-terminal-queries-DOflC4hl.js.br +0 -0
- package/app/dist/assets/thread-terminal-queries-DOflC4hl.js.gz +0 -0
- package/app/dist/assets/threadRecentItems-uVNwTDHY.js.br +0 -0
- package/app/dist/assets/threadRecentItems-uVNwTDHY.js.gz +0 -0
- package/app/dist/assets/threadWorkspaceOpenPath-C3NqD2MJ.js.br +0 -0
- package/app/dist/assets/threadWorkspaceOpenPath-C3NqD2MJ.js.gz +0 -0
- package/app/dist/assets/title-bar-scroll-fade-Bg1HUJXc.js.br +0 -0
- package/app/dist/assets/title-bar-scroll-fade-Bg1HUJXc.js.gz +0 -0
- package/app/dist/assets/use-hover-popover-Di5t21dF.js.br +0 -0
- package/app/dist/assets/use-hover-popover-Di5t21dF.js.gz +0 -0
- package/app/dist/assets/useElementWidth-ixw7193l.js.br +0 -0
- package/app/dist/assets/useElementWidth-ixw7193l.js.gz +0 -0
- package/app/dist/assets/useLocalOpenTargets-ZpAju0H3.js.br +0 -0
- package/app/dist/assets/useLocalOpenTargets-ZpAju0H3.js.gz +0 -0
- package/app/dist/assets/usePanelResizeSnap-fqnDdIZ4.js.br +0 -0
- package/app/dist/assets/usePanelResizeSnap-fqnDdIZ4.js.gz +0 -0
- package/app/dist/assets/usePanelTerminals-BNnuXkgJ.js.br +0 -0
- package/app/dist/assets/usePanelTerminals-BNnuXkgJ.js.gz +0 -0
- package/app/dist/assets/usePathSuggestions-B-mANSfN.js.br +0 -0
- package/app/dist/assets/usePathSuggestions-B-mANSfN.js.gz +0 -0
- package/app/dist/assets/useResolvedLiveFileTarget-HWH-tIU4.js.br +0 -0
- package/app/dist/assets/useResolvedLiveFileTarget-HWH-tIU4.js.gz +0 -0
- package/app/dist/assets/useThreadTerminalController-COG4IW7A.js.br +0 -0
- package/app/dist/assets/useThreadTerminalController-COG4IW7A.js.gz +0 -0
- package/app/dist/assets/workspace-change-summary-CQ20dHT9.js.br +0 -0
- package/app/dist/assets/workspace-change-summary-CQ20dHT9.js.gz +0 -0
- package/app/dist/assets/workspace-checkout-display-Bvm9hISZ.js +0 -32
- package/app/dist/assets/workspace-checkout-display-Bvm9hISZ.js.br +0 -0
- package/app/dist/assets/workspace-checkout-display-Bvm9hISZ.js.gz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Lr as t,Or as n,Zr as r,mi as i,ni as a,ti as o}from"./boot-vendor-BBLG7GwQ.js";import{n as s,t as c}from"./ThreadTerminalView-VSstFotF.js";import{$f as l,$h as u,Bi as d,Bt as f,En as p,Fi as m,Hi as h,Kn as g,Lt as _,Nt as v,Po as y,Pt as b,Qd as x,Qm as S,Rg as C,Ro as w,Sa as T,Ta as E,Tc as D,Ud as O,Vg as k,Vi as A,Vr as j,Ym as M,a_ as N,ap as P,bd as F,cf as I,ch as L,fi as R,ft as z,jo as B,lt as V,md as H,nh as U,o as W,oh as G,pf as K,r as q,sf as ee,uf as te,xh as J,yt as Y,zm as X,zo as ne,zt as re}from"./index-Bfkd7WaZ.js";import{n as ie}from"./resource-list-DKdrv-JU.js";import{t as ae}from"./AddMachineDialog-BpnPQjZ9.js";import{N as oe,k as se,n as ce,v as le,y as ue}from"./plugin-ui-mdaPclkM.js";import{n as de,r as fe}from"./thread-terminal-queries-DOflC4hl.js";import{t as pe}from"./expandable-text-CoDH4ptt.js";import{t as me}from"./checkbox-CB54Ucjt.js";import{t as he}from"./switch-xFGnSGwy.js";import{t as ge}from"./onboarding-telemetry-BVjT5I18.js";var Z=e(i(),1),Q=n(),_e=[{id:`agent`,label:`Agent`},{id:`projects`,label:`Projects`},{id:`plugins`,label:`Plugins`},{id:`devices`,label:`Devices`}],ve=[{entryId:`browser-automation`,pluginId:`browser-automation`},{entryId:`workflows`,pluginId:`workflows`},{entryId:`monaco-editor`,pluginId:`monaco-editor`},{entryId:`prompt-library`,pluginId:`bb--prompt-library`},{entryId:`agent-annotations`,pluginId:`agent-annotations`},{entryId:`ask-user-question`,pluginId:`ask-user-question`}],ye=`connect`;function be({health:e,cliStatus:t,installing:n,installFailure:r,signingIn:i,signInFailed:a,installInfoPending:o}){if(e.status===`ready`){let t=[e.accountEmail,e.planLabel].filter(e=>e!==null&&e!==``).join(` · `);return{status:`ready`,detail:t===``?null:t}}if(n)return{status:`installing`};let s=t?.installAction!==null&&t?.installAction!==void 0;if(r!==null)return{status:`installFailed`,message:r,canInstall:s};let c=t===void 0&&o;switch(e.status){case`not_installed`:return c?{status:`checking`}:{status:`install`,canInstall:s};case`unsupported_version`:return c?{status:`checking`}:{status:`update`,detail:e.minimumSupportedVersion===null?e.statusMessage:`Needs version ${e.minimumSupportedVersion} or newer`,canInstall:s};case`unauthenticated`:case`expired`:return i?{status:`signingIn`}:{status:`signIn`,reason:a?`failed`:e.status===`expired`?`expired`:`signedOut`,canSignIn:e.loginCommand!==null};case`unknown`:return{status:`unknown`,message:e.statusMessage}}}function xe(e,t){return t&&e.localLoginCommand!==null?e.localLoginCommand:e.loginCommand}function Se(e){return e?.some(e=>e.status===`ready`)??!1}var Ce=7*864e5,we=5;function Te(e,t){let n=e.filter(e=>e.projectId===null),r=n.filter(e=>t-Date.parse(e.lastActivityAt)<=Ce),i=r.length>0?r.slice(0,we):n.slice(0,1);return new Set(i.map(e=>e.path))}function Ee(e){if(e===null)return null;let t=/^(?:[a-z+]+:\/\/)?(?:[^@/]+@)?[^/:]+[/:](.+?)(?:\.git)?\/?$/iu.exec(e.trim())?.[1];if(t===void 0)return null;let n=t.split(`/`).filter(e=>e!==``);return n.length<2?null:n.slice(-2).join(`/`)}function De(e){let t=e?.providers.find(e=>e.pluginId===ye);return t===void 0?{status:`unavailable`}:t.availability?.status===`available`&&t.availability.serverUrl!==void 0?{status:`on`,url:t.availability.serverUrl}:{status:`off`}}var Oe=/\u001b\][^\u0007\u001b]*(?:\u0007|\u001b\\)/gu,ke=/\u001b\[[0-9;?]*[ -/]*[@-~]/gu,Ae=/\u001b\]8;[^;\u0007\u001b]*;(https:\/\/[^\u0007\u001b]+)(?:\u0007|\u001b\\)/u,je=/https:\/\/[^\s\u0007\u001b"'<>]+/u,Me=/(?<![A-Za-z0-9-])[A-Z0-9]{4,5}-[A-Z0-9]{4,5}(?![A-Za-z0-9-])/u,Ne=/paste (?:the |your )?(?:authorization )?code/iu;function Pe(e){let t=e.replace(Oe,``).replace(ke,``).replace(/\r/gu,``),n=Ae.exec(e)?.[1]??je.exec(t)?.[0]??null,r=t.replace(new RegExp(je.source,`gu`),` `);return{url:n,userCode:Me.exec(r)?.[0]??null,acceptsPastedCode:Ne.test(r)}}var $=e(a(),1),Fe=`mx-auto w-full max-w-[600px] px-4 @min-[36rem]/onboarding:px-6`;function Ie(e){let t=(0,Q.c)(59),{step:n,compact:r,reserveMacosTrafficLights:i,title:a,description:o,children:s,footerNote:c,primaryLabel:l,primaryDisabled:u,primaryBusy:d,secondaryLabel:f,onPrimary:p,onSecondary:m,onBack:h,onSelectStep:g,onSkipAll:_}=e,v=r===void 0?!1:r,y=i===void 0?!1:i,b=u===void 0?!1:u,C=d===void 0?!1:d,w;t[0]===n?w=t[1]:(w=e=>e.id===n,t[0]=n,t[1]=w);let T=_e.findIndex(w),E;t[2]===y?E=t[3]:(E=G(`grid h-14 shrink-0 grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-2 pr-4 @min-[36rem]/onboarding:gap-3`,y?G(ee,I):`pl-4`),t[2]=y,t[3]=E);let D;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,$.jsx)(`img`,{src:se,alt:`bb`,draggable:!1,className:`h-5 w-6 shrink-0 select-none object-contain dark:invert`}),t[4]=D):D=t[4];let O;t[5]!==T||t[6]!==g?(O=_e.map((e,t)=>{let n=t<T,r=t===T;return(0,$.jsxs)(`button`,{type:`button`,disabled:!n,"aria-current":r?`step`:void 0,"aria-label":e.label,onClick:()=>g(e.id),className:G(`flex shrink-0 items-center gap-1.5 rounded-full px-1 py-1 text-xs font-medium transition-colors @min-[36rem]/onboarding:px-2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,x,r&&`text-foreground`,n&&`text-subtle-foreground hover:bg-state-hover`,!r&&!n&&`text-muted-foreground`),children:[(0,$.jsx)(`span`,{className:G(`flex size-5 items-center justify-center rounded-full text-xs tabular-nums`,r&&`bg-foreground text-background`,n&&`bg-success text-background`,!r&&!n&&`border border-border`),children:n?(0,$.jsx)(S,{name:`Check`,"aria-hidden":!0,className:`size-3`}):t+1}),(0,$.jsx)(`span`,{className:G(!r&&`sr-only @min-[36rem]/onboarding:not-sr-only`),children:e.label})]},e.id)}),t[5]=T,t[6]=g,t[7]=O):O=t[7];let k;t[8]===O?k=t[9]:(k=(0,$.jsx)(`nav`,{"aria-label":`Setup steps`,className:`col-start-2 row-start-1 flex min-w-0 items-center justify-center gap-1`,children:O}),t[8]=O,t[9]=k);let A;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(A=G(`col-start-3 row-start-1 shrink-0 text-muted-foreground`,x),t[10]=A):A=t[10];let j,M;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(`span`,{className:`@min-[36rem]/onboarding:hidden`,children:`Skip`}),M=(0,$.jsx)(`span`,{className:`hidden @min-[36rem]/onboarding:inline`,children:`Skip setup`}),t[11]=j,t[12]=M):(j=t[11],M=t[12]);let N;t[13]===_?N=t[14]:(N=(0,$.jsxs)(U,{variant:`ghost`,size:`sm`,className:A,onClick:_,children:[j,M]}),t[13]=_,t[14]=N);let P;t[15]!==N||t[16]!==E||t[17]!==k?(P=(0,$.jsxs)(`header`,{className:E,children:[D,k,N]}),t[15]=N,t[16]=E,t[17]=k,t[18]=P):P=t[18];let F=v?`py-4`:`py-6`,L;t[19]===F?L=t[20]:(L=G(Fe,`flex flex-col gap-6`,F),t[19]=F,t[20]=L);let R;t[21]===a?R=t[22]:(R=(0,$.jsx)(`h1`,{className:`text-2xl font-semibold tracking-tight`,children:a}),t[21]=a,t[22]=R);let z;t[23]===o?z=t[24]:(z=(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:o}),t[23]=o,t[24]=z);let B;t[25]!==R||t[26]!==z?(B=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[R,z]}),t[25]=R,t[26]=z,t[27]=B):B=t[27];let V;t[28]!==s||t[29]!==L||t[30]!==B?(V=(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,$.jsxs)(`div`,{className:L,children:[B,s]})}),t[28]=s,t[29]=L,t[30]=B,t[31]=V):V=t[31];let H;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(H=G(Fe,`flex items-center gap-1 py-3 @min-[36rem]/onboarding:gap-2`),t[32]=H):H=t[32];let W;t[33]===h?W=t[34]:(W=h?(0,$.jsxs)(U,{variant:`ghost`,size:`sm`,onClick:h,children:[(0,$.jsx)(S,{name:`ArrowLeft`,"aria-hidden":!0}),`Back`]}):null,t[33]=h,t[34]=W);let K;t[35]===c?K=t[36]:(K=(0,$.jsx)(`span`,{className:`min-w-0 flex-1 text-xs text-muted-foreground`,children:c}),t[35]=c,t[36]=K);let q;t[37]!==m||t[38]!==f?(q=f&&m?(0,$.jsx)(U,{variant:`ghost`,size:`sm`,onClick:m,children:f}):null,t[37]=m,t[38]=f,t[39]=q):q=t[39];let te=b||C,J;t[40]===C?J=t[41]:(J=C?(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`animate-spin`}):null,t[40]=C,t[41]=J);let Y;t[42]===C?Y=t[43]:(Y=C?null:(0,$.jsx)(S,{name:`ArrowRight`,"aria-hidden":!0}),t[42]=C,t[43]=Y);let X;t[44]!==p||t[45]!==l||t[46]!==te||t[47]!==J||t[48]!==Y?(X=(0,$.jsxs)(U,{size:`sm`,disabled:te,onClick:p,children:[J,l,Y]}),t[44]=p,t[45]=l,t[46]=te,t[47]=J,t[48]=Y,t[49]=X):X=t[49];let ne;t[50]!==W||t[51]!==K||t[52]!==q||t[53]!==X?(ne=(0,$.jsx)(`footer`,{className:`shrink-0 border-t border-border-hairline`,children:(0,$.jsxs)(`div`,{className:H,children:[W,K,q,X]})}),t[50]=W,t[51]=K,t[52]=q,t[53]=X,t[54]=ne):ne=t[54];let re;return t[55]!==P||t[56]!==V||t[57]!==ne?(re=(0,$.jsxs)(`div`,{"data-testid":`onboarding`,className:`@container/onboarding flex min-h-0 flex-1 flex-col bg-background text-foreground`,children:[P,V,ne]}),t[55]=P,t[56]=V,t[57]=ne,t[58]=re):re=t[58],re}function Le(e){switch(e.status){case`checking`:return`Checking…`;case`ready`:return e.detail??`Signed in`;case`signIn`:return e.reason===`failed`?`Sign-in didn't finish · try again`:e.reason===`expired`?`Installed · your session expired`:`Installed · not signed in`;case`signingIn`:return`Finish signing in below`;case`install`:return`Not installed`;case`update`:return e.detail??`Update needed`;case`installing`:return`Installing…`;case`installFailed`:return e.message;case`unknown`:return e.message??`Couldn't check this agent`}}function Re(e){let t=(0,Q.c)(57),{agent:n,onSignIn:r,onInstall:i,onViewInstallLog:a,onCancelSignIn:o}=e,{state:s}=n,c=n.id,l=s.status===`installFailed`?`grid grid-cols-[1.5rem_minmax(0,1fr)] @min-[36rem]/onboarding:flex`:`flex`,u;t[0]===l?u=t[1]:(u=G(`items-center gap-3`,l),t[0]=l,t[1]=u);let d=n.provider,f=s.status===`install`&&`text-muted-foreground`,p;t[2]===f?p=t[3]:(p=G(`size-6`,f),t[2]=f,t[3]=p);let m;t[4]!==n.provider||t[5]!==p?(m=(0,$.jsx)(Y,{providerKind:`agent`,provider:d,className:p}),t[4]=n.provider,t[5]=p,t[6]=m):m=t[6];let h;t[7]===n.name?h=t[8]:(h=(0,$.jsx)(`span`,{className:`text-sm font-medium`,children:n.name}),t[7]=n.name,t[8]=h);let g=s.status===`installFailed`&&`text-destructive-text`,_;t[9]===g?_=t[10]:(_=G(`text-xs text-muted-foreground`,g),t[9]=g,t[10]=_);let v;t[11]===s?v=t[12]:(v=Le(s),t[11]=s,t[12]=v);let y;t[13]!==_||t[14]!==v?(y=(0,$.jsx)(pe,{expandLabel:`Show details`,className:_,children:v}),t[13]=_,t[14]=v,t[15]=y):y=t[15];let b;t[16]!==y||t[17]!==h?(b=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[h,y]}),t[16]=y,t[17]=h,t[18]=b):b=t[18];let x;t[19]===s.status?x=t[20]:(x=s.status===`checking`||s.status===`installing`?(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-4 animate-spin text-muted-foreground`}):null,t[19]=s.status,t[20]=x);let C;t[21]===s.status?C=t[22]:(C=s.status===`ready`?(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs font-medium text-success`,children:[(0,$.jsx)(S,{name:`CircleCheck`,"aria-hidden":!0,className:`size-4`}),`Ready`]}):null,t[21]=s.status,t[22]=C);let w;t[23]!==n.id||t[24]!==r||t[25]!==s.canSignIn||t[26]!==s.status?(w=s.status===`signIn`&&s.canSignIn?(0,$.jsx)(U,{size:`sm`,onClick:()=>r(n.id),children:`Sign in`}):null,t[23]=n.id,t[24]=r,t[25]=s.canSignIn,t[26]=s.status,t[27]=w):w=t[27];let T;t[28]!==n.id||t[29]!==a||t[30]!==s.status?(T=s.status===`installFailed`?(0,$.jsx)(U,{size:`sm`,variant:`ghost`,onClick:()=>a(n.id),children:`View log`}):null,t[28]=n.id,t[29]=a,t[30]=s.status,t[31]=T):T=t[31];let E;t[32]!==n.id||t[33]!==i||t[34]!==s.canInstall||t[35]!==s.status?(E=(s.status===`install`||s.status===`update`||s.status===`installFailed`)&&s.canInstall?(0,$.jsxs)(U,{size:`sm`,variant:`outline`,onClick:()=>i(n.id),children:[(0,$.jsx)(S,{name:`Download`,"aria-hidden":!0}),s.status===`installFailed`?`Retry`:s.status===`update`?`Update`:`Install`]}):null,t[32]=n.id,t[33]=i,t[34]=s.canInstall,t[35]=s.status,t[36]=E):E=t[36];let D;t[37]!==n.id||t[38]!==o||t[39]!==s.status?(D=s.status===`signingIn`?(0,$.jsx)(U,{size:`sm`,variant:`ghost`,onClick:()=>o(n.id),children:`Cancel`}):null,t[37]=n.id,t[38]=o,t[39]=s.status,t[40]=D):D=t[40];let O;t[41]!==x||t[42]!==C||t[43]!==w||t[44]!==T||t[45]!==E||t[46]!==D?(O=(0,$.jsxs)(`div`,{className:`col-start-2 flex shrink-0 items-center justify-end gap-2`,children:[x,C,w,T,E,D]}),t[41]=x,t[42]=C,t[43]=w,t[44]=T,t[45]=E,t[46]=D,t[47]=O):O=t[47];let k;t[48]!==b||t[49]!==O||t[50]!==u||t[51]!==m?(k=(0,$.jsxs)(`div`,{className:u,children:[m,b,O]}),t[48]=b,t[49]=O,t[50]=u,t[51]=m,t[52]=k):k=t[52];let A;return t[53]!==n.expanded||t[54]!==n.id||t[55]!==k?(A=(0,$.jsxs)(`li`,{className:`px-3 py-3`,"data-agent-id":c,children:[k,n.expanded]}),t[53]=n.expanded,t[54]=n.id,t[55]=k,t[56]=A):A=t[56],A}function ze(e){let t=(0,Q.c)(21),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({machineName:r,agents:n,onRecheck:i,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(S,{name:`Laptop`,"aria-hidden":!0,className:`size-3.5`}),t[5]=o):o=t[5];let s=r===null?`Waiting for this computer to connect…`:`On ${r}`,c;t[6]===s?c=t[7]:(c=(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:s}),t[6]=s,t[7]=c);let l;t[8]!==r||t[9]!==i?(l=r===null?null:(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:[(0,$.jsx)(S,{name:`ArrowReloadHorizontal`,"aria-hidden":!0,className:`size-3.5`}),`Check again`]}),t[8]=r,t[9]=i,t[10]=l):l=t[10];let u;t[11]!==c||t[12]!==l?(u=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[o,c,l]}),t[11]=c,t[12]=l,t[13]=u):u=t[13];let d;t[14]!==n||t[15]!==a?(d=n===null?(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:[0,1,2].map(Be)}):(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:n.map(e=>(0,$.jsx)(Re,{agent:e,...a},e.id))}),t[14]=n,t[15]=a,t[16]=d):d=t[16];let f;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Don't see your agent? bb picks up other ACP agents, such as opencode, once they are installed.`}),t[17]=f):f=t[17];let p;return t[18]!==u||t[19]!==d?(p=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[u,d,f]}),t[18]=u,t[19]=d,t[20]=p):p=t[20],p}function Be(e){return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-3`,children:[(0,$.jsx)(`span`,{className:`size-6 rounded-md bg-state-hover`}),(0,$.jsxs)(`span`,{className:`flex flex-1 flex-col gap-1.5`,children:[(0,$.jsx)(`span`,{className:`h-3 w-28 rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-2.5 w-40 rounded-sm bg-state-hover`})]})]},e)}function Ve(e){let t=(0,Q.c)(31),{agentName:n,guide:r,code:i,codeSubmitted:a,terminalVisible:o,terminal:s,onCodeChange:c,onSubmitCode:l,onOpenUrl:u,onCopy:d,onToggleTerminal:f,alternateLabel:p,onUseAlternate:m}=e,h=r?.url??null,g=r?.userCode??null,_=r?.acceptsPastedCode??!1,v;t[0]!==_||t[1]!==n||t[2]!==i||t[3]!==c||t[4]!==d||t[5]!==u||t[6]!==l||t[7]!==o||t[8]!==h||t[9]!==g?(v=(0,$.jsx)(`div`,{className:`flex flex-col gap-3 p-3`,children:h===null?o?(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Sign in to `,n,` in the terminal below.`]}):(0,$.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}),`Starting `,n,` sign-in…`]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:g===null?_?`Sign in on the ${n} page, then paste the code it shows you.`:`Finish signing in on the ${n} page.`:`Open the ${n} sign-in page and enter this code.`}),g===null?null:(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-2 rounded-md border border-border bg-background px-3 py-3`,children:[(0,$.jsx)(`span`,{"aria-label":`${n} sign-in code`,className:`select-all font-mono text-xl font-semibold tracking-widest`,children:g}),(0,$.jsx)(U,{variant:`ghost`,size:`sm`,"aria-label":`Copy sign-in code`,onClick:()=>d(g),children:(0,$.jsx)(S,{name:`Copy`,"aria-hidden":!0})})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(U,{size:`sm`,onClick:()=>u(h),children:[`Open sign-in page`,(0,$.jsx)(S,{name:`ExternalLink`,"aria-hidden":!0})]}),(0,$.jsxs)(U,{variant:`ghost`,size:`sm`,className:`text-muted-foreground`,onClick:()=>d(h),children:[(0,$.jsx)(S,{name:`Copy`,"aria-hidden":!0}),`Copy link`]})]}),_&&g===null?(0,$.jsxs)(`form`,{className:`flex items-center gap-2`,onSubmit:e=>{e.preventDefault(),l()},children:[(0,$.jsx)(`input`,{value:i,onChange:e=>c(e.target.value),"aria-label":`${n} authorization code`,placeholder:`Paste the code here`,autoComplete:`off`,spellCheck:!1,className:`h-8 min-w-0 flex-1 rounded-md border border-input bg-background px-2.5 font-mono text-xs outline-none placeholder:font-sans placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring`}),(0,$.jsx)(U,{type:`submit`,size:`sm`,variant:`outline`,disabled:i.trim().length===0,children:`Complete`})]}):null]})}),t[0]=_,t[1]=n,t[2]=i,t[3]=c,t[4]=d,t[5]=u,t[6]=l,t[7]=o,t[8]=h,t[9]=g,t[10]=v):v=t[10];let y;t[11]!==s||t[12]!==o?(y=o?(0,$.jsx)(`div`,{className:`h-48 border-t border-border-hairline`,children:s}):null,t[11]=s,t[12]=o,t[13]=y):y=t[13];let b;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}),t[14]=b):b=t[14];let x=a?`Finishing sign-in…`:`bb continues on its own as soon as you're signed in.`,C;t[15]===x?C=t[16]:(C=(0,$.jsx)(`span`,{className:`min-w-0 flex-1`,children:x}),t[15]=x,t[16]=C);let w;t[17]!==p||t[18]!==m?(w=p===null?null:(0,$.jsx)(`button`,{type:`button`,onClick:m,className:`shrink-0 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:p}),t[17]=p,t[18]=m,t[19]=w):w=t[19];let T=o?`Hide terminal`:`Show terminal`,E;t[20]!==f||t[21]!==T?(E=(0,$.jsx)(`button`,{type:`button`,onClick:f,className:`shrink-0 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:T}),t[20]=f,t[21]=T,t[22]=E):E=t[22];let D;t[23]!==C||t[24]!==w||t[25]!==E?(D=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-border-hairline px-3 py-2 text-xs text-muted-foreground`,children:[b,C,w,E]}),t[23]=C,t[24]=w,t[25]=E,t[26]=D):D=t[26];let O;return t[27]!==v||t[28]!==y||t[29]!==D?(O=(0,$.jsxs)(`div`,{className:`mt-3 overflow-hidden rounded-md border border-border bg-surface-recessed`,children:[v,y,D]}),t[27]=v,t[28]=y,t[29]=D,t[30]=O):O=t[30],O}function He(e){let t=(0,Q.c)(49),{status:n,repos:r,selectedIds:i,onToggle:a,onSelectAll:o,onSelectNone:s,onAddFolder:c,onRetry:l}=e;if(n.kind===`scanning`){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}),`Looking for git repos you've touched recently…`]}),t[0]=e):e=t[0];let n;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[e,(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:[0,1,2,3].map(We)})]}),t[1]=n):n=t[1],n}if(n.kind===`error`||r.length===0){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(S,{name:`FolderGit`,"aria-hidden":!0,className:`size-6 text-muted-foreground`}),t[2]=e):e=t[2];let r=n.kind===`error`?n.message:`bb didn't find a git repo you've worked in over the last 30 days.`,i;t[3]===r?i=t[4]:(i=(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:r}),t[3]=r,t[4]=i);let a=n.kind===`error`?`Try again`:`Scan again`,o;t[5]!==l||t[6]!==a?(o=(0,$.jsx)(U,{size:`sm`,variant:`outline`,onClick:l,children:a}),t[5]=l,t[6]=a,t[7]=o):o=t[7];let s;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(S,{name:`FolderPlus`,"aria-hidden":!0}),t[8]=s):s=t[8];let u;t[9]===c?u=t[10]:(u=(0,$.jsxs)(U,{size:`sm`,variant:`outline`,onClick:c,children:[s,`Choose a folder`]}),t[9]=c,t[10]=u);let d;t[11]!==o||t[12]!==u?(d=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[o,u]}),t[11]=o,t[12]=u,t[13]=d):d=t[13];let f;return t[14]!==i||t[15]!==d?(f=(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 rounded-lg border border-dashed border-border px-6 py-10 text-center`,children:[e,i,d]}),t[14]=i,t[15]=d,t[16]=f):f=t[16],f}let u;t[17]===r?u=t[18]:(u=r.filter(Ue),t[17]=r,t[18]=u);let d=u.length,f;t[19]!==d||t[20]!==i.size?(f=(0,$.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[i.size,` of `,d,` selected`]}),t[19]=d,t[20]=i.size,t[21]=f):f=t[21];let p;t[22]===o?p=t[23]:(p=(0,$.jsx)(`button`,{type:`button`,className:`hover:text-foreground`,onClick:o,children:`Select all`}),t[22]=o,t[23]=p);let m;t[24]===s?m=t[25]:(m=(0,$.jsx)(`button`,{type:`button`,className:`hover:text-foreground`,onClick:s,children:`Select none`}),t[24]=s,t[25]=m);let h;t[26]!==f||t[27]!==p||t[28]!==m?(h=(0,$.jsxs)(`div`,{className:`flex items-center gap-3 text-xs text-muted-foreground`,children:[f,p,m]}),t[26]=f,t[27]=p,t[28]=m,t[29]=h):h=t[29];let g;if(t[30]!==a||t[31]!==r||t[32]!==i){let e;t[34]!==a||t[35]!==i?(e=e=>(0,$.jsx)(`li`,{children:(0,$.jsxs)(`label`,{className:G(`flex items-center gap-3 px-3 py-2.5`,e.added?`text-muted-foreground`:`cursor-pointer hover:bg-state-hover`),children:[(0,$.jsx)(me,{checked:e.added||i.has(e.id),disabled:e.added,onCheckedChange:()=>a(e.id)}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.name}),e.remote?(0,$.jsx)(`span`,{className:`truncate text-xs text-muted-foreground`,children:e.remote}):null]}),(0,$.jsx)(`span`,{className:`truncate font-mono text-xs text-muted-foreground`,children:e.path})]}),(0,$.jsx)(`span`,{className:`shrink-0 text-right text-xs tabular-nums text-muted-foreground`,children:e.added?`Already added`:e.lastActive})]})},e.id),t[34]=a,t[35]=i,t[36]=e):e=t[36],g=r.map(e),t[30]=a,t[31]=r,t[32]=i,t[33]=g}else g=t[33];let _;t[37]===g?_=t[38]:(_=(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:g}),t[37]=g,t[38]=_);let v;t[39]===n.truncated?v=t[40]:(v=n.truncated?(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`The scan ran out of time, so some repos may be missing.`}):null,t[39]=n.truncated,t[40]=v);let y;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(S,{name:`FolderPlus`,"aria-hidden":!0,className:`size-3.5`}),t[41]=y):y=t[41];let b;t[42]===c?b=t[43]:(b=(0,$.jsxs)(`button`,{type:`button`,onClick:c,className:`flex items-center gap-2 self-start rounded-md px-2 py-1 text-xs text-muted-foreground hover:bg-state-hover hover:text-foreground`,children:[y,`Add a folder that isn't listed`]}),t[42]=c,t[43]=b);let x;return t[44]!==b||t[45]!==h||t[46]!==_||t[47]!==v?(x=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[h,_,v,b]}),t[44]=b,t[45]=h,t[46]=_,t[47]=v,t[48]=x):x=t[48],x}function Ue(e){return!e.added}function We(e){return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-3`,children:[(0,$.jsx)(`span`,{className:`size-4 rounded-sm bg-state-hover`}),(0,$.jsxs)(`span`,{className:`flex flex-1 flex-col gap-1.5`,children:[(0,$.jsx)(`span`,{className:`h-3 w-32 rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-2.5 w-56 rounded-sm bg-state-hover`})]})]},e)}function Ge(e){let t=(0,Q.c)(8),{compact:n,children:r}=e,i=n!==void 0&&n?`grid-cols-1`:`grid-cols-[repeat(auto-fit,minmax(min(100%,16rem),1fr))]`,a;t[0]===i?a=t[1]:(a=G(`w-full gap-2`,i),t[0]=i,t[1]=a);let o;t[2]!==r||t[3]!==a?(o=(0,$.jsx)(ie,{className:a,children:r}),t[2]=r,t[3]=a,t[4]=o):o=t[4];let s;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(S,{name:`Puzzle`,"aria-hidden":!0,className:`size-3.5 shrink-0`}),`Want something that isn't here? Ask an agent to build a plugin at any time.`]}),t[5]=s):s=t[5];let c;return t[6]===o?c=t[7]:(c=(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[o,s]}),t[6]=o,t[7]=c),c}function Ke(e){let t=(0,Q.c)(2),{count:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)($.Fragment,{children:Array.from({length:n},qe)}),t[0]=n,t[1]=r),r}function qe(e,t){return(0,$.jsxs)(`div`,{className:`flex min-h-36 flex-col gap-3 rounded-xl border border-border p-3`,children:[(0,$.jsx)(`span`,{className:`h-4 w-32 rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-3 w-full rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-3 w-2/3 rounded-sm bg-state-hover`})]},t)}function Je(e){let t=(0,Q.c)(30),{name:n,description:r,icon:i,enabled:a,pending:o,unavailableReason:s,onToggle:c}=e,l=o||s!==null,u;t[0]!==i||t[1]!==n?(u=(0,$.jsx)(ce,{compact:!0,entry:{displayName:n,...i}}),t[0]=i,t[1]=n,t[2]=u):u=t[2];let d=s??r,f;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(le,{name:`BB Official`,github:null,official:!0,children:`BB Official`}),t[3]=f):f=t[3];let p=!l&&`cursor-pointer`,m;t[4]===p?m=t[5]:(m=G(`flex items-center gap-2`,p),t[4]=p,t[5]=m);let h;t[6]!==a||t[7]!==o?(h=o?(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}):a?`On`:`Off`,t[6]=a,t[7]=o,t[8]=h):h=t[8];let g=`Enable ${n}`,_;t[9]!==l||t[10]!==a||t[11]!==c||t[12]!==g?(_=(0,$.jsx)(he,{checked:a,disabled:l,onCheckedChange:c,"aria-label":g}),t[9]=l,t[10]=a,t[11]=c,t[12]=g,t[13]=_):_=t[13];let v;t[14]!==m||t[15]!==h||t[16]!==_?(v=(0,$.jsxs)(`label`,{className:m,children:[h,_]}),t[14]=m,t[15]=h,t[16]=_,t[17]=v):v=t[17];let y=`${a?`Turn off`:`Turn on`} ${n}`,b;t[18]!==l||t[19]!==a||t[20]!==c?(b=()=>{l||c(!a)},t[18]=l,t[19]=a,t[20]=c,t[21]=b):b=t[21];let x;return t[22]!==l||t[23]!==n||t[24]!==u||t[25]!==y||t[26]!==b||t[27]!==d||t[28]!==v?(x=(0,$.jsx)(ue,{leading:u,title:n,description:d,descriptionLines:`expandable`,disabled:l,byline:f,footerAction:v,openLabel:y,onOpen:b}),t[22]=l,t[23]=n,t[24]=u,t[25]=y,t[26]=b,t[27]=d,t[28]=v,t[29]=x):x=t[29],x}function Ye(e){let t=(0,Q.c)(11),{value:n,onCopy:r}=e,i;t[0]===n?i=t[1]:(i=(0,$.jsx)(`code`,{className:`min-w-0 flex-1 truncate font-mono text-xs`,children:n}),t[0]=n,t[1]=i);let a;t[2]!==r||t[3]!==n?(a=()=>r(n),t[2]=r,t[3]=n,t[4]=a):a=t[4];let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(S,{name:`Copy`,"aria-hidden":!0}),t[5]=o):o=t[5];let s;t[6]===a?s=t[7]:(s=(0,$.jsx)(U,{variant:`ghost`,size:`sm`,"aria-label":`Copy address`,onClick:a,children:o}),t[6]=a,t[7]=s);let c;return t[8]!==i||t[9]!==s?(c=(0,$.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 rounded-md border border-border bg-surface-recessed py-1 pl-3 pr-1`,children:[i,s]}),t[8]=i,t[9]=s,t[10]=c):c=t[10],c}function Xe(e){let t=(0,Q.c)(16),{icon:n,title:r,description:i,action:a,children:o}=e,s;t[0]===n?s=t[1]:(s=(0,$.jsx)(S,{name:n,"aria-hidden":!0,className:`size-5 shrink-0 text-subtle-foreground`}),t[0]=n,t[1]=s);let c;t[2]===r?c=t[3]:(c=(0,$.jsx)(`span`,{className:`text-sm font-medium`,children:r}),t[2]=r,t[3]=c);let l;t[4]===i?l=t[5]:(l=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:i}),t[4]=i,t[5]=l);let u;t[6]!==c||t[7]!==l?(u=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[c,l]}),t[6]=c,t[7]=l,t[8]=u):u=t[8];let d;t[9]!==a||t[10]!==s||t[11]!==u?(d=(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[s,u,a]}),t[9]=a,t[10]=s,t[11]=u,t[12]=d):d=t[12];let f;return t[13]!==o||t[14]!==d?(f=(0,$.jsxs)(`li`,{className:`px-3 py-3`,children:[d,o]}),t[13]=o,t[14]=d,t[15]=f):f=t[15],f}function Ze(e){let t=(0,Q.c)(33),{connect:n,connectSetup:r,connectSetupOpen:i,otherMachineCount:a,mobileLinks:o,onToggleConnectSetup:s,onCopyConnectUrl:c,onAddMachine:l}=e,u=n.status===`unavailable`?`bb connect is turned off on this server. Enable its plugin to get a private getbb.app address.`:`bb connect gives this bb a private getbb.app address that only you can open.`,d;t[0]!==n.status||t[1]!==i||t[2]!==s?(d=n.status===`on`?(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs font-medium text-success`,children:[(0,$.jsx)(S,{name:`CircleCheck`,"aria-hidden":!0,className:`size-4`}),`On`]}):n.status===`off`?(0,$.jsx)(U,{size:`sm`,variant:`outline`,onClick:s,children:i?`Hide`:`Set up`}):null,t[0]=n.status,t[1]=i,t[2]=s,t[3]=d):d=t[3];let f;t[4]!==n.status||t[5]!==n.url||t[6]!==c?(f=n.status===`on`?(0,$.jsx)(Ye,{value:n.url,onCopy:c}):null,t[4]=n.status,t[5]=n.url,t[6]=c,t[7]=f):f=t[7];let p;t[8]!==n.status||t[9]!==r||t[10]!==i?(p=n.status===`off`&&i?(0,$.jsx)(`div`,{className:`mt-3 rounded-md border border-border p-3`,children:r}):null,t[8]=n.status,t[9]=r,t[10]=i,t[11]=p):p=t[11];let m;t[12]!==u||t[13]!==d||t[14]!==f||t[15]!==p?(m=(0,$.jsxs)(Xe,{icon:`ComputerCloud`,title:`Open bb from any browser`,description:u,action:d,children:[f,p]}),t[12]=u,t[13]=d,t[14]=f,t[15]=p,t[16]=m):m=t[16];let h=a>0?`${a} other ${a===1?`machine is`:`machines are`} already connected. Add more to run agents on a server, a desktop, or a cloud box.`:`Run agents on a server, a desktop, or a cloud box and steer them all from here.`,g;t[17]===l?g=t[18]:(g=(0,$.jsx)(U,{size:`sm`,variant:`outline`,onClick:l,children:`Add machine`}),t[17]=l,t[18]=g);let _;t[19]!==h||t[20]!==g?(_=(0,$.jsx)(Xe,{icon:`Laptop`,title:`Add another machine`,description:h,action:g}),t[19]=h,t[20]=g,t[21]=_):_=t[21];let v;t[22]===o.ios?v=t[23]:(v=(0,$.jsx)(U,{size:`sm`,variant:`outline`,asChild:!0,children:(0,$.jsx)(`a`,{href:o.ios,target:`_blank`,rel:`noreferrer`,children:`iOS`})}),t[22]=o.ios,t[23]=v);let y;t[24]===o.android?y=t[25]:(y=(0,$.jsx)(U,{size:`sm`,variant:`outline`,asChild:!0,children:(0,$.jsx)(`a`,{href:o.android,target:`_blank`,rel:`noreferrer`,children:`Android`})}),t[24]=o.android,t[25]=y);let b;t[26]!==y||t[27]!==v?(b=(0,$.jsx)(Xe,{icon:`Smartphone`,title:`Get the mobile app`,description:`Get a push when a thread needs you.`,action:(0,$.jsxs)(`span`,{className:`flex items-center gap-2`,children:[v,y]})}),t[26]=y,t[27]=v,t[28]=b):b=t[28];let x;return t[29]!==b||t[30]!==m||t[31]!==_?(x=(0,$.jsxs)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:[m,_,b]}),t[29]=b,t[30]=m,t[31]=_,t[32]=x):x=t[32],x}function Qe({entry:e,onContinue:t,onSettled:n}){let r=j(),i=g(),a=P({kind:`new-thread`}),o=(0,Z.useRef)(null),[s,c]=(0,Z.useState)(!1);return(0,Z.useEffect)(()=>{let t={active:!0,canSelect:e===`first_run`&&X(a.getCurrent())};o.current=t;let n=()=>{X(a.getCurrent())||(t.canSelect=!1)};n();let r=a.subscribe(n);return()=>{t.active=!1,r()}},[a,e]),{importing:s,importProjects:async(e,a)=>{let l=o.current;if(s||!l?.active)return;c(!0);let u=null;try{for(let t of a){if(!l.active)return;u=(await r.mutateAsync({name:t.name,source:{type:`local_path`,hostId:e,path:t.path}})).id}}catch{return}finally{l.active&&(l.canSelect&&u!==null&&i(u),c(!1),n())}l.active&&t()}}}var $e=3e3,et=200,tt=14,nt=1e3,rt=64*1024,it=6e3,at=`Install failed`,ot=1e4;function st(e){let t=new TextDecoder;return e.map(e=>t.decode(s(e.dataBase64),{stream:!0})).join(``)}function ct(e){return btoa(Array.from(new TextEncoder().encode(e),e=>String.fromCharCode(e)).join(``))}function lt(e){let t=(0,Q.c)(40),{agentName:n,session:i,alternate:a,onUseAlternate:o,onExit:s}=e,l;t[0]===i.id?l=t[1]:(l=u(i.id),t[0]=i.id,t[1]=l);let d;t[2]===i.id?d=t[3]:(d=e=>{let{signal:t}=e;return H.terminals.output({terminalId:i.id,tailBytes:rt,signal:t})},t[2]=i.id,t[3]=d);let f;t[4]!==l||t[5]!==d?(f={queryKey:l,queryFn:d,refetchInterval:nt,gcTime:0,retry:!1},t[4]=l,t[5]=d,t[6]=f):f=t[6];let p=r(f).data,m;t[7]===p?m=t[8]:(m=p===void 0?null:Pe(st(p.chunks)),t[7]=p,t[8]=m);let h=m,[g,_]=(0,Z.useState)(``),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(!1),w,T;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>{let e=window.setTimeout(()=>C(!0),it);return()=>window.clearTimeout(e)},T=[],t[9]=w,t[10]=T):(w=t[9],T=t[10]),(0,Z.useEffect)(w,T);let E=b??(S&&(h===null||h.url===null)),D;t[11]===p?D=t[12]:(D=p!==void 0&&!k(p.status),t[11]=p,t[12]=D);let O=D,A=p?.exitCode??null,j,N;t[13]!==A||t[14]!==O||t[15]!==s?(j=()=>{O&&s(A)},N=[A,O,s],t[13]=A,t[14]=O,t[15]=s,t[16]=j,t[17]=N):(j=t[16],N=t[17]),(0,Z.useEffect)(j,N);let P;t[18]!==g||t[19]!==i.id?(P=()=>{let e=g.trim();e.length!==0&&(y(!0),H.terminals.input({terminalId:i.id,dataBase64:ct(`${e}\r`)}).catch(()=>{y(!1),M.error(`Couldn't send the code. Try again.`)}))},t[18]=g,t[19]=i.id,t[20]=P):P=t[20];let F=P,I;t[21]===i?I=t[22]:(I=(0,$.jsx)(c,{autoFocus:!1,isPanelOpen:!0,session:i}),t[21]=i,t[22]=I);let L;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(L=e=>{_(e),y(!1)},t[23]=L):L=t[23];let R;t[24]===E?R=t[25]:(R=()=>x(!E),t[24]=E,t[25]=R);let B=a?.label??null,V;t[26]!==a||t[27]!==o?(V=()=>{a!==null&&o(a.method)},t[26]=a,t[27]=o,t[28]=V):V=t[28];let U;return t[29]!==n||t[30]!==g||t[31]!==v||t[32]!==h||t[33]!==F||t[34]!==I||t[35]!==R||t[36]!==B||t[37]!==V||t[38]!==E?(U=(0,$.jsx)(Ve,{agentName:n,guide:h,code:g,codeSubmitted:v,terminalVisible:E,terminal:I,onCodeChange:L,onSubmitCode:F,onOpenUrl:z,onCopy:ut,onToggleTerminal:R,alternateLabel:B,onUseAlternate:V}),t[29]=n,t[30]=g,t[31]=v,t[32]=h,t[33]=F,t[34]=I,t[35]=R,t[36]=B,t[37]=V,t[38]=E,t[39]=U):U=t[39],U}function ut(e){E(e)}async function dt({hostId:e,title:t}){let n=((await H.terminals.list({scope:{kind:`host_path`,hostId:e}}).catch(()=>null))?.sessions??[]).filter(e=>e.title===t&&k(e.status));await Promise.all(n.map(e=>H.terminals.close({mode:`force`,terminalId:e.id}).catch(()=>null)))}function ft(e){let t=(0,Q.c)(81),{chrome:n,entry:r,hostId:i,hostName:a,onContinue:o}=e,s=i!==null,c;t[0]===i?c=t[1]:(c=i===null?{}:{hostId:i},t[0]=i,t[1]=c);let l;t[2]!==s||t[3]!==c?(l={enabled:s,...c},t[2]=s,t[3]=c,t[4]=l):l=t[4];let u=w(l),d;t[5]===i?d=t[6]:(d=i===null?{enabled:!1}:{hostId:i},t[5]=i,t[6]=d);let p=ne(d),m;t[7]===i?m=t[8]:(m={hostId:i},t[7]=i,t[8]=m);let h=B(m),g=_(),{isLocalDaemonHost:y}=R(),x=fe(),S=de(),[C,T]=(0,Z.useState)(null),[E,D]=(0,Z.useState)(null),O=(0,Z.useRef)(null),{refetch:k}=u,{mutate:A}=S,{mutateAsync:j}=x,M;t[9]!==A||t[10]!==r||t[11]!==k?(M=e=>{let t=e===void 0?`cancelled`:e,n=O.current;n!==null&&(O.current=null,ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:t}}),T(null),A({mode:`force`,terminalId:n.session.id}),k())},t[9]=A,t[10]=r,t[11]=k,t[12]=M):M=t[12];let N=M,P=(0,Z.useRef)(0),F,I;t[13]===N?(F=t[14],I=t[15]):(F=()=>()=>{P.current+=1,N()},I=[N],t[13]=N,t[14]=F,t[15]=I),(0,Z.useEffect)(F,I);let L;t[16]===N?L=t[17]:(L=e=>{let t=O.current;t!==null&&e!==0&&D(t.providerId),N(e===0?`exited`:`failed`)},t[16]=N,t[17]=L);let z=L,V,U;t[18]!==k||t[19]!==C?(V=()=>{if(C===null)return;let e=window.setInterval(()=>{k()},$e);return()=>window.clearInterval(e)},U=[k,C],t[18]=k,t[19]=C,t[20]=V,t[21]=U):(V=t[20],U=t[21]),(0,Z.useEffect)(V,U);let W=u.data?.providers,G=C?.providerId??null,K;t[22]!==G||t[23]!==W?(K=G!==null&&W?.find(e=>e.providerId===G)?.status===`ready`,t[22]=G,t[23]=W,t[24]=K):K=t[24];let q=K,ee,te;t[25]!==N||t[26]!==q?(ee=()=>{q&&N(`ready`)},te=[N,q],t[25]=N,t[26]=q,t[27]=ee,t[28]=te):(ee=t[27],te=t[28]),(0,Z.useEffect)(ee,te);let{runningJobKey:J}=g,Y,X;t[29]!==k||t[30]!==J?(Y=()=>{J===null&&k()},X=[k,J],t[29]=k,t[30]=J,t[31]=Y,t[32]=X):(Y=t[31],X=t[32]),(0,Z.useEffect)(Y,X);let ie,ae,oe,se;if(t[33]!==h.data||t[34]!==h.isPending||t[35]!==j||t[36]!==N||t[37]!==r||t[38]!==z||t[39]!==i||t[40]!==g||t[41]!==y||t[42]!==p||t[43]!==C||t[44]!==E||t[45]!==W){ae=async(e,t)=>{let n=W?.find(t=>t.providerId===e);if(i===null||!n)return;let a=t??(y(i)?`local`:`remote`),o=xe(n,a===`local`);if(o===null)return;N(),D(null),P.current+=1;let s=P.current;ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:`started`}});let c=`Sign in to ${n.displayName}`;await dt({hostId:i,title:c});let l;try{l=await j({cols:et,rows:tt,title:c,start:{mode:`command`,command:o},target:{kind:`host_path`,hostId:i,cwd:null}})}catch{ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:`failed`}});return}if(P.current!==s){ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:`cancelled`}}),H.terminals.close({mode:`force`,terminalId:l.id}).catch(pt);return}let u={providerId:e,session:l,method:a,hasAlternateMethod:n.localLoginCommand!==null&&n.loginCommand!==null&&n.localLoginCommand!==n.loginCommand};O.current=u,T(u)};let e;t[50]!==h.data||t[51]!==i||t[52]!==g?(e=e=>{let t=h.data?.[e];if(i===null||t===void 0)return;let n=v({provider:e,status:t});n===null||!b(n)||g.startInstall({hostId:i,issue:n})},t[50]=h.data,t[51]=i,t[52]=g,t[53]=e):e=t[53],ie=e;let n;t[54]!==i||t[55]!==g.failuresByJobKey?(n=e=>{if(i===null)return;let t=g.failuresByJobKey.get(f(i,e));t!==void 0&&re(t.logDialogState)},t[54]=i,t[55]=g.failuresByJobKey,t[56]=n):n=t[56],se=n,oe=i===null||W===void 0?null:W.map(e=>{let t=p.data?.find(t=>t.id===e.providerId),n=f(i,e.providerId),r=C?.providerId===e.providerId;return{id:e.providerId,name:e.displayName,provider:t??{id:e.providerId,logoUrl:null},state:be({health:e,cliStatus:h.data?.[e.providerId],installing:g.runningJobKey===n||g.queuedJobKeys.has(n),installFailure:g.failuresByJobKey.has(n)?at:null,signingIn:r,signInFailed:E===e.providerId,installInfoPending:h.isPending}),expanded:r&&C!==null?(0,$.jsx)(lt,{agentName:e.displayName,session:C.session,alternate:C.hasAlternateMethod?C.method===`local`?{label:`Use a one-time code instead`,method:`remote`}:{label:`Use browser sign-in instead`,method:`local`}:null,onUseAlternate:t=>void ae(e.providerId,t),onExit:z},C.session.id):void 0}}),t[33]=h.data,t[34]=h.isPending,t[35]=j,t[36]=N,t[37]=r,t[38]=z,t[39]=i,t[40]=g,t[41]=y,t[42]=p,t[43]=C,t[44]=E,t[45]=W,t[46]=ie,t[47]=ae,t[48]=oe,t[49]=se}else ie=t[46],ae=t[47],oe=t[48],se=t[49];let ce=oe,le;t[57]===W?le=t[58]:(le=Se(W),t[57]=W,t[58]=le);let ue=le,pe=ce===null?u.isError:!ue,me=pe?`Threads can't start until one agent is ready.`:null,he=!ue,_e=pe?`Skip for now`:void 0,ve;t[59]===ae?ve=t[60]:(ve=e=>void ae(e),t[59]=ae,t[60]=ve);let ye;t[61]===N?ye=t[62]:(ye=()=>N(),t[61]=N,t[62]=ye);let Ce;t[63]!==h||t[64]!==k?(Ce=()=>{k(),h.refetch()},t[63]=h,t[64]=k,t[65]=Ce):Ce=t[65];let we;t[66]!==ce||t[67]!==a||t[68]!==ie||t[69]!==ve||t[70]!==ye||t[71]!==Ce||t[72]!==se?(we=(0,$.jsx)(ze,{machineName:a,agents:ce,onSignIn:ve,onInstall:ie,onViewInstallLog:se,onCancelSignIn:ye,onRecheck:Ce}),t[66]=ce,t[67]=a,t[68]=ie,t[69]=ve,t[70]=ye,t[71]=Ce,t[72]=se,t[73]=we):we=t[73];let Te;return t[74]!==n||t[75]!==o||t[76]!==me||t[77]!==he||t[78]!==_e||t[79]!==we?(Te=(0,$.jsx)(Ie,{...n,step:`agent`,title:`Connect a coding agent`,description:`bb runs the agents you already use. You need one that is installed and signed in on this computer.`,footerNote:me,primaryLabel:`Continue`,primaryDisabled:he,secondaryLabel:_e,onPrimary:o,onSecondary:o,children:we}),t[74]=n,t[75]=o,t[76]=me,t[77]=he,t[78]=_e,t[79]=we,t[80]=Te):Te=t[80],Te}function pt(){return null}function mt(e){let t=(0,Q.c)(83),{chrome:n,entry:r,hostId:i,projectIdsAtOpen:a,onBack:o,onContinue:s,onSkip:c}=e,l=d(i),u=p(),f=D(),[h,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(!1),[y]=(0,Z.useState)(xt),{refetch:b}=l,x;t[0]===b?x=t[1]:(x=()=>void b(),t[0]=b,t[1]=x);let S;t[2]!==r||t[3]!==s||t[4]!==x?(S={entry:r,onContinue:s,onSettled:x},t[2]=r,t[3]=s,t[4]=x,t[5]=S):S=t[5];let{importing:C,importProjects:w}=Qe(S),E=f.data?.projects,O;t[6]!==i||t[7]!==E?(O=i===null?[]:(E??[]).flatMap(e=>{let t=N(e.sources,i);return t===void 0?[]:[{id:e.id,name:e.name,path:t.path}]}),t[6]=i,t[7]=E,t[8]=O):O=t[8];let k=O,A=l.data?.repos,j;t[9]!==k||t[10]!==A?(j=A?.map(e=>e.projectId===null?{...e,projectId:k.find(t=>t.path===e.path)?.id??null}:e),t[9]=k,t[10]=A,t[11]=j):j=t[11];let M=j,P;t[12]===M?P=t[13]:(P=new Set((M??[]).filter(bt).map(yt)),t[12]=M,t[13]=P);let F=P,I;t[14]!==M||t[15]!==y||t[16]!==h?(I=h??Te(M??[],y),t[14]=M,t[15]=y,t[16]=h,t[17]=I):I=t[17];let L=I,R;t[18]===L?R=t[19]:(R=[...L],t[18]=L,t[19]=R);let z;t[20]!==F||t[21]!==R?(z=new Set(R.filter(e=>F.has(e))),t[20]=F,t[21]=R,t[22]=z):z=t[22];let B=z,V;t[23]===M?V=t[24]:(V=new Set((M??[]).map(vt)),t[23]=M,t[24]=V);let H=V,U;if(t[25]!==M||t[26]!==H||t[27]!==k||t[28]!==y||t[29]!==a){let e;t[31]!==H||t[32]!==a?(e=e=>!H.has(e.path)&&a!==null&&!a.has(e.id),t[31]=H,t[32]=a,t[33]=e):e=t[33];let n;t[34]===y?n=t[35]:(n=e=>({id:e.path,name:e.name,path:e.path,lastActive:T({timestamp:Date.parse(e.lastActivityAt),now:y}),remote:Ee(e.originUrl),added:e.projectId!==null}),t[34]=y,t[35]=n),U=[...k.filter(e).map(_t),...(M??[]).map(n)],t[25]=M,t[26]=H,t[27]=k,t[28]=y,t[29]=a,t[30]=U}else U=t[30];let W=U,G;t[36]!==M||t[37]!==i||t[38]!==w||t[39]!==B?(G=()=>{i===null||M===void 0||w(i,M.filter(e=>e.projectId===null&&B.has(e.path)))},t[36]=M,t[37]=i,t[38]=w,t[39]=B,t[40]=G):G=t[40];let K=G,q=i===null||l.isPending||_,ee=q||B.size===0?`Continue`:`Import ${B.size} ${B.size===1?`project`:`projects`}`,te;t[41]!==K||t[42]!==s||t[43]!==B.size?(te=()=>{B.size===0?s():K()},t[41]=K,t[42]=s,t[43]=B.size,t[44]=te):te=t[44];let J;t[45]!==l.data||t[46]!==l.isError||t[47]!==q?(J=q?{kind:`scanning`}:l.isError?{kind:`error`,message:`bb couldn't scan this computer for git repos.`}:{kind:`results`,truncated:l.data.truncated},t[45]=l.data,t[46]=l.isError,t[47]=q,t[48]=J):J=t[48];let Y;t[49]===B?Y=t[50]:(Y=e=>{let t=new Set(B);t.has(e)?t.delete(e):t.add(e),g(t)},t[49]=B,t[50]=Y);let X;t[51]===M?X=t[52]:(X=()=>g(new Set((M??[]).filter(gt).map(ht))),t[51]=M,t[52]=X);let ne;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(ne=()=>g(new Set),t[53]=ne):ne=t[53];let re;t[54]===b?re=t[55]:(re=()=>{v(!0),b().finally(()=>v(!1))},t[54]=b,t[55]=re);let ie;t[56]!==u.openCreateDialog||t[57]!==W||t[58]!==B||t[59]!==J||t[60]!==Y||t[61]!==X||t[62]!==re?(ie=(0,$.jsx)(He,{status:J,repos:W,selectedIds:B,onToggle:Y,onSelectAll:X,onSelectNone:ne,onAddFolder:u.openCreateDialog,onRetry:re}),t[56]=u.openCreateDialog,t[57]=W,t[58]=B,t[59]=J,t[60]=Y,t[61]=X,t[62]=re,t[63]=ie):ie=t[63];let ae;t[64]!==u.hostId||t[65]!==u.hostName||t[66]!==u.hosts||t[67]!==u.isCreating||t[68]!==u.platform||t[69]!==u.projectPathDialog.onOpenChange||t[70]!==u.projectPathDialog.target||t[71]!==u.submitProjectPath?(ae=(0,$.jsx)(m,{target:u.projectPathDialog.target,pending:u.isCreating,platform:u.platform,hostId:u.hostId,hostName:u.hostName,hosts:u.hosts,onOpenChange:u.projectPathDialog.onOpenChange,onSubmit:u.submitProjectPath}),t[64]=u.hostId,t[65]=u.hostName,t[66]=u.hosts,t[67]=u.isCreating,t[68]=u.platform,t[69]=u.projectPathDialog.onOpenChange,t[70]=u.projectPathDialog.target,t[71]=u.submitProjectPath,t[72]=ae):ae=t[72];let oe;return t[73]!==n||t[74]!==C||t[75]!==o||t[76]!==c||t[77]!==q||t[78]!==ee||t[79]!==te||t[80]!==ie||t[81]!==ae?(oe=(0,$.jsxs)(Ie,{...n,step:`projects`,title:`Add your projects`,description:`Git repos on this computer that you've worked in over the last 30 days.`,primaryLabel:ee,primaryDisabled:q,primaryBusy:C,secondaryLabel:`Skip`,onPrimary:te,onSecondary:c,onBack:o,children:[ie,ae]}),t[73]=n,t[74]=C,t[75]=o,t[76]=c,t[77]=q,t[78]=ee,t[79]=te,t[80]=ie,t[81]=ae,t[82]=oe):oe=t[82],oe}function ht(e){return e.path}function gt(e){return e.projectId===null}function _t(e){return{id:`project:${e.id}`,name:e.name,path:e.path,lastActive:``,remote:null,added:!0}}function vt(e){return e.path}function yt(e){return e.path}function bt(e){return e.projectId===null}function xt(){return Date.now()}function St({entry:e,enabled:t,onChanged:n}){let r=o(),i=V(),a=W(e),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(null);l!==null&&l===t&&u(null);let d=s||a!==null,f=l!==null&&l!==t;(0,Z.useEffect)(()=>{if(!f||d)return;let e=window.setTimeout(()=>u(null),ot);return()=>window.clearTimeout(e)},[d,f]);let p=async t=>{u(t),c(!0);try{t&&!e.installed?L({queryClient:r,job:await q(fetch,{entryId:e.entryId,marketplace:e.marketplace})}):await i(e.pluginId,t),await n()}catch(t){u(null),M.error(t instanceof Error?t.message:`Failed to update ${e.displayName}.`)}finally{c(!1)}};return(0,$.jsx)(Je,{name:e.displayName,description:e.description,icon:{icon:e.icon,iconUrl:e.iconUrl,iconTinted:e.iconTinted},enabled:l??t,pending:d||f,unavailableReason:e.installed||e.compatible?null:e.incompatibleReason??`Not available on this server.`,onToggle:e=>void p(e)})}function Ct(e){let t=(0,Q.c)(25),{chrome:n,onBack:r,onContinue:i,onSkip:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={enabled:!0},t[0]=o):o=t[0];let s=F(``,o),c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c={enabled:!0},t[1]=c):c=t[1];let l=J(c),{refetch:u}=s,{refetch:d}=l,f;t[2]!==u||t[3]!==d?(f=async()=>{await Promise.all([u(),d()])},t[2]=u,t[3]=d,t[4]=f):f=t[4];let p=f,m=l.data?.plugins,h=m?.length??0,g;t[5]===u?g=t[6]:(g=()=>{u()},t[5]=u,t[6]=g);let _;t[7]!==h||t[8]!==u?(_=[h,u],t[7]=h,t[8]=u,t[9]=_):_=t[9],(0,Z.useEffect)(g,_),s.data?.entries;let v;bb0:{let e=s.data?.entries;if(e===void 0){v=null;break bb0}let n;t[10]===e?n=t[11]:(n=ve.flatMap(t=>{let{entryId:n}=t,r=e.find(e=>e.marketplace===`bb-official`&&e.entryId===n);return r===void 0?[]:[r]}),t[10]=e,t[11]=n),v=n}let y=v,b;t[12]!==y||t[13]!==m||t[14]!==p?(b=y===null?(0,$.jsx)(Ke,{count:ve.length}):y.map(e=>(0,$.jsx)(St,{entry:e,enabled:e.installed&&(m?.find(t=>t.id===e.pluginId)?.enabled??!1),onChanged:p},e.entryId)),t[12]=y,t[13]=m,t[14]=p,t[15]=b):b=t[15];let x;t[16]!==n.compact||t[17]!==b?(x=(0,$.jsx)(Ge,{compact:n.compact,children:b}),t[16]=n.compact,t[17]=b,t[18]=x):x=t[18];let S;return t[19]!==n||t[20]!==r||t[21]!==i||t[22]!==a||t[23]!==x?(S=(0,$.jsx)(Ie,{...n,step:`plugins`,title:`Make bb yours`,description:`Most of bb is plugins. These ones are off until you want them, and you can change your mind in Plugins.`,primaryLabel:`Continue`,secondaryLabel:`Skip`,onPrimary:i,onSecondary:a,onBack:r,children:x}),t[19]=n,t[20]=r,t[21]=i,t[22]=a,t[23]=x,t[24]=S):S=t[24],S}function wt(e){let n=(0,Q.c)(28),{chrome:r,hostId:i,onBack:a,onFinish:o,onLeave:s}=e,c=y(),l=A(),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),m=t(),[h]=(0,Z.useState)(m.pathname),g=m.pathname!==h,_,v;n[0]!==g||n[1]!==s?(_=()=>{g&&s()},v=[g,s],n[0]=g,n[1]=s,n[2]=_,n[3]=v):(_=n[2],v=n[3]),(0,Z.useEffect)(_,v);let b;n[4]===l.data?b=n[5]:(b=l.data??[],n[4]=l.data,n[5]=b);let x;if(n[6]!==i||n[7]!==b){let e;n[9]===i?e=n[10]:(e=e=>e.id!==i,n[9]=i,n[10]=e),x=b.filter(e),n[6]=i,n[7]=b,n[8]=x}else x=n[8];let S=x.length,w=c.data?.serverAccess,T;n[11]===w?T=n[12]:(T=De(w),n[11]=w,n[12]=T);let E;n[13]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(oe,{pluginId:ye}),n[13]=E):E=n[13];let D;n[14]===Symbol.for(`react.memo_cache_sentinel`)?(D=()=>d(Et),n[14]=D):D=n[14];let O;n[15]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>p(!0),n[15]=O):O=n[15];let k;n[16]!==u||n[17]!==S||n[18]!==T?(k=(0,$.jsx)(Ze,{connect:T,connectSetup:E,connectSetupOpen:u,otherMachineCount:S,mobileLinks:C,onToggleConnectSetup:D,onCopyConnectUrl:Tt,onAddMachine:O}),n[16]=u,n[17]=S,n[18]=T,n[19]=k):k=n[19];let j;n[20]===f?j=n[21]:(j=(0,$.jsx)(ae,{open:f,onOpenChange:p}),n[20]=f,n[21]=j);let M;return n[22]!==r||n[23]!==a||n[24]!==o||n[25]!==k||n[26]!==j?(M=(0,$.jsxs)(Ie,{...r,step:`devices`,title:`Use bb from anywhere`,description:`All optional. Everything here also lives in Settings → Machines.`,primaryLabel:`Start using bb`,onPrimary:o,onBack:a,children:[k,j]}),n[22]=r,n[23]=a,n[24]=o,n[25]=k,n[26]=j,n[27]=M):M=n[27],M}function Tt(e){E(e)}function Et(e){return!e}var Dt=[`agent`,`projects`,`plugins`,`devices`];function Ot(e){let t=(0,Q.c)(82),{initialStep:n,entry:r,onClose:i}=e,[a,o]=(0,Z.useState)(n),s=D().data?.projects,[c,u]=(0,Z.useState)(null);c===null&&s!==void 0&&u(new Set(s.map(Mt)));let f=h(),p=f?.id??null;d(p);let m=p!==null,g;t[0]===p?g=t[1]:(g=p===null?{}:{hostId:p},t[0]=p,t[1]=g);let _;t[2]!==m||t[3]!==g?(_={enabled:m,poll:!1,...g},t[2]=m,t[3]=g,t[4]=_):_=t[4];let v=w(_),y=v.data?.providers,b=(0,Z.useRef)(null),x,S;t[5]!==y||t[6]!==v.isError||t[7]!==r?(x=()=>{if(y===void 0&&!v.isError)return;let e=v.isError?void 0:y,t=e?.some(jt)??!0,n={entry:r,agent_installed:e?.some(At)??!1?!0:t?null:!1,agent_ready:Se(e)?!0:t?null:!1},i=JSON.stringify(n);b.current!==i&&(b.current=i,ge({name:`onboarding_agent_state`,properties:n}))},S=[y,v.isError,r],t[5]=y,t[6]=v.isError,t[7]=r,t[8]=x,t[9]=S):(x=t[8],S=t[9]),(0,Z.useEffect)(x,S);let C=(0,Z.useRef)(r!==`first_run`),T,E;t[10]===y?(T=t[11],E=t[12]):(T=()=>{C.current||y===void 0||(C.current=!0,ge({name:`onboarding_started`,properties:{agent_installed:y.some(kt),agent_ready:Se(y)}}))},E=[y],t[10]=y,t[11]=T,t[12]=E),(0,Z.useEffect)(T,E);let k;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(k=new Set,t[13]=k):k=t[13];let A=(0,Z.useRef)(k),j,M;t[14]!==r||t[15]!==a?(M=()=>{A.current.has(a)||(A.current.add(a),ge({name:`onboarding_step_reached`,properties:{step:a,entry:r}}))},j=[r,a],t[14]=r,t[15]=a,t[16]=j,t[17]=M):(j=t[16],M=t[17]),(0,Z.useEffect)(M,j);let N=(0,Z.useRef)(!1),P;t[18]!==r||t[19]!==i||t[20]!==a?(P=e=>{N.current||(N.current=!0,ge(e===`skipped`?{name:`onboarding_step_skipped`,properties:{step:a,entry:r}}:{name:`onboarding_step_completed`,properties:{step:a,entry:r}}),ge({name:`onboarding_finished`,properties:{outcome:e,entry:r,last_step:a}}),i())},t[18]=r,t[19]=i,t[20]=a,t[21]=P):P=t[21];let F=P,I=l(`(max-width: 640px)`),[L]=(0,Z.useState)(te),R=O(),z;t[22]!==L||t[23]!==R?(z=K({desktopInfo:L,windowState:R}),t[22]=L,t[23]=R,t[24]=z):z=t[24];let B;t[25]===F?B=t[26]:(B=()=>F(`skipped`),t[25]=F,t[26]=B);let V;t[27]!==I||t[28]!==z||t[29]!==B?(V={compact:I,reserveMacosTrafficLights:z,onSelectStep:o,onSkipAll:B},t[27]=I,t[28]=z,t[29]=B,t[30]=V):V=t[30];let H=V,U;t[31]===a?U=t[32]:(U=e=>()=>{let t=Dt[Dt.indexOf(a)+e];t!==void 0&&o(t)},t[31]=a,t[32]=U);let W=U,G;t[33]!==r||t[34]!==W||t[35]!==a?(G=e=>()=>{ge({name:e===`completed`?`onboarding_step_completed`:`onboarding_step_skipped`,properties:{step:a,entry:r}}),W(1)()},t[33]=r,t[34]=W,t[35]=a,t[36]=G):G=t[36];let q=G;switch(a){case`agent`:{let e=f?.name??null,n;t[37]===y?n=t[38]:(n=Se(y)?`completed`:`skipped`,t[37]=y,t[38]=n);let i;t[39]!==q||t[40]!==n?(i=q(n),t[39]=q,t[40]=n,t[41]=i):i=t[41];let a;return t[42]!==H||t[43]!==r||t[44]!==p||t[45]!==e||t[46]!==i?(a=(0,$.jsx)(ft,{chrome:H,entry:r,hostId:p,hostName:e,onContinue:i}),t[42]=H,t[43]=r,t[44]=p,t[45]=e,t[46]=i,t[47]=a):a=t[47],a}case`projects`:{let e;t[48]===W?e=t[49]:(e=W(-1),t[48]=W,t[49]=e);let n,i;t[50]===q?(n=t[51],i=t[52]):(n=q(`completed`),i=q(`skipped`),t[50]=q,t[51]=n,t[52]=i);let a;return t[53]!==H||t[54]!==r||t[55]!==p||t[56]!==c||t[57]!==e||t[58]!==n||t[59]!==i?(a=(0,$.jsx)(mt,{chrome:H,entry:r,hostId:p,projectIdsAtOpen:c,onBack:e,onContinue:n,onSkip:i}),t[53]=H,t[54]=r,t[55]=p,t[56]=c,t[57]=e,t[58]=n,t[59]=i,t[60]=a):a=t[60],a}case`plugins`:{let e;t[61]===W?e=t[62]:(e=W(-1),t[61]=W,t[62]=e);let n,r;t[63]===q?(n=t[64],r=t[65]):(n=q(`completed`),r=q(`skipped`),t[63]=q,t[64]=n,t[65]=r);let i;return t[66]!==H||t[67]!==e||t[68]!==n||t[69]!==r?(i=(0,$.jsx)(Ct,{chrome:H,onBack:e,onContinue:n,onSkip:r}),t[66]=H,t[67]=e,t[68]=n,t[69]=r,t[70]=i):i=t[70],i}case`devices`:{let e;t[71]===W?e=t[72]:(e=W(-1),t[71]=W,t[72]=e);let n,r;t[73]===F?(n=t[74],r=t[75]):(n=()=>F(`completed`),r=()=>F(`skipped`),t[73]=F,t[74]=n,t[75]=r);let i;return t[76]!==H||t[77]!==p||t[78]!==e||t[79]!==n||t[80]!==r?(i=(0,$.jsx)(wt,{chrome:H,hostId:p,onBack:e,onFinish:n,onLeave:r}),t[76]=H,t[77]=p,t[78]=e,t[79]=n,t[80]=r,t[81]=i):i=t[81],i}}}function kt(e){return e.status!==`not_installed`&&e.status!==`unknown`}function At(e){return e.status!==`not_installed`&&e.status!==`unknown`}function jt(e){return e.status===`unknown`}function Mt(e){return e.id}export{Ot as OnboardingFlow};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Lr as t,Or as n,Zr as r,mi as i,ni as a,ti as o}from"./boot-vendor-BBLG7GwQ.js";import{n as s,t as c}from"./ThreadTerminalView-B6XNBrJ9.js";import{$f as l,$h as u,Bi as d,Bt as f,En as p,Fi as m,Hi as h,Kn as g,Lt as _,Nt as v,Po as y,Pt as b,Qd as x,Qm as S,Rg as C,Ro as w,Sa as T,Ta as E,Tc as D,Ud as O,Vg as k,Vi as A,Vr as j,Ym as M,a_ as N,ap as P,bd as F,cf as I,ch as L,fi as R,ft as z,jo as B,lt as V,md as H,nh as U,o as W,oh as G,pf as K,r as q,sf as ee,uf as te,xh as J,yt as Y,zm as X,zo as ne,zt as re}from"./index-BBxUiLNy.js";import{n as ie}from"./resource-list-B6MkAu8v.js";import{t as ae}from"./AddMachineDialog-4BQFC118.js";import{N as oe,k as se,n as ce,v as le,y as ue}from"./plugin-ui-DyNDyPD9.js";import{n as de,r as fe}from"./thread-terminal-queries-B4JkOWS2.js";import{t as pe}from"./expandable-text-herJC70e.js";import{t as me}from"./checkbox-Ct38DhHB.js";import{t as he}from"./switch-CzvlSesf.js";import{t as ge}from"./onboarding-telemetry-C21cbjI_.js";var Z=e(i(),1),Q=n(),_e=[{id:`agent`,label:`Agent`},{id:`projects`,label:`Projects`},{id:`plugins`,label:`Plugins`},{id:`devices`,label:`Devices`}],ve=[{entryId:`browser-automation`,pluginId:`browser-automation`},{entryId:`workflows`,pluginId:`workflows`},{entryId:`monaco-editor`,pluginId:`monaco-editor`},{entryId:`prompt-library`,pluginId:`bb--prompt-library`},{entryId:`agent-annotations`,pluginId:`agent-annotations`},{entryId:`ask-user-question`,pluginId:`ask-user-question`}],ye=`connect`;function be({health:e,cliStatus:t,installing:n,installFailure:r,signingIn:i,signInFailed:a,installInfoPending:o}){if(e.status===`ready`){let t=[e.accountEmail,e.planLabel].filter(e=>e!==null&&e!==``).join(` · `);return{status:`ready`,detail:t===``?null:t}}if(n)return{status:`installing`};let s=t?.installAction!==null&&t?.installAction!==void 0;if(r!==null)return{status:`installFailed`,message:r,canInstall:s};let c=t===void 0&&o;switch(e.status){case`not_installed`:return c?{status:`checking`}:{status:`install`,canInstall:s};case`unsupported_version`:return c?{status:`checking`}:{status:`update`,detail:e.minimumSupportedVersion===null?e.statusMessage:`Needs version ${e.minimumSupportedVersion} or newer`,canInstall:s};case`unauthenticated`:case`expired`:return i?{status:`signingIn`}:{status:`signIn`,reason:a?`failed`:e.status===`expired`?`expired`:`signedOut`,canSignIn:e.loginCommand!==null};case`unknown`:return{status:`unknown`,message:e.statusMessage}}}function xe(e,t){return t&&e.localLoginCommand!==null?e.localLoginCommand:e.loginCommand}function Se(e){return e?.some(e=>e.status===`ready`)??!1}var Ce=7*864e5,we=5;function Te(e,t){let n=e.filter(e=>e.projectId===null),r=n.filter(e=>t-Date.parse(e.lastActivityAt)<=Ce),i=r.length>0?r.slice(0,we):n.slice(0,1);return new Set(i.map(e=>e.path))}function Ee(e){if(e===null)return null;let t=/^(?:[a-z+]+:\/\/)?(?:[^@/]+@)?[^/:]+[/:](.+?)(?:\.git)?\/?$/iu.exec(e.trim())?.[1];if(t===void 0)return null;let n=t.split(`/`).filter(e=>e!==``);return n.length<2?null:n.slice(-2).join(`/`)}function De(e){let t=e?.providers.find(e=>e.pluginId===ye);return t===void 0?{status:`unavailable`}:t.availability?.status===`available`&&t.availability.serverUrl!==void 0?{status:`on`,url:t.availability.serverUrl}:{status:`off`}}var Oe=/\u001b\][^\u0007\u001b]*(?:\u0007|\u001b\\)/gu,ke=/\u001b\[[0-9;?]*[ -/]*[@-~]/gu,Ae=/\u001b\]8;[^;\u0007\u001b]*;(https:\/\/[^\u0007\u001b]+)(?:\u0007|\u001b\\)/u,je=/https:\/\/[^\s\u0007\u001b"'<>]+/u,Me=/(?<![A-Za-z0-9-])[A-Z0-9]{4,5}-[A-Z0-9]{4,5}(?![A-Za-z0-9-])/u,Ne=/paste (?:the |your )?(?:authorization )?code/iu;function Pe(e){let t=e.replace(Oe,``).replace(ke,``).replace(/\r/gu,``),n=Ae.exec(e)?.[1]??je.exec(t)?.[0]??null,r=t.replace(new RegExp(je.source,`gu`),` `);return{url:n,userCode:Me.exec(r)?.[0]??null,acceptsPastedCode:Ne.test(r)}}var $=e(a(),1),Fe=`mx-auto w-full max-w-[600px] px-4 @min-[36rem]/onboarding:px-6`;function Ie(e){let t=(0,Q.c)(59),{step:n,compact:r,reserveMacosTrafficLights:i,title:a,description:o,children:s,footerNote:c,primaryLabel:l,primaryDisabled:u,primaryBusy:d,secondaryLabel:f,onPrimary:p,onSecondary:m,onBack:h,onSelectStep:g,onSkipAll:_}=e,v=r===void 0?!1:r,y=i===void 0?!1:i,b=u===void 0?!1:u,C=d===void 0?!1:d,w;t[0]===n?w=t[1]:(w=e=>e.id===n,t[0]=n,t[1]=w);let T=_e.findIndex(w),E;t[2]===y?E=t[3]:(E=G(`grid h-14 shrink-0 grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-2 pr-4 @min-[36rem]/onboarding:gap-3`,y?G(ee,I):`pl-4`),t[2]=y,t[3]=E);let D;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,$.jsx)(`img`,{src:se,alt:`bb`,draggable:!1,className:`h-5 w-6 shrink-0 select-none object-contain dark:invert`}),t[4]=D):D=t[4];let O;t[5]!==T||t[6]!==g?(O=_e.map((e,t)=>{let n=t<T,r=t===T;return(0,$.jsxs)(`button`,{type:`button`,disabled:!n,"aria-current":r?`step`:void 0,"aria-label":e.label,onClick:()=>g(e.id),className:G(`flex shrink-0 items-center gap-1.5 rounded-full px-1 py-1 text-xs font-medium transition-colors @min-[36rem]/onboarding:px-2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,x,r&&`text-foreground`,n&&`text-subtle-foreground hover:bg-state-hover`,!r&&!n&&`text-muted-foreground`),children:[(0,$.jsx)(`span`,{className:G(`flex size-5 items-center justify-center rounded-full text-xs tabular-nums`,r&&`bg-foreground text-background`,n&&`bg-success text-background`,!r&&!n&&`border border-border`),children:n?(0,$.jsx)(S,{name:`Check`,"aria-hidden":!0,className:`size-3`}):t+1}),(0,$.jsx)(`span`,{className:G(!r&&`sr-only @min-[36rem]/onboarding:not-sr-only`),children:e.label})]},e.id)}),t[5]=T,t[6]=g,t[7]=O):O=t[7];let k;t[8]===O?k=t[9]:(k=(0,$.jsx)(`nav`,{"aria-label":`Setup steps`,className:`col-start-2 row-start-1 flex min-w-0 items-center justify-center gap-1`,children:O}),t[8]=O,t[9]=k);let A;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(A=G(`col-start-3 row-start-1 shrink-0 text-muted-foreground`,x),t[10]=A):A=t[10];let j,M;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(`span`,{className:`@min-[36rem]/onboarding:hidden`,children:`Skip`}),M=(0,$.jsx)(`span`,{className:`hidden @min-[36rem]/onboarding:inline`,children:`Skip setup`}),t[11]=j,t[12]=M):(j=t[11],M=t[12]);let N;t[13]===_?N=t[14]:(N=(0,$.jsxs)(U,{variant:`ghost`,size:`sm`,className:A,onClick:_,children:[j,M]}),t[13]=_,t[14]=N);let P;t[15]!==N||t[16]!==E||t[17]!==k?(P=(0,$.jsxs)(`header`,{className:E,children:[D,k,N]}),t[15]=N,t[16]=E,t[17]=k,t[18]=P):P=t[18];let F=v?`py-4`:`py-6`,L;t[19]===F?L=t[20]:(L=G(Fe,`flex flex-col gap-6`,F),t[19]=F,t[20]=L);let R;t[21]===a?R=t[22]:(R=(0,$.jsx)(`h1`,{className:`text-2xl font-semibold tracking-tight`,children:a}),t[21]=a,t[22]=R);let z;t[23]===o?z=t[24]:(z=(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:o}),t[23]=o,t[24]=z);let B;t[25]!==R||t[26]!==z?(B=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[R,z]}),t[25]=R,t[26]=z,t[27]=B):B=t[27];let V;t[28]!==s||t[29]!==L||t[30]!==B?(V=(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,$.jsxs)(`div`,{className:L,children:[B,s]})}),t[28]=s,t[29]=L,t[30]=B,t[31]=V):V=t[31];let H;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(H=G(Fe,`flex items-center gap-1 py-3 @min-[36rem]/onboarding:gap-2`),t[32]=H):H=t[32];let W;t[33]===h?W=t[34]:(W=h?(0,$.jsxs)(U,{variant:`ghost`,size:`sm`,onClick:h,children:[(0,$.jsx)(S,{name:`ArrowLeft`,"aria-hidden":!0}),`Back`]}):null,t[33]=h,t[34]=W);let K;t[35]===c?K=t[36]:(K=(0,$.jsx)(`span`,{className:`min-w-0 flex-1 text-xs text-muted-foreground`,children:c}),t[35]=c,t[36]=K);let q;t[37]!==m||t[38]!==f?(q=f&&m?(0,$.jsx)(U,{variant:`ghost`,size:`sm`,onClick:m,children:f}):null,t[37]=m,t[38]=f,t[39]=q):q=t[39];let te=b||C,J;t[40]===C?J=t[41]:(J=C?(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`animate-spin`}):null,t[40]=C,t[41]=J);let Y;t[42]===C?Y=t[43]:(Y=C?null:(0,$.jsx)(S,{name:`ArrowRight`,"aria-hidden":!0}),t[42]=C,t[43]=Y);let X;t[44]!==p||t[45]!==l||t[46]!==te||t[47]!==J||t[48]!==Y?(X=(0,$.jsxs)(U,{size:`sm`,disabled:te,onClick:p,children:[J,l,Y]}),t[44]=p,t[45]=l,t[46]=te,t[47]=J,t[48]=Y,t[49]=X):X=t[49];let ne;t[50]!==W||t[51]!==K||t[52]!==q||t[53]!==X?(ne=(0,$.jsx)(`footer`,{className:`shrink-0 border-t border-border-hairline`,children:(0,$.jsxs)(`div`,{className:H,children:[W,K,q,X]})}),t[50]=W,t[51]=K,t[52]=q,t[53]=X,t[54]=ne):ne=t[54];let re;return t[55]!==P||t[56]!==V||t[57]!==ne?(re=(0,$.jsxs)(`div`,{"data-testid":`onboarding`,className:`@container/onboarding flex min-h-0 flex-1 flex-col bg-background text-foreground`,children:[P,V,ne]}),t[55]=P,t[56]=V,t[57]=ne,t[58]=re):re=t[58],re}function Le(e){switch(e.status){case`checking`:return`Checking…`;case`ready`:return e.detail??`Signed in`;case`signIn`:return e.reason===`failed`?`Sign-in didn't finish · try again`:e.reason===`expired`?`Installed · your session expired`:`Installed · not signed in`;case`signingIn`:return`Finish signing in below`;case`install`:return`Not installed`;case`update`:return e.detail??`Update needed`;case`installing`:return`Installing…`;case`installFailed`:return e.message;case`unknown`:return e.message??`Couldn't check this agent`}}function Re(e){let t=(0,Q.c)(57),{agent:n,onSignIn:r,onInstall:i,onViewInstallLog:a,onCancelSignIn:o}=e,{state:s}=n,c=n.id,l=s.status===`installFailed`?`grid grid-cols-[1.5rem_minmax(0,1fr)] @min-[36rem]/onboarding:flex`:`flex`,u;t[0]===l?u=t[1]:(u=G(`items-center gap-3`,l),t[0]=l,t[1]=u);let d=n.provider,f=s.status===`install`&&`text-muted-foreground`,p;t[2]===f?p=t[3]:(p=G(`size-6`,f),t[2]=f,t[3]=p);let m;t[4]!==n.provider||t[5]!==p?(m=(0,$.jsx)(Y,{providerKind:`agent`,provider:d,className:p}),t[4]=n.provider,t[5]=p,t[6]=m):m=t[6];let h;t[7]===n.name?h=t[8]:(h=(0,$.jsx)(`span`,{className:`text-sm font-medium`,children:n.name}),t[7]=n.name,t[8]=h);let g=s.status===`installFailed`&&`text-destructive-text`,_;t[9]===g?_=t[10]:(_=G(`text-xs text-muted-foreground`,g),t[9]=g,t[10]=_);let v;t[11]===s?v=t[12]:(v=Le(s),t[11]=s,t[12]=v);let y;t[13]!==_||t[14]!==v?(y=(0,$.jsx)(pe,{expandLabel:`Show details`,className:_,children:v}),t[13]=_,t[14]=v,t[15]=y):y=t[15];let b;t[16]!==y||t[17]!==h?(b=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[h,y]}),t[16]=y,t[17]=h,t[18]=b):b=t[18];let x;t[19]===s.status?x=t[20]:(x=s.status===`checking`||s.status===`installing`?(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-4 animate-spin text-muted-foreground`}):null,t[19]=s.status,t[20]=x);let C;t[21]===s.status?C=t[22]:(C=s.status===`ready`?(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs font-medium text-success`,children:[(0,$.jsx)(S,{name:`CircleCheck`,"aria-hidden":!0,className:`size-4`}),`Ready`]}):null,t[21]=s.status,t[22]=C);let w;t[23]!==n.id||t[24]!==r||t[25]!==s.canSignIn||t[26]!==s.status?(w=s.status===`signIn`&&s.canSignIn?(0,$.jsx)(U,{size:`sm`,onClick:()=>r(n.id),children:`Sign in`}):null,t[23]=n.id,t[24]=r,t[25]=s.canSignIn,t[26]=s.status,t[27]=w):w=t[27];let T;t[28]!==n.id||t[29]!==a||t[30]!==s.status?(T=s.status===`installFailed`?(0,$.jsx)(U,{size:`sm`,variant:`ghost`,onClick:()=>a(n.id),children:`View log`}):null,t[28]=n.id,t[29]=a,t[30]=s.status,t[31]=T):T=t[31];let E;t[32]!==n.id||t[33]!==i||t[34]!==s.canInstall||t[35]!==s.status?(E=(s.status===`install`||s.status===`update`||s.status===`installFailed`)&&s.canInstall?(0,$.jsxs)(U,{size:`sm`,variant:`outline`,onClick:()=>i(n.id),children:[(0,$.jsx)(S,{name:`Download`,"aria-hidden":!0}),s.status===`installFailed`?`Retry`:s.status===`update`?`Update`:`Install`]}):null,t[32]=n.id,t[33]=i,t[34]=s.canInstall,t[35]=s.status,t[36]=E):E=t[36];let D;t[37]!==n.id||t[38]!==o||t[39]!==s.status?(D=s.status===`signingIn`?(0,$.jsx)(U,{size:`sm`,variant:`ghost`,onClick:()=>o(n.id),children:`Cancel`}):null,t[37]=n.id,t[38]=o,t[39]=s.status,t[40]=D):D=t[40];let O;t[41]!==x||t[42]!==C||t[43]!==w||t[44]!==T||t[45]!==E||t[46]!==D?(O=(0,$.jsxs)(`div`,{className:`col-start-2 flex shrink-0 items-center justify-end gap-2`,children:[x,C,w,T,E,D]}),t[41]=x,t[42]=C,t[43]=w,t[44]=T,t[45]=E,t[46]=D,t[47]=O):O=t[47];let k;t[48]!==b||t[49]!==O||t[50]!==u||t[51]!==m?(k=(0,$.jsxs)(`div`,{className:u,children:[m,b,O]}),t[48]=b,t[49]=O,t[50]=u,t[51]=m,t[52]=k):k=t[52];let A;return t[53]!==n.expanded||t[54]!==n.id||t[55]!==k?(A=(0,$.jsxs)(`li`,{className:`px-3 py-3`,"data-agent-id":c,children:[k,n.expanded]}),t[53]=n.expanded,t[54]=n.id,t[55]=k,t[56]=A):A=t[56],A}function ze(e){let t=(0,Q.c)(21),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({machineName:r,agents:n,onRecheck:i,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(S,{name:`Laptop`,"aria-hidden":!0,className:`size-3.5`}),t[5]=o):o=t[5];let s=r===null?`Waiting for this computer to connect…`:`On ${r}`,c;t[6]===s?c=t[7]:(c=(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:s}),t[6]=s,t[7]=c);let l;t[8]!==r||t[9]!==i?(l=r===null?null:(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex items-center gap-1 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:[(0,$.jsx)(S,{name:`ArrowReloadHorizontal`,"aria-hidden":!0,className:`size-3.5`}),`Check again`]}),t[8]=r,t[9]=i,t[10]=l):l=t[10];let u;t[11]!==c||t[12]!==l?(u=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[o,c,l]}),t[11]=c,t[12]=l,t[13]=u):u=t[13];let d;t[14]!==n||t[15]!==a?(d=n===null?(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:[0,1,2].map(Be)}):(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:n.map(e=>(0,$.jsx)(Re,{agent:e,...a},e.id))}),t[14]=n,t[15]=a,t[16]=d):d=t[16];let f;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Don't see your agent? bb picks up other ACP agents, such as opencode, once they are installed.`}),t[17]=f):f=t[17];let p;return t[18]!==u||t[19]!==d?(p=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[u,d,f]}),t[18]=u,t[19]=d,t[20]=p):p=t[20],p}function Be(e){return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-3`,children:[(0,$.jsx)(`span`,{className:`size-6 rounded-md bg-state-hover`}),(0,$.jsxs)(`span`,{className:`flex flex-1 flex-col gap-1.5`,children:[(0,$.jsx)(`span`,{className:`h-3 w-28 rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-2.5 w-40 rounded-sm bg-state-hover`})]})]},e)}function Ve(e){let t=(0,Q.c)(31),{agentName:n,guide:r,code:i,codeSubmitted:a,terminalVisible:o,terminal:s,onCodeChange:c,onSubmitCode:l,onOpenUrl:u,onCopy:d,onToggleTerminal:f,alternateLabel:p,onUseAlternate:m}=e,h=r?.url??null,g=r?.userCode??null,_=r?.acceptsPastedCode??!1,v;t[0]!==_||t[1]!==n||t[2]!==i||t[3]!==c||t[4]!==d||t[5]!==u||t[6]!==l||t[7]!==o||t[8]!==h||t[9]!==g?(v=(0,$.jsx)(`div`,{className:`flex flex-col gap-3 p-3`,children:h===null?o?(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Sign in to `,n,` in the terminal below.`]}):(0,$.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}),`Starting `,n,` sign-in…`]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:g===null?_?`Sign in on the ${n} page, then paste the code it shows you.`:`Finish signing in on the ${n} page.`:`Open the ${n} sign-in page and enter this code.`}),g===null?null:(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-2 rounded-md border border-border bg-background px-3 py-3`,children:[(0,$.jsx)(`span`,{"aria-label":`${n} sign-in code`,className:`select-all font-mono text-xl font-semibold tracking-widest`,children:g}),(0,$.jsx)(U,{variant:`ghost`,size:`sm`,"aria-label":`Copy sign-in code`,onClick:()=>d(g),children:(0,$.jsx)(S,{name:`Copy`,"aria-hidden":!0})})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(U,{size:`sm`,onClick:()=>u(h),children:[`Open sign-in page`,(0,$.jsx)(S,{name:`ExternalLink`,"aria-hidden":!0})]}),(0,$.jsxs)(U,{variant:`ghost`,size:`sm`,className:`text-muted-foreground`,onClick:()=>d(h),children:[(0,$.jsx)(S,{name:`Copy`,"aria-hidden":!0}),`Copy link`]})]}),_&&g===null?(0,$.jsxs)(`form`,{className:`flex items-center gap-2`,onSubmit:e=>{e.preventDefault(),l()},children:[(0,$.jsx)(`input`,{value:i,onChange:e=>c(e.target.value),"aria-label":`${n} authorization code`,placeholder:`Paste the code here`,autoComplete:`off`,spellCheck:!1,className:`h-8 min-w-0 flex-1 rounded-md border border-input bg-background px-2.5 font-mono text-xs outline-none placeholder:font-sans placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring`}),(0,$.jsx)(U,{type:`submit`,size:`sm`,variant:`outline`,disabled:i.trim().length===0,children:`Complete`})]}):null]})}),t[0]=_,t[1]=n,t[2]=i,t[3]=c,t[4]=d,t[5]=u,t[6]=l,t[7]=o,t[8]=h,t[9]=g,t[10]=v):v=t[10];let y;t[11]!==s||t[12]!==o?(y=o?(0,$.jsx)(`div`,{className:`h-48 border-t border-border-hairline`,children:s}):null,t[11]=s,t[12]=o,t[13]=y):y=t[13];let b;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}),t[14]=b):b=t[14];let x=a?`Finishing sign-in…`:`bb continues on its own as soon as you're signed in.`,C;t[15]===x?C=t[16]:(C=(0,$.jsx)(`span`,{className:`min-w-0 flex-1`,children:x}),t[15]=x,t[16]=C);let w;t[17]!==p||t[18]!==m?(w=p===null?null:(0,$.jsx)(`button`,{type:`button`,onClick:m,className:`shrink-0 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:p}),t[17]=p,t[18]=m,t[19]=w):w=t[19];let T=o?`Hide terminal`:`Show terminal`,E;t[20]!==f||t[21]!==T?(E=(0,$.jsx)(`button`,{type:`button`,onClick:f,className:`shrink-0 rounded-sm hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:T}),t[20]=f,t[21]=T,t[22]=E):E=t[22];let D;t[23]!==C||t[24]!==w||t[25]!==E?(D=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 border-t border-border-hairline px-3 py-2 text-xs text-muted-foreground`,children:[b,C,w,E]}),t[23]=C,t[24]=w,t[25]=E,t[26]=D):D=t[26];let O;return t[27]!==v||t[28]!==y||t[29]!==D?(O=(0,$.jsxs)(`div`,{className:`mt-3 overflow-hidden rounded-md border border-border bg-surface-recessed`,children:[v,y,D]}),t[27]=v,t[28]=y,t[29]=D,t[30]=O):O=t[30],O}function He(e){let t=(0,Q.c)(49),{status:n,repos:r,selectedIds:i,onToggle:a,onSelectAll:o,onSelectNone:s,onAddFolder:c,onRetry:l}=e;if(n.kind===`scanning`){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}),`Looking for git repos you've touched recently…`]}),t[0]=e):e=t[0];let n;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[e,(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:[0,1,2,3].map(We)})]}),t[1]=n):n=t[1],n}if(n.kind===`error`||r.length===0){let e;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(S,{name:`FolderGit`,"aria-hidden":!0,className:`size-6 text-muted-foreground`}),t[2]=e):e=t[2];let r=n.kind===`error`?n.message:`bb didn't find a git repo you've worked in over the last 30 days.`,i;t[3]===r?i=t[4]:(i=(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:r}),t[3]=r,t[4]=i);let a=n.kind===`error`?`Try again`:`Scan again`,o;t[5]!==l||t[6]!==a?(o=(0,$.jsx)(U,{size:`sm`,variant:`outline`,onClick:l,children:a}),t[5]=l,t[6]=a,t[7]=o):o=t[7];let s;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(S,{name:`FolderPlus`,"aria-hidden":!0}),t[8]=s):s=t[8];let u;t[9]===c?u=t[10]:(u=(0,$.jsxs)(U,{size:`sm`,variant:`outline`,onClick:c,children:[s,`Choose a folder`]}),t[9]=c,t[10]=u);let d;t[11]!==o||t[12]!==u?(d=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[o,u]}),t[11]=o,t[12]=u,t[13]=d):d=t[13];let f;return t[14]!==i||t[15]!==d?(f=(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 rounded-lg border border-dashed border-border px-6 py-10 text-center`,children:[e,i,d]}),t[14]=i,t[15]=d,t[16]=f):f=t[16],f}let u;t[17]===r?u=t[18]:(u=r.filter(Ue),t[17]=r,t[18]=u);let d=u.length,f;t[19]!==d||t[20]!==i.size?(f=(0,$.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[i.size,` of `,d,` selected`]}),t[19]=d,t[20]=i.size,t[21]=f):f=t[21];let p;t[22]===o?p=t[23]:(p=(0,$.jsx)(`button`,{type:`button`,className:`hover:text-foreground`,onClick:o,children:`Select all`}),t[22]=o,t[23]=p);let m;t[24]===s?m=t[25]:(m=(0,$.jsx)(`button`,{type:`button`,className:`hover:text-foreground`,onClick:s,children:`Select none`}),t[24]=s,t[25]=m);let h;t[26]!==f||t[27]!==p||t[28]!==m?(h=(0,$.jsxs)(`div`,{className:`flex items-center gap-3 text-xs text-muted-foreground`,children:[f,p,m]}),t[26]=f,t[27]=p,t[28]=m,t[29]=h):h=t[29];let g;if(t[30]!==a||t[31]!==r||t[32]!==i){let e;t[34]!==a||t[35]!==i?(e=e=>(0,$.jsx)(`li`,{children:(0,$.jsxs)(`label`,{className:G(`flex items-center gap-3 px-3 py-2.5`,e.added?`text-muted-foreground`:`cursor-pointer hover:bg-state-hover`),children:[(0,$.jsx)(me,{checked:e.added||i.has(e.id),disabled:e.added,onCheckedChange:()=>a(e.id)}),(0,$.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.name}),e.remote?(0,$.jsx)(`span`,{className:`truncate text-xs text-muted-foreground`,children:e.remote}):null]}),(0,$.jsx)(`span`,{className:`truncate font-mono text-xs text-muted-foreground`,children:e.path})]}),(0,$.jsx)(`span`,{className:`shrink-0 text-right text-xs tabular-nums text-muted-foreground`,children:e.added?`Already added`:e.lastActive})]})},e.id),t[34]=a,t[35]=i,t[36]=e):e=t[36],g=r.map(e),t[30]=a,t[31]=r,t[32]=i,t[33]=g}else g=t[33];let _;t[37]===g?_=t[38]:(_=(0,$.jsx)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:g}),t[37]=g,t[38]=_);let v;t[39]===n.truncated?v=t[40]:(v=n.truncated?(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`The scan ran out of time, so some repos may be missing.`}):null,t[39]=n.truncated,t[40]=v);let y;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(S,{name:`FolderPlus`,"aria-hidden":!0,className:`size-3.5`}),t[41]=y):y=t[41];let b;t[42]===c?b=t[43]:(b=(0,$.jsxs)(`button`,{type:`button`,onClick:c,className:`flex items-center gap-2 self-start rounded-md px-2 py-1 text-xs text-muted-foreground hover:bg-state-hover hover:text-foreground`,children:[y,`Add a folder that isn't listed`]}),t[42]=c,t[43]=b);let x;return t[44]!==b||t[45]!==h||t[46]!==_||t[47]!==v?(x=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[h,_,v,b]}),t[44]=b,t[45]=h,t[46]=_,t[47]=v,t[48]=x):x=t[48],x}function Ue(e){return!e.added}function We(e){return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-3`,children:[(0,$.jsx)(`span`,{className:`size-4 rounded-sm bg-state-hover`}),(0,$.jsxs)(`span`,{className:`flex flex-1 flex-col gap-1.5`,children:[(0,$.jsx)(`span`,{className:`h-3 w-32 rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-2.5 w-56 rounded-sm bg-state-hover`})]})]},e)}function Ge(e){let t=(0,Q.c)(8),{compact:n,children:r}=e,i=n!==void 0&&n?`grid-cols-1`:`grid-cols-[repeat(auto-fit,minmax(min(100%,16rem),1fr))]`,a;t[0]===i?a=t[1]:(a=G(`w-full gap-2`,i),t[0]=i,t[1]=a);let o;t[2]!==r||t[3]!==a?(o=(0,$.jsx)(ie,{className:a,children:r}),t[2]=r,t[3]=a,t[4]=o):o=t[4];let s;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsxs)(`p`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(S,{name:`Puzzle`,"aria-hidden":!0,className:`size-3.5 shrink-0`}),`Want something that isn't here? Ask an agent to build a plugin at any time.`]}),t[5]=s):s=t[5];let c;return t[6]===o?c=t[7]:(c=(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[o,s]}),t[6]=o,t[7]=c),c}function Ke(e){let t=(0,Q.c)(2),{count:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)($.Fragment,{children:Array.from({length:n},qe)}),t[0]=n,t[1]=r),r}function qe(e,t){return(0,$.jsxs)(`div`,{className:`flex min-h-36 flex-col gap-3 rounded-xl border border-border p-3`,children:[(0,$.jsx)(`span`,{className:`h-4 w-32 rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-3 w-full rounded-sm bg-state-hover`}),(0,$.jsx)(`span`,{className:`h-3 w-2/3 rounded-sm bg-state-hover`})]},t)}function Je(e){let t=(0,Q.c)(30),{name:n,description:r,icon:i,enabled:a,pending:o,unavailableReason:s,onToggle:c}=e,l=o||s!==null,u;t[0]!==i||t[1]!==n?(u=(0,$.jsx)(ce,{compact:!0,entry:{displayName:n,...i}}),t[0]=i,t[1]=n,t[2]=u):u=t[2];let d=s??r,f;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(le,{name:`BB Official`,github:null,official:!0,children:`BB Official`}),t[3]=f):f=t[3];let p=!l&&`cursor-pointer`,m;t[4]===p?m=t[5]:(m=G(`flex items-center gap-2`,p),t[4]=p,t[5]=m);let h;t[6]!==a||t[7]!==o?(h=o?(0,$.jsx)(S,{name:`Spinner`,"aria-hidden":!0,className:`size-3.5 animate-spin`}):a?`On`:`Off`,t[6]=a,t[7]=o,t[8]=h):h=t[8];let g=`Enable ${n}`,_;t[9]!==l||t[10]!==a||t[11]!==c||t[12]!==g?(_=(0,$.jsx)(he,{checked:a,disabled:l,onCheckedChange:c,"aria-label":g}),t[9]=l,t[10]=a,t[11]=c,t[12]=g,t[13]=_):_=t[13];let v;t[14]!==m||t[15]!==h||t[16]!==_?(v=(0,$.jsxs)(`label`,{className:m,children:[h,_]}),t[14]=m,t[15]=h,t[16]=_,t[17]=v):v=t[17];let y=`${a?`Turn off`:`Turn on`} ${n}`,b;t[18]!==l||t[19]!==a||t[20]!==c?(b=()=>{l||c(!a)},t[18]=l,t[19]=a,t[20]=c,t[21]=b):b=t[21];let x;return t[22]!==l||t[23]!==n||t[24]!==u||t[25]!==y||t[26]!==b||t[27]!==d||t[28]!==v?(x=(0,$.jsx)(ue,{leading:u,title:n,description:d,descriptionLines:`expandable`,disabled:l,byline:f,footerAction:v,openLabel:y,onOpen:b}),t[22]=l,t[23]=n,t[24]=u,t[25]=y,t[26]=b,t[27]=d,t[28]=v,t[29]=x):x=t[29],x}function Ye(e){let t=(0,Q.c)(11),{value:n,onCopy:r}=e,i;t[0]===n?i=t[1]:(i=(0,$.jsx)(`code`,{className:`min-w-0 flex-1 truncate font-mono text-xs`,children:n}),t[0]=n,t[1]=i);let a;t[2]!==r||t[3]!==n?(a=()=>r(n),t[2]=r,t[3]=n,t[4]=a):a=t[4];let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(S,{name:`Copy`,"aria-hidden":!0}),t[5]=o):o=t[5];let s;t[6]===a?s=t[7]:(s=(0,$.jsx)(U,{variant:`ghost`,size:`sm`,"aria-label":`Copy address`,onClick:a,children:o}),t[6]=a,t[7]=s);let c;return t[8]!==i||t[9]!==s?(c=(0,$.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 rounded-md border border-border bg-surface-recessed py-1 pl-3 pr-1`,children:[i,s]}),t[8]=i,t[9]=s,t[10]=c):c=t[10],c}function Xe(e){let t=(0,Q.c)(16),{icon:n,title:r,description:i,action:a,children:o}=e,s;t[0]===n?s=t[1]:(s=(0,$.jsx)(S,{name:n,"aria-hidden":!0,className:`size-5 shrink-0 text-subtle-foreground`}),t[0]=n,t[1]=s);let c;t[2]===r?c=t[3]:(c=(0,$.jsx)(`span`,{className:`text-sm font-medium`,children:r}),t[2]=r,t[3]=c);let l;t[4]===i?l=t[5]:(l=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:i}),t[4]=i,t[5]=l);let u;t[6]!==c||t[7]!==l?(u=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[c,l]}),t[6]=c,t[7]=l,t[8]=u):u=t[8];let d;t[9]!==a||t[10]!==s||t[11]!==u?(d=(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[s,u,a]}),t[9]=a,t[10]=s,t[11]=u,t[12]=d):d=t[12];let f;return t[13]!==o||t[14]!==d?(f=(0,$.jsxs)(`li`,{className:`px-3 py-3`,children:[d,o]}),t[13]=o,t[14]=d,t[15]=f):f=t[15],f}function Ze(e){let t=(0,Q.c)(33),{connect:n,connectSetup:r,connectSetupOpen:i,otherMachineCount:a,mobileLinks:o,onToggleConnectSetup:s,onCopyConnectUrl:c,onAddMachine:l}=e,u=n.status===`unavailable`?`bb connect is turned off on this server. Enable its plugin to get a private getbb.app address.`:`bb connect gives this bb a private getbb.app address that only you can open.`,d;t[0]!==n.status||t[1]!==i||t[2]!==s?(d=n.status===`on`?(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs font-medium text-success`,children:[(0,$.jsx)(S,{name:`CircleCheck`,"aria-hidden":!0,className:`size-4`}),`On`]}):n.status===`off`?(0,$.jsx)(U,{size:`sm`,variant:`outline`,onClick:s,children:i?`Hide`:`Set up`}):null,t[0]=n.status,t[1]=i,t[2]=s,t[3]=d):d=t[3];let f;t[4]!==n.status||t[5]!==n.url||t[6]!==c?(f=n.status===`on`?(0,$.jsx)(Ye,{value:n.url,onCopy:c}):null,t[4]=n.status,t[5]=n.url,t[6]=c,t[7]=f):f=t[7];let p;t[8]!==n.status||t[9]!==r||t[10]!==i?(p=n.status===`off`&&i?(0,$.jsx)(`div`,{className:`mt-3 rounded-md border border-border p-3`,children:r}):null,t[8]=n.status,t[9]=r,t[10]=i,t[11]=p):p=t[11];let m;t[12]!==u||t[13]!==d||t[14]!==f||t[15]!==p?(m=(0,$.jsxs)(Xe,{icon:`ComputerCloud`,title:`Open bb from any browser`,description:u,action:d,children:[f,p]}),t[12]=u,t[13]=d,t[14]=f,t[15]=p,t[16]=m):m=t[16];let h=a>0?`${a} other ${a===1?`machine is`:`machines are`} already connected. Add more to run agents on a server, a desktop, or a cloud box.`:`Run agents on a server, a desktop, or a cloud box and steer them all from here.`,g;t[17]===l?g=t[18]:(g=(0,$.jsx)(U,{size:`sm`,variant:`outline`,onClick:l,children:`Add machine`}),t[17]=l,t[18]=g);let _;t[19]!==h||t[20]!==g?(_=(0,$.jsx)(Xe,{icon:`Laptop`,title:`Add another machine`,description:h,action:g}),t[19]=h,t[20]=g,t[21]=_):_=t[21];let v;t[22]===o.ios?v=t[23]:(v=(0,$.jsx)(U,{size:`sm`,variant:`outline`,asChild:!0,children:(0,$.jsx)(`a`,{href:o.ios,target:`_blank`,rel:`noreferrer`,children:`iOS`})}),t[22]=o.ios,t[23]=v);let y;t[24]===o.android?y=t[25]:(y=(0,$.jsx)(U,{size:`sm`,variant:`outline`,asChild:!0,children:(0,$.jsx)(`a`,{href:o.android,target:`_blank`,rel:`noreferrer`,children:`Android`})}),t[24]=o.android,t[25]=y);let b;t[26]!==y||t[27]!==v?(b=(0,$.jsx)(Xe,{icon:`Smartphone`,title:`Get the mobile app`,description:`Get a push when a thread needs you.`,action:(0,$.jsxs)(`span`,{className:`flex items-center gap-2`,children:[v,y]})}),t[26]=y,t[27]=v,t[28]=b):b=t[28];let x;return t[29]!==b||t[30]!==m||t[31]!==_?(x=(0,$.jsxs)(`ul`,{className:`divide-y divide-border-hairline rounded-lg border border-border`,children:[m,_,b]}),t[29]=b,t[30]=m,t[31]=_,t[32]=x):x=t[32],x}function Qe({entry:e,onContinue:t,onSettled:n}){let r=j(),i=g(),a=P({kind:`new-thread`}),o=(0,Z.useRef)(null),[s,c]=(0,Z.useState)(!1);return(0,Z.useEffect)(()=>{let t={active:!0,canSelect:e===`first_run`&&X(a.getCurrent())};o.current=t;let n=()=>{X(a.getCurrent())||(t.canSelect=!1)};n();let r=a.subscribe(n);return()=>{t.active=!1,r()}},[a,e]),{importing:s,importProjects:async(e,a)=>{let l=o.current;if(s||!l?.active)return;c(!0);let u=null;try{for(let t of a){if(!l.active)return;u=(await r.mutateAsync({name:t.name,source:{type:`local_path`,hostId:e,path:t.path}})).id}}catch{return}finally{l.active&&(l.canSelect&&u!==null&&i(u),c(!1),n())}l.active&&t()}}}var $e=3e3,et=200,tt=14,nt=1e3,rt=64*1024,it=6e3,at=`Install failed`,ot=1e4;function st(e){let t=new TextDecoder;return e.map(e=>t.decode(s(e.dataBase64),{stream:!0})).join(``)}function ct(e){return btoa(Array.from(new TextEncoder().encode(e),e=>String.fromCharCode(e)).join(``))}function lt(e){let t=(0,Q.c)(40),{agentName:n,session:i,alternate:a,onUseAlternate:o,onExit:s}=e,l;t[0]===i.id?l=t[1]:(l=u(i.id),t[0]=i.id,t[1]=l);let d;t[2]===i.id?d=t[3]:(d=e=>{let{signal:t}=e;return H.terminals.output({terminalId:i.id,tailBytes:rt,signal:t})},t[2]=i.id,t[3]=d);let f;t[4]!==l||t[5]!==d?(f={queryKey:l,queryFn:d,refetchInterval:nt,gcTime:0,retry:!1},t[4]=l,t[5]=d,t[6]=f):f=t[6];let p=r(f).data,m;t[7]===p?m=t[8]:(m=p===void 0?null:Pe(st(p.chunks)),t[7]=p,t[8]=m);let h=m,[g,_]=(0,Z.useState)(``),[v,y]=(0,Z.useState)(!1),[b,x]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(!1),w,T;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>{let e=window.setTimeout(()=>C(!0),it);return()=>window.clearTimeout(e)},T=[],t[9]=w,t[10]=T):(w=t[9],T=t[10]),(0,Z.useEffect)(w,T);let E=b??(S&&(h===null||h.url===null)),D;t[11]===p?D=t[12]:(D=p!==void 0&&!k(p.status),t[11]=p,t[12]=D);let O=D,A=p?.exitCode??null,j,N;t[13]!==A||t[14]!==O||t[15]!==s?(j=()=>{O&&s(A)},N=[A,O,s],t[13]=A,t[14]=O,t[15]=s,t[16]=j,t[17]=N):(j=t[16],N=t[17]),(0,Z.useEffect)(j,N);let P;t[18]!==g||t[19]!==i.id?(P=()=>{let e=g.trim();e.length!==0&&(y(!0),H.terminals.input({terminalId:i.id,dataBase64:ct(`${e}\r`)}).catch(()=>{y(!1),M.error(`Couldn't send the code. Try again.`)}))},t[18]=g,t[19]=i.id,t[20]=P):P=t[20];let F=P,I;t[21]===i?I=t[22]:(I=(0,$.jsx)(c,{autoFocus:!1,isPanelOpen:!0,session:i}),t[21]=i,t[22]=I);let L;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(L=e=>{_(e),y(!1)},t[23]=L):L=t[23];let R;t[24]===E?R=t[25]:(R=()=>x(!E),t[24]=E,t[25]=R);let B=a?.label??null,V;t[26]!==a||t[27]!==o?(V=()=>{a!==null&&o(a.method)},t[26]=a,t[27]=o,t[28]=V):V=t[28];let U;return t[29]!==n||t[30]!==g||t[31]!==v||t[32]!==h||t[33]!==F||t[34]!==I||t[35]!==R||t[36]!==B||t[37]!==V||t[38]!==E?(U=(0,$.jsx)(Ve,{agentName:n,guide:h,code:g,codeSubmitted:v,terminalVisible:E,terminal:I,onCodeChange:L,onSubmitCode:F,onOpenUrl:z,onCopy:ut,onToggleTerminal:R,alternateLabel:B,onUseAlternate:V}),t[29]=n,t[30]=g,t[31]=v,t[32]=h,t[33]=F,t[34]=I,t[35]=R,t[36]=B,t[37]=V,t[38]=E,t[39]=U):U=t[39],U}function ut(e){E(e)}async function dt({hostId:e,title:t}){let n=((await H.terminals.list({scope:{kind:`host_path`,hostId:e}}).catch(()=>null))?.sessions??[]).filter(e=>e.title===t&&k(e.status));await Promise.all(n.map(e=>H.terminals.close({mode:`force`,terminalId:e.id}).catch(()=>null)))}function ft(e){let t=(0,Q.c)(81),{chrome:n,entry:r,hostId:i,hostName:a,onContinue:o}=e,s=i!==null,c;t[0]===i?c=t[1]:(c=i===null?{}:{hostId:i},t[0]=i,t[1]=c);let l;t[2]!==s||t[3]!==c?(l={enabled:s,...c},t[2]=s,t[3]=c,t[4]=l):l=t[4];let u=w(l),d;t[5]===i?d=t[6]:(d=i===null?{enabled:!1}:{hostId:i},t[5]=i,t[6]=d);let p=ne(d),m;t[7]===i?m=t[8]:(m={hostId:i},t[7]=i,t[8]=m);let h=B(m),g=_(),{isLocalDaemonHost:y}=R(),x=fe(),S=de(),[C,T]=(0,Z.useState)(null),[E,D]=(0,Z.useState)(null),O=(0,Z.useRef)(null),{refetch:k}=u,{mutate:A}=S,{mutateAsync:j}=x,M;t[9]!==A||t[10]!==r||t[11]!==k?(M=e=>{let t=e===void 0?`cancelled`:e,n=O.current;n!==null&&(O.current=null,ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:t}}),T(null),A({mode:`force`,terminalId:n.session.id}),k())},t[9]=A,t[10]=r,t[11]=k,t[12]=M):M=t[12];let N=M,P=(0,Z.useRef)(0),F,I;t[13]===N?(F=t[14],I=t[15]):(F=()=>()=>{P.current+=1,N()},I=[N],t[13]=N,t[14]=F,t[15]=I),(0,Z.useEffect)(F,I);let L;t[16]===N?L=t[17]:(L=e=>{let t=O.current;t!==null&&e!==0&&D(t.providerId),N(e===0?`exited`:`failed`)},t[16]=N,t[17]=L);let z=L,V,U;t[18]!==k||t[19]!==C?(V=()=>{if(C===null)return;let e=window.setInterval(()=>{k()},$e);return()=>window.clearInterval(e)},U=[k,C],t[18]=k,t[19]=C,t[20]=V,t[21]=U):(V=t[20],U=t[21]),(0,Z.useEffect)(V,U);let W=u.data?.providers,G=C?.providerId??null,K;t[22]!==G||t[23]!==W?(K=G!==null&&W?.find(e=>e.providerId===G)?.status===`ready`,t[22]=G,t[23]=W,t[24]=K):K=t[24];let q=K,ee,te;t[25]!==N||t[26]!==q?(ee=()=>{q&&N(`ready`)},te=[N,q],t[25]=N,t[26]=q,t[27]=ee,t[28]=te):(ee=t[27],te=t[28]),(0,Z.useEffect)(ee,te);let{runningJobKey:J}=g,Y,X;t[29]!==k||t[30]!==J?(Y=()=>{J===null&&k()},X=[k,J],t[29]=k,t[30]=J,t[31]=Y,t[32]=X):(Y=t[31],X=t[32]),(0,Z.useEffect)(Y,X);let ie,ae,oe,se;if(t[33]!==h.data||t[34]!==h.isPending||t[35]!==j||t[36]!==N||t[37]!==r||t[38]!==z||t[39]!==i||t[40]!==g||t[41]!==y||t[42]!==p||t[43]!==C||t[44]!==E||t[45]!==W){ae=async(e,t)=>{let n=W?.find(t=>t.providerId===e);if(i===null||!n)return;let a=t??(y(i)?`local`:`remote`),o=xe(n,a===`local`);if(o===null)return;N(),D(null),P.current+=1;let s=P.current;ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:`started`}});let c=`Sign in to ${n.displayName}`;await dt({hostId:i,title:c});let l;try{l=await j({cols:et,rows:tt,title:c,start:{mode:`command`,command:o},target:{kind:`host_path`,hostId:i,cwd:null}})}catch{ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:`failed`}});return}if(P.current!==s){ge({name:`onboarding_sign_in`,properties:{entry:r,outcome:`cancelled`}}),H.terminals.close({mode:`force`,terminalId:l.id}).catch(pt);return}let u={providerId:e,session:l,method:a,hasAlternateMethod:n.localLoginCommand!==null&&n.loginCommand!==null&&n.localLoginCommand!==n.loginCommand};O.current=u,T(u)};let e;t[50]!==h.data||t[51]!==i||t[52]!==g?(e=e=>{let t=h.data?.[e];if(i===null||t===void 0)return;let n=v({provider:e,status:t});n===null||!b(n)||g.startInstall({hostId:i,issue:n})},t[50]=h.data,t[51]=i,t[52]=g,t[53]=e):e=t[53],ie=e;let n;t[54]!==i||t[55]!==g.failuresByJobKey?(n=e=>{if(i===null)return;let t=g.failuresByJobKey.get(f(i,e));t!==void 0&&re(t.logDialogState)},t[54]=i,t[55]=g.failuresByJobKey,t[56]=n):n=t[56],se=n,oe=i===null||W===void 0?null:W.map(e=>{let t=p.data?.find(t=>t.id===e.providerId),n=f(i,e.providerId),r=C?.providerId===e.providerId;return{id:e.providerId,name:e.displayName,provider:t??{id:e.providerId,logoUrl:null},state:be({health:e,cliStatus:h.data?.[e.providerId],installing:g.runningJobKey===n||g.queuedJobKeys.has(n),installFailure:g.failuresByJobKey.has(n)?at:null,signingIn:r,signInFailed:E===e.providerId,installInfoPending:h.isPending}),expanded:r&&C!==null?(0,$.jsx)(lt,{agentName:e.displayName,session:C.session,alternate:C.hasAlternateMethod?C.method===`local`?{label:`Use a one-time code instead`,method:`remote`}:{label:`Use browser sign-in instead`,method:`local`}:null,onUseAlternate:t=>void ae(e.providerId,t),onExit:z},C.session.id):void 0}}),t[33]=h.data,t[34]=h.isPending,t[35]=j,t[36]=N,t[37]=r,t[38]=z,t[39]=i,t[40]=g,t[41]=y,t[42]=p,t[43]=C,t[44]=E,t[45]=W,t[46]=ie,t[47]=ae,t[48]=oe,t[49]=se}else ie=t[46],ae=t[47],oe=t[48],se=t[49];let ce=oe,le;t[57]===W?le=t[58]:(le=Se(W),t[57]=W,t[58]=le);let ue=le,pe=ce===null?u.isError:!ue,me=pe?`Threads can't start until one agent is ready.`:null,he=!ue,_e=pe?`Skip for now`:void 0,ve;t[59]===ae?ve=t[60]:(ve=e=>void ae(e),t[59]=ae,t[60]=ve);let ye;t[61]===N?ye=t[62]:(ye=()=>N(),t[61]=N,t[62]=ye);let Ce;t[63]!==h||t[64]!==k?(Ce=()=>{k(),h.refetch()},t[63]=h,t[64]=k,t[65]=Ce):Ce=t[65];let we;t[66]!==ce||t[67]!==a||t[68]!==ie||t[69]!==ve||t[70]!==ye||t[71]!==Ce||t[72]!==se?(we=(0,$.jsx)(ze,{machineName:a,agents:ce,onSignIn:ve,onInstall:ie,onViewInstallLog:se,onCancelSignIn:ye,onRecheck:Ce}),t[66]=ce,t[67]=a,t[68]=ie,t[69]=ve,t[70]=ye,t[71]=Ce,t[72]=se,t[73]=we):we=t[73];let Te;return t[74]!==n||t[75]!==o||t[76]!==me||t[77]!==he||t[78]!==_e||t[79]!==we?(Te=(0,$.jsx)(Ie,{...n,step:`agent`,title:`Connect a coding agent`,description:`bb runs the agents you already use. You need one that is installed and signed in on this computer.`,footerNote:me,primaryLabel:`Continue`,primaryDisabled:he,secondaryLabel:_e,onPrimary:o,onSecondary:o,children:we}),t[74]=n,t[75]=o,t[76]=me,t[77]=he,t[78]=_e,t[79]=we,t[80]=Te):Te=t[80],Te}function pt(){return null}function mt(e){let t=(0,Q.c)(83),{chrome:n,entry:r,hostId:i,projectIdsAtOpen:a,onBack:o,onContinue:s,onSkip:c}=e,l=d(i),u=p(),f=D(),[h,g]=(0,Z.useState)(null),[_,v]=(0,Z.useState)(!1),[y]=(0,Z.useState)(xt),{refetch:b}=l,x;t[0]===b?x=t[1]:(x=()=>void b(),t[0]=b,t[1]=x);let S;t[2]!==r||t[3]!==s||t[4]!==x?(S={entry:r,onContinue:s,onSettled:x},t[2]=r,t[3]=s,t[4]=x,t[5]=S):S=t[5];let{importing:C,importProjects:w}=Qe(S),E=f.data?.projects,O;t[6]!==i||t[7]!==E?(O=i===null?[]:(E??[]).flatMap(e=>{let t=N(e.sources,i);return t===void 0?[]:[{id:e.id,name:e.name,path:t.path}]}),t[6]=i,t[7]=E,t[8]=O):O=t[8];let k=O,A=l.data?.repos,j;t[9]!==k||t[10]!==A?(j=A?.map(e=>e.projectId===null?{...e,projectId:k.find(t=>t.path===e.path)?.id??null}:e),t[9]=k,t[10]=A,t[11]=j):j=t[11];let M=j,P;t[12]===M?P=t[13]:(P=new Set((M??[]).filter(bt).map(yt)),t[12]=M,t[13]=P);let F=P,I;t[14]!==M||t[15]!==y||t[16]!==h?(I=h??Te(M??[],y),t[14]=M,t[15]=y,t[16]=h,t[17]=I):I=t[17];let L=I,R;t[18]===L?R=t[19]:(R=[...L],t[18]=L,t[19]=R);let z;t[20]!==F||t[21]!==R?(z=new Set(R.filter(e=>F.has(e))),t[20]=F,t[21]=R,t[22]=z):z=t[22];let B=z,V;t[23]===M?V=t[24]:(V=new Set((M??[]).map(vt)),t[23]=M,t[24]=V);let H=V,U;if(t[25]!==M||t[26]!==H||t[27]!==k||t[28]!==y||t[29]!==a){let e;t[31]!==H||t[32]!==a?(e=e=>!H.has(e.path)&&a!==null&&!a.has(e.id),t[31]=H,t[32]=a,t[33]=e):e=t[33];let n;t[34]===y?n=t[35]:(n=e=>({id:e.path,name:e.name,path:e.path,lastActive:T({timestamp:Date.parse(e.lastActivityAt),now:y}),remote:Ee(e.originUrl),added:e.projectId!==null}),t[34]=y,t[35]=n),U=[...k.filter(e).map(_t),...(M??[]).map(n)],t[25]=M,t[26]=H,t[27]=k,t[28]=y,t[29]=a,t[30]=U}else U=t[30];let W=U,G;t[36]!==M||t[37]!==i||t[38]!==w||t[39]!==B?(G=()=>{i===null||M===void 0||w(i,M.filter(e=>e.projectId===null&&B.has(e.path)))},t[36]=M,t[37]=i,t[38]=w,t[39]=B,t[40]=G):G=t[40];let K=G,q=i===null||l.isPending||_,ee=q||B.size===0?`Continue`:`Import ${B.size} ${B.size===1?`project`:`projects`}`,te;t[41]!==K||t[42]!==s||t[43]!==B.size?(te=()=>{B.size===0?s():K()},t[41]=K,t[42]=s,t[43]=B.size,t[44]=te):te=t[44];let J;t[45]!==l.data||t[46]!==l.isError||t[47]!==q?(J=q?{kind:`scanning`}:l.isError?{kind:`error`,message:`bb couldn't scan this computer for git repos.`}:{kind:`results`,truncated:l.data.truncated},t[45]=l.data,t[46]=l.isError,t[47]=q,t[48]=J):J=t[48];let Y;t[49]===B?Y=t[50]:(Y=e=>{let t=new Set(B);t.has(e)?t.delete(e):t.add(e),g(t)},t[49]=B,t[50]=Y);let X;t[51]===M?X=t[52]:(X=()=>g(new Set((M??[]).filter(gt).map(ht))),t[51]=M,t[52]=X);let ne;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(ne=()=>g(new Set),t[53]=ne):ne=t[53];let re;t[54]===b?re=t[55]:(re=()=>{v(!0),b().finally(()=>v(!1))},t[54]=b,t[55]=re);let ie;t[56]!==u.openCreateDialog||t[57]!==W||t[58]!==B||t[59]!==J||t[60]!==Y||t[61]!==X||t[62]!==re?(ie=(0,$.jsx)(He,{status:J,repos:W,selectedIds:B,onToggle:Y,onSelectAll:X,onSelectNone:ne,onAddFolder:u.openCreateDialog,onRetry:re}),t[56]=u.openCreateDialog,t[57]=W,t[58]=B,t[59]=J,t[60]=Y,t[61]=X,t[62]=re,t[63]=ie):ie=t[63];let ae;t[64]!==u.hostId||t[65]!==u.hostName||t[66]!==u.hosts||t[67]!==u.isCreating||t[68]!==u.platform||t[69]!==u.projectPathDialog.onOpenChange||t[70]!==u.projectPathDialog.target||t[71]!==u.submitProjectPath?(ae=(0,$.jsx)(m,{target:u.projectPathDialog.target,pending:u.isCreating,platform:u.platform,hostId:u.hostId,hostName:u.hostName,hosts:u.hosts,onOpenChange:u.projectPathDialog.onOpenChange,onSubmit:u.submitProjectPath}),t[64]=u.hostId,t[65]=u.hostName,t[66]=u.hosts,t[67]=u.isCreating,t[68]=u.platform,t[69]=u.projectPathDialog.onOpenChange,t[70]=u.projectPathDialog.target,t[71]=u.submitProjectPath,t[72]=ae):ae=t[72];let oe;return t[73]!==n||t[74]!==C||t[75]!==o||t[76]!==c||t[77]!==q||t[78]!==ee||t[79]!==te||t[80]!==ie||t[81]!==ae?(oe=(0,$.jsxs)(Ie,{...n,step:`projects`,title:`Add your projects`,description:`Git repos on this computer that you've worked in over the last 30 days.`,primaryLabel:ee,primaryDisabled:q,primaryBusy:C,secondaryLabel:`Skip`,onPrimary:te,onSecondary:c,onBack:o,children:[ie,ae]}),t[73]=n,t[74]=C,t[75]=o,t[76]=c,t[77]=q,t[78]=ee,t[79]=te,t[80]=ie,t[81]=ae,t[82]=oe):oe=t[82],oe}function ht(e){return e.path}function gt(e){return e.projectId===null}function _t(e){return{id:`project:${e.id}`,name:e.name,path:e.path,lastActive:``,remote:null,added:!0}}function vt(e){return e.path}function yt(e){return e.path}function bt(e){return e.projectId===null}function xt(){return Date.now()}function St({entry:e,enabled:t,onChanged:n}){let r=o(),i=V(),a=W(e),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(null);l!==null&&l===t&&u(null);let d=s||a!==null,f=l!==null&&l!==t;(0,Z.useEffect)(()=>{if(!f||d)return;let e=window.setTimeout(()=>u(null),ot);return()=>window.clearTimeout(e)},[d,f]);let p=async t=>{u(t),c(!0);try{t&&!e.installed?L({queryClient:r,job:await q(fetch,{entryId:e.entryId,marketplace:e.marketplace})}):await i(e.pluginId,t),await n()}catch(t){u(null),M.error(t instanceof Error?t.message:`Failed to update ${e.displayName}.`)}finally{c(!1)}};return(0,$.jsx)(Je,{name:e.displayName,description:e.description,icon:{icon:e.icon,iconUrl:e.iconUrl,iconTinted:e.iconTinted},enabled:l??t,pending:d||f,unavailableReason:e.installed||e.compatible?null:e.incompatibleReason??`Not available on this server.`,onToggle:e=>void p(e)})}function Ct(e){let t=(0,Q.c)(25),{chrome:n,onBack:r,onContinue:i,onSkip:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={enabled:!0},t[0]=o):o=t[0];let s=F(``,o),c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c={enabled:!0},t[1]=c):c=t[1];let l=J(c),{refetch:u}=s,{refetch:d}=l,f;t[2]!==u||t[3]!==d?(f=async()=>{await Promise.all([u(),d()])},t[2]=u,t[3]=d,t[4]=f):f=t[4];let p=f,m=l.data?.plugins,h=m?.length??0,g;t[5]===u?g=t[6]:(g=()=>{u()},t[5]=u,t[6]=g);let _;t[7]!==h||t[8]!==u?(_=[h,u],t[7]=h,t[8]=u,t[9]=_):_=t[9],(0,Z.useEffect)(g,_),s.data?.entries;let v;bb0:{let e=s.data?.entries;if(e===void 0){v=null;break bb0}let n;t[10]===e?n=t[11]:(n=ve.flatMap(t=>{let{entryId:n}=t,r=e.find(e=>e.marketplace===`bb-official`&&e.entryId===n);return r===void 0?[]:[r]}),t[10]=e,t[11]=n),v=n}let y=v,b;t[12]!==y||t[13]!==m||t[14]!==p?(b=y===null?(0,$.jsx)(Ke,{count:ve.length}):y.map(e=>(0,$.jsx)(St,{entry:e,enabled:e.installed&&(m?.find(t=>t.id===e.pluginId)?.enabled??!1),onChanged:p},e.entryId)),t[12]=y,t[13]=m,t[14]=p,t[15]=b):b=t[15];let x;t[16]!==n.compact||t[17]!==b?(x=(0,$.jsx)(Ge,{compact:n.compact,children:b}),t[16]=n.compact,t[17]=b,t[18]=x):x=t[18];let S;return t[19]!==n||t[20]!==r||t[21]!==i||t[22]!==a||t[23]!==x?(S=(0,$.jsx)(Ie,{...n,step:`plugins`,title:`Make bb yours`,description:`Most of bb is plugins. These ones are off until you want them, and you can change your mind in Plugins.`,primaryLabel:`Continue`,secondaryLabel:`Skip`,onPrimary:i,onSecondary:a,onBack:r,children:x}),t[19]=n,t[20]=r,t[21]=i,t[22]=a,t[23]=x,t[24]=S):S=t[24],S}function wt(e){let n=(0,Q.c)(28),{chrome:r,hostId:i,onBack:a,onFinish:o,onLeave:s}=e,c=y(),l=A(),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),m=t(),[h]=(0,Z.useState)(m.pathname),g=m.pathname!==h,_,v;n[0]!==g||n[1]!==s?(_=()=>{g&&s()},v=[g,s],n[0]=g,n[1]=s,n[2]=_,n[3]=v):(_=n[2],v=n[3]),(0,Z.useEffect)(_,v);let b;n[4]===l.data?b=n[5]:(b=l.data??[],n[4]=l.data,n[5]=b);let x;if(n[6]!==i||n[7]!==b){let e;n[9]===i?e=n[10]:(e=e=>e.id!==i,n[9]=i,n[10]=e),x=b.filter(e),n[6]=i,n[7]=b,n[8]=x}else x=n[8];let S=x.length,w=c.data?.serverAccess,T;n[11]===w?T=n[12]:(T=De(w),n[11]=w,n[12]=T);let E;n[13]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(oe,{pluginId:ye}),n[13]=E):E=n[13];let D;n[14]===Symbol.for(`react.memo_cache_sentinel`)?(D=()=>d(Et),n[14]=D):D=n[14];let O;n[15]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>p(!0),n[15]=O):O=n[15];let k;n[16]!==u||n[17]!==S||n[18]!==T?(k=(0,$.jsx)(Ze,{connect:T,connectSetup:E,connectSetupOpen:u,otherMachineCount:S,mobileLinks:C,onToggleConnectSetup:D,onCopyConnectUrl:Tt,onAddMachine:O}),n[16]=u,n[17]=S,n[18]=T,n[19]=k):k=n[19];let j;n[20]===f?j=n[21]:(j=(0,$.jsx)(ae,{open:f,onOpenChange:p}),n[20]=f,n[21]=j);let M;return n[22]!==r||n[23]!==a||n[24]!==o||n[25]!==k||n[26]!==j?(M=(0,$.jsxs)(Ie,{...r,step:`devices`,title:`Use bb from anywhere`,description:`All optional. Everything here also lives in Settings → Machines.`,primaryLabel:`Start using bb`,onPrimary:o,onBack:a,children:[k,j]}),n[22]=r,n[23]=a,n[24]=o,n[25]=k,n[26]=j,n[27]=M):M=n[27],M}function Tt(e){E(e)}function Et(e){return!e}var Dt=[`agent`,`projects`,`plugins`,`devices`];function Ot(e){let t=(0,Q.c)(82),{initialStep:n,entry:r,onClose:i}=e,[a,o]=(0,Z.useState)(n),s=D().data?.projects,[c,u]=(0,Z.useState)(null);c===null&&s!==void 0&&u(new Set(s.map(Mt)));let f=h(),p=f?.id??null;d(p);let m=p!==null,g;t[0]===p?g=t[1]:(g=p===null?{}:{hostId:p},t[0]=p,t[1]=g);let _;t[2]!==m||t[3]!==g?(_={enabled:m,poll:!1,...g},t[2]=m,t[3]=g,t[4]=_):_=t[4];let v=w(_),y=v.data?.providers,b=(0,Z.useRef)(null),x,S;t[5]!==y||t[6]!==v.isError||t[7]!==r?(x=()=>{if(y===void 0&&!v.isError)return;let e=v.isError?void 0:y,t=e?.some(jt)??!0,n={entry:r,agent_installed:e?.some(At)??!1?!0:t?null:!1,agent_ready:Se(e)?!0:t?null:!1},i=JSON.stringify(n);b.current!==i&&(b.current=i,ge({name:`onboarding_agent_state`,properties:n}))},S=[y,v.isError,r],t[5]=y,t[6]=v.isError,t[7]=r,t[8]=x,t[9]=S):(x=t[8],S=t[9]),(0,Z.useEffect)(x,S);let C=(0,Z.useRef)(r!==`first_run`),T,E;t[10]===y?(T=t[11],E=t[12]):(T=()=>{C.current||y===void 0||(C.current=!0,ge({name:`onboarding_started`,properties:{agent_installed:y.some(kt),agent_ready:Se(y)}}))},E=[y],t[10]=y,t[11]=T,t[12]=E),(0,Z.useEffect)(T,E);let k;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(k=new Set,t[13]=k):k=t[13];let A=(0,Z.useRef)(k),j,M;t[14]!==r||t[15]!==a?(M=()=>{A.current.has(a)||(A.current.add(a),ge({name:`onboarding_step_reached`,properties:{step:a,entry:r}}))},j=[r,a],t[14]=r,t[15]=a,t[16]=j,t[17]=M):(j=t[16],M=t[17]),(0,Z.useEffect)(M,j);let N=(0,Z.useRef)(!1),P;t[18]!==r||t[19]!==i||t[20]!==a?(P=e=>{N.current||(N.current=!0,ge(e===`skipped`?{name:`onboarding_step_skipped`,properties:{step:a,entry:r}}:{name:`onboarding_step_completed`,properties:{step:a,entry:r}}),ge({name:`onboarding_finished`,properties:{outcome:e,entry:r,last_step:a}}),i())},t[18]=r,t[19]=i,t[20]=a,t[21]=P):P=t[21];let F=P,I=l(`(max-width: 640px)`),[L]=(0,Z.useState)(te),R=O(),z;t[22]!==L||t[23]!==R?(z=K({desktopInfo:L,windowState:R}),t[22]=L,t[23]=R,t[24]=z):z=t[24];let B;t[25]===F?B=t[26]:(B=()=>F(`skipped`),t[25]=F,t[26]=B);let V;t[27]!==I||t[28]!==z||t[29]!==B?(V={compact:I,reserveMacosTrafficLights:z,onSelectStep:o,onSkipAll:B},t[27]=I,t[28]=z,t[29]=B,t[30]=V):V=t[30];let H=V,U;t[31]===a?U=t[32]:(U=e=>()=>{let t=Dt[Dt.indexOf(a)+e];t!==void 0&&o(t)},t[31]=a,t[32]=U);let W=U,G;t[33]!==r||t[34]!==W||t[35]!==a?(G=e=>()=>{ge({name:e===`completed`?`onboarding_step_completed`:`onboarding_step_skipped`,properties:{step:a,entry:r}}),W(1)()},t[33]=r,t[34]=W,t[35]=a,t[36]=G):G=t[36];let q=G;switch(a){case`agent`:{let e=f?.name??null,n;t[37]===y?n=t[38]:(n=Se(y)?`completed`:`skipped`,t[37]=y,t[38]=n);let i;t[39]!==q||t[40]!==n?(i=q(n),t[39]=q,t[40]=n,t[41]=i):i=t[41];let a;return t[42]!==H||t[43]!==r||t[44]!==p||t[45]!==e||t[46]!==i?(a=(0,$.jsx)(ft,{chrome:H,entry:r,hostId:p,hostName:e,onContinue:i}),t[42]=H,t[43]=r,t[44]=p,t[45]=e,t[46]=i,t[47]=a):a=t[47],a}case`projects`:{let e;t[48]===W?e=t[49]:(e=W(-1),t[48]=W,t[49]=e);let n,i;t[50]===q?(n=t[51],i=t[52]):(n=q(`completed`),i=q(`skipped`),t[50]=q,t[51]=n,t[52]=i);let a;return t[53]!==H||t[54]!==r||t[55]!==p||t[56]!==c||t[57]!==e||t[58]!==n||t[59]!==i?(a=(0,$.jsx)(mt,{chrome:H,entry:r,hostId:p,projectIdsAtOpen:c,onBack:e,onContinue:n,onSkip:i}),t[53]=H,t[54]=r,t[55]=p,t[56]=c,t[57]=e,t[58]=n,t[59]=i,t[60]=a):a=t[60],a}case`plugins`:{let e;t[61]===W?e=t[62]:(e=W(-1),t[61]=W,t[62]=e);let n,r;t[63]===q?(n=t[64],r=t[65]):(n=q(`completed`),r=q(`skipped`),t[63]=q,t[64]=n,t[65]=r);let i;return t[66]!==H||t[67]!==e||t[68]!==n||t[69]!==r?(i=(0,$.jsx)(Ct,{chrome:H,onBack:e,onContinue:n,onSkip:r}),t[66]=H,t[67]=e,t[68]=n,t[69]=r,t[70]=i):i=t[70],i}case`devices`:{let e;t[71]===W?e=t[72]:(e=W(-1),t[71]=W,t[72]=e);let n,r;t[73]===F?(n=t[74],r=t[75]):(n=()=>F(`completed`),r=()=>F(`skipped`),t[73]=F,t[74]=n,t[75]=r);let i;return t[76]!==H||t[77]!==p||t[78]!==e||t[79]!==n||t[80]!==r?(i=(0,$.jsx)(wt,{chrome:H,hostId:p,onBack:e,onFinish:n,onLeave:r}),t[76]=H,t[77]=p,t[78]=e,t[79]=n,t[80]=r,t[81]=i):i=t[81],i}}}function kt(e){return e.status!==`not_installed`&&e.status!==`unknown`}function At(e){return e.status!==`not_installed`&&e.status!==`unknown`}function jt(e){return e.status===`unknown`}function Mt(e){return e.id}export{Ot as OnboardingFlow};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,ni as n}from"./boot-vendor-BBLG7GwQ.js";import{$i as r,Cf as i,Ji as a,Qi as o,Qm as s,Rf as c,Sf as l,Tf as u,Xi as d,ah as f,ia as p,nh as m,oh as h}from"./index-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,ni as n}from"./boot-vendor-BBLG7GwQ.js";import{$i as r,Cf as i,Ji as a,Qi as o,Qm as s,Rf as c,Sf as l,Tf as u,Xi as d,ah as f,ia as p,nh as m,oh as h}from"./index-BBxUiLNy.js";var g=t(),_=e(n(),1),v=`h-8 w-fit max-w-full min-w-0 items-center justify-start gap-1 px-1 text-xs leading-tight`,y=`border-none bg-transparent shadow-none`,b=`flex min-w-0 items-center gap-1.5`,x=`contents`,S=`max-h-[min(var(--radix-dropdown-menu-content-available-height),calc(100dvh-0.5rem))] w-max min-w-0 max-w-96 overflow-auto overflow-x-hidden overscroll-contain`,C=`text-muted-foreground hover:text-muted-foreground`;function w(e){let t=(0,g.c)(26),{label:n,value:r,leading:a,compactValue:o,className:s,tooltip:c}=e,d=typeof r==`string`?`${n}: ${r}`:void 0,f=c?void 0:d,p=c?0:void 0,m=c&&`rounded-md outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background`,y;t[0]!==s||t[1]!==m?(y=h(`inline-flex`,v,m,C,s),t[0]=s,t[1]=m,t[2]=y):y=t[2];let x;t[3]===n?x=t[4]:(x=(0,_.jsxs)(`span`,{className:`sr-only`,children:[n,`: `]}),t[3]=n,t[4]=x);let S;t[5]===r?S=t[6]:(S=(0,_.jsx)(`span`,{className:`min-w-0 truncate`,"data-promptbox-full-label":``,children:r}),t[5]=r,t[6]=S);let w;t[7]===o?w=t[8]:(w=o?(0,_.jsx)(`span`,{className:`min-w-0 truncate`,"data-promptbox-compact-label":``,children:o}):null,t[7]=o,t[8]=w);let T;t[9]!==a||t[10]!==x||t[11]!==S||t[12]!==w?(T=(0,_.jsxs)(`span`,{className:b,children:[a,x,S,w]}),t[9]=a,t[10]=x,t[11]=S,t[12]=w,t[13]=T):T=t[13];let E;t[14]!==f||t[15]!==p||t[16]!==y||t[17]!==T?(E=(0,_.jsx)(`div`,{"data-option-display":``,title:f,tabIndex:p,className:y,children:T}),t[14]=f,t[15]=p,t[16]=y,t[17]=T,t[18]=E):E=t[18];let D=E;if(!c)return D;let O;t[19]===D?O=t[20]:(O=(0,_.jsx)(u,{asChild:!0,children:D}),t[19]=D,t[20]=O);let k;t[21]===c?k=t[22]:(k=(0,_.jsx)(i,{children:c}),t[21]=c,t[22]=k);let A;return t[23]!==O||t[24]!==k?(A=(0,_.jsxs)(l,{children:[O,k]}),t[23]=O,t[24]=k,t[25]=A):A=t[25],A}var T=`text-warning-text`,E=`hover:text-warning-text data-[state=open]:text-warning-text`;function D(e){let t=(0,g.c)(43),{label:n,notice:i,value:l,options:u,onChange:v,className:y,caretClassName:b,contentClassName:x,muted:C,defaultOpen:w,modal:D,align:O,displayOverride:k,disabled:A,showChevronWhenDisabled:j,trigger:M}=e,N=O===void 0?`start`:O,P;if(t[0]!==u||t[1]!==l){let e;t[3]===l?e=t[4]:(e=e=>e.value===l,t[3]=l,t[4]=e),P=u.find(e),t[0]=u,t[1]=l,t[2]=P}else P=t[2];let F=P,I=(k?`default`:F?.tone)===`warning`,L=F?.icon,R=k?.label??F?.label??l,z=k?.compactLabel??F?.compactLabel,B=k?.description??F?.description,V=k?.title?k.title:B?`${n}: ${R} - ${B}`:`${n}: ${R}`,H;t[5]!==L||t[6]!==b||t[7]!==y||t[8]!==M||t[9]!==A||t[10]!==n||t[11]!==C||t[12]!==z||t[13]!==I||t[14]!==R||t[15]!==V||t[16]!==j?(H=M??(0,_.jsxs)(m,{type:`button`,variant:`ghost`,size:`sm`,"aria-label":n,disabled:A,className:h(`h-8 w-fit max-w-full min-w-0 items-center justify-start gap-1 px-1 text-xs leading-tight`,`border-none bg-transparent shadow-none`,`transition-none`,C&&`text-muted-foreground hover:text-muted-foreground`,I&&T,I&&E,A&&`cursor-default disabled:opacity-100`,y),children:[(0,_.jsxs)(`span`,{className:`contents`,title:V,children:[L?(0,_.jsx)(L,{className:`size-3.5 shrink-0`}):null,z?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(`span`,{className:`min-w-0 truncate`,"data-promptbox-full-label":``,children:R}),(0,_.jsx)(`span`,{className:`min-w-0 truncate`,"data-promptbox-compact-label":``,children:z})]}):(0,_.jsx)(`span`,{className:`min-w-0 truncate`,children:R})]}),A&&!j?null:(0,_.jsx)(s,{name:`ChevronDown`,className:h(`size-3.5 shrink-0 text-muted-foreground`,b)})]}),t[5]=L,t[6]=b,t[7]=y,t[8]=M,t[9]=A,t[10]=n,t[11]=C,t[12]=z,t[13]=I,t[14]=R,t[15]=V,t[16]=j,t[17]=H):H=t[17];let U=H;if(A)return U;let W;t[18]===U?W=t[19]:(W=(0,_.jsx)(p,{asChild:!0,children:U}),t[18]=U,t[19]=W);let G;t[20]===x?G=t[21]:(G=h(S,x),t[20]=x,t[21]=G);let K;t[22]===n?K=t[23]:(K=(0,_.jsx)(r,{children:n}),t[22]=n,t[23]=K);let q;if(t[24]!==v||t[25]!==u||t[26]!==l){let e;t[28]!==v||t[29]!==l?(e=e=>{let t=e.icon;return(0,_.jsxs)(o,{disabled:e.disabled,onSelect:()=>v(e.value),className:h(`flex items-start justify-between gap-3 whitespace-normal`,f),children:[(0,_.jsxs)(`span`,{className:h(`flex min-w-0 flex-1 items-start gap-2`,e.tone===`warning`&&`text-warning-text`),children:[t?(0,_.jsx)(t,{className:`size-4 shrink-0 max-md:pointer-coarse:mt-0.5`}):null,(0,_.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,_.jsx)(`span`,{className:`block whitespace-normal break-words font-medium`,title:e.label,children:e.label}),e.disabled&&e.disabledReason?(0,_.jsx)(`span`,{className:`mt-0.5 block whitespace-normal break-words text-xs leading-snug text-muted-foreground`,children:e.disabledReason}):e.description?(0,_.jsx)(`span`,{className:`mt-0.5 block whitespace-normal break-words text-xs leading-snug text-muted-foreground`,children:e.description}):null]})]}),(0,_.jsx)(s,{name:`Check`,className:h(c,`shrink-0`,e.value===l?`opacity-100`:`opacity-0`)})]},e.value)},t[28]=v,t[29]=l,t[30]=e):e=t[30],q=u.map(e),t[24]=v,t[25]=u,t[26]=l,t[27]=q}else q=t[27];let J;t[31]!==N||t[32]!==n||t[33]!==i||t[34]!==G||t[35]!==K||t[36]!==q?(J=(0,_.jsxs)(d,{align:N,className:G,mobileTitle:n,children:[K,i,q]}),t[31]=N,t[32]=n,t[33]=i,t[34]=G,t[35]=K,t[36]=q,t[37]=J):J=t[37];let Y;return t[38]!==w||t[39]!==D||t[40]!==W||t[41]!==J?(Y=(0,_.jsxs)(a,{defaultOpen:w,modal:D,children:[W,J]}),t[38]=w,t[39]=D,t[40]=W,t[41]=J,t[42]=Y):Y=t[42],Y}export{C as a,S as i,v as n,x as o,y as r,w as s,D as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r,rr as i}from"./boot-vendor-BBLG7GwQ.js";import{t as a}from"./src-BZGKs9k0.js";import{La as o,Ua as s,Wa as c,Xf as l,oh as u,wf as d}from"./index-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r,rr as i}from"./boot-vendor-BBLG7GwQ.js";import{t as a}from"./src-BZGKs9k0.js";import{La as o,Ua as s,Wa as c,Xf as l,oh as u,wf as d}from"./index-BBxUiLNy.js";import{t as f}from"./useScrollOverflowState-DyS0S3x1.js";function p(e,t){let n=[],r=e.toLowerCase(),i=t.toLowerCase(),a=0;for(let e of i){if(e===` `)continue;let t=r.indexOf(e,a);if(t===-1)return[];n.push(t),a=t+1}return n}function m(e){if(e.query.trim()===``)return e.actions.map(e=>({action:e,positions:[]}));let t=new Map(e.actions.map((e,t)=>[e.id,t])),n=new Map(e.recentIds.map((e,t)=>[e,t])),r=e=>n.get(e.id)??2**53-1,i=e=>t.get(e.id)??0;return[...a({items:e.actions,query:e.query,getText:e=>e.title,getAliases:e=>[e.group],limit:50})].sort((e,t)=>t.score-e.score||r(e.item)-r(t.item)||i(e.item)-i(t.item)).map(t=>({action:t.item,positions:p(t.item.title,e.query)}))}var h=t(),g=e(n(),1),_=e(r(),1),v=`px-2 py-1 text-xs font-normal leading-5 text-subtle-foreground`;function y(e){let t=(0,h.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,_.jsx)(`kbd`,{"aria-hidden":`true`,className:`pointer-events-none inline-flex shrink-0 items-center justify-center whitespace-nowrap rounded-sm bg-state-hover/50 px-1.5 py-1 font-sans text-xs font-normal leading-none tabular-nums text-subtle-foreground`,children:n}),t[0]=n,t[1]=r),r}function b({activeDescendantId:e,children:t,inputDescription:n,inputLabel:r,inputRef:a,listId:p,listLabel:m,listRef:h,modeChip:v,inputAccessory:y,onInputChange:b,onInputKeyDown:x,placeholder:S,value:C}){let w=l(),T=(0,g.useId)(),E=f({measureOverflow:!0}),D=i(h,E.scrollRef),O=E.aboveOverflow&&E.belowOverflow?`linear-gradient(to bottom, transparent 0, black 1.5rem, black calc(100% - 1.5rem), transparent 100%)`:E.aboveOverflow?`linear-gradient(to bottom, transparent 0, black 1.5rem, black 100%)`:E.belowOverflow?`linear-gradient(to bottom, black 0, black calc(100% - 1.5rem), transparent 100%)`:void 0;return(0,_.jsxs)(d,{children:[(0,_.jsxs)(c,{children:[v===void 0?null:(0,_.jsx)(o,{...v}),(0,_.jsx)(`input`,{ref:a,autoFocus:!0,role:`combobox`,"aria-expanded":!0,"aria-controls":p,"aria-activedescendant":e,"aria-describedby":T,"aria-label":r,autoComplete:`off`,spellCheck:!1,className:u(s,w&&`text-base`),placeholder:S,value:C,onChange:e=>b(e.target.value),onKeyDown:x}),(0,_.jsx)(`span`,{id:T,className:`sr-only`,children:n}),y]}),(0,_.jsx)(`div`,{className:`relative min-h-0 overflow-hidden rounded-b-[inherit] bg-background`,"data-palette-results-clip":!0,children:(0,_.jsxs)(`div`,{ref:D,id:p,role:`listbox`,"aria-label":m,className:`${w?`h-full`:`max-h-[min(24rem,50dvh)]`} overflow-y-auto p-1`,style:{WebkitMaskImage:O,maskImage:O},"data-palette-results-viewport":!0,children:[(0,_.jsx)(`div`,{ref:E.topSentinelRef,"aria-hidden":!0,className:`-mb-px h-px w-full`,"data-palette-scroll-sentinel":`top`}),t,(0,_.jsx)(`div`,{ref:E.bottomSentinelRef,"aria-hidden":!0,className:`h-px w-full`,"data-palette-scroll-sentinel":`bottom`})]})})]})}export{m as i,b as n,y as r,v as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r}from"./boot-vendor-BBLG7GwQ.js";import{$ as i,$a as a,Aa as o,Cf as s,Ma as c,Qm as l,Sf as u,Tf as d,Vd as ee,bo as te,ja as ne,jd as f,nh as re,oh as p,uf as m}from"./index-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r}from"./boot-vendor-BBLG7GwQ.js";import{$ as i,$a as a,Aa as o,Cf as s,Ma as c,Qm as l,Sf as u,Tf as d,Vd as ee,bo as te,ja as ne,jd as f,nh as re,oh as p,uf as m}from"./index-BBxUiLNy.js";import{t as h}from"./use-hover-popover-CyIdak3c.js";var g=e(n(),1),_=(0,g.createContext)(null),v=t(),y=e(r(),1),ie=[{label:`Move left`,side:`left`},{label:`Move right`,side:`right`},{label:`Move top`,side:`top`},{label:`Move bottom`,side:`bottom`}],ae=`flex w-full cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-left text-xs text-foreground outline-none transition-colors hover:bg-state-hover focus-visible:bg-state-hover focus-visible:outline-none [&>[data-icon-root]]:size-4 [&>[data-icon-root]]:shrink-0`,b={left:`inset-y-[3px] left-[3px] w-2.5`,right:`inset-y-[3px] right-[3px] w-2.5`,top:`inset-x-[3px] top-[3px] h-1.5`,bottom:`inset-x-[3px] bottom-[3px] h-1.5`};function oe({isDesktopApp:e,isFullScreen:t}){return e?t?`Exit Full Screen`:`Full Screen`:t?`Restore split`:`Maximize pane`}function se(e){let t=(0,v.c)(7),{side:n}=e,r=b[n],i;t[0]===r?i=t[1]:(i=p(`absolute rounded-[2px] bg-current`,r),t[0]=r,t[1]=i);let a;t[2]===i?a=t[3]:(a=(0,y.jsx)(`span`,{className:i}),t[2]=i,t[3]=a);let o;return t[4]!==n||t[5]!==a?(o=(0,y.jsx)(`span`,{"data-pane-arrangement-glyph":n,"aria-hidden":!0,className:`relative block h-5 w-8 rounded-[5px] border-2 border-current`,children:a}),t[4]=n,t[5]=a,t[6]=o):o=t[6],o}function x(){let e=(0,v.c)(5),{isMaximized:t,onToggleMaximize:n,onMoveToSide:r}=f(),i=a(`pane.maximize.toggle`);if(n===null)return null;let o=r??void 0,s=i??void 0,c;return e[0]!==t||e[1]!==n||e[2]!==o||e[3]!==s?(c=(0,y.jsx)(S,{isFullScreen:t,onMoveToSide:o,onToggleFullScreen:n,shortcut:s}),e[0]=t,e[1]=n,e[2]=o,e[3]=s,e[4]=c):c=e[4],c}function S(e){let t=(0,v.c)(65),{className:n,isFullScreen:r,onMoveToSide:a,onToggleFullScreen:f,shortcut:_}=e,b;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(b={openDelayMs:400,closeDelayMs:100},t[0]=b):b=t[0];let{open:x,triggerHoverProps:S,contentHoverProps:C,handleOpenChange:w}=h(b),T;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(T=m(),t[1]=T):T=t[1];let E;t[2]===r?E=t[3]:(E=oe({isDesktopApp:T!==null,isFullScreen:r}),t[2]=r,t[3]=E);let D=E,O=_?`${D} (${_.label})`:D,k=!r&&x,A=(0,g.useRef)(null),j;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(j=()=>{window.setTimeout(()=>{A.current?.querySelector(`[role="menuitem"]`)?.focus()},0)},t[4]=j):j=t[4];let M=j,N;t[5]!==w||t[6]!==r?(N=e=>{e.key!==`ArrowDown`||r||(e.preventDefault(),w(!0),M())},t[5]=w,t[6]=r,t[7]=N):N=t[7];let P=N;te(k);let F;t[8]===n?F=t[9]:(F=p(ee,i,n),t[8]=n,t[9]=F);let I=_?.ariaKeyshortcuts,L=r?void 0:`menu`,R=r?void 0:k,z;t[10]!==w||t[11]!==f?(z=()=>{w(!1),f()},t[10]=w,t[11]=f,t[12]=z):z=t[12];let B;t[13]!==r||t[14]!==S?(B=r?{}:S,t[13]=r,t[14]=S,t[15]=B):B=t[15];let V=r?`Minimize2`:`Maximize2`,H;t[16]===V?H=t[17]:(H=(0,y.jsx)(l,{name:V}),t[16]=V,t[17]=H);let U;t[18]!==O||t[19]!==P||t[20]!==r||t[21]!==z||t[22]!==B||t[23]!==H||t[24]!==F||t[25]!==I||t[26]!==L||t[27]!==R?(U=(0,y.jsx)(re,{type:`button`,variant:`ghost`,size:`icon`,className:F,"aria-label":O,"aria-keyshortcuts":I,"aria-pressed":r,"aria-haspopup":L,"aria-expanded":R,onKeyDown:P,onClick:z,...B,children:H}),t[18]=O,t[19]=P,t[20]=r,t[21]=z,t[22]=B,t[23]=H,t[24]=F,t[25]=I,t[26]=L,t[27]=R,t[28]=U):U=t[28];let W=U;if(r){let e;t[29]===W?e=t[30]:(e=(0,y.jsx)(d,{asChild:!0,children:W}),t[29]=W,t[30]=e);let n;t[31]===D?n=t[32]:(n=(0,y.jsx)(`span`,{children:D}),t[31]=D,t[32]=n);let r=_?` (${_.label})`:``,i;t[33]!==n||t[34]!==r?(i=(0,y.jsxs)(s,{side:`bottom`,children:[n,r]}),t[33]=n,t[34]=r,t[35]=i):i=t[35];let a;return t[36]!==e||t[37]!==i?(a=(0,y.jsxs)(u,{children:[e,i]}),t[36]=e,t[37]=i,t[38]=a):a=t[38],a}let G;t[39]===W?G=t[40]:(G=(0,y.jsx)(ne,{asChild:!0,children:W}),t[39]=W,t[40]=G);let K;t[41]!==w||t[42]!==f?(K=()=>{w(!1),f()},t[41]=w,t[42]=f,t[43]=K):K=t[43];let q;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(q=(0,y.jsx)(l,{name:`Maximize2`}),t[44]=q):q=t[44];let J;t[45]===D?J=t[46]:(J=(0,y.jsx)(`span`,{className:`flex-1`,children:D}),t[45]=D,t[46]=J);let Y;t[47]===_?Y=t[48]:(Y=_?(0,y.jsx)(`span`,{className:`text-subtle-foreground`,children:_.label}):null,t[47]=_,t[48]=Y);let X;t[49]!==K||t[50]!==J||t[51]!==Y?(X=(0,y.jsxs)(`button`,{type:`button`,role:`menuitem`,className:ae,onClick:K,children:[q,J,Y]}),t[49]=K,t[50]=J,t[51]=Y,t[52]=X):X=t[52];let Z;t[53]!==w||t[54]!==a?(Z=a?(0,y.jsxs)(`div`,{className:`border-t border-border-hairline pt-1.5`,children:[(0,y.jsx)(`div`,{className:`px-2 pb-0.5 text-2xs font-medium text-subtle-foreground`,children:`Move`}),(0,y.jsx)(`div`,{className:`grid grid-cols-4 gap-1`,"aria-label":`Move pane`,children:ie.map(e=>(0,y.jsxs)(u,{children:[(0,y.jsx)(d,{asChild:!0,children:(0,y.jsx)(`button`,{type:`button`,role:`menuitem`,"aria-label":e.label,className:`flex h-11 cursor-pointer items-center justify-center rounded-md text-subtle-foreground outline-none transition-colors hover:bg-state-hover hover:text-foreground focus-visible:bg-state-hover focus-visible:text-foreground focus-visible:outline-none`,onClick:()=>{w(!1),a(e.side)},children:(0,y.jsx)(se,{side:e.side})})}),(0,y.jsx)(s,{side:`bottom`,children:e.label})]},e.side))})]}):null,t[53]=w,t[54]=a,t[55]=Z):Z=t[55];let Q;t[56]!==C||t[57]!==X||t[58]!==Z?(Q=(0,y.jsxs)(c,{ref:A,role:`menu`,"aria-label":`Pane arrangement`,side:`bottom`,align:`end`,sideOffset:6,className:`w-52 space-y-1 rounded-lg p-1.5`,...C,children:[X,Z]}),t[56]=C,t[57]=X,t[58]=Z,t[59]=Q):Q=t[59];let $;return t[60]!==w||t[61]!==k||t[62]!==G||t[63]!==Q?($=(0,y.jsxs)(o,{open:k,onOpenChange:w,children:[G,Q]}),t[60]=w,t[61]=k,t[62]=G,t[63]=Q,t[64]=$):$=t[64],$}export{x as n,_ as r,S as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r}from"./boot-vendor-BBLG7GwQ.js";import{a as i,r as a,t as o}from"./TimelineSelectionMenu-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r}from"./boot-vendor-BBLG7GwQ.js";import{a as i,r as a,t as o}from"./TimelineSelectionMenu-DT4qwoFI.js";import{i as s}from"./git-diff-patch-text-Cs-divFw.js";var ee=t(),c=e(n(),1),l=e(r(),1),u=72,d=null,f=null;function p(e){let t=e?.getBoundingClientRect();return t?{point:{x:t.left+24,y:t.top+24},side:`top`}:{point:{x:0,y:0},side:`top`}}function te({anchor:e,containerElement:t,text:n}){let r=n.trim();if(r.length===0)return null;let i=e??p(t),a=i.point;return{text:r,rect:new DOMRect(a.x,a.y,0,0),anchorPoint:a,anchorSide:i.side}}function m(e){return h(e.nativeEvent.composedPath())}function h(e){return e.some(e=>e instanceof Element&&(e.hasAttribute(`data-utility-button`)||e.hasAttribute(`data-gutter-utility-slot`)||e.getAttribute(`slot`)===`gutter-utility-slot`||e.getAttribute(`name`)===`gutter-utility-slot`))}function ne(e,t){let n=e.getAttribute(`data-selected-line`);return n===`single`?!0:t===`bottom`?n===`last`:n===`first`}function g(e,t){let n=e.find(e=>ne(e,t));return n===void 0?e.map(e=>({row:e,rect:e.getBoundingClientRect()})).filter(({rect:e})=>e.width>0||e.height>0).sort((e,n)=>t===`bottom`?n.rect.bottom-e.rect.bottom:e.rect.top-n.rect.top)[0]?.row:n}function re(e,t){let n=e.getBoundingClientRect();return{x:n.left+Math.min(u,n.width/2),y:t===`bottom`?n.bottom:n.top}}function ie({anchorSide:e,containerElement:t}){for(let n of s(t)){let t=g(Array.from(n.querySelectorAll(`[data-selected-line][data-line]`)),e);if(t!==void 0)return re(t,e)}for(let n of s(t)){let t=g(Array.from(n.querySelectorAll(`[data-selected-line][data-column-number]`)),e);if(t!==void 0){let n=t.getBoundingClientRect();return{x:n.right+u,y:e===`bottom`?n.bottom:n.top}}}return null}function ae({anchorSide:e,containerElement:t}){for(let n of s(t)){let t=n.querySelector(`[data-utility-button]`);if(t===null)continue;let r=t.getBoundingClientRect();if(!(r.width===0&&r.height===0))return{x:r.right+u,y:e===`bottom`?r.bottom:r.top}}return null}function oe(e,t){return e===t?!0:e===null||t===null?!1:e.start===t.start&&e.end===t.end&&e.side===t.side&&e.endSide===t.endSide}function se(e){return e.end>e.start?`bottom`:e.end<e.start?`top`:null}function ce({range:e,startRange:t}){if(t===null)return null;let n=t.start,r=Math.min(e.start,e.end),i=Math.max(e.start,e.end);return n<=r&&i>n?`bottom`:n>=i&&r<n?`top`:null}function _(e){let t=(0,ee.c)(41),{buildFallbackSelectionText:n,buildSelectionText:r,containerRef:s,enabled:u,onSelectionAddToChat:p}=e,[ne,g]=(0,c.useState)(null),[re,_]=(0,c.useState)(null),[v,y]=(0,c.useState)(null),b=(0,c.useRef)(null),x=(0,c.useRef)(null),S=(0,c.useRef)(null),C=(0,c.useRef)(null),w=(0,c.useRef)(null),T=(0,c.useRef)(null),E=(0,c.useRef)(null),D;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(D=e=>{let t=a(e);C.current=t===null?null:{point:t,side:S.current?.side??`top`}},t[0]=D):D=t[0];let O=D,k;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(k=e=>{let t=a(e);f=null,b.current=t,d=t},t[1]=k):k=t[1];let A=k,j;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(j=e=>{let t=b.current??d;if(b.current=null,d=null,t===null)return;let n=i(t,e);n!==null&&(x.current=n,f=n,T.current!==null&&(S.current=n))},t[2]=j):j=t[2];let M=j,N;t[3]===u?N=t[4]:(N=e=>{if(u){if(m(e)){O(e);return}A(e)}},t[3]=u,t[4]=N);let P=N,F;t[5]===u?F=t[6]:(F=e=>{!u||!m(e)||O(e)},t[5]=u,t[6]=F);let I=F,L;t[7]===u?L=t[8]:(L=e=>{if(u){if(m(e)){O(e);return}M(e)}},t[7]=u,t[8]=L);let R=L,z,B;t[9]===u?(z=t[10],B=t[11]):(z=()=>{if(!u||typeof document>`u`)return;let e=e=>{h(e.composedPath())||A(e)},t=e=>{h(e.composedPath())||M(e)},n=()=>{b.current=null,d=null};return document.addEventListener(`pointerdown`,e,!0),document.addEventListener(`pointerup`,t,!0),document.addEventListener(`pointercancel`,n,!0),()=>{document.removeEventListener(`pointerdown`,e,!0),document.removeEventListener(`pointerup`,t,!0),document.removeEventListener(`pointercancel`,n,!0)}},B=[u,M,A],t[9]=u,t[10]=z,t[11]=B),(0,c.useEffect)(z,B);let V;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(V=()=>{g(null),_(null),y(null),T.current=null,b.current=null,x.current=null,S.current=null,C.current=null,w.current=null,d=null,f=null},t[12]=V):V=t[12];let le=V,H;t[13]!==n||t[14]!==r||t[15]!==s||t[16]!==u?(H=e=>{if(!u)return;let t=s.current,i=r(e)??n?.({containerElement:t,range:e})??``,a=S.current??x.current??f,o=a??C.current,ee=ce({range:e,startRange:w.current})??se(e),c=a?.side??ee??C.current?.side??`top`,l=ie({anchorSide:c,containerElement:t})??ae({anchorSide:c,containerElement:t})??o?.point??null,d=te({anchor:l===null?o:{point:l,side:c},containerElement:t,text:i});if(d===null){E.current=e,g(null),_(null),y(null),T.current=null;return}E.current=null,T.current=e,g(e),_(e),y(d)},t[13]=n,t[14]=r,t[15]=s,t[16]=u,t[17]=H):H=t[17];let U=H,W;t[18]===u?W=t[19]:(W=e=>{u&&(E.current=null,T.current=e,S.current=null,w.current=e,g(null),y(null),_(e))},t[18]=u,t[19]=W);let G=W,K;t[20]===u?K=t[21]:(K=e=>{u&&(E.current=null,T.current=e,_(e))},t[20]=u,t[21]=K);let q=K,J;t[22]===u?J=t[23]:(J=e=>{if(!u)return;if(oe(e,E.current)){E.current=null,T.current=null,_(null);return}T.current=e;let t=x.current??f;e!==null&&t!==null&&(S.current=t),_(e)},t[22]=u,t[23]=J);let Y=J,X;t[24]===p?X=t[25]:(X=e=>{p?.(e),le()},t[24]=p,t[25]=X);let Z=X,Q;t[26]!==v||t[27]!==u||t[28]!==Z||t[29]!==p?(Q=u?(0,l.jsx)(o,{selection:v,onAddToChat:p===void 0?void 0:Z,onDismiss:le}):null,t[26]=v,t[27]=u,t[28]=Z,t[29]=p,t[30]=Q):Q=t[30];let ue=Q,de=ne??re,$;return t[31]!==U||t[32]!==q||t[33]!==Y||t[34]!==G||t[35]!==P||t[36]!==I||t[37]!==R||t[38]!==ue||t[39]!==de?($={menu:ue,onGutterUtilityClick:U,onLineSelectionChange:q,onLineSelectionEnd:Y,onLineSelectionStart:G,onPointerDownCapture:P,onPointerMoveCapture:I,onPointerUpCapture:R,selectedRange:de},t[31]=U,t[32]=q,t[33]=Y,t[34]=G,t[35]=P,t[36]=I,t[37]=R,t[38]=ue,t[39]=de,t[40]=$):$=t[40],$}export{_ as t};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ct as t,Et as n,Or as r,St as i,Tt as a,mi as o,ni as s,pi as c,t as l}from"./boot-vendor-BBLG7GwQ.js";import{n as u}from"./useThreadTerminalController-COG4IW7A.js";import{c as ee,l as te,n as d,s as f,y as p}from"./plugin-detail-navigation-DR_dbSv3.js";import{C as m,E as ne,T as re,d as ie,g as ae,h,i as g,m as _,n as oe,r as se,s as ce,t as le,v as ue,w as de,x as fe}from"./usePanelTerminals-BNnuXkgJ.js";import{$ as v,Ad as pe,Ar as me,Cf as he,Cp as ge,Gd as _e,Gl as ve,Lf as y,Po as ye,Ql as be,Qm as b,Sf as xe,Tf as Se,Un as Ce,Vi as we,Wl as Te,Xf as Ee,Za as De,bd as Oe,dt as ke,ff as Ae,nh as je,oh as Me,uv as Ne,xh as Pe}from"./index-Bfkd7WaZ.js";import{s as x,t as S}from"./OptionPicker-DQwMICWD.js";import{o as Fe,t as Ie}from"./thread-terminal-queries-DOflC4hl.js";import{a as Le,i as Re,n as ze,t as C}from"./app-fixed-tab-navigation-MkQXoAlQ.js";import{T as Be,c as Ve,d as He,f as Ue,i as We,m as Ge,p as Ke,r as qe,s as Je,u as Ye}from"./ToolsViewSplits-BF5GHpoJ.js";import{t as Xe}from"./SecondaryPanelLayout-Cbzw-eIz.js";import{t as Ze}from"./browser-url-CkFc4qcI.js";var w=e(o(),1),Qe=e(c(),1),$e=r(),T=e(s(),1),E=`h-6 max-w-40 px-1.5 text-xs`;function et({hosts:e,preferredHostId:t,primaryHostId:n}){let r=e.find(e=>e.id===t)??null;if(r?.status===`connected`)return r;let i=e.find(e=>e.id===n)??null;return i?.status===`connected`?i:e.find(e=>e.status===`connected`)??r??i??e[0]??null}function tt(e){let t=(0,$e.c)(13),{hosts:n,isLoading:r,onChange:i,selectedHostId:a}=e,o;t[0]===n?o=t[1]:(o=n.map(nt),t[0]=n,t[1]=o);let s=o;if(r){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,T.jsx)(x,{label:`Machine`,value:`Loading…`,className:E}),t[2]=e):e=t[2],e}if(n.length===0){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,T.jsx)(x,{label:`Machine`,value:`No machines`,className:E}),t[3]=e):e=t[3],e}let c;t[4]!==n||t[5]!==a?(c=n.find(e=>e.id===a)??n[0],t[4]=n,t[5]=a,t[6]=c):c=t[6];let l=c;if(l===void 0)return null;if(n.length===1){let e;return t[7]===l.name?e=t[8]:(e=(0,T.jsx)(x,{label:`Machine`,value:l.name,className:E}),t[7]=l.name,t[8]=e),e}let u;return t[9]!==i||t[10]!==s||t[11]!==l.id?(u=(0,T.jsx)(S,{align:`end`,label:`Machine`,value:l.id,options:s,onChange:i,muted:!0,className:E,contentClassName:`max-w-72`}),t[9]=i,t[10]=s,t[11]=l.id,t[12]=u):u=t[12],u}function nt(e){return{value:e.id,label:e.name,...e.status===`connected`?{}:{disabled:!0,disabledReason:`Offline`}}}var D=`marketplace-plugin:`,rt=[],it=`${y} ${v}`,at=l(e=>n(!1)),ot=l(e=>n(null));function st(e){return{id:`${D}${e}`,kind:`marketplace-plugin-detail`}}function ct(e){let n=(0,$e.c)(21),{fixedTabOwnerId:r,isOpen:i,panelId:o,panelStateId:s,pluginId:c,registration:l,subPath:u}=e,ee=a(),te=`${s}\0${l.id}`,d;n[0]===te?d=n[1]:(d=ot(te),n[0]=te,n[1]=d);let f=d,p=t(f),ne;bb0:{if(p===null){ne=null;break bb0}let{sequence:e}=p,t;n[2]!==e||n[3]!==f||n[4]!==ee?(t=()=>{ee.set(f,t=>t?.sequence===e?null:t)},n[2]=e,n[3]=f,n[4]=ee,n[5]=t):t=n[5];let i;n[6]!==r||n[7]!==l.id||n[8]!==t||n[9]!==p?(i={...p,ownerId:r,tabId:l.id,clear:t},n[6]=r,n[7]=l.id,n[8]=t,n[9]=p,n[10]=i):i=n[10],ne=i}let re=ne;if(!i)return null;let ie=l.component,ae=`nav-panel/${c}/${o}`,h;n[11]!==ie||n[12]!==u?(h=(0,T.jsx)(ie,{subPath:u}),n[11]=ie,n[12]=u,n[13]=h):h=n[13];let g;n[14]!==h||n[15]!==re?(g=(0,T.jsx)(C,{state:re,children:h}),n[14]=h,n[15]=re,n[16]=g):g=n[16];let _;return n[17]!==l||n[18]!==ae||n[19]!==g?(_=(0,T.jsx)(m,{slot:l,instanceId:ae,children:g}),n[17]=l,n[18]=ae,n[19]=g,n[20]=_):_=n[20],_}function lt(e){for(let t of document.querySelectorAll(`[data-plugin-right-panel-toggle-portal]`))if(t.getAttribute(`data-plugin-right-panel-toggle-portal`)===e)return t;return null}function O({children:e,panelPath:t,pluginId:n,subPath:r,flushPageInsets:o=!1,paneId:s}){let{navPanels:c}=ge(),l=c.find(e=>e.pluginId===n&&e.path===t)??null,m=de(l===null?null:{kind:`nav-panel`,panelId:l.id,pluginId:n,subPath:r}),v=(0,w.useMemo)(()=>m.slots.filter(e=>e.context.kind===`nav-panel`),[m.slots]),y=(0,w.useMemo)(()=>v.filter(e=>e.availability===`fixed`),[v]),x=(0,w.useMemo)(()=>v.filter(e=>e.availability===`action`),[v]),S=pe(),C=S?.isFocused??!0,$e=S?.secondaryPanelHost!=null,E=s??S?.paneId,nt=E??`standalone`,D=me({panelPath:t,paneId:E,pluginId:n}),O=ee({panelStateId:D,environmentId:null,fileOwnerThreadId:null}),k=(0,w.useMemo)(()=>y.map(e=>p({fixedTabId:e.id,pageId:l?.id??t,pluginId:n})),[y,l,t,n]),A=ie({fixedTabs:k,isAuthoritative:m.isReady,openFirstFixedTabWhenEmpty:!0,panelStateId:D,syncThreadId:null}),j=_(D,null),ut=ce(D,null),[M,dt]=(0,w.useState)([]),N=(0,w.useRef)(M),[P,ft]=(0,w.useState)(null),[pt,mt]=(0,w.useState)(!1),[ht,F]=(0,w.useState)(!1),[I,gt]=(0,w.useState)({}),_t=Pe({enabled:M.length>0}),vt=Oe(P??``,{enabled:P!==null});(0,w.useEffect)(()=>{if(P===null)return;let e=vt.data?.entries.find(e=>e.pluginId===P);e!==void 0&>(t=>{let n=t[P];return n?.icon===e.icon&&n.label===e.displayName?t:{...t,[P]:{icon:e.icon,label:e.displayName}}})},[vt.data,P,gt]);let[yt,L]=i(at(D)),R=(0,w.useCallback)(()=>{L(!1)},[L]),z=Ee(),bt=z?yt:A.secondary.isOpen,B=P===null?bt:pt,V=P===null?A.secondary.tabs.find(e=>e.id===A.secondary.activeTabId)??null:st(P),H=V?.kind===`terminal`&&V.target!==void 0?V:null,xt=H?.target??null,U=Fe(xt===null?null:Ie(xt),{enabled:B}),W=U.data?.sessions,St=(0,w.useMemo)(()=>new Map((W??[]).map(e=>[e.id,e])),[W]),Ct=u(),{activateTab:G,activeBrowserTab:wt,browserTabs:Tt,closeTab:K,openTab:q,openPluginPanel:Et,orderedSecondaryFileTabs:Dt,reopenClosedTab:Ot,reorderTab:kt,updateBrowserTab:At}=g({panelStateId:D,syncThreadId:null,environmentId:null,fileOwnerThreadId:null,onCloseLastTab:R,preserveWorkspaceTabsAcrossContexts:!0,storageFiles:void 0,terminalSessions:void 0}),jt=we(),Mt=ye().data?.primaryHostId??null,[Nt,Pt]=(0,w.useState)(null),Ft=jt.data??rt,It=(0,w.useMemo)(()=>et({hosts:Ft,preferredHostId:Nt,primaryHostId:Mt}),[Nt,Mt,Ft]);(0,w.useEffect)(()=>{H===null||U.isLoading||U.error!==null||W===void 0||St.has(H.terminalId)||Ct.starting.has(H.terminalId)||K(H.id)},[U.error,U.isLoading,H,K,Ct,W,St]),(0,w.useEffect)(()=>{R()},[R,r]);let J=(0,w.useCallback)(()=>{if(mt(!0),z){L(!0);return}j(e=>({...e,secondary:{...e.secondary,isOpen:!0}}))},[z,L,j]),Y=(0,w.useCallback)(()=>{ft(null),mt(!1),F(!1)},[]),Lt=(0,w.useCallback)(e=>{O!==null&&f(O,`marketplace-plugin:${e}`);let t=N.current,n=t.includes(e)?t:[...t,e];return N.current=n,dt(n),ft(e),mt(!0),J(),!0},[O,J]),Rt=a(),X=ze(n,l?.id??t),zt=(0,w.useMemo)(()=>y.flatMap(e=>{let t=k.find(t=>t.fixedTabId===e.id);return t===void 0?[]:[{tab:{ownerId:X,tabId:e.id},open:n=>{if(n!==void 0){let t=Ne.safeParse(n);if(!t.success||e.experimental_target===void 0)return!1;try{if(!e.experimental_target.validate(t.data))return!1}catch{return!1}Rt.set(ot(`${D}\0${e.id}`),e=>({sequence:(e?.sequence??0)+1,target:t.data}))}return Y(),j(e=>ne(e,t.id)),J(),!0}}]}),[k,X,D,y,J,Y,Rt,j]),Bt=(0,w.useCallback)(e=>Re(zt,e),[zt]),Vt=(0,w.useCallback)(e=>Le([...zt,...x.map(e=>({...ae({action:e,slot:`tab`,openPluginPanel:e=>{Y(),Et(e),J()}}),tab:{ownerId:X,tabId:e.id}}))],e),[zt,x,Et,J,Y,X]),Ht=(0,w.useMemo)(()=>x.map(e=>({id:`plugin-action:${e.pluginId}:${e.id}`,pluginId:e.pluginId,icon:e.icon,title:e.title,tooltip:e.tooltip,onSelect:()=>{l!==null&&ue({action:e,context:{kind:`nav-panel`,pluginId:n,panelId:l.id,subPath:r},openPluginPanel:e=>{Y(),Et(e),J()}})}})),[x,l,n,r,Et,J,Y]),Ut=(0,w.useCallback)(()=>{Y(),J()},[J,Y]),Wt=oe({available:l!==null,openTab:q,reveal:Ut,scope:null}).openFilePreview,Z=le({panelStateId:D,syncThreadId:null,createTarget:l!==null&&It?.status===`connected`?{kind:`host_path`,hostId:It.id,cwd:null}:null,isFocused:C,acceptsSession:()=>l!==null,tabsCarryTarget:!0,reveal:Ut,onCloseLastTab:R}),Gt=(0,w.useMemo)(()=>({openFilePreview:Wt,openFixedTab:Bt,openTab:Vt,openTerminal:Z.open}),[Bt,Vt,Wt,Z.open]),Q=(0,w.useCallback)(()=>{if(mt(!1),F(!1),z){R();return}ut()},[R,ut,z]),Kt=(0,w.useCallback)(()=>{Y(),q({kind:`new-tab`}),J()},[q,J,Y]),qt=(0,w.useCallback)(()=>{if(B){Q();return}V===null&&q({kind:`new-tab`}),J()},[V,Q,B,q,J]);De(`panel.toggle`,()=>!C||l===null?!1:(qt(),!0)),De(`panel.newTab`,()=>!C||l===null?!1:(Kt(),!0)),De(`panel.reopenClosedTab`,()=>!C||l===null||!Ot({destinations:M.map(e=>({pluginId:e,title:I[e]?.label??e})),dismiss:Y,restore:({index:e,destination:t})=>{Lt(t.pluginId);let n=N.current.filter(e=>e!==t.pluginId);n.splice(Math.min(e,n.length),0,t.pluginId),N.current=n,dt(n),gt(e=>({...e,[t.pluginId]:{icon:e[t.pluginId]?.icon??null,label:t.title}}))}})?!1:(J(),!0));let Jt=_e(),[Yt,Xt]=(0,w.useState)(null);(0,w.useLayoutEffect)(()=>{Xt(lt(D))},[l,D]);let $=se({available:Ae(),browserTabs:Tt,isFocused:C,openTab:q,reveal:Ut}),Zt=$.open,Qt=(0,w.useCallback)(e=>{let t=N.current.indexOf(e);if(t===-1)return;let n=N.current.filter(t=>t!==e);if(N.current=n,dt(n),O!==null&&te(O,{kind:`plugin-detail`,index:t,destination:{pluginId:e,title:I[e]?.label??e}}),P!==e)return;let r=n[Math.min(t,n.length-1)]??null;ft(t=>t===e?r:t),F(!1),r===null&&k.length===0&&A.secondary.tabs.length===0&&Q()},[P,k.length,Q,O,I,A.secondary.tabs.length]),$t=(0,w.useMemo)(()=>M.map(e=>{let t=I[e],n=_t.data?.plugins.find(t=>t.id===e);return{contentFillsRegion:!0,label:t?.label??n?.name??n?.id??e,leadingVisual:(0,T.jsx)(Te,{pluginId:e,icon:t?.icon??n?.icon??null,compactIconUrl:n?.compactIconUrl,className:`size-3.5`}),onClose:()=>Qt(e),onSelect:()=>{ft(e),J()},renderContent:()=>(0,T.jsx)(d,{pluginId:e}),statusLabel:null,tab:st(e)}}),[Qt,M,I,_t.data?.plugins,J]),en=(0,w.useMemo)(()=>y.flatMap(e=>{let t=k.find(t=>t.fixedTabId===e.id);return t===void 0?[]:[{ariaLabel:e.tooltip??e.title,contentFillsRegion:e.layout===`flush`,label:e.title,leadingVisual:(0,T.jsx)(ve,{pluginId:n,icon:e.icon,className:`size-3.5`}),onSelect:()=>{Y(),Bt({surface:{kind:`current`},tab:{ownerId:X,tabId:e.id}})},renderContent:()=>l===null?null:(0,T.jsx)(ct,{fixedTabOwnerId:X,isOpen:B,panelId:l.id,panelStateId:D,pluginId:n,registration:e,subPath:r}),tab:t,title:e.tooltip??e.title}]}),[k,y,X,B,Bt,l,D,n,Y,r]),tn=(0,w.useCallback)(function e(i){switch(i.kind){case`browser`:return null;case`terminal`:return i.target===void 0?null:(0,T.jsx)(Ue,{autoFocus:i.terminalId===Z.autoFocusTerminalId,isPanelOpen:B,isPanelPersistedOpen:A.secondary.isOpen,onAutoFocusHandled:Z.handleAutoFocusHandled,onCloseStart:()=>Z.close(i.terminalId),onRetryStart:()=>Z.retryStart(i.terminalId),target:i.target,terminalId:i.terminalId});case`new-tab`:return(0,T.jsx)(Ve,{autoFocus:!1,projectId:void 0,environmentId:null,currentThreadId:``,onAutoFocusHandled:()=>void 0,onSelect:()=>void 0,onOpenBrowser:Zt===null?void 0:()=>{G(i.id),Zt?.()},onStartTerminal:()=>{G(i.id),Z.start()},pluginActions:Ht,showFileSearch:!1,startTerminalDisabled:!Z.canStart,startTerminalTrailing:(0,T.jsx)(tt,{hosts:Ft,isLoading:jt.isLoading,onChange:Pt,selectedHostId:It?.id??null})});case`workspace-file-preview`:return i.environmentId===null?null:(0,T.jsx)(Ke,{activePath:i.path,environmentId:i.environmentId,isPanelOpen:B,lineRange:i.lineRange,source:i.source,statusLabel:i.statusLabel});case`host-file-preview`:return i.hostId===null?null:(0,T.jsx)(Je,{activePath:i.path,hostId:i.hostId,isPanelOpen:B,lineRange:i.lineRange});case`attachment-file-preview`:return(0,T.jsx)(qe,{isPanelOpen:B,name:i.name,path:i.path,projectId:i.projectId});case`thread-storage-file-preview`:return i.threadId===null?null:(0,T.jsx)(He,{activePath:i.path,isPanelOpen:B,lineRange:i.lineRange,threadId:i.threadId});case`plugin-panel`:{let a=fe(i);return(0,T.jsx)(h,{tab:i,context:{kind:`nav-panel`,pluginId:n,panelId:l?.id??t,subPath:r},fileOpenerOriginal:a===null?void 0:e(a)})}}},[G,Ht,l,t,n,r,jt.isLoading,B,Zt,A.secondary.isOpen,It,Ft,Z]),nn=(0,w.useMemo)(()=>Dt.flatMap(e=>{let t={onSelect:()=>{Y(),G(e.id),J()},renderContent:()=>tn(e),tab:e};switch(e.kind){case`browser`:{let n=e.title??(e.url.length>0?Ze(e.url):``);return[{...t,label:n||`Browser`,leadingVisual:(0,T.jsx)(re,{tabId:e.id}),statusLabel:null,onClose:()=>K(e.id)}]}case`terminal`:{if(e.target===void 0)return[];let n=St.get(e.terminalId);return[{...t,contentFillsRegion:!0,label:n?.title??`Terminal`,leadingVisual:(0,T.jsx)(b,{name:`Terminal`,className:`size-3.5`}),statusLabel:n===void 0||n.status===`running`?null:n.status,onSelect:()=>Z.select(e.terminalId,e.target),onClose:()=>Z.close(e.terminalId)}]}case`new-tab`:return[{...t,label:`New tab`,leadingVisual:(0,T.jsx)(b,{name:`NewTab`,className:`size-3.5`}),statusLabel:null,onClose:()=>K(e.id)}];case`workspace-file-preview`:case`host-file-preview`:case`thread-storage-file-preview`:return[{...t,isPinned:e.kind===`thread-storage-file-preview`&&e.isPinned,label:e.path.split(/[\\/]/u).at(-1)??e.path,leadingVisual:(0,T.jsx)(b,{name:`File`,className:`size-3.5`}),statusLabel:e.kind===`workspace-file-preview`?e.statusLabel:null,onClose:()=>K(e.id)}];case`attachment-file-preview`:return[{...t,label:e.name,leadingVisual:(0,T.jsx)(b,{name:`File`,className:`size-3.5`}),statusLabel:null,onClose:()=>K(e.id)}];case`plugin-panel`:return[{...t,contentFillsRegion:!0,label:e.title,leadingVisual:(0,T.jsx)(Te,{pluginId:e.pluginId,icon:null,className:`size-3.5`}),statusLabel:null,onClose:()=>K(e.id)}]}}),[G,K,Dt,tn,J,Y,Z,St]),rn=(0,w.useMemo)(()=>[...$t,...nn],[nn,$t]),an=(0,w.useCallback)(({presentation:e,canShowNativeBrowserView:t,isMainCollapsed:n,onToggleMainCollapse:r,resizablePanelId:i})=>{let a=(e,n,r)=>Tt.length===0?null:(0,T.jsx)(We,{browserTabs:Tt,activeBrowserTabId:e,addressFocusRequest:$.addressFocusRequest,onAddressFocusRequestConsumed:$.handleAddressFocusRequestConsumed,environmentId:null,canShowNativeBrowserView:t,canHandleBrowserCommands:n,onNativeFocus:r,threadId:D,onUpdate:At,onOpenInNewTab:$.open});return(0,T.jsx)(Ye,{drawerFallback:a(wt?.id??null,t),activeTab:V,canUseGitUi:!1,metadataContent:null,tabs:rn,splitPanelStateId:P===null?D:void 0,onTabReorder:kt,renderBrowserDeck:(e,n)=>a(e,t&&n.isFocused,n.onFocusPane),isOpen:B,fixedTabs:en,areFixedTabsReady:m.isReady,showConversationCollapseControl:P!==null,showNewTabButton:P===null,onPanelFocus:()=>void 0,onCollapse:Q,onClose:Q,onOpenNewTab:Kt,isConversationCollapsed:n,onToggleConversationCollapse:r,renderAsDrawer:e===`drawer`,resizablePanelId:i})},[wt,P,V,$.addressFocusRequest,Tt,en,m.isReady,$.handleAddressFocusRequestConsumed,$.open,Q,B,Kt,D,kt,rn,At]),on=B?`Hide right panel`:`Show right panel`,sn=Be,cn=(0,T.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${o?`-m-4 h-[calc(100%+2rem)] md:-m-5 md:h-[calc(100%+2.5rem)]`:`h-full`}`,children:(0,T.jsx)(Xe,{open:B,onToggle:qt,onSwipeOpen:qt,onClose:Q,panelGroupKey:`plugin-panel-host:${nt}`,resetKey:D,contentKey:D,drawerLabel:`Right panel`,drawerFallback:null,mainPanelId:`plugin-panel-main-${nt}`,collapse:{active:ht,onToggle:()=>F(e=>!e)},main:e,composerHost:null,renderPanel:an})}),ln=(0,T.jsxs)(T.Fragment,{children:[l!==null&&Yt!==null&&!B&&!$e?(0,Qe.createPortal)((0,T.jsxs)(xe,{children:[(0,T.jsx)(Se,{asChild:!0,children:(0,T.jsx)(je,{type:`button`,variant:`ghost`,size:`icon`,className:Me(it,Jt&&`w-(--bb-title-bar-control-size) -mr-[calc(var(--bb-panel-chrome-padding)_-_var(--bb-title-bar-trailing-edge-gap)_+_var(--bb-window-frame-lip))]`),"aria-label":on,"aria-pressed":B,onPointerEnter:Ge,onFocus:Ge,onPointerDown:Ge,onClick:qt,children:(0,T.jsx)(b,{name:sn})})}),(0,T.jsx)(he,{children:on})]}),Yt):null,cn]});return(0,T.jsx)(ke,{openInAppBrowser:Zt,children:(0,T.jsx)(Ce,{capabilities:Gt,children:(0,T.jsxs)(be,{onOpenPluginDetail:Lt,children:[m.observers,ln]})})})}export{O as PluginPanelRightPanelHost};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ct as t,Et as n,Or as r,St as i,Tt as a,mi as o,ni as s,pi as c,t as l}from"./boot-vendor-BBLG7GwQ.js";import{n as u}from"./useThreadTerminalController-DcWLbe8W.js";import{c as ee,l as te,n as d,s as f,y as p}from"./plugin-detail-navigation-CmSGTNyL.js";import{C as m,E as ne,T as re,d as ie,g as ae,h,i as g,m as _,n as oe,r as se,s as ce,t as le,v as ue,w as de,x as fe}from"./usePanelTerminals-BN8UCJFO.js";import{$ as v,Ad as pe,Ar as me,Cf as he,Cp as ge,Gd as _e,Gl as ve,Lf as y,Po as ye,Ql as be,Qm as b,Sf as xe,Tf as Se,Un as Ce,Vi as we,Wl as Te,Xf as Ee,Za as De,bd as Oe,dt as ke,ff as Ae,nh as je,oh as Me,uv as Ne,xh as Pe}from"./index-BBxUiLNy.js";import{s as x,t as S}from"./OptionPicker-sql35hd_.js";import{o as Fe,t as Ie}from"./thread-terminal-queries-B4JkOWS2.js";import{a as Le,i as Re,n as ze,t as C}from"./app-fixed-tab-navigation-DX9s-gCj.js";import{T as Be,c as Ve,d as He,f as Ue,i as We,m as Ge,p as Ke,r as qe,s as Je,u as Ye}from"./ToolsViewSplits-Blo3GJMQ.js";import{t as Xe}from"./SecondaryPanelLayout-fG8BuYv-.js";import{t as Ze}from"./browser-url-B0SjaYti.js";var w=e(o(),1),Qe=e(c(),1),$e=r(),T=e(s(),1),E=`h-6 max-w-40 px-1.5 text-xs`;function et({hosts:e,preferredHostId:t,primaryHostId:n}){let r=e.find(e=>e.id===t)??null;if(r?.status===`connected`)return r;let i=e.find(e=>e.id===n)??null;return i?.status===`connected`?i:e.find(e=>e.status===`connected`)??r??i??e[0]??null}function tt(e){let t=(0,$e.c)(13),{hosts:n,isLoading:r,onChange:i,selectedHostId:a}=e,o;t[0]===n?o=t[1]:(o=n.map(nt),t[0]=n,t[1]=o);let s=o;if(r){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,T.jsx)(x,{label:`Machine`,value:`Loading…`,className:E}),t[2]=e):e=t[2],e}if(n.length===0){let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,T.jsx)(x,{label:`Machine`,value:`No machines`,className:E}),t[3]=e):e=t[3],e}let c;t[4]!==n||t[5]!==a?(c=n.find(e=>e.id===a)??n[0],t[4]=n,t[5]=a,t[6]=c):c=t[6];let l=c;if(l===void 0)return null;if(n.length===1){let e;return t[7]===l.name?e=t[8]:(e=(0,T.jsx)(x,{label:`Machine`,value:l.name,className:E}),t[7]=l.name,t[8]=e),e}let u;return t[9]!==i||t[10]!==s||t[11]!==l.id?(u=(0,T.jsx)(S,{align:`end`,label:`Machine`,value:l.id,options:s,onChange:i,muted:!0,className:E,contentClassName:`max-w-72`}),t[9]=i,t[10]=s,t[11]=l.id,t[12]=u):u=t[12],u}function nt(e){return{value:e.id,label:e.name,...e.status===`connected`?{}:{disabled:!0,disabledReason:`Offline`}}}var D=`marketplace-plugin:`,rt=[],it=`${y} ${v}`,at=l(e=>n(!1)),ot=l(e=>n(null));function st(e){return{id:`${D}${e}`,kind:`marketplace-plugin-detail`}}function ct(e){let n=(0,$e.c)(21),{fixedTabOwnerId:r,isOpen:i,panelId:o,panelStateId:s,pluginId:c,registration:l,subPath:u}=e,ee=a(),te=`${s}\0${l.id}`,d;n[0]===te?d=n[1]:(d=ot(te),n[0]=te,n[1]=d);let f=d,p=t(f),ne;bb0:{if(p===null){ne=null;break bb0}let{sequence:e}=p,t;n[2]!==e||n[3]!==f||n[4]!==ee?(t=()=>{ee.set(f,t=>t?.sequence===e?null:t)},n[2]=e,n[3]=f,n[4]=ee,n[5]=t):t=n[5];let i;n[6]!==r||n[7]!==l.id||n[8]!==t||n[9]!==p?(i={...p,ownerId:r,tabId:l.id,clear:t},n[6]=r,n[7]=l.id,n[8]=t,n[9]=p,n[10]=i):i=n[10],ne=i}let re=ne;if(!i)return null;let ie=l.component,ae=`nav-panel/${c}/${o}`,h;n[11]!==ie||n[12]!==u?(h=(0,T.jsx)(ie,{subPath:u}),n[11]=ie,n[12]=u,n[13]=h):h=n[13];let g;n[14]!==h||n[15]!==re?(g=(0,T.jsx)(C,{state:re,children:h}),n[14]=h,n[15]=re,n[16]=g):g=n[16];let _;return n[17]!==l||n[18]!==ae||n[19]!==g?(_=(0,T.jsx)(m,{slot:l,instanceId:ae,children:g}),n[17]=l,n[18]=ae,n[19]=g,n[20]=_):_=n[20],_}function lt(e){for(let t of document.querySelectorAll(`[data-plugin-right-panel-toggle-portal]`))if(t.getAttribute(`data-plugin-right-panel-toggle-portal`)===e)return t;return null}function O({children:e,panelPath:t,pluginId:n,subPath:r,flushPageInsets:o=!1,paneId:s}){let{navPanels:c}=ge(),l=c.find(e=>e.pluginId===n&&e.path===t)??null,m=de(l===null?null:{kind:`nav-panel`,panelId:l.id,pluginId:n,subPath:r}),v=(0,w.useMemo)(()=>m.slots.filter(e=>e.context.kind===`nav-panel`),[m.slots]),y=(0,w.useMemo)(()=>v.filter(e=>e.availability===`fixed`),[v]),x=(0,w.useMemo)(()=>v.filter(e=>e.availability===`action`),[v]),S=pe(),C=S?.isFocused??!0,$e=S?.secondaryPanelHost!=null,E=s??S?.paneId,nt=E??`standalone`,D=me({panelPath:t,paneId:E,pluginId:n}),O=ee({panelStateId:D,environmentId:null,fileOwnerThreadId:null}),k=(0,w.useMemo)(()=>y.map(e=>p({fixedTabId:e.id,pageId:l?.id??t,pluginId:n})),[y,l,t,n]),A=ie({fixedTabs:k,isAuthoritative:m.isReady,openFirstFixedTabWhenEmpty:!0,panelStateId:D,syncThreadId:null}),j=_(D,null),ut=ce(D,null),[M,dt]=(0,w.useState)([]),N=(0,w.useRef)(M),[P,ft]=(0,w.useState)(null),[pt,mt]=(0,w.useState)(!1),[ht,F]=(0,w.useState)(!1),[I,gt]=(0,w.useState)({}),_t=Pe({enabled:M.length>0}),vt=Oe(P??``,{enabled:P!==null});(0,w.useEffect)(()=>{if(P===null)return;let e=vt.data?.entries.find(e=>e.pluginId===P);e!==void 0&>(t=>{let n=t[P];return n?.icon===e.icon&&n.label===e.displayName?t:{...t,[P]:{icon:e.icon,label:e.displayName}}})},[vt.data,P,gt]);let[yt,L]=i(at(D)),R=(0,w.useCallback)(()=>{L(!1)},[L]),z=Ee(),bt=z?yt:A.secondary.isOpen,B=P===null?bt:pt,V=P===null?A.secondary.tabs.find(e=>e.id===A.secondary.activeTabId)??null:st(P),H=V?.kind===`terminal`&&V.target!==void 0?V:null,xt=H?.target??null,U=Fe(xt===null?null:Ie(xt),{enabled:B}),W=U.data?.sessions,St=(0,w.useMemo)(()=>new Map((W??[]).map(e=>[e.id,e])),[W]),Ct=u(),{activateTab:G,activeBrowserTab:wt,browserTabs:Tt,closeTab:K,openTab:q,openPluginPanel:Et,orderedSecondaryFileTabs:Dt,reopenClosedTab:Ot,reorderTab:kt,updateBrowserTab:At}=g({panelStateId:D,syncThreadId:null,environmentId:null,fileOwnerThreadId:null,onCloseLastTab:R,preserveWorkspaceTabsAcrossContexts:!0,storageFiles:void 0,terminalSessions:void 0}),jt=we(),Mt=ye().data?.primaryHostId??null,[Nt,Pt]=(0,w.useState)(null),Ft=jt.data??rt,It=(0,w.useMemo)(()=>et({hosts:Ft,preferredHostId:Nt,primaryHostId:Mt}),[Nt,Mt,Ft]);(0,w.useEffect)(()=>{H===null||U.isLoading||U.error!==null||W===void 0||St.has(H.terminalId)||Ct.starting.has(H.terminalId)||K(H.id)},[U.error,U.isLoading,H,K,Ct,W,St]),(0,w.useEffect)(()=>{R()},[R,r]);let J=(0,w.useCallback)(()=>{if(mt(!0),z){L(!0);return}j(e=>({...e,secondary:{...e.secondary,isOpen:!0}}))},[z,L,j]),Y=(0,w.useCallback)(()=>{ft(null),mt(!1),F(!1)},[]),Lt=(0,w.useCallback)(e=>{O!==null&&f(O,`marketplace-plugin:${e}`);let t=N.current,n=t.includes(e)?t:[...t,e];return N.current=n,dt(n),ft(e),mt(!0),J(),!0},[O,J]),Rt=a(),X=ze(n,l?.id??t),zt=(0,w.useMemo)(()=>y.flatMap(e=>{let t=k.find(t=>t.fixedTabId===e.id);return t===void 0?[]:[{tab:{ownerId:X,tabId:e.id},open:n=>{if(n!==void 0){let t=Ne.safeParse(n);if(!t.success||e.experimental_target===void 0)return!1;try{if(!e.experimental_target.validate(t.data))return!1}catch{return!1}Rt.set(ot(`${D}\0${e.id}`),e=>({sequence:(e?.sequence??0)+1,target:t.data}))}return Y(),j(e=>ne(e,t.id)),J(),!0}}]}),[k,X,D,y,J,Y,Rt,j]),Bt=(0,w.useCallback)(e=>Re(zt,e),[zt]),Vt=(0,w.useCallback)(e=>Le([...zt,...x.map(e=>({...ae({action:e,slot:`tab`,openPluginPanel:e=>{Y(),Et(e),J()}}),tab:{ownerId:X,tabId:e.id}}))],e),[zt,x,Et,J,Y,X]),Ht=(0,w.useMemo)(()=>x.map(e=>({id:`plugin-action:${e.pluginId}:${e.id}`,pluginId:e.pluginId,icon:e.icon,title:e.title,tooltip:e.tooltip,onSelect:()=>{l!==null&&ue({action:e,context:{kind:`nav-panel`,pluginId:n,panelId:l.id,subPath:r},openPluginPanel:e=>{Y(),Et(e),J()}})}})),[x,l,n,r,Et,J,Y]),Ut=(0,w.useCallback)(()=>{Y(),J()},[J,Y]),Wt=oe({available:l!==null,openTab:q,reveal:Ut,scope:null}).openFilePreview,Z=le({panelStateId:D,syncThreadId:null,createTarget:l!==null&&It?.status===`connected`?{kind:`host_path`,hostId:It.id,cwd:null}:null,isFocused:C,acceptsSession:()=>l!==null,tabsCarryTarget:!0,reveal:Ut,onCloseLastTab:R}),Gt=(0,w.useMemo)(()=>({openFilePreview:Wt,openFixedTab:Bt,openTab:Vt,openTerminal:Z.open}),[Bt,Vt,Wt,Z.open]),Q=(0,w.useCallback)(()=>{if(mt(!1),F(!1),z){R();return}ut()},[R,ut,z]),Kt=(0,w.useCallback)(()=>{Y(),q({kind:`new-tab`}),J()},[q,J,Y]),qt=(0,w.useCallback)(()=>{if(B){Q();return}V===null&&q({kind:`new-tab`}),J()},[V,Q,B,q,J]);De(`panel.toggle`,()=>!C||l===null?!1:(qt(),!0)),De(`panel.newTab`,()=>!C||l===null?!1:(Kt(),!0)),De(`panel.reopenClosedTab`,()=>!C||l===null||!Ot({destinations:M.map(e=>({pluginId:e,title:I[e]?.label??e})),dismiss:Y,restore:({index:e,destination:t})=>{Lt(t.pluginId);let n=N.current.filter(e=>e!==t.pluginId);n.splice(Math.min(e,n.length),0,t.pluginId),N.current=n,dt(n),gt(e=>({...e,[t.pluginId]:{icon:e[t.pluginId]?.icon??null,label:t.title}}))}})?!1:(J(),!0));let Jt=_e(),[Yt,Xt]=(0,w.useState)(null);(0,w.useLayoutEffect)(()=>{Xt(lt(D))},[l,D]);let $=se({available:Ae(),browserTabs:Tt,isFocused:C,openTab:q,reveal:Ut}),Zt=$.open,Qt=(0,w.useCallback)(e=>{let t=N.current.indexOf(e);if(t===-1)return;let n=N.current.filter(t=>t!==e);if(N.current=n,dt(n),O!==null&&te(O,{kind:`plugin-detail`,index:t,destination:{pluginId:e,title:I[e]?.label??e}}),P!==e)return;let r=n[Math.min(t,n.length-1)]??null;ft(t=>t===e?r:t),F(!1),r===null&&k.length===0&&A.secondary.tabs.length===0&&Q()},[P,k.length,Q,O,I,A.secondary.tabs.length]),$t=(0,w.useMemo)(()=>M.map(e=>{let t=I[e],n=_t.data?.plugins.find(t=>t.id===e);return{contentFillsRegion:!0,label:t?.label??n?.name??n?.id??e,leadingVisual:(0,T.jsx)(Te,{pluginId:e,icon:t?.icon??n?.icon??null,compactIconUrl:n?.compactIconUrl,className:`size-3.5`}),onClose:()=>Qt(e),onSelect:()=>{ft(e),J()},renderContent:()=>(0,T.jsx)(d,{pluginId:e}),statusLabel:null,tab:st(e)}}),[Qt,M,I,_t.data?.plugins,J]),en=(0,w.useMemo)(()=>y.flatMap(e=>{let t=k.find(t=>t.fixedTabId===e.id);return t===void 0?[]:[{ariaLabel:e.tooltip??e.title,contentFillsRegion:e.layout===`flush`,label:e.title,leadingVisual:(0,T.jsx)(ve,{pluginId:n,icon:e.icon,className:`size-3.5`}),onSelect:()=>{Y(),Bt({surface:{kind:`current`},tab:{ownerId:X,tabId:e.id}})},renderContent:()=>l===null?null:(0,T.jsx)(ct,{fixedTabOwnerId:X,isOpen:B,panelId:l.id,panelStateId:D,pluginId:n,registration:e,subPath:r}),tab:t,title:e.tooltip??e.title}]}),[k,y,X,B,Bt,l,D,n,Y,r]),tn=(0,w.useCallback)(function e(i){switch(i.kind){case`browser`:return null;case`terminal`:return i.target===void 0?null:(0,T.jsx)(Ue,{autoFocus:i.terminalId===Z.autoFocusTerminalId,isPanelOpen:B,isPanelPersistedOpen:A.secondary.isOpen,onAutoFocusHandled:Z.handleAutoFocusHandled,onCloseStart:()=>Z.close(i.terminalId),onRetryStart:()=>Z.retryStart(i.terminalId),target:i.target,terminalId:i.terminalId});case`new-tab`:return(0,T.jsx)(Ve,{autoFocus:!1,projectId:void 0,environmentId:null,currentThreadId:``,onAutoFocusHandled:()=>void 0,onSelect:()=>void 0,onOpenBrowser:Zt===null?void 0:()=>{G(i.id),Zt?.()},onStartTerminal:()=>{G(i.id),Z.start()},pluginActions:Ht,showFileSearch:!1,startTerminalDisabled:!Z.canStart,startTerminalTrailing:(0,T.jsx)(tt,{hosts:Ft,isLoading:jt.isLoading,onChange:Pt,selectedHostId:It?.id??null})});case`workspace-file-preview`:return i.environmentId===null?null:(0,T.jsx)(Ke,{activePath:i.path,environmentId:i.environmentId,isPanelOpen:B,lineRange:i.lineRange,source:i.source,statusLabel:i.statusLabel});case`host-file-preview`:return i.hostId===null?null:(0,T.jsx)(Je,{activePath:i.path,hostId:i.hostId,isPanelOpen:B,lineRange:i.lineRange});case`attachment-file-preview`:return(0,T.jsx)(qe,{isPanelOpen:B,name:i.name,path:i.path,projectId:i.projectId});case`thread-storage-file-preview`:return i.threadId===null?null:(0,T.jsx)(He,{activePath:i.path,isPanelOpen:B,lineRange:i.lineRange,threadId:i.threadId});case`plugin-panel`:{let a=fe(i);return(0,T.jsx)(h,{tab:i,context:{kind:`nav-panel`,pluginId:n,panelId:l?.id??t,subPath:r},fileOpenerOriginal:a===null?void 0:e(a)})}}},[G,Ht,l,t,n,r,jt.isLoading,B,Zt,A.secondary.isOpen,It,Ft,Z]),nn=(0,w.useMemo)(()=>Dt.flatMap(e=>{let t={onSelect:()=>{Y(),G(e.id),J()},renderContent:()=>tn(e),tab:e};switch(e.kind){case`browser`:{let n=e.title??(e.url.length>0?Ze(e.url):``);return[{...t,label:n||`Browser`,leadingVisual:(0,T.jsx)(re,{tabId:e.id}),statusLabel:null,onClose:()=>K(e.id)}]}case`terminal`:{if(e.target===void 0)return[];let n=St.get(e.terminalId);return[{...t,contentFillsRegion:!0,label:n?.title??`Terminal`,leadingVisual:(0,T.jsx)(b,{name:`Terminal`,className:`size-3.5`}),statusLabel:n===void 0||n.status===`running`?null:n.status,onSelect:()=>Z.select(e.terminalId,e.target),onClose:()=>Z.close(e.terminalId)}]}case`new-tab`:return[{...t,label:`New tab`,leadingVisual:(0,T.jsx)(b,{name:`NewTab`,className:`size-3.5`}),statusLabel:null,onClose:()=>K(e.id)}];case`workspace-file-preview`:case`host-file-preview`:case`thread-storage-file-preview`:return[{...t,isPinned:e.kind===`thread-storage-file-preview`&&e.isPinned,label:e.path.split(/[\\/]/u).at(-1)??e.path,leadingVisual:(0,T.jsx)(b,{name:`File`,className:`size-3.5`}),statusLabel:e.kind===`workspace-file-preview`?e.statusLabel:null,onClose:()=>K(e.id)}];case`attachment-file-preview`:return[{...t,label:e.name,leadingVisual:(0,T.jsx)(b,{name:`File`,className:`size-3.5`}),statusLabel:null,onClose:()=>K(e.id)}];case`plugin-panel`:return[{...t,contentFillsRegion:!0,label:e.title,leadingVisual:(0,T.jsx)(Te,{pluginId:e.pluginId,icon:null,className:`size-3.5`}),statusLabel:null,onClose:()=>K(e.id)}]}}),[G,K,Dt,tn,J,Y,Z,St]),rn=(0,w.useMemo)(()=>[...$t,...nn],[nn,$t]),an=(0,w.useCallback)(({presentation:e,canShowNativeBrowserView:t,isMainCollapsed:n,onToggleMainCollapse:r,resizablePanelId:i})=>{let a=(e,n,r)=>Tt.length===0?null:(0,T.jsx)(We,{browserTabs:Tt,activeBrowserTabId:e,addressFocusRequest:$.addressFocusRequest,onAddressFocusRequestConsumed:$.handleAddressFocusRequestConsumed,environmentId:null,canShowNativeBrowserView:t,canHandleBrowserCommands:n,onNativeFocus:r,threadId:D,onUpdate:At,onOpenInNewTab:$.open});return(0,T.jsx)(Ye,{drawerFallback:a(wt?.id??null,t),activeTab:V,canUseGitUi:!1,metadataContent:null,tabs:rn,splitPanelStateId:P===null?D:void 0,onTabReorder:kt,renderBrowserDeck:(e,n)=>a(e,t&&n.isFocused,n.onFocusPane),isOpen:B,fixedTabs:en,areFixedTabsReady:m.isReady,showConversationCollapseControl:P!==null,showNewTabButton:P===null,onPanelFocus:()=>void 0,onCollapse:Q,onClose:Q,onOpenNewTab:Kt,isConversationCollapsed:n,onToggleConversationCollapse:r,renderAsDrawer:e===`drawer`,resizablePanelId:i})},[wt,P,V,$.addressFocusRequest,Tt,en,m.isReady,$.handleAddressFocusRequestConsumed,$.open,Q,B,Kt,D,kt,rn,At]),on=B?`Hide right panel`:`Show right panel`,sn=Be,cn=(0,T.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${o?`-m-4 h-[calc(100%+2rem)] md:-m-5 md:h-[calc(100%+2.5rem)]`:`h-full`}`,children:(0,T.jsx)(Xe,{open:B,onToggle:qt,onSwipeOpen:qt,onClose:Q,panelGroupKey:`plugin-panel-host:${nt}`,resetKey:D,contentKey:D,drawerLabel:`Right panel`,drawerFallback:null,mainPanelId:`plugin-panel-main-${nt}`,collapse:{active:ht,onToggle:()=>F(e=>!e)},main:e,composerHost:null,renderPanel:an})}),ln=(0,T.jsxs)(T.Fragment,{children:[l!==null&&Yt!==null&&!B&&!$e?(0,Qe.createPortal)((0,T.jsxs)(xe,{children:[(0,T.jsx)(Se,{asChild:!0,children:(0,T.jsx)(je,{type:`button`,variant:`ghost`,size:`icon`,className:Me(it,Jt&&`w-(--bb-title-bar-control-size) -mr-[calc(var(--bb-panel-chrome-padding)_-_var(--bb-title-bar-trailing-edge-gap)_+_var(--bb-window-frame-lip))]`),"aria-label":on,"aria-pressed":B,onPointerEnter:Ge,onFocus:Ge,onPointerDown:Ge,onClick:qt,children:(0,T.jsx)(b,{name:sn})})}),(0,T.jsx)(he,{children:on})]}),Yt):null,cn]});return(0,T.jsx)(ke,{openInAppBrowser:Zt,children:(0,T.jsx)(Ce,{capabilities:Gt,children:(0,T.jsxs)(be,{onOpenPluginDetail:Lt,children:[m.observers,ln]})})})}export{O as PluginPanelRightPanelHost};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r,zr as i}from"./boot-vendor-BBLG7GwQ.js";import{o as a,r as o,wt as s}from"./environment-workspace-display-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Or as t,mi as n,ni as r,zr as i}from"./boot-vendor-BBLG7GwQ.js";import{o as a,r as o,wt as s}from"./environment-workspace-display-O1JRHfbV.js";import{h as c,j as l,n as u,t as d,x as f}from"./workspace-checkout-display-DMp28yCr.js";import{f as p}from"./thread-panel-queries-C3MI4mdc.js";import{Cg as m,D as h,Ki as g,Lo as _,Vi as v,Xp as ee,am as te,fi as ne,kf as re,oh as y,tc as ie,wc as ae}from"./index-BBxUiLNy.js";import{t as oe}from"./machine-provider-queries-CRlWTEz7.js";import{m as se,n as ce}from"./ThreadTimelineNavigationContext-DbZHHZfY.js";var le=t(),ue=e(n(),1),b=e(r(),1);function x(e){let t=(0,le.c)(15),{threadId:n,variant:r,layout:i,focusRequest:a,permissionPolicy:o,className:s,leadingContent:c,messageActions:l,experimental_messageFooter:u}=e,d=r===void 0?`full`:r,f=i===void 0?`contained`:i,p=o===void 0?`inherit`:o,m=f===`contained`?`flex h-full min-h-0 flex-col`:`flex flex-col`,h;t[0]!==s||t[1]!==m?(h=y(m,s),t[0]=s,t[1]=m,t[2]=h):h=t[2];let g=h,_;t[3]!==a||t[4]!==f||t[5]!==c||t[6]!==l||t[7]!==u||t[8]!==p||t[9]!==n||t[10]!==d?(_=(0,b.jsx)(de,{threadId:n,variant:d,layout:f,focusRequest:a,permissionPolicy:p,leadingContent:c,messageActions:l,messageFooter:u}),t[3]=a,t[4]=f,t[5]=c,t[6]=l,t[7]=u,t[8]=p,t[9]=n,t[10]=d,t[11]=_):_=t[11];let v;return t[12]!==g||t[13]!==_?(v=(0,b.jsx)(`div`,{className:g,children:_}),t[12]=g,t[13]=_,t[14]=v):v=t[14],v}function de(e){let t=(0,le.c)(92),{threadId:n,variant:r,layout:y,focusRequest:x,permissionPolicy:de,leadingContent:S,messageActions:C,messageFooter:w}=e,fe=n.length>0,T;t[0]===fe?T=t[1]:(T={enabled:fe},t[0]=fe,t[1]=T);let pe=ie(n,T),E=pe.data,D=ae(E?.projectId===`proj_personal`?void 0:E?.projectId),O;t[2]===E?O=t[3]:(O=E?.environmentId?{enabled:!0,environmentId:E.environmentId,providerId:E.providerId}:{enabled:E!==void 0,providerId:E?.providerId},t[2]=E,t[3]=O);let k=_(O)?.pluginId??null;E?.providerId;let A=E?.providerId??null,j;t[4]!==A||t[5]!==k?(j={providerId:A,pluginId:k},t[4]=A,t[5]=k,t[6]=j):j=t[6];let M=j,N=i(),{isLocalDaemonHost:me}=ne(),P=p(E?.environmentId??null).data??null,F=P!==null,I;t[7]===F?I=t[8]:(I={enabled:F},t[7]=F,t[8]=I);let L=v(I),R;t[9]!==P||t[10]!==L.data?(R=P?L.data?.find(e=>e.id===P.hostId)??null:null,t[9]=P,t[10]=L.data,t[11]=R):R=t[11];let z=R,B=(L.data?.length??0)>1,{providers:he}=h(),{providers:ge}=oe(),V=ce(),_e=E!==void 0&&E.environmentId===V?.environmentId,H=V?.onOpenLink,U=_e?V.onOpenLocalFileLink:void 0,ve=_e?V.resolveMentionLink:void 0,W=P?.path??(_e?V.workspaceRootPath:void 0),ye=(0,ue.useContext)(re),G;t[12]!==C||t[13]!==ye?(G=C===void 0||C.length===0?void 0:C.map(e=>({id:e.id,pluginId:e.icon===void 0?ye:null,icon:e.icon??null,label:e.title,...e.roles===void 0?{}:{roles:e.roles},run:e.run})),t[12]=C,t[13]=ye,t[14]=G):G=t[14];let K=G,q;t[15]!==N||t[16]!==ve||t[17]!==E?.projectId?(q=e=>{if(e.kind===`thread`){let t=e.projectId??E?.projectId;return t===void 0?null:()=>N(te({projectId:t,threadId:e.threadId}))}return e.kind===`project`?()=>N(ee(e.projectId)):e.kind===`path`&&e.entryKind===`file`&&e.source===`workspace`?ve?.(e)??null:null},t[15]=N,t[16]=ve,t[17]=E?.projectId,t[18]=q):q=t[18],E?.projectId;let J=q,be;bb0:{if(P===null){be=null;break bb0}let e=me(P.hostId)?`local`:`remote`,n;if(t[19]!==P||t[20]!==z||t[21]!==he||t[22]!==B||t[23]!==ge||t[24]!==e){let r={locality:e,identity:null},i=o(he,P.environmentProviderId);n=a({display:s({environment:P,host:r,providerLookup:i}),providerLookup:i,hasMultipleMachines:B,host:z,machineProviders:ge}),t[19]=P,t[20]=z,t[21]=he,t[22]=B,t[23]=ge,t[24]=e,t[25]=n}else n=t[25];let r=n,i;t[26]===P.branchName?i=t[27]:(i=P.branchName?d({checkout:{kind:`branch`,branchName:P.branchName,headSha:null}}):void 0,t[26]=P.branchName,t[27]=i);let c;t[28]!==r.environmentCompactLabel||t[29]!==r.environmentHost||t[30]!==r.environmentIcon||t[31]!==r.environmentLabel||t[32]!==r.environmentMachineProvider||t[33]!==r.environmentProviderName||t[34]!==D||t[35]!==i?(c=(0,b.jsx)(l,{projectName:D,environmentLabel:r.environmentLabel,environmentCompactLabel:r.environmentCompactLabel,environmentHost:r.environmentHost,environmentIcon:r.environmentIcon,environmentMachineProvider:r.environmentMachineProvider,environmentProviderName:r.environmentProviderName,environmentCheckout:i}),t[28]=r.environmentCompactLabel,t[29]=r.environmentHost,t[30]=r.environmentIcon,t[31]=r.environmentLabel,t[32]=r.environmentMachineProvider,t[33]=r.environmentProviderName,t[34]=D,t[35]=i,t[36]=c):c=t[36],be=c}let xe=be;if(pe.error instanceof m&&pe.error.status===404){let e;return t[37]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,b.jsx)(g,{className:`m-2 rounded-lg`,children:`This thread is no longer available.`}),t[37]=e):e=t[37],e}if(E===void 0){let e;return t[38]!==S||t[39]!==r?(e=(0,b.jsx)(se,{leadingContent:S,variant:r}),t[38]=S,t[39]=r,t[40]=e):e=t[40],e}if(r===`timeline`){let e=`plugin-thread-chat:${n}`,r;t[41]!==K||t[42]!==S||t[43]!==w||t[44]!==H||t[45]!==U||t[46]!==J||t[47]!==e||t[48]!==E.projectId||t[49]!==n||t[50]!==W?(r=(0,b.jsx)(c,{leadingContent:S,consumerMessageActions:K,messageFooter:w,includePluginMessageActions:!1,onOpenLink:H,onOpenLocalFileLink:U,projectId:E.projectId,resolveMentionLink:J,surfaceKey:e,threadId:n,workspaceRootPath:W}),t[41]=K,t[42]=S,t[43]=w,t[44]=H,t[45]=U,t[46]=J,t[47]=e,t[48]=E.projectId,t[49]=n,t[50]=W,t[51]=r):r=t[51];let i=r,a;t[52]!==y||t[53]!==i?(a=y===`contained`?(0,b.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto bg-background px-2 pb-3 pt-3`,children:i}):(0,b.jsx)(`div`,{className:`bg-background px-2 pb-3 pt-3`,children:i}),t[52]=y,t[53]=i,t[54]=a):a=t[54];let o;return t[55]!==a||t[56]!==M?(o=(0,b.jsx)(f.Provider,{value:M,children:a}),t[55]=a,t[56]=M,t[57]=o):o=t[57],o}let Se=r===`full`?`page`:`panel`,Ce=r===`compact`?`sidebar`:`background`,Y;t[58]!==E.projectId||t[59]!==n?(Y={kind:`thread`,projectId:E.projectId,threadId:n},t[58]=E.projectId,t[59]=n,t[60]=Y):Y=t[60];let we=E.environmentId??void 0,Te=P?.hostId,Ee=de===`editable`?`editable`:`snapshot`,X;t[61]===n?X=t[62]:(X={kind:`thread`,threadId:n},t[61]=n,t[62]=X);let De=`plugin-thread-chat:${n}`,Z;t[63]!==xe||t[64]!==x||t[65]!==Y||t[66]!==we||t[67]!==Te||t[68]!==Ee||t[69]!==X||t[70]!==De||t[71]!==n?(Z={draftScope:Y,executionDefaultsThreadId:n,executionResetKey:n,executionEnvironmentId:we,executionEnvironmentHostId:Te,permissionPolicy:Ee,environmentSummary:xe,pluginComposerBottomScope:X,composerIdentity:De,focusRequestKey:x},t[63]=xe,t[64]=x,t[65]=Y,t[66]=we,t[67]=Te,t[68]=Ee,t[69]=X,t[70]=De,t[71]=n,t[72]=Z):Z=t[72];let Q;t[73]!==K||t[74]!==y||t[75]!==S||t[76]!==w||t[77]!==H||t[78]!==U||t[79]!==J||t[80]!==Se||t[81]!==Ce||t[82]!==Z||t[83]!==E.environmentId||t[84]!==E.projectId||t[85]!==E.providerId||t[86]!==n||t[87]!==W?(Q=(0,b.jsx)(u,{variant:`compact`,layout:y,measure:Se,surfaceTone:Ce,threadId:n,projectId:E.projectId,providerId:E.providerId,promptContextEnvironmentId:E.environmentId,resolveMentionLink:J,leadingContent:S,consumerMessageActions:K,messageFooter:w,includePluginMessageActions:!1,onOpenLink:H,onOpenLocalFileLink:U,workspaceRootPath:W,composer:Z}),t[73]=K,t[74]=y,t[75]=S,t[76]=w,t[77]=H,t[78]=U,t[79]=J,t[80]=Se,t[81]=Ce,t[82]=Z,t[83]=E.environmentId,t[84]=E.projectId,t[85]=E.providerId,t[86]=n,t[87]=W,t[88]=Q):Q=t[88];let $;return t[89]!==Q||t[90]!==M?($=(0,b.jsx)(f.Provider,{value:M,children:Q}),t[89]=Q,t[90]=M,t[91]=$):$=t[91],$}export{x as PluginThreadChat};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ar as t,Or as n,Vr as r,mi as i,ni as a,zr as o}from"./boot-vendor-BBLG7GwQ.js";import{t as s}from"./permission-mode-options-BrNWKCMS.js";import{Dr as c,Fi as l,Gr as u,Hr as d,Ii as f,Ir as p,Kr as m,Lr as h,Po as g,Pr as _,Qm as v,Rr as y,Sa as b,Tc as x,Ui as S,Ur as C,Vi as w,a_ as T,di as E,em as D,nh as ee,nm as O,oh as k,zr as A}from"./index-Bfkd7WaZ.js";import{B as j,I as te,L as M,R as ne,b as re,z as N}from"./resource-list-DKdrv-JU.js";import{t as P}from"./page-shell-Cqdn2HWD.js";import{t as ie}from"./project-default-execution-options-query-1RlH9w9L.js";import{n as ae,r as F,s as oe}from"./ProjectsSettingsSection-D95eFIME.js";import"./icon-extended-Bmnh2NUd.js";import{n as se,r as ce,t as le}from"./ProjectMachineSetupDialog-BHF6n4Kn.js";var I=e(i(),1),L=n(),R=e(a(),1);function ue(e){let t=(0,L.c)(8),{target:n,pending:r,onOpenChange:i,onDelete:a}=e,o=n!==null,s;t[0]!==a||t[1]!==r||t[2]!==n?(s=n?(0,R.jsx)(z,{target:n,pending:r,onDelete:a}):null,t[0]=a,t[1]=r,t[2]=n,t[3]=s):s=t[3];let c;return t[4]!==i||t[5]!==o||t[6]!==s?(c=(0,R.jsx)(h,{open:o,onOpenChange:i,children:s}),t[4]=i,t[5]=o,t[6]=s,t[7]=c):c=t[7],c}function z(e){let t=(0,L.c)(7),{target:n,pending:r,onDelete:i}=e,a=`Remove "${n.label}" from this project? This cannot be undone.`,o;t[0]!==i||t[1]!==n.id?(o=()=>i(n.id),t[0]=i,t[1]=n.id,t[2]=o):o=t[2];let s;return t[3]!==r||t[4]!==a||t[5]!==o?(s=(0,R.jsx)(y,{title:`Remove source?`,description:a,confirmLabel:`Remove source`,pending:r,onConfirm:o}),t[3]=r,t[4]=a,t[5]=o,t[6]=s):s=t[6],s}var de=`Where this project lives on each machine. A machine needs a checkout before it can run threads for this project.`,fe=`What new threads in this project start with. bb remembers the last options you used here.`;function pe(e){let n=(0,L.c)(41),{host:r,isPrimary:i,source:a,isPathInvalid:o,canEditPath:s,isOnlySource:l,pending:u,onSetUp:d,onChangePath:f,onRemove:p}=e,m=r.status===`connected`,h=!m&&`opacity-60`,g;n[0]===h?g=n[1]:(g=k(`size-4 shrink-0 text-muted-foreground`,h),n[0]=h,n[1]=g);let _;n[2]===g?_=n[3]:(_=(0,R.jsx)(v,{name:`Laptop`,className:g}),n[2]=g,n[3]=_);let y;n[4]===m?y=n[5]:(y=(0,R.jsx)(S,{connected:m}),n[4]=m,n[5]=y);let b;n[6]===r.id?b=n[7]:(b=D(r.id),n[6]=r.id,n[7]=b);let x;n[8]!==r.name||n[9]!==b?(x=(0,R.jsx)(t,{to:b,className:`min-w-0 truncate text-sm font-medium text-foreground hover:underline`,children:r.name}),n[8]=r.name,n[9]=b,n[10]=x):x=n[10];let C;n[11]===i?C=n[12]:(C=i?(0,R.jsx)(te,{children:`primary`}):null,n[11]=i,n[12]=C);let w;n[13]===o?w=n[14]:(w=o?(0,R.jsx)(c,{variant:`destructive`,children:`Path not found`}):null,n[13]=o,n[14]=w);let T;n[15]!==_||n[16]!==y||n[17]!==x||n[18]!==C||n[19]!==w?(T=(0,R.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[_,y,x,C,w]}),n[15]=_,n[16]=y,n[17]=x,n[18]=C,n[19]=w,n[20]=T):T=n[20];let E;n[21]===a?E=n[22]:(E=a===null?(0,R.jsx)(`span`,{className:`font-sans italic`,children:`Not set up on this machine`}):a.path,n[21]=a,n[22]=E);let O;n[23]===E?O=n[24]:(O=(0,R.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-subtle-foreground/75`,children:E}),n[23]=E,n[24]=O);let A;n[25]!==O||n[26]!==T?(A=(0,R.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[T,O]}),n[25]=O,n[26]=T,n[27]=A):A=n[27];let j;n[28]!==s||n[29]!==m||n[30]!==r.name||n[31]!==l||n[32]!==f||n[33]!==p||n[34]!==d||n[35]!==u||n[36]!==a?(j=(0,R.jsx)(`div`,{className:`flex shrink-0 items-center gap-1`,children:a===null?(0,R.jsx)(ee,{type:`button`,variant:`outline`,size:`sm`,disabled:u||!m,onClick:d,children:m?`Set up`:`Offline`}):(0,R.jsx)(re,{label:`${r.name} checkout actions`,items:[{label:`Change folder`,icon:`Folder`,disabled:!s||u,disabledReason:s?void 0:`Folders on other machines are changed from that machine.`,onSelect:f},{label:`Remove checkout`,icon:`Trash2`,tone:`destructive`,disabled:l||u,disabledReason:l?`A project needs at least one checkout.`:void 0,onSelect:p}]})}),n[28]=s,n[29]=m,n[30]=r.name,n[31]=l,n[32]=f,n[33]=p,n[34]=d,n[35]=u,n[36]=a,n[37]=j):j=n[37];let M;return n[38]!==A||n[39]!==j?(M=(0,R.jsxs)(ne,{className:`items-start`,children:[A,j]}),n[38]=A,n[39]=j,n[40]=M):M=n[40],M}function B(e){let n=(0,L.c)(4),{children:r}=e,i;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=O(`projects`),n[0]=i):i=n[0];let a;n[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,R.jsxs)(t,{to:i,className:`inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronLeft`,className:`size-3.5`}),`Projects`]}),n[1]=a):a=n[1];let o;return n[2]===r?o=n[3]:(o=(0,R.jsx)(P,{contentClassName:`pt-4 md:pt-5`,children:(0,R.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-3`,children:[a,r]})}),n[2]=r,n[3]=o),o}function me(){let{projectId:e}=r(),n=o(),i=x(),a=w(),c=g(),h=ie({projectId:e}),y=m(),S=C(),D=A(),L=u(),z=d(),[me,V]=(0,I.useState)(null),[he,H]=(0,I.useState)(null),[ge,U]=(0,I.useState)(null),[_e,W]=(0,I.useState)(null),ve=i.data?.projects,G=ve?.find(t=>t.id===e)??null,ye=G?.sources,K=(0,I.useMemo)(()=>ye??[],[ye]),be=G?.name??``,xe=(0,I.useMemo)(()=>f(a.data,`all`),[a.data]),Se=(0,I.useMemo)(()=>f(a.data,`persistent`),[a.data]),[q,Ce]=(0,I.useState)(!1),J=q?xe:Se,we=xe.length-Se.length,Te=c.data?.primaryHostId??null,Y=D.isPending||L.isPending,X=E({isPending:Y,submit:(0,I.useCallback)(({path:t,hostId:n,target:r,closeDialog:i})=>{if(e){if(r.kind===`add-source`)D.mutate({projectId:e,path:t,hostId:n},{onSuccess:i});else if(r.kind===`update`){let r=K.find(e=>e.hostId===n);if(!r)return;L.mutate({projectId:e,sourceId:r.id,path:t},{onSuccess:i})}}},[D,e,K,L])}),Z=X.hostId,Ee=ce(Z,(0,I.useMemo)(()=>Z?K.filter(e=>e.hostId===Z).map(e=>e.path):[],[Z,K])),De=(0,I.useCallback)(e=>{if(G){if(e.id===Z){X.openPicker({kind:`add-source`,projectId:G.id,projectName:G.name});return}W({projectId:G.id,projectName:G.name,gitRemoteUrl:G.gitRemoteUrl,hostId:e.id,hostName:e.name})}},[X,Z,G]);if(i.isError||a.isError)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:`Couldn't load this project.`})});if(ve===void 0||a.data===void 0)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`})});if(G===null)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This project no longer exists.`})});let Oe=G.gitRemoteUrl===null?null:ae(G.gitRemoteUrl),ke=new Set(K.map(e=>e.hostId)),Q=J.filter(e=>ke.has(e.id)).length,$=h.data??null,Ae=$===null?null:s.find(e=>e.value===$.permissionMode)?.label??$.permissionMode,je=Date.now();return(0,R.jsxs)(P,{contentClassName:`pt-4 md:pt-5`,children:[(0,R.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-6 pb-10`,children:[(0,R.jsxs)(`div`,{className:`space-y-3`,children:[(0,R.jsxs)(t,{to:O(`projects`),className:`inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronLeft`,className:`size-3.5`}),`Projects`]}),(0,R.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,R.jsxs)(`div`,{className:`min-w-0`,children:[(0,R.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,R.jsx)(v,{name:`FolderGit`,className:`size-4 shrink-0 text-muted-foreground`}),(0,R.jsx)(`h1`,{className:`min-w-0 truncate text-sm font-semibold text-foreground`,children:G.name}),Q===0?(0,R.jsx)(te,{children:`needs setup`}):null]}),(0,R.jsxs)(`p`,{className:`mt-1 min-w-0 truncate text-xs text-subtle-foreground/75`,children:[Oe??`No git remote`,` · `,J.length>1?`${Q} of ${F(J.length,`machine`)}`:F(Q,`machine`),` · `,F(G.threads.length,`thread`)]})]}),(0,R.jsx)(re,{label:`${G.name} actions`,items:[{label:`Rename`,icon:`Edit`,onSelect:()=>{y.reset(),V({id:G.id,currentName:G.name})}}]})]})]}),(0,R.jsxs)(j,{title:`Checkouts`,description:de,children:[J.length===0?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No machines are paired yet.`}):(0,R.jsx)(N,{children:J.map(e=>{let t=T(K,e.id),n=e.id===Z;return(0,R.jsx)(pe,{host:e,isPrimary:J.length>1&&e.id===Te,source:t??null,isPathInvalid:t!==void 0&&n&&se(Ee,t.path),canEditPath:n,isOnlySource:K.length<=1,pending:Y||z.isPending,onSetUp:()=>De(e),onChangePath:()=>{t&&X.openPicker({kind:`update`,projectId:G.id,projectName:be,currentPath:t.path})},onRemove:()=>{t&&U({id:t.id,label:`${e.name} · ${t.path}`})}},e.id)})}),we>0?(0,R.jsxs)(`button`,{type:`button`,"aria-expanded":q,onClick:()=>Ce(e=>!e),className:`-ml-1 inline-flex items-center gap-1.5 self-start rounded-md px-1.5 py-0.5 text-xs text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronDown`,className:k(`size-3.5 transition-transform`,q&&`rotate-180`),"aria-hidden":!0}),(0,R.jsx)(`span`,{children:q?`Show fewer machines`:`Show all machines`})]}):null]}),(0,R.jsx)(j,{title:`Thread defaults`,description:fe,children:h.isError?(0,R.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:`Couldn't load thread defaults.`}):h.isPending?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`}):$===null?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No threads have run here yet. The first thread's options become the defaults.`}):(0,R.jsxs)(N,{children:[(0,R.jsx)(M,{label:`Provider`,children:(0,R.jsx)(`span`,{children:$.providerId})}),(0,R.jsx)(M,{label:`Model`,children:(0,R.jsx)(`span`,{className:`font-mono text-xs`,children:$.model})}),(0,R.jsx)(M,{label:`Permission mode`,children:(0,R.jsx)(`span`,{children:Ae})}),(0,R.jsx)(M,{label:`Reasoning`,children:(0,R.jsx)(`span`,{children:$.reasoningLevel})})]})}),(0,R.jsx)(j,{title:`Project information`,children:(0,R.jsxs)(N,{children:[(0,R.jsx)(M,{label:`Git remote`,children:G.gitRemoteUrl===null?(0,R.jsx)(`span`,{children:`None detected`}):(0,R.jsx)(`span`,{className:`min-w-0 truncate font-mono text-xs`,children:G.gitRemoteUrl})}),(0,R.jsx)(M,{label:`Project ID`,children:(0,R.jsx)(`span`,{className:`font-mono text-xs`,children:G.id})}),(0,R.jsx)(M,{label:`Created`,children:(0,R.jsx)(`span`,{children:b({timestamp:G.createdAt,now:je})})})]})}),(0,R.jsx)(oe,{projectId:G.id}),(0,R.jsx)(j,{title:`Danger zone`,description:`Deleting ${G.name} removes the project and every thread in it, including archived ones. Checkouts stay on disk.`,children:(0,R.jsx)(N,{children:(0,R.jsx)(ne,{children:(0,R.jsx)(ee,{type:`button`,variant:`destructive`,size:`sm`,onClick:()=>{S.reset(),H({id:G.id,name:G.name})},children:`Delete project`})})})})]}),(0,R.jsx)(l,{target:X.projectPathDialog.target,pending:Y,platform:X.platform,hostId:X.hostId,hostName:X.hostName,onOpenChange:X.projectPathDialog.onOpenChange,onSubmit:X.submitProjectPath}),(0,R.jsx)(le,{target:_e,onOpenChange:e=>{e||W(null)},onComplete:()=>W(null)}),(0,R.jsx)(ue,{target:ge,pending:z.isPending,onOpenChange:e=>{e||U(null)},onDelete:e=>z.mutate({projectId:G.id,sourceId:e},{onSuccess:()=>U(null)})}),(0,R.jsx)(_,{target:me,pending:y.isPending,onOpenChange:e=>{!e&&!y.isPending&&V(null)},onRename:(e,t)=>y.mutate({id:e,name:t},{onSuccess:()=>V(null)})}),(0,R.jsx)(p,{target:he,pending:S.isPending,onOpenChange:e=>{!e&&!S.isPending&&H(null)},onDelete:e=>S.mutate(e,{onSuccess:()=>{H(null),n(O(`projects`),{replace:!0})}})})]})}export{me as ProjectDetailSettingsView};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ar as t,Or as n,Vr as r,mi as i,ni as a,zr as o}from"./boot-vendor-BBLG7GwQ.js";import{t as s}from"./permission-mode-options-BrNWKCMS.js";import{Dr as c,Fi as l,Gr as u,Hr as d,Ii as f,Ir as p,Kr as m,Lr as h,Po as g,Pr as _,Qm as v,Rr as y,Sa as b,Tc as x,Ui as S,Ur as C,Vi as w,a_ as T,di as E,em as D,nh as ee,nm as O,oh as k,zr as A}from"./index-BBxUiLNy.js";import{B as j,I as te,L as M,R as ne,b as re,z as N}from"./resource-list-B6MkAu8v.js";import{t as P}from"./page-shell-BHTOdeQn.js";import{t as ie}from"./project-default-execution-options-query-h6eTG6_Q.js";import{n as ae,r as F,s as oe}from"./ProjectsSettingsSection-BI_xhcA2.js";import"./icon-extended-DDFkslJU.js";import{n as se,r as ce,t as le}from"./ProjectMachineSetupDialog-BW4gUYj0.js";var I=e(i(),1),L=n(),R=e(a(),1);function ue(e){let t=(0,L.c)(8),{target:n,pending:r,onOpenChange:i,onDelete:a}=e,o=n!==null,s;t[0]!==a||t[1]!==r||t[2]!==n?(s=n?(0,R.jsx)(z,{target:n,pending:r,onDelete:a}):null,t[0]=a,t[1]=r,t[2]=n,t[3]=s):s=t[3];let c;return t[4]!==i||t[5]!==o||t[6]!==s?(c=(0,R.jsx)(h,{open:o,onOpenChange:i,children:s}),t[4]=i,t[5]=o,t[6]=s,t[7]=c):c=t[7],c}function z(e){let t=(0,L.c)(7),{target:n,pending:r,onDelete:i}=e,a=`Remove "${n.label}" from this project? This cannot be undone.`,o;t[0]!==i||t[1]!==n.id?(o=()=>i(n.id),t[0]=i,t[1]=n.id,t[2]=o):o=t[2];let s;return t[3]!==r||t[4]!==a||t[5]!==o?(s=(0,R.jsx)(y,{title:`Remove source?`,description:a,confirmLabel:`Remove source`,pending:r,onConfirm:o}),t[3]=r,t[4]=a,t[5]=o,t[6]=s):s=t[6],s}var de=`Where this project lives on each machine. A machine needs a checkout before it can run threads for this project.`,fe=`What new threads in this project start with. bb remembers the last options you used here.`;function pe(e){let n=(0,L.c)(41),{host:r,isPrimary:i,source:a,isPathInvalid:o,canEditPath:s,isOnlySource:l,pending:u,onSetUp:d,onChangePath:f,onRemove:p}=e,m=r.status===`connected`,h=!m&&`opacity-60`,g;n[0]===h?g=n[1]:(g=k(`size-4 shrink-0 text-muted-foreground`,h),n[0]=h,n[1]=g);let _;n[2]===g?_=n[3]:(_=(0,R.jsx)(v,{name:`Laptop`,className:g}),n[2]=g,n[3]=_);let y;n[4]===m?y=n[5]:(y=(0,R.jsx)(S,{connected:m}),n[4]=m,n[5]=y);let b;n[6]===r.id?b=n[7]:(b=D(r.id),n[6]=r.id,n[7]=b);let x;n[8]!==r.name||n[9]!==b?(x=(0,R.jsx)(t,{to:b,className:`min-w-0 truncate text-sm font-medium text-foreground hover:underline`,children:r.name}),n[8]=r.name,n[9]=b,n[10]=x):x=n[10];let C;n[11]===i?C=n[12]:(C=i?(0,R.jsx)(te,{children:`primary`}):null,n[11]=i,n[12]=C);let w;n[13]===o?w=n[14]:(w=o?(0,R.jsx)(c,{variant:`destructive`,children:`Path not found`}):null,n[13]=o,n[14]=w);let T;n[15]!==_||n[16]!==y||n[17]!==x||n[18]!==C||n[19]!==w?(T=(0,R.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[_,y,x,C,w]}),n[15]=_,n[16]=y,n[17]=x,n[18]=C,n[19]=w,n[20]=T):T=n[20];let E;n[21]===a?E=n[22]:(E=a===null?(0,R.jsx)(`span`,{className:`font-sans italic`,children:`Not set up on this machine`}):a.path,n[21]=a,n[22]=E);let O;n[23]===E?O=n[24]:(O=(0,R.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-subtle-foreground/75`,children:E}),n[23]=E,n[24]=O);let A;n[25]!==O||n[26]!==T?(A=(0,R.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[T,O]}),n[25]=O,n[26]=T,n[27]=A):A=n[27];let j;n[28]!==s||n[29]!==m||n[30]!==r.name||n[31]!==l||n[32]!==f||n[33]!==p||n[34]!==d||n[35]!==u||n[36]!==a?(j=(0,R.jsx)(`div`,{className:`flex shrink-0 items-center gap-1`,children:a===null?(0,R.jsx)(ee,{type:`button`,variant:`outline`,size:`sm`,disabled:u||!m,onClick:d,children:m?`Set up`:`Offline`}):(0,R.jsx)(re,{label:`${r.name} checkout actions`,items:[{label:`Change folder`,icon:`Folder`,disabled:!s||u,disabledReason:s?void 0:`Folders on other machines are changed from that machine.`,onSelect:f},{label:`Remove checkout`,icon:`Trash2`,tone:`destructive`,disabled:l||u,disabledReason:l?`A project needs at least one checkout.`:void 0,onSelect:p}]})}),n[28]=s,n[29]=m,n[30]=r.name,n[31]=l,n[32]=f,n[33]=p,n[34]=d,n[35]=u,n[36]=a,n[37]=j):j=n[37];let M;return n[38]!==A||n[39]!==j?(M=(0,R.jsxs)(ne,{className:`items-start`,children:[A,j]}),n[38]=A,n[39]=j,n[40]=M):M=n[40],M}function B(e){let n=(0,L.c)(4),{children:r}=e,i;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=O(`projects`),n[0]=i):i=n[0];let a;n[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,R.jsxs)(t,{to:i,className:`inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronLeft`,className:`size-3.5`}),`Projects`]}),n[1]=a):a=n[1];let o;return n[2]===r?o=n[3]:(o=(0,R.jsx)(P,{contentClassName:`pt-4 md:pt-5`,children:(0,R.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-3`,children:[a,r]})}),n[2]=r,n[3]=o),o}function me(){let{projectId:e}=r(),n=o(),i=x(),a=w(),c=g(),h=ie({projectId:e}),y=m(),S=C(),D=A(),L=u(),z=d(),[me,V]=(0,I.useState)(null),[he,H]=(0,I.useState)(null),[ge,U]=(0,I.useState)(null),[_e,W]=(0,I.useState)(null),ve=i.data?.projects,G=ve?.find(t=>t.id===e)??null,ye=G?.sources,K=(0,I.useMemo)(()=>ye??[],[ye]),be=G?.name??``,xe=(0,I.useMemo)(()=>f(a.data,`all`),[a.data]),Se=(0,I.useMemo)(()=>f(a.data,`persistent`),[a.data]),[q,Ce]=(0,I.useState)(!1),J=q?xe:Se,we=xe.length-Se.length,Te=c.data?.primaryHostId??null,Y=D.isPending||L.isPending,X=E({isPending:Y,submit:(0,I.useCallback)(({path:t,hostId:n,target:r,closeDialog:i})=>{if(e){if(r.kind===`add-source`)D.mutate({projectId:e,path:t,hostId:n},{onSuccess:i});else if(r.kind===`update`){let r=K.find(e=>e.hostId===n);if(!r)return;L.mutate({projectId:e,sourceId:r.id,path:t},{onSuccess:i})}}},[D,e,K,L])}),Z=X.hostId,Ee=ce(Z,(0,I.useMemo)(()=>Z?K.filter(e=>e.hostId===Z).map(e=>e.path):[],[Z,K])),De=(0,I.useCallback)(e=>{if(G){if(e.id===Z){X.openPicker({kind:`add-source`,projectId:G.id,projectName:G.name});return}W({projectId:G.id,projectName:G.name,gitRemoteUrl:G.gitRemoteUrl,hostId:e.id,hostName:e.name})}},[X,Z,G]);if(i.isError||a.isError)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:`Couldn't load this project.`})});if(ve===void 0||a.data===void 0)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`})});if(G===null)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This project no longer exists.`})});let Oe=G.gitRemoteUrl===null?null:ae(G.gitRemoteUrl),ke=new Set(K.map(e=>e.hostId)),Q=J.filter(e=>ke.has(e.id)).length,$=h.data??null,Ae=$===null?null:s.find(e=>e.value===$.permissionMode)?.label??$.permissionMode,je=Date.now();return(0,R.jsxs)(P,{contentClassName:`pt-4 md:pt-5`,children:[(0,R.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-6 pb-10`,children:[(0,R.jsxs)(`div`,{className:`space-y-3`,children:[(0,R.jsxs)(t,{to:O(`projects`),className:`inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronLeft`,className:`size-3.5`}),`Projects`]}),(0,R.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,R.jsxs)(`div`,{className:`min-w-0`,children:[(0,R.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,R.jsx)(v,{name:`FolderGit`,className:`size-4 shrink-0 text-muted-foreground`}),(0,R.jsx)(`h1`,{className:`min-w-0 truncate text-sm font-semibold text-foreground`,children:G.name}),Q===0?(0,R.jsx)(te,{children:`needs setup`}):null]}),(0,R.jsxs)(`p`,{className:`mt-1 min-w-0 truncate text-xs text-subtle-foreground/75`,children:[Oe??`No git remote`,` · `,J.length>1?`${Q} of ${F(J.length,`machine`)}`:F(Q,`machine`),` · `,F(G.threads.length,`thread`)]})]}),(0,R.jsx)(re,{label:`${G.name} actions`,items:[{label:`Rename`,icon:`Edit`,onSelect:()=>{y.reset(),V({id:G.id,currentName:G.name})}}]})]})]}),(0,R.jsxs)(j,{title:`Checkouts`,description:de,children:[J.length===0?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No machines are paired yet.`}):(0,R.jsx)(N,{children:J.map(e=>{let t=T(K,e.id),n=e.id===Z;return(0,R.jsx)(pe,{host:e,isPrimary:J.length>1&&e.id===Te,source:t??null,isPathInvalid:t!==void 0&&n&&se(Ee,t.path),canEditPath:n,isOnlySource:K.length<=1,pending:Y||z.isPending,onSetUp:()=>De(e),onChangePath:()=>{t&&X.openPicker({kind:`update`,projectId:G.id,projectName:be,currentPath:t.path})},onRemove:()=>{t&&U({id:t.id,label:`${e.name} · ${t.path}`})}},e.id)})}),we>0?(0,R.jsxs)(`button`,{type:`button`,"aria-expanded":q,onClick:()=>Ce(e=>!e),className:`-ml-1 inline-flex items-center gap-1.5 self-start rounded-md px-1.5 py-0.5 text-xs text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronDown`,className:k(`size-3.5 transition-transform`,q&&`rotate-180`),"aria-hidden":!0}),(0,R.jsx)(`span`,{children:q?`Show fewer machines`:`Show all machines`})]}):null]}),(0,R.jsx)(j,{title:`Thread defaults`,description:fe,children:h.isError?(0,R.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:`Couldn't load thread defaults.`}):h.isPending?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`}):$===null?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No threads have run here yet. The first thread's options become the defaults.`}):(0,R.jsxs)(N,{children:[(0,R.jsx)(M,{label:`Provider`,children:(0,R.jsx)(`span`,{children:$.providerId})}),(0,R.jsx)(M,{label:`Model`,children:(0,R.jsx)(`span`,{className:`font-mono text-xs`,children:$.model})}),(0,R.jsx)(M,{label:`Permission mode`,children:(0,R.jsx)(`span`,{children:Ae})}),(0,R.jsx)(M,{label:`Reasoning`,children:(0,R.jsx)(`span`,{children:$.reasoningLevel})})]})}),(0,R.jsx)(j,{title:`Project information`,children:(0,R.jsxs)(N,{children:[(0,R.jsx)(M,{label:`Git remote`,children:G.gitRemoteUrl===null?(0,R.jsx)(`span`,{children:`None detected`}):(0,R.jsx)(`span`,{className:`min-w-0 truncate font-mono text-xs`,children:G.gitRemoteUrl})}),(0,R.jsx)(M,{label:`Project ID`,children:(0,R.jsx)(`span`,{className:`font-mono text-xs`,children:G.id})}),(0,R.jsx)(M,{label:`Created`,children:(0,R.jsx)(`span`,{children:b({timestamp:G.createdAt,now:je})})})]})}),(0,R.jsx)(oe,{projectId:G.id}),(0,R.jsx)(j,{title:`Danger zone`,description:`Deleting ${G.name} removes the project and every thread in it, including archived ones. Checkouts stay on disk.`,children:(0,R.jsx)(N,{children:(0,R.jsx)(ne,{children:(0,R.jsx)(ee,{type:`button`,variant:`destructive`,size:`sm`,onClick:()=>{S.reset(),H({id:G.id,name:G.name})},children:`Delete project`})})})})]}),(0,R.jsx)(l,{target:X.projectPathDialog.target,pending:Y,platform:X.platform,hostId:X.hostId,hostName:X.hostName,onOpenChange:X.projectPathDialog.onOpenChange,onSubmit:X.submitProjectPath}),(0,R.jsx)(le,{target:_e,onOpenChange:e=>{e||W(null)},onComplete:()=>W(null)}),(0,R.jsx)(ue,{target:ge,pending:z.isPending,onOpenChange:e=>{e||U(null)},onDelete:e=>z.mutate({projectId:G.id,sourceId:e},{onSuccess:()=>U(null)})}),(0,R.jsx)(_,{target:me,pending:y.isPending,onOpenChange:e=>{!e&&!y.isPending&&V(null)},onRename:(e,t)=>y.mutate({id:e,name:t},{onSuccess:()=>V(null)})}),(0,R.jsx)(p,{target:he,pending:S.isPending,onOpenChange:e=>{!e&&!S.isPending&&H(null)},onDelete:e=>S.mutate(e,{onSuccess:()=>{H(null),n(O(`projects`),{replace:!0})}})})]})}export{me as ProjectDetailSettingsView};
|
|
Binary file
|
|
Binary file
|